@zanichelli/albe-web-components 19.3.0-RC6 → 19.3.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/CHANGELOG.md +31 -0
- package/dist/cjs/_commonjsHelpers-CFO10eej.js +3 -0
- package/dist/cjs/_commonjsHelpers-CFO10eej.js.map +1 -0
- package/dist/cjs/breakpoints-B7vFm-3T.js +3 -0
- package/dist/cjs/breakpoints-B7vFm-3T.js.map +1 -0
- package/dist/cjs/iconset-Cz-UsfoU.js +3 -0
- package/dist/cjs/iconset-Cz-UsfoU.js.map +1 -0
- package/dist/cjs/{index-wGaSHN1_.js → index-Cn7FFDHr.js} +8 -0
- package/dist/cjs/index-Cn7FFDHr.js.map +1 -0
- package/dist/cjs/{index-DnscebL4.js → index-DY2I5wAY.js} +51 -7
- package/dist/cjs/index-DY2I5wAY.js.map +1 -0
- package/dist/cjs/index.cjs.js +9 -2
- package/dist/cjs/index.cjs.js.map +1 -0
- package/dist/cjs/loader.cjs.js +5 -2
- package/dist/cjs/loader.cjs.js.map +1 -0
- package/dist/cjs/reactive-controller-CxJYkamG.js +1446 -0
- package/dist/cjs/reactive-controller-CxJYkamG.js.map +1 -0
- package/dist/cjs/{utils-C5_wGVkJ.js → utils-By4U4KkV.js} +4 -1
- package/dist/cjs/utils-By4U4KkV.js.map +1 -0
- package/dist/cjs/utils-kQZHfpti.js +919 -0
- package/dist/cjs/utils-kQZHfpti.js.map +1 -0
- package/dist/cjs/web-components-library.cjs.js +5 -2
- package/dist/cjs/web-components-library.cjs.js.map +1 -0
- package/dist/cjs/z-accordion.cjs.entry.js +5 -2
- package/dist/cjs/z-accordion.cjs.entry.js.map +1 -0
- package/dist/cjs/z-alert.cjs.entry.js +5 -2
- package/dist/cjs/z-alert.cjs.entry.js.map +1 -0
- package/dist/cjs/z-anchor-navigation.cjs.entry.js +5 -2
- package/dist/cjs/z-anchor-navigation.cjs.entry.js.map +1 -0
- package/dist/cjs/z-app-header-deprecated.cjs.entry.js +5 -2
- package/dist/cjs/z-app-header-deprecated.cjs.entry.js.map +1 -0
- package/dist/cjs/z-app-header_12.cjs.entry.js +45 -109
- package/dist/cjs/z-app-header_12.cjs.entry.js.map +1 -0
- package/dist/cjs/z-aria-alert.cjs.entry.js +5 -2
- package/dist/cjs/z-aria-alert.cjs.entry.js.map +1 -0
- package/dist/cjs/z-avatar.cjs.entry.js +5 -2
- package/dist/cjs/z-avatar.cjs.entry.js.map +1 -0
- package/dist/cjs/z-book-card-app.cjs.entry.js +5 -2
- package/dist/cjs/z-book-card-app.cjs.entry.js.map +1 -0
- package/dist/cjs/z-book-card-deprecated.cjs.entry.js +6 -3
- package/dist/cjs/z-book-card-deprecated.cjs.entry.js.map +1 -0
- package/dist/cjs/z-book-card.cjs.entry.js +5 -2
- package/dist/cjs/z-book-card.cjs.entry.js.map +1 -0
- package/dist/cjs/z-book-cover.cjs.entry.js +4 -1
- package/dist/cjs/z-book-cover.cjs.entry.js.map +1 -0
- package/dist/cjs/z-breadcrumb.cjs.entry.js +6 -3
- package/dist/cjs/z-breadcrumb.cjs.entry.js.map +1 -0
- package/dist/cjs/z-button-sort.cjs.entry.js +4 -1
- package/dist/cjs/z-button-sort.cjs.entry.js.map +1 -0
- package/dist/cjs/z-card.cjs.entry.js +5 -2
- package/dist/cjs/z-card.cjs.entry.js.map +1 -0
- package/dist/cjs/z-carousel.cjs.entry.js +5 -2
- package/dist/cjs/z-carousel.cjs.entry.js.map +1 -0
- package/dist/cjs/z-chip.cjs.entry.js +5 -2
- package/dist/cjs/z-chip.cjs.entry.js.map +1 -0
- package/dist/cjs/z-color-picker.cjs.entry.js +6 -3
- package/dist/cjs/z-color-picker.cjs.entry.js.map +1 -0
- package/dist/cjs/z-combobox.cjs.entry.js +6 -3
- package/dist/cjs/z-combobox.cjs.entry.js.map +1 -0
- package/dist/cjs/z-cover-hero.cjs.entry.js +5 -2
- package/dist/cjs/z-cover-hero.cjs.entry.js.map +1 -0
- package/dist/cjs/z-date-picker.cjs.entry.js +6 -3
- package/dist/cjs/z-date-picker.cjs.entry.js.map +1 -0
- package/dist/cjs/z-dragdrop-area_2.cjs.entry.js +22 -38
- package/dist/cjs/z-dragdrop-area_2.cjs.entry.js.map +1 -0
- package/dist/cjs/z-file-upload.cjs.entry.js +5 -2
- package/dist/cjs/z-file-upload.cjs.entry.js.map +1 -0
- package/dist/cjs/z-file.cjs.entry.js +5 -2
- package/dist/cjs/z-file.cjs.entry.js.map +1 -0
- package/dist/cjs/z-ghost-loading.cjs.entry.js +4 -1
- package/dist/cjs/z-ghost-loading.cjs.entry.js.map +1 -0
- package/dist/cjs/z-info-box.cjs.entry.js +4 -1
- package/dist/cjs/z-info-box.cjs.entry.js.map +1 -0
- package/dist/cjs/z-info-reveal.cjs.entry.js +5 -2
- package/dist/cjs/z-info-reveal.cjs.entry.js.map +1 -0
- package/dist/cjs/z-input-range.cjs.entry.js +145 -0
- package/dist/cjs/z-input-range.cjs.entry.js.map +1 -0
- package/dist/cjs/z-logo.cjs.entry.js +5 -2
- package/dist/cjs/z-logo.cjs.entry.js.map +1 -0
- package/dist/cjs/z-menu-deprecated.cjs.entry.js +4 -1
- package/dist/cjs/z-menu-deprecated.cjs.entry.js.map +1 -0
- package/dist/cjs/z-menu-section-deprecated.cjs.entry.js +4 -1
- package/dist/cjs/z-menu-section-deprecated.cjs.entry.js.map +1 -0
- package/dist/cjs/z-menu-section.cjs.entry.js +6 -3
- package/dist/cjs/z-menu-section.cjs.entry.js.map +1 -0
- package/dist/cjs/z-menu.cjs.entry.js +6 -3
- package/dist/cjs/z-menu.cjs.entry.js.map +1 -0
- package/dist/cjs/z-myz-card-alert.cjs.entry.js +6 -3
- package/dist/cjs/z-myz-card-alert.cjs.entry.js.map +1 -0
- package/dist/cjs/z-myz-card-dictionary.cjs.entry.js +6 -3
- package/dist/cjs/z-myz-card-dictionary.cjs.entry.js.map +1 -0
- package/dist/cjs/z-myz-card-footer-sections.cjs.entry.js +5 -2
- package/dist/cjs/z-myz-card-footer-sections.cjs.entry.js.map +1 -0
- package/dist/cjs/z-myz-card-footer.cjs.entry.js +6 -3
- package/dist/cjs/z-myz-card-footer.cjs.entry.js.map +1 -0
- package/dist/cjs/z-myz-card-icon.cjs.entry.js +5 -2
- package/dist/cjs/z-myz-card-icon.cjs.entry.js.map +1 -0
- package/dist/cjs/z-myz-card-info.cjs.entry.js +7 -4
- package/dist/cjs/z-myz-card-info.cjs.entry.js.map +1 -0
- package/dist/cjs/z-myz-card-list.cjs.entry.js +5 -2
- package/dist/cjs/z-myz-card-list.cjs.entry.js.map +1 -0
- package/dist/cjs/z-myz-card_4.cjs.entry.js +9 -6
- package/dist/cjs/z-myz-card_4.cjs.entry.js.map +1 -0
- package/dist/cjs/z-myz-list-item.cjs.entry.js +7 -4
- package/dist/cjs/z-myz-list-item.cjs.entry.js.map +1 -0
- package/dist/cjs/z-myz-list.cjs.entry.js +5 -2
- package/dist/cjs/z-myz-list.cjs.entry.js.map +1 -0
- package/dist/cjs/z-navigation-tabs.cjs.entry.js +7 -4
- package/dist/cjs/z-navigation-tabs.cjs.entry.js.map +1 -0
- package/dist/cjs/z-notification.cjs.entry.js +5 -2
- package/dist/cjs/z-notification.cjs.entry.js.map +1 -0
- package/dist/cjs/z-otp.cjs.entry.js +7 -4
- package/dist/cjs/z-otp.cjs.entry.js.map +1 -0
- package/dist/cjs/z-pagination.cjs.entry.js +5 -2
- package/dist/cjs/z-pagination.cjs.entry.js.map +1 -0
- package/dist/cjs/z-panel-elem.cjs.entry.js +6 -3
- package/dist/cjs/z-panel-elem.cjs.entry.js.map +1 -0
- package/dist/cjs/z-popover.cjs.entry.js +7 -4
- package/dist/cjs/z-popover.cjs.entry.js.map +1 -0
- package/dist/cjs/z-range-picker.cjs.entry.js +6 -3
- package/dist/cjs/z-range-picker.cjs.entry.js.map +1 -0
- package/dist/cjs/z-result-card.cjs.entry.js +4 -1
- package/dist/cjs/z-result-card.cjs.entry.js.map +1 -0
- package/dist/cjs/z-section-title.cjs.entry.js +5 -2
- package/dist/cjs/z-section-title.cjs.entry.js.map +1 -0
- package/dist/cjs/z-select.cjs.entry.js +11 -8
- package/dist/cjs/z-select.cjs.entry.js.map +1 -0
- package/dist/cjs/z-skip-to-content.cjs.entry.js +7 -4
- package/dist/cjs/z-skip-to-content.cjs.entry.js.map +1 -0
- package/dist/cjs/z-slideshow.cjs.entry.js +6 -3
- package/dist/cjs/z-slideshow.cjs.entry.js.map +1 -0
- package/dist/cjs/z-stepper-item.cjs.entry.js +5 -2
- package/dist/cjs/z-stepper-item.cjs.entry.js.map +1 -0
- package/dist/cjs/z-stepper.cjs.entry.js +5 -2
- package/dist/cjs/z-stepper.cjs.entry.js.map +1 -0
- package/dist/cjs/z-table.cjs.entry.js +9 -8
- package/dist/cjs/z-table.cjs.entry.js.map +1 -0
- package/dist/cjs/z-tbody.cjs.entry.js +7 -6
- package/dist/cjs/z-tbody.cjs.entry.js.map +1 -0
- package/dist/cjs/z-td.cjs.entry.js +8 -7
- package/dist/cjs/z-td.cjs.entry.js.map +1 -0
- package/dist/cjs/z-tfoot.cjs.entry.js +7 -6
- package/dist/cjs/z-tfoot.cjs.entry.js.map +1 -0
- package/dist/cjs/z-th.cjs.entry.js +9 -8
- package/dist/cjs/z-th.cjs.entry.js.map +1 -0
- package/dist/cjs/z-thead.cjs.entry.js +7 -6
- package/dist/cjs/z-thead.cjs.entry.js.map +1 -0
- package/dist/cjs/z-toast-notification-list.cjs.entry.js +6 -3
- package/dist/cjs/z-toast-notification-list.cjs.entry.js.map +1 -0
- package/dist/cjs/z-toast-notification.cjs.entry.js +8 -5
- package/dist/cjs/z-toast-notification.cjs.entry.js.map +1 -0
- package/dist/cjs/z-toggle-button.cjs.entry.js +6 -3
- package/dist/cjs/z-toggle-button.cjs.entry.js.map +1 -0
- package/dist/cjs/z-toggle-switch.cjs.entry.js +9 -6
- package/dist/cjs/z-toggle-switch.cjs.entry.js.map +1 -0
- package/dist/cjs/z-tool.cjs.entry.js +8 -5
- package/dist/cjs/z-tool.cjs.entry.js.map +1 -0
- package/dist/cjs/z-toolbar.cjs.entry.js +6 -3
- package/dist/cjs/z-toolbar.cjs.entry.js.map +1 -0
- package/dist/cjs/z-tooltip.cjs.entry.js +6 -3
- package/dist/cjs/z-tooltip.cjs.entry.js.map +1 -0
- package/dist/cjs/z-tr.cjs.entry.js +9 -8
- package/dist/cjs/z-tr.cjs.entry.js.map +1 -0
- package/dist/cjs/z-tree-list.cjs.entry.js +5 -2
- package/dist/cjs/z-tree-list.cjs.entry.js.map +1 -0
- package/dist/cjs/z-visually-hidden.cjs.entry.js +5 -2
- package/dist/cjs/z-visually-hidden.cjs.entry.js.map +1 -0
- package/dist/collection/beans/index.js +6 -0
- package/dist/collection/beans/index.js.map +1 -0
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/book-card/z-book-card/index.js +1 -0
- package/dist/collection/components/book-card/z-book-card/index.js.map +1 -0
- package/dist/collection/components/book-card/z-book-card-app/index.js +1 -0
- package/dist/collection/components/book-card/z-book-card-app/index.js.map +1 -0
- package/dist/collection/components/date-picker/utils.js +1 -0
- package/dist/collection/components/date-picker/utils.js.map +1 -0
- package/dist/collection/components/date-picker/z-date-picker/index.js +1 -0
- package/dist/collection/components/date-picker/z-date-picker/index.js.map +1 -0
- package/dist/collection/components/date-picker/z-range-picker/index.js +1 -0
- package/dist/collection/components/date-picker/z-range-picker/index.js.map +1 -0
- package/dist/collection/components/deprecated/z-app-header-deprecated/index.js +1 -0
- package/dist/collection/components/deprecated/z-app-header-deprecated/index.js.map +1 -0
- package/dist/collection/components/deprecated/z-book-card-deprecated/index.js +1 -0
- package/dist/collection/components/deprecated/z-book-card-deprecated/index.js.map +1 -0
- package/dist/collection/components/deprecated/z-menu-deprecated/index.js +1 -0
- package/dist/collection/components/deprecated/z-menu-deprecated/index.js.map +1 -0
- package/dist/collection/components/deprecated/z-menu-section-deprecated/index.js +1 -0
- package/dist/collection/components/deprecated/z-menu-section-deprecated/index.js.map +1 -0
- package/dist/collection/components/deprecated/z-section-title/index.js +1 -0
- package/dist/collection/components/deprecated/z-section-title/index.js.map +1 -0
- package/dist/collection/components/file-upload/z-dragdrop-area/index.js +1 -0
- package/dist/collection/components/file-upload/z-dragdrop-area/index.js.map +1 -0
- package/dist/collection/components/file-upload/z-file/index.js +1 -0
- package/dist/collection/components/file-upload/z-file/index.js.map +1 -0
- package/dist/collection/components/file-upload/z-file-upload/index.js +1 -0
- package/dist/collection/components/file-upload/z-file-upload/index.js.map +1 -0
- package/dist/collection/components/index.js +1 -0
- package/dist/collection/components/index.js.map +1 -0
- package/dist/collection/components/list/z-list/index.js +1 -0
- package/dist/collection/components/list/z-list/index.js.map +1 -0
- package/dist/collection/components/list/z-list-element/index.js +1 -0
- package/dist/collection/components/list/z-list-element/index.js.map +1 -0
- package/dist/collection/components/list/z-list-group/index.js +1 -0
- package/dist/collection/components/list/z-list-group/index.js.map +1 -0
- package/dist/collection/components/list/z-tree-list/index.js +1 -0
- package/dist/collection/components/list/z-tree-list/index.js.map +1 -0
- package/dist/collection/components/table/cells/z-table-cells.css +1 -0
- package/dist/collection/components/table/cells/z-td/index.js +4 -3
- package/dist/collection/components/table/cells/z-td/index.js.map +1 -0
- package/dist/collection/components/table/cells/z-th/index.js +4 -3
- package/dist/collection/components/table/cells/z-th/index.js.map +1 -0
- package/dist/collection/components/table/cells/z-th/styles.css +2 -2
- package/dist/collection/components/table/z-table/index.js +4 -3
- package/dist/collection/components/table/z-table/index.js.map +1 -0
- package/dist/collection/components/table/z-table/styles.css +6 -0
- package/dist/collection/components/table/z-tbody/index.js +4 -3
- package/dist/collection/components/table/z-tbody/index.js.map +1 -0
- package/dist/collection/components/table/z-tfoot/index.js +4 -3
- package/dist/collection/components/table/z-tfoot/index.js.map +1 -0
- package/dist/collection/components/table/z-tfoot/styles.css +2 -1
- package/dist/collection/components/table/z-thead/index.js +4 -3
- package/dist/collection/components/table/z-thead/index.js.map +1 -0
- package/dist/collection/components/table/z-thead/styles.css +4 -0
- package/dist/collection/components/table/z-tr/index.js +4 -3
- package/dist/collection/components/table/z-tr/index.js.map +1 -0
- package/dist/collection/components/table/z-tr/styles.css +9 -3
- package/dist/collection/components/z-accordion/index.js +1 -0
- package/dist/collection/components/z-accordion/index.js.map +1 -0
- package/dist/collection/components/z-anchor-navigation/index.js +1 -0
- package/dist/collection/components/z-anchor-navigation/index.js.map +1 -0
- package/dist/collection/components/z-app-header/index.js +1 -0
- package/dist/collection/components/z-app-header/index.js.map +1 -0
- package/dist/collection/components/z-aria-alert/index.js +1 -0
- package/dist/collection/components/z-aria-alert/index.js.map +1 -0
- package/dist/collection/components/z-avatar/index.js +1 -0
- package/dist/collection/components/z-avatar/index.js.map +1 -0
- package/dist/collection/components/z-book-cover/index.js +1 -0
- package/dist/collection/components/z-book-cover/index.js.map +1 -0
- package/dist/collection/components/z-breadcrumb/index.js +1 -0
- package/dist/collection/components/z-breadcrumb/index.js.map +1 -0
- package/dist/collection/components/z-button/index.js +1 -0
- package/dist/collection/components/z-button/index.js.map +1 -0
- package/dist/collection/components/z-button-sort/index.js +1 -0
- package/dist/collection/components/z-button-sort/index.js.map +1 -0
- package/dist/collection/components/z-card/index.js +1 -0
- package/dist/collection/components/z-card/index.js.map +1 -0
- package/dist/collection/components/z-carousel/index.js +1 -0
- package/dist/collection/components/z-carousel/index.js.map +1 -0
- package/dist/collection/components/z-chip/index.js +1 -0
- package/dist/collection/components/z-chip/index.js.map +1 -0
- package/dist/collection/components/z-color-picker/index.js +1 -0
- package/dist/collection/components/z-color-picker/index.js.map +1 -0
- package/dist/collection/components/z-combobox/index.js +1 -0
- package/dist/collection/components/z-combobox/index.js.map +1 -0
- package/dist/collection/components/z-cover-hero/index.js +1 -0
- package/dist/collection/components/z-cover-hero/index.js.map +1 -0
- package/dist/collection/components/z-divider/index.js +1 -0
- package/dist/collection/components/z-divider/index.js.map +1 -0
- package/dist/collection/components/z-ghost-loading/index.js +1 -0
- package/dist/collection/components/z-ghost-loading/index.js.map +1 -0
- package/dist/collection/components/z-icon/index.js +1 -0
- package/dist/collection/components/z-icon/index.js.map +1 -0
- package/dist/collection/components/z-info-box/index.js +1 -0
- package/dist/collection/components/z-info-box/index.js.map +1 -0
- package/dist/collection/components/z-info-reveal/index.js +1 -0
- package/dist/collection/components/z-info-reveal/index.js.map +1 -0
- package/dist/collection/components/z-input/index.js +1 -0
- package/dist/collection/components/z-input/index.js.map +1 -0
- package/dist/collection/components/z-input-message/index.js +1 -0
- package/dist/collection/components/z-input-message/index.js.map +1 -0
- package/dist/collection/components/z-input-range/index.js +438 -0
- package/dist/collection/components/z-input-range/index.js.map +1 -0
- package/dist/collection/components/z-input-range/styles.css +262 -0
- package/dist/collection/components/z-logo/index.js +2 -1
- package/dist/collection/components/z-logo/index.js.map +1 -0
- package/dist/collection/components/z-menu/index.js +1 -0
- package/dist/collection/components/z-menu/index.js.map +1 -0
- package/dist/collection/components/z-menu-section/index.js +2 -1
- package/dist/collection/components/z-menu-section/index.js.map +1 -0
- package/dist/collection/components/z-modal/index.js +17 -36
- package/dist/collection/components/z-modal/index.js.map +1 -0
- package/dist/collection/components/z-navigation-tabs/index.js +3 -2
- package/dist/collection/components/z-navigation-tabs/index.js.map +1 -0
- package/dist/collection/components/z-notification/index.js +2 -1
- package/dist/collection/components/z-notification/index.js.map +1 -0
- package/dist/collection/components/z-offcanvas/index.js +43 -116
- package/dist/collection/components/z-offcanvas/index.js.map +1 -0
- package/dist/collection/components/z-offcanvas/styles.css +1 -0
- package/dist/collection/components/z-pagination/index.js +1 -0
- package/dist/collection/components/z-pagination/index.js.map +1 -0
- package/dist/collection/components/z-panel-elem/index.js +3 -2
- package/dist/collection/components/z-panel-elem/index.js.map +1 -0
- package/dist/collection/components/z-popover/index.js +2 -1
- package/dist/collection/components/z-popover/index.js.map +1 -0
- package/dist/collection/components/z-result-card/index.js +1 -0
- package/dist/collection/components/z-result-card/index.js.map +1 -0
- package/dist/collection/components/z-searchbar/index.js +4 -3
- package/dist/collection/components/z-searchbar/index.js.map +1 -0
- package/dist/collection/components/z-select/index.js +6 -5
- package/dist/collection/components/z-select/index.js.map +1 -0
- package/dist/collection/components/z-skip-to-content/index.js +2 -1
- package/dist/collection/components/z-skip-to-content/index.js.map +1 -0
- package/dist/collection/components/z-stepper/index.js +2 -1
- package/dist/collection/components/z-stepper/index.js.map +1 -0
- package/dist/collection/components/z-stepper-item/index.js +2 -1
- package/dist/collection/components/z-stepper-item/index.js.map +1 -0
- package/dist/collection/components/z-tag/index.js +3 -2
- package/dist/collection/components/z-tag/index.js.map +1 -0
- package/dist/collection/components/z-toast-notification/index.js +4 -3
- package/dist/collection/components/z-toast-notification/index.js.map +1 -0
- package/dist/collection/components/z-toast-notification-list/index.js +2 -1
- package/dist/collection/components/z-toast-notification-list/index.js.map +1 -0
- package/dist/collection/components/z-toggle-button/index.js +3 -2
- package/dist/collection/components/z-toggle-button/index.js.map +1 -0
- package/dist/collection/components/z-toggle-switch/index.js +4 -3
- package/dist/collection/components/z-toggle-switch/index.js.map +1 -0
- package/dist/collection/components/z-tool/index.js +3 -2
- package/dist/collection/components/z-tool/index.js.map +1 -0
- package/dist/collection/components/z-toolbar/index.js +2 -1
- package/dist/collection/components/z-toolbar/index.js.map +1 -0
- package/dist/collection/components/z-tooltip/index.js +2 -1
- package/dist/collection/components/z-tooltip/index.js.map +1 -0
- package/dist/collection/components/z-visually-hidden/index.js +2 -1
- package/dist/collection/components/z-visually-hidden/index.js.map +1 -0
- package/dist/collection/constants/breakpoints.js +1 -0
- package/dist/collection/constants/breakpoints.js.map +1 -0
- package/dist/collection/constants/icons.js +1 -0
- package/dist/collection/constants/icons.js.map +1 -0
- package/dist/collection/constants/iconset.js +1 -0
- package/dist/collection/constants/iconset.js.map +1 -0
- package/dist/collection/index.js +1 -0
- package/dist/collection/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/card/z-myz-card/index.js +2 -1
- package/dist/collection/snowflakes/myz/card/z-myz-card/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/card/z-myz-card-alert/index.js +2 -1
- package/dist/collection/snowflakes/myz/card/z-myz-card-alert/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/card/z-myz-card-body/index.js +2 -1
- package/dist/collection/snowflakes/myz/card/z-myz-card-body/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/card/z-myz-card-cover/index.js +2 -1
- package/dist/collection/snowflakes/myz/card/z-myz-card-cover/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/card/z-myz-card-dictionary/index.js +2 -1
- package/dist/collection/snowflakes/myz/card/z-myz-card-dictionary/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/card/z-myz-card-footer/index.js +2 -1
- package/dist/collection/snowflakes/myz/card/z-myz-card-footer/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/card/z-myz-card-footer-sections/index.js +2 -1
- package/dist/collection/snowflakes/myz/card/z-myz-card-footer-sections/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/card/z-myz-card-header/index.js +2 -1
- package/dist/collection/snowflakes/myz/card/z-myz-card-header/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/card/z-myz-card-icon/index.js +2 -1
- package/dist/collection/snowflakes/myz/card/z-myz-card-icon/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/card/z-myz-card-info/index.js +2 -1
- package/dist/collection/snowflakes/myz/card/z-myz-card-info/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/card/z-myz-card-list/index.js +2 -1
- package/dist/collection/snowflakes/myz/card/z-myz-card-list/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/list/z-myz-list/index.js +2 -1
- package/dist/collection/snowflakes/myz/list/z-myz-list/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/list/z-myz-list-item/index.js +2 -1
- package/dist/collection/snowflakes/myz/list/z-myz-list-item/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/z-alert/index.js +2 -1
- package/dist/collection/snowflakes/myz/z-alert/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/z-otp/index.js +3 -2
- package/dist/collection/snowflakes/myz/z-otp/index.js.map +1 -0
- package/dist/collection/snowflakes/myz/z-slideshow/index.js +1 -0
- package/dist/collection/snowflakes/myz/z-slideshow/index.js.map +1 -0
- package/dist/collection/utils/focus-trap-controller.js +100 -0
- package/dist/collection/utils/focus-trap-controller.js.map +1 -0
- package/dist/collection/utils/reactive-controller.js +46 -0
- package/dist/collection/utils/reactive-controller.js.map +1 -0
- package/dist/collection/utils/storybook-utils.js +1 -0
- package/dist/collection/utils/storybook-utils.js.map +1 -0
- package/dist/collection/utils/utils.js +60 -1
- package/dist/collection/utils/utils.js.map +1 -0
- package/dist/components/_commonjsHelpers.js +2 -1
- package/dist/components/_commonjsHelpers.js.map +1 -0
- package/dist/components/breakpoints.js +2 -1
- package/dist/components/breakpoints.js.map +1 -0
- package/dist/components/iconset.js +2 -1
- package/dist/components/iconset.js.map +1 -0
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.js +2 -1
- package/dist/components/index.js.map +1 -0
- package/dist/components/index10.js +2 -1
- package/dist/components/index10.js.map +1 -0
- package/dist/components/index11.js +2 -1
- package/dist/components/index11.js.map +1 -0
- package/dist/components/index12.js +2 -1
- package/dist/components/index12.js.map +1 -0
- package/dist/components/index13.js +2 -1
- package/dist/components/index13.js.map +1 -0
- package/dist/components/index14.js +2 -1
- package/dist/components/index14.js.map +1 -0
- package/dist/components/index15.js +2 -1
- package/dist/components/index15.js.map +1 -0
- package/dist/components/index16.js +2 -1
- package/dist/components/index16.js.map +1 -0
- package/dist/components/index17.js +2 -1
- package/dist/components/index17.js.map +1 -0
- package/dist/components/index18.js +2 -1
- package/dist/components/index18.js.map +1 -0
- package/dist/components/index19.js +2 -1
- package/dist/components/index19.js.map +1 -0
- package/dist/components/index2.js +2 -1
- package/dist/components/index2.js.map +1 -0
- package/dist/components/index20.js +2 -1
- package/dist/components/index20.js.map +1 -0
- package/dist/components/index21.js +2 -1
- package/dist/components/index21.js.map +1 -0
- package/dist/components/index22.js +2 -1
- package/dist/components/index22.js.map +1 -0
- package/dist/components/index23.js +2 -1
- package/dist/components/index23.js.map +1 -0
- package/dist/components/index24.js +2 -1
- package/dist/components/index24.js.map +1 -0
- package/dist/components/index25.js +2 -1
- package/dist/components/index25.js.map +1 -0
- package/dist/components/index26.js +2 -1
- package/dist/components/index26.js.map +1 -0
- package/dist/components/index27.js +2 -1
- package/dist/components/index27.js.map +1 -0
- package/dist/components/index3.js +2 -1
- package/dist/components/index3.js.map +1 -0
- package/dist/components/index4.js +2 -1
- package/dist/components/index4.js.map +1 -0
- package/dist/components/index5.js +2 -1
- package/dist/components/index5.js.map +1 -0
- package/dist/components/index6.js +2 -1
- package/dist/components/index6.js.map +1 -0
- package/dist/components/index7.js +2 -1
- package/dist/components/index7.js.map +1 -0
- package/dist/components/index8.js +2 -1
- package/dist/components/index8.js.map +1 -0
- package/dist/components/index9.js +2 -1
- package/dist/components/index9.js.map +1 -0
- package/dist/components/reactive-controller.js +6 -0
- package/dist/components/reactive-controller.js.map +1 -0
- package/dist/components/utils.js +7 -1
- package/dist/components/utils.js.map +1 -0
- package/dist/components/utils2.js +2 -1
- package/dist/components/utils2.js.map +1 -0
- package/dist/components/z-accordion.js +2 -1
- package/dist/components/z-accordion.js.map +1 -0
- package/dist/components/z-alert.js +2 -1
- package/dist/components/z-alert.js.map +1 -0
- package/dist/components/z-anchor-navigation.js +2 -1
- package/dist/components/z-anchor-navigation.js.map +1 -0
- package/dist/components/z-app-header-deprecated.js +2 -1
- package/dist/components/z-app-header-deprecated.js.map +1 -0
- package/dist/components/z-app-header.js +2 -1
- package/dist/components/z-app-header.js.map +1 -0
- package/dist/components/z-aria-alert.js +2 -1
- package/dist/components/z-aria-alert.js.map +1 -0
- package/dist/components/z-avatar.js +2 -1
- package/dist/components/z-avatar.js.map +1 -0
- package/dist/components/z-book-card-app.js +2 -1
- package/dist/components/z-book-card-app.js.map +1 -0
- package/dist/components/z-book-card-deprecated.js +2 -1
- package/dist/components/z-book-card-deprecated.js.map +1 -0
- package/dist/components/z-book-card.js +2 -1
- package/dist/components/z-book-card.js.map +1 -0
- package/dist/components/z-book-cover.js +2 -1
- package/dist/components/z-book-cover.js.map +1 -0
- package/dist/components/z-breadcrumb.js +2 -1
- package/dist/components/z-breadcrumb.js.map +1 -0
- package/dist/components/z-button-sort.js +2 -1
- package/dist/components/z-button-sort.js.map +1 -0
- package/dist/components/z-button.js +2 -1
- package/dist/components/z-button.js.map +1 -0
- package/dist/components/z-card.js +2 -1
- package/dist/components/z-card.js.map +1 -0
- package/dist/components/z-carousel.js +2 -1
- package/dist/components/z-carousel.js.map +1 -0
- package/dist/components/z-chip.js +2 -1
- package/dist/components/z-chip.js.map +1 -0
- package/dist/components/z-color-picker.js +2 -1
- package/dist/components/z-color-picker.js.map +1 -0
- package/dist/components/z-combobox.js +2 -1
- package/dist/components/z-combobox.js.map +1 -0
- package/dist/components/z-cover-hero.js +2 -1
- package/dist/components/z-cover-hero.js.map +1 -0
- package/dist/components/z-date-picker.js +3 -2
- package/dist/components/z-date-picker.js.map +1 -0
- package/dist/components/z-divider.js +2 -1
- package/dist/components/z-divider.js.map +1 -0
- package/dist/components/z-dragdrop-area.js +2 -1
- package/dist/components/z-dragdrop-area.js.map +1 -0
- package/dist/components/z-file-upload.js +2 -1
- package/dist/components/z-file-upload.js.map +1 -0
- package/dist/components/z-file.js +2 -1
- package/dist/components/z-file.js.map +1 -0
- package/dist/components/z-ghost-loading.js +2 -1
- package/dist/components/z-ghost-loading.js.map +1 -0
- package/dist/components/z-icon.js +2 -1
- package/dist/components/z-icon.js.map +1 -0
- package/dist/components/z-info-box.js +2 -1
- package/dist/components/z-info-box.js.map +1 -0
- package/dist/components/z-info-reveal.js +2 -1
- package/dist/components/z-info-reveal.js.map +1 -0
- package/dist/components/z-input-message.js +2 -1
- package/dist/components/z-input-message.js.map +1 -0
- package/dist/components/z-input-range.d.ts +11 -0
- package/dist/components/z-input-range.js +2 -0
- package/dist/components/z-input-range.js.map +1 -0
- package/dist/components/z-input.js +2 -1
- package/dist/components/z-input.js.map +1 -0
- package/dist/components/z-list-element.js +2 -1
- package/dist/components/z-list-element.js.map +1 -0
- package/dist/components/z-list-group.js +2 -1
- package/dist/components/z-list-group.js.map +1 -0
- package/dist/components/z-list.js +2 -1
- package/dist/components/z-list.js.map +1 -0
- package/dist/components/z-logo.js +2 -1
- package/dist/components/z-logo.js.map +1 -0
- package/dist/components/z-menu-deprecated.js +2 -1
- package/dist/components/z-menu-deprecated.js.map +1 -0
- package/dist/components/z-menu-section-deprecated.js +2 -1
- package/dist/components/z-menu-section-deprecated.js.map +1 -0
- package/dist/components/z-menu-section.js +2 -1
- package/dist/components/z-menu-section.js.map +1 -0
- package/dist/components/z-menu.js +2 -1
- package/dist/components/z-menu.js.map +1 -0
- package/dist/components/z-modal.js +2 -1
- package/dist/components/z-modal.js.map +1 -0
- package/dist/components/z-myz-card-alert.js +2 -1
- package/dist/components/z-myz-card-alert.js.map +1 -0
- package/dist/components/z-myz-card-body.js +2 -1
- package/dist/components/z-myz-card-body.js.map +1 -0
- package/dist/components/z-myz-card-cover.js +2 -1
- package/dist/components/z-myz-card-cover.js.map +1 -0
- package/dist/components/z-myz-card-dictionary.js +2 -1
- package/dist/components/z-myz-card-dictionary.js.map +1 -0
- package/dist/components/z-myz-card-footer-sections.js +2 -1
- package/dist/components/z-myz-card-footer-sections.js.map +1 -0
- package/dist/components/z-myz-card-footer.js +2 -1
- package/dist/components/z-myz-card-footer.js.map +1 -0
- package/dist/components/z-myz-card-header.js +2 -1
- package/dist/components/z-myz-card-header.js.map +1 -0
- package/dist/components/z-myz-card-icon.js +2 -1
- package/dist/components/z-myz-card-icon.js.map +1 -0
- package/dist/components/z-myz-card-info.js +2 -1
- package/dist/components/z-myz-card-info.js.map +1 -0
- package/dist/components/z-myz-card-list.js +2 -1
- package/dist/components/z-myz-card-list.js.map +1 -0
- package/dist/components/z-myz-card.js +2 -1
- package/dist/components/z-myz-card.js.map +1 -0
- package/dist/components/z-myz-list-item.js +2 -1
- package/dist/components/z-myz-list-item.js.map +1 -0
- package/dist/components/z-myz-list.js +2 -1
- package/dist/components/z-myz-list.js.map +1 -0
- package/dist/components/z-navigation-tabs.js +2 -1
- package/dist/components/z-navigation-tabs.js.map +1 -0
- package/dist/components/z-notification.js +2 -1
- package/dist/components/z-notification.js.map +1 -0
- package/dist/components/z-offcanvas.js +2 -1
- package/dist/components/z-offcanvas.js.map +1 -0
- package/dist/components/z-otp.js +2 -1
- package/dist/components/z-otp.js.map +1 -0
- package/dist/components/z-pagination.js +2 -1
- package/dist/components/z-pagination.js.map +1 -0
- package/dist/components/z-panel-elem.js +2 -1
- package/dist/components/z-panel-elem.js.map +1 -0
- package/dist/components/z-popover.js +2 -1
- package/dist/components/z-popover.js.map +1 -0
- package/dist/components/z-range-picker.js +2 -1
- package/dist/components/z-range-picker.js.map +1 -0
- package/dist/components/z-result-card.js +2 -1
- package/dist/components/z-result-card.js.map +1 -0
- package/dist/components/z-searchbar.js +2 -1
- package/dist/components/z-searchbar.js.map +1 -0
- package/dist/components/z-section-title.js +2 -1
- package/dist/components/z-section-title.js.map +1 -0
- package/dist/components/z-select.js +2 -1
- package/dist/components/z-select.js.map +1 -0
- package/dist/components/z-skip-to-content.js +2 -1
- package/dist/components/z-skip-to-content.js.map +1 -0
- package/dist/components/z-slideshow.js +2 -1
- package/dist/components/z-slideshow.js.map +1 -0
- package/dist/components/z-stepper-item.js +2 -1
- package/dist/components/z-stepper-item.js.map +1 -0
- package/dist/components/z-stepper.js +2 -1
- package/dist/components/z-stepper.js.map +1 -0
- package/dist/components/z-table.js +2 -1
- package/dist/components/z-table.js.map +1 -0
- package/dist/components/z-tag.js +2 -1
- package/dist/components/z-tag.js.map +1 -0
- package/dist/components/z-tbody.js +2 -1
- package/dist/components/z-tbody.js.map +1 -0
- package/dist/components/z-td.js +2 -1
- package/dist/components/z-td.js.map +1 -0
- package/dist/components/z-tfoot.js +2 -1
- package/dist/components/z-tfoot.js.map +1 -0
- package/dist/components/z-th.js +2 -1
- package/dist/components/z-th.js.map +1 -0
- package/dist/components/z-thead.js +2 -1
- package/dist/components/z-thead.js.map +1 -0
- package/dist/components/z-toast-notification-list.js +2 -1
- package/dist/components/z-toast-notification-list.js.map +1 -0
- package/dist/components/z-toast-notification.js +8 -2
- package/dist/components/z-toast-notification.js.map +1 -0
- package/dist/components/z-toggle-button.js +2 -1
- package/dist/components/z-toggle-button.js.map +1 -0
- package/dist/components/z-toggle-switch.js +2 -1
- package/dist/components/z-toggle-switch.js.map +1 -0
- package/dist/components/z-tool.js +2 -1
- package/dist/components/z-tool.js.map +1 -0
- package/dist/components/z-toolbar.js +2 -1
- package/dist/components/z-toolbar.js.map +1 -0
- package/dist/components/z-tooltip.js +2 -1
- package/dist/components/z-tooltip.js.map +1 -0
- package/dist/components/z-tr.js +2 -1
- package/dist/components/z-tr.js.map +1 -0
- package/dist/components/z-tree-list.js +2 -1
- package/dist/components/z-tree-list.js.map +1 -0
- package/dist/components/z-visually-hidden.js +2 -1
- package/dist/components/z-visually-hidden.js.map +1 -0
- package/dist/esm/_commonjsHelpers-B85MJLTf.js +3 -0
- package/dist/esm/_commonjsHelpers-B85MJLTf.js.map +1 -0
- package/dist/esm/breakpoints-Q-tWjk7P.js +3 -0
- package/dist/esm/breakpoints-Q-tWjk7P.js.map +1 -0
- package/dist/esm/iconset-AwzX9V8L.js +3 -0
- package/dist/esm/iconset-AwzX9V8L.js.map +1 -0
- package/dist/esm/{index-BKCj6NR2.js → index-B3nR3-Jw.js} +9 -1
- package/dist/esm/index-B3nR3-Jw.js.map +1 -0
- package/dist/esm/{index-fIt9Ytc6.js → index-BEHxru6n.js} +51 -7
- package/dist/esm/index-BEHxru6n.js.map +1 -0
- package/dist/esm/index.js +5 -2
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/loader.js +6 -3
- package/dist/esm/loader.js.map +1 -0
- package/dist/esm/reactive-controller-DXvzHFid.js +1443 -0
- package/dist/esm/reactive-controller-DXvzHFid.js.map +1 -0
- package/dist/esm/utils-C9lc3rtK.js +896 -0
- package/dist/esm/utils-C9lc3rtK.js.map +1 -0
- package/dist/esm/{utils-DuuLzXZj.js → utils-DP4zBIll.js} +4 -1
- package/dist/esm/utils-DP4zBIll.js.map +1 -0
- package/dist/esm/web-components-library.js +6 -3
- package/dist/esm/web-components-library.js.map +1 -0
- package/dist/esm/z-accordion.entry.js +5 -2
- package/dist/esm/z-accordion.entry.js.map +1 -0
- package/dist/esm/z-alert.entry.js +5 -2
- package/dist/esm/z-alert.entry.js.map +1 -0
- package/dist/esm/z-anchor-navigation.entry.js +5 -2
- package/dist/esm/z-anchor-navigation.entry.js.map +1 -0
- package/dist/esm/z-app-header-deprecated.entry.js +5 -2
- package/dist/esm/z-app-header-deprecated.entry.js.map +1 -0
- package/dist/esm/z-app-header_12.entry.js +45 -109
- package/dist/esm/z-app-header_12.entry.js.map +1 -0
- package/dist/esm/z-aria-alert.entry.js +5 -2
- package/dist/esm/z-aria-alert.entry.js.map +1 -0
- package/dist/esm/z-avatar.entry.js +5 -2
- package/dist/esm/z-avatar.entry.js.map +1 -0
- package/dist/esm/z-book-card-app.entry.js +5 -2
- package/dist/esm/z-book-card-app.entry.js.map +1 -0
- package/dist/esm/z-book-card-deprecated.entry.js +6 -3
- package/dist/esm/z-book-card-deprecated.entry.js.map +1 -0
- package/dist/esm/z-book-card.entry.js +5 -2
- package/dist/esm/z-book-card.entry.js.map +1 -0
- package/dist/esm/z-book-cover.entry.js +4 -1
- package/dist/esm/z-book-cover.entry.js.map +1 -0
- package/dist/esm/z-breadcrumb.entry.js +6 -3
- package/dist/esm/z-breadcrumb.entry.js.map +1 -0
- package/dist/esm/z-button-sort.entry.js +4 -1
- package/dist/esm/z-button-sort.entry.js.map +1 -0
- package/dist/esm/z-card.entry.js +5 -2
- package/dist/esm/z-card.entry.js.map +1 -0
- package/dist/esm/z-carousel.entry.js +5 -2
- package/dist/esm/z-carousel.entry.js.map +1 -0
- package/dist/esm/z-chip.entry.js +5 -2
- package/dist/esm/z-chip.entry.js.map +1 -0
- package/dist/esm/z-color-picker.entry.js +6 -3
- package/dist/esm/z-color-picker.entry.js.map +1 -0
- package/dist/esm/z-combobox.entry.js +6 -3
- package/dist/esm/z-combobox.entry.js.map +1 -0
- package/dist/esm/z-cover-hero.entry.js +5 -2
- package/dist/esm/z-cover-hero.entry.js.map +1 -0
- package/dist/esm/z-date-picker.entry.js +6 -3
- package/dist/esm/z-date-picker.entry.js.map +1 -0
- package/dist/esm/z-dragdrop-area_2.entry.js +22 -38
- package/dist/esm/z-dragdrop-area_2.entry.js.map +1 -0
- package/dist/esm/z-file-upload.entry.js +5 -2
- package/dist/esm/z-file-upload.entry.js.map +1 -0
- package/dist/esm/z-file.entry.js +5 -2
- package/dist/esm/z-file.entry.js.map +1 -0
- package/dist/esm/z-ghost-loading.entry.js +4 -1
- package/dist/esm/z-ghost-loading.entry.js.map +1 -0
- package/dist/esm/z-info-box.entry.js +4 -1
- package/dist/esm/z-info-box.entry.js.map +1 -0
- package/dist/esm/z-info-reveal.entry.js +5 -2
- package/dist/esm/z-info-reveal.entry.js.map +1 -0
- package/dist/esm/z-input-range.entry.js +143 -0
- package/dist/esm/z-input-range.entry.js.map +1 -0
- package/dist/esm/z-logo.entry.js +5 -2
- package/dist/esm/z-logo.entry.js.map +1 -0
- package/dist/esm/z-menu-deprecated.entry.js +4 -1
- package/dist/esm/z-menu-deprecated.entry.js.map +1 -0
- package/dist/esm/z-menu-section-deprecated.entry.js +4 -1
- package/dist/esm/z-menu-section-deprecated.entry.js.map +1 -0
- package/dist/esm/z-menu-section.entry.js +6 -3
- package/dist/esm/z-menu-section.entry.js.map +1 -0
- package/dist/esm/z-menu.entry.js +6 -3
- package/dist/esm/z-menu.entry.js.map +1 -0
- package/dist/esm/z-myz-card-alert.entry.js +6 -3
- package/dist/esm/z-myz-card-alert.entry.js.map +1 -0
- package/dist/esm/z-myz-card-dictionary.entry.js +6 -3
- package/dist/esm/z-myz-card-dictionary.entry.js.map +1 -0
- package/dist/esm/z-myz-card-footer-sections.entry.js +5 -2
- package/dist/esm/z-myz-card-footer-sections.entry.js.map +1 -0
- package/dist/esm/z-myz-card-footer.entry.js +6 -3
- package/dist/esm/z-myz-card-footer.entry.js.map +1 -0
- package/dist/esm/z-myz-card-icon.entry.js +5 -2
- package/dist/esm/z-myz-card-icon.entry.js.map +1 -0
- package/dist/esm/z-myz-card-info.entry.js +7 -4
- package/dist/esm/z-myz-card-info.entry.js.map +1 -0
- package/dist/esm/z-myz-card-list.entry.js +5 -2
- package/dist/esm/z-myz-card-list.entry.js.map +1 -0
- package/dist/esm/z-myz-card_4.entry.js +9 -6
- package/dist/esm/z-myz-card_4.entry.js.map +1 -0
- package/dist/esm/z-myz-list-item.entry.js +7 -4
- package/dist/esm/z-myz-list-item.entry.js.map +1 -0
- package/dist/esm/z-myz-list.entry.js +5 -2
- package/dist/esm/z-myz-list.entry.js.map +1 -0
- package/dist/esm/z-navigation-tabs.entry.js +7 -4
- package/dist/esm/z-navigation-tabs.entry.js.map +1 -0
- package/dist/esm/z-notification.entry.js +5 -2
- package/dist/esm/z-notification.entry.js.map +1 -0
- package/dist/esm/z-otp.entry.js +7 -4
- package/dist/esm/z-otp.entry.js.map +1 -0
- package/dist/esm/z-pagination.entry.js +5 -2
- package/dist/esm/z-pagination.entry.js.map +1 -0
- package/dist/esm/z-panel-elem.entry.js +6 -3
- package/dist/esm/z-panel-elem.entry.js.map +1 -0
- package/dist/esm/z-popover.entry.js +7 -4
- package/dist/esm/z-popover.entry.js.map +1 -0
- package/dist/esm/z-range-picker.entry.js +6 -3
- package/dist/esm/z-range-picker.entry.js.map +1 -0
- package/dist/esm/z-result-card.entry.js +4 -1
- package/dist/esm/z-result-card.entry.js.map +1 -0
- package/dist/esm/z-section-title.entry.js +5 -2
- package/dist/esm/z-section-title.entry.js.map +1 -0
- package/dist/esm/z-select.entry.js +11 -8
- package/dist/esm/z-select.entry.js.map +1 -0
- package/dist/esm/z-skip-to-content.entry.js +7 -4
- package/dist/esm/z-skip-to-content.entry.js.map +1 -0
- package/dist/esm/z-slideshow.entry.js +6 -3
- package/dist/esm/z-slideshow.entry.js.map +1 -0
- package/dist/esm/z-stepper-item.entry.js +5 -2
- package/dist/esm/z-stepper-item.entry.js.map +1 -0
- package/dist/esm/z-stepper.entry.js +5 -2
- package/dist/esm/z-stepper.entry.js.map +1 -0
- package/dist/esm/z-table.entry.js +9 -8
- package/dist/esm/z-table.entry.js.map +1 -0
- package/dist/esm/z-tbody.entry.js +7 -6
- package/dist/esm/z-tbody.entry.js.map +1 -0
- package/dist/esm/z-td.entry.js +8 -7
- package/dist/esm/z-td.entry.js.map +1 -0
- package/dist/esm/z-tfoot.entry.js +7 -6
- package/dist/esm/z-tfoot.entry.js.map +1 -0
- package/dist/esm/z-th.entry.js +9 -8
- package/dist/esm/z-th.entry.js.map +1 -0
- package/dist/esm/z-thead.entry.js +7 -6
- package/dist/esm/z-thead.entry.js.map +1 -0
- package/dist/esm/z-toast-notification-list.entry.js +6 -3
- package/dist/esm/z-toast-notification-list.entry.js.map +1 -0
- package/dist/esm/z-toast-notification.entry.js +8 -5
- package/dist/esm/z-toast-notification.entry.js.map +1 -0
- package/dist/esm/z-toggle-button.entry.js +6 -3
- package/dist/esm/z-toggle-button.entry.js.map +1 -0
- package/dist/esm/z-toggle-switch.entry.js +9 -6
- package/dist/esm/z-toggle-switch.entry.js.map +1 -0
- package/dist/esm/z-tool.entry.js +8 -5
- package/dist/esm/z-tool.entry.js.map +1 -0
- package/dist/esm/z-toolbar.entry.js +6 -3
- package/dist/esm/z-toolbar.entry.js.map +1 -0
- package/dist/esm/z-tooltip.entry.js +6 -3
- package/dist/esm/z-tooltip.entry.js.map +1 -0
- package/dist/esm/z-tr.entry.js +9 -8
- package/dist/esm/z-tr.entry.js.map +1 -0
- package/dist/esm/z-tree-list.entry.js +5 -2
- package/dist/esm/z-tree-list.entry.js.map +1 -0
- package/dist/esm/z-visually-hidden.entry.js +5 -2
- package/dist/esm/z-visually-hidden.entry.js.map +1 -0
- package/dist/types/beans/index.d.ts +4 -0
- package/dist/types/components/z-input-range/index.d.ts +83 -0
- package/dist/types/components/z-modal/index.d.ts +4 -10
- package/dist/types/components/z-offcanvas/index.d.ts +12 -34
- package/dist/types/components.d.ts +187 -6
- package/dist/types/utils/focus-trap-controller.d.ts +53 -0
- package/dist/types/utils/reactive-controller.d.ts +39 -0
- package/dist/types/utils/utils.d.ts +10 -0
- package/dist/web-components-library/index.esm.js +2 -1
- package/dist/web-components-library/index.esm.js.map +1 -0
- package/dist/web-components-library/p-0a10c7d7.entry.js +2 -0
- package/dist/web-components-library/p-0a10c7d7.entry.js.map +1 -0
- package/dist/web-components-library/p-0de3e2fa.entry.js +2 -0
- package/dist/web-components-library/p-0de3e2fa.entry.js.map +1 -0
- package/dist/web-components-library/p-0eb833b6.entry.js +2 -0
- package/dist/web-components-library/p-0eb833b6.entry.js.map +1 -0
- package/dist/web-components-library/p-17a9c2b3.entry.js +2 -0
- package/dist/web-components-library/p-17a9c2b3.entry.js.map +1 -0
- package/dist/web-components-library/p-235a1c1d.entry.js +2 -0
- package/dist/web-components-library/p-235a1c1d.entry.js.map +1 -0
- package/dist/web-components-library/p-286690fd.entry.js +2 -0
- package/dist/web-components-library/p-286690fd.entry.js.map +1 -0
- package/dist/web-components-library/p-288c1f55.entry.js +2 -0
- package/dist/web-components-library/p-288c1f55.entry.js.map +1 -0
- package/dist/web-components-library/p-2b05eaef.entry.js +2 -0
- package/dist/web-components-library/p-2b05eaef.entry.js.map +1 -0
- package/dist/web-components-library/p-2c63a798.entry.js +2 -0
- package/dist/web-components-library/p-2c63a798.entry.js.map +1 -0
- package/dist/web-components-library/p-315ac39c.entry.js +2 -0
- package/dist/web-components-library/p-315ac39c.entry.js.map +1 -0
- package/dist/web-components-library/p-35653b5e.entry.js +2 -0
- package/dist/web-components-library/p-35653b5e.entry.js.map +1 -0
- package/dist/web-components-library/p-38e4e01f.entry.js +2 -0
- package/dist/web-components-library/p-38e4e01f.entry.js.map +1 -0
- package/dist/web-components-library/p-3b3e1ffb.entry.js +2 -0
- package/dist/web-components-library/p-3b3e1ffb.entry.js.map +1 -0
- package/dist/web-components-library/p-3b7f5d80.entry.js +2 -0
- package/dist/web-components-library/p-3b7f5d80.entry.js.map +1 -0
- package/dist/web-components-library/p-40694478.entry.js +2 -0
- package/dist/web-components-library/p-40694478.entry.js.map +1 -0
- package/dist/web-components-library/p-440e5b62.entry.js +2 -0
- package/dist/web-components-library/p-440e5b62.entry.js.map +1 -0
- package/dist/web-components-library/p-44410388.entry.js +2 -0
- package/dist/web-components-library/p-44410388.entry.js.map +1 -0
- package/dist/web-components-library/p-508eb530.entry.js +2 -0
- package/dist/web-components-library/p-508eb530.entry.js.map +1 -0
- package/dist/web-components-library/p-50a09bf1.entry.js +2 -0
- package/dist/web-components-library/p-50a09bf1.entry.js.map +1 -0
- package/dist/web-components-library/p-54f98f8e.entry.js +2 -0
- package/dist/web-components-library/p-54f98f8e.entry.js.map +1 -0
- package/dist/web-components-library/p-5a0424cd.entry.js +2 -0
- package/dist/web-components-library/p-5a0424cd.entry.js.map +1 -0
- package/dist/web-components-library/p-5ba350d8.entry.js +2 -0
- package/dist/web-components-library/p-5ba350d8.entry.js.map +1 -0
- package/dist/web-components-library/p-643aaedc.entry.js +2 -0
- package/dist/web-components-library/p-643aaedc.entry.js.map +1 -0
- package/dist/web-components-library/p-654cbe9f.entry.js +2 -0
- package/dist/web-components-library/p-654cbe9f.entry.js.map +1 -0
- package/dist/web-components-library/p-6fc4fd53.entry.js +2 -0
- package/dist/web-components-library/p-6fc4fd53.entry.js.map +1 -0
- package/dist/web-components-library/{p-2621b31f.entry.js → p-72356b43.entry.js} +2 -1
- package/dist/web-components-library/p-72356b43.entry.js.map +1 -0
- package/dist/web-components-library/p-723c700f.entry.js +2 -0
- package/dist/web-components-library/p-723c700f.entry.js.map +1 -0
- package/dist/web-components-library/p-72da35ee.entry.js +2 -0
- package/dist/web-components-library/p-72da35ee.entry.js.map +1 -0
- package/dist/web-components-library/p-7313202f.entry.js +2 -0
- package/dist/web-components-library/p-7313202f.entry.js.map +1 -0
- package/dist/web-components-library/p-73ed9922.entry.js +2 -0
- package/dist/web-components-library/p-73ed9922.entry.js.map +1 -0
- package/dist/web-components-library/p-779a7476.entry.js +2 -0
- package/dist/web-components-library/p-779a7476.entry.js.map +1 -0
- package/dist/web-components-library/p-7a25961e.entry.js +2 -0
- package/dist/web-components-library/p-7a25961e.entry.js.map +1 -0
- package/dist/web-components-library/p-7dfb5290.entry.js +2 -0
- package/dist/web-components-library/p-7dfb5290.entry.js.map +1 -0
- package/dist/web-components-library/p-7fff6cfd.entry.js +2 -0
- package/dist/web-components-library/p-7fff6cfd.entry.js.map +1 -0
- package/dist/web-components-library/p-8041306f.entry.js +2 -0
- package/dist/web-components-library/p-8041306f.entry.js.map +1 -0
- package/dist/web-components-library/p-8046cab0.entry.js +2 -0
- package/dist/web-components-library/p-8046cab0.entry.js.map +1 -0
- package/dist/web-components-library/{p-ebd8c113.entry.js → p-82c43c62.entry.js} +2 -1
- package/dist/web-components-library/p-82c43c62.entry.js.map +1 -0
- package/dist/web-components-library/p-82e04f79.entry.js +2 -0
- package/dist/web-components-library/p-82e04f79.entry.js.map +1 -0
- package/dist/web-components-library/p-87a5a352.entry.js +2 -0
- package/dist/web-components-library/p-87a5a352.entry.js.map +1 -0
- package/dist/web-components-library/p-8b0c232c.entry.js +2 -0
- package/dist/web-components-library/p-8b0c232c.entry.js.map +1 -0
- package/dist/web-components-library/p-8b1f745c.entry.js +2 -0
- package/dist/web-components-library/p-8b1f745c.entry.js.map +1 -0
- package/dist/web-components-library/p-8bd0e3e2.entry.js +2 -0
- package/dist/web-components-library/p-8bd0e3e2.entry.js.map +1 -0
- package/dist/web-components-library/p-8ca86be7.entry.js +2 -0
- package/dist/web-components-library/p-8ca86be7.entry.js.map +1 -0
- package/dist/web-components-library/p-8ce8d90d.entry.js +2 -0
- package/dist/web-components-library/p-8ce8d90d.entry.js.map +1 -0
- package/dist/web-components-library/p-927d9062.entry.js +2 -0
- package/dist/web-components-library/p-927d9062.entry.js.map +1 -0
- package/dist/web-components-library/p-931f2a16.entry.js +2 -0
- package/dist/web-components-library/p-931f2a16.entry.js.map +1 -0
- package/dist/web-components-library/p-960cd1d9.entry.js +2 -0
- package/dist/web-components-library/p-960cd1d9.entry.js.map +1 -0
- package/dist/web-components-library/p-9f0e91f5.entry.js +2 -0
- package/dist/web-components-library/p-9f0e91f5.entry.js.map +1 -0
- package/dist/web-components-library/p-AwzX9V8L.js +2 -1
- package/dist/web-components-library/p-AwzX9V8L.js.map +1 -0
- package/dist/web-components-library/p-B3nR3-Jw.js +2 -0
- package/dist/web-components-library/p-B3nR3-Jw.js.map +1 -0
- package/dist/web-components-library/p-B85MJLTf.js +2 -1
- package/dist/web-components-library/p-B85MJLTf.js.map +1 -0
- package/dist/web-components-library/p-BEHxru6n.js +3 -0
- package/dist/web-components-library/p-BEHxru6n.js.map +1 -0
- package/dist/web-components-library/p-Bx6o9v2_.js +2 -0
- package/dist/web-components-library/p-Bx6o9v2_.js.map +1 -0
- package/dist/web-components-library/p-C8pbzcmM.js +7 -0
- package/dist/web-components-library/p-C8pbzcmM.js.map +1 -0
- package/dist/web-components-library/p-CscBC1Z4.js +6 -0
- package/dist/web-components-library/p-CscBC1Z4.js.map +1 -0
- package/dist/web-components-library/p-Q-tWjk7P.js +2 -1
- package/dist/web-components-library/p-Q-tWjk7P.js.map +1 -0
- package/dist/web-components-library/p-a1db3939.entry.js +2 -0
- package/dist/web-components-library/p-a1db3939.entry.js.map +1 -0
- package/dist/web-components-library/p-a6f29ff5.entry.js +2 -0
- package/dist/web-components-library/p-a6f29ff5.entry.js.map +1 -0
- package/dist/web-components-library/p-a8e42a7c.entry.js +2 -0
- package/dist/web-components-library/p-a8e42a7c.entry.js.map +1 -0
- package/dist/web-components-library/p-a8fe9ae0.entry.js +2 -0
- package/dist/web-components-library/p-a8fe9ae0.entry.js.map +1 -0
- package/dist/web-components-library/p-ab64e360.entry.js +2 -0
- package/dist/web-components-library/p-ab64e360.entry.js.map +1 -0
- package/dist/web-components-library/p-acba8f34.entry.js +2 -0
- package/dist/web-components-library/p-acba8f34.entry.js.map +1 -0
- package/dist/web-components-library/p-ace68b04.entry.js +2 -0
- package/dist/web-components-library/p-ace68b04.entry.js.map +1 -0
- package/dist/web-components-library/p-ad88d4a5.entry.js +2 -0
- package/dist/web-components-library/p-ad88d4a5.entry.js.map +1 -0
- package/dist/web-components-library/p-ae8d5494.entry.js +2 -0
- package/dist/web-components-library/p-ae8d5494.entry.js.map +1 -0
- package/dist/web-components-library/p-af8fec68.entry.js +17 -0
- package/dist/web-components-library/p-af8fec68.entry.js.map +1 -0
- package/dist/web-components-library/p-b4140668.entry.js +2 -0
- package/dist/web-components-library/p-b4140668.entry.js.map +1 -0
- package/dist/web-components-library/p-bff500a3.entry.js +2 -0
- package/dist/web-components-library/p-bff500a3.entry.js.map +1 -0
- package/dist/web-components-library/p-d09060af.entry.js +2 -0
- package/dist/web-components-library/p-d09060af.entry.js.map +1 -0
- package/dist/web-components-library/p-da213c6e.entry.js +2 -0
- package/dist/web-components-library/p-da213c6e.entry.js.map +1 -0
- package/dist/web-components-library/p-e4622c5d.entry.js +2 -0
- package/dist/web-components-library/p-e4622c5d.entry.js.map +1 -0
- package/dist/web-components-library/p-e7e98d15.entry.js +2 -0
- package/dist/web-components-library/p-e7e98d15.entry.js.map +1 -0
- package/dist/web-components-library/p-e87e13b0.entry.js +2 -0
- package/dist/web-components-library/p-e87e13b0.entry.js.map +1 -0
- package/dist/web-components-library/p-e9212c7a.entry.js +2 -0
- package/dist/web-components-library/p-e9212c7a.entry.js.map +1 -0
- package/dist/web-components-library/p-e9722221.entry.js +8 -0
- package/dist/web-components-library/p-e9722221.entry.js.map +1 -0
- package/dist/web-components-library/p-e9ed3594.entry.js +2 -0
- package/dist/web-components-library/p-e9ed3594.entry.js.map +1 -0
- package/dist/web-components-library/p-eb5e4333.entry.js +2 -0
- package/dist/web-components-library/p-eb5e4333.entry.js.map +1 -0
- package/dist/web-components-library/p-ee711acf.entry.js +2 -0
- package/dist/web-components-library/p-ee711acf.entry.js.map +1 -0
- package/dist/web-components-library/p-fa4e8b1b.entry.js +2 -0
- package/dist/web-components-library/p-fa4e8b1b.entry.js.map +1 -0
- package/dist/web-components-library/p-fe279683.entry.js +2 -0
- package/dist/web-components-library/p-fe279683.entry.js.map +1 -0
- package/dist/web-components-library/web-components-library.css +0 -62
- package/dist/web-components-library/web-components-library.esm.js +2 -1
- package/dist/web-components-library/web-components-library.esm.js.map +1 -0
- package/package.json +5 -5
- package/react/components.d.ts +1 -0
- package/react/components.js +3 -2
- package/www/build/index.esm.js +2 -1
- package/www/build/index.esm.js.map +1 -0
- package/www/build/p-0a10c7d7.entry.js +2 -0
- package/www/build/p-0a10c7d7.entry.js.map +1 -0
- package/www/build/p-0de3e2fa.entry.js +2 -0
- package/www/build/p-0de3e2fa.entry.js.map +1 -0
- package/www/build/p-0eb833b6.entry.js +2 -0
- package/www/build/p-0eb833b6.entry.js.map +1 -0
- package/www/build/p-17a9c2b3.entry.js +2 -0
- package/www/build/p-17a9c2b3.entry.js.map +1 -0
- package/www/build/p-235a1c1d.entry.js +2 -0
- package/www/build/p-235a1c1d.entry.js.map +1 -0
- package/www/build/p-286690fd.entry.js +2 -0
- package/www/build/p-286690fd.entry.js.map +1 -0
- package/www/build/p-288c1f55.entry.js +2 -0
- package/www/build/p-288c1f55.entry.js.map +1 -0
- package/www/build/p-2b05eaef.entry.js +2 -0
- package/www/build/p-2b05eaef.entry.js.map +1 -0
- package/www/build/p-2c63a798.entry.js +2 -0
- package/www/build/p-2c63a798.entry.js.map +1 -0
- package/www/build/p-315ac39c.entry.js +2 -0
- package/www/build/p-315ac39c.entry.js.map +1 -0
- package/www/build/p-35653b5e.entry.js +2 -0
- package/www/build/p-35653b5e.entry.js.map +1 -0
- package/www/build/p-38e4e01f.entry.js +2 -0
- package/www/build/p-38e4e01f.entry.js.map +1 -0
- package/www/build/p-3b3e1ffb.entry.js +2 -0
- package/www/build/p-3b3e1ffb.entry.js.map +1 -0
- package/www/build/p-3b7f5d80.entry.js +2 -0
- package/www/build/p-3b7f5d80.entry.js.map +1 -0
- package/www/build/p-40694478.entry.js +2 -0
- package/www/build/p-40694478.entry.js.map +1 -0
- package/www/build/p-440e5b62.entry.js +2 -0
- package/www/build/p-440e5b62.entry.js.map +1 -0
- package/www/build/p-44410388.entry.js +2 -0
- package/www/build/p-44410388.entry.js.map +1 -0
- package/www/build/p-508eb530.entry.js +2 -0
- package/www/build/p-508eb530.entry.js.map +1 -0
- package/www/build/p-50a09bf1.entry.js +2 -0
- package/www/build/p-50a09bf1.entry.js.map +1 -0
- package/www/build/p-54f98f8e.entry.js +2 -0
- package/www/build/p-54f98f8e.entry.js.map +1 -0
- package/www/build/p-5a0424cd.entry.js +2 -0
- package/www/build/p-5a0424cd.entry.js.map +1 -0
- package/www/build/p-5ba350d8.entry.js +2 -0
- package/www/build/p-5ba350d8.entry.js.map +1 -0
- package/www/build/p-643aaedc.entry.js +2 -0
- package/www/build/p-643aaedc.entry.js.map +1 -0
- package/www/build/p-654cbe9f.entry.js +2 -0
- package/www/build/p-654cbe9f.entry.js.map +1 -0
- package/www/build/p-6fc4fd53.entry.js +2 -0
- package/www/build/p-6fc4fd53.entry.js.map +1 -0
- package/www/build/{p-2621b31f.entry.js → p-72356b43.entry.js} +2 -1
- package/www/build/p-72356b43.entry.js.map +1 -0
- package/www/build/p-723c700f.entry.js +2 -0
- package/www/build/p-723c700f.entry.js.map +1 -0
- package/www/build/p-72da35ee.entry.js +2 -0
- package/www/build/p-72da35ee.entry.js.map +1 -0
- package/www/build/p-7313202f.entry.js +2 -0
- package/www/build/p-7313202f.entry.js.map +1 -0
- package/www/build/p-73ed9922.entry.js +2 -0
- package/www/build/p-73ed9922.entry.js.map +1 -0
- package/www/build/p-779a7476.entry.js +2 -0
- package/www/build/p-779a7476.entry.js.map +1 -0
- package/www/build/p-7a25961e.entry.js +2 -0
- package/www/build/p-7a25961e.entry.js.map +1 -0
- package/www/build/p-7dfb5290.entry.js +2 -0
- package/www/build/p-7dfb5290.entry.js.map +1 -0
- package/www/build/p-7fff6cfd.entry.js +2 -0
- package/www/build/p-7fff6cfd.entry.js.map +1 -0
- package/www/build/p-8041306f.entry.js +2 -0
- package/www/build/p-8041306f.entry.js.map +1 -0
- package/www/build/p-8046cab0.entry.js +2 -0
- package/www/build/p-8046cab0.entry.js.map +1 -0
- package/www/build/{p-ebd8c113.entry.js → p-82c43c62.entry.js} +2 -1
- package/www/build/p-82c43c62.entry.js.map +1 -0
- package/www/build/p-82e04f79.entry.js +2 -0
- package/www/build/p-82e04f79.entry.js.map +1 -0
- package/www/build/p-87a5a352.entry.js +2 -0
- package/www/build/p-87a5a352.entry.js.map +1 -0
- package/www/build/p-8b0c232c.entry.js +2 -0
- package/www/build/p-8b0c232c.entry.js.map +1 -0
- package/www/build/p-8b1f745c.entry.js +2 -0
- package/www/build/p-8b1f745c.entry.js.map +1 -0
- package/www/build/p-8bd0e3e2.entry.js +2 -0
- package/www/build/p-8bd0e3e2.entry.js.map +1 -0
- package/www/build/p-8ca86be7.entry.js +2 -0
- package/www/build/p-8ca86be7.entry.js.map +1 -0
- package/www/build/p-8ce8d90d.entry.js +2 -0
- package/www/build/p-8ce8d90d.entry.js.map +1 -0
- package/www/build/p-927d9062.entry.js +2 -0
- package/www/build/p-927d9062.entry.js.map +1 -0
- package/www/build/p-931f2a16.entry.js +2 -0
- package/www/build/p-931f2a16.entry.js.map +1 -0
- package/www/build/p-960cd1d9.entry.js +2 -0
- package/www/build/p-960cd1d9.entry.js.map +1 -0
- package/www/build/p-9f0e91f5.entry.js +2 -0
- package/www/build/p-9f0e91f5.entry.js.map +1 -0
- package/www/build/p-AwzX9V8L.js +2 -1
- package/www/build/p-AwzX9V8L.js.map +1 -0
- package/www/build/p-B3nR3-Jw.js +2 -0
- package/www/build/p-B3nR3-Jw.js.map +1 -0
- package/www/build/p-B85MJLTf.js +2 -1
- package/www/build/p-B85MJLTf.js.map +1 -0
- package/www/build/p-BEHxru6n.js +3 -0
- package/www/build/p-BEHxru6n.js.map +1 -0
- package/www/build/p-Bx6o9v2_.js +2 -0
- package/www/build/p-Bx6o9v2_.js.map +1 -0
- package/www/build/p-C8pbzcmM.js +7 -0
- package/www/build/p-C8pbzcmM.js.map +1 -0
- package/www/build/p-CscBC1Z4.js +6 -0
- package/www/build/p-CscBC1Z4.js.map +1 -0
- package/www/build/p-Q-tWjk7P.js +2 -1
- package/www/build/p-Q-tWjk7P.js.map +1 -0
- package/www/build/p-a1db3939.entry.js +2 -0
- package/www/build/p-a1db3939.entry.js.map +1 -0
- package/www/build/p-a6f29ff5.entry.js +2 -0
- package/www/build/p-a6f29ff5.entry.js.map +1 -0
- package/www/build/p-a8e42a7c.entry.js +2 -0
- package/www/build/p-a8e42a7c.entry.js.map +1 -0
- package/www/build/p-a8fe9ae0.entry.js +2 -0
- package/www/build/p-a8fe9ae0.entry.js.map +1 -0
- package/www/build/p-ab64e360.entry.js +2 -0
- package/www/build/p-ab64e360.entry.js.map +1 -0
- package/www/build/p-acba8f34.entry.js +2 -0
- package/www/build/p-acba8f34.entry.js.map +1 -0
- package/www/build/p-ace68b04.entry.js +2 -0
- package/www/build/p-ace68b04.entry.js.map +1 -0
- package/www/build/p-ad88d4a5.entry.js +2 -0
- package/www/build/p-ad88d4a5.entry.js.map +1 -0
- package/www/build/p-ae8d5494.entry.js +2 -0
- package/www/build/p-ae8d5494.entry.js.map +1 -0
- package/www/build/p-af8fec68.entry.js +17 -0
- package/www/build/p-af8fec68.entry.js.map +1 -0
- package/www/build/p-b289ae9e.js +2 -0
- package/www/build/p-b4140668.entry.js +2 -0
- package/www/build/p-b4140668.entry.js.map +1 -0
- package/www/build/p-bff500a3.entry.js +2 -0
- package/www/build/p-bff500a3.entry.js.map +1 -0
- package/www/build/{p-c9523ede.css → p-c60c851a.css} +0 -62
- package/www/build/p-d09060af.entry.js +2 -0
- package/www/build/p-d09060af.entry.js.map +1 -0
- package/www/build/p-da213c6e.entry.js +2 -0
- package/www/build/p-da213c6e.entry.js.map +1 -0
- package/www/build/p-e4622c5d.entry.js +2 -0
- package/www/build/p-e4622c5d.entry.js.map +1 -0
- package/www/build/p-e7e98d15.entry.js +2 -0
- package/www/build/p-e7e98d15.entry.js.map +1 -0
- package/www/build/p-e87e13b0.entry.js +2 -0
- package/www/build/p-e87e13b0.entry.js.map +1 -0
- package/www/build/p-e9212c7a.entry.js +2 -0
- package/www/build/p-e9212c7a.entry.js.map +1 -0
- package/www/build/p-e9722221.entry.js +8 -0
- package/www/build/p-e9722221.entry.js.map +1 -0
- package/www/build/p-e9ed3594.entry.js +2 -0
- package/www/build/p-e9ed3594.entry.js.map +1 -0
- package/www/build/p-eb5e4333.entry.js +2 -0
- package/www/build/p-eb5e4333.entry.js.map +1 -0
- package/www/build/p-ee711acf.entry.js +2 -0
- package/www/build/p-ee711acf.entry.js.map +1 -0
- package/www/build/p-fa4e8b1b.entry.js +2 -0
- package/www/build/p-fa4e8b1b.entry.js.map +1 -0
- package/www/build/p-fe279683.entry.js +2 -0
- package/www/build/p-fe279683.entry.js.map +1 -0
- package/www/build/web-components-library.css +0 -62
- package/www/build/web-components-library.esm.js +2 -1
- package/www/build/web-components-library.esm.js.map +1 -0
- package/www/index.html +1 -1
- package/dist/cjs/utils-BY7xrW7W.js +0 -265
- package/dist/collection/components/css-components/z-table/styles.css +0 -61
- package/dist/esm/utils-BEzZQwOB.js +0 -249
- package/dist/web-components-library/p-053470ec.entry.js +0 -1
- package/dist/web-components-library/p-071d2a57.entry.js +0 -1
- package/dist/web-components-library/p-0e9e73ed.entry.js +0 -1
- package/dist/web-components-library/p-1397ebb2.entry.js +0 -1
- package/dist/web-components-library/p-13d3c53c.entry.js +0 -1
- package/dist/web-components-library/p-1418f4d2.entry.js +0 -1
- package/dist/web-components-library/p-1432864e.entry.js +0 -1
- package/dist/web-components-library/p-150171da.entry.js +0 -1
- package/dist/web-components-library/p-16d99a59.entry.js +0 -1
- package/dist/web-components-library/p-17276ae7.entry.js +0 -1
- package/dist/web-components-library/p-1afc3227.entry.js +0 -1
- package/dist/web-components-library/p-1d00c30e.entry.js +0 -1
- package/dist/web-components-library/p-263b4960.entry.js +0 -1
- package/dist/web-components-library/p-2f79d3fd.entry.js +0 -1
- package/dist/web-components-library/p-3aa12417.entry.js +0 -1
- package/dist/web-components-library/p-4170d86b.entry.js +0 -1
- package/dist/web-components-library/p-41edfbd3.entry.js +0 -1
- package/dist/web-components-library/p-420b547f.entry.js +0 -1
- package/dist/web-components-library/p-473594e3.entry.js +0 -1
- package/dist/web-components-library/p-48ef2fb1.entry.js +0 -1
- package/dist/web-components-library/p-50a15c76.entry.js +0 -16
- package/dist/web-components-library/p-5c3bc8a1.entry.js +0 -1
- package/dist/web-components-library/p-733ddcca.entry.js +0 -1
- package/dist/web-components-library/p-7648a0b0.entry.js +0 -1
- package/dist/web-components-library/p-7a58bb24.entry.js +0 -1
- package/dist/web-components-library/p-7b4ca721.entry.js +0 -1
- package/dist/web-components-library/p-7fa3211f.entry.js +0 -2
- package/dist/web-components-library/p-80eb4ada.entry.js +0 -1
- package/dist/web-components-library/p-8237255f.entry.js +0 -1
- package/dist/web-components-library/p-8711674f.entry.js +0 -1
- package/dist/web-components-library/p-90a25f58.entry.js +0 -1
- package/dist/web-components-library/p-93e2f49e.entry.js +0 -1
- package/dist/web-components-library/p-94bc612d.entry.js +0 -1
- package/dist/web-components-library/p-98165529.entry.js +0 -1
- package/dist/web-components-library/p-99d355d6.entry.js +0 -1
- package/dist/web-components-library/p-9b2589a6.entry.js +0 -1
- package/dist/web-components-library/p-9f9b9b8e.entry.js +0 -1
- package/dist/web-components-library/p-B0bOjMSb.js +0 -1
- package/dist/web-components-library/p-B8WJfd4z.js +0 -1
- package/dist/web-components-library/p-BKCj6NR2.js +0 -1
- package/dist/web-components-library/p-a0675e97.entry.js +0 -1
- package/dist/web-components-library/p-a26011c7.entry.js +0 -1
- package/dist/web-components-library/p-a336b496.entry.js +0 -1
- package/dist/web-components-library/p-a9282ee9.entry.js +0 -1
- package/dist/web-components-library/p-acd32089.entry.js +0 -1
- package/dist/web-components-library/p-addac0e0.entry.js +0 -1
- package/dist/web-components-library/p-b127d150.entry.js +0 -1
- package/dist/web-components-library/p-b64dd64c.entry.js +0 -1
- package/dist/web-components-library/p-b757d2dc.entry.js +0 -1
- package/dist/web-components-library/p-b76f39fa.entry.js +0 -1
- package/dist/web-components-library/p-b7907578.entry.js +0 -1
- package/dist/web-components-library/p-bb319405.entry.js +0 -1
- package/dist/web-components-library/p-c3a6159b.entry.js +0 -1
- package/dist/web-components-library/p-ca89f8e8.entry.js +0 -1
- package/dist/web-components-library/p-cb6af60f.entry.js +0 -1
- package/dist/web-components-library/p-d0c0e9f1.entry.js +0 -1
- package/dist/web-components-library/p-d6ff2160.entry.js +0 -1
- package/dist/web-components-library/p-d756e131.entry.js +0 -1
- package/dist/web-components-library/p-d79a7787.entry.js +0 -1
- package/dist/web-components-library/p-d7fc390f.entry.js +0 -1
- package/dist/web-components-library/p-d9998674.entry.js +0 -1
- package/dist/web-components-library/p-d9a20a51.entry.js +0 -1
- package/dist/web-components-library/p-da977942.entry.js +0 -1
- package/dist/web-components-library/p-e03fc01d.entry.js +0 -1
- package/dist/web-components-library/p-eb093728.entry.js +0 -1
- package/dist/web-components-library/p-ecf55fe6.entry.js +0 -1
- package/dist/web-components-library/p-f2ebf81b.entry.js +0 -1
- package/dist/web-components-library/p-f33d8f8d.entry.js +0 -1
- package/dist/web-components-library/p-f4082ec2.entry.js +0 -1
- package/dist/web-components-library/p-fIt9Ytc6.js +0 -2
- package/dist/web-components-library/p-fad8e9b8.entry.js +0 -1
- package/dist/web-components-library/p-fb7edb66.entry.js +0 -1
- package/dist/web-components-library/p-fea76ac6.entry.js +0 -1
- package/www/build/p-053470ec.entry.js +0 -1
- package/www/build/p-071d2a57.entry.js +0 -1
- package/www/build/p-0e9e73ed.entry.js +0 -1
- package/www/build/p-1397ebb2.entry.js +0 -1
- package/www/build/p-13d3c53c.entry.js +0 -1
- package/www/build/p-1418f4d2.entry.js +0 -1
- package/www/build/p-1432864e.entry.js +0 -1
- package/www/build/p-150171da.entry.js +0 -1
- package/www/build/p-16d99a59.entry.js +0 -1
- package/www/build/p-17276ae7.entry.js +0 -1
- package/www/build/p-1afc3227.entry.js +0 -1
- package/www/build/p-1d00c30e.entry.js +0 -1
- package/www/build/p-263b4960.entry.js +0 -1
- package/www/build/p-2f79d3fd.entry.js +0 -1
- package/www/build/p-3aa12417.entry.js +0 -1
- package/www/build/p-40eed148.js +0 -1
- package/www/build/p-4170d86b.entry.js +0 -1
- package/www/build/p-41edfbd3.entry.js +0 -1
- package/www/build/p-420b547f.entry.js +0 -1
- package/www/build/p-473594e3.entry.js +0 -1
- package/www/build/p-48ef2fb1.entry.js +0 -1
- package/www/build/p-50a15c76.entry.js +0 -16
- package/www/build/p-5c3bc8a1.entry.js +0 -1
- package/www/build/p-733ddcca.entry.js +0 -1
- package/www/build/p-7648a0b0.entry.js +0 -1
- package/www/build/p-7a58bb24.entry.js +0 -1
- package/www/build/p-7b4ca721.entry.js +0 -1
- package/www/build/p-7fa3211f.entry.js +0 -2
- package/www/build/p-80eb4ada.entry.js +0 -1
- package/www/build/p-8237255f.entry.js +0 -1
- package/www/build/p-8711674f.entry.js +0 -1
- package/www/build/p-90a25f58.entry.js +0 -1
- package/www/build/p-93e2f49e.entry.js +0 -1
- package/www/build/p-94bc612d.entry.js +0 -1
- package/www/build/p-98165529.entry.js +0 -1
- package/www/build/p-99d355d6.entry.js +0 -1
- package/www/build/p-9b2589a6.entry.js +0 -1
- package/www/build/p-9f9b9b8e.entry.js +0 -1
- package/www/build/p-B0bOjMSb.js +0 -1
- package/www/build/p-B8WJfd4z.js +0 -1
- package/www/build/p-BKCj6NR2.js +0 -1
- package/www/build/p-a0675e97.entry.js +0 -1
- package/www/build/p-a26011c7.entry.js +0 -1
- package/www/build/p-a336b496.entry.js +0 -1
- package/www/build/p-a9282ee9.entry.js +0 -1
- package/www/build/p-acd32089.entry.js +0 -1
- package/www/build/p-addac0e0.entry.js +0 -1
- package/www/build/p-b127d150.entry.js +0 -1
- package/www/build/p-b64dd64c.entry.js +0 -1
- package/www/build/p-b757d2dc.entry.js +0 -1
- package/www/build/p-b76f39fa.entry.js +0 -1
- package/www/build/p-b7907578.entry.js +0 -1
- package/www/build/p-bb319405.entry.js +0 -1
- package/www/build/p-c3a6159b.entry.js +0 -1
- package/www/build/p-ca89f8e8.entry.js +0 -1
- package/www/build/p-cb6af60f.entry.js +0 -1
- package/www/build/p-d0c0e9f1.entry.js +0 -1
- package/www/build/p-d6ff2160.entry.js +0 -1
- package/www/build/p-d756e131.entry.js +0 -1
- package/www/build/p-d79a7787.entry.js +0 -1
- package/www/build/p-d7fc390f.entry.js +0 -1
- package/www/build/p-d9998674.entry.js +0 -1
- package/www/build/p-d9a20a51.entry.js +0 -1
- package/www/build/p-da977942.entry.js +0 -1
- package/www/build/p-e03fc01d.entry.js +0 -1
- package/www/build/p-eb093728.entry.js +0 -1
- package/www/build/p-ecf55fe6.entry.js +0 -1
- package/www/build/p-f2ebf81b.entry.js +0 -1
- package/www/build/p-f33d8f8d.entry.js +0 -1
- package/www/build/p-f4082ec2.entry.js +0 -1
- package/www/build/p-fIt9Ytc6.js +0 -2
- package/www/build/p-fad8e9b8.entry.js +0 -1
- package/www/build/p-fb7edb66.entry.js +0 -1
- package/www/build/p-fea76ac6.entry.js +0 -1
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,c as e,h as s,H as i,d as o}from"./p-BEHxru6n.js";import{g as a}from"./p-B3nR3-Jw.js";const n=()=>`:host{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:0;font-family:var(--font-family-sans)}:host,::slotted(*),*{box-sizing:border-box}::slotted(a){text-decoration:none}::slotted(*){color:var(--color-default-text);font-family:var(--font-family-sans);font-weight:var(--font-rg)}.label{display:flex;width:100%;align-items:center;padding:var(--space-unit) 0;border:0;border-bottom:var(--border-size-small) solid var(--color-surface03);margin:0;background:transparent;border-radius:0;cursor:pointer;text-align:left}:host(:last-child:not([open])) .label{border-bottom:none}:host(:is([active],[open])) .label,.label:focus:focus-visible,.label:hover{border-color:var(--color-primary01)}.label:focus:focus-visible{box-shadow:var(--shadow-focus-primary);outline:none}:host(:is([active],[open])) .label ::slotted(*),.label:focus:focus-visible ::slotted(*),.label:hover ::slotted(*){font-weight:var(--font-bd)}::slotted([data-text]){display:inline-flex;flex-direction:column}::slotted([data-text])::after{overflow:hidden;height:0;content:attr(data-text);content:attr(data-text) / "";font-weight:var(--font-bd);pointer-events:none;user-select:none;visibility:hidden}@media speech{::slotted([data-text])::after{display:none}}.label ::slotted(*){width:100%;margin:0;font-size:var(--font-size-3);line-height:1.5}.label z-icon{margin-left:calc(var(--space-unit) * 4);fill:var(--color-default-icon)}.items{display:flex;width:100%;flex-direction:column;padding:calc(var(--space-unit) / 2);padding-bottom:calc(var(--space-unit) * 1.5)}.items[hidden]{display:none}::slotted([slot="section"]){display:inline-flex;padding:calc(var(--space-unit) / 2);margin:0;font-size:var(--font-size-1);line-height:1.333;outline:none}::slotted([slot="section"]:last-of-type){border:none}::slotted([slot="section"]:focus:focus-visible){box-shadow:var(--shadow-focus-primary);color:var(--color-primary01)}::slotted([slot="section"]:hover),::slotted([slot="section"]:focus:focus-visible),::slotted([slot="section"]:active),::slotted([slot="section"][active]),::slotted([slot="section"][data-active]){color:var(--color-primary01);font-weight:var(--font-bd)}`;const l=class{get focusableItem(){return this.items.find((({tabIndex:t})=>t===0))}toggle(){if(!this.hasItems){return}this.open=!this.open}setItemsA11yAttrs(){if(!this.hasItems){return}this.items.forEach((t=>{t.setAttribute("role","menuitem");t.tabIndex=-1}))}onItemsChange(){this.items=Array.from(this.host.querySelectorAll('[slot="section"]'));this.hasItems=this.items.length>0;this.setItemsA11yAttrs()}onLabelSlotChange(t){const e=t.target.assignedElements()[0];e.dataset.text=e===null||e===void 0?void 0:e.textContent}onLabelClick(){this.toggle();this.setFocus()}onLabelKeydown(t){if(t.key===a.ENTER||t.key===a.SPACE){t.preventDefault();t.stopPropagation();this.toggle();if(this.open){this.focustFirstItem()}}}moveFocus(t,e){t.tabIndex=0;setTimeout((()=>{t.focus()}),100);if(e){e.tabIndex=-1}}focustFirstItem(){this.moveFocus(this.items[0])}async focusLastItem(){this.moveFocus(this.items[this.items.length-1])}async setFocus(){this.htmlTabindex=0;setTimeout((()=>{this.label.focus()}),100)}onOpenChange(){if(!this.open){this.setItemsA11yAttrs();this.closed.emit()}else{this.opened.emit()}}onTabindexChange(){if(!this.label){return}this.label.tabIndex=this.htmlTabindex}onItemsKeydown(t){switch(t.key){case a.ESC:case a.ARROW_LEFT:if(!this.open){break}t.preventDefault();t.stopPropagation();this.moveFocus(this.label,this.focusableItem);this.open=false;break;case a.ARROW_RIGHT:if(this.open){break}t.preventDefault();t.stopPropagation();this.open=true;this.focustFirstItem();break;case a.ARROW_DOWN:{if(!this.open){break}if(document.activeElement===this.host){t.preventDefault();t.stopPropagation();this.focustFirstItem();break}const e=this.items.indexOf(this.focusableItem);const s=this.items[e+1];if(s){t.preventDefault();t.stopPropagation();this.moveFocus(s,this.focusableItem)}else{this.htmlTabindex=0;this.focusableItem.tabIndex=-1}break}case a.ARROW_UP:{if(!this.open||document.activeElement===this.host){break}const e=this.items.indexOf(this.focusableItem);const s=this.items[e-1];t.preventDefault();t.stopPropagation();if(s){this.moveFocus(s,this.focusableItem)}else{this.focusableItem.tabIndex=-1;this.setFocus()}break}}}constructor(s){t(this,s);this.opened=e(this,"opened",7);this.closed=e(this,"closed",7);this.htmlTabindex=-1;this.toggle=this.toggle.bind(this);this.onItemsChange=this.onItemsChange.bind(this);this.onLabelSlotChange=this.onLabelSlotChange.bind(this);this.onLabelClick=this.onLabelClick.bind(this);this.onLabelKeydown=this.onLabelKeydown.bind(this);this.onItemsKeydown=this.onItemsKeydown.bind(this)}connectedCallback(){this.onItemsChange()}render(){return s(i,{key:"fff56aa316372fc2df80738c86be52be59e4deb9",open:this.open},s("button",{key:"89630a6dc1985a9236dd7f7d0fdd2b5e5b8bd580",ref:t=>this.label=t,class:"label","aria-haspopup":`${!!this.hasItems}`,"aria-expanded":`${!!this.open}`,role:"menuitem",tabindex:this.htmlTabindex,onClick:this.onLabelClick,onKeyDown:this.onLabelKeydown},s("slot",{key:"5b131d904e2154fb8c852a734bcc8dd9b421da65",onSlotchange:this.onLabelSlotChange}),this.hasItems&&s("z-icon",{key:"0463aa91e57fa4766c0a11fd3e329752fd770240",name:this.open?"chevron-up":"chevron-down"})),s("div",{key:"f919168a46d3d3ebd7c12fce97d84f029ee938bc",class:"items",role:"menu",hidden:!this.open},s("slot",{key:"e21f494480c18514ff4081b2aa75a8f856f74cc6",name:"section",onSlotchange:this.onItemsChange})))}get host(){return o(this)}static get watchers(){return{open:[{onOpenChange:0}],htmlTabindex:[{onTabindexChange:0}]}}};l.style=n();export{l as z_menu_section};
|
|
2
|
+
//# sourceMappingURL=p-3b3e1ffb.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["stylesCss","ZMenuSection","focusableItem","this","items","find","tabIndex","toggle","hasItems","open","setItemsA11yAttrs","forEach","item","setAttribute","onItemsChange","Array","from","host","querySelectorAll","length","onLabelSlotChange","ev","labelElement","target","assignedElements","dataset","text","textContent","onLabelClick","setFocus","onLabelKeydown","key","KeyboardCode","ENTER","SPACE","preventDefault","stopPropagation","focustFirstItem","moveFocus","receiver","current","setTimeout","focus","focusLastItem","htmlTabindex","label","onOpenChange","closed","emit","opened","onTabindexChange","onItemsKeydown","ESC","ARROW_LEFT","ARROW_RIGHT","ARROW_DOWN","document","activeElement","currentIndex","indexOf","ARROW_UP","constructor","hostRef","bind","connectedCallback","render","h","Host","ref","el","class","role","tabindex","onClick","onKeyDown","onSlotchange","name","hidden"],"sources":["src/components/z-menu-section/styles.css?tag=z-menu-section&encapsulation=shadow","src/components/z-menu-section/index.tsx"],"sourcesContent":[":host {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n padding: 0;\n font-family: var(--font-family-sans);\n}\n\n:host,\n::slotted(*),\n* {\n box-sizing: border-box;\n}\n\n::slotted(a) {\n text-decoration: none;\n}\n\n::slotted(*) {\n color: var(--color-default-text);\n font-family: var(--font-family-sans);\n font-weight: var(--font-rg);\n}\n\n.label {\n display: flex;\n width: 100%;\n align-items: center;\n padding: var(--space-unit) 0;\n border: 0;\n border-bottom: var(--border-size-small) solid var(--color-surface03);\n margin: 0;\n background: transparent;\n border-radius: 0;\n cursor: pointer;\n text-align: left;\n}\n\n:host(:last-child:not([open])) .label {\n border-bottom: none;\n}\n\n:host(:is([active], [open])) .label,\n.label:focus:focus-visible,\n.label:hover {\n border-color: var(--color-primary01);\n}\n\n.label:focus:focus-visible {\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n\n:host(:is([active], [open])) .label ::slotted(*),\n.label:focus:focus-visible ::slotted(*),\n.label:hover ::slotted(*) {\n font-weight: var(--font-bd);\n}\n\n::slotted([data-text]) {\n display: inline-flex;\n flex-direction: column;\n}\n\n/* Trick to prevent layout shifts on font-weight changes.\nThe trick is to put an hidden copy of the text already set to bold,\nso the needed space is correctly calculated before any hover/active state changes the\nfont-weight of the real text.\nThe hidden text has an height of 0px so it can expand the width without changing the height\nwhen placed below the real text using `flex-direction: column`. */\n::slotted([data-text])::after {\n overflow: hidden;\n height: 0;\n content: attr(data-text);\n content: attr(data-text) / \"\";\n font-weight: var(--font-bd);\n pointer-events: none;\n user-select: none;\n visibility: hidden;\n}\n\n@media speech {\n ::slotted([data-text])::after {\n display: none;\n }\n}\n\n.label ::slotted(*) {\n width: 100%;\n margin: 0;\n font-size: var(--font-size-3);\n line-height: 1.5;\n}\n\n.label z-icon {\n margin-left: calc(var(--space-unit) * 4);\n fill: var(--color-default-icon);\n}\n\n.items {\n display: flex;\n width: 100%;\n flex-direction: column;\n padding: calc(var(--space-unit) / 2);\n padding-bottom: calc(var(--space-unit) * 1.5);\n}\n\n.items[hidden] {\n display: none;\n}\n\n::slotted([slot=\"section\"]) {\n display: inline-flex;\n padding: calc(var(--space-unit) / 2);\n margin: 0;\n font-size: var(--font-size-1);\n line-height: 1.333;\n outline: none;\n}\n\n::slotted([slot=\"section\"]:last-of-type) {\n border: none;\n}\n\n::slotted([slot=\"section\"]:focus:focus-visible) {\n box-shadow: var(--shadow-focus-primary);\n color: var(--color-primary01);\n}\n\n::slotted([slot=\"section\"]:hover),\n::slotted([slot=\"section\"]:focus:focus-visible),\n::slotted([slot=\"section\"]:active),\n::slotted([slot=\"section\"][active]),\n::slotted([slot=\"section\"][data-active]) {\n color: var(--color-primary01);\n font-weight: var(--font-bd);\n}\n","import {\n Component,\n ComponentInterface,\n Element,\n Event,\n EventEmitter,\n Host,\n Listen,\n Method,\n Prop,\n State,\n Watch,\n h,\n} from \"@stencil/core\";\nimport {KeyboardCode} from \"../../beans\";\n\n/**\n * A component to create submenus inside the ZMenu.\n * @slot - Label of the menu section.\n * @slot section - Single entry of the menu section. Set the same slot name to different elements to put many of them. Add the `data-active` attribute to a slotted element to highlight it (`active` also works but `data-active` is preferable).\n */\n@Component({\n tag: \"z-menu-section\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZMenuSection implements ComponentInterface {\n @Element() host: HTMLZMenuSectionElement;\n\n /** Active state */\n @Prop({reflect: true})\n active?: boolean;\n\n /**\n * Tabindex value to set on the label button.\n * Useful to manage keyboard navigation focus with roving tabindex handled by this component's parent (usually ZMenu).\n */\n @Prop()\n htmlTabindex = -1;\n\n /** The opening state of the section. */\n @Prop({mutable: true})\n open: boolean;\n\n @State()\n hasItems: boolean;\n\n @State()\n items: HTMLElement[];\n\n /** The section has been opened. */\n @Event()\n opened: EventEmitter;\n\n /** The section has been closed. */\n @Event()\n closed: EventEmitter;\n\n private label: HTMLButtonElement;\n\n private get focusableItem(): HTMLElement {\n return this.items.find(({tabIndex}) => tabIndex === 0);\n }\n\n private toggle(): void {\n if (!this.hasItems) {\n return;\n }\n\n this.open = !this.open;\n }\n\n private setItemsA11yAttrs(): void {\n if (!this.hasItems) {\n return;\n }\n\n this.items.forEach((item) => {\n item.setAttribute(\"role\", \"menuitem\");\n item.tabIndex = -1;\n });\n }\n\n private onItemsChange(): void {\n this.items = Array.from(this.host.querySelectorAll('[slot=\"section\"]')) as HTMLElement[];\n this.hasItems = this.items.length > 0;\n this.setItemsA11yAttrs();\n }\n\n /**\n * Sets slotted item text as `data-text` attribute value, to let CSS use it through `attr()`.\n * @param ev Slotchange event\n */\n private onLabelSlotChange(ev: Event): void {\n const labelElement = (ev.target as HTMLSlotElement).assignedElements()[0] as HTMLElement;\n labelElement.dataset.text = labelElement?.textContent;\n }\n\n private onLabelClick(): void {\n this.toggle();\n this.setFocus();\n }\n\n private onLabelKeydown(ev: KeyboardEvent): void {\n if (ev.key === KeyboardCode.ENTER || ev.key === KeyboardCode.SPACE) {\n ev.preventDefault();\n ev.stopPropagation();\n this.toggle();\n if (this.open) {\n this.focustFirstItem();\n }\n }\n }\n\n /**\n * Move focus and adjust the tabindex value of `receiver` and `current` elements,\n * setting -1 to the `current` and 0 to the `receiver`, then focus the `receiver` element.\n */\n private moveFocus(receiver: HTMLElement, current?: HTMLElement): void {\n receiver.tabIndex = 0;\n setTimeout(() => {\n receiver.focus();\n }, 100);\n if (current) {\n current.tabIndex = -1;\n }\n }\n\n private focustFirstItem(): void {\n this.moveFocus(this.items[0]);\n }\n\n /** Focus the last item. */\n @Method()\n async focusLastItem(): Promise<void> {\n this.moveFocus(this.items[this.items.length - 1]);\n }\n\n /** Set tabindex of the label to 0, then focus it. */\n @Method()\n async setFocus(): Promise<void> {\n this.htmlTabindex = 0;\n setTimeout(() => {\n this.label.focus();\n }, 100);\n }\n\n @Watch(\"open\")\n onOpenChange(): void {\n if (!this.open) {\n this.setItemsA11yAttrs();\n this.closed.emit();\n } else {\n this.opened.emit();\n }\n }\n\n @Watch(\"htmlTabindex\")\n onTabindexChange(): void {\n if (!this.label) {\n return;\n }\n\n this.label.tabIndex = this.htmlTabindex;\n }\n\n @Listen(\"keydown\")\n private onItemsKeydown(ev: KeyboardEvent): void {\n switch (ev.key) {\n case KeyboardCode.ESC:\n case KeyboardCode.ARROW_LEFT:\n if (!this.open) {\n break;\n }\n ev.preventDefault();\n ev.stopPropagation();\n this.moveFocus(this.label, this.focusableItem);\n this.open = false;\n break;\n case KeyboardCode.ARROW_RIGHT:\n if (this.open) {\n break;\n }\n ev.preventDefault();\n ev.stopPropagation();\n this.open = true;\n this.focustFirstItem();\n break;\n case KeyboardCode.ARROW_DOWN: {\n if (!this.open) {\n break;\n }\n if (document.activeElement === this.host) {\n ev.preventDefault();\n ev.stopPropagation();\n this.focustFirstItem();\n break;\n }\n const currentIndex = this.items.indexOf(this.focusableItem);\n const receiver = this.items[currentIndex + 1];\n if (receiver) {\n ev.preventDefault();\n ev.stopPropagation();\n this.moveFocus(receiver, this.focusableItem);\n } else {\n this.htmlTabindex = 0;\n this.focusableItem.tabIndex = -1;\n }\n break;\n }\n case KeyboardCode.ARROW_UP: {\n if (!this.open || document.activeElement === this.host) {\n break;\n }\n const currentIndex = this.items.indexOf(this.focusableItem);\n const receiver = this.items[currentIndex - 1];\n ev.preventDefault();\n ev.stopPropagation();\n if (receiver) {\n this.moveFocus(receiver, this.focusableItem);\n } else {\n // since there isn't a previous item to focus, give the focus to the label element\n this.focusableItem.tabIndex = -1;\n this.setFocus();\n }\n break;\n }\n }\n }\n\n constructor() {\n this.toggle = this.toggle.bind(this);\n this.onItemsChange = this.onItemsChange.bind(this);\n this.onLabelSlotChange = this.onLabelSlotChange.bind(this);\n this.onLabelClick = this.onLabelClick.bind(this);\n this.onLabelKeydown = this.onLabelKeydown.bind(this);\n this.onItemsKeydown = this.onItemsKeydown.bind(this);\n }\n\n connectedCallback(): void {\n this.onItemsChange();\n }\n\n render(): HTMLZMenuSectionElement {\n return (\n <Host open={this.open}>\n <button\n ref={(el) => (this.label = el)}\n class=\"label\"\n aria-haspopup={`${!!this.hasItems}`}\n aria-expanded={`${!!this.open}`}\n role=\"menuitem\"\n tabindex={this.htmlTabindex}\n onClick={this.onLabelClick}\n onKeyDown={this.onLabelKeydown}\n >\n <slot onSlotchange={this.onLabelSlotChange} />\n {this.hasItems && <z-icon name={this.open ? \"chevron-up\" : \"chevron-down\"} />}\n </button>\n <div\n class=\"items\"\n role=\"menu\"\n hidden={!this.open}\n >\n <slot\n name=\"section\"\n onSlotchange={this.onItemsChange}\n />\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e,c as a,h as t,H as i,d as r}from"./p-BEHxru6n.js";import{e as n,B as h,u as o,v as s}from"./p-B3nR3-Jw.js";const p=()=>`:host{--app-header-typography-1-size:24px;--app-header-typography-2-size:28px;--app-header-typography-3-size:32px;--app-header-typography-4-size:36px;--app-header-typography-5-size:42px;--app-header-typography-6-size:48px;--app-header-typography-7-size:54px;--app-header-typography-8-size:60px;--app-header-typography-9-size:68px;--app-header-typography-10-size:76px;--app-header-typography-11-size:84px;--app-header-typography-12-size:92px;--app-header-typography-1-lineheight:1.33;--app-header-typography-2-lineheight:1.29;--app-header-typography-3-lineheight:1.25;--app-header-typography-4-lineheight:1.24;--app-header-typography-5-lineheight:1.24;--app-header-typography-6-lineheight:1.25;--app-header-typography-7-lineheight:1.2;--app-header-typography-8-lineheight:1.26;--app-header-typography-9-lineheight:1.24;--app-header-typography-10-lineheight:1.26;--app-header-typography-11-lineheight:1.2;--app-header-typography-12-lineheight:1.2;--app-header-typography-1-tracking:calc(-0.2 / 1em);--app-header-typography-2-tracking:calc(-0.4 / 1em);--app-header-typography-3-tracking:calc(-0.6 / 1em);--app-header-typography-4-tracking:calc(-0.8 / 1em);--app-header-typography-5-tracking:calc(-1 / 1em);--app-header-typography-6-tracking:calc(-1.2 / 1em);--app-header-typography-7-tracking:calc(-1.4 / 1em);--app-header-typography-8-tracking:calc(-1.6 / 1em);--app-header-typography-9-tracking:calc(-1.8 / 1em);--app-header-typography-10-tracking:calc(-2 / 1em);--app-header-typography-11-tracking:calc(-2.2 / 1em);--app-header-typography-12-tracking:calc(-2.4 / 1em);--app-header-content-max-width:100%;--app-header-height:auto;--app-header-top-offset:48px;--app-header-drawer-trigger-size:calc(var(--space-unit) * 4);--app-header-bg:var(--color-surface01);--app-header-stucked-bg:var(--color-surface01);--app-header-text-color:var(--color-default-text);--app-header-title-font-size:var(--app-header-typography-3-size);--app-header-title-lineheight:var(--app-header-typography-3-lineheight);--app-header-title-letter-spacing:var(--app-header-typography-3-tracking);--app-header-stucked-text-color:var(--color-default-text);position:relative;display:block;height:var(--app-header-height);color:var(--app-header-text-color)}:host,*{box-sizing:border-box}.heading-panel{position:relative;display:flex;width:100%;max-width:var(--app-header-content-max-width);flex-direction:column;flex-grow:0;flex-shrink:0;align-items:baseline;padding:var(--grid-margin);margin:0 auto;background:var(--app-header-bg);gap:calc(var(--space-unit) * 2) calc(var(--space-unit) * 5)}.hero-container+.heading-panel{background:transparent}:host(:empty) .heading-panel{padding:0}.heading-container{position:relative;z-index:1;display:flex;width:100%;max-width:100%;flex:1 auto;flex-direction:column;justify-content:flex-start}.heading-title{display:flex;max-width:100%;flex-direction:row;align-items:flex-start;column-gap:calc(var(--space-unit) * 2)}::slotted([slot="title"]),.heading-stuck .heading-title>*,::slotted([slot="stucked-title"]){margin:0;font-family:"IBM Plex Serif", serif;font-weight:var(--font-bd)}::slotted([slot="title"]){font-size:var(--app-header-title-font-size);letter-spacing:var(--app-header-title-letter-spacing);line-height:var(--app-header-title-lineheight)}.heading-stuck .heading-title>*,::slotted([slot="stucked-title"]){font-size:var(--app-header-typography-3-size);letter-spacing:var(--app-header-typography-3-tracking);line-height:var(--app-header-typography-3-lineheight)}:host(:not([menu-length="0"])) .heading-subtitle{padding-left:calc(var(--app-header-drawer-trigger-size) + (var(--space-unit) * 2))}::slotted([slot="top-subtitle"]),::slotted([slot="subtitle"]){margin:0;font-family:var(--font-family-sans);font-size:20px;font-style:italic;line-height:26px}::slotted([slot="subtitle"]){font-weight:500}::slotted([slot="top-subtitle"]){font-weight:400}.menu-container{display:flex;width:100%;flex:1 auto;flex-flow:row wrap}:host([menu-length="0"]:not([enable-search])) .menu-container,.menu-container:empty{display:none}.menu-container ::slotted([open]){position:relative;z-index:3}z-searchbar{z-index:0;display:flex;width:auto;min-width:calc(var(--space-unit) * 32);flex:1 auto;align-items:center;margin-left:auto}.heading-stuck{position:fixed;z-index:20;top:var(--app-header-top-offset);left:0;width:100%;max-width:100%;animation:slide-stuck-heading-in 250ms ease-out;background:var(--app-header-stucked-bg);box-shadow:var(--shadow-2);color:var(--app-header-stucked-text-color)}.heading-stuck-content{display:flex;max-width:var(--app-header-content-max-width);align-items:center;padding:var(--space-unit) var(--grid-margin);margin:0 auto;column-gap:calc(var(--space-unit) * 2)}.heading-stuck .heading-title{overflow:hidden}.heading-stuck .heading-title>*,.heading-stuck .heading-title ::slotted([slot="stucked-title"]){display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.heading-stuck-content z-button{margin-left:auto}.drawer-trigger{padding:0;border:0;margin:0;appearance:none;background:none;border-radius:0;color:inherit;cursor:pointer}.drawer-trigger z-icon{--z-icon-width:var(--app-header-drawer-trigger-size);--z-icon-height:var(--app-header-drawer-trigger-size);fill:currentcolor}.heading-container :is(.drawer-trigger,z-button.search-page-button){display:flex;height:calc(var(--app-header-title-font-size) * var(--app-header-title-lineheight));align-items:center}.heading-container z-button.search-page-button{margin-left:auto}.drawer-content{display:none}z-offcanvas[open] .drawer-content{display:flex;width:100%;flex:1 auto;flex-direction:column;row-gap:calc(var(--space-unit) * 2.5)}z-offcanvas[open] .drawer-content ::slotted(z-menu){width:100%}.drawer-close{--z-icon-width:var(--app-header-drawer-trigger-size);--z-icon-height:var(--app-header-drawer-trigger-size);padding:0;border:0;margin:var(--space-unit) 0 calc(var(--space-unit) * 2.5);appearance:none;background:transparent;border-radius:0;color:inherit;cursor:pointer;fill:currentcolor;font-size:inherit;outline:none}.drawer-close:focus-visible{box-shadow:var(--shadow-focus-primary)}.hero-container{position:absolute;z-index:0;top:0;left:0;width:100%;height:100%}:host([overlay]) .heading-panel .drawer-trigger z-icon,:host([overlay]) .heading-panel .heading-container,:host([overlay]) .heading-panel .menu-container{color:var(--color-white);fill:var(--color-white)}:host([overlay]) .heading-panel .menu-container ::slotted(z-menu){--z-menu-label-color:var(--color-white)}:host([overlay]) .hero-container::after{position:absolute;z-index:0;top:0;left:0;width:100%;height:100%;background:var(--color-black);content:"";opacity:0.5}.hero-container img,.hero-container ::slotted(*){position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:top center;-webkit-user-drag:none}@media (min-width: 768px){:host{--app-header-title-font-size:var(--app-header-typography-6-size);--app-header-title-lineheight:var(--app-header-typography-6-lineheight);--app-header-title-letter-spacing:var(--app-header-typography-6-tracking)}.heading-panel{flex-flow:row wrap;align-items:center;padding-bottom:calc(var(--space-unit) * 2)}.heading-container{margin-right:auto}:host(:is([flow="offcanvas"],[menu-length="0"])) :is(.heading-container,.menu-container){width:auto}:host(:not([flow="offcanvas"])) .heading-subtitle{padding-left:0}.menu-container{flex:initial;align-items:center}:host([menu-length="0"]) .menu-container:not(:empty){height:calc(var(--app-header-title-font-size) * var(--app-header-title-lineheight))}:host(:not([flow="offcanvas"])) .menu-container{gap:var(--space-unit) calc(var(--space-unit) * 5)}:host(:not([flow="offcanvas"])) .heading-container .drawer-trigger{display:none}}@media (min-width: 1152px){:host{--app-header-title-font-size:var(--app-header-typography-7-size);--app-header-title-lineheight:var(--app-header-typography-7-lineheight);--app-header-title-letter-spacing:var(--app-header-typography-7-tracking)}.heading-panel{justify-content:flex-start;padding-bottom:calc(var(--space-unit) * 3)}.heading-container,.menu-container{width:auto}:host([flow="stack"]) .heading-panel{flex-flow:column;align-items:flex-start}:host([flow="stack"]) .menu-container{width:100%}:host(:not([flow="offcanvas"],[menu-length="0"])) .heading-panel{row-gap:calc(var(--space-unit) * 3)}z-searchbar{min-width:calc(var(--space-unit) * 45);flex:initial}}@media (min-width: 1366px){:host{--app-header-title-font-size:var(--app-header-typography-9-size);--app-header-title-lineheight:var(--app-header-typography-9-lineheight);--app-header-title-letter-spacing:var(--app-header-typography-9-tracking)}}@keyframes slide-stuck-heading-in{0%{transform:translate3d(0, -100%, 0)}100%{transform:none}}`;const d=typeof IntersectionObserver!=="undefined";const c=class{constructor(t){e(this,t);this.sticking=a(this,"sticking",7);this.stuck=false;this.overlay=false;this.flow="auto";this.drawerOpen=false;this.enableSearch=false;this.searchPlaceholder="Cerca";this.searchString="";this._stuck=false;this.currentViewport="mobile";this.observer=d&&new IntersectionObserver((([e])=>{this._stuck=!e.isIntersecting}),{threshold:.5});this.openDrawer=this.openDrawer.bind(this);this.closeDrawer=this.closeDrawer.bind(this);this.collectMenuElements=this.collectMenuElements.bind(this)}evaluateViewport(){if(window.innerWidth<768){this.currentViewport="mobile"}else if(window.innerWidth>=768&&window.innerWidth<1152){this.currentViewport="tablet"}else{this.currentViewport="desktop"}}onStuck(){const e=this.scrollParent;if(!e){return}this.sticking.emit(this._stuck)}setMenuFloatingMode(){if(this.menuElements.length===0){return}const e=this.menuElements;e.forEach((e=>{e.open=false;e.floating=!this.drawerOpen;e.verticalContext=this.drawerOpen}))}get title(){const e=this.hostElement.querySelector('[slot="title"]');if(e===null){return""}return e.textContent.trim()}get scrollParent(){const e=this.hostElement.offsetParent;if(e===document.body||e===document.documentElement){return window}return e}get canShowMenu(){return this.flow!=="offcanvas"&&this.currentViewport!=="mobile"&&!this.drawerOpen}get canShowSearchbar(){if(!this.enableSearch){return false}if(this.searchPageUrl){return this.currentViewport==="desktop"}return true}get hasHero(){return!!this.hero||this.hostElement.querySelector("[slot=hero]")!==null}openDrawer(){this.drawerOpen=true}closeDrawer(){this.drawerOpen=false}collectMenuElements(){const e=this.menuElements=this.hostElement.querySelectorAll('[slot="menu"]');this.menuLength=e.length;this.setMenuFloatingMode()}enableStuckObserver(){if(this.observer){this.observer.observe(this.container)}}disableStuckMode(){this._stuck=false;if(this.observer){this.observer.unobserve(this.container)}}onStuckMode(){if(this.stuck){this.enableStuckObserver()}else{this.disableStuckMode()}}renderSearchLinkButton(){if(!this.enableSearch||!this.searchPageUrl||this.currentViewport==="desktop"){return null}return t("z-button",{class:"search-page-button",variant:h.SECONDARY,href:this.searchPageUrl,icon:"search",size:n.X_SMALL})}renderSeachbar(e){return t("z-searchbar",{value:this.searchString,placeholder:this.searchPlaceholder,showSearchButton:true,searchButtonIconOnly:e,size:n.X_SMALL,variant:h.SECONDARY,preventSubmit:this.searchString.length<3,onSearchTyping:e=>this.searchString=e.detail})}componentDidLoad(){this.collectMenuElements();this.onStuckMode();this.evaluateViewport()}render(){return t(i,{key:"aded309a3cb1033c51f95d94de1cd796f643fea0","menu-length":this.menuLength},this.hasHero&&t("div",{key:"78458badadf63a3366eaba9481ed709f7cb455c5",class:"hero-container"},t("slot",{key:"1296c2091f4dd8b2f5215f07ea096772fc700abb",name:"hero"},this.hero&&t("img",{key:"ed06c899fb3e2b7316161555b307033a6821f64a",alt:"",src:this.hero}))),t("div",{key:"d8e275bde97fe5d694a50c33b5b32db7aee7699e",class:"heading-panel",ref:e=>this.container=e},t("div",{key:"ce6fe29fd508558b3d75dba200006dfa31ba5ad9",class:"heading-container"},t("div",{key:"5464ae272a15fcd6a975b62f5d2d6206d6f3f060",class:"heading-subtitle"},t("slot",{key:"53c143c49c40cd3cef1475af920122ca5abd5329",name:"top-subtitle"})),t("div",{key:"0c4c147537d3ece12fd35e4a5ca553aeff2a8f1c",class:"heading-title"},this.menuLength>0&&t("button",{key:"68e24b4435b6ee099f288cb4cb28794834ab1f72",class:"drawer-trigger","aria-label":"Apri menu",onClick:this.openDrawer},t("z-icon",{key:"220a3096e3275ec8e6bee6b715926f891ed09045",name:"burger-menu"})),t("slot",{key:"52e89fe9902914e6daafe61f47de9ea4f02bf93e",name:"title"}),this.renderSearchLinkButton()),t("div",{key:"c1f90edc6ecb0063d53f3ed68ee718fc86397751",class:"heading-subtitle"},t("slot",{key:"84398e5cd8bf522e13b9f29118ba20d46510fbb1",name:"subtitle"}))),(this.canShowMenu||this.canShowSearchbar)&&t("div",{key:"e6d6d1fa5040a7c6d54869fac4c92a19407145fb",class:"menu-container"},this.canShowMenu&&t("slot",{key:"3c442f00807b6a4ff33349709a24b6096bce3b3c",name:"menu",onSlotchange:this.collectMenuElements}),this.canShowSearchbar&&this.renderSeachbar(this.currentViewport!=="desktop"))),t("z-offcanvas",{key:"268fa9a09f449e5e277ed56134cd1a5be9e9713e",variant:s.OVERLAY,transitiondirection:o.RIGHT,open:this.drawerOpen,onCanvasOpenStatusChanged:e=>this.drawerOpen=e.detail},t("button",{key:"be0350100f473da07ac89c22b950c0ff5f2dc14a",class:"drawer-close","aria-label":"Chiudi menu",onClick:this.closeDrawer,slot:"canvasContent","aria-hidden":`${!this.drawerOpen}`,disabled:!this.drawerOpen},t("z-icon",{key:"ebe1a2dd92cb3d010741e8745c5359a852e46253",name:"close"})),t("div",{key:"cb6b380cfddc334c84fae9a045d4b886ff8d3f26",class:"drawer-content",slot:"canvasContent","aria-hidden":`${!this.drawerOpen}`},t("slot",{key:"e120aa846065db5a7c0d9827e7b74a98f7b41f25",name:"menu",onSlotchange:this.collectMenuElements}))),this._stuck&&t("div",{key:"7d0460155469d822b7f608804dc1465f08e28b02",class:"heading-stuck"},t("div",{key:"b570cf1d407aad9a9c2a10af56835f3a3d5f1379",class:"heading-stuck-content"},this.menuLength>0&&t("button",{key:"06929d598cab5b080e0f3b23606ca6e4ee50a113",class:"drawer-trigger","aria-label":"Apri menu",onClick:this.openDrawer},t("z-icon",{key:"807ee08ed6a4db7ca124114007e1a2d52dca75e0",name:"burger-menu"})),t("div",{key:"dfbb47685f209528aa6a70f29b5cb5ca83a4a2e6",class:"heading-title"},t("slot",{key:"aff80bd515be456bc15b5fa91dbc85ce33fe6562",name:"stucked-title"},this.title)),this.renderSearchLinkButton(),this.canShowSearchbar&&this.currentViewport==="desktop"&&this.renderSeachbar(false))))}get hostElement(){return r(this)}static get watchers(){return{_stuck:[{onStuck:0}],drawerOpen:[{setMenuFloatingMode:0}],stuck:[{onStuckMode:0}]}}};c.style=p();export{c as z_app_header_deprecated};
|
|
2
|
+
//# sourceMappingURL=p-3b7f5d80.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["stylesCss","SUPPORT_INTERSECTION_OBSERVER","IntersectionObserver","ZAppHeaderDeprecated","constructor","hostRef","this","stuck","overlay","flow","drawerOpen","enableSearch","searchPlaceholder","searchString","_stuck","currentViewport","observer","entry","isIntersecting","threshold","openDrawer","bind","closeDrawer","collectMenuElements","evaluateViewport","window","innerWidth","onStuck","scrollParent","sticking","emit","setMenuFloatingMode","menuElements","length","elements","forEach","element","open","floating","verticalContext","title","titleElement","hostElement","querySelector","textContent","trim","parent","offsetParent","document","body","documentElement","canShowMenu","canShowSearchbar","searchPageUrl","hasHero","hero","querySelectorAll","menuLength","enableStuckObserver","observe","container","disableStuckMode","unobserve","onStuckMode","renderSearchLinkButton","h","class","variant","ButtonVariant","SECONDARY","href","icon","size","ControlSize","X_SMALL","renderSeachbar","searchButtonIconOnly","value","placeholder","showSearchButton","preventSubmit","onSearchTyping","e","detail","componentDidLoad","render","Host","key","name","alt","src","ref","el","onClick","onSlotchange","OffCanvasVariant","OVERLAY","transitiondirection","TransitionDirection","RIGHT","onCanvasOpenStatusChanged","ev","slot","disabled"],"sources":["src/components/deprecated/z-app-header-deprecated/styles.css?tag=z-app-header-deprecated&encapsulation=shadow","src/components/deprecated/z-app-header-deprecated/index.tsx"],"sourcesContent":[":host {\n /**\n * @prop --app-header-typography-1-size: Part of the heading typography's scale. Use it if you have to override the default value. Value: `24px`.\n * @prop --app-header-typography-2-size: Part of the heading typography's scale. Use it if you have to override the default value. Value: `28px`.\n * @prop --app-header-typography-3-size: Part of the heading typography's scale. Use it if you have to override the default value. Value: `32px`.\n * @prop --app-header-typography-4-size: Part of the heading typography's scale. Use it if you have to override the default value. Value: `36px`.\n * @prop --app-header-typography-5-size: Part of the heading typography's scale. Use it if you have to override the default value. Value: `42px`.\n * @prop --app-header-typography-6-size: Part of the heading typography's scale. Use it if you have to override the default value. Value: `48px`.\n * @prop --app-header-typography-7-size: Part of the heading typography's scale. Use it if you have to override the default value. Value: `54px`.\n * @prop --app-header-typography-8-size: Part of the heading typography's scale. Use it if you have to override the default value. Value: `60px`.\n * @prop --app-header-typography-9-size: Part of the heading typography's scale. Use it if you have to override the default value. Value: `68px`.\n * @prop --app-header-typography-10-size: Part of the heading typography's scale. Use it if you have to override the default value. Value: `76px`.\n * @prop --app-header-typography-11-size: Part of the heading typography's scale. Use it if you have to override the default value. Value: `84px`.\n * @prop --app-header-typography-12-size: Part of the heading typography's scale. Use it if you have to override the default value. Value: `92px`.\n * @prop --app-header-typography-1-lineheight: Part of the heading typography's scale. Use it if you have to override the default value. Value: `1.33`.\n * @prop --app-header-typography-2-lineheight: Part of the heading typography's scale. Use it if you have to override the default value. Value: `1.29`.\n * @prop --app-header-typography-3-lineheight: Part of the heading typography's scale. Use it if you have to override the default value. Value: `1.25`.\n * @prop --app-header-typography-4-lineheight: Part of the heading typography's scale. Use it if you have to override the default value. Value: `1.24`.\n * @prop --app-header-typography-5-lineheight: Part of the heading typography's scale. Use it if you have to override the default value. Value: `1.24`.\n * @prop --app-header-typography-6-lineheight: Part of the heading typography's scale. Use it if you have to override the default value. Value: `1.25`.\n * @prop --app-header-typography-7-lineheight: Part of the heading typography's scale. Use it if you have to override the default value. Value: `1.2`.\n * @prop --app-header-typography-8-lineheight: Part of the heading typography's scale. Use it if you have to override the default value. Value: `1.26`.\n * @prop --app-header-typography-9-lineheight: Part of the heading typography's scale. Use it if you have to override the default value. Value: `1.24`.\n * @prop --app-header-typography-10-lineheight: Part of the heading typography's scale. Use it if you have to override the default value. Value: `1.26`.\n * @prop --app-header-typography-11-lineheight: Part of the heading typography's scale. Use it if you have to override the default value. Value: `1.2`.\n * @prop --app-header-typography-12-lineheight: Part of the heading typography's scale. Use it if you have to override the default value. Value: `1.2`.\n * @prop --app-header-typography-1-tracking: Part of the heading typography's scale. Use it if you have to override the default value. Value: `calc(-0.2 / 1em)`.\n * @prop --app-header-typography-2-tracking: Part of the heading typography's scale. Use it if you have to override the default value. Value: `calc(-0.4 / 1em)`.\n * @prop --app-header-typography-3-tracking: Part of the heading typography's scale. Use it if you have to override the default value. Value: `calc(-0.6 / 1em)`.\n * @prop --app-header-typography-4-tracking: Part of the heading typography's scale. Use it if you have to override the default value. Value: `calc(-0.8 / 1em)`.\n * @prop --app-header-typography-5-tracking: Part of the heading typography's scale. Use it if you have to override the default value. Value: `calc(-1 / 1em)`.\n * @prop --app-header-typography-6-tracking: Part of the heading typography's scale. Use it if you have to override the default value. Value: `calc(-1.2 / 1em)`.\n * @prop --app-header-typography-7-tracking: Part of the heading typography's scale. Use it if you have to override the default value. Value: `calc(-1.4 / 1em)`.\n * @prop --app-header-typography-8-tracking: Part of the heading typography's scale. Use it if you have to override the default value. Value: `calc(-1.6 / 1em)`.\n * @prop --app-header-typography-9-tracking: Part of the heading typography's scale. Use it if you have to override the default value. Value: `calc(-1.8 / 1em)`.\n * @prop --app-header-typography-10-tracking: Part of the heading typography's scale. Use it if you have to override the default value. Value: `calc(-2 / 1em)`.\n * @prop --app-header-typography-11-tracking: Part of the heading typography's scale. Use it if you have to override the default value. Value: `calc(-2.2 / 1em)`.\n * @prop --app-header-typography-12-tracking: Part of the heading typography's scale. Use it if you have to override the default value. Value: `calc(-2.4 / 1em)`.\n * @prop --app-header-content-max-width: Use it to set header's content max width. Useful when the project use a fixed width layout. Defaults to `100%`.\n * @prop --app-header-height: Defaults to `auto`.\n * @prop --app-header-top-offset: Top offset for the stuck header. Useful when there are other fixed elements above the header. Defaults to `48px` (the height of the main topbar).\n * @prop --app-header-drawer-trigger-size: The size of the drawer icon. Defaults to `--space-unit * 4`.\n * @prop --app-header-bg: Header background color. Defaults to `--color-surface01`.\n * @prop --app-header-stucked-bg: Stuck header background color. Defaults to `--color-surface01`.\n * @prop --app-header-text-color: Text color. Useful on `hero` variant to set text color based on the colors of the background image. Defaults to `--color-default-text`.\n * @prop --app-header-title-font-size: Variable to customize the title's font size. NOTE: Only use one of the exported `--app-header-typography-*-size` as a value. Defaults to `--app-header-typography-3-size`.\n * @prop --app-header-title-lineheight: Variable to customize the title's line-height. NOTE: Only use one of the exported `--app-header-typography-*-lineheight` as a value and use the same level as the one of the font size. Defaults to `--app-header-typography-3-lineheight`.\n * @prop --app-header-title-letter-spacing: Variable to customize the title's letter-spacing. NOTE: Only use one of the exported `--app-header-typography-*-tracking` as a value and use the same level as the one of the font size. Defaults to `--app-header-typography-3-tracking`.\n * @prop --app-header-stucked-text-color: Stuck header text color. Defaults to `--color-default-text`.\n */\n --app-header-typography-1-size: 24px;\n --app-header-typography-2-size: 28px;\n --app-header-typography-3-size: 32px;\n --app-header-typography-4-size: 36px;\n --app-header-typography-5-size: 42px;\n --app-header-typography-6-size: 48px;\n --app-header-typography-7-size: 54px;\n --app-header-typography-8-size: 60px;\n --app-header-typography-9-size: 68px;\n --app-header-typography-10-size: 76px;\n --app-header-typography-11-size: 84px;\n --app-header-typography-12-size: 92px;\n --app-header-typography-1-lineheight: 1.33;\n --app-header-typography-2-lineheight: 1.29;\n --app-header-typography-3-lineheight: 1.25;\n --app-header-typography-4-lineheight: 1.24;\n --app-header-typography-5-lineheight: 1.24;\n --app-header-typography-6-lineheight: 1.25;\n --app-header-typography-7-lineheight: 1.2;\n --app-header-typography-8-lineheight: 1.26;\n --app-header-typography-9-lineheight: 1.24;\n --app-header-typography-10-lineheight: 1.26;\n --app-header-typography-11-lineheight: 1.2;\n --app-header-typography-12-lineheight: 1.2;\n --app-header-typography-1-tracking: calc(-0.2 / 1em);\n --app-header-typography-2-tracking: calc(-0.4 / 1em);\n --app-header-typography-3-tracking: calc(-0.6 / 1em);\n --app-header-typography-4-tracking: calc(-0.8 / 1em);\n --app-header-typography-5-tracking: calc(-1 / 1em);\n --app-header-typography-6-tracking: calc(-1.2 / 1em);\n --app-header-typography-7-tracking: calc(-1.4 / 1em);\n --app-header-typography-8-tracking: calc(-1.6 / 1em);\n --app-header-typography-9-tracking: calc(-1.8 / 1em);\n --app-header-typography-10-tracking: calc(-2 / 1em);\n --app-header-typography-11-tracking: calc(-2.2 / 1em);\n --app-header-typography-12-tracking: calc(-2.4 / 1em);\n --app-header-content-max-width: 100%;\n --app-header-height: auto;\n\n /* Variable to set stuck header and drawer's top offset.\n Useful when something is absolutely positioned above the header. */\n --app-header-top-offset: 48px;\n --app-header-drawer-trigger-size: calc(var(--space-unit) * 4);\n\n /* Variable to customize header background color. */\n --app-header-bg: var(--color-surface01);\n\n /* Variable to customize stuck header background color. */\n --app-header-stucked-bg: var(--color-surface01);\n\n /* Variable to customize text and icon color. */\n --app-header-text-color: var(--color-default-text);\n\n /* Variable to customize the title's font size.\n NOTE: Only use one of the exported `--app-header-typography-*-size` as a value. */\n --app-header-title-font-size: var(--app-header-typography-3-size);\n\n /* Variable to customize the title's line-height.\n NOTE: Only use one of the exported `--app-header-typography-*-lineheight` as a value\n and use the same level as the one of the font size. */\n --app-header-title-lineheight: var(--app-header-typography-3-lineheight);\n\n /* Variable to customize the title's letter-spacing.\n NOTE: Only use one of the exported `--app-header-typography-*-tracking` as a value\n and use the same level as the one of the font size. */\n --app-header-title-letter-spacing: var(--app-header-typography-3-tracking);\n\n /* Variable to customize stuck header's text and icon color. */\n --app-header-stucked-text-color: var(--color-default-text);\n\n position: relative;\n display: block;\n height: var(--app-header-height);\n color: var(--app-header-text-color);\n}\n\n:host,\n* {\n box-sizing: border-box;\n}\n\n.heading-panel {\n position: relative;\n display: flex;\n width: 100%;\n max-width: var(--app-header-content-max-width);\n flex-direction: column;\n flex-grow: 0;\n flex-shrink: 0;\n align-items: baseline;\n padding: var(--grid-margin);\n margin: 0 auto;\n background: var(--app-header-bg);\n gap: calc(var(--space-unit) * 2) calc(var(--space-unit) * 5);\n}\n\n.hero-container + .heading-panel {\n background: transparent;\n}\n\n:host(:empty) .heading-panel {\n padding: 0;\n}\n\n.heading-container {\n position: relative;\n z-index: 1;\n display: flex;\n width: 100%;\n max-width: 100%;\n flex: 1 auto;\n flex-direction: column;\n justify-content: flex-start;\n}\n\n.heading-title {\n display: flex;\n max-width: 100%;\n flex-direction: row;\n align-items: flex-start;\n column-gap: calc(var(--space-unit) * 2);\n}\n\n::slotted([slot=\"title\"]),\n.heading-stuck .heading-title > *,\n::slotted([slot=\"stucked-title\"]) {\n margin: 0;\n font-family: \"IBM Plex Serif\", serif;\n font-weight: var(--font-bd);\n}\n\n::slotted([slot=\"title\"]) {\n font-size: var(--app-header-title-font-size);\n letter-spacing: var(--app-header-title-letter-spacing);\n line-height: var(--app-header-title-lineheight);\n}\n\n.heading-stuck .heading-title > *,\n::slotted([slot=\"stucked-title\"]) {\n font-size: var(--app-header-typography-3-size);\n letter-spacing: var(--app-header-typography-3-tracking);\n line-height: var(--app-header-typography-3-lineheight);\n}\n\n:host(:not([menu-length=\"0\"])) .heading-subtitle {\n padding-left: calc(var(--app-header-drawer-trigger-size) + (var(--space-unit) * 2));\n}\n\n::slotted([slot=\"top-subtitle\"]),\n::slotted([slot=\"subtitle\"]) {\n margin: 0;\n font-family: var(--font-family-sans);\n font-size: 20px;\n font-style: italic;\n line-height: 26px;\n}\n\n::slotted([slot=\"subtitle\"]) {\n font-weight: 500;\n}\n\n::slotted([slot=\"top-subtitle\"]) {\n font-weight: 400;\n}\n\n.menu-container {\n display: flex;\n width: 100%;\n flex: 1 auto;\n flex-flow: row wrap;\n}\n\n:host([menu-length=\"0\"]:not([enable-search])) .menu-container,\n.menu-container:empty {\n display: none;\n}\n\n.menu-container ::slotted([open]) {\n position: relative;\n z-index: 3;\n}\n\nz-searchbar {\n z-index: 0;\n display: flex;\n width: auto;\n min-width: calc(var(--space-unit) * 32);\n flex: 1 auto;\n align-items: center;\n margin-left: auto;\n}\n\n.heading-stuck {\n position: fixed;\n z-index: 20;\n top: var(--app-header-top-offset);\n left: 0;\n width: 100%;\n max-width: 100%;\n animation: slide-stuck-heading-in 250ms ease-out;\n background: var(--app-header-stucked-bg);\n box-shadow: var(--shadow-2);\n color: var(--app-header-stucked-text-color);\n}\n\n.heading-stuck-content {\n display: flex;\n max-width: var(--app-header-content-max-width);\n align-items: center;\n padding: var(--space-unit) var(--grid-margin);\n margin: 0 auto;\n column-gap: calc(var(--space-unit) * 2);\n}\n\n.heading-stuck .heading-title {\n overflow: hidden;\n}\n\n.heading-stuck .heading-title > *,\n.heading-stuck .heading-title ::slotted([slot=\"stucked-title\"]) {\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.heading-stuck-content z-button {\n margin-left: auto;\n}\n\n.drawer-trigger {\n padding: 0;\n border: 0;\n margin: 0;\n appearance: none;\n background: none;\n border-radius: 0;\n color: inherit;\n cursor: pointer;\n}\n\n.drawer-trigger z-icon {\n --z-icon-width: var(--app-header-drawer-trigger-size);\n --z-icon-height: var(--app-header-drawer-trigger-size);\n\n fill: currentcolor;\n}\n\n/* Simulate the height of the first line of text,\nto correctly align drawer icon and search page button with the title */\n.heading-container :is(.drawer-trigger, z-button.search-page-button) {\n display: flex;\n height: calc(var(--app-header-title-font-size) * var(--app-header-title-lineheight));\n align-items: center;\n}\n\n.heading-container z-button.search-page-button {\n margin-left: auto;\n}\n\n.drawer-content {\n display: none;\n}\n\nz-offcanvas[open] .drawer-content {\n display: flex;\n width: 100%;\n flex: 1 auto;\n flex-direction: column;\n row-gap: calc(var(--space-unit) * 2.5);\n}\n\nz-offcanvas[open] .drawer-content ::slotted(z-menu) {\n width: 100%;\n}\n\n.drawer-close {\n --z-icon-width: var(--app-header-drawer-trigger-size);\n --z-icon-height: var(--app-header-drawer-trigger-size);\n\n padding: 0;\n border: 0;\n margin: var(--space-unit) 0 calc(var(--space-unit) * 2.5);\n appearance: none;\n background: transparent;\n border-radius: 0;\n color: inherit;\n cursor: pointer;\n fill: currentcolor;\n font-size: inherit;\n outline: none;\n}\n\n.drawer-close:focus-visible {\n box-shadow: var(--shadow-focus-primary);\n}\n\n.hero-container {\n position: absolute;\n z-index: 0;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n:host([overlay]) .heading-panel .drawer-trigger z-icon,\n:host([overlay]) .heading-panel .heading-container,\n:host([overlay]) .heading-panel .menu-container {\n color: var(--color-white);\n fill: var(--color-white);\n}\n\n:host([overlay]) .heading-panel .menu-container ::slotted(z-menu) {\n --z-menu-label-color: var(--color-white);\n}\n\n:host([overlay]) .hero-container::after {\n position: absolute;\n z-index: 0;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: var(--color-black);\n content: \"\";\n opacity: 0.5;\n}\n\n.hero-container img,\n.hero-container ::slotted(*) {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: top center;\n -webkit-user-drag: none;\n}\n\n/* Tablet breakpoint */\n@media (min-width: 768px) {\n :host {\n --app-header-title-font-size: var(--app-header-typography-6-size);\n --app-header-title-lineheight: var(--app-header-typography-6-lineheight);\n --app-header-title-letter-spacing: var(--app-header-typography-6-tracking);\n }\n\n .heading-panel {\n flex-flow: row wrap;\n align-items: center;\n padding-bottom: calc(var(--space-unit) * 2);\n }\n\n .heading-container {\n margin-right: auto;\n }\n\n :host(:is([flow=\"offcanvas\"], [menu-length=\"0\"])) :is(.heading-container, .menu-container) {\n width: auto;\n }\n\n :host(:not([flow=\"offcanvas\"])) .heading-subtitle {\n padding-left: 0;\n }\n\n .menu-container {\n flex: initial;\n align-items: center;\n }\n\n :host([menu-length=\"0\"]) .menu-container:not(:empty) {\n height: calc(var(--app-header-title-font-size) * var(--app-header-title-lineheight));\n }\n\n :host(:not([flow=\"offcanvas\"])) .menu-container {\n gap: var(--space-unit) calc(var(--space-unit) * 5);\n }\n\n :host(:not([flow=\"offcanvas\"])) .heading-container .drawer-trigger {\n display: none;\n }\n}\n\n/* Desktop breakpoint */\n@media (min-width: 1152px) {\n :host {\n --app-header-title-font-size: var(--app-header-typography-7-size);\n --app-header-title-lineheight: var(--app-header-typography-7-lineheight);\n --app-header-title-letter-spacing: var(--app-header-typography-7-tracking);\n }\n\n .heading-panel {\n justify-content: flex-start;\n padding-bottom: calc(var(--space-unit) * 3);\n }\n\n .heading-container,\n .menu-container {\n width: auto;\n }\n\n :host([flow=\"stack\"]) .heading-panel {\n flex-flow: column;\n align-items: flex-start;\n }\n\n :host([flow=\"stack\"]) .menu-container {\n width: 100%;\n }\n\n :host(:not([flow=\"offcanvas\"], [menu-length=\"0\"])) .heading-panel {\n row-gap: calc(var(--space-unit) * 3);\n }\n\n z-searchbar {\n min-width: calc(var(--space-unit) * 45);\n flex: initial;\n }\n}\n\n/* Wide breakpoint */\n@media (min-width: 1366px) {\n :host {\n --app-header-title-font-size: var(--app-header-typography-9-size);\n --app-header-title-lineheight: var(--app-header-typography-9-lineheight);\n --app-header-title-letter-spacing: var(--app-header-typography-9-tracking);\n }\n}\n\n@keyframes slide-stuck-heading-in {\n 0% {\n transform: translate3d(0, -100%, 0);\n }\n\n 100% {\n transform: none;\n }\n}\n","import {\n Component,\n ComponentInterface,\n Element,\n Event,\n EventEmitter,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n h,\n} from \"@stencil/core\";\nimport {ButtonVariant, ControlSize, OffCanvasVariant, TransitionDirection} from \"../../../beans\";\n\nconst SUPPORT_INTERSECTION_OBSERVER = typeof IntersectionObserver !== \"undefined\";\n\n/**\n * @slot title - Slot for the main title\n * @slot subtitle - Slot for the bottom subtitle. It will not appear in stuck header.\n * @slot top-subtitle - Slot for the top subtitle. It will not appear in stuck header.\n * @slot stucked-title - Title for the stuck header. By default it uses the text from the `title` slot.\n */\n@Component({\n tag: \"z-app-header-deprecated\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZAppHeaderDeprecated implements ComponentInterface {\n @Element() hostElement: HTMLZAppHeaderDeprecatedElement;\n\n /**\n * Stuck mode for the header.\n * You can programmatically set it using an IntersectionObserver.\n */\n @Prop({reflect: true})\n stuck = false;\n\n /**\n * Set the hero image source for the header.\n * You can also use a [slot=\"hero\"] node for advanced customization.\n */\n @Prop()\n hero: string;\n\n /**\n * Should place an overlay over the hero image.\n * Useful for legibility purpose.\n */\n @Prop({reflect: true})\n overlay = false;\n\n /**\n * Control menu bar position in the header.\n * - auto: the menu bar is positioned near the title\n * - stack: the menu bar is positioned below the title\n * - offcanvas: the menu bar is not displayed and a burger icon appears to open the offcanvas menu\n */\n @Prop({reflect: true})\n flow: \"auto\" | \"stack\" | \"offcanvas\" = \"auto\";\n\n /**\n * The opening state of the drawer.\n */\n @Prop({reflect: true})\n drawerOpen = false;\n\n /**\n * Enable the search bar.\n */\n @Prop({reflect: true})\n enableSearch = false;\n\n /**\n * Placeholder text for the search bar.\n */\n @Prop()\n searchPlaceholder = \"Cerca\";\n\n /**\n * Search string for the search bar.\n */\n @Prop({mutable: true})\n searchString = \"\";\n\n /**\n * Url to the search page.\n * Set this prop and `enableSearch` to show a link-button on mobile and tablet viewports, instead of the normal searchbar.\n * The link will also appear on the sticky header.\n */\n @Prop()\n searchPageUrl: string;\n\n /**\n * The stuck state of the bar.\n */\n @State()\n private _stuck = false;\n\n /**\n * Current viewport.\n * Used to change the aspect of the search button (icon only) on mobile and tablet.\n */\n @State()\n private currentViewport: \"mobile\" | \"tablet\" | \"desktop\" = \"mobile\";\n\n /**\n * Current count of menu items.\n */\n @State()\n menuLength: number;\n\n /**\n * Emitted when the `stuck` state of the header changes\n */\n @Event()\n sticking: EventEmitter;\n\n private container?: HTMLDivElement;\n\n private menuElements?: NodeListOf<HTMLElement>;\n\n private observer?: IntersectionObserver =\n SUPPORT_INTERSECTION_OBSERVER &&\n new IntersectionObserver(\n ([entry]) => {\n this._stuck = !entry.isIntersecting;\n },\n {\n threshold: 0.5,\n }\n );\n\n constructor() {\n this.openDrawer = this.openDrawer.bind(this);\n this.closeDrawer = this.closeDrawer.bind(this);\n this.collectMenuElements = this.collectMenuElements.bind(this);\n }\n\n @Listen(\"resize\", {target: \"window\", passive: true})\n evaluateViewport(): void {\n if (window.innerWidth < 768) {\n this.currentViewport = \"mobile\";\n } else if (window.innerWidth >= 768 && window.innerWidth < 1152) {\n this.currentViewport = \"tablet\";\n } else {\n this.currentViewport = \"desktop\";\n }\n }\n\n @Watch(\"_stuck\")\n onStuck(): void {\n const scrollParent = this.scrollParent;\n if (!scrollParent) {\n return;\n }\n\n this.sticking.emit(this._stuck);\n }\n\n @Watch(\"drawerOpen\")\n setMenuFloatingMode(): void {\n if (this.menuElements.length === 0) {\n return;\n }\n\n const elements = this.menuElements;\n elements.forEach((element) => {\n (element as HTMLZMenuDeprecatedElement).open = false;\n (element as HTMLZMenuDeprecatedElement).floating = !this.drawerOpen;\n (element as HTMLZMenuDeprecatedElement).verticalContext = this.drawerOpen;\n });\n }\n\n private get title(): string {\n const titleElement = this.hostElement.querySelector('[slot=\"title\"]');\n if (titleElement === null) {\n return \"\";\n }\n\n return titleElement.textContent.trim();\n }\n\n private get scrollParent(): Window | Element {\n const parent = this.hostElement.offsetParent;\n if (parent === document.body || parent === document.documentElement) {\n return window;\n }\n\n return parent;\n }\n\n private get canShowMenu(): boolean {\n return this.flow !== \"offcanvas\" && this.currentViewport !== \"mobile\" && !this.drawerOpen;\n }\n\n private get canShowSearchbar(): boolean {\n if (!this.enableSearch) {\n return false;\n }\n\n // Always show the searchbar on desktop, even if a searchPageUrl is set\n if (this.searchPageUrl) {\n return this.currentViewport === \"desktop\";\n }\n\n return true;\n }\n\n /**\n * Whether the header has a hero image, either as a prop or as a slot.\n */\n private get hasHero(): boolean {\n return !!this.hero || this.hostElement.querySelector(\"[slot=hero]\") !== null;\n }\n\n private openDrawer(): void {\n this.drawerOpen = true;\n }\n\n private closeDrawer(): void {\n this.drawerOpen = false;\n }\n\n private collectMenuElements(): void {\n const menuElements = (this.menuElements = this.hostElement.querySelectorAll('[slot=\"menu\"]'));\n this.menuLength = menuElements.length;\n this.setMenuFloatingMode();\n }\n\n private enableStuckObserver(): void {\n if (this.observer) {\n this.observer.observe(this.container);\n }\n }\n\n private disableStuckMode(): void {\n this._stuck = false;\n if (this.observer) {\n this.observer.unobserve(this.container);\n }\n }\n\n @Watch(\"stuck\")\n onStuckMode(): void {\n if (this.stuck) {\n this.enableStuckObserver();\n } else {\n this.disableStuckMode();\n }\n }\n\n private renderSearchLinkButton(): HTMLZButtonElement | null {\n if (!this.enableSearch || !this.searchPageUrl || this.currentViewport === \"desktop\") {\n return null;\n }\n\n return (\n <z-button\n class=\"search-page-button\"\n variant={ButtonVariant.SECONDARY}\n href={this.searchPageUrl}\n icon=\"search\"\n size={ControlSize.X_SMALL}\n ></z-button>\n );\n }\n\n private renderSeachbar(searchButtonIconOnly: boolean): HTMLZSearchbarElement {\n return (\n <z-searchbar\n value={this.searchString}\n placeholder={this.searchPlaceholder}\n showSearchButton={true}\n searchButtonIconOnly={searchButtonIconOnly}\n size={ControlSize.X_SMALL}\n variant={ButtonVariant.SECONDARY}\n preventSubmit={this.searchString.length < 3}\n onSearchTyping={(e) => (this.searchString = e.detail)}\n />\n );\n }\n\n componentDidLoad(): void {\n this.collectMenuElements();\n this.onStuckMode();\n this.evaluateViewport();\n }\n\n render(): HTMLZAppHeaderElement {\n return (\n <Host menu-length={this.menuLength}>\n {this.hasHero && (\n <div class=\"hero-container\">\n <slot name=\"hero\">\n {this.hero && (\n <img\n alt=\"\"\n src={this.hero}\n />\n )}\n </slot>\n </div>\n )}\n\n <div\n class=\"heading-panel\"\n ref={(el) => (this.container = el)}\n >\n <div class=\"heading-container\">\n <div class=\"heading-subtitle\">\n <slot name=\"top-subtitle\"></slot>\n </div>\n <div class=\"heading-title\">\n {this.menuLength > 0 && (\n <button\n class=\"drawer-trigger\"\n aria-label=\"Apri menu\"\n onClick={this.openDrawer}\n >\n <z-icon name=\"burger-menu\"></z-icon>\n </button>\n )}\n\n <slot name=\"title\"></slot>\n\n {this.renderSearchLinkButton()}\n </div>\n\n <div class=\"heading-subtitle\">\n <slot name=\"subtitle\"></slot>\n </div>\n </div>\n\n {(this.canShowMenu || this.canShowSearchbar) && (\n <div class=\"menu-container\">\n {this.canShowMenu && (\n <slot\n name=\"menu\"\n onSlotchange={this.collectMenuElements}\n ></slot>\n )}\n\n {this.canShowSearchbar && this.renderSeachbar(this.currentViewport !== \"desktop\")}\n </div>\n )}\n </div>\n\n <z-offcanvas\n variant={OffCanvasVariant.OVERLAY}\n transitiondirection={TransitionDirection.RIGHT}\n open={this.drawerOpen}\n onCanvasOpenStatusChanged={(ev) => (this.drawerOpen = ev.detail)}\n >\n <button\n class=\"drawer-close\"\n aria-label=\"Chiudi menu\"\n onClick={this.closeDrawer}\n slot=\"canvasContent\"\n aria-hidden={`${!this.drawerOpen}`}\n disabled={!this.drawerOpen}\n >\n <z-icon name=\"close\"></z-icon>\n </button>\n\n <div\n class=\"drawer-content\"\n slot=\"canvasContent\"\n aria-hidden={`${!this.drawerOpen}`}\n >\n <slot\n name=\"menu\"\n onSlotchange={this.collectMenuElements}\n ></slot>\n </div>\n </z-offcanvas>\n\n {this._stuck && (\n <div class=\"heading-stuck\">\n <div class=\"heading-stuck-content\">\n {this.menuLength > 0 && (\n <button\n class=\"drawer-trigger\"\n aria-label=\"Apri menu\"\n onClick={this.openDrawer}\n >\n <z-icon name=\"burger-menu\"></z-icon>\n </button>\n )}\n\n <div class=\"heading-title\">\n <slot name=\"stucked-title\">{this.title}</slot>\n </div>\n\n {this.renderSearchLinkButton()}\n {this.canShowSearchbar && this.currentViewport === \"desktop\" && this.renderSeachbar(false)}\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r,c as o,h as a}from"./p-BEHxru6n.js";const i=()=>`button{display:flex;height:36px;align-items:center;padding-right:calc(var(--space-unit) * 2);padding-left:0;border:var(--border-size-medium) solid;border-color:transparent;background-color:var(--color-surface01);border-radius:var(--border-radius);box-shadow:var(--shadow-2);color:var(--color-primary01);cursor:pointer;fill:var(--color-primary01);font-family:var(--font-family-sans);font-size:14px;font-weight:var(--font-sb);outline:none;text-transform:uppercase}button::-moz-focus-inner{border:0}button:hover{color:var(--color-hover-primary);fill:var(--color-hover-primary)}button:focus{box-shadow:var(--shadow-focus-primary)}button:active{border-color:var(--color-pressed-primary);box-shadow:var(--shadow-2);color:var(--color-pressed-primary);fill:var(--color-pressed-primary)}button:disabled{color:var(--color-disabled03);fill:var(--color-disabled03)}z-icon{display:inline-block;margin:0 var(--space-unit) 0 calc(var(--space-unit) * 2);transform:rotate(360deg);transition:all 200ms linear}button.isopen{top:-20px}button.avoid-clicks{pointer-events:none}`;const t=class{constructor(a){r(this,a);this.toggleClick=o(this,"toggleClick",7);this.isdisabled=false;this.opened=false;this.ariaLabel=""}emitToggleClick(){if(this.isdisabled){return}this.opened=!this.opened;this.toggleClick.emit(this.opened)}render(){return a("button",{key:"d0ffc4e5d939520d394a77bcca9fd980cda11503",tabindex:this.avoidclick?"-1":"0",class:{isopen:this.opened,"avoid-clicks":this.avoidclick},disabled:this.isdisabled,"aria-expanded":this.opened?"true":"false","aria-label":this.ariaLabel,onClick:()=>this.emitToggleClick()},a("z-icon",{key:"7307d3b2b6abbbe555e22e7caa11b6e151146f54",name:this.opened?"chevron-down":"chevron-up",width:16,height:16}),this.label)}};t.style=i();export{t as z_toggle_button};
|
|
2
|
+
//# sourceMappingURL=p-40694478.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["stylesCss","ZToggleButton","constructor","hostRef","this","isdisabled","opened","ariaLabel","emitToggleClick","toggleClick","emit","render","h","key","tabindex","avoidclick","class","isopen","disabled","onClick","name","width","height","label"],"sources":["src/components/z-toggle-button/styles.css?tag=z-toggle-button&encapsulation=shadow","src/components/z-toggle-button/index.tsx"],"sourcesContent":["button {\n display: flex;\n height: 36px;\n align-items: center;\n padding-right: calc(var(--space-unit) * 2);\n padding-left: 0;\n border: var(--border-size-medium) solid;\n border-color: transparent;\n background-color: var(--color-surface01);\n border-radius: var(--border-radius);\n box-shadow: var(--shadow-2);\n color: var(--color-primary01);\n cursor: pointer;\n fill: var(--color-primary01);\n font-family: var(--font-family-sans);\n font-size: 14px;\n font-weight: var(--font-sb);\n outline: none;\n text-transform: uppercase;\n}\n\nbutton::-moz-focus-inner {\n border: 0;\n}\n\nbutton:hover {\n color: var(--color-hover-primary);\n fill: var(--color-hover-primary);\n}\n\nbutton:focus {\n box-shadow: var(--shadow-focus-primary);\n}\n\nbutton:active {\n border-color: var(--color-pressed-primary);\n box-shadow: var(--shadow-2);\n color: var(--color-pressed-primary);\n fill: var(--color-pressed-primary);\n}\n\nbutton:disabled {\n color: var(--color-disabled03);\n fill: var(--color-disabled03);\n}\n\nz-icon {\n display: inline-block;\n margin: 0 var(--space-unit) 0 calc(var(--space-unit) * 2);\n transform: rotate(360deg);\n transition: all 200ms linear;\n}\n\nbutton.isopen {\n top: -20px;\n}\n\nbutton.avoid-clicks {\n pointer-events: none;\n}\n","import {Component, ComponentInterface, Event, EventEmitter, Prop, h} from \"@stencil/core\";\n\n@Component({\n tag: \"z-toggle-button\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZToggleButton implements ComponentInterface {\n /** label text */\n @Prop()\n label: string;\n\n /** disabled status flag (optional) */\n @Prop()\n isdisabled?: boolean = false;\n\n /** avoidclick status flag */\n @Prop()\n avoidclick: boolean;\n\n /** open by default (optional) */\n @Prop({mutable: true})\n opened?: boolean = false;\n\n /** aria-label for the button */\n @Prop()\n ariaLabel = \"\";\n\n /** emitted on toggle button click, returns isOpen */\n @Event()\n toggleClick: EventEmitter;\n\n private emitToggleClick(): void {\n if (this.isdisabled) {\n return;\n }\n\n this.opened = !this.opened;\n this.toggleClick.emit(this.opened);\n }\n\n render(): HTMLButtonElement {\n return (\n <button\n tabindex={this.avoidclick ? \"-1\" : \"0\"}\n class={{\n \"isopen\": this.opened,\n \"avoid-clicks\": this.avoidclick,\n }}\n disabled={this.isdisabled}\n aria-expanded={this.opened ? \"true\" : \"false\"}\n aria-label={this.ariaLabel}\n onClick={() => this.emitToggleClick()}\n >\n <z-icon\n name={this.opened ? \"chevron-down\" : \"chevron-up\"}\n width={16}\n height={16}\n />\n {this.label}\n </button>\n );\n }\n}\n"],"mappings":"6CAAA,MAAMA,EAAY,IAAM,kiC,MCOXC,EAAa,MAL1B,WAAAC,CAAAC,G,mDAYEC,KAAAC,WAAuB,MAQvBD,KAAAE,OAAmB,MAInBF,KAAAG,UAAY,EAqCb,CA/BS,eAAAC,GACN,GAAIJ,KAAKC,WAAY,CACnB,M,CAGFD,KAAKE,QAAUF,KAAKE,OACpBF,KAAKK,YAAYC,KAAKN,KAAKE,O,CAG7B,MAAAK,GACE,OACEC,EAAA,UAAAC,IAAA,2CACEC,SAAUV,KAAKW,WAAa,KAAO,IACnCC,MAAO,CACLC,OAAUb,KAAKE,OACf,eAAgBF,KAAKW,YAEvBG,SAAUd,KAAKC,WAAU,gBACVD,KAAKE,OAAS,OAAS,QAAO,aACjCF,KAAKG,UACjBY,QAAS,IAAMf,KAAKI,mBAEpBI,EAAA,UAAAC,IAAA,2CACEO,KAAMhB,KAAKE,OAAS,eAAiB,aACrCe,MAAO,GACPC,OAAQ,KAETlB,KAAKmB,M","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e,h as r}from"./p-BEHxru6n.js";import{L as a}from"./p-B3nR3-Jw.js";const t=()=>`:host{--card-overflow:hidden}div{display:flex;overflow:var(--card-overflow);width:auto;width:256px;height:522px;box-sizing:border-box;flex-direction:column;border:var(--border-size-medium) solid var(--color-surface03);background-color:var(--color-surface01);border-radius:var(--border-radius)}div.real,div.trial,div.temp{border-color:var(--blue100)}div.faded{border:var(--border-size-medium) solid var(--color-background)}div.highlighted{box-shadow:var(--shadow-4);outline:none}div.pressed{box-shadow:var(--shadow-8);outline:none}div:focus{box-shadow:var(--shadow-focus-primary);outline:none}`;const i=class{constructor(r){e(this,r);this.ispressed=false;this.ishighlighted=false}retrieveClass(){let e="";if(this.cardtype===a.REAL){e+="real"}else if(this.cardtype===a.TRIAL){e+="trial"}else if(this.cardtype===a.TEMP){e+="temp"}if(this.faded){e+=" faded"}else if(this.ispressed){e+=" pressed"}else if(this.ishighlighted){e+=" highlighted"}return e}render(){return r("div",{key:"7268d6cd9e424a3d8134ff4e96bc2ba665988a6c",class:this.retrieveClass(),tabindex:"0"},r("slot",{key:"22c578f464737dcad6536f251e1dbea082a2eb1a"}))}};i.style=t();const o=()=>`:host{width:auto;height:340px}:host>div{position:relative;display:flex;width:auto;height:340px;align-items:center;justify-content:center}`;const d=class{constructor(r){e(this,r)}render(){return r("div",{key:"9a1f8e25043b54dd7ce20167622840c675d8282a"},r("slot",{key:"5b24f58f0ca8db42b6a7e8a112fd0af3af64df96",name:"alert"}),r("slot",{key:"49f082fc29b4edab74ac4dfbd6c77d388eaa22cc",name:"cover"}))}};d.style=o();const s=()=>`img{display:block;max-width:100%;height:340px;margin:auto;object-fit:cover}img.faded{opacity:0.3}`;const c=class{constructor(r){e(this,r)}hadleOnImageError(){this.img=this.defaultimg}render(){return r("img",{key:"74249d6955b0c1db6bbb2e5e77c847378861999f",class:this.faded&&"faded",onError:this.hadleOnImageError.bind(this),alt:this.titolo,src:this.img})}};c.style=s();const l=()=>`header{position:relative;display:flex;width:auto;height:calc(var(--space-unit) * 6);flex-direction:row;align-items:flex-start;justify-content:space-between;border-bottom:var(--border-size-medium) solid var(--color-surface03);background-color:var(--color-surface01);border-radius:var(--border-radius) var(--border-radius) var(--border-no-radius) var(--border-no-radius)}slot[name="aria-heading"]::slotted(*){position:absolute;overflow:hidden !important;width:1px !important;height:1px !important;padding:0 !important;border:0 none !important;margin:-1px !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important}header.real,header.trial,header.temp{border-bottom:var(--border-size-medium) solid var(--blue100);background-color:var(--color-primary03)}.card-title{overflow:hidden;height:calc(var(--space-unit) * 2);padding:calc(var(--space-unit) * 2);margin:0;color:var(--color-surface05);font-family:var(--font-family-sans);font-size:12px;font-weight:var(--font-sb);letter-spacing:0.22px;line-height:calc(var(--space-unit) * 2);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.faded{border-bottom:var(--border-size-medium) solid var(--color-background)}.faded.real,.faded.trial,.faded.temp{border-top:var(--border-size-medium) solid var(--blue100);border-right:var(--border-size-medium) solid var(--blue100);border-left:var(--border-size-medium) solid var(--blue100)}`;const n=class{constructor(r){e(this,r);this.allowTooltip=false}getTitle(){return this.allowTooltip?this.titolo:""}componentDidLoad(){if(this.elementHasEllipsis()){this.allowTooltip=true}}elementHasEllipsis(){return this.ellipsis.offsetWidth<this.ellipsis.scrollWidth}retrieveClass(){return{real:this.cardtype===a.REAL,trial:this.cardtype===a.TRIAL,temp:this.cardtype===a.TEMP,faded:this.faded}}render(){return r("header",{key:"c48aea25ec119f8b56bf13004a9bb591d278706f",class:this.retrieveClass()},r("slot",{key:"00aea3e21b5aade39b702d60e87b26ec1cb79904",name:"aria-heading"}),r("span",{key:"ad56e6b17d0aa5e8965ace7bec60757a4e064ea7",class:"card-title",ref:e=>this.ellipsis=e,title:this.getTitle()},this.titolo),r("slot",{key:"0da8178876227c66042f1c6dfe5378264baf519b",name:"icon"}))}};n.style=l();export{i as z_myz_card,d as z_myz_card_body,c as z_myz_card_cover,n as z_myz_card_header};
|
|
2
|
+
//# sourceMappingURL=p-440e5b62.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["stylesCss","ZMyzCardComponent","constructor","hostRef","this","ispressed","ishighlighted","retrieveClass","elemClasses","cardtype","LicenseType","REAL","TRIAL","TEMP","faded","render","h","key","class","tabindex","ZMyzCardBody","name","ZMyzCardCover","hadleOnImageError","img","defaultimg","onError","bind","alt","titolo","src","ZMyzCardHeader","allowTooltip","getTitle","componentDidLoad","elementHasEllipsis","ellipsis","offsetWidth","scrollWidth","real","trial","temp","ref","el","title"],"sources":["src/snowflakes/myz/card/z-myz-card/styles.css?tag=z-myz-card&encapsulation=shadow","src/snowflakes/myz/card/z-myz-card/index.tsx","src/snowflakes/myz/card/z-myz-card-body/styles.css?tag=z-myz-card-body&encapsulation=shadow","src/snowflakes/myz/card/z-myz-card-body/index.tsx","src/snowflakes/myz/card/z-myz-card-cover/styles.css?tag=z-myz-card-cover&encapsulation=shadow","src/snowflakes/myz/card/z-myz-card-cover/index.tsx","src/snowflakes/myz/card/z-myz-card-header/styles.css?tag=z-myz-card-header&encapsulation=shadow","src/snowflakes/myz/card/z-myz-card-header/index.tsx"],"sourcesContent":[":host {\n --card-overflow: hidden;\n}\n\ndiv {\n display: flex;\n overflow: var(--card-overflow);\n width: auto;\n width: 256px; /* TODO: width must be 100% - must be handled in dashboard */\n height: 522px;\n box-sizing: border-box;\n flex-direction: column;\n border: var(--border-size-medium) solid var(--color-surface03);\n background-color: var(--color-surface01);\n border-radius: var(--border-radius);\n}\n\ndiv.real,\ndiv.trial,\ndiv.temp {\n border-color: var(--blue100);\n}\n\n/* HIDDEN status */\ndiv.faded {\n border: var(--border-size-medium) solid var(--color-background);\n}\n\n/* HIGHLIGHTED status */\ndiv.highlighted {\n box-shadow: var(--shadow-4);\n outline: none;\n}\n\n/* PRESSED status */\ndiv.pressed {\n box-shadow: var(--shadow-8);\n outline: none;\n}\n\ndiv:focus {\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n","import {Component, ComponentInterface, h, Prop} from \"@stencil/core\";\nimport {LicenseType} from \"../../../../beans/index\";\n\n/**\n * @slot - generic card slot\n */\n@Component({\n tag: \"z-myz-card\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZMyzCardComponent implements ComponentInterface {\n /** faded status */\n @Prop()\n faded: boolean;\n\n /** graphic variant (optional) */\n @Prop()\n cardtype?: LicenseType;\n\n /** pressed status */\n @Prop()\n ispressed = false;\n\n /** highlighted status */\n @Prop()\n ishighlighted = false;\n\n private retrieveClass(): string {\n let elemClasses = \"\";\n\n if (this.cardtype === LicenseType.REAL) {\n elemClasses += \"real\";\n } else if (this.cardtype === LicenseType.TRIAL) {\n elemClasses += \"trial\";\n } else if (this.cardtype === LicenseType.TEMP) {\n elemClasses += \"temp\";\n }\n\n if (this.faded) {\n elemClasses += \" faded\";\n } else if (this.ispressed) {\n elemClasses += \" pressed\";\n } else if (this.ishighlighted) {\n elemClasses += \" highlighted\";\n }\n\n return elemClasses;\n }\n\n render(): HTMLDivElement {\n return (\n <div\n class={this.retrieveClass()}\n tabindex=\"0\"\n >\n <slot />\n </div>\n );\n }\n}\n",":host {\n width: auto;\n height: 340px;\n}\n\n:host > div {\n position: relative;\n display: flex;\n width: auto;\n height: 340px;\n align-items: center;\n justify-content: center;\n}\n","import {Component, ComponentInterface, h} from \"@stencil/core\";\n\n/**\n * @slot alert - card alert slot\n * @slot cover - book cover slot\n */\n@Component({\n tag: \"z-myz-card-body\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZMyzCardBody implements ComponentInterface {\n render(): HTMLDivElement {\n return (\n <div>\n <slot name=\"alert\"></slot>\n <slot name=\"cover\" />\n </div>\n );\n }\n}\n","img {\n display: block;\n max-width: 100%;\n height: 340px;\n margin: auto;\n object-fit: cover;\n}\n\nimg.faded {\n opacity: 0.3;\n}\n","import {Component, ComponentInterface, Prop, h} from \"@stencil/core\";\n\n@Component({\n tag: \"z-myz-card-cover\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZMyzCardCover implements ComponentInterface {\n /** image source */\n @Prop()\n img: string;\n\n /** cover alt title */\n @Prop()\n titolo: string;\n\n /** faded status */\n @Prop()\n faded: boolean;\n\n /** default error image source */\n @Prop()\n defaultimg: string;\n\n private hadleOnImageError(): void {\n this.img = this.defaultimg;\n }\n\n render(): HTMLImageElement {\n return (\n <img\n class={this.faded && \"faded\"}\n onError={this.hadleOnImageError.bind(this)}\n alt={this.titolo}\n src={this.img}\n />\n );\n }\n}\n","header {\n position: relative;\n display: flex;\n width: auto;\n height: calc(var(--space-unit) * 6);\n flex-direction: row;\n align-items: flex-start;\n justify-content: space-between;\n border-bottom: var(--border-size-medium) solid var(--color-surface03);\n background-color: var(--color-surface01);\n border-radius: var(--border-radius) var(--border-radius) var(--border-no-radius) var(--border-no-radius);\n}\n\nslot[name=\"aria-heading\"]::slotted(*) {\n position: absolute;\n overflow: hidden !important;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n border: 0 none !important;\n margin: -1px !important;\n clip: rect(0, 0, 0, 0) !important;\n white-space: nowrap !important;\n}\n\nheader.real,\nheader.trial,\nheader.temp {\n border-bottom: var(--border-size-medium) solid var(--blue100);\n background-color: var(--color-primary03);\n}\n\n.card-title {\n overflow: hidden;\n height: calc(var(--space-unit) * 2);\n padding: calc(var(--space-unit) * 2);\n margin: 0;\n color: var(--color-surface05);\n font-family: var(--font-family-sans);\n font-size: 12px;\n font-weight: var(--font-sb);\n letter-spacing: 0.22px;\n line-height: calc(var(--space-unit) * 2);\n text-overflow: ellipsis;\n text-transform: uppercase;\n white-space: nowrap;\n}\n\n.faded {\n border-bottom: var(--border-size-medium) solid var(--color-background);\n}\n\n.faded.real,\n.faded.trial,\n.faded.temp {\n border-top: var(--border-size-medium) solid var(--blue100);\n border-right: var(--border-size-medium) solid var(--blue100);\n border-left: var(--border-size-medium) solid var(--blue100);\n}\n","import {Component, ComponentInterface, Prop, State, h} from \"@stencil/core\";\nimport {JSXBase} from \"@stencil/core/internal\";\nimport {LicenseType} from \"../../../../beans/index\";\n\n/**\n * @slot icon - card header icon slot\n */\n@Component({\n tag: \"z-myz-card-header\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZMyzCardHeader implements ComponentInterface {\n /** volume title */\n @Prop()\n titolo: string;\n\n /** faded status */\n @Prop()\n faded: boolean;\n\n /** card graphic variant (optional) */\n @Prop()\n cardtype?: LicenseType;\n\n @State()\n allowTooltip = false;\n\n private ellipsis?: HTMLElement;\n\n private getTitle(): string {\n return this.allowTooltip ? this.titolo : \"\";\n }\n\n componentDidLoad(): void {\n if (this.elementHasEllipsis()) {\n this.allowTooltip = true;\n }\n }\n\n private elementHasEllipsis(): boolean {\n return this.ellipsis.offsetWidth < this.ellipsis.scrollWidth;\n }\n\n private retrieveClass(): JSXBase.HTMLAttributes[\"class\"] {\n return {\n real: this.cardtype === LicenseType.REAL,\n trial: this.cardtype === LicenseType.TRIAL,\n temp: this.cardtype === LicenseType.TEMP,\n faded: this.faded,\n };\n }\n\n render(): HTMLElement {\n return (\n <header class={this.retrieveClass()}>\n <slot name=\"aria-heading\" />\n <span\n class=\"card-title\"\n ref={(el) => (this.ellipsis = el as HTMLElement)}\n title={this.getTitle()}\n >\n {this.titolo}\n </span>\n <slot name=\"icon\" />\n </header>\n );\n }\n}\n"],"mappings":"+EAAA,MAAMA,EAAY,IAAM,mlB,MCWXC,EAAiB,MAL9B,WAAAC,CAAAC,G,UAgBEC,KAAAC,UAAY,MAIZD,KAAAE,cAAgB,KAkCjB,CAhCS,aAAAC,GACN,IAAIC,EAAc,GAElB,GAAIJ,KAAKK,WAAaC,EAAYC,KAAM,CACtCH,GAAe,M,MACV,GAAIJ,KAAKK,WAAaC,EAAYE,MAAO,CAC9CJ,GAAe,O,MACV,GAAIJ,KAAKK,WAAaC,EAAYG,KAAM,CAC7CL,GAAe,M,CAGjB,GAAIJ,KAAKU,MAAO,CACdN,GAAe,Q,MACV,GAAIJ,KAAKC,UAAW,CACzBG,GAAe,U,MACV,GAAIJ,KAAKE,cAAe,CAC7BE,GAAe,c,CAGjB,OAAOA,C,CAGT,MAAAO,GACE,OACEC,EAAA,OAAAC,IAAA,2CACEC,MAAOd,KAAKG,gBACZY,SAAS,KAETH,EAAA,QAAAC,IAAA,6C,eCxDR,MAAMjB,EAAY,IAAM,4I,MCWXoB,EAAY,M,yBACvB,MAAAL,GACE,OACEC,EAAA,OAAAC,IAAA,4CACED,EAAA,QAAAC,IAAA,2CAAMI,KAAK,UACXL,EAAA,QAAAC,IAAA,2CAAMI,KAAK,U,eChBnB,MAAMrB,EAAY,IAAM,oG,MCOXsB,EAAa,M,yBAiBhB,iBAAAC,GACNnB,KAAKoB,IAAMpB,KAAKqB,U,CAGlB,MAAAV,GACE,OACEC,EAAA,OAAAC,IAAA,2CACEC,MAAOd,KAAKU,OAAS,QACrBY,QAAStB,KAAKmB,kBAAkBI,KAAKvB,MACrCwB,IAAKxB,KAAKyB,OACVC,IAAK1B,KAAKoB,K,eClClB,MAAMxB,EAAY,IAAM,23C,MCYX+B,EAAc,MAL3B,WAAA7B,CAAAC,G,UAmBEC,KAAA4B,aAAe,KA0ChB,CAtCS,QAAAC,GACN,OAAO7B,KAAK4B,aAAe5B,KAAKyB,OAAS,E,CAG3C,gBAAAK,GACE,GAAI9B,KAAK+B,qBAAsB,CAC7B/B,KAAK4B,aAAe,I,EAIhB,kBAAAG,GACN,OAAO/B,KAAKgC,SAASC,YAAcjC,KAAKgC,SAASE,W,CAG3C,aAAA/B,GACN,MAAO,CACLgC,KAAMnC,KAAKK,WAAaC,EAAYC,KACpC6B,MAAOpC,KAAKK,WAAaC,EAAYE,MACrC6B,KAAMrC,KAAKK,WAAaC,EAAYG,KACpCC,MAAOV,KAAKU,M,CAIhB,MAAAC,GACE,OACEC,EAAA,UAAAC,IAAA,2CAAQC,MAAOd,KAAKG,iBAClBS,EAAA,QAAAC,IAAA,2CAAMI,KAAK,iBACXL,EAAA,QAAAC,IAAA,2CACEC,MAAM,aACNwB,IAAMC,GAAQvC,KAAKgC,SAAWO,EAC9BC,MAAOxC,KAAK6B,YAEX7B,KAAKyB,QAERb,EAAA,QAAAC,IAAA,2CAAMI,KAAK,S","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,h as e,d as i}from"./p-BEHxru6n.js";import{p as r}from"./p-B3nR3-Jw.js";import{j as s,g as o,h as n}from"./p-C8pbzcmM.js";import"./p-Q-tWjk7P.js";const a=()=>`:host{display:block;width:inherit;font-family:var(--font-family-sans);font-weight:var(--font-rg)}:host>div{display:flex;width:inherit;flex-direction:column}main{position:relative;overflow:hidden;width:100%}main z-icon.scroll{position:absolute;z-index:10;top:50%;width:auto;margin:0 var(--space-unit);cursor:pointer;fill:var(--color-primary01);transition:0.6s ease}main .scroll.disabled{opacity:0.5;pointer-events:none}main .scroll.right{right:0}#slides{display:flex;flex-wrap:wrap;line-height:0px;overflow-y:hidden;transition:all 300ms}footer{display:grid;width:100%;height:56px;align-items:center;border-top:var(--border-size-medium) solid var(--color-background);grid-template:2 / 2;grid-template-areas:"center center" "left right"}footer>div{width:100%;align-items:center}footer .footer-center{grid-area:center}footer .footer-left{grid-area:left}footer .footer-right{grid-area:right}footer .bullet-container{display:flex;min-height:60px;align-items:center;justify-content:center;margin:0 auto}footer .bullet-container .bullet{width:8px;height:8px;margin:var(--space-unit) 2px;background-color:var(--gray200);border-radius:50%;pointer-events:none}footer .bullet-container .bullet.selected{background-color:var(--gray400)}main z-icon:focus,footer .bullet-container .bullet:focus{border-radius:50%;box-shadow:var(--shadow-focus-primary);outline:none !important}@media only screen and (min-width: 768px){footer{height:76px;border-top:var(--border-size-medium) solid var(--color-background);grid-template:1 / 1fr 2fr 1fr;grid-template-areas:"left center right"}footer .bullet-container .bullet{width:10px;height:10px;margin:var(--space-unit) 3px}}@media only screen and (min-width: 1025px){main z-icon.scroll{margin:0 10px}footer .bullet-container .bullet{width:16px;height:16px;margin:var(--space-unit) calc(var(--space-unit) * 0.5);cursor:pointer;pointer-events:auto}}`;function l(t){return Array.isArray(t)&&t.every((t=>typeof t==="string"))}const h=class{constructor(e){t(this,e);this.currentSlide=0}watchData(){this.parseLinks()}componentWillLoad(){this.parseLinks();this.setDevice();window.addEventListener("resize",this.handleResize.bind(this))}componentDidRender(){this.setStyle()}handleResize(){this.setDevice();this.setStyle()}parseLinks(){var t;switch(typeof this.data){case"string":{const e=(t=s(this.data))!==null&&t!==void 0?t:[];if(!l(e)){throw new Error("Passed data is invalid")}this.links=e;break}default:this.links=this.data;break}}setStyle(){const t=this.el.shadowRoot.querySelector("#slides");if(!t){return}const e=this.el.shadowRoot.querySelectorAll(".slide");const i=this.el.offsetWidth;const r=i*this.links.length;t.style.width=`${r}px`;t.style.transform=`translate(-${i*this.currentSlide}px)`;e.forEach((t=>{const e=t.querySelector("img");e.style.width=`${i}px`}))}setDevice(){this.device=o()}setCurrentSlide(t){this.currentSlide=t}getBulletDimension(){switch(this.device){case r.MOBILE:return 24;case r.TABLET:return 32;default:return 40}}renderSlides(t){return e("div",{id:"slides"},t.map(((t,i)=>e("div",{id:"slide"+i,class:`slide ${this.currentSlide!==i&&"hide"}`},e("img",{src:t})))))}renderScroll(t){let i=false,r=this.currentSlide;if(t==="left"){i=this.currentSlide===0;r--}else if(t==="right"){i=this.currentSlide===this.links.length-1;r++}return e("z-icon",{class:`scroll ${t} ${i&&"disabled"}`,width:this.getBulletDimension(),height:this.getBulletDimension(),name:`chevron-${t}-circle`,onClick:()=>{if(!i){this.setCurrentSlide(r)}},onKeyUp:t=>!i&&n(t,(()=>{this.setCurrentSlide(r)})),tabindex:0,role:"button"})}renderSlideshowMain(){return e("main",null,this.renderScroll("left"),this.renderSlides(this.links),this.renderScroll("right"))}renderBullet(t){return e("a",{class:`bullet ${this.currentSlide===t&&"selected"}`,onClick:()=>this.setCurrentSlide(t),onKeyUp:e=>n(e,(()=>this.setCurrentSlide(t))),tabindex:0,role:"button"})}renderSlideshowFooter(){return e("footer",null,e("div",{class:"footer-left"},e("slot",{name:"footer-left"})),e("div",{class:"footer-center"},e("div",{class:"bullet-container"},Object.keys(this.links).map((t=>this.renderBullet(parseInt(t)))))),e("div",{class:"footer-right"},e("slot",{name:"footer-right"})))}render(){if(!this.links||!this.links.length){return e("div",null)}return e("div",{id:this.slideshowid},this.renderSlideshowMain(),this.renderSlideshowFooter())}get el(){return i(this)}static get watchers(){return{data:[{watchData:0}]}}};h.style=a();export{h as z_slideshow};
|
|
2
|
+
//# sourceMappingURL=p-44410388.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["stylesCss","isStringArray","data","Array","isArray","every","datum","ZSlideshow","constructor","hostRef","this","currentSlide","watchData","parseLinks","componentWillLoad","setDevice","window","addEventListener","handleResize","bind","componentDidRender","setStyle","parsed","_a","convertJson","Error","links","refSlides","el","shadowRoot","querySelector","allImages","querySelectorAll","width","offsetWidth","fullwidth","length","style","transform","forEach","item","img","device","getDevice","setCurrentSlide","index","getBulletDimension","Device","MOBILE","TABLET","renderSlides","items","h","id","map","i","class","src","renderScroll","direction","disabled","nextSlide","height","name","onClick","onKeyUp","e","handleKeyboardSubmit","tabindex","role","renderSlideshowMain","renderBullet","renderSlideshowFooter","Object","keys","parseInt","render","slideshowid"],"sources":["src/snowflakes/myz/z-slideshow/styles.css?tag=z-slideshow&encapsulation=shadow","src/snowflakes/myz/z-slideshow/index.tsx"],"sourcesContent":[":host {\n display: block;\n width: inherit;\n font-family: var(--font-family-sans);\n font-weight: var(--font-rg);\n}\n\n:host > div {\n display: flex;\n width: inherit;\n flex-direction: column;\n}\n\nmain {\n position: relative;\n overflow: hidden;\n width: 100%;\n}\n\nmain z-icon.scroll {\n position: absolute;\n z-index: 10;\n top: 50%;\n width: auto;\n margin: 0 var(--space-unit);\n cursor: pointer;\n fill: var(--color-primary01);\n transition: 0.6s ease;\n}\n\nmain .scroll.disabled {\n opacity: 0.5;\n pointer-events: none;\n}\n\nmain .scroll.right {\n right: 0;\n}\n\n#slides {\n display: flex;\n flex-wrap: wrap;\n line-height: 0px;\n overflow-y: hidden;\n transition: all 300ms;\n}\n\nfooter {\n display: grid;\n width: 100%;\n height: 56px;\n align-items: center;\n border-top: var(--border-size-medium) solid var(--color-background);\n grid-template: 2 / 2;\n grid-template-areas: \"center center\" \"left right\";\n}\n\nfooter > div {\n width: 100%;\n align-items: center;\n}\n\nfooter .footer-center {\n grid-area: center;\n}\n\nfooter .footer-left {\n grid-area: left;\n}\n\nfooter .footer-right {\n grid-area: right;\n}\n\nfooter .bullet-container {\n display: flex;\n min-height: 60px;\n align-items: center;\n justify-content: center;\n margin: 0 auto;\n}\n\nfooter .bullet-container .bullet {\n width: 8px;\n height: 8px;\n margin: var(--space-unit) 2px;\n background-color: var(--gray200);\n border-radius: 50%;\n pointer-events: none;\n}\n\nfooter .bullet-container .bullet.selected {\n background-color: var(--gray400);\n}\n\nmain z-icon:focus,\nfooter .bullet-container .bullet:focus {\n border-radius: 50%;\n box-shadow: var(--shadow-focus-primary);\n outline: none !important;\n}\n\n/* Tablet breakpoint */\n\n@media only screen and (min-width: 768px) {\n footer {\n height: 76px;\n border-top: var(--border-size-medium) solid var(--color-background);\n grid-template: 1 / 1fr 2fr 1fr;\n grid-template-areas: \"left center right\";\n }\n\n footer .bullet-container .bullet {\n width: 10px;\n height: 10px;\n margin: var(--space-unit) 3px;\n }\n}\n\n/* Desktop breakpoint */\n\n@media only screen and (min-width: 1025px) {\n main z-icon.scroll {\n margin: 0 10px;\n }\n\n footer .bullet-container .bullet {\n width: 16px;\n height: 16px;\n margin: var(--space-unit) calc(var(--space-unit) * 0.5);\n cursor: pointer;\n pointer-events: auto;\n }\n}\n","import {Component, ComponentInterface, Element, Prop, State, Watch, h} from \"@stencil/core\";\nimport {Device} from \"../../../beans\";\nimport {convertJson, getDevice, handleKeyboardSubmit} from \"../../../utils/utils\";\n\n/**\n * Check if data is an array of strings.\n * @param {unknown} data Data to check\n * @returns {boolean}\n */\nfunction isStringArray(data: unknown): data is string[] {\n return Array.isArray(data) && data.every((datum: unknown): datum is string => typeof datum === \"string\");\n}\n\n/**\n * @slot footer-right - right content slot in footer\n * @slot footer-left - left content slot in footer\n */\n@Component({\n tag: \"z-slideshow\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZSlideshow implements ComponentInterface {\n @Element() el: HTMLZSlideshowElement;\n\n /** slideshow id */\n @Prop()\n slideshowid: string;\n\n /** array or JSON stringified images urls */\n @Prop()\n data: string[] | string;\n\n @State()\n device: Device;\n\n @State()\n currentSlide = 0;\n\n private links: string[];\n\n @Watch(\"data\")\n watchData(): void {\n this.parseLinks();\n }\n\n componentWillLoad(): void {\n this.parseLinks();\n\n this.setDevice();\n window.addEventListener(\"resize\", this.handleResize.bind(this));\n }\n\n componentDidRender(): void {\n this.setStyle();\n }\n\n private handleResize(): void {\n this.setDevice();\n this.setStyle();\n }\n\n private parseLinks(): void {\n switch (typeof this.data) {\n case \"string\": {\n const parsed = convertJson(this.data) ?? [];\n if (!isStringArray(parsed)) {\n throw new Error(\"Passed data is invalid\");\n }\n\n this.links = parsed;\n break;\n }\n default:\n this.links = this.data;\n break;\n }\n }\n\n private setStyle(): void {\n const refSlides = this.el.shadowRoot.querySelector(\"#slides\") as HTMLElement;\n if (!refSlides) {\n return;\n }\n\n const allImages = this.el.shadowRoot.querySelectorAll(\".slide\");\n const width = this.el.offsetWidth;\n const fullwidth = width * this.links.length;\n\n refSlides.style.width = `${fullwidth}px`;\n refSlides.style.transform = `translate(-${width * this.currentSlide}px)`;\n allImages.forEach((item: HTMLElement) => {\n const img = item.querySelector(\"img\");\n img.style.width = `${width}px`;\n });\n }\n\n private setDevice(): void {\n this.device = getDevice();\n }\n\n private setCurrentSlide(index: number): void {\n this.currentSlide = index;\n }\n\n private getBulletDimension(): number {\n switch (this.device) {\n case Device.MOBILE:\n return 24;\n case Device.TABLET:\n return 32;\n default:\n return 40;\n }\n }\n\n private renderSlides(items: string[]): HTMLElement {\n return (\n <div id=\"slides\">\n {items.map((item: string, i: number) => (\n <div\n id={\"slide\" + i}\n class={`slide ${this.currentSlide !== i && \"hide\"}`}\n >\n <img src={item} />\n </div>\n ))}\n </div>\n );\n }\n\n private renderScroll(direction: \"left\" | \"right\"): HTMLZIconElement {\n let disabled = false,\n nextSlide = this.currentSlide;\n\n if (direction === \"left\") {\n disabled = this.currentSlide === 0;\n nextSlide--;\n } else if (direction === \"right\") {\n disabled = this.currentSlide === this.links.length - 1;\n nextSlide++;\n }\n\n return (\n <z-icon\n class={`scroll ${direction} ${disabled && \"disabled\"}`}\n width={this.getBulletDimension()}\n height={this.getBulletDimension()}\n name={`chevron-${direction}-circle`}\n onClick={() => {\n if (!disabled) {\n this.setCurrentSlide(nextSlide);\n }\n }}\n onKeyUp={(e: KeyboardEvent) =>\n !disabled &&\n handleKeyboardSubmit(e, () => {\n this.setCurrentSlide(nextSlide);\n })\n }\n tabindex={0}\n role=\"button\"\n />\n );\n }\n\n private renderSlideshowMain(): HTMLElement {\n return (\n <main>\n {this.renderScroll(\"left\")}\n {this.renderSlides(this.links)}\n {this.renderScroll(\"right\")}\n </main>\n );\n }\n\n private renderBullet(i: number): HTMLElement {\n return (\n <a\n class={`bullet ${this.currentSlide === i && \"selected\"}`}\n onClick={() => this.setCurrentSlide(i)}\n onKeyUp={(e: KeyboardEvent) => handleKeyboardSubmit(e, () => this.setCurrentSlide(i))}\n tabindex={0}\n role=\"button\"\n ></a>\n );\n }\n\n private renderSlideshowFooter(): HTMLElement {\n return (\n <footer>\n <div class=\"footer-left\">\n <slot name=\"footer-left\" />\n </div>\n <div class=\"footer-center\">\n <div class=\"bullet-container\">{Object.keys(this.links).map((i) => this.renderBullet(parseInt(i)))}</div>\n </div>\n <div class=\"footer-right\">\n <slot name=\"footer-right\" />\n </div>\n </footer>\n );\n }\n\n render(): HTMLElement {\n if (!this.links || !this.links.length) {\n return <div />;\n }\n\n return (\n <div id={this.slideshowid}>\n {this.renderSlideshowMain()}\n {this.renderSlideshowFooter()}\n </div>\n );\n }\n}\n"],"mappings":"gKAAA,MAAMA,EAAY,IAAM,+0DCSxB,SAASC,EAAcC,GACrB,OAAOC,MAAMC,QAAQF,IAASA,EAAKG,OAAOC,UAA2CA,IAAU,UACjG,C,MAWaC,EAAU,MALvB,WAAAC,CAAAC,G,UAoBEC,KAAAC,aAAe,CAmLhB,CA9KC,SAAAC,GACEF,KAAKG,Y,CAGP,iBAAAC,GACEJ,KAAKG,aAELH,KAAKK,YACLC,OAAOC,iBAAiB,SAAUP,KAAKQ,aAAaC,KAAKT,M,CAG3D,kBAAAU,GACEV,KAAKW,U,CAGC,YAAAH,GACNR,KAAKK,YACLL,KAAKW,U,CAGC,UAAAR,G,MACN,cAAeH,KAAKR,MAClB,IAAK,SAAU,CACb,MAAMoB,GAASC,EAAAC,EAAYd,KAAKR,SAAK,MAAAqB,SAAA,EAAAA,EAAI,GACzC,IAAKtB,EAAcqB,GAAS,CAC1B,MAAM,IAAIG,MAAM,yB,CAGlBf,KAAKgB,MAAQJ,EACb,K,CAEF,QACEZ,KAAKgB,MAAQhB,KAAKR,KAClB,M,CAIE,QAAAmB,GACN,MAAMM,EAAYjB,KAAKkB,GAAGC,WAAWC,cAAc,WACnD,IAAKH,EAAW,CACd,M,CAGF,MAAMI,EAAYrB,KAAKkB,GAAGC,WAAWG,iBAAiB,UACtD,MAAMC,EAAQvB,KAAKkB,GAAGM,YACtB,MAAMC,EAAYF,EAAQvB,KAAKgB,MAAMU,OAErCT,EAAUU,MAAMJ,MAAQ,GAAGE,MAC3BR,EAAUU,MAAMC,UAAY,cAAcL,EAAQvB,KAAKC,kBACvDoB,EAAUQ,SAASC,IACjB,MAAMC,EAAMD,EAAKV,cAAc,OAC/BW,EAAIJ,MAAMJ,MAAQ,GAAGA,KAAS,G,CAI1B,SAAAlB,GACNL,KAAKgC,OAASC,G,CAGR,eAAAC,CAAgBC,GACtBnC,KAAKC,aAAekC,C,CAGd,kBAAAC,GACN,OAAQpC,KAAKgC,QACX,KAAKK,EAAOC,OACV,OAAO,GACT,KAAKD,EAAOE,OACV,OAAO,GACT,QACE,OAAO,G,CAIL,YAAAC,CAAaC,GACnB,OACEC,EAAA,OAAKC,GAAG,UACLF,EAAMG,KAAI,CAACd,EAAce,IACxBH,EAAA,OACEC,GAAI,QAAUE,EACdC,MAAO,SAAS9C,KAAKC,eAAiB4C,GAAK,UAE3CH,EAAA,OAAKK,IAAKjB,O,CAOZ,YAAAkB,CAAaC,GACnB,IAAIC,EAAW,MACbC,EAAYnD,KAAKC,aAEnB,GAAIgD,IAAc,OAAQ,CACxBC,EAAWlD,KAAKC,eAAiB,EACjCkD,G,MACK,GAAIF,IAAc,QAAS,CAChCC,EAAWlD,KAAKC,eAAiBD,KAAKgB,MAAMU,OAAS,EACrDyB,G,CAGF,OACET,EAAA,UACEI,MAAO,UAAUG,KAAaC,GAAY,aAC1C3B,MAAOvB,KAAKoC,qBACZgB,OAAQpD,KAAKoC,qBACbiB,KAAM,WAAWJ,WACjBK,QAAS,KACP,IAAKJ,EAAU,CACblD,KAAKkC,gBAAgBiB,E,GAGzBI,QAAUC,IACPN,GACDO,EAAqBD,GAAG,KACtBxD,KAAKkC,gBAAgBiB,EAAU,IAGnCO,SAAU,EACVC,KAAK,U,CAKH,mBAAAC,GACN,OACElB,EAAA,YACG1C,KAAKgD,aAAa,QAClBhD,KAAKwC,aAAaxC,KAAKgB,OACvBhB,KAAKgD,aAAa,S,CAKjB,YAAAa,CAAahB,GACnB,OACEH,EAAA,KACEI,MAAO,UAAU9C,KAAKC,eAAiB4C,GAAK,aAC5CS,QAAS,IAAMtD,KAAKkC,gBAAgBW,GACpCU,QAAUC,GAAqBC,EAAqBD,GAAG,IAAMxD,KAAKkC,gBAAgBW,KAClFa,SAAU,EACVC,KAAK,U,CAKH,qBAAAG,GACN,OACEpB,EAAA,cACEA,EAAA,OAAKI,MAAM,eACTJ,EAAA,QAAMW,KAAK,iBAEbX,EAAA,OAAKI,MAAM,iBACTJ,EAAA,OAAKI,MAAM,oBAAoBiB,OAAOC,KAAKhE,KAAKgB,OAAO4B,KAAKC,GAAM7C,KAAK6D,aAAaI,SAASpB,QAE/FH,EAAA,OAAKI,MAAM,gBACTJ,EAAA,QAAMW,KAAK,kB,CAMnB,MAAAa,GACE,IAAKlE,KAAKgB,QAAUhB,KAAKgB,MAAMU,OAAQ,CACrC,OAAOgB,EAAA,W,CAGT,OACEA,EAAA,OAAKC,GAAI3C,KAAKmE,aACXnE,KAAK4D,sBACL5D,KAAK8D,wB","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,c as e,h as i,d as o}from"./p-BEHxru6n.js";import{e as s,I as a,i as r,g as n,l}from"./p-B3nR3-Jw.js";import{r as c,e as h,b as d}from"./p-C8pbzcmM.js";import"./p-Q-tWjk7P.js";const p=()=>`.z-label{display:block;padding-bottom:var(--space-unit);color:var(--color-default-text);font-family:var(--font-family-sans);font-size:var(--font-size-1);font-weight:var(--font-sb);text-align:left;text-transform:uppercase}`;const m=()=>`:host{display:block;min-width:290px;color:var(--color-form-default-text);fill:var(--color-form-default-icon);font-family:var(--font-family-sans)}:host>div.fixed{position:relative}:host>div>.header{position:relative;z-index:10;display:flex;min-height:42px;align-items:center;justify-content:space-between;padding:0 calc(var(--space-unit) * 1.5);border:var(--border-size-small) solid var(--color-form-surface04);margin:0;background-color:var(--color-form-background);border-radius:var(--border-radius-small);cursor:pointer}:host([size="small"])>div>.header{min-height:34px;font-size:var(--font-size-2)}:host([size="x-small"])>div>.header{min-height:30px;font-size:var(--font-size-2)}:host>div>.header:hover{outline:var(--border-size-medium) solid var(--color-form-surface04);outline-offset:-2px}:host>div>div.header:focus:focus-visible{z-index:16;box-shadow:var(--shadow-focus-primary);outline:none}:host>div>.header>span.body-3>span{font-weight:var(--font-sb)}:host>div>.header>z-icon{fill:var(--color-form-default-icon);transform:rotate(360deg);transition:all 200ms linear}:host>div>.header>z-icon.small,:host>div>.header>z-icon.x-small{--z-icon-width:16px;--z-icon-height:16px}:host>div.open>.header{border:var(--border-size-small) solid var(--color-form-active-primary);border-radius:var(--border-radius-small) var(--border-radius-small) 0 0}:host>div.disabled{pointer-events:none}:host>div.disabled .header{border-color:var(--color-form-disabled03);fill:var(--color-form-disabled01-icon)}:host>div.disabled .header>span.body-3{color:var(--color-form-disabled03)}:host>div.disabled .header>z-icon:last-child{fill:var(--color-form-disabled01-icon)}:host>div.open>.header>z-icon{fill:var(--color-form-default-icon);transform:rotate(180deg);transition:all 200ms linear}:host>div>div.open-combo-data{display:none}:host>div.open>div.open-combo-data{position:relative;z-index:12;display:block;padding:var(--space-unit) calc(var(--space-unit) * 2);border:var(--border-size-small) solid var(--color-form-surface03);border-top:0;background-color:var(--color-form-background);border-radius:0;box-shadow:var(--shadow-2)}:host .open .open-combo-data z-input .z-label{color:var(--color-form-default-text)}:host>div.open>div.open-combo-data>div>div{overflow:auto;max-height:235px;padding:0;padding-left:var(--space-unit);margin-left:calc(var(--space-unit) * -1);}:host>div.open>div.open-combo-data>z-input{width:100%;margin-bottom:calc(var(--space-unit) * 2)}:host>div.open>div.open-combo-data>div>div>ul{max-height:235px;padding:0 calc(var(--space-unit) * 0.5);margin:0}:host .open-combo-data z-list-element{--background-color-list-element:var(--color-form-background);--background-hover-color-list-element:var(--color-form-surface03);--background-active-color-list-element:var(--color-form-surface03)}:host .open-combo-data z-list-element[disabled]{pointer-events:none}:host .open-combo-data z-list-element .option-wrap{display:flex;flex-direction:row;align-items:center;cursor:pointer;gap:var(--space-unit)}:host .open-combo-data z-list-element[size="medium"] .option-wrap,:host .open-combo-data z-list-element[size="small"] .option-wrap{--z-icon-width:16px;--z-icon-height:16px;font-size:var(--font-size-2);gap:calc(var(--space-unit) / 2)}:host .open-combo-data z-list-element .option-wrap>z-icon{fill:var(--color-primary01)}:host .open-combo-data z-list-element[disabled] .option-wrap>z-icon{fill:var(--color-disabled01)}:host .open-combo-data z-list-element .option-wrap>z-icon.focused{border-radius:var(--border-radius-small);box-shadow:var(--shadow-focus-primary);outline:none}:host .open-combo-data z-list-element .option-wrap>[role="option"]:focus,:host .open-combo-data z-list-element .option-wrap>[role="option"]:focus-visible{outline:none}::-webkit-scrollbar{width:6px;background:linear-gradient(to right, transparent 0 1px, var(--gray200) 1px 5px, transparent 5px 6px)}::-webkit-scrollbar-thumb{background-color:var(--color-primary01)}::-webkit-scrollbar-thumb:hover{background-color:var(--color-hover-primary)}@supports not selector(::-webkit-scrollbar-track){:host{scrollbar-color:var(--color-primary01) transparent}}:host>div.open>z-input{position:relative;z-index:1;width:238px;margin:0 calc(var(--space-unit) * 2);color:var(--color-form-active-primary)}:host>div.open>div.open-combo-data>div>div.search{overflow:hidden;max-height:none;margin-top:0}:host>div.open>div.open-combo-data>div>div.search>ul{overflow:auto;max-height:180px;padding:var(--space-unit) calc(var(--space-unit) * 2)}:host .open .open-combo-data .search .no-results{display:flex;align-items:center;column-gap:var(--space-unit)}:host>.open>.open-combo-data .search .close-search{display:flex;justify-content:center}:host>div.open>div.open-combo-data>div>div.search .close-search>a{display:inline-block;height:44px;color:var(--color-form-active-primary);cursor:pointer;font-size:14px;font-weight:var(--font-sb);line-height:44px;text-align:center;text-transform:uppercase}:host>div.open>div.open-combo-data>div>div.search .close-search>a:focus:focus-visible{box-shadow:var(--shadow-focus-primary);outline:none}:host>div.open>div.open-combo-data>div>div.check-all-wrapper{padding:calc(var(--space-unit) * 2) calc(var(--space-unit) * 0.5) calc(var(--space-unit) * 2) calc(var(--space-unit) * 1.5);border-bottom:var(--border-size-small) solid var(--gray800);margin-bottom:var(--space-unit);margin-left:calc(var(--space-unit) * -1);text-align:left}:host([size="small"])>div.open>div.open-combo-data>div>div.check-all-wrapper{padding:calc(var(--space-unit) * 1.5) calc(var(--space-unit) * 0.5)}:host([size="x-small"])>div.open>div.open-combo-data>div>div.check-all-wrapper{padding:var(--space-unit) calc(var(--space-unit) * 0.5)}`;const u=class{watchItems(){this.itemsList=typeof this.items==="string"?JSON.parse(this.items):this.items;this.selectedCounter=this.itemsList.filter((t=>t.checked)).length;this.updateRenderItemsList()}watchSearchValue(){this.filterItems(this.searchValue)}emitComboboxChange(){this.comboboxChange.emit({id:this.inputid,items:this.itemsList})}constructor(i){t(this,i);this.comboboxChange=e(this,"comboboxChange",7);this.inputid=`combo-${c()}`;this.disabled=false;this.hassearch=false;this.noresultslabel="Nessun risultato";this.isopen=false;this.isfixed=false;this.hascheckall=false;this.checkalltext="Seleziona tutti";this.uncheckalltext="Deseleziona tutti";this.maxcheckableitems=0;this.size=s.BIG;this.renderItemsList=[];this.focusedItemId="";this.itemsList=[];this.inputType=a.TEXT;this.toggleComboBox=this.toggleComboBox.bind(this);this.closeFilterItems=this.closeFilterItems.bind(this)}componentWillLoad(){this.watchItems()}componentWillRender(){this.selectedCounter=this.itemsList.filter((t=>t.checked)).length}getControlToListSize(){switch(this.size){case s.X_SMALL:return r.SMALL;case s.SMALL:return r.MEDIUM;default:return r.LARGE}}getOptionId(t){return`${this.inputid}-option-${t.id?h(`${t.id}`):h(`${t.name}`)}`}getCheckAllOptionId(){return`${this.inputid}-check-all`}allOptionsSelected(){return this.selectedCounter===this.itemsList.length}hasReachedMaxSelections(){return!!(this.maxcheckableitems&&this.selectedCounter>=this.maxcheckableitems)}handleHeaderKeyDown(t){if(t.code===n.ENTER&&!this.focusedItemId){this.toggleComboBox()}if(!this.isopen||this.hassearch){return}switch(t.code){case n.SPACE:case n.ENTER:if(this.focusedItemId){t.preventDefault();this.checkOption(this.focusedItemId)}break;case n.ESC:if(this.focusedItemId){this.focusedItemId=""}break;case n.ARROW_DOWN:case n.ARROW_UP:this.handleArrowsNavigation(t);break}}handleInputKeyDown(t){switch(t.code){case n.ENTER:case n.SPACE:if(this.focusedItemId){t.preventDefault();this.checkOption(this.focusedItemId);break}break;case n.ARROW_DOWN:case n.ARROW_UP:this.handleArrowsNavigation(t);break;case n.ESC:if(this.focusedItemId){this.focusedItemId="";break}this.closeFilterItems();break;case n.TAB:this.focusedItemId="";break}}checkOption(t){if(t===this.getCheckAllOptionId()){this.itemsList=this.itemsList.map((t=>Object.assign(Object.assign({},t),{checked:!this.allOptionsSelected()})));this.focusedItemId=this.getCheckAllOptionId()}else{this.itemsList=this.itemsList.map((e=>{if(t===this.getOptionId(e)){e.checked=!e.checked}return e}))}this.updateRenderItemsList();this.emitComboboxChange()}handleArrowsNavigation(t){if(![n.ARROW_DOWN,n.ARROW_UP].includes(t.code)||!this.isopen){return}t.preventDefault();t.stopPropagation();const e=this.focusedItemId?this.element.shadowRoot.querySelector(`#${this.focusedItemId}`):null;const i=Array.from(this.element.shadowRoot.querySelectorAll('[role="option"]'));if(!i.length){return}const o=e?i.indexOf(e):null;const s=0;const a=i.length-1;let r=null;if(t.code===n.ARROW_DOWN){r=o===null?i[s]:i[o+1]||i[a]}else if(t.code===n.ARROW_UP){r=o===null?i[a]:i[o-1]||i[s]}this.focusedItemId=r.id;r.scrollIntoView({block:"nearest",container:"nearest"})}updateRenderItemsList(){if(this.searchValue){this.filterItems(this.searchValue)}else{this.resetRenderItemsList()}}resetRenderItemsList(){const t=[];this.itemsList.forEach((e=>{t.push(Object.assign({},e))}));this.renderItemsList=t}filterItems(t){if(!t){return this.closeFilterItems()}this.resetRenderItemsList();this.renderItemsList=this.renderItemsList.filter((e=>{const i=e.name.toUpperCase().indexOf(t.toUpperCase());const o=i+t.length;const s=e.name.substring(0,i)+"<strong>"+e.name.substring(i,o)+"</strong>"+e.name.substring(o,e.name.length);e.name=s;return i>=0}))}closeFilterItems(){this.searchValue="";this.resetRenderItemsList()}toggleComboBox(){this.isopen=!this.isopen}getHeaderAriaLabel(){if(!this.label||this.selectedCounter<=0){return undefined}const t=this.selectedCounter===1?"elemento selezionato":"elementi selezionati";return`${this.label}: ${this.selectedCounter} ${t}`}getComboboxA11yAttributes(t){const e="combobox";const i=this.isopen?"true":"false";const o=this.isopen?this.focusedItemId:"";const s=`${this.inputid}_list`;if(t){return{role:e,"aria-label":this.htmlAriaLabel,"html-aria-expanded":i,"html-aria-activedescendant":o,"html-aria-controls":s}}return{role:e,"aria-expanded":i,"aria-activedescendant":o,"aria-controls":s}}renderHeader(){const t=!this.hassearch?this.getComboboxA11yAttributes(false):{};return i("div",Object.assign({class:"header",onClick:()=>this.toggleComboBox(),onKeyDown:t=>this.handleHeaderKeyDown(t),role:"button",tabindex:0,"aria-controls":"open-combo-data","aria-expanded":this.isopen?"true":"false","aria-label":this.getHeaderAriaLabel()},t),i("span",{class:"body-3"},this.label,i("span",null,this.selectedCounter>0&&` (${this.selectedCounter})`)),i("z-icon",{name:"caret-down",class:this.size}))}renderContent(){return i("div",{id:"open-combo-data",class:"open-combo-data"},this.hassearch&&this.renderSearchInput(),i("div",{role:"listbox","aria-label":this.label,"aria-multiselectable":"true",id:`${this.inputid}_list`,"aria-owns":`${this.hascheckall?`${this.getCheckAllOptionId()} `:``}${this.itemsList.map((t=>this.getOptionId(t))).join(" ")}`},this.renderItems()))}renderItems(){return i("div",{class:this.searchValue&&"search",tabIndex:-1,role:"presentation"},this.renderList(this.renderItemsList))}renderItem(t,e,o){const s=this.getOptionId(t);const a=!t.checked&&this.hasReachedMaxSelections();return i("z-list-element",{htmlTabindex:-1,dividerType:e!==o-1?l.ELEMENT:l.NONE,size:this.getControlToListSize(),role:"presentation",disabled:!!a},i("span",{class:"option-wrap",role:"presentation",onClick:()=>{this.focusedItemId="";this.checkOption(s)}},i("z-icon",{name:t.checked?"checkbox-checked":"checkbox",class:this.focusedItemId===s?"focused":""}),i("span",{id:s,role:a?"presentation":"option","aria-selected":t.checked?"true":"false","aria-label":a?undefined:d(t.name)},i("span",{"aria-hidden":"true",innerHTML:t.name}))))}renderList(t){if(!t){return}if(!t.length&&this.searchValue){return this.renderNoSearchResults()}if(this.hasgroupitems){return this.renderGroups(t)}return i("ul",{role:"presentation"},this.renderCheckAll(),t.map(((e,i)=>this.renderItem(e,i,t.length))))}renderGroups(t){const e=t.reduce(((e,i,o)=>{var s;const a=i.category||"Altra categoria";const r=this.renderItem(i,o,t.length);e[a]=(s=e[a])!==null&&s!==void 0?s:[];e[a].push(r);return e}),{});const o=Object.entries(e).map((([t,e],o)=>i("z-list-group",{size:this.getControlToListSize(),"divider-type":l.ELEMENT,"aria-labelledby":`${this.inputid}_list_group_${o}`},i("span",{class:"body-3-sb z-list-group-title",slot:"header-title",id:`${this.inputid}_list_group_${o}`,"aria-hidden":"true"},t),e.map((t=>t)))));return i("ul",{role:"presentation"},this.renderCheckAll(),o)}renderNoSearchResults(){return i("div",{class:"no-results"},i("span",null,this.noresultslabel))}renderSearchInput(){return i("z-input",Object.assign({htmlid:`${this.inputid}_search`,label:this.searchlabel,placeholder:this.searchplaceholder,htmltitle:this.searchtitle,type:this.inputType,value:this.searchValue,message:false,size:this.size,"html-aria-autocomplete":"list"},this.getComboboxA11yAttributes(true),{onKeyDown:t=>this.handleInputKeyDown(t),onInputChange:t=>{this.searchValue=t.detail.value;this.focusedItemId=""}}))}renderCheckAll(){if(!this.hascheckall||this.searchValue){return}const t=this.getCheckAllOptionId();const e=this.allOptionsSelected();const o=this.hasReachedMaxSelections()||this.maxcheckableitems&&this.maxcheckableitems<this.itemsList.length;return i("z-list-element",{class:"check-all-wrapper",role:"presentation",htmlTabindex:-1,dividerType:l.ELEMENT,dividerColor:"gray800",size:this.getControlToListSize(),disabled:!!o},i("span",{class:"option-wrap",role:"presentation",onClick:()=>this.checkOption(t)},i("z-icon",{name:e?"checkbox-checked":"checkbox",class:this.focusedItemId===t?"focused":""}),i("span",{id:t,role:o?"presentation":"option","aria-selected":e?"true":"false"},e?this.uncheckalltext:this.checkalltext)))}render(){return i("div",{key:"6ada0f3dc9aebeb5c97843c18935199f6c981e28","data-action":`combo-${this.inputid}`,class:{open:this.isopen,fixed:this.isfixed,disabled:this.disabled},id:this.inputid},this.renderHeader(),!this.disabled&&this.renderContent())}get element(){return o(this)}static get watchers(){return{items:[{watchItems:0}],searchValue:[{watchSearchValue:0}]}}};u.style=p()+m();export{u as z_combobox};
|
|
2
|
+
//# sourceMappingURL=p-508eb530.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["stylesCss","ZCombobox","watchItems","this","itemsList","items","JSON","parse","selectedCounter","filter","item","checked","length","updateRenderItemsList","watchSearchValue","filterItems","searchValue","emitComboboxChange","comboboxChange","emit","id","inputid","constructor","hostRef","randomId","disabled","hassearch","noresultslabel","isopen","isfixed","hascheckall","checkalltext","uncheckalltext","maxcheckableitems","size","ControlSize","BIG","renderItemsList","focusedItemId","inputType","InputType","TEXT","toggleComboBox","bind","closeFilterItems","componentWillLoad","componentWillRender","getControlToListSize","X_SMALL","ListSize","SMALL","MEDIUM","LARGE","getOptionId","encodeString","name","getCheckAllOptionId","allOptionsSelected","hasReachedMaxSelections","handleHeaderKeyDown","e","code","KeyboardCode","ENTER","SPACE","preventDefault","checkOption","ESC","ARROW_DOWN","ARROW_UP","handleArrowsNavigation","handleInputKeyDown","TAB","optionId","map","Object","assign","i","includes","stopPropagation","currElem","element","shadowRoot","querySelector","options","Array","from","querySelectorAll","currElemIndex","indexOf","firstElemIndex","lastElemIndex","nextElem","scrollIntoView","block","container","resetRenderItemsList","forEach","push","value","start","toUpperCase","end","newName","substring","getHeaderAriaLabel","label","undefined","suffix","getComboboxA11yAttributes","isZInput","role","ariaExpanded","ariaActivedescendant","ariaControls","htmlAriaLabel","renderHeader","comboboxA11yAttributes","h","class","onClick","onKeyDown","tabindex","renderContent","renderSearchInput","join","renderItems","tabIndex","renderList","renderItem","index","isDisabled","htmlTabindex","dividerType","ListDividerType","ELEMENT","NONE","getPlainText","innerHTML","renderNoSearchResults","hasgroupitems","renderGroups","renderCheckAll","newData","reduce","group","category","zListItem","_a","listGroups","entries","key","slot","htmlid","searchlabel","placeholder","searchplaceholder","htmltitle","searchtitle","type","message","onInputChange","detail","allChecked","dividerColor","render","open","fixed"],"sources":["src/components/css-components/z-label/styles.css?tag=z-combobox&encapsulation=shadow","src/components/z-combobox/styles.css?tag=z-combobox&encapsulation=shadow","src/components/z-combobox/index.tsx"],"sourcesContent":[".z-label {\n display: block;\n padding-bottom: var(--space-unit);\n color: var(--color-default-text);\n font-family: var(--font-family-sans);\n font-size: var(--font-size-1);\n font-weight: var(--font-sb);\n text-align: left;\n text-transform: uppercase;\n}\n",":host {\n display: block;\n min-width: 290px;\n color: var(--color-form-default-text);\n fill: var(--color-form-default-icon);\n font-family: var(--font-family-sans);\n}\n\n:host > div.fixed {\n position: relative;\n}\n\n:host > div > .header {\n position: relative;\n z-index: 10;\n display: flex;\n min-height: 42px;\n align-items: center;\n justify-content: space-between;\n padding: 0 calc(var(--space-unit) * 1.5);\n border: var(--border-size-small) solid var(--color-form-surface04);\n margin: 0;\n background-color: var(--color-form-background);\n border-radius: var(--border-radius-small);\n cursor: pointer;\n}\n\n:host([size=\"small\"]) > div > .header {\n min-height: 34px;\n font-size: var(--font-size-2);\n}\n\n:host([size=\"x-small\"]) > div > .header {\n min-height: 30px;\n font-size: var(--font-size-2);\n}\n\n:host > div > .header:hover {\n outline: var(--border-size-medium) solid var(--color-form-surface04);\n outline-offset: -2px;\n}\n\n:host > div > div.header:focus:focus-visible {\n z-index: 16;\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n\n:host > div > .header > span.body-3 > span {\n font-weight: var(--font-sb);\n}\n\n:host > div > .header > z-icon {\n fill: var(--color-form-default-icon);\n transform: rotate(360deg);\n transition: all 200ms linear;\n}\n\n:host > div > .header > z-icon.small,\n:host > div > .header > z-icon.x-small {\n --z-icon-width: 16px;\n --z-icon-height: 16px;\n}\n\n:host > div.open > .header {\n border: var(--border-size-small) solid var(--color-form-active-primary);\n border-radius: var(--border-radius-small) var(--border-radius-small) 0 0;\n}\n\n:host > div.disabled {\n pointer-events: none;\n}\n\n:host > div.disabled .header {\n border-color: var(--color-form-disabled03);\n fill: var(--color-form-disabled01-icon);\n}\n\n:host > div.disabled .header > span.body-3 {\n color: var(--color-form-disabled03);\n}\n\n:host > div.disabled .header > z-icon:last-child {\n fill: var(--color-form-disabled01-icon);\n}\n\n:host > div.open > .header > z-icon {\n fill: var(--color-form-default-icon);\n transform: rotate(180deg);\n transition: all 200ms linear;\n}\n\n:host > div > div.open-combo-data {\n display: none;\n}\n\n:host > div.open > div.open-combo-data {\n position: relative;\n z-index: 12;\n display: block;\n padding: var(--space-unit) calc(var(--space-unit) * 2);\n border: var(--border-size-small) solid var(--color-form-surface03);\n border-top: 0;\n background-color: var(--color-form-background);\n border-radius: 0;\n box-shadow: var(--shadow-2);\n}\n\n:host .open .open-combo-data z-input .z-label {\n color: var(--color-form-default-text);\n}\n\n:host > div.open > div.open-combo-data > div > div {\n overflow: auto;\n max-height: 235px;\n padding: 0;\n padding-left: var(--space-unit); /* padding left and negative margin in order to enable focus */\n margin-left: calc(var(--space-unit) * -1); /* padding left and negative margin in order to enable focus */\n}\n\n:host > div.open > div.open-combo-data > z-input {\n width: 100%;\n margin-bottom: calc(var(--space-unit) * 2);\n}\n\n:host > div.open > div.open-combo-data > div > div > ul {\n max-height: 235px;\n padding: 0 calc(var(--space-unit) * 0.5); /* needed for checkbox focus shadow */\n margin: 0;\n}\n\n:host .open-combo-data z-list-element {\n --background-color-list-element: var(--color-form-background);\n --background-hover-color-list-element: var(--color-form-surface03);\n --background-active-color-list-element: var(--color-form-surface03);\n}\n\n:host .open-combo-data z-list-element[disabled] {\n pointer-events: none;\n}\n\n:host .open-combo-data z-list-element .option-wrap {\n display: flex;\n flex-direction: row;\n align-items: center;\n cursor: pointer;\n gap: var(--space-unit);\n}\n\n:host .open-combo-data z-list-element[size=\"medium\"] .option-wrap,\n:host .open-combo-data z-list-element[size=\"small\"] .option-wrap {\n --z-icon-width: 16px;\n --z-icon-height: 16px;\n\n font-size: var(--font-size-2);\n gap: calc(var(--space-unit) / 2);\n}\n\n:host .open-combo-data z-list-element .option-wrap > z-icon {\n fill: var(--color-primary01);\n}\n\n:host .open-combo-data z-list-element[disabled] .option-wrap > z-icon {\n fill: var(--color-disabled01);\n}\n\n:host .open-combo-data z-list-element .option-wrap > z-icon.focused {\n border-radius: var(--border-radius-small);\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n\n:host .open-combo-data z-list-element .option-wrap > [role=\"option\"]:focus,\n:host .open-combo-data z-list-element .option-wrap > [role=\"option\"]:focus-visible {\n outline: none;\n}\n\n::-webkit-scrollbar {\n width: 6px;\n background: linear-gradient(to right, transparent 0 1px, var(--gray200) 1px 5px, transparent 5px 6px);\n}\n\n::-webkit-scrollbar-thumb {\n background-color: var(--color-primary01);\n}\n\n::-webkit-scrollbar-thumb:hover {\n background-color: var(--color-hover-primary);\n}\n\n/* Firefox scrollbar */\n@supports not selector(::-webkit-scrollbar-track) {\n :host {\n scrollbar-color: var(--color-primary01) transparent;\n }\n}\n\n:host > div.open > z-input {\n position: relative;\n z-index: 1;\n width: 238px;\n margin: 0 calc(var(--space-unit) * 2);\n color: var(--color-form-active-primary);\n}\n\n:host > div.open > div.open-combo-data > div > div.search {\n overflow: hidden;\n max-height: none;\n margin-top: 0;\n}\n\n:host > div.open > div.open-combo-data > div > div.search > ul {\n overflow: auto;\n max-height: 180px;\n padding: var(--space-unit) calc(var(--space-unit) * 2);\n}\n\n:host .open .open-combo-data .search .no-results {\n display: flex;\n align-items: center;\n column-gap: var(--space-unit);\n}\n\n:host > .open > .open-combo-data .search .close-search {\n display: flex;\n justify-content: center;\n}\n\n:host > div.open > div.open-combo-data > div > div.search .close-search > a {\n display: inline-block;\n height: 44px;\n color: var(--color-form-active-primary);\n cursor: pointer;\n font-size: 14px;\n font-weight: var(--font-sb);\n line-height: 44px;\n text-align: center;\n text-transform: uppercase;\n}\n\n:host > div.open > div.open-combo-data > div > div.search .close-search > a:focus:focus-visible {\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n\n:host > div.open > div.open-combo-data > div > div.check-all-wrapper {\n /* padding left and negative margin in order to enable focus */\n padding: calc(var(--space-unit) * 2) calc(var(--space-unit) * 0.5) calc(var(--space-unit) * 2)\n calc(var(--space-unit) * 1.5);\n border-bottom: var(--border-size-small) solid var(--gray800);\n margin-bottom: var(--space-unit);\n margin-left: calc(var(--space-unit) * -1);\n text-align: left;\n}\n\n:host([size=\"small\"]) > div.open > div.open-combo-data > div > div.check-all-wrapper {\n padding: calc(var(--space-unit) * 1.5) calc(var(--space-unit) * 0.5);\n}\n\n:host([size=\"x-small\"]) > div.open > div.open-combo-data > div > div.check-all-wrapper {\n padding: var(--space-unit) calc(var(--space-unit) * 0.5);\n}\n","import {Component, ComponentInterface, Element, Event, EventEmitter, Prop, State, Watch, h} from \"@stencil/core\";\nimport {ComboItem, ControlSize, InputType, KeyboardCode, ListDividerType, ListSize} from \"../../beans\";\nimport {encodeString, getPlainText, randomId} from \"../../utils/utils\";\nimport {ZInput} from \"../z-input\";\n\n@Component({\n tag: \"z-combobox\",\n styleUrls: [\"../css-components/z-label/styles.css\", \"styles.css\"],\n shadow: true,\n})\nexport class ZCombobox implements ComponentInterface {\n @Element() element: HTMLZComboboxElement;\n\n /** input unique id */\n @Prop()\n inputid = `combo-${randomId()}`;\n\n /** list items array */\n @Prop()\n items: ComboItem[] | string;\n\n /** label text */\n @Prop()\n label: string;\n\n /** the combobox is disabled */\n @Prop({reflect: true})\n disabled?: boolean = false;\n\n /** show search input flag (optional) */\n @Prop()\n hassearch?: boolean = false;\n\n /** search input label text (optional) */\n @Prop()\n searchlabel?: string;\n\n /** search input placeholder text (optional) */\n @Prop()\n searchplaceholder?: string;\n\n /** search input title text (optional) */\n @Prop()\n searchtitle?: string;\n\n /** no result text message */\n @Prop()\n noresultslabel?: string = \"Nessun risultato\";\n\n /** toggle combo list opening flag */\n @Prop({mutable: true})\n isopen = false;\n\n /** fixed style flag */\n @Prop()\n isfixed = false;\n\n /** show \"check all\" checkbox (optional) */\n @Prop()\n hascheckall?: boolean = false;\n\n /** check all label (optional) */\n @Prop()\n checkalltext?: string = \"Seleziona tutti\";\n\n /** uncheck all label (optional) */\n @Prop()\n uncheckalltext?: string = \"Deseleziona tutti\";\n\n /** max number of checkable items (0 = unlimited) */\n @Prop()\n maxcheckableitems = 0;\n\n /** group items by category */\n @Prop()\n hasgroupitems?: boolean;\n\n /** Available sizes: `big`, `small` and `x-small`. Defaults to `big`. */\n @Prop()\n size?: ControlSize = ControlSize.BIG;\n\n /** the combobox aria-label */\n @Prop()\n htmlAriaLabel?: string;\n\n @State()\n searchValue: string;\n\n @State()\n selectedCounter: number;\n\n @State()\n renderItemsList: ComboItem[] = []; // used for render only\n\n @State()\n focusedItemId = \"\";\n\n private itemsList: ComboItem[] = [];\n\n private inputType: InputType = InputType.TEXT;\n\n @Watch(\"items\")\n watchItems(): void {\n this.itemsList = typeof this.items === \"string\" ? JSON.parse(this.items) : this.items;\n this.selectedCounter = this.itemsList.filter((item) => item.checked).length;\n this.updateRenderItemsList();\n }\n\n @Watch(\"searchValue\")\n watchSearchValue(): void {\n this.filterItems(this.searchValue);\n }\n\n /** Emitted when value is checked/unchecked. Returns id, items. */\n @Event()\n comboboxChange: EventEmitter;\n\n private emitComboboxChange(): void {\n this.comboboxChange.emit({id: this.inputid, items: this.itemsList});\n }\n\n constructor() {\n this.toggleComboBox = this.toggleComboBox.bind(this);\n this.closeFilterItems = this.closeFilterItems.bind(this);\n }\n\n componentWillLoad(): void {\n this.watchItems();\n }\n\n componentWillRender(): void {\n this.selectedCounter = this.itemsList.filter((item) => item.checked).length;\n }\n\n private getControlToListSize(): ListSize {\n switch (this.size) {\n case ControlSize.X_SMALL:\n return ListSize.SMALL;\n case ControlSize.SMALL:\n return ListSize.MEDIUM;\n default:\n return ListSize.LARGE;\n }\n }\n\n private getOptionId(item: ComboItem): string {\n return `${this.inputid}-option-${item.id ? encodeString(`${item.id}`) : encodeString(`${item.name}`)}`;\n }\n\n private getCheckAllOptionId(): string {\n return `${this.inputid}-check-all`;\n }\n\n private allOptionsSelected(): boolean {\n return this.selectedCounter === this.itemsList.length;\n }\n\n private hasReachedMaxSelections(): boolean {\n return !!(this.maxcheckableitems && this.selectedCounter >= this.maxcheckableitems);\n }\n\n private handleHeaderKeyDown(e: KeyboardEvent): void {\n if (e.code === KeyboardCode.ENTER && !this.focusedItemId) {\n this.toggleComboBox();\n }\n\n if (!this.isopen || this.hassearch) {\n return;\n }\n\n switch (e.code as KeyboardCode) {\n case KeyboardCode.SPACE:\n case KeyboardCode.ENTER:\n if (this.focusedItemId) {\n e.preventDefault();\n this.checkOption(this.focusedItemId);\n }\n break;\n case KeyboardCode.ESC:\n if (this.focusedItemId) {\n this.focusedItemId = \"\";\n }\n break;\n case KeyboardCode.ARROW_DOWN:\n case KeyboardCode.ARROW_UP:\n this.handleArrowsNavigation(e);\n break;\n }\n }\n\n private handleInputKeyDown(e: KeyboardEvent): void {\n switch (e.code as KeyboardCode) {\n case KeyboardCode.ENTER:\n case KeyboardCode.SPACE:\n if (this.focusedItemId) {\n e.preventDefault();\n this.checkOption(this.focusedItemId);\n break;\n }\n break;\n case KeyboardCode.ARROW_DOWN:\n case KeyboardCode.ARROW_UP:\n this.handleArrowsNavigation(e);\n break;\n case KeyboardCode.ESC:\n if (this.focusedItemId) {\n this.focusedItemId = \"\";\n break;\n }\n this.closeFilterItems();\n break;\n case KeyboardCode.TAB:\n this.focusedItemId = \"\";\n break;\n }\n }\n\n private checkOption(optionId: string): void {\n if (optionId === this.getCheckAllOptionId()) {\n this.itemsList = this.itemsList.map((item: ComboItem) => ({\n ...item,\n checked: !this.allOptionsSelected(),\n }));\n\n this.focusedItemId = this.getCheckAllOptionId();\n } else {\n this.itemsList = this.itemsList.map((i: ComboItem) => {\n if (optionId === this.getOptionId(i)) {\n i.checked = !i.checked;\n }\n\n return i;\n });\n }\n\n this.updateRenderItemsList();\n this.emitComboboxChange();\n }\n\n private handleArrowsNavigation(e: KeyboardEvent): void {\n if (![KeyboardCode.ARROW_DOWN, KeyboardCode.ARROW_UP].includes(e.code as KeyboardCode) || !this.isopen) {\n return;\n }\n\n e.preventDefault();\n e.stopPropagation();\n\n const currElem = this.focusedItemId ? this.element.shadowRoot.querySelector(`#${this.focusedItemId}`) : null;\n const options = Array.from(this.element.shadowRoot.querySelectorAll('[role=\"option\"]'));\n\n if (!options.length) {\n return;\n }\n\n const currElemIndex = currElem ? options.indexOf(currElem) : null;\n const firstElemIndex = 0;\n const lastElemIndex = options.length - 1;\n\n let nextElem = null;\n if (e.code === KeyboardCode.ARROW_DOWN) {\n nextElem =\n currElemIndex === null ? options[firstElemIndex] : options[currElemIndex + 1] || options[lastElemIndex];\n } else if (e.code === KeyboardCode.ARROW_UP) {\n nextElem =\n currElemIndex === null ? options[lastElemIndex] : options[currElemIndex - 1] || options[firstElemIndex];\n }\n\n this.focusedItemId = nextElem.id;\n nextElem.scrollIntoView({block: \"nearest\", container: \"nearest\"});\n }\n\n private updateRenderItemsList(): void {\n if (this.searchValue) {\n this.filterItems(this.searchValue);\n } else {\n this.resetRenderItemsList();\n }\n }\n\n private resetRenderItemsList(): void {\n const renderItemsList = [];\n this.itemsList.forEach((item: ComboItem) => {\n renderItemsList.push({...item});\n });\n this.renderItemsList = renderItemsList;\n }\n\n private filterItems(value: string): void {\n if (!value) {\n return this.closeFilterItems();\n }\n\n this.resetRenderItemsList();\n this.renderItemsList = this.renderItemsList.filter((item) => {\n const start = item.name.toUpperCase().indexOf(value.toUpperCase());\n const end = start + value.length;\n const newName =\n item.name.substring(0, start) +\n \"<strong>\" +\n item.name.substring(start, end) +\n \"</strong>\" +\n item.name.substring(end, item.name.length);\n\n item.name = newName;\n\n return start >= 0;\n });\n }\n\n private closeFilterItems(): void {\n this.searchValue = \"\";\n this.resetRenderItemsList();\n }\n\n private toggleComboBox(): void {\n this.isopen = !this.isopen;\n }\n\n private getHeaderAriaLabel(): string | undefined {\n if (!this.label || this.selectedCounter <= 0) {\n return undefined;\n }\n\n const suffix = this.selectedCounter === 1 ? \"elemento selezionato\" : \"elementi selezionati\";\n\n return `${this.label}: ${this.selectedCounter} ${suffix}`;\n }\n\n private getComboboxA11yAttributes(isZInput: boolean): Record<string, string> {\n const role = \"combobox\";\n const ariaExpanded = this.isopen ? \"true\" : \"false\";\n const ariaActivedescendant = this.isopen ? this.focusedItemId : \"\";\n const ariaControls = `${this.inputid}_list`;\n\n if (isZInput) {\n return {\n \"role\": role,\n \"aria-label\": this.htmlAriaLabel,\n \"html-aria-expanded\": ariaExpanded,\n \"html-aria-activedescendant\": ariaActivedescendant,\n \"html-aria-controls\": ariaControls,\n };\n }\n\n return {\n \"role\": role,\n \"aria-expanded\": ariaExpanded,\n \"aria-activedescendant\": ariaActivedescendant,\n \"aria-controls\": ariaControls,\n };\n }\n\n private renderHeader(): HTMLDivElement {\n const comboboxA11yAttributes = !this.hassearch ? this.getComboboxA11yAttributes(false) : {};\n\n return (\n <div\n class=\"header\"\n onClick={() => this.toggleComboBox()}\n onKeyDown={(e: KeyboardEvent) => this.handleHeaderKeyDown(e)}\n role=\"button\"\n tabindex={0}\n aria-controls=\"open-combo-data\"\n aria-expanded={this.isopen ? \"true\" : \"false\"}\n aria-label={this.getHeaderAriaLabel()}\n {...comboboxA11yAttributes}\n >\n <span class=\"body-3\">\n {this.label}\n <span>{this.selectedCounter > 0 && ` (${this.selectedCounter})`}</span>\n </span>\n <z-icon\n name=\"caret-down\"\n class={this.size}\n />\n </div>\n );\n }\n\n private renderContent(): HTMLDivElement {\n return (\n <div\n id=\"open-combo-data\"\n class=\"open-combo-data\"\n >\n {this.hassearch && this.renderSearchInput()}\n <div\n role=\"listbox\"\n aria-label={this.label}\n aria-multiselectable=\"true\"\n id={`${this.inputid}_list`}\n aria-owns={`${this.hascheckall ? `${this.getCheckAllOptionId()} ` : ``}${this.itemsList.map((item) => this.getOptionId(item)).join(\" \")}`}\n >\n {this.renderItems()}\n </div>\n </div>\n );\n }\n\n private renderItems(): HTMLDivElement {\n return (\n <div\n class={this.searchValue && \"search\"}\n tabIndex={-1}\n role=\"presentation\"\n >\n {this.renderList(this.renderItemsList)}\n </div>\n );\n }\n\n private renderItem(item: ComboItem, index: number, length: number): HTMLZListElement {\n const optionId = this.getOptionId(item);\n const isDisabled = !item.checked && this.hasReachedMaxSelections();\n\n return (\n <z-list-element\n htmlTabindex={-1}\n dividerType={index !== length - 1 ? ListDividerType.ELEMENT : ListDividerType.NONE}\n size={this.getControlToListSize()}\n role=\"presentation\"\n disabled={!!isDisabled}\n >\n <span\n class=\"option-wrap\"\n role=\"presentation\"\n onClick={() => {\n this.focusedItemId = \"\";\n this.checkOption(optionId);\n }}\n >\n <z-icon\n name={item.checked ? \"checkbox-checked\" : \"checkbox\"}\n class={this.focusedItemId === optionId ? \"focused\" : \"\"}\n />\n <span\n id={optionId}\n role={isDisabled ? \"presentation\" : \"option\"}\n aria-selected={item.checked ? \"true\" : \"false\"}\n aria-label={isDisabled ? undefined : getPlainText(item.name)}\n >\n <span\n aria-hidden=\"true\"\n innerHTML={item.name}\n />\n </span>\n </span>\n </z-list-element>\n );\n }\n\n private renderList(items: ComboItem[]): HTMLUListElement {\n if (!items) {\n return;\n }\n if (!items.length && this.searchValue) {\n return this.renderNoSearchResults();\n }\n\n if (this.hasgroupitems) {\n return this.renderGroups(items);\n }\n\n return (\n <ul role=\"presentation\">\n {this.renderCheckAll()}\n {items.map((item, i) => {\n return this.renderItem(item, i, items.length);\n })}\n </ul>\n );\n }\n\n private renderGroups(items: ComboItem[]): HTMLUListElement {\n const newData = items.reduce((group, item, index) => {\n const category = item.category || \"Altra categoria\";\n const zListItem = this.renderItem(item, index, items.length);\n\n group[category] = group[category] ?? [];\n group[category].push(zListItem);\n\n return group;\n }, {});\n\n const listGroups = Object.entries(newData as {[key: string]: HTMLZListElementElement[]}).map(\n ([key, value], index) => {\n return (\n <z-list-group\n size={this.getControlToListSize()}\n divider-type={ListDividerType.ELEMENT}\n aria-labelledby={`${this.inputid}_list_group_${index}`}\n >\n <span\n class=\"body-3-sb z-list-group-title\"\n slot=\"header-title\"\n id={`${this.inputid}_list_group_${index}`}\n aria-hidden=\"true\"\n >\n {key}\n </span>\n {value.map((item) => item)}\n </z-list-group>\n );\n }\n );\n\n return (\n <ul role=\"presentation\">\n {this.renderCheckAll()}\n {listGroups}\n </ul>\n );\n }\n\n private renderNoSearchResults(): HTMLUListElement {\n return (\n <div class=\"no-results\">\n <span>{this.noresultslabel}</span>\n </div>\n );\n }\n\n private renderSearchInput(): ZInput {\n return (\n <z-input\n htmlid={`${this.inputid}_search`}\n label={this.searchlabel}\n placeholder={this.searchplaceholder}\n htmltitle={this.searchtitle}\n type={this.inputType}\n value={this.searchValue}\n message={false}\n size={this.size}\n html-aria-autocomplete=\"list\"\n {...this.getComboboxA11yAttributes(true)}\n onKeyDown={(e: KeyboardEvent) => this.handleInputKeyDown(e)}\n onInputChange={(e: CustomEvent) => {\n this.searchValue = e.detail.value;\n this.focusedItemId = \"\";\n }}\n />\n );\n }\n\n private renderCheckAll(): HTMLDivElement {\n if (!this.hascheckall || this.searchValue) {\n return;\n }\n\n const optionId = this.getCheckAllOptionId();\n const allChecked = this.allOptionsSelected();\n const isDisabled =\n this.hasReachedMaxSelections() || (this.maxcheckableitems && this.maxcheckableitems < this.itemsList.length);\n\n return (\n <z-list-element\n class=\"check-all-wrapper\"\n role=\"presentation\"\n htmlTabindex={-1}\n dividerType={ListDividerType.ELEMENT}\n dividerColor=\"gray800\"\n size={this.getControlToListSize()}\n disabled={!!isDisabled}\n >\n <span\n class=\"option-wrap\"\n role=\"presentation\"\n onClick={() => this.checkOption(optionId)}\n >\n <z-icon\n name={allChecked ? \"checkbox-checked\" : \"checkbox\"}\n class={this.focusedItemId === optionId ? \"focused\" : \"\"}\n />\n <span\n id={optionId}\n role={isDisabled ? \"presentation\" : \"option\"}\n aria-selected={allChecked ? \"true\" : \"false\"}\n >\n {allChecked ? this.uncheckalltext : this.checkalltext}\n </span>\n </span>\n </z-list-element>\n );\n }\n\n render(): HTMLDivElement {\n return (\n <div\n data-action={`combo-${this.inputid}`}\n class={{open: this.isopen, fixed: this.isfixed, disabled: this.disabled}}\n id={this.inputid}\n >\n {this.renderHeader()}\n {!this.disabled && this.renderContent()}\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,c as e,h as i,d as r}from"./p-BEHxru6n.js";import{_ as a}from"./p-B3nR3-Jw.js";import{B as o}from"./p-Q-tWjk7P.js";import{r as s}from"./p-C8pbzcmM.js";const n=()=>`:host{--z-book-card-ribbon-background-color:var(--avatar-C08);--z-book-card-ribbon-shadow-color:var(--green950);--z-book-card-compact-width:262px;--z-book-card-compact-height:568px}:host>article{display:block;width:100%;max-width:360px;box-sizing:border-box;border:var(--border-size-medium) solid var(--color-surface03);background-color:var(--color-surface01);border-radius:var(--border-radius);font-family:var(--font-family-sans);font-weight:var(--font-rg)}:host>article div.cover{position:relative}:host>article div.cover div.img-wrapper{display:flex;overflow:hidden;border:var(--border-size-small) solid var(--color-surface03);line-height:0}:host>article div.cover div.img-wrapper img{width:auto;max-width:100%;height:auto;max-height:100%;align-self:flex-end}:host>article div.cover .ribbon{position:absolute;z-index:10;top:calc(var(--space-unit) * 2);left:calc(var(--space-unit) * -2);display:flex;max-width:100%;height:calc(var(--space-unit) * 4);box-sizing:border-box;align-items:center;padding:0 calc(var(--space-unit) * 2);border:var(--border-size-medium) solid var(--color-surface01);background:var(--z-book-card-ribbon-background-color);border-radius:0 var(--border-radius) var(--border-radius) 0;box-shadow:var(--shadow-2);color:var(--color-text-inverse);font-family:var(--font-family-sans);font-size:var(--font-size-2);font-weight:var(--font-sb);line-height:initial}:host>article div.cover .ribbon.interactive:hover{cursor:pointer}:host>article div.cover .ribbon.interactive:focus{box-shadow:var(--shadow-focus-primary);outline:none !important}:host>article div.cover .ribbon span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-wrap:nowrap}:host>article div.cover .ribbon::before{position:absolute;bottom:-12px;left:-2px;width:0;height:0;border-top:10px solid var(--z-book-card-ribbon-shadow-color);border-left:16px solid transparent;content:""}:host>article div.cover .ribbon z-icon{margin-right:var(--space-unit)}:host>article div.content{margin:var(--space-unit) 0;border-radius:var(--border-radius)}:host>article .title{display:flex;height:100%;align-self:center;color:var(--color-default-text);font-size:var(--font-size-4);font-weight:var(--font-sb);line-height:1.5}:host>article .title *{all:unset}:host>article div.subtitle{color:var(--color-default-text);font-size:var(--font-size-2);font-weight:var(--font-rg);line-height:1.4}:host>article div.authors{color:var(--color-default-text);font-size:var(--font-size-1);font-weight:var(--font-rg);line-height:1.33}:host>article div.isbn{overflow:hidden;color:var(--color-default-text);font-size:var(--font-size-2);line-height:1.33;text-overflow:ellipsis;white-space:nowrap;word-wrap:nowrap}:host>article div.isbn>.code{font-weight:var(--font-sb)}:host>article div.tags{display:flex;overflow:hidden;max-height:32px;flex-flow:row wrap;align-content:stretch;align-items:stretch;justify-content:flex-start;gap:calc(var(--space-unit) / 2)}:host>article ::slotted([slot="tags"]){margin-bottom:var(--space-unit)}:host>article ::slotted([slot="header-cta"]){--z-icon-width:20px;--z-icon-height:20px;padding:var(--space-unit);cursor:pointer;fill:var(--color-primary01-icon)}:host>article ::slotted([slot="header-cta"]:focus){box-shadow:var(--shadow-focus-primary);outline:none !important}:host>article.expanded{width:100%;min-width:328px;padding:calc(var(--space-unit) * 2);padding-bottom:0}:host>article.expanded div.header{display:flex;flex-flow:row nowrap;align-content:stretch;align-items:top;justify-content:space-between;margin-bottom:var(--space-unit);white-space:nowrap}:host>article.expanded div.cover div.img-wrapper{border-radius:var(--border-radius)}:host>article.expanded div.cover div.img-wrapper img{width:100%}:host>article.expanded .title,:host>article.expanded .subtitle,:host>article.expanded .authors{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:initial}:host>article.expanded div.footer{border-top:var(--border-size-small) solid var(--color-surface03);margin-bottom:calc(var(--space-unit) * 1.5)}:host>article.expanded div.footer.open{padding-top:calc(var(--space-unit) * 1.5)}:host>article.expanded div.footer.open div.resources{display:initial}:host>article.expanded div.footer.close div.resources{display:none}:host>article.expanded button.show-resources{--z-icon-height:16px;--z-icon-width:16px;all:unset;display:flex;width:100%;flex-flow:row nowrap;align-content:center;align-items:center;justify-content:center;padding:calc(var(--space-unit) * 1) 0;color:var(--color-text-link-blue);cursor:pointer;fill:var(--color-text-link-blue);font-size:var(--font-size-2);font-weight:var(--font-sb);gap:var(--space-unit)}:host>article.expanded button.show-resources:focus{box-shadow:var(--shadow-focus-primary)}:host>article.search{width:262px;height:616px;padding:calc(var(--space-unit) * 2);padding-bottom:0}:host>article.search .wrapper-container{display:flex;height:100%;flex-direction:column;justify-content:space-between}:host>article.search .wrapper-container .wrapper{height:451px}:host>article.search .wrapper-container .action-container{padding-bottom:calc(var(--space-unit) * 2)}:host>article.search div.header{display:flex;height:24px;flex-flow:row nowrap;align-content:stretch;align-items:center;justify-content:space-between;margin-bottom:calc(var(--space-unit) * 1.5);white-space:nowrap}:host>article.search div.cover div.img-wrapper{height:314px;border-radius:var(--border-radius)}:host>article.search .title{display:block;height:initial;align-self:unset;font-size:var(--font-size-3)}:host>article.search .title,:host>article.search .subtitle,:host>article.search .authors{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host>article.compact{width:var(--z-book-card-compact-width);height:var(--z-book-card-compact-height)}:host>article.compact.borderless{border:none}:host>article.compact div.cover div.img-wrapper{width:100%;height:calc(var(--z-book-card-compact-width) * 1.36);box-sizing:border-box;border:none;background:var(--color-white);border-radius:var(--border-radius) var(--border-radius) 0 0;box-shadow:var(--shadow-2)}:host>article.compact div.wrapper{display:flex;height:100%;flex-flow:column nowrap;align-content:stretch;align-items:stretch;justify-content:flex-start}:host>article.compact div.content{display:flex;box-sizing:border-box;flex-flow:column nowrap;align-content:stretch;align-items:stretch;justify-content:space-between;padding:calc(var(--space-unit) * 2);padding-top:var(--space-unit);margin:0}:host>article.compact div.action-container{padding:calc(var(--space-unit) * 2);padding-top:0;margin-top:auto}:host>article.compact.borderless div.cover div.img-wrapper{width:var(--z-book-card-compact-width)}:host>article.compact.borderless div.content{padding:0;padding-top:var(--space-unit)}:host>article.compact.borderless div.action-container{padding:0;padding-bottom:calc(var(--space-unit) * 2)}:host>article.compact .title{display:block;height:initial;align-self:unset}:host>article.compact .title,:host>article.compact .subtitle,:host>article.compact .authors{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:initial}@media (min-width: 768px){:host>article{width:100%;max-width:initial}:host>article .title{display:block;height:initial;align-self:unset}:host>article.expanded{width:100%;min-width:initial;max-width:initial;height:360px;padding:0;border:0}:host>article.expanded div.wrapper{display:flex;flex-flow:row nowrap;align-content:stretch;align-items:stretch;justify-content:flex-start}:host>article.expanded div.cover div.img-wrapper{width:262px;height:356px;border:0;border:var(--border-size-medium) solid var(--color-surface03);border-right:none;background:var(--color-surface01);border-radius:var(--border-radius) 0 0 var(--border-radius)}:host>article.expanded div.cover div.img-wrapper img{width:auto;border-radius:0}:host>article.expanded div.content{display:flex;overflow:hidden;width:100%;height:356px;flex-flow:column nowrap;align-content:stretch;align-items:stretch;justify-content:space-between;border:var(--border-size-medium) solid var(--color-surface03);border-left:none;margin:0;background:var(--color-surface01);border-radius:0 var(--border-radius) var(--border-radius) 0}:host>article.expanded div.content div.top{padding:calc(var(--space-unit) * 2);padding-bottom:0}:host>article.expanded div.content div.top div.info{display:flex;flex-flow:row nowrap;align-content:stretch;align-items:stretch;justify-content:space-between;margin-bottom:calc(var(--space-unit) / 2)}:host>article.expanded div.content div.top div.info>div.left{width:100%}:host>article.expanded div.content div.bottom{padding:calc(var(--space-unit) * 2);padding-bottom:0}}@media (min-width: 1152px){:host>article{width:fit-content;max-width:initial}}@media (min-width: 1366px){:host>article.expanded{width:635px}:host>article.expanded div.content{width:369px}}`;const c=class{constructor(i){t(this,i);this.ribbonClick=e(this,"ribbonClick",7);this.isbnLabel="";this.isMobile=false;this.hasResources=false;this.showResources=false}emitRibbonClick(){this.ribbonClick.emit()}componentWillLoad(){this.id=`id-${s()}`;const t=window.matchMedia(`(max-width: ${o.MOBILE}px)`);this.isMobile=t.matches;t.onchange=t=>this.isMobile=t.matches}componentDidLoad(){this.handleResources()}handleResources(){var t;if(this.variant!==a.EXPANDED||!this.isMobile){return}this.hasResources=((t=this.hostElement.querySelectorAll("[slot=resources]"))===null||t===void 0?void 0:t.length)>0}toggleResources(){this.showResources=!this.showResources}renderCard(){switch(this.variant){case a.EXPANDED:return this.isMobile?this.renderMobileExpandedCard():this.renderExpandedCard();case a.COMPACT:return this.renderCompactCard();case a.SEARCH:return this.renderSearchCard()}}renderExpandedCard(){return i("div",{class:"wrapper"},this.renderCover(),i("div",{class:"content"},i("div",{class:"top"},i("div",{class:"info"},i("div",{class:"left"},this.renderAuthors(),this.renderOperaTitle(),this.renderVolumeTitle(),this.renderIsbn()),i("div",{class:"right"},this.renderHeaderCtaSlot())),this.renderTagsSlot()),i("div",{class:"bottom"},this.renderResourcesSlot())))}renderMobileExpandedCard(){return i("div",{class:"wrapper"},i("div",{class:"header"},this.renderOperaTitle(),this.renderHeaderCtaSlot()),this.renderCover(),i("div",{class:"content"},this.renderTagsSlot(),this.renderAuthors(),this.renderVolumeTitle(),this.renderIsbn()),this.hasResources&&i("div",{class:{footer:true,open:this.showResources,close:!this.showResources}},!this.showResources&&this.renderShowResources(),this.renderResourcesSlot(),this.showResources&&this.renderShowResources()))}renderSearchCard(){return i("div",{class:"wrapper-container"},i("div",{class:"wrapper"},i("div",{class:"header"},this.renderOperaTitle(),this.renderHeaderCtaSlot()),this.renderCover(),i("div",{class:"content"},this.renderTagsSlot(),this.renderAuthors(),this.renderVolumeTitle(),this.renderIsbn())),this.renderFooterCtaSlot())}renderCompactCard(){return i("div",{class:"wrapper"},this.renderCover(),i("div",{class:"content"},this.renderAuthors(),this.renderOperaTitle(),this.renderVolumeTitle(),this.renderIsbn()),this.renderFooterCtaSlot())}renderCover(){return i("div",{class:"cover"},this.ribbon&&this.variant!==a.COMPACT&&this.renderRibbon(),i("div",{class:"img-wrapper"},i("img",{src:this.cover,onError:()=>{if(this.fallbackCover){this.cover=this.fallbackCover}},"aria-hidden":"true"})))}renderRibbon(){const t=[this.ribbonIcon&&i("z-icon",{name:this.ribbonIcon,width:16,height:16,fill:"color-inverse-icon"}),i("span",null,this.ribbon)];return this.ribbonInteractive?i("button",{class:"ribbon interactive",onClick:()=>this.emitRibbonClick()},t):i("div",{class:"ribbon"},t)}renderOperaTitle(){const t=this.operaTitleTag?`<${this.operaTitleTag}>${this.operaTitle}</${this.operaTitleTag}>`:this.operaTitle;return i("div",{class:"title",innerHTML:t})}renderVolumeTitle(){return this.volumeTitle?i("div",{class:"subtitle"},this.volumeTitle):null}renderAuthors(){return this.authors?i("div",{class:"authors","aria-description":"Autori"},this.authors):null}renderIsbn(){return this.isbn?i("div",{class:"isbn"},i("span",{class:"code","aria-description":`ISBN ${this.isbnLabel}`},this.isbn),this.isbnLabel?i("span",{class:"label"}," ",this.isbnLabel):null):null}renderShowResources(){return i("button",{class:"show-resources","aria-label":`Risorse del libro ${this.operaTitle}`,"aria-expanded":this.showResources.toString(),"aria-controls":`resources-${this.id}`,onClick:()=>this.toggleResources()},this.showResources?"Chiudi":"Vedi tutto",i("z-icon",{name:this.showResources?"chevron-up":"chevron-down"}))}renderTagsSlot(){return i("div",{class:"tags"},i("slot",{name:"tags"}))}renderHeaderCtaSlot(){return i("slot",{name:"header-cta"})}renderResourcesSlot(){return i("div",{id:`resources-${this.id}`,class:"resources"},i("slot",{name:"resources",onSlotchange:()=>this.handleResources()}))}renderFooterCtaSlot(){return i("div",{class:"action-container"},i("slot",{name:"footer-cta"}))}render(){return i("article",{key:"d603afa99fc5bdc0b6cb9ad1b22a309c4962c486",class:{[this.variant]:true,borderless:!!this.borderless}},this.renderCard())}get hostElement(){return r(this)}};c.style=n();export{c as z_book_card_deprecated};
|
|
2
|
+
//# sourceMappingURL=p-50a09bf1.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["stylesCss","ZBookCardDeprecated","constructor","hostRef","this","isbnLabel","isMobile","hasResources","showResources","emitRibbonClick","ribbonClick","emit","componentWillLoad","id","randomId","mobileMediaQuery","window","matchMedia","Breakpoints","MOBILE","matches","onchange","mql","componentDidLoad","handleResources","variant","BookCardDeprecatedVariant","EXPANDED","_a","hostElement","querySelectorAll","length","toggleResources","renderCard","renderMobileExpandedCard","renderExpandedCard","COMPACT","renderCompactCard","SEARCH","renderSearchCard","h","class","renderCover","renderAuthors","renderOperaTitle","renderVolumeTitle","renderIsbn","renderHeaderCtaSlot","renderTagsSlot","renderResourcesSlot","footer","open","close","renderShowResources","renderFooterCtaSlot","ribbon","renderRibbon","src","cover","onError","fallbackCover","content","ribbonIcon","name","width","height","fill","ribbonInteractive","onClick","title","operaTitleTag","operaTitle","innerHTML","volumeTitle","authors","isbn","toString","onSlotchange","render","key","borderless"],"sources":["src/components/deprecated/z-book-card-deprecated/styles.css?tag=z-book-card-deprecated&encapsulation=shadow","src/components/deprecated/z-book-card-deprecated/index.tsx"],"sourcesContent":["/* COMMON STYLES */\n\n:host {\n /**\n * @prop --z-book-card-ribbon-background-color: ribbon backgrund color\n * @prop --z-book-card-ribbon-shadow-color: ribbon shadow color\n * @prop --z-book-card-compact-width: compact card custom width\n * @prop --z-book-card-compact-height: compact card custom height\n */\n --z-book-card-ribbon-background-color: var(--avatar-C08);\n --z-book-card-ribbon-shadow-color: var(--green950);\n --z-book-card-compact-width: 262px;\n --z-book-card-compact-height: 568px;\n}\n\n:host > article {\n display: block;\n width: 100%;\n max-width: 360px;\n box-sizing: border-box;\n border: var(--border-size-medium) solid var(--color-surface03);\n background-color: var(--color-surface01);\n border-radius: var(--border-radius);\n font-family: var(--font-family-sans);\n font-weight: var(--font-rg);\n}\n\n:host > article div.cover {\n position: relative;\n}\n\n:host > article div.cover div.img-wrapper {\n display: flex;\n overflow: hidden;\n border: var(--border-size-small) solid var(--color-surface03);\n line-height: 0;\n}\n\n:host > article div.cover div.img-wrapper img {\n width: auto;\n max-width: 100%;\n height: auto;\n max-height: 100%;\n align-self: flex-end;\n}\n\n:host > article div.cover .ribbon {\n position: absolute;\n z-index: 10;\n top: calc(var(--space-unit) * 2);\n left: calc(var(--space-unit) * -2);\n display: flex;\n max-width: 100%;\n height: calc(var(--space-unit) * 4);\n box-sizing: border-box;\n align-items: center;\n padding: 0 calc(var(--space-unit) * 2);\n border: var(--border-size-medium) solid var(--color-surface01);\n background: var(--z-book-card-ribbon-background-color);\n border-radius: 0 var(--border-radius) var(--border-radius) 0;\n box-shadow: var(--shadow-2);\n color: var(--color-text-inverse);\n font-family: var(--font-family-sans);\n font-size: var(--font-size-2);\n font-weight: var(--font-sb);\n line-height: initial;\n}\n\n:host > article div.cover .ribbon.interactive:hover {\n cursor: pointer;\n}\n\n:host > article div.cover .ribbon.interactive:focus {\n box-shadow: var(--shadow-focus-primary);\n outline: none !important;\n}\n\n:host > article div.cover .ribbon span {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n word-wrap: nowrap;\n}\n\n:host > article div.cover .ribbon::before {\n position: absolute;\n bottom: -12px;\n left: -2px;\n width: 0;\n height: 0;\n border-top: 10px solid var(--z-book-card-ribbon-shadow-color);\n border-left: 16px solid transparent;\n content: \"\";\n}\n\n:host > article div.cover .ribbon z-icon {\n margin-right: var(--space-unit);\n}\n\n:host > article div.content {\n margin: var(--space-unit) 0;\n border-radius: var(--border-radius);\n}\n\n:host > article .title {\n display: flex;\n height: 100%;\n align-self: center;\n color: var(--color-default-text);\n font-size: var(--font-size-4);\n font-weight: var(--font-sb);\n line-height: 1.5;\n}\n\n:host > article .title * {\n all: unset;\n}\n\n:host > article div.subtitle {\n color: var(--color-default-text);\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n line-height: 1.4;\n}\n\n:host > article div.authors {\n color: var(--color-default-text);\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n line-height: 1.33;\n}\n\n:host > article div.isbn {\n overflow: hidden;\n color: var(--color-default-text);\n font-size: var(--font-size-2);\n line-height: 1.33;\n text-overflow: ellipsis;\n white-space: nowrap;\n word-wrap: nowrap;\n}\n\n:host > article div.isbn > .code {\n font-weight: var(--font-sb);\n}\n\n:host > article div.tags {\n display: flex;\n overflow: hidden;\n max-height: 32px;\n flex-flow: row wrap;\n align-content: stretch;\n align-items: stretch;\n justify-content: flex-start;\n gap: calc(var(--space-unit) / 2);\n}\n\n:host > article ::slotted([slot=\"tags\"]) {\n margin-bottom: var(--space-unit);\n}\n\n:host > article ::slotted([slot=\"header-cta\"]) {\n --z-icon-width: 20px;\n --z-icon-height: 20px;\n\n padding: var(--space-unit);\n cursor: pointer;\n fill: var(--color-primary01-icon);\n}\n\n:host > article ::slotted([slot=\"header-cta\"]:focus) {\n box-shadow: var(--shadow-focus-primary);\n outline: none !important;\n}\n\n/* EXPANDED STYLES */\n\n:host > article.expanded {\n width: 100%;\n min-width: 328px;\n padding: calc(var(--space-unit) * 2);\n padding-bottom: 0;\n}\n\n:host > article.expanded div.header {\n display: flex;\n flex-flow: row nowrap;\n align-content: stretch;\n align-items: top;\n justify-content: space-between;\n margin-bottom: var(--space-unit);\n white-space: nowrap;\n}\n\n:host > article.expanded div.cover div.img-wrapper {\n border-radius: var(--border-radius);\n}\n\n:host > article.expanded div.cover div.img-wrapper img {\n width: 100%;\n}\n\n:host > article.expanded .title,\n:host > article.expanded .subtitle,\n:host > article.expanded .authors {\n display: -webkit-box;\n overflow: hidden;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n white-space: initial;\n}\n\n:host > article.expanded div.footer {\n border-top: var(--border-size-small) solid var(--color-surface03);\n margin-bottom: calc(var(--space-unit) * 1.5);\n}\n\n:host > article.expanded div.footer.open {\n padding-top: calc(var(--space-unit) * 1.5);\n}\n\n:host > article.expanded div.footer.open div.resources {\n display: initial;\n}\n\n:host > article.expanded div.footer.close div.resources {\n display: none;\n}\n\n:host > article.expanded button.show-resources {\n --z-icon-height: 16px;\n --z-icon-width: 16px;\n\n all: unset;\n display: flex;\n width: 100%;\n flex-flow: row nowrap;\n align-content: center;\n align-items: center;\n justify-content: center;\n padding: calc(var(--space-unit) * 1) 0;\n color: var(--color-text-link-blue);\n cursor: pointer;\n fill: var(--color-text-link-blue);\n font-size: var(--font-size-2);\n font-weight: var(--font-sb);\n gap: var(--space-unit);\n}\n\n:host > article.expanded button.show-resources:focus {\n box-shadow: var(--shadow-focus-primary);\n}\n\n/* SEARCH STYLES */\n\n:host > article.search {\n width: 262px;\n height: 616px;\n padding: calc(var(--space-unit) * 2);\n padding-bottom: 0;\n}\n\n:host > article.search .wrapper-container {\n display: flex;\n height: 100%;\n flex-direction: column;\n justify-content: space-between;\n}\n\n:host > article.search .wrapper-container .wrapper {\n height: 451px;\n}\n\n:host > article.search .wrapper-container .action-container {\n padding-bottom: calc(var(--space-unit) * 2);\n}\n\n:host > article.search div.header {\n display: flex;\n height: 24px;\n flex-flow: row nowrap;\n align-content: stretch;\n align-items: center;\n justify-content: space-between;\n margin-bottom: calc(var(--space-unit) * 1.5);\n white-space: nowrap;\n}\n\n:host > article.search div.cover div.img-wrapper {\n height: 314px;\n border-radius: var(--border-radius);\n}\n\n:host > article.search .title {\n display: block;\n height: initial;\n align-self: unset;\n font-size: var(--font-size-3);\n}\n\n:host > article.search .title,\n:host > article.search .subtitle,\n:host > article.search .authors {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* COMPACT STYLES */\n\n:host > article.compact {\n width: var(--z-book-card-compact-width);\n height: var(--z-book-card-compact-height);\n}\n\n:host > article.compact.borderless {\n border: none;\n}\n\n:host > article.compact div.cover div.img-wrapper {\n width: 100%;\n height: calc(var(--z-book-card-compact-width) * 1.36);\n box-sizing: border-box;\n border: none;\n background: var(--color-white);\n border-radius: var(--border-radius) var(--border-radius) 0 0;\n box-shadow: var(--shadow-2);\n}\n\n:host > article.compact div.wrapper {\n display: flex;\n height: 100%;\n flex-flow: column nowrap;\n align-content: stretch;\n align-items: stretch;\n justify-content: flex-start;\n}\n\n:host > article.compact div.content {\n display: flex;\n box-sizing: border-box;\n flex-flow: column nowrap;\n align-content: stretch;\n align-items: stretch;\n justify-content: space-between;\n padding: calc(var(--space-unit) * 2);\n padding-top: var(--space-unit);\n margin: 0;\n}\n\n:host > article.compact div.action-container {\n padding: calc(var(--space-unit) * 2);\n padding-top: 0;\n margin-top: auto;\n}\n\n:host > article.compact.borderless div.cover div.img-wrapper {\n width: var(--z-book-card-compact-width);\n}\n\n:host > article.compact.borderless div.content {\n padding: 0;\n padding-top: var(--space-unit);\n}\n\n:host > article.compact.borderless div.action-container {\n padding: 0;\n padding-bottom: calc(var(--space-unit) * 2);\n}\n\n:host > article.compact .title {\n display: block;\n height: initial;\n align-self: unset;\n}\n\n:host > article.compact .title,\n:host > article.compact .subtitle,\n:host > article.compact .authors {\n display: -webkit-box;\n overflow: hidden;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n white-space: initial;\n}\n\n/* Tablet breakpoint */\n@media (min-width: 768px) {\n :host > article {\n width: 100%;\n max-width: initial;\n }\n\n :host > article .title {\n display: block;\n height: initial;\n align-self: unset;\n }\n\n /* EXPANDED STYLES */\n\n :host > article.expanded {\n width: 100%;\n min-width: initial;\n max-width: initial;\n height: 360px;\n padding: 0;\n border: 0;\n }\n\n :host > article.expanded div.wrapper {\n display: flex;\n flex-flow: row nowrap;\n align-content: stretch;\n align-items: stretch;\n justify-content: flex-start;\n }\n\n :host > article.expanded div.cover div.img-wrapper {\n width: 262px;\n height: 356px;\n border: 0;\n border: var(--border-size-medium) solid var(--color-surface03);\n border-right: none;\n background: var(--color-surface01);\n border-radius: var(--border-radius) 0 0 var(--border-radius);\n }\n\n :host > article.expanded div.cover div.img-wrapper img {\n width: auto;\n border-radius: 0;\n }\n\n :host > article.expanded div.content {\n display: flex;\n overflow: hidden;\n width: 100%;\n height: 356px;\n flex-flow: column nowrap;\n align-content: stretch;\n align-items: stretch;\n justify-content: space-between;\n border: var(--border-size-medium) solid var(--color-surface03);\n border-left: none;\n margin: 0;\n background: var(--color-surface01);\n border-radius: 0 var(--border-radius) var(--border-radius) 0;\n }\n\n :host > article.expanded div.content div.top {\n padding: calc(var(--space-unit) * 2);\n padding-bottom: 0;\n }\n\n :host > article.expanded div.content div.top div.info {\n display: flex;\n flex-flow: row nowrap;\n align-content: stretch;\n align-items: stretch;\n justify-content: space-between;\n margin-bottom: calc(var(--space-unit) / 2);\n }\n\n :host > article.expanded div.content div.top div.info > div.left {\n width: 100%;\n }\n\n :host > article.expanded div.content div.bottom {\n padding: calc(var(--space-unit) * 2);\n padding-bottom: 0;\n }\n}\n\n/* Desktop breakpoint */\n\n@media (min-width: 1152px) {\n :host > article {\n width: fit-content;\n max-width: initial;\n }\n}\n\n/* Wide breakpoint */\n@media (min-width: 1366px) {\n :host > article.expanded {\n width: 635px;\n }\n\n :host > article.expanded div.content {\n width: 369px;\n }\n}\n","import {Component, ComponentInterface, Element, Event, EventEmitter, Prop, State, h} from \"@stencil/core\";\nimport {BookCardDeprecatedVariant} from \"../../../beans\";\nimport {Breakpoints} from \"../../../constants/breakpoints\";\nimport {randomId} from \"../../../utils/utils\";\n\n/**\n * @slot resources - books resources (extended variant only)\n * @slot header-cta - header CTA (e.g. bookmark icon - extended and search variant only)\n * @slot tags - card tags (extended and search variant only)\n * @slot footer-cta - footer cta button (search and compact variant only)\n */\n@Component({\n tag: \"z-book-card-deprecated\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZBookCardDeprecated implements ComponentInterface {\n @Element() hostElement: HTMLZBookCardDeprecatedElement;\n\n /**\n * Card variant: expanded, compact, search\n */\n @Prop()\n variant: BookCardDeprecatedVariant;\n\n /**\n * Cover URL\n */\n @Prop()\n cover: string;\n\n /**\n * Card main title\n */\n @Prop()\n operaTitle: string;\n\n /**\n * [optional] Card subtitle\n */\n @Prop()\n volumeTitle?: string;\n\n /**\n * [optional] Authors\n */\n @Prop()\n authors?: string;\n\n /**\n * [optional] Main ISBN\n */\n @Prop()\n isbn?: string;\n\n /**\n * [optional] ISBN label\n */\n @Prop()\n isbnLabel = \"\";\n\n /**\n * [optional] Ribbon label - expanded and search variant only\n */\n @Prop()\n ribbon?: string;\n\n /**\n * [optional] Ribbon icon - expanded and search variant only\n */\n @Prop()\n ribbonIcon?: string;\n\n /**\n * [optional] Ribbon interactive - expanded and search variant only\n */\n @Prop()\n ribbonInteractive?: boolean;\n\n /**\n * [optional] Borderless card - compact variant only\n */\n @Prop()\n borderless?: boolean;\n\n /**\n * [optional] Fallback cover URL\n */\n @Prop()\n fallbackCover?: string;\n\n /**\n * [optional] [accessibility] Card title HTML tag\n */\n @Prop()\n operaTitleTag?: string;\n\n @State()\n isMobile = false;\n\n @State()\n hasResources = false;\n\n @State()\n showResources = false;\n\n /** click on interactive ribbon */\n @Event()\n ribbonClick: EventEmitter;\n\n private emitRibbonClick(): void {\n this.ribbonClick.emit();\n }\n\n private id: string;\n\n componentWillLoad(): void {\n this.id = `id-${randomId()}`;\n\n const mobileMediaQuery = window.matchMedia(`(max-width: ${Breakpoints.MOBILE}px)`);\n this.isMobile = mobileMediaQuery.matches;\n mobileMediaQuery.onchange = (mql) => (this.isMobile = mql.matches);\n }\n\n componentDidLoad(): void {\n this.handleResources();\n }\n\n private handleResources(): void {\n if (this.variant !== BookCardDeprecatedVariant.EXPANDED || !this.isMobile) {\n return;\n }\n this.hasResources = this.hostElement.querySelectorAll(\"[slot=resources]\")?.length > 0;\n }\n\n private toggleResources(): void {\n this.showResources = !this.showResources;\n }\n\n private renderCard(): HTMLDivElement {\n switch (this.variant) {\n case BookCardDeprecatedVariant.EXPANDED:\n return this.isMobile ? this.renderMobileExpandedCard() : this.renderExpandedCard();\n case BookCardDeprecatedVariant.COMPACT:\n return this.renderCompactCard();\n case BookCardDeprecatedVariant.SEARCH:\n return this.renderSearchCard();\n }\n }\n\n private renderExpandedCard(): HTMLDivElement {\n return (\n <div class=\"wrapper\">\n {this.renderCover()}\n <div class=\"content\">\n <div class=\"top\">\n <div class=\"info\">\n <div class=\"left\">\n {this.renderAuthors()}\n {this.renderOperaTitle()}\n {this.renderVolumeTitle()}\n {this.renderIsbn()}\n </div>\n <div class=\"right\">{this.renderHeaderCtaSlot()}</div>\n </div>\n {this.renderTagsSlot()}\n </div>\n <div class=\"bottom\">{this.renderResourcesSlot()}</div>\n </div>\n </div>\n );\n }\n\n private renderMobileExpandedCard(): HTMLDivElement {\n return (\n <div class=\"wrapper\">\n <div class=\"header\">\n {this.renderOperaTitle()}\n {this.renderHeaderCtaSlot()}\n </div>\n {this.renderCover()}\n <div class=\"content\">\n {this.renderTagsSlot()}\n {this.renderAuthors()}\n {this.renderVolumeTitle()}\n {this.renderIsbn()}\n </div>\n {this.hasResources && (\n <div\n class={{\n footer: true,\n open: this.showResources,\n close: !this.showResources,\n }}\n >\n {!this.showResources && this.renderShowResources()}\n {this.renderResourcesSlot()}\n {this.showResources && this.renderShowResources()}\n </div>\n )}\n </div>\n );\n }\n\n private renderSearchCard(): HTMLDivElement {\n return (\n <div class=\"wrapper-container\">\n <div class=\"wrapper\">\n <div class=\"header\">\n {this.renderOperaTitle()}\n {this.renderHeaderCtaSlot()}\n </div>\n {this.renderCover()}\n <div class=\"content\">\n {this.renderTagsSlot()}\n {this.renderAuthors()}\n {this.renderVolumeTitle()}\n {this.renderIsbn()}\n </div>\n </div>\n {this.renderFooterCtaSlot()}\n </div>\n );\n }\n\n private renderCompactCard(): HTMLDivElement {\n return (\n <div class=\"wrapper\">\n {this.renderCover()}\n <div class=\"content\">\n {this.renderAuthors()}\n {this.renderOperaTitle()}\n {this.renderVolumeTitle()}\n {this.renderIsbn()}\n </div>\n {this.renderFooterCtaSlot()}\n </div>\n );\n }\n\n private renderCover(): HTMLDivElement {\n return (\n <div class=\"cover\">\n {this.ribbon && this.variant !== BookCardDeprecatedVariant.COMPACT && this.renderRibbon()}\n <div class=\"img-wrapper\">\n <img\n src={this.cover}\n onError={() => {\n if (this.fallbackCover) {\n this.cover = this.fallbackCover;\n }\n }}\n aria-hidden=\"true\"\n />\n </div>\n </div>\n );\n }\n\n private renderRibbon(): HTMLElement {\n const content = [\n this.ribbonIcon && (\n <z-icon\n name={this.ribbonIcon}\n width={16}\n height={16}\n fill={\"color-inverse-icon\"}\n />\n ),\n <span>{this.ribbon}</span>,\n ];\n\n return this.ribbonInteractive ? (\n <button\n class=\"ribbon interactive\"\n onClick={() => this.emitRibbonClick()}\n >\n {content}\n </button>\n ) : (\n <div class=\"ribbon\">{content}</div>\n );\n }\n\n private renderOperaTitle(): HTMLDivElement {\n const title = this.operaTitleTag\n ? `<${this.operaTitleTag}>${this.operaTitle}</${this.operaTitleTag}>`\n : this.operaTitle;\n\n return (\n <div\n class=\"title\"\n innerHTML={title}\n />\n );\n }\n\n private renderVolumeTitle(): null | HTMLDivElement {\n return this.volumeTitle ? <div class=\"subtitle\">{this.volumeTitle}</div> : null;\n }\n\n private renderAuthors(): null | HTMLDivElement {\n return this.authors ? (\n <div\n class=\"authors\"\n aria-description=\"Autori\"\n >\n {this.authors}\n </div>\n ) : null;\n }\n\n private renderIsbn(): null | HTMLDivElement {\n return this.isbn ? (\n <div class=\"isbn\">\n <span\n class=\"code\"\n aria-description={`ISBN ${this.isbnLabel}`}\n >\n {this.isbn}\n </span>\n {this.isbnLabel ? <span class=\"label\"> {this.isbnLabel}</span> : null}\n </div>\n ) : null;\n }\n\n private renderShowResources(): HTMLButtonElement {\n return (\n <button\n class=\"show-resources\"\n aria-label={`Risorse del libro ${this.operaTitle}`}\n aria-expanded={this.showResources.toString()}\n aria-controls={`resources-${this.id}`}\n onClick={() => this.toggleResources()}\n >\n {this.showResources ? \"Chiudi\" : \"Vedi tutto\"}\n <z-icon name={this.showResources ? \"chevron-up\" : \"chevron-down\"} />\n </button>\n );\n }\n\n private renderTagsSlot(): HTMLDivElement {\n return (\n <div class=\"tags\">\n <slot name=\"tags\" />\n </div>\n );\n }\n\n private renderHeaderCtaSlot(): HTMLSlotElement {\n return <slot name=\"header-cta\" />;\n }\n\n private renderResourcesSlot(): HTMLDivElement {\n return (\n <div\n id={`resources-${this.id}`}\n class=\"resources\"\n >\n <slot\n name=\"resources\"\n onSlotchange={() => this.handleResources()}\n />\n </div>\n );\n }\n\n private renderFooterCtaSlot(): HTMLDivElement {\n return (\n <div class=\"action-container\">\n <slot name=\"footer-cta\" />\n </div>\n );\n }\n\n render(): HTMLZBookCardDeprecatedElement {\n return (\n <article\n class={{\n [this.variant]: true,\n borderless: !!this.borderless,\n }}\n >\n {this.renderCard()}\n </article>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,h as o,H as a,d as e}from"./p-BEHxru6n.js";import{C as r}from"./p-B3nR3-Jw.js";const s=()=>`:host{--aspect-ratio:1.62;--z-card--border-color:var(--gray200);--z-card--color-cover-background:var(--color-surface01);--z-card--text-background:var(--color-surface01);--z-card--text-border-radius:none;--z-card--text-border:none;--z-card--text-padding:calc(var(--space-unit) * 2) var(--space-unit);position:relative;display:flex;flex-direction:column;font-family:var(--font-family-sans);font-weight:var(--font-rg)}*,::slotted(*){box-sizing:border-box}*:focus:focus-visible{box-shadow:var(--shadow-focus-primary);outline:none}:host(:not([variant="overlay"])) .cover-container{position:relative;width:100%}.cover-container{padding-bottom:calc(100% / var(--aspect-ratio))}::slotted([slot="cover"]),.color-cover{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center}.cover-container>z-icon{--z-icon-width:calc(var(--space-unit) * 11);--z-icon-height:var(--z-icon-width);position:absolute;top:calc(50% - calc(var(--z-icon-height) / 2));left:calc(50% - calc(var(--z-icon-width) / 2));fill:var(--color-primary01)}.color-cover{background-color:var(--z-card--color-cover-background)}.content{display:flex;flex-direction:column;padding-top:var(--space-unit)}.color-cover .cover-content{display:flex;height:100%;flex-direction:column;justify-content:flex-end;padding:var(--space-unit)}::slotted([slot="metadata"]),::slotted([slot="title"]),::slotted([slot="text"]){display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical}::slotted([slot="title"]:not(:last-child)),::slotted([slot="text"]:not(:last-child)){margin-bottom:var(--space-unit)}::slotted([slot="title"])::before{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;content:""}::slotted([slot="metadata"]){width:100%;-webkit-line-clamp:1;line-clamp:1;text-transform:uppercase}::slotted([slot="metadata"]:not(:last-child)){margin:0 0 calc(var(--space-unit) * 0.25)}::slotted([slot="title"]){margin:0;font-size:var(--font-size-3);font-weight:var(--font-sb);-webkit-line-clamp:2;line-clamp:2;text-decoration:none}::slotted([slot="title"]:focus:focus-visible){box-shadow:var(--shadow-focus-primary);outline:none}::slotted([slot="text"]){width:100%;margin:0;-webkit-line-clamp:3;line-clamp:3}.actions{display:flex;align-items:center}:host(:not([variant="overlay"])) .actions{margin-top:auto}::slotted([slot="action"]){position:relative;z-index:2}::slotted([slot="action"]:not(:last-child)){margin-right:calc(var(--space-unit) * 2)}::slotted([slot="action"]:focus:focus-visible){box-shadow:var(--shadow-focus-primary);outline:none !important}:host([clickable]) ::slotted([slot="title"]:focus:focus-visible){box-shadow:none !important;outline:none !important}:host([clickable]) ::slotted([slot="title"]:focus:focus-visible)::before{box-shadow:var(--shadow-focus-primary)}:host([variant="text"]){border:var(--z-card--text-border);background-color:var(--z-card--text-background);border-radius:var(--z-card--text-border-radius)}:host([variant="text"]) [slot="text"]::before{border-radius:var(--z-card--text-border-radius)}:host([show-shadow])>.content,:host([variant="border"])>.content,:host([variant="shadow"])>.content{height:100%;padding:var(--space-unit) var(--space-unit) calc(var(--space-unit) * 2)}:host([variant="text"])>.content{padding:var(--z-card--text-padding)}:host([variant="border"]){border:var(--border-size-small) solid var(--z-card--border-color)}:host([variant="border"][clickable]:hover)>.content{background:var(--color-background)}:host([variant="border"][clickable]:focus:focus-visible){box-shadow:var(--shadow-focus-primary)}:host([variant="border"][clickable]:active){border-color:transparent}:host([variant="shadow"]),:host([show-shadow]){box-shadow:var(--shadow-2)}:host([variant="shadow"][clickable]:hover),:host([clickable][show-shadow]:hover){box-shadow:var(--shadow-4)}:host([variant="shadow"][clickable]:focus:focus-visible),:host([clickable][show-shadow]:focus:focus-visible){box-shadow:var(--shadow-focus-primary)}:host([variant="shadow"][clickable]:active),:host([clickable][show-shadow]:active){box-shadow:none}:host([variant="overlay"]) .content{position:absolute;top:0;right:0;bottom:0;left:0;justify-content:flex-end;padding:var(--space-unit);background-image:linear-gradient(to top, rgb(0 0 0 / 100%), rgb(0 0 0 / 0%));color:var(--color-text-inverse);fill:var(--color-text-inverse)}`;const i=class{constructor(o){t(this,o);this.showShadow=false;this.clickable=false}componentWillLoad(){this.hasCoverImage=this.host.querySelector('[slot="cover"]')!==null}renderColorCoverCard(){return[o("div",{class:"cover-container"},o("div",{class:"color-cover"},o("div",{class:"cover-content"},o("slot",{name:"metadata"}),o("slot",{name:"title"})))),o("div",{class:"content"},o("slot",{name:"text"}),o("div",{class:"actions"},o("slot",{name:"action"})))]}renderContent(){return o("div",{class:"content"},o("slot",{name:"metadata"}),o("slot",{name:"title"}),o("slot",{name:"text"}),o("div",{class:"actions"},o("slot",{name:"action"})))}render(){if(this.variant===r.TEXT){return o(a,null,this.renderContent())}if(this.variant===r.OVERLAY||this.hasCoverImage){return o(a,null,o("div",{class:"cover-container"},this.hasCoverImage&&[o("slot",{name:"cover"}),this.variant!==r.OVERLAY&&this.coverIcon&&o("z-icon",{name:this.coverIcon})],!this.hasCoverImage&&o("div",{class:"color-cover"})),this.renderContent())}return o(a,null,this.renderColorCoverCard())}get host(){return e(this)}};i.style=s();export{i as z_card};
|
|
2
|
+
//# sourceMappingURL=p-54f98f8e.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["stylesCss","ZCard","constructor","hostRef","this","showShadow","clickable","componentWillLoad","hasCoverImage","host","querySelector","renderColorCoverCard","h","class","name","renderContent","render","variant","CardVariant","TEXT","Host","OVERLAY","coverIcon"],"sources":["src/components/z-card/styles.css?tag=z-card&encapsulation=shadow","src/components/z-card/index.tsx"],"sourcesContent":[":host {\n /**\n * @prop --aspect-ratio: Cover aspect ratio. Default: `1.62`\n * @prop --z-card--border-color: Default: `var(--gray200)`\n * @prop --z-card--color-cover-background: Cover color. Default: `var(--color-surface01)`\n * @prop --z-card--text-background: Background color for the `text` variant. Default: `var(--color-surface01)`\n * @prop --z-card--text-border-radius: Default: `none`\n * @prop --z-card--text-border: Configure CSS `border`. Default: `none`\n * @prop --z-card--text-padding: Configure CSS `padding`. Default: `none`\n */\n --aspect-ratio: 1.62;\n --z-card--border-color: var(--gray200);\n --z-card--color-cover-background: var(--color-surface01);\n --z-card--text-background: var(--color-surface01);\n --z-card--text-border-radius: none;\n --z-card--text-border: none;\n --z-card--text-padding: calc(var(--space-unit) * 2) var(--space-unit);\n\n position: relative;\n display: flex;\n flex-direction: column;\n font-family: var(--font-family-sans);\n font-weight: var(--font-rg);\n}\n\n*,\n::slotted(*) {\n box-sizing: border-box;\n}\n\n*:focus:focus-visible {\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n\n:host(:not([variant=\"overlay\"])) .cover-container {\n position: relative;\n width: 100%;\n}\n\n/* Old good trick with percentage padding to keep the aspect ratio.\nUnfortunately the `aspect-ratio` property is still experimental */\n.cover-container {\n padding-bottom: calc(100% / var(--aspect-ratio));\n}\n\n::slotted([slot=\"cover\"]),\n.color-cover {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: center;\n}\n\n.cover-container > z-icon {\n --z-icon-width: calc(var(--space-unit) * 11);\n --z-icon-height: var(--z-icon-width);\n\n position: absolute;\n top: calc(50% - calc(var(--z-icon-height) / 2));\n left: calc(50% - calc(var(--z-icon-width) / 2));\n fill: var(--color-primary01);\n}\n\n.color-cover {\n background-color: var(--z-card--color-cover-background);\n}\n\n.content {\n display: flex;\n flex-direction: column;\n padding-top: var(--space-unit);\n}\n\n.color-cover .cover-content {\n display: flex;\n height: 100%;\n flex-direction: column;\n justify-content: flex-end;\n padding: var(--space-unit);\n}\n\n/* Truncates overflowing text */\n::slotted([slot=\"metadata\"]),\n::slotted([slot=\"title\"]),\n::slotted([slot=\"text\"]) {\n display: -webkit-box;\n overflow: hidden;\n -webkit-box-orient: vertical;\n}\n\n::slotted([slot=\"title\"]:not(:last-child)),\n::slotted([slot=\"text\"]:not(:last-child)) {\n margin-bottom: var(--space-unit);\n}\n\n::slotted([slot=\"title\"])::before {\n position: absolute;\n z-index: 1;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n content: \"\";\n}\n\n::slotted([slot=\"metadata\"]) {\n width: 100%;\n -webkit-line-clamp: 1;\n line-clamp: 1;\n text-transform: uppercase;\n}\n\n::slotted([slot=\"metadata\"]:not(:last-child)) {\n margin: 0 0 calc(var(--space-unit) * 0.25);\n}\n\n::slotted([slot=\"title\"]) {\n margin: 0;\n font-size: var(--font-size-3);\n font-weight: var(--font-sb);\n -webkit-line-clamp: 2;\n line-clamp: 2;\n text-decoration: none;\n}\n\n::slotted([slot=\"title\"]:focus:focus-visible) {\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n\n::slotted([slot=\"text\"]) {\n width: 100%;\n margin: 0;\n -webkit-line-clamp: 3;\n line-clamp: 3;\n}\n\n.actions {\n display: flex;\n align-items: center;\n}\n\n:host(:not([variant=\"overlay\"])) .actions {\n margin-top: auto;\n}\n\n::slotted([slot=\"action\"]) {\n position: relative;\n z-index: 2;\n}\n\n::slotted([slot=\"action\"]:not(:last-child)) {\n margin-right: calc(var(--space-unit) * 2);\n}\n\n::slotted([slot=\"action\"]:focus:focus-visible) {\n box-shadow: var(--shadow-focus-primary);\n outline: none !important;\n}\n\n:host([clickable]) ::slotted([slot=\"title\"]:focus:focus-visible) {\n box-shadow: none !important;\n outline: none !important;\n}\n\n:host([clickable]) ::slotted([slot=\"title\"]:focus:focus-visible)::before {\n box-shadow: var(--shadow-focus-primary);\n}\n\n:host([variant=\"text\"]) {\n border: var(--z-card--text-border);\n background-color: var(--z-card--text-background);\n border-radius: var(--z-card--text-border-radius);\n}\n\n:host([variant=\"text\"]) [slot=\"text\"]::before {\n border-radius: var(--z-card--text-border-radius);\n}\n\n:host([show-shadow]) > .content,\n:host([variant=\"border\"]) > .content,\n:host([variant=\"shadow\"]) > .content {\n height: 100%;\n padding: var(--space-unit) var(--space-unit) calc(var(--space-unit) * 2);\n}\n\n:host([variant=\"text\"]) > .content {\n padding: var(--z-card--text-padding);\n}\n\n/* Border */\n:host([variant=\"border\"]) {\n border: var(--border-size-small) solid var(--z-card--border-color);\n}\n\n:host([variant=\"border\"][clickable]:hover) > .content {\n background: var(--color-background);\n}\n\n:host([variant=\"border\"][clickable]:focus:focus-visible) {\n box-shadow: var(--shadow-focus-primary);\n}\n\n:host([variant=\"border\"][clickable]:active) {\n border-color: transparent;\n}\n\n/* Shadow */\n:host([variant=\"shadow\"]),\n:host([show-shadow]) {\n box-shadow: var(--shadow-2);\n}\n\n:host([variant=\"shadow\"][clickable]:hover),\n:host([clickable][show-shadow]:hover) {\n box-shadow: var(--shadow-4);\n}\n\n:host([variant=\"shadow\"][clickable]:focus:focus-visible),\n:host([clickable][show-shadow]:focus:focus-visible) {\n box-shadow: var(--shadow-focus-primary);\n}\n\n:host([variant=\"shadow\"][clickable]:active),\n:host([clickable][show-shadow]:active) {\n box-shadow: none;\n}\n\n/* Overlay */\n:host([variant=\"overlay\"]) .content {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n justify-content: flex-end;\n padding: var(--space-unit);\n background-image: linear-gradient(to top, rgb(0 0 0 / 100%), rgb(0 0 0 / 0%));\n color: var(--color-text-inverse);\n fill: var(--color-text-inverse);\n}\n","import {Component, ComponentInterface, Element, Host, Prop, State, h} from \"@stencil/core\";\nimport {CardVariant} from \"../../beans\";\n\n/**\n * ZCard component.\n * The width of the card must be set by its container, following the grid indications of the design.\n *\n * @slot cover - Image cover\n * @slot metadata - Metadata\n * @slot title - Using an `<a>` tag here will make the whole card clickable as if the link was wrapping it.\n * @slot text\n * @slot action - Interactive elements to place at the bottom of the card. To put non-interactive elements here when using an `<a>` tag in the `title` slot, and use this as a sort of \"footer\", set `z-index: 0` on each of those elements.\n */\n@Component({\n tag: \"z-card\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZCard implements ComponentInterface {\n /**\n * Card variant.\n * Can be one of \"text\", \"border\", \"shadow\", \"overlay\".\n * Leave it undefined for the default card.\n */\n @Prop({reflect: true})\n variant?: CardVariant;\n\n /** Name of the icon to place over the image cover */\n @Prop()\n coverIcon: string;\n\n /** Enable shadow. Default: false. */\n @Prop({reflect: true})\n showShadow = false;\n\n /**\n * Enable \"clickable\" styles like hover background and cursor, focus shadow on the whole card, etc.\n * Always set this to `true` when putting an `<a>` tag in the `title` slot.\n */\n @Prop({reflect: true})\n clickable = false;\n\n @Element() host: HTMLZCardElement;\n\n @State()\n hasCoverImage: boolean;\n\n componentWillLoad(): void {\n this.hasCoverImage = this.host.querySelector('[slot=\"cover\"]') !== null;\n }\n\n /**\n * Template for a card without image cover.\n * A colored background replaces the image and some data is moved over it.\n */\n private renderColorCoverCard(): HTMLDivElement[] {\n return [\n <div class=\"cover-container\">\n <div class=\"color-cover\">\n <div class=\"cover-content\">\n <slot name=\"metadata\"></slot>\n <slot name=\"title\"></slot>\n </div>\n </div>\n </div>,\n <div class=\"content\">\n <slot name=\"text\"></slot>\n <div class=\"actions\">\n <slot name=\"action\"></slot>\n </div>\n </div>,\n ];\n }\n\n /**\n * Template for the content.\n */\n private renderContent(): HTMLDivElement {\n return (\n <div class=\"content\">\n <slot name=\"metadata\"></slot>\n <slot name=\"title\"></slot>\n <slot name=\"text\"></slot>\n <div class=\"actions\">\n <slot name=\"action\"></slot>\n </div>\n </div>\n );\n }\n\n render(): HTMLZCardElement {\n if (this.variant === CardVariant.TEXT) {\n return <Host>{this.renderContent()}</Host>;\n }\n\n if (this.variant === CardVariant.OVERLAY || this.hasCoverImage) {\n return (\n <Host>\n <div class=\"cover-container\">\n {this.hasCoverImage && [\n <slot name=\"cover\"></slot>,\n this.variant !== CardVariant.OVERLAY && this.coverIcon && <z-icon name={this.coverIcon}></z-icon>,\n ]}\n {!this.hasCoverImage && <div class=\"color-cover\"></div>}\n </div>\n {this.renderContent()}\n </Host>\n );\n }\n\n return <Host>{this.renderColorCoverCard()}</Host>;\n }\n}\n"],"mappings":"6FAAA,MAAMA,EAAY,IAAM,8tI,MCkBXC,EAAK,MALlB,WAAAC,CAAAC,G,UAoBEC,KAAAC,WAAa,MAObD,KAAAE,UAAY,KAwEb,CAjEC,iBAAAC,GACEH,KAAKI,cAAgBJ,KAAKK,KAAKC,cAAc,oBAAsB,I,CAO7D,oBAAAC,GACN,MAAO,CACLC,EAAA,OAAKC,MAAM,mBACTD,EAAA,OAAKC,MAAM,eACTD,EAAA,OAAKC,MAAM,iBACTD,EAAA,QAAME,KAAK,aACXF,EAAA,QAAME,KAAK,aAIjBF,EAAA,OAAKC,MAAM,WACTD,EAAA,QAAME,KAAK,SACXF,EAAA,OAAKC,MAAM,WACTD,EAAA,QAAME,KAAK,a,CASX,aAAAC,GACN,OACEH,EAAA,OAAKC,MAAM,WACTD,EAAA,QAAME,KAAK,aACXF,EAAA,QAAME,KAAK,UACXF,EAAA,QAAME,KAAK,SACXF,EAAA,OAAKC,MAAM,WACTD,EAAA,QAAME,KAAK,Y,CAMnB,MAAAE,GACE,GAAIZ,KAAKa,UAAYC,EAAYC,KAAM,CACrC,OAAOP,EAACQ,EAAI,KAAEhB,KAAKW,gB,CAGrB,GAAIX,KAAKa,UAAYC,EAAYG,SAAWjB,KAAKI,cAAe,CAC9D,OACEI,EAACQ,EAAI,KACHR,EAAA,OAAKC,MAAM,mBACRT,KAAKI,eAAiB,CACrBI,EAAA,QAAME,KAAK,UACXV,KAAKa,UAAYC,EAAYG,SAAWjB,KAAKkB,WAAaV,EAAA,UAAQE,KAAMV,KAAKkB,cAE7ElB,KAAKI,eAAiBI,EAAA,OAAKC,MAAM,iBAEpCT,KAAKW,gB,CAKZ,OAAOH,EAACQ,EAAI,KAAEhB,KAAKO,uB","ignoreList":[]}
|