@riverty/web-components 6.3.0 → 6.3.1

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 (397) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cjs/app-globals-V2Kpy_OQ.js +5 -0
  3. package/dist/cjs/focusable-Oll_rmtP.js +28 -0
  4. package/dist/cjs/formData-B2DZyLxP.js +44 -0
  5. package/dist/cjs/index-BnETQtSf.js +1834 -0
  6. package/dist/cjs/index.cjs.js +37 -0
  7. package/dist/cjs/loader.cjs.js +13 -0
  8. package/dist/cjs/r-accordion-panel.cjs.entry.js +24 -0
  9. package/dist/cjs/r-accordion-section.cjs.entry.js +125 -0
  10. package/dist/cjs/r-accordion-trigger.cjs.entry.js +93 -0
  11. package/dist/cjs/r-accordion.cjs.entry.js +20 -0
  12. package/dist/cjs/r-alert.cjs.entry.js +146 -0
  13. package/dist/cjs/r-badge.cjs.entry.js +41 -0
  14. package/dist/cjs/r-button.cjs.entry.js +149 -0
  15. package/dist/cjs/r-checkbox-group.cjs.entry.js +237 -0
  16. package/dist/cjs/r-checkbox.cjs.entry.js +274 -0
  17. package/dist/cjs/r-design-system-devtools.cjs.entry.js +31 -0
  18. package/dist/cjs/r-dialog.cjs.entry.js +107 -0
  19. package/dist/cjs/r-hint_2.cjs.entry.js +50 -0
  20. package/dist/cjs/r-icon-button_2.cjs.entry.js +492 -0
  21. package/dist/cjs/r-icon.cjs.entry.js +284 -0
  22. package/dist/cjs/r-illustration.cjs.entry.js +396 -0
  23. package/dist/cjs/r-input-code.cjs.entry.js +437 -0
  24. package/dist/cjs/r-input-date.cjs.entry.js +524 -0
  25. package/dist/cjs/r-input-password.cjs.entry.js +270 -0
  26. package/dist/cjs/r-input-phone-number.cjs.entry.js +2525 -0
  27. package/dist/cjs/r-input.cjs.entry.js +618 -0
  28. package/dist/cjs/r-list-item.cjs.entry.js +109 -0
  29. package/dist/cjs/r-pagination.cjs.entry.js +320 -0
  30. package/dist/cjs/r-panel.cjs.entry.js +184 -0
  31. package/dist/cjs/r-popover-action.cjs.entry.js +80 -0
  32. package/dist/cjs/r-popover-content.cjs.entry.js +62 -0
  33. package/dist/cjs/r-popover-headline.cjs.entry.js +28 -0
  34. package/dist/cjs/r-popover-trigger.cjs.entry.js +70 -0
  35. package/dist/cjs/r-popover.cjs.entry.js +347 -0
  36. package/dist/cjs/r-progress-bar.cjs.entry.js +25 -0
  37. package/dist/cjs/r-radio-button-description.cjs.entry.js +18 -0
  38. package/dist/cjs/r-radio-button-leading.cjs.entry.js +18 -0
  39. package/dist/cjs/r-radio-button-title.cjs.entry.js +18 -0
  40. package/dist/cjs/r-radio-button-trailing.cjs.entry.js +18 -0
  41. package/dist/cjs/r-radio-button.cjs.entry.js +139 -0
  42. package/dist/cjs/r-radio-group.cjs.entry.js +428 -0
  43. package/dist/cjs/r-select-option.cjs.entry.js +130 -0
  44. package/dist/cjs/r-select.cjs.entry.js +1107 -0
  45. package/dist/cjs/r-skip-link.cjs.entry.js +19 -0
  46. package/dist/cjs/r-stepper-item.cjs.entry.js +42 -0
  47. package/dist/cjs/r-stepper.cjs.entry.js +99 -0
  48. package/dist/cjs/r-tab-panel.cjs.entry.js +26 -0
  49. package/dist/cjs/r-tab.cjs.entry.js +62 -0
  50. package/dist/cjs/r-tabs-list.cjs.entry.js +175 -0
  51. package/dist/cjs/r-tabs.cjs.entry.js +277 -0
  52. package/dist/cjs/r-textarea.cjs.entry.js +270 -0
  53. package/dist/cjs/r-toast-group.cjs.entry.js +46 -0
  54. package/dist/cjs/r-toast.cjs.entry.js +314 -0
  55. package/dist/cjs/style-observer-D9zSP9wP.js +1118 -0
  56. package/dist/cjs/theming-NqxjhVJS.js +109 -0
  57. package/dist/cjs/web-components.cjs.js +25 -0
  58. package/dist/collection/collection-manifest.json +60 -0
  59. package/dist/collection/components/accordion/accordion.css +24 -0
  60. package/dist/collection/components/accordion/accordion.js +90 -0
  61. package/dist/collection/components/accordion/exports.js +1 -0
  62. package/dist/collection/components/accordion-panel/accordion-panel.css +50 -0
  63. package/dist/collection/components/accordion-panel/accordion-panel.js +86 -0
  64. package/dist/collection/components/accordion-section/accordion-section.css +27 -0
  65. package/dist/collection/components/accordion-section/accordion-section.js +235 -0
  66. package/dist/collection/components/accordion-trigger/accordion-trigger.css +93 -0
  67. package/dist/collection/components/accordion-trigger/accordion-trigger.js +220 -0
  68. package/dist/collection/components/alert/alert.css +120 -0
  69. package/dist/collection/components/alert/alert.js +526 -0
  70. package/dist/collection/components/alert/exports.js +2 -0
  71. package/dist/collection/components/badge/badge.css +62 -0
  72. package/dist/collection/components/badge/badge.js +124 -0
  73. package/dist/collection/components/badge/exports.js +1 -0
  74. package/dist/collection/components/button/button.css +180 -0
  75. package/dist/collection/components/button/button.js +510 -0
  76. package/dist/collection/components/button/exports.js +5 -0
  77. package/dist/collection/components/checkbox/checkbox.css +116 -0
  78. package/dist/collection/components/checkbox/checkbox.js +803 -0
  79. package/dist/collection/components/checkbox-group/checkbox-group.css +48 -0
  80. package/dist/collection/components/checkbox-group/checkbox-group.js +744 -0
  81. package/dist/collection/components/design-system-devtools/design-system-devtools.js +59 -0
  82. package/dist/collection/components/dialog/dialog.css +125 -0
  83. package/dist/collection/components/dialog/dialog.js +345 -0
  84. package/dist/collection/components/dialog/exports.js +9 -0
  85. package/dist/collection/components/hint/exports.js +1 -0
  86. package/dist/collection/components/hint/hint.css +63 -0
  87. package/dist/collection/components/hint/hint.js +114 -0
  88. package/dist/collection/components/icon/all-kit.js +2 -0
  89. package/dist/collection/components/icon/data.js +90 -0
  90. package/dist/collection/components/icon/exports.js +7 -0
  91. package/dist/collection/components/icon/icon.css +105 -0
  92. package/dist/collection/components/icon/icon.js +379 -0
  93. package/dist/collection/components/icon/riverty-kit.js +2 -0
  94. package/dist/collection/components/icon-button/icon-button.css +105 -0
  95. package/dist/collection/components/icon-button/icon-button.js +343 -0
  96. package/dist/collection/components/illustration/data.js +112 -0
  97. package/dist/collection/components/illustration/exports.js +3 -0
  98. package/dist/collection/components/illustration/illustration.css +52 -0
  99. package/dist/collection/components/illustration/illustration.js +540 -0
  100. package/dist/collection/components/illustration/illustrations-ui-kit.js +2 -0
  101. package/dist/collection/components/input/exports.js +62 -0
  102. package/dist/collection/components/input/input.css +186 -0
  103. package/dist/collection/components/input/input.js +1861 -0
  104. package/dist/collection/components/input-code/exports.js +2 -0
  105. package/dist/collection/components/input-code/input-code.css +127 -0
  106. package/dist/collection/components/input-code/input-code.js +1165 -0
  107. package/dist/collection/components/input-date/exports.js +1 -0
  108. package/dist/collection/components/input-date/input-date.css +148 -0
  109. package/dist/collection/components/input-date/input-date.js +1254 -0
  110. package/dist/collection/components/input-password/exports.js +1 -0
  111. package/dist/collection/components/input-password/input-password.css +25 -0
  112. package/dist/collection/components/input-password/input-password.js +1077 -0
  113. package/dist/collection/components/input-phone-number/input-phone-number.css +61 -0
  114. package/dist/collection/components/input-phone-number/input-phone-number.js +893 -0
  115. package/dist/collection/components/label/label.css +38 -0
  116. package/dist/collection/components/label/label.js +47 -0
  117. package/dist/collection/components/list-item/list-item/exports.js +2 -0
  118. package/dist/collection/components/list-item/list-item/list-item.css +199 -0
  119. package/dist/collection/components/list-item/list-item/list-item.js +467 -0
  120. package/dist/collection/components/pagination/exports.js +3 -0
  121. package/dist/collection/components/pagination/pagination.css +118 -0
  122. package/dist/collection/components/pagination/pagination.js +814 -0
  123. package/dist/collection/components/panel/exports.js +1 -0
  124. package/dist/collection/components/panel/panel.css +192 -0
  125. package/dist/collection/components/panel/panel.js +473 -0
  126. package/dist/collection/components/popover/exports.js +3 -0
  127. package/dist/collection/components/popover/popover.css +251 -0
  128. package/dist/collection/components/popover/popover.js +741 -0
  129. package/dist/collection/components/popover-action/popover-action.css +21 -0
  130. package/dist/collection/components/popover-action/popover-action.js +150 -0
  131. package/dist/collection/components/popover-content/popover-content.css +9 -0
  132. package/dist/collection/components/popover-content/popover-content.js +130 -0
  133. package/dist/collection/components/popover-headline/popover-headline.css +7 -0
  134. package/dist/collection/components/popover-headline/popover-headline.js +28 -0
  135. package/dist/collection/components/popover-trigger/exports.js +1 -0
  136. package/dist/collection/components/popover-trigger/popover-trigger.css +4 -0
  137. package/dist/collection/components/popover-trigger/popover-trigger.js +163 -0
  138. package/dist/collection/components/progress-bar/progress-bar.css +41 -0
  139. package/dist/collection/components/progress-bar/progress-bar.js +71 -0
  140. package/dist/collection/components/radio-button/radio-button.css +126 -0
  141. package/dist/collection/components/radio-button/radio-button.js +559 -0
  142. package/dist/collection/components/radio-button-description/radio-button-description.css +5 -0
  143. package/dist/collection/components/radio-button-description/radio-button-description.js +22 -0
  144. package/dist/collection/components/radio-button-leading/radio-button-leading.css +3 -0
  145. package/dist/collection/components/radio-button-leading/radio-button-leading.js +22 -0
  146. package/dist/collection/components/radio-button-title/radio-button-title.css +8 -0
  147. package/dist/collection/components/radio-button-title/radio-button-title.js +22 -0
  148. package/dist/collection/components/radio-button-trailing/radio-button-trailing.css +6 -0
  149. package/dist/collection/components/radio-button-trailing/radio-button-trailing.js +22 -0
  150. package/dist/collection/components/radio-group/exports.js +1 -0
  151. package/dist/collection/components/radio-group/radio-group.css +65 -0
  152. package/dist/collection/components/radio-group/radio-group.js +1023 -0
  153. package/dist/collection/components/select/exports.js +1 -0
  154. package/dist/collection/components/select/select.css +247 -0
  155. package/dist/collection/components/select/select.js +2038 -0
  156. package/dist/collection/components/select-option/select-option.css +93 -0
  157. package/dist/collection/components/select-option/select-option.js +459 -0
  158. package/dist/collection/components/skip-link/exports.js +1 -0
  159. package/dist/collection/components/skip-link/skip-link.css +37 -0
  160. package/dist/collection/components/skip-link/skip-link.js +52 -0
  161. package/dist/collection/components/stepper/stepper.css +25 -0
  162. package/dist/collection/components/stepper/stepper.js +216 -0
  163. package/dist/collection/components/stepper-item/stepper-item.css +62 -0
  164. package/dist/collection/components/stepper-item/stepper-item.js +171 -0
  165. package/dist/collection/components/tab/tab.css +81 -0
  166. package/dist/collection/components/tab/tab.js +169 -0
  167. package/dist/collection/components/tab-panel/tab-panel.css +19 -0
  168. package/dist/collection/components/tab-panel/tab-panel.js +72 -0
  169. package/dist/collection/components/tabs/tabs.css +4 -0
  170. package/dist/collection/components/tabs/tabs.js +345 -0
  171. package/dist/collection/components/tabs-list/exports.js +2 -0
  172. package/dist/collection/components/tabs-list/tabs-list.css +58 -0
  173. package/dist/collection/components/tabs-list/tabs-list.js +294 -0
  174. package/dist/collection/components/textarea/exports.js +8 -0
  175. package/dist/collection/components/textarea/textarea.css +148 -0
  176. package/dist/collection/components/textarea/textarea.js +1055 -0
  177. package/dist/collection/components/toast/exports.js +3 -0
  178. package/dist/collection/components/toast/toast.css +179 -0
  179. package/dist/collection/components/toast/toast.js +820 -0
  180. package/dist/collection/components/toast-group/exports.js +1 -0
  181. package/dist/collection/components/toast-group/toast-group.css +37 -0
  182. package/dist/collection/components/toast-group/toast-group.js +49 -0
  183. package/dist/collection/components/tooltip/exports.js +3 -0
  184. package/dist/collection/components/tooltip/tooltip.css +77 -0
  185. package/dist/collection/components/tooltip/tooltip.js +525 -0
  186. package/dist/collection/index.js +2 -0
  187. package/dist/collection/utils/focusable.js +24 -0
  188. package/dist/collection/utils/formData.js +40 -0
  189. package/dist/collection/utils/theming.js +103 -0
  190. package/dist/collection/utils/version-checker.js +33 -0
  191. package/dist/esm/app-globals-DQuL1Twl.js +3 -0
  192. package/dist/esm/focusable-ky1yonnS.js +26 -0
  193. package/dist/esm/formData-DvLT8-y3.js +42 -0
  194. package/dist/esm/index-CTxpqopm.js +1806 -0
  195. package/dist/esm/index.js +35 -0
  196. package/dist/esm/loader.js +11 -0
  197. package/dist/esm/r-accordion-panel.entry.js +22 -0
  198. package/dist/esm/r-accordion-section.entry.js +123 -0
  199. package/dist/esm/r-accordion-trigger.entry.js +91 -0
  200. package/dist/esm/r-accordion.entry.js +18 -0
  201. package/dist/esm/r-alert.entry.js +144 -0
  202. package/dist/esm/r-badge.entry.js +39 -0
  203. package/dist/esm/r-button.entry.js +147 -0
  204. package/dist/esm/r-checkbox-group.entry.js +235 -0
  205. package/dist/esm/r-checkbox.entry.js +272 -0
  206. package/dist/esm/r-design-system-devtools.entry.js +29 -0
  207. package/dist/esm/r-dialog.entry.js +105 -0
  208. package/dist/esm/r-hint_2.entry.js +47 -0
  209. package/dist/esm/r-icon-button_2.entry.js +489 -0
  210. package/dist/esm/r-icon.entry.js +282 -0
  211. package/dist/esm/r-illustration.entry.js +394 -0
  212. package/dist/esm/r-input-code.entry.js +435 -0
  213. package/dist/esm/r-input-date.entry.js +522 -0
  214. package/dist/esm/r-input-password.entry.js +268 -0
  215. package/dist/esm/r-input-phone-number.entry.js +2523 -0
  216. package/dist/esm/r-input.entry.js +616 -0
  217. package/dist/esm/r-list-item.entry.js +107 -0
  218. package/dist/esm/r-pagination.entry.js +318 -0
  219. package/dist/esm/r-panel.entry.js +182 -0
  220. package/dist/esm/r-popover-action.entry.js +78 -0
  221. package/dist/esm/r-popover-content.entry.js +60 -0
  222. package/dist/esm/r-popover-headline.entry.js +26 -0
  223. package/dist/esm/r-popover-trigger.entry.js +68 -0
  224. package/dist/esm/r-popover.entry.js +345 -0
  225. package/dist/esm/r-progress-bar.entry.js +23 -0
  226. package/dist/esm/r-radio-button-description.entry.js +16 -0
  227. package/dist/esm/r-radio-button-leading.entry.js +16 -0
  228. package/dist/esm/r-radio-button-title.entry.js +16 -0
  229. package/dist/esm/r-radio-button-trailing.entry.js +16 -0
  230. package/dist/esm/r-radio-button.entry.js +137 -0
  231. package/dist/esm/r-radio-group.entry.js +426 -0
  232. package/dist/esm/r-select-option.entry.js +128 -0
  233. package/dist/esm/r-select.entry.js +1105 -0
  234. package/dist/esm/r-skip-link.entry.js +17 -0
  235. package/dist/esm/r-stepper-item.entry.js +40 -0
  236. package/dist/esm/r-stepper.entry.js +97 -0
  237. package/dist/esm/r-tab-panel.entry.js +24 -0
  238. package/dist/esm/r-tab.entry.js +60 -0
  239. package/dist/esm/r-tabs-list.entry.js +173 -0
  240. package/dist/esm/r-tabs.entry.js +275 -0
  241. package/dist/esm/r-textarea.entry.js +268 -0
  242. package/dist/esm/r-toast-group.entry.js +44 -0
  243. package/dist/esm/r-toast.entry.js +312 -0
  244. package/dist/esm/style-observer-4Uv3PpKT.js +1116 -0
  245. package/dist/esm/theming-DD2IrjpG.js +106 -0
  246. package/dist/esm/web-components.js +21 -0
  247. package/dist/index.cjs.js +1 -0
  248. package/dist/index.js +1 -0
  249. package/dist/types/components/accordion/accordion.d.ts +27 -0
  250. package/dist/types/components/accordion/exports.d.ts +2 -0
  251. package/dist/types/components/accordion-panel/accordion-panel.d.ts +10 -0
  252. package/dist/types/components/accordion-section/accordion-section.d.ts +36 -0
  253. package/dist/types/components/accordion-trigger/accordion-trigger.d.ts +33 -0
  254. package/dist/types/components/alert/alert.d.ts +67 -0
  255. package/dist/types/components/alert/exports.d.ts +4 -0
  256. package/dist/types/components/badge/badge.d.ts +26 -0
  257. package/dist/types/components/badge/exports.d.ts +2 -0
  258. package/dist/types/components/button/button.d.ts +89 -0
  259. package/dist/types/components/button/exports.d.ts +10 -0
  260. package/dist/types/components/checkbox/checkbox.d.ts +138 -0
  261. package/dist/types/components/checkbox-group/checkbox-group.d.ts +124 -0
  262. package/dist/types/components/design-system-devtools/design-system-devtools.d.ts +15 -0
  263. package/dist/types/components/dialog/dialog.d.ts +69 -0
  264. package/dist/types/components/dialog/exports.d.ts +10 -0
  265. package/dist/types/components/hint/exports.d.ts +2 -0
  266. package/dist/types/components/hint/hint.d.ts +20 -0
  267. package/dist/types/components/icon/all-kit.d.ts +2890 -0
  268. package/dist/types/components/icon/data.d.ts +145 -0
  269. package/dist/types/components/icon/exports.d.ts +152 -0
  270. package/dist/types/components/icon/icon.d.ts +37 -0
  271. package/dist/types/components/icon/riverty-kit.d.ts +139 -0
  272. package/dist/types/components/icon-button/icon-button.d.ts +69 -0
  273. package/dist/types/components/illustration/data.d.ts +52 -0
  274. package/dist/types/components/illustration/exports.d.ts +23 -0
  275. package/dist/types/components/illustration/illustration.d.ts +51 -0
  276. package/dist/types/components/illustration/illustrations-ui-kit.d.ts +21 -0
  277. package/dist/types/components/input/exports.d.ts +55 -0
  278. package/dist/types/components/input/input.d.ts +365 -0
  279. package/dist/types/components/input-code/exports.d.ts +4 -0
  280. package/dist/types/components/input-code/input-code.d.ts +177 -0
  281. package/dist/types/components/input-date/exports.d.ts +5 -0
  282. package/dist/types/components/input-date/input-date.d.ts +174 -0
  283. package/dist/types/components/input-password/exports.d.ts +1 -0
  284. package/dist/types/components/input-password/input-password.d.ts +186 -0
  285. package/dist/types/components/input-phone-number/input-phone-number.d.ts +130 -0
  286. package/dist/types/components/label/label.d.ts +9 -0
  287. package/dist/types/components/list-item/list-item/exports.d.ts +4 -0
  288. package/dist/types/components/list-item/list-item/list-item.d.ts +61 -0
  289. package/dist/types/components/pagination/exports.d.ts +6 -0
  290. package/dist/types/components/pagination/pagination.d.ts +140 -0
  291. package/dist/types/components/panel/exports.d.ts +2 -0
  292. package/dist/types/components/panel/panel.d.ts +56 -0
  293. package/dist/types/components/popover/exports.d.ts +6 -0
  294. package/dist/types/components/popover/popover.d.ts +131 -0
  295. package/dist/types/components/popover-action/popover-action.d.ts +24 -0
  296. package/dist/types/components/popover-content/popover-content.d.ts +22 -0
  297. package/dist/types/components/popover-headline/popover-headline.d.ts +6 -0
  298. package/dist/types/components/popover-trigger/exports.d.ts +2 -0
  299. package/dist/types/components/popover-trigger/popover-trigger.d.ts +31 -0
  300. package/dist/types/components/progress-bar/progress-bar.d.ts +10 -0
  301. package/dist/types/components/radio-button/radio-button.d.ts +92 -0
  302. package/dist/types/components/radio-button-description/radio-button-description.d.ts +8 -0
  303. package/dist/types/components/radio-button-leading/radio-button-leading.d.ts +8 -0
  304. package/dist/types/components/radio-button-title/radio-button-title.d.ts +8 -0
  305. package/dist/types/components/radio-button-trailing/radio-button-trailing.d.ts +8 -0
  306. package/dist/types/components/radio-group/exports.d.ts +2 -0
  307. package/dist/types/components/radio-group/radio-group.d.ts +179 -0
  308. package/dist/types/components/select/exports.d.ts +2 -0
  309. package/dist/types/components/select/select.d.ts +319 -0
  310. package/dist/types/components/select-option/select-option.d.ts +113 -0
  311. package/dist/types/components/skip-link/exports.d.ts +2 -0
  312. package/dist/types/components/skip-link/skip-link.d.ts +6 -0
  313. package/dist/types/components/stepper/stepper.d.ts +22 -0
  314. package/dist/types/components/stepper-item/stepper-item.d.ts +23 -0
  315. package/dist/types/components/tab/tab.d.ts +23 -0
  316. package/dist/types/components/tab-panel/tab-panel.d.ts +7 -0
  317. package/dist/types/components/tabs/tabs.d.ts +49 -0
  318. package/dist/types/components/tabs-list/exports.d.ts +4 -0
  319. package/dist/types/components/tabs-list/tabs-list.d.ts +41 -0
  320. package/dist/types/components/textarea/exports.d.ts +2 -0
  321. package/dist/types/components/textarea/textarea.d.ts +158 -0
  322. package/dist/types/components/toast/exports.d.ts +6 -0
  323. package/dist/types/components/toast/toast.d.ts +146 -0
  324. package/dist/types/components/toast-group/exports.d.ts +2 -0
  325. package/dist/types/components/toast-group/toast-group.d.ts +9 -0
  326. package/dist/types/components/tooltip/exports.d.ts +6 -0
  327. package/dist/types/components/tooltip/tooltip.d.ts +132 -0
  328. package/dist/types/components.d.ts +6347 -0
  329. package/dist/types/index.d.ts +1 -0
  330. package/dist/types/stencil-public-runtime.d.ts +1732 -0
  331. package/dist/types/types/jsx-shim.d.ts +13 -0
  332. package/dist/types/types/style-observer.d.ts +20 -0
  333. package/dist/types/utils/focusable.d.ts +1 -0
  334. package/dist/types/utils/formData.d.ts +1 -0
  335. package/dist/types/utils/theming.d.ts +15 -0
  336. package/dist/types/utils/version-checker.d.ts +1 -0
  337. package/dist/web-components/index.esm.js +1 -0
  338. package/dist/web-components/p-01aefcf0.entry.js +1 -0
  339. package/dist/web-components/p-05cb55db.entry.js +1 -0
  340. package/dist/web-components/p-0a34d33b.entry.js +1 -0
  341. package/dist/web-components/p-11b22309.entry.js +1 -0
  342. package/dist/web-components/p-2d878934.entry.js +1 -0
  343. package/dist/web-components/p-325dbedf.entry.js +1 -0
  344. package/dist/web-components/p-34b9457b.entry.js +1 -0
  345. package/dist/web-components/p-36abd05a.entry.js +1 -0
  346. package/dist/web-components/p-386d1ef9.entry.js +1 -0
  347. package/dist/web-components/p-3d67b77b.entry.js +1 -0
  348. package/dist/web-components/p-4Uv3PpKT.js +1 -0
  349. package/dist/web-components/p-4b12fbc0.entry.js +1 -0
  350. package/dist/web-components/p-52f7b505.entry.js +1 -0
  351. package/dist/web-components/p-55600d47.entry.js +1 -0
  352. package/dist/web-components/p-57ebc474.entry.js +1 -0
  353. package/dist/web-components/p-57edf7f4.entry.js +1 -0
  354. package/dist/web-components/p-69a24fe2.entry.js +1 -0
  355. package/dist/web-components/p-6d92648c.entry.js +1 -0
  356. package/dist/web-components/p-75052597.entry.js +1 -0
  357. package/dist/web-components/p-7b2c5b63.entry.js +1 -0
  358. package/dist/web-components/p-7bf463ff.entry.js +1 -0
  359. package/dist/web-components/p-838e43d4.entry.js +1 -0
  360. package/dist/web-components/p-8c16d038.entry.js +1 -0
  361. package/dist/web-components/p-8f8313de.entry.js +1 -0
  362. package/dist/web-components/p-9026d5a2.entry.js +1 -0
  363. package/dist/web-components/p-95396b5c.entry.js +1 -0
  364. package/dist/web-components/p-9c31c7c4.entry.js +1 -0
  365. package/dist/web-components/p-9c415b9c.entry.js +1 -0
  366. package/dist/web-components/p-9f583ed1.entry.js +1 -0
  367. package/dist/web-components/p-B9rsR6cQ.js +1 -0
  368. package/dist/web-components/p-CTxpqopm.js +2 -0
  369. package/dist/web-components/p-DQuL1Twl.js +1 -0
  370. package/dist/web-components/p-DvLT8-y3.js +1 -0
  371. package/dist/web-components/p-b303b2cc.entry.js +1 -0
  372. package/dist/web-components/p-b8df041d.entry.js +1 -0
  373. package/dist/web-components/p-bc30844f.entry.js +1 -0
  374. package/dist/web-components/p-c4a77a65.entry.js +1 -0
  375. package/dist/web-components/p-c549addf.entry.js +1 -0
  376. package/dist/web-components/p-c65df19f.entry.js +1 -0
  377. package/dist/web-components/p-c80a5541.entry.js +1 -0
  378. package/dist/web-components/p-c96ee61a.entry.js +1 -0
  379. package/dist/web-components/p-cf3f044d.entry.js +1 -0
  380. package/dist/web-components/p-d1412932.entry.js +1 -0
  381. package/dist/web-components/p-d9778cfa.entry.js +1 -0
  382. package/dist/web-components/p-dbe4ccb8.entry.js +1 -0
  383. package/dist/web-components/p-ded50850.entry.js +1 -0
  384. package/dist/web-components/p-e5be895b.entry.js +1 -0
  385. package/dist/web-components/p-e6b34c1e.entry.js +1 -0
  386. package/dist/web-components/p-ec3c4800.entry.js +1 -0
  387. package/dist/web-components/p-f670fd87.entry.js +1 -0
  388. package/dist/web-components/p-f867e4c3.entry.js +1 -0
  389. package/dist/web-components/p-ff6b1b8f.entry.js +1 -0
  390. package/dist/web-components/p-ky1yonnS.js +1 -0
  391. package/dist/web-components/web-components.esm.js +1 -0
  392. package/loader/cdn.js +1 -0
  393. package/loader/index.cjs.js +1 -0
  394. package/loader/index.d.ts +24 -0
  395. package/loader/index.es2017.js +1 -0
  396. package/loader/index.js +2 -0
  397. package/package.json +1 -1
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-BnETQtSf.js');
4
+
5
+ const radioButtonLeadingCss = ":host{color:var(--r-icon-soft, #686868)}";
6
+
7
+ const RadioButtonLeading = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ }
11
+ render() {
12
+ return (index.h(index.Host, { key: 'fcfa2b1df999df8a168bd0255ad7855dce28485c', slot: "leading" }, index.h("div", { key: '2d0e091a66adb24576f5e4a2f0959b8c83dc2017', class: "r-radio-button-leading", style: { display: 'contents' } }, index.h("slot", { key: 'cebdf0262db3ce092efbe2e8e830aa54903aa59e' }))));
13
+ }
14
+ get host() { return index.getElement(this); }
15
+ };
16
+ RadioButtonLeading.style = radioButtonLeadingCss;
17
+
18
+ exports.r_radio_button_leading = RadioButtonLeading;
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-BnETQtSf.js');
4
+
5
+ const radioButtonTitleCss = ":host{font-weight:var(--r-font-weight-semibold, 600);font-size:var(--r-font-size-400, 1rem);line-height:var(--r-line-height-m, 1.5);color:var(--r-text-regular, #282828);text-align:left;cursor:inherit}";
6
+
7
+ const RadioButtonTitle = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ }
11
+ render() {
12
+ return (index.h(index.Host, { key: '12da195c66d902eba41e84b1ccaf3efbabbac144', slot: "title" }, index.h("div", { key: '84fc3a3e1d0b9b641a7fb859d03e904b5009cb44', class: "r-radio-button-title", style: { display: 'contents' } }, index.h("slot", { key: '6562965e5dfa79f4b9f80f22b4293e8ea600e4b2' }))));
13
+ }
14
+ get host() { return index.getElement(this); }
15
+ };
16
+ RadioButtonTitle.style = radioButtonTitleCss;
17
+
18
+ exports.r_radio_button_title = RadioButtonTitle;
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-BnETQtSf.js');
4
+
5
+ const radioButtonTrailingCss = ":host{font-weight:var(--r-font-weight-regular, 400);font-size:var(--r-font-size-400, 1rem);text-align:right;color:var(--r-text-regular, #282828)}";
6
+
7
+ const RadioButtonTrailing = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ }
11
+ render() {
12
+ return (index.h(index.Host, { key: 'b9fc1731ecc2b522e341cfaceb5b703c8d74253f', slot: "trailing" }, index.h("div", { key: 'f1319664b1543a4a784cb2cd665567a4d561bdc3', class: "r-radio-button-trailing", style: { display: 'contents' } }, index.h("slot", { key: 'dbed8559c3b0a5ba2580fe9e8c297e7eb947e5a5' }))));
13
+ }
14
+ get host() { return index.getElement(this); }
15
+ };
16
+ RadioButtonTrailing.style = radioButtonTrailingCss;
17
+
18
+ exports.r_radio_button_trailing = RadioButtonTrailing;
@@ -0,0 +1,139 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-BnETQtSf.js');
4
+
5
+ const radioButtonCss = ":host{display:inline-flex;outline:none;position:relative;pointer-events:auto;border:0.0625rem solid transparent;cursor:pointer;min-width:17.5rem}:host slot{display:contents}:host(:hover:not([disabled]:not([disabled=false])):not([checked]:not([checked=false]))){--r-radio-button--cursor:pointer;--r-radio-button--box--background-color:var(--r-background-interactive-hovered, rgba(40, 40, 40, 0.04))}:host(:active:not([disabled]:not([disabled=false])):not([checked]:not([checked=false]))){--r-radio-button--box--border-color:var(--r-border-regular, #282828);--r-radio-button--box--background-color:var(--r-background-interactive-pressed, rgba(40, 40, 40, 0.12))}:host(:focus-within),:host(.focused){--r-radio-button--box--box-shadow:0 0 0 4px var(--r-border-focused-outlined, #fff);--r-radio-button--box--outline:2px solid var(--r-border-focused, #0071e3);--r-radio-button--box--outline-offset:1px}:host([checked]:not([checked=false])),:host([checked]:not([checked=false]):hover){cursor:default;--r-radio-button--box--border-color:var(--r-border-regular, #282828);--r-radio-button--box--background-color:var(--r-background-interactive-softest, #fff);--r-radio-button--marker--transform:scale(1)}:host([invalid]:not([invalid=false])),:host([invalid]:not([invalid=false])[checked]:not([checked=false])){--r-radio-button--box--border-color:var(--r-status-error-regular, #b00c15);--r-radio-button--box--background-color:var(--r-status-error-soft, #fef6f6)}:host([disabled]:not([disabled=false])){--r-radio-button--box--opacity:0.4;cursor:not-allowed}.r-radio-button{display:var(--r-radio-button--display, flex);flex:var(--r-radio-button--flex, 1);gap:var(--r-radio-button--gap, var(--r-spacing-075, 0.75rem));position:var(--r-radio-button--position, relative);min-height:var(--r-radio-button--min-height, 24px);user-select:var(--r-radio-button--user-select, none);box-sizing:var(--r-radio-button--box-sizing, border-box);font-family:var(--r-radio-button--font-family, var(--r-font-family-text, system-ui));font-size:var(--r-radio-button--font-size, var(--r-font-size-400, 1rem));line-height:var(--r-radio-button--line-height, var(--r-line-height-m, 1.5rem));text-align:var(--r-radio-button--text-align, left);color:var(--r-radio-button--color, var(--r-text-regular, #282828));opacity:var(--r-radio-button--opacity, 1);box-shadow:var(--r-radio-button--box-shadow, none);outline:var(--r-radio-button--outline, none);cursor:var(--r-radio-button--cursor, inherit);padding:var(--r-radio-button--padding, var(--r-spacing-100, 1rem));margin:var(--r-radio-button--margin, 0);background-color:var(--r-radio-button--background-color, transparent);border-color:var(--r-radio-button--border-color, transparent);border-width:var(--r-radio-button--border-width, 0);border-style:var(--r-radio-button--border-style, solid)}.r-radio-button--input{position:var(--r-radio-button--input--position, absolute);z-index:var(--r-radio-button--input--z-index, -1);opacity:var(--r-radio-button--input--opacity, 0)}.r-radio-button--box{position:var(--r-radio-button--box--position, relative);display:var(--r-radio-button--box--display, block);top:var(--r-radio-button--box--top, 0);left:var(--r-radio-button--box--left, 0);width:var(--r-radio-button--box--width, 1.5rem);height:var(--r-radio-button--box--height, 1.5rem);background-color:var(--r-radio-button--box--background-color, var(--r-background-interactive-softest, #fff));border-width:var(--r-radio-button--box--border-width, 0.0625rem);border-style:var(--r-radio-button--box--border-style, solid);border-color:var(--r-radio-button--box--border-color, var(--r-border-soft, #686868));border-radius:var(--r-radio-button--box--border-radius, 50%);box-sizing:var(--r-radio-button--box--box-sizing, border-box);box-shadow:var(--r-radio-button--box--box-shadow, none);outline:var(--r-radio-button--box--outline, none);outline-offset:var(--r-radio-button--box--outline-offset, 0);cursor:var(--r-radio-button--box--cursor, inherit);opacity:var(--r-radio-button--box--opacity, 1)}.r-radio-button--box::before{content:var(--r-radio-button--marker--content, \"\");display:var(--r-radio-button--marker--display, block);width:var(--r-radio-button--marker--width, 0.75rem);height:var(--r-radio-button--marker--height, 0.75rem);position:var(--r-radio-button--marker--position, absolute);top:var(--r-radio-button--marker--top, calc(50% - 0.375rem));left:var(--r-radio-button--marker--left, calc(50% - 0.375rem));border-radius:var(--r-radio-button--marker--border-radius, 50%);background-color:var(--r-radio-button--marker--background-color, var(--r-background-interactive-regular, #282828));transition:var(--r-radio-button--marker--transition, 0.1s all);transform:var(--r-radio-button--marker--transform, scale(0));transform-origin:var(--r-radio-button--marker--transform-origin, center)}.r-radio-button--text{flex:var(--r-radio-button--text--flex, 1);display:var(--r-radio-button--text--display, flex);flex-direction:var(--r-radio-button--text--flex-direction, column);gap:var(--r-radio-button--text--gap, var(--r-spacing-025, 0.25rem));font-weight:var(--r-radio-button--text--font-weight, var(--r-font-weight-semibold, 600))}.r-radio-button--leading{min-height:var(--r-radio-button--leading--min-height, var(--r-spacing-150, 1.5rem));min-width:var(--r-radio-button--leading--min-width, calc(var(--r-spacing-150, 1.5rem) + 2 * var(--r-spacing-075, 0.75rem)));color:var(--r-radio-button--leading--color, var(--r-icon-soft, #686868));display:var(--r-radio-button--leading--display, flex);justify-content:var(--r-radio-button--leading--justify-content, center);align-items:var(--r-radio-button--leading--align-items, start)}";
6
+
7
+ const RadioButton = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ this.rChange = index.createEvent(this, "rChange");
11
+ this.rReset = index.createEvent(this, "rReset");
12
+ this.radioButtonClick = index.createEvent(this, "radioButtonClick");
13
+ this.radioButtonKeydown = index.createEvent(this, "radioButtonKeydown");
14
+ this.radioButtonDeselect = index.createEvent(this, "radioButtonDeselect");
15
+ /** Value of element data within a form */
16
+ this.value = this.slotTextValue;
17
+ /** Automatically focus the radio button when the component is mounted. Note: Only one element per page should have autofocus set to true, following browser standard behavior. */
18
+ this.autofocus = false;
19
+ /** Unique id */
20
+ this.uniqueId = `r-radio-button-${Date.now().toString(32)}${Math.random().toString(32)}`.replace(/\./g, '');
21
+ this.onClick = (event) => {
22
+ if (this.disabled)
23
+ return;
24
+ event.stopPropagation();
25
+ event.preventDefault();
26
+ this.radioButtonClick.emit(event);
27
+ };
28
+ this.onKeydown = (event) => {
29
+ if (this.disabled)
30
+ return;
31
+ this.radioButtonKeydown.emit(event);
32
+ };
33
+ this.onFocus = () => {
34
+ this.host.classList.add('focused');
35
+ };
36
+ this.onBlur = () => {
37
+ this.host.classList.remove('focused');
38
+ };
39
+ this.applyAutofocus = () => {
40
+ queueMicrotask(() => {
41
+ this.setFocus();
42
+ });
43
+ };
44
+ }
45
+ /** Sets focus on the radio button element */
46
+ async setFocus() {
47
+ var _a;
48
+ (_a = this.nativeEl) === null || _a === void 0 ? void 0 : _a.focus();
49
+ }
50
+ /** Blurs the radio button element */
51
+ async setBlur() {
52
+ var _a;
53
+ (_a = this.nativeEl) === null || _a === void 0 ? void 0 : _a.blur();
54
+ }
55
+ /** Selects the radio button element */
56
+ async select() {
57
+ var _a, _b, _c;
58
+ if (this.checked)
59
+ return;
60
+ if (this.disabled)
61
+ return;
62
+ (_a = this.radioElements) === null || _a === void 0 ? void 0 : _a.forEach(radio => {
63
+ radio.checked = false;
64
+ radio.shadowRoot.querySelector('.r-radio-button--input').setAttribute('tabindex', '-1');
65
+ });
66
+ this.checked = true;
67
+ (_b = this.nativeEl) === null || _b === void 0 ? void 0 : _b.setAttribute('tabindex', '0');
68
+ (_c = this.nativeEl) === null || _c === void 0 ? void 0 : _c.focus();
69
+ const { host, value, checked } = this;
70
+ this.rChange.emit({ element: host, value, checked });
71
+ }
72
+ /** Reference to the radio button elements */
73
+ get radioElements() {
74
+ if (this.groupEl) {
75
+ // Use :scope > to only select direct children, excluding nested radio-group buttons
76
+ return this.groupEl.querySelectorAll(`:scope > r-radio-button`);
77
+ }
78
+ if (this.parentFormEl) {
79
+ return this.parentFormEl.querySelectorAll(`r-radio-button[name=${this.name}]`);
80
+ }
81
+ return document.querySelectorAll(`r-radio-button[name=${this.name}]`);
82
+ }
83
+ /** Get the text content of the slot */
84
+ get slotTextValue() {
85
+ return this.host.textContent || null;
86
+ }
87
+ /** Identify wrapping radio group element */
88
+ get groupEl() {
89
+ return this.host.closest('r-radio-group') || null;
90
+ }
91
+ /** Identify wrapping form element */
92
+ get parentFormEl() {
93
+ return this.host.closest('form') || null;
94
+ }
95
+ /** Check if the radio button is leading */
96
+ get isLeading() {
97
+ return this.icon !== undefined || this.host.querySelector('[slot="leading"]') !== null || this.host.querySelector('r-radio-button-leading') !== null;
98
+ }
99
+ /** Check if the radio button is trailing */
100
+ get isTrailing() {
101
+ return this.host.querySelector('[slot="trailing"]') !== null || this.host.querySelector('r-radio-button-trailing') !== null;
102
+ }
103
+ get shouldAutofocus() {
104
+ return this.autofocus && (!this.groupEl || !this.groupEl.autofocus);
105
+ }
106
+ componentWillLoad() {
107
+ if (!this.initialState)
108
+ this.initialState = this.checked;
109
+ if (this.groupEl && !this.name) {
110
+ this.name = this.groupEl.name;
111
+ }
112
+ }
113
+ componentDidLoad() {
114
+ if (this.shouldAutofocus)
115
+ this.applyAutofocus();
116
+ }
117
+ render() {
118
+ const { name, value, checked, disabled, hint, uniqueId, required, invalid, error, autofocus } = this;
119
+ const inputAttrs = {
120
+ type: 'radio',
121
+ tabindex: '-1',
122
+ name,
123
+ value,
124
+ disabled,
125
+ checked,
126
+ required,
127
+ autofocus
128
+ };
129
+ return (index.h(index.Host, { key: 'ce9e98b6480c18675ac0dac4b118e574872f9af7' }, index.h("label", { key: 'adb23e0f9092e7c5bc2c0c70df71fa255f8a441b', class: "r-radio-button", onClick: this.onClick, onKeyDown: this.onKeydown }, index.h("input", Object.assign({ key: 'cdd35d3caebb8e7eb8162dcc97c73f85067a55bb' }, inputAttrs, { id: `${uniqueId}-input`, class: "r-radio-button--input", ref: el => this.nativeEl = el, onFocus: this.onFocus, onBlur: this.onBlur })), index.h("span", { key: '89e258e8d5b41a51ff48ad26f1e83bcdb447089a', class: "r-radio-button--box" }), this.isLeading &&
130
+ index.h("div", { key: '14e5cbd3fb54b86761f68f53f64081be3021bf9d', class: "r-radio-button--leading" }, index.h("slot", { key: '8350ee29002de443338179d8e926356fa080cb97', name: "leading" }, this.icon && index.h("r-icon", { key: 'ba1ad94e6eabd2aa113e46ddc4f5f7cdc8e39635', name: this.icon, size: "m" }))), index.h("div", { key: '75c735e748dc36c3c785cb048f920060f31c7c9a', class: "r-radio-button--text" }, index.h("slot", { key: 'b2f39d35860d6ed36bf1913836af065ed093a9b4', name: "title" }, index.h("div", { key: '4f6fdd992b61a01c13810fbee76f66d514f8e8e2', style: { display: 'contents' } }, index.h("slot", { key: 'b0d6d3eb4b9687751822fd6e026cc5eec2fe3d6b' }))), index.h("slot", { key: '66f2d4a0262d494b4c5c700e48abb7210e5fc8df', name: "description" }, this.description)), this.isTrailing &&
131
+ index.h("div", { key: '64bb5efd43a7e52461dff3e3416c968bbe44d1a4', class: "r-radio-button--trailing" }, index.h("slot", { key: '20798c2198cc1360f6b04fa0a94984bb697eda6c', name: "trailing" }))), invalid && error &&
132
+ index.h("r-hint", { key: '06bd4aa937a926612c428e9f9cfcde98e60c6ca7', role: "alert", variant: "error", id: `${uniqueId}-hint` }, this.error), hint &&
133
+ index.h("r-hint", { key: '5031e00344241c184fb8ef2aa8275274415b8a3e', role: "note", variant: "information", id: `${uniqueId}-hint` }, hint)));
134
+ }
135
+ get host() { return index.getElement(this); }
136
+ };
137
+ RadioButton.style = radioButtonCss;
138
+
139
+ exports.r_radio_button = RadioButton;
@@ -0,0 +1,428 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-BnETQtSf.js');
4
+ var formData = require('./formData-B2DZyLxP.js');
5
+
6
+ const radioGroupCss = ":host{display:flex;flex-direction:column;box-sizing:border-box;margin-bottom:var(--r-spacing-100)}:host ::slotted(r-radio-button){display:var(--r-radio-group--slotted-radio-button--display, flex)}:host ::slotted(.focused){--r-radio-button--box-shadow:0 0 0 3px var(--r-border-focused-outlined, #fff), inset 0 0 0 1px var(--r-border-focused-outlined, #fff);--r-radio-button--outline:2px solid var(--r-border-focused, #0071e3);--r-radio-button--outline-offset:2px}:host slot{display:contents}:host([variant=contained]) ::slotted(r-radio-button){padding:0;--r-radio-button--padding:var(--r-spacing-100, 1rem);--r-radio-button--border-color:var(--r-border-soft, #686868);--r-radio-button--border-width:1px}:host([invalid]:not([invalid=false])) ::slotted(r-radio-button){--r-radio-button--box--border-color:var(--r-status-error-regular, #b00c15);--r-radio-button--box--background-color:var(--r-status-error-soft, #fef6f6);--r-radio-button--marker--background-color:var(--r-status-error-regular, #b00c15)}:host .r-radio-group{display:var(--r-radio-group--display, flex);flex-direction:var(--r-radio-group--flex-direction, column);padding:var(--r-radio-group--padding, 0);margin:var(--r-radio-group--margin, 0);border:var(--r-radio-group--border, none)}:host .r-radio-group--label-container{display:var(--r-radio-group--label-container--display, flex);gap:var(--r-radio-group--label-container--gap, var(--r-spacing-100, 1rem));align-items:var(--r-radio-group--label-container--align-items, center);justify-content:var(--r-radio-group--label-container--justify-content, space-between)}:host .r-radio-group--label-container ::slotted([slot=popover]){display:var(--r-radio-group--popover--display, inline-flex);height:var(--r-radio-group--popover--height, var(--r-spacing-150, 1.5));align-items:var(--r-radio-group--popover--align-items, center);justify-content:var(--r-radio-group--popover--justify-content, center);margin-right:var(--r-radio-group--popover--margin-right, -0.25rem);--r-popover--trigger--min-width:var(--r-radio-group--popover-trigger--min-width, var(--r-spacing-150, 1.5));--r-popover--trigger--min-height:var(--r-radio-group--popover--trigger--min-height, var(--r-spacing-150, 1.5))}:host .r-radio-group--hint{margin-bottom:var(--r-radio-group--hint--margin-bottom, var(--r-spacing-100, 1rem))}:host .r-radio-group--content{display:var(--r-radio-group--content--display, flex);flex-direction:var(--r-radio-group--content--flex-direction, column);flex-wrap:var(--r-radio-group--content--flex-wrap, nowrap);gap:var(--r-radio-group--content--gap, var(--r-spacing-050, 0.5rem))}:host .r-radio-group+.r-radio-group--message r-hint{margin-top:var(--r-radio-group--hint--margin-top, var(--r-spacing-050, 0.5rem))}";
7
+
8
+ const RadioGroup = class {
9
+ constructor(hostRef) {
10
+ index.registerInstance(this, hostRef);
11
+ this.rValidate = index.createEvent(this, "rValidate");
12
+ this.rChange = index.createEvent(this, "rChange");
13
+ this.rReset = index.createEvent(this, "rReset");
14
+ /** Controls the style variation of the radio buttons. */
15
+ this.variant = 'standard';
16
+ /**
17
+ * When set to `true`, automatically focuses the first enabled radio button in the group on mount.
18
+ * This will focus the selected radio button if one exists, or the first enabled radio button otherwise.
19
+ */
20
+ this.autofocus = false;
21
+ this.validityState = '';
22
+ this.validityMessage = '';
23
+ /**
24
+ * Initial attributes state
25
+ * */
26
+ this.initial = {};
27
+ /** Unique id */
28
+ this.uniqueId = `r-radio-group-${Date.now().toString(32)}${Math.random().toString(32)}`.replace(/\./g, '');
29
+ this.getValidityStateData = element => {
30
+ let validityState = '';
31
+ let validityMessage = '';
32
+ if (element === null)
33
+ return { validityState, validityMessage };
34
+ for (const state in element.validity) {
35
+ if (element.validity[state]) {
36
+ validityState = state;
37
+ if (this[state + 'Message']) {
38
+ validityMessage = this[state + 'Message'];
39
+ return { validityState, validityMessage };
40
+ }
41
+ validityMessage = element.validationMessage;
42
+ }
43
+ }
44
+ return { validityState, validityMessage };
45
+ };
46
+ this.validateFormElement = (element = null) => {
47
+ if (element === null)
48
+ return;
49
+ if (this.isNoValidate)
50
+ return;
51
+ if (this.error)
52
+ return;
53
+ const { validityState, validityMessage } = this.getValidityStateData(element);
54
+ this.validityState = validityState;
55
+ this.validityMessage = validityMessage;
56
+ const isValid = this.validityState === 'valid';
57
+ this.valid = isValid;
58
+ this.invalid = !isValid;
59
+ this.rValidate.emit({
60
+ state: this.validityState,
61
+ message: this.validityMessage
62
+ });
63
+ };
64
+ this.onSubmitForm = (event) => {
65
+ if (this.isNoValidate)
66
+ return;
67
+ this.validateFormElement(this.nativeSelectedEl || this.nativeFirstEl);
68
+ if (!this.hasSelected || this.invalid) {
69
+ event.preventDefault();
70
+ event.stopPropagation();
71
+ }
72
+ };
73
+ this.onResetForm = () => {
74
+ this.reset();
75
+ };
76
+ this.onLabelClick = () => {
77
+ const radioButtonEl = this.radioButtonElements[0].shadowRoot.querySelector('[type="radio"]');
78
+ radioButtonEl === null || radioButtonEl === void 0 ? void 0 : radioButtonEl.focus();
79
+ };
80
+ this.contributeToFormData = (event) => {
81
+ formData.appendControlToFormData(this.host, event.formData);
82
+ };
83
+ /**
84
+ * Handles parent radio group value changes for nested groups.
85
+ * If this is a nested group with a parentValue specified, it will reset when
86
+ * the parent group's value changes to something other than the parentValue.
87
+ */
88
+ this.onParentGroupChange = (event) => {
89
+ // Only proceed if this group has a parentValue specified (indicating it's nested)
90
+ if (!this.parentValue)
91
+ return;
92
+ const parentNewValue = event.detail.value;
93
+ // If parent changed to a different value than our parentValue, reset this nested group
94
+ if (parentNewValue !== this.parentValue) {
95
+ this.clearValue();
96
+ // Emit rReset event to notify that the nested group was automatically reset
97
+ this.rReset.emit({
98
+ element: this.host,
99
+ value: null
100
+ });
101
+ }
102
+ };
103
+ }
104
+ rChangeAction(event) {
105
+ // Only handle events from direct children, not from nested radio-groups
106
+ const targetElement = event.target;
107
+ const isDirectChild = targetElement.parentElement === this.host;
108
+ if (!isDirectChild) {
109
+ return; // Ignore events from nested radio-groups
110
+ }
111
+ // Stop event from bubbling to parent radio-groups
112
+ event.stopPropagation();
113
+ this.resetValidity();
114
+ this.setValue(event.detail.value);
115
+ }
116
+ /**
117
+ * Resets the radio group to its initial state.
118
+ * This method clears the validity state and message, and sets the value and validity
119
+ * to their initial values.
120
+ */
121
+ radioButtonClickAction(event) {
122
+ // Only handle events from direct children, not from nested radio-groups
123
+ const targetElement = event.target;
124
+ const isDirectChild = targetElement.parentElement === this.host;
125
+ if (!isDirectChild) {
126
+ return; // Ignore events from nested radio-groups
127
+ }
128
+ // Stop event from bubbling to parent radio-groups
129
+ event.stopPropagation();
130
+ !event.target.disabled && event.target.select();
131
+ }
132
+ get selectedIndex() {
133
+ return Array.from(this.radioButtonElements).findIndex(el => el.hasAttribute('checked'));
134
+ }
135
+ get prevIndex() {
136
+ const isNoSelected = this.selectedIndex === -1;
137
+ const isnativeFirstElement = this.selectedIndex === 0;
138
+ return isnativeFirstElement || isNoSelected ? this.radioButtonElements.length - 1 : this.selectedIndex - 1;
139
+ }
140
+ get focusedRadioButtonEl() {
141
+ // Query all descendants to find focused element, but it will only be used for direct children
142
+ return this.host.querySelector('r-radio-button.focused');
143
+ }
144
+ get focusedRadioButtonElIndex() {
145
+ return Array.from(this.radioButtonElements).indexOf(this.focusedRadioButtonEl);
146
+ }
147
+ get nextIndex() {
148
+ const isNoSelected = this.selectedIndex === -1;
149
+ if (isNoSelected) {
150
+ return this.focusedRadioButtonElIndex === -1 ? 0 : this.focusedRadioButtonElIndex + 1;
151
+ }
152
+ const isLastElement = this.selectedIndex === this.radioButtonElements.length - 1;
153
+ return isLastElement ? 0 : this.selectedIndex + 1;
154
+ }
155
+ radioButtonKeydownAction(event) {
156
+ var _a;
157
+ // Only handle events from direct children, not from nested radio-groups
158
+ const targetElement = event.target;
159
+ const isDirectChild = targetElement.parentElement === this.host;
160
+ if (!isDirectChild) {
161
+ return; // Ignore events from nested radio-groups
162
+ }
163
+ // Stop event from bubbling to parent radio-groups
164
+ event.stopPropagation();
165
+ switch (event.detail.code) {
166
+ case 'ArrowUp':
167
+ case 'ArrowLeft':
168
+ // Select previous radio button
169
+ this.radioButtonElements[this.prevIndex].select();
170
+ break;
171
+ case 'ArrowDown':
172
+ case 'ArrowRight':
173
+ // Select next radio button
174
+ this.radioButtonElements[this.nextIndex].select();
175
+ break;
176
+ case 'Enter': {
177
+ const submitEl = this.host.querySelector('[type="submit"]') ||
178
+ ((_a = this.parentFormEl) === null || _a === void 0 ? void 0 : _a.querySelector('[type="submit"]'));
179
+ if (submitEl && 'triggerClick' in submitEl) {
180
+ submitEl === null || submitEl === void 0 ? void 0 : submitEl.triggerClick();
181
+ }
182
+ else {
183
+ this.parentFormEl.requestSubmit();
184
+ }
185
+ break;
186
+ }
187
+ }
188
+ }
189
+ /**
190
+ * Resets the validity state and message of the radio group.
191
+ * This method clears the validity message and state, and sets the invalid
192
+ * property to its initial value.
193
+ */
194
+ async resetValidity() {
195
+ this.validityMessage = null;
196
+ this.validityState = null;
197
+ this.invalid = this.initial['invalid'];
198
+ this.valid = !this.invalid;
199
+ }
200
+ /**
201
+ * Resets the radio group to its initial state.
202
+ *
203
+ * This method:
204
+ * - clears the validity state and message,
205
+ * - sets the value and validity to initial values,
206
+ * - if no initial value the radio group will be deselected,
207
+ * - restores the tabindex on the first element.
208
+ */
209
+ async reset() {
210
+ this.resetValidity();
211
+ if (this.initial['value']) {
212
+ this.setValue(this.initial['value']);
213
+ return;
214
+ }
215
+ // Set default value to null
216
+ this.clearValue();
217
+ }
218
+ /**
219
+ * Sets the value of the radio group to the specified value.
220
+ * If a radio button with the specified value exists, it will be selected.
221
+ *
222
+ * @param value - The value to set for the radio group.
223
+ */
224
+ async setValue(value) {
225
+ const element = Array.from(this.radioButtonElements).find(el => el.value === value);
226
+ if (element === undefined) {
227
+ this.clearValue();
228
+ return;
229
+ }
230
+ this.value = value;
231
+ element === null || element === void 0 ? void 0 : element.select();
232
+ }
233
+ /**
234
+ * Gets the current value of the radio group.
235
+ *
236
+ * @returns The current value of the radio group.
237
+ */
238
+ async getValue() {
239
+ return this.value || null;
240
+ }
241
+ /**
242
+ * Clears the value of the radio group and deselects all radio buttons.
243
+ * This method sets the value to null and deselects all radio buttons in the group.
244
+ */
245
+ async clearValue() {
246
+ var _a, _b, _c, _d, _e, _f;
247
+ const isSelectedEqualsFirst = ((_a = this.nativeSelectedEl) === null || _a === void 0 ? void 0 : _a.value) === ((_b = this.nativeFirstEl) === null || _b === void 0 ? void 0 : _b.value);
248
+ if (!isSelectedEqualsFirst) {
249
+ (_c = this.nativeSelectedEl) === null || _c === void 0 ? void 0 : _c.setAttribute('tabindex', '-1');
250
+ }
251
+ (_d = this.nativeSelectedEl) === null || _d === void 0 ? void 0 : _d.setAttribute('tabindex', '-1');
252
+ (_e = this.nativeFirstEl) === null || _e === void 0 ? void 0 : _e.setAttribute('tabindex', '0');
253
+ (_f = this.selectedRadioButtonElement) === null || _f === void 0 ? void 0 : _f.removeAttribute('checked');
254
+ this.value = null;
255
+ }
256
+ /**
257
+ * Validates the radio group without triggering UI and returns a boolean indicating its validity.
258
+ * @returns A boolean indicating whether the radio group is valid.
259
+ */
260
+ async checkValidity() {
261
+ const element = this.nativeSelectedEl || this.nativeFirstEl || null;
262
+ const { validityState } = this.getValidityStateData(element);
263
+ return validityState === 'valid';
264
+ }
265
+ /**
266
+ * Validates the radio group and displays the validity state.
267
+ */
268
+ async reportValidity() {
269
+ const element = this.nativeSelectedEl || this.nativeFirstEl || null;
270
+ this.validateFormElement(element);
271
+ return this.validityState === 'valid';
272
+ }
273
+ /**
274
+ * Sets a custom validity message for the radio group.
275
+ * If the message is not empty, the radio group will be considered invalid.
276
+ *
277
+ * @param message - The custom validity message to set.
278
+ */
279
+ async setCustomValidity(message) {
280
+ const element = this.nativeSelectedEl || this.nativeFirstEl || null;
281
+ this.customErrorMessage = message;
282
+ this.validateFormElement(element);
283
+ }
284
+ /**
285
+ * Sets focus on the radio button element.
286
+ * */
287
+ async setFocus() {
288
+ const element = this.selectedRadioButtonElement || this.radioButtonElements[0] || null;
289
+ element === null || element === void 0 ? void 0 : element.setFocus();
290
+ }
291
+ /**
292
+ * Blurs the radio button element.
293
+ * */
294
+ async setBlur() {
295
+ var _a;
296
+ (_a = this.focusedRadioButtonEl) === null || _a === void 0 ? void 0 : _a.setBlur();
297
+ }
298
+ /** Determine whether this element should be ignored during Constraint Validation API validation. */
299
+ get isNoValidate() {
300
+ var _a;
301
+ return (((_a = this.parentFormEl) === null || _a === void 0 ? void 0 : _a.hasAttribute('novalidate')) ||
302
+ this.novalidate ||
303
+ !this.required ||
304
+ false);
305
+ }
306
+ /** Identify wrapping form element */
307
+ get parentFormEl() {
308
+ return this.host.closest('form') || document.querySelector(`#${this.form}`) || null;
309
+ }
310
+ get radioButtonElements() {
311
+ // Use :scope > to only select direct children, excluding nested radio-group buttons
312
+ return this.host.querySelectorAll(':scope > r-radio-button:not([disabled]:not([disabled="false"]))');
313
+ }
314
+ get selectedRadioButtonElement() {
315
+ return Array.from(this.radioButtonElements).find(el => el.checked || el.hasAttribute('checked')) || null;
316
+ }
317
+ get hasSelected() {
318
+ return Array.from(this.radioButtonElements).some(el => el.checked || el.hasAttribute('checked'));
319
+ }
320
+ get nativeSelectedEl() {
321
+ var _a, _b;
322
+ if (this.selectedRadioButtonElement === null)
323
+ return null;
324
+ return ((_b = (_a = this.selectedRadioButtonElement) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.r-radio-button--input')) || null;
325
+ }
326
+ get nativeFirstEl() {
327
+ var _a, _b;
328
+ return ((_b = (_a = this.radioButtonElements[0]) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.r-radio-button--input')) || null;
329
+ }
330
+ get hasValidationError() {
331
+ return this.validityState && this.validityState !== 'valid' && !!(this.validityMessage || this.customErrorMessage);
332
+ }
333
+ passPropsToGroupItems(props = {}) {
334
+ Object.entries(props).forEach(([key, value]) => {
335
+ this.radioButtonElements.forEach(el => {
336
+ if (typeof value === 'string')
337
+ el.setAttribute(key, value);
338
+ if (typeof value === 'boolean' && value)
339
+ el.setAttribute(key, '');
340
+ });
341
+ });
342
+ }
343
+ selectGroupItemByValue() {
344
+ if (this.hasSelected && !this.value) {
345
+ this.value = this.selectedRadioButtonElement.value;
346
+ }
347
+ this.setValue(this.value);
348
+ }
349
+ setTabindex() {
350
+ const el = this.nativeSelectedEl || this.nativeFirstEl;
351
+ el === null || el === void 0 ? void 0 : el.setAttribute('tabindex', '0');
352
+ }
353
+ get parentRadioGroup() {
354
+ var _a;
355
+ // Find the parent radio group element
356
+ return ((_a = this.host.parentElement) === null || _a === void 0 ? void 0 : _a.closest('r-radio-group')) || null;
357
+ }
358
+ connectFormEventListeners() {
359
+ var _a, _b, _c;
360
+ (_a = this.parentFormEl) === null || _a === void 0 ? void 0 : _a.addEventListener('formdata', this.contributeToFormData);
361
+ (_b = this.parentFormEl) === null || _b === void 0 ? void 0 : _b.addEventListener('reset', this.onResetForm);
362
+ (_c = this.parentFormEl) === null || _c === void 0 ? void 0 : _c.addEventListener('submit', this.onSubmitForm, { capture: true });
363
+ }
364
+ disconnectFormEventListeners() {
365
+ var _a, _b, _c;
366
+ (_a = this.parentFormEl) === null || _a === void 0 ? void 0 : _a.removeEventListener('formdata', this.contributeToFormData);
367
+ (_b = this.parentFormEl) === null || _b === void 0 ? void 0 : _b.removeEventListener('reset', this.onResetForm);
368
+ (_c = this.parentFormEl) === null || _c === void 0 ? void 0 : _c.removeEventListener('submit', this.onSubmitForm);
369
+ }
370
+ connectParentGroupListener() {
371
+ // Only connect if this is a nested group (has parentValue specified)
372
+ if (this.parentValue && this.parentRadioGroup) {
373
+ this.parentRadioGroup.addEventListener('rChange', this.onParentGroupChange);
374
+ }
375
+ }
376
+ disconnectParentGroupListener() {
377
+ if (this.parentValue && this.parentRadioGroup) {
378
+ this.parentRadioGroup.removeEventListener('rChange', this.onParentGroupChange);
379
+ }
380
+ }
381
+ get ariaDescribedBy() {
382
+ const messageId = `${this.uniqueId}-message`;
383
+ return this.hint ? `${this.uniqueId}-hint ${messageId}` : messageId;
384
+ }
385
+ connectedCallback() {
386
+ this.connectFormEventListeners();
387
+ this.connectParentGroupListener();
388
+ }
389
+ disconnectedCallback() {
390
+ this.disconnectFormEventListeners();
391
+ this.disconnectParentGroupListener();
392
+ }
393
+ componentWillLoad() {
394
+ const { required, name } = this;
395
+ this.passPropsToGroupItems({ required, name });
396
+ // If `value` is provided: item within group with such value shall be selected
397
+ this.selectGroupItemByValue();
398
+ this.initial['value'] = this.value;
399
+ this.initial['invalid'] = this.invalid;
400
+ }
401
+ componentDidLoad() {
402
+ const { name, required } = this;
403
+ this.passPropsToGroupItems({ name, required });
404
+ this.setTabindex();
405
+ if (this.autofocus) {
406
+ // Use setTimeout to ensure setValue has completed and checked state is synced
407
+ setTimeout(() => {
408
+ this.setFocus();
409
+ }, 0);
410
+ }
411
+ }
412
+ render() {
413
+ const { label, hint, fieldIndicator, error, uniqueId, invalid } = this;
414
+ const fieldsetAttrs = {
415
+ 'aria-invalid': `${invalid || false}`,
416
+ 'aria-describedby': this.ariaDescribedBy
417
+ };
418
+ return (index.h(index.Host, { key: 'a542762b5523cd568341316eb9e1d3ba328662f3' }, index.h("fieldset", Object.assign({ key: 'cd6877a67816eff8a423a60ef1e9079cab4ea21a', class: "r-radio-group" }, fieldsetAttrs, { onClick: this.onLabelClick }), label &&
419
+ index.h("legend", { key: '00adcfa6fa8296f295b48f90d19b11928fb580d6', class: "r-radio-group--label-container" }, index.h("r-label", { key: 'f353298317ffe0043dd0dae0905499ef17fa90ba', id: `${uniqueId}-label`, class: "r-radio-group--label", "field-indicator": fieldIndicator }, label), index.h("slot", { key: '5e9ecf61a1a65f20ed3e48006f2a913723bdfb38', name: "popover" })), hint &&
420
+ index.h("r-hint", { key: '0e266db62c6bb2f8a770502ab64ca7f2edc54d39', id: `${uniqueId}-hint`, class: "r-radio-group--hint", role: "note" }, hint), index.h("div", { key: '2d951da223a892721db7e5d858e52b27eebfcf98', class: "r-radio-group--content" }, index.h("slot", { key: '341225a7be93a07fa9c3e4c96241f84c8008b182' })), index.h("div", { key: '255d3bbd8fd5b192e4dd2cca03bb7b0e2bdefd0e', id: `${uniqueId}-message`, "aria-live": "polite", role: "alert", class: "r-radio-group--message" }, invalid && error &&
421
+ index.h("r-hint", { key: '7c91e92235c2d4bd36baf327ce0bf7ed18982886', variant: "error" }, error), this.hasValidationError &&
422
+ index.h("r-hint", { key: '522a8a74f88356d42929f9e1fe4ab2a4326d25d7', "aria-live": "polite", id: `${uniqueId}-message`, role: "alert", variant: "error" }, this.customErrorMessage || this.validityMessage)))));
423
+ }
424
+ get host() { return index.getElement(this); }
425
+ };
426
+ RadioGroup.style = radioGroupCss;
427
+
428
+ exports.r_radio_group = RadioGroup;