@govbr-ds/webcomponents 2.3.0 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cem/custom-elements.json +1404 -1387
- package/cem/webcomponents.html-custom-data.json +62 -56
- package/dist/cjs/br-avatar.cjs.entry.js +1 -1
- package/dist/cjs/br-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/br-button_2.cjs.entry.js +2 -2
- package/dist/cjs/br-card.cjs.entry.js +1 -1
- package/dist/cjs/br-carousel-page.cjs.entry.js +1 -1
- package/dist/cjs/br-carousel.cjs.entry.js +1 -1
- package/dist/cjs/br-checkbox-group.cjs.entry.js +1 -1
- package/dist/cjs/br-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/br-collapse_2.cjs.entry.js +2 -2
- package/dist/cjs/br-cookiebar-cookie.cjs.entry.js +1 -1
- package/dist/cjs/br-cookiebar-group.cjs.entry.js +1 -1
- package/dist/cjs/br-cookiebar-header.cjs.entry.js +1 -1
- package/dist/cjs/br-cookiebar-link.cjs.entry.js +1 -1
- package/dist/cjs/br-cookiebar-note-group.cjs.entry.js +1 -1
- package/dist/cjs/br-cookiebar-note.cjs.entry.js +1 -1
- package/dist/cjs/br-cookiebar.cjs.entry.js +1 -1
- package/dist/cjs/br-date-picker_3.cjs.entry.js +868 -516
- package/dist/cjs/br-datetime-picker.cjs.entry.js +1345 -309
- package/dist/cjs/br-divider.cjs.entry.js +1 -1
- package/dist/cjs/br-dropdown_2.cjs.entry.js +248 -129
- package/dist/cjs/br-footer-category.cjs.entry.js +1 -1
- 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-social.cjs.entry.js +1 -1
- package/dist/cjs/br-footer.cjs.entry.js +1 -1
- package/dist/cjs/br-header-function.cjs.entry.js +1 -1
- package/dist/cjs/br-header-link.cjs.entry.js +1 -1
- package/dist/cjs/br-header-list.cjs.entry.js +1 -1
- package/dist/cjs/br-header-logo.cjs.entry.js +1 -1
- package/dist/cjs/br-header.cjs.entry.js +1 -1
- package/dist/cjs/br-icon.cjs.entry.js +1 -1
- package/dist/cjs/br-input.cjs.entry.js +9 -3
- package/dist/cjs/br-item.cjs.entry.js +1 -1
- package/dist/cjs/br-link.cjs.entry.js +1 -1
- package/dist/cjs/br-loading.cjs.entry.js +1 -1
- package/dist/cjs/br-magic-button.cjs.entry.js +1 -1
- package/dist/cjs/br-menu-group.cjs.entry.js +1 -1
- package/dist/cjs/br-menu-header.cjs.entry.js +1 -1
- package/dist/cjs/br-menu-info.cjs.entry.js +1 -1
- package/dist/cjs/br-menu-item.cjs.entry.js +1 -1
- package/dist/cjs/br-menu-link.cjs.entry.js +1 -1
- package/dist/cjs/br-menu-list.cjs.entry.js +1 -1
- package/dist/cjs/br-menu-logo.cjs.entry.js +1 -1
- package/dist/cjs/br-menu-social.cjs.entry.js +1 -1
- package/dist/cjs/br-menu.cjs.entry.js +1 -1
- package/dist/cjs/br-modal.cjs.entry.js +1 -1
- package/dist/cjs/br-notification-body.cjs.entry.js +1 -1
- package/dist/cjs/br-notification-header.cjs.entry.js +1 -1
- package/dist/cjs/br-notification-item.cjs.entry.js +1 -1
- package/dist/cjs/br-notification.cjs.entry.js +1 -1
- package/dist/cjs/br-pagination.cjs.entry.js +1 -1
- package/dist/cjs/br-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/br-radio.cjs.entry.js +1 -1
- package/dist/cjs/br-scrim.cjs.entry.js +1 -1
- package/dist/cjs/br-select-input_3.cjs.entry.js +282 -98
- package/dist/cjs/br-sign-in.cjs.entry.js +1 -1
- package/dist/cjs/br-skip-link.cjs.entry.js +1 -1
- package/dist/cjs/br-skiplink-item.cjs.entry.js +1 -1
- package/dist/cjs/br-slider.cjs.entry.js +1 -1
- package/dist/cjs/br-step_2.cjs.entry.js +2 -2
- package/dist/cjs/br-switch.cjs.entry.js +1 -1
- package/dist/cjs/br-tab-item.cjs.entry.js +1 -1
- package/dist/cjs/br-tab.cjs.entry.js +1 -1
- package/dist/cjs/br-table-body.cjs.entry.js +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.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 +1 -1
- package/dist/cjs/br-textarea.cjs.entry.js +1 -1
- package/dist/cjs/br-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/br-upload.cjs.entry.js +5 -21
- package/dist/cjs/br-wizard-panel.cjs.entry.js +1 -1
- package/dist/cjs/br-wizard.cjs.entry.js +1 -1
- package/dist/cjs/{datetime-picker-constants-B5pWeOn1.js → datetime-picker-constants-CCeI5iW7.js} +20 -5
- package/dist/cjs/format-bytes-Cs8SH2w0.js +24 -0
- package/dist/cjs/index-Bc30P_6z.js +14 -14
- package/dist/cjs/{index-C92n55ch.js → index-C-IpVFDH.js} +13 -13
- package/dist/cjs/index.cjs.js +2 -2
- package/dist/cjs/{datetime-picker-props-validation-DmNKSXsy.js → isValid-CduHZTFc.js} +1 -483
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/select.utils-C38f5Kea.js +62 -0
- package/dist/cjs/webcomponents.cjs.js +1 -1
- package/dist/collection/components/avatar/avatar.css +1 -1
- package/dist/collection/components/breadcrumb/breadcrumb.css +1 -1
- package/dist/collection/components/button/button.css +1 -1
- package/dist/collection/components/card/card.css +1 -1
- package/dist/collection/components/carousel/carousel-page/carousel-page.css +1 -1
- package/dist/collection/components/carousel/carousel.css +1 -1
- package/dist/collection/components/checkbox/checkbox.css +1 -1
- package/dist/collection/components/checkbox-group/checkbox-group.css +1 -1
- package/dist/collection/components/collapse/collapse.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-cookie/cookiebar-cookie.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-group/cookiebar-group.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-header/cookiebar-header.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-link/cookiebar-link.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-note/cookiebar-note.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar-note-group/cookiebar-note-group.css +1 -1
- package/dist/collection/components/cookiebar/cookiebar.css +1 -1
- package/dist/collection/components/datetime-picker/date-picker/date-picker-locale.js +12 -12
- package/dist/collection/components/datetime-picker/date-picker/date-picker-props-validation.js +14 -13
- package/dist/collection/components/datetime-picker/date-picker/date-picker.css +1 -1
- package/dist/collection/components/datetime-picker/date-picker/date-picker.js +384 -280
- package/dist/collection/components/datetime-picker/datetime-input/datetime-input-constants.js +59 -0
- package/dist/collection/components/datetime-picker/datetime-input/datetime-input-props-validation.js +19 -15
- package/dist/collection/components/datetime-picker/datetime-input/datetime-input.css +1 -1
- package/dist/collection/components/datetime-picker/datetime-input/datetime-input.js +373 -211
- package/dist/collection/components/datetime-picker/datetime-input/datetime-input.types.js +1 -0
- package/dist/collection/components/datetime-picker/datetime-picker-constants.js +19 -5
- package/dist/collection/components/datetime-picker/datetime-picker-form-associated.js +92 -11
- package/dist/collection/components/datetime-picker/datetime-picker-props-validation.js +52 -33
- package/dist/collection/components/datetime-picker/datetime-picker.css +1 -1
- package/dist/collection/components/datetime-picker/datetime-picker.js +915 -362
- package/dist/collection/components/datetime-picker/datetime-picker.utils.js +62 -49
- package/dist/collection/components/datetime-picker/time-picker/time-picker-constants.js +3 -2
- package/dist/collection/components/datetime-picker/time-picker/time-picker.css +1 -1
- package/dist/collection/components/datetime-picker/time-picker/time-picker.js +148 -85
- package/dist/collection/components/divider/divider.css +1 -1
- package/dist/collection/components/dropdown/dropdown.css +1 -1
- package/dist/collection/components/footer/footer-category/footer-category.css +1 -1
- package/dist/collection/components/footer/footer-item/footer-item.css +1 -1
- package/dist/collection/components/footer/footer-legal/footer-legal.css +1 -1
- package/dist/collection/components/footer/footer-logo/footer-logo.css +1 -1
- package/dist/collection/components/footer/footer-social/footer-social.css +1 -1
- package/dist/collection/components/footer/footer.css +1 -1
- package/dist/collection/components/header/header-function/header-function.css +1 -1
- package/dist/collection/components/header/header-link/header-link.css +1 -1
- package/dist/collection/components/header/header-list/header-list.css +1 -1
- package/dist/collection/components/header/header-logo/header-logo.css +1 -1
- package/dist/collection/components/header/header.css +1 -1
- package/dist/collection/components/icon/icon.css +1 -1
- package/dist/collection/components/input/input.css +1 -1
- package/dist/collection/components/input/input.js +29 -2
- package/dist/collection/components/item/item.css +1 -1
- package/dist/collection/components/link/link.css +1 -1
- package/dist/collection/components/list/list.css +1 -1
- package/dist/collection/components/loading/loading.css +1 -1
- package/dist/collection/components/magic-button/magic-button.css +1 -1
- package/dist/collection/components/menu/menu-group/menu-group.css +1 -1
- package/dist/collection/components/menu/menu-header/menu-header.css +1 -1
- package/dist/collection/components/menu/menu-info/menu-info.css +1 -1
- package/dist/collection/components/menu/menu-item/menu-item.css +1 -1
- package/dist/collection/components/menu/menu-link/menu-link.css +1 -1
- package/dist/collection/components/menu/menu-list/menu-list.css +1 -1
- package/dist/collection/components/menu/menu-logo/menu-logo.css +1 -1
- package/dist/collection/components/menu/menu-social/menu-social.css +1 -1
- package/dist/collection/components/menu/menu.css +1 -1
- package/dist/collection/components/message/message.css +1 -1
- package/dist/collection/components/modal/modal.css +1 -1
- package/dist/collection/components/notification/notification-body/notification-body.css +1 -1
- package/dist/collection/components/notification/notification-header/notification-header.css +1 -1
- package/dist/collection/components/notification/notification-item/notification-item.css +1 -1
- package/dist/collection/components/notification/notification.css +1 -1
- package/dist/collection/components/pagination/pagination.css +1 -1
- package/dist/collection/components/radio/radio.css +1 -1
- package/dist/collection/components/radio-group/radio-group.css +1 -1
- package/dist/collection/components/scrim/scrim.css +1 -1
- package/dist/collection/components/select/select-input/select-input.css +1 -1
- package/dist/collection/components/select/select-input/select-input.js +123 -17
- package/dist/collection/components/select/select-list/select-list.css +1 -1
- package/dist/collection/components/select/select-list/select-list.js +218 -66
- package/dist/collection/components/select/select-option/select-option.css +1 -1
- package/dist/collection/components/select/select-option/select-option.js +14 -5
- package/dist/collection/components/select/select.css +1 -1
- package/dist/collection/components/select/select.js +303 -94
- package/dist/collection/components/select/select.utils.js +26 -7
- package/dist/collection/components/sign-in/sign-in.css +1 -1
- package/dist/collection/components/skip-link/skip-link-item/skip-link-item.css +1 -1
- package/dist/collection/components/skip-link/skip-link.css +1 -1
- package/dist/collection/components/slider/slider.css +1 -1
- package/dist/collection/components/step/step-item/step-item.css +1 -1
- package/dist/collection/components/step/step.css +1 -1
- package/dist/collection/components/switch/switch.css +1 -1
- package/dist/collection/components/tab/tab-item/tab-item.css +1 -1
- package/dist/collection/components/tab/tab.css +1 -1
- package/dist/collection/components/table/table-body/table-body.css +1 -1
- package/dist/collection/components/table/table-cell/table-cell.css +1 -1
- package/dist/collection/components/table/table-header/table-header.css +1 -1
- package/dist/collection/components/table/table-header-cell/table-header-cell.css +1 -1
- package/dist/collection/components/table/table-row/table-row.css +1 -1
- package/dist/collection/components/table/table.css +1 -1
- package/dist/collection/components/tag/tag.css +1 -1
- package/dist/collection/components/textarea/textarea.css +1 -1
- package/dist/collection/components/tooltip/tooltip.css +1 -1
- package/dist/collection/components/upload/upload.css +1 -1
- package/dist/collection/components/wizard/wizard-panel/wizard-panel.css +1 -1
- package/dist/collection/components/wizard/wizard.css +1 -1
- package/dist/components/br-avatar.js +1 -1
- package/dist/components/br-breadcrumb.js +1 -1
- package/dist/components/br-button.js +1 -1
- package/dist/components/br-card.js +1 -1
- package/dist/components/br-carousel-page.js +1 -1
- package/dist/components/br-carousel.js +1 -1
- package/dist/components/br-checkbox-group.js +1 -1
- package/dist/components/br-checkbox.js +1 -1
- package/dist/components/br-checkgroup.js +1 -1
- package/dist/components/br-collapse.js +1 -1
- package/dist/components/br-cookiebar-cookie.js +1 -1
- package/dist/components/br-cookiebar-group.js +1 -1
- package/dist/components/br-cookiebar-header.js +1 -1
- package/dist/components/br-cookiebar-link.js +1 -1
- package/dist/components/br-cookiebar-note-group.js +1 -1
- package/dist/components/br-cookiebar-note.js +1 -1
- package/dist/components/br-cookiebar.js +1 -1
- package/dist/components/br-date-picker.js +1 -1
- package/dist/components/br-datetime-input.js +1 -1
- package/dist/components/br-datetime-picker.js +1 -1
- package/dist/components/br-divider.js +1 -1
- package/dist/components/br-dropdown.js +1 -1
- package/dist/components/br-footer-category.js +1 -1
- package/dist/components/br-footer-item.js +1 -1
- package/dist/components/br-footer-legal.js +1 -1
- package/dist/components/br-footer-logo.js +1 -1
- package/dist/components/br-footer-social.js +1 -1
- package/dist/components/br-footer.js +1 -1
- package/dist/components/br-header-function.js +1 -1
- package/dist/components/br-header-link.js +1 -1
- package/dist/components/br-header-list.js +1 -1
- package/dist/components/br-header-logo.js +1 -1
- package/dist/components/br-header.js +1 -1
- package/dist/components/br-icon.js +1 -1
- package/dist/components/br-input.js +1 -1
- package/dist/components/br-item.js +1 -1
- package/dist/components/br-link.js +1 -1
- package/dist/components/br-list.js +1 -1
- package/dist/components/br-loading.js +1 -1
- package/dist/components/br-magic-button.js +1 -1
- package/dist/components/br-menu-group.js +1 -1
- package/dist/components/br-menu-header.js +1 -1
- package/dist/components/br-menu-info.js +1 -1
- package/dist/components/br-menu-item.js +1 -1
- package/dist/components/br-menu-link.js +1 -1
- package/dist/components/br-menu-list.js +1 -1
- package/dist/components/br-menu-logo.js +1 -1
- package/dist/components/br-menu-social.js +1 -1
- package/dist/components/br-menu.js +1 -1
- package/dist/components/br-message.js +1 -1
- package/dist/components/br-modal.js +1 -1
- package/dist/components/br-notification-body.js +1 -1
- package/dist/components/br-notification-header.js +1 -1
- package/dist/components/br-notification-item.js +1 -1
- package/dist/components/br-notification.js +1 -1
- package/dist/components/br-pagination.js +1 -1
- package/dist/components/br-radio-group.js +1 -1
- package/dist/components/br-radio.js +1 -1
- package/dist/components/br-scrim.js +1 -1
- package/dist/components/br-select-input.js +1 -1
- package/dist/components/br-select-list.js +1 -1
- package/dist/components/br-select-option.js +1 -1
- package/dist/components/br-select.js +1 -1
- package/dist/components/br-sign-in.js +1 -1
- package/dist/components/br-skip-link-item.js +1 -1
- package/dist/components/br-skip-link.js +1 -1
- package/dist/components/br-skiplink-item.js +1 -1
- package/dist/components/br-slider.js +1 -1
- package/dist/components/br-step-item.js +1 -1
- package/dist/components/br-step.js +1 -1
- package/dist/components/br-switch.js +1 -1
- package/dist/components/br-tab-item.js +1 -1
- package/dist/components/br-tab.js +1 -1
- package/dist/components/br-table-body.js +1 -1
- package/dist/components/br-table-cell.js +1 -1
- package/dist/components/br-table-header-cell.js +1 -1
- package/dist/components/br-table-header.js +1 -1
- package/dist/components/br-table-row.js +1 -1
- package/dist/components/br-table.js +1 -1
- package/dist/components/br-tag.js +1 -1
- package/dist/components/br-textarea.js +1 -1
- package/dist/components/br-time-picker.js +1 -1
- package/dist/components/br-tooltip.js +1 -1
- package/dist/components/br-upload.js +1 -1
- package/dist/components/br-wizard-panel.js +1 -1
- package/dist/components/br-wizard.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/p-5h-W9_JR.js +5 -0
- package/dist/components/p-848QkYoM.js +5 -0
- package/dist/components/p-B7bNfmgh.js +5 -0
- package/dist/components/p-BFHvuEnN.js +5 -0
- package/dist/components/p-BH6QYnAr.js +5 -0
- package/dist/{webcomponents/p-5f422a69.entry.js → components/p-BcW8O6h2.js} +1 -1
- package/dist/components/p-BicHMcSS.js +5 -0
- package/dist/components/p-Bs7iRQTG.js +5 -0
- package/dist/components/{p-Nze3Utvd.js → p-Bvrw9yWR.js} +1 -1
- package/dist/components/p-BzQFMh9j.js +5 -0
- package/dist/components/p-CBHd0-fF.js +5 -0
- package/dist/components/p-CCPHCJjw.js +5 -0
- package/dist/components/{p-BcqVlof7.js → p-CbgKdASU.js} +1 -1
- package/dist/components/p-CeNELttN.js +5 -0
- package/dist/components/p-CjtmJTLO.js +5 -0
- package/dist/components/{p-CZZVc2gK.js → p-D-3G3Ioq.js} +1 -1
- package/dist/components/p-DDu3JV_r.js +5 -0
- package/dist/components/p-DFWqyfUe.js +5 -0
- package/dist/components/p-DL6xuxGG.js +5 -0
- package/dist/components/p-DOX9Uwk1.js +5 -0
- package/dist/components/p-DUq7uT2-.js +5 -0
- package/dist/components/p-Devw08cc.js +5 -0
- package/dist/components/p-Di96UxvH.js +5 -0
- package/dist/components/p-Dp3MsSXu.js +5 -0
- package/dist/components/p-DsO4F0Cz.js +5 -0
- package/dist/components/p-DuLHFTpa.js +5 -0
- package/dist/components/p-DusornQ0.js +5 -0
- package/dist/components/p-OQpiDEK9.js +5 -0
- package/dist/components/p-PV731d8s.js +5 -0
- package/dist/components/p-XW6Hp_Jk.js +5 -0
- package/dist/components/p-jOb1hCPi.js +5 -0
- package/dist/components/p-rMnkh3Cy.js +5 -0
- package/dist/components/p-ta-24T1Z.js +5 -0
- package/dist/esm/br-avatar.entry.js +1 -1
- package/dist/esm/br-breadcrumb.entry.js +1 -1
- package/dist/esm/br-button_2.entry.js +2 -2
- package/dist/esm/br-card.entry.js +1 -1
- package/dist/esm/br-carousel-page.entry.js +1 -1
- package/dist/esm/br-carousel.entry.js +2 -2
- package/dist/esm/br-checkbox-group.entry.js +1 -1
- package/dist/esm/br-checkbox.entry.js +2 -2
- package/dist/esm/br-collapse_2.entry.js +3 -3
- package/dist/esm/br-cookiebar-cookie.entry.js +1 -1
- package/dist/esm/br-cookiebar-group.entry.js +1 -1
- package/dist/esm/br-cookiebar-header.entry.js +1 -1
- package/dist/esm/br-cookiebar-link.entry.js +1 -1
- package/dist/esm/br-cookiebar-note-group.entry.js +1 -1
- package/dist/esm/br-cookiebar-note.entry.js +1 -1
- package/dist/esm/br-cookiebar.entry.js +2 -2
- package/dist/esm/br-date-picker_3.entry.js +843 -491
- package/dist/esm/br-datetime-picker.entry.js +1314 -278
- package/dist/esm/br-divider.entry.js +1 -1
- package/dist/esm/br-dropdown_2.entry.js +247 -128
- package/dist/esm/br-footer-category.entry.js +1 -1
- 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-social.entry.js +1 -1
- package/dist/esm/br-footer.entry.js +1 -1
- package/dist/esm/br-header-function.entry.js +1 -1
- package/dist/esm/br-header-link.entry.js +1 -1
- package/dist/esm/br-header-list.entry.js +2 -2
- package/dist/esm/br-header-logo.entry.js +1 -1
- package/dist/esm/br-header.entry.js +1 -1
- package/dist/esm/br-icon.entry.js +1 -1
- package/dist/esm/br-input.entry.js +10 -4
- package/dist/esm/br-item.entry.js +1 -1
- package/dist/esm/br-link.entry.js +1 -1
- package/dist/esm/br-loading.entry.js +1 -1
- package/dist/esm/br-magic-button.entry.js +1 -1
- package/dist/esm/br-menu-group.entry.js +1 -1
- package/dist/esm/br-menu-header.entry.js +1 -1
- package/dist/esm/br-menu-info.entry.js +1 -1
- package/dist/esm/br-menu-item.entry.js +1 -1
- package/dist/esm/br-menu-link.entry.js +1 -1
- package/dist/esm/br-menu-list.entry.js +1 -1
- package/dist/esm/br-menu-logo.entry.js +1 -1
- package/dist/esm/br-menu-social.entry.js +1 -1
- package/dist/esm/br-menu.entry.js +2 -2
- package/dist/esm/br-modal.entry.js +1 -1
- package/dist/esm/br-notification-body.entry.js +1 -1
- package/dist/esm/br-notification-header.entry.js +1 -1
- package/dist/esm/br-notification-item.entry.js +1 -1
- package/dist/esm/br-notification.entry.js +2 -2
- package/dist/esm/br-pagination.entry.js +1 -1
- package/dist/esm/br-radio-group.entry.js +2 -2
- package/dist/esm/br-radio.entry.js +2 -2
- package/dist/esm/br-scrim.entry.js +1 -1
- package/dist/esm/br-select-input_3.entry.js +282 -98
- package/dist/esm/br-sign-in.entry.js +1 -1
- package/dist/esm/br-skip-link.entry.js +1 -1
- package/dist/esm/br-skiplink-item.entry.js +1 -1
- package/dist/esm/br-slider.entry.js +2 -2
- package/dist/esm/br-step_2.entry.js +2 -2
- package/dist/esm/br-switch.entry.js +2 -2
- package/dist/esm/br-tab-item.entry.js +1 -1
- package/dist/esm/br-tab.entry.js +1 -1
- package/dist/esm/br-table-body.entry.js +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.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 +2 -2
- package/dist/esm/br-tooltip.entry.js +2 -2
- package/dist/esm/br-upload.entry.js +3 -19
- package/dist/esm/br-wizard-panel.entry.js +1 -1
- package/dist/esm/br-wizard.entry.js +1 -1
- package/dist/esm/{datetime-picker-constants-BtRPYRvA.js → datetime-picker-constants-DDc4sADe.js} +20 -6
- package/dist/esm/{event-CfuJQ1DY.js → event-6Da1SZ3J.js} +1 -1
- package/dist/esm/format-bytes-B7bNfmgh.js +22 -0
- package/dist/esm/index-ConyRdJe.js +14 -14
- package/dist/esm/{index-BQPOWxe5.js → index-CytVKoHT.js} +13 -13
- package/dist/esm/index.js +2 -2
- package/dist/esm/{datetime-picker-props-validation-BeTcUTnE.js → isValid-Bee0Uvqc.js} +2 -477
- package/dist/esm/loader.js +1 -1
- package/dist/esm/select.utils-BYsh2ZdE.js +57 -0
- package/dist/esm/webcomponents.js +1 -1
- package/dist/hydrate/index.js +2979 -1673
- package/dist/hydrate/index.mjs +2979 -1673
- package/dist/types/components/datetime-picker/date-picker/date-picker-locale.d.ts +9 -9
- package/dist/types/components/datetime-picker/date-picker/date-picker-props-validation.d.ts +14 -13
- package/dist/types/components/datetime-picker/date-picker/date-picker.d.ts +264 -161
- package/dist/types/components/datetime-picker/datetime-input/datetime-input-constants.d.ts +14 -0
- package/dist/types/components/datetime-picker/datetime-input/datetime-input-props-validation.d.ts +19 -15
- package/dist/types/components/datetime-picker/datetime-input/datetime-input.d.ts +229 -98
- package/dist/types/components/datetime-picker/datetime-input/datetime-input.types.d.ts +36 -0
- package/dist/types/components/datetime-picker/datetime-picker-constants.d.ts +19 -5
- package/dist/types/components/datetime-picker/datetime-picker-form-associated.d.ts +32 -5
- package/dist/types/components/datetime-picker/datetime-picker-props-validation.d.ts +22 -24
- package/dist/types/components/datetime-picker/datetime-picker.d.ts +508 -235
- package/dist/types/components/datetime-picker/datetime-picker.types.d.ts +75 -21
- package/dist/types/components/datetime-picker/datetime-picker.utils.d.ts +53 -47
- package/dist/types/components/datetime-picker/time-picker/time-picker-constants.d.ts +3 -2
- package/dist/types/components/datetime-picker/time-picker/time-picker.d.ts +126 -55
- package/dist/types/components/input/input.d.ts +9 -1
- package/dist/types/components/input/input.types.d.ts +4 -0
- package/dist/types/components/select/select-input/select-input.d.ts +9 -2
- package/dist/types/components/select/select-list/select-list.d.ts +14 -2
- package/dist/types/components/select/select-option/select-option.d.ts +1 -0
- package/dist/types/components/select/select.d.ts +47 -7
- package/dist/types/components/select/select.types.d.ts +12 -0
- package/dist/types/components/select/select.utils.d.ts +3 -0
- package/dist/types/components.d.ts +387 -300
- package/dist/webcomponents/index.esm.js +1 -1
- package/dist/webcomponents/p-01801ac1.entry.js +5 -0
- package/dist/webcomponents/p-05b459f2.entry.js +5 -0
- package/dist/webcomponents/p-08ac6f09.entry.js +5 -0
- package/dist/webcomponents/p-09c79c1d.entry.js +5 -0
- package/dist/webcomponents/p-0fc112fc.entry.js +5 -0
- package/dist/webcomponents/p-13babfc4.entry.js +5 -0
- package/dist/webcomponents/p-15022ab7.entry.js +5 -0
- package/dist/webcomponents/p-172d42c2.entry.js +5 -0
- package/dist/webcomponents/p-18cf093a.entry.js +5 -0
- package/dist/webcomponents/p-198aa844.entry.js +5 -0
- package/dist/webcomponents/p-1ba60d13.entry.js +5 -0
- package/dist/webcomponents/p-1bb96641.entry.js +5 -0
- package/dist/webcomponents/{p-82759002.entry.js → p-20477061.entry.js} +1 -1
- package/dist/webcomponents/p-21feda62.entry.js +5 -0
- package/dist/webcomponents/p-23a5cfd7.entry.js +5 -0
- package/dist/webcomponents/{p-0b0cf355.entry.js → p-2c8595d3.entry.js} +1 -1
- package/dist/webcomponents/{p-76d51654.entry.js → p-31a4694a.entry.js} +1 -1
- package/dist/webcomponents/p-32ea6342.entry.js +5 -0
- package/dist/webcomponents/p-3658adcf.entry.js +5 -0
- package/dist/webcomponents/p-37914e63.entry.js +5 -0
- package/dist/webcomponents/p-3b0dd0ff.entry.js +5 -0
- package/dist/webcomponents/p-42b60169.entry.js +5 -0
- package/dist/webcomponents/p-42c9c6c5.entry.js +5 -0
- package/dist/{components/p-DOJ1vYOl.js → webcomponents/p-473561f2.entry.js} +1 -1
- package/dist/webcomponents/p-47c490ef.entry.js +5 -0
- package/dist/webcomponents/p-4b01c60f.entry.js +5 -0
- package/dist/webcomponents/p-5a5ed7d8.entry.js +5 -0
- package/dist/webcomponents/p-609cf652.entry.js +5 -0
- package/dist/webcomponents/p-614683d9.entry.js +5 -0
- package/dist/webcomponents/p-67605757.entry.js +5 -0
- package/dist/webcomponents/p-67774920.entry.js +5 -0
- package/dist/webcomponents/p-67d62559.entry.js +5 -0
- package/dist/webcomponents/{p-4118b878.entry.js → p-695dbeb0.entry.js} +1 -1
- package/dist/webcomponents/{p-CfuJQ1DY.js → p-6Da1SZ3J.js} +1 -1
- package/dist/webcomponents/p-6a293be8.entry.js +5 -0
- package/dist/webcomponents/{p-d5d2205c.entry.js → p-6f1a4fbe.entry.js} +1 -1
- package/dist/webcomponents/p-7352d459.entry.js +5 -0
- package/dist/webcomponents/p-745213f7.entry.js +5 -0
- package/dist/webcomponents/p-794b701b.entry.js +5 -0
- package/dist/webcomponents/p-7ee564a1.entry.js +5 -0
- package/dist/webcomponents/{p-6850e98e.entry.js → p-7fda8b89.entry.js} +1 -1
- package/dist/webcomponents/p-8116ee93.entry.js +5 -0
- package/dist/webcomponents/p-821341dc.entry.js +5 -0
- package/dist/webcomponents/p-8aa6f07c.entry.js +5 -0
- package/dist/webcomponents/p-8ddf3ce3.entry.js +5 -0
- package/dist/webcomponents/p-95f3c44a.entry.js +5 -0
- package/dist/webcomponents/p-96dbb585.entry.js +5 -0
- package/dist/webcomponents/p-9815ab95.entry.js +5 -0
- package/dist/webcomponents/{p-b02a7218.entry.js → p-9e0324a7.entry.js} +1 -1
- package/dist/webcomponents/p-B7bNfmgh.js +5 -0
- package/dist/webcomponents/p-BYsh2ZdE.js +5 -0
- package/dist/webcomponents/p-CJipT0in.js +5 -0
- package/dist/webcomponents/{p-BtRPYRvA.js → p-DDc4sADe.js} +1 -1
- package/dist/webcomponents/p-a038be16.entry.js +5 -0
- package/dist/webcomponents/p-a32d17cb.entry.js +5 -0
- package/dist/webcomponents/p-a46f068e.entry.js +5 -0
- package/dist/webcomponents/p-a89b684d.entry.js +5 -0
- package/dist/webcomponents/{p-0d2ca2f7.entry.js → p-ac68355e.entry.js} +1 -1
- package/dist/webcomponents/{p-61977114.entry.js → p-af888d13.entry.js} +1 -1
- package/dist/webcomponents/p-b0124459.entry.js +5 -0
- package/dist/webcomponents/p-b063c12f.entry.js +5 -0
- package/dist/webcomponents/p-b07bfdc5.entry.js +5 -0
- package/dist/webcomponents/{p-c1dafd8d.entry.js → p-b5d25332.entry.js} +1 -1
- package/dist/webcomponents/p-b609b464.entry.js +5 -0
- package/dist/webcomponents/p-b66ab52d.entry.js +5 -0
- package/dist/webcomponents/p-b8d4ace3.entry.js +5 -0
- package/dist/webcomponents/p-c717c745.entry.js +5 -0
- package/dist/webcomponents/p-d08b6266.entry.js +5 -0
- package/dist/webcomponents/p-d6165aa0.entry.js +5 -0
- package/dist/webcomponents/{p-14ff5865.entry.js → p-dacb7e2c.entry.js} +1 -1
- package/dist/webcomponents/p-db309a11.entry.js +5 -0
- package/dist/webcomponents/{p-19a38e20.entry.js → p-dc23cb2e.entry.js} +1 -1
- package/dist/webcomponents/p-e241caf3.entry.js +5 -0
- package/dist/webcomponents/p-e661c024.entry.js +5 -0
- package/dist/webcomponents/p-e7107869.entry.js +5 -0
- package/dist/webcomponents/p-eb94199d.entry.js +5 -0
- package/dist/webcomponents/{p-e07e309d.entry.js → p-f8993ae4.entry.js} +1 -1
- package/dist/webcomponents/{p-513ee754.entry.js → p-f99d8c9c.entry.js} +1 -1
- package/dist/webcomponents/{p-DV-iW9Aj.js → p-fOJu6uZR.js} +1 -1
- package/dist/webcomponents/{p-b16590fc.entry.js → p-fb76b1e0.entry.js} +1 -1
- package/dist/webcomponents/p-fdcb54a3.entry.js +5 -0
- package/dist/webcomponents/{p-94848046.entry.js → p-fed02286.entry.js} +1 -1
- package/dist/webcomponents/webcomponents.esm.js +1 -1
- package/package.json +2 -2
- package/dist/components/p-0qmYp77w.js +0 -5
- package/dist/components/p-5c3rNBXh.js +0 -5
- package/dist/components/p-B8oIvH3q.js +0 -5
- package/dist/components/p-BECz8XWJ.js +0 -5
- package/dist/components/p-BM4Ys6hX.js +0 -5
- package/dist/components/p-BXWh9s7p.js +0 -5
- package/dist/components/p-BblZlUp2.js +0 -5
- package/dist/components/p-Bezou5CQ.js +0 -5
- package/dist/components/p-BjeUETWJ.js +0 -5
- package/dist/components/p-Cd6udSDt.js +0 -5
- package/dist/components/p-Ci0_RqAE.js +0 -5
- package/dist/components/p-CuBgClZm.js +0 -5
- package/dist/components/p-D0QYZSoP.js +0 -5
- package/dist/components/p-D4SWpW6-.js +0 -5
- package/dist/components/p-D579DS7x.js +0 -5
- package/dist/components/p-D8K7rhHd.js +0 -5
- package/dist/components/p-D9nXlCuS.js +0 -5
- package/dist/components/p-DKFO6Q_g.js +0 -5
- package/dist/components/p-DNJSSCNi.js +0 -5
- package/dist/components/p-DYI30IZL.js +0 -5
- package/dist/components/p-DcVldfL0.js +0 -5
- package/dist/components/p-DhvmHPp4.js +0 -5
- package/dist/components/p-DwgiHL0b.js +0 -5
- package/dist/components/p-WxDB6Dk4.js +0 -5
- package/dist/components/p-ZLoeVagg.js +0 -5
- package/dist/components/p-gbYJ9sfc.js +0 -5
- package/dist/components/p-uc8ABlC_.js +0 -5
- package/dist/components/p-v60ypfxD.js +0 -5
- package/dist/webcomponents/p-078bd760.entry.js +0 -5
- package/dist/webcomponents/p-07c2cdff.entry.js +0 -5
- package/dist/webcomponents/p-0d79ca44.entry.js +0 -5
- package/dist/webcomponents/p-0fe3c47b.entry.js +0 -5
- package/dist/webcomponents/p-116b53c9.entry.js +0 -5
- package/dist/webcomponents/p-1240dae7.entry.js +0 -5
- package/dist/webcomponents/p-15743a02.entry.js +0 -5
- package/dist/webcomponents/p-16cebf49.entry.js +0 -5
- package/dist/webcomponents/p-1884b9d3.entry.js +0 -5
- package/dist/webcomponents/p-1d36c8fa.entry.js +0 -5
- package/dist/webcomponents/p-1fa4b5b2.entry.js +0 -5
- package/dist/webcomponents/p-212c069b.entry.js +0 -5
- package/dist/webcomponents/p-23f37cd6.entry.js +0 -5
- package/dist/webcomponents/p-24502b63.entry.js +0 -5
- package/dist/webcomponents/p-27fb81f3.entry.js +0 -5
- package/dist/webcomponents/p-28844490.entry.js +0 -5
- package/dist/webcomponents/p-2b41bdcc.entry.js +0 -5
- package/dist/webcomponents/p-2cb1e09b.entry.js +0 -5
- package/dist/webcomponents/p-2fcda70b.entry.js +0 -5
- package/dist/webcomponents/p-3378300c.entry.js +0 -5
- package/dist/webcomponents/p-3ae9cf69.entry.js +0 -5
- package/dist/webcomponents/p-3b79cd49.entry.js +0 -5
- package/dist/webcomponents/p-3c1513ec.entry.js +0 -5
- package/dist/webcomponents/p-4534a3c3.entry.js +0 -5
- package/dist/webcomponents/p-48abf568.entry.js +0 -5
- package/dist/webcomponents/p-4e5ea05c.entry.js +0 -5
- package/dist/webcomponents/p-521a1076.entry.js +0 -5
- package/dist/webcomponents/p-59fc52c0.entry.js +0 -5
- package/dist/webcomponents/p-5a9f4ea2.entry.js +0 -5
- package/dist/webcomponents/p-71853dfc.entry.js +0 -5
- package/dist/webcomponents/p-77e242f3.entry.js +0 -5
- package/dist/webcomponents/p-7b849472.entry.js +0 -5
- package/dist/webcomponents/p-7dbfb875.entry.js +0 -5
- package/dist/webcomponents/p-7fa7f052.entry.js +0 -5
- package/dist/webcomponents/p-81c65747.entry.js +0 -5
- package/dist/webcomponents/p-91a5329f.entry.js +0 -5
- package/dist/webcomponents/p-966773a9.entry.js +0 -5
- package/dist/webcomponents/p-9abb5a53.entry.js +0 -5
- package/dist/webcomponents/p-9bf2e325.entry.js +0 -5
- package/dist/webcomponents/p-9c943b40.entry.js +0 -5
- package/dist/webcomponents/p-9ec3ca00.entry.js +0 -5
- package/dist/webcomponents/p-B0PbhaxL.js +0 -5
- package/dist/webcomponents/p-ad91f149.entry.js +0 -5
- package/dist/webcomponents/p-aeea1f17.entry.js +0 -5
- package/dist/webcomponents/p-c2ca0289.entry.js +0 -5
- package/dist/webcomponents/p-c8af334e.entry.js +0 -5
- package/dist/webcomponents/p-cac49c6a.entry.js +0 -5
- package/dist/webcomponents/p-cb9ebfbe.entry.js +0 -5
- package/dist/webcomponents/p-d11f95a0.entry.js +0 -5
- package/dist/webcomponents/p-dad03b49.entry.js +0 -5
- package/dist/webcomponents/p-db8e6322.entry.js +0 -5
- package/dist/webcomponents/p-dea8015f.entry.js +0 -5
- package/dist/webcomponents/p-e53d874b.entry.js +0 -5
- package/dist/webcomponents/p-e5540387.entry.js +0 -5
- package/dist/webcomponents/p-e94a52ac.entry.js +0 -5
- package/dist/webcomponents/p-e9be4d3f.entry.js +0 -5
- package/dist/webcomponents/p-e9db9381.entry.js +0 -5
- package/dist/webcomponents/p-edca5de1.entry.js +0 -5
- package/dist/webcomponents/p-ee5b9fc9.entry.js +0 -5
- package/dist/webcomponents/p-f4ef8c63.entry.js +0 -5
|
@@ -6,7 +6,7 @@ import { Host, h } from "@stencil/core";
|
|
|
6
6
|
import { reportInvalidPropValue } from "../../../shared/utils/prop-warning";
|
|
7
7
|
import { resolveDensity, resolveIntegerPropValue, resolveNumberPropValue } from "../../../shared/utils/props";
|
|
8
8
|
import { createRafBatcher } from "../../../shared/utils/raf-batcher";
|
|
9
|
-
import {
|
|
9
|
+
import { filterSelectOptions, SELECT_ALL_OPTION_VALUE } from "../select.utils";
|
|
10
10
|
/**
|
|
11
11
|
* Subcomponente de lista virtualizada de opções, projetado para renderizar o conjunto de escolhas do `br-select`.
|
|
12
12
|
*
|
|
@@ -30,7 +30,8 @@ import { computeVirtualWindow } from "../../../shared/utils/virtual-scroll";
|
|
|
30
30
|
export class SelectList {
|
|
31
31
|
constructor() {
|
|
32
32
|
/**
|
|
33
|
-
* Define a densidade visual da lista, das opções e do indicador de carregamento.
|
|
33
|
+
* Define a densidade visual da lista, das opções regulares e do indicador de carregamento.
|
|
34
|
+
* A opção sintética de selecionar todos permanece com densidade `small`.
|
|
34
35
|
* Aceita `small`, `medium` ou `large`. Valores inválidos usam `medium`.
|
|
35
36
|
*
|
|
36
37
|
* @default 'medium'
|
|
@@ -79,6 +80,11 @@ export class SelectList {
|
|
|
79
80
|
* @default 0
|
|
80
81
|
*/
|
|
81
82
|
this.overscan = 0;
|
|
83
|
+
/**
|
|
84
|
+
* Oculta os divisores entre opções consecutivas, sem alterar a altura das linhas.
|
|
85
|
+
* @default false
|
|
86
|
+
*/
|
|
87
|
+
this.hideDividers = false;
|
|
82
88
|
/**
|
|
83
89
|
* Rótulo apresentado para a ação de selecionar todos no modo múltiplo.
|
|
84
90
|
*
|
|
@@ -104,7 +110,10 @@ export class SelectList {
|
|
|
104
110
|
this.isMultiple = false;
|
|
105
111
|
this.scrollTop = 0;
|
|
106
112
|
this.measuredItemHeight = null;
|
|
113
|
+
this.measuredSelectAllItemHeight = null;
|
|
107
114
|
this.measurementFrame = null;
|
|
115
|
+
this.measurementInProgress = false;
|
|
116
|
+
this.measurementRequested = false;
|
|
108
117
|
this.filteredOptionsCache = null;
|
|
109
118
|
this.filteredOptionsCacheKey = '';
|
|
110
119
|
this.virtualRowsCache = null;
|
|
@@ -139,6 +148,8 @@ export class SelectList {
|
|
|
139
148
|
return;
|
|
140
149
|
const selectedByValue = new Map(options.map((option) => [option.value, Boolean(option.selected)]));
|
|
141
150
|
renderedOptions.forEach((option) => {
|
|
151
|
+
if (option.value === undefined)
|
|
152
|
+
return;
|
|
142
153
|
const selected = selectedByValue.get(option.value);
|
|
143
154
|
if (selected !== undefined && option.selected !== selected)
|
|
144
155
|
option.selected = selected;
|
|
@@ -157,7 +168,7 @@ export class SelectList {
|
|
|
157
168
|
return resolveIntegerPropValue(this.el, 'overscan', this.overscan, 0, Number.MAX_SAFE_INTEGER, 0);
|
|
158
169
|
}
|
|
159
170
|
get effectiveActiveOptionIndex() {
|
|
160
|
-
return
|
|
171
|
+
return Number.isInteger(this.activeOptionIndex) && this.activeOptionIndex >= -1 ? this.activeOptionIndex : -1;
|
|
161
172
|
}
|
|
162
173
|
/**
|
|
163
174
|
* O `br-select` fornece a opção sintética de selecionar todos antes de
|
|
@@ -170,12 +181,15 @@ export class SelectList {
|
|
|
170
181
|
}
|
|
171
182
|
disconnectedCallback() {
|
|
172
183
|
this.scrollBatch.cancel();
|
|
184
|
+
this.measurementRequested = false;
|
|
173
185
|
if (this.measurementFrame !== null) {
|
|
174
186
|
cancelAnimationFrame(this.measurementFrame);
|
|
175
187
|
this.measurementFrame = null;
|
|
176
188
|
}
|
|
177
189
|
}
|
|
178
190
|
handleSearchTermChange() {
|
|
191
|
+
this.filteredOptionsCache = null;
|
|
192
|
+
this.virtualRowsCache = null;
|
|
179
193
|
this.scrollTop = 0;
|
|
180
194
|
if (this.listElement) {
|
|
181
195
|
this.listElement.scrollTop = 0;
|
|
@@ -228,6 +242,7 @@ export class SelectList {
|
|
|
228
242
|
this.options = [];
|
|
229
243
|
this.scrollTop = 0;
|
|
230
244
|
this.measuredItemHeight = null;
|
|
245
|
+
this.measuredSelectAllItemHeight = null;
|
|
231
246
|
if (this.listElement) {
|
|
232
247
|
this.listElement.scrollTop = 0;
|
|
233
248
|
}
|
|
@@ -280,11 +295,6 @@ export class SelectList {
|
|
|
280
295
|
if (nextTerm === this.searchTerm)
|
|
281
296
|
return;
|
|
282
297
|
this.searchTerm = nextTerm;
|
|
283
|
-
this.scrollTop = 0;
|
|
284
|
-
if (this.listElement) {
|
|
285
|
-
this.listElement.scrollTop = 0;
|
|
286
|
-
}
|
|
287
|
-
this.scheduleMeasureItemHeight();
|
|
288
298
|
}
|
|
289
299
|
/**
|
|
290
300
|
* Alterna a lista entre modo simples e múltiplo.
|
|
@@ -325,10 +335,9 @@ export class SelectList {
|
|
|
325
335
|
const rowIndex = this.getRowIndexForOption(rows, index);
|
|
326
336
|
if (rowIndex < 0)
|
|
327
337
|
return false;
|
|
328
|
-
const rowHeight = this.getRowHeight();
|
|
329
338
|
const viewportHeight = this.getViewportHeight();
|
|
330
|
-
const maxScrollTop = Math.max(0, rows
|
|
331
|
-
const nextScrollTop = Math.min(rowIndex
|
|
339
|
+
const maxScrollTop = Math.max(0, this.getRowsHeight(rows) - viewportHeight);
|
|
340
|
+
const nextScrollTop = Math.min(this.getRowTop(rows, rowIndex), maxScrollTop);
|
|
332
341
|
/*
|
|
333
342
|
* Atualiza primeiro o estado que define a janela virtual. Dessa forma,
|
|
334
343
|
* os itens do novo intervalo são renderizados antes de o viewport nativo
|
|
@@ -372,6 +381,18 @@ export class SelectList {
|
|
|
372
381
|
await optionElement?.setFocus?.();
|
|
373
382
|
return Boolean(optionElement);
|
|
374
383
|
}
|
|
384
|
+
/** Torna o item ativo visível sem retirar o foco do campo. */
|
|
385
|
+
async revealOption(index) {
|
|
386
|
+
for (let attempt = 0; attempt < 3 && !this.getFilteredOptions()[index]; attempt += 1) {
|
|
387
|
+
await this.waitForNextFrame();
|
|
388
|
+
}
|
|
389
|
+
if (!this.getFilteredOptions()[index])
|
|
390
|
+
return false;
|
|
391
|
+
await this.waitForNextFrame();
|
|
392
|
+
await this.waitForNextFrame();
|
|
393
|
+
await this.ensureOptionVisible(index);
|
|
394
|
+
return Boolean(this.listElement);
|
|
395
|
+
}
|
|
375
396
|
/**
|
|
376
397
|
* Aciona a seleção programática de uma opção específica.
|
|
377
398
|
*
|
|
@@ -426,7 +447,7 @@ export class SelectList {
|
|
|
426
447
|
this.options = this.options.map((o) => ({ ...o, selected: false }));
|
|
427
448
|
}
|
|
428
449
|
isSelectAllOption(option) {
|
|
429
|
-
if (option.value ===
|
|
450
|
+
if (option.value === SELECT_ALL_OPTION_VALUE)
|
|
430
451
|
return true;
|
|
431
452
|
const optionLabel = (option.label ?? option.value).trim();
|
|
432
453
|
return optionLabel === this.selectAllLabel || optionLabel === this.unselectAllLabel;
|
|
@@ -442,7 +463,7 @@ export class SelectList {
|
|
|
442
463
|
}
|
|
443
464
|
createSelectAllOption() {
|
|
444
465
|
return {
|
|
445
|
-
value:
|
|
466
|
+
value: SELECT_ALL_OPTION_VALUE,
|
|
446
467
|
label: this.selectAllLabel,
|
|
447
468
|
selected: false,
|
|
448
469
|
indeterminate: false,
|
|
@@ -552,14 +573,7 @@ export class SelectList {
|
|
|
552
573
|
return this.options;
|
|
553
574
|
}
|
|
554
575
|
this.filteredOptionsCacheKey = cacheKey;
|
|
555
|
-
this.filteredOptionsCache = this.options.
|
|
556
|
-
if (this.isSelectAllOption(option))
|
|
557
|
-
return this.effectiveMultiple;
|
|
558
|
-
const label = this.normalizeSearchText(option.label ?? option.value);
|
|
559
|
-
const group = this.normalizeSearchText(option.group);
|
|
560
|
-
const value = this.normalizeSearchText(option.value);
|
|
561
|
-
return label.includes(normalizedTerm) || group.includes(normalizedTerm) || value.includes(normalizedTerm);
|
|
562
|
-
});
|
|
576
|
+
this.filteredOptionsCache = filterSelectOptions(this.options, this.searchTerm, this.selectAllLabel, this.unselectAllLabel);
|
|
563
577
|
return this.filteredOptionsCache;
|
|
564
578
|
}
|
|
565
579
|
getVirtualRows() {
|
|
@@ -568,6 +582,9 @@ export class SelectList {
|
|
|
568
582
|
return this.virtualRowsCache;
|
|
569
583
|
}
|
|
570
584
|
const rows = [];
|
|
585
|
+
if (filteredOptions.length === 0 && this.normalizeSearchText(this.searchTerm)) {
|
|
586
|
+
rows.push({ kind: 'empty', key: 'empty' });
|
|
587
|
+
}
|
|
571
588
|
let previousGroup;
|
|
572
589
|
filteredOptions.forEach((option, optionIndex) => {
|
|
573
590
|
const group = option.group?.trim() || undefined;
|
|
@@ -594,27 +611,44 @@ export class SelectList {
|
|
|
594
611
|
return rows.findIndex((row) => row.kind === 'option' && row.optionIndex === optionIndex);
|
|
595
612
|
}
|
|
596
613
|
getViewportHeight() {
|
|
597
|
-
const
|
|
598
|
-
return
|
|
614
|
+
const rows = this.getVirtualRows();
|
|
615
|
+
return this.getRowsHeight(rows, Math.min(rows.length, this.effectiveVisibleItems));
|
|
599
616
|
}
|
|
600
|
-
getRowHeight() {
|
|
617
|
+
getRowHeight(row) {
|
|
618
|
+
if (row?.kind === 'option' && this.isSelectAllOption(row.option)) {
|
|
619
|
+
return this.measuredSelectAllItemHeight ?? this.effectiveItemHeight;
|
|
620
|
+
}
|
|
601
621
|
return this.measuredItemHeight ?? this.effectiveItemHeight;
|
|
602
622
|
}
|
|
623
|
+
getRowsHeight(rows, endIndex = rows.length) {
|
|
624
|
+
const rowCount = Math.min(rows.length, Math.max(0, endIndex));
|
|
625
|
+
if (rowCount === 0)
|
|
626
|
+
return 0;
|
|
627
|
+
const itemHeight = this.measuredItemHeight ?? this.effectiveItemHeight;
|
|
628
|
+
return this.getRowHeight(rows[0]) + (rowCount - 1) * itemHeight;
|
|
629
|
+
}
|
|
630
|
+
getRowTop(rows, rowIndex) {
|
|
631
|
+
return this.getRowsHeight(rows, rowIndex);
|
|
632
|
+
}
|
|
603
633
|
getVisibleRange() {
|
|
604
634
|
const rows = this.getVirtualRows();
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
635
|
+
if (rows.length === 0)
|
|
636
|
+
return { startIndex: 0, endIndex: 0 };
|
|
637
|
+
const viewportHeight = this.getViewportHeight();
|
|
638
|
+
const viewportBottom = this.scrollTop + viewportHeight;
|
|
639
|
+
const firstRowHeight = this.getRowHeight(rows[0]);
|
|
640
|
+
const itemHeight = this.measuredItemHeight ?? this.effectiveItemHeight;
|
|
641
|
+
const firstVisibleIndex = Math.min(rows.length - 1, this.scrollTop < firstRowHeight ? 0 : 1 + Math.floor((this.scrollTop - firstRowHeight) / itemHeight));
|
|
642
|
+
const endIndex = Math.min(rows.length, Math.max(firstVisibleIndex, 1 + Math.ceil((viewportBottom - firstRowHeight) / itemHeight)));
|
|
643
|
+
return {
|
|
644
|
+
startIndex: Math.max(0, firstVisibleIndex - this.effectiveOverscan),
|
|
645
|
+
endIndex: Math.min(rows.length, endIndex + this.effectiveOverscan),
|
|
646
|
+
};
|
|
613
647
|
}
|
|
614
648
|
clampScrollPosition() {
|
|
615
649
|
if (!this.listElement)
|
|
616
650
|
return;
|
|
617
|
-
const totalHeight = this.
|
|
651
|
+
const totalHeight = this.getRowsHeight(this.getVirtualRows());
|
|
618
652
|
const maxScrollTop = Math.max(0, totalHeight - this.getViewportHeight());
|
|
619
653
|
const nextScrollTop = Math.min(Math.max(0, this.listElement.scrollTop), maxScrollTop);
|
|
620
654
|
if (this.listElement.scrollTop !== nextScrollTop) {
|
|
@@ -629,19 +663,69 @@ export class SelectList {
|
|
|
629
663
|
return;
|
|
630
664
|
if (this.measurementFrame !== null)
|
|
631
665
|
return;
|
|
666
|
+
if (this.measurementInProgress) {
|
|
667
|
+
this.measurementRequested = true;
|
|
668
|
+
return;
|
|
669
|
+
}
|
|
632
670
|
this.measurementFrame = requestAnimationFrame(async () => {
|
|
633
671
|
this.measurementFrame = null;
|
|
634
|
-
|
|
672
|
+
this.measurementInProgress = true;
|
|
673
|
+
try {
|
|
674
|
+
await this.measureItemHeight();
|
|
675
|
+
}
|
|
676
|
+
finally {
|
|
677
|
+
this.measurementInProgress = false;
|
|
678
|
+
if (this.measurementRequested) {
|
|
679
|
+
this.measurementRequested = false;
|
|
680
|
+
this.scheduleMeasureItemHeight();
|
|
681
|
+
}
|
|
682
|
+
}
|
|
635
683
|
});
|
|
636
684
|
}
|
|
637
685
|
async measureItemHeight() {
|
|
638
|
-
const
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
686
|
+
const renderedOptions = Array.from(this.listElement?.querySelectorAll('br-select-option') ?? []);
|
|
687
|
+
const originalHeights = renderedOptions.map((element) => element.style.height);
|
|
688
|
+
renderedOptions.forEach((element) => {
|
|
689
|
+
element.style.height = 'auto';
|
|
690
|
+
});
|
|
691
|
+
let measurements;
|
|
692
|
+
try {
|
|
693
|
+
await this.waitForNextFrame();
|
|
694
|
+
measurements = await Promise.allSettled(renderedOptions.map((element) => element.getItemHeight?.()));
|
|
695
|
+
}
|
|
696
|
+
finally {
|
|
697
|
+
renderedOptions.forEach((element, index) => {
|
|
698
|
+
element.style.height = originalHeights[index];
|
|
699
|
+
});
|
|
700
|
+
}
|
|
701
|
+
const measuredOptions = measurements.map((measurement, index) => {
|
|
702
|
+
if (measurement.status === 'rejected')
|
|
703
|
+
throw measurement.reason;
|
|
704
|
+
return { element: renderedOptions[index], height: measurement.value };
|
|
705
|
+
});
|
|
706
|
+
const filteredOptions = this.getFilteredOptions();
|
|
707
|
+
const selectAllOption = measuredOptions.find(({ element }) => {
|
|
708
|
+
const optionIndex = Number(element.dataset.optionIndex);
|
|
709
|
+
const option = filteredOptions[optionIndex];
|
|
710
|
+
return Number.isInteger(optionIndex) && option !== undefined && this.isSelectAllOption(option);
|
|
711
|
+
});
|
|
712
|
+
const regularOption = measuredOptions.find(({ element }) => {
|
|
713
|
+
const optionIndex = Number(element.dataset.optionIndex);
|
|
714
|
+
const option = filteredOptions[optionIndex];
|
|
715
|
+
return Number.isInteger(optionIndex) && option !== undefined && !this.isSelectAllOption(option);
|
|
716
|
+
});
|
|
717
|
+
const nextSelectAllHeight = selectAllOption?.height;
|
|
718
|
+
const nextItemHeight = regularOption?.height;
|
|
719
|
+
const hasSelectAllHeight = Boolean(nextSelectAllHeight && nextSelectAllHeight > 0);
|
|
720
|
+
const hasItemHeight = Boolean(nextItemHeight && nextItemHeight > 0);
|
|
721
|
+
if ((!hasSelectAllHeight || nextSelectAllHeight === this.measuredSelectAllItemHeight) &&
|
|
722
|
+
(!hasItemHeight || nextItemHeight === this.measuredItemHeight)) {
|
|
643
723
|
return;
|
|
644
|
-
|
|
724
|
+
}
|
|
725
|
+
if (nextSelectAllHeight && nextSelectAllHeight > 0)
|
|
726
|
+
this.measuredSelectAllItemHeight = nextSelectAllHeight;
|
|
727
|
+
if (nextItemHeight && nextItemHeight > 0)
|
|
728
|
+
this.measuredItemHeight = nextItemHeight;
|
|
645
729
|
this.clampScrollPosition();
|
|
646
730
|
}
|
|
647
731
|
/**
|
|
@@ -660,9 +744,9 @@ export class SelectList {
|
|
|
660
744
|
const rowIndex = this.getRowIndexForOption(rows, index);
|
|
661
745
|
if (rowIndex < 0)
|
|
662
746
|
return;
|
|
663
|
-
const rowHeight = this.getRowHeight();
|
|
747
|
+
const rowHeight = this.getRowHeight(rows[rowIndex]);
|
|
664
748
|
const viewportHeight = this.getViewportHeight();
|
|
665
|
-
const optionTop = rowIndex
|
|
749
|
+
const optionTop = this.getRowTop(rows, rowIndex);
|
|
666
750
|
const optionBottom = optionTop + rowHeight;
|
|
667
751
|
const viewportTop = this.listElement.scrollTop;
|
|
668
752
|
const viewportBottom = viewportTop + viewportHeight;
|
|
@@ -673,7 +757,7 @@ export class SelectList {
|
|
|
673
757
|
else if (optionBottom > viewportBottom) {
|
|
674
758
|
nextScrollTop = optionBottom - viewportHeight;
|
|
675
759
|
}
|
|
676
|
-
const maxScrollTop = Math.max(0, rows
|
|
760
|
+
const maxScrollTop = Math.max(0, this.getRowsHeight(rows) - viewportHeight);
|
|
677
761
|
nextScrollTop = Math.min(Math.max(0, nextScrollTop), maxScrollTop);
|
|
678
762
|
if (nextScrollTop === viewportTop)
|
|
679
763
|
return;
|
|
@@ -688,31 +772,30 @@ export class SelectList {
|
|
|
688
772
|
};
|
|
689
773
|
}
|
|
690
774
|
renderOption(option, optionIndex, rowIndex) {
|
|
691
|
-
const
|
|
692
|
-
const
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
// interno anterior do br-select-option/br-item.
|
|
697
|
-
key: `${option.value}:${option.selected ? 'selected' : 'unselected'}:${option.group ?? ''}`, label: option.label, ref: (element) => {
|
|
775
|
+
const isSelectAllOption = this.isSelectAllOption(option);
|
|
776
|
+
const row = this.getVirtualRows()[rowIndex];
|
|
777
|
+
const rowHeight = this.getRowHeight(row);
|
|
778
|
+
const optionPart = isSelectAllOption ? 'option select-all' : 'option';
|
|
779
|
+
return (h("br-select-option", { part: optionPart, active: optionIndex === this.effectiveActiveOptionIndex, "data-option-index": optionIndex, density: isSelectAllOption ? 'small' : this.effectiveDensity, disabled: option.disabled, id: `${this.el.id || 'br-select-list'}-option-${optionIndex}`, indeterminate: option.indeterminate, key: `${option.value}:${option.selected ? 'selected' : 'unselected'}:${option.group ?? ''}`, label: option.label, ref: (element) => {
|
|
698
780
|
if (element && option.group)
|
|
699
781
|
element.setAttribute('group', option.group);
|
|
700
782
|
}, selected: option.selected, "show-checkbox": this.effectiveMultiple, style: {
|
|
701
783
|
boxSizing: 'border-box',
|
|
702
784
|
height: `${rowHeight}px`,
|
|
703
785
|
position: 'absolute',
|
|
704
|
-
top: `${rowIndex
|
|
786
|
+
top: `${this.getRowTop(this.getVirtualRows(), rowIndex)}px`,
|
|
705
787
|
left: '0',
|
|
706
788
|
right: '0',
|
|
707
789
|
}, value: option.value }, option.content ? h("span", { innerHTML: option.content }) : (option.label ?? option.value)));
|
|
708
790
|
}
|
|
709
791
|
renderGroup(row, rowIndex) {
|
|
710
|
-
const
|
|
792
|
+
const rows = this.getVirtualRows();
|
|
793
|
+
const rowHeight = this.getRowHeight(rows[rowIndex]);
|
|
711
794
|
return (h("div", { "aria-hidden": "true", class: "option-group-label", key: row.key, part: "option-group", role: "presentation", style: {
|
|
712
795
|
boxSizing: 'border-box',
|
|
713
796
|
height: `${rowHeight}px`,
|
|
714
797
|
position: 'absolute',
|
|
715
|
-
top: `${rowIndex
|
|
798
|
+
top: `${this.getRowTop(rows, rowIndex)}px`,
|
|
716
799
|
left: '0',
|
|
717
800
|
right: '0',
|
|
718
801
|
} }, row.group));
|
|
@@ -726,7 +809,7 @@ export class SelectList {
|
|
|
726
809
|
}
|
|
727
810
|
getVirtualSpacerStyle() {
|
|
728
811
|
return {
|
|
729
|
-
height: `${this.
|
|
812
|
+
height: `${this.getRowsHeight(this.getVirtualRows())}px`,
|
|
730
813
|
position: 'relative',
|
|
731
814
|
};
|
|
732
815
|
}
|
|
@@ -740,21 +823,46 @@ export class SelectList {
|
|
|
740
823
|
}
|
|
741
824
|
renderVirtualOptions() {
|
|
742
825
|
const { startIndex, visibleRows } = this.getVirtualVisibleRows();
|
|
743
|
-
|
|
744
|
-
return (h("div", { part: "empty-option", role: "option", "aria-selected": "false", tabIndex: 0 }, "Nenhum resultado encontrado"));
|
|
745
|
-
}
|
|
746
|
-
return (h("div", { style: this.getVirtualSpacerStyle() }, visibleRows.map((row, relativeIndex) => {
|
|
826
|
+
const renderedRows = visibleRows.flatMap((row, relativeIndex) => {
|
|
747
827
|
const rowIndex = startIndex + relativeIndex;
|
|
748
828
|
if (row.kind === 'group')
|
|
749
|
-
return this.renderGroup(row, rowIndex);
|
|
750
|
-
|
|
751
|
-
|
|
829
|
+
return [this.renderGroup(row, rowIndex)];
|
|
830
|
+
if (row.kind === 'empty') {
|
|
831
|
+
return [
|
|
832
|
+
h("div", { key: row.key, part: "empty-option", role: "status", style: {
|
|
833
|
+
boxSizing: 'border-box',
|
|
834
|
+
height: `${this.getRowHeight(row)}px`,
|
|
835
|
+
position: 'absolute',
|
|
836
|
+
top: `${this.getRowTop(this.getVirtualRows(), rowIndex)}px`,
|
|
837
|
+
left: '0',
|
|
838
|
+
right: '0',
|
|
839
|
+
} }, "Nenhum resultado encontrado"),
|
|
840
|
+
];
|
|
841
|
+
}
|
|
842
|
+
const option = this.renderOption(row.option, row.optionIndex, rowIndex);
|
|
843
|
+
const nextRow = this.getVirtualRows()[rowIndex + 1];
|
|
844
|
+
if (this.hideDividers || nextRow?.kind !== 'option')
|
|
845
|
+
return [option];
|
|
846
|
+
// O divisor ocupa a borda da linha, sem criar um índice ou altura extra.
|
|
847
|
+
return [
|
|
848
|
+
option,
|
|
849
|
+
h("br-divider", { key: `divider-${row.key}`, part: "option-divider", "aria-hidden": "true", orientation: "horizontal", thickness: "small", marginTop: 0, marginBottom: 0, marginLeft: 0, marginRight: 0, style: {
|
|
850
|
+
position: 'absolute',
|
|
851
|
+
top: `calc(${this.getRowTop(this.getVirtualRows(), rowIndex + 1)}px - var(--surface-width-sm, 1px))`,
|
|
852
|
+
left: '0',
|
|
853
|
+
right: '0',
|
|
854
|
+
pointerEvents: 'none',
|
|
855
|
+
zIndex: '1',
|
|
856
|
+
} }),
|
|
857
|
+
];
|
|
858
|
+
});
|
|
859
|
+
return h("div", { style: this.getVirtualSpacerStyle() }, renderedRows);
|
|
752
860
|
}
|
|
753
861
|
renderLoading() {
|
|
754
862
|
return (h("div", { part: "loading", role: "status", "aria-live": "polite" }, h("slot", { name: "loading" }, h("br-loading", { density: this.effectiveDensity, label: "Buscando op\u00E7\u00F5es" }))));
|
|
755
863
|
}
|
|
756
864
|
render() {
|
|
757
|
-
return (h(Host, { key: '
|
|
865
|
+
return (h(Host, { key: 'c4ea2157dc925805d0542eae1a70b67375fcb12c' }, h("div", { key: 'e55d780af8ef05765173998e781f2cf0a4125988', class: this.getCssClassMap(), part: "list", tabIndex: -1, ref: (el) => (this.listElement = el), onScroll: this.handleScroll, style: this.getVirtualScrollStyle() }, this.loading ? this.renderLoading() : this.renderVirtualOptions())));
|
|
758
866
|
}
|
|
759
867
|
static get is() { return "br-select-list"; }
|
|
760
868
|
static get encapsulation() { return "shadow"; }
|
|
@@ -792,7 +900,7 @@ export class SelectList {
|
|
|
792
900
|
"name": "default",
|
|
793
901
|
"text": "'medium'"
|
|
794
902
|
}],
|
|
795
|
-
"text": "Define a densidade visual da lista, das op\u00E7\u00F5es e do indicador de carregamento.\nAceita `small`, `medium` ou `large`. Valores inv\u00E1lidos usam `medium`."
|
|
903
|
+
"text": "Define a densidade visual da lista, das op\u00E7\u00F5es regulares e do indicador de carregamento.\nA op\u00E7\u00E3o sint\u00E9tica de selecionar todos permanece com densidade `small`.\nAceita `small`, `medium` ou `large`. Valores inv\u00E1lidos usam `medium`."
|
|
796
904
|
},
|
|
797
905
|
"getter": false,
|
|
798
906
|
"setter": false,
|
|
@@ -833,7 +941,7 @@ export class SelectList {
|
|
|
833
941
|
},
|
|
834
942
|
"searchTerm": {
|
|
835
943
|
"type": "string",
|
|
836
|
-
"mutable":
|
|
944
|
+
"mutable": true,
|
|
837
945
|
"complexType": {
|
|
838
946
|
"original": "string",
|
|
839
947
|
"resolved": "string",
|
|
@@ -946,6 +1054,29 @@ export class SelectList {
|
|
|
946
1054
|
"attribute": "overscan",
|
|
947
1055
|
"defaultValue": "0"
|
|
948
1056
|
},
|
|
1057
|
+
"hideDividers": {
|
|
1058
|
+
"type": "boolean",
|
|
1059
|
+
"mutable": false,
|
|
1060
|
+
"complexType": {
|
|
1061
|
+
"original": "boolean",
|
|
1062
|
+
"resolved": "boolean",
|
|
1063
|
+
"references": {}
|
|
1064
|
+
},
|
|
1065
|
+
"required": false,
|
|
1066
|
+
"optional": false,
|
|
1067
|
+
"docs": {
|
|
1068
|
+
"tags": [{
|
|
1069
|
+
"name": "default",
|
|
1070
|
+
"text": "false"
|
|
1071
|
+
}],
|
|
1072
|
+
"text": "Oculta os divisores entre op\u00E7\u00F5es consecutivas, sem alterar a altura das linhas."
|
|
1073
|
+
},
|
|
1074
|
+
"getter": false,
|
|
1075
|
+
"setter": false,
|
|
1076
|
+
"reflect": true,
|
|
1077
|
+
"attribute": "hide-dividers",
|
|
1078
|
+
"defaultValue": "false"
|
|
1079
|
+
},
|
|
949
1080
|
"selectAllLabel": {
|
|
950
1081
|
"type": "string",
|
|
951
1082
|
"mutable": false,
|
|
@@ -1025,7 +1156,8 @@ export class SelectList {
|
|
|
1025
1156
|
"isOpen": {},
|
|
1026
1157
|
"isMultiple": {},
|
|
1027
1158
|
"scrollTop": {},
|
|
1028
|
-
"measuredItemHeight": {}
|
|
1159
|
+
"measuredItemHeight": {},
|
|
1160
|
+
"measuredSelectAllItemHeight": {}
|
|
1029
1161
|
};
|
|
1030
1162
|
}
|
|
1031
1163
|
static get methods() {
|
|
@@ -1287,6 +1419,27 @@ export class SelectList {
|
|
|
1287
1419
|
}]
|
|
1288
1420
|
}
|
|
1289
1421
|
},
|
|
1422
|
+
"revealOption": {
|
|
1423
|
+
"complexType": {
|
|
1424
|
+
"signature": "(index: number) => Promise<boolean>",
|
|
1425
|
+
"parameters": [{
|
|
1426
|
+
"name": "index",
|
|
1427
|
+
"type": "number",
|
|
1428
|
+
"docs": ""
|
|
1429
|
+
}],
|
|
1430
|
+
"references": {
|
|
1431
|
+
"Promise": {
|
|
1432
|
+
"location": "global",
|
|
1433
|
+
"id": "global::Promise"
|
|
1434
|
+
}
|
|
1435
|
+
},
|
|
1436
|
+
"return": "Promise<boolean>"
|
|
1437
|
+
},
|
|
1438
|
+
"docs": {
|
|
1439
|
+
"text": "Torna o item ativo vis\u00EDvel sem retirar o foco do campo.",
|
|
1440
|
+
"tags": []
|
|
1441
|
+
}
|
|
1442
|
+
},
|
|
1290
1443
|
"setOptionSelected": {
|
|
1291
1444
|
"complexType": {
|
|
1292
1445
|
"signature": "(index: number, selected?: boolean) => Promise<boolean>",
|
|
@@ -1351,4 +1504,3 @@ export class SelectList {
|
|
|
1351
1504
|
}
|
|
1352
1505
|
SelectList.SELECT_ALL_LABEL = 'Selecionar todos';
|
|
1353
1506
|
SelectList.DESELECT_ALL_LABEL = 'Desselecionar todos';
|
|
1354
|
-
SelectList.SELECT_ALL_VALUE = 'Alternar todos';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
*,*::before,*::after{box-sizing:border-box}:host{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}main{display:block}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace;font-size:1em}a{background-color:rgba(0,0,0,0)}b,strong{font-weight:bolder}code{font-family:monospace;font-size:1em}small{font-size:80%}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{appearance:none}::-webkit-file-upload-button{appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.d-none{display:none !important}@media(min-width: 576px){.d-sm-block{display:block !important}.d-sm-flex{display:flex !important}}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{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)}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.align-items-center{align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter)*.5);padding-right:calc(var(--grid-gutter)*.5);width:100%}.col{flex:1 0 0%;min-width:8.3333333333%}.col-auto{flex:0 0 auto;width:auto}.col-2{flex-basis:16.6666666667%;max-width:16.6666666667%}.container,.container-fluid,.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:flex;flex-wrap:wrap;margin-left:calc(var(--grid-gutter)*-0.5);margin-right:calc(var(--grid-gutter)*-0.5)}@media(min-width: 576px){.container,.container-lg,.container-fluid{--grid-margin: var(--grid-tablet-margin)}.row{--grid-gutter: var(--grid-tablet-gutter)}.container{--grid-maxwidth: calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}.col-sm-4{flex-basis:33.3333333333%;max-width:33.3333333333%}}@media(min-width: 992px){.container,.container-lg,.container-fluid{--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,.container-fluid{--grid-margin: var(--grid-desktop-margin)}.row{--grid-gutter: var(--grid-desktop-gutter)}.container,.container-lg{--grid-maxwidth: calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}.col-lg-3{flex-basis:25%;max-width:25%}}@media(min-width: 1600px){.container,.container-lg,.container-fluid{--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))}}.ease{animation-timing-function:cubic-bezier(0.25, 0.1, 0.25, 1)}.ease-out{animation-timing-function:cubic-bezier(0, 0, 0.58, 1)}.ease-in-out{animation-timing-function:cubic-bezier(0.42, 0, 0.58, 1)}.fast{animation-duration:var(--duration-fast)}.slow{animation-duration:var(--duration-slow)}.mt-1{margin-top:var(--spacing-scale-half) !important}.mr-1{margin-right:var(--spacing-scale-half) !important}.mb-1{margin-bottom:var(--spacing-scale-half) !important}.ml-1{margin-left:var(--spacing-scale-half) !important}.mx-3{margin-left:var(--spacing-scale-2x) !important;margin-right:var(--spacing-scale-2x) !important}.mb-4{margin-bottom:var(--spacing-scale-3x) !important}.ml-auto{margin-left:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}@media(min-width: 576px){.ml-sm-0{margin-left:var(--spacing-scale-default) !important}}.highlight{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}fieldset[disabled]{opacity:1}.text-center{text-align:center !important}.text-right{text-align:right !important}.text-nowrap{white-space:nowrap !important}.text-uppercase{text-transform:uppercase !important}.text-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}}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media(min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset: var(--spacing-scale-half)}a:focus{outline:none}a.focus-visible,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:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}a{color:var(--interactive);text-decoration:none}.main-content a{text-decoration:underline}button{cursor:pointer}img{max-width:100%;vertical-align:middle}h2,.h2{color:var(--color);font-size:var(--font-size-scale-up-03);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-2xh);margin-top:var(--spacing-scale-3xh);padding-bottom:var(--spacing-scale-2xh)}@media(min-width: 576px){.h2,h2{font-size:var(--font-size-scale-up-05);font-weight:var(--font-weight-regular)}}ul,ol{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}table{--table-background: var(--background);--table-color: var(--color);--table-border-color: var(--gray-20);--table-border-style: solid;--table-border-width: 1px;--table-hover: var(--color-rgb);--table-padding: var(--spacing-scale-3x);--table-font-weight: var(--font-weight-medium);--table-th-background: var(--background-alternative);--table-th-font-weight: var(--font-weight-semi-bold);--table-row-size: var(--spacing-scale-2x);border-collapse:collapse;width:100%}tr.selected,tr.is-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)}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)}fieldset,.fieldset{border:var(--surface-width-none);margin-bottom:var(--spacing-scale-5x);margin-top:0;padding:0}legend,.legend{color:var(--color);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-2x);margin-top:var(--spacing-scale-2x)}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}code,.code{background:var(--gray-5);border-radius:4px;color:var(--gray-80);display:inline-block;font-family:monospace;font-size:var(--font-size-scale-base);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);padding:var(--spacing-scale-half)}pre,.pre{background:var(--gray-5);margin:var(--spacing-scale-2x) 0 var(--spacing-scale-4x);padding:var(--spacing-scale-2x)}pre code,.pre code{display:inline;padding:0}*[data-toggle=collapse]:not(:disabled):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,*[data-toggle=collapse]:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}@media(prefers-reduced-motion: reduce){:host,:host::before,:host::after,:host *,:host *::before,:host *::after{animation:none !important;scroll-behavior:auto !important;transition:none !important}}:host-context([data-wbc-reduced-motion=true])::before,:host-context([data-wbc-reduced-motion=true])::after,:host-context([data-wbc-reduced-motion=true]) *,:host-context([data-wbc-reduced-motion=true]) *::before,:host-context([data-wbc-reduced-motion=true]) *::after{animation:none !important;scroll-behavior:auto !important;transition:none !important}:host{--br-select-option-bg-color: var(--bg-color, var(--background, var(--background-color, #fff)));contain:paint;display:block;background-color:var(--br-select-option-bg-color);line-height:0;overflow:hidden;position:relative}:host(:focus-within){contain:none;overflow:visible}:host([active]){contain:none;overflow:visible;z-index:1}:host([active])::after{border:var(--focus-width) var(--focus-style) var(--focus);box-sizing:border-box;content:"";inset:0;pointer-events:none;position:absolute}.br-select-option{opacity:1 !important}br-item{--br-item-bg-color: var(--br-select-option-bg-color);background-color:var(--br-select-option-bg-color);display:block;line-height:normal;overflow:visible;width:100%}br-checkbox{--border-color: var(--gray-40, #888);--disabled: 1;pointer-events:none}:host(:not([disabled])) br-item::part(item){cursor:pointer}:host([disabled]){background:var(--br-select-option-bg-color) !important;cursor:not-allowed}br-item[disabled]{--br-item-bg-color: var(--br-select-option-bg-color);background:var(--br-select-option-bg-color) !important;cursor:not-allowed}:host([disabled]) ::slotted(*){opacity:var(--disabled) !important}.br-select-option-label{display:block;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host([disabled]) .br-select-option-label{opacity:var(--disabled) !important}.br-select-option-label ::slotted(*){display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
|
|
1
|
+
*,*::before,*::after{box-sizing:border-box}:host{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}main{display:block}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace;font-size:1em}a{background-color:rgba(0,0,0,0)}b,strong{font-weight:bolder}small{font-size:80%}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{appearance:none}::-webkit-file-upload-button{appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.d-none{display:none !important}@media(min-width: 576px){.d-sm-block{display:block !important}.d-sm-flex{display:flex !important}}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{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)}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.align-items-center{align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter)*.5);padding-right:calc(var(--grid-gutter)*.5);width:100%}.col{flex:1 0 0%;min-width:8.3333333333%}.col-auto{flex:0 0 auto;width:auto}.col-2{flex-basis:16.6666666667%;max-width:16.6666666667%}.container,.container-fluid,.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:flex;flex-wrap:wrap;margin-left:calc(var(--grid-gutter)*-0.5);margin-right:calc(var(--grid-gutter)*-0.5)}@media(min-width: 576px){.container,.container-lg,.container-fluid{--grid-margin: var(--grid-tablet-margin)}.row{--grid-gutter: var(--grid-tablet-gutter)}.container{--grid-maxwidth: calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}.col-sm-4{flex-basis:33.3333333333%;max-width:33.3333333333%}}@media(min-width: 992px){.container,.container-lg,.container-fluid{--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,.container-fluid{--grid-margin: var(--grid-desktop-margin)}.row{--grid-gutter: var(--grid-desktop-gutter)}.container,.container-lg{--grid-maxwidth: calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}.col-lg-3{flex-basis:25%;max-width:25%}}@media(min-width: 1600px){.container,.container-lg,.container-fluid{--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))}}.ease{animation-timing-function:cubic-bezier(0.25, 0.1, 0.25, 1)}.ease-out{animation-timing-function:cubic-bezier(0, 0, 0.58, 1)}.ease-in-out{animation-timing-function:cubic-bezier(0.42, 0, 0.58, 1)}.fast{animation-duration:var(--duration-fast)}.slow{animation-duration:var(--duration-slow)}.mt-1{margin-top:var(--spacing-scale-half) !important}.mr-1{margin-right:var(--spacing-scale-half) !important}.mb-1{margin-bottom:var(--spacing-scale-half) !important}.ml-1{margin-left:var(--spacing-scale-half) !important}.mx-3{margin-left:var(--spacing-scale-2x) !important;margin-right:var(--spacing-scale-2x) !important}.mb-4{margin-bottom:var(--spacing-scale-3x) !important}.ml-auto{margin-left:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}@media(min-width: 576px){.ml-sm-0{margin-left:var(--spacing-scale-default) !important}}.highlight{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}fieldset[disabled]{opacity:1}.text-center{text-align:center !important}.text-right{text-align:right !important}.text-nowrap{white-space:nowrap !important}.text-uppercase{text-transform:uppercase !important}.text-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}}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media(min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset: var(--spacing-scale-half)}a:focus{outline:none}a.focus-visible,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:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}a{color:var(--interactive);text-decoration:none}.main-content a{text-decoration:underline}button{cursor:pointer}img{max-width:100%;vertical-align:middle}h2,.h2{color:var(--color);font-size:var(--font-size-scale-up-03);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-2xh);margin-top:var(--spacing-scale-3xh);padding-bottom:var(--spacing-scale-2xh)}@media(min-width: 576px){.h2,h2{font-size:var(--font-size-scale-up-05);font-weight:var(--font-weight-regular)}}ul,ol{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}table{--table-background: var(--background);--table-color: var(--color);--table-border-color: var(--gray-20);--table-border-style: solid;--table-border-width: 1px;--table-hover: var(--color-rgb);--table-padding: var(--spacing-scale-3x);--table-font-weight: var(--font-weight-medium);--table-th-background: var(--background-alternative);--table-th-font-weight: var(--font-weight-semi-bold);--table-row-size: var(--spacing-scale-2x);border-collapse:collapse;width:100%}tr.selected,tr.is-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)}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)}fieldset,.fieldset{border:var(--surface-width-none);margin-bottom:var(--spacing-scale-5x);margin-top:0;padding:0}legend,.legend{color:var(--color);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-2x);margin-top:var(--spacing-scale-2x)}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}pre,.pre{background:var(--gray-5);margin:var(--spacing-scale-2x) 0 var(--spacing-scale-4x);padding:var(--spacing-scale-2x)}*[data-toggle=collapse]:not(:disabled):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,*[data-toggle=collapse]:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}@media(prefers-reduced-motion: reduce){:host,:host::before,:host::after,:host *,:host *::before,:host *::after{animation:none !important;scroll-behavior:auto !important;transition:none !important}}:host-context([data-wbc-reduced-motion=true])::before,:host-context([data-wbc-reduced-motion=true])::after,:host-context([data-wbc-reduced-motion=true]) *,:host-context([data-wbc-reduced-motion=true]) *::before,:host-context([data-wbc-reduced-motion=true]) *::after{animation:none !important;scroll-behavior:auto !important;transition:none !important}:host{--br-select-option-bg-color: var(--bg-color, var(--background, var(--background-color, #fff)));contain:paint;display:block;background-color:var(--br-select-option-bg-color);line-height:0;overflow:hidden;position:relative}:host(:focus-within){contain:none;overflow:visible}:host([active]){contain:none;overflow:visible;z-index:1}:host([active])::after{border:var(--focus-width) var(--focus-style) var(--focus);box-sizing:border-box;content:"";inset:0;pointer-events:none;position:absolute}:host([part~=select-all]){--br-select-option-bg-color: var(--gray-2)}:host([part~=select-all]) .br-select-option-label{font-weight:var(--font-weight-semi-bold)}.br-select-option{opacity:1 !important}br-item{--br-item-bg-color: var(--br-select-option-bg-color);background-color:var(--br-select-option-bg-color);display:block;line-height:normal;overflow:visible;width:100%}:host(:not([disabled])) br-item:hover{--br-item-bg-color: color-mix(in srgb, var(--color) calc(var(--surface-opacity-xs) * 100%), transparent)}:host(:not([disabled])) br-item:active{--br-item-bg-color: color-mix(in srgb, var(--color) calc(var(--surface-opacity-md) * 100%), transparent)}:host([selected]) br-item,:host([selected]) br-item:hover,:host([selected]) br-item:active{--br-item-bg-color: var(--blue-warm-vivid-50)}:host([selected]:not([disabled])) br-item:active{--br-item-bg-color: color-mix(in srgb, var(--color) calc(var(--surface-opacity-md) * 100%), transparent)}:host([selected]) br-item::part(item){background-color:var(--blue-warm-vivid-50)}:host([selected]:not([disabled])) br-item:active::part(item){background-color:color-mix(in srgb, var(--blue-warm-vivid-50) calc(var(--surface-opacity-md) * 100%), transparent);background-image:none}:host(:not([disabled]):active) br-item::part(item){background-color:color-mix(in srgb, var(--color) calc(var(--surface-opacity-md) * 100%), transparent);box-shadow:var(--surface-shadow-none);cursor:pointer}br-item::part(item){align-items:center}br-checkbox{--border-color: var(--gray-40, #888);--disabled: 1;align-self:center;display:inline-flex;align-items:center;margin-block:0;pointer-events:none}:host(:not([disabled])) br-item::part(item){cursor:pointer}:host(:not([disabled])) br-item:active::part(item){box-shadow:var(--surface-shadow-none);cursor:pointer}:host([disabled]){background:var(--br-select-option-bg-color) !important;cursor:not-allowed}br-item[disabled]{--br-item-bg-color: var(--br-select-option-bg-color);background:var(--br-select-option-bg-color) !important;cursor:not-allowed}:host([disabled]) ::slotted(*){opacity:var(--disabled) !important}.br-select-option-label{display:block;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host([disabled]) .br-select-option-label{opacity:var(--disabled) !important}.br-select-option-label ::slotted(*){display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* © https://serpro.gov.br/ - MIT License.
|
|
4
4
|
*/
|
|
5
5
|
import { Host, h } from "@stencil/core";
|
|
6
|
+
import { findComposedOwner } from "../../../shared/utils/ownership";
|
|
6
7
|
import { resolveDensity } from "../../../shared/utils/props";
|
|
7
8
|
import { EMPTY_VALUE_WARNING, MISSING_VALUE_WARNING } from "../select.constants";
|
|
8
9
|
/**
|
|
@@ -78,13 +79,17 @@ export class SelectOption {
|
|
|
78
79
|
this.handleActivation = () => {
|
|
79
80
|
if (this.disabled)
|
|
80
81
|
return;
|
|
81
|
-
const nextSelected = !this.selected;
|
|
82
|
-
if (this.isControlledBySelect)
|
|
82
|
+
const nextSelected = this.isControlledBySingleSelect && this.selected ? true : !this.selected;
|
|
83
|
+
if (this.isControlledBySelect) {
|
|
84
|
+
this.lastStateChangeKey = '';
|
|
83
85
|
this.emitStateChange(nextSelected);
|
|
86
|
+
}
|
|
84
87
|
else
|
|
85
88
|
this.applySelection(nextSelected);
|
|
86
89
|
};
|
|
87
90
|
this.handleKeyDown = (event) => {
|
|
91
|
+
if (this.isControlledBySelect)
|
|
92
|
+
return;
|
|
88
93
|
if (event.key !== 'Enter' && event.key !== ' ')
|
|
89
94
|
return;
|
|
90
95
|
event.preventDefault();
|
|
@@ -135,6 +140,10 @@ export class SelectOption {
|
|
|
135
140
|
// consolida a seleção e atualiza as demais opções por meio do evento.
|
|
136
141
|
this.applySelection(nextSelected);
|
|
137
142
|
}
|
|
143
|
+
get isControlledBySingleSelect() {
|
|
144
|
+
const owner = findComposedOwner(this.el, 'br-select');
|
|
145
|
+
return owner !== null && !(owner.multiple ?? owner.isMultiple);
|
|
146
|
+
}
|
|
138
147
|
emitStateChange(selected = this.selected) {
|
|
139
148
|
const detail = {
|
|
140
149
|
disabled: this.disabled,
|
|
@@ -171,7 +180,7 @@ export class SelectOption {
|
|
|
171
180
|
*/
|
|
172
181
|
applySelection(selected) {
|
|
173
182
|
this.indeterminate = false;
|
|
174
|
-
this.selected = selected;
|
|
183
|
+
this.selected = selected ?? false;
|
|
175
184
|
this.emitStateChange();
|
|
176
185
|
}
|
|
177
186
|
getCssClassMap() {
|
|
@@ -240,7 +249,7 @@ export class SelectOption {
|
|
|
240
249
|
return this.normalizeText(this.el.textContent || '');
|
|
241
250
|
}
|
|
242
251
|
render() {
|
|
243
|
-
return (h(Host, { key: '
|
|
252
|
+
return (h(Host, { key: '62d927d3fc103d76f2c030c931ac1e1802f5c468', part: this.el.getAttribute('part') || 'option', exportparts: "checkbox:checkbox, checkbox:option-checkbox", "aria-disabled": this.disabled ? 'true' : 'false', "aria-label": this.getAccessibleLabel(), "aria-selected": this.selected ? 'true' : 'false', role: "option", tabindex: "-1", onClickCapture: this.handleActivation, onKeyDown: this.handleKeyDown, onMouseEnter: () => {
|
|
244
253
|
this.el.dispatchEvent(new CustomEvent('brInternalSelectOptionHover', {
|
|
245
254
|
bubbles: true,
|
|
246
255
|
composed: true,
|
|
@@ -252,7 +261,7 @@ export class SelectOption {
|
|
|
252
261
|
composed: true,
|
|
253
262
|
detail: { label: this.getResolvedLabel(), value: this.getResolvedValue() },
|
|
254
263
|
}));
|
|
255
|
-
} }, h("br-item", { key: '
|
|
264
|
+
} }, h("br-item", { key: '1c46f284774a8db5e8b805a75cfde08709ae1da9', class: this.getCssClassMap(), density: this.effectiveDensity, disabled: this.disabled, selected: this.selected }, this.showCheckbox && (h("br-checkbox", { key: 'a7164ca2d9f75dff3dde0d882591dd6eb1436a3e', exportparts: "input:checkbox, input:option-checkbox", slot: "start", checked: this.selected, disabled: true, indeterminate: this.indeterminate, name: this.getResolvedValue(), "aria-hidden": "true" })), h("span", { key: '35e6dae591af64c5e077ba5e9c5817a287644093', class: "br-select-option-label" }, h("slot", { key: 'deabf1daf900d9aca934a2c00f5809e2e9862729' }, this.getResolvedLabel())))));
|
|
256
265
|
}
|
|
257
266
|
static get is() { return "br-select-option"; }
|
|
258
267
|
static get encapsulation() { return "shadow"; }
|