@beeq/core 1.8.0-beta.2 → 1.8.0-beta.4

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 (605) hide show
  1. package/dist/beeq/beeq.css +1 -1
  2. package/dist/beeq/beeq.esm.js +4 -4
  3. package/dist/beeq/beeq.esm.js.map +1 -1
  4. package/dist/beeq/index.esm.js +6 -6
  5. package/dist/beeq/{p-0c42c08a.js → p-01df4baa.js} +38 -23
  6. package/dist/beeq/p-01df4baa.js.map +1 -0
  7. package/dist/beeq/{p-7c06dfec.entry.js → p-03749fbf.entry.js} +74 -66
  8. package/dist/beeq/{p-7c06dfec.entry.js.map → p-03749fbf.entry.js.map} +1 -1
  9. package/dist/beeq/p-03e23dca.entry.js +105 -0
  10. package/dist/beeq/{p-600e7c38.entry.js.map → p-03e23dca.entry.js.map} +1 -1
  11. package/dist/beeq/{p-513bab02.js → p-0fce4de9.js} +2 -2
  12. package/dist/beeq/{p-951ba558.js → p-1defeea3.js} +19 -19
  13. package/dist/beeq/{p-951ba558.js.map → p-1defeea3.js.map} +1 -1
  14. package/dist/beeq/p-27974392.entry.js +197 -0
  15. package/dist/beeq/p-27974392.entry.js.map +1 -0
  16. package/dist/beeq/p-2b2d8b0c.entry.js +114 -0
  17. package/dist/beeq/{p-37466506.entry.js.map → p-2b2d8b0c.entry.js.map} +1 -1
  18. package/dist/beeq/p-3e3fd7b5.entry.js +87 -0
  19. package/dist/beeq/{p-12dbc6ac.entry.js.map → p-3e3fd7b5.entry.js.map} +1 -1
  20. package/dist/beeq/{p-0ebe73ef.entry.js → p-3ed73068.entry.js} +42 -38
  21. package/dist/beeq/{p-0ebe73ef.entry.js.map → p-3ed73068.entry.js.map} +1 -1
  22. package/dist/beeq/p-5a12011a.entry.js +161 -0
  23. package/dist/beeq/{p-e7d75b87.entry.js.map → p-5a12011a.entry.js.map} +1 -1
  24. package/dist/beeq/{p-0ab0b58d.js → p-5a9a73a0.js} +2 -1
  25. package/dist/beeq/p-5a9a73a0.js.map +1 -0
  26. package/dist/beeq/{p-4dd962a7.entry.js → p-5d51cadd.entry.js} +63 -46
  27. package/dist/beeq/{p-4dd962a7.entry.js.map → p-5d51cadd.entry.js.map} +1 -1
  28. package/dist/beeq/p-5d8d6717.entry.js +190 -0
  29. package/dist/beeq/{p-ceb3bb9a.entry.js.map → p-5d8d6717.entry.js.map} +1 -1
  30. package/dist/beeq/p-5fcbf15f.entry.js +158 -0
  31. package/dist/beeq/{p-ae94b9f8.entry.js.map → p-5fcbf15f.entry.js.map} +1 -1
  32. package/dist/beeq/p-60ab652b.entry.js +102 -0
  33. package/dist/beeq/{p-900d4e78.entry.js.map → p-60ab652b.entry.js.map} +1 -1
  34. package/dist/beeq/p-7695fc8d.entry.js +215 -0
  35. package/dist/beeq/p-7695fc8d.entry.js.map +1 -0
  36. package/dist/beeq/p-7aa47927.entry.js +215 -0
  37. package/dist/beeq/p-7aa47927.entry.js.map +1 -0
  38. package/dist/beeq/p-7ea146b8.entry.js +184 -0
  39. package/dist/beeq/p-7ea146b8.entry.js.map +1 -0
  40. package/dist/beeq/p-818cd6d7.entry.js +244 -0
  41. package/dist/beeq/{p-19df76ba.entry.js.map → p-818cd6d7.entry.js.map} +1 -1
  42. package/dist/beeq/p-89665044.entry.js +349 -0
  43. package/dist/beeq/p-89665044.entry.js.map +1 -0
  44. package/dist/beeq/p-8b6fc3ef.entry.js +135 -0
  45. package/dist/beeq/p-8b6fc3ef.entry.js.map +1 -0
  46. package/dist/beeq/p-908c57e9.entry.js +84 -0
  47. package/dist/beeq/{p-41033fe6.entry.js.map → p-908c57e9.entry.js.map} +1 -1
  48. package/dist/beeq/p-98de0101.entry.js +146 -0
  49. package/dist/beeq/p-98de0101.entry.js.map +1 -0
  50. package/dist/beeq/p-a84d4562.js +64 -0
  51. package/dist/beeq/p-a84d4562.js.map +1 -0
  52. package/dist/beeq/p-a94d15f9.entry.js +156 -0
  53. package/dist/beeq/{p-7089c66a.entry.js.map → p-a94d15f9.entry.js.map} +1 -1
  54. package/dist/beeq/p-ac0d84a6.entry.js +122 -0
  55. package/dist/beeq/{p-5eab4f55.entry.js.map → p-ac0d84a6.entry.js.map} +1 -1
  56. package/dist/beeq/p-b877d662.entry.js +412 -0
  57. package/dist/beeq/p-b877d662.entry.js.map +1 -0
  58. package/dist/beeq/p-bb14b231.entry.js +460 -0
  59. package/dist/beeq/p-bb14b231.entry.js.map +1 -0
  60. package/dist/beeq/{p-4a3d8532.entry.js → p-bc60faa1.entry.js} +21 -15
  61. package/dist/beeq/{p-4a3d8532.entry.js.map → p-bc60faa1.entry.js.map} +1 -1
  62. package/dist/beeq/p-be746e37.entry.js +269 -0
  63. package/dist/beeq/p-be746e37.entry.js.map +1 -0
  64. package/dist/beeq/{p-38d4bd8a.js → p-c78ae3c2.js} +270 -226
  65. package/dist/beeq/p-c78ae3c2.js.map +1 -0
  66. package/dist/beeq/p-cb917e68.entry.js +177 -0
  67. package/dist/beeq/p-cb917e68.entry.js.map +1 -0
  68. package/dist/beeq/p-cdd5b425.entry.js +274 -0
  69. package/dist/beeq/{p-734853f9.entry.js.map → p-cdd5b425.entry.js.map} +1 -1
  70. package/dist/beeq/p-d2f682a9.entry.js +530 -0
  71. package/dist/beeq/p-d2f682a9.entry.js.map +1 -0
  72. package/dist/beeq/{p-d7a88b16.js → p-d7ce7165.js} +6 -7
  73. package/dist/beeq/p-d7ce7165.js.map +1 -0
  74. package/dist/beeq/p-d8f7bf11.entry.js +272 -0
  75. package/dist/beeq/p-d8f7bf11.entry.js.map +1 -0
  76. package/dist/beeq/p-d9bcaeed.entry.js +320 -0
  77. package/dist/beeq/p-d9bcaeed.entry.js.map +1 -0
  78. package/dist/beeq/p-e06c8398.entry.js +294 -0
  79. package/dist/beeq/p-e06c8398.entry.js.map +1 -0
  80. package/dist/beeq/{p-11eaeb5d.entry.js → p-e6911710.entry.js} +116 -81
  81. package/dist/beeq/p-e6911710.entry.js.map +1 -0
  82. package/dist/beeq/p-f11a3beb.entry.js +90 -0
  83. package/dist/beeq/{p-4fc098bb.entry.js.map → p-f11a3beb.entry.js.map} +1 -1
  84. package/dist/beeq/{p-2ef721e1.entry.js → p-f1d6a960.entry.js} +59 -49
  85. package/dist/beeq/p-f1d6a960.entry.js.map +1 -0
  86. package/dist/beeq/p-f350516b.entry.js +154 -0
  87. package/dist/beeq/p-f350516b.entry.js.map +1 -0
  88. package/dist/beeq/p-f5d59aba.entry.js +136 -0
  89. package/dist/beeq/p-f5d59aba.entry.js.map +1 -0
  90. package/dist/beeq/p-f5eb8fff.entry.js +336 -0
  91. package/dist/beeq/p-f5eb8fff.entry.js.map +1 -0
  92. package/dist/beeq/p-f69d2900.entry.js +269 -0
  93. package/dist/beeq/p-f69d2900.entry.js.map +1 -0
  94. package/dist/beeq/p-fe57aa48.entry.js +135 -0
  95. package/dist/beeq/p-fe57aa48.entry.js.map +1 -0
  96. package/dist/cjs/{assetsPath-7ead23b7.js → assetsPath-6ac8935a.js} +9 -33
  97. package/dist/cjs/assetsPath-6ac8935a.js.map +1 -0
  98. package/dist/cjs/beeq.cjs.js +3 -3
  99. package/dist/cjs/beeq.cjs.js.map +1 -1
  100. package/dist/cjs/bq-accordion-group.cjs.entry.js +4 -4
  101. package/dist/cjs/bq-accordion-group.cjs.entry.js.map +1 -1
  102. package/dist/cjs/bq-accordion.cjs.entry.js +84 -48
  103. package/dist/cjs/bq-accordion.cjs.entry.js.map +1 -1
  104. package/dist/cjs/bq-alert.cjs.entry.js +58 -43
  105. package/dist/cjs/bq-alert.cjs.entry.js.map +1 -1
  106. package/dist/cjs/bq-avatar.cjs.entry.js +41 -40
  107. package/dist/cjs/bq-avatar.cjs.entry.js.map +1 -1
  108. package/dist/cjs/bq-badge.cjs.entry.js +43 -42
  109. package/dist/cjs/bq-badge.cjs.entry.js.map +1 -1
  110. package/dist/cjs/bq-breadcrumb-item.cjs.entry.js +40 -29
  111. package/dist/cjs/bq-breadcrumb-item.cjs.entry.js.map +1 -1
  112. package/dist/cjs/bq-breadcrumb.cjs.entry.js +46 -30
  113. package/dist/cjs/bq-breadcrumb.cjs.entry.js.map +1 -1
  114. package/dist/cjs/bq-button_2.cjs.entry.js +105 -86
  115. package/dist/cjs/bq-button_2.cjs.entry.js.map +1 -1
  116. package/dist/cjs/bq-card.cjs.entry.js +4 -4
  117. package/dist/cjs/bq-card.cjs.entry.js.map +1 -1
  118. package/dist/cjs/bq-checkbox.cjs.entry.js +64 -54
  119. package/dist/cjs/bq-checkbox.cjs.entry.js.map +1 -1
  120. package/dist/cjs/bq-date-picker.cjs.entry.js +161 -140
  121. package/dist/cjs/bq-date-picker.cjs.entry.js.map +1 -1
  122. package/dist/cjs/bq-dialog.cjs.entry.js +72 -50
  123. package/dist/cjs/bq-dialog.cjs.entry.js.map +1 -1
  124. package/dist/cjs/bq-divider.cjs.entry.js +24 -21
  125. package/dist/cjs/bq-divider.cjs.entry.js.map +1 -1
  126. package/dist/cjs/bq-drawer.cjs.entry.js +49 -34
  127. package/dist/cjs/bq-drawer.cjs.entry.js.map +1 -1
  128. package/dist/cjs/bq-dropdown_2.cjs.entry.js +44 -34
  129. package/dist/cjs/bq-dropdown_2.cjs.entry.js.map +1 -1
  130. package/dist/cjs/bq-empty-state.cjs.entry.js +26 -22
  131. package/dist/cjs/bq-empty-state.cjs.entry.js.map +1 -1
  132. package/dist/cjs/bq-input.cjs.entry.js +117 -90
  133. package/dist/cjs/bq-input.cjs.entry.js.map +1 -1
  134. package/dist/cjs/bq-notification.cjs.entry.js +63 -48
  135. package/dist/cjs/bq-notification.cjs.entry.js.map +1 -1
  136. package/dist/cjs/bq-option-group.cjs.entry.js +3 -3
  137. package/dist/cjs/bq-option-group.cjs.entry.js.map +1 -1
  138. package/dist/cjs/bq-option-list_2.cjs.entry.js +74 -54
  139. package/dist/cjs/bq-option-list_2.cjs.entry.js.map +1 -1
  140. package/dist/cjs/bq-option.cjs.entry.js +62 -45
  141. package/dist/cjs/bq-option.cjs.entry.js.map +1 -1
  142. package/dist/cjs/bq-page-title.cjs.entry.js +37 -32
  143. package/dist/cjs/bq-page-title.cjs.entry.js.map +1 -1
  144. package/dist/cjs/bq-progress.cjs.entry.js +4 -4
  145. package/dist/cjs/bq-progress.cjs.entry.js.map +1 -1
  146. package/dist/cjs/bq-radio-group.cjs.entry.js +13 -7
  147. package/dist/cjs/bq-radio-group.cjs.entry.js.map +1 -1
  148. package/dist/cjs/bq-radio.cjs.entry.js +43 -37
  149. package/dist/cjs/bq-radio.cjs.entry.js.map +1 -1
  150. package/dist/cjs/bq-select.cjs.entry.js +186 -168
  151. package/dist/cjs/bq-select.cjs.entry.js.map +1 -1
  152. package/dist/cjs/bq-side-menu-item.cjs.entry.js +69 -55
  153. package/dist/cjs/bq-side-menu-item.cjs.entry.js.map +1 -1
  154. package/dist/cjs/bq-side-menu.cjs.entry.js +47 -32
  155. package/dist/cjs/bq-side-menu.cjs.entry.js.map +1 -1
  156. package/dist/cjs/bq-slider.cjs.entry.js +161 -145
  157. package/dist/cjs/bq-slider.cjs.entry.js.map +1 -1
  158. package/dist/cjs/bq-spinner.cjs.entry.js +53 -51
  159. package/dist/cjs/bq-spinner.cjs.entry.js.map +1 -1
  160. package/dist/cjs/bq-status.cjs.entry.js +4 -4
  161. package/dist/cjs/bq-status.cjs.entry.js.map +1 -1
  162. package/dist/cjs/bq-step-item.cjs.entry.js +16 -11
  163. package/dist/cjs/bq-step-item.cjs.entry.js.map +1 -1
  164. package/dist/cjs/bq-steps.cjs.entry.js +13 -10
  165. package/dist/cjs/bq-steps.cjs.entry.js.map +1 -1
  166. package/dist/cjs/bq-switch.cjs.entry.js +44 -32
  167. package/dist/cjs/bq-switch.cjs.entry.js.map +1 -1
  168. package/dist/cjs/bq-tab-group.cjs.entry.js +65 -57
  169. package/dist/cjs/bq-tab-group.cjs.entry.js.map +1 -1
  170. package/dist/cjs/bq-tab.cjs.entry.js +44 -33
  171. package/dist/cjs/bq-tab.cjs.entry.js.map +1 -1
  172. package/dist/cjs/bq-textarea.cjs.entry.js +81 -58
  173. package/dist/cjs/bq-textarea.cjs.entry.js.map +1 -1
  174. package/dist/cjs/bq-toast.cjs.entry.js +44 -37
  175. package/dist/cjs/bq-toast.cjs.entry.js.map +1 -1
  176. package/dist/cjs/bq-tooltip.cjs.entry.js +46 -42
  177. package/dist/cjs/bq-tooltip.cjs.entry.js.map +1 -1
  178. package/dist/cjs/{cssVariables-7139f0c6.js → cssVariables-a0e1e906.js} +3 -1
  179. package/dist/cjs/cssVariables-a0e1e906.js.map +1 -0
  180. package/dist/cjs/{debounce-f94a239b.js → debounce-1f7e1176.js} +3 -3
  181. package/dist/cjs/debounce-1f7e1176.js.map +1 -0
  182. package/dist/cjs/{index-1d3aac65.js → index-34edf639.js} +29 -14
  183. package/dist/cjs/index-34edf639.js.map +1 -0
  184. package/dist/cjs/{index-e4c116b6.js → index-fc7876d6.js} +63 -19
  185. package/dist/cjs/index-fc7876d6.js.map +1 -0
  186. package/dist/cjs/index.cjs.js +5 -5
  187. package/dist/cjs/{isDefined-a9dd6d5b.js → isDefined-ee0026ed.js} +2 -2
  188. package/dist/cjs/{isDefined-a9dd6d5b.js.map → isDefined-ee0026ed.js.map} +1 -1
  189. package/dist/cjs/loader.cjs.js +2 -2
  190. package/dist/cjs/{slot-dd6f7db9.js → slot-2fee189a.js} +3 -4
  191. package/dist/{beeq/p-d7a88b16.js.map → cjs/slot-2fee189a.js.map} +1 -1
  192. package/dist/collection/_storybook/foundation/helper/index.js +3 -3
  193. package/dist/collection/_storybook/foundation/helper/index.js.map +1 -1
  194. package/dist/collection/collection-manifest.json +2 -2
  195. package/dist/collection/components/accordion/bq-accordion.js +72 -39
  196. package/dist/collection/components/accordion/bq-accordion.js.map +1 -1
  197. package/dist/collection/components/accordion/helper/index.js +10 -4
  198. package/dist/collection/components/accordion/helper/index.js.map +1 -1
  199. package/dist/collection/components/accordion/scss/bq-accordion.css +1 -1
  200. package/dist/collection/components/accordion-group/bq-accordion-group.js +5 -0
  201. package/dist/collection/components/accordion-group/bq-accordion-group.js.map +1 -1
  202. package/dist/collection/components/accordion-group/scss/bq-accordion-group.css +1 -1
  203. package/dist/collection/components/alert/bq-alert.js +55 -37
  204. package/dist/collection/components/alert/bq-alert.js.map +1 -1
  205. package/dist/collection/components/alert/scss/bq-alert.css +1 -1
  206. package/dist/collection/components/avatar/bq-avatar.js +40 -36
  207. package/dist/collection/components/avatar/bq-avatar.js.map +1 -1
  208. package/dist/collection/components/avatar/scss/bq-avatar.css +1 -1
  209. package/dist/collection/components/badge/bq-badge.js +40 -36
  210. package/dist/collection/components/badge/bq-badge.js.map +1 -1
  211. package/dist/collection/components/badge/scss/bq-badge.css +1 -1
  212. package/dist/collection/components/breadcrumb/bq-breadcrumb.js +45 -26
  213. package/dist/collection/components/breadcrumb/bq-breadcrumb.js.map +1 -1
  214. package/dist/collection/components/breadcrumb/scss/bq-breadcrumb.css +1 -1
  215. package/dist/collection/components/breadcrumb-item/bq-breadcrumb-item.js +40 -24
  216. package/dist/collection/components/breadcrumb-item/bq-breadcrumb-item.js.map +1 -1
  217. package/dist/collection/components/breadcrumb-item/scss/bq-breadcrumb-item.css +1 -1
  218. package/dist/collection/components/button/bq-button.js +57 -41
  219. package/dist/collection/components/button/bq-button.js.map +1 -1
  220. package/dist/collection/components/button/scss/bq-button.css +1 -1
  221. package/dist/collection/components/card/bq-card.js +5 -0
  222. package/dist/collection/components/card/bq-card.js.map +1 -1
  223. package/dist/collection/components/card/scss/bq-card.css +1 -1
  224. package/dist/collection/components/checkbox/bq-checkbox.js +63 -50
  225. package/dist/collection/components/checkbox/bq-checkbox.js.map +1 -1
  226. package/dist/collection/components/checkbox/scss/bq-checkbox.css +1 -1
  227. package/dist/collection/components/date-picker/bq-date-picker.js +158 -134
  228. package/dist/collection/components/date-picker/bq-date-picker.js.map +1 -1
  229. package/dist/collection/components/date-picker/scss/bq-date-picker.css +1 -1
  230. package/dist/collection/components/dialog/bq-dialog.js +70 -45
  231. package/dist/collection/components/dialog/bq-dialog.js.map +1 -1
  232. package/dist/collection/components/dialog/scss/bq-dialog.css +1 -1
  233. package/dist/collection/components/divider/bq-divider.js +21 -15
  234. package/dist/collection/components/divider/bq-divider.js.map +1 -1
  235. package/dist/collection/components/divider/scss/bq-divider.css +1 -1
  236. package/dist/collection/components/drawer/bq-drawer.js +47 -29
  237. package/dist/collection/components/drawer/bq-drawer.js.map +1 -1
  238. package/dist/collection/components/drawer/scss/bq-drawer.css +1 -1
  239. package/dist/collection/components/dropdown/bq-dropdown.js +34 -23
  240. package/dist/collection/components/dropdown/bq-dropdown.js.map +1 -1
  241. package/dist/collection/components/empty-state/bq-empty-state.js +25 -18
  242. package/dist/collection/components/empty-state/bq-empty-state.js.map +1 -1
  243. package/dist/collection/components/icon/bq-icon.js +41 -37
  244. package/dist/collection/components/icon/bq-icon.js.map +1 -1
  245. package/dist/collection/components/icon/helper/request.js +2 -0
  246. package/dist/collection/components/icon/helper/request.js.map +1 -1
  247. package/dist/collection/components/icon/scss/bq-icon.css +1 -1
  248. package/dist/collection/components/input/bq-input.js +113 -83
  249. package/dist/collection/components/input/bq-input.js.map +1 -1
  250. package/dist/collection/components/input/scss/bq-input.css +1 -1
  251. package/dist/collection/components/notification/bq-notification.js +60 -42
  252. package/dist/collection/components/notification/bq-notification.js.map +1 -1
  253. package/dist/collection/components/notification/scss/bq-notification.css +1 -1
  254. package/dist/collection/components/option/bq-option.js +60 -40
  255. package/dist/collection/components/option/bq-option.js.map +1 -1
  256. package/dist/collection/components/option/scss/bq-option.css +1 -1
  257. package/dist/collection/components/option-group/bq-option-group.js +5 -0
  258. package/dist/collection/components/option-group/bq-option-group.js.map +1 -1
  259. package/dist/collection/components/option-group/scss/bq-option-group.css +1 -1
  260. package/dist/collection/components/option-list/bq-option-list.js +10 -0
  261. package/dist/collection/components/option-list/bq-option-list.js.map +1 -1
  262. package/dist/collection/components/option-list/scss/bq-option-list.css +1 -1
  263. package/dist/collection/components/page-title/bq-page-title.js +35 -27
  264. package/dist/collection/components/page-title/bq-page-title.js.map +1 -1
  265. package/dist/collection/components/page-title/scss/bq-page-title.css +1 -1
  266. package/dist/collection/components/panel/bq-panel.js +11 -6
  267. package/dist/collection/components/panel/bq-panel.js.map +1 -1
  268. package/dist/collection/components/panel/scss/bq-panel.css +1 -1
  269. package/dist/collection/components/progress/bq-progress.js +5 -0
  270. package/dist/collection/components/progress/bq-progress.js.map +1 -1
  271. package/dist/collection/components/progress/scss/bq-progress.css +1 -1
  272. package/dist/collection/components/radio/bq-radio.js +43 -34
  273. package/dist/collection/components/radio/bq-radio.js.map +1 -1
  274. package/dist/collection/components/radio/scss/bq-radio.css +1 -1
  275. package/dist/collection/components/radio-group/bq-radio-group.js +12 -3
  276. package/dist/collection/components/radio-group/bq-radio-group.js.map +1 -1
  277. package/dist/collection/components/select/bq-select.js +182 -161
  278. package/dist/collection/components/select/bq-select.js.map +1 -1
  279. package/dist/collection/components/select/scss/bq-select.css +1 -1
  280. package/dist/collection/components/side-menu/bq-side-menu.js +44 -29
  281. package/dist/collection/components/side-menu/bq-side-menu.js.map +1 -1
  282. package/dist/collection/components/side-menu/scss/bq-side-menu.css +1 -1
  283. package/dist/collection/components/side-menu-item/bq-side-menu-item.js +68 -51
  284. package/dist/collection/components/side-menu-item/bq-side-menu-item.js.map +1 -1
  285. package/dist/collection/components/side-menu-item/scss/bq-side-menu-item.css +1 -1
  286. package/dist/collection/components/slider/bq-slider.js +159 -140
  287. package/dist/collection/components/slider/bq-slider.js.map +1 -1
  288. package/dist/collection/components/slider/scss/bq-slider.css +1 -1
  289. package/dist/collection/components/spinner/bq-spinner.js +51 -46
  290. package/dist/collection/components/spinner/bq-spinner.js.map +1 -1
  291. package/dist/collection/components/spinner/scss/bq-spinner.css +1 -1
  292. package/dist/collection/components/status/bq-status.js +5 -0
  293. package/dist/collection/components/status/bq-status.js.map +1 -1
  294. package/dist/collection/components/status/scss/bq-status.css +1 -1
  295. package/dist/collection/components/step-item/bq-step-item.js +17 -7
  296. package/dist/collection/components/step-item/bq-step-item.js.map +1 -1
  297. package/dist/collection/components/step-item/scss/bq-step-item.css +1 -1
  298. package/dist/collection/components/steps/bq-steps.js +12 -6
  299. package/dist/collection/components/steps/bq-steps.js.map +1 -1
  300. package/dist/collection/components/steps/scss/bq-steps.css +1 -1
  301. package/dist/collection/components/switch/bq-switch.js +42 -27
  302. package/dist/collection/components/switch/bq-switch.js.map +1 -1
  303. package/dist/collection/components/switch/scss/bq-switch.css +1 -1
  304. package/dist/collection/components/tab/bq-tab.js +42 -28
  305. package/dist/collection/components/tab/bq-tab.js.map +1 -1
  306. package/dist/collection/components/tab/scss/bq-tab.css +1 -1
  307. package/dist/collection/components/tab-group/bq-tab-group.js +64 -53
  308. package/dist/collection/components/tab-group/bq-tab-group.js.map +1 -1
  309. package/dist/collection/components/tag/bq-tag.js +64 -46
  310. package/dist/collection/components/tag/bq-tag.js.map +1 -1
  311. package/dist/collection/components/tag/scss/bq-tag.css +1 -1
  312. package/dist/collection/components/textarea/bq-textarea.js +78 -52
  313. package/dist/collection/components/textarea/bq-textarea.js.map +1 -1
  314. package/dist/collection/components/textarea/scss/bq-textarea.css +1 -1
  315. package/dist/collection/components/toast/bq-toast.js +42 -32
  316. package/dist/collection/components/toast/bq-toast.js.map +1 -1
  317. package/dist/collection/components/toast/scss/bq-toast.css +1 -1
  318. package/dist/collection/components/tooltip/bq-tooltip.js +45 -38
  319. package/dist/collection/components/tooltip/bq-tooltip.js.map +1 -1
  320. package/dist/collection/components/tooltip/scss/bq-tooltip.css +1 -1
  321. package/dist/collection/index.js +0 -1
  322. package/dist/collection/index.js.map +1 -1
  323. package/dist/collection/services/libraries/floating-ui/index.js +4 -0
  324. package/dist/collection/services/libraries/floating-ui/index.js.map +1 -1
  325. package/dist/collection/shared/utils/assetsPath.js +8 -32
  326. package/dist/collection/shared/utils/assetsPath.js.map +1 -1
  327. package/dist/collection/shared/utils/cssVariables.js +2 -0
  328. package/dist/collection/shared/utils/cssVariables.js.map +1 -1
  329. package/dist/collection/shared/utils/debounce.js +2 -2
  330. package/dist/collection/shared/utils/debounce.js.map +1 -1
  331. package/dist/collection/shared/utils/slot.js +2 -3
  332. package/dist/collection/shared/utils/slot.js.map +1 -1
  333. package/dist/components/assetsPath.js +8 -32
  334. package/dist/components/assetsPath.js.map +1 -1
  335. package/dist/components/bq-accordion-group.js +2 -2
  336. package/dist/components/bq-accordion-group.js.map +1 -1
  337. package/dist/components/bq-accordion.js +81 -45
  338. package/dist/components/bq-accordion.js.map +1 -1
  339. package/dist/components/bq-alert.js +54 -39
  340. package/dist/components/bq-alert.js.map +1 -1
  341. package/dist/components/bq-avatar.js +39 -38
  342. package/dist/components/bq-avatar.js.map +1 -1
  343. package/dist/components/bq-badge2.js +39 -38
  344. package/dist/components/bq-badge2.js.map +1 -1
  345. package/dist/components/bq-breadcrumb-item.js +37 -26
  346. package/dist/components/bq-breadcrumb-item.js.map +1 -1
  347. package/dist/components/bq-breadcrumb.js +44 -28
  348. package/dist/components/bq-breadcrumb.js.map +1 -1
  349. package/dist/components/bq-button2.js +56 -43
  350. package/dist/components/bq-button2.js.map +1 -1
  351. package/dist/components/bq-card.js +2 -2
  352. package/dist/components/bq-card.js.map +1 -1
  353. package/dist/components/bq-checkbox.js +62 -52
  354. package/dist/components/bq-checkbox.js.map +1 -1
  355. package/dist/components/bq-date-picker.js +157 -136
  356. package/dist/components/bq-date-picker.js.map +1 -1
  357. package/dist/components/bq-dialog.js +69 -47
  358. package/dist/components/bq-dialog.js.map +1 -1
  359. package/dist/components/bq-divider2.js +20 -17
  360. package/dist/components/bq-divider2.js.map +1 -1
  361. package/dist/components/bq-drawer.js +46 -31
  362. package/dist/components/bq-drawer.js.map +1 -1
  363. package/dist/components/bq-dropdown2.js +32 -24
  364. package/dist/components/bq-dropdown2.js.map +1 -1
  365. package/dist/components/bq-empty-state.js +23 -19
  366. package/dist/components/bq-empty-state.js.map +1 -1
  367. package/dist/components/bq-icon2.js +44 -38
  368. package/dist/components/bq-icon2.js.map +1 -1
  369. package/dist/components/bq-input.js +112 -85
  370. package/dist/components/bq-input.js.map +1 -1
  371. package/dist/components/bq-notification.js +59 -44
  372. package/dist/components/bq-notification.js.map +1 -1
  373. package/dist/components/bq-option-group.js +2 -2
  374. package/dist/components/bq-option-group.js.map +1 -1
  375. package/dist/components/bq-option-list2.js +7 -2
  376. package/dist/components/bq-option-list2.js.map +1 -1
  377. package/dist/components/bq-option.js +59 -42
  378. package/dist/components/bq-option.js.map +1 -1
  379. package/dist/components/bq-page-title.js +34 -29
  380. package/dist/components/bq-page-title.js.map +1 -1
  381. package/dist/components/bq-panel2.js +10 -8
  382. package/dist/components/bq-panel2.js.map +1 -1
  383. package/dist/components/bq-progress.js +2 -2
  384. package/dist/components/bq-progress.js.map +1 -1
  385. package/dist/components/bq-radio-group.js +10 -4
  386. package/dist/components/bq-radio-group.js.map +1 -1
  387. package/dist/components/bq-radio.js +43 -37
  388. package/dist/components/bq-radio.js.map +1 -1
  389. package/dist/components/bq-select.js +181 -163
  390. package/dist/components/bq-select.js.map +1 -1
  391. package/dist/components/bq-side-menu-item.js +67 -53
  392. package/dist/components/bq-side-menu-item.js.map +1 -1
  393. package/dist/components/bq-side-menu.js +45 -30
  394. package/dist/components/bq-side-menu.js.map +1 -1
  395. package/dist/components/bq-slider.js +158 -142
  396. package/dist/components/bq-slider.js.map +1 -1
  397. package/dist/components/bq-spinner.js +49 -47
  398. package/dist/components/bq-spinner.js.map +1 -1
  399. package/dist/components/bq-status.js +2 -2
  400. package/dist/components/bq-status.js.map +1 -1
  401. package/dist/components/bq-step-item.js +14 -9
  402. package/dist/components/bq-step-item.js.map +1 -1
  403. package/dist/components/bq-steps.js +11 -8
  404. package/dist/components/bq-steps.js.map +1 -1
  405. package/dist/components/bq-switch.js +41 -29
  406. package/dist/components/bq-switch.js.map +1 -1
  407. package/dist/components/bq-tab-group.js +62 -54
  408. package/dist/components/bq-tab-group.js.map +1 -1
  409. package/dist/components/bq-tab.js +41 -30
  410. package/dist/components/bq-tab.js.map +1 -1
  411. package/dist/components/bq-tag2.js +63 -48
  412. package/dist/components/bq-tag2.js.map +1 -1
  413. package/dist/components/bq-textarea.js +77 -54
  414. package/dist/components/bq-textarea.js.map +1 -1
  415. package/dist/components/bq-toast.js +41 -34
  416. package/dist/components/bq-toast.js.map +1 -1
  417. package/dist/components/bq-tooltip2.js +44 -40
  418. package/dist/components/bq-tooltip2.js.map +1 -1
  419. package/dist/components/cssVariables.js +2 -0
  420. package/dist/components/cssVariables.js.map +1 -1
  421. package/dist/components/debounce.js +2 -2
  422. package/dist/components/debounce.js.map +1 -1
  423. package/dist/components/index2.js +62 -18
  424. package/dist/components/index2.js.map +1 -1
  425. package/dist/components/slot.js +2 -3
  426. package/dist/components/slot.js.map +1 -1
  427. package/dist/esm/{assetsPath-c02b0e16.js → assetsPath-e2f1ceb9.js} +9 -33
  428. package/dist/esm/assetsPath-e2f1ceb9.js.map +1 -0
  429. package/dist/esm/beeq.js +4 -4
  430. package/dist/esm/beeq.js.map +1 -1
  431. package/dist/esm/bq-accordion-group.entry.js +4 -4
  432. package/dist/esm/bq-accordion-group.entry.js.map +1 -1
  433. package/dist/esm/bq-accordion.entry.js +84 -48
  434. package/dist/esm/bq-accordion.entry.js.map +1 -1
  435. package/dist/esm/bq-alert.entry.js +58 -43
  436. package/dist/esm/bq-alert.entry.js.map +1 -1
  437. package/dist/esm/bq-avatar.entry.js +41 -40
  438. package/dist/esm/bq-avatar.entry.js.map +1 -1
  439. package/dist/esm/bq-badge.entry.js +43 -42
  440. package/dist/esm/bq-badge.entry.js.map +1 -1
  441. package/dist/esm/bq-breadcrumb-item.entry.js +40 -29
  442. package/dist/esm/bq-breadcrumb-item.entry.js.map +1 -1
  443. package/dist/esm/bq-breadcrumb.entry.js +46 -30
  444. package/dist/esm/bq-breadcrumb.entry.js.map +1 -1
  445. package/dist/esm/bq-button_2.entry.js +105 -86
  446. package/dist/esm/bq-button_2.entry.js.map +1 -1
  447. package/dist/esm/bq-card.entry.js +4 -4
  448. package/dist/esm/bq-card.entry.js.map +1 -1
  449. package/dist/esm/bq-checkbox.entry.js +64 -54
  450. package/dist/esm/bq-checkbox.entry.js.map +1 -1
  451. package/dist/esm/bq-date-picker.entry.js +161 -140
  452. package/dist/esm/bq-date-picker.entry.js.map +1 -1
  453. package/dist/esm/bq-dialog.entry.js +72 -50
  454. package/dist/esm/bq-dialog.entry.js.map +1 -1
  455. package/dist/esm/bq-divider.entry.js +24 -21
  456. package/dist/esm/bq-divider.entry.js.map +1 -1
  457. package/dist/esm/bq-drawer.entry.js +49 -34
  458. package/dist/esm/bq-drawer.entry.js.map +1 -1
  459. package/dist/esm/bq-dropdown_2.entry.js +44 -34
  460. package/dist/esm/bq-dropdown_2.entry.js.map +1 -1
  461. package/dist/esm/bq-empty-state.entry.js +26 -22
  462. package/dist/esm/bq-empty-state.entry.js.map +1 -1
  463. package/dist/esm/bq-input.entry.js +117 -90
  464. package/dist/esm/bq-input.entry.js.map +1 -1
  465. package/dist/esm/bq-notification.entry.js +63 -48
  466. package/dist/esm/bq-notification.entry.js.map +1 -1
  467. package/dist/esm/bq-option-group.entry.js +3 -3
  468. package/dist/esm/bq-option-group.entry.js.map +1 -1
  469. package/dist/esm/bq-option-list_2.entry.js +74 -54
  470. package/dist/esm/bq-option-list_2.entry.js.map +1 -1
  471. package/dist/esm/bq-option.entry.js +62 -45
  472. package/dist/esm/bq-option.entry.js.map +1 -1
  473. package/dist/esm/bq-page-title.entry.js +37 -32
  474. package/dist/esm/bq-page-title.entry.js.map +1 -1
  475. package/dist/esm/bq-progress.entry.js +4 -4
  476. package/dist/esm/bq-progress.entry.js.map +1 -1
  477. package/dist/esm/bq-radio-group.entry.js +13 -7
  478. package/dist/esm/bq-radio-group.entry.js.map +1 -1
  479. package/dist/esm/bq-radio.entry.js +43 -37
  480. package/dist/esm/bq-radio.entry.js.map +1 -1
  481. package/dist/esm/bq-select.entry.js +186 -168
  482. package/dist/esm/bq-select.entry.js.map +1 -1
  483. package/dist/esm/bq-side-menu-item.entry.js +69 -55
  484. package/dist/esm/bq-side-menu-item.entry.js.map +1 -1
  485. package/dist/esm/bq-side-menu.entry.js +47 -32
  486. package/dist/esm/bq-side-menu.entry.js.map +1 -1
  487. package/dist/esm/bq-slider.entry.js +161 -145
  488. package/dist/esm/bq-slider.entry.js.map +1 -1
  489. package/dist/esm/bq-spinner.entry.js +53 -51
  490. package/dist/esm/bq-spinner.entry.js.map +1 -1
  491. package/dist/esm/bq-status.entry.js +4 -4
  492. package/dist/esm/bq-status.entry.js.map +1 -1
  493. package/dist/esm/bq-step-item.entry.js +16 -11
  494. package/dist/esm/bq-step-item.entry.js.map +1 -1
  495. package/dist/esm/bq-steps.entry.js +13 -10
  496. package/dist/esm/bq-steps.entry.js.map +1 -1
  497. package/dist/esm/bq-switch.entry.js +44 -32
  498. package/dist/esm/bq-switch.entry.js.map +1 -1
  499. package/dist/esm/bq-tab-group.entry.js +65 -57
  500. package/dist/esm/bq-tab-group.entry.js.map +1 -1
  501. package/dist/esm/bq-tab.entry.js +44 -33
  502. package/dist/esm/bq-tab.entry.js.map +1 -1
  503. package/dist/esm/bq-textarea.entry.js +81 -58
  504. package/dist/esm/bq-textarea.entry.js.map +1 -1
  505. package/dist/esm/bq-toast.entry.js +44 -37
  506. package/dist/esm/bq-toast.entry.js.map +1 -1
  507. package/dist/esm/bq-tooltip.entry.js +46 -42
  508. package/dist/esm/bq-tooltip.entry.js.map +1 -1
  509. package/dist/esm/{cssVariables-5ffccc29.js → cssVariables-23e3ca0d.js} +3 -1
  510. package/dist/esm/cssVariables-23e3ca0d.js.map +1 -0
  511. package/dist/esm/{debounce-c82e3da1.js → debounce-3e72f418.js} +3 -3
  512. package/dist/esm/debounce-3e72f418.js.map +1 -0
  513. package/dist/esm/{index-f69556fe.js → index-033f1efb.js} +29 -15
  514. package/dist/esm/index-033f1efb.js.map +1 -0
  515. package/dist/esm/{index-136429a6.js → index-1618c78b.js} +63 -19
  516. package/dist/esm/index-1618c78b.js.map +1 -0
  517. package/dist/esm/index.js +6 -6
  518. package/dist/esm/{isDefined-1e676215.js → isDefined-650befc3.js} +2 -2
  519. package/dist/esm/{isDefined-1e676215.js.map → isDefined-650befc3.js.map} +1 -1
  520. package/dist/esm/loader.js +3 -3
  521. package/dist/esm/{slot-179d109d.js → slot-58bfedb5.js} +3 -4
  522. package/dist/esm/slot-58bfedb5.js.map +1 -0
  523. package/dist/hydrate/index.d.ts +10 -4
  524. package/dist/hydrate/index.js +3778 -1946
  525. package/dist/hydrate/index.mjs +3778 -1946
  526. package/dist/types/_storybook/foundation/helper/index.d.ts +1 -3
  527. package/dist/types/components/radio/bq-radio.d.ts +0 -5
  528. package/dist/types/index.d.ts +1 -1
  529. package/dist/types/shared/utils/assetsPath.d.ts +1 -10
  530. package/dist/types/shared/utils/cssVariables.d.ts +1 -1
  531. package/dist/types/stencil-public-runtime.d.ts +4 -0
  532. package/package.json +4 -4
  533. package/dist/beeq/p-026222c6.entry.js +0 -309
  534. package/dist/beeq/p-026222c6.entry.js.map +0 -1
  535. package/dist/beeq/p-04d98ed3.entry.js +0 -257
  536. package/dist/beeq/p-04d98ed3.entry.js.map +0 -1
  537. package/dist/beeq/p-05685544.entry.js +0 -121
  538. package/dist/beeq/p-05685544.entry.js.map +0 -1
  539. package/dist/beeq/p-0ab0b58d.js.map +0 -1
  540. package/dist/beeq/p-0c42c08a.js.map +0 -1
  541. package/dist/beeq/p-11eaeb5d.entry.js.map +0 -1
  542. package/dist/beeq/p-12dbc6ac.entry.js +0 -87
  543. package/dist/beeq/p-19df76ba.entry.js +0 -220
  544. package/dist/beeq/p-2ef721e1.entry.js.map +0 -1
  545. package/dist/beeq/p-37466506.entry.js +0 -103
  546. package/dist/beeq/p-377c70d1.entry.js +0 -173
  547. package/dist/beeq/p-377c70d1.entry.js.map +0 -1
  548. package/dist/beeq/p-38d4bd8a.js.map +0 -1
  549. package/dist/beeq/p-3dd0e436.entry.js +0 -130
  550. package/dist/beeq/p-3dd0e436.entry.js.map +0 -1
  551. package/dist/beeq/p-41033fe6.entry.js +0 -84
  552. package/dist/beeq/p-43e4fcdb.entry.js +0 -173
  553. package/dist/beeq/p-43e4fcdb.entry.js.map +0 -1
  554. package/dist/beeq/p-4a235cd2.entry.js +0 -258
  555. package/dist/beeq/p-4a235cd2.entry.js.map +0 -1
  556. package/dist/beeq/p-4eccc020.entry.js +0 -203
  557. package/dist/beeq/p-4eccc020.entry.js.map +0 -1
  558. package/dist/beeq/p-4fc098bb.entry.js +0 -90
  559. package/dist/beeq/p-5eab4f55.entry.js +0 -117
  560. package/dist/beeq/p-600e7c38.entry.js +0 -102
  561. package/dist/beeq/p-7089c66a.entry.js +0 -156
  562. package/dist/beeq/p-734853f9.entry.js +0 -259
  563. package/dist/beeq/p-7774eec3.entry.js +0 -135
  564. package/dist/beeq/p-7774eec3.entry.js.map +0 -1
  565. package/dist/beeq/p-7b9ff03f.entry.js +0 -437
  566. package/dist/beeq/p-7b9ff03f.entry.js.map +0 -1
  567. package/dist/beeq/p-900d4e78.entry.js +0 -102
  568. package/dist/beeq/p-911e07b7.entry.js +0 -513
  569. package/dist/beeq/p-911e07b7.entry.js.map +0 -1
  570. package/dist/beeq/p-924ebf7d.entry.js +0 -394
  571. package/dist/beeq/p-924ebf7d.entry.js.map +0 -1
  572. package/dist/beeq/p-9aa18e2f.entry.js +0 -303
  573. package/dist/beeq/p-9aa18e2f.entry.js.map +0 -1
  574. package/dist/beeq/p-ae94b9f8.entry.js +0 -144
  575. package/dist/beeq/p-b38e8c5a.entry.js +0 -208
  576. package/dist/beeq/p-b38e8c5a.entry.js.map +0 -1
  577. package/dist/beeq/p-b4278945.entry.js +0 -195
  578. package/dist/beeq/p-b4278945.entry.js.map +0 -1
  579. package/dist/beeq/p-b48545b6.entry.js +0 -248
  580. package/dist/beeq/p-b48545b6.entry.js.map +0 -1
  581. package/dist/beeq/p-c907de72.entry.js +0 -145
  582. package/dist/beeq/p-c907de72.entry.js.map +0 -1
  583. package/dist/beeq/p-ceb3bb9a.entry.js +0 -187
  584. package/dist/beeq/p-d3008f60.entry.js +0 -279
  585. package/dist/beeq/p-d3008f60.entry.js.map +0 -1
  586. package/dist/beeq/p-e5afdf8c.js +0 -87
  587. package/dist/beeq/p-e5afdf8c.js.map +0 -1
  588. package/dist/beeq/p-e7d75b87.entry.js +0 -144
  589. package/dist/beeq/p-f00abfb8.entry.js +0 -145
  590. package/dist/beeq/p-f00abfb8.entry.js.map +0 -1
  591. package/dist/beeq/p-f8663855.entry.js +0 -329
  592. package/dist/beeq/p-f8663855.entry.js.map +0 -1
  593. package/dist/cjs/assetsPath-7ead23b7.js.map +0 -1
  594. package/dist/cjs/cssVariables-7139f0c6.js.map +0 -1
  595. package/dist/cjs/debounce-f94a239b.js.map +0 -1
  596. package/dist/cjs/index-1d3aac65.js.map +0 -1
  597. package/dist/cjs/index-e4c116b6.js.map +0 -1
  598. package/dist/cjs/slot-dd6f7db9.js.map +0 -1
  599. package/dist/esm/assetsPath-c02b0e16.js.map +0 -1
  600. package/dist/esm/cssVariables-5ffccc29.js.map +0 -1
  601. package/dist/esm/debounce-c82e3da1.js.map +0 -1
  602. package/dist/esm/index-136429a6.js.map +0 -1
  603. package/dist/esm/index-f69556fe.js.map +0 -1
  604. package/dist/esm/slot-179d109d.js.map +0 -1
  605. /package/dist/beeq/{p-513bab02.js.map → p-0fce4de9.js.map} +0 -0
@@ -21,7 +21,7 @@ const clamp = (value, min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEG
21
21
  return Math.min(Math.max(min, value), max);
22
22
  };
23
23
 
24
- const bqSliderCss = "::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{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);font-family:var(--bq-font-family);line-height:var(--bq-font-line-height--regular);min-height:100vh;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}}: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.light,.light,:root,[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-200);--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}.beeq.dark,.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-800);--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}.endava,[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,[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-200);--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-800);--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}.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))}.pointer-events-auto{pointer-events:auto}.box-content{box-sizing:content-box}.block{display:block}.size-\\[--bq-slider--thumb-size\\]{height:var(--bq-slider--thumb-size);width:var(--bq-slider--thumb-size)}.cursor-grabbing{cursor:grabbing}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.appearance-none{appearance:none}.rounded-full{border-radius:var(--bq-radius--full)}.border-m{border-width:var(--bq-stroke-m)}.border-solid{border-style:solid}.border-stroke-brand{border-color:var(--bq-stroke--brand)}.transition-\\[background-color\\2c border-color\\2c box-shadow\\]{transition-duration:.15s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.bg-active-ui-brand{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%)}.border-active-stroke-brand{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%)}.border-hover-stroke-brand{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}.is-full{inline-size:100%}.focus{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}.thumb{appearance:none;background-color:var(--bq-ui--primary);border-color:var(--bq-stroke--brand);border-radius:var(--bq-radius--full);border-style:solid;border-width:var(--bq-stroke-m);box-sizing:content-box;cursor:pointer;height:var(--bq-slider--thumb-size);pointer-events:auto;transition-duration:.3s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--bq-slider--thumb-size)}.thumb-focus{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}.thumb-hover{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}.thumb-active{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%);border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%);cursor:grabbing}@-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-slider--size:4px;--bq-slider--border-radius:var(--bq-radius--xs);--bq-slider--thumb-size:13px;--bq-slider--progress-color:var(--bq-ui--brand);--bq-slider--trackarea-color:var(--bq-ui--secondary);display:block;inline-size:100%}input[type=range]::-webkit-slider-thumb{appearance:none;background-color:var(--bq-ui--primary);border-color:var(--bq-stroke--brand);border-radius:var(--bq-radius--full);border-style:solid;border-width:var(--bq-stroke-m);box-sizing:content-box;cursor:pointer;height:var(--bq-slider--thumb-size);pointer-events:auto;transition-duration:.3s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--bq-slider--thumb-size)}input[type=range]::-webkit-slider-runnable-track{transition-duration:.3s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,1,1)}input[type=range]:focus-visible::-webkit-slider-thumb{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}input[type=range]:hover::-webkit-slider-thumb{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}input[type=range]:active::-webkit-slider-thumb{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%);border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%);cursor:grabbing}input[type=range][disabled]::-webkit-slider-thumb{cursor:not-allowed}input[type=range]::-moz-range-thumb{appearance:none;background-color:var(--bq-ui--primary);border-color:var(--bq-stroke--brand);border-radius:var(--bq-radius--full);border-style:solid;border-width:var(--bq-stroke-m);box-sizing:content-box;cursor:pointer;height:var(--bq-slider--thumb-size);pointer-events:auto;transition-duration:.3s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--bq-slider--thumb-size)}input[type=range]::-moz-range-track{transition-duration:.3s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,1,1)}input[type=range]:focus-visible::-moz-range-thumb{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}input[type=range]:hover::-moz-range-thumb{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}input[type=range]:active::-moz-range-thumb{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%);border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%);cursor:grabbing}input[type=range][disabled]::-moz-range-thumb{cursor:not-allowed}.-translate-y-1\\/2{--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-translate-y:-50%;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))}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.pointer-events-none{pointer-events:none}.static{position:static}.absolute{position:absolute}.relative{position:relative}.start-0{inset-inline-start:0}.me-xs{margin-inline-end:var(--bq-spacing-xs)}.ms-xs{margin-inline-start:var(--bq-spacing-xs)}.flex{display:flex}.hidden{display:none}.rounded-xs{border-radius:var(--bq-radius--xs)}.bg-\\[--bq-slider--progress-color\\]{background-color:var(--bq-slider--progress-color)}.bg-\\[--bq-slider--trackarea-color\\]{background-color:var(--bq-slider--trackarea-color)}.bg-transparent{background-color:transparent}.text-start{text-align:start}.text-end{text-align:end}.text-s{font-size:var(--bq-font-size--s)}.font-medium{font-weight:var(--bq-font-weight--medium)}.leading-regular{line-height:var(--bq-font-line-height--regular)}.text-text-primary{color:var(--bq-text--primary)}.opacity-60{opacity:.6}.outline-none{outline:2px solid transparent;outline-offset:2px}.bs-1{block-size:.25rem}.is-1{inline-size:.25rem}.is-\\[50\\%\\]{inline-size:50%}.is-fit{inline-size:fit-content}.min-is-8{min-inline-size:2rem}.inset-bs-\\[50\\%\\]{inset-block-start:50%}.\\[font-variant\\:tabular-nums\\]{font-variant:tabular-nums}.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}}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.\\[\\&\\:\\:part\\(panel\\)\\]\\:absolute::part(panel){position:absolute}.visible{visibility:visible}.fixed{position:fixed}";
24
+ const bqSliderCss = ".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{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);font-family:var(--bq-font-family);line-height:var(--bq-font-line-height--regular);min-height:100vh;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}}: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.light,.light,:root,[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-200);--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}.beeq.dark,.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-800);--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}.endava,[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,[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-200);--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-800);--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}.pointer-events-auto{pointer-events:auto}.box-content{box-sizing:content-box}.block{display:block}.size-\\[--bq-slider--thumb-size\\]{height:var(--bq-slider--thumb-size);width:var(--bq-slider--thumb-size)}.cursor-grabbing{cursor:grabbing}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.appearance-none{appearance:none}.rounded-full{border-radius:var(--bq-radius--full)}.border-m{border-width:var(--bq-stroke-m)}.border-solid{border-style:solid}.border-stroke-brand{border-color:var(--bq-stroke--brand)}.transition-\\[background-color\\2c border-color\\2c box-shadow\\]{transition-duration:.15s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.bg-active-ui-brand{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%)}.border-active-stroke-brand{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%)}.border-hover-stroke-brand{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}.is-full{inline-size:100%}.focus{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}.thumb{appearance:none;background-color:var(--bq-ui--primary);border-color:var(--bq-stroke--brand);border-radius:var(--bq-radius--full);border-style:solid;border-width:var(--bq-stroke-m);box-sizing:content-box;cursor:pointer;height:var(--bq-slider--thumb-size);pointer-events:auto;transition-duration:.3s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--bq-slider--thumb-size)}.thumb-focus{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}.thumb-hover{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}.thumb-active{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%);border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%);cursor:grabbing}@-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-slider--size:4px;--bq-slider--border-radius:var(--bq-radius--xs);--bq-slider--thumb-size:13px;--bq-slider--progress-color:var(--bq-ui--brand);--bq-slider--trackarea-color:var(--bq-ui--secondary);display:block;inline-size:100%}input[type=range]::-webkit-slider-thumb{appearance:none;background-color:var(--bq-ui--primary);border-color:var(--bq-stroke--brand);border-radius:var(--bq-radius--full);border-style:solid;border-width:var(--bq-stroke-m);box-sizing:content-box;cursor:pointer;height:var(--bq-slider--thumb-size);pointer-events:auto;transition-duration:.3s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--bq-slider--thumb-size)}input[type=range]::-webkit-slider-runnable-track{transition-duration:.3s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,1,1)}input[type=range]:focus-visible::-webkit-slider-thumb{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}input[type=range]:hover::-webkit-slider-thumb{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}input[type=range]:active::-webkit-slider-thumb{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%);border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%);cursor:grabbing}input[type=range][disabled]::-webkit-slider-thumb{cursor:not-allowed}input[type=range]::-moz-range-thumb{appearance:none;background-color:var(--bq-ui--primary);border-color:var(--bq-stroke--brand);border-radius:var(--bq-radius--full);border-style:solid;border-width:var(--bq-stroke-m);box-sizing:content-box;cursor:pointer;height:var(--bq-slider--thumb-size);pointer-events:auto;transition-duration:.3s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--bq-slider--thumb-size)}input[type=range]::-moz-range-track{transition-duration:.3s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,1,1)}input[type=range]:focus-visible::-moz-range-thumb{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}input[type=range]:hover::-moz-range-thumb{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}input[type=range]:active::-moz-range-thumb{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%);border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%);cursor:grabbing}input[type=range][disabled]::-moz-range-thumb{cursor:not-allowed}.-translate-y-1\\/2{--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-translate-y:-50%;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))}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.pointer-events-none{pointer-events:none}.static{position:static}.absolute{position:absolute}.relative{position:relative}.start-0{inset-inline-start:0}.me-xs{margin-inline-end:var(--bq-spacing-xs)}.ms-xs{margin-inline-start:var(--bq-spacing-xs)}.flex{display:flex}.hidden{display:none}.rounded-xs{border-radius:var(--bq-radius--xs)}.bg-\\[--bq-slider--progress-color\\]{background-color:var(--bq-slider--progress-color)}.bg-\\[--bq-slider--trackarea-color\\]{background-color:var(--bq-slider--trackarea-color)}.bg-transparent{background-color:transparent}.text-start{text-align:start}.text-end{text-align:end}.text-s{font-size:var(--bq-font-size--s)}.font-medium{font-weight:var(--bq-font-weight--medium)}.leading-regular{line-height:var(--bq-font-line-height--regular)}.text-text-primary{color:var(--bq-text--primary)}.opacity-60{opacity:.6}.outline-none{outline:2px solid transparent;outline-offset:2px}.bs-1{block-size:.25rem}.is-1{inline-size:.25rem}.is-\\[50\\%\\]{inline-size:50%}.is-fit{inline-size:fit-content}.min-is-8{min-inline-size:2rem}.inset-bs-\\[50\\%\\]{inset-block-start:50%}.\\[font-variant\\:tabular-nums\\]{font-variant:tabular-nums}.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}}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.\\[\\&\\:\\:part\\(panel\\)\\]\\:absolute::part(panel){position:absolute}.visible{visibility:visible}.fixed{position:fixed}";
25
25
  const BqSliderStyle0 = bqSliderCss;
26
26
 
27
27
  const BqSlider$1 = /*@__PURE__*/ proxyCustomElement(class BqSlider extends HTMLElement {
@@ -32,146 +32,6 @@ const BqSlider$1 = /*@__PURE__*/ proxyCustomElement(class BqSlider extends HTMLE
32
32
  this.bqChange = createEvent(this, "bqChange", 7);
33
33
  this.bqBlur = createEvent(this, "bqBlur", 7);
34
34
  this.bqFocus = createEvent(this, "bqFocus", 7);
35
- // Listeners
36
- // ==============
37
- // Public methods API
38
- // These methods are exposed on the host element.
39
- // Always use two lines.
40
- // Public Methods must be async.
41
- // Requires JSDocs for public API documentation.
42
- // ===============================================
43
- // Local methods
44
- // Internal business logic.
45
- // These methods cannot be called from the host element.
46
- // =======================================================
47
- this.init = () => {
48
- this.handleGapChange(this.gap);
49
- this.setState(this.value);
50
- this.handleStepPropChange();
51
- };
52
- this.runUpdates = () => {
53
- this.updateProgressTrack();
54
- this.syncInputsValue();
55
- this.setThumbPosition();
56
- };
57
- this.setState = (newValue) => {
58
- const isRangeType = this.isRangeType;
59
- const value = this.stringToObject(newValue);
60
- this.minValue = isRangeType ? clamp(value[0], this.min, this.max - this.gap) : value;
61
- this.maxValue = isRangeType ? clamp(value[1], this.minValue + this.gap, this.max) : this.minValue;
62
- };
63
- this.setThumbPosition = () => {
64
- if (!this.enableTooltip)
65
- return;
66
- // Destructure the returned object from this.thumbPosition() and assign the properties to this.minThumbPosition and this.maxThumbPosition
67
- ({ minThumbPosition: this.minThumbPosition, maxThumbPosition: this.maxThumbPosition } = this.thumbPosition());
68
- };
69
- this.syncInputsValue = () => {
70
- var _a, _b;
71
- (_a = this.inputMinElem) === null || _a === void 0 ? void 0 : _a.setAttribute('value', this.minValue.toString());
72
- (_b = this.inputMaxElem) === null || _b === void 0 ? void 0 : _b.setAttribute('value', this.maxValue.toString());
73
- };
74
- this.stringToObject = (value) => (isString(value) ? JSON.parse(value) : value);
75
- this.handleInputChange = (type, event) => {
76
- const target = event.target;
77
- const value = parseFloat(target.value);
78
- if (type === 'min') {
79
- this.minValue = this.isRangeType ? Math.min(value, this.maxValue - this.gap) : value;
80
- }
81
- else if (type === 'max') {
82
- this.maxValue = this.isRangeType ? Math.max(value, this.minValue + this.gap) : value;
83
- }
84
- // Update the input value to reflect the clamped value
85
- const reflectedValue = (type === 'min' ? this.minValue : this.maxValue).toString();
86
- target.value = reflectedValue;
87
- target.setAttribute('value', reflectedValue);
88
- // Sync the prop value.
89
- // This will trigger the `@Watch('value')` method and emit the `bqChange` event.
90
- this.value = this.isRangeType ? [this.minValue, this.maxValue] : this.minValue;
91
- };
92
- this.calculatePercent = (value) => {
93
- const totalRange = Number(this.max) - Number(this.min);
94
- return (value / totalRange) * 100;
95
- };
96
- this.updateProgressTrack = () => {
97
- if (!this.progressElem)
98
- return;
99
- // For range type, left starts from the `min` value and width is the difference between `max` and `min`.
100
- // For non-range type, left starts from 0 and width is the `min` value.
101
- const left = this.isRangeType ? this.calculatePercent(this.minValue) : 0;
102
- const width = this.isRangeType
103
- ? this.calculatePercent(Number(this.maxValue) - Number(this.minValue))
104
- : this.calculatePercent(this.minValue);
105
- this.progressElem.style.insetInlineStart = `${left}%`;
106
- this.progressElem.style.inlineSize = `${width}%`;
107
- };
108
- this.calculateThumbPosition = (value) => {
109
- if (!this.progressElem)
110
- return;
111
- // Get the width of the track area and the size of the input range thumb
112
- const trackAreaWidth = this.trackElem.getBoundingClientRect().width;
113
- // We need to also add 4px to the thumb size,
114
- // this is because the thumb is 2px border (`border-m`)
115
- const inputThumbSize = parseInt(getComputedStyle(this.el).getPropertyValue('--bq-slider--thumb-size'), 10) + 4;
116
- const totalWidth = trackAreaWidth - inputThumbSize;
117
- return ((value - this.min) / (this.max - this.min)) * totalWidth + inputThumbSize / 2;
118
- };
119
- this.thumbPosition = () => {
120
- const minThumbPosition = this.calculateThumbPosition(this.minValue);
121
- const maxThumbPosition = this.isRangeType ? this.calculateThumbPosition(this.maxValue) : undefined;
122
- return { minThumbPosition, maxThumbPosition };
123
- };
124
- this.emitBqChange = () => {
125
- var _a;
126
- (_a = this.debounceBqChange) === null || _a === void 0 ? void 0 : _a.cancel();
127
- const value = this.isRangeType ? [this.minValue, this.maxValue] : this.minValue;
128
- this.debounceBqChange = debounce(() => this.bqChange.emit({ value, el: this.el }), this.debounceTime);
129
- this.debounceBqChange();
130
- };
131
- this.handleBlur = () => {
132
- this.bqBlur.emit(this.el);
133
- };
134
- this.handleFocus = () => {
135
- this.bqFocus.emit(this.el);
136
- };
137
- this.handleMouseDown = (event) => {
138
- this.handleTooltipVisibility(event, 'remove');
139
- };
140
- this.handleMouseUp = (event) => {
141
- this.handleTooltipVisibility(event, 'add');
142
- };
143
- this.handleTooltipVisibility = (event, action) => {
144
- if (!this.enableTooltip || this.tooltipAlwaysVisible)
145
- return;
146
- const target = event.target;
147
- const tooltipElem = target === this.inputMinElem ? this.minTooltipElem : this.maxTooltipElem;
148
- tooltipElem.classList[action]('hidden');
149
- };
150
- this.renderLabel = (value, position, css) => {
151
- return (h("span", { class: {
152
- [`${css} box-content block text-s font-medium leading-regular text-text-primary is-fit min-is-8 [font-variant:tabular-nums]`]: true,
153
- hidden: position === 'start' ? !this.enableValueIndicator : !this.enableValueIndicator || !this.isRangeType,
154
- }, part: `label-${position}` }, value.toFixed(this.decimalCount)));
155
- };
156
- this.renderInput = (type, value, refCallback) => {
157
- // Determine the zIndex value based on the type and the current min and max values.
158
- const zIndexValue = (type) => {
159
- const zIndex = {
160
- min: this.minValue === this.min && this.maxValue === this.minValue,
161
- max: this.maxValue === this.max && this.minValue === this.maxValue,
162
- };
163
- // If the value of both thumbs is the same as the min or max value, set the zIndex to -1
164
- return zIndex[type] ? '-1' : '0';
165
- };
166
- return (h("input", { type: "range", class: {
167
- 'absolute start-0 -translate-y-1/2 cursor-pointer appearance-none bg-transparent outline-none is-full inset-bs-[50%] disabled:cursor-not-allowed': true,
168
- 'pointer-events-none': this.isRangeType,
169
- }, style: this.isRangeType ? { zIndex: zIndexValue(type) } : undefined, disabled: this.disabled, min: this.min, max: this.max, step: this.step, ref: refCallback, onInput: (ev) => this.handleInputChange(type, ev), onBlur: this.handleBlur, onFocus: this.handleFocus, onMouseDown: this.handleMouseDown, onMouseUp: this.handleMouseUp, value: value, part: `input-${type}` }));
170
- };
171
- this.renderTooltip = (value, thumbPosition, refCallback) => (h("bq-tooltip", { class: {
172
- 'absolute [&::part(panel)]:absolute': true,
173
- hidden: !this.isTooltipAlwaysVisible,
174
- }, exportparts: "base,trigger,panel", alwaysVisible: true, distance: this.enableValueIndicator ? 6 : 16, style: { insetInlineStart: `${thumbPosition}px`, fontVariant: 'tabular-nums' }, ref: refCallback }, h("div", { class: "absolute bs-1 is-1", slot: "trigger" }), value.toFixed(this.decimalCount)));
175
35
  this.minValue = undefined;
176
36
  this.maxValue = undefined;
177
37
  this.minThumbPosition = undefined;
@@ -188,6 +48,16 @@ const BqSlider$1 = /*@__PURE__*/ proxyCustomElement(class BqSlider extends HTMLE
188
48
  this.enableTooltip = false;
189
49
  this.tooltipAlwaysVisible = false;
190
50
  }
51
+ // Own Properties
52
+ // ====================
53
+ inputMinElem;
54
+ inputMaxElem;
55
+ minTooltipElem;
56
+ maxTooltipElem;
57
+ progressElem;
58
+ trackElem;
59
+ debounceBqChange;
60
+ get el() { return this; }
191
61
  // Prop lifecycle events
192
62
  // =======================
193
63
  handleValuePropChange(newValue) {
@@ -207,6 +77,15 @@ const BqSlider$1 = /*@__PURE__*/ proxyCustomElement(class BqSlider extends HTMLE
207
77
  // If the gap is less than the min or greater than the max, set it to 0
208
78
  this.gap = newValue < value[0] || newValue > value[1] ? 0 : newValue;
209
79
  }
80
+ // Events section
81
+ // Requires JSDocs for public API documentation
82
+ // ==============================================
83
+ /** Handler to be called when change the value on range inputs */
84
+ bqChange;
85
+ /** Handler to be called when the slider loses focus */
86
+ bqBlur;
87
+ /** Handler to be called when the slider gets focused */
88
+ bqFocus;
210
89
  // Component lifecycle events
211
90
  // Ordered by their natural call order
212
91
  // =====================================
@@ -222,6 +101,119 @@ const BqSlider$1 = /*@__PURE__*/ proxyCustomElement(class BqSlider extends HTMLE
222
101
  componentDidUpdate() {
223
102
  this.runUpdates();
224
103
  }
104
+ // Listeners
105
+ // ==============
106
+ // Public methods API
107
+ // These methods are exposed on the host element.
108
+ // Always use two lines.
109
+ // Public Methods must be async.
110
+ // Requires JSDocs for public API documentation.
111
+ // ===============================================
112
+ // Local methods
113
+ // Internal business logic.
114
+ // These methods cannot be called from the host element.
115
+ // =======================================================
116
+ init = () => {
117
+ this.handleGapChange(this.gap);
118
+ this.setState(this.value);
119
+ this.handleStepPropChange();
120
+ };
121
+ runUpdates = () => {
122
+ this.updateProgressTrack();
123
+ this.syncInputsValue();
124
+ this.setThumbPosition();
125
+ };
126
+ setState = (newValue) => {
127
+ const isRangeType = this.isRangeType;
128
+ const value = this.stringToObject(newValue);
129
+ this.minValue = isRangeType ? clamp(value[0], this.min, this.max - this.gap) : value;
130
+ this.maxValue = isRangeType ? clamp(value[1], this.minValue + this.gap, this.max) : this.minValue;
131
+ };
132
+ setThumbPosition = () => {
133
+ if (!this.enableTooltip)
134
+ return;
135
+ // Destructure the returned object from this.thumbPosition() and assign the properties to this.minThumbPosition and this.maxThumbPosition
136
+ ({ minThumbPosition: this.minThumbPosition, maxThumbPosition: this.maxThumbPosition } = this.thumbPosition());
137
+ };
138
+ syncInputsValue = () => {
139
+ this.inputMinElem?.setAttribute('value', this.minValue.toString());
140
+ this.inputMaxElem?.setAttribute('value', this.maxValue.toString());
141
+ };
142
+ stringToObject = (value) => (isString(value) ? JSON.parse(value) : value);
143
+ handleInputChange = (type, event) => {
144
+ const target = event.target;
145
+ const value = parseFloat(target.value);
146
+ if (type === 'min') {
147
+ this.minValue = this.isRangeType ? Math.min(value, this.maxValue - this.gap) : value;
148
+ }
149
+ else if (type === 'max') {
150
+ this.maxValue = this.isRangeType ? Math.max(value, this.minValue + this.gap) : value;
151
+ }
152
+ // Update the input value to reflect the clamped value
153
+ const reflectedValue = (type === 'min' ? this.minValue : this.maxValue).toString();
154
+ target.value = reflectedValue;
155
+ target.setAttribute('value', reflectedValue);
156
+ // Sync the prop value.
157
+ // This will trigger the `@Watch('value')` method and emit the `bqChange` event.
158
+ this.value = this.isRangeType ? [this.minValue, this.maxValue] : this.minValue;
159
+ };
160
+ calculatePercent = (value) => {
161
+ const totalRange = Number(this.max) - Number(this.min);
162
+ return (value / totalRange) * 100;
163
+ };
164
+ updateProgressTrack = () => {
165
+ if (!this.progressElem)
166
+ return;
167
+ // For range type, left starts from the `min` value and width is the difference between `max` and `min`.
168
+ // For non-range type, left starts from 0 and width is the `min` value.
169
+ const left = this.isRangeType ? this.calculatePercent(this.minValue) : 0;
170
+ const width = this.isRangeType
171
+ ? this.calculatePercent(Number(this.maxValue) - Number(this.minValue))
172
+ : this.calculatePercent(this.minValue);
173
+ this.progressElem.style.insetInlineStart = `${left}%`;
174
+ this.progressElem.style.inlineSize = `${width}%`;
175
+ };
176
+ calculateThumbPosition = (value) => {
177
+ if (!this.progressElem)
178
+ return;
179
+ // Get the width of the track area and the size of the input range thumb
180
+ const trackAreaWidth = this.trackElem.getBoundingClientRect().width;
181
+ // We need to also add 4px to the thumb size,
182
+ // this is because the thumb is 2px border (`border-m`)
183
+ const inputThumbSize = parseInt(getComputedStyle(this.el).getPropertyValue('--bq-slider--thumb-size'), 10) + 4;
184
+ const totalWidth = trackAreaWidth - inputThumbSize;
185
+ return ((value - this.min) / (this.max - this.min)) * totalWidth + inputThumbSize / 2;
186
+ };
187
+ thumbPosition = () => {
188
+ const minThumbPosition = this.calculateThumbPosition(this.minValue);
189
+ const maxThumbPosition = this.isRangeType ? this.calculateThumbPosition(this.maxValue) : undefined;
190
+ return { minThumbPosition, maxThumbPosition };
191
+ };
192
+ emitBqChange = () => {
193
+ this.debounceBqChange?.cancel();
194
+ const value = this.isRangeType ? [this.minValue, this.maxValue] : this.minValue;
195
+ this.debounceBqChange = debounce(() => this.bqChange.emit({ value, el: this.el }), this.debounceTime);
196
+ this.debounceBqChange();
197
+ };
198
+ handleBlur = () => {
199
+ this.bqBlur.emit(this.el);
200
+ };
201
+ handleFocus = () => {
202
+ this.bqFocus.emit(this.el);
203
+ };
204
+ handleMouseDown = (event) => {
205
+ this.handleTooltipVisibility(event, 'remove');
206
+ };
207
+ handleMouseUp = (event) => {
208
+ this.handleTooltipVisibility(event, 'add');
209
+ };
210
+ handleTooltipVisibility = (event, action) => {
211
+ if (!this.enableTooltip || this.tooltipAlwaysVisible)
212
+ return;
213
+ const target = event.target;
214
+ const tooltipElem = target === this.inputMinElem ? this.minTooltipElem : this.maxTooltipElem;
215
+ tooltipElem.classList[action]('hidden');
216
+ };
225
217
  get decimalCount() {
226
218
  // Return the length of the decimal part of the step value.
227
219
  return (this.step % 1).toFixed(10).split('.')[1].replace(/0+$/, '').length;
@@ -232,6 +224,31 @@ const BqSlider$1 = /*@__PURE__*/ proxyCustomElement(class BqSlider extends HTMLE
232
224
  get isTooltipAlwaysVisible() {
233
225
  return this.tooltipAlwaysVisible && this.enableTooltip;
234
226
  }
227
+ renderLabel = (value, position, css) => {
228
+ return (h("span", { class: {
229
+ [`${css} box-content block text-s font-medium leading-regular text-text-primary is-fit min-is-8 [font-variant:tabular-nums]`]: true,
230
+ hidden: position === 'start' ? !this.enableValueIndicator : !this.enableValueIndicator || !this.isRangeType,
231
+ }, part: `label-${position}` }, value.toFixed(this.decimalCount)));
232
+ };
233
+ renderInput = (type, value, refCallback) => {
234
+ // Determine the zIndex value based on the type and the current min and max values.
235
+ const zIndexValue = (type) => {
236
+ const zIndex = {
237
+ min: this.minValue === this.min && this.maxValue === this.minValue,
238
+ max: this.maxValue === this.max && this.minValue === this.maxValue,
239
+ };
240
+ // If the value of both thumbs is the same as the min or max value, set the zIndex to -1
241
+ return zIndex[type] ? '-1' : '0';
242
+ };
243
+ return (h("input", { type: "range", class: {
244
+ 'absolute start-0 -translate-y-1/2 cursor-pointer appearance-none bg-transparent outline-none is-full inset-bs-[50%] disabled:cursor-not-allowed': true,
245
+ 'pointer-events-none': this.isRangeType,
246
+ }, style: this.isRangeType ? { zIndex: zIndexValue(type) } : undefined, disabled: this.disabled, min: this.min, max: this.max, step: this.step, ref: refCallback, onInput: (ev) => this.handleInputChange(type, ev), onBlur: this.handleBlur, onFocus: this.handleFocus, onMouseDown: this.handleMouseDown, onMouseUp: this.handleMouseUp, value: value, part: `input-${type}` }));
247
+ };
248
+ renderTooltip = (value, thumbPosition, refCallback) => (h("bq-tooltip", { class: {
249
+ 'absolute [&::part(panel)]:absolute': true,
250
+ hidden: !this.isTooltipAlwaysVisible,
251
+ }, exportparts: "base,trigger,panel", alwaysVisible: true, distance: this.enableValueIndicator ? 6 : 16, style: { insetInlineStart: `${thumbPosition}px`, fontVariant: 'tabular-nums' }, ref: refCallback }, h("div", { class: "absolute bs-1 is-1", slot: "trigger" }), value.toFixed(this.decimalCount)));
235
252
  // render() function
236
253
  // Always the last one in the class.
237
254
  // ===================================
@@ -242,7 +259,6 @@ const BqSlider$1 = /*@__PURE__*/ proxyCustomElement(class BqSlider extends HTMLE
242
259
  this.renderTooltip(this.maxValue, this.maxThumbPosition, (elem) => (this.maxTooltipElem = elem)), this.isRangeType && this.renderInput('max', this.maxValue, (input) => (this.inputMaxElem = input))), this.renderLabel(this.maxValue, 'end', 'ms-xs text-start')));
243
260
  }
244
261
  static get delegatesFocus() { return true; }
245
- get el() { return this; }
246
262
  static get watchers() { return {
247
263
  "value": ["handleValuePropChange"],
248
264
  "step": ["handleStepPropChange"],
@@ -1 +1 @@
1
- {"file":"bq-slider.js","mappings":"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","names":["BqSlider"],"sources":["../../packages/beeq/src/shared/utils/clamp.ts","../../packages/beeq/src/components/slider/scss/bq-slider.scss?tag=bq-slider&encapsulation=shadow","../../packages/beeq/src/components/slider/bq-slider.tsx"],"sourcesContent":["/**\n * Restricts value to a specified interval [min, max]\n *\n * @param value - value\n * @param min - lower end of the interval\n * @param max - upper end of the interval\n * @returns - value in interval [min, max]\n */\nexport const clamp = (value: number, min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER) => {\n return Math.min(Math.max(min, value), max);\n};\n","/* -------------------------------------------------------------------------- */\n/* Slider styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-slider.variables';\n\n@layer components {\n .thumb {\n @apply pointer-events-auto box-content size-[--bq-slider--thumb-size] cursor-pointer appearance-none rounded-full border-m border-solid border-stroke-brand bg-ui-primary;\n @apply transition-[background-color,border-color,box-shadow] duration-300;\n }\n\n .thumb-focus {\n @apply focus;\n }\n\n .thumb-hover {\n @apply border-hover-stroke-brand;\n }\n\n .thumb-active {\n @apply cursor-grabbing bg-active-ui-brand border-active-stroke-brand;\n }\n}\n\n:host {\n @apply block is-full;\n}\n\n/* ---------------------- Webkit (Chrome, Safari, Edge) --------------------- */\n\ninput[type='range']::-webkit-slider-thumb {\n @apply thumb;\n}\n\ninput[type='range']::-webkit-slider-runnable-track {\n @apply transition-all duration-300 ease-in;\n}\n\ninput[type='range']:focus-visible::-webkit-slider-thumb {\n @apply thumb-focus;\n}\n\ninput[type='range']:hover::-webkit-slider-thumb {\n @apply thumb-hover;\n}\n\ninput[type='range']:active::-webkit-slider-thumb {\n @apply thumb-active;\n}\n\ninput[type='range'][disabled]::-webkit-slider-thumb {\n @apply cursor-not-allowed;\n}\n\n/* ---------------------------- Mozilla (Firefox) --------------------------- */\n\ninput[type='range']::-moz-range-thumb {\n @apply thumb;\n}\n\ninput[type='range']::-moz-range-track {\n @apply transition-all duration-300 ease-in;\n}\n\ninput[type='range']:focus-visible::-moz-range-thumb {\n @apply thumb-focus;\n}\n\ninput[type='range']:hover::-moz-range-thumb {\n @apply thumb-hover;\n}\n\ninput[type='range']:active::-moz-range-thumb {\n @apply thumb-active;\n}\n\ninput[type='range'][disabled]::-moz-range-thumb {\n @apply cursor-not-allowed;\n}\n","import { Component, Element, Event, EventEmitter, h, Prop, State, Watch } from '@stencil/core';\n\nimport { TSliderType, TSliderValue } from './bq-slider.types';\nimport { clamp, debounce, isNil, isString, TDebounce } from '../../shared/utils';\n\n/**\n * @part base - The component's base wrapper.\n * @part container - The container of the slider.\n * @part track-area - The track area of the slider.\n * @part progress-area - The progress area of the slider.\n * @part input-min - The input element for the value when the slider type is `single` or the minimum value when the slider type is `range`.\n * @part input-max - The input element for the maximum value.\n * @part label-start - The label for the value when the slider type is `single` or the minimum value when the slider type is `range`.\n * @part label-end - The label for maximum value when the slider type is `range`.\n */\n@Component({\n tag: 'bq-slider',\n styleUrl: './scss/bq-slider.scss',\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BqSlider {\n // Own Properties\n // ====================\n\n private inputMinElem: HTMLInputElement;\n private inputMaxElem: HTMLInputElement;\n private minTooltipElem: HTMLBqTooltipElement;\n private maxTooltipElem: HTMLBqTooltipElement;\n private progressElem: HTMLSpanElement;\n private trackElem: HTMLSpanElement;\n private debounceBqChange: TDebounce<void>;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqSliderElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n /**\n * The `minValue` state is the only value when the slider type is `single`\n * and the minimum value when the slider type is `range`.\n */\n @State() minValue: number;\n /** The `maxValue` state is only used when the slider type is `range`. */\n @State() maxValue: number;\n /** It hold the left position of the Thumb for the value or the minimum value (if the slider type is `range`) */\n @State() minThumbPosition: number;\n /** It hold the left position of the Thumb for the maximum value (if the slider type is `range`) */\n @State() maxThumbPosition: number;\n\n // Public Property API\n // ========================\n\n /** The amount of time, in milliseconds, to wait to trigger the `bqChange` event after each value change. */\n @Prop({ reflect: true }) debounceTime = 0;\n\n /** If `true` the slider is disabled. */\n @Prop({ reflect: true }) disabled? = false;\n\n /** If `true` it will show the value label on a side of the slider track area */\n @Prop({ reflect: true }) enableValueIndicator? = false;\n\n /** A number representing the amount to remain between the minimum and maximum values (only for range type). */\n @Prop({ reflect: true, mutable: true }) gap = 0;\n\n /** A number representing the max value of the slider. */\n @Prop({ reflect: true }) max = 100;\n\n /** A number representing the min value of the slider. */\n @Prop({ reflect: true }) min = 0;\n\n /**\n * A number representing the step of the slider.\n * ⚠️ Please notice that the value (or list of values if the slider type is `range`) will be rounded to the nearest multiple of `step`.\n */\n @Prop({ reflect: true }) step = 1;\n\n /** It defines the type of slider to display */\n @Prop({ reflect: true }) type: TSliderType = 'single';\n\n /**\n * The value of the slider.\n * - If the slider type is `single`, the value is a number.\n * - If the slider type is `range`, the value is an array of two numbers (the first number represents the `min` value and the second number represents the `max` value).\n */\n @Prop({ reflect: true, mutable: true }) value: TSliderValue;\n\n /** If `true`, a tooltip will be shown displaying the progress value */\n @Prop({ reflect: true }) enableTooltip: boolean = false;\n\n /**\n * If `true`, a tooltip will always display the progress value.\n * It relies on enableTooltip and if enableTooltip is false, tooltipAlwaysVisible cannot be true.\n */\n @Prop({ reflect: true }) tooltipAlwaysVisible: boolean = false;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('value')\n handleValuePropChange(newValue: TSliderValue) {\n this.setState(newValue);\n this.emitBqChange();\n }\n\n @Watch('step')\n handleStepPropChange() {\n this.minValue = Math.round(this.minValue / this.step) * this.step;\n this.maxValue = Math.round(this.maxValue / this.step) * this.step;\n }\n\n @Watch('gap')\n handleGapChange(newValue: number) {\n if (!this.isRangeType) return;\n // Use the this.value prop value when the component is initialized\n // Otherwise, use the current this.min and this.max state values\n const value = !isNil(this.min) && !isNil(this.max) ? [this.min, this.max] : this.stringToObject(this.value);\n // If the gap is less than the min or greater than the max, set it to 0\n this.gap = newValue < value[0] || newValue > value[1] ? 0 : newValue;\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Handler to be called when change the value on range inputs */\n @Event() bqChange: EventEmitter<{ value: Exclude<TSliderValue, string>; el: HTMLBqSliderElement }>;\n\n /** Handler to be called when the slider loses focus */\n @Event() bqBlur: EventEmitter<HTMLBqSliderElement>;\n\n /** Handler to be called when the slider gets focused */\n @Event() bqFocus: EventEmitter<HTMLBqSliderElement>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n connectedCallback() {\n this.init();\n }\n\n componentWillLoad() {\n this.init();\n }\n\n componentDidLoad() {\n this.runUpdates();\n }\n\n componentDidUpdate() {\n this.runUpdates();\n }\n\n // Listeners\n // ==============\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private init = () => {\n this.handleGapChange(this.gap);\n this.setState(this.value);\n this.handleStepPropChange();\n };\n\n private runUpdates = () => {\n this.updateProgressTrack();\n this.syncInputsValue();\n this.setThumbPosition();\n };\n\n private setState = (newValue: TSliderValue) => {\n const isRangeType = this.isRangeType;\n const value = this.stringToObject(newValue);\n\n this.minValue = isRangeType ? clamp(value[0], this.min, this.max - this.gap) : value;\n this.maxValue = isRangeType ? clamp(value[1], this.minValue + this.gap, this.max) : this.minValue;\n };\n\n private setThumbPosition = () => {\n if (!this.enableTooltip) return;\n\n // Destructure the returned object from this.thumbPosition() and assign the properties to this.minThumbPosition and this.maxThumbPosition\n ({ minThumbPosition: this.minThumbPosition, maxThumbPosition: this.maxThumbPosition } = this.thumbPosition());\n };\n\n private syncInputsValue = () => {\n this.inputMinElem?.setAttribute('value', this.minValue.toString());\n this.inputMaxElem?.setAttribute('value', this.maxValue.toString());\n };\n\n private stringToObject = (value: TSliderValue) => (isString(value) ? JSON.parse(value) : value);\n\n private handleInputChange = (type: 'min' | 'max', event: InputEvent) => {\n const target = event.target as HTMLInputElement;\n const value = parseFloat(target.value);\n\n if (type === 'min') {\n this.minValue = this.isRangeType ? Math.min(value, this.maxValue - this.gap) : value;\n } else if (type === 'max') {\n this.maxValue = this.isRangeType ? Math.max(value, this.minValue + this.gap) : value;\n }\n\n // Update the input value to reflect the clamped value\n const reflectedValue = (type === 'min' ? this.minValue : this.maxValue).toString();\n target.value = reflectedValue;\n target.setAttribute('value', reflectedValue);\n\n // Sync the prop value.\n // This will trigger the `@Watch('value')` method and emit the `bqChange` event.\n this.value = this.isRangeType ? [this.minValue, this.maxValue] : this.minValue;\n };\n\n private calculatePercent = (value: number) => {\n const totalRange = Number(this.max) - Number(this.min);\n return (value / totalRange) * 100;\n };\n\n private updateProgressTrack = () => {\n if (!this.progressElem) return;\n\n // For range type, left starts from the `min` value and width is the difference between `max` and `min`.\n // For non-range type, left starts from 0 and width is the `min` value.\n const left = this.isRangeType ? this.calculatePercent(this.minValue) : 0;\n const width = this.isRangeType\n ? this.calculatePercent(Number(this.maxValue) - Number(this.minValue))\n : this.calculatePercent(this.minValue);\n\n this.progressElem.style.insetInlineStart = `${left}%`;\n this.progressElem.style.inlineSize = `${width}%`;\n };\n\n private calculateThumbPosition = (value: number): number => {\n if (!this.progressElem) return;\n\n // Get the width of the track area and the size of the input range thumb\n const trackAreaWidth = this.trackElem.getBoundingClientRect().width;\n // We need to also add 4px to the thumb size,\n // this is because the thumb is 2px border (`border-m`)\n const inputThumbSize = parseInt(getComputedStyle(this.el).getPropertyValue('--bq-slider--thumb-size'), 10) + 4;\n const totalWidth = trackAreaWidth - inputThumbSize;\n\n return ((value - this.min) / (this.max - this.min)) * totalWidth + inputThumbSize / 2;\n };\n\n private thumbPosition = (): { minThumbPosition: number; maxThumbPosition?: number } => {\n const minThumbPosition = this.calculateThumbPosition(this.minValue);\n const maxThumbPosition = this.isRangeType ? this.calculateThumbPosition(this.maxValue) : undefined;\n\n return { minThumbPosition, maxThumbPosition };\n };\n\n private emitBqChange = () => {\n this.debounceBqChange?.cancel();\n\n const value: Exclude<TSliderValue, string> = this.isRangeType ? [this.minValue, this.maxValue] : this.minValue;\n this.debounceBqChange = debounce(() => this.bqChange.emit({ value, el: this.el }), this.debounceTime);\n\n this.debounceBqChange();\n };\n\n private handleBlur = () => {\n this.bqBlur.emit(this.el);\n };\n\n private handleFocus = () => {\n this.bqFocus.emit(this.el);\n };\n\n private handleMouseDown = (event: MouseEvent) => {\n this.handleTooltipVisibility(event, 'remove');\n };\n\n private handleMouseUp = (event: MouseEvent) => {\n this.handleTooltipVisibility(event, 'add');\n };\n\n private handleTooltipVisibility = (event: MouseEvent, action: 'add' | 'remove') => {\n if (!this.enableTooltip || this.tooltipAlwaysVisible) return;\n\n const target = event.target as HTMLElement;\n const tooltipElem = target === this.inputMinElem ? this.minTooltipElem : this.maxTooltipElem;\n tooltipElem.classList[action]('hidden');\n };\n\n private get decimalCount(): number {\n // Return the length of the decimal part of the step value.\n return (this.step % 1).toFixed(10).split('.')[1].replace(/0+$/, '').length;\n }\n\n private get isRangeType() {\n return this.type === 'range';\n }\n\n private get isTooltipAlwaysVisible(): boolean {\n return this.tooltipAlwaysVisible && this.enableTooltip;\n }\n\n private renderLabel = (value: number, position: 'start' | 'end', css?: string) => {\n return (\n <span\n class={{\n [`${css} box-content block text-s font-medium leading-regular text-text-primary is-fit min-is-8 [font-variant:tabular-nums]`]:\n true,\n hidden: position === 'start' ? !this.enableValueIndicator : !this.enableValueIndicator || !this.isRangeType,\n }}\n part={`label-${position}`}\n >\n {value.toFixed(this.decimalCount)}\n </span>\n );\n };\n\n private renderInput = (type: 'max' | 'min', value: number, refCallback: (input: HTMLInputElement) => void) => {\n // Determine the zIndex value based on the type and the current min and max values.\n const zIndexValue = (type: 'min' | 'max'): string => {\n const zIndex = {\n min: this.minValue === this.min && this.maxValue === this.minValue,\n max: this.maxValue === this.max && this.minValue === this.maxValue,\n };\n\n // If the value of both thumbs is the same as the min or max value, set the zIndex to -1\n return zIndex[type] ? '-1' : '0';\n };\n\n return (\n <input\n type=\"range\"\n class={{\n 'absolute start-0 -translate-y-1/2 cursor-pointer appearance-none bg-transparent outline-none is-full inset-bs-[50%] disabled:cursor-not-allowed':\n true,\n 'pointer-events-none': this.isRangeType,\n }}\n style={this.isRangeType ? { zIndex: zIndexValue(type) } : undefined}\n disabled={this.disabled}\n min={this.min}\n max={this.max}\n step={this.step}\n ref={refCallback}\n onInput={(ev) => this.handleInputChange(type, ev)}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onMouseDown={this.handleMouseDown}\n onMouseUp={this.handleMouseUp}\n value={value}\n part={`input-${type}`}\n />\n );\n };\n\n private renderTooltip = (\n value: number,\n thumbPosition: number,\n refCallback: (elem: HTMLBqTooltipElement) => void,\n ): HTMLBqTooltipElement => (\n <bq-tooltip\n class={{\n 'absolute [&::part(panel)]:absolute': true,\n hidden: !this.isTooltipAlwaysVisible,\n }}\n exportparts=\"base,trigger,panel\"\n alwaysVisible={true}\n distance={this.enableValueIndicator ? 6 : 16}\n style={{ insetInlineStart: `${thumbPosition}px`, fontVariant: 'tabular-nums' }}\n ref={refCallback}\n >\n <div class=\"absolute bs-1 is-1\" slot=\"trigger\" />\n {value.toFixed(this.decimalCount)}\n </bq-tooltip>\n );\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <div\n aria-disabled={this.disabled ? 'true' : 'false'}\n class={{ 'flex is-full': true, 'cursor-not-allowed opacity-60': this.disabled }}\n part=\"base\"\n >\n {/* LABEL (start) */}\n {this.renderLabel(this.minValue, 'start', 'me-xs text-end')}\n {/* SLIDER */}\n <div class=\"relative is-full\" part=\"container\">\n {/* TRACK AREA */}\n <span\n class=\"absolute start-0 -translate-y-1/2 rounded-xs bg-[--bq-slider--trackarea-color] bs-1 is-full inset-bs-[50%]\"\n ref={(elem) => (this.trackElem = elem)}\n part=\"track-area\"\n />\n {/* PROGRESS AREA */}\n <span\n class=\"absolute -translate-y-1/2 rounded-xs bg-[--bq-slider--progress-color] bs-1 is-[50%] inset-bs-[50%]\"\n ref={(elem) => (this.progressElem = elem)}\n part=\"progress-area\"\n />\n {/* TOOLTIP on top of the value or min value (if the slider type is `range`) */}\n {this.enableTooltip &&\n this.renderTooltip(this.minValue, this.minThumbPosition, (elem) => (this.minTooltipElem = elem))}\n {/* INPUT (Min), used on single type */}\n {this.renderInput('min', this.minValue, (input) => (this.inputMinElem = input))}\n {/* TOOLTIP on top of the max value (if the slider type is `range`) */}\n {this.enableTooltip &&\n this.isRangeType &&\n this.renderTooltip(this.maxValue, this.maxThumbPosition, (elem) => (this.maxTooltipElem = elem))}\n {/* INPUT (Max) */}\n {this.isRangeType && this.renderInput('max', this.maxValue, (input) => (this.inputMaxElem = input))}\n </div>\n {/* LABEL (end) */}\n {this.renderLabel(this.maxValue, 'end', 'ms-xs text-start')}\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"bq-slider.js","mappings":"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","names":["BqSlider"],"sources":["../../packages/beeq/src/shared/utils/clamp.ts","../../packages/beeq/src/components/slider/scss/bq-slider.scss?tag=bq-slider&encapsulation=shadow","../../packages/beeq/src/components/slider/bq-slider.tsx"],"sourcesContent":["/**\n * Restricts value to a specified interval [min, max]\n *\n * @param value - value\n * @param min - lower end of the interval\n * @param max - upper end of the interval\n * @returns - value in interval [min, max]\n */\nexport const clamp = (value: number, min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER) => {\n return Math.min(Math.max(min, value), max);\n};\n","/* -------------------------------------------------------------------------- */\n/* Slider styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-slider.variables';\n\n@layer components {\n .thumb {\n @apply pointer-events-auto box-content size-[--bq-slider--thumb-size] cursor-pointer appearance-none rounded-full border-m border-solid border-stroke-brand bg-ui-primary;\n @apply transition-[background-color,border-color,box-shadow] duration-300;\n }\n\n .thumb-focus {\n @apply focus;\n }\n\n .thumb-hover {\n @apply border-hover-stroke-brand;\n }\n\n .thumb-active {\n @apply cursor-grabbing bg-active-ui-brand border-active-stroke-brand;\n }\n}\n\n:host {\n @apply block is-full;\n}\n\n/* ---------------------- Webkit (Chrome, Safari, Edge) --------------------- */\n\ninput[type='range']::-webkit-slider-thumb {\n @apply thumb;\n}\n\ninput[type='range']::-webkit-slider-runnable-track {\n @apply transition-all duration-300 ease-in;\n}\n\ninput[type='range']:focus-visible::-webkit-slider-thumb {\n @apply thumb-focus;\n}\n\ninput[type='range']:hover::-webkit-slider-thumb {\n @apply thumb-hover;\n}\n\ninput[type='range']:active::-webkit-slider-thumb {\n @apply thumb-active;\n}\n\ninput[type='range'][disabled]::-webkit-slider-thumb {\n @apply cursor-not-allowed;\n}\n\n/* ---------------------------- Mozilla (Firefox) --------------------------- */\n\ninput[type='range']::-moz-range-thumb {\n @apply thumb;\n}\n\ninput[type='range']::-moz-range-track {\n @apply transition-all duration-300 ease-in;\n}\n\ninput[type='range']:focus-visible::-moz-range-thumb {\n @apply thumb-focus;\n}\n\ninput[type='range']:hover::-moz-range-thumb {\n @apply thumb-hover;\n}\n\ninput[type='range']:active::-moz-range-thumb {\n @apply thumb-active;\n}\n\ninput[type='range'][disabled]::-moz-range-thumb {\n @apply cursor-not-allowed;\n}\n","import { Component, Element, Event, EventEmitter, h, Prop, State, Watch } from '@stencil/core';\n\nimport { TSliderType, TSliderValue } from './bq-slider.types';\nimport { clamp, debounce, isNil, isString, TDebounce } from '../../shared/utils';\n\n/**\n * @part base - The component's base wrapper.\n * @part container - The container of the slider.\n * @part track-area - The track area of the slider.\n * @part progress-area - The progress area of the slider.\n * @part input-min - The input element for the value when the slider type is `single` or the minimum value when the slider type is `range`.\n * @part input-max - The input element for the maximum value.\n * @part label-start - The label for the value when the slider type is `single` or the minimum value when the slider type is `range`.\n * @part label-end - The label for maximum value when the slider type is `range`.\n */\n@Component({\n tag: 'bq-slider',\n styleUrl: './scss/bq-slider.scss',\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BqSlider {\n // Own Properties\n // ====================\n\n private inputMinElem: HTMLInputElement;\n private inputMaxElem: HTMLInputElement;\n private minTooltipElem: HTMLBqTooltipElement;\n private maxTooltipElem: HTMLBqTooltipElement;\n private progressElem: HTMLSpanElement;\n private trackElem: HTMLSpanElement;\n private debounceBqChange: TDebounce<void>;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqSliderElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n /**\n * The `minValue` state is the only value when the slider type is `single`\n * and the minimum value when the slider type is `range`.\n */\n @State() minValue: number;\n /** The `maxValue` state is only used when the slider type is `range`. */\n @State() maxValue: number;\n /** It hold the left position of the Thumb for the value or the minimum value (if the slider type is `range`) */\n @State() minThumbPosition: number;\n /** It hold the left position of the Thumb for the maximum value (if the slider type is `range`) */\n @State() maxThumbPosition: number;\n\n // Public Property API\n // ========================\n\n /** The amount of time, in milliseconds, to wait to trigger the `bqChange` event after each value change. */\n @Prop({ reflect: true }) debounceTime = 0;\n\n /** If `true` the slider is disabled. */\n @Prop({ reflect: true }) disabled? = false;\n\n /** If `true` it will show the value label on a side of the slider track area */\n @Prop({ reflect: true }) enableValueIndicator? = false;\n\n /** A number representing the amount to remain between the minimum and maximum values (only for range type). */\n @Prop({ reflect: true, mutable: true }) gap = 0;\n\n /** A number representing the max value of the slider. */\n @Prop({ reflect: true }) max = 100;\n\n /** A number representing the min value of the slider. */\n @Prop({ reflect: true }) min = 0;\n\n /**\n * A number representing the step of the slider.\n * ⚠️ Please notice that the value (or list of values if the slider type is `range`) will be rounded to the nearest multiple of `step`.\n */\n @Prop({ reflect: true }) step = 1;\n\n /** It defines the type of slider to display */\n @Prop({ reflect: true }) type: TSliderType = 'single';\n\n /**\n * The value of the slider.\n * - If the slider type is `single`, the value is a number.\n * - If the slider type is `range`, the value is an array of two numbers (the first number represents the `min` value and the second number represents the `max` value).\n */\n @Prop({ reflect: true, mutable: true }) value: TSliderValue;\n\n /** If `true`, a tooltip will be shown displaying the progress value */\n @Prop({ reflect: true }) enableTooltip: boolean = false;\n\n /**\n * If `true`, a tooltip will always display the progress value.\n * It relies on enableTooltip and if enableTooltip is false, tooltipAlwaysVisible cannot be true.\n */\n @Prop({ reflect: true }) tooltipAlwaysVisible: boolean = false;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('value')\n handleValuePropChange(newValue: TSliderValue) {\n this.setState(newValue);\n this.emitBqChange();\n }\n\n @Watch('step')\n handleStepPropChange() {\n this.minValue = Math.round(this.minValue / this.step) * this.step;\n this.maxValue = Math.round(this.maxValue / this.step) * this.step;\n }\n\n @Watch('gap')\n handleGapChange(newValue: number) {\n if (!this.isRangeType) return;\n // Use the this.value prop value when the component is initialized\n // Otherwise, use the current this.min and this.max state values\n const value = !isNil(this.min) && !isNil(this.max) ? [this.min, this.max] : this.stringToObject(this.value);\n // If the gap is less than the min or greater than the max, set it to 0\n this.gap = newValue < value[0] || newValue > value[1] ? 0 : newValue;\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Handler to be called when change the value on range inputs */\n @Event() bqChange: EventEmitter<{ value: Exclude<TSliderValue, string>; el: HTMLBqSliderElement }>;\n\n /** Handler to be called when the slider loses focus */\n @Event() bqBlur: EventEmitter<HTMLBqSliderElement>;\n\n /** Handler to be called when the slider gets focused */\n @Event() bqFocus: EventEmitter<HTMLBqSliderElement>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n connectedCallback() {\n this.init();\n }\n\n componentWillLoad() {\n this.init();\n }\n\n componentDidLoad() {\n this.runUpdates();\n }\n\n componentDidUpdate() {\n this.runUpdates();\n }\n\n // Listeners\n // ==============\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private init = () => {\n this.handleGapChange(this.gap);\n this.setState(this.value);\n this.handleStepPropChange();\n };\n\n private runUpdates = () => {\n this.updateProgressTrack();\n this.syncInputsValue();\n this.setThumbPosition();\n };\n\n private setState = (newValue: TSliderValue) => {\n const isRangeType = this.isRangeType;\n const value = this.stringToObject(newValue);\n\n this.minValue = isRangeType ? clamp(value[0], this.min, this.max - this.gap) : value;\n this.maxValue = isRangeType ? clamp(value[1], this.minValue + this.gap, this.max) : this.minValue;\n };\n\n private setThumbPosition = () => {\n if (!this.enableTooltip) return;\n\n // Destructure the returned object from this.thumbPosition() and assign the properties to this.minThumbPosition and this.maxThumbPosition\n ({ minThumbPosition: this.minThumbPosition, maxThumbPosition: this.maxThumbPosition } = this.thumbPosition());\n };\n\n private syncInputsValue = () => {\n this.inputMinElem?.setAttribute('value', this.minValue.toString());\n this.inputMaxElem?.setAttribute('value', this.maxValue.toString());\n };\n\n private stringToObject = (value: TSliderValue) => (isString(value) ? JSON.parse(value) : value);\n\n private handleInputChange = (type: 'min' | 'max', event: InputEvent) => {\n const target = event.target as HTMLInputElement;\n const value = parseFloat(target.value);\n\n if (type === 'min') {\n this.minValue = this.isRangeType ? Math.min(value, this.maxValue - this.gap) : value;\n } else if (type === 'max') {\n this.maxValue = this.isRangeType ? Math.max(value, this.minValue + this.gap) : value;\n }\n\n // Update the input value to reflect the clamped value\n const reflectedValue = (type === 'min' ? this.minValue : this.maxValue).toString();\n target.value = reflectedValue;\n target.setAttribute('value', reflectedValue);\n\n // Sync the prop value.\n // This will trigger the `@Watch('value')` method and emit the `bqChange` event.\n this.value = this.isRangeType ? [this.minValue, this.maxValue] : this.minValue;\n };\n\n private calculatePercent = (value: number) => {\n const totalRange = Number(this.max) - Number(this.min);\n return (value / totalRange) * 100;\n };\n\n private updateProgressTrack = () => {\n if (!this.progressElem) return;\n\n // For range type, left starts from the `min` value and width is the difference between `max` and `min`.\n // For non-range type, left starts from 0 and width is the `min` value.\n const left = this.isRangeType ? this.calculatePercent(this.minValue) : 0;\n const width = this.isRangeType\n ? this.calculatePercent(Number(this.maxValue) - Number(this.minValue))\n : this.calculatePercent(this.minValue);\n\n this.progressElem.style.insetInlineStart = `${left}%`;\n this.progressElem.style.inlineSize = `${width}%`;\n };\n\n private calculateThumbPosition = (value: number): number => {\n if (!this.progressElem) return;\n\n // Get the width of the track area and the size of the input range thumb\n const trackAreaWidth = this.trackElem.getBoundingClientRect().width;\n // We need to also add 4px to the thumb size,\n // this is because the thumb is 2px border (`border-m`)\n const inputThumbSize = parseInt(getComputedStyle(this.el).getPropertyValue('--bq-slider--thumb-size'), 10) + 4;\n const totalWidth = trackAreaWidth - inputThumbSize;\n\n return ((value - this.min) / (this.max - this.min)) * totalWidth + inputThumbSize / 2;\n };\n\n private thumbPosition = (): { minThumbPosition: number; maxThumbPosition?: number } => {\n const minThumbPosition = this.calculateThumbPosition(this.minValue);\n const maxThumbPosition = this.isRangeType ? this.calculateThumbPosition(this.maxValue) : undefined;\n\n return { minThumbPosition, maxThumbPosition };\n };\n\n private emitBqChange = () => {\n this.debounceBqChange?.cancel();\n\n const value: Exclude<TSliderValue, string> = this.isRangeType ? [this.minValue, this.maxValue] : this.minValue;\n this.debounceBqChange = debounce(() => this.bqChange.emit({ value, el: this.el }), this.debounceTime);\n\n this.debounceBqChange();\n };\n\n private handleBlur = () => {\n this.bqBlur.emit(this.el);\n };\n\n private handleFocus = () => {\n this.bqFocus.emit(this.el);\n };\n\n private handleMouseDown = (event: MouseEvent) => {\n this.handleTooltipVisibility(event, 'remove');\n };\n\n private handleMouseUp = (event: MouseEvent) => {\n this.handleTooltipVisibility(event, 'add');\n };\n\n private handleTooltipVisibility = (event: MouseEvent, action: 'add' | 'remove') => {\n if (!this.enableTooltip || this.tooltipAlwaysVisible) return;\n\n const target = event.target as HTMLElement;\n const tooltipElem = target === this.inputMinElem ? this.minTooltipElem : this.maxTooltipElem;\n tooltipElem.classList[action]('hidden');\n };\n\n private get decimalCount(): number {\n // Return the length of the decimal part of the step value.\n return (this.step % 1).toFixed(10).split('.')[1].replace(/0+$/, '').length;\n }\n\n private get isRangeType() {\n return this.type === 'range';\n }\n\n private get isTooltipAlwaysVisible(): boolean {\n return this.tooltipAlwaysVisible && this.enableTooltip;\n }\n\n private renderLabel = (value: number, position: 'start' | 'end', css?: string) => {\n return (\n <span\n class={{\n [`${css} box-content block text-s font-medium leading-regular text-text-primary is-fit min-is-8 [font-variant:tabular-nums]`]:\n true,\n hidden: position === 'start' ? !this.enableValueIndicator : !this.enableValueIndicator || !this.isRangeType,\n }}\n part={`label-${position}`}\n >\n {value.toFixed(this.decimalCount)}\n </span>\n );\n };\n\n private renderInput = (type: 'max' | 'min', value: number, refCallback: (input: HTMLInputElement) => void) => {\n // Determine the zIndex value based on the type and the current min and max values.\n const zIndexValue = (type: 'min' | 'max'): string => {\n const zIndex = {\n min: this.minValue === this.min && this.maxValue === this.minValue,\n max: this.maxValue === this.max && this.minValue === this.maxValue,\n };\n\n // If the value of both thumbs is the same as the min or max value, set the zIndex to -1\n return zIndex[type] ? '-1' : '0';\n };\n\n return (\n <input\n type=\"range\"\n class={{\n 'absolute start-0 -translate-y-1/2 cursor-pointer appearance-none bg-transparent outline-none is-full inset-bs-[50%] disabled:cursor-not-allowed':\n true,\n 'pointer-events-none': this.isRangeType,\n }}\n style={this.isRangeType ? { zIndex: zIndexValue(type) } : undefined}\n disabled={this.disabled}\n min={this.min}\n max={this.max}\n step={this.step}\n ref={refCallback}\n onInput={(ev) => this.handleInputChange(type, ev)}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onMouseDown={this.handleMouseDown}\n onMouseUp={this.handleMouseUp}\n value={value}\n part={`input-${type}`}\n />\n );\n };\n\n private renderTooltip = (\n value: number,\n thumbPosition: number,\n refCallback: (elem: HTMLBqTooltipElement) => void,\n ): HTMLBqTooltipElement => (\n <bq-tooltip\n class={{\n 'absolute [&::part(panel)]:absolute': true,\n hidden: !this.isTooltipAlwaysVisible,\n }}\n exportparts=\"base,trigger,panel\"\n alwaysVisible={true}\n distance={this.enableValueIndicator ? 6 : 16}\n style={{ insetInlineStart: `${thumbPosition}px`, fontVariant: 'tabular-nums' }}\n ref={refCallback}\n >\n <div class=\"absolute bs-1 is-1\" slot=\"trigger\" />\n {value.toFixed(this.decimalCount)}\n </bq-tooltip>\n );\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <div\n aria-disabled={this.disabled ? 'true' : 'false'}\n class={{ 'flex is-full': true, 'cursor-not-allowed opacity-60': this.disabled }}\n part=\"base\"\n >\n {/* LABEL (start) */}\n {this.renderLabel(this.minValue, 'start', 'me-xs text-end')}\n {/* SLIDER */}\n <div class=\"relative is-full\" part=\"container\">\n {/* TRACK AREA */}\n <span\n class=\"absolute start-0 -translate-y-1/2 rounded-xs bg-[--bq-slider--trackarea-color] bs-1 is-full inset-bs-[50%]\"\n ref={(elem) => (this.trackElem = elem)}\n part=\"track-area\"\n />\n {/* PROGRESS AREA */}\n <span\n class=\"absolute -translate-y-1/2 rounded-xs bg-[--bq-slider--progress-color] bs-1 is-[50%] inset-bs-[50%]\"\n ref={(elem) => (this.progressElem = elem)}\n part=\"progress-area\"\n />\n {/* TOOLTIP on top of the value or min value (if the slider type is `range`) */}\n {this.enableTooltip &&\n this.renderTooltip(this.minValue, this.minThumbPosition, (elem) => (this.minTooltipElem = elem))}\n {/* INPUT (Min), used on single type */}\n {this.renderInput('min', this.minValue, (input) => (this.inputMinElem = input))}\n {/* TOOLTIP on top of the max value (if the slider type is `range`) */}\n {this.enableTooltip &&\n this.isRangeType &&\n this.renderTooltip(this.maxValue, this.maxThumbPosition, (elem) => (this.maxTooltipElem = elem))}\n {/* INPUT (Max) */}\n {this.isRangeType && this.renderInput('max', this.maxValue, (input) => (this.inputMaxElem = input))}\n </div>\n {/* LABEL (end) */}\n {this.renderLabel(this.maxValue, 'end', 'ms-xs text-start')}\n </div>\n );\n }\n}\n"],"version":3}