@beeq/core 1.12.4 → 1.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (409) hide show
  1. package/dist/beeq/beeq.esm.js +1 -1
  2. package/dist/beeq/{p-b4b02b99.entry.js → p-0d078519.entry.js} +2 -2
  3. package/dist/beeq/{p-b4b02b99.entry.js.map → p-0d078519.entry.js.map} +1 -1
  4. package/dist/beeq/{p-49a999b4.entry.js → p-1a2c4878.entry.js} +2 -2
  5. package/dist/beeq/p-21db4f39.entry.js +6 -0
  6. package/dist/beeq/p-21db4f39.entry.js.map +1 -0
  7. package/dist/beeq/{p-21db2c4e.entry.js → p-24bb2588.entry.js} +2 -2
  8. package/dist/beeq/{p-21db2c4e.entry.js.map → p-24bb2588.entry.js.map} +1 -1
  9. package/dist/beeq/{p-327cb74b.entry.js → p-2a081a54.entry.js} +2 -2
  10. package/dist/beeq/{p-327cb74b.entry.js.map → p-2a081a54.entry.js.map} +1 -1
  11. package/dist/beeq/{p-8974f66f.entry.js → p-2e1fffcd.entry.js} +2 -2
  12. package/dist/beeq/p-2fd6ea70.entry.js +6 -0
  13. package/dist/beeq/{p-d4df64ae.entry.js.map → p-2fd6ea70.entry.js.map} +1 -1
  14. package/dist/beeq/{p-f4c66e83.entry.js → p-30d1bd84.entry.js} +2 -2
  15. package/dist/beeq/{p-f4c66e83.entry.js.map → p-30d1bd84.entry.js.map} +1 -1
  16. package/dist/beeq/{p-b31d249b.entry.js → p-38006c8e.entry.js} +2 -2
  17. package/dist/beeq/{p-b8bac7c7.entry.js → p-3d754d97.entry.js} +2 -2
  18. package/dist/beeq/{p-b8bac7c7.entry.js.map → p-3d754d97.entry.js.map} +1 -1
  19. package/dist/beeq/{p-25772ebd.entry.js → p-45ae19aa.entry.js} +2 -2
  20. package/dist/beeq/p-45ae19aa.entry.js.map +1 -0
  21. package/dist/beeq/{p-f0a2c87e.entry.js → p-56b49d4e.entry.js} +2 -2
  22. package/dist/beeq/{p-f0a2c87e.entry.js.map → p-56b49d4e.entry.js.map} +1 -1
  23. package/dist/beeq/{p-644013aa.entry.js → p-58813f83.entry.js} +2 -2
  24. package/dist/beeq/{p-644013aa.entry.js.map → p-58813f83.entry.js.map} +1 -1
  25. package/dist/beeq/{p-0a3c5b97.entry.js → p-5eba392c.entry.js} +2 -2
  26. package/dist/beeq/{p-fe22de00.entry.js → p-6a38fcaf.entry.js} +2 -2
  27. package/dist/beeq/{p-d7c20c6f.entry.js → p-6be3f23a.entry.js} +2 -2
  28. package/dist/beeq/{p-d7c20c6f.entry.js.map → p-6be3f23a.entry.js.map} +1 -1
  29. package/dist/beeq/{p-ef783b95.entry.js → p-72ff2fe2.entry.js} +2 -2
  30. package/dist/beeq/{p-1764899f.entry.js → p-7ebe6b9d.entry.js} +2 -2
  31. package/dist/beeq/{p-1764899f.entry.js.map → p-7ebe6b9d.entry.js.map} +1 -1
  32. package/dist/beeq/{p-69cf0536.entry.js → p-817f7a5e.entry.js} +2 -2
  33. package/dist/beeq/{p-69cf0536.entry.js.map → p-817f7a5e.entry.js.map} +1 -1
  34. package/dist/beeq/{p-fb763ec5.entry.js → p-8bd7f4c2.entry.js} +2 -2
  35. package/dist/beeq/{p-8d9bef7a.entry.js → p-8be7ceb5.entry.js} +2 -2
  36. package/dist/beeq/{p-8d9bef7a.entry.js.map → p-8be7ceb5.entry.js.map} +1 -1
  37. package/dist/beeq/{p-f07f4d99.entry.js → p-9413a4d3.entry.js} +2 -2
  38. package/dist/beeq/{p-b7c6fdbd.entry.js → p-96f72671.entry.js} +2 -2
  39. package/dist/beeq/p-96f72671.entry.js.map +1 -0
  40. package/dist/beeq/p-Dx-CEPSQ.js.map +1 -1
  41. package/dist/beeq/p-a0a8ea5b.entry.js +6 -0
  42. package/dist/beeq/p-a0a8ea5b.entry.js.map +1 -0
  43. package/dist/beeq/{p-7972ba08.entry.js → p-a55354ee.entry.js} +2 -2
  44. package/dist/beeq/{p-365f0372.entry.js → p-a72671f9.entry.js} +2 -2
  45. package/dist/beeq/p-a72671f9.entry.js.map +1 -0
  46. package/dist/beeq/{p-56810dba.entry.js → p-bdb983f9.entry.js} +2 -2
  47. package/dist/beeq/{p-56810dba.entry.js.map → p-bdb983f9.entry.js.map} +1 -1
  48. package/dist/beeq/{p-2a7c5b1e.entry.js → p-d6c35472.entry.js} +2 -2
  49. package/dist/beeq/{p-2a7c5b1e.entry.js.map → p-d6c35472.entry.js.map} +1 -1
  50. package/dist/beeq/{p-84e96891.entry.js → p-d792e3d3.entry.js} +2 -2
  51. package/dist/beeq/{p-5645238d.entry.js → p-e9a1b183.entry.js} +2 -2
  52. package/dist/beeq/p-f688d230.entry.js +6 -0
  53. package/dist/beeq/{p-79aab4dd.entry.js.map → p-f688d230.entry.js.map} +1 -1
  54. package/dist/beeq/{p-b6f5430a.entry.js → p-f891fb4b.entry.js} +2 -2
  55. package/dist/beeq/{p-b26ee039.entry.js → p-fa123a10.entry.js} +2 -2
  56. package/dist/beeq/{p-b26ee039.entry.js.map → p-fa123a10.entry.js.map} +1 -1
  57. package/dist/beeq/p-uqkxeAeG.js.map +1 -1
  58. package/dist/beeq/svg/.icons-meta.json +13 -0
  59. package/dist/beeq.html-custom-data.json +2153 -50
  60. package/dist/cjs/beeq.cjs.js +1 -1
  61. package/dist/cjs/bq-accordion.cjs.entry.js +1 -1
  62. package/dist/cjs/bq-accordion.cjs.entry.js.map +1 -1
  63. package/dist/cjs/bq-alert.cjs.entry.js +1 -1
  64. package/dist/cjs/bq-alert.cjs.entry.js.map +1 -1
  65. package/dist/cjs/bq-button_2.cjs.entry.js +2 -2
  66. package/dist/cjs/bq-button_2.cjs.entry.js.map +1 -1
  67. package/dist/cjs/bq-checkbox.cjs.entry.js +4 -4
  68. package/dist/cjs/bq-checkbox.cjs.entry.js.map +1 -1
  69. package/dist/cjs/bq-date-picker.cjs.entry.js +1741 -364
  70. package/dist/cjs/bq-date-picker.cjs.entry.js.map +1 -1
  71. package/dist/cjs/bq-dialog.cjs.entry.js +5 -5
  72. package/dist/cjs/bq-dialog.cjs.entry.js.map +1 -1
  73. package/dist/cjs/bq-divider.cjs.entry.js +4 -4
  74. package/dist/cjs/bq-drawer.cjs.entry.js +5 -5
  75. package/dist/cjs/bq-drawer.cjs.entry.js.map +1 -1
  76. package/dist/cjs/bq-dropdown_2.cjs.entry.js +4 -4
  77. package/dist/cjs/bq-dropdown_2.cjs.entry.js.map +1 -1
  78. package/dist/cjs/bq-empty-state.cjs.entry.js +6 -6
  79. package/dist/cjs/bq-empty-state.cjs.entry.js.map +1 -1
  80. package/dist/cjs/bq-input.cjs.entry.js +8 -8
  81. package/dist/cjs/bq-input.cjs.entry.js.map +1 -1
  82. package/dist/cjs/bq-notification.cjs.entry.js +6 -6
  83. package/dist/cjs/bq-notification.cjs.entry.js.map +1 -1
  84. package/dist/cjs/bq-option-group.cjs.entry.js +1 -1
  85. package/dist/cjs/bq-option-list_2.cjs.entry.js +6 -6
  86. package/dist/cjs/bq-option-list_2.cjs.entry.js.map +1 -1
  87. package/dist/cjs/bq-option.cjs.entry.js +4 -4
  88. package/dist/cjs/bq-page-title.cjs.entry.js +4 -4
  89. package/dist/cjs/bq-progress.cjs.entry.js +5 -5
  90. package/dist/cjs/bq-progress.cjs.entry.js.map +1 -1
  91. package/dist/cjs/bq-radio-group.cjs.entry.js +1 -1
  92. package/dist/cjs/bq-radio.cjs.entry.js +4 -4
  93. package/dist/cjs/bq-radio.cjs.entry.js.map +1 -1
  94. package/dist/cjs/bq-select.cjs.entry.js +1 -1
  95. package/dist/cjs/bq-select.cjs.entry.js.map +1 -1
  96. package/dist/cjs/bq-side-menu-item.cjs.entry.js +1 -1
  97. package/dist/cjs/bq-side-menu-item.cjs.entry.js.map +1 -1
  98. package/dist/cjs/bq-side-menu.cjs.entry.js +2 -2
  99. package/dist/cjs/bq-slider.cjs.entry.js +3 -3
  100. package/dist/cjs/bq-slider.cjs.entry.js.map +1 -1
  101. package/dist/cjs/bq-spinner.cjs.entry.js +4 -4
  102. package/dist/cjs/bq-status.cjs.entry.js +2 -2
  103. package/dist/cjs/bq-status.cjs.entry.js.map +1 -1
  104. package/dist/cjs/bq-step-item.cjs.entry.js +5 -5
  105. package/dist/cjs/bq-step-item.cjs.entry.js.map +1 -1
  106. package/dist/cjs/bq-steps.cjs.entry.js +2 -2
  107. package/dist/cjs/bq-switch.cjs.entry.js +4 -4
  108. package/dist/cjs/bq-switch.cjs.entry.js.map +1 -1
  109. package/dist/cjs/bq-tab-group.cjs.entry.js +3 -3
  110. package/dist/cjs/bq-tab.cjs.entry.js +3 -3
  111. package/dist/cjs/bq-textarea.cjs.entry.js +5 -5
  112. package/dist/cjs/bq-toast.cjs.entry.js +2 -2
  113. package/dist/cjs/bq-toast.cjs.entry.js.map +1 -1
  114. package/dist/cjs/bq-tooltip.cjs.entry.js +4 -4
  115. package/dist/cjs/event-BhuEFC-I.js.map +1 -1
  116. package/dist/cjs/loader.cjs.js +1 -1
  117. package/dist/cjs/slot-DKWrtk4b.js.map +1 -1
  118. package/dist/collection/components/accordion-group/scss/bq-accordion-group.css +1 -1
  119. package/dist/collection/components/alert/scss/bq-alert.css +1 -1
  120. package/dist/collection/components/avatar/scss/bq-avatar.css +1 -1
  121. package/dist/collection/components/breadcrumb/scss/bq-breadcrumb.css +1 -1
  122. package/dist/collection/components/breadcrumb-item/scss/bq-breadcrumb-item.css +1 -1
  123. package/dist/collection/components/button/scss/bq-button.css +1 -1
  124. package/dist/collection/components/card/scss/bq-card.css +1 -1
  125. package/dist/collection/components/checkbox/bq-checkbox.js +5 -4
  126. package/dist/collection/components/checkbox/bq-checkbox.js.map +1 -1
  127. package/dist/collection/components/checkbox/scss/bq-checkbox.css +1 -1
  128. package/dist/collection/components/date-picker/bq-date-picker.js +1141 -457
  129. package/dist/collection/components/date-picker/bq-date-picker.js.map +1 -1
  130. package/dist/collection/components/date-picker/bq-date-picker.types.js +29 -0
  131. package/dist/collection/components/date-picker/bq-date-picker.types.js.map +1 -1
  132. package/dist/collection/components/date-picker/components/CalendarDayView.js +96 -0
  133. package/dist/collection/components/date-picker/components/CalendarDayView.js.map +1 -0
  134. package/dist/collection/components/date-picker/components/CalendarHeader.js +18 -0
  135. package/dist/collection/components/date-picker/components/CalendarHeader.js.map +1 -0
  136. package/dist/collection/components/date-picker/components/CalendarMonthView.js +70 -0
  137. package/dist/collection/components/date-picker/components/CalendarMonthView.js.map +1 -0
  138. package/dist/collection/components/date-picker/components/CalendarYearView.js +68 -0
  139. package/dist/collection/components/date-picker/components/CalendarYearView.js.map +1 -0
  140. package/dist/collection/components/date-picker/helper/bounds.js +114 -0
  141. package/dist/collection/components/date-picker/helper/bounds.js.map +1 -0
  142. package/dist/collection/components/date-picker/helper/calendar.js +156 -0
  143. package/dist/collection/components/date-picker/helper/calendar.js.map +1 -0
  144. package/dist/collection/components/date-picker/helper/constants.js +62 -16
  145. package/dist/collection/components/date-picker/helper/constants.js.map +1 -1
  146. package/dist/collection/components/date-picker/helper/input.js +37 -0
  147. package/dist/collection/components/date-picker/helper/input.js.map +1 -0
  148. package/dist/collection/components/date-picker/helper/intl.js +78 -0
  149. package/dist/collection/components/date-picker/helper/intl.js.map +1 -0
  150. package/dist/collection/components/date-picker/helper/labels.js +61 -0
  151. package/dist/collection/components/date-picker/helper/labels.js.map +1 -0
  152. package/dist/collection/components/date-picker/helper/navigation.js +45 -0
  153. package/dist/collection/components/date-picker/helper/navigation.js.map +1 -0
  154. package/dist/collection/components/date-picker/helper/selection.js +167 -0
  155. package/dist/collection/components/date-picker/helper/selection.js.map +1 -0
  156. package/dist/collection/components/date-picker/helper/value.js +49 -0
  157. package/dist/collection/components/date-picker/helper/value.js.map +1 -0
  158. package/dist/collection/components/date-picker/scss/bq-date-picker.css +1 -1
  159. package/dist/collection/components/dialog/bq-dialog.js +4 -4
  160. package/dist/collection/components/dialog/scss/bq-dialog.css +1 -1
  161. package/dist/collection/components/divider/bq-divider.js +4 -4
  162. package/dist/collection/components/drawer/bq-drawer.js +4 -4
  163. package/dist/collection/components/drawer/scss/bq-drawer.css +1 -1
  164. package/dist/collection/components/dropdown/bq-dropdown.js +1 -1
  165. package/dist/collection/components/dropdown/scss/bq-dropdown.css +1 -1
  166. package/dist/collection/components/empty-state/bq-empty-state.js +5 -5
  167. package/dist/collection/components/empty-state/scss/bq-empty-state.css +1 -1
  168. package/dist/collection/components/icon/bq-icon.js +1 -1
  169. package/dist/collection/components/icon/svg/.icons-meta.json +13 -0
  170. package/dist/collection/components/input/bq-input.js +7 -7
  171. package/dist/collection/components/input/scss/bq-input.css +1 -1
  172. package/dist/collection/components/notification/bq-notification.js +5 -5
  173. package/dist/collection/components/notification/scss/bq-notification.css +1 -1
  174. package/dist/collection/components/option/bq-option.js +4 -4
  175. package/dist/collection/components/option-group/bq-option-group.js +1 -1
  176. package/dist/collection/components/option-group/scss/bq-option-group.css +1 -1
  177. package/dist/collection/components/option-list/bq-option-list.js +1 -1
  178. package/dist/collection/components/option-list/scss/bq-option-list.css +1 -1
  179. package/dist/collection/components/page-title/bq-page-title.js +4 -4
  180. package/dist/collection/components/page-title/scss/bq-page-title.css +1 -1
  181. package/dist/collection/components/panel/bq-panel.js +2 -2
  182. package/dist/collection/components/panel/scss/bq-panel.css +1 -1
  183. package/dist/collection/components/progress/bq-progress.js +4 -4
  184. package/dist/collection/components/progress/scss/bq-progress.css +1 -1
  185. package/dist/collection/components/radio/bq-radio.js +5 -4
  186. package/dist/collection/components/radio/bq-radio.js.map +1 -1
  187. package/dist/collection/components/radio/scss/bq-radio.css +1 -1
  188. package/dist/collection/components/radio-group/bq-radio-group.js +1 -1
  189. package/dist/collection/components/select/scss/bq-select.css +1 -1
  190. package/dist/collection/components/side-menu/bq-side-menu.js +2 -2
  191. package/dist/collection/components/side-menu-item/scss/bq-side-menu-item.css +1 -1
  192. package/dist/collection/components/slider/bq-slider.js +2 -2
  193. package/dist/collection/components/spinner/bq-spinner.js +4 -4
  194. package/dist/collection/components/spinner/scss/bq-spinner.css +1 -1
  195. package/dist/collection/components/status/bq-status.js +1 -1
  196. package/dist/collection/components/status/scss/bq-status.css +1 -1
  197. package/dist/collection/components/step-item/bq-step-item.js +4 -4
  198. package/dist/collection/components/step-item/scss/bq-step-item.css +1 -1
  199. package/dist/collection/components/steps/bq-steps.js +2 -2
  200. package/dist/collection/components/switch/bq-switch.js +3 -3
  201. package/dist/collection/components/switch/scss/bq-switch.css +1 -1
  202. package/dist/collection/components/tab/bq-tab.js +3 -3
  203. package/dist/collection/components/tab/scss/bq-tab.css +1 -1
  204. package/dist/collection/components/tab-group/bq-tab-group.js +3 -3
  205. package/dist/collection/components/tag/bq-tag.js +4 -4
  206. package/dist/collection/components/tag/scss/bq-tag.css +1 -1
  207. package/dist/collection/components/textarea/bq-textarea.js +5 -5
  208. package/dist/collection/components/textarea/scss/bq-textarea.css +1 -1
  209. package/dist/collection/components/toast/bq-toast.js +1 -1
  210. package/dist/collection/components/toast/scss/bq-toast.css +1 -1
  211. package/dist/collection/components/tooltip/bq-tooltip.js +4 -4
  212. package/dist/collection/components/tooltip/scss/bq-tooltip.css +1 -1
  213. package/dist/collection/shared/utils/event.js.map +1 -1
  214. package/dist/collection/shared/utils/slot.js.map +1 -1
  215. package/dist/components/bq-accordion-group.js +1 -1
  216. package/dist/components/bq-accordion-group.js.map +1 -1
  217. package/dist/components/bq-accordion.js +1 -1
  218. package/dist/components/bq-alert.js +1 -1
  219. package/dist/components/bq-alert.js.map +1 -1
  220. package/dist/components/bq-avatar.js +1 -1
  221. package/dist/components/bq-avatar.js.map +1 -1
  222. package/dist/components/bq-breadcrumb-item.js +1 -1
  223. package/dist/components/bq-breadcrumb-item.js.map +1 -1
  224. package/dist/components/bq-breadcrumb.js +1 -1
  225. package/dist/components/bq-breadcrumb.js.map +1 -1
  226. package/dist/components/bq-button.js +1 -1
  227. package/dist/components/bq-card.js +1 -1
  228. package/dist/components/bq-card.js.map +1 -1
  229. package/dist/components/bq-checkbox.js +1 -1
  230. package/dist/components/bq-checkbox.js.map +1 -1
  231. package/dist/components/bq-date-picker.js +1 -1
  232. package/dist/components/bq-date-picker.js.map +1 -1
  233. package/dist/components/bq-dialog.js +1 -1
  234. package/dist/components/bq-dialog.js.map +1 -1
  235. package/dist/components/bq-divider.js +1 -1
  236. package/dist/components/bq-drawer.js +1 -1
  237. package/dist/components/bq-drawer.js.map +1 -1
  238. package/dist/components/bq-dropdown.js +1 -1
  239. package/dist/components/bq-empty-state.js +1 -1
  240. package/dist/components/bq-empty-state.js.map +1 -1
  241. package/dist/components/bq-icon.js +1 -1
  242. package/dist/components/bq-input.js +1 -1
  243. package/dist/components/bq-input.js.map +1 -1
  244. package/dist/components/bq-notification.js +1 -1
  245. package/dist/components/bq-notification.js.map +1 -1
  246. package/dist/components/bq-option-group.js +1 -1
  247. package/dist/components/bq-option-group.js.map +1 -1
  248. package/dist/components/bq-option-list.js +1 -1
  249. package/dist/components/bq-option.js +1 -1
  250. package/dist/components/bq-page-title.js +1 -1
  251. package/dist/components/bq-page-title.js.map +1 -1
  252. package/dist/components/bq-panel.js +1 -1
  253. package/dist/components/bq-progress.js +1 -1
  254. package/dist/components/bq-progress.js.map +1 -1
  255. package/dist/components/bq-radio-group.js +1 -1
  256. package/dist/components/bq-radio.js +1 -1
  257. package/dist/components/bq-radio.js.map +1 -1
  258. package/dist/components/bq-select.js +1 -1
  259. package/dist/components/bq-select.js.map +1 -1
  260. package/dist/components/bq-side-menu-item.js +1 -1
  261. package/dist/components/bq-side-menu-item.js.map +1 -1
  262. package/dist/components/bq-side-menu.js +1 -1
  263. package/dist/components/bq-slider.js +1 -1
  264. package/dist/components/bq-spinner.js +1 -1
  265. package/dist/components/bq-spinner.js.map +1 -1
  266. package/dist/components/bq-status.js +1 -1
  267. package/dist/components/bq-status.js.map +1 -1
  268. package/dist/components/bq-step-item.js +1 -1
  269. package/dist/components/bq-step-item.js.map +1 -1
  270. package/dist/components/bq-steps.js +1 -1
  271. package/dist/components/bq-switch.js +1 -1
  272. package/dist/components/bq-switch.js.map +1 -1
  273. package/dist/components/bq-tab-group.js +1 -1
  274. package/dist/components/bq-tab.js +1 -1
  275. package/dist/components/bq-tab.js.map +1 -1
  276. package/dist/components/bq-tag.js +1 -1
  277. package/dist/components/bq-textarea.js +1 -1
  278. package/dist/components/bq-textarea.js.map +1 -1
  279. package/dist/components/bq-toast.js +1 -1
  280. package/dist/components/bq-toast.js.map +1 -1
  281. package/dist/components/bq-tooltip.js +1 -1
  282. package/dist/components/index.js +1 -1
  283. package/dist/components/{p-CK3SnGa2.js → p-BBCVL6R0.js} +2 -2
  284. package/dist/components/{p-MSqM1CAF.js → p-BS8hIETL.js} +2 -2
  285. package/dist/components/{p-MSqM1CAF.js.map → p-BS8hIETL.js.map} +1 -1
  286. package/dist/components/{p-wi7vUIoV.js → p-CWawcXxA.js} +2 -2
  287. package/dist/components/{p-wi7vUIoV.js.map → p-CWawcXxA.js.map} +1 -1
  288. package/dist/components/{p-CNITfoR_.js → p-D6ngGq0Y.js} +2 -2
  289. package/dist/components/{p-CNITfoR_.js.map → p-D6ngGq0Y.js.map} +1 -1
  290. package/dist/components/{p-jrBUnEFW.js → p-DMKBBBUE.js} +2 -2
  291. package/dist/components/{p-jrBUnEFW.js.map → p-DMKBBBUE.js.map} +1 -1
  292. package/dist/components/p-Dd3v3b2E.js +6 -0
  293. package/dist/components/{p-CfP6le1E.js.map → p-Dd3v3b2E.js.map} +1 -1
  294. package/dist/components/p-Dx-CEPSQ.js.map +1 -1
  295. package/dist/components/{p-BOuMP_Rm.js → p-iyX-PhkX.js} +2 -2
  296. package/dist/components/{p-BOuMP_Rm.js.map → p-iyX-PhkX.js.map} +1 -1
  297. package/dist/components/p-uqkxeAeG.js.map +1 -1
  298. package/dist/components/{p-2bpX-u8x.js → p-v3c5-Hhf.js} +2 -2
  299. package/dist/custom-elements.json +25333 -1261
  300. package/dist/esm/beeq.js +1 -1
  301. package/dist/esm/bq-accordion.entry.js +1 -1
  302. package/dist/esm/bq-accordion.entry.js.map +1 -1
  303. package/dist/esm/bq-alert.entry.js +1 -1
  304. package/dist/esm/bq-alert.entry.js.map +1 -1
  305. package/dist/esm/bq-button_2.entry.js +2 -2
  306. package/dist/esm/bq-button_2.entry.js.map +1 -1
  307. package/dist/esm/bq-checkbox.entry.js +4 -4
  308. package/dist/esm/bq-checkbox.entry.js.map +1 -1
  309. package/dist/esm/bq-date-picker.entry.js +1743 -366
  310. package/dist/esm/bq-date-picker.entry.js.map +1 -1
  311. package/dist/esm/bq-dialog.entry.js +5 -5
  312. package/dist/esm/bq-dialog.entry.js.map +1 -1
  313. package/dist/esm/bq-divider.entry.js +4 -4
  314. package/dist/esm/bq-drawer.entry.js +5 -5
  315. package/dist/esm/bq-drawer.entry.js.map +1 -1
  316. package/dist/esm/bq-dropdown_2.entry.js +4 -4
  317. package/dist/esm/bq-dropdown_2.entry.js.map +1 -1
  318. package/dist/esm/bq-empty-state.entry.js +6 -6
  319. package/dist/esm/bq-empty-state.entry.js.map +1 -1
  320. package/dist/esm/bq-input.entry.js +8 -8
  321. package/dist/esm/bq-input.entry.js.map +1 -1
  322. package/dist/esm/bq-notification.entry.js +6 -6
  323. package/dist/esm/bq-notification.entry.js.map +1 -1
  324. package/dist/esm/bq-option-group.entry.js +1 -1
  325. package/dist/esm/bq-option-list_2.entry.js +6 -6
  326. package/dist/esm/bq-option-list_2.entry.js.map +1 -1
  327. package/dist/esm/bq-option.entry.js +4 -4
  328. package/dist/esm/bq-page-title.entry.js +4 -4
  329. package/dist/esm/bq-progress.entry.js +5 -5
  330. package/dist/esm/bq-progress.entry.js.map +1 -1
  331. package/dist/esm/bq-radio-group.entry.js +1 -1
  332. package/dist/esm/bq-radio.entry.js +4 -4
  333. package/dist/esm/bq-radio.entry.js.map +1 -1
  334. package/dist/esm/bq-select.entry.js +1 -1
  335. package/dist/esm/bq-select.entry.js.map +1 -1
  336. package/dist/esm/bq-side-menu-item.entry.js +1 -1
  337. package/dist/esm/bq-side-menu-item.entry.js.map +1 -1
  338. package/dist/esm/bq-side-menu.entry.js +2 -2
  339. package/dist/esm/bq-slider.entry.js +3 -3
  340. package/dist/esm/bq-slider.entry.js.map +1 -1
  341. package/dist/esm/bq-spinner.entry.js +4 -4
  342. package/dist/esm/bq-status.entry.js +2 -2
  343. package/dist/esm/bq-status.entry.js.map +1 -1
  344. package/dist/esm/bq-step-item.entry.js +5 -5
  345. package/dist/esm/bq-step-item.entry.js.map +1 -1
  346. package/dist/esm/bq-steps.entry.js +2 -2
  347. package/dist/esm/bq-switch.entry.js +4 -4
  348. package/dist/esm/bq-switch.entry.js.map +1 -1
  349. package/dist/esm/bq-tab-group.entry.js +3 -3
  350. package/dist/esm/bq-tab.entry.js +3 -3
  351. package/dist/esm/bq-textarea.entry.js +5 -5
  352. package/dist/esm/bq-toast.entry.js +2 -2
  353. package/dist/esm/bq-toast.entry.js.map +1 -1
  354. package/dist/esm/bq-tooltip.entry.js +4 -4
  355. package/dist/esm/event-Dx-CEPSQ.js.map +1 -1
  356. package/dist/esm/loader.js +1 -1
  357. package/dist/esm/slot-uqkxeAeG.js.map +1 -1
  358. package/dist/hydrate/index.js +1980 -601
  359. package/dist/hydrate/index.mjs +1980 -601
  360. package/dist/stencil.config.js +6 -0
  361. package/dist/stencil.config.js.map +1 -1
  362. package/dist/types/components/checkbox/bq-checkbox.d.ts +2 -1
  363. package/dist/types/components/date-picker/bq-date-picker.d.ts +330 -238
  364. package/dist/types/components/date-picker/bq-date-picker.types.d.ts +30 -39
  365. package/dist/types/components/date-picker/components/CalendarDayView.d.ts +42 -0
  366. package/dist/types/components/date-picker/components/CalendarHeader.d.ts +34 -0
  367. package/dist/types/components/date-picker/components/CalendarMonthView.d.ts +34 -0
  368. package/dist/types/components/date-picker/components/CalendarYearView.d.ts +32 -0
  369. package/dist/types/components/date-picker/helper/bounds.d.ts +49 -0
  370. package/dist/types/components/date-picker/helper/calendar.d.ts +78 -0
  371. package/dist/types/components/date-picker/helper/constants.d.ts +62 -16
  372. package/dist/types/components/date-picker/helper/input.d.ts +23 -0
  373. package/dist/types/components/date-picker/helper/intl.d.ts +38 -0
  374. package/dist/types/components/date-picker/helper/labels.d.ts +29 -0
  375. package/dist/types/components/date-picker/helper/navigation.d.ts +23 -0
  376. package/dist/types/components/date-picker/helper/selection.d.ts +44 -0
  377. package/dist/types/components/date-picker/helper/value.d.ts +31 -0
  378. package/dist/types/components/radio/bq-radio.d.ts +2 -1
  379. package/dist/types/components.d.ts +437 -350
  380. package/dist/types/shared/utils/event.d.ts +1 -1
  381. package/dist/types/shared/utils/slot.d.ts +1 -1
  382. package/package.json +1 -1
  383. package/dist/beeq/p-0cfa8d0b.entry.js +0 -6
  384. package/dist/beeq/p-0cfa8d0b.entry.js.map +0 -1
  385. package/dist/beeq/p-25772ebd.entry.js.map +0 -1
  386. package/dist/beeq/p-365f0372.entry.js.map +0 -1
  387. package/dist/beeq/p-53ea5999.entry.js +0 -6
  388. package/dist/beeq/p-53ea5999.entry.js.map +0 -1
  389. package/dist/beeq/p-79aab4dd.entry.js +0 -6
  390. package/dist/beeq/p-b7c6fdbd.entry.js.map +0 -1
  391. package/dist/beeq/p-d4df64ae.entry.js +0 -6
  392. package/dist/collection/components/date-picker/libs/callyLibrary.js +0 -92
  393. package/dist/collection/components/date-picker/libs/callyLibrary.js.map +0 -1
  394. package/dist/components/p-CfP6le1E.js +0 -6
  395. package/dist/types/components/date-picker/libs/callyLibrary.d.ts +0 -15
  396. /package/dist/beeq/{p-49a999b4.entry.js.map → p-1a2c4878.entry.js.map} +0 -0
  397. /package/dist/beeq/{p-8974f66f.entry.js.map → p-2e1fffcd.entry.js.map} +0 -0
  398. /package/dist/beeq/{p-b31d249b.entry.js.map → p-38006c8e.entry.js.map} +0 -0
  399. /package/dist/beeq/{p-0a3c5b97.entry.js.map → p-5eba392c.entry.js.map} +0 -0
  400. /package/dist/beeq/{p-fe22de00.entry.js.map → p-6a38fcaf.entry.js.map} +0 -0
  401. /package/dist/beeq/{p-ef783b95.entry.js.map → p-72ff2fe2.entry.js.map} +0 -0
  402. /package/dist/beeq/{p-fb763ec5.entry.js.map → p-8bd7f4c2.entry.js.map} +0 -0
  403. /package/dist/beeq/{p-f07f4d99.entry.js.map → p-9413a4d3.entry.js.map} +0 -0
  404. /package/dist/beeq/{p-7972ba08.entry.js.map → p-a55354ee.entry.js.map} +0 -0
  405. /package/dist/beeq/{p-84e96891.entry.js.map → p-d792e3d3.entry.js.map} +0 -0
  406. /package/dist/beeq/{p-5645238d.entry.js.map → p-e9a1b183.entry.js.map} +0 -0
  407. /package/dist/beeq/{p-b6f5430a.entry.js.map → p-f891fb4b.entry.js.map} +0 -0
  408. /package/dist/components/{p-CK3SnGa2.js.map → p-BBCVL6R0.js.map} +0 -0
  409. /package/dist/components/{p-2bpX-u8x.js.map → p-v3c5-Hhf.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["bqTooltipCss","BqTooltip","__stencil_proxyCustomElement","HTMLElement","trigger","panel","arrow","floatingUI","alwaysVisible","distance","hideArrow","placement","sameWidth","displayOn","visible","handleVisibleChange","this","hide","show","handleFloatingUIOptionsChange","init","strategy","bqClick","bqFocusIn","bqFocusOut","bqHoverIn","bqHoverOut","componentDidLoad","FloatingUI","skidding","disconnectedCallback","destroy","handleDocumentKeyDown","event","key","handleDocumentMouseDown","isEventTargetChildOfElement","el","handleDocumentScroll","showTooltip","hideTooltip","handleTriggerMouseOver","async","hoverEvent","emit","defaultPrevented","handleTriggerMouseLeave","handleTriggerOnClick","clickEvent","handleTriggerFocusin","focusEvent","handleTriggerFocusout","update","isHidden","render","h","class","part","onClick","onFocusin","onFocusout","onMouseEnter","onMouseLeave","ref","name","hidden","role"],"sources":["../../packages/beeq/src/components/tooltip/scss/bq-tooltip.scss?tag=bq-tooltip&encapsulation=shadow","../../packages/beeq/src/components/tooltip/bq-tooltip.tsx"],"sourcesContent":["/* -------------------------------------------------------------------------- */\n/* Tooltip styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-tooltip.variables';\n\n.bq-tooltip--panel {\n @include animation-fade-in;\n @apply pointer-events-none fixed z-[--bq-tooltip--z-index] box-border bg-[--bq-tooltip--background-color];\n @apply is-[--bq-tooltip--width] max-is-[--bq-tooltip--max-width] p-b-[--bq-tooltip--paddingY] p-i-[--bq-tooltip--paddingX];\n @apply text-[length:--bq-tooltip--font-size] leading-[--bq-tooltip--line-height] text-[color:--bq-tooltip--text-color];\n @apply rounded-[--bq-tooltip--border-radius] border-[length:--bq-tooltip--border-width] border-[color:--bq-tooltip--border-color];\n @apply shadow-[shadow:--bq-tooltip--box-shadow];\n}\n\n.bq-tooltip--arrow {\n &,\n &::before {\n @apply absolute -z-[1] bs-2 is-2;\n }\n\n &::before {\n @apply start-0 rotate-45 bg-[--bq-tooltip--background-color] content-empty inset-bs-0;\n }\n}\n","import type { EventEmitter } from '@stencil/core';\nimport { Component, Element, Event, h, Listen, Method, Prop, Watch } from '@stencil/core';\n\nimport type { Placement } from '../../services/interfaces';\nimport { FloatingUI } from '../../services/libraries';\nimport { isEventTargetChildOfElement } from '../../shared/utils';\n\n/**\n * The Tooltip component is a small pop-up box that appears when a user hovers over or clicks on an element, providing additional information or context.\n *\n * @example How to use it\n * ```html\n * <bq-tooltip visible>\n * Yuhu! I'm a tooltip 🙃\n * <bq-button slot=\"trigger\">Hover me!</bq-button>\n * </bq-tooltip>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/64c562-tooltip\n * @status stable\n *\n * @attr {boolean} always-visible - If true, the tooltip will always be visible\n * @attr {number} distance - Distance between trigger element and tooltip\n * @attr {boolean} hide-arrow - If true, the arrow on the tooltip content won't be shown\n * @attr {\"top\" | \"right\" | \"bottom\" | \"left\"} placement - Defines the position of the tooltip\n * @attr {boolean} same-width - Whether the tooltip should have the same width as the trigger element (applicable only for content shorter than the trigger element)\n * @attr {\"click\" | \"hover\"} display-on - Set the action when the tooltip should be displayed, on hover (default) or click\n * @attr {boolean} visible - Indicates whether or not the tooltip is visible when the component is first rendered, and when interacting with the trigger\n *\n * @method show - Shows the tooltip\n * @method hide - Hides the tooltip\n *\n * @slot trigger - The element which displays tooltip on hover\n * @slot - The tooltip content\n *\n * @part base - The component wrapper container inside the shadow DOM\n * @part trigger - The `<div>` container that holds the element which displays tooltip on hover\n * @part panel - The `<div>` container that holds the tooltip content\n *\n * @cssprop --bq-tooltip--background-color - Tooltip background color\n * @cssprop --bq-tooltip--box-shadow - Tooltip box shadow\n * @cssprop --bq-tooltip--font-size - Tooltip font size\n * @cssprop --bq-tooltip--line-height - Tooltip line height\n * @cssprop --bq-tooltip--text-color - Tooltip text color\n * @cssprop --bq-tooltip--paddingX - Tooltip horizontal padding\n * @cssprop --bq-tooltip--paddingY - Tooltip vertical padding\n * @cssprop --bq-tooltip--border-color - Tooltip border color\n * @cssprop --bq-tooltip--border-radius - Tooltip border radius\n * @cssprop --bq-tooltip--border-style - Tooltip border style\n * @cssprop --bq-tooltip--border-width - Tooltip border width\n * @cssprop --bq-tooltip--z-index: Tooltip z-index\n */\n@Component({\n tag: 'bq-tooltip',\n styleUrl: './scss/bq-tooltip.scss',\n shadow: true,\n})\nexport class BqTooltip {\n // Own Properties\n // ====================\n private trigger: HTMLElement;\n private panel: HTMLElement;\n private arrow: HTMLElement;\n private floatingUI: FloatingUI;\n\n // Reference to host HTML element\n // ===================================\n @Element() el!: HTMLBqTooltipElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n // Public Property API\n // ========================\n\n /** If true, the tooltip will always be visible */\n @Prop() alwaysVisible?: boolean = false;\n\n /** Distance between trigger element and tooltip */\n @Prop({ reflect: true }) distance?: number = 10;\n\n /** If true, the arrow on the tooltip content won't be shown */\n @Prop({ reflect: true }) hideArrow?: boolean = false;\n\n /* Defines the position of the tooltip */\n @Prop({ reflect: true }) placement?: Placement = 'top';\n\n /** Whether the tooltip should have the same width as the trigger element\n * (applicable only for content shorter than the trigger element) */\n @Prop({ reflect: true }) sameWidth?: boolean = false;\n\n /** Set the action when the tooltip should be displayed, on hover (default) or click */\n @Prop({ reflect: true }) displayOn: 'click' | 'hover' = 'hover';\n\n /**\n * Indicates whether or not the tooltip is visible when the component is first rendered,\n * and when interacting with the trigger\n */\n @Prop({ reflect: true, mutable: true }) visible? = false;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('visible')\n async handleVisibleChange() {\n if (!this.visible && !this.alwaysVisible) {\n return await this.hide();\n }\n\n await this.show();\n }\n\n @Watch('distance')\n @Watch('hideArrow')\n @Watch('placement')\n @Watch('sameWidth')\n handleFloatingUIOptionsChange() {\n this.floatingUI.init({\n placement: this.placement,\n distance: this.distance,\n sameWidth: this.sameWidth,\n strategy: 'fixed',\n });\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Emitted when the tooltip trigger is clicked */\n @Event() bqClick: EventEmitter<HTMLBqTooltipElement>;\n\n /** Emitted when the tooltip trigger is focused in */\n @Event() bqFocusIn: EventEmitter<HTMLBqTooltipElement>;\n\n /** Emitted when the tooltip trigger is focused out */\n @Event() bqFocusOut: EventEmitter<HTMLBqTooltipElement>;\n\n /** Emitted when the tooltip trigger is hovered in */\n @Event() bqHoverIn: EventEmitter<HTMLBqTooltipElement>;\n\n /** Emitted when the tooltip trigger is hovered out */\n @Event() bqHoverOut: EventEmitter<HTMLBqTooltipElement>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentDidLoad() {\n this.floatingUI = new FloatingUI(this.trigger, this.panel, {\n ...(!this.hideArrow && { arrow: this.arrow }),\n placement: this.placement,\n distance: this.distance,\n sameWidth: this.sameWidth,\n strategy: 'absolute',\n skidding: 0,\n });\n }\n\n disconnectedCallback() {\n this.floatingUI?.destroy();\n }\n\n // Listeners\n // ==============\n\n @Listen('keydown', { target: 'document' })\n handleDocumentKeyDown(event: KeyboardEvent) {\n // Early returns for performance optimization\n if (this.alwaysVisible || !this.visible || this.displayOn !== 'click') return;\n // Hide tooltip when the user presses the escape key, but only if the displayOn is click and the tooltip is visible\n if (event.key !== 'Escape') return;\n\n this.hide();\n }\n\n @Listen('mousedown', { target: 'document' })\n handleDocumentMouseDown(event: MouseEvent) {\n // Early returns for performance optimization\n if (this.alwaysVisible || !this.visible) return;\n // Hide tooltip when the user clicks outside of the tooltip, but only if the displayOn is click and the tooltip is visible\n if (isEventTargetChildOfElement(event, this.el)) return;\n\n this.hide();\n }\n\n @Listen('scroll', { target: 'document', passive: true, capture: true })\n handleDocumentScroll() {\n // Early returns for performance optimization\n if (this.alwaysVisible || !this.visible) return;\n // Hide tooltip when the user scrolls, but only if the the tooltip is visible\n this.hide();\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 /** Shows the tooltip */\n @Method()\n async show() {\n this.visible = true;\n this.showTooltip();\n }\n\n /** Hides the tooltip */\n @Method()\n async hide() {\n if (this.alwaysVisible) return;\n\n this.visible = false;\n this.hideTooltip();\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleTriggerMouseOver = async () => {\n if (this.displayOn !== 'hover') return;\n\n const hoverEvent = this.bqHoverIn.emit(this.el);\n if (hoverEvent.defaultPrevented) return;\n\n await this.show();\n };\n\n private handleTriggerMouseLeave = async () => {\n if (this.displayOn !== 'hover') return;\n\n const hoverEvent = this.bqHoverOut.emit(this.el);\n if (hoverEvent.defaultPrevented) return;\n\n await this.hide();\n };\n\n private handleTriggerOnClick = async () => {\n if (this.displayOn !== 'click') return;\n\n const clickEvent = this.bqClick.emit(this.el);\n if (clickEvent.defaultPrevented) return;\n\n await (this.visible ? this.hide() : this.show());\n };\n\n private handleTriggerFocusin = async () => {\n if (this.visible || this.displayOn === 'click') return;\n\n const focusEvent = this.bqFocusIn.emit(this.el);\n if (focusEvent.defaultPrevented) return;\n\n await this.show();\n };\n\n private handleTriggerFocusout = async () => {\n if (!this.visible || this.displayOn === 'click') return;\n\n const focusEvent = this.bqFocusOut.emit(this.el);\n if (focusEvent.defaultPrevented) return;\n\n await this.hide();\n };\n\n private showTooltip = () => {\n if (!this.panel) return;\n this.floatingUI?.update();\n };\n\n private hideTooltip = () => {\n if (!this.panel) return;\n this.visible = false;\n };\n\n private get isHidden() {\n return !this.visible && !this.alwaysVisible;\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <div class=\"bq-tooltip relative\" part=\"base\">\n {/* TRIGGER */}\n {/**\n * NOTE: We could use a native HTML button as trigger container, but it causes issues with\n * certain interactive elements inside the trigger slot (e.g., buttons, links, inputs...).\n * This is because nested interactive elements are not allowed inside a button.\n * Also, that will force the user to focus twice to reach the inner interactive element.\n */}\n {/** biome-ignore lint/a11y/noStaticElementInteractions: bypass the \"Static Elements should not be interactive.\" rule */}\n {/** biome-ignore lint/a11y/useKeyWithClickEvents: bypass the \"Enforce to have the onClick mouse event with the onKeyUp, the onKeyDown, or the onKeyPress keyboard event.\" rule */}\n <div\n class=\"bq-tooltip--trigger\"\n onClick={this.handleTriggerOnClick}\n onFocusin={this.handleTriggerFocusin}\n onFocusout={this.handleTriggerFocusout}\n onMouseEnter={this.handleTriggerMouseOver}\n onMouseLeave={this.handleTriggerMouseLeave}\n part=\"trigger\"\n ref={(el: HTMLDivElement) => {\n this.trigger = el;\n }}\n >\n <slot name=\"trigger\" />\n </div>\n {/* PANEL */}\n <div\n aria-hidden={this.isHidden}\n class=\"bq-tooltip--panel\"\n hidden={this.isHidden}\n part=\"panel\"\n ref={(el: HTMLDivElement) => {\n this.panel = el;\n }}\n role=\"tooltip\"\n >\n {!this.hideArrow && (\n <div\n class=\"bq-tooltip--arrow\"\n ref={(el: HTMLDivElement) => {\n this.arrow = el;\n }}\n />\n )}\n <slot />\n </div>\n </div>\n );\n }\n}\n"],"mappings":";;;;8HAAA,MAAMA,EAAe,IAAM,20tB,MCyDdC,EAASC,EAAA,MAAAD,UAAAE,E,gQAGZC,QACAC,MACAC,MACAC,W,qBAcAC,cAA0B,MAGTC,SAAoB,GAGpBC,UAAsB,MAGtBC,UAAwB,MAIxBC,UAAsB,MAGtBC,UAA+B,QAMhBC,QAAW,MAMnD,yBAAMC,GACJ,IAAKC,KAAKF,UAAYE,KAAKR,cAAe,CACxC,aAAaQ,KAAKC,M,OAGdD,KAAKE,M,CAOb,6BAAAC,GACEH,KAAKT,WAAWa,KAAK,CACnBT,UAAWK,KAAKL,UAChBF,SAAUO,KAAKP,SACfG,UAAWI,KAAKJ,UAChBS,SAAU,S,CASLC,QAGAC,UAGAC,WAGAC,UAGAC,WAMT,gBAAAC,GACEX,KAAKT,WAAa,IAAIqB,EAAWZ,KAAKZ,QAASY,KAAKX,MAAO,KACpDW,KAAKN,WAAa,CAAEJ,MAAOU,KAAKV,OACrCK,UAAWK,KAAKL,UAChBF,SAAUO,KAAKP,SACfG,UAAWI,KAAKJ,UAChBS,SAAU,WACVQ,SAAU,G,CAId,oBAAAC,GACEd,KAAKT,YAAYwB,S,CAOnB,qBAAAC,CAAsBC,GAEpB,GAAIjB,KAAKR,gBAAkBQ,KAAKF,SAAWE,KAAKH,YAAc,QAAS,OAEvE,GAAIoB,EAAMC,MAAQ,SAAU,OAE5BlB,KAAKC,M,CAIP,uBAAAkB,CAAwBF,GAEtB,GAAIjB,KAAKR,gBAAkBQ,KAAKF,QAAS,OAEzC,GAAIsB,EAA4BH,EAAOjB,KAAKqB,IAAK,OAEjDrB,KAAKC,M,CAIP,oBAAAqB,GAEE,GAAItB,KAAKR,gBAAkBQ,KAAKF,QAAS,OAEzCE,KAAKC,M,CAYP,UAAMC,GACJF,KAAKF,QAAU,KACfE,KAAKuB,a,CAKP,UAAMtB,GACJ,GAAID,KAAKR,cAAe,OAExBQ,KAAKF,QAAU,MACfE,KAAKwB,a,CAQCC,uBAAyBC,UAC/B,GAAI1B,KAAKH,YAAc,QAAS,OAEhC,MAAM8B,EAAa3B,KAAKS,UAAUmB,KAAK5B,KAAKqB,IAC5C,GAAIM,EAAWE,iBAAkB,aAE3B7B,KAAKE,MAAM,EAGX4B,wBAA0BJ,UAChC,GAAI1B,KAAKH,YAAc,QAAS,OAEhC,MAAM8B,EAAa3B,KAAKU,WAAWkB,KAAK5B,KAAKqB,IAC7C,GAAIM,EAAWE,iBAAkB,aAE3B7B,KAAKC,MAAM,EAGX8B,qBAAuBL,UAC7B,GAAI1B,KAAKH,YAAc,QAAS,OAEhC,MAAMmC,EAAahC,KAAKM,QAAQsB,KAAK5B,KAAKqB,IAC1C,GAAIW,EAAWH,iBAAkB,aAE1B7B,KAAKF,QAAUE,KAAKC,OAASD,KAAKE,OAAO,EAG1C+B,qBAAuBP,UAC7B,GAAI1B,KAAKF,SAAWE,KAAKH,YAAc,QAAS,OAEhD,MAAMqC,EAAalC,KAAKO,UAAUqB,KAAK5B,KAAKqB,IAC5C,GAAIa,EAAWL,iBAAkB,aAE3B7B,KAAKE,MAAM,EAGXiC,sBAAwBT,UAC9B,IAAK1B,KAAKF,SAAWE,KAAKH,YAAc,QAAS,OAEjD,MAAMqC,EAAalC,KAAKQ,WAAWoB,KAAK5B,KAAKqB,IAC7C,GAAIa,EAAWL,iBAAkB,aAE3B7B,KAAKC,MAAM,EAGXsB,YAAc,KACpB,IAAKvB,KAAKX,MAAO,OACjBW,KAAKT,YAAY6C,QAAQ,EAGnBZ,YAAc,KACpB,IAAKxB,KAAKX,MAAO,OACjBW,KAAKF,QAAU,KAAK,EAGtB,YAAYuC,GACV,OAAQrC,KAAKF,UAAYE,KAAKR,a,CAOhC,MAAA8C,GACE,OACEC,EAAA,OAAArB,IAAA,2CAAKsB,MAAM,sBAAsBC,KAAK,QAUpCF,EAAA,OAAArB,IAAA,2CACEsB,MAAM,sBACNE,QAAS1C,KAAK+B,qBACdY,UAAW3C,KAAKiC,qBAChBW,WAAY5C,KAAKmC,sBACjBU,aAAc7C,KAAKyB,uBACnBqB,aAAc9C,KAAK8B,wBACnBW,KAAK,UACLM,IAAM1B,IACJrB,KAAKZ,QAAUiC,CAAE,GAGnBkB,EAAA,QAAArB,IAAA,2CAAM8B,KAAK,aAGbT,EAAA,OAAArB,IAAA,yDACelB,KAAKqC,SAClBG,MAAM,oBACNS,OAAQjD,KAAKqC,SACbI,KAAK,QACLM,IAAM1B,IACJrB,KAAKX,MAAQgC,CAAE,EAEjB6B,KAAK,YAEHlD,KAAKN,WACL6C,EAAA,OAAArB,IAAA,2CACEsB,MAAM,oBACNO,IAAM1B,IACJrB,KAAKV,MAAQ+B,CAAE,IAIrBkB,EAAA,QAAArB,IAAA,8C","ignoreList":[]}
1
+ {"version":3,"names":["bqTooltipCss","BqTooltip","__stencil_proxyCustomElement","HTMLElement","trigger","panel","arrow","floatingUI","alwaysVisible","distance","hideArrow","placement","sameWidth","displayOn","visible","handleVisibleChange","this","hide","show","handleFloatingUIOptionsChange","init","strategy","bqClick","bqFocusIn","bqFocusOut","bqHoverIn","bqHoverOut","componentDidLoad","FloatingUI","skidding","disconnectedCallback","destroy","handleDocumentKeyDown","event","key","handleDocumentMouseDown","isEventTargetChildOfElement","el","handleDocumentScroll","showTooltip","hideTooltip","handleTriggerMouseOver","async","hoverEvent","emit","defaultPrevented","handleTriggerMouseLeave","handleTriggerOnClick","clickEvent","handleTriggerFocusin","focusEvent","handleTriggerFocusout","update","isHidden","render","h","class","part","onClick","onFocusin","onFocusout","onMouseEnter","onMouseLeave","ref","name","hidden","role"],"sources":["../../packages/beeq/src/components/tooltip/scss/bq-tooltip.scss?tag=bq-tooltip&encapsulation=shadow","../../packages/beeq/src/components/tooltip/bq-tooltip.tsx"],"sourcesContent":["/* -------------------------------------------------------------------------- */\n/* Tooltip styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-tooltip.variables';\n\n.bq-tooltip--panel {\n @include animation-fade-in;\n @apply pointer-events-none fixed z-[--bq-tooltip--z-index] box-border bg-[--bq-tooltip--background-color];\n @apply is-[--bq-tooltip--width] max-is-[--bq-tooltip--max-width] p-b-[--bq-tooltip--paddingY] p-i-[--bq-tooltip--paddingX];\n @apply text-[length:--bq-tooltip--font-size] leading-[--bq-tooltip--line-height] text-[color:--bq-tooltip--text-color];\n @apply rounded-[--bq-tooltip--border-radius] border-[length:--bq-tooltip--border-width] border-[color:--bq-tooltip--border-color];\n @apply shadow-[shadow:--bq-tooltip--box-shadow];\n}\n\n.bq-tooltip--arrow {\n &,\n &::before {\n @apply absolute -z-[1] bs-2 is-2;\n }\n\n &::before {\n @apply start-0 rotate-45 bg-[--bq-tooltip--background-color] content-empty inset-bs-0;\n }\n}\n","import type { EventEmitter } from '@stencil/core';\nimport { Component, Element, Event, h, Listen, Method, Prop, Watch } from '@stencil/core';\n\nimport type { Placement } from '../../services/interfaces';\nimport { FloatingUI } from '../../services/libraries';\nimport { isEventTargetChildOfElement } from '../../shared/utils';\n\n/**\n * The Tooltip component is a small pop-up box that appears when a user hovers over or clicks on an element, providing additional information or context.\n *\n * @example How to use it\n * ```html\n * <bq-tooltip visible>\n * Yuhu! I'm a tooltip 🙃\n * <bq-button slot=\"trigger\">Hover me!</bq-button>\n * </bq-tooltip>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/64c562-tooltip\n * @status stable\n *\n * @attr {boolean} always-visible - If true, the tooltip will always be visible\n * @attr {number} distance - Distance between trigger element and tooltip\n * @attr {boolean} hide-arrow - If true, the arrow on the tooltip content won't be shown\n * @attr {\"top\" | \"right\" | \"bottom\" | \"left\"} placement - Defines the position of the tooltip\n * @attr {boolean} same-width - Whether the tooltip should have the same width as the trigger element (applicable only for content shorter than the trigger element)\n * @attr {\"click\" | \"hover\"} display-on - Set the action when the tooltip should be displayed, on hover (default) or click\n * @attr {boolean} visible - Indicates whether or not the tooltip is visible when the component is first rendered, and when interacting with the trigger\n *\n * @method show - Shows the tooltip\n * @method hide - Hides the tooltip\n *\n * @slot trigger - The element which displays tooltip on hover\n * @slot - The tooltip content\n *\n * @part base - The component wrapper container inside the shadow DOM\n * @part trigger - The `<div>` container that holds the element which displays tooltip on hover\n * @part panel - The `<div>` container that holds the tooltip content\n *\n * @cssprop --bq-tooltip--background-color - Tooltip background color\n * @cssprop --bq-tooltip--box-shadow - Tooltip box shadow\n * @cssprop --bq-tooltip--font-size - Tooltip font size\n * @cssprop --bq-tooltip--line-height - Tooltip line height\n * @cssprop --bq-tooltip--text-color - Tooltip text color\n * @cssprop --bq-tooltip--paddingX - Tooltip horizontal padding\n * @cssprop --bq-tooltip--paddingY - Tooltip vertical padding\n * @cssprop --bq-tooltip--border-color - Tooltip border color\n * @cssprop --bq-tooltip--border-radius - Tooltip border radius\n * @cssprop --bq-tooltip--border-style - Tooltip border style\n * @cssprop --bq-tooltip--border-width - Tooltip border width\n * @cssprop --bq-tooltip--z-index: Tooltip z-index\n */\n@Component({\n tag: 'bq-tooltip',\n styleUrl: './scss/bq-tooltip.scss',\n shadow: true,\n})\nexport class BqTooltip {\n // Own Properties\n // ====================\n private trigger: HTMLElement;\n private panel: HTMLElement;\n private arrow: HTMLElement;\n private floatingUI: FloatingUI;\n\n // Reference to host HTML element\n // ===================================\n @Element() el!: HTMLBqTooltipElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n // Public Property API\n // ========================\n\n /** If true, the tooltip will always be visible */\n @Prop() alwaysVisible?: boolean = false;\n\n /** Distance between trigger element and tooltip */\n @Prop({ reflect: true }) distance?: number = 10;\n\n /** If true, the arrow on the tooltip content won't be shown */\n @Prop({ reflect: true }) hideArrow?: boolean = false;\n\n /* Defines the position of the tooltip */\n @Prop({ reflect: true }) placement?: Placement = 'top';\n\n /** Whether the tooltip should have the same width as the trigger element\n * (applicable only for content shorter than the trigger element) */\n @Prop({ reflect: true }) sameWidth?: boolean = false;\n\n /** Set the action when the tooltip should be displayed, on hover (default) or click */\n @Prop({ reflect: true }) displayOn: 'click' | 'hover' = 'hover';\n\n /**\n * Indicates whether or not the tooltip is visible when the component is first rendered,\n * and when interacting with the trigger\n */\n @Prop({ reflect: true, mutable: true }) visible? = false;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('visible')\n async handleVisibleChange() {\n if (!this.visible && !this.alwaysVisible) {\n return await this.hide();\n }\n\n await this.show();\n }\n\n @Watch('distance')\n @Watch('hideArrow')\n @Watch('placement')\n @Watch('sameWidth')\n handleFloatingUIOptionsChange() {\n this.floatingUI.init({\n placement: this.placement,\n distance: this.distance,\n sameWidth: this.sameWidth,\n strategy: 'fixed',\n });\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Emitted when the tooltip trigger is clicked */\n @Event() bqClick: EventEmitter<HTMLBqTooltipElement>;\n\n /** Emitted when the tooltip trigger is focused in */\n @Event() bqFocusIn: EventEmitter<HTMLBqTooltipElement>;\n\n /** Emitted when the tooltip trigger is focused out */\n @Event() bqFocusOut: EventEmitter<HTMLBqTooltipElement>;\n\n /** Emitted when the tooltip trigger is hovered in */\n @Event() bqHoverIn: EventEmitter<HTMLBqTooltipElement>;\n\n /** Emitted when the tooltip trigger is hovered out */\n @Event() bqHoverOut: EventEmitter<HTMLBqTooltipElement>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentDidLoad() {\n this.floatingUI = new FloatingUI(this.trigger, this.panel, {\n ...(!this.hideArrow && { arrow: this.arrow }),\n placement: this.placement,\n distance: this.distance,\n sameWidth: this.sameWidth,\n strategy: 'absolute',\n skidding: 0,\n });\n }\n\n disconnectedCallback() {\n this.floatingUI?.destroy();\n }\n\n // Listeners\n // ==============\n\n @Listen('keydown', { target: 'document' })\n handleDocumentKeyDown(event: KeyboardEvent) {\n // Early returns for performance optimization\n if (this.alwaysVisible || !this.visible || this.displayOn !== 'click') return;\n // Hide tooltip when the user presses the escape key, but only if the displayOn is click and the tooltip is visible\n if (event.key !== 'Escape') return;\n\n this.hide();\n }\n\n @Listen('mousedown', { target: 'document' })\n handleDocumentMouseDown(event: MouseEvent) {\n // Early returns for performance optimization\n if (this.alwaysVisible || !this.visible) return;\n // Hide tooltip when the user clicks outside of the tooltip, but only if the displayOn is click and the tooltip is visible\n if (isEventTargetChildOfElement(event, this.el)) return;\n\n this.hide();\n }\n\n @Listen('scroll', { target: 'document', passive: true, capture: true })\n handleDocumentScroll() {\n // Early returns for performance optimization\n if (this.alwaysVisible || !this.visible) return;\n // Hide tooltip when the user scrolls, but only if the the tooltip is visible\n this.hide();\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 /** Shows the tooltip */\n @Method()\n async show() {\n this.visible = true;\n this.showTooltip();\n }\n\n /** Hides the tooltip */\n @Method()\n async hide() {\n if (this.alwaysVisible) return;\n\n this.visible = false;\n this.hideTooltip();\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleTriggerMouseOver = async () => {\n if (this.displayOn !== 'hover') return;\n\n const hoverEvent = this.bqHoverIn.emit(this.el);\n if (hoverEvent.defaultPrevented) return;\n\n await this.show();\n };\n\n private handleTriggerMouseLeave = async () => {\n if (this.displayOn !== 'hover') return;\n\n const hoverEvent = this.bqHoverOut.emit(this.el);\n if (hoverEvent.defaultPrevented) return;\n\n await this.hide();\n };\n\n private handleTriggerOnClick = async () => {\n if (this.displayOn !== 'click') return;\n\n const clickEvent = this.bqClick.emit(this.el);\n if (clickEvent.defaultPrevented) return;\n\n await (this.visible ? this.hide() : this.show());\n };\n\n private handleTriggerFocusin = async () => {\n if (this.visible || this.displayOn === 'click') return;\n\n const focusEvent = this.bqFocusIn.emit(this.el);\n if (focusEvent.defaultPrevented) return;\n\n await this.show();\n };\n\n private handleTriggerFocusout = async () => {\n if (!this.visible || this.displayOn === 'click') return;\n\n const focusEvent = this.bqFocusOut.emit(this.el);\n if (focusEvent.defaultPrevented) return;\n\n await this.hide();\n };\n\n private showTooltip = () => {\n if (!this.panel) return;\n this.floatingUI?.update();\n };\n\n private hideTooltip = () => {\n if (!this.panel) return;\n this.visible = false;\n };\n\n private get isHidden() {\n return !this.visible && !this.alwaysVisible;\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <div class=\"bq-tooltip relative\" part=\"base\">\n {/* TRIGGER */}\n {/**\n * NOTE: We could use a native HTML button as trigger container, but it causes issues with\n * certain interactive elements inside the trigger slot (e.g., buttons, links, inputs...).\n * This is because nested interactive elements are not allowed inside a button.\n * Also, that will force the user to focus twice to reach the inner interactive element.\n */}\n {/** biome-ignore lint/a11y/noStaticElementInteractions: bypass the \"Static Elements should not be interactive.\" rule */}\n {/** biome-ignore lint/a11y/useKeyWithClickEvents: bypass the \"Enforce to have the onClick mouse event with the onKeyUp, the onKeyDown, or the onKeyPress keyboard event.\" rule */}\n <div\n class=\"bq-tooltip--trigger\"\n onClick={this.handleTriggerOnClick}\n onFocusin={this.handleTriggerFocusin}\n onFocusout={this.handleTriggerFocusout}\n onMouseEnter={this.handleTriggerMouseOver}\n onMouseLeave={this.handleTriggerMouseLeave}\n part=\"trigger\"\n ref={(el: HTMLDivElement) => {\n this.trigger = el;\n }}\n >\n <slot name=\"trigger\" />\n </div>\n {/* PANEL */}\n <div\n aria-hidden={this.isHidden}\n class=\"bq-tooltip--panel\"\n hidden={this.isHidden}\n part=\"panel\"\n ref={(el: HTMLDivElement) => {\n this.panel = el;\n }}\n role=\"tooltip\"\n >\n {!this.hideArrow && (\n <div\n class=\"bq-tooltip--arrow\"\n ref={(el: HTMLDivElement) => {\n this.arrow = el;\n }}\n />\n )}\n <slot />\n </div>\n </div>\n );\n }\n}\n"],"mappings":";;;;mIAAA,MAAMA,EAAe,IAAM,sitB,MCyDdC,EAASC,EAAA,MAAAD,UAAAE,E,gQAGZC,QACAC,MACAC,MACAC,W,qBAcAC,cAA0B,MAGTC,SAAoB,GAGpBC,UAAsB,MAGtBC,UAAwB,MAIxBC,UAAsB,MAGtBC,UAA+B,QAMhBC,QAAW,MAMnD,yBAAMC,GACJ,IAAKC,KAAKF,UAAYE,KAAKR,cAAe,CACxC,aAAaQ,KAAKC,M,OAGdD,KAAKE,M,CAOb,6BAAAC,GACEH,KAAKT,WAAWa,KAAK,CACnBT,UAAWK,KAAKL,UAChBF,SAAUO,KAAKP,SACfG,UAAWI,KAAKJ,UAChBS,SAAU,S,CASLC,QAGAC,UAGAC,WAGAC,UAGAC,WAMT,gBAAAC,GACEX,KAAKT,WAAa,IAAIqB,EAAWZ,KAAKZ,QAASY,KAAKX,MAAO,KACpDW,KAAKN,WAAa,CAAEJ,MAAOU,KAAKV,OACrCK,UAAWK,KAAKL,UAChBF,SAAUO,KAAKP,SACfG,UAAWI,KAAKJ,UAChBS,SAAU,WACVQ,SAAU,G,CAId,oBAAAC,GACEd,KAAKT,YAAYwB,S,CAOnB,qBAAAC,CAAsBC,GAEpB,GAAIjB,KAAKR,gBAAkBQ,KAAKF,SAAWE,KAAKH,YAAc,QAAS,OAEvE,GAAIoB,EAAMC,MAAQ,SAAU,OAE5BlB,KAAKC,M,CAIP,uBAAAkB,CAAwBF,GAEtB,GAAIjB,KAAKR,gBAAkBQ,KAAKF,QAAS,OAEzC,GAAIsB,EAA4BH,EAAOjB,KAAKqB,IAAK,OAEjDrB,KAAKC,M,CAIP,oBAAAqB,GAEE,GAAItB,KAAKR,gBAAkBQ,KAAKF,QAAS,OAEzCE,KAAKC,M,CAYP,UAAMC,GACJF,KAAKF,QAAU,KACfE,KAAKuB,a,CAKP,UAAMtB,GACJ,GAAID,KAAKR,cAAe,OAExBQ,KAAKF,QAAU,MACfE,KAAKwB,a,CAQCC,uBAAyBC,UAC/B,GAAI1B,KAAKH,YAAc,QAAS,OAEhC,MAAM8B,EAAa3B,KAAKS,UAAUmB,KAAK5B,KAAKqB,IAC5C,GAAIM,EAAWE,iBAAkB,aAE3B7B,KAAKE,MAAM,EAGX4B,wBAA0BJ,UAChC,GAAI1B,KAAKH,YAAc,QAAS,OAEhC,MAAM8B,EAAa3B,KAAKU,WAAWkB,KAAK5B,KAAKqB,IAC7C,GAAIM,EAAWE,iBAAkB,aAE3B7B,KAAKC,MAAM,EAGX8B,qBAAuBL,UAC7B,GAAI1B,KAAKH,YAAc,QAAS,OAEhC,MAAMmC,EAAahC,KAAKM,QAAQsB,KAAK5B,KAAKqB,IAC1C,GAAIW,EAAWH,iBAAkB,aAE1B7B,KAAKF,QAAUE,KAAKC,OAASD,KAAKE,OAAO,EAG1C+B,qBAAuBP,UAC7B,GAAI1B,KAAKF,SAAWE,KAAKH,YAAc,QAAS,OAEhD,MAAMqC,EAAalC,KAAKO,UAAUqB,KAAK5B,KAAKqB,IAC5C,GAAIa,EAAWL,iBAAkB,aAE3B7B,KAAKE,MAAM,EAGXiC,sBAAwBT,UAC9B,IAAK1B,KAAKF,SAAWE,KAAKH,YAAc,QAAS,OAEjD,MAAMqC,EAAalC,KAAKQ,WAAWoB,KAAK5B,KAAKqB,IAC7C,GAAIa,EAAWL,iBAAkB,aAE3B7B,KAAKC,MAAM,EAGXsB,YAAc,KACpB,IAAKvB,KAAKX,MAAO,OACjBW,KAAKT,YAAY6C,QAAQ,EAGnBZ,YAAc,KACpB,IAAKxB,KAAKX,MAAO,OACjBW,KAAKF,QAAU,KAAK,EAGtB,YAAYuC,GACV,OAAQrC,KAAKF,UAAYE,KAAKR,a,CAOhC,MAAA8C,GACE,OACEC,EAAA,OAAArB,IAAA,2CAAKsB,MAAM,sBAAsBC,KAAK,QAUpCF,EAAA,OAAArB,IAAA,2CACEsB,MAAM,sBACNE,QAAS1C,KAAK+B,qBACdY,UAAW3C,KAAKiC,qBAChBW,WAAY5C,KAAKmC,sBACjBU,aAAc7C,KAAKyB,uBACnBqB,aAAc9C,KAAK8B,wBACnBW,KAAK,UACLM,IAAM1B,IACJrB,KAAKZ,QAAUiC,CAAE,GAGnBkB,EAAA,QAAArB,IAAA,2CAAM8B,KAAK,aAGbT,EAAA,OAAArB,IAAA,yDACelB,KAAKqC,SAClBG,MAAM,oBACNS,OAAQjD,KAAKqC,SACbI,KAAK,QACLM,IAAM1B,IACJrB,KAAKX,MAAQgC,CAAE,EAEjB6B,KAAK,YAEHlD,KAAKN,WACL6C,EAAA,OAAArB,IAAA,2CACEsB,MAAM,oBACNO,IAAM1B,IACJrB,KAAKV,MAAQ+B,CAAE,IAIrBkB,EAAA,QAAArB,IAAA,8C","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["isEventTargetChildOfElement","event","hostElement","path","composedPath","includes"],"sources":["../../packages/beeq/src/shared/utils/event.ts"],"sourcesContent":["/**\n * Check if the event target is a child of the host element\n * @param event - The event to check\n * @param hostElement - The host element to check against\n * @returns True if the event target is a child of the host element\n */\nexport const isEventTargetChildOfElement = (event: Event, hostElement: HTMLElement): boolean => {\n const path = event.composedPath();\n\n return path.includes(hostElement);\n};\n"],"mappings":";;;;MAMaA,EAA8B,CAACC,EAAcC,KACxD,MAAMC,EAAOF,EAAMG,eAEnB,OAAOD,EAAKE,SAASH,EAAY,S","ignoreList":[]}
1
+ {"version":3,"names":["isEventTargetChildOfElement","event","hostElement","path","composedPath","includes"],"sources":["../../packages/beeq/src/shared/utils/event.ts"],"sourcesContent":["/**\n * Check if the event target is a child of the host element\n * @param event - The event to check\n * @param hostElement - The host element to check against\n * @returns True if the event target is a child of the host element\n */\nexport const isEventTargetChildOfElement = (event: Event, hostElement: EventTarget): boolean => {\n const path = event.composedPath();\n\n return path.includes(hostElement);\n};\n"],"mappings":";;;;MAMaA,EAA8B,CAACC,EAAcC,KACxD,MAAMC,EAAOF,EAAMG,eAEnB,OAAOD,EAAKE,SAASH,EAAY,S","ignoreList":[]}
@@ -2,5 +2,5 @@
2
2
  * Built by Endavans
3
3
  * © https://beeq.design - Apache 2 License.
4
4
  */
5
- import{p as a,H as r,h as e,t as b}from"./p-2eUC8A3N.js";import{F as n}from"./p-CSAZnAFf.js";import{i as q}from"./p-B4sM1t6Z.js";const t={lockCount:0,config:{debug:false,bodyClassName:"bq-body--scroll-lock"}};const i=a=>{if(!t.config.debug)return;console.log(`[BEEQ ScrollLock] ${a}`)};const o=a=>{const r=a?"add":"remove";document.body.classList[r](t.config.bodyClassName)};const d=a=>{t.config={...t.config,...a}};const s=()=>t.lockCount;const l=()=>t.lockCount>0;const v=()=>{if(!q())return;t.lockCount++;if(t.lockCount!==1)return;o(true);i(`Body scroll locked (count: ${t.lockCount})`)};const c=()=>{if(!q())return;if(t.lockCount===0)return;t.lockCount=Math.max(0,t.lockCount-1);if(t.lockCount!==0)return;o(false);i(`Body scroll unlocked (count: ${t.lockCount})`)};const g=()=>{if(!q())return;if(t.lockCount===0)return;t.lockCount=0;o(false);i("All body scroll locks forcefully removed")};const u=()=>`.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))}.bq-panel,.shadow-\\[shadow\\:--bq-panel--box-shadow\\]{--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}::backdrop,:root{--bq-blue-100:#e7f0fd;--bq-blue-200:#d0e2fb;--bq-blue-300:#a1c5f7;--bq-blue-400:#73a8f3;--bq-blue-500:#448bef;--bq-blue-600:#156eeb;--bq-blue-700:#1158bc;--bq-blue-800:#0d428d;--bq-blue-900:#082c5e;--bq-blue-1000:#04162f;--bq-corai-100:#fff2f2;--bq-corai-200:#ffe6e6;--bq-corai-300:#ffccce;--bq-corai-400:#ffb3b5;--bq-corai-500:#ff999d;--bq-corai-600:#ff8084;--bq-corai-700:#cc666a;--bq-corai-800:#994d4f;--bq-corai-900:#663335;--bq-corai-1000:#331a1a;--bq-cyan-100:#e8f7fb;--bq-cyan-200:#d2f0f8;--bq-cyan-300:#a5e1f1;--bq-cyan-400:#78d1e9;--bq-cyan-500:#4bc2e2;--bq-cyan-600:#1eb3db;--bq-cyan-700:#188faf;--bq-cyan-800:#126b83;--bq-cyan-900:#0c4858;--bq-cyan-1000:#06242c;--bq-gold-100:#fbf4ec;--bq-gold-200:#f7e9da;--bq-gold-300:#f0d3b6;--bq-gold-400:#e8bc91;--bq-gold-500:#e1a66d;--bq-gold-600:#d99048;--bq-gold-700:#ae733a;--bq-gold-800:#82562b;--bq-gold-900:#573a1d;--bq-gold-1000:#2b1d0e;--bq-green-100:#e8f8ef;--bq-green-200:#d2f1e0;--bq-green-300:#a5e3c1;--bq-green-400:#78d5a1;--bq-green-500:#4bc782;--bq-green-600:#1eb963;--bq-green-700:#18944f;--bq-green-800:#126f3b;--bq-green-900:#0c4a28;--bq-green-1000:#062514;--bq-grey-100:#f1f2f4;--bq-grey-200:#e7e8eb;--bq-grey-300:#caccd2;--bq-grey-400:#a6aab3;--bq-grey-50:#f6f6f8;--bq-grey-500:#898e99;--bq-grey-600:#646a77;--bq-grey-700:#3f4350;--bq-grey-800:#2a2c35;--bq-grey-900:#1c1d23;--bq-grey-950:#15161a;--bq-grey-1000:#0d0e11;--bq-indigo-100:#edecfc;--bq-indigo-200:#dcdafa;--bq-indigo-300:#b9b5f5;--bq-indigo-400:#9590ef;--bq-indigo-500:#726bea;--bq-indigo-600:#4f46e5;--bq-indigo-700:#3f38b7;--bq-indigo-800:#2f2a89;--bq-indigo-900:#201c5c;--bq-indigo-1000:#100e2e;--bq-iris-100:#e9f0ff;--bq-iris-200:#d6e0ff;--bq-iris-300:#b2c0fe;--bq-iris-400:#8691f8;--bq-iris-500:#6061ee;--bq-iris-600:#4f46e5;--bq-iris-700:#413abd;--bq-iris-800:#332e95;--bq-iris-900:#26216d;--bq-iris-1000:#181545;--bq-lime-100:#f5fae8;--bq-lime-200:#ecf6d2;--bq-lime-300:#d9eda5;--bq-lime-400:#c5e379;--bq-lime-500:#b2da4c;--bq-lime-600:#9fd11f;--bq-lime-700:#7fa719;--bq-lime-800:#5f7d13;--bq-lime-900:#40540c;--bq-lime-1000:#202a06;--bq-magenta-100:#fce7f4;--bq-magenta-200:#f9cfea;--bq-magenta-300:#f39fd6;--bq-magenta-400:#ee6fbf;--bq-magenta-500:#e83fab;--bq-magenta-600:#de1395;--bq-magenta-700:#b20f77;--bq-magenta-800:#850c59;--bq-magenta-900:#58083c;--bq-magenta-1000:#2c041e;--bq-neutral-white:#fbfbfc;--bq-neutral-black:#060708;--bq-orange-100:#fbf0e9;--bq-orange-200:#f8e1d4;--bq-orange-300:#f1c2a8;--bq-orange-400:#eaa47d;--bq-orange-500:#e38551;--bq-orange-600:#dc6726;--bq-orange-700:#b0521e;--bq-orange-800:#843e17;--bq-orange-900:#58290f;--bq-orange-1000:#2c1508;--bq-purple-100:#efebf8;--bq-purple-200:#e0d7f2;--bq-purple-300:#c1afe5;--bq-purple-400:#a388d8;--bq-purple-500:#8460cb;--bq-purple-600:#6538be;--bq-purple-700:#512d98;--bq-purple-800:#3d2272;--bq-purple-900:#28164c;--bq-purple-1000:#140b26;--bq-red-100:#fce7ea;--bq-red-200:#f9d1d5;--bq-red-300:#f3a2ac;--bq-red-400:#ed7482;--bq-red-500:#e74559;--bq-red-600:#e1172f;--bq-red-700:#b41226;--bq-red-800:#870e1c;--bq-red-900:#5a0913;--bq-red-1000:#2d0509;--bq-sky-100:#eff4fb;--bq-sky-200:#dfeaf8;--bq-sky-300:#bfd5f1;--bq-sky-400:#9ec1e9;--bq-sky-500:#7eace2;--bq-sky-600:#5e97db;--bq-sky-700:#4b79af;--bq-sky-800:#385b83;--bq-sky-900:#263c58;--bq-sky-1000:#131e2c;--bq-teal-100:#e5f7f5;--bq-teal-200:#ccf0eb;--bq-teal-300:#99e1d8;--bq-teal-400:#66d2c4;--bq-teal-500:#33c3b1;--bq-teal-600:#00b49d;--bq-teal-700:#00907e;--bq-teal-800:#006c5e;--bq-teal-900:#00483f;--bq-teal-1000:#00241f;--bq-volcano-100:#feede7;--bq-volcano-200:#fddbd1;--bq-volcano-300:#fbb8a3;--bq-volcano-400:#fa9474;--bq-volcano-500:#f87146;--bq-volcano-600:#f64d18;--bq-volcano-700:#c53e13;--bq-volcano-800:#942e0e;--bq-volcano-900:#621f0a;--bq-volcano-1000:#310f05;--bq-yellow-100:#fefbe7;--bq-yellow-200:#fcf6d0;--bq-yellow-300:#faeea0;--bq-yellow-400:#f7e571;--bq-yellow-500:#f5dd41;--bq-yellow-600:#f2d412;--bq-yellow-700:#c2aa0e;--bq-yellow-800:#917f0b;--bq-yellow-900:#615507;--bq-yellow-1000:#302a04;--bq-endava-grey-50:#f7f7f8;--bq-endava-grey-100:#e4e6e7;--bq-endava-grey-200:#b5babe;--bq-endava-grey-300:#949ca1;--bq-endava-grey-400:#737d84;--bq-endava-grey-500:#525f67;--bq-endava-grey-600:#30404b;--bq-endava-grey-700:#2b3942;--bq-endava-grey-800:#263139;--bq-endava-grey-900:#192b37;--bq-endava-grey-950:#151b1e;--bq-endava-grey-1000:#0f1316;--bq-endava-neutral-white:#fafbfb;--bq-endava-neutral-black:#060708;--bq-endava-orange-100:#fef3f1;--bq-endava-orange-200:#fbd6d1;--bq-endava-orange-300:#fab7af;--bq-endava-orange-400:#fa988b;--bq-endava-orange-500:#fc7866;--bq-endava-orange-600:#ff5640;--bq-endava-orange-700:#ce4a39;--bq-endava-orange-800:#a03d30;--bq-endava-orange-900:#722e25;--bq-endava-orange-1000:#471e19}*,:after,:before{box-sizing:border-box}*{font:inherit;margin:0}ol[role=list],ul[role=list]{list-style-type:none}html{text-size-adjust:none;font-family:var(--bq-font-family);font-size:var(--bq-font-size--m)}html:focus-within{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bq-background--primary);color:var(--bq-text--primary);line-height:var(--bq-font-line-height--regular);min-height:100vb;text-rendering:optimizeSpeed}a:not([class]){text-decoration-skip-ink:auto}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto;transition-duration:.01ms!important}}:where(:root){--bq-white:#fff;--bq-black:#060708;--bq-neutral-50:var(--bq-grey-50);--bq-neutral-100:var(--bq-grey-100);--bq-neutral-200:var(--bq-grey-200);--bq-neutral-300:var(--bq-grey-300);--bq-neutral-400:var(--bq-grey-400);--bq-neutral-500:var(--bq-grey-500);--bq-neutral-600:var(--bq-grey-600);--bq-neutral-700:var(--bq-grey-700);--bq-neutral-800:var(--bq-grey-800);--bq-neutral-900:var(--bq-grey-900);--bq-neutral-950:var(--bq-grey-950);--bq-neutral-1000:var(--bq-grey-1000);--bq-brand-light:var(--bq-iris-100);--bq-brand:var(--bq-iris-600);--bq-brand-dark:var(--bq-iris-1000);--bq-accent-light:var(--bq-purple-100);--bq-accent:var(--bq-purple-600);--bq-accent-dark:var(--bq-purple-1000);--bq-success-light:var(--bq-teal-100);--bq-success:var(--bq-teal-600);--bq-success-dark:var(--bq-teal-1000);--bq-danger-light:var(--bq-red-100);--bq-danger:var(--bq-red-600);--bq-danger-dark:var(--bq-red-1000);--bq-warning-light:var(--bq-gold-100);--bq-warning:var(--bq-gold-600);--bq-warning-dark:var(--bq-gold-1000);--bq-info-light:var(--bq-iris-100);--bq-info:var(--bq-iris-600);--bq-info-dark:var(--bq-iris-1000);--bq-focus:var(--bq-iris-600);--bq-data-01:var(--bq-brand);--bq-data-02:var(--bq-purple-600);--bq-data-03:var(--bq-magenta-600);--bq-data-04:var(--bq-cyan-600);--bq-data-05:var(--bq-teal-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-yellow-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-blue-600);--bq-data-10:var(--bq-grey-600);--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white);--bq-radius--none:0;--bq-radius--xs2:0.125rem;--bq-radius--xs:0.25rem;--bq-radius--s:0.5rem;--bq-radius--m:0.75rem;--bq-radius--l:1.5rem;--bq-radius--full:9999px;--bq-box-shadow--xs:0 2px 0 rgba(0,0,0,.016);--bq-box-shadow--s:0 8px 24px rgba(0,0,0,.04);--bq-box-shadow--m:0 10px 48px -16px rgba(0,0,0,.12);--bq-box-shadow--l:0 20px 58px -16px rgba(0,0,0,.16);--bq-font-family:"Outfit",sans-serif;--bq-font-size--xs:0.75rem;--bq-font-size--s:0.875rem;--bq-font-size--m:1rem;--bq-font-size--l:1.125rem;--bq-font-size--xl:1.5rem;--bq-font-size--xxl:2rem;--bq-font-size--xxl2:2.5rem;--bq-font-size--xxl3:3rem;--bq-font-size--xxl4:3.5rem;--bq-font-size--xxl5:4rem;--bq-font-weight--thin:100;--bq-font-weight--light:300;--bq-font-weight--regular:400;--bq-font-weight--medium:500;--bq-font-weight--semibold:600;--bq-font-weight--bold:700;--bq-font-line-height--small:1.2;--bq-font-line-height--regular:1.5;--bq-font-line-height--large:1.5;--bq-spacing-xs3:0.125rem;--bq-spacing-xs2:0.25rem;--bq-spacing-xs:0.5rem;--bq-spacing-s:0.75rem;--bq-spacing-m:1rem;--bq-spacing-l:1.5rem;--bq-spacing-xl:2rem;--bq-spacing-xxl:2.5rem;--bq-spacing-xxl2:3.5rem;--bq-spacing-xxl3:4rem;--bq-spacing-xxl4:4.5rem;--bq-stroke-s:1px;--bq-stroke-m:2px;--bq-stroke-l:3px}.beeq:not([bq-mode]),.light,:root:not([bq-theme]):not([bq-mode]),:root[bq-theme=beeq]:not([bq-mode]),[bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--alt:var(--bq-white);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-100);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-light);--bq-hover:#bcbfc5;--bq-active:#444546}.dark,[bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-950);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-950);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-dark);--bq-hover:#444546;--bq-active:#1f2026}:where(.endava),:where([bq-theme=endava]){--bq-font-family:"Poppins",sans-serif;--bq-white:#fafbfb;--bq-black:#030406;--bq-neutral-50:var(--bq-endava-grey-50);--bq-neutral-100:var(--bq-endava-grey-100);--bq-neutral-200:var(--bq-endava-grey-200);--bq-neutral-300:var(--bq-endava-grey-300);--bq-neutral-400:var(--bq-endava-grey-400);--bq-neutral-500:var(--bq-endava-grey-500);--bq-neutral-600:var(--bq-endava-grey-600);--bq-neutral-700:var(--bq-endava-grey-700);--bq-neutral-800:var(--bq-endava-grey-800);--bq-neutral-900:var(--bq-endava-grey-900);--bq-neutral-950:var(--bq-endava-grey-950);--bq-neutral-1000:var(--bq-endava-grey-1000);--bq-brand-light:var(--bq-endava-orange-100);--bq-brand:var(--bq-endava-orange-600);--bq-brand-dark:var(--bq-endava-orange-1000);--bq-accent-light:var(--bq-endava-orange-100);--bq-accent:var(--bq-endava-orange-600);--bq-accent-dark:var(--bq-endava-orange-1000);--bq-success-light:var(--bq-green-100);--bq-success:var(--bq-green-600);--bq-success-dark:var(--bq-green-1000);--bq-danger-light:var(--bq-corai-100);--bq-danger:var(--bq-corai-600);--bq-danger-dark:var(--bq-corai-1000);--bq-warning-light:var(--bq-yellow-100);--bq-warning:var(--bq-yellow-600);--bq-warning-dark:var(--bq-yellow-1000);--bq-info-light:var(--bq-blue-100);--bq-info:var(--bq-blue-600);--bq-info-dark:var(--bq-blue-1000);--bq-focus:var(--bq-endava-orange-600);--bq-data-01:var(--bq-brand);--bq-data-02:#af0cd8;--bq-data-03:#0ca8d8;--bq-data-04:var(--bq-teal-600);--bq-data-05:var(--bq-yellow-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-blue-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-purple-600);--bq-data-10:#394b56;--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white)}.endava.light,.endava:not([bq-mode]),[bq-theme=endava]:not([bq-mode]),[bq-theme=endava][bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--brand-alt:var(--bq-brand-light);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-100);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--brand:var(--bq-brand);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-light);--bq-hover:#444546;--bq-active:#1f2026}.endava.dark,[bq-theme=endava][bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-900);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--brand-alt:var(--bq-brand-dark);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-neutral-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-950);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-dark);--bq-hover:#444546;--bq-active:#1f2026}.fixed{position:fixed}.z-\\[--bq-panel-z-index\\]{z-index:var(--bq-panel-z-index)}.block{display:block}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.rounded-\\[--bq-panel--border-radius\\]{border-radius:var(--bq-panel--border-radius)}.border-\\[length\\:--bq-panel--border-width\\]{border-width:var(--bq-panel--border-width)}.border-\\[color\\:--bq-panel--border-color\\]{border-color:var(--bq-panel--border-color)}.bg-\\[--bq-panel--background\\]{background-color:var(--bq-panel--background)}.pe-\\[--bq-panel--padding-end\\]{padding-inline-end:var(--bq-panel--padding-end)}.ps-\\[--bq-panel--padding-start\\]{padding-inline-start:var(--bq-panel--padding-start)}.shadow-\\[shadow\\:--bq-panel--box-shadow\\]{--tw-shadow:var(--bq-panel--box-shadow);--tw-shadow-colored:var(--bq-panel--box-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.is-\\[--bq-panel--width\\]{inline-size:var(--bq-panel--width)}.max-bs-\\[--bq-panel--height\\]{max-block-size:var(--bq-panel--height)}.p-b-\\[--bq-panel--paddingY\\]{padding-block:var(--bq-panel--paddingY)}@-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-panel--background:var(--bq-ui--primary);--bq-panel--border-color:transparent;--bq-panel--border-radius:var(--bq-radius--s);--bq-panel--border-style:none;--bq-panel--border-width:unset;--bq-panel--box-shadow:var(--bq-box-shadow--m);--bq-panel--paddingY:var(--bq-spacing-xs);--bq-panel--padding-start:var(--bq-spacing-xs);--bq-panel--padding-end:var(--bq-spacing-xs);--bq-panel--height:50vh;--bq-panel--width:320px;--bq-panel-z-index:10;display:block}.bq-panel{--tw-shadow:var(--bq-panel--box-shadow);--tw-shadow-colored:var(--bq-panel--box-shadow);-webkit-animation:fade-in .3s ease 0s;animation:fade-in .3s ease 0s;background-color:var(--bq-panel--background);border-color:var(--bq-panel--border-color);border-radius:var(--bq-panel--border-radius);border-style:var(--bq-panel--border-style);border-width:var(--bq-panel--border-width);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);inline-size:var(--bq-panel--width);max-block-size:var(--bq-panel--height);overflow-x:hidden;overflow-y:auto;padding-block:var(--bq-panel--paddingY);padding-inline-end:var(--bq-panel--padding-end);padding-inline-start:var(--bq-panel--padding-start);position:fixed;z-index:var(--bq-panel-z-index)}.visible{visibility:visible}.static{position:static}.absolute{position:absolute}.relative{position:relative}.hidden{display:none}`;const f=a(class a extends r{constructor(a){super();if(a!==false){this.__registerHost()}this.__attachShadow()}panel;floatingUI;trigger;get el(){return this}disableScrollLock=false;distance=4;placement="bottom-start";open=false;sameWidth=false;skidding=0;strategy="fixed";handleOpenChange(){if(!this.open){this.hidePanel();return}this.showPanel()}onPropChange(){if(!q())return;this.floatingUI?.init({...this.options})}componentDidLoad(){if(!q())return;const a=this.el.parentElement.querySelector('div[part="trigger"]');if(!a)return;this.trigger={getBoundingClientRect:()=>a.getBoundingClientRect(),contextElement:a};this.floatingUI=new n(this.trigger,this.panel,{...this.options});this.handleOpenChange()}disconnectedCallback(){if(!q())return;this.floatingUI?.destroy();if(this.open&&!this.disableScrollLock){c()}}showPanel(){if(!q())return;this.floatingUI?.update();if(!this.disableScrollLock){v()}}async hidePanel(){this.open=false;if(q()&&!this.disableScrollLock){c()}}get options(){return{distance:this.distance,placement:this.placement,sameWidth:this.sameWidth,skidding:this.skidding,strategy:this.strategy}}render(){return e("div",{key:"7682fbe1b1f2532ab3e067719c1f13de4963d929","aria-hidden":!this.open?"true":"false",class:"bq-panel",hidden:!this.open,part:"panel",ref:a=>{this.panel=a}},e("slot",{key:"052cc8005930e58afa9d4c8e83e550a20cdc4f1b"}))}static get watchers(){return{open:[{handleOpenChange:0}],distance:[{onPropChange:0}],placement:[{onPropChange:0}],sameWidth:[{onPropChange:0}],skidding:[{onPropChange:0}],strategy:[{onPropChange:0}]}}static get style(){return u()}},[769,"bq-panel",{disableScrollLock:[516,"disable-scroll-lock"],distance:[514],placement:[513],open:[1540],sameWidth:[516,"same-width"],skidding:[514],strategy:[513]},undefined,{open:[{handleOpenChange:0}],distance:[{onPropChange:0}],placement:[{onPropChange:0}],sameWidth:[{onPropChange:0}],skidding:[{onPropChange:0}],strategy:[{onPropChange:0}]}]);function p(){if(typeof customElements==="undefined"){return}const a=["bq-panel"];a.forEach((a=>{switch(a){case"bq-panel":if(!customElements.get(b(a))){customElements.define(b(a),f)}break}}))}export{f as B,d as c,p as d,g as f,s as g,l as i,v as l,c as u};
6
- //# sourceMappingURL=p-BOuMP_Rm.js.map
5
+ import{p as a,H as r,h as e,t as b}from"./p-2eUC8A3N.js";import{F as n}from"./p-CSAZnAFf.js";import{i as q}from"./p-B4sM1t6Z.js";const t={lockCount:0,config:{debug:false,bodyClassName:"bq-body--scroll-lock"}};const i=a=>{if(!t.config.debug)return;console.log(`[BEEQ ScrollLock] ${a}`)};const o=a=>{const r=a?"add":"remove";document.body.classList[r](t.config.bodyClassName)};const d=a=>{t.config={...t.config,...a}};const s=()=>t.lockCount;const l=()=>t.lockCount>0;const v=()=>{if(!q())return;t.lockCount++;if(t.lockCount!==1)return;o(true);i(`Body scroll locked (count: ${t.lockCount})`)};const c=()=>{if(!q())return;if(t.lockCount===0)return;t.lockCount=Math.max(0,t.lockCount-1);if(t.lockCount!==0)return;o(false);i(`Body scroll unlocked (count: ${t.lockCount})`)};const g=()=>{if(!q())return;if(t.lockCount===0)return;t.lockCount=0;o(false);i("All body scroll locks forcefully removed")};const u=()=>`.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))}.bq-panel,.shadow-\\[shadow\\:--bq-panel--box-shadow\\]{--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}::backdrop,:root{--bq-blue-100:#e7f0fd;--bq-blue-200:#d0e2fb;--bq-blue-300:#a1c5f7;--bq-blue-400:#73a8f3;--bq-blue-500:#448bef;--bq-blue-600:#156eeb;--bq-blue-700:#1158bc;--bq-blue-800:#0d428d;--bq-blue-900:#082c5e;--bq-blue-1000:#04162f;--bq-corai-100:#fff2f2;--bq-corai-200:#ffe6e6;--bq-corai-300:#ffccce;--bq-corai-400:#ffb3b5;--bq-corai-500:#ff999d;--bq-corai-600:#ff8084;--bq-corai-700:#cc666a;--bq-corai-800:#994d4f;--bq-corai-900:#663335;--bq-corai-1000:#331a1a;--bq-cyan-100:#e8f7fb;--bq-cyan-200:#d2f0f8;--bq-cyan-300:#a5e1f1;--bq-cyan-400:#78d1e9;--bq-cyan-500:#4bc2e2;--bq-cyan-600:#1eb3db;--bq-cyan-700:#188faf;--bq-cyan-800:#126b83;--bq-cyan-900:#0c4858;--bq-cyan-1000:#06242c;--bq-gold-100:#fbf4ec;--bq-gold-200:#f7e9da;--bq-gold-300:#f0d3b6;--bq-gold-400:#e8bc91;--bq-gold-500:#e1a66d;--bq-gold-600:#d99048;--bq-gold-700:#ae733a;--bq-gold-800:#82562b;--bq-gold-900:#573a1d;--bq-gold-1000:#2b1d0e;--bq-green-100:#e8f8ef;--bq-green-200:#d2f1e0;--bq-green-300:#a5e3c1;--bq-green-400:#78d5a1;--bq-green-500:#4bc782;--bq-green-600:#1eb963;--bq-green-700:#18944f;--bq-green-800:#126f3b;--bq-green-900:#0c4a28;--bq-green-1000:#062514;--bq-grey-100:#f1f2f4;--bq-grey-200:#e7e8eb;--bq-grey-300:#caccd2;--bq-grey-400:#a6aab3;--bq-grey-50:#f6f6f8;--bq-grey-500:#898e99;--bq-grey-600:#646a77;--bq-grey-700:#3f4350;--bq-grey-800:#2a2c35;--bq-grey-900:#1c1d23;--bq-grey-950:#15161a;--bq-grey-1000:#0d0e11;--bq-indigo-100:#edecfc;--bq-indigo-200:#dcdafa;--bq-indigo-300:#b9b5f5;--bq-indigo-400:#9590ef;--bq-indigo-500:#726bea;--bq-indigo-600:#4f46e5;--bq-indigo-700:#3f38b7;--bq-indigo-800:#2f2a89;--bq-indigo-900:#201c5c;--bq-indigo-1000:#100e2e;--bq-iris-100:#e9f0ff;--bq-iris-200:#d6e0ff;--bq-iris-300:#b2c0fe;--bq-iris-400:#8691f8;--bq-iris-500:#6061ee;--bq-iris-600:#4f46e5;--bq-iris-700:#413abd;--bq-iris-800:#332e95;--bq-iris-900:#26216d;--bq-iris-1000:#181545;--bq-lime-100:#f5fae8;--bq-lime-200:#ecf6d2;--bq-lime-300:#d9eda5;--bq-lime-400:#c5e379;--bq-lime-500:#b2da4c;--bq-lime-600:#9fd11f;--bq-lime-700:#7fa719;--bq-lime-800:#5f7d13;--bq-lime-900:#40540c;--bq-lime-1000:#202a06;--bq-magenta-100:#fce7f4;--bq-magenta-200:#f9cfea;--bq-magenta-300:#f39fd6;--bq-magenta-400:#ee6fbf;--bq-magenta-500:#e83fab;--bq-magenta-600:#de1395;--bq-magenta-700:#b20f77;--bq-magenta-800:#850c59;--bq-magenta-900:#58083c;--bq-magenta-1000:#2c041e;--bq-neutral-white:#fbfbfc;--bq-neutral-black:#060708;--bq-orange-100:#fbf0e9;--bq-orange-200:#f8e1d4;--bq-orange-300:#f1c2a8;--bq-orange-400:#eaa47d;--bq-orange-500:#e38551;--bq-orange-600:#dc6726;--bq-orange-700:#b0521e;--bq-orange-800:#843e17;--bq-orange-900:#58290f;--bq-orange-1000:#2c1508;--bq-purple-100:#efebf8;--bq-purple-200:#e0d7f2;--bq-purple-300:#c1afe5;--bq-purple-400:#a388d8;--bq-purple-500:#8460cb;--bq-purple-600:#6538be;--bq-purple-700:#512d98;--bq-purple-800:#3d2272;--bq-purple-900:#28164c;--bq-purple-1000:#140b26;--bq-red-100:#fce7ea;--bq-red-200:#f9d1d5;--bq-red-300:#f3a2ac;--bq-red-400:#ed7482;--bq-red-500:#e74559;--bq-red-600:#e1172f;--bq-red-700:#b41226;--bq-red-800:#870e1c;--bq-red-900:#5a0913;--bq-red-1000:#2d0509;--bq-sky-100:#eff4fb;--bq-sky-200:#dfeaf8;--bq-sky-300:#bfd5f1;--bq-sky-400:#9ec1e9;--bq-sky-500:#7eace2;--bq-sky-600:#5e97db;--bq-sky-700:#4b79af;--bq-sky-800:#385b83;--bq-sky-900:#263c58;--bq-sky-1000:#131e2c;--bq-teal-100:#e5f7f5;--bq-teal-200:#ccf0eb;--bq-teal-300:#99e1d8;--bq-teal-400:#66d2c4;--bq-teal-500:#33c3b1;--bq-teal-600:#00b49d;--bq-teal-700:#00907e;--bq-teal-800:#006c5e;--bq-teal-900:#00483f;--bq-teal-1000:#00241f;--bq-volcano-100:#feede7;--bq-volcano-200:#fddbd1;--bq-volcano-300:#fbb8a3;--bq-volcano-400:#fa9474;--bq-volcano-500:#f87146;--bq-volcano-600:#f64d18;--bq-volcano-700:#c53e13;--bq-volcano-800:#942e0e;--bq-volcano-900:#621f0a;--bq-volcano-1000:#310f05;--bq-yellow-100:#fefbe7;--bq-yellow-200:#fcf6d0;--bq-yellow-300:#faeea0;--bq-yellow-400:#f7e571;--bq-yellow-500:#f5dd41;--bq-yellow-600:#f2d412;--bq-yellow-700:#c2aa0e;--bq-yellow-800:#917f0b;--bq-yellow-900:#615507;--bq-yellow-1000:#302a04;--bq-endava-grey-50:#f7f7f8;--bq-endava-grey-100:#e4e6e7;--bq-endava-grey-200:#b5babe;--bq-endava-grey-300:#949ca1;--bq-endava-grey-400:#737d84;--bq-endava-grey-500:#525f67;--bq-endava-grey-600:#30404b;--bq-endava-grey-700:#2b3942;--bq-endava-grey-800:#263139;--bq-endava-grey-900:#192b37;--bq-endava-grey-950:#151b1e;--bq-endava-grey-1000:#0f1316;--bq-endava-neutral-white:#fafbfb;--bq-endava-neutral-black:#060708;--bq-endava-orange-100:#fef3f1;--bq-endava-orange-200:#fbd6d1;--bq-endava-orange-300:#fab7af;--bq-endava-orange-400:#fa988b;--bq-endava-orange-500:#fc7866;--bq-endava-orange-600:#ff5640;--bq-endava-orange-700:#ce4a39;--bq-endava-orange-800:#a03d30;--bq-endava-orange-900:#722e25;--bq-endava-orange-1000:#471e19}*,:after,:before{box-sizing:border-box}*{font:inherit;margin:0}ol[role=list],ul[role=list]{list-style-type:none}html{text-size-adjust:none;font-family:var(--bq-font-family);font-size:var(--bq-font-size--m)}html:focus-within{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bq-background--primary);color:var(--bq-text--primary);line-height:var(--bq-font-line-height--regular);min-height:100vb;text-rendering:optimizeSpeed}a:not([class]){text-decoration-skip-ink:auto}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto;transition-duration:.01ms!important}}:where(:root){--bq-white:#fff;--bq-black:#060708;--bq-neutral-50:var(--bq-grey-50);--bq-neutral-100:var(--bq-grey-100);--bq-neutral-200:var(--bq-grey-200);--bq-neutral-300:var(--bq-grey-300);--bq-neutral-400:var(--bq-grey-400);--bq-neutral-500:var(--bq-grey-500);--bq-neutral-600:var(--bq-grey-600);--bq-neutral-700:var(--bq-grey-700);--bq-neutral-800:var(--bq-grey-800);--bq-neutral-900:var(--bq-grey-900);--bq-neutral-950:var(--bq-grey-950);--bq-neutral-1000:var(--bq-grey-1000);--bq-brand-light:var(--bq-iris-100);--bq-brand:var(--bq-iris-600);--bq-brand-dark:var(--bq-iris-1000);--bq-accent-light:var(--bq-purple-100);--bq-accent:var(--bq-purple-600);--bq-accent-dark:var(--bq-purple-1000);--bq-success-light:var(--bq-teal-100);--bq-success:var(--bq-teal-600);--bq-success-dark:var(--bq-teal-1000);--bq-danger-light:var(--bq-red-100);--bq-danger:var(--bq-red-600);--bq-danger-dark:var(--bq-red-1000);--bq-warning-light:var(--bq-gold-100);--bq-warning:var(--bq-gold-600);--bq-warning-dark:var(--bq-gold-1000);--bq-info-light:var(--bq-iris-100);--bq-info:var(--bq-iris-600);--bq-info-dark:var(--bq-iris-1000);--bq-focus:var(--bq-iris-600);--bq-data-01:var(--bq-brand);--bq-data-02:var(--bq-purple-600);--bq-data-03:var(--bq-magenta-600);--bq-data-04:var(--bq-cyan-600);--bq-data-05:var(--bq-teal-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-yellow-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-blue-600);--bq-data-10:var(--bq-grey-600);--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white);--bq-radius--none:0;--bq-radius--xs2:0.125rem;--bq-radius--xs:0.25rem;--bq-radius--s:0.5rem;--bq-radius--m:0.75rem;--bq-radius--l:1.5rem;--bq-radius--full:9999px;--bq-box-shadow--xs:0 2px 0 rgba(0,0,0,.016);--bq-box-shadow--s:0 8px 24px rgba(0,0,0,.04);--bq-box-shadow--m:0 10px 48px -16px rgba(0,0,0,.12);--bq-box-shadow--l:0 20px 58px -16px rgba(0,0,0,.16);--bq-font-family:"Outfit",sans-serif;--bq-font-size--xs:0.75rem;--bq-font-size--s:0.875rem;--bq-font-size--m:1rem;--bq-font-size--l:1.125rem;--bq-font-size--xl:1.5rem;--bq-font-size--xxl:2rem;--bq-font-size--xxl2:2.5rem;--bq-font-size--xxl3:3rem;--bq-font-size--xxl4:3.5rem;--bq-font-size--xxl5:4rem;--bq-font-weight--thin:100;--bq-font-weight--light:300;--bq-font-weight--regular:400;--bq-font-weight--medium:500;--bq-font-weight--semibold:600;--bq-font-weight--bold:700;--bq-font-line-height--small:1.2;--bq-font-line-height--regular:1.5;--bq-font-line-height--large:1.5;--bq-spacing-xs3:0.125rem;--bq-spacing-xs2:0.25rem;--bq-spacing-xs:0.5rem;--bq-spacing-s:0.75rem;--bq-spacing-m:1rem;--bq-spacing-l:1.5rem;--bq-spacing-xl:2rem;--bq-spacing-xxl:2.5rem;--bq-spacing-xxl2:3.5rem;--bq-spacing-xxl3:4rem;--bq-spacing-xxl4:4.5rem;--bq-stroke-s:1px;--bq-stroke-m:2px;--bq-stroke-l:3px}.beeq:not([bq-mode]),.light,:root:not([bq-theme]):not([bq-mode]),:root[bq-theme=beeq]:not([bq-mode]),[bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--alt:var(--bq-white);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-100);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-light);--bq-hover:#bcbfc5;--bq-active:#444546}.dark,[bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-950);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-950);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-dark);--bq-hover:#444546;--bq-active:#1f2026}:where(.endava),:where([bq-theme=endava]){--bq-font-family:"Poppins",sans-serif;--bq-white:#fafbfb;--bq-black:#030406;--bq-neutral-50:var(--bq-endava-grey-50);--bq-neutral-100:var(--bq-endava-grey-100);--bq-neutral-200:var(--bq-endava-grey-200);--bq-neutral-300:var(--bq-endava-grey-300);--bq-neutral-400:var(--bq-endava-grey-400);--bq-neutral-500:var(--bq-endava-grey-500);--bq-neutral-600:var(--bq-endava-grey-600);--bq-neutral-700:var(--bq-endava-grey-700);--bq-neutral-800:var(--bq-endava-grey-800);--bq-neutral-900:var(--bq-endava-grey-900);--bq-neutral-950:var(--bq-endava-grey-950);--bq-neutral-1000:var(--bq-endava-grey-1000);--bq-brand-light:var(--bq-endava-orange-100);--bq-brand:var(--bq-endava-orange-600);--bq-brand-dark:var(--bq-endava-orange-1000);--bq-accent-light:var(--bq-endava-orange-100);--bq-accent:var(--bq-endava-orange-600);--bq-accent-dark:var(--bq-endava-orange-1000);--bq-success-light:var(--bq-green-100);--bq-success:var(--bq-green-600);--bq-success-dark:var(--bq-green-1000);--bq-danger-light:var(--bq-corai-100);--bq-danger:var(--bq-corai-600);--bq-danger-dark:var(--bq-corai-1000);--bq-warning-light:var(--bq-yellow-100);--bq-warning:var(--bq-yellow-600);--bq-warning-dark:var(--bq-yellow-1000);--bq-info-light:var(--bq-blue-100);--bq-info:var(--bq-blue-600);--bq-info-dark:var(--bq-blue-1000);--bq-focus:var(--bq-endava-orange-600);--bq-data-01:var(--bq-brand);--bq-data-02:#af0cd8;--bq-data-03:#0ca8d8;--bq-data-04:var(--bq-teal-600);--bq-data-05:var(--bq-yellow-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-blue-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-purple-600);--bq-data-10:#394b56;--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white)}.endava.light,.endava:not([bq-mode]),[bq-theme=endava]:not([bq-mode]),[bq-theme=endava][bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--brand-alt:var(--bq-brand-light);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-100);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--brand:var(--bq-brand);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-light);--bq-hover:#444546;--bq-active:#1f2026}.endava.dark,[bq-theme=endava][bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-900);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--brand-alt:var(--bq-brand-dark);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-neutral-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-950);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-dark);--bq-hover:#444546;--bq-active:#1f2026}.fixed{position:fixed}.z-\\[--bq-panel-z-index\\]{z-index:var(--bq-panel-z-index)}.block{display:block}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.rounded-\\[--bq-panel--border-radius\\]{border-radius:var(--bq-panel--border-radius)}.border-\\[length\\:--bq-panel--border-width\\]{border-width:var(--bq-panel--border-width)}.border-\\[color\\:--bq-panel--border-color\\]{border-color:var(--bq-panel--border-color)}.bg-\\[--bq-panel--background\\]{background-color:var(--bq-panel--background)}.pe-\\[--bq-panel--padding-end\\]{padding-inline-end:var(--bq-panel--padding-end)}.ps-\\[--bq-panel--padding-start\\]{padding-inline-start:var(--bq-panel--padding-start)}.shadow-\\[shadow\\:--bq-panel--box-shadow\\]{--tw-shadow:var(--bq-panel--box-shadow);--tw-shadow-colored:var(--bq-panel--box-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.is-\\[--bq-panel--width\\]{inline-size:var(--bq-panel--width)}.max-bs-\\[--bq-panel--height\\]{max-block-size:var(--bq-panel--height)}.p-b-\\[--bq-panel--paddingY\\]{padding-block:var(--bq-panel--paddingY)}@-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-panel--background:var(--bq-ui--primary);--bq-panel--border-color:transparent;--bq-panel--border-radius:var(--bq-radius--s);--bq-panel--border-style:none;--bq-panel--border-width:unset;--bq-panel--box-shadow:var(--bq-box-shadow--m);--bq-panel--paddingY:var(--bq-spacing-xs);--bq-panel--padding-start:var(--bq-spacing-xs);--bq-panel--padding-end:var(--bq-spacing-xs);--bq-panel--height:50vh;--bq-panel--width:320px;--bq-panel-z-index:10;display:block}.bq-panel{--tw-shadow:var(--bq-panel--box-shadow);--tw-shadow-colored:var(--bq-panel--box-shadow);-webkit-animation:fade-in .3s ease 0s;animation:fade-in .3s ease 0s;background-color:var(--bq-panel--background);border-color:var(--bq-panel--border-color);border-radius:var(--bq-panel--border-radius);border-style:var(--bq-panel--border-style);border-width:var(--bq-panel--border-width);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);inline-size:var(--bq-panel--width);max-block-size:var(--bq-panel--height);overflow-x:hidden;overflow-y:auto;padding-block:var(--bq-panel--paddingY);padding-inline-end:var(--bq-panel--padding-end);padding-inline-start:var(--bq-panel--padding-start);position:fixed;z-index:var(--bq-panel-z-index)}.visible{visibility:visible}.static{position:static}.relative{position:relative}.hidden{display:none}`;const f=a(class a extends r{constructor(a){super();if(a!==false){this.__registerHost()}this.__attachShadow()}panel;floatingUI;trigger;get el(){return this}disableScrollLock=false;distance=4;placement="bottom-start";open=false;sameWidth=false;skidding=0;strategy="fixed";handleOpenChange(){if(!this.open){this.hidePanel();return}this.showPanel()}onPropChange(){if(!q())return;this.floatingUI?.init({...this.options})}componentDidLoad(){if(!q())return;const a=this.el.parentElement.querySelector('div[part="trigger"]');if(!a)return;this.trigger={getBoundingClientRect:()=>a.getBoundingClientRect(),contextElement:a};this.floatingUI=new n(this.trigger,this.panel,{...this.options});this.handleOpenChange()}disconnectedCallback(){if(!q())return;this.floatingUI?.destroy();if(this.open&&!this.disableScrollLock){c()}}showPanel(){if(!q())return;this.floatingUI?.update();if(!this.disableScrollLock){v()}}async hidePanel(){this.open=false;if(q()&&!this.disableScrollLock){c()}}get options(){return{distance:this.distance,placement:this.placement,sameWidth:this.sameWidth,skidding:this.skidding,strategy:this.strategy}}render(){return e("div",{key:"085545c8b547887ff02e2215e260805e280ef217","aria-hidden":!this.open?"true":"false",class:"bq-panel",hidden:!this.open,part:"panel",ref:a=>{this.panel=a}},e("slot",{key:"2b883bb9a200cb5aa0d1851a68bd4592fcb02fc1"}))}static get watchers(){return{open:[{handleOpenChange:0}],distance:[{onPropChange:0}],placement:[{onPropChange:0}],sameWidth:[{onPropChange:0}],skidding:[{onPropChange:0}],strategy:[{onPropChange:0}]}}static get style(){return u()}},[769,"bq-panel",{disableScrollLock:[516,"disable-scroll-lock"],distance:[514],placement:[513],open:[1540],sameWidth:[516,"same-width"],skidding:[514],strategy:[513]},undefined,{open:[{handleOpenChange:0}],distance:[{onPropChange:0}],placement:[{onPropChange:0}],sameWidth:[{onPropChange:0}],skidding:[{onPropChange:0}],strategy:[{onPropChange:0}]}]);function p(){if(typeof customElements==="undefined"){return}const a=["bq-panel"];a.forEach((a=>{switch(a){case"bq-panel":if(!customElements.get(b(a))){customElements.define(b(a),f)}break}}))}export{f as B,d as c,p as d,g as f,s as g,l as i,v as l,c as u};
6
+ //# sourceMappingURL=p-iyX-PhkX.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["state","lockCount","config","debug","bodyClassName","logDebug","message","console","log","toggleScrollLockClass","shouldLock","action","document","body","classList","configureScrollLock","getScrollLockCount","isBodyScrollLocked","lockBodyScroll","isClient","unlockBodyScroll","Math","max","forceUnlockAllBodyScroll","bqPanelCss","BqPanel","__stencil_proxyCustomElement","HTMLElement","panel","floatingUI","trigger","disableScrollLock","distance","placement","open","sameWidth","skidding","strategy","handleOpenChange","this","hidePanel","showPanel","onPropChange","init","options","componentDidLoad","parentTrigger","el","parentElement","querySelector","getBoundingClientRect","contextElement","FloatingUI","disconnectedCallback","destroy","update","render","h","key","class","hidden","part","ref"],"sources":["../../packages/beeq/src/shared/utils/scrollLock.ts","../../packages/beeq/src/components/panel/scss/bq-panel.scss?tag=bq-panel&encapsulation=shadow","../../packages/beeq/src/components/panel/bq-panel.tsx"],"sourcesContent":["import { isClient } from './isClient';\n\ninterface ScrollLockConfig {\n /** Enable debug logging */\n debug?: boolean;\n /** CSS class name to apply to body when locked */\n bodyClassName?: string;\n}\n\n/**\n * Global state for scroll lock management\n */\nconst state = {\n lockCount: 0, // The lockCount tracks how many components or floating overlays currently need the scroll to be locked.\n config: {\n debug: false,\n bodyClassName: 'bq-body--scroll-lock',\n } as Required<ScrollLockConfig>,\n};\n\n/**\n * Logs debug messages when debug mode is enabled\n *\n * @param message - The debug message to log\n */\nconst logDebug = (message: string): void => {\n if (!state.config.debug) return;\n\n console.log(`[BEEQ ScrollLock] ${message}`);\n};\n\n/**\n * Applies or removes scroll lock CSS class\n *\n * @param shouldLock - Whether to apply or remove the scroll lock class\n */\nconst toggleScrollLockClass = (shouldLock: boolean): void => {\n const action = shouldLock ? 'add' : 'remove';\n document.body.classList[action](state.config.bodyClassName);\n};\n\n/**\n * Configure the scroll lock behavior\n *\n * @param config - Partial configuration object to override defaults\n */\nexport const configureScrollLock = (config: Partial<ScrollLockConfig>): void => {\n state.config = { ...state.config, ...config };\n};\n\n/**\n * Gets current scroll lock count\n */\nexport const getScrollLockCount = (): number => {\n return state.lockCount;\n};\n\n/**\n * Check if body scroll is currently locked\n */\nexport const isBodyScrollLocked = (): boolean => {\n return state.lockCount > 0;\n};\n\n/**\n * Locks body scroll with reference counting\n * Multiple calls require the same number of unlockBodyScroll() calls\n */\nexport const lockBodyScroll = (): void => {\n if (!isClient()) return;\n\n state.lockCount++;\n\n // Only apply lock on first request\n if (state.lockCount !== 1) return;\n\n toggleScrollLockClass(true);\n logDebug(`Body scroll locked (count: ${state.lockCount})`);\n};\n\n/**\n * Unlocks body scroll with reference counting\n * Safe to call even when not locked\n */\nexport const unlockBodyScroll = (): void => {\n if (!isClient()) return;\n if (state.lockCount === 0) return;\n\n state.lockCount = Math.max(0, state.lockCount - 1);\n\n // Only remove lock when all requests are cleared\n if (state.lockCount !== 0) return;\n\n toggleScrollLockClass(false);\n logDebug(`Body scroll unlocked (count: ${state.lockCount})`);\n};\n\n/**\n * Force unlock all body scroll locks (cleanup utility)\n * Useful for cleanup scenarios or error recovery\n */\nexport const forceUnlockAllBodyScroll = (): void => {\n if (!isClient()) return;\n if (state.lockCount === 0) return;\n\n state.lockCount = 0;\n toggleScrollLockClass(false);\n logDebug('All body scroll locks forcefully removed');\n};\n","/* -------------------------------------------------------------------------- */\n/* Panel styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-panel.variables';\n\n:host {\n @apply block;\n}\n\n.bq-panel {\n @include animation-fade-in;\n @apply fixed z-[--bq-panel-z-index] overflow-y-auto overflow-x-hidden is-[--bq-panel--width] max-bs-[--bq-panel--height];\n @apply rounded-[--bq-panel--border-radius] bg-[--bq-panel--background] shadow-[shadow:--bq-panel--box-shadow];\n @apply pe-[--bq-panel--padding-end] ps-[--bq-panel--padding-start] p-b-[--bq-panel--paddingY];\n @apply border-[length:--bq-panel--border-width] border-[color:--bq-panel--border-color];\n\n border-style: var(--bq-panel--border-style);\n}\n","import type { ReferenceElement } from '@floating-ui/dom';\nimport { Component, Element, h, Prop, Watch } from '@stencil/core';\n\nimport type { Placement } from '../../services/interfaces';\nimport { FloatingUI } from '../../services/libraries';\nimport { isClient, lockBodyScroll, unlockBodyScroll } from '../../shared/utils';\n\n/**\n * The Panel component is a versatile and essential element used to wrap and display content in a floating panel.\n *\n * @example How to use it\n * ```html\n * <bq-panel open>\n * <div>Panel content</div>\n * </bq-panel>\n * ```\n *\n * @status stable\n *\n * @attr {number} distance - Represents the distance (gutter or margin) between the panel and the trigger element.\n * @attr {\"top\" | \"bottom\" | \"left\" | \"right\" | \"top-start\" | \"top-end\" | \"bottom-start\" | \"bottom-end\" | \"left-start\" | \"left-end\" | \"right-start\" | \"right-end\"} placement - Position of the panel.\n * @attr {boolean} open - If true, the panel will be visible.\n * @attr {boolean} same-width - Whether the panel should have the same width as the trigger element.\n * @attr {number} skidding - Represents the skidding between the panel and the trigger element.\n * @attr {\"fixed\" | \"absolute\"} strategy - Defines the strategy to position the panel.\n *\n * @slot - The content of the panel.\n *\n * @part panel - The `<div>` element used to display and style the panel\n *\n * @prop --bq-panel--background - Panel background color\n * @prop --bq-panel--border-color - Panel border color\n * @prop --bq-panel--border-radius - Panel border radius\n * @prop --bq-panel--border-style - Panel border style\n * @prop --bq-panel--border-width - Panel border width\n * @prop --bq-panel--box-shadow - Panel box shadow\n * @prop --bq-panel--padding - Panel padding\n * @prop --bq-panel--height - Panel height\n * @prop --bq-panel--width - Panel width\n * @prop --bq-panel-z-index - Panel z-index applied when opened\n */\n@Component({\n tag: 'bq-panel',\n styleUrl: './scss/bq-panel.scss',\n shadow: true,\n})\nexport class BqPanel {\n // Own Properties\n // ====================\n\n private panel: HTMLElement;\n private floatingUI: FloatingUI;\n private trigger: ReferenceElement;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqPanelElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n // Public Property API\n // ========================\n\n /** If true, the panel will not lock the page body scroll when open. */\n @Prop({ reflect: true }) disableScrollLock?: boolean = false;\n\n /** Represents the distance (gutter or margin) between the panel and the trigger element. */\n @Prop({ reflect: true }) distance?: number = 4;\n\n /** Position of the panel */\n @Prop({ reflect: true }) placement?: Placement = 'bottom-start';\n\n /** If true, the panel will be visible. */\n @Prop({ reflect: true, mutable: true }) open?: boolean = false;\n\n /** Whether the panel should have the same width as the trigger element */\n @Prop({ reflect: true }) sameWidth?: boolean = false;\n\n /** Represents the skidding between the panel and the trigger element. */\n @Prop({ reflect: true }) skidding?: number = 0;\n\n /** Defines the strategy to position the panel */\n @Prop({ reflect: true }) strategy?: 'fixed' | 'absolute' = 'fixed';\n\n // Prop lifecycle events\n // =======================\n\n @Watch('open')\n handleOpenChange() {\n if (!this.open) {\n this.hidePanel();\n return;\n }\n\n this.showPanel();\n }\n\n @Watch('distance')\n @Watch('placement')\n @Watch('sameWidth')\n @Watch('skidding')\n @Watch('strategy')\n onPropChange() {\n if (!isClient()) return;\n\n this.floatingUI?.init({ ...this.options });\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentDidLoad() {\n if (!isClient()) return;\n\n // We need to find the trigger element from the parent to position the panel relative to it.\n const parentTrigger = this.el.parentElement.querySelector('div[part=\"trigger\"]');\n\n if (!parentTrigger) return;\n\n this.trigger = {\n getBoundingClientRect: () => parentTrigger.getBoundingClientRect(),\n contextElement: parentTrigger,\n };\n\n this.floatingUI = new FloatingUI(this.trigger, this.panel, { ...this.options });\n this.handleOpenChange();\n }\n\n disconnectedCallback() {\n if (!isClient()) return;\n\n this.floatingUI?.destroy();\n\n // Ensure scroll lock is removed if the component is disconnected while the panel is open.\n if (this.open && !this.disableScrollLock) {\n unlockBodyScroll();\n }\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 showPanel() {\n if (!isClient()) return;\n\n this.floatingUI?.update();\n\n // Lock the body scroll if the disableScrollLock prop is not true.\n if (!this.disableScrollLock) {\n lockBodyScroll();\n }\n }\n\n private async hidePanel() {\n this.open = false;\n\n // Unlock the body scroll if the disableScrollLock prop is not true.\n if (isClient() && !this.disableScrollLock) {\n unlockBodyScroll();\n }\n }\n\n private get options() {\n return {\n distance: this.distance,\n placement: this.placement,\n sameWidth: this.sameWidth,\n skidding: this.skidding,\n strategy: this.strategy,\n };\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <div\n aria-hidden={!this.open ? 'true' : 'false'}\n class=\"bq-panel\"\n hidden={!this.open}\n part=\"panel\"\n ref={(el) => {\n this.panel = el;\n }}\n >\n <slot />\n </div>\n );\n }\n}\n"],"mappings":";;;;iIAYA,MAAMA,EAAQ,CACZC,UAAW,EACXC,OAAQ,CACNC,MAAO,MACPC,cAAe,yBASnB,MAAMC,EAAYC,IAChB,IAAKN,EAAME,OAAOC,MAAO,OAEzBI,QAAQC,IAAI,qBAAqBF,IAAU,EAQ7C,MAAMG,EAAyBC,IAC7B,MAAMC,EAASD,EAAa,MAAQ,SACpCE,SAASC,KAAKC,UAAUH,GAAQX,EAAME,OAAOE,cAAc,EAQtD,MAAMW,EAAuBb,IAClCF,EAAME,OAAS,IAAKF,EAAME,UAAWA,EAAQ,EAMxC,MAAMc,EAAqB,IACzBhB,EAAMC,UAMR,MAAMgB,EAAqB,IACzBjB,EAAMC,UAAY,EAOpB,MAAMiB,EAAiB,KAC5B,IAAKC,IAAY,OAEjBnB,EAAMC,YAGN,GAAID,EAAMC,YAAc,EAAG,OAE3BQ,EAAsB,MACtBJ,EAAS,8BAA8BL,EAAMC,aAAa,EAOrD,MAAMmB,EAAmB,KAC9B,IAAKD,IAAY,OACjB,GAAInB,EAAMC,YAAc,EAAG,OAE3BD,EAAMC,UAAYoB,KAAKC,IAAI,EAAGtB,EAAMC,UAAY,GAGhD,GAAID,EAAMC,YAAc,EAAG,OAE3BQ,EAAsB,OACtBJ,EAAS,gCAAgCL,EAAMC,aAAa,EAOvD,MAAMsB,EAA2B,KACtC,IAAKJ,IAAY,OACjB,GAAInB,EAAMC,YAAc,EAAG,OAE3BD,EAAMC,UAAY,EAClBQ,EAAsB,OACtBJ,EAAS,2CAA2C,EC3GtD,MAAMmB,EAAa,IAAM,w5qB,MC8CZC,EAAOC,EAAA,MAAAD,UAAAE,E,iFAIVC,MACAC,WACAC,Q,qBAeiBC,kBAA8B,MAG9BC,SAAoB,EAGpBC,UAAwB,eAGTC,KAAiB,MAGhCC,UAAsB,MAGtBC,SAAoB,EAGpBC,SAAkC,QAM3D,gBAAAC,GACE,IAAKC,KAAKL,KAAM,CACdK,KAAKC,YACL,M,CAGFD,KAAKE,W,CAQP,YAAAC,GACE,IAAKvB,IAAY,OAEjBoB,KAAKV,YAAYc,KAAK,IAAKJ,KAAKK,S,CAWlC,gBAAAC,GACE,IAAK1B,IAAY,OAGjB,MAAM2B,EAAgBP,KAAKQ,GAAGC,cAAcC,cAAc,uBAE1D,IAAKH,EAAe,OAEpBP,KAAKT,QAAU,CACboB,sBAAuB,IAAMJ,EAAcI,wBAC3CC,eAAgBL,GAGlBP,KAAKV,WAAa,IAAIuB,EAAWb,KAAKT,QAASS,KAAKX,MAAO,IAAKW,KAAKK,UACrEL,KAAKD,kB,CAGP,oBAAAe,GACE,IAAKlC,IAAY,OAEjBoB,KAAKV,YAAYyB,UAGjB,GAAIf,KAAKL,OAASK,KAAKR,kBAAmB,CACxCX,G,EAmBI,SAAAqB,GACN,IAAKtB,IAAY,OAEjBoB,KAAKV,YAAY0B,SAGjB,IAAKhB,KAAKR,kBAAmB,CAC3Bb,G,EAII,eAAMsB,GACZD,KAAKL,KAAO,MAGZ,GAAIf,MAAeoB,KAAKR,kBAAmB,CACzCX,G,EAIJ,WAAYwB,GACV,MAAO,CACLZ,SAAUO,KAAKP,SACfC,UAAWM,KAAKN,UAChBE,UAAWI,KAAKJ,UAChBC,SAAUG,KAAKH,SACfC,SAAUE,KAAKF,S,CAQnB,MAAAmB,GACE,OACEC,EAAA,OAAAC,IAAA,0DACgBnB,KAAKL,KAAO,OAAS,QACnCyB,MAAM,WACNC,QAASrB,KAAKL,KACd2B,KAAK,QACLC,IAAMf,IACJR,KAAKX,MAAQmB,CAAE,GAGjBU,EAAA,QAAAC,IAAA,6C","ignoreList":[]}
1
+ {"version":3,"names":["state","lockCount","config","debug","bodyClassName","logDebug","message","console","log","toggleScrollLockClass","shouldLock","action","document","body","classList","configureScrollLock","getScrollLockCount","isBodyScrollLocked","lockBodyScroll","isClient","unlockBodyScroll","Math","max","forceUnlockAllBodyScroll","bqPanelCss","BqPanel","__stencil_proxyCustomElement","HTMLElement","panel","floatingUI","trigger","disableScrollLock","distance","placement","open","sameWidth","skidding","strategy","handleOpenChange","this","hidePanel","showPanel","onPropChange","init","options","componentDidLoad","parentTrigger","el","parentElement","querySelector","getBoundingClientRect","contextElement","FloatingUI","disconnectedCallback","destroy","update","render","h","key","class","hidden","part","ref"],"sources":["../../packages/beeq/src/shared/utils/scrollLock.ts","../../packages/beeq/src/components/panel/scss/bq-panel.scss?tag=bq-panel&encapsulation=shadow","../../packages/beeq/src/components/panel/bq-panel.tsx"],"sourcesContent":["import { isClient } from './isClient';\n\ninterface ScrollLockConfig {\n /** Enable debug logging */\n debug?: boolean;\n /** CSS class name to apply to body when locked */\n bodyClassName?: string;\n}\n\n/**\n * Global state for scroll lock management\n */\nconst state = {\n lockCount: 0, // The lockCount tracks how many components or floating overlays currently need the scroll to be locked.\n config: {\n debug: false,\n bodyClassName: 'bq-body--scroll-lock',\n } as Required<ScrollLockConfig>,\n};\n\n/**\n * Logs debug messages when debug mode is enabled\n *\n * @param message - The debug message to log\n */\nconst logDebug = (message: string): void => {\n if (!state.config.debug) return;\n\n console.log(`[BEEQ ScrollLock] ${message}`);\n};\n\n/**\n * Applies or removes scroll lock CSS class\n *\n * @param shouldLock - Whether to apply or remove the scroll lock class\n */\nconst toggleScrollLockClass = (shouldLock: boolean): void => {\n const action = shouldLock ? 'add' : 'remove';\n document.body.classList[action](state.config.bodyClassName);\n};\n\n/**\n * Configure the scroll lock behavior\n *\n * @param config - Partial configuration object to override defaults\n */\nexport const configureScrollLock = (config: Partial<ScrollLockConfig>): void => {\n state.config = { ...state.config, ...config };\n};\n\n/**\n * Gets current scroll lock count\n */\nexport const getScrollLockCount = (): number => {\n return state.lockCount;\n};\n\n/**\n * Check if body scroll is currently locked\n */\nexport const isBodyScrollLocked = (): boolean => {\n return state.lockCount > 0;\n};\n\n/**\n * Locks body scroll with reference counting\n * Multiple calls require the same number of unlockBodyScroll() calls\n */\nexport const lockBodyScroll = (): void => {\n if (!isClient()) return;\n\n state.lockCount++;\n\n // Only apply lock on first request\n if (state.lockCount !== 1) return;\n\n toggleScrollLockClass(true);\n logDebug(`Body scroll locked (count: ${state.lockCount})`);\n};\n\n/**\n * Unlocks body scroll with reference counting\n * Safe to call even when not locked\n */\nexport const unlockBodyScroll = (): void => {\n if (!isClient()) return;\n if (state.lockCount === 0) return;\n\n state.lockCount = Math.max(0, state.lockCount - 1);\n\n // Only remove lock when all requests are cleared\n if (state.lockCount !== 0) return;\n\n toggleScrollLockClass(false);\n logDebug(`Body scroll unlocked (count: ${state.lockCount})`);\n};\n\n/**\n * Force unlock all body scroll locks (cleanup utility)\n * Useful for cleanup scenarios or error recovery\n */\nexport const forceUnlockAllBodyScroll = (): void => {\n if (!isClient()) return;\n if (state.lockCount === 0) return;\n\n state.lockCount = 0;\n toggleScrollLockClass(false);\n logDebug('All body scroll locks forcefully removed');\n};\n","/* -------------------------------------------------------------------------- */\n/* Panel styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-panel.variables';\n\n:host {\n @apply block;\n}\n\n.bq-panel {\n @include animation-fade-in;\n @apply fixed z-[--bq-panel-z-index] overflow-y-auto overflow-x-hidden is-[--bq-panel--width] max-bs-[--bq-panel--height];\n @apply rounded-[--bq-panel--border-radius] bg-[--bq-panel--background] shadow-[shadow:--bq-panel--box-shadow];\n @apply pe-[--bq-panel--padding-end] ps-[--bq-panel--padding-start] p-b-[--bq-panel--paddingY];\n @apply border-[length:--bq-panel--border-width] border-[color:--bq-panel--border-color];\n\n border-style: var(--bq-panel--border-style);\n}\n","import type { ReferenceElement } from '@floating-ui/dom';\nimport { Component, Element, h, Prop, Watch } from '@stencil/core';\n\nimport type { Placement } from '../../services/interfaces';\nimport { FloatingUI } from '../../services/libraries';\nimport { isClient, lockBodyScroll, unlockBodyScroll } from '../../shared/utils';\n\n/**\n * The Panel component is a versatile and essential element used to wrap and display content in a floating panel.\n *\n * @example How to use it\n * ```html\n * <bq-panel open>\n * <div>Panel content</div>\n * </bq-panel>\n * ```\n *\n * @status stable\n *\n * @attr {number} distance - Represents the distance (gutter or margin) between the panel and the trigger element.\n * @attr {\"top\" | \"bottom\" | \"left\" | \"right\" | \"top-start\" | \"top-end\" | \"bottom-start\" | \"bottom-end\" | \"left-start\" | \"left-end\" | \"right-start\" | \"right-end\"} placement - Position of the panel.\n * @attr {boolean} open - If true, the panel will be visible.\n * @attr {boolean} same-width - Whether the panel should have the same width as the trigger element.\n * @attr {number} skidding - Represents the skidding between the panel and the trigger element.\n * @attr {\"fixed\" | \"absolute\"} strategy - Defines the strategy to position the panel.\n *\n * @slot - The content of the panel.\n *\n * @part panel - The `<div>` element used to display and style the panel\n *\n * @prop --bq-panel--background - Panel background color\n * @prop --bq-panel--border-color - Panel border color\n * @prop --bq-panel--border-radius - Panel border radius\n * @prop --bq-panel--border-style - Panel border style\n * @prop --bq-panel--border-width - Panel border width\n * @prop --bq-panel--box-shadow - Panel box shadow\n * @prop --bq-panel--padding - Panel padding\n * @prop --bq-panel--height - Panel height\n * @prop --bq-panel--width - Panel width\n * @prop --bq-panel-z-index - Panel z-index applied when opened\n */\n@Component({\n tag: 'bq-panel',\n styleUrl: './scss/bq-panel.scss',\n shadow: true,\n})\nexport class BqPanel {\n // Own Properties\n // ====================\n\n private panel: HTMLElement;\n private floatingUI: FloatingUI;\n private trigger: ReferenceElement;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqPanelElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n // Public Property API\n // ========================\n\n /** If true, the panel will not lock the page body scroll when open. */\n @Prop({ reflect: true }) disableScrollLock?: boolean = false;\n\n /** Represents the distance (gutter or margin) between the panel and the trigger element. */\n @Prop({ reflect: true }) distance?: number = 4;\n\n /** Position of the panel */\n @Prop({ reflect: true }) placement?: Placement = 'bottom-start';\n\n /** If true, the panel will be visible. */\n @Prop({ reflect: true, mutable: true }) open?: boolean = false;\n\n /** Whether the panel should have the same width as the trigger element */\n @Prop({ reflect: true }) sameWidth?: boolean = false;\n\n /** Represents the skidding between the panel and the trigger element. */\n @Prop({ reflect: true }) skidding?: number = 0;\n\n /** Defines the strategy to position the panel */\n @Prop({ reflect: true }) strategy?: 'fixed' | 'absolute' = 'fixed';\n\n // Prop lifecycle events\n // =======================\n\n @Watch('open')\n handleOpenChange() {\n if (!this.open) {\n this.hidePanel();\n return;\n }\n\n this.showPanel();\n }\n\n @Watch('distance')\n @Watch('placement')\n @Watch('sameWidth')\n @Watch('skidding')\n @Watch('strategy')\n onPropChange() {\n if (!isClient()) return;\n\n this.floatingUI?.init({ ...this.options });\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentDidLoad() {\n if (!isClient()) return;\n\n // We need to find the trigger element from the parent to position the panel relative to it.\n const parentTrigger = this.el.parentElement.querySelector('div[part=\"trigger\"]');\n\n if (!parentTrigger) return;\n\n this.trigger = {\n getBoundingClientRect: () => parentTrigger.getBoundingClientRect(),\n contextElement: parentTrigger,\n };\n\n this.floatingUI = new FloatingUI(this.trigger, this.panel, { ...this.options });\n this.handleOpenChange();\n }\n\n disconnectedCallback() {\n if (!isClient()) return;\n\n this.floatingUI?.destroy();\n\n // Ensure scroll lock is removed if the component is disconnected while the panel is open.\n if (this.open && !this.disableScrollLock) {\n unlockBodyScroll();\n }\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 showPanel() {\n if (!isClient()) return;\n\n this.floatingUI?.update();\n\n // Lock the body scroll if the disableScrollLock prop is not true.\n if (!this.disableScrollLock) {\n lockBodyScroll();\n }\n }\n\n private async hidePanel() {\n this.open = false;\n\n // Unlock the body scroll if the disableScrollLock prop is not true.\n if (isClient() && !this.disableScrollLock) {\n unlockBodyScroll();\n }\n }\n\n private get options() {\n return {\n distance: this.distance,\n placement: this.placement,\n sameWidth: this.sameWidth,\n skidding: this.skidding,\n strategy: this.strategy,\n };\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <div\n aria-hidden={!this.open ? 'true' : 'false'}\n class=\"bq-panel\"\n hidden={!this.open}\n part=\"panel\"\n ref={(el) => {\n this.panel = el;\n }}\n >\n <slot />\n </div>\n );\n }\n}\n"],"mappings":";;;;iIAYA,MAAMA,EAAQ,CACZC,UAAW,EACXC,OAAQ,CACNC,MAAO,MACPC,cAAe,yBASnB,MAAMC,EAAYC,IAChB,IAAKN,EAAME,OAAOC,MAAO,OAEzBI,QAAQC,IAAI,qBAAqBF,IAAU,EAQ7C,MAAMG,EAAyBC,IAC7B,MAAMC,EAASD,EAAa,MAAQ,SACpCE,SAASC,KAAKC,UAAUH,GAAQX,EAAME,OAAOE,cAAc,EAQtD,MAAMW,EAAuBb,IAClCF,EAAME,OAAS,IAAKF,EAAME,UAAWA,EAAQ,EAMxC,MAAMc,EAAqB,IACzBhB,EAAMC,UAMR,MAAMgB,EAAqB,IACzBjB,EAAMC,UAAY,EAOpB,MAAMiB,EAAiB,KAC5B,IAAKC,IAAY,OAEjBnB,EAAMC,YAGN,GAAID,EAAMC,YAAc,EAAG,OAE3BQ,EAAsB,MACtBJ,EAAS,8BAA8BL,EAAMC,aAAa,EAOrD,MAAMmB,EAAmB,KAC9B,IAAKD,IAAY,OACjB,GAAInB,EAAMC,YAAc,EAAG,OAE3BD,EAAMC,UAAYoB,KAAKC,IAAI,EAAGtB,EAAMC,UAAY,GAGhD,GAAID,EAAMC,YAAc,EAAG,OAE3BQ,EAAsB,OACtBJ,EAAS,gCAAgCL,EAAMC,aAAa,EAOvD,MAAMsB,EAA2B,KACtC,IAAKJ,IAAY,OACjB,GAAInB,EAAMC,YAAc,EAAG,OAE3BD,EAAMC,UAAY,EAClBQ,EAAsB,OACtBJ,EAAS,2CAA2C,EC3GtD,MAAMmB,EAAa,IAAM,43qB,MC8CZC,EAAOC,EAAA,MAAAD,UAAAE,E,iFAIVC,MACAC,WACAC,Q,qBAeiBC,kBAA8B,MAG9BC,SAAoB,EAGpBC,UAAwB,eAGTC,KAAiB,MAGhCC,UAAsB,MAGtBC,SAAoB,EAGpBC,SAAkC,QAM3D,gBAAAC,GACE,IAAKC,KAAKL,KAAM,CACdK,KAAKC,YACL,M,CAGFD,KAAKE,W,CAQP,YAAAC,GACE,IAAKvB,IAAY,OAEjBoB,KAAKV,YAAYc,KAAK,IAAKJ,KAAKK,S,CAWlC,gBAAAC,GACE,IAAK1B,IAAY,OAGjB,MAAM2B,EAAgBP,KAAKQ,GAAGC,cAAcC,cAAc,uBAE1D,IAAKH,EAAe,OAEpBP,KAAKT,QAAU,CACboB,sBAAuB,IAAMJ,EAAcI,wBAC3CC,eAAgBL,GAGlBP,KAAKV,WAAa,IAAIuB,EAAWb,KAAKT,QAASS,KAAKX,MAAO,IAAKW,KAAKK,UACrEL,KAAKD,kB,CAGP,oBAAAe,GACE,IAAKlC,IAAY,OAEjBoB,KAAKV,YAAYyB,UAGjB,GAAIf,KAAKL,OAASK,KAAKR,kBAAmB,CACxCX,G,EAmBI,SAAAqB,GACN,IAAKtB,IAAY,OAEjBoB,KAAKV,YAAY0B,SAGjB,IAAKhB,KAAKR,kBAAmB,CAC3Bb,G,EAII,eAAMsB,GACZD,KAAKL,KAAO,MAGZ,GAAIf,MAAeoB,KAAKR,kBAAmB,CACzCX,G,EAIJ,WAAYwB,GACV,MAAO,CACLZ,SAAUO,KAAKP,SACfC,UAAWM,KAAKN,UAChBE,UAAWI,KAAKJ,UAChBC,SAAUG,KAAKH,SACfC,SAAUE,KAAKF,S,CAQnB,MAAAmB,GACE,OACEC,EAAA,OAAAC,IAAA,0DACgBnB,KAAKL,KAAO,OAAS,QACnCyB,MAAM,WACNC,QAASrB,KAAKL,KACd2B,KAAK,QACLC,IAAMf,IACJR,KAAKX,MAAQmB,CAAE,GAGjBU,EAAA,QAAAC,IAAA,6C","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["isElementNode","node","nodeType","Node","ELEMENT_NODE","isTextNode","TEXT_NODE","getText","currentLevel","maxLevel","Infinity","text","textContent","hasChildNodes","nextLevel","childNodes","forEach","getInnerHTML","slot","nodes","assignedNodes","flatten","html","outerHTML","getTextContent","options","recurse","trim","hasSlot","el","name","Array","from","querySelectorAll","filter","slottedEl","length","hasSlotContent","slotSelector","slotContent","querySelector","assignedElements","isArray"],"sources":["../../packages/beeq/src/shared/utils/slot.ts"],"sourcesContent":["/*=========================================================================================\n= Credit: =\n= https://github.com/shoelace-style/shoelace/blob/next/src/utilities/slot.ts =\n=========================================================================================*/\n\nfunction isElementNode(node: Node): node is HTMLElement {\n return node.nodeType === Node.ELEMENT_NODE;\n}\n\nfunction isTextNode(node: Node): node is Text {\n return node.nodeType === Node.TEXT_NODE;\n}\n\nfunction getText(node: Node, currentLevel = 1, maxLevel = Infinity): string {\n let text = '';\n if (currentLevel <= maxLevel) {\n if (isTextNode(node)) {\n text += node.textContent;\n } else if (isElementNode(node) && node.hasChildNodes()) {\n const nextLevel = currentLevel + 1;\n node.childNodes.forEach((node) => {\n text += getText(node, nextLevel, maxLevel);\n });\n }\n }\n\n return text;\n}\n\nexport interface IOptions {\n recurse: boolean;\n maxLevel?: number;\n}\n\n/**\n * Iterates over all of its assigned element and text nodes of a given slot and returns the concatenated HTML as a string.\n *\n * @param {HTMLSlotElement} slot - Slot HTML element\n * @return {string} The concatenated HTML as a string\n */\nexport function getInnerHTML(slot: HTMLSlotElement): string {\n const nodes = slot.assignedNodes({ flatten: true });\n let html = '';\n\n [...nodes].forEach((node) => {\n if (isElementNode(node)) {\n html += node.outerHTML;\n }\n\n if (isTextNode(node)) {\n html += node.textContent;\n }\n });\n\n return html;\n}\n\n/**\n * Iterates over all of its assigned text nodes of a given slot and returns the concatenated text as a string.\n *\n * @param {HTMLSlotElement} slot - Slot HTML element\n * @return {string} The concatenated text as a string\n */\nexport function getTextContent(slot: HTMLSlotElement): string;\n/**\n * Iterates over all of its assigned text nodes of a given slot and returns the concatenated text as a string.\n *\n * @param {HTMLSlotElement} slot - Slot HTML element\n * @param {IOptions} options - Options to retrieve text\n * @return {string} The concatenated text as a string\n */\nexport function getTextContent(slot: HTMLSlotElement, options: IOptions): string;\nexport function getTextContent(slot: HTMLSlotElement, options?: IOptions): string {\n const nodes = slot.assignedNodes({ flatten: true });\n const { recurse = false, maxLevel } = options ?? {};\n let text = '';\n\n [...nodes].forEach((node) => {\n text += getText(node, 1, recurse ? maxLevel : 1);\n });\n\n return text.trim();\n}\n\n/**\n * Determines whether a slot with the given name exists in an element.\n *\n * @param {HTMLElement} el - The HTMl element to check\n * @param {string} name - Name of the slot to check inside the HTML element\n * @return {boolean} True or false if the given HTML element has slot\n */\nexport function hasSlot(el: HTMLElement, name: string): boolean {\n return (\n Array.from(el.querySelectorAll('[slot]')).filter((slottedEl: HTMLSlotElement) => slottedEl.slot === name).length > 0\n );\n}\n\n/**\n * Will return whether if a given slot have HTML children elements or not.\n *\n * @param {HTMLElement} el - The HTML element that holds the slot\n * @param {string} [name] - Optional slot name\n * @return {boolean} True or false if the slot have HTML children elements\n */\nexport function hasSlotContent(el: HTMLElement, name?: string): boolean {\n if (!el) return false;\n\n const slotSelector = name ? `[name='${name}']` : '';\n const slotContent = el.querySelector<HTMLSlotElement>(`slot${slotSelector}`)?.assignedElements({ flatten: true });\n if (!slotContent || !Array.isArray(slotContent)) return false;\n\n return !!slotContent.length;\n}\n"],"mappings":";;;;AAKA,SAASA,EAAcC,GACrB,OAAOA,EAAKC,WAAaC,KAAKC,YAChC,CAEA,SAASC,EAAWJ,GAClB,OAAOA,EAAKC,WAAaC,KAAKG,SAChC,CAEA,SAASC,EAAQN,EAAYO,EAAe,EAAGC,EAAWC,UACxD,IAAIC,EAAO,GACX,GAAIH,GAAgBC,EAAU,CAC5B,GAAIJ,EAAWJ,GAAO,CACpBU,GAAQV,EAAKW,W,MACR,GAAIZ,EAAcC,IAASA,EAAKY,gBAAiB,CACtD,MAAMC,EAAYN,EAAe,EACjCP,EAAKc,WAAWC,SAASf,IACvBU,GAAQJ,EAAQN,EAAMa,EAAWL,EAAS,G,EAKhD,OAAOE,CACT,CAaM,SAAUM,EAAaC,GAC3B,MAAMC,EAAQD,EAAKE,cAAc,CAAEC,QAAS,OAC5C,IAAIC,EAAO,GAEX,IAAIH,GAAOH,SAASf,IAClB,GAAID,EAAcC,GAAO,CACvBqB,GAAQrB,EAAKsB,S,CAGf,GAAIlB,EAAWJ,GAAO,CACpBqB,GAAQrB,EAAKW,W,KAIjB,OAAOU,CACT,CAiBM,SAAUE,EAAeN,EAAuBO,GACpD,MAAMN,EAAQD,EAAKE,cAAc,CAAEC,QAAS,OAC5C,MAAMK,QAAEA,EAAU,MAAKjB,SAAEA,GAAagB,GAAW,GACjD,IAAId,EAAO,GAEX,IAAIQ,GAAOH,SAASf,IAClBU,GAAQJ,EAAQN,EAAM,EAAGyB,EAAUjB,EAAW,EAAE,IAGlD,OAAOE,EAAKgB,MACd,CASM,SAAUC,EAAQC,EAAiBC,GACvC,OACEC,MAAMC,KAAKH,EAAGI,iBAAiB,WAAWC,QAAQC,GAA+BA,EAAUjB,OAASY,IAAMM,OAAS,CAEvH,CASM,SAAUC,EAAeR,EAAiBC,GAC9C,IAAKD,EAAI,OAAO,MAEhB,MAAMS,EAAeR,EAAO,UAAUA,MAAW,GACjD,MAAMS,EAAcV,EAAGW,cAA+B,OAAOF,MAAiBG,iBAAiB,CAAEpB,QAAS,OAC1G,IAAKkB,IAAgBR,MAAMW,QAAQH,GAAc,OAAO,MAExD,QAASA,EAAYH,MACvB,Q","ignoreList":[]}
1
+ {"version":3,"names":["isElementNode","node","nodeType","Node","ELEMENT_NODE","isTextNode","TEXT_NODE","getText","currentLevel","maxLevel","Infinity","text","textContent","hasChildNodes","nextLevel","childNodes","forEach","getInnerHTML","slot","nodes","assignedNodes","flatten","html","outerHTML","getTextContent","options","recurse","trim","hasSlot","el","name","Array","from","querySelectorAll","filter","slottedEl","length","hasSlotContent","slotSelector","slotContent","querySelector","assignedElements","isArray"],"sources":["../../packages/beeq/src/shared/utils/slot.ts"],"sourcesContent":["/*=========================================================================================\n= Credit: =\n= https://github.com/shoelace-style/shoelace/blob/next/src/utilities/slot.ts =\n=========================================================================================*/\n\nfunction isElementNode(node: Node): node is HTMLElement {\n return node.nodeType === Node.ELEMENT_NODE;\n}\n\nfunction isTextNode(node: Node): node is Text {\n return node.nodeType === Node.TEXT_NODE;\n}\n\nfunction getText(node: Node, currentLevel = 1, maxLevel = Infinity): string {\n let text = '';\n if (currentLevel <= maxLevel) {\n if (isTextNode(node)) {\n text += node.textContent;\n } else if (isElementNode(node) && node.hasChildNodes()) {\n const nextLevel = currentLevel + 1;\n node.childNodes.forEach((node) => {\n text += getText(node, nextLevel, maxLevel);\n });\n }\n }\n\n return text;\n}\n\nexport interface IOptions {\n recurse: boolean;\n maxLevel?: number;\n}\n\n/**\n * Iterates over all of its assigned element and text nodes of a given slot and returns the concatenated HTML as a string.\n *\n * @param {HTMLSlotElement} slot - Slot HTML element\n * @return {string} The concatenated HTML as a string\n */\nexport function getInnerHTML(slot: HTMLSlotElement): string {\n const nodes = slot.assignedNodes({ flatten: true });\n let html = '';\n\n [...nodes].forEach((node) => {\n if (isElementNode(node)) {\n html += node.outerHTML;\n }\n\n if (isTextNode(node)) {\n html += node.textContent;\n }\n });\n\n return html;\n}\n\n/**\n * Iterates over all of its assigned text nodes of a given slot and returns the concatenated text as a string.\n *\n * @param {HTMLSlotElement} slot - Slot HTML element\n * @return {string} The concatenated text as a string\n */\nexport function getTextContent(slot: HTMLSlotElement): string;\n/**\n * Iterates over all of its assigned text nodes of a given slot and returns the concatenated text as a string.\n *\n * @param {HTMLSlotElement} slot - Slot HTML element\n * @param {IOptions} options - Options to retrieve text\n * @return {string} The concatenated text as a string\n */\nexport function getTextContent(slot: HTMLSlotElement, options: IOptions): string;\nexport function getTextContent(slot: HTMLSlotElement, options?: IOptions): string {\n const nodes = slot.assignedNodes({ flatten: true });\n const { recurse = false, maxLevel } = options ?? {};\n let text = '';\n\n [...nodes].forEach((node) => {\n text += getText(node, 1, recurse ? maxLevel : 1);\n });\n\n return text.trim();\n}\n\n/**\n * Determines whether a slot with the given name exists in an element.\n *\n * @param {HTMLElement} el - The HTMl element to check\n * @param {string} name - Name of the slot to check inside the HTML element\n * @return {boolean} True or false if the given HTML element has slot\n */\nexport function hasSlot(el: HTMLElement, name: string): boolean {\n return (\n Array.from(el.querySelectorAll('[slot]')).filter((slottedEl: HTMLSlotElement) => slottedEl.slot === name).length > 0\n );\n}\n\n/**\n * Will return whether if a given slot have HTML children elements or not.\n *\n * @param {HTMLElement} el - The HTML element that holds the slot\n * @param {string} [name] - Optional slot name\n * @return {boolean} True or false if the slot have HTML children elements\n */\nexport function hasSlotContent(el?: HTMLElement, name?: string): boolean {\n if (!el) return false;\n\n const slotSelector = name ? `[name='${name}']` : '';\n const slotContent = el.querySelector<HTMLSlotElement>(`slot${slotSelector}`)?.assignedElements({ flatten: true });\n if (!slotContent || !Array.isArray(slotContent)) return false;\n\n return !!slotContent.length;\n}\n"],"mappings":";;;;AAKA,SAASA,EAAcC,GACrB,OAAOA,EAAKC,WAAaC,KAAKC,YAChC,CAEA,SAASC,EAAWJ,GAClB,OAAOA,EAAKC,WAAaC,KAAKG,SAChC,CAEA,SAASC,EAAQN,EAAYO,EAAe,EAAGC,EAAWC,UACxD,IAAIC,EAAO,GACX,GAAIH,GAAgBC,EAAU,CAC5B,GAAIJ,EAAWJ,GAAO,CACpBU,GAAQV,EAAKW,W,MACR,GAAIZ,EAAcC,IAASA,EAAKY,gBAAiB,CACtD,MAAMC,EAAYN,EAAe,EACjCP,EAAKc,WAAWC,SAASf,IACvBU,GAAQJ,EAAQN,EAAMa,EAAWL,EAAS,G,EAKhD,OAAOE,CACT,CAaM,SAAUM,EAAaC,GAC3B,MAAMC,EAAQD,EAAKE,cAAc,CAAEC,QAAS,OAC5C,IAAIC,EAAO,GAEX,IAAIH,GAAOH,SAASf,IAClB,GAAID,EAAcC,GAAO,CACvBqB,GAAQrB,EAAKsB,S,CAGf,GAAIlB,EAAWJ,GAAO,CACpBqB,GAAQrB,EAAKW,W,KAIjB,OAAOU,CACT,CAiBM,SAAUE,EAAeN,EAAuBO,GACpD,MAAMN,EAAQD,EAAKE,cAAc,CAAEC,QAAS,OAC5C,MAAMK,QAAEA,EAAU,MAAKjB,SAAEA,GAAagB,GAAW,GACjD,IAAId,EAAO,GAEX,IAAIQ,GAAOH,SAASf,IAClBU,GAAQJ,EAAQN,EAAM,EAAGyB,EAAUjB,EAAW,EAAE,IAGlD,OAAOE,EAAKgB,MACd,CASM,SAAUC,EAAQC,EAAiBC,GACvC,OACEC,MAAMC,KAAKH,EAAGI,iBAAiB,WAAWC,QAAQC,GAA+BA,EAAUjB,OAASY,IAAMM,OAAS,CAEvH,CASM,SAAUC,EAAeR,EAAkBC,GAC/C,IAAKD,EAAI,OAAO,MAEhB,MAAMS,EAAeR,EAAO,UAAUA,MAAW,GACjD,MAAMS,EAAcV,EAAGW,cAA+B,OAAOF,MAAiBG,iBAAiB,CAAEpB,QAAS,OAC1G,IAAKkB,IAAgBR,MAAMW,QAAQH,GAAc,OAAO,MAExD,QAASA,EAAYH,MACvB,Q","ignoreList":[]}
@@ -2,5 +2,5 @@
2
2
  * Built by Endavans
3
3
  * © https://beeq.design - Apache 2 License.
4
4
  */
5
- import{p as a,H as r,c as e,h as b,d as n,t as q}from"./p-2eUC8A3N.js";import{i as t}from"./p-B4sM1t6Z.js";import{g as i}from"./p-kY6d9Evy.js";import{i as o}from"./p-BcPwGxIn.js";let s;const c="data-beeq";const d="svg";const l=a=>{s=a};const v=(a="")=>{if(!s){const a=u();const r=a?.getAttribute(c);const e=g();const b=e?`${f(e)}/${d}`:"";l(r||b)}const r=a?`/${a.replace(/^\//,"")}`:"";return s.replace(/\/$/,"")+r};const u=()=>{if(!t())return null;return document.querySelector(`script[${c}]`)};const g=()=>{if(!t())return null;return document.querySelector(`script[src*="beeq"]`)};const f=a=>{if(!t())return"";const r=a.getAttribute("src");return r?r.substring(0,r.lastIndexOf("/")):""};const y="svg";const h="bq-icon__svg";const m={requests:new Map,content:new Map};const w=a=>{const r=a.getAttribute("class")||"";a.setAttribute("class",`${r} ${h}`.trim());a.setAttribute("part",y);a.removeAttribute("height");a.removeAttribute("width")};const k=a=>{if(a?.nodeType!==Node.ELEMENT_NODE)return false;if(a.nodeName.toLowerCase()==="script")return false;const r=Array.from(a.attributes).some((a=>{const r=a.value?.toLowerCase()||"";const e=a.name.toLowerCase();if(e.startsWith("on"))return true;if(r.includes("javascript:"))return true;return false}));if(r)return false;return Array.from(a.children).every((a=>k(a)))};const p=a=>{if(!t()||o(a))return"";try{const r=new DOMParser;const e=r.parseFromString(a,"image/svg+xml");const b=e.querySelector(y);if(!b||!k(b)){console.warn("[BqIcon] SVG content failed security validation");return""}w(b);return(new XMLSerializer).serializeToString(b)}catch(a){console.error("[BqIcon] Error processing SVG content:",a);return""}};const x=async(a,r=true)=>{if(!t())return"";try{const e=await fetch(a);if(!e.ok){throw new Error(`HTTP ${e.status}: ${e.statusText}`)}const b=await e.text();if(!b.trim()){console.warn(`[BqIcon] Empty SVG content received from ${a}`);return""}return r?p(b):b}catch(r){console.error(`[BqIcon] Failed to fetch SVG from ${a}:`,r);return""}};const z=async(a,r=true)=>{if(!t()||o(a))return undefined;if(m.content.has(a)){const r=m.content.get(a);return r}if(!m.requests.has(a)){const e=x(a,r).then((r=>{m.content.set(a,r);m.requests.delete(a);return r}));m.requests.set(a,e)}return m.requests.get(a)};const $=()=>`.bq-icon__svg,.scale-x-\\[--bq-icon--direction\\],.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}::backdrop,:root{--bq-blue-100:#e7f0fd;--bq-blue-200:#d0e2fb;--bq-blue-300:#a1c5f7;--bq-blue-400:#73a8f3;--bq-blue-500:#448bef;--bq-blue-600:#156eeb;--bq-blue-700:#1158bc;--bq-blue-800:#0d428d;--bq-blue-900:#082c5e;--bq-blue-1000:#04162f;--bq-corai-100:#fff2f2;--bq-corai-200:#ffe6e6;--bq-corai-300:#ffccce;--bq-corai-400:#ffb3b5;--bq-corai-500:#ff999d;--bq-corai-600:#ff8084;--bq-corai-700:#cc666a;--bq-corai-800:#994d4f;--bq-corai-900:#663335;--bq-corai-1000:#331a1a;--bq-cyan-100:#e8f7fb;--bq-cyan-200:#d2f0f8;--bq-cyan-300:#a5e1f1;--bq-cyan-400:#78d1e9;--bq-cyan-500:#4bc2e2;--bq-cyan-600:#1eb3db;--bq-cyan-700:#188faf;--bq-cyan-800:#126b83;--bq-cyan-900:#0c4858;--bq-cyan-1000:#06242c;--bq-gold-100:#fbf4ec;--bq-gold-200:#f7e9da;--bq-gold-300:#f0d3b6;--bq-gold-400:#e8bc91;--bq-gold-500:#e1a66d;--bq-gold-600:#d99048;--bq-gold-700:#ae733a;--bq-gold-800:#82562b;--bq-gold-900:#573a1d;--bq-gold-1000:#2b1d0e;--bq-green-100:#e8f8ef;--bq-green-200:#d2f1e0;--bq-green-300:#a5e3c1;--bq-green-400:#78d5a1;--bq-green-500:#4bc782;--bq-green-600:#1eb963;--bq-green-700:#18944f;--bq-green-800:#126f3b;--bq-green-900:#0c4a28;--bq-green-1000:#062514;--bq-grey-100:#f1f2f4;--bq-grey-200:#e7e8eb;--bq-grey-300:#caccd2;--bq-grey-400:#a6aab3;--bq-grey-50:#f6f6f8;--bq-grey-500:#898e99;--bq-grey-600:#646a77;--bq-grey-700:#3f4350;--bq-grey-800:#2a2c35;--bq-grey-900:#1c1d23;--bq-grey-950:#15161a;--bq-grey-1000:#0d0e11;--bq-indigo-100:#edecfc;--bq-indigo-200:#dcdafa;--bq-indigo-300:#b9b5f5;--bq-indigo-400:#9590ef;--bq-indigo-500:#726bea;--bq-indigo-600:#4f46e5;--bq-indigo-700:#3f38b7;--bq-indigo-800:#2f2a89;--bq-indigo-900:#201c5c;--bq-indigo-1000:#100e2e;--bq-iris-100:#e9f0ff;--bq-iris-200:#d6e0ff;--bq-iris-300:#b2c0fe;--bq-iris-400:#8691f8;--bq-iris-500:#6061ee;--bq-iris-600:#4f46e5;--bq-iris-700:#413abd;--bq-iris-800:#332e95;--bq-iris-900:#26216d;--bq-iris-1000:#181545;--bq-lime-100:#f5fae8;--bq-lime-200:#ecf6d2;--bq-lime-300:#d9eda5;--bq-lime-400:#c5e379;--bq-lime-500:#b2da4c;--bq-lime-600:#9fd11f;--bq-lime-700:#7fa719;--bq-lime-800:#5f7d13;--bq-lime-900:#40540c;--bq-lime-1000:#202a06;--bq-magenta-100:#fce7f4;--bq-magenta-200:#f9cfea;--bq-magenta-300:#f39fd6;--bq-magenta-400:#ee6fbf;--bq-magenta-500:#e83fab;--bq-magenta-600:#de1395;--bq-magenta-700:#b20f77;--bq-magenta-800:#850c59;--bq-magenta-900:#58083c;--bq-magenta-1000:#2c041e;--bq-neutral-white:#fbfbfc;--bq-neutral-black:#060708;--bq-orange-100:#fbf0e9;--bq-orange-200:#f8e1d4;--bq-orange-300:#f1c2a8;--bq-orange-400:#eaa47d;--bq-orange-500:#e38551;--bq-orange-600:#dc6726;--bq-orange-700:#b0521e;--bq-orange-800:#843e17;--bq-orange-900:#58290f;--bq-orange-1000:#2c1508;--bq-purple-100:#efebf8;--bq-purple-200:#e0d7f2;--bq-purple-300:#c1afe5;--bq-purple-400:#a388d8;--bq-purple-500:#8460cb;--bq-purple-600:#6538be;--bq-purple-700:#512d98;--bq-purple-800:#3d2272;--bq-purple-900:#28164c;--bq-purple-1000:#140b26;--bq-red-100:#fce7ea;--bq-red-200:#f9d1d5;--bq-red-300:#f3a2ac;--bq-red-400:#ed7482;--bq-red-500:#e74559;--bq-red-600:#e1172f;--bq-red-700:#b41226;--bq-red-800:#870e1c;--bq-red-900:#5a0913;--bq-red-1000:#2d0509;--bq-sky-100:#eff4fb;--bq-sky-200:#dfeaf8;--bq-sky-300:#bfd5f1;--bq-sky-400:#9ec1e9;--bq-sky-500:#7eace2;--bq-sky-600:#5e97db;--bq-sky-700:#4b79af;--bq-sky-800:#385b83;--bq-sky-900:#263c58;--bq-sky-1000:#131e2c;--bq-teal-100:#e5f7f5;--bq-teal-200:#ccf0eb;--bq-teal-300:#99e1d8;--bq-teal-400:#66d2c4;--bq-teal-500:#33c3b1;--bq-teal-600:#00b49d;--bq-teal-700:#00907e;--bq-teal-800:#006c5e;--bq-teal-900:#00483f;--bq-teal-1000:#00241f;--bq-volcano-100:#feede7;--bq-volcano-200:#fddbd1;--bq-volcano-300:#fbb8a3;--bq-volcano-400:#fa9474;--bq-volcano-500:#f87146;--bq-volcano-600:#f64d18;--bq-volcano-700:#c53e13;--bq-volcano-800:#942e0e;--bq-volcano-900:#621f0a;--bq-volcano-1000:#310f05;--bq-yellow-100:#fefbe7;--bq-yellow-200:#fcf6d0;--bq-yellow-300:#faeea0;--bq-yellow-400:#f7e571;--bq-yellow-500:#f5dd41;--bq-yellow-600:#f2d412;--bq-yellow-700:#c2aa0e;--bq-yellow-800:#917f0b;--bq-yellow-900:#615507;--bq-yellow-1000:#302a04;--bq-endava-grey-50:#f7f7f8;--bq-endava-grey-100:#e4e6e7;--bq-endava-grey-200:#b5babe;--bq-endava-grey-300:#949ca1;--bq-endava-grey-400:#737d84;--bq-endava-grey-500:#525f67;--bq-endava-grey-600:#30404b;--bq-endava-grey-700:#2b3942;--bq-endava-grey-800:#263139;--bq-endava-grey-900:#192b37;--bq-endava-grey-950:#151b1e;--bq-endava-grey-1000:#0f1316;--bq-endava-neutral-white:#fafbfb;--bq-endava-neutral-black:#060708;--bq-endava-orange-100:#fef3f1;--bq-endava-orange-200:#fbd6d1;--bq-endava-orange-300:#fab7af;--bq-endava-orange-400:#fa988b;--bq-endava-orange-500:#fc7866;--bq-endava-orange-600:#ff5640;--bq-endava-orange-700:#ce4a39;--bq-endava-orange-800:#a03d30;--bq-endava-orange-900:#722e25;--bq-endava-orange-1000:#471e19}*,:after,:before{box-sizing:border-box}*{font:inherit;margin:0}ol[role=list],ul[role=list]{list-style-type:none}html{text-size-adjust:none;font-family:var(--bq-font-family);font-size:var(--bq-font-size--m)}html:focus-within{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bq-background--primary);color:var(--bq-text--primary);line-height:var(--bq-font-line-height--regular);min-height:100vb;text-rendering:optimizeSpeed}a:not([class]){text-decoration-skip-ink:auto}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto;transition-duration:.01ms!important}}:where(:root){--bq-white:#fff;--bq-black:#060708;--bq-neutral-50:var(--bq-grey-50);--bq-neutral-100:var(--bq-grey-100);--bq-neutral-200:var(--bq-grey-200);--bq-neutral-300:var(--bq-grey-300);--bq-neutral-400:var(--bq-grey-400);--bq-neutral-500:var(--bq-grey-500);--bq-neutral-600:var(--bq-grey-600);--bq-neutral-700:var(--bq-grey-700);--bq-neutral-800:var(--bq-grey-800);--bq-neutral-900:var(--bq-grey-900);--bq-neutral-950:var(--bq-grey-950);--bq-neutral-1000:var(--bq-grey-1000);--bq-brand-light:var(--bq-iris-100);--bq-brand:var(--bq-iris-600);--bq-brand-dark:var(--bq-iris-1000);--bq-accent-light:var(--bq-purple-100);--bq-accent:var(--bq-purple-600);--bq-accent-dark:var(--bq-purple-1000);--bq-success-light:var(--bq-teal-100);--bq-success:var(--bq-teal-600);--bq-success-dark:var(--bq-teal-1000);--bq-danger-light:var(--bq-red-100);--bq-danger:var(--bq-red-600);--bq-danger-dark:var(--bq-red-1000);--bq-warning-light:var(--bq-gold-100);--bq-warning:var(--bq-gold-600);--bq-warning-dark:var(--bq-gold-1000);--bq-info-light:var(--bq-iris-100);--bq-info:var(--bq-iris-600);--bq-info-dark:var(--bq-iris-1000);--bq-focus:var(--bq-iris-600);--bq-data-01:var(--bq-brand);--bq-data-02:var(--bq-purple-600);--bq-data-03:var(--bq-magenta-600);--bq-data-04:var(--bq-cyan-600);--bq-data-05:var(--bq-teal-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-yellow-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-blue-600);--bq-data-10:var(--bq-grey-600);--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white);--bq-radius--none:0;--bq-radius--xs2:0.125rem;--bq-radius--xs:0.25rem;--bq-radius--s:0.5rem;--bq-radius--m:0.75rem;--bq-radius--l:1.5rem;--bq-radius--full:9999px;--bq-box-shadow--xs:0 2px 0 rgba(0,0,0,.016);--bq-box-shadow--s:0 8px 24px rgba(0,0,0,.04);--bq-box-shadow--m:0 10px 48px -16px rgba(0,0,0,.12);--bq-box-shadow--l:0 20px 58px -16px rgba(0,0,0,.16);--bq-font-family:"Outfit",sans-serif;--bq-font-size--xs:0.75rem;--bq-font-size--s:0.875rem;--bq-font-size--m:1rem;--bq-font-size--l:1.125rem;--bq-font-size--xl:1.5rem;--bq-font-size--xxl:2rem;--bq-font-size--xxl2:2.5rem;--bq-font-size--xxl3:3rem;--bq-font-size--xxl4:3.5rem;--bq-font-size--xxl5:4rem;--bq-font-weight--thin:100;--bq-font-weight--light:300;--bq-font-weight--regular:400;--bq-font-weight--medium:500;--bq-font-weight--semibold:600;--bq-font-weight--bold:700;--bq-font-line-height--small:1.2;--bq-font-line-height--regular:1.5;--bq-font-line-height--large:1.5;--bq-spacing-xs3:0.125rem;--bq-spacing-xs2:0.25rem;--bq-spacing-xs:0.5rem;--bq-spacing-s:0.75rem;--bq-spacing-m:1rem;--bq-spacing-l:1.5rem;--bq-spacing-xl:2rem;--bq-spacing-xxl:2.5rem;--bq-spacing-xxl2:3.5rem;--bq-spacing-xxl3:4rem;--bq-spacing-xxl4:4.5rem;--bq-stroke-s:1px;--bq-stroke-m:2px;--bq-stroke-l:3px}.beeq:not([bq-mode]),.light,:root:not([bq-theme]):not([bq-mode]),:root[bq-theme=beeq]:not([bq-mode]),[bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--alt:var(--bq-white);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-100);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-light);--bq-hover:#bcbfc5;--bq-active:#444546}.dark,[bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-950);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-950);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-dark);--bq-hover:#444546;--bq-active:#1f2026}:where(.endava),:where([bq-theme=endava]){--bq-font-family:"Poppins",sans-serif;--bq-white:#fafbfb;--bq-black:#030406;--bq-neutral-50:var(--bq-endava-grey-50);--bq-neutral-100:var(--bq-endava-grey-100);--bq-neutral-200:var(--bq-endava-grey-200);--bq-neutral-300:var(--bq-endava-grey-300);--bq-neutral-400:var(--bq-endava-grey-400);--bq-neutral-500:var(--bq-endava-grey-500);--bq-neutral-600:var(--bq-endava-grey-600);--bq-neutral-700:var(--bq-endava-grey-700);--bq-neutral-800:var(--bq-endava-grey-800);--bq-neutral-900:var(--bq-endava-grey-900);--bq-neutral-950:var(--bq-endava-grey-950);--bq-neutral-1000:var(--bq-endava-grey-1000);--bq-brand-light:var(--bq-endava-orange-100);--bq-brand:var(--bq-endava-orange-600);--bq-brand-dark:var(--bq-endava-orange-1000);--bq-accent-light:var(--bq-endava-orange-100);--bq-accent:var(--bq-endava-orange-600);--bq-accent-dark:var(--bq-endava-orange-1000);--bq-success-light:var(--bq-green-100);--bq-success:var(--bq-green-600);--bq-success-dark:var(--bq-green-1000);--bq-danger-light:var(--bq-corai-100);--bq-danger:var(--bq-corai-600);--bq-danger-dark:var(--bq-corai-1000);--bq-warning-light:var(--bq-yellow-100);--bq-warning:var(--bq-yellow-600);--bq-warning-dark:var(--bq-yellow-1000);--bq-info-light:var(--bq-blue-100);--bq-info:var(--bq-blue-600);--bq-info-dark:var(--bq-blue-1000);--bq-focus:var(--bq-endava-orange-600);--bq-data-01:var(--bq-brand);--bq-data-02:#af0cd8;--bq-data-03:#0ca8d8;--bq-data-04:var(--bq-teal-600);--bq-data-05:var(--bq-yellow-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-blue-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-purple-600);--bq-data-10:#394b56;--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white)}.endava.light,.endava:not([bq-mode]),[bq-theme=endava]:not([bq-mode]),[bq-theme=endava][bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--brand-alt:var(--bq-brand-light);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-100);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--brand:var(--bq-brand);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-light);--bq-hover:#444546;--bq-active:#1f2026}.endava.dark,[bq-theme=endava][bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-900);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--brand-alt:var(--bq-brand-dark);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-neutral-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-950);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-dark);--bq-hover:#444546;--bq-active:#1f2026}.inline-block{display:inline-block}.scale-x-\\[--bq-icon--direction\\]{--tw-scale-x:var(--bq-icon--direction)}.scale-x-\\[--bq-icon--direction\\],.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@-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-icon--color:currentColor;--bq-icon--size:24px;display:inline-block}.bq-icon__svg{--tw-scale-x:var(--bq-icon--direction);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))}.static{position:static}.flex{display:flex}.text-\\[--bq-icon--color\\]{color:var(--bq-icon--color)}.bs-\\[--bq-icon--size\\]{block-size:var(--bq-icon--size)}.is-\\[--bq-icon--size\\]{inline-size:var(--bq-icon--size)}`;const C=a(class a extends r{constructor(a){super();if(a!==false){this.__registerHost()}this.__attachShadow();this.svgLoaded=e(this,"svgLoaded")}svgContent;label;color;name;size=24;src;weight=undefined;handlePropsChange(){this.loadIcon(this.name)}handleWeightChange(){if(this.name.includes(this.weight))return;console.warn(`❗️ [bq-icon]: the 'weight' property is deprecated, you should add the weight to the icon name.\n\n For example, '<bq-icon name="bell-fill"></bq-icon>' instead of '<bq-icon name="bell" weight="fill"></bq-icon>'`);const a="regular";const r=!o(this.weight)&&this.weight!==a;const e=r?`-${this.weight}`:"";const b=`${this.name}${e}`;this.loadIcon(b)}svgLoaded;connectedCallback(){this.setupIconComponent()}componentWillLoad(){this.setupIconComponent()}setupIconComponent=()=>{this.loadIcon(this.name);if(!o(this.weight))this.handleWeightChange()};getIconSource=a=>{if(!this.name&&!this.src)return undefined;if(this.src)return this.src;const r=".svg";const e=`${a}${r}`;return v(e)};loadIcon=async a=>{const r=this.getIconSource(a);if(!r)return;try{const a=await z(r,true);if(!a)return;this.svgContent=a;this.svgLoaded.emit(this.svgContent)}catch(a){console.error("[BEEQ] Failed to load the icon SVG content",a)}};render(){const{color:a,label:r,name:e,size:q}=this;const t={...a&&{"--bq-icon--color":i(a)},...q&&{"--bq-icon--size":`${q}px`}};return b(n,{key:"7d609e95807e9a4cd6be72e467b674ac9a0fef24",style:t},b("div",{key:"95452929fe794238458d65447e2b57c39e67c4cf","aria-label":r??`${e} icon`,class:"bs-[--bq-icon--size] is-[--bq-icon--size] flex text-[--bq-icon--color]",innerHTML:this.svgContent,part:"base",role:"img"}))}static get assetsDirs(){return["svg"]}static get watchers(){return{color:[{handlePropsChange:0}],name:[{handlePropsChange:0}],size:[{handlePropsChange:0}],weight:[{handleWeightChange:0}]}}static get style(){return $()}},[513,"bq-icon",{label:[513],color:[513],name:[513],size:[520],src:[513],weight:[513],svgContent:[32]},undefined,{color:[{handlePropsChange:0}],name:[{handlePropsChange:0}],size:[{handlePropsChange:0}],weight:[{handleWeightChange:0}]}]);function P(){if(typeof customElements==="undefined"){return}const a=["bq-icon"];a.forEach((a=>{switch(a){case"bq-icon":if(!customElements.get(q(a))){customElements.define(q(a),C)}break}}))}export{C as B,P as d,v as g,l as s};
6
- //# sourceMappingURL=p-2bpX-u8x.js.map
5
+ import{p as a,H as r,c as e,h as b,d as n,t as q}from"./p-2eUC8A3N.js";import{i as t}from"./p-B4sM1t6Z.js";import{g as i}from"./p-kY6d9Evy.js";import{i as o}from"./p-BcPwGxIn.js";let s;const c="data-beeq";const d="svg";const l=a=>{s=a};const v=(a="")=>{if(!s){const a=u();const r=a?.getAttribute(c);const e=g();const b=e?`${f(e)}/${d}`:"";l(r||b)}const r=a?`/${a.replace(/^\//,"")}`:"";return s.replace(/\/$/,"")+r};const u=()=>{if(!t())return null;return document.querySelector(`script[${c}]`)};const g=()=>{if(!t())return null;return document.querySelector(`script[src*="beeq"]`)};const f=a=>{if(!t())return"";const r=a.getAttribute("src");return r?r.substring(0,r.lastIndexOf("/")):""};const y="svg";const h="bq-icon__svg";const m={requests:new Map,content:new Map};const w=a=>{const r=a.getAttribute("class")||"";a.setAttribute("class",`${r} ${h}`.trim());a.setAttribute("part",y);a.removeAttribute("height");a.removeAttribute("width")};const k=a=>{if(a?.nodeType!==Node.ELEMENT_NODE)return false;if(a.nodeName.toLowerCase()==="script")return false;const r=Array.from(a.attributes).some((a=>{const r=a.value?.toLowerCase()||"";const e=a.name.toLowerCase();if(e.startsWith("on"))return true;if(r.includes("javascript:"))return true;return false}));if(r)return false;return Array.from(a.children).every((a=>k(a)))};const p=a=>{if(!t()||o(a))return"";try{const r=new DOMParser;const e=r.parseFromString(a,"image/svg+xml");const b=e.querySelector(y);if(!b||!k(b)){console.warn("[BqIcon] SVG content failed security validation");return""}w(b);return(new XMLSerializer).serializeToString(b)}catch(a){console.error("[BqIcon] Error processing SVG content:",a);return""}};const x=async(a,r=true)=>{if(!t())return"";try{const e=await fetch(a);if(!e.ok){throw new Error(`HTTP ${e.status}: ${e.statusText}`)}const b=await e.text();if(!b.trim()){console.warn(`[BqIcon] Empty SVG content received from ${a}`);return""}return r?p(b):b}catch(r){console.error(`[BqIcon] Failed to fetch SVG from ${a}:`,r);return""}};const z=async(a,r=true)=>{if(!t()||o(a))return undefined;if(m.content.has(a)){const r=m.content.get(a);return r}if(!m.requests.has(a)){const e=x(a,r).then((r=>{m.content.set(a,r);m.requests.delete(a);return r}));m.requests.set(a,e)}return m.requests.get(a)};const $=()=>`.bq-icon__svg,.scale-x-\\[--bq-icon--direction\\],.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}::backdrop,:root{--bq-blue-100:#e7f0fd;--bq-blue-200:#d0e2fb;--bq-blue-300:#a1c5f7;--bq-blue-400:#73a8f3;--bq-blue-500:#448bef;--bq-blue-600:#156eeb;--bq-blue-700:#1158bc;--bq-blue-800:#0d428d;--bq-blue-900:#082c5e;--bq-blue-1000:#04162f;--bq-corai-100:#fff2f2;--bq-corai-200:#ffe6e6;--bq-corai-300:#ffccce;--bq-corai-400:#ffb3b5;--bq-corai-500:#ff999d;--bq-corai-600:#ff8084;--bq-corai-700:#cc666a;--bq-corai-800:#994d4f;--bq-corai-900:#663335;--bq-corai-1000:#331a1a;--bq-cyan-100:#e8f7fb;--bq-cyan-200:#d2f0f8;--bq-cyan-300:#a5e1f1;--bq-cyan-400:#78d1e9;--bq-cyan-500:#4bc2e2;--bq-cyan-600:#1eb3db;--bq-cyan-700:#188faf;--bq-cyan-800:#126b83;--bq-cyan-900:#0c4858;--bq-cyan-1000:#06242c;--bq-gold-100:#fbf4ec;--bq-gold-200:#f7e9da;--bq-gold-300:#f0d3b6;--bq-gold-400:#e8bc91;--bq-gold-500:#e1a66d;--bq-gold-600:#d99048;--bq-gold-700:#ae733a;--bq-gold-800:#82562b;--bq-gold-900:#573a1d;--bq-gold-1000:#2b1d0e;--bq-green-100:#e8f8ef;--bq-green-200:#d2f1e0;--bq-green-300:#a5e3c1;--bq-green-400:#78d5a1;--bq-green-500:#4bc782;--bq-green-600:#1eb963;--bq-green-700:#18944f;--bq-green-800:#126f3b;--bq-green-900:#0c4a28;--bq-green-1000:#062514;--bq-grey-100:#f1f2f4;--bq-grey-200:#e7e8eb;--bq-grey-300:#caccd2;--bq-grey-400:#a6aab3;--bq-grey-50:#f6f6f8;--bq-grey-500:#898e99;--bq-grey-600:#646a77;--bq-grey-700:#3f4350;--bq-grey-800:#2a2c35;--bq-grey-900:#1c1d23;--bq-grey-950:#15161a;--bq-grey-1000:#0d0e11;--bq-indigo-100:#edecfc;--bq-indigo-200:#dcdafa;--bq-indigo-300:#b9b5f5;--bq-indigo-400:#9590ef;--bq-indigo-500:#726bea;--bq-indigo-600:#4f46e5;--bq-indigo-700:#3f38b7;--bq-indigo-800:#2f2a89;--bq-indigo-900:#201c5c;--bq-indigo-1000:#100e2e;--bq-iris-100:#e9f0ff;--bq-iris-200:#d6e0ff;--bq-iris-300:#b2c0fe;--bq-iris-400:#8691f8;--bq-iris-500:#6061ee;--bq-iris-600:#4f46e5;--bq-iris-700:#413abd;--bq-iris-800:#332e95;--bq-iris-900:#26216d;--bq-iris-1000:#181545;--bq-lime-100:#f5fae8;--bq-lime-200:#ecf6d2;--bq-lime-300:#d9eda5;--bq-lime-400:#c5e379;--bq-lime-500:#b2da4c;--bq-lime-600:#9fd11f;--bq-lime-700:#7fa719;--bq-lime-800:#5f7d13;--bq-lime-900:#40540c;--bq-lime-1000:#202a06;--bq-magenta-100:#fce7f4;--bq-magenta-200:#f9cfea;--bq-magenta-300:#f39fd6;--bq-magenta-400:#ee6fbf;--bq-magenta-500:#e83fab;--bq-magenta-600:#de1395;--bq-magenta-700:#b20f77;--bq-magenta-800:#850c59;--bq-magenta-900:#58083c;--bq-magenta-1000:#2c041e;--bq-neutral-white:#fbfbfc;--bq-neutral-black:#060708;--bq-orange-100:#fbf0e9;--bq-orange-200:#f8e1d4;--bq-orange-300:#f1c2a8;--bq-orange-400:#eaa47d;--bq-orange-500:#e38551;--bq-orange-600:#dc6726;--bq-orange-700:#b0521e;--bq-orange-800:#843e17;--bq-orange-900:#58290f;--bq-orange-1000:#2c1508;--bq-purple-100:#efebf8;--bq-purple-200:#e0d7f2;--bq-purple-300:#c1afe5;--bq-purple-400:#a388d8;--bq-purple-500:#8460cb;--bq-purple-600:#6538be;--bq-purple-700:#512d98;--bq-purple-800:#3d2272;--bq-purple-900:#28164c;--bq-purple-1000:#140b26;--bq-red-100:#fce7ea;--bq-red-200:#f9d1d5;--bq-red-300:#f3a2ac;--bq-red-400:#ed7482;--bq-red-500:#e74559;--bq-red-600:#e1172f;--bq-red-700:#b41226;--bq-red-800:#870e1c;--bq-red-900:#5a0913;--bq-red-1000:#2d0509;--bq-sky-100:#eff4fb;--bq-sky-200:#dfeaf8;--bq-sky-300:#bfd5f1;--bq-sky-400:#9ec1e9;--bq-sky-500:#7eace2;--bq-sky-600:#5e97db;--bq-sky-700:#4b79af;--bq-sky-800:#385b83;--bq-sky-900:#263c58;--bq-sky-1000:#131e2c;--bq-teal-100:#e5f7f5;--bq-teal-200:#ccf0eb;--bq-teal-300:#99e1d8;--bq-teal-400:#66d2c4;--bq-teal-500:#33c3b1;--bq-teal-600:#00b49d;--bq-teal-700:#00907e;--bq-teal-800:#006c5e;--bq-teal-900:#00483f;--bq-teal-1000:#00241f;--bq-volcano-100:#feede7;--bq-volcano-200:#fddbd1;--bq-volcano-300:#fbb8a3;--bq-volcano-400:#fa9474;--bq-volcano-500:#f87146;--bq-volcano-600:#f64d18;--bq-volcano-700:#c53e13;--bq-volcano-800:#942e0e;--bq-volcano-900:#621f0a;--bq-volcano-1000:#310f05;--bq-yellow-100:#fefbe7;--bq-yellow-200:#fcf6d0;--bq-yellow-300:#faeea0;--bq-yellow-400:#f7e571;--bq-yellow-500:#f5dd41;--bq-yellow-600:#f2d412;--bq-yellow-700:#c2aa0e;--bq-yellow-800:#917f0b;--bq-yellow-900:#615507;--bq-yellow-1000:#302a04;--bq-endava-grey-50:#f7f7f8;--bq-endava-grey-100:#e4e6e7;--bq-endava-grey-200:#b5babe;--bq-endava-grey-300:#949ca1;--bq-endava-grey-400:#737d84;--bq-endava-grey-500:#525f67;--bq-endava-grey-600:#30404b;--bq-endava-grey-700:#2b3942;--bq-endava-grey-800:#263139;--bq-endava-grey-900:#192b37;--bq-endava-grey-950:#151b1e;--bq-endava-grey-1000:#0f1316;--bq-endava-neutral-white:#fafbfb;--bq-endava-neutral-black:#060708;--bq-endava-orange-100:#fef3f1;--bq-endava-orange-200:#fbd6d1;--bq-endava-orange-300:#fab7af;--bq-endava-orange-400:#fa988b;--bq-endava-orange-500:#fc7866;--bq-endava-orange-600:#ff5640;--bq-endava-orange-700:#ce4a39;--bq-endava-orange-800:#a03d30;--bq-endava-orange-900:#722e25;--bq-endava-orange-1000:#471e19}*,:after,:before{box-sizing:border-box}*{font:inherit;margin:0}ol[role=list],ul[role=list]{list-style-type:none}html{text-size-adjust:none;font-family:var(--bq-font-family);font-size:var(--bq-font-size--m)}html:focus-within{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bq-background--primary);color:var(--bq-text--primary);line-height:var(--bq-font-line-height--regular);min-height:100vb;text-rendering:optimizeSpeed}a:not([class]){text-decoration-skip-ink:auto}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto;transition-duration:.01ms!important}}:where(:root){--bq-white:#fff;--bq-black:#060708;--bq-neutral-50:var(--bq-grey-50);--bq-neutral-100:var(--bq-grey-100);--bq-neutral-200:var(--bq-grey-200);--bq-neutral-300:var(--bq-grey-300);--bq-neutral-400:var(--bq-grey-400);--bq-neutral-500:var(--bq-grey-500);--bq-neutral-600:var(--bq-grey-600);--bq-neutral-700:var(--bq-grey-700);--bq-neutral-800:var(--bq-grey-800);--bq-neutral-900:var(--bq-grey-900);--bq-neutral-950:var(--bq-grey-950);--bq-neutral-1000:var(--bq-grey-1000);--bq-brand-light:var(--bq-iris-100);--bq-brand:var(--bq-iris-600);--bq-brand-dark:var(--bq-iris-1000);--bq-accent-light:var(--bq-purple-100);--bq-accent:var(--bq-purple-600);--bq-accent-dark:var(--bq-purple-1000);--bq-success-light:var(--bq-teal-100);--bq-success:var(--bq-teal-600);--bq-success-dark:var(--bq-teal-1000);--bq-danger-light:var(--bq-red-100);--bq-danger:var(--bq-red-600);--bq-danger-dark:var(--bq-red-1000);--bq-warning-light:var(--bq-gold-100);--bq-warning:var(--bq-gold-600);--bq-warning-dark:var(--bq-gold-1000);--bq-info-light:var(--bq-iris-100);--bq-info:var(--bq-iris-600);--bq-info-dark:var(--bq-iris-1000);--bq-focus:var(--bq-iris-600);--bq-data-01:var(--bq-brand);--bq-data-02:var(--bq-purple-600);--bq-data-03:var(--bq-magenta-600);--bq-data-04:var(--bq-cyan-600);--bq-data-05:var(--bq-teal-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-yellow-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-blue-600);--bq-data-10:var(--bq-grey-600);--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white);--bq-radius--none:0;--bq-radius--xs2:0.125rem;--bq-radius--xs:0.25rem;--bq-radius--s:0.5rem;--bq-radius--m:0.75rem;--bq-radius--l:1.5rem;--bq-radius--full:9999px;--bq-box-shadow--xs:0 2px 0 rgba(0,0,0,.016);--bq-box-shadow--s:0 8px 24px rgba(0,0,0,.04);--bq-box-shadow--m:0 10px 48px -16px rgba(0,0,0,.12);--bq-box-shadow--l:0 20px 58px -16px rgba(0,0,0,.16);--bq-font-family:"Outfit",sans-serif;--bq-font-size--xs:0.75rem;--bq-font-size--s:0.875rem;--bq-font-size--m:1rem;--bq-font-size--l:1.125rem;--bq-font-size--xl:1.5rem;--bq-font-size--xxl:2rem;--bq-font-size--xxl2:2.5rem;--bq-font-size--xxl3:3rem;--bq-font-size--xxl4:3.5rem;--bq-font-size--xxl5:4rem;--bq-font-weight--thin:100;--bq-font-weight--light:300;--bq-font-weight--regular:400;--bq-font-weight--medium:500;--bq-font-weight--semibold:600;--bq-font-weight--bold:700;--bq-font-line-height--small:1.2;--bq-font-line-height--regular:1.5;--bq-font-line-height--large:1.5;--bq-spacing-xs3:0.125rem;--bq-spacing-xs2:0.25rem;--bq-spacing-xs:0.5rem;--bq-spacing-s:0.75rem;--bq-spacing-m:1rem;--bq-spacing-l:1.5rem;--bq-spacing-xl:2rem;--bq-spacing-xxl:2.5rem;--bq-spacing-xxl2:3.5rem;--bq-spacing-xxl3:4rem;--bq-spacing-xxl4:4.5rem;--bq-stroke-s:1px;--bq-stroke-m:2px;--bq-stroke-l:3px}.beeq:not([bq-mode]),.light,:root:not([bq-theme]):not([bq-mode]),:root[bq-theme=beeq]:not([bq-mode]),[bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--alt:var(--bq-white);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-100);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-light);--bq-hover:#bcbfc5;--bq-active:#444546}.dark,[bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-950);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-950);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-dark);--bq-hover:#444546;--bq-active:#1f2026}:where(.endava),:where([bq-theme=endava]){--bq-font-family:"Poppins",sans-serif;--bq-white:#fafbfb;--bq-black:#030406;--bq-neutral-50:var(--bq-endava-grey-50);--bq-neutral-100:var(--bq-endava-grey-100);--bq-neutral-200:var(--bq-endava-grey-200);--bq-neutral-300:var(--bq-endava-grey-300);--bq-neutral-400:var(--bq-endava-grey-400);--bq-neutral-500:var(--bq-endava-grey-500);--bq-neutral-600:var(--bq-endava-grey-600);--bq-neutral-700:var(--bq-endava-grey-700);--bq-neutral-800:var(--bq-endava-grey-800);--bq-neutral-900:var(--bq-endava-grey-900);--bq-neutral-950:var(--bq-endava-grey-950);--bq-neutral-1000:var(--bq-endava-grey-1000);--bq-brand-light:var(--bq-endava-orange-100);--bq-brand:var(--bq-endava-orange-600);--bq-brand-dark:var(--bq-endava-orange-1000);--bq-accent-light:var(--bq-endava-orange-100);--bq-accent:var(--bq-endava-orange-600);--bq-accent-dark:var(--bq-endava-orange-1000);--bq-success-light:var(--bq-green-100);--bq-success:var(--bq-green-600);--bq-success-dark:var(--bq-green-1000);--bq-danger-light:var(--bq-corai-100);--bq-danger:var(--bq-corai-600);--bq-danger-dark:var(--bq-corai-1000);--bq-warning-light:var(--bq-yellow-100);--bq-warning:var(--bq-yellow-600);--bq-warning-dark:var(--bq-yellow-1000);--bq-info-light:var(--bq-blue-100);--bq-info:var(--bq-blue-600);--bq-info-dark:var(--bq-blue-1000);--bq-focus:var(--bq-endava-orange-600);--bq-data-01:var(--bq-brand);--bq-data-02:#af0cd8;--bq-data-03:#0ca8d8;--bq-data-04:var(--bq-teal-600);--bq-data-05:var(--bq-yellow-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-blue-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-purple-600);--bq-data-10:#394b56;--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white)}.endava.light,.endava:not([bq-mode]),[bq-theme=endava]:not([bq-mode]),[bq-theme=endava][bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--brand-alt:var(--bq-brand-light);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-100);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--brand:var(--bq-brand);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-light);--bq-hover:#444546;--bq-active:#1f2026}.endava.dark,[bq-theme=endava][bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-900);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--brand-alt:var(--bq-brand-dark);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-neutral-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-950);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-dark);--bq-hover:#444546;--bq-active:#1f2026}.inline-block{display:inline-block}.scale-x-\\[--bq-icon--direction\\]{--tw-scale-x:var(--bq-icon--direction)}.scale-x-\\[--bq-icon--direction\\],.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@-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-icon--color:currentColor;--bq-icon--size:24px;display:inline-block}.bq-icon__svg{--tw-scale-x:var(--bq-icon--direction);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))}.static{position:static}.flex{display:flex}.text-\\[--bq-icon--color\\]{color:var(--bq-icon--color)}.bs-\\[--bq-icon--size\\]{block-size:var(--bq-icon--size)}.is-\\[--bq-icon--size\\]{inline-size:var(--bq-icon--size)}`;const C=a(class a extends r{constructor(a){super();if(a!==false){this.__registerHost()}this.__attachShadow();this.svgLoaded=e(this,"svgLoaded")}svgContent;label;color;name;size=24;src;weight=undefined;handlePropsChange(){this.loadIcon(this.name)}handleWeightChange(){if(this.name.includes(this.weight))return;console.warn(`❗️ [bq-icon]: the 'weight' property is deprecated, you should add the weight to the icon name.\n\n For example, '<bq-icon name="bell-fill"></bq-icon>' instead of '<bq-icon name="bell" weight="fill"></bq-icon>'`);const a="regular";const r=!o(this.weight)&&this.weight!==a;const e=r?`-${this.weight}`:"";const b=`${this.name}${e}`;this.loadIcon(b)}svgLoaded;connectedCallback(){this.setupIconComponent()}componentWillLoad(){this.setupIconComponent()}setupIconComponent=()=>{this.loadIcon(this.name);if(!o(this.weight))this.handleWeightChange()};getIconSource=a=>{if(!this.name&&!this.src)return undefined;if(this.src)return this.src;const r=".svg";const e=`${a}${r}`;return v(e)};loadIcon=async a=>{const r=this.getIconSource(a);if(!r)return;try{const a=await z(r,true);if(!a)return;this.svgContent=a;this.svgLoaded.emit(this.svgContent)}catch(a){console.error("[BEEQ] Failed to load the icon SVG content",a)}};render(){const{color:a,label:r,name:e,size:q}=this;const t={...a&&{"--bq-icon--color":i(a)},...q&&{"--bq-icon--size":`${q}px`}};return b(n,{key:"422a5500f1254f7f0739a977886ed04f9f0d6b6d",style:t},b("div",{key:"3144d2bedaff2555d49451d2583b3cd21f573aef","aria-label":r??`${e} icon`,class:"bs-[--bq-icon--size] is-[--bq-icon--size] flex text-[--bq-icon--color]",innerHTML:this.svgContent,part:"base",role:"img"}))}static get assetsDirs(){return["svg"]}static get watchers(){return{color:[{handlePropsChange:0}],name:[{handlePropsChange:0}],size:[{handlePropsChange:0}],weight:[{handleWeightChange:0}]}}static get style(){return $()}},[513,"bq-icon",{label:[513],color:[513],name:[513],size:[520],src:[513],weight:[513],svgContent:[32]},undefined,{color:[{handlePropsChange:0}],name:[{handlePropsChange:0}],size:[{handlePropsChange:0}],weight:[{handleWeightChange:0}]}]);function P(){if(typeof customElements==="undefined"){return}const a=["bq-icon"];a.forEach((a=>{switch(a){case"bq-icon":if(!customElements.get(q(a))){customElements.define(q(a),C)}break}}))}export{C as B,P as d,v as g,l as s};
6
+ //# sourceMappingURL=p-v3c5-Hhf.js.map