@govbr-ds/webcomponents 2.5.0 → 2.6.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 (686) hide show
  1. package/cem/custom-elements.json +4228 -996
  2. package/cem/webcomponents.html-custom-data.json +354 -48
  3. package/dist/cjs/br-avatar.cjs.entry.js +2 -2
  4. package/dist/cjs/br-breadcrumb-item.cjs.entry.js +1 -1
  5. package/dist/cjs/br-breadcrumb.cjs.entry.js +11 -11
  6. package/dist/cjs/br-button_2.cjs.entry.js +5 -5
  7. package/dist/cjs/br-card.cjs.entry.js +2 -2
  8. package/dist/cjs/br-carousel-page.cjs.entry.js +2 -2
  9. package/dist/cjs/br-carousel.cjs.entry.js +5 -5
  10. package/dist/cjs/br-checkbox-group.cjs.entry.js +2 -2
  11. package/dist/cjs/br-checkbox.cjs.entry.js +2 -2
  12. package/dist/cjs/br-checkgroup.cjs.entry.js +1 -1
  13. package/dist/cjs/br-collapse_2.cjs.entry.js +8 -8
  14. package/dist/cjs/br-cookiebar-cookie.cjs.entry.js +2 -2
  15. package/dist/cjs/br-cookiebar-group.cjs.entry.js +4 -4
  16. package/dist/cjs/br-cookiebar-header.cjs.entry.js +2 -2
  17. package/dist/cjs/br-cookiebar-link.cjs.entry.js +3 -3
  18. package/dist/cjs/br-cookiebar-note-group.cjs.entry.js +3 -3
  19. package/dist/cjs/br-cookiebar-note.cjs.entry.js +2 -2
  20. package/dist/cjs/br-cookiebar.cjs.entry.js +5 -5
  21. package/dist/cjs/br-crumb.cjs.entry.js +1 -1
  22. package/dist/cjs/br-date-picker_3.cjs.entry.js +14 -14
  23. package/dist/cjs/br-datetime-picker.cjs.entry.js +6 -23
  24. package/dist/cjs/br-divider.cjs.entry.js +2 -2
  25. package/dist/cjs/br-dropdown.cjs.entry.js +677 -0
  26. package/dist/cjs/br-footer-category.cjs.entry.js +2 -2
  27. package/dist/cjs/br-footer-item.cjs.entry.js +2 -2
  28. package/dist/cjs/br-footer-legal.cjs.entry.js +2 -2
  29. package/dist/cjs/br-footer-logo.cjs.entry.js +2 -2
  30. package/dist/cjs/br-footer-social.cjs.entry.js +3 -3
  31. package/dist/cjs/br-footer.cjs.entry.js +2 -2
  32. package/dist/cjs/br-header-function.cjs.entry.js +2 -2
  33. package/dist/cjs/br-header-link.cjs.entry.js +2 -2
  34. package/dist/cjs/br-header-list.cjs.entry.js +4 -4
  35. package/dist/cjs/br-header-logo.cjs.entry.js +2 -2
  36. package/dist/cjs/br-header.cjs.entry.js +6 -6
  37. package/dist/cjs/br-icon.cjs.entry.js +172 -158
  38. package/dist/cjs/br-input_2.cjs.entry.js +1427 -0
  39. package/dist/cjs/br-item.cjs.entry.js +2 -2
  40. package/dist/cjs/br-link.cjs.entry.js +2 -2
  41. package/dist/cjs/br-magic-button.cjs.entry.js +11 -12
  42. package/dist/cjs/br-menu-group.cjs.entry.js +2 -2
  43. package/dist/cjs/br-menu-header.cjs.entry.js +3 -3
  44. package/dist/cjs/br-menu-info.cjs.entry.js +2 -2
  45. package/dist/cjs/br-menu-item.cjs.entry.js +3 -3
  46. package/dist/cjs/br-menu-link.cjs.entry.js +3 -3
  47. package/dist/cjs/br-menu-list.cjs.entry.js +2 -2
  48. package/dist/cjs/br-menu-logo.cjs.entry.js +2 -2
  49. package/dist/cjs/br-menu-social.cjs.entry.js +2 -2
  50. package/dist/cjs/br-menu.cjs.entry.js +5 -5
  51. package/dist/cjs/br-modal.cjs.entry.js +2 -2
  52. package/dist/cjs/br-notification-body.cjs.entry.js +2 -2
  53. package/dist/cjs/br-notification-header.cjs.entry.js +2 -2
  54. package/dist/cjs/br-notification-item.cjs.entry.js +2 -2
  55. package/dist/cjs/br-notification.cjs.entry.js +2 -2
  56. package/dist/cjs/{br-dropdown_2.cjs.entry.js → br-pagination_2.cjs.entry.js} +812 -557
  57. package/dist/cjs/br-radio-group.cjs.entry.js +2 -2
  58. package/dist/cjs/br-radio.cjs.entry.js +2 -2
  59. package/dist/cjs/br-scrim.cjs.entry.js +2 -2
  60. package/dist/cjs/br-select-input_3.cjs.entry.js +16 -93
  61. package/dist/cjs/br-sign-in.cjs.entry.js +3 -3
  62. package/dist/cjs/br-skip-link-item.cjs.entry.js +1 -1
  63. package/dist/cjs/br-skip-link.cjs.entry.js +2 -2
  64. package/dist/cjs/br-skiplink-item.cjs.entry.js +2 -2
  65. package/dist/cjs/br-slider.cjs.entry.js +3 -3
  66. package/dist/cjs/br-step_2.cjs.entry.js +3 -3
  67. package/dist/cjs/br-switch.cjs.entry.js +2 -2
  68. package/dist/cjs/br-tab-item.cjs.entry.js +3 -3
  69. package/dist/cjs/br-tab.cjs.entry.js +7 -7
  70. package/dist/cjs/br-table-action_6.cjs.entry.js +1500 -0
  71. package/dist/cjs/br-table-body.cjs.entry.js +4 -16
  72. package/dist/cjs/br-table-header.cjs.entry.js +4 -16
  73. package/dist/cjs/br-table.cjs.entry.js +2616 -433
  74. package/dist/cjs/br-tag.cjs.entry.js +4 -4
  75. package/dist/cjs/br-textarea.cjs.entry.js +3 -3
  76. package/dist/cjs/br-tooltip.cjs.entry.js +5 -29
  77. package/dist/cjs/br-upload.cjs.entry.js +4 -4
  78. package/dist/cjs/br-wizard-panel.cjs.entry.js +3 -3
  79. package/dist/cjs/br-wizard.cjs.entry.js +3 -3
  80. package/dist/cjs/helpers-DkkDubv1.js +28 -0
  81. package/dist/cjs/{icon.utils-DF6kMskA.js → icon.utils-CMs0ukvR.js} +1 -1
  82. package/dist/cjs/{index-Bc30P_6z.js → index-BP8UIQro.js} +34 -34
  83. package/dist/cjs/loader.cjs.js +2 -2
  84. package/dist/cjs/table.utils-De-9_NgJ.js +749 -0
  85. package/dist/cjs/webcomponents.cjs.js +2 -2
  86. package/dist/collection/collection-manifest.json +3 -0
  87. package/dist/collection/components/avatar/avatar.css +1 -1
  88. package/dist/collection/components/breadcrumb/breadcrumb.css +1 -1
  89. package/dist/collection/components/breadcrumb/breadcrumb.js +9 -9
  90. package/dist/collection/components/button/button.css +1 -1
  91. package/dist/collection/components/button/button.js +2 -2
  92. package/dist/collection/components/card/card.css +1 -1
  93. package/dist/collection/components/carousel/carousel-page/carousel-page.css +1 -1
  94. package/dist/collection/components/carousel/carousel.css +1 -1
  95. package/dist/collection/components/carousel/carousel.js +3 -3
  96. package/dist/collection/components/checkbox/checkbox.css +1 -1
  97. package/dist/collection/components/checkbox-group/checkbox-group.css +1 -1
  98. package/dist/collection/components/collapse/collapse.css +1 -1
  99. package/dist/collection/components/collapse/collapse.js +9 -9
  100. package/dist/collection/components/cookiebar/cookiebar-cookie/cookiebar-cookie.css +1 -1
  101. package/dist/collection/components/cookiebar/cookiebar-group/cookiebar-group.css +1 -1
  102. package/dist/collection/components/cookiebar/cookiebar-group/cookiebar-group.js +2 -2
  103. package/dist/collection/components/cookiebar/cookiebar-header/cookiebar-header.css +1 -1
  104. package/dist/collection/components/cookiebar/cookiebar-link/cookiebar-link.css +1 -1
  105. package/dist/collection/components/cookiebar/cookiebar-link/cookiebar-link.js +1 -1
  106. package/dist/collection/components/cookiebar/cookiebar-note/cookiebar-note.css +1 -1
  107. package/dist/collection/components/cookiebar/cookiebar-note-group/cookiebar-note-group.css +1 -1
  108. package/dist/collection/components/cookiebar/cookiebar-note-group/cookiebar-note-group.js +1 -1
  109. package/dist/collection/components/cookiebar/cookiebar.css +1 -1
  110. package/dist/collection/components/cookiebar/cookiebar.js +3 -3
  111. package/dist/collection/components/datetime-picker/date-picker/date-picker.css +1 -1
  112. package/dist/collection/components/datetime-picker/date-picker/date-picker.js +4 -4
  113. package/dist/collection/components/datetime-picker/datetime-input/datetime-input.css +1 -1
  114. package/dist/collection/components/datetime-picker/datetime-input/datetime-input.js +3 -3
  115. package/dist/collection/components/datetime-picker/datetime-picker.css +1 -1
  116. package/dist/collection/components/datetime-picker/datetime-picker.utils.js +6 -6
  117. package/dist/collection/components/datetime-picker/time-picker/time-picker.css +1 -1
  118. package/dist/collection/components/datetime-picker/time-picker/time-picker.js +3 -3
  119. package/dist/collection/components/divider/divider.css +1 -1
  120. package/dist/collection/components/dropdown/dropdown.css +1 -1
  121. package/dist/collection/components/dropdown/dropdown.js +6 -8
  122. package/dist/collection/components/footer/footer-category/footer-category.css +1 -1
  123. package/dist/collection/components/footer/footer-item/footer-item.css +1 -1
  124. package/dist/collection/components/footer/footer-legal/footer-legal.css +1 -1
  125. package/dist/collection/components/footer/footer-logo/footer-logo.css +1 -1
  126. package/dist/collection/components/footer/footer-social/footer-social.css +1 -1
  127. package/dist/collection/components/footer/footer-social/footer-social.js +2 -2
  128. package/dist/collection/components/footer/footer.css +1 -1
  129. package/dist/collection/components/header/header-function/header-function.css +1 -1
  130. package/dist/collection/components/header/header-link/header-link.css +1 -1
  131. package/dist/collection/components/header/header-list/header-list.css +1 -1
  132. package/dist/collection/components/header/header-list/header-list.js +2 -2
  133. package/dist/collection/components/header/header-logo/header-logo.css +1 -1
  134. package/dist/collection/components/header/header.css +1 -1
  135. package/dist/collection/components/header/header.js +4 -4
  136. package/dist/collection/components/icon/default-icons-cache.js +159 -146
  137. package/dist/collection/components/icon/icon.css +1 -1
  138. package/dist/collection/components/icon/icon.js +17 -13
  139. package/dist/collection/components/icon/icon.utils.js +1 -1
  140. package/dist/collection/components/input/input.css +1 -1
  141. package/dist/collection/components/input/input.js +120 -2
  142. package/dist/collection/components/item/item.css +1 -1
  143. package/dist/collection/components/link/link.css +1 -1
  144. package/dist/collection/components/list/list.css +1 -1
  145. package/dist/collection/components/loading/loading.css +1 -1
  146. package/dist/collection/components/magic-button/magic-button.css +1 -1
  147. package/dist/collection/components/magic-button/magic-button.js +11 -12
  148. package/dist/collection/components/menu/menu-group/menu-group.css +1 -1
  149. package/dist/collection/components/menu/menu-header/menu-header.css +1 -1
  150. package/dist/collection/components/menu/menu-header/menu-header.js +1 -1
  151. package/dist/collection/components/menu/menu-info/menu-info.css +1 -1
  152. package/dist/collection/components/menu/menu-item/menu-item.css +1 -1
  153. package/dist/collection/components/menu/menu-item/menu-item.js +1 -1
  154. package/dist/collection/components/menu/menu-link/menu-link.css +1 -1
  155. package/dist/collection/components/menu/menu-link/menu-link.js +1 -1
  156. package/dist/collection/components/menu/menu-list/menu-list.css +1 -1
  157. package/dist/collection/components/menu/menu-logo/menu-logo.css +1 -1
  158. package/dist/collection/components/menu/menu-social/menu-social.css +1 -1
  159. package/dist/collection/components/menu/menu-social/menu-social.js +1 -1
  160. package/dist/collection/components/menu/menu.css +1 -1
  161. package/dist/collection/components/menu/menu.js +3 -3
  162. package/dist/collection/components/message/message.css +1 -1
  163. package/dist/collection/components/modal/modal.css +1 -1
  164. package/dist/collection/components/notification/notification-body/notification-body.css +1 -1
  165. package/dist/collection/components/notification/notification-header/notification-header.css +1 -1
  166. package/dist/collection/components/notification/notification-item/notification-item.css +1 -1
  167. package/dist/collection/components/notification/notification.css +1 -1
  168. package/dist/collection/components/pagination/pagination.css +1 -1
  169. package/dist/collection/components/pagination/pagination.js +4 -4
  170. package/dist/collection/components/radio/radio.css +1 -1
  171. package/dist/collection/components/radio-group/radio-group.css +1 -1
  172. package/dist/collection/components/scrim/scrim.css +1 -1
  173. package/dist/collection/components/select/select-input/select-input.css +1 -1
  174. package/dist/collection/components/select/select-input/select-input.js +6 -84
  175. package/dist/collection/components/select/select-list/select-list.css +1 -1
  176. package/dist/collection/components/select/select-option/select-option.css +1 -1
  177. package/dist/collection/components/select/select-option/select-option.js +8 -7
  178. package/dist/collection/components/select/select.css +1 -1
  179. package/dist/collection/components/select/select.js +22 -6
  180. package/dist/collection/components/sign-in/sign-in.css +1 -1
  181. package/dist/collection/components/sign-in/sign-in.js +1 -1
  182. package/dist/collection/components/skip-link/skip-link-item/skip-link-item.css +1 -1
  183. package/dist/collection/components/skip-link/skip-link.css +1 -1
  184. package/dist/collection/components/slider/slider.css +1 -1
  185. package/dist/collection/components/slider/slider.js +4 -4
  186. package/dist/collection/components/step/step-item/step-item.css +1 -1
  187. package/dist/collection/components/step/step.css +1 -1
  188. package/dist/collection/components/switch/switch.css +1 -1
  189. package/dist/collection/components/tab/tab-item/tab-item.css +1 -1
  190. package/dist/collection/components/tab/tab-item/tab-item.js +2 -2
  191. package/dist/collection/components/tab/tab.css +1 -1
  192. package/dist/collection/components/tab/tab.js +4 -4
  193. package/dist/collection/components/table/table-action/table-action.css +1 -0
  194. package/dist/collection/components/table/table-action/table-action.js +349 -0
  195. package/dist/collection/components/table/table-bar/table-bar.css +1 -0
  196. package/dist/collection/components/table/table-bar/table-bar.js +652 -0
  197. package/dist/collection/components/table/table-body/table-body.css +1 -1
  198. package/dist/collection/components/table/table-body/table-body.js +12 -17
  199. package/dist/collection/components/table/table-cell/table-cell.css +1 -1
  200. package/dist/collection/components/table/table-cell/table-cell.js +556 -83
  201. package/dist/collection/components/table/table-footer/table-footer.css +1 -0
  202. package/dist/collection/components/table/table-footer/table-footer.js +233 -0
  203. package/dist/collection/components/table/table-header/table-header.css +1 -1
  204. package/dist/collection/components/table/table-header/table-header.js +11 -17
  205. package/dist/collection/components/table/table-header-cell/table-header-cell.css +1 -1
  206. package/dist/collection/components/table/table-header-cell/table-header-cell.js +287 -86
  207. package/dist/collection/components/table/table-row/table-row.css +1 -1
  208. package/dist/collection/components/table/table-row/table-row.js +312 -57
  209. package/dist/collection/components/table/table.actions-tooltip.js +33 -0
  210. package/dist/collection/components/table/{table-constants.js → table.constants.js} +54 -77
  211. package/dist/collection/components/table/table.css +1 -1
  212. package/dist/collection/components/table/table.data.js +461 -0
  213. package/dist/collection/components/table/table.expansion.elements.js +70 -0
  214. package/dist/collection/components/table/table.expansion.js +179 -0
  215. package/dist/collection/components/table/table.grouping.js +97 -0
  216. package/dist/collection/components/table/table.header-height.js +47 -0
  217. package/dist/collection/components/table/table.js +2499 -618
  218. package/dist/collection/components/table/table.keyboard.js +340 -0
  219. package/dist/collection/components/table/table.scroll-shadows.js +36 -0
  220. package/dist/collection/components/table/table.selection.elements.js +63 -0
  221. package/dist/collection/components/table/table.selection.js +239 -0
  222. package/dist/collection/components/table/table.tokens.js +28 -0
  223. package/dist/collection/components/table/table.types.js +1 -0
  224. package/dist/collection/components/table/table.utils.js +75 -0
  225. package/dist/collection/components/table/table.virtual-list.js +342 -0
  226. package/dist/collection/components/tag/tag.css +1 -1
  227. package/dist/collection/components/tag/tag.js +2 -2
  228. package/dist/collection/components/textarea/textarea.css +1 -1
  229. package/dist/collection/components/textarea/textarea.js +1 -1
  230. package/dist/collection/components/tooltip/tooltip.css +1 -1
  231. package/dist/collection/components/tooltip/tooltip.js +3 -27
  232. package/dist/collection/components/upload/upload.css +1 -1
  233. package/dist/collection/components/upload/upload.js +2 -2
  234. package/dist/collection/components/wizard/wizard-panel/wizard-panel.css +1 -1
  235. package/dist/collection/components/wizard/wizard-panel/wizard-panel.js +1 -1
  236. package/dist/collection/components/wizard/wizard.css +1 -1
  237. package/dist/collection/components/wizard/wizard.js +1 -1
  238. package/dist/collection/pages/scripts/code-editor.js +28 -3
  239. package/dist/collection/pages/scripts/pageLoader.js +286 -20
  240. package/dist/collection/pages/scripts/pageloader-preview.js +3 -1
  241. package/dist/components/br-avatar.js +1 -1
  242. package/dist/components/br-breadcrumb-item.js +1 -1
  243. package/dist/components/br-breadcrumb.js +1 -1
  244. package/dist/components/br-button.js +1 -1
  245. package/dist/components/br-card.js +1 -1
  246. package/dist/components/br-carousel-page.js +1 -1
  247. package/dist/components/br-carousel.js +1 -1
  248. package/dist/components/br-checkbox-group.js +1 -1
  249. package/dist/components/br-checkbox.js +1 -1
  250. package/dist/components/br-checkgroup.js +1 -1
  251. package/dist/components/br-collapse.js +1 -1
  252. package/dist/components/br-cookiebar-cookie.js +1 -1
  253. package/dist/components/br-cookiebar-group.js +1 -1
  254. package/dist/components/br-cookiebar-header.js +1 -1
  255. package/dist/components/br-cookiebar-link.js +1 -1
  256. package/dist/components/br-cookiebar-note-group.js +1 -1
  257. package/dist/components/br-cookiebar-note.js +1 -1
  258. package/dist/components/br-cookiebar.js +1 -1
  259. package/dist/components/br-crumb.js +1 -1
  260. package/dist/components/br-date-picker.js +1 -1
  261. package/dist/components/br-datetime-input.js +1 -1
  262. package/dist/components/br-datetime-picker.js +1 -1
  263. package/dist/components/br-divider.js +1 -1
  264. package/dist/components/br-dropdown.js +1 -1
  265. package/dist/components/br-footer-category.js +1 -1
  266. package/dist/components/br-footer-item.js +1 -1
  267. package/dist/components/br-footer-legal.js +1 -1
  268. package/dist/components/br-footer-logo.js +1 -1
  269. package/dist/components/br-footer-social.js +1 -1
  270. package/dist/components/br-footer.js +1 -1
  271. package/dist/components/br-header-function.js +1 -1
  272. package/dist/components/br-header-link.js +1 -1
  273. package/dist/components/br-header-list.js +1 -1
  274. package/dist/components/br-header-logo.js +1 -1
  275. package/dist/components/br-header.js +1 -1
  276. package/dist/components/br-icon.js +1 -1
  277. package/dist/components/br-input.js +1 -1
  278. package/dist/components/br-item.js +1 -1
  279. package/dist/components/br-link.js +1 -1
  280. package/dist/components/br-list.js +1 -1
  281. package/dist/components/br-loading.js +1 -1
  282. package/dist/components/br-magic-button.js +1 -1
  283. package/dist/components/br-menu-group.js +1 -1
  284. package/dist/components/br-menu-header.js +1 -1
  285. package/dist/components/br-menu-info.js +1 -1
  286. package/dist/components/br-menu-item.js +1 -1
  287. package/dist/components/br-menu-link.js +1 -1
  288. package/dist/components/br-menu-list.js +1 -1
  289. package/dist/components/br-menu-logo.js +1 -1
  290. package/dist/components/br-menu-social.js +1 -1
  291. package/dist/components/br-menu.js +1 -1
  292. package/dist/components/br-message.js +1 -1
  293. package/dist/components/br-modal.js +1 -1
  294. package/dist/components/br-notification-body.js +1 -1
  295. package/dist/components/br-notification-header.js +1 -1
  296. package/dist/components/br-notification-item.js +1 -1
  297. package/dist/components/br-notification.js +1 -1
  298. package/dist/components/br-pagination.js +1 -1
  299. package/dist/components/br-radio-group.js +1 -1
  300. package/dist/components/br-radio.js +1 -1
  301. package/dist/components/br-scrim.js +1 -1
  302. package/dist/components/br-select-input.js +1 -1
  303. package/dist/components/br-select-list.js +1 -1
  304. package/dist/components/br-select-option.js +1 -1
  305. package/dist/components/br-select.js +1 -1
  306. package/dist/components/br-sign-in.js +1 -1
  307. package/dist/components/br-skip-link-item.js +1 -1
  308. package/dist/components/br-skip-link.js +1 -1
  309. package/dist/components/br-skiplink-item.js +1 -1
  310. package/dist/components/br-slider.js +1 -1
  311. package/dist/components/br-step-item.js +1 -1
  312. package/dist/components/br-step.js +1 -1
  313. package/dist/components/br-switch.js +1 -1
  314. package/dist/components/br-tab-item.js +1 -1
  315. package/dist/components/br-tab.js +1 -1
  316. package/dist/components/br-table-action.d.ts +11 -0
  317. package/dist/components/br-table-action.js +5 -0
  318. package/dist/components/br-table-bar.d.ts +11 -0
  319. package/dist/components/br-table-bar.js +5 -0
  320. package/dist/components/br-table-body.js +1 -1
  321. package/dist/components/br-table-cell.js +1 -1
  322. package/dist/components/br-table-footer.d.ts +11 -0
  323. package/dist/components/br-table-footer.js +5 -0
  324. package/dist/components/br-table-header-cell.js +1 -1
  325. package/dist/components/br-table-header.js +1 -1
  326. package/dist/components/br-table-row.js +1 -1
  327. package/dist/components/br-table.js +1 -1
  328. package/dist/components/br-tag.js +1 -1
  329. package/dist/components/br-textarea.js +1 -1
  330. package/dist/components/br-time-picker.js +1 -1
  331. package/dist/components/br-tooltip.js +1 -1
  332. package/dist/components/br-upload.js +1 -1
  333. package/dist/components/br-wizard-panel.js +1 -1
  334. package/dist/components/br-wizard.js +1 -1
  335. package/dist/components/index.d.ts +6 -0
  336. package/dist/components/index.js +1 -1
  337. package/dist/components/p-082jxuTj.js +5 -0
  338. package/dist/components/p-381n6AwK.js +5 -0
  339. package/dist/components/{p-CyXVsiz9.js → p-B5_zbRAr.js} +1 -1
  340. package/dist/components/p-BE1gDPwC.js +5 -0
  341. package/dist/components/p-BV-c2pxt.js +5 -0
  342. package/dist/components/p-BfFbYAuJ.js +5 -0
  343. package/dist/components/{p-DcMjwTqu.js → p-Bi2E_w9Q.js} +1 -1
  344. package/dist/components/p-Bk8YcMql.js +5 -0
  345. package/dist/components/p-C3ISxUGw.js +5 -0
  346. package/dist/components/p-C3J0TVQO.js +5 -0
  347. package/dist/components/p-C6m13lCc.js +5 -0
  348. package/dist/components/{p-DBmwzG9E.js → p-CCWJ-H33.js} +1 -1
  349. package/dist/components/p-CJuHirYK.js +5 -0
  350. package/dist/components/{p-SWQlgYWR.js → p-CKS7ggLM.js} +1 -1
  351. package/dist/components/p-COSFBwu9.js +5 -0
  352. package/dist/components/p-CWPrXYam.js +5 -0
  353. package/dist/components/p-Ca89D_0s.js +5 -0
  354. package/dist/components/p-CbN58CFi.js +5 -0
  355. package/dist/components/p-CjjxTkKb.js +5 -0
  356. package/dist/components/p-Ck9t4WSb.js +5 -0
  357. package/dist/components/p-CvfVwD6_.js +5 -0
  358. package/dist/components/p-D-1sfjhG.js +5 -0
  359. package/dist/components/p-D-p4vLlP.js +5 -0
  360. package/dist/components/p-D6DArHGH.js +5 -0
  361. package/dist/components/p-DD3BItoS.js +5 -0
  362. package/dist/components/{p-448Z5r2f.js → p-DEIKwFIf.js} +1 -1
  363. package/dist/components/p-DHHAIESt.js +5 -0
  364. package/dist/components/{p-Jk_KQE5V.js → p-DMj5iO7_.js} +1 -1
  365. package/dist/components/p-DUI-S07G.js +5 -0
  366. package/dist/components/p-D_K9JH6J.js +5 -0
  367. package/dist/components/p-DiQp2Lap.js +5 -0
  368. package/dist/components/{p-DJKZ8ktB.js → p-Dvbqhybt.js} +1 -1
  369. package/dist/components/p-Dy7MSvt-.js +5 -0
  370. package/dist/components/p-DywTXNHQ.js +5 -0
  371. package/dist/components/p-Ft_P7Roz.js +5 -0
  372. package/dist/components/p-KuiFoKDl.js +5 -0
  373. package/dist/components/p-MiiczSWA.js +5 -0
  374. package/dist/components/p-Um3K2SHu.js +5 -0
  375. package/dist/components/p-YxddSP6q.js +5 -0
  376. package/dist/components/p-Zk91ebVT.js +5 -0
  377. package/dist/components/p-jv2oG0vH.js +5 -0
  378. package/dist/components/p-nrG_Gd0c.js +5 -0
  379. package/dist/components/p-syLEZrcg.js +5 -0
  380. package/dist/components/{p-jvKQA6x7.js → p-ydfWTgrA.js} +1 -1
  381. package/dist/esm/br-avatar.entry.js +3 -3
  382. package/dist/esm/br-breadcrumb-item.entry.js +1 -1
  383. package/dist/esm/br-breadcrumb.entry.js +12 -12
  384. package/dist/esm/br-button_2.entry.js +6 -6
  385. package/dist/esm/br-card.entry.js +2 -2
  386. package/dist/esm/br-carousel-page.entry.js +2 -2
  387. package/dist/esm/br-carousel.entry.js +6 -6
  388. package/dist/esm/br-checkbox-group.entry.js +3 -3
  389. package/dist/esm/br-checkbox.entry.js +3 -3
  390. package/dist/esm/br-checkgroup.entry.js +1 -1
  391. package/dist/esm/br-collapse_2.entry.js +9 -9
  392. package/dist/esm/br-cookiebar-cookie.entry.js +2 -2
  393. package/dist/esm/br-cookiebar-group.entry.js +4 -4
  394. package/dist/esm/br-cookiebar-header.entry.js +2 -2
  395. package/dist/esm/br-cookiebar-link.entry.js +4 -4
  396. package/dist/esm/br-cookiebar-note-group.entry.js +3 -3
  397. package/dist/esm/br-cookiebar-note.entry.js +2 -2
  398. package/dist/esm/br-cookiebar.entry.js +6 -6
  399. package/dist/esm/br-crumb.entry.js +1 -1
  400. package/dist/esm/br-date-picker_3.entry.js +14 -14
  401. package/dist/esm/br-datetime-picker.entry.js +5 -22
  402. package/dist/esm/br-divider.entry.js +3 -3
  403. package/dist/esm/br-dropdown.entry.js +675 -0
  404. package/dist/esm/br-footer-category.entry.js +2 -2
  405. package/dist/esm/br-footer-item.entry.js +3 -3
  406. package/dist/esm/br-footer-legal.entry.js +2 -2
  407. package/dist/esm/br-footer-logo.entry.js +3 -3
  408. package/dist/esm/br-footer-social.entry.js +4 -4
  409. package/dist/esm/br-footer.entry.js +3 -3
  410. package/dist/esm/br-header-function.entry.js +3 -3
  411. package/dist/esm/br-header-link.entry.js +3 -3
  412. package/dist/esm/br-header-list.entry.js +4 -4
  413. package/dist/esm/br-header-logo.entry.js +3 -3
  414. package/dist/esm/br-header.entry.js +7 -7
  415. package/dist/esm/br-icon.entry.js +173 -159
  416. package/dist/esm/br-input_2.entry.js +1424 -0
  417. package/dist/esm/br-item.entry.js +3 -3
  418. package/dist/esm/br-link.entry.js +3 -3
  419. package/dist/esm/br-magic-button.entry.js +12 -13
  420. package/dist/esm/br-menu-group.entry.js +2 -2
  421. package/dist/esm/br-menu-header.entry.js +3 -3
  422. package/dist/esm/br-menu-info.entry.js +2 -2
  423. package/dist/esm/br-menu-item.entry.js +4 -4
  424. package/dist/esm/br-menu-link.entry.js +4 -4
  425. package/dist/esm/br-menu-list.entry.js +2 -2
  426. package/dist/esm/br-menu-logo.entry.js +2 -2
  427. package/dist/esm/br-menu-social.entry.js +3 -3
  428. package/dist/esm/br-menu.entry.js +6 -6
  429. package/dist/esm/br-modal.entry.js +3 -3
  430. package/dist/esm/br-notification-body.entry.js +2 -2
  431. package/dist/esm/br-notification-header.entry.js +2 -2
  432. package/dist/esm/br-notification-item.entry.js +3 -3
  433. package/dist/esm/br-notification.entry.js +3 -3
  434. package/dist/esm/{br-dropdown_2.entry.js → br-pagination_2.entry.js} +813 -558
  435. package/dist/esm/br-radio-group.entry.js +3 -3
  436. package/dist/esm/br-radio.entry.js +3 -3
  437. package/dist/esm/br-scrim.entry.js +3 -3
  438. package/dist/esm/br-select-input_3.entry.js +17 -94
  439. package/dist/esm/br-sign-in.entry.js +4 -4
  440. package/dist/esm/br-skip-link-item.entry.js +1 -1
  441. package/dist/esm/br-skip-link.entry.js +3 -3
  442. package/dist/esm/br-skiplink-item.entry.js +3 -3
  443. package/dist/esm/br-slider.entry.js +4 -4
  444. package/dist/esm/br-step_2.entry.js +4 -4
  445. package/dist/esm/br-switch.entry.js +3 -3
  446. package/dist/esm/br-tab-item.entry.js +4 -4
  447. package/dist/esm/br-tab.entry.js +8 -8
  448. package/dist/esm/br-table-action_6.entry.js +1493 -0
  449. package/dist/esm/br-table-body.entry.js +4 -16
  450. package/dist/esm/br-table-header.entry.js +4 -16
  451. package/dist/esm/br-table.entry.js +2591 -408
  452. package/dist/esm/br-tag.entry.js +5 -5
  453. package/dist/esm/br-textarea.entry.js +4 -4
  454. package/dist/esm/br-tooltip.entry.js +6 -30
  455. package/dist/esm/br-upload.entry.js +5 -5
  456. package/dist/esm/br-wizard-panel.entry.js +3 -3
  457. package/dist/esm/br-wizard.entry.js +4 -4
  458. package/dist/esm/helpers-BNW9pAhl.js +26 -0
  459. package/dist/esm/{icon.utils-zlORkiHQ.js → icon.utils-CXDYKUBz.js} +1 -1
  460. package/dist/esm/{index-ConyRdJe.js → index-CwL52661.js} +34 -35
  461. package/dist/esm/loader.js +3 -3
  462. package/dist/esm/{props-D07GjR4_.js → props-BbxNgEcJ.js} +1 -1
  463. package/dist/esm/table.utils-CtVdlcgI.js +706 -0
  464. package/dist/esm/webcomponents.js +3 -3
  465. package/dist/hydrate/index.js +5269 -1302
  466. package/dist/hydrate/index.mjs +5269 -1302
  467. package/dist/types/components/collapse/collapse.d.ts +2 -2
  468. package/dist/types/components/footer/footer-social/footer-social.d.ts +2 -3
  469. package/dist/types/components/icon/icon.d.ts +6 -6
  470. package/dist/types/components/icon/icon.utils.d.ts +1 -1
  471. package/dist/types/components/input/input.d.ts +7 -1
  472. package/dist/types/components/input/input.types.d.ts +18 -0
  473. package/dist/types/components/magic-button/magic-button.d.ts +7 -8
  474. package/dist/types/components/menu/menu-social/menu-social.d.ts +2 -3
  475. package/dist/types/components/select/select-input/select-input.d.ts +1 -4
  476. package/dist/types/components/select/select-option/select-option.d.ts +3 -1
  477. package/dist/types/components/slider/slider.d.ts +4 -4
  478. package/dist/types/components/tab/tab-item/tab-item.d.ts +2 -2
  479. package/dist/types/components/tab/tab.d.ts +1 -1
  480. package/dist/types/components/table/table-action/table-action.d.ts +107 -0
  481. package/dist/types/components/table/table-bar/table-bar.d.ts +193 -0
  482. package/dist/types/components/table/table-body/table-body.d.ts +11 -16
  483. package/dist/types/components/table/table-cell/table-cell.d.ts +178 -38
  484. package/dist/types/components/table/table-footer/table-footer.d.ts +40 -0
  485. package/dist/types/components/table/table-footer/table-footer.types.d.ts +12 -0
  486. package/dist/types/components/table/table-header/table-header.d.ts +10 -16
  487. package/dist/types/components/table/table-header-cell/table-header-cell.d.ts +102 -53
  488. package/dist/types/components/table/table-row/table-row.d.ts +88 -29
  489. package/dist/types/components/table/table.actions-tooltip.d.ts +11 -0
  490. package/dist/types/components/table/{table-constants.d.ts → table.constants.d.ts} +50 -77
  491. package/dist/types/components/table/table.d.ts +601 -222
  492. package/dist/types/components/table/table.data.d.ts +78 -0
  493. package/dist/types/components/table/table.expansion.d.ts +65 -0
  494. package/dist/types/components/table/table.expansion.elements.d.ts +30 -0
  495. package/dist/types/components/table/table.grouping.d.ts +25 -0
  496. package/dist/types/components/table/table.header-height.d.ts +17 -0
  497. package/dist/types/components/table/table.keyboard.d.ts +53 -0
  498. package/dist/types/components/table/table.scroll-shadows.d.ts +11 -0
  499. package/dist/types/components/table/table.selection.d.ts +84 -0
  500. package/dist/types/components/table/table.selection.elements.d.ts +42 -0
  501. package/dist/types/components/table/table.tokens.d.ts +24 -0
  502. package/dist/types/components/table/table.types.d.ts +199 -0
  503. package/dist/types/components/table/table.utils.d.ts +52 -0
  504. package/dist/types/components/table/table.virtual-list.d.ts +96 -0
  505. package/dist/types/components.d.ts +1401 -279
  506. package/dist/webcomponents/{p-85c8d060.entry.js → p-07e80bf8.entry.js} +1 -1
  507. package/dist/webcomponents/p-10d81622.entry.js +5 -0
  508. package/dist/webcomponents/{p-a9f16a65.entry.js → p-12d5f533.entry.js} +1 -1
  509. package/dist/webcomponents/p-15699e8a.entry.js +5 -0
  510. package/dist/webcomponents/{p-bbcde1ea.entry.js → p-15e2f5cc.entry.js} +1 -1
  511. package/dist/webcomponents/{p-5528b466.entry.js → p-16d27d5c.entry.js} +1 -1
  512. package/dist/webcomponents/p-18d3fab8.entry.js +5 -0
  513. package/dist/webcomponents/p-23c916d9.entry.js +5 -0
  514. package/dist/webcomponents/p-2aee69fd.entry.js +5 -0
  515. package/dist/webcomponents/p-2d3db296.entry.js +5 -0
  516. package/dist/webcomponents/p-2ed6afdd.entry.js +5 -0
  517. package/dist/webcomponents/{p-bbf47e78.entry.js → p-30c865e6.entry.js} +1 -1
  518. package/dist/webcomponents/p-32afb78c.entry.js +5 -0
  519. package/dist/webcomponents/p-33d24cbd.entry.js +5 -0
  520. package/dist/webcomponents/p-35d63edd.entry.js +5 -0
  521. package/dist/webcomponents/p-3b1ff55e.entry.js +5 -0
  522. package/dist/webcomponents/p-3c7246cf.entry.js +5 -0
  523. package/dist/webcomponents/{p-11d4edc5.entry.js → p-407e7b69.entry.js} +1 -1
  524. package/dist/webcomponents/{p-53550e8c.entry.js → p-41b12e3c.entry.js} +1 -1
  525. package/dist/webcomponents/p-47adc17f.entry.js +5 -0
  526. package/dist/webcomponents/{p-21e10074.entry.js → p-48fc8e56.entry.js} +1 -1
  527. package/dist/webcomponents/p-4a44c8b8.entry.js +5 -0
  528. package/dist/webcomponents/{p-6d58ab4f.entry.js → p-4b0f3701.entry.js} +1 -1
  529. package/dist/webcomponents/{p-84dfbfdd.entry.js → p-4b66200c.entry.js} +1 -1
  530. package/dist/webcomponents/{p-324afbce.entry.js → p-4c0a1c05.entry.js} +1 -1
  531. package/dist/webcomponents/p-4c72d706.entry.js +5 -0
  532. package/dist/webcomponents/p-505173e0.entry.js +5 -0
  533. package/dist/webcomponents/p-50caea68.entry.js +5 -0
  534. package/dist/webcomponents/p-5419fd2c.entry.js +5 -0
  535. package/dist/webcomponents/{p-ed3fa8ec.entry.js → p-5693e0e7.entry.js} +1 -1
  536. package/dist/webcomponents/p-58247764.entry.js +5 -0
  537. package/dist/webcomponents/{p-3926cc91.entry.js → p-5d0f4851.entry.js} +1 -1
  538. package/dist/webcomponents/{p-39a7826d.entry.js → p-60c949c8.entry.js} +1 -1
  539. package/dist/webcomponents/p-61b84035.entry.js +5 -0
  540. package/dist/webcomponents/{p-e121429a.entry.js → p-62a74e0a.entry.js} +1 -1
  541. package/dist/webcomponents/p-6450913e.entry.js +5 -0
  542. package/dist/webcomponents/p-66c8b8d9.entry.js +5 -0
  543. package/dist/webcomponents/{p-c6f2f17b.entry.js → p-67281ef1.entry.js} +1 -1
  544. package/dist/webcomponents/{p-087ed5e7.entry.js → p-6e128c7a.entry.js} +1 -1
  545. package/dist/webcomponents/p-725e92ab.entry.js +5 -0
  546. package/dist/webcomponents/{p-19b4b1b7.entry.js → p-74726f20.entry.js} +1 -1
  547. package/dist/webcomponents/{p-975ea5c7.entry.js → p-75bd655b.entry.js} +1 -1
  548. package/dist/webcomponents/p-7bf78e48.entry.js +5 -0
  549. package/dist/webcomponents/p-7cc28ecf.entry.js +5 -0
  550. package/dist/webcomponents/{p-913d6f28.entry.js → p-7ec01a99.entry.js} +1 -1
  551. package/dist/webcomponents/{p-d205f3fd.entry.js → p-7f17dbca.entry.js} +1 -1
  552. package/dist/webcomponents/{p-152482f9.entry.js → p-8120f3ce.entry.js} +1 -1
  553. package/dist/webcomponents/p-8ded7870.entry.js +5 -0
  554. package/dist/webcomponents/p-9ab989d1.entry.js +5 -0
  555. package/dist/webcomponents/p-9be642ff.entry.js +5 -0
  556. package/dist/webcomponents/p-9d41995a.entry.js +5 -0
  557. package/dist/webcomponents/{p-EbtQZm5s.js → p-CjVabz-h.js} +1 -1
  558. package/dist/webcomponents/{p-ConyRdJe.js → p-CwL52661.js} +2 -2
  559. package/dist/webcomponents/p-Zk91ebVT.js +5 -0
  560. package/dist/webcomponents/p-_BMaB_68.js +5 -0
  561. package/dist/webcomponents/p-a150b61d.entry.js +5 -0
  562. package/dist/webcomponents/{p-55e0822d.entry.js → p-a264acf6.entry.js} +1 -1
  563. package/dist/webcomponents/p-a5616523.entry.js +5 -0
  564. package/dist/webcomponents/{p-eb5806c7.entry.js → p-ae3dfb9c.entry.js} +1 -1
  565. package/dist/webcomponents/p-b1aeb805.entry.js +5 -0
  566. package/dist/webcomponents/p-b8eea3ef.entry.js +5 -0
  567. package/dist/webcomponents/p-c6952f8d.entry.js +5 -0
  568. package/dist/webcomponents/p-c743e5c5.entry.js +5 -0
  569. package/dist/webcomponents/p-d0c659c3.entry.js +5 -0
  570. package/dist/webcomponents/p-d3dec923.entry.js +5 -0
  571. package/dist/webcomponents/{p-12dd22af.entry.js → p-d5405bbe.entry.js} +1 -1
  572. package/dist/webcomponents/{p-c29268b5.entry.js → p-d6d3a552.entry.js} +1 -1
  573. package/dist/webcomponents/p-dab66328.entry.js +5 -0
  574. package/dist/webcomponents/{p-cb1e08b1.entry.js → p-db02533d.entry.js} +1 -1
  575. package/dist/webcomponents/p-dda22999.entry.js +5 -0
  576. package/dist/webcomponents/p-e2a46f44.entry.js +5 -0
  577. package/dist/webcomponents/{p-e0ccf189.entry.js → p-e3680ff8.entry.js} +1 -1
  578. package/dist/webcomponents/p-e5b9652d.entry.js +5 -0
  579. package/dist/webcomponents/p-e7f02302.entry.js +5 -0
  580. package/dist/webcomponents/p-f0720e23.entry.js +5 -0
  581. package/dist/webcomponents/p-f244009d.entry.js +5 -0
  582. package/dist/webcomponents/p-f32c40ee.entry.js +5 -0
  583. package/dist/webcomponents/{p-e4b968b5.entry.js → p-f697abbd.entry.js} +1 -1
  584. package/dist/webcomponents/p-f7ed35ef.entry.js +5 -0
  585. package/dist/webcomponents/p-f8576e0a.entry.js +5 -0
  586. package/dist/webcomponents/p-fcc62731.entry.js +5 -0
  587. package/dist/webcomponents/webcomponents.esm.js +1 -1
  588. package/package.json +1 -1
  589. package/dist/cjs/br-input.cjs.entry.js +0 -763
  590. package/dist/cjs/br-loading.cjs.entry.js +0 -567
  591. package/dist/cjs/br-pagination.cjs.entry.js +0 -916
  592. package/dist/cjs/br-table-cell.cjs.entry.js +0 -201
  593. package/dist/cjs/br-table-header-cell.cjs.entry.js +0 -189
  594. package/dist/cjs/br-table-row.cjs.entry.js +0 -95
  595. package/dist/cjs/table-constants-BOPSay0B.js +0 -183
  596. package/dist/collection/components/table/table-tokens.js +0 -50
  597. package/dist/collection/components/table/table-utils.js +0 -44
  598. package/dist/components/p-AhfgJCUp.js +0 -5
  599. package/dist/components/p-AoNL6BaW.js +0 -5
  600. package/dist/components/p-B468MCYC.js +0 -5
  601. package/dist/components/p-B985Ov_x.js +0 -5
  602. package/dist/components/p-BOWQIHQA.js +0 -5
  603. package/dist/components/p-BPQrgCRr.js +0 -5
  604. package/dist/components/p-BwQT0fOJ.js +0 -5
  605. package/dist/components/p-CAgbUwsx.js +0 -5
  606. package/dist/components/p-CFXey8i8.js +0 -5
  607. package/dist/components/p-CW8xwk6J.js +0 -5
  608. package/dist/components/p-CXMwM9m4.js +0 -5
  609. package/dist/components/p-CYZVdKeO.js +0 -5
  610. package/dist/components/p-CeWbZN7V.js +0 -5
  611. package/dist/components/p-DDe0tQEO.js +0 -5
  612. package/dist/components/p-DRsZ9GNg.js +0 -5
  613. package/dist/components/p-DU54cqCf.js +0 -5
  614. package/dist/components/p-DVJlmlEX.js +0 -5
  615. package/dist/components/p-Dd1qCWAK.js +0 -5
  616. package/dist/components/p-DiLI514I.js +0 -5
  617. package/dist/components/p-DoWy_P8b.js +0 -5
  618. package/dist/components/p-HbhTnepI.js +0 -5
  619. package/dist/components/p-Or3FLzbz.js +0 -5
  620. package/dist/components/p-Zb9nyfTY.js +0 -5
  621. package/dist/components/p-pQb-3jFY.js +0 -5
  622. package/dist/components/p-qX6sHxOk.js +0 -5
  623. package/dist/esm/br-input.entry.js +0 -761
  624. package/dist/esm/br-loading.entry.js +0 -565
  625. package/dist/esm/br-pagination.entry.js +0 -914
  626. package/dist/esm/br-table-cell.entry.js +0 -199
  627. package/dist/esm/br-table-header-cell.entry.js +0 -187
  628. package/dist/esm/br-table-row.entry.js +0 -93
  629. package/dist/esm/table-constants-CXMwM9m4.js +0 -170
  630. package/dist/types/components/table/table-tokens.d.ts +0 -46
  631. package/dist/types/components/table/table-types.d.ts +0 -107
  632. package/dist/types/components/table/table-utils.d.ts +0 -47
  633. package/dist/webcomponents/p-031a2256.entry.js +0 -5
  634. package/dist/webcomponents/p-0602e5b1.entry.js +0 -5
  635. package/dist/webcomponents/p-079d5f69.entry.js +0 -5
  636. package/dist/webcomponents/p-0d5a9ebf.entry.js +0 -5
  637. package/dist/webcomponents/p-105b4d06.entry.js +0 -5
  638. package/dist/webcomponents/p-14aedf0d.entry.js +0 -5
  639. package/dist/webcomponents/p-1cd1126e.entry.js +0 -5
  640. package/dist/webcomponents/p-2271ea84.entry.js +0 -5
  641. package/dist/webcomponents/p-271b1ede.entry.js +0 -5
  642. package/dist/webcomponents/p-28f732fc.entry.js +0 -5
  643. package/dist/webcomponents/p-2971d38a.entry.js +0 -5
  644. package/dist/webcomponents/p-2ac48875.entry.js +0 -5
  645. package/dist/webcomponents/p-2b1a919c.entry.js +0 -5
  646. package/dist/webcomponents/p-2da57966.entry.js +0 -5
  647. package/dist/webcomponents/p-2e81b0b3.entry.js +0 -5
  648. package/dist/webcomponents/p-2eececed.entry.js +0 -5
  649. package/dist/webcomponents/p-2f904c4a.entry.js +0 -5
  650. package/dist/webcomponents/p-32414f1c.entry.js +0 -5
  651. package/dist/webcomponents/p-32ea6342.entry.js +0 -5
  652. package/dist/webcomponents/p-330ec8ab.entry.js +0 -5
  653. package/dist/webcomponents/p-374f83b1.entry.js +0 -5
  654. package/dist/webcomponents/p-3bcc2c58.entry.js +0 -5
  655. package/dist/webcomponents/p-3c7ce0e4.entry.js +0 -5
  656. package/dist/webcomponents/p-467842ca.entry.js +0 -5
  657. package/dist/webcomponents/p-53e71a8a.entry.js +0 -5
  658. package/dist/webcomponents/p-58bacbe1.entry.js +0 -5
  659. package/dist/webcomponents/p-5a5ed7d8.entry.js +0 -5
  660. package/dist/webcomponents/p-621f0fa8.entry.js +0 -5
  661. package/dist/webcomponents/p-6514a75d.entry.js +0 -5
  662. package/dist/webcomponents/p-678b43a6.entry.js +0 -5
  663. package/dist/webcomponents/p-6b6be415.entry.js +0 -5
  664. package/dist/webcomponents/p-6ff9b26e.entry.js +0 -5
  665. package/dist/webcomponents/p-992167bc.entry.js +0 -5
  666. package/dist/webcomponents/p-CXMwM9m4.js +0 -5
  667. package/dist/webcomponents/p-a21872bf.entry.js +0 -5
  668. package/dist/webcomponents/p-b8d4ace3.entry.js +0 -5
  669. package/dist/webcomponents/p-bf35e506.entry.js +0 -5
  670. package/dist/webcomponents/p-c09af3cd.entry.js +0 -5
  671. package/dist/webcomponents/p-c3e61c39.entry.js +0 -5
  672. package/dist/webcomponents/p-c6b2545a.entry.js +0 -5
  673. package/dist/webcomponents/p-cae39e13.entry.js +0 -5
  674. package/dist/webcomponents/p-cb690a87.entry.js +0 -5
  675. package/dist/webcomponents/p-d0be7243.entry.js +0 -5
  676. package/dist/webcomponents/p-d191c6e3.entry.js +0 -5
  677. package/dist/webcomponents/p-d3bd2c40.entry.js +0 -5
  678. package/dist/webcomponents/p-dbeea64e.entry.js +0 -5
  679. package/dist/webcomponents/p-df475129.entry.js +0 -5
  680. package/dist/webcomponents/p-e661c024.entry.js +0 -5
  681. package/dist/webcomponents/p-e6c6f305.entry.js +0 -5
  682. package/dist/webcomponents/p-e8291be2.entry.js +0 -5
  683. package/dist/webcomponents/p-f9084f16.entry.js +0 -5
  684. package/dist/webcomponents/p-fad3aa61.entry.js +0 -5
  685. /package/dist/collection/components/table/{table-types.js → table-footer/table-footer.types.js} +0 -0
  686. /package/dist/webcomponents/{p-zlORkiHQ.js → p-CXDYKUBz.js} +0 -0
@@ -42,7 +42,8 @@ import { StepChangeDetail, StepContentType, StepLabelPosition, StepMode, StepVal
42
42
  import { StepItemContentType, StepItemHighlight, StepItemLabelPosition, StepItemLayout, StepItemMode, StepItemPositionStatus, StepItemRole, StepItemVerticalContentPlacement } from "./components/step/step-item/step-item.types";
43
43
  import { SwitchValidator } from "./components/switch/switch.types";
44
44
  import { TabAlignItems, TabColorMode, TabDensity } from "./components/tab/tab.types";
45
- import { ColumnWidth, TableAlignment, TableDensity, TableDividerStyle, TableOverflow, TableTooltipMode, TableTooltipState } from "./components/table/table-types";
45
+ import { ColumnWidth, TableActionClickDetail, TableAlignment, TableData, TableDensity, TableDividerStyle, TableOverflow, TablePageChangeDetail, TablePageSizeChangeDetail, TableRowExpansion, TableRowExpansionChangeDetail, TableSearchDetail, TableSelectionChangeDetail, TableSortChangeDetail, TableSortDirection, TableSortMode, TableSortRequestDetail, TableSortState, TableSortStrategy, TableTooltipMode, TableTooltipState } from "./components/table/table.types";
46
+ import { TableFooterDensity, TableFooterPageChangeDetail, TableFooterPerPageChangeDetail } from "./components/table/table-footer/table-footer.types";
46
47
  import { TagShape, TagValidator, TagVariant } from "./components/tag/tag.types";
47
48
  import { TextareaResize, TextareaWrap } from "./components/textarea/textarea.types";
48
49
  import { TooltipDensity, TooltipPosition, TooltipState, TooltipType } from "./components/tooltip/tooltip.types";
@@ -85,7 +86,8 @@ export { StepChangeDetail, StepContentType, StepLabelPosition, StepMode, StepVal
85
86
  export { StepItemContentType, StepItemHighlight, StepItemLabelPosition, StepItemLayout, StepItemMode, StepItemPositionStatus, StepItemRole, StepItemVerticalContentPlacement } from "./components/step/step-item/step-item.types";
86
87
  export { SwitchValidator } from "./components/switch/switch.types";
87
88
  export { TabAlignItems, TabColorMode, TabDensity } from "./components/tab/tab.types";
88
- export { ColumnWidth, TableAlignment, TableDensity, TableDividerStyle, TableOverflow, TableTooltipMode, TableTooltipState } from "./components/table/table-types";
89
+ export { ColumnWidth, TableActionClickDetail, TableAlignment, TableData, TableDensity, TableDividerStyle, TableOverflow, TablePageChangeDetail, TablePageSizeChangeDetail, TableRowExpansion, TableRowExpansionChangeDetail, TableSearchDetail, TableSelectionChangeDetail, TableSortChangeDetail, TableSortDirection, TableSortMode, TableSortRequestDetail, TableSortState, TableSortStrategy, TableTooltipMode, TableTooltipState } from "./components/table/table.types";
90
+ export { TableFooterDensity, TableFooterPageChangeDetail, TableFooterPerPageChangeDetail } from "./components/table/table-footer/table-footer.types";
89
91
  export { TagShape, TagValidator, TagVariant } from "./components/tag/tag.types";
90
92
  export { TextareaResize, TextareaWrap } from "./components/textarea/textarea.types";
91
93
  export { TooltipDensity, TooltipPosition, TooltipState, TooltipType } from "./components/tooltip/tooltip.types";
@@ -878,13 +880,13 @@ export namespace Components {
878
880
  */
879
881
  "iconPosition": CollapseIconPosition;
880
882
  /**
881
- * Identificador Iconify do ícone exibido quando o conteúdo está visível. O valor padrão usa o registro SVG local. Para ícones por classe CSS, use o slot `icon-to-hide`.
882
- * @default 'fa6-solid:chevron-up'
883
+ * Identificador de ícone Font Awesome 5 Free presente no cache local, exibido quando o conteúdo está visível. Para ícones por classe CSS, use o slot `icon-to-hide`.
884
+ * @default 'fa-solid:chevron-up'
883
885
  */
884
886
  "iconToHide": string;
885
887
  /**
886
- * Identificador Iconify do ícone exibido quando o conteúdo está oculto. O valor padrão usa o registro SVG local. Para ícones por classe CSS, use o slot `icon-to-show`.
887
- * @default 'fa6-solid:chevron-down'
888
+ * Identificador de ícone Font Awesome 5 Free presente no cache local, exibido quando o conteúdo está oculto. Para ícones por classe CSS, use o slot `icon-to-show`.
889
+ * @default 'fa-solid:chevron-down'
888
890
  */
889
891
  "iconToShow": string;
890
892
  /**
@@ -2023,7 +2025,7 @@ export namespace Components {
2023
2025
  */
2024
2026
  "href"?: string;
2025
2027
  /**
2026
- * Identificador da rede social. Os ícones oficiais mais comuns são renderizados pelo registro SVG local; use o slot `icon` para uma fonte diferente ou uma classe Font Awesome personalizada.
2028
+ * Nome do ícone Font Awesome 5 Free presente no cache local, sem o prefixo `fa-brands:` (ex.: `instagram`). Use o slot `icon` para conteúdo próprio.
2027
2029
  */
2028
2030
  "icon": string;
2029
2031
  /**
@@ -2331,7 +2333,7 @@ export namespace Components {
2331
2333
  */
2332
2334
  "height": string;
2333
2335
  /**
2334
- * Identificador legado do ícone. Identificadores que pertencem ao registro local são renderizados como SVG empacotado; nomes desconhecidos continuam disponíveis via Iconify somente para compatibilidade.
2336
+ * Identificador legado do ícone. Nomes no cache local são renderizados como SVG empacotado; em `source="auto"`, nomes ausentes usam Iconify como fallback. `source="iconify"` força essa origem.
2335
2337
  * @deprecated Use `src` com um asset controlado pela aplicação, `svg` ou o slot padrão.
2336
2338
  */
2337
2339
  "iconName"?: string;
@@ -2356,7 +2358,7 @@ export namespace Components {
2356
2358
  */
2357
2359
  "label"?: string;
2358
2360
  /**
2359
- * Controla o comportamento de carregamento do ícone. Comportamento: - Padrão (propriedade não definida): carregamento imediato aplicando `noobserver` para evitar problemas de layout shift - `lazy={true}`: ativa o carregamento tardio nativo para imagens em `src` e o observer do Iconify no fallback legado - `lazy={false}`: carregamento imediato **Nota**: O padrão foi alterado para carregamento imediato para resolver problemas de deslocamento de layout que ocorriam quando ícones eram carregados depois do conteúdo inicial. SVG inline e conteúdo em slot não precisam de carregamento tardio, pois já estão disponíveis no DOM.
2361
+ * Controla o comportamento de carregamento do ícone. Comportamento: - Padrão (propriedade não definida): carregamento imediato aplicando `noobserver` para evitar problemas de layout shift - `lazy={true}`: ativa o carregamento tardio nativo para imagens em `src` - `lazy={false}`: carregamento imediato **Nota**: O padrão foi alterado para carregamento imediato para resolver problemas de deslocamento de layout que ocorriam quando ícones eram carregados depois do conteúdo inicial. SVG inline e conteúdo em slot não precisam de carregamento tardio, pois já estão disponíveis no DOM.
2360
2362
  */
2361
2363
  "lazy"?: boolean;
2362
2364
  /**
@@ -2364,7 +2366,8 @@ export namespace Components {
2364
2366
  */
2365
2367
  "rotate"?: IconRotate;
2366
2368
  /**
2367
- * Define explicitamente a origem do ícone. Quando `auto`, o componente prioriza slot, SVG inline e imagem por URL. Iconify fica apenas como fallback de compatibilidade quando nenhuma fonte própria foi informada. Aceita `auto`, `iconify`, `image`, `svg` ou `slot`; valores inválidos usam `auto`.
2369
+ * Define explicitamente a origem do ícone. Quando `auto`, o componente prioriza slot, SVG inline, imagem por URL e o cache local Font Awesome 5 Free. Se `iconName` não estiver no cache, usa Iconify como fallback. `iconify` força essa origem mesmo para nomes presentes no cache. Aceita `auto`, `iconify`, `image`, `svg` ou `slot`; valores inválidos usam `auto`.
2370
+ * @remarks Os componentes do Design System usam identificadores presentes no cache local; Iconify atende nomes ausentes e usos explícitos.
2368
2371
  * @default 'auto'
2369
2372
  */
2370
2373
  "source": IconSource;
@@ -3036,8 +3039,8 @@ export namespace Components {
3036
3039
  * O `br-magic-button` é o botão de ação flutuante (FAB) que destaca a ação primária ou mais frequente da tela.
3037
3040
  * Pode ser exibido apenas com ícone (formato circular) ou expandido com texto descritivo.
3038
3041
  * ```html
3039
- * <br-magic-button icon="fa6-solid:plus" aria-label="Novo item"></br-magic-button>
3040
- * <br-magic-button icon="fa6-solid:plus">Criar documento</br-magic-button>
3042
+ * <br-magic-button icon="fa-solid:plus" aria-label="Novo item"></br-magic-button>
3043
+ * <br-magic-button icon="fa-solid:plus">Criar documento</br-magic-button>
3041
3044
  * ```
3042
3045
  * ### Quando usar
3043
3046
  * - Ação principal e dominante da tela em dispositivos móveis ou interfaces focadas em uma tarefa única.
@@ -3070,7 +3073,7 @@ export namespace Components {
3070
3073
  */
3071
3074
  "density": BrDensity;
3072
3075
  /**
3073
- * Ícone como identificador Iconify (ex.: `fa6-solid:star`) ou nome simples (ex.: `question`, resolvido como `fa6-solid:question` no registro SVG local), renderizado pelo `br-icon`. Para classes CSS (ex.: Font Awesome) ou SVGs personalizados, use o slot `icon`, a forma preferida. Uso descontinuado: classes CSS nesta prop (ex.: `fas fa-star`) não são exibidas no Shadow DOM e geram aviso.
3076
+ * Ícone como identificador Font Awesome 5 Free do cache local (ex.: `fa-solid:star`) ou nome simples (ex.: `question`, resolvido como `fa-solid:question`), renderizado pelo `br-icon`. Para classes CSS (ex.: Font Awesome) ou SVGs personalizados, use o slot `icon`, a forma preferida. Uso descontinuado: classes CSS nesta prop (ex.: `fas fa-star`) não são exibidas no Shadow DOM e geram aviso.
3074
3077
  * @default ''
3075
3078
  */
3076
3079
  "icon": string;
@@ -3389,7 +3392,7 @@ export namespace Components {
3389
3392
  */
3390
3393
  "href": string;
3391
3394
  /**
3392
- * Identificador da rede social. Os ícones oficiais mais comuns são renderizados pelo registro SVG local; use o slot `icon` para uma fonte diferente ou uma classe Font Awesome personalizada.
3395
+ * Nome do ícone Font Awesome 5 Free presente no cache local, sem o prefixo `fa-brands:` (ex.: `facebook-f`). Use o slot `icon` para conteúdo próprio.
3393
3396
  */
3394
3397
  "icon": string;
3395
3398
  /**
@@ -4588,6 +4591,9 @@ export namespace Components {
4588
4591
  * @type {boolean | undefined}
4589
4592
  */
4590
4593
  "showSearchIcon"?: boolean;
4594
+ /**
4595
+ * Sincroniza o estado acessível do campo com o select orquestrador.
4596
+ */
4591
4597
  "syncCombobox": (state: SelectComboboxState) => Promise<void>;
4592
4598
  /**
4593
4599
  * Valor textual apresentado no input.
@@ -5119,8 +5125,8 @@ export namespace Components {
5119
5125
  "step": number;
5120
5126
  /**
5121
5127
  * Lista de passos customizados para o slider. Cada passo pode definir `value`, `label` (texto exibido no tooltip e/ou abaixo da trilha) e `icon` (nome do ícone exibido abaixo da marcação do passo). Aceita array de objetos `SliderStep[]`, array de strings `string[]`, ou string JSON.
5122
- * @example ```html <br-slider steps='[{"value": 1, "label": "Péssimo", "icon": "fa-solid:face-frown"}, {"value": 5, "label": "Excelente", "icon": "fa-solid:face-laugh"}]' ></br-slider> ```
5123
- * @example ```js const slider = document.querySelector('br-slider'); slider.steps = [ { value: 1, label: 'Péssimo', icon: 'fa-solid:face-frown' }, { value: 5, label: 'Excelente', icon: 'fa-solid:face-laugh' }, ]; ```
5128
+ * @example ```html <br-slider steps='[{"value": 1, "label": "Péssimo", "icon": "fa-solid:frown"}, {"value": 5, "label": "Excelente", "icon": "fa-solid:laugh"}]' ></br-slider> ```
5129
+ * @example ```js const slider = document.querySelector('br-slider'); slider.steps = [ { value: 1, label: 'Péssimo', icon: 'fa-solid:frown' }, { value: 5, label: 'Excelente', icon: 'fa-solid:laugh' }, ]; ```
5124
5130
  */
5125
5131
  "steps"?: SliderStep[] | string;
5126
5132
  /**
@@ -5128,7 +5134,7 @@ export namespace Components {
5128
5134
  */
5129
5135
  "thumbEndIcon"?: string;
5130
5136
  /**
5131
- * Nome do ícone a ser exibido no interior da alça de controle (thumb). No modo `range`, aplica-se a ambas as alças caso `thumbStartIcon` ou `thumbEndIcon` não sejam especificados. Exemplo: 'fa-solid:arrows-left-right', 'fa-solid:circle'.
5137
+ * Nome do ícone a ser exibido no interior da alça de controle (thumb). No modo `range`, aplica-se a ambas as alças caso `thumbStartIcon` ou `thumbEndIcon` não sejam especificados. Exemplo: 'fa-solid:arrows-alt-h', 'fa-solid:circle'.
5132
5138
  */
5133
5139
  "thumbIcon"?: string;
5134
5140
  /**
@@ -5545,7 +5551,7 @@ export namespace Components {
5545
5551
  */
5546
5552
  "counter": string;
5547
5553
  /**
5548
- * Ícone da aba como identificador Iconify (ex.: `fa6-solid:bell`), renderizado em SVG pelo `br-icon`. Para ícones por classe CSS (ex.: Font Awesome), use o slot `icon-{id}` do `br-tab`, a forma preferida: `<i slot="icon-avisos" class="fas fa-bell" aria-hidden="true"></i>`. O slot tem precedência sobre esta prop. Uso descontinuado: classes CSS nesta prop (ex.: `fas fa-bell`) não são exibidas no Shadow DOM, geram aviso e devem migrar para o slot `icon-{id}`. Identificadores Iconify continuam suportados.
5554
+ * Ícone da aba como identificador Font Awesome 5 Free presente no cache local (ex.: `fa-solid:bell`), renderizado pelo `br-icon`. Para ícones por classe CSS (ex.: Font Awesome), use o slot `icon-{id}` do `br-tab`, a forma preferida: `<i slot="icon-avisos" class="fas fa-bell" aria-hidden="true"></i>`. O slot tem precedência sobre esta prop. Uso descontinuado: classes CSS nesta prop (ex.: `fas fa-bell`) não são exibidas no Shadow DOM, geram aviso e devem migrar para o slot `icon-{id}`. Nomes fora do cache local não são carregados remotamente.
5549
5555
  */
5550
5556
  "icon": string;
5551
5557
  /**
@@ -5581,211 +5587,627 @@ export namespace Components {
5581
5587
  "tabItemTitle": string;
5582
5588
  }
5583
5589
  /**
5584
- * O `br-table` estrutura e exibe conjuntos de dados organizados em linhas e colunas.
5585
- * Estruture a tabela usando os subcomponentes `br-table-header`, `br-table-body`, `br-table-row` e `br-table-cell`. Para exibir um indicador de carregamento durante atualizações assíncronas, use a propriedade `loading`.
5586
- * ```html
5587
- * <br-table>
5588
- * <br-table-header slot="header">
5589
- * <br-table-row>
5590
- * <br-table-header-cell>Nome</br-table-header-cell>
5591
- * <br-table-header-cell>Cargo</br-table-header-cell>
5592
- * </br-table-row>
5593
- * </br-table-header>
5594
- * <br-table-body slot="body">
5595
- * <br-table-row>
5596
- * <br-table-cell>Maria Silva</br-table-cell>
5597
- * <br-table-cell>Analista</br-table-cell>
5598
- * </br-table-row>
5599
- * </br-table-body>
5600
- * </br-table>
5601
- * ```
5602
- * ### Quando usar
5603
- * - Dados bidimensionais com cabeçalhos de coluna e necessidades de ordenação ou comparação.
5604
- * ### Quando evitar
5605
- * - Listas simples de itens lineares: use `br-list`.
5606
- * - Agrupamento de informações de um único registro: use `br-card`.
5607
- * Consulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/table?tab=designer).
5608
- * @category Dados, Conteúdo
5609
- * @status stable
5610
- * @Slot header: Área para inclusão do subcomponente br-table-header
5611
- * @Slot body: Área para inclusão do subcomponente br-table-body
5590
+ * ## Design System
5591
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
5592
+ * Apresenta e permite interagir com dados tabulares; não deve ser usada para
5593
+ * organizar layout ou conteúdo que não seja tabular. Recebe o cabeçalho e o corpo
5594
+ * pelos slots `header` e `body`, compostos por `br-table-header` e
5595
+ * `br-table-header-cell`, e por `br-table-body`, `br-table-row` e `br-table-cell`.
5596
+ * Orquestra a grade, a acessibilidade, a ordenação, a seleção e a expansão das
5597
+ * linhas. A barra de ações é gerenciada pela tabela; `br-table-footer` é
5598
+ * renderizado quando a paginação está habilitada. As propriedades de célula
5599
+ * seguem, quando aplicável, a precedência: célula, linha, coluna, tabela e valor
5600
+ * padrão. Cabeçalhos multinível usam várias linhas em `br-table-header` com
5601
+ * `colSpan`/`rowSpan`. Linhas contíguas com `rowGroup` formam unidades de ordenação,
5602
+ * paginação e virtualização; a seleção permanece individual. Células com `rowSpan`
5603
+ * não atravessam os limites do grupo. Prefira tabelas simples quando possível.
5604
+ * @cssprop --br-table-loading-opacity - Opacidade do conteúdo durante o carregamento. Padrão: 0.5.
5605
+ * @fires brTableActionClick - Quando uma ação pública é acionada.
5606
+ * @fires brTableSelectionChange - Quando o conjunto selecionado muda.
5607
+ * @fires brTableRowExpansionChange - Quando uma linha expande ou recolhe.
5608
+ * @fires brTableSortRequest - Antes de aplicar uma solicitação de ordenação.
5609
+ * @fires brTableSortChange - Quando os critérios de ordenação mudam.
5610
+ * @fires brTablePageChange - Quando o consumidor solicita outra página pela paginação do rodapé.
5611
+ * @fires brTablePageSizeChange - Quando o consumidor solicita outra quantidade de itens por página.
5612
+ * @fires brTableSearch - Quando a busca é enviada ou fechada.
5612
5613
  */
5613
5614
  interface BrTable {
5614
5615
  /**
5615
- * Ativa divisores verticais. Quando informada, tem precedência sobre `hasColumnDivider`.
5616
+ * Limite padrão de ações exibidas em cada célula.
5617
+ * @default 4
5618
+ */
5619
+ "cellActionsLimit": number;
5620
+ /**
5621
+ * Limpa a seleção de todas as linhas elegíveis.
5622
+ */
5623
+ "clearSelection": () => Promise<void>;
5624
+ /**
5625
+ * Recolhe todas as linhas que estiverem expandidas.
5626
+ */
5627
+ "collapseAllRows": () => Promise<void>;
5628
+ /**
5629
+ * Recolhe uma linha do corpo.
5630
+ * @param rowIndex Índice da linha, começando em zero.
5631
+ */
5632
+ "collapseRow": (rowIndex: number) => Promise<void>;
5633
+ /**
5634
+ * Habilita divisores entre colunas.
5635
+ * @remarks Quando informado, tem precedência sobre `hasColumnDivider`, inclusive quando `false`. Na ausência de ambos, os divisores ficam desabilitados.
5616
5636
  */
5617
5637
  "columnDivider"?: boolean;
5618
5638
  /**
5619
- * Largura global aplicada a todas as colunas.
5620
- * @remarks Valores aceitos: - fill - content - ${number}px - ${number}fr Observação: - `columnWidth` não define o comportamento de `overflow`, mas pode interferir na sua percepção ao alterar o espaço disponível da coluna. - `content` (`max-content`) tende a expandir a coluna e reduzir casos visíveis de truncagem. - `fill` (`1fr`) tende a evidenciar truncagem quando o espaço horizontal é insuficiente.
5639
+ * Largura padrão utilizada pelas colunas sem configuração própria.
5621
5640
  * @default fill
5622
- * @example ```html <br-table column-width="160px"></br-table> ```
5623
5641
  */
5624
5642
  "columnWidth"?: ColumnWidth;
5625
5643
  /**
5626
- * Define a densidade visual do componente. - `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento). - `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos. - `large`: Baixa densidade (componente maior, mais espaçamento e altura). Valores inválidos usam `medium`. Quando omitida, a densidade média é aplicada ao token.
5644
+ * Limite usado para decidir quando agrupar ações contextuais em um menu. Quando o número de ações excede esse valor, as ações são agrupadas no dropdown (atualmente todas são movidas para o menu colapsado).
5645
+ * @default 4
5646
+ */
5647
+ "contextualActionsLimit": number;
5648
+ /**
5649
+ * Página atual exibida pela paginação (1-indexada).
5650
+ * @remarks Atualizada internamente quando `TableDataStore` já cobre a página solicitada. Utilize como valor inicial ou para navegar programaticamente para outra página.
5651
+ * @default 1
5652
+ */
5653
+ "currentPage": number;
5654
+ /**
5655
+ * Densidade visual aplicada aos espaçamentos da tabela.
5656
+ * @remarks Quando omitida, a propriedade permanece `undefined` e a densidade visual média é aplicada aos tokens da tabela.
5657
+ * @default undefined
5627
5658
  */
5628
5659
  "density"?: TableDensity;
5629
5660
  /**
5630
- * Define o estilo visual dos divisores.
5631
- * @remarks Valores aceitos: - solid - dashed
5661
+ * Estilo aplicado aos divisores habilitados.
5632
5662
  * @default solid
5633
5663
  */
5634
5664
  "dividerStyle"?: TableDividerStyle;
5635
5665
  /**
5636
- * Ativa divisores verticais entre colunas.
5666
+ * Expande uma linha elegível do corpo.
5667
+ * @param rowIndex Índice da linha, começando em zero.
5668
+ */
5669
+ "expandRow": (rowIndex: number) => Promise<void>;
5670
+ /**
5671
+ * Retorna as linhas atualmente selecionadas.
5672
+ * @returns Elementos `br-table-row` selecionados no corpo.
5673
+ */
5674
+ "getSelectedRows": () => Promise<HTMLBrTableRowElement[]>;
5675
+ /**
5676
+ * Retorna o estado atual de ordenação aplicado na tabela.
5677
+ */
5678
+ "getSorting": () => Promise<TableSortState[]>;
5679
+ /**
5680
+ * Habilita divisores entre colunas quando `columnDivider` não é informado.
5681
+ * @deprecated Use `columnDivider` instead.
5637
5682
  * @default false
5638
- * @deprecated Use `columnDivider`.
5639
5683
  */
5640
5684
  "hasColumnDivider"?: boolean;
5641
5685
  /**
5642
- * Ativa divisores horizontais entre linhas.
5686
+ * Habilita a paginação da tabela, renderizando `br-table-footer` internamente.
5687
+ * @remarks A paginação define o subconjunto lógico disponível para a lista virtual. `pageSize` conta linhas independentes ou grupos completos, e `visibleRows` controla quantas delas cabem simultaneamente na viewport. Quando os dados completos ainda não estão disponíveis localmente (paginação por API), informe `totalItems` e forneça o subconjunto correspondente após `brTablePageChange`.
5688
+ * @default false
5689
+ */
5690
+ "hasPagination": boolean;
5691
+ /**
5692
+ * Habilita divisores entre linhas quando `rowDivider` não é informado.
5693
+ * @deprecated Use `rowDivider` instead.
5643
5694
  * @default false
5644
- * @deprecated Use `rowDivider`.
5645
5695
  */
5646
5696
  "hasRowDivider"?: boolean;
5647
5697
  /**
5648
- * Define o alinhamento horizontal do conteúdo das células.
5649
- * @remarks Valores aceitos: - start - center - end
5698
+ * Habilita a coluna de expansão de linhas.
5699
+ * @default false
5700
+ */
5701
+ "hasRowExpansion": boolean;
5702
+ /**
5703
+ * Habilita o realce visual das linhas ao passar o ponteiro.
5704
+ * @default false
5705
+ */
5706
+ "hasRowHover": boolean;
5707
+ /**
5708
+ * Habilita a coluna de seleção de linhas.
5709
+ * @default false
5710
+ */
5711
+ "hasRowSelection": boolean;
5712
+ /**
5713
+ * Disponibiliza a interface de busca, sem filtrar ou destacar o conteúdo. A aplicação recebe `brTableSearch` e atualiza os dados local ou remotamente.
5714
+ * @default false
5715
+ */
5716
+ "hasSearch": boolean;
5717
+ /**
5718
+ * Título apresentado na barra principal.
5719
+ * @default null
5720
+ */
5721
+ "heading"?: string;
5722
+ /**
5723
+ * Limite usado para decidir quando agrupar ações globais em um menu. Quando o número de ações excede esse valor, as ações são agrupadas no dropdown (atualmente todas são movidas para o menu colapsado).
5724
+ * @default 4
5725
+ */
5726
+ "headingActionsLimit": number;
5727
+ /**
5728
+ * Quantidade de itens lógicos usada somente para calcular a altura da viewport. Cada grupo contíguo conta como um item; a altura inclui todas as linhas físicas que compõem os grupos reservados. Não altera paginação, rolagem ou virtualização. Quando omitida, acompanha `visibleRows`.
5729
+ * @default visibleRows
5730
+ */
5731
+ "heightRows"?: number;
5732
+ /**
5733
+ * Alinhamento horizontal padrão da tabela.
5650
5734
  * @default start
5651
5735
  */
5652
5736
  "horizontalAlignment"?: TableAlignment;
5653
5737
  /**
5654
- * Indica que as linhas estão sendo atualizadas pelo consumidor. O componente mantém o conteúdo anterior, aplica `aria-busy="true"` e exibe o slot `loading` sobre os dados; transporte, erro e substituição das linhas ficam sob responsabilidade da aplicação. A prop pode ser alterada diretamente ou pelos métodos `startLoading()` e `stopLoading()`.
5738
+ * Indica que as linhas estão sendo atualizadas pelo consumidor.
5739
+ * @remarks Mantém os dados anteriores, reduz sua opacidade e exibe o slot `loading` em um painel central com scrim sobre toda a tabela, incluindo barra de ações e paginação. O scrim fica limitado ao componente. Reflete o atributo `loading` e pode ser alterada diretamente ou pelos métodos `startLoading()` e `stopLoading()`. Não bloqueia o teclado nem gerencia requisições, erros ou substituição dos dados.
5655
5740
  * @default false
5656
5741
  */
5657
5742
  "loading": boolean;
5658
5743
  /**
5659
- * Define o comportamento de overflow para as células.
5660
- * @remarks Valores aceitos: - truncate - wrap Observação: - O overflow é independente de `columnWidth`. - Com `columnWidth="content"`, a coluna tende a crescer com o conteúdo (`max-content`), o que pode reduzir casos visíveis de truncagem. - Com `columnWidth="fill"`, a coluna ocupa o espaço disponível (`1fr`), então a truncagem tende a ficar mais evidente quando não há espaço suficiente.
5744
+ * Texto do tooltip do botão de ações agrupadas da barra contextual. Quando vazio ou composto apenas por espaços, usa "Mais ações". Não altera o nome acessível do botão nem os rótulos do menu.
5745
+ * @default 'Mais ações'
5746
+ */
5747
+ "moreActionsContextualLabel": string;
5748
+ /**
5749
+ * Texto do tooltip do botão de ações agrupadas na barra de título. Quando vazio ou composto apenas por espaços, usa "Mais ações". Não altera o nome acessível do botão nem os rótulos do menu.
5750
+ * @default 'Mais ações'
5751
+ */
5752
+ "moreActionsHeadingLabel": string;
5753
+ /**
5754
+ * Texto completo do tooltip dos botões de ações agrupadas nas células. Quando informado, prevalece sobre `moreActionsLabel` de cada célula. Quando omitido, a célula usa seu valor local ou "Mais ações". Valores vazios ou compostos apenas por espaços usam "Mais ações". Aceita texto simples por atributo ou propriedade. Reflete o valor no atributo `more-actions-label` para sincronizar as células.
5755
+ * @default undefined
5756
+ */
5757
+ "moreActionsLabel"?: string;
5758
+ /**
5759
+ * Estratégia padrão para conteúdos que excedem a célula.
5661
5760
  * @default wrap
5662
5761
  */
5663
5762
  "overflow"?: TableOverflow;
5664
5763
  /**
5665
- * Ativa divisores horizontais. Quando informada, tem precedência sobre `hasRowDivider`.
5764
+ * Quantidade de itens pertencentes a cada página (linhas independentes ou grupos completos).
5765
+ * @remarks Quando omitida, utiliza `visibleRows` como fallback para manter compatibilidade com a API anterior. Defina um valor maior que `visibleRows` para que paginação e virtualização operem simultaneamente.
5766
+ */
5767
+ "pageSize"?: number;
5768
+ /**
5769
+ * Opções disponíveis de itens por página no seletor da paginação.
5770
+ * @default [10, 20, 30]
5771
+ */
5772
+ "pageSizeOptions": number[];
5773
+ /**
5774
+ * Habilita divisores entre linhas.
5775
+ * @remarks Quando informado, tem precedência sobre `hasRowDivider`, inclusive quando `false`. Na ausência de ambos, os divisores ficam desabilitados.
5666
5776
  */
5667
5777
  "rowDivider"?: boolean;
5668
5778
  /**
5669
- * Inicia o estado de carregamento da tabela.
5779
+ * Seleciona todas as linhas elegíveis.
5780
+ */
5781
+ "selectAllRows": () => Promise<void>;
5782
+ /**
5783
+ * Substitui os dados lógicos da tabela e reconstrói seus subcomponentes.
5784
+ * @remarks Esta é a mesma estrutura interna utilizada após a ingestão dos slots.
5785
+ * @param data Colunas, linhas e ações que formarão a tabela.
5786
+ * @example ```js const table = document.querySelector('br-table'); await table.setData({ columns: [], headerRows: [ [{ content: 'Unidade', rowSpan: 2 }, { content: 'Equipe', colSpan: 2 }], [{ content: 'Nome', sortable: true }, { content: 'Cargo', sortable: true }], ], rows: [ { rowGroup: 'brasilia', cells: [ { content: 'Brasília', rowSpan: 2, rowHeader: true }, { content: 'Ana' }, { content: 'Analista' }, ] }, { rowGroup: 'brasilia', cells: [{ content: 'Carlos' }, { content: 'Técnico' }] }, ], }); ```
5787
+ */
5788
+ "setData": (data: TableData) => Promise<void>;
5789
+ /**
5790
+ * Força a apresentação da barra contextual.
5791
+ * @default false
5792
+ */
5793
+ "showContextualBar": boolean;
5794
+ /**
5795
+ * Define se a tabela aceita uma única coluna ordenada ou múltiplas colunas. No modo `multi`, a prioridade é sempre a ordem visual da esquerda para a direita.
5796
+ * @default single
5797
+ */
5798
+ "sortMode": TableSortMode;
5799
+ /**
5800
+ * Define se a tabela ordena as linhas localmente ou deixa a aplicação aplicar a ordenação solicitada. Em `manual`, a tabela mantém os indicadores e emite `brTableSortChange`, mas não reordena as linhas; use `setData()` para fornecer os resultados customizados ou remotos. Valores não reconhecidos usam a estratégia local.
5801
+ * @default local
5802
+ */
5803
+ "sortStrategy": TableSortStrategy;
5804
+ /**
5805
+ * Inicia o estado visual de carregamento sem alterar os dados da tabela.
5670
5806
  */
5671
5807
  "startLoading": () => Promise<void>;
5672
5808
  /**
5673
- * Interrompe o estado de carregamento da tabela.
5809
+ * Interrompe o estado visual de carregamento sem alterar os dados da tabela.
5674
5810
  */
5675
5811
  "stopLoading": () => Promise<void>;
5676
5812
  /**
5677
5813
  * Define o modo de resolução do tooltip nas células da tabela.
5678
- * @remarks Valores aceitos: - inherit - enabled - disabled
5679
5814
  * @default disabled (valor efetivo)
5680
5815
  */
5681
5816
  "tooltipMode"?: TableTooltipMode;
5682
5817
  /**
5683
- * Define o estado semântico do tooltip nas células da tabela.
5684
- * @remarks Valores aceitos: - info - warning - danger - success
5818
+ * Estado visual padrão dos tooltips.
5685
5819
  * @default info
5686
5820
  */
5687
5821
  "tooltipState"?: TableTooltipState;
5688
5822
  /**
5689
- * Define o alinhamento vertical do conteúdo das células.
5690
- * @remarks Valores aceitos: - start - center - end
5823
+ * Quantidade total de itens do conjunto de dados.
5824
+ * @remarks Necessário apenas quando `TableDataStore` não contém o conjunto completo (paginação por API). Quando omitido, é derivado automaticamente da quantidade de linhas independentes e grupos já presentes na tabela.
5825
+ */
5826
+ "totalItems"?: number;
5827
+ /**
5828
+ * Alinhamento vertical padrão da tabela.
5691
5829
  * @default start
5692
5830
  */
5693
5831
  "verticalAlignment"?: TableAlignment;
5832
+ /**
5833
+ * Altura adicional estimada para conteúdo expandido ainda não medido.
5834
+ * @default 240
5835
+ */
5836
+ "virtualExpandedContentHeight": number;
5837
+ /**
5838
+ * Quantidade de linhas de dados visíveis simultaneamente na viewport.
5839
+ * @remarks Não limita o conjunto de dados nem realiza paginação. A altura da região de scroll é derivada desta quantidade e da densidade atual. Mesmo com `hasPagination` habilitado, esta propriedade continua definindo apenas a capacidade visual da viewport; `pageSize` define o tamanho lógico da página.
5840
+ * @default 10
5841
+ */
5842
+ "visibleRows": number;
5843
+ }
5844
+ /**
5845
+ * ## Design System
5846
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
5847
+ * Representa uma ação global, contextual ou associada a uma linha da tabela.
5848
+ * O contexto é inferido pelo slot e pela posição do componente na árvore.
5849
+ * Para executar funções a partir das ações, ouça o evento `brTableActionClick`:
5850
+ * ```html
5851
+ * <!-- 1. Ouvindo diretamente na ação -->
5852
+ * <br-table-action id="btn-filtro" label="Filtros" icon-name="fa-solid:filter"></br-table-action>
5853
+ * <script>
5854
+ * document.getElementById('btn-filtro').addEventListener('brTableActionClick', () => {
5855
+ * executarFiltros();
5856
+ * });
5857
+ * </script>
5858
+ * <!-- 2. Ouvindo na tabela (recomendado para ações diretas e colapsadas em menu) -->
5859
+ * <script>
5860
+ * table.addEventListener('brTableActionClick', (event) => {
5861
+ * const { type, label, rowIndex } = event.detail;
5862
+ * if (type === 'row') executarAcaoLinha(label, rowIndex);
5863
+ * else if (type === 'global') executarAcaoGlobal(label);
5864
+ * });
5865
+ * </script>
5866
+ * ```
5867
+ * @fires brTableActionClick - Quando o usuário aciona o botão.
5868
+ */
5869
+ interface BrTableAction {
5870
+ /**
5871
+ * Rótulo acessível. Quando omitido, utiliza `label`.
5872
+ * @default null
5873
+ */
5874
+ "ariaLabel": string | null;
5875
+ /**
5876
+ * Densidade visual aplicada ao botão interno da ação.
5877
+ */
5878
+ "density"?: TableDensity;
5879
+ /**
5880
+ * Nome do ícone exibido pelo botão.
5881
+ * @default null
5882
+ */
5883
+ "iconName": string | null;
5884
+ /**
5885
+ * Texto visível e identificação semântica da ação.
5886
+ * @default null
5887
+ */
5888
+ "label": string | null;
5889
+ }
5890
+ /**
5891
+ * ## Design System
5892
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
5893
+ * Exibe o título, as ações globais e as ações contextuais da tabela.
5894
+ * Ações excedentes são agrupadas automaticamente em um menu.
5895
+ * Compõe `br-table`, que configura a barra automaticamente. Também pode ser usada
5896
+ * diretamente para compor uma barra de ações. Quando `hasSearch` está ativo,
5897
+ * solicita a busca à aplicação, sem filtrar ou destacar os dados.
5898
+ */
5899
+ interface BrTableBar {
5900
+ /**
5901
+ * Limite usado para decidir quando agrupar ações contextuais em um menu. Quando o número de ações excede esse valor, as ações são agrupadas no dropdown (atualmente todas são movidas para o menu colapsado).
5902
+ * @default 4
5903
+ */
5904
+ "contextualActionsLimit": number;
5905
+ /**
5906
+ * Densidade visual aplicada aos controles internos da barra.
5907
+ */
5908
+ "density"?: TableDensity;
5909
+ /**
5910
+ * Indica se o slot de ações contextuais possui conteúdo.
5911
+ * @default false
5912
+ */
5913
+ "hasContextualActionsContent": boolean;
5914
+ /**
5915
+ * Indica se o slot de ações globais possui conteúdo.
5916
+ * @default false
5917
+ */
5918
+ "hasGlobalActionsContent": boolean;
5919
+ /**
5920
+ * Disponibiliza a interface de busca controlada pela aplicação.
5921
+ * @default false
5922
+ */
5923
+ "hasSearch": boolean;
5924
+ /**
5925
+ * Título apresentado na barra principal.
5926
+ * @default ''
5927
+ */
5928
+ "heading": string;
5929
+ /**
5930
+ * Limite usado para decidir quando agrupar ações em um menu. Quando o número de ações excede esse valor, as ações são agrupadas no dropdown (atualmente todas são movidas para o menu colapsado).
5931
+ * @default 4
5932
+ */
5933
+ "headingActionsLimit": number;
5934
+ /**
5935
+ * Número de linhas atualmente selecionadas.
5936
+ * @default 0
5937
+ */
5938
+ "selectedRowsCount": number;
5939
+ /**
5940
+ * Força a apresentação da barra contextual mesmo sem seleção.
5941
+ * @default false
5942
+ */
5943
+ "showContextualBar": boolean;
5694
5944
  }
5695
5945
  /**
5696
- * Corpo de dados (`<tbody>`) da tabela. Use no slot `body` do `br-table`.
5697
- * Agrupa as linhas `br-table-row` contendo as células de dados `br-table-cell`.
5946
+ * ## Design System
5947
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
5948
+ * Agrupa semanticamente as linhas que compõem o corpo de `br-table`.
5949
+ * É uma peça declarativa do slot `body`; recebe `br-table-row` e entrega ao
5950
+ * orquestrador a seleção, ordenação e materialização virtual. Os contêineres
5951
+ * visuais dos grupos são internos, montados pela tabela e não devem ser
5952
+ * instanciados pelo consumidor. Use o componente na composição de `br-table`.
5698
5953
  */
5699
5954
  interface BrTableBody {
5700
5955
  }
5701
5956
  /**
5702
- * Célula de dados (`<td>`) da tabela. Use dentro de um `br-table-row` no corpo da tabela.
5703
- * Coloque o conteúdo do registro no slot padrão.
5957
+ * ## Design System
5958
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
5959
+ * Representa uma célula de dados, com suporte a alinhamento, overflow,
5960
+ * tooltip e agrupamento automático de ações excedentes. Compõe `br-table-row`
5961
+ * dentro do corpo de `br-table`, que coordena posição, interação e herança.
5962
+ * Use `rowSpan` dentro de um grupo contíguo de linhas e `rowHeader` para seu
5963
+ * rótulo compartilhado; evite uso avulso fora da composição da tabela.
5964
+ * @fires brAlignmentChange - Quando um alinhamento específico muda.
5965
+ * @fires brOverflowChange - Quando a estratégia de overflow muda.
5704
5966
  */
5705
5967
  interface BrTableCell {
5706
5968
  /**
5707
- * Define o alinhamento horizontal do conteúdo dentro da célula.
5969
+ * Densidade visual aplicada ao trigger de ações agrupadas.
5970
+ */
5971
+ "actionDensity"?: TableDensity;
5972
+ /**
5973
+ * Limite local de ações exibidas diretamente.
5974
+ * @default null
5975
+ */
5976
+ "cellActionsLimit"?: number;
5977
+ /**
5978
+ * Quantidade de colunas ocupadas. Inteiro entre 1 e 1000; valores inválidos usam 1.
5979
+ * @default 1
5980
+ */
5981
+ "colSpan": number;
5982
+ /**
5983
+ * Retorna a altura renderizada da superfície visual desta célula, em pixels.
5984
+ * @returns Altura da superfície da célula; zero se ela ainda não estiver renderizada.
5985
+ */
5986
+ "getMeasuredHeight": () => Promise<number>;
5987
+ /**
5988
+ * Alinhamento horizontal específico da célula. Quando omitido, herda da linha, coluna ou tabela, nessa ordem.
5989
+ * @default undefined
5708
5990
  */
5709
5991
  "horizontalAlignment"?: TableAlignment;
5710
5992
  /**
5711
- * Define se o conteúdo dentro da célula deve ser truncado, permitindo a herança dessa configuração para as células filhas com base no valor definido.
5993
+ * Texto completo do tooltip do botão de ações agrupadas desta célula. A propriedade `moreActionsLabel` de `br-table` prevalece quando informada. Valores vazios ou compostos apenas por espaços usam "Mais ações". Não altera o nome acessível do botão nem os rótulos das ações. Aceita texto simples por atributo ou propriedade, sem reflexão.
5994
+ * @default 'Mais ações'
5995
+ */
5996
+ "moreActionsLabel": string;
5997
+ /**
5998
+ * Estratégia de overflow específica da célula. Quando omitida, herda da linha, coluna ou tabela, nessa ordem.
5999
+ * @default undefined
5712
6000
  */
5713
6001
  "overflow"?: TableOverflow;
5714
6002
  /**
5715
- * Define o modo de resolução do tooltip nesta célula.
6003
+ * Identifica um cabeçalho de linha, inclusive rótulos compartilhados por um grupo.
6004
+ * @default false
6005
+ */
6006
+ "rowHeader": boolean;
6007
+ /**
6008
+ * Quantidade de linhas ocupadas no cabeçalho ou grupo. Limitada às linhas disponíveis; aceita inteiros de 1 a 1000 e valores inválidos usam 1.
6009
+ * @default 1
6010
+ */
6011
+ "rowSpan": number;
6012
+ /**
6013
+ * Valor utilizado pela ordenação da coluna. Quando omitido, a tabela usa o texto renderizado da célula.
6014
+ * @default null
6015
+ */
6016
+ "sortValue"?: string | number;
6017
+ /**
6018
+ * Modo de exibição do tooltip da célula. Quando omitido, herda da linha, coluna ou tabela, nessa ordem. No modo `enabled`, exibe o conteúdo somente quando estiver truncado na largura disponível.
6019
+ * @default undefined
5716
6020
  */
5717
6021
  "tooltipMode"?: TableTooltipMode;
5718
6022
  /**
5719
- * Define o estado semântico do tooltip nesta célula.
6023
+ * Estado visual do tooltip da célula. Quando omitido, herda da linha, coluna ou tabela, nessa ordem.
6024
+ * @default undefined
5720
6025
  */
5721
6026
  "tooltipState"?: TableTooltipState;
5722
6027
  /**
5723
- * Define o alinhamento vertical do conteúdo dentro da célula.
6028
+ * Alinhamento vertical específico da célula. Quando omitido, herda da linha, coluna ou tabela, nessa ordem.
6029
+ * @default undefined
5724
6030
  */
5725
6031
  "verticalAlignment"?: TableAlignment;
5726
6032
  }
5727
6033
  /**
5728
- * Cabeçalho da tabela (`br-table`). Use no slot `header`.
5729
- * Agrupa as linhas `br-table-row` com as células de cabeçalho `br-table-header-cell`.
6034
+ * Para a documentação completa, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
6035
+ * Renderiza a paginação da tabela quando `hasPagination` está habilitado em `br-table`.
6036
+ * Orquestrado internamente pela tabela; não deve ser inserido diretamente pelo consumidor.
6037
+ */
6038
+ interface BrTableFooter {
6039
+ /**
6040
+ * Página atual exibida pela paginação (1-indexada).
6041
+ * @default 1
6042
+ */
6043
+ "currentPage": number;
6044
+ /**
6045
+ * Densidade visual herdada da tabela.
6046
+ * @default 'medium'
6047
+ */
6048
+ "density": TableFooterDensity;
6049
+ /**
6050
+ * Indica que a área de dados da tabela possui rolagem.
6051
+ * @default false
6052
+ */
6053
+ "hasScroll": boolean;
6054
+ /**
6055
+ * Quantidade de itens exibidos por página.
6056
+ * @default 10
6057
+ */
6058
+ "pageSize": number;
6059
+ /**
6060
+ * Opções disponíveis de itens por página.
6061
+ * @default [10, 20, 30]
6062
+ */
6063
+ "pageSizeOptions": number[];
6064
+ /**
6065
+ * Quantidade total de itens do conjunto de dados.
6066
+ * @default 0
6067
+ */
6068
+ "totalItems": number;
6069
+ }
6070
+ /**
6071
+ * ## Design System
6072
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
6073
+ * Agrupa as linhas de cabeçalho de `br-table`, que as posiciona em uma grade.
6074
+ * Use uma linha para tabelas simples e múltiplas linhas com `colSpan`/`rowSpan`
6075
+ * em `br-table-header-cell` para hierarquias de colunas. É uma peça declarativa
6076
+ * do slot `header`, usada com o orquestrador; não realiza ordenação avulsa.
5730
6077
  */
5731
6078
  interface BrTableHeader {
5732
6079
  }
5733
6080
  /**
5734
- * Célula de cabeçalho (`<th>`) da tabela. Use dentro de um `br-table-row` no cabeçalho.
5735
- * Coloque o título da coluna no slot padrão. Para habilitar ordenação, ative `sortable`.
6081
+ * ## Design System
6082
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
6083
+ * Define o conteúdo e as propriedades herdáveis de uma coluna de `br-table`.
6084
+ * Compõe as linhas de `br-table-header` no slot `header`; não deve ser usada
6085
+ * avulsa. `colSpan` e `rowSpan` representam grupos e níveis do cabeçalho.
6086
+ * Somente folhas que ocupam uma coluna podem ordenar os dados.
6087
+ * Também exibe tooltip quando o conteúdo truncado requer informação adicional.
6088
+ * @fires brColumnWidthChange - Quando a largura declarada muda.
6089
+ * @fires brAlignmentChange - Quando um alinhamento da coluna muda.
6090
+ * @fires brOverflowChange - Quando a estratégia de overflow muda.
5736
6091
  */
5737
6092
  interface BrTableHeaderCell {
5738
6093
  /**
5739
- * Define a largura da coluna. Aceita `fill`, `content`, larguras positivas em `px` ou frações positivas em `fr`. Valores inválidos usam o fallback da tabela.
5740
- * @example ```html <br-table-header-cell column-width="2fr">Descrição</br-table-header-cell> ```
6094
+ * Quantidade de colunas ocupadas. Inteiro entre 1 e 1000; valores inválidos usam 1.
6095
+ * @default 1
6096
+ */
6097
+ "colSpan": number;
6098
+ /**
6099
+ * Largura semântica ou CSS aplicada à coluna. Quando omitida, herda da tabela.
6100
+ * @default undefined
5741
6101
  */
5742
6102
  "columnWidth"?: ColumnWidth;
5743
6103
  /**
5744
- * Define o alinhamento horizontal do conteúdo dentro da célula de cabeçalho, permitindo a herança de alinhamento para as células filhas com base no valor definido.
6104
+ * Alinhamento horizontal herdado pelas células da coluna. Quando omitido, o cabeçalho herda da linha ou tabela, nessa ordem.
6105
+ * @default undefined
5745
6106
  */
5746
6107
  "horizontalAlignment"?: TableAlignment;
5747
6108
  /**
5748
- * Define se o conteúdo dentro da célula de cabeçalho deve ser truncado, permitindo a herança dessa configuração para as células filhas com base no valor definido.
6109
+ * Estratégia de overflow herdada pelas células da coluna. Quando omitida, o cabeçalho herda da linha ou tabela, nessa ordem.
6110
+ * @default undefined
5749
6111
  */
5750
6112
  "overflow"?: TableOverflow;
5751
6113
  /**
5752
- * Define o modo de resolução do tooltip nesta coluna/célula de cabeçalho.
6114
+ * Quantidade de linhas ocupadas no cabeçalho ou grupo. Limitada às linhas disponíveis; aceita inteiros de 1 a 1000 e valores inválidos usam 1.
6115
+ * @default 1
6116
+ */
6117
+ "rowSpan": number;
6118
+ /**
6119
+ * Estado atual de ordenação controlado por `br-table`.
6120
+ */
6121
+ "sortDirection"?: TableSortDirection;
6122
+ /**
6123
+ * Habilita a ordenação desta coluna.
6124
+ * @default false
6125
+ */
6126
+ "sortable": boolean;
6127
+ /**
6128
+ * Modo de exibição herdado pelos tooltips da coluna. Quando omitido ou definido como inherit, o cabeçalho herda da linha ou tabela, nessa ordem.
6129
+ * @default undefined
5753
6130
  */
5754
6131
  "tooltipMode"?: TableTooltipMode;
5755
6132
  /**
5756
- * Define o estado semântico do tooltip nesta coluna/célula de cabeçalho.
6133
+ * Estado visual herdado pelos tooltips da coluna. Quando omitido, o cabeçalho herda da linha ou tabela, nessa ordem.
6134
+ * @default undefined
5757
6135
  */
5758
6136
  "tooltipState"?: TableTooltipState;
5759
6137
  /**
5760
- * Define o alinhamento vertical do conteúdo dentro da célula de cabeçalho, permitindo a herança de alinhamento para as células filhas com base no valor definido.
6138
+ * Alinhamento vertical herdado pelas células da coluna. Quando omitido, o cabeçalho herda da linha ou tabela, nessa ordem.
6139
+ * @default undefined
5761
6140
  */
5762
6141
  "verticalAlignment"?: TableAlignment;
5763
6142
  }
5764
6143
  /**
5765
- * Linha horizontal (`<tr>`) da tabela. Use dentro de `br-table-header` ou `br-table-body`.
5766
- * Use `selected` para indicar que a linha está selecionada.
6144
+ * ## Design System
6145
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
6146
+ * Representa uma linha de dados e sua área opcional de conteúdo expandido.
6147
+ * É uma peça declarativa de `br-table-body` ou `br-table-header`, coordenada por
6148
+ * `br-table`. Recebe células de dados ou cabeçalho conforme o pai. `rowGroup`
6149
+ * identifica linhas contíguas que devem permanecer juntas; use-o apenas no corpo.
6150
+ * Em grupos, os detalhes expandidos são apresentados após as linhas do grupo.
6151
+ * @fires brAlignmentChange - Quando um alinhamento herdável muda.
6152
+ * @fires brOverflowChange - Quando a estratégia de overflow muda.
5767
6153
  */
5768
6154
  interface BrTableRow {
5769
6155
  /**
5770
- * Define o alinhamento horizontal das células dentro da linha, permitindo a herança de alinhamento para as células filhas com base no valor definido.
6156
+ * Indica se o conteúdo adicional da linha está visível.
6157
+ * @default false
6158
+ */
6159
+ "expanded": boolean;
6160
+ /**
6161
+ * Retorna a maior altura das células desta linha somada à área de expansão, em pixels.
6162
+ * @returns Altura medida das células diretamente pertencentes à linha e do conteúdo expandido renderizado.
6163
+ */
6164
+ "getMeasuredHeight": () => Promise<number>;
6165
+ /**
6166
+ * Alinhamento horizontal herdado pelas células da linha.
6167
+ * @default undefined
5771
6168
  */
5772
6169
  "horizontalAlignment"?: TableAlignment;
5773
6170
  /**
5774
- * Define se o conteúdo dentro das células da linha deve ser truncado, permitindo a herança dessa configuração para as células filhas com base no valor definido.
6171
+ * Estratégia de overflow herdada pelas células da linha.
6172
+ * @default undefined
5775
6173
  */
5776
6174
  "overflow"?: TableOverflow;
5777
6175
  /**
5778
- * Define o modo de resolução do tooltip nas células desta linha.
6176
+ * Controla se a expansão é habilitada, desabilitada ou herdada da tabela.
6177
+ * @default 'inherit'
6178
+ */
6179
+ "rowExpansion": TableRowExpansion;
6180
+ /**
6181
+ * Identifica um grupo contíguo de linhas com chave exclusiva, preservado como unidade na ordenação, paginação e virtualização. Vazio ou omitido mantém a linha independente. A seleção continua sendo individual por linha.
6182
+ * @default undefined
6183
+ */
6184
+ "rowGroup"?: string;
6185
+ /**
6186
+ * Indica se a linha está selecionada.
6187
+ * @default false
6188
+ */
6189
+ "selected": boolean;
6190
+ /**
6191
+ * Modo de exibição herdado pelos tooltips da linha.
6192
+ * @default undefined
5779
6193
  */
5780
6194
  "tooltipMode"?: TableTooltipMode;
5781
6195
  /**
5782
- * Define o estado semântico do tooltip nas células desta linha.
6196
+ * Estado visual herdado pelos tooltips da linha.
6197
+ * @default undefined
5783
6198
  */
5784
6199
  "tooltipState"?: TableTooltipState;
5785
6200
  /**
5786
- * Define o alinhamento vertical das células dentro da linha, permitindo a herança de alinhamento para as células filhas com base no valor definido.
6201
+ * Alinhamento vertical herdado pelas células da linha.
6202
+ * @default undefined
5787
6203
  */
5788
6204
  "verticalAlignment"?: TableAlignment;
6205
+ /**
6206
+ * Altura visível da área expandida desta linha, em pixels.
6207
+ * @remarks Quando omitida, herda `virtualExpandedContentHeight` de `br-table`.
6208
+ * @default null
6209
+ */
6210
+ "virtualExpandedContentHeight"?: number | null;
5789
6211
  }
5790
6212
  /**
5791
6213
  * O `br-tag` categoriza, rotula ou destaca informações curtas e metadados.
@@ -6706,10 +7128,26 @@ export interface BrTabItemCustomEvent<T> extends CustomEvent<T> {
6706
7128
  detail: T;
6707
7129
  target: HTMLBrTabItemElement;
6708
7130
  }
7131
+ export interface BrTableCustomEvent<T> extends CustomEvent<T> {
7132
+ detail: T;
7133
+ target: HTMLBrTableElement;
7134
+ }
7135
+ export interface BrTableActionCustomEvent<T> extends CustomEvent<T> {
7136
+ detail: T;
7137
+ target: HTMLBrTableActionElement;
7138
+ }
7139
+ export interface BrTableBarCustomEvent<T> extends CustomEvent<T> {
7140
+ detail: T;
7141
+ target: HTMLBrTableBarElement;
7142
+ }
6709
7143
  export interface BrTableCellCustomEvent<T> extends CustomEvent<T> {
6710
7144
  detail: T;
6711
7145
  target: HTMLBrTableCellElement;
6712
7146
  }
7147
+ export interface BrTableFooterCustomEvent<T> extends CustomEvent<T> {
7148
+ detail: T;
7149
+ target: HTMLBrTableFooterElement;
7150
+ }
6713
7151
  export interface BrTableHeaderCellCustomEvent<T> extends CustomEvent<T> {
6714
7152
  detail: T;
6715
7153
  target: HTMLBrTableHeaderCellElement;
@@ -7893,8 +8331,8 @@ declare global {
7893
8331
  * O `br-magic-button` é o botão de ação flutuante (FAB) que destaca a ação primária ou mais frequente da tela.
7894
8332
  * Pode ser exibido apenas com ícone (formato circular) ou expandido com texto descritivo.
7895
8333
  * ```html
7896
- * <br-magic-button icon="fa6-solid:plus" aria-label="Novo item"></br-magic-button>
7897
- * <br-magic-button icon="fa6-solid:plus">Criar documento</br-magic-button>
8334
+ * <br-magic-button icon="fa-solid:plus" aria-label="Novo item"></br-magic-button>
8335
+ * <br-magic-button icon="fa-solid:plus">Criar documento</br-magic-button>
7898
8336
  * ```
7899
8337
  * ### Quando usar
7900
8338
  * - Ação principal e dominante da tela em dispositivos móveis ou interfaces focadas em uma tarefa única.
@@ -8831,45 +9269,131 @@ declare global {
8831
9269
  prototype: HTMLBrTabItemElement;
8832
9270
  new (): HTMLBrTabItemElement;
8833
9271
  };
8834
- /**
8835
- * O `br-table` estrutura e exibe conjuntos de dados organizados em linhas e colunas.
8836
- * Estruture a tabela usando os subcomponentes `br-table-header`, `br-table-body`, `br-table-row` e `br-table-cell`. Para exibir um indicador de carregamento durante atualizações assíncronas, use a propriedade `loading`.
8837
- * ```html
8838
- * <br-table>
8839
- * <br-table-header slot="header">
8840
- * <br-table-row>
8841
- * <br-table-header-cell>Nome</br-table-header-cell>
8842
- * <br-table-header-cell>Cargo</br-table-header-cell>
8843
- * </br-table-row>
8844
- * </br-table-header>
8845
- * <br-table-body slot="body">
8846
- * <br-table-row>
8847
- * <br-table-cell>Maria Silva</br-table-cell>
8848
- * <br-table-cell>Analista</br-table-cell>
8849
- * </br-table-row>
8850
- * </br-table-body>
8851
- * </br-table>
8852
- * ```
8853
- * ### Quando usar
8854
- * - Dados bidimensionais com cabeçalhos de coluna e necessidades de ordenação ou comparação.
8855
- * ### Quando evitar
8856
- * - Listas simples de itens lineares: use `br-list`.
8857
- * - Agrupamento de informações de um único registro: use `br-card`.
8858
- * Consulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/table?tab=designer).
8859
- * @category Dados, Conteúdo
8860
- * @status stable
8861
- * @Slot header: Área para inclusão do subcomponente br-table-header
8862
- * @Slot body: Área para inclusão do subcomponente br-table-body
9272
+ interface HTMLBrTableElementEventMap {
9273
+ "brTableActionClick": TableActionClickDetail;
9274
+ "brTableSelectionChange": TableSelectionChangeDetail;
9275
+ "brTableRowExpansionChange": TableRowExpansionChangeDetail;
9276
+ "brTableSortChange": TableSortChangeDetail;
9277
+ "brTableSortRequest": TableSortRequestDetail;
9278
+ "brTablePageChange": TablePageChangeDetail;
9279
+ "brTablePageSizeChange": TablePageSizeChangeDetail;
9280
+ "brTableSearch": TableSearchDetail;
9281
+ }
9282
+ /**
9283
+ * ## Design System
9284
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
9285
+ * Apresenta e permite interagir com dados tabulares; não deve ser usada para
9286
+ * organizar layout ou conteúdo que não seja tabular. Recebe o cabeçalho e o corpo
9287
+ * pelos slots `header` e `body`, compostos por `br-table-header` e
9288
+ * `br-table-header-cell`, e por `br-table-body`, `br-table-row` e `br-table-cell`.
9289
+ * Orquestra a grade, a acessibilidade, a ordenação, a seleção e a expansão das
9290
+ * linhas. A barra de ações é gerenciada pela tabela; `br-table-footer` é
9291
+ * renderizado quando a paginação está habilitada. As propriedades de célula
9292
+ * seguem, quando aplicável, a precedência: célula, linha, coluna, tabela e valor
9293
+ * padrão. Cabeçalhos multinível usam várias linhas em `br-table-header` com
9294
+ * `colSpan`/`rowSpan`. Linhas contíguas com `rowGroup` formam unidades de ordenação,
9295
+ * paginação e virtualização; a seleção permanece individual. Células com `rowSpan`
9296
+ * não atravessam os limites do grupo. Prefira tabelas simples quando possível.
9297
+ * @cssprop --br-table-loading-opacity - Opacidade do conteúdo durante o carregamento. Padrão: 0.5.
9298
+ * @fires brTableActionClick - Quando uma ação pública é acionada.
9299
+ * @fires brTableSelectionChange - Quando o conjunto selecionado muda.
9300
+ * @fires brTableRowExpansionChange - Quando uma linha expande ou recolhe.
9301
+ * @fires brTableSortRequest - Antes de aplicar uma solicitação de ordenação.
9302
+ * @fires brTableSortChange - Quando os critérios de ordenação mudam.
9303
+ * @fires brTablePageChange - Quando o consumidor solicita outra página pela paginação do rodapé.
9304
+ * @fires brTablePageSizeChange - Quando o consumidor solicita outra quantidade de itens por página.
9305
+ * @fires brTableSearch - Quando a busca é enviada ou fechada.
8863
9306
  */
8864
9307
  interface HTMLBrTableElement extends Components.BrTable, HTMLStencilElement {
9308
+ addEventListener<K extends keyof HTMLBrTableElementEventMap>(type: K, listener: (this: HTMLBrTableElement, ev: BrTableCustomEvent<HTMLBrTableElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
9309
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
9310
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
9311
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
9312
+ removeEventListener<K extends keyof HTMLBrTableElementEventMap>(type: K, listener: (this: HTMLBrTableElement, ev: BrTableCustomEvent<HTMLBrTableElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
9313
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
9314
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
9315
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
8865
9316
  }
8866
9317
  var HTMLBrTableElement: {
8867
9318
  prototype: HTMLBrTableElement;
8868
9319
  new (): HTMLBrTableElement;
8869
9320
  };
9321
+ interface HTMLBrTableActionElementEventMap {
9322
+ "brTableActionClick": TableActionClickDetail;
9323
+ }
9324
+ /**
9325
+ * ## Design System
9326
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
9327
+ * Representa uma ação global, contextual ou associada a uma linha da tabela.
9328
+ * O contexto é inferido pelo slot e pela posição do componente na árvore.
9329
+ * Para executar funções a partir das ações, ouça o evento `brTableActionClick`:
9330
+ * ```html
9331
+ * <!-- 1. Ouvindo diretamente na ação -->
9332
+ * <br-table-action id="btn-filtro" label="Filtros" icon-name="fa-solid:filter"></br-table-action>
9333
+ * <script>
9334
+ * document.getElementById('btn-filtro').addEventListener('brTableActionClick', () => {
9335
+ * executarFiltros();
9336
+ * });
9337
+ * </script>
9338
+ * <!-- 2. Ouvindo na tabela (recomendado para ações diretas e colapsadas em menu) -->
9339
+ * <script>
9340
+ * table.addEventListener('brTableActionClick', (event) => {
9341
+ * const { type, label, rowIndex } = event.detail;
9342
+ * if (type === 'row') executarAcaoLinha(label, rowIndex);
9343
+ * else if (type === 'global') executarAcaoGlobal(label);
9344
+ * });
9345
+ * </script>
9346
+ * ```
9347
+ * @fires brTableActionClick - Quando o usuário aciona o botão.
9348
+ */
9349
+ interface HTMLBrTableActionElement extends Components.BrTableAction, HTMLStencilElement {
9350
+ addEventListener<K extends keyof HTMLBrTableActionElementEventMap>(type: K, listener: (this: HTMLBrTableActionElement, ev: BrTableActionCustomEvent<HTMLBrTableActionElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
9351
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
9352
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
9353
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
9354
+ removeEventListener<K extends keyof HTMLBrTableActionElementEventMap>(type: K, listener: (this: HTMLBrTableActionElement, ev: BrTableActionCustomEvent<HTMLBrTableActionElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
9355
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
9356
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
9357
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
9358
+ }
9359
+ var HTMLBrTableActionElement: {
9360
+ prototype: HTMLBrTableActionElement;
9361
+ new (): HTMLBrTableActionElement;
9362
+ };
9363
+ interface HTMLBrTableBarElementEventMap {
9364
+ "brTableSearch": TableSearchDetail;
9365
+ }
9366
+ /**
9367
+ * ## Design System
9368
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
9369
+ * Exibe o título, as ações globais e as ações contextuais da tabela.
9370
+ * Ações excedentes são agrupadas automaticamente em um menu.
9371
+ * Compõe `br-table`, que configura a barra automaticamente. Também pode ser usada
9372
+ * diretamente para compor uma barra de ações. Quando `hasSearch` está ativo,
9373
+ * solicita a busca à aplicação, sem filtrar ou destacar os dados.
9374
+ */
9375
+ interface HTMLBrTableBarElement extends Components.BrTableBar, HTMLStencilElement {
9376
+ addEventListener<K extends keyof HTMLBrTableBarElementEventMap>(type: K, listener: (this: HTMLBrTableBarElement, ev: BrTableBarCustomEvent<HTMLBrTableBarElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
9377
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
9378
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
9379
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
9380
+ removeEventListener<K extends keyof HTMLBrTableBarElementEventMap>(type: K, listener: (this: HTMLBrTableBarElement, ev: BrTableBarCustomEvent<HTMLBrTableBarElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
9381
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
9382
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
9383
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
9384
+ }
9385
+ var HTMLBrTableBarElement: {
9386
+ prototype: HTMLBrTableBarElement;
9387
+ new (): HTMLBrTableBarElement;
9388
+ };
8870
9389
  /**
8871
- * Corpo de dados (`<tbody>`) da tabela. Use no slot `body` do `br-table`.
8872
- * Agrupa as linhas `br-table-row` contendo as células de dados `br-table-cell`.
9390
+ * ## Design System
9391
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
9392
+ * Agrupa semanticamente as linhas que compõem o corpo de `br-table`.
9393
+ * É uma peça declarativa do slot `body`; recebe `br-table-row` e entrega ao
9394
+ * orquestrador a seleção, ordenação e materialização virtual. Os contêineres
9395
+ * visuais dos grupos são internos, montados pela tabela e não devem ser
9396
+ * instanciados pelo consumidor. Use o componente na composição de `br-table`.
8873
9397
  */
8874
9398
  interface HTMLBrTableBodyElement extends Components.BrTableBody, HTMLStencilElement {
8875
9399
  }
@@ -8882,8 +9406,15 @@ declare global {
8882
9406
  "brOverflowChange": void;
8883
9407
  }
8884
9408
  /**
8885
- * Célula de dados (`<td>`) da tabela. Use dentro de um `br-table-row` no corpo da tabela.
8886
- * Coloque o conteúdo do registro no slot padrão.
9409
+ * ## Design System
9410
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
9411
+ * Representa uma célula de dados, com suporte a alinhamento, overflow,
9412
+ * tooltip e agrupamento automático de ações excedentes. Compõe `br-table-row`
9413
+ * dentro do corpo de `br-table`, que coordena posição, interação e herança.
9414
+ * Use `rowSpan` dentro de um grupo contíguo de linhas e `rowHeader` para seu
9415
+ * rótulo compartilhado; evite uso avulso fora da composição da tabela.
9416
+ * @fires brAlignmentChange - Quando um alinhamento específico muda.
9417
+ * @fires brOverflowChange - Quando a estratégia de overflow muda.
8887
9418
  */
8888
9419
  interface HTMLBrTableCellElement extends Components.BrTableCell, HTMLStencilElement {
8889
9420
  addEventListener<K extends keyof HTMLBrTableCellElementEventMap>(type: K, listener: (this: HTMLBrTableCellElement, ev: BrTableCellCustomEvent<HTMLBrTableCellElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -8899,9 +9430,36 @@ declare global {
8899
9430
  prototype: HTMLBrTableCellElement;
8900
9431
  new (): HTMLBrTableCellElement;
8901
9432
  };
9433
+ interface HTMLBrTableFooterElementEventMap {
9434
+ "brInternalTableFooterPageChange": TableFooterPageChangeDetail;
9435
+ "brInternalTableFooterPerPageChange": TableFooterPerPageChangeDetail;
9436
+ }
9437
+ /**
9438
+ * Para a documentação completa, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
9439
+ * Renderiza a paginação da tabela quando `hasPagination` está habilitado em `br-table`.
9440
+ * Orquestrado internamente pela tabela; não deve ser inserido diretamente pelo consumidor.
9441
+ */
9442
+ interface HTMLBrTableFooterElement extends Components.BrTableFooter, HTMLStencilElement {
9443
+ addEventListener<K extends keyof HTMLBrTableFooterElementEventMap>(type: K, listener: (this: HTMLBrTableFooterElement, ev: BrTableFooterCustomEvent<HTMLBrTableFooterElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
9444
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
9445
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
9446
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
9447
+ removeEventListener<K extends keyof HTMLBrTableFooterElementEventMap>(type: K, listener: (this: HTMLBrTableFooterElement, ev: BrTableFooterCustomEvent<HTMLBrTableFooterElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
9448
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
9449
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
9450
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
9451
+ }
9452
+ var HTMLBrTableFooterElement: {
9453
+ prototype: HTMLBrTableFooterElement;
9454
+ new (): HTMLBrTableFooterElement;
9455
+ };
8902
9456
  /**
8903
- * Cabeçalho da tabela (`br-table`). Use no slot `header`.
8904
- * Agrupa as linhas `br-table-row` com as células de cabeçalho `br-table-header-cell`.
9457
+ * ## Design System
9458
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
9459
+ * Agrupa as linhas de cabeçalho de `br-table`, que as posiciona em uma grade.
9460
+ * Use uma linha para tabelas simples e múltiplas linhas com `colSpan`/`rowSpan`
9461
+ * em `br-table-header-cell` para hierarquias de colunas. É uma peça declarativa
9462
+ * do slot `header`, usada com o orquestrador; não realiza ordenação avulsa.
8905
9463
  */
8906
9464
  interface HTMLBrTableHeaderElement extends Components.BrTableHeader, HTMLStencilElement {
8907
9465
  }
@@ -8913,10 +9471,19 @@ declare global {
8913
9471
  "brColumnWidthChange": void;
8914
9472
  "brAlignmentChange": void;
8915
9473
  "brOverflowChange": void;
9474
+ "brInternalTableSortRequest": void;
8916
9475
  }
8917
9476
  /**
8918
- * Célula de cabeçalho (`<th>`) da tabela. Use dentro de um `br-table-row` no cabeçalho.
8919
- * Coloque o título da coluna no slot padrão. Para habilitar ordenação, ative `sortable`.
9477
+ * ## Design System
9478
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
9479
+ * Define o conteúdo e as propriedades herdáveis de uma coluna de `br-table`.
9480
+ * Compõe as linhas de `br-table-header` no slot `header`; não deve ser usada
9481
+ * avulsa. `colSpan` e `rowSpan` representam grupos e níveis do cabeçalho.
9482
+ * Somente folhas que ocupam uma coluna podem ordenar os dados.
9483
+ * Também exibe tooltip quando o conteúdo truncado requer informação adicional.
9484
+ * @fires brColumnWidthChange - Quando a largura declarada muda.
9485
+ * @fires brAlignmentChange - Quando um alinhamento da coluna muda.
9486
+ * @fires brOverflowChange - Quando a estratégia de overflow muda.
8920
9487
  */
8921
9488
  interface HTMLBrTableHeaderCellElement extends Components.BrTableHeaderCell, HTMLStencilElement {
8922
9489
  addEventListener<K extends keyof HTMLBrTableHeaderCellElementEventMap>(type: K, listener: (this: HTMLBrTableHeaderCellElement, ev: BrTableHeaderCellCustomEvent<HTMLBrTableHeaderCellElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -8937,8 +9504,15 @@ declare global {
8937
9504
  "brOverflowChange": void;
8938
9505
  }
8939
9506
  /**
8940
- * Linha horizontal (`<tr>`) da tabela. Use dentro de `br-table-header` ou `br-table-body`.
8941
- * Use `selected` para indicar que a linha está selecionada.
9507
+ * ## Design System
9508
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
9509
+ * Representa uma linha de dados e sua área opcional de conteúdo expandido.
9510
+ * É uma peça declarativa de `br-table-body` ou `br-table-header`, coordenada por
9511
+ * `br-table`. Recebe células de dados ou cabeçalho conforme o pai. `rowGroup`
9512
+ * identifica linhas contíguas que devem permanecer juntas; use-o apenas no corpo.
9513
+ * Em grupos, os detalhes expandidos são apresentados após as linhas do grupo.
9514
+ * @fires brAlignmentChange - Quando um alinhamento herdável muda.
9515
+ * @fires brOverflowChange - Quando a estratégia de overflow muda.
8942
9516
  */
8943
9517
  interface HTMLBrTableRowElement extends Components.BrTableRow, HTMLStencilElement {
8944
9518
  addEventListener<K extends keyof HTMLBrTableRowElementEventMap>(type: K, listener: (this: HTMLBrTableRowElement, ev: BrTableRowCustomEvent<HTMLBrTableRowElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -9251,8 +9825,11 @@ declare global {
9251
9825
  "br-tab": HTMLBrTabElement;
9252
9826
  "br-tab-item": HTMLBrTabItemElement;
9253
9827
  "br-table": HTMLBrTableElement;
9828
+ "br-table-action": HTMLBrTableActionElement;
9829
+ "br-table-bar": HTMLBrTableBarElement;
9254
9830
  "br-table-body": HTMLBrTableBodyElement;
9255
9831
  "br-table-cell": HTMLBrTableCellElement;
9832
+ "br-table-footer": HTMLBrTableFooterElement;
9256
9833
  "br-table-header": HTMLBrTableHeaderElement;
9257
9834
  "br-table-header-cell": HTMLBrTableHeaderCellElement;
9258
9835
  "br-table-row": HTMLBrTableRowElement;
@@ -10030,13 +10607,13 @@ declare namespace LocalJSX {
10030
10607
  */
10031
10608
  "iconPosition"?: CollapseIconPosition;
10032
10609
  /**
10033
- * Identificador Iconify do ícone exibido quando o conteúdo está visível. O valor padrão usa o registro SVG local. Para ícones por classe CSS, use o slot `icon-to-hide`.
10034
- * @default 'fa6-solid:chevron-up'
10610
+ * Identificador de ícone Font Awesome 5 Free presente no cache local, exibido quando o conteúdo está visível. Para ícones por classe CSS, use o slot `icon-to-hide`.
10611
+ * @default 'fa-solid:chevron-up'
10035
10612
  */
10036
10613
  "iconToHide"?: string;
10037
10614
  /**
10038
- * Identificador Iconify do ícone exibido quando o conteúdo está oculto. O valor padrão usa o registro SVG local. Para ícones por classe CSS, use o slot `icon-to-show`.
10039
- * @default 'fa6-solid:chevron-down'
10615
+ * Identificador de ícone Font Awesome 5 Free presente no cache local, exibido quando o conteúdo está oculto. Para ícones por classe CSS, use o slot `icon-to-show`.
10616
+ * @default 'fa-solid:chevron-down'
10040
10617
  */
10041
10618
  "iconToShow"?: string;
10042
10619
  /**
@@ -11187,7 +11764,7 @@ declare namespace LocalJSX {
11187
11764
  */
11188
11765
  "href"?: string;
11189
11766
  /**
11190
- * Identificador da rede social. Os ícones oficiais mais comuns são renderizados pelo registro SVG local; use o slot `icon` para uma fonte diferente ou uma classe Font Awesome personalizada.
11767
+ * Nome do ícone Font Awesome 5 Free presente no cache local, sem o prefixo `fa-brands:` (ex.: `instagram`). Use o slot `icon` para conteúdo próprio.
11191
11768
  */
11192
11769
  "icon"?: string;
11193
11770
  /**
@@ -11527,7 +12104,7 @@ declare namespace LocalJSX {
11527
12104
  */
11528
12105
  "height"?: string;
11529
12106
  /**
11530
- * Identificador legado do ícone. Identificadores que pertencem ao registro local são renderizados como SVG empacotado; nomes desconhecidos continuam disponíveis via Iconify somente para compatibilidade.
12107
+ * Identificador legado do ícone. Nomes no cache local são renderizados como SVG empacotado; em `source="auto"`, nomes ausentes usam Iconify como fallback. `source="iconify"` força essa origem.
11531
12108
  * @deprecated Use `src` com um asset controlado pela aplicação, `svg` ou o slot padrão.
11532
12109
  */
11533
12110
  "iconName"?: string;
@@ -11552,7 +12129,7 @@ declare namespace LocalJSX {
11552
12129
  */
11553
12130
  "label"?: string;
11554
12131
  /**
11555
- * Controla o comportamento de carregamento do ícone. Comportamento: - Padrão (propriedade não definida): carregamento imediato aplicando `noobserver` para evitar problemas de layout shift - `lazy={true}`: ativa o carregamento tardio nativo para imagens em `src` e o observer do Iconify no fallback legado - `lazy={false}`: carregamento imediato **Nota**: O padrão foi alterado para carregamento imediato para resolver problemas de deslocamento de layout que ocorriam quando ícones eram carregados depois do conteúdo inicial. SVG inline e conteúdo em slot não precisam de carregamento tardio, pois já estão disponíveis no DOM.
12132
+ * Controla o comportamento de carregamento do ícone. Comportamento: - Padrão (propriedade não definida): carregamento imediato aplicando `noobserver` para evitar problemas de layout shift - `lazy={true}`: ativa o carregamento tardio nativo para imagens em `src` - `lazy={false}`: carregamento imediato **Nota**: O padrão foi alterado para carregamento imediato para resolver problemas de deslocamento de layout que ocorriam quando ícones eram carregados depois do conteúdo inicial. SVG inline e conteúdo em slot não precisam de carregamento tardio, pois já estão disponíveis no DOM.
11556
12133
  */
11557
12134
  "lazy"?: boolean;
11558
12135
  /**
@@ -11560,7 +12137,8 @@ declare namespace LocalJSX {
11560
12137
  */
11561
12138
  "rotate"?: IconRotate;
11562
12139
  /**
11563
- * Define explicitamente a origem do ícone. Quando `auto`, o componente prioriza slot, SVG inline e imagem por URL. Iconify fica apenas como fallback de compatibilidade quando nenhuma fonte própria foi informada. Aceita `auto`, `iconify`, `image`, `svg` ou `slot`; valores inválidos usam `auto`.
12140
+ * Define explicitamente a origem do ícone. Quando `auto`, o componente prioriza slot, SVG inline, imagem por URL e o cache local Font Awesome 5 Free. Se `iconName` não estiver no cache, usa Iconify como fallback. `iconify` força essa origem mesmo para nomes presentes no cache. Aceita `auto`, `iconify`, `image`, `svg` ou `slot`; valores inválidos usam `auto`.
12141
+ * @remarks Os componentes do Design System usam identificadores presentes no cache local; Iconify atende nomes ausentes e usos explícitos.
11564
12142
  * @default 'auto'
11565
12143
  */
11566
12144
  "source"?: IconSource;
@@ -12230,8 +12808,8 @@ declare namespace LocalJSX {
12230
12808
  * O `br-magic-button` é o botão de ação flutuante (FAB) que destaca a ação primária ou mais frequente da tela.
12231
12809
  * Pode ser exibido apenas com ícone (formato circular) ou expandido com texto descritivo.
12232
12810
  * ```html
12233
- * <br-magic-button icon="fa6-solid:plus" aria-label="Novo item"></br-magic-button>
12234
- * <br-magic-button icon="fa6-solid:plus">Criar documento</br-magic-button>
12811
+ * <br-magic-button icon="fa-solid:plus" aria-label="Novo item"></br-magic-button>
12812
+ * <br-magic-button icon="fa-solid:plus">Criar documento</br-magic-button>
12235
12813
  * ```
12236
12814
  * ### Quando usar
12237
12815
  * - Ação principal e dominante da tela em dispositivos móveis ou interfaces focadas em uma tarefa única.
@@ -12264,7 +12842,7 @@ declare namespace LocalJSX {
12264
12842
  */
12265
12843
  "density"?: BrDensity;
12266
12844
  /**
12267
- * Ícone como identificador Iconify (ex.: `fa6-solid:star`) ou nome simples (ex.: `question`, resolvido como `fa6-solid:question` no registro SVG local), renderizado pelo `br-icon`. Para classes CSS (ex.: Font Awesome) ou SVGs personalizados, use o slot `icon`, a forma preferida. Uso descontinuado: classes CSS nesta prop (ex.: `fas fa-star`) não são exibidas no Shadow DOM e geram aviso.
12845
+ * Ícone como identificador Font Awesome 5 Free do cache local (ex.: `fa-solid:star`) ou nome simples (ex.: `question`, resolvido como `fa-solid:question`), renderizado pelo `br-icon`. Para classes CSS (ex.: Font Awesome) ou SVGs personalizados, use o slot `icon`, a forma preferida. Uso descontinuado: classes CSS nesta prop (ex.: `fas fa-star`) não são exibidas no Shadow DOM e geram aviso.
12268
12846
  * @default ''
12269
12847
  */
12270
12848
  "icon"?: string;
@@ -12598,7 +13176,7 @@ declare namespace LocalJSX {
12598
13176
  */
12599
13177
  "href": string;
12600
13178
  /**
12601
- * Identificador da rede social. Os ícones oficiais mais comuns são renderizados pelo registro SVG local; use o slot `icon` para uma fonte diferente ou uma classe Font Awesome personalizada.
13179
+ * Nome do ícone Font Awesome 5 Free presente no cache local, sem o prefixo `fa-brands:` (ex.: `facebook-f`). Use o slot `icon` para conteúdo próprio.
12602
13180
  */
12603
13181
  "icon"?: string;
12604
13182
  /**
@@ -13909,7 +14487,7 @@ declare namespace LocalJSX {
13909
14487
  */
13910
14488
  "onBrSelectOptionPropsChange"?: (event: BrSelectOptionCustomEvent<void>) => void;
13911
14489
  /**
13912
- * Evento emitido quando o estado da opção muda.
14490
+ * Evento emitido ao ativar a opção por clique, teclado ou `setSelectedState()`. Fora de `br-select`, também informa alterações de `selected` e `disabled`. Dentro de `br-select`, a sincronização dessas props não é uma nova interação.
13913
14491
  * @event brSelectOptionStateChange
13914
14492
  * @type {EventEmitter<SelectOptionData>}
13915
14493
  */
@@ -14261,8 +14839,8 @@ declare namespace LocalJSX {
14261
14839
  "step"?: number;
14262
14840
  /**
14263
14841
  * Lista de passos customizados para o slider. Cada passo pode definir `value`, `label` (texto exibido no tooltip e/ou abaixo da trilha) e `icon` (nome do ícone exibido abaixo da marcação do passo). Aceita array de objetos `SliderStep[]`, array de strings `string[]`, ou string JSON.
14264
- * @example ```html <br-slider steps='[{"value": 1, "label": "Péssimo", "icon": "fa-solid:face-frown"}, {"value": 5, "label": "Excelente", "icon": "fa-solid:face-laugh"}]' ></br-slider> ```
14265
- * @example ```js const slider = document.querySelector('br-slider'); slider.steps = [ { value: 1, label: 'Péssimo', icon: 'fa-solid:face-frown' }, { value: 5, label: 'Excelente', icon: 'fa-solid:face-laugh' }, ]; ```
14842
+ * @example ```html <br-slider steps='[{"value": 1, "label": "Péssimo", "icon": "fa-solid:frown"}, {"value": 5, "label": "Excelente", "icon": "fa-solid:laugh"}]' ></br-slider> ```
14843
+ * @example ```js const slider = document.querySelector('br-slider'); slider.steps = [ { value: 1, label: 'Péssimo', icon: 'fa-solid:frown' }, { value: 5, label: 'Excelente', icon: 'fa-solid:laugh' }, ]; ```
14266
14844
  */
14267
14845
  "steps"?: SliderStep[] | string;
14268
14846
  /**
@@ -14270,7 +14848,7 @@ declare namespace LocalJSX {
14270
14848
  */
14271
14849
  "thumbEndIcon"?: string;
14272
14850
  /**
14273
- * Nome do ícone a ser exibido no interior da alça de controle (thumb). No modo `range`, aplica-se a ambas as alças caso `thumbStartIcon` ou `thumbEndIcon` não sejam especificados. Exemplo: 'fa-solid:arrows-left-right', 'fa-solid:circle'.
14851
+ * Nome do ícone a ser exibido no interior da alça de controle (thumb). No modo `range`, aplica-se a ambas as alças caso `thumbStartIcon` ou `thumbEndIcon` não sejam especificados. Exemplo: 'fa-solid:arrows-alt-h', 'fa-solid:circle'.
14274
14852
  */
14275
14853
  "thumbIcon"?: string;
14276
14854
  /**
@@ -14607,7 +15185,7 @@ declare namespace LocalJSX {
14607
15185
  */
14608
15186
  "counter"?: string;
14609
15187
  /**
14610
- * Ícone da aba como identificador Iconify (ex.: `fa6-solid:bell`), renderizado em SVG pelo `br-icon`. Para ícones por classe CSS (ex.: Font Awesome), use o slot `icon-{id}` do `br-tab`, a forma preferida: `<i slot="icon-avisos" class="fas fa-bell" aria-hidden="true"></i>`. O slot tem precedência sobre esta prop. Uso descontinuado: classes CSS nesta prop (ex.: `fas fa-bell`) não são exibidas no Shadow DOM, geram aviso e devem migrar para o slot `icon-{id}`. Identificadores Iconify continuam suportados.
15188
+ * Ícone da aba como identificador Font Awesome 5 Free presente no cache local (ex.: `fa-solid:bell`), renderizado pelo `br-icon`. Para ícones por classe CSS (ex.: Font Awesome), use o slot `icon-{id}` do `br-tab`, a forma preferida: `<i slot="icon-avisos" class="fas fa-bell" aria-hidden="true"></i>`. O slot tem precedência sobre esta prop. Uso descontinuado: classes CSS nesta prop (ex.: `fas fa-bell`) não são exibidas no Shadow DOM, geram aviso e devem migrar para o slot `icon-{id}`. Nomes fora do cache local não são carregados remotamente.
14611
15189
  */
14612
15190
  "icon"?: string;
14613
15191
  /**
@@ -14647,231 +15225,643 @@ declare namespace LocalJSX {
14647
15225
  "tabItemTitle"?: string;
14648
15226
  }
14649
15227
  /**
14650
- * O `br-table` estrutura e exibe conjuntos de dados organizados em linhas e colunas.
14651
- * Estruture a tabela usando os subcomponentes `br-table-header`, `br-table-body`, `br-table-row` e `br-table-cell`. Para exibir um indicador de carregamento durante atualizações assíncronas, use a propriedade `loading`.
14652
- * ```html
14653
- * <br-table>
14654
- * <br-table-header slot="header">
14655
- * <br-table-row>
14656
- * <br-table-header-cell>Nome</br-table-header-cell>
14657
- * <br-table-header-cell>Cargo</br-table-header-cell>
14658
- * </br-table-row>
14659
- * </br-table-header>
14660
- * <br-table-body slot="body">
14661
- * <br-table-row>
14662
- * <br-table-cell>Maria Silva</br-table-cell>
14663
- * <br-table-cell>Analista</br-table-cell>
14664
- * </br-table-row>
14665
- * </br-table-body>
14666
- * </br-table>
14667
- * ```
14668
- * ### Quando usar
14669
- * - Dados bidimensionais com cabeçalhos de coluna e necessidades de ordenação ou comparação.
14670
- * ### Quando evitar
14671
- * - Listas simples de itens lineares: use `br-list`.
14672
- * - Agrupamento de informações de um único registro: use `br-card`.
14673
- * Consulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/table?tab=designer).
14674
- * @category Dados, Conteúdo
14675
- * @status stable
14676
- * @Slot header: Área para inclusão do subcomponente br-table-header
14677
- * @Slot body: Área para inclusão do subcomponente br-table-body
15228
+ * ## Design System
15229
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
15230
+ * Apresenta e permite interagir com dados tabulares; não deve ser usada para
15231
+ * organizar layout ou conteúdo que não seja tabular. Recebe o cabeçalho e o corpo
15232
+ * pelos slots `header` e `body`, compostos por `br-table-header` e
15233
+ * `br-table-header-cell`, e por `br-table-body`, `br-table-row` e `br-table-cell`.
15234
+ * Orquestra a grade, a acessibilidade, a ordenação, a seleção e a expansão das
15235
+ * linhas. A barra de ações é gerenciada pela tabela; `br-table-footer` é
15236
+ * renderizado quando a paginação está habilitada. As propriedades de célula
15237
+ * seguem, quando aplicável, a precedência: célula, linha, coluna, tabela e valor
15238
+ * padrão. Cabeçalhos multinível usam várias linhas em `br-table-header` com
15239
+ * `colSpan`/`rowSpan`. Linhas contíguas com `rowGroup` formam unidades de ordenação,
15240
+ * paginação e virtualização; a seleção permanece individual. Células com `rowSpan`
15241
+ * não atravessam os limites do grupo. Prefira tabelas simples quando possível.
15242
+ * @cssprop --br-table-loading-opacity - Opacidade do conteúdo durante o carregamento. Padrão: 0.5.
15243
+ * @fires brTableActionClick - Quando uma ação pública é acionada.
15244
+ * @fires brTableSelectionChange - Quando o conjunto selecionado muda.
15245
+ * @fires brTableRowExpansionChange - Quando uma linha expande ou recolhe.
15246
+ * @fires brTableSortRequest - Antes de aplicar uma solicitação de ordenação.
15247
+ * @fires brTableSortChange - Quando os critérios de ordenação mudam.
15248
+ * @fires brTablePageChange - Quando o consumidor solicita outra página pela paginação do rodapé.
15249
+ * @fires brTablePageSizeChange - Quando o consumidor solicita outra quantidade de itens por página.
15250
+ * @fires brTableSearch - Quando a busca é enviada ou fechada.
14678
15251
  */
14679
15252
  interface BrTable {
14680
15253
  /**
14681
- * Ativa divisores verticais. Quando informada, tem precedência sobre `hasColumnDivider`.
15254
+ * Limite padrão de ações exibidas em cada célula.
15255
+ * @default 4
15256
+ */
15257
+ "cellActionsLimit"?: number;
15258
+ /**
15259
+ * Habilita divisores entre colunas.
15260
+ * @remarks Quando informado, tem precedência sobre `hasColumnDivider`, inclusive quando `false`. Na ausência de ambos, os divisores ficam desabilitados.
14682
15261
  */
14683
15262
  "columnDivider"?: boolean;
14684
15263
  /**
14685
- * Largura global aplicada a todas as colunas.
14686
- * @remarks Valores aceitos: - fill - content - ${number}px - ${number}fr Observação: - `columnWidth` não define o comportamento de `overflow`, mas pode interferir na sua percepção ao alterar o espaço disponível da coluna. - `content` (`max-content`) tende a expandir a coluna e reduzir casos visíveis de truncagem. - `fill` (`1fr`) tende a evidenciar truncagem quando o espaço horizontal é insuficiente.
15264
+ * Largura padrão utilizada pelas colunas sem configuração própria.
14687
15265
  * @default fill
14688
- * @example ```html <br-table column-width="160px"></br-table> ```
14689
15266
  */
14690
15267
  "columnWidth"?: ColumnWidth;
14691
15268
  /**
14692
- * Define a densidade visual do componente. - `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento). - `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos. - `large`: Baixa densidade (componente maior, mais espaçamento e altura). Valores inválidos usam `medium`. Quando omitida, a densidade média é aplicada ao token.
15269
+ * Limite usado para decidir quando agrupar ações contextuais em um menu. Quando o número de ações excede esse valor, as ações são agrupadas no dropdown (atualmente todas são movidas para o menu colapsado).
15270
+ * @default 4
15271
+ */
15272
+ "contextualActionsLimit"?: number;
15273
+ /**
15274
+ * Página atual exibida pela paginação (1-indexada).
15275
+ * @remarks Atualizada internamente quando `TableDataStore` já cobre a página solicitada. Utilize como valor inicial ou para navegar programaticamente para outra página.
15276
+ * @default 1
15277
+ */
15278
+ "currentPage"?: number;
15279
+ /**
15280
+ * Densidade visual aplicada aos espaçamentos da tabela.
15281
+ * @remarks Quando omitida, a propriedade permanece `undefined` e a densidade visual média é aplicada aos tokens da tabela.
15282
+ * @default undefined
14693
15283
  */
14694
15284
  "density"?: TableDensity;
14695
15285
  /**
14696
- * Define o estilo visual dos divisores.
14697
- * @remarks Valores aceitos: - solid - dashed
15286
+ * Estilo aplicado aos divisores habilitados.
14698
15287
  * @default solid
14699
15288
  */
14700
15289
  "dividerStyle"?: TableDividerStyle;
14701
15290
  /**
14702
- * Ativa divisores verticais entre colunas.
15291
+ * Habilita divisores entre colunas quando `columnDivider` não é informado.
15292
+ * @deprecated Use `columnDivider` instead.
14703
15293
  * @default false
14704
- * @deprecated Use `columnDivider`.
14705
15294
  */
14706
15295
  "hasColumnDivider"?: boolean;
14707
15296
  /**
14708
- * Ativa divisores horizontais entre linhas.
15297
+ * Habilita a paginação da tabela, renderizando `br-table-footer` internamente.
15298
+ * @remarks A paginação define o subconjunto lógico disponível para a lista virtual. `pageSize` conta linhas independentes ou grupos completos, e `visibleRows` controla quantas delas cabem simultaneamente na viewport. Quando os dados completos ainda não estão disponíveis localmente (paginação por API), informe `totalItems` e forneça o subconjunto correspondente após `brTablePageChange`.
15299
+ * @default false
15300
+ */
15301
+ "hasPagination"?: boolean;
15302
+ /**
15303
+ * Habilita divisores entre linhas quando `rowDivider` não é informado.
15304
+ * @deprecated Use `rowDivider` instead.
14709
15305
  * @default false
14710
- * @deprecated Use `rowDivider`.
14711
15306
  */
14712
15307
  "hasRowDivider"?: boolean;
14713
15308
  /**
14714
- * Define o alinhamento horizontal do conteúdo das células.
14715
- * @remarks Valores aceitos: - start - center - end
15309
+ * Habilita a coluna de expansão de linhas.
15310
+ * @default false
15311
+ */
15312
+ "hasRowExpansion"?: boolean;
15313
+ /**
15314
+ * Habilita o realce visual das linhas ao passar o ponteiro.
15315
+ * @default false
15316
+ */
15317
+ "hasRowHover"?: boolean;
15318
+ /**
15319
+ * Habilita a coluna de seleção de linhas.
15320
+ * @default false
15321
+ */
15322
+ "hasRowSelection"?: boolean;
15323
+ /**
15324
+ * Disponibiliza a interface de busca, sem filtrar ou destacar o conteúdo. A aplicação recebe `brTableSearch` e atualiza os dados local ou remotamente.
15325
+ * @default false
15326
+ */
15327
+ "hasSearch"?: boolean;
15328
+ /**
15329
+ * Título apresentado na barra principal.
15330
+ * @default null
15331
+ */
15332
+ "heading"?: string;
15333
+ /**
15334
+ * Limite usado para decidir quando agrupar ações globais em um menu. Quando o número de ações excede esse valor, as ações são agrupadas no dropdown (atualmente todas são movidas para o menu colapsado).
15335
+ * @default 4
15336
+ */
15337
+ "headingActionsLimit"?: number;
15338
+ /**
15339
+ * Quantidade de itens lógicos usada somente para calcular a altura da viewport. Cada grupo contíguo conta como um item; a altura inclui todas as linhas físicas que compõem os grupos reservados. Não altera paginação, rolagem ou virtualização. Quando omitida, acompanha `visibleRows`.
15340
+ * @default visibleRows
15341
+ */
15342
+ "heightRows"?: number;
15343
+ /**
15344
+ * Alinhamento horizontal padrão da tabela.
14716
15345
  * @default start
14717
15346
  */
14718
15347
  "horizontalAlignment"?: TableAlignment;
14719
15348
  /**
14720
- * Indica que as linhas estão sendo atualizadas pelo consumidor. O componente mantém o conteúdo anterior, aplica `aria-busy="true"` e exibe o slot `loading` sobre os dados; transporte, erro e substituição das linhas ficam sob responsabilidade da aplicação. A prop pode ser alterada diretamente ou pelos métodos `startLoading()` e `stopLoading()`.
15349
+ * Indica que as linhas estão sendo atualizadas pelo consumidor.
15350
+ * @remarks Mantém os dados anteriores, reduz sua opacidade e exibe o slot `loading` em um painel central com scrim sobre toda a tabela, incluindo barra de ações e paginação. O scrim fica limitado ao componente. Reflete o atributo `loading` e pode ser alterada diretamente ou pelos métodos `startLoading()` e `stopLoading()`. Não bloqueia o teclado nem gerencia requisições, erros ou substituição dos dados.
14721
15351
  * @default false
14722
15352
  */
14723
15353
  "loading"?: boolean;
14724
15354
  /**
14725
- * Define o comportamento de overflow para as células.
14726
- * @remarks Valores aceitos: - truncate - wrap Observação: - O overflow é independente de `columnWidth`. - Com `columnWidth="content"`, a coluna tende a crescer com o conteúdo (`max-content`), o que pode reduzir casos visíveis de truncagem. - Com `columnWidth="fill"`, a coluna ocupa o espaço disponível (`1fr`), então a truncagem tende a ficar mais evidente quando não há espaço suficiente.
15355
+ * Texto do tooltip do botão de ações agrupadas da barra contextual. Quando vazio ou composto apenas por espaços, usa "Mais ações". Não altera o nome acessível do botão nem os rótulos do menu.
15356
+ * @default 'Mais ações'
15357
+ */
15358
+ "moreActionsContextualLabel"?: string;
15359
+ /**
15360
+ * Texto do tooltip do botão de ações agrupadas na barra de título. Quando vazio ou composto apenas por espaços, usa "Mais ações". Não altera o nome acessível do botão nem os rótulos do menu.
15361
+ * @default 'Mais ações'
15362
+ */
15363
+ "moreActionsHeadingLabel"?: string;
15364
+ /**
15365
+ * Texto completo do tooltip dos botões de ações agrupadas nas células. Quando informado, prevalece sobre `moreActionsLabel` de cada célula. Quando omitido, a célula usa seu valor local ou "Mais ações". Valores vazios ou compostos apenas por espaços usam "Mais ações". Aceita texto simples por atributo ou propriedade. Reflete o valor no atributo `more-actions-label` para sincronizar as células.
15366
+ * @default undefined
15367
+ */
15368
+ "moreActionsLabel"?: string;
15369
+ /**
15370
+ * Reemite ações globais, contextuais e de linha para o consumidor.
15371
+ * @remarks O `detail` utiliza `TableActionClickDetail`.
15372
+ */
15373
+ "onBrTableActionClick"?: (event: BrTableCustomEvent<TableActionClickDetail>) => void;
15374
+ /**
15375
+ * Emitido quando o consumidor solicita outra página pela paginação do rodapé.
15376
+ */
15377
+ "onBrTablePageChange"?: (event: BrTableCustomEvent<TablePageChangeDetail>) => void;
15378
+ /**
15379
+ * Emitido quando o consumidor solicita outra quantidade de itens por página; atualize `visibleRows` ao tratar.
15380
+ */
15381
+ "onBrTablePageSizeChange"?: (event: BrTableCustomEvent<TablePageSizeChangeDetail>) => void;
15382
+ /**
15383
+ * Emitido quando uma linha é expandida ou recolhida.
15384
+ * @remarks O `detail` utiliza `TableRowExpansionChangeDetail`.
15385
+ */
15386
+ "onBrTableRowExpansionChange"?: (event: BrTableCustomEvent<TableRowExpansionChangeDetail>) => void;
15387
+ /**
15388
+ * Evento customizado originado em `br-table-bar` e propagado pela tabela, sem reemissão. Envia `{ term }` por Enter ou botão e `{ term: '' }` ao fechar. Digitação, inicialização e alterações programáticas não emitem o evento. Propaga, atravessa Shadow DOM e é cancelável.
15389
+ */
15390
+ "onBrTableSearch"?: (event: BrTableCustomEvent<TableSearchDetail>) => void;
15391
+ /**
15392
+ * Emitido quando o conjunto de linhas selecionadas muda.
15393
+ * @remarks O `detail` utiliza `TableSelectionChangeDetail`.
15394
+ */
15395
+ "onBrTableSelectionChange"?: (event: BrTableCustomEvent<TableSelectionChangeDetail>) => void;
15396
+ /**
15397
+ * Emitido sempre que o conjunto de critérios de ordenação muda.
15398
+ */
15399
+ "onBrTableSortChange"?: (event: BrTableCustomEvent<TableSortChangeDetail>) => void;
15400
+ /**
15401
+ * Emitido antes de aplicar uma solicitação de ordenação; `preventDefault()` cancela a mudança local.
15402
+ */
15403
+ "onBrTableSortRequest"?: (event: BrTableCustomEvent<TableSortRequestDetail>) => void;
15404
+ /**
15405
+ * Estratégia padrão para conteúdos que excedem a célula.
14727
15406
  * @default wrap
14728
15407
  */
14729
15408
  "overflow"?: TableOverflow;
14730
15409
  /**
14731
- * Ativa divisores horizontais. Quando informada, tem precedência sobre `hasRowDivider`.
15410
+ * Quantidade de itens pertencentes a cada página (linhas independentes ou grupos completos).
15411
+ * @remarks Quando omitida, utiliza `visibleRows` como fallback para manter compatibilidade com a API anterior. Defina um valor maior que `visibleRows` para que paginação e virtualização operem simultaneamente.
15412
+ */
15413
+ "pageSize"?: number;
15414
+ /**
15415
+ * Opções disponíveis de itens por página no seletor da paginação.
15416
+ * @default [10, 20, 30]
15417
+ */
15418
+ "pageSizeOptions"?: number[];
15419
+ /**
15420
+ * Habilita divisores entre linhas.
15421
+ * @remarks Quando informado, tem precedência sobre `hasRowDivider`, inclusive quando `false`. Na ausência de ambos, os divisores ficam desabilitados.
14732
15422
  */
14733
15423
  "rowDivider"?: boolean;
15424
+ /**
15425
+ * Força a apresentação da barra contextual.
15426
+ * @default false
15427
+ */
15428
+ "showContextualBar"?: boolean;
15429
+ /**
15430
+ * Define se a tabela aceita uma única coluna ordenada ou múltiplas colunas. No modo `multi`, a prioridade é sempre a ordem visual da esquerda para a direita.
15431
+ * @default single
15432
+ */
15433
+ "sortMode"?: TableSortMode;
15434
+ /**
15435
+ * Define se a tabela ordena as linhas localmente ou deixa a aplicação aplicar a ordenação solicitada. Em `manual`, a tabela mantém os indicadores e emite `brTableSortChange`, mas não reordena as linhas; use `setData()` para fornecer os resultados customizados ou remotos. Valores não reconhecidos usam a estratégia local.
15436
+ * @default local
15437
+ */
15438
+ "sortStrategy"?: TableSortStrategy;
14734
15439
  /**
14735
15440
  * Define o modo de resolução do tooltip nas células da tabela.
14736
- * @remarks Valores aceitos: - inherit - enabled - disabled
14737
15441
  * @default disabled (valor efetivo)
14738
15442
  */
14739
15443
  "tooltipMode"?: TableTooltipMode;
14740
15444
  /**
14741
- * Define o estado semântico do tooltip nas células da tabela.
14742
- * @remarks Valores aceitos: - info - warning - danger - success
15445
+ * Estado visual padrão dos tooltips.
14743
15446
  * @default info
14744
15447
  */
14745
15448
  "tooltipState"?: TableTooltipState;
14746
15449
  /**
14747
- * Define o alinhamento vertical do conteúdo das células.
14748
- * @remarks Valores aceitos: - start - center - end
15450
+ * Quantidade total de itens do conjunto de dados.
15451
+ * @remarks Necessário apenas quando `TableDataStore` não contém o conjunto completo (paginação por API). Quando omitido, é derivado automaticamente da quantidade de linhas independentes e grupos já presentes na tabela.
15452
+ */
15453
+ "totalItems"?: number;
15454
+ /**
15455
+ * Alinhamento vertical padrão da tabela.
14749
15456
  * @default start
14750
15457
  */
14751
15458
  "verticalAlignment"?: TableAlignment;
15459
+ /**
15460
+ * Altura adicional estimada para conteúdo expandido ainda não medido.
15461
+ * @default 240
15462
+ */
15463
+ "virtualExpandedContentHeight"?: number;
15464
+ /**
15465
+ * Quantidade de linhas de dados visíveis simultaneamente na viewport.
15466
+ * @remarks Não limita o conjunto de dados nem realiza paginação. A altura da região de scroll é derivada desta quantidade e da densidade atual. Mesmo com `hasPagination` habilitado, esta propriedade continua definindo apenas a capacidade visual da viewport; `pageSize` define o tamanho lógico da página.
15467
+ * @default 10
15468
+ */
15469
+ "visibleRows"?: number;
15470
+ }
15471
+ /**
15472
+ * ## Design System
15473
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
15474
+ * Representa uma ação global, contextual ou associada a uma linha da tabela.
15475
+ * O contexto é inferido pelo slot e pela posição do componente na árvore.
15476
+ * Para executar funções a partir das ações, ouça o evento `brTableActionClick`:
15477
+ * ```html
15478
+ * <!-- 1. Ouvindo diretamente na ação -->
15479
+ * <br-table-action id="btn-filtro" label="Filtros" icon-name="fa-solid:filter"></br-table-action>
15480
+ * <script>
15481
+ * document.getElementById('btn-filtro').addEventListener('brTableActionClick', () => {
15482
+ * executarFiltros();
15483
+ * });
15484
+ * </script>
15485
+ * <!-- 2. Ouvindo na tabela (recomendado para ações diretas e colapsadas em menu) -->
15486
+ * <script>
15487
+ * table.addEventListener('brTableActionClick', (event) => {
15488
+ * const { type, label, rowIndex } = event.detail;
15489
+ * if (type === 'row') executarAcaoLinha(label, rowIndex);
15490
+ * else if (type === 'global') executarAcaoGlobal(label);
15491
+ * });
15492
+ * </script>
15493
+ * ```
15494
+ * @fires brTableActionClick - Quando o usuário aciona o botão.
15495
+ */
15496
+ interface BrTableAction {
15497
+ /**
15498
+ * Rótulo acessível. Quando omitido, utiliza `label`.
15499
+ * @default null
15500
+ */
15501
+ "ariaLabel"?: string | null;
15502
+ /**
15503
+ * Densidade visual aplicada ao botão interno da ação.
15504
+ */
15505
+ "density"?: TableDensity;
15506
+ /**
15507
+ * Nome do ícone exibido pelo botão.
15508
+ * @default null
15509
+ */
15510
+ "iconName"?: string | null;
15511
+ /**
15512
+ * Texto visível e identificação semântica da ação.
15513
+ * @default null
15514
+ */
15515
+ "label"?: string | null;
15516
+ /**
15517
+ * Emitido quando o usuário aciona o botão.
15518
+ * @remarks O `detail` utiliza `TableActionClickDetail`
15519
+ */
15520
+ "onBrTableActionClick"?: (event: BrTableActionCustomEvent<TableActionClickDetail>) => void;
14752
15521
  }
14753
15522
  /**
14754
- * Corpo de dados (`<tbody>`) da tabela. Use no slot `body` do `br-table`.
14755
- * Agrupa as linhas `br-table-row` contendo as células de dados `br-table-cell`.
15523
+ * ## Design System
15524
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
15525
+ * Exibe o título, as ações globais e as ações contextuais da tabela.
15526
+ * Ações excedentes são agrupadas automaticamente em um menu.
15527
+ * Compõe `br-table`, que configura a barra automaticamente. Também pode ser usada
15528
+ * diretamente para compor uma barra de ações. Quando `hasSearch` está ativo,
15529
+ * solicita a busca à aplicação, sem filtrar ou destacar os dados.
15530
+ */
15531
+ interface BrTableBar {
15532
+ /**
15533
+ * Limite usado para decidir quando agrupar ações contextuais em um menu. Quando o número de ações excede esse valor, as ações são agrupadas no dropdown (atualmente todas são movidas para o menu colapsado).
15534
+ * @default 4
15535
+ */
15536
+ "contextualActionsLimit"?: number;
15537
+ /**
15538
+ * Densidade visual aplicada aos controles internos da barra.
15539
+ */
15540
+ "density"?: TableDensity;
15541
+ /**
15542
+ * Indica se o slot de ações contextuais possui conteúdo.
15543
+ * @default false
15544
+ */
15545
+ "hasContextualActionsContent"?: boolean;
15546
+ /**
15547
+ * Indica se o slot de ações globais possui conteúdo.
15548
+ * @default false
15549
+ */
15550
+ "hasGlobalActionsContent"?: boolean;
15551
+ /**
15552
+ * Disponibiliza a interface de busca controlada pela aplicação.
15553
+ * @default false
15554
+ */
15555
+ "hasSearch"?: boolean;
15556
+ /**
15557
+ * Título apresentado na barra principal.
15558
+ * @default ''
15559
+ */
15560
+ "heading"?: string;
15561
+ /**
15562
+ * Limite usado para decidir quando agrupar ações em um menu. Quando o número de ações excede esse valor, as ações são agrupadas no dropdown (atualmente todas são movidas para o menu colapsado).
15563
+ * @default 4
15564
+ */
15565
+ "headingActionsLimit"?: number;
15566
+ /**
15567
+ * Evento customizado emitido pela barra ao enviar a busca por Enter ou pelo botão, com `{ term }`, e ao fechar, com `{ term: '' }`. Propaga até `br-table` e atravessa Shadow DOM; é cancelável. Digitação, inicialização e alterações programáticas não emitem o evento.
15568
+ */
15569
+ "onBrTableSearch"?: (event: BrTableBarCustomEvent<TableSearchDetail>) => void;
15570
+ /**
15571
+ * Número de linhas atualmente selecionadas.
15572
+ * @default 0
15573
+ */
15574
+ "selectedRowsCount"?: number;
15575
+ /**
15576
+ * Força a apresentação da barra contextual mesmo sem seleção.
15577
+ * @default false
15578
+ */
15579
+ "showContextualBar"?: boolean;
15580
+ }
15581
+ /**
15582
+ * ## Design System
15583
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
15584
+ * Agrupa semanticamente as linhas que compõem o corpo de `br-table`.
15585
+ * É uma peça declarativa do slot `body`; recebe `br-table-row` e entrega ao
15586
+ * orquestrador a seleção, ordenação e materialização virtual. Os contêineres
15587
+ * visuais dos grupos são internos, montados pela tabela e não devem ser
15588
+ * instanciados pelo consumidor. Use o componente na composição de `br-table`.
14756
15589
  */
14757
15590
  interface BrTableBody {
14758
15591
  }
14759
15592
  /**
14760
- * Célula de dados (`<td>`) da tabela. Use dentro de um `br-table-row` no corpo da tabela.
14761
- * Coloque o conteúdo do registro no slot padrão.
15593
+ * ## Design System
15594
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
15595
+ * Representa uma célula de dados, com suporte a alinhamento, overflow,
15596
+ * tooltip e agrupamento automático de ações excedentes. Compõe `br-table-row`
15597
+ * dentro do corpo de `br-table`, que coordena posição, interação e herança.
15598
+ * Use `rowSpan` dentro de um grupo contíguo de linhas e `rowHeader` para seu
15599
+ * rótulo compartilhado; evite uso avulso fora da composição da tabela.
15600
+ * @fires brAlignmentChange - Quando um alinhamento específico muda.
15601
+ * @fires brOverflowChange - Quando a estratégia de overflow muda.
14762
15602
  */
14763
15603
  interface BrTableCell {
14764
15604
  /**
14765
- * Define o alinhamento horizontal do conteúdo dentro da célula.
15605
+ * Densidade visual aplicada ao trigger de ações agrupadas.
15606
+ */
15607
+ "actionDensity"?: TableDensity;
15608
+ /**
15609
+ * Limite local de ações exibidas diretamente.
15610
+ * @default null
15611
+ */
15612
+ "cellActionsLimit"?: number;
15613
+ /**
15614
+ * Quantidade de colunas ocupadas. Inteiro entre 1 e 1000; valores inválidos usam 1.
15615
+ * @default 1
15616
+ */
15617
+ "colSpan"?: number;
15618
+ /**
15619
+ * Alinhamento horizontal específico da célula. Quando omitido, herda da linha, coluna ou tabela, nessa ordem.
15620
+ * @default undefined
14766
15621
  */
14767
15622
  "horizontalAlignment"?: TableAlignment;
14768
15623
  /**
14769
- * Evento customizado emitido quando o alinhamento é alterado, permitindo que a célula reaja dinamicamente a mudanças nos tokens de alinhamento.
15624
+ * Texto completo do tooltip do botão de ações agrupadas desta célula. A propriedade `moreActionsLabel` de `br-table` prevalece quando informada. Valores vazios ou compostos apenas por espaços usam "Mais ações". Não altera o nome acessível do botão nem os rótulos das ações. Aceita texto simples por atributo ou propriedade, sem reflexão.
15625
+ * @default 'Mais ações'
15626
+ */
15627
+ "moreActionsLabel"?: string;
15628
+ /**
15629
+ * Emitido quando um alinhamento específico da célula muda.
14770
15630
  */
14771
15631
  "onBrAlignmentChange"?: (event: BrTableCellCustomEvent<void>) => void;
14772
15632
  /**
14773
- * Evento customizado emitido quando a configuração de overflow é alterada, permitindo que a célula reaja dinamicamente a mudanças no token de overflow.
15633
+ * Emitido quando a estratégia de overflow da célula muda.
14774
15634
  */
14775
15635
  "onBrOverflowChange"?: (event: BrTableCellCustomEvent<void>) => void;
14776
15636
  /**
14777
- * Define se o conteúdo dentro da célula deve ser truncado, permitindo a herança dessa configuração para as células filhas com base no valor definido.
15637
+ * Estratégia de overflow específica da célula. Quando omitida, herda da linha, coluna ou tabela, nessa ordem.
15638
+ * @default undefined
14778
15639
  */
14779
15640
  "overflow"?: TableOverflow;
14780
15641
  /**
14781
- * Define o modo de resolução do tooltip nesta célula.
15642
+ * Identifica um cabeçalho de linha, inclusive rótulos compartilhados por um grupo.
15643
+ * @default false
15644
+ */
15645
+ "rowHeader"?: boolean;
15646
+ /**
15647
+ * Quantidade de linhas ocupadas no cabeçalho ou grupo. Limitada às linhas disponíveis; aceita inteiros de 1 a 1000 e valores inválidos usam 1.
15648
+ * @default 1
15649
+ */
15650
+ "rowSpan"?: number;
15651
+ /**
15652
+ * Valor utilizado pela ordenação da coluna. Quando omitido, a tabela usa o texto renderizado da célula.
15653
+ * @default null
15654
+ */
15655
+ "sortValue"?: string | number;
15656
+ /**
15657
+ * Modo de exibição do tooltip da célula. Quando omitido, herda da linha, coluna ou tabela, nessa ordem. No modo `enabled`, exibe o conteúdo somente quando estiver truncado na largura disponível.
15658
+ * @default undefined
14782
15659
  */
14783
15660
  "tooltipMode"?: TableTooltipMode;
14784
15661
  /**
14785
- * Define o estado semântico do tooltip nesta célula.
15662
+ * Estado visual do tooltip da célula. Quando omitido, herda da linha, coluna ou tabela, nessa ordem.
15663
+ * @default undefined
14786
15664
  */
14787
15665
  "tooltipState"?: TableTooltipState;
14788
15666
  /**
14789
- * Define o alinhamento vertical do conteúdo dentro da célula.
15667
+ * Alinhamento vertical específico da célula. Quando omitido, herda da linha, coluna ou tabela, nessa ordem.
15668
+ * @default undefined
14790
15669
  */
14791
15670
  "verticalAlignment"?: TableAlignment;
14792
15671
  }
14793
15672
  /**
14794
- * Cabeçalho da tabela (`br-table`). Use no slot `header`.
14795
- * Agrupa as linhas `br-table-row` com as células de cabeçalho `br-table-header-cell`.
15673
+ * Para a documentação completa, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
15674
+ * Renderiza a paginação da tabela quando `hasPagination` está habilitado em `br-table`.
15675
+ * Orquestrado internamente pela tabela; não deve ser inserido diretamente pelo consumidor.
15676
+ */
15677
+ interface BrTableFooter {
15678
+ /**
15679
+ * Página atual exibida pela paginação (1-indexada).
15680
+ * @default 1
15681
+ */
15682
+ "currentPage"?: number;
15683
+ /**
15684
+ * Densidade visual herdada da tabela.
15685
+ * @default 'medium'
15686
+ */
15687
+ "density"?: TableFooterDensity;
15688
+ /**
15689
+ * Indica que a área de dados da tabela possui rolagem.
15690
+ * @default false
15691
+ */
15692
+ "hasScroll"?: boolean;
15693
+ /**
15694
+ * Quantidade de itens exibidos por página.
15695
+ * @default 10
15696
+ */
15697
+ "pageSize"?: number;
15698
+ /**
15699
+ * Opções disponíveis de itens por página.
15700
+ * @default [10, 20, 30]
15701
+ */
15702
+ "pageSizeOptions"?: number[];
15703
+ /**
15704
+ * Quantidade total de itens do conjunto de dados.
15705
+ * @default 0
15706
+ */
15707
+ "totalItems"?: number;
15708
+ }
15709
+ /**
15710
+ * ## Design System
15711
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
15712
+ * Agrupa as linhas de cabeçalho de `br-table`, que as posiciona em uma grade.
15713
+ * Use uma linha para tabelas simples e múltiplas linhas com `colSpan`/`rowSpan`
15714
+ * em `br-table-header-cell` para hierarquias de colunas. É uma peça declarativa
15715
+ * do slot `header`, usada com o orquestrador; não realiza ordenação avulsa.
14796
15716
  */
14797
15717
  interface BrTableHeader {
14798
15718
  }
14799
15719
  /**
14800
- * Célula de cabeçalho (`<th>`) da tabela. Use dentro de um `br-table-row` no cabeçalho.
14801
- * Coloque o título da coluna no slot padrão. Para habilitar ordenação, ative `sortable`.
15720
+ * ## Design System
15721
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
15722
+ * Define o conteúdo e as propriedades herdáveis de uma coluna de `br-table`.
15723
+ * Compõe as linhas de `br-table-header` no slot `header`; não deve ser usada
15724
+ * avulsa. `colSpan` e `rowSpan` representam grupos e níveis do cabeçalho.
15725
+ * Somente folhas que ocupam uma coluna podem ordenar os dados.
15726
+ * Também exibe tooltip quando o conteúdo truncado requer informação adicional.
15727
+ * @fires brColumnWidthChange - Quando a largura declarada muda.
15728
+ * @fires brAlignmentChange - Quando um alinhamento da coluna muda.
15729
+ * @fires brOverflowChange - Quando a estratégia de overflow muda.
14802
15730
  */
14803
15731
  interface BrTableHeaderCell {
14804
15732
  /**
14805
- * Define a largura da coluna. Aceita `fill`, `content`, larguras positivas em `px` ou frações positivas em `fr`. Valores inválidos usam o fallback da tabela.
14806
- * @example ```html <br-table-header-cell column-width="2fr">Descrição</br-table-header-cell> ```
15733
+ * Quantidade de colunas ocupadas. Inteiro entre 1 e 1000; valores inválidos usam 1.
15734
+ * @default 1
15735
+ */
15736
+ "colSpan"?: number;
15737
+ /**
15738
+ * Largura semântica ou CSS aplicada à coluna. Quando omitida, herda da tabela.
15739
+ * @default undefined
14807
15740
  */
14808
15741
  "columnWidth"?: ColumnWidth;
14809
15742
  /**
14810
- * Define o alinhamento horizontal do conteúdo dentro da célula de cabeçalho, permitindo a herança de alinhamento para as células filhas com base no valor definido.
15743
+ * Alinhamento horizontal herdado pelas células da coluna. Quando omitido, o cabeçalho herda da linha ou tabela, nessa ordem.
15744
+ * @default undefined
14811
15745
  */
14812
15746
  "horizontalAlignment"?: TableAlignment;
14813
15747
  /**
14814
- * Evento customizado emitido quando o alinhamento é alterado, permitindo que a célula de cabeçalho reaja dinamicamente a mudanças nos tokens de alinhamento.
15748
+ * Emitido quando um alinhamento da coluna muda.
14815
15749
  */
14816
15750
  "onBrAlignmentChange"?: (event: BrTableHeaderCellCustomEvent<void>) => void;
14817
15751
  /**
14818
- * Evento customizado emitido quando a largura da coluna é alterada, permitindo que as células reajam dinamicamente a mudanças no layout.
15752
+ * Emitido quando a largura declarada para a coluna muda.
14819
15753
  */
14820
15754
  "onBrColumnWidthChange"?: (event: BrTableHeaderCellCustomEvent<void>) => void;
14821
15755
  /**
14822
- * Evento customizado emitido quando a configuração de overflow é alterada, permitindo que a célula de cabeçalho reaja dinamicamente a mudanças no token de overflow.
15756
+ * Emitido quando a estratégia de overflow muda.
14823
15757
  */
14824
15758
  "onBrOverflowChange"?: (event: BrTableHeaderCellCustomEvent<void>) => void;
14825
15759
  /**
14826
- * Define se o conteúdo dentro da célula de cabeçalho deve ser truncado, permitindo a herança dessa configuração para as células filhas com base no valor definido.
15760
+ * Estratégia de overflow herdada pelas células da coluna. Quando omitida, o cabeçalho herda da linha ou tabela, nessa ordem.
15761
+ * @default undefined
14827
15762
  */
14828
15763
  "overflow"?: TableOverflow;
14829
15764
  /**
14830
- * Define o modo de resolução do tooltip nesta coluna/célula de cabeçalho.
15765
+ * Quantidade de linhas ocupadas no cabeçalho ou grupo. Limitada às linhas disponíveis; aceita inteiros de 1 a 1000 e valores inválidos usam 1.
15766
+ * @default 1
15767
+ */
15768
+ "rowSpan"?: number;
15769
+ /**
15770
+ * Estado atual de ordenação controlado por `br-table`.
15771
+ */
15772
+ "sortDirection"?: TableSortDirection;
15773
+ /**
15774
+ * Habilita a ordenação desta coluna.
15775
+ * @default false
15776
+ */
15777
+ "sortable"?: boolean;
15778
+ /**
15779
+ * Modo de exibição herdado pelos tooltips da coluna. Quando omitido ou definido como inherit, o cabeçalho herda da linha ou tabela, nessa ordem.
15780
+ * @default undefined
14831
15781
  */
14832
15782
  "tooltipMode"?: TableTooltipMode;
14833
15783
  /**
14834
- * Define o estado semântico do tooltip nesta coluna/célula de cabeçalho.
15784
+ * Estado visual herdado pelos tooltips da coluna. Quando omitido, o cabeçalho herda da linha ou tabela, nessa ordem.
15785
+ * @default undefined
14835
15786
  */
14836
15787
  "tooltipState"?: TableTooltipState;
14837
15788
  /**
14838
- * Define o alinhamento vertical do conteúdo dentro da célula de cabeçalho, permitindo a herança de alinhamento para as células filhas com base no valor definido.
15789
+ * Alinhamento vertical herdado pelas células da coluna. Quando omitido, o cabeçalho herda da linha ou tabela, nessa ordem.
15790
+ * @default undefined
14839
15791
  */
14840
15792
  "verticalAlignment"?: TableAlignment;
14841
15793
  }
14842
15794
  /**
14843
- * Linha horizontal (`<tr>`) da tabela. Use dentro de `br-table-header` ou `br-table-body`.
14844
- * Use `selected` para indicar que a linha está selecionada.
15795
+ * ## Design System
15796
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
15797
+ * Representa uma linha de dados e sua área opcional de conteúdo expandido.
15798
+ * É uma peça declarativa de `br-table-body` ou `br-table-header`, coordenada por
15799
+ * `br-table`. Recebe células de dados ou cabeçalho conforme o pai. `rowGroup`
15800
+ * identifica linhas contíguas que devem permanecer juntas; use-o apenas no corpo.
15801
+ * Em grupos, os detalhes expandidos são apresentados após as linhas do grupo.
15802
+ * @fires brAlignmentChange - Quando um alinhamento herdável muda.
15803
+ * @fires brOverflowChange - Quando a estratégia de overflow muda.
14845
15804
  */
14846
15805
  interface BrTableRow {
14847
15806
  /**
14848
- * Define o alinhamento horizontal das células dentro da linha, permitindo a herança de alinhamento para as células filhas com base no valor definido.
15807
+ * Indica se o conteúdo adicional da linha está visível.
15808
+ * @default false
15809
+ */
15810
+ "expanded"?: boolean;
15811
+ /**
15812
+ * Alinhamento horizontal herdado pelas células da linha.
15813
+ * @default undefined
14849
15814
  */
14850
15815
  "horizontalAlignment"?: TableAlignment;
14851
15816
  /**
14852
- * Evento customizado emitido quando o alinhamento é alterado, permitindo que as células reajam dinamicamente a mudanças nos tokens de alinhamento.
15817
+ * Emitido quando uma propriedade de alinhamento da linha muda.
14853
15818
  */
14854
15819
  "onBrAlignmentChange"?: (event: BrTableRowCustomEvent<void>) => void;
14855
15820
  /**
14856
- * Evento customizado emitido quando a configuração de overflow é alterada, permitindo que as células reajam dinamicamente a mudanças no token de overflow.
15821
+ * Emitido quando a estratégia de overflow da linha muda.
14857
15822
  */
14858
15823
  "onBrOverflowChange"?: (event: BrTableRowCustomEvent<void>) => void;
14859
15824
  /**
14860
- * Define se o conteúdo dentro das células da linha deve ser truncado, permitindo a herança dessa configuração para as células filhas com base no valor definido.
15825
+ * Estratégia de overflow herdada pelas células da linha.
15826
+ * @default undefined
14861
15827
  */
14862
15828
  "overflow"?: TableOverflow;
14863
15829
  /**
14864
- * Define o modo de resolução do tooltip nas células desta linha.
15830
+ * Controla se a expansão é habilitada, desabilitada ou herdada da tabela.
15831
+ * @default 'inherit'
15832
+ */
15833
+ "rowExpansion"?: TableRowExpansion;
15834
+ /**
15835
+ * Identifica um grupo contíguo de linhas com chave exclusiva, preservado como unidade na ordenação, paginação e virtualização. Vazio ou omitido mantém a linha independente. A seleção continua sendo individual por linha.
15836
+ * @default undefined
15837
+ */
15838
+ "rowGroup"?: string;
15839
+ /**
15840
+ * Indica se a linha está selecionada.
15841
+ * @default false
15842
+ */
15843
+ "selected"?: boolean;
15844
+ /**
15845
+ * Modo de exibição herdado pelos tooltips da linha.
15846
+ * @default undefined
14865
15847
  */
14866
15848
  "tooltipMode"?: TableTooltipMode;
14867
15849
  /**
14868
- * Define o estado semântico do tooltip nas células desta linha.
15850
+ * Estado visual herdado pelos tooltips da linha.
15851
+ * @default undefined
14869
15852
  */
14870
15853
  "tooltipState"?: TableTooltipState;
14871
15854
  /**
14872
- * Define o alinhamento vertical das células dentro da linha, permitindo a herança de alinhamento para as células filhas com base no valor definido.
15855
+ * Alinhamento vertical herdado pelas células da linha.
15856
+ * @default undefined
14873
15857
  */
14874
15858
  "verticalAlignment"?: TableAlignment;
15859
+ /**
15860
+ * Altura visível da área expandida desta linha, em pixels.
15861
+ * @remarks Quando omitida, herda `virtualExpandedContentHeight` de `br-table`.
15862
+ * @default null
15863
+ */
15864
+ "virtualExpandedContentHeight"?: number | null;
14875
15865
  }
14876
15866
  /**
14877
15867
  * O `br-tag` categoriza, rotula ou destaca informações curtas e metadados.
@@ -16393,34 +17383,95 @@ declare namespace LocalJSX {
16393
17383
  "columnDivider": boolean;
16394
17384
  "hasRowDivider": boolean;
16395
17385
  "rowDivider": boolean;
17386
+ "hasRowHover": boolean;
17387
+ "loading": boolean;
17388
+ "heading": string;
17389
+ "showContextualBar": boolean;
17390
+ "headingActionsLimit": number;
17391
+ "contextualActionsLimit": number;
17392
+ "moreActionsHeadingLabel": string;
17393
+ "moreActionsContextualLabel": string;
17394
+ "moreActionsLabel": string;
17395
+ "cellActionsLimit": number;
17396
+ "hasRowSelection": boolean;
17397
+ "hasRowExpansion": boolean;
17398
+ "hasSearch": boolean;
17399
+ "hasPagination": boolean;
17400
+ "currentPage": number;
17401
+ "pageSize": number;
17402
+ "totalItems": number;
17403
+ "sortMode": TableSortMode;
17404
+ "sortStrategy": TableSortStrategy;
17405
+ "visibleRows": number;
17406
+ "heightRows": number;
17407
+ "virtualExpandedContentHeight": number;
16396
17408
  "horizontalAlignment": TableAlignment;
16397
17409
  "verticalAlignment": TableAlignment;
16398
17410
  "overflow": TableOverflow;
16399
17411
  "tooltipState": TableTooltipState;
16400
17412
  "tooltipMode": TableTooltipMode;
16401
- "loading": boolean;
17413
+ }
17414
+ interface BrTableActionAttributes {
17415
+ "label": string | null;
17416
+ "iconName": string | null;
17417
+ "ariaLabel": string | null;
17418
+ "density": TableDensity;
17419
+ }
17420
+ interface BrTableBarAttributes {
17421
+ "heading": string;
17422
+ "headingActionsLimit": number;
17423
+ "contextualActionsLimit": number;
17424
+ "showContextualBar": boolean;
17425
+ "selectedRowsCount": number;
17426
+ "hasGlobalActionsContent": boolean;
17427
+ "hasContextualActionsContent": boolean;
17428
+ "hasSearch": boolean;
17429
+ "density": TableDensity;
16402
17430
  }
16403
17431
  interface BrTableCellAttributes {
17432
+ "colSpan": number;
17433
+ "rowSpan": number;
17434
+ "rowHeader": boolean;
16404
17435
  "horizontalAlignment": TableAlignment;
16405
17436
  "verticalAlignment": TableAlignment;
16406
17437
  "overflow": TableOverflow;
17438
+ "cellActionsLimit": number;
17439
+ "moreActionsLabel": string;
17440
+ "sortValue": string;
16407
17441
  "tooltipState": TableTooltipState;
16408
17442
  "tooltipMode": TableTooltipMode;
17443
+ "actionDensity": TableDensity;
17444
+ }
17445
+ interface BrTableFooterAttributes {
17446
+ "currentPage": number;
17447
+ "pageSize": number;
17448
+ "totalItems": number;
17449
+ "density": TableFooterDensity;
17450
+ "hasScroll": boolean;
16409
17451
  }
16410
17452
  interface BrTableHeaderCellAttributes {
17453
+ "colSpan": number;
17454
+ "rowSpan": number;
16411
17455
  "columnWidth": ColumnWidth;
16412
17456
  "horizontalAlignment": TableAlignment;
16413
17457
  "verticalAlignment": TableAlignment;
16414
17458
  "overflow": TableOverflow;
16415
17459
  "tooltipState": TableTooltipState;
16416
17460
  "tooltipMode": TableTooltipMode;
17461
+ "sortable": boolean;
17462
+ "sortDirection": TableSortDirection;
16417
17463
  }
16418
17464
  interface BrTableRowAttributes {
17465
+ "rowGroup": string;
16419
17466
  "horizontalAlignment": TableAlignment;
16420
17467
  "verticalAlignment": TableAlignment;
16421
17468
  "overflow": TableOverflow;
16422
17469
  "tooltipState": TableTooltipState;
16423
17470
  "tooltipMode": TableTooltipMode;
17471
+ "selected": boolean;
17472
+ "rowExpansion": TableRowExpansion;
17473
+ "virtualExpandedContentHeight": number | null;
17474
+ "expanded": boolean;
16424
17475
  }
16425
17476
  interface BrTagAttributes {
16426
17477
  "label": string;
@@ -16594,8 +17645,11 @@ declare namespace LocalJSX {
16594
17645
  "br-tab": Omit<BrTab, keyof BrTabAttributes> & { [K in keyof BrTab & keyof BrTabAttributes]?: BrTab[K] } & { [K in keyof BrTab & keyof BrTabAttributes as `attr:${K}`]?: BrTabAttributes[K] } & { [K in keyof BrTab & keyof BrTabAttributes as `prop:${K}`]?: BrTab[K] };
16595
17646
  "br-tab-item": Omit<BrTabItem, keyof BrTabItemAttributes> & { [K in keyof BrTabItem & keyof BrTabItemAttributes]?: BrTabItem[K] } & { [K in keyof BrTabItem & keyof BrTabItemAttributes as `attr:${K}`]?: BrTabItemAttributes[K] } & { [K in keyof BrTabItem & keyof BrTabItemAttributes as `prop:${K}`]?: BrTabItem[K] };
16596
17647
  "br-table": Omit<BrTable, keyof BrTableAttributes> & { [K in keyof BrTable & keyof BrTableAttributes]?: BrTable[K] } & { [K in keyof BrTable & keyof BrTableAttributes as `attr:${K}`]?: BrTableAttributes[K] } & { [K in keyof BrTable & keyof BrTableAttributes as `prop:${K}`]?: BrTable[K] };
17648
+ "br-table-action": Omit<BrTableAction, keyof BrTableActionAttributes> & { [K in keyof BrTableAction & keyof BrTableActionAttributes]?: BrTableAction[K] } & { [K in keyof BrTableAction & keyof BrTableActionAttributes as `attr:${K}`]?: BrTableActionAttributes[K] } & { [K in keyof BrTableAction & keyof BrTableActionAttributes as `prop:${K}`]?: BrTableAction[K] };
17649
+ "br-table-bar": Omit<BrTableBar, keyof BrTableBarAttributes> & { [K in keyof BrTableBar & keyof BrTableBarAttributes]?: BrTableBar[K] } & { [K in keyof BrTableBar & keyof BrTableBarAttributes as `attr:${K}`]?: BrTableBarAttributes[K] } & { [K in keyof BrTableBar & keyof BrTableBarAttributes as `prop:${K}`]?: BrTableBar[K] };
16597
17650
  "br-table-body": BrTableBody;
16598
17651
  "br-table-cell": Omit<BrTableCell, keyof BrTableCellAttributes> & { [K in keyof BrTableCell & keyof BrTableCellAttributes]?: BrTableCell[K] } & { [K in keyof BrTableCell & keyof BrTableCellAttributes as `attr:${K}`]?: BrTableCellAttributes[K] } & { [K in keyof BrTableCell & keyof BrTableCellAttributes as `prop:${K}`]?: BrTableCell[K] };
17652
+ "br-table-footer": Omit<BrTableFooter, keyof BrTableFooterAttributes> & { [K in keyof BrTableFooter & keyof BrTableFooterAttributes]?: BrTableFooter[K] } & { [K in keyof BrTableFooter & keyof BrTableFooterAttributes as `attr:${K}`]?: BrTableFooterAttributes[K] } & { [K in keyof BrTableFooter & keyof BrTableFooterAttributes as `prop:${K}`]?: BrTableFooter[K] };
16599
17653
  "br-table-header": BrTableHeader;
16600
17654
  "br-table-header-cell": Omit<BrTableHeaderCell, keyof BrTableHeaderCellAttributes> & { [K in keyof BrTableHeaderCell & keyof BrTableHeaderCellAttributes]?: BrTableHeaderCell[K] } & { [K in keyof BrTableHeaderCell & keyof BrTableHeaderCellAttributes as `attr:${K}`]?: BrTableHeaderCellAttributes[K] } & { [K in keyof BrTableHeaderCell & keyof BrTableHeaderCellAttributes as `prop:${K}`]?: BrTableHeaderCell[K] };
16601
17655
  "br-table-row": Omit<BrTableRow, keyof BrTableRowAttributes> & { [K in keyof BrTableRow & keyof BrTableRowAttributes]?: BrTableRow[K] } & { [K in keyof BrTableRow & keyof BrTableRowAttributes as `attr:${K}`]?: BrTableRowAttributes[K] } & { [K in keyof BrTableRow & keyof BrTableRowAttributes as `prop:${K}`]?: BrTableRow[K] };
@@ -17213,8 +18267,8 @@ declare module "@stencil/core" {
17213
18267
  * O `br-magic-button` é o botão de ação flutuante (FAB) que destaca a ação primária ou mais frequente da tela.
17214
18268
  * Pode ser exibido apenas com ícone (formato circular) ou expandido com texto descritivo.
17215
18269
  * ```html
17216
- * <br-magic-button icon="fa6-solid:plus" aria-label="Novo item"></br-magic-button>
17217
- * <br-magic-button icon="fa6-solid:plus">Criar documento</br-magic-button>
18270
+ * <br-magic-button icon="fa-solid:plus" aria-label="Novo item"></br-magic-button>
18271
+ * <br-magic-button icon="fa-solid:plus">Criar documento</br-magic-button>
17218
18272
  * ```
17219
18273
  * ### Quando usar
17220
18274
  * - Ação principal e dominante da tela em dispositivos móveis ou interfaces focadas em uma tarefa única.
@@ -17640,59 +18694,127 @@ declare module "@stencil/core" {
17640
18694
  */
17641
18695
  "br-tab-item": LocalJSX.IntrinsicElements["br-tab-item"] & JSXBase.HTMLAttributes<HTMLBrTabItemElement>;
17642
18696
  /**
17643
- * O `br-table` estrutura e exibe conjuntos de dados organizados em linhas e colunas.
17644
- * Estruture a tabela usando os subcomponentes `br-table-header`, `br-table-body`, `br-table-row` e `br-table-cell`. Para exibir um indicador de carregamento durante atualizações assíncronas, use a propriedade `loading`.
18697
+ * ## Design System
18698
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
18699
+ * Apresenta e permite interagir com dados tabulares; não deve ser usada para
18700
+ * organizar layout ou conteúdo que não seja tabular. Recebe o cabeçalho e o corpo
18701
+ * pelos slots `header` e `body`, compostos por `br-table-header` e
18702
+ * `br-table-header-cell`, e por `br-table-body`, `br-table-row` e `br-table-cell`.
18703
+ * Orquestra a grade, a acessibilidade, a ordenação, a seleção e a expansão das
18704
+ * linhas. A barra de ações é gerenciada pela tabela; `br-table-footer` é
18705
+ * renderizado quando a paginação está habilitada. As propriedades de célula
18706
+ * seguem, quando aplicável, a precedência: célula, linha, coluna, tabela e valor
18707
+ * padrão. Cabeçalhos multinível usam várias linhas em `br-table-header` com
18708
+ * `colSpan`/`rowSpan`. Linhas contíguas com `rowGroup` formam unidades de ordenação,
18709
+ * paginação e virtualização; a seleção permanece individual. Células com `rowSpan`
18710
+ * não atravessam os limites do grupo. Prefira tabelas simples quando possível.
18711
+ * @cssprop --br-table-loading-opacity - Opacidade do conteúdo durante o carregamento. Padrão: 0.5.
18712
+ * @fires brTableActionClick - Quando uma ação pública é acionada.
18713
+ * @fires brTableSelectionChange - Quando o conjunto selecionado muda.
18714
+ * @fires brTableRowExpansionChange - Quando uma linha expande ou recolhe.
18715
+ * @fires brTableSortRequest - Antes de aplicar uma solicitação de ordenação.
18716
+ * @fires brTableSortChange - Quando os critérios de ordenação mudam.
18717
+ * @fires brTablePageChange - Quando o consumidor solicita outra página pela paginação do rodapé.
18718
+ * @fires brTablePageSizeChange - Quando o consumidor solicita outra quantidade de itens por página.
18719
+ * @fires brTableSearch - Quando a busca é enviada ou fechada.
18720
+ */
18721
+ "br-table": LocalJSX.IntrinsicElements["br-table"] & JSXBase.HTMLAttributes<HTMLBrTableElement>;
18722
+ /**
18723
+ * ## Design System
18724
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
18725
+ * Representa uma ação global, contextual ou associada a uma linha da tabela.
18726
+ * O contexto é inferido pelo slot e pela posição do componente na árvore.
18727
+ * Para executar funções a partir das ações, ouça o evento `brTableActionClick`:
17645
18728
  * ```html
17646
- * <br-table>
17647
- * <br-table-header slot="header">
17648
- * <br-table-row>
17649
- * <br-table-header-cell>Nome</br-table-header-cell>
17650
- * <br-table-header-cell>Cargo</br-table-header-cell>
17651
- * </br-table-row>
17652
- * </br-table-header>
17653
- * <br-table-body slot="body">
17654
- * <br-table-row>
17655
- * <br-table-cell>Maria Silva</br-table-cell>
17656
- * <br-table-cell>Analista</br-table-cell>
17657
- * </br-table-row>
17658
- * </br-table-body>
17659
- * </br-table>
18729
+ * <!-- 1. Ouvindo diretamente na ação -->
18730
+ * <br-table-action id="btn-filtro" label="Filtros" icon-name="fa-solid:filter"></br-table-action>
18731
+ * <script>
18732
+ * document.getElementById('btn-filtro').addEventListener('brTableActionClick', () => {
18733
+ * executarFiltros();
18734
+ * });
18735
+ * </script>
18736
+ * <!-- 2. Ouvindo na tabela (recomendado para ações diretas e colapsadas em menu) -->
18737
+ * <script>
18738
+ * table.addEventListener('brTableActionClick', (event) => {
18739
+ * const { type, label, rowIndex } = event.detail;
18740
+ * if (type === 'row') executarAcaoLinha(label, rowIndex);
18741
+ * else if (type === 'global') executarAcaoGlobal(label);
18742
+ * });
18743
+ * </script>
17660
18744
  * ```
17661
- * ### Quando usar
17662
- * - Dados bidimensionais com cabeçalhos de coluna e necessidades de ordenação ou comparação.
17663
- * ### Quando evitar
17664
- * - Listas simples de itens lineares: use `br-list`.
17665
- * - Agrupamento de informações de um único registro: use `br-card`.
17666
- * Consulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/table?tab=designer).
17667
- * @category Dados, Conteúdo
17668
- * @status stable
17669
- * @Slot header: Área para inclusão do subcomponente br-table-header
17670
- * @Slot body: Área para inclusão do subcomponente br-table-body
18745
+ * @fires brTableActionClick - Quando o usuário aciona o botão.
17671
18746
  */
17672
- "br-table": LocalJSX.IntrinsicElements["br-table"] & JSXBase.HTMLAttributes<HTMLBrTableElement>;
18747
+ "br-table-action": LocalJSX.IntrinsicElements["br-table-action"] & JSXBase.HTMLAttributes<HTMLBrTableActionElement>;
17673
18748
  /**
17674
- * Corpo de dados (`<tbody>`) da tabela. Use no slot `body` do `br-table`.
17675
- * Agrupa as linhas `br-table-row` contendo as células de dados `br-table-cell`.
18749
+ * ## Design System
18750
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
18751
+ * Exibe o título, as ações globais e as ações contextuais da tabela.
18752
+ * Ações excedentes são agrupadas automaticamente em um menu.
18753
+ * Compõe `br-table`, que configura a barra automaticamente. Também pode ser usada
18754
+ * diretamente para compor uma barra de ações. Quando `hasSearch` está ativo,
18755
+ * solicita a busca à aplicação, sem filtrar ou destacar os dados.
18756
+ */
18757
+ "br-table-bar": LocalJSX.IntrinsicElements["br-table-bar"] & JSXBase.HTMLAttributes<HTMLBrTableBarElement>;
18758
+ /**
18759
+ * ## Design System
18760
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
18761
+ * Agrupa semanticamente as linhas que compõem o corpo de `br-table`.
18762
+ * É uma peça declarativa do slot `body`; recebe `br-table-row` e entrega ao
18763
+ * orquestrador a seleção, ordenação e materialização virtual. Os contêineres
18764
+ * visuais dos grupos são internos, montados pela tabela e não devem ser
18765
+ * instanciados pelo consumidor. Use o componente na composição de `br-table`.
17676
18766
  */
17677
18767
  "br-table-body": LocalJSX.IntrinsicElements["br-table-body"] & JSXBase.HTMLAttributes<HTMLBrTableBodyElement>;
17678
18768
  /**
17679
- * Célula de dados (`<td>`) da tabela. Use dentro de um `br-table-row` no corpo da tabela.
17680
- * Coloque o conteúdo do registro no slot padrão.
18769
+ * ## Design System
18770
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
18771
+ * Representa uma célula de dados, com suporte a alinhamento, overflow,
18772
+ * tooltip e agrupamento automático de ações excedentes. Compõe `br-table-row`
18773
+ * dentro do corpo de `br-table`, que coordena posição, interação e herança.
18774
+ * Use `rowSpan` dentro de um grupo contíguo de linhas e `rowHeader` para seu
18775
+ * rótulo compartilhado; evite uso avulso fora da composição da tabela.
18776
+ * @fires brAlignmentChange - Quando um alinhamento específico muda.
18777
+ * @fires brOverflowChange - Quando a estratégia de overflow muda.
17681
18778
  */
17682
18779
  "br-table-cell": LocalJSX.IntrinsicElements["br-table-cell"] & JSXBase.HTMLAttributes<HTMLBrTableCellElement>;
17683
18780
  /**
17684
- * Cabeçalho da tabela (`br-table`). Use no slot `header`.
17685
- * Agrupa as linhas `br-table-row` com as células de cabeçalho `br-table-header-cell`.
18781
+ * Para a documentação completa, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
18782
+ * Renderiza a paginação da tabela quando `hasPagination` está habilitado em `br-table`.
18783
+ * Orquestrado internamente pela tabela; não deve ser inserido diretamente pelo consumidor.
18784
+ */
18785
+ "br-table-footer": LocalJSX.IntrinsicElements["br-table-footer"] & JSXBase.HTMLAttributes<HTMLBrTableFooterElement>;
18786
+ /**
18787
+ * ## Design System
18788
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
18789
+ * Agrupa as linhas de cabeçalho de `br-table`, que as posiciona em uma grade.
18790
+ * Use uma linha para tabelas simples e múltiplas linhas com `colSpan`/`rowSpan`
18791
+ * em `br-table-header-cell` para hierarquias de colunas. É uma peça declarativa
18792
+ * do slot `header`, usada com o orquestrador; não realiza ordenação avulsa.
17686
18793
  */
17687
18794
  "br-table-header": LocalJSX.IntrinsicElements["br-table-header"] & JSXBase.HTMLAttributes<HTMLBrTableHeaderElement>;
17688
18795
  /**
17689
- * Célula de cabeçalho (`<th>`) da tabela. Use dentro de um `br-table-row` no cabeçalho.
17690
- * Coloque o título da coluna no slot padrão. Para habilitar ordenação, ative `sortable`.
18796
+ * ## Design System
18797
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
18798
+ * Define o conteúdo e as propriedades herdáveis de uma coluna de `br-table`.
18799
+ * Compõe as linhas de `br-table-header` no slot `header`; não deve ser usada
18800
+ * avulsa. `colSpan` e `rowSpan` representam grupos e níveis do cabeçalho.
18801
+ * Somente folhas que ocupam uma coluna podem ordenar os dados.
18802
+ * Também exibe tooltip quando o conteúdo truncado requer informação adicional.
18803
+ * @fires brColumnWidthChange - Quando a largura declarada muda.
18804
+ * @fires brAlignmentChange - Quando um alinhamento da coluna muda.
18805
+ * @fires brOverflowChange - Quando a estratégia de overflow muda.
17691
18806
  */
17692
18807
  "br-table-header-cell": LocalJSX.IntrinsicElements["br-table-header-cell"] & JSXBase.HTMLAttributes<HTMLBrTableHeaderCellElement>;
17693
18808
  /**
17694
- * Linha horizontal (`<tr>`) da tabela. Use dentro de `br-table-header` ou `br-table-body`.
17695
- * Use `selected` para indicar que a linha está selecionada.
18809
+ * ## Design System
18810
+ * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).
18811
+ * Representa uma linha de dados e sua área opcional de conteúdo expandido.
18812
+ * É uma peça declarativa de `br-table-body` ou `br-table-header`, coordenada por
18813
+ * `br-table`. Recebe células de dados ou cabeçalho conforme o pai. `rowGroup`
18814
+ * identifica linhas contíguas que devem permanecer juntas; use-o apenas no corpo.
18815
+ * Em grupos, os detalhes expandidos são apresentados após as linhas do grupo.
18816
+ * @fires brAlignmentChange - Quando um alinhamento herdável muda.
18817
+ * @fires brOverflowChange - Quando a estratégia de overflow muda.
17696
18818
  */
17697
18819
  "br-table-row": LocalJSX.IntrinsicElements["br-table-row"] & JSXBase.HTMLAttributes<HTMLBrTableRowElement>;
17698
18820
  /**