@govbr-ds/webcomponents 2.1.2 → 2.2.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 (960) hide show
  1. package/README.md +87 -46
  2. package/cem/custom-elements.json +6367 -1134
  3. package/cem/webcomponents.html-custom-data.json +399 -286
  4. package/dist/cjs/br-avatar.cjs.entry.js +21 -14
  5. package/dist/cjs/br-breadcrumb-item.cjs.entry.js +2 -2
  6. package/dist/cjs/br-breadcrumb.cjs.entry.js +49 -22
  7. package/dist/cjs/br-button_2.cjs.entry.js +72 -35
  8. package/dist/cjs/br-card.cjs.entry.js +6 -5
  9. package/dist/cjs/br-carousel-page.cjs.entry.js +3 -3
  10. package/dist/cjs/br-carousel.cjs.entry.js +77 -21
  11. package/dist/cjs/br-checkbox-group.cjs.entry.js +157 -27
  12. package/dist/cjs/br-checkbox.cjs.entry.js +85 -15
  13. package/dist/cjs/br-checkgroup.cjs.entry.js +5 -2
  14. package/dist/cjs/br-collapse_2.cjs.entry.js +85 -26
  15. package/dist/cjs/br-cookiebar-cookie.cjs.entry.js +4 -4
  16. package/dist/cjs/br-cookiebar-group.cjs.entry.js +4 -4
  17. package/dist/cjs/br-cookiebar-header.cjs.entry.js +4 -4
  18. package/dist/cjs/br-cookiebar-link.cjs.entry.js +14 -6
  19. package/dist/cjs/br-cookiebar-note-group.cjs.entry.js +3 -5
  20. package/dist/cjs/br-cookiebar-note.cjs.entry.js +4 -4
  21. package/dist/cjs/br-cookiebar.cjs.entry.js +38 -25
  22. package/dist/cjs/br-crumb.cjs.entry.js +2 -2
  23. package/dist/cjs/br-date-picker_3.cjs.entry.js +246 -88
  24. package/dist/cjs/br-datetime-picker.cjs.entry.js +115 -527
  25. package/dist/cjs/br-divider.cjs.entry.js +70 -17
  26. package/dist/cjs/br-dropdown_2.cjs.entry.js +304 -122
  27. package/dist/cjs/br-footer-category.cjs.entry.js +10 -6
  28. package/dist/cjs/br-footer-item.cjs.entry.js +9 -4
  29. package/dist/cjs/br-footer-legal.cjs.entry.js +4 -4
  30. package/dist/cjs/br-footer-logo.cjs.entry.js +22 -10
  31. package/dist/cjs/br-footer-social.cjs.entry.js +14 -6
  32. package/dist/cjs/br-footer.cjs.entry.js +16 -7
  33. package/dist/cjs/br-header-function.cjs.entry.js +28 -7
  34. package/dist/cjs/br-header-link.cjs.entry.js +25 -4
  35. package/dist/cjs/br-header-list.cjs.entry.js +6 -17
  36. package/dist/cjs/br-header-logo.cjs.entry.js +18 -7
  37. package/dist/cjs/br-header.cjs.entry.js +72 -17
  38. package/dist/cjs/br-icon.cjs.entry.js +160 -23
  39. package/dist/cjs/br-input.cjs.entry.js +130 -39
  40. package/dist/cjs/br-item.cjs.entry.js +96 -48
  41. package/dist/cjs/br-link.cjs.entry.js +20 -7
  42. package/dist/cjs/br-loading.cjs.entry.js +100 -38
  43. package/dist/cjs/br-magic-button.cjs.entry.js +26 -9
  44. package/dist/cjs/br-menu-group.cjs.entry.js +14 -3
  45. package/dist/cjs/br-menu-header.cjs.entry.js +4 -4
  46. package/dist/cjs/br-menu-info.cjs.entry.js +4 -4
  47. package/dist/cjs/br-menu-item.cjs.entry.js +27 -5
  48. package/dist/cjs/br-menu-link.cjs.entry.js +14 -6
  49. package/dist/cjs/br-menu-list.cjs.entry.js +23 -27
  50. package/dist/cjs/br-menu-logo.cjs.entry.js +4 -4
  51. package/dist/cjs/br-menu-social.cjs.entry.js +16 -6
  52. package/dist/cjs/br-menu.cjs.entry.js +41 -64
  53. package/dist/cjs/br-modal.cjs.entry.js +26 -40
  54. package/dist/cjs/br-notification-body.cjs.entry.js +4 -4
  55. package/dist/cjs/br-notification-header.cjs.entry.js +4 -4
  56. package/dist/cjs/br-notification-item.cjs.entry.js +14 -8
  57. package/dist/cjs/br-notification.cjs.entry.js +23 -8
  58. package/dist/cjs/br-pagination.cjs.entry.js +119 -87
  59. package/dist/cjs/br-radio-group.cjs.entry.js +106 -57
  60. package/dist/cjs/br-radio.cjs.entry.js +61 -11
  61. package/dist/cjs/br-scrim.cjs.entry.js +161 -67
  62. package/dist/cjs/br-select-input_3.cjs.entry.js +283 -90
  63. package/dist/cjs/br-sign-in.cjs.entry.js +34 -15
  64. package/dist/cjs/br-skip-link-item.cjs.entry.js +39 -2
  65. package/dist/cjs/br-skip-link.cjs.entry.js +50 -33
  66. package/dist/cjs/br-skiplink-item.cjs.entry.js +22 -6
  67. package/dist/cjs/br-slider.cjs.entry.js +521 -99
  68. package/dist/cjs/br-step_2.cjs.entry.js +98 -44
  69. package/dist/cjs/br-switch.cjs.entry.js +20 -11
  70. package/dist/cjs/br-tab-item.cjs.entry.js +38 -14
  71. package/dist/cjs/br-tab.cjs.entry.js +57 -44
  72. package/dist/cjs/br-table-body.cjs.entry.js +3 -3
  73. package/dist/cjs/br-table-cell.cjs.entry.js +30 -13
  74. package/dist/cjs/br-table-header-cell.cjs.entry.js +23 -7
  75. package/dist/cjs/br-table-header.cjs.entry.js +3 -3
  76. package/dist/cjs/br-table-row.cjs.entry.js +17 -3
  77. package/dist/cjs/br-table.cjs.entry.js +67 -21
  78. package/dist/cjs/br-tag.cjs.entry.js +48 -30
  79. package/dist/cjs/br-textarea.cjs.entry.js +117 -12
  80. package/dist/cjs/br-tooltip.cjs.entry.js +87 -41
  81. package/dist/cjs/br-upload.cjs.entry.js +83 -24
  82. package/dist/cjs/br-wizard-panel.cjs.entry.js +16 -3
  83. package/dist/cjs/br-wizard.cjs.entry.js +52 -28
  84. package/dist/cjs/{isValid-Fu3kaWNn.js → datetime-picker-props-validation-DmNKSXsy.js} +481 -4
  85. package/dist/cjs/{floating-ui-MBI1osio.js → floating-ui-B6nsdYUU.js} +24 -1
  86. package/dist/cjs/{floating-ui.dom-BUSTaaxR.js → floating-ui.dom-wzdGZjyG.js} +201 -113
  87. package/dist/cjs/{focus-DuywwJPR.js → focus-BhfJnFgJ.js} +21 -0
  88. package/dist/cjs/header-context-CdawuLsH.js +17 -0
  89. package/dist/cjs/id-DE4jSi-L.js +36 -0
  90. package/dist/cjs/{index-CRdcutym.js → index-CGgZBuyy.js} +68 -752
  91. package/dist/cjs/loader.cjs.js +2 -2
  92. package/dist/cjs/motion-CgIooxWS.js +29 -0
  93. package/dist/cjs/ownership-UnpufyCx.js +116 -0
  94. package/dist/cjs/prop-warning-xvEHQz8H.js +60 -0
  95. package/dist/cjs/props-D8dybmr0.js +124 -0
  96. package/dist/cjs/{swipe-BU8_XE9f.js → swipe-BGF-h9WY.js} +11 -1
  97. package/dist/cjs/webcomponents.cjs.js +3 -3
  98. package/dist/collection/collection-manifest.json +1 -1
  99. package/dist/collection/components/avatar/avatar.css +1 -1
  100. package/dist/collection/components/avatar/avatar.js +48 -16
  101. package/dist/collection/components/breadcrumb/breadcrumb-item/breadcrumb-item.js +15 -3
  102. package/dist/collection/components/breadcrumb/breadcrumb.css +1 -1
  103. package/dist/collection/components/breadcrumb/breadcrumb.js +107 -22
  104. package/dist/collection/components/breadcrumb/crumb/crumb.js +14 -2
  105. package/dist/collection/components/button/button.css +1 -1
  106. package/dist/collection/components/button/button.js +88 -24
  107. package/dist/collection/components/card/card.css +1 -1
  108. package/dist/collection/components/card/card.js +33 -5
  109. package/dist/collection/components/carousel/carousel-page/carousel-page.css +1 -1
  110. package/dist/collection/components/carousel/carousel-page/carousel-page.js +11 -4
  111. package/dist/collection/components/carousel/carousel.css +1 -1
  112. package/dist/collection/components/carousel/carousel.js +107 -21
  113. package/dist/collection/components/checkbox/checkbox.css +1 -1
  114. package/dist/collection/components/checkbox/checkbox.js +134 -20
  115. package/dist/collection/components/checkbox-group/checkbox-group.css +1 -1
  116. package/dist/collection/components/checkbox-group/checkbox-group.js +210 -30
  117. package/dist/collection/components/checkgroup/checkgroup.js +42 -4
  118. package/dist/collection/components/collapse/collapse.css +1 -1
  119. package/dist/collection/components/collapse/collapse.js +48 -8
  120. package/dist/collection/components/cookiebar/cookiebar-cookie/cookiebar-cookie.css +1 -1
  121. package/dist/collection/components/cookiebar/cookiebar-cookie/cookiebar-cookie.js +17 -4
  122. package/dist/collection/components/cookiebar/cookiebar-group/cookiebar-group.css +1 -1
  123. package/dist/collection/components/cookiebar/cookiebar-group/cookiebar-group.js +16 -7
  124. package/dist/collection/components/cookiebar/cookiebar-header/cookiebar-header.css +1 -1
  125. package/dist/collection/components/cookiebar/cookiebar-header/cookiebar-header.js +15 -9
  126. package/dist/collection/components/cookiebar/cookiebar-link/cookiebar-link.css +1 -1
  127. package/dist/collection/components/cookiebar/cookiebar-link/cookiebar-link.js +24 -8
  128. package/dist/collection/components/cookiebar/cookiebar-note/cookiebar-note.css +1 -1
  129. package/dist/collection/components/cookiebar/cookiebar-note/cookiebar-note.js +14 -4
  130. package/dist/collection/components/cookiebar/cookiebar-note-group/cookiebar-note-group.css +1 -1
  131. package/dist/collection/components/cookiebar/cookiebar-note-group/cookiebar-note-group.js +13 -5
  132. package/dist/collection/components/cookiebar/cookiebar.css +1 -1
  133. package/dist/collection/components/cookiebar/cookiebar.js +67 -32
  134. package/dist/collection/components/datetime-picker/date-picker/date-picker.css +1 -1
  135. package/dist/collection/components/datetime-picker/date-picker/date-picker.js +134 -35
  136. package/dist/collection/components/datetime-picker/datetime-input/datetime-input.css +1 -1
  137. package/dist/collection/components/datetime-picker/datetime-input/datetime-input.js +112 -22
  138. package/dist/collection/components/datetime-picker/datetime-picker-props-validation.js +13 -5
  139. package/dist/collection/components/datetime-picker/datetime-picker.css +1 -1
  140. package/dist/collection/components/datetime-picker/datetime-picker.js +158 -42
  141. package/dist/collection/components/datetime-picker/time-picker/time-picker.css +1 -1
  142. package/dist/collection/components/datetime-picker/time-picker/time-picker.js +78 -9
  143. package/dist/collection/components/divider/divider.css +1 -1
  144. package/dist/collection/components/divider/divider.js +101 -26
  145. package/dist/collection/components/dropdown/dropdown.css +1 -1
  146. package/dist/collection/components/dropdown/dropdown.js +166 -18
  147. package/dist/collection/components/footer/footer-category/footer-category.css +1 -1
  148. package/dist/collection/components/footer/footer-category/footer-category.js +23 -4
  149. package/dist/collection/components/footer/footer-item/footer-item.css +1 -1
  150. package/dist/collection/components/footer/footer-item/footer-item.js +21 -2
  151. package/dist/collection/components/footer/footer-legal/footer-legal.css +1 -1
  152. package/dist/collection/components/footer/footer-legal/footer-legal.js +16 -2
  153. package/dist/collection/components/footer/footer-logo/footer-logo.css +1 -1
  154. package/dist/collection/components/footer/footer-logo/footer-logo.js +35 -9
  155. package/dist/collection/components/footer/footer-social/footer-social.css +1 -1
  156. package/dist/collection/components/footer/footer-social/footer-social.js +26 -6
  157. package/dist/collection/components/footer/footer.css +1 -1
  158. package/dist/collection/components/footer/footer.js +48 -7
  159. package/dist/collection/components/header/header-context.js +13 -0
  160. package/dist/collection/components/header/header-function/header-function.css +1 -1
  161. package/dist/collection/components/header/header-function/header-function.js +51 -8
  162. package/dist/collection/components/header/header-link/header-link.css +1 -1
  163. package/dist/collection/components/header/header-link/header-link.js +52 -2
  164. package/dist/collection/components/header/header-list/header-list.css +1 -1
  165. package/dist/collection/components/header/header-list/header-list.js +20 -23
  166. package/dist/collection/components/header/header-logo/header-logo.css +1 -1
  167. package/dist/collection/components/header/header-logo/header-logo.js +33 -8
  168. package/dist/collection/components/header/header.css +1 -1
  169. package/dist/collection/components/header/header.js +110 -24
  170. package/dist/collection/components/icon/default-icons-cache.js +111 -3
  171. package/dist/collection/components/icon/icon.css +1 -1
  172. package/dist/collection/components/icon/icon.js +80 -33
  173. package/dist/collection/components/input/input.css +1 -1
  174. package/dist/collection/components/input/input.js +169 -54
  175. package/dist/collection/components/item/item.css +1 -1
  176. package/dist/collection/components/item/item.js +134 -51
  177. package/dist/collection/components/link/link.css +1 -1
  178. package/dist/collection/components/link/link.js +48 -15
  179. package/dist/collection/components/list/list.css +1 -1
  180. package/dist/collection/components/list/list.js +106 -25
  181. package/dist/collection/components/loading/loading.css +1 -1
  182. package/dist/collection/components/loading/loading.js +131 -43
  183. package/dist/collection/components/magic-button/magic-button.css +1 -1
  184. package/dist/collection/components/magic-button/magic-button.js +51 -9
  185. package/dist/collection/components/menu/menu-group/menu-group.css +1 -1
  186. package/dist/collection/components/menu/menu-group/menu-group.js +60 -2
  187. package/dist/collection/components/menu/menu-header/menu-header.css +1 -1
  188. package/dist/collection/components/menu/menu-header/menu-header.js +17 -2
  189. package/dist/collection/components/menu/menu-info/menu-info.css +1 -1
  190. package/dist/collection/components/menu/menu-info/menu-info.js +15 -2
  191. package/dist/collection/components/menu/menu-item/menu-item.css +1 -1
  192. package/dist/collection/components/menu/menu-item/menu-item.js +72 -8
  193. package/dist/collection/components/menu/menu-link/menu-link.css +1 -1
  194. package/dist/collection/components/menu/menu-link/menu-link.js +25 -4
  195. package/dist/collection/components/menu/menu-list/menu-list.css +1 -1
  196. package/dist/collection/components/menu/menu-list/menu-list.js +64 -29
  197. package/dist/collection/components/menu/menu-logo/menu-logo.css +1 -1
  198. package/dist/collection/components/menu/menu-logo/menu-logo.js +15 -2
  199. package/dist/collection/components/menu/menu-social/menu-social.css +1 -1
  200. package/dist/collection/components/menu/menu-social/menu-social.js +29 -7
  201. package/dist/collection/components/menu/menu.css +1 -1
  202. package/dist/collection/components/menu/menu.js +75 -68
  203. package/dist/collection/components/menu/menu.utils.js +8 -18
  204. package/dist/collection/components/message/message.css +1 -1
  205. package/dist/collection/components/message/message.js +50 -24
  206. package/dist/collection/components/modal/modal.css +1 -1
  207. package/dist/collection/components/modal/modal.js +54 -41
  208. package/dist/collection/components/notification/notification-body/notification-body.css +1 -1
  209. package/dist/collection/components/notification/notification-body/notification-body.js +13 -4
  210. package/dist/collection/components/notification/notification-header/notification-header.css +1 -1
  211. package/dist/collection/components/notification/notification-header/notification-header.js +13 -4
  212. package/dist/collection/components/notification/notification-item/notification-item.css +1 -1
  213. package/dist/collection/components/notification/notification-item/notification-item.js +23 -9
  214. package/dist/collection/components/notification/notification.css +1 -1
  215. package/dist/collection/components/notification/notification.js +54 -10
  216. package/dist/collection/components/pagination/pagination.css +1 -1
  217. package/dist/collection/components/pagination/pagination.js +161 -74
  218. package/dist/collection/components/radio/radio.css +1 -1
  219. package/dist/collection/components/radio/radio.js +109 -14
  220. package/dist/collection/components/radio-group/radio-group.css +1 -1
  221. package/dist/collection/components/radio-group/radio-group.js +153 -63
  222. package/dist/collection/components/scrim/scrim.css +1 -1
  223. package/dist/collection/components/scrim/scrim.js +215 -74
  224. package/dist/collection/components/scrim/scrim.utils.js +5 -51
  225. package/dist/collection/components/select/select-input/select-input.css +1 -1
  226. package/dist/collection/components/select/select-input/select-input.js +58 -5
  227. package/dist/collection/components/select/select-list/select-list.css +1 -1
  228. package/dist/collection/components/select/select-list/select-list.js +247 -52
  229. package/dist/collection/components/select/select-option/select-option.css +1 -1
  230. package/dist/collection/components/select/select-option/select-option.js +108 -46
  231. package/dist/collection/components/select/select.css +1 -1
  232. package/dist/collection/components/select/select.js +323 -118
  233. package/dist/collection/components/sign-in/sign-in.css +1 -1
  234. package/dist/collection/components/sign-in/sign-in.js +55 -16
  235. package/dist/collection/components/skip-link/skip-link-item/skip-link-item-alias.js +112 -3
  236. package/dist/collection/components/skip-link/skip-link-item/skip-link-item.css +1 -1
  237. package/dist/collection/components/skip-link/skip-link-item/skip-link-item.js +58 -5
  238. package/dist/collection/components/skip-link/skip-link.css +1 -1
  239. package/dist/collection/components/skip-link/skip-link.js +78 -39
  240. package/dist/collection/components/slider/slider.css +1 -1
  241. package/dist/collection/components/slider/slider.js +530 -132
  242. package/dist/collection/components/slider/slider.utils.js +178 -0
  243. package/dist/collection/components/step/step-item/step-item.css +1 -1
  244. package/dist/collection/components/step/step-item/step-item.js +29 -12
  245. package/dist/collection/components/step/step.css +1 -1
  246. package/dist/collection/components/step/step.js +119 -44
  247. package/dist/collection/components/switch/switch.css +1 -1
  248. package/dist/collection/components/switch/switch.js +48 -15
  249. package/dist/collection/components/tab/tab-item/tab-item.css +1 -1
  250. package/dist/collection/components/tab/tab-item/tab-item.js +49 -14
  251. package/dist/collection/components/tab/tab.css +1 -1
  252. package/dist/collection/components/tab/tab.js +89 -46
  253. package/dist/collection/components/table/table-body/table-body.css +1 -1
  254. package/dist/collection/components/table/table-body/table-body.js +11 -7
  255. package/dist/collection/components/table/table-cell/table-cell.css +1 -1
  256. package/dist/collection/components/table/table-cell/table-cell.js +36 -17
  257. package/dist/collection/components/table/table-header/table-header.css +1 -1
  258. package/dist/collection/components/table/table-header/table-header.js +11 -7
  259. package/dist/collection/components/table/table-header-cell/table-header-cell.css +1 -1
  260. package/dist/collection/components/table/table-header-cell/table-header-cell.js +35 -13
  261. package/dist/collection/components/table/table-row/table-row.css +1 -1
  262. package/dist/collection/components/table/table-row/table-row.js +24 -7
  263. package/dist/collection/components/table/table.css +1 -1
  264. package/dist/collection/components/table/table.js +107 -31
  265. package/dist/collection/components/tag/tag.css +1 -1
  266. package/dist/collection/components/tag/tag.js +86 -36
  267. package/dist/collection/components/textarea/textarea.css +1 -1
  268. package/dist/collection/components/textarea/textarea.js +222 -19
  269. package/dist/collection/components/tooltip/tooltip.css +1 -1
  270. package/dist/collection/components/tooltip/tooltip.js +134 -45
  271. package/dist/collection/components/upload/upload.css +1 -1
  272. package/dist/collection/components/upload/upload.js +135 -33
  273. package/dist/collection/components/wizard/wizard-panel/wizard-panel.css +1 -1
  274. package/dist/collection/components/wizard/wizard-panel/wizard-panel.js +54 -3
  275. package/dist/collection/components/wizard/wizard.css +1 -1
  276. package/dist/collection/components/wizard/wizard.js +82 -28
  277. package/dist/collection/pages/scripts/component-controls-core.js +95 -0
  278. package/dist/collection/pages/scripts/component-controls.js +238 -153
  279. package/dist/collection/pages/scripts/dev-event-console.js +5 -1
  280. package/dist/collection/pages/scripts/menu.js +90 -5
  281. package/dist/collection/pages/scripts/pageLoader.js +1486 -586
  282. package/dist/collection/pages/scripts/pageloader-preview.js +787 -0
  283. package/dist/collection/pages/scripts/playground-core.js +173 -0
  284. package/dist/collection/shared/utils/cssVariables.js +2 -0
  285. package/dist/collection/shared/utils/date.js +8 -4
  286. package/dist/collection/shared/utils/floating-ui.js +24 -1
  287. package/dist/collection/shared/utils/focus.js +31 -0
  288. package/dist/collection/shared/utils/getRandom.js +16 -1
  289. package/dist/collection/shared/utils/helpers.js +4 -11
  290. package/dist/collection/shared/utils/id.js +23 -7
  291. package/dist/collection/shared/utils/index.js +6 -1
  292. package/dist/collection/shared/utils/isEmpty.js +5 -3
  293. package/dist/collection/shared/utils/motion.js +25 -0
  294. package/dist/collection/shared/utils/ownership.js +113 -0
  295. package/dist/collection/shared/utils/prop-warning.js +47 -0
  296. package/dist/collection/shared/utils/props.js +79 -0
  297. package/dist/collection/shared/utils/swipe.js +11 -1
  298. package/dist/collection/shared/utils/transition.js +3 -0
  299. package/dist/collection/shared/utils/virtual-scroll.js +24 -0
  300. package/dist/components/br-avatar.d.ts +1 -1
  301. package/dist/components/br-avatar.js +1 -1
  302. package/dist/components/br-breadcrumb-item.d.ts +1 -1
  303. package/dist/components/br-breadcrumb-item.js +1 -1
  304. package/dist/components/br-breadcrumb.d.ts +1 -1
  305. package/dist/components/br-breadcrumb.js +1 -1
  306. package/dist/components/br-button.d.ts +1 -1
  307. package/dist/components/br-button.js +1 -1
  308. package/dist/components/br-card.d.ts +1 -1
  309. package/dist/components/br-card.js +1 -1
  310. package/dist/components/br-carousel-page.d.ts +1 -1
  311. package/dist/components/br-carousel-page.js +1 -1
  312. package/dist/components/br-carousel.d.ts +1 -1
  313. package/dist/components/br-carousel.js +1 -1
  314. package/dist/components/br-checkbox-group.d.ts +1 -1
  315. package/dist/components/br-checkbox-group.js +1 -1
  316. package/dist/components/br-checkbox.d.ts +1 -1
  317. package/dist/components/br-checkbox.js +1 -1
  318. package/dist/components/br-checkgroup.d.ts +1 -1
  319. package/dist/components/br-checkgroup.js +1 -1
  320. package/dist/components/br-collapse.d.ts +1 -1
  321. package/dist/components/br-collapse.js +1 -1
  322. package/dist/components/br-cookiebar-cookie.d.ts +1 -1
  323. package/dist/components/br-cookiebar-cookie.js +1 -1
  324. package/dist/components/br-cookiebar-group.d.ts +1 -1
  325. package/dist/components/br-cookiebar-group.js +1 -1
  326. package/dist/components/br-cookiebar-header.d.ts +1 -1
  327. package/dist/components/br-cookiebar-header.js +1 -1
  328. package/dist/components/br-cookiebar-link.d.ts +1 -1
  329. package/dist/components/br-cookiebar-link.js +1 -1
  330. package/dist/components/br-cookiebar-note-group.d.ts +1 -1
  331. package/dist/components/br-cookiebar-note-group.js +1 -1
  332. package/dist/components/br-cookiebar-note.d.ts +1 -1
  333. package/dist/components/br-cookiebar-note.js +1 -1
  334. package/dist/components/br-cookiebar.d.ts +1 -1
  335. package/dist/components/br-cookiebar.js +1 -1
  336. package/dist/components/br-crumb.d.ts +1 -1
  337. package/dist/components/br-crumb.js +1 -1
  338. package/dist/components/br-date-picker.d.ts +1 -1
  339. package/dist/components/br-date-picker.js +1 -1
  340. package/dist/components/br-datetime-input.d.ts +1 -1
  341. package/dist/components/br-datetime-input.js +1 -1
  342. package/dist/components/br-datetime-picker.d.ts +1 -1
  343. package/dist/components/br-datetime-picker.js +1 -1
  344. package/dist/components/br-divider.d.ts +1 -1
  345. package/dist/components/br-divider.js +1 -1
  346. package/dist/components/br-dropdown.d.ts +1 -1
  347. package/dist/components/br-dropdown.js +1 -1
  348. package/dist/components/br-footer-category.d.ts +1 -1
  349. package/dist/components/br-footer-category.js +1 -1
  350. package/dist/components/br-footer-item.d.ts +1 -1
  351. package/dist/components/br-footer-item.js +1 -1
  352. package/dist/components/br-footer-legal.d.ts +1 -1
  353. package/dist/components/br-footer-legal.js +1 -1
  354. package/dist/components/br-footer-logo.d.ts +1 -1
  355. package/dist/components/br-footer-logo.js +1 -1
  356. package/dist/components/br-footer-social.d.ts +1 -1
  357. package/dist/components/br-footer-social.js +1 -1
  358. package/dist/components/br-footer.d.ts +1 -1
  359. package/dist/components/br-footer.js +1 -1
  360. package/dist/components/br-header-function.d.ts +1 -1
  361. package/dist/components/br-header-function.js +1 -1
  362. package/dist/components/br-header-link.d.ts +1 -1
  363. package/dist/components/br-header-link.js +1 -1
  364. package/dist/components/br-header-list.d.ts +1 -1
  365. package/dist/components/br-header-list.js +1 -1
  366. package/dist/components/br-header-logo.d.ts +1 -1
  367. package/dist/components/br-header-logo.js +1 -1
  368. package/dist/components/br-header.d.ts +1 -1
  369. package/dist/components/br-header.js +1 -1
  370. package/dist/components/br-icon.d.ts +1 -1
  371. package/dist/components/br-icon.js +1 -1
  372. package/dist/components/br-input.d.ts +1 -1
  373. package/dist/components/br-input.js +1 -1
  374. package/dist/components/br-item.d.ts +1 -1
  375. package/dist/components/br-item.js +1 -1
  376. package/dist/components/br-link.d.ts +1 -1
  377. package/dist/components/br-link.js +1 -1
  378. package/dist/components/br-list.d.ts +1 -1
  379. package/dist/components/br-list.js +1 -1
  380. package/dist/components/br-loading.d.ts +1 -1
  381. package/dist/components/br-loading.js +1 -1
  382. package/dist/components/br-magic-button.d.ts +1 -1
  383. package/dist/components/br-magic-button.js +1 -1
  384. package/dist/components/br-menu-group.d.ts +1 -1
  385. package/dist/components/br-menu-group.js +1 -1
  386. package/dist/components/br-menu-header.d.ts +1 -1
  387. package/dist/components/br-menu-header.js +1 -1
  388. package/dist/components/br-menu-info.d.ts +1 -1
  389. package/dist/components/br-menu-info.js +1 -1
  390. package/dist/components/br-menu-item.d.ts +1 -1
  391. package/dist/components/br-menu-item.js +1 -1
  392. package/dist/components/br-menu-link.d.ts +1 -1
  393. package/dist/components/br-menu-link.js +1 -1
  394. package/dist/components/br-menu-list.d.ts +1 -1
  395. package/dist/components/br-menu-list.js +1 -1
  396. package/dist/components/br-menu-logo.d.ts +1 -1
  397. package/dist/components/br-menu-logo.js +1 -1
  398. package/dist/components/br-menu-social.d.ts +1 -1
  399. package/dist/components/br-menu-social.js +1 -1
  400. package/dist/components/br-menu.d.ts +1 -1
  401. package/dist/components/br-menu.js +1 -1
  402. package/dist/components/br-message.d.ts +1 -1
  403. package/dist/components/br-message.js +1 -1
  404. package/dist/components/br-modal.d.ts +1 -1
  405. package/dist/components/br-modal.js +1 -1
  406. package/dist/components/br-notification-body.d.ts +1 -1
  407. package/dist/components/br-notification-body.js +1 -1
  408. package/dist/components/br-notification-header.d.ts +1 -1
  409. package/dist/components/br-notification-header.js +1 -1
  410. package/dist/components/br-notification-item.d.ts +1 -1
  411. package/dist/components/br-notification-item.js +1 -1
  412. package/dist/components/br-notification.d.ts +1 -1
  413. package/dist/components/br-notification.js +1 -1
  414. package/dist/components/br-pagination.d.ts +1 -1
  415. package/dist/components/br-pagination.js +1 -1
  416. package/dist/components/br-radio-group.d.ts +1 -1
  417. package/dist/components/br-radio-group.js +1 -1
  418. package/dist/components/br-radio.d.ts +1 -1
  419. package/dist/components/br-radio.js +1 -1
  420. package/dist/components/br-scrim.d.ts +1 -1
  421. package/dist/components/br-scrim.js +1 -1
  422. package/dist/components/br-select-input.d.ts +1 -1
  423. package/dist/components/br-select-input.js +1 -1
  424. package/dist/components/br-select-list.d.ts +1 -1
  425. package/dist/components/br-select-list.js +1 -1
  426. package/dist/components/br-select-option.d.ts +1 -1
  427. package/dist/components/br-select-option.js +1 -1
  428. package/dist/components/br-select.d.ts +1 -1
  429. package/dist/components/br-select.js +1 -1
  430. package/dist/components/br-sign-in.d.ts +1 -1
  431. package/dist/components/br-sign-in.js +1 -1
  432. package/dist/components/br-skip-link-item.d.ts +1 -1
  433. package/dist/components/br-skip-link-item.js +1 -1
  434. package/dist/components/br-skip-link.d.ts +1 -1
  435. package/dist/components/br-skip-link.js +1 -1
  436. package/dist/components/br-skiplink-item.d.ts +1 -1
  437. package/dist/components/br-skiplink-item.js +1 -1
  438. package/dist/components/br-slider.d.ts +1 -1
  439. package/dist/components/br-slider.js +1 -1
  440. package/dist/components/br-step-item.d.ts +1 -1
  441. package/dist/components/br-step-item.js +1 -1
  442. package/dist/components/br-step.d.ts +1 -1
  443. package/dist/components/br-step.js +1 -1
  444. package/dist/components/br-switch.d.ts +1 -1
  445. package/dist/components/br-switch.js +1 -1
  446. package/dist/components/br-tab-item.d.ts +1 -1
  447. package/dist/components/br-tab-item.js +1 -1
  448. package/dist/components/br-tab.d.ts +1 -1
  449. package/dist/components/br-tab.js +1 -1
  450. package/dist/components/br-table-body.d.ts +1 -1
  451. package/dist/components/br-table-body.js +1 -1
  452. package/dist/components/br-table-cell.d.ts +1 -1
  453. package/dist/components/br-table-cell.js +1 -1
  454. package/dist/components/br-table-header-cell.d.ts +1 -1
  455. package/dist/components/br-table-header-cell.js +1 -1
  456. package/dist/components/br-table-header.d.ts +1 -1
  457. package/dist/components/br-table-header.js +1 -1
  458. package/dist/components/br-table-row.d.ts +1 -1
  459. package/dist/components/br-table-row.js +1 -1
  460. package/dist/components/br-table.d.ts +1 -1
  461. package/dist/components/br-table.js +1 -1
  462. package/dist/components/br-tag.d.ts +1 -1
  463. package/dist/components/br-tag.js +1 -1
  464. package/dist/components/br-textarea.d.ts +1 -1
  465. package/dist/components/br-textarea.js +1 -1
  466. package/dist/components/br-time-picker.d.ts +1 -1
  467. package/dist/components/br-time-picker.js +1 -1
  468. package/dist/components/br-tooltip.d.ts +1 -1
  469. package/dist/components/br-tooltip.js +1 -1
  470. package/dist/components/br-upload.d.ts +1 -1
  471. package/dist/components/br-upload.js +1 -1
  472. package/dist/components/br-wizard-panel.d.ts +1 -1
  473. package/dist/components/br-wizard-panel.js +1 -1
  474. package/dist/components/br-wizard.d.ts +1 -1
  475. package/dist/components/br-wizard.js +1 -1
  476. package/dist/components/index.d.ts +89 -89
  477. package/dist/components/index.js +1 -1
  478. package/dist/components/p-B0o70fWP.js +5 -0
  479. package/dist/components/p-B96LROz9.js +5 -0
  480. package/dist/components/p-BDqef5-y.js +5 -0
  481. package/dist/components/p-BEJGB0Nd.js +5 -0
  482. package/dist/{webcomponents/p-Dmfk7eEe.js → components/p-BJZC_NuV.js} +1 -1
  483. package/dist/components/p-BJtdabsr.js +5 -0
  484. package/dist/components/p-BP5zMCxG.js +5 -0
  485. package/dist/components/p-BRaphxoP.js +5 -0
  486. package/dist/components/p-BUzBa9L1.js +5 -0
  487. package/dist/components/{p-DA5GS53D.js → p-BblZlUp2.js} +1 -1
  488. package/dist/components/p-Bc4nAk5i.js +5 -0
  489. package/dist/components/{p-C1yRmdso.js → p-BcqVlof7.js} +1 -1
  490. package/dist/components/p-BeJxz5TQ.js +5 -0
  491. package/dist/components/p-Bezou5CQ.js +5 -0
  492. package/dist/components/p-BrNh9KdF.js +5 -0
  493. package/dist/components/p-C5th2dxu.js +5 -0
  494. package/dist/components/p-CDtFCbKp.js +5 -0
  495. package/dist/components/p-CEdUp183.js +5 -0
  496. package/dist/components/p-CF7t0uxQ.js +5 -0
  497. package/dist/components/p-CFzHx6zV.js +5 -0
  498. package/dist/components/p-CG4em0S6.js +5 -0
  499. package/dist/components/p-CI4D3-pf.js +5 -0
  500. package/dist/components/p-CIrVPkVg.js +5 -0
  501. package/dist/components/p-CNwZRgyL.js +5 -0
  502. package/dist/components/p-CppRJiyC.js +5 -0
  503. package/dist/components/p-Cvk1Ggs5.js +5 -0
  504. package/dist/components/p-D12US39c.js +5 -0
  505. package/dist/components/p-D9Zo6FlV.js +5 -0
  506. package/dist/components/p-DGPJkJsj.js +5 -0
  507. package/dist/components/p-DSHbttu9.js +5 -0
  508. package/dist/components/p-DTGNra9m.js +5 -0
  509. package/dist/components/p-DWhzxlCx.js +5 -0
  510. package/dist/components/p-DX1wAFn4.js +5 -0
  511. package/dist/components/p-DiLI514I.js +5 -0
  512. package/dist/components/p-Dma14GVa.js +5 -0
  513. package/dist/components/p-DpRZ4B0d.js +5 -0
  514. package/dist/components/p-G35qEQZd.js +5 -0
  515. package/dist/components/p-Ho_IybzR.js +5 -0
  516. package/dist/components/p-SvVnvJdC.js +5 -0
  517. package/dist/components/p-emAWunES.js +5 -0
  518. package/dist/components/p-fB79wKCm.js +5 -0
  519. package/dist/components/p-k7p4QJ8a.js +5 -0
  520. package/dist/esm/br-avatar.entry.js +21 -14
  521. package/dist/esm/br-breadcrumb-item.entry.js +2 -2
  522. package/dist/esm/br-breadcrumb.entry.js +49 -22
  523. package/dist/esm/br-button_2.entry.js +72 -35
  524. package/dist/esm/br-card.entry.js +6 -5
  525. package/dist/esm/br-carousel-page.entry.js +3 -3
  526. package/dist/esm/br-carousel.entry.js +78 -22
  527. package/dist/esm/br-checkbox-group.entry.js +157 -27
  528. package/dist/esm/br-checkbox.entry.js +86 -16
  529. package/dist/esm/br-checkgroup.entry.js +5 -2
  530. package/dist/esm/br-collapse_2.entry.js +86 -27
  531. package/dist/esm/br-cookiebar-cookie.entry.js +4 -4
  532. package/dist/esm/br-cookiebar-group.entry.js +4 -4
  533. package/dist/esm/br-cookiebar-header.entry.js +4 -4
  534. package/dist/esm/br-cookiebar-link.entry.js +14 -6
  535. package/dist/esm/br-cookiebar-note-group.entry.js +3 -5
  536. package/dist/esm/br-cookiebar-note.entry.js +4 -4
  537. package/dist/esm/br-cookiebar.entry.js +39 -26
  538. package/dist/esm/br-crumb.entry.js +2 -2
  539. package/dist/esm/br-date-picker_3.entry.js +207 -49
  540. package/dist/esm/br-datetime-picker.entry.js +82 -494
  541. package/dist/esm/br-divider.entry.js +70 -17
  542. package/dist/esm/br-dropdown_2.entry.js +305 -123
  543. package/dist/esm/br-footer-category.entry.js +10 -6
  544. package/dist/esm/br-footer-item.entry.js +9 -4
  545. package/dist/esm/br-footer-legal.entry.js +4 -4
  546. package/dist/esm/br-footer-logo.entry.js +22 -10
  547. package/dist/esm/br-footer-social.entry.js +14 -6
  548. package/dist/esm/br-footer.entry.js +16 -7
  549. package/dist/esm/br-header-function.entry.js +28 -7
  550. package/dist/esm/br-header-link.entry.js +25 -4
  551. package/dist/esm/br-header-list.entry.js +7 -18
  552. package/dist/esm/br-header-logo.entry.js +18 -7
  553. package/dist/esm/br-header.entry.js +72 -17
  554. package/dist/esm/br-icon.entry.js +160 -23
  555. package/dist/esm/br-input.entry.js +132 -41
  556. package/dist/esm/br-item.entry.js +96 -48
  557. package/dist/esm/br-link.entry.js +20 -7
  558. package/dist/esm/br-loading.entry.js +100 -38
  559. package/dist/esm/br-magic-button.entry.js +26 -9
  560. package/dist/esm/br-menu-group.entry.js +14 -3
  561. package/dist/esm/br-menu-header.entry.js +4 -4
  562. package/dist/esm/br-menu-info.entry.js +4 -4
  563. package/dist/esm/br-menu-item.entry.js +27 -5
  564. package/dist/esm/br-menu-link.entry.js +14 -6
  565. package/dist/esm/br-menu-list.entry.js +23 -27
  566. package/dist/esm/br-menu-logo.entry.js +4 -4
  567. package/dist/esm/br-menu-social.entry.js +16 -6
  568. package/dist/esm/br-menu.entry.js +42 -65
  569. package/dist/esm/br-modal.entry.js +26 -40
  570. package/dist/esm/br-notification-body.entry.js +4 -4
  571. package/dist/esm/br-notification-header.entry.js +4 -4
  572. package/dist/esm/br-notification-item.entry.js +14 -8
  573. package/dist/esm/br-notification.entry.js +24 -9
  574. package/dist/esm/br-pagination.entry.js +119 -87
  575. package/dist/esm/br-radio-group.entry.js +107 -58
  576. package/dist/esm/br-radio.entry.js +62 -12
  577. package/dist/esm/br-scrim.entry.js +161 -67
  578. package/dist/esm/br-select-input_3.entry.js +283 -90
  579. package/dist/esm/br-sign-in.entry.js +34 -15
  580. package/dist/esm/br-skip-link-item.entry.js +39 -2
  581. package/dist/esm/br-skip-link.entry.js +50 -33
  582. package/dist/esm/br-skiplink-item.entry.js +22 -6
  583. package/dist/esm/br-slider.entry.js +519 -97
  584. package/dist/esm/br-step_2.entry.js +98 -44
  585. package/dist/esm/br-switch.entry.js +21 -12
  586. package/dist/esm/br-tab-item.entry.js +38 -14
  587. package/dist/esm/br-tab.entry.js +57 -44
  588. package/dist/esm/br-table-body.entry.js +3 -3
  589. package/dist/esm/br-table-cell.entry.js +30 -13
  590. package/dist/esm/br-table-header-cell.entry.js +23 -7
  591. package/dist/esm/br-table-header.entry.js +3 -3
  592. package/dist/esm/br-table-row.entry.js +17 -3
  593. package/dist/esm/br-table.entry.js +68 -22
  594. package/dist/esm/br-tag.entry.js +49 -31
  595. package/dist/esm/br-textarea.entry.js +118 -13
  596. package/dist/esm/br-tooltip.entry.js +88 -42
  597. package/dist/esm/br-upload.entry.js +84 -25
  598. package/dist/esm/br-wizard-panel.entry.js +16 -3
  599. package/dist/esm/br-wizard.entry.js +52 -28
  600. package/dist/esm/{datetime-picker-constants-Bfm58jO6.js → datetime-picker-constants-BtRPYRvA.js} +1 -1
  601. package/dist/esm/{isValid-DIUZX1qS.js → datetime-picker-props-validation-BeTcUTnE.js} +476 -5
  602. package/dist/esm/{event-DFN_so7I.js → event-CfuJQ1DY.js} +1 -1
  603. package/dist/esm/{floating-ui-BavFwMnx.js → floating-ui-CskvaxD5.js} +24 -1
  604. package/dist/esm/{floating-ui.dom-DIK54tTj.js → floating-ui.dom-D9Zo6FlV.js} +201 -114
  605. package/dist/esm/{focus-DxZJrIyL.js → focus-CNwZRgyL.js} +20 -1
  606. package/dist/esm/header-context-BEJGB0Nd.js +15 -0
  607. package/dist/esm/id-BeJxz5TQ.js +34 -0
  608. package/dist/esm/{index-Bo-2igoO.js → index-BQPOWxe5.js} +1 -1
  609. package/dist/esm/{index-C2RBydfd.js → index-Dcn7tRST.js} +68 -752
  610. package/dist/esm/index.js +2 -2
  611. package/dist/esm/loader.js +3 -3
  612. package/dist/esm/motion-DWhzxlCx.js +27 -0
  613. package/dist/esm/ownership-CDtFCbKp.js +111 -0
  614. package/dist/esm/prop-warning-BlGV-x0w.js +56 -0
  615. package/dist/esm/props-D07GjR4_.js +116 -0
  616. package/dist/esm/{swipe-Dmfk7eEe.js → swipe-BJZC_NuV.js} +11 -1
  617. package/dist/esm/webcomponents.js +4 -4
  618. package/dist/hydrate/index.js +7370 -2603
  619. package/dist/hydrate/index.mjs +7370 -2603
  620. package/dist/loader/index.d.ts +1 -1
  621. package/dist/types/components/avatar/avatar.d.ts +34 -4
  622. package/dist/types/components/breadcrumb/breadcrumb-item/breadcrumb-item.d.ts +14 -2
  623. package/dist/types/components/breadcrumb/breadcrumb.d.ts +66 -5
  624. package/dist/types/components/breadcrumb/crumb/crumb.d.ts +13 -1
  625. package/dist/types/components/button/button.d.ts +45 -9
  626. package/dist/types/components/card/card.d.ts +31 -3
  627. package/dist/types/components/carousel/carousel-page/carousel-page.d.ts +10 -3
  628. package/dist/types/components/carousel/carousel.d.ts +46 -3
  629. package/dist/types/components/checkbox/checkbox.d.ts +59 -6
  630. package/dist/types/components/checkbox-group/checkbox-group.d.ts +47 -5
  631. package/dist/types/components/checkgroup/checkgroup.d.ts +27 -5
  632. package/dist/types/components/collapse/collapse.d.ts +33 -4
  633. package/dist/types/components/cookiebar/cookiebar-cookie/cookiebar-cookie.d.ts +16 -3
  634. package/dist/types/components/cookiebar/cookiebar-group/cookiebar-group.d.ts +15 -6
  635. package/dist/types/components/cookiebar/cookiebar-header/cookiebar-header.d.ts +14 -8
  636. package/dist/types/components/cookiebar/cookiebar-link/cookiebar-link.d.ts +16 -5
  637. package/dist/types/components/cookiebar/cookiebar-note/cookiebar-note.d.ts +13 -3
  638. package/dist/types/components/cookiebar/cookiebar-note-group/cookiebar-note-group.d.ts +13 -3
  639. package/dist/types/components/cookiebar/cookiebar.d.ts +35 -10
  640. package/dist/types/components/datetime-picker/date-picker/date-picker.d.ts +63 -7
  641. package/dist/types/components/datetime-picker/datetime-input/datetime-input.d.ts +51 -9
  642. package/dist/types/components/datetime-picker/datetime-picker-props-validation.d.ts +4 -2
  643. package/dist/types/components/datetime-picker/datetime-picker.d.ts +118 -12
  644. package/dist/types/components/datetime-picker/time-picker/time-picker.d.ts +38 -4
  645. package/dist/types/components/divider/divider.d.ts +45 -8
  646. package/dist/types/components/dropdown/dropdown.d.ts +41 -3
  647. package/dist/types/components/footer/footer-category/footer-category.d.ts +16 -1
  648. package/dist/types/components/footer/footer-item/footer-item.d.ts +17 -1
  649. package/dist/types/components/footer/footer-legal/footer-legal.d.ts +15 -1
  650. package/dist/types/components/footer/footer-logo/footer-logo.d.ts +21 -2
  651. package/dist/types/components/footer/footer-social/footer-social.d.ts +20 -3
  652. package/dist/types/components/footer/footer.d.ts +39 -3
  653. package/dist/types/components/header/header-context.d.ts +1 -0
  654. package/dist/types/components/header/header-function/header-function.d.ts +24 -2
  655. package/dist/types/components/header/header-link/header-link.d.ts +22 -1
  656. package/dist/types/components/header/header-list/header-list.d.ts +16 -8
  657. package/dist/types/components/header/header-logo/header-logo.d.ts +20 -1
  658. package/dist/types/components/header/header.d.ts +45 -7
  659. package/dist/types/components/icon/icon.d.ts +44 -13
  660. package/dist/types/components/input/input.d.ts +65 -15
  661. package/dist/types/components/item/item.d.ts +38 -5
  662. package/dist/types/components/link/link.d.ts +41 -9
  663. package/dist/types/components/list/list.d.ts +58 -8
  664. package/dist/types/components/loading/loading.d.ts +48 -8
  665. package/dist/types/components/magic-button/magic-button.d.ts +37 -3
  666. package/dist/types/components/menu/menu-group/menu-group.d.ts +19 -1
  667. package/dist/types/components/menu/menu-header/menu-header.d.ts +16 -1
  668. package/dist/types/components/menu/menu-info/menu-info.d.ts +14 -1
  669. package/dist/types/components/menu/menu-item/menu-item.d.ts +27 -3
  670. package/dist/types/components/menu/menu-link/menu-link.d.ts +17 -1
  671. package/dist/types/components/menu/menu-list/menu-list.d.ts +22 -4
  672. package/dist/types/components/menu/menu-logo/menu-logo.d.ts +14 -1
  673. package/dist/types/components/menu/menu-social/menu-social.d.ts +21 -2
  674. package/dist/types/components/menu/menu.d.ts +42 -9
  675. package/dist/types/components/menu/menu.utils.d.ts +2 -6
  676. package/dist/types/components/message/message.d.ts +38 -9
  677. package/dist/types/components/modal/modal.d.ts +34 -4
  678. package/dist/types/components/notification/notification-body/notification-body.d.ts +12 -3
  679. package/dist/types/components/notification/notification-header/notification-header.d.ts +12 -3
  680. package/dist/types/components/notification/notification-item/notification-item.d.ts +15 -3
  681. package/dist/types/components/notification/notification.d.ts +36 -5
  682. package/dist/types/components/pagination/pagination.d.ts +56 -20
  683. package/dist/types/components/radio/radio.d.ts +49 -4
  684. package/dist/types/components/radio-group/radio-group.d.ts +52 -10
  685. package/dist/types/components/scrim/scrim.d.ts +72 -11
  686. package/dist/types/components/scrim/scrim.utils.d.ts +2 -17
  687. package/dist/types/components/select/select-input/select-input.d.ts +22 -4
  688. package/dist/types/components/select/select-list/select-list.d.ts +51 -5
  689. package/dist/types/components/select/select-option/select-option.d.ts +31 -8
  690. package/dist/types/components/select/select.d.ts +152 -13
  691. package/dist/types/components/select/select.types.d.ts +5 -0
  692. package/dist/types/components/sign-in/sign-in.d.ts +30 -3
  693. package/dist/types/components/skip-link/skip-link-item/skip-link-item-alias.d.ts +15 -2
  694. package/dist/types/components/skip-link/skip-link-item/skip-link-item.d.ts +22 -1
  695. package/dist/types/components/skip-link/skip-link.d.ts +37 -3
  696. package/dist/types/components/slider/slider.d.ts +147 -21
  697. package/dist/types/components/slider/slider.types.d.ts +7 -2
  698. package/dist/types/components/slider/slider.utils.d.ts +27 -0
  699. package/dist/types/components/step/step-item/step-item.d.ts +15 -3
  700. package/dist/types/components/step/step.d.ts +47 -12
  701. package/dist/types/components/switch/switch.d.ts +39 -6
  702. package/dist/types/components/tab/tab-item/tab-item.d.ts +20 -4
  703. package/dist/types/components/tab/tab.d.ts +41 -11
  704. package/dist/types/components/table/table-body/table-body.d.ts +10 -6
  705. package/dist/types/components/table/table-cell/table-cell.d.ts +10 -6
  706. package/dist/types/components/table/table-header/table-header.d.ts +10 -6
  707. package/dist/types/components/table/table-header-cell/table-header-cell.d.ts +18 -6
  708. package/dist/types/components/table/table-row/table-row.d.ts +11 -6
  709. package/dist/types/components/table/table.d.ts +49 -11
  710. package/dist/types/components/tag/tag.d.ts +55 -7
  711. package/dist/types/components/textarea/textarea.d.ts +75 -5
  712. package/dist/types/components/textarea/textarea.types.d.ts +4 -0
  713. package/dist/types/components/tooltip/tooltip.d.ts +46 -8
  714. package/dist/types/components/upload/upload.d.ts +78 -10
  715. package/dist/types/components/wizard/wizard-panel/wizard-panel.d.ts +20 -2
  716. package/dist/types/components/wizard/wizard.d.ts +44 -7
  717. package/dist/types/components.d.ts +5825 -1352
  718. package/dist/types/shared/utils/floating-ui.d.ts +4 -0
  719. package/dist/types/shared/utils/focus.d.ts +14 -0
  720. package/dist/types/shared/utils/getRandom.d.ts +1 -0
  721. package/dist/types/shared/utils/id.d.ts +1 -1
  722. package/dist/types/shared/utils/index.d.ts +6 -1
  723. package/dist/types/shared/utils/motion.d.ts +14 -0
  724. package/dist/types/shared/utils/ownership.d.ts +33 -0
  725. package/dist/types/shared/utils/prop-warning.d.ts +7 -0
  726. package/dist/types/shared/utils/props.d.ts +38 -0
  727. package/dist/types/shared/utils/swipe.d.ts +5 -0
  728. package/dist/types/shared/utils/virtual-scroll.d.ts +25 -0
  729. package/dist/types/stencil-public-runtime.d.ts +12 -0
  730. package/dist/webcomponents/index.esm.js +1 -1
  731. package/dist/webcomponents/p-01baafce.entry.js +5 -0
  732. package/dist/webcomponents/p-01fb0754.entry.js +5 -0
  733. package/dist/webcomponents/p-030c02f8.entry.js +5 -0
  734. package/dist/webcomponents/p-03359c92.entry.js +5 -0
  735. package/dist/webcomponents/p-09770c98.entry.js +5 -0
  736. package/dist/webcomponents/p-0b9714f1.entry.js +5 -0
  737. package/dist/webcomponents/p-12aa36a8.entry.js +5 -0
  738. package/dist/webcomponents/p-130b6e06.entry.js +5 -0
  739. package/dist/webcomponents/p-144f8c8d.entry.js +5 -0
  740. package/dist/webcomponents/p-14fe22e2.entry.js +5 -0
  741. package/dist/webcomponents/p-1ff9210a.entry.js +5 -0
  742. package/dist/webcomponents/p-2605cdc3.entry.js +5 -0
  743. package/dist/webcomponents/p-27afaec9.entry.js +5 -0
  744. package/dist/webcomponents/p-2a50e42d.entry.js +5 -0
  745. package/dist/webcomponents/p-327f034f.entry.js +5 -0
  746. package/dist/webcomponents/p-342650b8.entry.js +5 -0
  747. package/dist/webcomponents/p-38f6a78b.entry.js +5 -0
  748. package/dist/webcomponents/p-3920fe3a.entry.js +5 -0
  749. package/dist/webcomponents/p-3ae97345.entry.js +5 -0
  750. package/dist/webcomponents/p-3cce767c.entry.js +5 -0
  751. package/dist/webcomponents/p-3df6c5d2.entry.js +5 -0
  752. package/dist/webcomponents/p-3e287899.entry.js +5 -0
  753. package/dist/webcomponents/p-3e5580ba.entry.js +5 -0
  754. package/dist/webcomponents/p-403637dd.entry.js +5 -0
  755. package/dist/webcomponents/p-435c8ef2.entry.js +5 -0
  756. package/dist/webcomponents/p-59da5b55.entry.js +5 -0
  757. package/dist/webcomponents/p-5dd4314c.entry.js +5 -0
  758. package/dist/webcomponents/p-646af6a5.entry.js +5 -0
  759. package/dist/webcomponents/p-670e8fec.entry.js +5 -0
  760. package/dist/webcomponents/p-68046544.entry.js +5 -0
  761. package/dist/webcomponents/p-68ec76b8.entry.js +5 -0
  762. package/dist/webcomponents/p-6c0ea20c.entry.js +5 -0
  763. package/dist/webcomponents/p-6c2fe5e4.entry.js +5 -0
  764. package/dist/webcomponents/p-707df9b9.entry.js +5 -0
  765. package/dist/webcomponents/p-72b839fe.entry.js +5 -0
  766. package/dist/webcomponents/p-73dcc05b.entry.js +5 -0
  767. package/dist/webcomponents/p-7acf20d3.entry.js +5 -0
  768. package/dist/webcomponents/p-7b01bddb.entry.js +5 -0
  769. package/dist/webcomponents/p-7cd38850.entry.js +5 -0
  770. package/dist/webcomponents/p-82454383.entry.js +5 -0
  771. package/dist/webcomponents/p-91e959a8.entry.js +5 -0
  772. package/dist/webcomponents/p-964c01e6.entry.js +5 -0
  773. package/dist/webcomponents/p-9858e42a.entry.js +5 -0
  774. package/dist/webcomponents/p-9c4200b0.entry.js +5 -0
  775. package/dist/webcomponents/p-9d9c87b1.entry.js +5 -0
  776. package/dist/webcomponents/p-B0PbhaxL.js +5 -0
  777. package/dist/webcomponents/p-BEJGB0Nd.js +5 -0
  778. package/dist/{components/p-Dmfk7eEe.js → webcomponents/p-BJZC_NuV.js} +1 -1
  779. package/dist/webcomponents/p-BJtdabsr.js +5 -0
  780. package/dist/webcomponents/p-BeJxz5TQ.js +5 -0
  781. package/dist/webcomponents/p-BlGV-x0w.js +5 -0
  782. package/dist/webcomponents/{p-Bfm58jO6.js → p-BtRPYRvA.js} +1 -1
  783. package/dist/webcomponents/p-CDtFCbKp.js +5 -0
  784. package/dist/webcomponents/p-CNwZRgyL.js +5 -0
  785. package/dist/webcomponents/{p-DFN_so7I.js → p-CfuJQ1DY.js} +1 -1
  786. package/dist/webcomponents/p-D9Zo6FlV.js +5 -0
  787. package/dist/webcomponents/{p-BhMVJQ4-.js → p-DV-iW9Aj.js} +1 -1
  788. package/dist/webcomponents/p-DWhzxlCx.js +5 -0
  789. package/dist/webcomponents/p-Dcn7tRST.js +7 -0
  790. package/dist/webcomponents/p-EbtQZm5s.js +5 -0
  791. package/dist/webcomponents/p-a0931550.entry.js +5 -0
  792. package/dist/webcomponents/p-a212fd85.entry.js +5 -0
  793. package/dist/webcomponents/p-a2e75143.entry.js +5 -0
  794. package/dist/webcomponents/p-a3bb98c9.entry.js +5 -0
  795. package/dist/webcomponents/p-a8b5dba0.entry.js +5 -0
  796. package/dist/webcomponents/p-aa909443.entry.js +5 -0
  797. package/dist/webcomponents/p-abaf2365.entry.js +5 -0
  798. package/dist/webcomponents/p-aeb16645.entry.js +5 -0
  799. package/dist/webcomponents/p-b287c384.entry.js +5 -0
  800. package/dist/webcomponents/p-b506b0a1.entry.js +5 -0
  801. package/dist/webcomponents/p-b520c08c.entry.js +5 -0
  802. package/dist/webcomponents/p-b94c3f84.entry.js +5 -0
  803. package/dist/webcomponents/p-bda62f90.entry.js +5 -0
  804. package/dist/webcomponents/p-c201ae16.entry.js +5 -0
  805. package/dist/webcomponents/p-c7e899a1.entry.js +5 -0
  806. package/dist/webcomponents/p-c8b7bbab.entry.js +5 -0
  807. package/dist/webcomponents/p-cbf3e251.entry.js +5 -0
  808. package/dist/webcomponents/{p-7f7506f0.entry.js → p-cff24492.entry.js} +1 -1
  809. package/dist/webcomponents/p-d35cf5b4.entry.js +5 -0
  810. package/dist/webcomponents/p-d45ffe9c.entry.js +5 -0
  811. package/dist/webcomponents/p-d719a4af.entry.js +5 -0
  812. package/dist/webcomponents/p-d826c052.entry.js +5 -0
  813. package/dist/webcomponents/p-da21a60d.entry.js +5 -0
  814. package/dist/webcomponents/p-de0c7f26.entry.js +5 -0
  815. package/dist/webcomponents/p-e20188c0.entry.js +5 -0
  816. package/dist/webcomponents/p-e27882e1.entry.js +5 -0
  817. package/dist/webcomponents/p-e3de5bb3.entry.js +5 -0
  818. package/dist/webcomponents/p-e624ff04.entry.js +5 -0
  819. package/dist/webcomponents/p-ed5af0e4.entry.js +5 -0
  820. package/dist/webcomponents/p-edc6da0e.entry.js +5 -0
  821. package/dist/webcomponents/p-f24fcf3d.entry.js +5 -0
  822. package/dist/webcomponents/p-f52ef0dc.entry.js +5 -0
  823. package/dist/webcomponents/{p-12286e73.entry.js → p-f558d7b9.entry.js} +1 -1
  824. package/dist/webcomponents/p-fcab1428.entry.js +5 -0
  825. package/dist/webcomponents/p-fe1729a7.entry.js +5 -0
  826. package/dist/webcomponents/webcomponents.esm.js +1 -1
  827. package/package.json +18 -3
  828. package/dist/cjs/clamp-Co_hWptd.js +0 -25
  829. package/dist/cjs/id-CjRFMzf6.js +0 -20
  830. package/dist/cjs/props-CScmBvKd.js +0 -24
  831. package/dist/collection/pages/components/cookiebar/index.js +0 -26
  832. package/dist/collection/pages/components/link/index.js +0 -29
  833. package/dist/collection/pages/components/pagination/index.js +0 -12
  834. package/dist/collection/pages/components/slider/index.js +0 -18
  835. package/dist/components/p-34Jfn-U-.js +0 -5
  836. package/dist/components/p-6OdfnwnK.js +0 -5
  837. package/dist/components/p-B7Amgxkp.js +0 -5
  838. package/dist/components/p-BKuMQJrQ.js +0 -5
  839. package/dist/components/p-BPJpHGOW.js +0 -5
  840. package/dist/components/p-Bb-nLtTG.js +0 -5
  841. package/dist/components/p-BeE7R9nu.js +0 -5
  842. package/dist/components/p-BkS6ujyf.js +0 -5
  843. package/dist/components/p-Bo0QYHJO.js +0 -5
  844. package/dist/components/p-C2i2c_io.js +0 -5
  845. package/dist/components/p-C7v0lVlX.js +0 -5
  846. package/dist/components/p-CMBsvswx.js +0 -5
  847. package/dist/components/p-CRrimdz6.js +0 -5
  848. package/dist/components/p-CWORw84-.js +0 -5
  849. package/dist/components/p-CvUMXJCl.js +0 -5
  850. package/dist/components/p-D6zroLx5.js +0 -5
  851. package/dist/components/p-DBP6K_aq.js +0 -5
  852. package/dist/components/p-DCrVo-8T.js +0 -5
  853. package/dist/components/p-DFUKDNck.js +0 -5
  854. package/dist/components/p-DHicj0By.js +0 -5
  855. package/dist/components/p-DIK54tTj.js +0 -5
  856. package/dist/components/p-DQRSHR-D.js +0 -5
  857. package/dist/components/p-DRVMm1Py.js +0 -5
  858. package/dist/components/p-DWPmUV72.js +0 -5
  859. package/dist/components/p-DXjQyH6s.js +0 -5
  860. package/dist/components/p-DmCxdB9P.js +0 -5
  861. package/dist/components/p-Dp0xy_3n.js +0 -5
  862. package/dist/components/p-DxZJrIyL.js +0 -5
  863. package/dist/components/p-JAkkThgf.js +0 -5
  864. package/dist/components/p-Ud-WB0hx.js +0 -5
  865. package/dist/components/p-fpMNttbg.js +0 -5
  866. package/dist/components/p-gvnfuTjd.js +0 -5
  867. package/dist/components/p-qYONSNcf.js +0 -5
  868. package/dist/components/p-qhhHGJY1.js +0 -5
  869. package/dist/components/p-ttI0nvv_.js +0 -5
  870. package/dist/components/p-ukNmfGNP.js +0 -5
  871. package/dist/components/p-xa8e1kSW.js +0 -5
  872. package/dist/esm/clamp-gvnfuTjd.js +0 -23
  873. package/dist/esm/id-BkS6ujyf.js +0 -18
  874. package/dist/esm/props-DRVMm1Py.js +0 -22
  875. package/dist/webcomponents/p-0196804a.entry.js +0 -5
  876. package/dist/webcomponents/p-0410186a.entry.js +0 -5
  877. package/dist/webcomponents/p-0415ef22.entry.js +0 -5
  878. package/dist/webcomponents/p-0777c7b1.entry.js +0 -5
  879. package/dist/webcomponents/p-0caa4d12.entry.js +0 -5
  880. package/dist/webcomponents/p-0d4f718d.entry.js +0 -5
  881. package/dist/webcomponents/p-0e84c9e8.entry.js +0 -5
  882. package/dist/webcomponents/p-147ac8d3.entry.js +0 -5
  883. package/dist/webcomponents/p-1580beee.entry.js +0 -5
  884. package/dist/webcomponents/p-18ee6175.entry.js +0 -5
  885. package/dist/webcomponents/p-1bca4499.entry.js +0 -5
  886. package/dist/webcomponents/p-1c303a4e.entry.js +0 -5
  887. package/dist/webcomponents/p-1d6b0b6f.entry.js +0 -5
  888. package/dist/webcomponents/p-1d8cb8fd.entry.js +0 -5
  889. package/dist/webcomponents/p-224daaac.entry.js +0 -5
  890. package/dist/webcomponents/p-28426d2a.entry.js +0 -5
  891. package/dist/webcomponents/p-2abd2da0.entry.js +0 -5
  892. package/dist/webcomponents/p-2fdc51ae.entry.js +0 -5
  893. package/dist/webcomponents/p-30c428b6.entry.js +0 -5
  894. package/dist/webcomponents/p-36bbea4e.entry.js +0 -5
  895. package/dist/webcomponents/p-3907ebfa.entry.js +0 -5
  896. package/dist/webcomponents/p-39a16f9d.entry.js +0 -5
  897. package/dist/webcomponents/p-3ebbd2f5.entry.js +0 -5
  898. package/dist/webcomponents/p-3ef7eac8.entry.js +0 -5
  899. package/dist/webcomponents/p-45356e9a.entry.js +0 -5
  900. package/dist/webcomponents/p-46513db4.entry.js +0 -5
  901. package/dist/webcomponents/p-4c13221a.entry.js +0 -5
  902. package/dist/webcomponents/p-51ce2c31.entry.js +0 -5
  903. package/dist/webcomponents/p-52df61cb.entry.js +0 -5
  904. package/dist/webcomponents/p-569134cf.entry.js +0 -5
  905. package/dist/webcomponents/p-5ce7db4a.entry.js +0 -5
  906. package/dist/webcomponents/p-5f373708.entry.js +0 -5
  907. package/dist/webcomponents/p-5f6afb79.entry.js +0 -5
  908. package/dist/webcomponents/p-5fc7ba4c.entry.js +0 -5
  909. package/dist/webcomponents/p-66006312.entry.js +0 -5
  910. package/dist/webcomponents/p-66b13fd9.entry.js +0 -5
  911. package/dist/webcomponents/p-6OdfnwnK.js +0 -5
  912. package/dist/webcomponents/p-750799b7.entry.js +0 -5
  913. package/dist/webcomponents/p-756ff2ad.entry.js +0 -5
  914. package/dist/webcomponents/p-765bfe27.entry.js +0 -5
  915. package/dist/webcomponents/p-7ab96c11.entry.js +0 -5
  916. package/dist/webcomponents/p-7c2ff8b4.entry.js +0 -5
  917. package/dist/webcomponents/p-7fb03a49.entry.js +0 -5
  918. package/dist/webcomponents/p-82200563.entry.js +0 -5
  919. package/dist/webcomponents/p-83ff4579.entry.js +0 -5
  920. package/dist/webcomponents/p-85f8063b.entry.js +0 -5
  921. package/dist/webcomponents/p-8b558233.entry.js +0 -5
  922. package/dist/webcomponents/p-8e6c2767.entry.js +0 -5
  923. package/dist/webcomponents/p-8e819355.entry.js +0 -5
  924. package/dist/webcomponents/p-92a9b9c4.entry.js +0 -5
  925. package/dist/webcomponents/p-966ad32f.entry.js +0 -5
  926. package/dist/webcomponents/p-9679d230.entry.js +0 -5
  927. package/dist/webcomponents/p-96dd663b.entry.js +0 -5
  928. package/dist/webcomponents/p-98843fa3.entry.js +0 -5
  929. package/dist/webcomponents/p-9a375eff.entry.js +0 -5
  930. package/dist/webcomponents/p-9b358cff.entry.js +0 -5
  931. package/dist/webcomponents/p-9f7558c7.entry.js +0 -5
  932. package/dist/webcomponents/p-BkS6ujyf.js +0 -5
  933. package/dist/webcomponents/p-C2RBydfd.js +0 -6
  934. package/dist/webcomponents/p-CO5cOQQU.js +0 -5
  935. package/dist/webcomponents/p-DIK54tTj.js +0 -5
  936. package/dist/webcomponents/p-DRVMm1Py.js +0 -5
  937. package/dist/webcomponents/p-DxZJrIyL.js +0 -5
  938. package/dist/webcomponents/p-a382e115.entry.js +0 -5
  939. package/dist/webcomponents/p-a4ae72e3.entry.js +0 -5
  940. package/dist/webcomponents/p-a994c190.entry.js +0 -5
  941. package/dist/webcomponents/p-a9ff7c25.entry.js +0 -5
  942. package/dist/webcomponents/p-c0b0f531.entry.js +0 -5
  943. package/dist/webcomponents/p-c211af17.entry.js +0 -5
  944. package/dist/webcomponents/p-c492d926.entry.js +0 -5
  945. package/dist/webcomponents/p-c4cfe599.entry.js +0 -5
  946. package/dist/webcomponents/p-c846e784.entry.js +0 -5
  947. package/dist/webcomponents/p-c949d993.entry.js +0 -5
  948. package/dist/webcomponents/p-d1e899cd.entry.js +0 -5
  949. package/dist/webcomponents/p-d38d82cc.entry.js +0 -5
  950. package/dist/webcomponents/p-e0ce536a.entry.js +0 -5
  951. package/dist/webcomponents/p-e1331288.entry.js +0 -5
  952. package/dist/webcomponents/p-e360a463.entry.js +0 -5
  953. package/dist/webcomponents/p-f078f972.entry.js +0 -5
  954. package/dist/webcomponents/p-f26038e2.entry.js +0 -5
  955. package/dist/webcomponents/p-f303f6b3.entry.js +0 -5
  956. package/dist/webcomponents/p-f6318e94.entry.js +0 -5
  957. package/dist/webcomponents/p-f85ee01c.entry.js +0 -5
  958. package/dist/webcomponents/p-fcd4ae48.entry.js +0 -5
  959. package/dist/webcomponents/p-ffe0241e.entry.js +0 -5
  960. package/dist/webcomponents/p-gvnfuTjd.js +0 -5
@@ -3,12 +3,53 @@
3
3
  * © https://serpro.gov.br/ - MIT License.
4
4
  */
5
5
  import { Host, h, } from "@stencil/core";
6
+ import { findComposedOwner } from "../../shared/utils/ownership";
7
+ import { resolveAllowedPropValue, resolveIntegerPropValue } from "../../shared/utils/props";
8
+ const STEP_ORIENTATIONS = ['horizontal', 'vertical'];
9
+ const STEP_LABEL_POSITIONS = ['top', 'right', 'bottom', 'left'];
10
+ const STEP_CONTENT_TYPES = [
11
+ 'default',
12
+ 'br-icon',
13
+ 'no-content',
14
+ 'slotted',
15
+ ];
16
+ const STEP_MODES = ['controller', 'step'];
17
+ const STEP_PROGRESSION_TYPES = ['linear', 'nonlinear'];
18
+ const STEP_VERTICAL_CONTENT_PLACEMENTS = ['between', 'side'];
6
19
  /**
7
- * ## Design System
20
+ * O componente `br-step` é o indicador visual de etapas e progresso do GovBR-DS, desenvolvido para orientar a pessoa usuária ao longo de fluxos sequenciais e processos com múltiplos passos.
8
21
  *
9
- * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/step?tab=designer).
22
+ * ### Para que serve
10
23
  *
11
- * @category Navegação
24
+ * - **Visualização de progresso:** Informa claramente em qual etapa do processo o usuário se encontra, quais já foram concluídas e quais ainda estão pendentes.
25
+ * - **Orientação flexível:** Suporta leiaute horizontal (ideal para telas amplas) e vertical (ideal para fluxos em barra lateral ou dispositivos móveis).
26
+ * - **Semântica e acessibilidade WAI-ARIA:** Comunica o passo ativo através de `aria-current="step"` e indica etapas concluídas ou bloqueadas.
27
+ *
28
+ * ### Quando utilizar
29
+ *
30
+ * - **Utilize quando:**
31
+ * - O fluxo tiver entre 2 e 5 etapas lógicas com uma sequência recomendada de execução (ex.: Identificação > Dados > Pagamento > Confirmação).
32
+ * - **Evite e prefira outro componente quando:**
33
+ * - A pessoa usuária puder alternar livremente entre as seções em qualquer ordem sem dependência de progresso (prefira `br-tab`).
34
+ * - For necessário um contêiner completo que gerencie também os painéis de formulário e botões de avançar/voltar (prefira `br-wizard`).
35
+ *
36
+ * ### Composição e Subcomponentes
37
+ *
38
+ * | Subcomponente | Papel | Regra de uso |
39
+ * | --- | --- | --- |
40
+ * | `br-step` | **Orquestrador de progresso.** Gerencia a orientação, conecta as linhas de fluxo e calcula os estados das etapas. | Contêiner raiz da barra de progresso. |
41
+ * | `br-step-item` | **Etapa individual.** Representa cada passo com número, rótulo e estado. | Declarado dentro do slot padrão do `br-step`. |
42
+ *
43
+ * ### Como os subcomponentes se relacionam
44
+ *
45
+ * O componente pai `br-step` recebe múltiplos elementos `br-step-item` em seu slot padrão:
46
+ * 1. Com base na propriedade `current` ou nos índices declarados, o pai calcula as linhas conectoras visuais entre as etapas.
47
+ * 2. Sincroniza os estados de cada etapa: concluída (`completed`), ativa (`active`) ou desabilitada (`disabled`).
48
+ *
49
+ * Para a documentação completa de design, incluindo diretrizes de acessibilidade e especificações visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/step?tab=designer).
50
+ *
51
+
52
+ * @category Navegação, Progresso
12
53
  * @status stable
13
54
  * @slot default - Slot para os itens do step (br-step-item), aceitando apenas esse componente.
14
55
  *
@@ -27,40 +68,41 @@ export class Step {
27
68
  this.isTablist = false;
28
69
  this.stepItems = [];
29
70
  /**
30
- * propriedade responsável por definir a orientação do componente Step
71
+ * propriedade responsável por definir a orientação do componente Step. Valores inválidos usam `horizontal`.
31
72
  * @deprecated Use `orientation`.
32
73
  */
33
74
  this.layout = 'horizontal';
34
75
  /**
35
76
  *
36
- * define o passo que começará destacado
77
+ * define o passo que começará destacado. Valores inválidos usam 0.
37
78
  * @deprecated Use `initialIndex`.
38
79
  */
39
80
  this.initialStep = '0';
40
81
  /**
41
82
  *
42
- * Propriedade que define a posição onde o texto de destaque,label, ficará localizado no stepItem
83
+ * Propriedade que define a posição onde o texto de destaque, label, ficará localizado no stepItem. Valores inválidos usam `bottom`.
43
84
  */
44
85
  this.labelPosition = 'bottom';
45
86
  /**
46
87
  *
47
- * Propriedade que define o tipo de conteúdo a ser exibido dentro do componente step e stepItem
88
+ * Propriedade que define o tipo de conteúdo a ser exibido dentro do componente step e stepItem. Valores inválidos usam `default`.
48
89
  */
49
90
  this.contentType = 'default';
50
91
  /**
51
92
  *
52
- * Propriedade que define o tipo de comportamento que o componente Step deverá seguir
93
+ * Propriedade que define o tipo de comportamento que o componente Step deverá seguir. Valores inválidos usam `step`.
53
94
  */
54
95
  this.mode = 'step';
55
96
  /**
56
97
  *
57
- * Propriedade que define o tipo de progressão de etapas que o step vai executar
98
+ * Propriedade que define o tipo de progressão de etapas que o step vai executar. Valores inválidos usam `nonlinear`.
58
99
  */
59
100
  this.progressionType = 'nonlinear';
60
101
  /**
61
102
  * Define a posição do conteúdo de cada etapa no layout vertical.
62
103
  * - `between`: conteúdo abaixo do indicador/rótulo, entre as etapas.
63
104
  * - `side`: conteúdo em coluna lateral à linha de indicadores.
105
+ * Valores inválidos usam `between`.
64
106
  */
65
107
  this.verticalContentPlacement = 'between';
66
108
  this.ariaObjectContent = {
@@ -83,7 +125,7 @@ export class Step {
83
125
  if (oldValue === newValue || !this.isValidStepIndex(newValue))
84
126
  return;
85
127
  this.updateStepItemsActiveState(oldValue);
86
- if (this.progressionType === 'linear') {
128
+ if (this.effectiveProgressionType === 'linear') {
87
129
  this.configureLinearProgression();
88
130
  }
89
131
  this.brStepChange.emit({ activeStep: newValue });
@@ -114,8 +156,8 @@ export class Step {
114
156
  /**
115
157
  * Observa mudanças no modo e propaga aos itens.
116
158
  */
117
- modeChanged(newValue) {
118
- this.setStepItemsMode(newValue);
159
+ modeChanged(_newValue) {
160
+ this.setStepItemsMode(this.effectiveMode);
119
161
  this.configureStepItems();
120
162
  }
121
163
  /**
@@ -136,8 +178,16 @@ export class Step {
136
178
  verticalContentPlacementChanged() {
137
179
  this.setStepItemsVerticalContentPlacement();
138
180
  }
181
+ get effectiveInitialIndex() {
182
+ const initialIndex = resolveIntegerPropValue(this.el, 'initialIndex', this.initialIndex, 0, Number.MAX_SAFE_INTEGER, 0, {
183
+ allowUndefined: true,
184
+ });
185
+ if (initialIndex !== undefined)
186
+ return initialIndex;
187
+ return resolveIntegerPropValue(this.el, 'initialStep', Number(this.initialStep), 0, Number.MAX_SAFE_INTEGER, 0);
188
+ }
139
189
  componentWillLoad() {
140
- this.activeStep = this.initialIndex ?? Number(this.initialStep);
190
+ this.activeStep = this.effectiveInitialIndex;
141
191
  this.getStepItemsElements();
142
192
  const root = this.el.getRootNode();
143
193
  this.isTablist = root instanceof ShadowRoot && root.host?.tagName?.toLowerCase() === 'br-carousel';
@@ -146,7 +196,7 @@ export class Step {
146
196
  this.setStepItemsLabelPosition();
147
197
  this.setStepItemsContentType();
148
198
  this.setStepItemsDefaultContent();
149
- this.setStepItemsMode(this.mode);
199
+ this.setStepItemsMode(this.effectiveMode);
150
200
  this.setStepItemsVerticalContentPlacement();
151
201
  this.configureStepItems();
152
202
  if (this.isValidStepIndex(this.activeStep)) {
@@ -161,9 +211,10 @@ export class Step {
161
211
  * Através desse listener o componente define qual será o proximo passo do step que terá o estado ativo
162
212
  */
163
213
  handleClick(event) {
164
- const targetElement = event.target;
165
- const targetStepItem = targetElement.closest('br-step-item');
166
- if (targetStepItem === null)
214
+ const targetStepItem = event
215
+ .composedPath()
216
+ .find((node) => node.tagName?.toLowerCase() === 'br-step-item');
217
+ if (!targetStepItem || findComposedOwner(targetStepItem, 'br-step') !== this.el)
167
218
  return;
168
219
  this.setActiveStep(this.stepItems.indexOf(targetStepItem));
169
220
  }
@@ -177,7 +228,7 @@ export class Step {
177
228
  this.getStepItemsElements();
178
229
  if (this.activeStep + 1 < this.stepItems.length) {
179
230
  this.setActiveStep(this.activeStep + 1);
180
- if (this.progressionType === 'linear') {
231
+ if (this.effectiveProgressionType === 'linear') {
181
232
  this.configureLinearProgression();
182
233
  }
183
234
  }
@@ -223,7 +274,25 @@ export class Step {
223
274
  return this.activeStep;
224
275
  }
225
276
  get effectiveOrientation() {
226
- return this.orientation ?? this.layout;
277
+ if (this.orientation !== undefined) {
278
+ return resolveAllowedPropValue(this.el, 'orientation', this.orientation, STEP_ORIENTATIONS, 'horizontal');
279
+ }
280
+ return resolveAllowedPropValue(this.el, 'layout', this.layout, STEP_ORIENTATIONS, 'horizontal');
281
+ }
282
+ get effectiveLabelPosition() {
283
+ return resolveAllowedPropValue(this.el, 'labelPosition', this.labelPosition, STEP_LABEL_POSITIONS, 'bottom');
284
+ }
285
+ get effectiveContentType() {
286
+ return resolveAllowedPropValue(this.el, 'contentType', this.contentType, STEP_CONTENT_TYPES, 'default');
287
+ }
288
+ get effectiveMode() {
289
+ return resolveAllowedPropValue(this.el, 'mode', this.mode, STEP_MODES, 'step');
290
+ }
291
+ get effectiveProgressionType() {
292
+ return resolveAllowedPropValue(this.el, 'progressionType', this.progressionType, STEP_PROGRESSION_TYPES, 'nonlinear');
293
+ }
294
+ get effectiveVerticalContentPlacement() {
295
+ return resolveAllowedPropValue(this.el, 'verticalContentPlacement', this.verticalContentPlacement, STEP_VERTICAL_CONTENT_PLACEMENTS, 'between');
227
296
  }
228
297
  /**
229
298
  * Atualiza os atributos 'active' dos step-items de forma segura
@@ -238,7 +307,9 @@ export class Step {
238
307
  getStepItemsElements() {
239
308
  const rawChildren = Array.from(this.el.children).filter((child) => child.tagName.toLowerCase() !== 'style' && child.tagName.toLowerCase() !== 'script');
240
309
  if (rawChildren.length === 0) {
241
- this.stepItems = [];
310
+ if (this.stepItems.length > 0) {
311
+ this.stepItems = [];
312
+ }
242
313
  return;
243
314
  }
244
315
  const childrenHaveConsistentTagName = rawChildren.every((item) => item.tagName.toLowerCase() === 'br-step-item');
@@ -251,6 +322,9 @@ export class Step {
251
322
  if (!childrenHaveConsistentContentType) {
252
323
  throw new Error('br-step must have all child elements with same content type attribute value');
253
324
  }
325
+ const stepItemsDidNotChange = this.stepItems.length === slotItems.length && this.stepItems.every((item, index) => item === slotItems[index]);
326
+ if (stepItemsDidNotChange)
327
+ return;
254
328
  this.stepItems = slotItems;
255
329
  }
256
330
  getStepItems() {
@@ -264,7 +338,7 @@ export class Step {
264
338
  const slotItems = this.getStepItems();
265
339
  slotItems.forEach((elements) => {
266
340
  if (this.labelPosition !== undefined) {
267
- elements.setLabelPosition(this.labelPosition);
341
+ elements.setLabelPosition(this.effectiveLabelPosition);
268
342
  }
269
343
  });
270
344
  }
@@ -277,13 +351,13 @@ export class Step {
277
351
  }
278
352
  async setStepItemsContentType() {
279
353
  const slotItems = this.getStepItems();
280
- await Promise.all(slotItems.map((element) => element.setContentType(this.contentType)));
354
+ await Promise.all(slotItems.map((element) => element.setContentType(this.effectiveContentType)));
281
355
  slotItems.forEach((elements, index) => {
282
356
  elements.setAttribute('aria-posinset', `${index + 1}`);
283
357
  elements.setAttribute('aria-setsize', `${slotItems.length}`);
284
358
  });
285
359
  }
286
- setStepItemsMode(mode) {
360
+ setStepItemsMode(mode = this.effectiveMode) {
287
361
  const slotItems = this.getStepItems();
288
362
  slotItems.forEach((elements) => {
289
363
  elements.setMode(mode);
@@ -302,13 +376,13 @@ export class Step {
302
376
  setStepItemsVerticalContentPlacement() {
303
377
  const slotItems = this.getStepItems();
304
378
  slotItems.forEach((element) => {
305
- element.setVerticalContentPlacement(this.verticalContentPlacement);
379
+ element.setVerticalContentPlacement(this.effectiveVerticalContentPlacement);
306
380
  });
307
381
  }
308
382
  setActiveStep(value) {
309
383
  if (!this.isValidStepIndex(value))
310
384
  return;
311
- if (this.progressionType !== 'linear' && this.stepItems[value]?.hasAttribute('disabled'))
385
+ if (this.effectiveProgressionType !== 'linear' && this.stepItems[value]?.hasAttribute('disabled'))
312
386
  return;
313
387
  this.activeStep = value;
314
388
  }
@@ -320,10 +394,10 @@ export class Step {
320
394
  this.configureTablistMode();
321
395
  return;
322
396
  }
323
- if (this.mode === 'step') {
397
+ if (this.effectiveMode === 'step') {
324
398
  this.configureTimeLine();
325
399
  }
326
- if (this.progressionType === 'linear') {
400
+ if (this.effectiveProgressionType === 'linear') {
327
401
  this.configureLinearProgression();
328
402
  }
329
403
  else {
@@ -382,6 +456,7 @@ export class Step {
382
456
  clearLinearProgression() {
383
457
  const slotItems = this.getStepItems();
384
458
  slotItems.forEach((elements) => {
459
+ elements.disabled = false;
385
460
  elements.removeAttribute('disabled');
386
461
  });
387
462
  }
@@ -397,29 +472,29 @@ export class Step {
397
472
  return 'Slides';
398
473
  }
399
474
  let ariaLabel = ' Lista de Opções ';
400
- if (this.mode !== 'controller') {
475
+ if (this.effectiveMode !== 'controller') {
401
476
  ariaLabel +=
402
- this.ariaObjectContent[this.mode] +
403
- this.ariaObjectContent[this.contentType] +
404
- this.ariaObjectContent[this.progressionType] +
477
+ this.ariaObjectContent[this.effectiveMode] +
478
+ this.ariaObjectContent[this.effectiveContentType] +
479
+ this.ariaObjectContent[this.effectiveProgressionType] +
405
480
  this.ariaObjectContent[this.effectiveOrientation];
406
481
  }
407
482
  else {
408
- ariaLabel += this.ariaObjectContent[this.mode];
483
+ ariaLabel += this.ariaObjectContent[this.effectiveMode];
409
484
  }
410
485
  return ariaLabel;
411
486
  }
412
487
  render() {
413
488
  const isTablist = this.isTablist;
414
- return (h(Host, { key: 'afbe0f698f9c2e98309cc4ebcd920eade167209f' }, this.stepItems.length > 0 &&
415
- (isTablist ? (h("div", { part: "container", role: "tablist", "aria-orientation": this.effectiveOrientation, "aria-label": this.getAreaLabel(), class: this.getCssClassMap(), "data-label": this.labelPosition }, h("div", { class: "step-progress" }, h("slot", { onSlotchange: () => this.handleSlotChange() })))) : (h("div", { part: "container", role: "group", "aria-label": this.getAreaLabel(), class: this.getCssClassMap(), "data-label": this.labelPosition }, h("div", { class: "step-progress" }, h("slot", { onSlotchange: () => this.handleSlotChange() })))))));
489
+ return (h(Host, { key: '9c911332978824aeef3be291bcda9d0f411efbb5' }, this.stepItems.length > 0 &&
490
+ (isTablist ? (h("div", { part: "container", role: "tablist", "aria-orientation": this.effectiveOrientation, "aria-label": this.getAreaLabel(), class: this.getCssClassMap(), "data-label": this.effectiveLabelPosition }, h("div", { class: "step-progress" }, h("slot", { onSlotchange: () => this.handleSlotChange() })))) : (h("div", { part: "container", role: "group", "aria-label": this.getAreaLabel(), class: this.getCssClassMap(), "data-label": this.effectiveLabelPosition }, h("div", { class: "step-progress" }, h("slot", { onSlotchange: () => this.handleSlotChange() })))))));
416
491
  }
417
492
  handleSlotChange() {
418
493
  this.getStepItemsElements();
419
494
  this.setStepItemsLabelPosition();
420
495
  void this.setStepItemsContentType();
421
496
  this.setStepItemsDefaultContent();
422
- this.setStepItemsMode(this.mode);
497
+ this.setStepItemsMode(this.effectiveMode);
423
498
  this.setStepItemsVerticalContentPlacement();
424
499
  this.configureStepItems();
425
500
  }
@@ -459,7 +534,7 @@ export class Step {
459
534
  "name": "deprecated",
460
535
  "text": "Use `orientation`."
461
536
  }],
462
- "text": "propriedade respons\u00E1vel por definir a orienta\u00E7\u00E3o do componente Step"
537
+ "text": "propriedade respons\u00E1vel por definir a orienta\u00E7\u00E3o do componente Step. Valores inv\u00E1lidos usam `horizontal`."
463
538
  },
464
539
  "getter": false,
465
540
  "setter": false,
@@ -486,7 +561,7 @@ export class Step {
486
561
  "optional": true,
487
562
  "docs": {
488
563
  "tags": [],
489
- "text": "Orienta\u00E7\u00E3o do componente. Quando informada, tem preced\u00EAncia sobre `layout`."
564
+ "text": "Orienta\u00E7\u00E3o do componente. Quando informada, tem preced\u00EAncia sobre `layout`; valores inv\u00E1lidos usam `horizontal`."
490
565
  },
491
566
  "getter": false,
492
567
  "setter": false,
@@ -508,7 +583,7 @@ export class Step {
508
583
  "name": "deprecated",
509
584
  "text": "Use `initialIndex`."
510
585
  }],
511
- "text": "\ndefine o passo que come\u00E7ar\u00E1 destacado"
586
+ "text": "\ndefine o passo que come\u00E7ar\u00E1 destacado. Valores inv\u00E1lidos usam 0."
512
587
  },
513
588
  "getter": false,
514
589
  "setter": false,
@@ -528,7 +603,7 @@ export class Step {
528
603
  "optional": true,
529
604
  "docs": {
530
605
  "tags": [],
531
- "text": "\u00CDndice inicial zero-based. Quando informado, tem preced\u00EAncia sobre `initialStep`."
606
+ "text": "\u00CDndice inicial zero-based. Quando informado, tem preced\u00EAncia sobre `initialStep`; valores inv\u00E1lidos usam 0."
532
607
  },
533
608
  "getter": false,
534
609
  "setter": false,
@@ -554,7 +629,7 @@ export class Step {
554
629
  "optional": true,
555
630
  "docs": {
556
631
  "tags": [],
557
- "text": "\nPropriedade que define a posi\u00E7\u00E3o onde o texto de destaque,label, ficar\u00E1 localizado no stepItem"
632
+ "text": "\nPropriedade que define a posi\u00E7\u00E3o onde o texto de destaque, label, ficar\u00E1 localizado no stepItem. Valores inv\u00E1lidos usam `bottom`."
558
633
  },
559
634
  "getter": false,
560
635
  "setter": false,
@@ -581,7 +656,7 @@ export class Step {
581
656
  "optional": false,
582
657
  "docs": {
583
658
  "tags": [],
584
- "text": "\nPropriedade que define o tipo de conte\u00FAdo a ser exibido dentro do componente step e stepItem"
659
+ "text": "\nPropriedade que define o tipo de conte\u00FAdo a ser exibido dentro do componente step e stepItem. Valores inv\u00E1lidos usam `default`."
585
660
  },
586
661
  "getter": false,
587
662
  "setter": false,
@@ -608,7 +683,7 @@ export class Step {
608
683
  "optional": false,
609
684
  "docs": {
610
685
  "tags": [],
611
- "text": "\nPropriedade que define o tipo de comportamento que o componente Step dever\u00E1 seguir"
686
+ "text": "\nPropriedade que define o tipo de comportamento que o componente Step dever\u00E1 seguir. Valores inv\u00E1lidos usam `step`."
612
687
  },
613
688
  "getter": false,
614
689
  "setter": false,
@@ -635,7 +710,7 @@ export class Step {
635
710
  "optional": false,
636
711
  "docs": {
637
712
  "tags": [],
638
- "text": "\nPropriedade que define o tipo de progress\u00E3o de etapas que o step vai executar"
713
+ "text": "\nPropriedade que define o tipo de progress\u00E3o de etapas que o step vai executar. Valores inv\u00E1lidos usam `nonlinear`."
639
714
  },
640
715
  "getter": false,
641
716
  "setter": false,
@@ -662,7 +737,7 @@ export class Step {
662
737
  "optional": false,
663
738
  "docs": {
664
739
  "tags": [],
665
- "text": "Define a posi\u00E7\u00E3o do conte\u00FAdo de cada etapa no layout vertical.\n- `between`: conte\u00FAdo abaixo do indicador/r\u00F3tulo, entre as etapas.\n- `side`: conte\u00FAdo em coluna lateral \u00E0 linha de indicadores."
740
+ "text": "Define a posi\u00E7\u00E3o do conte\u00FAdo de cada etapa no layout vertical.\n- `between`: conte\u00FAdo abaixo do indicador/r\u00F3tulo, entre as etapas.\n- `side`: conte\u00FAdo em coluna lateral \u00E0 linha de indicadores.\nValores inv\u00E1lidos usam `between`."
666
741
  },
667
742
  "getter": false,
668
743
  "setter": false,
@@ -1 +1 @@
1
- *,*::before,*::after{box-sizing:border-box}:host{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}main{display:block}hr{box-sizing:content-box;height:0;overflow:visible}a{background-color:rgba(0,0,0,0)}b,strong{font-weight:bolder}code{font-family:monospace;font-size:1em}small{font-size:80%}img{border-style:none}button,input,select,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{appearance:none}::-webkit-file-upload-button{appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.d-none{display:none !important}@media(min-width: 576px){.d-sm-block{display:block !important}.d-sm-flex{display:flex !important}}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{box-shadow:var(--surface-shadow-sm);left:0;position:absolute;top:100%}.dropdown>.br-notification{left:auto;right:0}.dropdown .br-item{--color: var(--color-light);--color-rgb: var(--color-light-rgb);--text-color: var(--color-light);--interactive: var(--interactive-light);--interactive-rgb: var(--color-rgb);--visited: var(--visited-light);--hover: var(--hover-light);--pressed: var(--pressed-light);--focus-color: var(--focus-color-light);--focus: var(--focus-color-light);--item-padding-y: var(--spacing-scale-2x);background-color:var(--background-light);color:var(--color)}.dropdown .br-item:not(:last-child){border-bottom:1px solid var(--border-color)}.dropdown .br-item.selected{--color: var(--color-dark);--color-rgb: var(--color-dark-rgb);--text-color: var(--color-dark);--interactive: var(--interactive-dark);--interactive-rgb: var(--interactive-dark-rgb);--visited: var(--visited-dark);--hover: var(--hover-dark);--pressed: var(--pressed-dark);--focus-color: var(--focus-color-dark);--focus: var(--focus-color-dark)}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.align-items-center{align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter)*.5);padding-right:calc(var(--grid-gutter)*.5);width:100%}.col{flex:1 0 0%;min-width:8.3333333333%}.col-auto{flex:0 0 auto;width:auto}.col-2{flex-basis:16.6666666667%;max-width:16.6666666667%}.container,.container-fluid,.container-lg{--grid-margin: var(--grid-portrait-margin);--grid-maxwidth: var(--grid-portrait-maxwidth);margin-left:auto;margin-right:auto;max-width:var(--grid-maxwidth);padding-left:var(--grid-margin);padding-right:var(--grid-margin);width:100%}.row{--grid-gutter: var(--grid-portrait-gutter);display:flex;flex-wrap:wrap;margin-left:calc(var(--grid-gutter)*-0.5);margin-right:calc(var(--grid-gutter)*-0.5)}@media(min-width: 576px){.container,.container-lg,.container-fluid{--grid-margin: var(--grid-tablet-margin)}.row{--grid-gutter: var(--grid-tablet-gutter)}.container{--grid-maxwidth: calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}}@media(min-width: 992px){.container,.container-lg,.container-fluid{--grid-margin: var(--grid-tablet-margin)}.row{--grid-gutter: var(--grid-tablet-gutter)}.container{--grid-maxwidth: calc(var(--grid-breakpoint-md) - var(--grid-tablet-margin))}}@media(min-width: 1280px){.container,.container-lg,.container-fluid{--grid-margin: var(--grid-desktop-margin)}.row{--grid-gutter: var(--grid-desktop-gutter)}.container,.container-lg{--grid-maxwidth: calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}}@media(min-width: 1600px){.container,.container-lg,.container-fluid{--grid-margin: var(--grid-tv-margin)}.row{--grid-gutter: var(--grid-tv-gutter)}.container,.container-lg{--grid-maxwidth: calc(var(--grid-breakpoint-xl) - var(--grid-tv-margin))}}.ease{animation-timing-function:cubic-bezier(0.25, 0.1, 0.25, 1)}.ease-in-out{animation-timing-function:cubic-bezier(0.42, 0, 0.58, 1)}.mt-1{margin-top:var(--spacing-scale-half) !important}.mr-1{margin-right:var(--spacing-scale-half) !important}.mb-1{margin-bottom:var(--spacing-scale-half) !important}.ml-1{margin-left:var(--spacing-scale-half) !important}.mx-3{margin-left:var(--spacing-scale-2x) !important;margin-right:var(--spacing-scale-2x) !important}.mb-4{margin-bottom:var(--spacing-scale-3x) !important}.ml-auto{margin-left:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}@media(min-width: 576px){.ml-sm-0{margin-left:var(--spacing-scale-default) !important}}.highlight{background:var(--status-highlight-background) linear-gradient(var(--status-highlight-overlay), var(--status-highlight-overlay));color:var(--status-highlight-text);padding:0 var(--spacing-scale-half)}[disabled],.disabled{cursor:not-allowed;opacity:var(--disabled)}[disabled] *,.disabled *{pointer-events:none}.text-center{text-align:center !important}.text-right{text-align:right !important}.text-nowrap{white-space:nowrap !important}.text-uppercase{text-transform:uppercase !important}.text-bold{font-weight:700 !important}.text-base{font-size:var(--font-size-scale-base) !important}.text-down-01{font-size:var(--font-size-scale-down-01) !important}@media(min-width: 576px){.text-sm-center{text-align:center !important}.text-sm-left{text-align:left !important}.text-sm-right{text-align:right !important}}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media(min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset: var(--spacing-scale-half)}a:focus{outline:none}a.focus-visible,a:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}a:not(:disabled):hover{background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}a{color:var(--interactive);text-decoration:none}.main-content a{text-decoration:underline}button{cursor:pointer}img{max-width:100%;vertical-align:middle}h2,.h2{color:var(--color);font-size:var(--font-size-scale-up-03);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-2xh);margin-top:var(--spacing-scale-3xh);padding-bottom:var(--spacing-scale-2xh)}@media(min-width: 576px){.h2,h2{font-size:var(--font-size-scale-up-05);font-weight:var(--font-weight-regular)}}ul,ol{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}table{--table-background: var(--background);--table-color: var(--color);--table-border-color: var(--gray-20);--table-border-style: solid;--table-border-width: 1px;--table-hover: var(--color-rgb);--table-padding: var(--spacing-scale-3x);--table-font-weight: var(--font-weight-medium);--table-th-background: var(--background-alternative);--table-th-font-weight: var(--font-weight-semi-bold);--table-row-size: var(--spacing-scale-2x);border-collapse:collapse;width:100%}tr.selected,tr.is-selected{--color: var(--color-dark);--color-rgb: var(--color-dark-rgb);--text-color: var(--color-dark);--interactive: var(--interactive-dark);--interactive-rgb: var(--interactive-dark-rgb);--visited: var(--visited-dark);--hover: var(--hover-dark);--pressed: var(--pressed-dark);--focus-color: var(--focus-color-dark);--focus: var(--focus-color-dark)}label,.label{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half)}fieldset,.fieldset{border:var(--surface-width-none);margin-bottom:var(--spacing-scale-5x);margin-top:0;padding:0}legend,.legend{color:var(--color);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-2x);margin-top:var(--spacing-scale-2x)}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}.help{font-size:var(--font-size-scale-base)}code,.code{background:var(--gray-5);border-radius:4px;color:var(--gray-80);display:inline-block;font-family:monospace;font-size:var(--font-size-scale-base);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);padding:var(--spacing-scale-half)}*[data-toggle=collapse]:not(:disabled):hover{background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}*[data-toggle=collapse]:focus{outline:none}*[data-toggle=collapse].focus-visible,*[data-toggle=collapse]:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}.br-switch{--switch-height: var(--switch-height-medium);--switch-width: var(--switch-width-medium);--switch-toggle-size: var(--switch-toggle-medium);--switch-icon-size: var(--switch-icon-medium);--switch-height-small: 24px;--switch-height-medium: 30px;--switch-height-large: 36px;--switch-width-small: 40px;--switch-width-medium: 52px;--switch-width-large: 64px;--switch-toggle-small: 16px;--switch-toggle-medium: 22px;--switch-toggle-large: 28px;--switch-icon-small: var(--icon-size-xs);--switch-icon-medium: var(--icon-size-sm);--switch-icon-large: var(--icon-size-base);display:inline-flex;min-height:var(--switch-height)}.br-switch input{opacity:0;position:absolute}.br-switch input+label{align-items:center;color:var(--color);cursor:pointer;display:inline-flex;font-size:var(--font-size-scale-base);margin-bottom:0;position:relative}.br-switch input+label::before{background:var(--background-light);border:1px solid var(--border-color);border-radius:100em;content:"";height:var(--switch-height);position:absolute;width:var(--switch-width)}.br-switch input+label::after{background-color:var(--off);border-radius:50%;content:"";height:var(--switch-toggle-size);position:absolute;transition:all .3s ease-in-out;width:var(--switch-toggle-size)}.br-switch input:checked+label::after{background-color:var(--on)}.br-switch input+label{padding-right:calc(var(--spacing-scale-2x) + var(--switch-width))}.br-switch input+label:empty{padding-right:var(--switch-width)}.br-switch input+label::before{right:0}.br-switch input+label::after{right:calc(4px + var(--switch-toggle-size))}.br-switch input:checked+label::after{right:4px}.br-switch.right input+label{padding-left:calc(var(--spacing-scale-2x) + var(--switch-width));padding-right:0}.br-switch.right input+label::before{left:0}.br-switch.right input+label::after{left:4px}.br-switch.right input:checked+label::after{left:calc(var(--switch-width) - var(--switch-toggle-size) - 4px)}.br-switch.top{min-height:calc(var(--switch-height)*2)}.br-switch.top input+label{align-items:flex-start;padding-right:0}.br-switch.top input+label::before{bottom:0;left:0}.br-switch.top input+label::after{bottom:4px;left:4px}.br-switch.top input:checked+label::after{left:calc(var(--switch-width) - var(--switch-toggle-size) - 4px)}.br-switch.small{--switch-height: var(--switch-height-small);--switch-width: var(--switch-width-small);--switch-toggle-size: var(--switch-toggle-small);--switch-icon-size: var(--switch-icon-small)}.br-switch.medium{--switch-height: var(--switch-height-medium);--switch-width: var(--switch-width-medium);--switch-toggle-size: var(--switch-toggle-medium);--switch-icon-size: var(--switch-icon-medium)}.br-switch.large{--switch-height: var(--switch-height-large);--switch-width: var(--switch-width-large);--switch-toggle-size: var(--switch-toggle-large);--switch-icon-size: var(--switch-icon-large)}.br-switch input~.switch-data{align-self:center;color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);margin-left:8px}.br-switch input~.switch-data::before{content:attr(data-disabled)}.br-switch input:checked~.switch-data{color:var(--color)}.br-switch input:checked~.switch-data::before{content:attr(data-enabled)}.br-switch.icon input+label::after{align-items:center;color:var(--color-dark);content:"";display:inline-flex;font-family:"Font Awesome 5 Free",sans-serif;font-size:var(--switch-icon-size);font-weight:var(--font-weight-black);justify-content:center}.br-switch.icon input:checked+label::after{content:""}.br-switch input:focus-visible+label::before,.br-switch input.focus-visible+label::before{border-color:var(--focus) !important;box-shadow:0 0 0 var(--surface-width-md) var(--focus);outline:none}.br-switch input:hover:not([disabled]):checked+label::before{background-image:linear-gradient(rgba(var(--on-rgb), var(--hover)), rgba(var(--on-rgb), var(--hover)))}.br-switch input:hover:not([disabled]):not(:checked)+label::before{background-image:linear-gradient(rgba(var(--off-rgb), var(--hover)), rgba(var(--off-rgb), var(--hover)))}.br-switch input:active:not([disabled]):checked+label::before{background-image:linear-gradient(rgba(var(--on-rgb), var(--pressed)), rgba(var(--on-rgb), var(--pressed)))}.br-switch input:active:not([disabled]):not(:checked)+label::before{background-image:linear-gradient(rgba(var(--off-rgb), var(--pressed)), rgba(var(--off-rgb), var(--pressed)))}.br-switch.inverted,.br-switch.inverted label,.br-switch.dark-mode,.br-switch.dark-mode label{color:var(--color-dark)}:host{display:inline-block;margin-bottom:var(--spacing-scale-base)}:host([disabled]) .br-switch,:host([disabled]) .br-switch label,:host([disabled]) .br-switch input{cursor:not-allowed}
1
+ *,*::before,*::after{box-sizing:border-box}:host{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}main{display:block}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace;font-size:1em}a{background-color:rgba(0,0,0,0)}b,strong{font-weight:bolder}code{font-family:monospace;font-size:1em}small{font-size:80%}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{appearance:none}::-webkit-file-upload-button{appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.d-none{display:none !important}@media(min-width: 576px){.d-sm-block{display:block !important}.d-sm-flex{display:flex !important}}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{box-shadow:var(--surface-shadow-sm);left:0;position:absolute;top:100%}.dropdown>.br-notification{left:auto;right:0}.dropdown .br-item{--color: var(--color-light);--color-rgb: var(--color-light-rgb);--text-color: var(--color-light);--interactive: var(--interactive-light);--interactive-rgb: var(--color-rgb);--visited: var(--visited-light);--hover: var(--hover-light);--pressed: var(--pressed-light);--focus-color: var(--focus-color-light);--focus: var(--focus-color-light);--item-padding-y: var(--spacing-scale-2x);background-color:var(--background-light);color:var(--color)}.dropdown .br-item:not(:last-child){border-bottom:1px solid var(--border-color)}.dropdown .br-item.selected{--color: var(--color-dark);--color-rgb: var(--color-dark-rgb);--text-color: var(--color-dark);--interactive: var(--interactive-dark);--interactive-rgb: var(--interactive-dark-rgb);--visited: var(--visited-dark);--hover: var(--hover-dark);--pressed: var(--pressed-dark);--focus-color: var(--focus-color-dark);--focus: var(--focus-color-dark)}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.align-items-center{align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter)*.5);padding-right:calc(var(--grid-gutter)*.5);width:100%}.col{flex:1 0 0%;min-width:8.3333333333%}.col-auto{flex:0 0 auto;width:auto}.col-2{flex-basis:16.6666666667%;max-width:16.6666666667%}.container,.container-fluid,.container-lg{--grid-margin: var(--grid-portrait-margin);--grid-maxwidth: var(--grid-portrait-maxwidth);margin-left:auto;margin-right:auto;max-width:var(--grid-maxwidth);padding-left:var(--grid-margin);padding-right:var(--grid-margin);width:100%}.row{--grid-gutter: var(--grid-portrait-gutter);display:flex;flex-wrap:wrap;margin-left:calc(var(--grid-gutter)*-0.5);margin-right:calc(var(--grid-gutter)*-0.5)}@media(min-width: 576px){.container,.container-lg,.container-fluid{--grid-margin: var(--grid-tablet-margin)}.row{--grid-gutter: var(--grid-tablet-gutter)}.container{--grid-maxwidth: calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}.col-sm-4{flex-basis:33.3333333333%;max-width:33.3333333333%}}@media(min-width: 992px){.container,.container-lg,.container-fluid{--grid-margin: var(--grid-tablet-margin)}.row{--grid-gutter: var(--grid-tablet-gutter)}.container{--grid-maxwidth: calc(var(--grid-breakpoint-md) - var(--grid-tablet-margin))}}@media(min-width: 1280px){.container,.container-lg,.container-fluid{--grid-margin: var(--grid-desktop-margin)}.row{--grid-gutter: var(--grid-desktop-gutter)}.container,.container-lg{--grid-maxwidth: calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}.col-lg-3{flex-basis:25%;max-width:25%}}@media(min-width: 1600px){.container,.container-lg,.container-fluid{--grid-margin: var(--grid-tv-margin)}.row{--grid-gutter: var(--grid-tv-gutter)}.container,.container-lg{--grid-maxwidth: calc(var(--grid-breakpoint-xl) - var(--grid-tv-margin))}}.ease{animation-timing-function:cubic-bezier(0.25, 0.1, 0.25, 1)}.ease-out{animation-timing-function:cubic-bezier(0, 0, 0.58, 1)}.ease-in-out{animation-timing-function:cubic-bezier(0.42, 0, 0.58, 1)}.fast{animation-duration:var(--duration-fast)}.slow{animation-duration:var(--duration-slow)}.mt-1{margin-top:var(--spacing-scale-half) !important}.mr-1{margin-right:var(--spacing-scale-half) !important}.mb-1{margin-bottom:var(--spacing-scale-half) !important}.ml-1{margin-left:var(--spacing-scale-half) !important}.mx-3{margin-left:var(--spacing-scale-2x) !important;margin-right:var(--spacing-scale-2x) !important}.mb-4{margin-bottom:var(--spacing-scale-3x) !important}.ml-auto{margin-left:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}@media(min-width: 576px){.ml-sm-0{margin-left:var(--spacing-scale-default) !important}}.highlight{background:var(--status-highlight-background) linear-gradient(var(--status-highlight-overlay), var(--status-highlight-overlay));color:var(--status-highlight-text);padding:0 var(--spacing-scale-half)}[disabled],.disabled{cursor:not-allowed;opacity:var(--disabled)}[disabled] *,.disabled *{pointer-events:none}fieldset[disabled]{opacity:1}.text-center{text-align:center !important}.text-right{text-align:right !important}.text-nowrap{white-space:nowrap !important}.text-uppercase{text-transform:uppercase !important}.text-bold{font-weight:700 !important}.text-base{font-size:var(--font-size-scale-base) !important}.text-down-01{font-size:var(--font-size-scale-down-01) !important}@media(min-width: 576px){.text-sm-center{text-align:center !important}.text-sm-left{text-align:left !important}.text-sm-right{text-align:right !important}}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media(min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset: var(--spacing-scale-half)}a:focus{outline:none}a.focus-visible,a:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}a:not(:disabled):hover{background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}a{color:var(--interactive);text-decoration:none}.main-content a{text-decoration:underline}button{cursor:pointer}img{max-width:100%;vertical-align:middle}h2,.h2{color:var(--color);font-size:var(--font-size-scale-up-03);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-2xh);margin-top:var(--spacing-scale-3xh);padding-bottom:var(--spacing-scale-2xh)}@media(min-width: 576px){.h2,h2{font-size:var(--font-size-scale-up-05);font-weight:var(--font-weight-regular)}}ul,ol{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}table{--table-background: var(--background);--table-color: var(--color);--table-border-color: var(--gray-20);--table-border-style: solid;--table-border-width: 1px;--table-hover: var(--color-rgb);--table-padding: var(--spacing-scale-3x);--table-font-weight: var(--font-weight-medium);--table-th-background: var(--background-alternative);--table-th-font-weight: var(--font-weight-semi-bold);--table-row-size: var(--spacing-scale-2x);border-collapse:collapse;width:100%}tr.selected,tr.is-selected{--color: var(--color-dark);--color-rgb: var(--color-dark-rgb);--text-color: var(--color-dark);--interactive: var(--interactive-dark);--interactive-rgb: var(--interactive-dark-rgb);--visited: var(--visited-dark);--hover: var(--hover-dark);--pressed: var(--pressed-dark);--focus-color: var(--focus-color-dark);--focus: var(--focus-color-dark)}label,.label{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half)}fieldset,.fieldset{border:var(--surface-width-none);margin-bottom:var(--spacing-scale-5x);margin-top:0;padding:0}legend,.legend{color:var(--color);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-2x);margin-top:var(--spacing-scale-2x)}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}code,.code{background:var(--gray-5);border-radius:4px;color:var(--gray-80);display:inline-block;font-family:monospace;font-size:var(--font-size-scale-base);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);padding:var(--spacing-scale-half)}pre,.pre{background:var(--gray-5);margin:var(--spacing-scale-2x) 0 var(--spacing-scale-4x);padding:var(--spacing-scale-2x)}pre code,.pre code{display:inline;padding:0}*[data-toggle=collapse]:not(:disabled):hover{background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}*[data-toggle=collapse]:focus{outline:none}*[data-toggle=collapse].focus-visible,*[data-toggle=collapse]:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}@media(prefers-reduced-motion: reduce){:host,:host::before,:host::after,:host *,:host *::before,:host *::after{animation:none !important;scroll-behavior:auto !important;transition:none !important}}:host-context([data-wbc-reduced-motion=true])::before,:host-context([data-wbc-reduced-motion=true])::after,:host-context([data-wbc-reduced-motion=true]) *,:host-context([data-wbc-reduced-motion=true]) *::before,:host-context([data-wbc-reduced-motion=true]) *::after{animation:none !important;scroll-behavior:auto !important;transition:none !important}.br-switch{--switch-height: var(--switch-height-medium);--switch-width: var(--switch-width-medium);--switch-toggle-size: var(--switch-toggle-medium);--switch-icon-size: var(--switch-icon-medium);--switch-height-small: 24px;--switch-height-medium: 30px;--switch-height-large: 36px;--switch-width-small: 40px;--switch-width-medium: 52px;--switch-width-large: 64px;--switch-toggle-small: 16px;--switch-toggle-medium: 22px;--switch-toggle-large: 28px;--switch-icon-small: var(--icon-size-xs);--switch-icon-medium: var(--icon-size-sm);--switch-icon-large: var(--icon-size-base);display:inline-flex;min-height:var(--switch-height)}.br-switch input{opacity:0;position:absolute}.br-switch input+label{align-items:center;color:var(--color);cursor:pointer;display:inline-flex;font-size:var(--font-size-scale-base);margin-bottom:0;position:relative}.br-switch input+label::before{background:var(--background-light);border:1px solid var(--border-color);border-radius:100em;content:"";height:var(--switch-height);position:absolute;width:var(--switch-width)}.br-switch input+label::after{background-color:var(--off);border-radius:50%;content:"";height:var(--switch-toggle-size);position:absolute;transition:all .3s ease-in-out;width:var(--switch-toggle-size)}.br-switch input:checked+label::after{background-color:var(--on)}.br-switch input+label{padding-right:calc(var(--spacing-scale-2x) + var(--switch-width))}.br-switch input+label:empty{padding-right:var(--switch-width)}.br-switch input+label::before{right:0}.br-switch input+label::after{right:calc(4px + var(--switch-toggle-size))}.br-switch input:checked+label::after{right:4px}.br-switch.right input+label{padding-left:calc(var(--spacing-scale-2x) + var(--switch-width));padding-right:0}.br-switch.right input+label::before{left:0}.br-switch.right input+label::after{left:4px}.br-switch.right input:checked+label::after{left:calc(var(--switch-width) - var(--switch-toggle-size) - 4px)}.br-switch.top{min-height:calc(var(--switch-height)*2)}.br-switch.top input+label{align-items:flex-start;padding-right:0}.br-switch.top input+label::before{bottom:0;left:0}.br-switch.top input+label::after{bottom:4px;left:4px}.br-switch.top input:checked+label::after{left:calc(var(--switch-width) - var(--switch-toggle-size) - 4px)}.br-switch.small{--switch-height: var(--switch-height-small);--switch-width: var(--switch-width-small);--switch-toggle-size: var(--switch-toggle-small);--switch-icon-size: var(--switch-icon-small)}.br-switch.medium{--switch-height: var(--switch-height-medium);--switch-width: var(--switch-width-medium);--switch-toggle-size: var(--switch-toggle-medium);--switch-icon-size: var(--switch-icon-medium)}.br-switch.large{--switch-height: var(--switch-height-large);--switch-width: var(--switch-width-large);--switch-toggle-size: var(--switch-toggle-large);--switch-icon-size: var(--switch-icon-large)}.br-switch input~.switch-data{align-self:center;color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);margin-left:8px}.br-switch input~.switch-data::before{content:attr(data-disabled)}.br-switch input:checked~.switch-data{color:var(--color)}.br-switch input:checked~.switch-data::before{content:attr(data-enabled)}.br-switch.icon input+label::after{align-items:center;color:var(--color-dark);content:"";display:inline-flex;font-family:"Font Awesome 5 Free",sans-serif;font-size:var(--switch-icon-size);font-weight:var(--font-weight-black);justify-content:center}.br-switch.icon input:checked+label::after{content:""}.br-switch input:focus-visible+label::before,.br-switch input.focus-visible+label::before{border-color:var(--focus) !important;box-shadow:0 0 0 var(--surface-width-md) var(--focus);outline:none}.br-switch input:hover:not([disabled]):checked+label::before{background-image:linear-gradient(rgba(var(--on-rgb), var(--hover)), rgba(var(--on-rgb), var(--hover)))}.br-switch input:hover:not([disabled]):not(:checked)+label::before{background-image:linear-gradient(rgba(var(--off-rgb), var(--hover)), rgba(var(--off-rgb), var(--hover)))}.br-switch input:active:not([disabled]):checked+label::before{background-image:linear-gradient(rgba(var(--on-rgb), var(--pressed)), rgba(var(--on-rgb), var(--pressed)))}.br-switch input:active:not([disabled]):not(:checked)+label::before{background-image:linear-gradient(rgba(var(--off-rgb), var(--pressed)), rgba(var(--off-rgb), var(--pressed)))}.br-switch.inverted,.br-switch.inverted label,.br-switch.dark-mode,.br-switch.dark-mode label{color:var(--color-dark)}:host{display:inline-block;margin-bottom:var(--spacing-scale-base)}.br-switch input+label::after{transition:none}@media(prefers-reduced-motion: no-preference){.br-switch input+label::after{transition:right var(--duration-fast, 300ms) var(--animation-ease-in-out, ease-in-out),background-color var(--duration-fast, 300ms) var(--animation-ease-in-out, ease-in-out)}}:host([disabled]) .br-switch,:host([disabled]) .br-switch label,:host([disabled]) .br-switch input{cursor:not-allowed}
@@ -6,14 +6,38 @@ import { Host, h, } from "@stencil/core";
6
6
  import { redispatchNativeFormEvent } from "../../shared/utils/event";
7
7
  import { getCheckableFormValue, getCheckableRestoreState, getFormValidationState, isFormControlDisabled, safeSetFormValue, syncNativeFormValidity, } from "../../shared/utils/form";
8
8
  import { generateUniqueId } from "../../shared/utils/id";
9
+ import { resolveAllowedPropValue, resolveDensity } from "../../shared/utils/props";
9
10
  import { hasAssignedSlotContent, hasDefaultLightDomContent } from "../../shared/utils/slot";
10
11
  import { resolveFormValidator, runFormValidator } from "../../shared/utils/validator";
12
+ const SWITCH_LABEL_POSITIONS = ['right', 'left', 'top'];
11
13
  /**
12
- * ## Design System
14
+ * O componente `br-switch` é o interruptor de alternância do GovBR-DS, desenvolvido para ativar ou desativar instantaneamente um recurso, modo ou configuração na interface.
13
15
  *
14
- * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/switch?tab=designer).
16
+ * ### Para que serve
15
17
  *
16
- * @category Formulários
18
+ * - **Alternância binária imediata:** Alterna entre dois estados mutuamente exclusivos (ligado/desligado, ativo/inativo, habilitado/desabilitado) com efeito imediato na aplicação.
19
+ * - **Rótulo contextual dinâmico:** Suporta textos explicativos de estado (ex.: "Ativado" / "Desativado") e ícones de apoio.
20
+ * - **Acessibilidade nativa WAI-ARIA:** Utiliza internamente o papel semântico `role="switch"` com o atributo `aria-checked`, garantindo anúncio claro de estado para leitores de tela.
21
+ *
22
+ * ### Quando utilizar
23
+ *
24
+ * - **Utilize quando:**
25
+ * - A alteração de estado entrar em vigor imediatamente após a interação, sem depender de um botão "Salvar" ou submissão de formulário.
26
+ * - Para preferências do sistema (ex.: "Tema escuro", "Notificações ativas", "Wi-Fi ligado").
27
+ * - **Evite e prefira outro componente quando:**
28
+ * - A escolha fizer parte de um formulário com múltiplos campos que serão submetidos juntos (prefira `br-checkbox`).
29
+ * - A escolha for entre duas opções com nomes explícitos diferentes de ligado/desligado (prefira `br-radio`).
30
+ *
31
+ * ### Estrutura e Slots
32
+ *
33
+ * O `br-switch` é um controle direto:
34
+ * - `default`: Slot para personalização do rótulo descritivo do switch (com prioridade sobre a propriedade `label`).
35
+ * - `feedback`: Slot para mensagens de validação contextual (como `br-message`).
36
+ *
37
+ * Para a documentação completa de design, incluindo diretrizes de acessibilidade e especificações visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/switch?tab=designer).
38
+ *
39
+
40
+ * @category Formulários, Seleção, Ações
17
41
  * @status stable
18
42
  * @slot default - Slot para o rótulo do switch, com prioridade sobre a propriedade label.
19
43
  * @slot feedback - Mensagem de validação, normalmente um `br-message`.
@@ -51,7 +75,7 @@ export class Switch {
51
75
  */
52
76
  this.customId = generateUniqueId();
53
77
  /**
54
- * Posição do rótulo em relação ao switch.
78
+ * Posição do rótulo em relação ao switch. Valores inválidos usam `left`.
55
79
  */
56
80
  this.labelPosition = 'left';
57
81
  /**
@@ -59,7 +83,8 @@ export class Switch {
59
83
  * @deprecated Use `showIcon`.
60
84
  */
61
85
  this.hasIcon = false;
62
- /** Ajusta a área de interação: `small` é compacto, `medium` é o padrão e `large` é mais espaçado. */
86
+ /** Ajusta a área de interação: `small` é compacto, `medium` é o padrão e `large` é mais espaçado.
87
+ * Valores inválidos usam `medium`. */
63
88
  this.density = 'medium';
64
89
  this.validationRunId = 0;
65
90
  this.initialChecked = false;
@@ -215,23 +240,28 @@ export class Switch {
215
240
  return this._slotDefault || (this.label !== undefined && this.label !== null && this.label.trim() !== '');
216
241
  }
217
242
  getCssClassMap() {
243
+ const density = resolveDensity(this.el, this.density);
244
+ const labelPosition = this.effectiveLabelPosition;
218
245
  return {
219
246
  'br-switch': true,
220
247
  icon: this.showIcon ?? this.hasIcon,
221
- top: this.labelPosition === 'top',
222
- right: this.labelPosition === 'right',
223
- large: this.density === 'large',
224
- small: this.density === 'small',
248
+ top: labelPosition === 'top',
249
+ right: labelPosition === 'right',
250
+ large: density === 'large',
251
+ small: density === 'small',
225
252
  disabled: this.isDisabled(),
226
253
  };
227
254
  }
255
+ get effectiveLabelPosition() {
256
+ return resolveAllowedPropValue(this.el, 'labelPosition', this.labelPosition, SWITCH_LABEL_POSITIONS, 'left');
257
+ }
228
258
  render() {
229
259
  const hasVisibleText = this.hasVisibleText();
230
- return (h(Host, { key: '4dd9e91f5d826b858d781b367f868ee29f47bb61', "aria-disabled": this.isDisabled() ? 'true' : null }, h("div", { key: '931d05d4b685a1dbab3b4240b8824ab755092046', class: this.getCssClassMap(), part: "container" }, h("input", { key: '3afd320438b534d364d2f74b385166f4da1570ff', part: "input", ref: (el) => (this.nativeInput = el), id: this.customId, type: "checkbox", name: this.name, checked: this.checked, disabled: this.isDisabled(), required: this.required, role: "switch", "aria-checked": this.checked ? 'true' : 'false', "aria-busy": this.isValidating ? 'true' : null, "aria-describedby": this.hasFeedbackSlot || this.manualValidationMessage || this.validatorMessage
260
+ return (h(Host, { key: 'cdf7fbf56aab55137acc7fa795acf138d3e58ad6', "aria-disabled": this.isDisabled() ? 'true' : null }, h("div", { key: '141edc6e4b71f3b7a878d06b6fe1fbc8fe40e4dc', class: this.getCssClassMap(), part: "container" }, h("input", { key: '30f130caae79ff96ead26d3728bec6800443f224', part: "input", ref: (el) => (this.nativeInput = el), id: this.customId, type: "checkbox", name: this.name, checked: this.checked, disabled: this.isDisabled(), required: this.required, role: "switch", "aria-checked": this.checked ? 'true' : 'false', "aria-busy": this.isValidating ? 'true' : null, "aria-describedby": this.hasFeedbackSlot || this.manualValidationMessage || this.validatorMessage
231
261
  ? `${this.customId}-feedback`
232
262
  : null, "aria-errormessage": this.manualValidationMessage || this.validatorMessage || this.hasFeedbackSlot
233
263
  ? `${this.customId}-feedback`
234
- : null, onInput: this.handleCheckedInput, onChange: this.handleCheckedChange, onClick: this.handleClick, ...(!hasVisibleText ? { 'aria-label': this.getAccessibilityLabel() } : {}) }), h("label", { key: '591be3df7b30eddbb067238654159e38078fa3ff', part: "label", htmlFor: this.customId }, this._slotDefault ? h("slot", null) : this.label || ''), this.labelOn && this.labelOff && (h("div", { key: '3d7d008ac48f25b65509b0acda2c7854378b91d6', class: "switch-data", "data-enabled": this.labelOn, "data-disabled": this.labelOff, "aria-hidden": "true", part: "data" }))), h("div", { key: '44be45c093d338c06afe8e4259a0f73e15517307', id: `${this.customId}-feedback`, part: "feedback", hidden: !this.hasFeedbackSlot && !this.manualValidationMessage && !this.validatorMessage }, h("slot", { key: '9523f6a34a279ebd19b9a92b48fa6259ba9f0254', name: "feedback", onSlotchange: (event) => (this.hasFeedbackSlot = hasAssignedSlotContent(event.currentTarget)) }), !this.hasFeedbackSlot && (this.manualValidationMessage || this.validatorMessage) ? (h("br-message", { state: "danger", message: this.manualValidationMessage || this.validatorMessage })) : null)));
264
+ : null, onInput: this.handleCheckedInput, onChange: this.handleCheckedChange, onClick: this.handleClick, ...(!hasVisibleText ? { 'aria-label': this.getAccessibilityLabel() } : {}) }), h("label", { key: '755fdd0c8bc57e8d386532267b2d1364d7496897', part: "label", htmlFor: this.customId }, this._slotDefault ? h("slot", null) : this.label || ''), this.labelOn && this.labelOff && (h("div", { key: '96b6dfdea3eff539dd1aead339bfd9555ba87bc7', class: "switch-data", "data-enabled": this.labelOn, "data-disabled": this.labelOff, "aria-hidden": "true", part: "data" }))), h("div", { key: '140e5aea8abea6d5afed40313510ef63ad5e588c', id: `${this.customId}-feedback`, part: "feedback", hidden: !this.hasFeedbackSlot && !this.manualValidationMessage && !this.validatorMessage }, h("slot", { key: '9050c26808d86f5d21c018853cdfb00e66c2dee2', name: "feedback", onSlotchange: (event) => (this.hasFeedbackSlot = hasAssignedSlotContent(event.currentTarget)) }), !this.hasFeedbackSlot && (this.manualValidationMessage || this.validatorMessage) ? (h("br-message", { state: "danger", message: this.manualValidationMessage || this.validatorMessage })) : null)));
235
265
  }
236
266
  static get is() { return "br-switch"; }
237
267
  static get encapsulation() { return "shadow"; }
@@ -307,8 +337,11 @@ export class Switch {
307
337
  "required": false,
308
338
  "optional": true,
309
339
  "docs": {
310
- "tags": [],
311
- "text": "Regra s\u00EDncrona ou ass\u00EDncrona aplicada ao estado booleano do switch."
340
+ "tags": [{
341
+ "name": "example",
342
+ "text": "```js\nconst toggle = document.querySelector('br-switch');\ntoggle.validator = (checked) => checked ? null : 'Ative esta op\u00E7\u00E3o para continuar';\n```"
343
+ }],
344
+ "text": "Regra s\u00EDncrona ou ass\u00EDncrona aplicada ao estado booleano do switch.\nRetorne uma mensagem para invalidar ou `null` para aceitar o valor."
312
345
  },
313
346
  "getter": false,
314
347
  "setter": false
@@ -384,7 +417,7 @@ export class Switch {
384
417
  "optional": false,
385
418
  "docs": {
386
419
  "tags": [],
387
- "text": "Posi\u00E7\u00E3o do r\u00F3tulo em rela\u00E7\u00E3o ao switch."
420
+ "text": "Posi\u00E7\u00E3o do r\u00F3tulo em rela\u00E7\u00E3o ao switch. Valores inv\u00E1lidos usam `left`."
388
421
  },
389
422
  "getter": false,
390
423
  "setter": false,
@@ -522,7 +555,7 @@ export class Switch {
522
555
  "optional": false,
523
556
  "docs": {
524
557
  "tags": [],
525
- "text": "Ajusta a \u00E1rea de intera\u00E7\u00E3o: `small` \u00E9 compacto, `medium` \u00E9 o padr\u00E3o e `large` \u00E9 mais espa\u00E7ado."
558
+ "text": "Ajusta a \u00E1rea de intera\u00E7\u00E3o: `small` \u00E9 compacto, `medium` \u00E9 o padr\u00E3o e `large` \u00E9 mais espa\u00E7ado.\nValores inv\u00E1lidos usam `medium`."
526
559
  },
527
560
  "getter": false,
528
561
  "setter": false,