@zanichelli/albe-web-components 20.0.4 → 20.1.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 +32 -0
- package/dist/cjs/_commonjsHelpers-CFO10eej.js +0 -3
- package/dist/cjs/breakpoints-B7vFm-3T.js +0 -3
- package/dist/cjs/iconset-BIdMT0Ke.js +0 -3
- package/dist/cjs/index-DppFfqsn.js +0 -3
- package/dist/cjs/{index-CZz7uP-M.js → index-ps8icjTZ.js} +37 -13
- package/dist/cjs/index.cjs.js +0 -3
- package/dist/cjs/loader.cjs.js +2 -5
- package/dist/cjs/{reactive-controller-DJkjAuqS.js → reactive-controller-B7HE6OC5.js} +1 -4
- package/dist/cjs/utils-BnCPu0Si.js +0 -3
- package/dist/cjs/utils-C6lcMaul.js +0 -3
- package/dist/cjs/web-components-library.cjs.js +3 -6
- package/dist/cjs/z-accordion.cjs.entry.js +1 -4
- package/dist/cjs/z-anchor-navigation.cjs.entry.js +1 -4
- package/dist/cjs/z-app-header_12.cjs.entry.js +74 -40
- package/dist/cjs/z-aria-alert.cjs.entry.js +2 -5
- package/dist/cjs/z-avatar.cjs.entry.js +3 -6
- package/dist/cjs/z-book-card-app.cjs.entry.js +2 -5
- package/dist/cjs/z-book-card.cjs.entry.js +2 -5
- package/dist/cjs/z-book-cover.cjs.entry.js +2 -5
- package/dist/cjs/z-breadcrumb.cjs.entry.js +3 -6
- package/dist/cjs/z-button-sort.cjs.entry.js +2 -5
- package/dist/cjs/z-card.cjs.entry.js +1 -4
- package/dist/cjs/z-carousel.cjs.entry.js +2 -5
- package/dist/cjs/z-chip.cjs.entry.js +3 -6
- package/dist/cjs/z-color-picker.cjs.entry.js +2 -5
- package/dist/cjs/z-combobox.cjs.entry.js +4 -7
- package/dist/cjs/z-cover-hero.cjs.entry.js +3 -6
- package/dist/cjs/z-date-picker.cjs.entry.js +1 -4
- package/dist/cjs/z-dragdrop-area_2.cjs.entry.js +6 -9
- package/dist/cjs/z-file-upload.cjs.entry.js +1 -4
- package/dist/cjs/z-file.cjs.entry.js +1 -4
- package/dist/cjs/z-ghost-loading.cjs.entry.js +2 -5
- package/dist/cjs/z-info-box.cjs.entry.js +2 -5
- package/dist/cjs/z-info-reveal.cjs.entry.js +2 -5
- package/dist/cjs/z-input-range.cjs.entry.js +3 -6
- package/dist/cjs/z-logo.cjs.entry.js +2 -5
- package/dist/cjs/z-menu-section.cjs.entry.js +2 -5
- package/dist/cjs/z-menu.cjs.entry.js +1 -4
- package/dist/cjs/z-navigation-tabs.cjs.entry.js +3 -6
- package/dist/cjs/z-notification.cjs.entry.js +2 -5
- package/dist/cjs/z-pagination.cjs.entry.js +1 -4
- package/dist/cjs/z-popover.cjs.entry.js +2 -5
- package/dist/cjs/z-range-picker.cjs.entry.js +1 -4
- package/dist/cjs/z-result-card.cjs.entry.js +1 -4
- package/dist/cjs/z-select.cjs.entry.js +12 -9
- package/dist/cjs/z-skip-to-content.cjs.entry.js +2 -5
- package/dist/cjs/z-stepper-item.cjs.entry.js +3 -6
- package/dist/cjs/z-stepper.cjs.entry.js +2 -5
- package/dist/cjs/z-table.cjs.entry.js +1 -4
- package/dist/cjs/z-tbody.cjs.entry.js +1 -4
- package/dist/cjs/z-td.cjs.entry.js +1 -4
- package/dist/cjs/z-tfoot.cjs.entry.js +1 -4
- package/dist/cjs/z-th.cjs.entry.js +1 -4
- package/dist/cjs/z-thead.cjs.entry.js +1 -4
- package/dist/cjs/z-toast-notification-list.cjs.entry.js +2 -5
- package/dist/cjs/z-toast-notification.cjs.entry.js +4 -7
- package/dist/cjs/z-toggle-switch.cjs.entry.js +5 -8
- package/dist/cjs/z-tool.cjs.entry.js +4 -7
- package/dist/cjs/z-toolbar.cjs.entry.js +2 -5
- package/dist/cjs/z-tooltip.cjs.entry.js +2 -5
- package/dist/cjs/z-tr.cjs.entry.js +1 -4
- package/dist/cjs/z-tree-list.cjs.entry.js +1 -4
- package/dist/cjs/z-visually-hidden.cjs.entry.js +2 -5
- package/dist/collection/beans/index.js +0 -1
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/book-card/z-book-card/index.js +0 -1
- package/dist/collection/components/book-card/z-book-card-app/index.js +0 -1
- package/dist/collection/components/css-components/z-label/styles.css +7 -3
- package/dist/collection/components/css-components/z-scrollbar/styles.css +53 -13
- package/dist/collection/components/date-picker/utils.js +0 -1
- package/dist/collection/components/date-picker/z-date-picker/index.js +0 -1
- package/dist/collection/components/date-picker/z-range-picker/index.js +0 -1
- package/dist/collection/components/deprecated/table/cells/z-td/index.js +0 -1
- package/dist/collection/components/deprecated/table/cells/z-th/index.js +0 -1
- package/dist/collection/components/deprecated/table/z-table/index.js +0 -1
- package/dist/collection/components/deprecated/table/z-tbody/index.js +0 -1
- package/dist/collection/components/deprecated/table/z-tfoot/index.js +0 -1
- package/dist/collection/components/deprecated/table/z-thead/index.js +0 -1
- package/dist/collection/components/deprecated/table/z-tr/index.js +0 -1
- package/dist/collection/components/file-upload/z-dragdrop-area/index.js +0 -1
- package/dist/collection/components/file-upload/z-file/index.js +0 -1
- package/dist/collection/components/file-upload/z-file-upload/index.js +0 -1
- package/dist/collection/components/index.js +0 -1
- package/dist/collection/components/list/z-list/index.js +0 -1
- package/dist/collection/components/list/z-list-element/index.js +0 -1
- package/dist/collection/components/list/z-list-group/index.js +0 -1
- package/dist/collection/components/list/z-tree-list/index.js +0 -1
- package/dist/collection/components/z-accordion/index.js +0 -1
- package/dist/collection/components/z-anchor-navigation/index.js +0 -1
- package/dist/collection/components/z-app-header/index.js +9 -15
- package/dist/collection/components/z-app-header/styles.css +12 -15
- package/dist/collection/components/z-aria-alert/index.js +1 -2
- package/dist/collection/components/z-avatar/index.js +2 -3
- package/dist/collection/components/z-book-cover/index.js +1 -2
- package/dist/collection/components/z-breadcrumb/index.js +2 -3
- package/dist/collection/components/z-button/index.js +0 -1
- package/dist/collection/components/z-button-sort/index.js +1 -2
- package/dist/collection/components/z-card/index.js +0 -1
- package/dist/collection/components/z-carousel/index.js +0 -1
- package/dist/collection/components/z-chip/index.js +2 -3
- package/dist/collection/components/z-color-picker/index.js +1 -2
- package/dist/collection/components/z-combobox/index.js +1 -2
- package/dist/collection/components/z-combobox/styles.css +3 -3
- package/dist/collection/components/z-cover-hero/index.js +2 -3
- package/dist/collection/components/z-divider/index.js +1 -2
- package/dist/collection/components/z-ghost-loading/index.js +1 -2
- package/dist/collection/components/z-icon/index.js +1 -2
- package/dist/collection/components/z-info-box/index.js +1 -2
- package/dist/collection/components/z-info-reveal/index.js +1 -2
- package/dist/collection/components/z-input/index.js +50 -8
- package/dist/collection/components/z-input/styles-general.css +74 -23
- package/dist/collection/components/z-input/styles-text.css +13 -16
- package/dist/collection/components/z-input/styles-textarea.css +2 -1
- package/dist/collection/components/z-input-message/index.js +1 -2
- package/dist/collection/components/z-input-message/styles.css +9 -5
- package/dist/collection/components/z-input-range/index.js +1 -2
- package/dist/collection/components/z-logo/index.js +1 -2
- package/dist/collection/components/z-menu/index.js +0 -1
- package/dist/collection/components/z-menu-section/index.js +1 -2
- package/dist/collection/components/z-modal/index.js +4 -5
- package/dist/collection/components/z-navigation-tabs/index.js +2 -3
- package/dist/collection/components/z-notification/index.js +1 -2
- package/dist/collection/components/z-offcanvas/index.js +2 -3
- package/dist/collection/components/z-pagination/index.js +0 -1
- package/dist/collection/components/z-popover/index.js +1 -2
- package/dist/collection/components/z-result-card/index.js +0 -1
- package/dist/collection/components/z-searchbar/index.js +4 -5
- package/dist/collection/components/z-searchbar/styles.css +4 -0
- package/dist/collection/components/z-select/index.js +10 -5
- package/dist/collection/components/z-select/styles.css +4 -2
- package/dist/collection/components/z-skip-to-content/index.js +1 -2
- package/dist/collection/components/z-stepper/index.js +1 -2
- package/dist/collection/components/z-stepper-item/index.js +1 -2
- package/dist/collection/components/z-stepper-item/styles.css +19 -4
- package/dist/collection/components/z-tag/index.js +2 -3
- package/dist/collection/components/z-toast-notification/index.js +3 -4
- package/dist/collection/components/z-toast-notification-list/index.js +1 -2
- package/dist/collection/components/z-toggle-switch/index.js +3 -4
- package/dist/collection/components/z-toggle-switch/styles.css +337 -4
- package/dist/collection/components/z-tool/index.js +2 -3
- package/dist/collection/components/z-toolbar/index.js +1 -2
- package/dist/collection/components/z-tooltip/index.js +1 -2
- package/dist/collection/components/z-visually-hidden/index.js +1 -2
- package/dist/collection/constants/breakpoints.js +0 -1
- package/dist/collection/constants/icons.js +0 -1
- package/dist/collection/constants/iconset.js +0 -1
- package/dist/collection/index.js +0 -1
- package/dist/collection/tokens/typography.css +537 -75
- package/dist/collection/utils/focus-trap-controller.js +0 -1
- package/dist/collection/utils/reactive-controller.js +0 -1
- package/dist/collection/utils/storybook-utils.js +0 -1
- package/dist/collection/utils/utils.js +0 -1
- package/dist/components/_commonjsHelpers.js +1 -2
- package/dist/components/breakpoints.js +1 -2
- package/dist/components/iconset.js +1 -2
- package/dist/components/index.js +1 -2
- package/dist/components/index10.js +1 -2
- package/dist/components/index11.js +1 -2
- package/dist/components/index12.js +1 -2
- package/dist/components/index13.js +1 -2
- package/dist/components/index14.js +1 -2
- package/dist/components/index15.js +1 -2
- package/dist/components/index16.js +1 -2
- package/dist/components/index17.js +1 -2
- package/dist/components/index18.js +1 -2
- package/dist/components/index19.js +1 -2
- package/dist/components/index2.js +1 -2
- package/dist/components/index20.js +1 -2
- package/dist/components/index21.js +1 -2
- package/dist/components/index3.js +1 -2
- package/dist/components/index4.js +1 -2
- package/dist/components/index5.js +1 -2
- package/dist/components/index6.js +1 -2
- package/dist/components/index7.js +1 -2
- package/dist/components/index8.js +1 -2
- package/dist/components/index9.js +1 -2
- package/dist/components/reactive-controller.js +2 -3
- package/dist/components/utils.js +2 -3
- package/dist/components/utils2.js +1 -2
- package/dist/components/z-accordion.js +1 -2
- package/dist/components/z-anchor-navigation.js +1 -2
- package/dist/components/z-app-header.js +1 -2
- package/dist/components/z-aria-alert.js +1 -2
- package/dist/components/z-avatar.js +1 -2
- package/dist/components/z-book-card-app.js +1 -2
- package/dist/components/z-book-card.js +1 -2
- package/dist/components/z-book-cover.js +1 -2
- package/dist/components/z-breadcrumb.js +1 -2
- package/dist/components/z-button-sort.js +1 -2
- package/dist/components/z-button.js +1 -2
- package/dist/components/z-card.js +1 -2
- package/dist/components/z-carousel.js +1 -2
- package/dist/components/z-chip.js +1 -2
- package/dist/components/z-color-picker.js +1 -2
- package/dist/components/z-combobox.js +1 -2
- package/dist/components/z-cover-hero.js +1 -2
- package/dist/components/z-date-picker.js +2 -3
- package/dist/components/z-divider.js +1 -2
- package/dist/components/z-dragdrop-area.js +1 -2
- package/dist/components/z-file-upload.js +1 -2
- package/dist/components/z-file.js +1 -2
- package/dist/components/z-ghost-loading.js +1 -2
- package/dist/components/z-icon.js +1 -2
- package/dist/components/z-info-box.js +1 -2
- package/dist/components/z-info-reveal.js +1 -2
- package/dist/components/z-input-message.js +1 -2
- package/dist/components/z-input-range.js +1 -2
- package/dist/components/z-input.js +1 -2
- package/dist/components/z-list-element.js +1 -2
- package/dist/components/z-list-group.js +1 -2
- package/dist/components/z-list.js +1 -2
- package/dist/components/z-logo.js +1 -2
- package/dist/components/z-menu-section.js +1 -2
- package/dist/components/z-menu.js +1 -2
- package/dist/components/z-modal.js +1 -2
- package/dist/components/z-navigation-tabs.js +1 -2
- package/dist/components/z-notification.js +1 -2
- package/dist/components/z-offcanvas.js +1 -2
- package/dist/components/z-pagination.js +1 -2
- package/dist/components/z-popover.js +1 -2
- package/dist/components/z-range-picker.js +1 -2
- package/dist/components/z-result-card.js +1 -2
- package/dist/components/z-searchbar.js +1 -2
- package/dist/components/z-select.js +1 -2
- package/dist/components/z-skip-to-content.js +1 -2
- package/dist/components/z-stepper-item.js +1 -2
- package/dist/components/z-stepper.js +1 -2
- package/dist/components/z-table.js +1 -2
- package/dist/components/z-tag.js +1 -2
- package/dist/components/z-tbody.js +1 -2
- package/dist/components/z-td.js +1 -2
- package/dist/components/z-tfoot.js +1 -2
- package/dist/components/z-th.js +1 -2
- package/dist/components/z-thead.js +1 -2
- package/dist/components/z-toast-notification-list.js +1 -2
- package/dist/components/z-toast-notification.js +2 -8
- package/dist/components/z-toggle-switch.js +1 -2
- package/dist/components/z-tool.js +1 -2
- package/dist/components/z-toolbar.js +1 -2
- package/dist/components/z-tooltip.js +1 -2
- package/dist/components/z-tr.js +1 -2
- package/dist/components/z-tree-list.js +1 -2
- package/dist/components/z-visually-hidden.js +1 -2
- package/dist/esm/_commonjsHelpers-B85MJLTf.js +0 -3
- package/dist/esm/breakpoints-Q-tWjk7P.js +0 -3
- package/dist/esm/iconset-D1c5gR45.js +0 -3
- package/dist/esm/index-DdetsoIY.js +0 -3
- package/dist/esm/{index-BcDWN4F1.js → index-SFwvdS4t.js} +37 -13
- package/dist/esm/index.js +0 -3
- package/dist/esm/loader.js +3 -6
- package/dist/esm/{reactive-controller-CHemhYDp.js → reactive-controller-Bp_OSSRX.js} +1 -4
- package/dist/esm/utils-BO5sSCUY.js +0 -3
- package/dist/esm/utils-CJc3A9NX.js +0 -3
- package/dist/esm/web-components-library.js +4 -7
- package/dist/esm/z-accordion.entry.js +1 -4
- package/dist/esm/z-anchor-navigation.entry.js +1 -4
- package/dist/esm/z-app-header_12.entry.js +74 -40
- package/dist/esm/z-aria-alert.entry.js +2 -5
- package/dist/esm/z-avatar.entry.js +3 -6
- package/dist/esm/z-book-card-app.entry.js +2 -5
- package/dist/esm/z-book-card.entry.js +2 -5
- package/dist/esm/z-book-cover.entry.js +2 -5
- package/dist/esm/z-breadcrumb.entry.js +3 -6
- package/dist/esm/z-button-sort.entry.js +2 -5
- package/dist/esm/z-card.entry.js +1 -4
- package/dist/esm/z-carousel.entry.js +2 -5
- package/dist/esm/z-chip.entry.js +3 -6
- package/dist/esm/z-color-picker.entry.js +2 -5
- package/dist/esm/z-combobox.entry.js +4 -7
- package/dist/esm/z-cover-hero.entry.js +3 -6
- package/dist/esm/z-date-picker.entry.js +1 -4
- package/dist/esm/z-dragdrop-area_2.entry.js +6 -9
- package/dist/esm/z-file-upload.entry.js +1 -4
- package/dist/esm/z-file.entry.js +1 -4
- package/dist/esm/z-ghost-loading.entry.js +2 -5
- package/dist/esm/z-info-box.entry.js +2 -5
- package/dist/esm/z-info-reveal.entry.js +2 -5
- package/dist/esm/z-input-range.entry.js +3 -6
- package/dist/esm/z-logo.entry.js +2 -5
- package/dist/esm/z-menu-section.entry.js +2 -5
- package/dist/esm/z-menu.entry.js +1 -4
- package/dist/esm/z-navigation-tabs.entry.js +3 -6
- package/dist/esm/z-notification.entry.js +2 -5
- package/dist/esm/z-pagination.entry.js +1 -4
- package/dist/esm/z-popover.entry.js +2 -5
- package/dist/esm/z-range-picker.entry.js +1 -4
- package/dist/esm/z-result-card.entry.js +1 -4
- package/dist/esm/z-select.entry.js +12 -9
- package/dist/esm/z-skip-to-content.entry.js +2 -5
- package/dist/esm/z-stepper-item.entry.js +3 -6
- package/dist/esm/z-stepper.entry.js +2 -5
- package/dist/esm/z-table.entry.js +1 -4
- package/dist/esm/z-tbody.entry.js +1 -4
- package/dist/esm/z-td.entry.js +1 -4
- package/dist/esm/z-tfoot.entry.js +1 -4
- package/dist/esm/z-th.entry.js +1 -4
- package/dist/esm/z-thead.entry.js +1 -4
- package/dist/esm/z-toast-notification-list.entry.js +2 -5
- package/dist/esm/z-toast-notification.entry.js +4 -7
- package/dist/esm/z-toggle-switch.entry.js +5 -8
- package/dist/esm/z-tool.entry.js +4 -7
- package/dist/esm/z-toolbar.entry.js +2 -5
- package/dist/esm/z-tooltip.entry.js +2 -5
- package/dist/esm/z-tr.entry.js +1 -4
- package/dist/esm/z-tree-list.entry.js +1 -4
- package/dist/esm/z-visually-hidden.entry.js +2 -5
- package/dist/types/components/z-app-header/index.d.ts +2 -3
- package/dist/types/components/z-input/index.d.ts +7 -0
- package/dist/types/components/z-select/index.d.ts +2 -0
- package/dist/types/components.d.ts +4 -4
- package/dist/types/stencil-public-runtime.d.ts +1 -0
- package/dist/web-components-library/index.esm.js +1 -2
- package/dist/web-components-library/p-01045d94.entry.js +1 -0
- package/dist/web-components-library/p-029b5462.entry.js +1 -0
- package/dist/web-components-library/p-07ad2d64.entry.js +1 -0
- package/dist/web-components-library/p-12086d02.entry.js +1 -0
- package/dist/web-components-library/p-16d11cd8.entry.js +1 -0
- package/dist/web-components-library/p-18a1ae5c.entry.js +1 -0
- package/dist/web-components-library/p-1b5a788a.entry.js +1 -0
- package/dist/web-components-library/p-1e47d958.entry.js +1 -0
- package/dist/web-components-library/p-265691af.entry.js +1 -0
- package/dist/web-components-library/p-26f6964c.entry.js +1 -0
- package/dist/web-components-library/p-28056b47.entry.js +1 -0
- package/dist/web-components-library/p-282fec35.entry.js +1 -0
- package/dist/web-components-library/p-2a122434.entry.js +1 -0
- package/dist/web-components-library/p-30458bad.entry.js +1 -0
- package/dist/web-components-library/p-33e1ffe6.entry.js +1 -0
- package/dist/web-components-library/p-35f50eb5.entry.js +1 -0
- package/dist/web-components-library/p-3fa6766d.entry.js +1 -0
- package/dist/web-components-library/p-417ff6c3.entry.js +16 -0
- package/dist/web-components-library/p-48da181b.entry.js +1 -0
- package/dist/web-components-library/p-48e6d036.entry.js +1 -0
- package/dist/web-components-library/{p-ea462d53.entry.js → p-4b506603.entry.js} +1 -2
- package/dist/web-components-library/p-566141b5.entry.js +1 -0
- package/dist/web-components-library/p-5684466e.entry.js +1 -0
- package/dist/web-components-library/p-5adb300f.entry.js +1 -0
- package/dist/web-components-library/p-5b2d9cb2.entry.js +1 -0
- package/dist/web-components-library/p-5e1546ca.entry.js +1 -0
- package/dist/web-components-library/p-5e276f04.entry.js +1 -0
- package/dist/web-components-library/p-5fe609c7.entry.js +1 -0
- package/dist/web-components-library/p-6631dd57.entry.js +1 -0
- package/dist/web-components-library/p-74796120.entry.js +1 -0
- package/dist/web-components-library/p-74b66d40.entry.js +1 -0
- package/dist/web-components-library/p-755fbc56.entry.js +1 -0
- package/dist/web-components-library/p-76e5775e.entry.js +1 -0
- package/dist/web-components-library/p-7d7db1de.entry.js +1 -0
- package/dist/web-components-library/p-8247cb21.entry.js +1 -0
- package/dist/web-components-library/p-867029d2.entry.js +1 -0
- package/dist/web-components-library/p-899ef830.entry.js +1 -0
- package/dist/web-components-library/p-8a2dc548.entry.js +1 -0
- package/dist/web-components-library/p-8a99f71b.entry.js +2 -0
- package/dist/web-components-library/p-B6jtvVtV.js +1 -2
- package/dist/web-components-library/p-B85MJLTf.js +1 -2
- package/dist/web-components-library/p-D1c5gR45.js +1 -2
- package/dist/web-components-library/p-DPrEzmhI.js +2 -3
- package/dist/web-components-library/p-DWyY-2H5.js +5 -0
- package/dist/web-components-library/p-DdetsoIY.js +1 -2
- package/dist/web-components-library/p-Q-tWjk7P.js +1 -2
- package/dist/web-components-library/p-SFwvdS4t.js +2 -0
- package/dist/web-components-library/p-b8e25468.entry.js +1 -0
- package/dist/web-components-library/p-c375c57c.entry.js +1 -0
- package/dist/web-components-library/p-c5dded69.entry.js +1 -0
- package/dist/web-components-library/p-c629fdb3.entry.js +1 -0
- package/dist/web-components-library/p-d22f34ac.entry.js +1 -0
- package/dist/web-components-library/p-e0db0935.entry.js +1 -0
- package/dist/web-components-library/p-e17981fe.entry.js +1 -0
- package/dist/web-components-library/p-e18ead24.entry.js +1 -0
- package/dist/web-components-library/p-e69a2a0b.entry.js +1 -0
- package/dist/web-components-library/p-ea40b987.entry.js +1 -0
- package/dist/web-components-library/p-eb0bd443.entry.js +1 -0
- package/dist/web-components-library/p-f5a6cde3.entry.js +1 -0
- package/dist/web-components-library/p-fdb00ffd.entry.js +1 -0
- package/dist/web-components-library/web-components-library.css +1149 -91
- package/dist/web-components-library/web-components-library.esm.js +1 -2
- package/package.json +13 -13
- package/dist/cjs/_commonjsHelpers-CFO10eej.js.map +0 -1
- package/dist/cjs/breakpoints-B7vFm-3T.js.map +0 -1
- package/dist/cjs/iconset-BIdMT0Ke.js.map +0 -1
- package/dist/cjs/index-CZz7uP-M.js.map +0 -1
- package/dist/cjs/index-DppFfqsn.js.map +0 -1
- package/dist/cjs/index.cjs.js.map +0 -1
- package/dist/cjs/loader.cjs.js.map +0 -1
- package/dist/cjs/reactive-controller-DJkjAuqS.js.map +0 -1
- package/dist/cjs/utils-BnCPu0Si.js.map +0 -1
- package/dist/cjs/utils-C6lcMaul.js.map +0 -1
- package/dist/cjs/web-components-library.cjs.js.map +0 -1
- package/dist/cjs/z-accordion.cjs.entry.js.map +0 -1
- package/dist/cjs/z-anchor-navigation.cjs.entry.js.map +0 -1
- package/dist/cjs/z-app-header_12.cjs.entry.js.map +0 -1
- package/dist/cjs/z-aria-alert.cjs.entry.js.map +0 -1
- package/dist/cjs/z-avatar.cjs.entry.js.map +0 -1
- package/dist/cjs/z-book-card-app.cjs.entry.js.map +0 -1
- package/dist/cjs/z-book-card.cjs.entry.js.map +0 -1
- package/dist/cjs/z-book-cover.cjs.entry.js.map +0 -1
- package/dist/cjs/z-breadcrumb.cjs.entry.js.map +0 -1
- package/dist/cjs/z-button-sort.cjs.entry.js.map +0 -1
- package/dist/cjs/z-card.cjs.entry.js.map +0 -1
- package/dist/cjs/z-carousel.cjs.entry.js.map +0 -1
- package/dist/cjs/z-chip.cjs.entry.js.map +0 -1
- package/dist/cjs/z-color-picker.cjs.entry.js.map +0 -1
- package/dist/cjs/z-combobox.cjs.entry.js.map +0 -1
- package/dist/cjs/z-cover-hero.cjs.entry.js.map +0 -1
- package/dist/cjs/z-date-picker.cjs.entry.js.map +0 -1
- package/dist/cjs/z-dragdrop-area_2.cjs.entry.js.map +0 -1
- package/dist/cjs/z-file-upload.cjs.entry.js.map +0 -1
- package/dist/cjs/z-file.cjs.entry.js.map +0 -1
- package/dist/cjs/z-ghost-loading.cjs.entry.js.map +0 -1
- package/dist/cjs/z-info-box.cjs.entry.js.map +0 -1
- package/dist/cjs/z-info-reveal.cjs.entry.js.map +0 -1
- package/dist/cjs/z-input-range.cjs.entry.js.map +0 -1
- package/dist/cjs/z-logo.cjs.entry.js.map +0 -1
- package/dist/cjs/z-menu-section.cjs.entry.js.map +0 -1
- package/dist/cjs/z-menu.cjs.entry.js.map +0 -1
- package/dist/cjs/z-navigation-tabs.cjs.entry.js.map +0 -1
- package/dist/cjs/z-notification.cjs.entry.js.map +0 -1
- package/dist/cjs/z-pagination.cjs.entry.js.map +0 -1
- package/dist/cjs/z-popover.cjs.entry.js.map +0 -1
- package/dist/cjs/z-range-picker.cjs.entry.js.map +0 -1
- package/dist/cjs/z-result-card.cjs.entry.js.map +0 -1
- package/dist/cjs/z-select.cjs.entry.js.map +0 -1
- package/dist/cjs/z-skip-to-content.cjs.entry.js.map +0 -1
- package/dist/cjs/z-stepper-item.cjs.entry.js.map +0 -1
- package/dist/cjs/z-stepper.cjs.entry.js.map +0 -1
- package/dist/cjs/z-table.cjs.entry.js.map +0 -1
- package/dist/cjs/z-tbody.cjs.entry.js.map +0 -1
- package/dist/cjs/z-td.cjs.entry.js.map +0 -1
- package/dist/cjs/z-tfoot.cjs.entry.js.map +0 -1
- package/dist/cjs/z-th.cjs.entry.js.map +0 -1
- package/dist/cjs/z-thead.cjs.entry.js.map +0 -1
- package/dist/cjs/z-toast-notification-list.cjs.entry.js.map +0 -1
- package/dist/cjs/z-toast-notification.cjs.entry.js.map +0 -1
- package/dist/cjs/z-toggle-switch.cjs.entry.js.map +0 -1
- package/dist/cjs/z-tool.cjs.entry.js.map +0 -1
- package/dist/cjs/z-toolbar.cjs.entry.js.map +0 -1
- package/dist/cjs/z-tooltip.cjs.entry.js.map +0 -1
- package/dist/cjs/z-tr.cjs.entry.js.map +0 -1
- package/dist/cjs/z-tree-list.cjs.entry.js.map +0 -1
- package/dist/cjs/z-visually-hidden.cjs.entry.js.map +0 -1
- package/dist/collection/beans/index.js.map +0 -1
- package/dist/collection/components/book-card/z-book-card/index.js.map +0 -1
- package/dist/collection/components/book-card/z-book-card-app/index.js.map +0 -1
- package/dist/collection/components/date-picker/utils.js.map +0 -1
- package/dist/collection/components/date-picker/z-date-picker/index.js.map +0 -1
- package/dist/collection/components/date-picker/z-range-picker/index.js.map +0 -1
- package/dist/collection/components/deprecated/table/cells/z-td/index.js.map +0 -1
- package/dist/collection/components/deprecated/table/cells/z-th/index.js.map +0 -1
- package/dist/collection/components/deprecated/table/z-table/index.js.map +0 -1
- package/dist/collection/components/deprecated/table/z-tbody/index.js.map +0 -1
- package/dist/collection/components/deprecated/table/z-tfoot/index.js.map +0 -1
- package/dist/collection/components/deprecated/table/z-thead/index.js.map +0 -1
- package/dist/collection/components/deprecated/table/z-tr/index.js.map +0 -1
- package/dist/collection/components/file-upload/z-dragdrop-area/index.js.map +0 -1
- package/dist/collection/components/file-upload/z-file/index.js.map +0 -1
- package/dist/collection/components/file-upload/z-file-upload/index.js.map +0 -1
- package/dist/collection/components/index.js.map +0 -1
- package/dist/collection/components/list/z-list/index.js.map +0 -1
- package/dist/collection/components/list/z-list-element/index.js.map +0 -1
- package/dist/collection/components/list/z-list-group/index.js.map +0 -1
- package/dist/collection/components/list/z-tree-list/index.js.map +0 -1
- package/dist/collection/components/z-accordion/index.js.map +0 -1
- package/dist/collection/components/z-anchor-navigation/index.js.map +0 -1
- package/dist/collection/components/z-app-header/index.js.map +0 -1
- package/dist/collection/components/z-aria-alert/index.js.map +0 -1
- package/dist/collection/components/z-avatar/index.js.map +0 -1
- package/dist/collection/components/z-book-cover/index.js.map +0 -1
- package/dist/collection/components/z-breadcrumb/index.js.map +0 -1
- package/dist/collection/components/z-button/index.js.map +0 -1
- package/dist/collection/components/z-button-sort/index.js.map +0 -1
- package/dist/collection/components/z-card/index.js.map +0 -1
- package/dist/collection/components/z-carousel/index.js.map +0 -1
- package/dist/collection/components/z-chip/index.js.map +0 -1
- package/dist/collection/components/z-color-picker/index.js.map +0 -1
- package/dist/collection/components/z-combobox/index.js.map +0 -1
- package/dist/collection/components/z-cover-hero/index.js.map +0 -1
- package/dist/collection/components/z-divider/index.js.map +0 -1
- package/dist/collection/components/z-ghost-loading/index.js.map +0 -1
- package/dist/collection/components/z-icon/index.js.map +0 -1
- package/dist/collection/components/z-info-box/index.js.map +0 -1
- package/dist/collection/components/z-info-reveal/index.js.map +0 -1
- package/dist/collection/components/z-input/index.js.map +0 -1
- package/dist/collection/components/z-input-message/index.js.map +0 -1
- package/dist/collection/components/z-input-range/index.js.map +0 -1
- package/dist/collection/components/z-logo/index.js.map +0 -1
- package/dist/collection/components/z-menu/index.js.map +0 -1
- package/dist/collection/components/z-menu-section/index.js.map +0 -1
- package/dist/collection/components/z-modal/index.js.map +0 -1
- package/dist/collection/components/z-navigation-tabs/index.js.map +0 -1
- package/dist/collection/components/z-notification/index.js.map +0 -1
- package/dist/collection/components/z-offcanvas/index.js.map +0 -1
- package/dist/collection/components/z-pagination/index.js.map +0 -1
- package/dist/collection/components/z-popover/index.js.map +0 -1
- package/dist/collection/components/z-result-card/index.js.map +0 -1
- package/dist/collection/components/z-searchbar/index.js.map +0 -1
- package/dist/collection/components/z-select/index.js.map +0 -1
- package/dist/collection/components/z-skip-to-content/index.js.map +0 -1
- package/dist/collection/components/z-stepper/index.js.map +0 -1
- package/dist/collection/components/z-stepper-item/index.js.map +0 -1
- package/dist/collection/components/z-tag/index.js.map +0 -1
- package/dist/collection/components/z-toast-notification/index.js.map +0 -1
- package/dist/collection/components/z-toast-notification-list/index.js.map +0 -1
- package/dist/collection/components/z-toggle-switch/index.js.map +0 -1
- package/dist/collection/components/z-tool/index.js.map +0 -1
- package/dist/collection/components/z-toolbar/index.js.map +0 -1
- package/dist/collection/components/z-tooltip/index.js.map +0 -1
- package/dist/collection/components/z-visually-hidden/index.js.map +0 -1
- package/dist/collection/constants/breakpoints.js.map +0 -1
- package/dist/collection/constants/icons.js.map +0 -1
- package/dist/collection/constants/iconset.js.map +0 -1
- package/dist/collection/index.js.map +0 -1
- package/dist/collection/utils/focus-trap-controller.js.map +0 -1
- package/dist/collection/utils/reactive-controller.js.map +0 -1
- package/dist/collection/utils/storybook-utils.js.map +0 -1
- package/dist/collection/utils/utils.js.map +0 -1
- package/dist/components/_commonjsHelpers.js.map +0 -1
- package/dist/components/breakpoints.js.map +0 -1
- package/dist/components/iconset.js.map +0 -1
- package/dist/components/index.js.map +0 -1
- package/dist/components/index10.js.map +0 -1
- package/dist/components/index11.js.map +0 -1
- package/dist/components/index12.js.map +0 -1
- package/dist/components/index13.js.map +0 -1
- package/dist/components/index14.js.map +0 -1
- package/dist/components/index15.js.map +0 -1
- package/dist/components/index16.js.map +0 -1
- package/dist/components/index17.js.map +0 -1
- package/dist/components/index18.js.map +0 -1
- package/dist/components/index19.js.map +0 -1
- package/dist/components/index2.js.map +0 -1
- package/dist/components/index20.js.map +0 -1
- package/dist/components/index21.js.map +0 -1
- package/dist/components/index3.js.map +0 -1
- package/dist/components/index4.js.map +0 -1
- package/dist/components/index5.js.map +0 -1
- package/dist/components/index6.js.map +0 -1
- package/dist/components/index7.js.map +0 -1
- package/dist/components/index8.js.map +0 -1
- package/dist/components/index9.js.map +0 -1
- package/dist/components/reactive-controller.js.map +0 -1
- package/dist/components/utils.js.map +0 -1
- package/dist/components/utils2.js.map +0 -1
- package/dist/components/z-accordion.js.map +0 -1
- package/dist/components/z-anchor-navigation.js.map +0 -1
- package/dist/components/z-app-header.js.map +0 -1
- package/dist/components/z-aria-alert.js.map +0 -1
- package/dist/components/z-avatar.js.map +0 -1
- package/dist/components/z-book-card-app.js.map +0 -1
- package/dist/components/z-book-card.js.map +0 -1
- package/dist/components/z-book-cover.js.map +0 -1
- package/dist/components/z-breadcrumb.js.map +0 -1
- package/dist/components/z-button-sort.js.map +0 -1
- package/dist/components/z-button.js.map +0 -1
- package/dist/components/z-card.js.map +0 -1
- package/dist/components/z-carousel.js.map +0 -1
- package/dist/components/z-chip.js.map +0 -1
- package/dist/components/z-color-picker.js.map +0 -1
- package/dist/components/z-combobox.js.map +0 -1
- package/dist/components/z-cover-hero.js.map +0 -1
- package/dist/components/z-date-picker.js.map +0 -1
- package/dist/components/z-divider.js.map +0 -1
- package/dist/components/z-dragdrop-area.js.map +0 -1
- package/dist/components/z-file-upload.js.map +0 -1
- package/dist/components/z-file.js.map +0 -1
- package/dist/components/z-ghost-loading.js.map +0 -1
- package/dist/components/z-icon.js.map +0 -1
- package/dist/components/z-info-box.js.map +0 -1
- package/dist/components/z-info-reveal.js.map +0 -1
- package/dist/components/z-input-message.js.map +0 -1
- package/dist/components/z-input-range.js.map +0 -1
- package/dist/components/z-input.js.map +0 -1
- package/dist/components/z-list-element.js.map +0 -1
- package/dist/components/z-list-group.js.map +0 -1
- package/dist/components/z-list.js.map +0 -1
- package/dist/components/z-logo.js.map +0 -1
- package/dist/components/z-menu-section.js.map +0 -1
- package/dist/components/z-menu.js.map +0 -1
- package/dist/components/z-modal.js.map +0 -1
- package/dist/components/z-navigation-tabs.js.map +0 -1
- package/dist/components/z-notification.js.map +0 -1
- package/dist/components/z-offcanvas.js.map +0 -1
- package/dist/components/z-pagination.js.map +0 -1
- package/dist/components/z-popover.js.map +0 -1
- package/dist/components/z-range-picker.js.map +0 -1
- package/dist/components/z-result-card.js.map +0 -1
- package/dist/components/z-searchbar.js.map +0 -1
- package/dist/components/z-select.js.map +0 -1
- package/dist/components/z-skip-to-content.js.map +0 -1
- package/dist/components/z-stepper-item.js.map +0 -1
- package/dist/components/z-stepper.js.map +0 -1
- package/dist/components/z-table.js.map +0 -1
- package/dist/components/z-tag.js.map +0 -1
- package/dist/components/z-tbody.js.map +0 -1
- package/dist/components/z-td.js.map +0 -1
- package/dist/components/z-tfoot.js.map +0 -1
- package/dist/components/z-th.js.map +0 -1
- package/dist/components/z-thead.js.map +0 -1
- package/dist/components/z-toast-notification-list.js.map +0 -1
- package/dist/components/z-toast-notification.js.map +0 -1
- package/dist/components/z-toggle-switch.js.map +0 -1
- package/dist/components/z-tool.js.map +0 -1
- package/dist/components/z-toolbar.js.map +0 -1
- package/dist/components/z-tooltip.js.map +0 -1
- package/dist/components/z-tr.js.map +0 -1
- package/dist/components/z-tree-list.js.map +0 -1
- package/dist/components/z-visually-hidden.js.map +0 -1
- package/dist/esm/_commonjsHelpers-B85MJLTf.js.map +0 -1
- package/dist/esm/breakpoints-Q-tWjk7P.js.map +0 -1
- package/dist/esm/iconset-D1c5gR45.js.map +0 -1
- package/dist/esm/index-BcDWN4F1.js.map +0 -1
- package/dist/esm/index-DdetsoIY.js.map +0 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/loader.js.map +0 -1
- package/dist/esm/reactive-controller-CHemhYDp.js.map +0 -1
- package/dist/esm/utils-BO5sSCUY.js.map +0 -1
- package/dist/esm/utils-CJc3A9NX.js.map +0 -1
- package/dist/esm/web-components-library.js.map +0 -1
- package/dist/esm/z-accordion.entry.js.map +0 -1
- package/dist/esm/z-anchor-navigation.entry.js.map +0 -1
- package/dist/esm/z-app-header_12.entry.js.map +0 -1
- package/dist/esm/z-aria-alert.entry.js.map +0 -1
- package/dist/esm/z-avatar.entry.js.map +0 -1
- package/dist/esm/z-book-card-app.entry.js.map +0 -1
- package/dist/esm/z-book-card.entry.js.map +0 -1
- package/dist/esm/z-book-cover.entry.js.map +0 -1
- package/dist/esm/z-breadcrumb.entry.js.map +0 -1
- package/dist/esm/z-button-sort.entry.js.map +0 -1
- package/dist/esm/z-card.entry.js.map +0 -1
- package/dist/esm/z-carousel.entry.js.map +0 -1
- package/dist/esm/z-chip.entry.js.map +0 -1
- package/dist/esm/z-color-picker.entry.js.map +0 -1
- package/dist/esm/z-combobox.entry.js.map +0 -1
- package/dist/esm/z-cover-hero.entry.js.map +0 -1
- package/dist/esm/z-date-picker.entry.js.map +0 -1
- package/dist/esm/z-dragdrop-area_2.entry.js.map +0 -1
- package/dist/esm/z-file-upload.entry.js.map +0 -1
- package/dist/esm/z-file.entry.js.map +0 -1
- package/dist/esm/z-ghost-loading.entry.js.map +0 -1
- package/dist/esm/z-info-box.entry.js.map +0 -1
- package/dist/esm/z-info-reveal.entry.js.map +0 -1
- package/dist/esm/z-input-range.entry.js.map +0 -1
- package/dist/esm/z-logo.entry.js.map +0 -1
- package/dist/esm/z-menu-section.entry.js.map +0 -1
- package/dist/esm/z-menu.entry.js.map +0 -1
- package/dist/esm/z-navigation-tabs.entry.js.map +0 -1
- package/dist/esm/z-notification.entry.js.map +0 -1
- package/dist/esm/z-pagination.entry.js.map +0 -1
- package/dist/esm/z-popover.entry.js.map +0 -1
- package/dist/esm/z-range-picker.entry.js.map +0 -1
- package/dist/esm/z-result-card.entry.js.map +0 -1
- package/dist/esm/z-select.entry.js.map +0 -1
- package/dist/esm/z-skip-to-content.entry.js.map +0 -1
- package/dist/esm/z-stepper-item.entry.js.map +0 -1
- package/dist/esm/z-stepper.entry.js.map +0 -1
- package/dist/esm/z-table.entry.js.map +0 -1
- package/dist/esm/z-tbody.entry.js.map +0 -1
- package/dist/esm/z-td.entry.js.map +0 -1
- package/dist/esm/z-tfoot.entry.js.map +0 -1
- package/dist/esm/z-th.entry.js.map +0 -1
- package/dist/esm/z-thead.entry.js.map +0 -1
- package/dist/esm/z-toast-notification-list.entry.js.map +0 -1
- package/dist/esm/z-toast-notification.entry.js.map +0 -1
- package/dist/esm/z-toggle-switch.entry.js.map +0 -1
- package/dist/esm/z-tool.entry.js.map +0 -1
- package/dist/esm/z-toolbar.entry.js.map +0 -1
- package/dist/esm/z-tooltip.entry.js.map +0 -1
- package/dist/esm/z-tr.entry.js.map +0 -1
- package/dist/esm/z-tree-list.entry.js.map +0 -1
- package/dist/esm/z-visually-hidden.entry.js.map +0 -1
- package/dist/web-components-library/index.esm.js.map +0 -1
- package/dist/web-components-library/p-04b6a9f8.entry.js +0 -2
- package/dist/web-components-library/p-04b6a9f8.entry.js.map +0 -1
- package/dist/web-components-library/p-09ac8cb2.entry.js +0 -2
- package/dist/web-components-library/p-09ac8cb2.entry.js.map +0 -1
- package/dist/web-components-library/p-10ffee06.entry.js +0 -2
- package/dist/web-components-library/p-10ffee06.entry.js.map +0 -1
- package/dist/web-components-library/p-13bc7433.entry.js +0 -2
- package/dist/web-components-library/p-13bc7433.entry.js.map +0 -1
- package/dist/web-components-library/p-16423e69.entry.js +0 -2
- package/dist/web-components-library/p-16423e69.entry.js.map +0 -1
- package/dist/web-components-library/p-1702efd5.entry.js +0 -2
- package/dist/web-components-library/p-1702efd5.entry.js.map +0 -1
- package/dist/web-components-library/p-1fedbf42.entry.js +0 -2
- package/dist/web-components-library/p-1fedbf42.entry.js.map +0 -1
- package/dist/web-components-library/p-248ff73f.entry.js +0 -2
- package/dist/web-components-library/p-248ff73f.entry.js.map +0 -1
- package/dist/web-components-library/p-2f8bd98f.entry.js +0 -2
- package/dist/web-components-library/p-2f8bd98f.entry.js.map +0 -1
- package/dist/web-components-library/p-315ca31f.entry.js +0 -2
- package/dist/web-components-library/p-315ca31f.entry.js.map +0 -1
- package/dist/web-components-library/p-320b05fc.entry.js +0 -2
- package/dist/web-components-library/p-320b05fc.entry.js.map +0 -1
- package/dist/web-components-library/p-3a9a120f.entry.js +0 -2
- package/dist/web-components-library/p-3a9a120f.entry.js.map +0 -1
- package/dist/web-components-library/p-3e78dc0d.entry.js +0 -2
- package/dist/web-components-library/p-3e78dc0d.entry.js.map +0 -1
- package/dist/web-components-library/p-41a3f231.entry.js +0 -2
- package/dist/web-components-library/p-41a3f231.entry.js.map +0 -1
- package/dist/web-components-library/p-4362efeb.entry.js +0 -2
- package/dist/web-components-library/p-4362efeb.entry.js.map +0 -1
- package/dist/web-components-library/p-484f3064.entry.js +0 -2
- package/dist/web-components-library/p-484f3064.entry.js.map +0 -1
- package/dist/web-components-library/p-4bc9e06a.entry.js +0 -2
- package/dist/web-components-library/p-4bc9e06a.entry.js.map +0 -1
- package/dist/web-components-library/p-4c054dc5.entry.js +0 -2
- package/dist/web-components-library/p-4c054dc5.entry.js.map +0 -1
- package/dist/web-components-library/p-4d6ea6b1.entry.js +0 -2
- package/dist/web-components-library/p-4d6ea6b1.entry.js.map +0 -1
- package/dist/web-components-library/p-57ba851d.entry.js +0 -2
- package/dist/web-components-library/p-57ba851d.entry.js.map +0 -1
- package/dist/web-components-library/p-5ecdc465.entry.js +0 -2
- package/dist/web-components-library/p-5ecdc465.entry.js.map +0 -1
- package/dist/web-components-library/p-6005c944.entry.js +0 -2
- package/dist/web-components-library/p-6005c944.entry.js.map +0 -1
- package/dist/web-components-library/p-61b49075.entry.js +0 -2
- package/dist/web-components-library/p-61b49075.entry.js.map +0 -1
- package/dist/web-components-library/p-67a2f55e.entry.js +0 -2
- package/dist/web-components-library/p-67a2f55e.entry.js.map +0 -1
- package/dist/web-components-library/p-6ce99251.entry.js +0 -2
- package/dist/web-components-library/p-6ce99251.entry.js.map +0 -1
- package/dist/web-components-library/p-6f6cf4eb.entry.js +0 -2
- package/dist/web-components-library/p-6f6cf4eb.entry.js.map +0 -1
- package/dist/web-components-library/p-791a76d6.entry.js +0 -2
- package/dist/web-components-library/p-791a76d6.entry.js.map +0 -1
- package/dist/web-components-library/p-885472aa.entry.js +0 -2
- package/dist/web-components-library/p-885472aa.entry.js.map +0 -1
- package/dist/web-components-library/p-9dc4d290.entry.js +0 -2
- package/dist/web-components-library/p-9dc4d290.entry.js.map +0 -1
- package/dist/web-components-library/p-B6jtvVtV.js.map +0 -1
- package/dist/web-components-library/p-B85MJLTf.js.map +0 -1
- package/dist/web-components-library/p-BcDWN4F1.js +0 -3
- package/dist/web-components-library/p-BcDWN4F1.js.map +0 -1
- package/dist/web-components-library/p-BjrC13Q0.js +0 -6
- package/dist/web-components-library/p-BjrC13Q0.js.map +0 -1
- package/dist/web-components-library/p-D1c5gR45.js.map +0 -1
- package/dist/web-components-library/p-DPrEzmhI.js.map +0 -1
- package/dist/web-components-library/p-DdetsoIY.js.map +0 -1
- package/dist/web-components-library/p-Q-tWjk7P.js.map +0 -1
- package/dist/web-components-library/p-a1f060c0.entry.js +0 -2
- package/dist/web-components-library/p-a1f060c0.entry.js.map +0 -1
- package/dist/web-components-library/p-a30b5538.entry.js +0 -2
- package/dist/web-components-library/p-a30b5538.entry.js.map +0 -1
- package/dist/web-components-library/p-a5e15158.entry.js +0 -2
- package/dist/web-components-library/p-a5e15158.entry.js.map +0 -1
- package/dist/web-components-library/p-acd3b237.entry.js +0 -2
- package/dist/web-components-library/p-acd3b237.entry.js.map +0 -1
- package/dist/web-components-library/p-ae51be93.entry.js +0 -2
- package/dist/web-components-library/p-ae51be93.entry.js.map +0 -1
- package/dist/web-components-library/p-b3d0d75c.entry.js +0 -2
- package/dist/web-components-library/p-b3d0d75c.entry.js.map +0 -1
- package/dist/web-components-library/p-b5d18aae.entry.js +0 -2
- package/dist/web-components-library/p-b5d18aae.entry.js.map +0 -1
- package/dist/web-components-library/p-bd1876f7.entry.js +0 -2
- package/dist/web-components-library/p-bd1876f7.entry.js.map +0 -1
- package/dist/web-components-library/p-bd663d9d.entry.js +0 -2
- package/dist/web-components-library/p-bd663d9d.entry.js.map +0 -1
- package/dist/web-components-library/p-c00b8b6d.entry.js +0 -2
- package/dist/web-components-library/p-c00b8b6d.entry.js.map +0 -1
- package/dist/web-components-library/p-ca2d01fd.entry.js +0 -2
- package/dist/web-components-library/p-ca2d01fd.entry.js.map +0 -1
- package/dist/web-components-library/p-d4ad8db2.entry.js +0 -2
- package/dist/web-components-library/p-d4ad8db2.entry.js.map +0 -1
- package/dist/web-components-library/p-d70ab97a.entry.js +0 -2
- package/dist/web-components-library/p-d70ab97a.entry.js.map +0 -1
- package/dist/web-components-library/p-d76c3418.entry.js +0 -17
- package/dist/web-components-library/p-d76c3418.entry.js.map +0 -1
- package/dist/web-components-library/p-d8c06756.entry.js +0 -2
- package/dist/web-components-library/p-d8c06756.entry.js.map +0 -1
- package/dist/web-components-library/p-de682f93.entry.js +0 -2
- package/dist/web-components-library/p-de682f93.entry.js.map +0 -1
- package/dist/web-components-library/p-ea462d53.entry.js.map +0 -1
- package/dist/web-components-library/p-eb2deba7.entry.js +0 -2
- package/dist/web-components-library/p-eb2deba7.entry.js.map +0 -1
- package/dist/web-components-library/p-f074b98b.entry.js +0 -2
- package/dist/web-components-library/p-f074b98b.entry.js.map +0 -1
- package/dist/web-components-library/p-f8fd6f08.entry.js +0 -2
- package/dist/web-components-library/p-f8fd6f08.entry.js.map +0 -1
- package/dist/web-components-library/p-f95adaa5.entry.js +0 -8
- package/dist/web-components-library/p-f95adaa5.entry.js.map +0 -1
- package/dist/web-components-library/p-fa11fd2d.entry.js +0 -2
- package/dist/web-components-library/p-fa11fd2d.entry.js.map +0 -1
- package/dist/web-components-library/p-ffe7860b.entry.js +0 -2
- package/dist/web-components-library/p-ffe7860b.entry.js.map +0 -1
- package/dist/web-components-library/web-components-library.esm.js.map +0 -1
- package/www/assets/favicon.png +0 -0
- package/www/assets/images/png/arrowDown.png +0 -0
- package/www/assets/images/png/arrowUp.png +0 -0
- package/www/assets/images/png/back-button.png +0 -0
- package/www/assets/images/png/bovolenta-logo.png +0 -0
- package/www/assets/images/png/cart-icon.png +0 -0
- package/www/assets/images/png/cea-logo.png +0 -0
- package/www/assets/images/png/clitt-logo.png +0 -0
- package/www/assets/images/png/down-arrow.png +0 -0
- package/www/assets/images/png/download.png +0 -0
- package/www/assets/images/png/facebook.png +0 -0
- package/www/assets/images/png/gruoss.png +0 -0
- package/www/assets/images/png/instagram.png +0 -0
- package/www/assets/images/png/lucisano-logo.png +0 -0
- package/www/assets/images/png/myzanichelli-logo.png +0 -0
- package/www/assets/images/png/placeholder-cover.png +0 -0
- package/www/assets/images/png/question-mark.png +0 -0
- package/www/assets/images/png/suitcase-icon.png +0 -0
- package/www/assets/images/png/twitter.png +0 -0
- package/www/assets/images/png/up-arrow.png +0 -0
- package/www/assets/images/png/user.png +0 -0
- package/www/assets/images/png/user_transparent.png +0 -0
- package/www/assets/images/png/youtube.png +0 -0
- package/www/assets/images/png/zanichelli-add-book-gray@8x.png +0 -0
- package/www/assets/images/png/zanichelli-book-remove-gray@8x.png +0 -0
- package/www/assets/images/png/zanichelli-error-image.png +0 -0
- package/www/assets/images/png/zanichelli-external-link-2@8x.png +0 -0
- package/www/assets/images/png/zanichelli-external-link-3@8x.png +0 -0
- package/www/assets/images/png/zanichelli-external-link@8x.png +0 -0
- package/www/assets/images/png/zanichelli-logo-2.png +0 -0
- package/www/assets/images/png/zanichelli-logo-footer.png +0 -0
- package/www/assets/images/png/zanichelli-logo.png +0 -0
- package/www/build/index.esm.js +0 -2
- package/www/build/index.esm.js.map +0 -1
- package/www/build/p-04b6a9f8.entry.js +0 -2
- package/www/build/p-04b6a9f8.entry.js.map +0 -1
- package/www/build/p-09ac8cb2.entry.js +0 -2
- package/www/build/p-09ac8cb2.entry.js.map +0 -1
- package/www/build/p-10ffee06.entry.js +0 -2
- package/www/build/p-10ffee06.entry.js.map +0 -1
- package/www/build/p-13bc7433.entry.js +0 -2
- package/www/build/p-13bc7433.entry.js.map +0 -1
- package/www/build/p-16423e69.entry.js +0 -2
- package/www/build/p-16423e69.entry.js.map +0 -1
- package/www/build/p-1702efd5.entry.js +0 -2
- package/www/build/p-1702efd5.entry.js.map +0 -1
- package/www/build/p-188d1101.css +0 -2716
- package/www/build/p-1fedbf42.entry.js +0 -2
- package/www/build/p-1fedbf42.entry.js.map +0 -1
- package/www/build/p-248ff73f.entry.js +0 -2
- package/www/build/p-248ff73f.entry.js.map +0 -1
- package/www/build/p-2f8bd98f.entry.js +0 -2
- package/www/build/p-2f8bd98f.entry.js.map +0 -1
- package/www/build/p-315ca31f.entry.js +0 -2
- package/www/build/p-315ca31f.entry.js.map +0 -1
- package/www/build/p-320b05fc.entry.js +0 -2
- package/www/build/p-320b05fc.entry.js.map +0 -1
- package/www/build/p-3a9a120f.entry.js +0 -2
- package/www/build/p-3a9a120f.entry.js.map +0 -1
- package/www/build/p-3e78dc0d.entry.js +0 -2
- package/www/build/p-3e78dc0d.entry.js.map +0 -1
- package/www/build/p-41a3f231.entry.js +0 -2
- package/www/build/p-41a3f231.entry.js.map +0 -1
- package/www/build/p-4362efeb.entry.js +0 -2
- package/www/build/p-4362efeb.entry.js.map +0 -1
- package/www/build/p-484f3064.entry.js +0 -2
- package/www/build/p-484f3064.entry.js.map +0 -1
- package/www/build/p-4bc9e06a.entry.js +0 -2
- package/www/build/p-4bc9e06a.entry.js.map +0 -1
- package/www/build/p-4c054dc5.entry.js +0 -2
- package/www/build/p-4c054dc5.entry.js.map +0 -1
- package/www/build/p-4d6ea6b1.entry.js +0 -2
- package/www/build/p-4d6ea6b1.entry.js.map +0 -1
- package/www/build/p-57ba851d.entry.js +0 -2
- package/www/build/p-57ba851d.entry.js.map +0 -1
- package/www/build/p-5ecdc465.entry.js +0 -2
- package/www/build/p-5ecdc465.entry.js.map +0 -1
- package/www/build/p-6005c944.entry.js +0 -2
- package/www/build/p-6005c944.entry.js.map +0 -1
- package/www/build/p-61b49075.entry.js +0 -2
- package/www/build/p-61b49075.entry.js.map +0 -1
- package/www/build/p-67a2f55e.entry.js +0 -2
- package/www/build/p-67a2f55e.entry.js.map +0 -1
- package/www/build/p-6ce99251.entry.js +0 -2
- package/www/build/p-6ce99251.entry.js.map +0 -1
- package/www/build/p-6f6cf4eb.entry.js +0 -2
- package/www/build/p-6f6cf4eb.entry.js.map +0 -1
- package/www/build/p-791a76d6.entry.js +0 -2
- package/www/build/p-791a76d6.entry.js.map +0 -1
- package/www/build/p-885472aa.entry.js +0 -2
- package/www/build/p-885472aa.entry.js.map +0 -1
- package/www/build/p-9dc4d290.entry.js +0 -2
- package/www/build/p-9dc4d290.entry.js.map +0 -1
- package/www/build/p-B6jtvVtV.js +0 -2
- package/www/build/p-B6jtvVtV.js.map +0 -1
- package/www/build/p-B85MJLTf.js +0 -2
- package/www/build/p-B85MJLTf.js.map +0 -1
- package/www/build/p-BcDWN4F1.js +0 -3
- package/www/build/p-BcDWN4F1.js.map +0 -1
- package/www/build/p-BjrC13Q0.js +0 -6
- package/www/build/p-BjrC13Q0.js.map +0 -1
- package/www/build/p-D1c5gR45.js +0 -2
- package/www/build/p-D1c5gR45.js.map +0 -1
- package/www/build/p-DPrEzmhI.js +0 -7
- package/www/build/p-DPrEzmhI.js.map +0 -1
- package/www/build/p-DdetsoIY.js +0 -2
- package/www/build/p-DdetsoIY.js.map +0 -1
- package/www/build/p-Q-tWjk7P.js +0 -2
- package/www/build/p-Q-tWjk7P.js.map +0 -1
- package/www/build/p-a1f060c0.entry.js +0 -2
- package/www/build/p-a1f060c0.entry.js.map +0 -1
- package/www/build/p-a30b5538.entry.js +0 -2
- package/www/build/p-a30b5538.entry.js.map +0 -1
- package/www/build/p-a5a93813.js +0 -2
- package/www/build/p-a5e15158.entry.js +0 -2
- package/www/build/p-a5e15158.entry.js.map +0 -1
- package/www/build/p-acd3b237.entry.js +0 -2
- package/www/build/p-acd3b237.entry.js.map +0 -1
- package/www/build/p-ae51be93.entry.js +0 -2
- package/www/build/p-ae51be93.entry.js.map +0 -1
- package/www/build/p-b3d0d75c.entry.js +0 -2
- package/www/build/p-b3d0d75c.entry.js.map +0 -1
- package/www/build/p-b5d18aae.entry.js +0 -2
- package/www/build/p-b5d18aae.entry.js.map +0 -1
- package/www/build/p-bd1876f7.entry.js +0 -2
- package/www/build/p-bd1876f7.entry.js.map +0 -1
- package/www/build/p-bd663d9d.entry.js +0 -2
- package/www/build/p-bd663d9d.entry.js.map +0 -1
- package/www/build/p-c00b8b6d.entry.js +0 -2
- package/www/build/p-c00b8b6d.entry.js.map +0 -1
- package/www/build/p-ca2d01fd.entry.js +0 -2
- package/www/build/p-ca2d01fd.entry.js.map +0 -1
- package/www/build/p-d4ad8db2.entry.js +0 -2
- package/www/build/p-d4ad8db2.entry.js.map +0 -1
- package/www/build/p-d70ab97a.entry.js +0 -2
- package/www/build/p-d70ab97a.entry.js.map +0 -1
- package/www/build/p-d76c3418.entry.js +0 -17
- package/www/build/p-d76c3418.entry.js.map +0 -1
- package/www/build/p-d8c06756.entry.js +0 -2
- package/www/build/p-d8c06756.entry.js.map +0 -1
- package/www/build/p-de682f93.entry.js +0 -2
- package/www/build/p-de682f93.entry.js.map +0 -1
- package/www/build/p-ea462d53.entry.js +0 -2
- package/www/build/p-ea462d53.entry.js.map +0 -1
- package/www/build/p-eb2deba7.entry.js +0 -2
- package/www/build/p-eb2deba7.entry.js.map +0 -1
- package/www/build/p-f074b98b.entry.js +0 -2
- package/www/build/p-f074b98b.entry.js.map +0 -1
- package/www/build/p-f8fd6f08.entry.js +0 -2
- package/www/build/p-f8fd6f08.entry.js.map +0 -1
- package/www/build/p-f95adaa5.entry.js +0 -8
- package/www/build/p-f95adaa5.entry.js.map +0 -1
- package/www/build/p-fa11fd2d.entry.js +0 -2
- package/www/build/p-fa11fd2d.entry.js.map +0 -1
- package/www/build/p-ffe7860b.entry.js +0 -2
- package/www/build/p-ffe7860b.entry.js.map +0 -1
- package/www/build/web-components-library.css +0 -2716
- package/www/build/web-components-library.esm.js +0 -2
- package/www/build/web-components-library.esm.js.map +0 -1
- package/www/build/web-components-library.js +0 -33
- package/www/host.config.json +0 -15
- package/www/index.html +0 -3
- package/www/pages/book-cards.html +0 -345
- package/www/pages/file-upload.html +0 -258
- package/www/pages/notification.html +0 -299
- package/www/pages/stepper/stepper-1.html +0 -127
- package/www/pages/stepper/stepper-2.html +0 -128
- package/www/pages/stepper/stepper-3.html +0 -153
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["stylesCss","ZNavigationTabs","constructor","hostRef","this","orientation","NavigationTabsOrientation","HORIZONTAL","size","NavigationTabsSize","BIG","selectedTab","undefined","focusedTab","direction","dimension","tabs","Array","from","nav","children","scrollToTab","tabElement","container","parentElement","setTimeout","isHorizontal","containerRect","getBoundingClientRect","tabRect","offset","left","top","containerSize","clientWidth","clientHeight","tabSize","scrollAmount","scrollTo","behavior","navigateBackwards","scrollBy","toLowerCase","navigateForward","isArrowNavigation","e","Object","values","NavigationTabsKeyboardEvents","includes","key","checkScrollVisible","canNavigate","checkScrollEnabled","canNavigateNext","canNavigatePrev","onTabSelected","forEach","tab","i","zicon","querySelector","strokeIcon","name","replace","setAttribute","tabIndex","selected","emit","handleTabClick","event","clickedTab","target","closest","some","child","contains","indexOf","onTabFocusIn","focused","findIndex","navigateThroughTabs","preventDefault","RIGHT","DOWN","VERTICAL","length","LEFT","UP","hasAttribute","getAttribute","focus","onTabFocusOut","relatedTarget","_a","connectedCallback","resizeObserver","ResizeObserver","componentDidLoad","preselectedTab","ariaSelected","observe","disconnectedCallback","disconnect","render","h","Host","class","SMALL","scrollable","onClick","bind","disabled","hidden","width","height","role","htmlAriaLabel","ref","el","onScroll"],"sources":["src/components/z-navigation-tabs/styles.css?tag=z-navigation-tabs","src/components/z-navigation-tabs/index.tsx"],"sourcesContent":["z-navigation-tabs {\n /**\n * @prop --z-navigation-tabs-nav-buttons-bg: Background color of the navigation buttons. The default is `--color-surface01`.\n * @prop --z-navigation-tabs-nav-buttons-fg: Foreground color of the navigation buttons. The default is `--color-primary01`.\n */\n --z-navigation-tabs-nav-buttons-bg: ;\n --z-navigation-tabs-nav-buttons-fg: ;\n\n position: relative;\n z-index: 0;\n display: flex;\n overflow: hidden;\n flex-direction: row;\n font-family: var(--font-family-sans);\n font-weight: var(--font-rg);\n}\n\nz-navigation-tabs,\nz-navigation-tabs * {\n box-sizing: border-box;\n}\n\nz-navigation-tabs > nav::-webkit-scrollbar {\n display: none;\n}\n\nz-navigation-tabs .navigation-button {\n position: absolute;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n border: none;\n margin: 0;\n background-color: var(--z-navigation-tabs-nav-buttons-bg, var(--color-surface01));\n border-radius: var(--border-no-radius);\n box-shadow: 0 0 4px 1px var(--shadow-color-base);\n cursor: pointer;\n fill: var(--z-navigation-tabs-nav-buttons-fg, var(--color-primary01));\n outline: none;\n}\n\nz-navigation-tabs .navigation-button:disabled {\n display: none;\n}\n\nz-navigation-tabs > nav {\n z-index: 0;\n display: flex;\n overflow: auto;\n align-items: center;\n justify-content: flex-start;\n scroll-behavior: smooth;\n\n /* hide scrollbar in Firefox */\n scrollbar-width: none;\n}\n\nz-navigation-tabs[orientation=\"horizontal\"] > nav {\n width: 100%;\n}\n\nz-navigation-tabs[orientation=\"horizontal\"] .navigation-button {\n top: 0;\n width: calc(var(--space-unit) * 4);\n height: 100%;\n}\n\nz-navigation-tabs[orientation=\"horizontal\"] .navigation-button:first-child {\n left: 0;\n}\n\nz-navigation-tabs[orientation=\"horizontal\"] .navigation-button:last-child {\n right: 0;\n}\n\n/* Orientation vertical */\nz-navigation-tabs[orientation=\"vertical\"] {\n width: fit-content;\n flex-direction: column;\n}\n\nz-navigation-tabs[orientation=\"vertical\"] > nav {\n height: 100%;\n flex-direction: column;\n align-items: stretch;\n}\n\nz-navigation-tabs[orientation=\"vertical\"] .navigation-button {\n left: 0;\n width: 100%;\n height: calc(var(--space-unit) * 4);\n}\n\nz-navigation-tabs[orientation=\"vertical\"] .navigation-button:first-child {\n top: 0;\n}\n\nz-navigation-tabs[orientation=\"vertical\"] .navigation-button:last-child {\n bottom: 0;\n}\n\nz-navigation-tabs[size=\"small\"][orientation=\"vertical\"] .navigation-button {\n height: calc(var(--space-unit) * 4);\n}\n\n/* Style for the tabs */\n\nz-navigation-tabs > nav > * {\n position: relative;\n z-index: 0;\n display: inline-flex;\n width: auto;\n align-items: center;\n justify-content: center;\n padding: calc(var(--space-unit) * 2) calc(var(--space-unit) * 5);\n border: none;\n margin: 0;\n background-color: unset;\n border-radius: var(--border-no-radius);\n color: var(--color-primary01);\n cursor: pointer;\n fill: currentcolor;\n font-family: var(--font-family-sans);\n font-size: inherit;\n gap: var(--space-unit);\n letter-spacing: inherit;\n line-height: inherit;\n outline: none;\n text-align: center;\n white-space: nowrap;\n}\n\nz-navigation-tabs > nav > a {\n text-decoration: none;\n}\n\nz-navigation-tabs > nav > *:focus:focus-visible {\n z-index: 1;\n box-shadow: inset 0 0 2px 2px var(--shadow-color-base);\n}\n\nz-navigation-tabs > nav > :not([disabled]):hover {\n background-color: var(--color-background);\n}\n\nz-navigation-tabs > nav > button[disabled] {\n color: var(--color-disabled03);\n cursor: not-allowed;\n fill: currentcolor;\n pointer-events: all;\n}\n\nz-navigation-tabs > nav > :not([disabled]):hover,\nnav > [aria-selected=\"true\"] {\n color: var(--color-hover-primary);\n fill: currentcolor;\n}\n\nz-navigation-tabs > nav > :not([disabled]):hover::after,\nnav > [aria-selected=\"true\"]::after {\n position: absolute;\n background-color: var(--color-hover-primary);\n content: \"\";\n}\n\nz-navigation-tabs[orientation=\"horizontal\"] > nav > :not([disabled]):hover::after,\nz-navigation-tabs[orientation=\"horizontal\"] > nav > [aria-selected=\"true\"]::after {\n bottom: 0;\n left: 0;\n width: 100%;\n height: var(--border-size-large);\n}\n\nz-navigation-tabs > nav > * z-icon {\n --z-icon-width: calc(var(--space-unit) * 2);\n --z-icon-height: calc(var(--space-unit) * 2);\n\n display: flex;\n margin: 0;\n}\n\n/* `small` size (only available for horizontal orientation) */\n\nz-navigation-tabs[size=\"small\"][orientation=\"horizontal\"] > nav > * {\n padding: var(--space-unit) calc(var(--space-unit) * 2);\n}\n\nz-navigation-tabs[size=\"small\"][orientation=\"horizontal\"] > nav > :not([disabled]):hover::after,\nz-navigation-tabs[size=\"small\"][orientation=\"horizontal\"] > nav > [aria-selected=\"true\"]::after {\n height: var(--border-size-medium);\n}\n\nz-navigation-tabs[size=\"small\"]:not([orientation=\"vertical\"]) > nav > * z-icon {\n --z-icon-width: 14px;\n --z-icon-height: 14px;\n}\n\n/* Orientation Vertical */\n\nz-navigation-tabs[orientation=\"vertical\"] > nav > * {\n padding: calc(var(--space-unit) * 3) calc(var(--space-unit) * 2);\n}\n\nz-navigation-tabs[orientation=\"vertical\"] > nav > * > :not(z-icon) {\n display: none;\n}\n\nz-navigation-tabs[orientation=\"vertical\"] > nav > :not([disabled]):hover::after,\nz-navigation-tabs[orientation=\"vertical\"] > nav > [aria-selected=\"true\"]::after {\n top: 0;\n right: 0;\n width: var(--border-size-large);\n height: 100%;\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 {NavigationTabsKeyboardEvents, NavigationTabsOrientation, NavigationTabsSize} from \"../../beans\";\n\n/**\n * Navigation tabs component.\n * To select a specific tab programmatically, set the `aria-selected` attribute to `true` on the desired tab.\n * @slot - Main slot. Use `<button>` or `<a>` tags as children.\n */\n@Component({\n tag: \"z-navigation-tabs\",\n styleUrl: \"styles.css\",\n})\nexport class ZNavigationTabs implements ComponentInterface {\n /**\n * Set `aria-label` attribute to the internal `<nav>` element with `tablist` role.\n */\n @Prop()\n htmlAriaLabel?: string;\n\n /**\n * Navigation tabs orientation.\n */\n @Prop({reflect: true})\n orientation? = NavigationTabsOrientation.HORIZONTAL;\n\n /**\n * Navigation tabs size.\n */\n @Prop({reflect: true})\n size? = NavigationTabsSize.BIG;\n\n /**\n * Index of the selected tab.\n * Useful to programmatically select a tab.\n * The tab can also be selected by setting the `aria-selected` attribute to `true` on the desired tab.\n */\n @Prop({mutable: true})\n selectedTab: number = undefined;\n\n /**\n * Emitted when the selected tab changes.\n * Contains the index of the new selected tab in the `detail` of the event.\n */\n @Event()\n selected: EventEmitter<number>;\n\n /**\n * Whether to show navigation buttons.\n */\n @State()\n canNavigate: boolean;\n\n /**\n * Whether backwards navigation is allowed.\n */\n @State()\n canNavigatePrev: boolean;\n\n /**\n * Whether forward navigation is allowed.\n */\n @State()\n canNavigateNext: boolean;\n\n @Element() host: HTMLZNavigationTabsElement;\n\n /**\n * Index of the last tab that held focus.\n */\n private focusedTab = undefined;\n\n /**\n * Reference to the `<nav>` element\n */\n private nav: HTMLElement;\n\n /**\n * Getter for the direction to check based on current orientation.\n */\n get direction(): string {\n return this.orientation == NavigationTabsOrientation.HORIZONTAL ? \"Left\" : \"Top\";\n }\n\n /**\n * Getter for the dimension to check based on current orientation.\n */\n get dimension(): string {\n return this.orientation == NavigationTabsOrientation.HORIZONTAL ? \"Width\" : \"Height\";\n }\n\n get tabs(): HTMLElement[] {\n return Array.from(this.nav.children) as HTMLElement[];\n }\n\n private resizeObserver: ResizeObserver;\n\n /**\n * Scroll into view to center the tab.\n */\n private scrollToTab(tabElement: HTMLElement): void {\n const container = tabElement.parentElement;\n\n if (!container) {\n return;\n }\n\n setTimeout(() => {\n const isHorizontal = this.orientation === NavigationTabsOrientation.HORIZONTAL;\n\n const containerRect = container.getBoundingClientRect();\n const tabRect = tabElement.getBoundingClientRect();\n\n const offset = isHorizontal ? tabRect.left - containerRect.left : tabRect.top - containerRect.top;\n const containerSize = isHorizontal ? container.clientWidth : container.clientHeight;\n const tabSize = isHorizontal ? tabElement.clientWidth : tabElement.clientHeight;\n const scrollAmount = offset - containerSize / 2 + tabSize / 2;\n\n container.scrollTo({\n [isHorizontal ? \"left\" : \"top\"]: container[isHorizontal ? \"scrollLeft\" : \"scrollTop\"] + scrollAmount,\n behavior: \"smooth\",\n });\n }, 100);\n }\n\n /**\n * Scroll the navigation bar half of its size backward.\n */\n private navigateBackwards(): void {\n this.nav.scrollBy({\n [this.direction.toLowerCase()]: 0 - this.nav[`client${this.dimension}`] / 2,\n behavior: \"smooth\",\n });\n }\n\n /**\n * Scroll the navigation bar half of its size forward.\n */\n private navigateForward(): void {\n this.nav.scrollBy({\n [this.direction.toLowerCase()]: this.nav[`scroll${this.direction}`] + this.nav[`client${this.dimension}`] / 2,\n behavior: \"smooth\",\n });\n }\n\n /**\n * Check if a keyboard event was triggered by an arrow key.\n */\n private isArrowNavigation(e: KeyboardEvent): boolean {\n return Object.values(NavigationTabsKeyboardEvents).includes(e.key as NavigationTabsKeyboardEvents);\n }\n\n /**\n * Check if the navigation buttons are needed.\n */\n private checkScrollVisible(): void {\n if (!this.nav) {\n return;\n }\n\n this.canNavigate = this.nav[`scroll${this.dimension}`] > this.nav[`client${this.dimension}`];\n }\n\n /**\n * Check if navigation buttons can be enabled for each direction.\n */\n @Watch(\"canNavigate\")\n checkScrollEnabled(): void {\n if (!this.nav) {\n return;\n }\n\n this.canNavigateNext =\n this.nav[`scroll${this.direction}`] + this.nav[`client${this.dimension}`] < this.nav[`scroll${this.dimension}`];\n this.canNavigatePrev = this.nav[`scroll${this.direction}`] > 0;\n }\n\n /**\n * When the selected tab changes, update the `aria-selected` attribute on each tab and scroll to the selected tab.\n */\n @Watch(\"selectedTab\")\n onTabSelected(): void {\n this.tabs.forEach((tab, i) => {\n const zicon = tab.querySelector(\"z-icon\");\n const strokeIcon = zicon?.name.replace(\"-filled\", \"\");\n if (i !== this.selectedTab) {\n tab.setAttribute(\"aria-selected\", \"false\");\n tab.tabIndex = -1;\n if (zicon) {\n zicon.name = strokeIcon;\n }\n\n return;\n }\n\n if (zicon) {\n zicon.name = `${strokeIcon}-filled`;\n }\n tab.setAttribute(\"aria-selected\", \"true\");\n });\n this.selected.emit(this.selectedTab);\n if (this.selectedTab !== undefined) {\n this.scrollToTab(this.tabs[this.selectedTab]);\n }\n }\n\n /**\n * Handle click on the tabs.\n * @param event `click` event triggered by a child tab\n */\n @Listen(\"click\")\n handleTabClick(event: MouseEvent): void {\n const clickedTab = (event.target as HTMLElement).closest<HTMLElement>(\"[role='tab']\");\n if (!this.tabs.some((child) => child.contains(clickedTab))) {\n return;\n }\n\n this.selectedTab = this.tabs.indexOf(clickedTab);\n }\n\n /**\n * When a tab is focused, temporarily set to -1 the `tabindex` of the selected tab (if any) and set the `focusedTab` to the index of the focused tab.\n */\n @Listen(\"focusin\")\n onTabFocusIn(event: FocusEvent): void {\n const focused = this.tabs.findIndex((tab) => tab.contains(event.target as HTMLElement));\n if (focused === -1) {\n return;\n }\n\n if (this.selectedTab !== undefined) {\n this.tabs[this.selectedTab].tabIndex = -1;\n }\n this.focusedTab = focused;\n this.tabs[this.focusedTab].tabIndex = -1;\n this.scrollToTab(this.tabs[this.focusedTab]);\n }\n\n /**\n * Handle keyboard navigation through tabs with arrow keys.\n */\n @Listen(\"keydown\")\n navigateThroughTabs(event: KeyboardEvent): void | boolean {\n if (!this.tabs.some((tab) => tab.contains(event.target as HTMLElement)) || !this.isArrowNavigation(event)) {\n return true;\n }\n\n event.preventDefault();\n if (\n (event.key === NavigationTabsKeyboardEvents.RIGHT && this.orientation == NavigationTabsOrientation.HORIZONTAL) ||\n (event.key === NavigationTabsKeyboardEvents.DOWN && this.orientation == NavigationTabsOrientation.VERTICAL)\n ) {\n // Move forward\n this.focusedTab++;\n if (this.focusedTab >= this.tabs.length) {\n this.focusedTab = 0;\n }\n } else if (\n (event.key === NavigationTabsKeyboardEvents.LEFT && this.orientation == NavigationTabsOrientation.HORIZONTAL) ||\n (event.key === NavigationTabsKeyboardEvents.UP && this.orientation == NavigationTabsOrientation.VERTICAL)\n ) {\n // Move backward\n this.focusedTab--;\n if (this.focusedTab < 0) {\n this.focusedTab = this.tabs.length - 1;\n }\n }\n // Ignore disabled tabs\n if (\n this.tabs[this.focusedTab].hasAttribute(\"disabled\") &&\n this.tabs[this.focusedTab].getAttribute(\"disabled\") !== \"false\"\n ) {\n return this.navigateThroughTabs(event);\n }\n\n this.tabs[this.focusedTab].focus();\n this.scrollToTab(this.tabs[this.focusedTab]);\n }\n\n /**\n * If the focus is not going on a tab (`relatedTarget` is the new focused element), set to 0 the `tabindex` of the selected tab or the one of the first tab, then unset the `focusedTab`.\n */\n @Listen(\"focusout\")\n onTabFocusOut(event: FocusEvent): void {\n if (!this.tabs.some((tab) => tab.contains(event.relatedTarget as HTMLElement))) {\n this.tabs[this.selectedTab ?? 0].tabIndex = 0;\n this.focusedTab = undefined;\n }\n }\n\n connectedCallback(): void {\n this.resizeObserver = new ResizeObserver(() => this.checkScrollVisible());\n }\n\n componentDidLoad(): void {\n // Set role and tabindex to each slotted tab\n this.tabs.forEach((tab) => {\n tab.setAttribute(\"role\", \"tab\");\n tab.tabIndex = -1;\n });\n\n const preselectedTab = this.selectedTab ?? this.tabs.findIndex((tab) => tab.ariaSelected === \"true\");\n if (preselectedTab !== -1) {\n this.selectedTab = preselectedTab;\n this.tabs[preselectedTab].tabIndex = 0;\n this.onTabSelected();\n } else {\n this.tabs[0].tabIndex = 0;\n }\n\n this.resizeObserver.observe(this.nav);\n }\n\n disconnectedCallback(): void {\n this.resizeObserver?.disconnect();\n }\n\n render(): HTMLZNavigationTabsElement {\n return (\n <Host\n class={{\n \"interactive-2\": this.size === NavigationTabsSize.SMALL,\n \"interactive-1\": this.size !== NavigationTabsSize.SMALL,\n }}\n scrollable={this.canNavigate}\n >\n <button\n class=\"navigation-button\"\n onClick={this.navigateBackwards.bind(this)}\n tabIndex={-1}\n disabled={!this.canNavigatePrev}\n aria-label=\"Mostra elementi precedenti\"\n hidden={!this.canNavigate}\n >\n <z-icon\n name={this.orientation === NavigationTabsOrientation.HORIZONTAL ? \"chevron-left\" : \"chevron-up\"}\n width={16}\n height={16}\n />\n </button>\n\n <nav\n role=\"tablist\"\n aria-label={this.htmlAriaLabel || undefined}\n ref={(el) => (this.nav = el ?? this.nav)}\n onScroll={this.checkScrollEnabled.bind(this)}\n aria-orientation={this.orientation}\n >\n <slot></slot>\n </nav>\n\n <button\n class=\"navigation-button\"\n onClick={this.navigateForward.bind(this)}\n tabIndex={-1}\n disabled={!this.canNavigateNext}\n aria-label=\"Mostra elementi successivi\"\n hidden={!this.canNavigate}\n >\n <z-icon\n name={this.orientation === NavigationTabsOrientation.HORIZONTAL ? \"chevron-right\" : \"chevron-down\"}\n width={16}\n height={16}\n />\n </button>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as e,h as t,H as o,d as r}from"./p-BcDWN4F1.js";import{Q as a,R as i}from"./p-DdetsoIY.js";const n=()=>`:host{--cover-hero-overlay:linear-gradient(270deg, #0000 0%, #000000e6 100%);--cover-hero-text-color:var(--color-text-inverse);display:block;overflow:hidden}:host,*{box-sizing:border-box}:host .main-container{position:relative;width:100%;align-items:baseline}:host .content-container{color:var(--cover-hero-text-color);fill:var(--cover-hero-text-color)}:host .main-container .cover-container{position:relative;width:100%;padding-top:calc(100% / (var(--cover-hero-aspect-ratio, var(--image-aspect-ratio, 16/9))));background-color:var(--gray600)}::slotted([slot="cover"]){position:absolute;display:block;width:100%;height:100%;inset:0;object-fit:cover;object-position:top center}::slotted(z-info-reveal){position:absolute;z-index:1;right:var(--grid-margin);bottom:var(--grid-margin)}:host([variant="overlay"]:not([preserve-aspect-ratio=""],[preserve-aspect-ratio="true"])) .main-container{height:100%}:host([variant="overlay"]:not([preserve-aspect-ratio=""],[preserve-aspect-ratio="true"])) .main-container .cover-container{position:absolute;z-index:-1;height:100%;padding:0}:host([variant="overlay"]) .main-container .cover-container::after{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--cover-hero-overlay);content:""}:host([variant="overlay"]:is([preserve-aspect-ratio=""],[preserve-aspect-ratio="true"])) .main-container .content-container{position:absolute;inset:0}:host([variant="overlay"]) .main-container .content-container{height:100%;padding:var(--grid-margin)}:host([variant="stacked"]){--cover-hero-text-color:var(--color-default-text)}:host([variant="stacked"]) .content-container ::slotted(*){padding:var(--grid-margin) 0}`;const s=class{constructor(t){e(this,t);this.variant=a.OVERLAY;this.contentPosition=i.TOP;this.preserveAspectRatio=true}onImgLoad({target:e}){if(e instanceof Image&&e.closest("[slot=cover]")){const t=e.naturalWidth/e.naturalHeight;this.host.style.setProperty("--image-aspect-ratio",t.toString())}}renderContent(){return t("div",{class:"content-container"},t("slot",{name:"content"}))}render(){return t(o,{key:"5d8f0ff86c4f61801555706767835826779e2d0b"},this.variant===a.STACKED&&this.contentPosition===i.TOP&&this.renderContent(),t("div",{key:"00a33a61d3ddfc4302a31880a3ebfba515d12949",class:"main-container"},t("div",{key:"d29ac7e60460e9ce8f1f5db797c63eb5dbe11ab1",class:"cover-container"},t("slot",{key:"82750e41966c1aa21c5bc775e570806981f56fa9",name:"cover"})),t("slot",{key:"39b1a8e46a32cbb7dcbbc23ce8a404994515ddf3",name:"info-reveal"}),this.variant===a.OVERLAY&&this.renderContent()),this.variant===a.STACKED&&this.contentPosition===i.BOTTOM&&this.renderContent())}get host(){return r(this)}};s.style=n();export{s as z_cover_hero};
|
|
2
|
-
//# sourceMappingURL=p-67a2f55e.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["stylesCss","ZCoverHero","constructor","hostRef","this","variant","CoverHeroVariant","OVERLAY","contentPosition","CoverHeroContentPosition","TOP","preserveAspectRatio","onImgLoad","target","Image","closest","ratio","naturalWidth","naturalHeight","host","style","setProperty","toString","renderContent","h","class","name","render","Host","key","STACKED","BOTTOM"],"sources":["src/components/z-cover-hero/styles.css?tag=z-cover-hero&encapsulation=shadow","src/components/z-cover-hero/index.tsx"],"sourcesContent":[":host {\n /**\n * @prop --cover-hero-overlay: overlay color of the cover hero (CSS `background` property). **Default**: `linear-gradient(270deg, #0000 0%, #000000e6 100%)`.\n * @prop --cover-hero-text-color: color of the text.\n * @prop --cover-hero-aspect-ratio: aspect ratio to use for the image. You can pass a fraction or a number representing the ratio. **Default**: the intrinsic aspect ratio of the slotted image or `16/9`.\n */\n --cover-hero-overlay: linear-gradient(270deg, #0000 0%, #000000e6 100%);\n --cover-hero-text-color: var(--color-text-inverse);\n --cover-hero-aspect-ratio: ;\n\n display: block;\n overflow: hidden;\n}\n\n:host,\n* {\n box-sizing: border-box;\n}\n\n:host .main-container {\n position: relative;\n width: 100%;\n align-items: baseline;\n}\n\n:host .content-container {\n color: var(--cover-hero-text-color);\n fill: var(--cover-hero-text-color);\n}\n\n:host .main-container .cover-container {\n position: relative;\n width: 100%;\n padding-top: calc(100% / (var(--cover-hero-aspect-ratio, var(--image-aspect-ratio, 16/9))));\n background-color: var(--gray600);\n}\n\n::slotted([slot=\"cover\"]) {\n position: absolute;\n display: block;\n width: 100%;\n height: 100%;\n inset: 0;\n object-fit: cover;\n object-position: top center;\n}\n\n::slotted(z-info-reveal) {\n position: absolute;\n z-index: 1;\n right: var(--grid-margin);\n bottom: var(--grid-margin);\n}\n\n/* Variant overlay */\n:host([variant=\"overlay\"]:not([preserve-aspect-ratio=\"\"], [preserve-aspect-ratio=\"true\"])) .main-container {\n height: 100%;\n}\n\n:host([variant=\"overlay\"]:not([preserve-aspect-ratio=\"\"], [preserve-aspect-ratio=\"true\"]))\n .main-container\n .cover-container {\n position: absolute;\n z-index: -1;\n height: 100%;\n padding: 0;\n}\n\n:host([variant=\"overlay\"]) .main-container .cover-container::after {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: var(--cover-hero-overlay);\n content: \"\";\n}\n\n:host([variant=\"overlay\"]:is([preserve-aspect-ratio=\"\"], [preserve-aspect-ratio=\"true\"]))\n .main-container\n .content-container {\n position: absolute;\n inset: 0;\n}\n\n:host([variant=\"overlay\"]) .main-container .content-container {\n height: 100%;\n padding: var(--grid-margin);\n}\n\n/* Variant stacked */\n:host([variant=\"stacked\"]) {\n --cover-hero-text-color: var(--color-default-text);\n}\n\n:host([variant=\"stacked\"]) .content-container ::slotted(*) {\n padding: var(--grid-margin) 0;\n}\n","import {Component, ComponentInterface, Element, Host, Listen, Prop, h} from \"@stencil/core\";\nimport {CoverHeroContentPosition, CoverHeroVariant} from \"../../beans\";\n\n/**\n * Cover hero component.\n * Component to display a hero image with content.\n *\n * @slot cover - slot for the cover image.\n * @slot content - slot for the content.\n * @slot info-reveal - slot for the info reveal.\n */\n@Component({\n tag: \"z-cover-hero\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZCoverHero implements ComponentInterface {\n @Element() host: HTMLZCoverHeroElement;\n\n /**\n * Cover hero variant. Can be `OVERLAY` or `STACKED`.\n */\n @Prop({reflect: true})\n variant: CoverHeroVariant = CoverHeroVariant.OVERLAY;\n\n /**\n * Vertical content position (for `STACKED` variant).\n */\n @Prop({reflect: true})\n contentPosition: CoverHeroContentPosition = CoverHeroContentPosition.TOP;\n\n /**\n * Whether to keep the image aspect ratio.\n * If set to `false`, the cssprop `--cover-hero-aspect-ratio` will not affect the component's size;\n * instead, the height of the component follows the content's one.\n * Note: it may be necessary to set a min and/or max height to the component.\n */\n @Prop({reflect: true})\n preserveAspectRatio = true;\n\n /**\n * Store the intrinsic aspect ratio of the slotted image when loaded,\n * to have a default when `--cover-hero-aspect-ratio` is not set.\n * @param target The event target\n */\n @Listen(\"load\", {capture: true})\n protected onImgLoad({target}: Event): void {\n if (target instanceof Image && target.closest(\"[slot=cover]\")) {\n const ratio = target.naturalWidth / target.naturalHeight;\n this.host.style.setProperty(\"--image-aspect-ratio\", ratio.toString());\n }\n }\n\n /**\n * Template for the content.\n */\n private renderContent(): HTMLDivElement {\n return (\n <div class=\"content-container\">\n <slot name=\"content\"></slot>\n </div>\n );\n }\n\n render(): HTMLZCoverHeroElement {\n return (\n <Host>\n {this.variant === CoverHeroVariant.STACKED &&\n this.contentPosition === CoverHeroContentPosition.TOP &&\n this.renderContent()}\n <div class=\"main-container\">\n <div class=\"cover-container\">\n <slot name=\"cover\"></slot>\n </div>\n <slot name=\"info-reveal\"></slot>\n {this.variant === CoverHeroVariant.OVERLAY && this.renderContent()}\n </div>\n {this.variant === CoverHeroVariant.STACKED &&\n this.contentPosition === CoverHeroContentPosition.BOTTOM &&\n this.renderContent()}\n </Host>\n );\n }\n}\n"],"mappings":"oGAAA,MAAMA,EAAY,IAAM,6nD,MCgBXC,EAAU,MALvB,WAAAC,CAAAC,G,UAYEC,KAAAC,QAA4BC,EAAiBC,QAM7CH,KAAAI,gBAA4CC,EAAyBC,IASrEN,KAAAO,oBAAsB,IA6CvB,CArCW,SAAAC,EAAUC,OAACA,IACnB,GAAIA,aAAkBC,OAASD,EAAOE,QAAQ,gBAAiB,CAC7D,MAAMC,EAAQH,EAAOI,aAAeJ,EAAOK,cAC3Cd,KAAKe,KAAKC,MAAMC,YAAY,uBAAwBL,EAAMM,W,EAOtD,aAAAC,GACN,OACEC,EAAA,OAAKC,MAAM,qBACTD,EAAA,QAAME,KAAK,Y,CAKjB,MAAAC,GACE,OACEH,EAACI,EAAI,CAAAC,IAAA,4CACFzB,KAAKC,UAAYC,EAAiBwB,SACjC1B,KAAKI,kBAAoBC,EAAyBC,KAClDN,KAAKmB,gBACPC,EAAA,OAAAK,IAAA,2CAAKJ,MAAM,kBACTD,EAAA,OAAAK,IAAA,2CAAKJ,MAAM,mBACTD,EAAA,QAAAK,IAAA,2CAAMH,KAAK,WAEbF,EAAA,QAAAK,IAAA,2CAAMH,KAAK,gBACVtB,KAAKC,UAAYC,EAAiBC,SAAWH,KAAKmB,iBAEpDnB,KAAKC,UAAYC,EAAiBwB,SACjC1B,KAAKI,kBAAoBC,EAAyBsB,QAClD3B,KAAKmB,gB","ignoreList":[]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as t,c as e,h as i,d as o}from"./p-BcDWN4F1.js";import{e as s,I as a,i as r,g as n,l}from"./p-DdetsoIY.js";import{r as c,e as h,b as d}from"./p-DPrEzmhI.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 u=()=>`: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)}: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>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-icon)}: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 m=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:this.isopen?"caret-up":"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.selectedCounter>0&&!e;const s=!e&&(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:!!s},i("span",{class:"option-wrap",role:"presentation",onClick:()=>this.checkOption(t)},i("z-icon",{name:o?"indeterminated-checkbox":e?"checkbox-checked":"checkbox",class:this.focusedItemId===t?"focused":""}),i("span",{id:t,role:s?"presentation":"option","aria-selected":e?"true":"false"},e?this.uncheckalltext:this.checkalltext)))}render(){return i("div",{key:"9f1468b03c1cbe2c12aec68ab8c096b56651ebe2","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}]}}};m.style=p()+u();export{m as z_combobox};
|
|
2
|
-
//# sourceMappingURL=p-6ce99251.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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","isPartiallySelected","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}\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 > 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-icon);\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={this.isopen ? \"caret-up\" : \"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 isPartiallySelected = this.selectedCounter > 0 && !allChecked;\n const isDisabled =\n !allChecked &&\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={isPartiallySelected ? \"indeterminated-checkbox\" : 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":[]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as t,h as o,H as a,d as e}from"./p-BcDWN4F1.js";import{C as r}from"./p-DdetsoIY.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 bottom, transparent, rgb(39 39 39 / 57%) 85%, var(--gray800) 100%);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-6f6cf4eb.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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 bottom, transparent, rgb(39 39 39 / 57%) 85%, var(--gray800) 100%);\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,wvI,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":[]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as t,c as e,h as i,H as n,d as o}from"./p-BcDWN4F1.js";import{U as s,V as a,B as r}from"./p-DdetsoIY.js";const l=()=>`:host{--z-carousel-gutter:0;font-family:var(--font-family-sans);font-weight:var(--font-rg)}:host([single]){display:flex;flex-direction:column;align-items:center;justify-content:center}:host([single]) .z-carousel-container{width:fit-content;max-width:100%}.z-carousel-container{display:flex;flex-direction:column}.z-carousel-title{margin-bottom:calc(var(--space-unit) * 2)}.z-carousel-wrapper{position:relative}.z-carousel-items-container{display:flex;max-width:100%;flex-direction:row;margin:0;box-shadow:var(--z-carousel-items-shadow, none);column-gap:var(--z-carousel-gutter);list-style:none;-ms-overflow-style:none;overflow-x:scroll;padding-inline-start:0;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;}.z-carousel-items-container::-webkit-scrollbar{display:none}.z-carousel-items-container ::slotted(*){scroll-snap-align:center}.z-carousel-navigation-arrow[hidden]{display:none}.z-carousel-navigation-arrow[data-direction]{position:absolute;z-index:1;bottom:50%;transform:translateY(50%)}.z-carousel-navigation-arrow[data-direction="next"]{right:0}:host(:not([fixed-arrows])) .z-carousel-wrapper .z-carousel-navigation-arrow{display:none}.z-carousel-footer{display:flex;flex-direction:row;align-items:center;justify-content:center;column-gap:calc(var(--space-unit) * 3)}:host([arrows-position="bottom"]) .z-carousel-footer{margin-top:calc(var(--space-unit) * 0.75)}.z-carousel-footer .numbers-progress,.z-carousel-footer .dots-progress{display:flex;align-items:center;justify-content:center}.z-carousel-footer .dots-progress{column-gap:calc(var(--space-unit) * 3)}:host(:not([arrows-position="bottom"])) .z-carousel-footer .dots-progress{margin-top:calc(var(--space-unit) * 2)}.z-carousel-footer .dots-progress button{display:flex;width:calc(var(--space-unit) * 3);height:calc(var(--space-unit) * 3);align-items:center;padding:0;border:none;margin:0;background-color:var(--color-surface03);border-radius:calc(var(--space-unit) * 3)}.z-carousel-footer .dots-progress button.current{background-color:var(--color-primary01)}.z-carousel-footer .dots-progress button:focus:focus-visible{box-shadow:var(--shadow-focus-primary);outline:none}.z-carousel-footer .dots-progress button:not(.current){cursor:pointer}.z-carousel-footer .numbers-progress{column-gap:calc(var(--space-unit) / 2)}:host(:not([arrows-position="bottom"])) .z-carousel-footer .numbers-progress{margin-top:var(--space-unit)}.z-carousel-footer .numbers-progress .current{font-weight:var(--font-sb)}@media (min-width: 768px){:host(:not([fixed-arrows])) .z-carousel-wrapper:hover .z-carousel-navigation-arrow:not([hidden]){display:flex}}`;const h=()=>`:root{--font-family-sans:"IBM Plex Sans", sans-serif;--font-family-serif:"IBM Plex Serif", serif;--font-lt:300;--font-rg:400;--font-sb:600;--font-bd:700;--font-size-1:0.75rem;--font-size-2:0.875rem;--font-size-3:1rem;--font-size-4:1.125rem;--font-size-5:1.25rem;--font-size-6:1.5rem;--font-size-7:1.75rem;--font-size-8:2rem;--font-size-9:2.25rem;--font-size-10:2.625rem;--font-size-11:3rem;--font-size-12:3.375rem;--font-size-13:3.75rem;--font-size-14:4.25rem;--font-size-15:4.75rem;--font-size-16:5.25rem;--font-size-17:5.75rem;--section-title-1:var(--font-sb) var(--font-size-11) / 1.083 var(--font-family-serif);--section-title-2:var(--font-sb) var(--font-size-10) / 1.142 var(--font-family-serif);--section-title-3:var(--font-sb) var(--font-size-9) / 1.222 var(--font-family-serif);--section-title-4:var(--font-sb) var(--font-size-8) / 1.25 var(--font-family-serif);--section-title-5:var(--font-sb) var(--font-size-7) / 1.2857 var(--font-family-serif);--section-title-6:var(--font-sb) var(--font-size-6) / 1.333 var(--font-family-serif)}.heading-1,.heading-1-sb,.heading-1-lt{font-size:var(--font-size-7);font-weight:var(--font-rg);line-height:1.28}.heading-2,.heading-2-sb,.heading-2-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.heading-3,.heading-3-sb,.heading-3-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.heading-4,.heading-4-sb,.heading-4-lt{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.body-1,.body-1-sb{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.body-2,.body-2-sb{font-size:var(--font-size-4);font-weight:var(--font-rg);line-height:1.5}.body-3,.body-3-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.body-4,.body-4-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.body-5,.body-5-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.interactive-1,.interactive-1-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.interactive-2,.interactive-2-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.interactive-3,.interactive-3-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.helper,.helper-sb{font-size:var(--font-size-1);font-style:italic;font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.section-title-1{font:var(--section-title-1)}.section-title-2{font:var(--section-title-2)}.section-title-3{font:var(--section-title-3)}.section-title-4{font:var(--section-title-4)}.section-title-5{font:var(--section-title-5)}.section-title-6{font:var(--section-title-6)}@media (min-width: 1152px){.heading-1,.heading-1-sb,.heading-1-lt{font-size:var(--font-size-8);font-weight:var(--font-rg);line-height:1.25}.heading-2,.heading-2-sb,.heading-2-lt{font-size:var(--font-size-7);font-weight:var(--font-rg);line-height:1.28}}@media (max-width: 767px){.mobile-heading-1,.mobile-heading-1-sb,.mobile-heading-1-lt{font-size:var(--font-size-7);font-weight:var(--font-rg);line-height:1.28}.mobile-heading-2,.mobile-heading-2-sb,.mobile-heading-2-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.mobile-heading-3,.mobile-heading-3-sb,.mobile-heading-3-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.mobile-heading-4,.mobile-heading-4-sb,.mobile-heading-4-lt{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.mobile-body-1,.mobile-body-1-sb{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.mobile-body-2,.mobile-body-2-sb{font-size:var(--font-size-4);font-weight:var(--font-rg);line-height:1.5}.mobile-body-3,.mobile-body-3-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.mobile-body-4,.mobile-body-4-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.mobile-body-5,.mobile-body-5-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.mobile-interactive-1,.mobile-interactive-1-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.mobile-interactive-2,.mobile-interactive-2-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.mobile-interactive-3,.mobile-interactive-3-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.mobile-section-title-1{font:var(--section-title-1)}.mobile-section-title-2{font:var(--section-title-2)}.mobile-section-title-3{font:var(--section-title-3)}.mobile-section-title-4{font:var(--section-title-4)}.mobile-section-title-5{font:var(--section-title-5)}.mobile-section-title-6{font:var(--section-title-6)}.mobile-heading-1-lt,.mobile-heading-2-lt,.mobile-heading-3-lt,.mobile-heading-4-lt{font-weight:var(--font-lt)}.mobile-heading-1-sb,.mobile-heading-2-sb,.mobile-heading-3-sb,.mobile-heading-4-sb,.mobile-body-1-sb,.mobile-body-2-sb,.mobile-body-3-sb,.mobile-body-4-sb,.mobile-body-5-sb,.mobile-interactive-1-sb,.mobile-interactive-2-sb,.mobile-interactive-3-sb{font-weight:var(--font-sb)}}@media (min-width: 768px) and (max-width: 1151px){.tablet-heading-1,.tablet-heading-1-sb,.tablet-heading-1-lt{font-size:var(--font-size-7);font-weight:var(--font-rg);line-height:1.28}.tablet-heading-2,.tablet-heading-2-sb,.tablet-heading-2-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.tablet-heading-3,.tablet-heading-3-sb,.tablet-heading-3-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.tablet-heading-4,.tablet-heading-4-sb,.tablet-heading-4-lt{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.tablet-body-1,.tablet-body-1-sb{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.tablet-body-2,.tablet-body-2-sb{font-size:var(--font-size-4);font-weight:var(--font-rg);line-height:1.5}.tablet-body-3,.tablet-body-3-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.tablet-body-4,.tablet-body-4-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.tablet-body-5,.tablet-body-5-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.tablet-interactive-1,.tablet-interactive-1-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.tablet-interactive-2,.tablet-interactive-2-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.tablet-interactive-3,.tablet-interactive-3-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.tablet-section-title-1{font:var(--section-title-1)}.tablet-section-title-2{font:var(--section-title-2)}.tablet-section-title-3{font:var(--section-title-3)}.tablet-section-title-4{font:var(--section-title-4)}.tablet-section-title-5{font:var(--section-title-5)}.tablet-section-title-6{font:var(--section-title-6)}.tablet-heading-1-lt,.tablet-heading-2-lt,.tablet-heading-3-lt,.tablet-heading-4-lt{font-weight:var(--font-lt)}.tablet-heading-1-sb,.tablet-heading-2-sb,.tablet-heading-3-sb,.tablet-heading-4-sb,.tablet-body-1-sb,.tablet-body-2-sb,.tablet-body-3-sb,.tablet-body-4-sb,.tablet-body-5-sb,.tablet-interactive-1-sb,.tablet-interactive-2-sb,.tablet-interactive-3-sb{font-weight:var(--font-sb)}}@media (min-width: 1152px) and (max-width: 1365px){.desktop-heading-1,.desktop-heading-1-sb,.desktop-heading-1-lt{font-size:var(--font-size-8);font-weight:var(--font-rg);line-height:1.25}.desktop-heading-2,.desktop-heading-2-sb,.desktop-heading-2-lt{font-size:var(--font-size-7);font-weight:var(--font-rg);line-height:1.28}.desktop-heading-3,.desktop-heading-3-sb,.desktop-heading-3-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.desktop-heading-4,.desktop-heading-4-sb,.desktop-heading-4-lt{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.desktop-body-1,.desktop-body-1-sb{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.desktop-body-2,.desktop-body-2-sb{font-size:var(--font-size-4);font-weight:var(--font-rg);line-height:1.5}.desktop-body-3,.desktop-body-3-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.desktop-body-4,.desktop-body-4-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.desktop-body-5,.desktop-body-5-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.desktop-interactive-1,.desktop-interactive-1-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.desktop-interactive-2,.desktop-interactive-2-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.desktop-interactive-3,.desktop-interactive-3-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.desktop-section-title-1{font:var(--section-title-1)}.desktop-section-title-2{font:var(--section-title-2)}.desktop-section-title-3{font:var(--section-title-3)}.desktop-section-title-4{font:var(--section-title-4)}.desktop-section-title-5{font:var(--section-title-5)}.desktop-section-title-6{font:var(--section-title-6)}.desktop-heading-1-lt,.desktop-heading-2-lt,.desktop-heading-3-lt,.desktop-heading-4-lt{font-weight:var(--font-lt)}.desktop-heading-1-sb,.desktop-heading-2-sb,.desktop-heading-3-sb,.desktop-heading-4-sb,.desktop-body-1-sb,.desktop-body-2-sb,.desktop-body-3-sb,.desktop-body-4-sb,.desktop-body-5-sb,.desktop-interactive-1-sb,.desktop-interactive-2-sb,.desktop-interactive-3-sb{font-weight:var(--font-sb)}}@media (min-width: 1366px){.wide-heading-1,.wide-heading-1-sb,.wide-heading-1-lt{font-size:var(--font-size-8);font-weight:var(--font-rg);line-height:1.25}.wide-heading-2,.wide-heading-2-sb,.wide-heading-2-lt{font-size:var(--font-size-7);font-weight:var(--font-rg);line-height:1.28}.wide-heading-3,.wide-heading-3-sb,.wide-heading-3-lt{font-size:var(--font-size-6);font-weight:var(--font-rg);line-height:1.333}.wide-heading-4,.wide-heading-4-sb,.wide-heading-4-lt{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.wide-body-1,.wide-body-1-sb{font-size:var(--font-size-5);font-weight:var(--font-rg);line-height:1.4}.wide-body-2,.wide-body-2-sb{font-size:var(--font-size-4);font-weight:var(--font-rg);line-height:1.5}.wide-body-3,.wide-body-3-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.wide-body-4,.wide-body-4-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.wide-body-5,.wide-body-5-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.wide-interactive-1,.wide-interactive-1-sb{font-size:var(--font-size-3);font-weight:var(--font-rg);line-height:1.5}.wide-interactive-2,.wide-interactive-2-sb{font-size:var(--font-size-2);font-weight:var(--font-rg);letter-spacing:0.16px;line-height:1.4}.wide-interactive-3,.wide-interactive-3-sb{font-size:var(--font-size-1);font-weight:var(--font-rg);letter-spacing:0.32px;line-height:1.333}.wide-section-title-1{font:var(--section-title-1)}.wide-section-title-2{font:var(--section-title-2)}.wide-section-title-3{font:var(--section-title-3)}.wide-section-title-4{font:var(--section-title-4)}.wide-section-title-5{font:var(--section-title-5)}.wide-section-title-6{font:var(--section-title-6)}.wide-heading-1-lt,.wide-heading-2-lt,.wide-heading-3-lt,.wide-heading-4-lt{font-weight:var(--font-lt)}.wide-heading-1-sb,.wide-heading-2-sb,.wide-heading-3-sb,.wide-heading-4-sb,.wide-body-1-sb,.wide-body-2-sb,.wide-body-3-sb,.wide-body-4-sb,.wide-body-5-sb,.wide-interactive-1-sb,.wide-interactive-2-sb,.wide-interactive-3-sb{font-weight:var(--font-sb)}}.heading-1-lt,.heading-2-lt,.heading-3-lt,.heading-4-lt{font-weight:var(--font-lt)}.heading-1-sb,.heading-2-sb,.heading-3-sb,.heading-4-sb,.body-1-sb,.body-2-sb,.body-3-sb,.body-4-sb,.body-5-sb,.interactive-1-sb,.interactive-2-sb,.interactive-3-sb,.helper-sb{font-weight:var(--font-sb)}`;const f=class{constructor(i){t(this,i);this.indexChange=e(this,"indexChange",7);this.single=false;this.fixedArrows=true;this.ghostLoadingHeight=100;this.infinite=false;this.current=0;this.scrollingTo=null}onIndexChange(){this.indexChange.emit({currentItem:this.current})}onSingleModeChange(){if(this.single&&!this.intersectionObserver){this.setIntersectionObserver()}}onInfiniteModeChange(){this.checkNavigationValidity()}onLoadingChange(){if(!this.isLoading){this.setupObserversAndListeners()}}setupObserversAndListeners(){var t;this.setupItems();(t=this.itemsContainer)===null||t===void 0?void 0:t.addEventListener("scroll",this.checkNavigationValidity.bind(this),{passive:true});this.resizeObserver=new ResizeObserver(this.checkNavigationValidity.bind(this));this.resizeObserver.observe(this.itemsContainer);if(this.single){this.setIntersectionObserver()}this.checkNavigationValidity()}setIntersectionObserver(){this.intersectionObserver=new IntersectionObserver((t=>{const e=t.find((({isIntersecting:t})=>t));if(!e){return}const i=this.items.findIndex((t=>t===e.target));this.highlightedIndicator=i;if(this.scrollingTo!==null&&i!==this.scrollingTo){return}this.scrollingTo=null;this.current=i}),{root:this.itemsContainer,threshold:.5});this.items.forEach((t=>this.intersectionObserver.observe(t)))}onSlotChange(){this.items=Array.from(this.host.children);this.checkNavigationValidity();this.setIntersectionObserver();this.goTo(this.current)}onPrev(){if(this.single){this.goTo(this.infinite&&this.current-1<0?this.items.length-1:Math.max(0,this.current-1));return}this.itemsContainer.scrollBy({left:this.infinite&&this.itemsContainer.scrollLeft==0?this.itemsContainer.scrollWidth-this.itemsContainer.clientWidth:-this.itemsContainer.clientWidth/2,behavior:"smooth"})}onNext(){if(this.single){const t=this.infinite&&this.current+1>this.items.length-1?0:Math.min(this.current+1,this.items.length-1);return this.goTo(t)}this.itemsContainer.scrollBy({left:this.infinite&&this.itemsContainer.scrollLeft==this.itemsContainer.scrollWidth-this.itemsContainer.clientWidth?-this.itemsContainer.scrollWidth:this.itemsContainer.clientWidth/2,behavior:"smooth"})}checkNavigationValidity(){if(this.single){this.canNavigatePrev=this.current>0;this.canNavigateNext=this.current<this.items.length-1;return}this.canNavigatePrev=this.itemsContainer.scrollLeft>0;this.canNavigateNext=this.itemsContainer.scrollLeft<this.itemsContainer.scrollWidth-this.itemsContainer.clientWidth}canShowFooter(){if(!this.canNavigatePrev&&!this.canNavigateNext){return false}return this.arrowsPosition===s.BOTTOM||this.progressMode===a.DOTS||this.progressMode===a.NUMBERS}goTo(t){if(this.current===t){return}this.scrollingTo=t;const e=this.items.slice(0,t).reduce(((t,e)=>t+=e.clientWidth),0);this.itemsContainer.scroll({left:e,behavior:"smooth"})}get canNavigate(){return this.canNavigatePrev||this.canNavigateNext}setupItems(){this.items=Array.from(this.host.children);this.items.forEach((t=>{t.setAttribute("aria-roledescription","slide")}))}componentDidLoad(){if(this.isLoading){return}this.setupObserversAndListeners()}disconnectedCallback(){var t;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect()}render(){if(this.isLoading){return i("div",{class:"z-carousel-container"},this.label&&i("div",{class:"heading-3-sb z-carousel-title"},this.label),i("div",{style:{height:`${this.ghostLoadingHeight}px`}},i("z-ghost-loading",null)))}return i(n,null,i("div",{class:"z-carousel-container","aria-roledescription":"carousel","aria-label":this.label||"Carousel"},this.label&&i("div",{class:"z-carousel-title heading-3-sb"},this.label),i("div",{class:"z-carousel-wrapper"},i("z-button",{class:"z-carousel-navigation-arrow",variant:r.SECONDARY,"data-direction":"prev",icon:"arrow-left",onClick:this.onPrev.bind(this),disabled:!this.infinite&&!this.canNavigatePrev,hidden:this.arrowsPosition!==s.OVER||!this.canNavigate,ariaLabel:this.single?"Mostra l'elemento precedente":"Mostra gli elementi precedenti"}),i("ul",{class:"z-carousel-items-container","aria-atomic":"false","aria-live":"polite",ref:t=>this.itemsContainer=t},i("slot",{onSlotchange:this.onSlotChange.bind(this)})),i("z-button",{class:"z-carousel-navigation-arrow",variant:r.SECONDARY,"data-direction":"next",icon:"arrow-right",onClick:this.onNext.bind(this),disabled:!this.infinite&&!this.canNavigateNext,hidden:this.arrowsPosition!==s.OVER||!this.canNavigate,ariaLabel:this.single?"Mostra l'elemento successivo":"Mostra gli elementi successivi"}))),this.canShowFooter()&&i("div",{class:"z-carousel-footer"},this.arrowsPosition===s.BOTTOM&&i("z-button",{class:"z-carousel-navigation-arrow",variant:r.TERTIARY,icon:"arrow-left",onClick:this.onPrev.bind(this),disabled:!this.infinite&&!this.canNavigatePrev,ariaLabel:this.single?"Mostra l'elemento precedente":"Mostra gli elementi precedenti"}),this.progressMode===a.DOTS&&this.single&&this.items&&i("div",{class:"dots-progress"},this.items.map(((t,e)=>i("button",{type:"button",class:{current:this.highlightedIndicator===e},"aria-label":this.highlightedIndicator===e?"Elemento corrente":`Spostati all'elemento ${e+1}`,onClick:()=>this.goTo(e)})))),this.progressMode===a.NUMBERS&&this.single&&this.items&&i("div",{class:"numbers-progress interactive-1"},i("span",{class:"current"},this.current+1),i("span",null,"di"),i("span",null,this.items.length)),this.arrowsPosition===s.BOTTOM&&i("z-button",{class:"z-carousel-navigation-arrow",variant:r.TERTIARY,icon:"arrow-right",onClick:this.onNext.bind(this),disabled:!this.infinite&&!this.canNavigateNext,ariaLabel:this.single?"Mostra l'elemento successivo":"Mostra gli elementi successivi"})))}get host(){return o(this)}static get watchers(){return{current:[{onIndexChange:0}],single:[{onSingleModeChange:0}],infinite:[{onInfiniteModeChange:0}],isLoading:[{onLoadingChange:0}]}}};f.style=l()+h();export{f as z_carousel};
|
|
2
|
-
//# sourceMappingURL=p-791a76d6.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["stylesCss","typographyCss","ZCarousel","constructor","hostRef","this","single","fixedArrows","ghostLoadingHeight","infinite","current","scrollingTo","onIndexChange","indexChange","emit","currentItem","onSingleModeChange","intersectionObserver","setIntersectionObserver","onInfiniteModeChange","checkNavigationValidity","onLoadingChange","isLoading","setupObserversAndListeners","setupItems","_a","itemsContainer","addEventListener","bind","passive","resizeObserver","ResizeObserver","observe","IntersectionObserver","entries","entry","find","isIntersecting","entryIndex","items","findIndex","item","target","highlightedIndicator","root","threshold","forEach","element","onSlotChange","Array","from","host","children","goTo","onPrev","length","Math","max","scrollBy","left","scrollLeft","scrollWidth","clientWidth","behavior","onNext","next","min","canNavigatePrev","canNavigateNext","canShowFooter","arrowsPosition","CarouselArrowsPosition","BOTTOM","progressMode","CarouselProgressMode","DOTS","NUMBERS","index","slice","reduce","acc","scroll","canNavigate","setAttribute","componentDidLoad","disconnectedCallback","disconnect","render","h","class","label","style","height","Host","variant","ButtonVariant","SECONDARY","icon","onClick","disabled","hidden","OVER","ariaLabel","ref","el","onSlotchange","TERTIARY","map","_","type"],"sources":["src/components/z-carousel/styles.css?tag=z-carousel&encapsulation=shadow","src/tokens/typography.css?tag=z-carousel&encapsulation=shadow","src/components/z-carousel/index.tsx"],"sourcesContent":[":host {\n /**\n * @prop --z-carousel-gutter: The gutter between items.\n * @prop --z-carousel-items-shadow: The shadow around the items.\n */\n --z-carousel-gutter: 0;\n --z-carousel-items-shadow: ;\n\n font-family: var(--font-family-sans);\n font-weight: var(--font-rg);\n}\n\n:host([single]) {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n}\n\n:host([single]) .z-carousel-container {\n width: fit-content;\n max-width: 100%;\n}\n\n.z-carousel-container {\n display: flex;\n flex-direction: column;\n}\n\n.z-carousel-title {\n margin-bottom: calc(var(--space-unit) * 2);\n}\n\n.z-carousel-wrapper {\n position: relative;\n}\n\n.z-carousel-items-container {\n display: flex;\n max-width: 100%;\n flex-direction: row;\n margin: 0;\n box-shadow: var(--z-carousel-items-shadow, none);\n column-gap: var(--z-carousel-gutter);\n list-style: none;\n -ms-overflow-style: none; /* IE and Edge */\n overflow-x: scroll;\n padding-inline-start: 0;\n scroll-behavior: smooth;\n scroll-snap-type: x mandatory;\n\n /* Hide scrollbar for IE, Edge and Firefox */\n scrollbar-width: none; /* Firefox */\n}\n\n/* Hide scrollbar for Chrome, Safari and Opera */\n.z-carousel-items-container::-webkit-scrollbar {\n display: none;\n}\n\n.z-carousel-items-container ::slotted(*) {\n scroll-snap-align: center;\n}\n\n.z-carousel-navigation-arrow[hidden] {\n display: none;\n}\n\n.z-carousel-navigation-arrow[data-direction] {\n position: absolute;\n z-index: 1;\n bottom: 50%;\n transform: translateY(50%);\n}\n\n.z-carousel-navigation-arrow[data-direction=\"next\"] {\n right: 0;\n}\n\n:host(:not([fixed-arrows])) .z-carousel-wrapper .z-carousel-navigation-arrow {\n display: none;\n}\n\n.z-carousel-footer {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n column-gap: calc(var(--space-unit) * 3);\n}\n\n:host([arrows-position=\"bottom\"]) .z-carousel-footer {\n margin-top: calc(var(--space-unit) * 0.75);\n}\n\n.z-carousel-footer .numbers-progress,\n.z-carousel-footer .dots-progress {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.z-carousel-footer .dots-progress {\n column-gap: calc(var(--space-unit) * 3);\n}\n\n:host(:not([arrows-position=\"bottom\"])) .z-carousel-footer .dots-progress {\n margin-top: calc(var(--space-unit) * 2);\n}\n\n.z-carousel-footer .dots-progress button {\n display: flex;\n width: calc(var(--space-unit) * 3);\n height: calc(var(--space-unit) * 3);\n align-items: center;\n padding: 0;\n border: none;\n margin: 0;\n background-color: var(--color-surface03);\n border-radius: calc(var(--space-unit) * 3);\n}\n\n.z-carousel-footer .dots-progress button.current {\n background-color: var(--color-primary01);\n}\n\n.z-carousel-footer .dots-progress button:focus:focus-visible {\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n\n.z-carousel-footer .dots-progress button:not(.current) {\n cursor: pointer;\n}\n\n.z-carousel-footer .numbers-progress {\n column-gap: calc(var(--space-unit) / 2);\n}\n\n:host(:not([arrows-position=\"bottom\"])) .z-carousel-footer .numbers-progress {\n margin-top: var(--space-unit);\n}\n\n.z-carousel-footer .numbers-progress .current {\n font-weight: var(--font-sb);\n}\n\n@media (min-width: 768px) {\n :host(:not([fixed-arrows])) .z-carousel-wrapper:hover .z-carousel-navigation-arrow:not([hidden]) {\n display: flex;\n }\n}\n",":root {\n /* font-family */\n --font-family-sans: \"IBM Plex Sans\", sans-serif;\n --font-family-serif: \"IBM Plex Serif\", serif;\n\n /* font-weight */\n --font-lt: 300;\n --font-rg: 400;\n --font-sb: 600;\n --font-bd: 700;\n\n /* font-size type scale */\n --font-size-1: 0.75rem; /* 12px */\n --font-size-2: 0.875rem; /* 14px */\n --font-size-3: 1rem; /* assuming 16px */\n --font-size-4: 1.125rem; /* 18px */\n --font-size-5: 1.25rem; /* 20px */\n --font-size-6: 1.5rem; /* 24px */\n --font-size-7: 1.75rem; /* 28px */\n --font-size-8: 2rem; /* 32px */\n --font-size-9: 2.25rem; /* 36px */\n --font-size-10: 2.625rem; /* 42px */\n --font-size-11: 3rem; /* 48px */\n --font-size-12: 3.375rem; /* 54px */\n --font-size-13: 3.75rem; /* 60px */\n --font-size-14: 4.25rem; /* 68px */\n --font-size-15: 4.75rem; /* 76px */\n --font-size-16: 5.25rem; /* 84px */\n --font-size-17: 5.75rem; /* 92px */\n\n /* cssprops to use with `font` shorthand property */\n --section-title-1: var(--font-sb) var(--font-size-11) / 1.083 var(--font-family-serif);\n --section-title-2: var(--font-sb) var(--font-size-10) / 1.142 var(--font-family-serif);\n --section-title-3: var(--font-sb) var(--font-size-9) / 1.222 var(--font-family-serif);\n --section-title-4: var(--font-sb) var(--font-size-8) / 1.25 var(--font-family-serif);\n --section-title-5: var(--font-sb) var(--font-size-7) / 1.2857 var(--font-family-serif);\n --section-title-6: var(--font-sb) var(--font-size-6) / 1.333 var(--font-family-serif);\n}\n\n/* Typography classes */\n.heading-1,\n.heading-1-sb,\n.heading-1-lt {\n font-size: var(--font-size-7);\n font-weight: var(--font-rg);\n line-height: 1.28;\n}\n\n.heading-2,\n.heading-2-sb,\n.heading-2-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n}\n\n.heading-3,\n.heading-3-sb,\n.heading-3-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n}\n\n.heading-4,\n.heading-4-sb,\n.heading-4-lt {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n}\n\n.body-1,\n.body-1-sb {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n}\n\n.body-2,\n.body-2-sb {\n font-size: var(--font-size-4);\n font-weight: var(--font-rg);\n line-height: 1.5;\n}\n\n.body-3,\n.body-3-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n}\n\n.body-4,\n.body-4-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n}\n\n.body-5,\n.body-5-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n}\n\n.interactive-1,\n.interactive-1-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n}\n\n.interactive-2,\n.interactive-2-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n}\n\n.interactive-3,\n.interactive-3-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n}\n\n.helper,\n.helper-sb {\n font-size: var(--font-size-1);\n font-style: italic;\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n}\n\n/* section title */\n.section-title-1 {\n font: var(--section-title-1);\n}\n\n.section-title-2 {\n font: var(--section-title-2);\n}\n\n.section-title-3 {\n font: var(--section-title-3);\n}\n\n.section-title-4 {\n font: var(--section-title-4);\n}\n\n.section-title-5 {\n font: var(--section-title-5);\n}\n\n.section-title-6 {\n font: var(--section-title-6);\n}\n\n/* heading-1/2 for desktop and wide viewports */\n@media (min-width: 1152px) {\n .heading-1,\n .heading-1-sb,\n .heading-1-lt {\n font-size: var(--font-size-8);\n font-weight: var(--font-rg);\n line-height: 1.25;\n }\n\n .heading-2,\n .heading-2-sb,\n .heading-2-lt {\n font-size: var(--font-size-7);\n font-weight: var(--font-rg);\n line-height: 1.28;\n }\n}\n\n/* viewport classes */\n@media (max-width: 767px) {\n .mobile-heading-1,\n .mobile-heading-1-sb,\n .mobile-heading-1-lt {\n font-size: var(--font-size-7);\n font-weight: var(--font-rg);\n line-height: 1.28;\n }\n\n .mobile-heading-2,\n .mobile-heading-2-sb,\n .mobile-heading-2-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n }\n\n .mobile-heading-3,\n .mobile-heading-3-sb,\n .mobile-heading-3-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n }\n\n .mobile-heading-4,\n .mobile-heading-4-sb,\n .mobile-heading-4-lt {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .mobile-body-1,\n .mobile-body-1-sb {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .mobile-body-2,\n .mobile-body-2-sb {\n font-size: var(--font-size-4);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .mobile-body-3,\n .mobile-body-3-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .mobile-body-4,\n .mobile-body-4-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .mobile-body-5,\n .mobile-body-5-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .mobile-interactive-1,\n .mobile-interactive-1-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .mobile-interactive-2,\n .mobile-interactive-2-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .mobile-interactive-3,\n .mobile-interactive-3-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .mobile-section-title-1 {\n font: var(--section-title-1);\n }\n\n .mobile-section-title-2 {\n font: var(--section-title-2);\n }\n\n .mobile-section-title-3 {\n font: var(--section-title-3);\n }\n\n .mobile-section-title-4 {\n font: var(--section-title-4);\n }\n\n .mobile-section-title-5 {\n font: var(--section-title-5);\n }\n\n .mobile-section-title-6 {\n font: var(--section-title-6);\n }\n\n .mobile-heading-1-lt,\n .mobile-heading-2-lt,\n .mobile-heading-3-lt,\n .mobile-heading-4-lt {\n font-weight: var(--font-lt);\n }\n\n .mobile-heading-1-sb,\n .mobile-heading-2-sb,\n .mobile-heading-3-sb,\n .mobile-heading-4-sb,\n .mobile-body-1-sb,\n .mobile-body-2-sb,\n .mobile-body-3-sb,\n .mobile-body-4-sb,\n .mobile-body-5-sb,\n .mobile-interactive-1-sb,\n .mobile-interactive-2-sb,\n .mobile-interactive-3-sb {\n font-weight: var(--font-sb);\n }\n}\n\n@media (min-width: 768px) and (max-width: 1151px) {\n .tablet-heading-1,\n .tablet-heading-1-sb,\n .tablet-heading-1-lt {\n font-size: var(--font-size-7);\n font-weight: var(--font-rg);\n line-height: 1.28;\n }\n\n .tablet-heading-2,\n .tablet-heading-2-sb,\n .tablet-heading-2-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n }\n\n .tablet-heading-3,\n .tablet-heading-3-sb,\n .tablet-heading-3-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n }\n\n .tablet-heading-4,\n .tablet-heading-4-sb,\n .tablet-heading-4-lt {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .tablet-body-1,\n .tablet-body-1-sb {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .tablet-body-2,\n .tablet-body-2-sb {\n font-size: var(--font-size-4);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .tablet-body-3,\n .tablet-body-3-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .tablet-body-4,\n .tablet-body-4-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .tablet-body-5,\n .tablet-body-5-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .tablet-interactive-1,\n .tablet-interactive-1-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .tablet-interactive-2,\n .tablet-interactive-2-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .tablet-interactive-3,\n .tablet-interactive-3-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .tablet-section-title-1 {\n font: var(--section-title-1);\n }\n\n .tablet-section-title-2 {\n font: var(--section-title-2);\n }\n\n .tablet-section-title-3 {\n font: var(--section-title-3);\n }\n\n .tablet-section-title-4 {\n font: var(--section-title-4);\n }\n\n .tablet-section-title-5 {\n font: var(--section-title-5);\n }\n\n .tablet-section-title-6 {\n font: var(--section-title-6);\n }\n\n .tablet-heading-1-lt,\n .tablet-heading-2-lt,\n .tablet-heading-3-lt,\n .tablet-heading-4-lt {\n font-weight: var(--font-lt);\n }\n\n .tablet-heading-1-sb,\n .tablet-heading-2-sb,\n .tablet-heading-3-sb,\n .tablet-heading-4-sb,\n .tablet-body-1-sb,\n .tablet-body-2-sb,\n .tablet-body-3-sb,\n .tablet-body-4-sb,\n .tablet-body-5-sb,\n .tablet-interactive-1-sb,\n .tablet-interactive-2-sb,\n .tablet-interactive-3-sb {\n font-weight: var(--font-sb);\n }\n}\n\n@media (min-width: 1152px) and (max-width: 1365px) {\n .desktop-heading-1,\n .desktop-heading-1-sb,\n .desktop-heading-1-lt {\n font-size: var(--font-size-8);\n font-weight: var(--font-rg);\n line-height: 1.25;\n }\n\n .desktop-heading-2,\n .desktop-heading-2-sb,\n .desktop-heading-2-lt {\n font-size: var(--font-size-7);\n font-weight: var(--font-rg);\n line-height: 1.28;\n }\n\n .desktop-heading-3,\n .desktop-heading-3-sb,\n .desktop-heading-3-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n }\n\n .desktop-heading-4,\n .desktop-heading-4-sb,\n .desktop-heading-4-lt {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .desktop-body-1,\n .desktop-body-1-sb {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .desktop-body-2,\n .desktop-body-2-sb {\n font-size: var(--font-size-4);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .desktop-body-3,\n .desktop-body-3-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .desktop-body-4,\n .desktop-body-4-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .desktop-body-5,\n .desktop-body-5-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .desktop-interactive-1,\n .desktop-interactive-1-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .desktop-interactive-2,\n .desktop-interactive-2-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .desktop-interactive-3,\n .desktop-interactive-3-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .desktop-section-title-1 {\n font: var(--section-title-1);\n }\n\n .desktop-section-title-2 {\n font: var(--section-title-2);\n }\n\n .desktop-section-title-3 {\n font: var(--section-title-3);\n }\n\n .desktop-section-title-4 {\n font: var(--section-title-4);\n }\n\n .desktop-section-title-5 {\n font: var(--section-title-5);\n }\n\n .desktop-section-title-6 {\n font: var(--section-title-6);\n }\n\n .desktop-heading-1-lt,\n .desktop-heading-2-lt,\n .desktop-heading-3-lt,\n .desktop-heading-4-lt {\n font-weight: var(--font-lt);\n }\n\n .desktop-heading-1-sb,\n .desktop-heading-2-sb,\n .desktop-heading-3-sb,\n .desktop-heading-4-sb,\n .desktop-body-1-sb,\n .desktop-body-2-sb,\n .desktop-body-3-sb,\n .desktop-body-4-sb,\n .desktop-body-5-sb,\n .desktop-interactive-1-sb,\n .desktop-interactive-2-sb,\n .desktop-interactive-3-sb {\n font-weight: var(--font-sb);\n }\n}\n\n@media (min-width: 1366px) {\n .wide-heading-1,\n .wide-heading-1-sb,\n .wide-heading-1-lt {\n font-size: var(--font-size-8);\n font-weight: var(--font-rg);\n line-height: 1.25;\n }\n\n .wide-heading-2,\n .wide-heading-2-sb,\n .wide-heading-2-lt {\n font-size: var(--font-size-7);\n font-weight: var(--font-rg);\n line-height: 1.28;\n }\n\n .wide-heading-3,\n .wide-heading-3-sb,\n .wide-heading-3-lt {\n font-size: var(--font-size-6);\n font-weight: var(--font-rg);\n line-height: 1.333;\n }\n\n .wide-heading-4,\n .wide-heading-4-sb,\n .wide-heading-4-lt {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .wide-body-1,\n .wide-body-1-sb {\n font-size: var(--font-size-5);\n font-weight: var(--font-rg);\n line-height: 1.4;\n }\n\n .wide-body-2,\n .wide-body-2-sb {\n font-size: var(--font-size-4);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .wide-body-3,\n .wide-body-3-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .wide-body-4,\n .wide-body-4-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .wide-body-5,\n .wide-body-5-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .wide-interactive-1,\n .wide-interactive-1-sb {\n font-size: var(--font-size-3);\n font-weight: var(--font-rg);\n line-height: 1.5;\n }\n\n .wide-interactive-2,\n .wide-interactive-2-sb {\n font-size: var(--font-size-2);\n font-weight: var(--font-rg);\n letter-spacing: 0.16px;\n line-height: 1.4;\n }\n\n .wide-interactive-3,\n .wide-interactive-3-sb {\n font-size: var(--font-size-1);\n font-weight: var(--font-rg);\n letter-spacing: 0.32px;\n line-height: 1.333;\n }\n\n .wide-section-title-1 {\n font: var(--section-title-1);\n }\n\n .wide-section-title-2 {\n font: var(--section-title-2);\n }\n\n .wide-section-title-3 {\n font: var(--section-title-3);\n }\n\n .wide-section-title-4 {\n font: var(--section-title-4);\n }\n\n .wide-section-title-5 {\n font: var(--section-title-5);\n }\n\n .wide-section-title-6 {\n font: var(--section-title-6);\n }\n\n .wide-heading-1-lt,\n .wide-heading-2-lt,\n .wide-heading-3-lt,\n .wide-heading-4-lt {\n font-weight: var(--font-lt);\n }\n\n .wide-heading-1-sb,\n .wide-heading-2-sb,\n .wide-heading-3-sb,\n .wide-heading-4-sb,\n .wide-body-1-sb,\n .wide-body-2-sb,\n .wide-body-3-sb,\n .wide-body-4-sb,\n .wide-body-5-sb,\n .wide-interactive-1-sb,\n .wide-interactive-2-sb,\n .wide-interactive-3-sb {\n font-weight: var(--font-sb);\n }\n}\n\n/* font-weight variants */\n.heading-1-lt,\n.heading-2-lt,\n.heading-3-lt,\n.heading-4-lt {\n font-weight: var(--font-lt);\n}\n\n.heading-1-sb,\n.heading-2-sb,\n.heading-3-sb,\n.heading-4-sb,\n.body-1-sb,\n.body-2-sb,\n.body-3-sb,\n.body-4-sb,\n.body-5-sb,\n.interactive-1-sb,\n.interactive-2-sb,\n.interactive-3-sb,\n.helper-sb {\n font-weight: var(--font-sb);\n}\n","import {Component, ComponentInterface, Element, Event, EventEmitter, Host, Prop, State, Watch, h} from \"@stencil/core\";\nimport {ButtonVariant, CarouselArrowsPosition, CarouselProgressMode} from \"../../beans\";\n\n/**\n * ZCarousel component.\n * @slot - Carousel items. Use `<li>` elements inside this slot.\n */\n@Component({\n tag: \"z-carousel\",\n styleUrls: [\"styles.css\", \"../../tokens/typography.css\"],\n shadow: true,\n})\nexport class ZCarousel implements ComponentInterface {\n @Element() host: HTMLZCarouselElement;\n\n /** The z-carousel is on loading state */\n @Prop()\n isLoading: boolean;\n\n /** The z-carousel title */\n @Prop()\n label?: string;\n\n /** Shows only one content at a time */\n @Prop({reflect: true})\n single = false;\n\n /** Arrow buttons position */\n @Prop({reflect: true})\n arrowsPosition?: CarouselArrowsPosition;\n\n /** Progress indicator type. Only available for `single` mode */\n @Prop()\n progressMode?: CarouselProgressMode;\n\n /**\n * Whether the navigation arrow buttons over the items are always visible or only on mouse hover.\n * If set to `false`, the arrows will not be visible on mobile.\n * Only meaningful with `arrowsPosition` set to `OVER`.\n */\n @Prop({reflect: true})\n fixedArrows = true;\n\n /** The height of the ghost loader (only visible when `isLoading` is set to `true`) */\n @Prop()\n ghostLoadingHeight = 100;\n\n /** When enabled, navigating next the last item will go back to the first item and vice versa. */\n @Prop()\n infinite = false;\n\n /** Current item index for single mode. */\n @State()\n current = 0;\n\n /** Items on the slider. */\n @State()\n items: HTMLLIElement[];\n\n /** Index of the indicator to highlight. */\n @State()\n highlightedIndicator: number;\n\n @State()\n canNavigatePrev: boolean;\n\n @State()\n canNavigateNext: boolean;\n\n /** Reference for the items container element. */\n protected itemsContainer: HTMLUListElement;\n\n /** Observer that handles current index change when scrolling on single mode. */\n private intersectionObserver: IntersectionObserver;\n\n /** Observer to check if navigation can still be enabled/showed when the size of the items' container changes */\n private resizeObserver: ResizeObserver;\n\n /** Flag indicating the items container is about to scroll programmatically towards the stored index. */\n private scrollingTo: number = null;\n\n /** Emitted on index change and only in `single` mode. */\n @Event()\n indexChange: EventEmitter<{currentItem: number}>;\n\n @Watch(\"current\")\n onIndexChange(): void {\n this.indexChange.emit({currentItem: this.current});\n }\n\n @Watch(\"single\")\n onSingleModeChange(): void {\n if (this.single && !this.intersectionObserver) {\n this.setIntersectionObserver();\n }\n }\n\n @Watch(\"infinite\")\n onInfiniteModeChange(): void {\n this.checkNavigationValidity();\n }\n\n @Watch(\"isLoading\")\n onLoadingChange(): void {\n if (!this.isLoading) {\n // when loading is finished, we need to set up things with the real items that were not present during the loading phase\n this.setupObserversAndListeners();\n }\n }\n\n /** Set up all observers and listeners related to the rendered items. */\n private setupObserversAndListeners(): void {\n this.setupItems();\n this.itemsContainer?.addEventListener(\"scroll\", this.checkNavigationValidity.bind(this), {passive: true});\n this.resizeObserver = new ResizeObserver(this.checkNavigationValidity.bind(this));\n this.resizeObserver.observe(this.itemsContainer);\n if (this.single) {\n this.setIntersectionObserver();\n }\n this.checkNavigationValidity();\n }\n\n /**\n * Set an intersection observer to:\n * - highlight the indicator of the intersecting item during scroll\n * - set the current item to the last intersecting item\n */\n private setIntersectionObserver(): void {\n this.intersectionObserver = new IntersectionObserver(\n (entries) => {\n const entry = entries.find(({isIntersecting}) => isIntersecting);\n if (!entry) {\n return;\n }\n\n const entryIndex = this.items.findIndex((item) => item === entry.target);\n this.highlightedIndicator = entryIndex;\n\n /* skip setting the current item if intersection has been triggered by a programmatic scroll\n (@see `goTo` function) and the final index has not been reached */\n if (this.scrollingTo !== null && entryIndex !== this.scrollingTo) {\n return;\n }\n\n this.scrollingTo = null;\n this.current = entryIndex;\n },\n {\n root: this.itemsContainer,\n threshold: 0.5,\n }\n );\n\n this.items.forEach((element) => this.intersectionObserver.observe(element));\n }\n\n /** Update items' list and check conditions to allow navigation */\n private onSlotChange(): void {\n this.items = Array.from(this.host.children) as HTMLLIElement[];\n this.checkNavigationValidity();\n this.setIntersectionObserver();\n this.goTo(this.current);\n }\n\n private onPrev(): void {\n if (this.single) {\n this.goTo(this.infinite && this.current - 1 < 0 ? this.items.length - 1 : Math.max(0, this.current - 1));\n\n return;\n }\n\n this.itemsContainer.scrollBy({\n left:\n this.infinite && this.itemsContainer.scrollLeft == 0\n ? this.itemsContainer.scrollWidth - this.itemsContainer.clientWidth\n : -this.itemsContainer.clientWidth / 2,\n behavior: \"smooth\",\n });\n }\n\n private onNext(): void {\n if (this.single) {\n const next =\n this.infinite && this.current + 1 > this.items.length - 1\n ? 0\n : Math.min(this.current + 1, this.items.length - 1);\n\n return this.goTo(next);\n }\n\n this.itemsContainer.scrollBy({\n left:\n this.infinite &&\n this.itemsContainer.scrollLeft == this.itemsContainer.scrollWidth - this.itemsContainer.clientWidth\n ? -this.itemsContainer.scrollWidth\n : this.itemsContainer.clientWidth / 2,\n behavior: \"smooth\",\n });\n }\n\n /**\n * Check if navigation buttons can be enabled and set the related local states.\n */\n private checkNavigationValidity(): void {\n if (this.single) {\n this.canNavigatePrev = this.current > 0;\n this.canNavigateNext = this.current < this.items.length - 1;\n\n return;\n }\n\n this.canNavigatePrev = this.itemsContainer.scrollLeft > 0;\n this.canNavigateNext =\n this.itemsContainer.scrollLeft < this.itemsContainer.scrollWidth - this.itemsContainer.clientWidth;\n }\n\n /**\n * Check if footer has to be rendered.\n */\n private canShowFooter(): boolean {\n if (!this.canNavigatePrev && !this.canNavigateNext) {\n return false;\n }\n\n return (\n this.arrowsPosition === CarouselArrowsPosition.BOTTOM ||\n this.progressMode === CarouselProgressMode.DOTS ||\n this.progressMode === CarouselProgressMode.NUMBERS\n );\n }\n\n /**\n * Set current item to passed index.\n * @param index Index to set\n */\n private goTo(index: number): void {\n if (this.current === index) {\n return;\n }\n\n this.scrollingTo = index;\n const left = this.items.slice(0, index).reduce((acc, item) => (acc += item.clientWidth), 0);\n // the scroll will trigger the IntersectionObserver and set the current item\n this.itemsContainer.scroll({\n left,\n behavior: \"smooth\",\n });\n }\n\n /** Check if navigation of at least one direction is enabled */\n private get canNavigate(): boolean {\n return this.canNavigatePrev || this.canNavigateNext;\n }\n\n private setupItems(): void {\n this.items = Array.from(this.host.children) as HTMLLIElement[];\n this.items.forEach((item) => {\n item.setAttribute(\"aria-roledescription\", \"slide\");\n });\n }\n\n componentDidLoad(): void {\n if (this.isLoading) {\n return;\n }\n\n this.setupObserversAndListeners();\n }\n\n disconnectedCallback(): void {\n this.resizeObserver?.disconnect();\n }\n\n render(): HTMLDivElement | HTMLZCarouselElement {\n if (this.isLoading) {\n return (\n <div class=\"z-carousel-container\">\n {this.label && <div class=\"heading-3-sb z-carousel-title\">{this.label}</div>}\n <div style={{height: `${this.ghostLoadingHeight}px`}}>\n <z-ghost-loading></z-ghost-loading>\n </div>\n </div>\n );\n }\n\n return (\n <Host>\n <div\n class=\"z-carousel-container\"\n aria-roledescription=\"carousel\"\n aria-label={this.label || \"Carousel\"}\n >\n {this.label && <div class=\"z-carousel-title heading-3-sb\">{this.label}</div>}\n <div class=\"z-carousel-wrapper\">\n <z-button\n class=\"z-carousel-navigation-arrow\"\n variant={ButtonVariant.SECONDARY}\n data-direction=\"prev\"\n icon=\"arrow-left\"\n onClick={this.onPrev.bind(this)}\n disabled={!this.infinite && !this.canNavigatePrev}\n hidden={this.arrowsPosition !== CarouselArrowsPosition.OVER || !this.canNavigate}\n ariaLabel={this.single ? \"Mostra l'elemento precedente\" : \"Mostra gli elementi precedenti\"}\n />\n <ul\n class=\"z-carousel-items-container\"\n aria-atomic=\"false\"\n aria-live=\"polite\"\n ref={(el) => (this.itemsContainer = el)}\n >\n <slot onSlotchange={this.onSlotChange.bind(this)} />\n </ul>\n <z-button\n class=\"z-carousel-navigation-arrow\"\n variant={ButtonVariant.SECONDARY}\n data-direction=\"next\"\n icon=\"arrow-right\"\n onClick={this.onNext.bind(this)}\n disabled={!this.infinite && !this.canNavigateNext}\n hidden={this.arrowsPosition !== CarouselArrowsPosition.OVER || !this.canNavigate}\n ariaLabel={this.single ? \"Mostra l'elemento successivo\" : \"Mostra gli elementi successivi\"}\n />\n </div>\n </div>\n\n {this.canShowFooter() && (\n <div class=\"z-carousel-footer\">\n {this.arrowsPosition === CarouselArrowsPosition.BOTTOM && (\n <z-button\n class=\"z-carousel-navigation-arrow\"\n variant={ButtonVariant.TERTIARY}\n icon=\"arrow-left\"\n onClick={this.onPrev.bind(this)}\n disabled={!this.infinite && !this.canNavigatePrev}\n ariaLabel={this.single ? \"Mostra l'elemento precedente\" : \"Mostra gli elementi precedenti\"}\n />\n )}\n {this.progressMode === CarouselProgressMode.DOTS && this.single && this.items && (\n <div class=\"dots-progress\">\n {this.items.map((_, index) => (\n <button\n type=\"button\"\n class={{current: this.highlightedIndicator === index}}\n aria-label={\n this.highlightedIndicator === index ? \"Elemento corrente\" : `Spostati all'elemento ${index + 1}`\n }\n onClick={() => this.goTo(index)}\n />\n ))}\n </div>\n )}\n {this.progressMode === CarouselProgressMode.NUMBERS && this.single && this.items && (\n <div class=\"numbers-progress interactive-1\">\n <span class=\"current\">{this.current + 1}</span>\n <span>di</span>\n <span>{this.items.length}</span>\n </div>\n )}\n {this.arrowsPosition === CarouselArrowsPosition.BOTTOM && (\n <z-button\n class=\"z-carousel-navigation-arrow\"\n variant={ButtonVariant.TERTIARY}\n icon=\"arrow-right\"\n onClick={this.onNext.bind(this)}\n disabled={!this.infinite && !this.canNavigateNext}\n ariaLabel={this.single ? \"Mostra l'elemento successivo\" : \"Mostra gli elementi successivi\"}\n />\n )}\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as i,c,h as r,d as o}from"./p-BcDWN4F1.js";import{x as a,y as e}from"./p-DdetsoIY.js";const h=()=>`.sc-z-chip-h,.sc-z-chip-h *.sc-z-chip{box-sizing:border-box}.sc-z-chip-h{display:block}.sc-z-chip-h>.z-chip-container.sc-z-chip{display:inline-flex;min-height:28px;align-items:center;padding:0 calc(var(--space-unit) * 2);border:var(--border-size-small) solid var(--color-surface03);background-color:var(--color-surface01);border-radius:14px;color:var(--color-primary01);fill:var(--color-default-icon);font-family:var(--font-family-sans);font-size:14px;font-weight:var(--font-sb);gap:var(--space-unit);line-height:1}.sc-z-chip-h>.z-chip-container.sc-z-chip>button.sc-z-chip{position:relative;display:flex;width:28px;height:28px;align-items:center;justify-content:center;padding:0;border:none;background-color:transparent;border-radius:50%;cursor:pointer}.sc-z-chip-h>.z-chip-container.sc-z-chip .interactive-icon.sc-z-chip{fill:var(--color-primary01)}.sc-z-chip-h>.z-chip-container.sc-z-chip:not([aria-disabled]) button.sc-z-chip:hover .interactive-icon.sc-z-chip{color:var(--color-hover-primary);fill:var(--color-hover-primary)}.sc-z-chip-h>.z-chip-container.filled.sc-z-chip{border-color:transparent;background-color:var(--color-primary01);color:var(--color-text-inverse);fill:var(--color-inverse-icon)}.sc-z-chip-h>.z-chip-container.filled.sc-z-chip .interactive-icon.sc-z-chip{fill:var(--color-inverse-icon)}.sc-z-chip-h>.z-chip-container.filled.sc-z-chip:not([aria-disabled]) button.sc-z-chip::before{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--color-inverse-icon);border-radius:50%;content:"";opacity:0;pointer-events:none;transition:opacity 0.2s}.sc-z-chip-h>.z-chip-container.filled.sc-z-chip:not([aria-disabled]) button.sc-z-chip:hover::before{opacity:0.16}.sc-z-chip-h>.z-chip-container.filled.sc-z-chip:not([aria-disabled]) button.sc-z-chip:hover .interactive-icon.sc-z-chip{color:var(--color-inverse-icon);fill:var(--color-inverse-icon)}.sc-z-chip-h>.z-chip-container.soft.sc-z-chip{border-color:transparent;background-color:var(--color-primary02);color:var(--color-default-text)}.sc-z-chip-h>.z-chip-container.soft.sc-z-chip .interactive-icon.sc-z-chip{fill:var(--color-primary01)}.sc-z-chip-h>.z-chip-container[aria-disabled].sc-z-chip,.sc-z-chip-h>.z-chip-container[aria-disabled].sc-z-chip .interactive-icon.sc-z-chip{color:var(--color-disabled03);cursor:auto;fill:var(--color-disabled03)}.sc-z-chip-h>.z-chip-container[aria-disabled].sc-z-chip{border:var(--border-size-small) solid var(--color-disabled01);background-color:transparent}.sc-z-chip-h>.z-chip-container.filled[aria-disabled].sc-z-chip,.sc-z-chip-h>.z-chip-container.soft[aria-disabled].sc-z-chip{border-color:transparent;background-color:var(--color-disabled01)}.sc-z-chip-h>.z-chip-container.sc-z-chip>button.sc-z-chip:focus:focus-visible{border-radius:100%;box-shadow:var(--shadow-focus-primary);outline:none}.sc-z-chip-h>.z-chip-container.sc-z-chip>z-icon.sc-z-chip,.sc-z-chip-h>.z-chip-container.sc-z-chip .interactive-icon.sc-z-chip{--z-icon-width:22px;--z-icon-height:22px}.sc-z-chip-h>.z-chip-container.default.sc-z-chip{min-height:44px;border-radius:22px}.sc-z-chip-h>.z-chip-container.medium.sc-z-chip{min-height:40px;border-radius:22px}.sc-z-chip-h>.z-chip-container.small.sc-z-chip{min-height:36px;border-radius:22px}@media (min-width: 1152px){.sc-z-chip-h>.z-chip-container.sc-z-chip{padding:0 calc(var(--space-unit) * 1.5);font-size:12px;gap:calc(var(--space-unit) / 2)}.sc-z-chip-h>.z-chip-container.default.sc-z-chip{min-height:32px;border-radius:16px}.sc-z-chip-h>.z-chip-container.medium.sc-z-chip{min-height:28px;border-radius:16px}.sc-z-chip-h>.z-chip-container.small.sc-z-chip{min-height:24px;border-radius:16px}.sc-z-chip-h>.z-chip-container.sc-z-chip>z-icon.sc-z-chip,.sc-z-chip-h>.z-chip-container.sc-z-chip .interactive-icon.sc-z-chip{--z-icon-width:14px;--z-icon-height:14px}.sc-z-chip-h>.z-chip-container.sc-z-chip>button.sc-z-chip{width:20px;height:20px}}`;const s=class{constructor(r){i(this,r);this.interactiveIconClick=c(this,"interactiveIconClick",7);this.type=a.DEFAULT;this.variant=e.OUTLINE;this.disabled=false}render(){return r("div",{key:"7c193d4f98e2caddd979a9583099e50d710f36a0",class:{"z-chip-container":true,"z-chip-interactive":!!this.interactiveIcon,[this.type]:true,[this.variant]:true},"aria-disabled":this.disabled?"true":undefined},this.icon&&r("z-icon",{key:"cf16aec1373dbab96a6631e842bab6d1819ff7fb",name:this.icon}),r("slot",{key:"b2bead0fa564bda7098aaa89b277fa113c0af783"}),this.interactiveIcon&&r("button",{key:"2ae74ae46a7a47b646eb36dae752b5eaee95af7e",type:"button",onClick:()=>this.interactiveIconClick.emit(),"aria-label":this.htmlAriaLabel||undefined,disabled:this.disabled},r("z-icon",{key:"64a298c0312904caf16112d2f3816732262dd0ed",class:"interactive-icon",name:this.interactiveIcon})))}get el(){return o(this)}};s.style=h();export{s as z_chip};
|
|
2
|
-
//# sourceMappingURL=p-885472aa.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["stylesCss","ZChip","constructor","hostRef","this","type","ZChipType","DEFAULT","variant","ZChipVariant","OUTLINE","disabled","render","h","key","class","interactiveIcon","undefined","icon","name","onClick","interactiveIconClick","emit","htmlAriaLabel"],"sources":["src/components/z-chip/styles.css?tag=z-chip&encapsulation=scoped","src/components/z-chip/index.tsx"],"sourcesContent":[":host,\n:host * {\n box-sizing: border-box;\n}\n\n:host {\n display: block;\n}\n\n:host > .z-chip-container {\n display: inline-flex;\n min-height: 28px;\n align-items: center;\n padding: 0 calc(var(--space-unit) * 2);\n border: var(--border-size-small) solid var(--color-surface03);\n background-color: var(--color-surface01);\n border-radius: 14px;\n color: var(--color-primary01);\n fill: var(--color-default-icon);\n font-family: var(--font-family-sans);\n font-size: 14px;\n font-weight: var(--font-sb);\n gap: var(--space-unit);\n line-height: 1;\n}\n\n:host > .z-chip-container > button {\n position: relative;\n display: flex;\n width: 28px;\n height: 28px;\n align-items: center;\n justify-content: center;\n padding: 0;\n border: none;\n background-color: transparent;\n border-radius: 50%;\n cursor: pointer;\n}\n\n:host > .z-chip-container .interactive-icon {\n fill: var(--color-primary01);\n}\n\n:host > .z-chip-container:not([aria-disabled]) button:hover .interactive-icon {\n color: var(--color-hover-primary);\n fill: var(--color-hover-primary);\n}\n\n/* Variants */\n:host > .z-chip-container.filled {\n border-color: transparent;\n background-color: var(--color-primary01);\n color: var(--color-text-inverse);\n fill: var(--color-inverse-icon);\n}\n\n:host > .z-chip-container.filled .interactive-icon {\n fill: var(--color-inverse-icon);\n}\n\n:host > .z-chip-container.filled:not([aria-disabled]) button::before {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: var(--color-inverse-icon);\n border-radius: 50%;\n content: \"\";\n opacity: 0;\n pointer-events: none;\n transition: opacity 0.2s;\n}\n\n:host > .z-chip-container.filled:not([aria-disabled]) button:hover::before {\n opacity: 0.16;\n}\n\n:host > .z-chip-container.filled:not([aria-disabled]) button:hover .interactive-icon {\n color: var(--color-inverse-icon);\n fill: var(--color-inverse-icon);\n}\n\n:host > .z-chip-container.soft {\n border-color: transparent;\n background-color: var(--color-primary02);\n color: var(--color-default-text);\n}\n\n:host > .z-chip-container.soft .interactive-icon {\n fill: var(--color-primary01);\n}\n\n/* Disabled state */\n:host > .z-chip-container[aria-disabled],\n:host > .z-chip-container[aria-disabled] .interactive-icon {\n color: var(--color-disabled03);\n cursor: auto;\n fill: var(--color-disabled03);\n}\n\n:host > .z-chip-container[aria-disabled] {\n border: var(--border-size-small) solid var(--color-disabled01);\n background-color: transparent;\n}\n\n:host > .z-chip-container.filled[aria-disabled],\n:host > .z-chip-container.soft[aria-disabled] {\n border-color: transparent;\n background-color: var(--color-disabled01);\n}\n\n:host > .z-chip-container > button:focus:focus-visible {\n border-radius: 100%;\n box-shadow: var(--shadow-focus-primary);\n outline: none;\n}\n\n:host > .z-chip-container > z-icon,\n:host > .z-chip-container .interactive-icon {\n --z-icon-width: 22px;\n --z-icon-height: 22px;\n}\n\n/* :host type */\n:host > .z-chip-container.default {\n min-height: 44px;\n border-radius: 22px;\n}\n\n:host > .z-chip-container.medium {\n min-height: 40px;\n border-radius: 22px;\n}\n\n:host > .z-chip-container.small {\n min-height: 36px;\n border-radius: 22px;\n}\n\n/* Desktop breakpoint */\n@media (min-width: 1152px) {\n :host > .z-chip-container {\n padding: 0 calc(var(--space-unit) * 1.5);\n font-size: 12px;\n gap: calc(var(--space-unit) / 2);\n }\n\n /* :host type */\n :host > .z-chip-container.default {\n min-height: 32px;\n border-radius: 16px;\n }\n\n :host > .z-chip-container.medium {\n min-height: 28px;\n border-radius: 16px;\n }\n\n :host > .z-chip-container.small {\n min-height: 24px;\n border-radius: 16px;\n }\n\n :host > .z-chip-container > z-icon,\n :host > .z-chip-container .interactive-icon {\n --z-icon-width: 14px;\n --z-icon-height: 14px;\n }\n\n :host > .z-chip-container > button {\n width: 20px;\n height: 20px;\n }\n}\n","import {Component, ComponentInterface, Element, Event, EventEmitter, Prop, h} from \"@stencil/core\";\nimport {ZChipType, ZChipVariant} from \"../../beans\";\n\n@Component({\n tag: \"z-chip\",\n styleUrl: \"styles.css\",\n shadow: false,\n scoped: true,\n})\nexport class ZChip implements ComponentInterface {\n @Element() el: HTMLZChipElement;\n\n /** Non interactive icon */\n @Prop()\n icon?: string;\n\n /** z-chip size type, can be default, medium or small */\n @Prop({reflect: true})\n type?: ZChipType = ZChipType.DEFAULT;\n\n /** z-chip variant type, can be outline, filled or soft */\n @Prop({reflect: true})\n variant?: ZChipVariant = ZChipVariant.OUTLINE;\n\n /** z-chip interactive icon */\n @Prop({reflect: true})\n interactiveIcon?: string;\n\n /** set z-chip as disabled */\n @Prop({reflect: true})\n disabled?: boolean = false;\n\n /** `aria-label` for the icon button */\n @Prop()\n htmlAriaLabel?: string;\n\n /** click on interactive icon */\n @Event()\n interactiveIconClick: EventEmitter;\n\n render(): HTMLDivElement {\n return (\n <div\n class={{\n \"z-chip-container\": true,\n \"z-chip-interactive\": !!this.interactiveIcon,\n [this.type]: true,\n [this.variant]: true,\n }}\n aria-disabled={this.disabled ? \"true\" : undefined}\n >\n {this.icon && <z-icon name={this.icon} />}\n <slot />\n {this.interactiveIcon && (\n <button\n type=\"button\"\n onClick={() => this.interactiveIconClick.emit()}\n aria-label={this.htmlAriaLabel || undefined}\n disabled={this.disabled}\n >\n <z-icon\n class=\"interactive-icon\"\n name={this.interactiveIcon}\n />\n </button>\n )}\n </div>\n );\n }\n}\n"],"mappings":"+FAAA,MAAMA,EAAY,IAAM,yzH,MCSXC,EAAK,MANlB,WAAAC,CAAAC,G,qEAeEC,KAAAC,KAAmBC,EAAUC,QAI7BH,KAAAI,QAAyBC,EAAaC,QAQtCN,KAAAO,SAAqB,KAuCtB,CA7BC,MAAAC,GACE,OACEC,EAAA,OAAAC,IAAA,2CACEC,MAAO,CACL,mBAAoB,KACpB,uBAAwBX,KAAKY,gBAC7B,CAACZ,KAAKC,MAAO,KACb,CAACD,KAAKI,SAAU,MACjB,gBACcJ,KAAKO,SAAW,OAASM,WAEvCb,KAAKc,MAAQL,EAAA,UAAAC,IAAA,2CAAQK,KAAMf,KAAKc,OACjCL,EAAA,QAAAC,IAAA,6CACCV,KAAKY,iBACJH,EAAA,UAAAC,IAAA,2CACET,KAAK,SACLe,QAAS,IAAMhB,KAAKiB,qBAAqBC,OAAM,aACnClB,KAAKmB,eAAiBN,UAClCN,SAAUP,KAAKO,UAEfE,EAAA,UAAAC,IAAA,2CACEC,MAAM,mBACNI,KAAMf,KAAKY,mB","ignoreList":[]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as t,h as o,d as s}from"./p-BcDWN4F1.js";import{s as i}from"./p-DdetsoIY.js";const e=()=>`:host{position:fixed;z-index:10000;display:flex;flex-flow:column nowrap;margin-top:calc(var(--space-unit) * 2);margin-bottom:calc(var(--space-unit) * 2);font-family:var(--font-family-sans);font-weight:var(--font-rg)}::slotted(z-toast-notification){width:100vw}::slotted(:not(:last-child)){margin-bottom:calc(var(--space-unit) * 1)}:host([position="bottom-centre"]),:host([position="bottom-right"]),:host([position="bottom-left"]){bottom:0;align-items:flex-end;justify-content:flex-end}:host([position="top-left"]),:host([position="top-right"]),:host([position="top-centre"]){top:0;align-items:flex-start;justify-content:flex-start}@media only screen and (min-width: 768px){:host{margin:calc(var(--space-unit) * 3)}:host([position="top-centre"]){top:0;left:50%;align-items:center;justify-content:flex-start;transform:translateX(-50%)}:host([position="top-left"]){top:0;left:0;align-items:flex-start;justify-content:flex-start}:host([position="top-right"]){top:0;right:0;align-items:flex-end;justify-content:flex-start}:host([position="bottom-centre"]){bottom:0;left:50%;align-items:center;justify-content:flex-end;transform:translateX(-50%)}:host([position="bottom-right"]){right:0;bottom:0;align-items:flex-end;justify-content:flex-end}:host([position="bottom-left"]){bottom:0;left:0;align-items:flex-start;justify-content:flex-end}::slotted(z-toast-notification){width:50vw}}@media only screen and (min-width: 1366px){:host{margin:calc(var(--space-unit) * 4)}::slotted(z-toast-notification){width:33vw}}`;const n=class{constructor(o){t(this,o);this.position=i.TOP_RIGHT;this.newestontop=true;this.notificationArray=[]}watchPropNewestontop(t){this.hostElement.append(...this.notificationArray.reverse());if(t){this.hostElement.shadowRoot.addEventListener("slotchange",this.slotChangeHandler)}else{this.hostElement.shadowRoot.removeEventListener("slotchange",this.slotChangeHandler)}}componentWillLoad(){if(this.newestontop){this.handleNewestOnTop()}}handleNewestOnTop(){this.notificationArray=Array.from(this.hostElement.children);this.hostElement.append(...this.notificationArray.reverse());this.hostElement.shadowRoot.addEventListener("slotchange",this.slotChangeHandler.bind(this))}slotChangeHandler(){const t=Array.from(this.hostElement.children).filter((t=>!this.notificationArray.includes(t)));if(t){t.forEach((t=>{this.notificationArray.push(t);const o=t;t.remove();this.hostElement.prepend(o)}))}}render(){return o("slot",{key:"369ca36cde4f86f5e390568b3526ffab0aad053f",name:"toasts"})}get hostElement(){return s(this)}static get watchers(){return{newestontop:[{watchPropNewestontop:0}]}}};n.style=e();export{n as z_toast_notification_list};
|
|
2
|
-
//# sourceMappingURL=p-9dc4d290.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["stylesCss","ZToastNotificationList","constructor","hostRef","this","position","ToastNotificationPosition","TOP_RIGHT","newestontop","notificationArray","watchPropNewestontop","newValue","hostElement","append","reverse","shadowRoot","addEventListener","slotChangeHandler","removeEventListener","componentWillLoad","handleNewestOnTop","Array","from","children","bind","difference","filter","elem","includes","forEach","push","newElem","remove","prepend","render","h","key","name"],"sources":["src/components/z-toast-notification-list/styles.css?tag=z-toast-notification-list&encapsulation=shadow","src/components/z-toast-notification-list/index.tsx"],"sourcesContent":[":host {\n position: fixed;\n z-index: 10000;\n display: flex;\n flex-flow: column nowrap;\n margin-top: calc(var(--space-unit) * 2);\n margin-bottom: calc(var(--space-unit) * 2);\n font-family: var(--font-family-sans);\n font-weight: var(--font-rg);\n}\n\n::slotted(z-toast-notification) {\n width: 100vw;\n}\n\n::slotted(:not(:last-child)) {\n margin-bottom: calc(var(--space-unit) * 1);\n}\n\n:host([position=\"bottom-centre\"]),\n:host([position=\"bottom-right\"]),\n:host([position=\"bottom-left\"]) {\n bottom: 0;\n align-items: flex-end;\n justify-content: flex-end;\n}\n\n:host([position=\"top-left\"]),\n:host([position=\"top-right\"]),\n:host([position=\"top-centre\"]) {\n top: 0;\n align-items: flex-start;\n justify-content: flex-start;\n}\n\n/* Tablet breakpoint */\n@media only screen and (min-width: 768px) {\n :host {\n margin: calc(var(--space-unit) * 3);\n }\n\n :host([position=\"top-centre\"]) {\n top: 0;\n left: 50%;\n align-items: center;\n justify-content: flex-start;\n transform: translateX(-50%);\n }\n\n :host([position=\"top-left\"]) {\n top: 0;\n left: 0;\n align-items: flex-start;\n justify-content: flex-start;\n }\n\n :host([position=\"top-right\"]) {\n top: 0;\n right: 0;\n align-items: flex-end;\n justify-content: flex-start;\n }\n\n :host([position=\"bottom-centre\"]) {\n bottom: 0;\n left: 50%;\n align-items: center;\n justify-content: flex-end;\n transform: translateX(-50%);\n }\n\n :host([position=\"bottom-right\"]) {\n right: 0;\n bottom: 0;\n align-items: flex-end;\n justify-content: flex-end;\n }\n\n :host([position=\"bottom-left\"]) {\n bottom: 0;\n left: 0;\n align-items: flex-start;\n justify-content: flex-end;\n }\n\n ::slotted(z-toast-notification) {\n width: 50vw;\n }\n}\n\n/* Wide breakpoint */\n@media only screen and (min-width: 1366px) {\n :host {\n margin: calc(var(--space-unit) * 4);\n }\n\n ::slotted(z-toast-notification) {\n width: 33vw;\n }\n}\n","import {Component, ComponentInterface, Element, Prop, Watch, h} from \"@stencil/core\";\nimport {ToastNotificationPosition} from \"../../beans\";\n\n@Component({\n tag: \"z-toast-notification-list\",\n styleUrl: \"styles.css\",\n shadow: true,\n})\nexport class ZToastNotificationList implements ComponentInterface {\n @Element() hostElement: HTMLZToastNotificationListElement;\n\n /**Set the position of toast notification list - top-left, top-centre, top-right, bottom-left, bottom-centre, bottom-right */\n @Prop({reflect: true})\n position: ToastNotificationPosition = ToastNotificationPosition.TOP_RIGHT;\n\n /**Set the entry position of new notification in the list */\n @Prop()\n newestontop?: boolean = true;\n\n private notificationArray: Element[] = [];\n\n @Watch(\"newestontop\")\n watchPropNewestontop(newValue: boolean): void {\n this.hostElement.append(...this.notificationArray.reverse());\n if (newValue) {\n this.hostElement.shadowRoot.addEventListener(\"slotchange\", this.slotChangeHandler);\n } else {\n this.hostElement.shadowRoot.removeEventListener(\"slotchange\", this.slotChangeHandler);\n }\n }\n\n componentWillLoad(): void {\n if (this.newestontop) {\n this.handleNewestOnTop();\n }\n }\n\n private handleNewestOnTop(): void {\n this.notificationArray = Array.from(this.hostElement.children);\n this.hostElement.append(...this.notificationArray.reverse());\n this.hostElement.shadowRoot.addEventListener(\"slotchange\", this.slotChangeHandler.bind(this));\n }\n\n private slotChangeHandler(): void {\n const difference = Array.from(this.hostElement.children).filter((elem) => !this.notificationArray.includes(elem));\n if (difference) {\n difference.forEach((elem) => {\n this.notificationArray.push(elem);\n const newElem = elem;\n elem.remove();\n this.hostElement.prepend(newElem);\n });\n }\n }\n\n render(): HTMLSlotElement {\n return <slot name=\"toasts\"></slot>;\n }\n}\n"],"mappings":"sFAAA,MAAMA,EAAY,IAAM,m+C,MCQXC,EAAsB,MALnC,WAAAC,CAAAC,G,UAUEC,KAAAC,SAAsCC,EAA0BC,UAIhEH,KAAAI,YAAwB,KAEhBJ,KAAAK,kBAA+B,EAuCxC,CApCC,oBAAAC,CAAqBC,GACnBP,KAAKQ,YAAYC,UAAUT,KAAKK,kBAAkBK,WAClD,GAAIH,EAAU,CACZP,KAAKQ,YAAYG,WAAWC,iBAAiB,aAAcZ,KAAKa,kB,KAC3D,CACLb,KAAKQ,YAAYG,WAAWG,oBAAoB,aAAcd,KAAKa,kB,EAIvE,iBAAAE,GACE,GAAIf,KAAKI,YAAa,CACpBJ,KAAKgB,mB,EAID,iBAAAA,GACNhB,KAAKK,kBAAoBY,MAAMC,KAAKlB,KAAKQ,YAAYW,UACrDnB,KAAKQ,YAAYC,UAAUT,KAAKK,kBAAkBK,WAClDV,KAAKQ,YAAYG,WAAWC,iBAAiB,aAAcZ,KAAKa,kBAAkBO,KAAKpB,M,CAGjF,iBAAAa,GACN,MAAMQ,EAAaJ,MAAMC,KAAKlB,KAAKQ,YAAYW,UAAUG,QAAQC,IAAUvB,KAAKK,kBAAkBmB,SAASD,KAC3G,GAAIF,EAAY,CACdA,EAAWI,SAASF,IAClBvB,KAAKK,kBAAkBqB,KAAKH,GAC5B,MAAMI,EAAUJ,EAChBA,EAAKK,SACL5B,KAAKQ,YAAYqB,QAAQF,EAAQ,G,EAKvC,MAAAG,GACE,OAAOC,EAAA,QAAAC,IAAA,2CAAMC,KAAK,U","ignoreList":[]}
|