@govbr-ds/webcomponents 2.1.2 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +87 -46
- package/cem/custom-elements.json +6367 -1134
- package/cem/webcomponents.html-custom-data.json +399 -286
- package/dist/cjs/br-avatar.cjs.entry.js +21 -14
- package/dist/cjs/br-breadcrumb-item.cjs.entry.js +2 -2
- package/dist/cjs/br-breadcrumb.cjs.entry.js +49 -22
- package/dist/cjs/br-button_2.cjs.entry.js +72 -35
- package/dist/cjs/br-card.cjs.entry.js +6 -5
- package/dist/cjs/br-carousel-page.cjs.entry.js +3 -3
- package/dist/cjs/br-carousel.cjs.entry.js +77 -21
- package/dist/cjs/br-checkbox-group.cjs.entry.js +157 -27
- package/dist/cjs/br-checkbox.cjs.entry.js +85 -15
- package/dist/cjs/br-checkgroup.cjs.entry.js +5 -2
- package/dist/cjs/br-collapse_2.cjs.entry.js +85 -26
- package/dist/cjs/br-cookiebar-cookie.cjs.entry.js +4 -4
- package/dist/cjs/br-cookiebar-group.cjs.entry.js +4 -4
- package/dist/cjs/br-cookiebar-header.cjs.entry.js +4 -4
- package/dist/cjs/br-cookiebar-link.cjs.entry.js +14 -6
- package/dist/cjs/br-cookiebar-note-group.cjs.entry.js +3 -5
- package/dist/cjs/br-cookiebar-note.cjs.entry.js +4 -4
- package/dist/cjs/br-cookiebar.cjs.entry.js +38 -25
- package/dist/cjs/br-crumb.cjs.entry.js +2 -2
- package/dist/cjs/br-date-picker_3.cjs.entry.js +246 -88
- package/dist/cjs/br-datetime-picker.cjs.entry.js +115 -527
- package/dist/cjs/br-divider.cjs.entry.js +70 -17
- package/dist/cjs/br-dropdown_2.cjs.entry.js +304 -122
- package/dist/cjs/br-footer-category.cjs.entry.js +10 -6
- package/dist/cjs/br-footer-item.cjs.entry.js +9 -4
- package/dist/cjs/br-footer-legal.cjs.entry.js +4 -4
- package/dist/cjs/br-footer-logo.cjs.entry.js +22 -10
- package/dist/cjs/br-footer-social.cjs.entry.js +14 -6
- package/dist/cjs/br-footer.cjs.entry.js +16 -7
- package/dist/cjs/br-header-function.cjs.entry.js +28 -7
- package/dist/cjs/br-header-link.cjs.entry.js +25 -4
- package/dist/cjs/br-header-list.cjs.entry.js +6 -17
- package/dist/cjs/br-header-logo.cjs.entry.js +18 -7
- package/dist/cjs/br-header.cjs.entry.js +72 -17
- package/dist/cjs/br-icon.cjs.entry.js +160 -23
- package/dist/cjs/br-input.cjs.entry.js +130 -39
- package/dist/cjs/br-item.cjs.entry.js +96 -48
- package/dist/cjs/br-link.cjs.entry.js +20 -7
- package/dist/cjs/br-loading.cjs.entry.js +100 -38
- package/dist/cjs/br-magic-button.cjs.entry.js +26 -9
- package/dist/cjs/br-menu-group.cjs.entry.js +14 -3
- package/dist/cjs/br-menu-header.cjs.entry.js +4 -4
- package/dist/cjs/br-menu-info.cjs.entry.js +4 -4
- package/dist/cjs/br-menu-item.cjs.entry.js +27 -5
- package/dist/cjs/br-menu-link.cjs.entry.js +14 -6
- package/dist/cjs/br-menu-list.cjs.entry.js +23 -27
- package/dist/cjs/br-menu-logo.cjs.entry.js +4 -4
- package/dist/cjs/br-menu-social.cjs.entry.js +16 -6
- package/dist/cjs/br-menu.cjs.entry.js +41 -64
- package/dist/cjs/br-modal.cjs.entry.js +26 -40
- package/dist/cjs/br-notification-body.cjs.entry.js +4 -4
- package/dist/cjs/br-notification-header.cjs.entry.js +4 -4
- package/dist/cjs/br-notification-item.cjs.entry.js +14 -8
- package/dist/cjs/br-notification.cjs.entry.js +23 -8
- package/dist/cjs/br-pagination.cjs.entry.js +119 -87
- package/dist/cjs/br-radio-group.cjs.entry.js +106 -57
- package/dist/cjs/br-radio.cjs.entry.js +61 -11
- package/dist/cjs/br-scrim.cjs.entry.js +161 -67
- package/dist/cjs/br-select-input_3.cjs.entry.js +283 -90
- package/dist/cjs/br-sign-in.cjs.entry.js +34 -15
- package/dist/cjs/br-skip-link-item.cjs.entry.js +39 -2
- package/dist/cjs/br-skip-link.cjs.entry.js +50 -33
- package/dist/cjs/br-skiplink-item.cjs.entry.js +22 -6
- package/dist/cjs/br-slider.cjs.entry.js +521 -99
- package/dist/cjs/br-step_2.cjs.entry.js +98 -44
- package/dist/cjs/br-switch.cjs.entry.js +20 -11
- package/dist/cjs/br-tab-item.cjs.entry.js +38 -14
- package/dist/cjs/br-tab.cjs.entry.js +57 -44
- package/dist/cjs/br-table-body.cjs.entry.js +3 -3
- package/dist/cjs/br-table-cell.cjs.entry.js +30 -13
- package/dist/cjs/br-table-header-cell.cjs.entry.js +23 -7
- package/dist/cjs/br-table-header.cjs.entry.js +3 -3
- package/dist/cjs/br-table-row.cjs.entry.js +17 -3
- package/dist/cjs/br-table.cjs.entry.js +67 -21
- package/dist/cjs/br-tag.cjs.entry.js +48 -30
- package/dist/cjs/br-textarea.cjs.entry.js +117 -12
- package/dist/cjs/br-tooltip.cjs.entry.js +87 -41
- package/dist/cjs/br-upload.cjs.entry.js +83 -24
- package/dist/cjs/br-wizard-panel.cjs.entry.js +16 -3
- package/dist/cjs/br-wizard.cjs.entry.js +52 -28
- package/dist/cjs/{isValid-Fu3kaWNn.js → datetime-picker-props-validation-DmNKSXsy.js} +481 -4
- package/dist/cjs/{floating-ui-MBI1osio.js → floating-ui-B6nsdYUU.js} +24 -1
- package/dist/cjs/{floating-ui.dom-BUSTaaxR.js → floating-ui.dom-wzdGZjyG.js} +201 -113
- package/dist/cjs/{focus-DuywwJPR.js → focus-BhfJnFgJ.js} +21 -0
- package/dist/cjs/header-context-CdawuLsH.js +17 -0
- package/dist/cjs/id-DE4jSi-L.js +36 -0
- package/dist/cjs/{index-CRdcutym.js → index-CGgZBuyy.js} +68 -752
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/motion-CgIooxWS.js +29 -0
- package/dist/cjs/ownership-UnpufyCx.js +116 -0
- package/dist/cjs/prop-warning-xvEHQz8H.js +60 -0
- package/dist/cjs/props-D8dybmr0.js +124 -0
- package/dist/cjs/{swipe-BU8_XE9f.js → swipe-BGF-h9WY.js} +11 -1
- package/dist/cjs/webcomponents.cjs.js +3 -3
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/avatar/avatar.css +1 -1
- package/dist/collection/components/avatar/avatar.js +48 -16
- package/dist/collection/components/breadcrumb/breadcrumb-item/breadcrumb-item.js +15 -3
- package/dist/collection/components/breadcrumb/breadcrumb.css +1 -1
- package/dist/collection/components/breadcrumb/breadcrumb.js +107 -22
- package/dist/collection/components/breadcrumb/crumb/crumb.js +14 -2
- package/dist/collection/components/button/button.css +1 -1
- package/dist/collection/components/button/button.js +88 -24
- package/dist/collection/components/card/card.css +1 -1
- package/dist/collection/components/card/card.js +33 -5
- package/dist/collection/components/carousel/carousel-page/carousel-page.css +1 -1
- package/dist/collection/components/carousel/carousel-page/carousel-page.js +11 -4
- package/dist/collection/components/carousel/carousel.css +1 -1
- package/dist/collection/components/carousel/carousel.js +107 -21
- package/dist/collection/components/checkbox/checkbox.css +1 -1
- package/dist/collection/components/checkbox/checkbox.js +134 -20
- package/dist/collection/components/checkbox-group/checkbox-group.css +1 -1
- package/dist/collection/components/checkbox-group/checkbox-group.js +210 -30
- package/dist/collection/components/checkgroup/checkgroup.js +42 -4
- package/dist/collection/components/collapse/collapse.css +1 -1
- package/dist/collection/components/collapse/collapse.js +48 -8
- package/dist/collection/components/cookiebar/cookiebar-cookie/cookiebar-cookie.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-cookie/cookiebar-cookie.js +17 -4
- package/dist/collection/components/cookiebar/cookiebar-group/cookiebar-group.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-group/cookiebar-group.js +16 -7
- package/dist/collection/components/cookiebar/cookiebar-header/cookiebar-header.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-header/cookiebar-header.js +15 -9
- package/dist/collection/components/cookiebar/cookiebar-link/cookiebar-link.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-link/cookiebar-link.js +24 -8
- package/dist/collection/components/cookiebar/cookiebar-note/cookiebar-note.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-note/cookiebar-note.js +14 -4
- 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 +13 -5
- package/dist/collection/components/cookiebar/cookiebar.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar.js +67 -32
- package/dist/collection/components/datetime-picker/date-picker/date-picker.css +1 -1
- package/dist/collection/components/datetime-picker/date-picker/date-picker.js +134 -35
- package/dist/collection/components/datetime-picker/datetime-input/datetime-input.css +1 -1
- package/dist/collection/components/datetime-picker/datetime-input/datetime-input.js +112 -22
- package/dist/collection/components/datetime-picker/datetime-picker-props-validation.js +13 -5
- package/dist/collection/components/datetime-picker/datetime-picker.css +1 -1
- package/dist/collection/components/datetime-picker/datetime-picker.js +158 -42
- package/dist/collection/components/datetime-picker/time-picker/time-picker.css +1 -1
- package/dist/collection/components/datetime-picker/time-picker/time-picker.js +78 -9
- package/dist/collection/components/divider/divider.css +1 -1
- package/dist/collection/components/divider/divider.js +101 -26
- package/dist/collection/components/dropdown/dropdown.css +1 -1
- package/dist/collection/components/dropdown/dropdown.js +166 -18
- package/dist/collection/components/footer/footer-category/footer-category.css +1 -1
- package/dist/collection/components/footer/footer-category/footer-category.js +23 -4
- package/dist/collection/components/footer/footer-item/footer-item.css +1 -1
- package/dist/collection/components/footer/footer-item/footer-item.js +21 -2
- package/dist/collection/components/footer/footer-legal/footer-legal.css +1 -1
- package/dist/collection/components/footer/footer-legal/footer-legal.js +16 -2
- package/dist/collection/components/footer/footer-logo/footer-logo.css +1 -1
- package/dist/collection/components/footer/footer-logo/footer-logo.js +35 -9
- package/dist/collection/components/footer/footer-social/footer-social.css +1 -1
- package/dist/collection/components/footer/footer-social/footer-social.js +26 -6
- package/dist/collection/components/footer/footer.css +1 -1
- package/dist/collection/components/footer/footer.js +48 -7
- package/dist/collection/components/header/header-context.js +13 -0
- package/dist/collection/components/header/header-function/header-function.css +1 -1
- package/dist/collection/components/header/header-function/header-function.js +51 -8
- package/dist/collection/components/header/header-link/header-link.css +1 -1
- package/dist/collection/components/header/header-link/header-link.js +52 -2
- package/dist/collection/components/header/header-list/header-list.css +1 -1
- package/dist/collection/components/header/header-list/header-list.js +20 -23
- package/dist/collection/components/header/header-logo/header-logo.css +1 -1
- package/dist/collection/components/header/header-logo/header-logo.js +33 -8
- package/dist/collection/components/header/header.css +1 -1
- package/dist/collection/components/header/header.js +110 -24
- package/dist/collection/components/icon/default-icons-cache.js +111 -3
- package/dist/collection/components/icon/icon.css +1 -1
- package/dist/collection/components/icon/icon.js +80 -33
- package/dist/collection/components/input/input.css +1 -1
- package/dist/collection/components/input/input.js +169 -54
- package/dist/collection/components/item/item.css +1 -1
- package/dist/collection/components/item/item.js +134 -51
- package/dist/collection/components/link/link.css +1 -1
- package/dist/collection/components/link/link.js +48 -15
- package/dist/collection/components/list/list.css +1 -1
- package/dist/collection/components/list/list.js +106 -25
- package/dist/collection/components/loading/loading.css +1 -1
- package/dist/collection/components/loading/loading.js +131 -43
- package/dist/collection/components/magic-button/magic-button.css +1 -1
- package/dist/collection/components/magic-button/magic-button.js +51 -9
- package/dist/collection/components/menu/menu-group/menu-group.css +1 -1
- package/dist/collection/components/menu/menu-group/menu-group.js +60 -2
- package/dist/collection/components/menu/menu-header/menu-header.css +1 -1
- package/dist/collection/components/menu/menu-header/menu-header.js +17 -2
- package/dist/collection/components/menu/menu-info/menu-info.css +1 -1
- package/dist/collection/components/menu/menu-info/menu-info.js +15 -2
- package/dist/collection/components/menu/menu-item/menu-item.css +1 -1
- package/dist/collection/components/menu/menu-item/menu-item.js +72 -8
- package/dist/collection/components/menu/menu-link/menu-link.css +1 -1
- package/dist/collection/components/menu/menu-link/menu-link.js +25 -4
- package/dist/collection/components/menu/menu-list/menu-list.css +1 -1
- package/dist/collection/components/menu/menu-list/menu-list.js +64 -29
- package/dist/collection/components/menu/menu-logo/menu-logo.css +1 -1
- package/dist/collection/components/menu/menu-logo/menu-logo.js +15 -2
- package/dist/collection/components/menu/menu-social/menu-social.css +1 -1
- package/dist/collection/components/menu/menu-social/menu-social.js +29 -7
- package/dist/collection/components/menu/menu.css +1 -1
- package/dist/collection/components/menu/menu.js +75 -68
- package/dist/collection/components/menu/menu.utils.js +8 -18
- package/dist/collection/components/message/message.css +1 -1
- package/dist/collection/components/message/message.js +50 -24
- package/dist/collection/components/modal/modal.css +1 -1
- package/dist/collection/components/modal/modal.js +54 -41
- package/dist/collection/components/notification/notification-body/notification-body.css +1 -1
- package/dist/collection/components/notification/notification-body/notification-body.js +13 -4
- package/dist/collection/components/notification/notification-header/notification-header.css +1 -1
- package/dist/collection/components/notification/notification-header/notification-header.js +13 -4
- package/dist/collection/components/notification/notification-item/notification-item.css +1 -1
- package/dist/collection/components/notification/notification-item/notification-item.js +23 -9
- package/dist/collection/components/notification/notification.css +1 -1
- package/dist/collection/components/notification/notification.js +54 -10
- package/dist/collection/components/pagination/pagination.css +1 -1
- package/dist/collection/components/pagination/pagination.js +161 -74
- package/dist/collection/components/radio/radio.css +1 -1
- package/dist/collection/components/radio/radio.js +109 -14
- package/dist/collection/components/radio-group/radio-group.css +1 -1
- package/dist/collection/components/radio-group/radio-group.js +153 -63
- package/dist/collection/components/scrim/scrim.css +1 -1
- package/dist/collection/components/scrim/scrim.js +215 -74
- package/dist/collection/components/scrim/scrim.utils.js +5 -51
- package/dist/collection/components/select/select-input/select-input.css +1 -1
- package/dist/collection/components/select/select-input/select-input.js +58 -5
- package/dist/collection/components/select/select-list/select-list.css +1 -1
- package/dist/collection/components/select/select-list/select-list.js +247 -52
- package/dist/collection/components/select/select-option/select-option.css +1 -1
- package/dist/collection/components/select/select-option/select-option.js +108 -46
- package/dist/collection/components/select/select.css +1 -1
- package/dist/collection/components/select/select.js +323 -118
- package/dist/collection/components/sign-in/sign-in.css +1 -1
- package/dist/collection/components/sign-in/sign-in.js +55 -16
- package/dist/collection/components/skip-link/skip-link-item/skip-link-item-alias.js +112 -3
- 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 +58 -5
- package/dist/collection/components/skip-link/skip-link.css +1 -1
- package/dist/collection/components/skip-link/skip-link.js +78 -39
- package/dist/collection/components/slider/slider.css +1 -1
- package/dist/collection/components/slider/slider.js +530 -132
- package/dist/collection/components/slider/slider.utils.js +178 -0
- package/dist/collection/components/step/step-item/step-item.css +1 -1
- package/dist/collection/components/step/step-item/step-item.js +29 -12
- package/dist/collection/components/step/step.css +1 -1
- package/dist/collection/components/step/step.js +119 -44
- package/dist/collection/components/switch/switch.css +1 -1
- package/dist/collection/components/switch/switch.js +48 -15
- package/dist/collection/components/tab/tab-item/tab-item.css +1 -1
- package/dist/collection/components/tab/tab-item/tab-item.js +49 -14
- package/dist/collection/components/tab/tab.css +1 -1
- package/dist/collection/components/tab/tab.js +89 -46
- package/dist/collection/components/table/table-body/table-body.css +1 -1
- package/dist/collection/components/table/table-body/table-body.js +11 -7
- package/dist/collection/components/table/table-cell/table-cell.css +1 -1
- package/dist/collection/components/table/table-cell/table-cell.js +36 -17
- package/dist/collection/components/table/table-header/table-header.css +1 -1
- package/dist/collection/components/table/table-header/table-header.js +11 -7
- 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 +35 -13
- package/dist/collection/components/table/table-row/table-row.css +1 -1
- package/dist/collection/components/table/table-row/table-row.js +24 -7
- package/dist/collection/components/table/table.css +1 -1
- package/dist/collection/components/table/table.js +107 -31
- package/dist/collection/components/tag/tag.css +1 -1
- package/dist/collection/components/tag/tag.js +86 -36
- package/dist/collection/components/textarea/textarea.css +1 -1
- package/dist/collection/components/textarea/textarea.js +222 -19
- package/dist/collection/components/tooltip/tooltip.css +1 -1
- package/dist/collection/components/tooltip/tooltip.js +134 -45
- package/dist/collection/components/upload/upload.css +1 -1
- package/dist/collection/components/upload/upload.js +135 -33
- package/dist/collection/components/wizard/wizard-panel/wizard-panel.css +1 -1
- package/dist/collection/components/wizard/wizard-panel/wizard-panel.js +54 -3
- package/dist/collection/components/wizard/wizard.css +1 -1
- package/dist/collection/components/wizard/wizard.js +82 -28
- package/dist/collection/pages/scripts/component-controls-core.js +95 -0
- package/dist/collection/pages/scripts/component-controls.js +238 -153
- package/dist/collection/pages/scripts/dev-event-console.js +5 -1
- package/dist/collection/pages/scripts/menu.js +90 -5
- package/dist/collection/pages/scripts/pageLoader.js +1486 -586
- package/dist/collection/pages/scripts/pageloader-preview.js +787 -0
- package/dist/collection/pages/scripts/playground-core.js +173 -0
- package/dist/collection/shared/utils/cssVariables.js +2 -0
- package/dist/collection/shared/utils/date.js +8 -4
- package/dist/collection/shared/utils/floating-ui.js +24 -1
- package/dist/collection/shared/utils/focus.js +31 -0
- package/dist/collection/shared/utils/getRandom.js +16 -1
- package/dist/collection/shared/utils/helpers.js +4 -11
- package/dist/collection/shared/utils/id.js +23 -7
- package/dist/collection/shared/utils/index.js +6 -1
- package/dist/collection/shared/utils/isEmpty.js +5 -3
- package/dist/collection/shared/utils/motion.js +25 -0
- package/dist/collection/shared/utils/ownership.js +113 -0
- package/dist/collection/shared/utils/prop-warning.js +47 -0
- package/dist/collection/shared/utils/props.js +79 -0
- package/dist/collection/shared/utils/swipe.js +11 -1
- package/dist/collection/shared/utils/transition.js +3 -0
- package/dist/collection/shared/utils/virtual-scroll.js +24 -0
- package/dist/components/br-avatar.d.ts +1 -1
- package/dist/components/br-avatar.js +1 -1
- package/dist/components/br-breadcrumb-item.d.ts +1 -1
- package/dist/components/br-breadcrumb-item.js +1 -1
- package/dist/components/br-breadcrumb.d.ts +1 -1
- package/dist/components/br-breadcrumb.js +1 -1
- package/dist/components/br-button.d.ts +1 -1
- package/dist/components/br-button.js +1 -1
- package/dist/components/br-card.d.ts +1 -1
- package/dist/components/br-card.js +1 -1
- package/dist/components/br-carousel-page.d.ts +1 -1
- package/dist/components/br-carousel-page.js +1 -1
- package/dist/components/br-carousel.d.ts +1 -1
- package/dist/components/br-carousel.js +1 -1
- package/dist/components/br-checkbox-group.d.ts +1 -1
- package/dist/components/br-checkbox-group.js +1 -1
- package/dist/components/br-checkbox.d.ts +1 -1
- package/dist/components/br-checkbox.js +1 -1
- package/dist/components/br-checkgroup.d.ts +1 -1
- package/dist/components/br-checkgroup.js +1 -1
- package/dist/components/br-collapse.d.ts +1 -1
- package/dist/components/br-collapse.js +1 -1
- package/dist/components/br-cookiebar-cookie.d.ts +1 -1
- package/dist/components/br-cookiebar-cookie.js +1 -1
- package/dist/components/br-cookiebar-group.d.ts +1 -1
- package/dist/components/br-cookiebar-group.js +1 -1
- package/dist/components/br-cookiebar-header.d.ts +1 -1
- package/dist/components/br-cookiebar-header.js +1 -1
- package/dist/components/br-cookiebar-link.d.ts +1 -1
- package/dist/components/br-cookiebar-link.js +1 -1
- package/dist/components/br-cookiebar-note-group.d.ts +1 -1
- package/dist/components/br-cookiebar-note-group.js +1 -1
- package/dist/components/br-cookiebar-note.d.ts +1 -1
- package/dist/components/br-cookiebar-note.js +1 -1
- package/dist/components/br-cookiebar.d.ts +1 -1
- package/dist/components/br-cookiebar.js +1 -1
- package/dist/components/br-crumb.d.ts +1 -1
- package/dist/components/br-crumb.js +1 -1
- package/dist/components/br-date-picker.d.ts +1 -1
- package/dist/components/br-date-picker.js +1 -1
- package/dist/components/br-datetime-input.d.ts +1 -1
- package/dist/components/br-datetime-input.js +1 -1
- package/dist/components/br-datetime-picker.d.ts +1 -1
- package/dist/components/br-datetime-picker.js +1 -1
- package/dist/components/br-divider.d.ts +1 -1
- package/dist/components/br-divider.js +1 -1
- package/dist/components/br-dropdown.d.ts +1 -1
- package/dist/components/br-dropdown.js +1 -1
- package/dist/components/br-footer-category.d.ts +1 -1
- package/dist/components/br-footer-category.js +1 -1
- package/dist/components/br-footer-item.d.ts +1 -1
- package/dist/components/br-footer-item.js +1 -1
- package/dist/components/br-footer-legal.d.ts +1 -1
- package/dist/components/br-footer-legal.js +1 -1
- package/dist/components/br-footer-logo.d.ts +1 -1
- package/dist/components/br-footer-logo.js +1 -1
- package/dist/components/br-footer-social.d.ts +1 -1
- package/dist/components/br-footer-social.js +1 -1
- package/dist/components/br-footer.d.ts +1 -1
- package/dist/components/br-footer.js +1 -1
- package/dist/components/br-header-function.d.ts +1 -1
- package/dist/components/br-header-function.js +1 -1
- package/dist/components/br-header-link.d.ts +1 -1
- package/dist/components/br-header-link.js +1 -1
- package/dist/components/br-header-list.d.ts +1 -1
- package/dist/components/br-header-list.js +1 -1
- package/dist/components/br-header-logo.d.ts +1 -1
- package/dist/components/br-header-logo.js +1 -1
- package/dist/components/br-header.d.ts +1 -1
- package/dist/components/br-header.js +1 -1
- package/dist/components/br-icon.d.ts +1 -1
- package/dist/components/br-icon.js +1 -1
- package/dist/components/br-input.d.ts +1 -1
- package/dist/components/br-input.js +1 -1
- package/dist/components/br-item.d.ts +1 -1
- package/dist/components/br-item.js +1 -1
- package/dist/components/br-link.d.ts +1 -1
- package/dist/components/br-link.js +1 -1
- package/dist/components/br-list.d.ts +1 -1
- package/dist/components/br-list.js +1 -1
- package/dist/components/br-loading.d.ts +1 -1
- package/dist/components/br-loading.js +1 -1
- package/dist/components/br-magic-button.d.ts +1 -1
- package/dist/components/br-magic-button.js +1 -1
- package/dist/components/br-menu-group.d.ts +1 -1
- package/dist/components/br-menu-group.js +1 -1
- package/dist/components/br-menu-header.d.ts +1 -1
- package/dist/components/br-menu-header.js +1 -1
- package/dist/components/br-menu-info.d.ts +1 -1
- package/dist/components/br-menu-info.js +1 -1
- package/dist/components/br-menu-item.d.ts +1 -1
- package/dist/components/br-menu-item.js +1 -1
- package/dist/components/br-menu-link.d.ts +1 -1
- package/dist/components/br-menu-link.js +1 -1
- package/dist/components/br-menu-list.d.ts +1 -1
- package/dist/components/br-menu-list.js +1 -1
- package/dist/components/br-menu-logo.d.ts +1 -1
- package/dist/components/br-menu-logo.js +1 -1
- package/dist/components/br-menu-social.d.ts +1 -1
- package/dist/components/br-menu-social.js +1 -1
- package/dist/components/br-menu.d.ts +1 -1
- package/dist/components/br-menu.js +1 -1
- package/dist/components/br-message.d.ts +1 -1
- package/dist/components/br-message.js +1 -1
- package/dist/components/br-modal.d.ts +1 -1
- package/dist/components/br-modal.js +1 -1
- package/dist/components/br-notification-body.d.ts +1 -1
- package/dist/components/br-notification-body.js +1 -1
- package/dist/components/br-notification-header.d.ts +1 -1
- package/dist/components/br-notification-header.js +1 -1
- package/dist/components/br-notification-item.d.ts +1 -1
- package/dist/components/br-notification-item.js +1 -1
- package/dist/components/br-notification.d.ts +1 -1
- package/dist/components/br-notification.js +1 -1
- package/dist/components/br-pagination.d.ts +1 -1
- package/dist/components/br-pagination.js +1 -1
- package/dist/components/br-radio-group.d.ts +1 -1
- package/dist/components/br-radio-group.js +1 -1
- package/dist/components/br-radio.d.ts +1 -1
- package/dist/components/br-radio.js +1 -1
- package/dist/components/br-scrim.d.ts +1 -1
- package/dist/components/br-scrim.js +1 -1
- package/dist/components/br-select-input.d.ts +1 -1
- package/dist/components/br-select-input.js +1 -1
- package/dist/components/br-select-list.d.ts +1 -1
- package/dist/components/br-select-list.js +1 -1
- package/dist/components/br-select-option.d.ts +1 -1
- package/dist/components/br-select-option.js +1 -1
- package/dist/components/br-select.d.ts +1 -1
- package/dist/components/br-select.js +1 -1
- package/dist/components/br-sign-in.d.ts +1 -1
- package/dist/components/br-sign-in.js +1 -1
- package/dist/components/br-skip-link-item.d.ts +1 -1
- package/dist/components/br-skip-link-item.js +1 -1
- package/dist/components/br-skip-link.d.ts +1 -1
- package/dist/components/br-skip-link.js +1 -1
- package/dist/components/br-skiplink-item.d.ts +1 -1
- package/dist/components/br-skiplink-item.js +1 -1
- package/dist/components/br-slider.d.ts +1 -1
- package/dist/components/br-slider.js +1 -1
- package/dist/components/br-step-item.d.ts +1 -1
- package/dist/components/br-step-item.js +1 -1
- package/dist/components/br-step.d.ts +1 -1
- package/dist/components/br-step.js +1 -1
- package/dist/components/br-switch.d.ts +1 -1
- package/dist/components/br-switch.js +1 -1
- package/dist/components/br-tab-item.d.ts +1 -1
- package/dist/components/br-tab-item.js +1 -1
- package/dist/components/br-tab.d.ts +1 -1
- package/dist/components/br-tab.js +1 -1
- package/dist/components/br-table-body.d.ts +1 -1
- package/dist/components/br-table-body.js +1 -1
- package/dist/components/br-table-cell.d.ts +1 -1
- package/dist/components/br-table-cell.js +1 -1
- package/dist/components/br-table-header-cell.d.ts +1 -1
- package/dist/components/br-table-header-cell.js +1 -1
- package/dist/components/br-table-header.d.ts +1 -1
- package/dist/components/br-table-header.js +1 -1
- package/dist/components/br-table-row.d.ts +1 -1
- package/dist/components/br-table-row.js +1 -1
- package/dist/components/br-table.d.ts +1 -1
- package/dist/components/br-table.js +1 -1
- package/dist/components/br-tag.d.ts +1 -1
- package/dist/components/br-tag.js +1 -1
- package/dist/components/br-textarea.d.ts +1 -1
- package/dist/components/br-textarea.js +1 -1
- package/dist/components/br-time-picker.d.ts +1 -1
- package/dist/components/br-time-picker.js +1 -1
- package/dist/components/br-tooltip.d.ts +1 -1
- package/dist/components/br-tooltip.js +1 -1
- package/dist/components/br-upload.d.ts +1 -1
- package/dist/components/br-upload.js +1 -1
- package/dist/components/br-wizard-panel.d.ts +1 -1
- package/dist/components/br-wizard-panel.js +1 -1
- package/dist/components/br-wizard.d.ts +1 -1
- package/dist/components/br-wizard.js +1 -1
- package/dist/components/index.d.ts +89 -89
- package/dist/components/index.js +1 -1
- package/dist/components/p-B0o70fWP.js +5 -0
- package/dist/components/p-B96LROz9.js +5 -0
- package/dist/components/p-BDqef5-y.js +5 -0
- package/dist/components/p-BEJGB0Nd.js +5 -0
- package/dist/{webcomponents/p-Dmfk7eEe.js → components/p-BJZC_NuV.js} +1 -1
- package/dist/components/p-BJtdabsr.js +5 -0
- package/dist/components/p-BP5zMCxG.js +5 -0
- package/dist/components/p-BRaphxoP.js +5 -0
- package/dist/components/p-BUzBa9L1.js +5 -0
- package/dist/components/{p-DA5GS53D.js → p-BblZlUp2.js} +1 -1
- package/dist/components/p-Bc4nAk5i.js +5 -0
- package/dist/components/{p-C1yRmdso.js → p-BcqVlof7.js} +1 -1
- package/dist/components/p-BeJxz5TQ.js +5 -0
- package/dist/components/p-Bezou5CQ.js +5 -0
- package/dist/components/p-BrNh9KdF.js +5 -0
- package/dist/components/p-C5th2dxu.js +5 -0
- package/dist/components/p-CDtFCbKp.js +5 -0
- package/dist/components/p-CEdUp183.js +5 -0
- package/dist/components/p-CF7t0uxQ.js +5 -0
- package/dist/components/p-CFzHx6zV.js +5 -0
- package/dist/components/p-CG4em0S6.js +5 -0
- package/dist/components/p-CI4D3-pf.js +5 -0
- package/dist/components/p-CIrVPkVg.js +5 -0
- package/dist/components/p-CNwZRgyL.js +5 -0
- package/dist/components/p-CppRJiyC.js +5 -0
- package/dist/components/p-Cvk1Ggs5.js +5 -0
- package/dist/components/p-D12US39c.js +5 -0
- package/dist/components/p-D9Zo6FlV.js +5 -0
- package/dist/components/p-DGPJkJsj.js +5 -0
- package/dist/components/p-DSHbttu9.js +5 -0
- package/dist/components/p-DTGNra9m.js +5 -0
- package/dist/components/p-DWhzxlCx.js +5 -0
- package/dist/components/p-DX1wAFn4.js +5 -0
- package/dist/components/p-DiLI514I.js +5 -0
- package/dist/components/p-Dma14GVa.js +5 -0
- package/dist/components/p-DpRZ4B0d.js +5 -0
- package/dist/components/p-G35qEQZd.js +5 -0
- package/dist/components/p-Ho_IybzR.js +5 -0
- package/dist/components/p-SvVnvJdC.js +5 -0
- package/dist/components/p-emAWunES.js +5 -0
- package/dist/components/p-fB79wKCm.js +5 -0
- package/dist/components/p-k7p4QJ8a.js +5 -0
- package/dist/esm/br-avatar.entry.js +21 -14
- package/dist/esm/br-breadcrumb-item.entry.js +2 -2
- package/dist/esm/br-breadcrumb.entry.js +49 -22
- package/dist/esm/br-button_2.entry.js +72 -35
- package/dist/esm/br-card.entry.js +6 -5
- package/dist/esm/br-carousel-page.entry.js +3 -3
- package/dist/esm/br-carousel.entry.js +78 -22
- package/dist/esm/br-checkbox-group.entry.js +157 -27
- package/dist/esm/br-checkbox.entry.js +86 -16
- package/dist/esm/br-checkgroup.entry.js +5 -2
- package/dist/esm/br-collapse_2.entry.js +86 -27
- package/dist/esm/br-cookiebar-cookie.entry.js +4 -4
- package/dist/esm/br-cookiebar-group.entry.js +4 -4
- package/dist/esm/br-cookiebar-header.entry.js +4 -4
- package/dist/esm/br-cookiebar-link.entry.js +14 -6
- package/dist/esm/br-cookiebar-note-group.entry.js +3 -5
- package/dist/esm/br-cookiebar-note.entry.js +4 -4
- package/dist/esm/br-cookiebar.entry.js +39 -26
- package/dist/esm/br-crumb.entry.js +2 -2
- package/dist/esm/br-date-picker_3.entry.js +207 -49
- package/dist/esm/br-datetime-picker.entry.js +82 -494
- package/dist/esm/br-divider.entry.js +70 -17
- package/dist/esm/br-dropdown_2.entry.js +305 -123
- package/dist/esm/br-footer-category.entry.js +10 -6
- package/dist/esm/br-footer-item.entry.js +9 -4
- package/dist/esm/br-footer-legal.entry.js +4 -4
- package/dist/esm/br-footer-logo.entry.js +22 -10
- package/dist/esm/br-footer-social.entry.js +14 -6
- package/dist/esm/br-footer.entry.js +16 -7
- package/dist/esm/br-header-function.entry.js +28 -7
- package/dist/esm/br-header-link.entry.js +25 -4
- package/dist/esm/br-header-list.entry.js +7 -18
- package/dist/esm/br-header-logo.entry.js +18 -7
- package/dist/esm/br-header.entry.js +72 -17
- package/dist/esm/br-icon.entry.js +160 -23
- package/dist/esm/br-input.entry.js +132 -41
- package/dist/esm/br-item.entry.js +96 -48
- package/dist/esm/br-link.entry.js +20 -7
- package/dist/esm/br-loading.entry.js +100 -38
- package/dist/esm/br-magic-button.entry.js +26 -9
- package/dist/esm/br-menu-group.entry.js +14 -3
- package/dist/esm/br-menu-header.entry.js +4 -4
- package/dist/esm/br-menu-info.entry.js +4 -4
- package/dist/esm/br-menu-item.entry.js +27 -5
- package/dist/esm/br-menu-link.entry.js +14 -6
- package/dist/esm/br-menu-list.entry.js +23 -27
- package/dist/esm/br-menu-logo.entry.js +4 -4
- package/dist/esm/br-menu-social.entry.js +16 -6
- package/dist/esm/br-menu.entry.js +42 -65
- package/dist/esm/br-modal.entry.js +26 -40
- package/dist/esm/br-notification-body.entry.js +4 -4
- package/dist/esm/br-notification-header.entry.js +4 -4
- package/dist/esm/br-notification-item.entry.js +14 -8
- package/dist/esm/br-notification.entry.js +24 -9
- package/dist/esm/br-pagination.entry.js +119 -87
- package/dist/esm/br-radio-group.entry.js +107 -58
- package/dist/esm/br-radio.entry.js +62 -12
- package/dist/esm/br-scrim.entry.js +161 -67
- package/dist/esm/br-select-input_3.entry.js +283 -90
- package/dist/esm/br-sign-in.entry.js +34 -15
- package/dist/esm/br-skip-link-item.entry.js +39 -2
- package/dist/esm/br-skip-link.entry.js +50 -33
- package/dist/esm/br-skiplink-item.entry.js +22 -6
- package/dist/esm/br-slider.entry.js +519 -97
- package/dist/esm/br-step_2.entry.js +98 -44
- package/dist/esm/br-switch.entry.js +21 -12
- package/dist/esm/br-tab-item.entry.js +38 -14
- package/dist/esm/br-tab.entry.js +57 -44
- package/dist/esm/br-table-body.entry.js +3 -3
- package/dist/esm/br-table-cell.entry.js +30 -13
- package/dist/esm/br-table-header-cell.entry.js +23 -7
- package/dist/esm/br-table-header.entry.js +3 -3
- package/dist/esm/br-table-row.entry.js +17 -3
- package/dist/esm/br-table.entry.js +68 -22
- package/dist/esm/br-tag.entry.js +49 -31
- package/dist/esm/br-textarea.entry.js +118 -13
- package/dist/esm/br-tooltip.entry.js +88 -42
- package/dist/esm/br-upload.entry.js +84 -25
- package/dist/esm/br-wizard-panel.entry.js +16 -3
- package/dist/esm/br-wizard.entry.js +52 -28
- package/dist/esm/{datetime-picker-constants-Bfm58jO6.js → datetime-picker-constants-BtRPYRvA.js} +1 -1
- package/dist/esm/{isValid-DIUZX1qS.js → datetime-picker-props-validation-BeTcUTnE.js} +476 -5
- package/dist/esm/{event-DFN_so7I.js → event-CfuJQ1DY.js} +1 -1
- package/dist/esm/{floating-ui-BavFwMnx.js → floating-ui-CskvaxD5.js} +24 -1
- package/dist/esm/{floating-ui.dom-DIK54tTj.js → floating-ui.dom-D9Zo6FlV.js} +201 -114
- package/dist/esm/{focus-DxZJrIyL.js → focus-CNwZRgyL.js} +20 -1
- package/dist/esm/header-context-BEJGB0Nd.js +15 -0
- package/dist/esm/id-BeJxz5TQ.js +34 -0
- package/dist/esm/{index-Bo-2igoO.js → index-BQPOWxe5.js} +1 -1
- package/dist/esm/{index-C2RBydfd.js → index-Dcn7tRST.js} +68 -752
- package/dist/esm/index.js +2 -2
- package/dist/esm/loader.js +3 -3
- package/dist/esm/motion-DWhzxlCx.js +27 -0
- package/dist/esm/ownership-CDtFCbKp.js +111 -0
- package/dist/esm/prop-warning-BlGV-x0w.js +56 -0
- package/dist/esm/props-D07GjR4_.js +116 -0
- package/dist/esm/{swipe-Dmfk7eEe.js → swipe-BJZC_NuV.js} +11 -1
- package/dist/esm/webcomponents.js +4 -4
- package/dist/hydrate/index.js +7370 -2603
- package/dist/hydrate/index.mjs +7370 -2603
- package/dist/loader/index.d.ts +1 -1
- package/dist/types/components/avatar/avatar.d.ts +34 -4
- package/dist/types/components/breadcrumb/breadcrumb-item/breadcrumb-item.d.ts +14 -2
- package/dist/types/components/breadcrumb/breadcrumb.d.ts +66 -5
- package/dist/types/components/breadcrumb/crumb/crumb.d.ts +13 -1
- package/dist/types/components/button/button.d.ts +45 -9
- package/dist/types/components/card/card.d.ts +31 -3
- package/dist/types/components/carousel/carousel-page/carousel-page.d.ts +10 -3
- package/dist/types/components/carousel/carousel.d.ts +46 -3
- package/dist/types/components/checkbox/checkbox.d.ts +59 -6
- package/dist/types/components/checkbox-group/checkbox-group.d.ts +47 -5
- package/dist/types/components/checkgroup/checkgroup.d.ts +27 -5
- package/dist/types/components/collapse/collapse.d.ts +33 -4
- package/dist/types/components/cookiebar/cookiebar-cookie/cookiebar-cookie.d.ts +16 -3
- package/dist/types/components/cookiebar/cookiebar-group/cookiebar-group.d.ts +15 -6
- package/dist/types/components/cookiebar/cookiebar-header/cookiebar-header.d.ts +14 -8
- package/dist/types/components/cookiebar/cookiebar-link/cookiebar-link.d.ts +16 -5
- package/dist/types/components/cookiebar/cookiebar-note/cookiebar-note.d.ts +13 -3
- package/dist/types/components/cookiebar/cookiebar-note-group/cookiebar-note-group.d.ts +13 -3
- package/dist/types/components/cookiebar/cookiebar.d.ts +35 -10
- package/dist/types/components/datetime-picker/date-picker/date-picker.d.ts +63 -7
- package/dist/types/components/datetime-picker/datetime-input/datetime-input.d.ts +51 -9
- package/dist/types/components/datetime-picker/datetime-picker-props-validation.d.ts +4 -2
- package/dist/types/components/datetime-picker/datetime-picker.d.ts +118 -12
- package/dist/types/components/datetime-picker/time-picker/time-picker.d.ts +38 -4
- package/dist/types/components/divider/divider.d.ts +45 -8
- package/dist/types/components/dropdown/dropdown.d.ts +41 -3
- package/dist/types/components/footer/footer-category/footer-category.d.ts +16 -1
- package/dist/types/components/footer/footer-item/footer-item.d.ts +17 -1
- package/dist/types/components/footer/footer-legal/footer-legal.d.ts +15 -1
- package/dist/types/components/footer/footer-logo/footer-logo.d.ts +21 -2
- package/dist/types/components/footer/footer-social/footer-social.d.ts +20 -3
- package/dist/types/components/footer/footer.d.ts +39 -3
- package/dist/types/components/header/header-context.d.ts +1 -0
- package/dist/types/components/header/header-function/header-function.d.ts +24 -2
- package/dist/types/components/header/header-link/header-link.d.ts +22 -1
- package/dist/types/components/header/header-list/header-list.d.ts +16 -8
- package/dist/types/components/header/header-logo/header-logo.d.ts +20 -1
- package/dist/types/components/header/header.d.ts +45 -7
- package/dist/types/components/icon/icon.d.ts +44 -13
- package/dist/types/components/input/input.d.ts +65 -15
- package/dist/types/components/item/item.d.ts +38 -5
- package/dist/types/components/link/link.d.ts +41 -9
- package/dist/types/components/list/list.d.ts +58 -8
- package/dist/types/components/loading/loading.d.ts +48 -8
- package/dist/types/components/magic-button/magic-button.d.ts +37 -3
- package/dist/types/components/menu/menu-group/menu-group.d.ts +19 -1
- package/dist/types/components/menu/menu-header/menu-header.d.ts +16 -1
- package/dist/types/components/menu/menu-info/menu-info.d.ts +14 -1
- package/dist/types/components/menu/menu-item/menu-item.d.ts +27 -3
- package/dist/types/components/menu/menu-link/menu-link.d.ts +17 -1
- package/dist/types/components/menu/menu-list/menu-list.d.ts +22 -4
- package/dist/types/components/menu/menu-logo/menu-logo.d.ts +14 -1
- package/dist/types/components/menu/menu-social/menu-social.d.ts +21 -2
- package/dist/types/components/menu/menu.d.ts +42 -9
- package/dist/types/components/menu/menu.utils.d.ts +2 -6
- package/dist/types/components/message/message.d.ts +38 -9
- package/dist/types/components/modal/modal.d.ts +34 -4
- package/dist/types/components/notification/notification-body/notification-body.d.ts +12 -3
- package/dist/types/components/notification/notification-header/notification-header.d.ts +12 -3
- package/dist/types/components/notification/notification-item/notification-item.d.ts +15 -3
- package/dist/types/components/notification/notification.d.ts +36 -5
- package/dist/types/components/pagination/pagination.d.ts +56 -20
- package/dist/types/components/radio/radio.d.ts +49 -4
- package/dist/types/components/radio-group/radio-group.d.ts +52 -10
- package/dist/types/components/scrim/scrim.d.ts +72 -11
- package/dist/types/components/scrim/scrim.utils.d.ts +2 -17
- package/dist/types/components/select/select-input/select-input.d.ts +22 -4
- package/dist/types/components/select/select-list/select-list.d.ts +51 -5
- package/dist/types/components/select/select-option/select-option.d.ts +31 -8
- package/dist/types/components/select/select.d.ts +152 -13
- package/dist/types/components/select/select.types.d.ts +5 -0
- package/dist/types/components/sign-in/sign-in.d.ts +30 -3
- package/dist/types/components/skip-link/skip-link-item/skip-link-item-alias.d.ts +15 -2
- package/dist/types/components/skip-link/skip-link-item/skip-link-item.d.ts +22 -1
- package/dist/types/components/skip-link/skip-link.d.ts +37 -3
- package/dist/types/components/slider/slider.d.ts +147 -21
- package/dist/types/components/slider/slider.types.d.ts +7 -2
- package/dist/types/components/slider/slider.utils.d.ts +27 -0
- package/dist/types/components/step/step-item/step-item.d.ts +15 -3
- package/dist/types/components/step/step.d.ts +47 -12
- package/dist/types/components/switch/switch.d.ts +39 -6
- package/dist/types/components/tab/tab-item/tab-item.d.ts +20 -4
- package/dist/types/components/tab/tab.d.ts +41 -11
- package/dist/types/components/table/table-body/table-body.d.ts +10 -6
- package/dist/types/components/table/table-cell/table-cell.d.ts +10 -6
- package/dist/types/components/table/table-header/table-header.d.ts +10 -6
- package/dist/types/components/table/table-header-cell/table-header-cell.d.ts +18 -6
- package/dist/types/components/table/table-row/table-row.d.ts +11 -6
- package/dist/types/components/table/table.d.ts +49 -11
- package/dist/types/components/tag/tag.d.ts +55 -7
- package/dist/types/components/textarea/textarea.d.ts +75 -5
- package/dist/types/components/textarea/textarea.types.d.ts +4 -0
- package/dist/types/components/tooltip/tooltip.d.ts +46 -8
- package/dist/types/components/upload/upload.d.ts +78 -10
- package/dist/types/components/wizard/wizard-panel/wizard-panel.d.ts +20 -2
- package/dist/types/components/wizard/wizard.d.ts +44 -7
- package/dist/types/components.d.ts +5825 -1352
- package/dist/types/shared/utils/floating-ui.d.ts +4 -0
- package/dist/types/shared/utils/focus.d.ts +14 -0
- package/dist/types/shared/utils/getRandom.d.ts +1 -0
- package/dist/types/shared/utils/id.d.ts +1 -1
- package/dist/types/shared/utils/index.d.ts +6 -1
- package/dist/types/shared/utils/motion.d.ts +14 -0
- package/dist/types/shared/utils/ownership.d.ts +33 -0
- package/dist/types/shared/utils/prop-warning.d.ts +7 -0
- package/dist/types/shared/utils/props.d.ts +38 -0
- package/dist/types/shared/utils/swipe.d.ts +5 -0
- package/dist/types/shared/utils/virtual-scroll.d.ts +25 -0
- package/dist/types/stencil-public-runtime.d.ts +12 -0
- package/dist/webcomponents/index.esm.js +1 -1
- package/dist/webcomponents/p-01baafce.entry.js +5 -0
- package/dist/webcomponents/p-01fb0754.entry.js +5 -0
- package/dist/webcomponents/p-030c02f8.entry.js +5 -0
- package/dist/webcomponents/p-03359c92.entry.js +5 -0
- package/dist/webcomponents/p-09770c98.entry.js +5 -0
- package/dist/webcomponents/p-0b9714f1.entry.js +5 -0
- package/dist/webcomponents/p-12aa36a8.entry.js +5 -0
- package/dist/webcomponents/p-130b6e06.entry.js +5 -0
- package/dist/webcomponents/p-144f8c8d.entry.js +5 -0
- package/dist/webcomponents/p-14fe22e2.entry.js +5 -0
- package/dist/webcomponents/p-1ff9210a.entry.js +5 -0
- package/dist/webcomponents/p-2605cdc3.entry.js +5 -0
- package/dist/webcomponents/p-27afaec9.entry.js +5 -0
- package/dist/webcomponents/p-2a50e42d.entry.js +5 -0
- package/dist/webcomponents/p-327f034f.entry.js +5 -0
- package/dist/webcomponents/p-342650b8.entry.js +5 -0
- package/dist/webcomponents/p-38f6a78b.entry.js +5 -0
- package/dist/webcomponents/p-3920fe3a.entry.js +5 -0
- package/dist/webcomponents/p-3ae97345.entry.js +5 -0
- package/dist/webcomponents/p-3cce767c.entry.js +5 -0
- package/dist/webcomponents/p-3df6c5d2.entry.js +5 -0
- package/dist/webcomponents/p-3e287899.entry.js +5 -0
- package/dist/webcomponents/p-3e5580ba.entry.js +5 -0
- package/dist/webcomponents/p-403637dd.entry.js +5 -0
- package/dist/webcomponents/p-435c8ef2.entry.js +5 -0
- package/dist/webcomponents/p-59da5b55.entry.js +5 -0
- package/dist/webcomponents/p-5dd4314c.entry.js +5 -0
- package/dist/webcomponents/p-646af6a5.entry.js +5 -0
- package/dist/webcomponents/p-670e8fec.entry.js +5 -0
- package/dist/webcomponents/p-68046544.entry.js +5 -0
- package/dist/webcomponents/p-68ec76b8.entry.js +5 -0
- package/dist/webcomponents/p-6c0ea20c.entry.js +5 -0
- package/dist/webcomponents/p-6c2fe5e4.entry.js +5 -0
- package/dist/webcomponents/p-707df9b9.entry.js +5 -0
- package/dist/webcomponents/p-72b839fe.entry.js +5 -0
- package/dist/webcomponents/p-73dcc05b.entry.js +5 -0
- package/dist/webcomponents/p-7acf20d3.entry.js +5 -0
- package/dist/webcomponents/p-7b01bddb.entry.js +5 -0
- package/dist/webcomponents/p-7cd38850.entry.js +5 -0
- package/dist/webcomponents/p-82454383.entry.js +5 -0
- package/dist/webcomponents/p-91e959a8.entry.js +5 -0
- package/dist/webcomponents/p-964c01e6.entry.js +5 -0
- package/dist/webcomponents/p-9858e42a.entry.js +5 -0
- package/dist/webcomponents/p-9c4200b0.entry.js +5 -0
- package/dist/webcomponents/p-9d9c87b1.entry.js +5 -0
- package/dist/webcomponents/p-B0PbhaxL.js +5 -0
- package/dist/webcomponents/p-BEJGB0Nd.js +5 -0
- package/dist/{components/p-Dmfk7eEe.js → webcomponents/p-BJZC_NuV.js} +1 -1
- package/dist/webcomponents/p-BJtdabsr.js +5 -0
- package/dist/webcomponents/p-BeJxz5TQ.js +5 -0
- package/dist/webcomponents/p-BlGV-x0w.js +5 -0
- package/dist/webcomponents/{p-Bfm58jO6.js → p-BtRPYRvA.js} +1 -1
- package/dist/webcomponents/p-CDtFCbKp.js +5 -0
- package/dist/webcomponents/p-CNwZRgyL.js +5 -0
- package/dist/webcomponents/{p-DFN_so7I.js → p-CfuJQ1DY.js} +1 -1
- package/dist/webcomponents/p-D9Zo6FlV.js +5 -0
- package/dist/webcomponents/{p-BhMVJQ4-.js → p-DV-iW9Aj.js} +1 -1
- package/dist/webcomponents/p-DWhzxlCx.js +5 -0
- package/dist/webcomponents/p-Dcn7tRST.js +7 -0
- package/dist/webcomponents/p-EbtQZm5s.js +5 -0
- package/dist/webcomponents/p-a0931550.entry.js +5 -0
- package/dist/webcomponents/p-a212fd85.entry.js +5 -0
- package/dist/webcomponents/p-a2e75143.entry.js +5 -0
- package/dist/webcomponents/p-a3bb98c9.entry.js +5 -0
- package/dist/webcomponents/p-a8b5dba0.entry.js +5 -0
- package/dist/webcomponents/p-aa909443.entry.js +5 -0
- package/dist/webcomponents/p-abaf2365.entry.js +5 -0
- package/dist/webcomponents/p-aeb16645.entry.js +5 -0
- package/dist/webcomponents/p-b287c384.entry.js +5 -0
- package/dist/webcomponents/p-b506b0a1.entry.js +5 -0
- package/dist/webcomponents/p-b520c08c.entry.js +5 -0
- package/dist/webcomponents/p-b94c3f84.entry.js +5 -0
- package/dist/webcomponents/p-bda62f90.entry.js +5 -0
- package/dist/webcomponents/p-c201ae16.entry.js +5 -0
- package/dist/webcomponents/p-c7e899a1.entry.js +5 -0
- package/dist/webcomponents/p-c8b7bbab.entry.js +5 -0
- package/dist/webcomponents/p-cbf3e251.entry.js +5 -0
- package/dist/webcomponents/{p-7f7506f0.entry.js → p-cff24492.entry.js} +1 -1
- package/dist/webcomponents/p-d35cf5b4.entry.js +5 -0
- package/dist/webcomponents/p-d45ffe9c.entry.js +5 -0
- package/dist/webcomponents/p-d719a4af.entry.js +5 -0
- package/dist/webcomponents/p-d826c052.entry.js +5 -0
- package/dist/webcomponents/p-da21a60d.entry.js +5 -0
- package/dist/webcomponents/p-de0c7f26.entry.js +5 -0
- package/dist/webcomponents/p-e20188c0.entry.js +5 -0
- package/dist/webcomponents/p-e27882e1.entry.js +5 -0
- package/dist/webcomponents/p-e3de5bb3.entry.js +5 -0
- package/dist/webcomponents/p-e624ff04.entry.js +5 -0
- package/dist/webcomponents/p-ed5af0e4.entry.js +5 -0
- package/dist/webcomponents/p-edc6da0e.entry.js +5 -0
- package/dist/webcomponents/p-f24fcf3d.entry.js +5 -0
- package/dist/webcomponents/p-f52ef0dc.entry.js +5 -0
- package/dist/webcomponents/{p-12286e73.entry.js → p-f558d7b9.entry.js} +1 -1
- package/dist/webcomponents/p-fcab1428.entry.js +5 -0
- package/dist/webcomponents/p-fe1729a7.entry.js +5 -0
- package/dist/webcomponents/webcomponents.esm.js +1 -1
- package/package.json +18 -3
- package/dist/cjs/clamp-Co_hWptd.js +0 -25
- package/dist/cjs/id-CjRFMzf6.js +0 -20
- package/dist/cjs/props-CScmBvKd.js +0 -24
- package/dist/collection/pages/components/cookiebar/index.js +0 -26
- package/dist/collection/pages/components/link/index.js +0 -29
- package/dist/collection/pages/components/pagination/index.js +0 -12
- package/dist/collection/pages/components/slider/index.js +0 -18
- package/dist/components/p-34Jfn-U-.js +0 -5
- package/dist/components/p-6OdfnwnK.js +0 -5
- package/dist/components/p-B7Amgxkp.js +0 -5
- package/dist/components/p-BKuMQJrQ.js +0 -5
- package/dist/components/p-BPJpHGOW.js +0 -5
- package/dist/components/p-Bb-nLtTG.js +0 -5
- package/dist/components/p-BeE7R9nu.js +0 -5
- package/dist/components/p-BkS6ujyf.js +0 -5
- package/dist/components/p-Bo0QYHJO.js +0 -5
- package/dist/components/p-C2i2c_io.js +0 -5
- package/dist/components/p-C7v0lVlX.js +0 -5
- package/dist/components/p-CMBsvswx.js +0 -5
- package/dist/components/p-CRrimdz6.js +0 -5
- package/dist/components/p-CWORw84-.js +0 -5
- package/dist/components/p-CvUMXJCl.js +0 -5
- package/dist/components/p-D6zroLx5.js +0 -5
- package/dist/components/p-DBP6K_aq.js +0 -5
- package/dist/components/p-DCrVo-8T.js +0 -5
- package/dist/components/p-DFUKDNck.js +0 -5
- package/dist/components/p-DHicj0By.js +0 -5
- package/dist/components/p-DIK54tTj.js +0 -5
- package/dist/components/p-DQRSHR-D.js +0 -5
- package/dist/components/p-DRVMm1Py.js +0 -5
- package/dist/components/p-DWPmUV72.js +0 -5
- package/dist/components/p-DXjQyH6s.js +0 -5
- package/dist/components/p-DmCxdB9P.js +0 -5
- package/dist/components/p-Dp0xy_3n.js +0 -5
- package/dist/components/p-DxZJrIyL.js +0 -5
- package/dist/components/p-JAkkThgf.js +0 -5
- package/dist/components/p-Ud-WB0hx.js +0 -5
- package/dist/components/p-fpMNttbg.js +0 -5
- package/dist/components/p-gvnfuTjd.js +0 -5
- package/dist/components/p-qYONSNcf.js +0 -5
- package/dist/components/p-qhhHGJY1.js +0 -5
- package/dist/components/p-ttI0nvv_.js +0 -5
- package/dist/components/p-ukNmfGNP.js +0 -5
- package/dist/components/p-xa8e1kSW.js +0 -5
- package/dist/esm/clamp-gvnfuTjd.js +0 -23
- package/dist/esm/id-BkS6ujyf.js +0 -18
- package/dist/esm/props-DRVMm1Py.js +0 -22
- package/dist/webcomponents/p-0196804a.entry.js +0 -5
- package/dist/webcomponents/p-0410186a.entry.js +0 -5
- package/dist/webcomponents/p-0415ef22.entry.js +0 -5
- package/dist/webcomponents/p-0777c7b1.entry.js +0 -5
- package/dist/webcomponents/p-0caa4d12.entry.js +0 -5
- package/dist/webcomponents/p-0d4f718d.entry.js +0 -5
- package/dist/webcomponents/p-0e84c9e8.entry.js +0 -5
- package/dist/webcomponents/p-147ac8d3.entry.js +0 -5
- package/dist/webcomponents/p-1580beee.entry.js +0 -5
- package/dist/webcomponents/p-18ee6175.entry.js +0 -5
- package/dist/webcomponents/p-1bca4499.entry.js +0 -5
- package/dist/webcomponents/p-1c303a4e.entry.js +0 -5
- package/dist/webcomponents/p-1d6b0b6f.entry.js +0 -5
- package/dist/webcomponents/p-1d8cb8fd.entry.js +0 -5
- package/dist/webcomponents/p-224daaac.entry.js +0 -5
- package/dist/webcomponents/p-28426d2a.entry.js +0 -5
- package/dist/webcomponents/p-2abd2da0.entry.js +0 -5
- package/dist/webcomponents/p-2fdc51ae.entry.js +0 -5
- package/dist/webcomponents/p-30c428b6.entry.js +0 -5
- package/dist/webcomponents/p-36bbea4e.entry.js +0 -5
- package/dist/webcomponents/p-3907ebfa.entry.js +0 -5
- package/dist/webcomponents/p-39a16f9d.entry.js +0 -5
- package/dist/webcomponents/p-3ebbd2f5.entry.js +0 -5
- package/dist/webcomponents/p-3ef7eac8.entry.js +0 -5
- package/dist/webcomponents/p-45356e9a.entry.js +0 -5
- package/dist/webcomponents/p-46513db4.entry.js +0 -5
- package/dist/webcomponents/p-4c13221a.entry.js +0 -5
- package/dist/webcomponents/p-51ce2c31.entry.js +0 -5
- package/dist/webcomponents/p-52df61cb.entry.js +0 -5
- package/dist/webcomponents/p-569134cf.entry.js +0 -5
- package/dist/webcomponents/p-5ce7db4a.entry.js +0 -5
- package/dist/webcomponents/p-5f373708.entry.js +0 -5
- package/dist/webcomponents/p-5f6afb79.entry.js +0 -5
- package/dist/webcomponents/p-5fc7ba4c.entry.js +0 -5
- package/dist/webcomponents/p-66006312.entry.js +0 -5
- package/dist/webcomponents/p-66b13fd9.entry.js +0 -5
- package/dist/webcomponents/p-6OdfnwnK.js +0 -5
- package/dist/webcomponents/p-750799b7.entry.js +0 -5
- package/dist/webcomponents/p-756ff2ad.entry.js +0 -5
- package/dist/webcomponents/p-765bfe27.entry.js +0 -5
- package/dist/webcomponents/p-7ab96c11.entry.js +0 -5
- package/dist/webcomponents/p-7c2ff8b4.entry.js +0 -5
- package/dist/webcomponents/p-7fb03a49.entry.js +0 -5
- package/dist/webcomponents/p-82200563.entry.js +0 -5
- package/dist/webcomponents/p-83ff4579.entry.js +0 -5
- package/dist/webcomponents/p-85f8063b.entry.js +0 -5
- package/dist/webcomponents/p-8b558233.entry.js +0 -5
- package/dist/webcomponents/p-8e6c2767.entry.js +0 -5
- package/dist/webcomponents/p-8e819355.entry.js +0 -5
- package/dist/webcomponents/p-92a9b9c4.entry.js +0 -5
- package/dist/webcomponents/p-966ad32f.entry.js +0 -5
- package/dist/webcomponents/p-9679d230.entry.js +0 -5
- package/dist/webcomponents/p-96dd663b.entry.js +0 -5
- package/dist/webcomponents/p-98843fa3.entry.js +0 -5
- package/dist/webcomponents/p-9a375eff.entry.js +0 -5
- package/dist/webcomponents/p-9b358cff.entry.js +0 -5
- package/dist/webcomponents/p-9f7558c7.entry.js +0 -5
- package/dist/webcomponents/p-BkS6ujyf.js +0 -5
- package/dist/webcomponents/p-C2RBydfd.js +0 -6
- package/dist/webcomponents/p-CO5cOQQU.js +0 -5
- package/dist/webcomponents/p-DIK54tTj.js +0 -5
- package/dist/webcomponents/p-DRVMm1Py.js +0 -5
- package/dist/webcomponents/p-DxZJrIyL.js +0 -5
- package/dist/webcomponents/p-a382e115.entry.js +0 -5
- package/dist/webcomponents/p-a4ae72e3.entry.js +0 -5
- package/dist/webcomponents/p-a994c190.entry.js +0 -5
- package/dist/webcomponents/p-a9ff7c25.entry.js +0 -5
- package/dist/webcomponents/p-c0b0f531.entry.js +0 -5
- package/dist/webcomponents/p-c211af17.entry.js +0 -5
- package/dist/webcomponents/p-c492d926.entry.js +0 -5
- package/dist/webcomponents/p-c4cfe599.entry.js +0 -5
- package/dist/webcomponents/p-c846e784.entry.js +0 -5
- package/dist/webcomponents/p-c949d993.entry.js +0 -5
- package/dist/webcomponents/p-d1e899cd.entry.js +0 -5
- package/dist/webcomponents/p-d38d82cc.entry.js +0 -5
- package/dist/webcomponents/p-e0ce536a.entry.js +0 -5
- package/dist/webcomponents/p-e1331288.entry.js +0 -5
- package/dist/webcomponents/p-e360a463.entry.js +0 -5
- package/dist/webcomponents/p-f078f972.entry.js +0 -5
- package/dist/webcomponents/p-f26038e2.entry.js +0 -5
- package/dist/webcomponents/p-f303f6b3.entry.js +0 -5
- package/dist/webcomponents/p-f6318e94.entry.js +0 -5
- package/dist/webcomponents/p-f85ee01c.entry.js +0 -5
- package/dist/webcomponents/p-fcd4ae48.entry.js +0 -5
- package/dist/webcomponents/p-ffe0241e.entry.js +0 -5
- package/dist/webcomponents/p-gvnfuTjd.js +0 -5
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
"tags": [
|
|
5
5
|
{
|
|
6
6
|
"name": "br-avatar",
|
|
7
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
7
|
+
"description": "O componente `br-avatar` é a representação visual compacta de um usuário, pessoa ou entidade no GovBR-DS. Ele exibe fotos de perfil, ícones institucionais ou iniciais textuais com suporte a múltiplos tamanhos, temas e indicador de status contextual.\n\n### Para que serve\n\n- **Identificação visual de perfil:** Exibe a foto do usuário logado em barras de cabeçalho, cartões de perfil, listas de contatos ou comentários.\n- **Resiliência e fallback visual:** Caso a imagem informada falhe ao carregar (`src`), o componente passa suavemente para o ícone padrão ou texto alternativo sem quebrar o leiaute.\n- **Indicador de status integrado:** Informa estados operacionais (online, offline, ocupado, ausente) através do slot dedicado `status`.\n- **Acessibilidade:** Garante descrição textual adequada através da propriedade `alt`, essencial para pessoas que utilizam leitores de tela.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - For necessário identificar a pessoa autenticada no cabeçalho ou menu da aplicação.\n - Exibir listas de contatos, autores de publicações, membros de equipe ou participantes de um fluxo colaborativo.\n - Indicar o status de disponibilidade de um usuário ou atendente no sistema.\n- **Evite e prefira outro componente quando:**\n - For necessária uma exibição de imagem ilustrativa ampla ou promocional (prefira tags HTML `<img>` semânticas ou contêineres ilustrativos do design).\n - O elemento requerer interações ricas com múltiplas ações (prefira compor com `br-card`).\n\n### Estrutura e Slots\n\nO `br-avatar` é um componente autônomo e direto:\n- `default`: Conteúdo interno livre (quando não for utilizada imagem via prop `src`), permitindo inserir ícones como `br-icon` ou texto de iniciais.\n- `status`: Slot posicionado para inserção de um indicador visual de status sobreposto ao avatar.\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/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",
|
|
11
|
-
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura)
|
|
11
|
+
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura).\n\nValores inválidos usam `medium`.",
|
|
12
12
|
"values": [{ "name": "AvatarDensity" }]
|
|
13
13
|
},
|
|
14
14
|
{
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
},
|
|
74
74
|
{
|
|
75
75
|
"name": "status-position",
|
|
76
|
-
"description": "Posição do indicador de status sobre o avatar.",
|
|
76
|
+
"description": "Posição do indicador de status sobre o avatar. Aceita `top-right`, `bottom-right`, `top-left` ou `bottom-left`.\nValores inválidos usam `top-right`.",
|
|
77
77
|
"values": [{ "name": "AvatarStatusPosition" }]
|
|
78
78
|
}
|
|
79
79
|
],
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
},
|
|
82
82
|
{
|
|
83
83
|
"name": "br-breadcrumb",
|
|
84
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
84
|
+
"description": "O componente `br-breadcrumb` é o controle de navegação estrutural do GovBR-DS, desenvolvido para exibir o caminho hierárquico até a página atual e permitir que a pessoa usuária retorne facilmente a níveis anteriores da aplicação.\n\n### Para que serve\n\n- **Localização contextual:** Informa em qual nível da arquitetura de informação o usuário se encontra dentro do portal ou sistema.\n- **Navegação de retorno:** Oferece atalhos diretos para páginas ancestrais sem a necessidade de recorrer repetidamente ao botão \"Voltar\" do navegador.\n- **Acessibilidade estruturada WAI-ARIA:** Utiliza a semântica nativa de `<nav aria-label=\"Breadcrumb\">`, identifica a página atual com `aria-current=\"page\"` e gera separadores visuais acessíveis.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - A aplicação possuir estrutura hierárquica com dois ou mais níveis de profundidade (ex.: Início > Serviços > Cidadão > Solicitar documento).\n- **Evite e prefira outro componente quando:**\n - A aplicação possuir navegação plana (flat) de nível único sem hierarquia.\n - O fluxo for linear com etapas progressivas de um formulário (prefira `br-step` ou `br-wizard`).\n\n### Composição e Subcomponentes\n\nO ecossistema do Breadcrumb é composto pelo orquestrador e seus itens:\n\n| Subcomponente | Papel | Regra de uso |\n| --- | --- | --- |\n| `br-breadcrumb` | **Orquestrador principal.** Gerencia a trilha de navegação, insere separadores visuais e controla acessibilidade. | Deve ser o contêiner raiz declarado no template da página. |\n| `br-breadcrumb-item` | **Item declarativo canônico.** Representa cada nível do caminho hierárquico. | Declarado dentro do slot padrão do `br-breadcrumb`. |\n| `br-crumb` | **Item legado de compatibilidade.** Equivalente ao `br-breadcrumb-item`. | Mantido para compatibilidade; prefira `br-breadcrumb-item` em novos códigos. |\n\n### Como os subcomponentes se relacionam\n\nO `br-breadcrumb` atua como container pai que monitora os itens declarados em seu slot padrão:\n1. **Identificação da página atual:** O último item da lista é automaticamente identificado como o destino atual, recebendo destaque visual e `aria-current=\"page\"` sem link ativo.\n2. **Separação visual padronizada:** O componente pai insere e padroniza os ícones separadores entre os níveis sem poluir a árvore do leitor de tela.\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/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",
|
|
@@ -98,14 +98,19 @@
|
|
|
98
98
|
"description": "URL canônica da página inicial. Quando informada, tem precedência sobre `homeUrl`.",
|
|
99
99
|
"values": []
|
|
100
100
|
},
|
|
101
|
+
{
|
|
102
|
+
"name": "truncate-after",
|
|
103
|
+
"description": "Quantidade máxima de crumbs exibidos antes de ativar o modo truncado.\nQuando omitida, o truncamento continua sendo decidido apenas pelo espaço disponível.\nValores inválidos são ignorados.",
|
|
104
|
+
"values": []
|
|
105
|
+
},
|
|
101
106
|
{
|
|
102
107
|
"name": "crumbs",
|
|
103
|
-
"description": "
|
|
108
|
+
"description": "Fornece os nomes e links do breadcrumb.\nUse uma string JSON no atributo HTML ou um array de `BreadcrumbItem` por property binding.\nCada item deve ter `label` string e pode ter `href`, `target`, `home` e `active`.\nItens inválidos são ignorados; se nenhum item válido restar, usa `defaultCrumbs` e avisa no console.",
|
|
104
109
|
"values": [{ "name": "BreadcrumbItem[]" }]
|
|
105
110
|
},
|
|
106
111
|
{
|
|
107
112
|
"name": "navigation-mode",
|
|
108
|
-
"description": "Controla como os links do breadcrumb integram a navegação mantendo `href` real nos itens navegáveis.\n- `native` (padrão): preserva o comportamento do navegador, conforme HTML/W3C.\n- `event`: emite `brNavigate`; se o evento for cancelado, bloqueia a navegação nativa para a SPA assumir.\nCliques com modificadores, botão do meio ou `target` diferente de `_self` permanecem nativos
|
|
113
|
+
"description": "Controla como os links do breadcrumb integram a navegação mantendo `href` real nos itens navegáveis.\n- `native` (padrão): preserva o comportamento do navegador, conforme HTML/W3C.\n- `event`: emite `brNavigate`; se o evento for cancelado, bloqueia a navegação nativa para a SPA assumir.\nCliques com modificadores, botão do meio ou `target` diferente de `_self` permanecem nativos.\nValores inválidos usam `native`.",
|
|
109
114
|
"values": [{ "name": "BrNavigationMode" }]
|
|
110
115
|
}
|
|
111
116
|
],
|
|
@@ -113,7 +118,7 @@
|
|
|
113
118
|
},
|
|
114
119
|
{
|
|
115
120
|
"name": "br-breadcrumb-item",
|
|
116
|
-
"description": "
|
|
121
|
+
"description": "Subcomponente declarativo canônico de `br-breadcrumb`, utilizado para representar cada nível individual dentro da trilha hierárquica de navegação.\n\n### Papel na composição\n\n- Define o rótulo legível e o destino de navegação (`href`) de um nível hierárquico específico.\n- Suporta a propriedade `home` para renderizar o ícone institucional da página inicial no primeiro item da trilha.\n\n### Regra de uso e relacionamento\n\nDeve ser declarado exclusivamente dentro do slot padrão do orquestrador `br-breadcrumb`. Ele não deve ser utilizado isoladamente fora da trilha de breadcrumb. O componente pai monitora os itens para aplicar automaticamente os separadores visuais e demarcar o último item como a página atual.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/breadcrumb?tab=designer).\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`.",
|
|
117
122
|
"attributes": [
|
|
118
123
|
{ "name": "label", "description": "Rótulo do item.", "values": [] },
|
|
119
124
|
{ "name": "href", "description": "URL do item.", "values": [] },
|
|
@@ -137,7 +142,7 @@
|
|
|
137
142
|
},
|
|
138
143
|
{
|
|
139
144
|
"name": "br-crumb",
|
|
140
|
-
"description": "@deprecated Use `br-breadcrumb-item`.\n\
|
|
145
|
+
"description": "@deprecated Use `br-breadcrumb-item`.\n\nSubcomponente legado de `br-breadcrumb`, mantido para compatibilidade com implementações existentes que utilizavam a nomenclatura antiga.\n\n### Papel na composição\n\n- Equivalente funcional do `br-breadcrumb-item`, representando um nível na trilha de navegação.\n\n### Regra de uso e relacionamento\n\nDeclarado dentro do slot padrão do `br-breadcrumb`. Em novos desenvolvimentos e manutenções ativas, **recomenda-se utilizar a tag canônica `br-breadcrumb-item`**.\n\nPara a documentação canônica completa, consulte a página do [br-breadcrumb](/docs/components/breadcrumb).\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.",
|
|
141
146
|
"attributes": [
|
|
142
147
|
{
|
|
143
148
|
"name": "label",
|
|
@@ -169,11 +174,11 @@
|
|
|
169
174
|
},
|
|
170
175
|
{
|
|
171
176
|
"name": "br-button",
|
|
172
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
177
|
+
"description": "O componente `br-button` é o controle fundamental de ação e acionamento do GovBR-DS. Desenvolvido para permitir que pessoas usuárias executem comandos, confirmem intenções e submetam ou redefinam formulários, ele oferece retorno visual imediato e conformidade com diretrizes de acessibilidade WAI-ARIA.\n\n### Para que serve\n\n- **Disparo de ações do sistema:** Executa comandos locais ou assíncronos na interface (ex.: salvar dados, abrir modais, aplicar filtros).\n- **Integração com formulários:** Suporta os tipos nativos de botão (`type=\"button\"`, `type=\"submit\"` e `type=\"reset\"`), integrando-se ao ciclo de submissão do formulário HTML.\n- **Variantes e hierarquia visual:** Oferece diferentes estilos visuais (primário, secundário), densidades e opções de exibição (com ícone, somente ícone, circular e em bloco).\n- **Feedback de carregamento e estado:** Informa estados de processamento com o modo `loading` e desativação acessível com `disabled`.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - A pessoa usuária precisar executar uma ação imediata ou submeter dados dentro do fluxo atual da página.\n - For necessário acionar componentes flutuantes (como abrir `br-modal`, alternar `br-collapse` ou expandir `br-dropdown`).\n- **Evite e prefira outro componente quando:**\n - A ação tiver como objetivo navegar para outra página ou alterar a URL do navegador (prefira `br-link` ou um elemento `<a>` nativo).\n - O controle representar uma escolha de valor fixo entre poucas opções mutuamente exclusivas (prefira `br-radio` ou `br-radio-group`).\n\n### Estrutura e Slots\n\nO `br-button` é um controle direto e autônomo:\n- `default`: Slot para inserção do texto do rótulo, ícones de apoio (`br-icon`) ou composições personalizadas.\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/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).",
|
|
173
178
|
"attributes": [
|
|
174
179
|
{
|
|
175
180
|
"name": "color-mode",
|
|
176
|
-
"description": "Define se o botão usará um esquema de cores escuro.",
|
|
181
|
+
"description": "Define se o botão usará um esquema de cores escuro. Valores inválidos são ignorados.",
|
|
177
182
|
"values": [{ "name": "ButtonColorMode" }]
|
|
178
183
|
},
|
|
179
184
|
{
|
|
@@ -183,7 +188,7 @@
|
|
|
183
188
|
},
|
|
184
189
|
{
|
|
185
190
|
"name": "density",
|
|
186
|
-
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura)
|
|
191
|
+
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura).\n\nValores inválidos usam `medium`.",
|
|
187
192
|
"values": [{ "name": "ButtonDensity" }]
|
|
188
193
|
},
|
|
189
194
|
{
|
|
@@ -193,7 +198,7 @@
|
|
|
193
198
|
},
|
|
194
199
|
{
|
|
195
200
|
"name": "emphasis",
|
|
196
|
-
"description": "Define a ênfase do botão, alterando sua aparência para criar hierarquia visual e destacar ações importantes.",
|
|
201
|
+
"description": "Define a ênfase do botão, alterando sua aparência para criar hierarquia visual e destacar ações importantes. Valores inválidos são ignorados.",
|
|
197
202
|
"values": [{ "name": "ButtonEmphasis" }]
|
|
198
203
|
},
|
|
199
204
|
{
|
|
@@ -218,12 +223,12 @@
|
|
|
218
223
|
},
|
|
219
224
|
{
|
|
220
225
|
"name": "shape",
|
|
221
|
-
"description": "Define o formato do botão.",
|
|
226
|
+
"description": "Define o formato do botão. Valores inválidos são ignorados.",
|
|
222
227
|
"values": [{ "name": "ButtonShape" }]
|
|
223
228
|
},
|
|
224
229
|
{
|
|
225
230
|
"name": "type",
|
|
226
|
-
"description": "Define o tipo de botão, especificando seu comportamento padrão.",
|
|
231
|
+
"description": "Define o tipo de botão, especificando seu comportamento padrão. Valores inválidos usam `button`.",
|
|
227
232
|
"values": [{ "name": "ButtonType" }]
|
|
228
233
|
},
|
|
229
234
|
{
|
|
@@ -233,7 +238,7 @@
|
|
|
233
238
|
},
|
|
234
239
|
{
|
|
235
240
|
"name": "custom-tab-index",
|
|
236
|
-
"description": "Define o índice de tabulação do botão.\nÚtil para remover o botão da sequência de tabulação (tabindex=\"-1\") quando ele é puramente decorativo ou o foco é gerenciado por um componente pai.",
|
|
241
|
+
"description": "Define o índice de tabulação do botão.\nÚtil para remover o botão da sequência de tabulação (tabindex=\"-1\") quando ele é puramente decorativo ou o foco é gerenciado por um componente pai.\nAceita inteiros maiores ou iguais a -1; valores inválidos são ignorados.",
|
|
237
242
|
"values": []
|
|
238
243
|
},
|
|
239
244
|
{
|
|
@@ -258,7 +263,7 @@
|
|
|
258
263
|
},
|
|
259
264
|
{
|
|
260
265
|
"name": "aria-haspopup",
|
|
261
|
-
"description": "Indica que o botão abre um menu, listbox, tree, grid ou dialog.\nOs valores permitidos são: 'true', 'menu', 'listbox', 'tree', 'grid' ou 'dialog'.",
|
|
266
|
+
"description": "Indica que o botão abre um menu, listbox, tree, grid ou dialog.\nOs valores permitidos são: 'true', 'menu', 'listbox', 'tree', 'grid' ou 'dialog'.\nValores inválidos são removidos do elemento interno.",
|
|
262
267
|
"values": [{ "name": "AriaHasPopup" }]
|
|
263
268
|
}
|
|
264
269
|
],
|
|
@@ -266,7 +271,7 @@
|
|
|
266
271
|
},
|
|
267
272
|
{
|
|
268
273
|
"name": "br-card",
|
|
269
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
274
|
+
"description": "O componente `br-card` é um contêiner estruturado e flexível do GovBR-DS, projetado para agrupar informações, mídias e ações correlacionadas em uma superfície visual coesa e destacada.\n\n### Para que serve\n\n- **Agrupamento de informações modulares:** Organiza conteúdos heterogêneos de um mesmo assunto (como resumos de serviços, cartões de notícias, painéis de métricas ou resultados de busca).\n- **Segmentação visual limpa:** Proporciona hierarquia e legibilidade através de bordas, elevações e espaçamentos padronizados pelos tokens do design system.\n- **Suporte a interação opcional:** Pode atuar como elemento estático de leitura ou como contêiner interativo/navegável.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Desejar exibir blocos independentes de conteúdo em grades (grid) ou listas de cartões.\n - O conteúdo for composto por uma combinação de elementos (imagem/vídeo, cabeçalho, texto explicativo e botões de ação).\n- **Evite e prefira outro componente quando:**\n - Os dados forem puramente tabulares ou comparativos entre múltiplos itens homogêneos (prefira `br-table`).\n - Houver apenas uma sequência linear simples de textos ou links (prefira `br-list`).\n\n### Estrutura e Slots\n\nO `br-card` oferece estrutura modular com slots nomeados ou composição livre:\n- `media`: Slot superior para exibição de imagens, ilustrações ou mídia de destaque.\n- `header`: Slot para título, subtítulo ou cabeçalho informativo do card.\n- `content`: Slot principal para o corpo de texto e conteúdo descritivo.\n- `footer`: Slot inferior para botões de ação (`br-button`), links complementares ou metadados.\n- `default`: Slot livre para renderização direta quando não for necessária a divisão pré-definida em seções.\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/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é.",
|
|
270
275
|
"attributes": [
|
|
271
276
|
{
|
|
272
277
|
"name": "custom-id",
|
|
@@ -293,7 +298,7 @@
|
|
|
293
298
|
},
|
|
294
299
|
{
|
|
295
300
|
"name": "br-carousel",
|
|
296
|
-
"description": "
|
|
301
|
+
"description": "O componente `br-carousel` é o contêiner de apresentação rotativa e sequencial de conteúdos do GovBR-DS, desenvolvido para exibir múltiplos slides em um espaço delimitado onde apenas um item (ou grupo ativo) fica em foco por vez.\n\n### Para que serve\n\n- **Apresentação rotativa de destaque:** Ideal para galerias visuais, banners informativos, campanhas institucionais e passos ilustrativos.\n- **Navegação assistida:** Fornece controles de avanço e retrocesso (setas), barra de indicadores de página/slides (bolinhas de paginação) e suporte a gestos de toque (swipe) em dispositivos móveis.\n- **Reprodução automática controlável:** Suporta transição automática temporizada com botão obrigatório de pausa/reprodução para conformidade com diretrizes de acessibilidade (WCAG).\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Houver um conjunto de imagens, avisos ou destaques que compartilham o mesmo nível de relevância visual.\n - O espaço vertical da página for restrito e comportar a rotação sequencial de conteúdos.\n- **Evite e prefira outro componente quando:**\n - Todas as informações forem cruciais para a tarefa do usuário e precisarem ficar simultaneamente visíveis (prefira uma grade com `br-card`).\n - O fluxo representar preenchimento obrigatório de formulário por etapas (prefira `br-wizard` ou `br-step`).\n\n### Composição e Subcomponentes\n\nO ecossistema do Carousel é composto por:\n\n| Subcomponente | Papel | Regra de uso |\n| --- | --- | --- |\n| `br-carousel` | **Orquestrador principal.** Gerencia a rotação, temporizador, botões de paginação, navegação por teclado e gestos. | Contêiner raiz obrigatório declarado na página. |\n| `br-carousel-page` | **Slide individual.** Encapsula o conteúdo visual ou textual de cada página do carrossel. | Declarado dentro do slot padrão do `br-carousel`. |\n\n### Como os subcomponentes se relacionam\n\nO `br-carousel` projeta internamente os controles de navegação e gerencia os elementos `br-carousel-page` declarados em seu interior:\n1. O componente pai monitora os slides filhos, calcula o total de páginas e gera dinamicamente os botões indicadores.\n2. Apenas a página correspondente ao índice ativo é exibida e anunciada para leitores de tela com atributos `aria-roledescription=\"slide\"`.\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/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 canônico emitido quando o slide ativo muda.\n- **brDidAutoPlayStart** - Emitido quando a reprodução automática é iniciada ou retomada.\n- **brCarouselAutoplayStart** - Evento canônico emitido quando a reprodução automática começa.\n- **brDidAutoPlayPause** - Emitido quando a reprodução automática é pausada.\n- **brCarouselAutoplayPause** - Evento canônico 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`.",
|
|
297
302
|
"attributes": [
|
|
298
303
|
{
|
|
299
304
|
"name": "custom-id",
|
|
@@ -342,7 +347,7 @@
|
|
|
342
347
|
},
|
|
343
348
|
{
|
|
344
349
|
"name": "interval",
|
|
345
|
-
"description": "Intervalo em milissegundos entre cada avanço automático.\nSó tem efeito quando `autoPlay=true`.",
|
|
350
|
+
"description": "Intervalo em milissegundos entre cada avanço automático.\nDeve ser um inteiro maior que 0; valores inválidos usam `5000`.\nSó tem efeito quando `autoPlay=true`.",
|
|
346
351
|
"values": []
|
|
347
352
|
},
|
|
348
353
|
{
|
|
@@ -385,7 +390,7 @@
|
|
|
385
390
|
},
|
|
386
391
|
{
|
|
387
392
|
"name": "br-carousel-page",
|
|
388
|
-
"description": "
|
|
393
|
+
"description": "Subcomponente especializado de `br-carousel`, responsável por encapsular exatamente um slide ou página individual dentro da sequência de apresentação.\n\n### Papel na composição\n\n- Contém a mídia visual (imagem, ilustração ou vídeo), textos informativos e botões de ação associados àquele slide específico.\n- Recebe as classes e propriedades de visibilidade ativa gerenciadas pelo carrossel pai.\n\n### Regra de uso e relacionamento\n\nDeve ser instanciado exclusivamente dentro do slot padrão do orquestrador `br-carousel`. O componente pai coordena as transições de deslize, calcula o índice do slide e gerencia a acessibilidade. Não deve ser usado como elemento autônomo fora de um carrossel.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/carousel?tab=designer).\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.",
|
|
389
394
|
"attributes": [
|
|
390
395
|
{
|
|
391
396
|
"name": "custom-id",
|
|
@@ -402,7 +407,7 @@
|
|
|
402
407
|
},
|
|
403
408
|
{
|
|
404
409
|
"name": "br-checkbox",
|
|
405
|
-
"description": "
|
|
410
|
+
"description": "O componente `br-checkbox` é o controle de formulário oficial do GovBR-DS para seleção binária independente (marcado ou desmarcado) ou intermediária (indeterminada). Compatível com as diretrizes WAI-ARIA para checkboxes, ele integra-se nativamente a formulários HTML via `formAssociated`.\n\n### Para que serve\n\n- **Seleção independente múltipla:** Permite que a pessoa usuária escolha qualquer quantidade de opções (zero, uma ou várias) de uma lista de alternativas independentes.\n- **Confirmação e aceite binário:** Utilizado para termos de uso, declarações de concordância e confirmações obrigatórias.\n- **Estado indeterminado:** Suporta a propriedade `indeterminate`, essencial para checkboxes mestres em listas hierárquicas (indicando que parte dos itens filhos está marcada).\n- **Validação e formulários:** Comunica valor, estado de validação e mensagens contextuais de erro (`feedback`) diretamente com a API nativa de formulários HTML (`ElementInternals`).\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Houver uma lista de opções onde a seleção de uma alternativa não anula nem depende das demais.\n - O usuário precisar confirmar explicitamente uma condição única (ex.: \"Li e concordo com os termos\").\n - For necessário criar controle de seleção em lote (\"Selecionar todos\").\n- **Evite e prefira outro componente quando:**\n - As opções forem mutuamente exclusivas (apenas uma pode ser escolhida): prefira `br-radio` ou `br-radio-group`.\n - A ação ativar ou desativar instantaneamente um recurso sem exigir submissão de formulário: prefira `br-switch`.\n - Houver muitas opções (mais de 7) em espaço reduzido: prefira `br-select` múltiplo.\n\n### Estrutura e Slots\n\nO `br-checkbox` é um controle autônomo com slots de suporte:\n- `default`: Slot para o texto do rótulo associado ao checkbox (alternativa à propriedade `label`).\n- `feedback`: Slot para exibição de mensagens de validação e alertas contextuais (como `br-message`).\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/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.",
|
|
406
411
|
"attributes": [
|
|
407
412
|
{
|
|
408
413
|
"name": "indeterminate",
|
|
@@ -431,7 +436,7 @@
|
|
|
431
436
|
},
|
|
432
437
|
{
|
|
433
438
|
"name": "validator",
|
|
434
|
-
"description": "Regra síncrona ou assíncrona aplicada ao estado booleano do checkbox.",
|
|
439
|
+
"description": "Regra síncrona ou assíncrona aplicada ao estado booleano do checkbox.\nRetorne uma mensagem para invalidar ou `null` para aceitar o valor.",
|
|
435
440
|
"values": [{ "name": "CheckboxValidator" }]
|
|
436
441
|
},
|
|
437
442
|
{
|
|
@@ -479,8 +484,13 @@
|
|
|
479
484
|
},
|
|
480
485
|
{
|
|
481
486
|
"name": "br-checkbox-group",
|
|
482
|
-
"description": "
|
|
487
|
+
"description": "O componente `br-checkbox-group` é o contêiner semântico e orquestrador de múltiplos controles `br-checkbox` que pertencem a um mesmo contexto ou pergunta em formulários do GovBR-DS.\n\n### Para que serve\n\n- **Agrupamento semântico e acessibilidade:** Cria a estrutura recomendada de `fieldset` e `legend` para leitores de tela, garantindo que o contexto da pergunta seja anunciado antes de cada opção individual.\n- **Validação conjunta:** Permite coordenar regras de validação em grupo (como exigir uma quantidade mínima ou máxima de checkboxes selecionados).\n- **Alinhamento e padronização visual:** Organiza os checkboxes vertical ou horizontalmente conforme o leiaute da interface.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Existirem duas ou mais opções em checkbox que respondem à mesma pergunta ou pertencem ao mesmo conjunto lógico de preferências.\n - For necessário aplicar rótulo geral e mensagens de validação ao grupo completo de escolhas.\n- **Evite e prefira outro componente quando:**\n - Houver apenas um único checkbox independente (ex.: aceite de termos): use `br-checkbox` isoladamente.\n - A seleção for de escolha única (mutuamente exclusiva): use `br-radio-group`.\n\n### Estrutura e Slots\n\nO `br-checkbox-group` atua como container orquestrador:\n- `default`: Slot onde devem ser inseridos os elementos `br-checkbox` que compõem o grupo.\n- `feedback`: Slot opcional para mensagem de erro ou orientação de validação associada ao grupo todo.\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/checkgroup?tab=designer).\n---\n\n\n### **Slots:**\n - **default** - Slot para adicionar os checkboxes controlados pelo grupo.",
|
|
483
488
|
"attributes": [
|
|
489
|
+
{
|
|
490
|
+
"name": "disabled",
|
|
491
|
+
"description": "Desabilita o controlador e os checkboxes contidos no grupo.",
|
|
492
|
+
"values": []
|
|
493
|
+
},
|
|
484
494
|
{
|
|
485
495
|
"name": "label",
|
|
486
496
|
"description": "Texto descritivo do grupo.",
|
|
@@ -503,7 +513,7 @@
|
|
|
503
513
|
},
|
|
504
514
|
{
|
|
505
515
|
"name": "orientation",
|
|
506
|
-
"description": "Orientação visual das opções.",
|
|
516
|
+
"description": "Orientação visual das opções. Valores inválidos usam `vertical`.",
|
|
507
517
|
"values": [{ "name": "horizontal" }, { "name": "vertical" }]
|
|
508
518
|
},
|
|
509
519
|
{
|
|
@@ -516,7 +526,7 @@
|
|
|
516
526
|
},
|
|
517
527
|
{
|
|
518
528
|
"name": "br-checkgroup",
|
|
519
|
-
"description": "@deprecated Use `br-checkbox-group`.\n\n\n---\n\n\n### **Slots:**\n - **default** - Slot para adicionar os checkboxes controlados pelo grupo.",
|
|
529
|
+
"description": "@deprecated Use `br-checkbox-group`.\n\nO componente `br-checkgroup` é o alias legado mantido para compatibilidade com versões anteriores da biblioteca.\n\n### Papel na biblioteca\n\n- Atua como um redirecionador direto para a implementação do `br-checkbox-group`.\n- Permite que aplicações já existentes mantenham o funcionamento sem interrupções enquanto realizam a transição gradativa.\n\n### Regra de uso e migração\n\nEm novos projetos e manutenções ativas, **utilize sempre a tag canônica `br-checkbox-group`**. O uso de `br-checkgroup` está depreciado e deve ser substituído pela tag oficial.\n\nPara a documentação canônica completa, consulte a página do [br-checkbox-group](/docs/components/checkbox-group).\n---\n\n\n### **Slots:**\n - **default** - Slot para adicionar os checkboxes controlados pelo grupo.",
|
|
520
530
|
"attributes": [
|
|
521
531
|
{
|
|
522
532
|
"name": "label",
|
|
@@ -552,13 +562,18 @@
|
|
|
552
562
|
"name": "custom-id",
|
|
553
563
|
"description": "Identificador legado do controlador.",
|
|
554
564
|
"values": []
|
|
565
|
+
},
|
|
566
|
+
{
|
|
567
|
+
"name": "disabled",
|
|
568
|
+
"description": "Desabilita o controlador e os checkboxes contidos no grupo.",
|
|
569
|
+
"values": []
|
|
555
570
|
}
|
|
556
571
|
],
|
|
557
572
|
"references": []
|
|
558
573
|
},
|
|
559
574
|
{
|
|
560
575
|
"name": "br-collapse",
|
|
561
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
576
|
+
"description": "O componente `br-collapse` é o controle retrátil do GovBR-DS baseado no elemento semântico HTML5 `<details>`, desenvolvido para permitir que a pessoa usuária expanda ou recolha seções de conteúdo sob demanda.\n\n### Para que serve\n\n- **Otimização de espaço e hierarquia:** Reduz a sobrecarga de informação inicial na tela, ocultando blocos secundários até que o usuário decida visualizá-los.\n- **Estruturação de perguntas e respostas:** Padrão oficial para construção de seções de FAQ (perguntas frequentes) e listas explicativas sanfonadas (accordion).\n- **Acessibilidade nativa:** Por utilizar internamente os elementos `<details>` e `<summary>`, possui controle total de teclado, estado acessível (`open`) e anúncios para tecnologias assistivas sem exigir scripts adicionais complexos.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - O conteúdo for extenso, dividido em tópicos independentes e a maioria dos usuários só precisa consultar itens específicos.\n - Houver seções complementares opcionais em um formulário longo.\n- **Evite e prefira outro componente quando:**\n - A informação contida for crítica para a tomada de decisão imediata ou segurança da pessoa usuária (ela deve ficar permanentemente visível).\n - A intenção for alternar entre diferentes visões de uma mesma tela completa (prefira `br-tab`).\n\n### Estrutura e Slots\n\nO `br-collapse` organiza o acionamento e a área expansível:\n- `trigger`: Slot para personalizar o botão/gatilho de expansão (texto, ícones ou componentes de apoio dentro do summary).\n- `default`: Slot para inserção do conteúdo que é revelado quando o componente é expandido.\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/collapse?tab=designer).\n---\n\n\n### **Events:**\n - **brDidOpen** - Emitido ao expandir, com o identificador e o grupo de accordion.\n- **brCollapseOpen** - Evento canônico emitido ao expandir.\n- **brDidClose** - Emitido ao recolher, com o identificador e o grupo de accordion.\n- **brCollapseClose** - Evento canônico 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\n### **CSS Parts:**\n - **details** - Elemento details nativo do collapse.\n- **trigger** - Acionador (summary) do collapse.\n- **content** - Área de conteúdo expansível.",
|
|
562
577
|
"attributes": [
|
|
563
578
|
{
|
|
564
579
|
"name": "custom-id",
|
|
@@ -582,12 +597,12 @@
|
|
|
582
597
|
},
|
|
583
598
|
{
|
|
584
599
|
"name": "icon-to-show",
|
|
585
|
-
"description": "
|
|
600
|
+
"description": "Identificador do ícone exibido quando o conteúdo está oculto. O valor padrão usa o registro SVG local.",
|
|
586
601
|
"values": []
|
|
587
602
|
},
|
|
588
603
|
{
|
|
589
604
|
"name": "icon-to-hide",
|
|
590
|
-
"description": "
|
|
605
|
+
"description": "Identificador do ícone exibido quando o conteúdo está visível. O valor padrão usa o registro SVG local.",
|
|
591
606
|
"values": []
|
|
592
607
|
},
|
|
593
608
|
{
|
|
@@ -620,7 +635,7 @@
|
|
|
620
635
|
},
|
|
621
636
|
{
|
|
622
637
|
"name": "br-cookiebar",
|
|
623
|
-
"description": "
|
|
638
|
+
"description": "O componente `br-cookiebar` é o orquestrador completo do GovBR-DS para aviso e gestão de consentimento de cookies, atendendo às exigências da LGPD (Lei Geral de Proteção de Dados).\n\n### Para que serve\n\n- **Aviso de privacidade e cookies:** Informa com clareza à pessoa usuária sobre a coleta e finalidade de cookies no sistema.\n- **Gestão de consentimento:** Permite aceitar todos os cookies, rejeitar os não essenciais ou gerenciar categorias de forma granular.\n- **Detalhamento transparente:** Exibe a relação técnica de cookies utilizados por categoria com nome, validade e finalidade.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - A aplicação ou portal público utilizar cookies de sessão, rastreamento ou preferências que demandem consentimento explícito.\n - For necessário dar cumprimento às diretrizes de privacidade e proteção de dados pessoais (LGPD).\n- **Evite e prefira outro componente quando:**\n - A notificação for apenas um alerta contextual ou mensagem simples de status sem relação com consentimento (prefira `br-message` ou `br-notification`).\n\n### Composição e Subcomponentes\n\n| Subcomponente | Papel | Regra de uso |\n| --- | --- | --- |\n| `br-cookiebar` | **Orquestrador principal.** Gerencia abertura, fechamento, persistência e emissão dos eventos de consentimento. | Declarado como contêiner do aviso de cookies na aplicação. |\n| `br-cookiebar-header` | **Cabeçalho informativo.** Exibe título e mensagem inicial de contexto. | Inserido no slot de topo do `br-cookiebar`. |\n| `br-cookiebar-group` | **Categoria de cookies.** Agrupa cookies por finalidade com controle de seleção. | Inserido no corpo de opções do `br-cookiebar`. |\n| `br-cookiebar-cookie` | **Item de cookie.** Descreve detalhadamente um cookie específico. | Inserido dentro de um `br-cookiebar-group`. |\n| `br-cookiebar-link` | **Link informativo.** Atalho para a Política de Privacidade e termos. | Usado no cabeçalho ou notas do `br-cookiebar`. |\n| `br-cookiebar-note` | **Nota complementar.** Mensagem ou aviso jurídico adicional. | Inserido individualmente ou em `br-cookiebar-note-group`. |\n| `br-cookiebar-note-group` | **Agrupador de notas.** Organiza múltiplas notas informativas. | Posicionado na área de notas do `br-cookiebar`. |\n\n### Como os subcomponentes se relacionam\n\nO `br-cookiebar` atua como orquestrador central. Ele controla a visualização do painel (modo compacto ou expandido), agrupa as categorias (`br-cookiebar-group`) com seus respectivos cookies (`br-cookiebar-cookie`) e disponibiliza os botões de ação para aceitar todos, rejeitar ou salvar preferências. A aplicação consome eventos unificados de consentimento disparados pelo componente pai.\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/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.",
|
|
624
639
|
"attributes": [
|
|
625
640
|
{
|
|
626
641
|
"name": "custom-id",
|
|
@@ -634,7 +649,7 @@
|
|
|
634
649
|
},
|
|
635
650
|
{
|
|
636
651
|
"name": "mode",
|
|
637
|
-
"description": "Estado visual atual do painel
|
|
652
|
+
"description": "Estado visual atual do painel. Valores inválidos usam `default`.\n- `default`: barra inferior com texto e botões.\n- `open`: painel de tela cheia com grupos de cookies configuráveis.",
|
|
638
653
|
"values": [{ "name": "CookiebarMode" }]
|
|
639
654
|
},
|
|
640
655
|
{
|
|
@@ -727,7 +742,7 @@
|
|
|
727
742
|
},
|
|
728
743
|
{
|
|
729
744
|
"name": "br-cookiebar-cookie",
|
|
730
|
-
"description": "
|
|
745
|
+
"description": "O componente `br-cookiebar-cookie` é o subcomponente do GovBR-DS que descreve as especificações técnicas de um cookie individual.\n\n### Para que serve\n\n- **Transparência técnica:** Detalha nome, validade, finalidade e fornecedor do cookie.\n- **Esclarecimento ao cidadão:** Oferece visibilidade granular sobre cada elemento de persistência.\n\n### Papel na composição\n\nAtua como item folha descritivo na listagem de cookies.\n\n### Regra de uso e relacionamento\n\n- Deve ser utilizado exclusivamente dentro de um `br-cookiebar-group`.\n- Não deve ser utilizado fora do ecossistema de gestão de cookies.\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.",
|
|
731
746
|
"attributes": [
|
|
732
747
|
{
|
|
733
748
|
"name": "custom-id",
|
|
@@ -839,7 +854,7 @@
|
|
|
839
854
|
},
|
|
840
855
|
{
|
|
841
856
|
"name": "br-cookiebar-group",
|
|
842
|
-
"description": "
|
|
857
|
+
"description": "O componente `br-cookiebar-group` é o subcomponente do GovBR-DS que representa uma categoria de cookies (ex.: necessários, desempenho, marketing) acompanhada de um controle de seleção (switch ou checkbox).\n\n### Para que serve\n\n- **Segmentação por finalidade:** Organiza os cookies conforme o tipo e necessidade técnica.\n- **Controle de consentimento:** Permite habilitar ou desabilitar categorias não obrigatórias.\n\n### Papel na composição\n\nAtua como contêiner de agrupamento intermediário dentro do `br-cookiebar`, contendo instâncias de `br-cookiebar-cookie`.\n\n### Regra de uso e relacionamento\n\n- Deve ser utilizado dentro do corpo de configuração do `br-cookiebar`.\n- Recebe elementos filhos do tipo `br-cookiebar-cookie`.\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.",
|
|
843
858
|
"attributes": [
|
|
844
859
|
{
|
|
845
860
|
"name": "custom-id",
|
|
@@ -901,7 +916,7 @@
|
|
|
901
916
|
},
|
|
902
917
|
{
|
|
903
918
|
"name": "br-cookiebar-header",
|
|
904
|
-
"description": "
|
|
919
|
+
"description": "O componente `br-cookiebar-header` é o subcomponente de topo do GovBR-DS que apresenta o título e o texto introdutório do aviso de cookies.\n\n### Para que serve\n\n- **Apresentação do contexto:** Explica resumidamente a finalidade do aviso de privacidade.\n- **Identificação visual:** Fornece o cabeçalho padronizado da barra de cookies.\n\n### Papel na composição\n\nAtua como elemento introdutório estrutural do `br-cookiebar`.\n\n### Regra de uso e relacionamento\n\n- Deve ser posicionado no slot de cabeçalho do `br-cookiebar`.\n- Não deve ser utilizado de forma independente fora do aviso de cookies.\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.",
|
|
905
920
|
"attributes": [
|
|
906
921
|
{
|
|
907
922
|
"name": "custom-id",
|
|
@@ -933,7 +948,7 @@
|
|
|
933
948
|
},
|
|
934
949
|
{
|
|
935
950
|
"name": "br-cookiebar-link",
|
|
936
|
-
"description": "
|
|
951
|
+
"description": "O componente `br-cookiebar-link` é o subcomponente de hiperlink do GovBR-DS destinado a apontar para Políticas de Privacidade, Termos de Uso e orientações legais.\n\n### Para que serve\n\n- **Acesso a termos legais:** Encaminha a pessoa usuária para a documentação completa de proteção de dados.\n- **Estilo consistente:** Garante conformidade visual e acessibilidade no contexto do aviso de cookies.\n\n### Papel na composição\n\nAtua como item de navegação auxiliar no aviso de cookies.\n\n### Regra de uso e relacionamento\n\n- Pode ser utilizado dentro do cabeçalho, notas ou corpo do componente `br-cookiebar`.\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.",
|
|
937
952
|
"attributes": [
|
|
938
953
|
{
|
|
939
954
|
"name": "custom-id",
|
|
@@ -965,7 +980,7 @@
|
|
|
965
980
|
},
|
|
966
981
|
{
|
|
967
982
|
"name": "br-cookiebar-note",
|
|
968
|
-
"description": "
|
|
983
|
+
"description": "O componente `br-cookiebar-note` é o subcomponente textual do GovBR-DS que exibe notas explicativas, orientações complementares ou avisos jurídicos adicionais.\n\n### Para que serve\n\n- **Notas de rodapé do aviso:** Apresenta esclarecimentos sobre retenção de dados, atualizações de termos ou exceções regulatórias.\n\n### Papel na composição\n\nAtua como bloco textual informativo complementar.\n\n### Regra de uso e relacionamento\n\n- Deve ser utilizado diretamente no `br-cookiebar` ou dentro de 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.",
|
|
969
984
|
"attributes": [
|
|
970
985
|
{
|
|
971
986
|
"name": "custom-id",
|
|
@@ -983,7 +998,7 @@
|
|
|
983
998
|
},
|
|
984
999
|
{
|
|
985
1000
|
"name": "br-cookiebar-note-group",
|
|
986
|
-
"description": "
|
|
1001
|
+
"description": "O componente `br-cookiebar-note-group` é o subcomponente contêiner do GovBR-DS que agrupa uma ou mais notas informativas `br-cookiebar-note`.\n\n### Para que serve\n\n- **Estruturação de notas:** Agrupa avisos jurídicos e observações complementares em uma seção visualmente delimitada.\n\n### Papel na composição\n\nAtua como contêiner estrutural para instâncias de `br-cookiebar-note`.\n\n### Regra de uso e relacionamento\n\n- Deve ser inserido na seção de notas informativas do `br-cookiebar`.\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.",
|
|
987
1002
|
"attributes": [
|
|
988
1003
|
{
|
|
989
1004
|
"name": "custom-id",
|
|
@@ -1005,7 +1020,7 @@
|
|
|
1005
1020
|
},
|
|
1006
1021
|
{
|
|
1007
1022
|
"name": "br-datetime-picker",
|
|
1008
|
-
"description": "
|
|
1023
|
+
"description": "O componente `br-datetime-picker` é o orquestrador completo do GovBR-DS para seleção e digitação de datas, horários ou intervalos combinados. Ele integra-se nativamente a formulários HTML via `formAssociated` e oferece suporte WAI-ARIA para diálogos e calendários.\n\n### Para que serve\n\n- **Seleção completa de data e horário:** Reúne em um único controle o campo de entrada com máscara formatada (`br-datetime-input`), o calendário de seleção de datas (`br-date-picker`) e o seletor de horários (`br-time-picker`).\n- **Múltiplos modos operacionais:** Suporta data simples, intervalo de datas (`range`), apenas hora (`time`), data e hora combinadas (`datetime`) e datas múltiplas.\n- **Validação e formulários nativos:** Valida datas mínimas (`min`), máximas (`max`), formatos permitidos e comunica valores estruturados diretamente ao formulário pai.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - O formulário exigir preenchimento de datas ou horários onde tanto a digitação manual rápida quanto a exploração visual no calendário agreguem valor à experiência.\n - For necessário selecionar um período com data de início e fim.\n- **Evite e prefira outro componente quando:**\n - A data for estritamente de nascimento ou emissão de documento onde a pessoa usuária sabe os dígitos de cor e prefere digitar apenas números (prefira `br-input` com máscara numérica).\n\n### Composição e Subcomponentes\n\n| Subcomponente | Papel | Regra de uso |\n| --- | --- | --- |\n| `br-datetime-picker` | **Orquestrador principal.** Gerencia valor consolidado, validação, abertura do popup e sincronização entre input e calendário. | Deve ser o único controle declarado no template da aplicação na quase totalidade dos casos. |\n| `br-datetime-input` | **Campo com máscara.** Exibe o valor formatado e permite digitação manual. | Coordenado automaticamente pelo pai; use avulso apenas em composições customizadas. |\n| `br-date-picker` | **Calendário de datas.** Painel visual com grade de dias, meses e anos. | Coordenado pelo pai; use avulso se precisar de calendário estático embutido. |\n| `br-time-picker` | **Seletor de horário.** Controle de escolha de horas e minutos. | Coordenado pelo pai; use avulso se precisar apenas de seletor de hora sem data. |\n\n### Como os subcomponentes se relacionam\n\nO `br-datetime-picker` funciona como o modelo pronto: ele instancia e sincroniza internamente o campo textual (`br-datetime-input`) e os seletores visuais suspensos (`br-date-picker` e/ou `br-time-picker`). A aplicação consome os eventos unificados emitidos diretamente pelo orquestrador pai (`change`, `input`).\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/datetime-picker?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- **valueChange** - Evento emitido quando o valor selecionado muda.\n- **brDatetimePickerValidationChange** - Emitido ao iniciar e concluir a validação customizada.\n\n### **Methods:**\n - **formResetCallback()** - API nativa de reset de form-associated custom elements.\n- **formStateRestoreCallback(state: _string | File | FormData | null_)** - API nativa de restauração de estado (histórico/autofill) do formulário.\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- **setDisabledDates(dates: _DatetimePickerDisabledDate[] | null_): _Promise<void>_** - Define programaticamente as datas desabilitadas por meio de array.\n\nÚtil quando o componente é usado via HTML e o consumidor precisa enviar\numa lista tipada em runtime.\n- **setValue(value: _Date | string | null_): _Promise<void>_** - Define o valor atual de forma imperativa aceitando Date, string serializada ou null.\n- **getValue(): _Promise<Date | null>_** - Retorna uma cópia do valor selecionado atualmente.\n- **clear(): _Promise<void>_** - Limpa valor e intervalo selecionados.\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 intervalo de datas de forma imperativa, forçando modo date e selectionMode range.\n- **getRange(): __** - Retorna o intervalo de datas selecionado quando em modo `selectionMode=\"range\"`.\n- **isOpen(): __** - 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 do picker e retorna se a seleção atual é válida.\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.",
|
|
1009
1024
|
"attributes": [
|
|
1010
1025
|
{
|
|
1011
1026
|
"name": "mode",
|
|
@@ -1034,22 +1049,22 @@
|
|
|
1034
1049
|
},
|
|
1035
1050
|
{
|
|
1036
1051
|
"name": "min",
|
|
1037
|
-
"description": "Menor data/horário aceito, interpretado conforme `mode`.",
|
|
1052
|
+
"description": "Menor data/horário aceito, interpretado conforme `mode`. Valores inválidos são ignorados.\nAceita texto no atributo HTML ou uma instância de `Date` por property binding.",
|
|
1038
1053
|
"values": [{ "name": "Date" }]
|
|
1039
1054
|
},
|
|
1040
1055
|
{
|
|
1041
1056
|
"name": "max",
|
|
1042
|
-
"description": "Maior data/horário aceito, interpretado conforme `mode`.",
|
|
1057
|
+
"description": "Maior data/horário aceito, interpretado conforme `mode`. Valores inválidos são ignorados.\nAceita texto no atributo HTML ou uma instância de `Date` por property binding.",
|
|
1043
1058
|
"values": [{ "name": "Date" }]
|
|
1044
1059
|
},
|
|
1045
1060
|
{
|
|
1046
1061
|
"name": "validator",
|
|
1047
|
-
"description": "Regra síncrona ou assíncrona aplicada à data ou intervalo selecionado.",
|
|
1062
|
+
"description": "Regra síncrona ou assíncrona aplicada à data ou intervalo selecionado.\nRetorne uma mensagem para invalidar ou `null` para aceitar o valor.",
|
|
1048
1063
|
"values": [{ "name": "DatetimePickerValidator" }]
|
|
1049
1064
|
},
|
|
1050
1065
|
{
|
|
1051
1066
|
"name": "selection-mode",
|
|
1052
|
-
"description": "Define o tipo de seleção de datas para o calendário: única ou intervalo.\n\n`range` só funciona em conjunto com `mode=\"date\"`.\nSe `selectionMode=\"range\"` for informado, o componente ajusta automaticamente\n`mode` para `date`. Se `mode` mudar para `time` ou `datetime`, o componente\nnormaliza `selectionMode` para `single` quando necessário
|
|
1067
|
+
"description": "Define o tipo de seleção de datas para o calendário: única ou intervalo.\n\n`range` só funciona em conjunto com `mode=\"date\"`.\nSe `selectionMode=\"range\"` for informado, o componente ajusta automaticamente\n`mode` para `date`. Se `mode` mudar para `time` ou `datetime`, o componente\nnormaliza `selectionMode` para `single` quando necessário.\nValores inválidos usam `single`.",
|
|
1053
1068
|
"values": [{ "name": "DatetimePickerSelectionMode" }]
|
|
1054
1069
|
},
|
|
1055
1070
|
{
|
|
@@ -1064,22 +1079,22 @@
|
|
|
1064
1079
|
},
|
|
1065
1080
|
{
|
|
1066
1081
|
"name": "value",
|
|
1067
|
-
"description": "
|
|
1082
|
+
"description": "Instância de `Date` selecionada pelo usuário no modo simples.\nPode ser controlada por property binding e é atualizada pelo evento `valueChange`.\nPara formulários e atributos textuais, use `serializedValue`.",
|
|
1068
1083
|
"values": [{ "name": "Date" }]
|
|
1069
1084
|
},
|
|
1070
1085
|
{
|
|
1071
1086
|
"name": "serialized-value",
|
|
1072
|
-
"description": "Representação serializada compatível com os formatos de controles HTML (`YYYY-MM-DD`, `HH:mm`\nou ISO local, conforme `mode`). Em intervalos, usa `início/fim`.\n\
|
|
1087
|
+
"description": "Representação serializada compatível com os formatos de controles HTML (`YYYY-MM-DD`, `HH:mm`\nou ISO local, conforme `mode`). Em intervalos, usa `início/fim`.\n\nNa inicialização, tem precedência sobre `valueAsDate`, `value` e `initialMoment`.\nUma string vazia inicia sem seleção, mesmo quando outra prop fornece uma data.",
|
|
1073
1088
|
"values": []
|
|
1074
1089
|
},
|
|
1075
1090
|
{
|
|
1076
1091
|
"name": "value-as-date",
|
|
1077
|
-
"description": "Espelho tipado da seleção atual, equivalente ao padrão `valueAsDate` dos controles HTML.",
|
|
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.",
|
|
1078
1093
|
"values": [{ "name": "Date" }]
|
|
1079
1094
|
},
|
|
1080
1095
|
{
|
|
1081
1096
|
"name": "range-value",
|
|
1082
|
-
"description": "Intervalo controlado quando `selectionMode=\"range\"`.",
|
|
1097
|
+
"description": "Intervalo controlado quando `selectionMode=\"range\"`.\nDeve conter datas válidas ou `null` em `start` e `end`; valores inválidos mantêm o último intervalo efetivo.\nPasse o objeto por property binding; atributos HTML não representam objetos com `Date`.",
|
|
1083
1098
|
"values": [{ "name": "DatetimePickerDateRange" }]
|
|
1084
1099
|
},
|
|
1085
1100
|
{
|
|
@@ -1102,7 +1117,7 @@
|
|
|
1102
1117
|
},
|
|
1103
1118
|
{
|
|
1104
1119
|
"name": "br-date-picker",
|
|
1105
|
-
"description": "
|
|
1120
|
+
"description": "Subcomponente de calendário visual do GovBR-DS, projetado para seleção interativa de datas individuais ou intervalos.\n\n### Papel na composição\n\n- Exibe a grade mensal navegável com suporte a seleção de dia, navegação entre meses e anos, e destaque para a data atual e intervalos.\n- Implementa navegação acessível por teclado WAI-ARIA Grid (setas direcionais para dias e semanas).\n\n### Regra de uso e relacionamento\n\nGeralmente exibido dentro da superfície suspensa coordenada pelo `br-datetime-picker`. Pode ser declarado isoladamente quando a interface demandar um calendário estático permanentemente embutido na página (inline calendar).\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).\n---\n\n\n### **Events:**\n - **dateStateChange** - Evento emitido quando a data de referência ou a seleção mudam.\n\n### **Methods:**\n - **handleValueChange(newValue: _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.",
|
|
1106
1121
|
"attributes": [
|
|
1107
1122
|
{
|
|
1108
1123
|
"name": "week-starts-on",
|
|
@@ -1111,17 +1126,17 @@
|
|
|
1111
1126
|
},
|
|
1112
1127
|
{
|
|
1113
1128
|
"name": "reference-date",
|
|
1114
|
-
"description": "Data usada como base visual para o mês atualmente exibido.",
|
|
1129
|
+
"description": "Data usada como base visual para o mês atualmente exibido, sem alterar a seleção.\nRecebe uma instância de `Date` por property binding; valores inválidos usam a data atual.",
|
|
1115
1130
|
"values": [{ "name": "Date" }]
|
|
1116
1131
|
},
|
|
1117
1132
|
{
|
|
1118
1133
|
"name": "value",
|
|
1119
|
-
"description": "Data
|
|
1134
|
+
"description": "Data efetivamente selecionada, ou `null` quando não há seleção; é diferente de `referenceDate`, que controla apenas o mês visível.\nRecebe uma instância de `Date` por property binding; datas inválidas usam `null`.",
|
|
1120
1135
|
"values": [{ "name": "Date" }]
|
|
1121
1136
|
},
|
|
1122
1137
|
{
|
|
1123
1138
|
"name": "selection-mode",
|
|
1124
|
-
"description": "Define se a seleção ocorre por data única ou por intervalo.",
|
|
1139
|
+
"description": "Define se a seleção ocorre por data única ou por intervalo. Valores inválidos usam `single`.",
|
|
1125
1140
|
"values": [{ "name": "DatetimePickerSelectionMode" }]
|
|
1126
1141
|
},
|
|
1127
1142
|
{
|
|
@@ -1136,7 +1151,7 @@
|
|
|
1136
1151
|
},
|
|
1137
1152
|
{
|
|
1138
1153
|
"name": "range-value",
|
|
1139
|
-
"description": "Intervalo controlado no modo `range
|
|
1154
|
+
"description": "Intervalo controlado no modo `range`, reunindo `rangeStart` e `rangeEnd` em uma atualização.\nDeve conter datas válidas ou `null`; valores inválidos são ignorados. Passe o objeto por property binding.",
|
|
1140
1155
|
"values": [{ "name": "DatetimePickerDateRange" }]
|
|
1141
1156
|
},
|
|
1142
1157
|
{
|
|
@@ -1146,7 +1161,7 @@
|
|
|
1146
1161
|
},
|
|
1147
1162
|
{
|
|
1148
1163
|
"name": "disabled-dates",
|
|
1149
|
-
"description": "Lista de datas indisponíveis para seleção no calendário.",
|
|
1164
|
+
"description": "Lista de datas indisponíveis para seleção no calendário.\nRecebe instâncias de `Date` por property binding; datas inválidas são ignoradas.",
|
|
1150
1165
|
"values": [{ "name": "Date[]" }]
|
|
1151
1166
|
},
|
|
1152
1167
|
{
|
|
@@ -1164,7 +1179,7 @@
|
|
|
1164
1179
|
},
|
|
1165
1180
|
{
|
|
1166
1181
|
"name": "br-datetime-input",
|
|
1167
|
-
"description": "
|
|
1182
|
+
"description": "Subcomponente especializado do ecossistema de datas do GovBR-DS, responsável pela digitação e formatação de datas e horários via teclado.\n\n### Papel na composição\n\n- Aplica máscaras automáticas de digitação conforme o formato configurado (ex.: `DD/MM/AAAA`, `HH:mm`, `DD/MM/AAAA HH:mm`).\n- Contém o botão de acionamento para expandir ou recolher o popup do calendário.\n\n### Regra de uso e relacionamento\n\nNo fluxo usual da aplicação, é instanciado e coordenado automaticamente pelo orquestrador `br-datetime-picker`. Pode ser utilizado de forma autônoma apenas quando o leiaute exigir somente o campo de digitação textual sem o painel flutuante de calendário.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).\n---\n\n\n### **Events:**\n - **dateStateChange** - Emite quando o valor é alterado via input ou parsing.\n- **togglePicker** - Solicita ao componente pai a alternância da abertura do picker.\n\n### **Methods:**\n - **handleValueChange(newValue: _Date | null_)** - Revalida e reflete no input mudanças externas em `value`.\n- **handleModeChange(newValue: _string_)** - Garante modo suportado e ajusta máscara/valor textual exibido.\n- **handleReferenceDateChange(newValue: _Date_)** - Valida a data de referência e sincroniza o campo quando não há seleção.\n- **handleRangeStartChange(newValue)** - Sincroniza o input quando o início do range muda.\n- **handleRangeEndChange(newValue)** - Sincroniza o input quando o fim do range muda.\n- **render()** - Renderização principal do componente.\n\n### **CSS Parts:**\n - **container** - Parte para o container base do campo.\n- **input** - Parte para o campo textual interno.\n- **icon** - Parte para o ícone de ação (calendário/relógio).",
|
|
1168
1183
|
"attributes": [
|
|
1169
1184
|
{
|
|
1170
1185
|
"name": "placeholder",
|
|
@@ -1178,12 +1193,12 @@
|
|
|
1178
1193
|
},
|
|
1179
1194
|
{
|
|
1180
1195
|
"name": "reference-date",
|
|
1181
|
-
"description": "Data de referência que orienta a navegação visual do calendário.",
|
|
1196
|
+
"description": "Data de referência que orienta a navegação visual do calendário sem alterar a seleção.\nRecebe uma instância de `Date` por property binding.",
|
|
1182
1197
|
"values": [{ "name": "Date" }]
|
|
1183
1198
|
},
|
|
1184
1199
|
{
|
|
1185
1200
|
"name": "value",
|
|
1186
|
-
"description": "
|
|
1201
|
+
"description": "Data efetivamente selecionada, ou `null` quando nada foi escolhido; é diferente\nde `referenceDate`, que controla apenas a referência visual.\nRecebe uma instância de `Date` por property binding.",
|
|
1187
1202
|
"values": [{ "name": "Date" }]
|
|
1188
1203
|
},
|
|
1189
1204
|
{
|
|
@@ -1193,7 +1208,7 @@
|
|
|
1193
1208
|
},
|
|
1194
1209
|
{
|
|
1195
1210
|
"name": "selection-mode",
|
|
1196
|
-
"description": "Define se a seleção ocorre por data única ou por intervalo
|
|
1211
|
+
"description": "Define se a seleção ocorre por data única ou por intervalo.\nAceita `single` ou `range`; valores inválidos usam `single`.",
|
|
1197
1212
|
"values": [{ "name": "DatetimePickerSelectionMode" }]
|
|
1198
1213
|
},
|
|
1199
1214
|
{
|
|
@@ -1208,7 +1223,7 @@
|
|
|
1208
1223
|
},
|
|
1209
1224
|
{
|
|
1210
1225
|
"name": "range-value",
|
|
1211
|
-
"description": "Intervalo controlado no modo `range
|
|
1226
|
+
"description": "Intervalo controlado no modo `range`, reunindo `rangeStart` e `rangeEnd` em uma atualização.\nDeve conter datas válidas ou `null`; valores inválidos são ignorados. Passe o objeto por property binding.",
|
|
1212
1227
|
"values": [{ "name": "DatetimePickerDateRange" }]
|
|
1213
1228
|
}
|
|
1214
1229
|
],
|
|
@@ -1216,16 +1231,16 @@
|
|
|
1216
1231
|
},
|
|
1217
1232
|
{
|
|
1218
1233
|
"name": "br-time-picker",
|
|
1219
|
-
"description": "
|
|
1234
|
+
"description": "Subcomponente de seleção de horários do GovBR-DS, desenvolvido para permitir a escolha intuitiva de horas e minutos.\n\n### Papel na composição\n\n- Apresenta colunas ou controles de incremento/decremento para seleção de horas e minutos com validação de limites.\n- Sincroniza o horário escolhido com o campo textual associado.\n\n### Regra de uso e relacionamento\n\nCoordenado pelo componente pai `br-datetime-picker` no modo de horário ou composto. Pode ser utilizado avulso quando a aplicação demandar exclusivamente a captura de hora sem necessidade de calendário de datas.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/datetime-picker?tab=designer).\n---\n\n\n### **Events:**\n - **dateStateChange** - Evento emitido quando a data de referência ou o valor selecionado mudam.\n\n### **CSS Parts:**\n - **container** - Parte para o container base do seletor de horários.\n- **timer** - Container para o grupo de hora e minuto.\n- **field** - Campo individual de entrada de tempo (com botões de ajuste).\n- **separator** - Separador visual de hora e minuto.\n- **input** - Campo de entrada textual interno do tempo.",
|
|
1220
1235
|
"attributes": [
|
|
1221
1236
|
{
|
|
1222
1237
|
"name": "reference-date",
|
|
1223
|
-
"description": "Data
|
|
1238
|
+
"description": "Data usada como referência para a navegação de hora e minuto, sem representar necessariamente a seleção.\nRecebe uma instância de `Date` por property binding; valores inválidos usam a data atual.",
|
|
1224
1239
|
"values": [{ "name": "Date" }]
|
|
1225
1240
|
},
|
|
1226
1241
|
{
|
|
1227
1242
|
"name": "value",
|
|
1228
|
-
"description": "
|
|
1243
|
+
"description": "Data que contém a hora e o minuto efetivamente selecionados, ou `null` quando vazio.\nRecebe uma instância de `Date` por property binding; datas inválidas usam `null`.",
|
|
1229
1244
|
"values": [{ "name": "Date" }]
|
|
1230
1245
|
},
|
|
1231
1246
|
{
|
|
@@ -1238,7 +1253,7 @@
|
|
|
1238
1253
|
},
|
|
1239
1254
|
{
|
|
1240
1255
|
"name": "br-divider",
|
|
1241
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
1256
|
+
"description": "O componente `br-divider` é o elemento separador visual e semântico do GovBR-DS, utilizado para demarcar limites claros entre seções, listas de conteúdos ou áreas temáticas da página.\n\n### Para que serve\n\n- **Separação visual estruturada:** Cria linhas divisórias sutis horizontais ou verticais para organizar blocos de informação com espaçamentos padronizados.\n- **Rotulação intermediária:** Permite incluir texto (ex.: \"ou\"), ícones ou outros elementos centralizados ao longo da linha divisória através do slot padrão.\n- **Variações visuais:** Suporta estilos contínuos, tracejados (`dashed`) e diferentes densidades para se adequar ao leiaute.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Houver necessidade de indicar explicitamente o término de um bloco temático e o início de outro.\n - Separar alternativas com um divisor textual (ex.: \"Entrar com conta Gov.BR\" --- ou --- \"Entrar com certificado digital\").\n - Dividir colunas de rodapés, menus laterais ou cabeçalhos.\n- **Evite e prefira outro componente quando:**\n - Os espaçamentos em branco (margens e paddings) já forem suficientes para garantir a percepção de separação sem sobrecarregar visualmente a tela.\n\n### Estrutura e Slots\n\nO `br-divider` é um componente autônomo e de apresentação:\n- `default`: Slot opcional para texto ou elemento centralizado intercalado na linha do divisor.\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/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).",
|
|
1242
1257
|
"attributes": [
|
|
1243
1258
|
{
|
|
1244
1259
|
"name": "custom-id",
|
|
@@ -1247,17 +1262,17 @@
|
|
|
1247
1262
|
},
|
|
1248
1263
|
{
|
|
1249
1264
|
"name": "orientation",
|
|
1250
|
-
"description": "Orientação do divisor.Em modo vertical, posicione dentro de um container com `display: flex`.",
|
|
1265
|
+
"description": "Orientação do divisor. Em modo vertical, posicione dentro de um container com `display: flex`. Valores inválidos usam `horizontal`.",
|
|
1251
1266
|
"values": [{ "name": "DividerOrientation" }]
|
|
1252
1267
|
},
|
|
1253
1268
|
{
|
|
1254
1269
|
"name": "thickness",
|
|
1255
|
-
"description": "Espessura visual do divisor.",
|
|
1270
|
+
"description": "Espessura visual do divisor. Valores inválidos usam `small`.",
|
|
1256
1271
|
"values": [{ "name": "DividerThickness" }]
|
|
1257
1272
|
},
|
|
1258
1273
|
{
|
|
1259
1274
|
"name": "border-style",
|
|
1260
|
-
"description": "Estilo de borda do divisor.",
|
|
1275
|
+
"description": "Estilo de borda do divisor. Valores inválidos usam `solid`.",
|
|
1261
1276
|
"values": [{ "name": "DividerBorderStyle" }]
|
|
1262
1277
|
},
|
|
1263
1278
|
{
|
|
@@ -1267,7 +1282,7 @@
|
|
|
1267
1282
|
},
|
|
1268
1283
|
{
|
|
1269
1284
|
"name": "color-mode",
|
|
1270
|
-
"description": "Esquema de cor canônico. Quando informado, tem precedência sobre `isDarkMode`.",
|
|
1285
|
+
"description": "Esquema de cor canônico. Quando informado, tem precedência sobre `isDarkMode`; valores inválidos usam `light`.",
|
|
1271
1286
|
"values": [{ "name": "light" }, { "name": "dark" }]
|
|
1272
1287
|
},
|
|
1273
1288
|
{
|
|
@@ -1277,7 +1292,7 @@
|
|
|
1277
1292
|
},
|
|
1278
1293
|
{
|
|
1279
1294
|
"name": "align",
|
|
1280
|
-
"description": "Alinhamento do conteúdo quando há slot interno.",
|
|
1295
|
+
"description": "Alinhamento do conteúdo quando há slot interno. Valores inválidos são ignorados.",
|
|
1281
1296
|
"values": [{ "name": "DividerAlign" }]
|
|
1282
1297
|
},
|
|
1283
1298
|
{
|
|
@@ -1287,22 +1302,22 @@
|
|
|
1287
1302
|
},
|
|
1288
1303
|
{
|
|
1289
1304
|
"name": "margin-top",
|
|
1290
|
-
"description": "Margin top em pixels; se omitido, aplica padrão interno.",
|
|
1305
|
+
"description": "Margin top em pixels; se omitido, aplica padrão interno.\nDeve ser um número finito; valores inválidos usam 0.",
|
|
1291
1306
|
"values": []
|
|
1292
1307
|
},
|
|
1293
1308
|
{
|
|
1294
1309
|
"name": "margin-bottom",
|
|
1295
|
-
"description": "Margin bottom em pixels; se omitido, aplica padrão interno.",
|
|
1310
|
+
"description": "Margin bottom em pixels; se omitido, aplica padrão interno.\nDeve ser um número finito; valores inválidos usam 0.",
|
|
1296
1311
|
"values": []
|
|
1297
1312
|
},
|
|
1298
1313
|
{
|
|
1299
1314
|
"name": "margin-left",
|
|
1300
|
-
"description": "Margin left em pixels; se omitido, aplica padrão interno.",
|
|
1315
|
+
"description": "Margin left em pixels; se omitido, aplica padrão interno.\nDeve ser um número finito; valores inválidos usam 0.",
|
|
1301
1316
|
"values": []
|
|
1302
1317
|
},
|
|
1303
1318
|
{
|
|
1304
1319
|
"name": "margin-right",
|
|
1305
|
-
"description": "Margin right em pixels; se omitido, aplica padrão interno.",
|
|
1320
|
+
"description": "Margin right em pixels; se omitido, aplica padrão interno.\nDeve ser um número finito; valores inválidos usam 0.",
|
|
1306
1321
|
"values": []
|
|
1307
1322
|
}
|
|
1308
1323
|
],
|
|
@@ -1310,7 +1325,7 @@
|
|
|
1310
1325
|
},
|
|
1311
1326
|
{
|
|
1312
1327
|
"name": "br-dropdown",
|
|
1313
|
-
"description": "
|
|
1328
|
+
"description": "O componente `br-dropdown` é o painel flutuante de sobreposição do GovBR-DS, ativado por um controle gatilho para apresentar listas contextuais de comandos, opções ou conteúdos complementares.\n\n### Para que serve\n\n- **Menus de contexto e ações:** Agrupa múltiplas ações secundárias ou suplementares que não precisam ficar expostas permanentemente na interface (ex.: menu \"Mais opções\", \"Exportar\", \"Filtrar por\").\n- **Posicionamento flutuante inteligente:** Gerencia a exibição da superfície suspensa sobre o conteúdo da página, garantindo contraste, elevação e fechamento ao clicar fora (`click outside`) ou pressionar a tecla Escape.\n- **Comportamento acessível:** Associa o elemento acionador ao painel de destino via atributos WAI-ARIA (`aria-expanded`, `aria-haspopup`).\n\n### Quando utilizar\n\n- **Utilize quando:**\n - O espaço na barra de ferramentas ou cabeçalho for limitado e houver várias ações pontuais a serem oferecidas.\n - For necessário apresentar uma lista suspensa de comandos acionáveis.\n- **Evite e prefira outro componente quando:**\n - O objetivo for permitir a seleção de valor para submissão em formulário (prefira `br-select`).\n - O conteúdo for a estrutura principal de navegação do site (prefira `br-menu`).\n - A mensagem for uma notificação assíncrona ou alerta (prefira `br-message` ou `br-notification`).\n\n### Estrutura e Slots\n\nO `br-dropdown` é composto por duas regiões fundamentais:\n- `trigger`: Slot obrigatório onde a aplicação declara o botão ou link de acionamento (como um `br-button`).\n- `target`: Slot onde a aplicação declara o painel, lista de itens ou conteúdo flutuante exibido ao abrir o dropdown.\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/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 canônico 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.",
|
|
1314
1329
|
"attributes": [
|
|
1315
1330
|
{
|
|
1316
1331
|
"name": "custom-id",
|
|
@@ -1342,6 +1357,11 @@
|
|
|
1342
1357
|
"description": "Define se o dropdown deve permanecer aberto quando outro dropdown é aberto.\nQuando definido como false (padrão), o dropdown será fechado automaticamente quando outro dropdown for aberto.\nQuando definido como true, o dropdown permanecerá aberto mesmo quando outro dropdown for aberto.",
|
|
1343
1358
|
"values": []
|
|
1344
1359
|
},
|
|
1360
|
+
{
|
|
1361
|
+
"name": "match-trigger-width",
|
|
1362
|
+
"description": "Faz o painel acompanhar a largura do acionador enquanto estiver aberto.\nO valor padrão `false` preserva a largura determinada pelo conteúdo.",
|
|
1363
|
+
"values": []
|
|
1364
|
+
},
|
|
1345
1365
|
{
|
|
1346
1366
|
"name": "target-z-index",
|
|
1347
1367
|
"description": "Define o z-index do elemento target (alvo) do dropdown.\nPermite customizar a ordem de sobreposição do painel dropdown em relação aos demais elementos da página.\nO valor padrão utiliza a variável CSS do design system: var(--z-index-layer-1).",
|
|
@@ -1362,7 +1382,7 @@
|
|
|
1362
1382
|
},
|
|
1363
1383
|
{
|
|
1364
1384
|
"name": "br-footer",
|
|
1365
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
1385
|
+
"description": "O componente `br-footer` é o orquestrador completo de rodapé institucional do GovBR-DS. Fornece o fechamento estrutural da página, centralizando links de navegação categorizados, canais de redes sociais, menção legal de licenciamento aberto e a marca do Governo Federal.\n\n### Para que serve\n\n- **Fechamento e navegação secundária:** Agrupa em categorias os links úteis de apoio, mapas do site e serviços da entidade pública.\n- **Conformidade legal e transparência:** Apresenta a nota de licenciamento de conteúdo (ex.: Creative Commons) e termos legais obrigatórios.\n- **Redes sociais institucionais:** Exibe links oficiais de comunicação pública com a sociedade.\n- **Responsividade integrada:** Converte categorias de links em painéis expansíveis (sanfona) automaticamente no modo mobile.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Finalizar a estrutura da página em portais e sistemas governamentais alinhados ao padrão GovBR-DS.\n - Oferecer navegação complementar, canais sociais e declarações de direitos autorais.\n- **Evite e prefira outro componente quando:**\n - A interface for um diálogo modal ou painel isolado que não representa uma página completa do portal.\n\n### Composição e Subcomponentes\n\n| Subcomponente | Papel | Regra de uso |\n| --- | --- | --- |\n| `br-footer` | **Orquestrador principal.** Gerencia a distribuição visual em colunas/linhas e o comportamento sanfona em telas menores. | Deve ser declarado como elemento de rodapé ao final da página. |\n| `br-footer-category` | **Categoria de links.** Agrupa links temáticos sob um título expansível. | Deve ser inserido no contêiner de categorias do `br-footer`. |\n| `br-footer-item` | **Item de link.** Link individual dentro de uma categoria de rodapé. | Deve ser utilizado dentro de um `br-footer-category`. |\n| `br-footer-logo` | **Logotipo.** Exibe a logomarca do órgão ou do Governo Federal. | Posicionado na área designada de logotipo do `br-footer`. |\n| `br-footer-social` | **Redes sociais.** Reúne links e ícones para canais sociais oficiais. | Posicionado no slot ou área de mídias sociais do `br-footer`. |\n| `br-footer-legal` | **Texto legal.** Exibe termos de licenciamento aberto e direitos autorais. | Posicionado na base legal do `br-footer`. |\n\n### Como os subcomponentes se relacionam\n\nO `br-footer` atua como contêiner estrutural orquestrador. Ele organiza as categorias (`br-footer-category`) em colunas no desktop e alterna para comportamento de acordeão no mobile. Os itens (`br-footer-item`) herdam o contexto da categoria correspondente, enquanto as áreas de logotipo, redes sociais e notas legais completam o fechamento padronizado.\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/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.",
|
|
1366
1386
|
"attributes": [
|
|
1367
1387
|
{
|
|
1368
1388
|
"name": "custom-id",
|
|
@@ -1394,7 +1414,7 @@
|
|
|
1394
1414
|
},
|
|
1395
1415
|
{
|
|
1396
1416
|
"name": "br-footer-category",
|
|
1397
|
-
"description": "Para
|
|
1417
|
+
"description": "O componente `br-footer-category` é o subcomponente do GovBR-DS que agrupa links de rodapé por tema sob um título estruturado.\n\n### Para que serve\n\n- **Organização temática:** Divide os links de apoio em blocos temáticos claros.\n- **Colapso responsivo:** Funciona como seção que pode ser expandida ou recolhida no layout mobile, otimizando o espaço da tela.\n\n### Papel na composição\n\nAtua como agrupador intermediário entre o `br-footer` e os itens filhos individuais `br-footer-item`.\n\n### Regra de uso e relacionamento\n\n- Deve ser inserido dentro do `br-footer`.\n- Acomoda instâncias de `br-footer-item` representando cada link pertencente àquela categoria.\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.",
|
|
1398
1418
|
"attributes": [
|
|
1399
1419
|
{
|
|
1400
1420
|
"name": "custom-id",
|
|
@@ -1411,7 +1431,7 @@
|
|
|
1411
1431
|
},
|
|
1412
1432
|
{
|
|
1413
1433
|
"name": "br-footer-item",
|
|
1414
|
-
"description": "Para a
|
|
1434
|
+
"description": "O componente `br-footer-item` é o subcomponente folha do GovBR-DS que renderiza um link de navegação individual dentro de uma categoria do rodapé.\n\n### Para que serve\n\n- **Acesso direto a links:** Conduz a pessoa usuária a páginas de serviços, transparência ou seções institucionais.\n- **Estilo padronizado:** Garante tipografia, espaçamento e estados acessíveis no rodapé.\n\n### Papel na composição\n\nAtua como item de link final na hierarquia de rodapé.\n\n### Regra de uso e relacionamento\n\n- Deve ser utilizado exclusivamente dentro de um componente `br-footer-category`.\n- Não deve ser declarado de forma isolada fora de uma categoria de rodapé.\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.",
|
|
1415
1435
|
"attributes": [
|
|
1416
1436
|
{
|
|
1417
1437
|
"name": "custom-id",
|
|
@@ -1433,7 +1453,7 @@
|
|
|
1433
1453
|
},
|
|
1434
1454
|
{
|
|
1435
1455
|
"name": "br-footer-legal",
|
|
1436
|
-
"description": "Para
|
|
1456
|
+
"description": "O componente `br-footer-legal` é o subcomponente do GovBR-DS que apresenta as informações de licenciamento aberto de conteúdo (como Creative Commons) e termos legais obrigatórios.\n\n### Para que serve\n\n- **Transparência jurídica:** Comunica a licença de uso dos dados e conteúdos do portal público.\n- **Fechamento de conformidade:** Atende às normas governamentais de publicação de páginas federais.\n\n### Papel na composição\n\nAtua como elemento informativo legal no rodapé.\n\n### Regra de uso e relacionamento\n\n- Deve ser posicionado na área base de menções legais do `br-footer`.\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.",
|
|
1437
1457
|
"attributes": [
|
|
1438
1458
|
{
|
|
1439
1459
|
"name": "custom-id",
|
|
@@ -1445,7 +1465,7 @@
|
|
|
1445
1465
|
},
|
|
1446
1466
|
{
|
|
1447
1467
|
"name": "br-footer-logo",
|
|
1448
|
-
"description": "Para a
|
|
1468
|
+
"description": "O componente `br-footer-logo` é o subcomponente do GovBR-DS responsável por renderizar a marca oficial do órgão ou a marca unificada do Governo Federal no rodapé.\n\n### Para que serve\n\n- **Assinatura institucional:** Reforça a autenticidade governamental no fechamento da página.\n- **Link oficial:** Permite redirecionar a pessoa usuária para o portal principal do Governo Federal ou do órgão.\n\n### Papel na composição\n\nAtua como elemento de identidade institucional no rodapé.\n\n### Regra de uso e relacionamento\n\n- Deve ser inserido na área ou slot de logotipo do `br-footer`.\n- Não deve ser utilizado fora do ecossistema de rodapé.\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.",
|
|
1449
1469
|
"attributes": [
|
|
1450
1470
|
{
|
|
1451
1471
|
"name": "custom-id",
|
|
@@ -1493,14 +1513,18 @@
|
|
|
1493
1513
|
},
|
|
1494
1514
|
{
|
|
1495
1515
|
"name": "br-footer-social",
|
|
1496
|
-
"description": "O
|
|
1516
|
+
"description": "O componente `br-footer-social` é o subcomponente do GovBR-DS que agrupa e renderiza atalhos e ícones para os canais oficiais de redes sociais da organização pública.\n\n### Para que serve\n\n- **Canais oficiais:** Facilita o acesso do cidadão às mídias sociais e de comunicação do órgão.\n- **Acessibilidade nos atalhos:** Fornece rótulos acessíveis e abertura segura de links externos.\n\n### Papel na composição\n\nAtua como bloco de engajamento social no rodapé.\n\n### Regra de uso e relacionamento\n\n- Deve ser inserido na área ou slot destinado a redes sociais do `br-footer`.\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`.",
|
|
1497
1517
|
"attributes": [
|
|
1498
1518
|
{
|
|
1499
1519
|
"name": "custom-id",
|
|
1500
1520
|
"description": "Identificador único do componente.\nQuando omitido, um valor é gerado automaticamente.\n\n> **Padrão:** valor único gerado por generateUniqueId().",
|
|
1501
1521
|
"values": []
|
|
1502
1522
|
},
|
|
1503
|
-
{
|
|
1523
|
+
{
|
|
1524
|
+
"name": "icon",
|
|
1525
|
+
"description": "Identificador da rede social. Os ícones oficiais mais comuns são\nrenderizados pelo registro SVG local; use o slot `icon` para uma fonte\ndiferente ou uma classe Font Awesome personalizada.",
|
|
1526
|
+
"values": []
|
|
1527
|
+
},
|
|
1504
1528
|
{
|
|
1505
1529
|
"name": "description",
|
|
1506
1530
|
"description": "Descrição do ícone da rede social",
|
|
@@ -1522,7 +1546,7 @@
|
|
|
1522
1546
|
},
|
|
1523
1547
|
{
|
|
1524
1548
|
"name": "br-header",
|
|
1525
|
-
"description": "
|
|
1549
|
+
"description": "O componente `br-header` é o orquestrador principal de cabeçalho do GovBR-DS. Centraliza a identidade visual do órgão ou sistema público, links de navegação hierárquica, atalhos de funcionalidades, mecanismo de busca e botão de acesso ou autenticação.\n\n### Para que serve\n\n- **Identidade institucional unificada:** Apresenta a marca e assinatura visual oficial do Governo Federal e da entidade pública.\n- **Navegação e atalhos rápidos:** Reúne links para áreas centrais e botões funcionais (como contraste, acessibilidade e suporte).\n- **Busca e autenticação integradas:** Fornece áreas reservadas e slots para barra de busca rápida e gatilho de login/acesso.\n- **Comportamento responsivo e densidades:** Adapta-se automaticamente a diferentes telas com suporte a densidades padrão, compacta, pequena e grande.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Desenvolver páginas, portais e sistemas públicos federais que requerem a barra superior padronizada do GovBR-DS.\n - For necessário integrar identidade visual, navegação rápida, busca e acesso em uma estrutura consistente.\n- **Evite e prefira outro componente quando:**\n - A navegação for exclusivamente lateral ou contextual interna de uma ferramenta gráfica (prefira `br-menu` ou barras de ferramentas específicas).\n\n### Composição e Subcomponentes\n\n| Subcomponente | Papel | Regra de uso |\n| --- | --- | --- |\n| `br-header` | **Orquestrador principal.** Estrutura as áreas superior e inferior, gerencia responsividade e densidade. | Deve ser declarado como elemento raiz do topo da página. |\n| `br-header-logo` | **Identidade visual.** Exibe o logotipo ou brasão institucional. | Posicionado nos slots `logo` ou `signature` do `br-header`. |\n| `br-header-list` | **Agrupador de lista.** Contêiner semântico horizontal para links ou funções. | Encaixa-se nos slots `links` ou `functions` do `br-header`. |\n| `br-header-link` | **Item de link.** Atalho ou hiperlink de navegação institucional. | Deve ser inserido dentro de um `br-header-list` no slot `links`. |\n| `br-header-function` | **Ação funcional.** Botão de utilidade rápida (contraste, ajuda, etc.). | Deve ser inserido dentro de um `br-header-list` no slot `functions`. |\n\n### Como os subcomponentes se relacionam\n\nO `br-header` orquestra as áreas da barra através de slots nomeados (`logo`, `signature`, `links`, `functions`, `search`, `access`, `menu-trigger`, `caption`, `subcaption`). Ele observa o tamanho de tela e a densidade configurada, reorganizando os blocos e delegando a exibição correta aos subcomponentes filhos.\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/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 canônico 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** - 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).",
|
|
1526
1550
|
"attributes": [
|
|
1527
1551
|
{
|
|
1528
1552
|
"name": "caption",
|
|
@@ -1541,7 +1565,7 @@
|
|
|
1541
1565
|
},
|
|
1542
1566
|
{
|
|
1543
1567
|
"name": "density",
|
|
1544
|
-
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura)
|
|
1568
|
+
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura).\n\nValores inválidos usam `medium`.",
|
|
1545
1569
|
"values": [{ "name": "HeaderDensity" }]
|
|
1546
1570
|
},
|
|
1547
1571
|
{
|
|
@@ -1556,7 +1580,7 @@
|
|
|
1556
1580
|
},
|
|
1557
1581
|
{
|
|
1558
1582
|
"name": "is-sticky",
|
|
1559
|
-
"description": "Fixa o cabeçalho no topo durante a rolagem.",
|
|
1583
|
+
"description": "Fixa o cabeçalho no topo durante a rolagem.\nQuando `compact` ou `is-compact` é definido explicitamente, o modo visual\npermanece fixo durante a rolagem. Sem essa configuração, o header sticky\nalterna automaticamente entre os modos compacto e expandido.",
|
|
1560
1584
|
"values": []
|
|
1561
1585
|
},
|
|
1562
1586
|
{
|
|
@@ -1599,7 +1623,7 @@
|
|
|
1599
1623
|
},
|
|
1600
1624
|
{
|
|
1601
1625
|
"name": "br-header-function",
|
|
1602
|
-
"description": "
|
|
1626
|
+
"description": "O componente `br-header-function` é o subcomponente do GovBR-DS que representa uma ação funcional ou utilitária rápida no cabeçalho (como alto contraste, atalhos de acessibilidade, suporte ou configurações).\n\n### Para que serve\n\n- **Ações utilitárias rápidas:** Permite disparar funcionalidades auxiliares com ícone e rótulo sem sair do fluxo da página.\n- **Feedback interativo:** Oferece estados visuais consistentes de foco, hover e ativação.\n\n### Papel na composição\n\nAtua como controle interativo de utilidade dentro do cabeçalho.\n\n### Regra de uso e relacionamento\n\n- Deve ser utilizado dentro de um `br-header-list` posicionado no slot `functions` do `br-header`.\n- Não deve ser utilizado como botão genérico de formulário ou ação primária de conteúdo (para esses casos, utilize `br-button`).\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.",
|
|
1603
1627
|
"attributes": [
|
|
1604
1628
|
{
|
|
1605
1629
|
"name": "custom-id",
|
|
@@ -1613,7 +1637,7 @@
|
|
|
1613
1637
|
},
|
|
1614
1638
|
{
|
|
1615
1639
|
"name": "icon-name",
|
|
1616
|
-
"description": "
|
|
1640
|
+
"description": "Identificador legado do ícone exibido. Nomes conhecidos são resolvidos pelo\nregistro SVG local; para novos usos, prefira o slot `icon` com um SVG, asset\nlocal ou elemento de ícone controlado pela aplicação.",
|
|
1617
1641
|
"values": []
|
|
1618
1642
|
},
|
|
1619
1643
|
{
|
|
@@ -1631,7 +1655,7 @@
|
|
|
1631
1655
|
},
|
|
1632
1656
|
{
|
|
1633
1657
|
"name": "br-header-link",
|
|
1634
|
-
"description": "Para a
|
|
1658
|
+
"description": "O componente `br-header-link` é o subcomponente de navegação do GovBR-DS que representa um atalho ou hiperlink de navegação institucional no cabeçalho.\n\n### Para que serve\n\n- **Navegação institucional:** Oferece acesso direto a páginas de serviços, portais correlatos ou áreas centrais do órgão.\n- **Integração SPA:** Suporta navegação web padrão via atributo `href` ou integração com roteadores SPA via eventos de navegação.\n\n### Papel na composição\n\nAtua como item folha de navegação dentro do cabeçalho.\n\n### Regra de uso e relacionamento\n\n- Deve ser utilizado dentro de um `br-header-list` posicionado no slot `links` do `br-header`.\n- Não deve ser utilizado de forma avulsa fora do ecossistema de cabeçalho.\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.",
|
|
1635
1659
|
"attributes": [
|
|
1636
1660
|
{
|
|
1637
1661
|
"name": "custom-id",
|
|
@@ -1654,7 +1678,7 @@
|
|
|
1654
1678
|
},
|
|
1655
1679
|
{
|
|
1656
1680
|
"name": "br-header-list",
|
|
1657
|
-
"description": "Para
|
|
1681
|
+
"description": "O componente `br-header-list` é o subcomponente contêiner do GovBR-DS que organiza links de navegação ou botões funcionais em uma estrutura de lista horizontal acessível.\n\n### Para que serve\n\n- **Agrupamento semântico:** Estrutura itens navegáveis ou funcionais em elementos de lista semânticos.\n- **Distribuição e espaçamento:** Garante o alinhamento horizontal padronizado de itens no cabeçalho.\n\n### Papel na composição\n\nAtua como elo intermediário entre o orquestrador `br-header` e os itens filhos individuais (`br-header-link` ou `br-header-function`).\n\n### Regra de uso e relacionamento\n\n- Deve ser inserido nos slots `links` ou `functions` do orquestrador `br-header`.\n- Serve de contêiner direto para subcomponentes `br-header-link` ou `br-header-function`.\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(): __** - 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.",
|
|
1658
1682
|
"attributes": [
|
|
1659
1683
|
{
|
|
1660
1684
|
"name": "custom-id",
|
|
@@ -1671,7 +1695,7 @@
|
|
|
1671
1695
|
},
|
|
1672
1696
|
{
|
|
1673
1697
|
"name": "br-header-logo",
|
|
1674
|
-
"description": "Para a
|
|
1698
|
+
"description": "O componente `br-header-logo` é o subcomponente do GovBR-DS responsável por renderizar a marca visual oficial ou a assinatura do órgão dentro do cabeçalho.\n\n### Para que serve\n\n- **Exibição de marca:** Apresenta a imagem ou logotipo institucional no topo da página.\n- **Link de retorno:** Permite associar um link à marca, direcionando a pessoa usuária à página inicial do portal ou sistema.\n\n### Papel na composição\n\nAtua como elemento de identidade visual no cabeçalho. Não gerencia a estrutura do topo nem as ações utilitárias, papel reservado ao orquestrador `br-header`.\n\n### Regra de uso e relacionamento\n\n- Deve ser utilizado posicionado preferencialmente no slot `logo` ou `signature` do componente orquestrador `br-header`.\n- Não deve ser utilizado isoladamente fora do contexto de cabeçalho institucional.\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.",
|
|
1675
1699
|
"attributes": [
|
|
1676
1700
|
{
|
|
1677
1701
|
"name": "custom-id",
|
|
@@ -1695,12 +1719,12 @@
|
|
|
1695
1719
|
},
|
|
1696
1720
|
{
|
|
1697
1721
|
"name": "target",
|
|
1698
|
-
"description": "Target do link quando href é fornecido
|
|
1722
|
+
"description": "Target do link quando href é fornecido.\nAceita `_self`, `_blank`, `_parent` ou `_top`. Valores inválidos usam `_self`.",
|
|
1699
1723
|
"values": [{ "name": "BrLinkTarget" }]
|
|
1700
1724
|
},
|
|
1701
1725
|
{
|
|
1702
1726
|
"name": "navigation-mode",
|
|
1703
|
-
"description": "Controla como o componente integra a navegação mantendo `href` real no elemento navegável.\n- `native` (padrão): preserva o comportamento do navegador, conforme HTML/W3C.\n- `event`: emite `brNavigate`; se o evento for cancelado, bloqueia a navegação nativa para a SPA assumir.\nCliques com modificadores, botão do meio ou `target` diferente de `_self` permanecem nativos
|
|
1727
|
+
"description": "Controla como o componente integra a navegação mantendo `href` real no elemento navegável.\n- `native` (padrão): preserva o comportamento do navegador, conforme HTML/W3C.\n- `event`: emite `brNavigate`; se o evento for cancelado, bloqueia a navegação nativa para a SPA assumir.\nCliques com modificadores, botão do meio ou `target` diferente de `_self` permanecem nativos.\nValores inválidos usam `native`.",
|
|
1704
1728
|
"values": [{ "name": "BrNavigationMode" }]
|
|
1705
1729
|
},
|
|
1706
1730
|
{ "name": "src", "description": "Url da logo padrão.", "values": [] },
|
|
@@ -1711,7 +1735,7 @@
|
|
|
1711
1735
|
},
|
|
1712
1736
|
{
|
|
1713
1737
|
"name": "br-icon",
|
|
1714
|
-
"description": "O componente `br-icon`
|
|
1738
|
+
"description": "O componente `br-icon` é o elemento oficial do GovBR-DS para renderização dinâmica e padronizada de ícones vetoriais. Ele suporta a família tipográfica Font Awesome e ícones utilitários do governo, garantindo contraste, escalabilidade e acessibilidade visual.\n\n### Para que serve\n\n- **Comunicação visual imediata:** Fornece apoio gráfico rápido para ações em botões, links, cartões, menus e alertas contextuais.\n- **Acessibilidade nativa:** Gerencia automaticamente a visibilidade para leitores de tela: ícones decorativos recebem `aria-hidden=\"true\"`, enquanto ícones informativos recebem nome acessível via `aria-label`.\n- **Flexibilidade dimensional e cromática:** Permite personalizar tamanho, cor através de tokens CSS do GovBR-DS, rotação e efeitos de espelhamento.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - For necessário reforçar o significado de um texto ou ação com uma representação gráfica familiar.\n - Criar controles compactos com ícone acompanhado de descrição acessível.\n- **Evite e prefira outro componente quando:**\n - For necessária uma imagem fotográfica ou ilustração visual ampla com detalhes cromáticos complexos (prefira tags HTML `<img>` ou SVG ilustrativo).\n\n### Estrutura e Slots\n\nO `br-icon` renderiza um elemento vetorial direto com base no atributo `name` informado ou através de classes utilitárias.\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/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.",
|
|
1715
1739
|
"attributes": [
|
|
1716
1740
|
{
|
|
1717
1741
|
"name": "label",
|
|
@@ -1720,7 +1744,7 @@
|
|
|
1720
1744
|
},
|
|
1721
1745
|
{
|
|
1722
1746
|
"name": "icon-name",
|
|
1723
|
-
"description": "
|
|
1747
|
+
"description": "Identificador legado do ícone. Identificadores que pertencem ao registro local são\nrenderizados como SVG empacotado; nomes desconhecidos continuam disponíveis via Iconify\nsomente para compatibilidade.",
|
|
1724
1748
|
"values": []
|
|
1725
1749
|
},
|
|
1726
1750
|
{
|
|
@@ -1730,12 +1754,12 @@
|
|
|
1730
1754
|
},
|
|
1731
1755
|
{
|
|
1732
1756
|
"name": "svg",
|
|
1733
|
-
"description": "Conteúdo SVG inline a ser renderizado como ícone.\n\nUse apenas SVGs confiáveis e sanitizados pela aplicação.",
|
|
1757
|
+
"description": "Conteúdo SVG inline a ser renderizado como ícone.\n\nUse apenas SVGs confiáveis e sanitizados pela aplicação.\nPasse o conteúdo por property binding para evitar serialização no atributo.",
|
|
1734
1758
|
"values": []
|
|
1735
1759
|
},
|
|
1736
1760
|
{
|
|
1737
1761
|
"name": "source",
|
|
1738
|
-
"description": "Define explicitamente a origem do ícone.\nQuando `auto`, o componente prioriza slot, SVG inline e imagem por URL.\nIconify fica apenas como fallback de compatibilidade quando nenhuma fonte própria foi informada
|
|
1762
|
+
"description": "Define explicitamente a origem do ícone.\nQuando `auto`, o componente prioriza slot, SVG inline e imagem por URL.\nIconify fica apenas como fallback de compatibilidade quando nenhuma fonte própria foi informada.\nAceita `auto`, `iconify`, `image`, `svg` ou `slot`; valores inválidos usam `auto`.",
|
|
1739
1763
|
"values": [{ "name": "IconSource" }]
|
|
1740
1764
|
},
|
|
1741
1765
|
{
|
|
@@ -1770,12 +1794,12 @@
|
|
|
1770
1794
|
},
|
|
1771
1795
|
{
|
|
1772
1796
|
"name": "rotate",
|
|
1773
|
-
"description": "Define o ângulo de rotação do ícone.",
|
|
1797
|
+
"description": "Define o ângulo de rotação do ícone.\nAceita `90deg`, `180deg` ou `270deg`; valores inválidos são ignorados.",
|
|
1774
1798
|
"values": [{ "name": "IconRotate" }]
|
|
1775
1799
|
},
|
|
1776
1800
|
{
|
|
1777
1801
|
"name": "flip",
|
|
1778
|
-
"description": "Define o tipo de espelhamento do ícone.",
|
|
1802
|
+
"description": "Define o tipo de espelhamento do ícone.\nAceita `horizontal` ou `vertical`; valores inválidos são ignorados.",
|
|
1779
1803
|
"values": [{ "name": "IconFlip" }]
|
|
1780
1804
|
},
|
|
1781
1805
|
{
|
|
@@ -1798,7 +1822,7 @@
|
|
|
1798
1822
|
},
|
|
1799
1823
|
{
|
|
1800
1824
|
"name": "br-input",
|
|
1801
|
-
"description": "
|
|
1825
|
+
"description": "O componente `br-input` é o controle padrão do GovBR-DS para entrada de dados textuais em linha única. Totalmente integrado à validação nativa de formulários HTML via `ElementInternals` (`formAssociated`), ele suporta múltiplos tipos de entrada, máscaras e formatação.\n\n### Para que serve\n\n- **Captura de dados curtos em formulários:** Entrada de textos, senhas, endereços de e-mail, números, telefones, documentos e termos de busca.\n- **Alternância de visualização de senha:** No tipo `type=\"password\"`, oferece botão embutido para alternar entre texto visível e caracteres mascarados com feedback acessível.\n- **Validação e mensagens contextuais:** Comunica valor, validade e mensagens de erro ou orientação diretamente ao formulário HTML e leitores de tela.\n- **Densidade e ícones de apoio:** Suporta diferentes densidades visuais (alta, média e baixa) e ícones prefixados ou sufixados para enriquecer a experiência.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - A informação digitada couber em uma única linha (ex.: nome, CPF, e-mail, valor monetário, busca).\n- **Evite e prefira outro componente quando:**\n - O texto for extenso ou exigir múltiplas linhas (prefira `br-textarea`).\n - A escolha for feita a partir de uma lista pré-determinada de opções (prefira `br-select`, `br-radio` ou `br-checkbox`).\n - O valor for uma data ou hora estruturada (prefira `br-datetime-picker`).\n\n### Estrutura e Slots\n\nO `br-input` é composto pelo campo de entrada e slots de apoio:\n- `icon`: Slot para ícone de apoio visual (prefixado ou sufixado ao campo de digitação).\n- `feedback`: Slot para exibição de mensagens de validação contextual (como `br-message`).\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/input?tab=designer).\n---\n\n\n### **Events:**\n - **valueChange** - Valor atualizado do input\n- **brClear** - Emitted when the input clear button action is triggered.\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- **help-text** - Texto de ajuda ou slot de ajuda.\n- **feedback** - Slot de feedback.",
|
|
1802
1826
|
"attributes": [
|
|
1803
1827
|
{
|
|
1804
1828
|
"name": "type",
|
|
@@ -1812,7 +1836,7 @@
|
|
|
1812
1836
|
},
|
|
1813
1837
|
{
|
|
1814
1838
|
"name": "density",
|
|
1815
|
-
"description": "Ajusta a densidade, alterando o espaçamento interno para um visual mais compacto ou mais expandido
|
|
1839
|
+
"description": "Ajusta a densidade, alterando o espaçamento interno para um visual mais compacto ou mais expandido.\nAceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.",
|
|
1816
1840
|
"values": [{ "name": "InputDensity" }]
|
|
1817
1841
|
},
|
|
1818
1842
|
{
|
|
@@ -1912,22 +1936,22 @@
|
|
|
1912
1936
|
},
|
|
1913
1937
|
{
|
|
1914
1938
|
"name": "min",
|
|
1915
|
-
"description": "Define o valor mínimo para campos de entrada numéricos.",
|
|
1939
|
+
"description": "Define o valor mínimo para campos de entrada numéricos. Deve ser um número finito;\nvalores inválidos são ignorados.",
|
|
1916
1940
|
"values": []
|
|
1917
1941
|
},
|
|
1918
1942
|
{
|
|
1919
1943
|
"name": "max",
|
|
1920
|
-
"description": "Define o valor máximo para campos de entrada numéricos.",
|
|
1944
|
+
"description": "Define o valor máximo para campos de entrada numéricos. Deve ser um número finito;\nvalores inválidos são ignorados.",
|
|
1921
1945
|
"values": []
|
|
1922
1946
|
},
|
|
1923
1947
|
{
|
|
1924
1948
|
"name": "minlength",
|
|
1925
|
-
"description": "Define o comprimento mínimo do valor do campo de entrada.",
|
|
1949
|
+
"description": "Define o comprimento mínimo do valor do campo de entrada. Deve ser um inteiro não negativo;\nvalores inválidos são ignorados.",
|
|
1926
1950
|
"values": []
|
|
1927
1951
|
},
|
|
1928
1952
|
{
|
|
1929
1953
|
"name": "maxlength",
|
|
1930
|
-
"description": "Define o comprimento máximo do valor do campo de entrada.",
|
|
1954
|
+
"description": "Define o comprimento máximo do valor do campo de entrada. Deve ser um inteiro não negativo;\nvalores inválidos são ignorados.",
|
|
1931
1955
|
"values": []
|
|
1932
1956
|
},
|
|
1933
1957
|
{
|
|
@@ -1937,12 +1961,12 @@
|
|
|
1937
1961
|
},
|
|
1938
1962
|
{
|
|
1939
1963
|
"name": "pattern",
|
|
1940
|
-
"description": "
|
|
1964
|
+
"description": "Expressão regular usada para validar o valor final, sem alterar o texto digitado.\nDiferentemente de `mask`, esta prop valida, mas não formata a entrada.",
|
|
1941
1965
|
"values": []
|
|
1942
1966
|
},
|
|
1943
1967
|
{
|
|
1944
1968
|
"name": "mask",
|
|
1945
|
-
"description": "
|
|
1969
|
+
"description": "Formata o valor durante a digitação; use `#` para marcar posições numéricas.\nDiferentemente de `pattern`, esta prop não substitui uma regra de validação.",
|
|
1946
1970
|
"values": []
|
|
1947
1971
|
},
|
|
1948
1972
|
{
|
|
@@ -1952,7 +1976,7 @@
|
|
|
1952
1976
|
},
|
|
1953
1977
|
{
|
|
1954
1978
|
"name": "step",
|
|
1955
|
-
"description": "Define o valor do passo para campos de entrada numéricos.",
|
|
1979
|
+
"description": "Define o valor do passo para campos de entrada numéricos. Deve ser um número finito maior que 0;\nvalores inválidos são ignorados.",
|
|
1956
1980
|
"values": []
|
|
1957
1981
|
},
|
|
1958
1982
|
{
|
|
@@ -1962,7 +1986,7 @@
|
|
|
1962
1986
|
},
|
|
1963
1987
|
{
|
|
1964
1988
|
"name": "action-tab-index",
|
|
1965
|
-
"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).",
|
|
1989
|
+
"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.",
|
|
1966
1990
|
"values": []
|
|
1967
1991
|
}
|
|
1968
1992
|
],
|
|
@@ -1970,7 +1994,7 @@
|
|
|
1970
1994
|
},
|
|
1971
1995
|
{
|
|
1972
1996
|
"name": "br-item",
|
|
1973
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
1997
|
+
"description": "O componente `br-item` é o elemento flexível e padronizado do GovBR-DS para construção de linhas navegáveis, selecionáveis ou de exibição em listas, menus contextuais e painéis suspensos.\n\n### Para que serve\n\n- **Padronização de linhas interativas:** Garante espaçamento, tipografia, contraste e efeitos de estado (hover, foco visível, seleção e desativação) em conformidade com os tokens do design system.\n- **Polimorfismo semântico:** Pode renderizar internamente um botão interativo (`<button>`), um hiperlink navegável (`<a>`) ou uma divisão semântica (`<div>`) dependendo dos atributos fornecidos (`href`, `clickable`).\n- **Suporte a seleção visual:** Oferece suporte a estados de seleção (`selected`), marcas de verificação e densidades ajustáveis.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Estiver montando linhas de conteúdo em listas (`br-list`), painéis flutuantes (`br-dropdown`) ou agrupamentos verticais.\n - Cada entrada representar um item de dado ou uma ação com estilo homogêneo.\n- **Evite e prefira outro componente quando:**\n - O item pertencer especificamente à navegação de abas (use `br-tab-item`), etapas de fluxo (use `br-step-item`) ou seleção em formulário (use `br-select-option`).\n\n### Estrutura e Slots\n\nO `br-item` é um componente estrutural direto:\n- `default`: Slot para inserção do conteúdo livre da linha (textos, ícones, badges ou metadados).\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/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 canônico 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 canônico 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).",
|
|
1974
1998
|
"attributes": [
|
|
1975
1999
|
{
|
|
1976
2000
|
"name": "disabled",
|
|
@@ -1999,7 +2023,7 @@
|
|
|
1999
2023
|
},
|
|
2000
2024
|
{
|
|
2001
2025
|
"name": "selected",
|
|
2002
|
-
"description": "Estado selecionado canônico.
|
|
2026
|
+
"description": "Estado selecionado canônico. Em itens interativos, também é atualizado pelo acionamento.",
|
|
2003
2027
|
"values": []
|
|
2004
2028
|
},
|
|
2005
2029
|
{
|
|
@@ -2049,7 +2073,7 @@
|
|
|
2049
2073
|
},
|
|
2050
2074
|
{
|
|
2051
2075
|
"name": "density",
|
|
2052
|
-
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura)
|
|
2076
|
+
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura).\n\nValores inválidos usam `medium`.",
|
|
2053
2077
|
"values": [{ "name": "BrDensity" }]
|
|
2054
2078
|
}
|
|
2055
2079
|
],
|
|
@@ -2057,7 +2081,7 @@
|
|
|
2057
2081
|
},
|
|
2058
2082
|
{
|
|
2059
2083
|
"name": "br-link",
|
|
2060
|
-
"description": "
|
|
2084
|
+
"description": "O componente `br-link` é o controle oficial de hiperlink do GovBR-DS, projetado para orientar e conduzir a pessoa usuária em navegações internas entre páginas ou encaminhamentos para destinos externos.\n\n### Para que serve\n\n- **Navegação estruturada:** Conduz o usuário para novas URLs, rotas de aplicação, âncoras dentro da mesma página ou arquivos para download.\n- **Identificação de links externos:** Permite sinalizar visualmente que o link aponta para um domínio externo ou abre em nova aba/janela, adicionando os atributos de segurança e acessibilidade necessários (`target=\"_blank\"`, `rel=\"noopener noreferrer\"`).\n- **Estilos inline e de bloco:** Adapta-se ao fluxo de leitura textual em parágrafos ou como elemento de navegação isolado com suporte a ícones.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - A ação resultar na alteração da URL do navegador, navegação para outra página ou download de arquivo.\n- **Evite e prefira outro componente quando:**\n - A ação disparar um comportamento na interface sem alterar a URL (como abrir modal, submeter formulário ou acionar filtro): prefira `br-button`.\n\n### Estrutura e Slots\n\nO `br-link` é um componente autônomo:\n- `default`: Slot para o texto do link, ícones auxiliares ou elementos combinados.\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/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)`.",
|
|
2061
2085
|
"attributes": [
|
|
2062
2086
|
{
|
|
2063
2087
|
"name": "href",
|
|
@@ -2104,7 +2128,11 @@
|
|
|
2104
2128
|
"description": "Controla como o componente integra a navegação mantendo `href` real no elemento navegável.\n- `native` (padrão): preserva o comportamento do navegador, conforme HTML/W3C.\n- `event`: emite `brNavigate`; se o evento for cancelado, bloqueia a navegação nativa para a SPA assumir.\nCliques com modificadores, botão do meio ou `target` diferente de `_self` permanecem nativos.",
|
|
2105
2129
|
"values": [{ "name": "BrNavigationMode" }]
|
|
2106
2130
|
},
|
|
2107
|
-
{
|
|
2131
|
+
{
|
|
2132
|
+
"name": "is-spa-link-behavior",
|
|
2133
|
+
"description": "Ativa o comportamento legado de navegação SPA, interceptando cliques simples\npara atualizar o histórico e emitir `brSpaNavigate`.",
|
|
2134
|
+
"values": []
|
|
2135
|
+
},
|
|
2108
2136
|
{
|
|
2109
2137
|
"name": "disabled",
|
|
2110
2138
|
"description": "Desativa o link, tornando-o não interativo.\nQuando `true`: remove o `href` (um `<a>` sem `href` sai da ordem de\ntabulação e não recebe foco, nem por clique), marca `aria-disabled=\"true\"`\ne bloqueia o clique (sem navegação nem emissão de `brNavigate`).\nSe o link estiver focado no momento da desativação, o foco é removido.\nÚtil para componentes como `br-pagination` e `br-wizard`.",
|
|
@@ -2185,7 +2213,7 @@
|
|
|
2185
2213
|
},
|
|
2186
2214
|
{
|
|
2187
2215
|
"name": "br-list",
|
|
2188
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
2216
|
+
"description": "O componente `br-list` é o contêiner estrutural do GovBR-DS desenvolvido para apresentar coleções verticais de itens homogêneos ou relacionados de forma organizada, fácil de percorrer visualmente e acessível.\n\n### Para que serve\n\n- **Apresentação sequencial de informações:** Organiza listagens de dados, tarefas, configurações, opções de navegação ou mensagens.\n- **Cabeçalho e ações integradas:** Suporta cabeçalho contextual (`header`) para exibição de título da lista, contadores de itens ou botões de ação em lote.\n- **Composição com itens padronizados:** Integra-se perfeitamente com elementos `br-item` e divisores `br-divider`, mantendo ritmo visual e alinhamento consistentes.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Desejar exibir uma sequência vertical de itens que compartilham a mesma estrutura ou propósito.\n - O conteúdo favorecer leitura linear ou seleção de uma linha e precisar ser percorrido visualmente com rapidez.\n- **Evite e prefira outro componente quando:**\n - As informações forem tabulares com múltiplas colunas e necessidade de ordenação por coluna (prefira `br-table`).\n - A lista representar o menu principal de navegação do sistema (prefira `br-menu`).\n\n### Estrutura e Slots\n\nO `br-list` atua como contêiner de itens:\n- `header`: Slot opcional para cabeçalho da lista (título, filtros ou ações globais).\n- `default`: Slot principal onde são inseridos os elementos filhos (como `br-item` ou divs semânticas).\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/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.",
|
|
2189
2217
|
"attributes": [
|
|
2190
2218
|
{
|
|
2191
2219
|
"name": "header",
|
|
@@ -2199,7 +2227,7 @@
|
|
|
2199
2227
|
},
|
|
2200
2228
|
{
|
|
2201
2229
|
"name": "orientation",
|
|
2202
|
-
"description": "Orientação canônica. Quando informada, tem precedência sobre `isHorizontal`.",
|
|
2230
|
+
"description": "Orientação canônica. Quando informada, tem precedência sobre `isHorizontal`; valores inválidos usam `vertical`.",
|
|
2203
2231
|
"values": [{ "name": "horizontal" }, { "name": "vertical" }]
|
|
2204
2232
|
},
|
|
2205
2233
|
{
|
|
@@ -2219,22 +2247,22 @@
|
|
|
2219
2247
|
},
|
|
2220
2248
|
{
|
|
2221
2249
|
"name": "collapse",
|
|
2222
|
-
"description": "
|
|
2250
|
+
"description": "Torna a lista recolhível: o corpo é envolvido por um `br-collapse` interno\nque abre e fecha ao acionar o cabeçalho. Começa recolhida.\n\nRequer um cabeçalho (atributo `header` ou slot `header`) — ele é o acionador.\nSem cabeçalho não há como recolher.\n\nPara \"apenas uma aberta por vez\" entre listas, use `accordion`.",
|
|
2223
2251
|
"values": []
|
|
2224
2252
|
},
|
|
2225
2253
|
{
|
|
2226
2254
|
"name": "accordion",
|
|
2227
|
-
"description": "
|
|
2255
|
+
"description": "Título do grupo de accordion. `br-list` irmãs (mesmo elemento-pai) com o\nmesmo valor formam um grupo e mantêm apenas uma aberta por vez — abrir uma\nfecha as demais do grupo.\n\nSozinha já torna a lista recolhível (não precisa de `collapse`) e, como o\n`collapse`, exige um cabeçalho (`header` ou slot `header`) como acionador.\nComeça recolhida.",
|
|
2228
2256
|
"values": []
|
|
2229
2257
|
},
|
|
2230
2258
|
{
|
|
2231
2259
|
"name": "list-role",
|
|
2232
|
-
"description": "Semântica do host quando o conteúdo não representa itens de lista.",
|
|
2260
|
+
"description": "Semântica do host quando o conteúdo não representa itens de lista. Valores inválidos usam `list`.",
|
|
2233
2261
|
"values": [{ "name": "list" }, { "name": "group" }]
|
|
2234
2262
|
},
|
|
2235
2263
|
{
|
|
2236
2264
|
"name": "density",
|
|
2237
|
-
"description": "Modificador de densidade da lista.",
|
|
2265
|
+
"description": "Modificador de densidade da lista. Aceita `small`, `medium` ou `large`.\nValores inválidos usam `medium`. Quando omitida ou `null`, nenhuma densidade é aplicada.",
|
|
2238
2266
|
"values": [
|
|
2239
2267
|
{ "name": "small" },
|
|
2240
2268
|
{ "name": "medium" },
|
|
@@ -2246,11 +2274,11 @@
|
|
|
2246
2274
|
},
|
|
2247
2275
|
{
|
|
2248
2276
|
"name": "br-loading",
|
|
2249
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
2277
|
+
"description": "O componente `br-loading` é o indicador de carregamento e progresso do GovBR-DS, utilizado para informar visualmente e de forma acessível que uma operação assíncrona está em execução no sistema.\n\n### Para que serve\n\n- **Feedback de processamento:** Alerta a pessoa usuária de que uma requisição, cálculo ou carregamento de dados está ocorrendo, evitando múltiplos cliques acidentais.\n- **Modo spinner (indeterminado):** Indicador circular contínuo para operações de duração imprevisível.\n- **Modo progress (determinado):** Indicador com percentual explícito (0 a 100%) para downloads, uploads ou tarefas com progresso mensurável, suportando ação de cancelamento.\n- **Acessibilidade para tecnologias assistivas:** Comunica o estado de carregamento através de regiões acessíveis (`aria-live=\"polite\"` e papéis `progressbar` ou `status`).\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Uma operação assíncrona demorar mais de 300 a 500 milissegundos para responder.\n - Durante o envio de formulários volumosos, processamento de arquivos ou transição de telas pesadas.\n- **Evite e prefira outro componente quando:**\n - A resposta for quase instantânea (menos de 300ms), para evitar piscamento rápido de tela que cause desconforto visual.\n - A espera ocorrer dentro de um botão durante o clique (use a prop `loading` do próprio `br-button`).\n\n### Estrutura e Slots\n\nO `br-loading` oferece slots para personalização:\n- `label`: Slot para rótulo ou mensagem descritiva do carregamento (substitui a prop `label`).\n- `cancel-button`: Slot para botão customizado de cancelamento no modo `progress`.\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/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 canônico emitido quando o loading é exibido.\n- **brDidHide** - Notifica que o componente foi ocultado.\n- **brLoadingHide** - Evento canônico 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_): __** - Define o valor do progresso.\n- **incrementValue(step): __** - Soma um valor ao progresso atual.\n- **complete(): __** - Define o progresso como concluído.\n- **reset(): __** - Reinicia o progresso e exibe o componente.\n- **show(): __** - Exibe o componente.\n- **hide(): __** - 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.",
|
|
2250
2278
|
"attributes": [
|
|
2251
2279
|
{
|
|
2252
2280
|
"name": "label-position",
|
|
2253
|
-
"description": "Define a posição da label em relação ao loading.",
|
|
2281
|
+
"description": "Define a posição da label em relação ao loading. Valores inválidos usam `bottom`.",
|
|
2254
2282
|
"values": [{ "name": "LoadingLabelPosition" }]
|
|
2255
2283
|
},
|
|
2256
2284
|
{
|
|
@@ -2260,7 +2288,7 @@
|
|
|
2260
2288
|
},
|
|
2261
2289
|
{
|
|
2262
2290
|
"name": "mode",
|
|
2263
|
-
"description": "Define o modo de exibição do componente.",
|
|
2291
|
+
"description": "Define o modo de exibição do componente. Valores inválidos usam `spinner`.",
|
|
2264
2292
|
"values": [{ "name": "LoadingMode" }]
|
|
2265
2293
|
},
|
|
2266
2294
|
{
|
|
@@ -2270,7 +2298,7 @@
|
|
|
2270
2298
|
},
|
|
2271
2299
|
{
|
|
2272
2300
|
"name": "density",
|
|
2273
|
-
"description": "Densidade visual canônica. Quando informada, tem precedência sobre `size`.",
|
|
2301
|
+
"description": "Densidade visual canônica. Quando informada, tem precedência sobre `size`.\nAceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.",
|
|
2274
2302
|
"values": [{ "name": "LoadingSize" }]
|
|
2275
2303
|
},
|
|
2276
2304
|
{
|
|
@@ -2280,7 +2308,7 @@
|
|
|
2280
2308
|
},
|
|
2281
2309
|
{
|
|
2282
2310
|
"name": "speed",
|
|
2283
|
-
"description": "Define a velocidade da animação/transição.",
|
|
2311
|
+
"description": "Define a velocidade da animação/transição. Valores inválidos usam `normal`.",
|
|
2284
2312
|
"values": [{ "name": "LoadingSpeed" }]
|
|
2285
2313
|
},
|
|
2286
2314
|
{
|
|
@@ -2290,12 +2318,12 @@
|
|
|
2290
2318
|
},
|
|
2291
2319
|
{
|
|
2292
2320
|
"name": "value",
|
|
2293
|
-
"description": "Define o progresso no modo `progress`.\nNo modo `spinner`, esta prop não tem efeito.\nValores
|
|
2321
|
+
"description": "Define o progresso no modo `progress`.\nNo modo `spinner`, esta prop não tem efeito.\nValores não numéricos usam `0`; valores fora de `0`–`100` são limitados ao intervalo.",
|
|
2294
2322
|
"values": []
|
|
2295
2323
|
},
|
|
2296
2324
|
{
|
|
2297
2325
|
"name": "completion",
|
|
2298
|
-
"description": "Define o comportamento quando o progresso atinge 100
|
|
2326
|
+
"description": "Define o comportamento quando o progresso atinge 100. Valores inválidos usam `persist`.\nNo modo `spinner`, esta prop não tem efeito.",
|
|
2299
2327
|
"values": [{ "name": "LoadingCompletionBehavior" }]
|
|
2300
2328
|
},
|
|
2301
2329
|
{
|
|
@@ -2313,7 +2341,7 @@
|
|
|
2313
2341
|
},
|
|
2314
2342
|
{
|
|
2315
2343
|
"name": "br-magic-button",
|
|
2316
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
2344
|
+
"description": "O componente `br-magic-button` é o botão de ação flutuante (Floating Action Button - FAB) do GovBR-DS, projetado para destacar a ação primária ou mais relevante da tela, mantendo-se acessível e visível durante a navegação.\n\n### Para que serve\n\n- **Destaque da ação principal:** Cria um ponto focal imediato para a ação central de uma tela (ex.: \"Nova mensagem\", \"Criar solicitação\", \"Adicionar item\").\n- **Posicionamento persistente ou integrado:** Pode ser fixado em um canto da tela (em dispositivos móveis) ou posicionado no fluxo de leitura de painéis e tabelas.\n- **Modos circular e expandido:** Suporta visual circular compacto com ícone ou versão expandida com texto explicativo.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Houver uma única ação dominante que represente o principal objetivo da pessoa usuária naquela tela.\n - Em aplicações móveis ou responsivas que necessitem de um atalho de fácil alcance para os polegares.\n- **Evite e prefira outro componente quando:**\n - Houver múltiplas ações de importância equivalente (prefira uma barra de botões com `br-button`).\n - A ação for secundária, destrutiva ou de cancelamento.\n\n### Estrutura e Slots\n\nO `br-magic-button` é um controle direto:\n- `default`: Slot para rótulo de texto ou conteúdo interno do botão.\n- `icon`: Slot para personalização do ícone de ação (como `br-icon`).\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/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.",
|
|
2317
2345
|
"attributes": [
|
|
2318
2346
|
{
|
|
2319
2347
|
"name": "custom-id",
|
|
@@ -2327,12 +2355,12 @@
|
|
|
2327
2355
|
},
|
|
2328
2356
|
{
|
|
2329
2357
|
"name": "icon",
|
|
2330
|
-
"description": "
|
|
2358
|
+
"description": "Identificador legado do ícone a ser exibido.\nNomes simples (por exemplo, `question`) são resolvidos pelo registro SVG local.\nPara classes CSS ou SVGs personalizados, prefira o slot `icon`.",
|
|
2331
2359
|
"values": []
|
|
2332
2360
|
},
|
|
2333
2361
|
{
|
|
2334
2362
|
"name": "density",
|
|
2335
|
-
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura)
|
|
2363
|
+
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura).\n\nValores inválidos usam `medium`.",
|
|
2336
2364
|
"values": [{ "name": "BrDensity" }]
|
|
2337
2365
|
},
|
|
2338
2366
|
{
|
|
@@ -2350,7 +2378,7 @@
|
|
|
2350
2378
|
},
|
|
2351
2379
|
{
|
|
2352
2380
|
"name": "br-menu",
|
|
2353
|
-
"description": "
|
|
2381
|
+
"description": "O componente `br-menu` é o orquestrador completo de navegação lateral (drawer/sidebar) do GovBR-DS. Estrutura a navegação multinível de portais e sistemas públicos, oferecendo suporte a hierarquias em árvore, agrupamentos, busca interna, informações do usuário e canais sociais.\n\n### Para que serve\n\n- **Navegação estruturada em árvore:** Permite navegar por hierarquias profundas de seções e subsistemas governamentais.\n- **Modos responsivos:** Suporta exibição fixa/lateral no desktop e painel retrátil suspenso com cortina de fundo (`br-scrim`) em telas mobile.\n- **Acessibilidade completa:** Gerencia controle de foco por teclado, armadilha de foco (trap focus) quando aberto e atributos WAI-ARIA (`aria-expanded`, `role=\"dialog\"` ou `role=\"navigation\"`).\n- **Navegação multinível fluida:** Oferece transições suaves entre níveis hierárquicos com botões de retorno ao nível anterior.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - A aplicação ou portal exigir uma estrutura de navegação lateral abrangente, com menus de múltiplos níveis e categorias.\n - Houver necessidade de um menu que possa ser recolhido ou deslizado em dispositivos móveis com controle de foco integrado.\n- **Evite e prefira outro componente quando:**\n - A navegação tiver poucos itens e puder ser acomodada confortavelmente apenas no cabeçalho (prefira `br-header`).\n - O objetivo for alternar visualizações na mesma tela de forma plana (prefira `br-tab`).\n\n### Composição e Subcomponentes\n\n| Subcomponente | Papel | Regra de uso |\n| --- | --- | --- |\n| `br-menu` | **Orquestrador principal.** Gerencia estado aberto/fechado, navegação multinível, scrim e armadilha de foco. | Deve ser declarado como contêiner principal da navegação lateral. |\n| `br-menu-header` | **Cabeçalho do menu.** Exibe título e botão de fechar o painel. | Inserido no topo do `br-menu`. |\n| `br-menu-group` | **Agrupador temático.** Agrupa itens sob um subtítulo de seção. | Inserido no corpo de navegação do `br-menu`. |\n| `br-menu-list` | **Lista de opções.** Estrutura semântica de lista contendo itens navegáveis. | Inserido no `br-menu` ou dentro de um `br-menu-group`. |\n| `br-menu-item` | **Item de menu.** Opção clicável de rota ou gatilho para submenu. | Deve ser utilizado dentro de um `br-menu-list`. |\n| `br-menu-link` | **Hiperlink.** Link textual padronizado no menu. | Inserido dentro de `br-menu-item` ou seções de apoio. |\n| `br-menu-info` | **Informações de apoio.** Exibe dados de sessão, versão ou contexto do sistema. | Posicionado na base ou topo do `br-menu`. |\n| `br-menu-logo` | **Logotipo.** Exibe a marca do órgão no interior do menu. | Posicionado no cabeçalho ou topo do `br-menu`. |\n| `br-menu-social` | **Redes sociais.** Bloco de canais sociais oficiais no menu. | Posicionado preferencialmente no rodapé do `br-menu`. |\n\n### Como os subcomponentes se relacionam\n\nO `br-menu` atua como o orquestrador soberano da navegação. Ele controla a transição de visibilidade, a ativação do scrim de fundo e o comportamento dos subníveis. Ao navegar entre níveis, os itens (`br-menu-item`) comunicam suas seleções ao `br-menu`, que desliza os painéis correspondentes e mantém a ordem correta de tabulação do teclado.\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/menu?tab=designer).\n---\n\n\n### **Events:**\n - **brMenuStateChange** - Evento emitido quando o menu abre ou fecha.\n- **brMenuOpenChange** - Evento canônico 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.",
|
|
2354
2382
|
"attributes": [
|
|
2355
2383
|
{
|
|
2356
2384
|
"name": "custom-id",
|
|
@@ -2359,7 +2387,7 @@
|
|
|
2359
2387
|
},
|
|
2360
2388
|
{
|
|
2361
2389
|
"name": "breakpoints",
|
|
2362
|
-
"description": "Classes
|
|
2390
|
+
"description": "Classes de coluna do grid GovBR para definir a largura responsiva do painel sobreposto.\nExemplo: `col-sm-4 col-lg-3`. Os modos `push`, `fixed` e `contextual` não usam esta propriedade.\nQuando vazia, o painel ocupa a largura disponível.",
|
|
2363
2391
|
"values": []
|
|
2364
2392
|
},
|
|
2365
2393
|
{
|
|
@@ -2384,7 +2412,7 @@
|
|
|
2384
2412
|
},
|
|
2385
2413
|
{
|
|
2386
2414
|
"name": "density",
|
|
2387
|
-
"description": "Define a densidade dos itens do menu, alterando o espaçamento interno.\n- `small` (densidade alta): itens mais compactos\n- `medium` (padrão): equilíbrio entre economia de espaço e separação\n- `large` (densidade baixa): maior espaçamento (recomendado em touch)",
|
|
2415
|
+
"description": "Define a densidade dos itens do menu, alterando o espaçamento interno.\n- `small` (densidade alta): itens mais compactos\n- `medium` (padrão): equilíbrio entre economia de espaço e separação\n- `large` (densidade baixa): maior espaçamento (recomendado em touch)\nValores inválidos usam `medium`.",
|
|
2388
2416
|
"values": [{ "name": "MenuDensity" }]
|
|
2389
2417
|
},
|
|
2390
2418
|
{
|
|
@@ -2402,7 +2430,7 @@
|
|
|
2402
2430
|
},
|
|
2403
2431
|
{
|
|
2404
2432
|
"name": "br-menu-group",
|
|
2405
|
-
"description": "
|
|
2433
|
+
"description": "O componente `br-menu-group` é o subcomponente do GovBR-DS que divide os itens de navegação em blocos ou agrupamentos temáticos com subtítulos.\n\n### Para que serve\n\n- **Segmentação visual:** Separa blocos de links afins para facilitar a leitura.\n- **Hierarquia clara:** Estabelece grupos com rótulos descritivos.\n\n### Papel na composição\n\nAtua como agrupador intermediário dentro do corpo do `br-menu`.\n\n### Regra de uso e relacionamento\n\n- Deve ser utilizado no interior do componente `br-menu`.\n- Contém instâncias de `br-menu-list` ou `br-menu-item`.\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.",
|
|
2406
2434
|
"attributes": [
|
|
2407
2435
|
{
|
|
2408
2436
|
"name": "label",
|
|
@@ -2419,7 +2447,7 @@
|
|
|
2419
2447
|
},
|
|
2420
2448
|
{
|
|
2421
2449
|
"name": "br-menu-header",
|
|
2422
|
-
"description": "
|
|
2450
|
+
"description": "O componente `br-menu-header` é o subcomponente do GovBR-DS que fornece o cabeçalho superior do menu lateral, contendo o título da área e o botão de fechamento.\n\n### Para que serve\n\n- **Identificação da navegação:** Exibe o título do menu ou seção atual.\n- **Controle de fechamento:** Fornece o botão de fechar acessível que recolhe o menu.\n\n### Papel na composição\n\nAtua como cabeçalho funcional e acessível no topo do `br-menu`.\n\n### Regra de uso e relacionamento\n\n- Deve ser posicionado no início do orquestrador `br-menu`.\n- Dispara a ação de fechamento gerenciada pelo componente 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.",
|
|
2423
2451
|
"attributes": [
|
|
2424
2452
|
{
|
|
2425
2453
|
"name": "custom-id",
|
|
@@ -2446,7 +2474,7 @@
|
|
|
2446
2474
|
},
|
|
2447
2475
|
{
|
|
2448
2476
|
"name": "br-menu-info",
|
|
2449
|
-
"description": "
|
|
2477
|
+
"description": "O componente `br-menu-info` é o subcomponente do GovBR-DS destinado a exibir textos informativos, versão do sistema, status da aplicação ou informações de usuário no menu.\n\n### Para que serve\n\n- **Informações contextuais:** Apresenta dados de apoio ao usuário sem poluir o fluxo de links.\n\n### Papel na composição\n\nAtua como área informativa complementar no menu.\n\n### Regra de uso e relacionamento\n\n- Posiciona-se geralmente no rodapé ou na área superior do `br-menu`.\n---\n\n\n### **Slots:**\n - **default** - Slot para conteúdo personalizado no lugar do texto padrão de informações.",
|
|
2450
2478
|
"attributes": [
|
|
2451
2479
|
{
|
|
2452
2480
|
"name": "custom-id",
|
|
@@ -2463,11 +2491,11 @@
|
|
|
2463
2491
|
},
|
|
2464
2492
|
{
|
|
2465
2493
|
"name": "br-menu-item",
|
|
2466
|
-
"description": "Para
|
|
2494
|
+
"description": "O componente `br-menu-item` é o subcomponente interativo do GovBR-DS que representa uma opção de navegação ou gatilho para submenu na árvore de menu.\n\n### Para que serve\n\n- **Opção de rota ou submenu:** Funciona como link direto para uma página ou como nó que abre um próximo nível hierárquico.\n- **Estados visuais de navegação:** Reflete estados ativo, focado, hover e selecionado.\n\n### Papel na composição\n\nAtua como item interativo central da navegação.\n\n### Regra de uso e relacionamento\n\n- Deve ser utilizado exclusivamente dentro de um `br-menu-list`.\n- Quando contiver subníveis, comunica-se com o orquestrador `br-menu` para ativar a transição entre telas.\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).",
|
|
2467
2495
|
"attributes": [
|
|
2468
2496
|
{
|
|
2469
2497
|
"name": "icon",
|
|
2470
|
-
"description": "
|
|
2498
|
+
"description": "Identificador legado do ícone exibido no item do menu.\nNomes simples conhecidos são resolvidos pelo registro SVG local; para\nclasses CSS, SVGs ou bibliotecas externas, prefira o slot `icon`.",
|
|
2471
2499
|
"values": []
|
|
2472
2500
|
},
|
|
2473
2501
|
{
|
|
@@ -2477,7 +2505,7 @@
|
|
|
2477
2505
|
},
|
|
2478
2506
|
{
|
|
2479
2507
|
"name": "target",
|
|
2480
|
-
"description": "Define como o link será aberto.\n- `_self`: abre no mesmo contexto de navegação (padrão)\n- `_blank`: abre em nova aba ou janela\n- `_parent`: abre no contexto pai\n- `_top`: abre no contexto de nível superior",
|
|
2508
|
+
"description": "Define como o link será aberto.\n- `_self`: abre no mesmo contexto de navegação (padrão)\n- `_blank`: abre em nova aba ou janela\n- `_parent`: abre no contexto pai\n- `_top`: abre no contexto de nível superior\nValores inválidos usam `_self`.",
|
|
2481
2509
|
"values": [{ "name": "BrLinkTarget" }]
|
|
2482
2510
|
},
|
|
2483
2511
|
{
|
|
@@ -2492,7 +2520,7 @@
|
|
|
2492
2520
|
},
|
|
2493
2521
|
{
|
|
2494
2522
|
"name": "display-mode",
|
|
2495
|
-
"description": "Define o modo de exibição do item, controlando os ícones de expansão.\n- `accordion`: exibe setas para cima/baixo (usado em menus de nível 0).\n- `drill-down`: exibe seta para a direita (usado em menus de níveis 1+).\n- `none`: não exibe ícones de expansão
|
|
2523
|
+
"description": "Define o modo de exibição do item, controlando os ícones de expansão.\n- `accordion`: exibe setas para cima/baixo (usado em menus de nível 0).\n- `drill-down`: exibe seta para a direita (usado em menus de níveis 1+).\n- `none`: não exibe ícones de expansão.\nValores inválidos usam `none`.",
|
|
2496
2524
|
"values": [{ "name": "MenuItemDisplayMode" }]
|
|
2497
2525
|
},
|
|
2498
2526
|
{
|
|
@@ -2502,7 +2530,7 @@
|
|
|
2502
2530
|
},
|
|
2503
2531
|
{
|
|
2504
2532
|
"name": "navigation-mode",
|
|
2505
|
-
"description": "Controla como o componente integra a navegação mantendo `href` real no elemento navegável.\n- `native` (padrão): preserva o comportamento do navegador, conforme HTML/W3C.\n- `event`: emite `brNavigate`; se o evento for cancelado, bloqueia a navegação nativa para a SPA assumir.\nCliques com modificadores, botão do meio ou `target` diferente de `_self` permanecem nativos
|
|
2533
|
+
"description": "Controla como o componente integra a navegação mantendo `href` real no elemento navegável.\n- `native` (padrão): preserva o comportamento do navegador, conforme HTML/W3C.\n- `event`: emite `brNavigate`; se o evento for cancelado, bloqueia a navegação nativa para a SPA assumir.\nCliques com modificadores, botão do meio ou `target` diferente de `_self` permanecem nativos.\nValores inválidos usam `native`.",
|
|
2506
2534
|
"values": [{ "name": "BrNavigationMode" }]
|
|
2507
2535
|
}
|
|
2508
2536
|
],
|
|
@@ -2510,7 +2538,7 @@
|
|
|
2510
2538
|
},
|
|
2511
2539
|
{
|
|
2512
2540
|
"name": "br-menu-link",
|
|
2513
|
-
"description": "Para a
|
|
2541
|
+
"description": "O componente `br-menu-link` é o subcomponente do GovBR-DS que renderiza um hiperlink textual acessível dentro da estrutura de menu.\n\n### Para que serve\n\n- **Navegação direta:** Oferece link textual para destinos internos ou externos.\n- **Estilo GovBR-DS:** Aplica a tipografia e cores padronizadas de links de menu.\n\n### Papel na composição\n\nAtua como elemento folha de navegação.\n\n### Regra de uso e relacionamento\n\n- Utilizado dentro de `br-menu-item` ou seções de apoio do `br-menu`.\n---\n\n\n### **Events:**\n - **brLinkClick** - Evento emitido quando o link externo é clicado.\n- **brMenuLinkClick** - Evento canônico 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.",
|
|
2514
2542
|
"attributes": [
|
|
2515
2543
|
{
|
|
2516
2544
|
"name": "custom-id",
|
|
@@ -2539,11 +2567,11 @@
|
|
|
2539
2567
|
},
|
|
2540
2568
|
{
|
|
2541
2569
|
"name": "br-menu-list",
|
|
2542
|
-
"description": "
|
|
2570
|
+
"description": "O componente `br-menu-list` é o subcomponente do GovBR-DS que fornece a estrutura semântica de lista de navegação para acomodar os itens interativos do menu.\n\n### Para que serve\n\n- **Semântica de lista:** Garante marcação acessível (`<ul>`) para tecnologias assistivas.\n- **Alinhamento e ordenação:** Organiza os itens verticalmente com espaçamentos padronizados.\n\n### Papel na composição\n\nAtua como contêiner semântico de itens dentro de `br-menu` ou `br-menu-group`.\n\n### Regra de uso e relacionamento\n\n- Deve ser inserido no interior de `br-menu` ou `br-menu-group`.\n- Acomoda múltiplos subcomponentes `br-menu-item`.\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).",
|
|
2543
2571
|
"attributes": [
|
|
2544
2572
|
{
|
|
2545
2573
|
"name": "icon",
|
|
2546
|
-
"description": "
|
|
2574
|
+
"description": "Identificador legado do ícone exibido no item principal do menu.\nNomes simples conhecidos são resolvidos pelo registro SVG local; para\nclasses CSS, SVGs ou bibliotecas externas, prefira o slot `icon`.",
|
|
2547
2575
|
"values": []
|
|
2548
2576
|
},
|
|
2549
2577
|
{
|
|
@@ -2571,7 +2599,7 @@
|
|
|
2571
2599
|
},
|
|
2572
2600
|
{
|
|
2573
2601
|
"name": "br-menu-logo",
|
|
2574
|
-
"description": "Para a
|
|
2602
|
+
"description": "O componente `br-menu-logo` é o subcomponente do GovBR-DS que renderiza a logomarca do sistema ou do Governo Federal no menu lateral.\n\n### Para que serve\n\n- **Identidade no menu:** Reforça a marca da aplicação na navegação lateral móvel ou desktop.\n\n### Papel na composição\n\nAtua como identificador visual institucional no menu.\n\n### Regra de uso e relacionamento\n\n- Posiciona-se preferencialmente no topo ou no cabeçalho do `br-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.",
|
|
2575
2603
|
"attributes": [
|
|
2576
2604
|
{
|
|
2577
2605
|
"name": "custom-id",
|
|
@@ -2604,7 +2632,7 @@
|
|
|
2604
2632
|
},
|
|
2605
2633
|
{
|
|
2606
2634
|
"name": "br-menu-social",
|
|
2607
|
-
"description": "Para a
|
|
2635
|
+
"description": "O componente `br-menu-social` é o subcomponente do GovBR-DS que reúne atalhos para os canais de redes sociais institucionais no interior do menu.\n\n### Para que serve\n\n- **Acesso rápido a mídias:** Permite que o cidadão acesse perfis institucionais a partir da gaveta de navegação.\n\n### Papel na composição\n\nAtua como bloco de engajamento social no menu.\n\n### Regra de uso e relacionamento\n\n- Posiciona-se preferencialmente na base ou rodapé interno do `br-menu`.\n---\n\n\n### **Events:**\n - **brSocialClick** - Evento emitido quando o link de rede social é clicado.\n- **brMenuSocialClick** - Evento canônico 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.",
|
|
2608
2636
|
"attributes": [
|
|
2609
2637
|
{
|
|
2610
2638
|
"name": "custom-id",
|
|
@@ -2614,12 +2642,12 @@
|
|
|
2614
2642
|
{ "name": "href", "description": "URL do link.", "values": [] },
|
|
2615
2643
|
{
|
|
2616
2644
|
"name": "target",
|
|
2617
|
-
"description": "Target do link quando href é fornecido
|
|
2645
|
+
"description": "Target do link quando href é fornecido.\nAceita `_self`, `_blank`, `_parent` ou `_top`. Valores inválidos usam `_self`.",
|
|
2618
2646
|
"values": [{ "name": "BrLinkTarget" }]
|
|
2619
2647
|
},
|
|
2620
2648
|
{
|
|
2621
2649
|
"name": "navigation-mode",
|
|
2622
|
-
"description": "Controla como o componente integra a navegação mantendo `href` real no elemento navegável.\n- `native` (padrão): preserva o comportamento do navegador, conforme HTML/W3C.\n- `event`: emite `brNavigate`; se o evento for cancelado, bloqueia a navegação nativa para a SPA assumir.\nCliques com modificadores, botão do meio ou `target` diferente de `_self` permanecem nativos
|
|
2650
|
+
"description": "Controla como o componente integra a navegação mantendo `href` real no elemento navegável.\n- `native` (padrão): preserva o comportamento do navegador, conforme HTML/W3C.\n- `event`: emite `brNavigate`; se o evento for cancelado, bloqueia a navegação nativa para a SPA assumir.\nCliques com modificadores, botão do meio ou `target` diferente de `_self` permanecem nativos.\nValores inválidos usam `native`.",
|
|
2623
2651
|
"values": [{ "name": "BrNavigationMode" }]
|
|
2624
2652
|
},
|
|
2625
2653
|
{
|
|
@@ -2627,13 +2655,17 @@
|
|
|
2627
2655
|
"description": "Define o rótulo acessível usado por tecnologias assistivas.",
|
|
2628
2656
|
"values": []
|
|
2629
2657
|
},
|
|
2630
|
-
{
|
|
2658
|
+
{
|
|
2659
|
+
"name": "icon",
|
|
2660
|
+
"description": "Identificador da rede social. Os ícones oficiais mais comuns são\nrenderizados pelo registro SVG local; use o slot `icon` para uma fonte\ndiferente ou uma classe Font Awesome personalizada.",
|
|
2661
|
+
"values": []
|
|
2662
|
+
}
|
|
2631
2663
|
],
|
|
2632
2664
|
"references": []
|
|
2633
2665
|
},
|
|
2634
2666
|
{
|
|
2635
2667
|
"name": "br-message",
|
|
2636
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
2668
|
+
"description": "O componente `br-message` é a superfície de feedback contextual e notificação em linha do GovBR-DS, utilizada para comunicar mensagens de sucesso, informação, alerta ou erro diretamente associadas à tela ou a um formulário.\n\n### Para que serve\n\n- **Comunicação de estados do sistema:** Exibe mensagens com cores, ícones e semânticas padronizadas: `success` (sucesso), `info` (informação), `warning` (aviso) e `danger` (erro).\n- **Validação de formulários:** Atua como o contêiner oficial de mensagem de erro e orientação nos slots `feedback` de componentes de formulário (como `br-input`, `br-select` e `br-checkbox`).\n- **Opção de fechamento:** Suporta botão de dispensa (`closable`), permitindo que a pessoa usuária feche a notificação após a leitura.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - For necessário dar feedback sobre uma ação recém-executada (ex.: \"Dados salvos com sucesso\").\n - Houver orientações contextuais ou erros de validação em campos de formulário.\n- **Evite e prefira outro componente quando:**\n - A mensagem for crítica e exigir confirmação bloqueadora antes de continuar (prefira `br-modal`).\n - As notificações forem assíncronas do sistema e acumuladas em uma central de mensagens (prefira `br-notification`).\n\n### Estrutura e Slots\n\nO `br-message` oferece personalização modular:\n- `message-title`: Slot para título de destaque da mensagem.\n- `message-body`: Slot para o corpo detalhado do texto.\n- `icon`: Slot para substituição do ícone contextual padrão.\n- `close-button`: Slot para botão de fechar customizado.\n- `default`: Slot livre para renderização direta do conteúdo.\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/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 canônico 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.",
|
|
2637
2669
|
"attributes": [
|
|
2638
2670
|
{
|
|
2639
2671
|
"name": "message-title",
|
|
@@ -2692,7 +2724,7 @@
|
|
|
2692
2724
|
},
|
|
2693
2725
|
{
|
|
2694
2726
|
"name": "state",
|
|
2695
|
-
"description": "Define o estado do message
|
|
2727
|
+
"description": "Define o estado do message. Valores inválidos usam `info`.\nOs possíveis valores são:\n- 'info': Mensagem informativa.\n- 'warning': Mensagem de aviso.\n- 'danger': Mensagem de erro ou alerta.\n- 'success': Mensagem de sucesso.\nO valor padrão é 'info'.",
|
|
2696
2728
|
"values": [{ "name": "BrFeedbackState" }]
|
|
2697
2729
|
},
|
|
2698
2730
|
{
|
|
@@ -2710,7 +2742,7 @@
|
|
|
2710
2742
|
},
|
|
2711
2743
|
{
|
|
2712
2744
|
"name": "br-modal",
|
|
2713
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
2745
|
+
"description": "O componente `br-modal` é a caixa de diálogo bloqueadora (dialog modal) do GovBR-DS, desenvolvida para capturar o foco e exigir a atenção imediata da pessoa usuária antes de permitir o retorno ao fluxo de trabalho normal.\n\n### Para que serve\n\n- **Confirmação de ações críticas:** Solicita confirmação explícita para ações irreversíveis ou de grande impacto (ex.: excluir registro, cancelar processo em andamento).\n- **Entrada de dados pontual:** Permite preencher formulários breves e contextuais sem sair da tela principal.\n- **Gestão de foco e acessibilidade WAI-ARIA:** Bloqueia o foco dentro do diálogo (`focus trap`), impede a rolagem do fundo, aplica `aria-modal=\"true\"` e fecha com a tecla Escape ou clique externo.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - A decisão for estritamente obrigatória e a continuação sem ela puder causar perda de dados ou inconsistência.\n - Apresentar detalhes suplementares que requerem fechamento explícito.\n- **Evite e prefira outro componente quando:**\n - A mensagem for informativa e não exigir ação imediata (prefira `br-message`).\n - O conteúdo for extenso, demandando navegação complexa (prefira uma nova página dedicada).\n\n### Estrutura e Slots\n\nO `br-modal` organiza o diálogo em regiões padronizadas:\n- `header`: Slot para cabeçalho e título (substitui a prop `title-text`).\n- `default`: Slot principal onde é inserido o corpo de texto ou formulário do modal.\n- `footer`: Slot para ações de rodapé (botões de confirmação, envio e cancelamento com `br-button`).\n- `close-button`: Slot para personalizar o botão de fechar do canto superior.\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/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.",
|
|
2714
2746
|
"attributes": [
|
|
2715
2747
|
{
|
|
2716
2748
|
"name": "custom-id",
|
|
@@ -2739,7 +2771,7 @@
|
|
|
2739
2771
|
},
|
|
2740
2772
|
{
|
|
2741
2773
|
"name": "size",
|
|
2742
|
-
"description": "Define o tamanho (largura) do modal.",
|
|
2774
|
+
"description": "Define o tamanho (largura) do modal. Valores inválidos usam `medium`.",
|
|
2743
2775
|
"values": [{ "name": "ModalSize" }]
|
|
2744
2776
|
},
|
|
2745
2777
|
{
|
|
@@ -2749,7 +2781,7 @@
|
|
|
2749
2781
|
},
|
|
2750
2782
|
{
|
|
2751
2783
|
"name": "align-footer",
|
|
2752
|
-
"description": "Define o alinhamento do conteúdo do rodapé (slot=\"footer\").",
|
|
2784
|
+
"description": "Define o alinhamento do conteúdo do rodapé (slot=\"footer\"). Valores inválidos usam `center`.",
|
|
2753
2785
|
"values": [{ "name": "ModalFooterAlign" }]
|
|
2754
2786
|
}
|
|
2755
2787
|
],
|
|
@@ -2757,7 +2789,7 @@
|
|
|
2757
2789
|
},
|
|
2758
2790
|
{
|
|
2759
2791
|
"name": "br-notification",
|
|
2760
|
-
"description": "
|
|
2792
|
+
"description": "O componente `br-notification` é o painel oficial do GovBR-DS para centralização e exibição de avisos, comunicados e notificações do sistema, tipicamente acionado a partir de um botão com ícone de sino no cabeçalho.\n\n### Para que serve\n\n- **Central de notificações do usuário:** Reúne em uma única gaveta ou painel suspenso todas as mensagens, lembretes e alertas direcionados à pessoa usuária.\n- **Estruturação por abas e contexto:** Permite organizar notificações por abas (ex.: \"Todas\", \"Não lidas\", \"Arquivadas\") com ações rápidas (marcar como lida, excluir).\n- **Gerenciamento de abertura e foco:** Controla abertura, fechamento, tecla Escape e foco acessível.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - O sistema gerar eventos e comunicados assíncronos que a pessoa usuária precise consultar a qualquer momento.\n- **Evite e prefira outro componente quando:**\n - A mensagem for uma resposta imediata a uma ação na tela atual (prefira `br-message`).\n - O aviso exigir confirmação bloqueadora antes de continuar (prefira `br-modal`).\n\n### Composição e Subcomponentes\n\n| Subcomponente | Papel | Regra de uso |\n| --- | --- | --- |\n| `br-notification` | **Orquestrador principal.** Gerencia a superfície flutuante, estado de visibilidade e foco. | Contêiner raiz obrigatório. |\n| `br-notification-header` | **Cabeçalho do painel.** Exibe o título, avatar do usuário, contadores e botão de fechar. | Declarado no slot `header` ou topo do `br-notification`. |\n| `br-notification-body` | **Corpo principal.** Contém a listagem das notificações e abas de filtro opcionais. | Declarado no slot padrão do `br-notification`. |\n| `br-notification-item` | **Notificação individual.** Representa cada mensagem com ícone, data, texto e ações. | Declarado dentro do `br-notification-body`. |\n\n### Como os subcomponentes se relacionam\n\nO `br-notification` projeta o painel suspenso:\n1. O cabeçalho (`br-notification-header`) contextualiza o painel e fornece o botão de dispensa.\n2. O corpo (`br-notification-body`) agrupa e organiza a coleção de itens (`br-notification-item`).\n3. Cada item (`br-notification-item`) expõe eventos de clique e ações individuais (como marcar como lida).\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/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.",
|
|
2761
2793
|
"attributes": [
|
|
2762
2794
|
{
|
|
2763
2795
|
"name": "custom-id",
|
|
@@ -2796,7 +2828,7 @@
|
|
|
2796
2828
|
},
|
|
2797
2829
|
{
|
|
2798
2830
|
"name": "placement",
|
|
2799
|
-
"description": "Define o posicionamento do painel em relação ao acionador.",
|
|
2831
|
+
"description": "Define o posicionamento do painel em relação ao acionador. Valores inválidos usam `bottom-end`.",
|
|
2800
2832
|
"values": [{ "name": "NotificationPlacement" }]
|
|
2801
2833
|
},
|
|
2802
2834
|
{
|
|
@@ -2824,7 +2856,7 @@
|
|
|
2824
2856
|
},
|
|
2825
2857
|
{
|
|
2826
2858
|
"name": "br-notification-body",
|
|
2827
|
-
"description": "
|
|
2859
|
+
"description": "Subcomponente de corpo da superfície `br-notification`, responsável por agrupar e organizar a lista de itens de notificação.\n\n### Papel na composição\n\n- Atua como contêiner com rolagem independente para a lista de comunicados (`br-notification-item`).\n- Suporta filtros por abas ou categorias de mensagens (ex.: \"Todas\", \"Não lidas\").\n\n### Regra de uso e relacionamento\n\nDeclarado dentro do slot padrão do `br-notification`, posicionado abaixo do cabeçalho. Ele recebe múltiplos elementos `br-notification-item` em seu interior. Não deve ser usado fora do painel de notificação.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/notification?tab=designer).\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.",
|
|
2828
2860
|
"attributes": [
|
|
2829
2861
|
{
|
|
2830
2862
|
"name": "custom-id",
|
|
@@ -2846,7 +2878,7 @@
|
|
|
2846
2878
|
},
|
|
2847
2879
|
{
|
|
2848
2880
|
"name": "br-notification-header",
|
|
2849
|
-
"description": "
|
|
2881
|
+
"description": "Subcomponente de cabeçalho da superfície `br-notification`, responsável pela identificação da área e controles de fechamento.\n\n### Papel na composição\n\n- Exibe o título da central de notificações, avatar da pessoa autenticada e botão de ação para fechar o painel.\n- Fornece contexto visual imediato ao abrir a gaveta de notificações.\n\n### Regra de uso e relacionamento\n\nDeve ser utilizado como o elemento inicial dentro do orquestrador `br-notification`. Ele é coordenado pelo painel pai para disparar o evento de fechamento quando o botão de dispensa é acionado. Não deve ser usado fora de um `br-notification`.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/notification?tab=designer).\n---\n\n\n### **Events:**\n - **brNotificationHeaderClose** - Solicita o fechamento do painel a partir do cabeçalho.\n\n### **Slots:**\n - **avatar** - Área para avatar ou elemento visual do usuário.\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.",
|
|
2850
2882
|
"attributes": [
|
|
2851
2883
|
{
|
|
2852
2884
|
"name": "custom-id",
|
|
@@ -2878,7 +2910,7 @@
|
|
|
2878
2910
|
},
|
|
2879
2911
|
{
|
|
2880
2912
|
"name": "br-notification-item",
|
|
2881
|
-
"description": "
|
|
2913
|
+
"description": "Subcomponente individual de `br-notification`, utilizado para representar visualmente cada mensagem, aviso ou comunicado do sistema.\n\n### Papel na composição\n\n- Exibe o ícone de status (sucesso, aviso, erro, informação), título do comunicado, data/hora e texto explicativo.\n- Suporta indicação visual de lida/não lida e botões de ação específicos (ex.: \"Ver detalhes\", \"Arquivar\").\n\n### Regra de uso e relacionamento\n\nDeve ser declarado dentro do contêiner `br-notification-body` (ou no slot padrão do `br-notification`). Comunica interações da pessoa usuária (clique no item, dispensa) através de eventos emitidos para a aplicação.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/notification?tab=designer).\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 - **status** - Região para tag, badge ou marcador visual de status.\n- **title** - Conteúdo customizado do título.\n- **meta** - Região para informação cronológica ou metadados.\n- **default** - Conteúdo principal da notificação.\n- **actions** - Ações contextuais do item.",
|
|
2882
2914
|
"attributes": [
|
|
2883
2915
|
{
|
|
2884
2916
|
"name": "item-id",
|
|
@@ -2912,7 +2944,7 @@
|
|
|
2912
2944
|
},
|
|
2913
2945
|
{
|
|
2914
2946
|
"name": "state",
|
|
2915
|
-
"description": "Define o estado visual da notificação.",
|
|
2947
|
+
"description": "Define o estado visual da notificação.\nAceita `success`, `danger`, `warning` ou `info`.\nValores inválidos são ignorados.",
|
|
2916
2948
|
"values": [{ "name": "NotificationItemState" }]
|
|
2917
2949
|
}
|
|
2918
2950
|
],
|
|
@@ -2920,36 +2952,36 @@
|
|
|
2920
2952
|
},
|
|
2921
2953
|
{
|
|
2922
2954
|
"name": "br-pagination",
|
|
2923
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
2955
|
+
"description": "O componente `br-pagination` é o controle de navegação paginada do GovBR-DS, desenvolvido para segmentar grandes volumes de dados ou conteúdos extensos em páginas sequenciais numeradas.\n\n### Para que serve\n\n- **Segmentação de dados volumosos:** Divide listas, tabelas e catálogos em blocos gerenciáveis de itens, reduzindo o tempo de carregamento da página e o consumo de memória.\n- **Navegação direta e sequencial:** Oferece botões para avançar, retroceder, ir diretamente a uma página específica e navegar através de atalhos de reticências.\n- **Variante contextual completa:** Permite alterar a quantidade de itens exibidos por página (ex.: 10, 20, 50, 100 itens) e pular diretamente para qualquer página através de campo de digitação integrado.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - O número total de itens for superior ao limite recomendado para visualização em uma única rolagem (geralmente mais de 20 a 50 registros).\n - Integrar com tabelas de dados (`br-table`) ou grades de cartões (`br-card`).\n- **Evite e prefira outro componente quando:**\n - O conjunto completo de itens for pequeno (menos de 20 itens) e puder ser visualizado sem perda de performance.\n - A navegação representar etapas interdependentes de um processo sequencial com validação (prefira `br-step` ou `br-wizard`).\n\n### Estrutura e Slots\n\nO `br-pagination` disponibiliza slots para complementar a navegação:\n- `pagination-info`: Slot para customização do texto de contagem (ex.: \"Exibindo 1-20 de 240 itens\").\n- `loading`: Slot para indicador visual exibido durante a troca assíncrona de páginas.\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/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 canônico 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 canônico 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-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-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.",
|
|
2924
2956
|
"attributes": [
|
|
2925
2957
|
{
|
|
2926
2958
|
"name": "color-mode",
|
|
2927
|
-
"description": "Define se a paginação usará um esquema de cores escuro.\nQuando definido como `dark`, aplica a classe `dark-mode` ao container principal.",
|
|
2959
|
+
"description": "Define se a paginação usará um esquema de cores escuro. Valores inválidos são ignorados.\nQuando definido como `dark`, aplica a classe `dark-mode` ao container principal.",
|
|
2928
2960
|
"values": [{ "name": "PaginationColorMode" }]
|
|
2929
2961
|
},
|
|
2930
2962
|
{
|
|
2931
2963
|
"name": "custom-id",
|
|
2932
|
-
"description": "Identificador único do componente.\nQuando omitido, um valor é gerado automaticamente.\n\n> **Padrão:** valor único gerado por
|
|
2964
|
+
"description": "Identificador único do componente.\nQuando omitido, um valor é gerado automaticamente.\n\n> **Padrão:** valor único gerado por `generateUniqueId()`.\n\n> **Uso compartilhado:** mantenha esta descrição idêntica em todos os componentes que usam `customId`.",
|
|
2933
2965
|
"values": []
|
|
2934
2966
|
},
|
|
2935
2967
|
{
|
|
2936
2968
|
"name": "total",
|
|
2937
|
-
"description": "Quantidade total de páginas (mínimo 1).",
|
|
2969
|
+
"description": "Quantidade total de páginas (inteiro mínimo 1). Valores inválidos usam 1.",
|
|
2938
2970
|
"values": []
|
|
2939
2971
|
},
|
|
2940
2972
|
{
|
|
2941
2973
|
"name": "total-pages",
|
|
2942
|
-
"description": "Quantidade total de páginas. Tem precedência sobre `total
|
|
2974
|
+
"description": "Quantidade total de páginas. Tem precedência sobre `total`; valores inválidos usam 1.",
|
|
2943
2975
|
"values": []
|
|
2944
2976
|
},
|
|
2945
2977
|
{
|
|
2946
2978
|
"name": "current",
|
|
2947
|
-
"description": "Página atual (1-indexada). Valores fora do intervalo
|
|
2979
|
+
"description": "Página atual (inteira e 1-indexada). Valores inválidos usam 1; valores fora do intervalo são ajustados.",
|
|
2948
2980
|
"values": []
|
|
2949
2981
|
},
|
|
2950
2982
|
{
|
|
2951
2983
|
"name": "current-page",
|
|
2952
|
-
"description": "Página atual. Tem precedência sobre `current
|
|
2984
|
+
"description": "Página atual. Tem precedência sobre `current`; valores inválidos usam 1.",
|
|
2953
2985
|
"values": []
|
|
2954
2986
|
},
|
|
2955
2987
|
{
|
|
@@ -2974,12 +3006,12 @@
|
|
|
2974
3006
|
},
|
|
2975
3007
|
{
|
|
2976
3008
|
"name": "density",
|
|
2977
|
-
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura).\n\n> **Uso compartilhado:** mantenha esta descrição idêntica em todos os componentes que usam `density`.",
|
|
3009
|
+
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura).\n\n> **Uso compartilhado:** mantenha esta descrição idêntica em todos os componentes que usam `density`.\nValores inválidos usam `medium`.",
|
|
2978
3010
|
"values": [{ "name": "PaginationDensity" }]
|
|
2979
3011
|
},
|
|
2980
3012
|
{
|
|
2981
3013
|
"name": "variant",
|
|
2982
|
-
"description": "Variante de renderização do componente
|
|
3014
|
+
"description": "Variante de renderização do componente. Valores inválidos usam `default`.\n- `default`: paginação numérica (padrão)\n- `contextual`: paginação contextual com seletores e informação de itens",
|
|
2983
3015
|
"values": [{ "name": "PaginationVariant" }]
|
|
2984
3016
|
},
|
|
2985
3017
|
{
|
|
@@ -2994,17 +3026,17 @@
|
|
|
2994
3026
|
},
|
|
2995
3027
|
{
|
|
2996
3028
|
"name": "total-items",
|
|
2997
|
-
"description": "Total de itens (aplicável na variante contextual).",
|
|
3029
|
+
"description": "Total de itens (inteiro não negativo, aplicável na variante contextual). Valores inválidos usam 0.",
|
|
2998
3030
|
"values": []
|
|
2999
3031
|
},
|
|
3000
3032
|
{
|
|
3001
3033
|
"name": "per-page",
|
|
3002
|
-
"description": "Itens por página (aplicável na variante contextual).",
|
|
3034
|
+
"description": "Itens por página (inteiro positivo, aplicável na variante contextual). Valores inválidos usam 10.",
|
|
3003
3035
|
"values": []
|
|
3004
3036
|
},
|
|
3005
3037
|
{
|
|
3006
3038
|
"name": "per-page-options",
|
|
3007
|
-
"description": "Opções disponíveis de itens por página
|
|
3039
|
+
"description": "Opções disponíveis de itens por página na variante `contextual`.\nPasse o array por property binding; atributos HTML não representam arrays.",
|
|
3008
3040
|
"values": [{ "name": "number[]" }]
|
|
3009
3041
|
},
|
|
3010
3042
|
{
|
|
@@ -3027,13 +3059,18 @@
|
|
|
3027
3059
|
},
|
|
3028
3060
|
{
|
|
3029
3061
|
"name": "br-radio",
|
|
3030
|
-
"description": "
|
|
3062
|
+
"description": "O componente `br-radio` é o controle de formulário do GovBR-DS para seleção de uma única opção dentro de um conjunto mutuamente exclusivo. Compatível com as diretrizes WAI-ARIA, ele integra-se nativamente a formulários HTML via `formAssociated`.\n\n### Para que serve\n\n- **Escolha exclusiva:** Permite que a pessoa usuária escolha exatamente uma alternativa entre as opções apresentadas no mesmo grupo.\n- **Integração com formulários:** Comunica valor, estado de seleção (`checked`), desativação e validação diretamente com a API nativa de formulários HTML (`ElementInternals`).\n- **Navegação acessível:** Suporta foco e seleção via teclado (teclas de seta e barra de espaço) quando agrupado.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Houver um conjunto pequeno de opções (entre 2 e 5 alternativas) mutuamente exclusivas e for importante manter todas as opções imediatamente visíveis.\n- **Evite e prefira outro componente quando:**\n - O número de opções for superior a 5 ou 7 itens: prefira `br-select` para economizar espaço de tela.\n - A pessoa usuária puder selecionar múltiplas opções simultaneamente: prefira `br-checkbox` ou `br-checkbox-group`.\n - Houver uma escolha binária simples de ativação/desativação imediata: prefira `br-switch`.\n\n### Estrutura e Slots\n\nO `br-radio` é um controle individual:\n- `default`: Slot para o texto do rótulo da opção (alternativa à propriedade `label`).\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/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.",
|
|
3031
3063
|
"attributes": [
|
|
3032
3064
|
{
|
|
3033
3065
|
"name": "checked",
|
|
3034
3066
|
"description": "Define o estado de seleção do radio.\nSe definido como verdadeiro, o radio estará marcado. Caso contrário, estará desmarcado.",
|
|
3035
3067
|
"values": []
|
|
3036
3068
|
},
|
|
3069
|
+
{
|
|
3070
|
+
"name": "uncheck-on-click",
|
|
3071
|
+
"description": "Permite desmarcar o radio ao clicar novamente sobre ele quando já estiver selecionado.\nPor padrão, um radio selecionado permanece marcado ao receber um novo clique.\nQuando usada junto com `uncheckOnDoubleClick`, esta opção tem precedência.",
|
|
3072
|
+
"values": []
|
|
3073
|
+
},
|
|
3037
3074
|
{
|
|
3038
3075
|
"name": "uncheck-on-double-click",
|
|
3039
3076
|
"description": "Permite desmarcar o radio ao clicar duas vezes sobre ele.\nPor padrão, um radio selecionado permanece marcado ao receber um segundo clique.",
|
|
@@ -3051,7 +3088,7 @@
|
|
|
3051
3088
|
},
|
|
3052
3089
|
{
|
|
3053
3090
|
"name": "validator",
|
|
3054
|
-
"description": "Regra síncrona ou assíncrona aplicada ao estado booleano do radio.",
|
|
3091
|
+
"description": "Regra síncrona ou assíncrona aplicada ao estado booleano do radio.\nRetorne uma mensagem para invalidar ou `null` para aceitar o valor.",
|
|
3055
3092
|
"values": [{ "name": "RadioValidator" }]
|
|
3056
3093
|
},
|
|
3057
3094
|
{
|
|
@@ -3099,7 +3136,7 @@
|
|
|
3099
3136
|
},
|
|
3100
3137
|
{
|
|
3101
3138
|
"name": "br-radio-group",
|
|
3102
|
-
"description": "
|
|
3139
|
+
"description": "O componente `br-radio-group` é o contêiner semântico e orquestrador de opções `br-radio` no GovBR-DS, responsável por garantir a exclusividade mútua de seleção, a navegação contínua por teclado e a validação integrada do grupo.\n\n### Para que serve\n\n- **Coordenação de seleção mútua:** Garante que apenas um botão de rádio permaneça selecionado por vez entre todos os rádios filhos.\n- **Navegação acessível por teclado WAI-ARIA:** Implementa o padrão de navegação com setas direcionais (cima/baixo/esquerda/direita) com foco cíclico dentro do grupo.\n- **Agrupamento semântico:** Estrutura o grupo com a semântica de `radiogroup`, fornecendo rótulo acessível para tecnologias assistivas.\n- **Associação com formulários:** Atua como controle integrado (`formAssociated`), emitindo o valor consolidado selecionado para o formulário pai.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Apresentar um conjunto de 2 a 5 alternativas mutuamente exclusivas onde todas as opções devam ser comparadas lado a lado ou em lista vertical.\n- **Evite e prefira outro componente quando:**\n - Houver muitas alternativas (mais de 5 a 7 opções): prefira `br-select`.\n - A seleção permitir múltiplas alternativas independentes: prefira `br-checkbox-group`.\n\n### Estrutura e Slots\n\nO `br-radio-group` é um orquestrador de seleção:\n- `default`: Slot onde devem ser declarados os componentes filhos `br-radio`.\n- `label`: Slot para personalização do rótulo ou enunciado da pergunta do grupo.\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/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.",
|
|
3103
3140
|
"attributes": [
|
|
3104
3141
|
{
|
|
3105
3142
|
"name": "name",
|
|
@@ -3128,7 +3165,7 @@
|
|
|
3128
3165
|
},
|
|
3129
3166
|
{
|
|
3130
3167
|
"name": "orientation",
|
|
3131
|
-
"description": "Orientação visual das opções.",
|
|
3168
|
+
"description": "Orientação visual das opções. Valores inválidos usam `vertical`.",
|
|
3132
3169
|
"values": [{ "name": "RadioGroupOrientation" }]
|
|
3133
3170
|
},
|
|
3134
3171
|
{
|
|
@@ -3143,12 +3180,12 @@
|
|
|
3143
3180
|
},
|
|
3144
3181
|
{
|
|
3145
3182
|
"name": "feedback-state",
|
|
3146
|
-
"description": "Estado visual opcional do feedback. A validade real vem de ElementInternals.",
|
|
3183
|
+
"description": "Estado visual opcional do feedback. Valores inválidos não aplicam estado. A validade real vem de ElementInternals.",
|
|
3147
3184
|
"values": [{ "name": "valid" }, { "name": "invalid" }]
|
|
3148
3185
|
},
|
|
3149
3186
|
{
|
|
3150
3187
|
"name": "validator",
|
|
3151
|
-
"description": "Regra síncrona ou assíncrona aplicada ao valor do grupo.",
|
|
3188
|
+
"description": "Regra síncrona ou assíncrona aplicada ao valor do grupo.\nRecebe a string selecionada ou `null` quando nenhuma opção está marcada.",
|
|
3152
3189
|
"values": [{ "name": "RadioGroupValidator" }]
|
|
3153
3190
|
},
|
|
3154
3191
|
{
|
|
@@ -3161,7 +3198,7 @@
|
|
|
3161
3198
|
},
|
|
3162
3199
|
{
|
|
3163
3200
|
"name": "br-scrim",
|
|
3164
|
-
"description": "
|
|
3201
|
+
"description": "O componente `br-scrim` é a camada de sobreposição visual (backdrop / máscara) do GovBR-DS, utilizada para escurecer temporariamente a interface e direcionar a atenção da pessoa usuária para um ponto de interesse ou diálogo.\n\n### Para que serve\n\n- **Destaque visual exclusivo (Spotlight):** Cria um foco exclusivo sobre determinado elemento da página (como um tour guiado ou tutorial introdutório).\n- **Bloqueio de interação com o fundo:** Impede cliques acidentais e rolagem na interface subjacente enquanto uma superfície flutuante estiver ativa.\n- **Comportamento acessível de fechamento:** Suporta fechamento ao clicar na máscara ou ao pressionar a tecla Escape, com controle de foco previsível.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - For necessário criar máscaras de fundo personalizadas para fluxos de onboarding, tutoriais ou menus temporários imersivos.\n- **Evite e prefira outro componente quando:**\n - Estiver implementando uma caixa de diálogo padrão com cabeçalho, corpo e rodapé (prefira `br-modal`, que já inclui seu próprio scrim interno).\n\n### Estrutura e Slots\n\nO `br-scrim` atua como superfície de sobreposição:\n- `default`: Slot para inserção do elemento que receberá o destaque em primeiro plano sobre a máscara.\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/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.",
|
|
3165
3202
|
"attributes": [
|
|
3166
3203
|
{
|
|
3167
3204
|
"name": "custom-id",
|
|
@@ -3185,7 +3222,7 @@
|
|
|
3185
3222
|
},
|
|
3186
3223
|
{
|
|
3187
3224
|
"name": "z-index",
|
|
3188
|
-
"description": "Define o valor de z-index do scrim",
|
|
3225
|
+
"description": "Define o valor de z-index do scrim. Deve ser um inteiro entre 0 e Number.MAX_SAFE_INTEGER; valores inválidos usam 0.",
|
|
3189
3226
|
"values": []
|
|
3190
3227
|
},
|
|
3191
3228
|
{
|
|
@@ -3195,7 +3232,7 @@
|
|
|
3195
3232
|
},
|
|
3196
3233
|
{
|
|
3197
3234
|
"name": "custom-opacity",
|
|
3198
|
-
"description": "Define a opacidade personalizada do scrim",
|
|
3235
|
+
"description": "Define a opacidade personalizada do scrim. O valor é limitado ao intervalo `0`–`1`; entradas inválidas usam `0.4`.",
|
|
3199
3236
|
"values": []
|
|
3200
3237
|
},
|
|
3201
3238
|
{
|
|
@@ -3210,7 +3247,7 @@
|
|
|
3210
3247
|
},
|
|
3211
3248
|
{
|
|
3212
3249
|
"name": "scroll-threshold",
|
|
3213
|
-
"description": "Determina quanto de rolagem (em pixels) é necessário para acionar a ação de fechamento automático do scrim.",
|
|
3250
|
+
"description": "Determina quanto de rolagem (em pixels) é necessário para acionar a ação de fechamento automático do scrim. Valores negativos usam `0`.",
|
|
3214
3251
|
"values": []
|
|
3215
3252
|
},
|
|
3216
3253
|
{
|
|
@@ -3238,6 +3275,11 @@
|
|
|
3238
3275
|
"description": "Define o tamanho da faixa de cobertura da variante `legibility`, usado em\nconjunto com `legibilityAnchor`.\n\nAceita qualquer valor CSS de comprimento válido:\n- Percentual relativo ao elemento pai: `'40%'`, `'75%'`\n- Comprimento absoluto: `'120px'`, `'8rem'`, `'6em'`\n- Função CSS: `'calc(100% - 2rem)'`\n\nQuando `null` (padrão), a máscara ocupa **100%** da dimensão relevante:\n- **altura** para âncoras `top`, `bottom` e `center`\n- **largura** para âncoras `left` e `right`\n\nSó tem efeito quando `variant=\"legibility\"` está definido.",
|
|
3239
3276
|
"values": []
|
|
3240
3277
|
},
|
|
3278
|
+
{
|
|
3279
|
+
"name": "legibility-target-id",
|
|
3280
|
+
"description": "Seletor CSS do elemento que deve receber o posicionamento da variante\n`legibility`. Quando não informado (padrão), o alvo é o elemento pai\ndireto do `<br-scrim>`.",
|
|
3281
|
+
"values": []
|
|
3282
|
+
},
|
|
3241
3283
|
{
|
|
3242
3284
|
"name": "spotlight-target-id",
|
|
3243
3285
|
"description": "Ativa o modo de scrim vazado (variante 'spotlight'), criando uma área de fresta no overlay\nque destaca o elemento referenciado pelo seletor CSS fornecido.",
|
|
@@ -3245,7 +3287,7 @@
|
|
|
3245
3287
|
},
|
|
3246
3288
|
{
|
|
3247
3289
|
"name": "spotlight-padding",
|
|
3248
|
-
"description": "Espaçamento interno (em pixels) ao redor da área de fresta no scrim vazado.",
|
|
3290
|
+
"description": "Espaçamento interno (em pixels) ao redor da área de fresta no scrim vazado. Valores negativos usam `0`.",
|
|
3249
3291
|
"values": []
|
|
3250
3292
|
},
|
|
3251
3293
|
{
|
|
@@ -3263,7 +3305,7 @@
|
|
|
3263
3305
|
},
|
|
3264
3306
|
{
|
|
3265
3307
|
"name": "br-select",
|
|
3266
|
-
"description": "## Design System\n\nPara a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/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 - **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- **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.",
|
|
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.",
|
|
3267
3309
|
"attributes": [
|
|
3268
3310
|
{
|
|
3269
3311
|
"name": "borderless",
|
|
@@ -3275,6 +3317,11 @@
|
|
|
3275
3317
|
"description": "Desativa toda a interação do select.",
|
|
3276
3318
|
"values": []
|
|
3277
3319
|
},
|
|
3320
|
+
{
|
|
3321
|
+
"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
|
+
"values": [{ "name": "BrDensity" }]
|
|
3324
|
+
},
|
|
3278
3325
|
{
|
|
3279
3326
|
"name": "is-inline",
|
|
3280
3327
|
"description": "Exibe label e campo na mesma linha.",
|
|
@@ -3302,12 +3349,12 @@
|
|
|
3302
3349
|
},
|
|
3303
3350
|
{
|
|
3304
3351
|
"name": "visible-items",
|
|
3305
|
-
"description": "Define quantas
|
|
3352
|
+
"description": "Define quantas linhas visuais ficam visíveis na janela da lista.\nCabeçalhos de grupo também ocupam uma linha quando existem.\nDeve ser um inteiro positivo; valores inválidos usam 6.",
|
|
3306
3353
|
"values": []
|
|
3307
3354
|
},
|
|
3308
3355
|
{
|
|
3309
3356
|
"name": "item-height",
|
|
3310
|
-
"description": "Informa a altura base de cada opção para o cálculo de virtual scroll.",
|
|
3357
|
+
"description": "Informa a altura base de cada opção ou cabeçalho para o cálculo de virtual scroll.\nDeve ser um número finito positivo; valores inválidos usam 40.",
|
|
3311
3358
|
"values": []
|
|
3312
3359
|
},
|
|
3313
3360
|
{
|
|
@@ -3317,7 +3364,7 @@
|
|
|
3317
3364
|
},
|
|
3318
3365
|
{
|
|
3319
3366
|
"name": "overscan",
|
|
3320
|
-
"description": "Define quantas opções extras são renderizadas antes e depois da área visível no virtual scroll.",
|
|
3367
|
+
"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.",
|
|
3321
3368
|
"values": []
|
|
3322
3369
|
},
|
|
3323
3370
|
{
|
|
@@ -3387,17 +3434,18 @@
|
|
|
3387
3434
|
},
|
|
3388
3435
|
{
|
|
3389
3436
|
"name": "options",
|
|
3390
|
-
"description": "
|
|
3437
|
+
"description": "Fornece opções como array ou JSON, além das opções projetadas por slot.\nUse property binding para arrays em JavaScript e frameworks; no atributo\nHTML, informe uma string JSON válida. Na inicialização, opções no slot têm\nprecedência quando existem. Depois de uma alteração nesta prop ou de uma\nchamada a `setOptions()`, a coleção imperativa passa a ser a fonte de dados.\nNão use em código novo. Declare `br-select-option` no slot padrão ou, para\nrespostas dinâmicas/remotas, atualize a coleção com `setOptions()`.",
|
|
3391
3438
|
"values": [
|
|
3439
|
+
{ "name": "" },
|
|
3392
3440
|
{
|
|
3393
|
-
"name": "{ label: string; value: string; selected?: boolean }[]"
|
|
3441
|
+
"name": "{ group?: string; label: string; value: string; selected?: boolean }[]"
|
|
3394
3442
|
},
|
|
3395
3443
|
{ "name": "SelectOptionData[]" }
|
|
3396
3444
|
]
|
|
3397
3445
|
},
|
|
3398
3446
|
{
|
|
3399
3447
|
"name": "autocomplete",
|
|
3400
|
-
"description": "Controla o autocomplete do campo de busca interno.",
|
|
3448
|
+
"description": "Controla o autocomplete do campo de busca interno. Aceita `on` ou `off`; valores inválidos são ignorados.",
|
|
3401
3449
|
"values": [{ "name": "InputToggle" }]
|
|
3402
3450
|
},
|
|
3403
3451
|
{
|
|
@@ -3407,17 +3455,17 @@
|
|
|
3407
3455
|
},
|
|
3408
3456
|
{
|
|
3409
3457
|
"name": "min-selections",
|
|
3410
|
-
"description": "Quantidade mínima de opções selecionadas no modo múltiplo.",
|
|
3458
|
+
"description": "Quantidade mínima de opções selecionadas no modo múltiplo. Deve ser um inteiro não negativo; valores inválidos usam 0.",
|
|
3411
3459
|
"values": []
|
|
3412
3460
|
},
|
|
3413
3461
|
{
|
|
3414
3462
|
"name": "max-selections",
|
|
3415
|
-
"description": "Quantidade máxima de opções selecionadas no modo múltiplo.",
|
|
3463
|
+
"description": "Quantidade máxima de opções selecionadas no modo múltiplo. Deve ser um inteiro não negativo; valores inválidos usam 0.",
|
|
3416
3464
|
"values": []
|
|
3417
3465
|
},
|
|
3418
3466
|
{
|
|
3419
3467
|
"name": "validator",
|
|
3420
|
-
"description": "Validação síncrona ou assíncrona executada no método `validate()
|
|
3468
|
+
"description": "Validação síncrona ou assíncrona executada no método `validate()`.\nRecebe uma string no modo simples e um array de strings no modo múltiplo.",
|
|
3421
3469
|
"values": [{ "name": "SelectValidator" }]
|
|
3422
3470
|
}
|
|
3423
3471
|
],
|
|
@@ -3425,7 +3473,7 @@
|
|
|
3425
3473
|
},
|
|
3426
3474
|
{
|
|
3427
3475
|
"name": "br-select-input",
|
|
3428
|
-
"description": "
|
|
3476
|
+
"description": "Subcomponente especializado de `br-select` responsável pelo campo de acionamento, entrada de texto e controle de expansão do popup.\n\n### Papel na composição\n- Exibe o rótulo (`label`), texto de espaço reservado (`placeholder`) e o resumo dos itens atualmente selecionados.\n- Atua como campo de entrada textual para digitação de filtros e termos de busca local ou remota.\n- Contém o botão de ação para abrir ou recolher a lista de opções (`br-select-list`), controlando a rotação do ícone indicador.\n\n### Regra de uso e relacionamento\nNa quase totalidade das aplicações, este componente é instanciado e gerenciado internamente pelo orquestrador `br-select`. Ele não fornece nem renderiza a coleção de opções: recebe do pai o valor exibido, o termo de busca e os estados de abertura e desabilitação. Não deve ser declarado manualmente na página, pois depende da coordenação do pai para foco, ARIA, eventos e sincronização com formulários. Use isoladamente apenas em composições arquiteturais altamente customizadas onde a aplicação assumir explicitamente toda a orquestração de foco e estado.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/select?tab=designer).\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(): __** - Atualiza o ícone para o estado visual de lista aberta.\n- **flipDown(): __** - Atualiza o ícone para o estado visual de lista fechada.\n- **setFocus(): __** - 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.",
|
|
3429
3477
|
"attributes": [
|
|
3430
3478
|
{
|
|
3431
3479
|
"name": "borderless",
|
|
@@ -3434,7 +3482,7 @@
|
|
|
3434
3482
|
},
|
|
3435
3483
|
{
|
|
3436
3484
|
"name": "autocomplete",
|
|
3437
|
-
"description": "Controla o preenchimento automático do input interno.",
|
|
3485
|
+
"description": "Controla o preenchimento automático do input interno. Aceita `on` ou `off`; valores inválidos são ignorados.",
|
|
3438
3486
|
"values": [{ "name": "InputToggle" }]
|
|
3439
3487
|
},
|
|
3440
3488
|
{
|
|
@@ -3442,6 +3490,11 @@
|
|
|
3442
3490
|
"description": "Desativa toda a interação do campo de entrada.",
|
|
3443
3491
|
"values": []
|
|
3444
3492
|
},
|
|
3493
|
+
{
|
|
3494
|
+
"name": "density",
|
|
3495
|
+
"description": "Define a densidade visual do campo e do input interno.\nAceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.",
|
|
3496
|
+
"values": [{ "name": "BrDensity" }]
|
|
3497
|
+
},
|
|
3445
3498
|
{
|
|
3446
3499
|
"name": "is-inline",
|
|
3447
3500
|
"description": "Exibe label e campo na mesma linha.",
|
|
@@ -3492,11 +3545,16 @@
|
|
|
3492
3545
|
},
|
|
3493
3546
|
{
|
|
3494
3547
|
"name": "br-select-list",
|
|
3495
|
-
"description": "
|
|
3548
|
+
"description": "Subcomponente de lista virtualizada de opções, projetado para renderizar o conjunto de escolhas do `br-select`.\n\n### Papel na composição\n- Atua como o painel suspenso (popup `listbox`) que exibe os itens `br-select-option`.\n- Implementa virtualização de itens para oferecer alta performance mesmo em listas extensas com centenas ou milhares de opções.\n- Mantém o posicionamento flutuante e controla a rolagem de visualização do item ativo em navegação por teclado.\n\n### Regra de uso e relacionamento\nGerenciado exclusivamente pelo componente pai `br-select`, que injeta a coleção normalizada em `options`, controla o estado de exibição (aberto/fechado), a seleção múltipla e o índice ativo. A prop `options` desta lista é um contrato interno de composição e não substitui a API de opções do `br-select`. A lista cria internamente elementos `br-select-option` para a janela virtualizada, em vez de exibir diretamente os filhos declarados no slot do pai. Não utilize `br-select-list` como controle autônomo de formulário, pois ele não possui associação nativa com formulários (`formAssociated`) nem campo de acionamento próprio.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/select?tab=designer).\n---\n\n\n### **Methods:**\n - **open(): __** - Abre a lista e agenda a medição das opções quando necessário.\n- **close(): __** - Fecha a lista de opções.\n- **setOptions(options: _SelectOptionData[]_): __** - Substitui todas as opções renderizadas pela lista.\n- **setOption(option: _SelectOptionData_): __** - 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_): __** - Alterna a lista entre modo simples e múltiplo.\n- **getOptions(): __** - Retorna uma cópia das opções atualmente controladas pela lista.\n- **scrollOptionToTop(index: _number_): __** - Posiciona uma opção no topo da viewport virtual, respeitando o limite final da lista.\n- **scrollFirstSelectedOptionToTop(): __** - 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_): __** - Garante visibilidade e foco para uma opção específica.\n- **setOptionSelected(index: _number_, selected: _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.\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.",
|
|
3496
3549
|
"attributes": [
|
|
3550
|
+
{
|
|
3551
|
+
"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`.",
|
|
3553
|
+
"values": [{ "name": "BrDensity" }]
|
|
3554
|
+
},
|
|
3497
3555
|
{
|
|
3498
3556
|
"name": "options",
|
|
3499
|
-
"description": "
|
|
3557
|
+
"description": "É um contrato de composição abastecido pelo `br-select`; não é a API de\nopções do componente principal. Cada opção deve conter `value` string e\npode conter `label` e `group` como strings opcionais; entradas inválidas\nsão ignoradas.",
|
|
3500
3558
|
"values": [{ "name": "SelectOptionData[]" }]
|
|
3501
3559
|
},
|
|
3502
3560
|
{
|
|
@@ -3511,17 +3569,17 @@
|
|
|
3511
3569
|
},
|
|
3512
3570
|
{
|
|
3513
3571
|
"name": "visible-items",
|
|
3514
|
-
"description": "Define quantas
|
|
3572
|
+
"description": "Define quantas linhas visuais permanecem visíveis na viewport da lista.\nCabeçalhos de grupo também ocupam uma linha quando existem.\nDeve ser um inteiro positivo; valores inválidos usam 6.",
|
|
3515
3573
|
"values": []
|
|
3516
3574
|
},
|
|
3517
3575
|
{
|
|
3518
3576
|
"name": "item-height",
|
|
3519
|
-
"description": "Informa a altura base usada no cálculo de posicionamento das opções.",
|
|
3577
|
+
"description": "Informa a altura base usada no cálculo de posicionamento das opções.\nDeve ser um número finito positivo; valores inválidos usam 56.",
|
|
3520
3578
|
"values": []
|
|
3521
3579
|
},
|
|
3522
3580
|
{
|
|
3523
3581
|
"name": "overscan",
|
|
3524
|
-
"description": "Define quantas opções extras são renderizadas fora da viewport quando o virtual scroll está ativo.",
|
|
3582
|
+
"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.",
|
|
3525
3583
|
"values": []
|
|
3526
3584
|
},
|
|
3527
3585
|
{
|
|
@@ -3536,7 +3594,7 @@
|
|
|
3536
3594
|
},
|
|
3537
3595
|
{
|
|
3538
3596
|
"name": "active-option-index",
|
|
3539
|
-
"description": "Índice da opção atualmente ativa para navegação por teclado.",
|
|
3597
|
+
"description": "Índice da opção atualmente ativa para navegação por teclado.\nDeve ser um inteiro maior ou igual a -1; valores inválidos usam -1.",
|
|
3540
3598
|
"values": []
|
|
3541
3599
|
}
|
|
3542
3600
|
],
|
|
@@ -3544,8 +3602,13 @@
|
|
|
3544
3602
|
},
|
|
3545
3603
|
{
|
|
3546
3604
|
"name": "br-select-option",
|
|
3547
|
-
"description": "
|
|
3605
|
+
"description": "Subcomponente que representa uma opção individual dentro de um `br-select`.\n\n### Papel na composição\n- Define o valor de submissão (`value`) e o rótulo legível exibido para o usuário.\n- Identifica opcionalmente o grupo visual e semântico ao qual a opção pertence.\n- Exibe os estados de seleção (`selected`), desativação (`disabled`) e, no modo de seleção múltipla, o checkbox correspondente.\n- Suporta marcação com destaque textual correspondente aos filtros de busca aplicados.\n\n### Regra de uso e relacionamento\nDeve ser declarado no slot padrão do `br-select` (ou projetado pela lista). É a forma declarativa canônica de fornecer opções em código novo, inclusive quando um framework repete o elemento a partir de uma coleção. O `br-select` lê seus atributos e conteúdo, transforma-os em dados e entrega uma janela virtualizada à lista; portanto, o elemento declarado no slot é a fonte declarativa, não o item visual final da lista. Evite misturá-lo com a prop legada `options` ou com `setOptions()` sem necessidade, pois a coleção imperativa passa a ter precedência depois de ser utilizada. O item comunica suas mudanças de estado ao `br-select` pai, que por sua vez atualiza o valor geral do formulário e o resumo no campo de entrada. O `br-select-option` não deve ser utilizado fora do contexto de seleção.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/select?tab=designer).\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(): __** - Retorna a altura efetiva da opção para cálculo de virtual scroll.\n- **setFocus(): __** - 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.",
|
|
3548
3606
|
"attributes": [
|
|
3607
|
+
{
|
|
3608
|
+
"name": "density",
|
|
3609
|
+
"description": "Define a densidade visual da opção e do item interno.\nAceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.",
|
|
3610
|
+
"values": [{ "name": "BrDensity" }]
|
|
3611
|
+
},
|
|
3549
3612
|
{
|
|
3550
3613
|
"name": "disabled",
|
|
3551
3614
|
"description": "Desativa a interação da opção.",
|
|
@@ -3561,6 +3624,11 @@
|
|
|
3561
3624
|
"description": "Rótulo textual exibido para a opção.",
|
|
3562
3625
|
"values": []
|
|
3563
3626
|
},
|
|
3627
|
+
{
|
|
3628
|
+
"name": "group",
|
|
3629
|
+
"description": "Nome do grupo visual e semântico da opção dentro do `br-select`.\nString vazia é tratada como ausência de grupo.",
|
|
3630
|
+
"values": []
|
|
3631
|
+
},
|
|
3564
3632
|
{
|
|
3565
3633
|
"name": "indeterminate",
|
|
3566
3634
|
"description": "Indica o estado intermediário da opção.",
|
|
@@ -3586,7 +3654,7 @@
|
|
|
3586
3654
|
},
|
|
3587
3655
|
{
|
|
3588
3656
|
"name": "br-sign-in",
|
|
3589
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
3657
|
+
"description": "O componente `br-sign-in` é o controle oficial de autenticação e identificação unificada do GovBR-DS, padronizado para representar o acesso via conta Gov.BR (\"Entrar com gov.br\").\n\n### Para que serve\n\n- **Identificação oficial do cidadão:** Ponto de entrada padrão para os serviços públicos digitais federais integrados ao provedor de identidade Gov.BR.\n- **Padronização visual obrigatória:** Aplica tipografia, cores institucionais, ícone da marca gov.br e dimensões em estrita conformidade com o Manual de Identidade Visual do Governo Federal.\n- **Estados de carregamento e desativação:** Suporta indicação de espera durante o redirecionamento de login.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - O sistema exigir login e autenticação através da plataforma gov.br.\n- **Evite e prefira outro componente quando:**\n - O botão executar uma ação genérica do sistema que não seja login via gov.br (prefira `br-button`).\n - O usuário já estiver autenticado e a intenção for apenas exibir o perfil (prefira `br-avatar`).\n\n### Estrutura e Slots\n\nO `br-sign-in` é um botão de autenticação estilizado com a marca oficial do Governo Federal, recebendo propriedades de rótulo e variantes institucionais.\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/sign-in?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().",
|
|
3590
3658
|
"attributes": [
|
|
3591
3659
|
{
|
|
3592
3660
|
"name": "custom-id",
|
|
@@ -3600,7 +3668,7 @@
|
|
|
3600
3668
|
},
|
|
3601
3669
|
{
|
|
3602
3670
|
"name": "density",
|
|
3603
|
-
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura)
|
|
3671
|
+
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura).\n\nValores inválidos usam `medium`.",
|
|
3604
3672
|
"values": [{ "name": "BrDensity" }]
|
|
3605
3673
|
},
|
|
3606
3674
|
{
|
|
@@ -3643,7 +3711,7 @@
|
|
|
3643
3711
|
},
|
|
3644
3712
|
{
|
|
3645
3713
|
"name": "br-skip-link",
|
|
3646
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
3714
|
+
"description": "O componente `br-skip-link` é o bloco essencial de acessibilidade posicionado no topo da página, permitindo que pessoas que utilizam teclado ou tecnologias assistivas saltem blocos repetitivos e acessem diretamente áreas principais da aplicação.\n\n### Para que serve\n\n- **Atalho de teclado imediato:** Fornece links diretos (\"Ir para o conteúdo principal\", \"Ir para o menu\", \"Ir para a busca\", \"Ir para o rodapé\") logo no primeiro acionamento da tecla Tab.\n- **Conformidade WCAG obrigatória:** Atende ao critério de sucesso 2.4.1 (Bypass Blocks) da WCAG 2.1, essencial para portais e serviços públicos.\n- **Comportamento visual discreto:** Permanece oculto visualmente por padrão, tornando-se visível imediatamente assim que recebe o foco do teclado.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Obrigatoriamente em todas as páginas e aplicações do GovBR-DS, posicionado como o primeiro elemento interativo do corpo do documento.\n- **Evite e prefira outro componente quando:**\n - O link tiver a intenção de navegação comum no corpo do texto (use `br-link`).\n\n### Composição e Subcomponentes\n\n| Subcomponente | Papel | Regra de uso |\n| --- | --- | --- |\n| `br-skip-link` | **Orquestrador de atalhos.** Agrupa a lista de links rápidos e gerencia visibilidade no foco. | Deve ser o primeiro elemento interativo no topo da página. |\n| `br-skip-link-item` | **Item individual de atalho.** Especifica o destino e o texto do salto. | Declarado no slot padrão do `br-skip-link`. |\n\n### Como os subcomponentes se relacionam\n\nO `br-skip-link` atua como contêiner que abriga múltiplos elementos `br-skip-link-item`. Cada item referencia o `id` do elemento de destino na página (ex.: `#main-content`), conduzindo o foco imediatamente para a região desejada.\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/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 canônico emitido quando um destino é ativado.\n- **brDidShow** - Evento emitido quando o skiplink se torna visível.\n- **brSkipLinkShow** - Evento canônico emitido ao exibir o componente.\n- **brDidHide** - Evento emitido quando o skiplink se torna oculto.\n- **brSkipLinkHide** - Evento canônico 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().",
|
|
3647
3715
|
"attributes": [
|
|
3648
3716
|
{
|
|
3649
3717
|
"name": "custom-id",
|
|
@@ -3657,17 +3725,17 @@
|
|
|
3657
3725
|
},
|
|
3658
3726
|
{
|
|
3659
3727
|
"name": "variant",
|
|
3660
|
-
"description": "Define se o skip link apresenta um ou múltiplos itens visíveis.\n- 'simple': Exibe apenas um item por vez.\n- 'compound': Exibe uma lista com múltiplos itens.",
|
|
3728
|
+
"description": "Define se o skip link apresenta um ou múltiplos itens visíveis.\n- 'simple': Exibe apenas um item por vez.\n- 'compound': Exibe uma lista com múltiplos itens.\nValores inválidos usam 'compound'.",
|
|
3661
3729
|
"values": [{ "name": "SkipLinkVariant" }]
|
|
3662
3730
|
},
|
|
3663
3731
|
{
|
|
3664
3732
|
"name": "position",
|
|
3665
|
-
"description": "Define a posição do skip link na tela.\n- 'top-left': Posicionado no canto superior esquerdo.\n- 'top-center': Posicionado no centro superior.\n- 'top-right': Posicionado no canto superior direito.",
|
|
3733
|
+
"description": "Define a posição do skip link na tela.\n- 'top-left': Posicionado no canto superior esquerdo.\n- 'top-center': Posicionado no centro superior.\n- 'top-right': Posicionado no canto superior direito.\nValores inválidos usam 'top-left'.",
|
|
3666
3734
|
"values": [{ "name": "SkipLinkPosition" }]
|
|
3667
3735
|
},
|
|
3668
3736
|
{
|
|
3669
3737
|
"name": "z-index",
|
|
3670
|
-
"description": "Define o z-index do componente.\nControla a ordem de empilhamento do componente na página.",
|
|
3738
|
+
"description": "Define o z-index do componente.\nControla a ordem de empilhamento do componente na página.\nDeve ser um inteiro entre 0 e Number.MAX_SAFE_INTEGER; valores inválidos usam 0.",
|
|
3671
3739
|
"values": []
|
|
3672
3740
|
},
|
|
3673
3741
|
{
|
|
@@ -3680,7 +3748,7 @@
|
|
|
3680
3748
|
},
|
|
3681
3749
|
{
|
|
3682
3750
|
"name": "br-skip-link-item",
|
|
3683
|
-
"description": "Nome canônico de `br-skiplink-item
|
|
3751
|
+
"description": "Nome canônico de `br-skip-link-item`, usado como cada atalho dentro de `br-skip-link`.\nInforme em `target` o `id` ou seletor existente para onde o foco deve ser levado.\nUse um item por região importante da página. A tag `br-skiplink-item` é legada e não deve ser combinada com esta para o mesmo destino.\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.",
|
|
3684
3752
|
"attributes": [
|
|
3685
3753
|
{
|
|
3686
3754
|
"name": "target",
|
|
@@ -3689,7 +3757,7 @@
|
|
|
3689
3757
|
},
|
|
3690
3758
|
{
|
|
3691
3759
|
"name": "key-number",
|
|
3692
|
-
"description": "Número do atalho de teclado.",
|
|
3760
|
+
"description": "Número inteiro de 1 a 9 do atalho de teclado; valores inválidos são ignorados.",
|
|
3693
3761
|
"values": []
|
|
3694
3762
|
},
|
|
3695
3763
|
{
|
|
@@ -3707,7 +3775,7 @@
|
|
|
3707
3775
|
},
|
|
3708
3776
|
{
|
|
3709
3777
|
"name": "br-skiplink-item",
|
|
3710
|
-
"description": "@deprecated Use `br-skip-link-item`.\n\
|
|
3778
|
+
"description": "@deprecated Use `br-skip-link-item`.\n\nSubcomponente individual de `br-skip-link`, utilizado para declarar cada atalho específico de salto de bloco acessível.\n\n### Papel na composição\n\n- Define o texto descritivo do atalho (ex.: \"Ir para o conteúdo\") e o identificador do alvo na página (`targetId` ou `href`).\n- Transfere o foco programático e visual diretamente para o elemento alvo ao ser acionado com Enter ou espaço.\n\n### Regra de uso e relacionamento\n\nDeve ser declarado no slot padrão do orquestrador `br-skip-link`. Cada item deve apontar para um elemento existente na página dotado de `id` e foco acessível (`tabindex=\"-1\"`). Não deve ser usado fora do contexto do skip-link.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/skip-link?tab=designer).\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 canônico emitido quando o item é ativado.\n- **brSkiplinkItemFocus** - Evento emitido quando o item recebe foco.\n- **brSkipLinkItemFocus** - Evento canônico 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.",
|
|
3711
3779
|
"attributes": [
|
|
3712
3780
|
{
|
|
3713
3781
|
"name": "target",
|
|
@@ -3716,7 +3784,7 @@
|
|
|
3716
3784
|
},
|
|
3717
3785
|
{
|
|
3718
3786
|
"name": "key-number",
|
|
3719
|
-
"description": "Número da tecla para acesso rápido.\nPermite que o usuário ative este item pressionando Alt+[keyNumber].\nAceita valores de 1 a 9.\nEsta propriedade implementa uma alternativa ao accessKey nativa,\nfornecendo um atalho de teclado consistente e acessível.",
|
|
3787
|
+
"description": "Número da tecla para acesso rápido.\nPermite que o usuário ative este item pressionando Alt+[keyNumber].\nAceita valores de 1 a 9.\nEsta propriedade implementa uma alternativa ao accessKey nativa,\nfornecendo um atalho de teclado consistente e acessível.\nValores inválidos são ignorados.",
|
|
3720
3788
|
"values": []
|
|
3721
3789
|
},
|
|
3722
3790
|
{
|
|
@@ -3734,7 +3802,7 @@
|
|
|
3734
3802
|
},
|
|
3735
3803
|
{
|
|
3736
3804
|
"name": "br-slider",
|
|
3737
|
-
"description": "
|
|
3805
|
+
"description": "O componente `br-slider` é o controle deslizante do GovBR-DS, desenvolvido para permitir que a pessoa usuária selecione um valor numérico único ou uma faixa contínua de valores dentro de um intervalo delimitado.\n\n### Para que serve\n\n- **Seleção numérica fluida:** Permite escolher valores deslizando uma alça (thumb) ao longo de uma trilha graduada, com atualização em tempo real.\n- **Modo simples e composto (faixa / range):** Suporta uma única alça para valor individual ou duas alças para delimitação de intervalo mínimo e máximo (ex.: faixa de preços, período de anos).\n- **Entrada numérica sincronizada:** Oferece campo de entrada numérico integrado opcional para digitação exata com sincronização bidirecional.\n- **Acessibilidade WAI-ARIA:** Suporta controle total por teclado (setas direcionais, Page Up, Page Down, Home e End) e comunica valores atuais via `aria-valuenow`.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - O usuário precisar definir grandezas graduais onde a exploração intuitiva seja mais conveniente do que a digitação manual isolada.\n - Para filtros de faixa de valores (ex.: \"De R$ 100 até R$ 500\").\n- **Evite e prefira outro componente quando:**\n - A precisão exata for estritamente necessária e o intervalo for arbitrário (prefira `br-input` numérico).\n - O valor for uma escolha categórica sem escala quantitativa (prefira `br-select` ou `br-radio`).\n\n### Estrutura e Slots\n\nO `br-slider` possui estrutura rica com slots de referência, validação e customização da alça:\n- `ref-start`: Slot para customização do rótulo de início da trilha.\n- `ref-end`: Slot para customização do rótulo de fim da trilha.\n- `feedback`: Slot para mensagens de validação (como `br-message`).\n- `thumb-icon`: Slot para ícone personalizado na alça de controle em modo simples.\n- `thumb-start-icon`: Slot para ícone na alça inicial em modo composto (`range`).\n- `thumb-end-icon`: Slot para ícone na alça final em modo composto (`range`).\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/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.",
|
|
3738
3806
|
"attributes": [
|
|
3739
3807
|
{
|
|
3740
3808
|
"name": "custom-id",
|
|
@@ -3753,37 +3821,37 @@
|
|
|
3753
3821
|
},
|
|
3754
3822
|
{
|
|
3755
3823
|
"name": "min",
|
|
3756
|
-
"description": "Valor mínimo aceito pelo slider.",
|
|
3824
|
+
"description": "Valor mínimo aceito pelo slider. Valores inválidos usam `0`.",
|
|
3757
3825
|
"values": []
|
|
3758
3826
|
},
|
|
3759
3827
|
{
|
|
3760
3828
|
"name": "max",
|
|
3761
|
-
"description": "Valor máximo aceito pelo slider.",
|
|
3829
|
+
"description": "Valor máximo aceito pelo slider. Deve ser maior que `min`; valores inválidos usam `100` e relações inválidas usam `min + 100`.",
|
|
3762
3830
|
"values": []
|
|
3763
3831
|
},
|
|
3764
3832
|
{
|
|
3765
3833
|
"name": "step",
|
|
3766
|
-
"description": "Incremento aplicado a cada passo.",
|
|
3834
|
+
"description": "Incremento aplicado a cada passo. Deve ser maior que `0`; valores inválidos usam `1`.",
|
|
3767
3835
|
"values": []
|
|
3768
3836
|
},
|
|
3769
3837
|
{
|
|
3770
3838
|
"name": "validator",
|
|
3771
|
-
"description": "Regra síncrona ou assíncrona aplicada ao número ou intervalo selecionado
|
|
3839
|
+
"description": "Regra síncrona ou assíncrona aplicada ao número ou intervalo selecionado.\nNo modo `range`, recebe um objeto com `start` e `end`.",
|
|
3772
3840
|
"values": [{ "name": "SliderValidator" }]
|
|
3773
3841
|
},
|
|
3774
3842
|
{
|
|
3775
3843
|
"name": "value",
|
|
3776
|
-
"description": "Valor atual do slider (alça inicial no modo composto).",
|
|
3844
|
+
"description": "Valor atual do slider (alça inicial no modo composto). Valores não finitos usam o limite mínimo;\nvalores fora do intervalo são limitados.",
|
|
3777
3845
|
"values": []
|
|
3778
3846
|
},
|
|
3779
3847
|
{
|
|
3780
3848
|
"name": "value-end",
|
|
3781
|
-
"description": "Valor da alça final no modo composto (`range`).\nQuando não fornecido em modo composto, assume o valor de `max`.",
|
|
3849
|
+
"description": "Valor da alça final no modo composto (`range`).\nQuando não fornecido em modo composto, assume o valor de `max`. Valores não finitos usam `max`,\nvalores fora do intervalo são limitados.",
|
|
3782
3850
|
"values": []
|
|
3783
3851
|
},
|
|
3784
3852
|
{
|
|
3785
3853
|
"name": "range-value",
|
|
3786
|
-
"description": "Valor estruturado das duas alças no modo `range
|
|
3854
|
+
"description": "Valor estruturado das duas alças no modo `range`.\nDeve conter `start` e `end` finitos; valores inválidos mantêm o último valor efetivo.\nPasse o objeto por property binding.",
|
|
3787
3855
|
"values": [{ "name": "SliderRangeValue" }]
|
|
3788
3856
|
},
|
|
3789
3857
|
{
|
|
@@ -3791,11 +3859,6 @@
|
|
|
3791
3859
|
"description": "Desativa o slider, tornando-o não interativo.",
|
|
3792
3860
|
"values": []
|
|
3793
3861
|
},
|
|
3794
|
-
{
|
|
3795
|
-
"name": "density",
|
|
3796
|
-
"description": "Densidade da alça de controle.\n`small` = 16px (desktop compacto), `medium` = 20px (desktop padrão), `large` = 24px (mobile).",
|
|
3797
|
-
"values": [{ "name": "SliderDensity" }]
|
|
3798
|
-
},
|
|
3799
3862
|
{
|
|
3800
3863
|
"name": "vertical",
|
|
3801
3864
|
"description": "Exibe o slider na orientação vertical.",
|
|
@@ -3803,7 +3866,7 @@
|
|
|
3803
3866
|
},
|
|
3804
3867
|
{
|
|
3805
3868
|
"name": "orientation",
|
|
3806
|
-
"description": "Orientação canônica. Quando informada, tem precedência sobre `vertical`.",
|
|
3869
|
+
"description": "Orientação canônica. Quando informada, tem precedência sobre `vertical`; valores inválidos usam `horizontal`.",
|
|
3807
3870
|
"values": [{ "name": "horizontal" }, { "name": "vertical" }]
|
|
3808
3871
|
},
|
|
3809
3872
|
{
|
|
@@ -3818,7 +3881,7 @@
|
|
|
3818
3881
|
},
|
|
3819
3882
|
{
|
|
3820
3883
|
"name": "show-input",
|
|
3821
|
-
"description": "Exibe
|
|
3884
|
+
"description": "Exibe um `br-input` numérico sincronizado com a alça.\nNo modo `range`, exibe um campo para o início e outro para o fim; na\norientação horizontal ficam nas extremidades esquerda e direita, e na\nvertical ficam acima e abaixo da trilha. Quando ativo, a etiqueta de valor\nnão é exibida.",
|
|
3822
3885
|
"values": []
|
|
3823
3886
|
},
|
|
3824
3887
|
{
|
|
@@ -3835,57 +3898,87 @@
|
|
|
3835
3898
|
"name": "show-bounds",
|
|
3836
3899
|
"description": "Exibe os limites nas referências inicial e final: `min` no início e `max` no fim\n(limites fixos), tanto em modo simples quanto em modo composto (`range`). O valor\nselecionado por cada alça é exibido na etiqueta (`show-label`), não nas referências.\nQuando ativo, sobrescreve o conteúdo dos slots `ref-start` e `ref-end`.",
|
|
3837
3900
|
"values": []
|
|
3901
|
+
},
|
|
3902
|
+
{
|
|
3903
|
+
"name": "density",
|
|
3904
|
+
"description": "Densidade visual do componente.\nAltera exclusivamente as dimensões da alça de controle (thumb).\nValores aceitos: 'small' (16px), 'medium' (20px - padrão), 'large' (24px).\n'high' e 'low' são aceitos como sinônimos de 'small' e 'large'.",
|
|
3905
|
+
"values": [{ "name": "SliderDensity" }]
|
|
3906
|
+
},
|
|
3907
|
+
{
|
|
3908
|
+
"name": "thumb-icon",
|
|
3909
|
+
"description": "Nome do ícone a ser exibido no interior da alça de controle (thumb).\nNo modo `range`, aplica-se a ambas as alças caso `thumbStartIcon` ou `thumbEndIcon` não sejam especificados.\nExemplo: 'fa-solid:arrows-left-right', 'fa-solid:circle'.",
|
|
3910
|
+
"values": []
|
|
3911
|
+
},
|
|
3912
|
+
{
|
|
3913
|
+
"name": "thumb-start-icon",
|
|
3914
|
+
"description": "Nome do ícone da alça inicial (no modo `range`, alça à esquerda/inferior).",
|
|
3915
|
+
"values": []
|
|
3916
|
+
},
|
|
3917
|
+
{
|
|
3918
|
+
"name": "thumb-end-icon",
|
|
3919
|
+
"description": "Nome do ícone da alça final (no modo `range`, alça à direita/superior).",
|
|
3920
|
+
"values": []
|
|
3921
|
+
},
|
|
3922
|
+
{
|
|
3923
|
+
"name": "gradient",
|
|
3924
|
+
"description": "Habilita gradiente de cores na trilha e sincroniza dinamicamente a cor da alça (thumb)\ne da etiqueta de valor (tooltip) com a cor correspondente à posição atual.\nPode ser um booleano (usa gradiente padrão verde -> amarelo -> vermelho)\nou uma string com cores/gradiente customizado (ex.: '#168821, #ffcd07, #e52207' ou 'linear-gradient(...)').",
|
|
3925
|
+
"values": []
|
|
3926
|
+
},
|
|
3927
|
+
{
|
|
3928
|
+
"name": "steps",
|
|
3929
|
+
"description": "Lista de passos customizados para o slider.\nCada passo pode definir `value`, `label` (texto exibido no tooltip e/ou abaixo da trilha)\ne `icon` (nome do ícone exibido abaixo da marcação do passo).\nAceita array de objetos `SliderStep[]`, array de strings `string[]`, ou string JSON.",
|
|
3930
|
+
"values": [{ "name": "SliderStep[]" }]
|
|
3838
3931
|
}
|
|
3839
3932
|
],
|
|
3840
3933
|
"references": []
|
|
3841
3934
|
},
|
|
3842
3935
|
{
|
|
3843
3936
|
"name": "br-step",
|
|
3844
|
-
"description": "
|
|
3937
|
+
"description": "O componente `br-step` é o indicador visual de etapas e progresso do GovBR-DS, desenvolvido para orientar a pessoa usuária ao longo de fluxos sequenciais e processos com múltiplos passos.\n\n### Para que serve\n\n- **Visualização de progresso:** Informa claramente em qual etapa do processo o usuário se encontra, quais já foram concluídas e quais ainda estão pendentes.\n- **Orientação flexível:** Suporta leiaute horizontal (ideal para telas amplas) e vertical (ideal para fluxos em barra lateral ou dispositivos móveis).\n- **Semântica e acessibilidade WAI-ARIA:** Comunica o passo ativo através de `aria-current=\"step\"` e indica etapas concluídas ou bloqueadas.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - O fluxo tiver entre 2 e 5 etapas lógicas com uma sequência recomendada de execução (ex.: Identificação > Dados > Pagamento > Confirmação).\n- **Evite e prefira outro componente quando:**\n - A pessoa usuária puder alternar livremente entre as seções em qualquer ordem sem dependência de progresso (prefira `br-tab`).\n - For necessário um contêiner completo que gerencie também os painéis de formulário e botões de avançar/voltar (prefira `br-wizard`).\n\n### Composição e Subcomponentes\n\n| Subcomponente | Papel | Regra de uso |\n| --- | --- | --- |\n| `br-step` | **Orquestrador de progresso.** Gerencia a orientação, conecta as linhas de fluxo e calcula os estados das etapas. | Contêiner raiz da barra de progresso. |\n| `br-step-item` | **Etapa individual.** Representa cada passo com número, rótulo e estado. | Declarado dentro do slot padrão do `br-step`. |\n\n### Como os subcomponentes se relacionam\n\nO componente pai `br-step` recebe múltiplos elementos `br-step-item` em seu slot padrão:\n1. Com base na propriedade `current` ou nos índices declarados, o pai calcula as linhas conectoras visuais entre as etapas.\n2. Sincroniza os estados de cada etapa: concluída (`completed`), ativa (`active`) ou desabilitada (`disabled`).\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/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().",
|
|
3845
3938
|
"attributes": [
|
|
3846
3939
|
{
|
|
3847
3940
|
"name": "layout",
|
|
3848
|
-
"description": "propriedade responsável por definir a orientação do componente Step",
|
|
3941
|
+
"description": "propriedade responsável por definir a orientação do componente Step. Valores inválidos usam `horizontal`.",
|
|
3849
3942
|
"values": [{ "name": "BrOrientation" }]
|
|
3850
3943
|
},
|
|
3851
3944
|
{
|
|
3852
3945
|
"name": "orientation",
|
|
3853
|
-
"description": "Orientação do componente. Quando informada, tem precedência sobre `layout`.",
|
|
3946
|
+
"description": "Orientação do componente. Quando informada, tem precedência sobre `layout`; valores inválidos usam `horizontal`.",
|
|
3854
3947
|
"values": [{ "name": "BrOrientation" }]
|
|
3855
3948
|
},
|
|
3856
3949
|
{
|
|
3857
3950
|
"name": "initial-step",
|
|
3858
|
-
"description": "\ndefine o passo que começará destacado",
|
|
3951
|
+
"description": "\ndefine o passo que começará destacado. Valores inválidos usam 0.",
|
|
3859
3952
|
"values": []
|
|
3860
3953
|
},
|
|
3861
3954
|
{
|
|
3862
3955
|
"name": "initial-index",
|
|
3863
|
-
"description": "Índice inicial zero-based. Quando informado, tem precedência sobre `initialStep
|
|
3956
|
+
"description": "Índice inicial zero-based. Quando informado, tem precedência sobre `initialStep`; valores inválidos usam 0.",
|
|
3864
3957
|
"values": []
|
|
3865
3958
|
},
|
|
3866
3959
|
{
|
|
3867
3960
|
"name": "label-position",
|
|
3868
|
-
"description": "\nPropriedade que
|
|
3961
|
+
"description": "\nPropriedade que define a posição onde o texto de destaque, label, ficará localizado no stepItem. Valores inválidos usam `bottom`.",
|
|
3869
3962
|
"values": [{ "name": "StepLabelPosition" }]
|
|
3870
3963
|
},
|
|
3871
3964
|
{
|
|
3872
3965
|
"name": "content-type",
|
|
3873
|
-
"description": "\nPropriedade que define o tipo de conteúdo a ser exibido dentro do componente step
|
|
3966
|
+
"description": "\nPropriedade que define o tipo de conteúdo a ser exibido dentro do componente step e stepItem. Valores inválidos usam `default`.",
|
|
3874
3967
|
"values": [{ "name": "StepContentType" }]
|
|
3875
3968
|
},
|
|
3876
3969
|
{
|
|
3877
3970
|
"name": "mode",
|
|
3878
|
-
"description": "\nPropriedade que define o tipo de comportamento que o componente Step deverá seguir",
|
|
3971
|
+
"description": "\nPropriedade que define o tipo de comportamento que o componente Step deverá seguir. Valores inválidos usam `step`.",
|
|
3879
3972
|
"values": [{ "name": "StepMode" }]
|
|
3880
3973
|
},
|
|
3881
3974
|
{
|
|
3882
3975
|
"name": "progression-type",
|
|
3883
|
-
"description": "\nPropriedade que define o tipo de progressão de etapas que o step vai executar",
|
|
3976
|
+
"description": "\nPropriedade que define o tipo de progressão de etapas que o step vai executar. Valores inválidos usam `nonlinear`.",
|
|
3884
3977
|
"values": [{ "name": "BrProgressionType" }]
|
|
3885
3978
|
},
|
|
3886
3979
|
{
|
|
3887
3980
|
"name": "vertical-content-placement",
|
|
3888
|
-
"description": "Define a posição do conteúdo de cada etapa no layout vertical.\n- `between`: conteúdo abaixo do indicador/rótulo, entre as etapas.\n- `side`: conteúdo em coluna lateral à linha de indicadores
|
|
3981
|
+
"description": "Define a posição do conteúdo de cada etapa no layout vertical.\n- `between`: conteúdo abaixo do indicador/rótulo, entre as etapas.\n- `side`: conteúdo em coluna lateral à linha de indicadores.\nValores inválidos usam `between`.",
|
|
3889
3982
|
"values": [{ "name": "StepVerticalContentPlacement" }]
|
|
3890
3983
|
}
|
|
3891
3984
|
],
|
|
@@ -3893,7 +3986,7 @@
|
|
|
3893
3986
|
},
|
|
3894
3987
|
{
|
|
3895
3988
|
"name": "br-step-item",
|
|
3896
|
-
"description": "
|
|
3989
|
+
"description": "Subcomponente individual de `br-step`, responsável por representar visualmente e semanticamente uma etapa específica do fluxo.\n\n### Papel na composição\n\n- Exibe o indicador numérico ou ícone da etapa, o rótulo descritivo e o estado de conclusão.\n- Permite navegação interativa opcional caso etapas anteriores possam ser revisitadas diretamente com clique.\n\n### Regra de uso e relacionamento\n\nDeve ser declarado no slot padrão do orquestrador `br-step`. O componente pai calcula a orientação (horizontal ou vertical), as linhas de conexão intermediárias e aplica os atributos de acessibilidade da etapa atual. Não deve ser usado fora de um `br-step`.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/step?tab=designer).\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().",
|
|
3897
3990
|
"attributes": [
|
|
3898
3991
|
{
|
|
3899
3992
|
"name": "label",
|
|
@@ -3927,7 +4020,7 @@
|
|
|
3927
4020
|
},
|
|
3928
4021
|
{
|
|
3929
4022
|
"name": "br-icon-name",
|
|
3930
|
-
"description": "
|
|
4023
|
+
"description": "Identificador legado do ícone exibido como conteúdo do step item quando `contentType` é `br-icon`.\nPrefira o slot `content-area` com um SVG ou elemento de ícone controlado pela aplicação.",
|
|
3931
4024
|
"values": []
|
|
3932
4025
|
},
|
|
3933
4026
|
{
|
|
@@ -3940,7 +4033,7 @@
|
|
|
3940
4033
|
},
|
|
3941
4034
|
{
|
|
3942
4035
|
"name": "br-switch",
|
|
3943
|
-
"description": "
|
|
4036
|
+
"description": "O componente `br-switch` é o interruptor de alternância do GovBR-DS, desenvolvido para ativar ou desativar instantaneamente um recurso, modo ou configuração na interface.\n\n### Para que serve\n\n- **Alternância binária imediata:** Alterna entre dois estados mutuamente exclusivos (ligado/desligado, ativo/inativo, habilitado/desabilitado) com efeito imediato na aplicação.\n- **Rótulo contextual dinâmico:** Suporta textos explicativos de estado (ex.: \"Ativado\" / \"Desativado\") e ícones de apoio.\n- **Acessibilidade nativa WAI-ARIA:** Utiliza internamente o papel semântico `role=\"switch\"` com o atributo `aria-checked`, garantindo anúncio claro de estado para leitores de tela.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - A alteração de estado entrar em vigor imediatamente após a interação, sem depender de um botão \"Salvar\" ou submissão de formulário.\n - Para preferências do sistema (ex.: \"Tema escuro\", \"Notificações ativas\", \"Wi-Fi ligado\").\n- **Evite e prefira outro componente quando:**\n - A escolha fizer parte de um formulário com múltiplos campos que serão submetidos juntos (prefira `br-checkbox`).\n - A escolha for entre duas opções com nomes explícitos diferentes de ligado/desligado (prefira `br-radio`).\n\n### Estrutura e Slots\n\nO `br-switch` é um controle direto:\n- `default`: Slot para personalização do rótulo descritivo do switch (com prioridade sobre a propriedade `label`).\n- `feedback`: Slot para mensagens de validação contextual (como `br-message`).\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/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.",
|
|
3944
4037
|
"attributes": [
|
|
3945
4038
|
{
|
|
3946
4039
|
"name": "disabled",
|
|
@@ -3954,7 +4047,7 @@
|
|
|
3954
4047
|
},
|
|
3955
4048
|
{
|
|
3956
4049
|
"name": "validator",
|
|
3957
|
-
"description": "Regra síncrona ou assíncrona aplicada ao estado booleano do switch.",
|
|
4050
|
+
"description": "Regra síncrona ou assíncrona aplicada ao estado booleano do switch.\nRetorne uma mensagem para invalidar ou `null` para aceitar o valor.",
|
|
3958
4051
|
"values": [{ "name": "SwitchValidator" }]
|
|
3959
4052
|
},
|
|
3960
4053
|
{
|
|
@@ -3974,7 +4067,7 @@
|
|
|
3974
4067
|
},
|
|
3975
4068
|
{
|
|
3976
4069
|
"name": "label-position",
|
|
3977
|
-
"description": "Posição do rótulo em relação ao switch.",
|
|
4070
|
+
"description": "Posição do rótulo em relação ao switch. Valores inválidos usam `left`.",
|
|
3978
4071
|
"values": [{ "name": "right" }, { "name": "left" }, { "name": "top" }]
|
|
3979
4072
|
},
|
|
3980
4073
|
{
|
|
@@ -4009,7 +4102,7 @@
|
|
|
4009
4102
|
},
|
|
4010
4103
|
{
|
|
4011
4104
|
"name": "density",
|
|
4012
|
-
"description": "Ajusta a área de interação: `small` é compacto, `medium` é o padrão e `large` é mais espaçado
|
|
4105
|
+
"description": "Ajusta a área de interação: `small` é compacto, `medium` é o padrão e `large` é mais espaçado.\nValores inválidos usam `medium`.",
|
|
4013
4106
|
"values": [
|
|
4014
4107
|
{ "name": "large" },
|
|
4015
4108
|
{ "name": "medium" },
|
|
@@ -4021,7 +4114,7 @@
|
|
|
4021
4114
|
},
|
|
4022
4115
|
{
|
|
4023
4116
|
"name": "br-tab",
|
|
4024
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
4117
|
+
"description": "O componente `br-tab` é o organizador de navegação por abas do GovBR-DS, desenvolvido para permitir que a pessoa usuária alterne entre diferentes visões ou painéis de conteúdo correlacionados sem sair da mesma página.\n\n### Para que serve\n\n- **Segmentação de conteúdo em mesmo nível:** Agrupa informações que compartilham o mesmo contexto geral (ex.: \"Visão Geral\", \"Especificações\", \"Histórico\", \"Anexos\").\n- **Economia de espaço vertical:** Evita rolagens excessivas na página mantendo apenas o painel selecionado visível no momento.\n- **Navegação acessível WAI-ARIA Tablist:** Implementa o padrão oficial de abas acessíveis: papéis semânticos `tablist`, `tab` e `tabpanel`, com controle total por setas do teclado e foco cíclico.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Houver conjuntos equivalentes de informação entre os quais a pessoa usuária pode navegar livremente e em qualquer ordem.\n- **Evite e prefira outro componente quando:**\n - O conteúdo for sequencial com dependência de avanço ou conclusão de etapas anteriores (prefira `br-step` ou `br-wizard`).\n - As abas tiverem a função de navegar para rotas e URLs distintas da aplicação (prefira uma barra de links com `br-link` ou `br-header`).\n\n### Composição e Subcomponentes\n\n| Subcomponente | Papel | Regra de uso |\n| --- | --- | --- |\n| `br-tab` | **Orquestrador de abas.** Constrói a barra de navegação acessível (`tablist`), controla a aba ativa e gerencia o teclado. | Contêiner raiz obrigatório declarado no template. |\n| `br-tab-item` | **Aba e painel associado.** Define simultaneamente o rótulo do botão da aba e o conteúdo do painel correspondente. | Declarado no slot padrão do `br-tab`. |\n\n### Como os subcomponentes se relacionam\n\nO `br-tab` adota uma arquitetura declarativa prática:\n1. A aplicação declara os elementos `br-tab-item` dentro do slot padrão do `br-tab`.\n2. O componente pai extrai os rótulos e ícones de cada item para renderizar a barra superior de abas (`role=\"tab\"`).\n3. O pai controla a visibilidade dos painéis (`role=\"tabpanel\"`), exibindo exclusivamente o conteúdo da aba selecionada e garantindo a correlação de IDs acessíveis (`aria-controls`, `aria-labelledby`).\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/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\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.",
|
|
4025
4118
|
"attributes": [
|
|
4026
4119
|
{
|
|
4027
4120
|
"name": "active-tab-id",
|
|
@@ -4035,12 +4128,12 @@
|
|
|
4035
4128
|
},
|
|
4036
4129
|
{
|
|
4037
4130
|
"name": "density",
|
|
4038
|
-
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura)
|
|
4131
|
+
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura).\n\nValores inválidos usam `medium`.",
|
|
4039
4132
|
"values": [{ "name": "TabDensity" }]
|
|
4040
4133
|
},
|
|
4041
4134
|
{
|
|
4042
4135
|
"name": "color-mode",
|
|
4043
|
-
"description": "Define se o Tab usará um esquema de cores escuro.",
|
|
4136
|
+
"description": "Define se o Tab usará um esquema de cores escuro. Valores inválidos são ignorados.",
|
|
4044
4137
|
"values": [{ "name": "TabColorMode" }]
|
|
4045
4138
|
},
|
|
4046
4139
|
{
|
|
@@ -4055,7 +4148,7 @@
|
|
|
4055
4148
|
},
|
|
4056
4149
|
{
|
|
4057
4150
|
"name": "alignment",
|
|
4058
|
-
"description": "Alinhamento horizontal canônico. Quando informado, tem precedência sobre `alignItemsTab`.",
|
|
4151
|
+
"description": "Alinhamento horizontal canônico. Quando informado, tem precedência sobre `alignItemsTab`; valores inválidos usam `start`.",
|
|
4059
4152
|
"values": [{ "name": "TabAlignItems" }]
|
|
4060
4153
|
},
|
|
4061
4154
|
{
|
|
@@ -4078,7 +4171,7 @@
|
|
|
4078
4171
|
},
|
|
4079
4172
|
{
|
|
4080
4173
|
"name": "br-tab-item",
|
|
4081
|
-
"description": "
|
|
4174
|
+
"description": "Subcomponente individual de `br-tab`, responsável por representar conjuntamente a aba de seleção e o respectivo painel de conteúdo associado.\n\n### Papel na composição\n\n- Define o título ou rótulo da aba (propriedade `label` ou slot `label`), ícones de apoio e o estado de seleção (`active`) ou desativação (`disabled`).\n- Contém o corpo de elementos que compõem o painel renderizado quando a aba é selecionada.\n\n### Regra de uso e relacionamento\n\nDeve ser declarado dentro do slot padrão do orquestrador `br-tab`. O componente pai é responsável por montar a barra de botões acessíveis, sincronizar os atributos WAI-ARIA e controlar a alternância de visibilidade do painel. Não deve ser usado isoladamente sem o `br-tab` pai.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/tab?tab=designer).\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.",
|
|
4082
4175
|
"attributes": [
|
|
4083
4176
|
{
|
|
4084
4177
|
"name": "tab-item-id",
|
|
@@ -4097,7 +4190,7 @@
|
|
|
4097
4190
|
},
|
|
4098
4191
|
{
|
|
4099
4192
|
"name": "icon",
|
|
4100
|
-
"description": "Define o ícone do item de tab
|
|
4193
|
+
"description": "Define o ícone do item de tab usando classes CSS do Font Awesome 5, como `fas fa-bell`.\nO formato Iconify é aceito apenas para compatibilidade legada e não deve ser usado em novos códigos.",
|
|
4101
4194
|
"values": []
|
|
4102
4195
|
},
|
|
4103
4196
|
{
|
|
@@ -4135,7 +4228,7 @@
|
|
|
4135
4228
|
},
|
|
4136
4229
|
{
|
|
4137
4230
|
"name": "br-table",
|
|
4138
|
-
"description": "
|
|
4231
|
+
"description": "O componente `br-table` é o elemento oficial do GovBR-DS para exibição e gerenciamento de dados tabulares estruturados em linhas e colunas, desenvolvido com suporte a CSS Grid, responsividade e alta flexibilidade de composição.\n\n### Para que serve\n\n- **Apresentação de conjuntos de dados relacionais:** Organiza registros com múltiplos atributos comparáveis (ex.: relatórios, tabelas de processos, listagens financeiras).\n- **Recursos interativos avançados:** Suporta ordenação por coluna, seleção simples ou múltipla de linhas, densidades variadas (alta, média, baixa) e paginação integrada com `br-pagination`.\n- **Acessibilidade WAI-ARIA:** Preserva a semântica de tabela acessível (`role=\"table\"`, `role=\"columnheader\"`, `role=\"row\"`, `role=\"cell\"`) mesmo em leiautes baseados em CSS Grid.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - As informações compartilharem campos e atributos fixos que justifiquem a comparação lado a lado em colunas.\n - A pessoa usuária precisar ordenar, filtrar ou selecionar múltiplos registros da lista.\n- **Evite e prefira outro componente quando:**\n - Os itens forem heterogêneos com estruturas visuais distintas (prefira `br-card`).\n - Houver apenas um texto linear simples por item (prefira `br-list`).\n\n### Composição e Subcomponentes\n\nO ecossistema da Tabela segue a hierarquia semântica modular:\n\n| Subcomponente | Papel | Regra de uso |\n| --- | --- | --- |\n| `br-table` | **Orquestrador principal.** Gerencia o grid de colunas, ordenação, seleção de linhas e densidade. | Contêiner raiz da tabela. |\n| `br-table-header` | **Seção de cabeçalho.** Agrupa as linhas de títulos das colunas. | Declarado no slot `header` da tabela. |\n| `br-table-body` | **Corpo de dados.** Agrupa as linhas de registros de conteúdo. | Declarado no slot `body` (ou padrão) da tabela. |\n| `br-table-row` | **Linha.** Representa uma linha de cabeçalho ou de registro de dados. | Declarado dentro de `br-table-header` ou `br-table-body`. |\n| `br-table-header-cell` | **Célula de título.** Célula de cabeçalho com suporte a botão de ordenação. | Declarado dentro de `br-table-row` no cabeçalho. |\n| `br-table-cell` | **Célula de dados.** Célula de conteúdo individual de uma coluna. | Declarado dentro de `br-table-row` no corpo de dados. |\n\n### Como os subcomponentes se relacionam\n\nA arquitetura de `br-table` reflete a semântica nativa de tabelas HTML de forma modular:\n`br-table` → `br-table-header` / `br-table-body` → `br-table-row` → `br-table-header-cell` / `br-table-cell`.\nO componente pai orquestra o alinhamento das colunas via tokens de Grid, distribuindo automaticamente os estados de seleção e foco para as linhas filhas.\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/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.",
|
|
4139
4232
|
"attributes": [
|
|
4140
4233
|
{
|
|
4141
4234
|
"name": "column-width",
|
|
@@ -4144,7 +4237,7 @@
|
|
|
4144
4237
|
},
|
|
4145
4238
|
{
|
|
4146
4239
|
"name": "density",
|
|
4147
|
-
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura).",
|
|
4240
|
+
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura).\n\nValores inválidos usam `medium`. Quando omitida, a densidade média é aplicada ao token.",
|
|
4148
4241
|
"values": [{ "name": "TableDensity" }]
|
|
4149
4242
|
},
|
|
4150
4243
|
{
|
|
@@ -4207,13 +4300,13 @@
|
|
|
4207
4300
|
},
|
|
4208
4301
|
{
|
|
4209
4302
|
"name": "br-table-body",
|
|
4210
|
-
"description": "
|
|
4303
|
+
"description": "Subcomponente de corpo de dados de `br-table`, responsável por agrupar as linhas de registros de conteúdo.\n\n### Papel na composição\n\n- Define a região principal da tabela com a semântica de `rowgroup` de conteúdo.\n- Recebe as linhas de dados `br-table-row` preenchidas com as células de valor `br-table-cell`.\n\n### Regra de uso e relacionamento\n\nDeve ser declarado dentro do slot `body` (ou padrão) de `br-table`. Ele organiza o fluxo vertical de registros coordenado pelo pai. Não deve ser usado fora de uma tabela.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).\n---\n\n\n### **Methods:**\n - **render(): __** - Renderiza o host do componente.\n\n### **CSS Parts:**\n - **body** - Wrapper do corpo da tabela.",
|
|
4211
4304
|
"attributes": [],
|
|
4212
4305
|
"references": []
|
|
4213
4306
|
},
|
|
4214
4307
|
{
|
|
4215
4308
|
"name": "br-table-cell",
|
|
4216
|
-
"description": "
|
|
4309
|
+
"description": "Subcomponente de célula de dados de `br-table`, utilizado para renderizar o valor ou conteúdo de um registro em uma coluna específica.\n\n### Papel na composição\n\n- Exibe o dado pontual da coluna (`role=\"cell\"`), podendo conter texto, badges, ícones, botões de ação ou links.\n\n### Regra de uso e relacionamento\n\nDeve ser declarado dentro de um `br-table-row` situado no `br-table-body`. O dimensionamento e posicionamento são calculados pelas regras de CSS Grid da tabela pai.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).\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.",
|
|
4217
4310
|
"attributes": [
|
|
4218
4311
|
{
|
|
4219
4312
|
"name": "horizontal-alignment",
|
|
@@ -4245,17 +4338,17 @@
|
|
|
4245
4338
|
},
|
|
4246
4339
|
{
|
|
4247
4340
|
"name": "br-table-header",
|
|
4248
|
-
"description": "
|
|
4341
|
+
"description": "Subcomponente de cabeçalho de `br-table`, utilizado para agrupar as linhas de títulos das colunas.\n\n### Papel na composição\n\n- Define a região superior da tabela com a semântica de `rowgroup` de cabeçalho.\n- Recebe uma ou mais linhas `br-table-row` que contêm as células de título `br-table-header-cell`.\n\n### Regra de uso e relacionamento\n\nDeve ser declarado dentro do slot `header` do componente pai `br-table`. O orquestrador da tabela aplica a configuração de colunas e espaçamentos sobre o cabeçalho. Não deve ser usado isoladamente.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).\n---\n\n\n### **Methods:**\n - **render(): __** - Renderiza o host do componente.\n\n### **CSS Parts:**\n - **header** - Wrapper do cabeçalho da tabela.",
|
|
4249
4342
|
"attributes": [],
|
|
4250
4343
|
"references": []
|
|
4251
4344
|
},
|
|
4252
4345
|
{
|
|
4253
4346
|
"name": "br-table-header-cell",
|
|
4254
|
-
"description": "
|
|
4347
|
+
"description": "Subcomponente de célula de cabeçalho de `br-table`, responsável por nomear uma coluna e oferecer controles opcionais de ordenação.\n\n### Papel na composição\n\n- Define o rótulo da coluna com `role=\"columnheader\"`.\n- Suporta gatilho interativo de ordenação crescente e decrescente (`sortable`), emitindo eventos para reordenação de dados.\n\n### Regra de uso e relacionamento\n\nDeve ser declarado dentro de um `br-table-row` situado no `br-table-header`. O alinhamento horizontal segue a definição da coluna na tabela pai.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).\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.",
|
|
4255
4348
|
"attributes": [
|
|
4256
4349
|
{
|
|
4257
4350
|
"name": "column-width",
|
|
4258
|
-
"description": "Define a largura da coluna.",
|
|
4351
|
+
"description": "Define a largura da coluna.\nAceita `fill`, `content`, larguras positivas em `px` ou frações positivas em `fr`.\nValores inválidos usam o fallback da tabela.",
|
|
4259
4352
|
"values": [{ "name": "ColumnWidth" }]
|
|
4260
4353
|
},
|
|
4261
4354
|
{
|
|
@@ -4288,7 +4381,7 @@
|
|
|
4288
4381
|
},
|
|
4289
4382
|
{
|
|
4290
4383
|
"name": "br-table-row",
|
|
4291
|
-
"description": "
|
|
4384
|
+
"description": "Subcomponente de linha de `br-table`, utilizado tanto no cabeçalho quanto no corpo de dados para agrupar uma sequência horizontal de células.\n\n### Papel na composição\n\n- Representa uma linha de registro (`role=\"row\"`).\n- Suporta estados de seleção (`selected`), foco e hover coordenados com o pai.\n\n### Regra de uso e relacionamento\n\nDeclarado dentro de `br-table-header` (quando contiver `br-table-header-cell`) ou dentro de `br-table-body` (quando contiver `br-table-cell`). Não deve ser usado isoladamente.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/table?tab=designer).\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.",
|
|
4292
4385
|
"attributes": [
|
|
4293
4386
|
{
|
|
4294
4387
|
"name": "horizontal-alignment",
|
|
@@ -4320,7 +4413,7 @@
|
|
|
4320
4413
|
},
|
|
4321
4414
|
{
|
|
4322
4415
|
"name": "br-tag",
|
|
4323
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
4416
|
+
"description": "O componente `br-tag` é o elemento visual compacto do GovBR-DS utilizado para rotular, categorizar, exibir metadados ou aplicar filtros rápidos na interface.\n\n### Para que serve\n\n- **Categorização e metadados:** Identifica o tipo, categoria ou atributos de um item (ex.: \"Educação\", \"Tecnologia\", \"Urgente\").\n- **Sinalização de status:** Exibe estados operacionais de processos ou documentos através de cores semânticas e ícones (ex.: \"Aprovado\", \"Pendente\", \"Cancelado\").\n- **Filtros interativos dispensáveis:** Suporta botão de fechamento (`closable`), permitindo remover filtros dinamicamente.\n- **Tags de seleção:** Suporta modo interativo selecionável com integração nativa a formulários (`formAssociated`).\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Exibir palavras-chave associadas a um conteúdo ou cartão.\n - Exibir status sucinto de registros em tabelas (`br-table`) ou cabeçalhos.\n - Oferecer filtros aplicados que podem ser removidos com um clique.\n- **Evite e prefira outro componente quando:**\n - O elemento for a ação primária ou um comando executável (prefira `br-button`).\n - O texto for extenso e exigir explicações detalhadas (prefira `br-message`).\n\n### Estrutura e Slots\n\nO `br-tag` oferece flexibilidade estrutural:\n- `default`: Slot principal para texto ou conteúdo livre da tag.\n- `label`: Slot para rótulo customizado.\n- `icon`: Slot para inserção de ícone auxiliar (`br-icon`).\n- `close-button`: Slot para customizar o botão de remoção.\n- `feedback`: Slot para mensagem de validação contextual.\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/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.",
|
|
4324
4417
|
"attributes": [
|
|
4325
4418
|
{
|
|
4326
4419
|
"name": "label",
|
|
@@ -4329,7 +4422,7 @@
|
|
|
4329
4422
|
},
|
|
4330
4423
|
{
|
|
4331
4424
|
"name": "icon-name",
|
|
4332
|
-
"description": "
|
|
4425
|
+
"description": "Identificador legado do ícone exibido ao lado do texto.",
|
|
4333
4426
|
"values": []
|
|
4334
4427
|
},
|
|
4335
4428
|
{
|
|
@@ -4344,7 +4437,7 @@
|
|
|
4344
4437
|
},
|
|
4345
4438
|
{
|
|
4346
4439
|
"name": "validator",
|
|
4347
|
-
"description": "Regra síncrona ou assíncrona aplicada ao estado e
|
|
4440
|
+
"description": "Regra síncrona ou assíncrona aplicada ao estado, valor e rótulo da tag.",
|
|
4348
4441
|
"values": [{ "name": "TagValidator" }]
|
|
4349
4442
|
},
|
|
4350
4443
|
{
|
|
@@ -4369,7 +4462,7 @@
|
|
|
4369
4462
|
},
|
|
4370
4463
|
{
|
|
4371
4464
|
"name": "density",
|
|
4372
|
-
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura)
|
|
4465
|
+
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura).\n\nValores inválidos usam `medium`.",
|
|
4373
4466
|
"values": [{ "name": "BrDensity" }]
|
|
4374
4467
|
},
|
|
4375
4468
|
{
|
|
@@ -4384,7 +4477,7 @@
|
|
|
4384
4477
|
},
|
|
4385
4478
|
{
|
|
4386
4479
|
"name": "variant",
|
|
4387
|
-
"description": "Variante funcional canônica.
|
|
4480
|
+
"description": "Variante funcional canônica. 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.",
|
|
4388
4481
|
"values": [{ "name": "TagVariant" }]
|
|
4389
4482
|
},
|
|
4390
4483
|
{
|
|
@@ -4414,12 +4507,12 @@
|
|
|
4414
4507
|
},
|
|
4415
4508
|
{
|
|
4416
4509
|
"name": "min-selections",
|
|
4417
|
-
"description": "Quantidade mínima de tags selecionadas no mesmo grupo.",
|
|
4510
|
+
"description": "Quantidade mínima de tags selecionadas no mesmo grupo. Deve ser um inteiro não negativo; valores inválidos usam 0.",
|
|
4418
4511
|
"values": []
|
|
4419
4512
|
},
|
|
4420
4513
|
{
|
|
4421
4514
|
"name": "max-selections",
|
|
4422
|
-
"description": "Quantidade máxima de tags selecionadas no mesmo grupo. Zero significa sem limite.",
|
|
4515
|
+
"description": "Quantidade máxima de tags selecionadas no mesmo grupo. Zero significa sem limite. Deve ser um inteiro não negativo; valores inválidos usam 0.",
|
|
4423
4516
|
"values": []
|
|
4424
4517
|
},
|
|
4425
4518
|
{
|
|
@@ -4437,7 +4530,7 @@
|
|
|
4437
4530
|
},
|
|
4438
4531
|
{
|
|
4439
4532
|
"name": "br-textarea",
|
|
4440
|
-
"description": "
|
|
4533
|
+
"description": "O componente `br-textarea` é o controle oficial do GovBR-DS para entrada de dados textuais em múltiplas linhas, projetado para capturar textos longos, justificativas, descrições ou observações em formulários.\n\n### Para que serve\n\n- **Entrada de texto extenso:** Permite que a pessoa usuária digite parágrafos de texto livre com quebra de linha e rolagem vertical.\n- **Contador regressivo de caracteres:** Exibe a quantidade de caracteres restantes em tempo real com base no limite máximo (`maxlength`), alertando visualmente quando o limite é atingido.\n- **Integração com formulários:** É associado nativamente a formulários HTML (`formAssociated`), sincronizando valor, estado de validação e foco acessível.\n- **Redimensionamento controlado:** Oferece opções de redimensionamento vertical, horizontal ou fixo.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - A entrada esperada tiver mais de uma frase ou exigir formatação multilinha (comentários, manifestações, relatórios, justificativas).\n - Houver restrição estrita de caracteres com necessidade de feedback quantitativo dinâmico.\n- **Evite e prefira outro componente quando:**\n - O dado for curto e couber em uma única linha (como nomes, e-mails, títulos, documentos): prefira `br-input`.\n - For necessário um editor rico WYSIWYG com formatação em negrito, tabelas e links.\n\n### Estrutura e Slots\n\nO `br-textarea` é composto pelo campo e slots de apoio:\n- `default`: Slot para instruções adicionais ou textos de ajuda.\n- `feedback`: Slot para mensagens de validação contextual (como `br-message`).\n- `validation-loading`: Slot para indicador de carregamento durante validações assíncronas.\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/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.",
|
|
4441
4534
|
"attributes": [
|
|
4442
4535
|
{
|
|
4443
4536
|
"name": "value",
|
|
@@ -4486,12 +4579,12 @@
|
|
|
4486
4579
|
},
|
|
4487
4580
|
{
|
|
4488
4581
|
"name": "minlength",
|
|
4489
|
-
"description": "Número mínimo de caracteres necessário para o valor ser válido.",
|
|
4582
|
+
"description": "Número mínimo de caracteres necessário para o valor ser válido. Deve ser um inteiro não negativo; valores inválidos usam 0.",
|
|
4490
4583
|
"values": []
|
|
4491
4584
|
},
|
|
4492
4585
|
{
|
|
4493
4586
|
"name": "maxlength",
|
|
4494
|
-
"description": "Número máximo de caracteres permitidos no textarea. Se definido como 0, não há limite.",
|
|
4587
|
+
"description": "Número máximo de caracteres permitidos no textarea. Se definido como 0, não há limite.\nDeve ser um inteiro não negativo; valores inválidos usam 0.",
|
|
4495
4588
|
"values": []
|
|
4496
4589
|
},
|
|
4497
4590
|
{
|
|
@@ -4501,7 +4594,7 @@
|
|
|
4501
4594
|
},
|
|
4502
4595
|
{
|
|
4503
4596
|
"name": "state",
|
|
4504
|
-
"description": "Define o estado visual do componente, podendo ser 'danger', 'success' ou 'warning'.",
|
|
4597
|
+
"description": "Define o estado visual do componente, podendo ser 'danger', 'success' ou 'warning'. Valores inválidos não aplicam estado.",
|
|
4505
4598
|
"values": [
|
|
4506
4599
|
{ "name": "danger" },
|
|
4507
4600
|
{ "name": "success" },
|
|
@@ -4510,7 +4603,7 @@
|
|
|
4510
4603
|
},
|
|
4511
4604
|
{
|
|
4512
4605
|
"name": "feedback-state",
|
|
4513
|
-
"description": "Estado de feedback canônico. Quando informado, tem precedência sobre `state
|
|
4606
|
+
"description": "Estado de feedback canônico. Quando informado, tem precedência sobre `state`; valores inválidos não aplicam estado.",
|
|
4514
4607
|
"values": [
|
|
4515
4608
|
{ "name": "danger" },
|
|
4516
4609
|
{ "name": "success" },
|
|
@@ -4524,7 +4617,7 @@
|
|
|
4524
4617
|
},
|
|
4525
4618
|
{
|
|
4526
4619
|
"name": "density",
|
|
4527
|
-
"description": "Ajusta a densidade do componente, podendo ser 'small', 'medium' ou 'large'
|
|
4620
|
+
"description": "Ajusta a densidade do componente, podendo ser 'small', 'medium' ou 'large'.\nValores inválidos usam `medium`.",
|
|
4528
4621
|
"values": [
|
|
4529
4622
|
{ "name": "small" },
|
|
4530
4623
|
{ "name": "medium" },
|
|
@@ -4543,20 +4636,35 @@
|
|
|
4543
4636
|
},
|
|
4544
4637
|
{
|
|
4545
4638
|
"name": "rows",
|
|
4546
|
-
"description": "Número de linhas visíveis no textarea.\nDefine a altura do componente em relação ao número de linhas de texto exibidas.",
|
|
4639
|
+
"description": "Número de linhas visíveis no textarea.\nDefine a altura do componente em relação ao número de linhas de texto exibidas.\nDeve ser um inteiro positivo; valores inválidos são ignorados.",
|
|
4547
4640
|
"values": []
|
|
4548
4641
|
},
|
|
4549
4642
|
{
|
|
4550
4643
|
"name": "cols",
|
|
4551
|
-
"description": "Número de colunas (caracteres) visíveis no textarea.\nDefine a largura do componente em relação ao número de caracteres por linha.",
|
|
4644
|
+
"description": "Número de colunas (caracteres) visíveis no textarea.\nDefine a largura do componente em relação ao número de caracteres por linha.\nDeve ser um inteiro positivo; valores inválidos são ignorados.",
|
|
4645
|
+
"values": []
|
|
4646
|
+
},
|
|
4647
|
+
{
|
|
4648
|
+
"name": "auto-grow",
|
|
4649
|
+
"description": "Ajusta automaticamente a altura ao conteúdo sem exibir rolagem vertical.\nQuando ativo, o componente controla a dimensão vertical; `resize=\"vertical\"`\ne `resize=\"both\"` passam a se comportar como `none`, enquanto\n`resize=\"horizontal\"` continua disponível.",
|
|
4552
4650
|
"values": []
|
|
4651
|
+
},
|
|
4652
|
+
{
|
|
4653
|
+
"name": "resize",
|
|
4654
|
+
"description": "Define os eixos que a pessoa usuária pode redimensionar manualmente.\nQuando omitida, preserva o comportamento nativo atual do navegador.\nValores inválidos são ignorados.",
|
|
4655
|
+
"values": [{ "name": "TextareaResize" }]
|
|
4656
|
+
},
|
|
4657
|
+
{
|
|
4658
|
+
"name": "wrap",
|
|
4659
|
+
"description": "Encaminha a política nativa de quebra de linha ao `<textarea>` interno.\nQuando omitida, o navegador usa o comportamento nativo `soft`.\nValores inválidos são ignorados.",
|
|
4660
|
+
"values": [{ "name": "TextareaWrap" }]
|
|
4553
4661
|
}
|
|
4554
4662
|
],
|
|
4555
4663
|
"references": []
|
|
4556
4664
|
},
|
|
4557
4665
|
{
|
|
4558
4666
|
"name": "br-tooltip",
|
|
4559
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
4667
|
+
"description": "O componente `br-tooltip` é a sobreposição informativa flutuante do GovBR-DS, desenvolvida para fornecer dicas breves e esclarecimentos contextuais quando o usuário foca ou posiciona o cursor sobre um elemento da interface.\n\n### Para que serve\n\n- **Esclarecimento contextual imediato:** Revela descrições sucintas para botões de ícone, termos técnicos, siglas ou campos que necessitem de auxílio extra.\n- **Posicionamento automático:** Posiciona o balão informativo em relação ao elemento de acionamento (topo, direita, baixo, esquerda) ajustando-se dinamicamente ao espaço da tela.\n- **Acessibilidade WAI-ARIA:** Associa o acionador ao balão com `role=\"tooltip\"` e `aria-describedby`, exibindo-se automaticamente no foco por teclado e fechando com a tecla Escape.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Fornecer o rótulo descritivo de um botão que contenha apenas ícone.\n - Explicar uma sigla ou termo abreviado na interface.\n- **Evite e prefira outro componente quando:**\n - O conteúdo for extenso, contiver botões interativos ou links navegáveis (prefira `br-dropdown`, `br-modal` ou texto inline fixo, pois tooltips desaparecem ao mover o ponteiro).\n - A informação for indispensável para a conclusão de uma tarefa crítica (ela deve estar sempre visível na tela).\n\n### Estrutura e Slots\n\nO `br-tooltip` é composto por acionador e conteúdo:\n- `trigger`: Slot obrigatório onde a aplicação declara o elemento de controle gatilho (ex.: um `br-button` de ícone).\n- `content`: Slot onde é inserido o texto ou balão de conteúdo exibido pelo tooltip.\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/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.",
|
|
4560
4668
|
"attributes": [
|
|
4561
4669
|
{
|
|
4562
4670
|
"name": "custom-id",
|
|
@@ -4570,27 +4678,27 @@
|
|
|
4570
4678
|
},
|
|
4571
4679
|
{
|
|
4572
4680
|
"name": "position",
|
|
4573
|
-
"description": "Posição do tooltip em relação ao acionador.",
|
|
4681
|
+
"description": "Posição do tooltip em relação ao acionador. Valores inválidos usam `top`.",
|
|
4574
4682
|
"values": [{ "name": "TooltipPosition" }]
|
|
4575
4683
|
},
|
|
4576
4684
|
{
|
|
4577
4685
|
"name": "type",
|
|
4578
|
-
"description": "Tipo do tooltip: 'standard' (simples) ou 'popover' (mais rico, com fechamento por interação).",
|
|
4686
|
+
"description": "Tipo do tooltip: 'standard' (simples) ou 'popover' (mais rico, com fechamento por interação). Valores inválidos usam `standard`.",
|
|
4579
4687
|
"values": [{ "name": "TooltipType" }]
|
|
4580
4688
|
},
|
|
4581
4689
|
{
|
|
4582
4690
|
"name": "interaction",
|
|
4583
|
-
"description": "Modo de interação para exibição do tooltip: 'hover' ou 'click'.",
|
|
4691
|
+
"description": "Modo de interação para exibição do tooltip: 'hover' ou 'click'. Valores inválidos usam `hover`.",
|
|
4584
4692
|
"values": [{ "name": "hover" }, { "name": "click" }]
|
|
4585
4693
|
},
|
|
4586
4694
|
{
|
|
4587
4695
|
"name": "density",
|
|
4588
|
-
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura)
|
|
4696
|
+
"description": "Define a densidade visual do componente.\n\n- `small`: Alta densidade (componente menor, mais compacto e com menos espaçamento).\n- `medium`: Densidade intermediária, padrão recomendado para a maioria dos casos.\n- `large`: Baixa densidade (componente maior, mais espaçamento e altura).\n\nValores inválidos usam `medium`.",
|
|
4589
4697
|
"values": [{ "name": "TooltipDensity" }]
|
|
4590
4698
|
},
|
|
4591
4699
|
{
|
|
4592
4700
|
"name": "state",
|
|
4593
|
-
"description": "Estado visual do tooltip: 'info', 'warning', 'error', 'danger' ou 'success'.",
|
|
4701
|
+
"description": "Estado visual do tooltip: 'info', 'warning', 'error', 'danger' ou 'success'. Valores inválidos usam `info`.",
|
|
4594
4702
|
"values": [{ "name": "TooltipState" }]
|
|
4595
4703
|
},
|
|
4596
4704
|
{
|
|
@@ -4598,14 +4706,19 @@
|
|
|
4598
4706
|
"description": "Exibe automaticamente sem interação quando true; caso contrário, depende do acionador.",
|
|
4599
4707
|
"values": []
|
|
4600
4708
|
},
|
|
4709
|
+
{
|
|
4710
|
+
"name": "match-trigger-width",
|
|
4711
|
+
"description": "Faz o conteúdo acompanhar a largura do acionador enquanto estiver visível.\nO valor padrão `false` preserva a largura determinada pelo conteúdo.",
|
|
4712
|
+
"values": []
|
|
4713
|
+
},
|
|
4601
4714
|
{
|
|
4602
4715
|
"name": "show-delay",
|
|
4603
|
-
"description": "Atraso em milissegundos antes de exibir.",
|
|
4716
|
+
"description": "Atraso em milissegundos antes de exibir. Valores negativos usam `0`.",
|
|
4604
4717
|
"values": []
|
|
4605
4718
|
},
|
|
4606
4719
|
{
|
|
4607
4720
|
"name": "hide-delay",
|
|
4608
|
-
"description": "Atraso em milissegundos antes de ocultar.",
|
|
4721
|
+
"description": "Atraso em milissegundos antes de ocultar. Valores negativos usam `0`.",
|
|
4609
4722
|
"values": []
|
|
4610
4723
|
}
|
|
4611
4724
|
],
|
|
@@ -4613,7 +4726,7 @@
|
|
|
4613
4726
|
},
|
|
4614
4727
|
{
|
|
4615
4728
|
"name": "br-upload",
|
|
4616
|
-
"description": "
|
|
4729
|
+
"description": "O componente `br-upload` é o elemento oficial do GovBR-DS para seleção, anexação e envio de arquivos em formulários, com suporte a seleção múltipla, área de arrastar-e-soltar (drag-and-drop) e acompanhamento de progresso.\n\n### Para que serve\n\n- **Seleção e anexação de arquivos:** Permite anexar documentos, planilhas, imagens ou outros formatos através do seletor nativo do sistema operacional ou por arrastar e soltar.\n- **Validação de tipos e tamanhos:** Valida extensões permitidas (`accept`) e tamanho máximo por arquivo (`max-file-size`), informando erros de validação de forma acessível.\n- **Listagem visual e remoção:** Exibe a lista de arquivos selecionados com nome, tamanho formatado (KB/MB), barra de progresso individual e botão de exclusão.\n- **Integração com formulários:** Integrado nativamente via `formAssociated`, permitindo submissão tradicional de formulários ou upload assíncrono programático.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - A pessoa usuária precisar enviar comprovantes, relatórios, fotografias ou documentos digitais.\n - For necessário limitar e validar os tipos de arquivo e o tamanho máximo antes do envio ao servidor.\n- **Evite e prefira outro componente quando:**\n - A captura for exclusivamente de texto ou URLs externas (prefira `br-input`).\n\n### Estrutura e Slots\n\nO `br-upload` possui estrutura rica com múltiplos slots:\n- `default`: Slot para texto personalizado do botão de upload (padrão: \"Selecione o arquivo\").\n- `upload-list`: Slot opcional para substituição da área padrão de listagem de arquivos.\n- `label`: Slot para personalização do rótulo do campo.\n- `helper`: Slot para instruções ou restrições de formato/tamanho exibidas abaixo do campo.\n- `feedback`: Slot para mensagens de validação e erro (como `br-message`).\n- `loading`: Slot para indicador exibido durante o envio assíncrono dos arquivos.\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/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 canônico 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** - Texto personalizado para o botão de upload. Se não fornecido, será exibido \"Selecione o arquivo\" como texto padrão. Use este slot para personalizar o texto do botão de acordo com o contexto do upload, por exemplo: \"Anexar documentos\", \"Enviar imagens\", etc.\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.",
|
|
4617
4730
|
"attributes": [
|
|
4618
4731
|
{
|
|
4619
4732
|
"name": "custom-id",
|
|
@@ -4632,7 +4745,7 @@
|
|
|
4632
4745
|
},
|
|
4633
4746
|
{
|
|
4634
4747
|
"name": "capture",
|
|
4635
|
-
"description": "Sugere a câmera usada na captura de imagem ou vídeo.\nO navegador pode ignorar a preferência conforme dispositivo e permissões.",
|
|
4748
|
+
"description": "Sugere a câmera usada na captura de imagem ou vídeo. Valores inválidos são ignorados.\nO navegador pode ignorar a preferência conforme dispositivo e permissões.",
|
|
4636
4749
|
"values": [
|
|
4637
4750
|
{ "name": "''" },
|
|
4638
4751
|
{ "name": "user" },
|
|
@@ -4646,12 +4759,12 @@
|
|
|
4646
4759
|
},
|
|
4647
4760
|
{
|
|
4648
4761
|
"name": "upload-files",
|
|
4649
|
-
"description": "Lista de arquivos já enviados (para edição ou pré-visualização).\nPode ser uma string JSON ou um array de objetos IUploadFile.",
|
|
4762
|
+
"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.",
|
|
4650
4763
|
"values": [{ "name": "IUploadFile[]" }]
|
|
4651
4764
|
},
|
|
4652
4765
|
{
|
|
4653
4766
|
"name": "existing-files",
|
|
4654
|
-
"description": "Arquivos já existentes. Quando informada, tem precedência sobre `uploadFiles
|
|
4767
|
+
"description": "Arquivos já existentes. Quando informada, tem precedência sobre `uploadFiles`.\nCada item deve ter `name` não vazio e `size` numérico não negativo opcional.\nUse JSON no atributo HTML ou um array por property binding.",
|
|
4655
4768
|
"values": [{ "name": "IUploadFile[]" }]
|
|
4656
4769
|
},
|
|
4657
4770
|
{
|
|
@@ -4666,7 +4779,7 @@
|
|
|
4666
4779
|
},
|
|
4667
4780
|
{
|
|
4668
4781
|
"name": "state",
|
|
4669
|
-
"description": "Estado visual: 'info', 'warning', 'danger' ou 'success'.",
|
|
4782
|
+
"description": "Estado visual: 'info', 'warning', 'danger' ou 'success'. Valores inválidos não aplicam estado.",
|
|
4670
4783
|
"values": [{ "name": "BrFeedbackState" }]
|
|
4671
4784
|
},
|
|
4672
4785
|
{
|
|
@@ -4681,17 +4794,17 @@
|
|
|
4681
4794
|
},
|
|
4682
4795
|
{
|
|
4683
4796
|
"name": "min-files",
|
|
4684
|
-
"description": "Quantidade mínima de arquivos, incluindo arquivos já enviados.",
|
|
4797
|
+
"description": "Quantidade mínima de arquivos, incluindo arquivos já enviados. Deve ser um inteiro não negativo; valores inválidos usam `0`.",
|
|
4685
4798
|
"values": []
|
|
4686
4799
|
},
|
|
4687
4800
|
{
|
|
4688
4801
|
"name": "max-files",
|
|
4689
|
-
"description": "Quantidade máxima de arquivos. Zero significa sem limite.",
|
|
4802
|
+
"description": "Quantidade máxima de arquivos. Zero significa sem limite. Deve ser um inteiro não negativo; valores inválidos usam `0`.",
|
|
4690
4803
|
"values": []
|
|
4691
4804
|
},
|
|
4692
4805
|
{
|
|
4693
4806
|
"name": "max-file-size",
|
|
4694
|
-
"description": "Tamanho máximo permitido para cada arquivo, em bytes. Zero significa sem limite.",
|
|
4807
|
+
"description": "Tamanho máximo permitido para cada arquivo, em bytes. Zero significa sem limite. Deve ser um inteiro não negativo; valores inválidos usam `0`.",
|
|
4695
4808
|
"values": []
|
|
4696
4809
|
},
|
|
4697
4810
|
{
|
|
@@ -4714,7 +4827,7 @@
|
|
|
4714
4827
|
},
|
|
4715
4828
|
{
|
|
4716
4829
|
"name": "br-wizard",
|
|
4717
|
-
"description": "Para a documentação completa, incluindo diretrizes de
|
|
4830
|
+
"description": "O componente `br-wizard` é o orquestrador completo de fluxos passo a passo do GovBR-DS, desenvolvido para guiar a pessoa usuária através de formulários e tarefas complexas distribuídas em etapas consecutivas.\n\n### Para que serve\n\n- **Condução guiada de processos:** Apresenta um formulário longo dividido em etapas menores e focadas, reduzindo a carga cognitiva e o índice de abandono.\n- **Barra de progresso e navegação integradas:** Combina o indicador visual de etapas (`step`), os painéis de conteúdo de cada etapa (`br-wizard-panel`) e a barra de ações com botões de \"Voltar\", \"Avançar\", \"Concluir\" e \"Cancelar\".\n- **Validação por etapa:** Permite interceptar o avanço de cada passo para validação antes de liberar o próximo painel.\n\n### Quando utilizar\n\n- **Utilize quando:**\n - Houver um processo de cadastro, requerimento, compra ou configuração estruturado em etapas com dependência de sequência.\n - For essencial oferecer navegação pré-programada de retorno e avanço com controle de estado.\n- **Evite e prefira outro componente quando:**\n - O objetivo for apenas mostrar o status de um pedido já concluído (use `br-step` simples).\n - O usuário puder navegar em qualquer ordem entre as seções da tela (use `br-tab`).\n\n### Composição e Subcomponentes\n\n| Subcomponente | Papel | Regra de uso |\n| --- | --- | --- |\n| `br-wizard` | **Orquestrador principal.** Gerencia a barra de progresso, ações de navegação (voltar/avançar), botões de rodapé e controle do painel ativo. | Deve ser o contêiner raiz do fluxo. |\n| `br-wizard-panel` | **Painel de etapa individual.** Contém os campos e formulários de uma etapa específica. | Declarado dentro do slot padrão do `br-wizard`. |\n\n### Como os subcomponentes se relacionam\n\nO `br-wizard` gerencia ativamente os elementos `br-wizard-panel` declarados em seu interior:\n1. O pai exibe apenas o painel correspondente à etapa atual (`activeStep`), mantendo os demais ocultos.\n2. Ao avançar ou retroceder, o `br-wizard` dispara eventos de validação e troca de etapa (`brStepChange`), atualizando simultaneamente o cabeçalho de progresso e as ações do rodapé.\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/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(): __** - 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(): __** - 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_): __** - Navega para uma etapa específica.\nExecuta validação se estiver avançando (etapa alvo > etapa atual).\n- **reset(): __** - Retorna à primeira etapa do wizard.\nNão executa validação (útil para reiniciar o fluxo).\n- **getCurrentStep(): __** - Retorna o elemento HTML do painel ativo no momento.\n- **getAllSteps(): __** - Retorna todos os painéis do wizard.\n- **getStepByIndex(stepNumber: _number_): __** - Retorna um painel específico pelo índice.\n- **getCurrentStepIndex(): __** - Retorna o índice (número) da etapa atual.\nA numeração começa em 1 (primeira etapa = 1, segunda = 2, etc).\n- **getTotalSteps(): __** - 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.",
|
|
4718
4831
|
"attributes": [
|
|
4719
4832
|
{
|
|
4720
4833
|
"name": "step",
|
|
@@ -4723,12 +4836,12 @@
|
|
|
4723
4836
|
},
|
|
4724
4837
|
{
|
|
4725
4838
|
"name": "initial-step",
|
|
4726
|
-
"description": "Índice da etapa inicial do wizard.\nDefine qual etapa será exibida ao carregar o componente.\nA numeração começa em 1 (primeira etapa = 1, segunda = 2, etc).",
|
|
4839
|
+
"description": "Índice da etapa inicial do wizard.\nDefine qual etapa será exibida ao carregar o componente.\nA numeração começa em 1 (primeira etapa = 1, segunda = 2, etc).\nValores inválidos usam 1.",
|
|
4727
4840
|
"values": []
|
|
4728
4841
|
},
|
|
4729
4842
|
{
|
|
4730
4843
|
"name": "initial-index",
|
|
4731
|
-
"description": "Índice inicial zero-based. Quando informado, tem precedência sobre `initialStep
|
|
4844
|
+
"description": "Índice inicial zero-based. Quando informado, tem precedência sobre `initialStep`; valores inválidos usam 0.",
|
|
4732
4845
|
"values": []
|
|
4733
4846
|
},
|
|
4734
4847
|
{
|
|
@@ -4756,7 +4869,7 @@
|
|
|
4756
4869
|
},
|
|
4757
4870
|
{
|
|
4758
4871
|
"name": "br-wizard-panel",
|
|
4759
|
-
"description": "
|
|
4872
|
+
"description": "Subcomponente individual de `br-wizard`, responsável por encapsular o formulário, campos de entrada ou informações pertencentes a uma etapa específica do fluxo guiado.\n\n### Papel na composição\n\n- Agrupa todos os campos de formulário e conteúdos daquela etapa.\n- Informa o título e subtítulo da etapa que serão refletidos na barra de progresso do wizard.\n\n### Regra de uso e relacionamento\n\nDeve ser declarado no slot padrão do orquestrador `br-wizard`. O componente pai é quem decide qual painel deve estar visível com base na etapa corrente, coordenando os botões de avançar e voltar. Não deve ser instanciado de forma autônoma fora de um `br-wizard`.\n\nPara a documentação completa de design, consulte o [Design System do GovBR](https://www.gov.br/ds/components/wizard?tab=designer).\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.",
|
|
4760
4873
|
"attributes": [
|
|
4761
4874
|
{
|
|
4762
4875
|
"name": "label",
|