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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (339) hide show
  1. package/dist/beeq/beeq.esm.js +1 -1
  2. package/dist/beeq/beeq.esm.js.map +1 -1
  3. package/dist/beeq/index.esm.js +11 -11
  4. package/dist/beeq/{p-dd950c12.entry.js → p-026222c6.entry.js} +26 -26
  5. package/dist/beeq/{p-6a4e104b.entry.js → p-04d98ed3.entry.js} +36 -42
  6. package/dist/beeq/p-04d98ed3.entry.js.map +1 -0
  7. package/dist/beeq/{p-81f1c3ba.entry.js → p-05685544.entry.js} +2 -2
  8. package/dist/beeq/{p-ffddc425.entry.js → p-0ebe73ef.entry.js} +12 -12
  9. package/dist/beeq/{p-ac969486.entry.js → p-11eaeb5d.entry.js} +8 -8
  10. package/dist/beeq/{p-e301647a.entry.js → p-12dbc6ac.entry.js} +5 -5
  11. package/dist/beeq/{p-297fb76b.entry.js → p-19df76ba.entry.js} +35 -35
  12. package/dist/beeq/{p-57a55ac5.entry.js → p-2ef721e1.entry.js} +8 -8
  13. package/dist/beeq/{p-a6489187.entry.js → p-37466506.entry.js} +9 -9
  14. package/dist/beeq/{p-db18eba1.entry.js → p-377c70d1.entry.js} +7 -7
  15. package/dist/beeq/{p-c34e292e.entry.js → p-3dd0e436.entry.js} +13 -10
  16. package/dist/beeq/p-3dd0e436.entry.js.map +1 -0
  17. package/dist/beeq/p-3fd0d92d.js.map +1 -1
  18. package/dist/beeq/{p-39b7c578.entry.js → p-41033fe6.entry.js} +6 -6
  19. package/dist/beeq/{p-e41f07ae.entry.js → p-43e4fcdb.entry.js} +8 -8
  20. package/dist/beeq/{p-ffb48c40.entry.js → p-4a235cd2.entry.js} +14 -14
  21. package/dist/beeq/{p-14b44a4b.entry.js → p-4a3d8532.entry.js} +7 -7
  22. package/dist/beeq/{p-548b45b7.entry.js → p-4dd962a7.entry.js} +11 -11
  23. package/dist/beeq/{p-e3aa2886.entry.js → p-4eccc020.entry.js} +11 -11
  24. package/dist/beeq/{p-39d77ba6.entry.js → p-4fc098bb.entry.js} +11 -11
  25. package/dist/beeq/{p-4688e046.js → p-513bab02.js} +2 -2
  26. package/dist/beeq/{p-0f48adcc.entry.js → p-5eab4f55.entry.js} +13 -13
  27. package/dist/beeq/{p-36652891.entry.js → p-600e7c38.entry.js} +5 -5
  28. package/dist/beeq/{p-49249dda.entry.js → p-7089c66a.entry.js} +11 -11
  29. package/dist/beeq/{p-e88257a8.entry.js → p-734853f9.entry.js} +19 -19
  30. package/dist/beeq/{p-fd658de1.entry.js → p-7774eec3.entry.js} +6 -6
  31. package/dist/beeq/{p-2e66fc4f.entry.js → p-7b9ff03f.entry.js} +25 -22
  32. package/dist/beeq/p-7b9ff03f.entry.js.map +1 -0
  33. package/dist/beeq/{p-2bb65f53.entry.js → p-7c06dfec.entry.js} +6 -6
  34. package/dist/beeq/{p-5e11b866.entry.js → p-900d4e78.entry.js} +2 -2
  35. package/dist/beeq/{p-7f301da8.entry.js → p-911e07b7.entry.js} +34 -29
  36. package/dist/beeq/p-911e07b7.entry.js.map +1 -0
  37. package/dist/beeq/{p-063a3968.entry.js → p-924ebf7d.entry.js} +24 -18
  38. package/dist/beeq/p-924ebf7d.entry.js.map +1 -0
  39. package/dist/beeq/{p-0979fdfd.entry.js → p-9aa18e2f.entry.js} +16 -10
  40. package/dist/beeq/p-9aa18e2f.entry.js.map +1 -0
  41. package/dist/beeq/{p-f77d9b8b.entry.js → p-ae94b9f8.entry.js} +9 -9
  42. package/dist/beeq/{p-9990889d.entry.js → p-b38e8c5a.entry.js} +37 -51
  43. package/dist/beeq/p-b38e8c5a.entry.js.map +1 -0
  44. package/dist/beeq/{p-822773ae.entry.js → p-b4278945.entry.js} +11 -11
  45. package/dist/beeq/{p-a1b43de6.entry.js → p-b48545b6.entry.js} +15 -15
  46. package/dist/beeq/{p-e9a54b49.entry.js → p-c907de72.entry.js} +8 -8
  47. package/dist/beeq/{p-6a5a79a3.entry.js → p-ceb3bb9a.entry.js} +17 -14
  48. package/dist/beeq/p-ceb3bb9a.entry.js.map +1 -0
  49. package/dist/beeq/{p-1715ac80.entry.js → p-d3008f60.entry.js} +49 -44
  50. package/dist/beeq/p-d3008f60.entry.js.map +1 -0
  51. package/dist/beeq/{p-bef53750.js → p-e5afdf8c.js} +36 -28
  52. package/dist/beeq/p-e5afdf8c.js.map +1 -0
  53. package/dist/beeq/{p-afc9fd80.entry.js → p-e7d75b87.entry.js} +10 -10
  54. package/dist/beeq/{p-242ac28a.entry.js → p-f00abfb8.entry.js} +8 -8
  55. package/dist/beeq/{p-bf2320dd.entry.js → p-f8663855.entry.js} +13 -13
  56. package/dist/cjs/app-globals-b11284b9.js.map +1 -1
  57. package/dist/cjs/{assetsPath-3938a05d.js → assetsPath-7ead23b7.js} +19 -8
  58. package/dist/cjs/assetsPath-7ead23b7.js.map +1 -0
  59. package/dist/cjs/beeq.cjs.js +1 -1
  60. package/dist/cjs/bq-accordion-group.cjs.entry.js +1 -1
  61. package/dist/cjs/bq-accordion.cjs.entry.js +1 -1
  62. package/dist/cjs/bq-alert.cjs.entry.js +18 -24
  63. package/dist/cjs/bq-alert.cjs.entry.js.map +1 -1
  64. package/dist/cjs/bq-avatar.cjs.entry.js +4 -4
  65. package/dist/cjs/bq-badge.cjs.entry.js +3 -3
  66. package/dist/cjs/bq-breadcrumb-item.cjs.entry.js +5 -5
  67. package/dist/cjs/bq-breadcrumb.cjs.entry.js +2 -2
  68. package/dist/cjs/bq-button_2.cjs.entry.js +15 -9
  69. package/dist/cjs/bq-button_2.cjs.entry.js.map +1 -1
  70. package/dist/cjs/bq-card.cjs.entry.js +3 -3
  71. package/dist/cjs/bq-checkbox.cjs.entry.js +3 -3
  72. package/dist/cjs/bq-date-picker.cjs.entry.js +9 -6
  73. package/dist/cjs/bq-date-picker.cjs.entry.js.map +1 -1
  74. package/dist/cjs/bq-dialog.cjs.entry.js +6 -6
  75. package/dist/cjs/bq-divider.cjs.entry.js +8 -5
  76. package/dist/cjs/bq-divider.cjs.entry.js.map +1 -1
  77. package/dist/cjs/bq-drawer.cjs.entry.js +6 -6
  78. package/dist/cjs/bq-dropdown_2.cjs.entry.js +2 -2
  79. package/dist/cjs/bq-empty-state.cjs.entry.js +5 -5
  80. package/dist/cjs/bq-input.cjs.entry.js +6 -6
  81. package/dist/cjs/bq-notification.cjs.entry.js +25 -18
  82. package/dist/cjs/bq-notification.cjs.entry.js.map +1 -1
  83. package/dist/cjs/bq-option-group.cjs.entry.js +1 -1
  84. package/dist/cjs/bq-option-list_2.cjs.entry.js +6 -6
  85. package/dist/cjs/bq-option.cjs.entry.js +5 -5
  86. package/dist/cjs/bq-page-title.cjs.entry.js +3 -3
  87. package/dist/cjs/bq-progress.cjs.entry.js +5 -5
  88. package/dist/cjs/bq-radio-group.cjs.entry.js +2 -2
  89. package/dist/cjs/bq-radio.cjs.entry.js +2 -2
  90. package/dist/cjs/bq-select.cjs.entry.js +16 -10
  91. package/dist/cjs/bq-select.cjs.entry.js.map +1 -1
  92. package/dist/cjs/bq-side-menu-item.cjs.entry.js +1 -1
  93. package/dist/cjs/bq-side-menu.cjs.entry.js +2 -2
  94. package/dist/cjs/bq-slider.cjs.entry.js +11 -5
  95. package/dist/cjs/bq-slider.cjs.entry.js.map +1 -1
  96. package/dist/cjs/bq-spinner.cjs.entry.js +5 -5
  97. package/dist/cjs/bq-status.cjs.entry.js +2 -2
  98. package/dist/cjs/bq-step-item.cjs.entry.js +8 -5
  99. package/dist/cjs/bq-step-item.cjs.entry.js.map +1 -1
  100. package/dist/cjs/bq-steps.cjs.entry.js +2 -2
  101. package/dist/cjs/bq-switch.cjs.entry.js +3 -3
  102. package/dist/cjs/bq-tab-group.cjs.entry.js +4 -4
  103. package/dist/cjs/bq-tab.cjs.entry.js +3 -3
  104. package/dist/cjs/bq-textarea.cjs.entry.js +4 -4
  105. package/dist/cjs/bq-toast.cjs.entry.js +28 -30
  106. package/dist/cjs/bq-toast.cjs.entry.js.map +1 -1
  107. package/dist/cjs/bq-tooltip.cjs.entry.js +1 -1
  108. package/dist/cjs/index.cjs.js +2 -2
  109. package/dist/cjs/{isDefined-750bffc4.js → isDefined-a9dd6d5b.js} +2 -2
  110. package/dist/cjs/{isDefined-750bffc4.js.map → isDefined-a9dd6d5b.js.map} +1 -1
  111. package/dist/cjs/loader.cjs.js +1 -1
  112. package/dist/collection/components/alert/bq-alert.js +26 -26
  113. package/dist/collection/components/alert/bq-alert.js.map +1 -1
  114. package/dist/collection/components/alert/scss/bq-alert.css +1 -1
  115. package/dist/collection/components/avatar/bq-avatar.js +3 -3
  116. package/dist/collection/components/badge/bq-badge.js +2 -2
  117. package/dist/collection/components/breadcrumb/bq-breadcrumb.js +1 -1
  118. package/dist/collection/components/breadcrumb-item/bq-breadcrumb-item.js +3 -3
  119. package/dist/collection/components/button/bq-button.js +2 -2
  120. package/dist/collection/components/card/bq-card.js +2 -2
  121. package/dist/collection/components/checkbox/bq-checkbox.js +2 -2
  122. package/dist/collection/components/date-picker/bq-date-picker.js +6 -3
  123. package/dist/collection/components/date-picker/bq-date-picker.js.map +1 -1
  124. package/dist/collection/components/date-picker/scss/bq-date-picker.css +1 -1
  125. package/dist/collection/components/dialog/bq-dialog.js +4 -4
  126. package/dist/collection/components/dialog/scss/bq-dialog.css +1 -1
  127. package/dist/collection/components/divider/bq-divider.js +7 -4
  128. package/dist/collection/components/divider/bq-divider.js.map +1 -1
  129. package/dist/collection/components/drawer/bq-drawer.js +4 -4
  130. package/dist/collection/components/drawer/scss/bq-drawer.css +1 -1
  131. package/dist/collection/components/dropdown/bq-dropdown.js +1 -1
  132. package/dist/collection/components/empty-state/bq-empty-state.js +4 -4
  133. package/dist/collection/components/icon/bq-icon.js +13 -7
  134. package/dist/collection/components/icon/bq-icon.js.map +1 -1
  135. package/dist/collection/components/input/bq-input.js +4 -4
  136. package/dist/collection/components/notification/bq-notification.js +31 -17
  137. package/dist/collection/components/notification/bq-notification.js.map +1 -1
  138. package/dist/collection/components/notification/scss/bq-notification.css +1 -1
  139. package/dist/collection/components/option/bq-option.js +4 -4
  140. package/dist/collection/components/option-group/bq-option-group.js +1 -1
  141. package/dist/collection/components/option-list/bq-option-list.js +1 -1
  142. package/dist/collection/components/page-title/bq-page-title.js +2 -2
  143. package/dist/collection/components/panel/bq-panel.js +1 -1
  144. package/dist/collection/components/progress/bq-progress.js +4 -4
  145. package/dist/collection/components/radio/bq-radio.js +2 -2
  146. package/dist/collection/components/radio-group/bq-radio-group.js +1 -1
  147. package/dist/collection/components/select/bq-select.js +14 -8
  148. package/dist/collection/components/select/bq-select.js.map +1 -1
  149. package/dist/collection/components/select/scss/bq-select.css +1 -1
  150. package/dist/collection/components/side-menu/bq-side-menu.js +1 -1
  151. package/dist/collection/components/slider/bq-slider.js +10 -4
  152. package/dist/collection/components/slider/bq-slider.js.map +1 -1
  153. package/dist/collection/components/spinner/bq-spinner.js +4 -4
  154. package/dist/collection/components/status/bq-status.js +1 -1
  155. package/dist/collection/components/step-item/bq-step-item.js +7 -4
  156. package/dist/collection/components/step-item/bq-step-item.js.map +1 -1
  157. package/dist/collection/components/steps/bq-steps.js +1 -1
  158. package/dist/collection/components/switch/bq-switch.js +2 -2
  159. package/dist/collection/components/tab/bq-tab.js +2 -2
  160. package/dist/collection/components/tab-group/bq-tab-group.js +3 -3
  161. package/dist/collection/components/tag/bq-tag.js +3 -3
  162. package/dist/collection/components/tag/scss/bq-tag.css +1 -1
  163. package/dist/collection/components/textarea/bq-textarea.js +3 -3
  164. package/dist/collection/components/toast/bq-toast.js +35 -29
  165. package/dist/collection/components/toast/bq-toast.js.map +1 -1
  166. package/dist/collection/components/tooltip/bq-tooltip.js +1 -1
  167. package/dist/collection/index.js +1 -0
  168. package/dist/collection/index.js.map +1 -1
  169. package/dist/collection/shared/utils/assetsPath.js +18 -7
  170. package/dist/collection/shared/utils/assetsPath.js.map +1 -1
  171. package/dist/components/assetsPath.js +18 -7
  172. package/dist/components/assetsPath.js.map +1 -1
  173. package/dist/components/bq-alert.js +17 -23
  174. package/dist/components/bq-alert.js.map +1 -1
  175. package/dist/components/bq-avatar.js +3 -3
  176. package/dist/components/bq-badge2.js +2 -2
  177. package/dist/components/bq-breadcrumb-item.js +3 -3
  178. package/dist/components/bq-breadcrumb.js +1 -1
  179. package/dist/components/bq-button2.js +2 -2
  180. package/dist/components/bq-card.js +2 -2
  181. package/dist/components/bq-checkbox.js +2 -2
  182. package/dist/components/bq-date-picker.js +7 -4
  183. package/dist/components/bq-date-picker.js.map +1 -1
  184. package/dist/components/bq-dialog.js +5 -5
  185. package/dist/components/bq-divider2.js +7 -4
  186. package/dist/components/bq-divider2.js.map +1 -1
  187. package/dist/components/bq-drawer.js +5 -5
  188. package/dist/components/bq-dropdown2.js +1 -1
  189. package/dist/components/bq-empty-state.js +4 -4
  190. package/dist/components/bq-icon2.js +11 -5
  191. package/dist/components/bq-icon2.js.map +1 -1
  192. package/dist/components/bq-input.js +4 -4
  193. package/dist/components/bq-notification.js +25 -17
  194. package/dist/components/bq-notification.js.map +1 -1
  195. package/dist/components/bq-option-group.js +1 -1
  196. package/dist/components/bq-option-list2.js +1 -1
  197. package/dist/components/bq-option.js +4 -4
  198. package/dist/components/bq-page-title.js +2 -2
  199. package/dist/components/bq-panel2.js +1 -1
  200. package/dist/components/bq-progress.js +4 -4
  201. package/dist/components/bq-radio-group.js +1 -1
  202. package/dist/components/bq-radio.js +2 -2
  203. package/dist/components/bq-select.js +14 -8
  204. package/dist/components/bq-select.js.map +1 -1
  205. package/dist/components/bq-side-menu.js +1 -1
  206. package/dist/components/bq-slider.js +10 -4
  207. package/dist/components/bq-slider.js.map +1 -1
  208. package/dist/components/bq-spinner.js +4 -4
  209. package/dist/components/bq-status.js +1 -1
  210. package/dist/components/bq-step-item.js +7 -4
  211. package/dist/components/bq-step-item.js.map +1 -1
  212. package/dist/components/bq-steps.js +1 -1
  213. package/dist/components/bq-switch.js +2 -2
  214. package/dist/components/bq-tab-group.js +3 -3
  215. package/dist/components/bq-tab.js +2 -2
  216. package/dist/components/bq-tag2.js +4 -4
  217. package/dist/components/bq-textarea.js +3 -3
  218. package/dist/components/bq-toast.js +28 -29
  219. package/dist/components/bq-toast.js.map +1 -1
  220. package/dist/components/bq-tooltip2.js +1 -1
  221. package/dist/esm/app-globals-de5a646b.js.map +1 -1
  222. package/dist/esm/{assetsPath-a1b58980.js → assetsPath-c02b0e16.js} +19 -8
  223. package/dist/esm/assetsPath-c02b0e16.js.map +1 -0
  224. package/dist/esm/beeq.js +1 -1
  225. package/dist/esm/bq-accordion-group.entry.js +1 -1
  226. package/dist/esm/bq-accordion.entry.js +1 -1
  227. package/dist/esm/bq-alert.entry.js +18 -24
  228. package/dist/esm/bq-alert.entry.js.map +1 -1
  229. package/dist/esm/bq-avatar.entry.js +4 -4
  230. package/dist/esm/bq-badge.entry.js +3 -3
  231. package/dist/esm/bq-breadcrumb-item.entry.js +5 -5
  232. package/dist/esm/bq-breadcrumb.entry.js +2 -2
  233. package/dist/esm/bq-button_2.entry.js +15 -9
  234. package/dist/esm/bq-button_2.entry.js.map +1 -1
  235. package/dist/esm/bq-card.entry.js +3 -3
  236. package/dist/esm/bq-checkbox.entry.js +3 -3
  237. package/dist/esm/bq-date-picker.entry.js +9 -6
  238. package/dist/esm/bq-date-picker.entry.js.map +1 -1
  239. package/dist/esm/bq-dialog.entry.js +6 -6
  240. package/dist/esm/bq-divider.entry.js +8 -5
  241. package/dist/esm/bq-divider.entry.js.map +1 -1
  242. package/dist/esm/bq-drawer.entry.js +6 -6
  243. package/dist/esm/bq-dropdown_2.entry.js +2 -2
  244. package/dist/esm/bq-empty-state.entry.js +5 -5
  245. package/dist/esm/bq-input.entry.js +6 -6
  246. package/dist/esm/bq-notification.entry.js +25 -18
  247. package/dist/esm/bq-notification.entry.js.map +1 -1
  248. package/dist/esm/bq-option-group.entry.js +1 -1
  249. package/dist/esm/bq-option-list_2.entry.js +6 -6
  250. package/dist/esm/bq-option.entry.js +5 -5
  251. package/dist/esm/bq-page-title.entry.js +3 -3
  252. package/dist/esm/bq-progress.entry.js +5 -5
  253. package/dist/esm/bq-radio-group.entry.js +2 -2
  254. package/dist/esm/bq-radio.entry.js +2 -2
  255. package/dist/esm/bq-select.entry.js +16 -10
  256. package/dist/esm/bq-select.entry.js.map +1 -1
  257. package/dist/esm/bq-side-menu-item.entry.js +1 -1
  258. package/dist/esm/bq-side-menu.entry.js +2 -2
  259. package/dist/esm/bq-slider.entry.js +11 -5
  260. package/dist/esm/bq-slider.entry.js.map +1 -1
  261. package/dist/esm/bq-spinner.entry.js +5 -5
  262. package/dist/esm/bq-status.entry.js +2 -2
  263. package/dist/esm/bq-step-item.entry.js +8 -5
  264. package/dist/esm/bq-step-item.entry.js.map +1 -1
  265. package/dist/esm/bq-steps.entry.js +2 -2
  266. package/dist/esm/bq-switch.entry.js +3 -3
  267. package/dist/esm/bq-tab-group.entry.js +4 -4
  268. package/dist/esm/bq-tab.entry.js +3 -3
  269. package/dist/esm/bq-textarea.entry.js +4 -4
  270. package/dist/esm/bq-toast.entry.js +28 -30
  271. package/dist/esm/bq-toast.entry.js.map +1 -1
  272. package/dist/esm/bq-tooltip.entry.js +1 -1
  273. package/dist/esm/index.js +3 -3
  274. package/dist/esm/{isDefined-170f3095.js → isDefined-1e676215.js} +2 -2
  275. package/dist/esm/{isDefined-170f3095.js.map → isDefined-1e676215.js.map} +1 -1
  276. package/dist/esm/loader.js +1 -1
  277. package/dist/hydrate/index.js +231 -177
  278. package/dist/hydrate/index.mjs +231 -177
  279. package/dist/stencil.config.js +6 -3
  280. package/dist/stencil.config.js.map +1 -1
  281. package/dist/types/Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System/packages/beeq/.stencil/packages/beeq/stencil.config.d.ts +2 -0
  282. package/dist/types/components/alert/bq-alert.d.ts +10 -4
  283. package/dist/types/components/date-picker/bq-date-picker.d.ts +1 -0
  284. package/dist/types/components/divider/bq-divider.d.ts +1 -0
  285. package/dist/types/components/icon/bq-icon.d.ts +3 -1
  286. package/dist/types/components/notification/bq-notification.d.ts +8 -0
  287. package/dist/types/components/select/bq-select.d.ts +2 -0
  288. package/dist/types/components/slider/bq-slider.d.ts +2 -0
  289. package/dist/types/components/step-item/bq-step-item.d.ts +1 -0
  290. package/dist/types/components/toast/bq-toast.d.ts +5 -0
  291. package/dist/types/components.d.ts +8 -8
  292. package/dist/types/index.d.ts +1 -1
  293. package/dist/types/shared/utils/assetsPath.d.ts +1 -1
  294. package/package.json +4 -4
  295. package/dist/beeq/p-063a3968.entry.js.map +0 -1
  296. package/dist/beeq/p-0979fdfd.entry.js.map +0 -1
  297. package/dist/beeq/p-1715ac80.entry.js.map +0 -1
  298. package/dist/beeq/p-2e66fc4f.entry.js.map +0 -1
  299. package/dist/beeq/p-6a4e104b.entry.js.map +0 -1
  300. package/dist/beeq/p-6a5a79a3.entry.js.map +0 -1
  301. package/dist/beeq/p-7f301da8.entry.js.map +0 -1
  302. package/dist/beeq/p-9990889d.entry.js.map +0 -1
  303. package/dist/beeq/p-bef53750.js.map +0 -1
  304. package/dist/beeq/p-c34e292e.entry.js.map +0 -1
  305. package/dist/cjs/assetsPath-3938a05d.js.map +0 -1
  306. package/dist/esm/assetsPath-a1b58980.js.map +0 -1
  307. package/dist/types/home/workflows/workspace/packages/beeq/.stencil/packages/beeq/stencil.config.d.ts +0 -2
  308. /package/dist/beeq/{p-dd950c12.entry.js.map → p-026222c6.entry.js.map} +0 -0
  309. /package/dist/beeq/{p-81f1c3ba.entry.js.map → p-05685544.entry.js.map} +0 -0
  310. /package/dist/beeq/{p-ffddc425.entry.js.map → p-0ebe73ef.entry.js.map} +0 -0
  311. /package/dist/beeq/{p-ac969486.entry.js.map → p-11eaeb5d.entry.js.map} +0 -0
  312. /package/dist/beeq/{p-e301647a.entry.js.map → p-12dbc6ac.entry.js.map} +0 -0
  313. /package/dist/beeq/{p-297fb76b.entry.js.map → p-19df76ba.entry.js.map} +0 -0
  314. /package/dist/beeq/{p-57a55ac5.entry.js.map → p-2ef721e1.entry.js.map} +0 -0
  315. /package/dist/beeq/{p-a6489187.entry.js.map → p-37466506.entry.js.map} +0 -0
  316. /package/dist/beeq/{p-db18eba1.entry.js.map → p-377c70d1.entry.js.map} +0 -0
  317. /package/dist/beeq/{p-39b7c578.entry.js.map → p-41033fe6.entry.js.map} +0 -0
  318. /package/dist/beeq/{p-e41f07ae.entry.js.map → p-43e4fcdb.entry.js.map} +0 -0
  319. /package/dist/beeq/{p-ffb48c40.entry.js.map → p-4a235cd2.entry.js.map} +0 -0
  320. /package/dist/beeq/{p-14b44a4b.entry.js.map → p-4a3d8532.entry.js.map} +0 -0
  321. /package/dist/beeq/{p-548b45b7.entry.js.map → p-4dd962a7.entry.js.map} +0 -0
  322. /package/dist/beeq/{p-e3aa2886.entry.js.map → p-4eccc020.entry.js.map} +0 -0
  323. /package/dist/beeq/{p-39d77ba6.entry.js.map → p-4fc098bb.entry.js.map} +0 -0
  324. /package/dist/beeq/{p-4688e046.js.map → p-513bab02.js.map} +0 -0
  325. /package/dist/beeq/{p-0f48adcc.entry.js.map → p-5eab4f55.entry.js.map} +0 -0
  326. /package/dist/beeq/{p-36652891.entry.js.map → p-600e7c38.entry.js.map} +0 -0
  327. /package/dist/beeq/{p-49249dda.entry.js.map → p-7089c66a.entry.js.map} +0 -0
  328. /package/dist/beeq/{p-e88257a8.entry.js.map → p-734853f9.entry.js.map} +0 -0
  329. /package/dist/beeq/{p-fd658de1.entry.js.map → p-7774eec3.entry.js.map} +0 -0
  330. /package/dist/beeq/{p-2bb65f53.entry.js.map → p-7c06dfec.entry.js.map} +0 -0
  331. /package/dist/beeq/{p-5e11b866.entry.js.map → p-900d4e78.entry.js.map} +0 -0
  332. /package/dist/beeq/{p-f77d9b8b.entry.js.map → p-ae94b9f8.entry.js.map} +0 -0
  333. /package/dist/beeq/{p-822773ae.entry.js.map → p-b4278945.entry.js.map} +0 -0
  334. /package/dist/beeq/{p-a1b43de6.entry.js.map → p-b48545b6.entry.js.map} +0 -0
  335. /package/dist/beeq/{p-e9a54b49.entry.js.map → p-c907de72.entry.js.map} +0 -0
  336. /package/dist/beeq/{p-afc9fd80.entry.js.map → p-e7d75b87.entry.js.map} +0 -0
  337. /package/dist/beeq/{p-242ac28a.entry.js.map → p-f00abfb8.entry.js.map} +0 -0
  338. /package/dist/beeq/{p-bf2320dd.entry.js.map → p-f8663855.entry.js.map} +0 -0
  339. /package/dist/types/{home/workflows/workspace → Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System}/packages/beeq/.stencil/tailwind.config.d.ts +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"names":["ALERT_TYPE","bqAlertCss","BqAlertStyle0","BqAlert","this","handleHide","async","ev","bqHide","emit","el","defaultPrevented","leave","alertElement","classList","add","handleTransitionEnd","open","handleShow","bqShow","remove","enter","bqAfterOpen","bqAfterClose","handleContentSlotChange","hasContent","hasSlotContent","bodyElem","handleFooterSlotChange","hasFooter","footerElem","handleTimeout","_a","autoDismissDebounce","cancel","autoDismiss","debounce","hide","time","handleOpenChange","checkPropValues","validatePropValue","componentWillLoad","componentDidLoad","show","iconName","type","render","style","border","h","Host","key","class","sticky","hidden","role","ref","div","part","disableClose","appearance","size","onClick","name","hideIcon","exportparts","onSlotchange"],"sources":["../../packages/beeq/src/components/alert/bq-alert.types.ts","../../packages/beeq/src/components/alert/scss/bq-alert.scss?tag=bq-alert&encapsulation=shadow","../../packages/beeq/src/components/alert/bq-alert.tsx"],"sourcesContent":["export const ALERT_TYPE = ['info', 'success', 'warning', 'error', 'default'] as const;\nexport type TAlertType = (typeof ALERT_TYPE)[number];\n\nexport const ALERT_BORDER_RADIUS = ['none', 'xs2', 'xs', 's', 'm', 'l', 'full'] as const;\nexport type TAlertBorderRadius = (typeof ALERT_BORDER_RADIUS)[number];\n","/* -------------------------------------------------------------------------- */\n/* Alert styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-alert.variables';\n\n:host {\n @apply block;\n}\n\n:host(.is-hidden) {\n @apply hidden;\n}\n\n:host(.is-sticky) {\n @apply fixed inset-0 z-[var(--bq-alert--z-index)] is-full inset-bs-0;\n\n .bq-alert {\n @apply items-center justify-center rounded-none;\n }\n}\n\n.bq-alert {\n @apply relative flex transition-all min-is-[--bq-alert--min-width] p-b-[--bq-alert--padding] p-i-[--bq-alert--padding];\n @apply rounded-[var(--bq-alert--border-radius)] border-[length:--bq-alert--border-width];\n\n border-style: var(--bq-alert--border-style);\n}\n\n/**\n * Set the alert background and border color based on the type value selected\n */\n\n.bq-alert__default {\n @apply border-[color:--bq-alert--border-default] bg-[color:--bq-alert--background-default];\n}\n\n.bq-alert__error {\n @apply border-[color:--bq-alert--border-error] bg-[color:--bq-alert--background-error];\n}\n\n.bq-alert__info {\n @apply border-[color:--bq-alert--border-info] bg-[color:--bq-alert--background-info];\n}\n\n.bq-alert__success {\n @apply border-[color:--bq-alert--border-success] bg-[color:--bq-alert--background-success];\n}\n\n.bq-alert__warning {\n @apply border-[color:--bq-alert--border-warning] bg-[color:--bq-alert--background-warning];\n}\n\n/**\n * Set the alert icon color based on the type value selected\n */\n.bq-alert__icon {\n &--default {\n @apply text-[color:--bq-alert--icon-color-default];\n }\n\n &--error {\n @apply text-[color:--bq-alert--icon-color-error];\n }\n\n &--info {\n @apply text-[color:--bq-alert--icon-color-info];\n }\n\n &--success {\n @apply text-[color:--bq-alert--icon-color-success];\n }\n\n &--warning {\n @apply text-[color:--bq-alert--icon-color-warning];\n }\n}\n\n/**\n * Tweak the close bq-button styles so it remain small without extra padding\n */\n.bq-alert__close::part(button) {\n @apply rounded-s border-0 bs-fit p-b-0 p-i-0;\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch } from '@stencil/core';\n\nimport { ALERT_TYPE, TAlertBorderRadius, TAlertType } from './bq-alert.types';\nimport { debounce, enter, hasSlotContent, leave, TDebounce, validatePropValue } from '../../shared/utils';\n\n/**\n * @part base - The `<div>` container of the predefined bq-icon component\n * @part body - The container `<div>` that wraps the alert description content\n * @part btn-close - The `bq-button` used to close the alert\n * @part content - The container `<div>` that wraps all the alert content (title, description, footer)\n * @part footer - The container `<div>` that wraps the alert footer content\n * @part icon - The `<bq-icon>` element used to render a predefined icon based on the alert type (info, success, warning, error, default)\n * @part icon-outline - The container `<div>` that wraps the icon element\n * @part main - The container `<div>` that wraps the alert main content (title, description)\n * @part svg - The `<svg>` element of the predefined bq-icon component\n * @part title - The container `<div>` that wraps the alert title content\n * @part wrapper - The wrapper container `<div>` of the element inside the shadow DOM\n */\n\n@Component({\n tag: 'bq-alert',\n styleUrl: './scss/bq-alert.scss',\n shadow: true,\n})\nexport class BqAlert {\n // Own Properties\n // ====================\n\n private autoDismissDebounce: TDebounce<void>;\n private bodyElem: HTMLDivElement;\n private footerElem: HTMLDivElement;\n private alertElement: HTMLDivElement;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqAlertElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() private hasContent = false;\n @State() private hasFooter = false;\n\n // Public Property API\n // ========================\n\n /** If true, the alert will automatically hide after the specified amount of time */\n @Prop({ reflect: true }) autoDismiss: boolean;\n\n /** The corner radius of the alert component */\n @Prop({ reflect: true }) border: TAlertBorderRadius = 's';\n\n /** If true, the close button at the top right of the alert won't be shown */\n @Prop({ reflect: true }) disableClose: boolean;\n\n /** If true, the alert icon won't be shown */\n @Prop({ reflect: true }) hideIcon: boolean;\n\n /** If true, the alert will be shown */\n @Prop({ reflect: true, mutable: true }) open: boolean;\n\n /** The length of time, in milliseconds, after which the alert will close itself. Only valid if `autoDismiss=\"true\"` */\n @Prop({ reflect: true }) time: number = 3000;\n\n /** Type of Alert */\n @Prop({ reflect: true }) type: TAlertType = 'default';\n\n /** If true, the alert component will remain fixed at the top of the page, occupying the full viewport */\n @Prop({ reflect: true }) sticky: boolean;\n\n // Prop lifecycle events\n // =======================\n @Watch('autoDismiss')\n @Watch('time')\n handleTimeout() {\n this.autoDismissDebounce?.cancel();\n if (!this.autoDismiss) return;\n\n this.autoDismissDebounce = debounce(() => {\n this.hide();\n }, this.time);\n // Make sure to autodismiss the notification if the `auto-dismiss` value changed while open\n if (this.open) this.autoDismissDebounce();\n }\n\n @Watch('open')\n handleOpenChange() {\n this.autoDismissDebounce?.cancel();\n\n if (!this.open) {\n this.handleHide();\n return;\n }\n\n this.handleShow();\n\n if (this.autoDismiss) {\n this.autoDismissDebounce();\n }\n }\n\n @Watch('type')\n checkPropValues() {\n validatePropValue(ALERT_TYPE, 'info', this.el, 'type');\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Callback handler to be called when the alert is hidden */\n @Event() bqHide!: EventEmitter;\n\n /** Callback handler to be called when the alert is shown */\n @Event() bqShow!: EventEmitter;\n\n /** Callback handler to be called after the alert has been opened */\n @Event() bqAfterOpen!: EventEmitter;\n\n /** Callback handler to be called after the alert has been closed */\n @Event() bqAfterClose!: EventEmitter;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.checkPropValues();\n this.handleTimeout();\n }\n\n componentDidLoad() {\n if (!this.open) {\n this.el.classList.add('is-hidden');\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 /** Method to be called to hide the alert component */\n @Method()\n async hide(): Promise<void> {\n await this.handleHide();\n }\n /** Method to be called to show the alert component */\n @Method()\n async show(): Promise<void> {\n await this.handleShow();\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleHide = async () => {\n const ev = this.bqHide.emit(this.el);\n if (!ev.defaultPrevented) {\n await leave(this.alertElement);\n this.el.classList.add('is-hidden');\n this.handleTransitionEnd();\n this.open = false;\n }\n };\n\n private handleShow = async () => {\n const ev = this.bqShow.emit(this.el);\n if (!ev.defaultPrevented) {\n this.open = true;\n this.el.classList.remove('is-hidden');\n await enter(this.alertElement);\n this.handleTransitionEnd();\n }\n };\n\n private handleTransitionEnd = () => {\n if (this.open) {\n this.bqAfterOpen.emit();\n return;\n }\n\n this.bqAfterClose.emit();\n };\n\n private handleContentSlotChange = () => {\n this.hasContent = hasSlotContent(this.bodyElem, 'body');\n };\n\n private handleFooterSlotChange = () => {\n this.hasFooter = hasSlotContent(this.footerElem, 'footer');\n };\n\n private get iconName(): string {\n switch (this.type) {\n case 'error':\n return 'x-circle';\n case 'success':\n return 'check-circle';\n case 'warning':\n return 'warning-circle';\n default:\n return 'info';\n }\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n const style = {\n ...(this.border && { '--bq-alert--border-radius': `var(--bq-radius--${this.border})` }),\n };\n\n return (\n <Host\n style={style}\n class={{ 'is-sticky': this.sticky }}\n aria-hidden={!this.open ? 'true' : 'false'}\n hidden={!this.open ? 'true' : 'false'}\n role=\"alert\"\n >\n <div\n class={{\n [`bq-alert bq-alert__${this.type}`]: true,\n 'is-sticky': this.sticky,\n }}\n data-transition-enter=\"transition ease-out duration-300\"\n data-transition-enter-start=\"opacity-0\"\n data-transition-enter-end=\"opacity-100\"\n data-transition-leave=\"transition ease-in duration-200\"\n data-transition-leave-start=\"opacity-100\"\n data-transition-leave-end=\"opacity-0\"\n ref={(div) => (this.alertElement = div)}\n part=\"wrapper\"\n >\n {/* CLOSE BUTTON */}\n {!this.disableClose && (\n <bq-button\n class=\"bq-alert__close absolute end-5 focus-visible:focus\"\n appearance=\"text\"\n size=\"small\"\n onClick={() => this.hide()}\n part=\"btn-close\"\n >\n <bq-icon name=\"x\" />\n </bq-button>\n )}\n {/* ICON */}\n <div\n class={{\n [`bq-alert__icon--${this.type} me-s flex text-left align-top`]: true,\n '!hidden': this.hideIcon,\n }}\n part=\"icon-outline\"\n >\n <slot name=\"icon\">\n {this.type !== 'default' && <bq-icon name={this.iconName} part=\"icon\" exportparts=\"base,svg\" />}\n </slot>\n </div>\n {/* MAIN */}\n <div class=\"flex flex-col items-start gap-[--bq-alert--content-footer-gap]\" part=\"main\">\n <div class=\"flex flex-col gap-[--bq-alert--title-body-gap]\" part=\"content\">\n {/* TITLE */}\n <div\n class={{\n 'title-font font-semibold leading-regular text-text-primary': true,\n 'flex items-center': this.sticky,\n }}\n part=\"title\"\n >\n <slot />\n </div>\n {/* BODY */}\n <div\n class={{ 'text-s leading-regular': true, '!hidden': !this.hasContent }}\n ref={(div) => (this.bodyElem = div)}\n part=\"body\"\n >\n <slot name=\"body\" onSlotchange={this.handleContentSlotChange} />\n </div>\n </div>\n {/* FOOTER */}\n <div\n class={{ 'flex items-start gap-xs': true, '!hidden': !this.hasFooter }}\n ref={(div) => (this.footerElem = div)}\n part=\"footer\"\n >\n <slot name=\"footer\" onSlotchange={this.handleFooterSlotChange} />\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAO,MAAMA,IAAa,EAAC,QAAQ,WAAW,WAAW,SAAS;;ACAlE,MAAMC,IAAa;;AACnB,MAAAC,IAAeD;;MCuBFE,IAAO;;;;;;;;;;;QA6IVC,KAAAC,aAAaC;MACnB,MAAMC,IAAKH,KAAKI,OAAOC,KAAKL,KAAKM;MACjC,KAAKH,EAAGI,kBAAkB;cAClBC,EAAMR,KAAKS;QACjBT,KAAKM,GAAGI,UAAUC,IAAI;QACtBX,KAAKY;QACLZ,KAAKa,OAAO;;;IAIRb,KAAAc,aAAaZ;MACnB,MAAMC,IAAKH,KAAKe,OAAOV,KAAKL,KAAKM;MACjC,KAAKH,EAAGI,kBAAkB;QACxBP,KAAKa,OAAO;QACZb,KAAKM,GAAGI,UAAUM,OAAO;cACnBC,EAAMjB,KAAKS;QACjBT,KAAKY;;;IAIDZ,KAAAY,sBAAsB;MAC5B,IAAIZ,KAAKa,MAAM;QACbb,KAAKkB,YAAYb;QACjB;;MAGFL,KAAKmB,aAAad;AAAM;IAGlBL,KAAAoB,0BAA0B;MAChCpB,KAAKqB,aAAaC,EAAetB,KAAKuB,UAAU;AAAO;IAGjDvB,KAAAwB,yBAAyB;MAC/BxB,KAAKyB,YAAYH,EAAetB,KAAK0B,YAAY;AAAS;sBA7J9B;qBACD;;kBASyB;;;;gBAYd;gBAGI;;;;;EAS5C,aAAAC;;KACEC,IAAA5B,KAAK6B,yBAAmB,QAAAD,WAAA,aAAAA,EAAEE;IAC1B,KAAK9B,KAAK+B,aAAa;IAEvB/B,KAAK6B,sBAAsBG,GAAS;MAClChC,KAAKiC;AAAM,QACVjC,KAAKkC;;QAER,IAAIlC,KAAKa,MAAMb,KAAK6B;;EAItB,gBAAAM;;KACEP,IAAA5B,KAAK6B,yBAAmB,QAAAD,WAAA,aAAAA,EAAEE;IAE1B,KAAK9B,KAAKa,MAAM;MACdb,KAAKC;MACL;;IAGFD,KAAKc;IAEL,IAAId,KAAK+B,aAAa;MACpB/B,KAAK6B;;;EAKT,eAAAO;IACEC,EAAkBzC,GAAY,QAAQI,KAAKM,IAAI;;;;;EAuBjD,iBAAAgC;IACEtC,KAAKoC;IACLpC,KAAK2B;;EAGP,gBAAAY;IACE,KAAKvC,KAAKa,MAAM;MACdb,KAAKM,GAAGI,UAAUC,IAAI;;;;;;;;;;;;EAgB1B,UAAMsB;UACEjC,KAAKC;;0DAIb,UAAMuC;UACExC,KAAKc;;EA6Cb,YAAY2B;IACV,QAAQzC,KAAK0C;KACX,KAAK;MACH,OAAO;;KACT,KAAK;MACH,OAAO;;KACT,KAAK;MACH,OAAO;;KACT;MACE,OAAO;;;;;;EAQb,MAAAC;IACE,MAAMC,IAAQ;SACR5C,KAAK6C,UAAU;QAAE,6BAA6B,oBAAoB7C,KAAK6C;;;IAG7E,OACEC,EAACC,GAAI;MAAAC,KAAA;MACHJ,OAAOA;MACPK,OAAO;QAAE,aAAajD,KAAKkD;;MAAQ,gBACrBlD,KAAKa,OAAO,SAAS;MACnCsC,SAASnD,KAAKa,OAAO,SAAS;MAC9BuC,MAAK;OAELN,EAAA;MAAAE,KAAA;MACEC,OAAO;QACL,CAAC,sBAAsBjD,KAAK0C,SAAS;QACrC,aAAa1C,KAAKkD;;MACnB,yBACqB;MAAkC,+BAC5B;MAAW,6BACb;MAAa,yBACjB;MAAiC,+BAC3B;MAAa,6BACf;MAC1BG,KAAMC,KAAStD,KAAKS,eAAe6C;MACnCC,MAAK;QAGHvD,KAAKwD,gBACLV,EAAA;MAAAE,KAAA;MACEC,OAAM;MACNQ,YAAW;MACXC,MAAK;MACLC,SAAS,MAAM3D,KAAKiC;MACpBsB,MAAK;OAELT,EAAA;MAAAE,KAAA;MAASY,MAAK;SAIlBd,EAAA;MAAAE,KAAA;MACEC,OAAO;QACL,CAAC,mBAAmBjD,KAAK0C,uCAAuC;QAChE,WAAW1C,KAAK6D;;MAElBN,MAAK;OAELT,EAAA;MAAAE,KAAA;MAAMY,MAAK;OACR5D,KAAK0C,SAAS,aAAaI,EAAA;MAAAE,KAAA;MAASY,MAAM5D,KAAKyC;MAAUc,MAAK;MAAOO,aAAY;UAItFhB,EAAA;MAAAE,KAAA;MAAKC,OAAM;MAAiEM,MAAK;OAC/ET,EAAA;MAAAE,KAAA;MAAKC,OAAM;MAAiDM,MAAK;OAE/DT,EAAA;MAAAE,KAAA;MACEC,OAAO;QACL,8DAA8D;QAC9D,qBAAqBjD,KAAKkD;;MAE5BK,MAAK;OAELT,EAAA;MAAAE,KAAA;SAGFF,EAAA;MAAAE,KAAA;MACEC,OAAO;QAAE,0BAA0B;QAAM,YAAYjD,KAAKqB;;MAC1DgC,KAAMC,KAAStD,KAAKuB,WAAW+B;MAC/BC,MAAK;OAELT,EAAA;MAAAE,KAAA;MAAMY,MAAK;MAAOG,cAAc/D,KAAKoB;UAIzC0B,EAAA;MAAAE,KAAA;MACEC,OAAO;QAAE,2BAA2B;QAAM,YAAYjD,KAAKyB;;MAC3D4B,KAAMC,KAAStD,KAAK0B,aAAa4B;MACjCC,MAAK;OAELT,EAAA;MAAAE,KAAA;MAAMY,MAAK;MAASG,cAAc/D,KAAKwB","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["DIVIDER_ORIENTATION","DIVIDER_ORIENTATION_ENUM","HORIZONTAL","VERTICAL","DIVIDER_TITLE_ALIGNMENT","DIVIDER_STROKE_LINECAP","bqDividerCss","BqDividerStyle0","BqDivider","this","handleSlotChange","hasTitle","hasSlotContent","titleElem","getTextContent","querySelector","checkPropValues","validatePropValue","el","connectedCallback","componentDidLoad","strokeAttributes","strokeDrawPositions","dashed","strokeDasharray","strokeLinecap","strokeThickness","drawOffset","x1","x2","y1","y2","orientationMap","Map","Object","entries","get","orientation","strokeDashWidth","strokeDashGap","render","styles","strokeColor","getColorCSSVariable","isNil","strokeBasis","h","Host","key","style","class","titleAlignment","part","ref","div","role","onSlotchange"],"sources":["../../packages/beeq/src/components/divider/bq-divider.types.ts","../../packages/beeq/src/components/divider/scss/bq-divider.scss?tag=bq-divider&encapsulation=shadow","../../packages/beeq/src/components/divider/bq-divider.tsx"],"sourcesContent":["export const DIVIDER_ORIENTATION = ['horizontal', 'vertical'] as const;\nexport type TDividerOrientation = (typeof DIVIDER_ORIENTATION)[number];\n\nexport const DIVIDER_ORIENTATION_ENUM = {\n HORIZONTAL: 'horizontal',\n VERTICAL: 'vertical',\n} as const;\n\nexport const DIVIDER_TITLE_ALIGNMENT = ['start', 'middle', 'end'] as const;\nexport type TDividerTitleAlignment = (typeof DIVIDER_TITLE_ALIGNMENT)[number];\n\nexport const DIVIDER_STROKE_LINECAP = ['square', 'round', 'butt'] as const;\nexport type TDividerStrokeLinecap = (typeof DIVIDER_STROKE_LINECAP)[number];\n","/* -------------------------------------------------------------------------- */\n/* Button styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-divider.variables';\n\n:host {\n @apply block is-full;\n}\n\n:host([orientation='vertical']) {\n @apply flex bs-full;\n}\n\n.bq-divider {\n @apply flex items-center gap-[var(--bq-divider--title-marginX)];\n}\n\n.bq-divider--stroke {\n @apply flex-grow stroke-[color:var(--bq-divider--stroke-color)] bs-[var(--bq-divider--stroke-thickness)] is-full;\n\n &.end {\n @apply rotate-180;\n }\n}\n\n.bq-divider--title__start .bq-divider--stroke.start,\n.bq-divider--title__end .bq-divider--stroke.end {\n @apply flex-grow-0 basis-[var(--bq-divider--stroke-basis)];\n}\n\n.bq-divider--vertical {\n @apply flex-col items-center gap-[var(--bq-divider--title-marginX)] is-full;\n\n .bq-divider--stroke {\n @apply bs-full is-[var(--bq-divider--stroke-thickness)];\n }\n}\n","import { Component, Element, h, Host, Prop, State, Watch } from '@stencil/core';\n\nimport {\n DIVIDER_ORIENTATION,\n DIVIDER_ORIENTATION_ENUM,\n DIVIDER_STROKE_LINECAP,\n DIVIDER_TITLE_ALIGNMENT,\n TDividerOrientation,\n TDividerStrokeLinecap,\n TDividerTitleAlignment,\n} from './bq-divider.types';\nimport { getColorCSSVariable, getTextContent, hasSlotContent, isNil, validatePropValue } from '../../shared/utils';\n\n/**\n * @part base - The component's internal wrapper.\n * @part dash-start - The component's internal svg wrapper for the start line of the divider's stroke\n * @part dash-end - The component's internal svg wrapper for the end line of the divider's stroke\n * @part dash-start-line - The component's internal line component of the divider's stroke\n * @part dash-end-line - The component's internal line component of the divider's stroke\n */\n@Component({\n tag: 'bq-divider',\n styleUrl: './scss/bq-divider.scss',\n shadow: true,\n})\nexport class BqDivider {\n // Own Properties\n // ====================\n\n private titleElem: HTMLDivElement;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqDividerElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() private hasTitle: boolean;\n\n // Public Property API\n // ========================\n\n /** If true, the divider has a dashed pattern */\n @Prop() dashed = false;\n\n /** The default orientation of the divider */\n @Prop({ reflect: true }) orientation: TDividerOrientation = 'horizontal';\n\n /** Set the stroke color of the divider. The value should be a valid value of the palette color */\n @Prop({ reflect: true }) strokeColor?: string = 'stroke--primary';\n\n /** Set the alignment of the title on the main axis of the divider (horizontal / vertical) */\n @Prop({ reflect: true }) titleAlignment?: TDividerTitleAlignment = 'middle';\n\n /** Set the width of each dash of the divider's stroke. This is applicable when the stroke is dashed */\n @Prop({ reflect: true }) strokeDashWidth?: number = 12;\n\n /** Set the gap of the divider's stroke. This is applicable when the stroke is dashed */\n @Prop({ reflect: true }) strokeDashGap?: number = 7;\n\n /** Set the thickness of the divider's stroke. Value expressed in px*/\n @Prop({ reflect: true }) strokeThickness?: number = 1;\n\n /** Set the min width of the divider's stroke when text is not centered. Value expressed in px */\n @Prop({ reflect: true }) strokeBasis?: number = 0;\n\n /** Set the line of the divider's stroke. This is applicable when the stroke is dashed */\n @Prop({ reflect: true }) strokeLinecap?: TDividerStrokeLinecap = 'butt';\n\n // Prop lifecycle events\n // =======================\n\n @Watch('orientation')\n @Watch('titleAlignment')\n @Watch('strokeLinecap')\n checkPropValues() {\n validatePropValue(DIVIDER_ORIENTATION, 'horizontal', this.el, 'orientation');\n validatePropValue(DIVIDER_TITLE_ALIGNMENT, 'middle', this.el, 'titleAlignment');\n validatePropValue(DIVIDER_STROKE_LINECAP, 'butt', this.el, 'strokeLinecap');\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 connectedCallback() {\n this.checkPropValues();\n }\n\n componentDidLoad() {\n this.handleSlotChange();\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 handleSlotChange = () => {\n this.hasTitle = hasSlotContent(this.titleElem) || !!getTextContent(this.titleElem.querySelector('slot'));\n };\n\n private get strokeAttributes() {\n return {\n ...this.strokeDrawPositions,\n ...(this.dashed && { 'stroke-dasharray': this.strokeDasharray }),\n 'stroke-linecap': this.strokeLinecap,\n 'stroke-width': this.strokeThickness,\n };\n }\n\n private get strokeDrawPositions() {\n const drawOffset = this.strokeThickness / 2;\n const strokeDrawPositions = {\n [DIVIDER_ORIENTATION_ENUM.HORIZONTAL]: { x1: drawOffset, x2: '100%', y1: drawOffset, y2: drawOffset },\n [DIVIDER_ORIENTATION_ENUM.VERTICAL]: { x1: drawOffset, x2: drawOffset, y1: drawOffset, y2: '100%' },\n };\n const orientationMap = new Map(Object.entries(strokeDrawPositions));\n\n return orientationMap.get(this.orientation);\n }\n\n private get strokeDasharray() {\n return `${this.strokeDashWidth}, ${this.strokeDashGap}`;\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n const styles = {\n ...(this.strokeColor && { '--bq-divider--stroke-color': getColorCSSVariable(this.strokeColor) }),\n ...(this.strokeThickness && { '--bq-divider--stroke-thickness': `${this.strokeThickness}px` }),\n ...(!isNil(this.strokeBasis) && { '--bq-divider--stroke-basis': `${this.strokeBasis}px` }),\n };\n\n return (\n <Host style={styles}>\n <div\n class={{\n 'bq-divider': true,\n [`bq-divider--${this.orientation}`]: true,\n [`bq-divider--title__${this.titleAlignment}`]: true,\n 'gap-0': !this.hasTitle,\n }}\n part=\"base\"\n ref={(div) => (this.titleElem = div)}\n role=\"separator\"\n aria-orientation={this.orientation}\n >\n <svg\n class={{\n 'bq-divider--stroke start': true,\n '!hidden': this.strokeBasis === 0 && this.titleAlignment === 'start',\n }}\n part=\"dash-start\"\n >\n <line {...this.strokeAttributes} part=\"dash-start-line\" />\n </svg>\n <slot onSlotchange={this.handleSlotChange} />\n <svg\n class={{\n 'bq-divider--stroke end': true,\n '!hidden': !this.hasTitle || (this.strokeBasis === 0 && this.titleAlignment === 'end'),\n }}\n part=\"dash-end\"\n >\n <line {...this.strokeAttributes} part=\"dash-end-line\" />\n </svg>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAAO,MAAMA,IAAsB,EAAC,cAAc;;AAG3C,MAAMC,IAA2B;EACtCC,YAAY;EACZC,UAAU;;;AAGL,MAAMC,IAA0B,EAAC,SAAS,UAAU;;AAGpD,MAAMC,IAAyB,EAAC,UAAU,SAAS;;ACX1D,MAAMC,IAAe;;AACrB,MAAAC,IAAeD;;MCwBFE,IAAS;;;;;;;;;;;;;;;QA0FZC,KAAAC,mBAAmB;MACzBD,KAAKE,WAAWC,EAAeH,KAAKI,gBAAgBC,EAAeL,KAAKI,UAAUE,cAAc;AAAQ;;kBAtEzF;uBAG2C;uBAGZ;0BAGmB;2BAGf;yBAGF;2BAGE;uBAGJ;yBAGiB;;;;EAQjE,eAAAC;IACEC,EAAkBjB,GAAqB,cAAcS,KAAKS,IAAI;IAC9DD,EAAkBb,GAAyB,UAAUK,KAAKS,IAAI;IAC9DD,EAAkBZ,GAAwB,QAAQI,KAAKS,IAAI;;;;;;;;EAW7D,iBAAAC;IACEV,KAAKO;;EAGP,gBAAAI;IACEX,KAAKC;;EAsBP,oBAAYW;IACV,OAAO;SACFZ,KAAKa;SACJb,KAAKc,UAAU;QAAE,oBAAoBd,KAAKe;;MAC9C,kBAAkBf,KAAKgB;MACvB,gBAAgBhB,KAAKiB;;;EAIzB,uBAAYJ;IACV,MAAMK,IAAalB,KAAKiB,kBAAkB;IAC1C,MAAMJ,IAAsB;MAC1B,CAACrB,EAAyBC,aAAa;QAAE0B,IAAID;QAAYE,IAAI;QAAQC,IAAIH;QAAYI,IAAIJ;;MACzF,CAAC1B,EAAyBE,WAAW;QAAEyB,IAAID;QAAYE,IAAIF;QAAYG,IAAIH;QAAYI,IAAI;;;IAE7F,MAAMC,IAAiB,IAAIC,IAAIC,OAAOC,QAAQb;IAE9C,OAAOU,EAAeI,IAAI3B,KAAK4B;;EAGjC,mBAAYb;IACV,OAAO,GAAGf,KAAK6B,oBAAoB7B,KAAK8B;;;;;EAO1C,MAAAC;IACE,MAAMC,IAAS;SACThC,KAAKiC,eAAe;QAAE,8BAA8BC,EAAoBlC,KAAKiC;;SAC7EjC,KAAKiB,mBAAmB;QAAE,kCAAkC,GAAGjB,KAAKiB;;UACnEkB,EAAMnC,KAAKoC,gBAAgB;QAAE,8BAA8B,GAAGpC,KAAKoC;;;IAG1E,OACEC,EAACC,GAAI;MAAAC,KAAA;MAACC,OAAOR;OACXK,EAAA;MAAAE,KAAA;MACEE,OAAO;QACL,cAAc;QACd,CAAC,eAAezC,KAAK4B,gBAAgB;QACrC,CAAC,sBAAsB5B,KAAK0C,mBAAmB;QAC/C,UAAU1C,KAAKE;;MAEjByC,MAAK;MACLC,KAAMC,KAAS7C,KAAKI,YAAYyC;MAChCC,MAAK;MAAW,oBACE9C,KAAK4B;OAEvBS,EAAA;MAAAE,KAAA;MACEE,OAAO;QACL,4BAA4B;QAC5B,WAAWzC,KAAKoC,gBAAgB,KAAKpC,KAAK0C,mBAAmB;;MAE/DC,MAAK;OAELN,EAAA;MAAAE,KAAA;SAAUvC,KAAKY;MAAkB+B,MAAK;SAExCN,EAAA;MAAAE,KAAA;MAAMQ,cAAc/C,KAAKC;QACzBoC,EAAA;MAAAE,KAAA;MACEE,OAAO;QACL,0BAA0B;QAC1B,YAAYzC,KAAKE,YAAaF,KAAKoC,gBAAgB,KAAKpC,KAAK0C,mBAAmB;;MAElFC,MAAK;OAELN,EAAA;MAAAE,KAAA;SAAUvC,KAAKY;MAAkB+B,MAAK","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["bqSelectCss","BqSelectStyle0","BqSelect","this","fallbackInputId","handleBlur","disabled","bqBlur","emit","el","handleFocus","bqFocus","handleSelect","ev","multiple","stopPropagation","value","item","detail","handleMultipleSelection","inputElem","bqSelect","resetOptionsVisibility","focus","selectedOptionsSet","Set","selectedOptions","has","delete","add","Array","from","map","handleSearchFilter","_a","debounceQuery","cancel","query","_b","target","toLowerCase","trim","isDefined","clear","debounce","options","forEach","itemLabel","getOptionLabel","hidden","includes","debounceTime","open","handleClearClick","handleTagRemove","handleLabelSlotChange","hasLabel","hasSlotContent","labelElem","handlePrefixSlotChange","hasPrefix","prefixElem","handleSuffixSlotChange","hasSuffix","suffixElem","handleHelperTextSlotChange","hasHelperText","helperTextElem","syncItemsFromValue","internals","length","syncSelectedOptionsState","filter","option","updateDisplayLabel","setFormValue","isNil","undefined","lowerCaseValue","String","isArray","selected","checkedItem","find","displayValue","innerText","handleValueChange","isString","JSON","parse","join","connectedCallback","componentDidLoad","formAssociatedCallback","role","ariaExpanded","formResetCallback","setValidity","handleOpenChange","composedPath","stopOptionFocusBlurPropagation","isHTMLElement","bqClear","querySelectorAll","displayPlaceholder","placeholder","displayTags","index","maxTagsVisible","h","key","removable","size","variant","onBqClose","event","onClick","exportparts","part","hasClearIcon","disableClear","render","labelId","name","class","id","htmlFor","ref","onSlotchange","distance","keepOpenOnSelect","panelHeight","placement","sameWidth","skidding","strategy","validationStatus","slot","spanElem","autoComplete","autoCapitalize","autoFocus","autofocus","form","readOnly","readonly","required","spellcheck","type","onBlur","onFocus","onInput","appearance","clearButtonLabel","onBqClick","tabIndex","onBqSelect","divElem"],"sources":["../../packages/beeq/src/components/select/scss/bq-select.scss?tag=bq-select&encapsulation=shadow","../../packages/beeq/src/components/select/bq-select.tsx"],"sourcesContent":["/* -------------------------------------------------------------------------- */\n/* Select styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-select.variables';\n\n:host {\n @apply block w-full;\n}\n\n/* -------------------------------------------------------------------------- */\n/* Label and Helper text */\n/* -------------------------------------------------------------------------- */\n\n.bq-select__label {\n @apply flex items-center m-be-[--bq-select--label-margin-bottom];\n @apply text-[length:--bq-select--label-text-size] text-[color:--bq-select--label-text-color];\n}\n\n.bq-select__helper-text {\n @apply text-[length:--bq-select--helper-text-size] text-[color:--bq-select--helper-text-color] m-bs-[--bq-select--helper-margin-top];\n}\n\n.bq-select__helper-text.validation-error {\n @apply text-text-danger;\n}\n\n.bq-select__helper-text.validation-success {\n @apply text-text-success;\n}\n\n.bq-select__helper-text.validation-warning {\n @apply text-text-warning;\n}\n\n/* -------------------------------------------------------------------------- */\n/* Select input group control */\n/* -------------------------------------------------------------------------- */\n\n.bq-select__dropdown:has(:focus-within, :focus-visible) {\n // The focus state will be controlled by the dropdown element\n // if any of its children has focus, the dropdown will set the focus state to the .bq-select__control\n .bq-select__control {\n --bq-ring-width: 1px;\n --bq-ring-offset-width: 0;\n --bq-ring-color-focus: var(--bq-select--border-color-focus);\n\n @apply focus border-[color:--bq-select--border-color-focus];\n }\n}\n\n.bq-select__control {\n @apply flex items-center transition-[border-color,box-shadow] is-full;\n // Border\n @apply rounded-[--bq-select--border-radius] border-[length:--bq-select--border-width] border-[color:--bq-select--border-color];\n // Padding\n @apply pe-[--bq-select--padding-end] ps-[--bq-select--padding-start] p-b-[var(--bq-select--paddingY)];\n // Text\n @apply select-none text-[length:--bq-select--text-size] text-[color:--bq-select--text-color] placeholder:text-[color:--bq-select--text-placeholder-color];\n // Hover\n @apply [&:not(.disabled):not(:focus-within)]:hover:border-hover-stroke-brand;\n\n border-style: var(--bq-select--border-style);\n\n // Enable clear button whenever the input group control is hovered or has focus\n &:not(.disabled):hover,\n &:not(.disabled):focus-within {\n .bq-select__control--clear {\n @apply inline-block;\n }\n }\n}\n\n.bq-select__control.disabled {\n @apply cursor-not-allowed opacity-60;\n}\n\n/* ------------------------------- Validation ------------------------------- */\n\n.bq-select__control.validation-error {\n @apply border-stroke-danger [&:not(.disabled):not(:focus-within)]:hover:border-hover-stroke-danger;\n\n &:not(.disabled):focus-within {\n --bq-ring-color-focus: theme(colors.stroke.danger);\n\n @apply border-active-stroke-danger;\n }\n}\n\n.bq-select__control.validation-success {\n @apply border-stroke-success [&:not(.disabled):not(:focus-within)]:hover:border-hover-stroke-success;\n\n &:not(.disabled):focus-within {\n --bq-ring-color-focus: theme(colors.stroke.success);\n\n @apply border-active-stroke-success;\n }\n}\n\n.bq-select__control.validation-warning {\n @apply border-stroke-warning [&:not(.disabled):not(:focus-within)]:hover:border-hover-stroke-warning;\n\n &:not(.disabled):focus-within {\n --bq-ring-color-focus: theme(colors.stroke.warning);\n\n @apply border-active-stroke-warning;\n }\n}\n\n/* -------------------------------------------------------------------------- */\n/* Native HTML Input */\n/* -------------------------------------------------------------------------- */\n\n.bq-select__control--input {\n @apply flex-auto cursor-[inherit] select-none appearance-none bg-[inherit] font-[inherit] text-[length:inherit] text-[color:inherit];\n @apply m-0 border-none p-0 min-bs-[var(--bq-select--icon-size)] min-is-0 focus:outline-none focus-visible:outline-none;\n\n box-shadow: none;\n font-weight: inherit;\n}\n\n/* -------------------------------------------------------------------------- */\n/* Clear button */\n/* -------------------------------------------------------------------------- */\n\n.bq-select__control--clear::part(button) {\n // Since the clear button is inside the input group control,\n // we need to reset the focus ring styles\n --bq-ring-width: initial;\n --bq-ring-offset-width: initial;\n --bq-ring-color-focus: initial;\n\n @apply rounded-xs border-none p-0 bs-auto;\n}\n\n/* -------------------------------------------------------------------------- */\n/* Prefix and suffix */\n/* -------------------------------------------------------------------------- */\n\n.bq-select__control--prefix,\n.bq-select__control--suffix {\n @apply pointer-events-none flex items-center text-[color:var(--bq-select--text-color)];\n}\n\n.bq-select__control--prefix {\n @apply me-[--bq-select--gap];\n}\n\n.bq-select__control--suffix {\n @apply ms-[--bq-select--gap] transition-transform duration-300 ease-in-out;\n}\n\n.bq-select__tags {\n @apply me-xs2 flex flex-1 gap-xs2;\n\n bq-tag,\n ::slotted(bq-tag) {\n @apply inline-flex;\n }\n\n bq-tag::part(text) {\n @apply text-nowrap leading-small;\n }\n}\n\n/* -------------------------------------------------------------------------- */\n/* Slotted and internal icons */\n/* -------------------------------------------------------------------------- */\n\nbq-icon,\n::slotted(bq-icon) {\n --bq-icon--size: var(--bq-select--icon-size) !important;\n}\n","import {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Listen,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\n\nimport { Placement } from '../../services/interfaces';\nimport { debounce, hasSlotContent, isDefined, isHTMLElement, isNil, isString, TDebounce } from '../../shared/utils';\nimport { TInputValidation } from '../input/bq-input.types';\n\nexport type TSelectValue = string | string[];\n\n/**\n * @part base - The component's base wrapper.\n * @part button - The native HTML button used under the hood in the clear button.\n * @part clear-btn - The clear button.\n * @part control - The input control wrapper.\n * @part input-outline - The input outline wrapper that holds the tags container and the native HTML input used under the hood.\n * @part helper-text - The helper text slot container.\n * @part input - The native HTML input element used under the hood.\n * @part label - The label slot container.\n * @part panel - The select panel container\n * @part prefix - The prefix slot container.\n * @part suffix - The suffix slot container.\n * @part tags - The tags container of the BqTags for multiple selection.\n * @part tag - The tag container of the BqTag for multiple selection.\n * @part tag__base - The base wrapper of the BqTag for multiple selection.\n * @part tag__prefix - The prefix slot container of the BqTag for multiple selection.\n * @part tag__text - The text slot container of the BqTag for multiple selection.\n * @part tag__btn-close - The close button of the BqTag for multiple selection.\n * @part option-list - The option list container.\n */\n@Component({\n tag: 'bq-select',\n styleUrl: './scss/bq-select.scss',\n formAssociated: true,\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BqSelect {\n // Own Properties\n // ====================\n\n private helperTextElem?: HTMLElement;\n private inputElem?: HTMLInputElement;\n private labelElem?: HTMLElement;\n private prefixElem?: HTMLElement;\n private suffixElem?: HTMLElement;\n\n private debounceQuery: TDebounce<void>;\n\n private fallbackInputId = 'select';\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqSelectElement;\n @AttachInternals() internals!: ElementInternals;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() displayValue?: string;\n @State() hasHelperText = false;\n @State() selectedOptions: HTMLBqOptionElement[] = [];\n\n @State() hasLabel = false;\n @State() hasPrefix = false;\n @State() hasSuffix = false;\n @State() hasValue = false;\n\n // Public Property API\n // ========================\n\n /** If true, the Select input will be focused on component render */\n @Prop({ reflect: true }) autofocus: boolean;\n\n /** The clear button aria label */\n @Prop({ reflect: true }) clearButtonLabel? = 'Clear value';\n\n /**\n * The amount of time, in milliseconds, to wait before emitting the `bqInput` event after the input value changes.\n * A value of 0 means no debouncing will occur.\n */\n @Prop({ reflect: true, mutable: true }) debounceTime? = 0;\n\n /**\n * Indicates whether the Select input is disabled or not.\n * If `true`, the Select is disabled and cannot be interacted with.\n */\n @Prop({ mutable: true }) disabled?: boolean = false;\n\n /** If true, the clear button won't be displayed */\n @Prop({ reflect: true }) disableClear? = false;\n\n /** Represents the distance (gutter or margin) between the Select panel and the input element. */\n @Prop({ reflect: true }) distance?: number = 8;\n\n /** The ID of the form that the Select input belongs to. */\n @Prop({ reflect: true }) form?: string;\n\n /** If true, the Select panel will remain open after a selection is made. */\n @Prop({ reflect: true }) keepOpenOnSelect?: boolean = false;\n\n /** The Select input name. */\n @Prop({ reflect: true }) name!: string;\n\n /** The maximum number of tags to display when multiple selection is enabled */\n @Prop({ mutable: true }) maxTagsVisible: number = 2;\n\n /** If true, the Select input will allow multiple selections. */\n @Prop({ reflect: true }) multiple?: boolean = false;\n\n /** If true, the Select panel will be visible. */\n @Prop({ reflect: true, mutable: true }) open?: boolean = false;\n\n /** When set, it will override the height of the Select panel. */\n @Prop({ reflect: true }) panelHeight?: string;\n\n /** The Select input placeholder text value */\n @Prop({ reflect: true }) placeholder?: string;\n\n /** Position of the Select panel */\n @Prop({ reflect: true }) placement?: Placement = 'bottom';\n\n /** If true, the list of options cannot be filtered (searching won't be available) */\n @Prop({ reflect: true }) readonly?: boolean;\n\n /** Indicates whether or not the Select input is required to be filled out before submitting the form. */\n @Prop({ reflect: true }) required?: boolean;\n\n /** Whether the panel should have the Select same width as the input element */\n @Prop({ reflect: true }) sameWidth?: boolean = true;\n\n /** Represents the skidding between the Select panel and the input element. */\n @Prop({ reflect: true }) skidding?: number = 0;\n\n /** Defines the strategy to position the Select panel */\n @Prop({ reflect: true }) strategy?: 'fixed' | 'absolute' = 'fixed';\n\n /**\n * The validation status of the Select input.\n *\n * @remarks\n * This property is used to indicate the validation status of the select input. It can be set to one of the following values:\n * - `'none'`: No validation status is set.\n * - `'error'`: The input has a validation error.\n * - `'warning'`: The input has a validation warning.\n * - `'success'`: The input has passed validation.\n */\n @Prop({ reflect: true }) validationStatus: TInputValidation = 'none';\n\n /** The select input value, it can be used to reset the field to a previous value */\n @Prop({ reflect: true, mutable: true }) value: TSelectValue;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('value')\n handleValueChange() {\n if (this.multiple && isString(this.value)) {\n // NOTE: we ensure that value is an array, changing the value will trigger Watch to execute thus the return\n this.value = Array.from(JSON.parse(String(this.value)));\n this.internals.setFormValue(this.value.join(','));\n return;\n }\n\n this.syncItemsFromValue();\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Callback handler emitted when the Select input loses focus */\n @Event() bqBlur!: EventEmitter<HTMLBqSelectElement>;\n\n /** Callback handler emitted when the selected value has been cleared */\n @Event() bqClear!: EventEmitter<HTMLBqSelectElement>;\n\n /** Callback handler emitted when the Select input has received focus */\n @Event() bqFocus!: EventEmitter<HTMLBqSelectElement>;\n\n /** Callback handler emitted when the selected value has changed */\n @Event() bqSelect!: EventEmitter<{ value: string | number | string[]; item: HTMLBqOptionElement }>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n connectedCallback() {\n if (this.multiple) {\n this.value = Array.isArray(this.value) ? this.value : Array.from(JSON.parse(String(this.value)));\n }\n }\n\n componentDidLoad() {\n if (this.multiple && Array.isArray(this.value)) {\n this.selectedOptions = this.options.filter((item) => this.value.includes(item.value));\n }\n\n this.handleValueChange();\n }\n\n formAssociatedCallback() {\n this.internals.role = 'combobox';\n this.internals.ariaExpanded = this.open ? 'true' : 'false';\n }\n\n async formResetCallback() {\n if (isNil(this.value)) return;\n\n this.internals.setValidity({});\n this.clear();\n }\n\n // Listeners\n // ==============\n\n @Listen('bqOpen', { capture: true })\n handleOpenChange(ev: CustomEvent<{ open: boolean }>) {\n if (!ev.composedPath().includes(this.el)) return;\n\n this.open = ev.detail.open;\n }\n\n @Listen('bqFocus', { capture: true })\n @Listen('bqBlur', { capture: true })\n stopOptionFocusBlurPropagation(ev: CustomEvent) {\n // Stop propagation of focus and blur events coming from the `bq-option` elements\n if (isHTMLElement(ev.target, 'bq-select')) return;\n\n ev.stopPropagation();\n }\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n /**\n * Clears the selected value.\n *\n * @return {Promise<void>}\n * @memberof BqSelect\n */\n @Method()\n async clear(): Promise<void> {\n if (this.disabled) return;\n\n const { multiple, inputElem, bqClear, el } = this;\n\n // Clear value and selected options\n this.value = undefined;\n this.selectedOptions = [];\n\n // Clear display value and input element if not multiple\n if (!multiple) {\n this.displayValue = undefined;\n inputElem.value = undefined;\n }\n\n // Update form value and reset options visibility\n this.resetOptionsVisibility();\n\n // Emit clear event\n bqClear.emit(el);\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleBlur = () => {\n if (this.disabled) return;\n\n this.bqBlur.emit(this.el);\n };\n\n private handleFocus = () => {\n if (this.disabled) return;\n\n this.bqFocus.emit(this.el);\n };\n\n private handleSelect = (ev: CustomEvent<{ value: TSelectValue; item: HTMLBqOptionElement }>) => {\n if (this.disabled) return;\n\n if (this.multiple) {\n ev.stopPropagation();\n }\n\n const { value, item } = ev.detail;\n\n if (this.multiple) {\n this.handleMultipleSelection(item);\n // Clear the input value after selecting an item\n this.inputElem.value = '';\n // If multiple selection is enabled, emit the selected items array instead of relying on\n // the option list to emit the value of the selected item\n this.bqSelect.emit({ value: this.value, item });\n } else {\n this.value = value;\n }\n\n this.resetOptionsVisibility();\n this.inputElem.focus();\n };\n\n private handleMultipleSelection = (item: HTMLBqOptionElement) => {\n // Set has O(1) complexity for insertion, deletion, and search operations, compared to an Array's O(n)\n const selectedOptionsSet = new Set(this.selectedOptions);\n\n if (selectedOptionsSet.has(item)) {\n selectedOptionsSet.delete(item);\n } else {\n selectedOptionsSet.add(item);\n }\n\n this.selectedOptions = Array.from(selectedOptionsSet);\n this.value = this.selectedOptions.map((item) => item.value);\n };\n\n private handleSearchFilter = (ev: Event) => {\n if (this.disabled) return;\n\n this.debounceQuery?.cancel();\n\n const query = (ev.target as HTMLInputElement).value?.toLowerCase().trim();\n\n if (!isDefined(query)) {\n this.clear();\n } else {\n this.debounceQuery = debounce(() => {\n this.options.forEach((item: HTMLBqOptionElement) => {\n const itemLabel = this.getOptionLabel(item).toLowerCase();\n item.hidden = !itemLabel.includes(query);\n });\n }, this.debounceTime);\n\n this.debounceQuery();\n }\n\n // The panel will close once a selection is made\n // so we need to make sure it's open when the user is typing and the query is not empty\n this.open = true;\n };\n\n private handleClearClick = (ev: CustomEvent) => {\n (async () => {\n await this.clear();\n })();\n this.inputElem.focus();\n\n ev.stopPropagation();\n };\n\n private handleTagRemove = (item: HTMLBqOptionElement) => {\n if (this.disabled) return;\n\n this.handleMultipleSelection(item);\n this.bqSelect.emit({ value: this.value, item });\n };\n\n private handleLabelSlotChange = () => {\n this.hasLabel = hasSlotContent(this.labelElem);\n };\n\n private handlePrefixSlotChange = () => {\n this.hasPrefix = hasSlotContent(this.prefixElem);\n };\n\n private handleSuffixSlotChange = () => {\n this.hasSuffix = hasSlotContent(this.suffixElem);\n };\n\n private handleHelperTextSlotChange = () => {\n this.hasHelperText = hasSlotContent(this.helperTextElem);\n };\n\n private resetOptionsVisibility = () => {\n this.options.forEach((item: HTMLBqOptionElement) => (item.hidden = false));\n };\n\n private syncItemsFromValue = () => {\n const { internals, options, value } = this;\n if (!options.length) return;\n\n // Sync selected state of the BqOption elements\n this.syncSelectedOptionsState();\n\n if (this.multiple) {\n // Sync selected options for multiple selection mode\n this.selectedOptions = options.filter((option) => this.value?.includes(option.value));\n } else {\n // Sync display label for single selection mode\n this.updateDisplayLabel();\n }\n\n internals.setFormValue(!isNil(value) ? `${value}` : undefined);\n };\n\n /**\n * Syncs the selected state of the BqOption elements which value is included in the `value` property.\n * Notice that value can be a string or an array of strings.\n *\n * @private\n * @memberof BqSelect\n */\n private syncSelectedOptionsState = () => {\n const { options, multiple, value } = this;\n const lowerCaseValue = String(value).toLowerCase();\n\n options.forEach((option: HTMLBqOptionElement) => {\n if (multiple && Array.isArray(value)) {\n option.selected = value.includes(option.value);\n } else {\n option.selected = option.value.toLowerCase() === lowerCaseValue;\n }\n });\n };\n\n /**\n * Updates the display value of the input element based on the selected option.\n *\n * @private\n * @memberof BqSelect\n */\n private updateDisplayLabel = () => {\n const { value, options, inputElem } = this;\n\n const checkedItem = options.find((item) => item.value === value);\n const displayValue = checkedItem ? this.getOptionLabel(checkedItem) : '';\n\n inputElem.value = displayValue;\n this.displayValue = displayValue;\n };\n\n private getOptionLabel = (item: HTMLBqOptionElement) => {\n if (!item) return;\n return item.innerText.trim() ?? '';\n };\n\n private get options() {\n return Array.from(this.el.querySelectorAll('bq-option'));\n }\n\n private get displayPlaceholder() {\n // Hide the placeholder when multiple selection is enabled and there are selected items\n return this.multiple && this.selectedOptions.length !== 0 ? undefined : this.placeholder;\n }\n\n private get displayTags() {\n return this.selectedOptions.map((item, index) => {\n if (index < this.maxTagsVisible || this.maxTagsVisible < 0) {\n return (\n <bq-tag\n key={item.value}\n removable\n size=\"xsmall\"\n variant=\"filled\"\n onBqClose={(event) => {\n // NOTE: prevents triggering bqClose on parent\n event.stopPropagation();\n this.handleTagRemove(item);\n }}\n // Prevent the tag from closing the panel when clicked\n onClick={(ev: MouseEvent) => ev.stopPropagation()}\n exportparts=\"wrapper:tag__base,prefix:tag__prefix,text:tag__text,btn-close:tag__btn-close\"\n part=\"tag\"\n >\n {this.getOptionLabel(item)}\n </bq-tag>\n );\n } else if (index === this.maxTagsVisible) {\n return (\n <bq-tag\n key=\"more\"\n size=\"xsmall\"\n variant=\"filled\"\n exportparts=\"wrapper:tag__base,prefix:tag__prefix,text:tag__text,btn-close:tag__btn-close\"\n part=\"tag\"\n >\n +{this.selectedOptions.length - index}\n </bq-tag>\n );\n }\n\n return null;\n });\n }\n\n private get hasClearIcon() {\n if (this.disableClear || this.disabled) {\n return false;\n }\n\n if (this.multiple) {\n return this.selectedOptions.length > 0;\n }\n\n return isDefined(this.displayValue);\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n const labelId = `bq-select__label-${this.name || this.fallbackInputId}`;\n\n return (\n <div class=\"bq-select\" part=\"base\">\n {/* Label */}\n <label\n id={labelId}\n class={{ 'bq-select__label': true, '!hidden': !this.hasLabel }}\n htmlFor={this.name || this.fallbackInputId}\n ref={(labelElem: HTMLSpanElement) => (this.labelElem = labelElem)}\n part=\"label\"\n >\n <slot name=\"label\" onSlotchange={this.handleLabelSlotChange} />\n </label>\n {/* Select dropdown */}\n <bq-dropdown\n class=\"bq-select__dropdown w-full\"\n disabled={this.disabled}\n distance={this.distance}\n keepOpenOnSelect={this.keepOpenOnSelect}\n open={this.open}\n panelHeight={this.panelHeight}\n placement={this.placement}\n sameWidth={this.sameWidth}\n skidding={this.skidding}\n strategy={this.strategy}\n exportparts=\"panel\"\n >\n {/* Input control group */}\n <div\n class={{\n 'bq-select__control': true,\n [`validation-${this.validationStatus}`]: true,\n disabled: this.disabled,\n }}\n part=\"control\"\n slot=\"trigger\"\n >\n {/* Prefix */}\n <span\n class={{ 'bq-select__control--prefix': true, '!hidden': !this.hasPrefix }}\n ref={(spanElem: HTMLSpanElement) => (this.prefixElem = spanElem)}\n part=\"prefix\"\n >\n <slot name=\"prefix\" onSlotchange={this.handlePrefixSlotChange} />\n </span>\n <div class=\"flex flex-1 overflow-x-auto\" part=\"input-outline\">\n {/* Display selected values using BqTags for multiple selection */}\n {this.multiple && (\n <span class=\"bq-select__tags\" part=\"tags\">\n <slot name=\"tags\">{this.displayTags}</slot>\n </span>\n )}\n {/* HTML Input */}\n <input\n id={this.name || this.fallbackInputId}\n class=\"bq-select__control--input flex-grow is-full\"\n autoComplete=\"off\"\n autoCapitalize=\"off\"\n autoFocus={this.autofocus}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-controls={`bq-options-${this.name}`}\n aria-expanded={this.open ? 'true' : 'false'}\n aria-haspopup=\"listbox\"\n disabled={this.disabled}\n form={this.form}\n name={this.name}\n placeholder={this.displayPlaceholder}\n ref={(inputElem: HTMLInputElement) => (this.inputElem = inputElem)}\n readOnly={this.readonly}\n required={this.required}\n role=\"combobox\"\n spellcheck={false}\n type=\"text\"\n value={this.displayValue}\n part=\"input\"\n // Events\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onInput={this.handleSearchFilter}\n />\n </div>\n {/* Clear Button */}\n {this.hasClearIcon && (\n // The clear button will be visible as long as the input has a value\n // and the parent group is hovered or has focus-within\n <bq-button\n class=\"bq-select__control--clear ms-[--bq-select--gap]\"\n appearance=\"text\"\n aria-label={this.clearButtonLabel}\n size=\"small\"\n onBqClick={this.handleClearClick}\n part=\"clear-btn\"\n exportparts=\"button\"\n tabIndex={-1}\n >\n <slot name=\"clear-icon\">\n <bq-icon name=\"x-circle\" class=\"flex\" />\n </slot>\n </bq-button>\n )}\n {/* Suffix */}\n <span\n class={{ 'bq-select__control--suffix': true, 'rotate-180': this.open, 'rotate-0': !this.open }}\n ref={(spanElem: HTMLSpanElement) => (this.suffixElem = spanElem)}\n part=\"suffix\"\n >\n <slot name=\"suffix\" onSlotchange={this.handleSuffixSlotChange}>\n <bq-icon name=\"caret-down\" class=\"flex\" />\n </slot>\n </span>\n </div>\n <bq-option-list\n id={`bq-options-${this.name}`}\n onBqSelect={this.handleSelect}\n aria-expanded={this.open ? 'true' : 'false'}\n exportparts=\"base:option-list\"\n role=\"listbox\"\n >\n <slot />\n </bq-option-list>\n </bq-dropdown>\n {/* Helper text */}\n <div\n class={{\n [`bq-select__helper-text validation-${this.validationStatus}`]: true,\n '!hidden': !this.hasHelperText,\n }}\n ref={(divElem: HTMLDivElement) => (this.helperTextElem = divElem)}\n part=\"helper-text\"\n >\n <slot name=\"helper-text\" onSlotchange={this.handleHelperTextSlotChange} />\n </div>\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["TOAST_TYPE","TOAST_PLACEMENT","bqToastCss","BqToastStyle0","toastPortal","Object","assign","document","createElement","className","BqToast","this","handleShow","ev","bqShow","emit","el","defaultPrevented","open","handleHide","bqHide","checkPropValues","validatePropValue","classList","remove","add","placement","handleTimeChange","_a","autoDismissDebounce","cancel","time","Math","max","debounce","hide","handleOpenChange","_b","call","componentWillLoad","disconnectedCallback","onNotificationHide","removeChild","querySelector","error","DOMException","show","toast","parentElement","body","append","appendChild","requestAnimationFrame","iconName","type","render","style","border","h","Host","key","class","hidden","role","part","hideIcon","name","size","weight","slot","exportparts"],"sources":["../../packages/beeq/src/components/toast/bq-toast.types.ts","../../packages/beeq/src/components/toast/scss/bq-toast.scss?tag=bq-toast&encapsulation=shadow","../../packages/beeq/src/components/toast/bq-toast.tsx"],"sourcesContent":["export const TOAST_TYPE = ['info', 'success', 'alert', 'error', 'loading', 'custom'] as const;\nexport type TToastType = (typeof TOAST_TYPE)[number];\n\nexport const TOAST_PLACEMENT = [\n 'top-center',\n 'top-right',\n 'bottom-right',\n 'bottom-center',\n 'bottom-left',\n 'top-left',\n] as const;\nexport type TToastPlacement = (typeof TOAST_PLACEMENT)[number];\n\nexport const TOAST_BORDER_RADIUS = ['none', 'xs2', 'xs', 's', 'm', 'l', 'full'] as const;\nexport type TToastBorderRadius = (typeof TOAST_BORDER_RADIUS)[number];\n","/* -------------------------------------------------------------------------- */\n/* Toast styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-toast.variables';\n\n:host {\n @apply inline-block;\n}\n\n:host(.is-hidden) {\n @apply hidden;\n}\n\n.bq-toast {\n @include animation-slide-in;\n @apply flex items-center gap-[--bq-toast--gap] p-b-[--bq-toast--padding-y] p-i-[--bq-toast--padding-x];\n @apply rounded-[--bq-toast--border-radius] bg-[--bq-toast--background] shadow-[shadow:--bq-toast--box-shadow];\n @apply border-[length:--bq-toast--border-width] border-[color:--bq-toast--border-color];\n\n border-style: var(--bq-toast--border-style);\n}\n\n.bq-toast--icon {\n @apply flex;\n\n &.info {\n @apply text-[--bq-toast--icon-color-info];\n }\n\n &.success {\n @apply text-[--bq-toast--icon-color-success];\n }\n\n &.alert {\n @apply text-[--bq-toast--icon-color-alert];\n }\n\n &.error {\n @apply text-[--bq-toast--icon-color-error];\n }\n\n &.loading {\n @include animation-spin;\n @apply text-[--bq-toast--icon-color-loading];\n }\n\n &.custom {\n @apply text-[--bq-toast--icon-color-custom];\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Listen, Method, Prop, Watch } from '@stencil/core';\n\nimport { TOAST_PLACEMENT, TOAST_TYPE, TToastBorderRadius, TToastPlacement, TToastType } from './bq-toast.types';\nimport { debounce, TDebounce, validatePropValue } from '../../shared/utils';\n\nconst toastPortal = Object.assign(document.createElement('div'), { className: 'bq-toast-portal' });\n\n/**\n * @part wrapper - The component's internal wrapper inside the shadow DOM.\n * @part icon-info - The `<div>` container that holds the icon component.\n * @part base - The `<div>` container of the internal bq-icon component.\n * @part svg - The `<svg>` element of the internal bq-icon component.\n */\n@Component({\n tag: 'bq-toast',\n styleUrl: './scss/bq-toast.scss',\n shadow: true,\n})\nexport class BqToast {\n // Own Properties\n // ====================\n\n private autoDismissDebounce: TDebounce<void>;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqToastElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n // Public Property API\n // ========================\n\n /** The corder radius of the toast component */\n @Prop({ reflect: true }) border: TToastBorderRadius = 's';\n\n /** Type of toast */\n @Prop({ reflect: true, mutable: true }) type: TToastType = 'info';\n\n /** Placement of toast */\n @Prop({ reflect: true, mutable: true }) placement: TToastPlacement = 'bottom-center';\n\n /** If true will hide toast icon */\n @Prop({ reflect: true, mutable: true }) hideIcon = false;\n\n /** If true, the toast will be shown */\n @Prop({ reflect: true, mutable: true }) open: boolean;\n\n /** The length of time, in milliseconds, after which the toast will close itself */\n @Prop({ reflect: true }) time: number = 3000;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('type')\n @Watch('placement')\n checkPropValues() {\n validatePropValue(TOAST_TYPE, 'default', this.el, 'type');\n validatePropValue(TOAST_PLACEMENT, 'bottom-center', this.el, 'placement');\n\n toastPortal.classList.remove(...TOAST_PLACEMENT);\n toastPortal.classList.add(this.placement);\n }\n\n @Watch('time')\n handleTimeChange() {\n this.autoDismissDebounce?.cancel();\n\n this.time = Math.max(0, this.time);\n\n this.autoDismissDebounce = debounce(() => {\n this.hide();\n }, this.time);\n }\n\n @Watch('open')\n handleOpenChange() {\n this.autoDismissDebounce?.cancel();\n\n if (this.open) {\n this.autoDismissDebounce?.();\n }\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Callback handler to be called when the notification is hidden */\n @Event() bqHide: EventEmitter<HTMLBqToastElement>;\n\n /** Callback handler to be called when the notification is shown */\n @Event() bqShow: EventEmitter<HTMLBqToastElement>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.checkPropValues();\n this.handleTimeChange();\n this.handleOpenChange();\n }\n\n disconnectedCallback() {\n this.autoDismissDebounce?.cancel();\n }\n\n // Listeners\n // ==============\n\n @Listen('bqHide')\n onNotificationHide() {\n try {\n toastPortal.removeChild(this.el);\n // Remove the toast portal from the DOM when there are no more toasts\n if (toastPortal.querySelector('bq-toast') === null) {\n toastPortal.remove();\n }\n } catch (error) {\n /**\n * Skip DOMException error since it could be possible that\n * in some situations the notification portal is missing\n */\n if (error instanceof DOMException) return;\n throw error;\n }\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 /** Method to be called to show the toast component */\n @Method()\n async show(): Promise<void> {\n this.handleShow();\n }\n\n /** Method to be called to hide the toast component */\n @Method()\n async hide(): Promise<void> {\n this.handleHide();\n }\n\n /** This method can be used to display toasts in a fixed-position element that allows for stacking multiple toasts vertically */\n @Method()\n async toast() {\n if (toastPortal.parentElement === null) {\n document.body.append(toastPortal);\n }\n\n toastPortal.appendChild(this.el);\n\n requestAnimationFrame(() => {\n this.show();\n });\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleShow = () => {\n const ev = this.bqShow.emit(this.el);\n if (!ev.defaultPrevented) {\n this.open = true;\n }\n };\n\n private handleHide = () => {\n const ev = this.bqHide.emit(this.el);\n if (!ev.defaultPrevented) {\n this.open = false;\n }\n };\n\n private get iconName() {\n switch (this.type) {\n case 'success': {\n return 'check-circle';\n }\n case 'error': {\n return 'x-circle';\n }\n case 'loading': {\n return 'spinner-gap';\n }\n case 'alert': {\n return 'warning';\n }\n case 'info': {\n return 'info';\n }\n default: {\n return 'info';\n }\n }\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n const style = {\n ...(this.border && { '--bq-toast--border-radius': `var(--bq-radius--${this.border})` }),\n };\n\n return (\n <Host\n style={style}\n class={{ 'is-hidden': !this.open }}\n aria-hidden={!this.open ? 'true' : 'false'}\n hidden={!this.open ? 'true' : 'false'}\n role=\"status\"\n >\n <output class=\"bq-toast\" part=\"wrapper\">\n <div class={{ [`bq-toast--icon ${this.type}`]: true, '!hidden': this.hideIcon }} part=\"icon\">\n <slot name=\"icon\">\n <bq-icon name={this.iconName} size=\"24\" weight=\"bold\" slot=\"icon\" exportparts=\"base,svg\"></bq-icon>\n </slot>\n </div>\n <slot />\n </output>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["Object","defineProperty","window","configurable","enumerable","writable","DATA_BEEQ_ATTRIBUTE","DEFAULT_SVG_PATH","scripts","document","getElementsByTagName","setBasePath","path","bqSVGBasePath","getBasePath","subpath","initializeBasePath","formatBasePath","configScript","findConfigScript","fallbackScript","findFallbackScript","script","getAttribute","getScriptPath","formattedSubpath","replace","find","hasAttribute","test","src","split","slice","join"],"sources":["../../packages/beeq/src/shared/utils/assetsPath.ts"],"sourcesContent":["/**\n * Inspired by Shoelace's `getBasePath` and `setBasePath` functions.\n * https://github.com/shoelace-style/shoelace/blob/next/src/utilities/base-path.ts\n */\n\n/**\n * Extend the Window interface to include the `bqSVGBasePath` property and prevent it from being modified.\n * This is necessary to prevent the basePath from being modified by external scripts.\n */\ndeclare global {\n interface Window {\n bqSVGBasePath: string;\n }\n}\n\nObject.defineProperty(window, 'bqSVGBasePath', {\n configurable: true,\n enumerable: false,\n writable: true,\n});\n\nconst DATA_BEEQ_ATTRIBUTE = 'data-beeq';\nconst DEFAULT_SVG_PATH = 'svg';\nconst scripts = [...document.getElementsByTagName('script')] as HTMLScriptElement[];\n\n/**\n * Sets the `bqSVGBasePath` in the global window object,\n * which is used to determine the SVG path in the BQIcon component.\n * This method is the only way to update the base path.\n *\n * @param path - The new base path to set.\n */\nexport const setBasePath = (path: string) => {\n window.bqSVGBasePath = path;\n};\n\n/**\n * Retrieves the `bqSVGBasePath`, optionally appending a subpath.\n *\n * @param subpath - The subpath to append to the base path.\n * @returns The full base path including the subpath.\n */\nexport const getBasePath = (subpath = ''): string => {\n const { bqSVGBasePath } = window;\n if (!bqSVGBasePath) {\n initializeBasePath();\n }\n\n return formatBasePath(subpath);\n};\n\n/**\n * Initializes the `bqSVGBasePath` for the BEEQ assets by finding the appropriate script and setting the base path accordingly.\n * 1. If a script with the attribute `data-beeq` exists, the base path will be set to the value of the `src` attribute.\n * 2. If a script with the name `beeq.js` or `beeq.esm.js` exists, the base path will be set to the value of the `src` attribute.\n * 3. If no scripts are found, the base path will be set to the default value `./svg`.\n */\nconst initializeBasePath = (): void => {\n const configScript = findConfigScript();\n const fallbackScript = configScript ? null : findFallbackScript();\n\n const script = configScript || fallbackScript;\n if (script) {\n const path = configScript ? script.getAttribute(DATA_BEEQ_ATTRIBUTE) : getScriptPath(script);\n setBasePath(`${path}/${DEFAULT_SVG_PATH}`);\n } else {\n setBasePath(`./${DEFAULT_SVG_PATH}`);\n }\n};\n\n/**\n * Formats the `bqSVGBasePath` without a trailing slash.\n * If one exists, append the subpath separated by a slash.\n *\n * @param subpath - The subpath to append to the base path.\n * @returns The formatted base path.\n */\nconst formatBasePath = (subpath: string): string => {\n const formattedSubpath = subpath ? `/${subpath.replace(/^\\//, '')}` : '';\n return window.bqSVGBasePath.replace(/\\/$/, '') + formattedSubpath;\n};\n\nconst findConfigScript = () => scripts.find((script) => script.hasAttribute(DATA_BEEQ_ATTRIBUTE));\n\nconst findFallbackScript = () => scripts.find((script) => /beeq(\\.esm)?\\.js($|\\?)/.test(script.src));\n\nconst getScriptPath = (script: HTMLScriptElement) => script.getAttribute('src').split('/').slice(0, -1).join('/');\n"],"mappings":";;;;;;;;AAeAA,OAAOC,eAAeC,QAAQ,iBAAiB;EAC7CC,cAAc;EACdC,YAAY;EACZC,UAAU;;;AAGZ,MAAMC,IAAsB;;AAC5B,MAAMC,IAAmB;;AACzB,MAAMC,IAAU,KAAIC,SAASC,qBAAqB;;;;;;;;UASrCC,cAAeC;EAC1BV,OAAOW,gBAAgBD;AAAI;;;;;;;UAShBE,cAAc,CAACC,IAAU;EACpC,OAAMF,eAAEA,KAAkBX;EAC1B,KAAKW,GAAe;IAClBG;;EAGF,OAAOC,eAAeF;AAAQ;;;;;;;GAShC,OAAMC,qBAAqB;EACzB,MAAME,IAAeC;EACrB,MAAMC,IAAiBF,IAAe,OAAOG;EAE7C,MAAMC,IAASJ,KAAgBE;EAC/B,IAAIE,GAAQ;IACV,MAAMV,IAAOM,IAAeI,EAAOC,aAAajB,KAAuBkB,cAAcF;IACrFX,YAAY,GAAGC,KAAQL;SAClB;IACLI,YAAY,KAAKJ;;;;;;;;;;GAWrB,OAAMU,iBAAkBF;EACtB,MAAMU,IAAmBV,IAAU,IAAIA,EAAQW,QAAQ,OAAO,QAAQ;EACtE,OAAOxB,OAAOW,cAAca,QAAQ,OAAO,MAAMD;AAAgB;;AAGnE,MAAMN,mBAAmB,MAAMX,EAAQmB,MAAML,KAAWA,EAAOM,aAAatB;;AAE5E,MAAMe,qBAAqB,MAAMb,EAAQmB,MAAML,KAAW,yBAAyBO,KAAKP,EAAOQ;;AAE/F,MAAMN,gBAAiBF,KAA8BA,EAAOC,aAAa,OAAOQ,MAAM,KAAKC,MAAM,IAAI,GAAGC,KAAK","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["STEP_ITEM_STATUS","bqStepItemCss","BqStepItemStyle0","BqStepItem","this","handleIconPrefix","iconElem","el","querySelector","isHTMLElement","size","weight","isCurrent","checkPropValues","validatePropValue","STEPS_SIZE","connectedCallback","componentDidLoad","isDisabled","status","render","h","key","class","part","type","name","onSlotchange"],"sources":["../../packages/beeq/src/components/step-item/bq-step-item.types.ts","../../packages/beeq/src/components/step-item/scss/bq-step-item.scss?tag=bq-step-item&encapsulation=shadow","../../packages/beeq/src/components/step-item/bq-step-item.tsx"],"sourcesContent":["export const STEP_ITEM_STATUS = ['default', 'current', 'completed', 'error', 'disabled'] as const;\nexport type TStepItemStatus = (typeof STEP_ITEM_STATUS)[number];\n","/* -------------------------------------------------------------------------- */\n/* Step item styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-step-item.variables';\n\n:host {\n --bq-icon--color: theme(colors.icon.primary);\n\n @apply bg-bg-primary;\n}\n\n.bq-step-item__prefix.dot,\n.bq-step-item__prefix.icon {\n ::slotted(bq-icon) {\n --bq-icon--color: var(--bq-step-item--prefix-color);\n }\n\n &.current {\n ::slotted(bq-icon) {\n --bq-icon--color: var(--bq-step-item--prefix-color-current);\n }\n }\n\n &.completed {\n ::slotted(bq-icon) {\n --bq-icon--color: var(--bq-step-item--prefix-color-completed);\n }\n }\n\n &.error {\n ::slotted(bq-icon) {\n --bq-icon--color: var(--bq-step-item--prefix-color-error);\n }\n }\n\n &.disabled {\n ::slotted(bq-icon) {\n opacity: 0.6;\n }\n }\n}\n\n.bq-step-item__prefix.numeric {\n @apply flex items-center justify-center rounded-full;\n @apply bg-[--bq-step-item--prefix-num-bg-color] bs-[--bq-step-item--prefix-num-size] is-[--bq-step-item--prefix-num-size];\n @apply text-m font-semibold leading-regular;\n\n &.small {\n @apply text-s [--bq-step-item--prefix-num-size:--bq-spacing-l];\n }\n\n // Status\n\n &.current {\n @apply bg-[var(--bq-step-item--prefix-color-current)] text-[--bq-text--alt];\n }\n\n &.completed {\n @apply bg-ui-success-alt text-text-success;\n }\n\n &.error {\n @apply bg-ui-danger-alt text-text-danger;\n }\n\n &.disabled {\n @apply opacity-60;\n }\n}\n\n.bq-step-item__content--description::slotted(*) {\n @apply text-s leading-regular opacity-60;\n}\n","import { Component, Element, Event, EventEmitter, h, Prop, Watch } from '@stencil/core';\n\nimport { STEP_ITEM_STATUS, TStepItemStatus } from './bq-step-item.types';\nimport { isHTMLElement, validatePropValue } from '../../shared/utils';\nimport { STEPS_SIZE, TStepsSize, TStepsType } from '../steps/bq-steps.types';\n\n/**\n * @part base - The component's base wrapper.\n * @part title - The component's title.\n * @part description - The component's description.\n */\n@Component({\n tag: 'bq-step-item',\n styleUrl: './scss/bq-step-item.scss',\n shadow: true,\n})\nexport class BqStepItem {\n // Own Properties\n // ====================\n\n // Reference to host HTML element\n // ===================================\n @Element() el!: HTMLBqStepItemElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n // Public Property API\n // ========================\n\n /** It defines prefix size */\n @Prop({ reflect: true }) size?: TStepsSize = 'medium';\n\n /** It defines step item appearance based on its status */\n @Prop({ reflect: true }) status?: TStepItemStatus = 'default';\n\n /** It defines the step item type used */\n @Prop({ reflect: true }) type?: TStepsType;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('size')\n @Watch('status')\n checkPropValues() {\n validatePropValue(STEPS_SIZE, 'medium', this.el, 'size');\n validatePropValue(STEP_ITEM_STATUS, 'default', this.el, 'status');\n\n this.handleIconPrefix();\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Callback handler emitted when the step item is clicked */\n @Event() bqClick: EventEmitter<{ target: HTMLBqStepItemElement; value: string }>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n connectedCallback() {\n this.checkPropValues();\n }\n\n componentDidLoad() {\n this.handleIconPrefix();\n }\n\n // Listeners\n // ==============\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private get isDisabled(): boolean {\n return this.status === 'disabled';\n }\n\n private get isCurrent(): boolean {\n return this.status === 'current';\n }\n\n private handleIconPrefix = () => {\n const iconElem = this.el.querySelector('[slot=\"prefix\"]');\n if (!iconElem || !isHTMLElement(iconElem, 'bq-icon')) return;\n\n iconElem.size = this.size === 'small' ? 24 : 32;\n iconElem.weight = this.isCurrent ? 'fill' : 'regular';\n };\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <div\n class={{\n 'bq-step-item flex gap-s': true,\n [`bq-step-item--${this.status}`]: true,\n 'pointer-events-none opacity-60': this.isDisabled,\n }}\n part=\"base\"\n >\n <div class={`bq-step-item__prefix relative ${this.type} ${this.size} ${this.status}`}>\n <slot name=\"prefix\" onSlotchange={this.handleIconPrefix} />\n </div>\n <div class=\"bq-step-item__content\">\n {/* TITLE */}\n <div\n class={{\n 'bq-step-item__content--title pe-xs3 text-m leading-regular text-text-primary': true,\n 'pointer-events-none': this.isDisabled,\n 'text-text-brand': this.isCurrent,\n }}\n part=\"title\"\n >\n <slot />\n </div>\n {/* DESCRIPTION */}\n <div\n class={{\n 'bq-step-item__content--description text-s leading-regular opacity-60': true,\n 'opacity-60': this.isDisabled,\n }}\n part=\"description\"\n >\n <slot name=\"description\" />\n </div>\n </div>\n </div>\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AAAO,MAAMA,IAAmB,EAAC,WAAW,WAAW,aAAa,SAAS;;ACA7E,MAAMC,IAAgB;;AACtB,MAAAC,IAAeD;;MCeFE,IAAU;;;;IA8EbC,KAAAC,mBAAmB;MACzB,MAAMC,IAAWF,KAAKG,GAAGC,cAAc;MACvC,KAAKF,MAAaG,EAAcH,GAAU,YAAY;MAEtDA,EAASI,OAAON,KAAKM,SAAS,UAAU,KAAK;MAC7CJ,EAASK,SAASP,KAAKQ,YAAY,SAAS;AAAS;gBAnEV;kBAGO;;;;;EAUpD,eAAAC;IACEC,EAAkBC,GAAY,UAAUX,KAAKG,IAAI;IACjDO,EAAkBd,GAAkB,WAAWI,KAAKG,IAAI;IAExDH,KAAKC;;;;;EAcP,iBAAAW;IACEZ,KAAKS;;EAGP,gBAAAI;IACEb,KAAKC;;;;;;;;;;;;;;EAkBP,cAAYa;IACV,OAAOd,KAAKe,WAAW;;EAGzB,aAAYP;IACV,OAAOR,KAAKe,WAAW;;;;;EAezB,MAAAC;IACE,OACEC,EAAA;MAAAC,KAAA;MACEC,OAAO;QACL,2BAA2B;QAC3B,CAAC,iBAAiBnB,KAAKe,WAAW;QAClC,kCAAkCf,KAAKc;;MAEzCM,MAAK;OAELH,EAAA;MAAAC,KAAA;MAAKC,OAAO,iCAAiCnB,KAAKqB,QAAQrB,KAAKM,QAAQN,KAAKe;OAC1EE,EAAA;MAAAC,KAAA;MAAMI,MAAK;MAASC,cAAcvB,KAAKC;SAEzCgB,EAAA;MAAAC,KAAA;MAAKC,OAAM;OAETF,EAAA;MAAAC,KAAA;MACEC,OAAO;QACL,gFAAgF;QAChF,uBAAuBnB,KAAKc;QAC5B,mBAAmBd,KAAKQ;;MAE1BY,MAAK;OAELH,EAAA;MAAAC,KAAA;SAGFD,EAAA;MAAAC,KAAA;MACEC,OAAO;QACL,wEAAwE;QACxE,cAAcnB,KAAKc;;MAErBM,MAAK;OAELH,EAAA;MAAAC,KAAA;MAAMI,MAAK","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"file":"assetsPath-3938a05d.js","mappings":";;;;;;AAAA;;;;AAeA,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,eAAe,EAAE;IAC7C,YAAY,EAAE,IAAI;IAClB,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,IAAI;CACf,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,WAAW,CAAC;AACxC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAC/B,MAAM,OAAO,GAAG,CAAC,GAAG,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAwB,CAAC;AAEpF;;;;;;;MAOa,WAAW,GAAG,CAAC,IAAY;IACtC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;AAC9B,EAAE;AAEF;;;;;;MAMa,WAAW,GAAG,CAAC,OAAO,GAAG,EAAE;IACtC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IACjC,IAAI,CAAC,aAAa,EAAE;QAClB,kBAAkB,EAAE,CAAC;KACtB;IAED,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;AACjC,EAAE;AAEF;;;;;;AAMA,MAAM,kBAAkB,GAAG;IACzB,MAAM,YAAY,GAAG,gBAAgB,EAAE,CAAC;IACxC,MAAM,cAAc,GAAG,YAAY,GAAG,IAAI,GAAG,kBAAkB,EAAE,CAAC;IAElE,MAAM,MAAM,GAAG,YAAY,IAAI,cAAc,CAAC;IAC9C,IAAI,MAAM,EAAE;QACV,MAAM,IAAI,GAAG,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,mBAAmB,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;QAC7F,WAAW,CAAC,GAAG,IAAI,IAAI,gBAAgB,EAAE,CAAC,CAAC;KAC5C;SAAM;QACL,WAAW,CAAC,KAAK,gBAAgB,EAAE,CAAC,CAAC;KACtC;AACH,CAAC,CAAC;AAEF;;;;;;;AAOA,MAAM,cAAc,GAAG,CAAC,OAAe;IACrC,MAAM,gBAAgB,GAAG,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;IACzE,OAAO,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,gBAAgB,CAAC;AACpE,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAElG,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AAErG,MAAM,aAAa,GAAG,CAAC,MAAyB,KAAK,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;;;;;","names":[],"sources":["../../packages/beeq/src/shared/utils/assetsPath.ts"],"sourcesContent":["/**\n * Inspired by Shoelace's `getBasePath` and `setBasePath` functions.\n * https://github.com/shoelace-style/shoelace/blob/next/src/utilities/base-path.ts\n */\n\n/**\n * Extend the Window interface to include the `bqSVGBasePath` property and prevent it from being modified.\n * This is necessary to prevent the basePath from being modified by external scripts.\n */\ndeclare global {\n interface Window {\n bqSVGBasePath: string;\n }\n}\n\nObject.defineProperty(window, 'bqSVGBasePath', {\n configurable: true,\n enumerable: false,\n writable: true,\n});\n\nconst DATA_BEEQ_ATTRIBUTE = 'data-beeq';\nconst DEFAULT_SVG_PATH = 'svg';\nconst scripts = [...document.getElementsByTagName('script')] as HTMLScriptElement[];\n\n/**\n * Sets the `bqSVGBasePath` in the global window object,\n * which is used to determine the SVG path in the BQIcon component.\n * This method is the only way to update the base path.\n *\n * @param path - The new base path to set.\n */\nexport const setBasePath = (path: string) => {\n window.bqSVGBasePath = path;\n};\n\n/**\n * Retrieves the `bqSVGBasePath`, optionally appending a subpath.\n *\n * @param subpath - The subpath to append to the base path.\n * @returns The full base path including the subpath.\n */\nexport const getBasePath = (subpath = ''): string => {\n const { bqSVGBasePath } = window;\n if (!bqSVGBasePath) {\n initializeBasePath();\n }\n\n return formatBasePath(subpath);\n};\n\n/**\n * Initializes the `bqSVGBasePath` for the BEEQ assets by finding the appropriate script and setting the base path accordingly.\n * 1. If a script with the attribute `data-beeq` exists, the base path will be set to the value of the `src` attribute.\n * 2. If a script with the name `beeq.js` or `beeq.esm.js` exists, the base path will be set to the value of the `src` attribute.\n * 3. If no scripts are found, the base path will be set to the default value `./svg`.\n */\nconst initializeBasePath = (): void => {\n const configScript = findConfigScript();\n const fallbackScript = configScript ? null : findFallbackScript();\n\n const script = configScript || fallbackScript;\n if (script) {\n const path = configScript ? script.getAttribute(DATA_BEEQ_ATTRIBUTE) : getScriptPath(script);\n setBasePath(`${path}/${DEFAULT_SVG_PATH}`);\n } else {\n setBasePath(`./${DEFAULT_SVG_PATH}`);\n }\n};\n\n/**\n * Formats the `bqSVGBasePath` without a trailing slash.\n * If one exists, append the subpath separated by a slash.\n *\n * @param subpath - The subpath to append to the base path.\n * @returns The formatted base path.\n */\nconst formatBasePath = (subpath: string): string => {\n const formattedSubpath = subpath ? `/${subpath.replace(/^\\//, '')}` : '';\n return window.bqSVGBasePath.replace(/\\/$/, '') + formattedSubpath;\n};\n\nconst findConfigScript = () => scripts.find((script) => script.hasAttribute(DATA_BEEQ_ATTRIBUTE));\n\nconst findFallbackScript = () => scripts.find((script) => /beeq(\\.esm)?\\.js($|\\?)/.test(script.src));\n\nconst getScriptPath = (script: HTMLScriptElement) => script.getAttribute('src').split('/').slice(0, -1).join('/');\n"],"version":3}
@@ -1 +0,0 @@
1
- {"file":"assetsPath-a1b58980.js","mappings":";;;;AAAA;;;;AAeA,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,eAAe,EAAE;IAC7C,YAAY,EAAE,IAAI;IAClB,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,IAAI;CACf,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,WAAW,CAAC;AACxC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAC/B,MAAM,OAAO,GAAG,CAAC,GAAG,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAwB,CAAC;AAEpF;;;;;;;MAOa,WAAW,GAAG,CAAC,IAAY;IACtC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;AAC9B,EAAE;AAEF;;;;;;MAMa,WAAW,GAAG,CAAC,OAAO,GAAG,EAAE;IACtC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IACjC,IAAI,CAAC,aAAa,EAAE;QAClB,kBAAkB,EAAE,CAAC;KACtB;IAED,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;AACjC,EAAE;AAEF;;;;;;AAMA,MAAM,kBAAkB,GAAG;IACzB,MAAM,YAAY,GAAG,gBAAgB,EAAE,CAAC;IACxC,MAAM,cAAc,GAAG,YAAY,GAAG,IAAI,GAAG,kBAAkB,EAAE,CAAC;IAElE,MAAM,MAAM,GAAG,YAAY,IAAI,cAAc,CAAC;IAC9C,IAAI,MAAM,EAAE;QACV,MAAM,IAAI,GAAG,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,mBAAmB,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;QAC7F,WAAW,CAAC,GAAG,IAAI,IAAI,gBAAgB,EAAE,CAAC,CAAC;KAC5C;SAAM;QACL,WAAW,CAAC,KAAK,gBAAgB,EAAE,CAAC,CAAC;KACtC;AACH,CAAC,CAAC;AAEF;;;;;;;AAOA,MAAM,cAAc,GAAG,CAAC,OAAe;IACrC,MAAM,gBAAgB,GAAG,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;IACzE,OAAO,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,gBAAgB,CAAC;AACpE,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAElG,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AAErG,MAAM,aAAa,GAAG,CAAC,MAAyB,KAAK,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;;;;","names":[],"sources":["../../packages/beeq/src/shared/utils/assetsPath.ts"],"sourcesContent":["/**\n * Inspired by Shoelace's `getBasePath` and `setBasePath` functions.\n * https://github.com/shoelace-style/shoelace/blob/next/src/utilities/base-path.ts\n */\n\n/**\n * Extend the Window interface to include the `bqSVGBasePath` property and prevent it from being modified.\n * This is necessary to prevent the basePath from being modified by external scripts.\n */\ndeclare global {\n interface Window {\n bqSVGBasePath: string;\n }\n}\n\nObject.defineProperty(window, 'bqSVGBasePath', {\n configurable: true,\n enumerable: false,\n writable: true,\n});\n\nconst DATA_BEEQ_ATTRIBUTE = 'data-beeq';\nconst DEFAULT_SVG_PATH = 'svg';\nconst scripts = [...document.getElementsByTagName('script')] as HTMLScriptElement[];\n\n/**\n * Sets the `bqSVGBasePath` in the global window object,\n * which is used to determine the SVG path in the BQIcon component.\n * This method is the only way to update the base path.\n *\n * @param path - The new base path to set.\n */\nexport const setBasePath = (path: string) => {\n window.bqSVGBasePath = path;\n};\n\n/**\n * Retrieves the `bqSVGBasePath`, optionally appending a subpath.\n *\n * @param subpath - The subpath to append to the base path.\n * @returns The full base path including the subpath.\n */\nexport const getBasePath = (subpath = ''): string => {\n const { bqSVGBasePath } = window;\n if (!bqSVGBasePath) {\n initializeBasePath();\n }\n\n return formatBasePath(subpath);\n};\n\n/**\n * Initializes the `bqSVGBasePath` for the BEEQ assets by finding the appropriate script and setting the base path accordingly.\n * 1. If a script with the attribute `data-beeq` exists, the base path will be set to the value of the `src` attribute.\n * 2. If a script with the name `beeq.js` or `beeq.esm.js` exists, the base path will be set to the value of the `src` attribute.\n * 3. If no scripts are found, the base path will be set to the default value `./svg`.\n */\nconst initializeBasePath = (): void => {\n const configScript = findConfigScript();\n const fallbackScript = configScript ? null : findFallbackScript();\n\n const script = configScript || fallbackScript;\n if (script) {\n const path = configScript ? script.getAttribute(DATA_BEEQ_ATTRIBUTE) : getScriptPath(script);\n setBasePath(`${path}/${DEFAULT_SVG_PATH}`);\n } else {\n setBasePath(`./${DEFAULT_SVG_PATH}`);\n }\n};\n\n/**\n * Formats the `bqSVGBasePath` without a trailing slash.\n * If one exists, append the subpath separated by a slash.\n *\n * @param subpath - The subpath to append to the base path.\n * @returns The formatted base path.\n */\nconst formatBasePath = (subpath: string): string => {\n const formattedSubpath = subpath ? `/${subpath.replace(/^\\//, '')}` : '';\n return window.bqSVGBasePath.replace(/\\/$/, '') + formattedSubpath;\n};\n\nconst findConfigScript = () => scripts.find((script) => script.hasAttribute(DATA_BEEQ_ATTRIBUTE));\n\nconst findFallbackScript = () => scripts.find((script) => /beeq(\\.esm)?\\.js($|\\?)/.test(script.src));\n\nconst getScriptPath = (script: HTMLScriptElement) => script.getAttribute('src').split('/').slice(0, -1).join('/');\n"],"version":3}
@@ -1,2 +0,0 @@
1
- import { Config } from '../../../../../../../../stencil-public-runtime';
2
- export declare const config: Config;