@riverty/web-components 5.8.0 → 6.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (281) hide show
  1. package/CHANGELOG.md +107 -0
  2. package/custom-elements.json +215 -362
  3. package/dist/cjs/index-DJ4H_bFj.js +6 -10
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/r-accordion-panel.cjs.entry.js +1 -1
  6. package/dist/cjs/r-accordion-section.cjs.entry.js +1 -1
  7. package/dist/cjs/r-accordion-trigger.cjs.entry.js +5 -35
  8. package/dist/cjs/r-accordion.cjs.entry.js +3 -7
  9. package/dist/cjs/r-alert.cjs.entry.js +26 -11
  10. package/dist/cjs/r-badge.cjs.entry.js +1 -1
  11. package/dist/cjs/r-button.cjs.entry.js +1 -1
  12. package/dist/cjs/r-checkbox-group.cjs.entry.js +1 -11
  13. package/dist/cjs/r-checkbox.cjs.entry.js +76 -75
  14. package/dist/cjs/r-dialog.cjs.entry.js +3 -11
  15. package/dist/cjs/r-hint_2.cjs.entry.js +50 -0
  16. package/dist/cjs/{r-hint_3.cjs.entry.js → r-icon-button_2.cjs.entry.js} +64 -51
  17. package/dist/cjs/r-icon.cjs.entry.js +1 -1
  18. package/dist/cjs/r-input-code.cjs.entry.js +112 -17
  19. package/dist/cjs/r-input-date.cjs.entry.js +8 -14
  20. package/dist/cjs/r-input-password.cjs.entry.js +16 -8
  21. package/dist/cjs/r-input-phone-number.cjs.entry.js +7 -12
  22. package/dist/cjs/r-input.cjs.entry.js +90 -42
  23. package/dist/cjs/r-list-item.cjs.entry.js +20 -19
  24. package/dist/cjs/r-panel.cjs.entry.js +5 -5
  25. package/dist/cjs/r-popover-action.cjs.entry.js +1 -1
  26. package/dist/cjs/r-popover-content.cjs.entry.js +1 -1
  27. package/dist/cjs/r-popover-headline.cjs.entry.js +1 -1
  28. package/dist/cjs/r-popover-trigger.cjs.entry.js +1 -1
  29. package/dist/cjs/r-popover.cjs.entry.js +3 -3
  30. package/dist/cjs/r-progress-bar.cjs.entry.js +1 -1
  31. package/dist/cjs/r-radio-button-description.cjs.entry.js +1 -1
  32. package/dist/cjs/r-radio-button-leading.cjs.entry.js +1 -1
  33. package/dist/cjs/r-radio-button-title.cjs.entry.js +1 -1
  34. package/dist/cjs/r-radio-button-trailing.cjs.entry.js +1 -1
  35. package/dist/cjs/r-radio-button.cjs.entry.js +29 -12
  36. package/dist/cjs/r-radio-group.cjs.entry.js +18 -22
  37. package/dist/cjs/r-select-option.cjs.entry.js +1 -1
  38. package/dist/cjs/r-select.cjs.entry.js +6 -24
  39. package/dist/cjs/r-skip-link.cjs.entry.js +1 -1
  40. package/dist/cjs/r-stepper-item.cjs.entry.js +3 -3
  41. package/dist/cjs/r-stepper.cjs.entry.js +2 -2
  42. package/dist/cjs/r-tab-panel.cjs.entry.js +1 -1
  43. package/dist/cjs/r-tab.cjs.entry.js +6 -2
  44. package/dist/cjs/r-tabs-list.cjs.entry.js +160 -2
  45. package/dist/cjs/r-tabs.cjs.entry.js +34 -6
  46. package/dist/cjs/r-textarea.cjs.entry.js +7 -19
  47. package/dist/cjs/r-toast-group.cjs.entry.js +2 -2
  48. package/dist/cjs/r-toast.cjs.entry.js +31 -11
  49. package/dist/cjs/web-components.cjs.js +1 -1
  50. package/dist/collection/collection-manifest.json +0 -1
  51. package/dist/collection/components/accordion/accordion.css +0 -2
  52. package/dist/collection/components/accordion/accordion.js +4 -8
  53. package/dist/collection/components/accordion/exports.js +1 -1
  54. package/dist/collection/components/accordion-panel/accordion-panel.js +1 -1
  55. package/dist/collection/components/accordion-section/accordion-section.js +1 -1
  56. package/dist/collection/components/accordion-trigger/accordion-trigger.css +0 -4
  57. package/dist/collection/components/accordion-trigger/accordion-trigger.js +4 -215
  58. package/dist/collection/components/alert/alert.css +8 -3
  59. package/dist/collection/components/alert/alert.js +48 -10
  60. package/dist/collection/components/badge/badge.js +1 -1
  61. package/dist/collection/components/button/button.js +1 -1
  62. package/dist/collection/components/checkbox/checkbox.js +80 -98
  63. package/dist/collection/components/checkbox-group/checkbox-group.js +1 -50
  64. package/dist/collection/components/dialog/dialog.css +1 -3
  65. package/dist/collection/components/dialog/dialog.js +2 -10
  66. package/dist/collection/components/hint/hint.js +2 -2
  67. package/dist/collection/components/icon/bundled-icons/riverty-kit.json +1 -1
  68. package/dist/collection/components/icon/riverty-kit.js +1 -1
  69. package/dist/collection/components/icon-button/icon-button.js +22 -3
  70. package/dist/collection/components/input/exports.js +2 -0
  71. package/dist/collection/components/input/input.css +3 -0
  72. package/dist/collection/components/input/input.js +233 -371
  73. package/dist/collection/components/input-code/exports.js +2 -0
  74. package/dist/collection/components/input-code/input-code.js +294 -26
  75. package/dist/collection/components/input-date/input-date.js +8 -77
  76. package/dist/collection/components/input-password/exports.js +1 -0
  77. package/dist/collection/components/input-password/input-password.css +1 -0
  78. package/dist/collection/components/input-password/input-password.js +195 -70
  79. package/dist/collection/components/input-phone-number/input-phone-number.js +7 -75
  80. package/dist/collection/components/label/label.js +3 -113
  81. package/dist/collection/components/list-item/list-item/list-item.css +53 -19
  82. package/dist/collection/components/list-item/list-item/list-item.js +38 -40
  83. package/dist/collection/components/panel/panel.css +40 -17
  84. package/dist/collection/components/panel/panel.js +6 -6
  85. package/dist/collection/components/popover/exports.js +0 -1
  86. package/dist/collection/components/popover/popover.css +2 -10
  87. package/dist/collection/components/popover/popover.js +2 -55
  88. package/dist/collection/components/popover-action/popover-action.js +1 -1
  89. package/dist/collection/components/popover-content/popover-content.js +1 -1
  90. package/dist/collection/components/popover-headline/popover-headline.js +1 -1
  91. package/dist/collection/components/popover-trigger/popover-trigger.js +1 -1
  92. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  93. package/dist/collection/components/radio-button/radio-button.js +49 -12
  94. package/dist/collection/components/radio-button-description/radio-button-description.js +1 -1
  95. package/dist/collection/components/radio-button-leading/radio-button-leading.js +1 -1
  96. package/dist/collection/components/radio-button-title/radio-button-title.js +1 -1
  97. package/dist/collection/components/radio-button-trailing/radio-button-trailing.js +1 -1
  98. package/dist/collection/components/radio-group/radio-group.js +38 -124
  99. package/dist/collection/components/select/select.js +6 -330
  100. package/dist/collection/components/select-option/select-option.js +1 -1
  101. package/dist/collection/components/skip-link/skip-link.js +1 -1
  102. package/dist/collection/components/stepper/stepper.css +1 -1
  103. package/dist/collection/components/stepper/stepper.js +1 -1
  104. package/dist/collection/components/stepper-item/stepper-item.css +3 -3
  105. package/dist/collection/components/stepper-item/stepper-item.js +2 -2
  106. package/dist/collection/components/tab/tab.css +29 -29
  107. package/dist/collection/components/tab/tab.js +5 -1
  108. package/dist/collection/components/tab-panel/tab-panel.js +1 -1
  109. package/dist/collection/components/tabs/tabs.js +34 -6
  110. package/dist/collection/components/tabs-list/exports.js +2 -0
  111. package/dist/collection/components/tabs-list/tabs-list.css +43 -2
  112. package/dist/collection/components/tabs-list/tabs-list.js +277 -1
  113. package/dist/collection/components/textarea/textarea.css +1 -1
  114. package/dist/collection/components/textarea/textarea.js +6 -158
  115. package/dist/collection/components/toast/toast.css +35 -9
  116. package/dist/collection/components/toast/toast.js +44 -32
  117. package/dist/collection/components/toast-group/toast-group.css +1 -1
  118. package/dist/collection/components/toast-group/toast-group.js +1 -1
  119. package/dist/collection/components/tooltip/tooltip.js +2 -2
  120. package/dist/esm/index-Da7qOBFr.js +6 -10
  121. package/dist/esm/loader.js +1 -1
  122. package/dist/esm/r-accordion-panel.entry.js +1 -1
  123. package/dist/esm/r-accordion-section.entry.js +1 -1
  124. package/dist/esm/r-accordion-trigger.entry.js +5 -35
  125. package/dist/esm/r-accordion.entry.js +3 -7
  126. package/dist/esm/r-alert.entry.js +26 -11
  127. package/dist/esm/r-badge.entry.js +1 -1
  128. package/dist/esm/r-button.entry.js +1 -1
  129. package/dist/esm/r-checkbox-group.entry.js +1 -11
  130. package/dist/esm/r-checkbox.entry.js +76 -75
  131. package/dist/esm/r-dialog.entry.js +3 -11
  132. package/dist/esm/r-hint_2.entry.js +47 -0
  133. package/dist/esm/{r-hint_3.entry.js → r-icon-button_2.entry.js} +65 -51
  134. package/dist/esm/r-icon.entry.js +1 -1
  135. package/dist/esm/r-input-code.entry.js +112 -17
  136. package/dist/esm/r-input-date.entry.js +8 -14
  137. package/dist/esm/r-input-password.entry.js +16 -8
  138. package/dist/esm/r-input-phone-number.entry.js +7 -12
  139. package/dist/esm/r-input.entry.js +90 -42
  140. package/dist/esm/r-list-item.entry.js +20 -19
  141. package/dist/esm/r-panel.entry.js +5 -5
  142. package/dist/esm/r-popover-action.entry.js +1 -1
  143. package/dist/esm/r-popover-content.entry.js +1 -1
  144. package/dist/esm/r-popover-headline.entry.js +1 -1
  145. package/dist/esm/r-popover-trigger.entry.js +1 -1
  146. package/dist/esm/r-popover.entry.js +3 -3
  147. package/dist/esm/r-progress-bar.entry.js +1 -1
  148. package/dist/esm/r-radio-button-description.entry.js +1 -1
  149. package/dist/esm/r-radio-button-leading.entry.js +1 -1
  150. package/dist/esm/r-radio-button-title.entry.js +1 -1
  151. package/dist/esm/r-radio-button-trailing.entry.js +1 -1
  152. package/dist/esm/r-radio-button.entry.js +29 -12
  153. package/dist/esm/r-radio-group.entry.js +18 -22
  154. package/dist/esm/r-select-option.entry.js +1 -1
  155. package/dist/esm/r-select.entry.js +6 -24
  156. package/dist/esm/r-skip-link.entry.js +1 -1
  157. package/dist/esm/r-stepper-item.entry.js +3 -3
  158. package/dist/esm/r-stepper.entry.js +2 -2
  159. package/dist/esm/r-tab-panel.entry.js +1 -1
  160. package/dist/esm/r-tab.entry.js +6 -2
  161. package/dist/esm/r-tabs-list.entry.js +161 -3
  162. package/dist/esm/r-tabs.entry.js +34 -6
  163. package/dist/esm/r-textarea.entry.js +7 -19
  164. package/dist/esm/r-toast-group.entry.js +2 -2
  165. package/dist/esm/r-toast.entry.js +31 -11
  166. package/dist/esm/web-components.js +1 -1
  167. package/dist/types/components/accordion/accordion.d.ts +1 -5
  168. package/dist/types/components/accordion/exports.d.ts +1 -1
  169. package/dist/types/components/accordion-trigger/accordion-trigger.d.ts +0 -36
  170. package/dist/types/components/alert/alert.d.ts +6 -1
  171. package/dist/types/components/checkbox/checkbox.d.ts +24 -34
  172. package/dist/types/components/checkbox-group/checkbox-group.d.ts +0 -11
  173. package/dist/types/components/dialog/dialog.d.ts +0 -2
  174. package/dist/types/components/icon/exports.d.ts +1 -0
  175. package/dist/types/components/icon/icon-data.d.ts +1 -0
  176. package/dist/types/components/icon/riverty-kit.d.ts +1 -0
  177. package/dist/types/components/icon-button/icon-button.d.ts +4 -0
  178. package/dist/types/components/input/exports.d.ts +4 -0
  179. package/dist/types/components/input/input.d.ts +47 -73
  180. package/dist/types/components/input-code/exports.d.ts +4 -0
  181. package/dist/types/components/input-code/input-code.d.ts +49 -7
  182. package/dist/types/components/input-date/input-date.d.ts +0 -16
  183. package/dist/types/components/input-password/exports.d.ts +1 -0
  184. package/dist/types/components/input-password/input-password.d.ts +48 -16
  185. package/dist/types/components/input-phone-number/input-phone-number.d.ts +0 -16
  186. package/dist/types/components/label/label.d.ts +0 -18
  187. package/dist/types/components/list-item/list-item/list-item.d.ts +5 -9
  188. package/dist/types/components/popover/exports.d.ts +0 -2
  189. package/dist/types/components/popover/popover.d.ts +1 -14
  190. package/dist/types/components/radio-button/radio-button.d.ts +5 -0
  191. package/dist/types/components/radio-group/radio-group.d.ts +5 -26
  192. package/dist/types/components/select/select.d.ts +0 -50
  193. package/dist/types/components/tabs/tabs.d.ts +1 -0
  194. package/dist/types/components/tabs-list/exports.d.ts +4 -0
  195. package/dist/types/components/tabs-list/tabs-list.d.ts +38 -0
  196. package/dist/types/components/textarea/textarea.d.ts +0 -32
  197. package/dist/types/components/toast/toast.d.ts +11 -5
  198. package/dist/types/components.d.ts +280 -638
  199. package/dist/web-components/bundled-icons/riverty-kit.json +1 -1
  200. package/dist/web-components/p-0347feff.entry.js +1 -0
  201. package/dist/web-components/p-159822fe.entry.js +1 -0
  202. package/dist/web-components/p-19407a14.entry.js +1 -0
  203. package/dist/web-components/{p-5744d75c.entry.js → p-1da75540.entry.js} +1 -1
  204. package/dist/web-components/p-26ef77d6.entry.js +1 -0
  205. package/dist/web-components/p-3884c6e7.entry.js +1 -0
  206. package/dist/web-components/p-3f60c6c0.entry.js +1 -0
  207. package/dist/web-components/{p-87f39749.entry.js → p-4595fa8e.entry.js} +1 -1
  208. package/dist/web-components/{p-4e3df002.entry.js → p-4cc58c6a.entry.js} +1 -1
  209. package/dist/web-components/p-4f261b63.entry.js +1 -0
  210. package/dist/web-components/{p-e0e2f2b2.entry.js → p-50893211.entry.js} +1 -1
  211. package/dist/web-components/{p-72fa1fd1.entry.js → p-550e2237.entry.js} +1 -1
  212. package/dist/web-components/p-589baaf9.entry.js +1 -0
  213. package/dist/web-components/{p-3b4e3faf.entry.js → p-5eeb7002.entry.js} +1 -1
  214. package/dist/web-components/p-60341de2.entry.js +1 -0
  215. package/dist/web-components/{p-44ae9f33.entry.js → p-62b788bf.entry.js} +1 -1
  216. package/dist/web-components/p-63fd817d.entry.js +1 -0
  217. package/dist/web-components/p-67fa3f84.entry.js +1 -0
  218. package/dist/web-components/p-6bb44ec6.entry.js +1 -0
  219. package/dist/web-components/p-6cc2ea2c.entry.js +1 -0
  220. package/dist/web-components/p-70784685.entry.js +1 -0
  221. package/dist/web-components/p-7ce57332.entry.js +1 -0
  222. package/dist/web-components/{p-429213ea.entry.js → p-7fed6f4d.entry.js} +1 -1
  223. package/dist/web-components/p-8a66d20c.entry.js +1 -0
  224. package/dist/web-components/{p-c7f8e59b.entry.js → p-8c31cbd5.entry.js} +1 -1
  225. package/dist/web-components/p-8dac326b.entry.js +1 -0
  226. package/dist/web-components/p-92c7cf33.entry.js +1 -0
  227. package/dist/web-components/{p-1c2497de.entry.js → p-9ef1bbee.entry.js} +1 -1
  228. package/dist/web-components/p-a7d22c76.entry.js +1 -0
  229. package/dist/web-components/p-b96d59ca.entry.js +1 -0
  230. package/dist/web-components/p-ba801820.entry.js +1 -0
  231. package/dist/web-components/{p-a022f356.entry.js → p-bfc8c077.entry.js} +1 -1
  232. package/dist/web-components/p-c05b05da.entry.js +1 -0
  233. package/dist/web-components/p-c1e748f2.entry.js +1 -0
  234. package/dist/web-components/{p-5bbd6e3c.entry.js → p-c478712b.entry.js} +1 -1
  235. package/dist/web-components/p-c95b6470.entry.js +1 -0
  236. package/dist/web-components/p-cd5daad2.entry.js +1 -0
  237. package/dist/web-components/p-cdd88c5a.entry.js +1 -0
  238. package/dist/web-components/{p-3078b2b8.entry.js → p-d054eb4d.entry.js} +1 -1
  239. package/dist/web-components/{p-8563a1ab.entry.js → p-d433a828.entry.js} +1 -1
  240. package/dist/web-components/p-d7726e46.entry.js +1 -0
  241. package/dist/web-components/p-d819c8e5.entry.js +1 -0
  242. package/dist/web-components/{p-755cc697.entry.js → p-e4dc60f0.entry.js} +1 -1
  243. package/dist/web-components/{p-d1379ac6.entry.js → p-f9d5004c.entry.js} +1 -1
  244. package/dist/web-components/web-components.esm.js +1 -1
  245. package/package.json +1 -1
  246. package/dist/cjs/r-accordion-item.cjs.entry.js +0 -78
  247. package/dist/cjs/r-icon-button.cjs.entry.js +0 -81
  248. package/dist/collection/components/accordion-item/accordion-item.css +0 -121
  249. package/dist/collection/components/accordion-item/accordion-item.js +0 -138
  250. package/dist/esm/r-accordion-item.entry.js +0 -76
  251. package/dist/esm/r-icon-button.entry.js +0 -79
  252. package/dist/types/components/accordion-item/accordion-item.d.ts +0 -26
  253. package/dist/web-components/p-00ca474f.entry.js +0 -1
  254. package/dist/web-components/p-0bb04d79.entry.js +0 -1
  255. package/dist/web-components/p-15ac0fdd.entry.js +0 -1
  256. package/dist/web-components/p-1c956370.entry.js +0 -1
  257. package/dist/web-components/p-2a512983.entry.js +0 -1
  258. package/dist/web-components/p-2b2f581a.entry.js +0 -1
  259. package/dist/web-components/p-2e18e762.entry.js +0 -1
  260. package/dist/web-components/p-3bc93d65.entry.js +0 -1
  261. package/dist/web-components/p-4bd3e077.entry.js +0 -1
  262. package/dist/web-components/p-51a5804b.entry.js +0 -1
  263. package/dist/web-components/p-56da04d8.entry.js +0 -1
  264. package/dist/web-components/p-5e6aabd8.entry.js +0 -1
  265. package/dist/web-components/p-656229de.entry.js +0 -1
  266. package/dist/web-components/p-6a4f3836.entry.js +0 -1
  267. package/dist/web-components/p-7775228c.entry.js +0 -1
  268. package/dist/web-components/p-7ad8e78b.entry.js +0 -1
  269. package/dist/web-components/p-85a9af42.entry.js +0 -1
  270. package/dist/web-components/p-9e50120b.entry.js +0 -1
  271. package/dist/web-components/p-a7e7f8fa.entry.js +0 -1
  272. package/dist/web-components/p-ad9b2a48.entry.js +0 -1
  273. package/dist/web-components/p-b2f03016.entry.js +0 -1
  274. package/dist/web-components/p-b87ad83b.entry.js +0 -1
  275. package/dist/web-components/p-c937bd92.entry.js +0 -1
  276. package/dist/web-components/p-cbcd7699.entry.js +0 -1
  277. package/dist/web-components/p-dbe579e8.entry.js +0 -1
  278. package/dist/web-components/p-e4b66277.entry.js +0 -1
  279. package/dist/web-components/p-e6a31881.entry.js +0 -1
  280. package/dist/web-components/p-f2577a3c.entry.js +0 -1
  281. package/dist/web-components/p-f6a92287.entry.js +0 -1
@@ -7,7 +7,7 @@ const RadioButtonDescription = class {
7
7
  registerInstance(this, hostRef);
8
8
  }
9
9
  render() {
10
- return (h(Host, { key: '83668642a70a083a0db012ad4e80aa31eeb08b85', slot: "description" }, h("div", { key: '12530fbda5f2789443e7d78237ba633922d97683', class: "r-radio-button-description", style: { display: 'contents' } }, h("slot", { key: 'a62b23dc0e9ea5f80660e9e97a45a4f1aef50c24' }))));
10
+ return (h(Host, { key: 'cd678f2b6c1e00e95ecfc56b1e460b3b3ab37597', slot: "description" }, h("div", { key: 'a19901417798ef6dacd6ad82c9eab7e2a8227cd5', class: "r-radio-button-description", style: { display: 'contents' } }, h("slot", { key: 'ba9308abf507f84affb24bb7eb8a43c8da4fd613' }))));
11
11
  }
12
12
  get host() { return getElement(this); }
13
13
  };
@@ -7,7 +7,7 @@ const RadioButtonLeading = class {
7
7
  registerInstance(this, hostRef);
8
8
  }
9
9
  render() {
10
- return (h(Host, { key: '802f0d0c98c87abb566dd2ef0388d6d6237dba68', slot: "leading" }, h("div", { key: '4c0296adc5dd6839dd150450f0be62e92a810d7c', class: "r-radio-button-leading", style: { display: 'contents' } }, h("slot", { key: '16b6131307cbaa02e1182b204ded280fa903da0a' }))));
10
+ return (h(Host, { key: '272870387e6e1abe3db2a67a38cfcd502a0e5aac', slot: "leading" }, h("div", { key: '7fd29eb8b31cda51e7a3bebebf8d80c7b0a79622', class: "r-radio-button-leading", style: { display: 'contents' } }, h("slot", { key: '542afc33263c2f06007b1c50225457af3e1b9051' }))));
11
11
  }
12
12
  get host() { return getElement(this); }
13
13
  };
@@ -7,7 +7,7 @@ const RadioButtonTitle = class {
7
7
  registerInstance(this, hostRef);
8
8
  }
9
9
  render() {
10
- return (h(Host, { key: '623feed7834a4702b83257202de4505b6c08145d', slot: "title" }, h("div", { key: 'ca7b90c670583ba4a874df1da73dad9db67d0bf7', class: "r-radio-button-title", style: { display: 'contents' } }, h("slot", { key: 'fd7ac8a7ee5e2cd05dab3d061328eecb5ee14800' }))));
10
+ return (h(Host, { key: '705ecfa00df2a6e5f1976e1e45dca02c2d63d0fb', slot: "title" }, h("div", { key: '9845596a7638b53995157c26ee89be55677ff2e9', class: "r-radio-button-title", style: { display: 'contents' } }, h("slot", { key: '5ec9a59d7d71f976513dddb471676d640e13e239' }))));
11
11
  }
12
12
  get host() { return getElement(this); }
13
13
  };
@@ -7,7 +7,7 @@ const RadioButtonTrailing = class {
7
7
  registerInstance(this, hostRef);
8
8
  }
9
9
  render() {
10
- return (h(Host, { key: 'a1c1c9d525cd2fb7b6223677f216b8398c3dac9f', slot: "trailing" }, h("div", { key: '554e798bcd117d7a56024097041609dc532ad2c1', class: "r-radio-button-trailing", style: { display: 'contents' } }, h("slot", { key: 'f48cef26f06bedf6e37439dd1f406d5c789b06a0' }))));
10
+ return (h(Host, { key: '844ad8251f30a4b0b6e700d0864798957e53750b', slot: "trailing" }, h("div", { key: '26a3458b5a448a9d8a687081325a5aa93c83e512', class: "r-radio-button-trailing", style: { display: 'contents' } }, h("slot", { key: 'fc1634011f555127d3281351a8ba9d7fdc1a7a38' }))));
11
11
  }
12
12
  get host() { return getElement(this); }
13
13
  };
@@ -12,6 +12,8 @@ const RadioButton = class {
12
12
  this.radioButtonDeselect = createEvent(this, "radioButtonDeselect");
13
13
  /** Value of element data within a form */
14
14
  this.value = this.slotTextValue;
15
+ /** 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. */
16
+ this.autofocus = false;
15
17
  /** Unique id */
16
18
  this.uniqueId = `r-radio-button-${Date.now().toString(32)}${Math.random().toString(32)}`.replace(/\./g, '');
17
19
  this.onClick = (event) => {
@@ -32,18 +34,25 @@ const RadioButton = class {
32
34
  this.onBlur = () => {
33
35
  this.host.classList.remove('focused');
34
36
  };
37
+ this.applyAutofocus = () => {
38
+ queueMicrotask(() => {
39
+ this.setFocus();
40
+ });
41
+ };
35
42
  }
36
43
  /** Sets focus on the radio button element */
37
44
  async setFocus() {
38
- this.nativeEl.focus();
45
+ var _a;
46
+ (_a = this.nativeEl) === null || _a === void 0 ? void 0 : _a.focus();
39
47
  }
40
48
  /** Blurs the radio button element */
41
49
  async setBlur() {
42
- this.nativeEl.blur();
50
+ var _a;
51
+ (_a = this.nativeEl) === null || _a === void 0 ? void 0 : _a.blur();
43
52
  }
44
53
  /** Selects the radio button element */
45
54
  async select() {
46
- var _a;
55
+ var _a, _b, _c;
47
56
  if (this.checked)
48
57
  return;
49
58
  if (this.disabled)
@@ -53,8 +62,8 @@ const RadioButton = class {
53
62
  radio.shadowRoot.querySelector('.r-radio-button--input').setAttribute('tabindex', '-1');
54
63
  });
55
64
  this.checked = true;
56
- this.nativeEl.setAttribute('tabindex', '0');
57
- this.nativeEl.focus();
65
+ (_b = this.nativeEl) === null || _b === void 0 ? void 0 : _b.setAttribute('tabindex', '0');
66
+ (_c = this.nativeEl) === null || _c === void 0 ? void 0 : _c.focus();
58
67
  const { host, value, checked } = this;
59
68
  this.rChange.emit({ element: host, value, checked });
60
69
  }
@@ -88,6 +97,9 @@ const RadioButton = class {
88
97
  get isTrailing() {
89
98
  return this.host.querySelector('[slot="trailing"]') !== null || this.host.querySelector('r-radio-button-trailing') !== null;
90
99
  }
100
+ get shouldAutofocus() {
101
+ return this.autofocus && (!this.groupEl || !this.groupEl.autofocus);
102
+ }
91
103
  componentWillLoad() {
92
104
  if (!this.initialState)
93
105
  this.initialState = this.checked;
@@ -95,8 +107,12 @@ const RadioButton = class {
95
107
  this.name = this.groupEl.name;
96
108
  }
97
109
  }
110
+ componentDidLoad() {
111
+ if (this.shouldAutofocus)
112
+ this.applyAutofocus();
113
+ }
98
114
  render() {
99
- const { name, value, checked, disabled, hint, uniqueId, required, invalid, error } = this;
115
+ const { name, value, checked, disabled, hint, uniqueId, required, invalid, error, autofocus } = this;
100
116
  const inputAttrs = {
101
117
  type: 'radio',
102
118
  tabindex: '-1',
@@ -104,13 +120,14 @@ const RadioButton = class {
104
120
  value,
105
121
  disabled,
106
122
  checked,
107
- required
123
+ required,
124
+ autofocus
108
125
  };
109
- return (h(Host, { key: '862574a20e04e55e3e7e0b8cb48131652f029030' }, h("label", { key: 'b916e9d5740605bad9a1f88c6bb07d0564b63f16', class: "r-radio-button", onClick: this.onClick, onKeyDown: this.onKeydown }, h("input", Object.assign({ key: 'd0ca90e85e619d8c5b9a8c71ae1582db65562036' }, inputAttrs, { id: `${uniqueId}-input`, class: "r-radio-button--input", ref: el => this.nativeEl = el, onFocus: this.onFocus, onBlur: this.onBlur })), h("span", { key: 'f77f3e56e88c5e3ad1f3e36e5f96715edb7e91cc', class: "r-radio-button--box" }), this.isLeading &&
110
- h("div", { key: '60d6a15880fafd8007d20a80137b30f19d4f641e', class: "r-radio-button--leading" }, h("slot", { key: '9329c56d97e5e357ea70d165ee11ac171c605519', name: "leading" }, this.icon && h("r-icon", { key: 'ace86d3b61cd39f05ca3146e54d3ae4820d7b66d', name: this.icon, size: "m" }))), h("div", { key: '7773e0c5b2348245e4b4dafc06a6b10a6dc245c3', class: "r-radio-button--text" }, h("slot", { key: 'f060b0853a7a6ed0108d0182669807fd0236da33', name: "title" }, h("div", { key: '1ca5059e718a0bda9a53e2e0f630a617d0252638', style: { display: 'contents' } }, h("slot", { key: 'cb9128b915d2a71cff7e8960d5bd86973c615232' }))), h("slot", { key: 'f07a62e2caa36ceb27bc547cf86c7dfcdce1c5b4', name: "description" }, this.description)), this.isTrailing &&
111
- h("div", { key: 'cc5e6dff1c324fdce239f8d4e553e154bdb73eac', class: "r-radio-button--trailing" }, h("slot", { key: '3d5e862c5830adb7a480fbb71ff92fef054bf1f7', name: "trailing" }))), invalid && error &&
112
- h("r-hint", { key: '997b440b69a23cb432b8376b0351a947ec3b162e', role: "alert", variant: "error", id: `${uniqueId}-hint` }, this.error), hint &&
113
- h("r-hint", { key: 'd3c41065b4924f42a2971d1cb91154e8e3041238', role: "note", variant: "information", id: `${uniqueId}-hint` }, hint)));
126
+ return (h(Host, { key: '718b29840798212b4a31a2250fe79620554a9fb5' }, h("label", { key: 'ab86d4ca9bb300628a5b7f4bf10ba2ce88656d6d', class: "r-radio-button", onClick: this.onClick, onKeyDown: this.onKeydown }, h("input", Object.assign({ key: '529324a5ae32238b56ab9443a9ba3dd67b9b76bd' }, inputAttrs, { id: `${uniqueId}-input`, class: "r-radio-button--input", ref: el => this.nativeEl = el, onFocus: this.onFocus, onBlur: this.onBlur })), h("span", { key: 'a90a3704b4fc2d431482cca0c4064241001e09d2', class: "r-radio-button--box" }), this.isLeading &&
127
+ h("div", { key: '8a067dc10dc0f764c507be6610a8bf6f80565f8b', class: "r-radio-button--leading" }, h("slot", { key: 'db99a204cdf0932b203a65698f6167ede11309c4', name: "leading" }, this.icon && h("r-icon", { key: '8f6b1c585e0dcfcee9bb471e59f4d911ff72e7bc', name: this.icon, size: "m" }))), h("div", { key: 'b2ec0c20df6bffa599c5331016f3c52ce5661a17', class: "r-radio-button--text" }, h("slot", { key: '82ed5be7758c72ece18d4df27c0dbeb7e00ab1fc', name: "title" }, h("div", { key: '9c839853016eb5e7a3940bea0f9c5c755933ae55', style: { display: 'contents' } }, h("slot", { key: '78875045c000e5dcd0375fe2143e3032bf3a5226' }))), h("slot", { key: 'd75f2511dc33c734eb34c0d8953ed5be2f4cb7ea', name: "description" }, this.description)), this.isTrailing &&
128
+ h("div", { key: 'fd204a1c99ac54d60fc4479de3ca650d8ecf6508', class: "r-radio-button--trailing" }, h("slot", { key: '9a82590bc860567d1a60f9125622b1e63471ad94', name: "trailing" }))), invalid && error &&
129
+ h("r-hint", { key: '1fc760af1aff4ca5aaa595270c294b492fdb14e3', role: "alert", variant: "error", id: `${uniqueId}-hint` }, this.error), hint &&
130
+ h("r-hint", { key: '079a060908d285505f7093820933c173194f2348', role: "note", variant: "information", id: `${uniqueId}-hint` }, hint)));
114
131
  }
115
132
  get host() { return getElement(this); }
116
133
  };
@@ -9,15 +9,13 @@ const RadioGroup = class {
9
9
  this.rValidate = createEvent(this, "rValidate");
10
10
  this.rChange = createEvent(this, "rChange");
11
11
  this.rReset = createEvent(this, "rReset");
12
- /**
13
- * _DEPRECATED_ (This property will be removed in November 2025 release.)
14
- * Indicates whether to show the validation state.
15
- * When set to `true`, the component will display validation feedback.
16
- * Defaults to `false`.
17
- */
18
- this.showValid = false;
19
12
  /** Controls the style variation of the radio buttons. */
20
13
  this.variant = 'standard';
14
+ /**
15
+ * When set to `true`, automatically focuses the first enabled radio button in the group on mount.
16
+ * This will focus the selected radio button if one exists, or the first enabled radio button otherwise.
17
+ */
18
+ this.autofocus = false;
21
19
  this.validityState = '';
22
20
  this.validityMessage = '';
23
21
  /**
@@ -266,10 +264,10 @@ const RadioGroup = class {
266
264
  return this.host.querySelectorAll('r-radio-button:not([disabled]:not([disabled="false"]))');
267
265
  }
268
266
  get selectedRadioButtonElement() {
269
- return Array.from(this.radioButtonElements).find(el => el.hasAttribute('checked')) || null;
267
+ return Array.from(this.radioButtonElements).find(el => el.checked || el.hasAttribute('checked')) || null;
270
268
  }
271
269
  get hasSelected() {
272
- return Array.from(this.radioButtonElements).some(el => el.hasAttribute('checked'));
270
+ return Array.from(this.radioButtonElements).some(el => el.checked || el.hasAttribute('checked'));
273
271
  }
274
272
  get nativeSelectedEl() {
275
273
  var _a, _b;
@@ -331,21 +329,19 @@ const RadioGroup = class {
331
329
  const { name, required } = this;
332
330
  this.passPropsToGroupItems({ name, required });
333
331
  this.setTabindex();
332
+ if (this.autofocus) {
333
+ queueMicrotask(() => {
334
+ this.setFocus();
335
+ });
336
+ }
334
337
  }
335
338
  render() {
336
- const { label, hint, fieldIndicator, tooltip, tooltipIcon, tooltipIconColor, error, uniqueId, invalid } = this;
337
- // DEPRECATED: will be removed in November 2025 release.
338
- const labelAttr = {
339
- tooltip,
340
- 'tooltip-icon': tooltipIcon,
341
- 'tooltip-icon-color': tooltipIconColor
342
- };
343
- return (h(Host, { key: '5bf5f0493d2329b07d82e332153e467239ddff0f' }, h("div", { key: '06f96cb1868f7cbb635137ca68eda6a326b969c3', class: "r-radio-group", onClick: this.onLabelClick }, label &&
344
- h("div", { key: '4dca24e0cb903a2e74e55ee743ed595608af0bf4', class: "r-radio-group--label-container" }, h("r-label", Object.assign({ key: 'cba1398032eae164db0a00808a06116affa671ec', id: `${uniqueId}-label`, class: "r-radio-group--label", "field-indicator": fieldIndicator }, labelAttr), label), h("slot", { key: 'c0180f3c6c99fed7d524719aff8eb8e64236cc3c', name: "popover" })), hint &&
345
- h("r-hint", { key: '3ae1c84630975059aa1532b4b72957967e398949', id: `${uniqueId}-hint`, class: "r-radio-group--hint", role: "note" }, hint), h("div", { key: '2c18a09474189e6f2719db7c6ee5fb51c460e52f', class: "r-radio-group--content" }, h("slot", { key: '1c79f92cc0cd2095cfe51ee5fc108b6a004c4e4e' }))), invalid && error &&
346
- h("r-hint", { key: '86aa0f4d1400e401cc7f71259511f118a3f68ef7', "aria-live": "polite", id: `${uniqueId}-message`, role: "alert", variant: "error" }, error), this.validityState !== 'valid' && this.validityMessage &&
347
- h("r-hint", { key: 'aa06f829a6566becdf4a1f86e26e5161526756fb', "aria-live": "polite", id: `${uniqueId}-message`, role: "alert", variant: "error" }, this.customErrorMessage || this.validityMessage), this.valid && this.validMessage && this.showValid &&
348
- h("r-hint", { key: '11500e705487028e4312679a6757dc48d861ebba', role: "alert", variant: "success" }, this.validMessage)));
339
+ const { label, hint, fieldIndicator, error, uniqueId, invalid } = this;
340
+ return (h(Host, { key: '598a714f75ce283c76278d52fb7684c5818700f9' }, h("div", { key: '0c691e6738d11dcc8b621fe90b356980944ce5ec', class: "r-radio-group", onClick: this.onLabelClick }, label &&
341
+ h("div", { key: '3071e2dedc5e9935bd6f80cc3e01883d8bffacc6', class: "r-radio-group--label-container" }, h("r-label", { key: '6175d4620468c3d2b06790baf11673c47e797bd7', id: `${uniqueId}-label`, class: "r-radio-group--label", "field-indicator": fieldIndicator }, label), h("slot", { key: '9c3595a94234b99bec2001c9667c53cd41d8fdde', name: "popover" })), hint &&
342
+ h("r-hint", { key: '8d9ef5dbaacac8a9cae05a633c942c8009b3d686', id: `${uniqueId}-hint`, class: "r-radio-group--hint", role: "note" }, hint), h("div", { key: '9206c8f841cc20ee632f58da3775e1d967730c58', class: "r-radio-group--content" }, h("slot", { key: '1f7edd0e36e16956acf7dbe5dd17c16a43b39666' }))), invalid && error &&
343
+ h("r-hint", { key: 'e4780947cede5a39e553d639eb37aeb842f1cda3', "aria-live": "polite", id: `${uniqueId}-message`, role: "alert", variant: "error" }, error), this.validityState !== 'valid' && this.validityMessage &&
344
+ h("r-hint", { key: '4c9867129f7da323cc9e99b350332ac1d5740a0e', "aria-live": "polite", id: `${uniqueId}-message`, role: "alert", variant: "error" }, this.customErrorMessage || this.validityMessage)));
349
345
  }
350
346
  get host() { return getElement(this); }
351
347
  };
@@ -119,7 +119,7 @@ const SelectOption = class {
119
119
  size: iconSize,
120
120
  color: iconColor
121
121
  };
122
- return (h(Host, { key: '1f3440961f3c606f5b2b1eef77ae3c53fc1ea4a0', id: uniqueId, role: "option", onClick: this.handleClick, onKeydown: this.handleKeydown, "aria-disabled": `${disabled}`, "aria-selected": `${this.isSelected}`, "data-value": this.definedValue, "data-focused": `${this.isFocused}` }, h("div", { key: '9a29dd16478d39c905f8cb54ca603e6982c3a24e', class: "r-select-option" }, icon && h("span", { key: 'fdcecb70781424749e0527f06eff5140a8a79ccc', class: "r-select-option--icon" }, h("r-icon", Object.assign({ key: '5a1906d39a27bc70729d26e93fd8f0d77e80e972' }, iconAttributes))), !icon && hasIconSlot && h("span", { key: '572b0e90b5695e0233505f28fb7c9b3dbc90a73f', class: "r-select-option--icon" }, h("slot", { key: 'bc04c317491e690281b0f4442aaff3f86a5ddb12', name: "icon" })), h("span", { key: '77bf634b415a36d8463212918cf200fda8647f85', class: "r-select-option--label" }, h("slot", { key: '83dd97fa580d18f4a9e27beca4835adf6c746240' })))));
122
+ return (h(Host, { key: 'd059d75cec11ef39ddea8c4ddc9ce8bc9d1a57e7', id: uniqueId, role: "option", onClick: this.handleClick, onKeydown: this.handleKeydown, "aria-disabled": `${disabled}`, "aria-selected": `${this.isSelected}`, "data-value": this.definedValue, "data-focused": `${this.isFocused}` }, h("div", { key: '70fa5c2fc9194d197b4124b6afad296d2849032c', class: "r-select-option" }, icon && h("span", { key: '07bdfeb2d8330c989e6b59c34ee85cac029135cb', class: "r-select-option--icon" }, h("r-icon", Object.assign({ key: '358748199ca580e8a9d397ed4f5642a722703441' }, iconAttributes))), !icon && hasIconSlot && h("span", { key: '60a4e6059188b27d0fbe6e9b0134882cea803d90', class: "r-select-option--icon" }, h("slot", { key: '08b11beec2c086b21ab92ad6cab080bae1cd0eac', name: "icon" })), h("span", { key: '4397696c7b8ec172098d9bd82e0c89c55781bb91', class: "r-select-option--label" }, h("slot", { key: 'b9dddec8b9c455f130ed38577c9321cb6aced0dd' })))));
123
123
  }
124
124
  get host() { return getElement(this); }
125
125
  };
@@ -10,19 +10,8 @@ const Select = class {
10
10
  this.rValidate = createEvent(this, "rValidate");
11
11
  this.rChange = createEvent(this, "rChange");
12
12
  this.rReset = createEvent(this, "rReset");
13
- /** Controls the visibility of validation indicators for the field. */
14
- this.showValid = false;
15
13
  /** Define if select should render as a text item or a block */
16
14
  this.fullWidth = false;
17
- /** _DEPRECATED_ (This property will be removed in November 2025 release. Use `leading slot` instead)
18
- * Define size of an icon that serves as leading icon in select */
19
- this.leadingIconSize = 's';
20
- /** _DEPRECATED_ (This property will be removed in November 2025 release.)
21
- * Defines the trailing icon defined by name for select, Default: 'andle-down' */
22
- this.trailingIcon = 'angle-down';
23
- /** _DEPRECATED_ (This property will be removed in November 2025 release.)
24
- * Define size of an icon that serves as trailing icon in select */
25
- this.tralingIconSize = 's';
26
15
  /** Define wether listbox appears on top or at the bottom of the select */
27
16
  this.listboxPosition = 'bottom';
28
17
  /**
@@ -1026,11 +1015,8 @@ const Select = class {
1026
1015
  var _a;
1027
1016
  return this.validityState !== 'valid' && ((_a = this.validityMessage) === null || _a === void 0 ? void 0 : _a.length) > 0;
1028
1017
  }
1029
- get hasValidationSuccess() {
1030
- return this.valid && this.validMessage && this.showValid;
1031
- }
1032
1018
  get hasMessage() {
1033
- return this.hasError || this.hasValidationError || this.hasValidationSuccess;
1019
+ return this.hasError || this.hasValidationError;
1034
1020
  }
1035
1021
  get isInteractive() {
1036
1022
  return !this.disabled && !this.isReadonly;
@@ -1065,14 +1051,10 @@ const Select = class {
1065
1051
  }
1066
1052
  render() {
1067
1053
  var _a;
1068
- const { uniqueId, disabled, isExpanded, fieldIndicator, invalid, placeholder, required, hint, label, internal, tooltip, tooltipIcon, tooltipIconColor } = this;
1069
- // DEPRECATED: will be removed in November 2025 release.
1070
- const tooltipAttrs = tooltip && !disabled ? {
1071
- tooltip,
1072
- 'tooltip-icon': tooltipIcon,
1073
- 'tooltip-icon-color': tooltipIconColor,
1054
+ const { uniqueId, disabled, isExpanded, fieldIndicator, invalid, placeholder, required, hint, label, internal } = this;
1055
+ const labelAttr = label ? {
1056
+ fieldIndicator
1074
1057
  } : {};
1075
- const labelAttr = label ? Object.assign({ fieldIndicator }, tooltipAttrs) : {};
1076
1058
  const isRequired = this.isInteractive ? !!required : false;
1077
1059
  const comboboxAttrs = {
1078
1060
  id: `${uniqueId}-value`,
@@ -1099,8 +1081,8 @@ const Select = class {
1099
1081
  disabled,
1100
1082
  required: isRequired
1101
1083
  };
1102
- return (h(Host, { key: '9c22bae93d955802f695b20f25d3ff5c79fcc7d8', "data-value": this.currentValue, expanded: !this.disabled && this.isExpanded, "data-listbox-position": this.listboxPositionState, "data-initial-value": this.initial['value'], "data-is-placeholder": `${!!this.isPlaceholder}`, "data-value-focused": `${!!this.isValueFocused}`, "data-option-focused": `${!!this.focusedOption}`, "data-validity-state": `${this.validityState || ''}`, "data-validity-message": `${this.validityMessage || ''}`, "data-readonly": `${!!this.isReadonly}`, "data-touched": `${this.touched}`, "data-dirty": `${this.dirty}` }, h("div", { key: '2e8de0d2041d00c4d90caf5aba2aeb50fcfc86e5', class: `r-select--label ${!internal ? 'r-select--label__margin-bottom' : ''}` }, h("div", { key: '273524030b099899861c93e9bba205c6c820d425', class: internal ? 'visually-hidden' : 'r-select--label-container' }, h("label", { key: 'f050500698aa5a48d6db101074129fae09899de3', id: `${uniqueId}-label`, onClick: this.isInteractive ? this.onValueClick : null }, h("r-label", Object.assign({ key: 'b5560ba5b8ee794eb775a555dec514f4d6e6546f' }, labelAttr), label)), h("slot", { key: 'bbbbe371702b95ac3d1636756eb673dc44c0dcb4', name: "popover" })), hint &&
1103
- h("r-hint", { key: '27585bacce2143f20bdb20a3e03b5700dbb87d9b', id: `${uniqueId}-hint`, class: "r-select--hint" }, hint)), h("div", { key: '92a69fbee0890d5ddab0353348cdb4d8eb772137', class: "r-select" }, h("select", Object.assign({ key: 'bc2de60d73dcebf750a99e7b88eacc701a8c0b85', class: "r-select--native", ref: el => this.nativeElement = el }, nativeAttrs)), h("div", { key: 'b561dee21bdf58abe51786564a18812a20a0e97f', class: "r-select--container" }, this.combobox ? this.renderCombobox(comboboxAttrs) : this.renderSelect(comboboxAttrs), h("div", Object.assign({ key: '06984ccf7f6740e2480ef61924676e99d40044d4', role: "listbox", tabindex: "-1", id: `${uniqueId}-list`, class: "r-select--options", ref: el => this.listboxElement = el }, listboxAttrs), (this.isNoResultsFound || !((_a = this.optionElements) === null || _a === void 0 ? void 0 : _a.length)) && h("r-select-option", { key: '67888a456006e44869081876d35cdceca754942d', "data-no-results": "true", value: "no_results" }, this.noResultsFound), h("slot", { key: '4f404790887ad37d488183d814bb69f33c262688', onSlotchange: this.handleSlotChange })))), h("div", { key: '0b223f242cfc90ce38a0cf83d38dc0c81348b36d', id: `${uniqueId}-message`, "aria-live": "polite", "aria-atomic": "true", ref: (el) => this.messageContainer = el, class: this.hasMessage && !internal ? 'r-select--message' : 'visually-hidden' }, this.hasMessage && h("r-hint", { key: '57336df2dd79b8f91be950f7a4ca05258ec26184', variant: this.invalid ? 'error' : 'success' }, this.hasError && this.error, this.hasValidationError && this.validityMessage, this.hasValidationSuccess && this.validMessage))));
1084
+ return (h(Host, { key: '7f1fb8ee95b7da1cd7aad0d212d1efa9da744dc2', "data-value": this.currentValue, expanded: !this.disabled && this.isExpanded, "data-listbox-position": this.listboxPositionState, "data-initial-value": this.initial['value'], "data-is-placeholder": `${!!this.isPlaceholder}`, "data-value-focused": `${!!this.isValueFocused}`, "data-option-focused": `${!!this.focusedOption}`, "data-validity-state": `${this.validityState || ''}`, "data-validity-message": `${this.validityMessage || ''}`, "data-readonly": `${!!this.isReadonly}`, "data-touched": `${this.touched}`, "data-dirty": `${this.dirty}` }, h("div", { key: 'cb2a21da12f1f1c0dc298f42338d32b709f62375', class: `r-select--label ${!internal ? 'r-select--label__margin-bottom' : ''}` }, h("div", { key: 'd293ba41b9846d24ba4a2c44fb8fcb9895637c03', class: internal ? 'visually-hidden' : 'r-select--label-container' }, h("label", { key: 'b562d22174f435deed545a94d0fd7ce0233ba3de', id: `${uniqueId}-label`, onClick: this.isInteractive ? this.onValueClick : null }, h("r-label", Object.assign({ key: '2412f39f04b62a1fac018b588fb463efc9760ae0' }, labelAttr), label)), h("slot", { key: '99c5c78534118199fc1e99daac2737b78d55bc28', name: "popover" })), hint &&
1085
+ h("r-hint", { key: '74f3cf98c25ba600e8faf8a1793d56ab14c01466', id: `${uniqueId}-hint`, class: "r-select--hint" }, hint)), h("div", { key: '1960780639c8896bc52d1b62269d9453645132ef', class: "r-select" }, h("select", Object.assign({ key: '2b9d75c37066bfeb8e06b4097ecc73bd96358702', class: "r-select--native", ref: el => this.nativeElement = el }, nativeAttrs)), h("div", { key: '3eff5f8f263a013e0ba7ba64eace1da6167b6d1f', class: "r-select--container" }, this.combobox ? this.renderCombobox(comboboxAttrs) : this.renderSelect(comboboxAttrs), h("div", Object.assign({ key: 'bbfb28e905d17feee0bd2693faac327d8ef97894', role: "listbox", tabindex: "-1", id: `${uniqueId}-list`, class: "r-select--options", ref: el => this.listboxElement = el }, listboxAttrs), (this.isNoResultsFound || !((_a = this.optionElements) === null || _a === void 0 ? void 0 : _a.length)) && h("r-select-option", { key: '319993c58f2133c271c2db357d22132497751958', "data-no-results": "true", value: "no_results" }, this.noResultsFound), h("slot", { key: 'bbb21659679bb22e3aeb9471a34e3e007ab835d8', onSlotchange: this.handleSlotChange })))), h("div", { key: '5971e5c4f3bbb453dcae9f3ecbdf2c2f14cf0293', id: `${uniqueId}-message`, "aria-live": "polite", "aria-atomic": "true", ref: (el) => this.messageContainer = el, class: this.hasMessage && !internal ? 'r-select--message' : 'visually-hidden' }, this.hasMessage && h("r-hint", { key: '1c1aba3c4f3baa93cd6ecab59dd40d99ad5bd0b2', variant: this.invalid ? 'error' : 'success' }, this.hasError && this.error, this.hasValidationError && this.validityMessage))));
1104
1086
  }
1105
1087
  get host() { return getElement(this); }
1106
1088
  static get watchers() { return {
@@ -9,7 +9,7 @@ const SkipLink = class {
9
9
  this.position = 'center';
10
10
  }
11
11
  render() {
12
- return (h(Host, { key: '7ca2f29a347197be2951841e6b59807360e76f9d' }, h("slot", { key: '6d26f29f7dbec9d60e302de3cbbf0d8d2afd3009' })));
12
+ return (h(Host, { key: '5097cfa89ded56bcfb98dc24ca0b1e42c389e4ae' }, h("slot", { key: 'bba803efc4b82b0612e270665d5f80b740a786f1' })));
13
13
  }
14
14
  };
15
15
  SkipLink.style = skipLinkCss;
@@ -1,6 +1,6 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-Da7qOBFr.js';
2
2
 
3
- const stepperItemCss = ":host([active]){--r-stepper-item--indicator--background-color:var(--r-background-inverse, #282828);--r-stepper-item--color:var(--r-text-inverse, #FFF);--r-stepper-item--text--color:var(--r-text-regular, #282828);--r-stepper-item--indicator--border-color:transparent}:host([complete]){--r-stepper-item--indicator--background-color:var(--r-status-success-regular, #298535);--r-stepper-item--color:var(--r-text-inverse, #FFF);--r-stepper-item--text--color:var(--r-text-regular, #282828);--r-stepper-item--indicator--border-color:transparent}.r-stepper-item{display:var(--r-stepper-item--display, flex);flex-direction:var(--r-stepper-item--flex-direction, column);align-items:var(--r-stepper-item--align-items, center);justify-content:var(--r-stepper-item--justify-content, center);font-size:var(--r-stepper-item--font-size, var(--r-font-size-200, 13px));color:var(--r-stepper-item--color, var(--r-text-soft, #686868));font-family:var(--r-stepper-item--font-family, var(--r-font-family-text, system-ui));width:var(--r-stepper-item--width, 36px);white-space:var(--r-stepper-item--white-space, nowrap);gap:var(--r-stepper-item--gap, 8px)}.r-stepper-item--indicator{width:var(--r-stepper-item--indicator--width, 20px);height:var(--r-stepper-item--indicator--height, 20px);line-height:var(--r-stepper-item--indicator--line-height, 20px);border-radius:var(--r-stepper-item--indicator--border-radius, 50%);background-color:var(--r-stepper-item--indicator--background-color, transparent);display:var(--r-stepper-item--indicator--display, flex);justify-content:var(--r-stepper-item--indicator--justify-content, center);align-items:var(--r-stepper-item--indicator--align-items, center);border-width:var(--r-stepper-item--indicator--border-width, 1px);border-style:var(--r-stepper-item--indicator--border-style, solid);border-color:var(--r-stepper-item--indicator--border-color, var(--r-border-soft, #686868));margin-left:var(--r-stepper-item--indicator--margin-left, 8px);margin-right:var(--r-stepper-item--indicator--margin-right, 8px)}.r-stepper-item--indicator--step-number{vertical-align:var(--r-stepper-item--step-number--vertical-align, middle)}.r-stepper-item--text{font-size:var(--r-stepper-item--text--font-size, var(--r-font-size-200, 13px));color:var(--r-stepper-item--text--color, var(--r-text-soft, #686868));text-align:var(--r-stepper-item--text--text-align, center)}";
3
+ const stepperItemCss = ":host([active]){--r-stepper-item--indicator--background-color:var(--r-background-inverse, #282828);--r-stepper-item--color:var(--r-text-inverse, #FFF);--r-stepper-item--text--color:var(--r-text-regular, #282828);--r-stepper-item--indicator--border-color:transparent}:host([complete]){--r-stepper-item--indicator--background-color:var(--r-status-success-regular, #298535);--r-stepper-item--color:var(--r-text-inverse, #FFF);--r-stepper-item--text--color:var(--r-text-regular, #282828);--r-stepper-item--indicator--border-color:transparent}.r-stepper-item{display:var(--r-stepper-item--display, flex);flex-direction:var(--r-stepper-item--flex-direction, column);align-items:var(--r-stepper-item--align-items, center);justify-content:var(--r-stepper-item--justify-content, center);font-size:var(--r-stepper-item--font-size, var(--r-font-size-200, 13px));color:var(--r-stepper-item--color, var(--r-text-regular, #282828));font-family:var(--r-stepper-item--font-family, var(--r-font-family-text, system-ui));width:var(--r-stepper-item--width, 36px);white-space:var(--r-stepper-item--white-space, nowrap);gap:var(--r-stepper-item--gap, 8px)}.r-stepper-item--indicator{width:var(--r-stepper-item--indicator--width, 20px);height:var(--r-stepper-item--indicator--height, 20px);line-height:var(--r-stepper-item--indicator--line-height, 20px);border-radius:var(--r-stepper-item--indicator--border-radius, 50%);background-color:var(--r-stepper-item--indicator--background-color, transparent);display:var(--r-stepper-item--indicator--display, flex);justify-content:var(--r-stepper-item--indicator--justify-content, center);align-items:var(--r-stepper-item--indicator--align-items, center);border-width:var(--r-stepper-item--indicator--border-width, 1px);border-style:var(--r-stepper-item--indicator--border-style, solid);border-color:var(--r-stepper-item--indicator--border-color, var(--r-text-regular, #282828));margin-left:var(--r-stepper-item--indicator--margin-left, 8px);margin-right:var(--r-stepper-item--indicator--margin-right, 8px)}.r-stepper-item--indicator--step-number{vertical-align:var(--r-stepper-item--step-number--vertical-align, middle)}.r-stepper-item--text{font-size:var(--r-stepper-item--text--font-size, var(--r-font-size-200, 13px));color:var(--r-stepper-item--text--color, var(--r-text-regular, #282828));text-align:var(--r-stepper-item--text--text-align, center)}";
4
4
 
5
5
  const StepperItem = class {
6
6
  constructor(hostRef) {
@@ -15,8 +15,8 @@ const StepperItem = class {
15
15
  }
16
16
  render() {
17
17
  const number = this.number || this.stepNumber;
18
- return (h(Host, { key: 'a5004ade661b4abfacb920a256f6a12bbd32a6ea' }, h("div", { key: '1358044cc918c2988a2f32198b0a8260cf439ec0', class: "r-stepper-item" }, h("div", { key: 'ec2afea7c0b6d603ebce7dda25e93246fafb248a', class: "r-stepper-item--indicator" }, this.complete ? (h("r-icon", { name: "check", size: "s" })) : this.icon ? (h("r-icon", { name: this.icon, size: "s" })) : number !== undefined ? (h("span", { class: "r-stepper-item--indicator--step-number" }, number)) : null), this.hasText &&
19
- h("div", { key: '6cf7607d13bdd0bd58885e5cc4c74c0068448dfc', class: "r-stepper-item--text" }, h("slot", { key: '8c47f057e435924f8c004be5f3112743127bf885' })))));
18
+ return (h(Host, { key: '3613c92e8ac7583bf5e3db7e90edca9a921fa475' }, h("div", { key: 'ca2c38443d9a855baea829e99ec9c642c279a3be', class: "r-stepper-item" }, h("div", { key: '513f01a9a3ac3a87c3622b14f051765121308241', class: "r-stepper-item--indicator" }, this.complete ? (h("r-icon", { name: "check", size: "s" })) : this.icon ? (h("r-icon", { name: this.icon, size: "s" })) : number !== undefined ? (h("span", { class: "r-stepper-item--indicator--step-number" }, number)) : null), this.hasText &&
19
+ h("div", { key: 'cec8659e5ff31608b05c6f62798a8a1048cd7539', class: "r-stepper-item--text" }, h("slot", { key: '6a9d581948decc8a15e66401275cb85bf52bb459' })))));
20
20
  }
21
21
  get host() { return getElement(this); }
22
22
  };
@@ -1,6 +1,6 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-Da7qOBFr.js';
2
2
 
3
- const stepperCss = ".r-stepper{display:var(--r-stepper--display, flex);align-items:var(--r-stepper--align-items, top)}.r-stepper>r-stepper-item,.r-stepper ::slotted(r-stepper-item){display:var(--r-stepper--slotted--stepper-item--display, flex)}.r-stepper>r-stepper-item:not(:last-of-type),.r-stepper ::slotted(r-stepper-item:not(:last-child)){flex:var(--r-stepper--slotted--stepper-item--flex, 1)}.r-stepper>r-stepper-item:not(:last-of-type)::after,.r-stepper ::slotted(r-stepper-item:not(:last-child))::after{content:var(--r-stepper-divider--content, \"\");display:var(--r-stepper-divider--display, block);position:var(--r-stepper-divider--position, relative);width:var(--r-stepper-divider--width, 100%);height:var(--r-stepper-divider--height, 1px);top:var(--r-stepper-divider--top, 10px);background-color:var(--r-stepper-divider--background-color, var(--r-border-soft, #686868))}";
3
+ const stepperCss = ".r-stepper{display:var(--r-stepper--display, flex);align-items:var(--r-stepper--align-items, top)}.r-stepper>r-stepper-item,.r-stepper ::slotted(r-stepper-item){display:var(--r-stepper--slotted--stepper-item--display, flex)}.r-stepper>r-stepper-item:not(:last-of-type),.r-stepper ::slotted(r-stepper-item:not(:last-child)){flex:var(--r-stepper--slotted--stepper-item--flex, 1)}.r-stepper>r-stepper-item:not(:last-of-type)::after,.r-stepper ::slotted(r-stepper-item:not(:last-child))::after{content:var(--r-stepper-divider--content, \"\");display:var(--r-stepper-divider--display, block);position:var(--r-stepper-divider--position, relative);width:var(--r-stepper-divider--width, 100%);height:var(--r-stepper-divider--height, 1px);top:var(--r-stepper-divider--top, 10px);background-color:var(--r-stepper-divider--background-color, var(--r-text-regular, #282828))}";
4
4
 
5
5
  const Stepper = class {
6
6
  constructor(hostRef) {
@@ -15,7 +15,7 @@ const Stepper = class {
15
15
  }
16
16
  render() {
17
17
  const completed = this.completed || this.completeSteps;
18
- return (h(Host, { key: 'd501495c36f83cfc14c706f46936d5acc925d6d2' }, h("div", { key: 'a2952de15ea74093ea41663438bc8fec866d428b', class: "r-stepper" }, !this.hasSteps && Array.from({ length: this.total }, (_, index) => (h("r-stepper-item", { number: index + 1, complete: completed > index, active: completed === index, key: index }))), h("slot", { key: '4834a5947ae40241607131dcbb3dfa56354fdc13' }))));
18
+ return (h(Host, { key: '196ddb8922499f7222418d19cd6ddc994c211119' }, h("div", { key: '2220fcb8ec2125a15db198ec7948780d8d331e50', class: "r-stepper" }, !this.hasSteps && Array.from({ length: this.total }, (_, index) => (h("r-stepper-item", { number: index + 1, complete: completed > index, active: completed === index, key: index }))), h("slot", { key: '69c7eb87d53b67b19efc6da0ab489debc7e6b06c' }))));
19
19
  }
20
20
  get host() { return getElement(this); }
21
21
  };
@@ -16,7 +16,7 @@ const RTabPanel = class {
16
16
  active,
17
17
  'aria-labelledby': tabId
18
18
  };
19
- return (h(Host, Object.assign({ key: '042aba1f5eebeafdff7035d8ad5afc9ec204eb8a', class: "r-typography" }, hostAttrs), h("div", { key: '0e9c72a859b07c1e4c2cb4a5d936fbadc07f23ca', class: "r-tab-panel" }, h("slot", { key: '2d588c5c67cfd26d7762a2be0c8400faa12a96c8' }))));
19
+ return (h(Host, Object.assign({ key: 'db95a245a8aa8900e1cea5af71ac488352954299', class: "r-typography" }, hostAttrs), h("div", { key: '0e720978d72a9d9ba9da367794ac96c49737d854', class: "r-tab-panel" }, h("slot", { key: 'f16a0da6c7d3d2c1e0c57778837bdb47879468b4' }))));
20
20
  }
21
21
  };
22
22
  RTabPanel.style = tabPanelCss;
@@ -1,6 +1,6 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-Da7qOBFr.js';
2
2
 
3
- const tabCss = ":host{display:flex;outline:none;opacity:1;cursor:pointer}:host(:hover:not([disabled]:not([disabled=false]))){--r-tab--color:var(--r-text-strong);--r-tab--marker--height:5px;--r-tab--marker--background-color:var(--r-border-softer, #c9c9c9);--r-tab--marker--visibility:visible}:host(:active:not([disabled]:not([disabled=false]))){--r-tab--background-color:var(--r-background-interactive-pressed, rgba(40,40,40,0.12))}:host(:focus-visible){--r-tab--marker--visibility:visible;--r-tab--marker--height:5px;--r-tab--marker--background-color:var(--r-background-interactive-pressed, rgba(40,40,40,0.12));--r-tab--slot--box-shadow:0 0 0 6px var(--r-border-focused-outlined, #fff);--r-tab--slot--outline:2px solid var(--r-border-focused, #0071e3);--r-tab--slot--outline-offset:2px}:host([active]:not([active=false])){cursor:default;--r-tab--font-weight:var(--r-font-weight-semibold, 600);--r-tab--color:var(--r-text-strong, #000);--r-tab--padding-left:0.5625rem;--r-tab--padding-right:0.5625rem;--r-tab--marker--background-color:var(--r-border-regular, #282828);--r-tab--marker--visibility:visible;--r-tab--marker--height:3px}:host([disabled]:not([disabled=false])){opacity:0.4;cursor:not-allowed;--r-tab--pointer-events:none;--r-tab--marker--visibility:hidden;--r-tab--slot--box-shadow:none}.r-tab{position:var(--r-tab--position, relative);font-family:var(--r-tab--font-family, var(--r-font-family-text, system-ui));font-weight:var(--r-tab--font-weight, var(--r-font-weight-regular, 400));font-size:var(--r-tab--font-size, var(--r-font-size-400, 1rem));line-height:var(--r-tab--line-height, 1);cursor:var(--r-tab--cursor, inherit);pointer-events:var(--r-tab--pointer-events, initial);padding-top:var(--r-tab--padding-top, 0);padding-right:var(--r-tab--padding-right, 0.625rem);padding-bottom:var(--r-tab--padding-bottom, 1.25rem);padding-left:var(--r-tab--padding-left, 0.625rem);opacity:var(--r-tab--opacity, 1);background:var(--r-tab--background, none);color:var(--r-tab--color, var(--r-text-regular, #282828));border:var(--r-tab--border, none);box-shadow:var(--r-tab--box-shadow, none);outline:var(--r-tab--outline, none)}.r-tab::after{content:var(--r-tab--marker--content, \"\");width:var(--r-tab--marker--width, 100%);height:var(--r-tab--marker--height, 3px);position:var(--r-tab--marker--position, absolute);bottom:var(--r-tab--marker--bottom, 0);left:var(--r-tab--marker--left, 0);visibility:var(--r-tab--marker--visibility, hidden);background-color:var(--r-tab--marker--background-color, rgba(0, 0, 0, 0));transition:var(--r-tab--marker--transition, all 0.1s ease-in)}.r-tab--slot{box-shadow:var(--r-tab--slot--box-shadow, none);outline:var(--r-tab--slot--outline, none);outline-offset:var(--r-tab--slot--outline-offset, 0)}";
3
+ const tabCss = ":host{display:flex;outline:none;opacity:1;cursor:pointer}:host(:hover:not([disabled]:not([disabled=false]))){--r-tab--background:var(--r-background-interactive-hovered, rgba(40, 40, 40, 0.04))}:host(:active:not([disabled]:not([disabled=false]))){--r-tab--background:var(--r-background-interactive-pressed, rgba(40,40,40,0.12))}:host(:focus-visible){--r-tab--box-shadow:0 0 0 6px var(--r-border-focused-outlined, #fff);--r-tab--outline:2px solid var(--r-border-focused, #0071e3);--r-tab--outline-offset:2px}:host([active]:not([active=false])){cursor:default;--r-tab--font-weight:var(--r-font-weight-semibold, 600);--r-tab--marker--visibility:visible}:host([disabled]:not([disabled=false])){cursor:not-allowed;--r-tab--pointer-events:none;--r-tab--color:var(--r-text-soft, #686868);--r-tab--marker--background-color:var(--r-border-soft, #686868)}.r-tab{position:var(--r-tab--position, relative);font-family:var(--r-tab--font-family, var(--r-font-family-text, system-ui));font-weight:var(--r-tab--font-weight, var(--r-font-weight-regular, 400));font-size:var(--r-tab--font-size, var(--r-font-size-400, 1rem));line-height:var(--r-tab--line-height, var(--r-line-height-m, 1.5));cursor:var(--r-tab--cursor, inherit);pointer-events:var(--r-tab--pointer-events, initial);display:var(--r-tab--display, flex);align-items:var(--r-tab--align-items, center);justify-content:var(--r-tab--justify-content, center);gap:var(--r-tab--gap, var(--r-spacing-050, 0.5rem));width:var(--r-tab--width, auto);padding-top:var(--r-tab--padding-top, var(--r-spacing-025, 0.25rem));padding-right:var(--r-tab--padding-right, var(--r-spacing-050, 0.5rem));padding-bottom:var(--r-tab--padding-bottom, var(--r-spacing-100, 1rem));padding-left:var(--r-tab--padding-left, var(--r-spacing-050, 0.5rem));margin-bottom:var(--r-tab--margin-bottom, -1px);opacity:var(--r-tab--opacity, 1);background:var(--r-tab--background, none);color:var(--r-tab--color, var(--r-text-regular, #282828));border:var(--r-tab--border, none);box-shadow:var(--r-tab--box-shadow, none);outline:var(--r-tab--outline, none);outline-offset:var(--r-tab--outline-offset, 0)}.r-tab::after{content:var(--r-tab--marker--content, \"\");width:var(--r-tab--marker--width, 100%);height:var(--r-tab--marker--height, 3px);position:var(--r-tab--marker--position, absolute);bottom:var(--r-tab--marker--bottom, 0);left:var(--r-tab--marker--left, 0);visibility:var(--r-tab--marker--visibility, hidden);background-color:var(--r-tab--marker--background-color, var(--r-border-regular, #282828));transition:var(--r-tab--marker--transition, all 0.1s ease-in)}.r-tab--disabled-icon,.r-tab ::slotted([slot=icon]){color:var(--r-tab--icon--color, var(--r-icon-soft, #686868))}@media (prefers-reduced-motion){.r-tab::after{transition:none}}";
4
4
 
5
5
  const RTab = class {
6
6
  constructor(hostRef) {
@@ -28,6 +28,8 @@ const RTab = class {
28
28
  if (this.disabled)
29
29
  return;
30
30
  switch (event.code) {
31
+ case 'ArrowLeft':
32
+ case 'ArrowRight':
31
33
  case 'Space':
32
34
  case 'Home':
33
35
  case 'End':
@@ -47,7 +49,9 @@ const RTab = class {
47
49
  'aria-selected': `${active}`,
48
50
  'aria-disabled': `${disabled}`
49
51
  };
50
- return (h(Host, Object.assign({ key: '2e2b2d84376e097c80a84a1e7224c0f026c16277', onClick: this.handleClick, onKeyUp: this.handleKeyup, onKeyDown: this.handleKeydown }, hostAttrs), h("span", { key: 'c38098d413b17ba8b8ddd3436687879d1b37114f', class: "r-tab" }, h("span", { key: '3f7bfedd8a933da7ec52f34dd64f3a4e862cb836', class: "r-tab--slot" }, h("slot", { key: 'bc056a0d06188ddd1b47c3c062a4d51367e48393' })))));
52
+ return (h(Host, Object.assign({ key: '619d576a8efdfa1f941be9760312d7254a922f10', onClick: this.handleClick, onKeyUp: this.handleKeyup, onKeyDown: this.handleKeydown }, hostAttrs), h("span", { key: '15d69c67544bdb845df4b10411ff3e55fb5671a2', class: "r-tab" }, disabled ?
53
+ h("r-icon", { class: "r-tab--disabled-icon", size: "s", name: "circle-slash" })
54
+ : h("slot", { name: "icon" }), h("slot", { key: '59e5f0740a92f1cfeb71ab9709db2f2a13152fb4' }))));
51
55
  }
52
56
  get host() { return getElement(this); }
53
57
  };
@@ -1,14 +1,172 @@
1
- import { r as registerInstance, h, H as Host } from './index-Da7qOBFr.js';
1
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-Da7qOBFr.js';
2
2
 
3
- const tabsListCss = ":host{display:block}.r-tabs-list{display:var(--r-tabs-list--display, flex);margin-bottom:var(--r-tabs-list--margin-bottom, 40px);border-bottom-width:var(--r-tabs-list--border-bottom-width, 1px);border-bottom-style:var(--r-tabs-list--border-bottom-style, solid);border-bottom-color:var(--r-tabs-list--border-bottom-color, var(--r-border-softer, #c9c9c9))}.r-tabs-list ::slotted(r-tab){margin-right:var(--r-tabs-list--r-tab--margin-right, 40px)}.r-tabs-list ::slotted(r-tab:last-of-type){margin-right:var(--r-tabs-list--r-tab--last-of-type--margin-right, 0)}";
3
+ const tabsListCss = ":host{display:block}:host([variant=compact]){--r-tabs-list--r-tab--margin-right:0;--r-tabs-list--r-tab--flex:1;--r-tab--width:100%}:host([scrollable=true]){--r-tabs-list--tabs-container--margin:-6px 4px}:host([border=branded]){--r-tab--marker--background-color:var(--r-border-brand-vanguard, #527a42)}.r-tabs-list{display:var(--r-tabs-list--display, flex);margin-bottom:var(--r-tabs-list--margin-bottom, var(--r-spacing-250, 2.5rem));border-bottom-width:var(--r-tabs-list--border-bottom-width, 1px);border-bottom-style:var(--r-tabs-list--border-bottom-style, solid);border-bottom-color:var(--r-tabs-list--border-bottom-color, var(--r-border-softer, #c9c9c9))}.r-tabs-list--scroll-button{--r-icon-button--border-radius:var(--r-tabs-list--border-radius, 0);--r-icon-button--width:var(--r-tabs-list--scroll-button--width, var(--r-spacing-200, 2rem));--r-icon-button--height:var(--r-tabs-list--scroll-button--height, var(--r-spacing-200, 2rem))}.r-tabs-list--tabs-container{display:var(--r-tabs-list--tabs-container--display, flex);flex:var(--r-tabs-list--tabs-container--flex, 1);overflow:var(--r-tabs-list--tabs-container--overflow, scroll hidden);scroll-snap-type:var(--r-tabs-list--tabs-container--scroll-snap-type, x proximity);scrollbar-width:var(--r-tabs-list--tabs-container--scrollbar-width, none);margin:var(--r-tabs-list--tabs-container--margin, -6px);padding:var(--r-tabs-list--tabs-container--padding, 6px)}.r-tabs-list--scroll-button-container{display:var(--r-tabs-list--scroll-button-container--display, flex);align-items:var(--r-tabs-list--scroll-button-container--align-items, start);gap:var(--r-tabs-list--scroll-button-container--gap, var(--r-spacing-025, 0.25rem))}.r-tabs-list--scroll-indicator{margin-top:var(--r-tabs-list--scroll-indicator--margin, 2px);width:var(--r-tabs-list--scroll-button--after--width, 1px);height:var(--r-tabs-list--scroll-button--after--height, var(--r-spacing-175, 1.75rem));background-color:var(--r-tabs-list----scroll-indicator--background-color, var(--r-border-softer, #c9c9c9));z-index:var(--r-tabs-list----scroll-indicator--z-index, 1)}.r-tabs-list ::slotted(r-tab){margin-right:var(--r-tabs-list--r-tab--margin-right, var(--r-spacing-250, 2.5rem));flex:var(--r-tabs-list--r-tab--flex, none)}.r-tabs-list ::slotted(r-tab:last-of-type){margin-right:var(--r-tabs-list--r-tab--last-of-type--margin-right, 0)}";
4
4
 
5
5
  const RTabsList = class {
6
6
  constructor(hostRef) {
7
7
  registerInstance(this, hostRef);
8
+ /**
9
+ * Visual variant of the tab list
10
+ * @defaulr 'expanded'
11
+ * */
12
+ this.variant = 'expanded';
13
+ /**
14
+ * Border style of the active tab
15
+ * @default 'standard'
16
+ * */
17
+ this.border = 'standard';
18
+ /** Indicates if the tab list is scrollable */
19
+ this.scrollable = false;
20
+ /** Indicates if the first tab is fully visible */
21
+ this.firstItemVisible = true;
22
+ /** Indicates if the last tab is fully visible */
23
+ this.lastItemVisible = false;
24
+ this.initiatizeResizeObserver = () => {
25
+ if (!this.containerRef || this.resizeObserver)
26
+ return;
27
+ this.resizeObserver = new ResizeObserver(() => this.updateScrollState());
28
+ this.resizeObserver.observe(this.containerRef);
29
+ };
30
+ this.updateScrollState = () => {
31
+ if (!this.containerRef)
32
+ return;
33
+ const { scrollWidth, clientWidth } = this.containerRef;
34
+ const containerRect = this.containerRef.getBoundingClientRect();
35
+ const tabs = Array.from(this.tabElements);
36
+ // Check if content is scrollable
37
+ this.scrollable = scrollWidth > clientWidth;
38
+ if (!this.scrollable || tabs.length === 0) {
39
+ this.firstItemVisible = true;
40
+ this.lastItemVisible = true;
41
+ return;
42
+ }
43
+ const firstTab = tabs[0];
44
+ const firstTabRect = firstTab.getBoundingClientRect();
45
+ this.firstItemVisible = firstTabRect.left >= containerRect.left - 1;
46
+ const lastTab = tabs[tabs.length - 1];
47
+ const lastTabRect = lastTab.getBoundingClientRect();
48
+ this.lastItemVisible = lastTabRect.right <= containerRect.right + 1;
49
+ };
50
+ this.getVisibleTabOnLeft = () => {
51
+ if (!this.containerRef)
52
+ return null;
53
+ const containerRect = this.containerRef.getBoundingClientRect();
54
+ const tabs = Array.from(this.tabElements);
55
+ // Find first tab that's partially or fully visible from the left
56
+ for (const tab of tabs) {
57
+ const tabRect = tab.getBoundingClientRect();
58
+ if (tabRect.right > containerRect.left + 1) {
59
+ return tab;
60
+ }
61
+ }
62
+ return;
63
+ };
64
+ this.getVisibleTabOnRight = () => {
65
+ if (!this.containerRef)
66
+ return null;
67
+ const containerRect = this.containerRef.getBoundingClientRect();
68
+ const tabs = Array.from(this.tabElements);
69
+ for (let i = tabs.length - 1; i >= 0; i--) {
70
+ const tab = tabs[i];
71
+ const tabRect = tab.getBoundingClientRect();
72
+ if (tabRect.left < containerRect.right - 1) {
73
+ return tab;
74
+ }
75
+ }
76
+ return null;
77
+ };
78
+ this.scrollLeft = () => {
79
+ if (!this.containerRef)
80
+ return;
81
+ const visibleTab = this.getVisibleTabOnLeft();
82
+ if (!visibleTab)
83
+ return;
84
+ const tabs = Array.from(this.tabElements);
85
+ const currentIndex = tabs.indexOf(visibleTab);
86
+ const prevTab = currentIndex > 0 ? tabs[currentIndex - 1] : null;
87
+ if (!prevTab)
88
+ return;
89
+ const containerLeft = this.containerRef.getBoundingClientRect().left;
90
+ const prevTabLeft = prevTab.getBoundingClientRect().left;
91
+ const offset = prevTabLeft - containerLeft;
92
+ this.containerRef.scrollBy({
93
+ left: offset,
94
+ behavior: 'smooth'
95
+ });
96
+ };
97
+ this.scrollRight = () => {
98
+ if (!this.containerRef)
99
+ return;
100
+ const visibleTab = this.getVisibleTabOnRight();
101
+ if (!visibleTab)
102
+ return;
103
+ const tabs = Array.from(this.tabElements);
104
+ const currentIndex = tabs.indexOf(visibleTab);
105
+ const nextTab = currentIndex < tabs.length - 1 ? tabs[currentIndex + 1] : null;
106
+ if (!nextTab)
107
+ return;
108
+ const containerRight = this.containerRef.getBoundingClientRect().right;
109
+ const nextTabRight = nextTab.getBoundingClientRect().right;
110
+ const offset = nextTabRight - containerRight;
111
+ this.containerRef.scrollBy({
112
+ left: offset,
113
+ behavior: 'smooth'
114
+ });
115
+ };
116
+ this.scrollToActiveTab = (activeTabElement) => {
117
+ if (!this.containerRef || !this.scrollable)
118
+ return;
119
+ const activeTab = activeTabElement || this.host.querySelector('r-tab[active]');
120
+ if (!activeTab)
121
+ return;
122
+ const containerRect = this.containerRef.getBoundingClientRect();
123
+ const activeTabRect = activeTab.getBoundingClientRect();
124
+ // Check if already fully visible
125
+ const isVisible = activeTabRect.left >= containerRect.left &&
126
+ activeTabRect.right <= containerRect.right;
127
+ if (isVisible)
128
+ return;
129
+ // Center the active tab
130
+ const offset = (activeTabRect.left - containerRect.left) -
131
+ (containerRect.width / 2) +
132
+ (activeTabRect.width / 2);
133
+ this.containerRef.scrollBy({
134
+ left: offset,
135
+ behavior: 'smooth'
136
+ });
137
+ };
138
+ this.renderScrollButton = (direction, disabled, onClick, tooltip) => {
139
+ const iconName = direction === 'left' ? 'angle-left' : 'angle-right';
140
+ const button = (h("r-icon-button", { onRClick: onClick, disabled: disabled, name: iconName, size: "s", rTabindex: -1, class: "r-tabs-list--scroll-button" }));
141
+ if (tooltip) {
142
+ return (h("r-tooltip", { text: tooltip, position: "top" }, button));
143
+ }
144
+ return button;
145
+ };
146
+ }
147
+ /** Listen for "click" event on `<r-tab>` */
148
+ tabChangeAction(event) {
149
+ this.scrollToActiveTab(event.target);
150
+ }
151
+ /** `<r-tab>` group of elements */
152
+ get tabElements() {
153
+ return this.host.querySelectorAll('r-tab');
154
+ }
155
+ componentDidLoad() {
156
+ this.updateScrollState();
157
+ this.initiatizeResizeObserver();
158
+ this.scrollToActiveTab();
159
+ }
160
+ disconnectedCallback() {
161
+ var _a;
162
+ (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
8
163
  }
9
164
  render() {
10
- return (h(Host, { key: '323b36e7d276c42c72764c34f2564153d80b64d2', role: "tablist" }, h("div", { key: 'bab777186d6d538c6f541e08bda090ab228f38d3', class: "r-tabs-list" }, h("slot", { key: '60a0d80ba3ada9d218ca8058cdcdf720277e19d0' }))));
165
+ return (h(Host, { key: '8191b15343491c66259b583930ee73916c6bbd9e', scrollable: `${this.scrollable}`, role: "tablist" }, h("div", { key: 'e5c2a308889986b80549aba5b9a7bec8e6961891', class: "r-tabs-list" }, this.scrollable &&
166
+ h("div", { key: '62e6abb4a9e5ff9c553162c6de4176c8ce4c0407', "aria-hidden": "true", class: "r-tabs-list--scroll-button-container" }, this.renderScrollButton('left', this.firstItemVisible, this.scrollLeft, this.scrollLeftTooltip), !this.firstItemVisible && h("div", { key: '62e5c2ca7e76323ff367940cd9ab1cb6e5b6db74', class: "r-tabs-list--scroll-indicator" })), h("div", { key: '5f0b264eb4abaf51d4e2f3a85a92d89ff9e378f5', class: "r-tabs-list--tabs-container", ref: (el) => this.containerRef = el, onScroll: this.updateScrollState }, h("slot", { key: '38f6060007491fa9b50cf7cf7d36372c32e63d97' })), this.scrollable &&
167
+ h("div", { key: 'd51473735f550b81b5ba630126fe3bcc41848648', "aria-hidden": "true", class: "r-tabs-list--scroll-button-container" }, !this.lastItemVisible && h("div", { key: '89d712984dd7797cbca0df86989cf8eedcd95a61', class: "r-tabs-list--scroll-indicator" }), this.renderScrollButton('right', this.lastItemVisible, this.scrollRight, this.scrollRightTooltip)))));
11
168
  }
169
+ get host() { return getElement(this); }
12
170
  };
13
171
  RTabsList.style = tabsListCss;
14
172