@beeq/core 1.12.2 → 1.12.3-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (578) hide show
  1. package/dist/beeq/beeq.esm.js +1 -1
  2. package/dist/beeq/beeq.esm.js.map +1 -1
  3. package/dist/beeq/p-026cfacc.entry.js +6 -0
  4. package/dist/beeq/p-026cfacc.entry.js.map +1 -0
  5. package/dist/beeq/p-061d53de.entry.js +6 -0
  6. package/dist/beeq/p-061d53de.entry.js.map +1 -0
  7. package/dist/beeq/p-08fef3d3.entry.js +6 -0
  8. package/dist/beeq/p-08fef3d3.entry.js.map +1 -0
  9. package/dist/{components/p-BAkBsRtN.js → beeq/p-12d9420b.entry.js} +2 -2
  10. package/dist/beeq/p-12d9420b.entry.js.map +1 -0
  11. package/dist/beeq/{p-ea2214aa.entry.js → p-17454929.entry.js} +2 -2
  12. package/dist/beeq/p-17454929.entry.js.map +1 -0
  13. package/dist/beeq/{p-ea3db4eb.entry.js → p-1bce390d.entry.js} +2 -2
  14. package/dist/beeq/p-1bce390d.entry.js.map +1 -0
  15. package/dist/beeq/{p-91c69867.entry.js → p-1c09c7c0.entry.js} +2 -2
  16. package/dist/beeq/p-1c09c7c0.entry.js.map +1 -0
  17. package/dist/beeq/p-1f819545.entry.js +6 -0
  18. package/dist/beeq/p-1f819545.entry.js.map +1 -0
  19. package/dist/beeq/{p-c9ff0a5c.entry.js → p-292a8a40.entry.js} +2 -2
  20. package/dist/beeq/p-292a8a40.entry.js.map +1 -0
  21. package/dist/beeq/p-2ec4fbf0.entry.js +6 -0
  22. package/dist/beeq/p-2ec4fbf0.entry.js.map +1 -0
  23. package/dist/beeq/p-34125078.entry.js +6 -0
  24. package/dist/beeq/p-34125078.entry.js.map +1 -0
  25. package/dist/beeq/{p-85d57b16.entry.js → p-36e8e717.entry.js} +2 -2
  26. package/dist/beeq/p-36e8e717.entry.js.map +1 -0
  27. package/dist/beeq/{p-39888c37.entry.js → p-37f739f5.entry.js} +2 -2
  28. package/dist/beeq/p-37f739f5.entry.js.map +1 -0
  29. package/dist/beeq/p-38a7015c.entry.js +6 -0
  30. package/dist/{components/p-DYvRNhKc.js.map → beeq/p-38a7015c.entry.js.map} +1 -1
  31. package/dist/beeq/{p-a4865383.entry.js → p-4aa539d7.entry.js} +2 -2
  32. package/dist/beeq/p-4aa539d7.entry.js.map +1 -0
  33. package/dist/{components/p-BoJH_4tj.js → beeq/p-51074699.entry.js} +2 -2
  34. package/dist/beeq/p-51074699.entry.js.map +1 -0
  35. package/dist/beeq/{p-82ee164d.entry.js → p-64123cb2.entry.js} +2 -2
  36. package/dist/beeq/p-64123cb2.entry.js.map +1 -0
  37. package/dist/beeq/p-6a70511e.entry.js +6 -0
  38. package/dist/beeq/p-6a70511e.entry.js.map +1 -0
  39. package/dist/beeq/p-7c9c6561.entry.js +6 -0
  40. package/dist/beeq/p-7c9c6561.entry.js.map +1 -0
  41. package/dist/beeq/{p-a416eb22.entry.js → p-7e73ea84.entry.js} +2 -2
  42. package/dist/beeq/p-7e73ea84.entry.js.map +1 -0
  43. package/dist/beeq/{p-f0729f34.entry.js → p-84db8789.entry.js} +2 -2
  44. package/dist/beeq/p-84db8789.entry.js.map +1 -0
  45. package/dist/beeq/p-85af346a.entry.js +6 -0
  46. package/dist/beeq/p-85af346a.entry.js.map +1 -0
  47. package/dist/beeq/p-XbB3xSTR.js +7 -0
  48. package/dist/beeq/p-XbB3xSTR.js.map +1 -0
  49. package/dist/beeq/p-a4e6c238.entry.js +6 -0
  50. package/dist/beeq/p-a4e6c238.entry.js.map +1 -0
  51. package/dist/beeq/{p-2a7b2e52.entry.js → p-ab690c8e.entry.js} +2 -2
  52. package/dist/beeq/p-ab690c8e.entry.js.map +1 -0
  53. package/dist/beeq/{p-aede4b4e.entry.js → p-ad86b7ee.entry.js} +2 -2
  54. package/dist/beeq/p-ad86b7ee.entry.js.map +1 -0
  55. package/dist/beeq/p-b31ab8df.entry.js +6 -0
  56. package/dist/beeq/p-b31ab8df.entry.js.map +1 -0
  57. package/dist/beeq/p-b4f1b67f.entry.js +6 -0
  58. package/dist/beeq/p-b4f1b67f.entry.js.map +1 -0
  59. package/dist/beeq/p-bcd26036.entry.js +6 -0
  60. package/dist/beeq/p-bcd26036.entry.js.map +1 -0
  61. package/dist/beeq/p-c08c4c7b.entry.js +6 -0
  62. package/dist/beeq/p-c08c4c7b.entry.js.map +1 -0
  63. package/dist/{components/p-DYvRNhKc.js → beeq/p-c3013171.entry.js} +2 -2
  64. package/dist/beeq/p-c3013171.entry.js.map +1 -0
  65. package/dist/beeq/p-ce975008.entry.js +6 -0
  66. package/dist/beeq/p-ce975008.entry.js.map +1 -0
  67. package/dist/beeq/{p-c0e9a6cf.entry.js → p-cf843f3a.entry.js} +2 -2
  68. package/dist/beeq/p-cf843f3a.entry.js.map +1 -0
  69. package/dist/beeq/{p-4fbfc43c.entry.js → p-d1f4ce2e.entry.js} +2 -2
  70. package/dist/beeq/p-d1f4ce2e.entry.js.map +1 -0
  71. package/dist/beeq/p-d6edf4cb.entry.js +6 -0
  72. package/dist/beeq/p-d6edf4cb.entry.js.map +1 -0
  73. package/dist/beeq/p-e38637a0.entry.js +6 -0
  74. package/dist/beeq/p-e38637a0.entry.js.map +1 -0
  75. package/dist/beeq/p-ec4c7f14.entry.js +6 -0
  76. package/dist/beeq/p-ec4c7f14.entry.js.map +1 -0
  77. package/dist/beeq/p-f3c8eda1.entry.js +6 -0
  78. package/dist/beeq/p-f3c8eda1.entry.js.map +1 -0
  79. package/dist/beeq/p-f86bbd71.entry.js +6 -0
  80. package/dist/beeq/p-f86bbd71.entry.js.map +1 -0
  81. package/dist/beeq/p-ff68b62f.entry.js +6 -0
  82. package/dist/beeq/p-ff68b62f.entry.js.map +1 -0
  83. package/dist/beeq/scripts/esm-loader.js +24 -0
  84. package/dist/beeq/scripts/zeroheight-svg-loader.js +22 -0
  85. package/dist/beeq.html-custom-data.json +139 -139
  86. package/dist/cjs/beeq.cjs.js +2 -3
  87. package/dist/cjs/beeq.cjs.js.map +1 -1
  88. package/dist/cjs/bq-accordion-group.cjs.entry.js +3 -4
  89. package/dist/cjs/bq-accordion-group.cjs.entry.js.map +1 -1
  90. package/dist/cjs/bq-accordion.cjs.entry.js +14 -15
  91. package/dist/cjs/bq-accordion.cjs.entry.js.map +1 -1
  92. package/dist/cjs/bq-alert.cjs.entry.js +15 -16
  93. package/dist/cjs/bq-alert.cjs.entry.js.map +1 -1
  94. package/dist/cjs/bq-avatar.cjs.entry.js +14 -15
  95. package/dist/cjs/bq-avatar.cjs.entry.js.map +1 -1
  96. package/dist/cjs/bq-badge.cjs.entry.js +9 -10
  97. package/dist/cjs/bq-badge.cjs.entry.js.map +1 -1
  98. package/dist/cjs/bq-breadcrumb-item.cjs.entry.js +3 -4
  99. package/dist/cjs/bq-breadcrumb-item.cjs.entry.js.map +1 -1
  100. package/dist/cjs/bq-breadcrumb.cjs.entry.js +7 -8
  101. package/dist/cjs/bq-breadcrumb.cjs.entry.js.map +1 -1
  102. package/dist/cjs/bq-button_2.cjs.entry.js +20 -21
  103. package/dist/cjs/bq-button_2.cjs.entry.js.map +1 -1
  104. package/dist/cjs/bq-card.cjs.entry.js +8 -9
  105. package/dist/cjs/bq-card.cjs.entry.js.map +1 -1
  106. package/dist/cjs/bq-checkbox.cjs.entry.js +6 -7
  107. package/dist/cjs/bq-checkbox.cjs.entry.js.map +1 -1
  108. package/dist/cjs/bq-date-picker.cjs.entry.js +21 -22
  109. package/dist/cjs/bq-date-picker.cjs.entry.js.map +1 -1
  110. package/dist/cjs/bq-dialog.cjs.entry.js +16 -17
  111. package/dist/cjs/bq-dialog.cjs.entry.js.map +1 -1
  112. package/dist/cjs/bq-divider.cjs.entry.js +15 -16
  113. package/dist/cjs/bq-divider.cjs.entry.js.map +1 -1
  114. package/dist/cjs/bq-drawer.cjs.entry.js +20 -21
  115. package/dist/cjs/bq-drawer.cjs.entry.js.map +1 -1
  116. package/dist/cjs/bq-dropdown_2.cjs.entry.js +7 -8
  117. package/dist/cjs/bq-dropdown_2.cjs.entry.js.map +1 -1
  118. package/dist/cjs/bq-empty-state.cjs.entry.js +27 -28
  119. package/dist/cjs/bq-empty-state.cjs.entry.js.map +1 -1
  120. package/dist/cjs/bq-input.cjs.entry.js +23 -24
  121. package/dist/cjs/bq-input.cjs.entry.js.map +1 -1
  122. package/dist/cjs/bq-notification.cjs.entry.js +13 -14
  123. package/dist/cjs/bq-notification.cjs.entry.js.map +1 -1
  124. package/dist/cjs/bq-option-group.cjs.entry.js +3 -4
  125. package/dist/cjs/bq-option-group.cjs.entry.js.map +1 -1
  126. package/dist/cjs/bq-option-list_2.cjs.entry.js +13 -14
  127. package/dist/cjs/bq-option-list_2.cjs.entry.js.map +1 -1
  128. package/dist/cjs/bq-option.cjs.entry.js +15 -16
  129. package/dist/cjs/bq-option.cjs.entry.js.map +1 -1
  130. package/dist/cjs/bq-page-title.cjs.entry.js +12 -13
  131. package/dist/cjs/bq-page-title.cjs.entry.js.map +1 -1
  132. package/dist/cjs/bq-progress.cjs.entry.js +14 -15
  133. package/dist/cjs/bq-progress.cjs.entry.js.map +1 -1
  134. package/dist/cjs/bq-radio-group.cjs.entry.js +2 -3
  135. package/dist/cjs/bq-radio-group.cjs.entry.js.map +1 -1
  136. package/dist/cjs/bq-radio.cjs.entry.js +9 -10
  137. package/dist/cjs/bq-radio.cjs.entry.js.map +1 -1
  138. package/dist/cjs/bq-select.cjs.entry.js +31 -32
  139. package/dist/cjs/bq-select.cjs.entry.js.map +1 -1
  140. package/dist/cjs/bq-side-menu-item.cjs.entry.js +7 -8
  141. package/dist/cjs/bq-side-menu-item.cjs.entry.js.map +1 -1
  142. package/dist/cjs/bq-side-menu.cjs.entry.js +4 -5
  143. package/dist/cjs/bq-side-menu.cjs.entry.js.map +1 -1
  144. package/dist/cjs/bq-slider.cjs.entry.js +23 -24
  145. package/dist/cjs/bq-slider.cjs.entry.js.map +1 -1
  146. package/dist/cjs/bq-spinner.cjs.entry.js +11 -12
  147. package/dist/cjs/bq-spinner.cjs.entry.js.map +1 -1
  148. package/dist/cjs/bq-status.cjs.entry.js +3 -4
  149. package/dist/cjs/bq-status.cjs.entry.js.map +1 -1
  150. package/dist/cjs/bq-step-item.cjs.entry.js +17 -18
  151. package/dist/cjs/bq-step-item.cjs.entry.js.map +1 -1
  152. package/dist/cjs/bq-steps.cjs.entry.js +3 -4
  153. package/dist/cjs/bq-steps.cjs.entry.js.map +1 -1
  154. package/dist/cjs/bq-switch.cjs.entry.js +11 -12
  155. package/dist/cjs/bq-switch.cjs.entry.js.map +1 -1
  156. package/dist/cjs/bq-tab-group.cjs.entry.js +8 -9
  157. package/dist/cjs/bq-tab-group.cjs.entry.js.map +1 -1
  158. package/dist/cjs/bq-tab.cjs.entry.js +6 -7
  159. package/dist/cjs/bq-tab.cjs.entry.js.map +1 -1
  160. package/dist/cjs/bq-textarea.cjs.entry.js +17 -18
  161. package/dist/cjs/bq-textarea.cjs.entry.js.map +1 -1
  162. package/dist/cjs/bq-toast.cjs.entry.js +3 -4
  163. package/dist/cjs/bq-toast.cjs.entry.js.map +1 -1
  164. package/dist/cjs/bq-tooltip.cjs.entry.js +9 -10
  165. package/dist/cjs/bq-tooltip.cjs.entry.js.map +1 -1
  166. package/dist/cjs/{index-CvbyQUB9.js → index-Bp6IQmE_.js} +68 -5
  167. package/dist/cjs/index-Bp6IQmE_.js.map +1 -0
  168. package/dist/cjs/loader.cjs.js +2 -3
  169. package/dist/cjs/loader.cjs.js.map +1 -1
  170. package/dist/collection/components/accordion/bq-accordion.js +14 -14
  171. package/dist/collection/components/accordion/bq-accordion.js.map +1 -1
  172. package/dist/collection/components/accordion-group/bq-accordion-group.js +2 -2
  173. package/dist/collection/components/accordion-group/bq-accordion-group.js.map +1 -1
  174. package/dist/collection/components/alert/bq-alert.js +14 -15
  175. package/dist/collection/components/alert/bq-alert.js.map +1 -1
  176. package/dist/collection/components/avatar/bq-avatar.js +13 -14
  177. package/dist/collection/components/avatar/bq-avatar.js.map +1 -1
  178. package/dist/collection/components/badge/bq-badge.js +9 -10
  179. package/dist/collection/components/badge/bq-badge.js.map +1 -1
  180. package/dist/collection/components/breadcrumb/bq-breadcrumb.js +6 -7
  181. package/dist/collection/components/breadcrumb/bq-breadcrumb.js.map +1 -1
  182. package/dist/collection/components/breadcrumb-item/bq-breadcrumb-item.js +2 -2
  183. package/dist/collection/components/breadcrumb-item/bq-breadcrumb-item.js.map +1 -1
  184. package/dist/collection/components/button/bq-button.js +18 -19
  185. package/dist/collection/components/button/bq-button.js.map +1 -1
  186. package/dist/collection/components/card/bq-card.js +7 -8
  187. package/dist/collection/components/card/bq-card.js.map +1 -1
  188. package/dist/collection/components/checkbox/bq-checkbox.js +5 -5
  189. package/dist/collection/components/checkbox/bq-checkbox.js.map +1 -1
  190. package/dist/collection/components/date-picker/bq-date-picker.js +20 -20
  191. package/dist/collection/components/date-picker/bq-date-picker.js.map +1 -1
  192. package/dist/collection/components/dialog/bq-dialog.js +15 -15
  193. package/dist/collection/components/dialog/bq-dialog.js.map +1 -1
  194. package/dist/collection/components/divider/bq-divider.js +15 -16
  195. package/dist/collection/components/divider/bq-divider.js.map +1 -1
  196. package/dist/collection/components/drawer/bq-drawer.js +19 -20
  197. package/dist/collection/components/drawer/bq-drawer.js.map +1 -1
  198. package/dist/collection/components/dropdown/bq-dropdown.js +2 -2
  199. package/dist/collection/components/dropdown/bq-dropdown.js.map +1 -1
  200. package/dist/collection/components/empty-state/bq-empty-state.js +26 -26
  201. package/dist/collection/components/empty-state/bq-empty-state.js.map +1 -1
  202. package/dist/collection/components/icon/bq-icon.js +2 -3
  203. package/dist/collection/components/icon/bq-icon.js.map +1 -1
  204. package/dist/collection/components/input/bq-input.js +22 -22
  205. package/dist/collection/components/input/bq-input.js.map +1 -1
  206. package/dist/collection/components/notification/bq-notification.js +12 -13
  207. package/dist/collection/components/notification/bq-notification.js.map +1 -1
  208. package/dist/collection/components/option/bq-option.js +15 -16
  209. package/dist/collection/components/option/bq-option.js.map +1 -1
  210. package/dist/collection/components/option-group/bq-option-group.js +2 -2
  211. package/dist/collection/components/option-group/bq-option-group.js.map +1 -1
  212. package/dist/collection/components/option-list/bq-option-list.js +2 -2
  213. package/dist/collection/components/option-list/bq-option-list.js.map +1 -1
  214. package/dist/collection/components/page-title/bq-page-title.js +11 -11
  215. package/dist/collection/components/page-title/bq-page-title.js.map +1 -1
  216. package/dist/collection/components/panel/bq-panel.js +3 -3
  217. package/dist/collection/components/panel/bq-panel.js.map +1 -1
  218. package/dist/collection/components/progress/bq-progress.js +13 -14
  219. package/dist/collection/components/progress/bq-progress.js.map +1 -1
  220. package/dist/collection/components/radio/bq-radio.js +9 -10
  221. package/dist/collection/components/radio/bq-radio.js.map +1 -1
  222. package/dist/collection/components/radio-group/bq-radio-group.js +2 -3
  223. package/dist/collection/components/radio-group/bq-radio-group.js.map +1 -1
  224. package/dist/collection/components/select/bq-select.js +29 -29
  225. package/dist/collection/components/select/bq-select.js.map +1 -1
  226. package/dist/collection/components/select/scss/bq-select.css +1 -1
  227. package/dist/collection/components/side-menu/bq-side-menu.js +4 -4
  228. package/dist/collection/components/side-menu/bq-side-menu.js.map +1 -1
  229. package/dist/collection/components/side-menu-item/bq-side-menu-item.js +6 -6
  230. package/dist/collection/components/side-menu-item/bq-side-menu-item.js.map +1 -1
  231. package/dist/collection/components/slider/bq-slider.js +23 -23
  232. package/dist/collection/components/slider/bq-slider.js.map +1 -1
  233. package/dist/collection/components/spinner/bq-spinner.js +10 -10
  234. package/dist/collection/components/spinner/bq-spinner.js.map +1 -1
  235. package/dist/collection/components/status/bq-status.js +2 -2
  236. package/dist/collection/components/status/bq-status.js.map +1 -1
  237. package/dist/collection/components/step-item/bq-step-item.js +16 -16
  238. package/dist/collection/components/step-item/bq-step-item.js.map +1 -1
  239. package/dist/collection/components/steps/bq-steps.js +3 -3
  240. package/dist/collection/components/steps/bq-steps.js.map +1 -1
  241. package/dist/collection/components/switch/bq-switch.js +10 -11
  242. package/dist/collection/components/switch/bq-switch.js.map +1 -1
  243. package/dist/collection/components/tab/bq-tab.js +5 -5
  244. package/dist/collection/components/tab/bq-tab.js.map +1 -1
  245. package/dist/collection/components/tab-group/bq-tab-group.js +8 -9
  246. package/dist/collection/components/tab-group/bq-tab-group.js.map +1 -1
  247. package/dist/collection/components/tag/bq-tag.js +10 -11
  248. package/dist/collection/components/tag/bq-tag.js.map +1 -1
  249. package/dist/collection/components/textarea/bq-textarea.js +16 -16
  250. package/dist/collection/components/textarea/bq-textarea.js.map +1 -1
  251. package/dist/collection/components/toast/bq-toast.js +2 -3
  252. package/dist/collection/components/toast/bq-toast.js.map +1 -1
  253. package/dist/collection/components/tooltip/bq-tooltip.js +8 -8
  254. package/dist/collection/components/tooltip/bq-tooltip.js.map +1 -1
  255. package/dist/collection/global/scripts/esm-loader.js +23 -6
  256. package/dist/collection/scripts/esm-loader.js +24 -0
  257. package/dist/collection/scripts/zeroheight-svg-loader.js +22 -0
  258. package/dist/components/bq-accordion-group.js +1 -1
  259. package/dist/components/bq-accordion-group.js.map +1 -1
  260. package/dist/components/bq-accordion.js +1 -1
  261. package/dist/components/bq-accordion.js.map +1 -1
  262. package/dist/components/bq-alert.js +1 -1
  263. package/dist/components/bq-alert.js.map +1 -1
  264. package/dist/components/bq-avatar.js +1 -1
  265. package/dist/components/bq-avatar.js.map +1 -1
  266. package/dist/components/bq-badge.js +1 -1
  267. package/dist/components/bq-breadcrumb-item.js +1 -1
  268. package/dist/components/bq-breadcrumb-item.js.map +1 -1
  269. package/dist/components/bq-breadcrumb.js +1 -1
  270. package/dist/components/bq-breadcrumb.js.map +1 -1
  271. package/dist/components/bq-button.js +1 -1
  272. package/dist/components/bq-card.js +1 -1
  273. package/dist/components/bq-card.js.map +1 -1
  274. package/dist/components/bq-checkbox.js +1 -1
  275. package/dist/components/bq-checkbox.js.map +1 -1
  276. package/dist/components/bq-date-picker.js +1 -1
  277. package/dist/components/bq-date-picker.js.map +1 -1
  278. package/dist/components/bq-dialog.js +1 -1
  279. package/dist/components/bq-dialog.js.map +1 -1
  280. package/dist/components/bq-divider.js +1 -1
  281. package/dist/components/bq-drawer.js +1 -1
  282. package/dist/components/bq-drawer.js.map +1 -1
  283. package/dist/components/bq-dropdown.js +1 -1
  284. package/dist/components/bq-empty-state.js +1 -1
  285. package/dist/components/bq-empty-state.js.map +1 -1
  286. package/dist/components/bq-icon.js +1 -1
  287. package/dist/components/bq-input.js +1 -1
  288. package/dist/components/bq-input.js.map +1 -1
  289. package/dist/components/bq-notification.js +1 -1
  290. package/dist/components/bq-notification.js.map +1 -1
  291. package/dist/components/bq-option-group.js +1 -1
  292. package/dist/components/bq-option-group.js.map +1 -1
  293. package/dist/components/bq-option-list.js +1 -1
  294. package/dist/components/bq-option.js +1 -1
  295. package/dist/components/bq-option.js.map +1 -1
  296. package/dist/components/bq-page-title.js +1 -1
  297. package/dist/components/bq-page-title.js.map +1 -1
  298. package/dist/components/bq-panel.js +1 -1
  299. package/dist/components/bq-progress.js +1 -1
  300. package/dist/components/bq-progress.js.map +1 -1
  301. package/dist/components/bq-radio-group.js +1 -1
  302. package/dist/components/bq-radio-group.js.map +1 -1
  303. package/dist/components/bq-radio.js +1 -1
  304. package/dist/components/bq-radio.js.map +1 -1
  305. package/dist/components/bq-select.js +1 -1
  306. package/dist/components/bq-select.js.map +1 -1
  307. package/dist/components/bq-side-menu-item.js +1 -1
  308. package/dist/components/bq-side-menu-item.js.map +1 -1
  309. package/dist/components/bq-side-menu.js +1 -1
  310. package/dist/components/bq-side-menu.js.map +1 -1
  311. package/dist/components/bq-slider.js +1 -1
  312. package/dist/components/bq-slider.js.map +1 -1
  313. package/dist/components/bq-spinner.js +1 -1
  314. package/dist/components/bq-spinner.js.map +1 -1
  315. package/dist/components/bq-status.js +1 -1
  316. package/dist/components/bq-status.js.map +1 -1
  317. package/dist/components/bq-step-item.js +1 -1
  318. package/dist/components/bq-step-item.js.map +1 -1
  319. package/dist/components/bq-steps.js +1 -1
  320. package/dist/components/bq-steps.js.map +1 -1
  321. package/dist/components/bq-switch.js +1 -1
  322. package/dist/components/bq-switch.js.map +1 -1
  323. package/dist/components/bq-tab-group.js +1 -1
  324. package/dist/components/bq-tab-group.js.map +1 -1
  325. package/dist/components/bq-tab.js +1 -1
  326. package/dist/components/bq-tab.js.map +1 -1
  327. package/dist/components/bq-tag.js +1 -1
  328. package/dist/components/bq-textarea.js +1 -1
  329. package/dist/components/bq-textarea.js.map +1 -1
  330. package/dist/components/bq-toast.js +1 -1
  331. package/dist/components/bq-toast.js.map +1 -1
  332. package/dist/components/bq-tooltip.js +1 -1
  333. package/dist/components/index.js +1 -1
  334. package/dist/components/p-4z5qnOaY.js +6 -0
  335. package/dist/components/p-4z5qnOaY.js.map +1 -0
  336. package/dist/components/{p-Hb8O3M5O.js → p-8mobOXPw.js} +2 -2
  337. package/dist/components/p-8mobOXPw.js.map +1 -0
  338. package/dist/components/{p-CN6wf6ZV.js → p-BHxv_w2i.js} +2 -2
  339. package/dist/components/p-BHxv_w2i.js.map +1 -0
  340. package/dist/{beeq/p-4c32eb15.entry.js → components/p-Br5pwRAS.js} +2 -2
  341. package/dist/components/p-Br5pwRAS.js.map +1 -0
  342. package/dist/components/p-C4FuG35Q.js +6 -0
  343. package/dist/components/p-C4FuG35Q.js.map +1 -0
  344. package/dist/components/p-D97CZ-cz.js +6 -0
  345. package/dist/components/p-D97CZ-cz.js.map +1 -0
  346. package/dist/components/p-DDVIIUm1.js +6 -0
  347. package/dist/components/p-DDVIIUm1.js.map +1 -0
  348. package/dist/{beeq/p-d1d71d1c.entry.js → components/p-DSdUt2Ay.js} +2 -2
  349. package/dist/components/p-DSdUt2Ay.js.map +1 -0
  350. package/dist/components/{p-B_4UApqI.js → p-Dla7kvqV.js} +2 -2
  351. package/dist/components/p-Dla7kvqV.js.map +1 -0
  352. package/dist/{beeq/p-e4767c3c.entry.js → components/p-DoX6g7vo.js} +2 -2
  353. package/dist/components/p-DoX6g7vo.js.map +1 -0
  354. package/dist/custom-elements.json +1980 -1980
  355. package/dist/esm/beeq.js +2 -3
  356. package/dist/esm/beeq.js.map +1 -1
  357. package/dist/esm/bq-accordion-group.entry.js +3 -4
  358. package/dist/esm/bq-accordion-group.entry.js.map +1 -1
  359. package/dist/esm/bq-accordion.entry.js +14 -15
  360. package/dist/esm/bq-accordion.entry.js.map +1 -1
  361. package/dist/esm/bq-alert.entry.js +15 -16
  362. package/dist/esm/bq-alert.entry.js.map +1 -1
  363. package/dist/esm/bq-avatar.entry.js +14 -15
  364. package/dist/esm/bq-avatar.entry.js.map +1 -1
  365. package/dist/esm/bq-badge.entry.js +9 -10
  366. package/dist/esm/bq-badge.entry.js.map +1 -1
  367. package/dist/esm/bq-breadcrumb-item.entry.js +3 -4
  368. package/dist/esm/bq-breadcrumb-item.entry.js.map +1 -1
  369. package/dist/esm/bq-breadcrumb.entry.js +7 -8
  370. package/dist/esm/bq-breadcrumb.entry.js.map +1 -1
  371. package/dist/esm/bq-button_2.entry.js +20 -21
  372. package/dist/esm/bq-button_2.entry.js.map +1 -1
  373. package/dist/esm/bq-card.entry.js +8 -9
  374. package/dist/esm/bq-card.entry.js.map +1 -1
  375. package/dist/esm/bq-checkbox.entry.js +6 -7
  376. package/dist/esm/bq-checkbox.entry.js.map +1 -1
  377. package/dist/esm/bq-date-picker.entry.js +21 -22
  378. package/dist/esm/bq-date-picker.entry.js.map +1 -1
  379. package/dist/esm/bq-dialog.entry.js +16 -17
  380. package/dist/esm/bq-dialog.entry.js.map +1 -1
  381. package/dist/esm/bq-divider.entry.js +15 -16
  382. package/dist/esm/bq-divider.entry.js.map +1 -1
  383. package/dist/esm/bq-drawer.entry.js +20 -21
  384. package/dist/esm/bq-drawer.entry.js.map +1 -1
  385. package/dist/esm/bq-dropdown_2.entry.js +5 -6
  386. package/dist/esm/bq-dropdown_2.entry.js.map +1 -1
  387. package/dist/esm/bq-empty-state.entry.js +27 -28
  388. package/dist/esm/bq-empty-state.entry.js.map +1 -1
  389. package/dist/esm/bq-input.entry.js +23 -24
  390. package/dist/esm/bq-input.entry.js.map +1 -1
  391. package/dist/esm/bq-notification.entry.js +13 -14
  392. package/dist/esm/bq-notification.entry.js.map +1 -1
  393. package/dist/esm/bq-option-group.entry.js +3 -4
  394. package/dist/esm/bq-option-group.entry.js.map +1 -1
  395. package/dist/esm/bq-option-list_2.entry.js +13 -14
  396. package/dist/esm/bq-option-list_2.entry.js.map +1 -1
  397. package/dist/esm/bq-option.entry.js +15 -16
  398. package/dist/esm/bq-option.entry.js.map +1 -1
  399. package/dist/esm/bq-page-title.entry.js +12 -13
  400. package/dist/esm/bq-page-title.entry.js.map +1 -1
  401. package/dist/esm/bq-progress.entry.js +14 -15
  402. package/dist/esm/bq-progress.entry.js.map +1 -1
  403. package/dist/esm/bq-radio-group.entry.js +2 -3
  404. package/dist/esm/bq-radio-group.entry.js.map +1 -1
  405. package/dist/esm/bq-radio.entry.js +9 -10
  406. package/dist/esm/bq-radio.entry.js.map +1 -1
  407. package/dist/esm/bq-select.entry.js +28 -29
  408. package/dist/esm/bq-select.entry.js.map +1 -1
  409. package/dist/esm/bq-side-menu-item.entry.js +7 -8
  410. package/dist/esm/bq-side-menu-item.entry.js.map +1 -1
  411. package/dist/esm/bq-side-menu.entry.js +4 -5
  412. package/dist/esm/bq-side-menu.entry.js.map +1 -1
  413. package/dist/esm/bq-slider.entry.js +23 -24
  414. package/dist/esm/bq-slider.entry.js.map +1 -1
  415. package/dist/esm/bq-spinner.entry.js +11 -12
  416. package/dist/esm/bq-spinner.entry.js.map +1 -1
  417. package/dist/esm/bq-status.entry.js +3 -4
  418. package/dist/esm/bq-status.entry.js.map +1 -1
  419. package/dist/esm/bq-step-item.entry.js +17 -18
  420. package/dist/esm/bq-step-item.entry.js.map +1 -1
  421. package/dist/esm/bq-steps.entry.js +3 -4
  422. package/dist/esm/bq-steps.entry.js.map +1 -1
  423. package/dist/esm/bq-switch.entry.js +11 -12
  424. package/dist/esm/bq-switch.entry.js.map +1 -1
  425. package/dist/esm/bq-tab-group.entry.js +8 -9
  426. package/dist/esm/bq-tab-group.entry.js.map +1 -1
  427. package/dist/esm/bq-tab.entry.js +6 -7
  428. package/dist/esm/bq-tab.entry.js.map +1 -1
  429. package/dist/esm/bq-textarea.entry.js +17 -18
  430. package/dist/esm/bq-textarea.entry.js.map +1 -1
  431. package/dist/esm/bq-toast.entry.js +3 -4
  432. package/dist/esm/bq-toast.entry.js.map +1 -1
  433. package/dist/esm/bq-tooltip.entry.js +9 -10
  434. package/dist/esm/bq-tooltip.entry.js.map +1 -1
  435. package/dist/esm/{index-D1N0tWF3.js → index-XbB3xSTR.js} +67 -6
  436. package/dist/esm/index-XbB3xSTR.js.map +1 -0
  437. package/dist/esm/loader.js +2 -3
  438. package/dist/esm/loader.js.map +1 -1
  439. package/dist/hydrate/index.js +411 -415
  440. package/dist/hydrate/index.mjs +411 -415
  441. package/dist/stencil.config.js +1 -1
  442. package/dist/stencil.config.js.map +1 -1
  443. package/dist/types/components/accordion/bq-accordion.d.ts +1 -1
  444. package/dist/types/components/accordion-group/bq-accordion-group.d.ts +1 -1
  445. package/dist/types/components/alert/bq-alert.d.ts +1 -1
  446. package/dist/types/components/avatar/bq-avatar.d.ts +1 -1
  447. package/dist/types/components/badge/bq-badge.d.ts +1 -1
  448. package/dist/types/components/breadcrumb/bq-breadcrumb.d.ts +1 -1
  449. package/dist/types/components/breadcrumb-item/bq-breadcrumb-item.d.ts +1 -1
  450. package/dist/types/components/button/bq-button.d.ts +1 -1
  451. package/dist/types/components/card/bq-card.d.ts +1 -1
  452. package/dist/types/components/checkbox/bq-checkbox.d.ts +1 -1
  453. package/dist/types/components/date-picker/bq-date-picker.d.ts +1 -1
  454. package/dist/types/components/dialog/bq-dialog.d.ts +1 -1
  455. package/dist/types/components/divider/bq-divider.d.ts +1 -1
  456. package/dist/types/components/drawer/bq-drawer.d.ts +1 -1
  457. package/dist/types/components/dropdown/bq-dropdown.d.ts +1 -1
  458. package/dist/types/components/empty-state/bq-empty-state.d.ts +1 -1
  459. package/dist/types/components/icon/bq-icon.d.ts +1 -1
  460. package/dist/types/components/input/bq-input.d.ts +1 -1
  461. package/dist/types/components/notification/bq-notification.d.ts +1 -1
  462. package/dist/types/components/option/bq-option.d.ts +1 -1
  463. package/dist/types/components/option-group/bq-option-group.d.ts +1 -1
  464. package/dist/types/components/option-list/bq-option-list.d.ts +1 -1
  465. package/dist/types/components/page-title/bq-page-title.d.ts +1 -1
  466. package/dist/types/components/panel/bq-panel.d.ts +1 -1
  467. package/dist/types/components/progress/bq-progress.d.ts +1 -1
  468. package/dist/types/components/radio/bq-radio.d.ts +1 -1
  469. package/dist/types/components/radio-group/bq-radio-group.d.ts +1 -1
  470. package/dist/types/components/select/bq-select.d.ts +1 -1
  471. package/dist/types/components/side-menu/bq-side-menu.d.ts +1 -1
  472. package/dist/types/components/side-menu-item/bq-side-menu-item.d.ts +1 -1
  473. package/dist/types/components/slider/bq-slider.d.ts +1 -1
  474. package/dist/types/components/spinner/bq-spinner.d.ts +1 -1
  475. package/dist/types/components/status/bq-status.d.ts +1 -1
  476. package/dist/types/components/step-item/bq-step-item.d.ts +1 -1
  477. package/dist/types/components/steps/bq-steps.d.ts +1 -1
  478. package/dist/types/components/switch/bq-switch.d.ts +1 -1
  479. package/dist/types/components/tab/bq-tab.d.ts +1 -1
  480. package/dist/types/components/tab-group/bq-tab-group.d.ts +1 -1
  481. package/dist/types/components/tag/bq-tag.d.ts +1 -1
  482. package/dist/types/components/textarea/bq-textarea.d.ts +1 -1
  483. package/dist/types/components/toast/bq-toast.d.ts +1 -1
  484. package/dist/types/components/tooltip/bq-tooltip.d.ts +1 -1
  485. package/package.json +1 -1
  486. package/dist/beeq/p-04dac1c6.entry.js +0 -6
  487. package/dist/beeq/p-04dac1c6.entry.js.map +0 -1
  488. package/dist/beeq/p-08c11d40.entry.js +0 -6
  489. package/dist/beeq/p-08c11d40.entry.js.map +0 -1
  490. package/dist/beeq/p-1f8fbd9d.entry.js +0 -6
  491. package/dist/beeq/p-1f8fbd9d.entry.js.map +0 -1
  492. package/dist/beeq/p-214ec65e.entry.js +0 -6
  493. package/dist/beeq/p-214ec65e.entry.js.map +0 -1
  494. package/dist/beeq/p-2a7b2e52.entry.js.map +0 -1
  495. package/dist/beeq/p-2eb81c09.entry.js +0 -6
  496. package/dist/beeq/p-2eb81c09.entry.js.map +0 -1
  497. package/dist/beeq/p-39888c37.entry.js.map +0 -1
  498. package/dist/beeq/p-3abc34ec.entry.js +0 -6
  499. package/dist/beeq/p-3abc34ec.entry.js.map +0 -1
  500. package/dist/beeq/p-4588abed.entry.js +0 -6
  501. package/dist/beeq/p-4588abed.entry.js.map +0 -1
  502. package/dist/beeq/p-4c32eb15.entry.js.map +0 -1
  503. package/dist/beeq/p-4fbfc43c.entry.js.map +0 -1
  504. package/dist/beeq/p-520335c7.entry.js +0 -6
  505. package/dist/beeq/p-520335c7.entry.js.map +0 -1
  506. package/dist/beeq/p-586937fa.entry.js +0 -6
  507. package/dist/beeq/p-586937fa.entry.js.map +0 -1
  508. package/dist/beeq/p-64bf3252.entry.js +0 -6
  509. package/dist/beeq/p-64bf3252.entry.js.map +0 -1
  510. package/dist/beeq/p-6e1856ec.entry.js +0 -6
  511. package/dist/beeq/p-6e1856ec.entry.js.map +0 -1
  512. package/dist/beeq/p-7dd86b3a.entry.js +0 -6
  513. package/dist/beeq/p-7dd86b3a.entry.js.map +0 -1
  514. package/dist/beeq/p-81d78b05.entry.js +0 -6
  515. package/dist/beeq/p-81d78b05.entry.js.map +0 -1
  516. package/dist/beeq/p-82ee164d.entry.js.map +0 -1
  517. package/dist/beeq/p-85d57b16.entry.js.map +0 -1
  518. package/dist/beeq/p-91c69867.entry.js.map +0 -1
  519. package/dist/beeq/p-BtYhUEAn.js +0 -6
  520. package/dist/beeq/p-BtYhUEAn.js.map +0 -1
  521. package/dist/beeq/p-C33fRBEf.js +0 -6
  522. package/dist/beeq/p-C33fRBEf.js.map +0 -1
  523. package/dist/beeq/p-D1N0tWF3.js +0 -7
  524. package/dist/beeq/p-D1N0tWF3.js.map +0 -1
  525. package/dist/beeq/p-a350925a.entry.js +0 -6
  526. package/dist/beeq/p-a350925a.entry.js.map +0 -1
  527. package/dist/beeq/p-a416eb22.entry.js.map +0 -1
  528. package/dist/beeq/p-a4865383.entry.js.map +0 -1
  529. package/dist/beeq/p-a6cd9c8c.entry.js +0 -6
  530. package/dist/beeq/p-a6cd9c8c.entry.js.map +0 -1
  531. package/dist/beeq/p-aec68c6d.entry.js +0 -6
  532. package/dist/beeq/p-aec68c6d.entry.js.map +0 -1
  533. package/dist/beeq/p-aede4b4e.entry.js.map +0 -1
  534. package/dist/beeq/p-c0e9a6cf.entry.js.map +0 -1
  535. package/dist/beeq/p-c6fdcdf6.entry.js +0 -6
  536. package/dist/beeq/p-c6fdcdf6.entry.js.map +0 -1
  537. package/dist/beeq/p-c9ff0a5c.entry.js.map +0 -1
  538. package/dist/beeq/p-cc634b64.entry.js +0 -6
  539. package/dist/beeq/p-cc634b64.entry.js.map +0 -1
  540. package/dist/beeq/p-d1d71d1c.entry.js.map +0 -1
  541. package/dist/beeq/p-df16b51b.entry.js +0 -6
  542. package/dist/beeq/p-df16b51b.entry.js.map +0 -1
  543. package/dist/beeq/p-e4767c3c.entry.js.map +0 -1
  544. package/dist/beeq/p-e9ac61fd.entry.js +0 -6
  545. package/dist/beeq/p-e9ac61fd.entry.js.map +0 -1
  546. package/dist/beeq/p-ea2214aa.entry.js.map +0 -1
  547. package/dist/beeq/p-ea3db4eb.entry.js.map +0 -1
  548. package/dist/beeq/p-f0729f34.entry.js.map +0 -1
  549. package/dist/beeq/p-f159529e.entry.js +0 -6
  550. package/dist/beeq/p-f159529e.entry.js.map +0 -1
  551. package/dist/beeq/p-fb8f84c3.entry.js +0 -6
  552. package/dist/beeq/p-fb8f84c3.entry.js.map +0 -1
  553. package/dist/cjs/app-globals-BY_z0SzA.js +0 -12
  554. package/dist/cjs/app-globals-BY_z0SzA.js.map +0 -1
  555. package/dist/cjs/index-C09ZVaB4.js +0 -154
  556. package/dist/cjs/index-C09ZVaB4.js.map +0 -1
  557. package/dist/cjs/index-CvbyQUB9.js.map +0 -1
  558. package/dist/components/p--ouTGcG3.js +0 -6
  559. package/dist/components/p--ouTGcG3.js.map +0 -1
  560. package/dist/components/p-BAkBsRtN.js.map +0 -1
  561. package/dist/components/p-B_4UApqI.js.map +0 -1
  562. package/dist/components/p-BhbDh_JY.js +0 -6
  563. package/dist/components/p-BhbDh_JY.js.map +0 -1
  564. package/dist/components/p-BoJH_4tj.js.map +0 -1
  565. package/dist/components/p-CLmlNuSo.js +0 -6
  566. package/dist/components/p-CLmlNuSo.js.map +0 -1
  567. package/dist/components/p-CN6wf6ZV.js.map +0 -1
  568. package/dist/components/p-DGQflEm1.js +0 -6
  569. package/dist/components/p-DGQflEm1.js.map +0 -1
  570. package/dist/components/p-Hb8O3M5O.js.map +0 -1
  571. package/dist/esm/app-globals-BtYhUEAn.js +0 -10
  572. package/dist/esm/app-globals-BtYhUEAn.js.map +0 -1
  573. package/dist/esm/index-C33fRBEf.js +0 -151
  574. package/dist/esm/index-C33fRBEf.js.map +0 -1
  575. package/dist/esm/index-D1N0tWF3.js.map +0 -1
  576. /package/dist/types/{home/runner/work/BEEQ/BEEQ → Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System}/.stencil/packages/beeq/jest.config.d.ts +0 -0
  577. /package/dist/types/{home/runner/work/BEEQ/BEEQ → Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System}/.stencil/packages/beeq/stencil.config.d.ts +0 -0
  578. /package/dist/types/{home/runner/work/BEEQ/BEEQ → Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System}/.stencil/tailwind.config.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"bq-step-item.entry.js","sources":["../../packages/beeq/src/components/step-item/bq-step-item.types.ts","../../packages/beeq/src/components/step-item/scss/bq-step-item.scss?tag=bq-step-item&encapsulation=shadow","../../packages/beeq/src/components/step-item/bq-step-item.tsx"],"sourcesContent":["export const STEP_ITEM_STATUS = ['default', 'current', 'completed', 'error', 'disabled'] as const;\nexport type TStepItemStatus = (typeof STEP_ITEM_STATUS)[number];\n","/* -------------------------------------------------------------------------- */\n/* Step item styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-step-item.variables';\n\n:host {\n --bq-icon--color: theme(stroke.icon.primary);\n\n @apply box-border inline-flex;\n}\n\n:host([orientation='vertical']) {\n @apply flex flex-1;\n}\n\n:host([orientation='vertical'][is-last]) {\n @apply flex-[0_0_auto];\n}\n\n.bq-step-item {\n @apply flex gap-s rounded-m border-none bg-transparent pe-[--bq-steps--gap] ps-0 p-b-xs2 focus-visible:focus hover:bg-hover-ui-secondary;\n @apply transition-colors duration-300;\n}\n\n.bq-step-item__prefix.dot,\n.bq-step-item__prefix.icon {\n ::slotted(bq-icon) {\n --bq-icon--color: var(--bq-step-item--prefix-color);\n }\n\n &.current {\n ::slotted(bq-icon) {\n --bq-icon--color: var(--bq-step-item--prefix-color-current);\n }\n }\n\n &.completed {\n ::slotted(bq-icon) {\n --bq-icon--color: var(--bq-step-item--prefix-color-completed);\n }\n }\n\n &.error {\n ::slotted(bq-icon) {\n --bq-icon--color: var(--bq-step-item--prefix-color-error);\n }\n }\n\n &.disabled {\n ::slotted(bq-icon) {\n opacity: 0.6;\n }\n }\n}\n\n.bq-step-item__prefix.numeric {\n @apply flex items-center justify-center rounded-full;\n @apply bg-[--bq-step-item--prefix-num-bg-color] bs-[--bq-step-item--prefix-num-size] is-[--bq-step-item--prefix-num-size];\n @apply text-m font-semibold leading-regular text-primary;\n\n &.small {\n @apply text-s [--bq-step-item--prefix-num-size:--bq-spacing-l];\n }\n\n // Status\n\n &.current {\n @apply bg-[var(--bq-step-item--prefix-color-current)] text-alt;\n }\n\n &.completed {\n @apply bg-ui-success-alt text-success;\n }\n\n &.error {\n @apply bg-ui-danger-alt text-danger;\n }\n\n &.disabled {\n @apply opacity-60;\n }\n}\n\n.bq-step-item__content--description::slotted(*) {\n @apply text-s leading-regular opacity-60;\n}\n","import type { EventEmitter } from '@stencil/core';\nimport { Component, Element, Event, Prop, Watch } from '@stencil/core';\n\nimport { isHTMLElement, validatePropValue } from '../../shared/utils';\nimport type { TStepsOrientation, TStepsSize, TStepsType } from '../steps/bq-steps.types';\nimport { STEPS_ORIENTATION, STEPS_SIZE } from '../steps/bq-steps.types';\nimport type { TStepItemStatus } from './bq-step-item.types';\nimport { STEP_ITEM_STATUS } from './bq-step-item.types';\n\n/**\n * The Step Item Component is a UI element used to display a single step or stage in a process or task.\n * It should be used inside the Steps component.\n *\n * @example How to use it\n * ```html\n * <bq-step-item status=\"completed\">\n * <bq-icon slot=\"prefix\" name=\"check-circle\"></bq-icon>\n * <span>Title</span>\n * <span slot=\"description\">Description</span>\n * </bq-step-item>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/896b66-stepper\n * @status stable\n *\n * @attr {string} divider-color - The color of the line that connects the steps. It should be a valid declarative color token.\n * @attr {\"horizontal\" | \"vertical\"} orientation - The orientation of the step item\n * @attr {\"small\" | \"medium\"} size - It defines prefix size\n * @attr {\"completed\" | \"current\" | \"error\" | \"default\" | \"disabled\"} status - It defines step item appearance based on its status\n * @attr {\"numeric\" | \"icon\" | \"dot\"} type - It defines the step item type used\n *\n * @event bqClick - Callback handler emitted when the step item is clicked\n * @event bqFocus - Callback handler emitted when the step item is focused\n * @event bqBlur - Callback handler emitted when the step item loses focus\n *\n * @slot - The step item content\n * @slot prefix - The step item prefix\n * @slot description - The step item description\n *\n * @part base - The component's base wrapper.\n * @part title - The component's title.\n * @part description - The component's description.\n *\n * @cssprop --bq-step-item--prefix-color - Color of the prefix icon\n * @cssprop --bq-step-item--prefix-color-current - Color of the prefix icon when current\n * @cssprop --bq-step-item--prefix-color-completed - Color of the prefix icon when completed\n * @cssprop --bq-step-item--prefix-color-error - Color of the prefix icon when error\n * @cssprop --bq-step-item--prefix-num-size - Size of the prefix number\n * @cssprop --bq-step-item--prefix-num-bg-color - Background color of the prefix number\n */\n@Component({\n tag: 'bq-step-item',\n styleUrl: './scss/bq-step-item.scss',\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BqStepItem {\n // Own Properties\n // ====================\n\n // Reference to host HTML element\n // ===================================\n @Element() el!: HTMLBqStepItemElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n // Public Property API\n // ========================\n\n /** The color of the line that connects the steps. It should be a valid declarative color token. */\n @Prop({ reflect: true }) dividerColor: string = 'stroke--primary';\n\n /** @internal It defines if the step item is the last one */\n @Prop({ reflect: true }) isLast?: boolean = false;\n\n /** It defines the orientation of the step item */\n @Prop({ reflect: true }) orientation?: TStepsOrientation = 'horizontal';\n\n /** It defines prefix size */\n @Prop({ reflect: true }) size?: TStepsSize = 'medium';\n\n /** It defines step item appearance based on its status */\n @Prop({ reflect: true, mutable: true }) status?: TStepItemStatus = 'default';\n\n /** It defines the step item type used */\n @Prop({ reflect: true }) type?: TStepsType;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('size')\n @Watch('status')\n checkPropValues() {\n validatePropValue(STEPS_ORIENTATION, 'horizontal', this.el, 'orientation');\n validatePropValue(STEPS_SIZE, 'medium', this.el, 'size');\n validatePropValue(STEP_ITEM_STATUS, 'default', this.el, 'status');\n\n this.handleIconPrefix();\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Callback handler triggered when the step item is clicked */\n @Event() bqClick: EventEmitter<HTMLBqStepItemElement>;\n\n /** Callback handler triggered when the step item is focused */\n @Event() bqFocus: EventEmitter<HTMLBqStepItemElement>;\n\n /** Callback handler triggered when the step item loses focus */\n @Event() bqBlur: EventEmitter<HTMLBqStepItemElement>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n connectedCallback() {\n this.checkPropValues();\n }\n\n componentWillLoad() {\n this.checkPropValues();\n }\n\n componentDidLoad() {\n this.handleIconPrefix();\n }\n\n // Listeners\n // ==============\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleFocus = () => {\n this.bqFocus.emit(this.el);\n };\n\n private handleBlur = () => {\n this.bqBlur.emit(this.el);\n };\n\n private handleClick = async () => {\n if (this.isDisabled || this.isCurrent) return;\n\n const clickEvent = this.bqClick.emit(this.el);\n if (clickEvent.defaultPrevented) return;\n\n const stepsParent = this.el.closest('bq-steps');\n if (!stepsParent) return;\n\n await stepsParent.setCurrentStepItem(this.el);\n };\n\n private handleIconPrefix = () => {\n const iconElem = this.el.querySelector('[slot=\"prefix\"]');\n if (!iconElem || !isHTMLElement(iconElem, 'bq-icon')) return;\n\n iconElem.size = this.size === 'small' ? 24 : 32;\n };\n\n private get isDisabled(): boolean {\n return this.status === 'disabled';\n }\n\n private get isCurrent(): boolean {\n return this.status === 'current';\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n const isVertical = this.orientation === 'vertical';\n\n return (\n <div class={{ 'inline-flex': true, 'flex-row': !isVertical, 'flex-col': isVertical }} role=\"listitem\">\n <button\n class={{\n 'bq-step-item': true,\n [`bq-step-item--${this.status}`]: true,\n 'pointer-events-none opacity-60': this.isDisabled,\n }}\n disabled={this.isDisabled}\n onBlur={this.handleBlur}\n onClick={this.handleClick}\n onFocus={this.handleFocus}\n aria-current={this.isCurrent ? 'step' : undefined}\n type=\"button\"\n part=\"base\"\n >\n <div class={`bq-step-item__prefix relative ${this.type} ${this.size} ${this.status}`}>\n <slot name=\"prefix\" onSlotchange={this.handleIconPrefix} />\n </div>\n <div class=\"bq-step-item__content items-start text-start\">\n {/* TITLE */}\n <div\n class={{\n 'bq-step-item__content--title pe-xs3 text-m text-primary leading-regular': true,\n 'pointer-events-none': this.isDisabled,\n 'text-brand': this.isCurrent,\n }}\n part=\"title\"\n >\n <slot />\n </div>\n {/* DESCRIPTION */}\n <div\n class={{\n 'bq-step-item__content--description text-s text-secondary leading-regular': true,\n 'opacity-60': this.isDisabled,\n }}\n part=\"description\"\n >\n <slot name=\"description\" />\n </div>\n </div>\n </button>\n {!this.isLast && (\n <bq-divider\n class={{\n '[&::part(base)]:self-start [&::part(base)]:p-m': true,\n '[&::part(base)]:p-s': isVertical && this.size === 'small',\n }}\n exportparts=\"base:divider-base,dash-start:divider-dash-start,dash-end:divider-dash-end\"\n orientation={this.orientation}\n strokeColor={this.dividerColor}\n strokeThickness={2}\n aria-hidden=\"true\"\n />\n )}\n </div>\n );\n }\n}\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;;;;AAAO,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,CAAU;;ACAjG,MAAM,aAAa,GAAG,MAAM,CAAC,ohyBAAohyB,CAAC;;MCyDriyB,UAAU,GAAA,MAAA;;;;;;;;;;;;;;IAgBI,YAAY,GAAW,iBAAiB;;IAGxC,MAAM,GAAa,KAAK;;IAGxB,WAAW,GAAuB,YAAY;;IAG9C,IAAI,GAAgB,QAAQ;;IAGb,MAAM,GAAqB,SAAS;;AAGnD,IAAA,IAAI;;;IAO7B,eAAe,GAAA;QACb,iBAAiB,CAAC,iBAAiB,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,aAAa,CAAC;QAC1E,iBAAiB,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC;QACxD,iBAAiB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC;QAEjE,IAAI,CAAC,gBAAgB,EAAE;;;;;;AAQhB,IAAA,OAAO;;AAGP,IAAA,OAAO;;AAGP,IAAA,MAAM;;;;IAMf,iBAAiB,GAAA;QACf,IAAI,CAAC,eAAe,EAAE;;IAGxB,iBAAiB,GAAA;QACf,IAAI,CAAC,eAAe,EAAE;;IAGxB,gBAAgB,GAAA;QACd,IAAI,CAAC,gBAAgB,EAAE;;;;;;;;;;;;;;IAkBjB,WAAW,GAAG,MAAK;QACzB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAC5B,KAAC;IAEO,UAAU,GAAG,MAAK;QACxB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAC3B,KAAC;IAEO,WAAW,GAAG,YAAW;AAC/B,QAAA,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS;YAAE;AAEvC,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7C,IAAI,UAAU,CAAC,gBAAgB;YAAE;QAEjC,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;AAC/C,QAAA,IAAI,CAAC,WAAW;YAAE;QAElB,MAAM,WAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;AAC/C,KAAC;IAEO,gBAAgB,GAAG,MAAK;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,iBAAiB,CAAC;QACzD,IAAI,CAAC,QAAQ,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC;YAAE;AAEtD,QAAA,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,OAAO,GAAG,EAAE,GAAG,EAAE;AACjD,KAAC;AAED,IAAA,IAAY,UAAU,GAAA;AACpB,QAAA,OAAO,IAAI,CAAC,MAAM,KAAK,UAAU;;AAGnC,IAAA,IAAY,SAAS,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,MAAM,KAAK,SAAS;;;;;IAOlC,MAAM,GAAA;AACJ,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,KAAK,UAAU;AAElD,QAAA,QACEA,IAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,IAAI,EAAC,UAAU,EAAA,QAAA,EAAA,CACnGA,IACE,CAAA,QAAA,EAAA,EAAA,KAAK,EAAE;AACL,wBAAA,cAAc,EAAE,IAAI;AACpB,wBAAA,CAAC,iBAAiB,IAAI,CAAC,MAAM,CAAE,CAAA,GAAG,IAAI;wBACtC,gCAAgC,EAAE,IAAI,CAAC,UAAU;qBAClD,EACD,QAAQ,EAAE,IAAI,CAAC,UAAU,EACzB,MAAM,EAAE,IAAI,CAAC,UAAU,EACvB,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,OAAO,EAAE,IAAI,CAAC,WAAW,EAAA,cAAA,EACX,IAAI,CAAC,SAAS,GAAG,MAAM,GAAG,SAAS,EACjD,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,MAAM,EAEX,QAAA,EAAA,CAAAC,GAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAE,iCAAiC,IAAI,CAAC,IAAI,CAAA,CAAA,EAAI,IAAI,CAAC,IAAI,CAAI,CAAA,EAAA,IAAI,CAAC,MAAM,CAAE,CAAA,EAAA,QAAA,EAClFA,GAAM,CAAA,MAAA,EAAA,EAAA,IAAI,EAAC,QAAQ,EAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,EAAA,EAAA,0CAAA,CAAI,EACvD,EAAA,0CAAA,CAAA,EACND,cAAK,KAAK,EAAC,8CAA8C,EAEvD,QAAA,EAAA,CAAAC,GAAA,CAAA,KAAA,EAAA,EACE,KAAK,EAAE;AACL,wCAAA,yEAAyE,EAAE,IAAI;wCAC/E,qBAAqB,EAAE,IAAI,CAAC,UAAU;wCACtC,YAAY,EAAE,IAAI,CAAC,SAAS;qCAC7B,EACD,IAAI,EAAC,OAAO,EAAA,QAAA,EAEZA,2DAAQ,EACJ,EAAA,0CAAA,CAAA,EAENA,GACE,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE;AACL,wCAAA,0EAA0E,EAAE,IAAI;wCAChF,YAAY,EAAE,IAAI,CAAC,UAAU;qCAC9B,EACD,IAAI,EAAC,aAAa,EAAA,QAAA,EAElBA,cAAM,IAAI,EAAC,aAAa,EAAG,EAAA,0CAAA,CAAA,EAAA,EAAA,0CAAA,CACvB,gDACF,CACC,EAAA,EAAA,0CAAA,CAAA,EACR,CAAC,IAAI,CAAC,MAAM,KACXA,GACE,CAAA,YAAA,EAAA,EAAA,KAAK,EAAE;AACL,wBAAA,gDAAgD,EAAE,IAAI;AACtD,wBAAA,qBAAqB,EAAE,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO;AAC3D,qBAAA,EACD,WAAW,EAAC,2EAA2E,EACvF,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,WAAW,EAAE,IAAI,CAAC,YAAY,EAC9B,eAAe,EAAE,CAAC,EACN,aAAA,EAAA,MAAM,EAClB,EAAA,0CAAA,CAAA,CACH,CACG,EAAA,EAAA,0CAAA,CAAA;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"bq-step-item.entry.js","sources":["../../packages/beeq/src/components/step-item/bq-step-item.types.ts","../../packages/beeq/src/components/step-item/scss/bq-step-item.scss?tag=bq-step-item&encapsulation=shadow","../../packages/beeq/src/components/step-item/bq-step-item.tsx"],"sourcesContent":["export const STEP_ITEM_STATUS = ['default', 'current', 'completed', 'error', 'disabled'] as const;\nexport type TStepItemStatus = (typeof STEP_ITEM_STATUS)[number];\n","/* -------------------------------------------------------------------------- */\n/* Step item styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-step-item.variables';\n\n:host {\n --bq-icon--color: theme(stroke.icon.primary);\n\n @apply box-border inline-flex;\n}\n\n:host([orientation='vertical']) {\n @apply flex flex-1;\n}\n\n:host([orientation='vertical'][is-last]) {\n @apply flex-[0_0_auto];\n}\n\n.bq-step-item {\n @apply flex gap-s rounded-m border-none bg-transparent pe-[--bq-steps--gap] ps-0 p-b-xs2 focus-visible:focus hover:bg-hover-ui-secondary;\n @apply transition-colors duration-300;\n}\n\n.bq-step-item__prefix.dot,\n.bq-step-item__prefix.icon {\n ::slotted(bq-icon) {\n --bq-icon--color: var(--bq-step-item--prefix-color);\n }\n\n &.current {\n ::slotted(bq-icon) {\n --bq-icon--color: var(--bq-step-item--prefix-color-current);\n }\n }\n\n &.completed {\n ::slotted(bq-icon) {\n --bq-icon--color: var(--bq-step-item--prefix-color-completed);\n }\n }\n\n &.error {\n ::slotted(bq-icon) {\n --bq-icon--color: var(--bq-step-item--prefix-color-error);\n }\n }\n\n &.disabled {\n ::slotted(bq-icon) {\n opacity: 0.6;\n }\n }\n}\n\n.bq-step-item__prefix.numeric {\n @apply flex items-center justify-center rounded-full;\n @apply bg-[--bq-step-item--prefix-num-bg-color] bs-[--bq-step-item--prefix-num-size] is-[--bq-step-item--prefix-num-size];\n @apply text-m font-semibold leading-regular text-primary;\n\n &.small {\n @apply text-s [--bq-step-item--prefix-num-size:--bq-spacing-l];\n }\n\n // Status\n\n &.current {\n @apply bg-[var(--bq-step-item--prefix-color-current)] text-alt;\n }\n\n &.completed {\n @apply bg-ui-success-alt text-success;\n }\n\n &.error {\n @apply bg-ui-danger-alt text-danger;\n }\n\n &.disabled {\n @apply opacity-60;\n }\n}\n\n.bq-step-item__content--description::slotted(*) {\n @apply text-s leading-regular opacity-60;\n}\n","import type { EventEmitter } from '@stencil/core';\nimport { Component, Element, Event, h, Prop, Watch } from '@stencil/core';\n\nimport { isHTMLElement, validatePropValue } from '../../shared/utils';\nimport type { TStepsOrientation, TStepsSize, TStepsType } from '../steps/bq-steps.types';\nimport { STEPS_ORIENTATION, STEPS_SIZE } from '../steps/bq-steps.types';\nimport type { TStepItemStatus } from './bq-step-item.types';\nimport { STEP_ITEM_STATUS } from './bq-step-item.types';\n\n/**\n * The Step Item Component is a UI element used to display a single step or stage in a process or task.\n * It should be used inside the Steps component.\n *\n * @example How to use it\n * ```html\n * <bq-step-item status=\"completed\">\n * <bq-icon slot=\"prefix\" name=\"check-circle\"></bq-icon>\n * <span>Title</span>\n * <span slot=\"description\">Description</span>\n * </bq-step-item>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/896b66-stepper\n * @status stable\n *\n * @attr {string} divider-color - The color of the line that connects the steps. It should be a valid declarative color token.\n * @attr {\"horizontal\" | \"vertical\"} orientation - The orientation of the step item\n * @attr {\"small\" | \"medium\"} size - It defines prefix size\n * @attr {\"completed\" | \"current\" | \"error\" | \"default\" | \"disabled\"} status - It defines step item appearance based on its status\n * @attr {\"numeric\" | \"icon\" | \"dot\"} type - It defines the step item type used\n *\n * @event bqClick - Callback handler emitted when the step item is clicked\n * @event bqFocus - Callback handler emitted when the step item is focused\n * @event bqBlur - Callback handler emitted when the step item loses focus\n *\n * @slot - The step item content\n * @slot prefix - The step item prefix\n * @slot description - The step item description\n *\n * @part base - The component's base wrapper.\n * @part title - The component's title.\n * @part description - The component's description.\n *\n * @cssprop --bq-step-item--prefix-color - Color of the prefix icon\n * @cssprop --bq-step-item--prefix-color-current - Color of the prefix icon when current\n * @cssprop --bq-step-item--prefix-color-completed - Color of the prefix icon when completed\n * @cssprop --bq-step-item--prefix-color-error - Color of the prefix icon when error\n * @cssprop --bq-step-item--prefix-num-size - Size of the prefix number\n * @cssprop --bq-step-item--prefix-num-bg-color - Background color of the prefix number\n */\n@Component({\n tag: 'bq-step-item',\n styleUrl: './scss/bq-step-item.scss',\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BqStepItem {\n // Own Properties\n // ====================\n\n // Reference to host HTML element\n // ===================================\n @Element() el!: HTMLBqStepItemElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n // Public Property API\n // ========================\n\n /** The color of the line that connects the steps. It should be a valid declarative color token. */\n @Prop({ reflect: true }) dividerColor: string = 'stroke--primary';\n\n /** @internal It defines if the step item is the last one */\n @Prop({ reflect: true }) isLast?: boolean = false;\n\n /** It defines the orientation of the step item */\n @Prop({ reflect: true }) orientation?: TStepsOrientation = 'horizontal';\n\n /** It defines prefix size */\n @Prop({ reflect: true }) size?: TStepsSize = 'medium';\n\n /** It defines step item appearance based on its status */\n @Prop({ reflect: true, mutable: true }) status?: TStepItemStatus = 'default';\n\n /** It defines the step item type used */\n @Prop({ reflect: true }) type?: TStepsType;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('size')\n @Watch('status')\n checkPropValues() {\n validatePropValue(STEPS_ORIENTATION, 'horizontal', this.el, 'orientation');\n validatePropValue(STEPS_SIZE, 'medium', this.el, 'size');\n validatePropValue(STEP_ITEM_STATUS, 'default', this.el, 'status');\n\n this.handleIconPrefix();\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Callback handler triggered when the step item is clicked */\n @Event() bqClick: EventEmitter<HTMLBqStepItemElement>;\n\n /** Callback handler triggered when the step item is focused */\n @Event() bqFocus: EventEmitter<HTMLBqStepItemElement>;\n\n /** Callback handler triggered when the step item loses focus */\n @Event() bqBlur: EventEmitter<HTMLBqStepItemElement>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n connectedCallback() {\n this.checkPropValues();\n }\n\n componentWillLoad() {\n this.checkPropValues();\n }\n\n componentDidLoad() {\n this.handleIconPrefix();\n }\n\n // Listeners\n // ==============\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleFocus = () => {\n this.bqFocus.emit(this.el);\n };\n\n private handleBlur = () => {\n this.bqBlur.emit(this.el);\n };\n\n private handleClick = async () => {\n if (this.isDisabled || this.isCurrent) return;\n\n const clickEvent = this.bqClick.emit(this.el);\n if (clickEvent.defaultPrevented) return;\n\n const stepsParent = this.el.closest('bq-steps');\n if (!stepsParent) return;\n\n await stepsParent.setCurrentStepItem(this.el);\n };\n\n private handleIconPrefix = () => {\n const iconElem = this.el.querySelector('[slot=\"prefix\"]');\n if (!iconElem || !isHTMLElement(iconElem, 'bq-icon')) return;\n\n iconElem.size = this.size === 'small' ? 24 : 32;\n };\n\n private get isDisabled(): boolean {\n return this.status === 'disabled';\n }\n\n private get isCurrent(): boolean {\n return this.status === 'current';\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n const isVertical = this.orientation === 'vertical';\n\n return (\n <div class={{ 'inline-flex': true, 'flex-row': !isVertical, 'flex-col': isVertical }} role=\"listitem\">\n <button\n class={{\n 'bq-step-item': true,\n [`bq-step-item--${this.status}`]: true,\n 'pointer-events-none opacity-60': this.isDisabled,\n }}\n disabled={this.isDisabled}\n onBlur={this.handleBlur}\n onClick={this.handleClick}\n onFocus={this.handleFocus}\n aria-current={this.isCurrent ? 'step' : undefined}\n type=\"button\"\n part=\"base\"\n >\n <div class={`bq-step-item__prefix relative ${this.type} ${this.size} ${this.status}`}>\n <slot name=\"prefix\" onSlotchange={this.handleIconPrefix} />\n </div>\n <div class=\"bq-step-item__content items-start text-start\">\n {/* TITLE */}\n <div\n class={{\n 'bq-step-item__content--title pe-xs3 text-m text-primary leading-regular': true,\n 'pointer-events-none': this.isDisabled,\n 'text-brand': this.isCurrent,\n }}\n part=\"title\"\n >\n <slot />\n </div>\n {/* DESCRIPTION */}\n <div\n class={{\n 'bq-step-item__content--description text-s text-secondary leading-regular': true,\n 'opacity-60': this.isDisabled,\n }}\n part=\"description\"\n >\n <slot name=\"description\" />\n </div>\n </div>\n </button>\n {!this.isLast && (\n <bq-divider\n class={{\n '[&::part(base)]:self-start [&::part(base)]:p-m': true,\n '[&::part(base)]:p-s': isVertical && this.size === 'small',\n }}\n exportparts=\"base:divider-base,dash-start:divider-dash-start,dash-end:divider-dash-end\"\n orientation={this.orientation}\n strokeColor={this.dividerColor}\n strokeThickness={2}\n aria-hidden=\"true\"\n />\n )}\n </div>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -2,8 +2,7 @@
2
2
  * Built by Endavans
3
3
  * © https://beeq.design - Apache 2 License.
4
4
  */
5
- import { r as registerInstance, g as getElement } from './index-D1N0tWF3.js';
6
- import { a as jsx } from './index-C33fRBEf.js';
5
+ import { r as registerInstance, a as getElement, h } from './index-XbB3xSTR.js';
7
6
  import { v as validatePropValue } from './props-zh4P02Kn.js';
8
7
  import { S as STEPS_ORIENTATION, a as STEPS_SIZE, b as STEPS_TYPE } from './bq-steps.types-BRMw_HGf.js';
9
8
 
@@ -94,13 +93,13 @@ const BqSteps = class {
94
93
  // Always the last one in the class.
95
94
  // ===================================
96
95
  render() {
97
- return (jsx("div", { class: {
96
+ return (h("div", { key: '8009e16d96dcd655103e54671b66dcfd237d722d', class: {
98
97
  'relative inline-flex items-start justify-between': true,
99
98
  'is-full flex-row': this.orientation === 'horizontal',
100
99
  'bs-full flex-col': this.orientation === 'vertical',
101
100
  }, part: "container", role: "list", ref: (div) => {
102
101
  this.stepElem = div;
103
- }, children: jsx("slot", {}, '46f8a80293d60735b8b159028276f4c55d1c1d52') }, 'c3a4c2006ff09a4e7087e71c03e6f4aabc9ad1e6'));
102
+ } }, h("slot", { key: '9212530f9fc0d276cda4b52d12826008171e7f7d' })));
104
103
  }
105
104
  static get watchers() { return {
106
105
  "dividerColor": [{
@@ -1 +1 @@
1
- {"version":3,"file":"bq-steps.entry.js","sources":["../../packages/beeq/src/components/steps/scss/bq-steps.scss?tag=bq-steps&encapsulation=shadow","../../packages/beeq/src/components/steps/bq-steps.tsx"],"sourcesContent":["/* -------------------------------------------------------------------------- */\n/* Steps styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-steps.variables';\n\n:host {\n @apply box-border inline-flex;\n}\n\n:host([orientation='vertical']) {\n @apply flex bs-full;\n}\n","import { Component, Element, Method, Prop, Watch } from '@stencil/core';\n\nimport { validatePropValue } from '../../shared/utils';\nimport type { TStepsOrientation, TStepsSize, TStepsType } from './bq-steps.types';\nimport { STEPS_ORIENTATION, STEPS_SIZE, STEPS_TYPE } from './bq-steps.types';\n\n/**\n * The Steps Component is a UI element used to display a series of steps or stages in a process or task.\n * It is used to guide users through a process or task and to indicate their progress.\n *\n * @example How to use it\n * ```html\n * <bq-steps divider-color=\"stroke--primary\" type=\"dot\" size=\"medium\">\n * <bq-step-item status=\"completed\"> ... </bq-step-item>\n * <bq-step-item status=\"error\"> ... </bq-step-item>\n * <bq-step-item status=\"current\"> ... </bq-step-item>\n * <bq-step-item status=\"default\"> ... </bq-step-item>\n * </bq-steps>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/896b66-stepper\n * @status stable\n *\n * @dependency bq-divider\n *\n * @attr {string} divider-color - The color of the line that connects the steps. It should be a valid declarative color token.\n * @attr {\"horizontal\" | \"vertical\"} orientation - The orientation of the steps\n * @attr {\"medium\" | \"small\"} size - The size of the steps\n * @attr {\"numeric\" | \"icon\" | \"dot\"} type - The type of prefix element to use on the step items\n *\n * @slot - The step items\n *\n * @part container - The container wrapper of the Steps component\n * @part divider-base - The base wrapper of the divider component\n * @part divider-dash-start - The dash start wrapper of the divider component\n * @part divider-dash-end - The dash end wrapper of the divider component\n *\n * @cssprop --bq-steps--divider-color - Divider color\n * @cssprop --bq-steps--gap - Gap between steps\n */\n@Component({\n tag: 'bq-steps',\n styleUrl: './scss/bq-steps.scss',\n shadow: true,\n})\nexport class BqSteps {\n // Own Properties\n // ====================\n\n private stepElem: HTMLElement;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqStepsElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n // Public Property API\n // ========================\n\n /** The color of the line that connects the steps. It should be a valid declarative color token. */\n @Prop({ reflect: true }) dividerColor: string = 'stroke--primary';\n\n /** The orientation of the steps */\n @Prop({ reflect: true }) orientation: TStepsOrientation = 'horizontal';\n\n /** The size of the steps */\n @Prop({ reflect: true }) size: TStepsSize = 'medium';\n\n /** The type of prefix element to use on the step items */\n @Prop({ reflect: true }) type: TStepsType;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('dividerColor')\n @Watch('orientation')\n @Watch('type')\n @Watch('size')\n checkPropValues() {\n validatePropValue(STEPS_ORIENTATION, 'horizontal', this.el, 'orientation');\n validatePropValue(STEPS_SIZE, 'medium', this.el, 'size');\n validatePropValue(STEPS_TYPE, 'numeric', this.el, 'type');\n\n this.setStepItemProps();\n }\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentDidLoad() {\n this.setStepItemProps();\n }\n\n // Listeners\n // ==============\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n /**\n * Set the current step item.\n * @param newCurrentStep - The step item to set as current.\n */\n @Method()\n async setCurrentStepItem(newCurrentStep: HTMLBqStepItemElement): Promise<void> {\n // Ideally, only one step item should be current.\n // So we change the status of the current step item to default.\n const currentStep = this.bqSteps.find((step: HTMLBqStepItemElement) => step.status === 'current');\n if (currentStep) currentStep.status = 'default';\n // And then we set the status of the new current step item to current.\n newCurrentStep.status = 'current';\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private get bqSteps(): HTMLBqStepItemElement[] {\n if (!this.stepElem) return [];\n\n const slot = this.stepElem.querySelector('slot');\n return [...slot.assignedElements({ flatten: true })].filter(\n (el: HTMLBqStepItemElement) => el.tagName.toLowerCase() === 'bq-step-item',\n ) as [HTMLBqStepItemElement];\n }\n\n private setStepItemProps = () => {\n this.bqSteps.forEach((bqStepElem: HTMLBqStepItemElement) => {\n bqStepElem.isLast = bqStepElem === this.lastStepItem;\n bqStepElem.dividerColor = this.dividerColor;\n bqStepElem.orientation = this.orientation;\n bqStepElem.size = this.size;\n bqStepElem.type = this.type;\n });\n };\n\n private get lastStepItem(): HTMLBqStepItemElement | undefined {\n return this.bqSteps.at(-1);\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <div\n class={{\n 'relative inline-flex items-start justify-between': true,\n 'is-full flex-row': this.orientation === 'horizontal',\n 'bs-full flex-col': this.orientation === 'vertical',\n }}\n part=\"container\"\n role=\"list\"\n ref={(div) => {\n this.stepElem = div;\n }}\n >\n <slot />\n </div>\n );\n }\n}\n"],"names":["_jsx"],"mappings":";;;;;;;;;AAAA,MAAM,UAAU,GAAG,MAAM,CAAC,wxnBAAwxnB,CAAC;;MC6CtynB,OAAO,GAAA,MAAA;;;;;;AAIV,IAAA,QAAQ;;;;;;;;IAeS,YAAY,GAAW,iBAAiB;;IAGxC,WAAW,GAAsB,YAAY;;IAG7C,IAAI,GAAe,QAAQ;;AAG3B,IAAA,IAAI;;;IAS7B,eAAe,GAAA;QACb,iBAAiB,CAAC,iBAAiB,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,aAAa,CAAC;QAC1E,iBAAiB,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC;QACxD,iBAAiB,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC;QAEzD,IAAI,CAAC,gBAAgB,EAAE;;;;;;;;IAUzB,gBAAgB,GAAA;QACd,IAAI,CAAC,gBAAgB,EAAE;;;;;;;;;;AAazB;;;AAGG;IAEH,MAAM,kBAAkB,CAAC,cAAqC,EAAA;;;AAG5D,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAA2B,KAAK,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC;AACjG,QAAA,IAAI,WAAW;AAAE,YAAA,WAAW,CAAC,MAAM,GAAG,SAAS;;AAE/C,QAAA,cAAc,CAAC,MAAM,GAAG,SAAS;;;;;;AAQnC,IAAA,IAAY,OAAO,GAAA;QACjB,IAAI,CAAC,IAAI,CAAC,QAAQ;AAAE,YAAA,OAAO,EAAE;QAE7B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC;AAChD,QAAA,OAAO,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CACzD,CAAC,EAAyB,KAAK,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,cAAc,CAChD;;IAGtB,gBAAgB,GAAG,MAAK;QAC9B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,UAAiC,KAAI;YACzD,UAAU,CAAC,MAAM,GAAG,UAAU,KAAK,IAAI,CAAC,YAAY;AACpD,YAAA,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY;AAC3C,YAAA,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW;AACzC,YAAA,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;AAC3B,YAAA,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;AAC7B,SAAC,CAAC;AACJ,KAAC;AAED,IAAA,IAAY,YAAY,GAAA;QACtB,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;;;;;IAO5B,MAAM,GAAA;AACJ,QAAA,QACEA,GACE,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE;AACL,gBAAA,kDAAkD,EAAE,IAAI;AACxD,gBAAA,kBAAkB,EAAE,IAAI,CAAC,WAAW,KAAK,YAAY;AACrD,gBAAA,kBAAkB,EAAE,IAAI,CAAC,WAAW,KAAK,UAAU;AACpD,aAAA,EACD,IAAI,EAAC,WAAW,EAChB,IAAI,EAAC,MAAM,EACX,GAAG,EAAE,CAAC,GAAG,KAAI;AACX,gBAAA,IAAI,CAAC,QAAQ,GAAG,GAAG;AACrB,aAAC,EAED,QAAA,EAAAA,GAAA,CAAA,MAAA,EAAA,EAAA,EAAA,0CAAA,CAAQ,EACJ,EAAA,0CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"bq-steps.entry.js","sources":["../../packages/beeq/src/components/steps/scss/bq-steps.scss?tag=bq-steps&encapsulation=shadow","../../packages/beeq/src/components/steps/bq-steps.tsx"],"sourcesContent":["/* -------------------------------------------------------------------------- */\n/* Steps styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-steps.variables';\n\n:host {\n @apply box-border inline-flex;\n}\n\n:host([orientation='vertical']) {\n @apply flex bs-full;\n}\n","import { Component, Element, h, Method, Prop, Watch } from '@stencil/core';\n\nimport { validatePropValue } from '../../shared/utils';\nimport type { TStepsOrientation, TStepsSize, TStepsType } from './bq-steps.types';\nimport { STEPS_ORIENTATION, STEPS_SIZE, STEPS_TYPE } from './bq-steps.types';\n\n/**\n * The Steps Component is a UI element used to display a series of steps or stages in a process or task.\n * It is used to guide users through a process or task and to indicate their progress.\n *\n * @example How to use it\n * ```html\n * <bq-steps divider-color=\"stroke--primary\" type=\"dot\" size=\"medium\">\n * <bq-step-item status=\"completed\"> ... </bq-step-item>\n * <bq-step-item status=\"error\"> ... </bq-step-item>\n * <bq-step-item status=\"current\"> ... </bq-step-item>\n * <bq-step-item status=\"default\"> ... </bq-step-item>\n * </bq-steps>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/896b66-stepper\n * @status stable\n *\n * @dependency bq-divider\n *\n * @attr {string} divider-color - The color of the line that connects the steps. It should be a valid declarative color token.\n * @attr {\"horizontal\" | \"vertical\"} orientation - The orientation of the steps\n * @attr {\"medium\" | \"small\"} size - The size of the steps\n * @attr {\"numeric\" | \"icon\" | \"dot\"} type - The type of prefix element to use on the step items\n *\n * @slot - The step items\n *\n * @part container - The container wrapper of the Steps component\n * @part divider-base - The base wrapper of the divider component\n * @part divider-dash-start - The dash start wrapper of the divider component\n * @part divider-dash-end - The dash end wrapper of the divider component\n *\n * @cssprop --bq-steps--divider-color - Divider color\n * @cssprop --bq-steps--gap - Gap between steps\n */\n@Component({\n tag: 'bq-steps',\n styleUrl: './scss/bq-steps.scss',\n shadow: true,\n})\nexport class BqSteps {\n // Own Properties\n // ====================\n\n private stepElem: HTMLElement;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqStepsElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n // Public Property API\n // ========================\n\n /** The color of the line that connects the steps. It should be a valid declarative color token. */\n @Prop({ reflect: true }) dividerColor: string = 'stroke--primary';\n\n /** The orientation of the steps */\n @Prop({ reflect: true }) orientation: TStepsOrientation = 'horizontal';\n\n /** The size of the steps */\n @Prop({ reflect: true }) size: TStepsSize = 'medium';\n\n /** The type of prefix element to use on the step items */\n @Prop({ reflect: true }) type: TStepsType;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('dividerColor')\n @Watch('orientation')\n @Watch('type')\n @Watch('size')\n checkPropValues() {\n validatePropValue(STEPS_ORIENTATION, 'horizontal', this.el, 'orientation');\n validatePropValue(STEPS_SIZE, 'medium', this.el, 'size');\n validatePropValue(STEPS_TYPE, 'numeric', this.el, 'type');\n\n this.setStepItemProps();\n }\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentDidLoad() {\n this.setStepItemProps();\n }\n\n // Listeners\n // ==============\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n /**\n * Set the current step item.\n * @param newCurrentStep - The step item to set as current.\n */\n @Method()\n async setCurrentStepItem(newCurrentStep: HTMLBqStepItemElement): Promise<void> {\n // Ideally, only one step item should be current.\n // So we change the status of the current step item to default.\n const currentStep = this.bqSteps.find((step: HTMLBqStepItemElement) => step.status === 'current');\n if (currentStep) currentStep.status = 'default';\n // And then we set the status of the new current step item to current.\n newCurrentStep.status = 'current';\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private get bqSteps(): HTMLBqStepItemElement[] {\n if (!this.stepElem) return [];\n\n const slot = this.stepElem.querySelector('slot');\n return [...slot.assignedElements({ flatten: true })].filter(\n (el: HTMLBqStepItemElement) => el.tagName.toLowerCase() === 'bq-step-item',\n ) as [HTMLBqStepItemElement];\n }\n\n private setStepItemProps = () => {\n this.bqSteps.forEach((bqStepElem: HTMLBqStepItemElement) => {\n bqStepElem.isLast = bqStepElem === this.lastStepItem;\n bqStepElem.dividerColor = this.dividerColor;\n bqStepElem.orientation = this.orientation;\n bqStepElem.size = this.size;\n bqStepElem.type = this.type;\n });\n };\n\n private get lastStepItem(): HTMLBqStepItemElement | undefined {\n return this.bqSteps.at(-1);\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <div\n class={{\n 'relative inline-flex items-start justify-between': true,\n 'is-full flex-row': this.orientation === 'horizontal',\n 'bs-full flex-col': this.orientation === 'vertical',\n }}\n part=\"container\"\n role=\"list\"\n ref={(div) => {\n this.stepElem = div;\n }}\n >\n <slot />\n </div>\n );\n }\n}\n"],"names":[],"mappings":";;;;;;;;AAAA,MAAM,UAAU,GAAG,MAAM,CAAC,wxnBAAwxnB,CAAC;;MC6CtynB,OAAO,GAAA,MAAA;;;;;;AAIV,IAAA,QAAQ;;;;;;;;IAeS,YAAY,GAAW,iBAAiB;;IAGxC,WAAW,GAAsB,YAAY;;IAG7C,IAAI,GAAe,QAAQ;;AAG3B,IAAA,IAAI;;;IAS7B,eAAe,GAAA;QACb,iBAAiB,CAAC,iBAAiB,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,aAAa,CAAC;QAC1E,iBAAiB,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC;QACxD,iBAAiB,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC;QAEzD,IAAI,CAAC,gBAAgB,EAAE;;;;;;;;IAUzB,gBAAgB,GAAA;QACd,IAAI,CAAC,gBAAgB,EAAE;;;;;;;;;;AAazB;;;AAGG;IAEH,MAAM,kBAAkB,CAAC,cAAqC,EAAA;;;AAG5D,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAA2B,KAAK,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC;AACjG,QAAA,IAAI,WAAW;AAAE,YAAA,WAAW,CAAC,MAAM,GAAG,SAAS;;AAE/C,QAAA,cAAc,CAAC,MAAM,GAAG,SAAS;;;;;;AAQnC,IAAA,IAAY,OAAO,GAAA;QACjB,IAAI,CAAC,IAAI,CAAC,QAAQ;AAAE,YAAA,OAAO,EAAE;QAE7B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC;AAChD,QAAA,OAAO,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CACzD,CAAC,EAAyB,KAAK,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,cAAc,CAChD;;IAGtB,gBAAgB,GAAG,MAAK;QAC9B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,UAAiC,KAAI;YACzD,UAAU,CAAC,MAAM,GAAG,UAAU,KAAK,IAAI,CAAC,YAAY;AACpD,YAAA,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY;AAC3C,YAAA,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW;AACzC,YAAA,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;AAC3B,YAAA,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;AAC7B,SAAC,CAAC;AACJ,KAAC;AAED,IAAA,IAAY,YAAY,GAAA;QACtB,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;;;;;IAO5B,MAAM,GAAA;QACJ,QACE,CACE,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE;AACL,gBAAA,kDAAkD,EAAE,IAAI;AACxD,gBAAA,kBAAkB,EAAE,IAAI,CAAC,WAAW,KAAK,YAAY;AACrD,gBAAA,kBAAkB,EAAE,IAAI,CAAC,WAAW,KAAK,UAAU;AACpD,aAAA,EACD,IAAI,EAAC,WAAW,EAChB,IAAI,EAAC,MAAM,EACX,GAAG,EAAE,CAAC,GAAG,KAAI;AACX,gBAAA,IAAI,CAAC,QAAQ,GAAG,GAAG;AACrB,aAAC,EAAA,EAED,CAAQ,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACJ;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,12 +2,11 @@
2
2
  * Built by Endavans
3
3
  * © https://beeq.design - Apache 2 License.
4
4
  */
5
- import { r as registerInstance, c as createEvent, g as getElement, a as Host } from './index-D1N0tWF3.js';
6
- import { a as jsx, j as jsxs } from './index-C33fRBEf.js';
5
+ import { r as registerInstance, c as createEvent, a as getElement, h, d as Host } from './index-XbB3xSTR.js';
7
6
  import { i as isNil } from './isNil-BcPwGxIn.js';
8
7
  import { a as getTextContent } from './slot-uqkxeAeG.js';
9
8
 
10
- const bqSwitchCss = () => `.transform{--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;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))}::backdrop,:root{--bq-blue-100:#e7f0fd;--bq-blue-200:#d0e2fb;--bq-blue-300:#a1c5f7;--bq-blue-400:#73a8f3;--bq-blue-500:#448bef;--bq-blue-600:#156eeb;--bq-blue-700:#1158bc;--bq-blue-800:#0d428d;--bq-blue-900:#082c5e;--bq-blue-1000:#04162f;--bq-corai-100:#fff2f2;--bq-corai-200:#ffe6e6;--bq-corai-300:#ffccce;--bq-corai-400:#ffb3b5;--bq-corai-500:#ff999d;--bq-corai-600:#ff8084;--bq-corai-700:#cc666a;--bq-corai-800:#994d4f;--bq-corai-900:#663335;--bq-corai-1000:#331a1a;--bq-cyan-100:#e8f7fb;--bq-cyan-200:#d2f0f8;--bq-cyan-300:#a5e1f1;--bq-cyan-400:#78d1e9;--bq-cyan-500:#4bc2e2;--bq-cyan-600:#1eb3db;--bq-cyan-700:#188faf;--bq-cyan-800:#126b83;--bq-cyan-900:#0c4858;--bq-cyan-1000:#06242c;--bq-gold-100:#fbf4ec;--bq-gold-200:#f7e9da;--bq-gold-300:#f0d3b6;--bq-gold-400:#e8bc91;--bq-gold-500:#e1a66d;--bq-gold-600:#d99048;--bq-gold-700:#ae733a;--bq-gold-800:#82562b;--bq-gold-900:#573a1d;--bq-gold-1000:#2b1d0e;--bq-green-100:#e8f8ef;--bq-green-200:#d2f1e0;--bq-green-300:#a5e3c1;--bq-green-400:#78d5a1;--bq-green-500:#4bc782;--bq-green-600:#1eb963;--bq-green-700:#18944f;--bq-green-800:#126f3b;--bq-green-900:#0c4a28;--bq-green-1000:#062514;--bq-grey-100:#f1f2f4;--bq-grey-200:#e7e8eb;--bq-grey-300:#caccd2;--bq-grey-400:#a6aab3;--bq-grey-50:#f6f6f8;--bq-grey-500:#898e99;--bq-grey-600:#646a77;--bq-grey-700:#3f4350;--bq-grey-800:#2a2c35;--bq-grey-900:#1c1d23;--bq-grey-950:#15161a;--bq-grey-1000:#0d0e11;--bq-indigo-100:#edecfc;--bq-indigo-200:#dcdafa;--bq-indigo-300:#b9b5f5;--bq-indigo-400:#9590ef;--bq-indigo-500:#726bea;--bq-indigo-600:#4f46e5;--bq-indigo-700:#3f38b7;--bq-indigo-800:#2f2a89;--bq-indigo-900:#201c5c;--bq-indigo-1000:#100e2e;--bq-iris-100:#e9f0ff;--bq-iris-200:#d6e0ff;--bq-iris-300:#b2c0fe;--bq-iris-400:#8691f8;--bq-iris-500:#6061ee;--bq-iris-600:#4f46e5;--bq-iris-700:#413abd;--bq-iris-800:#332e95;--bq-iris-900:#26216d;--bq-iris-1000:#181545;--bq-lime-100:#f5fae8;--bq-lime-200:#ecf6d2;--bq-lime-300:#d9eda5;--bq-lime-400:#c5e379;--bq-lime-500:#b2da4c;--bq-lime-600:#9fd11f;--bq-lime-700:#7fa719;--bq-lime-800:#5f7d13;--bq-lime-900:#40540c;--bq-lime-1000:#202a06;--bq-magenta-100:#fce7f4;--bq-magenta-200:#f9cfea;--bq-magenta-300:#f39fd6;--bq-magenta-400:#ee6fbf;--bq-magenta-500:#e83fab;--bq-magenta-600:#de1395;--bq-magenta-700:#b20f77;--bq-magenta-800:#850c59;--bq-magenta-900:#58083c;--bq-magenta-1000:#2c041e;--bq-neutral-white:#fbfbfc;--bq-neutral-black:#060708;--bq-orange-100:#fbf0e9;--bq-orange-200:#f8e1d4;--bq-orange-300:#f1c2a8;--bq-orange-400:#eaa47d;--bq-orange-500:#e38551;--bq-orange-600:#dc6726;--bq-orange-700:#b0521e;--bq-orange-800:#843e17;--bq-orange-900:#58290f;--bq-orange-1000:#2c1508;--bq-purple-100:#efebf8;--bq-purple-200:#e0d7f2;--bq-purple-300:#c1afe5;--bq-purple-400:#a388d8;--bq-purple-500:#8460cb;--bq-purple-600:#6538be;--bq-purple-700:#512d98;--bq-purple-800:#3d2272;--bq-purple-900:#28164c;--bq-purple-1000:#140b26;--bq-red-100:#fce7ea;--bq-red-200:#f9d1d5;--bq-red-300:#f3a2ac;--bq-red-400:#ed7482;--bq-red-500:#e74559;--bq-red-600:#e1172f;--bq-red-700:#b41226;--bq-red-800:#870e1c;--bq-red-900:#5a0913;--bq-red-1000:#2d0509;--bq-sky-100:#eff4fb;--bq-sky-200:#dfeaf8;--bq-sky-300:#bfd5f1;--bq-sky-400:#9ec1e9;--bq-sky-500:#7eace2;--bq-sky-600:#5e97db;--bq-sky-700:#4b79af;--bq-sky-800:#385b83;--bq-sky-900:#263c58;--bq-sky-1000:#131e2c;--bq-teal-100:#e5f7f5;--bq-teal-200:#ccf0eb;--bq-teal-300:#99e1d8;--bq-teal-400:#66d2c4;--bq-teal-500:#33c3b1;--bq-teal-600:#00b49d;--bq-teal-700:#00907e;--bq-teal-800:#006c5e;--bq-teal-900:#00483f;--bq-teal-1000:#00241f;--bq-volcano-100:#feede7;--bq-volcano-200:#fddbd1;--bq-volcano-300:#fbb8a3;--bq-volcano-400:#fa9474;--bq-volcano-500:#f87146;--bq-volcano-600:#f64d18;--bq-volcano-700:#c53e13;--bq-volcano-800:#942e0e;--bq-volcano-900:#621f0a;--bq-volcano-1000:#310f05;--bq-yellow-100:#fefbe7;--bq-yellow-200:#fcf6d0;--bq-yellow-300:#faeea0;--bq-yellow-400:#f7e571;--bq-yellow-500:#f5dd41;--bq-yellow-600:#f2d412;--bq-yellow-700:#c2aa0e;--bq-yellow-800:#917f0b;--bq-yellow-900:#615507;--bq-yellow-1000:#302a04;--bq-endava-grey-50:#f7f7f8;--bq-endava-grey-100:#e4e6e7;--bq-endava-grey-200:#b5babe;--bq-endava-grey-300:#949ca1;--bq-endava-grey-400:#737d84;--bq-endava-grey-500:#525f67;--bq-endava-grey-600:#30404b;--bq-endava-grey-700:#2b3942;--bq-endava-grey-800:#263139;--bq-endava-grey-900:#192b37;--bq-endava-grey-950:#151b1e;--bq-endava-grey-1000:#0f1316;--bq-endava-neutral-white:#fafbfb;--bq-endava-neutral-black:#060708;--bq-endava-orange-100:#fef3f1;--bq-endava-orange-200:#fbd6d1;--bq-endava-orange-300:#fab7af;--bq-endava-orange-400:#fa988b;--bq-endava-orange-500:#fc7866;--bq-endava-orange-600:#ff5640;--bq-endava-orange-700:#ce4a39;--bq-endava-orange-800:#a03d30;--bq-endava-orange-900:#722e25;--bq-endava-orange-1000:#471e19}*,:after,:before{box-sizing:border-box}*{font:inherit;margin:0}ol[role=list],ul[role=list]{list-style-type:none}html{text-size-adjust:none;font-family:var(--bq-font-family);font-size:var(--bq-font-size--m)}html:focus-within{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bq-background--primary);color:var(--bq-text--primary);line-height:var(--bq-font-line-height--regular);min-height:100vb;text-rendering:optimizeSpeed}a:not([class]){text-decoration-skip-ink:auto}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto;transition-duration:.01ms!important}}:where(:root){--bq-white:#fff;--bq-black:#060708;--bq-neutral-50:var(--bq-grey-50);--bq-neutral-100:var(--bq-grey-100);--bq-neutral-200:var(--bq-grey-200);--bq-neutral-300:var(--bq-grey-300);--bq-neutral-400:var(--bq-grey-400);--bq-neutral-500:var(--bq-grey-500);--bq-neutral-600:var(--bq-grey-600);--bq-neutral-700:var(--bq-grey-700);--bq-neutral-800:var(--bq-grey-800);--bq-neutral-900:var(--bq-grey-900);--bq-neutral-950:var(--bq-grey-950);--bq-neutral-1000:var(--bq-grey-1000);--bq-brand-light:var(--bq-iris-100);--bq-brand:var(--bq-iris-600);--bq-brand-dark:var(--bq-iris-1000);--bq-accent-light:var(--bq-purple-100);--bq-accent:var(--bq-purple-600);--bq-accent-dark:var(--bq-purple-1000);--bq-success-light:var(--bq-teal-100);--bq-success:var(--bq-teal-600);--bq-success-dark:var(--bq-teal-1000);--bq-danger-light:var(--bq-red-100);--bq-danger:var(--bq-red-600);--bq-danger-dark:var(--bq-red-1000);--bq-warning-light:var(--bq-gold-100);--bq-warning:var(--bq-gold-600);--bq-warning-dark:var(--bq-gold-1000);--bq-info-light:var(--bq-iris-100);--bq-info:var(--bq-iris-600);--bq-info-dark:var(--bq-iris-1000);--bq-focus:var(--bq-iris-600);--bq-data-01:var(--bq-brand);--bq-data-02:var(--bq-purple-600);--bq-data-03:var(--bq-magenta-600);--bq-data-04:var(--bq-cyan-600);--bq-data-05:var(--bq-teal-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-yellow-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-blue-600);--bq-data-10:var(--bq-grey-600);--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white);--bq-radius--none:0;--bq-radius--xs2:0.125rem;--bq-radius--xs:0.25rem;--bq-radius--s:0.5rem;--bq-radius--m:0.75rem;--bq-radius--l:1.5rem;--bq-radius--full:9999px;--bq-box-shadow--xs:0 2px 0 rgba(0,0,0,.016);--bq-box-shadow--s:0 8px 24px rgba(0,0,0,.04);--bq-box-shadow--m:0 10px 48px -16px rgba(0,0,0,.12);--bq-box-shadow--l:0 20px 58px -16px rgba(0,0,0,.16);--bq-font-family:"Outfit",sans-serif;--bq-font-size--xs:0.75rem;--bq-font-size--s:0.875rem;--bq-font-size--m:1rem;--bq-font-size--l:1.125rem;--bq-font-size--xl:1.5rem;--bq-font-size--xxl:2rem;--bq-font-size--xxl2:2.5rem;--bq-font-size--xxl3:3rem;--bq-font-size--xxl4:3.5rem;--bq-font-size--xxl5:4rem;--bq-font-weight--thin:100;--bq-font-weight--light:300;--bq-font-weight--regular:400;--bq-font-weight--medium:500;--bq-font-weight--semibold:600;--bq-font-weight--bold:700;--bq-font-line-height--small:1.2;--bq-font-line-height--regular:1.5;--bq-font-line-height--large:1.5;--bq-spacing-xs3:0.125rem;--bq-spacing-xs2:0.25rem;--bq-spacing-xs:0.5rem;--bq-spacing-s:0.75rem;--bq-spacing-m:1rem;--bq-spacing-l:1.5rem;--bq-spacing-xl:2rem;--bq-spacing-xxl:2.5rem;--bq-spacing-xxl2:3.5rem;--bq-spacing-xxl3:4rem;--bq-spacing-xxl4:4.5rem;--bq-stroke-s:1px;--bq-stroke-m:2px;--bq-stroke-l:3px}.beeq:not([bq-mode]),.light,:root:not([bq-theme]):not([bq-mode]),:root[bq-theme=beeq]:not([bq-mode]),[bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--alt:var(--bq-white);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-100);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-light);--bq-hover:#bcbfc5;--bq-active:#444546}.dark,[bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-950);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-950);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-dark);--bq-hover:#444546;--bq-active:#1f2026}:where(.endava),:where([bq-theme=endava]){--bq-font-family:"Poppins",sans-serif;--bq-white:#fafbfb;--bq-black:#030406;--bq-neutral-50:var(--bq-endava-grey-50);--bq-neutral-100:var(--bq-endava-grey-100);--bq-neutral-200:var(--bq-endava-grey-200);--bq-neutral-300:var(--bq-endava-grey-300);--bq-neutral-400:var(--bq-endava-grey-400);--bq-neutral-500:var(--bq-endava-grey-500);--bq-neutral-600:var(--bq-endava-grey-600);--bq-neutral-700:var(--bq-endava-grey-700);--bq-neutral-800:var(--bq-endava-grey-800);--bq-neutral-900:var(--bq-endava-grey-900);--bq-neutral-950:var(--bq-endava-grey-950);--bq-neutral-1000:var(--bq-endava-grey-1000);--bq-brand-light:var(--bq-endava-orange-100);--bq-brand:var(--bq-endava-orange-600);--bq-brand-dark:var(--bq-endava-orange-1000);--bq-accent-light:var(--bq-endava-orange-100);--bq-accent:var(--bq-endava-orange-600);--bq-accent-dark:var(--bq-endava-orange-1000);--bq-success-light:var(--bq-green-100);--bq-success:var(--bq-green-600);--bq-success-dark:var(--bq-green-1000);--bq-danger-light:var(--bq-corai-100);--bq-danger:var(--bq-corai-600);--bq-danger-dark:var(--bq-corai-1000);--bq-warning-light:var(--bq-yellow-100);--bq-warning:var(--bq-yellow-600);--bq-warning-dark:var(--bq-yellow-1000);--bq-info-light:var(--bq-blue-100);--bq-info:var(--bq-blue-600);--bq-info-dark:var(--bq-blue-1000);--bq-focus:var(--bq-endava-orange-600);--bq-data-01:var(--bq-brand);--bq-data-02:#af0cd8;--bq-data-03:#0ca8d8;--bq-data-04:var(--bq-teal-600);--bq-data-05:var(--bq-yellow-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-blue-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-purple-600);--bq-data-10:#394b56;--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white)}.endava.light,.endava:not([bq-mode]),[bq-theme=endava]:not([bq-mode]),[bq-theme=endava][bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--brand-alt:var(--bq-brand-light);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-100);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--brand:var(--bq-brand);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-light);--bq-hover:#444546;--bq-active:#1f2026}.endava.dark,[bq-theme=endava][bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-900);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--brand-alt:var(--bq-brand-dark);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-neutral-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-950);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-dark);--bq-hover:#444546;--bq-active:#1f2026}.absolute{position:absolute}.start-xs2{inset-inline-start:var(--bq-spacing-xs2)}.inline-block{display:inline-block}.flex{display:flex}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{user-select:none}.items-center{align-items:center}.rounded-full{border-radius:var(--bq-radius--full)}.rounded-s{border-radius:var(--bq-radius--s)}.bg-ui-primary{background-color:var(--bq-ui--primary)}.opacity-60{opacity:.6}.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}.bg-hover-ui-primary{background-color:color-mix(in srgb,var(--bq-ui--primary),var(--bq-hover) 20%)}.bs-\\[--bq-switch--dot-size\\]{block-size:var(--bq-switch--dot-size)}.is-\\[--bq-switch--dot-size\\]{inline-size:var(--bq-switch--dot-size)}.is-full{inline-size:100%}.p-b-2{padding-block:.5rem}.focus{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}@-webkit-keyframes fade-in{0%{opacity:0}}@keyframes fade-in{0%{opacity:0}}@-webkit-keyframes slide-in{0%{-webkit-transform:translateY(10px);transform:translateY(10px)}}@keyframes slide-in{0%{-webkit-transform:translateY(10px);transform:translateY(10px)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}:host{--bq-switch--height:24px;--bq-switch--justify-content:"start";--bq-switch--width:44px;--bq-switch--dot-size:calc(var(--bq-switch--height) - var(--bq-spacing-xs2)*2);display:inline-block}:host(.full-width){inline-size:100%}.bq-switch{-webkit-box-pack:var(--bq-switch--justify-content);-ms-flex-pack:var(--bq-switch--justify-content);align-items:center;border-radius:var(--bq-radius--s);cursor:pointer;display:flex;justify-content:var(--bq-switch--justify-content);padding-block:.5rem;padding-inline:.5rem;transition-duration:.3s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);user-select:none}.bq-switch.has-background:not(.is-disabled):hover{background-color:color-mix(in srgb,var(--bq-ui--primary),var(--bq-hover) 20%)}.bq-switch.is-disabled{cursor:not-allowed;opacity:.6}.bq-switch--input:not(:disabled):focus-visible~.bq-switch--control,.bq-switch--input:not(:disabled):focus~.bq-switch--control{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}.bq-switch--control__dot{background-color:var(--bq-ui--primary);block-size:var(--bq-switch--dot-size);border-radius:var(--bq-radius--full);inline-size:var(--bq-switch--dot-size);inset-inline-start:var(--bq-spacing-xs2);position:absolute;transition-duration:.3s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.group.is-checked .bq-switch--control__dot{background-color:var(--bq-icon--alt);inset-inline-start:calc(100% - var(--bq-switch--dot-size) - var(--bq-spacing-xs2))}.bq-switch--control__icon{--bq-icon--size:var(--bq-switch--dot-size)!important}.bq-switch--control__icon::part(base){display:flex}.group.is-checked .group-\\[\\&\\.is-checked\\]\\:start-\\[calc\\(100\\%_-_var\\(--bq-switch--dot-size\\)_-_var\\(--bq-spacing-xs2\\)\\)\\]{inset-inline-start:calc(100% - var(--bq-switch--dot-size) - var(--bq-spacing-xs2))}.group.is-checked .group-\\[\\&\\.is-checked\\]\\:bg-\\[--bq-icon--alt\\]{background-color:var(--bq-icon--alt)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.static{position:static}.relative{position:relative}.me-s{margin-inline-end:var(--bq-spacing-s)}.ms-s{margin-inline-start:var(--bq-spacing-s)}.box-border{box-sizing:border-box}.flex-row-reverse{flex-direction:row-reverse}.justify-between{justify-content:space-between}.bg-ui-tertiary{background-color:var(--bq-ui--tertiary)}.text-m{font-size:var(--bq-font-size--m)}.font-medium{font-weight:var(--bq-font-weight--medium)}.leading-regular{line-height:var(--bq-font-line-height--regular)}.text-primary{color:var(--bq-text--primary)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\\!bs-\\[--bq-switch--dot-size\\]{block-size:var(--bq-switch--dot-size)!important}.\\!is-\\[--bq-switch--width\\]{inline-size:var(--bq-switch--width)!important}.bs-\\[--bq-switch--height\\]{block-size:var(--bq-switch--height)}.is-\\[--bq-switch--width\\]{inline-size:var(--bq-switch--width)}.p-b-xs2{padding-block:var(--bq-spacing-xs2)}.p-i-xs2{padding-inline:var(--bq-spacing-xs2)}.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}}.group.is-checked .group-\\[\\&\\.is-checked\\]\\:bg-ui-brand{background-color:var(--bq-ui--brand)}.peer:checked~.peer-checked\\:invisible{visibility:hidden}.text-\\[--bq-icon--color\\]{color:var(--bq-icon--color)}.bs-\\[--bq-icon--size\\]{block-size:var(--bq-icon--size)}.is-\\[--bq-icon--size\\]{inline-size:var(--bq-icon--size)}`;
9
+ const bqSwitchCss = () => `.transform{--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;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))}::backdrop,:root{--bq-blue-100:#e7f0fd;--bq-blue-200:#d0e2fb;--bq-blue-300:#a1c5f7;--bq-blue-400:#73a8f3;--bq-blue-500:#448bef;--bq-blue-600:#156eeb;--bq-blue-700:#1158bc;--bq-blue-800:#0d428d;--bq-blue-900:#082c5e;--bq-blue-1000:#04162f;--bq-corai-100:#fff2f2;--bq-corai-200:#ffe6e6;--bq-corai-300:#ffccce;--bq-corai-400:#ffb3b5;--bq-corai-500:#ff999d;--bq-corai-600:#ff8084;--bq-corai-700:#cc666a;--bq-corai-800:#994d4f;--bq-corai-900:#663335;--bq-corai-1000:#331a1a;--bq-cyan-100:#e8f7fb;--bq-cyan-200:#d2f0f8;--bq-cyan-300:#a5e1f1;--bq-cyan-400:#78d1e9;--bq-cyan-500:#4bc2e2;--bq-cyan-600:#1eb3db;--bq-cyan-700:#188faf;--bq-cyan-800:#126b83;--bq-cyan-900:#0c4858;--bq-cyan-1000:#06242c;--bq-gold-100:#fbf4ec;--bq-gold-200:#f7e9da;--bq-gold-300:#f0d3b6;--bq-gold-400:#e8bc91;--bq-gold-500:#e1a66d;--bq-gold-600:#d99048;--bq-gold-700:#ae733a;--bq-gold-800:#82562b;--bq-gold-900:#573a1d;--bq-gold-1000:#2b1d0e;--bq-green-100:#e8f8ef;--bq-green-200:#d2f1e0;--bq-green-300:#a5e3c1;--bq-green-400:#78d5a1;--bq-green-500:#4bc782;--bq-green-600:#1eb963;--bq-green-700:#18944f;--bq-green-800:#126f3b;--bq-green-900:#0c4a28;--bq-green-1000:#062514;--bq-grey-100:#f1f2f4;--bq-grey-200:#e7e8eb;--bq-grey-300:#caccd2;--bq-grey-400:#a6aab3;--bq-grey-50:#f6f6f8;--bq-grey-500:#898e99;--bq-grey-600:#646a77;--bq-grey-700:#3f4350;--bq-grey-800:#2a2c35;--bq-grey-900:#1c1d23;--bq-grey-950:#15161a;--bq-grey-1000:#0d0e11;--bq-indigo-100:#edecfc;--bq-indigo-200:#dcdafa;--bq-indigo-300:#b9b5f5;--bq-indigo-400:#9590ef;--bq-indigo-500:#726bea;--bq-indigo-600:#4f46e5;--bq-indigo-700:#3f38b7;--bq-indigo-800:#2f2a89;--bq-indigo-900:#201c5c;--bq-indigo-1000:#100e2e;--bq-iris-100:#e9f0ff;--bq-iris-200:#d6e0ff;--bq-iris-300:#b2c0fe;--bq-iris-400:#8691f8;--bq-iris-500:#6061ee;--bq-iris-600:#4f46e5;--bq-iris-700:#413abd;--bq-iris-800:#332e95;--bq-iris-900:#26216d;--bq-iris-1000:#181545;--bq-lime-100:#f5fae8;--bq-lime-200:#ecf6d2;--bq-lime-300:#d9eda5;--bq-lime-400:#c5e379;--bq-lime-500:#b2da4c;--bq-lime-600:#9fd11f;--bq-lime-700:#7fa719;--bq-lime-800:#5f7d13;--bq-lime-900:#40540c;--bq-lime-1000:#202a06;--bq-magenta-100:#fce7f4;--bq-magenta-200:#f9cfea;--bq-magenta-300:#f39fd6;--bq-magenta-400:#ee6fbf;--bq-magenta-500:#e83fab;--bq-magenta-600:#de1395;--bq-magenta-700:#b20f77;--bq-magenta-800:#850c59;--bq-magenta-900:#58083c;--bq-magenta-1000:#2c041e;--bq-neutral-white:#fbfbfc;--bq-neutral-black:#060708;--bq-orange-100:#fbf0e9;--bq-orange-200:#f8e1d4;--bq-orange-300:#f1c2a8;--bq-orange-400:#eaa47d;--bq-orange-500:#e38551;--bq-orange-600:#dc6726;--bq-orange-700:#b0521e;--bq-orange-800:#843e17;--bq-orange-900:#58290f;--bq-orange-1000:#2c1508;--bq-purple-100:#efebf8;--bq-purple-200:#e0d7f2;--bq-purple-300:#c1afe5;--bq-purple-400:#a388d8;--bq-purple-500:#8460cb;--bq-purple-600:#6538be;--bq-purple-700:#512d98;--bq-purple-800:#3d2272;--bq-purple-900:#28164c;--bq-purple-1000:#140b26;--bq-red-100:#fce7ea;--bq-red-200:#f9d1d5;--bq-red-300:#f3a2ac;--bq-red-400:#ed7482;--bq-red-500:#e74559;--bq-red-600:#e1172f;--bq-red-700:#b41226;--bq-red-800:#870e1c;--bq-red-900:#5a0913;--bq-red-1000:#2d0509;--bq-sky-100:#eff4fb;--bq-sky-200:#dfeaf8;--bq-sky-300:#bfd5f1;--bq-sky-400:#9ec1e9;--bq-sky-500:#7eace2;--bq-sky-600:#5e97db;--bq-sky-700:#4b79af;--bq-sky-800:#385b83;--bq-sky-900:#263c58;--bq-sky-1000:#131e2c;--bq-teal-100:#e5f7f5;--bq-teal-200:#ccf0eb;--bq-teal-300:#99e1d8;--bq-teal-400:#66d2c4;--bq-teal-500:#33c3b1;--bq-teal-600:#00b49d;--bq-teal-700:#00907e;--bq-teal-800:#006c5e;--bq-teal-900:#00483f;--bq-teal-1000:#00241f;--bq-volcano-100:#feede7;--bq-volcano-200:#fddbd1;--bq-volcano-300:#fbb8a3;--bq-volcano-400:#fa9474;--bq-volcano-500:#f87146;--bq-volcano-600:#f64d18;--bq-volcano-700:#c53e13;--bq-volcano-800:#942e0e;--bq-volcano-900:#621f0a;--bq-volcano-1000:#310f05;--bq-yellow-100:#fefbe7;--bq-yellow-200:#fcf6d0;--bq-yellow-300:#faeea0;--bq-yellow-400:#f7e571;--bq-yellow-500:#f5dd41;--bq-yellow-600:#f2d412;--bq-yellow-700:#c2aa0e;--bq-yellow-800:#917f0b;--bq-yellow-900:#615507;--bq-yellow-1000:#302a04;--bq-endava-grey-50:#f7f7f8;--bq-endava-grey-100:#e4e6e7;--bq-endava-grey-200:#b5babe;--bq-endava-grey-300:#949ca1;--bq-endava-grey-400:#737d84;--bq-endava-grey-500:#525f67;--bq-endava-grey-600:#30404b;--bq-endava-grey-700:#2b3942;--bq-endava-grey-800:#263139;--bq-endava-grey-900:#192b37;--bq-endava-grey-950:#151b1e;--bq-endava-grey-1000:#0f1316;--bq-endava-neutral-white:#fafbfb;--bq-endava-neutral-black:#060708;--bq-endava-orange-100:#fef3f1;--bq-endava-orange-200:#fbd6d1;--bq-endava-orange-300:#fab7af;--bq-endava-orange-400:#fa988b;--bq-endava-orange-500:#fc7866;--bq-endava-orange-600:#ff5640;--bq-endava-orange-700:#ce4a39;--bq-endava-orange-800:#a03d30;--bq-endava-orange-900:#722e25;--bq-endava-orange-1000:#471e19}*,:after,:before{box-sizing:border-box}*{font:inherit;margin:0}ol[role=list],ul[role=list]{list-style-type:none}html{text-size-adjust:none;font-family:var(--bq-font-family);font-size:var(--bq-font-size--m)}html:focus-within{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bq-background--primary);color:var(--bq-text--primary);line-height:var(--bq-font-line-height--regular);min-height:100vb;text-rendering:optimizeSpeed}a:not([class]){text-decoration-skip-ink:auto}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto;transition-duration:.01ms!important}}:where(:root){--bq-white:#fff;--bq-black:#060708;--bq-neutral-50:var(--bq-grey-50);--bq-neutral-100:var(--bq-grey-100);--bq-neutral-200:var(--bq-grey-200);--bq-neutral-300:var(--bq-grey-300);--bq-neutral-400:var(--bq-grey-400);--bq-neutral-500:var(--bq-grey-500);--bq-neutral-600:var(--bq-grey-600);--bq-neutral-700:var(--bq-grey-700);--bq-neutral-800:var(--bq-grey-800);--bq-neutral-900:var(--bq-grey-900);--bq-neutral-950:var(--bq-grey-950);--bq-neutral-1000:var(--bq-grey-1000);--bq-brand-light:var(--bq-iris-100);--bq-brand:var(--bq-iris-600);--bq-brand-dark:var(--bq-iris-1000);--bq-accent-light:var(--bq-purple-100);--bq-accent:var(--bq-purple-600);--bq-accent-dark:var(--bq-purple-1000);--bq-success-light:var(--bq-teal-100);--bq-success:var(--bq-teal-600);--bq-success-dark:var(--bq-teal-1000);--bq-danger-light:var(--bq-red-100);--bq-danger:var(--bq-red-600);--bq-danger-dark:var(--bq-red-1000);--bq-warning-light:var(--bq-gold-100);--bq-warning:var(--bq-gold-600);--bq-warning-dark:var(--bq-gold-1000);--bq-info-light:var(--bq-iris-100);--bq-info:var(--bq-iris-600);--bq-info-dark:var(--bq-iris-1000);--bq-focus:var(--bq-iris-600);--bq-data-01:var(--bq-brand);--bq-data-02:var(--bq-purple-600);--bq-data-03:var(--bq-magenta-600);--bq-data-04:var(--bq-cyan-600);--bq-data-05:var(--bq-teal-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-yellow-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-blue-600);--bq-data-10:var(--bq-grey-600);--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white);--bq-radius--none:0;--bq-radius--xs2:0.125rem;--bq-radius--xs:0.25rem;--bq-radius--s:0.5rem;--bq-radius--m:0.75rem;--bq-radius--l:1.5rem;--bq-radius--full:9999px;--bq-box-shadow--xs:0 2px 0 rgba(0,0,0,.016);--bq-box-shadow--s:0 8px 24px rgba(0,0,0,.04);--bq-box-shadow--m:0 10px 48px -16px rgba(0,0,0,.12);--bq-box-shadow--l:0 20px 58px -16px rgba(0,0,0,.16);--bq-font-family:"Outfit",sans-serif;--bq-font-size--xs:0.75rem;--bq-font-size--s:0.875rem;--bq-font-size--m:1rem;--bq-font-size--l:1.125rem;--bq-font-size--xl:1.5rem;--bq-font-size--xxl:2rem;--bq-font-size--xxl2:2.5rem;--bq-font-size--xxl3:3rem;--bq-font-size--xxl4:3.5rem;--bq-font-size--xxl5:4rem;--bq-font-weight--thin:100;--bq-font-weight--light:300;--bq-font-weight--regular:400;--bq-font-weight--medium:500;--bq-font-weight--semibold:600;--bq-font-weight--bold:700;--bq-font-line-height--small:1.2;--bq-font-line-height--regular:1.5;--bq-font-line-height--large:1.5;--bq-spacing-xs3:0.125rem;--bq-spacing-xs2:0.25rem;--bq-spacing-xs:0.5rem;--bq-spacing-s:0.75rem;--bq-spacing-m:1rem;--bq-spacing-l:1.5rem;--bq-spacing-xl:2rem;--bq-spacing-xxl:2.5rem;--bq-spacing-xxl2:3.5rem;--bq-spacing-xxl3:4rem;--bq-spacing-xxl4:4.5rem;--bq-stroke-s:1px;--bq-stroke-m:2px;--bq-stroke-l:3px}.beeq:not([bq-mode]),.light,:root:not([bq-theme]):not([bq-mode]),:root[bq-theme=beeq]:not([bq-mode]),[bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--alt:var(--bq-white);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-100);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-light);--bq-hover:#bcbfc5;--bq-active:#444546}.dark,[bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-950);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-950);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-dark);--bq-hover:#444546;--bq-active:#1f2026}:where(.endava),:where([bq-theme=endava]){--bq-font-family:"Poppins",sans-serif;--bq-white:#fafbfb;--bq-black:#030406;--bq-neutral-50:var(--bq-endava-grey-50);--bq-neutral-100:var(--bq-endava-grey-100);--bq-neutral-200:var(--bq-endava-grey-200);--bq-neutral-300:var(--bq-endava-grey-300);--bq-neutral-400:var(--bq-endava-grey-400);--bq-neutral-500:var(--bq-endava-grey-500);--bq-neutral-600:var(--bq-endava-grey-600);--bq-neutral-700:var(--bq-endava-grey-700);--bq-neutral-800:var(--bq-endava-grey-800);--bq-neutral-900:var(--bq-endava-grey-900);--bq-neutral-950:var(--bq-endava-grey-950);--bq-neutral-1000:var(--bq-endava-grey-1000);--bq-brand-light:var(--bq-endava-orange-100);--bq-brand:var(--bq-endava-orange-600);--bq-brand-dark:var(--bq-endava-orange-1000);--bq-accent-light:var(--bq-endava-orange-100);--bq-accent:var(--bq-endava-orange-600);--bq-accent-dark:var(--bq-endava-orange-1000);--bq-success-light:var(--bq-green-100);--bq-success:var(--bq-green-600);--bq-success-dark:var(--bq-green-1000);--bq-danger-light:var(--bq-corai-100);--bq-danger:var(--bq-corai-600);--bq-danger-dark:var(--bq-corai-1000);--bq-warning-light:var(--bq-yellow-100);--bq-warning:var(--bq-yellow-600);--bq-warning-dark:var(--bq-yellow-1000);--bq-info-light:var(--bq-blue-100);--bq-info:var(--bq-blue-600);--bq-info-dark:var(--bq-blue-1000);--bq-focus:var(--bq-endava-orange-600);--bq-data-01:var(--bq-brand);--bq-data-02:#af0cd8;--bq-data-03:#0ca8d8;--bq-data-04:var(--bq-teal-600);--bq-data-05:var(--bq-yellow-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-blue-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-purple-600);--bq-data-10:#394b56;--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white)}.endava.light,.endava:not([bq-mode]),[bq-theme=endava]:not([bq-mode]),[bq-theme=endava][bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--brand-alt:var(--bq-brand-light);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-100);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--brand:var(--bq-brand);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-light);--bq-hover:#444546;--bq-active:#1f2026}.endava.dark,[bq-theme=endava][bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-900);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--brand-alt:var(--bq-brand-dark);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-neutral-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-950);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-dark);--bq-hover:#444546;--bq-active:#1f2026}.absolute{position:absolute}.start-xs2{inset-inline-start:var(--bq-spacing-xs2)}.inline-block{display:inline-block}.flex{display:flex}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{user-select:none}.items-center{align-items:center}.rounded-full{border-radius:var(--bq-radius--full)}.rounded-s{border-radius:var(--bq-radius--s)}.bg-ui-primary{background-color:var(--bq-ui--primary)}.opacity-60{opacity:.6}.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}.bg-hover-ui-primary{background-color:color-mix(in srgb,var(--bq-ui--primary),var(--bq-hover) 20%)}.bs-\\[--bq-switch--dot-size\\]{block-size:var(--bq-switch--dot-size)}.is-\\[--bq-switch--dot-size\\]{inline-size:var(--bq-switch--dot-size)}.is-full{inline-size:100%}.p-b-2{padding-block:.5rem}.focus{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}@-webkit-keyframes fade-in{0%{opacity:0}}@keyframes fade-in{0%{opacity:0}}@-webkit-keyframes slide-in{0%{-webkit-transform:translateY(10px);transform:translateY(10px)}}@keyframes slide-in{0%{-webkit-transform:translateY(10px);transform:translateY(10px)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}:host{--bq-switch--height:24px;--bq-switch--justify-content:"start";--bq-switch--width:44px;--bq-switch--dot-size:calc(var(--bq-switch--height) - var(--bq-spacing-xs2)*2);display:inline-block}:host(.full-width){inline-size:100%}.bq-switch{-webkit-box-pack:var(--bq-switch--justify-content);-ms-flex-pack:var(--bq-switch--justify-content);align-items:center;border-radius:var(--bq-radius--s);cursor:pointer;display:flex;justify-content:var(--bq-switch--justify-content);padding-block:.5rem;padding-inline:.5rem;transition-duration:.3s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);user-select:none}.bq-switch.has-background:not(.is-disabled):hover{background-color:color-mix(in srgb,var(--bq-ui--primary),var(--bq-hover) 20%)}.bq-switch.is-disabled{cursor:not-allowed;opacity:.6}.bq-switch--input:not(:disabled):focus-visible~.bq-switch--control,.bq-switch--input:not(:disabled):focus~.bq-switch--control{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}.bq-switch--control__dot{background-color:var(--bq-ui--primary);block-size:var(--bq-switch--dot-size);border-radius:var(--bq-radius--full);inline-size:var(--bq-switch--dot-size);inset-inline-start:var(--bq-spacing-xs2);position:absolute;transition-duration:.3s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.group.is-checked .bq-switch--control__dot{background-color:var(--bq-icon--alt);inset-inline-start:calc(100% - var(--bq-switch--dot-size) - var(--bq-spacing-xs2))}.bq-switch--control__icon{--bq-icon--size:var(--bq-switch--dot-size)!important}.bq-switch--control__icon::part(base){display:flex}.group.is-checked .group-\\[\\&\\.is-checked\\]\\:start-\\[calc\\(100\\%_-_var\\(--bq-switch--dot-size\\)_-_var\\(--bq-spacing-xs2\\)\\)\\]{inset-inline-start:calc(100% - var(--bq-switch--dot-size) - var(--bq-spacing-xs2))}.group.is-checked .group-\\[\\&\\.is-checked\\]\\:bg-\\[--bq-icon--alt\\]{background-color:var(--bq-icon--alt)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.static{position:static}.relative{position:relative}.me-s{margin-inline-end:var(--bq-spacing-s)}.ms-s{margin-inline-start:var(--bq-spacing-s)}.box-border{box-sizing:border-box}.flex-row-reverse{flex-direction:row-reverse}.justify-between{justify-content:space-between}.bg-ui-tertiary{background-color:var(--bq-ui--tertiary)}.text-m{font-size:var(--bq-font-size--m)}.font-medium{font-weight:var(--bq-font-weight--medium)}.leading-regular{line-height:var(--bq-font-line-height--regular)}.text-primary{color:var(--bq-text--primary)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\\!bs-\\[--bq-switch--dot-size\\]{block-size:var(--bq-switch--dot-size)!important}.\\!is-\\[--bq-switch--width\\]{inline-size:var(--bq-switch--width)!important}.bs-\\[--bq-switch--height\\]{block-size:var(--bq-switch--height)}.is-\\[--bq-switch--width\\]{inline-size:var(--bq-switch--width)}.p-b-xs2{padding-block:var(--bq-spacing-xs2)}.p-i-xs2{padding-inline:var(--bq-spacing-xs2)}.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}}.group.is-checked .group-\\[\\&\\.is-checked\\]\\:bg-ui-brand{background-color:var(--bq-ui--brand)}.peer:checked~.peer-checked\\:invisible{visibility:hidden}`;
11
10
 
12
11
  const BqSwitch = class {
13
12
  constructor(hostRef) {
@@ -193,15 +192,15 @@ const BqSwitch = class {
193
192
  'is-disabled': this.disabled,
194
193
  'flex-row-reverse': this.reverseOrder,
195
194
  };
196
- return (jsx(Host, { class: { 'full-width': this.fullWidth }, style: hostStyle, children: jsxs("label", { class: { 'bq-switch group': true, ...labelCssClasses }, part: "base", children: [jsx("input", { "aria-checked": this.checked ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : 'false', "aria-label": this.name, checked: this.checked, class: "bq-switch--input peer !bs-[--bq-switch--dot-size] !is-[--bq-switch--width] sr-only peer-checked:invisible", disabled: this.disabled, name: !isNil(this.name) ? this.name : undefined, onBlur: this.handleOnBlur, onChange: this.handleChange, onFocus: this.handleOnFocus, ref: (input) => {
197
- this.inputElem = input;
198
- }, required: this.required, role: "switch", type: "checkbox", value: this.value }, '74f906055e93fc0faa9b94b5ca1441b8e6aa049a'), jsxs("div", { class: "bq-switch--control bs-[--bq-switch--height] is-[--bq-switch--width] relative box-border flex justify-between rounded-full bg-ui-tertiary p-b-xs2 p-i-xs2 transition duration-300 group-[&.is-checked]:bg-ui-brand", part: "control", children: [this.innerLabel === 'icon' && (jsx("bq-icon", { class: "bq-switch--control__icon on", color: "icon--alt", name: "check", part: "icon-on", title: "On" }, '9ec8d3b779306d566dc4cfde53854a6f1da8fd35')), this.innerLabel === 'icon' && (jsx("bq-icon", { class: "bq-switch--control__icon off", color: "icon--inverse", name: "x", part: "icon-off", title: "Off" }, 'cf69da92cae163e09aaf5ac0fcf862f0dd3f74ef')), jsx("div", { class: "bq-switch--control__dot", part: "dot" }, 'af52e94955e81c755c24cea20839738858fa52cb')] }, '34714af149ed404749d8dc897ae64e939c271de7'), jsx("span", { class: {
199
- 'bq-switch--label font-medium text-m text-primary leading-regular transition-colors duration-300': true,
200
- 'ms-s': this.hasLabel && !this.reverseOrder,
201
- 'me-s': this.hasLabel && this.reverseOrder,
202
- }, part: "label", ref: (span) => {
203
- this.labelElem = span;
204
- }, children: jsx("slot", { onSlotchange: this.handleSlotChange }, '89fbd9404e2a2db5828c2ad9525a661c8ec3e207') }, 'a935f08691c1002226a20cec1e9623e2496e5f75')] }, '3e8f0376f2175520077de189ae48ce73fd633946') }, '9a27424ab936d27ea5acd52829afcb57ffe3c92c'));
195
+ return (h(Host, { key: '50837476ffecd5a4d8fbfac516e8ef630aaae0d1', class: { 'full-width': this.fullWidth }, style: hostStyle }, h("label", { key: '2b3ff5fb4a384c255da3590ae4977844da42b3f8', class: { 'bq-switch group': true, ...labelCssClasses }, part: "base" }, h("input", { key: 'f007a6eb8b2e7d17f070e251dfb134029ced8652', "aria-checked": this.checked ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : 'false', "aria-label": this.name, checked: this.checked, class: "bq-switch--input peer !bs-[--bq-switch--dot-size] !is-[--bq-switch--width] sr-only peer-checked:invisible", disabled: this.disabled, name: !isNil(this.name) ? this.name : undefined, onBlur: this.handleOnBlur, onChange: this.handleChange, onFocus: this.handleOnFocus, ref: (input) => {
196
+ this.inputElem = input;
197
+ }, required: this.required, role: "switch", type: "checkbox", value: this.value }), h("div", { key: '1b27a1080667827d7aff194e8df2d366796d157d', class: "bq-switch--control bs-[--bq-switch--height] is-[--bq-switch--width] relative box-border flex justify-between rounded-full bg-ui-tertiary p-b-xs2 p-i-xs2 transition duration-300 group-[&.is-checked]:bg-ui-brand", part: "control" }, this.innerLabel === 'icon' && (h("bq-icon", { key: '785252cd3627a008c13cec31a816d1b887e14fa0', class: "bq-switch--control__icon on", color: "icon--alt", name: "check", part: "icon-on", title: "On" })), this.innerLabel === 'icon' && (h("bq-icon", { key: 'db1f0003ad2de0caaa6c7de864e21dca56fa62ae', class: "bq-switch--control__icon off", color: "icon--inverse", name: "x", part: "icon-off", title: "Off" })), h("div", { key: '9822fdace5e03fa4a10f8ff0e865fa93ec965367', class: "bq-switch--control__dot", part: "dot" })), h("span", { key: 'b0d090c0888f59eb86da9de35f87a13099da7182', class: {
198
+ 'bq-switch--label font-medium text-m text-primary leading-regular transition-colors duration-300': true,
199
+ 'ms-s': this.hasLabel && !this.reverseOrder,
200
+ 'me-s': this.hasLabel && this.reverseOrder,
201
+ }, part: "label", ref: (span) => {
202
+ this.labelElem = span;
203
+ } }, h("slot", { key: 'e5d6b58367302388601d9390ea41ff95c3d2e38f', onSlotchange: this.handleSlotChange })))));
205
204
  }
206
205
  static get delegatesFocus() { return true; }
207
206
  static get formAssociated() { return true; }
@@ -1 +1 @@
1
- {"version":3,"file":"bq-switch.entry.js","sources":["../../packages/beeq/src/components/switch/scss/bq-switch.scss?tag=bq-switch&encapsulation=shadow","../../packages/beeq/src/components/switch/bq-switch.tsx"],"sourcesContent":["/* -------------------------------------------------------------------------- */\n/* Switch styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-switch.variables';\n\n:host {\n @apply inline-block;\n}\n\n:host(.full-width) {\n @apply is-full;\n}\n\n.bq-switch {\n @apply flex cursor-pointer select-none items-center rounded-s transition-colors duration-300 p-b-2 p-i-2;\n\n justify-content: var(--bq-switch--justify-content);\n\n // Display background on hover (if enabled)\n &.has-background:not(.is-disabled):hover {\n @apply bg-hover-ui-primary;\n }\n\n &.is-disabled {\n @apply cursor-not-allowed opacity-60;\n }\n}\n\n.bq-switch--input:not(:disabled):focus,\n.bq-switch--input:not(:disabled):focus-visible {\n ~ .bq-switch--control {\n @apply focus;\n }\n}\n\n.bq-switch--control__dot {\n @apply absolute start-xs2 rounded-full bg-ui-primary bs-[--bq-switch--dot-size] is-[--bq-switch--dot-size];\n @apply group-[&.is-checked]:start-[calc(100%_-_var(--bq-switch--dot-size)_-_var(--bq-spacing-xs2))] group-[&.is-checked]:bg-[--bq-icon--alt];\n @apply transition-all duration-300;\n}\n\n.bq-switch--control__icon {\n --bq-icon--size: var(--bq-switch--dot-size) !important;\n\n &::part(base) {\n @apply flex;\n }\n}\n","import type { EventEmitter } from '@stencil/core';\nimport { AttachInternals, Component, Element, Event, Host, Method, Prop, State, Watch } from '@stencil/core';\n\nimport { getTextContent, isNil } from '../../shared/utils';\nimport type { TSwitchInnerLabel, TSwitchJustifyContent } from './bq-switch.types';\n\n/**\n * Toggle switches are digital on/off switches.\n * They should provide immediate results, giving users the freedom to control their preferences as needed.\n *\n * @example How to use it\n * ```html\n * <bq-switch inner-label=\"default\" justify-content=\"start\" name=\"bq-switch\" value=\"Switch value\">\n * Toggle me!\n * </bq-switch>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/49d9c9-switch\n * @status stable\n *\n * @dependency bq-icon\n *\n * @attr {boolean} background-on-hover - If `true`, a background will be displayed on hover\n * @attr {boolean} checked - It indicates whether if the switch is `ON` by default (when the page loads)\n * @attr {boolean} disabled - If `true`, the switch control will be disabled and no interaction will be allowed\n * @attr {string} form-validation-message - The native form validation message\n * @attr {boolean} full-width - If `true`, the component will take the full width space available on the parent container\n * @attr {\"default\" | \"icon\"} inner-label - It indicates how to to display the on/off marks inside the control, with icons or none (default)\n * @attr {\"start\" | \"end\" | \"center\" | \"space-between\" | \"space-around\" | \"space-evenly\"} justify-content - It defines how to distribute the space between and around the control and the label text\n * @attr {string} name - Name of the form control. Submitted with the form as part of a name/value pair\n * @attr {boolean} required - If `true`, it will indicate that the user must switch `ON` the element before the owning form can be submitted\n * @attr {boolean} reverse-order - If `true`, the order of the control and the label text will be changed\n * @attr {string} value - The input control's value, submitted as a name/value pair with form data\n *\n * @event bqChange - Handler to be called when the switch state changes\n * @event bqFocus - Handler to be called when the switch gets focus\n * @event bqBlur - Handler to be called when the switch loses focus\n *\n * @slot - The switch label text\n *\n * @part base - HTML `<label>` root container\n * @part control - HTML `<div>` element for the custom control\n * @part dot - HTML `<div>` element that acts as changing dot\n * @part icon-off - HTMLBqIcon `<pk-icon>` element used as the `OFF` mark inner label\n * @part icon-on - HTMLBqIcon `<pk-icon>` element used as the `ON` mark inner label\n * @part label - HTML `<span>` element that holds the label text\n *\n * @cssprop --bq-switch--height - Switch height\n * @cssprop --bq-switch--justify-content - Switch justify content\n * @cssprop --bq-switch--width - Switch width\n * @cssprop --bq-switch--dot-size - Switch dot size\n */\n@Component({\n tag: 'bq-switch',\n styleUrl: './scss/bq-switch.scss',\n formAssociated: true,\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BqSwitch {\n // Own Properties\n // ====================\n\n private labelElem: HTMLSpanElement;\n private inputElem: HTMLInputElement;\n private prevCheckedValue: boolean;\n\n // Reference to host HTML element\n // ===================================\n\n @AttachInternals() internals!: ElementInternals;\n @Element() el!: HTMLBqSwitchElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() hasLabel = false;\n\n // Public Property API\n // ========================\n\n /** If true, a background will be displayed on hover */\n @Prop({ reflect: true }) backgroundOnHover?: boolean = false;\n\n /** It indicates whether if the switch is `ON` by default (when the page loads) */\n @Prop({ reflect: true, mutable: true }) checked?: boolean = false;\n\n /** If true, the switch control will be disabled and no interaction will be allowed */\n @Prop({ reflect: true }) disabled?: boolean = false;\n\n /** The native form validation message */\n @Prop({ mutable: true }) formValidationMessage?: string;\n\n /** If true, the component will take the full width space available on the parent container */\n @Prop({ reflect: true }) fullWidth?: boolean = false;\n\n /** It indicates how to to display the on/off marks inside the control, with icons or none (default) */\n @Prop({ reflect: true }) innerLabel?: TSwitchInnerLabel = 'default';\n\n /**\n * It defines how to distribute the space between and around the control and the label text\n * (https://developer.mozilla.org/en-US/docs/Web/CSS/justify-content)\n */\n @Prop({ reflect: true }) justifyContent?: TSwitchJustifyContent = 'start';\n\n /** Name of the form control. Submitted with the form as part of a name/value pair */\n @Prop({ reflect: true }) name!: string;\n\n /** If `true`, it will indicate that the user must switch `ON` the element before the owning form can be submitted */\n @Prop({ reflect: true }) required?: boolean = false;\n\n /** If true, the order of the control and the label text will be changed */\n @Prop({ reflect: true }) reverseOrder?: boolean = false;\n\n /** The input control's value, submitted as a name/value pair with form data. */\n @Prop({ reflect: true }) value?: string;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('required')\n handleRequiredChange() {\n this.updateFormValidity();\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Handler to be called when the switch state changes */\n @Event() bqChange: EventEmitter<{ checked: boolean }>;\n\n /** Handler to be called when the switch gets focus */\n @Event() bqFocus: EventEmitter<HTMLBqSwitchElement>;\n\n /** Handler to be called when the switch loses focus */\n @Event() bqBlur: EventEmitter<HTMLBqSwitchElement>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.prevCheckedValue = this.checked;\n }\n\n componentDidLoad() {\n this.handleSlotChange();\n }\n\n componentDidUpdate() {\n /**\n * We need to trigger the `bqChange` immediately after the first update happens\n * so the checked attribute get applied, otherwise, a delay will happen\n * between the event emits and when the checked attribute value gets reflected in the element host.\n */\n if (this.checked !== this.prevCheckedValue) {\n this.bqChange.emit({ checked: this.checked });\n this.prevCheckedValue = this.checked;\n }\n }\n\n formAssociatedCallback() {\n this.setFormValue(this.checked);\n this.updateFormValidity();\n }\n\n formResetCallback() {\n // Reset the form value and validity state\n this.checked = false;\n this.inputElem.removeAttribute('checked');\n this.internals?.setFormValue(undefined);\n this.updateFormValidity();\n }\n\n // Listeners\n // ==============\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n /**\n * Simulate a click event on the native `<input>` HTML element used under the hood.\n * Use this method instead of the global `element.click()`.\n */\n @Method()\n async vClick() {\n this.inputElem?.click();\n }\n\n /**\n * Sets focus on the native `<input>` HTML element used under the hood.\n * Use this method instead of the global `element.focus()`.\n */\n @Method()\n async vFocus() {\n this.inputElem?.focus();\n }\n\n /**\n * Remove focus from the native `<input>` HTML element used under the hood.\n * Use this method instead of the global `element.blur()`.\n */\n @Method()\n async vBlur() {\n this.inputElem?.blur();\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleChange = () => {\n this.checked = !this.checked;\n this.inputElem.setAttribute('checked', `${this.checked}`);\n this.setFormValue(this.checked);\n this.updateFormValidity();\n };\n\n private handleOnFocus = () => {\n this.bqFocus.emit(this.el);\n };\n\n private handleOnBlur = () => {\n this.bqBlur.emit(this.el);\n };\n\n private handleSlotChange = () => {\n const slot = this.labelElem?.querySelector('slot') ?? null;\n if (isNil(slot)) return;\n\n this.hasLabel = !!getTextContent(slot, { recurse: true }).length;\n };\n\n private setFormValue = (checked: boolean) => {\n const value = checked ? 'on' : undefined;\n // Set form value based on the checked state\n // Here we also pass the state of the component (2nd argument) as the state of the form control\n // Details: https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/setFormValue\n this.internals?.setFormValue(value, `${this.checked}`);\n };\n\n private updateFormValidity = () => {\n const { formValidationMessage, internals, required, checked, inputElem } = this;\n // Clear the validity state\n internals?.states.clear();\n\n if (!(required && !checked)) {\n // If the switch component is not required or is checked, set the validity state to valid\n internals?.states.add('valid');\n internals?.setValidity({});\n return;\n }\n\n // Set validity state based on the required property and checked state\n internals?.states.add('invalid');\n internals?.setValidity({ valueMissing: true }, formValidationMessage, inputElem);\n };\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n const hostStyle = {\n ...(this.justifyContent && { '--bq-switch--justify-content': this.justifyContent }),\n };\n\n const labelCssClasses = {\n 'has-background': this.backgroundOnHover,\n 'is-checked': this.checked,\n 'is-disabled': this.disabled,\n 'flex-row-reverse': this.reverseOrder,\n };\n\n return (\n <Host class={{ 'full-width': this.fullWidth }} style={hostStyle}>\n <label class={{ 'bq-switch group': true, ...labelCssClasses }} part=\"base\">\n {/* Hidden native HTML input */}\n <input\n aria-checked={this.checked ? 'true' : 'false'}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-label={this.name}\n checked={this.checked}\n class=\"bq-switch--input peer !bs-[--bq-switch--dot-size] !is-[--bq-switch--width] sr-only peer-checked:invisible\"\n disabled={this.disabled}\n name={!isNil(this.name) ? this.name : undefined}\n onBlur={this.handleOnBlur}\n onChange={this.handleChange}\n onFocus={this.handleOnFocus}\n ref={(input) => {\n this.inputElem = input;\n }}\n required={this.required}\n role=\"switch\"\n type=\"checkbox\"\n value={this.value}\n />\n {/* Control */}\n <div\n class=\"bq-switch--control bs-[--bq-switch--height] is-[--bq-switch--width] relative box-border flex justify-between rounded-full bg-ui-tertiary p-b-xs2 p-i-xs2 transition duration-300 group-[&.is-checked]:bg-ui-brand\"\n part=\"control\"\n >\n {this.innerLabel === 'icon' && (\n <bq-icon class=\"bq-switch--control__icon on\" color=\"icon--alt\" name=\"check\" part=\"icon-on\" title=\"On\" />\n )}\n {this.innerLabel === 'icon' && (\n <bq-icon\n class=\"bq-switch--control__icon off\"\n color=\"icon--inverse\"\n name=\"x\"\n part=\"icon-off\"\n title=\"Off\"\n />\n )}\n {/* Dot */}\n <div class=\"bq-switch--control__dot\" part=\"dot\" />\n </div>\n {/* Label */}\n <span\n class={{\n 'bq-switch--label font-medium text-m text-primary leading-regular transition-colors duration-300': true,\n 'ms-s': this.hasLabel && !this.reverseOrder,\n 'me-s': this.hasLabel && this.reverseOrder,\n }}\n part=\"label\"\n ref={(span) => {\n this.labelElem = span;\n }}\n >\n <slot onSlotchange={this.handleSlotChange} />\n </span>\n </label>\n </Host>\n );\n }\n}\n"],"names":["_jsx","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"bq-switch.entry.js","sources":["../../packages/beeq/src/components/switch/scss/bq-switch.scss?tag=bq-switch&encapsulation=shadow","../../packages/beeq/src/components/switch/bq-switch.tsx"],"sourcesContent":["/* -------------------------------------------------------------------------- */\n/* Switch styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-switch.variables';\n\n:host {\n @apply inline-block;\n}\n\n:host(.full-width) {\n @apply is-full;\n}\n\n.bq-switch {\n @apply flex cursor-pointer select-none items-center rounded-s transition-colors duration-300 p-b-2 p-i-2;\n\n justify-content: var(--bq-switch--justify-content);\n\n // Display background on hover (if enabled)\n &.has-background:not(.is-disabled):hover {\n @apply bg-hover-ui-primary;\n }\n\n &.is-disabled {\n @apply cursor-not-allowed opacity-60;\n }\n}\n\n.bq-switch--input:not(:disabled):focus,\n.bq-switch--input:not(:disabled):focus-visible {\n ~ .bq-switch--control {\n @apply focus;\n }\n}\n\n.bq-switch--control__dot {\n @apply absolute start-xs2 rounded-full bg-ui-primary bs-[--bq-switch--dot-size] is-[--bq-switch--dot-size];\n @apply group-[&.is-checked]:start-[calc(100%_-_var(--bq-switch--dot-size)_-_var(--bq-spacing-xs2))] group-[&.is-checked]:bg-[--bq-icon--alt];\n @apply transition-all duration-300;\n}\n\n.bq-switch--control__icon {\n --bq-icon--size: var(--bq-switch--dot-size) !important;\n\n &::part(base) {\n @apply flex;\n }\n}\n","import type { EventEmitter } from '@stencil/core';\nimport { AttachInternals, Component, Element, Event, Host, h, Method, Prop, State, Watch } from '@stencil/core';\n\nimport { getTextContent, isNil } from '../../shared/utils';\nimport type { TSwitchInnerLabel, TSwitchJustifyContent } from './bq-switch.types';\n\n/**\n * Toggle switches are digital on/off switches.\n * They should provide immediate results, giving users the freedom to control their preferences as needed.\n *\n * @example How to use it\n * ```html\n * <bq-switch inner-label=\"default\" justify-content=\"start\" name=\"bq-switch\" value=\"Switch value\">\n * Toggle me!\n * </bq-switch>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/49d9c9-switch\n * @status stable\n *\n * @dependency bq-icon\n *\n * @attr {boolean} background-on-hover - If `true`, a background will be displayed on hover\n * @attr {boolean} checked - It indicates whether if the switch is `ON` by default (when the page loads)\n * @attr {boolean} disabled - If `true`, the switch control will be disabled and no interaction will be allowed\n * @attr {string} form-validation-message - The native form validation message\n * @attr {boolean} full-width - If `true`, the component will take the full width space available on the parent container\n * @attr {\"default\" | \"icon\"} inner-label - It indicates how to to display the on/off marks inside the control, with icons or none (default)\n * @attr {\"start\" | \"end\" | \"center\" | \"space-between\" | \"space-around\" | \"space-evenly\"} justify-content - It defines how to distribute the space between and around the control and the label text\n * @attr {string} name - Name of the form control. Submitted with the form as part of a name/value pair\n * @attr {boolean} required - If `true`, it will indicate that the user must switch `ON` the element before the owning form can be submitted\n * @attr {boolean} reverse-order - If `true`, the order of the control and the label text will be changed\n * @attr {string} value - The input control's value, submitted as a name/value pair with form data\n *\n * @event bqChange - Handler to be called when the switch state changes\n * @event bqFocus - Handler to be called when the switch gets focus\n * @event bqBlur - Handler to be called when the switch loses focus\n *\n * @slot - The switch label text\n *\n * @part base - HTML `<label>` root container\n * @part control - HTML `<div>` element for the custom control\n * @part dot - HTML `<div>` element that acts as changing dot\n * @part icon-off - HTMLBqIcon `<pk-icon>` element used as the `OFF` mark inner label\n * @part icon-on - HTMLBqIcon `<pk-icon>` element used as the `ON` mark inner label\n * @part label - HTML `<span>` element that holds the label text\n *\n * @cssprop --bq-switch--height - Switch height\n * @cssprop --bq-switch--justify-content - Switch justify content\n * @cssprop --bq-switch--width - Switch width\n * @cssprop --bq-switch--dot-size - Switch dot size\n */\n@Component({\n tag: 'bq-switch',\n styleUrl: './scss/bq-switch.scss',\n formAssociated: true,\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BqSwitch {\n // Own Properties\n // ====================\n\n private labelElem: HTMLSpanElement;\n private inputElem: HTMLInputElement;\n private prevCheckedValue: boolean;\n\n // Reference to host HTML element\n // ===================================\n\n @AttachInternals() internals!: ElementInternals;\n @Element() el!: HTMLBqSwitchElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() hasLabel = false;\n\n // Public Property API\n // ========================\n\n /** If true, a background will be displayed on hover */\n @Prop({ reflect: true }) backgroundOnHover?: boolean = false;\n\n /** It indicates whether if the switch is `ON` by default (when the page loads) */\n @Prop({ reflect: true, mutable: true }) checked?: boolean = false;\n\n /** If true, the switch control will be disabled and no interaction will be allowed */\n @Prop({ reflect: true }) disabled?: boolean = false;\n\n /** The native form validation message */\n @Prop({ mutable: true }) formValidationMessage?: string;\n\n /** If true, the component will take the full width space available on the parent container */\n @Prop({ reflect: true }) fullWidth?: boolean = false;\n\n /** It indicates how to to display the on/off marks inside the control, with icons or none (default) */\n @Prop({ reflect: true }) innerLabel?: TSwitchInnerLabel = 'default';\n\n /**\n * It defines how to distribute the space between and around the control and the label text\n * (https://developer.mozilla.org/en-US/docs/Web/CSS/justify-content)\n */\n @Prop({ reflect: true }) justifyContent?: TSwitchJustifyContent = 'start';\n\n /** Name of the form control. Submitted with the form as part of a name/value pair */\n @Prop({ reflect: true }) name!: string;\n\n /** If `true`, it will indicate that the user must switch `ON` the element before the owning form can be submitted */\n @Prop({ reflect: true }) required?: boolean = false;\n\n /** If true, the order of the control and the label text will be changed */\n @Prop({ reflect: true }) reverseOrder?: boolean = false;\n\n /** The input control's value, submitted as a name/value pair with form data. */\n @Prop({ reflect: true }) value?: string;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('required')\n handleRequiredChange() {\n this.updateFormValidity();\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Handler to be called when the switch state changes */\n @Event() bqChange: EventEmitter<{ checked: boolean }>;\n\n /** Handler to be called when the switch gets focus */\n @Event() bqFocus: EventEmitter<HTMLBqSwitchElement>;\n\n /** Handler to be called when the switch loses focus */\n @Event() bqBlur: EventEmitter<HTMLBqSwitchElement>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.prevCheckedValue = this.checked;\n }\n\n componentDidLoad() {\n this.handleSlotChange();\n }\n\n componentDidUpdate() {\n /**\n * We need to trigger the `bqChange` immediately after the first update happens\n * so the checked attribute get applied, otherwise, a delay will happen\n * between the event emits and when the checked attribute value gets reflected in the element host.\n */\n if (this.checked !== this.prevCheckedValue) {\n this.bqChange.emit({ checked: this.checked });\n this.prevCheckedValue = this.checked;\n }\n }\n\n formAssociatedCallback() {\n this.setFormValue(this.checked);\n this.updateFormValidity();\n }\n\n formResetCallback() {\n // Reset the form value and validity state\n this.checked = false;\n this.inputElem.removeAttribute('checked');\n this.internals?.setFormValue(undefined);\n this.updateFormValidity();\n }\n\n // Listeners\n // ==============\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n /**\n * Simulate a click event on the native `<input>` HTML element used under the hood.\n * Use this method instead of the global `element.click()`.\n */\n @Method()\n async vClick() {\n this.inputElem?.click();\n }\n\n /**\n * Sets focus on the native `<input>` HTML element used under the hood.\n * Use this method instead of the global `element.focus()`.\n */\n @Method()\n async vFocus() {\n this.inputElem?.focus();\n }\n\n /**\n * Remove focus from the native `<input>` HTML element used under the hood.\n * Use this method instead of the global `element.blur()`.\n */\n @Method()\n async vBlur() {\n this.inputElem?.blur();\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleChange = () => {\n this.checked = !this.checked;\n this.inputElem.setAttribute('checked', `${this.checked}`);\n this.setFormValue(this.checked);\n this.updateFormValidity();\n };\n\n private handleOnFocus = () => {\n this.bqFocus.emit(this.el);\n };\n\n private handleOnBlur = () => {\n this.bqBlur.emit(this.el);\n };\n\n private handleSlotChange = () => {\n const slot = this.labelElem?.querySelector('slot') ?? null;\n if (isNil(slot)) return;\n\n this.hasLabel = !!getTextContent(slot, { recurse: true }).length;\n };\n\n private setFormValue = (checked: boolean) => {\n const value = checked ? 'on' : undefined;\n // Set form value based on the checked state\n // Here we also pass the state of the component (2nd argument) as the state of the form control\n // Details: https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/setFormValue\n this.internals?.setFormValue(value, `${this.checked}`);\n };\n\n private updateFormValidity = () => {\n const { formValidationMessage, internals, required, checked, inputElem } = this;\n // Clear the validity state\n internals?.states.clear();\n\n if (!(required && !checked)) {\n // If the switch component is not required or is checked, set the validity state to valid\n internals?.states.add('valid');\n internals?.setValidity({});\n return;\n }\n\n // Set validity state based on the required property and checked state\n internals?.states.add('invalid');\n internals?.setValidity({ valueMissing: true }, formValidationMessage, inputElem);\n };\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n const hostStyle = {\n ...(this.justifyContent && { '--bq-switch--justify-content': this.justifyContent }),\n };\n\n const labelCssClasses = {\n 'has-background': this.backgroundOnHover,\n 'is-checked': this.checked,\n 'is-disabled': this.disabled,\n 'flex-row-reverse': this.reverseOrder,\n };\n\n return (\n <Host class={{ 'full-width': this.fullWidth }} style={hostStyle}>\n <label class={{ 'bq-switch group': true, ...labelCssClasses }} part=\"base\">\n {/* Hidden native HTML input */}\n <input\n aria-checked={this.checked ? 'true' : 'false'}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-label={this.name}\n checked={this.checked}\n class=\"bq-switch--input peer !bs-[--bq-switch--dot-size] !is-[--bq-switch--width] sr-only peer-checked:invisible\"\n disabled={this.disabled}\n name={!isNil(this.name) ? this.name : undefined}\n onBlur={this.handleOnBlur}\n onChange={this.handleChange}\n onFocus={this.handleOnFocus}\n ref={(input) => {\n this.inputElem = input;\n }}\n required={this.required}\n role=\"switch\"\n type=\"checkbox\"\n value={this.value}\n />\n {/* Control */}\n <div\n class=\"bq-switch--control bs-[--bq-switch--height] is-[--bq-switch--width] relative box-border flex justify-between rounded-full bg-ui-tertiary p-b-xs2 p-i-xs2 transition duration-300 group-[&.is-checked]:bg-ui-brand\"\n part=\"control\"\n >\n {this.innerLabel === 'icon' && (\n <bq-icon class=\"bq-switch--control__icon on\" color=\"icon--alt\" name=\"check\" part=\"icon-on\" title=\"On\" />\n )}\n {this.innerLabel === 'icon' && (\n <bq-icon\n class=\"bq-switch--control__icon off\"\n color=\"icon--inverse\"\n name=\"x\"\n part=\"icon-off\"\n title=\"Off\"\n />\n )}\n {/* Dot */}\n <div class=\"bq-switch--control__dot\" part=\"dot\" />\n </div>\n {/* Label */}\n <span\n class={{\n 'bq-switch--label font-medium text-m text-primary leading-regular transition-colors duration-300': true,\n 'ms-s': this.hasLabel && !this.reverseOrder,\n 'me-s': this.hasLabel && this.reverseOrder,\n }}\n part=\"label\"\n ref={(span) => {\n this.labelElem = span;\n }}\n >\n <slot onSlotchange={this.handleSlotChange} />\n </span>\n </label>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -2,8 +2,7 @@
2
2
  * Built by Endavans
3
3
  * © https://beeq.design - Apache 2 License.
4
4
  */
5
- import { r as registerInstance, c as createEvent, g as getElement, a as Host } from './index-D1N0tWF3.js';
6
- import { a as jsx } from './index-C33fRBEf.js';
5
+ import { r as registerInstance, c as createEvent, a as getElement, h, d as Host } from './index-XbB3xSTR.js';
7
6
  import { d as debounce } from './debounce-gVeuteEJ.js';
8
7
  import { g as getNextElement } from './getNextElement-BsSDkLU5.js';
9
8
  import { i as isHTMLElement } from './isHTMLElement-D1A0LpG_.js';
@@ -174,13 +173,13 @@ const BqTabGroup = class {
174
173
  // Always the last one in the class.
175
174
  // ===================================
176
175
  render() {
177
- return (jsx(Host, { class: { 'inline-block': this.orientation === 'vertical' }, children: jsx("div", { class: {
178
- [`bq-tab-group bq-tab-group--${this.orientation}-${this.placement} is-full flex`]: true,
179
- 'no-divider': this.disableDivider,
180
- }, part: "base", children: jsx("div", { class: {
181
- 'bq-tab-group--container flex overflow-x-auto': true,
182
- 'flex-col': this.orientation !== 'horizontal',
183
- }, part: "tabs", role: "tablist", children: jsx("slot", {}, 'c6a50f259ecaab21d223cc188f390a7d186ce2f8') }, '71ba00dd69ed2cbaf547ca46a745dad58a4434c1') }, '4f7c13e06144d733c851f1b8e62238bfdd4aabcd') }, '50d10913b0d057c1f9272e4c577e65739e8b714a'));
176
+ return (h(Host, { key: '14f48db35a2392ede8c5a44103ececb5e601dc98', class: { 'inline-block': this.orientation === 'vertical' } }, h("div", { key: '5639127579ae0bfccd48cb59736ea5b4533ea45a', class: {
177
+ [`bq-tab-group bq-tab-group--${this.orientation}-${this.placement} is-full flex`]: true,
178
+ 'no-divider': this.disableDivider,
179
+ }, part: "base" }, h("div", { key: 'ee7f407248c1bcdeb6fd53569151b37518aa575b', class: {
180
+ 'bq-tab-group--container flex overflow-x-auto': true,
181
+ 'flex-col': this.orientation !== 'horizontal',
182
+ }, part: "tabs", role: "tablist" }, h("slot", { key: 'fcb5a9e5a8df56b4b32549810778cdd19719a486' })))));
184
183
  }
185
184
  static get watchers() { return {
186
185
  "debounceTime": [{
@@ -1 +1 @@
1
- {"version":3,"file":"bq-tab-group.entry.js","sources":["../../packages/beeq/src/components/tab-group/scss/bq-tab-group.scss?tag=bq-tab-group&encapsulation=shadow","../../packages/beeq/src/components/tab-group/bq-tab-group.tsx"],"sourcesContent":["/* -------------------------------------------------------------------------- */\n/* Tab styles */\n/* -------------------------------------------------------------------------- */\n\n:host {\n @apply block;\n}\n\n.bq-tab-group {\n @apply relative;\n\n &::after {\n @apply absolute flex border-0 border-solid border-primary content-empty;\n }\n\n &--horizontal-start,\n &--horizontal-end {\n &::after {\n @apply is-full inset-be-0 [border-block-end-width:--bq-stroke-s];\n }\n }\n\n &--horizontal-start {\n @apply justify-start;\n }\n\n &--horizontal-end {\n @apply justify-end;\n }\n\n &--vertical-start::after {\n @apply end-0 bs-full is-0 [border-block-end-width:0px] [border-inline-end-width:--bq-stroke-s];\n }\n\n &--vertical-end::after {\n @apply start-0 bs-full is-0 [border-block-end-width:0px] [border-inline-start-width:--bq-stroke-s];\n }\n}\n\n.bq-tab-group.no-divider {\n &::after {\n @apply content-none;\n }\n}\n\n.bq-tab-group--container {\n @include hide-scrollbar;\n @apply gap-xs2 p-xs2; // This will avoid cutting the outline focus style\n}\n","import type { EventEmitter } from '@stencil/core';\nimport { Component, Element, Event, Host, Listen, Prop, Watch } from '@stencil/core';\n\nimport { debounce, getNextElement, isHTMLElement, isNil, type TDebounce, validatePropValue } from '../../shared/utils';\nimport type { TTabOrientation, TTabPlacement, TTabSize } from '../tab/bq-tab.types';\nimport { TAB_ORIENTATION, TAB_PLACEMENT, TAB_SIZE } from '../tab/bq-tab.types';\n\n/**\n * The tab group is a user interface element that allows users wrap a set of tab items.\n *\n * @example How to use it\n * ```html\n * <bq-tab-group value=\"5\">\n * <bq-tab tab-id=\"1\">Tab</bq-tab>\n * <bq-tab tab-id=\"2\" active>Tab</bq-tab>\n * <bq-tab tab-id=\"3\">Long Tab name</bq-tab>\n * <bq-tab tab-id=\"4\" disabled>Tab</bq-tab>\n * </bq-tab-group>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/775321-tabs\n * @status stable\n *\n * @attr {number} debounce-time - A number representing the delay value applied to bqChange event handler\n * @attr {boolean} disable-divider - If true, the underline divider below the tabs won't be shown\n * @attr {string} orientation - The direction that tab should be render\n * @attr {string} placement - The placement that tab should be render\n * @attr {string} size - The size of the tab\n * @attr {string} value - A string representing the id of the selected tab.\n *\n * @event bqChange - Handler to be called when the tab value changes\n *\n * @slot - The bq-tab items\n *\n * @part base - The HTML div wrapper inside the shadow DOM.\n * @part tabs - The HTML div used to hold the tab buttons.\n */\n@Component({\n tag: 'bq-tab-group',\n styleUrl: './scss/bq-tab-group.scss',\n shadow: true,\n})\nexport class BqTabGroup {\n // Own Properties\n // ====================\n\n private debouncedBqChange: TDebounce<{ value: string; target: HTMLBqTabElement }>;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqTabGroupElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n // Public Property API\n // ========================\n\n /** A number representing the delay value applied to bqChange event handler */\n @Prop({ reflect: true, mutable: true }) debounceTime = 0;\n\n /** If true, the underline divider below the tabs won't be shown */\n @Prop({ reflect: true }) disableDivider = false;\n\n /** The direction that tab should be render */\n @Prop({ reflect: true }) orientation?: TTabOrientation = 'horizontal';\n\n /** The placement that tab should be render */\n @Prop({ reflect: true }) placement?: TTabPlacement = 'start';\n\n /** The size of the tab */\n @Prop({ reflect: true }) size: TTabSize = 'medium';\n\n /** A string representing the id of the selected tab. */\n @Prop({ reflect: true, mutable: true }) value: string;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('debounceTime')\n checkDebounceChange() {\n if (this.debounceTime < 0) {\n this.debounceTime = Math.max(0, this.debounceTime);\n }\n\n if (this.debouncedBqChange) {\n this.debouncedBqChange.cancel();\n }\n\n this.debouncedBqChange = debounce((event: Parameters<typeof this.debouncedBqChange>[0]) => {\n this.bqChange.emit(event);\n }, this.debounceTime);\n }\n\n @Watch('size')\n @Watch('value')\n @Watch('orientation')\n @Watch('placement')\n checkPropValues() {\n validatePropValue(TAB_SIZE, 'medium', this.el, 'size');\n validatePropValue(TAB_ORIENTATION, 'horizontal', this.el, 'orientation');\n validatePropValue(TAB_PLACEMENT, 'start', this.el, 'placement');\n\n this.bqTabElements.forEach((bqTabElement) => {\n bqTabElement.size = this.size;\n bqTabElement.orientation = this.orientation;\n bqTabElement.placement = this.placement;\n bqTabElement.active = !isNil(this.value) ? bqTabElement.tabId === this.value : false;\n });\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Handler to be called when the tab value changes */\n @Event() bqChange: EventEmitter<{ target: HTMLBqTabElement; value: string }>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.checkDebounceChange();\n this.checkPropValues();\n }\n\n componentDidLoad() {\n this.checkPropValues();\n }\n\n // Listeners\n // ==============\n\n @Listen('keyup', { target: 'body', passive: true, capture: true })\n onKeyUp(event: KeyboardEvent) {\n const { target } = event;\n if (!isHTMLElement(target, 'bq-tab')) return;\n\n this.makeTabsFocusable();\n }\n\n @Listen('bqClick', { passive: true })\n onBqClick(event: CustomEvent<HTMLBqTabElement>) {\n const { detail: target } = event;\n this.bqTabElements.forEach((bqTabElement) => {\n bqTabElement.active = bqTabElement === target;\n });\n this.debouncedBqChange({ value: target.tabId, target });\n this.selectTab(target);\n }\n\n @Listen('bqKeyDown', { passive: true })\n async onBqKeyDown(event: CustomEvent<KeyboardEvent>) {\n const { target } = event;\n\n // NOTE: ensures the target is an HTML element with the tag name 'bq-tab'\n if (!isHTMLElement(target, 'bq-tab')) return;\n\n const keyActions: { [key: string]: 'forward' | 'backward' } = {\n ArrowDown: 'forward',\n ArrowRight: 'forward',\n ArrowUp: 'backward',\n ArrowLeft: 'backward',\n };\n\n // NOTE: gets the direction based on key pressed\n const direction = keyActions[event.detail.key];\n\n if (!direction) return;\n\n await this.focusTabSibling(target, direction);\n }\n\n @Listen('bqBlur', { capture: true, passive: true })\n onBqBlur() {\n this.restoreTabsFocus();\n }\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private focusTabSibling = async (\n currentTarget: HTMLBqTabElement,\n direction: 'forward' | 'backward',\n ): Promise<void> => {\n let target: HTMLBqTabElement | null = null;\n\n this.bqTabElements.forEach((bqTabElement, index, elements) => {\n bqTabElement.active = false;\n\n if (bqTabElement === currentTarget) {\n target = getNextElement(elements, index, direction);\n }\n });\n\n if (target) {\n await target.vFocus();\n this.selectTab(target);\n }\n };\n\n private makeTabsFocusable = (): void => {\n this.bqTabElements.forEach((bqTabElement) => {\n if (bqTabElement.disabled) return;\n\n /**\n * This is a \"fire and forget\" operation. The callback itself doesn't do anything special\n * with the asynchronous code (doesn't await it or do anything with the result)\n * Details: https://stackoverflow.com/a/63488201\n */\n (async () => {\n await bqTabElement.enableFocus(true);\n })();\n });\n };\n\n private restoreTabsFocus = (): void => {\n this.bqTabElements.forEach((bqTabElement) => {\n if (bqTabElement.disabled || bqTabElement.active) return;\n\n /** @See line #173 */\n (async () => {\n await bqTabElement.enableFocus(false);\n })();\n });\n };\n\n private get bqTabElements(): HTMLBqTabElement[] {\n return Array.from(this.el.querySelectorAll('bq-tab'));\n }\n\n private selectTab = (target: HTMLBqTabElement): void => {\n const { tabId } = target;\n target.active = true;\n this.value = tabId;\n this.debouncedBqChange({ value: tabId, target });\n };\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <Host class={{ 'inline-block': this.orientation === 'vertical' }}>\n <div\n class={{\n [`bq-tab-group bq-tab-group--${this.orientation}-${this.placement} is-full flex`]: true,\n 'no-divider': this.disableDivider,\n }}\n part=\"base\"\n >\n <div\n class={{\n 'bq-tab-group--container flex overflow-x-auto': true,\n 'flex-col': this.orientation !== 'horizontal',\n }}\n part=\"tabs\"\n role=\"tablist\"\n >\n <slot />\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"names":["_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"bq-tab-group.entry.js","sources":["../../packages/beeq/src/components/tab-group/scss/bq-tab-group.scss?tag=bq-tab-group&encapsulation=shadow","../../packages/beeq/src/components/tab-group/bq-tab-group.tsx"],"sourcesContent":["/* -------------------------------------------------------------------------- */\n/* Tab styles */\n/* -------------------------------------------------------------------------- */\n\n:host {\n @apply block;\n}\n\n.bq-tab-group {\n @apply relative;\n\n &::after {\n @apply absolute flex border-0 border-solid border-primary content-empty;\n }\n\n &--horizontal-start,\n &--horizontal-end {\n &::after {\n @apply is-full inset-be-0 [border-block-end-width:--bq-stroke-s];\n }\n }\n\n &--horizontal-start {\n @apply justify-start;\n }\n\n &--horizontal-end {\n @apply justify-end;\n }\n\n &--vertical-start::after {\n @apply end-0 bs-full is-0 [border-block-end-width:0px] [border-inline-end-width:--bq-stroke-s];\n }\n\n &--vertical-end::after {\n @apply start-0 bs-full is-0 [border-block-end-width:0px] [border-inline-start-width:--bq-stroke-s];\n }\n}\n\n.bq-tab-group.no-divider {\n &::after {\n @apply content-none;\n }\n}\n\n.bq-tab-group--container {\n @include hide-scrollbar;\n @apply gap-xs2 p-xs2; // This will avoid cutting the outline focus style\n}\n","import type { EventEmitter } from '@stencil/core';\nimport { Component, Element, Event, Host, h, Listen, Prop, Watch } from '@stencil/core';\n\nimport { debounce, getNextElement, isHTMLElement, isNil, type TDebounce, validatePropValue } from '../../shared/utils';\nimport type { TTabOrientation, TTabPlacement, TTabSize } from '../tab/bq-tab.types';\nimport { TAB_ORIENTATION, TAB_PLACEMENT, TAB_SIZE } from '../tab/bq-tab.types';\n\n/**\n * The tab group is a user interface element that allows users wrap a set of tab items.\n *\n * @example How to use it\n * ```html\n * <bq-tab-group value=\"5\">\n * <bq-tab tab-id=\"1\">Tab</bq-tab>\n * <bq-tab tab-id=\"2\" active>Tab</bq-tab>\n * <bq-tab tab-id=\"3\">Long Tab name</bq-tab>\n * <bq-tab tab-id=\"4\" disabled>Tab</bq-tab>\n * </bq-tab-group>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/775321-tabs\n * @status stable\n *\n * @attr {number} debounce-time - A number representing the delay value applied to bqChange event handler\n * @attr {boolean} disable-divider - If true, the underline divider below the tabs won't be shown\n * @attr {string} orientation - The direction that tab should be render\n * @attr {string} placement - The placement that tab should be render\n * @attr {string} size - The size of the tab\n * @attr {string} value - A string representing the id of the selected tab.\n *\n * @event bqChange - Handler to be called when the tab value changes\n *\n * @slot - The bq-tab items\n *\n * @part base - The HTML div wrapper inside the shadow DOM.\n * @part tabs - The HTML div used to hold the tab buttons.\n */\n@Component({\n tag: 'bq-tab-group',\n styleUrl: './scss/bq-tab-group.scss',\n shadow: true,\n})\nexport class BqTabGroup {\n // Own Properties\n // ====================\n\n private debouncedBqChange: TDebounce<{ value: string; target: HTMLBqTabElement }>;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqTabGroupElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n // Public Property API\n // ========================\n\n /** A number representing the delay value applied to bqChange event handler */\n @Prop({ reflect: true, mutable: true }) debounceTime = 0;\n\n /** If true, the underline divider below the tabs won't be shown */\n @Prop({ reflect: true }) disableDivider = false;\n\n /** The direction that tab should be render */\n @Prop({ reflect: true }) orientation?: TTabOrientation = 'horizontal';\n\n /** The placement that tab should be render */\n @Prop({ reflect: true }) placement?: TTabPlacement = 'start';\n\n /** The size of the tab */\n @Prop({ reflect: true }) size: TTabSize = 'medium';\n\n /** A string representing the id of the selected tab. */\n @Prop({ reflect: true, mutable: true }) value: string;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('debounceTime')\n checkDebounceChange() {\n if (this.debounceTime < 0) {\n this.debounceTime = Math.max(0, this.debounceTime);\n }\n\n if (this.debouncedBqChange) {\n this.debouncedBqChange.cancel();\n }\n\n this.debouncedBqChange = debounce((event: Parameters<typeof this.debouncedBqChange>[0]) => {\n this.bqChange.emit(event);\n }, this.debounceTime);\n }\n\n @Watch('size')\n @Watch('value')\n @Watch('orientation')\n @Watch('placement')\n checkPropValues() {\n validatePropValue(TAB_SIZE, 'medium', this.el, 'size');\n validatePropValue(TAB_ORIENTATION, 'horizontal', this.el, 'orientation');\n validatePropValue(TAB_PLACEMENT, 'start', this.el, 'placement');\n\n this.bqTabElements.forEach((bqTabElement) => {\n bqTabElement.size = this.size;\n bqTabElement.orientation = this.orientation;\n bqTabElement.placement = this.placement;\n bqTabElement.active = !isNil(this.value) ? bqTabElement.tabId === this.value : false;\n });\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Handler to be called when the tab value changes */\n @Event() bqChange: EventEmitter<{ target: HTMLBqTabElement; value: string }>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.checkDebounceChange();\n this.checkPropValues();\n }\n\n componentDidLoad() {\n this.checkPropValues();\n }\n\n // Listeners\n // ==============\n\n @Listen('keyup', { target: 'body', passive: true, capture: true })\n onKeyUp(event: KeyboardEvent) {\n const { target } = event;\n if (!isHTMLElement(target, 'bq-tab')) return;\n\n this.makeTabsFocusable();\n }\n\n @Listen('bqClick', { passive: true })\n onBqClick(event: CustomEvent<HTMLBqTabElement>) {\n const { detail: target } = event;\n this.bqTabElements.forEach((bqTabElement) => {\n bqTabElement.active = bqTabElement === target;\n });\n this.debouncedBqChange({ value: target.tabId, target });\n this.selectTab(target);\n }\n\n @Listen('bqKeyDown', { passive: true })\n async onBqKeyDown(event: CustomEvent<KeyboardEvent>) {\n const { target } = event;\n\n // NOTE: ensures the target is an HTML element with the tag name 'bq-tab'\n if (!isHTMLElement(target, 'bq-tab')) return;\n\n const keyActions: { [key: string]: 'forward' | 'backward' } = {\n ArrowDown: 'forward',\n ArrowRight: 'forward',\n ArrowUp: 'backward',\n ArrowLeft: 'backward',\n };\n\n // NOTE: gets the direction based on key pressed\n const direction = keyActions[event.detail.key];\n\n if (!direction) return;\n\n await this.focusTabSibling(target, direction);\n }\n\n @Listen('bqBlur', { capture: true, passive: true })\n onBqBlur() {\n this.restoreTabsFocus();\n }\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private focusTabSibling = async (\n currentTarget: HTMLBqTabElement,\n direction: 'forward' | 'backward',\n ): Promise<void> => {\n let target: HTMLBqTabElement | null = null;\n\n this.bqTabElements.forEach((bqTabElement, index, elements) => {\n bqTabElement.active = false;\n\n if (bqTabElement === currentTarget) {\n target = getNextElement(elements, index, direction);\n }\n });\n\n if (target) {\n await target.vFocus();\n this.selectTab(target);\n }\n };\n\n private makeTabsFocusable = (): void => {\n this.bqTabElements.forEach((bqTabElement) => {\n if (bqTabElement.disabled) return;\n\n /**\n * This is a \"fire and forget\" operation. The callback itself doesn't do anything special\n * with the asynchronous code (doesn't await it or do anything with the result)\n * Details: https://stackoverflow.com/a/63488201\n */\n (async () => {\n await bqTabElement.enableFocus(true);\n })();\n });\n };\n\n private restoreTabsFocus = (): void => {\n this.bqTabElements.forEach((bqTabElement) => {\n if (bqTabElement.disabled || bqTabElement.active) return;\n\n /** @See line #173 */\n (async () => {\n await bqTabElement.enableFocus(false);\n })();\n });\n };\n\n private get bqTabElements(): HTMLBqTabElement[] {\n return Array.from(this.el.querySelectorAll('bq-tab'));\n }\n\n private selectTab = (target: HTMLBqTabElement): void => {\n const { tabId } = target;\n target.active = true;\n this.value = tabId;\n this.debouncedBqChange({ value: tabId, target });\n };\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <Host class={{ 'inline-block': this.orientation === 'vertical' }}>\n <div\n class={{\n [`bq-tab-group bq-tab-group--${this.orientation}-${this.placement} is-full flex`]: true,\n 'no-divider': this.disableDivider,\n }}\n part=\"base\"\n >\n <div\n class={{\n 'bq-tab-group--container flex overflow-x-auto': true,\n 'flex-col': this.orientation !== 'horizontal',\n }}\n part=\"tabs\"\n role=\"tablist\"\n >\n <slot />\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}