@govbr-ds/webcomponents 2.3.0 → 2.5.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.
- package/README.md +2 -2
- package/cem/custom-elements.json +1764 -1575
- package/cem/webcomponents.html-custom-data.json +194 -163
- package/dist/cjs/br-avatar.cjs.entry.js +3 -3
- package/dist/cjs/br-breadcrumb-item.cjs.entry.js +1 -1
- package/dist/cjs/br-breadcrumb.cjs.entry.js +3 -3
- package/dist/cjs/br-button_2.cjs.entry.js +4 -4
- package/dist/cjs/br-card.cjs.entry.js +3 -3
- package/dist/cjs/br-carousel-page.cjs.entry.js +2 -2
- package/dist/cjs/br-carousel.cjs.entry.js +2 -2
- package/dist/cjs/br-checkbox-group.cjs.entry.js +3 -3
- package/dist/cjs/br-checkbox.cjs.entry.js +4 -4
- package/dist/cjs/br-checkgroup.cjs.entry.js +1 -1
- package/dist/cjs/br-collapse_2.cjs.entry.js +5 -5
- package/dist/cjs/br-cookiebar-cookie.cjs.entry.js +2 -2
- package/dist/cjs/br-cookiebar-group.cjs.entry.js +2 -2
- package/dist/cjs/br-cookiebar-header.cjs.entry.js +2 -2
- package/dist/cjs/br-cookiebar-link.cjs.entry.js +2 -2
- package/dist/cjs/br-cookiebar-note-group.cjs.entry.js +1 -1
- package/dist/cjs/br-cookiebar-note.cjs.entry.js +2 -2
- package/dist/cjs/br-cookiebar.cjs.entry.js +3 -3
- package/dist/cjs/br-crumb.cjs.entry.js +1 -1
- package/dist/cjs/br-date-picker_3.cjs.entry.js +984 -545
- package/dist/cjs/br-datetime-picker.cjs.entry.js +1346 -310
- package/dist/cjs/br-divider.cjs.entry.js +3 -3
- package/dist/cjs/br-dropdown_2.cjs.entry.js +282 -139
- package/dist/cjs/br-footer-category.cjs.entry.js +3 -3
- package/dist/cjs/br-footer-item.cjs.entry.js +2 -2
- package/dist/cjs/br-footer-legal.cjs.entry.js +2 -2
- package/dist/cjs/br-footer-logo.cjs.entry.js +2 -2
- package/dist/cjs/br-footer-social.cjs.entry.js +2 -2
- package/dist/cjs/br-footer.cjs.entry.js +4 -4
- package/dist/cjs/br-header-function.cjs.entry.js +2 -2
- package/dist/cjs/br-header-link.cjs.entry.js +2 -2
- package/dist/cjs/br-header-list.cjs.entry.js +2 -2
- package/dist/cjs/br-header-logo.cjs.entry.js +2 -2
- package/dist/cjs/br-header.cjs.entry.js +2 -2
- package/dist/cjs/br-icon.cjs.entry.js +3 -3
- package/dist/cjs/br-input.cjs.entry.js +64 -10
- package/dist/cjs/br-item.cjs.entry.js +3 -3
- package/dist/cjs/br-link.cjs.entry.js +8 -8
- package/dist/cjs/br-loading.cjs.entry.js +2 -2
- package/dist/cjs/br-magic-button.cjs.entry.js +2 -2
- package/dist/cjs/br-menu-group.cjs.entry.js +2 -2
- package/dist/cjs/br-menu-header.cjs.entry.js +2 -2
- package/dist/cjs/br-menu-info.cjs.entry.js +2 -2
- package/dist/cjs/br-menu-item.cjs.entry.js +2 -2
- package/dist/cjs/br-menu-link.cjs.entry.js +2 -2
- package/dist/cjs/br-menu-list.cjs.entry.js +1 -1
- package/dist/cjs/br-menu-logo.cjs.entry.js +2 -2
- package/dist/cjs/br-menu-social.cjs.entry.js +1 -1
- package/dist/cjs/br-menu.cjs.entry.js +4 -4
- package/dist/cjs/br-modal.cjs.entry.js +1 -1
- package/dist/cjs/br-notification-body.cjs.entry.js +2 -2
- package/dist/cjs/br-notification-header.cjs.entry.js +2 -2
- package/dist/cjs/br-notification-item.cjs.entry.js +2 -2
- package/dist/cjs/br-notification.cjs.entry.js +3 -3
- package/dist/cjs/br-pagination.cjs.entry.js +3 -3
- package/dist/cjs/br-radio-group.cjs.entry.js +4 -4
- package/dist/cjs/br-radio.cjs.entry.js +4 -4
- package/dist/cjs/br-scrim.cjs.entry.js +3 -3
- package/dist/cjs/br-select-input_3.cjs.entry.js +308 -101
- package/dist/cjs/br-sign-in.cjs.entry.js +3 -3
- package/dist/cjs/br-skip-link-item.cjs.entry.js +1 -1
- package/dist/cjs/br-skip-link.cjs.entry.js +2 -2
- package/dist/cjs/br-skiplink-item.cjs.entry.js +2 -2
- package/dist/cjs/br-slider.cjs.entry.js +3 -3
- package/dist/cjs/br-step_2.cjs.entry.js +6 -6
- package/dist/cjs/br-switch.cjs.entry.js +4 -4
- package/dist/cjs/br-tab-item.cjs.entry.js +2 -2
- package/dist/cjs/br-tab.cjs.entry.js +4 -4
- package/dist/cjs/br-table-body.cjs.entry.js +2 -2
- package/dist/cjs/br-table-cell.cjs.entry.js +2 -2
- package/dist/cjs/br-table-header-cell.cjs.entry.js +2 -2
- package/dist/cjs/br-table-header.cjs.entry.js +2 -2
- package/dist/cjs/br-table-row.cjs.entry.js +2 -2
- package/dist/cjs/br-table.cjs.entry.js +2 -2
- package/dist/cjs/br-tag.cjs.entry.js +4 -4
- package/dist/cjs/br-textarea.cjs.entry.js +3 -3
- package/dist/cjs/br-tooltip.cjs.entry.js +2 -2
- package/dist/cjs/br-upload.cjs.entry.js +8 -24
- package/dist/cjs/br-wizard-panel.cjs.entry.js +2 -2
- package/dist/cjs/br-wizard.cjs.entry.js +2 -2
- package/dist/cjs/{datetime-picker-constants-B5pWeOn1.js → datetime-picker-constants-CTf1kVJ1.js} +21 -5
- package/dist/cjs/format-bytes-Cs8SH2w0.js +24 -0
- package/dist/cjs/{iconify-icon-DfODV9bf.js → iconify-icon-LjavbM-D.js} +103 -57
- package/dist/cjs/index-Bc30P_6z.js +14 -14
- package/dist/cjs/{index-C92n55ch.js → index-Caoez3xb.js} +75 -27
- package/dist/cjs/index.cjs.js +2 -2
- package/dist/cjs/{datetime-picker-props-validation-DmNKSXsy.js → isValid-DgJ-noPS.js} +1 -483
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/select.utils-C38f5Kea.js +62 -0
- package/dist/cjs/{slot-DAllytTj.js → slot-CjaqqX7y.js} +1 -1
- package/dist/cjs/webcomponents.cjs.js +1 -1
- package/dist/collection/components/avatar/avatar.css +1 -1
- package/dist/collection/components/avatar/avatar.js +21 -21
- package/dist/collection/components/breadcrumb/breadcrumb-item/breadcrumb-item.js +4 -12
- package/dist/collection/components/breadcrumb/breadcrumb.css +1 -1
- package/dist/collection/components/breadcrumb/breadcrumb.js +32 -27
- package/dist/collection/components/breadcrumb/crumb/crumb.js +2 -13
- package/dist/collection/components/button/button.css +1 -1
- package/dist/collection/components/button/button.js +21 -21
- package/dist/collection/components/card/card.css +1 -1
- package/dist/collection/components/card/card.js +20 -22
- package/dist/collection/components/carousel/carousel-page/carousel-page.css +1 -1
- package/dist/collection/components/carousel/carousel-page/carousel-page.js +3 -13
- package/dist/collection/components/carousel/carousel.css +1 -1
- package/dist/collection/components/carousel/carousel.js +23 -30
- package/dist/collection/components/checkbox/checkbox.css +1 -1
- package/dist/collection/components/checkbox/checkbox.js +18 -24
- package/dist/collection/components/checkbox-group/checkbox-group.css +1 -1
- package/dist/collection/components/checkbox-group/checkbox-group.js +19 -20
- package/dist/collection/components/checkgroup/checkgroup.js +2 -14
- package/dist/collection/components/collapse/collapse.css +1 -1
- package/dist/collection/components/collapse/collapse.js +25 -21
- package/dist/collection/components/cookiebar/cookiebar-cookie/cookiebar-cookie.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-cookie/cookiebar-cookie.js +3 -16
- package/dist/collection/components/cookiebar/cookiebar-group/cookiebar-group.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-group/cookiebar-group.js +3 -16
- package/dist/collection/components/cookiebar/cookiebar-header/cookiebar-header.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-header/cookiebar-header.js +3 -16
- package/dist/collection/components/cookiebar/cookiebar-link/cookiebar-link.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-link/cookiebar-link.js +3 -15
- package/dist/collection/components/cookiebar/cookiebar-note/cookiebar-note.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-note/cookiebar-note.js +3 -14
- package/dist/collection/components/cookiebar/cookiebar-note-group/cookiebar-note-group.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-note-group/cookiebar-note-group.js +2 -13
- package/dist/collection/components/cookiebar/cookiebar.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar.js +32 -27
- package/dist/collection/components/datetime-picker/date-picker/date-picker-locale.js +73 -26
- package/dist/collection/components/datetime-picker/date-picker/date-picker-props-validation.js +14 -13
- package/dist/collection/components/datetime-picker/date-picker/date-picker.css +1 -1
- package/dist/collection/components/datetime-picker/date-picker/date-picker.js +474 -321
- package/dist/collection/components/datetime-picker/datetime-input/datetime-input-constants.js +59 -0
- package/dist/collection/components/datetime-picker/datetime-input/datetime-input-props-validation.js +19 -15
- package/dist/collection/components/datetime-picker/datetime-input/datetime-input.css +1 -1
- package/dist/collection/components/datetime-picker/datetime-input/datetime-input.js +370 -218
- package/dist/collection/components/datetime-picker/datetime-input/datetime-input.types.js +1 -0
- package/dist/collection/components/datetime-picker/datetime-picker-constants.js +19 -5
- package/dist/collection/components/datetime-picker/datetime-picker-form-associated.js +92 -11
- package/dist/collection/components/datetime-picker/datetime-picker-props-validation.js +52 -33
- package/dist/collection/components/datetime-picker/datetime-picker.css +1 -1
- package/dist/collection/components/datetime-picker/datetime-picker.js +917 -368
- package/dist/collection/components/datetime-picker/datetime-picker.utils.js +62 -49
- package/dist/collection/components/datetime-picker/time-picker/time-picker-constants.js +3 -2
- package/dist/collection/components/datetime-picker/time-picker/time-picker.css +1 -1
- package/dist/collection/components/datetime-picker/time-picker/time-picker.js +145 -92
- package/dist/collection/components/divider/divider.css +1 -1
- package/dist/collection/components/divider/divider.js +15 -19
- package/dist/collection/components/dropdown/dropdown.css +1 -1
- package/dist/collection/components/dropdown/dropdown.js +22 -21
- package/dist/collection/components/footer/footer-category/footer-category.css +1 -1
- package/dist/collection/components/footer/footer-category/footer-category.js +4 -17
- package/dist/collection/components/footer/footer-item/footer-item.css +1 -1
- package/dist/collection/components/footer/footer-item/footer-item.js +3 -16
- package/dist/collection/components/footer/footer-legal/footer-legal.css +1 -1
- package/dist/collection/components/footer/footer-legal/footer-legal.js +2 -16
- package/dist/collection/components/footer/footer-logo/footer-logo.css +1 -1
- package/dist/collection/components/footer/footer-logo/footer-logo.js +3 -16
- package/dist/collection/components/footer/footer-social/footer-social.css +1 -1
- package/dist/collection/components/footer/footer-social/footer-social.js +3 -15
- package/dist/collection/components/footer/footer.css +1 -1
- package/dist/collection/components/footer/footer.js +25 -29
- package/dist/collection/components/header/header-function/header-function.css +1 -1
- package/dist/collection/components/header/header-function/header-function.js +10 -14
- package/dist/collection/components/header/header-link/header-link.css +1 -1
- package/dist/collection/components/header/header-link/header-link.js +3 -16
- package/dist/collection/components/header/header-list/header-list.css +1 -1
- package/dist/collection/components/header/header-list/header-list.js +3 -16
- package/dist/collection/components/header/header-logo/header-logo.css +1 -1
- package/dist/collection/components/header/header-logo/header-logo.js +3 -16
- package/dist/collection/components/header/header.css +1 -1
- package/dist/collection/components/header/header.js +30 -27
- package/dist/collection/components/icon/icon.css +1 -1
- package/dist/collection/components/icon/icon.js +22 -17
- package/dist/collection/components/input/input.css +1 -1
- package/dist/collection/components/input/input.js +125 -30
- package/dist/collection/components/item/item.css +1 -1
- package/dist/collection/components/item/item.js +18 -22
- package/dist/collection/components/link/link.css +1 -1
- package/dist/collection/components/link/link.js +25 -29
- package/dist/collection/components/list/list.css +1 -1
- package/dist/collection/components/list/list.js +17 -21
- package/dist/collection/components/loading/loading.css +1 -1
- package/dist/collection/components/loading/loading.js +17 -24
- package/dist/collection/components/magic-button/magic-button.css +1 -1
- package/dist/collection/components/magic-button/magic-button.js +13 -20
- package/dist/collection/components/menu/menu-group/menu-group.css +1 -1
- package/dist/collection/components/menu/menu-group/menu-group.js +3 -16
- package/dist/collection/components/menu/menu-header/menu-header.css +1 -1
- package/dist/collection/components/menu/menu-header/menu-header.js +3 -16
- package/dist/collection/components/menu/menu-info/menu-info.css +1 -1
- package/dist/collection/components/menu/menu-info/menu-info.js +2 -15
- package/dist/collection/components/menu/menu-item/menu-item.css +1 -1
- package/dist/collection/components/menu/menu-item/menu-item.js +3 -16
- package/dist/collection/components/menu/menu-link/menu-link.css +1 -1
- package/dist/collection/components/menu/menu-link/menu-link.js +5 -17
- package/dist/collection/components/menu/menu-list/menu-list.css +1 -1
- package/dist/collection/components/menu/menu-list/menu-list.js +2 -15
- package/dist/collection/components/menu/menu-logo/menu-logo.css +1 -1
- package/dist/collection/components/menu/menu-logo/menu-logo.js +2 -15
- package/dist/collection/components/menu/menu-social/menu-social.css +1 -1
- package/dist/collection/components/menu/menu-social/menu-social.js +2 -15
- package/dist/collection/components/menu/menu.css +1 -1
- package/dist/collection/components/menu/menu.js +28 -35
- package/dist/collection/components/message/message.css +1 -1
- package/dist/collection/components/message/message.js +22 -25
- package/dist/collection/components/modal/modal.css +1 -1
- package/dist/collection/components/modal/modal.js +18 -21
- package/dist/collection/components/notification/notification-body/notification-body.css +1 -1
- package/dist/collection/components/notification/notification-body/notification-body.js +3 -13
- package/dist/collection/components/notification/notification-header/notification-header.css +1 -1
- package/dist/collection/components/notification/notification-header/notification-header.js +3 -14
- package/dist/collection/components/notification/notification-item/notification-item.css +1 -1
- package/dist/collection/components/notification/notification-item/notification-item.js +3 -16
- package/dist/collection/components/notification/notification.css +1 -1
- package/dist/collection/components/notification/notification.js +20 -29
- package/dist/collection/components/pagination/pagination.css +1 -1
- package/dist/collection/components/pagination/pagination.js +15 -23
- package/dist/collection/components/radio/radio.css +1 -1
- package/dist/collection/components/radio/radio.js +17 -20
- package/dist/collection/components/radio-group/radio-group.css +1 -1
- package/dist/collection/components/radio-group/radio-group.js +20 -20
- package/dist/collection/components/scrim/scrim.css +1 -1
- package/dist/collection/components/scrim/scrim.js +14 -17
- package/dist/collection/components/select/select-input/select-input.css +1 -1
- package/dist/collection/components/select/select-input/select-input.js +157 -27
- package/dist/collection/components/select/select-list/select-list.css +1 -1
- package/dist/collection/components/select/select-list/select-list.js +269 -80
- package/dist/collection/components/select/select-option/select-option.css +1 -1
- package/dist/collection/components/select/select-option/select-option.js +20 -16
- package/dist/collection/components/select/select.css +1 -1
- package/dist/collection/components/select/select.js +367 -180
- package/dist/collection/components/select/select.utils.js +26 -7
- package/dist/collection/components/sign-in/sign-in.css +1 -1
- package/dist/collection/components/sign-in/sign-in.js +12 -16
- package/dist/collection/components/skip-link/skip-link-item/skip-link-item-alias.js +8 -4
- package/dist/collection/components/skip-link/skip-link-item/skip-link-item.css +1 -1
- package/dist/collection/components/skip-link/skip-link-item/skip-link-item.js +5 -15
- package/dist/collection/components/skip-link/skip-link.css +1 -1
- package/dist/collection/components/skip-link/skip-link.js +18 -24
- package/dist/collection/components/slider/slider.css +1 -1
- package/dist/collection/components/slider/slider.js +15 -25
- package/dist/collection/components/step/step-item/step-item.css +1 -1
- package/dist/collection/components/step/step-item/step-item.js +5 -15
- package/dist/collection/components/step/step.css +1 -1
- package/dist/collection/components/step/step.js +16 -25
- package/dist/collection/components/switch/switch.css +1 -1
- package/dist/collection/components/switch/switch.js +16 -20
- package/dist/collection/components/tab/tab-item/tab-item.css +1 -1
- package/dist/collection/components/tab/tab-item/tab-item.js +5 -15
- package/dist/collection/components/tab/tab.css +1 -1
- package/dist/collection/components/tab/tab.js +22 -29
- package/dist/collection/components/table/table-body/table-body.css +1 -1
- package/dist/collection/components/table/table-body/table-body.js +3 -13
- package/dist/collection/components/table/table-cell/table-cell.css +1 -1
- package/dist/collection/components/table/table-cell/table-cell.js +3 -12
- package/dist/collection/components/table/table-header/table-header.css +1 -1
- package/dist/collection/components/table/table-header/table-header.js +3 -13
- package/dist/collection/components/table/table-header-cell/table-header-cell.css +1 -1
- package/dist/collection/components/table/table-header-cell/table-header-cell.js +3 -13
- package/dist/collection/components/table/table-row/table-row.css +1 -1
- package/dist/collection/components/table/table-row/table-row.js +3 -13
- package/dist/collection/components/table/table.css +1 -1
- package/dist/collection/components/table/table.js +25 -32
- package/dist/collection/components/tag/tag.css +1 -1
- package/dist/collection/components/tag/tag.js +17 -26
- package/dist/collection/components/textarea/textarea.css +1 -1
- package/dist/collection/components/textarea/textarea.js +14 -22
- package/dist/collection/components/tooltip/tooltip.css +1 -1
- package/dist/collection/components/tooltip/tooltip.js +13 -19
- package/dist/collection/components/upload/upload.css +1 -1
- package/dist/collection/components/upload/upload.js +36 -29
- package/dist/collection/components/wizard/wizard-panel/wizard-panel.css +1 -1
- package/dist/collection/components/wizard/wizard-panel/wizard-panel.js +3 -13
- package/dist/collection/components/wizard/wizard.css +1 -1
- package/dist/collection/components/wizard/wizard.js +22 -26
- package/dist/collection/pages/components/select/remote-options.js +87 -0
- package/dist/collection/shared/utils/slot.js +1 -1
- package/dist/components/br-avatar.js +1 -1
- package/dist/components/br-breadcrumb-item.js +1 -1
- package/dist/components/br-breadcrumb.js +1 -1
- package/dist/components/br-button.js +1 -1
- package/dist/components/br-card.js +1 -1
- package/dist/components/br-carousel-page.js +1 -1
- package/dist/components/br-carousel.js +1 -1
- package/dist/components/br-checkbox-group.js +1 -1
- package/dist/components/br-checkbox.js +1 -1
- package/dist/components/br-checkgroup.js +1 -1
- package/dist/components/br-collapse.js +1 -1
- package/dist/components/br-cookiebar-cookie.js +1 -1
- package/dist/components/br-cookiebar-group.js +1 -1
- package/dist/components/br-cookiebar-header.js +1 -1
- package/dist/components/br-cookiebar-link.js +1 -1
- package/dist/components/br-cookiebar-note-group.js +1 -1
- package/dist/components/br-cookiebar-note.js +1 -1
- package/dist/components/br-cookiebar.js +1 -1
- package/dist/components/br-crumb.js +1 -1
- package/dist/components/br-date-picker.js +1 -1
- package/dist/components/br-datetime-input.js +1 -1
- package/dist/components/br-datetime-picker.js +1 -1
- package/dist/components/br-divider.js +1 -1
- package/dist/components/br-dropdown.js +1 -1
- package/dist/components/br-footer-category.js +1 -1
- package/dist/components/br-footer-item.js +1 -1
- package/dist/components/br-footer-legal.js +1 -1
- package/dist/components/br-footer-logo.js +1 -1
- package/dist/components/br-footer-social.js +1 -1
- package/dist/components/br-footer.js +1 -1
- package/dist/components/br-header-function.js +1 -1
- package/dist/components/br-header-link.js +1 -1
- package/dist/components/br-header-list.js +1 -1
- package/dist/components/br-header-logo.js +1 -1
- package/dist/components/br-header.js +1 -1
- package/dist/components/br-icon.js +1 -1
- package/dist/components/br-input.js +1 -1
- package/dist/components/br-item.js +1 -1
- package/dist/components/br-link.js +1 -1
- package/dist/components/br-list.js +1 -1
- package/dist/components/br-loading.js +1 -1
- package/dist/components/br-magic-button.js +1 -1
- package/dist/components/br-menu-group.js +1 -1
- package/dist/components/br-menu-header.js +1 -1
- package/dist/components/br-menu-info.js +1 -1
- package/dist/components/br-menu-item.js +1 -1
- package/dist/components/br-menu-link.js +1 -1
- package/dist/components/br-menu-list.js +1 -1
- package/dist/components/br-menu-logo.js +1 -1
- package/dist/components/br-menu-social.js +1 -1
- package/dist/components/br-menu.js +1 -1
- package/dist/components/br-message.js +1 -1
- package/dist/components/br-modal.js +1 -1
- package/dist/components/br-notification-body.js +1 -1
- package/dist/components/br-notification-header.js +1 -1
- package/dist/components/br-notification-item.js +1 -1
- package/dist/components/br-notification.js +1 -1
- package/dist/components/br-pagination.js +1 -1
- package/dist/components/br-radio-group.js +1 -1
- package/dist/components/br-radio.js +1 -1
- package/dist/components/br-scrim.js +1 -1
- package/dist/components/br-select-input.js +1 -1
- package/dist/components/br-select-list.js +1 -1
- package/dist/components/br-select-option.js +1 -1
- package/dist/components/br-select.js +1 -1
- package/dist/components/br-sign-in.js +1 -1
- package/dist/components/br-skip-link-item.js +1 -1
- package/dist/components/br-skip-link.js +1 -1
- package/dist/components/br-skiplink-item.js +1 -1
- package/dist/components/br-slider.js +1 -1
- package/dist/components/br-step-item.js +1 -1
- package/dist/components/br-step.js +1 -1
- package/dist/components/br-switch.js +1 -1
- package/dist/components/br-tab-item.js +1 -1
- package/dist/components/br-tab.js +1 -1
- package/dist/components/br-table-body.js +1 -1
- package/dist/components/br-table-cell.js +1 -1
- package/dist/components/br-table-header-cell.js +1 -1
- package/dist/components/br-table-header.js +1 -1
- package/dist/components/br-table-row.js +1 -1
- package/dist/components/br-table.js +1 -1
- package/dist/components/br-tag.js +1 -1
- package/dist/components/br-textarea.js +1 -1
- package/dist/components/br-time-picker.js +1 -1
- package/dist/components/br-tooltip.js +1 -1
- package/dist/components/br-upload.js +1 -1
- package/dist/components/br-wizard-panel.js +1 -1
- package/dist/components/br-wizard.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/p-448Z5r2f.js +5 -0
- package/dist/{webcomponents/p-5f422a69.entry.js → components/p-AhfgJCUp.js} +1 -1
- package/dist/components/p-AoNL6BaW.js +5 -0
- package/dist/components/p-B468MCYC.js +5 -0
- package/dist/components/p-B7bNfmgh.js +5 -0
- package/dist/components/p-B985Ov_x.js +5 -0
- package/dist/components/p-BOWQIHQA.js +5 -0
- package/dist/components/p-BPQrgCRr.js +5 -0
- package/dist/components/p-BwQT0fOJ.js +5 -0
- package/dist/components/p-CAgbUwsx.js +5 -0
- package/dist/components/p-CFXey8i8.js +5 -0
- package/dist/components/p-CVz_akHx.js +5 -0
- package/dist/components/p-CW8xwk6J.js +5 -0
- package/dist/components/p-CYZVdKeO.js +5 -0
- package/dist/components/p-C_DC6oQW.js +16 -0
- package/dist/components/p-CeWbZN7V.js +5 -0
- package/dist/components/p-CyXVsiz9.js +5 -0
- package/dist/components/p-DDe0tQEO.js +5 -0
- package/dist/components/{p-CZZVc2gK.js → p-DJKZ8ktB.js} +1 -1
- package/dist/components/p-DRsZ9GNg.js +5 -0
- package/dist/components/p-DU54cqCf.js +5 -0
- package/dist/components/p-DVJlmlEX.js +5 -0
- package/dist/components/p-DcMjwTqu.js +5 -0
- package/dist/components/p-Dd1qCWAK.js +5 -0
- package/dist/components/p-Dn36Mj2E.js +5 -0
- package/dist/components/p-DoWy_P8b.js +5 -0
- package/dist/components/p-HbhTnepI.js +5 -0
- package/dist/components/{p-BcqVlof7.js → p-JkJjzmGm.js} +1 -1
- package/dist/components/{p-Nze3Utvd.js → p-Or3FLzbz.js} +1 -1
- package/dist/components/p-SWQlgYWR.js +5 -0
- package/dist/components/p-Zb9nyfTY.js +5 -0
- package/dist/components/p-jvKQA6x7.js +5 -0
- package/dist/components/p-pQb-3jFY.js +5 -0
- package/dist/components/p-qX6sHxOk.js +5 -0
- package/dist/esm/br-avatar.entry.js +3 -3
- package/dist/esm/br-breadcrumb-item.entry.js +1 -1
- package/dist/esm/br-breadcrumb.entry.js +3 -3
- package/dist/esm/br-button_2.entry.js +4 -4
- package/dist/esm/br-card.entry.js +3 -3
- package/dist/esm/br-carousel-page.entry.js +2 -2
- package/dist/esm/br-carousel.entry.js +3 -3
- package/dist/esm/br-checkbox-group.entry.js +3 -3
- package/dist/esm/br-checkbox.entry.js +5 -5
- package/dist/esm/br-checkgroup.entry.js +1 -1
- package/dist/esm/br-collapse_2.entry.js +6 -6
- package/dist/esm/br-cookiebar-cookie.entry.js +2 -2
- package/dist/esm/br-cookiebar-group.entry.js +2 -2
- package/dist/esm/br-cookiebar-header.entry.js +2 -2
- package/dist/esm/br-cookiebar-link.entry.js +2 -2
- package/dist/esm/br-cookiebar-note-group.entry.js +1 -1
- package/dist/esm/br-cookiebar-note.entry.js +2 -2
- package/dist/esm/br-cookiebar.entry.js +4 -4
- package/dist/esm/br-crumb.entry.js +1 -1
- package/dist/esm/br-date-picker_3.entry.js +966 -527
- package/dist/esm/br-datetime-picker.entry.js +1316 -280
- package/dist/esm/br-divider.entry.js +3 -3
- package/dist/esm/br-dropdown_2.entry.js +281 -138
- package/dist/esm/br-footer-category.entry.js +3 -3
- package/dist/esm/br-footer-item.entry.js +2 -2
- package/dist/esm/br-footer-legal.entry.js +2 -2
- package/dist/esm/br-footer-logo.entry.js +2 -2
- package/dist/esm/br-footer-social.entry.js +2 -2
- package/dist/esm/br-footer.entry.js +4 -4
- package/dist/esm/br-header-function.entry.js +2 -2
- package/dist/esm/br-header-link.entry.js +2 -2
- package/dist/esm/br-header-list.entry.js +3 -3
- package/dist/esm/br-header-logo.entry.js +2 -2
- package/dist/esm/br-header.entry.js +2 -2
- package/dist/esm/br-icon.entry.js +3 -3
- package/dist/esm/br-input.entry.js +65 -11
- package/dist/esm/br-item.entry.js +3 -3
- package/dist/esm/br-link.entry.js +8 -8
- package/dist/esm/br-loading.entry.js +2 -2
- package/dist/esm/br-magic-button.entry.js +2 -2
- package/dist/esm/br-menu-group.entry.js +2 -2
- package/dist/esm/br-menu-header.entry.js +2 -2
- package/dist/esm/br-menu-info.entry.js +2 -2
- package/dist/esm/br-menu-item.entry.js +2 -2
- package/dist/esm/br-menu-link.entry.js +2 -2
- package/dist/esm/br-menu-list.entry.js +1 -1
- package/dist/esm/br-menu-logo.entry.js +2 -2
- package/dist/esm/br-menu-social.entry.js +1 -1
- package/dist/esm/br-menu.entry.js +5 -5
- package/dist/esm/br-modal.entry.js +1 -1
- package/dist/esm/br-notification-body.entry.js +2 -2
- package/dist/esm/br-notification-header.entry.js +2 -2
- package/dist/esm/br-notification-item.entry.js +2 -2
- package/dist/esm/br-notification.entry.js +4 -4
- package/dist/esm/br-pagination.entry.js +3 -3
- package/dist/esm/br-radio-group.entry.js +5 -5
- package/dist/esm/br-radio.entry.js +5 -5
- package/dist/esm/br-scrim.entry.js +3 -3
- package/dist/esm/br-select-input_3.entry.js +308 -101
- package/dist/esm/br-sign-in.entry.js +3 -3
- package/dist/esm/br-skip-link-item.entry.js +1 -1
- package/dist/esm/br-skip-link.entry.js +2 -2
- package/dist/esm/br-skiplink-item.entry.js +2 -2
- package/dist/esm/br-slider.entry.js +4 -4
- package/dist/esm/br-step_2.entry.js +6 -6
- package/dist/esm/br-switch.entry.js +5 -5
- package/dist/esm/br-tab-item.entry.js +2 -2
- package/dist/esm/br-tab.entry.js +4 -4
- package/dist/esm/br-table-body.entry.js +2 -2
- package/dist/esm/br-table-cell.entry.js +2 -2
- package/dist/esm/br-table-header-cell.entry.js +2 -2
- package/dist/esm/br-table-header.entry.js +2 -2
- package/dist/esm/br-table-row.entry.js +2 -2
- package/dist/esm/br-table.entry.js +2 -2
- package/dist/esm/br-tag.entry.js +5 -5
- package/dist/esm/br-textarea.entry.js +4 -4
- package/dist/esm/br-tooltip.entry.js +3 -3
- package/dist/esm/br-upload.entry.js +6 -22
- package/dist/esm/br-wizard-panel.entry.js +2 -2
- package/dist/esm/br-wizard.entry.js +2 -2
- package/dist/esm/{datetime-picker-constants-BtRPYRvA.js → datetime-picker-constants-1l4_-FEJ.js} +20 -6
- package/dist/esm/{event-CfuJQ1DY.js → event-6Da1SZ3J.js} +1 -1
- package/dist/esm/format-bytes-B7bNfmgh.js +22 -0
- package/dist/esm/{iconify-icon-D3usVJE2.js → iconify-icon-C_DC6oQW.js} +103 -57
- package/dist/esm/{index-BQPOWxe5.js → index-BQRBKuY0.js} +75 -28
- package/dist/esm/index-ConyRdJe.js +14 -14
- package/dist/esm/index.js +2 -2
- package/dist/esm/{datetime-picker-props-validation-BeTcUTnE.js → isValid-wU7S6MI2.js} +2 -477
- package/dist/esm/loader.js +1 -1
- package/dist/esm/select.utils-BYsh2ZdE.js +57 -0
- package/dist/esm/{slot-BIG-yees.js → slot-Bt01zQ7-.js} +1 -1
- package/dist/esm/webcomponents.js +1 -1
- package/dist/hydrate/index.js +4459 -3577
- package/dist/hydrate/index.mjs +4459 -3577
- package/dist/types/components/avatar/avatar.d.ts +20 -20
- package/dist/types/components/breadcrumb/breadcrumb-item/breadcrumb-item.d.ts +3 -11
- package/dist/types/components/breadcrumb/breadcrumb.d.ts +30 -25
- package/dist/types/components/breadcrumb/crumb/crumb.d.ts +1 -12
- package/dist/types/components/button/button.d.ts +20 -20
- package/dist/types/components/card/card.d.ts +19 -21
- package/dist/types/components/carousel/carousel-page/carousel-page.d.ts +2 -12
- package/dist/types/components/carousel/carousel.d.ts +22 -29
- package/dist/types/components/checkbox/checkbox.d.ts +16 -22
- package/dist/types/components/checkbox-group/checkbox-group.d.ts +17 -18
- package/dist/types/components/checkgroup/checkgroup.d.ts +1 -13
- package/dist/types/components/collapse/collapse.d.ts +24 -20
- package/dist/types/components/cookiebar/cookiebar-cookie/cookiebar-cookie.d.ts +2 -15
- package/dist/types/components/cookiebar/cookiebar-group/cookiebar-group.d.ts +2 -15
- package/dist/types/components/cookiebar/cookiebar-header/cookiebar-header.d.ts +2 -15
- package/dist/types/components/cookiebar/cookiebar-link/cookiebar-link.d.ts +2 -14
- package/dist/types/components/cookiebar/cookiebar-note/cookiebar-note.d.ts +2 -13
- package/dist/types/components/cookiebar/cookiebar-note-group/cookiebar-note-group.d.ts +2 -13
- package/dist/types/components/cookiebar/cookiebar.d.ts +30 -25
- package/dist/types/components/datetime-picker/date-picker/date-picker-locale.d.ts +20 -12
- package/dist/types/components/datetime-picker/date-picker/date-picker-props-validation.d.ts +14 -13
- package/dist/types/components/datetime-picker/date-picker/date-picker.d.ts +313 -164
- package/dist/types/components/datetime-picker/datetime-input/datetime-input-constants.d.ts +14 -0
- package/dist/types/components/datetime-picker/datetime-input/datetime-input-props-validation.d.ts +19 -15
- package/dist/types/components/datetime-picker/datetime-input/datetime-input.d.ts +226 -105
- package/dist/types/components/datetime-picker/datetime-input/datetime-input.types.d.ts +36 -0
- package/dist/types/components/datetime-picker/datetime-picker-constants.d.ts +19 -5
- package/dist/types/components/datetime-picker/datetime-picker-form-associated.d.ts +32 -5
- package/dist/types/components/datetime-picker/datetime-picker-props-validation.d.ts +22 -24
- package/dist/types/components/datetime-picker/datetime-picker.d.ts +510 -241
- package/dist/types/components/datetime-picker/datetime-picker.types.d.ts +75 -21
- package/dist/types/components/datetime-picker/datetime-picker.utils.d.ts +53 -47
- package/dist/types/components/datetime-picker/time-picker/time-picker-constants.d.ts +3 -2
- package/dist/types/components/datetime-picker/time-picker/time-picker.d.ts +123 -62
- package/dist/types/components/divider/divider.d.ts +14 -18
- package/dist/types/components/dropdown/dropdown.d.ts +21 -20
- package/dist/types/components/footer/footer-category/footer-category.d.ts +2 -15
- package/dist/types/components/footer/footer-item/footer-item.d.ts +2 -15
- package/dist/types/components/footer/footer-legal/footer-legal.d.ts +1 -15
- package/dist/types/components/footer/footer-logo/footer-logo.d.ts +2 -15
- package/dist/types/components/footer/footer-social/footer-social.d.ts +2 -14
- package/dist/types/components/footer/footer.d.ts +23 -27
- package/dist/types/components/header/header-function/header-function.d.ts +9 -13
- package/dist/types/components/header/header-link/header-link.d.ts +2 -15
- package/dist/types/components/header/header-list/header-list.d.ts +2 -15
- package/dist/types/components/header/header-logo/header-logo.d.ts +2 -15
- package/dist/types/components/header/header.d.ts +29 -26
- package/dist/types/components/icon/icon.d.ts +21 -16
- package/dist/types/components/input/input.d.ts +48 -23
- package/dist/types/components/input/input.types.d.ts +4 -0
- package/dist/types/components/item/item.d.ts +17 -21
- package/dist/types/components/link/link.d.ts +18 -22
- package/dist/types/components/list/list.d.ts +16 -20
- package/dist/types/components/loading/loading.d.ts +16 -23
- package/dist/types/components/magic-button/magic-button.d.ts +12 -19
- package/dist/types/components/menu/menu-group/menu-group.d.ts +2 -15
- package/dist/types/components/menu/menu-header/menu-header.d.ts +2 -15
- package/dist/types/components/menu/menu-info/menu-info.d.ts +1 -14
- package/dist/types/components/menu/menu-item/menu-item.d.ts +2 -15
- package/dist/types/components/menu/menu-link/menu-link.d.ts +4 -16
- package/dist/types/components/menu/menu-list/menu-list.d.ts +2 -15
- package/dist/types/components/menu/menu-logo/menu-logo.d.ts +1 -14
- package/dist/types/components/menu/menu-social/menu-social.d.ts +2 -15
- package/dist/types/components/menu/menu.d.ts +25 -32
- package/dist/types/components/message/message.d.ts +21 -24
- package/dist/types/components/modal/modal.d.ts +18 -21
- package/dist/types/components/notification/notification-body/notification-body.d.ts +2 -12
- package/dist/types/components/notification/notification-header/notification-header.d.ts +2 -13
- package/dist/types/components/notification/notification-item/notification-item.d.ts +2 -15
- package/dist/types/components/notification/notification.d.ts +18 -27
- package/dist/types/components/pagination/pagination.d.ts +13 -21
- package/dist/types/components/radio/radio.d.ts +15 -18
- package/dist/types/components/radio-group/radio-group.d.ts +18 -18
- package/dist/types/components/scrim/scrim.d.ts +12 -15
- package/dist/types/components/select/select-input/select-input.d.ts +20 -12
- package/dist/types/components/select/select-list/select-list.d.ts +27 -14
- package/dist/types/components/select/select-option/select-option.d.ts +6 -10
- package/dist/types/components/select/select.d.ts +75 -87
- package/dist/types/components/select/select.types.d.ts +12 -0
- package/dist/types/components/select/select.utils.d.ts +3 -0
- package/dist/types/components/sign-in/sign-in.d.ts +11 -15
- package/dist/types/components/skip-link/skip-link-item/skip-link-item-alias.d.ts +7 -3
- package/dist/types/components/skip-link/skip-link-item/skip-link-item.d.ts +4 -14
- package/dist/types/components/skip-link/skip-link.d.ts +17 -23
- package/dist/types/components/slider/slider.d.ts +14 -24
- package/dist/types/components/step/step-item/step-item.d.ts +2 -12
- package/dist/types/components/step/step.d.ts +15 -24
- package/dist/types/components/switch/switch.d.ts +14 -18
- package/dist/types/components/tab/tab-item/tab-item.d.ts +4 -14
- package/dist/types/components/tab/tab.d.ts +19 -26
- package/dist/types/components/table/table-body/table-body.d.ts +2 -12
- package/dist/types/components/table/table-cell/table-cell.d.ts +2 -11
- package/dist/types/components/table/table-header/table-header.d.ts +2 -12
- package/dist/types/components/table/table-header-cell/table-header-cell.d.ts +2 -12
- package/dist/types/components/table/table-row/table-row.d.ts +2 -12
- package/dist/types/components/table/table.d.ts +24 -31
- package/dist/types/components/tag/tag.d.ts +15 -24
- package/dist/types/components/textarea/textarea.d.ts +13 -21
- package/dist/types/components/tooltip/tooltip.d.ts +12 -18
- package/dist/types/components/upload/upload.d.ts +20 -27
- package/dist/types/components/wizard/wizard-panel/wizard-panel.d.ts +2 -12
- package/dist/types/components/wizard/wizard.d.ts +21 -25
- package/dist/types/components.d.ts +3586 -5062
- package/dist/webcomponents/index.esm.js +1 -1
- package/dist/webcomponents/p-031a2256.entry.js +5 -0
- package/dist/webcomponents/p-0602e5b1.entry.js +5 -0
- package/dist/webcomponents/p-079d5f69.entry.js +5 -0
- package/dist/webcomponents/p-087ed5e7.entry.js +5 -0
- package/dist/webcomponents/p-0d5a9ebf.entry.js +5 -0
- package/dist/webcomponents/p-105b4d06.entry.js +5 -0
- package/dist/webcomponents/p-11d4edc5.entry.js +5 -0
- package/dist/webcomponents/p-12dd22af.entry.js +5 -0
- package/dist/webcomponents/p-14aedf0d.entry.js +5 -0
- package/dist/webcomponents/p-152482f9.entry.js +5 -0
- package/dist/webcomponents/p-19b4b1b7.entry.js +5 -0
- package/dist/webcomponents/p-1cd1126e.entry.js +5 -0
- package/dist/webcomponents/{p-BtRPYRvA.js → p-1l4_-FEJ.js} +1 -1
- package/dist/webcomponents/p-21e10074.entry.js +5 -0
- package/dist/webcomponents/p-2271ea84.entry.js +5 -0
- package/dist/webcomponents/p-271b1ede.entry.js +5 -0
- package/dist/webcomponents/p-28f732fc.entry.js +5 -0
- package/dist/webcomponents/{p-c1dafd8d.entry.js → p-2971d38a.entry.js} +1 -1
- package/dist/{components/p-DOJ1vYOl.js → webcomponents/p-2ac48875.entry.js} +1 -1
- package/dist/webcomponents/p-2b1a919c.entry.js +5 -0
- package/dist/webcomponents/p-2da57966.entry.js +5 -0
- package/dist/webcomponents/p-2e81b0b3.entry.js +5 -0
- package/dist/webcomponents/p-2eececed.entry.js +5 -0
- package/dist/webcomponents/{p-513ee754.entry.js → p-2f904c4a.entry.js} +1 -1
- package/dist/webcomponents/p-32414f1c.entry.js +5 -0
- package/dist/webcomponents/{p-5a7c2031.entry.js → p-324afbce.entry.js} +1 -1
- package/dist/webcomponents/p-32ea6342.entry.js +5 -0
- package/dist/webcomponents/p-330ec8ab.entry.js +5 -0
- package/dist/webcomponents/p-374f83b1.entry.js +5 -0
- package/dist/webcomponents/p-3926cc91.entry.js +5 -0
- package/dist/webcomponents/p-39a7826d.entry.js +5 -0
- package/dist/webcomponents/p-3bcc2c58.entry.js +5 -0
- package/dist/webcomponents/p-3c7ce0e4.entry.js +5 -0
- package/dist/webcomponents/p-467842ca.entry.js +5 -0
- package/dist/webcomponents/p-53550e8c.entry.js +5 -0
- package/dist/webcomponents/p-53e71a8a.entry.js +5 -0
- package/dist/webcomponents/p-5528b466.entry.js +5 -0
- package/dist/webcomponents/p-55e0822d.entry.js +5 -0
- package/dist/webcomponents/p-58bacbe1.entry.js +5 -0
- package/dist/webcomponents/p-5a5ed7d8.entry.js +5 -0
- package/dist/webcomponents/p-621f0fa8.entry.js +5 -0
- package/dist/webcomponents/p-6514a75d.entry.js +5 -0
- package/dist/webcomponents/{p-19a38e20.entry.js → p-678b43a6.entry.js} +1 -1
- package/dist/webcomponents/{p-CfuJQ1DY.js → p-6Da1SZ3J.js} +1 -1
- package/dist/webcomponents/p-6b6be415.entry.js +5 -0
- package/dist/webcomponents/{p-0d2ca2f7.entry.js → p-6d58ab4f.entry.js} +1 -1
- package/dist/webcomponents/p-6ff9b26e.entry.js +5 -0
- package/dist/webcomponents/p-84dfbfdd.entry.js +5 -0
- package/dist/webcomponents/{p-d5d2205c.entry.js → p-85c8d060.entry.js} +1 -1
- package/dist/webcomponents/p-913d6f28.entry.js +5 -0
- package/dist/webcomponents/{p-94848046.entry.js → p-975ea5c7.entry.js} +1 -1
- package/dist/webcomponents/p-992167bc.entry.js +5 -0
- package/dist/webcomponents/p-B7bNfmgh.js +5 -0
- package/dist/webcomponents/p-BYsh2ZdE.js +5 -0
- package/dist/webcomponents/p-C_DC6oQW.js +16 -0
- package/dist/webcomponents/{p-DV-iW9Aj.js → p-CpE_G6IZ.js} +1 -1
- package/dist/webcomponents/p-DnwERaeQ.js +5 -0
- package/dist/webcomponents/p-a21872bf.entry.js +5 -0
- package/dist/webcomponents/{p-0b0cf355.entry.js → p-a9f16a65.entry.js} +1 -1
- package/dist/webcomponents/p-b8d4ace3.entry.js +5 -0
- package/dist/webcomponents/{p-6850e98e.entry.js → p-bbcde1ea.entry.js} +1 -1
- package/dist/webcomponents/p-bbf47e78.entry.js +5 -0
- package/dist/webcomponents/p-bf35e506.entry.js +5 -0
- package/dist/webcomponents/{p-b02a7218.entry.js → p-c09af3cd.entry.js} +1 -1
- package/dist/webcomponents/p-c29268b5.entry.js +5 -0
- package/dist/webcomponents/p-c3e61c39.entry.js +5 -0
- package/dist/webcomponents/{p-b16590fc.entry.js → p-c6b2545a.entry.js} +1 -1
- package/dist/webcomponents/{p-b55425b7.entry.js → p-c6f2f17b.entry.js} +1 -1
- package/dist/webcomponents/p-cae39e13.entry.js +5 -0
- package/dist/webcomponents/p-cb1e08b1.entry.js +5 -0
- package/dist/webcomponents/{p-e94a52ac.entry.js → p-cb690a87.entry.js} +1 -1
- package/dist/webcomponents/p-d0be7243.entry.js +5 -0
- package/dist/webcomponents/p-d191c6e3.entry.js +5 -0
- package/dist/webcomponents/p-d205f3fd.entry.js +5 -0
- package/dist/webcomponents/p-d3bd2c40.entry.js +5 -0
- package/dist/webcomponents/{p-61977114.entry.js → p-dbeea64e.entry.js} +1 -1
- package/dist/webcomponents/p-df475129.entry.js +5 -0
- package/dist/webcomponents/p-e0ccf189.entry.js +5 -0
- package/dist/webcomponents/p-e121429a.entry.js +5 -0
- package/dist/webcomponents/p-e4b968b5.entry.js +5 -0
- package/dist/webcomponents/p-e661c024.entry.js +5 -0
- package/dist/webcomponents/p-e6c6f305.entry.js +5 -0
- package/dist/webcomponents/p-e8291be2.entry.js +5 -0
- package/dist/webcomponents/p-eb5806c7.entry.js +5 -0
- package/dist/webcomponents/{p-82759002.entry.js → p-ed3fa8ec.entry.js} +1 -1
- package/dist/webcomponents/p-f9084f16.entry.js +5 -0
- package/dist/webcomponents/{p-4118b878.entry.js → p-fad3aa61.entry.js} +1 -1
- package/dist/webcomponents/webcomponents.esm.js +1 -1
- package/package.json +2 -2
- package/dist/collection/pages/components/select/remote.js +0 -33
- package/dist/collection/pages/components/select/virtualized.js +0 -13
- package/dist/components/p-0qmYp77w.js +0 -5
- package/dist/components/p-5c3rNBXh.js +0 -5
- package/dist/components/p-B8oIvH3q.js +0 -5
- package/dist/components/p-BECz8XWJ.js +0 -5
- package/dist/components/p-BM4Ys6hX.js +0 -5
- package/dist/components/p-BXWh9s7p.js +0 -5
- package/dist/components/p-BblZlUp2.js +0 -5
- package/dist/components/p-Bezou5CQ.js +0 -5
- package/dist/components/p-BjeUETWJ.js +0 -5
- package/dist/components/p-Cd6udSDt.js +0 -5
- package/dist/components/p-Ci0_RqAE.js +0 -5
- package/dist/components/p-CuBgClZm.js +0 -5
- package/dist/components/p-D0QYZSoP.js +0 -5
- package/dist/components/p-D3usVJE2.js +0 -16
- package/dist/components/p-D4SWpW6-.js +0 -5
- package/dist/components/p-D579DS7x.js +0 -5
- package/dist/components/p-D8K7rhHd.js +0 -5
- package/dist/components/p-D9nXlCuS.js +0 -5
- package/dist/components/p-DKFO6Q_g.js +0 -5
- package/dist/components/p-DNJSSCNi.js +0 -5
- package/dist/components/p-DYI30IZL.js +0 -5
- package/dist/components/p-DcVldfL0.js +0 -5
- package/dist/components/p-DhvmHPp4.js +0 -5
- package/dist/components/p-DwgiHL0b.js +0 -5
- package/dist/components/p-WxDB6Dk4.js +0 -5
- package/dist/components/p-ZLoeVagg.js +0 -5
- package/dist/components/p-gbYJ9sfc.js +0 -5
- package/dist/components/p-uc8ABlC_.js +0 -5
- package/dist/components/p-v60ypfxD.js +0 -5
- package/dist/webcomponents/p-078bd760.entry.js +0 -5
- package/dist/webcomponents/p-07c2cdff.entry.js +0 -5
- package/dist/webcomponents/p-09817344.entry.js +0 -5
- package/dist/webcomponents/p-0d79ca44.entry.js +0 -5
- package/dist/webcomponents/p-0fe3c47b.entry.js +0 -5
- package/dist/webcomponents/p-116b53c9.entry.js +0 -5
- package/dist/webcomponents/p-1240dae7.entry.js +0 -5
- package/dist/webcomponents/p-14ff5865.entry.js +0 -5
- package/dist/webcomponents/p-15743a02.entry.js +0 -5
- package/dist/webcomponents/p-16cebf49.entry.js +0 -5
- package/dist/webcomponents/p-1884b9d3.entry.js +0 -5
- package/dist/webcomponents/p-1d36c8fa.entry.js +0 -5
- package/dist/webcomponents/p-1fa4b5b2.entry.js +0 -5
- package/dist/webcomponents/p-212c069b.entry.js +0 -5
- package/dist/webcomponents/p-23f37cd6.entry.js +0 -5
- package/dist/webcomponents/p-24502b63.entry.js +0 -5
- package/dist/webcomponents/p-27fb81f3.entry.js +0 -5
- package/dist/webcomponents/p-28844490.entry.js +0 -5
- package/dist/webcomponents/p-2b41bdcc.entry.js +0 -5
- package/dist/webcomponents/p-2cb1e09b.entry.js +0 -5
- package/dist/webcomponents/p-2fcda70b.entry.js +0 -5
- package/dist/webcomponents/p-3378300c.entry.js +0 -5
- package/dist/webcomponents/p-3ae9cf69.entry.js +0 -5
- package/dist/webcomponents/p-3b79cd49.entry.js +0 -5
- package/dist/webcomponents/p-3c1513ec.entry.js +0 -5
- package/dist/webcomponents/p-4534a3c3.entry.js +0 -5
- package/dist/webcomponents/p-48abf568.entry.js +0 -5
- package/dist/webcomponents/p-4e5ea05c.entry.js +0 -5
- package/dist/webcomponents/p-521a1076.entry.js +0 -5
- package/dist/webcomponents/p-59fc52c0.entry.js +0 -5
- package/dist/webcomponents/p-5a9f4ea2.entry.js +0 -5
- package/dist/webcomponents/p-71853dfc.entry.js +0 -5
- package/dist/webcomponents/p-76d51654.entry.js +0 -5
- package/dist/webcomponents/p-77e242f3.entry.js +0 -5
- package/dist/webcomponents/p-7b849472.entry.js +0 -5
- package/dist/webcomponents/p-7dbfb875.entry.js +0 -5
- package/dist/webcomponents/p-7fa7f052.entry.js +0 -5
- package/dist/webcomponents/p-81c65747.entry.js +0 -5
- package/dist/webcomponents/p-91a5329f.entry.js +0 -5
- package/dist/webcomponents/p-966773a9.entry.js +0 -5
- package/dist/webcomponents/p-9abb5a53.entry.js +0 -5
- package/dist/webcomponents/p-9bf2e325.entry.js +0 -5
- package/dist/webcomponents/p-9c943b40.entry.js +0 -5
- package/dist/webcomponents/p-9ec3ca00.entry.js +0 -5
- package/dist/webcomponents/p-B0PbhaxL.js +0 -5
- package/dist/webcomponents/p-D3usVJE2.js +0 -16
- package/dist/webcomponents/p-ad91f149.entry.js +0 -5
- package/dist/webcomponents/p-aeea1f17.entry.js +0 -5
- package/dist/webcomponents/p-c2ca0289.entry.js +0 -5
- package/dist/webcomponents/p-c8af334e.entry.js +0 -5
- package/dist/webcomponents/p-cac49c6a.entry.js +0 -5
- package/dist/webcomponents/p-cb9ebfbe.entry.js +0 -5
- package/dist/webcomponents/p-ce3d689c.entry.js +0 -5
- package/dist/webcomponents/p-d11f95a0.entry.js +0 -5
- package/dist/webcomponents/p-dad03b49.entry.js +0 -5
- package/dist/webcomponents/p-db8e6322.entry.js +0 -5
- package/dist/webcomponents/p-dea8015f.entry.js +0 -5
- package/dist/webcomponents/p-e07e309d.entry.js +0 -5
- package/dist/webcomponents/p-e53d874b.entry.js +0 -5
- package/dist/webcomponents/p-e5540387.entry.js +0 -5
- package/dist/webcomponents/p-e9be4d3f.entry.js +0 -5
- package/dist/webcomponents/p-e9db9381.entry.js +0 -5
- package/dist/webcomponents/p-edca5de1.entry.js +0 -5
- package/dist/webcomponents/p-ee5b9fc9.entry.js +0 -5
- package/dist/webcomponents/p-f4ef8c63.entry.js +0 -5
- /package/dist/components/{p-5z6jgH1D.js → p-BNckUhK6.js} +0 -0
- /package/dist/webcomponents/{p-BIG-yees.js → p-Bt01zQ7-.js} +0 -0
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"tags": [
|
|
5
5
|
{
|
|
6
6
|
"name": "br-avatar",
|
|
7
|
-
"description": "O
|
|
7
|
+
"description": "O `br-avatar` representa uma pessoa ou entidade de forma compacta: mostra uma foto, a primeira letra de um nome ou um ícone de usuário.\n\n### Como o conteúdo é escolhido\n\n1. Com `iconic`, mostra sempre o ícone de usuário.\n2. Com `text`, mostra a primeira letra do texto em maiúscula.\n3. Com `src`, mostra a imagem. Se ela não carregar, mostra o ícone.\n4. Sem nenhum deles, mostra o ícone.\n\n```html\n<br-avatar src=\"/fotos/maria.jpg\" alt=\"Foto de Maria Souza\"></br-avatar>\n<br-avatar text=\"Maria\"></br-avatar>\n<br-avatar iconic></br-avatar>\n```\n\nPara indicar disponibilidade, ative `status`. A cor fica em `status-bg-color` e o texto lido pelo leitor de tela, em `status-label`. Para outro indicador, use o slot `status`.\n\n### Quando usar\n\n- Identificar a pessoa autenticada no cabeçalho ou no menu.\n- Mostrar autores, contatos ou participantes em listas.\n\n### Quando evitar\n\n- Imagens grandes ou ilustrativas: use `<img>`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/avatar?tab=designer).\n---\n\n\n### **Methods:**\n - **handleDensityChange(newValue: _AvatarDensity_)** - Observa mudanças na propriedade density para validação e sincronização com atributo DOM.\nGarante que apenas valores válidos sejam aceitos e atualiza o atributo no elemento host.\n- **setFocus()** - Move o foco programaticamente para o avatar.\n\n### **Slots:**\n - **status** - Conteúdo customizado para o indicador de status. Quando usado, substitui a tag padrão.\n\n### **CSS Parts:**\n - **container** - Elemento externo do avatar.\n- **content** - Conteúdo interno do avatar (imagem, ícone ou texto).\n- **status** - Indicador de status posicionado sobre o avatar.",
|
|
8
8
|
"attributes": [
|
|
9
9
|
{
|
|
10
10
|
"name": "density",
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
},
|
|
82
82
|
{
|
|
83
83
|
"name": "br-breadcrumb",
|
|
84
|
-
"description": "O
|
|
84
|
+
"description": "O `br-breadcrumb` mostra o caminho até a página atual e permite voltar aos níveis anteriores.\n\n### Como montar\n\n1. Declare um `br-breadcrumb-item` para cada nível, do início até a página atual.\n2. Use `home` no primeiro item para exibir o ícone de página inicial.\n3. Marque a página atual com `active`: ela aparece sem link e com `aria-current=\"page\"`.\n\n```html\n<br-breadcrumb>\n <br-breadcrumb-item home label=\"Início\" href=\"/\"></br-breadcrumb-item>\n <br-breadcrumb-item label=\"Serviços\" href=\"/servicos\"></br-breadcrumb-item>\n <br-breadcrumb-item label=\"Emitir documento\" active></br-breadcrumb-item>\n</br-breadcrumb>\n```\n\nOs mesmos itens podem ser passados em `crumbs`, como array ou texto JSON. Quando falta espaço, os níveis intermediários são agrupados; `truncate-after` define a partir de quantos itens isso acontece.\n\n### Navegação em SPA\n\nCom `navigation-mode=\"event\"`, o clique em um item emite `brNavigate`. Cancele o evento e passe o endereço para o roteador:\n\n```js\nbreadcrumb.addEventListener('brNavigate', (event) => {\n event.preventDefault();\n router.push(event.detail.href);\n});\n```\n\n### Quando usar\n\n- Páginas com dois ou mais níveis de hierarquia.\n\n### Quando evitar\n\n- Navegação sem hierarquia.\n- Etapas de um processo: use `br-wizard` ou `br-step`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/breadcrumb?tab=designer).\n---\n\n\n### **Events:**\n - **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n\n### **Slots:**\n - **default** - Itens de breadcrumb declarados via elementos br-breadcrumb-item. O elemento br-crumb é aceito apenas por compatibilidade.\n\n### **CSS Parts:**\n - **nav** - Elemento nav do breadcrumb.\n- **list** - Lista ordenada de itens do breadcrumb.",
|
|
85
85
|
"attributes": [
|
|
86
86
|
{
|
|
87
87
|
"name": "custom-id",
|
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
},
|
|
96
96
|
{
|
|
97
97
|
"name": "home-href",
|
|
98
|
-
"description": "URL
|
|
98
|
+
"description": "URL padrão da página inicial. Quando informada, tem precedência sobre `homeUrl`.",
|
|
99
99
|
"values": []
|
|
100
100
|
},
|
|
101
101
|
{
|
|
@@ -118,7 +118,7 @@
|
|
|
118
118
|
},
|
|
119
119
|
{
|
|
120
120
|
"name": "br-breadcrumb-item",
|
|
121
|
-
"description": "
|
|
121
|
+
"description": "Representa um nível do `br-breadcrumb`. Use somente dentro dele.\n\nInforme `label` e `href`. Use `home` no primeiro item e `active` na página atual. O conteúdo do item, quando houver, substitui o texto de `label`.\n\nVeja como montar a trilha na documentação do `br-breadcrumb`.\n---\n\n\n### **Events:**\n - **brCrumbPropsChange** - Protocolo compatível com o listener atual do breadcrumb.\n\n### **Slots:**\n - **default** - Conteúdo alternativo do rótulo. Quando usado, substitui o texto fornecido em `label`.",
|
|
122
122
|
"attributes": [
|
|
123
123
|
{ "name": "label", "description": "Rótulo do item.", "values": [] },
|
|
124
124
|
{ "name": "href", "description": "URL do item.", "values": [] },
|
|
@@ -142,7 +142,7 @@
|
|
|
142
142
|
},
|
|
143
143
|
{
|
|
144
144
|
"name": "br-crumb",
|
|
145
|
-
"description": "@deprecated Use `br-breadcrumb-item`.\n\
|
|
145
|
+
"description": "@deprecated Use `br-breadcrumb-item`.\n\nNome antigo do `br-breadcrumb-item`, mantido para compatibilidade. Funciona da mesma forma; em código novo, use `br-breadcrumb-item`.\n---\n\n\n### **Events:**\n - **brCrumbPropsChange** - Evento disparado quando as propriedades do crumb mudam.\nO componente pai (br-breadcrumb) escuta este evento para se atualizar.\n\n### **Slots:**\n - **default** - Conteúdo alternativo do rótulo do item de navegação.",
|
|
146
146
|
"attributes": [
|
|
147
147
|
{
|
|
148
148
|
"name": "label",
|
|
@@ -174,7 +174,7 @@
|
|
|
174
174
|
},
|
|
175
175
|
{
|
|
176
176
|
"name": "br-button",
|
|
177
|
-
"description": "O
|
|
177
|
+
"description": "O `br-button` executa uma ação: salvar, enviar um formulário, abrir um modal, aplicar um filtro.\n\nO texto e o ícone vão dentro do botão. A aparência é definida por `emphasis` (`primary`, `secondary` ou `tertiary`) e `shape` (`circle`, `block` ou `pill`).\n\n```html\n<br-button emphasis=\"primary\" type=\"submit\">Enviar</br-button>\n\n<br-button shape=\"circle\" aria-label=\"Fechar\">\n <br-icon src=\"/icones/fechar.svg\"></br-icon>\n</br-button>\n```\n\nO tipo padrão é `button`. Use `type=\"submit\"` ou `type=\"reset\"` para agir sobre o formulário em que o botão está. Durante uma operação demorada, ative `loading`.\n\n### Quando usar\n\n- Executar uma ação na página atual.\n- Abrir modal, menu ou painel.\n\n### Quando evitar\n\n- Para ir a outra página: use `br-link` ou `<a>`.\n- Para escolher entre opções: use `br-radio` ou `br-checkbox`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/button?tab=designer).\n---\n\n\n### **Slots:**\n - **default** - Slot para o rótulo ou conteúdo do botão.\n\n### **CSS Parts:**\n - **button** - Parte para o elemento button interno, usada para estilos customizados via ::part(button).",
|
|
178
178
|
"attributes": [
|
|
179
179
|
{
|
|
180
180
|
"name": "color-mode",
|
|
@@ -208,7 +208,7 @@
|
|
|
208
208
|
},
|
|
209
209
|
{
|
|
210
210
|
"name": "active",
|
|
211
|
-
"description": "Estado ativo
|
|
211
|
+
"description": "Estado ativo atual. Quando informado, tem precedência sobre `isActive`.",
|
|
212
212
|
"values": []
|
|
213
213
|
},
|
|
214
214
|
{
|
|
@@ -218,7 +218,7 @@
|
|
|
218
218
|
},
|
|
219
219
|
{
|
|
220
220
|
"name": "loading",
|
|
221
|
-
"description": "Estado de carregamento
|
|
221
|
+
"description": "Estado de carregamento atual. Quando informado, tem precedência sobre `isLoading`.",
|
|
222
222
|
"values": []
|
|
223
223
|
},
|
|
224
224
|
{
|
|
@@ -271,7 +271,7 @@
|
|
|
271
271
|
},
|
|
272
272
|
{
|
|
273
273
|
"name": "br-card",
|
|
274
|
-
"description": "O
|
|
274
|
+
"description": "O `br-card` agrupa conteúdos sobre um mesmo assunto em um bloco destacado, como um serviço, uma notícia ou um resultado de busca.\n\nOrganize o conteúdo nos slots `media`, `header`, `content` e `footer`, ou coloque tudo no slot padrão.\n\n```html\n<br-card>\n <img slot=\"media\" src=\"/imagens/servico.jpg\" alt=\"\" />\n <h3 slot=\"header\">Carteira de Trabalho Digital</h3>\n <p slot=\"content\">Consulte seus vínculos de emprego.</p>\n <br-button slot=\"footer\" emphasis=\"secondary\">Acessar</br-button>\n</br-card>\n```\n\nUse `interactive` quando o card inteiro for clicável, para dar o retorno visual ao passar o mouse.\n\n### Quando usar\n\n- Blocos independentes exibidos em grade ou lista.\n- Conteúdo que combina imagem, título, texto e ações.\n\n### Quando evitar\n\n- Dados para comparar em linhas e colunas: use `br-table`.\n- Uma lista simples de textos ou links: use `br-list`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/card?tab=designer).\n---\n\n\n### **Slots:**\n - **default** - Slot para conteúdo livre do card, quando não usar a estrutura de slots nomeados.\n- **media** - Slot para conteúdo de mídia exibido antes do cabeçalho.\n- **header** - Slot para o conteúdo do cabeçalho do card.\n- **content** - Slot para o corpo principal do card ao usar a estrutura de slots.\n- **footer** - Slot para o conteúdo do rodapé do card.\n\n### **CSS Parts:**\n - **wrapper** - Área principal do card.\n- **media** - Área de mídia do card.\n- **header** - Área do cabeçalho.\n- **content** - Área do conteúdo principal.\n- **footer** - Área do rodapé.",
|
|
275
275
|
"attributes": [
|
|
276
276
|
{
|
|
277
277
|
"name": "custom-id",
|
|
@@ -298,7 +298,7 @@
|
|
|
298
298
|
},
|
|
299
299
|
{
|
|
300
300
|
"name": "br-carousel",
|
|
301
|
-
"description": "O
|
|
301
|
+
"description": "O `br-carousel` mostra uma sequência de slides, um por vez, com botões de anterior e próximo e indicadores de posição.\n\nColoque cada slide em um `br-carousel-page` e dê um nome ao carrossel com `aria-label`.\n\n```html\n<br-carousel aria-label=\"Destaques\">\n <br-carousel-page>\n <img src=\"/imagens/campanha.jpg\" alt=\"Campanha de vacinação\" />\n </br-carousel-page>\n <br-carousel-page>\n <p>Atualize seu cadastro até 30 de junho.</p>\n </br-carousel-page>\n</br-carousel>\n```\n\nPara ouvir a troca de slide, use `brCarouselPageChange`; `detail.activePage` começa em 1.\n\n### Quando usar\n\n- Imagens ou avisos com a mesma importância, em espaço limitado.\n\n### Quando evitar\n\n- Informação essencial para a tarefa: mostre tudo de uma vez, por exemplo em uma grade de `br-card`.\n- Etapas de um formulário: use `br-wizard` ou `br-step`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/carousel?tab=designer).\n---\n\n\n### **Events:**\n - **brDidPageChange** - Emitido quando o slide ativo muda.\nDisparado por clique nos botões de navegação, clique no indicador de step,\ngesto swipe (apenas em mobile, breakpoint < 576px) ou avanço automático.\n`activePage` é 1-based: o primeiro slide emite `1`, o segundo `2`, e assim por diante.\n- **brCarouselPageChange** - Evento emitido quando o slide ativo muda.\n- **brDidAutoPlayStart** - Emitido quando a reprodução automática é iniciada ou retomada.\n- **brCarouselAutoplayStart** - Evento emitido quando a reprodução automática começa.\n- **brDidAutoPlayPause** - Emitido quando a reprodução automática é pausada.\n- **brCarouselAutoplayPause** - Evento emitido quando a reprodução automática é pausada.\n\n### **Methods:**\n - **onTablistKeydown(e: _KeyboardEvent_)** - Navegação por teclado para o modo tablist (`indicatorType=\"simple\"`).\n\nO W3C APG Carousel Pattern especifica que, quando os controles de seleção de slide\nsão implementados como tabs, a interação de teclado segue o\nhttps://www.w3.org/WAI/ARIA/apg/patterns/tabs/ Tabs Pattern (W3C APG).\nEsse padrão define o comportamento de roving tabindex com as teclas:\n- `ArrowLeft` / `ArrowRight` (ou `ArrowUp` / `ArrowDown`): move o foco entre as tabs.\n- `Home`: move o foco para a primeira tab.\n- `End`: move o foco para a última tab.\n\nO handler está no `br-carousel` (e não no `br-step`) porque a lógica de\n`effectiveCircular` é uma responsabilidade do carrossel, mantendo uma única\nfonte de verdade para a navegação circular.\n\nO evento `keydown` é composto (`composed: true`), portanto borbulha através do\nshadow DOM do `br-step-item` até o host do `br-carousel`.\n- **nextPage(): _Promise<void>_** - Avança para o próximo slide. Respeita a prop `isCircular` (ou ativo automaticamente com `autoPlay`).\n- **previousPage(): _Promise<void>_** - Retorna ao slide anterior. Respeita a prop `isCircular` (ou ativo automaticamente com `autoPlay`).\n- **goToPage(index: _number_): _Promise<void>_** - Navega para o slide de número `index` (1 = primeiro slide, 2 = segundo, …).\nValores fora do intervalo válido são ignorados.\n- **getActivePage(): _Promise<number>_** - Retorna o número do slide atualmente ativo (1 = primeiro slide, 2 = segundo, …).\n- **play(): _Promise<void>_** - Inicia ou retoma a reprodução automática programaticamente.\n- **pause(): _Promise<void>_** - Pausa a reprodução automática programaticamente.\n- **getIsPlaying(): _Promise<boolean>_** - Retorna `true` se a reprodução automática está ativa no momento.\n\n### **Slots:**\n - **default** - Slot para os slides do carrossel. Aceita exclusivamente elementos `br-carousel-page`.\n\n### **CSS Parts:**\n - **container** - Elemento raiz do carrossel. Recebe `role=\"region\"` e `aria-roledescription=\"carousel\"`.\n- **stage** - Área do palco que contém os slides. Recebe `aria-live` e `aria-atomic`.\n- **nav-prev** - Wrapper do botão de navegação para o slide anterior.\n- **nav-next** - Wrapper do botão de navegação para o próximo slide.\n- **indicator** - Wrapper do indicador de páginas. - Quando `indicatorType=\"simple\"`: renderiza `br-step` em `mode=\"tablist\"`. - Quando `indicatorType=\"textual\"`: renderiza um `span[aria-live]` com \"X/N\".\n- **play-button** - Wrapper do botão de play/pause. Presente apenas quando `autoPlay=true`.",
|
|
302
302
|
"attributes": [
|
|
303
303
|
{
|
|
304
304
|
"name": "custom-id",
|
|
@@ -390,7 +390,7 @@
|
|
|
390
390
|
},
|
|
391
391
|
{
|
|
392
392
|
"name": "br-carousel-page",
|
|
393
|
-
"description": "
|
|
393
|
+
"description": "Representa um slide do `br-carousel`. Use somente dentro dele.\n\nColoque no slide a imagem, o texto e as ações. Para começar em um slide que não seja o primeiro, marque-o com `active`; depois disso, o `br-carousel` controla o slide ativo.\n---\n\n\n### **Methods:**\n - **setLabel(defaultLabel: _string_): _Promise<void>_** - Define o label acessível (`aria-label`) do slide.\n\nChamado pelo `br-carousel` pai para aplicar o label gerado automaticamente\ncom base na posição do slide (ex: `\"Slide 1 de 3\"`).\n\nO `aria-label` declarado diretamente no elemento tem prioridade:\nse o consumidor definir `aria-label` no HTML ou via `setAttribute`,\nesse valor será mantido e o parâmetro `defaultLabel` será ignorado.\n- **setActive(active: _boolean_): _Promise<void>_** - Ativa ou desativa o slide.\n\n### **Slots:**\n - **default** - Qualquer conteúdo: imagens, textos, cards, vídeos, outros componentes do Design System.\n\n### **CSS Parts:**\n - **content** - Wrapper interno do conteúdo do slide.",
|
|
394
394
|
"attributes": [
|
|
395
395
|
{
|
|
396
396
|
"name": "custom-id",
|
|
@@ -407,7 +407,7 @@
|
|
|
407
407
|
},
|
|
408
408
|
{
|
|
409
409
|
"name": "br-checkbox",
|
|
410
|
-
"description": "O
|
|
410
|
+
"description": "O `br-checkbox` marca ou desmarca uma opção independente. Funciona em formulários como um `<input type=\"checkbox\">`: é enviado com `name` e `value` quando está marcado.\n\n```html\n<br-checkbox name=\"termos\" value=\"aceito\" label=\"Li e aceito os termos\" required></br-checkbox>\n```\n\nUse `indeterminate` para indicar seleção parcial, por exemplo em um \"selecionar todos\" quando só parte dos itens está marcada.\n\n### Quando usar\n\n- Opções em que escolher uma não impede escolher outra.\n- Confirmar uma condição, como aceitar termos.\n\n### Quando evitar\n\n- Só uma opção pode ser escolhida: use `br-radio-group`.\n- A mudança vale na hora, sem enviar formulário: use `br-switch`.\n- Muitas opções em pouco espaço: use `br-select` com `multiple`.\n\nPara várias opções da mesma pergunta, agrupe-as em um `br-checkbox-group`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/checkbox?tab=designer).\n---\n\n\n### **Events:**\n - **checkedChange** - Disparado depois que o valor do `checked` foi alterado.\n- **indeterminateChange** - Disparado depois que o valor do `indeterminate` foi alterado.\n- **brCheckboxValidationChange** - Emitido ao iniciar e concluir a validação customizada.\n\n### **Methods:**\n - **checkValidity(): _Promise<boolean>_** - Retorna `true` se o valor do checkbox for válido, caso contrário `false`.\nSe o checkbox for inválido, dispara um evento 'invalid'.\n- **reportValidity(): _Promise<boolean>_** - Retorna `true` se o valor do checkbox for válido, caso contrário `false`.\nSe for inválido, exibe a mensagem de erro padrão do navegador.\n- **setCustomValidity(message: _string_): _Promise<void>_** - Define uma mensagem de validação customizada para o checkbox.\nSe a mensagem for uma string vazia, o erro customizado é limpo.\n- **validate(): _Promise<boolean>_** - Executa o validator do checkbox e retorna se o valor atual é válido.\n- **getValidationState(): _Promise<FormValidationState>_** - Retorna um snapshot serializável da Constraint Validation API.\n- **setIndeterminate(value: _boolean_)** - Define o estado indeterminado do checkbox.\n- **toggleChecked()** - @deprecated Atualize a propriedade `checked` diretamente. - Inverte o valor da prop `checked`\n- **setNumberOfChildren(value: _number_)** - Define o número de checkboxes filhos em um grupo de checkboxes.\n\n### **Slots:**\n - **default** - Slot para o rótulo do checkbox, como alternativa à propriedade label.\n- **feedback** - Mensagem de validação, normalmente um `br-message`.\n\n### **CSS Parts:**\n - **container** - Contêiner visual do checkbox.\n- **input** - Elemento input nativo do checkbox.\n- **label** - Rótulo do checkbox.\n- **feedback** - Contêiner da mensagem de validação.",
|
|
411
411
|
"attributes": [
|
|
412
412
|
{
|
|
413
413
|
"name": "indeterminate",
|
|
@@ -466,7 +466,7 @@
|
|
|
466
466
|
},
|
|
467
467
|
{
|
|
468
468
|
"name": "feedback-state",
|
|
469
|
-
"description": "Estado de feedback
|
|
469
|
+
"description": "Estado de feedback. Quando informado, tem precedência sobre `state`.",
|
|
470
470
|
"values": [{ "name": "valid" }, { "name": "invalid" }]
|
|
471
471
|
},
|
|
472
472
|
{
|
|
@@ -484,7 +484,7 @@
|
|
|
484
484
|
},
|
|
485
485
|
{
|
|
486
486
|
"name": "br-checkbox-group",
|
|
487
|
-
"description": "O
|
|
487
|
+
"description": "O `br-checkbox-group` reúne checkboxes da mesma pergunta e adiciona um checkbox \"Selecionar tudo\" no topo.\n\nO \"Selecionar tudo\" marca ou desmarca todas as opções e fica em estado parcial quando só algumas estão marcadas. O `label` vira a legenda do grupo para leitores de tela.\n\n```html\n<br-checkbox-group label=\"Receber notificações por\">\n <br-checkbox name=\"canais\" value=\"email\" label=\"E-mail\"></br-checkbox>\n <br-checkbox name=\"canais\" value=\"sms\" label=\"SMS\"></br-checkbox>\n <br-checkbox name=\"canais\" value=\"app\" label=\"Aplicativo\"></br-checkbox>\n</br-checkbox-group>\n```\n\nUse `orientation=\"horizontal\"` para as opções lado a lado, e `select-all-label` e `unselect-all-label` para trocar os textos do \"Selecionar tudo\".\n\n### Quando usar\n\n- Várias opções independentes que respondem à mesma pergunta.\n\n### Quando evitar\n\n- Um único checkbox, como aceite de termos: use só o `br-checkbox`.\n- Apenas uma opção pode ser escolhida: use `br-radio-group`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/checkgroup?tab=designer).\n---\n\n\n### **Slots:**\n - **default** - Slot para adicionar os checkboxes controlados pelo grupo.",
|
|
488
488
|
"attributes": [
|
|
489
489
|
{
|
|
490
490
|
"name": "disabled",
|
|
@@ -526,7 +526,7 @@
|
|
|
526
526
|
},
|
|
527
527
|
{
|
|
528
528
|
"name": "br-checkgroup",
|
|
529
|
-
"description": "@deprecated Use `br-checkbox-group`.\n\
|
|
529
|
+
"description": "@deprecated Use `br-checkbox-group`.\n\nNome antigo do `br-checkbox-group`, mantido para compatibilidade. Em código novo, use `br-checkbox-group`.\n---\n\n\n### **Slots:**\n - **default** - Slot para adicionar os checkboxes controlados pelo grupo.",
|
|
530
530
|
"attributes": [
|
|
531
531
|
{
|
|
532
532
|
"name": "label",
|
|
@@ -573,7 +573,7 @@
|
|
|
573
573
|
},
|
|
574
574
|
{
|
|
575
575
|
"name": "br-collapse",
|
|
576
|
-
"description": "O
|
|
576
|
+
"description": "O `br-collapse` mostra e esconde um bloco de conteúdo ao clicar no título. Funciona como um `<details>`.\n\n```html\n<br-collapse>\n <span slot=\"trigger\">Quem pode solicitar?</span>\n <p>Qualquer pessoa com CPF regular.</p>\n</br-collapse>\n```\n\nUse `open` para começar aberto. Para que só um item fique aberto por vez (sanfona), dê o mesmo `accordion-group` a todos:\n\n```html\n<br-collapse accordion-group=\"faq\">…</br-collapse>\n<br-collapse accordion-group=\"faq\">…</br-collapse>\n```\n\nOs ícones de abrir e fechar podem ser trocados por `icon-to-show` e `icon-to-hide`, como propriedade ou como slot.\n\n### Quando usar\n\n- Perguntas frequentes e conteúdos longos divididos em tópicos.\n- Seções opcionais de um formulário longo.\n\n### Quando evitar\n\n- Informação essencial, que precisa ficar sempre visível.\n- Alternar entre visões diferentes da mesma tela: use `br-tab`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/collapse?tab=designer).\n---\n\n\n### **Events:**\n - **brDidOpen** - Emitido ao expandir, com o identificador e o grupo de accordion.\n- **brCollapseOpen** - Evento emitido ao expandir.\n- **brDidClose** - Emitido ao recolher, com o identificador e o grupo de accordion.\n- **brCollapseClose** - Evento emitido ao recolher.\n\n### **Methods:**\n - **openCollapse()** - @deprecated Atualize a propriedade `open`. - Abre o collapse programaticamente.\n- **closeCollapse()** - @deprecated Atualize a propriedade `open`. - Fecha o collapse programaticamente.\n- **toggle(): _Promise<void>_** - Alterna o estado aberto.\nO elemento também redispara o evento nativo `toggle` no host; essa ocorrência é sintética (`isTrusted === false`).\n- **render()** - Renderiza o <details> com acionador e conteúdo expansível.\n\n### **Slots:**\n - **default** - Slot para o conteúdo expansível exibido ao abrir o collapse.\n- **trigger** - Slot para personalizar o acionador (texto, ícones, imagens, etc.).\n- **icon-to-show** - Ícone exibido quando o conteúdo está oculto (ex.: `<i slot=\"icon-to-show\" class=\"fas fa-plus\"></i>`). Forma preferida para ícones por classe CSS; tem precedência sobre a prop `iconToShow`.\n- **icon-to-hide** - Ícone exibido quando o conteúdo está visível. Forma preferida para ícones por classe CSS; tem precedência sobre a prop `iconToHide`.\n\n### **CSS Parts:**\n - **details** - Elemento details nativo do collapse.\n- **trigger** - Acionador (summary) do collapse.\n- **content** - Área de conteúdo expansível.",
|
|
577
577
|
"attributes": [
|
|
578
578
|
{
|
|
579
579
|
"name": "custom-id",
|
|
@@ -635,7 +635,7 @@
|
|
|
635
635
|
},
|
|
636
636
|
{
|
|
637
637
|
"name": "br-cookiebar",
|
|
638
|
-
"description": "O
|
|
638
|
+
"description": "O `br-cookiebar` avisa sobre o uso de cookies e registra o consentimento da pessoa, por categoria e por cookie.\n\nEle aparece como uma barra no rodapé (`mode=\"default\"`) e abre um painel com as categorias quando a pessoa escolhe \"Definir Cookies\" (`mode=\"open\"`).\n\n### Como usar\n\n1. Escreva o texto da barra em `info-text`.\n2. Coloque o título e a introdução do painel em um `br-cookiebar-header`.\n3. Crie um `br-cookiebar-group` por categoria e, dentro dele, um `br-cookiebar-cookie` por cookie. Use `group-opt-out=\"false\"` nas categorias que não podem ser desativadas.\n4. Adicione os links de política em `br-cookiebar-link`, no slot `links`.\n5. Ouça `brCookiebarResponse` para salvar a escolha e ative `show` somente enquanto não houver escolha salva.\n\n```html\n<br-cookiebar info-text=\"Usamos cookies para melhorar sua experiência.\">\n <br-cookiebar-header slot=\"header\" main-title=\"Aviso de cookies\" entry-text=\"Escolha quais cookies aceitar.\"></br-cookiebar-header>\n\n <br-cookiebar-group group-id=\"necessarios\" group-name=\"Necessários\" group-text=\"Essenciais para o site funcionar.\" group-opt-out=\"false\">\n <br-cookiebar-cookie cookie-id=\"sessao\" cookie-name=\"sessao\" expires=\"Ao fechar o navegador\" domain=\"exemplo.gov.br\" enterprise=\"Próprio\" purpose=\"Manter a sessão\" description=\"Identifica a sessão de acesso.\"></br-cookiebar-cookie>\n </br-cookiebar-group>\n\n <br-cookiebar-link slot=\"links\" name=\"Política de privacidade\" href=\"/privacidade\"></br-cookiebar-link>\n</br-cookiebar>\n```\n\n```js\nconst cookiebar = document.querySelector('br-cookiebar');\ncookiebar.show = !localStorage.getItem('consentimento');\ncookiebar.addEventListener('brCookiebarResponse', (event) => {\n localStorage.setItem('consentimento', JSON.stringify(event.detail));\n});\n```\n\n`event.detail` traz o estado de cada categoria (`cookieGroups`) e de cada cookie (`cookieList`). Para reabrir o painel depois, por exemplo num link \"Preferências de cookies\", chame `openPanel()`.\n\n### Quando evitar\n\n- Avisos que não tratam de consentimento: use `br-message` ou `br-notification`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/cookiebar?tab=designer).\n---\n\n\n### **Events:**\n - **brCookiebarShow** - Emitido quando o componente se torna visível (`show` → true).\n- **brCookiebarHide** - Emitido quando o componente é ocultado (`show` → false).\n- **brCookiebarOpen** - Emitido quando o painel expande para modo open.\n- **brCookiebarClose** - Emitido quando o painel recolhe para modo default.\n- **brCookiebarAccept** - Sinal emitido quando o usuário clica em Aceitar.\nNão carrega payload — ouça `brCookiebarResponse` para obter o estado completo de consentimento.\n- **brCookiebarReject** - Sinal emitido quando o usuário clica em \"Rejeitar não obrigatórios\".\nNão carrega payload — ouça `brCookiebarResponse` para obter o estado completo de consentimento.\n- **brCookiebarResponse** - Emitido após `brCookiebarAccept` ou `brCookiebarReject`, com o estado final de consentimento.\nÉ o único evento que carrega `CookiebarOutputData` — use-o para persistir o consentimento\n(localStorage, cookie HTTP, API etc.).\nNão é disparado durante interações com checkboxes e switches internos.\n- **brCookiebarPolicyClick** - Emitido quando o usuário clica no botão secundário no modo opt-in (`allOptOut=false`).\nO consumidor é responsável por navegar para a página de Política de Cookies.\n\n### **Methods:**\n - **handleShowChange(newValue: _boolean_)** - Observa mudanças em `show`.\nAo exibir o componente, garante que o modo inicial seja sempre `default` e emite `brCookiebarShow`.\nCom `scrim=true`, aplica `inert` nos irmãos e registra o trap de foco.\nCom `scrim=false`, o usuário pode navegar livremente pela página (WCAG 2.1.2).\nAo ocultar, emite `brCookiebarHide`.\n- **handleModeChange(newValue: _CookiebarMode_)** - Observa mudanças em `mode`.\nAo entrar em modo `open`, emite `brCookiebarOpen`, aplica `inert` nos irmãos e move o foco\npara o botão fechar (trap focus modal).\nAo sair do modo `open`, emite `brCookiebarClose` e — se `scrim=true` — reaplica `inert`\ne o listener de trap para o painel default. Sem scrim, nenhum trap é ativado.\n- **handleSelectAllPropChange(newValue: _boolean_)** - Observa mudanças externas na prop `selectAll`.\nSincroniza o estado interno do checkbox e propaga o valor para todos os grupos opt-out.\n- **handleGroupChange()** - Escuta o evento `brCookiebarGroupChange` emitido por qualquer `br-cookiebar-group` filho.\nApenas recalcula o estado visual do checkbox \"Selecionar tudo\" — não emite `brCookiebarResponse`.\nO evento de resposta completo é emitido somente ao clicar em Aceitar ou Rejeitar.\n- **openDefault(): _Promise<void>_** - Exibe o cookiebar no modo `default` (barra inferior).\n- **openPanel(): _Promise<void>_** - Exibe o cookiebar diretamente no modo `open` (painel de tela cheia).\n- **close(): _Promise<void>_** - Oculta o cookiebar.\n- **getSelectedCookies(): _Promise<CookiebarOutputData>_** - Retorna o JSON com o estado atual de seleção de todos os grupos e cookies.\n\n### **Slots:**\n - **default** - Recebe os subcomponentes `br-cookiebar-group`, `br-cookiebar-note-group` e `br-cookiebar-note`.\n- **header** - Recebe `br-cookiebar-header` ou HTML livre.\n- **links** - Recebe links complementares (`br-cookiebar-link` ou elementos `<a>` livres).\n- **actions** - Recebe botões de ação. Se vazio, o componente renderiza os botões padrão.\n\n### **CSS Parts:**\n - **container** - Container raiz do componente.\n- **default-panel** - Painel fechado (modo default).\n- **open-panel** - Painel expandido (modo open).\n- **header** - Cabeçalho do painel aberto.\n- **body** - Corpo do painel aberto (com rolagem).\n- **footer** - Rodapé com botões de ação.\n- **scrim** - Camada de sobreposição opcional.",
|
|
639
639
|
"attributes": [
|
|
640
640
|
{
|
|
641
641
|
"name": "custom-id",
|
|
@@ -742,7 +742,7 @@
|
|
|
742
742
|
},
|
|
743
743
|
{
|
|
744
744
|
"name": "br-cookiebar-cookie",
|
|
745
|
-
"description": "
|
|
745
|
+
"description": "Descreve um cookie dentro de um `br-cookiebar-group`: nome, validade, domínio, empresa responsável, finalidade e descrição.\n\nUse `cookie-opt-out=\"false\"` quando o cookie não puder ser desativado.\n---\n\n\n### **Events:**\n - **brCookiebarCookieChange** - Emitido ao ligar/desligar o switch.\nBorbulha até o `br-cookiebar-group` pai para recalcular o estado do grupo.\n\n### **Slots:**\n - **default** - Área livre para inserir conteúdo personalizado abaixo dos itens do cookie.\n\n### **CSS Parts:**\n - **card** - Container principal do cookie.\n- **switch** - Área que contém o switch de ativação.\n- **details** - Wrapper interno com o switch, alerta e lista de itens.",
|
|
746
746
|
"attributes": [
|
|
747
747
|
{
|
|
748
748
|
"name": "custom-id",
|
|
@@ -854,7 +854,7 @@
|
|
|
854
854
|
},
|
|
855
855
|
{
|
|
856
856
|
"name": "br-cookiebar-group",
|
|
857
|
-
"description": "
|
|
857
|
+
"description": "Uma categoria de cookies dentro do `br-cookiebar`, como \"Necessários\" ou \"Estatísticas\". Contém um `br-cookiebar-cookie` para cada cookie.\n\nInforme `group-id`, `group-name` e `group-text`. Use `group-opt-out=\"false\"` quando a categoria não puder ser desativada: ela aparece como \"Sempre ativo\".\n---\n\n\n### **Events:**\n - **brCookiebarGroupChange** - Emitido quando o estado de seleção do grupo muda (por interação do usuário ou propagação).\nO `br-cookiebar` pai escuta este evento para recalcular o checkbox \"Selecionar todos\".\n- **brCookiebarGroupToggle** - Emitido ao expandir ou recolher a lista de cookies do grupo.\n\n### **Methods:**\n - **handleGroupSelectedChange(newValue: _boolean_)** - Observa mudanças externas em `groupSelected` (propagação top-down do `br-cookiebar`).\nPropaga o novo valor para todos os cookies opt-out filhos e atualiza os contadores.\nIgnorado quando a mudança é originada internamente pelo recálculo bottom-up.\n- **handleCookieChange()** - Escuta o evento `brCookiebarCookieChange` emitido por qualquer `br-cookiebar-cookie` filho.\nRecalcula o estado do grupo (marcado / desmarcado / indeterminado) com base\nno estado atual de todos os cookies opt-out. Ignorado durante propagações top-down.\n- **getState(): _Promise<CookiebarSelectionState>_** - Retorna o estado atual de seleção do grupo:\n- `true`: todos os cookies opt-out estão selecionados.\n- `false`: nenhum cookie opt-out está selecionado.\n- `'indeterminate'`: seleção parcial.\n\n### **Slots:**\n - **default** - Recebe os subcomponentes `br-cookiebar-cookie` do grupo.\n\n### **CSS Parts:**\n - **container** - Div raiz do grupo.\n- **header** - Linha de cabeçalho com nome, contadores e controles.\n- **body** - Área expansível que contém os cookies.",
|
|
858
858
|
"attributes": [
|
|
859
859
|
{
|
|
860
860
|
"name": "custom-id",
|
|
@@ -916,7 +916,7 @@
|
|
|
916
916
|
},
|
|
917
917
|
{
|
|
918
918
|
"name": "br-cookiebar-header",
|
|
919
|
-
"description": "
|
|
919
|
+
"description": "Título e texto de introdução do painel do `br-cookiebar`. Use no slot `header` do cookiebar.\n\nInforme `main-title`, `entry-text` e, se quiser, a data em `last-update`. Para outro layout, coloque seu próprio conteúdo dentro do componente.\n---\n\n\n### **Slots:**\n - **default** - Conteúdo HTML personalizado que substitui o layout estruturado. Quando preenchido, as props `main-title`, `entry-text` e `last-update` são ignoradas.\n\n### **CSS Parts:**\n - **container** - Div raiz do cabeçalho.",
|
|
920
920
|
"attributes": [
|
|
921
921
|
{
|
|
922
922
|
"name": "custom-id",
|
|
@@ -948,7 +948,7 @@
|
|
|
948
948
|
},
|
|
949
949
|
{
|
|
950
950
|
"name": "br-cookiebar-link",
|
|
951
|
-
"description": "
|
|
951
|
+
"description": "Link do `br-cookiebar` para a política de privacidade ou os termos de uso. Use no slot `links` do cookiebar.\n\nInforme `name` e `href`. Em SPA, use `navigation-mode=\"event\"` e trate o evento `brNavigate`.\n---\n\n\n### **Events:**\n - **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n\n### **CSS Parts:**\n - **link** - Elemento âncora (`<a>`) do link.",
|
|
952
952
|
"attributes": [
|
|
953
953
|
{
|
|
954
954
|
"name": "custom-id",
|
|
@@ -980,7 +980,7 @@
|
|
|
980
980
|
},
|
|
981
981
|
{
|
|
982
982
|
"name": "br-cookiebar-note",
|
|
983
|
-
"description": "
|
|
983
|
+
"description": "Uma pergunta e resposta complementar no painel do `br-cookiebar`. Informe `question` e `answer`.\n\nPara reunir várias notas, coloque-as em um `br-cookiebar-note-group`.\n---\n\n\n### **CSS Parts:**\n - **container** - Div raiz do item.\n- **question** - Parágrafo da pergunta.\n- **answer** - Parágrafo da resposta.",
|
|
984
984
|
"attributes": [
|
|
985
985
|
{
|
|
986
986
|
"name": "custom-id",
|
|
@@ -998,7 +998,7 @@
|
|
|
998
998
|
},
|
|
999
999
|
{
|
|
1000
1000
|
"name": "br-cookiebar-note-group",
|
|
1001
|
-
"description": "
|
|
1001
|
+
"description": "Agrupa notas do `br-cookiebar` em uma seção que pode ser expandida. O título vem de `note-title`.\n\nColoque dentro dele elementos `br-cookiebar-note` ou outro conteúdo.\n---\n\n\n### **Events:**\n - **brCookiebarNoteGroupToggle** - Emitido ao expandir ou recolher a seção.\n\n### **Slots:**\n - **default** - Recebe `br-cookiebar-note` ou qualquer conteúdo HTML livre.\n\n### **CSS Parts:**\n - **container** - Div raiz do grupo.\n- **header** - Cabeçalho acessível que expande ou recolhe o conteúdo.\n- **content** - Área de conteúdo exibida quando o grupo está expandido.",
|
|
1002
1002
|
"attributes": [
|
|
1003
1003
|
{
|
|
1004
1004
|
"name": "custom-id",
|
|
@@ -1020,21 +1020,21 @@
|
|
|
1020
1020
|
},
|
|
1021
1021
|
{
|
|
1022
1022
|
"name": "br-datetime-picker",
|
|
1023
|
-
"description": "O
|
|
1023
|
+
"description": "O `br-datetime-picker` é um campo para informar data, hora ou data e hora. A pessoa pode digitar ou escolher no calendário e nos controles de horário.\n\nEscolha o tipo em `mode`: `date`, `time` ou `datetime`. Para início e fim, use `selection-mode=\"range\"`.\n\n```html\n<br-datetime-picker mode=\"date\" name=\"nascimento\" required></br-datetime-picker>\n\n<br-datetime-picker mode=\"date\" selection-mode=\"range\" name=\"periodo\"></br-datetime-picker>\n```\n\n### Ler o valor\n\n| Onde | Formato |\n| --- | --- |\n| `value` | `Date` (ou `null`) |\n| `rangeValue` | `{ start, end }` com `Date` |\n| `serialized-value` e envio do formulário | `2026-05-20` (data), `14:30` (hora), `2026-05-20T14:30:00-03:00` (data e hora), `início/fim` (intervalo) |\n\nAtribua valores do tipo `Date` pelo JavaScript (`picker.value = new Date()`), não por atributo. Para restringir datas, use `min`, `max` e `disabled-dates`.\n\n### Quando usar\n\n- Formulários que pedem uma data, um horário ou um período.\n\n### Quando evitar\n\n- Para só exibir uma data: use texto formatado.\n- Para escolher várias datas soltas: o componente aceita uma data ou um intervalo.\n\nO calendário (`br-date-picker`), os controles de horário (`br-time-picker`) e o campo de texto (`br-datetime-input`) são criados pelo próprio componente; não é preciso declará-los.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/datetimepicker?tab=designer).\n---\n\n\n### **Events:**\n - **dateStateChange** - Evento público emitido quando a data de referência ou a seleção mudam.\n\nPayload (`DatetimePickerDateState`):\n- `referenceDate`: Date — data usada para navegação visual (mês/semana exibidos).\n- `value`: Date | null — valor selecionado atualmente.\n- **brDatetimePickerChange** - Evento emitido quando a seleção muda.\n\nPayload (`DatetimePickerChangeDetail`):\n- `mode`: DatetimePickerMode — modo atual do componente (`date` | `time` | `datetime`).\n- `selectionMode`: DatetimePickerSelectionMode — `single` ou `range`.\n- `value`: Date | null | DatetimePickerDateRange — seleção atual (tipo depende de `selectionMode`).\n- `serializedValue`: string | undefined — representação serializada para integração com formulários.\n- **valueChange** - Evento emitido quando o valor selecionado muda.\n- **brDatetimePickerValidationChange** - Emitido ao iniciar e concluir a validação customizada.\n\nPayload (`FormValidationChangeDetail`):\n- `validating`: boolean — indica se a validação está em execução.\n- `valid`: boolean | null — resultado da validação (`null` enquanto valida).\n- `message`: string | null — mensagem de validação associada.\n\n### **Methods:**\n - **handleModeChange(newValue: _string_)** - Revalida o modo sempre que a prop mudar.\n- **handleRequiredChange()** - Revalida o estado do formulário quando required mudar.\n- **handleDisabledChange()** - Exclui o valor do FormData enquanto o componente estiver desabilitado.\n- **handleSelectionModeChange(newValue: _DatetimePickerSelectionMode_)** - Reage a mudanças no modo de seleção e limpa intervalo quando necessário.\n- **handleWeekStartsOnChange(newValue: _DatetimePickerWeekDayIndex_)** - Revalida o dia inicial da semana sempre que a prop mudar.\n- **handleInitialMomentChange(newValue: _DatetimePickerInitialMoment_)** - Aplica ou limpa a seleção da data atual conforme o novo valor da prop.\n- **handleValueChange(newValue: _Date | null_)** - Sincroniza alterações externas do valor com o estado visual e o formulário nativo.\n- **handleSerializedValueChange(newValue: _string_)** - Converte alterações externas no valor serializado sem mudar o tipo da prop legada `value`.\n- **handleValueAsDateChange(newValue: _Date | null_)** - Mantém `valueAsDate` e a prop legada `value` apontando para o mesmo estado observável.\n- **handleDisabledDatesChange(newValue: _DatetimePickerDisabledDates_)** - Recalcula a lista de datas desabilitadas quando a prop mudar.\n- **formResetCallback()** - Restaura o estado do componente quando o formulário é restaurado.\n- **formStateRestoreCallback(state: _string | File | FormData | null_)** - Restaura o estado do formulário (autofill / histórico).\n- **setDisabledDates(dates: _DatetimePickerDisabledDate[] | null_): _Promise<void>_** - Define programaticamente as datas desabilitadas.\n\nUse quando scripts externos precisam fornecer uma lista tipada de\ndatas a bloquear no calendário. Substitui a prop `disabledDates` para\natualizações imperativas.\n- **setValue(value: _Date | string | null_): _Promise<void>_** - Define o valor do componente de forma imperativa.\n\nAceita `Date`, string compatível com o `mode`, ou `null` para limpar a seleção.\nValidação de datas desabilitadas é aplicada antes da atribuição.\n- **getValue(): _Promise<Date | null>_** - Retorna uma cópia do valor selecionado atualmente.\n- **clear(): _Promise<void>_** - Limpa valor e intervalo selecionados.\n\nRemove seleção atual e restaura a referência de navegação para a data atual.\n- **open(): _Promise<void>_** - Abre o picker quando o componente estiver habilitado.\n- **close(): _Promise<void>_** - Fecha o picker.\n- **toggle(): _Promise<void>_** - Alterna o estado de abertura do picker.\n- **focusInput(): _Promise<void>_** - Move o foco para o input nativo interno.\n- **setRange(start: _Date | string | null_, end: _Date | string | null_): _Promise<void>_** - Define um intervalo no modo atual e ativa `selectionMode=\"range\"`.\n\nValida datas contra bloqueios e sincroniza estado visual e de formulário.\nEm `datetime`, mantém os limites informados e sinaliza intervalo inválido\nquando o término precede o início, sem ajustar datas automaticamente.\n- **getRange(): _Promise<{ start: Date | null; end: Date | null } | null>_** - Retorna o intervalo de datas selecionado quando em modo `selectionMode=\"range\"`.\n- **isOpen(): _Promise<boolean>_** - Consulta se o picker está atualmente aberto.\n- **resetToInitial(): _Promise<void>_** - Restaura o estado inicial atualmente registrado para reset.\n- **checkValidity(): _Promise<boolean>_** - Permite que consumidores acionem validação nativa do formulário via host.\n- **reportValidity(): _Promise<boolean>_** - Permite exibir mensagens nativas de validação no host.\n- **setCustomValidity(message: _string_): _Promise<void>_** - Define ou limpa uma mensagem de validade customizada.\n- **validate(): _Promise<boolean>_** - Executa o validator customizado (se houver) e valida o controle.\n\nEmite eventos de início/conclusão da validação e atualiza mensagens internas.\n- **getValidationState(): _Promise<FormValidationState>_** - Retorna um snapshot serializável da Constraint Validation API.\n- **render()** - Renderização principal do componente.\n\n### **Slots:**\n - **feedback** - Mensagem de validação, normalmente um `br-message`.\n\n### **CSS Parts:**\n - **container** - Parte para o container base do seletor.\n- **panel** - Parte para o painel em forma de card que engloba o seletor.\n- **input-container** - Container base do campo de entrada interno.\n- **input-field** - Campo textual interno.\n- **input-icon** - Ícone de ação (calendário/relógio).\n- **feedback** - Contêiner da mensagem de validação.",
|
|
1024
1024
|
"attributes": [
|
|
1025
1025
|
{
|
|
1026
1026
|
"name": "mode",
|
|
1027
|
-
"description": "
|
|
1027
|
+
"description": "Modo exibido pelo componente.\n\nValores: `date` | `time` | `datetime`.\nValores inválidos são normalizados para o padrão.",
|
|
1028
1028
|
"values": [{ "name": "DatetimePickerMode" }]
|
|
1029
1029
|
},
|
|
1030
1030
|
{
|
|
1031
1031
|
"name": "locale",
|
|
1032
|
-
"description": "
|
|
1032
|
+
"description": "Locale usado para formatação e rótulos.",
|
|
1033
1033
|
"values": [{ "name": "DatetimePickerLocale" }]
|
|
1034
1034
|
},
|
|
1035
1035
|
{
|
|
1036
1036
|
"name": "placeholder",
|
|
1037
|
-
"description": "
|
|
1037
|
+
"description": "Texto placeholder exibido no input.",
|
|
1038
1038
|
"values": []
|
|
1039
1039
|
},
|
|
1040
1040
|
{
|
|
@@ -1044,72 +1044,68 @@
|
|
|
1044
1044
|
},
|
|
1045
1045
|
{
|
|
1046
1046
|
"name": "required",
|
|
1047
|
-
"description": "Indica se o campo
|
|
1047
|
+
"description": "Indica se o campo é requerido para submissão do formulário.",
|
|
1048
1048
|
"values": []
|
|
1049
1049
|
},
|
|
1050
1050
|
{
|
|
1051
1051
|
"name": "min",
|
|
1052
|
-
"description": "Menor data/
|
|
1052
|
+
"description": "Menor data/hora aceito (Date | string | null).",
|
|
1053
1053
|
"values": [{ "name": "Date" }]
|
|
1054
1054
|
},
|
|
1055
1055
|
{
|
|
1056
1056
|
"name": "max",
|
|
1057
|
-
"description": "Maior data/
|
|
1057
|
+
"description": "Maior data/hora aceito (Date | string | null).",
|
|
1058
1058
|
"values": [{ "name": "Date" }]
|
|
1059
1059
|
},
|
|
1060
1060
|
{
|
|
1061
1061
|
"name": "validator",
|
|
1062
|
-
"description": "
|
|
1062
|
+
"description": "Validador customizado (síncrono ou assíncrono) para a seleção.\n\nRecebe `Date | DatetimePickerDateRange | null` como valor.",
|
|
1063
1063
|
"values": [{ "name": "DatetimePickerValidator" }]
|
|
1064
1064
|
},
|
|
1065
1065
|
{
|
|
1066
1066
|
"name": "selection-mode",
|
|
1067
|
-
"description": "
|
|
1067
|
+
"description": "Tipo de seleção: `single` ou `range`.",
|
|
1068
1068
|
"values": [{ "name": "DatetimePickerSelectionMode" }]
|
|
1069
1069
|
},
|
|
1070
1070
|
{
|
|
1071
1071
|
"name": "week-starts-on",
|
|
1072
|
-
"description": "
|
|
1072
|
+
"description": "Dia inicial da semana exibido no calendário (0 = Dom, 6 = Sáb).",
|
|
1073
1073
|
"values": [{ "name": "DatetimePickerWeekDayIndex" }]
|
|
1074
1074
|
},
|
|
1075
1075
|
{
|
|
1076
1076
|
"name": "initial-moment",
|
|
1077
|
-
"description": "
|
|
1077
|
+
"description": "Valor inicial da seleção: `'now' | Date | string | null`.",
|
|
1078
1078
|
"values": [{ "name": "DatetimePickerInitialMoment" }]
|
|
1079
1079
|
},
|
|
1080
1080
|
{
|
|
1081
1081
|
"name": "value",
|
|
1082
|
-
"description": "
|
|
1082
|
+
"description": "Valor selecionado pelo usuário (Date | null).\n\nPode ser controlado externamente e é refletido internamente.",
|
|
1083
1083
|
"values": [{ "name": "Date" }]
|
|
1084
1084
|
},
|
|
1085
1085
|
{
|
|
1086
1086
|
"name": "serialized-value",
|
|
1087
|
-
"description": "Representação serializada compatível com
|
|
1087
|
+
"description": "Representação serializada compatível com controles HTML.\n\nFormatos variam conforme `mode`. Em intervalos, usa `início/fim`.",
|
|
1088
1088
|
"values": []
|
|
1089
1089
|
},
|
|
1090
|
-
{
|
|
1091
|
-
"name": "value-as-date",
|
|
1092
|
-
"description": "Espelho tipado da seleção atual, equivalente ao padrão `valueAsDate` dos controles HTML.\nDiferentemente de `serializedValue`, recebe e retorna uma instância de `Date`.\nNa inicialização, tem precedência sobre `value` e `initialMoment` quando `serializedValue`\nnão é informado. `null` inicia sem seleção; `undefined` permite usar as outras props.",
|
|
1093
|
-
"values": [{ "name": "Date" }]
|
|
1094
|
-
},
|
|
1090
|
+
{ "name": "value-as-date", "values": [{ "name": "Date" }] },
|
|
1095
1091
|
{
|
|
1096
1092
|
"name": "range-value",
|
|
1097
|
-
"description": "Intervalo controlado quando `selectionMode=\"range\"`.\
|
|
1093
|
+
"description": "Intervalo controlado quando `selectionMode=\"range\"`.\n\nEm `datetime`, preserva as datas e horários informados; término anterior ao\ninício torna o controle inválido, sem reordenar ou avançar datas.",
|
|
1098
1094
|
"values": [{ "name": "DatetimePickerDateRange" }]
|
|
1099
1095
|
},
|
|
1100
1096
|
{
|
|
1101
1097
|
"name": "disabled",
|
|
1102
|
-
"description": "Desabilita toda a interação do componente
|
|
1098
|
+
"description": "Desabilita toda a interação do componente.",
|
|
1103
1099
|
"values": []
|
|
1104
1100
|
},
|
|
1105
1101
|
{
|
|
1106
1102
|
"name": "disabled-dates",
|
|
1107
|
-
"description": "
|
|
1103
|
+
"description": "Datas indisponíveis para seleção. Aceita `Date[]`, `string` ou `null`.\n\nDatas inválidas são ignoradas. A comparação considera apenas o dia.",
|
|
1108
1104
|
"values": [{ "name": "DatetimePickerDisabledDates" }]
|
|
1109
1105
|
},
|
|
1110
1106
|
{
|
|
1111
1107
|
"name": "fixed-row-count",
|
|
1112
|
-
"description": "
|
|
1108
|
+
"description": "Mantém número fixo de linhas no calendário (6 semanas) quando `true`.",
|
|
1113
1109
|
"values": []
|
|
1114
1110
|
}
|
|
1115
1111
|
],
|
|
@@ -1117,26 +1113,26 @@
|
|
|
1117
1113
|
},
|
|
1118
1114
|
{
|
|
1119
1115
|
"name": "br-date-picker",
|
|
1120
|
-
"description": "
|
|
1116
|
+
"description": "Calendário usado pelo `br-datetime-picker`. Também pode ser usado sozinho, quando a tela precisa de um calendário sempre visível.\n\nUsado sozinho, ele não tem campo de texto nem participa de formulário: a aplicação lê a seleção e cuida da validação.\n\n```html\n<br-date-picker id=\"agenda\"></br-date-picker>\n```\n\n```js\nconst calendario = document.querySelector('#agenda');\ncalendario.addEventListener('change', () => console.log(calendario.value));\n```\n\n- `value`: data selecionada (`Date`).\n- `referenceDate`: mês exibido.\n- `disabledDates`: datas que não podem ser escolhidas.\n- `selectionMode=\"range\"`: seleção de intervalo, lida em `rangeValue`.\n\nPara mudar o idioma, veja \"Idiomas\" na documentação do `br-datetime-picker`.\n---\n\n\n### **Events:**\n - **dateStateChange** - Emite o estado consolidado do componente quando há mudança de referência/seleção.\n\nPayload (DatetimePickerDateState):\n\n### **Methods:**\n - **handleValueChange(newValue: _Date | null_, oldValue: _Date | null_)** - Sincroniza `focusedDate` quando o valor selecionado muda externamente.\n- **handleWeekStartsOnChange(newValue: _number_)** - Revalida a configuração quando o início da semana muda.\n- **handleLocaleChange(newValue: _string_)** - Revalida o locale quando a prop muda.\n\n### **CSS Parts:**\n - **container** - Parte para o container base do calendário.\n- **header** - Cabeçalho do calendário (contendo navegação e seleção de mês/ano).\n- **month-select** - Elemento de seleção do mês.\n- **year-input** - Elemento de entrada do ano.\n- **calendar** - Grade geral do calendário.\n- **weekdays** - Container para os rótulos dos dias da semana.\n- **weekday** - Rótulo individual do dia da semana.\n- **grid** - Grade de dias do mês.\n- **day** - Célula individual do dia no calendário.",
|
|
1121
1117
|
"attributes": [
|
|
1122
1118
|
{
|
|
1123
1119
|
"name": "week-starts-on",
|
|
1124
|
-
"description": "
|
|
1120
|
+
"description": "Índice do dia em que a semana começa na interface do calendário.",
|
|
1125
1121
|
"values": [{ "name": "WeekDayIndex" }]
|
|
1126
1122
|
},
|
|
1127
1123
|
{
|
|
1128
1124
|
"name": "reference-date",
|
|
1129
|
-
"description": "Data usada como base visual para o mês atualmente exibido
|
|
1125
|
+
"description": "Data usada como base visual para o mês atualmente exibido.",
|
|
1130
1126
|
"values": [{ "name": "Date" }]
|
|
1131
1127
|
},
|
|
1132
1128
|
{
|
|
1133
1129
|
"name": "value",
|
|
1134
|
-
"description": "Data
|
|
1130
|
+
"description": "Data atualmente selecionada pelo usuário, ou `null` quando não há seleção.",
|
|
1135
1131
|
"values": [{ "name": "Date" }]
|
|
1136
1132
|
},
|
|
1137
1133
|
{
|
|
1138
1134
|
"name": "selection-mode",
|
|
1139
|
-
"description": "Define se a seleção ocorre por data única ou por intervalo.
|
|
1135
|
+
"description": "Define se a seleção ocorre por data única ou por intervalo.",
|
|
1140
1136
|
"values": [{ "name": "DatetimePickerSelectionMode" }]
|
|
1141
1137
|
},
|
|
1142
1138
|
{
|
|
@@ -1151,17 +1147,17 @@
|
|
|
1151
1147
|
},
|
|
1152
1148
|
{
|
|
1153
1149
|
"name": "range-value",
|
|
1154
|
-
"description": "Intervalo controlado no modo `range
|
|
1150
|
+
"description": "Intervalo controlado no modo `range`.\nQuando definido, mantém `rangeStart` e `rangeEnd` sincronizados.",
|
|
1155
1151
|
"values": [{ "name": "DatetimePickerDateRange" }]
|
|
1156
1152
|
},
|
|
1157
1153
|
{
|
|
1158
1154
|
"name": "disabled",
|
|
1159
|
-
"description": "Desabilita a interação do calendário quando
|
|
1155
|
+
"description": "Desabilita a interação do calendário quando `true`.",
|
|
1160
1156
|
"values": []
|
|
1161
1157
|
},
|
|
1162
1158
|
{
|
|
1163
1159
|
"name": "disabled-dates",
|
|
1164
|
-
"description": "Lista de datas indisponíveis para seleção no calendário
|
|
1160
|
+
"description": "Lista de datas indisponíveis para seleção no calendário.",
|
|
1165
1161
|
"values": [{ "name": "Date[]" }]
|
|
1166
1162
|
},
|
|
1167
1163
|
{
|
|
@@ -1171,7 +1167,7 @@
|
|
|
1171
1167
|
},
|
|
1172
1168
|
{
|
|
1173
1169
|
"name": "fixed-row-count",
|
|
1174
|
-
"description": "
|
|
1170
|
+
"description": "Se `true`, o calendário sempre exibe 6 semanas (42 dias); caso contrário, adapta-se ao mês.",
|
|
1175
1171
|
"values": []
|
|
1176
1172
|
}
|
|
1177
1173
|
],
|
|
@@ -1179,51 +1175,51 @@
|
|
|
1179
1175
|
},
|
|
1180
1176
|
{
|
|
1181
1177
|
"name": "br-datetime-input",
|
|
1182
|
-
"description": "
|
|
1178
|
+
"description": "Campo de texto com máscara usado pelo `br-datetime-picker`. Interpreta a data ou a hora digitada e abre o calendário pelo botão do campo.\n\nÉ criado pelo `br-datetime-picker`; não é preciso declará-lo. Para um campo de data em formulário, use o `br-datetime-picker`.\n---\n\n\n### **Events:**\n - **dateStateChange** - Evento emitido quando o estado de data/hora muda (após commit ou parsing).\n\nPayload (`detail`):\n- **togglePicker** - Emite uma solicitação ao componente pai para alternar a abertura do picker.\nEmite sem payload.\n- **inputValidationChange** - Emite validação do texto digitado sem alterar o valor selecionado.\n\nPayload (`detail`):\n\n### **Methods:**\n - **handleRangeValueChange(newValue: _DatetimePickerDateRange | undefined_): _void_** - Watcher: sincroniza `rangeStart`/`rangeEnd` a partir de `rangeValue` controlado.\n- **handleValueChange(newValue: _Date | null_): _void_** - Watcher: reage a mudanças externas em `value`, normalizando e sincronizando\no texto exibido no input.\n- **handleModeChange(newValue: _string_): _void_** - Watcher: aplica normalização do `mode` e atualiza a máscara/valor exibido.\n- **handleReferenceDateChange(newValue: _Date_): _void_** - Watcher: valida `referenceDate` e resina o input quando não há seleção.\n- **handleRangeStartChange(newValue): _void_** - Watcher: atualiza a representação textual quando o início do range muda.\n- **handleRangeEndChange(newValue): _void_** - Watcher: atualiza a representação textual quando o fim do range muda.\n- **render()** - Renderização principal do componente.\n\n### **CSS Parts:**\n - **container** - Container do campo.\n- **input** - Elemento de entrada textual interno.\n- **icon** - Ícone de ação (calendário/relógio).",
|
|
1183
1179
|
"attributes": [
|
|
1184
1180
|
{
|
|
1185
1181
|
"name": "placeholder",
|
|
1186
|
-
"description": "
|
|
1182
|
+
"description": "Texto de placeholder exibido quando o campo estiver vazio.",
|
|
1187
1183
|
"values": []
|
|
1188
1184
|
},
|
|
1189
1185
|
{
|
|
1190
1186
|
"name": "mode",
|
|
1191
|
-
"description": "
|
|
1187
|
+
"description": "Modo de entrada que controla máscara, parser e formato exibido.",
|
|
1192
1188
|
"values": [{ "name": "DatetimePickerMode" }]
|
|
1193
1189
|
},
|
|
1194
1190
|
{
|
|
1195
1191
|
"name": "reference-date",
|
|
1196
|
-
"description": "Data de referência
|
|
1192
|
+
"description": "Data de referência usada para navegação e preenchimento de valores parciais.",
|
|
1197
1193
|
"values": [{ "name": "Date" }]
|
|
1198
1194
|
},
|
|
1199
1195
|
{
|
|
1200
1196
|
"name": "value",
|
|
1201
|
-
"description": "
|
|
1197
|
+
"description": "Valor atualmente selecionado pelo componente.",
|
|
1202
1198
|
"values": [{ "name": "Date" }]
|
|
1203
1199
|
},
|
|
1204
1200
|
{
|
|
1205
1201
|
"name": "disabled",
|
|
1206
|
-
"description": "
|
|
1202
|
+
"description": "Controla os estados de read-only ou bloqueio de formulário.",
|
|
1207
1203
|
"values": []
|
|
1208
1204
|
},
|
|
1209
1205
|
{
|
|
1210
1206
|
"name": "selection-mode",
|
|
1211
|
-
"description": "Define
|
|
1207
|
+
"description": "Define o modo de seleção: `single` (valor único) ou `range` (intervalo).",
|
|
1212
1208
|
"values": [{ "name": "DatetimePickerSelectionMode" }]
|
|
1213
1209
|
},
|
|
1214
1210
|
{
|
|
1215
1211
|
"name": "range-start",
|
|
1216
|
-
"description": "
|
|
1212
|
+
"description": "Início do intervalo em `selectionMode === 'range'`.",
|
|
1217
1213
|
"values": [{ "name": "Date" }]
|
|
1218
1214
|
},
|
|
1219
1215
|
{
|
|
1220
1216
|
"name": "range-end",
|
|
1221
|
-
"description": "
|
|
1217
|
+
"description": "Fim do intervalo em `selectionMode === 'range'`.",
|
|
1222
1218
|
"values": [{ "name": "Date" }]
|
|
1223
1219
|
},
|
|
1224
1220
|
{
|
|
1225
1221
|
"name": "range-value",
|
|
1226
|
-
"description": "Intervalo controlado no modo `range
|
|
1222
|
+
"description": "Intervalo controlado no modo `range` como objeto `{ start, end }`.",
|
|
1227
1223
|
"values": [{ "name": "DatetimePickerDateRange" }]
|
|
1228
1224
|
}
|
|
1229
1225
|
],
|
|
@@ -1231,21 +1227,21 @@
|
|
|
1231
1227
|
},
|
|
1232
1228
|
{
|
|
1233
1229
|
"name": "br-time-picker",
|
|
1234
|
-
"description": "
|
|
1230
|
+
"description": "Controles de hora e minuto usados pelo `br-datetime-picker`. Em um intervalo, o componente cria um controle para o início e outro para o fim.\n\nPara um campo de horário em formulário, use `<br-datetime-picker mode=\"time\">`. Usado sozinho, ele não participa de formulário: leia o horário em `value` e trate a validação na aplicação.\n---\n\n\n### **Events:**\n - **dateStateChange** - Evento emitido sempre que `referenceDate` ou `value` são atualizados.\n\nO `detail` segue a forma de `DatetimePickerDateState` e contém o estado\ncompartilhado entre subcomponentes de data e horário.\n\nPayload (`detail`):\n\n### **Methods:**\n - **handleValueChange(newValue: _Date | null_): _void_** - Sincroniza `referenceDate` quando a prop `value` muda.\n\nNormaliza segundos/milissegundos e restaura rascunhos locais.\n- **render(): _JSX.Element_** - Render principal do componente.\n\n### **CSS Parts:**\n - **container** - Container base do seletor de horários.\n- **timer** - Grupo que contém os campos de hora e minuto.\n- **field** - Campo de tempo com botões de ajuste.\n- **separator** - Separador visual entre hora e minuto.\n- **input** - Campo de entrada textual interno do tempo.",
|
|
1235
1231
|
"attributes": [
|
|
1236
1232
|
{
|
|
1237
1233
|
"name": "reference-date",
|
|
1238
|
-
"description": "Data
|
|
1234
|
+
"description": "Data de referência usada para exibir e ajustar hora e minuto.",
|
|
1239
1235
|
"values": [{ "name": "Date" }]
|
|
1240
1236
|
},
|
|
1241
1237
|
{
|
|
1242
1238
|
"name": "value",
|
|
1243
|
-
"description": "
|
|
1239
|
+
"description": "Valor selecionado pelo usuário.",
|
|
1244
1240
|
"values": [{ "name": "Date" }]
|
|
1245
1241
|
},
|
|
1246
1242
|
{
|
|
1247
1243
|
"name": "disabled",
|
|
1248
|
-
"description": "
|
|
1244
|
+
"description": "Indica se os controles do seletor estão desabilitados.",
|
|
1249
1245
|
"values": []
|
|
1250
1246
|
}
|
|
1251
1247
|
],
|
|
@@ -1253,7 +1249,7 @@
|
|
|
1253
1249
|
},
|
|
1254
1250
|
{
|
|
1255
1251
|
"name": "br-divider",
|
|
1256
|
-
"description": "O
|
|
1252
|
+
"description": "O `br-divider` é uma linha que separa seções ou grupos de conteúdo. Pode ser horizontal ou vertical e ter um texto no meio.\n\n```html\n<br-divider></br-divider>\n\n<br-divider>ou</br-divider>\n\n<br-divider orientation=\"vertical\" thickness=\"medium\" border-style=\"dashed\"></br-divider>\n```\n\n### Quando usar\n\n- Marcar o fim de um bloco e o início de outro.\n- Separar alternativas, como \"Entrar com gov.br\" ou \"Entrar com certificado digital\".\n\n### Quando evitar\n\n- Quando o espaço em branco já separa bem o conteúdo.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/divider?tab=designer).\n---\n\n\n### **Methods:**\n - **updateColor()** - Watcher para a cor do divisor.\nAtualiza a propriedade CSS '--border-color' do elemento para refletir a cor definida.\nIsso permite que o divisor use cores personalizadas sem precisar de estilos adicionais.\n- **updateMargins()** - Watcher para as propriedades de margin.\nAtualiza as propriedades CSS customizáveis do elemento para refletir os margins definidos.\n\n### **Slots:**\n - **default** - Slot opcional para conteúdo dentro do divisor (texto, ícones ou elementos personalizados).\n\n### **CSS Parts:**\n - **divider** - Elemento principal do divisor.\n- **content** - Conteúdo do divisor (quando há slot).",
|
|
1257
1253
|
"attributes": [
|
|
1258
1254
|
{
|
|
1259
1255
|
"name": "custom-id",
|
|
@@ -1282,7 +1278,7 @@
|
|
|
1282
1278
|
},
|
|
1283
1279
|
{
|
|
1284
1280
|
"name": "color-mode",
|
|
1285
|
-
"description": "Esquema de cor
|
|
1281
|
+
"description": "Esquema de cor padrão. Quando informado, tem precedência sobre `isDarkMode`; valores inválidos usam `light`.",
|
|
1286
1282
|
"values": [{ "name": "light" }, { "name": "dark" }]
|
|
1287
1283
|
},
|
|
1288
1284
|
{
|
|
@@ -1325,7 +1321,7 @@
|
|
|
1325
1321
|
},
|
|
1326
1322
|
{
|
|
1327
1323
|
"name": "br-dropdown",
|
|
1328
|
-
"description": "O
|
|
1324
|
+
"description": "O `br-dropdown` abre um painel flutuante a partir de um botão, com ações ou conteúdo complementar, como um menu \"Mais opções\".\n\nColoque o botão no slot `trigger` e o conteúdo no slot `target`:\n\n```html\n<br-dropdown>\n <br-button slot=\"trigger\" emphasis=\"tertiary\">Mais opções</br-button>\n <br-list slot=\"target\">\n <br-item>Exportar</br-item>\n <br-item>Imprimir</br-item>\n </br-list>\n</br-dropdown>\n```\n\nO painel fecha com Escape ou com um clique fora dele (desative com `prevent-auto-dismiss`). A posição é definida por `placement`, por exemplo `bottom-start` ou `top-end`. Para acompanhar a abertura e o fechamento, ouça `brDropdownOpenChange`.\n\n### Quando usar\n\n- Várias ações secundárias quando há pouco espaço na tela.\n\n### Quando evitar\n\n- Escolher um valor de formulário: use `br-select`.\n- Navegação principal do site: use `br-menu`.\n- Avisos: use `br-message` ou `br-notification`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/dropdown?tab=designer).\n---\n\n\n### **Events:**\n - **brDidOpen** - Emitido quando o dropdown abre.\n- **brDidClose** - Emitido quando o dropdown fecha.\n- **brDropdownChange**\n- **brDropdownOpenChange** - Evento emitido quando o estado aberto muda.\n\n### **Methods:**\n - **targetZIndexChanged()** - Aplica o novo valor de z-index ao elemento target.\n- **matchTriggerWidthChanged()** - Recalcula a superfície aberta quando a política de largura muda.\n- **disabledChanged(newValue: _boolean_)** - Fecha o dropdown se for desabilitado enquanto estiver aberto.\n- **hide(): _Promise<{ isOpen: boolean }>_** - @deprecated Use `close`. - Esconde o dropdown.\nDefine a propriedade `isOpen` como falsa e retorna o novo estado.\nEste método pode ser chamado externamente.\n- **close(): _Promise<{ isOpen: boolean }>_** - Fecha o dropdown e mantém o formato de retorno legado.\n- **open(): _Promise<{ isOpen: boolean }>_** - Abre o dropdown.\nDefine a propriedade `isOpen` como verdadeira e retorna o novo estado.\nEste método pode ser chamado externamente.\n- **setFocus()** - Define o foco no elemento interno do componente.\nEste método pode ser chamado externamente para garantir que o foco seja aplicado ao elemento correto.\n\n### **Slots:**\n - **trigger** - Slot para o elemento que aciona a abertura do dropdown.\n- **target** - Slot para o conteúdo exibido pelo dropdown.\n\n### **CSS Parts:**\n - **trigger** - Área do acionador do dropdown.\n- **target** - Área de conteúdo exibida pelo dropdown.\n- **trigger-arrow** - Indicador visual opcional do acionador do dropdown.",
|
|
1329
1325
|
"attributes": [
|
|
1330
1326
|
{
|
|
1331
1327
|
"name": "custom-id",
|
|
@@ -1382,7 +1378,7 @@
|
|
|
1382
1378
|
},
|
|
1383
1379
|
{
|
|
1384
1380
|
"name": "br-footer",
|
|
1385
|
-
"description": "O
|
|
1381
|
+
"description": "O `br-footer` é o rodapé da página: logotipo, mapa do site, redes sociais, parceiros e informações legais.\n\n### Como montar\n\n| Área | Onde colocar |\n| --- | --- |\n| Logotipo | `br-footer-logo` no slot `logo` |\n| Mapa do site | `br-footer-category` com `br-footer-item`, no conteúdo do footer |\n| Redes sociais | `br-footer-social` no slot `social-network` |\n| Parceiros | `br-footer-logo partner` no slot `partner-logo` |\n| Informações legais | `br-footer-legal` no slot `legal` |\n\n```html\n<br-footer social-network-title=\"Redes sociais\">\n <br-footer-logo slot=\"logo\" src=\"/logo.svg\" description=\"Nome do órgão\" href=\"/\"></br-footer-logo>\n\n <br-footer-category label=\"Serviços\">\n <br-footer-item href=\"/servicos/emitir\">Emitir documento</br-footer-item>\n <br-footer-item href=\"/servicos/consultar\">Consultar processo</br-footer-item>\n </br-footer-category>\n\n <br-footer-social slot=\"social-network\" icon=\"instagram\" description=\"Instagram\" href=\"https://instagram.com/orgao\" target=\"_blank\"></br-footer-social>\n\n <br-footer-legal slot=\"legal\">Texto destinado a exibir informações sobre o licenciamento.</br-footer-legal>\n</br-footer>\n```\n\nEm telas pequenas, as categorias viram seções que abrem e fecham. O tema padrão é escuro; use `theme=\"light\"` para o claro.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/footer?tab=designer).\n---\n\n\n### **Methods:**\n - **render(): __** - Renderiza o componente.\n\n### **Slots:**\n - **logo** - Slot para o logo do rodapé, utilizando o componente br-logo.\n- **default** - Slot para o mapa do site, utilizando br-footer-category e br-footer-item.\n- **social-network** - Slot para as redes sociais, utilizando br-footer-social.\n- **partner-logo** - Slot para logos de parceiros, utilizando br-logo.\n- **legal** - Slot para informações legais, utilizando br-footer-legal.\n\n### **CSS Parts:**\n - **container** - Wrapper principal do footer.\n- **site-map** - Área do mapa do site.\n- **social** - Área de redes sociais.\n- **partners** - Área de logos de parceiros.",
|
|
1386
1382
|
"attributes": [
|
|
1387
1383
|
{
|
|
1388
1384
|
"name": "custom-id",
|
|
@@ -1396,7 +1392,7 @@
|
|
|
1396
1392
|
},
|
|
1397
1393
|
{
|
|
1398
1394
|
"name": "color-mode",
|
|
1399
|
-
"description": "Esquema de cor
|
|
1395
|
+
"description": "Esquema de cor padrão. Quando informado, tem precedência sobre `theme`.",
|
|
1400
1396
|
"values": [{ "name": "FooterTheme" }]
|
|
1401
1397
|
},
|
|
1402
1398
|
{
|
|
@@ -1414,7 +1410,7 @@
|
|
|
1414
1410
|
},
|
|
1415
1411
|
{
|
|
1416
1412
|
"name": "br-footer-category",
|
|
1417
|
-
"description": "
|
|
1413
|
+
"description": "Grupo de links do mapa do site no `br-footer`. O título vem de `label` e os links são `br-footer-item`.\n\nEm telas pequenas, a categoria vira uma seção que abre e fecha.\n---\n\n\n### **Methods:**\n - **render(): __** - Renderiza o componente.\n\n### **Slots:**\n - **default** - Slot para os itens da categoria no rodapé, utilizando br-footer-item.",
|
|
1418
1414
|
"attributes": [
|
|
1419
1415
|
{
|
|
1420
1416
|
"name": "custom-id",
|
|
@@ -1431,7 +1427,7 @@
|
|
|
1431
1427
|
},
|
|
1432
1428
|
{
|
|
1433
1429
|
"name": "br-footer-item",
|
|
1434
|
-
"description": "
|
|
1430
|
+
"description": "Um link do mapa do site, dentro de um `br-footer-category`. Informe o destino em `href` e o texto no conteúdo.\n\nEm SPA, use `navigation-mode=\"event\"` e trate o evento `brNavigate`.\n---\n\n\n### **Events:**\n - **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n\n### **Methods:**\n - **render(): __** - Renderiza o componente\n\n### **Slots:**\n - **default** - Slot para o conteúdo do item no rodapé, incluindo texto ou componentes de roteamento para SPAs.",
|
|
1435
1431
|
"attributes": [
|
|
1436
1432
|
{
|
|
1437
1433
|
"name": "custom-id",
|
|
@@ -1453,7 +1449,7 @@
|
|
|
1453
1449
|
},
|
|
1454
1450
|
{
|
|
1455
1451
|
"name": "br-footer-legal",
|
|
1456
|
-
"description": "
|
|
1452
|
+
"description": "Informações legais do `br-footer`, como licença de uso e direitos autorais. Use no slot `legal`.\n---\n\n\n### **Methods:**\n - **render(): __** - Renderiza o componente.\n\n### **Slots:**\n - **default** - Slot para informações legais no rodapé, como direitos autorais ou termos de uso.\n\n### **CSS Parts:**\n - **container** - Wrapper principal do footer-legal.",
|
|
1457
1453
|
"attributes": [
|
|
1458
1454
|
{
|
|
1459
1455
|
"name": "custom-id",
|
|
@@ -1465,7 +1461,7 @@
|
|
|
1465
1461
|
},
|
|
1466
1462
|
{
|
|
1467
1463
|
"name": "br-footer-logo",
|
|
1468
|
-
"description": "
|
|
1464
|
+
"description": "Logotipo do `br-footer`. Use no slot `logo` para a marca do órgão, ou com `partner` no slot `partner-logo` para parceiros.\n\nInforme a imagem em `src` e o texto alternativo em `description`. Com `href`, a logo vira link.\n---\n\n\n### **Events:**\n - **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n\n### **Methods:**\n - **render(): __** - Monta o JSX que representa o componente.\n\n### **CSS Parts:**\n - **container** - Wrapper principal do footer-logo.",
|
|
1469
1465
|
"attributes": [
|
|
1470
1466
|
{
|
|
1471
1467
|
"name": "custom-id",
|
|
@@ -1513,7 +1509,7 @@
|
|
|
1513
1509
|
},
|
|
1514
1510
|
{
|
|
1515
1511
|
"name": "br-footer-social",
|
|
1516
|
-
"description": "
|
|
1512
|
+
"description": "Link para uma rede social no `br-footer`. Use no slot `social-network`.\n\nInforme em `icon` o nome do ícone de marca, como `instagram` ou `youtube`; em `description`, o nome da rede (usado como texto acessível); e em `href`, o endereço. Para outro ícone, use o slot `icon`.\n---\n\n\n### **Events:**\n - **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n\n### **Methods:**\n - **render(): __** - Renderiza o componente.\n\n### **Slots:**\n - **icon** - Ícone personalizado. Quando preenchido, substitui o ícone definido por `icon`.",
|
|
1517
1513
|
"attributes": [
|
|
1518
1514
|
{
|
|
1519
1515
|
"name": "custom-id",
|
|
@@ -1546,7 +1542,7 @@
|
|
|
1546
1542
|
},
|
|
1547
1543
|
{
|
|
1548
1544
|
"name": "br-header",
|
|
1549
|
-
"description": "O
|
|
1545
|
+
"description": "O `br-header` é o cabeçalho da página: logotipo, nome do sistema, links, atalhos, busca, acesso e botão do menu.\n\n### Como montar\n\nCada área tem um slot:\n\n| Área | Slot | Componente sugerido |\n| --- | --- | --- |\n| Logotipo | `logo` | `br-header-logo` |\n| Nome e subtítulo | — | props `caption` e `subcaption` |\n| Links | `links` | `br-header-list` com `br-header-link` |\n| Atalhos (contraste, ajuda…) | `functions` | `br-header-list` com `br-header-function` |\n| Busca | `search` e `search-icon` | `br-input` e um `br-button` com ícone |\n| Entrar | `access` | `br-sign-in` |\n| Menu | `menu-trigger` | `br-button` que abre o `br-menu` |\n\n```html\n<br-header caption=\"Nome do sistema\" subcaption=\"Nome do órgão\" sticky>\n <br-header-logo slot=\"logo\" src=\"/logo.svg\" description=\"gov.br\"></br-header-logo>\n\n <br-header-list slot=\"links\" list-title=\"Acesso rápido\">\n <br-header-link href=\"/servicos\">Serviços</br-header-link>\n </br-header-list>\n\n <br-input slot=\"search\" label=\"Buscar\" type=\"search\"></br-input>\n\n <br-button slot=\"menu-trigger\" shape=\"circle\" aria-label=\"Abrir menu\" data-toggle=\"menu\" data-target=\"#menu-principal\">\n <br-icon src=\"/icones/menu.svg\"></br-icon>\n </br-button>\n</br-header>\n```\n\nUse `sticky` para manter o cabeçalho visível ao rolar a página e `compact` para a versão reduzida. Em telas menores, a busca fica escondida até o clique no botão do slot `search-icon`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/header?tab=designer).\n---\n\n\n### **Events:**\n - **headerCompactChange** - Evento disparado quando o cabeçalho entra ou sai do modo compacto.\nO evento contém os detalhes do estado compacto e o ID do componente pai.\n- **brHeaderCompactChange** - Evento emitido quando o modo compacto muda.\n- **headerWidthChange** - Evento disparado para indicar qual lista deve encolher primeiro.\nO evento contém os detalhes do ID do componente pai e o nome da lista.\n- **brMenuToggle** - Evento disparado para alternar o estado de um menu associado.\n- **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n\n### **Methods:**\n - **watchIsCompact(newValue: _boolean_)** - Observa mudanças na propriedade isCompact.\n- **resetHeaderList()** - Reinicializa o estado das listas do cabeçalho, disparando o evento de redimensionamento.\nPode ser chamado externamente para forçar a atualização das listas.\n- **render(): __** - Renderiza o componente.\n\n### **Slots:**\n - **logo** - Slot para a logo do cabeçalho.\n- **signature** - Slot para a assinatura visual da organização.\n- **links** - Slot para links de navegação principais.\n- **functions** - Slot para botões de ação no cabeçalho.\n- **search-icon** - Botão que mostra o campo de busca em telas menores e no modo compacto.\n- **search** - Slot para o campo de busca.\n- **access** - Slot para o botão de acesso ou autenticação.\n- **menu-trigger** - Slot para o botão que abre o menu.\n- **caption** - Slot para o título do cabeçalho.\n- **subcaption** - Slot para o subtítulo do cabeçalho.\n\n### **CSS Parts:**\n - **header** - Elemento header principal.\n- **top** - Área superior do header.\n- **top-left** - Área superior esquerda (logo + assinatura).\n- **top-right** - Área superior direita (links + funções + busca + acesso).\n- **bottom** - Área inferior do header.\n- **bottom-left** - Área inferior esquerda (menu + título).\n- **bottom-right** - Área inferior direita (busca expandida).",
|
|
1550
1546
|
"attributes": [
|
|
1551
1547
|
{
|
|
1552
1548
|
"name": "caption",
|
|
@@ -1575,7 +1571,7 @@
|
|
|
1575
1571
|
},
|
|
1576
1572
|
{
|
|
1577
1573
|
"name": "compact",
|
|
1578
|
-
"description": "Estado compacto
|
|
1574
|
+
"description": "Estado compacto. Quando informado, tem precedência sobre `isCompact`.",
|
|
1579
1575
|
"values": []
|
|
1580
1576
|
},
|
|
1581
1577
|
{
|
|
@@ -1623,7 +1619,7 @@
|
|
|
1623
1619
|
},
|
|
1624
1620
|
{
|
|
1625
1621
|
"name": "br-header-function",
|
|
1626
|
-
"description": "
|
|
1622
|
+
"description": "Atalho do `br-header`, como contraste ou ajuda, dentro de um `br-header-list` no slot `functions`.\n\nColoque o ícone no slot `icon` e o nome no conteúdo:\n\n```html\n<br-header-function href=\"/ajuda\">\n <br-icon slot=\"icon\" src=\"/icones/ajuda.svg\"></br-icon>\n Ajuda\n</br-header-function>\n```\n\nEm telas grandes, aparece como botão de ícone, e o nome é usado como texto acessível. Em telas menores, aparece com ícone e nome dentro do menu da lista.\n---\n\n\n### **Events:**\n - **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n\n### **Methods:**\n - **handleHeaderWidthChange(event: _CustomEvent<{ id: string; listNames: string[]; shrink: boolean }>_)** - Listener para o evento 'headerWidthChange', disparado pelo componente pai 'br-header'.\nO evento contém o ID do pai e o nome da lista.\nSe o ID do pai corresponder ao ID do cabeçalho atual, o evento será tratado.\n- **render(): __** - Renderiza o componente.\n\n### **Slots:**\n - **default** - Slot para o nome ou rótulo da funcionalidade.\n- **icon** - Slot para ícone que representa a funcionalidade.",
|
|
1627
1623
|
"attributes": [
|
|
1628
1624
|
{
|
|
1629
1625
|
"name": "custom-id",
|
|
@@ -1655,7 +1651,7 @@
|
|
|
1655
1651
|
},
|
|
1656
1652
|
{
|
|
1657
1653
|
"name": "br-header-link",
|
|
1658
|
-
"description": "
|
|
1654
|
+
"description": "Link do `br-header`, dentro de um `br-header-list` no slot `links`. Informe o destino em `href` e o texto no conteúdo.\n\nEm SPA, use `navigation-mode=\"event\"` e trate `brNavigate`.\n---\n\n\n### **Events:**\n - **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n\n### **Methods:**\n - **render(): __** - Renderiza o componente.\n\n### **Slots:**\n - **default** - Slot para o conteúdo do link exibido no cabeçalho.",
|
|
1659
1655
|
"attributes": [
|
|
1660
1656
|
{
|
|
1661
1657
|
"name": "custom-id",
|
|
@@ -1678,7 +1674,7 @@
|
|
|
1678
1674
|
},
|
|
1679
1675
|
{
|
|
1680
1676
|
"name": "br-header-list",
|
|
1681
|
-
"description": "
|
|
1677
|
+
"description": "Lista de links ou atalhos do `br-header`. Use no slot `links`, com `br-header-link`, ou no slot `functions`, com `br-header-function`.\n\nEm telas menores, a lista vira um menu que abre e fecha; o título desse menu vem de `list-title`.\n---\n\n\n### **Events:**\n - **headerListUpdate** - Evento disparado para indicar qual lista deve encolher primeiro.\nO evento envia o ID do componente pai e o nome da lista.\n- **headerListFocused** - Evento disparado quando a lista recebe foco.\nO evento envia o ID do componente.\n\n### **Methods:**\n - **closeList()** - Fecha a lista.\n- **isListOpen(): _Promise<boolean>_** - Verifica se a lista está aberta.\n- **openList(): _Promise<void>_** - Abre a lista.\n- **render(): __** - Renderiza o componente.\n\n### **Slots:**\n - **default** - Slot para o conteúdo da lista de navegação no cabeçalho.",
|
|
1682
1678
|
"attributes": [
|
|
1683
1679
|
{
|
|
1684
1680
|
"name": "custom-id",
|
|
@@ -1695,7 +1691,7 @@
|
|
|
1695
1691
|
},
|
|
1696
1692
|
{
|
|
1697
1693
|
"name": "br-header-logo",
|
|
1698
|
-
"description": "
|
|
1694
|
+
"description": "Logotipo do `br-header`. Use no slot `logo`.\n\nInforme a imagem em `src` e o texto alternativo em `description`. Com `href`, a logo vira link; em SPA, use `navigation-mode=\"event\"` e trate `brNavigate`.\n---\n\n\n### **Events:**\n - **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n\n### **Methods:**\n - **handleIsCompactChange()** - Observa mudanças na propriedade `isCompact` e ajusta a altura da logo se `hasDefaultHeight` for verdadeiro.\n- **render(): __** - Renderiza o componente.\n\n### **Slots:**\n - **default** - Slot para a logo personalizada exibida no cabeçalho.\n\n### **CSS Parts:**\n - **container** - Wrapper da logo do header.",
|
|
1699
1695
|
"attributes": [
|
|
1700
1696
|
{
|
|
1701
1697
|
"name": "custom-id",
|
|
@@ -1735,7 +1731,7 @@
|
|
|
1735
1731
|
},
|
|
1736
1732
|
{
|
|
1737
1733
|
"name": "br-icon",
|
|
1738
|
-
"description": "O
|
|
1734
|
+
"description": "O `br-icon` exibe um ícone com tamanho e alinhamento padronizados. O ícone vem da sua aplicação, de uma destas formas:\n\n```html\n<!-- Arquivo ou URL -->\n<br-icon src=\"/icones/busca.svg\"></br-icon>\n\n<!-- SVG no próprio código -->\n<br-icon svg='<svg viewBox=\"0 0 24 24\"><path d=\"…\" fill=\"currentColor\"/></svg>'></br-icon>\n\n<!-- Outra biblioteca, como Font Awesome -->\n<br-icon><i class=\"fas fa-search\"></i></br-icon>\n```\n\nSem `label`, o ícone é decorativo e ignorado por leitores de tela. Quando o ícone transmite informação sozinho, descreva-o em `label`:\n\n```html\n<br-icon src=\"/icones/alerta.svg\" label=\"Atenção\"></br-icon>\n```\n\nO tamanho padrão é 16 × 16 px; ajuste com `width` e `height`, em qualquer unidade CSS. Use `rotate` e `flip` para girar ou espelhar.\n\nSe mais de uma forma for informada, vale nesta ordem: conteúdo, `svg`, `src` e, por último, `icon-name` (depreciado). Para fixar uma delas, use `source`.\n\n### Quando evitar\n\n- Fotos e ilustrações: use `<img>`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/icon?tab=designer).\n---\n\n\n### **Slots:**\n - _default_ - Conteúdo customizado do ícone. Pode receber elementos como `<i>`, `<svg>` ou componentes de outras bibliotecas.\n\n### **CSS Parts:**\n - **icon** - Elemento interno que representa o ícone renderizado.\n- **image** - Elemento img interno quando `src` é usado.\n- **svg** - Elemento interno que recebe SVG inline quando `svg` é usado.\n- **slot** - Elemento interno que recebe conteúdo via slot.",
|
|
1739
1735
|
"attributes": [
|
|
1740
1736
|
{
|
|
1741
1737
|
"name": "label",
|
|
@@ -1822,7 +1818,7 @@
|
|
|
1822
1818
|
},
|
|
1823
1819
|
{
|
|
1824
1820
|
"name": "br-input",
|
|
1825
|
-
"description": "O
|
|
1821
|
+
"description": "O `br-input` captura dados de texto em linha única, como nomes, e-mails, números ou senhas.\n\nConfigure `label`, `placeholder` e o tipo em `type` (como `text`, `email`, `password`, `number`). Use `state` (`success`, `danger`, `info`, `warning`) para indicar validação.\n\n```html\n<br-input label=\"E-mail\" type=\"email\" placeholder=\"nome@exemplo.com\"></br-input>\n<br-input label=\"Senha\" type=\"password\"></br-input>\n```\n\nEm formulários HTML, o componente integra-se nativamente via `ElementInternals`, participando do submit e da validação nativa com `required`.\n\n### Quando usar\n\n- Entrada de texto curto que cabe em uma única linha (nome, CPF, e-mail, telefone).\n- Campo de busca ou senha com alternância de visualização.\n\n### Quando evitar\n\n- Textos longos ou com quebra de linha: use `br-textarea`.\n- Escolha entre opções pré-definidas: use `br-select` ou `br-radio`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/input?tab=designer).\n---\n\n\n### **Events:**\n - **valueChange** - Valor atualizado do input\n- **brClear** - Emitido quando o usuário aciona o botão de limpar (`clearable`), depois que o\nvalor foi limpo e o evento `input` foi disparado.\n- **brInputActionClick** - Notifica a ativação do botão do slot `action` por clique ou teclado.\nEmitido no host com `detail.originalEvent` contendo o clique original.\nPropaga e atravessa Shadow DOM; não é cancelável nem altera o clique nativo.\nNão emite para o campo textual, botão de senha, inicialização ou controle desabilitado.\n- **brInputValidationChange** - Informa o início e o resultado do validator, inclusive quando ele consulta\num serviço remoto. O `detail` contém `validating`, `valid` e `message`;\nescrita programática e reset não representam interação do usuário.\n\n### **Methods:**\n - **reportValidity(): _Promise<boolean>_** - Retorna `true` se o valor do input for válido, caso contrário `false`.\nSe o input for inválido, exibe uma mensagem de erro padrão do navegador.\n- **setCustomValidity(message: _string_): _Promise<void>_** - Define uma mensagem de validação customizada para o input.\nSe a mensagem for uma string vazia, o erro customizado é limpo.\n- **validate(): _Promise<boolean>_** - Executa a regra customizada e retorna se o campo está válido.\nSe o validator for assíncrono, aguarda a resposta e ignora resultados\nantigos quando uma execução posterior já começou.\n- **checkValidity(): _Promise<boolean>_** - Retorna `true` se o valor do input for válido, caso contrário `false`.\nSe o input for inválido, dispara um evento 'invalid'.\n- **getValidationState(): _Promise<FormValidationState>_** - Retorna um snapshot serializável da Constraint Validation API.\n- **select(): _Promise<void>_** - Seleciona todo o texto do controle nativo, conforme HTMLInputElement.select().\n- **setRangeText(replacement: _string_, start: _number_, end: _number_, selectionMode: _SelectionMode_): _Promise<void>_** - Substitui um intervalo de texto usando a API nativa do input.\n- **setSelectionRange(start: _number_, end: _number_, direction: _'forward' | 'backward' | 'none'_): _Promise<void>_** - Define o intervalo selecionado no controle nativo.\n- **stepUp(n: _number_): _Promise<void>_** - Incrementa o valor numérico pelo step nativo.\n- **stepDown(n: _number_): _Promise<void>_** - Decrementa o valor numérico pelo step nativo.\n- **showPicker(): _Promise<void>_** - Abre o picker nativo quando o navegador e o tipo do input oferecem essa API.\n- **render(): __** - Renderiza o componente de input.\n\n### **Slots:**\n - **action** - Botão à direita do input.\n- **icon** - Ícone à esquerda do input.\n- **help-text** - Personalização do texto de ajuda.\n- **feedback** - Mensagem de feedback como resposta específica a uma interação do usuário com o input. Pode ser feedback de erro, aviso, sucesso ou informação.\n- **validation-loading** - Indicador exibido enquanto o validator assíncrono está pendente.\n\n### **CSS Parts:**\n - **container** - Contêiner visual principal do input.\n- **label** - Rótulo do input.\n- **input** - Elemento input nativo.\n- **group** - Grupo que contém ícone, input, botão e ajuda.\n- **icon** - Contêiner do slot de ícone.\n- **action** - Botão de ação lateral.\n- **action-button** - Botão interno reexportado do br-button da ação.\n- **clear** - Botão de limpar exibido com `clearable` enquanto há texto editável.\n- **help-text** - Texto de ajuda ou slot de ajuda.\n- **feedback** - Slot de feedback.",
|
|
1826
1822
|
"attributes": [
|
|
1827
1823
|
{
|
|
1828
1824
|
"name": "type",
|
|
@@ -1871,7 +1867,7 @@
|
|
|
1871
1867
|
},
|
|
1872
1868
|
{
|
|
1873
1869
|
"name": "feedback-state",
|
|
1874
|
-
"description": "Estado de feedback
|
|
1870
|
+
"description": "Estado de feedback. Quando informado, tem precedência sobre `state`.",
|
|
1875
1871
|
"values": [{ "name": "InputState" }]
|
|
1876
1872
|
},
|
|
1877
1873
|
{
|
|
@@ -1988,13 +1984,18 @@
|
|
|
1988
1984
|
"name": "action-tab-index",
|
|
1989
1985
|
"description": "Define o tabindex do botão de ação.\nÚtil para remover o botão da sequência de tabulação quando o foco é gerenciado externamente (ex.: br-select).\nAceita inteiros maiores ou iguais a -1; valores inválidos são ignorados.",
|
|
1990
1986
|
"values": []
|
|
1987
|
+
},
|
|
1988
|
+
{
|
|
1989
|
+
"name": "clearable",
|
|
1990
|
+
"description": "Exibe um botão para limpar o texto enquanto o campo tem valor e aceita edição.\nO botão fica à esquerda do botão de ação, quando houver. Ao ser acionado,\nlimpa o valor, emite `input` uma única vez e `brClear`, e devolve o foco ao campo.\nNão é exibido com `disabled` ou `readonly`.",
|
|
1991
|
+
"values": []
|
|
1991
1992
|
}
|
|
1992
1993
|
],
|
|
1993
1994
|
"references": []
|
|
1994
1995
|
},
|
|
1995
1996
|
{
|
|
1996
1997
|
"name": "br-item",
|
|
1997
|
-
"description": "O
|
|
1998
|
+
"description": "O `br-item` padroniza uma linha de conteúdo, ação ou link dentro de listas, menus ou agrupamentos verticais.\n\nColoque o texto ou elementos no slot padrão. Use `interactive` para habilitar efeito de clique e foco, ou `href` para transformá-lo em link navegável. Para destacar um item escolhido, use `selected`.\n\n```html\n<br-item interactive>Item de ação</br-item>\n<br-item href=\"/perfil\">Meu Perfil</br-item>\n```\n\n### Quando usar\n\n- Linhas de dados em listas (`br-list`) ou painéis verticais.\n- Linhas com foco, hover e seleção consistentes com o design system.\n\n### Quando evitar\n\n- Itens específicos de navegação estruturada: use `br-breadcrumb-item`, `br-tab-item` ou `br-step-item`.\n- Opções de seleção em formulário: use `br-select-option`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/item?tab=designer).\n---\n\n\n### **Events:**\n - **brDidClick** - Evento customizado emitido quando o item é clicado, aplicável apenas se o item for um botão (`<button>`).\nPode ser utilizado para ações personalizadas, exceto quando o item está desativado.\n- **brItemClick** - Evento emitido quando o item com comportamento de botão é acionado.\n- **brDidSelect** - Evento customizado aplicável para todos os tipos de elementos (`div`, `button`, `a`), emitido quando a seleção do item interativo ou botão muda.\nO `detail` expõe `{ selected: boolean }` indicando o novo estado.\nNão é emitido quando `disabled` está ativo.\n- **brItemSelect** - Evento emitido quando a seleção muda.\n- **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n\n### **Methods:**\n - **activate()** - Ativa o item programaticamente, simulando um clique na superfície.\nUtilizado pelo br-list para tratar Enter e Espaço via teclado, e\ninternamente pelo próprio item quando standalone (fora de br-list).\n- **setFocus()** - Define o foco no elemento interno do componente.\nEste método pode ser chamado externamente para garantir que o foco seja aplicado ao elemento correto.\n- **setTabIndex(value: _number_)** - Define o tabIndex do elemento interno.\nUtilizado pelo br-list para implementar o padrão roving tabindex,\ngarantindo que apenas um item por vez seja alcançável via Tab.\n\n### **Slots:**\n - **default** - Área de conteúdo, podendo conter qualquer componente, exceto botões primários e componentes relacionados à navegação (como carrosséis, paginações, abas, menus, etc.).\n- **start** - Área de recursos visuais, podendo conter elementos como ícones, avatares e mídias.\n- **end** - Área de recursos complementares, podendo conter componentes interativos, metadados e informações adicionais.\n\n### **CSS Parts:**\n - **item** - Elemento principal do item (botão, link ou div).",
|
|
1998
1999
|
"attributes": [
|
|
1999
2000
|
{
|
|
2000
2001
|
"name": "disabled",
|
|
@@ -2013,7 +2014,7 @@
|
|
|
2013
2014
|
},
|
|
2014
2015
|
{
|
|
2015
2016
|
"name": "active",
|
|
2016
|
-
"description": "Estado ativo
|
|
2017
|
+
"description": "Estado ativo atual. Quando informado, tem precedência sobre `isActive`.",
|
|
2017
2018
|
"values": []
|
|
2018
2019
|
},
|
|
2019
2020
|
{
|
|
@@ -2023,7 +2024,7 @@
|
|
|
2023
2024
|
},
|
|
2024
2025
|
{
|
|
2025
2026
|
"name": "selected",
|
|
2026
|
-
"description": "Estado selecionado
|
|
2027
|
+
"description": "Estado selecionado. Em itens interativos, também é atualizado pelo acionamento.",
|
|
2027
2028
|
"values": []
|
|
2028
2029
|
},
|
|
2029
2030
|
{
|
|
@@ -2081,7 +2082,7 @@
|
|
|
2081
2082
|
},
|
|
2082
2083
|
{
|
|
2083
2084
|
"name": "br-link",
|
|
2084
|
-
"description": "O
|
|
2085
|
+
"description": "O `br-link` conduz a pessoa usuária a outra página, arquivo para download ou seção externa.\n\nColoque o texto ou ícone no slot padrão e aponte o destino em `href`. Para destinos externos ou abas novas, use `target=\"_blank\"`. Para integração com roteadores de SPA, use `navigation-mode=\"event\"` e ouça o evento `brNavigate`.\n\n```html\n<br-link href=\"/servicos\">Serviços disponíveis</br-link>\n<br-link href=\"https://www.gov.br\" target=\"_blank\">Portal Gov.br</br-link>\n```\n\n### Quando usar\n\n- Navegar para outra página, rota ou domínio.\n- Fazer download de arquivos ou saltar para âncoras na mesma página.\n\n### Quando evitar\n\n- Executar uma ação na página atual (salvar, abrir diálogo): use `br-button`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/link?tab=designer).\n---\n\n\n### **Events:**\n - **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n- **brSpaNavigate**\n\n### **Slots:**\n - **default** - Conteúdo do link (texto, ícones ou outros elementos).\n\n### **CSS Parts:**\n - **anchor** - Parte exposta para o elemento âncora interno, usada para estilos customizados via `::part(anchor)`.",
|
|
2085
2086
|
"attributes": [
|
|
2086
2087
|
{
|
|
2087
2088
|
"name": "href",
|
|
@@ -2155,7 +2156,7 @@
|
|
|
2155
2156
|
},
|
|
2156
2157
|
{
|
|
2157
2158
|
"name": "aria-expanded",
|
|
2158
|
-
"description": "Valor
|
|
2159
|
+
"description": "Valor de `aria-expanded`.",
|
|
2159
2160
|
"values": []
|
|
2160
2161
|
},
|
|
2161
2162
|
{
|
|
@@ -2165,7 +2166,7 @@
|
|
|
2165
2166
|
},
|
|
2166
2167
|
{
|
|
2167
2168
|
"name": "aria-selected",
|
|
2168
|
-
"description": "Valor
|
|
2169
|
+
"description": "Valor de `aria-selected`.",
|
|
2169
2170
|
"values": []
|
|
2170
2171
|
},
|
|
2171
2172
|
{
|
|
@@ -2175,7 +2176,7 @@
|
|
|
2175
2176
|
},
|
|
2176
2177
|
{
|
|
2177
2178
|
"name": "aria-haspopup",
|
|
2178
|
-
"description": "Valor
|
|
2179
|
+
"description": "Valor de `aria-haspopup`.",
|
|
2179
2180
|
"values": []
|
|
2180
2181
|
},
|
|
2181
2182
|
{
|
|
@@ -2185,7 +2186,7 @@
|
|
|
2185
2186
|
},
|
|
2186
2187
|
{
|
|
2187
2188
|
"name": "aria-current",
|
|
2188
|
-
"description": "Valor
|
|
2189
|
+
"description": "Valor de `aria-current`.",
|
|
2189
2190
|
"values": []
|
|
2190
2191
|
},
|
|
2191
2192
|
{
|
|
@@ -2195,7 +2196,7 @@
|
|
|
2195
2196
|
},
|
|
2196
2197
|
{
|
|
2197
2198
|
"name": "aria-label",
|
|
2198
|
-
"description": "Valor
|
|
2199
|
+
"description": "Valor de `aria-label`.",
|
|
2199
2200
|
"values": []
|
|
2200
2201
|
},
|
|
2201
2202
|
{
|
|
@@ -2205,7 +2206,7 @@
|
|
|
2205
2206
|
},
|
|
2206
2207
|
{
|
|
2207
2208
|
"name": "aria-describedby",
|
|
2208
|
-
"description": "Valor
|
|
2209
|
+
"description": "Valor de `aria-describedby`.",
|
|
2209
2210
|
"values": []
|
|
2210
2211
|
}
|
|
2211
2212
|
],
|
|
@@ -2213,7 +2214,7 @@
|
|
|
2213
2214
|
},
|
|
2214
2215
|
{
|
|
2215
2216
|
"name": "br-list",
|
|
2216
|
-
"description": "O
|
|
2217
|
+
"description": "O `br-list` organiza coleções verticais de itens homogêneos ou relacionados, como listas de contatos, tarefas ou configurações.\n\nAdicione os itens (como `br-item`) no slot padrão. Se precisar de um título ou ações no topo da lista, use o slot `header` ou a propriedade `title`.\n\n```html\n<br-list title=\"Configurações\">\n <br-item interactive>Notificações</br-item>\n <br-item interactive>Segurança</br-item>\n</br-list>\n```\n\n### Quando usar\n\n- Sequências verticais de itens com leitura linear.\n- Listas de opções simples ou links agrupados.\n\n### Quando evitar\n\n- Dados em linhas e colunas com ordenação: use `br-table`.\n- Menu lateral de navegação da página: use `br-menu`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/list?tab=designer).\n---\n\n\n### **Methods:**\n - **handleAccordionExclusivity(event: _CustomEvent<{ accordionGroup?: string }>_)** - Coordena o accordion entre listas irmãs. Quando o `br-collapse` interno\ndesta lista abre, fecha o `br-collapse` das demais `br-list` irmãs que\ncompartilham o mesmo valor de `accordion`. Só reage ao evento da própria\nlista — `brCollapseOpen` de outras listas não passa por este host.\n- **focusFirstItem()** - Move o foco para o primeiro item navegável da lista.\nAPI pública para componentes que abrem a lista programaticamente\n(ex.: `br-dropdown`), evitando acesso direto ao `br-item`.\n\n### **Slots:**\n - **default** - Slot para os itens da lista.\n- **header** - Slot para ações ou conteúdo do cabeçalho da lista.\n\n### **CSS Parts:**\n - **container** - Wrapper principal da lista.",
|
|
2217
2218
|
"attributes": [
|
|
2218
2219
|
{
|
|
2219
2220
|
"name": "header",
|
|
@@ -2227,7 +2228,7 @@
|
|
|
2227
2228
|
},
|
|
2228
2229
|
{
|
|
2229
2230
|
"name": "orientation",
|
|
2230
|
-
"description": "Orientação
|
|
2231
|
+
"description": "Orientação padrão. Quando informada, tem precedência sobre `isHorizontal`; valores inválidos usam `vertical`.",
|
|
2231
2232
|
"values": [{ "name": "horizontal" }, { "name": "vertical" }]
|
|
2232
2233
|
},
|
|
2233
2234
|
{
|
|
@@ -2274,7 +2275,7 @@
|
|
|
2274
2275
|
},
|
|
2275
2276
|
{
|
|
2276
2277
|
"name": "br-loading",
|
|
2277
|
-
"description": "O
|
|
2278
|
+
"description": "O `br-loading` indica visualmente que uma operação assíncrona está em andamento.\n\nSuporta o modo circular padrão (indeterminado) ou o modo determinístico com barra e percentual via `progress`. Para adicionar uma mensagem explicativa, informe `label`.\n\n```html\n<br-loading label=\"Carregando dados...\"></br-loading>\n<br-loading progress=\"60\" label=\"Enviando arquivo...\"></br-loading>\n```\n\n### Quando usar\n\n- Operações que demoram mais de 300 ms (carregamento de dados, envio de formulário).\n- Downloads ou uploads com percentual de progresso mensurável.\n\n### Quando evitar\n\n- Operações instantâneas (menos de 300 ms).\n- Carregamento interno em botão: use a propriedade `loading` do `br-button`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/loading?tab=designer).\n---\n\n\n### **Events:**\n - **brLoadingChange** - Notifica mudança de progresso no modo `progress`.\n- **brLoadingComplete** - Notifica conclusão do progresso no modo `progress`.\n- **brLoadingReset** - Notifica reinício do progresso no modo `progress`.\n- **brLoadingCancel** - Notifica clique no botão de cancelamento no modo `progress`.\nEste evento não altera o progresso automaticamente.\nA aplicação consumidora define a ação após o cancelamento (ex.: limpar ou ocultar).\n- **brIndeterminateStateChange** - Notifica mudança do estado lógico no modo `spinner`.\n- **brDidShow** - Notifica que o componente foi exibido.\n- **brLoadingShow** - Evento emitido quando o loading é exibido.\n- **brDidHide** - Notifica que o componente foi ocultado.\n- **brLoadingHide** - Evento emitido quando o loading é ocultado.\n\n### **Methods:**\n - **handleCompletion(newValue: _number_)** - Reage a mudanças em `value` no modo `progress`.\n- **handleModeChange()** - Reage a mudanças em `mode` e atualiza o estado lógico de atividade.\n- **setValue(value: _number_): _Promise<{ value: number }>_** - Define o valor do progresso.\n- **incrementValue(step): _Promise<{ value: number }>_** - Soma um valor ao progresso atual.\n- **complete(): _Promise<{ value: number }>_** - Define o progresso como concluído.\n- **reset(): _Promise<{ value: number }>_** - Reinicia o progresso e exibe o componente.\n- **show(): _Promise<{ visible: boolean }>_** - Exibe o componente.\n- **hide(): _Promise<{ visible: boolean }>_** - Oculta o componente.\n- **render(): __** - Renderiza o componente conforme o modo atual.\n\n### **Slots:**\n - **label** - Rótulo customizado do loading. Quando utilizado, a prop `label` é ignorada.\n- **cancel-button** - Conteúdo customizado do botão de cancelar. Quando utilizado, a prop `cancelLabel` é ignorada.\n\n### **CSS Parts:**\n - **container** - Wrapper principal do loading.\n- **wrapper** - Wrapper do conteúdo do spinner/progress.\n- **svg** - Elemento SVG principal do loading.\n- **percentage** - Texto de percentual no modo `progress`.\n- **label-wrapper** - Wrapper do rótulo no modo `spinner`.\n- **cancel-button** - Botão de cancelamento no modo `progress` cancelável.",
|
|
2278
2279
|
"attributes": [
|
|
2279
2280
|
{
|
|
2280
2281
|
"name": "label-position",
|
|
@@ -2298,7 +2299,7 @@
|
|
|
2298
2299
|
},
|
|
2299
2300
|
{
|
|
2300
2301
|
"name": "density",
|
|
2301
|
-
"description": "Densidade visual
|
|
2302
|
+
"description": "Densidade visual. Quando informada, tem precedência sobre `size`.\nAceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.",
|
|
2302
2303
|
"values": [{ "name": "LoadingSize" }]
|
|
2303
2304
|
},
|
|
2304
2305
|
{
|
|
@@ -2341,7 +2342,7 @@
|
|
|
2341
2342
|
},
|
|
2342
2343
|
{
|
|
2343
2344
|
"name": "br-magic-button",
|
|
2344
|
-
"description": "O
|
|
2345
|
+
"description": "O `br-magic-button` é o botão de ação flutuante (FAB) que destaca a ação primária ou mais frequente da tela.\n\nPode ser exibido apenas com ícone (formato circular) ou expandido com texto descritivo.\n\n```html\n<br-magic-button icon=\"fa6-solid:plus\" aria-label=\"Novo item\"></br-magic-button>\n<br-magic-button icon=\"fa6-solid:plus\">Criar documento</br-magic-button>\n```\n\n### Quando usar\n\n- Ação principal e dominante da tela em dispositivos móveis ou interfaces focadas em uma tarefa única.\n\n### Quando evitar\n\n- Múltiplas ações de mesma importância: use `br-button`.\n- Ações secundárias ou destrutivas.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/magic-button?tab=designer).\n---\n\n\n### **Methods:**\n - **render()** - Renderiza o componente.\n\n### **Slots:**\n - **default** - Conteúdo interno do botão (texto ou ícone).\n- **icon** - Ícone customizado do botão. Quando utilizado, a prop `icon` é ignorada.\n\n### **CSS Parts:**\n - **container** - Wrapper principal do magic-button.\n- **button** - Elemento button interno.",
|
|
2345
2346
|
"attributes": [
|
|
2346
2347
|
{
|
|
2347
2348
|
"name": "custom-id",
|
|
@@ -2378,7 +2379,7 @@
|
|
|
2378
2379
|
},
|
|
2379
2380
|
{
|
|
2380
2381
|
"name": "br-menu",
|
|
2381
|
-
"description": "O
|
|
2382
|
+
"description": "O `br-menu` organiza a navegação lateral da aplicação em gaveta retrátil ou barra fixa.\n\nUse `is-open` para controlar a visibilidade, ou chame os métodos `open()`, `close()` e `toggle()`. Estruture a navegação com os subcomponentes `br-menu-header`, `br-menu-group`, `br-menu-list` e `br-menu-item`.\n\n```html\n<br-menu id=\"menu-principal\">\n <div slot=\"header\">\n <br-menu-header title-text=\"Menu Principal\"></br-menu-header>\n </div>\n <br-menu-list>\n <br-menu-item>\n <br-menu-link href=\"/inicio\">Início</br-menu-link>\n </br-menu-item>\n <br-menu-item>\n <br-menu-link href=\"/servicos\">Serviços</br-menu-link>\n </br-menu-item>\n </br-menu-list>\n</br-menu>\n```\n\n### Quando usar\n\n- Menus com hierarquia de seções, grupos ou múltiplos níveis de páginas.\n- Navegação lateral que precisa ser recolhida em telas móveis com fechamento por máscara (`br-scrim`).\n\n### Quando evitar\n\n- Poucos itens que cabem diretamente no cabeçalho: use `br-header`.\n- Alternar visões na mesma página: use `br-tab`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/menu?tab=designer).\n---\n\n\n### **Events:**\n - **brMenuStateChange** - Evento emitido quando o menu abre ou fecha.\n- **brMenuOpenChange** - Evento emitido quando o menu abre ou fecha.\n`detail.open` contém o estado concluído e `detail.sourceId` identifica a instância pelo `id` ou `customId`.\n\n### **Methods:**\n - **onDocumentClick(ev: _MouseEvent_)** - Escuta cliques no documento para alternar o estado do menu automaticamente\nquando um elemento com o atributo `data-toggle=\"menu\"` é clicado.\nUtiliza o caminho completo do evento (composedPath) para permitir o funcionamento\ncorreto quando o botão acionador está dentro de outros componentes com Shadow DOM (ex: br-header).\n- **open(): _Promise<void>_** - Abre o painel do menu.\nPode ser chamado externamente: `menuEl.open()`.\n- **close(): _Promise<void>_** - Fecha o painel do menu.\nPode ser chamado externamente: `menuEl.close()`.\n- **toggle(): _Promise<void>_** - Alterna o estado do painel do menu (abre se fechado, fecha se aberto).\nPode ser chamado externamente: `menuEl.toggle()`.\n\n### **Slots:**\n - **default** - Slot para o conteúdo principal do menu (menu-list, menu-group e menu-item).\n- **header** - Slot para o cabeçalho do menu, exibido apenas em modo não contextual e não push.\n- **logo** - Slot para logotipos de parceiros no rodapé.\n- **link** - Slot para links externos no rodapé (use br-menu-link).\n- **social** - Slot para ícones de redes sociais no rodapé.\n- **info** - Slot para informações adicionais no rodapé.\n\n### **CSS Parts:**\n - **footer** - Parte para o contêiner principal do rodapé do menu, agrupando logos, links, redes sociais e informações.\n- **logo** - Parte para a área de logotipos de parceiros no rodapé.\n- **link** - Parte para links úteis ou navegação secundária no rodapé.\n- **social** - Parte para ícones de redes sociais no rodapé.\n- **info** - Parte para informações adicionais, como licença ou direitos autorais.\n- **container** - Parte para o container externo que envolve o menu inteiro.\n- **panel** - Parte para o painel de navegação do menu (o menu propriamente dito).\n- **body** - Parte principal onde ficam os links e grupos de navegação.\n- **trigger** - Botão de acionamento do menu (hambúrguer ou contextual).\n- **back-btn** - Botão de voltar do menu de navegação drill-down.",
|
|
2382
2383
|
"attributes": [
|
|
2383
2384
|
{
|
|
2384
2385
|
"name": "custom-id",
|
|
@@ -2430,7 +2431,7 @@
|
|
|
2430
2431
|
},
|
|
2431
2432
|
{
|
|
2432
2433
|
"name": "br-menu-group",
|
|
2433
|
-
"description": "
|
|
2434
|
+
"description": "Agrupa itens de menu sob um título ou categoria comum. Use dentro do `br-menu`.\n\nDefina o título do grupo pelo slot `label` ou pela propriedade `label`. Insira a lista de itens (`br-menu-list`) no slot padrão.\n---\n\n\n### **Slots:**\n - **default** - Itens do grupo.\n\n### **CSS Parts:**\n - **container** - Contêiner do agrupamento.\n- **label** - Rótulo visual do agrupamento.\n- **list** - Contêiner dos itens agrupados.",
|
|
2434
2435
|
"attributes": [
|
|
2435
2436
|
{
|
|
2436
2437
|
"name": "label",
|
|
@@ -2447,7 +2448,7 @@
|
|
|
2447
2448
|
},
|
|
2448
2449
|
{
|
|
2449
2450
|
"name": "br-menu-header",
|
|
2450
|
-
"description": "
|
|
2451
|
+
"description": "Cabeçalho do menu lateral com título e botão de fechar. Use no slot `header` do `br-menu`.\n\nDefina o título da área em `title-text`. O botão de fechar emite o fechamento para o `br-menu` pai.\n---\n\n\n### **Events:**\n - **brMenuToggle** - Evento emitido para alternar o estado do menu\n\n### **Slots:**\n - **logo** - Slot para logo personalizado no cabeçalho.\n- **signature** - Slot para a assinatura personalizada do sistema.\n\n### **CSS Parts:**\n - **container** - Wrapper do cabeçalho do menu.\n- **title** - Área do título com logo e assinatura.\n- **close** - Área do botão de fechar.\n- **logo** - Elemento de imagem do logotipo (se renderizado a partir de logoSrc).\n- **signature** - Elemento de texto contendo a assinatura do sistema.",
|
|
2451
2452
|
"attributes": [
|
|
2452
2453
|
{
|
|
2453
2454
|
"name": "custom-id",
|
|
@@ -2474,7 +2475,7 @@
|
|
|
2474
2475
|
},
|
|
2475
2476
|
{
|
|
2476
2477
|
"name": "br-menu-info",
|
|
2477
|
-
"description": "
|
|
2478
|
+
"description": "Exibe informações de apoio (versão do sistema, dados do usuário ou licença) no menu. Use no slot `info` ou no rodapé do `br-menu`.\n---\n\n\n### **Slots:**\n - **default** - Slot para conteúdo personalizado no lugar do texto padrão de informações.",
|
|
2478
2479
|
"attributes": [
|
|
2479
2480
|
{
|
|
2480
2481
|
"name": "custom-id",
|
|
@@ -2491,7 +2492,7 @@
|
|
|
2491
2492
|
},
|
|
2492
2493
|
{
|
|
2493
2494
|
"name": "br-menu-item",
|
|
2494
|
-
"description": "
|
|
2495
|
+
"description": "Representa uma linha de navegação ou botão de submenu dentro do `br-menu-list`.\n\nColoque um `br-menu-link` ou texto no slot padrão. Para submenus multiníveis, adicione a lista filha no interior do item.\n---\n\n\n### **Events:**\n - **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n\n### **Slots:**\n - **default** - Conteúdo textual principal exibido no item de menu.\n- **icon** - Ícone personalizado. Quando preenchido, substitui o ícone definido por `icon`.\n\n### **CSS Parts:**\n - **link** - Elemento âncora do item de menu.\n- **icon** - Ícone do item de menu.\n- **content** - Conteúdo textual do item de menu.\n- **support** - Ícone de suporte (seta para baixo/direita).",
|
|
2495
2496
|
"attributes": [
|
|
2496
2497
|
{
|
|
2497
2498
|
"name": "icon",
|
|
@@ -2538,7 +2539,7 @@
|
|
|
2538
2539
|
},
|
|
2539
2540
|
{
|
|
2540
2541
|
"name": "br-menu-link",
|
|
2541
|
-
"description": "
|
|
2542
|
+
"description": "Hiperlink de navegação dentro do `br-menu`. Use dentro de um `br-menu-item` ou no rodapé do menu.\n\nAponte o destino em `href`. Para destinos externos, use `target=\"_blank\"`.\n---\n\n\n### **Events:**\n - **brLinkClick** - Evento emitido quando o link externo é clicado.\n- **brMenuLinkClick** - Evento emitido quando o link externo é clicado.\n- **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n\n### **Slots:**\n - **icon** - Slot para ícone personalizado do link.\n- **url** - Slot para o texto exibido no link.\n\n### **CSS Parts:**\n - **link** - Elemento âncora do link.",
|
|
2542
2543
|
"attributes": [
|
|
2543
2544
|
{
|
|
2544
2545
|
"name": "custom-id",
|
|
@@ -2559,7 +2560,7 @@
|
|
|
2559
2560
|
{ "name": "titulo", "description": "Título do link", "values": [] },
|
|
2560
2561
|
{
|
|
2561
2562
|
"name": "label",
|
|
2562
|
-
"description": "Texto
|
|
2563
|
+
"description": "Texto do link. Quando informado, tem precedência sobre `titulo`.",
|
|
2563
2564
|
"values": []
|
|
2564
2565
|
}
|
|
2565
2566
|
],
|
|
@@ -2567,7 +2568,7 @@
|
|
|
2567
2568
|
},
|
|
2568
2569
|
{
|
|
2569
2570
|
"name": "br-menu-list",
|
|
2570
|
-
"description": "
|
|
2571
|
+
"description": "Lista de itens de navegação dentro do `br-menu` ou `br-menu-group`.\n\nInsira os elementos `br-menu-item` no slot padrão para compor a lista navegável.\n---\n\n\n### **Events:**\n - **folderToggled** - Emitido quando um folder é expandido ou recolhido no nível 0 (comportamento acordeão).\n- **navigateToSubmenu** - Emitido quando navegando para um submenu nos níveis 1+ (comportamento drill-down).\n\n### **Slots:**\n - **default** - Itens filhos renderizados no conteúdo do grupo.\n- **icon** - Ícone personalizado do item principal. Quando preenchido, substitui `icon`.\n\n### **CSS Parts:**\n - **container** - Wrapper do grupo de menu.\n- **list** - Lista de itens do grupo.\n- **header-link** - Elemento âncora do item de menu principal (header).\n- **header-icon** - Ícone do item de menu principal (header).\n- **header-content** - Conteúdo textual do item de menu principal (header).\n- **header-support** - Ícone de suporte (seta) do item de menu principal (header).",
|
|
2571
2572
|
"attributes": [
|
|
2572
2573
|
{
|
|
2573
2574
|
"name": "icon",
|
|
@@ -2599,7 +2600,7 @@
|
|
|
2599
2600
|
},
|
|
2600
2601
|
{
|
|
2601
2602
|
"name": "br-menu-logo",
|
|
2602
|
-
"description": "
|
|
2603
|
+
"description": "Exibe o logotipo institucional no interior do `br-menu`. Use no cabeçalho ou rodapé do menu.\n---\n\n\n### **Events:**\n - **brMenuLogoError** - Emitido quando a imagem principal e o fallback falham.\n- **brMenuLogoError**\n\n### **Slots:**\n - **default** - Slot para logo ou conteúdo que substitui a imagem padrão.\n\n### **CSS Parts:**\n - **container** - Wrapper da logo.",
|
|
2603
2604
|
"attributes": [
|
|
2604
2605
|
{
|
|
2605
2606
|
"name": "custom-id",
|
|
@@ -2632,7 +2633,7 @@
|
|
|
2632
2633
|
},
|
|
2633
2634
|
{
|
|
2634
2635
|
"name": "br-menu-social",
|
|
2635
|
-
"description": "
|
|
2636
|
+
"description": "Bloco de canais e redes sociais institucionais dentro do `br-menu`. Use no slot `social` ou rodapé do menu.\n---\n\n\n### **Events:**\n - **brSocialClick** - Evento emitido quando o link de rede social é clicado.\n- **brMenuSocialClick** - Evento emitido quando o link de rede social é clicado.\n- **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n\n### **Slots:**\n - **icon** - Slot para ícone personalizado da rede social.",
|
|
2636
2637
|
"attributes": [
|
|
2637
2638
|
{
|
|
2638
2639
|
"name": "custom-id",
|
|
@@ -2665,7 +2666,7 @@
|
|
|
2665
2666
|
},
|
|
2666
2667
|
{
|
|
2667
2668
|
"name": "br-message",
|
|
2668
|
-
"description": "O
|
|
2669
|
+
"description": "O `br-message` apresenta um aviso contextual ou feedback em linha sobre uma operação ou estado do sistema.\n\nDefina o tipo de mensagem em `state` (`success`, `danger`, `warning` ou `info`). Opcionalmente, adicione um botão para fechar com `closable`.\n\n```html\n<br-message state=\"success\" message-title=\"Sucesso\">\n Operação realizada com sucesso.\n</br-message>\n<br-message state=\"danger\" closable>\n Não foi possível salvar os dados. Tente novamente.\n</br-message>\n```\n\n### Quando usar\n\n- Feedback sobre uma ação recém-executada na página (salvar, excluir, atualizar).\n- Mensagens de erro ou orientação em formulários (no slot `feedback` de inputs).\n\n### Quando evitar\n\n- Avisos críticos que exigem decisão antes de prosseguir: use `br-modal`.\n- Notificações acumuladas em uma central: use `br-notification`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/message?tab=designer).\n---\n\n\n### **Events:**\n - **brDidClose** - Evento emitido quando o usuário fecha a mensagem, se closable for true.\n- **brMessageClose** - Evento emitido quando a mensagem é fechada.\n\n### **Slots:**\n - **default** - Conteúdo principal da mensagem. Quando utilizado, a prop `message` é ignorada.\n- **icon** - Ícone customizado da mensagem. Quando utilizado, o ícone padrão gerado pela prop `state` é ignorado.\n- **message-title** - Título customizado da mensagem. Quando utilizado, a prop `messageTitle` é ignorada.\n- **message-body** - Corpo customizado da mensagem. Quando utilizado, a prop `message` é ignorada.\n- **close-button** - Botão de fechar customizado. Quando utilizado, o botão padrão é substituído.\n\n### **CSS Parts:**\n - **container** - Wrapper principal da mensagem.\n- **icon** - Área do ícone da mensagem.\n- **content** - Área de conteúdo da mensagem.\n- **close** - Área do botão de fechar.",
|
|
2669
2670
|
"attributes": [
|
|
2670
2671
|
{
|
|
2671
2672
|
"name": "message-title",
|
|
@@ -2729,7 +2730,7 @@
|
|
|
2729
2730
|
},
|
|
2730
2731
|
{
|
|
2731
2732
|
"name": "feedback-state",
|
|
2732
|
-
"description": "Estado de feedback
|
|
2733
|
+
"description": "Estado de feedback. Quando informado, tem precedência sobre `state`.",
|
|
2733
2734
|
"values": [{ "name": "BrFeedbackState" }]
|
|
2734
2735
|
},
|
|
2735
2736
|
{
|
|
@@ -2742,7 +2743,7 @@
|
|
|
2742
2743
|
},
|
|
2743
2744
|
{
|
|
2744
2745
|
"name": "br-modal",
|
|
2745
|
-
"description": "O
|
|
2746
|
+
"description": "O `br-modal` abre uma janela de diálogo bloqueadora sobre uma máscara, capturando a atenção imediata da pessoa usuária.\n\nControle a abertura com os métodos `open()`, `close()` e `showModal()`. Estruture o conteúdo usando os slots `header`, `default` (corpo) e `footer` (botões de ação).\n\n```html\n<br-modal title-text=\"Excluir item\">\n <p>Deseja realmente excluir este registro? Esta ação não pode ser desfeita.</p>\n <div slot=\"footer\">\n <br-button emphasis=\"secondary\">Cancelar</br-button>\n <br-button emphasis=\"primary\">Excluir</br-button>\n </div>\n</br-modal>\n```\n\n### Quando usar\n\n- Confirmação de ações críticas ou irreversíveis (excluir registro, descartar alterações).\n- Formulários curtos e contextuais sem sair da tela atual.\n\n### Quando evitar\n\n- Mensagens informativas que não exigem confirmação: use `br-message`.\n- Conteúdos longos com navegação interna: use uma página dedicada.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/modal?tab=designer).\n---\n\n\n### **Events:**\n - **brModalOpen** - Evento emitido quando o modal é aberto (quando `show` muda de `false` para `true`).\n- **brModalClose** - Evento emitido após o modal ser fechado (quando `show` muda de `true` para `false`).\n- **brModalBeforeClose** - Evento emitido antes do fechamento do modal (quando o botão X é clicado).\nSe autoClose está desativado, o desenvolvedor deve fechar manualmente o modal após este evento.\nSe autoClose está ativado, o modal fecha automaticamente após este evento.\n- **brModalOpened** - Evento emitido após o modal estar completamente aberto e com o foco estabilizado\ndentro dele. Complementa `brModalOpen` (que dispara imediatamente ao abrir):\nuse `brModalOpened` quando precisar interagir com o modal já pronto.\n\n### **Methods:**\n - **open()** - Método público para abrir o modal\n- **showModal(): _Promise<void>_** - Abre o modal usando a nomenclatura de `HTMLDialogElement`.\n- **close()** - Método público para fechar o modal\n- **requestClose(): _Promise<void>_** - Solicita fechamento e permite cancelamento pelo evento `cancel`.\n- **toggle()** - Método público para alternar a visibilidade do modal\n\n### **Slots:**\n - **header** - Cabeçalho do modal. Se não for usado, o `title-text` será exibido.\n- **default** - Corpo do modal.\n- **footer** - Rodapé do modal.\n- **close-button** - Botão de fechar customizado. Se não for usado, o botão padrão será exibido.\n\n### **CSS Parts:**\n - **container** - Wrapper principal do modal.\n- **header** - Cabeçalho do modal.\n- **title** - Título do modal.\n- **body** - Corpo do modal.\n- **footer** - Rodapé do modal.\n- **close-button** - Botão de fechar do modal.",
|
|
2746
2747
|
"attributes": [
|
|
2747
2748
|
{
|
|
2748
2749
|
"name": "custom-id",
|
|
@@ -2789,7 +2790,7 @@
|
|
|
2789
2790
|
},
|
|
2790
2791
|
{
|
|
2791
2792
|
"name": "br-notification",
|
|
2792
|
-
"description": "O
|
|
2793
|
+
"description": "O `br-notification` organiza a central de mensagens, comunicados e avisos do usuário em um painel retrátil.\n\nUse os métodos `open()`, `close()` ou a propriedade `isOpen` para controlar o painel. Estruture o conteúdo com `br-notification-header`, `br-notification-body` e `br-notification-item`.\n\n```html\n<br-notification>\n <div slot=\"header\">\n <br-notification-header title-text=\"Notificações\"></br-notification-header>\n </div>\n <br-notification-body>\n <br-notification-item title-text=\"Seu processo foi atualizado\" date=\"10/10/2026\"></br-notification-item>\n </br-notification-body>\n</br-notification>\n```\n\n### Quando usar\n\n- Central de avisos acumulados da aplicação, normalmente acionada por um botão no cabeçalho.\n\n### Quando evitar\n\n- Mensagens em linha como resposta direta a uma ação na tela: use `br-message`.\n- Confirmação de ação crítica: use `br-modal`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/notification?tab=designer).\n---\n\n\n### **Events:**\n - **brOpenChange** - Informa a mudança de estado aberto/fechado do painel.\n- **brNotificationOpen** - Informa que o painel foi aberto.\n- **brNotificationClose** - Informa que o painel foi fechado.\n- **brNotificationItemClick** - Expõe a interação com um item da lista.\n- **brNotificationTabChange** - Informa troca de aba quando o componente possuir navegação por tabs.\n\n### **Methods:**\n - **show()** - Abre o painel de notificações.\n- **hide(reason: _NotificationCloseReason_)** - Fecha o painel de notificações.\n- **toggle()** - Alterna o estado aberto/fechado.\n- **focusTrigger()** - Move o foco de volta para o acionador.\n- **focusFirstItem()** - Move o foco para o primeiro item interativo da lista.\n\n### **Slots:**\n - **trigger** - Elemento acionador externo responsável por abrir e fechar o painel.\n- **header** - Região superior do componente, para uso com subcomponentes de cabeçalho ou conteúdo customizado.\n- **tabs** - Região opcional para navegação por abas.\n- **default** - Região principal da lista de notificações.\n- **footer** - Região opcional para ações complementares, como \"ver todas\".\n\n### **CSS Parts:**\n - **base** - Superfície principal do painel.\n- **header** - Região superior do componente.\n- **body** - Região principal do componente.\n- **tabs** - Região de abas, quando existir.\n- **list** - Região com rolagem onde os itens são exibidos.\n- **close-button** - Botão de fechar do painel.\n- **divider** - Divisor entre itens da lista.",
|
|
2793
2794
|
"attributes": [
|
|
2794
2795
|
{
|
|
2795
2796
|
"name": "custom-id",
|
|
@@ -2856,7 +2857,7 @@
|
|
|
2856
2857
|
},
|
|
2857
2858
|
{
|
|
2858
2859
|
"name": "br-notification-body",
|
|
2859
|
-
"description": "
|
|
2860
|
+
"description": "Corpo do painel de notificações com rolagem independente. Use dentro do `br-notification`.\n\nInsira os itens `br-notification-item` no slot padrão.\n---\n\n\n### **Slots:**\n - **tabs** - Navegação por abas quando presente.\n- **default** - Lista principal de notificações.\n- **empty** - Conteúdo para estado vazio.",
|
|
2860
2861
|
"attributes": [
|
|
2861
2862
|
{
|
|
2862
2863
|
"name": "custom-id",
|
|
@@ -2878,7 +2879,7 @@
|
|
|
2878
2879
|
},
|
|
2879
2880
|
{
|
|
2880
2881
|
"name": "br-notification-header",
|
|
2881
|
-
"description": "
|
|
2882
|
+
"description": "Cabeçalho da central de notificações com título e botão de fechar. Use no slot `header` do `br-notification`.\n\nDefina o título em `title-text`. O botão de fechar emite o fechamento para o painel pai.\n---\n\n\n### **Events:**\n - **brNotificationHeaderClose** - Solicita o fechamento do painel a partir do cabeçalho.\n\n### **Slots:**\n - **title** - Conteúdo customizado do título.\n- **subtitle** - Conteúdo customizado do subtítulo.\n- **actions** - Região para botão de fechar ou outras ações contextuais.",
|
|
2882
2883
|
"attributes": [
|
|
2883
2884
|
{
|
|
2884
2885
|
"name": "custom-id",
|
|
@@ -2910,7 +2911,7 @@
|
|
|
2910
2911
|
},
|
|
2911
2912
|
{
|
|
2912
2913
|
"name": "br-notification-item",
|
|
2913
|
-
"description": "
|
|
2914
|
+
"description": "Item individual de notificação com título, data e status de leitura. Use dentro do `br-notification-body`.\n\nDefina o título em `title-text` e a data em `date`. Use `read` para indicar se o item já foi lido.\n---\n\n\n### **Events:**\n - **brNotificationItemSelect** - Informa seleção ou acionamento do item.\n- **brNotificationItemRead** - Informa mudança de estado para lido.\n\n### **Methods:**\n - **callFocus()** - Move o foco para o elemento interativo do item.\n\n### **Slots:**\n - **default** - Conteúdo principal da notificação.\n- **actions** - Ações contextuais do item.",
|
|
2914
2915
|
"attributes": [
|
|
2915
2916
|
{
|
|
2916
2917
|
"name": "item-id",
|
|
@@ -2952,7 +2953,7 @@
|
|
|
2952
2953
|
},
|
|
2953
2954
|
{
|
|
2954
2955
|
"name": "br-pagination",
|
|
2955
|
-
"description": "O
|
|
2956
|
+
"description": "O `br-pagination` divide grandes volumes de dados em páginas numeradas sequenciais.\n\nInforme a quantidade total de itens em `total` e a página atual em `current`. Ouça o evento `brPaginationPageChange` para carregar a página solicitada. Para permitir alterar itens por página, use a variante contextual ou defina `per-page`.\n\n```html\n<br-pagination total=\"100\" per-page=\"10\" current=\"1\"></br-pagination>\n```\n\n### Quando usar\n\n- Paginação de tabelas (`br-table`) ou listas extensas.\n\n### Quando evitar\n\n- Poucos itens (menos de 20 itens) que cabem em uma visualização direta.\n- Etapas sequenciais de um formulário ou cadastro: use `br-step` ou `br-wizard`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/pagination?tab=designer).\n---\n\n\n### **Events:**\n - **pageChange** - Solicita uma página por interação do usuário ou pelo método público.\n\nEm `controlled`, o evento informa a página solicitada, mas `current` só\nmuda quando a aplicação confirma o resultado. O componente não faz\nchamadas remotas nem cancela a consulta do consumidor.\n- **brPaginationPageChange** - Evento para iniciar o carregamento de uma página.\nO `detail` contém `{ page }`; o evento não é cancelável.\n- **perPageChange** - Solicita uma quantidade de itens por página (variante contextual).\nEm `controlled`, a aplicação confirma a mudança atribuindo `perPage`.\n- **brPaginationPerPageChange** - Evento para iniciar o carregamento de uma nova quantidade de\nitens. O `detail` contém `{ perPage }`; o evento não é cancelável.\n\n### **Methods:**\n - **setPage(page: _number_): _Promise<void>_** - Define programaticamente a página atual dentro do intervalo permitido.\n- **goToPage(page: _number_): _Promise<void>_** - Solicita navegação programática para uma página (1-indexada).\nEm `controlled`, aguarda a confirmação externa para alterar `current`.\n\n### **Slots:**\n - **pagination-info** - Informação customizada da paginação contextual. Quando utilizado, o texto padrão de contagem é substituído.\n- **loading** - Indicador exibido enquanto uma página é carregada.\n\n### **CSS Parts:**\n - **nav** - Parte para o contêiner raiz da paginação (elemento nav), usada para estilização via ::part().\n- **list** - Parte para a lista de páginas (elemento ul), usada para estilização via ::part().\n- **page** - Parte para os itens de página numérica (elemento a), usada para estilização via ::part().\n- **ellipsis** - Parte para o botão de reticências e seu contêiner.\n- **ellipsis-button** - Parte encaminhada do botão de reticências.\n- **per-page** - Parte para o seletor de itens por página na variante contextual.\n- **per-page-container** - Contêiner encaminhado do seletor de itens por página.\n- **per-page-input** - Campo encaminhado do seletor de itens por página.\n- **per-page-input-label** - Rótulo encaminhado do seletor de itens por página.\n- **per-page-list** - Lista encaminhada do seletor de itens por página.\n- **go-to** - Parte para o seletor de navegação direta na variante contextual.\n- **go-to-container** - Contêiner encaminhado do seletor de navegação direta.\n- **go-to-input** - Campo encaminhado do seletor de navegação direta.\n- **go-to-input-label** - Rótulo encaminhado do seletor de navegação direta.\n- **go-to-list** - Lista encaminhada do seletor de navegação direta.\n- **prev-button** - Parte para o botão de página anterior, usada para estilização via ::part().\n- **prev-button-inner** - Botão interno encaminhado da página anterior.\n- **next-button** - Parte para o botão de próxima página, usada para estilização via ::part().\n- **next-button-inner** - Botão interno encaminhado da próxima página.\n- **loading** - Área do indicador de carregamento.",
|
|
2956
2957
|
"attributes": [
|
|
2957
2958
|
{
|
|
2958
2959
|
"name": "color-mode",
|
|
@@ -3059,7 +3060,7 @@
|
|
|
3059
3060
|
},
|
|
3060
3061
|
{
|
|
3061
3062
|
"name": "br-radio",
|
|
3062
|
-
"description": "O
|
|
3063
|
+
"description": "O `br-radio` representa uma opção individual dentro de um conjunto de escolha única.\n\nDefina `name` para associar as opções do mesmo grupo, `value` para o valor enviado no formulário e `label` para o texto exibido.\n\n```html\n<br-radio name=\"preferencia\" value=\"email\" label=\"Receber por e-mail\" checked></br-radio>\n<br-radio name=\"preferencia\" value=\"sms\" label=\"Receber por SMS\"></br-radio>\n```\n\nEm formulários HTML, integra-se nativamente via `ElementInternals` com suporte a `required`.\n\n### Quando usar\n\n- Opção única em grupos pequenos de 2 a 5 alternativas.\n\n### Quando evitar\n\n- Mais de 5 opções: use `br-select`.\n- Seleção múltipla: use `br-checkbox`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/radio?tab=designer).\n---\n\n\n### **Events:**\n - **checkedChange** - Disparado depois que o valor do `checked` foi alterado.\n- **brRadioValidationChange** - Emitido ao iniciar e concluir a validação customizada.\n\n### **Methods:**\n - **handleCheckedChange(event: _CustomEvent<boolean>_)** - @deprecated A coordenação interna agora é limitada à raiz DOM do grupo. - Mantém o protocolo legado de sincronização por `checkedChange`.\n- **handleKeyDown(event: _KeyboardEvent_)** - Navega e seleciona o próximo/anterior rádio habilitado no grupo via teclas de seta.\nAtivado por 'keydown', move a seleção entre rádios do mesmo 'name'\nusando as setas, partindo do rádio atualmente checado.\n- **checkValidity(): _Promise<boolean>_** - Retorna `true` se o valor do radio for válido, caso contrário `false`.\nSe o radio for inválido, dispara um evento 'invalid'.\n- **reportValidity(): _Promise<boolean>_** - Retorna `true` se o valor do radio for válido, caso contrário `false`.\nSe for inválido, exibe a mensagem de erro padrão do navegador.\n- **setCustomValidity(message: _string_): _Promise<void>_** - Define uma mensagem de validação customizada para o radio.\nSe a mensagem for uma string vazia, o erro customizado é limpo.\n- **validate(): _Promise<boolean>_** - Executa o validator do radio e retorna se o valor atual é válido.\n- **getValidationState(): _Promise<FormValidationState>_** - Retorna um snapshot serializável da Constraint Validation API.\n- **toggleChecked()** - @deprecated Atualize a propriedade `checked` diretamente. - Inverte o valor da prop `checked`\n- **setFocus()** - Move o foco para o input radio nativo interno.\n\n### **Slots:**\n - **default** - Slot para o rótulo do rádio, como alternativa à propriedade label.\n- **feedback** - Mensagem de validação, normalmente um `br-message`.\n\n### **CSS Parts:**\n - **container** - Contêiner visual do radio.\n- **radio-input** - Elemento input nativo do radio.\n- **radio-label** - Rótulo do radio.\n- **feedback** - Contêiner da mensagem de validação.",
|
|
3063
3064
|
"attributes": [
|
|
3064
3065
|
{
|
|
3065
3066
|
"name": "checked",
|
|
@@ -3098,7 +3099,7 @@
|
|
|
3098
3099
|
},
|
|
3099
3100
|
{
|
|
3100
3101
|
"name": "feedback-state",
|
|
3101
|
-
"description": "Estado de feedback
|
|
3102
|
+
"description": "Estado de feedback. Quando informado, tem precedência sobre `state`.",
|
|
3102
3103
|
"values": [{ "name": "valid" }, { "name": "invalid" }]
|
|
3103
3104
|
},
|
|
3104
3105
|
{
|
|
@@ -3136,7 +3137,7 @@
|
|
|
3136
3137
|
},
|
|
3137
3138
|
{
|
|
3138
3139
|
"name": "br-radio-group",
|
|
3139
|
-
"description": "O
|
|
3140
|
+
"description": "O `br-radio-group` agrupa opções de múltipla escolha onde apenas uma pode ser selecionada.\n\nAdicione os elementos `br-radio` no slot padrão. Defina o rótulo do grupo em `label` e o valor selecionado em `value`.\n\n```html\n<br-radio-group label=\"Turno de atendimento\" name=\"turno\">\n <br-radio value=\"manha\" label=\"Manhã\"></br-radio>\n <br-radio value=\"tarde\" label=\"Tarde\"></br-radio>\n <br-radio value=\"noite\" label=\"Noite\"></br-radio>\n</br-radio-group>\n```\n\nEm formulários HTML, o grupo integra-se via `ElementInternals`, controlando validação nativa com `required`.\n\n### Quando usar\n\n- Entre 2 e 5 opções mutuamente exclusivas que devem permanecer visíveis.\n\n### Quando evitar\n\n- Mais de 6 opções: use `br-select` para economizar espaço de tela.\n- Seleção de múltiplas opções ao mesmo tempo: use `br-checkbox-group`.\n- Liga/desliga imediato: use `br-switch`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/radio-group?tab=designer).\n---\n\n\n### **Events:**\n - **brRadioGroupValidationChange** - Emitido ao iniciar e concluir uma validação customizada.\n\n### **Methods:**\n - **checkValidity(): _Promise<boolean>_** - Verifica a validade do grupo.\n- **reportValidity(): _Promise<boolean>_** - Verifica a validade e apresenta a mensagem do grupo.\n- **setCustomValidity(message: _string_): _Promise<void>_** - Define a mensagem de validade customizada do grupo.\n- **validate(): _Promise<boolean>_** - Executa o validator do grupo.\n- **getValidationState(): _Promise<FormValidationState>_** - Retorna o snapshot de validade do grupo.\n- **setFocus(): _Promise<void>_** - Move o foco para o radio marcado ou para o primeiro radio habilitado.\n\n### **Slots:**\n - **default** - Radios pertencentes ao grupo.\n- **label** - Legenda do grupo, como alternativa à propriedade `label`.\n- **description** - Texto auxiliar do grupo.\n- **feedback** - Mensagem de validação do grupo.\n- **validation-loading** - Indicador exibido durante validação assíncrona.\n\n### **CSS Parts:**\n - **group** - Fieldset semântico do grupo.\n- **legend** - Legenda e nome acessível do grupo.\n- **options** - Contêiner das opções.\n- **description** - Área de texto auxiliar.\n- **feedback** - Área de mensagem de validação.\n- **validation-loading** - Área do indicador de validação assíncrona.",
|
|
3140
3141
|
"attributes": [
|
|
3141
3142
|
{
|
|
3142
3143
|
"name": "name",
|
|
@@ -3198,7 +3199,7 @@
|
|
|
3198
3199
|
},
|
|
3199
3200
|
{
|
|
3200
3201
|
"name": "br-scrim",
|
|
3201
|
-
"description": "O
|
|
3202
|
+
"description": "O `br-scrim` cria uma máscara visual escura sobre a tela ou sobre um elemento pai para focar a atenção do usuário.\n\nUse os métodos `show()`, `hide()` ou a propriedade `active` para controlar a exibição. Coloque o conteúdo em destaque no slot padrão.\n\n```html\n<br-scrim active>\n <div class=\"destaque\">Conteúdo em evidência</div>\n</br-scrim>\n```\n\n### Quando usar\n\n- Destaque visual pontual de um elemento (tutoriais guiados ou máscaras personalizadas).\n\n### Quando evitar\n\n- Caixas de diálogo modais padrão: use `br-modal` (que já gerencia seu próprio scrim internamente).\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/scrim?tab=designer).\n---\n\n\n### **Events:**\n - **brScrimOpen** - Indica que o scrim foi aberto.\n- **brScrimClose** - Indica que o scrim foi fechado\n\n### **Methods:**\n - **setScrollThreshold(threshold: _number_)** - Define o limite de rolagem para o fechamento automático do scrim.\n- **open()** - Método público para exibir o scrim\n- **close()** - Método público para esconder o scrim\n- **toggle()** - Método público para alternar o estado de exibição do scrim\n- **updateSpotlight()** - Recalcula manualmente a posição e dimensões da fresta do scrim vazado.\nÚtil quando o elemento alvo muda de posição sem disparar resize ou scroll.\n- **handleDocumentKeyDown(event: _KeyboardEvent_)** - Intercepta todos os eventos de teclado globalmente quando o scrim está ativo.\n\nUsa `composedPath()[0]` para obter o elemento real com foco, mesmo dentro de shadow roots.\n`event.target` é redirecionado ao cruzar shadow boundaries e não reflete o elemento concreto\nquando o foco está dentro do shadow DOM de componentes filhos como `br-modal`.\n\n### **Slots:**\n - **default** - Slot para o conteúdo principal a ser exibido sobre o fundo escurecido do scrim.\n- **activator** - Slot para o elemento ativador do scrim, com prioridade sobre a propriedade activator.",
|
|
3202
3203
|
"attributes": [
|
|
3203
3204
|
{
|
|
3204
3205
|
"name": "custom-id",
|
|
@@ -3305,7 +3306,7 @@
|
|
|
3305
3306
|
},
|
|
3306
3307
|
{
|
|
3307
3308
|
"name": "br-select",
|
|
3308
|
-
"description": "O componente `br-select` é o controle oficial de seleção do GovBR-DS, desenvolvido para permitir que o usuário escolha uma ou múltiplas opções a partir de uma lista expansível. Compatível com o padrão WAI-ARIA Combobox, ele reúne em um único componente acessível o campo de acionamento/digitação, a lista suspensa e as opções selecionáveis, integrando-se nativamente a formulários HTML e frameworks modernos.\n\n### Para que serve\n\nO `br-select` gerencia todo o fluxo de interação de seleção:\n- **Seleção simples e múltipla:** Permite selecionar uma única opção ou múltiplas opções (`multiple`), incluindo a opção de selecionar ou desmarcar todas em lote.\n- **Busca e filtragem:** Oferece filtro local integrado (conforme o usuário digita) e suporte a busca remota assíncrona (`search-mode=\"remote\"`), disparando eventos para carregamento sob demanda via API.\n- **Agrupamento de opções:** Organiza opções contíguas por categoria, preservando virtualização, busca local e semântica nativa de formulário.\n- **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`).\n- **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.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - 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.\n - For necessário filtrar opções por texto (digitação em lista longa).\n - As opções forem carregadas dinamicamente de uma API externa (busca remota/paginada).\n - O espaço no leiaute for restrito e exigir um controle compacto e expansível.\n- **Evite e prefira outro componente quando:**\n - Houver poucas opções fixas (de 2 a 4 opções mutuamente exclusivas): prefira `br-radio` ou `br-radio-group` para manter as alternativas imediatamente visíveis.\n - Houver uma escolha binária (sim/não, ativo/inativo): prefira `br-switch` ou `br-checkbox`.\n - Houver seleção múltipla com até 4 alternativas: prefira `br-checkbox` ou um grupo de checkboxes visíveis.\n\n### Composição e Subcomponentes\n\nO ecossistema do Select é composto pelo elemento principal orquestrador e três subcomponentes especializados:\n\n| Subcomponente | Papel | Regra de uso |\n| --- | --- | --- |\n| `br-select` | **Orquestrador principal.** Gerencia o valor, ciclo de vida, acessibilidade, busca, formulário e renderização dos elementos internos. | Deve ser o único componente diretamente instanciado no template da aplicação. |\n| `br-select-input` | **Campo de acionamento.** Exibe o valor selecionado, o rótulo (`label`), o campo de busca/digitação e o botão de expandir/recolher. | Coordenado automaticamente pelo `br-select`; utilize isoladamente apenas em composições arquiteturais avançadas. |\n| `br-select-list` | **Lista suspensa virtualizada.** Contêiner flutuante que renderiza as opções de forma otimizada com suporte a rolagem e virtualização. | Gerenciada exclusivamente pelo `br-select`; não deve ser usada como controle autônomo. |\n| `br-select-option` | **Item individual de opção.** Representa um valor selecionável, exibindo texto, estado de seleção e checkbox/radio associado. | Deve ser declarado dentro do slot padrão do `br-select` para cada opção desejada. |\n\nAlém dos subcomponentes, o `br-select` oferece slots dedicados:\n- `default`: Slot principal onde são passados os elementos `br-select-option`.\n- `feedback`: Slot para exibição de mensagens de validação (ex.: `br-message`).\n- `loading`: Slot para indicador de carregamento durante busca remota.\n- `validation-loading`: Slot para indicador visual durante validação assíncrona.\n\n### Como fornecer opções\n\nO `br-select` possui uma API declarativa canônica e uma API imperativa para atualizações dinâmicas:\n\n1. **Slot com `br-select-option`:** é a forma declarativa canônica para código novo. O pai lê os atributos e o conteúdo de cada opção e os transforma em dados para a lista. Em frameworks, a coleção também pode ser renderizada como vários elementos `br-select-option`.\n2. **Método `setOptions()`:** substitui a coleção de forma imperativa e deve ser reservado para dados dinâmicos, especialmente respostas de busca remota. A lista recebe os objetos e cria internamente somente a janela visível de opções.\n\n`br-select-input` e `br-select-list` não substituem essas fontes. Eles são peças internas da composição: o primeiro controla o campo de acionamento e busca; o segundo recebe a coleção normalizada e renderiza a lista virtualizada.\n\nEvite misturar slot e dados imperativos sem necessidade. Na inicialização, opções declaradas no slot têm precedência quando existem. Depois que `options` é alterada ou `setOptions()` é chamado, a coleção imperativa passa a ser a fonte de dados e alterações posteriores no slot não são sincronizadas.\n\nA prop `options` é uma API legada e está depreciada. Ela continua funcionando apenas para preservar compatibilidade: no HTML, recebe uma string JSON; em JavaScript e frameworks, recebe um array por property binding. Não a adote em código novo; use `br-select-option` ou, para respostas dinâmicas/remotas, `setOptions()`.\n\nCada objeto deve conter `value` string e pode conter `label`, `selected`, `disabled`, `indeterminate` e `content`. `content` é renderizado como HTML na lista; não use esse campo com conteúdo não confiável.\n\n### O Conceito \"Lego\" e a Diferença entre os Componentes {#conceito-lego}\n\nO ecossistema de seleção do GovBR-DS foi projetado seguindo o **conceito de peças de Lego**: modular, flexível e combinável:\n\n1. **`br-select` (Componente Principal / Modelo Pronto):**\n É o **componente principal**. Já vem montado com todas as peças essenciais integradas: o acionador (`br-select-input`), a lista flutuante virtualizada (`br-select-list`), a navegação por teclado e a integração nativa com formulários (`formAssociated`). Na quase totalidade das aplicações (99% dos casos), você deve usar apenas `<br-select>`.\n\n2. **`br-select-option` (Peça de Conteúdo):**\n É a peça de Lego que você encaixa diretamente no slot padrão do `<br-select>` para definir cada valor selecionável.\n\n3. **`br-select-input` e `br-select-list` (Subcomponentes Internos):**\n São as peças internas que formam a estrutura do `br-select`. No uso comum, **não devem ser declarados manualmente**, pois o `br-select` já os instancia e os sincroniza automaticamente.\n\n#### Quando usar apenas `<br-select>`?\nUse apenas `<br-select>` em quase todos os fluxos. Para opções fixas, declare os itens `<br-select-option>` no slot padrão; para opções dinâmicas, alimente a coleção com `setOptions()`. A prop `options` permanece disponível somente para compatibilidade legada.\n\n#### Quando montar os componentes separadamente?\nA montagem separada das peças avulsas de Lego (`br-select-input` + `br-select-list` + `br-select-option`) destina-se exclusivamente a **composições arquiteturais avançadas**, onde o leiaute exige desacoplar fisicamente o campo de acionamento da lista suspensa (ex.: campo de busca fixo na barra superior e a lista exibida dentro de um drawer ou modal lateral). Nesse caso, a aplicação precisa implementar manualmente a sincronização de foco, abertura, navegação por teclado e repasse de valor ao formulário.\n\n### Como os subcomponentes se relacionam\n\nA arquitetura do `br-select` segue o padrão de **orquestrador centralizado**:\n1. **O componente pai coordena o estado:** A aplicação declara o `<br-select>` com múltiplos `<br-select-option>` filhos ou usa `setOptions()` para dados dinâmicos. O `br-select` projeta internamente o `<br-select-input>` e a `<br-select-list>`, garantindo sincronia total de foco, estados de abertura, termos pesquisados e eventos. A prop `options` não é uma alternativa para código novo; existe somente para compatibilidade legada.\n2. **Evite montagem manual desarticulada:** Tentar declarar manualmente `br-select-input` e `br-select-list` fora do `br-select` quebra as relações de acessibilidade WAI-ARIA (combobox, controles expandidos, aria-activedescendant) e desvincula o controle da validação nativa de formulários (`ElementInternals`).\n3. **Comunicação por eventos:** Para busca remota ou resposta a seleção, a aplicação escuta os eventos disparados diretamente pelo `br-select` (`brSearch`, `change`, `input`), sem precisar interceptar nós internos da lista ou do campo de texto.\n\nPara 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/select?tab=designer).\n---\n\n\n### **Events:**\n - **brSelectStateChange** - Evento emitido quando o estado público do select muda.\n- **valueChange** - Evento emitido quando o valor público do select é alterado.\n- **optionHover** - Emite a opção que recebeu foco ou hover.\n- **brSelectSearch** - Emitido uma vez por edição do campo de busca, inclusive ao limpar a consulta.\nO `detail` contém `{ query }`; o evento é informativo e não cancelável.\nA aplicação deve controlar debounce, transporte e ciclo de vida da busca.\n- **opened** - Emitido quando a lista é aberta.\n- **closed** - Emitido quando a lista é fechada.\n- **brSelectValidationChange** - Informa o início e o resultado de uma validação síncrona ou assíncrona.\nO `detail` contém `validating`, `valid` e `message`.\n\n### **Methods:**\n - **handleSelectOptionPropsChange(event: _Event_)** - Recalcula a coleção quando uma opção projetada muda por atribuição direta\nde `selected`, `disabled`, `label`, `group` ou `value`. A lista virtualizada em\nShadow DOM não é uma fonte independente; ela recebe o snapshot pelo seu\ncontrato público `options`.\n- **enable(): __** - Habilita o select para interação do usuário.\n- **disable(): __** - Desabilita o select e impede novas interações.\n- **show(): __** - Abre a lista de opções quando o componente está habilitado.\n- **close(): __** - Fecha a lista de opções quando o componente está habilitado.\n- **toggleOpen(): _Promise<void>_** - Alterna entre os estados aberto e fechado do select.\n- **clear(): _Promise<void>_** - @deprecated Use `setValue('')` ou a API de formulário. - Limpa a seleção atual.\n- **getValue(): _Promise<string | string[]>_** - @deprecated Leia a propriedade `value` diretamente. - Retorna o valor público atual.\n- **setValue(value: _string | string[]_): _Promise<void>_** - @deprecated Atribua a propriedade `value` diretamente. - Define o valor público do select.\n- **setFocus(): _Promise<void>_** - @deprecated Use o foco nativo do componente quando possível. - Move o foco para o campo interno.\n- **setOptions(options: _SelectOptionData[]_): __** - Substitui a coleção atual de opções por uma nova lista.\n- **setOption(option: _SelectOptionData_): __** - Adiciona ou atualiza uma única opção na coleção interna.\n\n### **Slots:**\n - **default** - Opções declaradas com elementos br-select-option.\n- **feedback** - Mensagem de validação, normalmente um br-message.\n- **validation-loading** - Indicador exibido durante validação assíncrona.\n- **loading** - Indicador exibido durante a busca remota de opções.\n\n### **CSS Parts:**\n - **container** - Contêiner visual principal do select.\n- **input** - Campo de seleção e busca.\n- **input-container** - Contêiner visual do campo.\n- **input-label** - Rótulo do campo.\n- **input-field** - Campo input nativo.\n- **input-group** - Grupo visual do campo.\n- **input-icon** - Ícone do campo.\n- **input-action** - Botão de abertura e fechamento.\n- **input-action-button** - Botão interno da ação.\n- **list** - Lista de opções.\n- **option** - Opção individual.\n- **option-group** - Cabeçalho visual de um grupo de opções.\n- **select-all** - Alias legado para a opção de selecionar todos.\n- **empty-option** - Alias legado para a opção vazia da lista.\n- **option-checkbox** - Alias legado para o checkbox da opção.\n- **option-radio** - Alias legado para o radio da opção.\n- **hidden-select** - Select nativo invisível usado na integração com formulários.\n- **feedback** - Área de mensagem de validação.\n- **validation-loading** - Área do indicador de validação assíncrona.",
|
|
3309
|
+
"description": "O `br-select` permite escolher uma ou mais opções em uma lista suspensa expansível com suporte a busca e virtualização.\n\nDeclare as opções com `<br-select-option>` no slot padrão, ou forneça os dados dinamicamente com o método `setOptions()`. Para seleção múltipla, use `multiple`. Para habilitar busca por digitação, use `filterable`.\n\n```html\n<br-select label=\"Estado\" placeholder=\"Selecione um estado\">\n <br-select-option value=\"df\" label=\"Distrito Federal\"></br-select-option>\n <br-select-option value=\"sp\" label=\"São Paulo\"></br-select-option>\n <br-select-option value=\"rj\" label=\"Rio de Janeiro\"></br-select-option>\n</br-select>\n```\n\nEm formulários HTML, o componente integra-se nativamente via `ElementInternals`, enviando os valores selecionados no submit e validando campos obrigatórios com `required`.\n\n### Quando usar\n\n- Listas com 5 ou mais opções que ocupariam muito espaço visível se exibidas abertas.\n- Seleção que exige filtro ou busca por digitação.\n- Carregamento dinâmico ou remoto de opções a partir de uma API (`search-mode=\"remote\"`).\n\n### Quando evitar\n\n- Poucas opções fixas (2 a 4 opções): use `br-radio` ou `br-radio-group`.\n- Escolha simples de sim/não: use `br-switch` ou `br-checkbox`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/select?tab=designer).\n---\n\n\n### **Events:**\n - **brSelectStateChange** - Evento emitido quando o estado público do select muda.\n- **valueChange** - Evento emitido quando o valor público do select é alterado.\n- **optionHover** - Emite a opção que recebeu foco ou hover.\n- **brSelectSearch** - Emitido uma vez por edição do campo de busca, inclusive ao limpar a consulta.\nO `detail` contém `{ query }`; o evento é informativo e não cancelável.\nA aplicação deve controlar debounce, transporte e ciclo de vida da busca.\n- **opened** - Emitido quando a lista é aberta.\n- **closed** - Emitido quando a lista é fechada.\n- **brSelectValidationChange** - Informa o início e o resultado de uma validação síncrona ou assíncrona.\nO `detail` contém `validating`, `valid` e `message`.\n\n### **Methods:**\n - **handleSelectOptionPropsChange(event: _Event_)** - Recalcula a coleção quando uma opção projetada muda por atribuição direta\nde `selected`, `disabled`, `label`, `group` ou `value`. A lista virtualizada em\nShadow DOM não é uma fonte independente; ela recebe o snapshot pelo seu\ncontrato público `options`.\n- **enable(): _Promise<void>_** - Habilita o select para interação do usuário.\n- **disable(): _Promise<void>_** - Desabilita o select e impede novas interações.\n- **show(): _Promise<void>_** - Abre a lista de opções quando o componente está habilitado.\n- **close(): _Promise<void>_** - Fecha a lista de opções quando o componente está habilitado.\n- **toggleOpen(): _Promise<void>_** - Alterna entre os estados aberto e fechado do select.\n- **clear(): _Promise<void>_** - @deprecated Use `setValue('')` ou a API de formulário. - Limpa a seleção atual.\n- **getValue(): _Promise<string | string[]>_** - @deprecated Leia a propriedade `value` diretamente. - Retorna o valor público atual.\n- **setValue(value: _string | string[]_): _Promise<void>_** - @deprecated Atribua a propriedade `value` diretamente. - Define o valor público do select.\n- **setFocus(): _Promise<void>_** - @deprecated Use o foco nativo do componente quando possível. - Move o foco para o campo interno.\n- **setOptions(options: _SelectOptionData[]_): _Promise<void>_** - Substitui a coleção atual de opções por uma nova lista.\n- **setOption(option: _SelectOptionData_): _Promise<void>_** - Adiciona ou atualiza uma única opção na coleção interna.\n\n### **Slots:**\n - **default** - Opções declaradas com elementos br-select-option.\n- **feedback** - Mensagem de validação, normalmente um br-message.\n- **validation-loading** - Indicador exibido durante validação assíncrona.\n- **loading** - Indicador exibido na lista enquanto `loading` está ativo. Padrão: spinner com o texto \"Pesquisando…\"; aceita texto, imagem ou qualquer HTML.\n\n### **CSS Parts:**\n - **container** - Contêiner visual principal do select.\n- **input** - Campo de seleção e busca.\n- **input-container** - Contêiner visual do campo.\n- **input-label** - Rótulo do campo.\n- **input-field** - Campo input nativo.\n- **input-group** - Grupo visual do campo.\n- **input-icon** - Ícone do campo.\n- **input-action** - Botão de abertura e fechamento.\n- **input-action-button** - Botão interno da ação.\n- **input-clear** - Botão de limpar o termo digitado durante a busca.\n- **list** - Lista de opções.\n- **option** - Opção individual.\n- **option-group** - Cabeçalho visual de um grupo de opções.\n- **select-all** - Alias legado para a opção de selecionar todos.\n- **empty-option** - Alias legado para a opção vazia da lista.\n- **option-checkbox** - Alias legado para o checkbox da opção.\n- **option-radio** - Alias legado para o radio da opção.\n- **hidden-select** - Select nativo invisível usado na integração com formulários.\n- **feedback** - Área de mensagem de validação.\n- **validation-loading** - Área do indicador de validação assíncrona.",
|
|
3309
3310
|
"attributes": [
|
|
3310
3311
|
{
|
|
3311
3312
|
"name": "borderless",
|
|
@@ -3319,7 +3320,7 @@
|
|
|
3319
3320
|
},
|
|
3320
3321
|
{
|
|
3321
3322
|
"name": "density",
|
|
3322
|
-
"description": "Define a densidade visual compartilhada pelo campo e pela lista de opções.\nAceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.",
|
|
3323
|
+
"description": "Define a densidade visual compartilhada pelo campo e pela lista de opções.\nAceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.\nA opção sintética de selecionar todos permanece com densidade `small`.",
|
|
3323
3324
|
"values": [{ "name": "BrDensity" }]
|
|
3324
3325
|
},
|
|
3325
3326
|
{
|
|
@@ -3367,6 +3368,11 @@
|
|
|
3367
3368
|
"description": "Define quantas opções extras são renderizadas antes e depois da área visível no virtual scroll.\nDeve ser um inteiro não negativo; valores inválidos usam 1.",
|
|
3368
3369
|
"values": []
|
|
3369
3370
|
},
|
|
3371
|
+
{
|
|
3372
|
+
"name": "hide-dividers",
|
|
3373
|
+
"description": "Oculta os divisores entre opções consecutivas, sem alterar a altura das linhas.",
|
|
3374
|
+
"values": []
|
|
3375
|
+
},
|
|
3370
3376
|
{
|
|
3371
3377
|
"name": "is-open",
|
|
3372
3378
|
"description": "Controla o estado aberto/fechado da lista.",
|
|
@@ -3414,17 +3420,22 @@
|
|
|
3414
3420
|
},
|
|
3415
3421
|
{
|
|
3416
3422
|
"name": "search-mode",
|
|
3417
|
-
"description": "Define se as opções são filtradas localmente ou fornecidas por uma busca remota.\nEm `remote`, o componente emite `brSelectSearch
|
|
3423
|
+
"description": "Define se as opções são filtradas localmente ou fornecidas por uma busca remota.\nEm `remote`, o componente emite `brSelectSearch` e exibe as opções recebidas\nsem filtrá-las de novo pelo termo digitado; a aplicação deve buscar, validar e\naplicar a resposta com `setOptions()` ou re-renderizando os `br-select-option`.\nA seleção é preservada mesmo quando não aparece na resposta seguinte.",
|
|
3418
3424
|
"values": [{ "name": "SelectSearchMode" }]
|
|
3419
3425
|
},
|
|
3420
3426
|
{
|
|
3421
3427
|
"name": "loading",
|
|
3422
|
-
"description": "Indica que uma busca remota de opções está pendente.\nEnquanto ativo, novas
|
|
3428
|
+
"description": "Indica que uma busca remota de opções está pendente.\nEnquanto ativo, a lista exibe o slot `loading` (padrão: \"Pesquisando…\") e novas\nopções não podem ser selecionadas; a aplicação continua responsável por\ndebounce, cancelamento, erros e autenticação.",
|
|
3423
3429
|
"values": []
|
|
3424
3430
|
},
|
|
3425
3431
|
{
|
|
3426
3432
|
"name": "show-search-icon",
|
|
3427
|
-
"description": "Exibe o
|
|
3433
|
+
"description": "Exibe a lupa mesmo quando o select não é filtrável; selects com `filterable`\njá a exibem. A lupa é omitida quando o campo é estreito demais (menos de\n128px) para comportar lupa, valor e seta.",
|
|
3434
|
+
"values": []
|
|
3435
|
+
},
|
|
3436
|
+
{
|
|
3437
|
+
"name": "hide-search-icon",
|
|
3438
|
+
"description": "Oculta a lupa mesmo quando `filterable` está ativo, sem desabilitar a busca.\nTem precedência visual sobre `showSearchIcon` e não altera o comportamento padrão.",
|
|
3428
3439
|
"values": []
|
|
3429
3440
|
},
|
|
3430
3441
|
{
|
|
@@ -3473,7 +3484,7 @@
|
|
|
3473
3484
|
},
|
|
3474
3485
|
{
|
|
3475
3486
|
"name": "br-select-input",
|
|
3476
|
-
"description": "
|
|
3487
|
+
"description": "Campo de texto e acionamento interno do `br-select`.\n\nÉ gerenciado automaticamente pelo `br-select` para exibir o valor selecionado, receber termos de busca e abrir ou fechar a lista suspensa. Não é necessário utilizá-lo de forma avulsa.\n---\n\n\n### **Events:**\n - **brSelectInputFocus** - Evento emitido quando o campo interno recebe foco.\n- **brSelectInputValueChange** - Evento emitido quando o valor digitado no campo de busca muda.\n- **brSelectInputActionClick** - Evento emitido quando o usuário aciona o ícone de abertura/fechamento.\n- **brSelectInputClick** - Evento emitido quando o usuário clica no campo do select.\n\n### **Methods:**\n - **flipUp(): _Promise<void>_** - Atualiza o ícone para o estado visual de lista aberta.\n- **flipDown(): _Promise<void>_** - Atualiza o ícone para o estado visual de lista fechada.\n- **setFocus(): _Promise<void>_** - Reaplica o foco no input nativo encapsulado por `br-input`.\n\n### **CSS Parts:**\n - **container** - Contêiner visual do campo.\n- **input** - Campo input nativo.\n- **label** - Rótulo do campo.\n- **group** - Grupo visual do campo.\n- **icon** - Ícone do campo.\n- **action** - Botão de ação.\n- **action-button** - Botão interno da ação.\n- **clear** - Botão de limpar o texto digitado.",
|
|
3477
3488
|
"attributes": [
|
|
3478
3489
|
{
|
|
3479
3490
|
"name": "borderless",
|
|
@@ -3532,7 +3543,12 @@
|
|
|
3532
3543
|
},
|
|
3533
3544
|
{
|
|
3534
3545
|
"name": "show-search-icon",
|
|
3535
|
-
"description": "Exibe o
|
|
3546
|
+
"description": "Exibe a lupa mesmo quando o campo não é filtrável.\nQuando filterable é true, a lupa é exibida automaticamente.\nEm campos com menos de 128px, a lupa é omitida para preservar valor e seta.",
|
|
3547
|
+
"values": []
|
|
3548
|
+
},
|
|
3549
|
+
{
|
|
3550
|
+
"name": "clearable",
|
|
3551
|
+
"description": "Exibe o botão de limpar enquanto houver texto no campo editável.\nO `br-select` o ativa somente durante a busca, para limpar o termo digitado\nsem alterar a seleção.",
|
|
3536
3552
|
"values": []
|
|
3537
3553
|
},
|
|
3538
3554
|
{
|
|
@@ -3545,11 +3561,11 @@
|
|
|
3545
3561
|
},
|
|
3546
3562
|
{
|
|
3547
3563
|
"name": "br-select-list",
|
|
3548
|
-
"description": "
|
|
3564
|
+
"description": "Painel suspenso com lista virtualizada do `br-select`.\n\nÉ gerenciado internamente pelo `br-select` para exibir as opções com alta performance, mesmo em listas grandes. Não é necessário utilizá-lo de forma avulsa.\n---\n\n\n### **Methods:**\n - **open(): _Promise<void>_** - Abre a lista e agenda a medição das opções quando necessário.\n- **close(): _Promise<void>_** - Fecha a lista de opções.\n- **setOptions(options: _SelectOptionData[]_): _Promise<void>_** - Substitui todas as opções renderizadas pela lista.\n- **setOption(option: _SelectOptionData_): _Promise<void>_** - Adiciona ou atualiza uma única opção na coleção atual.\n- **setSearchTerm(term: _string_): _Promise<void>_** - Atualiza o termo de busca e reinicia a janela virtual no topo.\n- **setMultiple(isMultiple: _boolean_): _Promise<void>_** - Alterna a lista entre modo simples e múltiplo.\n- **getOptions(): _Promise<SelectOptionData[]>_** - Retorna uma cópia das opções atualmente controladas pela lista.\n- **scrollOptionToTop(index: _number_): _Promise<boolean>_** - Posiciona uma opção no topo da viewport virtual, respeitando o limite final da lista.\n- **scrollFirstSelectedOptionToTop(): _Promise<boolean>_** - Posiciona no topo a primeira opção selecionada na ordem visual da lista.\nA opção auxiliar de selecionar tudo não participa dessa escolha.\n- **focusOption(index: _number_): _Promise<boolean>_** - Garante visibilidade e foco para uma opção específica.\n- **revealOption(index: _number_): _Promise<boolean>_** - Torna o item ativo visível sem retirar o foco do campo.\n- **setOptionSelected(index: _number_, selected: _boolean_): _Promise<boolean>_** - Aciona a seleção programática de uma opção específica.\n\n### **Slots:**\n - **loading** - Indicador exibido enquanto resultados remotos são carregados. Padrão: spinner com o texto \"Pesquisando…\".\n\n### **CSS Parts:**\n - **list** - Contêiner visual da lista virtualizada.\n- **loading** - Área do indicador de carregamento.\n- **option-group** - Cabeçalho visual de um grupo de opções.",
|
|
3549
3565
|
"attributes": [
|
|
3550
3566
|
{
|
|
3551
3567
|
"name": "density",
|
|
3552
|
-
"description": "Define a densidade visual da lista, das opções e do indicador de carregamento.\nAceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.",
|
|
3568
|
+
"description": "Define a densidade visual da lista, das opções regulares e do indicador de carregamento.\nA opção sintética de selecionar todos permanece com densidade `small`.\nAceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.",
|
|
3553
3569
|
"values": [{ "name": "BrDensity" }]
|
|
3554
3570
|
},
|
|
3555
3571
|
{
|
|
@@ -3562,6 +3578,11 @@
|
|
|
3562
3578
|
"description": "Termo usado para filtrar opções por rótulo ou valor.",
|
|
3563
3579
|
"values": []
|
|
3564
3580
|
},
|
|
3581
|
+
{
|
|
3582
|
+
"name": "search-mode",
|
|
3583
|
+
"description": "Define se `searchTerm` filtra as opções (`local`) ou se as opções já chegam\nfiltradas pelo servidor (`remote`). Nos dois modos, um termo sem resultados\nexibe a mensagem de lista vazia. Valores inválidos usam `local`.",
|
|
3584
|
+
"values": [{ "name": "SelectSearchMode" }]
|
|
3585
|
+
},
|
|
3565
3586
|
{
|
|
3566
3587
|
"name": "loading",
|
|
3567
3588
|
"description": "Indica que os resultados remotos estão sendo carregados.",
|
|
@@ -3582,6 +3603,11 @@
|
|
|
3582
3603
|
"description": "Define quantas opções extras são renderizadas fora da viewport quando o virtual scroll está ativo.\nDeve ser um inteiro não negativo; valores inválidos usam 0.",
|
|
3583
3604
|
"values": []
|
|
3584
3605
|
},
|
|
3606
|
+
{
|
|
3607
|
+
"name": "hide-dividers",
|
|
3608
|
+
"description": "Oculta os divisores entre opções consecutivas, sem alterar a altura das linhas.",
|
|
3609
|
+
"values": []
|
|
3610
|
+
},
|
|
3585
3611
|
{
|
|
3586
3612
|
"name": "select-all-label",
|
|
3587
3613
|
"description": "Rótulo apresentado para a ação de selecionar todos no modo múltiplo.",
|
|
@@ -3602,7 +3628,7 @@
|
|
|
3602
3628
|
},
|
|
3603
3629
|
{
|
|
3604
3630
|
"name": "br-select-option",
|
|
3605
|
-
"description": "
|
|
3631
|
+
"description": "Representa uma opção dentro do `br-select`. Use no slot padrão do componente.\n\nDefina `value` para o valor de formulário e `label` para o texto exibido. Use `selected` para marcar a opção como selecionada inicialmente e `disabled` para desabilitá-la. Para agrupamento, utilize `group`.\n\n```html\n<br-select-option value=\"df\" label=\"Distrito Federal\"></br-select-option>\n```\n---\n\n\n### **Events:**\n - **brSelectOptionStateChange** - Evento emitido quando o estado da opção muda.\n- **brSelectOptionPropsChange** - Evento legado emitido quando as propriedades da opção são alteradas.\n\n### **Methods:**\n - **getItemHeight(): _Promise<number>_** - Retorna a altura efetiva da opção para cálculo de virtual scroll.\n- **setFocus(): _Promise<void>_** - Encaminha o foco para o elemento interativo interno da opção.\n- **setSelectedState(selected: _boolean_): _Promise<void>_** - Atualiza programaticamente o estado selecionado da opção.\n\n### **Slots:**\n - **default** - Conteúdo ou rótulo visual da opção.\n\n### **CSS Parts:**\n - **option** - Item visual da opção.\n- **checkbox** - Checkbox exibido no modo múltiplo.",
|
|
3606
3632
|
"attributes": [
|
|
3607
3633
|
{
|
|
3608
3634
|
"name": "density",
|
|
@@ -3654,7 +3680,7 @@
|
|
|
3654
3680
|
},
|
|
3655
3681
|
{
|
|
3656
3682
|
"name": "br-sign-in",
|
|
3657
|
-
"description": "O
|
|
3683
|
+
"description": "O `br-sign-in` padroniza o botão oficial de autenticação da conta gov.br.\n\nPode ser exibido no formato padrão (bloco com texto) ou no formato circular compacto com `shape=\"circle\"`. Use a propriedade `density` para ajustar a densidade visual.\n\n```html\n<br-sign-in label=\"Entrar com gov.br\"></br-sign-in>\n<br-sign-in shape=\"circle\" aria-label=\"Entrar com gov.br\"></br-sign-in>\n```\n\n### Quando usar\n\n- Ponto de acesso ou login único com a conta Gov.br em serviços públicos federais.\n\n### Quando evitar\n\n- Ações gerais de formulário (salvar, enviar, cancelar): use `br-button`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/signin?tab=designer).\n---\n\n\n### **Events:**\n - **brNavigate** - Evento cancelável emitido em `navigation-mode=\"event\"` para cliques primários sem modificadores em links `_self`.\nChame `event.preventDefault()` no listener para impedir a navegação nativa e entregar `event.detail.href` ao roteador da SPA.\n\n### **Slots:**\n - **default** - Slot para o texto do sign-in.\n- **icon** - Slot para ícone personalizado; em `shape=\"circle\"`, o padrão é um SVG local de usuário.\n- **image** - Slot para imagem ou ícone ao lado do texto.\n\n### **CSS Parts:**\n - **content** - Parte para a área de conteúdo/texto do sign-in, usada para estilização via ::part().\n- **image** - Parte para a área da imagem/ícone, usada para controle de tamanho via CSS e ::part().",
|
|
3658
3684
|
"attributes": [
|
|
3659
3685
|
{
|
|
3660
3686
|
"name": "custom-id",
|
|
@@ -3711,7 +3737,7 @@
|
|
|
3711
3737
|
},
|
|
3712
3738
|
{
|
|
3713
3739
|
"name": "br-skip-link",
|
|
3714
|
-
"description": "O
|
|
3740
|
+
"description": "O `br-skip-link` fornece atalhos acessíveis de teclado no topo da página para saltar blocos repetitivos de conteúdo.\n\nPosicione no início da página. Declare os atalhos usando elementos `br-skip-link-item` no slot padrão, apontando cada destino em `target`.\n\n```html\n<br-skip-link>\n <br-skip-link-item target=\"#conteudo-principal\">Ir para o conteúdo</br-skip-link-item>\n <br-skip-link-item target=\"#menu-navegacao\">Ir para o menu</br-skip-link-item>\n</br-skip-link>\n```\n\nO componente permanece oculto e se torna visível automaticamente assim que recebe o foco do teclado (Tab).\n\n### Quando usar\n\n- No topo de todas as páginas para cumprir as diretrizes de acessibilidade (WCAG 2.4.1).\n\n### Quando evitar\n\n- Links de navegação comuns no corpo do texto: use `br-link`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/skip-link?tab=designer).\n---\n\n\n### **Events:**\n - **brSkiplinkNavigation** - Evento emitido quando um item do skiplink é ativado.\nO evento contém informações sobre o item acionado e o elemento target.\n- **brSkipLinkNavigate** - Evento emitido quando um destino é ativado.\n- **brDidShow** - Evento emitido quando o skiplink se torna visível.\n- **brSkipLinkShow** - Evento emitido ao exibir o componente.\n- **brDidHide** - Evento emitido quando o skiplink se torna oculto.\n- **brSkipLinkHide** - Evento emitido ao ocultar o componente.\n\n### **Methods:**\n - **watchModeChanges()** - Observa mudanças nos estados que afetam o modo efetivo (simple/compound)\ne atualiza as contagens dos itens quando necessário.\n- **handleItemNavigation(event: _CustomEvent<{ itemId: string; target: string }>_)** - Listener para eventos de navegação dos itens filhos.\n- **handleFocusIn(event: _FocusEvent_)** - Listener para evento de foco no componente.\n- **handleFocusOut(event: _FocusEvent_)** - Listener para evento de perda de foco no componente.\n- **handleKeyDown(event: _KeyboardEvent_)** - Listener para a tecla Escape.\n- **hide(): _Promise<void>_** - Oculta o componente programaticamente.\n- **show(): _Promise<void>_** - Exibe o componente programaticamente.\n\n### **Slots:**\n - **default** - Slot para inserir os itens de navegação rápida (br-skip-link-item). A tag br-skiplink-item é aceita por compatibilidade.\n\n### **CSS Parts:**\n - **container** - Parte para o contêiner principal do componente skip-link, usada para estilização via ::part().",
|
|
3715
3741
|
"attributes": [
|
|
3716
3742
|
{
|
|
3717
3743
|
"name": "custom-id",
|
|
@@ -3748,7 +3774,7 @@
|
|
|
3748
3774
|
},
|
|
3749
3775
|
{
|
|
3750
3776
|
"name": "br-skip-link-item",
|
|
3751
|
-
"description": "
|
|
3777
|
+
"description": "Representa um atalho de salto dentro do `br-skip-link`.\n\nAponte em `target` o seletor ou `id` do elemento de destino (ex.: `#conteudo`). Coloque o texto no slot padrão.\n\n```html\n<br-skip-link-item target=\"#conteudo\">Ir para o conteúdo principal</br-skip-link-item>\n```\n---\n\n\n### **Methods:**\n - **itemFocus(): _Promise<void>_** - Encaminha o foco para o item legado sem expor seu Shadow DOM ao pai.\n- **navigateToTarget(): _Promise<void>_** - Encaminha a navegação para o item legado sem expor seu Shadow DOM ao pai.\n\n### **Slots:**\n - **default** - Texto do link de navegação rápida.\n- **tag** - Conteúdo da indicação do atalho.",
|
|
3752
3778
|
"attributes": [
|
|
3753
3779
|
{
|
|
3754
3780
|
"name": "target",
|
|
@@ -3775,7 +3801,7 @@
|
|
|
3775
3801
|
},
|
|
3776
3802
|
{
|
|
3777
3803
|
"name": "br-skiplink-item",
|
|
3778
|
-
"description": "@deprecated Use `br-skip-link-item`.\n\
|
|
3804
|
+
"description": "@deprecated Use `br-skip-link-item`.\n\nItem legado de atalho do `br-skip-link`. Em código novo, utilize `br-skip-link-item`.\n\nDefina o destino em `target` e o texto do link no slot padrão.\n---\n\n\n### **Events:**\n - **brSkiplinkItemClick** - Evento emitido quando o item é clicado/ativado.\nO evento contém informações sobre o item e o target.\n- **brSkipLinkItemActivate** - Evento emitido quando o item é ativado.\n- **brSkiplinkItemFocus** - Evento emitido quando o item recebe foco.\n- **brSkipLinkItemFocus** - Evento emitido quando o item recebe foco.\n\n### **Methods:**\n - **handleClick(_event: _MouseEvent_)** - Listener para cliques no item.\n- **handleKeyDown(event: _KeyboardEvent_)** - Listener para teclas Enter, Space e atalho Alt+[keyNumber].\n- **handleFocus()** - Listener para foco no item.\n- **itemFocus(): _Promise<void>_** - Move o foco para este item.\n- **navigateToTarget(): _Promise<void>_** - Navega para o target definido.\nMove o foco para o elemento alvo e ajusta a rolagem da página se necessário.\n\n### **Slots:**\n - **default** - Slot para o texto do link de navegação rápida.\n- **tag** - Slot para personalizar a tag numérica do atalho de teclado, exibindo o valor de key-number por padrão.",
|
|
3779
3805
|
"attributes": [
|
|
3780
3806
|
{
|
|
3781
3807
|
"name": "target",
|
|
@@ -3802,7 +3828,7 @@
|
|
|
3802
3828
|
},
|
|
3803
3829
|
{
|
|
3804
3830
|
"name": "br-slider",
|
|
3805
|
-
"description": "O
|
|
3831
|
+
"description": "O `br-slider` seleciona um valor ou uma faixa de valores numéricos em uma trilha graduada.\n\nUse `min`, `max`, `step` e `value` para definir os limites e o valor. Para selecionar um intervalo (faixa com duas alças), use `range` e `range-value`.\n\n```html\n<br-slider min=\"0\" max=\"100\" value=\"50\" label=\"Volume\"></br-slider>\n<br-slider min=\"0\" max=\"1000\" range range-value=\"[200, 800]\" label=\"Faixa de preço\"></br-slider>\n```\n\n### Quando usar\n\n- Ajuste gradual de quantidades contínuas (volume, brilho, zoom).\n- Filtros de intervalos numéricos ou de preços.\n\n### Quando evitar\n\n- Entrada numérica exata arbitrária: use `br-input` com `type=\"number\"`.\n- Poucas escolhas fixas discretas: use `br-radio` ou `br-select`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/slider?tab=designer).\n---\n\n\n### **Events:**\n - **brDidChangeValue** - Disparado após alteração do valor da alça inicial.\n- **brDidChangeValueEnd** - Disparado após alteração do valor da alça final (modo composto).\n- **brSliderValidationChange** - Emitido ao iniciar e concluir a validação customizada.\n\n### **Methods:**\n - **checkValidity(): _Promise<boolean>_** - Retorna se o slider atende às constraints configuradas.\n- **reportValidity(): _Promise<boolean>_** - Valida e solicita ao navegador a apresentação do erro atual.\n- **setCustomValidity(message: _string_): _Promise<void>_** - Define ou limpa uma mensagem de validade customizada.\n- **validate(): _Promise<boolean>_** - Executa o validator do slider e retorna se o valor atual é válido.\n- **getValidationState(): _Promise<FormValidationState>_** - Retorna um snapshot serializável da Constraint Validation API.\n\n### **Slots:**\n - **ref-start** - Conteúdo exibido como referência inicial abaixo da trilha.\n- **ref-end** - Conteúdo exibido como referência final abaixo da trilha.\n- **feedback** - Mensagem de validação, normalmente um `br-message`.\n- **thumb-icon** - Ícone customizado na alça de controle em modo simples.\n- **thumb-start-icon** - Ícone customizado na alça inicial em modo composto.\n- **thumb-end-icon** - Ícone customizado na alça final em modo composto.\n\n### **CSS Parts:**\n - **base** - Contêiner principal do slider.\n- **layout** - Contêiner de layout do slider.\n- **body** - Área que agrupa trilha e referências.\n- **track** - Área interativa da trilha.\n- **track-visual** - Trilha visual do slider.\n- **tick-labels** - Contêiner das etiquetas das marcações.\n- **tick-label** - Etiqueta de uma marcação intermediária.\n- **filled-track** - Trecho preenchido da trilha.\n- **value-label** - Etiqueta com o valor da alça.\n- **value-label-arrow** - Seta da etiqueta de valor.\n- **thumb** - Alça de controle do slider.\n- **thumb-start** - Alça inicial do slider.\n- **thumb-end** - Alça final do slider em modo composto.\n- **references** - Contêiner das referências inicial e final.\n- **reference-start** - Referência inicial.\n- **reference-end** - Referência final.\n- **reference-bound** - Valor fixo de limite renderizado por `show-bounds`.\n- **input-wrapper** - Contêiner do campo numérico.\n- **input** - Campo numérico sincronizado com o slider.\n- **feedback** - Contêiner da mensagem de validação.\n- **steps** - Contêiner das marcações de passos customizados.\n- **step** - Botão indicador de passo customizado individual.",
|
|
3806
3832
|
"attributes": [
|
|
3807
3833
|
{
|
|
3808
3834
|
"name": "custom-id",
|
|
@@ -3866,7 +3892,7 @@
|
|
|
3866
3892
|
},
|
|
3867
3893
|
{
|
|
3868
3894
|
"name": "orientation",
|
|
3869
|
-
"description": "Orientação
|
|
3895
|
+
"description": "Orientação padrão. Quando informada, tem precedência sobre `vertical`; valores inválidos usam `horizontal`.",
|
|
3870
3896
|
"values": [{ "name": "horizontal" }, { "name": "vertical" }]
|
|
3871
3897
|
},
|
|
3872
3898
|
{
|
|
@@ -3934,7 +3960,7 @@
|
|
|
3934
3960
|
},
|
|
3935
3961
|
{
|
|
3936
3962
|
"name": "br-step",
|
|
3937
|
-
"description": "O
|
|
3963
|
+
"description": "O `br-step` exibe o progresso visual de um fluxo dividido em etapas consecutivas.\n\nDeclare cada etapa com `br-step-item` no slot padrão. Controle a etapa ativa pela propriedade `current`. Suporta orientação horizontal e vertical via `direction`.\n\n```html\n<br-step current=\"2\">\n <br-step-item step-number=\"1\" label=\"Identificação\"></br-step-item>\n <br-step-item step-number=\"2\" label=\"Dados Pessoais\"></br-step-item>\n <br-step-item step-number=\"3\" label=\"Confirmação\"></br-step-item>\n</br-step>\n```\n\n### Quando usar\n\n- Processos lineares com 3 ou mais etapas bem delimitadas.\n\n### Quando evitar\n\n- Formulários de múltiplas páginas onde o próprio componente gerencia as telas: use `br-wizard`.\n- Navegação plana entre abas da mesma tela: use `br-tab`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/step?tab=designer).\n---\n\n\n### **Events:**\n - **brStepChange** - Emite um evento quando o step ativo muda.\nO evento carrega o índice do novo step ativo (0-based).\n\n### **Methods:**\n - **activeStepChanged(newValue: _number_, oldValue: _number_)** - Observa mudanças na etapa ativa e sincroniza os itens filhos.\n- **initialStepChanged(newValue: _string | number_, oldValue: _string | number_)** - Observa mudanças no passo inicial e atualiza a etapa ativa.\n- **labelPositionChanged()** - Observa mudanças na posição do label e propaga aos itens.\n- **contentTypeChanged()** - Observa mudanças no tipo de conteúdo e propaga aos itens.\n- **modeChanged(_newValue: _StepMode_)** - Observa mudanças no modo e propaga aos itens.\n- **layoutChanged()** - Observa mudanças no layout e atualiza a linha do tempo dos itens.\n- **progressionTypeChanged()** - Observa mudanças no tipo de progressão e atualiza itens desabilitados.\n- **verticalContentPlacementChanged()** - Observa mudanças na posição do conteúdo vertical e propaga aos itens.\n- **handleClick(event: _MouseEvent_)** - listener para ouvir o evento de click no componente step\nAtravés desse listener o componente define qual será o proximo passo do step que terá o estado ativo\n- **ProceedToNextStep()** - @deprecated Use `next`. - \nMétodo disponibilizado via API do elemento que controla o componente Step, responsável por avançar para o próximo passo e atualizar o valor do estado activeStep\n- **next(): _Promise<void>_** - Avança para o próximo passo.\n- **BackToPreviousStep()** - @deprecated Use `previous`. - \nMétodo disponibilizado via API do elemento que controla o componente Step, responsável por retornar ao passo anterior e atualizar o valor do estado activeStep\n- **previous(): _Promise<void>_** - Retorna ao passo anterior.\n- **StepValidation(validationStatus: _StepValidationStatus_)** - @deprecated Use `setCurrentValidation`. - \nMétodo disponibilizado via API do elemento que integra um componente externo ao componente Step, permitindo sinalizar validações ou destacar a etapa com estado ativo.\n- **setCurrentValidation(validationStatus: _StepValidationStatus_): _Promise<void>_** - Define o estado de validação do passo ativo.\n- **GetActiveStep()** - \nMétodo disponibilizado via API do elemento que permite a um componente externo obter a etapa com o estado ativo do componente Step.\n\n### **Slots:**\n - **default** - Slot para os itens do step (br-step-item), aceitando apenas esse componente.\n\n### **CSS Parts:**\n - **container** - Parte para o contêiner principal envolvendo todos os step-items, usada para estilizar layout geral via ::part().",
|
|
3938
3964
|
"attributes": [
|
|
3939
3965
|
{
|
|
3940
3966
|
"name": "layout",
|
|
@@ -3986,7 +4012,7 @@
|
|
|
3986
4012
|
},
|
|
3987
4013
|
{
|
|
3988
4014
|
"name": "br-step-item",
|
|
3989
|
-
"description": "
|
|
4015
|
+
"description": "Representa uma etapa individual dentro do `br-step`.\n\nDefina o número da etapa em `step-number` e o texto em `label`. Use `status` (`done`, `active`, `pending`) para indicar o estado da etapa.\n---\n\n\n### **Methods:**\n - **setStepItemPositionStatus(value: _StepItemPositionStatus_)** - \nMétodo disponibilizado via api do elemento que indica a posição do step item, ele serve para setar o state stepItemPositionStatus do componente\n- **handleShowTimeLine(value: _boolean_, layout: _StepItemLayout_)** - Método que define a orientação do stepItem e controla a exibição da linha do tempo após o componente.\n- **setLabelPosition(value: _StepItemLabelPosition_)** - \nMétodo disponibilizado via api do elemento que atribui o valor ao estado que define onde o label, o texto de destaque, irá ficar localizado\n- **setContentType(value: _StepItemContentType_)** - \nMétodo disponibilizado via api do elemento que atribui o valor que irá definir o tipo de conteúdo apresentado dentro do componente stepItem\n- **setMode(value: _StepItemMode_)** - \nMétodo disponibilizado via api do elemento que atribui o valor que irá definir o modo como o componente irá se comportar e exibir seu estilo.\n- **setItemRole(value: _StepItemRole_)** - Define o role ARIA do botão interno.\nChamado pelo componente pai quando o contexto semântico exige um role\ndiferente do padrão `option` (ex.: `tab` em contexto de tablist).\n- **setContent(value: _string_)** - \nMétodo disponibilizado via api do elemento que atribui o valor que irá ser exibido dentro do componente stepItem\n- **setVerticalContentPlacement(value: _StepItemVerticalContentPlacement_)** - Método que define a posição do conteúdo no layout vertical.\n\n### **Slots:**\n - **content-area** - Slot para conteúdo customizado dentro do botão do item do step.\n- **step-content** - Slot para conteúdo da etapa exibido no layout vertical (texto, formulário, etc.).\n\n### **CSS Parts:**\n - **label** - Parte para o contêiner do texto da etapa, usada para estilizar tipografia e cor via ::part().",
|
|
3990
4016
|
"attributes": [
|
|
3991
4017
|
{
|
|
3992
4018
|
"name": "label",
|
|
@@ -4033,7 +4059,7 @@
|
|
|
4033
4059
|
},
|
|
4034
4060
|
{
|
|
4035
4061
|
"name": "br-switch",
|
|
4036
|
-
"description": "O
|
|
4062
|
+
"description": "O `br-switch` alterna instantaneamente entre os estados ligado e desligado.\n\nDefina o estado em `checked`. Opcionalmente configure os rótulos de estado em `label-on` e `label-off`.\n\n```html\n<br-switch label=\"Receber notificações por e-mail\" checked></br-switch>\n<br-switch label=\"Modo escuro\" label-on=\"Ligado\" label-off=\"Desligado\"></br-switch>\n```\n\nEm formulários HTML, o componente integra-se via `ElementInternals`, participando do submit nativo.\n\n### Quando usar\n\n- Ativar ou desativar uma funcionalidade com efeito imediato na tela ou configuração.\n\n### Quando evitar\n\n- Confirmação de termos em formulários (ex.: \"Li e concordo\"): use `br-checkbox`.\n- Escolha entre alternativas mutuamente exclusivas: use `br-radio`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/switch?tab=designer).\n---\n\n\n### **Events:**\n - **checkedChange** - Disparado depois que o valor do `checked` foi alterado.\n- **brSwitchValidationChange** - Emitido ao iniciar e concluir a validação customizada.\n\n### **Methods:**\n - **checkValidity(): _Promise<boolean>_** - Retorna `true` se o valor do switch for válido, caso contrário `false`.\nSe o switch for inválido, dispara um evento 'invalid'.\n- **reportValidity(): _Promise<boolean>_** - Retorna `true` se o valor do componente for válido, caso contrário `false`.\nSe for inválido, exibe a mensagem de erro padrão do navegador.\n- **setCustomValidity(message: _string_): _Promise<void>_** - Define uma mensagem de validação customizada para o switch.\nSe a mensagem for uma string vazia, o erro customizado é limpo.\n- **validate(): _Promise<boolean>_** - Executa o validator do switch e retorna se o valor atual é válido.\n- **getValidationState(): _Promise<FormValidationState>_** - Retorna um snapshot serializável da Constraint Validation API.\n- **toggleChecked()** - @deprecated Atualize a propriedade `checked` diretamente. - Inverte o valor da prop `checked`\n\n### **Slots:**\n - **default** - Slot para o rótulo do switch, com prioridade sobre a propriedade label.\n- **feedback** - Mensagem de validação, normalmente um `br-message`.\n\n### **CSS Parts:**\n - **container** - Contêiner visual do switch.\n- **input** - Elemento input nativo com role switch.\n- **label** - Rótulo do switch.\n- **data** - Elemento com textos de estado ligado/desligado.\n- **feedback** - Contêiner da mensagem de validação.",
|
|
4037
4063
|
"attributes": [
|
|
4038
4064
|
{
|
|
4039
4065
|
"name": "disabled",
|
|
@@ -4114,7 +4140,7 @@
|
|
|
4114
4140
|
},
|
|
4115
4141
|
{
|
|
4116
4142
|
"name": "br-tab",
|
|
4117
|
-
"description": "O
|
|
4143
|
+
"description": "O `br-tab` organiza diferentes visões ou painéis de conteúdo na mesma página através de abas navegáveis.\n\nDeclare os itens usando `br-tab-item` no slot padrão. O componente gera automaticamente os botões da barra de navegação e controla a exibição do painel correspondente.\n\n```html\n<br-tab>\n <br-tab-item label=\"Dados Cadastrais\">\n <p>Conteúdo da primeira aba.</p>\n </br-tab-item>\n <br-tab-item label=\"Documentos\">\n <p>Conteúdo da segunda aba.</p>\n </br-tab-item>\n</br-tab>\n```\n\n### Quando usar\n\n- Alternar entre conjuntos equivalentes de informação sem sair da página e sem ordem fixa de leitura.\n\n### Quando evitar\n\n- Processos com etapas sequenciais que dependem de preenchimento prévio: use `br-wizard` ou `br-step`.\n- Links para páginas ou rotas distintas: use `br-link` ou `br-header`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/tab?tab=designer).\n---\n\n\n### **Events:**\n - **brTabChange** - Evento disparado quando um tab é ativado.\n\n### **Methods:**\n - **activeTabChanged(newId: _string_)** - Observa mudanças no tab ativo para atualizar os estados\n- **colorModeChanged(_newValue: _string_)** - Observa mudanças no color mode para propagar aos filhos\n- **handleTabItemPropsChange()** - Escuta evento de mudança de propriedades dos tab-items filhos.\nEste listener garante que o componente pai seja re-renderizado quando\npropriedades mudam dinamicamente, sincronizando o painel ativo.\n- **setActiveTab(tabId: _string_): _Promise<void>_** - Ativa programaticamente uma aba a partir do seu identificador.\n- **getActiveTab(): _Promise<string | undefined>_** - Retorna o identificador da aba ativa atual.\n- **render(): __** - Renderiza o componente.\n\n### **Slots:**\n - **default** - Slot para inserir os itens das abas (br-tab-item)\n- **icon-{id}** - Ícone da aba cujo `br-tab-item` tem o `id` informado (ex.: `<i slot=\"icon-avisos\" class=\"fas fa-bell\" aria-hidden=\"true\"></i>`). Forma preferida para ícones por classe CSS, como Font Awesome: o elemento fica em light DOM e recebe os estilos globais da página. Tem precedência sobre a prop `icon` do item.\n\n### **CSS Parts:**\n - **container** - Contêiner principal que envolve toda a estrutura do componente (navegação e conteúdo). Expõe o elemento para customizações de fundo, bordas e espaçamentos globais.\n- **nav** - Área de navegação (`tablist`) onde os botões das abas estão localizados. Permite customizar o alinhamento, espaçamento e plano de fundo da barra de abas.\n- **button** - Botão individual de cada aba.\n- **indicator** - Indicador visual da aba ativa.\n- **content** - Área de conteúdo das abas.",
|
|
4118
4144
|
"attributes": [
|
|
4119
4145
|
{
|
|
4120
4146
|
"name": "active-tab-id",
|
|
@@ -4148,7 +4174,7 @@
|
|
|
4148
4174
|
},
|
|
4149
4175
|
{
|
|
4150
4176
|
"name": "alignment",
|
|
4151
|
-
"description": "Alinhamento horizontal
|
|
4177
|
+
"description": "Alinhamento horizontal. Quando informado, tem precedência sobre `alignItemsTab`; valores inválidos usam `start`.",
|
|
4152
4178
|
"values": [{ "name": "TabAlignItems" }]
|
|
4153
4179
|
},
|
|
4154
4180
|
{
|
|
@@ -4171,7 +4197,7 @@
|
|
|
4171
4197
|
},
|
|
4172
4198
|
{
|
|
4173
4199
|
"name": "br-tab-item",
|
|
4174
|
-
"description": "
|
|
4200
|
+
"description": "Define uma aba e seu respectivo painel de conteúdo dentro do `br-tab`.\n\nDefina o título da aba em `label` ou no slot `label`, e insira o conteúdo do painel no slot padrão. Use `active` para iniciar a aba selecionada e `disabled` para desabilitá-la.\n---\n\n\n### **Events:**\n - **brTabItemPropsChange** - Evento disparado quando as propriedades do tab-item mudam.\nO componente pai (br-tab) escuta este evento para atualizar a navegação.\n\n### **Methods:**\n - **tabItemTitleChanged()** - Observa mudanças no título e notifica o pai\n- **iconChanged()** - Observa mudanças no ícone e notifica o pai\n- **counterChanged()** - Observa mudanças no contador e notifica o pai\n- **onlyIconChanged()** - Observa mudanças em onlyIcon e notifica o pai\n- **isActiveChanged()** - Observa mudanças no estado ativo (alterações via JS/DOM direto) e notifica o pai\n\n### **Slots:**\n - **default** - Slot para o conteúdo do item da aba.",
|
|
4175
4201
|
"attributes": [
|
|
4176
4202
|
{
|
|
4177
4203
|
"name": "tab-item-id",
|
|
@@ -4185,7 +4211,7 @@
|
|
|
4185
4211
|
},
|
|
4186
4212
|
{
|
|
4187
4213
|
"name": "label",
|
|
4188
|
-
"description": "Texto
|
|
4214
|
+
"description": "Texto do item. Quando informado, tem precedência sobre `tabItemTitle`.",
|
|
4189
4215
|
"values": []
|
|
4190
4216
|
},
|
|
4191
4217
|
{
|
|
@@ -4210,7 +4236,7 @@
|
|
|
4210
4236
|
},
|
|
4211
4237
|
{
|
|
4212
4238
|
"name": "active",
|
|
4213
|
-
"description": "Estado ativo
|
|
4239
|
+
"description": "Estado ativo atual. Quando informado, tem precedência sobre `isActive`.",
|
|
4214
4240
|
"values": []
|
|
4215
4241
|
},
|
|
4216
4242
|
{
|
|
@@ -4228,7 +4254,7 @@
|
|
|
4228
4254
|
},
|
|
4229
4255
|
{
|
|
4230
4256
|
"name": "br-table",
|
|
4231
|
-
"description": "O
|
|
4257
|
+
"description": "O `br-table` estrutura e exibe conjuntos de dados organizados em linhas e colunas.\n\nEstruture a tabela usando os subcomponentes `br-table-header`, `br-table-body`, `br-table-row` e `br-table-cell`. Para exibir um indicador de carregamento durante atualizações assíncronas, use a propriedade `loading`.\n\n```html\n<br-table>\n <br-table-header slot=\"header\">\n <br-table-row>\n <br-table-header-cell>Nome</br-table-header-cell>\n <br-table-header-cell>Cargo</br-table-header-cell>\n </br-table-row>\n </br-table-header>\n <br-table-body slot=\"body\">\n <br-table-row>\n <br-table-cell>Maria Silva</br-table-cell>\n <br-table-cell>Analista</br-table-cell>\n </br-table-row>\n </br-table-body>\n</br-table>\n```\n\n### Quando usar\n\n- Dados bidimensionais com cabeçalhos de coluna e necessidades de ordenação ou comparação.\n\n### Quando evitar\n\n- Listas simples de itens lineares: use `br-list`.\n- Agrupamento de informações de um único registro: use `br-card`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/table?tab=designer).\n---\n\n\n### **Methods:**\n \n\n\n\n\n- **startLoading(): _Promise<void>_** - Inicia o estado de carregamento da tabela.\n- **stopLoading(): _Promise<void>_** - Interrompe o estado de carregamento da tabela.\n- **render(): __** - Renderiza o host do componente.\n\n### **Slots:**\n - **loading** - Indicador exibido enquanto as linhas são atualizadas.\n\n### **CSS Parts:**\n - **container** - Wrapper principal da tabela.\n- **content** - Área de conteúdo que contém header e body.\n- **loading** - Área do indicador de carregamento.",
|
|
4232
4258
|
"attributes": [
|
|
4233
4259
|
{
|
|
4234
4260
|
"name": "column-width",
|
|
@@ -4300,13 +4326,13 @@
|
|
|
4300
4326
|
},
|
|
4301
4327
|
{
|
|
4302
4328
|
"name": "br-table-body",
|
|
4303
|
-
"description": "
|
|
4329
|
+
"description": "Corpo de dados (`<tbody>`) da tabela. Use no slot `body` do `br-table`.\n\nAgrupa as linhas `br-table-row` contendo as células de dados `br-table-cell`.\n---\n\n\n### **Methods:**\n - **render(): __** - Renderiza o host do componente.\n\n### **CSS Parts:**\n - **body** - Wrapper do corpo da tabela.",
|
|
4304
4330
|
"attributes": [],
|
|
4305
4331
|
"references": []
|
|
4306
4332
|
},
|
|
4307
4333
|
{
|
|
4308
4334
|
"name": "br-table-cell",
|
|
4309
|
-
"description": "
|
|
4335
|
+
"description": "Célula de dados (`<td>`) da tabela. Use dentro de um `br-table-row` no corpo da tabela.\n\nColoque o conteúdo do registro no slot padrão.\n---\n\n\n### **Events:**\n - **brAlignmentChange** - Evento customizado emitido quando o alinhamento é alterado, permitindo que a célula reaja dinamicamente a mudanças nos tokens de alinhamento.\n- **brOverflowChange** - Evento customizado emitido quando a configuração de overflow é alterada, permitindo que a célula reaja dinamicamente a mudanças no token de overflow.\n\n### **Methods:**\n \n\n- **render(): __** - Renderiza o host do componente.\n\n### **CSS Parts:**\n - **cell** - Wrapper da célula.\n- **content** - Área de conteúdo da célula.",
|
|
4310
4336
|
"attributes": [
|
|
4311
4337
|
{
|
|
4312
4338
|
"name": "horizontal-alignment",
|
|
@@ -4338,13 +4364,13 @@
|
|
|
4338
4364
|
},
|
|
4339
4365
|
{
|
|
4340
4366
|
"name": "br-table-header",
|
|
4341
|
-
"description": "
|
|
4367
|
+
"description": "Cabeçalho da tabela (`br-table`). Use no slot `header`.\n\nAgrupa as linhas `br-table-row` com as células de cabeçalho `br-table-header-cell`.\n---\n\n\n### **Methods:**\n - **render(): __** - Renderiza o host do componente.\n\n### **CSS Parts:**\n - **header** - Wrapper do cabeçalho da tabela.",
|
|
4342
4368
|
"attributes": [],
|
|
4343
4369
|
"references": []
|
|
4344
4370
|
},
|
|
4345
4371
|
{
|
|
4346
4372
|
"name": "br-table-header-cell",
|
|
4347
|
-
"description": "
|
|
4373
|
+
"description": "Célula de cabeçalho (`<th>`) da tabela. Use dentro de um `br-table-row` no cabeçalho.\n\nColoque o título da coluna no slot padrão. Para habilitar ordenação, ative `sortable`.\n---\n\n\n### **Events:**\n - **brColumnWidthChange** - Evento customizado emitido quando a largura da coluna é alterada, permitindo que as células reajam dinamicamente a mudanças no layout.\n- **brAlignmentChange** - Evento customizado emitido quando o alinhamento é alterado, permitindo que a célula de cabeçalho reaja dinamicamente a mudanças nos tokens de alinhamento.\n- **brOverflowChange** - Evento customizado emitido quando a configuração de overflow é alterada, permitindo que a célula de cabeçalho reaja dinamicamente a mudanças no token de overflow.\n\n### **Methods:**\n \n\n\n- **render(): __** - Renderiza o host do componente.\n\n### **CSS Parts:**\n - **cell** - Wrapper da célula de cabeçalho.\n- **content** - Área de conteúdo da célula de cabeçalho.",
|
|
4348
4374
|
"attributes": [
|
|
4349
4375
|
{
|
|
4350
4376
|
"name": "column-width",
|
|
@@ -4381,7 +4407,7 @@
|
|
|
4381
4407
|
},
|
|
4382
4408
|
{
|
|
4383
4409
|
"name": "br-table-row",
|
|
4384
|
-
"description": "
|
|
4410
|
+
"description": "Linha horizontal (`<tr>`) da tabela. Use dentro de `br-table-header` ou `br-table-body`.\n\nUse `selected` para indicar que a linha está selecionada.\n---\n\n\n### **Events:**\n - **brAlignmentChange** - Evento customizado emitido quando o alinhamento é alterado, permitindo que as células reajam dinamicamente a mudanças nos tokens de alinhamento.\n- **brOverflowChange** - Evento customizado emitido quando a configuração de overflow é alterada, permitindo que as células reajam dinamicamente a mudanças no token de overflow.\n\n### **Methods:**\n \n\n- **render(): __** - Renderiza o host do componente.\n\n### **CSS Parts:**\n - **row** - Wrapper da linha da tabela.",
|
|
4385
4411
|
"attributes": [
|
|
4386
4412
|
{
|
|
4387
4413
|
"name": "horizontal-alignment",
|
|
@@ -4413,7 +4439,7 @@
|
|
|
4413
4439
|
},
|
|
4414
4440
|
{
|
|
4415
4441
|
"name": "br-tag",
|
|
4416
|
-
"description": "O
|
|
4442
|
+
"description": "O `br-tag` categoriza, rotula ou destaca informações curtas e metadados.\n\nSuporta modo estático informativo, modo interativo clicável com `action`, modo com botão de fechar (`closable`) e modo selecionável com `selectable`.\n\n```html\n<br-tag>Pendente</br-tag>\n<br-tag status=\"success\">Concluído</br-tag>\n<br-tag closable>Filtro: Brasília</br-tag>\n```\n\n### Quando usar\n\n- Rótulos de estado, tags de categorias ou palavras-chave.\n- Filtros aplicados que podem ser removidos individualmente.\n\n### Quando evitar\n\n- Ações primárias ou envio de formulário: use `br-button`.\n- Contagem numérica pura: use `br-avatar` ou texto de badge.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/tag?tab=designer).\n---\n\n\n### **Events:**\n - **radioSelected** - Evento emitido quando a tag é selecionada.\n- **brTagValidationChange** - Emitido ao iniciar e concluir a validação customizada.\n\n### **Methods:**\n - **checkValidity(): _Promise<boolean>_** - Retorna se a tag selecionável atende às constraints configuradas.\n- **reportValidity(): _Promise<boolean>_** - Valida e solicita ao navegador a apresentação do erro atual.\n- **setCustomValidity(message: _string_): _Promise<void>_** - Define ou limpa uma mensagem de validade customizada.\n- **validate(): _Promise<boolean>_** - Executa o validator da tag e retorna se o valor atual é válido.\n- **getValidationState(): _Promise<FormValidationState>_** - Retorna um snapshot serializável da Constraint Validation API.\n\n### **Slots:**\n - **default** - Slot para inserir o conteúdo da tag, como rótulo ou ícone.\n- **label** - Rótulo customizado da tag. Quando utilizado, a prop `label` é ignorada.\n- **icon** - Ícone customizado da tag. Quando utilizado, a prop `icon` é ignorada.\n- **close-button** - Botão de fechar customizado. Quando utilizado, o botão padrão é substituído.\n- **feedback** - Mensagem de validação, normalmente um `br-message`.\n\n### **CSS Parts:**\n - **tag** - Elemento principal da tag.\n- **input** - Elemento input da tag de seleção.\n- **label** - Rótulo da tag de seleção.\n- **feedback** - Contêiner da mensagem de validação.",
|
|
4417
4443
|
"attributes": [
|
|
4418
4444
|
{
|
|
4419
4445
|
"name": "label",
|
|
@@ -4477,7 +4503,7 @@
|
|
|
4477
4503
|
},
|
|
4478
4504
|
{
|
|
4479
4505
|
"name": "variant",
|
|
4480
|
-
"description": "Variante funcional
|
|
4506
|
+
"description": "Variante funcional padrão. Aceita `default`, `status`, `action` ou `selectable`.\nValores inválidos são ignorados; nesse caso, os aliases booleanos legados\ncontinuam disponíveis para manter a compatibilidade.",
|
|
4481
4507
|
"values": [{ "name": "TagVariant" }]
|
|
4482
4508
|
},
|
|
4483
4509
|
{
|
|
@@ -4530,7 +4556,7 @@
|
|
|
4530
4556
|
},
|
|
4531
4557
|
{
|
|
4532
4558
|
"name": "br-textarea",
|
|
4533
|
-
"description": "O
|
|
4559
|
+
"description": "O `br-textarea` captura textos longos em múltiplas linhas em formulários.\n\nConfigure `label`, `placeholder`, `maxlength` e `state` para validação. Use `show-counter` para exibir o contador de caracteres restantes.\n\n```html\n<br-textarea label=\"Observações\" placeholder=\"Digite sua mensagem\" maxlength=\"500\" show-counter></br-textarea>\n```\n\nEm formulários HTML, o componente integra-se via `ElementInternals`, participando da validação nativa com `required`.\n\n### Quando usar\n\n- Mensagens, comentários, justificativas, descrições ou textos extensos.\n\n### Quando evitar\n\n- Dados curtos de linha única (nome, CPF, e-mail): use `br-input`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/textarea?tab=designer).\n---\n\n\n### **Events:**\n - **valueChange** - Valor atualizado do textarea\n- **brTextareaValidationChange** - Informa o início e o resultado do validator; o `detail` contém\n`validating`, `valid` e `message`.\n\n### **Methods:**\n - **checkValidity(): _Promise<boolean>_** - Retorna `true` se o valor do textarea for válido, caso contrário `false`.\nSe o textarea for inválido, dispara um evento 'invalid'.\n- **reportValidity(): _Promise<boolean>_** - Retorna `true` se o valor do textarea for válido, caso contrário `false`.\nSe for inválido, exibe a mensagem de erro padrão do navegador.\n- **setCustomValidity(message: _string_): _Promise<void>_** - Define uma mensagem de validação customizada para o textarea.\nSe a mensagem for uma string vazia, o erro customizado é limpo.\n- **validate(): _Promise<boolean>_** - Executa o validator customizado e retorna se o textarea está válido.\n- **getValidationState(): _Promise<FormValidationState>_** - Retorna um snapshot serializável da Constraint Validation API.\n- **select(): _Promise<void>_** - Seleciona todo o texto do controle nativo, conforme HTMLTextAreaElement.select().\n- **setRangeText(replacement: _string_, start: _number_, end: _number_, selectionMode: _SelectionMode_): _Promise<void>_** - Substitui um intervalo de texto usando a API nativa do textarea.\n- **setSelectionRange(start: _number_, end: _number_, direction: _'forward' | 'backward' | 'none'_): _Promise<void>_** - Define o intervalo selecionado no controle nativo.\n- **setValue(newValue: _string_)** - Define um novo valor para o textarea.\n\n### **Slots:**\n - **default** - Slot para texto adicional ou instruções a serem exibidos junto ao textarea.\n- **feedback** - Mensagem de validação, normalmente um `br-message`.\n- **validation-loading** - Indicador exibido durante validação assíncrona.\n\n### **CSS Parts:**\n - **container** - Contêiner visual principal.\n- **label** - Rótulo do textarea.\n- **textarea** - Elemento textarea nativo.\n- **counter** - Contêiner do contador.\n- **counter-text** - Texto do contador.\n- **helper** - Contêiner do conteúdo auxiliar do slot default.\n- **feedback** - Contêiner da mensagem de validação.",
|
|
4534
4560
|
"attributes": [
|
|
4535
4561
|
{
|
|
4536
4562
|
"name": "value",
|
|
@@ -4603,7 +4629,7 @@
|
|
|
4603
4629
|
},
|
|
4604
4630
|
{
|
|
4605
4631
|
"name": "feedback-state",
|
|
4606
|
-
"description": "Estado de feedback
|
|
4632
|
+
"description": "Estado de feedback. Quando informado, tem precedência sobre `state`; valores inválidos não aplicam estado.",
|
|
4607
4633
|
"values": [
|
|
4608
4634
|
{ "name": "danger" },
|
|
4609
4635
|
{ "name": "success" },
|
|
@@ -4664,7 +4690,7 @@
|
|
|
4664
4690
|
},
|
|
4665
4691
|
{
|
|
4666
4692
|
"name": "br-tooltip",
|
|
4667
|
-
"description": "O
|
|
4693
|
+
"description": "O `br-tooltip` exibe uma dica rápida e contextual quando o usuário foca ou passa o mouse sobre um elemento.\n\nColoque o texto da dica em `text` ou no slot padrão, e vincule-o ao elemento acionador através de `target` ou colocando o acionador no slot `trigger`.\n\n```html\n<br-button id=\"btn-ajuda\" shape=\"circle\" aria-label=\"Ajuda\">?</br-button>\n<br-tooltip target=\"#btn-ajuda\" text=\"Clique para obter informações\"></br-tooltip>\n```\n\n### Quando usar\n\n- Esclarecer o significado de botões que usam apenas ícones ou rótulos abreviados.\n\n### Quando evitar\n\n- Informações essenciais que todos os usuários precisam ler imediatamente: exiba como texto visível na página.\n- Conteúdos longos com links clicáveis: use `br-message` ou diálogo.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/tooltip?tab=designer).\n---\n\n\n### **Events:**\n - **brDidOpen** - Emitido quando o tooltip abre.\n- **brDidClose** - Emitido quando o tooltip fecha.\n\n### **Methods:**\n - **handleVisibilityChange(visible: _boolean_): __** - Watcher para monitorar alterações na propriedade `isVisible`.\n- **handleMatchTriggerWidthChange()** - Recalcula a superfície visível quando a política de largura muda.\n- **handleFocusIn()** - Exibe o tooltip quando o acionador recebe foco.\n- **handleFocusOut()** - Oculta o tooltip quando o acionador perde foco.\n- **handleKeyDown(event: _KeyboardEvent_)** - Fecha com Escape enquanto o tooltip estiver visível.\n- **setTriggerElement(element: _HTMLElement | null_)** - Define um trigger externo para o tooltip.\n- **showTooltip()** - Exibe o tooltip programaticamente.\n- **hideTooltip()** - Oculta o tooltip programaticamente.\n- **show()** - Exibe o tooltip programaticamente (alias para `showTooltip`).\n- **hide()** - Oculta o tooltip programaticamente (alias para `hideTooltip`).\n- **render(): __** - Renderiza o componente.\nEste método é responsável por gerar o conteúdo HTML do componente.\nEle utiliza a função `h` do Stencil para criar elementos JSX.\n\n### **Slots:**\n - **trigger** - Slot para o elemento que aciona a exibição do tooltip.\n- **content** - Slot para o conteúdo exibido no tooltip.\n\n### **CSS Parts:**\n - **container** - Wrapper principal do tooltip.\n- **trigger** - Área do acionador do tooltip.\n- **content** - Área de conteúdo do tooltip.\n- **arrow** - Seta indicativa do tooltip.",
|
|
4668
4694
|
"attributes": [
|
|
4669
4695
|
{
|
|
4670
4696
|
"name": "custom-id",
|
|
@@ -4726,7 +4752,7 @@
|
|
|
4726
4752
|
},
|
|
4727
4753
|
{
|
|
4728
4754
|
"name": "br-upload",
|
|
4729
|
-
"description": "O
|
|
4755
|
+
"description": "O `br-upload` gerencia a seleção e envio de arquivos em formulários, com suporte a arrastar e soltar (drag and drop).\n\nDefina os tipos aceitos em `accept` e permita múltiplos arquivos com `multiple`. Use a lista de arquivos para exibir o progresso e o botão de exclusão.\n\n```html\n<br-upload label=\"Enviar documento\" accept=\".pdf,.png,.jpg\" multiple></br-upload>\n```\n\nEm formulários HTML, o componente integra-se via `ElementInternals`, enviando a lista de arquivos no submit nativo.\n\n### Quando usar\n\n- Anexar comprovantes, fotos ou documentos em formulários.\n\n### Quando evitar\n\n- Campo de texto ou URL de arquivo remoto: use `br-input`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/upload?tab=designer).\n---\n\n\n### **Events:**\n - **selectedFilesChange** - Emitido quando a lista de arquivos selecionados muda.\n- **brRemove** - Evento emitido quando um arquivo da lista `uploadFiles` (externos) é removido pelo usuário.\nO objeto emitido contém os dados do arquivo removido.\n- **brUploadRemove** - Evento emitido quando um arquivo existente é removido.\n- **brUploadCancel** - Emitido quando o usuário fecha a caixa de seleção de arquivos sem escolher nada.\n- **brUploadValidationChange** - Emitido ao iniciar e concluir a validação customizada.\nO `detail` contém `validating`, `valid` e `message`.\n- **brUploadStart** - Emitido antes de o `uploadHandler` processar um arquivo.\n- **brUploadProgress** - Emitido quando o `uploadHandler` informa o progresso de um arquivo.\n- **brUploadSuccess** - Emitido quando o `uploadHandler` conclui um arquivo.\n- **brUploadError** - Emitido quando o `uploadHandler` falha ao enviar um arquivo.\n\n### **Methods:**\n - **checkValidity(): _Promise<boolean>_** - Retorna `true` se o valor do componente for válido, caso contrário `false`.\nSe o componente for inválido, dispara um evento 'invalid'.\n- **reportValidity(): _Promise<boolean>_** - Retorna `true` se o valor do componente for válido, caso contrário `false`.\nSe for inválido, exibe a mensagem de erro padrão do navegador.\n- **setCustomValidity(message: _string_): _Promise<void>_** - Define uma mensagem de validação customizada para o upload.\nSe a mensagem for uma string vazia, o erro customizado é limpo.\n- **validate(): _Promise<boolean>_** - Executa o validator do upload e retorna se a lista atual é válida.\n- **getValidationState(): _Promise<FormValidationState>_** - Retorna um snapshot serializável da Constraint Validation API.\n- **cancelUpload(): _Promise<void>_** - Cancela o envio atual iniciado pelo `uploadHandler`.\n\n### **Slots:**\n - **default** - Conteúdo personalizado do botão de upload, com precedência sobre `buttonLabel` (use a prop para texto simples).\n- **upload-list** - Permite customizar a área de listagem de arquivos. Se utilizado, substitui a lista padrão gerada pelo componente.\n- **label** - Rótulo customizado do upload. Quando utilizado, a prop `label` é ignorada.\n- **helper** - Texto auxiliar exibido abaixo da superfície de seleção.\n- **feedback** - Mensagem de validação, normalmente um `br-message`.\n- **loading** - Conteúdo exibido enquanto o handler fornecido pela aplicação envia um arquivo.\n\n### **CSS Parts:**\n - **container** - Wrapper principal do upload.\n- **label** - Rótulo do campo de upload.\n- **input** - Elemento input de arquivo.\n- **button** - Botão de seleção de arquivo.\n- **helper** - Texto auxiliar do upload.\n- **remove-button** - Botão de remoção de arquivo.\n- **file-list** - Lista de arquivos selecionados.\n- **feedback** - Contêiner da mensagem de validação.\n- **loading** - Estado e progresso do envio assíncrono.",
|
|
4730
4756
|
"attributes": [
|
|
4731
4757
|
{
|
|
4732
4758
|
"name": "custom-id",
|
|
@@ -4757,6 +4783,11 @@
|
|
|
4757
4783
|
"description": "Rótulo exibido acima do botão de upload.",
|
|
4758
4784
|
"values": []
|
|
4759
4785
|
},
|
|
4786
|
+
{
|
|
4787
|
+
"name": "button-label",
|
|
4788
|
+
"description": "Texto do botão de seleção. Quando omitido, usa \"Selecione o arquivo\" ou,\ncom `multiple`, \"Selecione o(s) arquivo(s)\". O slot padrão tem precedência.",
|
|
4789
|
+
"values": []
|
|
4790
|
+
},
|
|
4760
4791
|
{
|
|
4761
4792
|
"name": "upload-files",
|
|
4762
4793
|
"description": "Lista de arquivos já enviados (para edição ou pré-visualização).\nPode ser uma string JSON ou um array de objetos IUploadFile. Cada item deve ter `name` não vazio e `size` numérico não negativo opcional; itens inválidos são ignorados.",
|
|
@@ -4784,7 +4815,7 @@
|
|
|
4784
4815
|
},
|
|
4785
4816
|
{
|
|
4786
4817
|
"name": "feedback-state",
|
|
4787
|
-
"description": "Estado de feedback
|
|
4818
|
+
"description": "Estado de feedback. Quando informado, tem precedência sobre `state`.",
|
|
4788
4819
|
"values": [{ "name": "BrFeedbackState" }]
|
|
4789
4820
|
},
|
|
4790
4821
|
{
|
|
@@ -4827,7 +4858,7 @@
|
|
|
4827
4858
|
},
|
|
4828
4859
|
{
|
|
4829
4860
|
"name": "br-wizard",
|
|
4830
|
-
"description": "O
|
|
4861
|
+
"description": "O `br-wizard` conduz fluxos passo a passo divididos em telas sequenciais com botões de navegação e barra de progresso.\n\nInsira cada tela com `br-wizard-panel` no slot padrão. Acompanhe a mudança de etapas pelo evento `brStepChange`.\n\n```html\n<br-wizard>\n <br-wizard-panel title-text=\"Identificação\">\n <p>Primeira etapa do cadastro.</p>\n </br-wizard-panel>\n <br-wizard-panel title-text=\"Endereço\">\n <p>Segunda etapa do cadastro.</p>\n </br-wizard-panel>\n <br-wizard-panel title-text=\"Confirmação\">\n <p>Revise os dados antes de enviar.</p>\n </br-wizard-panel>\n</br-wizard>\n```\n\n### Quando usar\n\n- Formulários extensos com dependência lógica entre etapas.\n\n### Quando evitar\n\n- Apenas indicar o status de um pedido já realizado: use `br-step`.\n- Conteúdos independentes onde a ordem de preenchimento é livre: use `br-tab`.\n\nConsulte as [diretrizes de design do GovBR](https://www.gov.br/ds/components/wizard?tab=designer).\n---\n\n\n### **Events:**\n - **brWizardStepChange** - Evento emitido APÓS mudar de etapa com sucesso.\n\nEste evento é disparado independente da origem da navegação:\n- Botões \"Avançar\" ou \"Voltar\"\n- Click direto em um step do indicador de progresso\n- Chamadas programáticas via métodos públicos (goToStep, nextStep, etc)\n- **brWizardBeforeStepChange** - Evento emitido ANTES de mudar de etapa (permite validação e cancelamento).\n\nComportamento:\n- Disparado apenas ao AVANÇAR (targetStep > currentStep)\n- Não é disparado ao VOLTAR (targetStep < currentStep)\n- Funciona tanto para cliques nos botões quanto para cliques diretos nos steps\n- Pode ser cancelado com `event.preventDefault()` para bloquear a navegação\n- **brWizardComplete** - Evento emitido ao concluir o wizard (última etapa).\n- **brWizardCancel** - Evento emitido ao cancelar o wizard.\n- **brWizardNavigationBlocked** - Evento emitido quando uma ação é bloqueada (validação falha, progressão linear impedida).\nEmite uma string indicando o motivo: 'linear-progression' ou 'validation-failed'.\nUse getCurrentStepIndex() para obter o contexto da etapa atual.\n\n### **Methods:**\n - **handleProgressionTypeChange()** - Observa mudanças no tipo de progressão.\nAtualiza a navegação dos painéis quando muda entre linear/nonlinear.\n- **handleInitialStepChange()** - Observa mudanças na etapa inicial.\nReinicializa o wizard quando a prop initialStep é alterada externamente.\n- **handleCurrentStepChange(newStep: _number_, oldStep: _number_)** - Observa mudanças na etapa atual (fonte única de verdade).\nSincroniza com br-step, atualiza painéis, anuncia mudança e move foco.\n- **handleSlotChange(event: _Event_)** - Detecta quando o slot muda (painéis adicionados/removidos dinamicamente).\nRedescobre os painéis e ressincroniza o estado.\n- **handleStepChange(event: _CustomEvent<{ activeStep: number }>_)** - Detecta quando o br-step muda de etapa ativa.\nValida e sincroniza a navegação com o componente interno br-step.\n- **nextStep(): _Promise<boolean>_** - Avança para a próxima etapa.\nExecuta validação via evento `brWizardBeforeStepChange` antes de navegar.\n- **next(): _Promise<boolean>_** - Avança para a próxima etapa.\n- **previousStep(): _Promise<boolean>_** - Volta para a etapa anterior.\nNão executa validação ao retornar.\n- **previous(): _Promise<boolean>_** - Retorna para a etapa anterior.\n- **goToStep(stepNumber: _number_): _Promise<boolean>_** - Navega para uma etapa específica.\nExecuta validação se estiver avançando (etapa alvo > etapa atual).\n- **reset(): _Promise<void>_** - Retorna à primeira etapa do wizard.\nNão executa validação (útil para reiniciar o fluxo).\n- **getCurrentStep(): _Promise<HTMLElement | null>_** - Retorna o elemento HTML do painel ativo no momento.\n- **getAllSteps(): _Promise<HTMLElement[]>_** - Retorna todos os painéis do wizard.\n- **getStepByIndex(stepNumber: _number_): _Promise<HTMLElement | null>_** - Retorna um painel específico pelo índice.\n- **getCurrentStepIndex(): _Promise<number>_** - Retorna o índice (número) da etapa atual.\nA numeração começa em 1 (primeira etapa = 1, segunda = 2, etc).\n- **getTotalSteps(): _Promise<number>_** - Retorna o número total de etapas do wizard.\n- **render(): __** - Método de renderização principal do componente.\nMonta a estrutura completa do wizard com acessibilidade integrada.\n\n### **Slots:**\n - **default** - Slot para os painéis de etapa (br-wizard-panel) do wizard.\n- **cancel-button** - Conteúdo customizado do botão de cancelar. Quando utilizado, o texto padrão \"Cancelar\" é substituído.\n- **next-button** - Conteúdo customizado do botão de avançar/concluir. Quando utilizado, os textos padrão \"Avançar\" e \"Concluir\" são substituídos.\n- **previous-button** - Conteúdo customizado do botão de voltar. Quando utilizado, o texto padrão \"Voltar\" é substituído.\n\n### **CSS Parts:**\n - **form** - Área do formulário do wizard.\n- **panel** - Painel ativo do wizard.\n- **progress** - Área de progresso do wizard.\n- **content** - Conteúdo do painel ativo.\n- **buttons** - Área de botões de navegação.",
|
|
4831
4862
|
"attributes": [
|
|
4832
4863
|
{
|
|
4833
4864
|
"name": "step",
|
|
@@ -4869,7 +4900,7 @@
|
|
|
4869
4900
|
},
|
|
4870
4901
|
{
|
|
4871
4902
|
"name": "br-wizard-panel",
|
|
4872
|
-
"description": "
|
|
4903
|
+
"description": "Painel de conteúdo de uma etapa individual do `br-wizard`.\n\nDefina o título da etapa em `title-text`. Insira os campos e conteúdos dessa fase no slot padrão.\n---\n\n\n### **Slots:**\n - **default** - Slot para o conteúdo da etapa (formulários, campos ou informações da fase atual).\n\n### **CSS Parts:**\n - **panel** - Wrapper do painel.\n- **content** - Área de conteúdo do painel.",
|
|
4873
4904
|
"attributes": [
|
|
4874
4905
|
{
|
|
4875
4906
|
"name": "label",
|