@govbr-ds/webcomponents 2.0.0-next.44 → 2.0.0-next.46
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 +104 -31
- package/dist/cjs/br-avatar.cjs.entry.js.map +1 -1
- package/dist/cjs/br-avatar.entry.cjs.js.map +1 -1
- package/dist/cjs/br-breadcrumb.cjs.entry.js +6 -9
- package/dist/cjs/br-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/br-breadcrumb.entry.cjs.js.map +1 -1
- package/dist/cjs/br-button.br-icon.entry.cjs.js.map +1 -1
- package/dist/cjs/br-button_2.cjs.entry.js +16 -3
- package/dist/cjs/br-button_2.cjs.entry.js.map +1 -1
- package/dist/cjs/br-card.cjs.entry.js +97 -0
- package/dist/cjs/br-card.cjs.entry.js.map +1 -0
- package/dist/cjs/br-card.entry.cjs.js.map +1 -0
- package/dist/cjs/br-checkbox.cjs.entry.js +8 -13
- package/dist/cjs/br-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/br-checkbox.entry.cjs.js.map +1 -1
- package/dist/cjs/br-checkgroup.cjs.entry.js +3 -5
- package/dist/cjs/br-checkgroup.cjs.entry.js.map +1 -1
- package/dist/cjs/br-checkgroup.entry.cjs.js.map +1 -1
- package/dist/cjs/br-collapse.br-list.entry.cjs.js.map +1 -1
- package/dist/cjs/br-collapse_2.cjs.entry.js +14 -22
- package/dist/cjs/br-collapse_2.cjs.entry.js.map +1 -1
- package/dist/cjs/br-divider.cjs.entry.js +2 -3
- package/dist/cjs/br-divider.cjs.entry.js.map +1 -1
- package/dist/cjs/br-divider.entry.cjs.js.map +1 -1
- package/dist/cjs/br-dropdown.cjs.entry.js +14 -21
- package/dist/cjs/br-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/br-dropdown.entry.cjs.js.map +1 -1
- package/dist/cjs/br-footer-category.cjs.entry.js +2 -2
- package/dist/cjs/br-footer-item.cjs.entry.js +1 -1
- package/dist/cjs/br-footer-legal.cjs.entry.js +1 -1
- package/dist/cjs/br-footer-logo.cjs.entry.js +1 -1
- package/dist/cjs/br-footer-logo.cjs.entry.js.map +1 -1
- package/dist/cjs/br-footer-logo.entry.cjs.js.map +1 -1
- package/dist/cjs/br-footer-social.cjs.entry.js +1 -1
- package/dist/cjs/br-footer.cjs.entry.js +1 -1
- package/dist/cjs/br-input.br-radio.entry.cjs.js.map +1 -1
- package/dist/cjs/br-input_2.cjs.entry.js +10 -17
- package/dist/cjs/br-input_2.cjs.entry.js.map +1 -1
- package/dist/cjs/br-item.cjs.entry.js +11 -10
- package/dist/cjs/br-item.cjs.entry.js.map +1 -1
- package/dist/cjs/br-item.entry.cjs.js.map +1 -1
- package/dist/cjs/br-loading.cjs.entry.js +4 -5
- package/dist/cjs/br-loading.cjs.entry.js.map +1 -1
- package/dist/cjs/br-loading.entry.cjs.js.map +1 -1
- package/dist/cjs/br-magic-button.cjs.entry.js +2 -2
- package/dist/cjs/br-magic-button.cjs.entry.js.map +1 -1
- package/dist/cjs/br-magic-button.entry.cjs.js.map +1 -1
- package/dist/cjs/br-message.cjs.entry.js +2 -2
- package/dist/cjs/br-message.cjs.entry.js.map +1 -1
- package/dist/cjs/br-message.entry.cjs.js.map +1 -1
- package/dist/cjs/br-scrim.cjs.entry.js +17 -29
- package/dist/cjs/br-scrim.cjs.entry.js.map +1 -1
- package/dist/cjs/br-scrim.entry.cjs.js.map +1 -1
- package/dist/cjs/br-select.cjs.entry.js +16 -20
- package/dist/cjs/br-select.cjs.entry.js.map +1 -1
- package/dist/cjs/br-select.entry.cjs.js.map +1 -1
- package/dist/cjs/br-step-item.cjs.entry.js +14 -27
- package/dist/cjs/br-step-item.cjs.entry.js.map +1 -1
- package/dist/cjs/br-step-item.entry.cjs.js.map +1 -1
- package/dist/cjs/br-step.cjs.entry.js +21 -32
- package/dist/cjs/br-step.cjs.entry.js.map +1 -1
- package/dist/cjs/br-step.entry.cjs.js.map +1 -1
- package/dist/cjs/br-switch.cjs.entry.js +4 -7
- package/dist/cjs/br-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/br-switch.entry.cjs.js.map +1 -1
- package/dist/cjs/br-tab-item.cjs.entry.js +2 -2
- package/dist/cjs/br-tab-item.cjs.entry.js.map +1 -1
- package/dist/cjs/br-tab-item.entry.cjs.js.map +1 -1
- package/dist/cjs/br-tab.cjs.entry.js +4 -5
- package/dist/cjs/br-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/br-tab.entry.cjs.js.map +1 -1
- package/dist/cjs/br-table-cell.cjs.entry.js +1 -1
- package/dist/cjs/br-table-header-cell.cjs.entry.js +1 -1
- package/dist/cjs/br-table-header-row.cjs.entry.js +1 -1
- package/dist/cjs/br-table-row.cjs.entry.js +1 -1
- package/dist/cjs/br-table.cjs.entry.js +1 -1
- package/dist/cjs/br-tag.cjs.entry.js +2 -2
- package/dist/cjs/br-textarea.cjs.entry.js +8 -15
- package/dist/cjs/br-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/br-textarea.entry.cjs.js.map +1 -1
- package/dist/cjs/br-tooltip.cjs.entry.js +18 -28
- package/dist/cjs/br-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/br-tooltip.entry.cjs.js.map +1 -1
- package/dist/cjs/br-upload.cjs.entry.js +2 -3
- package/dist/cjs/br-upload.cjs.entry.js.map +1 -1
- package/dist/cjs/br-upload.entry.cjs.js.map +1 -1
- package/dist/cjs/index-DNnn1o_9.js +4 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/webcomponents.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/avatar/avatar.css +1 -1
- package/dist/collection/components/avatar/avatar.js +120 -85
- package/dist/collection/components/avatar/avatar.js.map +1 -1
- package/dist/collection/components/breadcrumb/breadcrumb.css +1 -1
- package/dist/collection/components/breadcrumb/breadcrumb.js +5 -8
- package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
- package/dist/collection/components/button/button.css +1 -1
- package/dist/collection/components/button/button.js +1 -1
- package/dist/collection/components/card/card.css +1 -0
- package/dist/collection/components/card/card.js +166 -0
- package/dist/collection/components/card/card.js.map +1 -0
- package/dist/collection/components/checkbox/checkbox.js +8 -13
- package/dist/collection/components/checkbox/checkbox.js.map +1 -1
- package/dist/collection/components/checkgroup/checkgroup.js +3 -5
- package/dist/collection/components/checkgroup/checkgroup.js.map +1 -1
- package/dist/collection/components/collapse/collapse.js +11 -18
- package/dist/collection/components/collapse/collapse.js.map +1 -1
- package/dist/collection/components/divider/divider.js +2 -3
- package/dist/collection/components/divider/divider.js.map +1 -1
- package/dist/collection/components/dropdown/dropdown.js +14 -21
- package/dist/collection/components/dropdown/dropdown.js.map +1 -1
- package/dist/collection/components/footer/footer.js +1 -1
- package/dist/collection/components/footer-category/footer-category.js +2 -2
- package/dist/collection/components/footer-item/footer-item.js +1 -1
- package/dist/collection/components/footer-legal/footer-legal.js +1 -1
- package/dist/collection/components/footer-logo/footer-logo.js +1 -1
- package/dist/collection/components/footer-logo/footer-logo.js.map +1 -1
- package/dist/collection/components/footer-social/footer-social.js +1 -1
- package/dist/collection/components/icon/icon.js +42 -1
- package/dist/collection/components/icon/icon.js.map +1 -1
- package/dist/collection/components/input/input.js +4 -7
- package/dist/collection/components/input/input.js.map +1 -1
- package/dist/collection/components/item/item.js +11 -10
- package/dist/collection/components/item/item.js.map +1 -1
- package/dist/collection/components/list/list.js +3 -4
- package/dist/collection/components/list/list.js.map +1 -1
- package/dist/collection/components/loading/loading.css +1 -1
- package/dist/collection/components/loading/loading.js +3 -4
- package/dist/collection/components/loading/loading.js.map +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/magic-button/magic-button.js.map +1 -1
- package/dist/collection/components/message/message.css +1 -1
- package/dist/collection/components/message/message.js +1 -1
- package/dist/collection/components/message/message.js.map +1 -1
- package/dist/collection/components/radio/radio.js +6 -10
- package/dist/collection/components/radio/radio.js.map +1 -1
- package/dist/collection/components/scrim/scrim.js +17 -29
- package/dist/collection/components/scrim/scrim.js.map +1 -1
- package/dist/collection/components/select/select.js +16 -20
- package/dist/collection/components/select/select.js.map +1 -1
- package/dist/collection/components/step/step.js +21 -32
- package/dist/collection/components/step/step.js.map +1 -1
- package/dist/collection/components/step-item/step-item.js +14 -27
- package/dist/collection/components/step-item/step-item.js.map +1 -1
- package/dist/collection/components/switch/switch.js +4 -7
- package/dist/collection/components/switch/switch.js.map +1 -1
- package/dist/collection/components/tab/tab.css +1 -1
- package/dist/collection/components/tab/tab.js +3 -4
- package/dist/collection/components/tab/tab.js.map +1 -1
- package/dist/collection/components/tab-item/tab-item.css +1 -1
- package/dist/collection/components/tab-item/tab-item.js +1 -1
- package/dist/collection/components/table/table.js +1 -1
- package/dist/collection/components/table-cell/table-cell.js +1 -1
- package/dist/collection/components/table-header-cell/table-header-cell.js +1 -1
- package/dist/collection/components/table-header-row/table-header-row.js +1 -1
- package/dist/collection/components/table-row/table-row.js +1 -1
- package/dist/collection/components/tag/tag.js +2 -2
- package/dist/collection/components/textarea/textarea.js +8 -15
- package/dist/collection/components/textarea/textarea.js.map +1 -1
- package/dist/collection/components/tooltip/tooltip.js +8 -12
- package/dist/collection/components/tooltip/tooltip.js.map +1 -1
- package/dist/collection/components/upload/upload.js +2 -3
- package/dist/collection/components/upload/upload.js.map +1 -1
- package/dist/collection/pages/components/card/index.js +18 -0
- package/dist/collection/pages/scripts/menu.js +13 -0
- package/dist/collection/utils/floating-ui.js +10 -16
- package/dist/collection/utils/floating-ui.js.map +1 -1
- package/dist/components/br-avatar.js +117 -69
- package/dist/components/br-avatar.js.map +1 -1
- package/dist/components/br-breadcrumb.js +22 -25
- package/dist/components/br-breadcrumb.js.map +1 -1
- package/dist/components/br-button.js +3 -3
- package/dist/components/br-card.d.ts +11 -0
- package/dist/components/br-card.js +141 -0
- package/dist/components/br-card.js.map +1 -0
- package/dist/components/br-checkbox.js +1 -1
- package/dist/components/br-checkgroup.js +15 -17
- package/dist/components/br-checkgroup.js.map +1 -1
- package/dist/components/br-collapse.js +1 -1
- package/dist/components/br-divider.js +1 -1
- package/dist/components/br-dropdown.js +31 -39
- package/dist/components/br-dropdown.js.map +1 -1
- package/dist/components/br-footer-category.js +9 -9
- package/dist/components/br-footer-item.js +4 -4
- package/dist/components/br-footer-legal.js +3 -3
- package/dist/components/br-footer-logo.js +8 -7
- package/dist/components/br-footer-logo.js.map +1 -1
- package/dist/components/br-footer-social.js +5 -5
- package/dist/components/br-footer.js +15 -15
- package/dist/components/br-icon.js +1 -1
- package/dist/components/br-input.js +3 -3
- package/dist/components/br-item.js +3 -3
- package/dist/components/br-list.js +4 -4
- package/dist/components/br-loading.js +7 -6
- package/dist/components/br-loading.js.map +1 -1
- package/dist/components/br-magic-button.js +10 -9
- package/dist/components/br-magic-button.js.map +1 -1
- package/dist/components/br-message.js +12 -10
- package/dist/components/br-message.js.map +1 -1
- package/dist/components/br-radio.js +4 -4
- package/dist/components/br-scrim.js +44 -57
- package/dist/components/br-scrim.js.map +1 -1
- package/dist/components/br-select.js +41 -46
- package/dist/components/br-select.js.map +1 -1
- package/dist/components/br-step-item.js +36 -50
- package/dist/components/br-step-item.js.map +1 -1
- package/dist/components/br-step.js +30 -42
- package/dist/components/br-step.js.map +1 -1
- package/dist/components/br-switch.js +17 -21
- package/dist/components/br-switch.js.map +1 -1
- package/dist/components/br-tab-item.js +10 -10
- package/dist/components/br-tab.js +15 -16
- package/dist/components/br-tab.js.map +1 -1
- package/dist/components/br-table-cell.js +3 -3
- package/dist/components/br-table-header-cell.js +3 -3
- package/dist/components/br-table-header-row.js +3 -3
- package/dist/components/br-table-row.js +3 -3
- package/dist/components/br-table.js +6 -6
- package/dist/components/br-tag.js +8 -8
- package/dist/components/br-textarea.js +30 -37
- package/dist/components/br-textarea.js.map +1 -1
- package/dist/components/br-tooltip.js +111 -125
- package/dist/components/br-tooltip.js.map +1 -1
- package/dist/components/br-upload.js +14 -15
- package/dist/components/br-upload.js.map +1 -1
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.js +2 -0
- package/dist/components/{p-CwEkkt16.js → p-BUfNFi9N.js} +39 -47
- package/dist/components/p-BUfNFi9N.js.map +1 -0
- package/dist/components/{p-BU5QW70m.js → p-BlryBljm.js} +28 -33
- package/dist/components/p-BlryBljm.js.map +1 -0
- package/dist/components/{p-0V7YvY_S.js → p-CYtPDYp6.js} +22 -6
- package/dist/components/p-CYtPDYp6.js.map +1 -0
- package/dist/components/{p-1eKV5oxP.js → p-D0wwETCp.js} +8 -9
- package/dist/components/p-D0wwETCp.js.map +1 -0
- package/dist/components/{p-B3u7t9TB.js → p-DZhiQXGc.js} +13 -18
- package/dist/components/p-DZhiQXGc.js.map +1 -0
- package/dist/components/{p-DqQ_qkzV.js → p-DhONBlJ-.js} +6 -7
- package/dist/components/p-DhONBlJ-.js.map +1 -0
- package/dist/components/{p-DtU3ZpAC.js → p-DvuyuK9Y.js} +20 -26
- package/dist/components/{p-DtU3ZpAC.js.map → p-DvuyuK9Y.js.map} +1 -1
- package/dist/components/{p-DoUCJxLj.js → p-ssSt5UuQ.js} +6 -6
- package/dist/components/{p-B-uKqjsz.js → p-y6TZslWo.js} +21 -26
- package/dist/components/p-y6TZslWo.js.map +1 -0
- package/dist/custom-docs/output-docs.js +3 -5
- package/dist/custom-docs/output-docs.js.map +1 -1
- package/dist/custom-docs/path.js +1 -2
- package/dist/custom-docs/path.js.map +1 -1
- package/dist/custom-elements.json +341 -70
- package/dist/esm/br-avatar.entry.js +104 -31
- package/dist/esm/br-avatar.entry.js.map +1 -1
- package/dist/esm/br-breadcrumb.entry.js +6 -9
- package/dist/esm/br-breadcrumb.entry.js.map +1 -1
- package/dist/esm/br-button.br-icon.entry.js.map +1 -1
- package/dist/esm/br-button_2.entry.js +16 -3
- package/dist/esm/br-button_2.entry.js.map +1 -1
- package/dist/esm/br-card.entry.js +95 -0
- package/dist/esm/br-card.entry.js.map +1 -0
- package/dist/esm/br-checkbox.entry.js +8 -13
- package/dist/esm/br-checkbox.entry.js.map +1 -1
- package/dist/esm/br-checkgroup.entry.js +3 -5
- package/dist/esm/br-checkgroup.entry.js.map +1 -1
- package/dist/esm/br-collapse.br-list.entry.js.map +1 -1
- package/dist/esm/br-collapse_2.entry.js +14 -22
- package/dist/esm/br-collapse_2.entry.js.map +1 -1
- package/dist/esm/br-divider.entry.js +2 -3
- package/dist/esm/br-divider.entry.js.map +1 -1
- package/dist/esm/br-dropdown.entry.js +14 -21
- package/dist/esm/br-dropdown.entry.js.map +1 -1
- package/dist/esm/br-footer-category.entry.js +2 -2
- package/dist/esm/br-footer-item.entry.js +1 -1
- package/dist/esm/br-footer-legal.entry.js +1 -1
- package/dist/esm/br-footer-logo.entry.js +1 -1
- package/dist/esm/br-footer-logo.entry.js.map +1 -1
- package/dist/esm/br-footer-social.entry.js +1 -1
- package/dist/esm/br-footer.entry.js +1 -1
- package/dist/esm/br-input.br-radio.entry.js.map +1 -1
- package/dist/esm/br-input_2.entry.js +10 -17
- package/dist/esm/br-input_2.entry.js.map +1 -1
- package/dist/esm/br-item.entry.js +11 -10
- package/dist/esm/br-item.entry.js.map +1 -1
- package/dist/esm/br-loading.entry.js +4 -5
- package/dist/esm/br-loading.entry.js.map +1 -1
- package/dist/esm/br-magic-button.entry.js +2 -2
- package/dist/esm/br-magic-button.entry.js.map +1 -1
- package/dist/esm/br-message.entry.js +2 -2
- package/dist/esm/br-message.entry.js.map +1 -1
- package/dist/esm/br-scrim.entry.js +17 -29
- package/dist/esm/br-scrim.entry.js.map +1 -1
- package/dist/esm/br-select.entry.js +16 -20
- package/dist/esm/br-select.entry.js.map +1 -1
- package/dist/esm/br-step-item.entry.js +14 -27
- package/dist/esm/br-step-item.entry.js.map +1 -1
- package/dist/esm/br-step.entry.js +21 -32
- package/dist/esm/br-step.entry.js.map +1 -1
- package/dist/esm/br-switch.entry.js +4 -7
- package/dist/esm/br-switch.entry.js.map +1 -1
- package/dist/esm/br-tab-item.entry.js +2 -2
- package/dist/esm/br-tab-item.entry.js.map +1 -1
- package/dist/esm/br-tab.entry.js +4 -5
- package/dist/esm/br-tab.entry.js.map +1 -1
- package/dist/esm/br-table-cell.entry.js +1 -1
- package/dist/esm/br-table-header-cell.entry.js +1 -1
- package/dist/esm/br-table-header-row.entry.js +1 -1
- package/dist/esm/br-table-row.entry.js +1 -1
- package/dist/esm/br-table.entry.js +1 -1
- package/dist/esm/br-tag.entry.js +2 -2
- package/dist/esm/br-textarea.entry.js +8 -15
- package/dist/esm/br-textarea.entry.js.map +1 -1
- package/dist/esm/br-tooltip.entry.js +18 -28
- package/dist/esm/br-tooltip.entry.js.map +1 -1
- package/dist/esm/br-upload.entry.js +2 -3
- package/dist/esm/br-upload.entry.js.map +1 -1
- package/dist/esm/index-DmA0bHaX.js +4 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/webcomponents.js +1 -1
- package/dist/hydrate/index.js +428 -350
- package/dist/hydrate/index.mjs +428 -350
- package/dist/types/components/avatar/avatar.d.ts +63 -27
- package/dist/types/components/card/card.d.ts +44 -0
- package/dist/types/components/icon/icon.d.ts +35 -0
- package/dist/types/components.d.ts +87 -32
- package/dist/webcomponents/br-avatar.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-breadcrumb.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-button.br-icon.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-card.entry.esm.js.map +1 -0
- package/dist/webcomponents/br-checkbox.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-checkgroup.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-collapse.br-list.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-divider.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-dropdown.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-footer-logo.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-input.br-radio.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-item.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-loading.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-magic-button.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-message.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-scrim.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-select.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-step-item.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-step.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-switch.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-tab-item.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-tab.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-textarea.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-tooltip.entry.esm.js.map +1 -1
- package/dist/webcomponents/br-upload.entry.esm.js.map +1 -1
- package/dist/webcomponents/{p-b16a7896.entry.js → p-096b0875.entry.js} +28 -40
- package/dist/webcomponents/{p-b16a7896.entry.js.map → p-096b0875.entry.js.map} +1 -1
- package/dist/webcomponents/{p-8b4d5bf1.entry.js → p-0b45efc3.entry.js} +7 -5
- package/dist/webcomponents/p-0b45efc3.entry.js.map +1 -0
- package/dist/webcomponents/{p-64545afe.entry.js → p-0fe0dcc1.entry.js} +5 -5
- package/dist/webcomponents/{p-744eb116.entry.js → p-16f8e426.entry.js} +15 -15
- package/dist/webcomponents/{p-67e47dd0.entry.js → p-1d018f30.entry.js} +4 -4
- package/dist/webcomponents/{p-d7a4225f.entry.js → p-22682cde.entry.js} +19 -24
- package/dist/webcomponents/p-22682cde.entry.js.map +1 -0
- package/dist/webcomponents/{p-c966ab17.entry.js → p-24f6adad.entry.js} +28 -35
- package/dist/webcomponents/p-24f6adad.entry.js.map +1 -0
- package/dist/webcomponents/{p-4f41615a.entry.js → p-2a407917.entry.js} +7 -7
- package/dist/webcomponents/{p-d7265a28.entry.js → p-3615200c.entry.js} +11 -10
- package/dist/webcomponents/p-3615200c.entry.js.map +1 -0
- package/dist/webcomponents/{p-0d46ca85.entry.js → p-46f1f54c.entry.js} +25 -30
- package/dist/webcomponents/p-46f1f54c.entry.js.map +1 -0
- package/dist/webcomponents/{p-07f5518d.entry.js → p-4b3042fb.entry.js} +44 -53
- package/dist/webcomponents/p-4b3042fb.entry.js.map +1 -0
- package/dist/webcomponents/{p-db84202e.entry.js → p-502c9692.entry.js} +4 -4
- package/dist/webcomponents/{p-6fcaf560.entry.js → p-62ac038c.entry.js} +44 -57
- package/dist/webcomponents/p-62ac038c.entry.js.map +1 -0
- package/dist/webcomponents/{p-59f07375.entry.js → p-70d4da25.entry.js} +10 -10
- package/dist/webcomponents/{p-b7c58efc.entry.js → p-761f7798.entry.js} +7 -7
- package/dist/webcomponents/{p-df308ecd.entry.js → p-83df407a.entry.js} +15 -17
- package/dist/webcomponents/p-83df407a.entry.js.map +1 -0
- package/dist/webcomponents/{p-25addf8c.entry.js → p-88bfa633.entry.js} +4 -4
- package/dist/webcomponents/{p-08702123.entry.js → p-8ab5744a.entry.js} +18 -24
- package/dist/webcomponents/{p-08702123.entry.js.map → p-8ab5744a.entry.js.map} +1 -1
- package/dist/webcomponents/{p-8dba2e0e.entry.js → p-8b15dfc8.entry.js} +114 -128
- package/dist/webcomponents/p-8b15dfc8.entry.js.map +1 -0
- package/dist/webcomponents/{p-02d3c9c1.entry.js → p-8b24abe6.entry.js} +40 -50
- package/dist/webcomponents/p-8b24abe6.entry.js.map +1 -0
- package/dist/webcomponents/{p-2190e7a9.entry.js → p-90abf633.entry.js} +5 -6
- package/dist/webcomponents/p-90abf633.entry.js.map +1 -0
- package/dist/webcomponents/{p-1457ba7e.entry.js → p-94afd91b.entry.js} +10 -9
- package/dist/webcomponents/p-94afd91b.entry.js.map +1 -0
- package/dist/webcomponents/{p-fb3e3276.entry.js → p-9ed0a45f.entry.js} +9 -8
- package/dist/webcomponents/p-9ed0a45f.entry.js.map +1 -0
- package/dist/webcomponents/{p-a9af8d3e.entry.js → p-a802ca08.entry.js} +13 -14
- package/dist/webcomponents/p-a802ca08.entry.js.map +1 -0
- package/dist/webcomponents/{p-e5b33b7e.entry.js → p-abf81334.entry.js} +15 -19
- package/dist/webcomponents/{p-e5b33b7e.entry.js.map → p-abf81334.entry.js.map} +1 -1
- package/dist/webcomponents/{p-a06b7d9d.entry.js → p-ac4ce40c.entry.js} +30 -44
- package/dist/webcomponents/{p-a06b7d9d.entry.js.map → p-ac4ce40c.entry.js.map} +1 -1
- package/dist/webcomponents/{p-f7a210a8.entry.js → p-b565e6e5.entry.js} +4 -4
- package/dist/webcomponents/{p-33ab56d5.entry.js → p-b600b95e.entry.js} +18 -21
- package/dist/webcomponents/p-b600b95e.entry.js.map +1 -0
- package/dist/webcomponents/{p-41443414.entry.js → p-bbd38dd7.entry.js} +4 -4
- package/dist/webcomponents/{p-cbaac66c.entry.js → p-cac6afba.entry.js} +29 -37
- package/dist/webcomponents/{p-cbaac66c.entry.js.map → p-cac6afba.entry.js.map} +1 -1
- package/dist/webcomponents/{p-ac0f37e9.entry.js → p-d549a87b.entry.js} +4 -4
- package/dist/webcomponents/{p-51cc97aa.entry.js → p-deb094fb.entry.js} +4 -4
- package/dist/webcomponents/{p-3350d161.entry.js → p-df6e707a.entry.js} +116 -66
- package/dist/webcomponents/p-df6e707a.entry.js.map +1 -0
- package/dist/webcomponents/p-ee9fe4a2.entry.js +119 -0
- package/dist/webcomponents/p-ee9fe4a2.entry.js.map +1 -0
- package/dist/webcomponents/{p-238a6399.entry.js → p-f1738ae0.entry.js} +16 -17
- package/dist/webcomponents/p-f1738ae0.entry.js.map +1 -0
- package/dist/webcomponents/{p-9e1743b6.entry.js → p-fa0aeb0f.entry.js} +23 -8
- package/dist/webcomponents/p-fa0aeb0f.entry.js.map +1 -0
- package/dist/webcomponents/webcomponents.esm.js +15 -15
- package/dist/webcomponents.html-custom-data.json +15 -6
- package/package.json +1 -1
- package/dist/cjs/tslib.es6-CF44W9Bn.js +0 -42
- package/dist/cjs/tslib.es6-CF44W9Bn.js.map +0 -1
- package/dist/components/p-0V7YvY_S.js.map +0 -1
- package/dist/components/p-1eKV5oxP.js.map +0 -1
- package/dist/components/p-B-uKqjsz.js.map +0 -1
- package/dist/components/p-B3u7t9TB.js.map +0 -1
- package/dist/components/p-BU5QW70m.js.map +0 -1
- package/dist/components/p-CwEkkt16.js.map +0 -1
- package/dist/components/p-DIPMDb5E.js +0 -55
- package/dist/components/p-DIPMDb5E.js.map +0 -1
- package/dist/components/p-DqQ_qkzV.js.map +0 -1
- package/dist/esm/tslib.es6-DIPMDb5E.js +0 -40
- package/dist/esm/tslib.es6-DIPMDb5E.js.map +0 -1
- package/dist/webcomponents/p-02d3c9c1.entry.js.map +0 -1
- package/dist/webcomponents/p-07f5518d.entry.js.map +0 -1
- package/dist/webcomponents/p-0d46ca85.entry.js.map +0 -1
- package/dist/webcomponents/p-1457ba7e.entry.js.map +0 -1
- package/dist/webcomponents/p-2190e7a9.entry.js.map +0 -1
- package/dist/webcomponents/p-238a6399.entry.js.map +0 -1
- package/dist/webcomponents/p-3350d161.entry.js.map +0 -1
- package/dist/webcomponents/p-33ab56d5.entry.js.map +0 -1
- package/dist/webcomponents/p-6fcaf560.entry.js.map +0 -1
- package/dist/webcomponents/p-8b4d5bf1.entry.js.map +0 -1
- package/dist/webcomponents/p-8dba2e0e.entry.js.map +0 -1
- package/dist/webcomponents/p-9e1743b6.entry.js.map +0 -1
- package/dist/webcomponents/p-DIPMDb5E.js +0 -55
- package/dist/webcomponents/p-DIPMDb5E.js.map +0 -1
- package/dist/webcomponents/p-a9af8d3e.entry.js.map +0 -1
- package/dist/webcomponents/p-c966ab17.entry.js.map +0 -1
- package/dist/webcomponents/p-d7265a28.entry.js.map +0 -1
- package/dist/webcomponents/p-d7a4225f.entry.js.map +0 -1
- package/dist/webcomponents/p-df308ecd.entry.js.map +0 -1
- package/dist/webcomponents/p-fb3e3276.entry.js.map +0 -1
- /package/dist/components/{p-DoUCJxLj.js.map → p-ssSt5UuQ.js.map} +0 -0
- /package/dist/webcomponents/{p-64545afe.entry.js.map → p-0fe0dcc1.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-744eb116.entry.js.map → p-16f8e426.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-67e47dd0.entry.js.map → p-1d018f30.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-4f41615a.entry.js.map → p-2a407917.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-db84202e.entry.js.map → p-502c9692.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-59f07375.entry.js.map → p-70d4da25.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-b7c58efc.entry.js.map → p-761f7798.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-25addf8c.entry.js.map → p-88bfa633.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-f7a210a8.entry.js.map → p-b565e6e5.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-41443414.entry.js.map → p-bbd38dd7.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-ac0f37e9.entry.js.map → p-d549a87b.entry.js.map} +0 -0
- /package/dist/webcomponents/{p-51cc97aa.entry.js.map → p-deb094fb.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"br-checkgroup.entry.cjs.js","mappings":";;;;;;;;AAAA,MAAM,aAAa,GAAG,4i9DAA4i9D;;MCerj9D,UAAU,GAAA,MAAA;AANvB,IAAA,WAAA,CAAA,OAAA,EAAA;;;;;;;;;AAoBE;;AAEG;AACsB,QAAA,IAAgB,CAAA,gBAAA,GAAW,oBAAoB;AAExE;;AAEG;AACsB,QAAA,IAAmB,CAAA,mBAAA,GAAW,iBAAiB;AAExE;;;;AAIG;AACsB,QAAA,IAAa,CAAA,aAAA,GAAY,KAAK;AAEvD;;;AAGG;AAC+B,QAAA,IAAA,CAAA,QAAQ,GAAW,iBAAiB,YAAY,EAAE,EAAE;AAEtF;;;AAGG;AACM,QAAA,IAAO,CAAA,OAAA,GAAY,KAAK;AAEjC;;AAEG;AACM,QAAA,IAAe,CAAA,eAAA,GAAY,KAAK;AAgCxB,QAAA,IAAuB,CAAA,uBAAA,GAAG,MAAK
|
|
1
|
+
{"file":"br-checkgroup.entry.cjs.js","mappings":"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","names":["h","Host"],"sources":["../../packages/webcomponents/src/components/checkgroup/checkgroup.scss?tag=br-checkgroup&encapsulation=shadow","../../packages/webcomponents/src/components/checkgroup/checkgroup.tsx"],"sourcesContent":["@import \"~@govbr-ds/core/src/components/checkbox/checkbox\";\n\n:host {\n display: block;\n}\n","import { AttachInternals, Component, Element, h, Host, Listen, Prop, State } from '@stencil/core'\n\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/utilitarios/js/checkgroup?tab=desenvolvedor).\n *\n * @slot default - Slot para adicionar os checkboxes que serão controlados pelo checkgroup.\n */\n@Component({\n tag: 'br-checkgroup',\n styleUrl: 'checkgroup.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Checkgroup {\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: HTMLBrCheckgroupElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Texto descritivo do grupo.\n */\n @Prop() label: string\n\n /**\n * Define o texto do label quando o checkbox está marcado.\n */\n @Prop({ reflect: true }) labelSelecionado: string = 'Desselecionar tudo'\n\n /**\n * Define o texto do label quando o checkbox está desmarcado.\n */\n @Prop({ reflect: true }) labelDesselecionado: string = 'Selecionar tudo'\n\n /**\n * Define o estado intermediário do checkbox.\n * Se definido como verdadeiro, o checkbox exibirá um estado intermediário, que é um estado visual que indica que a opção está parcialmente selecionada.\n * Este estado é útil quando o checkbox faz parte de um grupo com seleção parcial.\n */\n @Prop({ reflect: true }) indeterminate: boolean = false\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-checkgroup-${checkgroupId++}`\n\n /**\n * Define o estado de seleção do checkbox.\n * Se definido como verdadeiro, o checkbox estará marcado. Caso contrário, estará desmarcado.\n */\n @State() checked: boolean = false\n\n /**\n * Indica se o grupo de checkboxes está indeterminado\n */\n @State() isIndeterminate: boolean = false\n\n componentWillLoad() {\n this.isIndeterminate = this.el.hasAttribute('indeterminate')\n\n this.updateGroupState()\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-checkgroup': true,\n }\n }\n\n @Listen('checkedChange', {\n target: 'document',\n })\n handleChange(event: Event) {\n const target = event.target as HTMLBrCheckboxElement\n\n if (this.isParentCheckbox(target)) {\n this.checked = !this.checked\n this.handleAllCheckboxChange()\n } else {\n this.updateGroupState()\n }\n }\n\n private isParentCheckbox(target: HTMLBrCheckboxElement): boolean {\n return target === this.el.shadowRoot?.querySelector('br-checkbox')\n }\n\n private readonly handleAllCheckboxChange = () => {\n const checkListAll = Array.from(this.el.querySelectorAll('br-checkbox'))\n\n checkListAll.forEach((item) => {\n item.checked = this.checked\n item.indeterminate = false\n })\n\n const parentCheckbox = this.el.shadowRoot?.querySelector('br-checkbox')\n if (parentCheckbox !== null) {\n parentCheckbox.indeterminate = false\n }\n }\n\n private updateGroupState() {\n const checkListAll = Array.from(this.el.querySelectorAll('br-checkbox'))\n const allChecked = checkListAll.every((item) => item.checked)\n const noneChecked = checkListAll.every((item) => !item.checked)\n\n if (allChecked) {\n this.checked = true\n this.isIndeterminate = false\n } else if (noneChecked) {\n this.checked = false\n this.isIndeterminate = false\n } else {\n this.checked = false\n this.isIndeterminate = true\n }\n }\n\n render() {\n return (\n <Host>\n <div class={this.getCssClassMap()} style={{ width: '100%' }}>\n {this.label && <label>{this.label}</label>}\n <div class=\"mb-1\">\n <div class=\"checkgroup-example\">\n <br-checkbox\n name={`checkgroup-${this.customId}`}\n checked={this.checked}\n indeterminate={this.isIndeterminate}\n label={this.checked ? this.labelDesselecionado : this.labelSelecionado}\n aria-label={this.checked ? this.labelDesselecionado : this.labelSelecionado}\n onCheckedChange={this.handleChange.bind(this)}\n ></br-checkbox>\n </div>\n </div>\n <div class=\"mb-1 ml-2\">\n <slot></slot>\n </div>\n </div>\n </Host>\n )\n }\n}\n\nlet checkgroupId = 0\n"],"version":3}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"br-checkgroup.entry.cjs.js","sources":["../../packages/webcomponents/src/components/checkgroup/checkgroup.scss?tag=br-checkgroup&encapsulation=shadow","../../packages/webcomponents/src/components/checkgroup/checkgroup.tsx"],"sourcesContent":["@import \"~@govbr-ds/core/src/components/checkbox/checkbox\";\n\n:host {\n display: block;\n}\n","import { AttachInternals, Component, Element, h, Host, Listen, Prop, State } from '@stencil/core'\n\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/utilitarios/js/checkgroup?tab=desenvolvedor).\n *\n * @slot default - Slot para adicionar os checkboxes que serão controlados pelo checkgroup.\n */\n@Component({\n tag: 'br-checkgroup',\n styleUrl: 'checkgroup.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Checkgroup {\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: HTMLBrCheckgroupElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Texto descritivo do grupo.\n */\n @Prop() label: string\n\n /**\n * Define o texto do label quando o checkbox está marcado.\n */\n @Prop({ reflect: true }) labelSelecionado: string = 'Desselecionar tudo'\n\n /**\n * Define o texto do label quando o checkbox está desmarcado.\n */\n @Prop({ reflect: true }) labelDesselecionado: string = 'Selecionar tudo'\n\n /**\n * Define o estado intermediário do checkbox.\n * Se definido como verdadeiro, o checkbox exibirá um estado intermediário, que é um estado visual que indica que a opção está parcialmente selecionada.\n * Este estado é útil quando o checkbox faz parte de um grupo com seleção parcial.\n */\n @Prop({ reflect: true }) indeterminate: boolean = false\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-checkgroup-${checkgroupId++}`\n\n /**\n * Define o estado de seleção do checkbox.\n * Se definido como verdadeiro, o checkbox estará marcado. Caso contrário, estará desmarcado.\n */\n @State() checked: boolean = false\n\n /**\n * Indica se o grupo de checkboxes está indeterminado\n */\n @State() isIndeterminate: boolean = false\n\n componentWillLoad() {\n this.isIndeterminate = this.el.hasAttribute('indeterminate')\n\n this.updateGroupState()\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-checkgroup': true,\n }\n }\n\n @Listen('checkedChange', {\n target: 'document',\n })\n handleChange(event: Event) {\n const target = event.target as HTMLBrCheckboxElement\n\n if (this.isParentCheckbox(target)) {\n this.checked = !this.checked\n this.handleAllCheckboxChange()\n } else {\n this.updateGroupState()\n }\n }\n\n private isParentCheckbox(target: HTMLBrCheckboxElement): boolean {\n return target === this.el.shadowRoot?.querySelector('br-checkbox')\n }\n\n private readonly handleAllCheckboxChange = () => {\n const checkListAll = Array.from(this.el.querySelectorAll('br-checkbox'))\n\n checkListAll.forEach((item) => {\n item.checked = this.checked\n item.indeterminate = false\n })\n\n const parentCheckbox = this.el.shadowRoot?.querySelector('br-checkbox')\n if (parentCheckbox !== null) {\n parentCheckbox.indeterminate = false\n }\n }\n\n private updateGroupState() {\n const checkListAll = Array.from(this.el.querySelectorAll('br-checkbox'))\n const allChecked = checkListAll.every((item) => item.checked)\n const noneChecked = checkListAll.every((item) => !item.checked)\n\n if (allChecked) {\n this.checked = true\n this.isIndeterminate = false\n } else if (noneChecked) {\n this.checked = false\n this.isIndeterminate = false\n } else {\n this.checked = false\n this.isIndeterminate = true\n }\n }\n\n render() {\n return (\n <Host>\n <div class={this.getCssClassMap()} style={{ width: '100%' }}>\n {this.label && <label>{this.label}</label>}\n <div class=\"mb-1\">\n <div class=\"checkgroup-example\">\n <br-checkbox\n name={`checkgroup-${this.customId}`}\n checked={this.checked}\n indeterminate={this.isIndeterminate}\n label={this.checked ? this.labelDesselecionado : this.labelSelecionado}\n aria-label={this.checked ? this.labelDesselecionado : this.labelSelecionado}\n onCheckedChange={this.handleChange.bind(this)}\n ></br-checkbox>\n </div>\n </div>\n <div class=\"mb-1 ml-2\">\n <slot></slot>\n </div>\n </div>\n </Host>\n )\n }\n}\n\nlet checkgroupId = 0\n"],"names":["h","Host"],"mappings":";;;;;;;;AAAA,MAAM,aAAa,GAAG,4i9DAA4i9D;;MCerj9D,UAAU,GAAA,MAAA;AANvB,IAAA,WAAA,CAAA,OAAA,EAAA;;;;;;;;;AAoBE;;AAEG;AACsB,QAAA,IAAgB,CAAA,gBAAA,GAAW,oBAAoB;AAExE;;AAEG;AACsB,QAAA,IAAmB,CAAA,mBAAA,GAAW,iBAAiB;AAExE;;;;AAIG;AACsB,QAAA,IAAa,CAAA,aAAA,GAAY,KAAK;AAEvD;;;AAGG;AAC+B,QAAA,IAAA,CAAA,QAAQ,GAAW,iBAAiB,YAAY,EAAE,EAAE;AAEtF;;;AAGG;AACM,QAAA,IAAO,CAAA,OAAA,GAAY,KAAK;AAEjC;;AAEG;AACM,QAAA,IAAe,CAAA,eAAA,GAAY,KAAK;AAgCxB,QAAA,IAAuB,CAAA,uBAAA,GAAG,MAAK
|
|
1
|
+
{"version":3,"file":"br-checkgroup.entry.cjs.js","sources":["../../packages/webcomponents/src/components/checkgroup/checkgroup.scss?tag=br-checkgroup&encapsulation=shadow","../../packages/webcomponents/src/components/checkgroup/checkgroup.tsx"],"sourcesContent":["@import \"~@govbr-ds/core/src/components/checkbox/checkbox\";\n\n:host {\n display: block;\n}\n","import { AttachInternals, Component, Element, h, Host, Listen, Prop, State } from '@stencil/core'\n\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/utilitarios/js/checkgroup?tab=desenvolvedor).\n *\n * @slot default - Slot para adicionar os checkboxes que serão controlados pelo checkgroup.\n */\n@Component({\n tag: 'br-checkgroup',\n styleUrl: 'checkgroup.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Checkgroup {\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: HTMLBrCheckgroupElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Texto descritivo do grupo.\n */\n @Prop() label: string\n\n /**\n * Define o texto do label quando o checkbox está marcado.\n */\n @Prop({ reflect: true }) labelSelecionado: string = 'Desselecionar tudo'\n\n /**\n * Define o texto do label quando o checkbox está desmarcado.\n */\n @Prop({ reflect: true }) labelDesselecionado: string = 'Selecionar tudo'\n\n /**\n * Define o estado intermediário do checkbox.\n * Se definido como verdadeiro, o checkbox exibirá um estado intermediário, que é um estado visual que indica que a opção está parcialmente selecionada.\n * Este estado é útil quando o checkbox faz parte de um grupo com seleção parcial.\n */\n @Prop({ reflect: true }) indeterminate: boolean = false\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-checkgroup-${checkgroupId++}`\n\n /**\n * Define o estado de seleção do checkbox.\n * Se definido como verdadeiro, o checkbox estará marcado. Caso contrário, estará desmarcado.\n */\n @State() checked: boolean = false\n\n /**\n * Indica se o grupo de checkboxes está indeterminado\n */\n @State() isIndeterminate: boolean = false\n\n componentWillLoad() {\n this.isIndeterminate = this.el.hasAttribute('indeterminate')\n\n this.updateGroupState()\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-checkgroup': true,\n }\n }\n\n @Listen('checkedChange', {\n target: 'document',\n })\n handleChange(event: Event) {\n const target = event.target as HTMLBrCheckboxElement\n\n if (this.isParentCheckbox(target)) {\n this.checked = !this.checked\n this.handleAllCheckboxChange()\n } else {\n this.updateGroupState()\n }\n }\n\n private isParentCheckbox(target: HTMLBrCheckboxElement): boolean {\n return target === this.el.shadowRoot?.querySelector('br-checkbox')\n }\n\n private readonly handleAllCheckboxChange = () => {\n const checkListAll = Array.from(this.el.querySelectorAll('br-checkbox'))\n\n checkListAll.forEach((item) => {\n item.checked = this.checked\n item.indeterminate = false\n })\n\n const parentCheckbox = this.el.shadowRoot?.querySelector('br-checkbox')\n if (parentCheckbox !== null) {\n parentCheckbox.indeterminate = false\n }\n }\n\n private updateGroupState() {\n const checkListAll = Array.from(this.el.querySelectorAll('br-checkbox'))\n const allChecked = checkListAll.every((item) => item.checked)\n const noneChecked = checkListAll.every((item) => !item.checked)\n\n if (allChecked) {\n this.checked = true\n this.isIndeterminate = false\n } else if (noneChecked) {\n this.checked = false\n this.isIndeterminate = false\n } else {\n this.checked = false\n this.isIndeterminate = true\n }\n }\n\n render() {\n return (\n <Host>\n <div class={this.getCssClassMap()} style={{ width: '100%' }}>\n {this.label && <label>{this.label}</label>}\n <div class=\"mb-1\">\n <div class=\"checkgroup-example\">\n <br-checkbox\n name={`checkgroup-${this.customId}`}\n checked={this.checked}\n indeterminate={this.isIndeterminate}\n label={this.checked ? this.labelDesselecionado : this.labelSelecionado}\n aria-label={this.checked ? this.labelDesselecionado : this.labelSelecionado}\n onCheckedChange={this.handleChange.bind(this)}\n ></br-checkbox>\n </div>\n </div>\n <div class=\"mb-1 ml-2\">\n <slot></slot>\n </div>\n </div>\n </Host>\n )\n }\n}\n\nlet checkgroupId = 0\n"],"names":["h","Host"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"br-collapse.br-list.entry.cjs.js","sources":["../../packages/webcomponents/src/components/collapse/collapse.scss?tag=br-collapse&encapsulation=shadow","../../packages/webcomponents/src/components/collapse/collapse.tsx","../../packages/webcomponents/src/components/list/list.scss?tag=br-list&encapsulation=shadow","../../packages/webcomponents/src/components/list/list.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(rgba(var(--color-rgb), var(--hover)), rgba(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@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() brDidOpen: EventEmitter<{ id: string; accordionGroup: string }>\n\n /**\n * Evento emitido ao recolher.\n */\n @Event() 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 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 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 * 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","@import \"~@govbr-ds/core/src/components/list/list\";\n@import \"~@govbr-ds/core/src/components/divider/divider\";\n\n:host {\n display: block;\n\n .br-list.horizontal ::slotted(br-item) {\n flex: 1;\n height: auto;\n min-height: 56px;\n width: auto;\n }\n}\n","import { AttachInternals, Component, Element, h, Host, Prop } from '@stencil/core'\n\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/list?tab=designer).\n *\n * @slot default - Slot padrão para inclusão dos itens da lista.\n * @slot header - Slot nomeado para inclusão de ações relacionadas ao cabeçalho do list (uso de botões por exemplo).\n */\n@Component({\n tag: 'br-list',\n styleUrl: 'list.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class List {\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: HTMLBrListElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Define o cabeçalho para a lista.\n */\n @Prop({ reflect: true }) readonly header: string = null\n\n /**\n * Indica se a lista será horizontal. Por padrão, a lista é vertical.\n */\n @Prop({ reflect: true }) readonly isHorizontal: boolean = false\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-list-${listId++}`\n\n /**\n * Indica que o divider para o título da lista estará oculto.\n */\n @Prop({ reflect: true }) readonly hideHeaderDivider: boolean = false\n\n /**\n * Indica se a lista possui o comportamento de collapse.\n */\n @Prop({ reflect: true }) readonly collapse: boolean = false\n\n /**\n * Indica se a lista possui o comportamento de accordion.\n * O valor da propriedade define o grupo, ou seja, o accordion é aplicado a todas as listas que possuem o mesmo valor para esta propriedade.\n */\n @Prop({ reflect: true }) readonly accordion: string = null\n\n /**\n * Método do ciclo de vida do componente, que é chamado uma vez após o componente começar a ser renderizado no DOM.\n */\n componentDidLoad() {\n if (this.isHorizontal) {\n const slotItems = Array.from(this.el.querySelectorAll('br-item'))\n\n slotItems.forEach((item) => {\n const nextElement = item.nextElementSibling\n if (nextElement?.classList.contains('br-divider')) {\n const divider = nextElement as HTMLElement\n divider.style.borderWidth = '0 1px 0 0'\n divider.style.width = '1px'\n }\n })\n }\n\n // adicionar role=\"listitem\" para os itens dentro do slot\n const items = Array.from(this.el.querySelectorAll('br-item'))\n items.forEach((item) => {\n item.setAttribute('role', 'listitem')\n })\n }\n\n /**\n * Método que retorna as classes CSS do componente\n * @returns Objeto com as classes CSS do componente\n */\n private getCssClassMap(): CssClassMap {\n return {\n 'br-list': true,\n horizontal: this.isHorizontal,\n }\n }\n\n /**\n * Verifica se o slot possui conteúdo.\n * @param slotName Nome do slot a ser verificado.\n * @returns true se o slot possui conteúdo, false caso contrário.\n */\n private hasSlotContent(slotName: string): boolean {\n const directChildren = Array.from(this.el.querySelectorAll(`[slot=\"${slotName}\"]`)).filter(\n (child) => child.parentElement === this.el\n )\n return Boolean(directChildren.length)\n }\n\n /**\n * Renderiza o cabeçalho da lista.\n * @returns JSX do cabeçalho da lista\n */\n\n private readonly renderHeader = () => {\n if (this.header?.length > 0 || this.hasSlotContent('header')) {\n return (\n <div\n class={!this.hasSlotContent('header') ? 'header' : null}\n slot={this.collapse || Boolean(this.accordion) ? 'trigger' : null}\n >\n <slot name=\"header\">{!this.hasSlotContent('header') ? <div class=\"title\">{this.header}</div> : null}</slot>\n </div>\n )\n }\n return null\n }\n\n /**\n * Renderiza o divider do cabeçalho.\n * @returns JSX do divider\n */\n private renderDivider() {\n if ((this.header || this.hasSlotContent('header')) && !this.hideHeaderDivider) {\n return <div class=\"br-divider\"></div>\n }\n return null\n }\n\n /**\n * Renderiza o corpo da lista.\n * @returns JSX do corpo da lista.\n */\n private renderListBody() {\n return [this.renderHeader(), this.renderDivider(), <slot></slot>]\n }\n\n /**\n * Renderiza o componente.\n * @returns JSX do componente\n */\n render() {\n return (\n <Host role=\"list\">\n <div class={this.getCssClassMap()} id={this.customId}>\n {Boolean(this.accordion) || this.collapse ? (\n <br-collapse accordion-group={this.accordion || null}>{this.renderListBody()}</br-collapse>\n ) : (\n this.renderListBody()\n )}\n </div>\n </Host>\n )\n }\n}\n\nlet listId = 0\n"],"names":["Helpers","h","Host"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"br-collapse.br-list.entry.cjs.js","sources":["../../packages/webcomponents/src/components/collapse/collapse.scss?tag=br-collapse&encapsulation=shadow","../../packages/webcomponents/src/components/collapse/collapse.tsx","../../packages/webcomponents/src/components/list/list.scss?tag=br-list&encapsulation=shadow","../../packages/webcomponents/src/components/list/list.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(rgba(var(--color-rgb), var(--hover)), rgba(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@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() brDidOpen: EventEmitter<{ id: string; accordionGroup: string }>\n\n /**\n * Evento emitido ao recolher.\n */\n @Event() 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 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 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 * 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","@import \"~@govbr-ds/core/src/components/list/list\";\n@import \"~@govbr-ds/core/src/components/divider/divider\";\n\n:host {\n display: block;\n\n .br-list.horizontal ::slotted(br-item) {\n flex: 1;\n height: auto;\n min-height: 56px;\n width: auto;\n }\n}\n","import { AttachInternals, Component, Element, h, Host, Prop } from '@stencil/core'\n\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/list?tab=designer).\n *\n * @slot default - Slot padrão para inclusão dos itens da lista.\n * @slot header - Slot nomeado para inclusão de ações relacionadas ao cabeçalho do list (uso de botões por exemplo).\n */\n@Component({\n tag: 'br-list',\n styleUrl: 'list.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class List {\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: HTMLBrListElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Define o cabeçalho para a lista.\n */\n @Prop({ reflect: true }) readonly header: string = null\n\n /**\n * Indica se a lista será horizontal. Por padrão, a lista é vertical.\n */\n @Prop({ reflect: true }) readonly isHorizontal: boolean = false\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-list-${listId++}`\n\n /**\n * Indica que o divider para o título da lista estará oculto.\n */\n @Prop({ reflect: true }) readonly hideHeaderDivider: boolean = false\n\n /**\n * Indica se a lista possui o comportamento de collapse.\n */\n @Prop({ reflect: true }) readonly collapse: boolean = false\n\n /**\n * Indica se a lista possui o comportamento de accordion.\n * O valor da propriedade define o grupo, ou seja, o accordion é aplicado a todas as listas que possuem o mesmo valor para esta propriedade.\n */\n @Prop({ reflect: true }) readonly accordion: string = null\n\n /**\n * Método do ciclo de vida do componente, que é chamado uma vez após o componente começar a ser renderizado no DOM.\n */\n componentDidLoad() {\n if (this.isHorizontal) {\n const slotItems = Array.from(this.el.querySelectorAll('br-item'))\n\n slotItems.forEach((item) => {\n const nextElement = item.nextElementSibling\n if (nextElement?.classList.contains('br-divider')) {\n const divider = nextElement as HTMLElement\n divider.style.borderWidth = '0 1px 0 0'\n divider.style.width = '1px'\n }\n })\n }\n\n // adicionar role=\"listitem\" para os itens dentro do slot\n const items = Array.from(this.el.querySelectorAll('br-item'))\n items.forEach((item) => {\n item.setAttribute('role', 'listitem')\n })\n }\n\n /**\n * Método que retorna as classes CSS do componente\n * @returns Objeto com as classes CSS do componente\n */\n private getCssClassMap(): CssClassMap {\n return {\n 'br-list': true,\n horizontal: this.isHorizontal,\n }\n }\n\n /**\n * Verifica se o slot possui conteúdo.\n * @param slotName Nome do slot a ser verificado.\n * @returns true se o slot possui conteúdo, false caso contrário.\n */\n private hasSlotContent(slotName: string): boolean {\n const directChildren = Array.from(this.el.querySelectorAll(`[slot=\"${slotName}\"]`)).filter(\n (child) => child.parentElement === this.el\n )\n return Boolean(directChildren.length)\n }\n\n /**\n * Renderiza o cabeçalho da lista.\n * @returns JSX do cabeçalho da lista\n */\n\n private readonly renderHeader = () => {\n if (this.header?.length > 0 || this.hasSlotContent('header')) {\n return (\n <div\n class={!this.hasSlotContent('header') ? 'header' : null}\n slot={this.collapse || Boolean(this.accordion) ? 'trigger' : null}\n >\n <slot name=\"header\">{!this.hasSlotContent('header') ? <div class=\"title\">{this.header}</div> : null}</slot>\n </div>\n )\n }\n return null\n }\n\n /**\n * Renderiza o divider do cabeçalho.\n * @returns JSX do divider\n */\n private renderDivider() {\n if ((this.header || this.hasSlotContent('header')) && !this.hideHeaderDivider) {\n return <div class=\"br-divider\"></div>\n }\n return null\n }\n\n /**\n * Renderiza o corpo da lista.\n * @returns JSX do corpo da lista.\n */\n private renderListBody() {\n return [this.renderHeader(), this.renderDivider(), <slot></slot>]\n }\n\n /**\n * Renderiza o componente.\n * @returns JSX do componente\n */\n render() {\n return (\n <Host role=\"list\">\n <div class={this.getCssClassMap()} id={this.customId}>\n {Boolean(this.accordion) || this.collapse ? (\n <br-collapse accordion-group={this.accordion || null}>{this.renderListBody()}</br-collapse>\n ) : (\n this.renderListBody()\n )}\n </div>\n </Host>\n )\n }\n}\n\nlet listId = 0\n"],"names":["Helpers","h","Host"],"mappings":"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"}
|
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
'use strict';
|
|
6
6
|
|
|
7
7
|
var index = require('./index-DNnn1o_9.js');
|
|
8
|
-
var tslib_es6 = require('./tslib.es6-CF44W9Bn.js');
|
|
9
8
|
var helpers = require('./helpers-BOXIHVCc.js');
|
|
10
9
|
|
|
11
10
|
const collapseCss = "*,:after,:before{-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}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}a{background-color:transparent}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}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;-moz-appearance:button;appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-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}[hidden]{display:none}.d-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!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)*-.5);margin-right:calc(var(--grid-gutter)*-.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))}}@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))}}@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}.mb-1{margin-bottom:var(--spacing-scale-half)!important}.mr-2{margin-right:var(--spacing-scale-base)!important}.mr-n2{margin-right:calc(var(--spacing-scale-base)*-1)!important}.ml-2{margin-left:var(--spacing-scale-base)!important}.mr-auto{margin-right: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}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);color:var(--interactive);text-decoration:none}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)))}button{cursor:pointer}img{max-width:100%;vertical-align:middle}ol,ul{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,input,textarea{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)}.bg-blue-90{--background:var(--blue-90);background:var(--blue-90)!important}.bg-blue-80{--background:var(--blue-80);background:var(--blue-80)!important}.bg-blue-70{--background:var(--blue-70);background:var(--blue-70)!important}.bg-blue-60{--background:var(--blue-60);background:var(--blue-60)!important}.bg-blue-50{--background:var(--blue-50);background:var(--blue-50)!important}.bg-blue-40{--background:var(--blue-40);background:var(--blue-40)!important}.bg-blue-30{--background:var(--blue-30);background:var(--blue-30)!important}.bg-blue-20{--background:var(--blue-20);background:var(--blue-20)!important}.bg-blue-10{--background:var(--blue-10);background:var(--blue-10)!important}.bg-blue-5{--background:var(--blue-5);background:var(--blue-5)!important}.bg-blue-cool-90{--background:var(--blue-cool-90);background:var(--blue-cool-90)!important}.bg-blue-cool-80{--background:var(--blue-cool-80);background:var(--blue-cool-80)!important}.bg-blue-cool-70{--background:var(--blue-cool-70);background:var(--blue-cool-70)!important}.bg-blue-cool-60{--background:var(--blue-cool-60);background:var(--blue-cool-60)!important}.bg-blue-cool-50{--background:var(--blue-cool-50);background:var(--blue-cool-50)!important}.bg-blue-cool-40{--background:var(--blue-cool-40);background:var(--blue-cool-40)!important}.bg-blue-cool-30{--background:var(--blue-cool-30);background:var(--blue-cool-30)!important}.bg-blue-cool-20{--background:var(--blue-cool-20);background:var(--blue-cool-20)!important}.bg-blue-cool-10{--background:var(--blue-cool-10);background:var(--blue-cool-10)!important}.bg-blue-cool-5{--background:var(--blue-cool-5);background:var(--blue-cool-5)!important}.bg-blue-warm-90{--background:var(--blue-warm-90);background:var(--blue-warm-90)!important}.bg-blue-warm-80{--background:var(--blue-warm-80);background:var(--blue-warm-80)!important}.bg-blue-warm-70{--background:var(--blue-warm-70);background:var(--blue-warm-70)!important}.bg-blue-warm-60{--background:var(--blue-warm-60);background:var(--blue-warm-60)!important}.bg-blue-warm-50{--background:var(--blue-warm-50);background:var(--blue-warm-50)!important}.bg-blue-warm-40{--background:var(--blue-warm-40);background:var(--blue-warm-40)!important}.bg-blue-warm-30{--background:var(--blue-warm-30);background:var(--blue-warm-30)!important}.bg-blue-warm-20{--background:var(--blue-warm-20);background:var(--blue-warm-20)!important}.bg-blue-warm-10{--background:var(--blue-warm-10);background:var(--blue-warm-10)!important}.bg-blue-warm-5{--background:var(--blue-warm-5);background:var(--blue-warm-5)!important}.bg-blue-vivid-80{--background:var(--blue-vivid-80);background:var(--blue-vivid-80)!important}.bg-blue-vivid-70{--background:var(--blue-vivid-70);background:var(--blue-vivid-70)!important}.bg-blue-vivid-60{--background:var(--blue-vivid-60);background:var(--blue-vivid-60)!important}.bg-blue-vivid-50{--background:var(--blue-vivid-50);background:var(--blue-vivid-50)!important}.bg-blue-vivid-40{--background:var(--blue-vivid-40);background:var(--blue-vivid-40)!important}.bg-blue-vivid-30{--background:var(--blue-vivid-30);background:var(--blue-vivid-30)!important}.bg-blue-vivid-20{--background:var(--blue-vivid-20);background:var(--blue-vivid-20)!important}.bg-blue-vivid-10{--background:var(--blue-vivid-10);background:var(--blue-vivid-10)!important}.bg-blue-vivid-5{--background:var(--blue-vivid-5);background:var(--blue-vivid-5)!important}.bg-blue-cool-vivid-80{--background:var(--blue-cool-vivid-80);background:var(--blue-cool-vivid-80)!important}.bg-blue-cool-vivid-70{--background:var(--blue-cool-vivid-70);background:var(--blue-cool-vivid-70)!important}.bg-blue-cool-vivid-60{--background:var(--blue-cool-vivid-60);background:var(--blue-cool-vivid-60)!important}.bg-blue-cool-vivid-50{--background:var(--blue-cool-vivid-50);background:var(--blue-cool-vivid-50)!important}.bg-blue-cool-vivid-40{--background:var(--blue-cool-vivid-40);background:var(--blue-cool-vivid-40)!important}.bg-blue-cool-vivid-30{--background:var(--blue-cool-vivid-30);background:var(--blue-cool-vivid-30)!important}.bg-blue-cool-vivid-20{--background:var(--blue-cool-vivid-20);background:var(--blue-cool-vivid-20)!important}.bg-blue-cool-vivid-10{--background:var(--blue-cool-vivid-10);background:var(--blue-cool-vivid-10)!important}.bg-blue-cool-vivid-5{--background:var(--blue-cool-vivid-5);background:var(--blue-cool-vivid-5)!important}.bg-blue-warm-vivid-90{--background:var(--blue-warm-vivid-90);background:var(--blue-warm-vivid-90)!important}.bg-blue-warm-vivid-80{--background:var(--blue-warm-vivid-80);background:var(--blue-warm-vivid-80)!important}.bg-blue-warm-vivid-70{--background:var(--blue-warm-vivid-70);background:var(--blue-warm-vivid-70)!important}.bg-blue-warm-vivid-60{--background:var(--blue-warm-vivid-60);background:var(--blue-warm-vivid-60)!important}.bg-blue-warm-vivid-50{--background:var(--blue-warm-vivid-50);background:var(--blue-warm-vivid-50)!important}.bg-blue-warm-vivid-40{--background:var(--blue-warm-vivid-40);background:var(--blue-warm-vivid-40)!important}.bg-blue-warm-vivid-30{--background:var(--blue-warm-vivid-30);background:var(--blue-warm-vivid-30)!important}.bg-blue-warm-vivid-20{--background:var(--blue-warm-vivid-20);background:var(--blue-warm-vivid-20)!important}.bg-blue-warm-vivid-10{--background:var(--blue-warm-vivid-10);background:var(--blue-warm-vivid-10)!important}.bg-blue-warm-vivid-5{--background:var(--blue-warm-vivid-5);background:var(--blue-warm-vivid-5)!important}.bg-cyan-90{--background:var(--cyan-90);background:var(--cyan-90)!important}.bg-cyan-80{--background:var(--cyan-80);background:var(--cyan-80)!important}.bg-cyan-70{--background:var(--cyan-70);background:var(--cyan-70)!important}.bg-cyan-60{--background:var(--cyan-60);background:var(--cyan-60)!important}.bg-cyan-50{--background:var(--cyan-50);background:var(--cyan-50)!important}.bg-cyan-40{--background:var(--cyan-40);background:var(--cyan-40)!important}.bg-cyan-30{--background:var(--cyan-30);background:var(--cyan-30)!important}.bg-cyan-20{--background:var(--cyan-20);background:var(--cyan-20)!important}.bg-cyan-10{--background:var(--cyan-10);background:var(--cyan-10)!important}.bg-cyan-5{--background:var(--cyan-5);background:var(--cyan-5)!important}.bg-cyan-vivid-80{--background:var(--cyan-vivid-80);background:var(--cyan-vivid-80)!important}.bg-cyan-vivid-70{--background:var(--cyan-vivid-70);background:var(--cyan-vivid-70)!important}.bg-cyan-vivid-60{--background:var(--cyan-vivid-60);background:var(--cyan-vivid-60)!important}.bg-cyan-vivid-50{--background:var(--cyan-vivid-50);background:var(--cyan-vivid-50)!important}.bg-cyan-vivid-40{--background:var(--cyan-vivid-40);background:var(--cyan-vivid-40)!important}.bg-cyan-vivid-30{--background:var(--cyan-vivid-30);background:var(--cyan-vivid-30)!important}.bg-cyan-vivid-20{--background:var(--cyan-vivid-20);background:var(--cyan-vivid-20)!important}.bg-cyan-vivid-10{--background:var(--cyan-vivid-10);background:var(--cyan-vivid-10)!important}.bg-cyan-vivid-5{--background:var(--cyan-vivid-5);background:var(--cyan-vivid-5)!important}.bg-gold-90{--background:var(--gold-90);background:var(--gold-90)!important}.bg-gold-80{--background:var(--gold-80);background:var(--gold-80)!important}.bg-gold-70{--background:var(--gold-70);background:var(--gold-70)!important}.bg-gold-60{--background:var(--gold-60);background:var(--gold-60)!important}.bg-gold-50{--background:var(--gold-50);background:var(--gold-50)!important}.bg-gold-40{--background:var(--gold-40);background:var(--gold-40)!important}.bg-gold-30{--background:var(--gold-30);background:var(--gold-30)!important}.bg-gold-20{--background:var(--gold-20);background:var(--gold-20)!important}.bg-gold-10{--background:var(--gold-10);background:var(--gold-10)!important}.bg-gold-5{--background:var(--gold-5);background:var(--gold-5)!important}.bg-gold-vivid-80{--background:var(--gold-vivid-80);background:var(--gold-vivid-80)!important}.bg-gold-vivid-70{--background:var(--gold-vivid-70);background:var(--gold-vivid-70)!important}.bg-gold-vivid-60{--background:var(--gold-vivid-60);background:var(--gold-vivid-60)!important}.bg-gold-vivid-50{--background:var(--gold-vivid-50);background:var(--gold-vivid-50)!important}.bg-gold-vivid-40{--background:var(--gold-vivid-40);background:var(--gold-vivid-40)!important}.bg-gold-vivid-30{--background:var(--gold-vivid-30);background:var(--gold-vivid-30)!important}.bg-gold-vivid-20{--background:var(--gold-vivid-20);background:var(--gold-vivid-20)!important}.bg-gold-vivid-10{--background:var(--gold-vivid-10);background:var(--gold-vivid-10)!important}.bg-gold-vivid-5{--background:var(--gold-vivid-5);background:var(--gold-vivid-5)!important}.bg-gray-90{--background:var(--gray-90);background:var(--gray-90)!important}.bg-gray-80{--background:var(--gray-80);background:var(--gray-80)!important}.bg-gray-70{--background:var(--gray-70);background:var(--gray-70)!important}.bg-gray-60{--background:var(--gray-60);background:var(--gray-60)!important}.bg-gray-50{--background:var(--gray-50);background:var(--gray-50)!important}.bg-gray-40{--background:var(--gray-40);background:var(--gray-40)!important}.bg-gray-30{--background:var(--gray-30);background:var(--gray-30)!important}.bg-gray-20{--background:var(--gray-20);background:var(--gray-20)!important}.bg-gray-10{--background:var(--gray-10);background:var(--gray-10)!important}.bg-gray-5{--background:var(--gray-5);background:var(--gray-5)!important}.bg-gray-4{--background:var(--gray-4);background:var(--gray-4)!important}.bg-gray-3{--background:var(--gray-3);background:var(--gray-3)!important}.bg-gray-2{--background:var(--gray-2);background:var(--gray-2)!important}.bg-gray-1{--background:var(--gray-1);background:var(--gray-1)!important}.bg-gray-cool-90{--background:var(--gray-cool-90);background:var(--gray-cool-90)!important}.bg-gray-cool-80{--background:var(--gray-cool-80);background:var(--gray-cool-80)!important}.bg-gray-cool-70{--background:var(--gray-cool-70);background:var(--gray-cool-70)!important}.bg-gray-cool-60{--background:var(--gray-cool-60);background:var(--gray-cool-60)!important}.bg-gray-cool-50{--background:var(--gray-cool-50);background:var(--gray-cool-50)!important}.bg-gray-cool-40{--background:var(--gray-cool-40);background:var(--gray-cool-40)!important}.bg-gray-cool-30{--background:var(--gray-cool-30);background:var(--gray-cool-30)!important}.bg-gray-cool-20{--background:var(--gray-cool-20);background:var(--gray-cool-20)!important}.bg-gray-cool-10{--background:var(--gray-cool-10);background:var(--gray-cool-10)!important}.bg-gray-cool-5{--background:var(--gray-cool-5);background:var(--gray-cool-5)!important}.bg-gray-cool-4{--background:var(--gray-cool-4);background:var(--gray-cool-4)!important}.bg-gray-cool-3{--background:var(--gray-cool-3);background:var(--gray-cool-3)!important}.bg-gray-cool-2{--background:var(--gray-cool-2);background:var(--gray-cool-2)!important}.bg-gray-cool-1{--background:var(--gray-cool-1);background:var(--gray-cool-1)!important}.bg-gray-warm-90{--background:var(--gray-warm-90);background:var(--gray-warm-90)!important}.bg-gray-warm-80{--background:var(--gray-warm-80);background:var(--gray-warm-80)!important}.bg-gray-warm-70{--background:var(--gray-warm-70);background:var(--gray-warm-70)!important}.bg-gray-warm-60{--background:var(--gray-warm-60);background:var(--gray-warm-60)!important}.bg-gray-warm-50{--background:var(--gray-warm-50);background:var(--gray-warm-50)!important}.bg-gray-warm-40{--background:var(--gray-warm-40);background:var(--gray-warm-40)!important}.bg-gray-warm-30{--background:var(--gray-warm-30);background:var(--gray-warm-30)!important}.bg-gray-warm-20{--background:var(--gray-warm-20);background:var(--gray-warm-20)!important}.bg-gray-warm-10{--background:var(--gray-warm-10);background:var(--gray-warm-10)!important}.bg-gray-warm-5{--background:var(--gray-warm-5);background:var(--gray-warm-5)!important}.bg-gray-warm-4{--background:var(--gray-warm-4);background:var(--gray-warm-4)!important}.bg-gray-warm-3{--background:var(--gray-warm-3);background:var(--gray-warm-3)!important}.bg-gray-warm-2{--background:var(--gray-warm-2);background:var(--gray-warm-2)!important}.bg-gray-warm-1{--background:var(--gray-warm-1);background:var(--gray-warm-1)!important}.bg-green-90{--background:var(--green-90);background:var(--green-90)!important}.bg-green-80{--background:var(--green-80);background:var(--green-80)!important}.bg-green-70{--background:var(--green-70);background:var(--green-70)!important}.bg-green-60{--background:var(--green-60);background:var(--green-60)!important}.bg-green-50{--background:var(--green-50);background:var(--green-50)!important}.bg-green-40{--background:var(--green-40);background:var(--green-40)!important}.bg-green-30{--background:var(--green-30);background:var(--green-30)!important}.bg-green-20{--background:var(--green-20);background:var(--green-20)!important}.bg-green-10{--background:var(--green-10);background:var(--green-10)!important}.bg-green-5{--background:var(--green-5);background:var(--green-5)!important}.bg-green-cool-90{--background:var(--green-cool-90);background:var(--green-cool-90)!important}.bg-green-cool-80{--background:var(--green-cool-80);background:var(--green-cool-80)!important}.bg-green-cool-70{--background:var(--green-cool-70);background:var(--green-cool-70)!important}.bg-green-cool-60{--background:var(--green-cool-60);background:var(--green-cool-60)!important}.bg-green-cool-50{--background:var(--green-cool-50);background:var(--green-cool-50)!important}.bg-green-cool-40{--background:var(--green-cool-40);background:var(--green-cool-40)!important}.bg-green-cool-30{--background:var(--green-cool-30);background:var(--green-cool-30)!important}.bg-green-cool-20{--background:var(--green-cool-20);background:var(--green-cool-20)!important}.bg-green-cool-10{--background:var(--green-cool-10);background:var(--green-cool-10)!important}.bg-green-cool-5{--background:var(--green-cool-5);background:var(--green-cool-5)!important}.bg-green-warm-90{--background:var(--green-warm-90);background:var(--green-warm-90)!important}.bg-green-warm-80{--background:var(--green-warm-80);background:var(--green-warm-80)!important}.bg-green-warm-70{--background:var(--green-warm-70);background:var(--green-warm-70)!important}.bg-green-warm-60{--background:var(--green-warm-60);background:var(--green-warm-60)!important}.bg-green-warm-50{--background:var(--green-warm-50);background:var(--green-warm-50)!important}.bg-green-warm-40{--background:var(--green-warm-40);background:var(--green-warm-40)!important}.bg-green-warm-30{--background:var(--green-warm-30);background:var(--green-warm-30)!important}.bg-green-warm-20{--background:var(--green-warm-20);background:var(--green-warm-20)!important}.bg-green-warm-10{--background:var(--green-warm-10);background:var(--green-warm-10)!important}.bg-green-warm-5{--background:var(--green-warm-5);background:var(--green-warm-5)!important}.bg-green-vivid-80{--background:var(--green-vivid-80);background:var(--green-vivid-80)!important}.bg-green-vivid-70{--background:var(--green-vivid-70);background:var(--green-vivid-70)!important}.bg-green-vivid-60{--background:var(--green-vivid-60);background:var(--green-vivid-60)!important}.bg-green-vivid-50{--background:var(--green-vivid-50);background:var(--green-vivid-50)!important}.bg-green-vivid-40{--background:var(--green-vivid-40);background:var(--green-vivid-40)!important}.bg-green-vivid-30{--background:var(--green-vivid-30);background:var(--green-vivid-30)!important}.bg-green-vivid-20{--background:var(--green-vivid-20);background:var(--green-vivid-20)!important}.bg-green-vivid-10{--background:var(--green-vivid-10);background:var(--green-vivid-10)!important}.bg-green-vivid-5{--background:var(--green-vivid-5);background:var(--green-vivid-5)!important}.bg-green-cool-vivid-80{--background:var(--green-cool-vivid-80);background:var(--green-cool-vivid-80)!important}.bg-green-cool-vivid-70{--background:var(--green-cool-vivid-70);background:var(--green-cool-vivid-70)!important}.bg-green-cool-vivid-60{--background:var(--green-cool-vivid-60);background:var(--green-cool-vivid-60)!important}.bg-green-cool-vivid-50{--background:var(--green-cool-vivid-50);background:var(--green-cool-vivid-50)!important}.bg-green-cool-vivid-40{--background:var(--green-cool-vivid-40);background:var(--green-cool-vivid-40)!important}.bg-green-cool-vivid-30{--background:var(--green-cool-vivid-30);background:var(--green-cool-vivid-30)!important}.bg-green-cool-vivid-20{--background:var(--green-cool-vivid-20);background:var(--green-cool-vivid-20)!important}.bg-green-cool-vivid-10{--background:var(--green-cool-vivid-10);background:var(--green-cool-vivid-10)!important}.bg-green-cool-vivid-5{--background:var(--green-cool-vivid-5);background:var(--green-cool-vivid-5)!important}.bg-green-warm-vivid-80{--background:var(--green-warm-vivid-80);background:var(--green-warm-vivid-80)!important}.bg-green-warm-vivid-70{--background:var(--green-warm-vivid-70);background:var(--green-warm-vivid-70)!important}.bg-green-warm-vivid-60{--background:var(--green-warm-vivid-60);background:var(--green-warm-vivid-60)!important}.bg-green-warm-vivid-50{--background:var(--green-warm-vivid-50);background:var(--green-warm-vivid-50)!important}.bg-green-warm-vivid-40{--background:var(--green-warm-vivid-40);background:var(--green-warm-vivid-40)!important}.bg-green-warm-vivid-30{--background:var(--green-warm-vivid-30);background:var(--green-warm-vivid-30)!important}.bg-green-warm-vivid-20{--background:var(--green-warm-vivid-20);background:var(--green-warm-vivid-20)!important}.bg-green-warm-vivid-10{--background:var(--green-warm-vivid-10);background:var(--green-warm-vivid-10)!important}.bg-green-warm-vivid-5{--background:var(--green-warm-vivid-5);background:var(--green-warm-vivid-5)!important}.bg-indigo-90{--background:var(--indigo-90);background:var(--indigo-90)!important}.bg-indigo-80{--background:var(--indigo-80);background:var(--indigo-80)!important}.bg-indigo-70{--background:var(--indigo-70);background:var(--indigo-70)!important}.bg-indigo-60{--background:var(--indigo-60);background:var(--indigo-60)!important}.bg-indigo-50{--background:var(--indigo-50);background:var(--indigo-50)!important}.bg-indigo-40{--background:var(--indigo-40);background:var(--indigo-40)!important}.bg-indigo-30{--background:var(--indigo-30);background:var(--indigo-30)!important}.bg-indigo-20{--background:var(--indigo-20);background:var(--indigo-20)!important}.bg-indigo-10{--background:var(--indigo-10);background:var(--indigo-10)!important}.bg-indigo-5{--background:var(--indigo-5);background:var(--indigo-5)!important}.bg-indigo-cool-90{--background:var(--indigo-cool-90);background:var(--indigo-cool-90)!important}.bg-indigo-cool-80{--background:var(--indigo-cool-80);background:var(--indigo-cool-80)!important}.bg-indigo-cool-70{--background:var(--indigo-cool-70);background:var(--indigo-cool-70)!important}.bg-indigo-cool-60{--background:var(--indigo-cool-60);background:var(--indigo-cool-60)!important}.bg-indigo-cool-50{--background:var(--indigo-cool-50);background:var(--indigo-cool-50)!important}.bg-indigo-cool-40{--background:var(--indigo-cool-40);background:var(--indigo-cool-40)!important}.bg-indigo-cool-30{--background:var(--indigo-cool-30);background:var(--indigo-cool-30)!important}.bg-indigo-cool-20{--background:var(--indigo-cool-20);background:var(--indigo-cool-20)!important}.bg-indigo-cool-10{--background:var(--indigo-cool-10);background:var(--indigo-cool-10)!important}.bg-indigo-cool-5{--background:var(--indigo-cool-5);background:var(--indigo-cool-5)!important}.bg-indigo-warm-90{--background:var(--indigo-warm-90);background:var(--indigo-warm-90)!important}.bg-indigo-warm-80{--background:var(--indigo-warm-80);background:var(--indigo-warm-80)!important}.bg-indigo-warm-70{--background:var(--indigo-warm-70);background:var(--indigo-warm-70)!important}.bg-indigo-warm-60{--background:var(--indigo-warm-60);background:var(--indigo-warm-60)!important}.bg-indigo-warm-50{--background:var(--indigo-warm-50);background:var(--indigo-warm-50)!important}.bg-indigo-warm-40{--background:var(--indigo-warm-40);background:var(--indigo-warm-40)!important}.bg-indigo-warm-30{--background:var(--indigo-warm-30);background:var(--indigo-warm-30)!important}.bg-indigo-warm-20{--background:var(--indigo-warm-20);background:var(--indigo-warm-20)!important}.bg-indigo-warm-10{--background:var(--indigo-warm-10);background:var(--indigo-warm-10)!important}.bg-indigo-warm-5{--background:var(--indigo-warm-5);background:var(--indigo-warm-5)!important}.bg-indigo-vivid-80{--background:var(--indigo-vivid-80);background:var(--indigo-vivid-80)!important}.bg-indigo-vivid-70{--background:var(--indigo-vivid-70);background:var(--indigo-vivid-70)!important}.bg-indigo-vivid-60{--background:var(--indigo-vivid-60);background:var(--indigo-vivid-60)!important}.bg-indigo-vivid-50{--background:var(--indigo-vivid-50);background:var(--indigo-vivid-50)!important}.bg-indigo-vivid-40{--background:var(--indigo-vivid-40);background:var(--indigo-vivid-40)!important}.bg-indigo-vivid-30{--background:var(--indigo-vivid-30);background:var(--indigo-vivid-30)!important}.bg-indigo-vivid-20{--background:var(--indigo-vivid-20);background:var(--indigo-vivid-20)!important}.bg-indigo-vivid-10{--background:var(--indigo-vivid-10);background:var(--indigo-vivid-10)!important}.bg-indigo-vivid-5{--background:var(--indigo-vivid-5);background:var(--indigo-vivid-5)!important}.bg-indigo-cool-vivid-80{--background:var(--indigo-cool-vivid-80);background:var(--indigo-cool-vivid-80)!important}.bg-indigo-cool-vivid-70{--background:var(--indigo-cool-vivid-70);background:var(--indigo-cool-vivid-70)!important}.bg-indigo-cool-vivid-60{--background:var(--indigo-cool-vivid-60);background:var(--indigo-cool-vivid-60)!important}.bg-indigo-cool-vivid-50{--background:var(--indigo-cool-vivid-50);background:var(--indigo-cool-vivid-50)!important}.bg-indigo-cool-vivid-40{--background:var(--indigo-cool-vivid-40);background:var(--indigo-cool-vivid-40)!important}.bg-indigo-cool-vivid-30{--background:var(--indigo-cool-vivid-30);background:var(--indigo-cool-vivid-30)!important}.bg-indigo-cool-vivid-20{--background:var(--indigo-cool-vivid-20);background:var(--indigo-cool-vivid-20)!important}.bg-indigo-cool-vivid-10{--background:var(--indigo-cool-vivid-10);background:var(--indigo-cool-vivid-10)!important}.bg-indigo-cool-vivid-5{--background:var(--indigo-cool-vivid-5);background:var(--indigo-cool-vivid-5)!important}.bg-indigo-warm-vivid-80{--background:var(--indigo-warm-vivid-80);background:var(--indigo-warm-vivid-80)!important}.bg-indigo-warm-vivid-70{--background:var(--indigo-warm-vivid-70);background:var(--indigo-warm-vivid-70)!important}.bg-indigo-warm-vivid-60{--background:var(--indigo-warm-vivid-60);background:var(--indigo-warm-vivid-60)!important}.bg-indigo-warm-vivid-50{--background:var(--indigo-warm-vivid-50);background:var(--indigo-warm-vivid-50)!important}.bg-indigo-warm-vivid-40{--background:var(--indigo-warm-vivid-40);background:var(--indigo-warm-vivid-40)!important}.bg-indigo-warm-vivid-30{--background:var(--indigo-warm-vivid-30);background:var(--indigo-warm-vivid-30)!important}.bg-indigo-warm-vivid-20{--background:var(--indigo-warm-vivid-20);background:var(--indigo-warm-vivid-20)!important}.bg-indigo-warm-vivid-10{--background:var(--indigo-warm-vivid-10);background:var(--indigo-warm-vivid-10)!important}.bg-indigo-warm-vivid-5{--background:var(--indigo-warm-vivid-5);background:var(--indigo-warm-vivid-5)!important}.bg-magenta-90{--background:var(--magenta-90);background:var(--magenta-90)!important}.bg-magenta-80{--background:var(--magenta-80);background:var(--magenta-80)!important}.bg-magenta-70{--background:var(--magenta-70);background:var(--magenta-70)!important}.bg-magenta-60{--background:var(--magenta-60);background:var(--magenta-60)!important}.bg-magenta-50{--background:var(--magenta-50);background:var(--magenta-50)!important}.bg-magenta-40{--background:var(--magenta-40);background:var(--magenta-40)!important}.bg-magenta-30{--background:var(--magenta-30);background:var(--magenta-30)!important}.bg-magenta-20{--background:var(--magenta-20);background:var(--magenta-20)!important}.bg-magenta-10{--background:var(--magenta-10);background:var(--magenta-10)!important}.bg-magenta-5{--background:var(--magenta-5);background:var(--magenta-5)!important}.bg-magenta-vivid-80{--background:var(--magenta-vivid-80);background:var(--magenta-vivid-80)!important}.bg-magenta-vivid-70{--background:var(--magenta-vivid-70);background:var(--magenta-vivid-70)!important}.bg-magenta-vivid-60{--background:var(--magenta-vivid-60);background:var(--magenta-vivid-60)!important}.bg-magenta-vivid-50{--background:var(--magenta-vivid-50);background:var(--magenta-vivid-50)!important}.bg-magenta-vivid-40{--background:var(--magenta-vivid-40);background:var(--magenta-vivid-40)!important}.bg-magenta-vivid-30{--background:var(--magenta-vivid-30);background:var(--magenta-vivid-30)!important}.bg-magenta-vivid-20{--background:var(--magenta-vivid-20);background:var(--magenta-vivid-20)!important}.bg-magenta-vivid-10{--background:var(--magenta-vivid-10);background:var(--magenta-vivid-10)!important}.bg-magenta-vivid-5{--background:var(--magenta-vivid-5);background:var(--magenta-vivid-5)!important}.bg-mint-90{--background:var(--mint-90);background:var(--mint-90)!important}.bg-mint-80{--background:var(--mint-80);background:var(--mint-80)!important}.bg-mint-70{--background:var(--mint-70);background:var(--mint-70)!important}.bg-mint-60{--background:var(--mint-60);background:var(--mint-60)!important}.bg-mint-50{--background:var(--mint-50);background:var(--mint-50)!important}.bg-mint-40{--background:var(--mint-40);background:var(--mint-40)!important}.bg-mint-30{--background:var(--mint-30);background:var(--mint-30)!important}.bg-mint-20{--background:var(--mint-20);background:var(--mint-20)!important}.bg-mint-10{--background:var(--mint-10);background:var(--mint-10)!important}.bg-mint-5{--background:var(--mint-5);background:var(--mint-5)!important}.bg-mint-cool-90{--background:var(--mint-cool-90);background:var(--mint-cool-90)!important}.bg-mint-cool-80{--background:var(--mint-cool-80);background:var(--mint-cool-80)!important}.bg-mint-cool-70{--background:var(--mint-cool-70);background:var(--mint-cool-70)!important}.bg-mint-cool-60{--background:var(--mint-cool-60);background:var(--mint-cool-60)!important}.bg-mint-cool-50{--background:var(--mint-cool-50);background:var(--mint-cool-50)!important}.bg-mint-cool-40{--background:var(--mint-cool-40);background:var(--mint-cool-40)!important}.bg-mint-cool-30{--background:var(--mint-cool-30);background:var(--mint-cool-30)!important}.bg-mint-cool-20{--background:var(--mint-cool-20);background:var(--mint-cool-20)!important}.bg-mint-cool-10{--background:var(--mint-cool-10);background:var(--mint-cool-10)!important}.bg-mint-cool-5{--background:var(--mint-cool-5);background:var(--mint-cool-5)!important}.bg-mint-vivid-80{--background:var(--mint-vivid-80);background:var(--mint-vivid-80)!important}.bg-mint-vivid-70{--background:var(--mint-vivid-70);background:var(--mint-vivid-70)!important}.bg-mint-vivid-60{--background:var(--mint-vivid-60);background:var(--mint-vivid-60)!important}.bg-mint-vivid-50{--background:var(--mint-vivid-50);background:var(--mint-vivid-50)!important}.bg-mint-vivid-40{--background:var(--mint-vivid-40);background:var(--mint-vivid-40)!important}.bg-mint-vivid-30{--background:var(--mint-vivid-30);background:var(--mint-vivid-30)!important}.bg-mint-vivid-20{--background:var(--mint-vivid-20);background:var(--mint-vivid-20)!important}.bg-mint-vivid-10{--background:var(--mint-vivid-10);background:var(--mint-vivid-10)!important}.bg-mint-vivid-5{--background:var(--mint-vivid-5);background:var(--mint-vivid-5)!important}.bg-mint-cool-vivid-80{--background:var(--mint-cool-vivid-80);background:var(--mint-cool-vivid-80)!important}.bg-mint-cool-vivid-70{--background:var(--mint-cool-vivid-70);background:var(--mint-cool-vivid-70)!important}.bg-mint-cool-vivid-60{--background:var(--mint-cool-vivid-60);background:var(--mint-cool-vivid-60)!important}.bg-mint-cool-vivid-50{--background:var(--mint-cool-vivid-50);background:var(--mint-cool-vivid-50)!important}.bg-mint-cool-vivid-40{--background:var(--mint-cool-vivid-40);background:var(--mint-cool-vivid-40)!important}.bg-mint-cool-vivid-30{--background:var(--mint-cool-vivid-30);background:var(--mint-cool-vivid-30)!important}.bg-mint-cool-vivid-20{--background:var(--mint-cool-vivid-20);background:var(--mint-cool-vivid-20)!important}.bg-mint-cool-vivid-10{--background:var(--mint-cool-vivid-10);background:var(--mint-cool-vivid-10)!important}.bg-mint-cool-vivid-5{--background:var(--mint-cool-vivid-5);background:var(--mint-cool-vivid-5)!important}.bg-orange-90{--background:var(--orange-90);background:var(--orange-90)!important}.bg-orange-80{--background:var(--orange-80);background:var(--orange-80)!important}.bg-orange-70{--background:var(--orange-70);background:var(--orange-70)!important}.bg-orange-60{--background:var(--orange-60);background:var(--orange-60)!important}.bg-orange-50{--background:var(--orange-50);background:var(--orange-50)!important}.bg-orange-40{--background:var(--orange-40);background:var(--orange-40)!important}.bg-orange-30{--background:var(--orange-30);background:var(--orange-30)!important}.bg-orange-20{--background:var(--orange-20);background:var(--orange-20)!important}.bg-orange-10{--background:var(--orange-10);background:var(--orange-10)!important}.bg-orange-5{--background:var(--orange-5);background:var(--orange-5)!important}.bg-orange-warm-90{--background:var(--orange-warm-90);background:var(--orange-warm-90)!important}.bg-orange-warm-80{--background:var(--orange-warm-80);background:var(--orange-warm-80)!important}.bg-orange-warm-70{--background:var(--orange-warm-70);background:var(--orange-warm-70)!important}.bg-orange-warm-60{--background:var(--orange-warm-60);background:var(--orange-warm-60)!important}.bg-orange-warm-50{--background:var(--orange-warm-50);background:var(--orange-warm-50)!important}.bg-orange-warm-40{--background:var(--orange-warm-40);background:var(--orange-warm-40)!important}.bg-orange-warm-30{--background:var(--orange-warm-30);background:var(--orange-warm-30)!important}.bg-orange-warm-20{--background:var(--orange-warm-20);background:var(--orange-warm-20)!important}.bg-orange-warm-10{--background:var(--orange-warm-10);background:var(--orange-warm-10)!important}.bg-orange-warm-5{--background:var(--orange-warm-5);background:var(--orange-warm-5)!important}.bg-orange-vivid-80{--background:var(--orange-vivid-80);background:var(--orange-vivid-80)!important}.bg-orange-vivid-70{--background:var(--orange-vivid-70);background:var(--orange-vivid-70)!important}.bg-orange-vivid-60{--background:var(--orange-vivid-60);background:var(--orange-vivid-60)!important}.bg-orange-vivid-50{--background:var(--orange-vivid-50);background:var(--orange-vivid-50)!important}.bg-orange-vivid-40{--background:var(--orange-vivid-40);background:var(--orange-vivid-40)!important}.bg-orange-vivid-30{--background:var(--orange-vivid-30);background:var(--orange-vivid-30)!important}.bg-orange-vivid-20{--background:var(--orange-vivid-20);background:var(--orange-vivid-20)!important}.bg-orange-vivid-10{--background:var(--orange-vivid-10);background:var(--orange-vivid-10)!important}.bg-orange-vivid-5{--background:var(--orange-vivid-5);background:var(--orange-vivid-5)!important}.bg-orange-warm-vivid-80{--background:var(--orange-warm-vivid-80);background:var(--orange-warm-vivid-80)!important}.bg-orange-warm-vivid-70{--background:var(--orange-warm-vivid-70);background:var(--orange-warm-vivid-70)!important}.bg-orange-warm-vivid-60{--background:var(--orange-warm-vivid-60);background:var(--orange-warm-vivid-60)!important}.bg-orange-warm-vivid-50{--background:var(--orange-warm-vivid-50);background:var(--orange-warm-vivid-50)!important}.bg-orange-warm-vivid-40{--background:var(--orange-warm-vivid-40);background:var(--orange-warm-vivid-40)!important}.bg-orange-warm-vivid-30{--background:var(--orange-warm-vivid-30);background:var(--orange-warm-vivid-30)!important}.bg-orange-warm-vivid-20{--background:var(--orange-warm-vivid-20);background:var(--orange-warm-vivid-20)!important}.bg-orange-warm-vivid-10{--background:var(--orange-warm-vivid-10);background:var(--orange-warm-vivid-10)!important}.bg-orange-warm-vivid-5{--background:var(--orange-warm-vivid-5);background:var(--orange-warm-vivid-5)!important}.bg-pure-100{--background:var(--pure-100);background:var(--pure-100)!important}.bg-pure-0{--background:var(--pure-0);background:var(--pure-0)!important}.text-pure-0{color:var(--pure-0)!important}.bg-red-90{--background:var(--red-90);background:var(--red-90)!important}.bg-red-80{--background:var(--red-80);background:var(--red-80)!important}.bg-red-70{--background:var(--red-70);background:var(--red-70)!important}.bg-red-60{--background:var(--red-60);background:var(--red-60)!important}.bg-red-50{--background:var(--red-50);background:var(--red-50)!important}.bg-red-40{--background:var(--red-40);background:var(--red-40)!important}.bg-red-30{--background:var(--red-30);background:var(--red-30)!important}.bg-red-20{--background:var(--red-20);background:var(--red-20)!important}.bg-red-10{--background:var(--red-10);background:var(--red-10)!important}.bg-red-5{--background:var(--red-5);background:var(--red-5)!important}.bg-red-cool-90{--background:var(--red-cool-90);background:var(--red-cool-90)!important}.bg-red-cool-80{--background:var(--red-cool-80);background:var(--red-cool-80)!important}.bg-red-cool-70{--background:var(--red-cool-70);background:var(--red-cool-70)!important}.bg-red-cool-60{--background:var(--red-cool-60);background:var(--red-cool-60)!important}.bg-red-cool-50{--background:var(--red-cool-50);background:var(--red-cool-50)!important}.bg-red-cool-40{--background:var(--red-cool-40);background:var(--red-cool-40)!important}.bg-red-cool-30{--background:var(--red-cool-30);background:var(--red-cool-30)!important}.bg-red-cool-20{--background:var(--red-cool-20);background:var(--red-cool-20)!important}.bg-red-cool-10{--background:var(--red-cool-10);background:var(--red-cool-10)!important}.bg-red-cool-5{--background:var(--red-cool-5);background:var(--red-cool-5)!important}.bg-red-warm-90{--background:var(--red-warm-90);background:var(--red-warm-90)!important}.bg-red-warm-80{--background:var(--red-warm-80);background:var(--red-warm-80)!important}.bg-red-warm-70{--background:var(--red-warm-70);background:var(--red-warm-70)!important}.bg-red-warm-60{--background:var(--red-warm-60);background:var(--red-warm-60)!important}.bg-red-warm-50{--background:var(--red-warm-50);background:var(--red-warm-50)!important}.bg-red-warm-40{--background:var(--red-warm-40);background:var(--red-warm-40)!important}.bg-red-warm-30{--background:var(--red-warm-30);background:var(--red-warm-30)!important}.bg-red-warm-20{--background:var(--red-warm-20);background:var(--red-warm-20)!important}.bg-red-warm-10{--background:var(--red-warm-10);background:var(--red-warm-10)!important}.bg-red-warm-5{--background:var(--red-warm-5);background:var(--red-warm-5)!important}.bg-red-vivid-80{--background:var(--red-vivid-80);background:var(--red-vivid-80)!important}.bg-red-vivid-70{--background:var(--red-vivid-70);background:var(--red-vivid-70)!important}.bg-red-vivid-60{--background:var(--red-vivid-60);background:var(--red-vivid-60)!important}.bg-red-vivid-50{--background:var(--red-vivid-50);background:var(--red-vivid-50)!important}.bg-red-vivid-40{--background:var(--red-vivid-40);background:var(--red-vivid-40)!important}.bg-red-vivid-30{--background:var(--red-vivid-30);background:var(--red-vivid-30)!important}.bg-red-vivid-20{--background:var(--red-vivid-20);background:var(--red-vivid-20)!important}.bg-red-vivid-10{--background:var(--red-vivid-10);background:var(--red-vivid-10)!important}.bg-red-vivid-5{--background:var(--red-vivid-5);background:var(--red-vivid-5)!important}.bg-red-cool-vivid-80{--background:var(--red-cool-vivid-80);background:var(--red-cool-vivid-80)!important}.bg-red-cool-vivid-70{--background:var(--red-cool-vivid-70);background:var(--red-cool-vivid-70)!important}.bg-red-cool-vivid-60{--background:var(--red-cool-vivid-60);background:var(--red-cool-vivid-60)!important}.bg-red-cool-vivid-50{--background:var(--red-cool-vivid-50);background:var(--red-cool-vivid-50)!important}.bg-red-cool-vivid-40{--background:var(--red-cool-vivid-40);background:var(--red-cool-vivid-40)!important}.bg-red-cool-vivid-30{--background:var(--red-cool-vivid-30);background:var(--red-cool-vivid-30)!important}.bg-red-cool-vivid-20{--background:var(--red-cool-vivid-20);background:var(--red-cool-vivid-20)!important}.bg-red-cool-vivid-10{--background:var(--red-cool-vivid-10);background:var(--red-cool-vivid-10)!important}.bg-red-cool-vivid-5{--background:var(--red-cool-vivid-5);background:var(--red-cool-vivid-5)!important}.bg-red-warm-vivid-80{--background:var(--red-warm-vivid-80);background:var(--red-warm-vivid-80)!important}.bg-red-warm-vivid-70{--background:var(--red-warm-vivid-70);background:var(--red-warm-vivid-70)!important}.bg-red-warm-vivid-60{--background:var(--red-warm-vivid-60);background:var(--red-warm-vivid-60)!important}.bg-red-warm-vivid-50{--background:var(--red-warm-vivid-50);background:var(--red-warm-vivid-50)!important}.bg-red-warm-vivid-40{--background:var(--red-warm-vivid-40);background:var(--red-warm-vivid-40)!important}.bg-red-warm-vivid-30{--background:var(--red-warm-vivid-30);background:var(--red-warm-vivid-30)!important}.bg-red-warm-vivid-20{--background:var(--red-warm-vivid-20);background:var(--red-warm-vivid-20)!important}.bg-red-warm-vivid-10{--background:var(--red-warm-vivid-10);background:var(--red-warm-vivid-10)!important}.bg-red-warm-vivid-5{--background:var(--red-warm-vivid-5);background:var(--red-warm-vivid-5)!important}.bg-violet-90{--background:var(--violet-90);background:var(--violet-90)!important}.bg-violet-80{--background:var(--violet-80);background:var(--violet-80)!important}.bg-violet-70{--background:var(--violet-70);background:var(--violet-70)!important}.bg-violet-60{--background:var(--violet-60);background:var(--violet-60)!important}.bg-violet-50{--background:var(--violet-50);background:var(--violet-50)!important}.bg-violet-40{--background:var(--violet-40);background:var(--violet-40)!important}.bg-violet-30{--background:var(--violet-30);background:var(--violet-30)!important}.bg-violet-20{--background:var(--violet-20);background:var(--violet-20)!important}.bg-violet-10{--background:var(--violet-10);background:var(--violet-10)!important}.bg-violet-5{--background:var(--violet-5);background:var(--violet-5)!important}.bg-violet-warm-90{--background:var(--violet-warm-90);background:var(--violet-warm-90)!important}.bg-violet-warm-80{--background:var(--violet-warm-80);background:var(--violet-warm-80)!important}.bg-violet-warm-70{--background:var(--violet-warm-70);background:var(--violet-warm-70)!important}.bg-violet-warm-60{--background:var(--violet-warm-60);background:var(--violet-warm-60)!important}.bg-violet-warm-50{--background:var(--violet-warm-50);background:var(--violet-warm-50)!important}.bg-violet-warm-40{--background:var(--violet-warm-40);background:var(--violet-warm-40)!important}.bg-violet-warm-30{--background:var(--violet-warm-30);background:var(--violet-warm-30)!important}.bg-violet-warm-20{--background:var(--violet-warm-20);background:var(--violet-warm-20)!important}.bg-violet-warm-10{--background:var(--violet-warm-10);background:var(--violet-warm-10)!important}.bg-violet-warm-5{--background:var(--violet-warm-5);background:var(--violet-warm-5)!important}.bg-violet-vivid-80{--background:var(--violet-vivid-80);background:var(--violet-vivid-80)!important}.bg-violet-vivid-70{--background:var(--violet-vivid-70);background:var(--violet-vivid-70)!important}.bg-violet-vivid-60{--background:var(--violet-vivid-60);background:var(--violet-vivid-60)!important}.bg-violet-vivid-50{--background:var(--violet-vivid-50);background:var(--violet-vivid-50)!important}.bg-violet-vivid-40{--background:var(--violet-vivid-40);background:var(--violet-vivid-40)!important}.bg-violet-vivid-30{--background:var(--violet-vivid-30);background:var(--violet-vivid-30)!important}.bg-violet-vivid-20{--background:var(--violet-vivid-20);background:var(--violet-vivid-20)!important}.bg-violet-vivid-10{--background:var(--violet-vivid-10);background:var(--violet-vivid-10)!important}.bg-violet-vivid-5{--background:var(--violet-vivid-5);background:var(--violet-vivid-5)!important}.bg-violet-warm-vivid-80{--background:var(--violet-warm-vivid-80);background:var(--violet-warm-vivid-80)!important}.bg-violet-warm-vivid-70{--background:var(--violet-warm-vivid-70);background:var(--violet-warm-vivid-70)!important}.bg-violet-warm-vivid-60{--background:var(--violet-warm-vivid-60);background:var(--violet-warm-vivid-60)!important}.bg-violet-warm-vivid-50{--background:var(--violet-warm-vivid-50);background:var(--violet-warm-vivid-50)!important}.bg-violet-warm-vivid-40{--background:var(--violet-warm-vivid-40);background:var(--violet-warm-vivid-40)!important}.bg-violet-warm-vivid-30{--background:var(--violet-warm-vivid-30);background:var(--violet-warm-vivid-30)!important}.bg-violet-warm-vivid-20{--background:var(--violet-warm-vivid-20);background:var(--violet-warm-vivid-20)!important}.bg-violet-warm-vivid-10{--background:var(--violet-warm-vivid-10);background:var(--violet-warm-vivid-10)!important}.bg-violet-warm-vivid-5{--background:var(--violet-warm-vivid-5);background:var(--violet-warm-vivid-5)!important}.bg-yellow-90{--background:var(--yellow-90);background:var(--yellow-90)!important}.bg-yellow-80{--background:var(--yellow-80);background:var(--yellow-80)!important}.bg-yellow-70{--background:var(--yellow-70);background:var(--yellow-70)!important}.bg-yellow-60{--background:var(--yellow-60);background:var(--yellow-60)!important}.bg-yellow-50{--background:var(--yellow-50);background:var(--yellow-50)!important}.bg-yellow-40{--background:var(--yellow-40);background:var(--yellow-40)!important}.bg-yellow-30{--background:var(--yellow-30);background:var(--yellow-30)!important}.bg-yellow-20{--background:var(--yellow-20);background:var(--yellow-20)!important}.bg-yellow-10{--background:var(--yellow-10);background:var(--yellow-10)!important}.bg-yellow-5{--background:var(--yellow-5);background:var(--yellow-5)!important}.bg-yellow-vivid-80{--background:var(--yellow-vivid-80);background:var(--yellow-vivid-80)!important}.bg-yellow-vivid-70{--background:var(--yellow-vivid-70);background:var(--yellow-vivid-70)!important}.bg-yellow-vivid-60{--background:var(--yellow-vivid-60);background:var(--yellow-vivid-60)!important}.bg-yellow-vivid-50{--background:var(--yellow-vivid-50);background:var(--yellow-vivid-50)!important}.bg-yellow-vivid-40{--background:var(--yellow-vivid-40);background:var(--yellow-vivid-40)!important}.bg-yellow-vivid-30{--background:var(--yellow-vivid-30);background:var(--yellow-vivid-30)!important}.bg-yellow-vivid-20{--background:var(--yellow-vivid-20);background:var(--yellow-vivid-20)!important}.bg-yellow-vivid-10{--background:var(--yellow-vivid-10);background:var(--yellow-vivid-10)!important}.bg-yellow-vivid-5{--background:var(--yellow-vivid-5);background:var(--yellow-vivid-5)!important}.bg-interactive{--background:var(--interactive);background:var(--interactive)!important}.bg-interactive-dark{--background:var(--interactive-dark);background:var(--interactive-dark)!important}.bg-danger{--background:var(--danger);background:var(--danger)!important}.bg-warning{--background:var(--warning);background:var(--warning)!important}.bg-success{--background:var(--success);background:var(--success)!important}.bg-info{--background:var(--info);background:var(--info)!important}.bg-primary-pastel-01{background:var(--color-primary-pastel-01)!important}.bg-primary-pastel-02{background:var(--color-primary-pastel-02)!important}.bg-primary-lighten-01{background:var(--color-primary-lighten-01)!important}.bg-primary-lighten-01,.bg-primary-lighten-02{--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)}.bg-primary-lighten-02{background:var(--color-primary-lighten-02)!important}.bg-primary-default{--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);background:var(--color-primary-default)!important}.text-primary-default{color:var(--color-primary-default)!important}.bg-primary-darken-01{background:var(--color-primary-darken-01)!important}.bg-primary-darken-01,.bg-primary-darken-02{--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)}.bg-primary-darken-02{background:var(--color-primary-darken-02)!important}.bg-secondary-01{background:var(--color-secondary-01)!important}.bg-secondary-02{background:var(--color-secondary-02)!important}.bg-secondary-03{background:var(--color-secondary-03)!important}.bg-secondary-04{background:var(--color-secondary-04)!important}.bg-secondary-05{background:var(--color-secondary-05)!important}.bg-secondary-06{background:var(--color-secondary-06)!important}.bg-secondary-06,.bg-secondary-07{--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)}.bg-secondary-07{background:var(--color-secondary-07)!important}.bg-secondary-08{background:var(--color-secondary-08)!important}.bg-secondary-08,.bg-secondary-09{--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)}.bg-secondary-09{background:var(--color-secondary-09)!important}.bg-highlight{background:var(--color-highlight)!important}.bg-highlight,.bg-support-01{--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)}.bg-support-01{background:var(--color-support-01)!important}.bg-support-02{background:var(--color-support-02)!important}.bg-support-03{background:var(--color-support-03)!important}.bg-support-03,.bg-support-04{--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)}.bg-support-04{background:var(--color-support-04)!important}.bg-support-05{background:var(--color-support-05)!important}.bg-support-06{background:var(--color-support-06)!important}.bg-support-07{background:var(--color-support-07)!important}.bg-support-07,.bg-support-08{--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)}.bg-support-08{background:var(--color-support-08)!important}.bg-support-09{background:var(--color-support-09)!important}.bg-support-10{background:var(--color-support-10)!important}.bg-support-11{background:var(--color-support-11)!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:ease;animation-timing-function:ease}.ease-in-out{-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}.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-notification{left:auto;right:0}.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):focus-visible,:host .br-collapse .trigger:not(:disabled):hover{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(var(--color-rgb),var(--hover))),to(rgba(var(--color-rgb),var(--hover))));background-image:linear-gradient(rgba(var(--color-rgb),var(--hover)),rgba(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{overflow:hidden;-webkit-transition:height .3s;transition:height .3s}:host .br-collapse br-icon{color:var(--interactive)}:host details{width:100%}:host details summary{display:-webkit-box;display:-ms-flexbox;display:flex;list-style:none;-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer;gap:8px;height:48px;outline:none;padding:8px 12px}: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{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0}";
|
|
@@ -95,8 +94,7 @@ const Collapse = class {
|
|
|
95
94
|
* Ciclo de vida do componente. Chamado quando o componente é removido do DOM.
|
|
96
95
|
*/
|
|
97
96
|
disconnectedCallback() {
|
|
98
|
-
|
|
99
|
-
const details = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('details');
|
|
97
|
+
const details = this.el.shadowRoot?.querySelector('details');
|
|
100
98
|
if (details !== null) {
|
|
101
99
|
details.removeEventListener('toggle', this.handleCollapse);
|
|
102
100
|
}
|
|
@@ -106,8 +104,7 @@ const Collapse = class {
|
|
|
106
104
|
* Isso garante que o estado visual do componente corresponda ao estado interno.
|
|
107
105
|
*/
|
|
108
106
|
syncDetailsWithOpen() {
|
|
109
|
-
|
|
110
|
-
const details = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('details');
|
|
107
|
+
const details = this.el.shadowRoot?.querySelector('details');
|
|
111
108
|
if (details !== null) {
|
|
112
109
|
details.open = this.open;
|
|
113
110
|
}
|
|
@@ -116,23 +113,19 @@ const Collapse = class {
|
|
|
116
113
|
* Método público para abrir.
|
|
117
114
|
* Este método pode ser chamado externamente para abrir o componente.
|
|
118
115
|
*/
|
|
119
|
-
openCollapse() {
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
this.brDidOpen.emit({ id: this.customId, accordionGroup: this.accordionGroup });
|
|
124
|
-
});
|
|
116
|
+
async openCollapse() {
|
|
117
|
+
this.open = true;
|
|
118
|
+
this.syncDetailsWithOpen();
|
|
119
|
+
this.brDidOpen.emit({ id: this.customId, accordionGroup: this.accordionGroup });
|
|
125
120
|
}
|
|
126
121
|
/**
|
|
127
122
|
* Método público para fechar.
|
|
128
123
|
* Este método pode ser chamado externamente para fechar o componente.
|
|
129
124
|
*/
|
|
130
|
-
closeCollapse() {
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
this.brDidClose.emit({ id: this.customId, accordionGroup: this.accordionGroup });
|
|
135
|
-
});
|
|
125
|
+
async closeCollapse() {
|
|
126
|
+
this.open = false;
|
|
127
|
+
this.syncDetailsWithOpen();
|
|
128
|
+
this.brDidClose.emit({ id: this.customId, accordionGroup: this.accordionGroup });
|
|
136
129
|
}
|
|
137
130
|
/**
|
|
138
131
|
* Renderiza o ícone de acordo com o estado do collapse.
|
|
@@ -150,7 +143,7 @@ const Collapse = class {
|
|
|
150
143
|
*/
|
|
151
144
|
render() {
|
|
152
145
|
const itemCount = this.el.querySelectorAll('br-item').length;
|
|
153
|
-
return (index.h(index.Host, { key: '
|
|
146
|
+
return (index.h(index.Host, { key: 'bdc33c7f9436e64e1f0a2ff33ff648987d7f4dcc' }, index.h("details", { key: '3a6a5b96cb4d9100371c649d9db5f9d42cec4419', class: "br-collapse", open: this.open, onToggle: this.handleCollapse, id: this.customId }, index.h("summary", { key: '5be15fe8dfe9c86be7ff7685219fc3de70de4b50', class: "trigger", role: "button", "aria-expanded": String(this.open), "aria-controls": `content-${this.customId}`, "aria-labelledby": `label-${this.customId}`, tabindex: "0", "aria-live": "polite" }, this.iconPosition === 'left' && this.renderIcon(), index.h("div", { key: '99f051bdbf281b5b4637cd1447a0b02249580ff4', class: "trigger-content", id: `label-${this.customId}` }, index.h("slot", { key: 'a351418fc0cd5f704e6ad06ed7658839c6d0b3bb', name: "trigger" })), this.iconPosition === 'right' && this.renderIcon()), index.h("div", { key: '8ed72974af1220852433fa1b5513a059e3144f46', class: "content", id: `content-${this.customId}`, "aria-live": "polite", "aria-labelledby": `label-${this.customId}` }, this.open && itemCount > 0 && (index.h("div", { key: '34cc836bb68cfcdde3239f012af41a1fe194adf9', class: "visually-hidden" }, itemCount, " ", itemCount === 1 ? 'item' : 'itens', " na lista")), index.h("slot", { key: 'b7c7347e3b758ecde297b1b14df15dd6b54a871a' })))));
|
|
154
147
|
}
|
|
155
148
|
static get formAssociated() { return true; }
|
|
156
149
|
get el() { return index.getElement(this); }
|
|
@@ -200,8 +193,7 @@ const List = class {
|
|
|
200
193
|
* @returns JSX do cabeçalho da lista
|
|
201
194
|
*/
|
|
202
195
|
this.renderHeader = () => {
|
|
203
|
-
|
|
204
|
-
if (((_a = this.header) === null || _a === void 0 ? void 0 : _a.length) > 0 || this.hasSlotContent('header')) {
|
|
196
|
+
if (this.header?.length > 0 || this.hasSlotContent('header')) {
|
|
205
197
|
return (index.h("div", { class: !this.hasSlotContent('header') ? 'header' : null, slot: this.collapse || Boolean(this.accordion) ? 'trigger' : null }, index.h("slot", { name: "header" }, !this.hasSlotContent('header') ? index.h("div", { class: "title" }, this.header) : null)));
|
|
206
198
|
}
|
|
207
199
|
return null;
|
|
@@ -215,7 +207,7 @@ const List = class {
|
|
|
215
207
|
const slotItems = Array.from(this.el.querySelectorAll('br-item'));
|
|
216
208
|
slotItems.forEach((item) => {
|
|
217
209
|
const nextElement = item.nextElementSibling;
|
|
218
|
-
if (nextElement
|
|
210
|
+
if (nextElement?.classList.contains('br-divider')) {
|
|
219
211
|
const divider = nextElement;
|
|
220
212
|
divider.style.borderWidth = '0 1px 0 0';
|
|
221
213
|
divider.style.width = '1px';
|
|
@@ -269,7 +261,7 @@ const List = class {
|
|
|
269
261
|
* @returns JSX do componente
|
|
270
262
|
*/
|
|
271
263
|
render() {
|
|
272
|
-
return (index.h(index.Host, { key: '
|
|
264
|
+
return (index.h(index.Host, { key: 'e0eddf533d2751fa81ea0507a551770570a5b792', role: "list" }, index.h("div", { key: '3b2baf3736c0cb472a6c5acebe082c2bbe678131', class: this.getCssClassMap(), id: this.customId }, Boolean(this.accordion) || this.collapse ? (index.h("br-collapse", { "accordion-group": this.accordion || null }, this.renderListBody())) : (this.renderListBody()))));
|
|
273
265
|
}
|
|
274
266
|
static get formAssociated() { return true; }
|
|
275
267
|
get el() { return index.getElement(this); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"br-collapse.br-list.entry.cjs.js","mappings":"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","names":["Helpers","h","Host"],"sources":["../../packages/webcomponents/src/components/collapse/collapse.scss?tag=br-collapse&encapsulation=shadow","../../packages/webcomponents/src/components/collapse/collapse.tsx","../../packages/webcomponents/src/components/list/list.scss?tag=br-list&encapsulation=shadow","../../packages/webcomponents/src/components/list/list.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(rgba(var(--color-rgb), var(--hover)), rgba(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@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() brDidOpen: EventEmitter<{ id: string; accordionGroup: string }>\n\n /**\n * Evento emitido ao recolher.\n */\n @Event() 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 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 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 * 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","@import \"~@govbr-ds/core/src/components/list/list\";\n@import \"~@govbr-ds/core/src/components/divider/divider\";\n\n:host {\n display: block;\n\n .br-list.horizontal ::slotted(br-item) {\n flex: 1;\n height: auto;\n min-height: 56px;\n width: auto;\n }\n}\n","import { AttachInternals, Component, Element, h, Host, Prop } from '@stencil/core'\n\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/list?tab=designer).\n *\n * @slot default - Slot padrão para inclusão dos itens da lista.\n * @slot header - Slot nomeado para inclusão de ações relacionadas ao cabeçalho do list (uso de botões por exemplo).\n */\n@Component({\n tag: 'br-list',\n styleUrl: 'list.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class List {\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: HTMLBrListElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Define o cabeçalho para a lista.\n */\n @Prop({ reflect: true }) readonly header: string = null\n\n /**\n * Indica se a lista será horizontal. Por padrão, a lista é vertical.\n */\n @Prop({ reflect: true }) readonly isHorizontal: boolean = false\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-list-${listId++}`\n\n /**\n * Indica que o divider para o título da lista estará oculto.\n */\n @Prop({ reflect: true }) readonly hideHeaderDivider: boolean = false\n\n /**\n * Indica se a lista possui o comportamento de collapse.\n */\n @Prop({ reflect: true }) readonly collapse: boolean = false\n\n /**\n * Indica se a lista possui o comportamento de accordion.\n * O valor da propriedade define o grupo, ou seja, o accordion é aplicado a todas as listas que possuem o mesmo valor para esta propriedade.\n */\n @Prop({ reflect: true }) readonly accordion: string = null\n\n /**\n * Método do ciclo de vida do componente, que é chamado uma vez após o componente começar a ser renderizado no DOM.\n */\n componentDidLoad() {\n if (this.isHorizontal) {\n const slotItems = Array.from(this.el.querySelectorAll('br-item'))\n\n slotItems.forEach((item) => {\n const nextElement = item.nextElementSibling\n if (nextElement?.classList.contains('br-divider')) {\n const divider = nextElement as HTMLElement\n divider.style.borderWidth = '0 1px 0 0'\n divider.style.width = '1px'\n }\n })\n }\n\n // adicionar role=\"listitem\" para os itens dentro do slot\n const items = Array.from(this.el.querySelectorAll('br-item'))\n items.forEach((item) => {\n item.setAttribute('role', 'listitem')\n })\n }\n\n /**\n * Método que retorna as classes CSS do componente\n * @returns Objeto com as classes CSS do componente\n */\n private getCssClassMap(): CssClassMap {\n return {\n 'br-list': true,\n horizontal: this.isHorizontal,\n }\n }\n\n /**\n * Verifica se o slot possui conteúdo.\n * @param slotName Nome do slot a ser verificado.\n * @returns true se o slot possui conteúdo, false caso contrário.\n */\n private hasSlotContent(slotName: string): boolean {\n const directChildren = Array.from(this.el.querySelectorAll(`[slot=\"${slotName}\"]`)).filter(\n (child) => child.parentElement === this.el\n )\n return Boolean(directChildren.length)\n }\n\n /**\n * Renderiza o cabeçalho da lista.\n * @returns JSX do cabeçalho da lista\n */\n\n private readonly renderHeader = () => {\n if (this.header?.length > 0 || this.hasSlotContent('header')) {\n return (\n <div\n class={!this.hasSlotContent('header') ? 'header' : null}\n slot={this.collapse || Boolean(this.accordion) ? 'trigger' : null}\n >\n <slot name=\"header\">{!this.hasSlotContent('header') ? <div class=\"title\">{this.header}</div> : null}</slot>\n </div>\n )\n }\n return null\n }\n\n /**\n * Renderiza o divider do cabeçalho.\n * @returns JSX do divider\n */\n private renderDivider() {\n if ((this.header || this.hasSlotContent('header')) && !this.hideHeaderDivider) {\n return <div class=\"br-divider\"></div>\n }\n return null\n }\n\n /**\n * Renderiza o corpo da lista.\n * @returns JSX do corpo da lista.\n */\n private renderListBody() {\n return [this.renderHeader(), this.renderDivider(), <slot></slot>]\n }\n\n /**\n * Renderiza o componente.\n * @returns JSX do componente\n */\n render() {\n return (\n <Host role=\"list\">\n <div class={this.getCssClassMap()} id={this.customId}>\n {Boolean(this.accordion) || this.collapse ? (\n <br-collapse accordion-group={this.accordion || null}>{this.renderListBody()}</br-collapse>\n ) : (\n this.renderListBody()\n )}\n </div>\n </Host>\n )\n }\n}\n\nlet listId = 0\n"],"version":3}
|
|
1
|
+
{"file":"br-collapse.br-list.entry.cjs.js","mappings":"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","names":["Helpers","h","Host"],"sources":["../../packages/webcomponents/src/components/collapse/collapse.scss?tag=br-collapse&encapsulation=shadow","../../packages/webcomponents/src/components/collapse/collapse.tsx","../../packages/webcomponents/src/components/list/list.scss?tag=br-list&encapsulation=shadow","../../packages/webcomponents/src/components/list/list.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(rgba(var(--color-rgb), var(--hover)), rgba(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@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() brDidOpen: EventEmitter<{ id: string; accordionGroup: string }>\n\n /**\n * Evento emitido ao recolher.\n */\n @Event() 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 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 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 * 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","@import \"~@govbr-ds/core/src/components/list/list\";\n@import \"~@govbr-ds/core/src/components/divider/divider\";\n\n:host {\n display: block;\n\n .br-list.horizontal ::slotted(br-item) {\n flex: 1;\n height: auto;\n min-height: 56px;\n width: auto;\n }\n}\n","import { AttachInternals, Component, Element, h, Host, Prop } from '@stencil/core'\n\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/list?tab=designer).\n *\n * @slot default - Slot padrão para inclusão dos itens da lista.\n * @slot header - Slot nomeado para inclusão de ações relacionadas ao cabeçalho do list (uso de botões por exemplo).\n */\n@Component({\n tag: 'br-list',\n styleUrl: 'list.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class List {\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: HTMLBrListElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Define o cabeçalho para a lista.\n */\n @Prop({ reflect: true }) readonly header: string = null\n\n /**\n * Indica se a lista será horizontal. Por padrão, a lista é vertical.\n */\n @Prop({ reflect: true }) readonly isHorizontal: boolean = false\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-list-${listId++}`\n\n /**\n * Indica que o divider para o título da lista estará oculto.\n */\n @Prop({ reflect: true }) readonly hideHeaderDivider: boolean = false\n\n /**\n * Indica se a lista possui o comportamento de collapse.\n */\n @Prop({ reflect: true }) readonly collapse: boolean = false\n\n /**\n * Indica se a lista possui o comportamento de accordion.\n * O valor da propriedade define o grupo, ou seja, o accordion é aplicado a todas as listas que possuem o mesmo valor para esta propriedade.\n */\n @Prop({ reflect: true }) readonly accordion: string = null\n\n /**\n * Método do ciclo de vida do componente, que é chamado uma vez após o componente começar a ser renderizado no DOM.\n */\n componentDidLoad() {\n if (this.isHorizontal) {\n const slotItems = Array.from(this.el.querySelectorAll('br-item'))\n\n slotItems.forEach((item) => {\n const nextElement = item.nextElementSibling\n if (nextElement?.classList.contains('br-divider')) {\n const divider = nextElement as HTMLElement\n divider.style.borderWidth = '0 1px 0 0'\n divider.style.width = '1px'\n }\n })\n }\n\n // adicionar role=\"listitem\" para os itens dentro do slot\n const items = Array.from(this.el.querySelectorAll('br-item'))\n items.forEach((item) => {\n item.setAttribute('role', 'listitem')\n })\n }\n\n /**\n * Método que retorna as classes CSS do componente\n * @returns Objeto com as classes CSS do componente\n */\n private getCssClassMap(): CssClassMap {\n return {\n 'br-list': true,\n horizontal: this.isHorizontal,\n }\n }\n\n /**\n * Verifica se o slot possui conteúdo.\n * @param slotName Nome do slot a ser verificado.\n * @returns true se o slot possui conteúdo, false caso contrário.\n */\n private hasSlotContent(slotName: string): boolean {\n const directChildren = Array.from(this.el.querySelectorAll(`[slot=\"${slotName}\"]`)).filter(\n (child) => child.parentElement === this.el\n )\n return Boolean(directChildren.length)\n }\n\n /**\n * Renderiza o cabeçalho da lista.\n * @returns JSX do cabeçalho da lista\n */\n\n private readonly renderHeader = () => {\n if (this.header?.length > 0 || this.hasSlotContent('header')) {\n return (\n <div\n class={!this.hasSlotContent('header') ? 'header' : null}\n slot={this.collapse || Boolean(this.accordion) ? 'trigger' : null}\n >\n <slot name=\"header\">{!this.hasSlotContent('header') ? <div class=\"title\">{this.header}</div> : null}</slot>\n </div>\n )\n }\n return null\n }\n\n /**\n * Renderiza o divider do cabeçalho.\n * @returns JSX do divider\n */\n private renderDivider() {\n if ((this.header || this.hasSlotContent('header')) && !this.hideHeaderDivider) {\n return <div class=\"br-divider\"></div>\n }\n return null\n }\n\n /**\n * Renderiza o corpo da lista.\n * @returns JSX do corpo da lista.\n */\n private renderListBody() {\n return [this.renderHeader(), this.renderDivider(), <slot></slot>]\n }\n\n /**\n * Renderiza o componente.\n * @returns JSX do componente\n */\n render() {\n return (\n <Host role=\"list\">\n <div class={this.getCssClassMap()} id={this.customId}>\n {Boolean(this.accordion) || this.collapse ? (\n <br-collapse accordion-group={this.accordion || null}>{this.renderListBody()}</br-collapse>\n ) : (\n this.renderListBody()\n )}\n </div>\n </Host>\n )\n }\n}\n\nlet listId = 0\n"],"version":3}
|
|
@@ -141,9 +141,8 @@ const Divider = class {
|
|
|
141
141
|
* Isso é necessário quando o divisor está configurado para sangrar (bleed).
|
|
142
142
|
*/
|
|
143
143
|
applyMarginOnRootElement() {
|
|
144
|
-
var _a;
|
|
145
144
|
const { paddingLeft, paddingRight } = this.getHostParentPadding();
|
|
146
|
-
const rootElement =
|
|
145
|
+
const rootElement = this.el.shadowRoot?.querySelector('.br-divider');
|
|
147
146
|
rootElement.setAttribute('style', `margin-left: -${paddingLeft}px; margin-right: -${paddingRight * 2}px;`);
|
|
148
147
|
}
|
|
149
148
|
/**
|
|
@@ -172,7 +171,7 @@ const Divider = class {
|
|
|
172
171
|
* @returns JSX.Element
|
|
173
172
|
*/
|
|
174
173
|
render() {
|
|
175
|
-
return index.h(index.Host, { key: '
|
|
174
|
+
return index.h(index.Host, { key: '0b49ed1db151aee4da2a2b26472177baf5279f22' }, this.hasDefaultSlotContent() ? this.renderDefaultSlotDivider() : this.renderStandardDivider());
|
|
176
175
|
}
|
|
177
176
|
get el() { return index.getElement(this); }
|
|
178
177
|
static get watchers() { return {
|