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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (633) hide show
  1. package/dist/beeq/beeq.css +1 -1
  2. package/dist/beeq/beeq.esm.js +1 -1
  3. package/dist/beeq/beeq.esm.js.map +1 -1
  4. package/dist/beeq/bq-accordion-group.entry.esm.js.map +1 -1
  5. package/dist/beeq/bq-accordion.entry.esm.js.map +1 -1
  6. package/dist/beeq/bq-alert.entry.esm.js.map +1 -1
  7. package/dist/beeq/bq-avatar.entry.esm.js.map +1 -1
  8. package/dist/beeq/bq-badge.entry.esm.js.map +1 -1
  9. package/dist/beeq/bq-breadcrumb-item.entry.esm.js.map +1 -1
  10. package/dist/beeq/bq-breadcrumb.entry.esm.js.map +1 -1
  11. package/dist/beeq/bq-button.bq-icon.entry.esm.js.map +1 -1
  12. package/dist/beeq/bq-card.entry.esm.js.map +1 -1
  13. package/dist/beeq/bq-checkbox.entry.esm.js.map +1 -1
  14. package/dist/beeq/bq-date-picker.entry.esm.js.map +1 -1
  15. package/dist/beeq/bq-dialog.entry.esm.js.map +1 -1
  16. package/dist/beeq/bq-divider.entry.esm.js.map +1 -1
  17. package/dist/beeq/bq-drawer.entry.esm.js.map +1 -1
  18. package/dist/beeq/bq-dropdown.bq-panel.entry.esm.js.map +1 -1
  19. package/dist/beeq/bq-empty-state.entry.esm.js.map +1 -1
  20. package/dist/beeq/bq-input.entry.esm.js.map +1 -1
  21. package/dist/beeq/bq-notification.entry.esm.js.map +1 -1
  22. package/dist/beeq/bq-option-group.entry.esm.js.map +1 -1
  23. package/dist/beeq/bq-option-list.bq-tag.entry.esm.js.map +1 -1
  24. package/dist/beeq/bq-option.entry.esm.js.map +1 -1
  25. package/dist/beeq/bq-page-title.entry.esm.js.map +1 -1
  26. package/dist/beeq/bq-progress.entry.esm.js.map +1 -1
  27. package/dist/beeq/bq-radio-group.entry.esm.js.map +1 -1
  28. package/dist/beeq/bq-radio.entry.esm.js.map +1 -1
  29. package/dist/beeq/bq-select.entry.esm.js.map +1 -1
  30. package/dist/beeq/bq-side-menu-item.entry.esm.js.map +1 -1
  31. package/dist/beeq/bq-side-menu.entry.esm.js.map +1 -1
  32. package/dist/beeq/bq-slider.entry.esm.js.map +1 -1
  33. package/dist/beeq/bq-spinner.entry.esm.js.map +1 -1
  34. package/dist/beeq/bq-status.entry.esm.js.map +1 -1
  35. package/dist/beeq/bq-step-item.entry.esm.js.map +1 -1
  36. package/dist/beeq/bq-steps.entry.esm.js.map +1 -1
  37. package/dist/beeq/bq-switch.entry.esm.js.map +1 -1
  38. package/dist/beeq/bq-tab-group.entry.esm.js.map +1 -1
  39. package/dist/beeq/bq-tab.entry.esm.js.map +1 -1
  40. package/dist/beeq/bq-textarea.entry.esm.js.map +1 -1
  41. package/dist/beeq/bq-toast.entry.esm.js.map +1 -1
  42. package/dist/beeq/bq-tooltip.entry.esm.js.map +1 -1
  43. package/dist/beeq/index.esm.js +1 -1
  44. package/dist/beeq/p-00f6ab04.entry.js +6 -0
  45. package/dist/beeq/{p-e8435655.entry.js.map → p-00f6ab04.entry.js.map} +1 -1
  46. package/dist/beeq/p-01d832d0.entry.js +6 -0
  47. package/dist/beeq/{p-ed10c8bf.entry.js.map → p-01d832d0.entry.js.map} +1 -1
  48. package/dist/beeq/p-0bf9984d.entry.js +6 -0
  49. package/dist/beeq/{p-e91d1052.entry.js.map → p-0bf9984d.entry.js.map} +1 -1
  50. package/dist/beeq/p-12249759.entry.js +6 -0
  51. package/dist/beeq/{p-ab352f43.entry.js.map → p-12249759.entry.js.map} +1 -1
  52. package/dist/beeq/p-1a19b5fa.entry.js +6 -0
  53. package/dist/beeq/{p-3f7193fb.entry.js.map → p-1a19b5fa.entry.js.map} +1 -1
  54. package/dist/beeq/p-1cd5bf89.entry.js +6 -0
  55. package/dist/beeq/p-1cd5bf89.entry.js.map +1 -0
  56. package/dist/beeq/p-3464beb1.entry.js +6 -0
  57. package/dist/beeq/{p-4f24e77c.entry.js.map → p-3464beb1.entry.js.map} +1 -1
  58. package/dist/beeq/p-38b70ecf.entry.js +6 -0
  59. package/dist/beeq/{p-4c4201e1.entry.js.map → p-38b70ecf.entry.js.map} +1 -1
  60. package/dist/beeq/p-3bac8fc4.entry.js +6 -0
  61. package/dist/beeq/{p-f9734e66.entry.js.map → p-3bac8fc4.entry.js.map} +1 -1
  62. package/dist/beeq/p-4a29e2d0.entry.js +6 -0
  63. package/dist/beeq/{p-a6d2ceb4.entry.js.map → p-4a29e2d0.entry.js.map} +1 -1
  64. package/dist/beeq/p-4a3d974a.entry.js +6 -0
  65. package/dist/beeq/{p-078d8f91.entry.js.map → p-4a3d974a.entry.js.map} +1 -1
  66. package/dist/beeq/p-4aa72d5a.entry.js +6 -0
  67. package/dist/beeq/p-4aa72d5a.entry.js.map +1 -0
  68. package/dist/beeq/p-50b2fd06.entry.js +6 -0
  69. package/dist/beeq/{p-c3f20d0e.entry.js.map → p-50b2fd06.entry.js.map} +1 -1
  70. package/dist/beeq/p-55017e05.entry.js +6 -0
  71. package/dist/beeq/{p-20d9b09b.entry.js.map → p-55017e05.entry.js.map} +1 -1
  72. package/dist/beeq/p-58541f26.entry.js +6 -0
  73. package/dist/beeq/{p-2219f451.entry.js.map → p-58541f26.entry.js.map} +1 -1
  74. package/dist/beeq/p-5b5442ce.entry.js +6 -0
  75. package/dist/beeq/{p-6bcae73b.entry.js.map → p-5b5442ce.entry.js.map} +1 -1
  76. package/dist/beeq/p-622b9249.entry.js +6 -0
  77. package/dist/beeq/{p-80916524.entry.js.map → p-622b9249.entry.js.map} +1 -1
  78. package/dist/beeq/p-74daa290.entry.js +6 -0
  79. package/dist/beeq/{p-0949ff39.entry.js.map → p-74daa290.entry.js.map} +1 -1
  80. package/dist/beeq/p-7eb5259f.entry.js +6 -0
  81. package/dist/beeq/{p-189629c7.entry.js.map → p-7eb5259f.entry.js.map} +1 -1
  82. package/dist/beeq/p-9573c018.entry.js +6 -0
  83. package/dist/beeq/{p-49bda6bc.entry.js.map → p-9573c018.entry.js.map} +1 -1
  84. package/dist/beeq/p-968a4833.entry.js +6 -0
  85. package/dist/beeq/{p-bf7a0a2d.entry.js.map → p-968a4833.entry.js.map} +1 -1
  86. package/dist/beeq/{p-4iHDua0i.js → p-BsSDkLU5.js} +1 -1
  87. package/dist/beeq/p-BsSDkLU5.js.map +1 -0
  88. package/dist/beeq/p-BtpBVYE0.js +6 -0
  89. package/dist/beeq/p-BtpBVYE0.js.map +1 -0
  90. package/dist/beeq/p-C4jSqdYP.js +7 -0
  91. package/dist/beeq/p-C4jSqdYP.js.map +1 -0
  92. package/dist/beeq/p-a1ad0e09.entry.js +6 -0
  93. package/dist/beeq/{p-604a001b.entry.js.map → p-a1ad0e09.entry.js.map} +1 -1
  94. package/dist/beeq/p-a8c20aaf.entry.js +6 -0
  95. package/dist/beeq/p-a8c20aaf.entry.js.map +1 -0
  96. package/dist/beeq/p-a9070048.entry.js +6 -0
  97. package/dist/beeq/{p-98333265.entry.js.map → p-a9070048.entry.js.map} +1 -1
  98. package/dist/beeq/p-ad869f7e.entry.js +6 -0
  99. package/dist/beeq/p-ad869f7e.entry.js.map +1 -0
  100. package/dist/beeq/p-afb356b4.entry.js +6 -0
  101. package/dist/beeq/{p-90947d6b.entry.js.map → p-afb356b4.entry.js.map} +1 -1
  102. package/dist/beeq/p-b3f103da.entry.js +6 -0
  103. package/dist/beeq/{p-912955f0.entry.js.map → p-b3f103da.entry.js.map} +1 -1
  104. package/dist/beeq/p-bb038cc5.entry.js +6 -0
  105. package/dist/beeq/{p-af445f7e.entry.js.map → p-bb038cc5.entry.js.map} +1 -1
  106. package/dist/beeq/p-c00bcbe6.entry.js +6 -0
  107. package/dist/beeq/{p-a489f10f.entry.js.map → p-c00bcbe6.entry.js.map} +1 -1
  108. package/dist/beeq/p-c110a7ea.entry.js +6 -0
  109. package/dist/beeq/{p-f683e400.entry.js.map → p-c110a7ea.entry.js.map} +1 -1
  110. package/dist/beeq/p-c5b7bad2.entry.js +6 -0
  111. package/dist/beeq/{p-4623461e.entry.js.map → p-c5b7bad2.entry.js.map} +1 -1
  112. package/dist/beeq/p-cb1ec3ac.entry.js +6 -0
  113. package/dist/beeq/p-cb1ec3ac.entry.js.map +1 -0
  114. package/dist/beeq/p-d4b0dcda.entry.js +6 -0
  115. package/dist/beeq/{p-50f9e2c0.entry.js.map → p-d4b0dcda.entry.js.map} +1 -1
  116. package/dist/beeq/p-d58133b8.entry.js +6 -0
  117. package/dist/beeq/{p-3fa6805d.entry.js.map → p-d58133b8.entry.js.map} +1 -1
  118. package/dist/beeq/p-d88394b9.entry.js +6 -0
  119. package/dist/beeq/p-d88394b9.entry.js.map +1 -0
  120. package/dist/beeq/p-e2b24948.entry.js +6 -0
  121. package/dist/beeq/{p-d4b529aa.entry.js.map → p-e2b24948.entry.js.map} +1 -1
  122. package/dist/beeq/p-ea1244cc.entry.js +6 -0
  123. package/dist/beeq/p-ea1244cc.entry.js.map +1 -0
  124. package/dist/beeq/p-f738ef10.entry.js +6 -0
  125. package/dist/beeq/{p-6e7734bb.entry.js.map → p-f738ef10.entry.js.map} +1 -1
  126. package/dist/beeq/p-fc2f0022.entry.js +6 -0
  127. package/dist/beeq/p-fc2f0022.entry.js.map +1 -0
  128. package/dist/beeq.html-custom-data.json +397 -396
  129. package/dist/cjs/beeq.cjs.js +3 -3
  130. package/dist/cjs/beeq.cjs.js.map +1 -1
  131. package/dist/cjs/bq-accordion-group.cjs.entry.js +2 -2
  132. package/dist/cjs/bq-accordion-group.cjs.entry.js.map +1 -1
  133. package/dist/cjs/bq-accordion-group.entry.cjs.js.map +1 -1
  134. package/dist/cjs/bq-accordion.cjs.entry.js +8 -5
  135. package/dist/cjs/bq-accordion.cjs.entry.js.map +1 -1
  136. package/dist/cjs/bq-accordion.entry.cjs.js.map +1 -1
  137. package/dist/cjs/bq-alert.cjs.entry.js +3 -3
  138. package/dist/cjs/bq-alert.cjs.entry.js.map +1 -1
  139. package/dist/cjs/bq-alert.entry.cjs.js.map +1 -1
  140. package/dist/cjs/bq-avatar.cjs.entry.js +4 -4
  141. package/dist/cjs/bq-avatar.cjs.entry.js.map +1 -1
  142. package/dist/cjs/bq-avatar.entry.cjs.js.map +1 -1
  143. package/dist/cjs/bq-badge.cjs.entry.js +6 -6
  144. package/dist/cjs/bq-badge.cjs.entry.js.map +1 -1
  145. package/dist/cjs/bq-badge.entry.cjs.js.map +1 -1
  146. package/dist/cjs/bq-breadcrumb-item.cjs.entry.js +2 -2
  147. package/dist/cjs/bq-breadcrumb-item.cjs.entry.js.map +1 -1
  148. package/dist/cjs/bq-breadcrumb-item.entry.cjs.js.map +1 -1
  149. package/dist/cjs/bq-breadcrumb.cjs.entry.js +2 -2
  150. package/dist/cjs/bq-breadcrumb.cjs.entry.js.map +1 -1
  151. package/dist/cjs/bq-breadcrumb.entry.cjs.js.map +1 -1
  152. package/dist/cjs/bq-button.bq-icon.entry.cjs.js.map +1 -1
  153. package/dist/cjs/bq-button_2.cjs.entry.js +26 -22
  154. package/dist/cjs/bq-button_2.cjs.entry.js.map +1 -1
  155. package/dist/cjs/bq-card.cjs.entry.js +4 -4
  156. package/dist/cjs/bq-card.cjs.entry.js.map +1 -1
  157. package/dist/cjs/bq-card.entry.cjs.js.map +1 -1
  158. package/dist/cjs/bq-checkbox.cjs.entry.js +2 -2
  159. package/dist/cjs/bq-checkbox.cjs.entry.js.map +1 -1
  160. package/dist/cjs/bq-checkbox.entry.cjs.js.map +1 -1
  161. package/dist/cjs/bq-date-picker.cjs.entry.js +3 -3
  162. package/dist/cjs/bq-date-picker.cjs.entry.js.map +1 -1
  163. package/dist/cjs/bq-date-picker.entry.cjs.js.map +1 -1
  164. package/dist/cjs/bq-dialog.cjs.entry.js +2 -2
  165. package/dist/cjs/bq-dialog.cjs.entry.js.map +1 -1
  166. package/dist/cjs/bq-dialog.entry.cjs.js.map +1 -1
  167. package/dist/cjs/bq-divider.cjs.entry.js +2 -2
  168. package/dist/cjs/bq-divider.cjs.entry.js.map +1 -1
  169. package/dist/cjs/bq-divider.entry.cjs.js.map +1 -1
  170. package/dist/cjs/bq-drawer.cjs.entry.js +6 -6
  171. package/dist/cjs/bq-drawer.cjs.entry.js.map +1 -1
  172. package/dist/cjs/bq-drawer.entry.cjs.js.map +1 -1
  173. package/dist/cjs/bq-dropdown.bq-panel.entry.cjs.js.map +1 -1
  174. package/dist/cjs/bq-dropdown_2.cjs.entry.js +4 -4
  175. package/dist/cjs/bq-dropdown_2.cjs.entry.js.map +1 -1
  176. package/dist/cjs/bq-empty-state.cjs.entry.js +2 -2
  177. package/dist/cjs/bq-empty-state.cjs.entry.js.map +1 -1
  178. package/dist/cjs/bq-empty-state.entry.cjs.js.map +1 -1
  179. package/dist/cjs/bq-input.cjs.entry.js +2 -2
  180. package/dist/cjs/bq-input.cjs.entry.js.map +1 -1
  181. package/dist/cjs/bq-input.entry.cjs.js.map +1 -1
  182. package/dist/cjs/bq-notification.cjs.entry.js +2 -2
  183. package/dist/cjs/bq-notification.cjs.entry.js.map +1 -1
  184. package/dist/cjs/bq-notification.entry.cjs.js.map +1 -1
  185. package/dist/cjs/bq-option-group.cjs.entry.js +2 -2
  186. package/dist/cjs/bq-option-group.cjs.entry.js.map +1 -1
  187. package/dist/cjs/bq-option-group.entry.cjs.js.map +1 -1
  188. package/dist/cjs/bq-option-list.bq-tag.entry.cjs.js.map +1 -1
  189. package/dist/cjs/bq-option-list_2.cjs.entry.js +6 -6
  190. package/dist/cjs/bq-option-list_2.cjs.entry.js.map +1 -1
  191. package/dist/cjs/bq-option.cjs.entry.js +2 -2
  192. package/dist/cjs/bq-option.cjs.entry.js.map +1 -1
  193. package/dist/cjs/bq-option.entry.cjs.js.map +1 -1
  194. package/dist/cjs/bq-page-title.cjs.entry.js +4 -4
  195. package/dist/cjs/bq-page-title.cjs.entry.js.map +1 -1
  196. package/dist/cjs/bq-page-title.entry.cjs.js.map +1 -1
  197. package/dist/cjs/bq-progress.cjs.entry.js +5 -5
  198. package/dist/cjs/bq-progress.cjs.entry.js.map +1 -1
  199. package/dist/cjs/bq-progress.entry.cjs.js.map +1 -1
  200. package/dist/cjs/bq-radio-group.cjs.entry.js +209 -102
  201. package/dist/cjs/bq-radio-group.cjs.entry.js.map +1 -1
  202. package/dist/cjs/bq-radio-group.entry.cjs.js.map +1 -1
  203. package/dist/cjs/bq-radio.cjs.entry.js +24 -15
  204. package/dist/cjs/bq-radio.cjs.entry.js.map +1 -1
  205. package/dist/cjs/bq-radio.entry.cjs.js.map +1 -1
  206. package/dist/cjs/bq-select.cjs.entry.js +2 -2
  207. package/dist/cjs/bq-select.cjs.entry.js.map +1 -1
  208. package/dist/cjs/bq-select.entry.cjs.js.map +1 -1
  209. package/dist/cjs/bq-side-menu-item.cjs.entry.js +6 -6
  210. package/dist/cjs/bq-side-menu-item.cjs.entry.js.map +1 -1
  211. package/dist/cjs/bq-side-menu-item.entry.cjs.js.map +1 -1
  212. package/dist/cjs/bq-side-menu.cjs.entry.js +4 -4
  213. package/dist/cjs/bq-side-menu.cjs.entry.js.map +1 -1
  214. package/dist/cjs/bq-side-menu.entry.cjs.js.map +1 -1
  215. package/dist/cjs/bq-slider.cjs.entry.js +7 -5
  216. package/dist/cjs/bq-slider.cjs.entry.js.map +1 -1
  217. package/dist/cjs/bq-slider.entry.cjs.js.map +1 -1
  218. package/dist/cjs/bq-spinner.cjs.entry.js +6 -6
  219. package/dist/cjs/bq-spinner.cjs.entry.js.map +1 -1
  220. package/dist/cjs/bq-spinner.entry.cjs.js.map +1 -1
  221. package/dist/cjs/bq-status.cjs.entry.js +3 -3
  222. package/dist/cjs/bq-status.cjs.entry.js.map +1 -1
  223. package/dist/cjs/bq-status.entry.cjs.js.map +1 -1
  224. package/dist/cjs/bq-step-item.cjs.entry.js +39 -16
  225. package/dist/cjs/bq-step-item.cjs.entry.js.map +1 -1
  226. package/dist/cjs/bq-step-item.entry.cjs.js.map +1 -1
  227. package/dist/cjs/bq-steps.cjs.entry.js +18 -7
  228. package/dist/cjs/bq-steps.cjs.entry.js.map +1 -1
  229. package/dist/cjs/bq-steps.entry.cjs.js.map +1 -1
  230. package/dist/cjs/bq-switch.cjs.entry.js +4 -4
  231. package/dist/cjs/bq-switch.cjs.entry.js.map +1 -1
  232. package/dist/cjs/bq-switch.entry.cjs.js.map +1 -1
  233. package/dist/cjs/bq-tab-group.cjs.entry.js +6 -6
  234. package/dist/cjs/bq-tab-group.cjs.entry.js.map +1 -1
  235. package/dist/cjs/bq-tab-group.entry.cjs.js.map +1 -1
  236. package/dist/cjs/bq-tab.cjs.entry.js +4 -4
  237. package/dist/cjs/bq-tab.cjs.entry.js.map +1 -1
  238. package/dist/cjs/bq-tab.entry.cjs.js.map +1 -1
  239. package/dist/cjs/bq-textarea.cjs.entry.js +5 -5
  240. package/dist/cjs/bq-textarea.cjs.entry.js.map +1 -1
  241. package/dist/cjs/bq-textarea.entry.cjs.js.map +1 -1
  242. package/dist/cjs/bq-toast.cjs.entry.js +3 -3
  243. package/dist/cjs/bq-toast.cjs.entry.js.map +1 -1
  244. package/dist/cjs/bq-toast.entry.cjs.js.map +1 -1
  245. package/dist/cjs/bq-tooltip.cjs.entry.js +4 -4
  246. package/dist/cjs/bq-tooltip.cjs.entry.js.map +1 -1
  247. package/dist/cjs/bq-tooltip.entry.cjs.js.map +1 -1
  248. package/dist/cjs/{getNextElement-B5h_gmRG.js → getNextElement-Bcdj4jIn.js} +4 -4
  249. package/dist/cjs/getNextElement-Bcdj4jIn.js.map +1 -0
  250. package/dist/cjs/{index-bEOoX8tm.js → index-BKXwzJHW.js} +545 -168
  251. package/dist/cjs/index-BKXwzJHW.js.map +1 -0
  252. package/dist/cjs/{index-CD2anR4A.js → index-BZ6JRHUg.js} +56 -32
  253. package/dist/cjs/index-BZ6JRHUg.js.map +1 -0
  254. package/dist/cjs/index.cjs.js +1 -1
  255. package/dist/cjs/loader.cjs.js +2 -2
  256. package/dist/collection/collection-manifest.json +1 -1
  257. package/dist/collection/components/accordion/bq-accordion.js +6 -3
  258. package/dist/collection/components/accordion/bq-accordion.js.map +1 -1
  259. package/dist/collection/components/accordion/scss/bq-accordion.css +1 -1
  260. package/dist/collection/components/accordion-group/scss/bq-accordion-group.css +1 -1
  261. package/dist/collection/components/alert/bq-alert.js +1 -1
  262. package/dist/collection/components/alert/bq-alert.js.map +1 -1
  263. package/dist/collection/components/alert/scss/bq-alert.css +1 -1
  264. package/dist/collection/components/avatar/bq-avatar.js +2 -2
  265. package/dist/collection/components/avatar/bq-avatar.js.map +1 -1
  266. package/dist/collection/components/avatar/scss/bq-avatar.css +1 -1
  267. package/dist/collection/components/badge/bq-badge.js +6 -8
  268. package/dist/collection/components/badge/bq-badge.js.map +1 -1
  269. package/dist/collection/components/badge/scss/bq-badge.css +1 -1
  270. package/dist/collection/components/breadcrumb/scss/bq-breadcrumb.css +1 -1
  271. package/dist/collection/components/breadcrumb-item/scss/bq-breadcrumb-item.css +1 -1
  272. package/dist/collection/components/button/scss/bq-button.css +1 -1
  273. package/dist/collection/components/card/bq-card.js +2 -2
  274. package/dist/collection/components/card/bq-card.js.map +1 -1
  275. package/dist/collection/components/card/scss/bq-card.css +1 -1
  276. package/dist/collection/components/checkbox/scss/bq-checkbox.css +1 -1
  277. package/dist/collection/components/date-picker/bq-date-picker.js +1 -1
  278. package/dist/collection/components/date-picker/bq-date-picker.js.map +1 -1
  279. package/dist/collection/components/date-picker/scss/bq-date-picker.css +1 -1
  280. package/dist/collection/components/dialog/scss/bq-dialog.css +1 -1
  281. package/dist/collection/components/divider/scss/bq-divider.css +1 -1
  282. package/dist/collection/components/drawer/bq-drawer.js +4 -4
  283. package/dist/collection/components/drawer/bq-drawer.js.map +1 -1
  284. package/dist/collection/components/drawer/scss/bq-drawer.css +1 -1
  285. package/dist/collection/components/dropdown/scss/bq-dropdown.css +1 -1
  286. package/dist/collection/components/empty-state/scss/bq-empty-state.css +1 -1
  287. package/dist/collection/components/icon/bq-icon.js +14 -9
  288. package/dist/collection/components/icon/bq-icon.js.map +1 -1
  289. package/dist/collection/components/icon/helper/request.js +9 -10
  290. package/dist/collection/components/icon/helper/request.js.map +1 -1
  291. package/dist/collection/components/icon/scss/bq-icon.css +1 -1
  292. package/dist/collection/components/input/scss/bq-input.css +1 -1
  293. package/dist/collection/components/notification/scss/bq-notification.css +1 -1
  294. package/dist/collection/components/option/scss/bq-option.css +1 -1
  295. package/dist/collection/components/option-group/scss/bq-option-group.css +1 -1
  296. package/dist/collection/components/option-list/scss/bq-option-list.css +1 -1
  297. package/dist/collection/components/page-title/bq-page-title.js +2 -2
  298. package/dist/collection/components/page-title/bq-page-title.js.map +1 -1
  299. package/dist/collection/components/page-title/scss/bq-page-title.css +1 -1
  300. package/dist/collection/components/panel/scss/bq-panel.css +1 -1
  301. package/dist/collection/components/progress/bq-progress.js +3 -3
  302. package/dist/collection/components/progress/bq-progress.js.map +1 -1
  303. package/dist/collection/components/progress/scss/bq-progress.css +1 -1
  304. package/dist/collection/components/radio/bq-radio.js +61 -28
  305. package/dist/collection/components/radio/bq-radio.js.map +1 -1
  306. package/dist/collection/components/radio/scss/bq-radio.css +1 -1
  307. package/dist/collection/components/radio-group/bq-radio-group.js +220 -115
  308. package/dist/collection/components/radio-group/bq-radio-group.js.map +1 -1
  309. package/dist/collection/components/radio-group/scss/bq-radio-group.css +1 -1
  310. package/dist/collection/components/select/scss/bq-select.css +1 -1
  311. package/dist/collection/components/side-menu/bq-side-menu.js +2 -2
  312. package/dist/collection/components/side-menu/scss/bq-side-menu.css +1 -1
  313. package/dist/collection/components/side-menu-item/bq-side-menu-item.js +7 -10
  314. package/dist/collection/components/side-menu-item/bq-side-menu-item.js.map +1 -1
  315. package/dist/collection/components/side-menu-item/scss/bq-side-menu-item.css +1 -1
  316. package/dist/collection/components/slider/bq-slider.js +5 -3
  317. package/dist/collection/components/slider/bq-slider.js.map +1 -1
  318. package/dist/collection/components/slider/scss/bq-slider.css +1 -1
  319. package/dist/collection/components/spinner/bq-spinner.js +4 -4
  320. package/dist/collection/components/spinner/scss/bq-spinner.css +1 -1
  321. package/dist/collection/components/status/bq-status.js +1 -1
  322. package/dist/collection/components/status/scss/bq-status.css +1 -1
  323. package/dist/collection/components/step-item/bq-step-item.js +79 -18
  324. package/dist/collection/components/step-item/bq-step-item.js.map +1 -1
  325. package/dist/collection/components/step-item/scss/bq-step-item.css +1 -1
  326. package/dist/collection/components/steps/bq-steps.js +48 -5
  327. package/dist/collection/components/steps/bq-steps.js.map +1 -1
  328. package/dist/collection/components/steps/scss/bq-steps.css +1 -1
  329. package/dist/collection/components/switch/bq-switch.js +2 -2
  330. package/dist/collection/components/switch/scss/bq-switch.css +1 -1
  331. package/dist/collection/components/tab/bq-tab.js +2 -2
  332. package/dist/collection/components/tab/scss/bq-tab.css +1 -1
  333. package/dist/collection/components/tab-group/bq-tab-group.js +3 -3
  334. package/dist/collection/components/tab-group/scss/bq-tab-group.css +1 -1
  335. package/dist/collection/components/tag/bq-tag.js +3 -3
  336. package/dist/collection/components/tag/scss/bq-tag.css +1 -1
  337. package/dist/collection/components/textarea/bq-textarea.js +3 -3
  338. package/dist/collection/components/textarea/scss/bq-textarea.css +1 -1
  339. package/dist/collection/components/toast/bq-toast.js +1 -1
  340. package/dist/collection/components/toast/scss/bq-toast.css +1 -1
  341. package/dist/collection/components/tooltip/bq-tooltip.js +1 -1
  342. package/dist/collection/components/tooltip/scss/bq-tooltip.css +1 -1
  343. package/dist/collection/shared/test-utils/index.js +1 -0
  344. package/dist/collection/shared/test-utils/index.js.map +1 -1
  345. package/dist/collection/shared/test-utils/setProperties.js +10 -2
  346. package/dist/collection/shared/test-utils/setProperties.js.map +1 -1
  347. package/dist/collection/shared/test-utils/waitForSvgLoad.js +61 -0
  348. package/dist/collection/shared/test-utils/waitForSvgLoad.js.map +1 -0
  349. package/dist/collection/shared/utils/getNextElement.js +2 -2
  350. package/dist/collection/shared/utils/getNextElement.js.map +1 -1
  351. package/dist/components/bq-accordion-group.js +1 -1
  352. package/dist/components/bq-accordion-group.js.map +1 -1
  353. package/dist/components/bq-accordion.js +1 -1
  354. package/dist/components/bq-accordion.js.map +1 -1
  355. package/dist/components/bq-alert.js +1 -1
  356. package/dist/components/bq-alert.js.map +1 -1
  357. package/dist/components/bq-avatar.js +1 -1
  358. package/dist/components/bq-avatar.js.map +1 -1
  359. package/dist/components/bq-badge.js +1 -1
  360. package/dist/components/bq-breadcrumb-item.js +1 -1
  361. package/dist/components/bq-breadcrumb-item.js.map +1 -1
  362. package/dist/components/bq-breadcrumb.js +1 -1
  363. package/dist/components/bq-breadcrumb.js.map +1 -1
  364. package/dist/components/bq-button.js +1 -1
  365. package/dist/components/bq-card.js +1 -1
  366. package/dist/components/bq-card.js.map +1 -1
  367. package/dist/components/bq-checkbox.js +1 -1
  368. package/dist/components/bq-checkbox.js.map +1 -1
  369. package/dist/components/bq-date-picker.js +1 -1
  370. package/dist/components/bq-date-picker.js.map +1 -1
  371. package/dist/components/bq-dialog.js +1 -1
  372. package/dist/components/bq-dialog.js.map +1 -1
  373. package/dist/components/bq-divider.js +1 -1
  374. package/dist/components/bq-drawer.js +1 -1
  375. package/dist/components/bq-drawer.js.map +1 -1
  376. package/dist/components/bq-dropdown.js +1 -1
  377. package/dist/components/bq-empty-state.js +1 -1
  378. package/dist/components/bq-empty-state.js.map +1 -1
  379. package/dist/components/bq-icon.js +1 -1
  380. package/dist/components/bq-input.js +1 -1
  381. package/dist/components/bq-input.js.map +1 -1
  382. package/dist/components/bq-notification.js +1 -1
  383. package/dist/components/bq-notification.js.map +1 -1
  384. package/dist/components/bq-option-group.js +1 -1
  385. package/dist/components/bq-option-group.js.map +1 -1
  386. package/dist/components/bq-option-list.js +1 -1
  387. package/dist/components/bq-option.js +1 -1
  388. package/dist/components/bq-option.js.map +1 -1
  389. package/dist/components/bq-page-title.js +1 -1
  390. package/dist/components/bq-page-title.js.map +1 -1
  391. package/dist/components/bq-panel.js +1 -1
  392. package/dist/components/bq-progress.js +1 -1
  393. package/dist/components/bq-progress.js.map +1 -1
  394. package/dist/components/bq-radio-group.js +1 -1
  395. package/dist/components/bq-radio-group.js.map +1 -1
  396. package/dist/components/bq-radio.js +1 -1
  397. package/dist/components/bq-radio.js.map +1 -1
  398. package/dist/components/bq-select.js +1 -1
  399. package/dist/components/bq-select.js.map +1 -1
  400. package/dist/components/bq-side-menu-item.js +1 -1
  401. package/dist/components/bq-side-menu-item.js.map +1 -1
  402. package/dist/components/bq-side-menu.js +1 -1
  403. package/dist/components/bq-side-menu.js.map +1 -1
  404. package/dist/components/bq-slider.js +1 -1
  405. package/dist/components/bq-slider.js.map +1 -1
  406. package/dist/components/bq-spinner.js +1 -1
  407. package/dist/components/bq-spinner.js.map +1 -1
  408. package/dist/components/bq-status.js +1 -1
  409. package/dist/components/bq-status.js.map +1 -1
  410. package/dist/components/bq-step-item.js +1 -1
  411. package/dist/components/bq-step-item.js.map +1 -1
  412. package/dist/components/bq-steps.js +1 -1
  413. package/dist/components/bq-steps.js.map +1 -1
  414. package/dist/components/bq-switch.js +1 -1
  415. package/dist/components/bq-switch.js.map +1 -1
  416. package/dist/components/bq-tab-group.js +1 -1
  417. package/dist/components/bq-tab-group.js.map +1 -1
  418. package/dist/components/bq-tab.js +1 -1
  419. package/dist/components/bq-tab.js.map +1 -1
  420. package/dist/components/bq-tag.js +1 -1
  421. package/dist/components/bq-textarea.js +1 -1
  422. package/dist/components/bq-textarea.js.map +1 -1
  423. package/dist/components/bq-toast.js +1 -1
  424. package/dist/components/bq-toast.js.map +1 -1
  425. package/dist/components/bq-tooltip.js +1 -1
  426. package/dist/components/index.js +1 -1
  427. package/dist/components/index.js.map +1 -1
  428. package/dist/components/p-9gvSRSmi.js +6 -0
  429. package/dist/components/{p-Cggonv2n.js.map → p-9gvSRSmi.js.map} +1 -1
  430. package/dist/components/p-B8eXbMij.js +6 -0
  431. package/dist/components/{p-DLp7W9zW.js.map → p-B8eXbMij.js.map} +1 -1
  432. package/dist/components/p-BUpGMEPS.js +6 -0
  433. package/dist/components/{p-DkiBVsAp.js.map → p-BUpGMEPS.js.map} +1 -1
  434. package/dist/components/p-BmdGoExW.js +6 -0
  435. package/dist/components/{p-UjIYbgCH.js.map → p-BmdGoExW.js.map} +1 -1
  436. package/dist/components/p-BrcJUBET.js +6 -0
  437. package/dist/components/{p-NQu7tItb.js.map → p-BrcJUBET.js.map} +1 -1
  438. package/dist/components/p-BsSDkLU5.js +6 -0
  439. package/dist/components/p-BsSDkLU5.js.map +1 -0
  440. package/dist/components/p-BtpBVYE0.js +6 -0
  441. package/dist/components/p-BtpBVYE0.js.map +1 -0
  442. package/dist/components/p-C63H4SKY.js +6 -0
  443. package/dist/components/{p-BV-P7QQT.js.map → p-C63H4SKY.js.map} +1 -1
  444. package/dist/components/p-DSDQV9S1.js +6 -0
  445. package/dist/components/p-DSDQV9S1.js.map +1 -0
  446. package/dist/components/p-DWg_PDHj.js +6 -0
  447. package/dist/components/{p-CBNE-LlA.js.map → p-DWg_PDHj.js.map} +1 -1
  448. package/dist/components/p-DZoizZde.js +6 -0
  449. package/dist/components/p-DZoizZde.js.map +1 -0
  450. package/dist/components/p-DdRiQ0rm.js +6 -0
  451. package/dist/components/{p-CzunKNKG.js.map → p-DdRiQ0rm.js.map} +1 -1
  452. package/dist/custom-elements.json +4822 -4715
  453. package/dist/esm/beeq.js +4 -4
  454. package/dist/esm/beeq.js.map +1 -1
  455. package/dist/esm/bq-accordion-group.entry.js +2 -2
  456. package/dist/esm/bq-accordion-group.entry.js.map +1 -1
  457. package/dist/esm/bq-accordion.entry.js +8 -5
  458. package/dist/esm/bq-accordion.entry.js.map +1 -1
  459. package/dist/esm/bq-alert.entry.js +3 -3
  460. package/dist/esm/bq-alert.entry.js.map +1 -1
  461. package/dist/esm/bq-avatar.entry.js +4 -4
  462. package/dist/esm/bq-avatar.entry.js.map +1 -1
  463. package/dist/esm/bq-badge.entry.js +6 -6
  464. package/dist/esm/bq-badge.entry.js.map +1 -1
  465. package/dist/esm/bq-breadcrumb-item.entry.js +2 -2
  466. package/dist/esm/bq-breadcrumb-item.entry.js.map +1 -1
  467. package/dist/esm/bq-breadcrumb.entry.js +2 -2
  468. package/dist/esm/bq-breadcrumb.entry.js.map +1 -1
  469. package/dist/esm/bq-button.bq-icon.entry.js.map +1 -1
  470. package/dist/esm/bq-button_2.entry.js +26 -22
  471. package/dist/esm/bq-button_2.entry.js.map +1 -1
  472. package/dist/esm/bq-card.entry.js +4 -4
  473. package/dist/esm/bq-card.entry.js.map +1 -1
  474. package/dist/esm/bq-checkbox.entry.js +2 -2
  475. package/dist/esm/bq-checkbox.entry.js.map +1 -1
  476. package/dist/esm/bq-date-picker.entry.js +3 -3
  477. package/dist/esm/bq-date-picker.entry.js.map +1 -1
  478. package/dist/esm/bq-dialog.entry.js +2 -2
  479. package/dist/esm/bq-dialog.entry.js.map +1 -1
  480. package/dist/esm/bq-divider.entry.js +2 -2
  481. package/dist/esm/bq-divider.entry.js.map +1 -1
  482. package/dist/esm/bq-drawer.entry.js +6 -6
  483. package/dist/esm/bq-drawer.entry.js.map +1 -1
  484. package/dist/esm/bq-dropdown.bq-panel.entry.js.map +1 -1
  485. package/dist/esm/bq-dropdown_2.entry.js +4 -4
  486. package/dist/esm/bq-dropdown_2.entry.js.map +1 -1
  487. package/dist/esm/bq-empty-state.entry.js +2 -2
  488. package/dist/esm/bq-empty-state.entry.js.map +1 -1
  489. package/dist/esm/bq-input.entry.js +2 -2
  490. package/dist/esm/bq-input.entry.js.map +1 -1
  491. package/dist/esm/bq-notification.entry.js +2 -2
  492. package/dist/esm/bq-notification.entry.js.map +1 -1
  493. package/dist/esm/bq-option-group.entry.js +2 -2
  494. package/dist/esm/bq-option-group.entry.js.map +1 -1
  495. package/dist/esm/bq-option-list.bq-tag.entry.js.map +1 -1
  496. package/dist/esm/bq-option-list_2.entry.js +6 -6
  497. package/dist/esm/bq-option-list_2.entry.js.map +1 -1
  498. package/dist/esm/bq-option.entry.js +2 -2
  499. package/dist/esm/bq-option.entry.js.map +1 -1
  500. package/dist/esm/bq-page-title.entry.js +4 -4
  501. package/dist/esm/bq-page-title.entry.js.map +1 -1
  502. package/dist/esm/bq-progress.entry.js +5 -5
  503. package/dist/esm/bq-progress.entry.js.map +1 -1
  504. package/dist/esm/bq-radio-group.entry.js +206 -99
  505. package/dist/esm/bq-radio-group.entry.js.map +1 -1
  506. package/dist/esm/bq-radio.entry.js +24 -15
  507. package/dist/esm/bq-radio.entry.js.map +1 -1
  508. package/dist/esm/bq-select.entry.js +2 -2
  509. package/dist/esm/bq-select.entry.js.map +1 -1
  510. package/dist/esm/bq-side-menu-item.entry.js +6 -6
  511. package/dist/esm/bq-side-menu-item.entry.js.map +1 -1
  512. package/dist/esm/bq-side-menu.entry.js +4 -4
  513. package/dist/esm/bq-side-menu.entry.js.map +1 -1
  514. package/dist/esm/bq-slider.entry.js +7 -5
  515. package/dist/esm/bq-slider.entry.js.map +1 -1
  516. package/dist/esm/bq-spinner.entry.js +6 -6
  517. package/dist/esm/bq-spinner.entry.js.map +1 -1
  518. package/dist/esm/bq-status.entry.js +3 -3
  519. package/dist/esm/bq-status.entry.js.map +1 -1
  520. package/dist/esm/bq-step-item.entry.js +39 -16
  521. package/dist/esm/bq-step-item.entry.js.map +1 -1
  522. package/dist/esm/bq-steps.entry.js +18 -7
  523. package/dist/esm/bq-steps.entry.js.map +1 -1
  524. package/dist/esm/bq-switch.entry.js +4 -4
  525. package/dist/esm/bq-switch.entry.js.map +1 -1
  526. package/dist/esm/bq-tab-group.entry.js +6 -6
  527. package/dist/esm/bq-tab-group.entry.js.map +1 -1
  528. package/dist/esm/bq-tab.entry.js +4 -4
  529. package/dist/esm/bq-tab.entry.js.map +1 -1
  530. package/dist/esm/bq-textarea.entry.js +5 -5
  531. package/dist/esm/bq-textarea.entry.js.map +1 -1
  532. package/dist/esm/bq-toast.entry.js +3 -3
  533. package/dist/esm/bq-toast.entry.js.map +1 -1
  534. package/dist/esm/bq-tooltip.entry.js +4 -4
  535. package/dist/esm/bq-tooltip.entry.js.map +1 -1
  536. package/dist/esm/{getNextElement-4iHDua0i.js → getNextElement-BsSDkLU5.js} +4 -4
  537. package/dist/esm/getNextElement-BsSDkLU5.js.map +1 -0
  538. package/dist/esm/{index-DJ_hypV7.js → index-BtpBVYE0.js} +56 -32
  539. package/dist/esm/index-BtpBVYE0.js.map +1 -0
  540. package/dist/esm/{index-e5zjNNdI.js → index-C4jSqdYP.js} +546 -168
  541. package/dist/esm/index-C4jSqdYP.js.map +1 -0
  542. package/dist/esm/index.js +1 -1
  543. package/dist/esm/loader.js +3 -3
  544. package/dist/hydrate/index.js +815 -469
  545. package/dist/hydrate/index.mjs +815 -469
  546. package/dist/stencil.config.js +1 -0
  547. package/dist/stencil.config.js.map +1 -1
  548. package/dist/types/components/date-picker/bq-date-picker.d.ts +1 -1
  549. package/dist/types/components/icon/helper/request.d.ts +1 -1
  550. package/dist/types/components/radio/bq-radio.d.ts +15 -7
  551. package/dist/types/components/radio-group/bq-radio-group.d.ts +57 -16
  552. package/dist/types/components/side-menu-item/bq-side-menu-item.d.ts +2 -5
  553. package/dist/types/components/step-item/bq-step-item.d.ts +10 -6
  554. package/dist/types/components/steps/bq-steps.d.ts +5 -0
  555. package/dist/types/components.d.ts +42 -37
  556. package/dist/types/shared/test-utils/index.d.ts +1 -0
  557. package/dist/types/shared/test-utils/setProperties.d.ts +1 -1
  558. package/dist/types/shared/test-utils/waitForSvgLoad.d.ts +19 -0
  559. package/dist/types/shared/utils/getNextElement.d.ts +2 -2
  560. package/dist/types/stencil-public-runtime.d.ts +12 -5
  561. package/package.json +1 -1
  562. package/dist/beeq/p-078d8f91.entry.js +0 -6
  563. package/dist/beeq/p-0949ff39.entry.js +0 -6
  564. package/dist/beeq/p-189629c7.entry.js +0 -6
  565. package/dist/beeq/p-20d9b09b.entry.js +0 -6
  566. package/dist/beeq/p-2219f451.entry.js +0 -6
  567. package/dist/beeq/p-388876c1.entry.js +0 -6
  568. package/dist/beeq/p-388876c1.entry.js.map +0 -1
  569. package/dist/beeq/p-3c330710.entry.js +0 -6
  570. package/dist/beeq/p-3c330710.entry.js.map +0 -1
  571. package/dist/beeq/p-3f7193fb.entry.js +0 -6
  572. package/dist/beeq/p-3fa6805d.entry.js +0 -6
  573. package/dist/beeq/p-41744618.entry.js +0 -6
  574. package/dist/beeq/p-41744618.entry.js.map +0 -1
  575. package/dist/beeq/p-4623461e.entry.js +0 -6
  576. package/dist/beeq/p-49bda6bc.entry.js +0 -6
  577. package/dist/beeq/p-4c4201e1.entry.js +0 -6
  578. package/dist/beeq/p-4f24e77c.entry.js +0 -6
  579. package/dist/beeq/p-4iHDua0i.js.map +0 -1
  580. package/dist/beeq/p-50f9e2c0.entry.js +0 -6
  581. package/dist/beeq/p-5105d079.entry.js +0 -6
  582. package/dist/beeq/p-5105d079.entry.js.map +0 -1
  583. package/dist/beeq/p-604a001b.entry.js +0 -6
  584. package/dist/beeq/p-6bcae73b.entry.js +0 -6
  585. package/dist/beeq/p-6e7734bb.entry.js +0 -6
  586. package/dist/beeq/p-76ee57c6.entry.js +0 -6
  587. package/dist/beeq/p-76ee57c6.entry.js.map +0 -1
  588. package/dist/beeq/p-80916524.entry.js +0 -6
  589. package/dist/beeq/p-90947d6b.entry.js +0 -6
  590. package/dist/beeq/p-912955f0.entry.js +0 -6
  591. package/dist/beeq/p-98333265.entry.js +0 -6
  592. package/dist/beeq/p-987c0ab6.entry.js +0 -6
  593. package/dist/beeq/p-987c0ab6.entry.js.map +0 -1
  594. package/dist/beeq/p-DJ_hypV7.js +0 -6
  595. package/dist/beeq/p-DJ_hypV7.js.map +0 -1
  596. package/dist/beeq/p-a489f10f.entry.js +0 -6
  597. package/dist/beeq/p-a6d2ceb4.entry.js +0 -6
  598. package/dist/beeq/p-ab352f43.entry.js +0 -6
  599. package/dist/beeq/p-af445f7e.entry.js +0 -6
  600. package/dist/beeq/p-bf7a0a2d.entry.js +0 -6
  601. package/dist/beeq/p-c3f20d0e.entry.js +0 -6
  602. package/dist/beeq/p-c5fc822f.entry.js +0 -6
  603. package/dist/beeq/p-c5fc822f.entry.js.map +0 -1
  604. package/dist/beeq/p-d4b529aa.entry.js +0 -6
  605. package/dist/beeq/p-e5zjNNdI.js +0 -7
  606. package/dist/beeq/p-e5zjNNdI.js.map +0 -1
  607. package/dist/beeq/p-e8435655.entry.js +0 -6
  608. package/dist/beeq/p-e91d1052.entry.js +0 -6
  609. package/dist/beeq/p-ed10c8bf.entry.js +0 -6
  610. package/dist/beeq/p-ee31c3cb.entry.js +0 -6
  611. package/dist/beeq/p-ee31c3cb.entry.js.map +0 -1
  612. package/dist/beeq/p-f683e400.entry.js +0 -6
  613. package/dist/beeq/p-f9734e66.entry.js +0 -6
  614. package/dist/cjs/getNextElement-B5h_gmRG.js.map +0 -1
  615. package/dist/cjs/index-CD2anR4A.js.map +0 -1
  616. package/dist/cjs/index-bEOoX8tm.js.map +0 -1
  617. package/dist/components/p-9Z6M4Uap.js +0 -6
  618. package/dist/components/p-9Z6M4Uap.js.map +0 -1
  619. package/dist/components/p-BV-P7QQT.js +0 -6
  620. package/dist/components/p-CBNE-LlA.js +0 -6
  621. package/dist/components/p-Cggonv2n.js +0 -6
  622. package/dist/components/p-CzunKNKG.js +0 -6
  623. package/dist/components/p-DBkP6C_Q.js +0 -6
  624. package/dist/components/p-DBkP6C_Q.js.map +0 -1
  625. package/dist/components/p-DJ_hypV7.js +0 -6
  626. package/dist/components/p-DJ_hypV7.js.map +0 -1
  627. package/dist/components/p-DLp7W9zW.js +0 -6
  628. package/dist/components/p-DkiBVsAp.js +0 -6
  629. package/dist/components/p-NQu7tItb.js +0 -6
  630. package/dist/components/p-UjIYbgCH.js +0 -6
  631. package/dist/esm/getNextElement-4iHDua0i.js.map +0 -1
  632. package/dist/esm/index-DJ_hypV7.js.map +0 -1
  633. package/dist/esm/index-e5zjNNdI.js.map +0 -1
@@ -2,16 +2,23 @@
2
2
  * Built by Endavans
3
3
  * © https://beeq.design - Apache 2 License.
4
4
  */
5
- import { r as registerInstance, c as createEvent, a as getElement, h } from './index-e5zjNNdI.js';
5
+ import { r as registerInstance, c as createEvent, a as getElement, h, d as Host } from './index-C4jSqdYP.js';
6
6
  import { d as debounce } from './debounce-cjfQylgg.js';
7
- import { i as isHTMLElement } from './isHTMLElement-BxgDLPzX.js';
7
+ import { i as isEventTargetChildOfElement } from './event-Dx-CEPSQ.js';
8
+ import { g as getNextElement } from './getNextElement-BsSDkLU5.js';
8
9
  import { i as isNil } from './isNil-BcPwGxIn.js';
9
10
  import { v as validatePropValue } from './props-zh4P02Kn.js';
10
11
 
11
12
  const RADIO_GROUP_ORIENTATION = ['horizontal', 'vertical'];
12
13
 
13
- const bqRadioGroupCss = "::backdrop,:root{--bq-blue-100:#e7f0fd;--bq-blue-200:#d0e2fb;--bq-blue-300:#a1c5f7;--bq-blue-400:#73a8f3;--bq-blue-500:#448bef;--bq-blue-600:#156eeb;--bq-blue-700:#1158bc;--bq-blue-800:#0d428d;--bq-blue-900:#082c5e;--bq-blue-1000:#04162f;--bq-corai-100:#fff2f2;--bq-corai-200:#ffe6e6;--bq-corai-300:#ffccce;--bq-corai-400:#ffb3b5;--bq-corai-500:#ff999d;--bq-corai-600:#ff8084;--bq-corai-700:#cc666a;--bq-corai-800:#994d4f;--bq-corai-900:#663335;--bq-corai-1000:#331a1a;--bq-cyan-100:#e8f7fb;--bq-cyan-200:#d2f0f8;--bq-cyan-300:#a5e1f1;--bq-cyan-400:#78d1e9;--bq-cyan-500:#4bc2e2;--bq-cyan-600:#1eb3db;--bq-cyan-700:#188faf;--bq-cyan-800:#126b83;--bq-cyan-900:#0c4858;--bq-cyan-1000:#06242c;--bq-gold-100:#fbf4ec;--bq-gold-200:#f7e9da;--bq-gold-300:#f0d3b6;--bq-gold-400:#e8bc91;--bq-gold-500:#e1a66d;--bq-gold-600:#d99048;--bq-gold-700:#ae733a;--bq-gold-800:#82562b;--bq-gold-900:#573a1d;--bq-gold-1000:#2b1d0e;--bq-green-100:#e8f8ef;--bq-green-200:#d2f1e0;--bq-green-300:#a5e3c1;--bq-green-400:#78d5a1;--bq-green-500:#4bc782;--bq-green-600:#1eb963;--bq-green-700:#18944f;--bq-green-800:#126f3b;--bq-green-900:#0c4a28;--bq-green-1000:#062514;--bq-grey-100:#f1f2f4;--bq-grey-200:#e7e8eb;--bq-grey-300:#caccd2;--bq-grey-400:#a6aab3;--bq-grey-50:#f6f6f8;--bq-grey-500:#898e99;--bq-grey-600:#646a77;--bq-grey-700:#3f4350;--bq-grey-800:#2a2c35;--bq-grey-900:#1c1d23;--bq-grey-950:#15161a;--bq-grey-1000:#0d0e11;--bq-indigo-100:#edecfc;--bq-indigo-200:#dcdafa;--bq-indigo-300:#b9b5f5;--bq-indigo-400:#9590ef;--bq-indigo-500:#726bea;--bq-indigo-600:#4f46e5;--bq-indigo-700:#3f38b7;--bq-indigo-800:#2f2a89;--bq-indigo-900:#201c5c;--bq-indigo-1000:#100e2e;--bq-iris-100:#e9f0ff;--bq-iris-200:#d6e0ff;--bq-iris-300:#b2c0fe;--bq-iris-400:#8691f8;--bq-iris-500:#6061ee;--bq-iris-600:#4f46e5;--bq-iris-700:#413abd;--bq-iris-800:#332e95;--bq-iris-900:#26216d;--bq-iris-1000:#181545;--bq-lime-100:#f5fae8;--bq-lime-200:#ecf6d2;--bq-lime-300:#d9eda5;--bq-lime-400:#c5e379;--bq-lime-500:#b2da4c;--bq-lime-600:#9fd11f;--bq-lime-700:#7fa719;--bq-lime-800:#5f7d13;--bq-lime-900:#40540c;--bq-lime-1000:#202a06;--bq-magenta-100:#fce7f4;--bq-magenta-200:#f9cfea;--bq-magenta-300:#f39fd6;--bq-magenta-400:#ee6fbf;--bq-magenta-500:#e83fab;--bq-magenta-600:#de1395;--bq-magenta-700:#b20f77;--bq-magenta-800:#850c59;--bq-magenta-900:#58083c;--bq-magenta-1000:#2c041e;--bq-neutral-white:#fbfbfc;--bq-neutral-black:#060708;--bq-orange-100:#fbf0e9;--bq-orange-200:#f8e1d4;--bq-orange-300:#f1c2a8;--bq-orange-400:#eaa47d;--bq-orange-500:#e38551;--bq-orange-600:#dc6726;--bq-orange-700:#b0521e;--bq-orange-800:#843e17;--bq-orange-900:#58290f;--bq-orange-1000:#2c1508;--bq-purple-100:#efebf8;--bq-purple-200:#e0d7f2;--bq-purple-300:#c1afe5;--bq-purple-400:#a388d8;--bq-purple-500:#8460cb;--bq-purple-600:#6538be;--bq-purple-700:#512d98;--bq-purple-800:#3d2272;--bq-purple-900:#28164c;--bq-purple-1000:#140b26;--bq-red-100:#fce7ea;--bq-red-200:#f9d1d5;--bq-red-300:#f3a2ac;--bq-red-400:#ed7482;--bq-red-500:#e74559;--bq-red-600:#e1172f;--bq-red-700:#b41226;--bq-red-800:#870e1c;--bq-red-900:#5a0913;--bq-red-1000:#2d0509;--bq-sky-100:#eff4fb;--bq-sky-200:#dfeaf8;--bq-sky-300:#bfd5f1;--bq-sky-400:#9ec1e9;--bq-sky-500:#7eace2;--bq-sky-600:#5e97db;--bq-sky-700:#4b79af;--bq-sky-800:#385b83;--bq-sky-900:#263c58;--bq-sky-1000:#131e2c;--bq-teal-100:#e5f7f5;--bq-teal-200:#ccf0eb;--bq-teal-300:#99e1d8;--bq-teal-400:#66d2c4;--bq-teal-500:#33c3b1;--bq-teal-600:#00b49d;--bq-teal-700:#00907e;--bq-teal-800:#006c5e;--bq-teal-900:#00483f;--bq-teal-1000:#00241f;--bq-volcano-100:#feede7;--bq-volcano-200:#fddbd1;--bq-volcano-300:#fbb8a3;--bq-volcano-400:#fa9474;--bq-volcano-500:#f87146;--bq-volcano-600:#f64d18;--bq-volcano-700:#c53e13;--bq-volcano-800:#942e0e;--bq-volcano-900:#621f0a;--bq-volcano-1000:#310f05;--bq-yellow-100:#fefbe7;--bq-yellow-200:#fcf6d0;--bq-yellow-300:#faeea0;--bq-yellow-400:#f7e571;--bq-yellow-500:#f5dd41;--bq-yellow-600:#f2d412;--bq-yellow-700:#c2aa0e;--bq-yellow-800:#917f0b;--bq-yellow-900:#615507;--bq-yellow-1000:#302a04;--bq-endava-grey-50:#f7f7f8;--bq-endava-grey-100:#e4e6e7;--bq-endava-grey-200:#b5babe;--bq-endava-grey-300:#949ca1;--bq-endava-grey-400:#737d84;--bq-endava-grey-500:#525f67;--bq-endava-grey-600:#30404b;--bq-endava-grey-700:#2b3942;--bq-endava-grey-800:#263139;--bq-endava-grey-900:#192b37;--bq-endava-grey-950:#151b1e;--bq-endava-grey-1000:#0f1316;--bq-endava-neutral-white:#fafbfb;--bq-endava-neutral-black:#060708;--bq-endava-orange-100:#fef3f1;--bq-endava-orange-200:#fbd6d1;--bq-endava-orange-300:#fab7af;--bq-endava-orange-400:#fa988b;--bq-endava-orange-500:#fc7866;--bq-endava-orange-600:#ff5640;--bq-endava-orange-700:#ce4a39;--bq-endava-orange-800:#a03d30;--bq-endava-orange-900:#722e25;--bq-endava-orange-1000:#471e19}*,:after,:before{box-sizing:border-box}*{font:inherit;margin:0}ol[role=list],ul[role=list]{list-style-type:none}html{text-size-adjust:none;font-family:var(--bq-font-family);font-size:var(--bq-font-size--m)}html:focus-within{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bq-background--primary);color:var(--bq-text--primary);line-height:var(--bq-font-line-height--regular);min-height:100vb;text-rendering:optimizeSpeed}a:not([class]){text-decoration-skip-ink:auto}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto;transition-duration:.01ms!important}}:where(:root){--bq-white:#fff;--bq-black:#060708;--bq-neutral-50:var(--bq-grey-50);--bq-neutral-100:var(--bq-grey-100);--bq-neutral-200:var(--bq-grey-200);--bq-neutral-300:var(--bq-grey-300);--bq-neutral-400:var(--bq-grey-400);--bq-neutral-500:var(--bq-grey-500);--bq-neutral-600:var(--bq-grey-600);--bq-neutral-700:var(--bq-grey-700);--bq-neutral-800:var(--bq-grey-800);--bq-neutral-900:var(--bq-grey-900);--bq-neutral-950:var(--bq-grey-950);--bq-neutral-1000:var(--bq-grey-1000);--bq-brand-light:var(--bq-iris-100);--bq-brand:var(--bq-iris-600);--bq-brand-dark:var(--bq-iris-1000);--bq-accent-light:var(--bq-purple-100);--bq-accent:var(--bq-purple-600);--bq-accent-dark:var(--bq-purple-1000);--bq-success-light:var(--bq-teal-100);--bq-success:var(--bq-teal-600);--bq-success-dark:var(--bq-teal-1000);--bq-danger-light:var(--bq-red-100);--bq-danger:var(--bq-red-600);--bq-danger-dark:var(--bq-red-1000);--bq-warning-light:var(--bq-gold-100);--bq-warning:var(--bq-gold-600);--bq-warning-dark:var(--bq-gold-1000);--bq-info-light:var(--bq-iris-100);--bq-info:var(--bq-iris-600);--bq-info-dark:var(--bq-iris-1000);--bq-focus:var(--bq-iris-600);--bq-data-01:var(--bq-brand);--bq-data-02:var(--bq-purple-600);--bq-data-03:var(--bq-magenta-600);--bq-data-04:var(--bq-cyan-600);--bq-data-05:var(--bq-teal-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-yellow-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-blue-600);--bq-data-10:var(--bq-grey-600);--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white);--bq-radius--none:0;--bq-radius--xs2:0.125rem;--bq-radius--xs:0.25rem;--bq-radius--s:0.5rem;--bq-radius--m:0.75rem;--bq-radius--l:1.5rem;--bq-radius--full:9999px;--bq-box-shadow--xs:0 2px 0 rgba(0,0,0,.016);--bq-box-shadow--s:0 8px 24px rgba(0,0,0,.04);--bq-box-shadow--m:0 10px 48px -16px rgba(0,0,0,.12);--bq-box-shadow--l:0 20px 58px -16px rgba(0,0,0,.16);--bq-font-family:\"Outfit\",sans-serif;--bq-font-size--xs:0.75rem;--bq-font-size--s:0.875rem;--bq-font-size--m:1rem;--bq-font-size--l:1.125rem;--bq-font-size--xl:1.5rem;--bq-font-size--xxl:2rem;--bq-font-size--xxl2:2.5rem;--bq-font-size--xxl3:3rem;--bq-font-size--xxl4:3.5rem;--bq-font-size--xxl5:4rem;--bq-font-weight--thin:100;--bq-font-weight--light:300;--bq-font-weight--regular:400;--bq-font-weight--medium:500;--bq-font-weight--semibold:600;--bq-font-weight--bold:700;--bq-font-line-height--small:1.2;--bq-font-line-height--regular:1.5;--bq-font-line-height--large:1.5;--bq-spacing-xs3:0.125rem;--bq-spacing-xs2:0.25rem;--bq-spacing-xs:0.5rem;--bq-spacing-s:0.75rem;--bq-spacing-m:1rem;--bq-spacing-l:1.5rem;--bq-spacing-xl:2rem;--bq-spacing-xxl:2.5rem;--bq-spacing-xxl2:3.5rem;--bq-spacing-xxl3:4rem;--bq-spacing-xxl4:4.5rem;--bq-stroke-s:1px;--bq-stroke-m:2px;--bq-stroke-l:3px}.beeq.light,.light,[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}:where(.endava),:where([bq-theme=endava]){--bq-font-family:\"Poppins\",sans-serif;--bq-white:#fafbfb;--bq-black:#030406;--bq-neutral-50:var(--bq-endava-grey-50);--bq-neutral-100:var(--bq-endava-grey-100);--bq-neutral-200:var(--bq-endava-grey-200);--bq-neutral-300:var(--bq-endava-grey-300);--bq-neutral-400:var(--bq-endava-grey-400);--bq-neutral-500:var(--bq-endava-grey-500);--bq-neutral-600:var(--bq-endava-grey-600);--bq-neutral-700:var(--bq-endava-grey-700);--bq-neutral-800:var(--bq-endava-grey-800);--bq-neutral-900:var(--bq-endava-grey-900);--bq-neutral-950:var(--bq-endava-grey-950);--bq-neutral-1000:var(--bq-endava-grey-1000);--bq-brand-light:var(--bq-endava-orange-100);--bq-brand:var(--bq-endava-orange-600);--bq-brand-dark:var(--bq-endava-orange-1000);--bq-accent-light:var(--bq-endava-orange-100);--bq-accent:var(--bq-endava-orange-600);--bq-accent-dark:var(--bq-endava-orange-1000);--bq-success-light:var(--bq-green-100);--bq-success:var(--bq-green-600);--bq-success-dark:var(--bq-green-1000);--bq-danger-light:var(--bq-corai-100);--bq-danger:var(--bq-corai-600);--bq-danger-dark:var(--bq-corai-1000);--bq-warning-light:var(--bq-yellow-100);--bq-warning:var(--bq-yellow-600);--bq-warning-dark:var(--bq-yellow-1000);--bq-info-light:var(--bq-blue-100);--bq-info:var(--bq-blue-600);--bq-info-dark:var(--bq-blue-1000);--bq-focus:var(--bq-endava-orange-600);--bq-data-01:var(--bq-brand);--bq-data-02:#af0cd8;--bq-data-03:#0ca8d8;--bq-data-04:var(--bq-teal-600);--bq-data-05:var(--bq-yellow-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-blue-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-purple-600);--bq-data-10:#394b56;--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white)}.endava.light,[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}.inline-block{display:inline-block}.flex{display:flex}.flex-col{flex-direction:column}.border-0{border-width:0}.p-b-0{padding-block:0}.p-i-0{padding-inline:0}.m-b-0{margin-block:0}.m-i-0{margin-inline:0}@-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{display:inline-block}.bq-radio-group{margin-block:0;margin-inline:0}.bq-radio-group:not(.has-fieldset){border-width:0;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.bq-radio-group--horizontal{display:flex}.bq-radio-group--vertical{display:flex;flex-direction:column}.static{position:static}";
14
+ const bqRadioGroupCss = "::backdrop,:root{--bq-blue-100:#e7f0fd;--bq-blue-200:#d0e2fb;--bq-blue-300:#a1c5f7;--bq-blue-400:#73a8f3;--bq-blue-500:#448bef;--bq-blue-600:#156eeb;--bq-blue-700:#1158bc;--bq-blue-800:#0d428d;--bq-blue-900:#082c5e;--bq-blue-1000:#04162f;--bq-corai-100:#fff2f2;--bq-corai-200:#ffe6e6;--bq-corai-300:#ffccce;--bq-corai-400:#ffb3b5;--bq-corai-500:#ff999d;--bq-corai-600:#ff8084;--bq-corai-700:#cc666a;--bq-corai-800:#994d4f;--bq-corai-900:#663335;--bq-corai-1000:#331a1a;--bq-cyan-100:#e8f7fb;--bq-cyan-200:#d2f0f8;--bq-cyan-300:#a5e1f1;--bq-cyan-400:#78d1e9;--bq-cyan-500:#4bc2e2;--bq-cyan-600:#1eb3db;--bq-cyan-700:#188faf;--bq-cyan-800:#126b83;--bq-cyan-900:#0c4858;--bq-cyan-1000:#06242c;--bq-gold-100:#fbf4ec;--bq-gold-200:#f7e9da;--bq-gold-300:#f0d3b6;--bq-gold-400:#e8bc91;--bq-gold-500:#e1a66d;--bq-gold-600:#d99048;--bq-gold-700:#ae733a;--bq-gold-800:#82562b;--bq-gold-900:#573a1d;--bq-gold-1000:#2b1d0e;--bq-green-100:#e8f8ef;--bq-green-200:#d2f1e0;--bq-green-300:#a5e3c1;--bq-green-400:#78d5a1;--bq-green-500:#4bc782;--bq-green-600:#1eb963;--bq-green-700:#18944f;--bq-green-800:#126f3b;--bq-green-900:#0c4a28;--bq-green-1000:#062514;--bq-grey-100:#f1f2f4;--bq-grey-200:#e7e8eb;--bq-grey-300:#caccd2;--bq-grey-400:#a6aab3;--bq-grey-50:#f6f6f8;--bq-grey-500:#898e99;--bq-grey-600:#646a77;--bq-grey-700:#3f4350;--bq-grey-800:#2a2c35;--bq-grey-900:#1c1d23;--bq-grey-950:#15161a;--bq-grey-1000:#0d0e11;--bq-indigo-100:#edecfc;--bq-indigo-200:#dcdafa;--bq-indigo-300:#b9b5f5;--bq-indigo-400:#9590ef;--bq-indigo-500:#726bea;--bq-indigo-600:#4f46e5;--bq-indigo-700:#3f38b7;--bq-indigo-800:#2f2a89;--bq-indigo-900:#201c5c;--bq-indigo-1000:#100e2e;--bq-iris-100:#e9f0ff;--bq-iris-200:#d6e0ff;--bq-iris-300:#b2c0fe;--bq-iris-400:#8691f8;--bq-iris-500:#6061ee;--bq-iris-600:#4f46e5;--bq-iris-700:#413abd;--bq-iris-800:#332e95;--bq-iris-900:#26216d;--bq-iris-1000:#181545;--bq-lime-100:#f5fae8;--bq-lime-200:#ecf6d2;--bq-lime-300:#d9eda5;--bq-lime-400:#c5e379;--bq-lime-500:#b2da4c;--bq-lime-600:#9fd11f;--bq-lime-700:#7fa719;--bq-lime-800:#5f7d13;--bq-lime-900:#40540c;--bq-lime-1000:#202a06;--bq-magenta-100:#fce7f4;--bq-magenta-200:#f9cfea;--bq-magenta-300:#f39fd6;--bq-magenta-400:#ee6fbf;--bq-magenta-500:#e83fab;--bq-magenta-600:#de1395;--bq-magenta-700:#b20f77;--bq-magenta-800:#850c59;--bq-magenta-900:#58083c;--bq-magenta-1000:#2c041e;--bq-neutral-white:#fbfbfc;--bq-neutral-black:#060708;--bq-orange-100:#fbf0e9;--bq-orange-200:#f8e1d4;--bq-orange-300:#f1c2a8;--bq-orange-400:#eaa47d;--bq-orange-500:#e38551;--bq-orange-600:#dc6726;--bq-orange-700:#b0521e;--bq-orange-800:#843e17;--bq-orange-900:#58290f;--bq-orange-1000:#2c1508;--bq-purple-100:#efebf8;--bq-purple-200:#e0d7f2;--bq-purple-300:#c1afe5;--bq-purple-400:#a388d8;--bq-purple-500:#8460cb;--bq-purple-600:#6538be;--bq-purple-700:#512d98;--bq-purple-800:#3d2272;--bq-purple-900:#28164c;--bq-purple-1000:#140b26;--bq-red-100:#fce7ea;--bq-red-200:#f9d1d5;--bq-red-300:#f3a2ac;--bq-red-400:#ed7482;--bq-red-500:#e74559;--bq-red-600:#e1172f;--bq-red-700:#b41226;--bq-red-800:#870e1c;--bq-red-900:#5a0913;--bq-red-1000:#2d0509;--bq-sky-100:#eff4fb;--bq-sky-200:#dfeaf8;--bq-sky-300:#bfd5f1;--bq-sky-400:#9ec1e9;--bq-sky-500:#7eace2;--bq-sky-600:#5e97db;--bq-sky-700:#4b79af;--bq-sky-800:#385b83;--bq-sky-900:#263c58;--bq-sky-1000:#131e2c;--bq-teal-100:#e5f7f5;--bq-teal-200:#ccf0eb;--bq-teal-300:#99e1d8;--bq-teal-400:#66d2c4;--bq-teal-500:#33c3b1;--bq-teal-600:#00b49d;--bq-teal-700:#00907e;--bq-teal-800:#006c5e;--bq-teal-900:#00483f;--bq-teal-1000:#00241f;--bq-volcano-100:#feede7;--bq-volcano-200:#fddbd1;--bq-volcano-300:#fbb8a3;--bq-volcano-400:#fa9474;--bq-volcano-500:#f87146;--bq-volcano-600:#f64d18;--bq-volcano-700:#c53e13;--bq-volcano-800:#942e0e;--bq-volcano-900:#621f0a;--bq-volcano-1000:#310f05;--bq-yellow-100:#fefbe7;--bq-yellow-200:#fcf6d0;--bq-yellow-300:#faeea0;--bq-yellow-400:#f7e571;--bq-yellow-500:#f5dd41;--bq-yellow-600:#f2d412;--bq-yellow-700:#c2aa0e;--bq-yellow-800:#917f0b;--bq-yellow-900:#615507;--bq-yellow-1000:#302a04;--bq-endava-grey-50:#f7f7f8;--bq-endava-grey-100:#e4e6e7;--bq-endava-grey-200:#b5babe;--bq-endava-grey-300:#949ca1;--bq-endava-grey-400:#737d84;--bq-endava-grey-500:#525f67;--bq-endava-grey-600:#30404b;--bq-endava-grey-700:#2b3942;--bq-endava-grey-800:#263139;--bq-endava-grey-900:#192b37;--bq-endava-grey-950:#151b1e;--bq-endava-grey-1000:#0f1316;--bq-endava-neutral-white:#fafbfb;--bq-endava-neutral-black:#060708;--bq-endava-orange-100:#fef3f1;--bq-endava-orange-200:#fbd6d1;--bq-endava-orange-300:#fab7af;--bq-endava-orange-400:#fa988b;--bq-endava-orange-500:#fc7866;--bq-endava-orange-600:#ff5640;--bq-endava-orange-700:#ce4a39;--bq-endava-orange-800:#a03d30;--bq-endava-orange-900:#722e25;--bq-endava-orange-1000:#471e19}*,:after,:before{box-sizing:border-box}*{font:inherit;margin:0}ol[role=list],ul[role=list]{list-style-type:none}html{text-size-adjust:none;font-family:var(--bq-font-family);font-size:var(--bq-font-size--m)}html:focus-within{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bq-background--primary);color:var(--bq-text--primary);line-height:var(--bq-font-line-height--regular);min-height:100vb;text-rendering:optimizeSpeed}a:not([class]){text-decoration-skip-ink:auto}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto;transition-duration:.01ms!important}}:where(:root){--bq-white:#fff;--bq-black:#060708;--bq-neutral-50:var(--bq-grey-50);--bq-neutral-100:var(--bq-grey-100);--bq-neutral-200:var(--bq-grey-200);--bq-neutral-300:var(--bq-grey-300);--bq-neutral-400:var(--bq-grey-400);--bq-neutral-500:var(--bq-grey-500);--bq-neutral-600:var(--bq-grey-600);--bq-neutral-700:var(--bq-grey-700);--bq-neutral-800:var(--bq-grey-800);--bq-neutral-900:var(--bq-grey-900);--bq-neutral-950:var(--bq-grey-950);--bq-neutral-1000:var(--bq-grey-1000);--bq-brand-light:var(--bq-iris-100);--bq-brand:var(--bq-iris-600);--bq-brand-dark:var(--bq-iris-1000);--bq-accent-light:var(--bq-purple-100);--bq-accent:var(--bq-purple-600);--bq-accent-dark:var(--bq-purple-1000);--bq-success-light:var(--bq-teal-100);--bq-success:var(--bq-teal-600);--bq-success-dark:var(--bq-teal-1000);--bq-danger-light:var(--bq-red-100);--bq-danger:var(--bq-red-600);--bq-danger-dark:var(--bq-red-1000);--bq-warning-light:var(--bq-gold-100);--bq-warning:var(--bq-gold-600);--bq-warning-dark:var(--bq-gold-1000);--bq-info-light:var(--bq-iris-100);--bq-info:var(--bq-iris-600);--bq-info-dark:var(--bq-iris-1000);--bq-focus:var(--bq-iris-600);--bq-data-01:var(--bq-brand);--bq-data-02:var(--bq-purple-600);--bq-data-03:var(--bq-magenta-600);--bq-data-04:var(--bq-cyan-600);--bq-data-05:var(--bq-teal-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-yellow-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-blue-600);--bq-data-10:var(--bq-grey-600);--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white);--bq-radius--none:0;--bq-radius--xs2:0.125rem;--bq-radius--xs:0.25rem;--bq-radius--s:0.5rem;--bq-radius--m:0.75rem;--bq-radius--l:1.5rem;--bq-radius--full:9999px;--bq-box-shadow--xs:0 2px 0 rgba(0,0,0,.016);--bq-box-shadow--s:0 8px 24px rgba(0,0,0,.04);--bq-box-shadow--m:0 10px 48px -16px rgba(0,0,0,.12);--bq-box-shadow--l:0 20px 58px -16px rgba(0,0,0,.16);--bq-font-family:\"Outfit\",sans-serif;--bq-font-size--xs:0.75rem;--bq-font-size--s:0.875rem;--bq-font-size--m:1rem;--bq-font-size--l:1.125rem;--bq-font-size--xl:1.5rem;--bq-font-size--xxl:2rem;--bq-font-size--xxl2:2.5rem;--bq-font-size--xxl3:3rem;--bq-font-size--xxl4:3.5rem;--bq-font-size--xxl5:4rem;--bq-font-weight--thin:100;--bq-font-weight--light:300;--bq-font-weight--regular:400;--bq-font-weight--medium:500;--bq-font-weight--semibold:600;--bq-font-weight--bold:700;--bq-font-line-height--small:1.2;--bq-font-line-height--regular:1.5;--bq-font-line-height--large:1.5;--bq-spacing-xs3:0.125rem;--bq-spacing-xs2:0.25rem;--bq-spacing-xs:0.5rem;--bq-spacing-s:0.75rem;--bq-spacing-m:1rem;--bq-spacing-l:1.5rem;--bq-spacing-xl:2rem;--bq-spacing-xxl:2.5rem;--bq-spacing-xxl2:3.5rem;--bq-spacing-xxl3:4rem;--bq-spacing-xxl4:4.5rem;--bq-stroke-s:1px;--bq-stroke-m:2px;--bq-stroke-l:3px}.beeq:not([bq-mode]),.light,:root:not([bq-theme]):not([bq-mode]),:root[bq-theme=beeq]:not([bq-mode]),[bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--alt:var(--bq-white);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-100);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-light);--bq-hover:#bcbfc5;--bq-active:#444546}.dark,[bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-950);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-950);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-dark);--bq-hover:#444546;--bq-active:#1f2026}:where(.endava),:where([bq-theme=endava]){--bq-font-family:\"Poppins\",sans-serif;--bq-white:#fafbfb;--bq-black:#030406;--bq-neutral-50:var(--bq-endava-grey-50);--bq-neutral-100:var(--bq-endava-grey-100);--bq-neutral-200:var(--bq-endava-grey-200);--bq-neutral-300:var(--bq-endava-grey-300);--bq-neutral-400:var(--bq-endava-grey-400);--bq-neutral-500:var(--bq-endava-grey-500);--bq-neutral-600:var(--bq-endava-grey-600);--bq-neutral-700:var(--bq-endava-grey-700);--bq-neutral-800:var(--bq-endava-grey-800);--bq-neutral-900:var(--bq-endava-grey-900);--bq-neutral-950:var(--bq-endava-grey-950);--bq-neutral-1000:var(--bq-endava-grey-1000);--bq-brand-light:var(--bq-endava-orange-100);--bq-brand:var(--bq-endava-orange-600);--bq-brand-dark:var(--bq-endava-orange-1000);--bq-accent-light:var(--bq-endava-orange-100);--bq-accent:var(--bq-endava-orange-600);--bq-accent-dark:var(--bq-endava-orange-1000);--bq-success-light:var(--bq-green-100);--bq-success:var(--bq-green-600);--bq-success-dark:var(--bq-green-1000);--bq-danger-light:var(--bq-corai-100);--bq-danger:var(--bq-corai-600);--bq-danger-dark:var(--bq-corai-1000);--bq-warning-light:var(--bq-yellow-100);--bq-warning:var(--bq-yellow-600);--bq-warning-dark:var(--bq-yellow-1000);--bq-info-light:var(--bq-blue-100);--bq-info:var(--bq-blue-600);--bq-info-dark:var(--bq-blue-1000);--bq-focus:var(--bq-endava-orange-600);--bq-data-01:var(--bq-brand);--bq-data-02:#af0cd8;--bq-data-03:#0ca8d8;--bq-data-04:var(--bq-teal-600);--bq-data-05:var(--bq-yellow-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-blue-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-purple-600);--bq-data-10:#394b56;--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white)}.endava.light,.endava:not([bq-mode]),[bq-theme=endava]:not([bq-mode]),[bq-theme=endava][bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--brand-alt:var(--bq-brand-light);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-100);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--brand:var(--bq-brand);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-light);--bq-hover:#444546;--bq-active:#1f2026}.endava.dark,[bq-theme=endava][bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-900);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--brand-alt:var(--bq-brand-dark);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-neutral-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-950);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-dark);--bq-hover:#444546;--bq-active:#1f2026}.inline-block{display:inline-block}.flex{display:flex}.flex-col{flex-direction:column}.border-0{border-width:0}.p-b-0{padding-block:0}.p-i-0{padding-inline:0}.m-b-0{margin-block:0}.m-i-0{margin-inline:0}@-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{display:inline-block}.bq-radio-group{margin-block:0;margin-inline:0}.bq-radio-group:not(.has-fieldset){border-width:0;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.bq-radio-group--horizontal{display:flex}.bq-radio-group--vertical{display:flex;flex-direction:column}.static{position:static}.focus{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}";
14
15
 
16
+ const KEY_MAP = {
17
+ ArrowDown: 'forward',
18
+ ArrowRight: 'forward',
19
+ ArrowUp: 'backward',
20
+ ArrowLeft: 'backward',
21
+ };
15
22
  const BqRadioGroup = class {
16
23
  constructor(hostRef) {
17
24
  registerInstance(this, hostRef);
@@ -26,8 +33,11 @@ const BqRadioGroup = class {
26
33
  }
27
34
  // Own Properties
28
35
  // ====================
29
- focusedBqRadio = null;
36
+ initialValue;
30
37
  debouncedBqChange;
38
+ focusedBqRadio = null;
39
+ radioElementsSet = new Set();
40
+ cachedRadioElements = [];
31
41
  // Reference to host HTML element
32
42
  // ===================================
33
43
  internals;
@@ -35,6 +45,8 @@ const BqRadioGroup = class {
35
45
  // State() variables
36
46
  // Inlined decorator, alphabetical order
37
47
  // =======================================
48
+ checkedRadio;
49
+ tabIndex = '0';
38
50
  // Public Property API
39
51
  // ========================
40
52
  /** If true, all radio inputs in the group will display a background on hover */
@@ -57,33 +69,42 @@ const BqRadioGroup = class {
57
69
  value;
58
70
  // Prop lifecycle events
59
71
  // =======================
72
+ handleDebounceTimeChange() {
73
+ const MIN_DEBOUNCE_TIME = 0;
74
+ const normalizedDebounceTime = Math.max(MIN_DEBOUNCE_TIME, this.debounceTime);
75
+ if (normalizedDebounceTime !== this.debounceTime) {
76
+ this.debounceTime = normalizedDebounceTime;
77
+ }
78
+ this.debouncedBqChange?.cancel();
79
+ this.debouncedBqChange = debounce((event) => {
80
+ this.bqChange?.emit(event);
81
+ }, this.debounceTime);
82
+ }
83
+ handleDisabledChange() {
84
+ this.tabIndex = this.disabled ? '-1' : '0';
85
+ this.updateRadioTabIndexes();
86
+ }
60
87
  handleGroupProperties() {
61
- if (!this.bqRadioElements)
62
- return;
63
- this.bqRadioElements.forEach((bqRadio) => {
64
- bqRadio.backgroundOnHover = this.backgroundOnHover;
65
- bqRadio.checked = !isNil(this.value) ? bqRadio.value === this.value : false;
66
- bqRadio.disabled = this.disabled;
67
- bqRadio.name = this.name;
68
- bqRadio.required = this.required;
69
- });
88
+ this.updateRadioProperties();
70
89
  }
71
90
  checkPropValues() {
72
91
  validatePropValue(RADIO_GROUP_ORIENTATION, 'vertical', this.el, 'orientation');
73
92
  }
74
- checkDebounceChange() {
75
- if (this.debounceTime < 0) {
76
- this.debounceTime = Math.max(0, this.debounceTime);
93
+ handleRequiredChange() {
94
+ this.updateFormValidity();
95
+ }
96
+ handleValueChange() {
97
+ this.updateRadioProperties();
98
+ this.updateFormValidity();
99
+ // Find and update the checked radio based on the new value
100
+ const newCheckedRadio = this.cachedRadioElements.find((radio) => radio.value === this.value);
101
+ if (newCheckedRadio) {
102
+ this.checkedRadio = newCheckedRadio;
103
+ this.debouncedBqChange?.({ value: this.value, target: newCheckedRadio });
77
104
  }
78
- if (this.debouncedBqChange) {
79
- this.debouncedBqChange.cancel();
105
+ else {
106
+ this.checkedRadio = undefined;
80
107
  }
81
- this.debouncedBqChange = debounce((event) => {
82
- this.bqChange.emit(event);
83
- }, this.debounceTime);
84
- }
85
- async handleRequiredChange() {
86
- await this.updateFormValidity();
87
108
  }
88
109
  // Events section
89
110
  // Requires JSDocs for public API documentation
@@ -94,67 +115,65 @@ const BqRadioGroup = class {
94
115
  // Ordered by their natural call order
95
116
  // =====================================
96
117
  componentWillLoad() {
97
- this.checkPropValues();
98
- this.checkDebounceChange();
99
- this.internals.setFormValue(this.value);
118
+ this.initialValue = this.value;
119
+ this.handleDebounceTimeChange();
120
+ this.internals.setFormValue(this.value ?? null);
121
+ this.updateCustomStates();
122
+ this.updateFormValidity();
100
123
  }
101
- componentDidLoad() {
102
- this.handleGroupProperties();
124
+ disconnectedCallback() {
125
+ this.debouncedBqChange?.cancel();
103
126
  }
104
- async formAssociatedCallback() {
105
- this.internals.setFormValue(this.value);
106
- await this.updateFormValidity();
127
+ formAssociatedCallback() {
128
+ this.internals.setFormValue(this.value ?? null);
129
+ this.updateFormValidity();
107
130
  }
108
131
  formResetCallback() {
109
- this.value = null;
110
- this.internals.setFormValue(this.value);
132
+ this.value = this.initialValue;
133
+ this.internals.setFormValue(this.value ?? null);
134
+ this.updateFormValidity();
135
+ this.updateCustomStates();
111
136
  }
112
137
  // Listeners
113
138
  // ==============
114
- onMouseDown(event) {
115
- if (!isNil(this.focusedBqRadio) && isHTMLElement(event.target, 'bq-radio') && this.el.contains(event.target)) {
116
- this.focusedBqRadio = event.target;
117
- }
118
- }
119
- onBqClick(event) {
120
- if (isNil(this.focusedBqRadio)) {
121
- this.focusedBqRadio = event.detail;
122
- }
123
- if (event.detail.value === this.value)
139
+ async onBqClick(event) {
140
+ if (!isEventTargetChildOfElement(event, this.el))
141
+ return;
142
+ const { target, value } = event.detail;
143
+ if (value === this.value)
124
144
  return;
125
- const target = event.detail;
126
- this.bqRadioElements.forEach((bqRadioElement) => (bqRadioElement.checked = bqRadioElement === target));
127
- this.setCheckedRadioItem(event.detail);
145
+ requestAnimationFrame(() => {
146
+ if (event.defaultPrevented)
147
+ return;
148
+ this.updateRadioSelection(target);
149
+ });
128
150
  }
129
151
  onBqKeyDown(event) {
130
- const { target } = event;
131
- if (!isHTMLElement(target, 'bq-radio'))
152
+ if (!isEventTargetChildOfElement(event, this.el))
132
153
  return;
133
- switch (event.detail.key) {
134
- case 'ArrowDown':
135
- case 'ArrowRight': {
136
- this.focusRadioInputSibling(target, true);
137
- break;
138
- }
139
- case 'ArrowUp':
140
- case 'ArrowLeft': {
141
- this.focusRadioInputSibling(target, false);
142
- break;
143
- }
144
- }
154
+ const direction = KEY_MAP[event.detail.key];
155
+ if (!direction)
156
+ return;
157
+ this.focusRadioInputSibling(event.detail.target, direction);
145
158
  }
146
159
  onBqFocus(event) {
147
- if (event.detail !== this.focusedBqRadio)
160
+ if (!isEventTargetChildOfElement(event, this.el))
148
161
  return;
149
- event.stopPropagation();
162
+ const shouldStopPropagation = this.focusedBqRadio && event.detail !== this.focusedBqRadio;
163
+ if (shouldStopPropagation) {
164
+ event.stopPropagation();
165
+ }
166
+ this.focusedBqRadio = event.detail;
150
167
  }
151
168
  onBqBlur(event) {
152
- if (!isNil(this.focusedBqRadio) && event.detail !== this.focusedBqRadio) {
169
+ if (!isEventTargetChildOfElement(event, this.el))
170
+ return;
171
+ const shouldStopPropagation = this.focusedBqRadio && event.detail !== this.focusedBqRadio;
172
+ if (shouldStopPropagation) {
153
173
  event.stopPropagation();
174
+ return;
154
175
  }
155
- else {
156
- this.focusedBqRadio = null;
157
- }
176
+ this.focusedBqRadio = null;
158
177
  }
159
178
  // Public methods API
160
179
  // These methods are exposed on the host element.
@@ -166,66 +185,154 @@ const BqRadioGroup = class {
166
185
  // Internal business logic.
167
186
  // These methods cannot be called from the host element.
168
187
  // =======================================================
169
- focusRadioInputSibling = (currentTarget, next) => {
170
- this.bqRadioElements.forEach((bqRadioElement, index, elements) => {
171
- if (bqRadioElement === currentTarget) {
172
- const target = this.getNextRadioElement(elements, index, next);
173
- currentTarget.checked = false;
174
- target.vFocus();
175
- this.setCheckedRadioItem(target);
176
- }
188
+ /**
189
+ * Initializes the radio elements set by querying the host element for `ds-radio` elements.
190
+ * This is done to avoid re-querying the host element for radio elements on every change.
191
+ */
192
+ initializeRadioElements = () => {
193
+ this.radioElementsSet.clear();
194
+ this.el.querySelectorAll('bq-radio').forEach((radio) => this.radioElementsSet.add(radio));
195
+ // Caching the radio elements in an array for faster access and iteration
196
+ this.cachedRadioElements = Array.from(this.radioElementsSet);
197
+ // Set the tabIndex of the host element to -1 if there are no radio elements or the group is disabled, otherwise set it to 0
198
+ this.tabIndex = this.cachedRadioElements.length === 0 || this.disabled ? '-1' : '0';
199
+ // Set initial tabIndex for all radios
200
+ this.updateRadioTabIndexes();
201
+ };
202
+ /**
203
+ * Sets tabIndex for all radio elements based on current state
204
+ * Handles all scenarios: disabled state, checked radio, value matching, fallback to first
205
+ */
206
+ updateRadioTabIndexes = () => {
207
+ if (this.cachedRadioElements.length === 0)
208
+ return;
209
+ // If disabled, all radios get tabIndex -1
210
+ if (this.disabled) {
211
+ this.cachedRadioElements.forEach((radio) => (radio.tabIndex = -1));
212
+ return;
213
+ }
214
+ // Find which radio should be focusable
215
+ let focusableRadio;
216
+ // Priority 1: Currently checked radio
217
+ focusableRadio = this.cachedRadioElements.find((radio) => radio.checked);
218
+ // Priority 2: Radio matching current value
219
+ if (!focusableRadio && this.value) {
220
+ focusableRadio = this.cachedRadioElements.find((radio) => radio.value === this.value);
221
+ }
222
+ // Priority 3: First enabled radio (fallback)
223
+ if (!focusableRadio) {
224
+ focusableRadio = this.cachedRadioElements.find((radio) => !radio.disabled);
225
+ }
226
+ // Apply tabIndex to all radios
227
+ this.cachedRadioElements.forEach((radio) => {
228
+ radio.tabIndex = radio === focusableRadio ? 0 : -1;
177
229
  });
178
230
  };
179
- setCheckedRadioItem = (target) => {
180
- const { value } = target;
231
+ /**
232
+ * Updates the radio selection and focus.
233
+ * @param target - The radio element to update.
234
+ */
235
+ updateRadioSelection = (target) => {
236
+ // Only uncheck the previously checked radio if it's different
237
+ if (this.checkedRadio && this.checkedRadio !== target) {
238
+ this.checkedRadio.checked = false;
239
+ this.checkedRadio.tabIndex = -1;
240
+ }
181
241
  target.checked = true;
182
- this.value = value;
183
- this.focusedBqRadio = target;
184
- this.internals.setFormValue(value);
185
- this.debouncedBqChange({ value, target });
242
+ target.tabIndex = 0;
243
+ target.vFocus();
244
+ this.checkedRadio = target;
245
+ this.value = target.value;
246
+ this.internals?.setFormValue(this.value ?? null);
247
+ this.updateRadioTabIndexes();
186
248
  };
187
- getNextRadioElement = (elements, index, forward = true) => {
188
- let element = null;
189
- let elementIndex = index;
190
- do {
191
- elementIndex = (elements.length + (elementIndex + (forward ? 1 : -1))) % elements.length;
192
- element = elements[elementIndex];
193
- } while (element.disabled);
194
- return element;
249
+ /**
250
+ * Synchronizes properties of child radio elements with the group's state.
251
+ */
252
+ updateRadioProperties = () => {
253
+ if (this.cachedRadioElements.length === 0)
254
+ return;
255
+ const { backgroundOnHover, disabled, name, required, value } = this;
256
+ for (const radio of this.cachedRadioElements) {
257
+ radio.backgroundOnHover = backgroundOnHover;
258
+ radio.checked = value === radio.value;
259
+ // This will allows us to force all radio elements to be disabled
260
+ // while keeping the disabled state of the radio element if it was set individually by the user
261
+ radio.forceDisabled = disabled;
262
+ radio.name = name;
263
+ radio.required = required;
264
+ }
265
+ };
266
+ /**
267
+ * Focuses the next/previous radio element in the group based on the current target.
268
+ * Handles circular navigation and skips disabled elements.
269
+ * @param currentTarget - The currently focused radio element
270
+ * @param direction - The navigation direction ('forward' | 'backward')
271
+ */
272
+ focusRadioInputSibling = (currentTarget, direction) => {
273
+ // If there is none or only one radio element, there will be no sibling to focus
274
+ if (this.cachedRadioElements.length <= 1)
275
+ return;
276
+ const currentIndex = this.cachedRadioElements.indexOf(currentTarget);
277
+ // If the index of the radio element target is not found, it means that it's not part of the group
278
+ if (currentIndex === -1)
279
+ return;
280
+ const nextElement = getNextElement(this.cachedRadioElements, currentIndex, direction);
281
+ this.updateRadioSelection(nextElement);
195
282
  };
196
283
  updateFormValidity = async () => {
197
284
  const { internals, required, requiredValidationMessage, value } = this;
198
285
  // Clear the validity state
199
286
  internals?.states.clear();
200
287
  if (!required || (required && !isNil(value))) {
201
- // If the checkbox is not required or is checked, set the validity state to valid
288
+ // If the radio group is not required or has a value, set the validity state to valid
202
289
  internals?.states.add('valid');
203
290
  internals?.setValidity({});
204
291
  return;
205
292
  }
206
- // If the checkbox is required and not checked, set the validity state to invalid
293
+ const firstRadio = this.cachedRadioElements[0];
294
+ if (!firstRadio)
295
+ return;
296
+ // If the radio group is required and has no value, set the validity state to invalid
207
297
  internals?.states.add('invalid');
208
- internals?.setValidity({ valueMissing: true }, requiredValidationMessage, await this.bqRadioElements[0].getNativeInput());
298
+ // We need to pass the native input element to the setValidity method as anchor element
299
+ internals?.setValidity({ valueMissing: true }, requiredValidationMessage ?? 'Please select an option', await firstRadio.getNativeInput());
300
+ };
301
+ /**
302
+ * Updates the custom states based on the component properties.
303
+ * The custom states can be used to style the component based on the component properties.
304
+ * The custom states are `disabled`, based on the component properties.
305
+ */
306
+ updateCustomStates = () => {
307
+ const states = new Set();
308
+ if (this.disabled)
309
+ states.add('disabled');
310
+ if (this.orientation)
311
+ states.add(this.orientation);
312
+ // Update states
313
+ this.internals?.states.clear();
314
+ states.forEach((state) => this.internals?.states.add(state));
315
+ };
316
+ handleSlotChange = () => {
317
+ this.initializeRadioElements();
318
+ this.updateRadioProperties();
209
319
  };
210
- get bqRadioElements() {
211
- return Array.from(this.el.querySelectorAll('bq-radio'));
212
- }
213
320
  // render() function
214
321
  // Always the last one in the class.
215
322
  // ===================================
216
323
  render() {
217
- return (h("fieldset", { key: 'f6802fdedbf33e5863a68e159d1add1dfc3df7a8', class: { 'bq-radio-group': true, 'has-fieldset': this.fieldset }, "aria-labelledby": "bq-radio-group__label", "aria-controls": "bq-radiogroup", role: "radiogroup", part: "base" }, h("legend", { key: '379b6151d63422ed543b7c520ff035f6ae4154a0', part: "label" }, h("slot", { key: '622478a3c8c4acb4d656aef8bedbc7961e5aa6e1', id: "bq-radiogroup__label", name: "label" })), h("div", { key: 'e993a782177088dafd25b49a693e6dcf8255b2c2', class: `bq-radio-group--${this.orientation}`, part: "group" }, h("slot", { key: 'cf52a7bdd57bc4e6204ec4355a2c335bd6a4b7e4', id: "bq-radiogroup" }))));
324
+ return (h(Host, { key: '0f3d7f7b43b4d98eaee94ffa79ad0e23c0f80cd9', tabindex: this.tabIndex }, h("fieldset", { key: 'e48c6c15370dd881ed26b7df9e578350f3a42e34', class: { 'bq-radio-group': true, 'has-fieldset': this.fieldset }, "aria-controls": "bq-radiogroup", "aria-labelledby": "bq-radio-group__label", "aria-disabled": this.disabled, "aria-required": this.required, disabled: this.disabled, role: "radiogroup", part: "base" }, h("legend", { key: '56faba3e726d627fe1b76f96d2eb0dc352c72165', part: "label" }, h("slot", { key: '87ae7a460396a150e136123be5b895f2e50b229e', id: "bq-radiogroup__label", name: "label" })), h("div", { key: '6aad53784020d3e1a4fe1a22d4e53812f6311058', class: `bq-radio-group--${this.orientation}`, part: "group" }, h("slot", { key: '9753cae782f6e3e4a2a419d31d786b7d838336bd', id: "bq-radiogroup", onSlotchange: this.handleSlotChange })))));
218
325
  }
219
326
  static get delegatesFocus() { return true; }
220
327
  static get formAssociated() { return true; }
221
328
  static get watchers() { return {
329
+ "debounceTime": ["handleDebounceTimeChange"],
330
+ "disabled": ["handleDisabledChange", "handleGroupProperties"],
222
331
  "backgroundOnHover": ["handleGroupProperties"],
223
- "disabled": ["handleGroupProperties"],
224
332
  "name": ["handleGroupProperties"],
225
333
  "required": ["handleGroupProperties", "handleRequiredChange"],
226
- "value": ["handleGroupProperties", "handleRequiredChange"],
227
334
  "orientation": ["checkPropValues"],
228
- "debounceTime": ["checkDebounceChange"]
335
+ "value": ["handleValueChange"]
229
336
  }; }
230
337
  };
231
338
  BqRadioGroup.style = bqRadioGroupCss;
@@ -1 +1 @@
1
- {"version":3,"file":"bq-radio-group.entry.js","sources":["../../packages/beeq/src/components/radio-group/bq-radio-group.types.ts","../../packages/beeq/src/components/radio-group/scss/bq-radio-group.scss?tag=bq-radio-group&encapsulation=shadow","../../packages/beeq/src/components/radio-group/bq-radio-group.tsx"],"sourcesContent":["export const RADIO_GROUP_ORIENTATION = ['horizontal', 'vertical'] as const;\nexport type TRadioGroupOrientation = (typeof RADIO_GROUP_ORIENTATION)[number];\n","/* -------------------------------------------------------------------------- */\n/* Radio group styles */\n/* -------------------------------------------------------------------------- */\n\n:host {\n @apply inline-block;\n}\n\n.bq-radio-group {\n @apply m-b-0 m-i-0;\n\n &:not(.has-fieldset) {\n @apply border-0 m-b-0 m-i-0 p-b-0 p-i-0;\n }\n\n &--horizontal {\n @apply flex;\n }\n\n &--vertical {\n @apply flex flex-col;\n }\n}\n","import { AttachInternals, Component, Element, Event, h, Listen, Prop, Watch } from '@stencil/core';\nimport type { EventEmitter } from '@stencil/core';\n\nimport { RADIO_GROUP_ORIENTATION } from './bq-radio-group.types';\nimport type { TRadioGroupOrientation } from './bq-radio-group.types';\nimport { debounce, isHTMLElement, isNil, TDebounce, validatePropValue } from '../../shared/utils';\n\n/**\n * The radio group is a user interface component that groups radio buttons to enable a single selection within the group.\n *\n * @example How to use it\n * ```html\n * <bq-radio-group fieldset value=\"option1\">\n * <span slot=\"label\">radio group</span>\n * <bq-radio value=\"option1\">Radio option 1</bq-radio>\n * <bq-radio value=\"option2\">Radio option 2</bq-radio>\n * <bq-radio value=\"option3\">Radio option 3</bq-radio>\n * </bq-radio-group>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/9718e1-radio-button/b/09d7b1\n * @status stable\n *\n * @attr {boolean} background-on-hover - If `true`, the radio displays background on hover\n * @attr {number} debounce-time - A number representing the delay time (in milliseconds) that bqChange event handler gets triggered once the value change\n * @attr {boolean} disabled - If `true` radio inputs are disabled\n * @attr {boolean} fieldset - If `true` displays fieldset\n * @attr {string} name - Name of the HTML input form control. Submitted with the form as part of a name/value pair\n * @attr {\"horizontal\" | \"vertical\"} orientation - The display orientation of the radio inputs\n * @attr {boolean} required - If `true`, the radio group is required\n * @attr {string} required-validation-message - The native form validation message when the radio group is required\n * @attr {string} value - The display orientation of the radio inputs\n *\n * @method vClick - Simulate a click event on the native `<input>` HTML element used under the hood\n * @method vFocus - Sets focus on the native `<input>` HTML element used under the hood\n * @method vBlur - Remove focus from the native `<input>` HTML element used under the hood\n *\n * @event bqChange - Handler to be called when the radio state changes\n *\n * @slot - The bq-radio items to group\n * @slot label - The label content of radio group\n *\n * @part base - The component's internal wrapper of the radio components.\n * @part label - The `<legend>` element that holds the text content.\n * @part group - The `<div>` element that holds the radio inputs.\n */\n@Component({\n tag: 'bq-radio-group',\n styleUrl: './scss/bq-radio-group.scss',\n formAssociated: true,\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BqRadioGroup {\n // Own Properties\n // ====================\n\n private focusedBqRadio: HTMLBqRadioElement | null = null;\n private debouncedBqChange: TDebounce<{ value: string; target: HTMLBqRadioElement }>;\n\n // Reference to host HTML element\n // ===================================\n\n @AttachInternals() internals!: ElementInternals;\n @Element() el!: HTMLBqRadioGroupElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n // Public Property API\n // ========================\n\n /** If true, all radio inputs in the group will display a background on hover */\n @Prop({ reflect: true }) backgroundOnHover? = false;\n\n /** A number representing the delay time (in milliseconds) that `bqChange` event handler gets triggered once the value change */\n @Prop({ reflect: true, mutable: true }) debounceTime = 0;\n\n /** If true radio inputs are disabled */\n @Prop({ reflect: true }) disabled? = false;\n\n /** If true displays fieldset */\n @Prop({ reflect: true }) fieldset? = false;\n\n /** Name of the HTML input form control. Submitted with the form as part of a name/value pair. */\n @Prop({ reflect: true }) name!: string;\n\n /** The display orientation of the radio inputs */\n @Prop({ reflect: true, mutable: true }) orientation?: TRadioGroupOrientation = 'vertical';\n\n /** If true, the radio group is required */\n @Prop({ reflect: true }) required? = false;\n\n /** The native form validation message when the radio group is required */\n @Prop({ reflect: true }) requiredValidationMessage?: string;\n\n /** A string representing the value of the radio. */\n @Prop({ reflect: true, mutable: true }) value?: string;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('backgroundOnHover')\n @Watch('disabled')\n @Watch('name')\n @Watch('required')\n @Watch('value')\n handleGroupProperties() {\n if (!this.bqRadioElements) return;\n\n this.bqRadioElements.forEach((bqRadio) => {\n bqRadio.backgroundOnHover = this.backgroundOnHover;\n bqRadio.checked = !isNil(this.value) ? bqRadio.value === this.value : false;\n bqRadio.disabled = this.disabled;\n bqRadio.name = this.name;\n bqRadio.required = this.required;\n });\n }\n\n @Watch('orientation')\n checkPropValues() {\n validatePropValue(RADIO_GROUP_ORIENTATION, 'vertical', this.el, 'orientation');\n }\n\n @Watch('debounceTime')\n checkDebounceChange() {\n if (this.debounceTime < 0) {\n this.debounceTime = Math.max(0, this.debounceTime);\n }\n\n if (this.debouncedBqChange) {\n this.debouncedBqChange.cancel();\n }\n\n this.debouncedBqChange = debounce((event: Parameters<typeof this.debouncedBqChange>[0]) => {\n this.bqChange.emit(event);\n }, this.debounceTime);\n }\n\n @Watch('required')\n @Watch('value')\n async handleRequiredChange() {\n await this.updateFormValidity();\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Handler to be called when the radio state changes */\n @Event() bqChange: EventEmitter<{ value: string; target: HTMLBqRadioElement }>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.checkPropValues();\n this.checkDebounceChange();\n this.internals.setFormValue(this.value);\n }\n\n componentDidLoad() {\n this.handleGroupProperties();\n }\n\n async formAssociatedCallback() {\n this.internals.setFormValue(this.value);\n await this.updateFormValidity();\n }\n\n formResetCallback() {\n this.value = null;\n this.internals.setFormValue(this.value);\n }\n\n // Listeners\n // ==============\n\n @Listen('mousedown', { target: 'body', passive: true })\n onMouseDown(event: MouseEvent) {\n if (!isNil(this.focusedBqRadio) && isHTMLElement(event.target, 'bq-radio') && this.el.contains(event.target)) {\n this.focusedBqRadio = event.target;\n }\n }\n\n @Listen('bqClick')\n onBqClick(event: CustomEvent<HTMLBqRadioElement>) {\n if (isNil(this.focusedBqRadio)) {\n this.focusedBqRadio = event.detail;\n }\n\n if (event.detail.value === this.value) return;\n\n const target = event.detail;\n this.bqRadioElements.forEach((bqRadioElement) => (bqRadioElement.checked = bqRadioElement === target));\n this.setCheckedRadioItem(event.detail);\n }\n\n @Listen('bqKeyDown')\n onBqKeyDown(event: CustomEvent<KeyboardEvent>) {\n const { target } = event;\n\n if (!isHTMLElement(target, 'bq-radio')) return;\n\n switch (event.detail.key) {\n case 'ArrowDown':\n case 'ArrowRight': {\n this.focusRadioInputSibling(target, true);\n break;\n }\n\n case 'ArrowUp':\n case 'ArrowLeft': {\n this.focusRadioInputSibling(target, false);\n break;\n }\n\n default:\n }\n }\n\n @Listen('bqFocus', { capture: true })\n onBqFocus(event: CustomEvent<HTMLBqRadioElement>) {\n if (event.detail !== this.focusedBqRadio) return;\n\n event.stopPropagation();\n }\n\n @Listen('bqBlur', { capture: true })\n onBqBlur(event: CustomEvent<HTMLBqRadioElement>) {\n if (!isNil(this.focusedBqRadio) && event.detail !== this.focusedBqRadio) {\n event.stopPropagation();\n } else {\n this.focusedBqRadio = null;\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 // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private focusRadioInputSibling = (currentTarget: HTMLBqRadioElement, next: boolean): void => {\n this.bqRadioElements.forEach((bqRadioElement, index, elements) => {\n if (bqRadioElement === currentTarget) {\n const target = this.getNextRadioElement(elements, index, next);\n\n currentTarget.checked = false;\n\n target.vFocus();\n this.setCheckedRadioItem(target);\n }\n });\n };\n\n private setCheckedRadioItem = (target: HTMLBqRadioElement): void => {\n const { value } = target;\n target.checked = true;\n this.value = value;\n this.focusedBqRadio = target;\n this.internals.setFormValue(value);\n this.debouncedBqChange({ value, target });\n };\n\n private getNextRadioElement = (elements: HTMLBqRadioElement[], index: number, forward = true): HTMLBqRadioElement => {\n let element = null;\n let elementIndex = index;\n\n do {\n elementIndex = (elements.length + (elementIndex + (forward ? 1 : -1))) % elements.length;\n element = elements[elementIndex];\n } while (element.disabled);\n\n return element;\n };\n\n private updateFormValidity = async (): Promise<void> => {\n const { internals, required, requiredValidationMessage, value } = this;\n // Clear the validity state\n internals?.states.clear();\n\n if (!required || (required && !isNil(value))) {\n // If the checkbox is not required or is checked, set the validity state to valid\n internals?.states.add('valid');\n internals?.setValidity({});\n return;\n }\n\n // If the checkbox is required and not checked, set the validity state to invalid\n internals?.states.add('invalid');\n internals?.setValidity(\n { valueMissing: true },\n requiredValidationMessage,\n await this.bqRadioElements[0].getNativeInput(),\n );\n };\n\n private get bqRadioElements(): HTMLBqRadioElement[] {\n return Array.from(this.el.querySelectorAll('bq-radio'));\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <fieldset\n class={{ 'bq-radio-group': true, 'has-fieldset': this.fieldset }}\n aria-labelledby=\"bq-radio-group__label\"\n aria-controls=\"bq-radiogroup\"\n role=\"radiogroup\"\n part=\"base\"\n >\n <legend part=\"label\">\n <slot id=\"bq-radiogroup__label\" name=\"label\" />\n </legend>\n <div class={`bq-radio-group--${this.orientation}`} part=\"group\">\n <slot id=\"bq-radiogroup\" />\n </div>\n </fieldset>\n );\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bq-radio-group.entry.js","sources":["../../packages/beeq/src/components/radio-group/bq-radio-group.types.ts","../../packages/beeq/src/components/radio-group/scss/bq-radio-group.scss?tag=bq-radio-group&encapsulation=shadow","../../packages/beeq/src/components/radio-group/bq-radio-group.tsx"],"sourcesContent":["export const RADIO_GROUP_ORIENTATION = ['horizontal', 'vertical'] as const;\nexport type TRadioGroupOrientation = (typeof RADIO_GROUP_ORIENTATION)[number];\n","/* -------------------------------------------------------------------------- */\n/* Radio group styles */\n/* -------------------------------------------------------------------------- */\n\n:host {\n @apply inline-block;\n}\n\n.bq-radio-group {\n @apply m-b-0 m-i-0;\n\n &:not(.has-fieldset) {\n @apply border-0 m-b-0 m-i-0 p-b-0 p-i-0;\n }\n\n &--horizontal {\n @apply flex;\n }\n\n &--vertical {\n @apply flex flex-col;\n }\n}\n","import { AttachInternals, Component, Element, Event, h, Host, Listen, Prop, State, Watch } from '@stencil/core';\nimport type { EventEmitter } from '@stencil/core';\n\nimport { RADIO_GROUP_ORIENTATION } from './bq-radio-group.types';\nimport type { TRadioGroupOrientation } from './bq-radio-group.types';\nimport {\n debounce,\n getNextElement,\n isEventTargetChildOfElement,\n isNil,\n TDebounce,\n validatePropValue,\n} from '../../shared/utils';\n\nconst KEY_MAP = {\n ArrowDown: 'forward',\n ArrowRight: 'forward',\n ArrowUp: 'backward',\n ArrowLeft: 'backward',\n} as const;\n\ntype Direction = (typeof KEY_MAP)[keyof typeof KEY_MAP];\n\n/**\n * The radio group is a user interface component that groups radio buttons to enable a single selection within the group.\n *\n * @example How to use it\n * ```html\n * <bq-radio-group fieldset value=\"option1\">\n * <span slot=\"label\">radio group</span>\n * <bq-radio value=\"option1\">Radio option 1</bq-radio>\n * <bq-radio value=\"option2\">Radio option 2</bq-radio>\n * <bq-radio value=\"option3\">Radio option 3</bq-radio>\n * </bq-radio-group>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/9718e1-radio-button/b/09d7b1\n * @status stable\n *\n * @attr {boolean} background-on-hover - If `true`, the radio displays background on hover\n * @attr {number} debounce-time - A number representing the delay time (in milliseconds) that bqChange event handler gets triggered once the value change\n * @attr {boolean} disabled - If `true` radio inputs are disabled\n * @attr {boolean} fieldset - If `true` displays fieldset\n * @attr {string} name - Name of the HTML input form control. Submitted with the form as part of a name/value pair\n * @attr {\"horizontal\" | \"vertical\"} orientation - The display orientation of the radio inputs\n * @attr {boolean} required - If `true`, the radio group is required\n * @attr {string} required-validation-message - The native form validation message when the radio group is required\n * @attr {string} value - The display orientation of the radio inputs\n *\n * @method vClick - Simulate a click event on the native `<input>` HTML element used under the hood\n * @method vFocus - Sets focus on the native `<input>` HTML element used under the hood\n * @method vBlur - Remove focus from the native `<input>` HTML element used under the hood\n *\n * @event bqChange - Handler to be called when the radio state changes\n *\n * @slot - The bq-radio items to group\n * @slot label - The label content of radio group\n *\n * @part base - The component's internal wrapper of the radio components.\n * @part label - The `<legend>` element that holds the text content.\n * @part group - The `<div>` element that holds the radio inputs.\n */\n@Component({\n tag: 'bq-radio-group',\n styleUrl: './scss/bq-radio-group.scss',\n formAssociated: true,\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BqRadioGroup {\n // Own Properties\n // ====================\n\n private initialValue?: string;\n private debouncedBqChange: TDebounce<{ value: string; target: HTMLBqRadioElement }>;\n private focusedBqRadio: HTMLBqRadioElement | null = null;\n private readonly radioElementsSet = new Set<HTMLBqRadioElement>();\n private cachedRadioElements: HTMLBqRadioElement[] = [];\n\n // Reference to host HTML element\n // ===================================\n\n @AttachInternals() internals!: ElementInternals;\n @Element() el!: HTMLBqRadioGroupElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() checkedRadio?: HTMLBqRadioElement;\n @State() tabIndex: '0' | '-1' = '0';\n\n // Public Property API\n // ========================\n\n /** If true, all radio inputs in the group will display a background on hover */\n @Prop({ reflect: true }) backgroundOnHover = false;\n\n /** A number representing the delay time (in milliseconds) that `bqChange` event handler gets triggered once the value change */\n @Prop({ reflect: true, mutable: true }) debounceTime = 0;\n\n /** If true radio inputs are disabled */\n @Prop({ reflect: true }) disabled = false;\n\n /** If true displays fieldset */\n @Prop({ reflect: true }) fieldset = false;\n\n /** Name of the HTML input form control. Submitted with the form as part of a name/value pair. */\n @Prop({ reflect: true }) name!: string;\n\n /** The display orientation of the radio inputs */\n @Prop({ reflect: true, mutable: true }) orientation: TRadioGroupOrientation = 'vertical';\n\n /** If true, the radio group is required */\n @Prop({ reflect: true }) required = false;\n\n /** The native form validation message when the radio group is required */\n @Prop({ reflect: true }) requiredValidationMessage?: string;\n\n /** A string representing the value of the radio. */\n @Prop({ reflect: true, mutable: true }) value?: string;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('debounceTime')\n handleDebounceTimeChange() {\n const MIN_DEBOUNCE_TIME = 0;\n const normalizedDebounceTime = Math.max(MIN_DEBOUNCE_TIME, this.debounceTime);\n\n if (normalizedDebounceTime !== this.debounceTime) {\n this.debounceTime = normalizedDebounceTime;\n }\n\n this.debouncedBqChange?.cancel();\n this.debouncedBqChange = debounce((event: { value: string; target: HTMLBqRadioElement }): void => {\n this.bqChange?.emit(event);\n }, this.debounceTime);\n }\n\n @Watch('disabled')\n handleDisabledChange() {\n this.tabIndex = this.disabled ? '-1' : '0';\n this.updateRadioTabIndexes();\n }\n\n @Watch('backgroundOnHover')\n @Watch('disabled')\n @Watch('name')\n @Watch('required')\n handleGroupProperties() {\n this.updateRadioProperties();\n }\n\n @Watch('orientation')\n checkPropValues() {\n validatePropValue(RADIO_GROUP_ORIENTATION, 'vertical', this.el, 'orientation');\n }\n\n @Watch('required')\n handleRequiredChange() {\n this.updateFormValidity();\n }\n\n @Watch('value')\n handleValueChange() {\n this.updateRadioProperties();\n this.updateFormValidity();\n\n // Find and update the checked radio based on the new value\n const newCheckedRadio = this.cachedRadioElements.find((radio) => radio.value === this.value);\n if (newCheckedRadio) {\n this.checkedRadio = newCheckedRadio;\n this.debouncedBqChange?.({ value: this.value, target: newCheckedRadio });\n } else {\n this.checkedRadio = undefined;\n }\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Handler to be called when the radio state changes */\n @Event() bqChange: EventEmitter<{ value: string; target: HTMLBqRadioElement }>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.initialValue = this.value;\n this.handleDebounceTimeChange();\n this.internals.setFormValue(this.value ?? null);\n\n this.updateCustomStates();\n this.updateFormValidity();\n }\n\n disconnectedCallback() {\n this.debouncedBqChange?.cancel();\n }\n\n formAssociatedCallback() {\n this.internals.setFormValue(this.value ?? null);\n this.updateFormValidity();\n }\n\n formResetCallback() {\n this.value = this.initialValue;\n this.internals.setFormValue(this.value ?? null);\n this.updateFormValidity();\n this.updateCustomStates();\n }\n\n // Listeners\n // ==============\n\n @Listen('bqClick', { capture: true })\n async onBqClick(event: CustomEvent<{ value: string; target: HTMLBqRadioElement }>) {\n if (!isEventTargetChildOfElement(event, this.el)) return;\n\n const { target, value } = event.detail;\n if (value === this.value) return;\n\n requestAnimationFrame(() => {\n if (event.defaultPrevented) return;\n this.updateRadioSelection(target);\n });\n }\n\n @Listen('bqKeyDown')\n onBqKeyDown(event: CustomEvent<{ key: string; target: HTMLBqRadioElement }>) {\n if (!isEventTargetChildOfElement(event, this.el)) return;\n\n const direction: Direction | undefined = KEY_MAP[event.detail.key];\n if (!direction) return;\n\n this.focusRadioInputSibling(event.detail.target, direction);\n }\n\n @Listen('bqFocus', { capture: true })\n onBqFocus(event: CustomEvent<HTMLBqRadioElement>) {\n if (!isEventTargetChildOfElement(event, this.el)) return;\n\n const shouldStopPropagation = this.focusedBqRadio && event.detail !== this.focusedBqRadio;\n if (shouldStopPropagation) {\n event.stopPropagation();\n }\n\n this.focusedBqRadio = event.detail;\n }\n\n @Listen('bqBlur', { capture: true })\n onBqBlur(event: CustomEvent<HTMLBqRadioElement>) {\n if (!isEventTargetChildOfElement(event, this.el)) return;\n\n const shouldStopPropagation = this.focusedBqRadio && event.detail !== this.focusedBqRadio;\n if (shouldStopPropagation) {\n event.stopPropagation();\n return;\n }\n\n this.focusedBqRadio = null;\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 /**\n * Initializes the radio elements set by querying the host element for `ds-radio` elements.\n * This is done to avoid re-querying the host element for radio elements on every change.\n */\n private initializeRadioElements = (): void => {\n this.radioElementsSet.clear();\n this.el.querySelectorAll('bq-radio').forEach((radio) => this.radioElementsSet.add(radio));\n // Caching the radio elements in an array for faster access and iteration\n this.cachedRadioElements = Array.from(this.radioElementsSet);\n // Set the tabIndex of the host element to -1 if there are no radio elements or the group is disabled, otherwise set it to 0\n this.tabIndex = this.cachedRadioElements.length === 0 || this.disabled ? '-1' : '0';\n // Set initial tabIndex for all radios\n this.updateRadioTabIndexes();\n };\n\n /**\n * Sets tabIndex for all radio elements based on current state\n * Handles all scenarios: disabled state, checked radio, value matching, fallback to first\n */\n private updateRadioTabIndexes = (): void => {\n if (this.cachedRadioElements.length === 0) return;\n\n // If disabled, all radios get tabIndex -1\n if (this.disabled) {\n this.cachedRadioElements.forEach((radio) => (radio.tabIndex = -1));\n return;\n }\n\n // Find which radio should be focusable\n let focusableRadio: HTMLBqRadioElement | undefined;\n\n // Priority 1: Currently checked radio\n focusableRadio = this.cachedRadioElements.find((radio) => radio.checked);\n\n // Priority 2: Radio matching current value\n if (!focusableRadio && this.value) {\n focusableRadio = this.cachedRadioElements.find((radio) => radio.value === this.value);\n }\n\n // Priority 3: First enabled radio (fallback)\n if (!focusableRadio) {\n focusableRadio = this.cachedRadioElements.find((radio) => !radio.disabled);\n }\n\n // Apply tabIndex to all radios\n this.cachedRadioElements.forEach((radio) => {\n radio.tabIndex = radio === focusableRadio ? 0 : -1;\n });\n };\n\n /**\n * Updates the radio selection and focus.\n * @param target - The radio element to update.\n */\n private updateRadioSelection = (target: HTMLBqRadioElement): void => {\n // Only uncheck the previously checked radio if it's different\n if (this.checkedRadio && this.checkedRadio !== target) {\n this.checkedRadio.checked = false;\n this.checkedRadio.tabIndex = -1;\n }\n\n target.checked = true;\n target.tabIndex = 0;\n target.vFocus();\n\n this.checkedRadio = target;\n this.value = target.value;\n this.internals?.setFormValue(this.value ?? null);\n\n this.updateRadioTabIndexes();\n };\n\n /**\n * Synchronizes properties of child radio elements with the group's state.\n */\n private updateRadioProperties = (): void => {\n if (this.cachedRadioElements.length === 0) return;\n\n const { backgroundOnHover, disabled, name, required, value } = this;\n\n for (const radio of this.cachedRadioElements) {\n radio.backgroundOnHover = backgroundOnHover;\n radio.checked = value === radio.value;\n // This will allows us to force all radio elements to be disabled\n // while keeping the disabled state of the radio element if it was set individually by the user\n radio.forceDisabled = disabled;\n radio.name = name;\n radio.required = required;\n }\n };\n\n /**\n * Focuses the next/previous radio element in the group based on the current target.\n * Handles circular navigation and skips disabled elements.\n * @param currentTarget - The currently focused radio element\n * @param direction - The navigation direction ('forward' | 'backward')\n */\n private focusRadioInputSibling = (currentTarget: HTMLBqRadioElement, direction: Direction): void => {\n // If there is none or only one radio element, there will be no sibling to focus\n if (this.cachedRadioElements.length <= 1) return;\n\n const currentIndex = this.cachedRadioElements.indexOf(currentTarget);\n // If the index of the radio element target is not found, it means that it's not part of the group\n if (currentIndex === -1) return;\n\n const nextElement = getNextElement(this.cachedRadioElements, currentIndex, direction);\n this.updateRadioSelection(nextElement);\n };\n\n private updateFormValidity = async (): Promise<void> => {\n const { internals, required, requiredValidationMessage, value } = this;\n // Clear the validity state\n internals?.states.clear();\n\n if (!required || (required && !isNil(value))) {\n // If the radio group is not required or has a value, set the validity state to valid\n internals?.states.add('valid');\n internals?.setValidity({});\n return;\n }\n\n const firstRadio = this.cachedRadioElements[0];\n if (!firstRadio) return;\n // If the radio group is required and has no value, set the validity state to invalid\n internals?.states.add('invalid');\n // We need to pass the native input element to the setValidity method as anchor element\n internals?.setValidity(\n { valueMissing: true },\n requiredValidationMessage ?? 'Please select an option',\n await firstRadio.getNativeInput(),\n );\n };\n\n /**\n * Updates the custom states based on the component properties.\n * The custom states can be used to style the component based on the component properties.\n * The custom states are `disabled`, based on the component properties.\n */\n private updateCustomStates = (): void => {\n const states = new Set<string>();\n\n if (this.disabled) states.add('disabled');\n if (this.orientation) states.add(this.orientation);\n\n // Update states\n this.internals?.states.clear();\n states.forEach((state) => this.internals?.states.add(state));\n };\n\n private handleSlotChange = (): void => {\n this.initializeRadioElements();\n this.updateRadioProperties();\n };\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <Host tabindex={this.tabIndex}>\n <fieldset\n class={{ 'bq-radio-group': true, 'has-fieldset': this.fieldset }}\n aria-controls=\"bq-radiogroup\"\n aria-labelledby=\"bq-radio-group__label\"\n aria-disabled={this.disabled}\n aria-required={this.required}\n disabled={this.disabled}\n role=\"radiogroup\"\n part=\"base\"\n >\n <legend part=\"label\">\n <slot id=\"bq-radiogroup__label\" name=\"label\" />\n </legend>\n <div class={`bq-radio-group--${this.orientation}`} part=\"group\">\n <slot id=\"bq-radiogroup\" onSlotchange={this.handleSlotChange} />\n </div>\n </fieldset>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}