@govbr-ds/webcomponents 2.0.0-next.57 → 2.0.0-next.58
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/dist/cjs/br-avatar.cjs.entry.js +3 -3
- package/dist/cjs/br-breadcrumb.cjs.entry.js +3 -3
- package/dist/cjs/br-button_2.cjs.entry.js +6 -6
- package/dist/cjs/br-card.cjs.entry.js +3 -3
- package/dist/cjs/br-checkbox_3.cjs.entry.js +9 -9
- package/dist/cjs/br-checkgroup.cjs.entry.js +3 -3
- package/dist/cjs/br-collapse_2.cjs.entry.js +308 -0
- package/dist/cjs/br-divider.cjs.entry.js +3 -3
- package/dist/cjs/br-dropdown_2.cjs.entry.js +6 -6
- package/dist/cjs/br-footer-category.cjs.entry.js +3 -3
- package/dist/cjs/br-footer-item.cjs.entry.js +3 -3
- package/dist/cjs/br-footer-legal.cjs.entry.js +3 -3
- package/dist/cjs/br-footer-logo.cjs.entry.js +3 -3
- package/dist/cjs/br-footer-social.cjs.entry.js +3 -3
- package/dist/cjs/br-footer.cjs.entry.js +3 -3
- package/dist/cjs/br-header-function.cjs.entry.js +138 -0
- package/dist/cjs/br-header-link.cjs.entry.js +56 -0
- package/dist/cjs/br-header-list.cjs.entry.js +248 -0
- package/dist/cjs/br-header-logo.cjs.entry.js +160 -0
- package/dist/cjs/br-header.cjs.entry.js +565 -0
- package/dist/cjs/br-item.cjs.entry.js +288 -0
- package/dist/cjs/br-loading.cjs.entry.js +4 -4
- package/dist/cjs/br-magic-button.cjs.entry.js +4 -4
- package/dist/cjs/br-menu-header.cjs.entry.js +52 -0
- package/dist/cjs/br-menu-info.cjs.entry.js +42 -0
- package/dist/cjs/br-menu-item.cjs.entry.js +72 -0
- package/dist/cjs/br-menu-link.cjs.entry.js +41 -0
- package/dist/cjs/br-menu-list.cjs.entry.js +136 -0
- package/dist/cjs/br-menu-logo.cjs.entry.js +49 -0
- package/dist/cjs/br-menu-social.cjs.entry.js +33 -0
- package/dist/cjs/br-menu.cjs.entry.js +837 -0
- package/dist/cjs/br-message.cjs.entry.js +4 -4
- package/dist/cjs/br-modal.cjs.entry.js +3 -3
- package/dist/cjs/br-pagination.cjs.entry.js +3 -3
- package/dist/cjs/br-scrim.cjs.entry.js +4 -4
- package/dist/cjs/br-sign-in.cjs.entry.js +4 -4
- package/dist/cjs/br-skip-link.cjs.entry.js +322 -0
- package/dist/cjs/br-skiplink-item.cjs.entry.js +193 -0
- package/dist/cjs/br-step-item.cjs.entry.js +4 -4
- package/dist/cjs/br-step.cjs.entry.js +4 -4
- package/dist/cjs/br-switch.cjs.entry.js +4 -4
- package/dist/cjs/br-tab-item.cjs.entry.js +4 -4
- package/dist/cjs/br-tab.cjs.entry.js +5 -5
- package/dist/cjs/br-table-cell.cjs.entry.js +4 -4
- package/dist/cjs/br-table-header-cell.cjs.entry.js +4 -4
- package/dist/cjs/br-table-header-row.cjs.entry.js +4 -4
- package/dist/cjs/br-table-row.cjs.entry.js +4 -4
- package/dist/cjs/br-table.cjs.entry.js +4 -4
- package/dist/cjs/br-tag.cjs.entry.js +4 -4
- package/dist/cjs/br-textarea.cjs.entry.js +4 -4
- package/dist/cjs/br-tooltip.cjs.entry.js +4 -4
- package/dist/cjs/br-upload.cjs.entry.js +7 -4
- package/dist/cjs/breakpoint-observer-qqFx-NzP.js +200 -0
- package/dist/cjs/breakpoint-observer-qqFx-NzP.js.map +1 -0
- package/dist/cjs/{index-CFIH680Y.js → index-BFg1F33U.js} +80 -14
- package/dist/cjs/index-BFg1F33U.js.map +1 -0
- package/dist/cjs/index.cjs.js +2 -0
- package/dist/cjs/loader.cjs.js +4 -2
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/cjs/webcomponents.cjs.js +5 -3
- package/dist/cjs/webcomponents.cjs.js.map +1 -1
- package/dist/collection/collection-manifest.json +17 -2
- package/dist/collection/components/avatar/avatar.css +1 -1
- package/dist/collection/components/breadcrumb/breadcrumb.css +1 -1
- package/dist/collection/components/button/button.css +1 -1
- package/dist/collection/components/card/card.css +1 -1
- package/dist/collection/components/checkbox/checkbox.css +1 -1
- package/dist/collection/components/checkgroup/checkgroup.css +1 -1
- package/dist/collection/components/collapse/collapse.css +1 -1
- package/dist/collection/components/collapse/collapse.js +1 -1
- package/dist/collection/components/collapse/collapse.js.map +1 -1
- package/dist/collection/components/divider/divider.css +1 -1
- package/dist/collection/components/dropdown/dropdown.css +1 -1
- package/dist/collection/components/footer/footer-category/footer-category.css +1 -1
- package/dist/collection/components/footer/footer-item/footer-item.css +1 -1
- package/dist/collection/components/footer/footer-legal/footer-legal.css +1 -1
- package/dist/collection/components/footer/footer-logo/footer-logo.css +1 -1
- package/dist/collection/components/footer/footer-social/footer-social.css +1 -1
- package/dist/collection/components/footer/footer.css +1 -1
- package/dist/collection/components/header/header-function/header-function.css +1 -0
- package/dist/collection/components/header/header-function/header-function.js +256 -0
- package/dist/collection/components/header/header-function/header-function.js.map +1 -0
- package/dist/collection/components/header/header-link/header-link.css +1 -0
- package/dist/collection/components/header/header-link/header-link.js +134 -0
- package/dist/collection/components/header/header-link/header-link.js.map +1 -0
- package/dist/collection/components/header/header-list/header-list.css +1 -0
- package/dist/collection/components/header/header-list/header-list.js +420 -0
- package/dist/collection/components/header/header-list/header-list.js.map +1 -0
- package/dist/collection/components/header/header-logo/header-logo.css +1 -0
- package/dist/collection/components/header/header-logo/header-logo.js +363 -0
- package/dist/collection/components/header/header-logo/header-logo.js.map +1 -0
- package/dist/collection/components/header/header.css +1 -0
- package/dist/collection/components/header/header.js +901 -0
- package/dist/collection/components/header/header.js.map +1 -0
- package/dist/collection/components/icon/icon.css +1 -1
- package/dist/collection/components/icon/icon.js +1 -1
- package/dist/collection/components/input/input.css +1 -1
- package/dist/collection/components/input/input.js +1 -1
- package/dist/collection/components/item/item.css +1 -1
- package/dist/collection/components/item/item.js +1 -1
- package/dist/collection/components/list/list.css +1 -1
- package/dist/collection/components/list/list.js +1 -1
- package/dist/collection/components/loading/loading.css +1 -1
- package/dist/collection/components/loading/loading.js +1 -1
- package/dist/collection/components/magic-button/magic-button.css +1 -1
- package/dist/collection/components/magic-button/magic-button.js +1 -1
- package/dist/collection/components/menu/menu-header/menu-header.css +1 -0
- package/dist/collection/components/menu/menu-header/menu-header.js +154 -0
- package/dist/collection/components/menu/menu-header/menu-header.js.map +1 -0
- package/dist/collection/components/menu/menu-info/menu-info.css +1 -0
- package/dist/collection/components/menu/menu-info/menu-info.js +92 -0
- package/dist/collection/components/menu/menu-info/menu-info.js.map +1 -0
- package/dist/collection/components/menu/menu-item/menu-item.css +1 -0
- package/dist/collection/components/menu/menu-item/menu-item.js +233 -0
- package/dist/collection/components/menu/menu-item/menu-item.js.map +1 -0
- package/dist/collection/components/menu/menu-link/menu-link.css +1 -0
- package/dist/collection/components/menu/menu-link/menu-link.js +123 -0
- package/dist/collection/components/menu/menu-link/menu-link.js.map +1 -0
- package/dist/collection/components/menu/menu-list/menu-list.css +1 -0
- package/dist/collection/components/menu/menu-list/menu-list.js +295 -0
- package/dist/collection/components/menu/menu-list/menu-list.js.map +1 -0
- package/dist/collection/components/menu/menu-logo/menu-logo.css +1 -0
- package/dist/collection/components/menu/menu-logo/menu-logo.js +162 -0
- package/dist/collection/components/menu/menu-logo/menu-logo.js.map +1 -0
- package/dist/collection/components/menu/menu-social/menu-social.css +1 -0
- package/dist/collection/components/menu/menu-social/menu-social.js +139 -0
- package/dist/collection/components/menu/menu-social/menu-social.js.map +1 -0
- package/dist/collection/components/menu/menu.css +1 -0
- package/dist/collection/components/menu/menu.js +1064 -0
- package/dist/collection/components/menu/menu.js.map +1 -0
- package/dist/collection/components/message/message.css +1 -1
- package/dist/collection/components/message/message.js +1 -1
- package/dist/collection/components/modal/modal.css +1 -1
- package/dist/collection/components/pagination/pagination.css +1 -1
- package/dist/collection/components/radio/radio.css +1 -1
- package/dist/collection/components/radio/radio.js +1 -1
- package/dist/collection/components/scrim/scrim.css +1 -1
- package/dist/collection/components/scrim/scrim.js +1 -1
- package/dist/collection/components/scrim/scrim.js.map +1 -1
- package/dist/collection/components/select/select.css +1 -1
- package/dist/collection/components/select/select.js +1 -1
- package/dist/collection/components/sign-in/sign-in.css +1 -1
- package/dist/collection/components/sign-in/sign-in.js +1 -1
- package/dist/collection/components/skip-link/skip-link-item/skip-link-item.css +1 -0
- package/dist/collection/components/skip-link/skip-link-item/skip-link-item.js +392 -0
- package/dist/collection/components/skip-link/skip-link-item/skip-link-item.js.map +1 -0
- package/dist/collection/components/skip-link/skip-link.css +1 -0
- package/dist/collection/components/skip-link/skip-link.js +588 -0
- package/dist/collection/components/skip-link/skip-link.js.map +1 -0
- package/dist/collection/components/step/step-item/step-item.css +1 -1
- package/dist/collection/components/step/step-item/step-item.js +1 -1
- package/dist/collection/components/step/step.css +1 -1
- package/dist/collection/components/step/step.js +1 -1
- package/dist/collection/components/switch/switch.css +1 -1
- package/dist/collection/components/switch/switch.js +1 -1
- package/dist/collection/components/tab/tab-item/tab-item.css +1 -1
- package/dist/collection/components/tab/tab-item/tab-item.js +1 -1
- package/dist/collection/components/tab/tab.css +1 -1
- package/dist/collection/components/tab/tab.js +2 -2
- package/dist/collection/components/table/table-cell/table-cell.css +1 -1
- package/dist/collection/components/table/table-cell/table-cell.js +1 -1
- 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 +1 -1
- package/dist/collection/components/table/table-header-row/table-header-row.css +1 -1
- package/dist/collection/components/table/table-header-row/table-header-row.js +1 -1
- package/dist/collection/components/table/table-row/table-row.css +1 -1
- package/dist/collection/components/table/table-row/table-row.js +1 -1
- package/dist/collection/components/table/table.css +1 -1
- package/dist/collection/components/table/table.js +1 -1
- package/dist/collection/components/tag/tag.css +1 -1
- package/dist/collection/components/tag/tag.js +1 -1
- package/dist/collection/components/tag/tag.js.map +1 -1
- package/dist/collection/components/textarea/textarea.css +1 -1
- package/dist/collection/components/textarea/textarea.js +1 -1
- package/dist/collection/components/tooltip/tooltip.css +1 -1
- package/dist/collection/components/tooltip/tooltip.js +1 -1
- package/dist/collection/components/upload/upload.css +1 -1
- package/dist/collection/components/upload/upload.js +26 -1
- package/dist/collection/components/upload/upload.js.map +1 -1
- package/dist/collection/pages/components/header/index.js +18 -0
- package/dist/collection/pages/components/menu/index.js +18 -0
- package/dist/collection/pages/components/skip-link/index.js +18 -0
- package/dist/collection/pages/components/upload/index.js +1 -1
- package/dist/collection/utils/breakpoint-observer.js +193 -0
- package/dist/collection/utils/breakpoint-observer.js.map +1 -0
- package/dist/components/br-avatar.js +14 -14
- package/dist/components/br-avatar.js.map +1 -1
- package/dist/components/br-breadcrumb.js +22 -22
- package/dist/components/br-breadcrumb.js.map +1 -1
- package/dist/components/br-button.js +1 -1
- package/dist/components/br-card.js +5 -5
- package/dist/components/br-card.js.map +1 -1
- package/dist/components/br-checkbox.js +4 -4
- package/dist/components/br-checkgroup.js +8 -8
- package/dist/components/br-checkgroup.js.map +1 -1
- package/dist/components/br-collapse.js +3 -3
- package/dist/components/br-divider.js +1 -1
- package/dist/components/br-dropdown.js +1 -1
- package/dist/components/br-footer-category.js +22 -22
- package/dist/components/br-footer-category.js.map +1 -1
- package/dist/components/br-footer-item.js +12 -12
- package/dist/components/br-footer-item.js.map +1 -1
- package/dist/components/br-footer-legal.js +7 -7
- package/dist/components/br-footer-legal.js.map +1 -1
- package/dist/components/br-footer-logo.js +7 -7
- package/dist/components/br-footer-logo.js.map +1 -1
- package/dist/components/br-footer-social.js +13 -13
- package/dist/components/br-footer-social.js.map +1 -1
- package/dist/components/br-footer.js +11 -11
- package/dist/components/br-footer.js.map +1 -1
- package/dist/components/br-header-function.d.ts +11 -0
- package/dist/components/br-header-function.js +198 -0
- package/dist/components/br-header-function.js.map +1 -0
- package/dist/components/br-header-link.d.ts +11 -0
- package/dist/components/br-header-link.js +102 -0
- package/dist/components/br-header-link.js.map +1 -0
- package/dist/components/br-header-list.d.ts +11 -0
- package/dist/components/br-header-list.js +302 -0
- package/dist/components/br-header-list.js.map +1 -0
- package/dist/components/br-header-logo.d.ts +11 -0
- package/dist/components/br-header-logo.js +200 -0
- package/dist/components/br-header-logo.js.map +1 -0
- package/dist/components/br-header.d.ts +11 -0
- package/dist/components/br-header.js +677 -0
- package/dist/components/br-header.js.map +1 -0
- package/dist/components/br-icon.js +4 -4
- package/dist/components/br-input.js +3 -3
- package/dist/components/br-item.js +4 -4
- package/dist/components/br-list.js +4 -4
- package/dist/components/br-loading.js +6 -6
- package/dist/components/br-loading.js.map +1 -1
- package/dist/components/br-magic-button.js +10 -10
- package/dist/components/br-magic-button.js.map +1 -1
- package/dist/components/br-menu-header.d.ts +11 -0
- package/dist/components/br-menu-header.js +125 -0
- package/dist/components/br-menu-header.js.map +1 -0
- package/dist/components/br-menu-info.d.ts +11 -0
- package/dist/components/br-menu-info.js +76 -0
- package/dist/components/br-menu-info.js.map +1 -0
- package/dist/components/br-menu-item.d.ts +11 -0
- package/dist/components/br-menu-item.js +13 -0
- package/dist/components/br-menu-item.js.map +1 -0
- package/dist/components/br-menu-link.d.ts +11 -0
- package/dist/components/br-menu-link.js +95 -0
- package/dist/components/br-menu-link.js.map +1 -0
- package/dist/components/br-menu-list.d.ts +11 -0
- package/dist/components/br-menu-list.js +199 -0
- package/dist/components/br-menu-list.js.map +1 -0
- package/dist/components/br-menu-logo.d.ts +11 -0
- package/dist/components/br-menu-logo.js +98 -0
- package/dist/components/br-menu-logo.js.map +1 -0
- package/dist/components/br-menu-social.d.ts +11 -0
- package/dist/components/br-menu-social.js +102 -0
- package/dist/components/br-menu-social.js.map +1 -0
- package/dist/components/br-menu.d.ts +11 -0
- package/dist/components/br-menu.js +952 -0
- package/dist/components/br-menu.js.map +1 -0
- package/dist/components/br-message.js +12 -12
- package/dist/components/br-message.js.map +1 -1
- package/dist/components/br-modal.js +16 -16
- package/dist/components/br-modal.js.map +1 -1
- package/dist/components/br-pagination.js +35 -35
- package/dist/components/br-pagination.js.map +1 -1
- package/dist/components/br-radio.js +3 -3
- package/dist/components/br-scrim.js +34 -34
- package/dist/components/br-scrim.js.map +1 -1
- package/dist/components/br-select.js +3 -3
- package/dist/components/br-sign-in.js +18 -18
- package/dist/components/br-sign-in.js.map +1 -1
- package/dist/components/br-skip-link.d.ts +11 -0
- package/dist/components/br-skip-link.js +372 -0
- package/dist/components/br-skip-link.js.map +1 -0
- package/dist/components/br-skiplink-item.d.ts +11 -0
- package/dist/components/br-skiplink-item.js +271 -0
- package/dist/components/br-skiplink-item.js.map +1 -0
- package/dist/components/br-step-item.js +30 -30
- package/dist/components/br-step-item.js.map +1 -1
- package/dist/components/br-step.js +14 -14
- package/dist/components/br-step.js.map +1 -1
- package/dist/components/br-switch.js +12 -12
- package/dist/components/br-switch.js.map +1 -1
- package/dist/components/br-tab-item.js +13 -13
- package/dist/components/br-tab-item.js.map +1 -1
- package/dist/components/br-tab.js +17 -17
- package/dist/components/br-tab.js.map +1 -1
- package/dist/components/br-table-cell.js +12 -12
- package/dist/components/br-table-cell.js.map +1 -1
- package/dist/components/br-table-header-cell.js +15 -15
- package/dist/components/br-table-header-cell.js.map +1 -1
- package/dist/components/br-table-header-row.js +10 -10
- package/dist/components/br-table-header-row.js.map +1 -1
- package/dist/components/br-table-row.js +13 -13
- package/dist/components/br-table-row.js.map +1 -1
- package/dist/components/br-table.js +13 -13
- package/dist/components/br-table.js.map +1 -1
- package/dist/components/br-tag.js +4 -409
- package/dist/components/br-tag.js.map +1 -1
- package/dist/components/br-textarea.js +16 -16
- package/dist/components/br-textarea.js.map +1 -1
- package/dist/components/br-tooltip.js +24 -24
- package/dist/components/br-tooltip.js.map +1 -1
- package/dist/components/br-upload.js +46 -43
- package/dist/components/br-upload.js.map +1 -1
- package/dist/components/index.d.ts +30 -0
- package/dist/components/index.js +31 -1
- package/dist/components/p-75pWQXE5.js +200 -0
- package/dist/components/{p-CvEK2Il7.js.map → p-75pWQXE5.js.map} +1 -1
- package/dist/components/p-B3imhKtv.js +164 -0
- package/dist/components/{p-C5niSTTq.js.map → p-B3imhKtv.js.map} +1 -1
- package/dist/components/p-BQbwSVaT.js +622 -0
- package/dist/components/{p-B8JLH_ik.js.map → p-BQbwSVaT.js.map} +1 -1
- package/dist/components/p-CcJHd-EX.js +400 -0
- package/dist/components/{p-CkOo_SmU.js.map → p-CcJHd-EX.js.map} +1 -1
- package/dist/components/p-Coy21EGa.js +250 -0
- package/dist/components/{p-BGvZWtkB.js.map → p-Coy21EGa.js.map} +1 -1
- package/dist/components/p-CqGm9xxH.js +143 -0
- package/dist/components/p-CqGm9xxH.js.map +1 -0
- package/dist/components/p-CqgyNPQx.js +191 -0
- package/dist/components/p-CqgyNPQx.js.map +1 -0
- package/dist/components/{p-CDqodOhC.js → p-CwXw4TB_.js} +15 -15
- package/dist/components/{p-CDqodOhC.js.map → p-CwXw4TB_.js.map} +1 -1
- package/dist/components/{p-Ck56essO.js → p-DPI-6oom.js} +295 -295
- package/dist/components/{p-Ck56essO.js.map → p-DPI-6oom.js.map} +1 -1
- package/dist/components/{p-DSkSDmzD.js → p-Dl8sbmQD.js} +44 -37
- package/dist/components/p-Dl8sbmQD.js.map +1 -0
- package/dist/components/p-MRCv9Vq6.js +275 -0
- package/dist/components/p-MRCv9Vq6.js.map +1 -0
- package/dist/components/p-_1olx8GR.js +179 -0
- package/dist/components/{p-0zSorzux.js.map → p-_1olx8GR.js.map} +1 -1
- package/dist/components/p-ey_HrFRS.js +415 -0
- package/dist/components/p-ey_HrFRS.js.map +1 -0
- package/dist/components/p-foGc27n-.js +361 -0
- package/dist/components/{p-DGjCsmhy.js.map → p-foGc27n-.js.map} +1 -1
- package/dist/components/p-wT-Xw7qJ.js +136 -0
- package/dist/components/{p-CodfIeVU.js.map → p-wT-Xw7qJ.js.map} +1 -1
- package/dist/custom-elements.json +10552 -6386
- package/dist/esm/br-avatar.entry.js +3 -3
- package/dist/esm/br-avatar.entry.js.map +1 -1
- package/dist/esm/br-breadcrumb.entry.js +3 -3
- package/dist/esm/br-breadcrumb.entry.js.map +1 -1
- package/dist/esm/br-button_2.entry.js +6 -6
- package/dist/esm/br-card.entry.js +3 -3
- package/dist/esm/br-card.entry.js.map +1 -1
- package/dist/esm/br-checkbox_3.entry.js +9 -9
- package/dist/esm/br-checkgroup.entry.js +3 -3
- package/dist/esm/br-checkgroup.entry.js.map +1 -1
- package/dist/esm/br-collapse_2.entry.js +305 -0
- package/dist/esm/br-divider.entry.js +3 -3
- package/dist/esm/br-divider.entry.js.map +1 -1
- package/dist/esm/br-dropdown_2.entry.js +6 -6
- package/dist/esm/br-footer-category.entry.js +3 -3
- package/dist/esm/br-footer-category.entry.js.map +1 -1
- package/dist/esm/br-footer-item.entry.js +3 -3
- package/dist/esm/br-footer-item.entry.js.map +1 -1
- package/dist/esm/br-footer-legal.entry.js +3 -3
- package/dist/esm/br-footer-legal.entry.js.map +1 -1
- package/dist/esm/br-footer-logo.entry.js +3 -3
- package/dist/esm/br-footer-logo.entry.js.map +1 -1
- package/dist/esm/br-footer-social.entry.js +3 -3
- package/dist/esm/br-footer-social.entry.js.map +1 -1
- package/dist/esm/br-footer.entry.js +3 -3
- package/dist/esm/br-footer.entry.js.map +1 -1
- package/dist/esm/br-header-function.entry.js +136 -0
- package/dist/esm/br-header-function.entry.js.map +1 -0
- package/dist/esm/br-header-link.entry.js +54 -0
- package/dist/esm/br-header-link.entry.js.map +1 -0
- package/dist/esm/br-header-list.entry.js +246 -0
- package/dist/esm/br-header-list.entry.js.map +1 -0
- package/dist/esm/br-header-logo.entry.js +158 -0
- package/dist/esm/br-header-logo.entry.js.map +1 -0
- package/dist/esm/br-header.entry.js +563 -0
- package/dist/esm/br-header.entry.js.map +1 -0
- package/dist/esm/br-item.entry.js +286 -0
- package/dist/esm/br-item.entry.js.map +1 -0
- package/dist/esm/br-loading.entry.js +4 -4
- package/dist/esm/br-loading.entry.js.map +1 -1
- package/dist/esm/br-magic-button.entry.js +4 -4
- package/dist/esm/br-magic-button.entry.js.map +1 -1
- package/dist/esm/br-menu-header.entry.js +50 -0
- package/dist/esm/br-menu-header.entry.js.map +1 -0
- package/dist/esm/br-menu-info.entry.js +40 -0
- package/dist/esm/br-menu-info.entry.js.map +1 -0
- package/dist/esm/br-menu-item.entry.js +70 -0
- package/dist/esm/br-menu-item.entry.js.map +1 -0
- package/dist/esm/br-menu-link.entry.js +39 -0
- package/dist/esm/br-menu-link.entry.js.map +1 -0
- package/dist/esm/br-menu-list.entry.js +134 -0
- package/dist/esm/br-menu-list.entry.js.map +1 -0
- package/dist/esm/br-menu-logo.entry.js +47 -0
- package/dist/esm/br-menu-logo.entry.js.map +1 -0
- package/dist/esm/br-menu-social.entry.js +31 -0
- package/dist/esm/br-menu-social.entry.js.map +1 -0
- package/dist/esm/br-menu.entry.js +835 -0
- package/dist/esm/br-menu.entry.js.map +1 -0
- package/dist/esm/br-message.entry.js +4 -4
- package/dist/esm/br-message.entry.js.map +1 -1
- package/dist/esm/br-modal.entry.js +3 -3
- package/dist/esm/br-modal.entry.js.map +1 -1
- package/dist/esm/br-pagination.entry.js +3 -3
- package/dist/esm/br-pagination.entry.js.map +1 -1
- package/dist/esm/br-scrim.entry.js +4 -4
- package/dist/esm/br-scrim.entry.js.map +1 -1
- package/dist/esm/br-sign-in.entry.js +4 -4
- package/dist/esm/br-sign-in.entry.js.map +1 -1
- package/dist/esm/br-skip-link.entry.js +320 -0
- package/dist/esm/br-skip-link.entry.js.map +1 -0
- package/dist/esm/br-skiplink-item.entry.js +191 -0
- package/dist/esm/br-skiplink-item.entry.js.map +1 -0
- package/dist/esm/br-step-item.entry.js +4 -4
- package/dist/esm/br-step-item.entry.js.map +1 -1
- package/dist/esm/br-step.entry.js +4 -4
- package/dist/esm/br-step.entry.js.map +1 -1
- package/dist/esm/br-switch.entry.js +4 -4
- package/dist/esm/br-switch.entry.js.map +1 -1
- package/dist/esm/br-tab-item.entry.js +4 -4
- package/dist/esm/br-tab-item.entry.js.map +1 -1
- package/dist/esm/br-tab.entry.js +5 -5
- package/dist/esm/br-tab.entry.js.map +1 -1
- package/dist/esm/br-table-cell.entry.js +4 -4
- package/dist/esm/br-table-cell.entry.js.map +1 -1
- package/dist/esm/br-table-header-cell.entry.js +4 -4
- package/dist/esm/br-table-header-cell.entry.js.map +1 -1
- package/dist/esm/br-table-header-row.entry.js +4 -4
- package/dist/esm/br-table-header-row.entry.js.map +1 -1
- package/dist/esm/br-table-row.entry.js +4 -4
- package/dist/esm/br-table-row.entry.js.map +1 -1
- package/dist/esm/br-table.entry.js +4 -4
- package/dist/esm/br-table.entry.js.map +1 -1
- package/dist/esm/br-tag.entry.js +4 -4
- package/dist/esm/br-tag.entry.js.map +1 -1
- package/dist/esm/br-textarea.entry.js +4 -4
- package/dist/esm/br-textarea.entry.js.map +1 -1
- package/dist/esm/br-tooltip.entry.js +4 -4
- package/dist/esm/br-tooltip.entry.js.map +1 -1
- package/dist/esm/br-upload.entry.js +7 -4
- package/dist/esm/br-upload.entry.js.map +1 -1
- package/dist/esm/breakpoint-observer-CqgyNPQx.js +197 -0
- package/dist/esm/breakpoint-observer-CqgyNPQx.js.map +1 -0
- package/dist/esm/{index-ByGJPTh2.js → index-DULshOxW.js} +80 -14
- package/dist/esm/index-DULshOxW.js.map +1 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/loader.js +5 -3
- package/dist/esm/webcomponents.js +6 -4
- package/dist/esm/webcomponents.js.map +1 -1
- package/dist/hydrate/index.d.ts +12 -0
- package/dist/hydrate/index.js +8575 -5172
- package/dist/hydrate/index.mjs +8574 -5173
- package/dist/stencil.config.js +93 -125
- package/dist/stencil.config.js.map +1 -1
- package/dist/types/components/header/header-function/header-function.d.ts +100 -0
- package/dist/types/components/header/header-link/header-link.d.ts +41 -0
- package/dist/types/components/header/header-list/header-list.d.ts +173 -0
- package/dist/types/components/header/header-logo/header-logo.d.ts +120 -0
- package/dist/types/components/header/header.d.ts +311 -0
- package/dist/types/components/menu/menu-header/menu-header.d.ts +42 -0
- package/dist/types/components/menu/menu-info/menu-info.d.ts +25 -0
- package/dist/types/components/menu/menu-item/menu-item.d.ts +49 -0
- package/dist/types/components/menu/menu-link/menu-link.d.ts +34 -0
- package/dist/types/components/menu/menu-list/menu-list.d.ts +62 -0
- package/dist/types/components/menu/menu-logo/menu-logo.d.ts +43 -0
- package/dist/types/components/menu/menu-social/menu-social.d.ts +36 -0
- package/dist/types/components/menu/menu.d.ts +260 -0
- package/dist/types/components/skip-link/skip-link-item/skip-link-item.d.ts +111 -0
- package/dist/types/components/skip-link/skip-link.d.ts +173 -0
- package/dist/types/components/upload/upload.d.ts +5 -0
- package/dist/types/components.d.ts +1467 -40
- package/dist/types/stencil-public-runtime.d.ts +43 -0
- package/dist/types/utils/breakpoint-observer.d.ts +99 -0
- package/dist/webcomponents/p-02106faf.entry.js +63 -0
- package/dist/webcomponents/p-02106faf.entry.js.map +1 -0
- package/dist/webcomponents/p-04bee121.entry.js +148 -0
- package/dist/webcomponents/p-04bee121.entry.js.map +1 -0
- package/dist/webcomponents/p-0b68fde3.entry.js +113 -0
- package/dist/webcomponents/p-0b68fde3.entry.js.map +1 -0
- package/dist/webcomponents/p-13f315b9.entry.js +65 -0
- package/dist/webcomponents/p-13f315b9.entry.js.map +1 -0
- package/dist/webcomponents/p-19988c40.entry.js +385 -0
- package/dist/webcomponents/p-19988c40.entry.js.map +1 -0
- package/dist/webcomponents/p-27771bab.entry.js +210 -0
- package/dist/webcomponents/p-27771bab.entry.js.map +1 -0
- package/dist/webcomponents/p-29575ecc.entry.js +587 -0
- package/dist/webcomponents/p-29575ecc.entry.js.map +1 -0
- package/dist/webcomponents/p-2baf706b.entry.js +44 -0
- package/dist/webcomponents/p-2baf706b.entry.js.map +1 -0
- package/dist/webcomponents/p-2f5d6943.entry.js +73 -0
- package/dist/webcomponents/p-2f5d6943.entry.js.map +1 -0
- package/dist/webcomponents/p-3124fad7.entry.js +348 -0
- package/dist/webcomponents/p-3124fad7.entry.js.map +1 -0
- package/dist/webcomponents/p-377cfe1d.entry.js +362 -0
- package/dist/webcomponents/p-377cfe1d.entry.js.map +1 -0
- package/dist/webcomponents/p-3a95b67e.entry.js +120 -0
- package/dist/webcomponents/p-3a95b67e.entry.js.map +1 -0
- package/dist/webcomponents/p-3b55ea0c.entry.js +389 -0
- package/dist/webcomponents/p-3b55ea0c.entry.js.map +1 -0
- package/dist/webcomponents/p-3bdc8b39.entry.js +142 -0
- package/dist/webcomponents/p-3bdc8b39.entry.js.map +1 -0
- package/dist/webcomponents/p-4282727e.entry.js +139 -0
- package/dist/webcomponents/p-4282727e.entry.js.map +1 -0
- package/dist/webcomponents/p-428c99c3.entry.js +52 -0
- package/dist/webcomponents/p-428c99c3.entry.js.map +1 -0
- package/dist/webcomponents/p-4dd9d5cd.entry.js +204 -0
- package/dist/webcomponents/p-4dd9d5cd.entry.js.map +1 -0
- package/dist/webcomponents/p-5d1ff009.entry.js +136 -0
- package/dist/webcomponents/p-5d1ff009.entry.js.map +1 -0
- package/dist/webcomponents/p-719915a9.entry.js +272 -0
- package/dist/webcomponents/p-719915a9.entry.js.map +1 -0
- package/dist/webcomponents/p-7a676bbf.entry.js +66 -0
- package/dist/webcomponents/p-7a676bbf.entry.js.map +1 -0
- package/dist/webcomponents/p-7d2b7cdd.entry.js +52 -0
- package/dist/webcomponents/p-7d2b7cdd.entry.js.map +1 -0
- package/dist/webcomponents/p-7eeb3f78.entry.js +1015 -0
- package/dist/webcomponents/p-7eeb3f78.entry.js.map +1 -0
- package/dist/webcomponents/p-7f30b571.entry.js +106 -0
- package/dist/webcomponents/p-7f30b571.entry.js.map +1 -0
- package/dist/webcomponents/p-80091ce2.entry.js +105 -0
- package/dist/webcomponents/p-80091ce2.entry.js.map +1 -0
- package/dist/webcomponents/p-8b057d32.entry.js +899 -0
- package/dist/webcomponents/p-8b057d32.entry.js.map +1 -0
- package/dist/webcomponents/p-8d578007.entry.js +235 -0
- package/dist/webcomponents/p-8d578007.entry.js.map +1 -0
- package/dist/webcomponents/p-8fdd51b9.entry.js +613 -0
- package/dist/webcomponents/p-8fdd51b9.entry.js.map +1 -0
- package/dist/webcomponents/p-9092f3dc.entry.js +94 -0
- package/dist/webcomponents/p-9092f3dc.entry.js.map +1 -0
- package/dist/webcomponents/p-9c2b5fa0.entry.js +616 -0
- package/dist/webcomponents/p-9c2b5fa0.entry.js.map +1 -0
- package/dist/webcomponents/p-CqgyNPQx.js +191 -0
- package/dist/webcomponents/p-CqgyNPQx.js.map +1 -0
- package/dist/webcomponents/{p-ByGJPTh2.js → p-DULshOxW.js} +26 -19
- package/dist/webcomponents/p-DULshOxW.js.map +1 -0
- package/dist/webcomponents/p-a118a0a8.entry.js +62 -0
- package/dist/webcomponents/p-a118a0a8.entry.js.map +1 -0
- package/dist/webcomponents/p-a1c89064.entry.js +56 -0
- package/dist/webcomponents/p-a1c89064.entry.js.map +1 -0
- package/dist/webcomponents/{p-a9200224.entry.js → p-a2cd9b08.entry.js} +121 -121
- package/dist/webcomponents/p-a2cd9b08.entry.js.map +1 -0
- package/dist/webcomponents/p-a3b15b54.entry.js +50 -0
- package/dist/webcomponents/p-a3b15b54.entry.js.map +1 -0
- package/dist/webcomponents/p-ae73649b.entry.js +235 -0
- package/dist/webcomponents/p-ae73649b.entry.js.map +1 -0
- package/dist/webcomponents/p-b320f790.entry.js +159 -0
- package/dist/webcomponents/p-b320f790.entry.js.map +1 -0
- package/dist/webcomponents/p-ba075027.entry.js +169 -0
- package/dist/webcomponents/p-ba075027.entry.js.map +1 -0
- package/dist/webcomponents/p-bf162cf1.entry.js +286 -0
- package/dist/webcomponents/p-bf162cf1.entry.js.map +1 -0
- package/dist/webcomponents/p-c3537110.entry.js +131 -0
- package/dist/webcomponents/p-c3537110.entry.js.map +1 -0
- package/dist/webcomponents/p-c549be31.entry.js +164 -0
- package/dist/webcomponents/p-c549be31.entry.js.map +1 -0
- package/dist/webcomponents/p-c960983f.entry.js +77 -0
- package/dist/webcomponents/p-c960983f.entry.js.map +1 -0
- package/dist/webcomponents/p-cca454b0.entry.js +92 -0
- package/dist/webcomponents/p-cca454b0.entry.js.map +1 -0
- package/dist/webcomponents/p-d391838f.entry.js +271 -0
- package/dist/webcomponents/p-d391838f.entry.js.map +1 -0
- package/dist/webcomponents/p-d8535324.entry.js +91 -0
- package/dist/webcomponents/p-d8535324.entry.js.map +1 -0
- package/dist/webcomponents/p-db0eb52b.entry.js +328 -0
- package/dist/webcomponents/p-db0eb52b.entry.js.map +1 -0
- package/dist/webcomponents/p-df88b55d.entry.js +312 -0
- package/dist/webcomponents/p-df88b55d.entry.js.map +1 -0
- package/dist/webcomponents/{p-0cfc9f36.entry.js → p-e3d2085a.entry.js} +15 -15
- package/dist/webcomponents/p-e3d2085a.entry.js.map +1 -0
- package/dist/webcomponents/p-e5e676ff.entry.js +50 -0
- package/dist/webcomponents/p-e5e676ff.entry.js.map +1 -0
- package/dist/webcomponents/p-e5fabfa7.entry.js +134 -0
- package/dist/webcomponents/p-e5fabfa7.entry.js.map +1 -0
- package/dist/webcomponents/p-e855ba4f.entry.js +86 -0
- package/dist/webcomponents/p-e855ba4f.entry.js.map +1 -0
- package/dist/webcomponents/p-fa519b6b.entry.js +60 -0
- package/dist/webcomponents/p-fa519b6b.entry.js.map +1 -0
- package/dist/webcomponents/p-fa5ec6d6.entry.js +84 -0
- package/dist/webcomponents/p-fa5ec6d6.entry.js.map +1 -0
- package/dist/webcomponents/p-fef9fc47.entry.js +202 -0
- package/dist/webcomponents/p-fef9fc47.entry.js.map +1 -0
- package/dist/webcomponents/webcomponents.esm.js +4 -4
- package/dist/webcomponents/webcomponents.esm.js.map +1 -1
- package/dist/webcomponents.html-custom-data.json +484 -23
- package/package.json +1 -1
- package/dist/cjs/br-avatar.entry.cjs.js.map +0 -1
- package/dist/cjs/br-breadcrumb.entry.cjs.js.map +0 -1
- package/dist/cjs/br-button.br-icon.entry.cjs.js.map +0 -1
- package/dist/cjs/br-card.entry.cjs.js.map +0 -1
- package/dist/cjs/br-checkbox.br-input.br-radio.entry.cjs.js.map +0 -1
- package/dist/cjs/br-checkgroup.entry.cjs.js.map +0 -1
- package/dist/cjs/br-collapse.cjs.entry.js +0 -187
- package/dist/cjs/br-collapse.entry.cjs.js.map +0 -1
- package/dist/cjs/br-divider.entry.cjs.js.map +0 -1
- package/dist/cjs/br-dropdown.br-select.entry.cjs.js.map +0 -1
- package/dist/cjs/br-footer-category.entry.cjs.js.map +0 -1
- package/dist/cjs/br-footer-item.entry.cjs.js.map +0 -1
- package/dist/cjs/br-footer-legal.entry.cjs.js.map +0 -1
- package/dist/cjs/br-footer-logo.entry.cjs.js.map +0 -1
- package/dist/cjs/br-footer-social.entry.cjs.js.map +0 -1
- package/dist/cjs/br-footer.entry.cjs.js.map +0 -1
- package/dist/cjs/br-item.br-list.entry.cjs.js.map +0 -1
- package/dist/cjs/br-item_2.cjs.entry.js +0 -409
- package/dist/cjs/br-loading.entry.cjs.js.map +0 -1
- package/dist/cjs/br-magic-button.entry.cjs.js.map +0 -1
- package/dist/cjs/br-message.entry.cjs.js.map +0 -1
- package/dist/cjs/br-modal.entry.cjs.js.map +0 -1
- package/dist/cjs/br-pagination.entry.cjs.js.map +0 -1
- package/dist/cjs/br-scrim.entry.cjs.js.map +0 -1
- package/dist/cjs/br-sign-in.entry.cjs.js.map +0 -1
- package/dist/cjs/br-step-item.entry.cjs.js.map +0 -1
- package/dist/cjs/br-step.entry.cjs.js.map +0 -1
- package/dist/cjs/br-switch.entry.cjs.js.map +0 -1
- package/dist/cjs/br-tab-item.entry.cjs.js.map +0 -1
- package/dist/cjs/br-tab.entry.cjs.js.map +0 -1
- package/dist/cjs/br-table-cell.entry.cjs.js.map +0 -1
- package/dist/cjs/br-table-header-cell.entry.cjs.js.map +0 -1
- package/dist/cjs/br-table-header-row.entry.cjs.js.map +0 -1
- package/dist/cjs/br-table-row.entry.cjs.js.map +0 -1
- package/dist/cjs/br-table.entry.cjs.js.map +0 -1
- package/dist/cjs/br-tag.entry.cjs.js.map +0 -1
- package/dist/cjs/br-textarea.entry.cjs.js.map +0 -1
- package/dist/cjs/br-tooltip.entry.cjs.js.map +0 -1
- package/dist/cjs/br-upload.entry.cjs.js.map +0 -1
- package/dist/cjs/index-CFIH680Y.js.map +0 -1
- package/dist/components/p-0zSorzux.js +0 -179
- package/dist/components/p-B8JLH_ik.js +0 -622
- package/dist/components/p-BFSUtbLz.js +0 -275
- package/dist/components/p-BFSUtbLz.js.map +0 -1
- package/dist/components/p-BGvZWtkB.js +0 -250
- package/dist/components/p-C5niSTTq.js +0 -164
- package/dist/components/p-CkOo_SmU.js +0 -400
- package/dist/components/p-CodfIeVU.js +0 -136
- package/dist/components/p-CvEK2Il7.js +0 -200
- package/dist/components/p-DGjCsmhy.js +0 -361
- package/dist/components/p-DSkSDmzD.js.map +0 -1
- package/dist/esm/br-button.br-icon.entry.js.map +0 -1
- package/dist/esm/br-checkbox.br-input.br-radio.entry.js.map +0 -1
- package/dist/esm/br-collapse.entry.js +0 -185
- package/dist/esm/br-collapse.entry.js.map +0 -1
- package/dist/esm/br-dropdown.br-select.entry.js.map +0 -1
- package/dist/esm/br-item.br-list.entry.js.map +0 -1
- package/dist/esm/br-item_2.entry.js +0 -406
- package/dist/esm/index-ByGJPTh2.js.map +0 -1
- package/dist/webcomponents/br-avatar.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-breadcrumb.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-button.br-icon.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-card.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-checkbox.br-input.br-radio.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-checkgroup.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-collapse.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-divider.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-dropdown.br-select.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-footer-category.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-footer-item.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-footer-legal.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-footer-logo.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-footer-social.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-footer.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-item.br-list.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-loading.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-magic-button.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-message.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-modal.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-pagination.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-scrim.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-sign-in.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-step-item.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-step.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-switch.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-tab-item.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-tab.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-table-cell.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-table-header-cell.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-table-header-row.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-table-row.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-table.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-tag.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-textarea.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-tooltip.entry.esm.js.map +0 -1
- package/dist/webcomponents/br-upload.entry.esm.js.map +0 -1
- package/dist/webcomponents/p-0c53e0e8.entry.js +0 -60
- package/dist/webcomponents/p-0c53e0e8.entry.js.map +0 -1
- package/dist/webcomponents/p-0c7961dc.entry.js +0 -286
- package/dist/webcomponents/p-0c7961dc.entry.js.map +0 -1
- package/dist/webcomponents/p-0cc360f5.entry.js +0 -271
- package/dist/webcomponents/p-0cc360f5.entry.js.map +0 -1
- package/dist/webcomponents/p-0cfc9f36.entry.js.map +0 -1
- package/dist/webcomponents/p-110e53e5.entry.js +0 -91
- package/dist/webcomponents/p-110e53e5.entry.js.map +0 -1
- package/dist/webcomponents/p-136fc952.entry.js +0 -459
- package/dist/webcomponents/p-136fc952.entry.js.map +0 -1
- package/dist/webcomponents/p-13e6e87d.entry.js +0 -73
- package/dist/webcomponents/p-13e6e87d.entry.js.map +0 -1
- package/dist/webcomponents/p-16cf274f.entry.js +0 -134
- package/dist/webcomponents/p-16cf274f.entry.js.map +0 -1
- package/dist/webcomponents/p-1b970308.entry.js +0 -159
- package/dist/webcomponents/p-1b970308.entry.js.map +0 -1
- package/dist/webcomponents/p-1cc6bcdd.entry.js +0 -62
- package/dist/webcomponents/p-1cc6bcdd.entry.js.map +0 -1
- package/dist/webcomponents/p-1d8feab9.entry.js +0 -385
- package/dist/webcomponents/p-1d8feab9.entry.js.map +0 -1
- package/dist/webcomponents/p-26a029f7.entry.js +0 -389
- package/dist/webcomponents/p-26a029f7.entry.js.map +0 -1
- package/dist/webcomponents/p-2b9f0a10.entry.js +0 -361
- package/dist/webcomponents/p-2b9f0a10.entry.js.map +0 -1
- package/dist/webcomponents/p-2c8976dc.entry.js +0 -86
- package/dist/webcomponents/p-2c8976dc.entry.js.map +0 -1
- package/dist/webcomponents/p-3407c22c.entry.js +0 -113
- package/dist/webcomponents/p-3407c22c.entry.js.map +0 -1
- package/dist/webcomponents/p-37c8053c.entry.js +0 -44
- package/dist/webcomponents/p-37c8053c.entry.js.map +0 -1
- package/dist/webcomponents/p-3ecf55fc.entry.js +0 -92
- package/dist/webcomponents/p-3ecf55fc.entry.js.map +0 -1
- package/dist/webcomponents/p-531c7f89.entry.js +0 -201
- package/dist/webcomponents/p-531c7f89.entry.js.map +0 -1
- package/dist/webcomponents/p-5e063914.entry.js +0 -217
- package/dist/webcomponents/p-5e063914.entry.js.map +0 -1
- package/dist/webcomponents/p-63a7b4fb.entry.js +0 -202
- package/dist/webcomponents/p-63a7b4fb.entry.js.map +0 -1
- package/dist/webcomponents/p-6511c9cd.entry.js +0 -616
- package/dist/webcomponents/p-6511c9cd.entry.js.map +0 -1
- package/dist/webcomponents/p-696b898b.entry.js +0 -587
- package/dist/webcomponents/p-696b898b.entry.js.map +0 -1
- package/dist/webcomponents/p-6dcfc5d7.entry.js +0 -105
- package/dist/webcomponents/p-6dcfc5d7.entry.js.map +0 -1
- package/dist/webcomponents/p-6f5f88fc.entry.js +0 -120
- package/dist/webcomponents/p-6f5f88fc.entry.js.map +0 -1
- package/dist/webcomponents/p-709ae70f.entry.js +0 -50
- package/dist/webcomponents/p-709ae70f.entry.js.map +0 -1
- package/dist/webcomponents/p-850a2df0.entry.js +0 -235
- package/dist/webcomponents/p-850a2df0.entry.js.map +0 -1
- package/dist/webcomponents/p-85f17810.entry.js +0 -94
- package/dist/webcomponents/p-85f17810.entry.js.map +0 -1
- package/dist/webcomponents/p-8f481839.entry.js +0 -52
- package/dist/webcomponents/p-8f481839.entry.js.map +0 -1
- package/dist/webcomponents/p-9cde1441.entry.js +0 -50
- package/dist/webcomponents/p-9cde1441.entry.js.map +0 -1
- package/dist/webcomponents/p-ByGJPTh2.js.map +0 -1
- package/dist/webcomponents/p-a7fa8119.entry.js +0 -1015
- package/dist/webcomponents/p-a7fa8119.entry.js.map +0 -1
- package/dist/webcomponents/p-a9200224.entry.js.map +0 -1
- package/dist/webcomponents/p-b3a7c11a.entry.js +0 -131
- package/dist/webcomponents/p-b3a7c11a.entry.js.map +0 -1
- package/dist/webcomponents/p-bcb65fc2.entry.js +0 -169
- package/dist/webcomponents/p-bcb65fc2.entry.js.map +0 -1
- package/dist/webcomponents/p-c0e50bbd.entry.js +0 -136
- package/dist/webcomponents/p-c0e50bbd.entry.js.map +0 -1
- package/dist/webcomponents/p-ce2e0625.entry.js +0 -139
- package/dist/webcomponents/p-ce2e0625.entry.js.map +0 -1
- package/dist/webcomponents/p-da3acefd.entry.js +0 -77
- package/dist/webcomponents/p-da3acefd.entry.js.map +0 -1
- package/dist/webcomponents/p-e86962f6.entry.js +0 -272
- package/dist/webcomponents/p-e86962f6.entry.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["inputCss","Input","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","type","density","disabled","isInline","isHighlight","customId","inputId","readonly","required","borderless","autocorrect","multiple","isPasswordVisible","internalState","hasIconSlot","hasActionSlot","hasFeedbackSlot","handleInput","event","inputElement","target","nextValue","_a","value","hasMaskConfigured","maskedValue","applyMask","valueChange","emit","renderLabel","label","length","h","class","part","htmlFor","renderInput","id","style","controlWidth","undefined","width","autocomplete","autoCorrect","min","max","minLength","minlength","maxLength","maxlength","name","pattern","step","onInput","placeholder","title","el","renderHelpText","helpText","renderIconPassword","iconName","togglePasswordVisibility","input","shadowRoot","querySelector","renderInlineInputContent","renderInputWithIcon","renderInputWithoutIcon","renderInputContent","renderIconSlot","renderButton","componentWillLoad","hasSlotContent","state","applyMaskToValue","initializeStateWithFeedback","componentDidLoad","setupSlotFeedbackListener","initialMessageElement","messageState","getAttribute","slot","addEventListener","syncStateWithSlotFeedback","messageElement","getInputCssClassMap","small","large","medium","success","danger","info","warning","handleValueChange","newValue","handleMaskChange","slotName","shape","onClick","actionLabel","renderFeedback","digits","replace","digitIndex","i","mask","maskChar","render","Host","key"],"sources":["../../packages/webcomponents/src/components/input/input.scss?tag=br-input&encapsulation=shadow","../../packages/webcomponents/src/components/input/input.tsx"],"sourcesContent":["@import \"~@govbr-ds/core/src/components/input/input\";\n\n:host {\n display: inline-block;\n\n .br-input .input-icon {\n margin: 0 var(--spacing-scale-2x);\n }\n\n .br-input .input-icon + input {\n padding-left: var(--spacing-scale-6x);\n }\n}\n\n.br-input {\n br-button {\n float: right;\n margin-right: var(--input-button-margin);\n margin-top: calc((var(--input-size) + var(--spacing-scale-half)) * -1);\n padding: 0;\n position: relative;\n\n &.button-transform {\n transform: translateY(calc((var(--input-size) - 32px) * 0.5));\n }\n }\n\n .input-label {\n margin-top: 0 !important;\n }\n\n &.input-inline {\n display: flex;\n align-items: center;\n }\n}\n\n/* Estilo borderless para composições contextuais */\n:host([borderless]) {\n .br-input input {\n border-color: transparent;\n }\n\n .br-input input:focus,\n .br-input input:focus-visible {\n border-color: var(--border-color-alternative);\n }\n}\n","import { AttachInternals, Component, Element, Event, EventEmitter, h, Host, Prop, State, Watch } from '@stencil/core'\n\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n *\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/input?tab=designer).\n *\n * @slot action - Botão à direita do input.\n * @slot icon - Ícone à esquerda do input.\n * @slot help-text - Personalização do texto de ajuda.\n * @slot 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 *\n * @example\n * ```html\n * <br-input label=\"Nome\" placeholder=\"Digite seu nome\"></br-input>\n * ```\n */\n@Component({\n tag: 'br-input',\n styleUrl: 'input.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Input {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLBrInputElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Especifica o tipo de entrada do campo. Pode ser um dos seguintes:\n * - 'color': Seletor de cor\n * - 'email': Campo para e-mail\n * - 'hidden': Campo oculto\n * - 'password': Campo para senha\n * - 'range': Controle deslizante\n * - 'search': Campo de pesquisa\n * - 'number': Campo para números\n * - 'tel': Campo para números de telefone\n * - 'text': Campo de texto padrão\n * - 'url': Campo para URLs\n */\n @Prop({ reflect: true }) readonly type:\n | 'color'\n | 'email'\n | 'hidden'\n | 'password'\n | 'range'\n | 'search'\n | 'number'\n | 'tel'\n | 'text'\n | 'file'\n | 'url' = 'text'\n\n /**\n * Controla o comportamento de preenchimento automático do navegador para o input.\n */\n @Prop({ reflect: true }) readonly autocomplete: 'on' | 'off'\n\n /**\n * Ajusta a densidade, alterando o espaçamento interno para um visual mais compacto ou mais expandido.\n */\n @Prop({ reflect: true }) readonly density: 'large' | 'medium' | 'small' = 'medium'\n\n /**\n * Desativa o input, tornando-o não interativo.\n */\n @Prop({ reflect: true }) readonly disabled: boolean = false\n\n /**\n * Se verdadeiro, o rótulo e o input estarão na mesma linha (layout inline).\n */\n @Prop({ reflect: true }) readonly isInline: boolean = false\n\n /**\n * Se verdadeiro, o input terá destaque visual.\n */\n @Prop({ reflect: true }) readonly isHighlight: boolean = false\n\n /**\n * Define o estado do input\n * Os 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.\n * O valor padrão é 'info'.\n */\n @Prop({ reflect: true }) readonly state: 'info' | 'warning' | 'danger' | 'success'\n\n /**\n * Texto exibido como rótulo do input.\n */\n @Prop({ reflect: true }) readonly label: string\n\n /**\n * Identificador único.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true }) readonly customId: string = `br-input-${inputId++}`\n\n /**\n * Nome do input, utilizado para identificação em formulários.\n */\n @Prop({ reflect: true }) readonly name: string\n\n /**\n * Texto exibido dentro do input quando está vazio, fornecendo uma dica ou sugestão ao usuário.\n */\n @Prop({ reflect: true }) readonly placeholder: string\n\n /**\n * Se verdadeiro, o valor do input é exibido, mas não pode ser editado pelo usuário.\n */\n @Prop({ reflect: true }) readonly readonly: boolean = false\n\n /**\n * Se verdadeiro, o input é obrigatório e deve ser preenchido antes que o formulário possa ser enviado.\n */\n @Prop({ reflect: true }) readonly required: boolean = false\n\n /**\n * Valor exibido no input.\n * Pode ser alterado pelo usuário se a propriedade `readonly` não estiver ativa.\n */\n @Prop({ reflect: true, mutable: true }) value: string\n\n /**\n * Largura do campo de entrada (por exemplo, '88px').\n * Quando definido, sobrescreve a largura padrão de 100%.\n */\n @Prop({ reflect: true }) readonly controlWidth?: string\n\n /**\n * Remove a borda do input quando não está em foco.\n * Útil para composições contextuais (ex.: paginação).\n */\n @Prop({ reflect: true }) readonly borderless: boolean = false\n\n /**\n * Texto adicional que fornece ajuda ou informações sobre o input.\n */\n @Prop({ reflect: true }) readonly helpText: string\n\n /**\n * Controla a correção automática do texto.\n */\n @Prop({ reflect: true }) readonly autocorrect: 'off' | 'on' = 'off'\n\n /**\n * Define o valor mínimo para campos de entrada numéricos.\n */\n @Prop({ reflect: true }) readonly min: number\n\n /**\n * Define o valor máximo para campos de entrada numéricos.\n */\n @Prop({ reflect: true }) readonly max: number\n\n /**\n * Define o comprimento mínimo do valor do campo de entrada.\n */\n @Prop({ reflect: true }) readonly minlength: number\n\n /**\n * Define o comprimento máximo do valor do campo de entrada.\n */\n @Prop({ reflect: true }) readonly maxlength: number\n\n /**\n * Se verdadeiro, permite a seleção de múltiplos arquivos.\n */\n @Prop({ reflect: true }) readonly multiple: boolean = false\n\n /**\n * Define o padrão de entrada para validação.\n */\n @Prop({ reflect: true }) readonly pattern: string\n\n /**\n * Máscara aplicada ao valor digitado (use `#` para marcar posições numéricas).\n */\n @Prop({ reflect: true }) readonly mask?: string\n\n /**\n * Define o valor do passo para campos de entrada numéricos.\n */\n @Prop({ reflect: true }) readonly step: number\n\n /**\n * Texto exibido no botão de ação à direita do input.\n */\n @Prop({ reflect: true }) readonly actionLabel: string\n\n @State() isPasswordVisible: boolean = false\n\n @State() internalState: 'info' | 'warning' | 'danger' | 'success' = 'info'\n\n @State() hasIconSlot: boolean = false\n\n @State() hasActionSlot: boolean = false\n\n @State() hasFeedbackSlot: boolean = false\n\n componentWillLoad() {\n this.hasIconSlot = this.hasSlotContent('icon')\n this.hasActionSlot = this.hasSlotContent('action')\n this.hasFeedbackSlot = this.hasSlotContent('feedback')\n this.internalState = this.state\n this.applyMaskToValue()\n\n if (this.hasFeedbackSlot) {\n this.initializeStateWithFeedback()\n }\n }\n\n componentDidLoad() {\n if (this.hasFeedbackSlot) {\n this.setupSlotFeedbackListener()\n }\n }\n\n private initializeStateWithFeedback() {\n const initialMessageElement = this.el.querySelector('br-message')\n\n if (initialMessageElement !== null || initialMessageElement !== undefined) {\n const messageState = initialMessageElement.getAttribute('state')\n this.internalState = (messageState as 'info' | 'warning' | 'danger' | 'success') || this.state\n } else {\n this.internalState = this.state\n }\n }\n\n private setupSlotFeedbackListener() {\n const slot = this.el.shadowRoot?.querySelector('slot[name=\"feedback\"]')\n if (slot !== null && slot !== undefined) {\n slot.addEventListener('slotchange', () => {\n this.syncStateWithSlotFeedback()\n })\n }\n }\n\n private syncStateWithSlotFeedback() {\n const messageElement = this.el.querySelector('br-message')\n\n if (messageElement !== null && messageElement !== undefined) {\n this.internalState = messageElement.getAttribute('state') as 'info' | 'warning' | 'danger' | 'success'\n } else {\n this.internalState = this.state\n }\n }\n\n private getInputCssClassMap(): CssClassMap {\n return {\n 'br-input': true,\n 'input-button': this.hasActionSlot,\n small: this.density === 'small',\n large: this.density === 'large',\n medium: this.density === 'medium',\n 'input-inline': this.isInline,\n 'input-highlight': this.isHighlight,\n success: this.internalState === 'success',\n danger: this.internalState === 'danger',\n info: this.internalState === 'info',\n warning: this.internalState === 'warning',\n }\n }\n\n /**\n * Valor atualizado do input\n */\n @Event() valueChange: EventEmitter<string>\n\n @Watch('value')\n protected handleValueChange(newValue: string) {\n if (!this.hasMaskConfigured()) {\n return\n }\n\n const maskedValue = this.applyMask(newValue ?? '')\n if (maskedValue !== newValue) {\n this.value = maskedValue\n }\n }\n\n @Watch('mask')\n protected handleMaskChange() {\n this.applyMaskToValue()\n }\n\n private readonly handleInput = (event: Event) => {\n const inputElement = event.target as HTMLInputElement\n let nextValue = inputElement.value ?? ''\n\n if (this.hasMaskConfigured()) {\n const maskedValue = this.applyMask(nextValue)\n if (maskedValue !== nextValue) {\n inputElement.value = maskedValue\n }\n nextValue = maskedValue\n }\n\n this.value = nextValue\n this.valueChange.emit(this.value)\n }\n\n private readonly renderLabel = () => {\n if (this.label?.length > 0) {\n if (this.isInline) {\n return (\n <div class=\"input-label\">\n <label part=\"label\" class=\"text-nowrap\" htmlFor={this.customId}>\n {this.label}\n </label>\n </div>\n )\n } else {\n return (\n <label part=\"label\" htmlFor={this.customId}>\n {this.label}\n </label>\n )\n }\n }\n }\n\n private hasSlotContent(slotName: string): boolean {\n return this.el.querySelector(`[slot=\"${slotName}\"]`) !== null\n }\n\n private readonly renderInput = () => {\n return (\n <input\n class={this.isHighlight ? 'input-highlight' : null}\n id={this.customId}\n style={this.controlWidth !== undefined && this.controlWidth !== null ? { width: this.controlWidth } : undefined}\n autocomplete={this.autocomplete}\n disabled={this.disabled}\n autoCorrect={this.autocorrect}\n min={this.min}\n max={this.max}\n minLength={this.minlength}\n maxLength={this.maxlength}\n multiple={this.multiple}\n name={this.name}\n pattern={this.pattern}\n step={this.step}\n onInput={this.handleInput}\n placeholder={this.placeholder}\n readonly={this.readonly}\n required={this.required}\n title={this.el.title}\n type={this.type}\n value={this.value}\n />\n )\n }\n\n private readonly renderHelpText = () => {\n return this.helpText?.length > 0 ? <p>{this.helpText}</p> : <slot name=\"help-text\"></slot>\n }\n\n private readonly renderIconPassword = () => {\n const iconName = this.isPasswordVisible ? 'fa-solid:eye-slash' : 'fa-solid:eye'\n return <br-icon icon-name={iconName}></br-icon>\n }\n\n private readonly togglePasswordVisibility = () => {\n const input = this.el.shadowRoot.querySelector('input')\n this.isPasswordVisible = !this.isPasswordVisible\n input.type = this.isPasswordVisible ? 'text' : 'password'\n }\n\n private renderIconSlot() {\n if (this.hasSlotContent('icon')) {\n return (\n <div class=\"input-icon\">\n <slot name=\"icon\"></slot>\n </div>\n )\n }\n }\n\n private renderButton() {\n if (this.type === 'password') {\n return (\n <br-button\n class=\"button-transform\"\n shape=\"circle\"\n density=\"small\"\n aria-label={this.isPasswordVisible ? 'Esconder senha' : 'Mostrar senha'}\n aria-pressed={this.isPasswordVisible ? 'true' : 'false'}\n onClick={this.togglePasswordVisibility}\n >\n {this.renderIconPassword()}\n </br-button>\n )\n } else if (this.hasSlotContent('action')) {\n return (\n <br-button class=\"button-transform\" shape=\"circle\" density=\"small\" aria-label={this.actionLabel}>\n <slot name=\"action\"></slot>\n </br-button>\n )\n }\n return null\n }\n\n private readonly renderInlineInputContent = () => {\n if (this.hasIconSlot) {\n return <div class=\"input-content\">{this.renderInputWithIcon()}</div>\n } else {\n return <div class=\"input-content\">{this.renderInputWithoutIcon()}</div>\n }\n }\n\n private readonly renderInputContent = () => {\n return this.hasIconSlot ? this.renderInputWithIcon() : this.renderInputWithoutIcon()\n }\n\n private readonly renderInputWithIcon = () => {\n return (\n <div class=\"input-group\">\n {this.renderIconSlot()}\n {this.renderInput()}\n {this.renderButton()}\n {this.renderHelpText()}\n </div>\n )\n }\n\n private readonly renderInputWithoutIcon = () => {\n return [this.renderInput(), this.renderButton(), this.renderHelpText()]\n }\n\n private renderFeedback() {\n if (this.hasFeedbackSlot) {\n return <slot name=\"feedback\"></slot>\n }\n }\n\n private applyMaskToValue() {\n if (!this.hasMaskConfigured() || this.value === undefined || this.value === null) {\n return\n }\n\n const maskedValue = this.applyMask(this.value)\n if (this.value !== maskedValue) {\n this.value = maskedValue\n }\n }\n\n private applyMask(value: string): string {\n if (!this.hasMaskConfigured()) {\n return value ?? ''\n }\n\n const digits = (value ?? '').replace(/\\D/g, '')\n if (digits.length === 0) {\n return ''\n }\n\n let maskedValue = ''\n let digitIndex = 0\n\n for (let i = 0; i < this.mask.length && digitIndex < digits.length; i++) {\n const maskChar = this.mask[i]\n\n if (maskChar === '#') {\n maskedValue += digits[digitIndex]\n digitIndex++\n } else {\n maskedValue += maskChar\n }\n }\n\n return maskedValue\n }\n\n private hasMaskConfigured(): boolean {\n return typeof this.mask === 'string' && this.mask.length > 0\n }\n\n render() {\n return (\n <Host>\n <div class={this.getInputCssClassMap()}>\n {this.renderLabel()}\n\n {this.isInline ? this.renderInlineInputContent() : this.renderInputContent()}\n\n {this.renderFeedback()}\n </div>\n </Host>\n )\n }\n}\n\nlet inputId = 0\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["inputCss","Input","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","type","density","disabled","isInline","isHighlight","customId","inputId","readonly","required","borderless","autocorrect","multiple","isPasswordVisible","internalState","hasIconSlot","hasActionSlot","hasFeedbackSlot","handleInput","event","inputElement","target","nextValue","_a","value","hasMaskConfigured","maskedValue","applyMask","valueChange","emit","renderLabel","label","length","h","class","part","htmlFor","renderInput","id","style","controlWidth","undefined","width","autocomplete","autoCorrect","min","max","minLength","minlength","maxLength","maxlength","name","pattern","step","onInput","placeholder","title","el","renderHelpText","helpText","renderIconPassword","iconName","togglePasswordVisibility","input","shadowRoot","querySelector","renderInlineInputContent","renderInputWithIcon","renderInputWithoutIcon","renderInputContent","renderIconSlot","renderButton","componentWillLoad","hasSlotContent","state","applyMaskToValue","initializeStateWithFeedback","componentDidLoad","setupSlotFeedbackListener","initialMessageElement","messageState","getAttribute","slot","addEventListener","syncStateWithSlotFeedback","messageElement","getInputCssClassMap","small","large","medium","success","danger","info","warning","handleValueChange","newValue","handleMaskChange","slotName","shape","onClick","actionLabel","renderFeedback","digits","replace","digitIndex","i","mask","maskChar","render","Host","key"],"sources":["../../packages/webcomponents/src/components/input/input.scss?tag=br-input&encapsulation=shadow","../../packages/webcomponents/src/components/input/input.tsx"],"sourcesContent":["@import \"~@govbr-ds/core/src/components/input/input\";\n\n:host {\n display: inline-block;\n\n .br-input .input-icon {\n margin: 0 var(--spacing-scale-2x);\n }\n\n .br-input .input-icon + input {\n padding-left: var(--spacing-scale-6x);\n }\n}\n\n.br-input {\n br-button {\n float: right;\n margin-right: var(--input-button-margin);\n margin-top: calc((var(--input-size) + var(--spacing-scale-half)) * -1);\n padding: 0;\n position: relative;\n\n &.button-transform {\n transform: translateY(calc((var(--input-size) - 32px) * 0.5));\n }\n }\n\n .input-label {\n margin-top: 0 !important;\n }\n\n &.input-inline {\n display: flex;\n align-items: center;\n }\n}\n\n/* Estilo borderless para composições contextuais */\n:host([borderless]) {\n .br-input input {\n border-color: transparent;\n }\n\n .br-input input:focus,\n .br-input input:focus-visible {\n border-color: var(--border-color-alternative);\n }\n}\n","import { AttachInternals, Component, Element, Event, EventEmitter, h, Host, Prop, State, Watch } from '@stencil/core'\n\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n *\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/input?tab=designer).\n *\n * @slot action - Botão à direita do input.\n * @slot icon - Ícone à esquerda do input.\n * @slot help-text - Personalização do texto de ajuda.\n * @slot 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 *\n * @example\n * ```html\n * <br-input label=\"Nome\" placeholder=\"Digite seu nome\"></br-input>\n * ```\n */\n@Component({\n tag: 'br-input',\n styleUrl: 'input.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Input {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLBrInputElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Especifica o tipo de entrada do campo. Pode ser um dos seguintes:\n * - 'color': Seletor de cor\n * - 'email': Campo para e-mail\n * - 'hidden': Campo oculto\n * - 'password': Campo para senha\n * - 'range': Controle deslizante\n * - 'search': Campo de pesquisa\n * - 'number': Campo para números\n * - 'tel': Campo para números de telefone\n * - 'text': Campo de texto padrão\n * - 'url': Campo para URLs\n */\n @Prop({ reflect: true }) readonly type:\n | 'color'\n | 'email'\n | 'hidden'\n | 'password'\n | 'range'\n | 'search'\n | 'number'\n | 'tel'\n | 'text'\n | 'file'\n | 'url' = 'text'\n\n /**\n * Controla o comportamento de preenchimento automático do navegador para o input.\n */\n @Prop({ reflect: true }) readonly autocomplete: 'on' | 'off'\n\n /**\n * Ajusta a densidade, alterando o espaçamento interno para um visual mais compacto ou mais expandido.\n */\n @Prop({ reflect: true }) readonly density: 'large' | 'medium' | 'small' = 'medium'\n\n /**\n * Desativa o input, tornando-o não interativo.\n */\n @Prop({ reflect: true }) readonly disabled: boolean = false\n\n /**\n * Se verdadeiro, o rótulo e o input estarão na mesma linha (layout inline).\n */\n @Prop({ reflect: true }) readonly isInline: boolean = false\n\n /**\n * Se verdadeiro, o input terá destaque visual.\n */\n @Prop({ reflect: true }) readonly isHighlight: boolean = false\n\n /**\n * Define o estado do input\n * Os 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.\n * O valor padrão é 'info'.\n */\n @Prop({ reflect: true }) readonly state: 'info' | 'warning' | 'danger' | 'success'\n\n /**\n * Texto exibido como rótulo do input.\n */\n @Prop({ reflect: true }) readonly label: string\n\n /**\n * Identificador único.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true }) readonly customId: string = `br-input-${inputId++}`\n\n /**\n * Nome do input, utilizado para identificação em formulários.\n */\n @Prop({ reflect: true }) readonly name: string\n\n /**\n * Texto exibido dentro do input quando está vazio, fornecendo uma dica ou sugestão ao usuário.\n */\n @Prop({ reflect: true }) readonly placeholder: string\n\n /**\n * Se verdadeiro, o valor do input é exibido, mas não pode ser editado pelo usuário.\n */\n @Prop({ reflect: true }) readonly readonly: boolean = false\n\n /**\n * Se verdadeiro, o input é obrigatório e deve ser preenchido antes que o formulário possa ser enviado.\n */\n @Prop({ reflect: true }) readonly required: boolean = false\n\n /**\n * Valor exibido no input.\n * Pode ser alterado pelo usuário se a propriedade `readonly` não estiver ativa.\n */\n @Prop({ reflect: true, mutable: true }) value: string\n\n /**\n * Largura do campo de entrada (por exemplo, '88px').\n * Quando definido, sobrescreve a largura padrão de 100%.\n */\n @Prop({ reflect: true }) readonly controlWidth?: string\n\n /**\n * Remove a borda do input quando não está em foco.\n * Útil para composições contextuais (ex.: paginação).\n */\n @Prop({ reflect: true }) readonly borderless: boolean = false\n\n /**\n * Texto adicional que fornece ajuda ou informações sobre o input.\n */\n @Prop({ reflect: true }) readonly helpText: string\n\n /**\n * Controla a correção automática do texto.\n */\n @Prop({ reflect: true }) readonly autocorrect: 'off' | 'on' = 'off'\n\n /**\n * Define o valor mínimo para campos de entrada numéricos.\n */\n @Prop({ reflect: true }) readonly min: number\n\n /**\n * Define o valor máximo para campos de entrada numéricos.\n */\n @Prop({ reflect: true }) readonly max: number\n\n /**\n * Define o comprimento mínimo do valor do campo de entrada.\n */\n @Prop({ reflect: true }) readonly minlength: number\n\n /**\n * Define o comprimento máximo do valor do campo de entrada.\n */\n @Prop({ reflect: true }) readonly maxlength: number\n\n /**\n * Se verdadeiro, permite a seleção de múltiplos arquivos.\n */\n @Prop({ reflect: true }) readonly multiple: boolean = false\n\n /**\n * Define o padrão de entrada para validação.\n */\n @Prop({ reflect: true }) readonly pattern: string\n\n /**\n * Máscara aplicada ao valor digitado (use `#` para marcar posições numéricas).\n */\n @Prop({ reflect: true }) readonly mask?: string\n\n /**\n * Define o valor do passo para campos de entrada numéricos.\n */\n @Prop({ reflect: true }) readonly step: number\n\n /**\n * Texto exibido no botão de ação à direita do input.\n */\n @Prop({ reflect: true }) readonly actionLabel: string\n\n @State() isPasswordVisible: boolean = false\n\n @State() internalState: 'info' | 'warning' | 'danger' | 'success' = 'info'\n\n @State() hasIconSlot: boolean = false\n\n @State() hasActionSlot: boolean = false\n\n @State() hasFeedbackSlot: boolean = false\n\n componentWillLoad() {\n this.hasIconSlot = this.hasSlotContent('icon')\n this.hasActionSlot = this.hasSlotContent('action')\n this.hasFeedbackSlot = this.hasSlotContent('feedback')\n this.internalState = this.state\n this.applyMaskToValue()\n\n if (this.hasFeedbackSlot) {\n this.initializeStateWithFeedback()\n }\n }\n\n componentDidLoad() {\n if (this.hasFeedbackSlot) {\n this.setupSlotFeedbackListener()\n }\n }\n\n private initializeStateWithFeedback() {\n const initialMessageElement = this.el.querySelector('br-message')\n\n if (initialMessageElement !== null || initialMessageElement !== undefined) {\n const messageState = initialMessageElement.getAttribute('state')\n this.internalState = (messageState as 'info' | 'warning' | 'danger' | 'success') || this.state\n } else {\n this.internalState = this.state\n }\n }\n\n private setupSlotFeedbackListener() {\n const slot = this.el.shadowRoot?.querySelector('slot[name=\"feedback\"]')\n if (slot !== null && slot !== undefined) {\n slot.addEventListener('slotchange', () => {\n this.syncStateWithSlotFeedback()\n })\n }\n }\n\n private syncStateWithSlotFeedback() {\n const messageElement = this.el.querySelector('br-message')\n\n if (messageElement !== null && messageElement !== undefined) {\n this.internalState = messageElement.getAttribute('state') as 'info' | 'warning' | 'danger' | 'success'\n } else {\n this.internalState = this.state\n }\n }\n\n private getInputCssClassMap(): CssClassMap {\n return {\n 'br-input': true,\n 'input-button': this.hasActionSlot,\n small: this.density === 'small',\n large: this.density === 'large',\n medium: this.density === 'medium',\n 'input-inline': this.isInline,\n 'input-highlight': this.isHighlight,\n success: this.internalState === 'success',\n danger: this.internalState === 'danger',\n info: this.internalState === 'info',\n warning: this.internalState === 'warning',\n }\n }\n\n /**\n * Valor atualizado do input\n */\n @Event() valueChange: EventEmitter<string>\n\n @Watch('value')\n protected handleValueChange(newValue: string) {\n if (!this.hasMaskConfigured()) {\n return\n }\n\n const maskedValue = this.applyMask(newValue ?? '')\n if (maskedValue !== newValue) {\n this.value = maskedValue\n }\n }\n\n @Watch('mask')\n protected handleMaskChange() {\n this.applyMaskToValue()\n }\n\n private readonly handleInput = (event: Event) => {\n const inputElement = event.target as HTMLInputElement\n let nextValue = inputElement.value ?? ''\n\n if (this.hasMaskConfigured()) {\n const maskedValue = this.applyMask(nextValue)\n if (maskedValue !== nextValue) {\n inputElement.value = maskedValue\n }\n nextValue = maskedValue\n }\n\n this.value = nextValue\n this.valueChange.emit(this.value)\n }\n\n private readonly renderLabel = () => {\n if (this.label?.length > 0) {\n if (this.isInline) {\n return (\n <div class=\"input-label\">\n <label part=\"label\" class=\"text-nowrap\" htmlFor={this.customId}>\n {this.label}\n </label>\n </div>\n )\n } else {\n return (\n <label part=\"label\" htmlFor={this.customId}>\n {this.label}\n </label>\n )\n }\n }\n }\n\n private hasSlotContent(slotName: string): boolean {\n return this.el.querySelector(`[slot=\"${slotName}\"]`) !== null\n }\n\n private readonly renderInput = () => {\n return (\n <input\n class={this.isHighlight ? 'input-highlight' : null}\n id={this.customId}\n style={this.controlWidth !== undefined && this.controlWidth !== null ? { width: this.controlWidth } : undefined}\n autocomplete={this.autocomplete}\n disabled={this.disabled}\n autoCorrect={this.autocorrect}\n min={this.min}\n max={this.max}\n minLength={this.minlength}\n maxLength={this.maxlength}\n multiple={this.multiple}\n name={this.name}\n pattern={this.pattern}\n step={this.step}\n onInput={this.handleInput}\n placeholder={this.placeholder}\n readonly={this.readonly}\n required={this.required}\n title={this.el.title}\n type={this.type}\n value={this.value}\n />\n )\n }\n\n private readonly renderHelpText = () => {\n return this.helpText?.length > 0 ? <p>{this.helpText}</p> : <slot name=\"help-text\"></slot>\n }\n\n private readonly renderIconPassword = () => {\n const iconName = this.isPasswordVisible ? 'fa-solid:eye-slash' : 'fa-solid:eye'\n return <br-icon icon-name={iconName}></br-icon>\n }\n\n private readonly togglePasswordVisibility = () => {\n const input = this.el.shadowRoot.querySelector('input')\n this.isPasswordVisible = !this.isPasswordVisible\n input.type = this.isPasswordVisible ? 'text' : 'password'\n }\n\n private renderIconSlot() {\n if (this.hasSlotContent('icon')) {\n return (\n <div class=\"input-icon\">\n <slot name=\"icon\"></slot>\n </div>\n )\n }\n }\n\n private renderButton() {\n if (this.type === 'password') {\n return (\n <br-button\n class=\"button-transform\"\n shape=\"circle\"\n density=\"small\"\n aria-label={this.isPasswordVisible ? 'Esconder senha' : 'Mostrar senha'}\n aria-pressed={this.isPasswordVisible ? 'true' : 'false'}\n onClick={this.togglePasswordVisibility}\n >\n {this.renderIconPassword()}\n </br-button>\n )\n } else if (this.hasSlotContent('action')) {\n return (\n <br-button class=\"button-transform\" shape=\"circle\" density=\"small\" aria-label={this.actionLabel}>\n <slot name=\"action\"></slot>\n </br-button>\n )\n }\n return null\n }\n\n private readonly renderInlineInputContent = () => {\n if (this.hasIconSlot) {\n return <div class=\"input-content\">{this.renderInputWithIcon()}</div>\n } else {\n return <div class=\"input-content\">{this.renderInputWithoutIcon()}</div>\n }\n }\n\n private readonly renderInputContent = () => {\n return this.hasIconSlot ? this.renderInputWithIcon() : this.renderInputWithoutIcon()\n }\n\n private readonly renderInputWithIcon = () => {\n return (\n <div class=\"input-group\">\n {this.renderIconSlot()}\n {this.renderInput()}\n {this.renderButton()}\n {this.renderHelpText()}\n </div>\n )\n }\n\n private readonly renderInputWithoutIcon = () => {\n return [this.renderInput(), this.renderButton(), this.renderHelpText()]\n }\n\n private renderFeedback() {\n if (this.hasFeedbackSlot) {\n return <slot name=\"feedback\"></slot>\n }\n }\n\n private applyMaskToValue() {\n if (!this.hasMaskConfigured() || this.value === undefined || this.value === null) {\n return\n }\n\n const maskedValue = this.applyMask(this.value)\n if (this.value !== maskedValue) {\n this.value = maskedValue\n }\n }\n\n private applyMask(value: string): string {\n if (!this.hasMaskConfigured()) {\n return value ?? ''\n }\n\n const digits = (value ?? '').replace(/\\D/g, '')\n if (digits.length === 0) {\n return ''\n }\n\n let maskedValue = ''\n let digitIndex = 0\n\n for (let i = 0; i < this.mask.length && digitIndex < digits.length; i++) {\n const maskChar = this.mask[i]\n\n if (maskChar === '#') {\n maskedValue += digits[digitIndex]\n digitIndex++\n } else {\n maskedValue += maskChar\n }\n }\n\n return maskedValue\n }\n\n private hasMaskConfigured(): boolean {\n return typeof this.mask === 'string' && this.mask.length > 0\n }\n\n render() {\n return (\n <Host>\n <div class={this.getInputCssClassMap()}>\n {this.renderLabel()}\n\n {this.isInline ? this.renderInlineInputContent() : this.renderInputContent()}\n\n {this.renderFeedback()}\n </div>\n </Host>\n )\n }\n}\n\nlet inputId = 0\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Construído por SERPRO
|
|
3
|
+
* © https://serpro.gov.br/ - MIT License.
|
|
4
|
+
*/
|
|
5
|
+
import { p as t, H as e, d as i, h as a, c as r, t as o } from "./p-Dl8sbmQD.js";
|
|
6
|
+
|
|
7
|
+
import { _ as n } from "./p-DIPMDb5E.js";
|
|
8
|
+
|
|
9
|
+
import { H as l } from "./p-BRKK5nMe.js";
|
|
10
|
+
|
|
11
|
+
import { d as s } from "./p-DPI-6oom.js";
|
|
12
|
+
|
|
13
|
+
const collapseCss = () => `*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}main{display:block}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}a{background-color:rgba(0,0,0,0)}b,strong{font-weight:bolder}small{font-size:80%}img{border-style:none}button,input,select,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;-moz-appearance:button;appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.d-none{display:none !important}.d-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}@media (min-width: 576px){.d-sm-block{display:block !important}.d-sm-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}}.justify-content-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.align-items-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter)*.5);padding-right:calc(var(--grid-gutter)*.5);width:100%}.col{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;min-width:8.3333333333%}.col-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-2{-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%;max-width:16.6666666667%}.container,.container-lg{--grid-margin:var(--grid-portrait-margin);--grid-maxwidth:var(--grid-portrait-maxwidth);margin-left:auto;margin-right:auto;max-width:var(--grid-maxwidth);padding-left:var(--grid-margin);padding-right:var(--grid-margin);width:100%}.row{--grid-gutter:var(--grid-portrait-gutter);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:calc(var(--grid-gutter)*-0.5);margin-right:calc(var(--grid-gutter)*-0.5)}@media (min-width: 576px){.container,.container-lg{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}.col-sm-4{-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%;max-width:33.3333333333%}}@media (min-width: 992px){.container,.container-lg{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-md) - var(--grid-tablet-margin))}}@media (min-width: 1280px){.container,.container-lg{--grid-margin:var(--grid-desktop-margin)}.row{--grid-gutter:var(--grid-desktop-gutter)}.container,.container-lg{--grid-maxwidth:calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}.col-lg-3{-ms-flex-preferred-size:25%;flex-basis:25%;max-width:25%}}@media (min-width: 1600px){.container,.container-lg{--grid-margin:var(--grid-tv-margin)}.row{--grid-gutter:var(--grid-tv-gutter)}.container,.container-lg{--grid-maxwidth:calc(var(--grid-breakpoint-xl) - var(--grid-tv-margin))}}.mt-1{margin-top:var(--spacing-scale-half) !important}.mr-1{margin-right:var(--spacing-scale-half) !important}.mb-1{margin-bottom:var(--spacing-scale-half) !important}.ml-1{margin-left:var(--spacing-scale-half) !important}.mr-n2{margin-right:calc(var(--spacing-scale-base)*-1) !important}.ml-2{margin-left:var(--spacing-scale-base) !important}.m-3{margin:var(--spacing-scale-2x) !important}.mx-3{margin-left:var(--spacing-scale-2x) !important;margin-right:var(--spacing-scale-2x) !important}.mr-auto{margin-right:auto !important}.ml-auto{margin-left:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}.py-3{padding-bottom:var(--spacing-scale-2x) !important;padding-top:var(--spacing-scale-2x) !important}.py-4{padding-bottom:var(--spacing-scale-3x) !important;padding-top:var(--spacing-scale-3x) !important}@media (min-width: 576px){.ml-sm-0{margin-left:var(--spacing-scale-default) !important}}body{--bg-color:var(--background);--bg-color-rgb:var(--background-rgb);--bg-color-hsl:var(--background-hsl);--font-size:var(--font-size-scale-base);--font-weight:var(--font-weight-regular);--link-color:var(--interactive);--link-color-rgb:var(--interactive-rgb);--link-color-hsl:var(--interactive-hsl);--line-height:var(--font-line-height-medium);--text-color:var(--color);--text-color-rgb:var(--color-rgb);--text-color-hsl:var(--color-hsl);background:var(--bg-color);color:var(--text-color);font-family:var(--font-family-base);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height)}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media (min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset:var(--spacing-scale-half)}a:focus{outline:none}a:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}a:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--pressed))), to(rgba(var(--interactive-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}a{color:var(--interactive);text-decoration:none}.main-content a{text-decoration:underline}button{cursor:pointer}img{max-width:100%;vertical-align:middle}ul,ol{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}table{--table-background:var(--background);--table-color:var(--color);--table-border-color:var(--gray-20);--table-border-style:solid;--table-border-width:1px;--table-hover:var(--color-rgb);--table-padding:var(--spacing-scale-3x);--table-font-weight:var(--font-weight-medium);--table-th-background:var(--background-alternative);--table-th-font-weight:var(--font-weight-semi-bold);--table-row-size:var(--spacing-scale-2x);border-collapse:collapse;width:100%}label,.label{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half)}::-webkit-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-moz-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !important}.bg-interactive{--background:var(--interactive);background:var(--interactive) !important}.text-primary-default{color:var(--color-primary-default) !important}.text-center{text-align:center !important}.text-right{text-align:right !important}.text-nowrap{white-space:nowrap !important}.text-uppercase{text-transform:uppercase !important}.text-medium{font-weight:500 !important}.text-bold{font-weight:700 !important}.text-base{font-size:var(--font-size-scale-base) !important}.text-down-01{font-size:var(--font-size-scale-down-01) !important}@media (min-width: 576px){.text-sm-center{text-align:center !important}.text-sm-left{text-align:left !important}.text-sm-right{text-align:right !important}}.ease{-webkit-animation-timing-function:cubic-bezier(0.25, 0.1, 0.25, 1);animation-timing-function:cubic-bezier(0.25, 0.1, 0.25, 1)}.ease-in-out{-webkit-animation-timing-function:cubic-bezier(0.42, 0, 0.58, 1);animation-timing-function:cubic-bezier(0.42, 0, 0.58, 1)}.fab{--icon-size:var(--icon-size-base);display:inline-block;font-size:var(--icon-size);text-align:center;width:calc(var(--icon-size) + 8px)}.highlight{background:var(--status-highlight-background) -webkit-gradient(linear, left top, left bottom, from(var(--status-highlight-overlay)), to(var(--status-highlight-overlay)));background:var(--status-highlight-background) linear-gradient(var(--status-highlight-overlay), var(--status-highlight-overlay));color:var(--status-highlight-text);padding:0 var(--spacing-scale-half)}[disabled],.disabled{cursor:not-allowed;opacity:var(--disabled)}[disabled] *,.disabled *{pointer-events:none}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{-webkit-box-shadow:var(--surface-shadow-sm);box-shadow:var(--surface-shadow-sm);left:0;position:absolute;top:100%}.dropdown .br-item{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--color-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);--item-padding-y:var(--spacing-scale-2x);background-color:var(--background-light);color:var(--color)}.dropdown .br-item:not(:last-child){border-bottom:1px solid var(--border-color)}.dropdown .br-item.selected{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}*[data-toggle=collapse]:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}*[data-toggle=collapse]:focus{outline:none}*[data-toggle=collapse]:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}:host{display:block;width:100%}:host .br-collapse .trigger{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}:host .br-collapse .trigger:not(:disabled):hover,:host .br-collapse .trigger:not(:disabled):focus-visible{background-image:-webkit-gradient(linear, left top, left bottom, from(rgb(var(--color-rgb), var(--hover))), to(rgb(var(--color-rgb), var(--hover))));background-image:linear-gradient(rgb(var(--color-rgb), var(--hover)), rgb(var(--color-rgb), var(--hover)))}:host .br-collapse .trigger-content{-webkit-box-flex:1 !important;-ms-flex:1 1 auto !important;flex:1 1 auto !important}:host .br-collapse .content{-webkit-transition:height .3s;transition:height .3s;overflow:hidden}:host .br-collapse br-icon{color:var(--interactive)}:host details{width:100%}:host details summary{list-style:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;cursor:pointer;padding:8px 12px;height:48px;outline:none}:host details summary::-webkit-details-marker{display:none}:host details summary:focus-visible{outline:var(--focus-width) var(--focus-style) var(--focus)}:host .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}`;
|
|
14
|
+
|
|
15
|
+
const c = t(class t extends e {
|
|
16
|
+
constructor(t) {
|
|
17
|
+
super();
|
|
18
|
+
if (t !== false) {
|
|
19
|
+
this.__registerHost();
|
|
20
|
+
}
|
|
21
|
+
this.__attachShadow();
|
|
22
|
+
this.brDidOpen = i(this, "brDidOpen", 7);
|
|
23
|
+
this.brDidClose = i(this, "brDidClose", 7);
|
|
24
|
+
this.elementInternals = this.attachInternals();
|
|
25
|
+
/**
|
|
26
|
+
* Identificador único.
|
|
27
|
+
* Caso não seja fornecido, um ID gerado automaticamente será usado.
|
|
28
|
+
*/ this.customId = l.generateUniqueId("clp");
|
|
29
|
+
/**
|
|
30
|
+
* Define se o collapse está aberto ou fechado.
|
|
31
|
+
* @default false
|
|
32
|
+
*/ this.open = false;
|
|
33
|
+
/**
|
|
34
|
+
* Define se o collapse faz parte de um accordion
|
|
35
|
+
* @default null
|
|
36
|
+
*/ this.accordionGroup = null;
|
|
37
|
+
/**
|
|
38
|
+
* Classe CSS para o ícone de expansão
|
|
39
|
+
* @default 'fa6-solid:chevron-down'
|
|
40
|
+
*/ this.iconToShow = "fa6-solid:chevron-down";
|
|
41
|
+
/**
|
|
42
|
+
* Classe CSS para o ícone de recolhimento
|
|
43
|
+
* @default 'fa6-solid:chevron-up'
|
|
44
|
+
*/ this.iconToHide = "fa6-solid:chevron-up";
|
|
45
|
+
/**
|
|
46
|
+
* Define a posição do ícone: 'left' ou 'right'
|
|
47
|
+
* @default 'right'
|
|
48
|
+
*/ this.iconPosition = "right";
|
|
49
|
+
/**
|
|
50
|
+
* Método chamado quando o elemento <details> é aberto ou fechado.
|
|
51
|
+
* Atualiza o estado interno do componente e emite eventos apropriados.
|
|
52
|
+
* @param event O evento de toggle do elemento <details>.
|
|
53
|
+
*/ this.handleCollapse = t => {
|
|
54
|
+
const e = t.target;
|
|
55
|
+
const i = e.open;
|
|
56
|
+
this.open = i;
|
|
57
|
+
if (this.open) {
|
|
58
|
+
// Fecha outros do mesmo grupo de forma determinística antes de emitir evento
|
|
59
|
+
this.closeOthersInGroup();
|
|
60
|
+
this.brDidOpen.emit({
|
|
61
|
+
id: this.customId,
|
|
62
|
+
accordionGroup: this.accordionGroup
|
|
63
|
+
});
|
|
64
|
+
} else {
|
|
65
|
+
this.brDidClose.emit({
|
|
66
|
+
id: this.customId,
|
|
67
|
+
accordionGroup: this.accordionGroup
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Evento disparado quando o componente é aberto.
|
|
74
|
+
* @param event Evento disparado quando o componente é aberto.
|
|
75
|
+
*/
|
|
76
|
+
/**
|
|
77
|
+
* Handler para o evento de abertura do componente.
|
|
78
|
+
* Fecha o collapse atual se ele não for parte do mesmo grupo de accordion.
|
|
79
|
+
* @param event Evento disparado quando o componente é aberto.
|
|
80
|
+
*/ handleOpen(t) {
|
|
81
|
+
if (this.accordionGroup && this.accordionGroup === t.detail.accordionGroup && t.detail.id !== this.customId) {
|
|
82
|
+
this.closeCollapse();
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Ciclo de vida do componente. Chamado uma vez logo após o componente ser adicionado ao DOM.
|
|
87
|
+
*/ componentWillLoad() {
|
|
88
|
+
this.syncDetailsWithOpen();
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Ciclo de vida do componente. Chamado quando o componente é removido do DOM.
|
|
92
|
+
*/ disconnectedCallback() {
|
|
93
|
+
var t;
|
|
94
|
+
const e = (t = this.el.shadowRoot) === null || t === void 0 ? void 0 : t.querySelector("details");
|
|
95
|
+
if (e !== null) {
|
|
96
|
+
e.removeEventListener("toggle", this.handleCollapse);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Sincroniza o estado do elemento <details> com a propriedade open.
|
|
101
|
+
* Isso garante que o estado visual do componente corresponda ao estado interno.
|
|
102
|
+
*/ syncDetailsWithOpen() {
|
|
103
|
+
var t;
|
|
104
|
+
const e = (t = this.el.shadowRoot) === null || t === void 0 ? void 0 : t.querySelector("details");
|
|
105
|
+
if (e !== null) {
|
|
106
|
+
e.open = this.open;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Método público para abrir.
|
|
111
|
+
* Este método pode ser chamado externamente para abrir o componente.
|
|
112
|
+
*/ openCollapse() {
|
|
113
|
+
return n(this, void 0, void 0, (function*() {
|
|
114
|
+
this.open = true;
|
|
115
|
+
this.syncDetailsWithOpen();
|
|
116
|
+
// Fecha outros do mesmo grupo antes de emitir evento
|
|
117
|
+
this.closeOthersInGroup();
|
|
118
|
+
this.brDidOpen.emit({
|
|
119
|
+
id: this.customId,
|
|
120
|
+
accordionGroup: this.accordionGroup
|
|
121
|
+
});
|
|
122
|
+
}));
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Método público para fechar.
|
|
126
|
+
* Este método pode ser chamado externamente para fechar o componente.
|
|
127
|
+
*/ closeCollapse() {
|
|
128
|
+
return n(this, void 0, void 0, (function*() {
|
|
129
|
+
this.open = false;
|
|
130
|
+
this.syncDetailsWithOpen();
|
|
131
|
+
this.brDidClose.emit({
|
|
132
|
+
id: this.customId,
|
|
133
|
+
accordionGroup: this.accordionGroup
|
|
134
|
+
});
|
|
135
|
+
}));
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Fecha outros collapses abertos no mesmo grupo de accordion.
|
|
139
|
+
* Usa busca no parent imediato para evitar varredura global desnecessária.
|
|
140
|
+
*/ closeOthersInGroup() {
|
|
141
|
+
if (this.accordionGroup == null || this.accordionGroup === "") return;
|
|
142
|
+
const t = this.el.parentElement;
|
|
143
|
+
if (!t) return;
|
|
144
|
+
const e = Array.from(t.querySelectorAll("br-collapse"));
|
|
145
|
+
e.filter((t => t !== this.el && t.getAttribute("accordion-group") === this.accordionGroup && t.hasAttribute("open"))).forEach((t => {
|
|
146
|
+
var e;
|
|
147
|
+
// seta prop open=false diretamente para evitar múltiplas emissões desnecessárias
|
|
148
|
+
t.open = false;
|
|
149
|
+
const i = (e = t.shadowRoot) === null || e === void 0 ? void 0 : e.querySelector("details");
|
|
150
|
+
if (i) i.open = false;
|
|
151
|
+
}));
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Renderiza o ícone de acordo com o estado do collapse.
|
|
155
|
+
* Se o collapse estiver aberto, renderiza o ícone para ocultar.
|
|
156
|
+
* Caso contrário, renderiza o ícone para mostrar.
|
|
157
|
+
* @returns JSX do ícone
|
|
158
|
+
*/ renderIcon() {
|
|
159
|
+
return a("br-icon", {
|
|
160
|
+
"icon-name": this.open ? this.iconToHide : this.iconToShow
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Renderiza o componente.
|
|
165
|
+
* O componente é renderizado como um elemento <details> com um <summary> que contém o acionador.
|
|
166
|
+
* @returns JSX do componente.
|
|
167
|
+
*/ render() {
|
|
168
|
+
const t = this.el.querySelectorAll("br-item").length;
|
|
169
|
+
return a(r, {
|
|
170
|
+
key: "f954ca7d02dfa53c46f8d93564e199343b43d4bf"
|
|
171
|
+
}, a("details", {
|
|
172
|
+
key: "3bb438009289250abba2554940d01293dfdcc020",
|
|
173
|
+
class: "br-collapse",
|
|
174
|
+
open: this.open,
|
|
175
|
+
onToggle: this.handleCollapse,
|
|
176
|
+
id: this.customId
|
|
177
|
+
}, a("summary", {
|
|
178
|
+
key: "e1538dc59ef88116422c9d61b9687531b747f995",
|
|
179
|
+
class: "trigger",
|
|
180
|
+
role: "button",
|
|
181
|
+
"aria-expanded": String(this.open),
|
|
182
|
+
"aria-controls": `content-${this.customId}`,
|
|
183
|
+
"aria-labelledby": `label-${this.customId}`,
|
|
184
|
+
tabindex: "0",
|
|
185
|
+
"aria-live": "polite"
|
|
186
|
+
}, this.iconPosition === "left" && this.renderIcon(), a("div", {
|
|
187
|
+
key: "0885822c58929b6f2f027776c06acc810bc00f2e",
|
|
188
|
+
class: "trigger-content",
|
|
189
|
+
id: `label-${this.customId}`
|
|
190
|
+
}, a("slot", {
|
|
191
|
+
key: "5af87a8de10bd182859eba3b19f9f25a23bc81df",
|
|
192
|
+
name: "trigger"
|
|
193
|
+
})), this.iconPosition === "right" && this.renderIcon()), a("div", {
|
|
194
|
+
key: "c59a9753f16ab8cda571ec7c7f512d24336b9cf1",
|
|
195
|
+
class: "content",
|
|
196
|
+
id: `content-${this.customId}`,
|
|
197
|
+
"aria-live": "polite",
|
|
198
|
+
"aria-labelledby": `label-${this.customId}`
|
|
199
|
+
}, this.open && t > 0 && a("div", {
|
|
200
|
+
key: "f8837dd4612f974dd0e80e3665ed4c4e811da0c7",
|
|
201
|
+
class: "visually-hidden"
|
|
202
|
+
}, t, " ", t === 1 ? "item" : "itens", " na lista"), a("slot", {
|
|
203
|
+
key: "d91c168d293d35eb0383f4677431c414d19f8bf6"
|
|
204
|
+
}))));
|
|
205
|
+
}
|
|
206
|
+
static get formAssociated() {
|
|
207
|
+
return true;
|
|
208
|
+
}
|
|
209
|
+
get el() {
|
|
210
|
+
return this;
|
|
211
|
+
}
|
|
212
|
+
static get style() {
|
|
213
|
+
return collapseCss();
|
|
214
|
+
}
|
|
215
|
+
}, [ 321, "br-collapse", {
|
|
216
|
+
customId: [ 513, "custom-id" ],
|
|
217
|
+
open: [ 1540 ],
|
|
218
|
+
accordionGroup: [ 1, "accordion-group" ],
|
|
219
|
+
iconToShow: [ 1, "icon-to-show" ],
|
|
220
|
+
iconToHide: [ 1, "icon-to-hide" ],
|
|
221
|
+
iconPosition: [ 1, "icon-position" ],
|
|
222
|
+
openCollapse: [ 64 ],
|
|
223
|
+
closeCollapse: [ 64 ]
|
|
224
|
+
}, [ [ 4, "brDidOpen", "handleOpen" ] ] ]);
|
|
225
|
+
|
|
226
|
+
function defineCustomElement() {
|
|
227
|
+
if (typeof customElements === "undefined") {
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
const t = [ "br-collapse", "br-icon" ];
|
|
231
|
+
t.forEach((t => {
|
|
232
|
+
switch (t) {
|
|
233
|
+
case "br-collapse":
|
|
234
|
+
if (!customElements.get(o(t))) {
|
|
235
|
+
customElements.define(o(t), c);
|
|
236
|
+
}
|
|
237
|
+
break;
|
|
238
|
+
|
|
239
|
+
case "br-icon":
|
|
240
|
+
if (!customElements.get(o(t))) {
|
|
241
|
+
s();
|
|
242
|
+
}
|
|
243
|
+
break;
|
|
244
|
+
}
|
|
245
|
+
}));
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
export { c as C, defineCustomElement as d };
|
|
249
|
+
//# sourceMappingURL=p-Coy21EGa.js.map
|
|
250
|
+
//# sourceMappingURL=p-Coy21EGa.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["collapseCss","Collapse","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","customId","Helpers","generateUniqueId","open","accordionGroup","iconToShow","iconToHide","iconPosition","handleCollapse","event","details","target","isOpen","closeOthersInGroup","brDidOpen","emit","id","brDidClose","handleOpen","detail","closeCollapse","componentWillLoad","syncDetailsWithOpen","disconnectedCallback","_a","el","shadowRoot","querySelector","removeEventListener","openCollapse","parent","parentElement","others","Array","from","querySelectorAll","filter","c","getAttribute","hasAttribute","forEach","renderIcon","h","render","itemCount","length","Host","key","class","onToggle","role","String","tabindex","name"],"sources":["../../packages/webcomponents/src/components/collapse/collapse.scss?tag=br-collapse&encapsulation=shadow","../../packages/webcomponents/src/components/collapse/collapse.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n\n .br-collapse {\n .trigger {\n display: flex;\n justify-content: center;\n align-items: center;\n\n &:not(:disabled):hover,\n &:not(:disabled):focus-visible {\n background-image: linear-gradient(rgb(var(--color-rgb), var(--hover)), rgb(var(--color-rgb), var(--hover)));\n }\n }\n\n .trigger-content {\n flex: 1 1 auto !important;\n }\n\n .content {\n transition: height 0.3s;\n overflow: hidden;\n }\n\n br-icon {\n color: var(--interactive);\n }\n }\n\n details {\n width: 100%;\n\n summary {\n list-style: none;\n display: flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n padding: 8px 12px;\n height: 48px;\n outline: none;\n\n &::-webkit-details-marker {\n display: none;\n }\n\n &:focus-visible {\n outline: var(--focus-width) var(--focus-style) var(--focus);\n }\n }\n }\n\n .visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n }\n}\n","import { AttachInternals, Component, Element, Event, EventEmitter, h, Host, Listen, Method, Prop } from '@stencil/core'\n\nimport Helpers from '../../utils/helpers'\n\n/**\n * O componente `br-collapse` pode ser utilizado em dois cenários principais: collapse simples ou accordion.\n *\n * - Collapse simples: Cada instância funciona de forma independente, permitindo abrir ou fechar o conteúdo conforme necessário, sem impactar outros componentes na página.\n * - Accordion: Quando configurado com a propriedade `accordionGroup`, múltiplos componentes `br-collapse` são agrupados. Nesse caso, apenas um item pode estar expandido por vez. Ao abrir um novo item, o anteriormente expandido será automaticamente fechado.\n *\n * @slot default - O conteúdo expansível mostrado/ocultado dinamicamente.\n * @slot trigger - Permite personalizar o conteúdo do acionador (texto, imagens, etc.).\n *\n * @example\n * ```html\n * <br-collapse open>\n * <div slot=\"trigger\">Clique para expandir</div>\n * <div>Conteúdo expansível</div>\n * </br-collapse>\n * ```\n */\n@Component({\n tag: 'br-collapse',\n styleUrl: 'collapse.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Collapse {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLBrCollapseElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Identificador único.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true }) readonly customId: string = Helpers.generateUniqueId('clp')\n\n /**\n * Define se o collapse está aberto ou fechado.\n * @default false\n */\n @Prop({ reflect: true, mutable: true }) open: boolean = false\n\n /**\n * Define se o collapse faz parte de um accordion\n * @default null\n */\n @Prop() accordionGroup?: string = null\n\n /**\n * Classe CSS para o ícone de expansão\n * @default 'fa6-solid:chevron-down'\n */\n @Prop() iconToShow: string = 'fa6-solid:chevron-down'\n\n /**\n * Classe CSS para o ícone de recolhimento\n * @default 'fa6-solid:chevron-up'\n */\n @Prop() iconToHide: string = 'fa6-solid:chevron-up'\n\n /**\n * Define a posição do ícone: 'left' ou 'right'\n * @default 'right'\n */\n @Prop() iconPosition: 'left' | 'right' = 'right'\n\n /**\n * Evento emitido ao expandir.\n */\n @Event({ bubbles: true, composed: true }) brDidOpen: EventEmitter<{ id: string; accordionGroup: string }>\n\n /**\n * Evento emitido ao recolher.\n */\n @Event({ bubbles: true, composed: true }) brDidClose: EventEmitter<{ id: string; accordionGroup: string }>\n\n /**\n * Evento disparado quando o componente é aberto.\n * @param event Evento disparado quando o componente é aberto.\n */\n @Listen('brDidOpen', { target: 'document' })\n /**\n * Handler para o evento de abertura do componente.\n * Fecha o collapse atual se ele não for parte do mesmo grupo de accordion.\n * @param event Evento disparado quando o componente é aberto.\n */\n handleOpen(event: CustomEvent) {\n if (\n this.accordionGroup &&\n this.accordionGroup === event.detail.accordionGroup &&\n event.detail.id !== this.customId\n ) {\n this.closeCollapse()\n }\n }\n\n /**\n * Ciclo de vida do componente. Chamado uma vez logo após o componente ser adicionado ao DOM.\n */\n componentWillLoad() {\n this.syncDetailsWithOpen()\n }\n\n /**\n * Ciclo de vida do componente. Chamado quando o componente é removido do DOM.\n */\n disconnectedCallback() {\n const details = this.el.shadowRoot?.querySelector('details')\n if (details !== null) {\n details.removeEventListener('toggle', this.handleCollapse)\n }\n }\n\n /**\n * Sincroniza o estado do elemento <details> com a propriedade open.\n * Isso garante que o estado visual do componente corresponda ao estado interno.\n */\n private syncDetailsWithOpen() {\n const details = this.el.shadowRoot?.querySelector('details')\n if (details !== null) {\n details.open = this.open\n }\n }\n\n /**\n * Método chamado quando o elemento <details> é aberto ou fechado.\n * Atualiza o estado interno do componente e emite eventos apropriados.\n * @param event O evento de toggle do elemento <details>.\n */\n private handleCollapse = (event: Event) => {\n const details = event.target as HTMLDetailsElement\n const isOpen = details.open\n\n this.open = isOpen\n if (this.open) {\n // Fecha outros do mesmo grupo de forma determinística antes de emitir evento\n this.closeOthersInGroup()\n this.brDidOpen.emit({ id: this.customId, accordionGroup: this.accordionGroup })\n } else {\n this.brDidClose.emit({ id: this.customId, accordionGroup: this.accordionGroup })\n }\n }\n\n /**\n * Método público para abrir.\n * Este método pode ser chamado externamente para abrir o componente.\n */\n @Method()\n async openCollapse() {\n this.open = true\n this.syncDetailsWithOpen()\n // Fecha outros do mesmo grupo antes de emitir evento\n this.closeOthersInGroup()\n this.brDidOpen.emit({ id: this.customId, accordionGroup: this.accordionGroup })\n }\n\n /**\n * Método público para fechar.\n * Este método pode ser chamado externamente para fechar o componente.\n */\n @Method()\n async closeCollapse() {\n this.open = false\n this.syncDetailsWithOpen()\n this.brDidClose.emit({ id: this.customId, accordionGroup: this.accordionGroup })\n }\n\n /**\n * Fecha outros collapses abertos no mesmo grupo de accordion.\n * Usa busca no parent imediato para evitar varredura global desnecessária.\n */\n private closeOthersInGroup() {\n if (this.accordionGroup == null || this.accordionGroup === '') return\n const parent = this.el.parentElement\n if (!parent) return\n const others = Array.from(parent.querySelectorAll('br-collapse')) as HTMLBrCollapseElement[]\n others\n .filter((c) => c !== this.el && c.getAttribute('accordion-group') === this.accordionGroup && c.hasAttribute('open'))\n .forEach((c) => {\n // seta prop open=false diretamente para evitar múltiplas emissões desnecessárias\n c.open = false\n const details = c.shadowRoot?.querySelector('details')\n if (details) details.open = false\n })\n }\n\n /**\n * Renderiza o ícone de acordo com o estado do collapse.\n * Se o collapse estiver aberto, renderiza o ícone para ocultar.\n * Caso contrário, renderiza o ícone para mostrar.\n * @returns JSX do ícone\n */\n private renderIcon() {\n return <br-icon icon-name={this.open ? this.iconToHide : this.iconToShow}></br-icon>\n }\n\n /**\n * Renderiza o componente.\n * O componente é renderizado como um elemento <details> com um <summary> que contém o acionador.\n * @returns JSX do componente.\n */\n render() {\n const itemCount = this.el.querySelectorAll('br-item').length\n\n return (\n <Host>\n <details class=\"br-collapse\" open={this.open} onToggle={this.handleCollapse} id={this.customId}>\n <summary\n class=\"trigger\"\n role=\"button\"\n aria-expanded={String(this.open)}\n aria-controls={`content-${this.customId}`}\n aria-labelledby={`label-${this.customId}`}\n tabindex=\"0\"\n aria-live=\"polite\"\n >\n {this.iconPosition === 'left' && this.renderIcon()}\n <div class=\"trigger-content\" id={`label-${this.customId}`}>\n <slot name=\"trigger\"></slot>\n </div>\n {this.iconPosition === 'right' && this.renderIcon()}\n </summary>\n\n <div\n class=\"content\"\n id={`content-${this.customId}`}\n aria-live=\"polite\"\n aria-labelledby={`label-${this.customId}`}\n >\n {this.open && itemCount > 0 && (\n <div class=\"visually-hidden\">\n {itemCount} {itemCount === 1 ? 'item' : 'itens'} na lista\n </div>\n )}\n <slot></slot>\n </div>\n </details>\n </Host>\n )\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["collapseCss","Collapse","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","customId","Helpers","generateUniqueId","open","accordionGroup","iconToShow","iconToHide","iconPosition","handleCollapse","event","details","target","isOpen","closeOthersInGroup","brDidOpen","emit","id","brDidClose","handleOpen","detail","closeCollapse","componentWillLoad","syncDetailsWithOpen","disconnectedCallback","_a","el","shadowRoot","querySelector","removeEventListener","openCollapse","parent","parentElement","others","Array","from","querySelectorAll","filter","c","getAttribute","hasAttribute","forEach","renderIcon","h","render","itemCount","length","Host","key","class","onToggle","role","String","tabindex","name"],"sources":["../../packages/webcomponents/src/components/collapse/collapse.scss?tag=br-collapse&encapsulation=shadow","../../packages/webcomponents/src/components/collapse/collapse.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n\n .br-collapse {\n .trigger {\n display: flex;\n justify-content: center;\n align-items: center;\n\n &:not(:disabled):hover,\n &:not(:disabled):focus-visible {\n background-image: linear-gradient(rgb(var(--color-rgb), var(--hover)), rgb(var(--color-rgb), var(--hover)));\n }\n }\n\n .trigger-content {\n flex: 1 1 auto !important;\n }\n\n .content {\n transition: height 0.3s;\n overflow: hidden;\n }\n\n br-icon {\n color: var(--interactive);\n }\n }\n\n details {\n width: 100%;\n\n summary {\n list-style: none;\n display: flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n padding: 8px 12px;\n height: 48px;\n outline: none;\n\n &::-webkit-details-marker {\n display: none;\n }\n\n &:focus-visible {\n outline: var(--focus-width) var(--focus-style) var(--focus);\n }\n }\n }\n\n .visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n }\n}\n","import { AttachInternals, Component, Element, Event, EventEmitter, h, Host, Listen, Method, Prop } from '@stencil/core'\n\nimport Helpers from '../../utils/helpers'\n\n/**\n * O componente `br-collapse` pode ser utilizado em dois cenários principais: collapse simples ou accordion.\n *\n * - Collapse simples: Cada instância funciona de forma independente, permitindo abrir ou fechar o conteúdo conforme necessário, sem impactar outros componentes na página.\n * - Accordion: Quando configurado com a propriedade `accordionGroup`, múltiplos componentes `br-collapse` são agrupados. Nesse caso, apenas um item pode estar expandido por vez. Ao abrir um novo item, o anteriormente expandido será automaticamente fechado.\n *\n * @slot default - O conteúdo expansível mostrado/ocultado dinamicamente.\n * @slot trigger - Permite personalizar o conteúdo do acionador (texto, imagens, etc.).\n *\n * @example\n * ```html\n * <br-collapse open>\n * <div slot=\"trigger\">Clique para expandir</div>\n * <div>Conteúdo expansível</div>\n * </br-collapse>\n * ```\n */\n@Component({\n tag: 'br-collapse',\n styleUrl: 'collapse.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Collapse {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLBrCollapseElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Identificador único.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true }) readonly customId: string = Helpers.generateUniqueId('clp')\n\n /**\n * Define se o collapse está aberto ou fechado.\n * @default false\n */\n @Prop({ reflect: true, mutable: true }) open: boolean = false\n\n /**\n * Define se o collapse faz parte de um accordion\n * @default null\n */\n @Prop() accordionGroup?: string = null\n\n /**\n * Classe CSS para o ícone de expansão\n * @default 'fa6-solid:chevron-down'\n */\n @Prop() iconToShow: string = 'fa6-solid:chevron-down'\n\n /**\n * Classe CSS para o ícone de recolhimento\n * @default 'fa6-solid:chevron-up'\n */\n @Prop() iconToHide: string = 'fa6-solid:chevron-up'\n\n /**\n * Define a posição do ícone: 'left' ou 'right'\n * @default 'right'\n */\n @Prop() iconPosition: 'left' | 'right' = 'right'\n\n /**\n * Evento emitido ao expandir.\n */\n @Event({ bubbles: true, composed: true }) brDidOpen: EventEmitter<{ id: string; accordionGroup: string }>\n\n /**\n * Evento emitido ao recolher.\n */\n @Event({ bubbles: true, composed: true }) brDidClose: EventEmitter<{ id: string; accordionGroup: string }>\n\n /**\n * Evento disparado quando o componente é aberto.\n * @param event Evento disparado quando o componente é aberto.\n */\n @Listen('brDidOpen', { target: 'document' })\n /**\n * Handler para o evento de abertura do componente.\n * Fecha o collapse atual se ele não for parte do mesmo grupo de accordion.\n * @param event Evento disparado quando o componente é aberto.\n */\n handleOpen(event: CustomEvent) {\n if (\n this.accordionGroup &&\n this.accordionGroup === event.detail.accordionGroup &&\n event.detail.id !== this.customId\n ) {\n this.closeCollapse()\n }\n }\n\n /**\n * Ciclo de vida do componente. Chamado uma vez logo após o componente ser adicionado ao DOM.\n */\n componentWillLoad() {\n this.syncDetailsWithOpen()\n }\n\n /**\n * Ciclo de vida do componente. Chamado quando o componente é removido do DOM.\n */\n disconnectedCallback() {\n const details = this.el.shadowRoot?.querySelector('details')\n if (details !== null) {\n details.removeEventListener('toggle', this.handleCollapse)\n }\n }\n\n /**\n * Sincroniza o estado do elemento <details> com a propriedade open.\n * Isso garante que o estado visual do componente corresponda ao estado interno.\n */\n private syncDetailsWithOpen() {\n const details = this.el.shadowRoot?.querySelector('details')\n if (details !== null) {\n details.open = this.open\n }\n }\n\n /**\n * Método chamado quando o elemento <details> é aberto ou fechado.\n * Atualiza o estado interno do componente e emite eventos apropriados.\n * @param event O evento de toggle do elemento <details>.\n */\n private handleCollapse = (event: Event) => {\n const details = event.target as HTMLDetailsElement\n const isOpen = details.open\n\n this.open = isOpen\n if (this.open) {\n // Fecha outros do mesmo grupo de forma determinística antes de emitir evento\n this.closeOthersInGroup()\n this.brDidOpen.emit({ id: this.customId, accordionGroup: this.accordionGroup })\n } else {\n this.brDidClose.emit({ id: this.customId, accordionGroup: this.accordionGroup })\n }\n }\n\n /**\n * Método público para abrir.\n * Este método pode ser chamado externamente para abrir o componente.\n */\n @Method()\n async openCollapse() {\n this.open = true\n this.syncDetailsWithOpen()\n // Fecha outros do mesmo grupo antes de emitir evento\n this.closeOthersInGroup()\n this.brDidOpen.emit({ id: this.customId, accordionGroup: this.accordionGroup })\n }\n\n /**\n * Método público para fechar.\n * Este método pode ser chamado externamente para fechar o componente.\n */\n @Method()\n async closeCollapse() {\n this.open = false\n this.syncDetailsWithOpen()\n this.brDidClose.emit({ id: this.customId, accordionGroup: this.accordionGroup })\n }\n\n /**\n * Fecha outros collapses abertos no mesmo grupo de accordion.\n * Usa busca no parent imediato para evitar varredura global desnecessária.\n */\n private closeOthersInGroup() {\n if (this.accordionGroup == null || this.accordionGroup === '') return\n const parent = this.el.parentElement\n if (!parent) return\n const others = Array.from(parent.querySelectorAll('br-collapse')) as HTMLBrCollapseElement[]\n others\n .filter(\n (c) => c !== this.el && c.getAttribute('accordion-group') === this.accordionGroup && c.hasAttribute('open')\n )\n .forEach((c) => {\n // seta prop open=false diretamente para evitar múltiplas emissões desnecessárias\n c.open = false\n const details = c.shadowRoot?.querySelector('details')\n if (details) details.open = false\n })\n }\n\n /**\n * Renderiza o ícone de acordo com o estado do collapse.\n * Se o collapse estiver aberto, renderiza o ícone para ocultar.\n * Caso contrário, renderiza o ícone para mostrar.\n * @returns JSX do ícone\n */\n private renderIcon() {\n return <br-icon icon-name={this.open ? this.iconToHide : this.iconToShow}></br-icon>\n }\n\n /**\n * Renderiza o componente.\n * O componente é renderizado como um elemento <details> com um <summary> que contém o acionador.\n * @returns JSX do componente.\n */\n render() {\n const itemCount = this.el.querySelectorAll('br-item').length\n\n return (\n <Host>\n <details class=\"br-collapse\" open={this.open} onToggle={this.handleCollapse} id={this.customId}>\n <summary\n class=\"trigger\"\n role=\"button\"\n aria-expanded={String(this.open)}\n aria-controls={`content-${this.customId}`}\n aria-labelledby={`label-${this.customId}`}\n tabindex=\"0\"\n aria-live=\"polite\"\n >\n {this.iconPosition === 'left' && this.renderIcon()}\n <div class=\"trigger-content\" id={`label-${this.customId}`}>\n <slot name=\"trigger\"></slot>\n </div>\n {this.iconPosition === 'right' && this.renderIcon()}\n </summary>\n\n <div\n class=\"content\"\n id={`content-${this.customId}`}\n aria-live=\"polite\"\n aria-labelledby={`label-${this.customId}`}\n >\n {this.open && itemCount > 0 && (\n <div class=\"visually-hidden\">\n {itemCount} {itemCount === 1 ? 'item' : 'itens'} na lista\n </div>\n )}\n <slot></slot>\n </div>\n </details>\n </Host>\n )\n }\n}\n"],"mappings":";;;;;;;;;;;;AAAA,MAAMA,cAAc,MAAM;;MC2BbC,KAAQC,EAAA,MAAAD,UAAAE;EANrB,WAAAC,CAAAC;;;;;;;;;;;;eAmBoCC,KAAAC,WAAmBC,EAAQC,iBAAiB;;;;eAMtCH,KAAII,OAAY;;;;eAMhDJ,KAAcK,iBAAY;;;;eAM1BL,KAAUM,aAAW;;;;eAMrBN,KAAUO,aAAW;;;;eAMrBP,KAAYQ,eAAqB;;;;;eAiEjCR,KAAAS,iBAAkBC;MACxB,MAAMC,IAAUD,EAAME;MACtB,MAAMC,IAASF,EAAQP;MAEvBJ,KAAKI,OAAOS;MACZ,IAAIb,KAAKI,MAAM;;QAEbJ,KAAKc;QACLd,KAAKe,UAAUC,KAAK;UAAEC,IAAIjB,KAAKC;UAAUI,gBAAgBL,KAAKK;;aACzD;QACLL,KAAKkB,WAAWF,KAAK;UAAEC,IAAIjB,KAAKC;UAAUI,gBAAgBL,KAAKK;;;;AAuGpE;;;;;;;;;SA5JC,UAAAc,CAAWT;IACT,IACEV,KAAKK,kBACLL,KAAKK,mBAAmBK,EAAMU,OAAOf,kBACrCK,EAAMU,OAAOH,OAAOjB,KAAKC,UACzB;MACAD,KAAKqB;;;;;SAOT,iBAAAC;IACEtB,KAAKuB;;;;SAMP,oBAAAC;;IACE,MAAMb,KAAUc,IAAAzB,KAAK0B,GAAGC,gBAAY,QAAAF,WAAA,aAAAA,EAAAG,cAAc;IAClD,IAAIjB,MAAY,MAAM;MACpBA,EAAQkB,oBAAoB,UAAU7B,KAAKS;;;;;;SAQvC,mBAAAc;;IACN,MAAMZ,KAAUc,IAAAzB,KAAK0B,GAAGC,gBAAY,QAAAF,WAAA,aAAAA,EAAAG,cAAc;IAClD,IAAIjB,MAAY,MAAM;MACpBA,EAAQP,OAAOJ,KAAKI;;;;;;SA4BlB,YAAA0B;;MACJ9B,KAAKI,OAAO;MACZJ,KAAKuB;;YAELvB,KAAKc;MACLd,KAAKe,UAAUC,KAAK;QAAEC,IAAIjB,KAAKC;QAAUI,gBAAgBL,KAAKK;;AAChE;;;;;SAOM,aAAAgB;;MACJrB,KAAKI,OAAO;MACZJ,KAAKuB;MACLvB,KAAKkB,WAAWF,KAAK;QAAEC,IAAIjB,KAAKC;QAAUI,gBAAgBL,KAAKK;;AACjE;;;;;SAMQ,kBAAAS;IACN,IAAId,KAAKK,kBAAkB,QAAQL,KAAKK,mBAAmB,IAAI;IAC/D,MAAM0B,IAAS/B,KAAK0B,GAAGM;IACvB,KAAKD,GAAQ;IACb,MAAME,IAASC,MAAMC,KAAKJ,EAAOK,iBAAiB;IAClDH,EACGI,QACEC,KAAMA,MAAMtC,KAAK0B,MAAMY,EAAEC,aAAa,uBAAuBvC,KAAKK,kBAAkBiC,EAAEE,aAAa,UAErGC,SAASH;;;YAERA,EAAElC,OAAO;MACT,MAAMO,KAAUc,IAAAa,EAAEX,gBAAU,QAAAF,WAAA,aAAAA,EAAEG,cAAc;MAC5C,IAAIjB,GAASA,EAAQP,OAAO;AAAK;;;;;;;SAU/B,UAAAsC;IACN,OAAOC,EAAA;MAAA,aAAoB3C,KAAKI,OAAOJ,KAAKO,aAAaP,KAAKM;;;;;;;SAQhE,MAAAsC;IACE,MAAMC,IAAY7C,KAAK0B,GAAGU,iBAAiB,WAAWU;IAEtD,OACEH,EAACI,GAAI;MAAAC,KAAA;OACHL,EAAS;MAAAK,KAAA;MAAAC,OAAM;MAAc7C,MAAMJ,KAAKI;MAAM8C,UAAUlD,KAAKS;MAAgBQ,IAAIjB,KAAKC;OACpF0C,EAAA;MAAAK,KAAA;MACEC,OAAM;MACNE,MAAK;MAAQ,iBACEC,OAAOpD,KAAKI;MAAK,iBACjB,WAAWJ,KAAKC;MAAU,mBACxB,SAASD,KAAKC;MAC/BoD,UAAS;MAAG,aACF;OAETrD,KAAKQ,iBAAiB,UAAUR,KAAK0C,cACtCC,EAAK;MAAAK,KAAA;MAAAC,OAAM;MAAkBhC,IAAI,SAASjB,KAAKC;OAC7C0C,EAAA;MAAAK,KAAA;MAAMM,MAAK;SAEZtD,KAAKQ,iBAAiB,WAAWR,KAAK0C,eAGzCC,EAAA;MAAAK,KAAA;MACEC,OAAM;MACNhC,IAAI,WAAWjB,KAAKC;MAAU,aACpB;MAAQ,mBACD,SAASD,KAAKC;OAE9BD,KAAKI,QAAQyC,IAAY,KACxBF,EAAA;MAAAK,KAAA;MAAKC,OAAM;OACRJ,GAAS,KAAGA,MAAc,IAAI,SAAS,SAAO,cAGnDF,EAAA;MAAAK,KAAA","ignoreList":[]}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Construído por SERPRO
|
|
3
|
+
* © https://serpro.gov.br/ - MIT License.
|
|
4
|
+
*/
|
|
5
|
+
import { p as e, H as t, h as a, t as r, c as i } from "./p-Dl8sbmQD.js";
|
|
6
|
+
|
|
7
|
+
import { d as o } from "./p-DPI-6oom.js";
|
|
8
|
+
|
|
9
|
+
const menuItemCss = () => `*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}main{display:block}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}a{background-color:rgba(0,0,0,0)}b,strong{font-weight:bolder}small{font-size:80%}img{border-style:none}button,input,select,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;-moz-appearance:button;appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.d-none{display:none !important}.d-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}@media (min-width: 576px){.d-sm-block{display:block !important}.d-sm-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}}.justify-content-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.align-items-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter)*.5);padding-right:calc(var(--grid-gutter)*.5);width:100%}.col{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;min-width:8.3333333333%}.col-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-2{-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%;max-width:16.6666666667%}.container,.container-lg{--grid-margin:var(--grid-portrait-margin);--grid-maxwidth:var(--grid-portrait-maxwidth);margin-left:auto;margin-right:auto;max-width:var(--grid-maxwidth);padding-left:var(--grid-margin);padding-right:var(--grid-margin);width:100%}.row{--grid-gutter:var(--grid-portrait-gutter);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:calc(var(--grid-gutter)*-0.5);margin-right:calc(var(--grid-gutter)*-0.5)}@media (min-width: 576px){.container,.container-lg{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}.col-sm-4{-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%;max-width:33.3333333333%}}@media (min-width: 992px){.container,.container-lg{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-md) - var(--grid-tablet-margin))}}@media (min-width: 1280px){.container,.container-lg{--grid-margin:var(--grid-desktop-margin)}.row{--grid-gutter:var(--grid-desktop-gutter)}.container,.container-lg{--grid-maxwidth:calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}.col-lg-3{-ms-flex-preferred-size:25%;flex-basis:25%;max-width:25%}}@media (min-width: 1600px){.container,.container-lg{--grid-margin:var(--grid-tv-margin)}.row{--grid-gutter:var(--grid-tv-gutter)}.container,.container-lg{--grid-maxwidth:calc(var(--grid-breakpoint-xl) - var(--grid-tv-margin))}}.mt-1{margin-top:var(--spacing-scale-half) !important}.mr-1{margin-right:var(--spacing-scale-half) !important}.mb-1{margin-bottom:var(--spacing-scale-half) !important}.ml-1{margin-left:var(--spacing-scale-half) !important}.mr-n2{margin-right:calc(var(--spacing-scale-base)*-1) !important}.ml-2{margin-left:var(--spacing-scale-base) !important}.m-3{margin:var(--spacing-scale-2x) !important}.mx-3{margin-left:var(--spacing-scale-2x) !important;margin-right:var(--spacing-scale-2x) !important}.mr-auto{margin-right:auto !important}.ml-auto{margin-left:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}.py-3{padding-bottom:var(--spacing-scale-2x) !important;padding-top:var(--spacing-scale-2x) !important}.py-4{padding-bottom:var(--spacing-scale-3x) !important;padding-top:var(--spacing-scale-3x) !important}@media (min-width: 576px){.ml-sm-0{margin-left:var(--spacing-scale-default) !important}}body{--bg-color:var(--background);--bg-color-rgb:var(--background-rgb);--bg-color-hsl:var(--background-hsl);--font-size:var(--font-size-scale-base);--font-weight:var(--font-weight-regular);--link-color:var(--interactive);--link-color-rgb:var(--interactive-rgb);--link-color-hsl:var(--interactive-hsl);--line-height:var(--font-line-height-medium);--text-color:var(--color);--text-color-rgb:var(--color-rgb);--text-color-hsl:var(--color-hsl);background:var(--bg-color);color:var(--text-color);font-family:var(--font-family-base);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height)}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media (min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset:var(--spacing-scale-half)}a:focus{outline:none}a:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}a:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--pressed))), to(rgba(var(--interactive-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}a{color:var(--interactive);text-decoration:none}.main-content a{text-decoration:underline}button{cursor:pointer}img{max-width:100%;vertical-align:middle}ul,ol{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}table{--table-background:var(--background);--table-color:var(--color);--table-border-color:var(--gray-20);--table-border-style:solid;--table-border-width:1px;--table-hover:var(--color-rgb);--table-padding:var(--spacing-scale-3x);--table-font-weight:var(--font-weight-medium);--table-th-background:var(--background-alternative);--table-th-font-weight:var(--font-weight-semi-bold);--table-row-size:var(--spacing-scale-2x);border-collapse:collapse;width:100%}label,.label{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half)}::-webkit-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-moz-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !important}.bg-interactive{--background:var(--interactive);background:var(--interactive) !important}.text-primary-default{color:var(--color-primary-default) !important}.text-center{text-align:center !important}.text-right{text-align:right !important}.text-nowrap{white-space:nowrap !important}.text-uppercase{text-transform:uppercase !important}.text-medium{font-weight:500 !important}.text-bold{font-weight:700 !important}.text-base{font-size:var(--font-size-scale-base) !important}.text-down-01{font-size:var(--font-size-scale-down-01) !important}@media (min-width: 576px){.text-sm-center{text-align:center !important}.text-sm-left{text-align:left !important}.text-sm-right{text-align:right !important}}.ease{-webkit-animation-timing-function:cubic-bezier(0.25, 0.1, 0.25, 1);animation-timing-function:cubic-bezier(0.25, 0.1, 0.25, 1)}.ease-in-out{-webkit-animation-timing-function:cubic-bezier(0.42, 0, 0.58, 1);animation-timing-function:cubic-bezier(0.42, 0, 0.58, 1)}.fab{--icon-size:var(--icon-size-base);display:inline-block;font-size:var(--icon-size);text-align:center;width:calc(var(--icon-size) + 8px)}.highlight{background:var(--status-highlight-background) -webkit-gradient(linear, left top, left bottom, from(var(--status-highlight-overlay)), to(var(--status-highlight-overlay)));background:var(--status-highlight-background) linear-gradient(var(--status-highlight-overlay), var(--status-highlight-overlay));color:var(--status-highlight-text);padding:0 var(--spacing-scale-half)}[disabled],.disabled{cursor:not-allowed;opacity:var(--disabled)}[disabled] *,.disabled *{pointer-events:none}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{-webkit-box-shadow:var(--surface-shadow-sm);box-shadow:var(--surface-shadow-sm);left:0;position:absolute;top:100%}.dropdown .br-item{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--color-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);--item-padding-y:var(--spacing-scale-2x);background-color:var(--background-light);color:var(--color)}.dropdown .br-item:not(:last-child){border-bottom:1px solid var(--border-color)}.dropdown .br-item.selected{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}*[data-toggle=collapse]:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}*[data-toggle=collapse]:focus{outline:none}*[data-toggle=collapse]:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}.menu-header{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-bottom:1px solid var(--border-color);display:-webkit-box;display:-ms-flexbox;display:flex;padding:var(--spacing-scale-base) var(--spacing-scale-base)}.menu-header .menu-title{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1;flex:1;margin-left:var(--spacing-scale-base)}.menu-header .menu-title img{max-height:var(--menu-logo)}.menu-header .menu-title img+*{margin-left:var(--spacing-scale-base)}.menu-body ul,.menu-body li{margin:0;padding:0}.menu-body ul{list-style:none}.menu-body>.divider{border-bottom:1px solid var(--border-color)}.menu-body .menu-folder>ul>li:last-child>.menu-item{border-bottom:1px solid var(--border-color)}.menu-body .menu-folder>.menu-item+ul{background:var(--menu-background-submenu)}.menu-body .menu-folder>.menu-item+ul .menu-item{padding-left:var(--spacing-scale-5x)}.menu-body .drop-menu>.menu-item{border-bottom:1px solid var(--border-color)}.menu-body .drop-menu.active>.menu-item{border-bottom:0}.menu-body .drop-menu>ul{background:var(--menu-background-submenu);display:none}.menu-body .drop-menu.active>.menu-item:not(:hover){background-color:var(--background)}.menu-body .drop-menu.active>.menu-item .support .fab{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.menu-body .drop-menu.active>ul{display:block}.menu-footer>*:not(:last-child){border-bottom:1px solid var(--border-color)}.menu-footer .menu-logos{-webkit-column-gap:var(--spacing-scale-2x);-moz-column-gap:var(--spacing-scale-2x);column-gap:var(--spacing-scale-2x);display:grid;grid-template-columns:1fr 1fr 1fr;padding:var(--spacing-scale-base) var(--spacing-scale-5x);row-gap:var(--spacing-scale-2x)}.menu-footer .menu-links{--focus-offset:var(--spacing-scale-half);padding:var(--spacing-scale-2x) var(--spacing-scale-5x)}.menu-footer .menu-links a{display:block}.menu-footer .menu-links a:not(:last-child){margin-bottom:var(--spacing-scale-2x)}.menu-footer .menu-links a:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}.menu-footer .social-network,.menu-footer .menu-social{padding:var(--spacing-scale-base) var(--spacing-scale-5x)}.menu-footer .social-network .social-network-title,.menu-footer .menu-social .social-network-title{font-weight:var(--font-weight-semi-bold);margin-bottom:var(--spacing-scale-half)}.menu-footer .social-network .sharegroup,.menu-footer .menu-social .sharegroup{display:-webkit-box;display:-ms-flexbox;display:flex}.menu-footer .menu-info{padding:var(--spacing-scale-2x)}.menu-item{--focus-offset:calc(var(--spacing-scale-half) * -1);background:rgba(0,0,0,0);display:-webkit-box;display:-ms-flexbox;display:flex;padding:var(--menu-item-padding) var(--spacing-scale-2x)}.menu-item .icon{margin-right:var(--spacing-scale-2x)}.menu-item .content{-webkit-box-flex:1;-ms-flex:1;flex:1}a.menu-item{color:var(--interactive)}.side-menu>ul{background:var(--menu-background-submenu);display:none}.side-menu.active>.menu-item{--interactive:var(--active);--interactive-rgb:var(--active-rgb);background-color:var(--background);-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;font-weight:var(--font-weight-semi-bold)}.side-menu.active>.menu-item .icon{margin-right:0}.side-menu.active>.menu-item .support{margin-right:var(--spacing-scale-2x)}.side-menu.active>.menu-item .support .fab{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.side-menu.active>ul{display:block}.side-menu.active .menu-item{padding-left:var(--spacing-scale-2x) !important}:host{display:block}:host-context(br-menu[density=small]) .menu-item{padding-block:var(--spacing-scale-base)}:host-context(br-menu[density=large]) .menu-item{padding-block:var(--spacing-scale-3x)}.divider-item{border-bottom:1px solid var(--border-color)}s a.menu-item.active{background-color:var(--active);--interactive:var(--color-dark);--interactive-rgb:var(--color-dark-rgb)}`;
|
|
10
|
+
|
|
11
|
+
const n = e(class e extends t {
|
|
12
|
+
constructor(e) {
|
|
13
|
+
super();
|
|
14
|
+
if (e !== false) {
|
|
15
|
+
this.__registerHost();
|
|
16
|
+
}
|
|
17
|
+
this.__attachShadow();
|
|
18
|
+
/**
|
|
19
|
+
* URL de destino do link do item do menu.
|
|
20
|
+
* Utilize esta propriedade para definir o endereço para onde o usuário será direcionado ao clicar no item.
|
|
21
|
+
* @default '#'
|
|
22
|
+
*/ this.href = "#";
|
|
23
|
+
/**
|
|
24
|
+
* Define como o link será aberto.
|
|
25
|
+
* - `_self`: abre no mesmo contexto de navegação (padrão)
|
|
26
|
+
* - `_blank`: abre em nova aba ou janela
|
|
27
|
+
* - `_parent`: abre no contexto pai
|
|
28
|
+
* - `_top`: abre no contexto de nível superior
|
|
29
|
+
*/ this.target = "_blank";
|
|
30
|
+
/**
|
|
31
|
+
* Define se o item deve exibir um divisor visual.
|
|
32
|
+
* Quando ativado, adiciona uma linha separadora para organizar visualmente os itens do menu.
|
|
33
|
+
* @default false
|
|
34
|
+
*/ this.divider = false;
|
|
35
|
+
/**
|
|
36
|
+
* Define se o item do menu está ativo/selecionado.
|
|
37
|
+
* Quando ativado, aplica estilos visuais para destacar o item como atual ou selecionado.
|
|
38
|
+
* @default false
|
|
39
|
+
*/ this.active = false;
|
|
40
|
+
/**
|
|
41
|
+
* Define o modo de exibição do item, controlando os ícones de expansão.
|
|
42
|
+
* - `accordion`: exibe setas para cima/baixo (usado em menus de nível 0).
|
|
43
|
+
* - `drill-down`: exibe seta para a direita (usado em menus de níveis 1+).
|
|
44
|
+
* - `none`: não exibe ícones de expansão.
|
|
45
|
+
* @default 'none'
|
|
46
|
+
*/ this.displayMode = "none";
|
|
47
|
+
/**
|
|
48
|
+
* Indica se o item está expandido para fins de acessibilidade (ARIA).
|
|
49
|
+
* Este estado é controlado externamente (por exemplo, por br-menu-list).
|
|
50
|
+
* Não altera o estado visual de "active".
|
|
51
|
+
* @default false
|
|
52
|
+
*/ this.expanded = false;
|
|
53
|
+
}
|
|
54
|
+
render() {
|
|
55
|
+
const e = {
|
|
56
|
+
"menu-item": true,
|
|
57
|
+
"divider-item": this.divider,
|
|
58
|
+
active: this.active
|
|
59
|
+
};
|
|
60
|
+
const t = this.displayMode !== "none";
|
|
61
|
+
const r = t ? {
|
|
62
|
+
"aria-expanded": String(this.expanded),
|
|
63
|
+
"aria-haspopup": "true"
|
|
64
|
+
} : {};
|
|
65
|
+
const o = !t && this.target ? {
|
|
66
|
+
target: this.target
|
|
67
|
+
} : {};
|
|
68
|
+
const n = a("a", Object.assign({
|
|
69
|
+
key: "81f78373231e97eec32accc4f4850aeb8fa68f27",
|
|
70
|
+
href: this.href,
|
|
71
|
+
class: e,
|
|
72
|
+
role: "treeitem"
|
|
73
|
+
}, r, o, {
|
|
74
|
+
"aria-selected": String(this.active)
|
|
75
|
+
}), this.icon && a("span", {
|
|
76
|
+
key: "49111c03bf198c283696e728b06d604468333598",
|
|
77
|
+
class: "icon"
|
|
78
|
+
}, a("br-icon", {
|
|
79
|
+
key: "31cf753c6a79b47141a1bb87d3a82bb85743498e",
|
|
80
|
+
"icon-name": `fa6-solid:${this.icon}`,
|
|
81
|
+
"aria-hidden": "true"
|
|
82
|
+
})), a("span", {
|
|
83
|
+
key: "11699e3ee695d0bf22c396b6f2591968e90e8bac",
|
|
84
|
+
class: "content"
|
|
85
|
+
}, a("slot", {
|
|
86
|
+
key: "d5d7ff13dc754bb8b6f5fc0fc497410eaf2005df"
|
|
87
|
+
})), this.displayMode === "accordion" && a("span", {
|
|
88
|
+
key: "e7b979010c9e0fec5b2baaf8d13f94757335a922",
|
|
89
|
+
class: "support"
|
|
90
|
+
}, a("br-icon", {
|
|
91
|
+
key: "60e5f0eada6d3b3dceb48527e81d40b61fc9c995",
|
|
92
|
+
"icon-name": `fa6-solid:${this.active ? "chevron-up" : "chevron-down"}`,
|
|
93
|
+
"aria-hidden": "true"
|
|
94
|
+
})), this.displayMode === "drill-down" && a("span", {
|
|
95
|
+
key: "0708009ecf6fce6a4252748c30e4e1689c515bd5",
|
|
96
|
+
class: "support"
|
|
97
|
+
}, a("br-icon", {
|
|
98
|
+
key: "d082c5009875461dd50782d9a15455ec655ca3cc",
|
|
99
|
+
"icon-name": `fa6-solid:angle-right`,
|
|
100
|
+
"aria-hidden": "true"
|
|
101
|
+
})));
|
|
102
|
+
return a(i, {
|
|
103
|
+
key: "b8ffeda30aedca3cdf4e4ac0e1ec54466667a2d3"
|
|
104
|
+
}, n);
|
|
105
|
+
}
|
|
106
|
+
static get style() {
|
|
107
|
+
return menuItemCss();
|
|
108
|
+
}
|
|
109
|
+
}, [ 257, "br-menu-item", {
|
|
110
|
+
icon: [ 1 ],
|
|
111
|
+
href: [ 1 ],
|
|
112
|
+
target: [ 1 ],
|
|
113
|
+
divider: [ 4 ],
|
|
114
|
+
active: [ 1540 ],
|
|
115
|
+
displayMode: [ 1, "display-mode" ],
|
|
116
|
+
expanded: [ 4 ]
|
|
117
|
+
} ]);
|
|
118
|
+
|
|
119
|
+
function defineCustomElement() {
|
|
120
|
+
if (typeof customElements === "undefined") {
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
const e = [ "br-menu-item", "br-icon" ];
|
|
124
|
+
e.forEach((e => {
|
|
125
|
+
switch (e) {
|
|
126
|
+
case "br-menu-item":
|
|
127
|
+
if (!customElements.get(r(e))) {
|
|
128
|
+
customElements.define(r(e), n);
|
|
129
|
+
}
|
|
130
|
+
break;
|
|
131
|
+
|
|
132
|
+
case "br-icon":
|
|
133
|
+
if (!customElements.get(r(e))) {
|
|
134
|
+
o();
|
|
135
|
+
}
|
|
136
|
+
break;
|
|
137
|
+
}
|
|
138
|
+
}));
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
export { n as M, defineCustomElement as d };
|
|
142
|
+
//# sourceMappingURL=p-CqGm9xxH.js.map
|
|
143
|
+
//# sourceMappingURL=p-CqGm9xxH.js.map
|