@beeq/core 1.8.0-beta.14 → 1.8.0-beta.16

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 (587) 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 +1 -1
  4. package/dist/beeq/{p-350cd07e.entry.js → p-026fad0d.entry.js} +2 -2
  5. package/dist/beeq/p-026fad0d.entry.js.map +1 -0
  6. package/dist/beeq/{p-457ab863.entry.js → p-09323635.entry.js} +2 -2
  7. package/dist/beeq/p-09323635.entry.js.map +1 -0
  8. package/dist/beeq/p-0c0bd129.entry.js +6 -0
  9. package/dist/beeq/p-0c0bd129.entry.js.map +1 -0
  10. package/dist/beeq/{p-0180a237.entry.js → p-0c12aa01.entry.js} +2 -2
  11. package/dist/beeq/p-0c12aa01.entry.js.map +1 -0
  12. package/dist/beeq/{p-be234206.entry.js → p-0f72dbb6.entry.js} +2 -2
  13. package/dist/beeq/p-0f72dbb6.entry.js.map +1 -0
  14. package/dist/beeq/{p-96793709.entry.js → p-19b7bbe0.entry.js} +2 -2
  15. package/dist/beeq/p-19b7bbe0.entry.js.map +1 -0
  16. package/dist/beeq/{p-a89bfbd8.entry.js → p-1b0cfcd6.entry.js} +2 -2
  17. package/dist/beeq/p-1b0cfcd6.entry.js.map +1 -0
  18. package/dist/beeq/{p-0711a447.entry.js → p-1cdea079.entry.js} +2 -2
  19. package/dist/beeq/p-1cdea079.entry.js.map +1 -0
  20. package/dist/beeq/{p-99668b08.entry.js → p-20d91acf.entry.js} +2 -2
  21. package/dist/beeq/p-20d91acf.entry.js.map +1 -0
  22. package/dist/beeq/{p-854e2114.entry.js → p-29d9487c.entry.js} +2 -2
  23. package/dist/beeq/p-29d9487c.entry.js.map +1 -0
  24. package/dist/beeq/p-2c566eb0.entry.js +6 -0
  25. package/dist/beeq/p-2c566eb0.entry.js.map +1 -0
  26. package/dist/beeq/{p-d2c20a92.entry.js → p-2ef4ed54.entry.js} +2 -2
  27. package/dist/beeq/p-2ef4ed54.entry.js.map +1 -0
  28. package/dist/beeq/{p-561ff182.js → p-3c472097.js} +2 -2
  29. package/dist/beeq/{p-bdf2ea24.entry.js → p-43dc9906.entry.js} +2 -2
  30. package/dist/beeq/p-43dc9906.entry.js.map +1 -0
  31. package/dist/beeq/{p-b9171e19.entry.js → p-4c66663c.entry.js} +2 -2
  32. package/dist/beeq/p-4c66663c.entry.js.map +1 -0
  33. package/dist/beeq/{p-81b6556f.entry.js → p-4d6a9646.entry.js} +2 -2
  34. package/dist/beeq/p-4d6a9646.entry.js.map +1 -0
  35. package/dist/beeq/{p-0ff234ec.entry.js → p-52603411.entry.js} +2 -2
  36. package/dist/beeq/p-52603411.entry.js.map +1 -0
  37. package/dist/beeq/{p-c8f639ab.entry.js → p-56c43424.entry.js} +2 -2
  38. package/dist/beeq/p-56c43424.entry.js.map +1 -0
  39. package/dist/beeq/{p-5b5f9a2a.entry.js → p-5d6fc48a.entry.js} +2 -2
  40. package/dist/beeq/p-5d6fc48a.entry.js.map +1 -0
  41. package/dist/beeq/p-60094726.js +7 -0
  42. package/dist/beeq/p-60094726.js.map +1 -0
  43. package/dist/beeq/p-6079f9b2.entry.js +6 -0
  44. package/dist/beeq/p-6079f9b2.entry.js.map +1 -0
  45. package/dist/beeq/{p-6482a62d.entry.js → p-6a0b0106.entry.js} +2 -2
  46. package/dist/beeq/p-6a0b0106.entry.js.map +1 -0
  47. package/dist/beeq/{p-382eea5f.entry.js → p-73ef1309.entry.js} +2 -2
  48. package/dist/beeq/p-73ef1309.entry.js.map +1 -0
  49. package/dist/beeq/{p-cc83682b.entry.js → p-75cc6789.entry.js} +2 -2
  50. package/dist/beeq/p-75cc6789.entry.js.map +1 -0
  51. package/dist/beeq/{p-42d22a31.entry.js → p-7a719a9b.entry.js} +2 -2
  52. package/dist/beeq/p-7a719a9b.entry.js.map +1 -0
  53. package/dist/beeq/{p-a0d6207d.entry.js → p-7f124d61.entry.js} +2 -2
  54. package/dist/beeq/p-7f124d61.entry.js.map +1 -0
  55. package/dist/beeq/{p-def8acd7.entry.js → p-8ca2588f.entry.js} +2 -2
  56. package/dist/beeq/p-8ca2588f.entry.js.map +1 -0
  57. package/dist/beeq/{p-8b595d1f.entry.js → p-921fa1ea.entry.js} +2 -2
  58. package/dist/beeq/p-921fa1ea.entry.js.map +1 -0
  59. package/dist/beeq/p-99b5d671.entry.js +6 -0
  60. package/dist/beeq/p-99b5d671.entry.js.map +1 -0
  61. package/dist/beeq/{p-47d41233.entry.js → p-a5e01629.entry.js} +2 -2
  62. package/dist/beeq/p-a5e01629.entry.js.map +1 -0
  63. package/dist/beeq/{p-5f00f1f5.entry.js → p-adec3d5b.entry.js} +2 -2
  64. package/dist/beeq/{p-5f00f1f5.entry.js.map → p-adec3d5b.entry.js.map} +1 -1
  65. package/dist/beeq/{p-1d67af77.entry.js → p-b83f174c.entry.js} +2 -2
  66. package/dist/beeq/p-b83f174c.entry.js.map +1 -0
  67. package/dist/beeq/{p-4f47130c.entry.js → p-c09dac58.entry.js} +2 -2
  68. package/dist/beeq/p-c09dac58.entry.js.map +1 -0
  69. package/dist/beeq/p-c65d21e2.entry.js +6 -0
  70. package/dist/beeq/p-c65d21e2.entry.js.map +1 -0
  71. package/dist/beeq/{p-eab2d27c.entry.js → p-c70c6b00.entry.js} +2 -2
  72. package/dist/beeq/p-c70c6b00.entry.js.map +1 -0
  73. package/dist/beeq/{p-995bfd58.js → p-c9ed66d9.js} +2 -2
  74. package/dist/beeq/{p-a6094ed8.entry.js → p-d8221b88.entry.js} +2 -2
  75. package/dist/beeq/p-d8221b88.entry.js.map +1 -0
  76. package/dist/beeq/{p-439583bc.entry.js → p-d8a257b7.entry.js} +2 -2
  77. package/dist/beeq/p-d8a257b7.entry.js.map +1 -0
  78. package/dist/beeq/p-dc544089.entry.js +6 -0
  79. package/dist/beeq/p-dc544089.entry.js.map +1 -0
  80. package/dist/beeq/{p-70ae504a.entry.js → p-e056c02a.entry.js} +2 -2
  81. package/dist/beeq/p-e056c02a.entry.js.map +1 -0
  82. package/dist/beeq/{p-8e9f0bf3.entry.js → p-e68dcd3d.entry.js} +2 -2
  83. package/dist/beeq/p-e68dcd3d.entry.js.map +1 -0
  84. package/dist/beeq/{p-d7507599.entry.js → p-eb662058.entry.js} +2 -2
  85. package/dist/beeq/p-eb662058.entry.js.map +1 -0
  86. package/dist/beeq.html-custom-data.json +2029 -0
  87. package/dist/cjs/{assetsPath-557e47c5.js → assetsPath-0ec85a1a.js} +2 -2
  88. package/dist/cjs/{assetsPath-557e47c5.js.map → assetsPath-0ec85a1a.js.map} +1 -1
  89. package/dist/cjs/beeq.cjs.js +3 -3
  90. package/dist/cjs/beeq.cjs.js.map +1 -1
  91. package/dist/cjs/bq-accordion-group.cjs.entry.js +3 -3
  92. package/dist/cjs/bq-accordion-group.cjs.entry.js.map +1 -1
  93. package/dist/cjs/bq-accordion.cjs.entry.js +5 -5
  94. package/dist/cjs/bq-accordion.cjs.entry.js.map +1 -1
  95. package/dist/cjs/bq-alert.cjs.entry.js +6 -6
  96. package/dist/cjs/bq-alert.cjs.entry.js.map +1 -1
  97. package/dist/cjs/bq-avatar.cjs.entry.js +5 -5
  98. package/dist/cjs/bq-avatar.cjs.entry.js.map +1 -1
  99. package/dist/cjs/bq-badge.cjs.entry.js +3 -3
  100. package/dist/cjs/bq-badge.cjs.entry.js.map +1 -1
  101. package/dist/cjs/bq-breadcrumb-item.cjs.entry.js +4 -11
  102. package/dist/cjs/bq-breadcrumb-item.cjs.entry.js.map +1 -1
  103. package/dist/cjs/bq-breadcrumb.cjs.entry.js +20 -38
  104. package/dist/cjs/bq-breadcrumb.cjs.entry.js.map +1 -1
  105. package/dist/cjs/bq-button_2.cjs.entry.js +7 -7
  106. package/dist/cjs/bq-button_2.cjs.entry.js.map +1 -1
  107. package/dist/cjs/bq-card.cjs.entry.js +4 -4
  108. package/dist/cjs/bq-card.cjs.entry.js.map +1 -1
  109. package/dist/cjs/bq-checkbox.cjs.entry.js +9 -11
  110. package/dist/cjs/bq-checkbox.cjs.entry.js.map +1 -1
  111. package/dist/cjs/bq-date-picker.cjs.entry.js +35 -16
  112. package/dist/cjs/bq-date-picker.cjs.entry.js.map +1 -1
  113. package/dist/cjs/bq-dialog.cjs.entry.js +6 -6
  114. package/dist/cjs/bq-dialog.cjs.entry.js.map +1 -1
  115. package/dist/cjs/bq-divider.cjs.entry.js +5 -5
  116. package/dist/cjs/bq-divider.cjs.entry.js.map +1 -1
  117. package/dist/cjs/bq-drawer.cjs.entry.js +6 -6
  118. package/dist/cjs/bq-drawer.cjs.entry.js.map +1 -1
  119. package/dist/cjs/bq-dropdown_2.cjs.entry.js +5 -5
  120. package/dist/cjs/bq-dropdown_2.cjs.entry.js.map +1 -1
  121. package/dist/cjs/bq-empty-state.cjs.entry.js +5 -5
  122. package/dist/cjs/bq-empty-state.cjs.entry.js.map +1 -1
  123. package/dist/cjs/bq-input.cjs.entry.js +42 -17
  124. package/dist/cjs/bq-input.cjs.entry.js.map +1 -1
  125. package/dist/cjs/bq-notification.cjs.entry.js +4 -4
  126. package/dist/cjs/bq-notification.cjs.entry.js.map +1 -1
  127. package/dist/cjs/bq-option-group.cjs.entry.js +2 -2
  128. package/dist/cjs/bq-option-group.cjs.entry.js.map +1 -1
  129. package/dist/cjs/bq-option-list_2.cjs.entry.js +7 -7
  130. package/dist/cjs/bq-option-list_2.cjs.entry.js.map +1 -1
  131. package/dist/cjs/bq-option.cjs.entry.js +5 -5
  132. package/dist/cjs/bq-option.cjs.entry.js.map +1 -1
  133. package/dist/cjs/bq-page-title.cjs.entry.js +3 -3
  134. package/dist/cjs/bq-page-title.cjs.entry.js.map +1 -1
  135. package/dist/cjs/bq-progress.cjs.entry.js +9 -9
  136. package/dist/cjs/bq-progress.cjs.entry.js.map +1 -1
  137. package/dist/cjs/bq-radio-group.cjs.entry.js +68 -25
  138. package/dist/cjs/bq-radio-group.cjs.entry.js.map +1 -1
  139. package/dist/cjs/bq-radio.cjs.entry.js +10 -4
  140. package/dist/cjs/bq-radio.cjs.entry.js.map +1 -1
  141. package/dist/cjs/bq-select.cjs.entry.js +7 -7
  142. package/dist/cjs/bq-select.cjs.entry.js.map +1 -1
  143. package/dist/cjs/bq-side-menu-item.cjs.entry.js +2 -2
  144. package/dist/cjs/bq-side-menu-item.cjs.entry.js.map +1 -1
  145. package/dist/cjs/bq-side-menu.cjs.entry.js +3 -3
  146. package/dist/cjs/bq-side-menu.cjs.entry.js.map +1 -1
  147. package/dist/cjs/bq-slider.cjs.entry.js +21 -7
  148. package/dist/cjs/bq-slider.cjs.entry.js.map +1 -1
  149. package/dist/cjs/bq-spinner.cjs.entry.js +5 -5
  150. package/dist/cjs/bq-spinner.cjs.entry.js.map +1 -1
  151. package/dist/cjs/bq-status.cjs.entry.js +2 -2
  152. package/dist/cjs/bq-status.cjs.entry.js.map +1 -1
  153. package/dist/cjs/bq-step-item.cjs.entry.js +5 -5
  154. package/dist/cjs/bq-step-item.cjs.entry.js.map +1 -1
  155. package/dist/cjs/bq-steps.cjs.entry.js +2 -2
  156. package/dist/cjs/bq-steps.cjs.entry.js.map +1 -1
  157. package/dist/cjs/bq-switch.cjs.entry.js +56 -4
  158. package/dist/cjs/bq-switch.cjs.entry.js.map +1 -1
  159. package/dist/cjs/bq-tab-group.cjs.entry.js +9 -9
  160. package/dist/cjs/bq-tab-group.cjs.entry.js.map +1 -1
  161. package/dist/cjs/bq-tab.cjs.entry.js +6 -6
  162. package/dist/cjs/bq-tab.cjs.entry.js.map +1 -1
  163. package/dist/cjs/bq-textarea.cjs.entry.js +62 -13
  164. package/dist/cjs/bq-textarea.cjs.entry.js.map +1 -1
  165. package/dist/cjs/bq-toast.cjs.entry.js +2 -2
  166. package/dist/cjs/bq-toast.cjs.entry.js.map +1 -1
  167. package/dist/cjs/bq-tooltip.cjs.entry.js +2 -2
  168. package/dist/cjs/bq-tooltip.cjs.entry.js.map +1 -1
  169. package/dist/cjs/{index-9cbab9ab.js → index-c4edfa07.js} +787 -553
  170. package/dist/cjs/index-c4edfa07.js.map +1 -0
  171. package/dist/cjs/index.cjs.js +3 -3
  172. package/dist/cjs/{isDefined-7235b5cd.js → isDefined-e538d669.js} +2 -2
  173. package/dist/cjs/{isDefined-7235b5cd.js.map → isDefined-e538d669.js.map} +1 -1
  174. package/dist/cjs/loader.cjs.js +2 -2
  175. package/dist/collection/collection-manifest.json +1 -1
  176. package/dist/collection/components/accordion/bq-accordion.js +117 -18
  177. package/dist/collection/components/accordion/bq-accordion.js.map +1 -1
  178. package/dist/collection/components/accordion-group/bq-accordion-group.js +36 -1
  179. package/dist/collection/components/accordion-group/bq-accordion-group.js.map +1 -1
  180. package/dist/collection/components/accordion-group/scss/bq-accordion-group.css +1 -1
  181. package/dist/collection/components/alert/bq-alert.js +91 -9
  182. package/dist/collection/components/alert/bq-alert.js.map +1 -1
  183. package/dist/collection/components/alert/scss/bq-alert.css +1 -1
  184. package/dist/collection/components/avatar/bq-avatar.js +66 -4
  185. package/dist/collection/components/avatar/bq-avatar.js.map +1 -1
  186. package/dist/collection/components/avatar/scss/bq-avatar.css +1 -1
  187. package/dist/collection/components/badge/bq-badge.js +36 -2
  188. package/dist/collection/components/badge/bq-badge.js.map +1 -1
  189. package/dist/collection/components/breadcrumb/bq-breadcrumb.js +43 -119
  190. package/dist/collection/components/breadcrumb/bq-breadcrumb.js.map +1 -1
  191. package/dist/collection/components/breadcrumb/scss/bq-breadcrumb.css +1 -1
  192. package/dist/collection/components/breadcrumb-item/bq-breadcrumb-item.js +50 -46
  193. package/dist/collection/components/breadcrumb-item/bq-breadcrumb-item.js.map +1 -1
  194. package/dist/collection/components/breadcrumb-item/scss/bq-breadcrumb-item.css +1 -1
  195. package/dist/collection/components/button/bq-button.js +77 -2
  196. package/dist/collection/components/button/bq-button.js.map +1 -1
  197. package/dist/collection/components/button/scss/bq-button.css +1 -1
  198. package/dist/collection/components/card/bq-card.js +37 -3
  199. package/dist/collection/components/card/bq-card.js.map +1 -1
  200. package/dist/collection/components/card/scss/bq-card.css +1 -1
  201. package/dist/collection/components/checkbox/bq-checkbox.js +62 -9
  202. package/dist/collection/components/checkbox/bq-checkbox.js.map +1 -1
  203. package/dist/collection/components/checkbox/scss/bq-checkbox.css +1 -1
  204. package/dist/collection/components/date-picker/bq-date-picker.js +190 -43
  205. package/dist/collection/components/date-picker/bq-date-picker.js.map +1 -1
  206. package/dist/collection/components/date-picker/scss/bq-date-picker.css +1 -1
  207. package/dist/collection/components/dialog/bq-dialog.js +96 -12
  208. package/dist/collection/components/dialog/bq-dialog.js.map +1 -1
  209. package/dist/collection/components/dialog/scss/bq-dialog.css +1 -1
  210. package/dist/collection/components/divider/bq-divider.js +53 -8
  211. package/dist/collection/components/divider/bq-divider.js.map +1 -1
  212. package/dist/collection/components/drawer/bq-drawer.js +75 -13
  213. package/dist/collection/components/drawer/bq-drawer.js.map +1 -1
  214. package/dist/collection/components/drawer/scss/bq-drawer.css +1 -1
  215. package/dist/collection/components/dropdown/bq-dropdown.js +70 -4
  216. package/dist/collection/components/dropdown/bq-dropdown.js.map +1 -1
  217. package/dist/collection/components/dropdown/scss/bq-dropdown.css +1 -1
  218. package/dist/collection/components/empty-state/bq-empty-state.js +24 -4
  219. package/dist/collection/components/empty-state/bq-empty-state.js.map +1 -1
  220. package/dist/collection/components/icon/bq-icon.js +34 -2
  221. package/dist/collection/components/icon/bq-icon.js.map +1 -1
  222. package/dist/collection/components/input/bq-input.js +176 -14
  223. package/dist/collection/components/input/bq-input.js.map +1 -1
  224. package/dist/collection/components/input/scss/bq-input.css +1 -1
  225. package/dist/collection/components/notification/bq-notification.js +73 -7
  226. package/dist/collection/components/notification/bq-notification.js.map +1 -1
  227. package/dist/collection/components/notification/scss/bq-notification.css +1 -1
  228. package/dist/collection/components/option/bq-option.js +52 -4
  229. package/dist/collection/components/option/bq-option.js.map +1 -1
  230. package/dist/collection/components/option-group/bq-option-group.js +32 -1
  231. package/dist/collection/components/option-group/bq-option-group.js.map +1 -1
  232. package/dist/collection/components/option-list/bq-option-list.js +24 -1
  233. package/dist/collection/components/option-list/bq-option-list.js.map +1 -1
  234. package/dist/collection/components/option-list/scss/bq-option-list.css +1 -1
  235. package/dist/collection/components/page-title/bq-page-title.js +39 -2
  236. package/dist/collection/components/page-title/bq-page-title.js.map +1 -1
  237. package/dist/collection/components/panel/bq-panel.js +44 -1
  238. package/dist/collection/components/panel/bq-panel.js.map +1 -1
  239. package/dist/collection/components/panel/scss/bq-panel.css +1 -1
  240. package/dist/collection/components/progress/bq-progress.js +105 -67
  241. package/dist/collection/components/progress/bq-progress.js.map +1 -1
  242. package/dist/collection/components/radio/bq-radio.js +76 -2
  243. package/dist/collection/components/radio/bq-radio.js.map +1 -1
  244. package/dist/collection/components/radio/scss/bq-radio.css +1 -1
  245. package/dist/collection/components/radio-group/bq-radio-group.js +187 -57
  246. package/dist/collection/components/radio-group/bq-radio-group.js.map +1 -1
  247. package/dist/collection/components/radio-group/scss/bq-radio-group.css +1 -1
  248. package/dist/collection/components/select/bq-select.js +133 -4
  249. package/dist/collection/components/select/bq-select.js.map +1 -1
  250. package/dist/collection/components/select/scss/bq-select.css +1 -1
  251. package/dist/collection/components/side-menu/bq-side-menu.js +53 -2
  252. package/dist/collection/components/side-menu/bq-side-menu.js.map +1 -1
  253. package/dist/collection/components/side-menu-item/bq-side-menu-item.js +43 -0
  254. package/dist/collection/components/side-menu-item/bq-side-menu-item.js.map +1 -1
  255. package/dist/collection/components/side-menu-item/scss/bq-side-menu-item.css +1 -1
  256. package/dist/collection/components/slider/bq-slider.js +88 -6
  257. package/dist/collection/components/slider/bq-slider.js.map +1 -1
  258. package/dist/collection/components/spinner/bq-spinner.js +36 -4
  259. package/dist/collection/components/spinner/bq-spinner.js.map +1 -1
  260. package/dist/collection/components/status/bq-status.js +24 -4
  261. package/dist/collection/components/status/bq-status.js.map +1 -1
  262. package/dist/collection/components/step-item/bq-step-item.js +42 -4
  263. package/dist/collection/components/step-item/bq-step-item.js.map +1 -1
  264. package/dist/collection/components/steps/bq-steps.js +34 -1
  265. package/dist/collection/components/steps/bq-steps.js.map +1 -1
  266. package/dist/collection/components/switch/bq-switch.js +124 -3
  267. package/dist/collection/components/switch/bq-switch.js.map +1 -1
  268. package/dist/collection/components/switch/scss/bq-switch.css +1 -1
  269. package/dist/collection/components/tab/bq-tab.js +100 -41
  270. package/dist/collection/components/tab/bq-tab.js.map +1 -1
  271. package/dist/collection/components/tab-group/bq-tab-group.js +84 -46
  272. package/dist/collection/components/tab-group/bq-tab-group.js.map +1 -1
  273. package/dist/collection/components/tab-group/scss/bq-tab-group.css +1 -1
  274. package/dist/collection/components/tag/bq-tag.js +70 -3
  275. package/dist/collection/components/tag/bq-tag.js.map +1 -1
  276. package/dist/collection/components/tag/scss/bq-tag.css +1 -1
  277. package/dist/collection/components/textarea/bq-textarea.js +176 -11
  278. package/dist/collection/components/textarea/bq-textarea.js.map +1 -1
  279. package/dist/collection/components/textarea/scss/bq-textarea.css +1 -1
  280. package/dist/collection/components/toast/bq-toast.js +60 -3
  281. package/dist/collection/components/toast/bq-toast.js.map +1 -1
  282. package/dist/collection/components/tooltip/bq-tooltip.js +55 -1
  283. package/dist/collection/components/tooltip/bq-tooltip.js.map +1 -1
  284. package/dist/collection/global/scripts/global.js.map +1 -1
  285. package/dist/collection/tools/generate-custom-elements-json.js +8 -7
  286. package/dist/collection/tools/generate-custom-elements-json.js.map +1 -1
  287. package/dist/components/bq-accordion-group.js +1 -1
  288. package/dist/components/bq-accordion-group.js.map +1 -1
  289. package/dist/components/bq-accordion.js +1 -1
  290. package/dist/components/bq-accordion.js.map +1 -1
  291. package/dist/components/bq-alert.js +1 -1
  292. package/dist/components/bq-alert.js.map +1 -1
  293. package/dist/components/bq-avatar.js +1 -1
  294. package/dist/components/bq-avatar.js.map +1 -1
  295. package/dist/components/bq-badge.js +1 -1
  296. package/dist/components/bq-breadcrumb-item.js +1 -1
  297. package/dist/components/bq-breadcrumb-item.js.map +1 -1
  298. package/dist/components/bq-breadcrumb.js +1 -1
  299. package/dist/components/bq-breadcrumb.js.map +1 -1
  300. package/dist/components/bq-button.js +1 -1
  301. package/dist/components/bq-card.js +1 -1
  302. package/dist/components/bq-card.js.map +1 -1
  303. package/dist/components/bq-checkbox.js +1 -1
  304. package/dist/components/bq-checkbox.js.map +1 -1
  305. package/dist/components/bq-date-picker.js +1 -1
  306. package/dist/components/bq-date-picker.js.map +1 -1
  307. package/dist/components/bq-dialog.js +1 -1
  308. package/dist/components/bq-dialog.js.map +1 -1
  309. package/dist/components/bq-divider.js +1 -1
  310. package/dist/components/bq-drawer.js +1 -1
  311. package/dist/components/bq-drawer.js.map +1 -1
  312. package/dist/components/bq-dropdown.js +1 -1
  313. package/dist/components/bq-empty-state.js +1 -1
  314. package/dist/components/bq-empty-state.js.map +1 -1
  315. package/dist/components/bq-icon.js +1 -1
  316. package/dist/components/bq-input.js +1 -1
  317. package/dist/components/bq-input.js.map +1 -1
  318. package/dist/components/bq-notification.js +1 -1
  319. package/dist/components/bq-notification.js.map +1 -1
  320. package/dist/components/bq-option-group.js +1 -1
  321. package/dist/components/bq-option-group.js.map +1 -1
  322. package/dist/components/bq-option-list.js +1 -1
  323. package/dist/components/bq-option.js +1 -1
  324. package/dist/components/bq-option.js.map +1 -1
  325. package/dist/components/bq-page-title.js +1 -1
  326. package/dist/components/bq-page-title.js.map +1 -1
  327. package/dist/components/bq-panel.js +1 -1
  328. package/dist/components/bq-progress.js +1 -1
  329. package/dist/components/bq-progress.js.map +1 -1
  330. package/dist/components/bq-radio-group.js +1 -1
  331. package/dist/components/bq-radio-group.js.map +1 -1
  332. package/dist/components/bq-radio.js +1 -1
  333. package/dist/components/bq-radio.js.map +1 -1
  334. package/dist/components/bq-select.js +1 -1
  335. package/dist/components/bq-select.js.map +1 -1
  336. package/dist/components/bq-side-menu-item.js +1 -1
  337. package/dist/components/bq-side-menu-item.js.map +1 -1
  338. package/dist/components/bq-side-menu.js +1 -1
  339. package/dist/components/bq-side-menu.js.map +1 -1
  340. package/dist/components/bq-slider.js +1 -1
  341. package/dist/components/bq-slider.js.map +1 -1
  342. package/dist/components/bq-spinner.js +1 -1
  343. package/dist/components/bq-spinner.js.map +1 -1
  344. package/dist/components/bq-status.js +1 -1
  345. package/dist/components/bq-status.js.map +1 -1
  346. package/dist/components/bq-step-item.js +1 -1
  347. package/dist/components/bq-step-item.js.map +1 -1
  348. package/dist/components/bq-steps.js +1 -1
  349. package/dist/components/bq-steps.js.map +1 -1
  350. package/dist/components/bq-switch.js +1 -1
  351. package/dist/components/bq-switch.js.map +1 -1
  352. package/dist/components/bq-tab-group.js +1 -1
  353. package/dist/components/bq-tab-group.js.map +1 -1
  354. package/dist/components/bq-tab.js +1 -1
  355. package/dist/components/bq-tab.js.map +1 -1
  356. package/dist/components/bq-tag.js +1 -1
  357. package/dist/components/bq-textarea.js +1 -1
  358. package/dist/components/bq-textarea.js.map +1 -1
  359. package/dist/components/bq-toast.js +1 -1
  360. package/dist/components/bq-toast.js.map +1 -1
  361. package/dist/components/bq-tooltip.js +1 -1
  362. package/dist/components/index.js +1 -1
  363. package/dist/components/{p-2bdb6f46.js → p-27c1b08e.js} +2 -2
  364. package/dist/components/p-27c1b08e.js.map +1 -0
  365. package/dist/components/{p-209dd39e.js → p-295b174b.js} +2 -2
  366. package/dist/components/p-295b174b.js.map +1 -0
  367. package/dist/components/{p-fd41feb9.js → p-33371480.js} +2 -2
  368. package/dist/components/{p-fd41feb9.js.map → p-33371480.js.map} +1 -1
  369. package/dist/components/p-5940b410.js +7 -0
  370. package/dist/components/p-5940b410.js.map +1 -0
  371. package/dist/components/{p-00b80145.js → p-78d23ddc.js} +2 -2
  372. package/dist/components/{p-9e8fdef7.js → p-93c16753.js} +2 -2
  373. package/dist/components/p-93c16753.js.map +1 -0
  374. package/dist/components/{p-56dbc376.js → p-9f037c57.js} +2 -2
  375. package/dist/components/p-9f037c57.js.map +1 -0
  376. package/dist/components/{p-2c245c83.js → p-c2d43340.js} +2 -2
  377. package/dist/components/p-c2d43340.js.map +1 -0
  378. package/dist/components/{p-641036af.js → p-cbfc423f.js} +2 -2
  379. package/dist/components/p-cbfc423f.js.map +1 -0
  380. package/dist/components/{p-07467338.js → p-cf496927.js} +1 -1
  381. package/dist/components/p-cf496927.js.map +1 -0
  382. package/dist/components/{p-ddf2a5ae.js → p-f5cd1f38.js} +2 -2
  383. package/dist/components/p-f5cd1f38.js.map +1 -0
  384. package/dist/components/{p-59b33ad7.js → p-fe0b66e5.js} +2 -2
  385. package/dist/components/p-fe0b66e5.js.map +1 -0
  386. package/dist/custom-elements.json +17528 -0
  387. package/dist/esm/{assetsPath-15d3d3e4.js → assetsPath-6c498eae.js} +2 -2
  388. package/dist/esm/{assetsPath-15d3d3e4.js.map → assetsPath-6c498eae.js.map} +1 -1
  389. package/dist/esm/beeq.js +4 -4
  390. package/dist/esm/beeq.js.map +1 -1
  391. package/dist/esm/bq-accordion-group.entry.js +3 -3
  392. package/dist/esm/bq-accordion-group.entry.js.map +1 -1
  393. package/dist/esm/bq-accordion.entry.js +5 -5
  394. package/dist/esm/bq-accordion.entry.js.map +1 -1
  395. package/dist/esm/bq-alert.entry.js +6 -6
  396. package/dist/esm/bq-alert.entry.js.map +1 -1
  397. package/dist/esm/bq-avatar.entry.js +5 -5
  398. package/dist/esm/bq-avatar.entry.js.map +1 -1
  399. package/dist/esm/bq-badge.entry.js +3 -3
  400. package/dist/esm/bq-badge.entry.js.map +1 -1
  401. package/dist/esm/bq-breadcrumb-item.entry.js +4 -11
  402. package/dist/esm/bq-breadcrumb-item.entry.js.map +1 -1
  403. package/dist/esm/bq-breadcrumb.entry.js +20 -38
  404. package/dist/esm/bq-breadcrumb.entry.js.map +1 -1
  405. package/dist/esm/bq-button_2.entry.js +7 -7
  406. package/dist/esm/bq-button_2.entry.js.map +1 -1
  407. package/dist/esm/bq-card.entry.js +4 -4
  408. package/dist/esm/bq-card.entry.js.map +1 -1
  409. package/dist/esm/bq-checkbox.entry.js +9 -11
  410. package/dist/esm/bq-checkbox.entry.js.map +1 -1
  411. package/dist/esm/bq-date-picker.entry.js +35 -16
  412. package/dist/esm/bq-date-picker.entry.js.map +1 -1
  413. package/dist/esm/bq-dialog.entry.js +6 -6
  414. package/dist/esm/bq-dialog.entry.js.map +1 -1
  415. package/dist/esm/bq-divider.entry.js +5 -5
  416. package/dist/esm/bq-divider.entry.js.map +1 -1
  417. package/dist/esm/bq-drawer.entry.js +6 -6
  418. package/dist/esm/bq-drawer.entry.js.map +1 -1
  419. package/dist/esm/bq-dropdown_2.entry.js +5 -5
  420. package/dist/esm/bq-dropdown_2.entry.js.map +1 -1
  421. package/dist/esm/bq-empty-state.entry.js +5 -5
  422. package/dist/esm/bq-empty-state.entry.js.map +1 -1
  423. package/dist/esm/bq-input.entry.js +42 -17
  424. package/dist/esm/bq-input.entry.js.map +1 -1
  425. package/dist/esm/bq-notification.entry.js +4 -4
  426. package/dist/esm/bq-notification.entry.js.map +1 -1
  427. package/dist/esm/bq-option-group.entry.js +2 -2
  428. package/dist/esm/bq-option-group.entry.js.map +1 -1
  429. package/dist/esm/bq-option-list_2.entry.js +7 -7
  430. package/dist/esm/bq-option-list_2.entry.js.map +1 -1
  431. package/dist/esm/bq-option.entry.js +5 -5
  432. package/dist/esm/bq-option.entry.js.map +1 -1
  433. package/dist/esm/bq-page-title.entry.js +3 -3
  434. package/dist/esm/bq-page-title.entry.js.map +1 -1
  435. package/dist/esm/bq-progress.entry.js +9 -9
  436. package/dist/esm/bq-progress.entry.js.map +1 -1
  437. package/dist/esm/bq-radio-group.entry.js +68 -25
  438. package/dist/esm/bq-radio-group.entry.js.map +1 -1
  439. package/dist/esm/bq-radio.entry.js +10 -4
  440. package/dist/esm/bq-radio.entry.js.map +1 -1
  441. package/dist/esm/bq-select.entry.js +7 -7
  442. package/dist/esm/bq-select.entry.js.map +1 -1
  443. package/dist/esm/bq-side-menu-item.entry.js +2 -2
  444. package/dist/esm/bq-side-menu-item.entry.js.map +1 -1
  445. package/dist/esm/bq-side-menu.entry.js +3 -3
  446. package/dist/esm/bq-side-menu.entry.js.map +1 -1
  447. package/dist/esm/bq-slider.entry.js +21 -7
  448. package/dist/esm/bq-slider.entry.js.map +1 -1
  449. package/dist/esm/bq-spinner.entry.js +5 -5
  450. package/dist/esm/bq-spinner.entry.js.map +1 -1
  451. package/dist/esm/bq-status.entry.js +2 -2
  452. package/dist/esm/bq-status.entry.js.map +1 -1
  453. package/dist/esm/bq-step-item.entry.js +5 -5
  454. package/dist/esm/bq-step-item.entry.js.map +1 -1
  455. package/dist/esm/bq-steps.entry.js +2 -2
  456. package/dist/esm/bq-steps.entry.js.map +1 -1
  457. package/dist/esm/bq-switch.entry.js +56 -4
  458. package/dist/esm/bq-switch.entry.js.map +1 -1
  459. package/dist/esm/bq-tab-group.entry.js +9 -9
  460. package/dist/esm/bq-tab-group.entry.js.map +1 -1
  461. package/dist/esm/bq-tab.entry.js +6 -6
  462. package/dist/esm/bq-tab.entry.js.map +1 -1
  463. package/dist/esm/bq-textarea.entry.js +62 -13
  464. package/dist/esm/bq-textarea.entry.js.map +1 -1
  465. package/dist/esm/bq-toast.entry.js +2 -2
  466. package/dist/esm/bq-toast.entry.js.map +1 -1
  467. package/dist/esm/bq-tooltip.entry.js +2 -2
  468. package/dist/esm/bq-tooltip.entry.js.map +1 -1
  469. package/dist/esm/{index-f0f1a8c6.js → index-c7d02072.js} +787 -553
  470. package/dist/esm/index-c7d02072.js.map +1 -0
  471. package/dist/esm/index.js +4 -4
  472. package/dist/esm/{isDefined-edd9ee7b.js → isDefined-48de6db5.js} +2 -2
  473. package/dist/esm/{isDefined-edd9ee7b.js.map → isDefined-48de6db5.js.map} +1 -1
  474. package/dist/esm/loader.js +3 -3
  475. package/dist/hydrate/index.js +3017 -848
  476. package/dist/hydrate/index.mjs +3017 -848
  477. package/dist/stencil.config.js +14 -3
  478. package/dist/stencil.config.js.map +1 -1
  479. package/dist/types/components/accordion/bq-accordion.d.ts +100 -10
  480. package/dist/types/components/accordion-group/bq-accordion-group.d.ts +25 -0
  481. package/dist/types/components/alert/bq-alert.d.ts +71 -5
  482. package/dist/types/components/avatar/bq-avatar.d.ts +51 -1
  483. package/dist/types/components/badge/bq-badge.d.ts +28 -0
  484. package/dist/types/components/breadcrumb/bq-breadcrumb.d.ts +25 -17
  485. package/dist/types/components/breadcrumb-item/bq-breadcrumb-item.d.ts +43 -10
  486. package/dist/types/components/button/bq-button.d.ts +51 -0
  487. package/dist/types/components/card/bq-card.d.ts +31 -1
  488. package/dist/types/components/checkbox/bq-checkbox.d.ts +37 -1
  489. package/dist/types/components/date-picker/bq-date-picker.d.ts +112 -28
  490. package/dist/types/components/dialog/bq-dialog.d.ts +76 -8
  491. package/dist/types/components/divider/bq-divider.d.ts +31 -4
  492. package/dist/types/components/drawer/bq-drawer.d.ts +59 -9
  493. package/dist/types/components/dropdown/bq-dropdown.d.ts +51 -3
  494. package/dist/types/components/empty-state/bq-empty-state.d.ts +18 -0
  495. package/dist/types/components/icon/bq-icon.d.ts +21 -1
  496. package/dist/types/components/input/bq-input.d.ts +77 -0
  497. package/dist/types/components/notification/bq-notification.d.ts +57 -5
  498. package/dist/types/components/option/bq-option.d.ts +40 -0
  499. package/dist/types/components/option-group/bq-option-group.d.ts +31 -0
  500. package/dist/types/components/option-list/bq-option-list.d.ts +21 -0
  501. package/dist/types/components/page-title/bq-page-title.d.ts +37 -0
  502. package/dist/types/components/panel/bq-panel.d.ts +31 -0
  503. package/dist/types/components/progress/bq-progress.d.ts +33 -9
  504. package/dist/types/components/radio/bq-radio.d.ts +37 -0
  505. package/dist/types/components/radio-group/bq-radio-group.d.ts +53 -10
  506. package/dist/types/components/select/bq-select.d.ts +85 -0
  507. package/dist/types/components/side-menu/bq-side-menu.d.ts +45 -0
  508. package/dist/types/components/side-menu-item/bq-side-menu-item.d.ts +37 -0
  509. package/dist/types/components/slider/bq-slider.d.ts +39 -1
  510. package/dist/types/components/spinner/bq-spinner.d.ts +26 -0
  511. package/dist/types/components/status/bq-status.d.ts +21 -3
  512. package/dist/types/components/step-item/bq-step-item.d.ts +32 -0
  513. package/dist/types/components/steps/bq-steps.d.ts +27 -0
  514. package/dist/types/components/switch/bq-switch.d.ts +43 -0
  515. package/dist/types/components/tab/bq-tab.d.ts +47 -5
  516. package/dist/types/components/tab-group/bq-tab-group.d.ts +34 -8
  517. package/dist/types/components/tag/bq-tag.d.ts +49 -0
  518. package/dist/types/components/textarea/bq-textarea.d.ts +74 -0
  519. package/dist/types/components/toast/bq-toast.d.ts +47 -2
  520. package/dist/types/components/tooltip/bq-tooltip.d.ts +40 -0
  521. package/dist/types/components.d.ts +5783 -71
  522. package/dist/types/global/scripts/global.d.ts +0 -21
  523. package/dist/types/global.d.ts +26 -0
  524. package/dist/types/tools/generate-custom-elements-json.d.ts +1 -1
  525. package/package.json +1 -1
  526. package/dist/beeq/p-0180a237.entry.js.map +0 -1
  527. package/dist/beeq/p-0711a447.entry.js.map +0 -1
  528. package/dist/beeq/p-0875b715.entry.js +0 -6
  529. package/dist/beeq/p-0875b715.entry.js.map +0 -1
  530. package/dist/beeq/p-0ff234ec.entry.js.map +0 -1
  531. package/dist/beeq/p-1d67af77.entry.js.map +0 -1
  532. package/dist/beeq/p-25365502.entry.js +0 -6
  533. package/dist/beeq/p-25365502.entry.js.map +0 -1
  534. package/dist/beeq/p-350cd07e.entry.js.map +0 -1
  535. package/dist/beeq/p-382eea5f.entry.js.map +0 -1
  536. package/dist/beeq/p-42d22a31.entry.js.map +0 -1
  537. package/dist/beeq/p-439583bc.entry.js.map +0 -1
  538. package/dist/beeq/p-457ab863.entry.js.map +0 -1
  539. package/dist/beeq/p-47d41233.entry.js.map +0 -1
  540. package/dist/beeq/p-4f47130c.entry.js.map +0 -1
  541. package/dist/beeq/p-5b5f9a2a.entry.js.map +0 -1
  542. package/dist/beeq/p-5da52049.js +0 -7
  543. package/dist/beeq/p-5da52049.js.map +0 -1
  544. package/dist/beeq/p-63941636.entry.js +0 -6
  545. package/dist/beeq/p-63941636.entry.js.map +0 -1
  546. package/dist/beeq/p-6482a62d.entry.js.map +0 -1
  547. package/dist/beeq/p-64ddef8a.entry.js +0 -6
  548. package/dist/beeq/p-64ddef8a.entry.js.map +0 -1
  549. package/dist/beeq/p-70ae504a.entry.js.map +0 -1
  550. package/dist/beeq/p-81b6556f.entry.js.map +0 -1
  551. package/dist/beeq/p-854e2114.entry.js.map +0 -1
  552. package/dist/beeq/p-8b595d1f.entry.js.map +0 -1
  553. package/dist/beeq/p-8e9f0bf3.entry.js.map +0 -1
  554. package/dist/beeq/p-94ca5709.entry.js +0 -6
  555. package/dist/beeq/p-94ca5709.entry.js.map +0 -1
  556. package/dist/beeq/p-96793709.entry.js.map +0 -1
  557. package/dist/beeq/p-99668b08.entry.js.map +0 -1
  558. package/dist/beeq/p-a0d6207d.entry.js.map +0 -1
  559. package/dist/beeq/p-a6094ed8.entry.js.map +0 -1
  560. package/dist/beeq/p-a89bfbd8.entry.js.map +0 -1
  561. package/dist/beeq/p-b9171e19.entry.js.map +0 -1
  562. package/dist/beeq/p-bdf2ea24.entry.js.map +0 -1
  563. package/dist/beeq/p-be234206.entry.js.map +0 -1
  564. package/dist/beeq/p-c8f639ab.entry.js.map +0 -1
  565. package/dist/beeq/p-cc83682b.entry.js.map +0 -1
  566. package/dist/beeq/p-d2c20a92.entry.js.map +0 -1
  567. package/dist/beeq/p-d7507599.entry.js.map +0 -1
  568. package/dist/beeq/p-def8acd7.entry.js.map +0 -1
  569. package/dist/beeq/p-eab2d27c.entry.js.map +0 -1
  570. package/dist/beeq/p-f9d9bd41.entry.js +0 -6
  571. package/dist/beeq/p-f9d9bd41.entry.js.map +0 -1
  572. package/dist/cjs/index-9cbab9ab.js.map +0 -1
  573. package/dist/components/p-07467338.js.map +0 -1
  574. package/dist/components/p-209dd39e.js.map +0 -1
  575. package/dist/components/p-2bdb6f46.js.map +0 -1
  576. package/dist/components/p-2c245c83.js.map +0 -1
  577. package/dist/components/p-56dbc376.js.map +0 -1
  578. package/dist/components/p-59b33ad7.js.map +0 -1
  579. package/dist/components/p-641036af.js.map +0 -1
  580. package/dist/components/p-9e8fdef7.js.map +0 -1
  581. package/dist/components/p-ddf2a5ae.js.map +0 -1
  582. package/dist/components/p-f1736bec.js +0 -7
  583. package/dist/components/p-f1736bec.js.map +0 -1
  584. package/dist/esm/index-f0f1a8c6.js.map +0 -1
  585. /package/dist/beeq/{p-561ff182.js.map → p-3c472097.js.map} +0 -0
  586. /package/dist/beeq/{p-995bfd58.js.map → p-c9ed66d9.js.map} +0 -0
  587. /package/dist/components/{p-00b80145.js.map → p-78d23ddc.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"bq-input.js","sourceRoot":"","sources":["../../../../../../src/components/input/bq-input.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AttachInternals, Component, Element, Event, EventEmitter, h, Prop, State, Watch } from '@stencil/core';\n\nimport { TInputType, TInputValidation, TInputValue } from './bq-input.types';\nimport { debounce, hasSlotContent, isDefined, isHTMLElement, isNil, TDebounce } from '../../shared/utils';\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 helper-text - The helper text slot container.\n * @part label - The label slot container.\n * @part input - The native HTML input element used under the hood.\n * @part prefix - The prefix slot container.\n * @part suffix - The suffix slot container.\n */\n@Component({\n tag: 'bq-input',\n styleUrl: './scss/bq-input.scss',\n formAssociated: true,\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BqInput {\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 debounceBqInput: TDebounce<void>;\n private fallbackInputId = 'input';\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqInputElement;\n @AttachInternals() internals!: ElementInternals;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() hasHelperText = false;\n @State() hasLabel = false;\n @State() hasPrefix = false;\n @State() hasSuffix = false;\n @State() hasValue = false;\n\n // Public Property API\n // ========================\n\n /**\n * Controls whether or not the input field should be capitalized and how.\n * Possible values are 'off', 'none', 'on', 'sentences', 'words', and 'characters'.\n * See: https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autocapitalize\n */\n @Prop({ reflect: true }) autocapitalize: string = 'off';\n\n /**\n * Specifies whether or not the input field should have autocomplete enabled.\n * See: https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values\n */\n @Prop({ reflect: true }) autocomplete: string = 'off';\n\n /**\n * Controls whether or not the input field should have autocorrect enabled.\n * Possible values are 'on' and 'off'.\n */\n @Prop({ reflect: true }) autocorrect: 'on' | 'off' = 'off';\n\n /** If true, the 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 input is disabled or not.\n * If `true`, the input 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 /** The ID of the form that the input field belongs to. */\n @Prop({ reflect: true }) form?: string;\n\n /**\n * The inputmode attribute specifies what kind of input mechanism would be most helpful for users entering content into the input field.\n * This allows a browser to display an appropriate virtual keyboard while editing.\n * Possible values are 'none', 'text', 'decimal', 'numeric', 'tel', 'search', 'email', 'url', and 'date'.\n */\n @Prop() inputmode?: string;\n\n /**\n * The maximum value that the input field can accept.\n * Only applies to date and number input types.\n */\n @Prop({ reflect: true }) max?: number | string;\n\n /** The maximum number of characters that the input field can accept. */\n @Prop({ reflect: true }) maxlength: number;\n\n /**\n * The minimum value that the input field can accept.\n * Only applies to date and number input types.\n */\n @Prop({ reflect: true }) min?: number | string;\n\n /** The minimum number of characters that the input field can accept. */\n @Prop({ reflect: true }) minlength: number;\n\n /** The input field name. */\n @Prop({ reflect: true }) name!: string;\n\n /**\n * Specifies a regular expression the form control's value should match.\n * See: https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/pattern\n */\n @Prop({ reflect: true }) pattern?: string;\n\n /** The input placeholder text value */\n @Prop({ reflect: true }) placeholder?: string;\n\n /** If true, the input field cannot be modified. */\n @Prop({ reflect: true }) readonly?: boolean;\n\n /** Indicates whether or not the input field is required to be filled out before submitting the form. */\n @Prop({ reflect: true }) required?: boolean;\n\n /**\n * A number that specifies the granularity that the value must adhere to.\n * Valid for date, month, week, time, datetime-local, number, and range.\n * See: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#step\n */\n @Prop({ reflect: true }) step: number | 'any';\n\n /**\n * The type attribute specifies the type of input field to display.\n * Possible values are 'text', 'password', 'email', 'number', 'tel', 'search', 'url', and more.\n * See: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#input_types\n */\n @Prop({ reflect: true }) type: TInputType = 'text';\n\n /**\n * The validation status of the input.\n *\n * @remarks\n * This property is used to indicate the validation status of the 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 input value, it can be used to reset the input to a previous value */\n @Prop({ reflect: true, mutable: true }) value: TInputValue;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('value')\n handleValueChange() {\n if (Array.isArray(this.value)) {\n this.hasValue = this.value.some((val) => val.length > 0);\n this.internals.setFormValue(this.value.join(','));\n return;\n }\n\n this.hasValue = isDefined(this.value);\n this.internals.setFormValue(`${this.value}`);\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Callback handler emitted when the input loses focus */\n @Event() bqBlur!: EventEmitter<HTMLBqInputElement>;\n\n /**\n * Callback handler emitted when the input value has changed and the input loses focus.\n * This handler is called whenever the user finishes typing or pasting text into the input field and then clicks outside of the input field.\n */\n @Event() bqChange!: EventEmitter<{ value: string | number | string[]; el: HTMLBqInputElement }>;\n\n /** Callback handler emitted when the input value has been cleared */\n @Event() bqClear!: EventEmitter<HTMLBqInputElement>;\n\n /** Callback handler emitted when the input has received focus */\n @Event() bqFocus!: EventEmitter<HTMLBqInputElement>;\n\n /**\n * Callback handler emitted when the input value changes.\n * This handler is called whenever the user types or pastes text into the input field.\n */\n @Event() bqInput!: EventEmitter<{ value: string | number | string[]; el: HTMLBqInputElement }>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.handleValueChange();\n }\n\n formResetCallback() {\n if (isNil(this.value)) return;\n\n this.handleClear();\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 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 handleInput = (ev: Event) => {\n if (this.disabled) return;\n\n this.debounceBqInput?.cancel();\n\n if (!isHTMLElement(ev.target, 'input')) return;\n this.value = this.type === 'number' ? Number(ev.target.value) : ev.target.value;\n this.internals.setFormValue(`${this.value}`);\n\n this.debounceBqInput = debounce(() => {\n this.bqInput.emit({ value: this.value, el: this.el });\n }, this.debounceTime);\n this.debounceBqInput();\n };\n\n private handleChange = (ev: Event) => {\n if (this.disabled) return;\n\n if (!isHTMLElement(ev.target, 'input')) return;\n this.value = this.type === 'number' ? Number(ev.target.value) : ev.target.value;\n this.internals.setFormValue(`${this.value}`);\n\n this.bqChange.emit({ value: this.value, el: this.el });\n };\n\n private handleClear = () => {\n if (this.disabled) return;\n\n const { inputElem, internals } = this;\n\n // Clear input element value\n inputElem.value = '';\n this.value = inputElem.value;\n\n // Update associated form control value\n internals.setFormValue(undefined);\n };\n\n private handleClearClick = (ev: CustomEvent) => {\n ev.stopPropagation();\n this.handleClear();\n\n const { bqClear, bqChange, bqInput, el, inputElem } = this;\n // Emit events\n bqClear.emit(el);\n bqInput.emit({ value: this.value, el });\n bqChange.emit({ value: this.value, el });\n // Refocus input element\n inputElem.focus();\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 // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <div class=\"bq-input\" part=\"base\">\n {/* Label */}\n <label\n class={{ 'bq-input--label': true, '!hidden': !this.hasLabel }}\n aria-label={this.name || this.fallbackInputId}\n htmlFor={this.name || this.fallbackInputId}\n ref={(labelElem) => (this.labelElem = labelElem)}\n part=\"label\"\n >\n <slot name=\"label\" onSlotchange={this.handleLabelSlotChange} />\n </label>\n {/* Input control group */}\n <div\n class={{\n 'bq-input--control': true,\n [`validation-${this.validationStatus}`]: true,\n disabled: this.disabled,\n }}\n part=\"control\"\n >\n {/* Prefix */}\n <span\n class={{ 'bq-input--control__prefix': true, '!hidden': !this.hasPrefix }}\n ref={(spanElem) => (this.prefixElem = spanElem)}\n part=\"prefix\"\n >\n <slot name=\"prefix\" onSlotchange={this.handlePrefixSlotChange} />\n </span>\n {/* HTML Input */}\n <input\n id={this.name || this.fallbackInputId}\n class=\"bq-input--control__input\"\n aria-disabled={this.disabled ? 'true' : 'false'}\n autoCapitalize={this.autocapitalize}\n autoComplete={this.autocomplete}\n autoCorrect={this.autocorrect}\n disabled={this.disabled}\n form={this.form}\n inputMode={this.inputmode}\n max={this.max}\n maxLength={this.maxlength}\n min={this.min}\n minLength={this.minlength}\n name={this.name}\n pattern={this.pattern}\n placeholder={this.placeholder}\n ref={(inputElem) => (this.inputElem = inputElem)}\n readOnly={this.readonly}\n required={this.required}\n step={this.step}\n type={this.type}\n value={this.value}\n part=\"input\"\n // Events\n onBlur={this.handleBlur}\n onChange={this.handleChange}\n onFocus={this.handleFocus}\n onInput={this.handleInput}\n />\n {/* Clear Button */}\n {this.hasValue && !this.disabled && !this.disableClear && (\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-input--control__clear ms-[--bq-input--gap] hidden\"\n appearance=\"text\"\n aria-label={this.clearButtonLabel}\n size=\"small\"\n onBqClick={this.handleClearClick}\n part=\"clear-btn\"\n exportparts=\"button\"\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-input--control__suffix': true, '!hidden': !this.hasSuffix }}\n ref={(spanElem) => (this.suffixElem = spanElem)}\n part=\"suffix\"\n >\n <slot name=\"suffix\" onSlotchange={this.handleSuffixSlotChange} />\n </span>\n </div>\n {/* Helper text */}\n <div\n class={{\n [`bq-input--helper-text validation-${this.validationStatus}`]: true,\n '!hidden': !this.hasHelperText,\n }}\n ref={(divElem) => (this.helperTextElem = divElem)}\n part=\"helper-text\"\n >\n <slot name=\"helper-text\" onSlotchange={this.handleHelperTextSlotChange} />\n </div>\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"bq-input.js","sourceRoot":"","sources":["../../../../../../src/components/input/bq-input.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AttachInternals, Component, Element, Event, EventEmitter, h, Prop, State, Watch } from '@stencil/core';\n\nimport { TInputType, TInputValidation, TInputValue } from './bq-input.types';\nimport { debounce, hasSlotContent, isDefined, isHTMLElement, isNil, TDebounce } from '../../shared/utils';\n\n/**\n * The Input component is a fundamental user interface element that allows users to input data by typing it into a text field.\n * It is commonly used in web and mobile applications for various purposes, such as collecting user information, search inputs, and login forms.\n *\n * @example How to use it\n * ```html\n * <bq-input name=\"username\" label=\"Username\" placeholder=\"Enter your username\"></bq-input>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/980362-input\n * @status stable\n *\n * @dependency bq-button\n * @dependency bq-icon\n *\n * @attr {string} autocapitalize - Controls whether or not the input field should be capitalized and how.\n * @attr {string} autocomplete - Specifies whether or not the input field should have autocomplete enabled.\n * @attr {string} autocorrect - Controls whether or not the input field should have autocorrect enabled.\n * @attr {boolean} autofocus - If true, the input will be focused on component render.\n * @attr {string} clear-button-label - The clear button aria label.\n * @attr {number} debounce-time - The amount of time, in milliseconds, to wait before emitting the `bqInput` event after the input value changes.\n * @attr {boolean} disabled - Indicates whether the input is disabled or not.\n * @attr {boolean} disable-clear - If true, the clear button won't be displayed.\n * @attr {string} form - The ID of the form that the input field belongs to.\n * @attr {string} form-validation-message - The native form validation message (mandatory if `required` is set).\n * @attr {string} inputmode - The inputmode attribute specifies what kind of input mechanism would be most helpful for users entering content into the input field.\n * @attr {number | string} max - The maximum value that the input field can accept.\n * @attr {number} maxlength - The maximum number of characters that the input field can accept.\n * @attr {number | string} min - The minimum value that the input field can accept.\n * @attr {number} minlength - The minimum number of characters that the input field can accept.\n * @attr {string} name - The input field name.\n * @attr {string} pattern - Specifies a regular expression the form control's value should match.\n * @attr {string} placeholder - The input placeholder text value.\n * @attr {boolean} readonly - If true, the input field cannot be modified.\n * @attr {boolean} required - Indicates whether or not the input field is required to be filled out before submitting the form.\n * @attr {number | 'any'} step - A number that specifies the granularity that the value must adhere to.\n * @attr {string} type - The type attribute specifies the type of input field to display.\n * @attr {'none' | 'error' | 'warning' | 'success'} validation-status - The validation status of the input.\n * @attr {string | number | string[]} value - The input value, it can be used to reset the input to a previous value.\n *\n * @event bqBlur - Callback handler emitted when the input loses focus.\n * @event bqChange - Callback handler emitted when the input value has changed and the input loses focus.\n * @event bqClear - Callback handler emitted when the input value has been cleared.\n * @event bqFocus - Callback handler emitted when the input has received focus.\n * @event bqInput - Callback handler emitted when the input value changes.\n *\n * @slot label - The label slot container.\n * @slot prefix - The prefix slot container.\n * @slot suffix - The suffix slot container.\n * @slot helper-text - The helper text slot container.\n * @slot clear-icon - The clear icon slot container.\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 helper-text - The helper text slot container.\n * @part label - The label slot container.\n * @part input - The native HTML input element used under the hood.\n * @part prefix - The prefix slot container.\n * @part suffix - The suffix slot container.\n *\n * @cssprop --bq-input--background-color - Input background color\n * @cssprop --bq-input--border-color - Input border color\n * @cssprop --bq-input--border-color-focus - Input border color on focus\n * @cssprop --bq-input--border-radius - Input border radius\n * @cssprop --bq-input--border-width - Input border width\n * @cssprop --bq-input--border-style - Input border style\n * @cssprop --bq-input--gap - Gap between input content and prefix/suffix\n * @cssprop --bq-input--helper-margin-top - Helper text margin top\n * @cssprop --bq-input--helper-text-color - Helper text color\n * @cssprop --bq-input--helper-text-size - Helper text size\n * @cssprop --bq-input--icon-size - Icon size to use in prefix/suffix and clear button\n * @cssprop --bq-input--label-margin-bottom - Input label margin bottom\n * @cssprop --bq-input--label-text-color - Input label text color\n * @cssprop --bq-input--label-text-size - Input label text size\n * @cssprop --bq-input--padding-start - Input padding start\n * @cssprop --bq-input--padding-end - Input padding end\n * @cssprop --bq-input--paddingY - Input padding top and bottom\n * @cssprop --bq-input--text-color - Input text color\n * @cssprop --bq-input--text-size - Input text size\n * @cssprop --bq-input--text-placeholder-color - Input placeholder text color\n */\n@Component({\n tag: 'bq-input',\n styleUrl: './scss/bq-input.scss',\n formAssociated: true,\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BqInput {\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 debounceBqInput: TDebounce<void>;\n private fallbackInputId = 'input';\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqInputElement;\n @AttachInternals() internals!: ElementInternals;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() hasHelperText = false;\n @State() hasLabel = false;\n @State() hasPrefix = false;\n @State() hasSuffix = false;\n @State() hasValue = false;\n\n // Public Property API\n // ========================\n\n /**\n * Controls whether or not the input field should be capitalized and how.\n * Possible values are 'off', 'none', 'on', 'sentences', 'words', and 'characters'.\n * See: https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autocapitalize\n */\n @Prop({ reflect: true }) autocapitalize: string = 'off';\n\n /**\n * Specifies whether or not the input field should have autocomplete enabled.\n * See: https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values\n */\n @Prop({ reflect: true }) autocomplete: string = 'off';\n\n /**\n * Controls whether or not the input field should have autocorrect enabled.\n * Possible values are 'on' and 'off'.\n */\n @Prop({ reflect: true }) autocorrect: 'on' | 'off' = 'off';\n\n /** If true, the 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 input is disabled or not.\n * If `true`, the input 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 /** The ID of the form that the input field belongs to. */\n @Prop({ reflect: true }) form?: string;\n\n /** The native form validation message (mandatory if `required` is set) */\n @Prop({ mutable: true }) formValidationMessage?: string;\n\n /**\n * The inputmode attribute specifies what kind of input mechanism would be most helpful for users entering content into the input field.\n * This allows a browser to display an appropriate virtual keyboard while editing.\n * Possible values are 'none', 'text', 'decimal', 'numeric', 'tel', 'search', 'email', 'url', and 'date'.\n */\n @Prop() inputmode?: string;\n\n /**\n * The maximum value that the input field can accept.\n * Only applies to date and number input types.\n */\n @Prop({ reflect: true }) max?: number | string;\n\n /** The maximum number of characters that the input field can accept. */\n @Prop({ reflect: true }) maxlength: number;\n\n /**\n * The minimum value that the input field can accept.\n * Only applies to date and number input types.\n */\n @Prop({ reflect: true }) min?: number | string;\n\n /** The minimum number of characters that the input field can accept. */\n @Prop({ reflect: true }) minlength: number;\n\n /** The input field name. */\n @Prop({ reflect: true }) name!: string;\n\n /**\n * Specifies a regular expression the form control's value should match.\n * See: https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/pattern\n */\n @Prop({ reflect: true }) pattern?: string;\n\n /** The input placeholder text value */\n @Prop({ reflect: true }) placeholder?: string;\n\n /** If true, the input field cannot be modified. */\n @Prop({ reflect: true }) readonly?: boolean;\n\n /** Indicates whether or not the input field is required to be filled out before submitting the form. */\n @Prop({ reflect: true }) required?: boolean;\n\n /**\n * A number that specifies the granularity that the value must adhere to.\n * Valid for date, month, week, time, datetime-local, number, and range.\n * See: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#step\n */\n @Prop({ reflect: true }) step: number | 'any';\n\n /**\n * The type attribute specifies the type of input field to display.\n * Possible values are 'text', 'password', 'email', 'number', 'tel', 'search', 'url', and more.\n * See: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#input_types\n */\n @Prop({ reflect: true }) type: TInputType = 'text';\n\n /**\n * The validation status of the input.\n *\n * @remarks\n * This property is used to indicate the validation status of the 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 input value, it can be used to reset the input to a previous value */\n @Prop({ reflect: true, mutable: true }) value: TInputValue;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('value')\n handleValueChange() {\n const { internals, value } = this;\n if (Array.isArray(value)) {\n this.hasValue = value.some((val) => val.length > 0);\n this.internals.setFormValue(value.join(','));\n return;\n }\n\n this.hasValue = isDefined(value);\n internals.setFormValue(!isNil(value) ? `${value}` : undefined);\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Callback handler emitted when the input loses focus */\n @Event() bqBlur!: EventEmitter<HTMLBqInputElement>;\n\n /**\n * Callback handler emitted when the input value has changed and the input loses focus.\n * This handler is called whenever the user finishes typing or pasting text into the input field and then clicks outside of the input field.\n */\n @Event() bqChange!: EventEmitter<{ value: string | number | string[]; el: HTMLBqInputElement }>;\n\n /** Callback handler emitted when the input value has been cleared */\n @Event() bqClear!: EventEmitter<HTMLBqInputElement>;\n\n /** Callback handler emitted when the input has received focus */\n @Event() bqFocus!: EventEmitter<HTMLBqInputElement>;\n\n /**\n * Callback handler emitted when the input value changes.\n * This handler is called whenever the user types or pastes text into the input field.\n */\n @Event() bqInput!: EventEmitter<{ value: string | number | string[]; el: HTMLBqInputElement }>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.handleValueChange();\n }\n\n formAssociatedCallback() {\n this.setFormValue(this.value.toString());\n this.updateFormValidity();\n }\n\n formResetCallback() {\n if (isNil(this.value)) return;\n\n this.handleClear();\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 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 handleInput = (ev: Event) => {\n if (this.disabled) return;\n\n this.debounceBqInput?.cancel();\n\n if (!isHTMLElement(ev.target, 'input')) return;\n this.value = this.type === 'number' ? Number(ev.target.value) : ev.target.value;\n\n this.debounceBqInput = debounce(() => {\n this.bqInput.emit({ value: this.value, el: this.el });\n }, this.debounceTime);\n this.debounceBqInput();\n };\n\n private handleChange = (ev: Event) => {\n if (this.disabled) return;\n\n if (!isHTMLElement(ev.target, 'input')) return;\n this.value = this.type === 'number' ? Number(ev.target.value) : ev.target.value;\n // Update form value and validity\n this.setFormValue(`${this.value}`);\n this.updateFormValidity();\n\n this.bqChange.emit({ value: this.value, el: this.el });\n };\n\n private handleClear = () => {\n if (this.disabled) return;\n\n const { inputElem, setFormValue, updateFormValidity } = this;\n // Clear input element value\n inputElem.value = '';\n this.value = inputElem.value;\n // Set form value to empty string abd update validity\n setFormValue(this.value);\n updateFormValidity();\n };\n\n private handleClearClick = (ev: CustomEvent) => {\n ev.stopPropagation();\n this.handleClear();\n\n const { bqClear, bqChange, bqInput, el, inputElem } = this;\n // Emit events\n bqClear.emit(el);\n bqInput.emit({ value: this.value, el });\n bqChange.emit({ value: this.value, el });\n // Refocus input element\n inputElem.focus();\n };\n\n private setFormValue = (value?: string) => {\n this.internals.setFormValue(!isNil(value) ? `${value}` : undefined);\n };\n\n private updateFormValidity = () => {\n const { formValidationMessage, internals, required, value, inputElem } = this;\n\n // Clear the validity state\n internals?.states.clear();\n\n if (required && (!value || value.toString().trim() === '')) {\n // Set validity state to invalid\n internals?.states.add('invalid');\n internals?.setValidity({ valueMissing: true }, formValidationMessage, inputElem);\n return;\n }\n\n // Set validity state to valid if textarea has value or is not required\n internals?.states.add('valid');\n internals?.setValidity({});\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 // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <div class=\"bq-input\" part=\"base\">\n {/* Label */}\n <label\n class={{ 'bq-input--label': true, '!hidden': !this.hasLabel }}\n aria-label={this.name || this.fallbackInputId}\n htmlFor={this.name || this.fallbackInputId}\n ref={(labelElem) => (this.labelElem = labelElem)}\n part=\"label\"\n >\n <slot name=\"label\" onSlotchange={this.handleLabelSlotChange} />\n </label>\n {/* Input control group */}\n <div\n class={{\n 'bq-input--control': true,\n [`validation-${this.validationStatus}`]: true,\n disabled: this.disabled,\n }}\n part=\"control\"\n >\n {/* Prefix */}\n <span\n class={{ 'bq-input--control__prefix': true, '!hidden': !this.hasPrefix }}\n ref={(spanElem) => (this.prefixElem = spanElem)}\n part=\"prefix\"\n >\n <slot name=\"prefix\" onSlotchange={this.handlePrefixSlotChange} />\n </span>\n {/* HTML Input */}\n <input\n id={this.name || this.fallbackInputId}\n class=\"bq-input--control__input\"\n aria-disabled={this.disabled ? 'true' : 'false'}\n autoCapitalize={this.autocapitalize}\n autoComplete={this.autocomplete}\n autoCorrect={this.autocorrect}\n disabled={this.disabled}\n form={this.form}\n inputMode={this.inputmode}\n max={this.max}\n maxLength={this.maxlength}\n min={this.min}\n minLength={this.minlength}\n name={this.name}\n pattern={this.pattern}\n placeholder={this.placeholder}\n ref={(inputElem) => (this.inputElem = inputElem)}\n readOnly={this.readonly}\n required={this.required}\n step={this.step}\n type={this.type}\n value={this.value}\n part=\"input\"\n // Events\n onBlur={this.handleBlur}\n onChange={this.handleChange}\n onFocus={this.handleFocus}\n onInput={this.handleInput}\n />\n {/* Clear Button */}\n {this.hasValue && !this.disabled && !this.disableClear && (\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-input--control__clear ms-[--bq-input--gap] hidden\"\n appearance=\"text\"\n aria-label={this.clearButtonLabel}\n size=\"small\"\n onBqClick={this.handleClearClick}\n part=\"clear-btn\"\n exportparts=\"button\"\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-input--control__suffix': true, '!hidden': !this.hasSuffix }}\n ref={(spanElem) => (this.suffixElem = spanElem)}\n part=\"suffix\"\n >\n <slot name=\"suffix\" onSlotchange={this.handleSuffixSlotChange} />\n </span>\n </div>\n {/* Helper text */}\n <div\n class={{\n [`bq-input--helper-text validation-${this.validationStatus}`]: true,\n '!hidden': !this.hasHelperText,\n }}\n ref={(divElem) => (this.helperTextElem = divElem)}\n part=\"helper-text\"\n >\n <slot name=\"helper-text\" onSlotchange={this.handleHelperTextSlotChange} />\n </div>\n </div>\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- .transform{--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}::backdrop,:root{--bq-blue-100:#e7f0fd;--bq-blue-200:#d0e2fb;--bq-blue-300:#a1c5f7;--bq-blue-400:#73a8f3;--bq-blue-500:#448bef;--bq-blue-600:#156eeb;--bq-blue-700:#1158bc;--bq-blue-800:#0d428d;--bq-blue-900:#082c5e;--bq-blue-1000:#04162f;--bq-corai-100:#fff2f2;--bq-corai-200:#ffe6e6;--bq-corai-300:#ffccce;--bq-corai-400:#ffb3b5;--bq-corai-500:#ff999d;--bq-corai-600:#ff8084;--bq-corai-700:#cc666a;--bq-corai-800:#994d4f;--bq-corai-900:#663335;--bq-corai-1000:#331a1a;--bq-cyan-100:#e8f7fb;--bq-cyan-200:#d2f0f8;--bq-cyan-300:#a5e1f1;--bq-cyan-400:#78d1e9;--bq-cyan-500:#4bc2e2;--bq-cyan-600:#1eb3db;--bq-cyan-700:#188faf;--bq-cyan-800:#126b83;--bq-cyan-900:#0c4858;--bq-cyan-1000:#06242c;--bq-gold-100:#fbf4ec;--bq-gold-200:#f7e9da;--bq-gold-300:#f0d3b6;--bq-gold-400:#e8bc91;--bq-gold-500:#e1a66d;--bq-gold-600:#d99048;--bq-gold-700:#ae733a;--bq-gold-800:#82562b;--bq-gold-900:#573a1d;--bq-gold-1000:#2b1d0e;--bq-green-100:#e8f8ef;--bq-green-200:#d2f1e0;--bq-green-300:#a5e3c1;--bq-green-400:#78d5a1;--bq-green-500:#4bc782;--bq-green-600:#1eb963;--bq-green-700:#18944f;--bq-green-800:#126f3b;--bq-green-900:#0c4a28;--bq-green-1000:#062514;--bq-grey-100:#f1f2f4;--bq-grey-200:#e7e8eb;--bq-grey-300:#caccd2;--bq-grey-400:#a6aab3;--bq-grey-50:#f6f6f8;--bq-grey-500:#898e99;--bq-grey-600:#646a77;--bq-grey-700:#3f4350;--bq-grey-800:#2a2c35;--bq-grey-900:#1c1d23;--bq-grey-950:#15161a;--bq-grey-1000:#0d0e11;--bq-indigo-100:#edecfc;--bq-indigo-200:#dcdafa;--bq-indigo-300:#b9b5f5;--bq-indigo-400:#9590ef;--bq-indigo-500:#726bea;--bq-indigo-600:#4f46e5;--bq-indigo-700:#3f38b7;--bq-indigo-800:#2f2a89;--bq-indigo-900:#201c5c;--bq-indigo-1000:#100e2e;--bq-iris-100:#e9f0ff;--bq-iris-200:#d6e0ff;--bq-iris-300:#b2c0fe;--bq-iris-400:#8691f8;--bq-iris-500:#6061ee;--bq-iris-600:#4f46e5;--bq-iris-700:#413abd;--bq-iris-800:#332e95;--bq-iris-900:#26216d;--bq-iris-1000:#181545;--bq-lime-100:#f5fae8;--bq-lime-200:#ecf6d2;--bq-lime-300:#d9eda5;--bq-lime-400:#c5e379;--bq-lime-500:#b2da4c;--bq-lime-600:#9fd11f;--bq-lime-700:#7fa719;--bq-lime-800:#5f7d13;--bq-lime-900:#40540c;--bq-lime-1000:#202a06;--bq-magenta-100:#fce7f4;--bq-magenta-200:#f9cfea;--bq-magenta-300:#f39fd6;--bq-magenta-400:#ee6fbf;--bq-magenta-500:#e83fab;--bq-magenta-600:#de1395;--bq-magenta-700:#b20f77;--bq-magenta-800:#850c59;--bq-magenta-900:#58083c;--bq-magenta-1000:#2c041e;--bq-neutral-white:#fbfbfc;--bq-neutral-black:#060708;--bq-orange-100:#fbf0e9;--bq-orange-200:#f8e1d4;--bq-orange-300:#f1c2a8;--bq-orange-400:#eaa47d;--bq-orange-500:#e38551;--bq-orange-600:#dc6726;--bq-orange-700:#b0521e;--bq-orange-800:#843e17;--bq-orange-900:#58290f;--bq-orange-1000:#2c1508;--bq-purple-100:#efebf8;--bq-purple-200:#e0d7f2;--bq-purple-300:#c1afe5;--bq-purple-400:#a388d8;--bq-purple-500:#8460cb;--bq-purple-600:#6538be;--bq-purple-700:#512d98;--bq-purple-800:#3d2272;--bq-purple-900:#28164c;--bq-purple-1000:#140b26;--bq-red-100:#fce7ea;--bq-red-200:#f9d1d5;--bq-red-300:#f3a2ac;--bq-red-400:#ed7482;--bq-red-500:#e74559;--bq-red-600:#e1172f;--bq-red-700:#b41226;--bq-red-800:#870e1c;--bq-red-900:#5a0913;--bq-red-1000:#2d0509;--bq-sky-100:#eff4fb;--bq-sky-200:#dfeaf8;--bq-sky-300:#bfd5f1;--bq-sky-400:#9ec1e9;--bq-sky-500:#7eace2;--bq-sky-600:#5e97db;--bq-sky-700:#4b79af;--bq-sky-800:#385b83;--bq-sky-900:#263c58;--bq-sky-1000:#131e2c;--bq-teal-100:#e5f7f5;--bq-teal-200:#ccf0eb;--bq-teal-300:#99e1d8;--bq-teal-400:#66d2c4;--bq-teal-500:#33c3b1;--bq-teal-600:#00b49d;--bq-teal-700:#00907e;--bq-teal-800:#006c5e;--bq-teal-900:#00483f;--bq-teal-1000:#00241f;--bq-volcano-100:#feede7;--bq-volcano-200:#fddbd1;--bq-volcano-300:#fbb8a3;--bq-volcano-400:#fa9474;--bq-volcano-500:#f87146;--bq-volcano-600:#f64d18;--bq-volcano-700:#c53e13;--bq-volcano-800:#942e0e;--bq-volcano-900:#621f0a;--bq-volcano-1000:#310f05;--bq-yellow-100:#fefbe7;--bq-yellow-200:#fcf6d0;--bq-yellow-300:#faeea0;--bq-yellow-400:#f7e571;--bq-yellow-500:#f5dd41;--bq-yellow-600:#f2d412;--bq-yellow-700:#c2aa0e;--bq-yellow-800:#917f0b;--bq-yellow-900:#615507;--bq-yellow-1000:#302a04;--bq-endava-grey-50:#f7f7f8;--bq-endava-grey-100:#e4e6e7;--bq-endava-grey-200:#b5babe;--bq-endava-grey-300:#949ca1;--bq-endava-grey-400:#737d84;--bq-endava-grey-500:#525f67;--bq-endava-grey-600:#30404b;--bq-endava-grey-700:#2b3942;--bq-endava-grey-800:#263139;--bq-endava-grey-900:#192b37;--bq-endava-grey-950:#151b1e;--bq-endava-grey-1000:#0f1316;--bq-endava-neutral-white:#fafbfb;--bq-endava-neutral-black:#060708;--bq-endava-orange-100:#fef3f1;--bq-endava-orange-200:#fbd6d1;--bq-endava-orange-300:#fab7af;--bq-endava-orange-400:#fa988b;--bq-endava-orange-500:#fc7866;--bq-endava-orange-600:#ff5640;--bq-endava-orange-700:#ce4a39;--bq-endava-orange-800:#a03d30;--bq-endava-orange-900:#722e25;--bq-endava-orange-1000:#471e19}*,:after,:before{box-sizing:border-box}*{font:inherit;margin:0}ol[role=list],ul[role=list]{list-style-type:none}html{font-size:var(--bq-font-size--m)}html:focus-within{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bq-background--primary);color:var(--bq-text--primary);font-family:var(--bq-font-family);line-height:var(--bq-font-line-height--regular);min-height:100vh;text-rendering:optimizeSpeed}a:not([class]){text-decoration-skip-ink:auto}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto;transition-duration:.01ms!important}}:root{--bq-white:#fff;--bq-black:#060708;--bq-neutral-50:var(--bq-grey-50);--bq-neutral-100:var(--bq-grey-100);--bq-neutral-200:var(--bq-grey-200);--bq-neutral-300:var(--bq-grey-300);--bq-neutral-400:var(--bq-grey-400);--bq-neutral-500:var(--bq-grey-500);--bq-neutral-600:var(--bq-grey-600);--bq-neutral-700:var(--bq-grey-700);--bq-neutral-800:var(--bq-grey-800);--bq-neutral-900:var(--bq-grey-900);--bq-neutral-950:var(--bq-grey-950);--bq-neutral-1000:var(--bq-grey-1000);--bq-brand-light:var(--bq-iris-100);--bq-brand:var(--bq-iris-600);--bq-brand-dark:var(--bq-iris-1000);--bq-accent-light:var(--bq-purple-100);--bq-accent:var(--bq-purple-600);--bq-accent-dark:var(--bq-purple-1000);--bq-success-light:var(--bq-teal-100);--bq-success:var(--bq-teal-600);--bq-success-dark:var(--bq-teal-1000);--bq-danger-light:var(--bq-red-100);--bq-danger:var(--bq-red-600);--bq-danger-dark:var(--bq-red-1000);--bq-warning-light:var(--bq-gold-100);--bq-warning:var(--bq-gold-600);--bq-warning-dark:var(--bq-gold-1000);--bq-info-light:var(--bq-iris-100);--bq-info:var(--bq-iris-600);--bq-info-dark:var(--bq-iris-1000);--bq-focus:var(--bq-iris-600);--bq-data-01:var(--bq-brand);--bq-data-02:var(--bq-purple-600);--bq-data-03:var(--bq-magenta-600);--bq-data-04:var(--bq-cyan-600);--bq-data-05:var(--bq-teal-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-yellow-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-blue-600);--bq-data-10:var(--bq-grey-600);--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white);--bq-radius--none:0;--bq-radius--xs2:0.125rem;--bq-radius--xs:0.25rem;--bq-radius--s:0.5rem;--bq-radius--m:0.75rem;--bq-radius--l:1.5rem;--bq-radius--full:9999px;--bq-box-shadow--xs:0 2px 0 rgba(0,0,0,.016);--bq-box-shadow--s:0 8px 24px rgba(0,0,0,.04);--bq-box-shadow--m:0 10px 48px -16px rgba(0,0,0,.12);--bq-box-shadow--l:0 20px 58px -16px rgba(0,0,0,.16);--bq-font-family:"Outfit",sans-serif;--bq-font-size--xs:0.75rem;--bq-font-size--s:0.875rem;--bq-font-size--m:1rem;--bq-font-size--l:1.125rem;--bq-font-size--xl:1.5rem;--bq-font-size--xxl:2rem;--bq-font-size--xxl2:2.5rem;--bq-font-size--xxl3:3rem;--bq-font-size--xxl4:3.5rem;--bq-font-size--xxl5:4rem;--bq-font-weight--thin:100;--bq-font-weight--light:300;--bq-font-weight--regular:400;--bq-font-weight--medium:500;--bq-font-weight--semibold:600;--bq-font-weight--bold:700;--bq-font-line-height--small:1.2;--bq-font-line-height--regular:1.5;--bq-font-line-height--large:1.5;--bq-spacing-xs3:0.125rem;--bq-spacing-xs2:0.25rem;--bq-spacing-xs:0.5rem;--bq-spacing-s:0.75rem;--bq-spacing-m:1rem;--bq-spacing-l:1.5rem;--bq-spacing-xl:2rem;--bq-spacing-xxl:2.5rem;--bq-spacing-xxl2:3.5rem;--bq-spacing-xxl3:4rem;--bq-spacing-xxl4:4.5rem;--bq-stroke-s:1px;--bq-stroke-m:2px;--bq-stroke-l:3px}.beeq.light,.light,:root,[bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--alt:var(--bq-white);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-200);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-light);--bq-hover:#bcbfc5;--bq-active:#444546}.beeq.dark,.dark,[bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-950);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-800);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-dark);--bq-hover:#444546;--bq-active:#1f2026}.endava,[bq-theme=endava]{--bq-font-family:"Poppins",sans-serif;--bq-white:#fafbfb;--bq-black:#030406;--bq-neutral-50:var(--bq-endava-grey-50);--bq-neutral-100:var(--bq-endava-grey-100);--bq-neutral-200:var(--bq-endava-grey-200);--bq-neutral-300:var(--bq-endava-grey-300);--bq-neutral-400:var(--bq-endava-grey-400);--bq-neutral-500:var(--bq-endava-grey-500);--bq-neutral-600:var(--bq-endava-grey-600);--bq-neutral-700:var(--bq-endava-grey-700);--bq-neutral-800:var(--bq-endava-grey-800);--bq-neutral-900:var(--bq-endava-grey-900);--bq-neutral-950:var(--bq-endava-grey-950);--bq-neutral-1000:var(--bq-endava-grey-1000);--bq-brand-light:var(--bq-endava-orange-100);--bq-brand:var(--bq-endava-orange-600);--bq-brand-dark:var(--bq-endava-orange-1000);--bq-accent-light:var(--bq-endava-orange-100);--bq-accent:var(--bq-endava-orange-600);--bq-accent-dark:var(--bq-endava-orange-1000);--bq-success-light:var(--bq-green-100);--bq-success:var(--bq-green-600);--bq-success-dark:var(--bq-green-1000);--bq-danger-light:var(--bq-corai-100);--bq-danger:var(--bq-corai-600);--bq-danger-dark:var(--bq-corai-1000);--bq-warning-light:var(--bq-yellow-100);--bq-warning:var(--bq-yellow-600);--bq-warning-dark:var(--bq-yellow-1000);--bq-info-light:var(--bq-blue-100);--bq-info:var(--bq-blue-600);--bq-info-dark:var(--bq-blue-1000);--bq-focus:var(--bq-endava-orange-600);--bq-data-01:var(--bq-brand);--bq-data-02:#af0cd8;--bq-data-03:#0ca8d8;--bq-data-04:var(--bq-teal-600);--bq-data-05:var(--bq-yellow-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-blue-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-purple-600);--bq-data-10:#394b56;--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white)}.endava.light,[bq-theme=endava][bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--brand-alt:var(--bq-brand-light);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-200);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--brand:var(--bq-brand);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-light);--bq-hover:#444546;--bq-active:#1f2026}.endava.dark,[bq-theme=endava][bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-900);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--brand-alt:var(--bq-brand-dark);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-neutral-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-800);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-dark);--bq-hover:#444546;--bq-active:#1f2026}.pointer-events-none{pointer-events:none}.me-\[--bq-input--gap\]{margin-inline-end:var(--bq-input--gap)}.ms-\[--bq-input--gap\]{margin-inline-start:var(--bq-input--gap)}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.hidden{display:none}.flex-auto{flex:1 1 auto}.flex-grow{flex-grow:1}.cursor-inherit{cursor:inherit}.cursor-not-allowed{cursor:not-allowed}.appearance-none{appearance:none}.items-center{align-items:center}.rounded-\[--bq-input--border-radius\]{border-radius:var(--bq-input--border-radius)}.rounded-xs{border-radius:var(--bq-radius--xs)}.border-\[length\:--bq-input--border-width\]{border-width:var(--bq-input--border-width)}.border-none{border-style:none}.border-\[color\:--bq-input--border-color-focus\]{border-color:var(--bq-input--border-color-focus)}.border-\[color\:--bq-input--border-color\]{border-color:var(--bq-input--border-color)}.border-danger{border-color:var(--bq-stroke--danger)}.border-success{border-color:var(--bq-stroke--success)}.border-warning{border-color:var(--bq-stroke--warning)}.bg-inherit{background-color:inherit}.pe-\[--bq-input--padding-end\]{padding-inline-end:var(--bq-input--padding-end)}.ps-\[--bq-input--padding-start\]{padding-inline-start:var(--bq-input--padding-start)}.font-inherit{font-family:inherit}.text-\[length\:--bq-input--helper-text-size\]{font-size:var(--bq-input--helper-text-size)}.text-\[length\:--bq-input--label-text-size\]{font-size:var(--bq-input--label-text-size)}.text-\[length\:--bq-input--text-size\]{font-size:var(--bq-input--text-size)}.text-\[length\:inherit\]{font-size:inherit}.text-\[color\:--bq-input--helper-text-color\]{color:var(--bq-input--helper-text-color)}.text-\[color\:--bq-input--label-text-color\]{color:var(--bq-input--label-text-color)}.text-\[color\:--bq-input--text-color\]{color:var(--bq-input--text-color)}.text-danger{color:var(--bq-text--danger)}.text-success{color:var(--bq-text--success)}.text-warning{color:var(--bq-text--warning)}.opacity-60{opacity:.6}.transition-\[border-color\2c box-shadow\]{transition-duration:.15s;transition-property:border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1)}.border-active-danger{border-color:color-mix(in srgb,var(--bq-stroke--danger),var(--bq-active) 20%)}.border-active-success{border-color:color-mix(in srgb,var(--bq-stroke--success),var(--bq-active) 20%)}.border-active-warning{border-color:color-mix(in srgb,var(--bq-stroke--warning),var(--bq-active) 20%)}.bs-auto{block-size:auto}.is-full{inline-size:100%}.min-bs-\[--bq-input--icon-size\]{min-block-size:var(--bq-input--icon-size)}.min-is-0{min-inline-size:0}.p-b-0{padding-block:0}.p-b-\[--bq-input--paddingY\]{padding-block:var(--bq-input--paddingY)}.p-i-0{padding-inline:0}.m-b-0{margin-block:0}.m-be-\[--bq-input--label-margin-bottom\]{margin-block-end:var(--bq-input--label-margin-bottom)}.m-bs-\[--bq-input--helper-margin-top\]{margin-block-start:var(--bq-input--helper-margin-top)}.m-i-0{margin-inline:0}.focus{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}@-webkit-keyframes fade-in{0%{opacity:0}}@keyframes fade-in{0%{opacity:0}}@-webkit-keyframes slide-in{0%{-webkit-transform:translateY(10px);transform:translateY(10px)}}@keyframes slide-in{0%{-webkit-transform:translateY(10px);transform:translateY(10px)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}:host{--bq-input--background-color:var(--bq-ui--primary);--bq-input--border-color:var(--bq-stroke--tertiary);--bq-input--border-color-focus:var(--bq-stroke--brand);--bq-input--border-radius:var(--bq-radius--s);--bq-input--border-width:var(--bq-stroke-s);--bq-input--border-style:solid;--bq-input--gap:var(--bq-spacing-xs);--bq-input--helper-margin-top:var(--bq-spacing-xs);--bq-input--helper-text-size:var(--bq-font-size--s);--bq-input--helper-text-color:var(--bq-text--primary);--bq-input--icon-size:24px;--bq-input--label-margin-bottom:var(--bq-spacing-xs);--bq-input--label-text-size:var(--bq-font-size--s);--bq-input--label-text-color:var(--bq-text--primary);--bq-input--padding-start:var(--bq-spacing-m);--bq-input--padding-end:var(--bq-spacing-m);--bq-input--paddingY:var(--bq-spacing-s);--bq-input--text-color:var(--bq-text--primary);--bq-input--text-size:var(--bq-font-size--m);--bq-input--text-placeholder-color:var(--bq-text--secondary);display:block;inline-size:100%}.bq-input--label{align-items:center;color:var(--bq-input--label-text-color);display:flex;flex-grow:1;font-size:var(--bq-input--label-text-size);margin-block-end:var(--bq-input--label-margin-bottom)}.bq-input--helper-text{color:var(--bq-input--helper-text-color);font-size:var(--bq-input--helper-text-size);margin-block-start:var(--bq-input--helper-margin-top)}.bq-input--helper-text.validation-error{color:var(--bq-text--danger)}.bq-input--helper-text.validation-success{color:var(--bq-text--success)}.bq-input--helper-text.validation-warning{color:var(--bq-text--warning)}.bq-input--control{align-items:center;border-color:var(--bq-input--border-color);border-radius:var(--bq-input--border-radius);border-style:var(--bq-input--border-style);border-width:var(--bq-input--border-width);color:var(--bq-input--text-color);display:flex;font-size:var(--bq-input--text-size);inline-size:100%;padding-block:var(--bq-input--paddingY);padding-inline-end:var(--bq-input--padding-end);padding-inline-start:var(--bq-input--padding-start);transition-duration:.15s;transition-property:border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1)}.bq-input--control::placeholder{color:var(--bq-input--text-placeholder-color)}.bq-input--control:hover:not(.disabled):not(:focus-within){border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}.bq-input--control:not(.disabled):focus-within{--bq-ring-width:1px;--bq-ring-offset-width:0;--bq-ring-color-focus:var(--bq-input--border-color-focus);border-color:var(--bq-input--border-color-focus);outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}.bq-input--control:not(.disabled):focus-within .bq-input--control__clear,.bq-input--control:not(.disabled):hover .bq-input--control__clear{display:inline-block}.bq-input--control.disabled{cursor:not-allowed;opacity:.6}.bq-input--control.validation-error{border-color:var(--bq-stroke--danger)}.bq-input--control.validation-error:hover:not(.disabled):not(:focus-within){border-color:color-mix(in srgb,var(--bq-stroke--danger),var(--bq-hover) 20%)}.bq-input--control.validation-error:not(.disabled):focus-within{--bq-ring-color-focus:var(--bq-stroke--danger);border-color:color-mix(in srgb,var(--bq-stroke--danger),var(--bq-active) 20%)}.bq-input--control.validation-success{border-color:var(--bq-stroke--success)}.bq-input--control.validation-success:hover:not(.disabled):not(:focus-within){border-color:color-mix(in srgb,var(--bq-stroke--success),var(--bq-hover) 20%)}.bq-input--control.validation-success:not(.disabled):focus-within{--bq-ring-color-focus:var(--bq-stroke--success);border-color:color-mix(in srgb,var(--bq-stroke--success),var(--bq-active) 20%)}.bq-input--control.validation-warning{border-color:var(--bq-stroke--warning)}.bq-input--control.validation-warning:hover:not(.disabled):not(:focus-within){border-color:color-mix(in srgb,var(--bq-stroke--warning),var(--bq-hover) 20%)}.bq-input--control.validation-warning:not(.disabled):focus-within{--bq-ring-color-focus:var(--bq-stroke--warning);border-color:color-mix(in srgb,var(--bq-stroke--warning),var(--bq-active) 20%)}.bq-input--control__input{appearance:none;background-color:inherit;border-style:none;-webkit-box-shadow:none;box-shadow:none;color:inherit;cursor:inherit;flex:1 1 auto;font-family:inherit;font-size:inherit;font-weight:inherit;margin-block:0;margin-inline:0;min-block-size:var(--bq-input--icon-size);min-inline-size:0;padding-block:0;padding-inline:0}.bq-input--control__input:focus{outline:2px solid transparent;outline-offset:2px}.bq-input--control__input:focus-visible{outline:2px solid transparent;outline-offset:2px}.bq-input--control__clear::part(button){--bq-ring-width:initial;--bq-ring-offset-width:initial;--bq-ring-color-focus:initial;block-size:auto;border-radius:var(--bq-radius--xs);border-style:none;padding-block:0;padding-inline:0}.bq-input--control__prefix,.bq-input--control__suffix{align-items:center;color:var(--bq-input--text-color);display:flex;pointer-events:none}.bq-input--control__prefix{margin-inline-end:var(--bq-input--gap)}.bq-input--control__suffix{margin-inline-start:var(--bq-input--gap)}::slotted(bq-icon),bq-icon{--bq-icon--size:var(--bq-input--icon-size)!important}.bq-input--control__input::-moz-search-cancel{appearance:none;display:none}.bq-input--control__input::-webkit-search-cancel-button,.bq-input--control__input::-webkit-search-decoration,.bq-input--control__input::-webkit-search-results-button,.bq-input--control__input::-webkit-search-results-decoration{appearance:none;display:none}.bq-input--control__input::-webkit-datetime-edit,.bq-input--control__input::-webkit-datetime-edit-day-field,.bq-input--control__input::-webkit-datetime-edit-fields-wrapper,.bq-input--control__input::-webkit-datetime-edit-hour-field,.bq-input--control__input::-webkit-datetime-edit-meridiem-field,.bq-input--control__input::-webkit-datetime-edit-millisecond-field,.bq-input--control__input::-webkit-datetime-edit-minute-field,.bq-input--control__input::-webkit-datetime-edit-month-field,.bq-input--control__input::-webkit-datetime-edit-second-field,.bq-input--control__input::-webkit-datetime-edit-year-field{padding-block:0;padding-inline:0}.placeholder\:text-\[color\:--bq-input--text-placeholder-color\]::placeholder{color:var(--bq-input--text-placeholder-color)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.visible{visibility:visible}.static{position:static}.\!hidden{display:none!important}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.text-\[color\:--bq-icon--color\]{color:var(--bq-icon--color)}.bs-\[--bq-icon--size\]{block-size:var(--bq-icon--size)}.is-\[--bq-icon--size\]{inline-size:var(--bq-icon--size)}
1
+ .transform{--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}::backdrop,:root{--bq-blue-100:#e7f0fd;--bq-blue-200:#d0e2fb;--bq-blue-300:#a1c5f7;--bq-blue-400:#73a8f3;--bq-blue-500:#448bef;--bq-blue-600:#156eeb;--bq-blue-700:#1158bc;--bq-blue-800:#0d428d;--bq-blue-900:#082c5e;--bq-blue-1000:#04162f;--bq-corai-100:#fff2f2;--bq-corai-200:#ffe6e6;--bq-corai-300:#ffccce;--bq-corai-400:#ffb3b5;--bq-corai-500:#ff999d;--bq-corai-600:#ff8084;--bq-corai-700:#cc666a;--bq-corai-800:#994d4f;--bq-corai-900:#663335;--bq-corai-1000:#331a1a;--bq-cyan-100:#e8f7fb;--bq-cyan-200:#d2f0f8;--bq-cyan-300:#a5e1f1;--bq-cyan-400:#78d1e9;--bq-cyan-500:#4bc2e2;--bq-cyan-600:#1eb3db;--bq-cyan-700:#188faf;--bq-cyan-800:#126b83;--bq-cyan-900:#0c4858;--bq-cyan-1000:#06242c;--bq-gold-100:#fbf4ec;--bq-gold-200:#f7e9da;--bq-gold-300:#f0d3b6;--bq-gold-400:#e8bc91;--bq-gold-500:#e1a66d;--bq-gold-600:#d99048;--bq-gold-700:#ae733a;--bq-gold-800:#82562b;--bq-gold-900:#573a1d;--bq-gold-1000:#2b1d0e;--bq-green-100:#e8f8ef;--bq-green-200:#d2f1e0;--bq-green-300:#a5e3c1;--bq-green-400:#78d5a1;--bq-green-500:#4bc782;--bq-green-600:#1eb963;--bq-green-700:#18944f;--bq-green-800:#126f3b;--bq-green-900:#0c4a28;--bq-green-1000:#062514;--bq-grey-100:#f1f2f4;--bq-grey-200:#e7e8eb;--bq-grey-300:#caccd2;--bq-grey-400:#a6aab3;--bq-grey-50:#f6f6f8;--bq-grey-500:#898e99;--bq-grey-600:#646a77;--bq-grey-700:#3f4350;--bq-grey-800:#2a2c35;--bq-grey-900:#1c1d23;--bq-grey-950:#15161a;--bq-grey-1000:#0d0e11;--bq-indigo-100:#edecfc;--bq-indigo-200:#dcdafa;--bq-indigo-300:#b9b5f5;--bq-indigo-400:#9590ef;--bq-indigo-500:#726bea;--bq-indigo-600:#4f46e5;--bq-indigo-700:#3f38b7;--bq-indigo-800:#2f2a89;--bq-indigo-900:#201c5c;--bq-indigo-1000:#100e2e;--bq-iris-100:#e9f0ff;--bq-iris-200:#d6e0ff;--bq-iris-300:#b2c0fe;--bq-iris-400:#8691f8;--bq-iris-500:#6061ee;--bq-iris-600:#4f46e5;--bq-iris-700:#413abd;--bq-iris-800:#332e95;--bq-iris-900:#26216d;--bq-iris-1000:#181545;--bq-lime-100:#f5fae8;--bq-lime-200:#ecf6d2;--bq-lime-300:#d9eda5;--bq-lime-400:#c5e379;--bq-lime-500:#b2da4c;--bq-lime-600:#9fd11f;--bq-lime-700:#7fa719;--bq-lime-800:#5f7d13;--bq-lime-900:#40540c;--bq-lime-1000:#202a06;--bq-magenta-100:#fce7f4;--bq-magenta-200:#f9cfea;--bq-magenta-300:#f39fd6;--bq-magenta-400:#ee6fbf;--bq-magenta-500:#e83fab;--bq-magenta-600:#de1395;--bq-magenta-700:#b20f77;--bq-magenta-800:#850c59;--bq-magenta-900:#58083c;--bq-magenta-1000:#2c041e;--bq-neutral-white:#fbfbfc;--bq-neutral-black:#060708;--bq-orange-100:#fbf0e9;--bq-orange-200:#f8e1d4;--bq-orange-300:#f1c2a8;--bq-orange-400:#eaa47d;--bq-orange-500:#e38551;--bq-orange-600:#dc6726;--bq-orange-700:#b0521e;--bq-orange-800:#843e17;--bq-orange-900:#58290f;--bq-orange-1000:#2c1508;--bq-purple-100:#efebf8;--bq-purple-200:#e0d7f2;--bq-purple-300:#c1afe5;--bq-purple-400:#a388d8;--bq-purple-500:#8460cb;--bq-purple-600:#6538be;--bq-purple-700:#512d98;--bq-purple-800:#3d2272;--bq-purple-900:#28164c;--bq-purple-1000:#140b26;--bq-red-100:#fce7ea;--bq-red-200:#f9d1d5;--bq-red-300:#f3a2ac;--bq-red-400:#ed7482;--bq-red-500:#e74559;--bq-red-600:#e1172f;--bq-red-700:#b41226;--bq-red-800:#870e1c;--bq-red-900:#5a0913;--bq-red-1000:#2d0509;--bq-sky-100:#eff4fb;--bq-sky-200:#dfeaf8;--bq-sky-300:#bfd5f1;--bq-sky-400:#9ec1e9;--bq-sky-500:#7eace2;--bq-sky-600:#5e97db;--bq-sky-700:#4b79af;--bq-sky-800:#385b83;--bq-sky-900:#263c58;--bq-sky-1000:#131e2c;--bq-teal-100:#e5f7f5;--bq-teal-200:#ccf0eb;--bq-teal-300:#99e1d8;--bq-teal-400:#66d2c4;--bq-teal-500:#33c3b1;--bq-teal-600:#00b49d;--bq-teal-700:#00907e;--bq-teal-800:#006c5e;--bq-teal-900:#00483f;--bq-teal-1000:#00241f;--bq-volcano-100:#feede7;--bq-volcano-200:#fddbd1;--bq-volcano-300:#fbb8a3;--bq-volcano-400:#fa9474;--bq-volcano-500:#f87146;--bq-volcano-600:#f64d18;--bq-volcano-700:#c53e13;--bq-volcano-800:#942e0e;--bq-volcano-900:#621f0a;--bq-volcano-1000:#310f05;--bq-yellow-100:#fefbe7;--bq-yellow-200:#fcf6d0;--bq-yellow-300:#faeea0;--bq-yellow-400:#f7e571;--bq-yellow-500:#f5dd41;--bq-yellow-600:#f2d412;--bq-yellow-700:#c2aa0e;--bq-yellow-800:#917f0b;--bq-yellow-900:#615507;--bq-yellow-1000:#302a04;--bq-endava-grey-50:#f7f7f8;--bq-endava-grey-100:#e4e6e7;--bq-endava-grey-200:#b5babe;--bq-endava-grey-300:#949ca1;--bq-endava-grey-400:#737d84;--bq-endava-grey-500:#525f67;--bq-endava-grey-600:#30404b;--bq-endava-grey-700:#2b3942;--bq-endava-grey-800:#263139;--bq-endava-grey-900:#192b37;--bq-endava-grey-950:#151b1e;--bq-endava-grey-1000:#0f1316;--bq-endava-neutral-white:#fafbfb;--bq-endava-neutral-black:#060708;--bq-endava-orange-100:#fef3f1;--bq-endava-orange-200:#fbd6d1;--bq-endava-orange-300:#fab7af;--bq-endava-orange-400:#fa988b;--bq-endava-orange-500:#fc7866;--bq-endava-orange-600:#ff5640;--bq-endava-orange-700:#ce4a39;--bq-endava-orange-800:#a03d30;--bq-endava-orange-900:#722e25;--bq-endava-orange-1000:#471e19}*,:after,:before{box-sizing:border-box}*{font:inherit;margin:0}ol[role=list],ul[role=list]{list-style-type:none}html{font-size:var(--bq-font-size--m)}html:focus-within{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bq-background--primary);color:var(--bq-text--primary);font-family:var(--bq-font-family);line-height:var(--bq-font-line-height--regular);min-height:100vh;text-rendering:optimizeSpeed}a:not([class]){text-decoration-skip-ink:auto}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto;transition-duration:.01ms!important}}:root{--bq-white:#fff;--bq-black:#060708;--bq-neutral-50:var(--bq-grey-50);--bq-neutral-100:var(--bq-grey-100);--bq-neutral-200:var(--bq-grey-200);--bq-neutral-300:var(--bq-grey-300);--bq-neutral-400:var(--bq-grey-400);--bq-neutral-500:var(--bq-grey-500);--bq-neutral-600:var(--bq-grey-600);--bq-neutral-700:var(--bq-grey-700);--bq-neutral-800:var(--bq-grey-800);--bq-neutral-900:var(--bq-grey-900);--bq-neutral-950:var(--bq-grey-950);--bq-neutral-1000:var(--bq-grey-1000);--bq-brand-light:var(--bq-iris-100);--bq-brand:var(--bq-iris-600);--bq-brand-dark:var(--bq-iris-1000);--bq-accent-light:var(--bq-purple-100);--bq-accent:var(--bq-purple-600);--bq-accent-dark:var(--bq-purple-1000);--bq-success-light:var(--bq-teal-100);--bq-success:var(--bq-teal-600);--bq-success-dark:var(--bq-teal-1000);--bq-danger-light:var(--bq-red-100);--bq-danger:var(--bq-red-600);--bq-danger-dark:var(--bq-red-1000);--bq-warning-light:var(--bq-gold-100);--bq-warning:var(--bq-gold-600);--bq-warning-dark:var(--bq-gold-1000);--bq-info-light:var(--bq-iris-100);--bq-info:var(--bq-iris-600);--bq-info-dark:var(--bq-iris-1000);--bq-focus:var(--bq-iris-600);--bq-data-01:var(--bq-brand);--bq-data-02:var(--bq-purple-600);--bq-data-03:var(--bq-magenta-600);--bq-data-04:var(--bq-cyan-600);--bq-data-05:var(--bq-teal-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-yellow-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-blue-600);--bq-data-10:var(--bq-grey-600);--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white);--bq-radius--none:0;--bq-radius--xs2:0.125rem;--bq-radius--xs:0.25rem;--bq-radius--s:0.5rem;--bq-radius--m:0.75rem;--bq-radius--l:1.5rem;--bq-radius--full:9999px;--bq-box-shadow--xs:0 2px 0 rgba(0,0,0,.016);--bq-box-shadow--s:0 8px 24px rgba(0,0,0,.04);--bq-box-shadow--m:0 10px 48px -16px rgba(0,0,0,.12);--bq-box-shadow--l:0 20px 58px -16px rgba(0,0,0,.16);--bq-font-family:"Outfit",sans-serif;--bq-font-size--xs:0.75rem;--bq-font-size--s:0.875rem;--bq-font-size--m:1rem;--bq-font-size--l:1.125rem;--bq-font-size--xl:1.5rem;--bq-font-size--xxl:2rem;--bq-font-size--xxl2:2.5rem;--bq-font-size--xxl3:3rem;--bq-font-size--xxl4:3.5rem;--bq-font-size--xxl5:4rem;--bq-font-weight--thin:100;--bq-font-weight--light:300;--bq-font-weight--regular:400;--bq-font-weight--medium:500;--bq-font-weight--semibold:600;--bq-font-weight--bold:700;--bq-font-line-height--small:1.2;--bq-font-line-height--regular:1.5;--bq-font-line-height--large:1.5;--bq-spacing-xs3:0.125rem;--bq-spacing-xs2:0.25rem;--bq-spacing-xs:0.5rem;--bq-spacing-s:0.75rem;--bq-spacing-m:1rem;--bq-spacing-l:1.5rem;--bq-spacing-xl:2rem;--bq-spacing-xxl:2.5rem;--bq-spacing-xxl2:3.5rem;--bq-spacing-xxl3:4rem;--bq-spacing-xxl4:4.5rem;--bq-stroke-s:1px;--bq-stroke-m:2px;--bq-stroke-l:3px}.beeq.light,.light,:root,[bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--alt:var(--bq-white);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-200);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-light);--bq-hover:#bcbfc5;--bq-active:#444546}.beeq.dark,.dark,[bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-950);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-800);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-dark);--bq-hover:#444546;--bq-active:#1f2026}.endava,[bq-theme=endava]{--bq-font-family:"Poppins",sans-serif;--bq-white:#fafbfb;--bq-black:#030406;--bq-neutral-50:var(--bq-endava-grey-50);--bq-neutral-100:var(--bq-endava-grey-100);--bq-neutral-200:var(--bq-endava-grey-200);--bq-neutral-300:var(--bq-endava-grey-300);--bq-neutral-400:var(--bq-endava-grey-400);--bq-neutral-500:var(--bq-endava-grey-500);--bq-neutral-600:var(--bq-endava-grey-600);--bq-neutral-700:var(--bq-endava-grey-700);--bq-neutral-800:var(--bq-endava-grey-800);--bq-neutral-900:var(--bq-endava-grey-900);--bq-neutral-950:var(--bq-endava-grey-950);--bq-neutral-1000:var(--bq-endava-grey-1000);--bq-brand-light:var(--bq-endava-orange-100);--bq-brand:var(--bq-endava-orange-600);--bq-brand-dark:var(--bq-endava-orange-1000);--bq-accent-light:var(--bq-endava-orange-100);--bq-accent:var(--bq-endava-orange-600);--bq-accent-dark:var(--bq-endava-orange-1000);--bq-success-light:var(--bq-green-100);--bq-success:var(--bq-green-600);--bq-success-dark:var(--bq-green-1000);--bq-danger-light:var(--bq-corai-100);--bq-danger:var(--bq-corai-600);--bq-danger-dark:var(--bq-corai-1000);--bq-warning-light:var(--bq-yellow-100);--bq-warning:var(--bq-yellow-600);--bq-warning-dark:var(--bq-yellow-1000);--bq-info-light:var(--bq-blue-100);--bq-info:var(--bq-blue-600);--bq-info-dark:var(--bq-blue-1000);--bq-focus:var(--bq-endava-orange-600);--bq-data-01:var(--bq-brand);--bq-data-02:#af0cd8;--bq-data-03:#0ca8d8;--bq-data-04:var(--bq-teal-600);--bq-data-05:var(--bq-yellow-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-blue-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-purple-600);--bq-data-10:#394b56;--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white)}.endava.light,[bq-theme=endava][bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--brand-alt:var(--bq-brand-light);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-200);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--brand:var(--bq-brand);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-light);--bq-hover:#444546;--bq-active:#1f2026}.endava.dark,[bq-theme=endava][bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-900);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--brand-alt:var(--bq-brand-dark);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-neutral-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-800);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-dark);--bq-hover:#444546;--bq-active:#1f2026}.pointer-events-none{pointer-events:none}.me-\[--bq-input--gap\]{margin-inline-end:var(--bq-input--gap)}.ms-\[--bq-input--gap\]{margin-inline-start:var(--bq-input--gap)}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.hidden{display:none}.flex-auto{flex:1 1 auto}.flex-grow{flex-grow:1}.cursor-inherit{cursor:inherit}.cursor-not-allowed{cursor:not-allowed}.appearance-none{appearance:none}.items-center{align-items:center}.rounded-\[--bq-input--border-radius\]{border-radius:var(--bq-input--border-radius)}.rounded-xs{border-radius:var(--bq-radius--xs)}.border-\[length\:--bq-input--border-width\]{border-width:var(--bq-input--border-width)}.border-none{border-style:none}.border-\[color\:--bq-input--border-color-focus\]{border-color:var(--bq-input--border-color-focus)}.border-\[color\:--bq-input--border-color\]{border-color:var(--bq-input--border-color)}.border-danger{border-color:var(--bq-stroke--danger)}.border-success{border-color:var(--bq-stroke--success)}.border-warning{border-color:var(--bq-stroke--warning)}.bg-inherit{background-color:inherit}.pe-\[--bq-input--padding-end\]{padding-inline-end:var(--bq-input--padding-end)}.ps-\[--bq-input--padding-start\]{padding-inline-start:var(--bq-input--padding-start)}.font-inherit{font-family:inherit}.text-\[length\:--bq-input--helper-text-size\]{font-size:var(--bq-input--helper-text-size)}.text-\[length\:--bq-input--label-text-size\]{font-size:var(--bq-input--label-text-size)}.text-\[length\:--bq-input--text-size\]{font-size:var(--bq-input--text-size)}.text-\[length\:inherit\]{font-size:inherit}.text-\[color\:--bq-input--helper-text-color\]{color:var(--bq-input--helper-text-color)}.text-\[color\:--bq-input--label-text-color\]{color:var(--bq-input--label-text-color)}.text-\[color\:--bq-input--text-color\]{color:var(--bq-input--text-color)}.text-danger{color:var(--bq-text--danger)}.text-success{color:var(--bq-text--success)}.text-warning{color:var(--bq-text--warning)}.opacity-60{opacity:.6}.transition-\[border-color\2c box-shadow\]{transition-duration:.15s;transition-property:border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1)}.border-active-danger{border-color:color-mix(in srgb,var(--bq-stroke--danger),var(--bq-active) 20%)}.border-active-success{border-color:color-mix(in srgb,var(--bq-stroke--success),var(--bq-active) 20%)}.border-active-warning{border-color:color-mix(in srgb,var(--bq-stroke--warning),var(--bq-active) 20%)}.bs-auto{block-size:auto}.is-full{inline-size:100%}.min-bs-\[--bq-input--icon-size\]{min-block-size:var(--bq-input--icon-size)}.min-is-0{min-inline-size:0}.p-b-0{padding-block:0}.p-b-\[--bq-input--paddingY\]{padding-block:var(--bq-input--paddingY)}.p-i-0{padding-inline:0}.m-b-0{margin-block:0}.m-be-\[--bq-input--label-margin-bottom\]{margin-block-end:var(--bq-input--label-margin-bottom)}.m-bs-\[--bq-input--helper-margin-top\]{margin-block-start:var(--bq-input--helper-margin-top)}.m-i-0{margin-inline:0}.focus{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}@-webkit-keyframes fade-in{0%{opacity:0}}@keyframes fade-in{0%{opacity:0}}@-webkit-keyframes slide-in{0%{-webkit-transform:translateY(10px);transform:translateY(10px)}}@keyframes slide-in{0%{-webkit-transform:translateY(10px);transform:translateY(10px)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}:host{--bq-input--background-color:var(--bq-ui--primary);--bq-input--border-color:var(--bq-stroke--tertiary);--bq-input--border-color-focus:var(--bq-stroke--brand);--bq-input--border-radius:var(--bq-radius--s);--bq-input--border-width:var(--bq-stroke-s);--bq-input--border-style:solid;--bq-input--gap:var(--bq-spacing-xs);--bq-input--helper-margin-top:var(--bq-spacing-xs);--bq-input--helper-text-size:var(--bq-font-size--s);--bq-input--helper-text-color:var(--bq-text--primary);--bq-input--icon-size:24px;--bq-input--label-margin-bottom:var(--bq-spacing-xs);--bq-input--label-text-size:var(--bq-font-size--s);--bq-input--label-text-color:var(--bq-text--primary);--bq-input--padding-start:var(--bq-spacing-m);--bq-input--padding-end:var(--bq-spacing-m);--bq-input--paddingY:var(--bq-spacing-s);--bq-input--text-color:var(--bq-text--primary);--bq-input--text-size:var(--bq-font-size--m);--bq-input--text-placeholder-color:var(--bq-text--secondary);display:block;inline-size:100%}.bq-input--label{align-items:center;color:var(--bq-input--label-text-color);display:flex;flex-grow:1;font-size:var(--bq-input--label-text-size);margin-block-end:var(--bq-input--label-margin-bottom)}.bq-input--helper-text{color:var(--bq-input--helper-text-color);font-size:var(--bq-input--helper-text-size);margin-block-start:var(--bq-input--helper-margin-top)}.bq-input--helper-text.validation-error{color:var(--bq-text--danger)}.bq-input--helper-text.validation-success{color:var(--bq-text--success)}.bq-input--helper-text.validation-warning{color:var(--bq-text--warning)}.bq-input--control{align-items:center;border-color:var(--bq-input--border-color);border-radius:var(--bq-input--border-radius);border-style:var(--bq-input--border-style);border-width:var(--bq-input--border-width);color:var(--bq-input--text-color);display:flex;font-size:var(--bq-input--text-size);inline-size:100%;padding-block:var(--bq-input--paddingY);padding-inline-end:var(--bq-input--padding-end);padding-inline-start:var(--bq-input--padding-start);transition-duration:.15s;transition-property:border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1)}.bq-input--control::placeholder{color:var(--bq-input--text-placeholder-color)}.bq-input--control:hover:not(.disabled):not(:focus-within){border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}.bq-input--control:not(.disabled):focus-within{--bq-ring-width:1px;--bq-ring-offset-width:0;--bq-ring-color-focus:var(--bq-input--border-color-focus);border-color:var(--bq-input--border-color-focus);outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}.bq-input--control:not(.disabled):focus-within .bq-input--control__clear,.bq-input--control:not(.disabled):hover .bq-input--control__clear{display:inline-block}.bq-input--control.disabled{cursor:not-allowed;opacity:.6}.bq-input--control.validation-error{border-color:var(--bq-stroke--danger)}.bq-input--control.validation-error:hover:not(.disabled):not(:focus-within){border-color:color-mix(in srgb,var(--bq-stroke--danger),var(--bq-hover) 20%)}.bq-input--control.validation-error:not(.disabled):focus-within{--bq-ring-color-focus:var(--bq-stroke--danger);border-color:color-mix(in srgb,var(--bq-stroke--danger),var(--bq-active) 20%)}.bq-input--control.validation-success{border-color:var(--bq-stroke--success)}.bq-input--control.validation-success:hover:not(.disabled):not(:focus-within){border-color:color-mix(in srgb,var(--bq-stroke--success),var(--bq-hover) 20%)}.bq-input--control.validation-success:not(.disabled):focus-within{--bq-ring-color-focus:var(--bq-stroke--success);border-color:color-mix(in srgb,var(--bq-stroke--success),var(--bq-active) 20%)}.bq-input--control.validation-warning{border-color:var(--bq-stroke--warning)}.bq-input--control.validation-warning:hover:not(.disabled):not(:focus-within){border-color:color-mix(in srgb,var(--bq-stroke--warning),var(--bq-hover) 20%)}.bq-input--control.validation-warning:not(.disabled):focus-within{--bq-ring-color-focus:var(--bq-stroke--warning);border-color:color-mix(in srgb,var(--bq-stroke--warning),var(--bq-active) 20%)}.bq-input--control__input{appearance:none;background-color:inherit;border-style:none;-webkit-box-shadow:none;box-shadow:none;color:inherit;cursor:inherit;flex:1 1 auto;font-family:inherit;font-size:inherit;font-weight:inherit;margin-block:0;margin-inline:0;min-block-size:var(--bq-input--icon-size);min-inline-size:0;padding-block:0;padding-inline:0}.bq-input--control__input:focus{outline:2px solid transparent;outline-offset:2px}.bq-input--control__input:focus-visible{outline:2px solid transparent;outline-offset:2px}.bq-input--control__clear::part(button){--bq-ring-width:initial;--bq-ring-offset-width:initial;--bq-ring-color-focus:initial;block-size:auto;border-radius:var(--bq-radius--xs);border-style:none;padding-block:0;padding-inline:0}.bq-input--control__prefix,.bq-input--control__suffix{align-items:center;color:var(--bq-input--text-color);display:flex;pointer-events:none}.bq-input--control__prefix{margin-inline-end:var(--bq-input--gap)}.bq-input--control__suffix{margin-inline-start:var(--bq-input--gap)}::slotted(bq-icon),bq-icon{--bq-icon--size:var(--bq-input--icon-size)!important}.bq-input--control__input::-moz-search-cancel{appearance:none;display:none}.bq-input--control__input::-webkit-search-cancel-button,.bq-input--control__input::-webkit-search-decoration,.bq-input--control__input::-webkit-search-results-button,.bq-input--control__input::-webkit-search-results-decoration{appearance:none;display:none}.bq-input--control__input::-webkit-datetime-edit,.bq-input--control__input::-webkit-datetime-edit-day-field,.bq-input--control__input::-webkit-datetime-edit-fields-wrapper,.bq-input--control__input::-webkit-datetime-edit-hour-field,.bq-input--control__input::-webkit-datetime-edit-meridiem-field,.bq-input--control__input::-webkit-datetime-edit-millisecond-field,.bq-input--control__input::-webkit-datetime-edit-minute-field,.bq-input--control__input::-webkit-datetime-edit-month-field,.bq-input--control__input::-webkit-datetime-edit-second-field,.bq-input--control__input::-webkit-datetime-edit-year-field{padding-block:0;padding-inline:0}.placeholder\:text-\[color\:--bq-input--text-placeholder-color\]::placeholder{color:var(--bq-input--text-placeholder-color)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.visible{visibility:visible}.static{position:static}.\!hidden{display:none!important}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.inline{display:inline}.text-\[color\:--bq-icon--color\]{color:var(--bq-icon--color)}.bs-\[--bq-icon--size\]{block-size:var(--bq-icon--size)}.is-\[--bq-icon--size\]{inline-size:var(--bq-icon--size)}
@@ -7,6 +7,48 @@ import { NOTIFICATION_TYPE } from "./bq-notification.types";
7
7
  import { debounce, enter, hasSlotContent, leave, validatePropValue } from "../../shared/utils";
8
8
  const NOTIFICATION_PORTAL_SELECTOR = 'bq-notification-portal';
9
9
  /**
10
+ * The Notification component is a user interface element used to provide information or alerts to users in a non-intrusive manner.
11
+ *
12
+ * @example How to use it
13
+ * ```html
14
+ * <bq-notification border="s" time="3000" type="info">
15
+ * Title
16
+ * <span slot="body">
17
+ * This is some description text text
18
+ * <a class="bq-link" href="https://example.com">Link</a>
19
+ * </span>
20
+ * <div class="flex gap-xs" slot="footer">
21
+ * <bq-button appearance="primary" size="small">Button</bq-button>
22
+ * <bq-button appearance="link" size="small">Button</bq-button>
23
+ * </div>
24
+ * </bq-notification>
25
+ * ```
26
+ *
27
+ * @documentation https://www.beeq.design/3d466e231/p/945cb6-notification
28
+ * @status stable
29
+ *
30
+ * @dependency bq-button
31
+ * @dependency bq-icon
32
+ *
33
+ * @attr {boolean} auto-dismiss - If true, the notification will automatically hide after the specified amount of time
34
+ * @attr {string} border - The corder radius of the notification component
35
+ * @attr {boolean} disable-close - If true, the close button at the top right of the notification won't be shown
36
+ * @attr {boolean} hide-icon - If true, the notification icon won't be shown
37
+ * @attr {boolean} open - If true, the notification will be shown
38
+ * @attr {number} time - The length of time, in milliseconds, after which the notification will close itself. Only valid if `auto-dismiss="true"`
39
+ * @attr {string} type - Type of Notification
40
+ *
41
+ * @event bqAfterClose - Callback handler to be called after the notification has been closed
42
+ * @event bqAfterOpen - Callback handler to be called after the notification has been opened
43
+ * @event bqHide - Callback handler to be called when the notification is hidden
44
+ * @event bqShow - Callback handler to be called when the notification is shown
45
+ *
46
+ * @slot - The notification title content
47
+ * @slot body - The notification description content
48
+ * @slot footer - The notification footer content
49
+ * @slot icon - The icon to be displayed in the notification
50
+ * @slot btn-close - The close button of the notification
51
+ *
10
52
  * @part base - The `<div>` container of the predefined bq-icon component.
11
53
  * @part body - The container `<div>` that wraps the notification description content
12
54
  * @part btn-close - The `bq-button` used to close the notification
@@ -19,11 +61,21 @@ const NOTIFICATION_PORTAL_SELECTOR = 'bq-notification-portal';
19
61
  * @part title - The container `<div>` that wraps the notification title content
20
62
  * @part wrapper - The wrapper container `<div>` of the element inside the shadow DOM
21
63
  *
22
- * @slot - The notification title content
23
- * @slot body - The notification description content
24
- * @slot footer - The notification footer content
25
- * @slot icon - The icon to be displayed in the notification
26
- * @slot btn-close - The close button of the notification
64
+ * @cssprop --bq-notification--background - The notification background color
65
+ * @cssprop --bq-notification--box-shadow - The notification box shadow
66
+ * @cssprop --bq-notification--border-color - The notification border color
67
+ * @cssprop --bq-notification--border-radius - The notification border radius
68
+ * @cssprop --bq-notification--border-style - The notification border style
69
+ * @cssprop --bq-notification--border-width - The notification border width
70
+ * @cssprop --bq-notification--content-footer-gap - The notification content and footer gap
71
+ * @cssprop --bq-notification--title-body-gap - The notification title and body gap
72
+ * @cssprop --bq-notification--icon-color-error - The notification icon color for error type
73
+ * @cssprop --bq-notification--icon-color-info - The notification icon color for info type
74
+ * @cssprop --bq-notification--icon-color-neutral - The notification icon color for neutral type
75
+ * @cssprop --bq-notification--icon-color-success - The notification icon color for success type
76
+ * @cssprop --bq-notification--icon-color-warning - The notification icon color for warning type
77
+ * @cssprop --bq-notification--padding - The notification padding
78
+ * @cssprop --bq-notification--min-width - The notification min width
27
79
  */
28
80
  export class BqNotification {
29
81
  constructor() {
@@ -189,11 +241,11 @@ export class BqNotification {
189
241
  const style = {
190
242
  ...(this.border && { '--bq-notification--border-radius': `var(--bq-radius--${this.border})` }),
191
243
  };
192
- return (h(Host, { key: '411d19d1f08119b6c7fe7853e49195a5b9e12cd9', style: style, class: { 'is-hidden': !this.open }, "aria-hidden": !this.open ? 'true' : 'false', hidden: !this.open ? 'true' : 'false', role: "alert" }, h("div", { key: '45f9cd844fde4725a766bd9af611b1ba37f92acd', class: "bq-notification", "data-transition-enter": "transform transition ease-out duration-300", "data-transition-enter-start": "translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s", "data-transition-enter-end": "translate-y-0 opacity-100 sm:translate-x-0", "data-transition-leave": "transform transition ease-in duration-100", "data-transition-leave-start": "translate-y-0 opacity-100 sm:translate-x-0", "data-transition-leave-end": "-translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s", ref: (div) => (this.notificationElem = div), part: "wrapper" }, !this.disableClose && (h("bq-button", { key: '9f4115b99545244551ee758430e4bb5d7f72a81b', class: "notification--close absolute inset-ie-5 [&::part(label)]:inline-flex", appearance: "text", size: "small", onClick: () => this.hide(), part: "btn-close" }, h("slot", { key: '5472deffc786ecbd62374f7fd28968bceac2aa5b', name: "btn-close" }, h("bq-icon", { key: '33e3ca7621c377aae89fe1c09692568d3caeca11', name: "x" })))), h("div", { key: '8139860988d2ff313310a13757eefee3e76c23d9', class: {
244
+ return (h(Host, { key: '8b7084353f7b8c56b8d696096c924cc4b656cf28', style: style, class: { 'is-hidden': !this.open }, "aria-hidden": !this.open ? 'true' : 'false', hidden: !this.open ? 'true' : 'false', role: "alert" }, h("div", { key: 'cab0f383966f200ec572bd44555c953981f97396', class: "bq-notification", "data-transition-enter": "transform transition ease-out duration-300", "data-transition-enter-start": "translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s", "data-transition-enter-end": "translate-y-0 opacity-100 sm:translate-x-0", "data-transition-leave": "transform transition ease-in duration-100", "data-transition-leave-start": "translate-y-0 opacity-100 sm:translate-x-0", "data-transition-leave-end": "-translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s", ref: (div) => (this.notificationElem = div), part: "wrapper" }, !this.disableClose && (h("bq-button", { key: '93fa14134d5e7e0c306becd41ec9532173ca4db1', class: "notification--close absolute inset-ie-5 [&::part(label)]:inline-flex", appearance: "text", size: "small", onClick: () => this.hide(), part: "btn-close" }, h("slot", { key: 'a76dc08273cf3adbcd46587214153433fa4fb6c6', name: "btn-close" }, h("bq-icon", { key: '70d2abe0c787c51eb75a8dee13c7b83fe54be4c8', name: "x" })))), h("div", { key: '04d32e0fb14ab2c03863cc2d47d5a0a07c7eb481', class: {
193
245
  '!hidden': this.hideIcon,
194
246
  [`color-${this.type}`]: true, // The icon color will be based on the type (info, success, warning, error)
195
247
  'notification--icon me-xs flex text-left align-top': true,
196
- }, part: "icon-outline" }, h("slot", { key: '46a501d0ef1f7fa1440cac3eac05d51e19c25336', name: "icon" }, h("bq-icon", { key: '6306ef09bff157ef4eca5ee45259d4a17c9da89e', name: this.iconName, part: "icon", exportparts: "base,svg" }))), h("div", { key: '39b62fdb9df69307eb913707a9cc585415064709', class: "flex flex-col items-start gap-[--bq-notification--content-footer-gap]", part: "main" }, h("div", { key: 'c3a061358db3859536429a5c7cce781575bc0740', class: "flex flex-col gap-[--bq-notification--title-body-gap]", part: "content" }, h("div", { key: 'd7bc9f7ccd2e3c66b2ff48f6d8fd1a0687a34570', class: "title-font font-semibold leading-regular", part: "title" }, h("slot", { key: '04f8365658aafe57aa8bc67231560addbddd6eab' })), h("div", { key: '13c7e30888fae485aa127dd2d0cbcddf9a1ef3f4', class: { 'text-s leading-regular': true, '!hidden': !this.hasContent }, ref: (div) => (this.bodyElem = div), part: "body" }, h("slot", { key: '39d07bf713348590855059a0b44efe0d66ee9222', name: "body", onSlotchange: this.handleContentSlotChange }))), h("div", { key: 'dadf3b1c035aa1b2061ab22d0badf8a90a843923', class: { 'flex items-start gap-xs': true, '!hidden': !this.hasFooter }, ref: (div) => (this.footerElem = div), part: "footer" }, h("slot", { key: '4e3075f3f32633d8af9a41468bd1c3972f709404', name: "footer", onSlotchange: this.handleFooterSlotChange }))))));
248
+ }, part: "icon-outline" }, h("slot", { key: 'fc25219856fa81ff97464b0975a56625f49f4dde', name: "icon" }, h("bq-icon", { key: '6d129d23dd329f7fdefe1260c2bfe0a087fd8566', name: this.iconName, part: "icon", exportparts: "base,svg" }))), h("div", { key: 'f57c23e355ab3a99f702f71e8d653ea56ea7f4f1', class: "flex flex-col items-start gap-[--bq-notification--content-footer-gap]", part: "main" }, h("div", { key: '05d86bcac68ee95df8f740e539dd96c9c3319eba', class: "flex flex-col gap-[--bq-notification--title-body-gap]", part: "content" }, h("div", { key: 'a3a8c213dba00e952b8488f05a03a23a1ab506e6', class: "title-font font-semibold leading-regular", part: "title" }, h("slot", { key: 'b1eab69bb07a869ecfd04788a5e64258d99e74d7' })), h("div", { key: 'db297c3960b742e809ee18efcddb42d17d64978a', class: { 'text-s leading-regular': true, '!hidden': !this.hasContent }, ref: (div) => (this.bodyElem = div), part: "body" }, h("slot", { key: '1ff1ab416adec6675c18d9c08f9c11af8ec45d3f', name: "body", onSlotchange: this.handleContentSlotChange }))), h("div", { key: '5915ae7f96f7f084f088e55008a90f379b7e381a', class: { 'flex items-start gap-xs': true, '!hidden': !this.hasFooter }, ref: (div) => (this.footerElem = div), part: "footer" }, h("slot", { key: 'db59ecb0d82b109acce673ff6b86246149240c91', name: "footer", onSlotchange: this.handleFooterSlotChange }))))));
197
249
  }
198
250
  static get is() { return "bq-notification"; }
199
251
  static get encapsulation() { return "shadow"; }
@@ -223,6 +275,8 @@ export class BqNotification {
223
275
  "tags": [],
224
276
  "text": "If true, the notification will automatically hide after the specified amount of time"
225
277
  },
278
+ "getter": false,
279
+ "setter": false,
226
280
  "attribute": "auto-dismiss",
227
281
  "reflect": true
228
282
  },
@@ -246,6 +300,8 @@ export class BqNotification {
246
300
  "tags": [],
247
301
  "text": "The corder radius of the notification component"
248
302
  },
303
+ "getter": false,
304
+ "setter": false,
249
305
  "attribute": "border",
250
306
  "reflect": true,
251
307
  "defaultValue": "'s'"
@@ -264,6 +320,8 @@ export class BqNotification {
264
320
  "tags": [],
265
321
  "text": "If true, the close button at the top right of the notification won't be shown"
266
322
  },
323
+ "getter": false,
324
+ "setter": false,
267
325
  "attribute": "disable-close",
268
326
  "reflect": true
269
327
  },
@@ -281,6 +339,8 @@ export class BqNotification {
281
339
  "tags": [],
282
340
  "text": "If true, the notification icon won't be shown"
283
341
  },
342
+ "getter": false,
343
+ "setter": false,
284
344
  "attribute": "hide-icon",
285
345
  "reflect": true
286
346
  },
@@ -298,6 +358,8 @@ export class BqNotification {
298
358
  "tags": [],
299
359
  "text": "If true, the notification will be shown"
300
360
  },
361
+ "getter": false,
362
+ "setter": false,
301
363
  "attribute": "open",
302
364
  "reflect": true
303
365
  },
@@ -315,6 +377,8 @@ export class BqNotification {
315
377
  "tags": [],
316
378
  "text": "The length of time, in milliseconds, after which the notification will close itself. Only valid if `autoDismiss=\"true\"`"
317
379
  },
380
+ "getter": false,
381
+ "setter": false,
318
382
  "attribute": "time",
319
383
  "reflect": true,
320
384
  "defaultValue": "3000"
@@ -339,6 +403,8 @@ export class BqNotification {
339
403
  "tags": [],
340
404
  "text": "Type of Notification"
341
405
  },
406
+ "getter": false,
407
+ "setter": false,
342
408
  "attribute": "type",
343
409
  "reflect": true,
344
410
  "defaultValue": "'info'"
@@ -1 +1 @@
1
- {"version":3,"file":"bq-notification.js","sourceRoot":"","sources":["../../../../../../src/components/notification/bq-notification.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Listen, Method, Prop, State, Watch } from '@stencil/core';\n\nimport { NOTIFICATION_TYPE, TNotificationBorderRadius, TNotificationType } from './bq-notification.types';\nimport { debounce, enter, hasSlotContent, leave, TDebounce, validatePropValue } from '../../shared/utils';\n\nconst NOTIFICATION_PORTAL_SELECTOR = 'bq-notification-portal';\n\n/**\n * @part base - The `<div>` container of the predefined bq-icon component.\n * @part body - The container `<div>` that wraps the notification description content\n * @part btn-close - The `bq-button` used to close the notification\n * @part content - The container `<div>` that wraps all the notification content (title, description, footer)\n * @part footer - The container `<div>` that wraps the notification footer content\n * @part icon - The `<bq-icon>` element used to render a predefined icon based on the notification type\n * @part icon-outline - The container `<div>` that wraps the icon element\n * @part main - The container `<div>` that wraps the notification 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 notification title content\n * @part wrapper - The wrapper container `<div>` of the element inside the shadow DOM\n *\n * @slot - The notification title content\n * @slot body - The notification description content\n * @slot footer - The notification footer content\n * @slot icon - The icon to be displayed in the notification\n * @slot btn-close - The close button of the notification\n */\n\n@Component({\n tag: 'bq-notification',\n styleUrl: './scss/bq-notification.scss',\n shadow: true,\n})\nexport class BqNotification {\n // Own Properties\n // ====================\n\n private autoDismissDebounce: TDebounce<void>;\n private bodyElem: HTMLDivElement;\n private footerElem: HTMLDivElement;\n private notificationElem: HTMLDivElement;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqNotificationElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() private hasContent = false;\n @State() private hasFooter = false;\n @State() private notificationPortal =\n typeof window !== 'undefined' ? document.querySelector(`.${NOTIFICATION_PORTAL_SELECTOR}`) : null;\n\n // Public Property API\n // ========================\n\n /** If true, the notification will automatically hide after the specified amount of time */\n @Prop({ reflect: true }) autoDismiss: boolean;\n\n /** The corder radius of the notification component */\n @Prop({ reflect: true }) border: TNotificationBorderRadius = 's';\n\n /** If true, the close button at the top right of the notification won't be shown */\n @Prop({ reflect: true }) disableClose: boolean;\n\n /** If true, the notification icon won't be shown */\n @Prop({ reflect: true }) hideIcon: boolean;\n\n /** If true, the notification will be shown */\n @Prop({ reflect: true, mutable: true }) open: boolean;\n\n /** The length of time, in milliseconds, after which the notification will close itself. Only valid if `autoDismiss=\"true\"` */\n @Prop({ reflect: true }) time: number = 3000;\n\n /** Type of Notification */\n @Prop({ reflect: true }) type: TNotificationType = 'info';\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.autoDismiss && this.open)) return;\n this.autoDismissDebounce();\n }\n\n @Watch('type')\n checkPropValues() {\n validatePropValue(NOTIFICATION_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 notification is hidden */\n @Event() bqHide!: EventEmitter;\n\n /** Callback handler to be called when the notification is shown */\n @Event() bqShow!: EventEmitter;\n\n /** Callback handler to be called after the notification has been opened */\n @Event() bqAfterOpen!: EventEmitter;\n\n /** Callback handler to be called after the notification has been closed */\n @Event() bqAfterClose!: EventEmitter;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n connectedCallback() {\n const { notificationPortal } = this;\n if (!notificationPortal && typeof window !== 'undefined') {\n this.notificationPortal = Object.assign(document.createElement('div'), {\n className: NOTIFICATION_PORTAL_SELECTOR,\n });\n }\n }\n\n componentWillLoad() {\n this.checkPropValues();\n this.handleTimeout();\n }\n\n // Listeners\n // ==============\n\n @Listen('bqAfterClose')\n afterNotificationClose() {\n try {\n const { notificationPortal } = this;\n notificationPortal.removeChild(this.el);\n // Remove the notification portal from the DOM when there are no more notifications\n if (notificationPortal.querySelector(this.el.tagName.toLowerCase()) === null) {\n notificationPortal.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 hide the notification component */\n @Method()\n async hide(): Promise<void> {\n await this.handleHide();\n }\n\n /** Method to be called to show the notification component */\n @Method()\n async show(): Promise<void> {\n await this.handleShow();\n }\n\n /** This method can be used to display notifications in a fixed-position element that allows for stacking multiple notifications vertically */\n @Method()\n async toast() {\n const { notificationPortal } = this;\n if (notificationPortal?.parentElement === null) {\n document.body.append(notificationPortal);\n }\n\n notificationPortal?.appendChild(this.el);\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 handleHide = async () => {\n const ev = this.bqHide.emit(this.el);\n if (!ev.defaultPrevented) {\n await leave(this.notificationElem);\n this.open = false;\n this.handleTransitionEnd();\n }\n };\n\n private handleShow = async () => {\n const ev = this.bqShow.emit(this.el);\n if (!ev.defaultPrevented) {\n this.open = true;\n await enter(this.notificationElem);\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);\n };\n\n private handleFooterSlotChange = () => {\n this.hasFooter = hasSlotContent(this.footerElem, 'footer');\n };\n\n private get iconName(): string {\n const typeMap = {\n error: 'x-circle',\n success: 'check-circle',\n warning: 'warning-circle',\n };\n\n return typeMap[this.type] || 'info';\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n const style = {\n ...(this.border && { '--bq-notification--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=\"alert\"\n >\n <div\n class=\"bq-notification\"\n data-transition-enter=\"transform transition ease-out duration-300\"\n data-transition-enter-start=\"translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s\"\n data-transition-enter-end=\"translate-y-0 opacity-100 sm:translate-x-0\"\n data-transition-leave=\"transform transition ease-in duration-100\"\n data-transition-leave-start=\"translate-y-0 opacity-100 sm:translate-x-0\"\n data-transition-leave-end=\"-translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s\"\n ref={(div) => (this.notificationElem = div)}\n part=\"wrapper\"\n >\n {/* CLOSE BUTTON */}\n {!this.disableClose && (\n <bq-button\n class=\"notification--close absolute inset-ie-5 [&::part(label)]:inline-flex\"\n appearance=\"text\"\n size=\"small\"\n onClick={() => this.hide()}\n part=\"btn-close\"\n >\n <slot name=\"btn-close\">\n <bq-icon name=\"x\" />\n </slot>\n </bq-button>\n )}\n {/* ICON */}\n <div\n class={{\n '!hidden': this.hideIcon,\n [`color-${this.type}`]: true, // The icon color will be based on the type (info, success, warning, error)\n 'notification--icon me-xs flex text-left align-top': true,\n }}\n part=\"icon-outline\"\n >\n <slot name=\"icon\">\n <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-notification--content-footer-gap]\" part=\"main\">\n <div class=\"flex flex-col gap-[--bq-notification--title-body-gap]\" part=\"content\">\n {/* TITLE */}\n <div class=\"title-font font-semibold leading-regular\" part=\"title\">\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"]}
1
+ {"version":3,"file":"bq-notification.js","sourceRoot":"","sources":["../../../../../../src/components/notification/bq-notification.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Listen, Method, Prop, State, Watch } from '@stencil/core';\n\nimport { NOTIFICATION_TYPE, TNotificationBorderRadius, TNotificationType } from './bq-notification.types';\nimport { debounce, enter, hasSlotContent, leave, TDebounce, validatePropValue } from '../../shared/utils';\n\nconst NOTIFICATION_PORTAL_SELECTOR = 'bq-notification-portal';\n\n/**\n * The Notification component is a user interface element used to provide information or alerts to users in a non-intrusive manner.\n *\n * @example How to use it\n * ```html\n * <bq-notification border=\"s\" time=\"3000\" type=\"info\">\n * Title\n * <span slot=\"body\">\n * This is some description text text\n * <a class=\"bq-link\" href=\"https://example.com\">Link</a>\n * </span>\n * <div class=\"flex gap-xs\" slot=\"footer\">\n * <bq-button appearance=\"primary\" size=\"small\">Button</bq-button>\n * <bq-button appearance=\"link\" size=\"small\">Button</bq-button>\n * </div>\n * </bq-notification>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/945cb6-notification\n * @status stable\n *\n * @dependency bq-button\n * @dependency bq-icon\n *\n * @attr {boolean} auto-dismiss - If true, the notification will automatically hide after the specified amount of time\n * @attr {string} border - The corder radius of the notification component\n * @attr {boolean} disable-close - If true, the close button at the top right of the notification won't be shown\n * @attr {boolean} hide-icon - If true, the notification icon won't be shown\n * @attr {boolean} open - If true, the notification will be shown\n * @attr {number} time - The length of time, in milliseconds, after which the notification will close itself. Only valid if `auto-dismiss=\"true\"`\n * @attr {string} type - Type of Notification\n *\n * @event bqAfterClose - Callback handler to be called after the notification has been closed\n * @event bqAfterOpen - Callback handler to be called after the notification has been opened\n * @event bqHide - Callback handler to be called when the notification is hidden\n * @event bqShow - Callback handler to be called when the notification is shown\n *\n * @slot - The notification title content\n * @slot body - The notification description content\n * @slot footer - The notification footer content\n * @slot icon - The icon to be displayed in the notification\n * @slot btn-close - The close button of the notification\n *\n * @part base - The `<div>` container of the predefined bq-icon component.\n * @part body - The container `<div>` that wraps the notification description content\n * @part btn-close - The `bq-button` used to close the notification\n * @part content - The container `<div>` that wraps all the notification content (title, description, footer)\n * @part footer - The container `<div>` that wraps the notification footer content\n * @part icon - The `<bq-icon>` element used to render a predefined icon based on the notification type\n * @part icon-outline - The container `<div>` that wraps the icon element\n * @part main - The container `<div>` that wraps the notification 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 notification title content\n * @part wrapper - The wrapper container `<div>` of the element inside the shadow DOM\n *\n * @cssprop --bq-notification--background - The notification background color\n * @cssprop --bq-notification--box-shadow - The notification box shadow\n * @cssprop --bq-notification--border-color - The notification border color\n * @cssprop --bq-notification--border-radius - The notification border radius\n * @cssprop --bq-notification--border-style - The notification border style\n * @cssprop --bq-notification--border-width - The notification border width\n * @cssprop --bq-notification--content-footer-gap - The notification content and footer gap\n * @cssprop --bq-notification--title-body-gap - The notification title and body gap\n * @cssprop --bq-notification--icon-color-error - The notification icon color for error type\n * @cssprop --bq-notification--icon-color-info - The notification icon color for info type\n * @cssprop --bq-notification--icon-color-neutral - The notification icon color for neutral type\n * @cssprop --bq-notification--icon-color-success - The notification icon color for success type\n * @cssprop --bq-notification--icon-color-warning - The notification icon color for warning type\n * @cssprop --bq-notification--padding - The notification padding\n * @cssprop --bq-notification--min-width - The notification min width\n */\n@Component({\n tag: 'bq-notification',\n styleUrl: './scss/bq-notification.scss',\n shadow: true,\n})\nexport class BqNotification {\n // Own Properties\n // ====================\n\n private autoDismissDebounce: TDebounce<void>;\n private bodyElem: HTMLDivElement;\n private footerElem: HTMLDivElement;\n private notificationElem: HTMLDivElement;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqNotificationElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() private hasContent = false;\n @State() private hasFooter = false;\n @State() private notificationPortal =\n typeof window !== 'undefined' ? document.querySelector(`.${NOTIFICATION_PORTAL_SELECTOR}`) : null;\n\n // Public Property API\n // ========================\n\n /** If true, the notification will automatically hide after the specified amount of time */\n @Prop({ reflect: true }) autoDismiss: boolean;\n\n /** The corder radius of the notification component */\n @Prop({ reflect: true }) border: TNotificationBorderRadius = 's';\n\n /** If true, the close button at the top right of the notification won't be shown */\n @Prop({ reflect: true }) disableClose: boolean;\n\n /** If true, the notification icon won't be shown */\n @Prop({ reflect: true }) hideIcon: boolean;\n\n /** If true, the notification will be shown */\n @Prop({ reflect: true, mutable: true }) open: boolean;\n\n /** The length of time, in milliseconds, after which the notification will close itself. Only valid if `autoDismiss=\"true\"` */\n @Prop({ reflect: true }) time: number = 3000;\n\n /** Type of Notification */\n @Prop({ reflect: true }) type: TNotificationType = 'info';\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.autoDismiss && this.open)) return;\n this.autoDismissDebounce();\n }\n\n @Watch('type')\n checkPropValues() {\n validatePropValue(NOTIFICATION_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 notification is hidden */\n @Event() bqHide!: EventEmitter;\n\n /** Callback handler to be called when the notification is shown */\n @Event() bqShow!: EventEmitter;\n\n /** Callback handler to be called after the notification has been opened */\n @Event() bqAfterOpen!: EventEmitter;\n\n /** Callback handler to be called after the notification has been closed */\n @Event() bqAfterClose!: EventEmitter;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n connectedCallback() {\n const { notificationPortal } = this;\n if (!notificationPortal && typeof window !== 'undefined') {\n this.notificationPortal = Object.assign(document.createElement('div'), {\n className: NOTIFICATION_PORTAL_SELECTOR,\n });\n }\n }\n\n componentWillLoad() {\n this.checkPropValues();\n this.handleTimeout();\n }\n\n // Listeners\n // ==============\n\n @Listen('bqAfterClose')\n afterNotificationClose() {\n try {\n const { notificationPortal } = this;\n notificationPortal.removeChild(this.el);\n // Remove the notification portal from the DOM when there are no more notifications\n if (notificationPortal.querySelector(this.el.tagName.toLowerCase()) === null) {\n notificationPortal.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 hide the notification component */\n @Method()\n async hide(): Promise<void> {\n await this.handleHide();\n }\n\n /** Method to be called to show the notification component */\n @Method()\n async show(): Promise<void> {\n await this.handleShow();\n }\n\n /** This method can be used to display notifications in a fixed-position element that allows for stacking multiple notifications vertically */\n @Method()\n async toast() {\n const { notificationPortal } = this;\n if (notificationPortal?.parentElement === null) {\n document.body.append(notificationPortal);\n }\n\n notificationPortal?.appendChild(this.el);\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 handleHide = async () => {\n const ev = this.bqHide.emit(this.el);\n if (!ev.defaultPrevented) {\n await leave(this.notificationElem);\n this.open = false;\n this.handleTransitionEnd();\n }\n };\n\n private handleShow = async () => {\n const ev = this.bqShow.emit(this.el);\n if (!ev.defaultPrevented) {\n this.open = true;\n await enter(this.notificationElem);\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);\n };\n\n private handleFooterSlotChange = () => {\n this.hasFooter = hasSlotContent(this.footerElem, 'footer');\n };\n\n private get iconName(): string {\n const typeMap = {\n error: 'x-circle',\n success: 'check-circle',\n warning: 'warning-circle',\n };\n\n return typeMap[this.type] || 'info';\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n const style = {\n ...(this.border && { '--bq-notification--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=\"alert\"\n >\n <div\n class=\"bq-notification\"\n data-transition-enter=\"transform transition ease-out duration-300\"\n data-transition-enter-start=\"translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s\"\n data-transition-enter-end=\"translate-y-0 opacity-100 sm:translate-x-0\"\n data-transition-leave=\"transform transition ease-in duration-100\"\n data-transition-leave-start=\"translate-y-0 opacity-100 sm:translate-x-0\"\n data-transition-leave-end=\"-translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s\"\n ref={(div) => (this.notificationElem = div)}\n part=\"wrapper\"\n >\n {/* CLOSE BUTTON */}\n {!this.disableClose && (\n <bq-button\n class=\"notification--close absolute inset-ie-5 [&::part(label)]:inline-flex\"\n appearance=\"text\"\n size=\"small\"\n onClick={() => this.hide()}\n part=\"btn-close\"\n >\n <slot name=\"btn-close\">\n <bq-icon name=\"x\" />\n </slot>\n </bq-button>\n )}\n {/* ICON */}\n <div\n class={{\n '!hidden': this.hideIcon,\n [`color-${this.type}`]: true, // The icon color will be based on the type (info, success, warning, error)\n 'notification--icon me-xs flex text-left align-top': true,\n }}\n part=\"icon-outline\"\n >\n <slot name=\"icon\">\n <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-notification--content-footer-gap]\" part=\"main\">\n <div class=\"flex flex-col gap-[--bq-notification--title-body-gap]\" part=\"content\">\n {/* TITLE */}\n <div class=\"title-font font-semibold leading-regular\" part=\"title\">\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"]}