@beeq/core 1.12.3 → 1.12.4-beta.2

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 (465) hide show
  1. package/dist/beeq/beeq.css +1 -1
  2. package/dist/beeq/beeq.esm.js +1 -1
  3. package/dist/beeq/beeq.esm.js.map +1 -1
  4. package/dist/beeq/index.esm.js.map +1 -1
  5. package/dist/beeq/{p-42f99ec4.entry.js → p-000d575f.entry.js} +2 -2
  6. package/dist/beeq/p-000d575f.entry.js.map +1 -0
  7. package/dist/beeq/{p-5457ebe7.entry.js → p-050c757b.entry.js} +2 -2
  8. package/dist/beeq/{p-5457ebe7.entry.js.map → p-050c757b.entry.js.map} +1 -1
  9. package/dist/beeq/{p-4db3ffaa.entry.js → p-07172ac5.entry.js} +2 -2
  10. package/dist/beeq/{p-4db3ffaa.entry.js.map → p-07172ac5.entry.js.map} +1 -1
  11. package/dist/beeq/{p-70129a03.entry.js → p-1a4af63c.entry.js} +2 -2
  12. package/dist/beeq/{p-70129a03.entry.js.map → p-1a4af63c.entry.js.map} +1 -1
  13. package/dist/beeq/{p-e942f0b7.entry.js → p-1a7d1d85.entry.js} +2 -2
  14. package/dist/beeq/{p-e942f0b7.entry.js.map → p-1a7d1d85.entry.js.map} +1 -1
  15. package/dist/beeq/{p-d8392d71.entry.js → p-1ad4561f.entry.js} +2 -2
  16. package/dist/beeq/{p-d8392d71.entry.js.map → p-1ad4561f.entry.js.map} +1 -1
  17. package/dist/beeq/{p-cd6e4ee0.entry.js → p-1f16f97f.entry.js} +2 -2
  18. package/dist/beeq/{p-cd6e4ee0.entry.js.map → p-1f16f97f.entry.js.map} +1 -1
  19. package/dist/beeq/{p-55f5d241.entry.js → p-1fb43de2.entry.js} +2 -2
  20. package/dist/beeq/{p-55f5d241.entry.js.map → p-1fb43de2.entry.js.map} +1 -1
  21. package/dist/beeq/{p-ca5a4a52.entry.js → p-2c823175.entry.js} +2 -2
  22. package/dist/beeq/{p-d2bf32a5.entry.js → p-3bee1dda.entry.js} +2 -2
  23. package/dist/beeq/p-3bee1dda.entry.js.map +1 -0
  24. package/dist/beeq/{p-b69da6be.entry.js → p-3c77308c.entry.js} +2 -2
  25. package/dist/beeq/{p-b69da6be.entry.js.map → p-3c77308c.entry.js.map} +1 -1
  26. package/dist/beeq/p-40163197.entry.js +6 -0
  27. package/dist/beeq/p-40163197.entry.js.map +1 -0
  28. package/dist/beeq/{p-8e330c1e.entry.js → p-45a56399.entry.js} +2 -2
  29. package/dist/beeq/{p-8e330c1e.entry.js.map → p-45a56399.entry.js.map} +1 -1
  30. package/dist/beeq/{p-22c78250.entry.js → p-4d863871.entry.js} +2 -2
  31. package/dist/beeq/{p-22c78250.entry.js.map → p-4d863871.entry.js.map} +1 -1
  32. package/dist/beeq/{p-5ca3316e.entry.js → p-5240a62a.entry.js} +2 -2
  33. package/dist/beeq/{p-5ca3316e.entry.js.map → p-5240a62a.entry.js.map} +1 -1
  34. package/dist/beeq/{p-9cbc5e5a.entry.js → p-654c7701.entry.js} +2 -2
  35. package/dist/beeq/{p-9cbc5e5a.entry.js.map → p-654c7701.entry.js.map} +1 -1
  36. package/dist/beeq/{p-31719229.entry.js → p-71001d9a.entry.js} +2 -2
  37. package/dist/beeq/{p-31719229.entry.js.map → p-71001d9a.entry.js.map} +1 -1
  38. package/dist/beeq/{p-bbda98b4.entry.js → p-7c4e8101.entry.js} +2 -2
  39. package/dist/beeq/{p-bbda98b4.entry.js.map → p-7c4e8101.entry.js.map} +1 -1
  40. package/dist/beeq/{p-038d9bc4.entry.js → p-7e70e39b.entry.js} +2 -2
  41. package/dist/beeq/{p-038d9bc4.entry.js.map → p-7e70e39b.entry.js.map} +1 -1
  42. package/dist/beeq/{p-648be77e.entry.js → p-8035caf4.entry.js} +2 -2
  43. package/dist/beeq/{p-648be77e.entry.js.map → p-8035caf4.entry.js.map} +1 -1
  44. package/dist/beeq/{p-f34cd07f.entry.js → p-804c22d6.entry.js} +2 -2
  45. package/dist/beeq/{p-f34cd07f.entry.js.map → p-804c22d6.entry.js.map} +1 -1
  46. package/dist/beeq/{p-c5dbc787.entry.js → p-8dfd0329.entry.js} +2 -2
  47. package/dist/beeq/{p-c5dbc787.entry.js.map → p-8dfd0329.entry.js.map} +1 -1
  48. package/dist/beeq/{p-ded7a5f7.entry.js → p-94468a51.entry.js} +2 -2
  49. package/dist/beeq/{p-ded7a5f7.entry.js.map → p-94468a51.entry.js.map} +1 -1
  50. package/dist/beeq/{p-8827075b.entry.js → p-97d8f052.entry.js} +2 -2
  51. package/dist/beeq/p-97d8f052.entry.js.map +1 -0
  52. package/dist/beeq/{p-73684bb1.entry.js → p-9843a419.entry.js} +2 -2
  53. package/dist/beeq/{p-73684bb1.entry.js.map → p-9843a419.entry.js.map} +1 -1
  54. package/dist/beeq/p-BNvWMggA.js.map +1 -1
  55. package/dist/beeq/p-BRMw_HGf.js.map +1 -1
  56. package/dist/beeq/p-BRbYDZoo.js.map +1 -1
  57. package/dist/beeq/p-BcPwGxIn.js.map +1 -1
  58. package/dist/beeq/p-BsSDkLU5.js.map +1 -1
  59. package/dist/beeq/p-CCNjsDdb.js.map +1 -1
  60. package/dist/beeq/{p-B6Fb5jZ3.js → p-CO2T68hs.js} +3 -3
  61. package/dist/beeq/p-CO2T68hs.js.map +1 -0
  62. package/dist/beeq/p-CSAZnAFf.js +6 -0
  63. package/dist/beeq/p-CSAZnAFf.js.map +1 -0
  64. package/dist/beeq/p-Cau9SvT4.js.map +1 -1
  65. package/dist/beeq/p-CpKQ7XUL.js.map +1 -1
  66. package/dist/beeq/p-DdvbF5yL.js.map +1 -1
  67. package/dist/beeq/p-DnkZCdMA.js.map +1 -1
  68. package/dist/beeq/p-Ds7rcaFH.js.map +1 -1
  69. package/dist/beeq/p-_RvVpeh2.js.map +1 -1
  70. package/dist/beeq/{p-9fb4173e.entry.js → p-a71efa95.entry.js} +2 -2
  71. package/dist/beeq/{p-9fb4173e.entry.js.map → p-a71efa95.entry.js.map} +1 -1
  72. package/dist/beeq/{p-fbfb605d.entry.js → p-ad419446.entry.js} +2 -2
  73. package/dist/beeq/p-ad419446.entry.js.map +1 -0
  74. package/dist/beeq/{p-c97ac5b8.entry.js → p-b0a15420.entry.js} +2 -2
  75. package/dist/beeq/{p-c97ac5b8.entry.js.map → p-b0a15420.entry.js.map} +1 -1
  76. package/dist/beeq/{p-db100fa9.entry.js → p-c33f1043.entry.js} +2 -2
  77. package/dist/beeq/{p-db100fa9.entry.js.map → p-c33f1043.entry.js.map} +1 -1
  78. package/dist/beeq/{p-20e8bc04.entry.js → p-c67109c1.entry.js} +2 -2
  79. package/dist/beeq/{p-20e8bc04.entry.js.map → p-c67109c1.entry.js.map} +1 -1
  80. package/dist/beeq/{p-617e5993.entry.js → p-d0ccd4ae.entry.js} +2 -2
  81. package/dist/beeq/{p-617e5993.entry.js.map → p-d0ccd4ae.entry.js.map} +1 -1
  82. package/dist/beeq/{p-8928375e.entry.js → p-dc1f9be2.entry.js} +2 -2
  83. package/dist/beeq/{p-1c1ee013.entry.js → p-e1319c86.entry.js} +2 -2
  84. package/dist/beeq/{p-1c1ee013.entry.js.map → p-e1319c86.entry.js.map} +1 -1
  85. package/dist/beeq/{p-2201ab1a.entry.js → p-e366fc1b.entry.js} +2 -2
  86. package/dist/beeq/{p-fd91cc6b.entry.js → p-e794846c.entry.js} +2 -2
  87. package/dist/beeq/{p-fd91cc6b.entry.js.map → p-e794846c.entry.js.map} +1 -1
  88. package/dist/beeq/{p-eb128f48.entry.js → p-e9535627.entry.js} +2 -2
  89. package/dist/beeq/{p-eb128f48.entry.js.map → p-e9535627.entry.js.map} +1 -1
  90. package/dist/beeq/{p-78c43b87.entry.js → p-ea473f56.entry.js} +2 -2
  91. package/dist/beeq/{p-78c43b87.entry.js.map → p-ea473f56.entry.js.map} +1 -1
  92. package/dist/beeq/{p-f9db00e0.entry.js → p-f0819693.entry.js} +2 -2
  93. package/dist/beeq/{p-f9db00e0.entry.js.map → p-f0819693.entry.js.map} +1 -1
  94. package/dist/beeq/{p-ce62c276.entry.js → p-f47905ae.entry.js} +2 -2
  95. package/dist/beeq/{p-ce62c276.entry.js.map → p-f47905ae.entry.js.map} +1 -1
  96. package/dist/beeq/p-lysmVw2n.js.map +1 -1
  97. package/dist/beeq/p-uqkxeAeG.js.map +1 -1
  98. package/dist/beeq/p-zh4P02Kn.js.map +1 -1
  99. package/dist/beeq.html-custom-data.json +61 -61
  100. package/dist/cjs/assetsPath-pf4usGy6.js.map +1 -1
  101. package/dist/cjs/beeq.cjs.js +3 -3
  102. package/dist/cjs/beeq.cjs.js.map +1 -1
  103. package/dist/cjs/bq-accordion-group.cjs.entry.js +2 -2
  104. package/dist/cjs/bq-accordion-group.cjs.entry.js.map +1 -1
  105. package/dist/cjs/bq-accordion.cjs.entry.js +2 -2
  106. package/dist/cjs/bq-accordion.cjs.entry.js.map +1 -1
  107. package/dist/cjs/bq-alert.cjs.entry.js +1 -1
  108. package/dist/cjs/bq-alert.cjs.entry.js.map +1 -1
  109. package/dist/cjs/bq-avatar.cjs.entry.js +1 -1
  110. package/dist/cjs/bq-avatar.cjs.entry.js.map +1 -1
  111. package/dist/cjs/bq-badge.cjs.entry.js +1 -1
  112. package/dist/cjs/bq-badge.cjs.entry.js.map +1 -1
  113. package/dist/cjs/bq-breadcrumb-item.cjs.entry.js +1 -1
  114. package/dist/cjs/bq-breadcrumb.cjs.entry.js +1 -1
  115. package/dist/cjs/bq-breadcrumb.cjs.entry.js.map +1 -1
  116. package/dist/cjs/bq-button_2.cjs.entry.js +1 -1
  117. package/dist/cjs/bq-button_2.cjs.entry.js.map +1 -1
  118. package/dist/cjs/bq-card.cjs.entry.js +1 -1
  119. package/dist/cjs/bq-card.cjs.entry.js.map +1 -1
  120. package/dist/cjs/bq-checkbox.cjs.entry.js +1 -1
  121. package/dist/cjs/bq-checkbox.cjs.entry.js.map +1 -1
  122. package/dist/cjs/bq-date-picker.cjs.entry.js +2 -2
  123. package/dist/cjs/bq-date-picker.cjs.entry.js.map +1 -1
  124. package/dist/cjs/bq-dialog.cjs.entry.js +1 -1
  125. package/dist/cjs/bq-dialog.cjs.entry.js.map +1 -1
  126. package/dist/cjs/bq-divider.cjs.entry.js +1 -1
  127. package/dist/cjs/bq-divider.cjs.entry.js.map +1 -1
  128. package/dist/cjs/bq-drawer.cjs.entry.js +2 -2
  129. package/dist/cjs/bq-drawer.cjs.entry.js.map +1 -1
  130. package/dist/cjs/bq-dropdown_2.cjs.entry.js +2 -2
  131. package/dist/cjs/bq-dropdown_2.cjs.entry.js.map +1 -1
  132. package/dist/cjs/bq-empty-state.cjs.entry.js +1 -1
  133. package/dist/cjs/bq-empty-state.cjs.entry.js.map +1 -1
  134. package/dist/cjs/bq-input.cjs.entry.js +1 -1
  135. package/dist/cjs/bq-input.cjs.entry.js.map +1 -1
  136. package/dist/cjs/bq-notification.cjs.entry.js +1 -1
  137. package/dist/cjs/bq-notification.cjs.entry.js.map +1 -1
  138. package/dist/cjs/bq-option-group.cjs.entry.js +1 -1
  139. package/dist/cjs/bq-option-group.cjs.entry.js.map +1 -1
  140. package/dist/cjs/bq-option-list_2.cjs.entry.js +5 -5
  141. package/dist/cjs/bq-option-list_2.cjs.entry.js.map +1 -1
  142. package/dist/cjs/bq-option.cjs.entry.js +1 -1
  143. package/dist/cjs/bq-option.cjs.entry.js.map +1 -1
  144. package/dist/cjs/bq-page-title.cjs.entry.js +1 -1
  145. package/dist/cjs/bq-page-title.cjs.entry.js.map +1 -1
  146. package/dist/cjs/bq-progress.cjs.entry.js +1 -1
  147. package/dist/cjs/bq-progress.cjs.entry.js.map +1 -1
  148. package/dist/cjs/bq-radio-group.cjs.entry.js +1 -1
  149. package/dist/cjs/bq-radio-group.cjs.entry.js.map +1 -1
  150. package/dist/cjs/bq-radio.cjs.entry.js +1 -1
  151. package/dist/cjs/bq-radio.cjs.entry.js.map +1 -1
  152. package/dist/cjs/bq-select.cjs.entry.js +2 -2
  153. package/dist/cjs/bq-select.cjs.entry.js.map +1 -1
  154. package/dist/cjs/bq-side-menu-item.cjs.entry.js +2 -2
  155. package/dist/cjs/bq-side-menu-item.cjs.entry.js.map +1 -1
  156. package/dist/cjs/bq-side-menu.cjs.entry.js +4 -4
  157. package/dist/cjs/bq-side-menu.cjs.entry.js.map +1 -1
  158. package/dist/cjs/bq-slider.cjs.entry.js +1 -1
  159. package/dist/cjs/bq-slider.cjs.entry.js.map +1 -1
  160. package/dist/cjs/bq-spinner.cjs.entry.js +1 -1
  161. package/dist/cjs/bq-spinner.cjs.entry.js.map +1 -1
  162. package/dist/cjs/bq-status.cjs.entry.js +1 -1
  163. package/dist/cjs/bq-status.cjs.entry.js.map +1 -1
  164. package/dist/cjs/bq-step-item.cjs.entry.js +1 -1
  165. package/dist/cjs/bq-step-item.cjs.entry.js.map +1 -1
  166. package/dist/cjs/bq-steps.cjs.entry.js +1 -1
  167. package/dist/cjs/bq-steps.cjs.entry.js.map +1 -1
  168. package/dist/cjs/bq-steps.types-BvbHJAPO.js.map +1 -1
  169. package/dist/cjs/bq-switch.cjs.entry.js +9 -20
  170. package/dist/cjs/bq-switch.cjs.entry.js.map +1 -1
  171. package/dist/cjs/bq-tab-group.cjs.entry.js +4 -4
  172. package/dist/cjs/bq-tab.cjs.entry.js +4 -4
  173. package/dist/cjs/bq-tab.cjs.entry.js.map +1 -1
  174. package/dist/cjs/bq-tab.types-EbesjHYK.js.map +1 -1
  175. package/dist/cjs/bq-textarea.cjs.entry.js +6 -6
  176. package/dist/cjs/bq-textarea.cjs.entry.js.map +1 -1
  177. package/dist/cjs/bq-toast.cjs.entry.js +2 -2
  178. package/dist/cjs/bq-toast.cjs.entry.js.map +1 -1
  179. package/dist/cjs/bq-tooltip.cjs.entry.js +7 -7
  180. package/dist/cjs/bq-tooltip.cjs.entry.js.map +1 -1
  181. package/dist/cjs/clamp-CceB5h7D.js.map +1 -1
  182. package/dist/cjs/cssVariables-exM7Oz37.js.map +1 -1
  183. package/dist/cjs/form-COLxwVaW.js.map +1 -1
  184. package/dist/cjs/getNextElement-Bcdj4jIn.js.map +1 -1
  185. package/dist/cjs/{index-Cs3Q5RMj.js → index-BSrsKFVG.js} +119 -83
  186. package/dist/cjs/index-BSrsKFVG.js.map +1 -0
  187. package/dist/cjs/{index-CxAIhsq5.js → index-CfLTYjba.js} +75 -67
  188. package/dist/cjs/index-CfLTYjba.js.map +1 -0
  189. package/dist/cjs/index.cjs.js.map +1 -1
  190. package/dist/cjs/isDefined-D24L82z9.js.map +1 -1
  191. package/dist/cjs/isNil-CFhdj92S.js.map +1 -1
  192. package/dist/cjs/isString-CA9m1aBg.js.map +1 -1
  193. package/dist/cjs/loader.cjs.js +2 -2
  194. package/dist/cjs/props-DzFXZXSF.js.map +1 -1
  195. package/dist/cjs/scrollLock-OTzU3x3y.js.map +1 -1
  196. package/dist/cjs/slot-DKWrtk4b.js.map +1 -1
  197. package/dist/cjs/stringToArray-B747BpEA.js.map +1 -1
  198. package/dist/cjs/transition-C0S-pYqN.js.map +1 -1
  199. package/dist/collection/collection-manifest.json +2 -1
  200. package/dist/collection/components/accordion/scss/bq-accordion.css +1 -1
  201. package/dist/collection/components/accordion-group/scss/bq-accordion-group.css +1 -1
  202. package/dist/collection/components/date-picker/libs/callyLibrary.js +1 -1
  203. package/dist/collection/components/date-picker/libs/callyLibrary.js.map +1 -1
  204. package/dist/collection/components/date-picker/scss/bq-date-picker.css +1 -1
  205. package/dist/collection/components/drawer/scss/bq-drawer.css +1 -1
  206. package/dist/collection/components/select/bq-select.js +2 -2
  207. package/dist/collection/components/select/scss/bq-select.css +1 -1
  208. package/dist/collection/components/side-menu/bq-side-menu.js +2 -2
  209. package/dist/collection/components/side-menu/bq-side-menu.js.map +1 -1
  210. package/dist/collection/components/side-menu/scss/bq-side-menu.css +1 -1
  211. package/dist/collection/components/side-menu-item/scss/bq-side-menu-item.css +1 -1
  212. package/dist/collection/components/switch/bq-switch.js +9 -18
  213. package/dist/collection/components/switch/bq-switch.js.map +1 -1
  214. package/dist/collection/components/switch/scss/bq-switch.css +1 -1
  215. package/dist/collection/components/tab/bq-tab.js +3 -3
  216. package/dist/collection/components/tab-group/bq-tab-group.js +3 -3
  217. package/dist/collection/components/tag/bq-tag.js +4 -4
  218. package/dist/collection/components/textarea/bq-textarea.js +5 -5
  219. package/dist/collection/components/toast/bq-toast.js +1 -1
  220. package/dist/collection/components/tooltip/bq-tooltip.js +6 -6
  221. package/dist/collection/components/tooltip/bq-tooltip.js.map +1 -1
  222. package/dist/collection/services/interfaces/floating-ui.js.map +1 -1
  223. package/dist/collection/services/libraries/floating-ui/index.js +1 -1
  224. package/dist/collection/services/libraries/floating-ui/index.js.map +1 -1
  225. package/dist/collection/shared/utils/date/dateFormatting.js +1 -1
  226. package/dist/collection/shared/utils/date/dateFormatting.js.map +1 -1
  227. package/dist/collection/shared/utils/date/dateParsing.js +1 -1
  228. package/dist/collection/shared/utils/date/dateParsing.js.map +1 -1
  229. package/dist/collection/shared/utils/form.js.map +1 -1
  230. package/dist/components/bq-accordion-group.js +1 -1
  231. package/dist/components/bq-accordion-group.js.map +1 -1
  232. package/dist/components/bq-accordion.js +1 -1
  233. package/dist/components/bq-accordion.js.map +1 -1
  234. package/dist/components/bq-alert.js +1 -1
  235. package/dist/components/bq-alert.js.map +1 -1
  236. package/dist/components/bq-avatar.js +1 -1
  237. package/dist/components/bq-badge.js +1 -1
  238. package/dist/components/bq-breadcrumb-item.js +1 -1
  239. package/dist/components/bq-breadcrumb.js +1 -1
  240. package/dist/components/bq-breadcrumb.js.map +1 -1
  241. package/dist/components/bq-button.js +1 -1
  242. package/dist/components/bq-card.js +1 -1
  243. package/dist/components/bq-card.js.map +1 -1
  244. package/dist/components/bq-checkbox.js +1 -1
  245. package/dist/components/bq-checkbox.js.map +1 -1
  246. package/dist/components/bq-date-picker.js +1 -1
  247. package/dist/components/bq-date-picker.js.map +1 -1
  248. package/dist/components/bq-dialog.js +1 -1
  249. package/dist/components/bq-dialog.js.map +1 -1
  250. package/dist/components/bq-divider.js +1 -1
  251. package/dist/components/bq-drawer.js +1 -1
  252. package/dist/components/bq-drawer.js.map +1 -1
  253. package/dist/components/bq-dropdown.js +1 -1
  254. package/dist/components/bq-empty-state.js +1 -1
  255. package/dist/components/bq-empty-state.js.map +1 -1
  256. package/dist/components/bq-icon.js +1 -1
  257. package/dist/components/bq-input.js +1 -1
  258. package/dist/components/bq-input.js.map +1 -1
  259. package/dist/components/bq-notification.js +1 -1
  260. package/dist/components/bq-notification.js.map +1 -1
  261. package/dist/components/bq-option-group.js +1 -1
  262. package/dist/components/bq-option-group.js.map +1 -1
  263. package/dist/components/bq-option-list.js +1 -1
  264. package/dist/components/bq-option.js +1 -1
  265. package/dist/components/bq-option.js.map +1 -1
  266. package/dist/components/bq-page-title.js +1 -1
  267. package/dist/components/bq-page-title.js.map +1 -1
  268. package/dist/components/bq-panel.js +1 -1
  269. package/dist/components/bq-progress.js +1 -1
  270. package/dist/components/bq-progress.js.map +1 -1
  271. package/dist/components/bq-radio-group.js +1 -1
  272. package/dist/components/bq-radio-group.js.map +1 -1
  273. package/dist/components/bq-radio.js +1 -1
  274. package/dist/components/bq-radio.js.map +1 -1
  275. package/dist/components/bq-select.js +1 -1
  276. package/dist/components/bq-select.js.map +1 -1
  277. package/dist/components/bq-side-menu-item.js +1 -1
  278. package/dist/components/bq-side-menu-item.js.map +1 -1
  279. package/dist/components/bq-side-menu.js +1 -1
  280. package/dist/components/bq-side-menu.js.map +1 -1
  281. package/dist/components/bq-slider.js +1 -1
  282. package/dist/components/bq-slider.js.map +1 -1
  283. package/dist/components/bq-spinner.js +1 -1
  284. package/dist/components/bq-spinner.js.map +1 -1
  285. package/dist/components/bq-status.js +1 -1
  286. package/dist/components/bq-status.js.map +1 -1
  287. package/dist/components/bq-step-item.js +1 -1
  288. package/dist/components/bq-step-item.js.map +1 -1
  289. package/dist/components/bq-steps.js +1 -1
  290. package/dist/components/bq-steps.js.map +1 -1
  291. package/dist/components/bq-switch.js +1 -1
  292. package/dist/components/bq-switch.js.map +1 -1
  293. package/dist/components/bq-tab-group.js +1 -1
  294. package/dist/components/bq-tab.js +1 -1
  295. package/dist/components/bq-tab.js.map +1 -1
  296. package/dist/components/bq-tag.js +1 -1
  297. package/dist/components/bq-textarea.js +1 -1
  298. package/dist/components/bq-textarea.js.map +1 -1
  299. package/dist/components/bq-toast.js +1 -1
  300. package/dist/components/bq-toast.js.map +1 -1
  301. package/dist/components/bq-tooltip.js +1 -1
  302. package/dist/components/index.js +1 -1
  303. package/dist/components/index.js.map +1 -1
  304. package/dist/components/{p-CgQKEGrx.js → p-Al4yCjHm.js} +2 -2
  305. package/dist/components/{p-CgQKEGrx.js.map → p-Al4yCjHm.js.map} +1 -1
  306. package/dist/components/p-BRMw_HGf.js.map +1 -1
  307. package/dist/components/p-BRbYDZoo.js.map +1 -1
  308. package/dist/components/{p-HTXWhty1.js → p-BY4GkNoQ.js} +2 -2
  309. package/dist/components/{p-HTXWhty1.js.map → p-BY4GkNoQ.js.map} +1 -1
  310. package/dist/components/p-BcPwGxIn.js.map +1 -1
  311. package/dist/components/{p-DKNWDjsW.js → p-C2aEwRoD.js} +2 -2
  312. package/dist/components/{p-DKNWDjsW.js.map → p-C2aEwRoD.js.map} +1 -1
  313. package/dist/components/p-CSAZnAFf.js +6 -0
  314. package/dist/components/p-CSAZnAFf.js.map +1 -0
  315. package/dist/components/{p-Mc67bTfs.js → p-D3RCJ1ti.js} +2 -2
  316. package/dist/components/{p-Mc67bTfs.js.map → p-D3RCJ1ti.js.map} +1 -1
  317. package/dist/components/{p-sARU_ILE.js → p-DRfB-NVC.js} +2 -2
  318. package/dist/components/{p-sARU_ILE.js.map → p-DRfB-NVC.js.map} +1 -1
  319. package/dist/components/p-DnkZCdMA.js.map +1 -1
  320. package/dist/components/{p-C7WSlvNM.js → p-DnqmdkvK.js} +2 -2
  321. package/dist/components/{p-C7WSlvNM.js.map → p-DnqmdkvK.js.map} +1 -1
  322. package/dist/components/{p-CPvi2234.js → p-L_rr8STP.js} +2 -2
  323. package/dist/components/{p-CPvi2234.js.map → p-L_rr8STP.js.map} +1 -1
  324. package/dist/components/{p-QKKYeTea.js → p-P-In5Xk5.js} +2 -2
  325. package/dist/components/{p-QKKYeTea.js.map → p-P-In5Xk5.js.map} +1 -1
  326. package/dist/components/p-YjPwN7vu.js +6 -0
  327. package/dist/components/p-YjPwN7vu.js.map +1 -0
  328. package/dist/components/p-_RvVpeh2.js.map +1 -1
  329. package/dist/components/{p-B4tGTtm-.js → p-fdkSHq2G.js} +2 -2
  330. package/dist/components/{p-B4tGTtm-.js.map → p-fdkSHq2G.js.map} +1 -1
  331. package/dist/components/p-lysmVw2n.js.map +1 -1
  332. package/dist/components/p-uqkxeAeG.js.map +1 -1
  333. package/dist/custom-elements.json +753 -753
  334. package/dist/esm/assetsPath-CJqXJ_hN.js.map +1 -1
  335. package/dist/esm/beeq.js +4 -4
  336. package/dist/esm/beeq.js.map +1 -1
  337. package/dist/esm/bq-accordion-group.entry.js +2 -2
  338. package/dist/esm/bq-accordion-group.entry.js.map +1 -1
  339. package/dist/esm/bq-accordion.entry.js +2 -2
  340. package/dist/esm/bq-accordion.entry.js.map +1 -1
  341. package/dist/esm/bq-alert.entry.js +1 -1
  342. package/dist/esm/bq-alert.entry.js.map +1 -1
  343. package/dist/esm/bq-avatar.entry.js +1 -1
  344. package/dist/esm/bq-avatar.entry.js.map +1 -1
  345. package/dist/esm/bq-badge.entry.js +1 -1
  346. package/dist/esm/bq-badge.entry.js.map +1 -1
  347. package/dist/esm/bq-breadcrumb-item.entry.js +1 -1
  348. package/dist/esm/bq-breadcrumb.entry.js +1 -1
  349. package/dist/esm/bq-breadcrumb.entry.js.map +1 -1
  350. package/dist/esm/bq-button_2.entry.js +1 -1
  351. package/dist/esm/bq-button_2.entry.js.map +1 -1
  352. package/dist/esm/bq-card.entry.js +1 -1
  353. package/dist/esm/bq-card.entry.js.map +1 -1
  354. package/dist/esm/bq-checkbox.entry.js +1 -1
  355. package/dist/esm/bq-checkbox.entry.js.map +1 -1
  356. package/dist/esm/bq-date-picker.entry.js +2 -2
  357. package/dist/esm/bq-date-picker.entry.js.map +1 -1
  358. package/dist/esm/bq-dialog.entry.js +1 -1
  359. package/dist/esm/bq-dialog.entry.js.map +1 -1
  360. package/dist/esm/bq-divider.entry.js +1 -1
  361. package/dist/esm/bq-divider.entry.js.map +1 -1
  362. package/dist/esm/bq-drawer.entry.js +2 -2
  363. package/dist/esm/bq-drawer.entry.js.map +1 -1
  364. package/dist/esm/bq-dropdown_2.entry.js +2 -2
  365. package/dist/esm/bq-dropdown_2.entry.js.map +1 -1
  366. package/dist/esm/bq-empty-state.entry.js +1 -1
  367. package/dist/esm/bq-empty-state.entry.js.map +1 -1
  368. package/dist/esm/bq-input.entry.js +1 -1
  369. package/dist/esm/bq-input.entry.js.map +1 -1
  370. package/dist/esm/bq-notification.entry.js +1 -1
  371. package/dist/esm/bq-notification.entry.js.map +1 -1
  372. package/dist/esm/bq-option-group.entry.js +1 -1
  373. package/dist/esm/bq-option-group.entry.js.map +1 -1
  374. package/dist/esm/bq-option-list_2.entry.js +5 -5
  375. package/dist/esm/bq-option-list_2.entry.js.map +1 -1
  376. package/dist/esm/bq-option.entry.js +1 -1
  377. package/dist/esm/bq-option.entry.js.map +1 -1
  378. package/dist/esm/bq-page-title.entry.js +1 -1
  379. package/dist/esm/bq-page-title.entry.js.map +1 -1
  380. package/dist/esm/bq-progress.entry.js +1 -1
  381. package/dist/esm/bq-progress.entry.js.map +1 -1
  382. package/dist/esm/bq-radio-group.entry.js +1 -1
  383. package/dist/esm/bq-radio-group.entry.js.map +1 -1
  384. package/dist/esm/bq-radio.entry.js +1 -1
  385. package/dist/esm/bq-radio.entry.js.map +1 -1
  386. package/dist/esm/bq-select.entry.js +2 -2
  387. package/dist/esm/bq-select.entry.js.map +1 -1
  388. package/dist/esm/bq-side-menu-item.entry.js +2 -2
  389. package/dist/esm/bq-side-menu-item.entry.js.map +1 -1
  390. package/dist/esm/bq-side-menu.entry.js +4 -4
  391. package/dist/esm/bq-side-menu.entry.js.map +1 -1
  392. package/dist/esm/bq-slider.entry.js +1 -1
  393. package/dist/esm/bq-slider.entry.js.map +1 -1
  394. package/dist/esm/bq-spinner.entry.js +1 -1
  395. package/dist/esm/bq-spinner.entry.js.map +1 -1
  396. package/dist/esm/bq-status.entry.js +1 -1
  397. package/dist/esm/bq-status.entry.js.map +1 -1
  398. package/dist/esm/bq-step-item.entry.js +1 -1
  399. package/dist/esm/bq-step-item.entry.js.map +1 -1
  400. package/dist/esm/bq-steps.entry.js +1 -1
  401. package/dist/esm/bq-steps.entry.js.map +1 -1
  402. package/dist/esm/bq-steps.types-BRMw_HGf.js.map +1 -1
  403. package/dist/esm/bq-switch.entry.js +9 -20
  404. package/dist/esm/bq-switch.entry.js.map +1 -1
  405. package/dist/esm/bq-tab-group.entry.js +4 -4
  406. package/dist/esm/bq-tab.entry.js +4 -4
  407. package/dist/esm/bq-tab.entry.js.map +1 -1
  408. package/dist/esm/bq-tab.types-DnkZCdMA.js.map +1 -1
  409. package/dist/esm/bq-textarea.entry.js +6 -6
  410. package/dist/esm/bq-textarea.entry.js.map +1 -1
  411. package/dist/esm/bq-toast.entry.js +2 -2
  412. package/dist/esm/bq-toast.entry.js.map +1 -1
  413. package/dist/esm/bq-tooltip.entry.js +7 -7
  414. package/dist/esm/bq-tooltip.entry.js.map +1 -1
  415. package/dist/esm/clamp-Cau9SvT4.js.map +1 -1
  416. package/dist/esm/cssVariables-CyiWA5Ok.js.map +1 -1
  417. package/dist/esm/form-DLjuE3KX.js.map +1 -1
  418. package/dist/esm/getNextElement-BsSDkLU5.js.map +1 -1
  419. package/dist/esm/{index-B6Fb5jZ3.js → index-CO2T68hs.js} +119 -83
  420. package/dist/esm/index-CO2T68hs.js.map +1 -0
  421. package/dist/esm/{index-CmKvDWiL.js → index-CSAZnAFf.js} +75 -67
  422. package/dist/esm/index-CSAZnAFf.js.map +1 -0
  423. package/dist/esm/index.js.map +1 -1
  424. package/dist/esm/isDefined-DvmFa_bD.js.map +1 -1
  425. package/dist/esm/isNil-BcPwGxIn.js.map +1 -1
  426. package/dist/esm/isString-lysmVw2n.js.map +1 -1
  427. package/dist/esm/loader.js +3 -3
  428. package/dist/esm/props-zh4P02Kn.js.map +1 -1
  429. package/dist/esm/scrollLock-3vky8wTo.js.map +1 -1
  430. package/dist/esm/slot-uqkxeAeG.js.map +1 -1
  431. package/dist/esm/stringToArray-CIJArUww.js.map +1 -1
  432. package/dist/esm/transition-DdvbF5yL.js.map +1 -1
  433. package/dist/hydrate/index.js +1081 -601
  434. package/dist/hydrate/index.mjs +1081 -601
  435. package/dist/types/components/date-picker/libs/callyLibrary.d.ts +1 -1
  436. package/dist/types/components/switch/bq-switch.d.ts +2 -3
  437. package/dist/types/components.d.ts +10 -12
  438. package/dist/types/shared/utils/date/dateFormatting.d.ts +1 -1
  439. package/dist/types/shared/utils/date/dateParsing.d.ts +1 -1
  440. package/dist/types/shared/utils/form.d.ts +1 -1
  441. package/dist/types/stencil-public-runtime.d.ts +3 -5
  442. package/package.json +1 -1
  443. package/dist/beeq/p-42f99ec4.entry.js.map +0 -1
  444. package/dist/beeq/p-8827075b.entry.js.map +0 -1
  445. package/dist/beeq/p-92f57edd.entry.js +0 -6
  446. package/dist/beeq/p-92f57edd.entry.js.map +0 -1
  447. package/dist/beeq/p-B6Fb5jZ3.js.map +0 -1
  448. package/dist/beeq/p-CmKvDWiL.js +0 -6
  449. package/dist/beeq/p-CmKvDWiL.js.map +0 -1
  450. package/dist/beeq/p-d2bf32a5.entry.js.map +0 -1
  451. package/dist/beeq/p-fbfb605d.entry.js.map +0 -1
  452. package/dist/cjs/index-Cs3Q5RMj.js.map +0 -1
  453. package/dist/cjs/index-CxAIhsq5.js.map +0 -1
  454. package/dist/components/p-CCHVlunB.js +0 -6
  455. package/dist/components/p-CCHVlunB.js.map +0 -1
  456. package/dist/components/p-CmKvDWiL.js +0 -6
  457. package/dist/components/p-CmKvDWiL.js.map +0 -1
  458. package/dist/esm/index-B6Fb5jZ3.js.map +0 -1
  459. package/dist/esm/index-CmKvDWiL.js.map +0 -1
  460. /package/dist/beeq/{p-ca5a4a52.entry.js.map → p-2c823175.entry.js.map} +0 -0
  461. /package/dist/beeq/{p-8928375e.entry.js.map → p-dc1f9be2.entry.js.map} +0 -0
  462. /package/dist/beeq/{p-2201ab1a.entry.js.map → p-e366fc1b.entry.js.map} +0 -0
  463. /package/dist/types/{home/runner/work/BEEQ/BEEQ → Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System}/.stencil/packages/beeq/jest.config.d.ts +0 -0
  464. /package/dist/types/{home/runner/work/BEEQ/BEEQ → Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System}/.stencil/packages/beeq/stencil.config.d.ts +0 -0
  465. /package/dist/types/{home/runner/work/BEEQ/BEEQ → Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System}/.stencil/tailwind.config.d.ts +0 -0
@@ -4,11 +4,11 @@
4
4
  */
5
5
  'use strict';
6
6
 
7
- var index = require('./index-Cs3Q5RMj.js');
7
+ var index = require('./index-BSrsKFVG.js');
8
8
  var isNil = require('./isNil-CFhdj92S.js');
9
9
  var slot = require('./slot-DKWrtk4b.js');
10
10
 
11
- 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)}`;
11
+ 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-icon-alt{color:var(--bq-icon--alt)}.text-icon-inverse{color:var(--bq-icon--inverse)}.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)}`;
12
12
 
13
13
  const BqSwitch = class {
14
14
  constructor(hostRef) {
@@ -28,7 +28,6 @@ const BqSwitch = class {
28
28
  // ====================
29
29
  labelElem;
30
30
  inputElem;
31
- prevCheckedValue;
32
31
  // Reference to host HTML element
33
32
  // ===================================
34
33
  internals;
@@ -81,23 +80,9 @@ const BqSwitch = class {
81
80
  // Component lifecycle events
82
81
  // Ordered by their natural call order
83
82
  // =====================================
84
- componentWillLoad() {
85
- this.prevCheckedValue = this.checked;
86
- }
87
83
  componentDidLoad() {
88
84
  this.handleSlotChange();
89
85
  }
90
- componentDidUpdate() {
91
- /**
92
- * We need to trigger the `bqChange` immediately after the first update happens
93
- * so the checked attribute get applied, otherwise, a delay will happen
94
- * between the event emits and when the checked attribute value gets reflected in the element host.
95
- */
96
- if (this.checked !== this.prevCheckedValue) {
97
- this.bqChange.emit({ checked: this.checked });
98
- this.prevCheckedValue = this.checked;
99
- }
100
- }
101
86
  formAssociatedCallback() {
102
87
  this.setFormValue(this.checked);
103
88
  this.updateFormValidity();
@@ -143,6 +128,10 @@ const BqSwitch = class {
143
128
  // These methods cannot be called from the host element.
144
129
  // =======================================================
145
130
  handleChange = () => {
131
+ const newChecked = !this.checked;
132
+ const event = this.bqChange.emit({ checked: newChecked });
133
+ if (event.defaultPrevented)
134
+ return;
146
135
  this.checked = !this.checked;
147
136
  this.inputElem.setAttribute('checked', `${this.checked}`);
148
137
  this.setFormValue(this.checked);
@@ -194,15 +183,15 @@ const BqSwitch = class {
194
183
  'is-disabled': this.disabled,
195
184
  'flex-row-reverse': this.reverseOrder,
196
185
  };
197
- return (index.h(index.Host, { key: '50837476ffecd5a4d8fbfac516e8ef630aaae0d1', class: { 'full-width': this.fullWidth }, style: hostStyle }, index.h("label", { key: '2b3ff5fb4a384c255da3590ae4977844da42b3f8', class: { 'bq-switch group': true, ...labelCssClasses }, part: "base" }, index.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.isNil(this.name) ? this.name : undefined, onBlur: this.handleOnBlur, onChange: this.handleChange, onFocus: this.handleOnFocus, ref: (input) => {
186
+ return (index.h(index.Host, { key: 'c1b965356abda34e250a6a3b78fd75bb40b1cf52', class: { 'full-width': this.fullWidth }, style: hostStyle }, index.h("label", { key: '473081c24c025daf02ab238da075f5795d9d9bba', class: { 'bq-switch group': true, ...labelCssClasses }, part: "base" }, index.h("input", { key: '2ade928b1e6947fa3482a77d6d5a33a9c3448038', "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.isNil(this.name) ? this.name : undefined, onBlur: this.handleOnBlur, onChange: this.handleChange, onFocus: this.handleOnFocus, ref: (input) => {
198
187
  this.inputElem = input;
199
- }, required: this.required, role: "switch", type: "checkbox", value: this.value }), index.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' && (index.h("bq-icon", { key: '785252cd3627a008c13cec31a816d1b887e14fa0', class: "bq-switch--control__icon on", color: "icon--alt", name: "check", part: "icon-on", title: "On" })), this.innerLabel === 'icon' && (index.h("bq-icon", { key: 'db1f0003ad2de0caaa6c7de864e21dca56fa62ae', class: "bq-switch--control__icon off", color: "icon--inverse", name: "x", part: "icon-off", title: "Off" })), index.h("div", { key: '9822fdace5e03fa4a10f8ff0e865fa93ec965367', class: "bq-switch--control__dot", part: "dot" })), index.h("span", { key: 'b0d090c0888f59eb86da9de35f87a13099da7182', class: {
188
+ }, required: this.required, role: "switch", type: "checkbox", value: this.value }), index.h("div", { key: '335c48f5c1364d1b8a8d0603d9f61d2116126d05', 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" }, index.h("slot", { key: 'bd55a2d646d806d27a244da2f6488b2e2c3d5ff4', class: "text-icon-alt", name: "icon-on" }, this.innerLabel === 'icon' && (index.h("bq-icon", { key: 'd95989a7c2b8c0cff3d59b0eaf2b690212b3dc80', class: "bq-switch--control__icon on", name: "check", part: "icon-on", title: "On" }))), index.h("slot", { key: 'ad8180cdcd39a7a6550aa0ed570de880989bc426', class: "text-icon-inverse", name: "icon-off" }, this.innerLabel === 'icon' && (index.h("bq-icon", { key: 'ec9b972815f3612303dda39fdbaa0b66a81cdb7d', class: "bq-switch--control__icon off", name: "x", part: "icon-off", title: "Off" }))), index.h("div", { key: '52790b0a450c5fc4a0bae3f88d1a95a98be1fc0e', class: "bq-switch--control__dot", part: "dot" })), index.h("span", { key: 'ac235e307da282c723672f396362e900b5fdf6f1', class: {
200
189
  'bq-switch--label font-medium text-m text-primary leading-regular transition-colors duration-300': true,
201
190
  'ms-s': this.hasLabel && !this.reverseOrder,
202
191
  'me-s': this.hasLabel && this.reverseOrder,
203
192
  }, part: "label", ref: (span) => {
204
193
  this.labelElem = span;
205
- } }, index.h("slot", { key: 'e5d6b58367302388601d9390ea41ff95c3d2e38f', onSlotchange: this.handleSlotChange })))));
194
+ } }, index.h("slot", { key: '394e42feca19d8e832b220bc6617619c1de5a053', onSlotchange: this.handleSlotChange })))));
206
195
  }
207
196
  static get delegatesFocus() { return true; }
208
197
  static get formAssociated() { return true; }
@@ -1 +1 @@
1
- {"file":"bq-switch.cjs.entry.js","mappings":"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","names":["slot","isNil","getTextContent","h","Host"],"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"],"version":3}
1
+ {"file":"bq-switch.cjs.entry.js","mappings":"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","names":["slot","isNil","getTextContent","h","Host"],"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 * @slot icon-on - Custom content to be displayed as the `ON` mark inside the control. It will be displayed when the `inner-label` property is set to `icon`\n * @slot icon-off - Custom content to be displayed as the `OFF` mark inside the control. It will be displayed when the `inner-label` property is set to `icon`\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\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({ cancelable: true }) 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 componentDidLoad() {\n this.handleSlotChange();\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 const newChecked = !this.checked;\n const event = this.bqChange.emit({ checked: newChecked });\n if (event.defaultPrevented) return;\n\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 <slot class=\"text-icon-alt\" name=\"icon-on\">\n {this.innerLabel === 'icon' && (\n <bq-icon class=\"bq-switch--control__icon on\" name=\"check\" part=\"icon-on\" title=\"On\" />\n )}\n </slot>\n <slot class=\"text-icon-inverse\" name=\"icon-off\">\n {this.innerLabel === 'icon' && (\n <bq-icon class=\"bq-switch--control__icon off\" name=\"x\" part=\"icon-off\" title=\"Off\" />\n )}\n </slot>\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"],"version":3}
@@ -4,7 +4,7 @@
4
4
  */
5
5
  'use strict';
6
6
 
7
- var index = require('./index-Cs3Q5RMj.js');
7
+ var index = require('./index-BSrsKFVG.js');
8
8
  var debounce = require('./debounce-D0tIpUuS.js');
9
9
  var getNextElement = require('./getNextElement-Bcdj4jIn.js');
10
10
  var isHTMLElement = require('./isHTMLElement-CtkOWsTF.js');
@@ -175,13 +175,13 @@ const BqTabGroup = class {
175
175
  // Always the last one in the class.
176
176
  // ===================================
177
177
  render() {
178
- return (index.h(index.Host, { key: '14f48db35a2392ede8c5a44103ececb5e601dc98', class: { 'inline-block': this.orientation === 'vertical' } }, index.h("div", { key: '5639127579ae0bfccd48cb59736ea5b4533ea45a', class: {
178
+ return (index.h(index.Host, { key: 'c1fc13a6039e54c39634d5a57fbfd8dab3a96aee', class: { 'inline-block': this.orientation === 'vertical' } }, index.h("div", { key: '3bb73dce6948d4c1bbfe6f251eda997223824f54', class: {
179
179
  [`bq-tab-group bq-tab-group--${this.orientation}-${this.placement} is-full flex`]: true,
180
180
  'no-divider': this.disableDivider,
181
- }, part: "base" }, index.h("div", { key: 'ee7f407248c1bcdeb6fd53569151b37518aa575b', class: {
181
+ }, part: "base" }, index.h("div", { key: 'df7746f742352586651fe8a8d4c65471bc5077fb', class: {
182
182
  'bq-tab-group--container flex overflow-x-auto': true,
183
183
  'flex-col': this.orientation !== 'horizontal',
184
- }, part: "tabs", role: "tablist" }, index.h("slot", { key: 'fcb5a9e5a8df56b4b32549810778cdd19719a486' })))));
184
+ }, part: "tabs", role: "tablist" }, index.h("slot", { key: '15f253296b161bc0c4d2bf04b0b553d92d73025c' })))));
185
185
  }
186
186
  static get watchers() { return {
187
187
  "debounceTime": [{
@@ -4,7 +4,7 @@
4
4
  */
5
5
  'use strict';
6
6
 
7
- var index = require('./index-Cs3Q5RMj.js');
7
+ var index = require('./index-BSrsKFVG.js');
8
8
  var props = require('./props-DzFXZXSF.js');
9
9
  var slot = require('./slot-DKWrtk4b.js');
10
10
  var bqTab_types = require('./bq-tab.types-EbesjHYK.js');
@@ -136,15 +136,15 @@ const BqTab = class {
136
136
  // Always the last one in the class.
137
137
  // ===================================
138
138
  render() {
139
- return (index.h("button", { key: '67d13243231a5a295cea5721de40176c01ca2779', "aria-controls": this.controls, "aria-disabled": this.disabled ? 'true' : 'false', "aria-selected": this.active ? 'true' : 'false', class: {
139
+ return (index.h("button", { key: '119a837e49a805a6bdf46a8f5f52705c140d1e4e', "aria-controls": this.controls, "aria-disabled": this.disabled ? 'true' : 'false', "aria-selected": this.active ? 'true' : 'false', class: {
140
140
  [`bq-tab bq-tab--${this.size} bq-tab--${this.orientation}-${this.placement}`]: true,
141
141
  'text-brand': this.active,
142
142
  'text-primary': !this.active,
143
143
  }, disabled: this.disabled, id: this.tabId, onBlur: this.handleOnBlur, onClick: this.handleClick, onFocus: this.handleOnFocus, onKeyDown: this.handleOnKeyDown, part: "base", ref: (el) => {
144
144
  this.buttonElement = el;
145
- }, role: "tab", tabindex: this.tabindex, type: "button" }, index.h("div", { key: '07fd9dd3899db73193c2ce3b2a86294f46ce7834', class: "flex items-center justify-center", part: "content" }, index.h("div", { key: '54247124e7e7b97960f546ae7153520dd5da8807', class: "flex", part: "icon", ref: (span) => {
145
+ }, role: "tab", tabindex: this.tabindex, type: "button" }, index.h("div", { key: '9ed236dee09ae2d4d02284d41bd32c8632520917', class: "flex items-center justify-center", part: "content" }, index.h("div", { key: '908ffc9febec712a1303ee2937f6cd8b98e7ad02', class: "flex", part: "icon", ref: (span) => {
146
146
  this.iconElement = span;
147
- } }, index.h("slot", { key: 'e1fcf248349ca01377b81f98232bf6d492c4ca0d', name: "icon", onSlotchange: this.handleIconSlotChange })), index.h("div", { key: 'dc586c86b73893b95d6c83279d2b0357fe2c4714', class: { 'line-clamp-1': true, 'ms-[--bq-tab--label-icon-gap]': this.hasIcon }, part: "text" }, index.h("slot", { key: '64c05d3cea1c8d39dade0b3b08ea3e6eabd14c27' })))));
147
+ } }, index.h("slot", { key: '9911ead0e9ed4e7075552b1a6702e0cef63e4b85', name: "icon", onSlotchange: this.handleIconSlotChange })), index.h("div", { key: 'f9e2443aaa0699d1582e7d4666c866e9b8caafdc', class: { 'line-clamp-1': true, 'ms-[--bq-tab--label-icon-gap]': this.hasIcon }, part: "text" }, index.h("slot", { key: '8bb73c1a85a06102253c1fe9fe7148ae7709ff24' })))));
148
148
  }
149
149
  static get watchers() { return {
150
150
  "size": [{
@@ -1 +1 @@
1
- {"file":"bq-tab.cjs.entry.js","mappings":"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","names":["validatePropValue","TAB_SIZE","TAB_ORIENTATION","TAB_PLACEMENT","hasSlotContent","h"],"sources":["../../packages/beeq/src/components/tab/scss/bq-tab.scss?tag=bq-tab&encapsulation=shadow","../../packages/beeq/src/components/tab/bq-tab.tsx"],"sourcesContent":["/* -------------------------------------------------------------------------- */\n/* Tab styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-tab.variables';\n\n:host {\n @apply inline-block;\n}\n\n.bq-tab {\n @apply relative flex cursor-pointer items-center justify-center rounded-s disabled:cursor-not-allowed disabled:opacity-60;\n @apply text-[length:--bq-tab--font-size] font-[--bq-tab--font-weight] leading-[--bq-tab--line-height] [&:not([disabled])]:hover:bg-hover-ui-primary [&:not([disabled])]:hover:text-hover-brand;\n @apply border-0 bg-transparent focus-visible:focus;\n @apply transition-[color,background-color,border-color,box-shadow] duration-300;\n\n &::after {\n @apply absolute z-[1] block bg-brand opacity-0 content-empty -inset-be-1;\n @apply transition-opacity duration-300 ease-linear;\n }\n\n &--horizontal-start,\n &--horizontal-end {\n &::after {\n /**\n * This hack will make the underline larger so it fits till the tab bar edges for the first and last tab button,\n * because the parent container applies some padding to not cut the focus outline style.\n */\n @apply -start-xs3 bs-[2px] is-[calc(100%_+_var(--bq-spacing-xs2))];\n }\n }\n\n &--vertical-start {\n @apply justify-end is-full;\n\n &::after {\n @apply -end-xs2 bs-[calc(100%_+_var(--bq-spacing-xs2))] is-[2px];\n }\n }\n\n &--vertical-end {\n @apply justify-start is-full;\n\n &::after {\n @apply -start-xs2 bs-[calc(100%_+_var(--bq-spacing-xs2))] is-[2px];\n }\n }\n\n &[aria-selected='true']::after {\n @apply opacity-100;\n }\n\n &--small {\n @apply p-b-[--bq-tab--padding-vertical-small] p-i-[--bq-tab--padding-horizontal-small];\n\n ::slotted(bq-icon) {\n --bq-icon--size: var(--bq-tab--icon-size-small) #{!important};\n }\n }\n\n &--medium {\n @apply p-b-[--bq-tab--padding-vertical-medium] p-i-[--bq-tab--padding-horizontal-medium];\n\n ::slotted(bq-icon) {\n --bq-icon--size: var(--bq-tab--icon-size-medium) #{!important};\n }\n }\n\n &--large {\n @apply text-l p-b-[--bq-tab--padding-vertical-large] p-i-[--bq-tab--padding-horizontal-large];\n\n ::slotted(bq-icon) {\n --bq-icon--size: var(--bq-tab--icon-size-large) #{!important};\n }\n }\n}\n","import type { EventEmitter } from '@stencil/core';\nimport { Component, Element, Event, h, Method, Prop, State, Watch } from '@stencil/core';\n\nimport { hasSlotContent, validatePropValue } from '../../shared/utils';\nimport type { TTabOrientation, TTabPlacement, TTabSize } from './bq-tab.types';\nimport { TAB_ORIENTATION, TAB_PLACEMENT, TAB_SIZE } from './bq-tab.types';\n\n/**\n * The tab is a user interface element that allows users to navigate between different sections of a page.\n * It should be used inside `<bq-tab-group>` component.\n *\n * @example How to use it\n * ```html\n * <bq-tab tab-id=\"1\" controls=\"panel-1\">Tab 1</bq-tab>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/775321-tabs\n * @status stable\n *\n * @attr {boolean} active - If `true` tab is active\n * @attr {string} controls - The tab panel id that the tab controls\n * @attr {boolean} disabled - If `true` tab is disabled\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} tab-id - The id of the tab\n *\n * @event bqClick - Handler to be called when the tab state changes\n * @event bqFocus - Handler to be called when the tab gets focus\n * @event bqBlur - Handler to be called when the tab loses focus\n * @event bqKeyDown - Handler to be called when the tab key is pressed\n *\n * @method vClick - Simulate a click event on the native `<button>` HTML element used under the hood\n * @method vFocus - Sets focus on the native `<button>` HTML element used under the hood\n * @method vBlur - Remove focus from the native `<button>` HTML element used under the hood\n *\n * @part base - The HTML button used under the hood.\n * @part content - The HTML `<div>` element that holds the content.\n * @part icon - The HTML `<div>` element that holds the icon content.\n * @part text - The HTML `<div>` element that holds the text content.\n * @part underline - The HTML `<div>` element that display active state.\n *\n * @cssprop --bq-tab--font-size - Font size\n * @cssprop --bq-tab--font-weight - Font weight\n * @cssprop --bq-tab--icon-size-large - Icon size for large tab\n * @cssprop --bq-tab--icon-size-medium - Icon size for medium tab\n * @cssprop --bq-tab--icon-size-small - Icon size for small tab\n * @cssprop --bq-tab--label-icon-gap - Gap between label and icon\n * @cssprop --bq-tab--line-height - Line height\n * @cssprop --bq-tab--padding-horizontal-large - Horizontal padding for large tab\n * @cssprop --bq-tab--padding-horizontal-medium - Horizontal padding for medium tab\n * @cssprop --bq-tab--padding-horizontal-small - Horizontal padding for small tab\n * @cssprop --bq-tab--padding-vertical-large - Vertical padding for large tab\n * @cssprop --bq-tab--padding-vertical-medium - Vertical padding for medium tab\n * @cssprop --bq-tab--padding-vertical-small - Vertical padding for small tab\n */\n@Component({\n tag: 'bq-tab',\n styleUrl: './scss/bq-tab.scss',\n shadow: true,\n})\nexport class BqTab {\n // Own Properties\n // ====================\n\n private buttonElement: HTMLButtonElement;\n private iconElement: HTMLSpanElement;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqTabElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() tabIndex: number | null = null;\n @State() hasIcon: boolean = false;\n\n // Public Property API\n // ========================\n\n /** If true tab is active */\n @Prop({ reflect: true, mutable: true }) active?: boolean;\n\n /** The tab panel id that the tab controls */\n @Prop({ reflect: true }) controls!: string;\n\n /** If true tab is disabled */\n @Prop({ reflect: true }) disabled = 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 /** The id of the tab */\n @Prop({ reflect: true }) tabId!: string;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('size')\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\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Handler to be called when the tab state changes */\n @Event() bqClick: EventEmitter<HTMLBqTabElement>;\n\n /** Handler to be called when the tab gets focus */\n @Event() bqFocus: EventEmitter<HTMLBqTabElement>;\n\n /** Handler to be called when the tab loses focus */\n @Event() bqBlur: EventEmitter<HTMLBqTabElement>;\n\n /** Handler to be called when the tab key is pressed */\n @Event() bqKeyDown: EventEmitter<KeyboardEvent>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.checkPropValues();\n }\n\n componentDidLoad() {\n this.handleIconSlotChange();\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 * Simulate a click event on the native `<button>` HTML element used under the hood.\n * Use this method instead of the global `element.click()`.\n */\n @Method()\n async vClick() {\n this.buttonElement?.click();\n }\n\n /**\n * Sets focus on the native `<button>` HTML element used under the hood.\n * Use this method instead of the global `element.focus()`.\n */\n @Method()\n async vFocus() {\n this.buttonElement?.focus();\n }\n\n /**\n * Remove focus from the native `<button>` HTML element used under the hood.\n * Use this method instead of the global `element.blur()`.\n */\n @Method()\n async vBlur() {\n this.buttonElement?.blur();\n }\n\n /**\n * @internal Sets tabindex on the native `<button>` HTML element used under the hood.\n * This method is used inside `<bq-tab-group>` to make tab focusable after the active one is focused\n */\n @Method()\n async enableFocus(value: boolean) {\n this.tabIndex = value ? 0 : null;\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleClick = () => {\n this.active = true;\n this.bqClick.emit(this.el);\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 handleOnKeyDown = (event: KeyboardEvent) => {\n this.bqKeyDown.emit(event);\n };\n\n private handleIconSlotChange = () => {\n this.hasIcon = hasSlotContent(this.iconElement, 'icon');\n };\n\n private get tabindex(): string {\n // NOTE: this.active is undefined when is not part of bq-tab-group\n return `${this.tabIndex ?? -1 + +(this.active ?? 1)}`;\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <button\n aria-controls={this.controls}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-selected={this.active ? 'true' : 'false'}\n class={{\n [`bq-tab bq-tab--${this.size} bq-tab--${this.orientation}-${this.placement}`]: true,\n 'text-brand': this.active,\n 'text-primary': !this.active,\n }}\n disabled={this.disabled}\n id={this.tabId}\n onBlur={this.handleOnBlur}\n onClick={this.handleClick}\n onFocus={this.handleOnFocus}\n onKeyDown={this.handleOnKeyDown}\n part=\"base\"\n ref={(el) => {\n this.buttonElement = el;\n }}\n role=\"tab\"\n tabindex={this.tabindex}\n type=\"button\"\n >\n <div class=\"flex items-center justify-center\" part=\"content\">\n <div\n class=\"flex\"\n part=\"icon\"\n ref={(span: HTMLSpanElement) => {\n this.iconElement = span;\n }}\n >\n <slot name=\"icon\" onSlotchange={this.handleIconSlotChange} />\n </div>\n <div class={{ 'line-clamp-1': true, 'ms-[--bq-tab--label-icon-gap]': this.hasIcon }} part=\"text\">\n <slot />\n </div>\n </div>\n </button>\n );\n }\n}\n"],"version":3}
1
+ {"file":"bq-tab.cjs.entry.js","mappings":"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","names":["validatePropValue","TAB_SIZE","TAB_ORIENTATION","TAB_PLACEMENT","hasSlotContent","h"],"sources":["../../packages/beeq/src/components/tab/scss/bq-tab.scss?tag=bq-tab&encapsulation=shadow","../../packages/beeq/src/components/tab/bq-tab.tsx"],"sourcesContent":["/* -------------------------------------------------------------------------- */\n/* Tab styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-tab.variables';\n\n:host {\n @apply inline-block;\n}\n\n.bq-tab {\n @apply relative flex cursor-pointer items-center justify-center rounded-s disabled:cursor-not-allowed disabled:opacity-60;\n @apply text-[length:--bq-tab--font-size] font-[--bq-tab--font-weight] leading-[--bq-tab--line-height] [&:not([disabled])]:hover:bg-hover-ui-primary [&:not([disabled])]:hover:text-hover-brand;\n @apply border-0 bg-transparent focus-visible:focus;\n @apply transition-[color,background-color,border-color,box-shadow] duration-300;\n\n &::after {\n @apply absolute z-[1] block bg-brand opacity-0 content-empty -inset-be-1;\n @apply transition-opacity duration-300 ease-linear;\n }\n\n &--horizontal-start,\n &--horizontal-end {\n &::after {\n /**\n * This hack will make the underline larger so it fits till the tab bar edges for the first and last tab button,\n * because the parent container applies some padding to not cut the focus outline style.\n */\n @apply -start-xs3 bs-[2px] is-[calc(100%_+_var(--bq-spacing-xs2))];\n }\n }\n\n &--vertical-start {\n @apply justify-end is-full;\n\n &::after {\n @apply -end-xs2 bs-[calc(100%_+_var(--bq-spacing-xs2))] is-[2px];\n }\n }\n\n &--vertical-end {\n @apply justify-start is-full;\n\n &::after {\n @apply -start-xs2 bs-[calc(100%_+_var(--bq-spacing-xs2))] is-[2px];\n }\n }\n\n &[aria-selected='true']::after {\n @apply opacity-100;\n }\n\n &--small {\n @apply p-b-[--bq-tab--padding-vertical-small] p-i-[--bq-tab--padding-horizontal-small];\n\n ::slotted(bq-icon) {\n --bq-icon--size: var(--bq-tab--icon-size-small) #{!important};\n }\n }\n\n &--medium {\n @apply p-b-[--bq-tab--padding-vertical-medium] p-i-[--bq-tab--padding-horizontal-medium];\n\n ::slotted(bq-icon) {\n --bq-icon--size: var(--bq-tab--icon-size-medium) #{!important};\n }\n }\n\n &--large {\n @apply text-l p-b-[--bq-tab--padding-vertical-large] p-i-[--bq-tab--padding-horizontal-large];\n\n ::slotted(bq-icon) {\n --bq-icon--size: var(--bq-tab--icon-size-large) #{!important};\n }\n }\n}\n","import type { EventEmitter } from '@stencil/core';\nimport { Component, Element, Event, h, Method, Prop, State, Watch } from '@stencil/core';\n\nimport { hasSlotContent, validatePropValue } from '../../shared/utils';\nimport type { TTabOrientation, TTabPlacement, TTabSize } from './bq-tab.types';\nimport { TAB_ORIENTATION, TAB_PLACEMENT, TAB_SIZE } from './bq-tab.types';\n\n/**\n * The tab is a user interface element that allows users to navigate between different sections of a page.\n * It should be used inside `<bq-tab-group>` component.\n *\n * @example How to use it\n * ```html\n * <bq-tab tab-id=\"1\" controls=\"panel-1\">Tab 1</bq-tab>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/775321-tabs\n * @status stable\n *\n * @attr {boolean} active - If `true` tab is active\n * @attr {string} controls - The tab panel id that the tab controls\n * @attr {boolean} disabled - If `true` tab is disabled\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} tab-id - The id of the tab\n *\n * @event bqClick - Handler to be called when the tab state changes\n * @event bqFocus - Handler to be called when the tab gets focus\n * @event bqBlur - Handler to be called when the tab loses focus\n * @event bqKeyDown - Handler to be called when the tab key is pressed\n *\n * @method vClick - Simulate a click event on the native `<button>` HTML element used under the hood\n * @method vFocus - Sets focus on the native `<button>` HTML element used under the hood\n * @method vBlur - Remove focus from the native `<button>` HTML element used under the hood\n *\n * @part base - The HTML button used under the hood.\n * @part content - The HTML `<div>` element that holds the content.\n * @part icon - The HTML `<div>` element that holds the icon content.\n * @part text - The HTML `<div>` element that holds the text content.\n * @part underline - The HTML `<div>` element that display active state.\n *\n * @cssprop --bq-tab--font-size - Font size\n * @cssprop --bq-tab--font-weight - Font weight\n * @cssprop --bq-tab--icon-size-large - Icon size for large tab\n * @cssprop --bq-tab--icon-size-medium - Icon size for medium tab\n * @cssprop --bq-tab--icon-size-small - Icon size for small tab\n * @cssprop --bq-tab--label-icon-gap - Gap between label and icon\n * @cssprop --bq-tab--line-height - Line height\n * @cssprop --bq-tab--padding-horizontal-large - Horizontal padding for large tab\n * @cssprop --bq-tab--padding-horizontal-medium - Horizontal padding for medium tab\n * @cssprop --bq-tab--padding-horizontal-small - Horizontal padding for small tab\n * @cssprop --bq-tab--padding-vertical-large - Vertical padding for large tab\n * @cssprop --bq-tab--padding-vertical-medium - Vertical padding for medium tab\n * @cssprop --bq-tab--padding-vertical-small - Vertical padding for small tab\n */\n@Component({\n tag: 'bq-tab',\n styleUrl: './scss/bq-tab.scss',\n shadow: true,\n})\nexport class BqTab {\n // Own Properties\n // ====================\n\n private buttonElement: HTMLButtonElement;\n private iconElement: HTMLSpanElement;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqTabElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() tabIndex: number | null = null;\n @State() hasIcon: boolean = false;\n\n // Public Property API\n // ========================\n\n /** If true tab is active */\n @Prop({ reflect: true, mutable: true }) active?: boolean;\n\n /** The tab panel id that the tab controls */\n @Prop({ reflect: true }) controls!: string;\n\n /** If true tab is disabled */\n @Prop({ reflect: true }) disabled = 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 /** The id of the tab */\n @Prop({ reflect: true }) tabId!: string;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('size')\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\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Handler to be called when the tab state changes */\n @Event() bqClick: EventEmitter<HTMLBqTabElement>;\n\n /** Handler to be called when the tab gets focus */\n @Event() bqFocus: EventEmitter<HTMLBqTabElement>;\n\n /** Handler to be called when the tab loses focus */\n @Event() bqBlur: EventEmitter<HTMLBqTabElement>;\n\n /** Handler to be called when the tab key is pressed */\n @Event() bqKeyDown: EventEmitter<KeyboardEvent>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.checkPropValues();\n }\n\n componentDidLoad() {\n this.handleIconSlotChange();\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 * Simulate a click event on the native `<button>` HTML element used under the hood.\n * Use this method instead of the global `element.click()`.\n */\n @Method()\n async vClick() {\n this.buttonElement?.click();\n }\n\n /**\n * Sets focus on the native `<button>` HTML element used under the hood.\n * Use this method instead of the global `element.focus()`.\n */\n @Method()\n async vFocus() {\n this.buttonElement?.focus();\n }\n\n /**\n * Remove focus from the native `<button>` HTML element used under the hood.\n * Use this method instead of the global `element.blur()`.\n */\n @Method()\n async vBlur() {\n this.buttonElement?.blur();\n }\n\n /**\n * @internal Sets tabindex on the native `<button>` HTML element used under the hood.\n * This method is used inside `<bq-tab-group>` to make tab focusable after the active one is focused\n */\n @Method()\n async enableFocus(value: boolean) {\n this.tabIndex = value ? 0 : null;\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleClick = () => {\n this.active = true;\n this.bqClick.emit(this.el);\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 handleOnKeyDown = (event: KeyboardEvent) => {\n this.bqKeyDown.emit(event);\n };\n\n private handleIconSlotChange = () => {\n this.hasIcon = hasSlotContent(this.iconElement, 'icon');\n };\n\n private get tabindex(): string {\n // NOTE: this.active is undefined when is not part of bq-tab-group\n return `${this.tabIndex ?? -1 + +(this.active ?? 1)}`;\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <button\n aria-controls={this.controls}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-selected={this.active ? 'true' : 'false'}\n class={{\n [`bq-tab bq-tab--${this.size} bq-tab--${this.orientation}-${this.placement}`]: true,\n 'text-brand': this.active,\n 'text-primary': !this.active,\n }}\n disabled={this.disabled}\n id={this.tabId}\n onBlur={this.handleOnBlur}\n onClick={this.handleClick}\n onFocus={this.handleOnFocus}\n onKeyDown={this.handleOnKeyDown}\n part=\"base\"\n ref={(el) => {\n this.buttonElement = el;\n }}\n role=\"tab\"\n tabindex={this.tabindex}\n type=\"button\"\n >\n <div class=\"flex items-center justify-center\" part=\"content\">\n <div\n class=\"flex\"\n part=\"icon\"\n ref={(span: HTMLSpanElement) => {\n this.iconElement = span;\n }}\n >\n <slot name=\"icon\" onSlotchange={this.handleIconSlotChange} />\n </div>\n <div class={{ 'line-clamp-1': true, 'ms-[--bq-tab--label-icon-gap]': this.hasIcon }} part=\"text\">\n <slot />\n </div>\n </div>\n </button>\n );\n }\n}\n"],"version":3}
@@ -1 +1 @@
1
- {"version":3,"file":"bq-tab.types-EbesjHYK.js","sources":["../../packages/beeq/src/components/tab/bq-tab.types.ts"],"sourcesContent":["export const TAB_SIZE = ['small', 'medium', 'large'] as const;\nexport type TTabSize = (typeof TAB_SIZE)[number];\n\nexport const TAB_ORIENTATION = ['horizontal', 'vertical'] as const;\nexport type TTabOrientation = (typeof TAB_ORIENTATION)[number];\n\nexport const TAB_PLACEMENT = ['start', 'end'] as const;\nexport type TTabPlacement = (typeof TAB_PLACEMENT)[number];\n"],"names":[],"mappings":";;;;;;AAAa,MAAA,QAAQ,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO;MAGtC,eAAe,GAAG,CAAC,YAAY,EAAE,UAAU;MAG3C,aAAa,GAAG,CAAC,OAAO,EAAE,KAAK;;;;;;"}
1
+ {"version":3,"file":"bq-tab.types-EbesjHYK.js","sources":["../../packages/beeq/src/components/tab/bq-tab.types.ts"],"sourcesContent":["export const TAB_SIZE = ['small', 'medium', 'large'] as const;\nexport type TTabSize = (typeof TAB_SIZE)[number];\n\nexport const TAB_ORIENTATION = ['horizontal', 'vertical'] as const;\nexport type TTabOrientation = (typeof TAB_ORIENTATION)[number];\n\nexport const TAB_PLACEMENT = ['start', 'end'] as const;\nexport type TTabPlacement = (typeof TAB_PLACEMENT)[number];\n"],"names":[],"mappings":";;;;;;AAAO,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO;MAGtC,eAAe,GAAG,CAAC,YAAY,EAAE,UAAU;MAG3C,aAAa,GAAG,CAAC,OAAO,EAAE,KAAK;;;;;;"}
@@ -4,7 +4,7 @@
4
4
  */
5
5
  'use strict';
6
6
 
7
- var index = require('./index-Cs3Q5RMj.js');
7
+ var index = require('./index-BSrsKFVG.js');
8
8
  var debounce = require('./debounce-D0tIpUuS.js');
9
9
  var isHTMLElement = require('./isHTMLElement-CtkOWsTF.js');
10
10
  var isNil = require('./isNil-CFhdj92S.js');
@@ -249,21 +249,21 @@ const BqTextarea = class {
249
249
  // Always the last one in the class.
250
250
  // ===================================
251
251
  render() {
252
- return (index.h("div", { key: 'e3d5a7f7e29000b2959b5c1946f8227046915754', class: "bq-textarea flex flex-auto flex-col", part: "base" }, index.h("label", { key: '48ac0c9258331b1d44a4afe1803f30a9bc42e0d2', "aria-label": this.name ?? this.fallbackId, class: { 'bq-textarea__label': true, '!hidden': !this.hasLabel }, htmlFor: this.name ?? this.fallbackId, part: "label", ref: (label) => {
252
+ return (index.h("div", { key: 'db4697980307905b65a813954fd89f632961d9e6', class: "bq-textarea flex flex-auto flex-col", part: "base" }, index.h("label", { key: 'a97111a164c1f5394a160ead3ed76ed854eccac8', "aria-label": this.name ?? this.fallbackId, class: { 'bq-textarea__label': true, '!hidden': !this.hasLabel }, htmlFor: this.name ?? this.fallbackId, part: "label", ref: (label) => {
253
253
  this.labelElem = label;
254
- } }, index.h("slot", { key: 'b1b88f2b474ab4965f05361a7877c6696b4db96e', name: "label", onSlotchange: this.handleSlotChange })), index.h("textarea", { key: '79fef7eb93fb8021d1a2291a9a2c9aa7594f8fd0', autocapitalize: this.autocapitalize, autocomplete: this.autocomplete, autofocus: this.autofocus, class: {
254
+ } }, index.h("slot", { key: '6638489c4a352ccca562b516931c8fb1db7dffe4', name: "label", onSlotchange: this.handleSlotChange })), index.h("textarea", { key: '5a01a853c2ffeec4cbf7d7ad24f3e4367f0c302c', autocapitalize: this.autocapitalize, autocomplete: this.autocomplete, autofocus: this.autofocus, class: {
255
255
  'bq-textarea__input': true,
256
256
  'resize-none': this.disableResize,
257
257
  [`validation-${this.validationStatus}`]: true,
258
258
  }, disabled: this.disabled, form: this.form, id: this.name ?? this.fallbackId, maxLength: this.maxlength > 0 ? this.maxlength : undefined, name: this.name, onBlur: this.handleBlur, onChange: this.handleChange, onFocus: this.handleFocus, onInput: this.handleInput, part: "input", placeholder: this.placeholder, readOnly: this.readonly, ref: (elem) => {
259
259
  this.textarea = elem;
260
- }, required: this.required, rows: this.rows, spellcheck: this.spellcheck, wrap: this.wrap }, this.value), index.h("div", { key: 'ccf267c2b3bd8daaa6b9192a17c63b881d5b6f0f', class: {
260
+ }, required: this.required, rows: this.rows, spellcheck: this.spellcheck, wrap: this.wrap }, this.value), index.h("div", { key: '382582e307ee0059565341f29c0e3da228e5d149', class: {
261
261
  'bq-textarea__helper flex items-center justify-between': true,
262
262
  [`validation-${this.validationStatus}`]: true,
263
263
  '!hidden': !this.hasHelperText && !this.maxlength,
264
- }, part: "helper-info" }, index.h("span", { key: 'cd852d5dec02f6db0d18c011929bffcdf780ecdd', class: "bq-textarea__helper--text", part: "helper-text", ref: (span) => {
264
+ }, part: "helper-info" }, index.h("span", { key: '993b9c06e1e7f0966534767650c29b25f211a571', class: "bq-textarea__helper--text", part: "helper-text", ref: (span) => {
265
265
  this.helperTextElem = span;
266
- } }, index.h("slot", { key: '74d0affa4d84369647794f3a5cf014c5c1939974', name: "helper-text", onSlotchange: this.handleSlotChange })), index.h("span", { key: '2ab7e59c29ed618d7e5110622aa253eadd11fd0a', class: { 'bq-textarea__helper--counter [fontVariant:tabular-nums]': true, '!hidden': !this.maxlength }, part: "helper-counter" }, this.numberOfCharacters ?? 0, "/", this.maxlength))));
266
+ } }, index.h("slot", { key: 'f4cadafc3ca77131e954a9d967c208569640d90a', name: "helper-text", onSlotchange: this.handleSlotChange })), index.h("span", { key: 'c7027f66e0fdfcbdb90cdb60728ea9b71f2c57d2', class: { 'bq-textarea__helper--counter [fontVariant:tabular-nums]': true, '!hidden': !this.maxlength }, part: "helper-counter" }, this.numberOfCharacters ?? 0, "/", this.maxlength))));
267
267
  }
268
268
  static get delegatesFocus() { return true; }
269
269
  static get formAssociated() { return true; }