@govbr-ds/webcomponents 2.1.3 → 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 +6359 -1133
  3. package/cem/webcomponents.html-custom-data.json +398 -285
  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 +301 -128
  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 +38 -57
  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 +71 -60
  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 +320 -124
  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 +217 -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 +1470 -584
  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 +302 -129
  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 +39 -58
  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 +7364 -2602
  619. package/dist/hydrate/index.mjs +7364 -2602
  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 +39 -6
  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 +5823 -1350
  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-6OdfnwnK.js +0 -5
  836. package/dist/components/p-AmOh1cks.js +0 -5
  837. package/dist/components/p-B4ylcipx.js +0 -5
  838. package/dist/components/p-BCv4PCOx.js +0 -5
  839. package/dist/components/p-BLOyd_iF.js +0 -5
  840. package/dist/components/p-BODem6tr.js +0 -5
  841. package/dist/components/p-Bb-nLtTG.js +0 -5
  842. package/dist/components/p-BeFK-82z.js +0 -5
  843. package/dist/components/p-BkS6ujyf.js +0 -5
  844. package/dist/components/p-BloE-KAN.js +0 -5
  845. package/dist/components/p-BoSc_kmY.js +0 -5
  846. package/dist/components/p-BrH3r7eL.js +0 -5
  847. package/dist/components/p-BsZ0Ny88.js +0 -5
  848. package/dist/components/p-ByHVf7zy.js +0 -5
  849. package/dist/components/p-CdF-gmk1.js +0 -5
  850. package/dist/components/p-CfyjGPGI.js +0 -5
  851. package/dist/components/p-CjF7pBVQ.js +0 -5
  852. package/dist/components/p-ClqtllDH.js +0 -5
  853. package/dist/components/p-CqW2Yh34.js +0 -5
  854. package/dist/components/p-DIK54tTj.js +0 -5
  855. package/dist/components/p-DLE5ioJN.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-DRnCpVrL.js +0 -5
  859. package/dist/components/p-DVdlaP7z.js +0 -5
  860. package/dist/components/p-DeeF6ok0.js +0 -5
  861. package/dist/components/p-Dim2PnUm.js +0 -5
  862. package/dist/components/p-Dk8rfQjL.js +0 -5
  863. package/dist/components/p-DkmEpoef.js +0 -5
  864. package/dist/components/p-DwfAYaEv.js +0 -5
  865. package/dist/components/p-DxZJrIyL.js +0 -5
  866. package/dist/components/p-P2Z_MmH6.js +0 -5
  867. package/dist/components/p-Xa0Mj4pP.js +0 -5
  868. package/dist/components/p-_vsQvdxD.js +0 -5
  869. package/dist/components/p-aNjo4Alx.js +0 -5
  870. package/dist/components/p-gvnfuTjd.js +0 -5
  871. package/dist/components/p-rB-s1M3Q.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-00cc31f9.entry.js +0 -5
  876. package/dist/webcomponents/p-026475bd.entry.js +0 -5
  877. package/dist/webcomponents/p-0291ab28.entry.js +0 -5
  878. package/dist/webcomponents/p-03e5a7dc.entry.js +0 -5
  879. package/dist/webcomponents/p-060df8ee.entry.js +0 -5
  880. package/dist/webcomponents/p-09fce2a5.entry.js +0 -5
  881. package/dist/webcomponents/p-1002bbff.entry.js +0 -5
  882. package/dist/webcomponents/p-1124de33.entry.js +0 -5
  883. package/dist/webcomponents/p-12e97d80.entry.js +0 -5
  884. package/dist/webcomponents/p-1580beee.entry.js +0 -5
  885. package/dist/webcomponents/p-1b19b191.entry.js +0 -5
  886. package/dist/webcomponents/p-2baf353b.entry.js +0 -5
  887. package/dist/webcomponents/p-2eb9a42c.entry.js +0 -5
  888. package/dist/webcomponents/p-30c82805.entry.js +0 -5
  889. package/dist/webcomponents/p-31bd1c74.entry.js +0 -5
  890. package/dist/webcomponents/p-31db2313.entry.js +0 -5
  891. package/dist/webcomponents/p-33a3dc63.entry.js +0 -5
  892. package/dist/webcomponents/p-3889c51f.entry.js +0 -5
  893. package/dist/webcomponents/p-3f2c179a.entry.js +0 -5
  894. package/dist/webcomponents/p-470eb770.entry.js +0 -5
  895. package/dist/webcomponents/p-4ae387ae.entry.js +0 -5
  896. package/dist/webcomponents/p-4e65df84.entry.js +0 -5
  897. package/dist/webcomponents/p-51a62876.entry.js +0 -5
  898. package/dist/webcomponents/p-5860b96b.entry.js +0 -5
  899. package/dist/webcomponents/p-5b9c01e9.entry.js +0 -5
  900. package/dist/webcomponents/p-5df2f1dd.entry.js +0 -5
  901. package/dist/webcomponents/p-5f3f7b3f.entry.js +0 -5
  902. package/dist/webcomponents/p-5f6afb79.entry.js +0 -5
  903. package/dist/webcomponents/p-5f9c28a7.entry.js +0 -5
  904. package/dist/webcomponents/p-62511921.entry.js +0 -5
  905. package/dist/webcomponents/p-63b52947.entry.js +0 -5
  906. package/dist/webcomponents/p-67a8e0b7.entry.js +0 -5
  907. package/dist/webcomponents/p-6OdfnwnK.js +0 -5
  908. package/dist/webcomponents/p-7b2a5fec.entry.js +0 -5
  909. package/dist/webcomponents/p-7f95e2f5.entry.js +0 -5
  910. package/dist/webcomponents/p-8128833c.entry.js +0 -5
  911. package/dist/webcomponents/p-8200ccb1.entry.js +0 -5
  912. package/dist/webcomponents/p-82b100fd.entry.js +0 -5
  913. package/dist/webcomponents/p-8806df15.entry.js +0 -5
  914. package/dist/webcomponents/p-881eb81a.entry.js +0 -5
  915. package/dist/webcomponents/p-8bd3d541.entry.js +0 -5
  916. package/dist/webcomponents/p-90648343.entry.js +0 -5
  917. package/dist/webcomponents/p-9100a5f7.entry.js +0 -5
  918. package/dist/webcomponents/p-91313d77.entry.js +0 -5
  919. package/dist/webcomponents/p-946b2ac0.entry.js +0 -5
  920. package/dist/webcomponents/p-98e7ccb9.entry.js +0 -5
  921. package/dist/webcomponents/p-99f2bddb.entry.js +0 -5
  922. package/dist/webcomponents/p-9adbdb0a.entry.js +0 -5
  923. package/dist/webcomponents/p-9c260049.entry.js +0 -5
  924. package/dist/webcomponents/p-9ed51017.entry.js +0 -5
  925. package/dist/webcomponents/p-BkS6ujyf.js +0 -5
  926. package/dist/webcomponents/p-C2RBydfd.js +0 -6
  927. package/dist/webcomponents/p-CO5cOQQU.js +0 -5
  928. package/dist/webcomponents/p-DIK54tTj.js +0 -5
  929. package/dist/webcomponents/p-DRVMm1Py.js +0 -5
  930. package/dist/webcomponents/p-DxZJrIyL.js +0 -5
  931. package/dist/webcomponents/p-a0b299dd.entry.js +0 -5
  932. package/dist/webcomponents/p-a2c5fad0.entry.js +0 -5
  933. package/dist/webcomponents/p-a3e044d7.entry.js +0 -5
  934. package/dist/webcomponents/p-a9f23aa7.entry.js +0 -5
  935. package/dist/webcomponents/p-a9f2fcbc.entry.js +0 -5
  936. package/dist/webcomponents/p-b6c68136.entry.js +0 -5
  937. package/dist/webcomponents/p-b6e9b8d1.entry.js +0 -5
  938. package/dist/webcomponents/p-c333eac6.entry.js +0 -5
  939. package/dist/webcomponents/p-c3732fd6.entry.js +0 -5
  940. package/dist/webcomponents/p-c458ed0e.entry.js +0 -5
  941. package/dist/webcomponents/p-c91000ff.entry.js +0 -5
  942. package/dist/webcomponents/p-c9c6ab2d.entry.js +0 -5
  943. package/dist/webcomponents/p-cd2550d6.entry.js +0 -5
  944. package/dist/webcomponents/p-cf42613f.entry.js +0 -5
  945. package/dist/webcomponents/p-d0b0b420.entry.js +0 -5
  946. package/dist/webcomponents/p-d1b32ee8.entry.js +0 -5
  947. package/dist/webcomponents/p-db65b083.entry.js +0 -5
  948. package/dist/webcomponents/p-de7c101d.entry.js +0 -5
  949. package/dist/webcomponents/p-dfb77dd0.entry.js +0 -5
  950. package/dist/webcomponents/p-e258da78.entry.js +0 -5
  951. package/dist/webcomponents/p-e31ddd42.entry.js +0 -5
  952. package/dist/webcomponents/p-e8d82227.entry.js +0 -5
  953. package/dist/webcomponents/p-e988cf1d.entry.js +0 -5
  954. package/dist/webcomponents/p-ed9122a1.entry.js +0 -5
  955. package/dist/webcomponents/p-ee347d2e.entry.js +0 -5
  956. package/dist/webcomponents/p-f1c01d52.entry.js +0 -5
  957. package/dist/webcomponents/p-f5baf8be.entry.js +0 -5
  958. package/dist/webcomponents/p-fb593739.entry.js +0 -5
  959. package/dist/webcomponents/p-fff9acd4.entry.js +0 -5
  960. package/dist/webcomponents/p-gvnfuTjd.js +0 -5
@@ -4,11 +4,14 @@
4
4
  */
5
5
  'use strict';
6
6
 
7
- var index = require('./index-CRdcutym.js');
7
+ var index = require('./index-CGgZBuyy.js');
8
+ var props = require('./props-D8dybmr0.js');
9
+ var propWarning = require('./prop-warning-xvEHQz8H.js');
8
10
  var rafBatcher = require('./raf-batcher-yc87a4dS.js');
9
11
 
10
- const selectInputCss = () => `*,*::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))}.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-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)}:host{display:block;cursor:pointer}br-input{cursor:pointer}:host([disabled]){opacity:1 !important;cursor:default}:host([disabled]) br-input{cursor:default}`;
12
+ const selectInputCss = () => `*,*::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}:host{box-sizing:border-box;display:block;cursor:pointer;max-width:100%;width:100%}br-input{cursor:pointer}:host([disabled]){opacity:1 !important;cursor:default}:host([disabled]) br-input{cursor:default}`;
11
13
 
14
+ const SELECT_INPUT_AUTOCOMPLETE_VALUES = ['on', 'off'];
12
15
  const SelectInput = class {
13
16
  constructor(hostRef) {
14
17
  index.registerInstance(this, hostRef);
@@ -35,6 +38,13 @@ const SelectInput = class {
35
38
  * @default false
36
39
  */
37
40
  this.disabled = false;
41
+ /**
42
+ * Define a densidade visual do campo e do input interno.
43
+ * Aceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.
44
+ *
45
+ * @default 'medium'
46
+ */
47
+ this.density = 'medium';
38
48
  /**
39
49
  * Exibe label e campo na mesma linha.
40
50
  *
@@ -67,6 +77,12 @@ const SelectInput = class {
67
77
  this.brSelectInputClick.emit();
68
78
  };
69
79
  }
80
+ get effectiveAutocomplete() {
81
+ return props.resolveAllowedPropValue(this.el, 'autocomplete', this.autocomplete, SELECT_INPUT_AUTOCOMPLETE_VALUES, undefined, { allowUndefined: true });
82
+ }
83
+ get effectiveDensity() {
84
+ return props.resolveDensity(this.el, this.density);
85
+ }
70
86
  componentDidRender() {
71
87
  this.syncNativeCursor();
72
88
  }
@@ -117,7 +133,7 @@ const SelectInput = class {
117
133
  return (index.h("br-icon", { "aria-hidden": "true", iconName: this.flipped ? 'fa-solid:angle-up' : 'fa-solid:angle-down', width: "16", height: "16", slot: "action" }));
118
134
  }
119
135
  render() {
120
- return (index.h(index.Host, { key: 'be737b653173bc2a31e9065989dbe44c2bdac4a7' }, index.h("div", { key: 'c2b733eb6a3973f50788019f86360b0000df9f34', class: this.getCssClassMap(), part: "container" }, index.h("br-input", { key: '72882f4a77405e2a0bf04523d0dbf36a6a4e855d', "action-tab-index": -1, "action-label": this.flipped ? 'Fechar opções' : 'Abrir opções', autocomplete: this.autocomplete, borderless: this.borderless, "control-width": this.inputWidth, readonly: !this.filterable, "is-inline": this.isInline, label: this.label, name: this.name, placeholder: this.placeholder, required: this.required, ref: (el) => {
136
+ return (index.h(index.Host, { key: '615ae815e7b71d479a570e951b49a7e5a8f50087' }, index.h("div", { key: 'eb4ed35555a744723b01415170ab791e5ca1ea50', class: this.getCssClassMap(), part: "container" }, index.h("br-input", { key: '9f5940fd60cdbbb776277ff691fb6e6689d179cc', "action-tab-index": -1, "action-label": this.flipped ? 'Fechar opções' : 'Abrir opções', autocomplete: this.effectiveAutocomplete, borderless: this.borderless, "control-width": this.inputWidth, density: this.effectiveDensity, readonly: !this.filterable, "is-inline": this.isInline, label: this.label, name: this.name, placeholder: this.placeholder, required: this.required, ref: (el) => {
121
137
  this.inputElement = el;
122
138
  }, value: this.value, disabled: this.disabled, onClick: this.handleClick, onInput: this.handleInput, onFocus: this.handleFocus, exportparts: "container:input, label:label, input:input, group:group, icon:icon, action:action, action-button:action-button" }, this.showSearchIcon && this.renderSearchIcon(), this.renderDropdownIcon()))));
123
139
  }
@@ -127,15 +143,47 @@ const SelectInput = class {
127
143
  };
128
144
  SelectInput.style = selectInputCss();
129
145
 
130
- const selectListCss = () => `*,*::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))}.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-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)}:host{display:block}:host{display:block;left:0;position:absolute;right:0;top:100%;z-index:1}.br-select-list{background-color:var(--bg-color);box-shadow:var(--select-shadow);display:none;margin-top:-2px;max-height:404px;overflow:auto;resize:none;width:100%}.br-select-list.is-open{display:block}`;
146
+ /**
147
+ * Calcula os índices inicial e final (exclusivo) da janela virtualizada.
148
+ *
149
+ * Valores inválidos são normalizados para limites seguros para que um estado
150
+ * transitório de layout não interrompa a renderização da lista.
151
+ */
152
+ function computeVirtualWindow({ totalItems, itemHeight, scrollTop, viewportHeight, overscan, }) {
153
+ const itemCount = Number.isFinite(totalItems) ? Math.max(0, Math.floor(totalItems)) : 0;
154
+ if (itemCount === 0)
155
+ return { startIndex: 0, endIndex: 0 };
156
+ const rowHeight = Number.isFinite(itemHeight) && itemHeight > 0 ? itemHeight : 1;
157
+ const offset = Number.isFinite(scrollTop) ? Math.max(0, scrollTop) : 0;
158
+ const viewport = Number.isFinite(viewportHeight) && viewportHeight > 0 ? viewportHeight : rowHeight;
159
+ const extraItems = Number.isFinite(overscan) ? Math.max(0, Math.floor(overscan)) : 0;
160
+ const firstVisibleIndex = Math.min(itemCount - 1, Math.floor(offset / rowHeight));
161
+ const visibleItemCount = Math.max(1, Math.ceil(viewport / rowHeight));
162
+ const startIndex = Math.max(0, firstVisibleIndex - extraItems);
163
+ const endIndex = Math.min(itemCount, firstVisibleIndex + visibleItemCount + extraItems);
164
+ return { startIndex, endIndex };
165
+ }
166
+
167
+ const selectListCss = () => `*,*::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}:host{display:block}:host{display:block;left:0;position:absolute;right:0;top:100%;z-index:var(--z-index-layer-1)}.br-select-list{background-color:var(--bg-color);box-shadow:var(--select-shadow);display:none;margin-top:-2px;max-height:404px;overflow:auto;resize:none;width:100%}.br-select-list.is-open{display:block;animation:none}@media (prefers-reduced-motion: no-preference){.br-select-list.is-open{animation:select-list-open var(--duration-fast, 300ms) var(--animation-ease-out, ease-out) both}}.option-group-label{align-items:center;background-color:var(--background-light);border-bottom:1px solid var(--border-color-alternative);color:var(--color);display:flex;font-size:var(--font-size-scale-down-01);font-weight:var(--font-weight-semi-bold);padding:0 var(--spacing-scale-2x)}@keyframes select-list-open{from{opacity:0}to{opacity:1}}`;
131
168
 
132
169
  const SelectList = class {
133
170
  constructor(hostRef) {
134
171
  index.registerInstance(this, hostRef);
172
+ /**
173
+ * Define a densidade visual da lista, das opções e do indicador de carregamento.
174
+ * Aceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.
175
+ *
176
+ * @default 'medium'
177
+ */
178
+ this.density = 'medium';
135
179
  /**
136
180
  * Coleção de opções exibidas pela lista.
137
181
  *
138
182
  * @type {SelectOptionData[]}
183
+ * É um contrato de composição abastecido pelo `br-select`; não é a API de
184
+ * opções do componente principal. Cada opção deve conter `value` string e
185
+ * pode conter `label` e `group` como strings opcionais; entradas inválidas
186
+ * são ignoradas.
139
187
  * @default []
140
188
  */
141
189
  this.options = [];
@@ -150,19 +198,23 @@ const SelectList = class {
150
198
  */
151
199
  this.loading = false;
152
200
  /**
153
- * Define quantas opções permanecem visíveis na viewport da lista.
201
+ * Define quantas linhas visuais permanecem visíveis na viewport da lista.
202
+ * Cabeçalhos de grupo também ocupam uma linha quando existem.
203
+ * Deve ser um inteiro positivo; valores inválidos usam 6.
154
204
  *
155
205
  * @default 6
156
206
  */
157
207
  this.visibleItems = 6;
158
208
  /**
159
209
  * Informa a altura base usada no cálculo de posicionamento das opções.
210
+ * Deve ser um número finito positivo; valores inválidos usam 56.
160
211
  *
161
212
  * @default 56
162
213
  */
163
214
  this.itemHeight = 56;
164
215
  /**
165
216
  * Define quantas opções extras são renderizadas fora da viewport quando o virtual scroll está ativo.
217
+ * Deve ser um inteiro não negativo; valores inválidos usam 0.
166
218
  *
167
219
  * @default 0
168
220
  */
@@ -181,6 +233,7 @@ const SelectList = class {
181
233
  this.unselectAllLabel = SelectList.DESELECT_ALL_LABEL;
182
234
  /**
183
235
  * Índice da opção atualmente ativa para navegação por teclado.
236
+ * Deve ser um inteiro maior ou igual a -1; valores inválidos usam -1.
184
237
  *
185
238
  * @default -1
186
239
  * @remarks
@@ -194,6 +247,7 @@ const SelectList = class {
194
247
  this.measurementFrame = null;
195
248
  this.filteredOptionsCache = null;
196
249
  this.filteredOptionsCacheKey = '';
250
+ this.virtualRowsCache = null;
197
251
  this.scrollBatch = rafBatcher.createRafBatcher((scrollTop) => {
198
252
  if (this.scrollTop !== scrollTop)
199
253
  this.scrollTop = scrollTop;
@@ -211,6 +265,49 @@ const SelectList = class {
211
265
  this.scrollBatch.schedule(target?.scrollTop ?? 0);
212
266
  };
213
267
  }
268
+ handleOptionsChange(newOptions) {
269
+ const normalizedOptions = this.normalizeOptionData(newOptions);
270
+ if (normalizedOptions !== newOptions) {
271
+ this.options = normalizedOptions;
272
+ return;
273
+ }
274
+ this.syncRenderedOptionSelection(normalizedOptions);
275
+ }
276
+ syncRenderedOptionSelection(options) {
277
+ const renderedOptions = this.el.shadowRoot?.querySelectorAll('br-select-option');
278
+ if (!renderedOptions)
279
+ return;
280
+ const selectedByValue = new Map(options.map((option) => [option.value, Boolean(option.selected)]));
281
+ renderedOptions.forEach((option) => {
282
+ const selected = selectedByValue.get(option.value);
283
+ if (selected !== undefined && option.selected !== selected)
284
+ option.selected = selected;
285
+ });
286
+ }
287
+ get effectiveVisibleItems() {
288
+ return props.resolveIntegerPropValue(this.el, 'visibleItems', this.visibleItems, 1, Number.MAX_SAFE_INTEGER, 6);
289
+ }
290
+ get effectiveDensity() {
291
+ return props.resolveDensity(this.el, this.density);
292
+ }
293
+ get effectiveItemHeight() {
294
+ return props.resolveNumberPropValue(this.el, 'itemHeight', this.itemHeight, 1, Number.MAX_SAFE_INTEGER, 56);
295
+ }
296
+ get effectiveOverscan() {
297
+ return props.resolveIntegerPropValue(this.el, 'overscan', this.overscan, 0, Number.MAX_SAFE_INTEGER, 0);
298
+ }
299
+ get effectiveActiveOptionIndex() {
300
+ return props.resolveIntegerPropValue(this.el, 'activeOptionIndex', this.activeOptionIndex, -1, Number.MAX_SAFE_INTEGER, -1);
301
+ }
302
+ /**
303
+ * O `br-select` fornece a opção sintética de selecionar todos antes de
304
+ * conseguir chamar `setMultiple()` no elemento da lista. Usar esse
305
+ * marcador no primeiro render evita que os checkboxes apareçam somente
306
+ * depois de uma interação.
307
+ */
308
+ get effectiveMultiple() {
309
+ return this.isMultiple || this.options.some((option) => this.isSelectAllOption(option));
310
+ }
214
311
  disconnectedCallback() {
215
312
  this.scrollBatch.cancel();
216
313
  if (this.measurementFrame !== null) {
@@ -226,7 +323,7 @@ const SelectList = class {
226
323
  this.scheduleMeasureItemHeight();
227
324
  }
228
325
  handleSelectAllLabelChange() {
229
- if (!this.isMultiple)
326
+ if (!this.effectiveMultiple)
230
327
  return;
231
328
  this.options = this.syncSelectAllOption(this.options);
232
329
  }
@@ -236,7 +333,7 @@ const SelectList = class {
236
333
  const detail = event.detail;
237
334
  if (!detail?.value)
238
335
  return;
239
- if (this.isMultiple)
336
+ if (this.effectiveMultiple)
240
337
  return this.applyMultipleOption(detail);
241
338
  if (detail.selected)
242
339
  return this.applySingleSelect(detail);
@@ -266,7 +363,8 @@ const SelectList = class {
266
363
  * @returns Uma promise concluída após a atualização da lista.
267
364
  */
268
365
  async setOptions(options) {
269
- if (!options || options.length === 0) {
366
+ const normalizedInput = this.normalizeOptionData(options);
367
+ if (normalizedInput.length === 0) {
270
368
  this.options = [];
271
369
  this.scrollTop = 0;
272
370
  this.measuredItemHeight = null;
@@ -277,7 +375,7 @@ const SelectList = class {
277
375
  }
278
376
  const map = new Map();
279
377
  let hasDuplicates = false;
280
- options.forEach((opt) => {
378
+ normalizedInput.forEach((opt) => {
281
379
  if (map.has(opt.value)) {
282
380
  hasDuplicates = true;
283
381
  }
@@ -287,7 +385,7 @@ const SelectList = class {
287
385
  console.warn('[br-select-list] Foram encontrados valores duplicados em `setOptions`. Apenas a ultima ocorrencia de cada `value` sera mantida.');
288
386
  }
289
387
  const nextOptions = Array.from(map.values());
290
- this.options = this.normalizeOptionsForMode(nextOptions, this.isMultiple);
388
+ this.options = this.normalizeOptionsForMode(nextOptions, this.effectiveMultiple);
291
389
  this.scheduleMeasureItemHeight();
292
390
  requestAnimationFrame(() => this.clampScrollPosition());
293
391
  }
@@ -298,15 +396,18 @@ const SelectList = class {
298
396
  * @returns Uma promise concluída após a atualização da coleção.
299
397
  */
300
398
  async setOption(option) {
301
- const index = this.options.findIndex((opt) => opt.value === option.value);
399
+ const normalizedOption = this.normalizeOptionData([option])[0];
400
+ if (!normalizedOption)
401
+ return;
402
+ const index = this.options.findIndex((opt) => opt.value === normalizedOption.value);
302
403
  let nextOptions;
303
404
  if (index !== -1) {
304
- nextOptions = this.options.map((opt) => (opt.value === option.value ? option : opt));
405
+ nextOptions = this.options.map((opt) => (opt.value === normalizedOption.value ? normalizedOption : opt));
305
406
  }
306
407
  else {
307
- nextOptions = [...this.options, option];
408
+ nextOptions = [...this.options, normalizedOption];
308
409
  }
309
- this.options = this.normalizeOptionsForMode(nextOptions, this.isMultiple);
410
+ this.options = this.normalizeOptionsForMode(nextOptions, this.effectiveMultiple);
310
411
  requestAnimationFrame(() => this.clampScrollPosition());
311
412
  }
312
413
  /**
@@ -360,10 +461,14 @@ const SelectList = class {
360
461
  const filteredOptions = this.getFilteredOptions();
361
462
  if (index < 0 || index >= filteredOptions.length || !this.listElement)
362
463
  return false;
464
+ const rows = this.getVirtualRows();
465
+ const rowIndex = this.getRowIndexForOption(rows, index);
466
+ if (rowIndex < 0)
467
+ return false;
363
468
  const rowHeight = this.getRowHeight();
364
469
  const viewportHeight = this.getViewportHeight();
365
- const maxScrollTop = Math.max(0, filteredOptions.length * rowHeight - viewportHeight);
366
- const nextScrollTop = Math.min(index * rowHeight, maxScrollTop);
470
+ const maxScrollTop = Math.max(0, rows.length * rowHeight - viewportHeight);
471
+ const nextScrollTop = Math.min(rowIndex * rowHeight, maxScrollTop);
367
472
  /*
368
473
  * Atualiza primeiro o estado que define a janela virtual. Dessa forma,
369
474
  * os itens do novo intervalo são renderizados antes de o viewport nativo
@@ -461,7 +566,7 @@ const SelectList = class {
461
566
  this.options = this.options.map((o) => ({ ...o, selected: false }));
462
567
  }
463
568
  isSelectAllOption(option) {
464
- if (option.value === SelectList.SELECT_ALL_VALUE)
569
+ if (option.value === SelectList.SELECT_ALL_VALUE || option.value === '__select_all__')
465
570
  return true;
466
571
  const optionLabel = (option.label ?? option.value).trim();
467
572
  return optionLabel === this.selectAllLabel || optionLabel === this.unselectAllLabel;
@@ -538,6 +643,33 @@ const SelectList = class {
538
643
  };
539
644
  });
540
645
  }
646
+ normalizeOptionData(value) {
647
+ if (!Array.isArray(value)) {
648
+ propWarning.reportInvalidPropValue(this.el, 'options', value, 'Informe um array de opções com `value` string e `label` string opcional.', 'Aplicando fallback [].');
649
+ return [];
650
+ }
651
+ const validOptions = value.filter((option) => typeof option === 'object' && option !== null && typeof option.value === 'string');
652
+ const hasInvalidLabels = validOptions.some((option) => {
653
+ const label = option.label;
654
+ return label !== undefined && typeof label !== 'string';
655
+ });
656
+ const hasInvalidGroups = validOptions.some((option) => {
657
+ const group = option.group;
658
+ return group !== undefined && typeof group !== 'string';
659
+ });
660
+ if (validOptions.length === value.length && !hasInvalidLabels && !hasInvalidGroups) {
661
+ const hasGroupsToNormalize = validOptions.some((option) => typeof option.group === 'string' && option.group !== (option.group.trim() || undefined));
662
+ if (!hasGroupsToNormalize)
663
+ return value;
664
+ return validOptions.map((option) => ({ ...option, group: option.group?.trim() || undefined }));
665
+ }
666
+ propWarning.reportInvalidPropValue(this.el, 'options', value, 'Cada opção deve ter `value` string e pode ter `label` e `group` como strings.', 'Ignorando opções inválidas e removendo rótulos ou grupos com tipo incompatível.');
667
+ return validOptions.map((option) => ({
668
+ ...option,
669
+ group: typeof option.group === 'string' ? option.group.trim() || undefined : undefined,
670
+ label: typeof option.label === 'string' ? option.label : undefined,
671
+ }));
672
+ }
541
673
  normalizeSearchText(value) {
542
674
  return (value ?? '')
543
675
  .normalize('NFD')
@@ -547,7 +679,7 @@ const SelectList = class {
547
679
  }
548
680
  getFilteredOptions() {
549
681
  const normalizedTerm = this.normalizeSearchText(this.searchTerm);
550
- const cacheKey = `${normalizedTerm}|${this.isMultiple}|${this.selectAllLabel}|${this.unselectAllLabel}|${this.options.length}`;
682
+ const cacheKey = `${normalizedTerm}|${this.effectiveMultiple}|${this.selectAllLabel}|${this.unselectAllLabel}|${this.options.length}`;
551
683
  if (this.options === this.filteredOptionsCacheSource &&
552
684
  cacheKey === this.filteredOptionsCacheKey &&
553
685
  this.filteredOptionsCache !== null) {
@@ -562,35 +694,67 @@ const SelectList = class {
562
694
  this.filteredOptionsCacheKey = cacheKey;
563
695
  this.filteredOptionsCache = this.options.filter((option) => {
564
696
  if (this.isSelectAllOption(option))
565
- return this.isMultiple;
697
+ return this.effectiveMultiple;
566
698
  const label = this.normalizeSearchText(option.label ?? option.value);
699
+ const group = this.normalizeSearchText(option.group);
567
700
  const value = this.normalizeSearchText(option.value);
568
- return label.includes(normalizedTerm) || value.includes(normalizedTerm);
701
+ return label.includes(normalizedTerm) || group.includes(normalizedTerm) || value.includes(normalizedTerm);
569
702
  });
570
703
  return this.filteredOptionsCache;
571
704
  }
705
+ getVirtualRows() {
706
+ const filteredOptions = this.getFilteredOptions();
707
+ if (filteredOptions === this.virtualRowsCacheSource && this.virtualRowsCache !== null) {
708
+ return this.virtualRowsCache;
709
+ }
710
+ const rows = [];
711
+ let previousGroup;
712
+ filteredOptions.forEach((option, optionIndex) => {
713
+ const group = option.group?.trim() || undefined;
714
+ if (group && group !== previousGroup && !this.isSelectAllOption(option)) {
715
+ rows.push({
716
+ kind: 'group',
717
+ group,
718
+ key: `group:${group}:${optionIndex}`,
719
+ });
720
+ }
721
+ rows.push({
722
+ kind: 'option',
723
+ option,
724
+ optionIndex,
725
+ key: `option:${option.value}:${optionIndex}`,
726
+ });
727
+ previousGroup = group;
728
+ });
729
+ this.virtualRowsCacheSource = filteredOptions;
730
+ this.virtualRowsCache = rows;
731
+ return rows;
732
+ }
733
+ getRowIndexForOption(rows, optionIndex) {
734
+ return rows.findIndex((row) => row.kind === 'option' && row.optionIndex === optionIndex);
735
+ }
572
736
  getViewportHeight() {
573
- const visibleOptionCount = Math.min(this.getFilteredOptions().length, this.visibleItems);
574
- return visibleOptionCount * this.getRowHeight();
737
+ const visibleRowCount = Math.min(this.getVirtualRows().length, this.effectiveVisibleItems);
738
+ return visibleRowCount * this.getRowHeight();
575
739
  }
576
740
  getRowHeight() {
577
- return this.measuredItemHeight ?? this.itemHeight;
741
+ return this.measuredItemHeight ?? this.effectiveItemHeight;
578
742
  }
579
743
  getVisibleRange() {
580
- const filteredOptions = this.getFilteredOptions();
581
- if (filteredOptions.length === 0) {
582
- return { startIndex: 0, endIndex: 0 };
583
- }
584
- const rowHeight = this.getRowHeight();
585
- const firstVisibleIndex = Math.floor(this.scrollTop / rowHeight);
586
- const startIndex = Math.max(0, firstVisibleIndex - this.overscan);
587
- const endIndex = Math.min(filteredOptions.length, firstVisibleIndex + this.visibleItems + this.overscan);
744
+ const rows = this.getVirtualRows();
745
+ const { startIndex, endIndex } = computeVirtualWindow({
746
+ totalItems: rows.length,
747
+ itemHeight: this.getRowHeight(),
748
+ scrollTop: this.scrollTop,
749
+ viewportHeight: this.getViewportHeight(),
750
+ overscan: this.effectiveOverscan,
751
+ });
588
752
  return { startIndex, endIndex };
589
753
  }
590
754
  clampScrollPosition() {
591
755
  if (!this.listElement)
592
756
  return;
593
- const totalHeight = this.getFilteredOptions().length * this.getRowHeight();
757
+ const totalHeight = this.getVirtualRows().length * this.getRowHeight();
594
758
  const maxScrollTop = Math.max(0, totalHeight - this.getViewportHeight());
595
759
  const nextScrollTop = Math.min(Math.max(0, this.listElement.scrollTop), maxScrollTop);
596
760
  if (this.listElement.scrollTop !== nextScrollTop) {
@@ -632,9 +796,13 @@ const SelectList = class {
632
796
  async ensureOptionVisible(index) {
633
797
  if (!this.listElement)
634
798
  return;
799
+ const rows = this.getVirtualRows();
800
+ const rowIndex = this.getRowIndexForOption(rows, index);
801
+ if (rowIndex < 0)
802
+ return;
635
803
  const rowHeight = this.getRowHeight();
636
804
  const viewportHeight = this.getViewportHeight();
637
- const optionTop = index * rowHeight;
805
+ const optionTop = rowIndex * rowHeight;
638
806
  const optionBottom = optionTop + rowHeight;
639
807
  const viewportTop = this.listElement.scrollTop;
640
808
  const viewportBottom = viewportTop + viewportHeight;
@@ -645,7 +813,7 @@ const SelectList = class {
645
813
  else if (optionBottom > viewportBottom) {
646
814
  nextScrollTop = optionBottom - viewportHeight;
647
815
  }
648
- const maxScrollTop = Math.max(0, this.getFilteredOptions().length * rowHeight - viewportHeight);
816
+ const maxScrollTop = Math.max(0, rows.length * rowHeight - viewportHeight);
649
817
  nextScrollTop = Math.min(Math.max(0, nextScrollTop), maxScrollTop);
650
818
  if (nextScrollTop === viewportTop)
651
819
  return;
@@ -659,22 +827,36 @@ const SelectList = class {
659
827
  'is-open': this.isOpen,
660
828
  };
661
829
  }
662
- renderOption(option, index$1) {
830
+ renderOption(option, optionIndex, rowIndex) {
663
831
  const rowHeight = this.getRowHeight();
664
832
  const optionPart = this.isSelectAllOption(option) ? 'option select-all' : 'option';
665
- return (index.h("br-select-option", { part: optionPart, active: index$1 === this.activeOptionIndex, "data-option-index": index$1, disabled: option.disabled, id: `${this.el.id || 'br-select-list'}-option-${index$1}`, indeterminate: option.indeterminate,
833
+ return (index.h("br-select-option", { part: optionPart, active: optionIndex === this.effectiveActiveOptionIndex, "data-option-index": optionIndex, density: this.effectiveDensity, disabled: option.disabled, id: `${this.el.id || 'br-select-list'}-option-${optionIndex}`, indeterminate: option.indeterminate,
666
834
  // A seleção faz parte da identidade visual renderizada. Incluir o estado
667
835
  // na chave evita que uma opção virtual reutilizada retenha o snapshot
668
836
  // interno anterior do br-select-option/br-item.
669
- key: `${option.value}:${option.selected ? 'selected' : 'unselected'}`, label: option.label, selected: option.selected, "show-checkbox": this.isMultiple, style: {
837
+ key: `${option.value}:${option.selected ? 'selected' : 'unselected'}:${option.group ?? ''}`, label: option.label, ref: (element) => {
838
+ if (element && option.group)
839
+ element.setAttribute('group', option.group);
840
+ }, selected: option.selected, "show-checkbox": this.effectiveMultiple, style: {
670
841
  boxSizing: 'border-box',
671
842
  height: `${rowHeight}px`,
672
843
  position: 'absolute',
673
- top: `${index$1 * rowHeight}px`,
844
+ top: `${rowIndex * rowHeight}px`,
674
845
  left: '0',
675
846
  right: '0',
676
847
  }, value: option.value }, option.content ? index.h("span", { innerHTML: option.content }) : (option.label ?? option.value)));
677
848
  }
849
+ renderGroup(row, rowIndex) {
850
+ const rowHeight = this.getRowHeight();
851
+ return (index.h("div", { "aria-hidden": "true", class: "option-group-label", key: row.key, part: "option-group", role: "presentation", style: {
852
+ boxSizing: 'border-box',
853
+ height: `${rowHeight}px`,
854
+ position: 'absolute',
855
+ top: `${rowIndex * rowHeight}px`,
856
+ left: '0',
857
+ right: '0',
858
+ } }, row.group));
859
+ }
678
860
  getVirtualScrollStyle() {
679
861
  return {
680
862
  height: `${this.getViewportHeight()}px`,
@@ -684,33 +866,41 @@ const SelectList = class {
684
866
  }
685
867
  getVirtualSpacerStyle() {
686
868
  return {
687
- height: `${this.getFilteredOptions().length * this.getRowHeight()}px`,
869
+ height: `${this.getVirtualRows().length * this.getRowHeight()}px`,
688
870
  position: 'relative',
689
871
  };
690
872
  }
691
- getVirtualVisibleOptions() {
692
- const filteredOptions = this.getFilteredOptions();
873
+ getVirtualVisibleRows() {
874
+ const rows = this.getVirtualRows();
693
875
  const { startIndex, endIndex } = this.getVisibleRange();
694
876
  return {
695
877
  startIndex,
696
- visibleOptions: filteredOptions.slice(startIndex, endIndex),
878
+ visibleRows: rows.slice(startIndex, endIndex),
697
879
  };
698
880
  }
699
881
  renderVirtualOptions() {
700
- const { startIndex, visibleOptions } = this.getVirtualVisibleOptions();
701
- if (visibleOptions.length === 0) {
882
+ const { startIndex, visibleRows } = this.getVirtualVisibleRows();
883
+ if (visibleRows.length === 0) {
702
884
  return (index.h("div", { part: "empty-option", role: "option", "aria-selected": "false", tabIndex: 0 }, "Nenhum resultado encontrado"));
703
885
  }
704
- return (index.h("div", { style: this.getVirtualSpacerStyle() }, visibleOptions.map((option, relativeIndex) => this.renderOption(option, startIndex + relativeIndex))));
886
+ return (index.h("div", { style: this.getVirtualSpacerStyle() }, visibleRows.map((row, relativeIndex) => {
887
+ const rowIndex = startIndex + relativeIndex;
888
+ if (row.kind === 'group')
889
+ return this.renderGroup(row, rowIndex);
890
+ return this.renderOption(row.option, row.optionIndex, rowIndex);
891
+ })));
705
892
  }
706
893
  renderLoading() {
707
- return (index.h("div", { part: "loading", role: "status", "aria-live": "polite" }, index.h("slot", { name: "loading" }, index.h("br-loading", { size: "small", label: "Buscando op\u00E7\u00F5es" }))));
894
+ return (index.h("div", { part: "loading", role: "status", "aria-live": "polite" }, index.h("slot", { name: "loading" }, index.h("br-loading", { density: this.effectiveDensity, label: "Buscando op\u00E7\u00F5es" }))));
708
895
  }
709
896
  render() {
710
- return (index.h(index.Host, { key: '537c7f312573570953b24e27fed7188a052c4bd5' }, index.h("div", { key: 'aac978e5664c9dee21ba7a6763125fe7daf915d3', class: this.getCssClassMap(), part: "list", ref: (el) => (this.listElement = el), onScroll: this.handleScroll, style: this.getVirtualScrollStyle() }, this.loading ? this.renderLoading() : this.renderVirtualOptions())));
897
+ return (index.h(index.Host, { key: '47c188f8f3e86d028476b8583d667e4eb412ec78' }, index.h("div", { key: '36386dc9532a3bd3561e319493ec7b86100be204', class: this.getCssClassMap(), part: "list", ref: (el) => (this.listElement = el), onScroll: this.handleScroll, style: this.getVirtualScrollStyle() }, this.loading ? this.renderLoading() : this.renderVirtualOptions())));
711
898
  }
712
899
  get el() { return index.getElement(this); }
713
900
  static get watchers() { return {
901
+ "options": [{
902
+ "handleOptionsChange": 0
903
+ }],
714
904
  "searchTerm": [{
715
905
  "handleSearchTermChange": 0
716
906
  }],
@@ -730,13 +920,20 @@ SelectList.style = selectListCss();
730
920
  const MISSING_VALUE_WARNING = '[br-select-option] `value` nao foi informado. Um fallback sera derivado de `label` ou do conteudo do slot.';
731
921
  const EMPTY_VALUE_WARNING = '[br-select-option] Nao foi possivel resolver um valor para a opcao. Informe `value`, `label` ou conteudo no slot.';
732
922
 
733
- const selectOptionCss = () => `*,*::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))}.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-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)}:host{--br-select-option-bg-color:var(--bg-color, var(--background, var(--background-color, #fff)));contain:paint;display:block;background-color:var(--br-select-option-bg-color);line-height:0;overflow:hidden;position:relative}:host(:focus-within){contain:none;overflow:visible}:host([active]){contain:none;overflow:visible;z-index:1}:host([active])::after{border:var(--focus-width) var(--focus-style) var(--focus);box-sizing:border-box;content:"";inset:0;pointer-events:none;position:absolute}.br-select-option{opacity:1 !important}br-item{--br-item-bg-color:var(--br-select-option-bg-color);background-color:var(--br-select-option-bg-color);display:block;line-height:normal;overflow:visible;width:100%}:host(:not([disabled])) br-item::part(item){cursor:pointer}:host([disabled]){background:var(--br-select-option-bg-color) !important;cursor:not-allowed}br-item[disabled]{--br-item-bg-color:var(--br-select-option-bg-color);background:var(--br-select-option-bg-color) !important;cursor:not-allowed}:host([disabled]) ::slotted(*){opacity:var(--disabled) !important}.br-select-option-label{display:block;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host([disabled]) .br-select-option-label{opacity:var(--disabled) !important}.br-select-option-label ::slotted(*){display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}`;
923
+ const selectOptionCss = () => `*,*::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}:host{--br-select-option-bg-color:var(--bg-color, var(--background, var(--background-color, #fff)));contain:paint;display:block;background-color:var(--br-select-option-bg-color);line-height:0;overflow:hidden;position:relative}:host(:focus-within){contain:none;overflow:visible}:host([active]){contain:none;overflow:visible;z-index:1}:host([active])::after{border:var(--focus-width) var(--focus-style) var(--focus);box-sizing:border-box;content:"";inset:0;pointer-events:none;position:absolute}.br-select-option{opacity:1 !important}br-item{--br-item-bg-color:var(--br-select-option-bg-color);background-color:var(--br-select-option-bg-color);display:block;line-height:normal;overflow:visible;width:100%}br-checkbox{--border-color:var(--gray-40, #888);--disabled:1;pointer-events:none}:host(:not([disabled])) br-item::part(item){cursor:pointer}:host([disabled]){background:var(--br-select-option-bg-color) !important;cursor:not-allowed}br-item[disabled]{--br-item-bg-color:var(--br-select-option-bg-color);background:var(--br-select-option-bg-color) !important;cursor:not-allowed}:host([disabled]) ::slotted(*){opacity:var(--disabled) !important}.br-select-option-label{display:block;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host([disabled]) .br-select-option-label{opacity:var(--disabled) !important}.br-select-option-label ::slotted(*){display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}`;
734
924
 
735
925
  const SelectOption = class {
736
926
  constructor(hostRef) {
737
927
  index.registerInstance(this, hostRef);
738
928
  this.brSelectOptionStateChange = index.createEvent(this, "brSelectOptionStateChange", 7);
739
929
  this.brSelectOptionPropsChange = index.createEvent(this, "brSelectOptionPropsChange", 7);
930
+ /**
931
+ * Define a densidade visual da opção e do item interno.
932
+ * Aceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.
933
+ *
934
+ * @default 'medium'
935
+ */
936
+ this.density = 'medium';
740
937
  /**
741
938
  * Desativa a interação da opção.
742
939
  *
@@ -778,35 +975,21 @@ const SelectOption = class {
778
975
  this.hasWarnedMissingValue = false;
779
976
  this.hasWarnedEmptyValue = false;
780
977
  this.lastStateChangeKey = '';
781
- // Flag para ignorar eventos emitidos durante a montagem inicial
782
- this.hasMounted = false;
783
- this.handleSelect = (event) => {
978
+ this.handleActivation = () => {
784
979
  if (this.disabled)
785
980
  return;
786
- // Ignora eventos que ocorram antes do componente estar montado (evita tratar emissões iniciais)
787
- if (event && !this.hasMounted)
788
- return;
789
- let current = this.selected;
790
- if (event && event.detail !== undefined) {
791
- const detail = event.detail;
792
- if (typeof detail === 'object') {
793
- current = detail.selected ?? detail.checked ?? current;
794
- }
795
- else if (typeof detail === 'boolean') {
796
- current = detail;
797
- }
798
- }
799
- if (this.isRedundantCheckboxReflection(event, current)) {
800
- return;
801
- }
981
+ const nextSelected = !this.selected;
802
982
  if (this.isControlledBySelect)
803
- this.emitStateChange(current);
983
+ this.emitStateChange(nextSelected);
804
984
  else
805
- this.applySelection(current);
985
+ this.applySelection(nextSelected);
986
+ };
987
+ this.handleKeyDown = (event) => {
988
+ if (event.key !== 'Enter' && event.key !== ' ')
989
+ return;
990
+ event.preventDefault();
991
+ this.handleActivation();
806
992
  };
807
- }
808
- componentDidLoad() {
809
- this.hasMounted = true;
810
993
  }
811
994
  handleDisabledChange() {
812
995
  this.brSelectOptionPropsChange.emit();
@@ -815,6 +998,12 @@ const SelectOption = class {
815
998
  handlePropsChange() {
816
999
  this.brSelectOptionPropsChange.emit();
817
1000
  }
1001
+ handleSelectedChange() {
1002
+ this.brSelectOptionPropsChange.emit();
1003
+ // Alterações programáticas de `selected` seguem o mesmo protocolo de
1004
+ // interação e permitem que o select pai atualize seu modelo canônico.
1005
+ this.emitStateChange();
1006
+ }
818
1007
  /**
819
1008
  * Retorna a altura efetiva da opção para cálculo de virtual scroll.
820
1009
  *
@@ -830,7 +1019,7 @@ const SelectOption = class {
830
1019
  * @returns Uma promise concluída após a tentativa de foco.
831
1020
  */
832
1021
  async setFocus() {
833
- await this.itemElement?.setFocus?.();
1022
+ this.el.focus();
834
1023
  }
835
1024
  /**
836
1025
  * Atualiza programaticamente o estado selecionado da opção.
@@ -841,20 +1030,10 @@ const SelectOption = class {
841
1030
  if (this.disabled)
842
1031
  return;
843
1032
  const nextSelected = typeof selected === 'boolean' ? selected : !this.selected;
844
- if (this.isControlledBySelect)
845
- this.emitStateChange(nextSelected);
846
- else
847
- this.applySelection(nextSelected);
848
- }
849
- isRedundantCheckboxReflection(event, nextSelected) {
850
- if (!event)
851
- return false;
852
- const checkboxTarget = event.composedPath().find((node) => {
853
- return node.tagName?.toLowerCase() === 'br-checkbox';
854
- });
855
- if (!checkboxTarget)
856
- return false;
857
- return Boolean(nextSelected) === Boolean(this.selected);
1033
+ // Mesmo quando o select pai controla a coleção, a opção deve refletir
1034
+ // imediatamente o estado solicitado pelo método público. O pai ainda
1035
+ // consolida a seleção e atualiza as demais opções por meio do evento.
1036
+ this.applySelection(nextSelected);
858
1037
  }
859
1038
  emitStateChange(selected = this.selected) {
860
1039
  const detail = {
@@ -863,6 +1042,7 @@ const SelectOption = class {
863
1042
  selected,
864
1043
  value: this.getResolvedValue(),
865
1044
  label: this.getResolvedLabel(),
1045
+ group: this.getResolvedGroup(),
866
1046
  };
867
1047
  const nextKey = JSON.stringify(detail);
868
1048
  if (nextKey === this.lastStateChangeKey)
@@ -899,10 +1079,20 @@ const SelectOption = class {
899
1079
  'br-select-option': true,
900
1080
  };
901
1081
  }
1082
+ get effectiveDensity() {
1083
+ return props.resolveDensity(this.el, this.density);
1084
+ }
902
1085
  getResolvedLabel() {
903
1086
  const normalizedLabel = this.normalizeText(this.label);
904
1087
  return normalizedLabel || this.getResolvedValue();
905
1088
  }
1089
+ getResolvedGroup() {
1090
+ return this.normalizeText(this.group) || undefined;
1091
+ }
1092
+ getAccessibleLabel() {
1093
+ const group = this.getResolvedGroup();
1094
+ return group ? `${group}: ${this.getResolvedLabel()}` : null;
1095
+ }
906
1096
  getResolvedValue() {
907
1097
  const explicitValue = this.normalizeText(this.value);
908
1098
  if (explicitValue)
@@ -950,7 +1140,7 @@ const SelectOption = class {
950
1140
  return this.normalizeText(this.el.textContent || '');
951
1141
  }
952
1142
  render() {
953
- return (index.h(index.Host, { key: '3b20b8766d73d6a862765fb890028e6ff7374d96', part: "option", exportparts: "checkbox:checkbox, checkbox:option-checkbox", "aria-disabled": this.disabled ? 'true' : 'false', "aria-selected": this.selected ? 'true' : 'false', role: "option", onMouseEnter: () => {
1143
+ return (index.h(index.Host, { key: '5897310b67f7bbf295e052538b92e405ed3ff24d', part: "option", exportparts: "checkbox:checkbox, checkbox:option-checkbox", "aria-disabled": this.disabled ? 'true' : 'false', "aria-label": this.getAccessibleLabel(), "aria-selected": this.selected ? 'true' : 'false', role: "option", tabindex: "-1", onClickCapture: this.handleActivation, onKeyDown: this.handleKeyDown, onMouseEnter: () => {
954
1144
  this.el.dispatchEvent(new CustomEvent('brInternalSelectOptionHover', {
955
1145
  bubbles: true,
956
1146
  composed: true,
@@ -962,7 +1152,7 @@ const SelectOption = class {
962
1152
  composed: true,
963
1153
  detail: { label: this.getResolvedLabel(), value: this.getResolvedValue() },
964
1154
  }));
965
- } }, index.h("br-item", { key: '7b32b68bbc5541090e24d81e55602045bdbbba47', class: this.getCssClassMap(), disabled: this.disabled, active: this.active, selected: this.selected, "is-interactive": true, ref: (el) => (this.itemElement = el), onBrItemSelect: this.handleSelect }, this.showCheckbox && (index.h("br-checkbox", { key: 'fd5426e02e229eaaa8b22d457329cce6acf59e51', exportparts: "input:checkbox, input:option-checkbox", slot: "start", checked: this.selected, disabled: this.disabled, indeterminate: this.indeterminate, name: this.getResolvedValue(), onCheckedChange: this.handleSelect })), index.h("span", { key: '6185b2e6b60bf65059c321d4118d675859f9940e', class: "br-select-option-label" }, index.h("slot", { key: 'c78020a423fe1ed34ef39f46301f71baf5b0cbd8' }, this.getResolvedLabel())))));
1155
+ } }, index.h("br-item", { key: 'afff7ce7c07f79fad60f5b09a618a08b23a91afb', class: this.getCssClassMap(), density: this.effectiveDensity, disabled: this.disabled, active: this.active, selected: this.selected }, this.showCheckbox && (index.h("br-checkbox", { key: 'b6c6b32e98221cf28a822a304ee330af21206b96', exportparts: "input:checkbox, input:option-checkbox", slot: "start", checked: this.selected, disabled: true, indeterminate: this.indeterminate, name: this.getResolvedValue(), "aria-hidden": "true" })), index.h("span", { key: '394f225cae7fbae52889b39c4b876c477a32c7ea', class: "br-select-option-label" }, index.h("slot", { key: '4e26a8461a59111a8998276f554f1ebd38a5761e' }, this.getResolvedLabel())))));
966
1156
  }
967
1157
  static get formAssociated() { return true; }
968
1158
  get el() { return index.getElement(this); }
@@ -973,11 +1163,14 @@ const SelectOption = class {
973
1163
  "label": [{
974
1164
  "handlePropsChange": 0
975
1165
  }],
1166
+ "group": [{
1167
+ "handlePropsChange": 0
1168
+ }],
976
1169
  "value": [{
977
1170
  "handlePropsChange": 0
978
1171
  }],
979
1172
  "selected": [{
980
- "handlePropsChange": 0
1173
+ "handleSelectedChange": 0
981
1174
  }]
982
1175
  }; }
983
1176
  };