@govbr-ds/webcomponents 2.2.0 → 2.4.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 (658) hide show
  1. package/README.md +75 -24
  2. package/cem/custom-elements.json +1858 -1712
  3. package/cem/webcomponents.html-custom-data.json +73 -67
  4. package/dist/cjs/br-avatar.cjs.entry.js +2 -2
  5. package/dist/cjs/br-breadcrumb-item.cjs.entry.js +1 -1
  6. package/dist/cjs/br-breadcrumb.cjs.entry.js +2 -2
  7. package/dist/cjs/br-button_2.cjs.entry.js +10 -5
  8. package/dist/cjs/br-card.cjs.entry.js +2 -2
  9. package/dist/cjs/br-carousel-page.cjs.entry.js +2 -2
  10. package/dist/cjs/br-carousel.cjs.entry.js +2 -2
  11. package/dist/cjs/br-checkbox-group.cjs.entry.js +2 -2
  12. package/dist/cjs/br-checkbox.cjs.entry.js +3 -3
  13. package/dist/cjs/br-checkgroup.cjs.entry.js +1 -1
  14. package/dist/cjs/br-collapse_2.cjs.entry.js +11 -7
  15. package/dist/cjs/br-cookiebar-cookie.cjs.entry.js +2 -2
  16. package/dist/cjs/br-cookiebar-group.cjs.entry.js +2 -2
  17. package/dist/cjs/br-cookiebar-header.cjs.entry.js +2 -2
  18. package/dist/cjs/br-cookiebar-link.cjs.entry.js +2 -2
  19. package/dist/cjs/br-cookiebar-note-group.cjs.entry.js +2 -2
  20. package/dist/cjs/br-cookiebar-note.cjs.entry.js +2 -2
  21. package/dist/cjs/br-cookiebar.cjs.entry.js +2 -2
  22. package/dist/cjs/br-crumb.cjs.entry.js +1 -1
  23. package/dist/cjs/br-date-picker_3.cjs.entry.js +869 -517
  24. package/dist/cjs/br-datetime-picker.cjs.entry.js +1347 -311
  25. package/dist/cjs/br-divider.cjs.entry.js +2 -2
  26. package/dist/cjs/br-dropdown_2.cjs.entry.js +282 -165
  27. package/dist/cjs/br-footer-category.cjs.entry.js +2 -2
  28. package/dist/cjs/br-footer-item.cjs.entry.js +2 -2
  29. package/dist/cjs/br-footer-legal.cjs.entry.js +2 -2
  30. package/dist/cjs/br-footer-logo.cjs.entry.js +2 -2
  31. package/dist/cjs/br-footer-social.cjs.entry.js +2 -2
  32. package/dist/cjs/br-footer.cjs.entry.js +2 -2
  33. package/dist/cjs/br-header-function.cjs.entry.js +2 -2
  34. package/dist/cjs/br-header-link.cjs.entry.js +2 -2
  35. package/dist/cjs/br-header-list.cjs.entry.js +2 -2
  36. package/dist/cjs/br-header-logo.cjs.entry.js +2 -2
  37. package/dist/cjs/br-header.cjs.entry.js +27 -23
  38. package/dist/cjs/br-icon.cjs.entry.js +4 -33
  39. package/dist/cjs/br-input.cjs.entry.js +31 -6
  40. package/dist/cjs/br-item.cjs.entry.js +5 -4
  41. package/dist/cjs/br-link.cjs.entry.js +2 -2
  42. package/dist/cjs/br-loading.cjs.entry.js +2 -2
  43. package/dist/cjs/br-magic-button.cjs.entry.js +21 -8
  44. package/dist/cjs/br-menu-group.cjs.entry.js +2 -2
  45. package/dist/cjs/br-menu-header.cjs.entry.js +2 -2
  46. package/dist/cjs/br-menu-info.cjs.entry.js +2 -2
  47. package/dist/cjs/br-menu-item.cjs.entry.js +2 -2
  48. package/dist/cjs/br-menu-link.cjs.entry.js +2 -2
  49. package/dist/cjs/br-menu-list.cjs.entry.js +2 -2
  50. package/dist/cjs/br-menu-logo.cjs.entry.js +2 -2
  51. package/dist/cjs/br-menu-social.cjs.entry.js +2 -2
  52. package/dist/cjs/br-menu.cjs.entry.js +2 -2
  53. package/dist/cjs/br-modal.cjs.entry.js +20 -4
  54. package/dist/cjs/br-notification-body.cjs.entry.js +2 -2
  55. package/dist/cjs/br-notification-header.cjs.entry.js +2 -2
  56. package/dist/cjs/br-notification-item.cjs.entry.js +2 -2
  57. package/dist/cjs/br-notification.cjs.entry.js +2 -2
  58. package/dist/cjs/br-pagination.cjs.entry.js +4 -4
  59. package/dist/cjs/br-radio-group.cjs.entry.js +3 -3
  60. package/dist/cjs/br-radio.cjs.entry.js +3 -3
  61. package/dist/cjs/br-scrim.cjs.entry.js +2 -2
  62. package/dist/cjs/br-select-input_3.cjs.entry.js +286 -100
  63. package/dist/cjs/br-sign-in.cjs.entry.js +8 -4
  64. package/dist/cjs/br-skip-link-item.cjs.entry.js +1 -1
  65. package/dist/cjs/br-skip-link.cjs.entry.js +2 -2
  66. package/dist/cjs/br-skiplink-item.cjs.entry.js +2 -2
  67. package/dist/cjs/br-slider.cjs.entry.js +3 -3
  68. package/dist/cjs/br-step_2.cjs.entry.js +3 -3
  69. package/dist/cjs/br-switch.cjs.entry.js +3 -3
  70. package/dist/cjs/br-tab-item.cjs.entry.js +3 -3
  71. package/dist/cjs/br-tab.cjs.entry.js +38 -13
  72. package/dist/cjs/br-table-body.cjs.entry.js +2 -2
  73. package/dist/cjs/br-table-cell.cjs.entry.js +2 -2
  74. package/dist/cjs/br-table-header-cell.cjs.entry.js +2 -2
  75. package/dist/cjs/br-table-header.cjs.entry.js +2 -2
  76. package/dist/cjs/br-table-row.cjs.entry.js +2 -2
  77. package/dist/cjs/br-table.cjs.entry.js +2 -2
  78. package/dist/cjs/br-tag.cjs.entry.js +3 -3
  79. package/dist/cjs/br-textarea.cjs.entry.js +3 -3
  80. package/dist/cjs/br-tooltip.cjs.entry.js +2 -2
  81. package/dist/cjs/br-upload.cjs.entry.js +7 -23
  82. package/dist/cjs/br-wizard-panel.cjs.entry.js +2 -2
  83. package/dist/cjs/br-wizard.cjs.entry.js +2 -2
  84. package/dist/cjs/{datetime-picker-constants-B5pWeOn1.js → datetime-picker-constants-CCeI5iW7.js} +20 -5
  85. package/dist/cjs/format-bytes-Cs8SH2w0.js +24 -0
  86. package/dist/cjs/icon.utils-DF6kMskA.js +46 -0
  87. package/dist/cjs/{index-CGgZBuyy.js → index-Bc30P_6z.js} +33 -27
  88. package/dist/cjs/{index-C92n55ch.js → index-C-IpVFDH.js} +13 -13
  89. package/dist/cjs/index.cjs.js +2 -2
  90. package/dist/cjs/{datetime-picker-props-validation-DmNKSXsy.js → isValid-CduHZTFc.js} +1 -483
  91. package/dist/cjs/loader.cjs.js +2 -2
  92. package/dist/cjs/select.utils-C38f5Kea.js +62 -0
  93. package/dist/cjs/{validator-CTCajtT9.js → validator-GkkueMOx.js} +18 -0
  94. package/dist/cjs/webcomponents.cjs.js +3 -3
  95. package/dist/collection/collection-manifest.json +1 -1
  96. package/dist/collection/components/avatar/avatar.css +1 -1
  97. package/dist/collection/components/breadcrumb/breadcrumb.css +1 -1
  98. package/dist/collection/components/button/button.css +1 -1
  99. package/dist/collection/components/button/button.js +8 -3
  100. package/dist/collection/components/card/card.css +1 -1
  101. package/dist/collection/components/carousel/carousel-page/carousel-page.css +1 -1
  102. package/dist/collection/components/carousel/carousel.css +1 -1
  103. package/dist/collection/components/checkbox/checkbox.css +1 -1
  104. package/dist/collection/components/checkbox-group/checkbox-group.css +1 -1
  105. package/dist/collection/components/collapse/collapse.css +1 -1
  106. package/dist/collection/components/collapse/collapse.js +12 -6
  107. package/dist/collection/components/cookiebar/cookiebar-cookie/cookiebar-cookie.css +1 -1
  108. package/dist/collection/components/cookiebar/cookiebar-group/cookiebar-group.css +1 -1
  109. package/dist/collection/components/cookiebar/cookiebar-header/cookiebar-header.css +1 -1
  110. package/dist/collection/components/cookiebar/cookiebar-link/cookiebar-link.css +1 -1
  111. package/dist/collection/components/cookiebar/cookiebar-note/cookiebar-note.css +1 -1
  112. package/dist/collection/components/cookiebar/cookiebar-note-group/cookiebar-note-group.css +1 -1
  113. package/dist/collection/components/cookiebar/cookiebar.css +1 -1
  114. package/dist/collection/components/datetime-picker/date-picker/date-picker-locale.js +12 -12
  115. package/dist/collection/components/datetime-picker/date-picker/date-picker-props-validation.js +14 -13
  116. package/dist/collection/components/datetime-picker/date-picker/date-picker.css +1 -1
  117. package/dist/collection/components/datetime-picker/date-picker/date-picker.js +384 -280
  118. package/dist/collection/components/datetime-picker/datetime-input/datetime-input-constants.js +59 -0
  119. package/dist/collection/components/datetime-picker/datetime-input/datetime-input-props-validation.js +19 -15
  120. package/dist/collection/components/datetime-picker/datetime-input/datetime-input.css +1 -1
  121. package/dist/collection/components/datetime-picker/datetime-input/datetime-input.js +373 -211
  122. package/dist/collection/components/datetime-picker/datetime-input/datetime-input.types.js +1 -0
  123. package/dist/collection/components/datetime-picker/datetime-picker-constants.js +19 -5
  124. package/dist/collection/components/datetime-picker/datetime-picker-form-associated.js +92 -11
  125. package/dist/collection/components/datetime-picker/datetime-picker-props-validation.js +52 -33
  126. package/dist/collection/components/datetime-picker/datetime-picker.css +1 -1
  127. package/dist/collection/components/datetime-picker/datetime-picker.js +915 -362
  128. package/dist/collection/components/datetime-picker/datetime-picker.utils.js +62 -49
  129. package/dist/collection/components/datetime-picker/time-picker/time-picker-constants.js +3 -2
  130. package/dist/collection/components/datetime-picker/time-picker/time-picker.css +1 -1
  131. package/dist/collection/components/datetime-picker/time-picker/time-picker.js +148 -85
  132. package/dist/collection/components/divider/divider.css +1 -1
  133. package/dist/collection/components/dropdown/dropdown.css +1 -1
  134. package/dist/collection/components/dropdown/dropdown.js +32 -36
  135. package/dist/collection/components/footer/footer-category/footer-category.css +1 -1
  136. package/dist/collection/components/footer/footer-item/footer-item.css +1 -1
  137. package/dist/collection/components/footer/footer-legal/footer-legal.css +1 -1
  138. package/dist/collection/components/footer/footer-logo/footer-logo.css +1 -1
  139. package/dist/collection/components/footer/footer-social/footer-social.css +1 -1
  140. package/dist/collection/components/footer/footer.css +1 -1
  141. package/dist/collection/components/header/header-function/header-function.css +1 -1
  142. package/dist/collection/components/header/header-link/header-link.css +1 -1
  143. package/dist/collection/components/header/header-list/header-list.css +1 -1
  144. package/dist/collection/components/header/header-logo/header-logo.css +1 -1
  145. package/dist/collection/components/header/header.css +1 -1
  146. package/dist/collection/components/header/header.js +25 -21
  147. package/dist/collection/components/icon/icon.css +1 -1
  148. package/dist/collection/components/icon/icon.utils.js +8 -0
  149. package/dist/collection/components/input/input.css +1 -1
  150. package/dist/collection/components/input/input.js +50 -4
  151. package/dist/collection/components/item/item.css +1 -1
  152. package/dist/collection/components/item/item.js +4 -3
  153. package/dist/collection/components/link/link.css +1 -1
  154. package/dist/collection/components/list/list.css +1 -1
  155. package/dist/collection/components/loading/loading.css +1 -1
  156. package/dist/collection/components/magic-button/magic-button.css +1 -1
  157. package/dist/collection/components/magic-button/magic-button.js +20 -6
  158. package/dist/collection/components/menu/menu-group/menu-group.css +1 -1
  159. package/dist/collection/components/menu/menu-header/menu-header.css +1 -1
  160. package/dist/collection/components/menu/menu-info/menu-info.css +1 -1
  161. package/dist/collection/components/menu/menu-item/menu-item.css +1 -1
  162. package/dist/collection/components/menu/menu-link/menu-link.css +1 -1
  163. package/dist/collection/components/menu/menu-list/menu-list.css +1 -1
  164. package/dist/collection/components/menu/menu-logo/menu-logo.css +1 -1
  165. package/dist/collection/components/menu/menu-social/menu-social.css +1 -1
  166. package/dist/collection/components/menu/menu.css +1 -1
  167. package/dist/collection/components/message/message.css +1 -1
  168. package/dist/collection/components/modal/modal.css +1 -1
  169. package/dist/collection/components/modal/modal.js +19 -3
  170. package/dist/collection/components/notification/notification-body/notification-body.css +1 -1
  171. package/dist/collection/components/notification/notification-header/notification-header.css +1 -1
  172. package/dist/collection/components/notification/notification-item/notification-item.css +1 -1
  173. package/dist/collection/components/notification/notification.css +1 -1
  174. package/dist/collection/components/pagination/pagination.css +1 -1
  175. package/dist/collection/components/pagination/pagination.js +4 -2
  176. package/dist/collection/components/radio/radio.css +1 -1
  177. package/dist/collection/components/radio-group/radio-group.css +1 -1
  178. package/dist/collection/components/scrim/scrim.css +1 -1
  179. package/dist/collection/components/select/select-input/select-input.css +1 -1
  180. package/dist/collection/components/select/select-input/select-input.js +126 -18
  181. package/dist/collection/components/select/select-list/select-list.css +1 -1
  182. package/dist/collection/components/select/select-list/select-list.js +218 -66
  183. package/dist/collection/components/select/select-option/select-option.css +1 -1
  184. package/dist/collection/components/select/select-option/select-option.js +14 -5
  185. package/dist/collection/components/select/select.css +1 -1
  186. package/dist/collection/components/select/select.js +303 -94
  187. package/dist/collection/components/select/select.utils.js +29 -8
  188. package/dist/collection/components/sign-in/sign-in.css +1 -1
  189. package/dist/collection/components/sign-in/sign-in.js +8 -4
  190. package/dist/collection/components/skip-link/skip-link-item/skip-link-item.css +1 -1
  191. package/dist/collection/components/skip-link/skip-link.css +1 -1
  192. package/dist/collection/components/slider/slider.css +1 -1
  193. package/dist/collection/components/step/step-item/step-item.css +1 -1
  194. package/dist/collection/components/step/step.css +1 -1
  195. package/dist/collection/components/switch/switch.css +1 -1
  196. package/dist/collection/components/tab/tab-item/tab-item.css +1 -1
  197. package/dist/collection/components/tab/tab-item/tab-item.js +2 -2
  198. package/dist/collection/components/tab/tab.css +1 -1
  199. package/dist/collection/components/tab/tab.js +37 -10
  200. package/dist/collection/components/table/table-body/table-body.css +1 -1
  201. package/dist/collection/components/table/table-cell/table-cell.css +1 -1
  202. package/dist/collection/components/table/table-header/table-header.css +1 -1
  203. package/dist/collection/components/table/table-header-cell/table-header-cell.css +1 -1
  204. package/dist/collection/components/table/table-row/table-row.css +1 -1
  205. package/dist/collection/components/table/table.css +1 -1
  206. package/dist/collection/components/tag/tag.css +1 -1
  207. package/dist/collection/components/textarea/textarea.css +1 -1
  208. package/dist/collection/components/tooltip/tooltip.css +1 -1
  209. package/dist/collection/components/upload/upload.css +1 -1
  210. package/dist/collection/components/wizard/wizard-panel/wizard-panel.css +1 -1
  211. package/dist/collection/components/wizard/wizard.css +1 -1
  212. package/dist/collection/pages/components/select/remote.js +33 -0
  213. package/dist/collection/pages/components/select/virtualized.js +13 -0
  214. package/dist/collection/pages/components/upload/handler.js +25 -0
  215. package/dist/collection/pages/scripts/component-controls.js +15 -16
  216. package/dist/collection/pages/scripts/menu.js +0 -1
  217. package/dist/collection/pages/scripts/pageLoader.js +168 -91
  218. package/dist/collection/pages/scripts/pageloader-preview.js +37 -28
  219. package/dist/collection/shared/utils/form.js +17 -0
  220. package/dist/components/br-avatar.js +1 -1
  221. package/dist/components/br-breadcrumb-item.js +1 -1
  222. package/dist/components/br-breadcrumb.js +1 -1
  223. package/dist/components/br-button.js +1 -1
  224. package/dist/components/br-card.js +1 -1
  225. package/dist/components/br-carousel-page.js +1 -1
  226. package/dist/components/br-carousel.js +1 -1
  227. package/dist/components/br-checkbox-group.js +1 -1
  228. package/dist/components/br-checkbox.js +1 -1
  229. package/dist/components/br-checkgroup.js +1 -1
  230. package/dist/components/br-collapse.js +1 -1
  231. package/dist/components/br-cookiebar-cookie.js +1 -1
  232. package/dist/components/br-cookiebar-group.js +1 -1
  233. package/dist/components/br-cookiebar-header.js +1 -1
  234. package/dist/components/br-cookiebar-link.js +1 -1
  235. package/dist/components/br-cookiebar-note-group.js +1 -1
  236. package/dist/components/br-cookiebar-note.js +1 -1
  237. package/dist/components/br-cookiebar.js +1 -1
  238. package/dist/components/br-crumb.js +1 -1
  239. package/dist/components/br-date-picker.js +1 -1
  240. package/dist/components/br-datetime-input.js +1 -1
  241. package/dist/components/br-datetime-picker.js +1 -1
  242. package/dist/components/br-divider.js +1 -1
  243. package/dist/components/br-dropdown.js +1 -1
  244. package/dist/components/br-footer-category.js +1 -1
  245. package/dist/components/br-footer-item.js +1 -1
  246. package/dist/components/br-footer-legal.js +1 -1
  247. package/dist/components/br-footer-logo.js +1 -1
  248. package/dist/components/br-footer-social.js +1 -1
  249. package/dist/components/br-footer.js +1 -1
  250. package/dist/components/br-header-function.js +1 -1
  251. package/dist/components/br-header-link.js +1 -1
  252. package/dist/components/br-header-list.js +1 -1
  253. package/dist/components/br-header-logo.js +1 -1
  254. package/dist/components/br-header.js +1 -1
  255. package/dist/components/br-icon.js +1 -1
  256. package/dist/components/br-input.js +1 -1
  257. package/dist/components/br-item.js +1 -1
  258. package/dist/components/br-link.js +1 -1
  259. package/dist/components/br-list.js +1 -1
  260. package/dist/components/br-loading.js +1 -1
  261. package/dist/components/br-magic-button.js +1 -1
  262. package/dist/components/br-menu-group.js +1 -1
  263. package/dist/components/br-menu-header.js +1 -1
  264. package/dist/components/br-menu-info.js +1 -1
  265. package/dist/components/br-menu-item.js +1 -1
  266. package/dist/components/br-menu-link.js +1 -1
  267. package/dist/components/br-menu-list.js +1 -1
  268. package/dist/components/br-menu-logo.js +1 -1
  269. package/dist/components/br-menu-social.js +1 -1
  270. package/dist/components/br-menu.js +1 -1
  271. package/dist/components/br-message.js +1 -1
  272. package/dist/components/br-modal.js +1 -1
  273. package/dist/components/br-notification-body.js +1 -1
  274. package/dist/components/br-notification-header.js +1 -1
  275. package/dist/components/br-notification-item.js +1 -1
  276. package/dist/components/br-notification.js +1 -1
  277. package/dist/components/br-pagination.js +1 -1
  278. package/dist/components/br-radio-group.js +1 -1
  279. package/dist/components/br-radio.js +1 -1
  280. package/dist/components/br-scrim.js +1 -1
  281. package/dist/components/br-select-input.js +1 -1
  282. package/dist/components/br-select-list.js +1 -1
  283. package/dist/components/br-select-option.js +1 -1
  284. package/dist/components/br-select.js +1 -1
  285. package/dist/components/br-sign-in.js +1 -1
  286. package/dist/components/br-skip-link-item.js +1 -1
  287. package/dist/components/br-skip-link.js +1 -1
  288. package/dist/components/br-skiplink-item.js +1 -1
  289. package/dist/components/br-slider.js +1 -1
  290. package/dist/components/br-step-item.js +1 -1
  291. package/dist/components/br-step.js +1 -1
  292. package/dist/components/br-switch.js +1 -1
  293. package/dist/components/br-tab-item.js +1 -1
  294. package/dist/components/br-tab.js +1 -1
  295. package/dist/components/br-table-body.js +1 -1
  296. package/dist/components/br-table-cell.js +1 -1
  297. package/dist/components/br-table-header-cell.js +1 -1
  298. package/dist/components/br-table-header.js +1 -1
  299. package/dist/components/br-table-row.js +1 -1
  300. package/dist/components/br-table.js +1 -1
  301. package/dist/components/br-tag.js +1 -1
  302. package/dist/components/br-textarea.js +1 -1
  303. package/dist/components/br-time-picker.js +1 -1
  304. package/dist/components/br-tooltip.js +1 -1
  305. package/dist/components/br-upload.js +1 -1
  306. package/dist/components/br-wizard-panel.js +1 -1
  307. package/dist/components/br-wizard.js +1 -1
  308. package/dist/components/index.js +1 -1
  309. package/dist/components/p-5h-W9_JR.js +5 -0
  310. package/dist/components/p-848QkYoM.js +5 -0
  311. package/dist/components/p-B7bNfmgh.js +5 -0
  312. package/dist/components/p-BFHvuEnN.js +5 -0
  313. package/dist/components/p-BH6QYnAr.js +5 -0
  314. package/dist/{webcomponents/p-6c2fe5e4.entry.js → components/p-BcW8O6h2.js} +1 -1
  315. package/dist/components/p-BicHMcSS.js +5 -0
  316. package/dist/components/p-Bs7iRQTG.js +5 -0
  317. package/dist/components/{p-DSHbttu9.js → p-Bvrw9yWR.js} +1 -1
  318. package/dist/components/p-BzQFMh9j.js +5 -0
  319. package/dist/components/p-CBHd0-fF.js +5 -0
  320. package/dist/components/p-CCPHCJjw.js +5 -0
  321. package/dist/components/p-CDTENPaP.js +5 -0
  322. package/dist/components/{p-BcqVlof7.js → p-CbgKdASU.js} +1 -1
  323. package/dist/components/p-CeNELttN.js +5 -0
  324. package/dist/components/p-CjtmJTLO.js +5 -0
  325. package/dist/components/{p-DTGNra9m.js → p-D-3G3Ioq.js} +1 -1
  326. package/dist/components/p-DDu3JV_r.js +5 -0
  327. package/dist/components/p-DFWqyfUe.js +5 -0
  328. package/dist/components/p-DL6xuxGG.js +5 -0
  329. package/dist/components/p-DOX9Uwk1.js +5 -0
  330. package/dist/components/p-DUq7uT2-.js +5 -0
  331. package/dist/components/p-Devw08cc.js +5 -0
  332. package/dist/components/p-Di96UxvH.js +5 -0
  333. package/dist/components/p-Dp3MsSXu.js +5 -0
  334. package/dist/components/p-DsO4F0Cz.js +5 -0
  335. package/dist/components/p-DuLHFTpa.js +5 -0
  336. package/dist/components/p-DusornQ0.js +5 -0
  337. package/dist/components/{p-Dma14GVa.js → p-Jk_KQE5V.js} +1 -1
  338. package/dist/components/p-OQpiDEK9.js +5 -0
  339. package/dist/components/p-PV731d8s.js +5 -0
  340. package/dist/components/p-XW6Hp_Jk.js +5 -0
  341. package/dist/components/p-jOb1hCPi.js +5 -0
  342. package/dist/components/p-rMnkh3Cy.js +5 -0
  343. package/dist/components/p-ta-24T1Z.js +5 -0
  344. package/dist/esm/br-avatar.entry.js +2 -2
  345. package/dist/esm/br-breadcrumb-item.entry.js +1 -1
  346. package/dist/esm/br-breadcrumb.entry.js +2 -2
  347. package/dist/esm/br-button_2.entry.js +10 -5
  348. package/dist/esm/br-card.entry.js +2 -2
  349. package/dist/esm/br-carousel-page.entry.js +2 -2
  350. package/dist/esm/br-carousel.entry.js +3 -3
  351. package/dist/esm/br-checkbox-group.entry.js +2 -2
  352. package/dist/esm/br-checkbox.entry.js +4 -4
  353. package/dist/esm/br-checkgroup.entry.js +1 -1
  354. package/dist/esm/br-collapse_2.entry.js +12 -8
  355. package/dist/esm/br-cookiebar-cookie.entry.js +2 -2
  356. package/dist/esm/br-cookiebar-group.entry.js +2 -2
  357. package/dist/esm/br-cookiebar-header.entry.js +2 -2
  358. package/dist/esm/br-cookiebar-link.entry.js +2 -2
  359. package/dist/esm/br-cookiebar-note-group.entry.js +2 -2
  360. package/dist/esm/br-cookiebar-note.entry.js +2 -2
  361. package/dist/esm/br-cookiebar.entry.js +3 -3
  362. package/dist/esm/br-crumb.entry.js +1 -1
  363. package/dist/esm/br-date-picker_3.entry.js +844 -492
  364. package/dist/esm/br-datetime-picker.entry.js +1316 -280
  365. package/dist/esm/br-divider.entry.js +2 -2
  366. package/dist/esm/br-dropdown_2.entry.js +281 -164
  367. package/dist/esm/br-footer-category.entry.js +2 -2
  368. package/dist/esm/br-footer-item.entry.js +2 -2
  369. package/dist/esm/br-footer-legal.entry.js +2 -2
  370. package/dist/esm/br-footer-logo.entry.js +2 -2
  371. package/dist/esm/br-footer-social.entry.js +2 -2
  372. package/dist/esm/br-footer.entry.js +2 -2
  373. package/dist/esm/br-header-function.entry.js +2 -2
  374. package/dist/esm/br-header-link.entry.js +2 -2
  375. package/dist/esm/br-header-list.entry.js +3 -3
  376. package/dist/esm/br-header-logo.entry.js +2 -2
  377. package/dist/esm/br-header.entry.js +27 -23
  378. package/dist/esm/br-icon.entry.js +3 -32
  379. package/dist/esm/br-input.entry.js +32 -7
  380. package/dist/esm/br-item.entry.js +5 -4
  381. package/dist/esm/br-link.entry.js +2 -2
  382. package/dist/esm/br-loading.entry.js +2 -2
  383. package/dist/esm/br-magic-button.entry.js +21 -8
  384. package/dist/esm/br-menu-group.entry.js +2 -2
  385. package/dist/esm/br-menu-header.entry.js +2 -2
  386. package/dist/esm/br-menu-info.entry.js +2 -2
  387. package/dist/esm/br-menu-item.entry.js +2 -2
  388. package/dist/esm/br-menu-link.entry.js +2 -2
  389. package/dist/esm/br-menu-list.entry.js +2 -2
  390. package/dist/esm/br-menu-logo.entry.js +2 -2
  391. package/dist/esm/br-menu-social.entry.js +2 -2
  392. package/dist/esm/br-menu.entry.js +3 -3
  393. package/dist/esm/br-modal.entry.js +21 -5
  394. package/dist/esm/br-notification-body.entry.js +2 -2
  395. package/dist/esm/br-notification-header.entry.js +2 -2
  396. package/dist/esm/br-notification-item.entry.js +2 -2
  397. package/dist/esm/br-notification.entry.js +3 -3
  398. package/dist/esm/br-pagination.entry.js +4 -4
  399. package/dist/esm/br-radio-group.entry.js +4 -4
  400. package/dist/esm/br-radio.entry.js +4 -4
  401. package/dist/esm/br-scrim.entry.js +2 -2
  402. package/dist/esm/br-select-input_3.entry.js +286 -100
  403. package/dist/esm/br-sign-in.entry.js +8 -4
  404. package/dist/esm/br-skip-link-item.entry.js +1 -1
  405. package/dist/esm/br-skip-link.entry.js +2 -2
  406. package/dist/esm/br-skiplink-item.entry.js +2 -2
  407. package/dist/esm/br-slider.entry.js +4 -4
  408. package/dist/esm/br-step_2.entry.js +3 -3
  409. package/dist/esm/br-switch.entry.js +4 -4
  410. package/dist/esm/br-tab-item.entry.js +3 -3
  411. package/dist/esm/br-tab.entry.js +38 -13
  412. package/dist/esm/br-table-body.entry.js +2 -2
  413. package/dist/esm/br-table-cell.entry.js +2 -2
  414. package/dist/esm/br-table-header-cell.entry.js +2 -2
  415. package/dist/esm/br-table-header.entry.js +2 -2
  416. package/dist/esm/br-table-row.entry.js +2 -2
  417. package/dist/esm/br-table.entry.js +2 -2
  418. package/dist/esm/br-tag.entry.js +4 -4
  419. package/dist/esm/br-textarea.entry.js +4 -4
  420. package/dist/esm/br-tooltip.entry.js +3 -3
  421. package/dist/esm/br-upload.entry.js +5 -21
  422. package/dist/esm/br-wizard-panel.entry.js +2 -2
  423. package/dist/esm/br-wizard.entry.js +2 -2
  424. package/dist/esm/{datetime-picker-constants-BtRPYRvA.js → datetime-picker-constants-DDc4sADe.js} +20 -6
  425. package/dist/esm/{event-CfuJQ1DY.js → event-6Da1SZ3J.js} +1 -1
  426. package/dist/esm/format-bytes-B7bNfmgh.js +22 -0
  427. package/dist/esm/icon.utils-zlORkiHQ.js +43 -0
  428. package/dist/esm/{index-Dcn7tRST.js → index-ConyRdJe.js} +33 -27
  429. package/dist/esm/{index-BQPOWxe5.js → index-CytVKoHT.js} +13 -13
  430. package/dist/esm/index.js +2 -2
  431. package/dist/esm/{datetime-picker-props-validation-BeTcUTnE.js → isValid-Bee0Uvqc.js} +2 -477
  432. package/dist/esm/loader.js +3 -3
  433. package/dist/esm/select.utils-BYsh2ZdE.js +57 -0
  434. package/dist/esm/{validator-D3tVP32U.js → validator-BkWWrDEr.js} +18 -1
  435. package/dist/esm/webcomponents.js +4 -4
  436. package/dist/hydrate/index.js +3314 -1806
  437. package/dist/hydrate/index.mjs +3314 -1806
  438. package/dist/types/components/button/button.d.ts +2 -1
  439. package/dist/types/components/collapse/collapse.d.ts +6 -2
  440. package/dist/types/components/datetime-picker/date-picker/date-picker-locale.d.ts +9 -9
  441. package/dist/types/components/datetime-picker/date-picker/date-picker-props-validation.d.ts +14 -13
  442. package/dist/types/components/datetime-picker/date-picker/date-picker.d.ts +264 -161
  443. package/dist/types/components/datetime-picker/datetime-input/datetime-input-constants.d.ts +14 -0
  444. package/dist/types/components/datetime-picker/datetime-input/datetime-input-props-validation.d.ts +19 -15
  445. package/dist/types/components/datetime-picker/datetime-input/datetime-input.d.ts +229 -98
  446. package/dist/types/components/datetime-picker/datetime-input/datetime-input.types.d.ts +36 -0
  447. package/dist/types/components/datetime-picker/datetime-picker-constants.d.ts +19 -5
  448. package/dist/types/components/datetime-picker/datetime-picker-form-associated.d.ts +32 -5
  449. package/dist/types/components/datetime-picker/datetime-picker-props-validation.d.ts +22 -24
  450. package/dist/types/components/datetime-picker/datetime-picker.d.ts +508 -235
  451. package/dist/types/components/datetime-picker/datetime-picker.types.d.ts +75 -21
  452. package/dist/types/components/datetime-picker/datetime-picker.utils.d.ts +53 -47
  453. package/dist/types/components/datetime-picker/time-picker/time-picker-constants.d.ts +3 -2
  454. package/dist/types/components/datetime-picker/time-picker/time-picker.d.ts +126 -55
  455. package/dist/types/components/dropdown/dropdown.d.ts +12 -4
  456. package/dist/types/components/header/header.d.ts +2 -0
  457. package/dist/types/components/icon/icon.utils.d.ts +6 -0
  458. package/dist/types/components/input/input.d.ts +18 -1
  459. package/dist/types/components/input/input.types.d.ts +4 -0
  460. package/dist/types/components/item/item.d.ts +6 -1
  461. package/dist/types/components/magic-button/magic-button.d.ts +7 -3
  462. package/dist/types/components/modal/modal.d.ts +6 -0
  463. package/dist/types/components/pagination/pagination.d.ts +2 -0
  464. package/dist/types/components/select/select-input/select-input.d.ts +9 -2
  465. package/dist/types/components/select/select-list/select-list.d.ts +14 -2
  466. package/dist/types/components/select/select-option/select-option.d.ts +1 -0
  467. package/dist/types/components/select/select.d.ts +47 -7
  468. package/dist/types/components/select/select.types.d.ts +12 -0
  469. package/dist/types/components/select/select.utils.d.ts +3 -0
  470. package/dist/types/components/sign-in/sign-in.d.ts +3 -2
  471. package/dist/types/components/tab/tab-item/tab-item.d.ts +6 -2
  472. package/dist/types/components/tab/tab.d.ts +7 -0
  473. package/dist/types/components.d.ts +405 -318
  474. package/dist/types/shared/utils/form.d.ts +8 -0
  475. package/dist/types/stencil-public-runtime.d.ts +61 -55
  476. package/dist/webcomponents/index.esm.js +1 -1
  477. package/dist/webcomponents/p-01801ac1.entry.js +5 -0
  478. package/dist/webcomponents/p-05b459f2.entry.js +5 -0
  479. package/dist/webcomponents/p-08ac6f09.entry.js +5 -0
  480. package/dist/webcomponents/{p-cff24492.entry.js → p-09817344.entry.js} +1 -1
  481. package/dist/webcomponents/p-09c79c1d.entry.js +5 -0
  482. package/dist/webcomponents/p-0fc112fc.entry.js +5 -0
  483. package/dist/webcomponents/p-13babfc4.entry.js +5 -0
  484. package/dist/webcomponents/p-15022ab7.entry.js +5 -0
  485. package/dist/webcomponents/p-172d42c2.entry.js +5 -0
  486. package/dist/webcomponents/p-18cf093a.entry.js +5 -0
  487. package/dist/webcomponents/p-198aa844.entry.js +5 -0
  488. package/dist/webcomponents/p-1ba60d13.entry.js +5 -0
  489. package/dist/webcomponents/p-1bb96641.entry.js +5 -0
  490. package/dist/webcomponents/{p-7acf20d3.entry.js → p-20477061.entry.js} +1 -1
  491. package/dist/webcomponents/p-21feda62.entry.js +5 -0
  492. package/dist/webcomponents/p-23a5cfd7.entry.js +5 -0
  493. package/dist/webcomponents/{p-030c02f8.entry.js → p-2c8595d3.entry.js} +1 -1
  494. package/dist/webcomponents/{p-09770c98.entry.js → p-31a4694a.entry.js} +1 -1
  495. package/dist/webcomponents/p-32ea6342.entry.js +5 -0
  496. package/dist/webcomponents/p-3658adcf.entry.js +5 -0
  497. package/dist/webcomponents/p-37914e63.entry.js +5 -0
  498. package/dist/webcomponents/p-3b0dd0ff.entry.js +5 -0
  499. package/dist/webcomponents/p-42b60169.entry.js +5 -0
  500. package/dist/webcomponents/p-42c9c6c5.entry.js +5 -0
  501. package/dist/{components/p-SvVnvJdC.js → webcomponents/p-473561f2.entry.js} +1 -1
  502. package/dist/webcomponents/p-47c490ef.entry.js +5 -0
  503. package/dist/webcomponents/p-4b01c60f.entry.js +5 -0
  504. package/dist/webcomponents/p-5a5ed7d8.entry.js +5 -0
  505. package/dist/webcomponents/{p-c8b7bbab.entry.js → p-5a7c2031.entry.js} +1 -1
  506. package/dist/webcomponents/p-609cf652.entry.js +5 -0
  507. package/dist/webcomponents/p-614683d9.entry.js +5 -0
  508. package/dist/webcomponents/p-67605757.entry.js +5 -0
  509. package/dist/{components/p-CppRJiyC.js → webcomponents/p-67774920.entry.js} +1 -1
  510. package/dist/webcomponents/p-67d62559.entry.js +5 -0
  511. package/dist/webcomponents/p-695dbeb0.entry.js +5 -0
  512. package/dist/webcomponents/{p-CfuJQ1DY.js → p-6Da1SZ3J.js} +1 -1
  513. package/dist/webcomponents/p-6a293be8.entry.js +5 -0
  514. package/dist/webcomponents/{p-03359c92.entry.js → p-6f1a4fbe.entry.js} +1 -1
  515. package/dist/webcomponents/p-7352d459.entry.js +5 -0
  516. package/dist/webcomponents/p-745213f7.entry.js +5 -0
  517. package/dist/webcomponents/p-794b701b.entry.js +5 -0
  518. package/dist/webcomponents/{p-d826c052.entry.js → p-7ee564a1.entry.js} +1 -1
  519. package/dist/webcomponents/{p-e20188c0.entry.js → p-7fda8b89.entry.js} +1 -1
  520. package/dist/webcomponents/p-8116ee93.entry.js +5 -0
  521. package/dist/webcomponents/p-821341dc.entry.js +5 -0
  522. package/dist/webcomponents/p-8aa6f07c.entry.js +5 -0
  523. package/dist/webcomponents/p-8ddf3ce3.entry.js +5 -0
  524. package/dist/webcomponents/p-95f3c44a.entry.js +5 -0
  525. package/dist/webcomponents/p-96dbb585.entry.js +5 -0
  526. package/dist/webcomponents/p-9815ab95.entry.js +5 -0
  527. package/dist/webcomponents/{p-327f034f.entry.js → p-9e0324a7.entry.js} +1 -1
  528. package/dist/webcomponents/p-B7bNfmgh.js +5 -0
  529. package/dist/webcomponents/p-BYsh2ZdE.js +5 -0
  530. package/dist/webcomponents/p-BkWWrDEr.js +5 -0
  531. package/dist/webcomponents/p-CJipT0in.js +5 -0
  532. package/dist/webcomponents/{p-Dcn7tRST.js → p-ConyRdJe.js} +1 -1
  533. package/dist/webcomponents/{p-BtRPYRvA.js → p-DDc4sADe.js} +1 -1
  534. package/dist/webcomponents/p-a038be16.entry.js +5 -0
  535. package/dist/webcomponents/p-a32d17cb.entry.js +5 -0
  536. package/dist/webcomponents/p-a46f068e.entry.js +5 -0
  537. package/dist/webcomponents/p-a89b684d.entry.js +5 -0
  538. package/dist/webcomponents/{p-abaf2365.entry.js → p-ac68355e.entry.js} +1 -1
  539. package/dist/webcomponents/{p-ed5af0e4.entry.js → p-af888d13.entry.js} +1 -1
  540. package/dist/webcomponents/p-b0124459.entry.js +5 -0
  541. package/dist/webcomponents/p-b063c12f.entry.js +5 -0
  542. package/dist/webcomponents/p-b07bfdc5.entry.js +5 -0
  543. package/dist/webcomponents/{p-f558d7b9.entry.js → p-b55425b7.entry.js} +1 -1
  544. package/dist/webcomponents/{p-a0931550.entry.js → p-b5d25332.entry.js} +1 -1
  545. package/dist/webcomponents/p-b609b464.entry.js +5 -0
  546. package/dist/webcomponents/p-b66ab52d.entry.js +5 -0
  547. package/dist/webcomponents/p-b8d4ace3.entry.js +5 -0
  548. package/dist/webcomponents/p-c717c745.entry.js +5 -0
  549. package/dist/webcomponents/p-ce3d689c.entry.js +5 -0
  550. package/dist/webcomponents/p-d08b6266.entry.js +5 -0
  551. package/dist/webcomponents/p-d6165aa0.entry.js +5 -0
  552. package/dist/webcomponents/{p-01fb0754.entry.js → p-dacb7e2c.entry.js} +1 -1
  553. package/dist/webcomponents/p-db309a11.entry.js +5 -0
  554. package/dist/webcomponents/{p-edc6da0e.entry.js → p-dc23cb2e.entry.js} +1 -1
  555. package/dist/webcomponents/p-e241caf3.entry.js +5 -0
  556. package/dist/webcomponents/p-e661c024.entry.js +5 -0
  557. package/dist/webcomponents/p-e7107869.entry.js +5 -0
  558. package/dist/webcomponents/p-eb94199d.entry.js +5 -0
  559. package/dist/webcomponents/p-f8993ae4.entry.js +5 -0
  560. package/dist/webcomponents/{p-670e8fec.entry.js → p-f99d8c9c.entry.js} +1 -1
  561. package/dist/webcomponents/{p-DV-iW9Aj.js → p-fOJu6uZR.js} +1 -1
  562. package/dist/webcomponents/{p-a212fd85.entry.js → p-fb76b1e0.entry.js} +1 -1
  563. package/dist/webcomponents/p-fdcb54a3.entry.js +5 -0
  564. package/dist/webcomponents/{p-e3de5bb3.entry.js → p-fed02286.entry.js} +1 -1
  565. package/dist/webcomponents/p-zlORkiHQ.js +5 -0
  566. package/dist/webcomponents/webcomponents.esm.js +1 -1
  567. package/package.json +2 -2
  568. package/dist/components/p-B0o70fWP.js +0 -5
  569. package/dist/components/p-B96LROz9.js +0 -5
  570. package/dist/components/p-BDqef5-y.js +0 -5
  571. package/dist/components/p-BP5zMCxG.js +0 -5
  572. package/dist/components/p-BRaphxoP.js +0 -5
  573. package/dist/components/p-BUzBa9L1.js +0 -5
  574. package/dist/components/p-BblZlUp2.js +0 -5
  575. package/dist/components/p-Bc4nAk5i.js +0 -5
  576. package/dist/components/p-Bezou5CQ.js +0 -5
  577. package/dist/components/p-BrNh9KdF.js +0 -5
  578. package/dist/components/p-C5th2dxu.js +0 -5
  579. package/dist/components/p-CEdUp183.js +0 -5
  580. package/dist/components/p-CF7t0uxQ.js +0 -5
  581. package/dist/components/p-CFzHx6zV.js +0 -5
  582. package/dist/components/p-CG4em0S6.js +0 -5
  583. package/dist/components/p-CI4D3-pf.js +0 -5
  584. package/dist/components/p-CIrVPkVg.js +0 -5
  585. package/dist/components/p-CdDwqbBv.js +0 -5
  586. package/dist/components/p-Cvk1Ggs5.js +0 -5
  587. package/dist/components/p-D12US39c.js +0 -5
  588. package/dist/components/p-DGPJkJsj.js +0 -5
  589. package/dist/components/p-DX1wAFn4.js +0 -5
  590. package/dist/components/p-DpRZ4B0d.js +0 -5
  591. package/dist/components/p-G35qEQZd.js +0 -5
  592. package/dist/components/p-Ho_IybzR.js +0 -5
  593. package/dist/components/p-emAWunES.js +0 -5
  594. package/dist/components/p-fB79wKCm.js +0 -5
  595. package/dist/components/p-k7p4QJ8a.js +0 -5
  596. package/dist/webcomponents/p-01baafce.entry.js +0 -5
  597. package/dist/webcomponents/p-0b9714f1.entry.js +0 -5
  598. package/dist/webcomponents/p-12aa36a8.entry.js +0 -5
  599. package/dist/webcomponents/p-130b6e06.entry.js +0 -5
  600. package/dist/webcomponents/p-144f8c8d.entry.js +0 -5
  601. package/dist/webcomponents/p-14fe22e2.entry.js +0 -5
  602. package/dist/webcomponents/p-1ff9210a.entry.js +0 -5
  603. package/dist/webcomponents/p-2605cdc3.entry.js +0 -5
  604. package/dist/webcomponents/p-27afaec9.entry.js +0 -5
  605. package/dist/webcomponents/p-2a50e42d.entry.js +0 -5
  606. package/dist/webcomponents/p-342650b8.entry.js +0 -5
  607. package/dist/webcomponents/p-38f6a78b.entry.js +0 -5
  608. package/dist/webcomponents/p-3920fe3a.entry.js +0 -5
  609. package/dist/webcomponents/p-3ae97345.entry.js +0 -5
  610. package/dist/webcomponents/p-3cce767c.entry.js +0 -5
  611. package/dist/webcomponents/p-3df6c5d2.entry.js +0 -5
  612. package/dist/webcomponents/p-3e287899.entry.js +0 -5
  613. package/dist/webcomponents/p-3e5580ba.entry.js +0 -5
  614. package/dist/webcomponents/p-403637dd.entry.js +0 -5
  615. package/dist/webcomponents/p-435c8ef2.entry.js +0 -5
  616. package/dist/webcomponents/p-59da5b55.entry.js +0 -5
  617. package/dist/webcomponents/p-5dd4314c.entry.js +0 -5
  618. package/dist/webcomponents/p-646af6a5.entry.js +0 -5
  619. package/dist/webcomponents/p-68046544.entry.js +0 -5
  620. package/dist/webcomponents/p-68ec76b8.entry.js +0 -5
  621. package/dist/webcomponents/p-6c0ea20c.entry.js +0 -5
  622. package/dist/webcomponents/p-707df9b9.entry.js +0 -5
  623. package/dist/webcomponents/p-72b839fe.entry.js +0 -5
  624. package/dist/webcomponents/p-73dcc05b.entry.js +0 -5
  625. package/dist/webcomponents/p-7b01bddb.entry.js +0 -5
  626. package/dist/webcomponents/p-7cd38850.entry.js +0 -5
  627. package/dist/webcomponents/p-82454383.entry.js +0 -5
  628. package/dist/webcomponents/p-91e959a8.entry.js +0 -5
  629. package/dist/webcomponents/p-964c01e6.entry.js +0 -5
  630. package/dist/webcomponents/p-9858e42a.entry.js +0 -5
  631. package/dist/webcomponents/p-9c4200b0.entry.js +0 -5
  632. package/dist/webcomponents/p-9d9c87b1.entry.js +0 -5
  633. package/dist/webcomponents/p-B0PbhaxL.js +0 -5
  634. package/dist/webcomponents/p-D3tVP32U.js +0 -5
  635. package/dist/webcomponents/p-a2e75143.entry.js +0 -5
  636. package/dist/webcomponents/p-a3bb98c9.entry.js +0 -5
  637. package/dist/webcomponents/p-a8b5dba0.entry.js +0 -5
  638. package/dist/webcomponents/p-aa909443.entry.js +0 -5
  639. package/dist/webcomponents/p-aeb16645.entry.js +0 -5
  640. package/dist/webcomponents/p-b287c384.entry.js +0 -5
  641. package/dist/webcomponents/p-b506b0a1.entry.js +0 -5
  642. package/dist/webcomponents/p-b520c08c.entry.js +0 -5
  643. package/dist/webcomponents/p-b94c3f84.entry.js +0 -5
  644. package/dist/webcomponents/p-bda62f90.entry.js +0 -5
  645. package/dist/webcomponents/p-c201ae16.entry.js +0 -5
  646. package/dist/webcomponents/p-c7e899a1.entry.js +0 -5
  647. package/dist/webcomponents/p-cbf3e251.entry.js +0 -5
  648. package/dist/webcomponents/p-d35cf5b4.entry.js +0 -5
  649. package/dist/webcomponents/p-d45ffe9c.entry.js +0 -5
  650. package/dist/webcomponents/p-d719a4af.entry.js +0 -5
  651. package/dist/webcomponents/p-da21a60d.entry.js +0 -5
  652. package/dist/webcomponents/p-de0c7f26.entry.js +0 -5
  653. package/dist/webcomponents/p-e27882e1.entry.js +0 -5
  654. package/dist/webcomponents/p-e624ff04.entry.js +0 -5
  655. package/dist/webcomponents/p-f24fcf3d.entry.js +0 -5
  656. package/dist/webcomponents/p-f52ef0dc.entry.js +0 -5
  657. package/dist/webcomponents/p-fcab1428.entry.js +0 -5
  658. package/dist/webcomponents/p-fe1729a7.entry.js +0 -5
@@ -15,14 +15,14 @@ import { FormValidationChangeDetail } from "./shared/utils/validator";
15
15
  import { FormValidationState } from "./shared/utils/form";
16
16
  import { CollapseChangeDetail, CollapseColorMode, CollapseExpansionDirection, CollapseIconPosition, CollapseTriggerVariant } from "./components/collapse/collapse.types";
17
17
  import { CookiebarMode, CookiebarOutputData, CookiebarSelectionState } from "./components/cookiebar/cookiebar.types";
18
- import { DatetimePickerDateRange, DatetimePickerDateState, DatetimePickerDisabledDate, DatetimePickerDisabledDates, DatetimePickerInitialMoment, DatetimePickerLocale, DatetimePickerMode, DatetimePickerSelectionMode, DatetimePickerValidator, DatetimePickerWeekDayIndex, WeekDayIndex } from "./components/datetime-picker/datetime-picker.types";
18
+ import { DatetimePickerChangeDetail, DatetimePickerDateRange, DatetimePickerDateState, DatetimePickerDisabledDate, DatetimePickerDisabledDates, DatetimePickerInitialMoment, DatetimePickerLocale, DatetimePickerMode, DatetimePickerSelectionMode, DatetimePickerValidator, DatetimePickerWeekDayIndex, WeekDayIndex } from "./components/datetime-picker/datetime-picker.types";
19
19
  import { DividerAlign, DividerBorderStyle, DividerOrientation, DividerThickness } from "./components/divider/divider.types";
20
20
  import { DropdownArrowPosition, DropdownOpenChangeDetail, DropdownPlacement } from "./components/dropdown/dropdown.types";
21
21
  import { FooterLayoutWidth, FooterTheme } from "./components/footer/footer.types";
22
22
  import { FooterLogoPosition } from "./components/footer/footer-logo/footer-logo.types";
23
23
  import { HeaderCompactChangeDetail, HeaderDensity, HeaderLayoutWidth, HeaderShrinkFirst } from "./components/header/header.types";
24
24
  import { IconFlip, IconRotate, IconSource } from "./components/icon/icon.types";
25
- import { InputDensity, InputState, InputToggle, InputType, InputValidationChangeDetail, InputValidator } from "./components/input/input.types";
25
+ import { InputActionClickDetail, InputDensity, InputState, InputToggle, InputType, InputValidationChangeDetail, InputValidator } from "./components/input/input.types";
26
26
  import { ItemSelectDetail } from "./components/item/item.types";
27
27
  import { LoadingChangeDetail, LoadingCompleteDetail, LoadingCompletionBehavior, LoadingIndeterminateStateDetail, LoadingLabelPosition, LoadingMode, LoadingSize, LoadingSpeed, LoadingValueDetail } from "./components/loading/loading.types";
28
28
  import { MenuDensity, MenuOpenChangeDetail } from "./components/menu/menu.types";
@@ -34,7 +34,7 @@ import { PaginationColorMode, PaginationDensity, PaginationPageChangeDetail, Pag
34
34
  import { RadioValidator } from "./components/radio/radio.types";
35
35
  import { RadioGroupOrientation, RadioGroupValidator } from "./components/radio-group/radio-group.types";
36
36
  import { ScrimContentLayout, ScrimDisplayMode, ScrimLegibilityAnchor, ScrimPositionContent, ScrimScrollStrategy, ScrimSpotlightShape, ScrimVariant } from "./components/scrim/scrim.types";
37
- import { SelectOptionData, SelectSearchDetail, SelectSearchMode, SelectStateChangeDetail, SelectValidator } from "./components/select/select.types";
37
+ import { SelectComboboxState, SelectOptionData, SelectSearchDetail, SelectSearchMode, SelectStateChangeDetail, SelectValidator } from "./components/select/select.types";
38
38
  import { SignInEmphasis, SignInShape } from "./components/sign-in/sign-in.types";
39
39
  import { SkipLinkItemFocusDetail, SkipLinkNavigateDetail, SkipLinkPosition, SkipLinkVariant } from "./components/skip-link/skip-link.types";
40
40
  import { SliderDensity, SliderRangeValue, SliderStep, SliderValidator } from "./components/slider/slider.types";
@@ -58,14 +58,14 @@ export { FormValidationChangeDetail } from "./shared/utils/validator";
58
58
  export { FormValidationState } from "./shared/utils/form";
59
59
  export { CollapseChangeDetail, CollapseColorMode, CollapseExpansionDirection, CollapseIconPosition, CollapseTriggerVariant } from "./components/collapse/collapse.types";
60
60
  export { CookiebarMode, CookiebarOutputData, CookiebarSelectionState } from "./components/cookiebar/cookiebar.types";
61
- export { DatetimePickerDateRange, DatetimePickerDateState, DatetimePickerDisabledDate, DatetimePickerDisabledDates, DatetimePickerInitialMoment, DatetimePickerLocale, DatetimePickerMode, DatetimePickerSelectionMode, DatetimePickerValidator, DatetimePickerWeekDayIndex, WeekDayIndex } from "./components/datetime-picker/datetime-picker.types";
61
+ export { DatetimePickerChangeDetail, DatetimePickerDateRange, DatetimePickerDateState, DatetimePickerDisabledDate, DatetimePickerDisabledDates, DatetimePickerInitialMoment, DatetimePickerLocale, DatetimePickerMode, DatetimePickerSelectionMode, DatetimePickerValidator, DatetimePickerWeekDayIndex, WeekDayIndex } from "./components/datetime-picker/datetime-picker.types";
62
62
  export { DividerAlign, DividerBorderStyle, DividerOrientation, DividerThickness } from "./components/divider/divider.types";
63
63
  export { DropdownArrowPosition, DropdownOpenChangeDetail, DropdownPlacement } from "./components/dropdown/dropdown.types";
64
64
  export { FooterLayoutWidth, FooterTheme } from "./components/footer/footer.types";
65
65
  export { FooterLogoPosition } from "./components/footer/footer-logo/footer-logo.types";
66
66
  export { HeaderCompactChangeDetail, HeaderDensity, HeaderLayoutWidth, HeaderShrinkFirst } from "./components/header/header.types";
67
67
  export { IconFlip, IconRotate, IconSource } from "./components/icon/icon.types";
68
- export { InputDensity, InputState, InputToggle, InputType, InputValidationChangeDetail, InputValidator } from "./components/input/input.types";
68
+ export { InputActionClickDetail, InputDensity, InputState, InputToggle, InputType, InputValidationChangeDetail, InputValidator } from "./components/input/input.types";
69
69
  export { ItemSelectDetail } from "./components/item/item.types";
70
70
  export { LoadingChangeDetail, LoadingCompleteDetail, LoadingCompletionBehavior, LoadingIndeterminateStateDetail, LoadingLabelPosition, LoadingMode, LoadingSize, LoadingSpeed, LoadingValueDetail } from "./components/loading/loading.types";
71
71
  export { MenuDensity, MenuOpenChangeDetail } from "./components/menu/menu.types";
@@ -77,7 +77,7 @@ export { PaginationColorMode, PaginationDensity, PaginationPageChangeDetail, Pag
77
77
  export { RadioValidator } from "./components/radio/radio.types";
78
78
  export { RadioGroupOrientation, RadioGroupValidator } from "./components/radio-group/radio-group.types";
79
79
  export { ScrimContentLayout, ScrimDisplayMode, ScrimLegibilityAnchor, ScrimPositionContent, ScrimScrollStrategy, ScrimSpotlightShape, ScrimVariant } from "./components/scrim/scrim.types";
80
- export { SelectOptionData, SelectSearchDetail, SelectSearchMode, SelectStateChangeDetail, SelectValidator } from "./components/select/select.types";
80
+ export { SelectComboboxState, SelectOptionData, SelectSearchDetail, SelectSearchMode, SelectStateChangeDetail, SelectValidator } from "./components/select/select.types";
81
81
  export { SignInEmphasis, SignInShape } from "./components/sign-in/sign-in.types";
82
82
  export { SkipLinkItemFocusDetail, SkipLinkNavigateDetail, SkipLinkPosition, SkipLinkVariant } from "./components/skip-link/skip-link.types";
83
83
  export { SliderDensity, SliderRangeValue, SliderStep, SliderValidator } from "./components/slider/slider.types";
@@ -384,7 +384,7 @@ export namespace Components {
384
384
  */
385
385
  "shape"?: ButtonShape;
386
386
  /**
387
- * Define o tipo de botão, especificando seu comportamento padrão. Valores inválidos usam `button`.
387
+ * Define o tipo de botão, especificando seu comportamento padrão. Quando omitido, usa `button`; valores inválidos também usam `button` e geram aviso no console.
388
388
  */
389
389
  "type"?: ButtonType;
390
390
  /**
@@ -901,12 +901,12 @@ export namespace Components {
901
901
  */
902
902
  "iconPosition": CollapseIconPosition;
903
903
  /**
904
- * Identificador do ícone exibido quando o conteúdo está visível. O valor padrão usa o registro SVG local.
904
+ * 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`.
905
905
  * @default 'fa6-solid:chevron-up'
906
906
  */
907
907
  "iconToHide": string;
908
908
  /**
909
- * Identificador do ícone exibido quando o conteúdo está oculto. O valor padrão usa o registro SVG local.
909
+ * 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`.
910
910
  * @default 'fa6-solid:chevron-down'
911
911
  */
912
912
  "iconToShow": string;
@@ -1413,36 +1413,33 @@ export namespace Components {
1413
1413
  "target"?: string;
1414
1414
  }
1415
1415
  /**
1416
- * Subcomponente de calendário visual do GovBR-DS, projetado para seleção interativa de datas individuais ou intervalos.
1416
+ * O `br-date-picker` é o subcomponente de calendário do `br-datetime-picker`, responsável pela seleção visual de uma data ou de um intervalo.
1417
1417
  * ### Papel na composição
1418
- * - Exibe a grade mensal navegável com suporte a seleção de dia, navegação entre meses e anos, e destaque para a data atual e intervalos.
1419
- * - Implementa navegação acessível por teclado WAI-ARIA Grid (setas direcionais para dias e semanas).
1418
+ * Exibe a grade mensal, a navegação entre meses e anos e os estados de seleção e bloqueio dos dias. `referenceDate` determina o período exibido, enquanto `value` e os limites do intervalo representam a seleção.
1420
1419
  * ### Regra de uso e relacionamento
1421
- * Geralmente exibido dentro da superfície suspensa coordenada pelo `br-datetime-picker`. Pode ser declarado isoladamente quando a interface demandar um calendário estático permanentemente embutido na página (inline calendar).
1422
- * Para a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
1423
- * @category Formulários, Seleção
1424
- * @status stable
1420
+ * O `br-datetime-picker` instancia e configura este calendário internamente nos modos `date` e `datetime`, recebendo suas alterações pelo evento `dateStateChange`. Não declare o calendário em um slot do pai.
1421
+ * Use diretamente quando precisar de um calendário embutido e permanentemente visível. Nesse caso, a aplicação deve coordenar valores e eventos e implementar a integração com formulários e a validação do fluxo completo. O calendário isolado não fornece o campo textual, o seletor de horários nem a associação ao formulário do orquestrador.
1422
+ * 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/date-picker?tab=designer).
1425
1423
  */
1426
1424
  interface BrDatePicker {
1427
1425
  /**
1428
- * Desabilita a interação do calendário quando ativo.
1426
+ * Desabilita a interação do calendário quando `true`.
1429
1427
  * @default false
1430
1428
  */
1431
1429
  "disabled": boolean;
1432
1430
  /**
1433
- * Lista de datas indisponíveis para seleção no calendário. Recebe instâncias de `Date` por property binding; datas inválidas são ignoradas.
1434
- * @example ```js const calendar = document.querySelector('br-date-picker'); calendar.disabledDates = [new Date(2026, 8, 7), new Date(2026, 8, 8)]; ```
1431
+ * Lista de datas indisponíveis para seleção no calendário.
1435
1432
  * @default []
1436
1433
  */
1437
1434
  "disabledDates": Date[];
1438
1435
  /**
1439
- * Define se o calendário deve manter um número fixo de linhas (6 semanas = 42 dias) ou variar conforme o mês. Quando `true`, o calendário sempre exibe 6 semanas completas. Quando `false`, o calendário adapta-se ao mês, exibindo apenas as semanas necessárias.
1436
+ * Se `true`, o calendário sempre exibe 6 semanas (42 dias); caso contrário, adapta-se ao mês.
1440
1437
  * @default false
1441
1438
  */
1442
1439
  "fixedRowCount": boolean;
1443
1440
  /**
1444
1441
  * Locale usado para gerar nomes de meses e dias da semana.
1445
- * @default 'pt-BR'
1442
+ * @default DATETIME_PICKER_LOCALE.DEFAULT
1446
1443
  */
1447
1444
  "locale": string;
1448
1445
  /**
@@ -1456,199 +1453,194 @@ export namespace Components {
1456
1453
  */
1457
1454
  "rangeStart": Date | null;
1458
1455
  /**
1459
- * Intervalo controlado no modo `range`, reunindo `rangeStart` e `rangeEnd` em uma atualização. Deve conter datas válidas ou `null`; valores inválidos são ignorados. Passe o objeto por property binding.
1460
- * @example ```js const calendar = document.querySelector('br-date-picker'); calendar.selectionMode = 'range'; calendar.rangeValue = { start: new Date(2026, 8, 7), end: new Date(2026, 8, 12) }; ```
1456
+ * Intervalo controlado no modo `range`. Quando definido, mantém `rangeStart` e `rangeEnd` sincronizados.
1457
+ * @default undefined
1461
1458
  */
1462
1459
  "rangeValue"?: DatetimePickerDateRange;
1463
1460
  /**
1464
- * Data usada como base visual para o mês atualmente exibido, sem alterar a seleção. Recebe uma instância de `Date` por property binding; valores inválidos usam a data atual.
1465
- * @example ```js const calendar = document.querySelector('br-date-picker'); calendar.referenceDate = new Date(2026, 8, 1); ```
1461
+ * Data usada como base visual para o mês atualmente exibido.
1466
1462
  * @default new Date()
1467
1463
  */
1468
1464
  "referenceDate": Date;
1469
1465
  /**
1470
- * Define se a seleção ocorre por data única ou por intervalo. Valores inválidos usam `single`.
1466
+ * Define se a seleção ocorre por data única ou por intervalo.
1471
1467
  * @default 'single'
1472
1468
  */
1473
1469
  "selectionMode": DatetimePickerSelectionMode;
1474
1470
  /**
1475
- * Data efetivamente selecionada, ou `null` quando não há seleção; é diferente de `referenceDate`, que controla apenas o mês visível. Recebe uma instância de `Date` por property binding; datas inválidas usam `null`.
1476
- * @example ```js const calendar = document.querySelector('br-date-picker'); calendar.value = new Date(2026, 8, 7); ```
1471
+ * Data atualmente selecionada pelo usuário, ou `null` quando não há seleção.
1477
1472
  * @default null
1478
1473
  */
1479
1474
  "value": Date | null;
1480
1475
  /**
1481
- * Define o índice do dia em que a semana começa na interface do calendário.
1476
+ * Índice do dia em que a semana começa na interface do calendário.
1482
1477
  * @default 0
1483
1478
  */
1484
1479
  "weekStartsOn": WeekDayIndex;
1485
1480
  }
1486
1481
  /**
1487
- * Subcomponente especializado do ecossistema de datas do GovBR-DS, responsável pela digitação e formatação de datas e horários via teclado.
1482
+ * O `br-datetime-input` é o subcomponente de edição textual do `br-datetime-picker`, com máscara, interpretação de datas e horários e validação local sobre um `br-input` interno.
1488
1483
  * ### Papel na composição
1489
- * - Aplica máscaras automáticas de digitação conforme o formato configurado (ex.: `DD/MM/AAAA`, `HH:mm`, `DD/MM/AAAA HH:mm`).
1490
- * - Contém o botão de acionamento para expandir ou recolher o popup do calendário.
1484
+ * Exibe e permite editar a seleção única ou os limites de um intervalo nos modos `date`, `time` e `datetime`. Comunica alterações por `dateStateChange`, informa a validação local por `inputValidationChange` e solicita a abertura ou o fechamento do painel por `togglePicker`.
1491
1485
  * ### Regra de uso e relacionamento
1492
- * No fluxo usual da aplicação, é instanciado e coordenado automaticamente pelo orquestrador `br-datetime-picker`. Pode ser utilizado de forma autônoma apenas quando o leiaute exigir somente o campo de digitação textual sem o painel flutuante de calendário.
1493
- * Para a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
1494
- * @category Formulários, Seleção
1495
- * @status stable
1486
+ * O `br-datetime-picker` instancia este campo internamente e fornece valores e configurações por propriedades. O pai coordena a seleção com o calendário e os controles de horário; o campo não abre esses seletores por conta própria nem deve ser fornecido em slot.
1487
+ * Prefira o `br-datetime-picker` para o controle completo. Use o campo isoladamente apenas em composições personalizadas nas quais a aplicação assuma a sincronização de estado, o tratamento dos eventos e a integração com formulários. Este subcomponente não possui a associação nativa ao formulário do orquestrador.
1488
+ * Consulte também as [diretrizes de design do GovBR](https://www.gov.br/ds/components/datetime?tab=designer).
1489
+ * @see https://www.gov.br/ds/components/datetime?tab=designer
1496
1490
  */
1497
1491
  interface BrDatetimeInput {
1498
1492
  /**
1499
- * Desabilita digitação e abertura do picker quando ativo.
1493
+ * Controla os estados de read-only ou bloqueio de formulário.
1500
1494
  * @default false
1501
1495
  */
1502
1496
  "disabled": boolean;
1503
1497
  /**
1504
- * Move o foco para o input interno sem expor a árvore privada ao componente pai.
1505
- */
1506
- "focusInput": () => Promise<void>;
1507
- /**
1508
- * Define o modo de entrada: `date`, `time` ou `datetime`.
1498
+ * Modo de entrada que controla máscara, parser e formato exibido.
1509
1499
  * @default 'datetime'
1510
1500
  */
1511
1501
  "mode": DatetimePickerMode;
1512
1502
  /**
1513
- * Define o placeholder do campo de entrada.
1503
+ * Texto de placeholder exibido quando o campo estiver vazio.
1514
1504
  * @default ''
1515
1505
  */
1516
1506
  "placeholder": string;
1517
1507
  /**
1518
- * Data final do intervalo quando em modo range.
1508
+ * Fim do intervalo em `selectionMode === 'range'`.
1519
1509
  * @default null
1520
1510
  */
1521
1511
  "rangeEnd": Date | null;
1522
1512
  /**
1523
- * Data inicial do intervalo quando em modo range.
1513
+ * Início do intervalo em `selectionMode === 'range'`.
1524
1514
  * @default null
1525
1515
  */
1526
1516
  "rangeStart": Date | null;
1527
1517
  /**
1528
- * Intervalo controlado no modo `range`, reunindo `rangeStart` e `rangeEnd` em uma atualização. Deve conter datas válidas ou `null`; valores inválidos são ignorados. Passe o objeto por property binding.
1529
- * @example ```js const input = document.querySelector('br-datetime-input'); input.selectionMode = 'range'; input.rangeValue = { start: new Date(2026, 8, 7), end: new Date(2026, 8, 12) }; ```
1518
+ * Intervalo controlado no modo `range` como objeto `{ start, end }`.
1519
+ * @type {DatetimePickerDateRange | undefined}
1530
1520
  */
1531
1521
  "rangeValue"?: DatetimePickerDateRange;
1532
1522
  /**
1533
- * Data de referência que orienta a navegação visual do calendário sem alterar a seleção. Recebe uma instância de `Date` por property binding.
1523
+ * Data de referência usada para navegação e preenchimento de valores parciais.
1534
1524
  * @default new Date()
1535
- * @example ```js const input = document.querySelector('br-datetime-input'); input.referenceDate = new Date(2026, 8, 1); ```
1536
1525
  */
1537
1526
  "referenceDate": Date;
1538
1527
  /**
1539
- * Define se a seleção ocorre por data única ou por intervalo. Aceita `single` ou `range`; valores inválidos usam `single`.
1528
+ * Define o modo de seleção: `single` (valor único) ou `range` (intervalo).
1540
1529
  * @default 'single'
1541
1530
  */
1542
1531
  "selectionMode": DatetimePickerSelectionMode;
1543
1532
  /**
1544
- * Data efetivamente selecionada, ou `null` quando nada foi escolhido; é diferente de `referenceDate`, que controla apenas a referência visual. Recebe uma instância de `Date` por property binding.
1533
+ * Valor atualmente selecionado pelo componente.
1545
1534
  * @default null
1546
- * @example ```js const input = document.querySelector('br-datetime-input'); input.value = new Date(2026, 8, 7, 14, 30); ```
1547
1535
  */
1548
1536
  "value": Date | null;
1549
1537
  }
1550
1538
  /**
1551
- * O componente `br-datetime-picker` é o orquestrador completo do GovBR-DS para seleção e digitação de datas, horários ou intervalos combinados. Ele integra-se nativamente a formulários HTML via `formAssociated` e oferece suporte WAI-ARIA para diálogos e calendários.
1539
+ * O `br-datetime-picker` é o controle completo do GovBR-DS para digitação e seleção visual de datas e horários. Orquestra o campo textual e os seletores internos, consolidando valor, validação e integração com formulários HTML.
1552
1540
  * ### Para que serve
1553
- * - **Seleção completa de data e horário:** Reúne em um único controle o campo de entrada com máscara formatada (`br-datetime-input`), o calendário de seleção de datas (`br-date-picker`) e o seletor de horários (`br-time-picker`).
1554
- * - **Múltiplos modos operacionais:** Suporta data simples, intervalo de datas (`range`), apenas hora (`time`), data e hora combinadas (`datetime`) e datas múltiplas.
1555
- * - **Validação e formulários nativos:** Valida datas mínimas (`min`), máximas (`max`), formatos permitidos e comunica valores estruturados diretamente ao formulário pai.
1541
+ * - Oferece os modos `date`, `time` e `datetime`, com seleção única (`single`) ou de intervalo (`range`).
1542
+ * - Combina edição textual com máscara, calendário e ajuste de horas e minutos conforme o modo escolhido.
1543
+ * - Centraliza restrições de seleção, validação e submissão do valor por meio de `formAssociated`.
1556
1544
  * ### Quando utilizar
1557
- * - **Utilize quando:**
1558
- * - O formulário exigir preenchimento de datas ou horários onde tanto a digitação manual rápida quanto a exploração visual no calendário agreguem valor à experiência.
1559
- * - For necessário selecionar um período com data de início e fim.
1560
- * - **Evite e prefira outro componente quando:**
1561
- * - A data for estritamente de nascimento ou emissão de documento onde a pessoa usuária sabe os dígitos de cor e prefere digitar apenas números (prefira `br-input` com máscara numérica).
1545
+ * - Utilize quando o formulário precisar de um controle completo de data ou horário com digitação e seleção visual.
1546
+ * - Utilize para períodos com início e fim, inclusive com horários nos modos `time` e `datetime`.
1547
+ * - Evite quando precisar apenas apresentar uma data: prefira texto formatado.
1548
+ * - Para um calendário permanentemente visível sem o campo textual, considere `br-date-picker`; a aplicação assume a integração com o restante do formulário.
1549
+ * - A seleção não oferece uma coleção de datas independentes: use `single` para um valor ou `range` para um intervalo.
1562
1550
  * ### Composição e Subcomponentes
1563
- * | Subcomponente | Papel | Regra de uso |
1551
+ * | Componente | Papel | Regra de uso |
1564
1552
  * | --- | --- | --- |
1565
- * | `br-datetime-picker` | **Orquestrador principal.** Gerencia valor consolidado, validação, abertura do popup e sincronização entre input e calendário. | Deve ser o único controle declarado no template da aplicação na quase totalidade dos casos. |
1566
- * | `br-datetime-input` | **Campo com máscara.** Exibe o valor formatado e permite digitação manual. | Coordenado automaticamente pelo pai; use avulso apenas em composições customizadas. |
1567
- * | `br-date-picker` | **Calendário de datas.** Painel visual com grade de dias, meses e anos. | Coordenado pelo pai; use avulso se precisar de calendário estático embutido. |
1568
- * | `br-time-picker` | **Seletor de horário.** Controle de escolha de horas e minutos. | Coordenado pelo pai; use avulso se precisar apenas de seletor de hora sem data. |
1553
+ * | `br-datetime-picker` | Orquestrador do valor consolidado, validação, formulário e abertura do painel. | Declare este controle no template para obter a composição completa. |
1554
+ * | `br-datetime-input` | Campo textual com máscara, interpretação da entrada e ação de abertura do painel. | Instanciado internamente pelo pai; não deve ser fornecido em slot. |
1555
+ * | `br-date-picker` | Calendário para navegação e seleção de data única ou intervalo. | Criado pelo pai nos modos `date` e `datetime`; pode ser usado isoladamente como calendário embutido. |
1556
+ * | `br-time-picker` | Controles de hora e minuto. | Criado pelo pai nos modos `time` e `datetime`, com uma instância por limite quando a seleção é `range`. |
1557
+ * O slot `feedback` recebe conteúdo declarativo de validação, normalmente um `br-message`; não substitui os seletores internos.
1569
1558
  * ### Como os subcomponentes se relacionam
1570
- * O `br-datetime-picker` funciona como o modelo pronto: ele instancia e sincroniza internamente o campo textual (`br-datetime-input`) e os seletores visuais suspensos (`br-date-picker` e/ou `br-time-picker`). A aplicação consome os eventos unificados emitidos diretamente pelo orquestrador pai (`change`, `input`).
1571
- * Para a documentação completa de design, incluindo diretrizes de acessibilidade e especificações visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
1572
- * @category Formulários, Seleção
1559
+ * O pai fornece valores e configurações aos filhos por propriedades e consolida suas alterações por eventos DOM. O campo textual solicita a abertura do painel; o calendário e os controles de horário atualizam a seleção compartilhada, sem coordenar diretamente uns aos outros.
1560
+ * `referenceDate` representa a referência de navegação visual, distinta da seleção efetiva. O orquestrador mantém o campo textual, os seletores e o valor de formulário sincronizados. A aplicação consome o valor e os eventos do pai, incluindo `brDatetimePickerChange` para a seleção completa e tipada.
1561
+ * O uso isolado dos filhos exige que a aplicação assuma a coordenação de estado, validação e formulário; eles não herdam a associação nativa ao formulário do `br-datetime-picker`.
1562
+ * 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/datetimepicker?tab=designer).
1563
+ * @category Formulários
1573
1564
  * @status stable
1574
1565
  */
1575
1566
  interface BrDatetimePicker {
1576
1567
  /**
1577
1568
  * Permite que consumidores acionem validação nativa do formulário via host.
1569
+ * @returns Promise<boolean> — resultado da Constraint Validation API para o host.
1578
1570
  */
1579
1571
  "checkValidity": () => Promise<boolean>;
1580
1572
  /**
1581
- * Limpa valor e intervalo selecionados.
1573
+ * Limpa valor e intervalo selecionados. Remove seleção atual e restaura a referência de navegação para a data atual.
1574
+ * @returns Promise<void> — resolve após a limpeza e sincronização internas.
1582
1575
  */
1583
1576
  "clear": () => Promise<void>;
1584
1577
  /**
1585
1578
  * Fecha o picker.
1579
+ * @returns Promise<void> — resolve após atualização do estado de visibilidade.
1586
1580
  */
1587
1581
  "close": () => Promise<void>;
1588
1582
  /**
1589
- * Desabilita toda a interação do componente. Quando `true`, impede abrir o picker, alterar valores e navegar entre datas/horários.
1583
+ * Desabilita toda a interação do componente.
1590
1584
  * @default false
1591
1585
  */
1592
1586
  "disabled": boolean;
1593
1587
  /**
1594
- * Define um conjunto de datas indisponíveis para seleção. Aceita uma lista de `Date` e/ou strings analisáveis, ou uma string com datas separadas por espaço em branco. Datas inválidas são ignoradas com warning. A comparação considera apenas o dia (ano/mês/dia), ignorando hora.
1588
+ * Datas indisponíveis para seleção. Aceita `Date[]`, `string` ou `null`. Datas inválidas são ignoradas. A comparação considera apenas o dia.
1595
1589
  * @default null
1596
- * @example ```html <br-datetime-picker mode="date" disabled-dates="2026-09-07 2026-09-08"></br-datetime-picker> ```
1597
- * @example ```js const picker = document.querySelector('br-datetime-picker'); picker.disabledDates = [new Date(2026, 8, 7), '2026-09-08']; ```
1598
1590
  */
1599
1591
  "disabledDates": DatetimePickerDisabledDates;
1600
1592
  /**
1601
- * Define se o calendário deve manter um número fixo de linhas (6 semanas = 42 dias) ou variar conforme o mês. Quando `true`, o calendário sempre exibe 6 semanas completas. Quando `false`, o calendário adapta-se ao mês, exibindo apenas as semanas necessárias.
1593
+ * Mantém número fixo de linhas no calendário (6 semanas) quando `true`.
1602
1594
  * @default false
1603
1595
  */
1604
1596
  "fixedRowCount": boolean;
1605
1597
  /**
1606
1598
  * Move o foco para o input nativo interno.
1599
+ * @returns Promise<void> — resolve imediatamente após tentar focar o elemento.
1607
1600
  */
1608
1601
  "focusInput": () => Promise<void>;
1609
1602
  /**
1610
1603
  * Retorna o intervalo de datas selecionado quando em modo `selectionMode="range"`.
1611
- * @returns Objeto com datas `start` e `end`, ou `null` se não estiver em modo range.
1604
+ * @returns Promise<{ start: Date | null; end: Date | null } | null> — objeto com `start`/`end` ou `null` quando não estiver em modo `range`.
1612
1605
  */
1613
1606
  "getRange": () => Promise<{ start: Date | null; end: Date | null; } | null>;
1614
1607
  /**
1615
1608
  * Retorna um snapshot serializável da Constraint Validation API.
1609
+ * @returns Promise<FormValidationState> — estado atual de validação do host, pronto para conversão e restauração via `formStateRestoreCallback`.
1616
1610
  */
1617
1611
  "getValidationState": () => Promise<FormValidationState>;
1618
1612
  /**
1619
1613
  * Retorna uma cópia do valor selecionado atualmente.
1614
+ * @returns Promise<Date | null> — cópia imutável do `value` atual, ou `null`.
1620
1615
  */
1621
1616
  "getValue": () => Promise<Date | null>;
1622
1617
  /**
1623
- * Define a seleção inicial do componente. Aceita: - `'now'`: seleciona o momento atual. - `Date` ou `string`: seleciona uma data arbitrária. - `null`: inicia sem seleção. Reativo em runtime: mudanças na prop atualizam estado e subcomponentes.
1618
+ * Valor inicial da seleção: `'now' | Date | string | null`.
1624
1619
  * @default null
1625
- * @example ```html <br-datetime-picker initial-moment="now"></br-datetime-picker> ```
1626
1620
  */
1627
1621
  "initialMoment": DatetimePickerInitialMoment;
1628
1622
  /**
1629
1623
  * Consulta se o picker está atualmente aberto.
1630
- * @returns `true` se o picker está visível, `false` caso contrário.
1624
+ * @returns Promise<boolean> — `true` se o picker está visível, `false` caso contrário.
1631
1625
  */
1632
1626
  "isOpen": () => Promise<boolean>;
1633
1627
  /**
1634
- * Define o locale usado pelos subcomponentes para formatar datas e rótulos.
1628
+ * Locale usado para formatação e rótulos.
1635
1629
  * @default 'pt-BR'
1636
1630
  */
1637
1631
  "locale": DatetimePickerLocale;
1638
1632
  /**
1639
- * Maior data/horário aceito, interpretado conforme `mode`. Valores inválidos são ignorados. Aceita texto no atributo HTML ou uma instância de `Date` por property binding.
1640
- * @example ```html <br-datetime-picker mode="date" max="2026-12-31"></br-datetime-picker> ```
1633
+ * Maior data/hora aceito (Date | string | null).
1641
1634
  * @default null
1642
1635
  */
1643
1636
  "max": Date | string | null;
1644
1637
  /**
1645
- * Menor data/horário aceito, interpretado conforme `mode`. Valores inválidos são ignorados. Aceita texto no atributo HTML ou uma instância de `Date` por property binding.
1646
- * @example ```html <br-datetime-picker mode="date" min="2026-01-01"></br-datetime-picker> ```
1638
+ * Menor data/hora aceito (Date | string | null).
1647
1639
  * @default null
1648
1640
  */
1649
1641
  "min": Date | string | null;
1650
1642
  /**
1651
- * Define o modo de seleção exibido pelo componente: data, horário ou ambos. Valores aceitos: `date`, `time` ou `datetime`. Valores inválidos são corrigidos automaticamente para o valor padrão, mantendo o atributo refletido sempre consistente com o modo exibido.
1643
+ * Modo exibido pelo componente. Valores: `date` | `time` | `datetime`. Valores inválidos são normalizados para o padrão.
1652
1644
  * @default 'datetime'
1653
1645
  */
1654
1646
  "mode": DatetimePickerMode;
@@ -1659,84 +1651,96 @@ export namespace Components {
1659
1651
  "name": string;
1660
1652
  /**
1661
1653
  * Abre o picker quando o componente estiver habilitado.
1654
+ * @returns Promise<void> — resolve quando o estado visual for atualizado.
1662
1655
  */
1663
1656
  "open": () => Promise<void>;
1664
1657
  /**
1665
- * Define o placeholder exibido no campo de entrada do datetime picker.
1658
+ * Texto placeholder exibido no input.
1666
1659
  * @default ''
1667
1660
  */
1668
1661
  "placeholder": string;
1669
1662
  /**
1670
- * Intervalo controlado quando `selectionMode="range"`. Deve conter datas válidas ou `null` em `start` e `end`; valores inválidos mantêm o último intervalo efetivo. Passe o objeto por property binding; atributos HTML não representam objetos com `Date`.
1671
- * @example ```js const picker = document.querySelector('br-datetime-picker'); picker.selectionMode = 'range'; picker.rangeValue = { start: new Date(2026, 8, 7), end: new Date(2026, 8, 12), }; ```
1663
+ * Intervalo controlado quando `selectionMode="range"`. Em `datetime`, preserva as datas e horários informados; término anterior ao início torna o controle inválido, sem reordenar ou avançar datas.
1664
+ * @default undefined
1672
1665
  */
1673
1666
  "rangeValue"?: DatetimePickerDateRange;
1674
1667
  /**
1675
1668
  * Permite exibir mensagens nativas de validação no host.
1669
+ * @returns Promise<boolean> — `true` se a mensagem foi exibida e o formulário é válido.
1676
1670
  */
1677
1671
  "reportValidity": () => Promise<boolean>;
1678
1672
  /**
1679
- * Indica se o campo deve ter valor antes do envio do formulário.
1673
+ * Indica se o campo é requerido para submissão do formulário.
1680
1674
  * @default false
1681
1675
  */
1682
1676
  "required": boolean;
1683
1677
  /**
1684
1678
  * Restaura o estado inicial atualmente registrado para reset.
1679
+ * @returns Promise<void> — resolve quando a seleção inicial for restaurada.
1685
1680
  */
1686
1681
  "resetToInitial": () => Promise<void>;
1687
1682
  /**
1688
- * Define o tipo de seleção de datas para o calendário: única ou intervalo. `range` só funciona em conjunto com `mode="date"`. Se `selectionMode="range"` for informado, o componente ajusta automaticamente `mode` para `date`. Se `mode` mudar para `time` ou `datetime`, o componente normaliza `selectionMode` para `single` quando necessário. Valores inválidos usam `single`.
1683
+ * Tipo de seleção: `single` ou `range`.
1689
1684
  * @default 'single'
1690
1685
  */
1691
1686
  "selectionMode": DatetimePickerSelectionMode;
1692
1687
  /**
1693
- * Representação serializada compatível com os formatos de controles HTML (`YYYY-MM-DD`, `HH:mm` ou ISO local, conforme `mode`). Em intervalos, usa `início/fim`. Na inicialização, tem precedência sobre `valueAsDate`, `value` e `initialMoment`. Uma string vazia inicia sem seleção, mesmo quando outra prop fornece uma data.
1694
- * @example ```html <br-datetime-picker mode="datetime" serialized-value="2026-09-07T14:30"></br-datetime-picker> ```
1688
+ * Representação serializada compatível com controles HTML. Formatos variam conforme `mode`. Em intervalos, usa `início/fim`.
1689
+ * @default undefined
1695
1690
  */
1696
1691
  "serializedValue"?: string;
1697
1692
  /**
1698
1693
  * Define ou limpa uma mensagem de validade customizada.
1694
+ * @param message string — mensagem de validação; string vazia remove a mensagem.
1695
+ * @returns Promise<void> — resolve após sincronizar a validade no host.
1699
1696
  */
1700
1697
  "setCustomValidity": (message: string) => Promise<void>;
1701
1698
  /**
1702
- * Define programaticamente as datas desabilitadas por meio de array. Útil quando o componente é usado via HTML e o consumidor precisa enviar uma lista tipada em runtime.
1703
- * @param dates - Lista de datas (Date|string) a bloquear.
1699
+ * Define programaticamente as datas desabilitadas. Use quando scripts externos precisam fornecer uma lista tipada de datas a bloquear no calendário. Substitui a prop `disabledDates` para atualizações imperativas.
1700
+ * @param dates Lista de datas (`Date` | `string`) a bloquear, ou `null` para limpar.
1701
+ * @returns Promise<void> — resolve quando a atualização interna for aplicada.
1704
1702
  */
1705
1703
  "setDisabledDates": (dates: DatetimePickerDisabledDate[] | null) => Promise<void>;
1706
1704
  /**
1707
- * Define intervalo de datas de forma imperativa, forçando modo date e selectionMode range.
1705
+ * Define um intervalo no modo atual e ativa `selectionMode="range"`. Valida datas contra bloqueios e sincroniza estado visual e de formulário. Em `datetime`, mantém os limites informados e sinaliza intervalo inválido quando o término precede o início, sem ajustar datas automaticamente.
1706
+ * @param start Date | string | null — data inicial do intervalo.
1707
+ * @param end Date | string | null — data final do intervalo.
1708
+ * @returns Promise<void> — resolve quando o intervalo for aplicado e sincronizado.
1708
1709
  */
1709
1710
  "setRange": (start: Date | string | null, end: Date | string | null) => Promise<void>;
1710
1711
  /**
1711
- * Define o valor atual de forma imperativa aceitando Date, string serializada ou null.
1712
+ * Define o valor do componente de forma imperativa. Aceita `Date`, string compatível com o `mode`, ou `null` para limpar a seleção. Validação de datas desabilitadas é aplicada antes da atribuição.
1713
+ * @param value Date | string | null — valor a aplicar; `null` limpa a seleção.
1714
+ * @returns Promise<void> — resolve quando o componente aplicar e sincronizar o valor.
1712
1715
  */
1713
1716
  "setValue": (value: Date | string | null) => Promise<void>;
1714
1717
  /**
1715
1718
  * Alterna o estado de abertura do picker.
1719
+ * @returns Promise<void> — resolve quando a transição de estado terminar.
1716
1720
  */
1717
1721
  "toggle": () => Promise<void>;
1718
1722
  /**
1719
- * Executa o validator do picker e retorna se a seleção atual é válida.
1723
+ * Executa o validator customizado (se houver) e valida o controle. Emite eventos de início/conclusão da validação e atualiza mensagens internas.
1724
+ * @returns Promise<boolean> — `true` se a seleção for considerada válida.
1720
1725
  */
1721
1726
  "validate": () => Promise<boolean>;
1722
1727
  /**
1723
- * Regra síncrona ou assíncrona aplicada à data ou intervalo selecionado. Retorne uma mensagem para invalidar ou `null` para aceitar o valor.
1724
- * @example ```js const picker = document.querySelector('br-datetime-picker'); picker.validator = (value) => value === null ? 'Escolha uma data' : null; ```
1728
+ * Validador customizado (síncrono ou assíncrono) para a seleção. Recebe `Date | DatetimePickerDateRange | null` como valor.
1729
+ * @default undefined
1725
1730
  */
1726
1731
  "validator"?: DatetimePickerValidator;
1727
1732
  /**
1728
- * Instância de `Date` selecionada pelo usuário no modo simples. Pode ser controlada por property binding e é atualizada pelo evento `valueChange`. Para formulários e atributos textuais, use `serializedValue`.
1729
- * @example ```js const picker = document.querySelector('br-datetime-picker'); picker.value = new Date(2026, 8, 7, 14, 30); ```
1733
+ * Valor selecionado pelo usuário (Date | null). Pode ser controlado externamente e é refletido internamente.
1730
1734
  * @default null
1731
1735
  */
1732
1736
  "value": Date | null;
1733
1737
  /**
1734
- * Espelho tipado da seleção atual, equivalente ao padrão `valueAsDate` dos controles HTML. Diferentemente de `serializedValue`, recebe e retorna uma instância de `Date`. Na inicialização, tem precedência sobre `value` e `initialMoment` quando `serializedValue` não é informado. `null` inicia sem seleção; `undefined` permite usar as outras props.
1735
- * @example ```js const picker = document.querySelector('br-datetime-picker'); picker.valueAsDate = new Date(2026, 8, 7); ```
1738
+ * Espelho tipado da seleção atual (`valueAsDate`).
1739
+ * @default undefined
1736
1740
  */
1737
1741
  "valueAsDate"?: Date | null;
1738
1742
  /**
1739
- * Define o dia inicial da semana exibida no calendário. Valores suportados: 0 (domingo) a 6 (sábado).
1743
+ * Dia inicial da semana exibido no calendário (0 = Dom, 6 = Sáb).
1740
1744
  * @default 0
1741
1745
  */
1742
1746
  "weekStartsOn": DatetimePickerWeekDayIndex;
@@ -2745,7 +2749,7 @@ export namespace Components {
2745
2749
  */
2746
2750
  "active"?: boolean;
2747
2751
  /**
2748
- * Renderiza o item como botão. Quando informado, tem precedência sobre `isButton`.
2752
+ * Renderiza o item como botão de alternância: o acionamento alterna `selected`, emite `brItemSelect` e expõe o estado em `aria-pressed`. Para uma ação sem estado (ex.: "Sair"), use `href` com `navigation-mode="event"` ou um `br-button`. Quando informado, tem precedência sobre `isButton`.
2749
2753
  */
2750
2754
  "button"?: boolean;
2751
2755
  /**
@@ -3197,7 +3201,7 @@ export namespace Components {
3197
3201
  */
3198
3202
  "density": BrDensity;
3199
3203
  /**
3200
- * Identificador legado do ícone a ser exibido. Nomes simples (por exemplo, `question`) são resolvidos pelo registro SVG local. Para classes CSS ou SVGs personalizados, prefira o slot `icon`.
3204
+ * Í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.
3201
3205
  * @default ''
3202
3206
  */
3203
3207
  "icon": string;
@@ -4466,6 +4470,17 @@ export namespace Components {
4466
4470
  * - **Agrupamento de opções:** Organiza opções contíguas por categoria, preservando virtualização, busca local e semântica nativa de formulário.
4467
4471
  * - **Integração com formulários:** É associado a formulários nativos (`formAssociated`), comunicando seu valor, estado de validação (válido/inválido), mensagens de erro contextuais e eventos padrão (`change`, `input`).
4468
4472
  * - **Navegação acessível:** Suporta controle total via teclado (setas para cima/baixo, Enter, Escape, Home, End), foco gerenciado e anúncios para leitores de tela.
4473
+ * ### Navegação por teclado
4474
+ * O foco permanece no campo `combobox` enquanto a lista está aberta; a opção em destaque é comunicada por `aria-activedescendant`.
4475
+ * Ao receber foco, o campo abre a lista sem alterar a seleção atual.
4476
+ * - **ArrowDown / ArrowUp:** abre a lista e destaca a próxima opção na direção pressionada; com a lista aberta, move o destaque sem mover o foco físico.
4477
+ * - **Home / End:** em modo não filtrável, destaca a primeira ou a última opção habilitada; em modo filtrável, preserva o movimento do cursor no texto.
4478
+ * - **Enter:** abre a lista quando fechada e confirma a opção destacada quando aberta.
4479
+ * - **Espaço:** confirma a opção destacada em modo não filtrável; em modo filtrável, insere um espaço no campo de busca.
4480
+ * - **Escape:** fecha a lista, remove o destaque e devolve o foco ao campo.
4481
+ * - **Tab:** fecha a lista e deixa o navegador mover o foco para o próximo controle, sem alterar a seleção implicitamente.
4482
+ * - **Busca incremental:** em modo não filtrável, caracteres consecutivos destacam a primeira opção habilitada correspondente; em modo filtrável, a digitação filtra a lista.
4483
+ * - **Alt+ArrowDown / Alt+ArrowUp:** abre ou fecha a lista sem alterar a seleção.
4469
4484
  * ### Quando utilizar
4470
4485
  * - **Utilize quando:**
4471
4486
  * - O número de opções for moderado a grande (mais de 5 a 7 itens), onde listar todas diretamente na tela consumiria muito espaço visual.
@@ -4545,7 +4560,7 @@ export namespace Components {
4545
4560
  */
4546
4561
  "customId": string;
4547
4562
  /**
4548
- * Define a densidade visual compartilhada pelo campo e pela lista de opções. Aceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.
4563
+ * Define a densidade visual compartilhada pelo campo e pela lista de opções. Aceita `small`, `medium` ou `large`. Valores inválidos usam `medium`. A opção sintética de selecionar todos permanece com densidade `small`.
4549
4564
  * @default 'medium'
4550
4565
  */
4551
4566
  "density": BrDensity;
@@ -4575,6 +4590,11 @@ export namespace Components {
4575
4590
  * @deprecated Leia a propriedade `value` diretamente.
4576
4591
  */
4577
4592
  "getValue": () => Promise<string | string[]>;
4593
+ /**
4594
+ * Oculta os divisores entre opções consecutivas, sem alterar a altura das linhas.
4595
+ * @default false
4596
+ */
4597
+ "hideDividers": boolean;
4578
4598
  /**
4579
4599
  * Exibe rótulo e controle em linha. Quando informada, tem precedência sobre `isInline`.
4580
4600
  */
@@ -4831,10 +4851,11 @@ export namespace Components {
4831
4851
  */
4832
4852
  "setFocus": () => Promise<void>;
4833
4853
  /**
4834
- * Exibe o ícone de busca dentro do campo.
4854
+ * Exibe a lupa mesmo quando o campo não é filtrável. Quando filterable é true, a lupa é exibida automaticamente.
4835
4855
  * @type {boolean | undefined}
4836
4856
  */
4837
4857
  "showSearchIcon"?: boolean;
4858
+ "syncCombobox": (state: SelectComboboxState) => Promise<void>;
4838
4859
  /**
4839
4860
  * Valor textual apresentado no input.
4840
4861
  * @type {string | undefined}
@@ -4866,7 +4887,7 @@ export namespace Components {
4866
4887
  */
4867
4888
  "close": () => Promise<void>;
4868
4889
  /**
4869
- * Define a densidade visual da lista, das opções e do indicador de carregamento. Aceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.
4890
+ * Define a densidade visual da lista, das opções regulares e do indicador de carregamento. A opção sintética de selecionar todos permanece com densidade `small`. Aceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.
4870
4891
  * @default 'medium'
4871
4892
  */
4872
4893
  "density": BrDensity;
@@ -4881,6 +4902,11 @@ export namespace Components {
4881
4902
  * @returns As opções renderizadas no estado atual.
4882
4903
  */
4883
4904
  "getOptions": () => Promise<SelectOptionData[]>;
4905
+ /**
4906
+ * Oculta os divisores entre opções consecutivas, sem alterar a altura das linhas.
4907
+ * @default false
4908
+ */
4909
+ "hideDividers": boolean;
4884
4910
  /**
4885
4911
  * Informa a altura base usada no cálculo de posicionamento das opções. Deve ser um número finito positivo; valores inválidos usam 56.
4886
4912
  * @default 56
@@ -4907,6 +4933,10 @@ export namespace Components {
4907
4933
  * @default 0
4908
4934
  */
4909
4935
  "overscan": number;
4936
+ /**
4937
+ * Torna o item ativo visível sem retirar o foco do campo.
4938
+ */
4939
+ "revealOption": (index: number) => Promise<boolean>;
4910
4940
  /**
4911
4941
  * Posiciona no topo a primeira opção selecionada na ordem visual da lista. A opção auxiliar de selecionar tudo não participa dessa escolha.
4912
4942
  * @returns `true` quando existe uma opção selecionada para posicionar.
@@ -5060,7 +5090,7 @@ export namespace Components {
5060
5090
  * - O usuário já estiver autenticado e a intenção for apenas exibir o perfil (prefira `br-avatar`).
5061
5091
  * ### Estrutura e Slots
5062
5092
  * O `br-sign-in` é um botão de autenticação estilizado com a marca oficial do Governo Federal, recebendo propriedades de rótulo e variantes institucionais.
5063
- * Para a documentação completa de design, incluindo diretrizes de acessibilidade e especificações visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/sign-in?tab=designer).
5093
+ * Para a documentação completa de design, incluindo diretrizes de acessibilidade e especificações visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/signin?tab=designer).
5064
5094
  * @category Identidade, Ações, Formulários
5065
5095
  * @status stable
5066
5096
  */
@@ -5070,7 +5100,7 @@ export namespace Components {
5070
5100
  */
5071
5101
  "ariaLabel": string;
5072
5102
  /**
5073
- * Define se o sign-in usará um esquema de cores escuro.
5103
+ * Define se o sign-in usará um esquema de cores escuro, para fundos escuros. Quando omitido, ou com valor diferente de `dark`, usa o esquema claro.
5074
5104
  */
5075
5105
  "colorMode": 'dark';
5076
5106
  /**
@@ -5830,7 +5860,7 @@ export namespace Components {
5830
5860
  */
5831
5861
  "counter": string;
5832
5862
  /**
5833
- * Define o ícone do item de tab usando classes CSS do Font Awesome 5, como `fas fa-bell`. O formato Iconify é aceito apenas para compatibilidade legada e não deve ser usado em novos códigos.
5863
+ * Í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.
5834
5864
  */
5835
5865
  "icon": string;
5836
5866
  /**
@@ -6427,31 +6457,27 @@ export namespace Components {
6427
6457
  "wrap"?: TextareaWrap;
6428
6458
  }
6429
6459
  /**
6430
- * Subcomponente de seleção de horários do GovBR-DS, desenvolvido para permitir a escolha intuitiva de horas e minutos.
6460
+ * O `br-time-picker` é o subcomponente de ajuste de horas e minutos do `br-datetime-picker`.
6431
6461
  * ### Papel na composição
6432
- * - Apresenta colunas ou controles de incremento/decremento para seleção de horas e minutos com validação de limites.
6433
- * - Sincroniza o horário escolhido com o campo textual associado.
6462
+ * Oferece campos textuais e botões de incremento e decremento para hora e minuto. Usa uma data de referência e comunica alterações por `dateStateChange`; não coordena diretamente o calendário nem o campo textual principal.
6434
6463
  * ### Regra de uso e relacionamento
6435
- * Coordenado pelo componente pai `br-datetime-picker` no modo de horário ou composto. Pode ser utilizado avulso quando a aplicação demandar exclusivamente a captura de hora sem necessidade de calendário de datas.
6436
- * Para a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
6437
- * @category Formulários, Seleção
6438
- * @status stable
6464
+ * O `br-datetime-picker` instancia e sincroniza este seletor nos modos `time` e `datetime`. Na seleção de intervalo, o pai cria dois seletores, um para o início e outro para o fim, e consolida os respectivos valores. Não forneça seletores de horário em slots do pai.
6465
+ * Prefira o orquestrador para um controle completo de horário com campo textual e formulário. Use diretamente apenas quando precisar dos controles de hora e minuto em uma composição personalizada e assumir a sincronização de estado, a validação e a integração com formulários. O uso isolado não herda a associação nativa ao formulário do pai.
6466
+ * Consulte também as [diretrizes de design do GovBR](https://www.gov.br/ds/components/time-picker?tab=designer).
6439
6467
  */
6440
6468
  interface BrTimePicker {
6441
6469
  /**
6442
- * Desabilita todos os controles de navegação e edição de hora/minuto.
6470
+ * Indica se os controles do seletor estão desabilitados.
6443
6471
  * @default false
6444
6472
  */
6445
6473
  "disabled": boolean;
6446
6474
  /**
6447
- * Data usada como referência para a navegação de hora e minuto, sem representar necessariamente a seleção. Recebe uma instância de `Date` por property binding; valores inválidos usam a data atual.
6448
- * @example ```js const timePicker = document.querySelector('br-time-picker'); timePicker.referenceDate = new Date(2026, 8, 7, 9); ```
6475
+ * Data de referência usada para exibir e ajustar hora e minuto.
6449
6476
  * @default new Date()
6450
6477
  */
6451
6478
  "referenceDate": Date;
6452
6479
  /**
6453
- * Data que contém a hora e o minuto efetivamente selecionados, ou `null` quando vazio. Recebe uma instância de `Date` por property binding; datas inválidas usam `null`.
6454
- * @example ```js const timePicker = document.querySelector('br-time-picker'); timePicker.value = new Date(2026, 8, 7, 14, 30); ```
6480
+ * Valor canônico selecionado pelo usuário.
6455
6481
  * @default null
6456
6482
  */
6457
6483
  "value": Date | null;
@@ -7678,15 +7704,13 @@ declare global {
7678
7704
  "dateStateChange": DatetimePickerDateState;
7679
7705
  }
7680
7706
  /**
7681
- * Subcomponente de calendário visual do GovBR-DS, projetado para seleção interativa de datas individuais ou intervalos.
7707
+ * O `br-date-picker` é o subcomponente de calendário do `br-datetime-picker`, responsável pela seleção visual de uma data ou de um intervalo.
7682
7708
  * ### Papel na composição
7683
- * - Exibe a grade mensal navegável com suporte a seleção de dia, navegação entre meses e anos, e destaque para a data atual e intervalos.
7684
- * - Implementa navegação acessível por teclado WAI-ARIA Grid (setas direcionais para dias e semanas).
7709
+ * Exibe a grade mensal, a navegação entre meses e anos e os estados de seleção e bloqueio dos dias. `referenceDate` determina o período exibido, enquanto `value` e os limites do intervalo representam a seleção.
7685
7710
  * ### Regra de uso e relacionamento
7686
- * Geralmente exibido dentro da superfície suspensa coordenada pelo `br-datetime-picker`. Pode ser declarado isoladamente quando a interface demandar um calendário estático permanentemente embutido na página (inline calendar).
7687
- * Para a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
7688
- * @category Formulários, Seleção
7689
- * @status stable
7711
+ * O `br-datetime-picker` instancia e configura este calendário internamente nos modos `date` e `datetime`, recebendo suas alterações pelo evento `dateStateChange`. Não declare o calendário em um slot do pai.
7712
+ * Use diretamente quando precisar de um calendário embutido e permanentemente visível. Nesse caso, a aplicação deve coordenar valores e eventos e implementar a integração com formulários e a validação do fluxo completo. O calendário isolado não fornece o campo textual, o seletor de horários nem a associação ao formulário do orquestrador.
7713
+ * 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/date-picker?tab=designer).
7690
7714
  */
7691
7715
  interface HTMLBrDatePickerElement extends Components.BrDatePicker, HTMLStencilElement {
7692
7716
  addEventListener<K extends keyof HTMLBrDatePickerElementEventMap>(type: K, listener: (this: HTMLBrDatePickerElement, ev: BrDatePickerCustomEvent<HTMLBrDatePickerElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -7705,17 +7729,17 @@ declare global {
7705
7729
  interface HTMLBrDatetimeInputElementEventMap {
7706
7730
  "dateStateChange": DatetimePickerDateState;
7707
7731
  "togglePicker": void;
7732
+ "inputValidationChange": { valid: boolean | null; message: string; origin?: string };
7708
7733
  }
7709
7734
  /**
7710
- * Subcomponente especializado do ecossistema de datas do GovBR-DS, responsável pela digitação e formatação de datas e horários via teclado.
7735
+ * O `br-datetime-input` é o subcomponente de edição textual do `br-datetime-picker`, com máscara, interpretação de datas e horários e validação local sobre um `br-input` interno.
7711
7736
  * ### Papel na composição
7712
- * - Aplica máscaras automáticas de digitação conforme o formato configurado (ex.: `DD/MM/AAAA`, `HH:mm`, `DD/MM/AAAA HH:mm`).
7713
- * - Contém o botão de acionamento para expandir ou recolher o popup do calendário.
7737
+ * Exibe e permite editar a seleção única ou os limites de um intervalo nos modos `date`, `time` e `datetime`. Comunica alterações por `dateStateChange`, informa a validação local por `inputValidationChange` e solicita a abertura ou o fechamento do painel por `togglePicker`.
7714
7738
  * ### Regra de uso e relacionamento
7715
- * No fluxo usual da aplicação, é instanciado e coordenado automaticamente pelo orquestrador `br-datetime-picker`. Pode ser utilizado de forma autônoma apenas quando o leiaute exigir somente o campo de digitação textual sem o painel flutuante de calendário.
7716
- * Para a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
7717
- * @category Formulários, Seleção
7718
- * @status stable
7739
+ * O `br-datetime-picker` instancia este campo internamente e fornece valores e configurações por propriedades. O pai coordena a seleção com o calendário e os controles de horário; o campo não abre esses seletores por conta própria nem deve ser fornecido em slot.
7740
+ * Prefira o `br-datetime-picker` para o controle completo. Use o campo isoladamente apenas em composições personalizadas nas quais a aplicação assuma a sincronização de estado, o tratamento dos eventos e a integração com formulários. Este subcomponente não possui a associação nativa ao formulário do orquestrador.
7741
+ * Consulte também as [diretrizes de design do GovBR](https://www.gov.br/ds/components/datetime?tab=designer).
7742
+ * @see https://www.gov.br/ds/components/datetime?tab=designer
7719
7743
  */
7720
7744
  interface HTMLBrDatetimeInputElement extends Components.BrDatetimeInput, HTMLStencilElement {
7721
7745
  addEventListener<K extends keyof HTMLBrDatetimeInputElementEventMap>(type: K, listener: (this: HTMLBrDatetimeInputElement, ev: BrDatetimeInputCustomEvent<HTMLBrDatetimeInputElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -7733,32 +7757,36 @@ declare global {
7733
7757
  };
7734
7758
  interface HTMLBrDatetimePickerElementEventMap {
7735
7759
  "dateStateChange": DatetimePickerDateState;
7760
+ "brDatetimePickerChange": DatetimePickerChangeDetail;
7736
7761
  "valueChange": Date | null;
7737
7762
  "brDatetimePickerValidationChange": FormValidationChangeDetail;
7738
7763
  }
7739
7764
  /**
7740
- * O componente `br-datetime-picker` é o orquestrador completo do GovBR-DS para seleção e digitação de datas, horários ou intervalos combinados. Ele integra-se nativamente a formulários HTML via `formAssociated` e oferece suporte WAI-ARIA para diálogos e calendários.
7765
+ * O `br-datetime-picker` é o controle completo do GovBR-DS para digitação e seleção visual de datas e horários. Orquestra o campo textual e os seletores internos, consolidando valor, validação e integração com formulários HTML.
7741
7766
  * ### Para que serve
7742
- * - **Seleção completa de data e horário:** Reúne em um único controle o campo de entrada com máscara formatada (`br-datetime-input`), o calendário de seleção de datas (`br-date-picker`) e o seletor de horários (`br-time-picker`).
7743
- * - **Múltiplos modos operacionais:** Suporta data simples, intervalo de datas (`range`), apenas hora (`time`), data e hora combinadas (`datetime`) e datas múltiplas.
7744
- * - **Validação e formulários nativos:** Valida datas mínimas (`min`), máximas (`max`), formatos permitidos e comunica valores estruturados diretamente ao formulário pai.
7767
+ * - Oferece os modos `date`, `time` e `datetime`, com seleção única (`single`) ou de intervalo (`range`).
7768
+ * - Combina edição textual com máscara, calendário e ajuste de horas e minutos conforme o modo escolhido.
7769
+ * - Centraliza restrições de seleção, validação e submissão do valor por meio de `formAssociated`.
7745
7770
  * ### Quando utilizar
7746
- * - **Utilize quando:**
7747
- * - O formulário exigir preenchimento de datas ou horários onde tanto a digitação manual rápida quanto a exploração visual no calendário agreguem valor à experiência.
7748
- * - For necessário selecionar um período com data de início e fim.
7749
- * - **Evite e prefira outro componente quando:**
7750
- * - A data for estritamente de nascimento ou emissão de documento onde a pessoa usuária sabe os dígitos de cor e prefere digitar apenas números (prefira `br-input` com máscara numérica).
7771
+ * - Utilize quando o formulário precisar de um controle completo de data ou horário com digitação e seleção visual.
7772
+ * - Utilize para períodos com início e fim, inclusive com horários nos modos `time` e `datetime`.
7773
+ * - Evite quando precisar apenas apresentar uma data: prefira texto formatado.
7774
+ * - Para um calendário permanentemente visível sem o campo textual, considere `br-date-picker`; a aplicação assume a integração com o restante do formulário.
7775
+ * - A seleção não oferece uma coleção de datas independentes: use `single` para um valor ou `range` para um intervalo.
7751
7776
  * ### Composição e Subcomponentes
7752
- * | Subcomponente | Papel | Regra de uso |
7777
+ * | Componente | Papel | Regra de uso |
7753
7778
  * | --- | --- | --- |
7754
- * | `br-datetime-picker` | **Orquestrador principal.** Gerencia valor consolidado, validação, abertura do popup e sincronização entre input e calendário. | Deve ser o único controle declarado no template da aplicação na quase totalidade dos casos. |
7755
- * | `br-datetime-input` | **Campo com máscara.** Exibe o valor formatado e permite digitação manual. | Coordenado automaticamente pelo pai; use avulso apenas em composições customizadas. |
7756
- * | `br-date-picker` | **Calendário de datas.** Painel visual com grade de dias, meses e anos. | Coordenado pelo pai; use avulso se precisar de calendário estático embutido. |
7757
- * | `br-time-picker` | **Seletor de horário.** Controle de escolha de horas e minutos. | Coordenado pelo pai; use avulso se precisar apenas de seletor de hora sem data. |
7779
+ * | `br-datetime-picker` | Orquestrador do valor consolidado, validação, formulário e abertura do painel. | Declare este controle no template para obter a composição completa. |
7780
+ * | `br-datetime-input` | Campo textual com máscara, interpretação da entrada e ação de abertura do painel. | Instanciado internamente pelo pai; não deve ser fornecido em slot. |
7781
+ * | `br-date-picker` | Calendário para navegação e seleção de data única ou intervalo. | Criado pelo pai nos modos `date` e `datetime`; pode ser usado isoladamente como calendário embutido. |
7782
+ * | `br-time-picker` | Controles de hora e minuto. | Criado pelo pai nos modos `time` e `datetime`, com uma instância por limite quando a seleção é `range`. |
7783
+ * O slot `feedback` recebe conteúdo declarativo de validação, normalmente um `br-message`; não substitui os seletores internos.
7758
7784
  * ### Como os subcomponentes se relacionam
7759
- * O `br-datetime-picker` funciona como o modelo pronto: ele instancia e sincroniza internamente o campo textual (`br-datetime-input`) e os seletores visuais suspensos (`br-date-picker` e/ou `br-time-picker`). A aplicação consome os eventos unificados emitidos diretamente pelo orquestrador pai (`change`, `input`).
7760
- * Para a documentação completa de design, incluindo diretrizes de acessibilidade e especificações visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
7761
- * @category Formulários, Seleção
7785
+ * O pai fornece valores e configurações aos filhos por propriedades e consolida suas alterações por eventos DOM. O campo textual solicita a abertura do painel; o calendário e os controles de horário atualizam a seleção compartilhada, sem coordenar diretamente uns aos outros.
7786
+ * `referenceDate` representa a referência de navegação visual, distinta da seleção efetiva. O orquestrador mantém o campo textual, os seletores e o valor de formulário sincronizados. A aplicação consome o valor e os eventos do pai, incluindo `brDatetimePickerChange` para a seleção completa e tipada.
7787
+ * O uso isolado dos filhos exige que a aplicação assuma a coordenação de estado, validação e formulário; eles não herdam a associação nativa ao formulário do `br-datetime-picker`.
7788
+ * 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/datetimepicker?tab=designer).
7789
+ * @category Formulários
7762
7790
  * @status stable
7763
7791
  */
7764
7792
  interface HTMLBrDatetimePickerElement extends Components.BrDatetimePicker, HTMLStencilElement {
@@ -8181,6 +8209,7 @@ declare global {
8181
8209
  interface HTMLBrInputElementEventMap {
8182
8210
  "valueChange": string;
8183
8211
  "brClear": void;
8212
+ "brInputActionClick": InputActionClickDetail;
8184
8213
  "brInputValidationChange": InputValidationChangeDetail;
8185
8214
  }
8186
8215
  /**
@@ -9027,6 +9056,17 @@ declare global {
9027
9056
  * - **Agrupamento de opções:** Organiza opções contíguas por categoria, preservando virtualização, busca local e semântica nativa de formulário.
9028
9057
  * - **Integração com formulários:** É associado a formulários nativos (`formAssociated`), comunicando seu valor, estado de validação (válido/inválido), mensagens de erro contextuais e eventos padrão (`change`, `input`).
9029
9058
  * - **Navegação acessível:** Suporta controle total via teclado (setas para cima/baixo, Enter, Escape, Home, End), foco gerenciado e anúncios para leitores de tela.
9059
+ * ### Navegação por teclado
9060
+ * O foco permanece no campo `combobox` enquanto a lista está aberta; a opção em destaque é comunicada por `aria-activedescendant`.
9061
+ * Ao receber foco, o campo abre a lista sem alterar a seleção atual.
9062
+ * - **ArrowDown / ArrowUp:** abre a lista e destaca a próxima opção na direção pressionada; com a lista aberta, move o destaque sem mover o foco físico.
9063
+ * - **Home / End:** em modo não filtrável, destaca a primeira ou a última opção habilitada; em modo filtrável, preserva o movimento do cursor no texto.
9064
+ * - **Enter:** abre a lista quando fechada e confirma a opção destacada quando aberta.
9065
+ * - **Espaço:** confirma a opção destacada em modo não filtrável; em modo filtrável, insere um espaço no campo de busca.
9066
+ * - **Escape:** fecha a lista, remove o destaque e devolve o foco ao campo.
9067
+ * - **Tab:** fecha a lista e deixa o navegador mover o foco para o próximo controle, sem alterar a seleção implicitamente.
9068
+ * - **Busca incremental:** em modo não filtrável, caracteres consecutivos destacam a primeira opção habilitada correspondente; em modo filtrável, a digitação filtra a lista.
9069
+ * - **Alt+ArrowDown / Alt+ArrowUp:** abre ou fecha a lista sem alterar a seleção.
9030
9070
  * ### Quando utilizar
9031
9071
  * - **Utilize quando:**
9032
9072
  * - O número de opções for moderado a grande (mais de 5 a 7 itens), onde listar todas diretamente na tela consumiria muito espaço visual.
@@ -9191,7 +9231,7 @@ declare global {
9191
9231
  * - O usuário já estiver autenticado e a intenção for apenas exibir o perfil (prefira `br-avatar`).
9192
9232
  * ### Estrutura e Slots
9193
9233
  * O `br-sign-in` é um botão de autenticação estilizado com a marca oficial do Governo Federal, recebendo propriedades de rótulo e variantes institucionais.
9194
- * Para a documentação completa de design, incluindo diretrizes de acessibilidade e especificações visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/sign-in?tab=designer).
9234
+ * Para a documentação completa de design, incluindo diretrizes de acessibilidade e especificações visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/signin?tab=designer).
9195
9235
  * @category Identidade, Ações, Formulários
9196
9236
  * @status stable
9197
9237
  */
@@ -9745,15 +9785,13 @@ declare global {
9745
9785
  "dateStateChange": DatetimePickerDateState;
9746
9786
  }
9747
9787
  /**
9748
- * Subcomponente de seleção de horários do GovBR-DS, desenvolvido para permitir a escolha intuitiva de horas e minutos.
9788
+ * O `br-time-picker` é o subcomponente de ajuste de horas e minutos do `br-datetime-picker`.
9749
9789
  * ### Papel na composição
9750
- * - Apresenta colunas ou controles de incremento/decremento para seleção de horas e minutos com validação de limites.
9751
- * - Sincroniza o horário escolhido com o campo textual associado.
9790
+ * Oferece campos textuais e botões de incremento e decremento para hora e minuto. Usa uma data de referência e comunica alterações por `dateStateChange`; não coordena diretamente o calendário nem o campo textual principal.
9752
9791
  * ### Regra de uso e relacionamento
9753
- * Coordenado pelo componente pai `br-datetime-picker` no modo de horário ou composto. Pode ser utilizado avulso quando a aplicação demandar exclusivamente a captura de hora sem necessidade de calendário de datas.
9754
- * Para a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
9755
- * @category Formulários, Seleção
9756
- * @status stable
9792
+ * O `br-datetime-picker` instancia e sincroniza este seletor nos modos `time` e `datetime`. Na seleção de intervalo, o pai cria dois seletores, um para o início e outro para o fim, e consolida os respectivos valores. Não forneça seletores de horário em slots do pai.
9793
+ * Prefira o orquestrador para um controle completo de horário com campo textual e formulário. Use diretamente apenas quando precisar dos controles de hora e minuto em uma composição personalizada e assumir a sincronização de estado, a validação e a integração com formulários. O uso isolado não herda a associação nativa ao formulário do pai.
9794
+ * Consulte também as [diretrizes de design do GovBR](https://www.gov.br/ds/components/time-picker?tab=designer).
9757
9795
  */
9758
9796
  interface HTMLBrTimePickerElement extends Components.BrTimePicker, HTMLStencilElement {
9759
9797
  addEventListener<K extends keyof HTMLBrTimePickerElementEventMap>(type: K, listener: (this: HTMLBrTimePickerElement, ev: BrTimePickerCustomEvent<HTMLBrTimePickerElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -10318,7 +10356,7 @@ declare namespace LocalJSX {
10318
10356
  */
10319
10357
  "shape"?: ButtonShape;
10320
10358
  /**
10321
- * Define o tipo de botão, especificando seu comportamento padrão. Valores inválidos usam `button`.
10359
+ * Define o tipo de botão, especificando seu comportamento padrão. Quando omitido, usa `button`; valores inválidos também usam `button` e geram aviso no console.
10322
10360
  */
10323
10361
  "type"?: ButtonType;
10324
10362
  /**
@@ -10799,12 +10837,12 @@ declare namespace LocalJSX {
10799
10837
  */
10800
10838
  "iconPosition"?: CollapseIconPosition;
10801
10839
  /**
10802
- * Identificador do ícone exibido quando o conteúdo está visível. O valor padrão usa o registro SVG local.
10840
+ * 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`.
10803
10841
  * @default 'fa6-solid:chevron-up'
10804
10842
  */
10805
10843
  "iconToHide"?: string;
10806
10844
  /**
10807
- * Identificador do ícone exibido quando o conteúdo está oculto. O valor padrão usa o registro SVG local.
10845
+ * 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`.
10808
10846
  * @default 'fa6-solid:chevron-down'
10809
10847
  */
10810
10848
  "iconToShow"?: string;
@@ -11354,40 +11392,42 @@ declare namespace LocalJSX {
11354
11392
  "target"?: string;
11355
11393
  }
11356
11394
  /**
11357
- * Subcomponente de calendário visual do GovBR-DS, projetado para seleção interativa de datas individuais ou intervalos.
11395
+ * O `br-date-picker` é o subcomponente de calendário do `br-datetime-picker`, responsável pela seleção visual de uma data ou de um intervalo.
11358
11396
  * ### Papel na composição
11359
- * - Exibe a grade mensal navegável com suporte a seleção de dia, navegação entre meses e anos, e destaque para a data atual e intervalos.
11360
- * - Implementa navegação acessível por teclado WAI-ARIA Grid (setas direcionais para dias e semanas).
11397
+ * Exibe a grade mensal, a navegação entre meses e anos e os estados de seleção e bloqueio dos dias. `referenceDate` determina o período exibido, enquanto `value` e os limites do intervalo representam a seleção.
11361
11398
  * ### Regra de uso e relacionamento
11362
- * Geralmente exibido dentro da superfície suspensa coordenada pelo `br-datetime-picker`. Pode ser declarado isoladamente quando a interface demandar um calendário estático permanentemente embutido na página (inline calendar).
11363
- * Para a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
11364
- * @category Formulários, Seleção
11365
- * @status stable
11399
+ * O `br-datetime-picker` instancia e configura este calendário internamente nos modos `date` e `datetime`, recebendo suas alterações pelo evento `dateStateChange`. Não declare o calendário em um slot do pai.
11400
+ * Use diretamente quando precisar de um calendário embutido e permanentemente visível. Nesse caso, a aplicação deve coordenar valores e eventos e implementar a integração com formulários e a validação do fluxo completo. O calendário isolado não fornece o campo textual, o seletor de horários nem a associação ao formulário do orquestrador.
11401
+ * 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/date-picker?tab=designer).
11366
11402
  */
11367
11403
  interface BrDatePicker {
11368
11404
  /**
11369
- * Desabilita a interação do calendário quando ativo.
11405
+ * Desabilita a interação do calendário quando `true`.
11370
11406
  * @default false
11371
11407
  */
11372
11408
  "disabled"?: boolean;
11373
11409
  /**
11374
- * Lista de datas indisponíveis para seleção no calendário. Recebe instâncias de `Date` por property binding; datas inválidas são ignoradas.
11375
- * @example ```js const calendar = document.querySelector('br-date-picker'); calendar.disabledDates = [new Date(2026, 8, 7), new Date(2026, 8, 8)]; ```
11410
+ * Lista de datas indisponíveis para seleção no calendário.
11376
11411
  * @default []
11377
11412
  */
11378
11413
  "disabledDates"?: Date[];
11379
11414
  /**
11380
- * Define se o calendário deve manter um número fixo de linhas (6 semanas = 42 dias) ou variar conforme o mês. Quando `true`, o calendário sempre exibe 6 semanas completas. Quando `false`, o calendário adapta-se ao mês, exibindo apenas as semanas necessárias.
11415
+ * Se `true`, o calendário sempre exibe 6 semanas (42 dias); caso contrário, adapta-se ao mês.
11381
11416
  * @default false
11382
11417
  */
11383
11418
  "fixedRowCount"?: boolean;
11384
11419
  /**
11385
11420
  * Locale usado para gerar nomes de meses e dias da semana.
11386
- * @default 'pt-BR'
11421
+ * @default DATETIME_PICKER_LOCALE.DEFAULT
11387
11422
  */
11388
11423
  "locale"?: string;
11389
11424
  /**
11390
- * Evento emitido quando a data de referência ou a seleção mudam.
11425
+ * Emite o estado consolidado do componente quando há mudança de referência/seleção. Payload (DatetimePickerDateState):
11426
+ * @property {Date} referenceDate - Data de referência atual do calendário (segundos/milissegundos zerados).
11427
+ * @property {(Date|null)} value - Data selecionada ou `null` quando nenhuma seleção.
11428
+ * @property {{start: Date, end: (Date|null)}=} range - Intervalo selecionado quando `selectionMode === 'range'`. Consumidores usam este evento para sincronizar UI externas e integração com formulários.
11429
+ * @event dateStateChange
11430
+ * @type {EventEmitter<DatetimePickerDateState>}
11391
11431
  */
11392
11432
  "onDateStateChange"?: (event: BrDatePickerCustomEvent<DatetimePickerDateState>) => void;
11393
11433
  /**
@@ -11401,141 +11441,148 @@ declare namespace LocalJSX {
11401
11441
  */
11402
11442
  "rangeStart"?: Date | null;
11403
11443
  /**
11404
- * Intervalo controlado no modo `range`, reunindo `rangeStart` e `rangeEnd` em uma atualização. Deve conter datas válidas ou `null`; valores inválidos são ignorados. Passe o objeto por property binding.
11405
- * @example ```js const calendar = document.querySelector('br-date-picker'); calendar.selectionMode = 'range'; calendar.rangeValue = { start: new Date(2026, 8, 7), end: new Date(2026, 8, 12) }; ```
11444
+ * Intervalo controlado no modo `range`. Quando definido, mantém `rangeStart` e `rangeEnd` sincronizados.
11445
+ * @default undefined
11406
11446
  */
11407
11447
  "rangeValue"?: DatetimePickerDateRange;
11408
11448
  /**
11409
- * Data usada como base visual para o mês atualmente exibido, sem alterar a seleção. Recebe uma instância de `Date` por property binding; valores inválidos usam a data atual.
11410
- * @example ```js const calendar = document.querySelector('br-date-picker'); calendar.referenceDate = new Date(2026, 8, 1); ```
11449
+ * Data usada como base visual para o mês atualmente exibido.
11411
11450
  * @default new Date()
11412
11451
  */
11413
11452
  "referenceDate"?: Date;
11414
11453
  /**
11415
- * Define se a seleção ocorre por data única ou por intervalo. Valores inválidos usam `single`.
11454
+ * Define se a seleção ocorre por data única ou por intervalo.
11416
11455
  * @default 'single'
11417
11456
  */
11418
11457
  "selectionMode"?: DatetimePickerSelectionMode;
11419
11458
  /**
11420
- * Data efetivamente selecionada, ou `null` quando não há seleção; é diferente de `referenceDate`, que controla apenas o mês visível. Recebe uma instância de `Date` por property binding; datas inválidas usam `null`.
11421
- * @example ```js const calendar = document.querySelector('br-date-picker'); calendar.value = new Date(2026, 8, 7); ```
11459
+ * Data atualmente selecionada pelo usuário, ou `null` quando não há seleção.
11422
11460
  * @default null
11423
11461
  */
11424
11462
  "value"?: Date | null;
11425
11463
  /**
11426
- * Define o índice do dia em que a semana começa na interface do calendário.
11464
+ * Índice do dia em que a semana começa na interface do calendário.
11427
11465
  * @default 0
11428
11466
  */
11429
11467
  "weekStartsOn"?: WeekDayIndex;
11430
11468
  }
11431
11469
  /**
11432
- * Subcomponente especializado do ecossistema de datas do GovBR-DS, responsável pela digitação e formatação de datas e horários via teclado.
11470
+ * O `br-datetime-input` é o subcomponente de edição textual do `br-datetime-picker`, com máscara, interpretação de datas e horários e validação local sobre um `br-input` interno.
11433
11471
  * ### Papel na composição
11434
- * - Aplica máscaras automáticas de digitação conforme o formato configurado (ex.: `DD/MM/AAAA`, `HH:mm`, `DD/MM/AAAA HH:mm`).
11435
- * - Contém o botão de acionamento para expandir ou recolher o popup do calendário.
11472
+ * Exibe e permite editar a seleção única ou os limites de um intervalo nos modos `date`, `time` e `datetime`. Comunica alterações por `dateStateChange`, informa a validação local por `inputValidationChange` e solicita a abertura ou o fechamento do painel por `togglePicker`.
11436
11473
  * ### Regra de uso e relacionamento
11437
- * No fluxo usual da aplicação, é instanciado e coordenado automaticamente pelo orquestrador `br-datetime-picker`. Pode ser utilizado de forma autônoma apenas quando o leiaute exigir somente o campo de digitação textual sem o painel flutuante de calendário.
11438
- * Para a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
11439
- * @category Formulários, Seleção
11440
- * @status stable
11474
+ * O `br-datetime-picker` instancia este campo internamente e fornece valores e configurações por propriedades. O pai coordena a seleção com o calendário e os controles de horário; o campo não abre esses seletores por conta própria nem deve ser fornecido em slot.
11475
+ * Prefira o `br-datetime-picker` para o controle completo. Use o campo isoladamente apenas em composições personalizadas nas quais a aplicação assuma a sincronização de estado, o tratamento dos eventos e a integração com formulários. Este subcomponente não possui a associação nativa ao formulário do orquestrador.
11476
+ * Consulte também as [diretrizes de design do GovBR](https://www.gov.br/ds/components/datetime?tab=designer).
11477
+ * @see https://www.gov.br/ds/components/datetime?tab=designer
11441
11478
  */
11442
11479
  interface BrDatetimeInput {
11443
11480
  /**
11444
- * Desabilita digitação e abertura do picker quando ativo.
11481
+ * Controla os estados de read-only ou bloqueio de formulário.
11445
11482
  * @default false
11446
11483
  */
11447
11484
  "disabled"?: boolean;
11448
11485
  /**
11449
- * Define o modo de entrada: `date`, `time` ou `datetime`.
11486
+ * Modo de entrada que controla máscara, parser e formato exibido.
11450
11487
  * @default 'datetime'
11451
11488
  */
11452
11489
  "mode"?: DatetimePickerMode;
11453
11490
  /**
11454
- * Emite quando o valor é alterado via input ou parsing.
11491
+ * Evento emitido quando o estado de data/hora muda (após commit ou parsing). Payload (`detail`):
11492
+ * @property {Date} referenceDate - Data de referência usada na navegação.
11493
+ * @property {Date|null} value - Valor selecionado ou `null`.
11494
+ * @property {DatetimePickerDateRange} [range] - Intervalo quando `selectionMode === 'range'`.
11455
11495
  */
11456
11496
  "onDateStateChange"?: (event: BrDatetimeInputCustomEvent<DatetimePickerDateState>) => void;
11457
11497
  /**
11458
- * Solicita ao componente pai a alternância da abertura do picker.
11498
+ * Emite validação do texto digitado sem alterar o valor selecionado. Payload (`detail`):
11499
+ * @property {boolean|null} valid - Indica se o texto é considerado válido (`null` enquanto edição).
11500
+ * @property {string} message - Mensagem de erro explicativa (vazia quando válido).
11501
+ * @property {string} [origin] - Identificador explícito da origem do evento
11502
+ */
11503
+ "onInputValidationChange"?: (event: BrDatetimeInputCustomEvent<{ valid: boolean | null; message: string; origin?: string }>) => void;
11504
+ /**
11505
+ * Emite uma solicitação ao componente pai para alternar a abertura do picker. Emite sem payload.
11506
+ * @event togglePicker
11459
11507
  */
11460
11508
  "onTogglePicker"?: (event: BrDatetimeInputCustomEvent<void>) => void;
11461
11509
  /**
11462
- * Define o placeholder do campo de entrada.
11510
+ * Texto de placeholder exibido quando o campo estiver vazio.
11463
11511
  * @default ''
11464
11512
  */
11465
11513
  "placeholder"?: string;
11466
11514
  /**
11467
- * Data final do intervalo quando em modo range.
11515
+ * Fim do intervalo em `selectionMode === 'range'`.
11468
11516
  * @default null
11469
11517
  */
11470
11518
  "rangeEnd"?: Date | null;
11471
11519
  /**
11472
- * Data inicial do intervalo quando em modo range.
11520
+ * Início do intervalo em `selectionMode === 'range'`.
11473
11521
  * @default null
11474
11522
  */
11475
11523
  "rangeStart"?: Date | null;
11476
11524
  /**
11477
- * Intervalo controlado no modo `range`, reunindo `rangeStart` e `rangeEnd` em uma atualização. Deve conter datas válidas ou `null`; valores inválidos são ignorados. Passe o objeto por property binding.
11478
- * @example ```js const input = document.querySelector('br-datetime-input'); input.selectionMode = 'range'; input.rangeValue = { start: new Date(2026, 8, 7), end: new Date(2026, 8, 12) }; ```
11525
+ * Intervalo controlado no modo `range` como objeto `{ start, end }`.
11526
+ * @type {DatetimePickerDateRange | undefined}
11479
11527
  */
11480
11528
  "rangeValue"?: DatetimePickerDateRange;
11481
11529
  /**
11482
- * Data de referência que orienta a navegação visual do calendário sem alterar a seleção. Recebe uma instância de `Date` por property binding.
11530
+ * Data de referência usada para navegação e preenchimento de valores parciais.
11483
11531
  * @default new Date()
11484
- * @example ```js const input = document.querySelector('br-datetime-input'); input.referenceDate = new Date(2026, 8, 1); ```
11485
11532
  */
11486
11533
  "referenceDate"?: Date;
11487
11534
  /**
11488
- * Define se a seleção ocorre por data única ou por intervalo. Aceita `single` ou `range`; valores inválidos usam `single`.
11535
+ * Define o modo de seleção: `single` (valor único) ou `range` (intervalo).
11489
11536
  * @default 'single'
11490
11537
  */
11491
11538
  "selectionMode"?: DatetimePickerSelectionMode;
11492
11539
  /**
11493
- * Data efetivamente selecionada, ou `null` quando nada foi escolhido; é diferente de `referenceDate`, que controla apenas a referência visual. Recebe uma instância de `Date` por property binding.
11540
+ * Valor atualmente selecionado pelo componente.
11494
11541
  * @default null
11495
- * @example ```js const input = document.querySelector('br-datetime-input'); input.value = new Date(2026, 8, 7, 14, 30); ```
11496
11542
  */
11497
11543
  "value"?: Date | null;
11498
11544
  }
11499
11545
  /**
11500
- * O componente `br-datetime-picker` é o orquestrador completo do GovBR-DS para seleção e digitação de datas, horários ou intervalos combinados. Ele integra-se nativamente a formulários HTML via `formAssociated` e oferece suporte WAI-ARIA para diálogos e calendários.
11546
+ * O `br-datetime-picker` é o controle completo do GovBR-DS para digitação e seleção visual de datas e horários. Orquestra o campo textual e os seletores internos, consolidando valor, validação e integração com formulários HTML.
11501
11547
  * ### Para que serve
11502
- * - **Seleção completa de data e horário:** Reúne em um único controle o campo de entrada com máscara formatada (`br-datetime-input`), o calendário de seleção de datas (`br-date-picker`) e o seletor de horários (`br-time-picker`).
11503
- * - **Múltiplos modos operacionais:** Suporta data simples, intervalo de datas (`range`), apenas hora (`time`), data e hora combinadas (`datetime`) e datas múltiplas.
11504
- * - **Validação e formulários nativos:** Valida datas mínimas (`min`), máximas (`max`), formatos permitidos e comunica valores estruturados diretamente ao formulário pai.
11548
+ * - Oferece os modos `date`, `time` e `datetime`, com seleção única (`single`) ou de intervalo (`range`).
11549
+ * - Combina edição textual com máscara, calendário e ajuste de horas e minutos conforme o modo escolhido.
11550
+ * - Centraliza restrições de seleção, validação e submissão do valor por meio de `formAssociated`.
11505
11551
  * ### Quando utilizar
11506
- * - **Utilize quando:**
11507
- * - O formulário exigir preenchimento de datas ou horários onde tanto a digitação manual rápida quanto a exploração visual no calendário agreguem valor à experiência.
11508
- * - For necessário selecionar um período com data de início e fim.
11509
- * - **Evite e prefira outro componente quando:**
11510
- * - A data for estritamente de nascimento ou emissão de documento onde a pessoa usuária sabe os dígitos de cor e prefere digitar apenas números (prefira `br-input` com máscara numérica).
11552
+ * - Utilize quando o formulário precisar de um controle completo de data ou horário com digitação e seleção visual.
11553
+ * - Utilize para períodos com início e fim, inclusive com horários nos modos `time` e `datetime`.
11554
+ * - Evite quando precisar apenas apresentar uma data: prefira texto formatado.
11555
+ * - Para um calendário permanentemente visível sem o campo textual, considere `br-date-picker`; a aplicação assume a integração com o restante do formulário.
11556
+ * - A seleção não oferece uma coleção de datas independentes: use `single` para um valor ou `range` para um intervalo.
11511
11557
  * ### Composição e Subcomponentes
11512
- * | Subcomponente | Papel | Regra de uso |
11558
+ * | Componente | Papel | Regra de uso |
11513
11559
  * | --- | --- | --- |
11514
- * | `br-datetime-picker` | **Orquestrador principal.** Gerencia valor consolidado, validação, abertura do popup e sincronização entre input e calendário. | Deve ser o único controle declarado no template da aplicação na quase totalidade dos casos. |
11515
- * | `br-datetime-input` | **Campo com máscara.** Exibe o valor formatado e permite digitação manual. | Coordenado automaticamente pelo pai; use avulso apenas em composições customizadas. |
11516
- * | `br-date-picker` | **Calendário de datas.** Painel visual com grade de dias, meses e anos. | Coordenado pelo pai; use avulso se precisar de calendário estático embutido. |
11517
- * | `br-time-picker` | **Seletor de horário.** Controle de escolha de horas e minutos. | Coordenado pelo pai; use avulso se precisar apenas de seletor de hora sem data. |
11560
+ * | `br-datetime-picker` | Orquestrador do valor consolidado, validação, formulário e abertura do painel. | Declare este controle no template para obter a composição completa. |
11561
+ * | `br-datetime-input` | Campo textual com máscara, interpretação da entrada e ação de abertura do painel. | Instanciado internamente pelo pai; não deve ser fornecido em slot. |
11562
+ * | `br-date-picker` | Calendário para navegação e seleção de data única ou intervalo. | Criado pelo pai nos modos `date` e `datetime`; pode ser usado isoladamente como calendário embutido. |
11563
+ * | `br-time-picker` | Controles de hora e minuto. | Criado pelo pai nos modos `time` e `datetime`, com uma instância por limite quando a seleção é `range`. |
11564
+ * O slot `feedback` recebe conteúdo declarativo de validação, normalmente um `br-message`; não substitui os seletores internos.
11518
11565
  * ### Como os subcomponentes se relacionam
11519
- * O `br-datetime-picker` funciona como o modelo pronto: ele instancia e sincroniza internamente o campo textual (`br-datetime-input`) e os seletores visuais suspensos (`br-date-picker` e/ou `br-time-picker`). A aplicação consome os eventos unificados emitidos diretamente pelo orquestrador pai (`change`, `input`).
11520
- * Para a documentação completa de design, incluindo diretrizes de acessibilidade e especificações visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
11521
- * @category Formulários, Seleção
11566
+ * O pai fornece valores e configurações aos filhos por propriedades e consolida suas alterações por eventos DOM. O campo textual solicita a abertura do painel; o calendário e os controles de horário atualizam a seleção compartilhada, sem coordenar diretamente uns aos outros.
11567
+ * `referenceDate` representa a referência de navegação visual, distinta da seleção efetiva. O orquestrador mantém o campo textual, os seletores e o valor de formulário sincronizados. A aplicação consome o valor e os eventos do pai, incluindo `brDatetimePickerChange` para a seleção completa e tipada.
11568
+ * O uso isolado dos filhos exige que a aplicação assuma a coordenação de estado, validação e formulário; eles não herdam a associação nativa ao formulário do `br-datetime-picker`.
11569
+ * 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/datetimepicker?tab=designer).
11570
+ * @category Formulários
11522
11571
  * @status stable
11523
11572
  */
11524
11573
  interface BrDatetimePicker {
11525
11574
  /**
11526
- * Desabilita toda a interação do componente. Quando `true`, impede abrir o picker, alterar valores e navegar entre datas/horários.
11575
+ * Desabilita toda a interação do componente.
11527
11576
  * @default false
11528
11577
  */
11529
11578
  "disabled"?: boolean;
11530
11579
  /**
11531
- * Define um conjunto de datas indisponíveis para seleção. Aceita uma lista de `Date` e/ou strings analisáveis, ou uma string com datas separadas por espaço em branco. Datas inválidas são ignoradas com warning. A comparação considera apenas o dia (ano/mês/dia), ignorando hora.
11580
+ * Datas indisponíveis para seleção. Aceita `Date[]`, `string` ou `null`. Datas inválidas são ignoradas. A comparação considera apenas o dia.
11532
11581
  * @default null
11533
- * @example ```html <br-datetime-picker mode="date" disabled-dates="2026-09-07 2026-09-08"></br-datetime-picker> ```
11534
- * @example ```js const picker = document.querySelector('br-datetime-picker'); picker.disabledDates = [new Date(2026, 8, 7), '2026-09-08']; ```
11535
11582
  */
11536
11583
  "disabledDates"?: DatetimePickerDisabledDates;
11537
11584
  /**
11538
- * Define se o calendário deve manter um número fixo de linhas (6 semanas = 42 dias) ou variar conforme o mês. Quando `true`, o calendário sempre exibe 6 semanas completas. Quando `false`, o calendário adapta-se ao mês, exibindo apenas as semanas necessárias.
11585
+ * Mantém número fixo de linhas no calendário (6 semanas) quando `true`.
11539
11586
  * @default false
11540
11587
  */
11541
11588
  "fixedRowCount"?: boolean;
@@ -11544,30 +11591,27 @@ declare namespace LocalJSX {
11544
11591
  */
11545
11592
  "form"?: string;
11546
11593
  /**
11547
- * Define a seleção inicial do componente. Aceita: - `'now'`: seleciona o momento atual. - `Date` ou `string`: seleciona uma data arbitrária. - `null`: inicia sem seleção. Reativo em runtime: mudanças na prop atualizam estado e subcomponentes.
11594
+ * Valor inicial da seleção: `'now' | Date | string | null`.
11548
11595
  * @default null
11549
- * @example ```html <br-datetime-picker initial-moment="now"></br-datetime-picker> ```
11550
11596
  */
11551
11597
  "initialMoment"?: DatetimePickerInitialMoment;
11552
11598
  /**
11553
- * Define o locale usado pelos subcomponentes para formatar datas e rótulos.
11599
+ * Locale usado para formatação e rótulos.
11554
11600
  * @default 'pt-BR'
11555
11601
  */
11556
11602
  "locale"?: DatetimePickerLocale;
11557
11603
  /**
11558
- * Maior data/horário aceito, interpretado conforme `mode`. Valores inválidos são ignorados. Aceita texto no atributo HTML ou uma instância de `Date` por property binding.
11559
- * @example ```html <br-datetime-picker mode="date" max="2026-12-31"></br-datetime-picker> ```
11604
+ * Maior data/hora aceito (Date | string | null).
11560
11605
  * @default null
11561
11606
  */
11562
11607
  "max"?: Date | string | null;
11563
11608
  /**
11564
- * Menor data/horário aceito, interpretado conforme `mode`. Valores inválidos são ignorados. Aceita texto no atributo HTML ou uma instância de `Date` por property binding.
11565
- * @example ```html <br-datetime-picker mode="date" min="2026-01-01"></br-datetime-picker> ```
11609
+ * Menor data/hora aceito (Date | string | null).
11566
11610
  * @default null
11567
11611
  */
11568
11612
  "min"?: Date | string | null;
11569
11613
  /**
11570
- * Define o modo de seleção exibido pelo componente: data, horário ou ambos. Valores aceitos: `date`, `time` ou `datetime`. Valores inválidos são corrigidos automaticamente para o valor padrão, mantendo o atributo refletido sempre consistente com o modo exibido.
11614
+ * Modo exibido pelo componente. Valores: `date` | `time` | `datetime`. Valores inválidos são normalizados para o padrão.
11571
11615
  * @default 'datetime'
11572
11616
  */
11573
11617
  "mode"?: DatetimePickerMode;
@@ -11577,61 +11621,67 @@ declare namespace LocalJSX {
11577
11621
  */
11578
11622
  "name"?: string;
11579
11623
  /**
11580
- * Emitido ao iniciar e concluir a validação customizada.
11624
+ * Evento público canônico emitido quando a seleção muda. Payload (`DatetimePickerChangeDetail`): - `mode`: DatetimePickerMode — modo atual do componente (`date` | `time` | `datetime`). - `selectionMode`: DatetimePickerSelectionMode — `single` ou `range`. - `value`: Date | null | DatetimePickerDateRange — seleção atual (tipo depende de `selectionMode`). - `serializedValue`: string | undefined — representação serializada para integração com formulários.
11625
+ * @event brDatetimePickerChange
11626
+ * @type {CustomEvent<DatetimePickerChangeDetail>}
11627
+ */
11628
+ "onBrDatetimePickerChange"?: (event: BrDatetimePickerCustomEvent<DatetimePickerChangeDetail>) => void;
11629
+ /**
11630
+ * Emitido ao iniciar e concluir a validação customizada. Payload (`FormValidationChangeDetail`): - `validating`: boolean — indica se a validação está em execução. - `valid`: boolean | null — resultado da validação (`null` enquanto valida). - `message`: string | null — mensagem de validação associada.
11631
+ * @event brDatetimePickerValidationChange
11632
+ * @type {CustomEvent<FormValidationChangeDetail>}
11581
11633
  */
11582
11634
  "onBrDatetimePickerValidationChange"?: (event: BrDatetimePickerCustomEvent<FormValidationChangeDetail>) => void;
11583
11635
  /**
11584
- * Evento público emitido quando a data de referência ou a seleção mudam.
11636
+ * Evento público emitido quando a data de referência ou a seleção mudam. Payload (`DatetimePickerDateState`): - `referenceDate`: Date — data usada para navegação visual (mês/semana exibidos). - `value`: Date | null — valor selecionado atualmente.
11637
+ * @event dateStateChange
11638
+ * @type {CustomEvent<DatetimePickerDateState>}
11585
11639
  */
11586
11640
  "onDateStateChange"?: (event: BrDatetimePickerCustomEvent<DatetimePickerDateState>) => void;
11587
11641
  /**
11588
11642
  * Evento emitido quando o valor selecionado muda.
11589
- * @deprecated Use `input`/`change` e leia `event.target.value`.
11643
+ * @deprecated Use `brDatetimePickerChange` para receber a seleção completa e tipada. Payload (legacy): `Date | null` — valor selecionado.
11644
+ * @event valueChange
11645
+ * @type {CustomEvent<Date | null>}
11590
11646
  */
11591
11647
  "onValueChange"?: (event: BrDatetimePickerCustomEvent<Date | null>) => void;
11592
11648
  /**
11593
- * Define o placeholder exibido no campo de entrada do datetime picker.
11649
+ * Texto placeholder exibido no input.
11594
11650
  * @default ''
11595
11651
  */
11596
11652
  "placeholder"?: string;
11597
11653
  /**
11598
- * Intervalo controlado quando `selectionMode="range"`. Deve conter datas válidas ou `null` em `start` e `end`; valores inválidos mantêm o último intervalo efetivo. Passe o objeto por property binding; atributos HTML não representam objetos com `Date`.
11599
- * @example ```js const picker = document.querySelector('br-datetime-picker'); picker.selectionMode = 'range'; picker.rangeValue = { start: new Date(2026, 8, 7), end: new Date(2026, 8, 12), }; ```
11654
+ * Intervalo controlado quando `selectionMode="range"`. Em `datetime`, preserva as datas e horários informados; término anterior ao início torna o controle inválido, sem reordenar ou avançar datas.
11655
+ * @default undefined
11600
11656
  */
11601
11657
  "rangeValue"?: DatetimePickerDateRange;
11602
11658
  /**
11603
- * Indica se o campo deve ter valor antes do envio do formulário.
11659
+ * Indica se o campo é requerido para submissão do formulário.
11604
11660
  * @default false
11605
11661
  */
11606
11662
  "required"?: boolean;
11607
11663
  /**
11608
- * Define o tipo de seleção de datas para o calendário: única ou intervalo. `range` só funciona em conjunto com `mode="date"`. Se `selectionMode="range"` for informado, o componente ajusta automaticamente `mode` para `date`. Se `mode` mudar para `time` ou `datetime`, o componente normaliza `selectionMode` para `single` quando necessário. Valores inválidos usam `single`.
11664
+ * Tipo de seleção: `single` ou `range`.
11609
11665
  * @default 'single'
11610
11666
  */
11611
11667
  "selectionMode"?: DatetimePickerSelectionMode;
11612
11668
  /**
11613
- * Representação serializada compatível com os formatos de controles HTML (`YYYY-MM-DD`, `HH:mm` ou ISO local, conforme `mode`). Em intervalos, usa `início/fim`. Na inicialização, tem precedência sobre `valueAsDate`, `value` e `initialMoment`. Uma string vazia inicia sem seleção, mesmo quando outra prop fornece uma data.
11614
- * @example ```html <br-datetime-picker mode="datetime" serialized-value="2026-09-07T14:30"></br-datetime-picker> ```
11669
+ * Representação serializada compatível com controles HTML. Formatos variam conforme `mode`. Em intervalos, usa `início/fim`.
11670
+ * @default undefined
11615
11671
  */
11616
11672
  "serializedValue"?: string;
11617
11673
  /**
11618
- * Regra síncrona ou assíncrona aplicada à data ou intervalo selecionado. Retorne uma mensagem para invalidar ou `null` para aceitar o valor.
11619
- * @example ```js const picker = document.querySelector('br-datetime-picker'); picker.validator = (value) => value === null ? 'Escolha uma data' : null; ```
11674
+ * Validador customizado (síncrono ou assíncrono) para a seleção. Recebe `Date | DatetimePickerDateRange | null` como valor.
11675
+ * @default undefined
11620
11676
  */
11621
11677
  "validator"?: DatetimePickerValidator;
11622
11678
  /**
11623
- * Instância de `Date` selecionada pelo usuário no modo simples. Pode ser controlada por property binding e é atualizada pelo evento `valueChange`. Para formulários e atributos textuais, use `serializedValue`.
11624
- * @example ```js const picker = document.querySelector('br-datetime-picker'); picker.value = new Date(2026, 8, 7, 14, 30); ```
11679
+ * Valor selecionado pelo usuário (Date | null). Pode ser controlado externamente e é refletido internamente.
11625
11680
  * @default null
11626
11681
  */
11627
11682
  "value"?: Date | null;
11628
11683
  /**
11629
- * Espelho tipado da seleção atual, equivalente ao padrão `valueAsDate` dos controles HTML. Diferentemente de `serializedValue`, recebe e retorna uma instância de `Date`. Na inicialização, tem precedência sobre `value` e `initialMoment` quando `serializedValue` não é informado. `null` inicia sem seleção; `undefined` permite usar as outras props.
11630
- * @example ```js const picker = document.querySelector('br-datetime-picker'); picker.valueAsDate = new Date(2026, 8, 7); ```
11631
- */
11632
- "valueAsDate"?: Date | null;
11633
- /**
11634
- * Define o dia inicial da semana exibida no calendário. Valores suportados: 0 (domingo) a 6 (sábado).
11684
+ * Dia inicial da semana exibido no calendário (0 = Dom, 6 = Sáb).
11635
11685
  * @default 0
11636
11686
  */
11637
11687
  "weekStartsOn"?: DatetimePickerWeekDayIndex;
@@ -12568,6 +12618,10 @@ declare namespace LocalJSX {
12568
12618
  * Emitted when the input clear button action is triggered.
12569
12619
  */
12570
12620
  "onBrClear"?: (event: BrInputCustomEvent<void>) => void;
12621
+ /**
12622
+ * Notifica a ativação do botão do slot `action` por clique ou teclado. Emitido no host com `detail.originalEvent` contendo o clique original. Propaga e atravessa Shadow DOM; não é cancelável nem altera o clique nativo. Não emite para o campo textual, botão de senha, inicialização ou controle desabilitado.
12623
+ */
12624
+ "onBrInputActionClick"?: (event: BrInputCustomEvent<InputActionClickDetail>) => void;
12571
12625
  /**
12572
12626
  * Informa o início e o resultado do validator, inclusive quando ele consulta um serviço remoto. O `detail` contém `validating`, `valid` e `message`; escrita programática e reset não representam interação do usuário.
12573
12627
  */
@@ -12646,7 +12700,7 @@ declare namespace LocalJSX {
12646
12700
  */
12647
12701
  "active"?: boolean;
12648
12702
  /**
12649
- * Renderiza o item como botão. Quando informado, tem precedência sobre `isButton`.
12703
+ * Renderiza o item como botão de alternância: o acionamento alterna `selected`, emite `brItemSelect` e expõe o estado em `aria-pressed`. Para uma ação sem estado (ex.: "Sair"), use `href` com `navigation-mode="event"` ou um `br-button`. Quando informado, tem precedência sobre `isButton`.
12650
12704
  */
12651
12705
  "button"?: boolean;
12652
12706
  /**
@@ -13125,7 +13179,7 @@ declare namespace LocalJSX {
13125
13179
  */
13126
13180
  "density"?: BrDensity;
13127
13181
  /**
13128
- * Identificador legado do ícone a ser exibido. Nomes simples (por exemplo, `question`) são resolvidos pelo registro SVG local. Para classes CSS ou SVGs personalizados, prefira o slot `icon`.
13182
+ * Í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.
13129
13183
  * @default ''
13130
13184
  */
13131
13185
  "icon"?: string;
@@ -14397,6 +14451,17 @@ declare namespace LocalJSX {
14397
14451
  * - **Agrupamento de opções:** Organiza opções contíguas por categoria, preservando virtualização, busca local e semântica nativa de formulário.
14398
14452
  * - **Integração com formulários:** É associado a formulários nativos (`formAssociated`), comunicando seu valor, estado de validação (válido/inválido), mensagens de erro contextuais e eventos padrão (`change`, `input`).
14399
14453
  * - **Navegação acessível:** Suporta controle total via teclado (setas para cima/baixo, Enter, Escape, Home, End), foco gerenciado e anúncios para leitores de tela.
14454
+ * ### Navegação por teclado
14455
+ * O foco permanece no campo `combobox` enquanto a lista está aberta; a opção em destaque é comunicada por `aria-activedescendant`.
14456
+ * Ao receber foco, o campo abre a lista sem alterar a seleção atual.
14457
+ * - **ArrowDown / ArrowUp:** abre a lista e destaca a próxima opção na direção pressionada; com a lista aberta, move o destaque sem mover o foco físico.
14458
+ * - **Home / End:** em modo não filtrável, destaca a primeira ou a última opção habilitada; em modo filtrável, preserva o movimento do cursor no texto.
14459
+ * - **Enter:** abre a lista quando fechada e confirma a opção destacada quando aberta.
14460
+ * - **Espaço:** confirma a opção destacada em modo não filtrável; em modo filtrável, insere um espaço no campo de busca.
14461
+ * - **Escape:** fecha a lista, remove o destaque e devolve o foco ao campo.
14462
+ * - **Tab:** fecha a lista e deixa o navegador mover o foco para o próximo controle, sem alterar a seleção implicitamente.
14463
+ * - **Busca incremental:** em modo não filtrável, caracteres consecutivos destacam a primeira opção habilitada correspondente; em modo filtrável, a digitação filtra a lista.
14464
+ * - **Alt+ArrowDown / Alt+ArrowUp:** abre ou fecha a lista sem alterar a seleção.
14400
14465
  * ### Quando utilizar
14401
14466
  * - **Utilize quando:**
14402
14467
  * - O número de opções for moderado a grande (mais de 5 a 7 itens), onde listar todas diretamente na tela consumiria muito espaço visual.
@@ -14465,7 +14530,7 @@ declare namespace LocalJSX {
14465
14530
  */
14466
14531
  "customId"?: string;
14467
14532
  /**
14468
- * Define a densidade visual compartilhada pelo campo e pela lista de opções. Aceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.
14533
+ * Define a densidade visual compartilhada pelo campo e pela lista de opções. Aceita `small`, `medium` ou `large`. Valores inválidos usam `medium`. A opção sintética de selecionar todos permanece com densidade `small`.
14469
14534
  * @default 'medium'
14470
14535
  */
14471
14536
  "density"?: BrDensity;
@@ -14483,6 +14548,11 @@ declare namespace LocalJSX {
14483
14548
  * The `id` of a `<form>` element to associate this element with.
14484
14549
  */
14485
14550
  "form"?: string;
14551
+ /**
14552
+ * Oculta os divisores entre opções consecutivas, sem alterar a altura das linhas.
14553
+ * @default false
14554
+ */
14555
+ "hideDividers"?: boolean;
14486
14556
  /**
14487
14557
  * Exibe rótulo e controle em linha. Quando informada, tem precedência sobre `isInline`.
14488
14558
  */
@@ -14756,7 +14826,7 @@ declare namespace LocalJSX {
14756
14826
  */
14757
14827
  "required"?: boolean;
14758
14828
  /**
14759
- * Exibe o ícone de busca dentro do campo.
14829
+ * Exibe a lupa mesmo quando o campo não é filtrável. Quando filterable é true, a lupa é exibida automaticamente.
14760
14830
  * @type {boolean | undefined}
14761
14831
  */
14762
14832
  "showSearchIcon"?: boolean;
@@ -14786,10 +14856,15 @@ declare namespace LocalJSX {
14786
14856
  */
14787
14857
  "activeOptionIndex"?: number;
14788
14858
  /**
14789
- * Define a densidade visual da lista, das opções e do indicador de carregamento. Aceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.
14859
+ * Define a densidade visual da lista, das opções regulares e do indicador de carregamento. A opção sintética de selecionar todos permanece com densidade `small`. Aceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.
14790
14860
  * @default 'medium'
14791
14861
  */
14792
14862
  "density"?: BrDensity;
14863
+ /**
14864
+ * Oculta os divisores entre opções consecutivas, sem alterar a altura das linhas.
14865
+ * @default false
14866
+ */
14867
+ "hideDividers"?: boolean;
14793
14868
  /**
14794
14869
  * Informa a altura base usada no cálculo de posicionamento das opções. Deve ser um número finito positivo; valores inválidos usam 56.
14795
14870
  * @default 56
@@ -14927,7 +15002,7 @@ declare namespace LocalJSX {
14927
15002
  * - O usuário já estiver autenticado e a intenção for apenas exibir o perfil (prefira `br-avatar`).
14928
15003
  * ### Estrutura e Slots
14929
15004
  * O `br-sign-in` é um botão de autenticação estilizado com a marca oficial do Governo Federal, recebendo propriedades de rótulo e variantes institucionais.
14930
- * Para a documentação completa de design, incluindo diretrizes de acessibilidade e especificações visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/sign-in?tab=designer).
15005
+ * Para a documentação completa de design, incluindo diretrizes de acessibilidade e especificações visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/signin?tab=designer).
14931
15006
  * @category Identidade, Ações, Formulários
14932
15007
  * @status stable
14933
15008
  */
@@ -14937,7 +15012,7 @@ declare namespace LocalJSX {
14937
15012
  */
14938
15013
  "ariaLabel"?: string;
14939
15014
  /**
14940
- * Define se o sign-in usará um esquema de cores escuro.
15015
+ * Define se o sign-in usará um esquema de cores escuro, para fundos escuros. Quando omitido, ou com valor diferente de `dark`, usa o esquema claro.
14941
15016
  */
14942
15017
  "colorMode"?: 'dark';
14943
15018
  /**
@@ -15631,7 +15706,7 @@ declare namespace LocalJSX {
15631
15706
  */
15632
15707
  "counter"?: string;
15633
15708
  /**
15634
- * Define o ícone do item de tab usando classes CSS do Font Awesome 5, como `fas fa-bell`. O formato Iconify é aceito apenas para compatibilidade legada e não deve ser usado em novos códigos.
15709
+ * Í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.
15635
15710
  */
15636
15711
  "icon"?: string;
15637
15712
  /**
@@ -16221,35 +16296,36 @@ declare namespace LocalJSX {
16221
16296
  "wrap"?: TextareaWrap;
16222
16297
  }
16223
16298
  /**
16224
- * Subcomponente de seleção de horários do GovBR-DS, desenvolvido para permitir a escolha intuitiva de horas e minutos.
16299
+ * O `br-time-picker` é o subcomponente de ajuste de horas e minutos do `br-datetime-picker`.
16225
16300
  * ### Papel na composição
16226
- * - Apresenta colunas ou controles de incremento/decremento para seleção de horas e minutos com validação de limites.
16227
- * - Sincroniza o horário escolhido com o campo textual associado.
16301
+ * Oferece campos textuais e botões de incremento e decremento para hora e minuto. Usa uma data de referência e comunica alterações por `dateStateChange`; não coordena diretamente o calendário nem o campo textual principal.
16228
16302
  * ### Regra de uso e relacionamento
16229
- * Coordenado pelo componente pai `br-datetime-picker` no modo de horário ou composto. Pode ser utilizado avulso quando a aplicação demandar exclusivamente a captura de hora sem necessidade de calendário de datas.
16230
- * Para a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
16231
- * @category Formulários, Seleção
16232
- * @status stable
16303
+ * O `br-datetime-picker` instancia e sincroniza este seletor nos modos `time` e `datetime`. Na seleção de intervalo, o pai cria dois seletores, um para o início e outro para o fim, e consolida os respectivos valores. Não forneça seletores de horário em slots do pai.
16304
+ * Prefira o orquestrador para um controle completo de horário com campo textual e formulário. Use diretamente apenas quando precisar dos controles de hora e minuto em uma composição personalizada e assumir a sincronização de estado, a validação e a integração com formulários. O uso isolado não herda a associação nativa ao formulário do pai.
16305
+ * Consulte também as [diretrizes de design do GovBR](https://www.gov.br/ds/components/time-picker?tab=designer).
16233
16306
  */
16234
16307
  interface BrTimePicker {
16235
16308
  /**
16236
- * Desabilita todos os controles de navegação e edição de hora/minuto.
16309
+ * Indica se os controles do seletor estão desabilitados.
16237
16310
  * @default false
16238
16311
  */
16239
16312
  "disabled"?: boolean;
16240
16313
  /**
16241
- * Evento emitido quando a data de referência ou o valor selecionado mudam.
16314
+ * Evento emitido sempre que `referenceDate` ou `value` são atualizados. O `detail` segue a forma de `DatetimePickerDateState` e contém o estado compartilhado entre subcomponentes de data e horário. Payload (`detail`):
16315
+ * @property {Date} referenceDate - Data de referência utilizada para navegação/visualização (segundos zerados).
16316
+ * @property {Date|null} value - Valor selecionado pelo usuário (ou `null` quando vazio).
16317
+ * @property {object} [range] - Quando em `selectionMode: 'range'`, contém `{ start: Date|null, end: Date|null }`.
16318
+ * @property {Array<{date: Date, disabled: boolean}>} [rangeDates] - Lista de dias do intervalo com indicador de bloqueio.
16319
+ * @event dateStateChange
16242
16320
  */
16243
16321
  "onDateStateChange"?: (event: BrTimePickerCustomEvent<DatetimePickerDateState>) => void;
16244
16322
  /**
16245
- * Data usada como referência para a navegação de hora e minuto, sem representar necessariamente a seleção. Recebe uma instância de `Date` por property binding; valores inválidos usam a data atual.
16246
- * @example ```js const timePicker = document.querySelector('br-time-picker'); timePicker.referenceDate = new Date(2026, 8, 7, 9); ```
16323
+ * Data de referência usada para exibir e ajustar hora e minuto.
16247
16324
  * @default new Date()
16248
16325
  */
16249
16326
  "referenceDate"?: Date;
16250
16327
  /**
16251
- * Data que contém a hora e o minuto efetivamente selecionados, ou `null` quando vazio. Recebe uma instância de `Date` por property binding; datas inválidas usam `null`.
16252
- * @example ```js const timePicker = document.querySelector('br-time-picker'); timePicker.value = new Date(2026, 8, 7, 14, 30); ```
16328
+ * Valor canônico selecionado pelo usuário.
16253
16329
  * @default null
16254
16330
  */
16255
16331
  "value"?: Date | null;
@@ -17291,6 +17367,7 @@ declare namespace LocalJSX {
17291
17367
  "itemHeight": number;
17292
17368
  "inputWidth": string | undefined;
17293
17369
  "overscan": number;
17370
+ "hideDividers": boolean;
17294
17371
  "isOpen": boolean;
17295
17372
  "open": boolean;
17296
17373
  "label": string;
@@ -17335,6 +17412,7 @@ declare namespace LocalJSX {
17335
17412
  "visibleItems": number;
17336
17413
  "itemHeight": number;
17337
17414
  "overscan": number;
17415
+ "hideDividers": boolean;
17338
17416
  "selectAllLabel": string;
17339
17417
  "unselectAllLabel": string;
17340
17418
  "activeOptionIndex": number;
@@ -18037,52 +18115,52 @@ declare module "@stencil/core" {
18037
18115
  */
18038
18116
  "br-crumb": LocalJSX.IntrinsicElements["br-crumb"] & JSXBase.HTMLAttributes<HTMLBrCrumbElement>;
18039
18117
  /**
18040
- * Subcomponente de calendário visual do GovBR-DS, projetado para seleção interativa de datas individuais ou intervalos.
18118
+ * O `br-date-picker` é o subcomponente de calendário do `br-datetime-picker`, responsável pela seleção visual de uma data ou de um intervalo.
18041
18119
  * ### Papel na composição
18042
- * - Exibe a grade mensal navegável com suporte a seleção de dia, navegação entre meses e anos, e destaque para a data atual e intervalos.
18043
- * - Implementa navegação acessível por teclado WAI-ARIA Grid (setas direcionais para dias e semanas).
18120
+ * Exibe a grade mensal, a navegação entre meses e anos e os estados de seleção e bloqueio dos dias. `referenceDate` determina o período exibido, enquanto `value` e os limites do intervalo representam a seleção.
18044
18121
  * ### Regra de uso e relacionamento
18045
- * Geralmente exibido dentro da superfície suspensa coordenada pelo `br-datetime-picker`. Pode ser declarado isoladamente quando a interface demandar um calendário estático permanentemente embutido na página (inline calendar).
18046
- * Para a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
18047
- * @category Formulários, Seleção
18048
- * @status stable
18122
+ * O `br-datetime-picker` instancia e configura este calendário internamente nos modos `date` e `datetime`, recebendo suas alterações pelo evento `dateStateChange`. Não declare o calendário em um slot do pai.
18123
+ * Use diretamente quando precisar de um calendário embutido e permanentemente visível. Nesse caso, a aplicação deve coordenar valores e eventos e implementar a integração com formulários e a validação do fluxo completo. O calendário isolado não fornece o campo textual, o seletor de horários nem a associação ao formulário do orquestrador.
18124
+ * 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/date-picker?tab=designer).
18049
18125
  */
18050
18126
  "br-date-picker": LocalJSX.IntrinsicElements["br-date-picker"] & JSXBase.HTMLAttributes<HTMLBrDatePickerElement>;
18051
18127
  /**
18052
- * Subcomponente especializado do ecossistema de datas do GovBR-DS, responsável pela digitação e formatação de datas e horários via teclado.
18128
+ * O `br-datetime-input` é o subcomponente de edição textual do `br-datetime-picker`, com máscara, interpretação de datas e horários e validação local sobre um `br-input` interno.
18053
18129
  * ### Papel na composição
18054
- * - Aplica máscaras automáticas de digitação conforme o formato configurado (ex.: `DD/MM/AAAA`, `HH:mm`, `DD/MM/AAAA HH:mm`).
18055
- * - Contém o botão de acionamento para expandir ou recolher o popup do calendário.
18130
+ * Exibe e permite editar a seleção única ou os limites de um intervalo nos modos `date`, `time` e `datetime`. Comunica alterações por `dateStateChange`, informa a validação local por `inputValidationChange` e solicita a abertura ou o fechamento do painel por `togglePicker`.
18056
18131
  * ### Regra de uso e relacionamento
18057
- * No fluxo usual da aplicação, é instanciado e coordenado automaticamente pelo orquestrador `br-datetime-picker`. Pode ser utilizado de forma autônoma apenas quando o leiaute exigir somente o campo de digitação textual sem o painel flutuante de calendário.
18058
- * Para a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
18059
- * @category Formulários, Seleção
18060
- * @status stable
18132
+ * O `br-datetime-picker` instancia este campo internamente e fornece valores e configurações por propriedades. O pai coordena a seleção com o calendário e os controles de horário; o campo não abre esses seletores por conta própria nem deve ser fornecido em slot.
18133
+ * Prefira o `br-datetime-picker` para o controle completo. Use o campo isoladamente apenas em composições personalizadas nas quais a aplicação assuma a sincronização de estado, o tratamento dos eventos e a integração com formulários. Este subcomponente não possui a associação nativa ao formulário do orquestrador.
18134
+ * Consulte também as [diretrizes de design do GovBR](https://www.gov.br/ds/components/datetime?tab=designer).
18135
+ * @see https://www.gov.br/ds/components/datetime?tab=designer
18061
18136
  */
18062
18137
  "br-datetime-input": LocalJSX.IntrinsicElements["br-datetime-input"] & JSXBase.HTMLAttributes<HTMLBrDatetimeInputElement>;
18063
18138
  /**
18064
- * O componente `br-datetime-picker` é o orquestrador completo do GovBR-DS para seleção e digitação de datas, horários ou intervalos combinados. Ele integra-se nativamente a formulários HTML via `formAssociated` e oferece suporte WAI-ARIA para diálogos e calendários.
18139
+ * O `br-datetime-picker` é o controle completo do GovBR-DS para digitação e seleção visual de datas e horários. Orquestra o campo textual e os seletores internos, consolidando valor, validação e integração com formulários HTML.
18065
18140
  * ### Para que serve
18066
- * - **Seleção completa de data e horário:** Reúne em um único controle o campo de entrada com máscara formatada (`br-datetime-input`), o calendário de seleção de datas (`br-date-picker`) e o seletor de horários (`br-time-picker`).
18067
- * - **Múltiplos modos operacionais:** Suporta data simples, intervalo de datas (`range`), apenas hora (`time`), data e hora combinadas (`datetime`) e datas múltiplas.
18068
- * - **Validação e formulários nativos:** Valida datas mínimas (`min`), máximas (`max`), formatos permitidos e comunica valores estruturados diretamente ao formulário pai.
18141
+ * - Oferece os modos `date`, `time` e `datetime`, com seleção única (`single`) ou de intervalo (`range`).
18142
+ * - Combina edição textual com máscara, calendário e ajuste de horas e minutos conforme o modo escolhido.
18143
+ * - Centraliza restrições de seleção, validação e submissão do valor por meio de `formAssociated`.
18069
18144
  * ### Quando utilizar
18070
- * - **Utilize quando:**
18071
- * - O formulário exigir preenchimento de datas ou horários onde tanto a digitação manual rápida quanto a exploração visual no calendário agreguem valor à experiência.
18072
- * - For necessário selecionar um período com data de início e fim.
18073
- * - **Evite e prefira outro componente quando:**
18074
- * - A data for estritamente de nascimento ou emissão de documento onde a pessoa usuária sabe os dígitos de cor e prefere digitar apenas números (prefira `br-input` com máscara numérica).
18145
+ * - Utilize quando o formulário precisar de um controle completo de data ou horário com digitação e seleção visual.
18146
+ * - Utilize para períodos com início e fim, inclusive com horários nos modos `time` e `datetime`.
18147
+ * - Evite quando precisar apenas apresentar uma data: prefira texto formatado.
18148
+ * - Para um calendário permanentemente visível sem o campo textual, considere `br-date-picker`; a aplicação assume a integração com o restante do formulário.
18149
+ * - A seleção não oferece uma coleção de datas independentes: use `single` para um valor ou `range` para um intervalo.
18075
18150
  * ### Composição e Subcomponentes
18076
- * | Subcomponente | Papel | Regra de uso |
18151
+ * | Componente | Papel | Regra de uso |
18077
18152
  * | --- | --- | --- |
18078
- * | `br-datetime-picker` | **Orquestrador principal.** Gerencia valor consolidado, validação, abertura do popup e sincronização entre input e calendário. | Deve ser o único controle declarado no template da aplicação na quase totalidade dos casos. |
18079
- * | `br-datetime-input` | **Campo com máscara.** Exibe o valor formatado e permite digitação manual. | Coordenado automaticamente pelo pai; use avulso apenas em composições customizadas. |
18080
- * | `br-date-picker` | **Calendário de datas.** Painel visual com grade de dias, meses e anos. | Coordenado pelo pai; use avulso se precisar de calendário estático embutido. |
18081
- * | `br-time-picker` | **Seletor de horário.** Controle de escolha de horas e minutos. | Coordenado pelo pai; use avulso se precisar apenas de seletor de hora sem data. |
18153
+ * | `br-datetime-picker` | Orquestrador do valor consolidado, validação, formulário e abertura do painel. | Declare este controle no template para obter a composição completa. |
18154
+ * | `br-datetime-input` | Campo textual com máscara, interpretação da entrada e ação de abertura do painel. | Instanciado internamente pelo pai; não deve ser fornecido em slot. |
18155
+ * | `br-date-picker` | Calendário para navegação e seleção de data única ou intervalo. | Criado pelo pai nos modos `date` e `datetime`; pode ser usado isoladamente como calendário embutido. |
18156
+ * | `br-time-picker` | Controles de hora e minuto. | Criado pelo pai nos modos `time` e `datetime`, com uma instância por limite quando a seleção é `range`. |
18157
+ * O slot `feedback` recebe conteúdo declarativo de validação, normalmente um `br-message`; não substitui os seletores internos.
18082
18158
  * ### Como os subcomponentes se relacionam
18083
- * O `br-datetime-picker` funciona como o modelo pronto: ele instancia e sincroniza internamente o campo textual (`br-datetime-input`) e os seletores visuais suspensos (`br-date-picker` e/ou `br-time-picker`). A aplicação consome os eventos unificados emitidos diretamente pelo orquestrador pai (`change`, `input`).
18084
- * Para a documentação completa de design, incluindo diretrizes de acessibilidade e especificações visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
18085
- * @category Formulários, Seleção
18159
+ * O pai fornece valores e configurações aos filhos por propriedades e consolida suas alterações por eventos DOM. O campo textual solicita a abertura do painel; o calendário e os controles de horário atualizam a seleção compartilhada, sem coordenar diretamente uns aos outros.
18160
+ * `referenceDate` representa a referência de navegação visual, distinta da seleção efetiva. O orquestrador mantém o campo textual, os seletores e o valor de formulário sincronizados. A aplicação consome o valor e os eventos do pai, incluindo `brDatetimePickerChange` para a seleção completa e tipada.
18161
+ * O uso isolado dos filhos exige que a aplicação assuma a coordenação de estado, validação e formulário; eles não herdam a associação nativa ao formulário do `br-datetime-picker`.
18162
+ * 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/datetimepicker?tab=designer).
18163
+ * @category Formulários
18086
18164
  * @status stable
18087
18165
  */
18088
18166
  "br-datetime-picker": LocalJSX.IntrinsicElements["br-datetime-picker"] & JSXBase.HTMLAttributes<HTMLBrDatetimePickerElement>;
@@ -18768,6 +18846,17 @@ declare module "@stencil/core" {
18768
18846
  * - **Agrupamento de opções:** Organiza opções contíguas por categoria, preservando virtualização, busca local e semântica nativa de formulário.
18769
18847
  * - **Integração com formulários:** É associado a formulários nativos (`formAssociated`), comunicando seu valor, estado de validação (válido/inválido), mensagens de erro contextuais e eventos padrão (`change`, `input`).
18770
18848
  * - **Navegação acessível:** Suporta controle total via teclado (setas para cima/baixo, Enter, Escape, Home, End), foco gerenciado e anúncios para leitores de tela.
18849
+ * ### Navegação por teclado
18850
+ * O foco permanece no campo `combobox` enquanto a lista está aberta; a opção em destaque é comunicada por `aria-activedescendant`.
18851
+ * Ao receber foco, o campo abre a lista sem alterar a seleção atual.
18852
+ * - **ArrowDown / ArrowUp:** abre a lista e destaca a próxima opção na direção pressionada; com a lista aberta, move o destaque sem mover o foco físico.
18853
+ * - **Home / End:** em modo não filtrável, destaca a primeira ou a última opção habilitada; em modo filtrável, preserva o movimento do cursor no texto.
18854
+ * - **Enter:** abre a lista quando fechada e confirma a opção destacada quando aberta.
18855
+ * - **Espaço:** confirma a opção destacada em modo não filtrável; em modo filtrável, insere um espaço no campo de busca.
18856
+ * - **Escape:** fecha a lista, remove o destaque e devolve o foco ao campo.
18857
+ * - **Tab:** fecha a lista e deixa o navegador mover o foco para o próximo controle, sem alterar a seleção implicitamente.
18858
+ * - **Busca incremental:** em modo não filtrável, caracteres consecutivos destacam a primeira opção habilitada correspondente; em modo filtrável, a digitação filtra a lista.
18859
+ * - **Alt+ArrowDown / Alt+ArrowUp:** abre ou fecha a lista sem alterar a seleção.
18771
18860
  * ### Quando utilizar
18772
18861
  * - **Utilize quando:**
18773
18862
  * - O número de opções for moderado a grande (mais de 5 a 7 itens), onde listar todas diretamente na tela consumiria muito espaço visual.
@@ -18875,7 +18964,7 @@ declare module "@stencil/core" {
18875
18964
  * - O usuário já estiver autenticado e a intenção for apenas exibir o perfil (prefira `br-avatar`).
18876
18965
  * ### Estrutura e Slots
18877
18966
  * O `br-sign-in` é um botão de autenticação estilizado com a marca oficial do Governo Federal, recebendo propriedades de rótulo e variantes institucionais.
18878
- * Para a documentação completa de design, incluindo diretrizes de acessibilidade e especificações visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/sign-in?tab=designer).
18967
+ * Para a documentação completa de design, incluindo diretrizes de acessibilidade e especificações visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/signin?tab=designer).
18879
18968
  * @category Identidade, Ações, Formulários
18880
18969
  * @status stable
18881
18970
  */
@@ -19179,15 +19268,13 @@ declare module "@stencil/core" {
19179
19268
  */
19180
19269
  "br-textarea": LocalJSX.IntrinsicElements["br-textarea"] & JSXBase.HTMLAttributes<HTMLBrTextareaElement>;
19181
19270
  /**
19182
- * Subcomponente de seleção de horários do GovBR-DS, desenvolvido para permitir a escolha intuitiva de horas e minutos.
19271
+ * O `br-time-picker` é o subcomponente de ajuste de horas e minutos do `br-datetime-picker`.
19183
19272
  * ### Papel na composição
19184
- * - Apresenta colunas ou controles de incremento/decremento para seleção de horas e minutos com validação de limites.
19185
- * - Sincroniza o horário escolhido com o campo textual associado.
19273
+ * Oferece campos textuais e botões de incremento e decremento para hora e minuto. Usa uma data de referência e comunica alterações por `dateStateChange`; não coordena diretamente o calendário nem o campo textual principal.
19186
19274
  * ### Regra de uso e relacionamento
19187
- * Coordenado pelo componente pai `br-datetime-picker` no modo de horário ou composto. Pode ser utilizado avulso quando a aplicação demandar exclusivamente a captura de hora sem necessidade de calendário de datas.
19188
- * Para a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).
19189
- * @category Formulários, Seleção
19190
- * @status stable
19275
+ * O `br-datetime-picker` instancia e sincroniza este seletor nos modos `time` e `datetime`. Na seleção de intervalo, o pai cria dois seletores, um para o início e outro para o fim, e consolida os respectivos valores. Não forneça seletores de horário em slots do pai.
19276
+ * Prefira o orquestrador para um controle completo de horário com campo textual e formulário. Use diretamente apenas quando precisar dos controles de hora e minuto em uma composição personalizada e assumir a sincronização de estado, a validação e a integração com formulários. O uso isolado não herda a associação nativa ao formulário do pai.
19277
+ * Consulte também as [diretrizes de design do GovBR](https://www.gov.br/ds/components/time-picker?tab=designer).
19191
19278
  */
19192
19279
  "br-time-picker": LocalJSX.IntrinsicElements["br-time-picker"] & JSXBase.HTMLAttributes<HTMLBrTimePickerElement>;
19193
19280
  /**