@spw-ds/spw-stencil-library 1.2.1 → 1.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/spw-accordion.spw-accordion-content.spw-accordion-item.spw-accordion-title.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-accordion_4.cjs.entry.js +2 -2
- package/dist/cjs/spw-accordion_4.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-button_2.cjs.entry.js +1 -1
- package/dist/cjs/spw-card-content.cjs.entry.js +1 -1
- package/dist/cjs/spw-card-content.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-card-content.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-card-excerpt.cjs.entry.js +2 -2
- package/dist/cjs/spw-card-excerpt.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-card-excerpt.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-card-image.cjs.entry.js +2 -2
- package/dist/cjs/spw-card-image.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-card-image.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-card-subtag-item.cjs.entry.js +1 -1
- package/dist/cjs/spw-card-subtags.cjs.entry.js +1 -1
- package/dist/cjs/spw-card-title.cjs.entry.js +4 -2
- package/dist/cjs/spw-card-title.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-card-title.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-card.cjs.entry.js +39 -9
- package/dist/cjs/spw-card.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-card.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/spw-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-checkbox.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-custom-select.cjs.entry.js +3 -3
- package/dist/cjs/spw-date-picker.cjs.entry.js +1 -1
- package/dist/cjs/spw-dropdown.cjs.entry.js +1 -1
- package/dist/cjs/spw-field-label.spw-group.spw-icon.spw-link.spw-separator.spw-theme-provider.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-field-label_6.cjs.entry.js +6 -6
- package/dist/cjs/spw-field-label_6.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-field-message.cjs.entry.js +1 -1
- package/dist/cjs/spw-file-upload.cjs.entry.js +2 -2
- package/dist/cjs/spw-footer-bottom.cjs.entry.js +1 -1
- package/dist/cjs/spw-footer-content-col.cjs.entry.js +1 -1
- package/dist/cjs/spw-footer-content.cjs.entry.js +1 -1
- package/dist/cjs/spw-footer-link.cjs.entry.js +1 -1
- package/dist/cjs/spw-footer.cjs.entry.js +1 -1
- package/dist/cjs/spw-header-lang-item.cjs.entry.js +1 -1
- package/dist/cjs/spw-header-lang.cjs.entry.js +1 -1
- package/dist/cjs/spw-header-navigation-dropdown.cjs.entry.js +1 -1
- package/dist/cjs/spw-header-navigation-item.cjs.entry.js +1 -1
- package/dist/cjs/spw-header-navigation.cjs.entry.js +1 -1
- package/dist/cjs/spw-header-persona-item.cjs.entry.js +1 -1
- package/dist/cjs/spw-header-persona.cjs.entry.js +3 -1
- package/dist/cjs/spw-header-persona.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-header-persona.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-header.cjs.entry.js +20 -2
- package/dist/cjs/spw-header.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-header.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-hero.cjs.entry.js +16 -2
- package/dist/cjs/spw-hero.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-hero.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-iodda.cjs.entry.js +1 -1
- package/dist/cjs/spw-list-description.cjs.entry.js +1 -1
- package/dist/cjs/spw-list-item.cjs.entry.js +6 -2
- package/dist/cjs/spw-list-item.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-list-item.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-list-title.cjs.entry.js +2 -2
- package/dist/cjs/spw-list-title.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-list-title.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-list.cjs.entry.js +20 -1
- package/dist/cjs/spw-list.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-list.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-modal.cjs.entry.js +9 -2
- package/dist/cjs/spw-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-modal.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-mosaic-item.cjs.entry.js +1 -1
- package/dist/cjs/spw-mosaic.cjs.entry.js +1 -1
- package/dist/cjs/spw-pagination.cjs.entry.js +6 -6
- package/dist/cjs/spw-radio.cjs.entry.js +1 -1
- package/dist/cjs/spw-search-field.cjs.entry.js +2 -2
- package/dist/cjs/spw-sidebar-navigation-dropdown.cjs.entry.js +1 -1
- package/dist/cjs/spw-sidebar-navigation-item.cjs.entry.js +3 -3
- package/dist/cjs/spw-sidebar-navigation-separator.cjs.entry.js +1 -1
- package/dist/cjs/spw-sidebar.cjs.entry.js +1 -1
- package/dist/cjs/spw-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/spw-socials.cjs.entry.js +1 -1
- package/dist/cjs/spw-stencil-library.cjs.js +1 -1
- package/dist/cjs/spw-table-body.cjs.entry.js +1 -1
- package/dist/cjs/spw-table-cell.cjs.entry.js +1 -1
- package/dist/cjs/spw-table-footer.cjs.entry.js +1 -1
- package/dist/cjs/spw-table-head.cjs.entry.js +1 -1
- package/dist/cjs/spw-table-header.cjs.entry.js +2 -2
- package/dist/cjs/spw-table-row.cjs.entry.js +1 -1
- package/dist/cjs/spw-tabs-navigation-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-tabs-navigation-item.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-tabs-navigation-item.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-tabs-navigation.cjs.entry.js +1 -1
- package/dist/cjs/spw-tabs.cjs.entry.js +1 -1
- package/dist/cjs/spw-tag.cjs.entry.js +1 -1
- package/dist/cjs/spw-text-field.cjs.entry.js +1 -1
- package/dist/cjs/spw-textarea.cjs.entry.js +1 -1
- package/dist/cjs/spw-tile-description.cjs.entry.js +1 -1
- package/dist/cjs/spw-tile-title.cjs.entry.js +2 -2
- package/dist/cjs/spw-tile-title.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-tile-title.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-tile.cjs.entry.js +1 -1
- package/dist/cjs/spw-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/spw-topbar.cjs.entry.js +1 -1
- package/dist/collection/components/spw-accordion/spw-accordion-item/spw-accordion-item.css +1 -1
- package/dist/collection/components/spw-accordion/spw-accordion-title/spw-accordion-title.css +1 -1
- package/dist/collection/components/spw-card/spw-card-content/spw-card-content.css +1 -1
- package/dist/collection/components/spw-card/spw-card-excerpt/spw-card-excerpt.css +1 -1
- package/dist/collection/components/spw-card/spw-card-excerpt/spw-card-excerpt.js +2 -2
- package/dist/collection/components/spw-card/spw-card-excerpt/spw-card-excerpt.js.map +1 -1
- package/dist/collection/components/spw-card/spw-card-image/spw-card-image.css +1 -1
- package/dist/collection/components/spw-card/spw-card-image/spw-card-image.js +1 -1
- package/dist/collection/components/spw-card/spw-card-subtag-item/spw-card-subtag-item.js +1 -1
- package/dist/collection/components/spw-card/spw-card-subtags/spw-card-subtags.js +1 -1
- package/dist/collection/components/spw-card/spw-card-title/spw-card-title.css +1 -1
- package/dist/collection/components/spw-card/spw-card-title/spw-card-title.js +30 -2
- package/dist/collection/components/spw-card/spw-card-title/spw-card-title.js.map +1 -1
- package/dist/collection/components/spw-card/spw-card.css +1 -1
- package/dist/collection/components/spw-card/spw-card.js +40 -10
- package/dist/collection/components/spw-card/spw-card.js.map +1 -1
- package/dist/collection/components/spw-checkbox/spw-checkbox.css +1 -1
- package/dist/collection/components/spw-checkbox/spw-checkbox.js +1 -1
- package/dist/collection/components/spw-custom-select/spw-custom-select.js +3 -3
- package/dist/collection/components/spw-date-picker/spw-date-picker.js +1 -1
- package/dist/collection/components/spw-dropdown/spw-dropdown.js +1 -1
- package/dist/collection/components/spw-field-label/spw-field-label.js +1 -1
- package/dist/collection/components/spw-field-message/spw-field-message.js +1 -1
- package/dist/collection/components/spw-file-upload/spw-file-upload.js +2 -2
- package/dist/collection/components/spw-footer/spw-footer-bottom/spw-footer-bottom.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer-content/spw-footer-content.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer-content-col/spw-footer-content-col.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer-link/spw-footer-link.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer.js +1 -1
- package/dist/collection/components/spw-group/spw-group.js +1 -1
- package/dist/collection/components/spw-header/spw-header-lang/spw-header-lang.js +1 -1
- package/dist/collection/components/spw-header/spw-header-lang-item/spw-header-lang-item.js +1 -1
- package/dist/collection/components/spw-header/spw-header-navigation/spw-header-navigation.js +1 -1
- package/dist/collection/components/spw-header/spw-header-navigation-dropdown/spw-header-navigation-dropdown.js +1 -1
- package/dist/collection/components/spw-header/spw-header-navigation-item/spw-header-navigation-item.js +1 -1
- package/dist/collection/components/spw-header/spw-header-persona/spw-header-persona.js +27 -1
- package/dist/collection/components/spw-header/spw-header-persona/spw-header-persona.js.map +1 -1
- package/dist/collection/components/spw-header/spw-header-persona-item/spw-header-persona-item.js +1 -1
- package/dist/collection/components/spw-header/spw-header.css +1 -1
- package/dist/collection/components/spw-header/spw-header.js +199 -1
- package/dist/collection/components/spw-header/spw-header.js.map +1 -1
- package/dist/collection/components/spw-hero/spw-hero.css +1 -1
- package/dist/collection/components/spw-hero/spw-hero.js +54 -1
- package/dist/collection/components/spw-hero/spw-hero.js.map +1 -1
- package/dist/collection/components/spw-iodda/spw-iodda.js +1 -1
- package/dist/collection/components/spw-link/spw-link.css +1 -1
- package/dist/collection/components/spw-link/spw-link.js +1 -1
- package/dist/collection/components/spw-list/spw-list-description/spw-list-description.js +1 -1
- package/dist/collection/components/spw-list/spw-list-item/spw-list-item.css +1 -1
- package/dist/collection/components/spw-list/spw-list-item/spw-list-item.js +25 -1
- package/dist/collection/components/spw-list/spw-list-item/spw-list-item.js.map +1 -1
- package/dist/collection/components/spw-list/spw-list-title/spw-list-title.css +1 -1
- package/dist/collection/components/spw-list/spw-list-title/spw-list-title.js +1 -1
- package/dist/collection/components/spw-list/spw-list.js +49 -1
- package/dist/collection/components/spw-list/spw-list.js.map +1 -1
- package/dist/collection/components/spw-loading/spw-loading.js +1 -1
- package/dist/collection/components/spw-modal/spw-modal.css +1 -1
- package/dist/collection/components/spw-modal/spw-modal.js +8 -1
- package/dist/collection/components/spw-modal/spw-modal.js.map +1 -1
- package/dist/collection/components/spw-mosaic/spw-mosaic-item/spw-mosaic-item.js +1 -1
- package/dist/collection/components/spw-mosaic/spw-mosaic.js +1 -1
- package/dist/collection/components/spw-pagination/spw-pagination.js +6 -6
- package/dist/collection/components/spw-radio/spw-radio.js +1 -1
- package/dist/collection/components/spw-search-field/spw-search-field.js +2 -2
- package/dist/collection/components/spw-separator/spw-separator.js +1 -1
- package/dist/collection/components/spw-sidebar/spw-sidebar-navigation-dropdown/spw-sidebar-navigation-dropdown.js +1 -1
- package/dist/collection/components/spw-sidebar/spw-sidebar-navigation-item/spw-sidebar-navigation-item.js +3 -3
- package/dist/collection/components/spw-sidebar/spw-sidebar-navigation-separator/spw-sidebar-navigation-separator.js +1 -1
- package/dist/collection/components/spw-sidebar/spw-sidebar.js +1 -1
- package/dist/collection/components/spw-skeleton/spw-skeleton.js +1 -1
- package/dist/collection/components/spw-socials/spw-socials.js +1 -1
- package/dist/collection/components/spw-table/spw-table-body/spw-table-body.js +1 -1
- package/dist/collection/components/spw-table/spw-table-cell/spw-table-cell.js +1 -1
- package/dist/collection/components/spw-table/spw-table-footer/spw-table-footer.js +1 -1
- package/dist/collection/components/spw-table/spw-table-head/spw-table-head.js +1 -1
- package/dist/collection/components/spw-table/spw-table-header/spw-table-header.js +2 -2
- package/dist/collection/components/spw-table/spw-table-row/spw-table-row.js +1 -1
- package/dist/collection/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.js +1 -1
- package/dist/collection/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.css +1 -1
- package/dist/collection/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.js +1 -1
- package/dist/collection/components/spw-tabs/spw-tabs.js +1 -1
- package/dist/collection/components/spw-tag/spw-tag.js +1 -1
- package/dist/collection/components/spw-text-field/spw-text-field.js +1 -1
- package/dist/collection/components/spw-textarea/spw-textarea.js +1 -1
- package/dist/collection/components/spw-theme-provider/spw-theme-provider.js +1 -1
- package/dist/collection/components/spw-tile/spw-tile-description/spw-tile-description.js +1 -1
- package/dist/collection/components/spw-tile/spw-tile-title/spw-tile-title.css +1 -1
- package/dist/collection/components/spw-tile/spw-tile-title/spw-tile-title.js +1 -1
- package/dist/collection/components/spw-tile/spw-tile.js +1 -1
- package/dist/collection/components/spw-tooltip/spw-tooltip.js +1 -1
- package/dist/collection/components/spw-topbar/spw-topbar.js +1 -1
- package/dist/collection/stories/components/spw-checkbox/spw-checkbox.stories.js +26 -0
- package/dist/collection/stories/components/spw-checkbox/spw-checkbox.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-card/spw-card.stories.js +97 -3
- package/dist/collection/stories/organisms/spw-card/spw-card.stories.js.map +1 -1
- package/dist/components/{p-DnyVO_PX.js → p-B-sLKmnT.js} +3 -3
- package/dist/components/{p-DnyVO_PX.js.map → p-B-sLKmnT.js.map} +1 -1
- package/dist/components/{p-z27d6ASx.js → p-B3OQ2nRI.js} +3 -3
- package/dist/components/p-B3OQ2nRI.js.map +1 -0
- package/dist/components/{p-Bja0SU2g.js → p-BDRCqK1w.js} +3 -3
- package/dist/components/{p-Bja0SU2g.js.map → p-BDRCqK1w.js.map} +1 -1
- package/dist/components/{p-DogcJyQh.js → p-BF73GiQU.js} +3 -3
- package/dist/components/{p-DogcJyQh.js.map → p-BF73GiQU.js.map} +1 -1
- package/dist/components/{p-CwxUBfbv.js → p-BowHA3gk.js} +3 -3
- package/dist/components/{p-CwxUBfbv.js.map → p-BowHA3gk.js.map} +1 -1
- package/dist/components/p-Cf-dIWNi.js +129 -0
- package/dist/components/p-Cf-dIWNi.js.map +1 -0
- package/dist/components/{p-CxSDNrYu.js → p-DIhULKFM.js} +3 -3
- package/dist/components/{p-CxSDNrYu.js.map → p-DIhULKFM.js.map} +1 -1
- package/dist/components/{p-BExIjlwY.js → p-DaosfSzT.js} +11 -11
- package/dist/components/{p-BExIjlwY.js.map → p-DaosfSzT.js.map} +1 -1
- package/dist/components/{p-CahscFgh.js → p-Dku0Cksp.js} +5 -5
- package/dist/components/{p-CahscFgh.js.map → p-Dku0Cksp.js.map} +1 -1
- package/dist/components/p-GUYao_6w.js +81 -0
- package/dist/components/p-GUYao_6w.js.map +1 -0
- package/dist/components/{p-BbuJ0hsQ.js → p-c0hJPgjJ.js} +3 -3
- package/dist/components/p-c0hJPgjJ.js.map +1 -0
- package/dist/components/{p-2zBnLUyL.js → p-fNRoK67L.js} +3 -3
- package/dist/components/{p-2zBnLUyL.js.map → p-fNRoK67L.js.map} +1 -1
- package/dist/components/spw-accordion-item.js +1 -1
- package/dist/components/spw-accordion-title.js +1 -1
- package/dist/components/spw-breadcrumb-item.js +1 -1
- package/dist/components/spw-button.js +1 -1
- package/dist/components/spw-card-content.js +1 -1
- package/dist/components/spw-card-content.js.map +1 -1
- package/dist/components/spw-card-excerpt.js +3 -3
- package/dist/components/spw-card-excerpt.js.map +1 -1
- package/dist/components/spw-card-image.js +2 -2
- package/dist/components/spw-card-image.js.map +1 -1
- package/dist/components/spw-card-subtag-item.js +1 -1
- package/dist/components/spw-card-subtags.js +1 -1
- package/dist/components/spw-card-title.js +8 -4
- package/dist/components/spw-card-title.js.map +1 -1
- package/dist/components/spw-card.js +39 -9
- package/dist/components/spw-card.js.map +1 -1
- package/dist/components/spw-checkbox.js +1 -1
- package/dist/components/spw-cookies.js +5 -5
- package/dist/components/spw-custom-select.js +6 -6
- package/dist/components/spw-date-picker.js +3 -3
- package/dist/components/spw-dropdown.js +1 -1
- package/dist/components/spw-field-label.js +1 -1
- package/dist/components/spw-field-message.js +1 -1
- package/dist/components/spw-file-upload.js +4 -4
- package/dist/components/spw-footer-bottom.js +1 -1
- package/dist/components/spw-footer-content-col.js +1 -1
- package/dist/components/spw-footer-content.js +1 -1
- package/dist/components/spw-footer-link.js +1 -1
- package/dist/components/spw-footer.js +1 -1
- package/dist/components/spw-group.js +2 -2
- package/dist/components/spw-header-lang-item.js +1 -1
- package/dist/components/spw-header-lang.js +3 -3
- package/dist/components/spw-header-navigation-dropdown.js +1 -1
- package/dist/components/spw-header-navigation-item.js +1 -1
- package/dist/components/spw-header-navigation.js +1 -1
- package/dist/components/spw-header-persona-item.js +1 -1
- package/dist/components/spw-header-persona.js +4 -1
- package/dist/components/spw-header-persona.js.map +1 -1
- package/dist/components/spw-header.js +31 -4
- package/dist/components/spw-header.js.map +1 -1
- package/dist/components/spw-hero.js +25 -3
- package/dist/components/spw-hero.js.map +1 -1
- package/dist/components/spw-iodda.js +6 -6
- package/dist/components/spw-link.js +1 -1
- package/dist/components/spw-list-description.js +1 -1
- package/dist/components/spw-list-item.js +8 -3
- package/dist/components/spw-list-item.js.map +1 -1
- package/dist/components/spw-list-title.js +2 -2
- package/dist/components/spw-list-title.js.map +1 -1
- package/dist/components/spw-list.js +23 -3
- package/dist/components/spw-list.js.map +1 -1
- package/dist/components/spw-loading.js +1 -1
- package/dist/components/spw-message.js +1 -1
- package/dist/components/spw-modal.js +9 -2
- package/dist/components/spw-modal.js.map +1 -1
- package/dist/components/spw-mosaic-item.js +1 -1
- package/dist/components/spw-mosaic.js +1 -1
- package/dist/components/spw-pagination.js +1 -1
- package/dist/components/spw-radio.js +1 -1
- package/dist/components/spw-search-field.js +5 -5
- package/dist/components/spw-select.js +2 -2
- package/dist/components/spw-separator.js +1 -1
- package/dist/components/spw-sidebar-navigation-dropdown.js +1 -1
- package/dist/components/spw-sidebar-navigation-item.js +4 -4
- package/dist/components/spw-sidebar-navigation-separator.js +2 -2
- package/dist/components/spw-sidebar.js +1 -1
- package/dist/components/spw-skeleton.js +1 -1
- package/dist/components/spw-socials.js +1 -1
- package/dist/components/spw-table-body.js +1 -1
- package/dist/components/spw-table-cell.js +1 -1
- package/dist/components/spw-table-footer.js +1 -1
- package/dist/components/spw-table-head.js +1 -1
- package/dist/components/spw-table-header.js +3 -3
- package/dist/components/spw-table-row.js +1 -1
- package/dist/components/spw-tabs-navigation-item.js +3 -3
- package/dist/components/spw-tabs-navigation-item.js.map +1 -1
- package/dist/components/spw-tabs-navigation.js +1 -1
- package/dist/components/spw-tabs.js +1 -1
- package/dist/components/spw-tag.js +1 -1
- package/dist/components/spw-text-field.js +1 -1
- package/dist/components/spw-textarea.js +3 -3
- package/dist/components/spw-theme-provider.js +1 -1
- package/dist/components/spw-tile-description.js +1 -1
- package/dist/components/spw-tile-title.js +2 -2
- package/dist/components/spw-tile-title.js.map +1 -1
- package/dist/components/spw-tile.js +1 -1
- package/dist/components/spw-tooltip.js +1 -1
- package/dist/components/spw-topbar.js +1 -1
- package/dist/components_json.json +400 -9
- package/dist/esm/loader.js +1 -1
- package/dist/esm/spw-accordion.spw-accordion-content.spw-accordion-item.spw-accordion-title.entry.js.map +1 -1
- package/dist/esm/spw-accordion_4.entry.js +2 -2
- package/dist/esm/spw-accordion_4.entry.js.map +1 -1
- package/dist/esm/spw-button_2.entry.js +1 -1
- package/dist/esm/spw-card-content.entry.js +1 -1
- package/dist/esm/spw-card-content.entry.js.map +1 -1
- package/dist/esm/spw-card-excerpt.entry.js +3 -3
- package/dist/esm/spw-card-excerpt.entry.js.map +1 -1
- package/dist/esm/spw-card-image.entry.js +2 -2
- package/dist/esm/spw-card-image.entry.js.map +1 -1
- package/dist/esm/spw-card-subtag-item.entry.js +1 -1
- package/dist/esm/spw-card-subtags.entry.js +1 -1
- package/dist/esm/spw-card-title.entry.js +5 -3
- package/dist/esm/spw-card-title.entry.js.map +1 -1
- package/dist/esm/spw-card.entry.js +39 -9
- package/dist/esm/spw-card.entry.js.map +1 -1
- package/dist/esm/spw-checkbox.entry.js +2 -2
- package/dist/esm/spw-checkbox.entry.js.map +1 -1
- package/dist/esm/spw-custom-select.entry.js +3 -3
- package/dist/esm/spw-date-picker.entry.js +1 -1
- package/dist/esm/spw-dropdown.entry.js +1 -1
- package/dist/esm/spw-field-label.spw-group.spw-icon.spw-link.spw-separator.spw-theme-provider.entry.js.map +1 -1
- package/dist/esm/spw-field-label_6.entry.js +6 -6
- package/dist/esm/spw-field-label_6.entry.js.map +1 -1
- package/dist/esm/spw-field-message.entry.js +1 -1
- package/dist/esm/spw-file-upload.entry.js +2 -2
- package/dist/esm/spw-footer-bottom.entry.js +1 -1
- package/dist/esm/spw-footer-content-col.entry.js +1 -1
- package/dist/esm/spw-footer-content.entry.js +1 -1
- package/dist/esm/spw-footer-link.entry.js +1 -1
- package/dist/esm/spw-footer.entry.js +1 -1
- package/dist/esm/spw-header-lang-item.entry.js +1 -1
- package/dist/esm/spw-header-lang.entry.js +1 -1
- package/dist/esm/spw-header-navigation-dropdown.entry.js +1 -1
- package/dist/esm/spw-header-navigation-item.entry.js +1 -1
- package/dist/esm/spw-header-navigation.entry.js +1 -1
- package/dist/esm/spw-header-persona-item.entry.js +1 -1
- package/dist/esm/spw-header-persona.entry.js +3 -1
- package/dist/esm/spw-header-persona.entry.js.map +1 -1
- package/dist/esm/spw-header.entry.js +20 -2
- package/dist/esm/spw-header.entry.js.map +1 -1
- package/dist/esm/spw-hero.entry.js +16 -2
- package/dist/esm/spw-hero.entry.js.map +1 -1
- package/dist/esm/spw-iodda.entry.js +1 -1
- package/dist/esm/spw-list-description.entry.js +1 -1
- package/dist/esm/spw-list-item.entry.js +6 -2
- package/dist/esm/spw-list-item.entry.js.map +1 -1
- package/dist/esm/spw-list-title.entry.js +2 -2
- package/dist/esm/spw-list-title.entry.js.map +1 -1
- package/dist/esm/spw-list.entry.js +21 -2
- package/dist/esm/spw-list.entry.js.map +1 -1
- package/dist/esm/spw-modal.entry.js +9 -2
- package/dist/esm/spw-modal.entry.js.map +1 -1
- package/dist/esm/spw-mosaic-item.entry.js +1 -1
- package/dist/esm/spw-mosaic.entry.js +1 -1
- package/dist/esm/spw-pagination.entry.js +6 -6
- package/dist/esm/spw-radio.entry.js +1 -1
- package/dist/esm/spw-search-field.entry.js +2 -2
- package/dist/esm/spw-sidebar-navigation-dropdown.entry.js +1 -1
- package/dist/esm/spw-sidebar-navigation-item.entry.js +3 -3
- package/dist/esm/spw-sidebar-navigation-separator.entry.js +1 -1
- package/dist/esm/spw-sidebar.entry.js +1 -1
- package/dist/esm/spw-skeleton.entry.js +1 -1
- package/dist/esm/spw-socials.entry.js +1 -1
- package/dist/esm/spw-stencil-library.js +1 -1
- package/dist/esm/spw-table-body.entry.js +1 -1
- package/dist/esm/spw-table-cell.entry.js +1 -1
- package/dist/esm/spw-table-footer.entry.js +1 -1
- package/dist/esm/spw-table-head.entry.js +1 -1
- package/dist/esm/spw-table-header.entry.js +2 -2
- package/dist/esm/spw-table-row.entry.js +1 -1
- package/dist/esm/spw-tabs-navigation-item.entry.js +2 -2
- package/dist/esm/spw-tabs-navigation-item.entry.js.map +1 -1
- package/dist/esm/spw-tabs-navigation.entry.js +1 -1
- package/dist/esm/spw-tabs.entry.js +1 -1
- package/dist/esm/spw-tag.entry.js +1 -1
- package/dist/esm/spw-text-field.entry.js +1 -1
- package/dist/esm/spw-textarea.entry.js +1 -1
- package/dist/esm/spw-tile-description.entry.js +1 -1
- package/dist/esm/spw-tile-title.entry.js +2 -2
- package/dist/esm/spw-tile-title.entry.js.map +1 -1
- package/dist/esm/spw-tile.entry.js +1 -1
- package/dist/esm/spw-tooltip.entry.js +1 -1
- package/dist/esm/spw-topbar.entry.js +1 -1
- package/dist/spw-stencil-library/p-02151d7e.entry.js +2 -0
- package/dist/spw-stencil-library/p-02151d7e.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-6080e3af.entry.js → p-0226ad72.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-cc934cd6.entry.js → p-03f1a257.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-5ed3e0dc.entry.js → p-04274072.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-7028e7b5.entry.js → p-08d78730.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-68470983.entry.js → p-09a2d080.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-3a4b10ad.entry.js → p-09d27c4b.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-9a5031d4.entry.js → p-11805364.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-0aa4a108.entry.js → p-158e7952.entry.js} +2 -2
- package/dist/spw-stencil-library/p-181ae002.entry.js +2 -0
- package/dist/spw-stencil-library/p-181ae002.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-d67fdf8d.entry.js → p-19a69f36.entry.js} +2 -2
- package/dist/spw-stencil-library/p-1d93e0d8.entry.js +2 -0
- package/dist/spw-stencil-library/p-1d93e0d8.entry.js.map +1 -0
- package/dist/spw-stencil-library/p-1d9ef3d5.entry.js +2 -0
- package/dist/spw-stencil-library/p-1d9ef3d5.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-a7d606e3.entry.js → p-1f382434.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-2f4d2f5e.entry.js → p-272dc0ee.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-92dc2c82.entry.js → p-2dff657f.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-d2c4f07d.entry.js → p-2e9756c4.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-b044a74c.entry.js → p-2fd3eb76.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-92c085a5.entry.js → p-3450855b.entry.js} +2 -2
- package/dist/spw-stencil-library/p-3450855b.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-93f062f5.entry.js → p-34dc26ba.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-2111f4af.entry.js → p-376b1e84.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-e5178e47.entry.js → p-403fe46c.entry.js} +2 -2
- package/dist/spw-stencil-library/p-403fe46c.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-5d7b7815.entry.js → p-42658e0a.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-729ecfae.entry.js → p-44d87d3f.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-302b8062.entry.js → p-4d61f200.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-272b59d2.entry.js → p-52c51ac5.entry.js} +2 -2
- package/dist/spw-stencil-library/p-532314d2.entry.js +2 -0
- package/dist/spw-stencil-library/p-532314d2.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-81b268ec.entry.js → p-554af1e3.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-2e8ec25d.entry.js → p-5a034423.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-8abf47fe.entry.js → p-5f82570e.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-fc1d8034.entry.js → p-64670b2e.entry.js} +2 -2
- package/dist/spw-stencil-library/p-74b4aea0.entry.js +2 -0
- package/dist/spw-stencil-library/p-74b4aea0.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-999a607e.entry.js → p-75159246.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-e6981b73.entry.js → p-7cd55113.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-4c4a0709.entry.js → p-7d80a44e.entry.js} +2 -2
- package/dist/spw-stencil-library/p-817e139e.entry.js +2 -0
- package/dist/spw-stencil-library/p-817e139e.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-6ec9bc6c.entry.js → p-8c6c9db5.entry.js} +2 -2
- package/dist/spw-stencil-library/p-8dca994a.entry.js +2 -0
- package/dist/spw-stencil-library/p-8dca994a.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-3554fb8f.entry.js → p-8ef8864e.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-095280cd.entry.js → p-9219fe7c.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-1e725439.entry.js → p-9356f8c9.entry.js} +2 -2
- package/dist/spw-stencil-library/p-9356f8c9.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-dd441d3f.entry.js → p-93a5f755.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-a421a2bd.entry.js → p-98ee79d6.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-4de11305.entry.js → p-a30563ff.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-9b651a66.entry.js → p-a8311acd.entry.js} +2 -2
- package/dist/spw-stencil-library/p-a8311acd.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-dff72718.entry.js → p-a93f21f9.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-3e6fe922.entry.js → p-a950bce8.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-4540f03d.entry.js → p-b0dc1073.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-cc8717c0.entry.js → p-ba27b9b0.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-e67b5361.entry.js → p-bf2d0cf4.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-f3e9ab57.entry.js → p-c2de4206.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-40283415.entry.js → p-c54fee67.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-a5b78201.entry.js → p-c838e17b.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-b77d1fe8.entry.js → p-cb269271.entry.js} +2 -2
- package/dist/spw-stencil-library/p-cb269271.entry.js.map +1 -0
- package/dist/spw-stencil-library/p-d3d4755a.entry.js +2 -0
- package/dist/spw-stencil-library/p-d3d4755a.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-c7e025a5.entry.js → p-db2354cf.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-65362ceb.entry.js → p-dd4bf12d.entry.js} +2 -2
- package/dist/spw-stencil-library/p-e00468aa.entry.js +2 -0
- package/dist/spw-stencil-library/p-e00468aa.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-6e73ea86.entry.js → p-e2f03a02.entry.js} +2 -2
- package/dist/spw-stencil-library/p-e2f03a02.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-f62d837a.entry.js → p-e72c6410.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-f108ecf1.entry.js → p-f5de314e.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-b7d4f7c6.entry.js → p-fabf41a2.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-8f3a311c.entry.js → p-fbe468de.entry.js} +2 -2
- package/dist/spw-stencil-library/p-fda153e0.entry.js +2 -0
- package/dist/spw-stencil-library/p-fda153e0.entry.js.map +1 -0
- package/dist/spw-stencil-library/spw-accordion.spw-accordion-content.spw-accordion-item.spw-accordion-title.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-card-content.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-card-excerpt.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-card-image.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-card-title.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-card.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-checkbox.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-field-label.spw-group.spw-icon.spw-link.spw-separator.spw-theme-provider.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-header-persona.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-header.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-hero.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-list-item.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-list-title.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-list.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-modal.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-stencil-library.css +1 -1
- package/dist/spw-stencil-library/spw-stencil-library.esm.js +1 -1
- package/dist/spw-stencil-library/spw-tabs-navigation-item.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-tile-title.entry.esm.js.map +1 -1
- package/dist/stats.json +1225 -524
- package/dist/types/components/spw-card/spw-card-title/spw-card-title.d.ts +2 -0
- package/dist/types/components/spw-card/spw-card.d.ts +6 -1
- package/dist/types/components/spw-header/spw-header-persona/spw-header-persona.d.ts +2 -0
- package/dist/types/components/spw-header/spw-header.d.ts +18 -0
- package/dist/types/components/spw-hero/spw-hero.d.ts +6 -0
- package/dist/types/components/spw-list/spw-list-item/spw-list-item.d.ts +2 -0
- package/dist/types/components/spw-list/spw-list.d.ts +6 -0
- package/dist/types/components/spw-modal/spw-modal.d.ts +1 -0
- package/dist/types/components.d.ts +122 -2
- package/dist/types/stories/components/spw-checkbox/spw-checkbox.stories.d.ts +1 -0
- package/dist/types/stories/organisms/spw-card/spw-card.stories.d.ts +2 -0
- package/hydrate/index.js +217 -105
- package/hydrate/index.mjs +217 -105
- package/package.json +1 -1
- package/dist/components/p-BRzMlz9h.js +0 -129
- package/dist/components/p-BRzMlz9h.js.map +0 -1
- package/dist/components/p-BbuJ0hsQ.js.map +0 -1
- package/dist/components/p-DSus8Zwu.js +0 -81
- package/dist/components/p-DSus8Zwu.js.map +0 -1
- package/dist/components/p-z27d6ASx.js.map +0 -1
- package/dist/components_vscode.json +0 -2748
- package/dist/spw-stencil-library/p-1e725439.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-40875966.entry.js +0 -2
- package/dist/spw-stencil-library/p-40875966.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-623f0364.entry.js +0 -2
- package/dist/spw-stencil-library/p-623f0364.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-6e73ea86.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-7f51d86c.entry.js +0 -2
- package/dist/spw-stencil-library/p-7f51d86c.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-90b5dafe.entry.js +0 -2
- package/dist/spw-stencil-library/p-90b5dafe.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-92c085a5.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-9b651a66.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-a46af3e5.entry.js +0 -2
- package/dist/spw-stencil-library/p-a46af3e5.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-b77d1fe8.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-c7453498.entry.js +0 -2
- package/dist/spw-stencil-library/p-c7453498.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-c8b5a26a.entry.js +0 -2
- package/dist/spw-stencil-library/p-c8b5a26a.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-cfd71d4a.entry.js +0 -2
- package/dist/spw-stencil-library/p-cfd71d4a.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-d6b76976.entry.js +0 -2
- package/dist/spw-stencil-library/p-d6b76976.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-e5178e47.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-e771bb8e.entry.js +0 -2
- package/dist/spw-stencil-library/p-e771bb8e.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-ffb3b941.entry.js +0 -2
- package/dist/spw-stencil-library/p-ffb3b941.entry.js.map +0 -1
- /package/dist/spw-stencil-library/{p-6080e3af.entry.js.map → p-0226ad72.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-cc934cd6.entry.js.map → p-03f1a257.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-5ed3e0dc.entry.js.map → p-04274072.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-7028e7b5.entry.js.map → p-08d78730.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-68470983.entry.js.map → p-09a2d080.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-3a4b10ad.entry.js.map → p-09d27c4b.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-9a5031d4.entry.js.map → p-11805364.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-0aa4a108.entry.js.map → p-158e7952.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-d67fdf8d.entry.js.map → p-19a69f36.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-a7d606e3.entry.js.map → p-1f382434.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-2f4d2f5e.entry.js.map → p-272dc0ee.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-92dc2c82.entry.js.map → p-2dff657f.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-d2c4f07d.entry.js.map → p-2e9756c4.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-b044a74c.entry.js.map → p-2fd3eb76.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-93f062f5.entry.js.map → p-34dc26ba.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-2111f4af.entry.js.map → p-376b1e84.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-5d7b7815.entry.js.map → p-42658e0a.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-729ecfae.entry.js.map → p-44d87d3f.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-302b8062.entry.js.map → p-4d61f200.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-272b59d2.entry.js.map → p-52c51ac5.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-81b268ec.entry.js.map → p-554af1e3.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-2e8ec25d.entry.js.map → p-5a034423.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-8abf47fe.entry.js.map → p-5f82570e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-fc1d8034.entry.js.map → p-64670b2e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-999a607e.entry.js.map → p-75159246.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-e6981b73.entry.js.map → p-7cd55113.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-4c4a0709.entry.js.map → p-7d80a44e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-6ec9bc6c.entry.js.map → p-8c6c9db5.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-3554fb8f.entry.js.map → p-8ef8864e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-095280cd.entry.js.map → p-9219fe7c.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-dd441d3f.entry.js.map → p-93a5f755.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-a421a2bd.entry.js.map → p-98ee79d6.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-4de11305.entry.js.map → p-a30563ff.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-dff72718.entry.js.map → p-a93f21f9.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-3e6fe922.entry.js.map → p-a950bce8.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-4540f03d.entry.js.map → p-b0dc1073.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-cc8717c0.entry.js.map → p-ba27b9b0.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-e67b5361.entry.js.map → p-bf2d0cf4.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-f3e9ab57.entry.js.map → p-c2de4206.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-40283415.entry.js.map → p-c54fee67.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-a5b78201.entry.js.map → p-c838e17b.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-c7e025a5.entry.js.map → p-db2354cf.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-65362ceb.entry.js.map → p-dd4bf12d.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-f62d837a.entry.js.map → p-e72c6410.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-f108ecf1.entry.js.map → p-f5de314e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-b7d4f7c6.entry.js.map → p-fabf41a2.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-8f3a311c.entry.js.map → p-fbe468de.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"spw-card-image.entry.cjs.js","mappings":";;;;AAAA,MAAM,eAAe,GAAG,
|
|
1
|
+
{"file":"spw-card-image.entry.cjs.js","mappings":";;;;AAAA,MAAM,eAAe,GAAG,wjLAAwjL;;MCOnkL,YAAY,GAAA,MAAA;;;;IAKvB,gBAAgB,GAAA;QACd,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;QACxC,IAAI,IAAI,EAAE;AACR,YAAA,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AACjE,YAAA,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;;;AAI9D,IAAA,WAAW,CAAC,OAAO,EAAA;AACzB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,iBAAiB,CAAC;QAChE,IAAI,IAAI,EAAE;YACR,IAAI,OAAO,EAAE;AACX,gBAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC;;iBAC7B;AACL,gBAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC;;;;IAK3C,MAAM,GAAA;AACJ,QAAA,QACEA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,gBAAgB,EAAA,EACxB,IAAI,CAAC,KAAK,IAAIA,OAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,uBAAuB,EAAE,EAAA,IAAI,CAAC,KAAK,CAAQ,EACtEA,OAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,EACbA,OAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,sBAAsB,EAAA,EAC/BA,OAAA,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAU,IAAI,EAAC,SAAS,GAAY,CAChC,CACF;;;;;;;;","names":["h"],"sources":["src/components/spw-card/spw-card-image/spw-card-image.scss?tag=spw-card-image&encapsulation=shadow","src/components/spw-card/spw-card-image/spw-card-image.tsx"],"sourcesContent":["@import '../../../scss/mixins';\n\n:host {\n width: 100%;\n line-height: 1;\n --spw-card-image-display: block;\n}\n\n:host(.--people) {\n width: 112px;\n max-width: 112px;\n}\n\n.spw-card-image {\n position: relative;\n overflow: hidden;\n border-radius: 5px 5px 0 0;\n display: var(--spw-card-image-display);\n\n :host(.--vertical) &,\n :host(.--event) & {\n border-radius: 5px 0 0 5px;\n }\n\n :host(.--people) & {\n border-radius: 5px;\n }\n\n :host(.--video) &,\n :host(.--sidebar) & {\n border-radius: 5px;\n }\n\n ::slotted(img),\n img {\n width: 100%;\n height: auto;\n transition: all 0.3s ease;\n transform-origin: center center;\n }\n\n &__icon {\n &:before {\n @include blanket;\n background: var(--spw-ds-primary);\n opacity: 0.4;\n }\n position: absolute;\n z-index: 2;\n display: flex;\n visibility: hidden;\n width: 100%;\n height: 100%;\n font-size: 30px;\n font-weight: 300;\n opacity: 0;\n top: 0;\n left: 0;\n color: white;\n justify-content: center;\n align-items: center;\n transition: all 0.3s ease;\n\n spw-icon {\n transform: scale(1.5);\n transition: all 0.3s ease;\n }\n }\n\n &__label {\n position: absolute;\n top: 10px;\n right: 10px;\n display: inline-flex;\n padding: 8px 12px;\n align-items: center;\n border-radius: 9999px;\n color: var(--spw-color-themes-grey-grey-900);\n box-shadow: var(--spw-effect-elevation-3);\n font-size: 14px;\n background: var(--spw-ds-white);\n z-index: 3;\n line-height: 1;\n }\n}\n\n:host(.--hovered:not(.--video)) {\n .spw-card-image,\n .spw-card-image.--is-hovered {\n .spw-card-image__icon {\n visibility: visible;\n opacity: 1;\n spw-icon {\n transform: scale(1);\n }\n }\n ::slotted(img) {\n transform: scale(1.1);\n }\n }\n}\n\n:host(.--vertical),\n:host(.--event) {\n width: 170px;\n min-width: 170px;\n position: relative;\n overflow: hidden;\n .spw-card-image {\n height: 100%;\n ::slotted(img) {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100% !important;\n object-fit: cover;\n object-position: center;\n }\n }\n}\n\n:host(.--sidebar) {\n width: 75px;\n min-width: 75px;\n height: 75px;\n min-height: 75px;\n position: relative;\n overflow: hidden;\n .spw-card-image {\n height: 100%;\n ::slotted(img) {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100% !important;\n object-fit: cover;\n object-position: center;\n }\n }\n}\n\n:host(.--video) {\n width: 100%;\n height: 100%;\n position: absolute;\n overflow: hidden;\n top: 0;\n left: 0;\n &:after {\n content: '';\n background: black;\n opacity: 0.4;\n transition: all linear 0.2s;\n border-radius: 5px;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n .spw-card-image {\n height: 100%;\n ::slotted(img) {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100% !important;\n object-fit: cover;\n object-position: center;\n }\n }\n}\n\n:host(.--video.--hovered) {\n &:after {\n opacity: 0.6;\n }\n}\n","import { Component, Prop, h, Element } from '@stencil/core';\n\n@Component({\n tag: 'spw-card-image',\n styleUrl: 'spw-card-image.scss',\n shadow: true,\n})\nexport class SpwCardImage {\n @Element() el: HTMLSpwCardImageElement;\n /** Label spécifié dans la carte */\n @Prop() label?: string;\n\n componentDidLoad() {\n const card = this.el.closest('spw-card');\n if (card) {\n card.addEventListener('mouseenter', () => this.onCardHover(true));\n card.addEventListener('mouseleave', () => this.onCardHover(false));\n }\n }\n\n private onCardHover(hovered) {\n const icon = this.el.shadowRoot.querySelector('.spw-card-image');\n if (icon) {\n if (hovered) {\n icon.classList.add('--is-hovered');\n } else {\n icon.classList.remove('--is-hovered');\n }\n }\n }\n\n render() {\n return (\n <div class=\"spw-card-image\">\n {this.label && <span class=\"spw-card-image__label\">{this.label}</span>}\n <slot></slot>\n <div class=\"spw-card-image__icon\">\n <spw-icon icon=\"fa-plus\"></spw-icon>\n </div>\n </div>\n );\n }\n}\n"],"version":3}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spw-card-image.entry.cjs.js","sources":["src/components/spw-card/spw-card-image/spw-card-image.scss?tag=spw-card-image&encapsulation=shadow","src/components/spw-card/spw-card-image/spw-card-image.tsx"],"sourcesContent":["@import '../../../scss/mixins';\n\n:host {\n display: block;\n width:
|
|
1
|
+
{"version":3,"file":"spw-card-image.entry.cjs.js","sources":["src/components/spw-card/spw-card-image/spw-card-image.scss?tag=spw-card-image&encapsulation=shadow","src/components/spw-card/spw-card-image/spw-card-image.tsx"],"sourcesContent":["@import '../../../scss/mixins';\n\n:host {\n width: 100%;\n line-height: 1;\n --spw-card-image-display: block;\n}\n\n:host(.--people) {\n width: 112px;\n max-width: 112px;\n}\n\n.spw-card-image {\n position: relative;\n overflow: hidden;\n border-radius: 5px 5px 0 0;\n display: var(--spw-card-image-display);\n\n :host(.--vertical) &,\n :host(.--event) & {\n border-radius: 5px 0 0 5px;\n }\n\n :host(.--people) & {\n border-radius: 5px;\n }\n\n :host(.--video) &,\n :host(.--sidebar) & {\n border-radius: 5px;\n }\n\n ::slotted(img),\n img {\n width: 100%;\n height: auto;\n transition: all 0.3s ease;\n transform-origin: center center;\n }\n\n &__icon {\n &:before {\n @include blanket;\n background: var(--spw-ds-primary);\n opacity: 0.4;\n }\n position: absolute;\n z-index: 2;\n display: flex;\n visibility: hidden;\n width: 100%;\n height: 100%;\n font-size: 30px;\n font-weight: 300;\n opacity: 0;\n top: 0;\n left: 0;\n color: white;\n justify-content: center;\n align-items: center;\n transition: all 0.3s ease;\n\n spw-icon {\n transform: scale(1.5);\n transition: all 0.3s ease;\n }\n }\n\n &__label {\n position: absolute;\n top: 10px;\n right: 10px;\n display: inline-flex;\n padding: 8px 12px;\n align-items: center;\n border-radius: 9999px;\n color: var(--spw-color-themes-grey-grey-900);\n box-shadow: var(--spw-effect-elevation-3);\n font-size: 14px;\n background: var(--spw-ds-white);\n z-index: 3;\n line-height: 1;\n }\n}\n\n:host(.--hovered:not(.--video)) {\n .spw-card-image,\n .spw-card-image.--is-hovered {\n .spw-card-image__icon {\n visibility: visible;\n opacity: 1;\n spw-icon {\n transform: scale(1);\n }\n }\n ::slotted(img) {\n transform: scale(1.1);\n }\n }\n}\n\n:host(.--vertical),\n:host(.--event) {\n width: 170px;\n min-width: 170px;\n position: relative;\n overflow: hidden;\n .spw-card-image {\n height: 100%;\n ::slotted(img) {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100% !important;\n object-fit: cover;\n object-position: center;\n }\n }\n}\n\n:host(.--sidebar) {\n width: 75px;\n min-width: 75px;\n height: 75px;\n min-height: 75px;\n position: relative;\n overflow: hidden;\n .spw-card-image {\n height: 100%;\n ::slotted(img) {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100% !important;\n object-fit: cover;\n object-position: center;\n }\n }\n}\n\n:host(.--video) {\n width: 100%;\n height: 100%;\n position: absolute;\n overflow: hidden;\n top: 0;\n left: 0;\n &:after {\n content: '';\n background: black;\n opacity: 0.4;\n transition: all linear 0.2s;\n border-radius: 5px;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n .spw-card-image {\n height: 100%;\n ::slotted(img) {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100% !important;\n object-fit: cover;\n object-position: center;\n }\n }\n}\n\n:host(.--video.--hovered) {\n &:after {\n opacity: 0.6;\n }\n}\n","import { Component, Prop, h, Element } from '@stencil/core';\n\n@Component({\n tag: 'spw-card-image',\n styleUrl: 'spw-card-image.scss',\n shadow: true,\n})\nexport class SpwCardImage {\n @Element() el: HTMLSpwCardImageElement;\n /** Label spécifié dans la carte */\n @Prop() label?: string;\n\n componentDidLoad() {\n const card = this.el.closest('spw-card');\n if (card) {\n card.addEventListener('mouseenter', () => this.onCardHover(true));\n card.addEventListener('mouseleave', () => this.onCardHover(false));\n }\n }\n\n private onCardHover(hovered) {\n const icon = this.el.shadowRoot.querySelector('.spw-card-image');\n if (icon) {\n if (hovered) {\n icon.classList.add('--is-hovered');\n } else {\n icon.classList.remove('--is-hovered');\n }\n }\n }\n\n render() {\n return (\n <div class=\"spw-card-image\">\n {this.label && <span class=\"spw-card-image__label\">{this.label}</span>}\n <slot></slot>\n <div class=\"spw-card-image__icon\">\n <spw-icon icon=\"fa-plus\"></spw-icon>\n </div>\n </div>\n );\n }\n}\n"],"names":["h"],"mappings":";;;;AAAA,MAAM,eAAe,GAAG,wjLAAwjL;;MCOnkL,YAAY,GAAA,MAAA;;;;IAKvB,gBAAgB,GAAA;QACd,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;QACxC,IAAI,IAAI,EAAE;AACR,YAAA,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AACjE,YAAA,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;;;AAI9D,IAAA,WAAW,CAAC,OAAO,EAAA;AACzB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,iBAAiB,CAAC;QAChE,IAAI,IAAI,EAAE;YACR,IAAI,OAAO,EAAE;AACX,gBAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC;;iBAC7B;AACL,gBAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC;;;;IAK3C,MAAM,GAAA;AACJ,QAAA,QACEA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,gBAAgB,EAAA,EACxB,IAAI,CAAC,KAAK,IAAIA,OAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,uBAAuB,EAAE,EAAA,IAAI,CAAC,KAAK,CAAQ,EACtEA,OAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,EACbA,OAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,sBAAsB,EAAA,EAC/BA,OAAA,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAU,IAAI,EAAC,SAAS,GAAY,CAChC,CACF;;;;;;;;"}
|
|
@@ -20,7 +20,7 @@ const SpwCardSubtagItem = class {
|
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
22
|
render() {
|
|
23
|
-
return (index.h(index.Host, { key: '
|
|
23
|
+
return (index.h(index.Host, { key: 'b9f9a9f02a6ef1ccf5d0c5a993b0e3b278978298' }, index.h("span", { key: 'c8e53bd3d9a2c60d7eb2a05fea866d991898b068', class: this.elementClass, onClick: () => this.handleClick() }, index.h("slot", { key: 'd2bb1ddcc64d71736687bde8c0844cd2bc84773e' }))));
|
|
24
24
|
}
|
|
25
25
|
};
|
|
26
26
|
SpwCardSubtagItem.style = spwCardSubtagItemCss;
|
|
@@ -29,7 +29,7 @@ const SpwCardSubtags = class {
|
|
|
29
29
|
};
|
|
30
30
|
}
|
|
31
31
|
render() {
|
|
32
|
-
return (index.h(index.Host, { key: '
|
|
32
|
+
return (index.h(index.Host, { key: 'c3615d6567c3f3b0f91c5784d14afb490796fcfd' }, index.h("div", { key: '1d4b55d7a2ceb7216ae369571725a22c9483fb97', class: this.elementClass }, index.h("slot", { key: 'a3d0f73339d00b5659dc0f4033ca3d3c6bc60596' }))));
|
|
33
33
|
}
|
|
34
34
|
get el() { return index.getElement(this); }
|
|
35
35
|
};
|
|
@@ -2,14 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
var index = require('./index-iVhYitTd.js');
|
|
4
4
|
|
|
5
|
-
const spwCardTitleCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;box-sizing:border-box;font-size:100%;line-height:1.3}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1200px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px;width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}.spw-card-title{color:var(--spw-color-themes-grey-grey-900);font-size:20px;font-weight:700;line-height:1.3;transition:all .3s ease}:host(.--hovered:not(.--video)) .spw-card-title{color:var(--spw-ds-primary)}:host(.--video) .spw-card-title{color:#fff}";
|
|
5
|
+
const spwCardTitleCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;box-sizing:border-box;font-size:100%;line-height:1.3}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1200px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px;width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}.spw-card-title{color:var(--spw-color-themes-grey-grey-900);font-size:20px;font-weight:700;line-height:1.3;transition:all .3s ease}:host(.--hovered:not(.--video):not(.--people)) .spw-card-title{color:var(--spw-ds-primary)}:host(.--video) .spw-card-title{color:#fff}:host(.--sidebar) .spw-card-title{font-size:18px;line-height:1.2}:host(.--people) .spw-card-title{border-bottom:1px solid var(--spw-color-themes-grey-grey-300);padding:0 24px}:host(.--people) .spw-card-title__text{border-bottom:4px solid var(--spw-card-title-border-color,var(--spw-ds-primary));display:inline-block;padding:18px 0}";
|
|
6
6
|
|
|
7
7
|
const SpwCardTitle = class {
|
|
8
8
|
constructor(hostRef) {
|
|
9
9
|
index.registerInstance(this, hostRef);
|
|
10
|
+
/** Code hexadécimal de la bordure sous le titre (à appliquer sur spw-card-title si la variante de la carte est "people") */
|
|
11
|
+
this.borderColor = '';
|
|
10
12
|
}
|
|
11
13
|
render() {
|
|
12
|
-
return (index.h("h3", { key: '
|
|
14
|
+
return (index.h(index.Host, { key: 'fee3f93429299a55ce235a0b87abc7168570491c', style: { '--spw-card-title-border-color': this.borderColor } }, index.h("h3", { key: '2d6995704e9656b954a0b2d0eb5a06d25ac41133', class: "spw-card-title" }, index.h("span", { key: '801aafb6917dd8233e644cfad05bbf3009fdb44c', class: "spw-card-title__text" }, index.h("slot", { key: '0bd326fa65f7cbe4bb8db95321fdd16a39562dd5' })))));
|
|
13
15
|
}
|
|
14
16
|
};
|
|
15
17
|
SpwCardTitle.style = spwCardTitleCss;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"spw-card-title.entry.cjs.js","mappings":";;;;AAAA,MAAM,eAAe,GAAG,
|
|
1
|
+
{"file":"spw-card-title.entry.cjs.js","mappings":";;;;AAAA,MAAM,eAAe,GAAG,kpGAAkpG;;MCO7pG,YAAY,GAAA,MAAA;AALzB,IAAA,WAAA,CAAA,OAAA,EAAA;;;AAOU,QAAA,IAAW,CAAA,WAAA,GAAY,EAAE;AAalC;IAXC,MAAM,GAAA;AACJ,QAAA,QACEA,OAAA,CAACC,UAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAC,KAAK,EAAE,EAAE,+BAA+B,EAAE,IAAI,CAAC,WAAW,EAAE,EAAA,EAChED,OAAI,CAAA,IAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,gBAAgB,EAAA,EACxBA,OAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,sBAAsB,EAAA,EAChCA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAa,CACR,CACJ,CACA;;;;;;;","names":["h","Host"],"sources":["src/components/spw-card/spw-card-title/spw-card-title.scss?tag=spw-card-title&encapsulation=shadow","src/components/spw-card/spw-card-title/spw-card-title.tsx"],"sourcesContent":[".spw-card-title {\n line-height: 1.3;\n font-weight: 700;\n font-size: 20px;\n transition: all 0.3s ease;\n color: var(--spw-color-themes-grey-grey-900);\n :host(.--hovered:not(.--video):not(.--people)) & {\n color: var(--spw-ds-primary);\n }\n :host(.--video) & {\n color: white;\n }\n :host(.--sidebar) & {\n font-size: 18px;\n line-height: 1.2;\n }\n :host(.--people) & {\n padding: 0 24px;\n border-bottom: 1px solid var(--spw-color-themes-grey-grey-300);\n }\n &__text {\n :host(.--people) & {\n display: inline-block;\n padding: 18px 0;\n border-bottom: 4px solid var(--spw-card-title-border-color, var(--spw-ds-primary));\n }\n }\n}\n","import { Component, Prop, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-card-title',\n styleUrl: 'spw-card-title.scss',\n shadow: true,\n})\nexport class SpwCardTitle {\n /** Code hexadécimal de la bordure sous le titre (à appliquer sur spw-card-title si la variante de la carte est \"people\") */\n @Prop() borderColor?: string = '';\n\n render() {\n return (\n <Host style={{ '--spw-card-title-border-color': this.borderColor }}>\n <h3 class=\"spw-card-title\">\n <span class=\"spw-card-title__text\">\n <slot></slot>\n </span>\n </h3>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spw-card-title.entry.cjs.js","sources":["src/components/spw-card/spw-card-title/spw-card-title.scss?tag=spw-card-title&encapsulation=shadow","src/components/spw-card/spw-card-title/spw-card-title.tsx"],"sourcesContent":[".spw-card-title {\n line-height: 1.3;\n font-weight: 700;\n font-size: 20px;\n transition: all 0.3s ease;\n color: var(--spw-color-themes-grey-grey-900);\n :host(.--hovered:not(.--video)) & {\n color: var(--spw-ds-primary);\n }\n :host(.--video) & {\n color: white;\n }\n}\n","import { Component, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-card-title',\n styleUrl: 'spw-card-title.scss',\n shadow: true,\n})\nexport class SpwCardTitle {\n render() {\n return (\n <h3 class=\"spw-card-title\">\n
|
|
1
|
+
{"version":3,"file":"spw-card-title.entry.cjs.js","sources":["src/components/spw-card/spw-card-title/spw-card-title.scss?tag=spw-card-title&encapsulation=shadow","src/components/spw-card/spw-card-title/spw-card-title.tsx"],"sourcesContent":[".spw-card-title {\n line-height: 1.3;\n font-weight: 700;\n font-size: 20px;\n transition: all 0.3s ease;\n color: var(--spw-color-themes-grey-grey-900);\n :host(.--hovered:not(.--video):not(.--people)) & {\n color: var(--spw-ds-primary);\n }\n :host(.--video) & {\n color: white;\n }\n :host(.--sidebar) & {\n font-size: 18px;\n line-height: 1.2;\n }\n :host(.--people) & {\n padding: 0 24px;\n border-bottom: 1px solid var(--spw-color-themes-grey-grey-300);\n }\n &__text {\n :host(.--people) & {\n display: inline-block;\n padding: 18px 0;\n border-bottom: 4px solid var(--spw-card-title-border-color, var(--spw-ds-primary));\n }\n }\n}\n","import { Component, Prop, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-card-title',\n styleUrl: 'spw-card-title.scss',\n shadow: true,\n})\nexport class SpwCardTitle {\n /** Code hexadécimal de la bordure sous le titre (à appliquer sur spw-card-title si la variante de la carte est \"people\") */\n @Prop() borderColor?: string = '';\n\n render() {\n return (\n <Host style={{ '--spw-card-title-border-color': this.borderColor }}>\n <h3 class=\"spw-card-title\">\n <span class=\"spw-card-title__text\">\n <slot></slot>\n </span>\n </h3>\n </Host>\n );\n }\n}\n"],"names":["h","Host"],"mappings":";;;;AAAA,MAAM,eAAe,GAAG,kpGAAkpG;;MCO7pG,YAAY,GAAA,MAAA;AALzB,IAAA,WAAA,CAAA,OAAA,EAAA;;;AAOU,QAAA,IAAW,CAAA,WAAA,GAAY,EAAE;AAalC;IAXC,MAAM,GAAA;AACJ,QAAA,QACEA,OAAA,CAACC,UAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAC,KAAK,EAAE,EAAE,+BAA+B,EAAE,IAAI,CAAC,WAAW,EAAE,EAAA,EAChED,OAAI,CAAA,IAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,gBAAgB,EAAA,EACxBA,OAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,sBAAsB,EAAA,EAChCA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAa,CACR,CACJ,CACA;;;;;;;"}
|
|
@@ -2,12 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
var index = require('./index-iVhYitTd.js');
|
|
4
4
|
|
|
5
|
-
const spwCardCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100
|
|
5
|
+
const spwCardCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;--spw-card-background:var(--spw-ds-white);--spw-card-box-shadow:var(--spw-effect-elevation-6);--spw-card-border:none;box-sizing:border-box;display:block;font-size:100%;line-height:1.3;position:relative;width:100%}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1200px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px;width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}:host[data-modal-trigger]{cursor:pointer}:host(.--is-full-height){height:100%}.spw-card{background:var(--spw-card-background);border:var(--spw-card-border);border-radius:5px;box-shadow:var(--spw-card-box-shadow);display:block;transition:all .3s ease-in-out}:host(.--is-full-height) .spw-card{height:100%}.spw-card--hoverable:hover{box-shadow:var(--spw-effect-elevation-4);transform:translateY(-5px)}.spw-card__dates{align-items:center;background:var(--spw-ds-primary);border-radius:50%;color:#fff;cursor:pointer;display:inline-flex;flex-direction:column;font-size:18px;height:80px;justify-content:center;left:0;line-height:1.1;position:absolute;text-align:center;text-decoration:none;top:50%;transform:translate(-50%,-50%);width:80px;z-index:2}.spw-card__date-item span:first-of-type{font-weight:700}.spw-card__link{color:inherit;display:block;height:100%;text-decoration:none;width:100%}.spw-card--no-image .spw-card__link{padding-top:15px}.spw-card__link:focus-visible{border-radius:5px;box-shadow:0 0 0 5px #000;outline:3px solid #fff;outline-offset:-1px}.spw-card--vertical .spw-card__link,.spw-card--video .spw-card__link{display:flex;min-height:240px}.spw-card--event .spw-card__link{display:flex}.spw-card--sidebar,.spw-card--sidebar:hover{box-shadow:none}.spw-card--sidebar .spw-card__link{display:flex;gap:16px}.spw-card--event{left:40px;position:relative;width:calc(100% - 40px)}";
|
|
6
6
|
|
|
7
7
|
const SpwCard = class {
|
|
8
8
|
constructor(hostRef) {
|
|
9
9
|
index.registerInstance(this, hostRef);
|
|
10
10
|
this.hasImage = false;
|
|
11
|
+
this.childHoveredCount = 0; // <-- Ajouté : pour suivre le nombre de sous-cartes survolées
|
|
11
12
|
/** Type de variante de carte */
|
|
12
13
|
this.variant = 'news';
|
|
13
14
|
/** Type d'élément du bouton */
|
|
@@ -18,28 +19,57 @@ const SpwCard = class {
|
|
|
18
19
|
this.fullHeight = false;
|
|
19
20
|
/** Si désactivée, la carte n'est pas utilisable */
|
|
20
21
|
this.disabled = false;
|
|
22
|
+
this.onNestedCardEnter = () => {
|
|
23
|
+
this.childHoveredCount++;
|
|
24
|
+
this.setImageHovered(false);
|
|
25
|
+
};
|
|
26
|
+
this.onNestedCardLeave = () => {
|
|
27
|
+
this.childHoveredCount = Math.max(0, this.childHoveredCount - 1);
|
|
28
|
+
if (this.childHoveredCount === 0 && this.isPointerInside(this.el)) {
|
|
29
|
+
this.setImageHovered(true);
|
|
30
|
+
}
|
|
31
|
+
};
|
|
21
32
|
}
|
|
22
33
|
componentWillLoad() {
|
|
23
34
|
this.checkForImage();
|
|
24
35
|
this.applyVariantToChildren();
|
|
36
|
+
this.attachNestedCardListeners();
|
|
25
37
|
}
|
|
26
38
|
slotChanged() {
|
|
27
39
|
this.checkForImage();
|
|
28
40
|
this.applyVariantToChildren();
|
|
41
|
+
this.attachNestedCardListeners();
|
|
29
42
|
}
|
|
30
43
|
onMouseEnter() {
|
|
31
|
-
this.
|
|
44
|
+
if (this.childHoveredCount === 0) {
|
|
45
|
+
this.setImageHovered(true);
|
|
46
|
+
}
|
|
32
47
|
}
|
|
33
48
|
onMouseLeave() {
|
|
34
49
|
this.setImageHovered(false);
|
|
35
50
|
}
|
|
51
|
+
attachNestedCardListeners() {
|
|
52
|
+
requestAnimationFrame(() => {
|
|
53
|
+
const nestedCards = this.el.querySelectorAll('spw-card');
|
|
54
|
+
nestedCards.forEach(card => {
|
|
55
|
+
card.addEventListener('mouseenter', this.onNestedCardEnter.bind(this), true);
|
|
56
|
+
card.addEventListener('mouseleave', this.onNestedCardLeave.bind(this), true);
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
isPointerInside(element) {
|
|
61
|
+
const rect = element.getBoundingClientRect();
|
|
62
|
+
const { left, top, right, bottom } = rect;
|
|
63
|
+
const { clientX, clientY } = window;
|
|
64
|
+
return clientX >= left && clientX <= right && clientY >= top && clientY <= bottom;
|
|
65
|
+
}
|
|
36
66
|
checkForImage() {
|
|
37
67
|
requestAnimationFrame(() => {
|
|
38
68
|
const imageElement = this.el.querySelector('spw-card-image');
|
|
39
69
|
const contentElement = this.el.querySelector('spw-card-content');
|
|
40
70
|
this.hasImage = !!imageElement;
|
|
41
71
|
if (!this.hasImage) {
|
|
42
|
-
contentElement.classList.add('--no-image');
|
|
72
|
+
contentElement === null || contentElement === void 0 ? void 0 : contentElement.classList.add('--no-image');
|
|
43
73
|
}
|
|
44
74
|
});
|
|
45
75
|
}
|
|
@@ -57,11 +87,11 @@ const SpwCard = class {
|
|
|
57
87
|
const titleElement = this.el.querySelector('spw-card-title');
|
|
58
88
|
const excerptElement = this.el.querySelector('spw-card-excerpt');
|
|
59
89
|
const subtagsElement = this.el.querySelector('spw-card-subtags');
|
|
60
|
-
contentElement
|
|
61
|
-
imageElement
|
|
62
|
-
titleElement
|
|
63
|
-
excerptElement
|
|
64
|
-
subtagsElement
|
|
90
|
+
contentElement === null || contentElement === void 0 ? void 0 : contentElement.classList.add(variantClass);
|
|
91
|
+
imageElement === null || imageElement === void 0 ? void 0 : imageElement.classList.add(variantClass);
|
|
92
|
+
titleElement === null || titleElement === void 0 ? void 0 : titleElement.classList.add(variantClass);
|
|
93
|
+
excerptElement === null || excerptElement === void 0 ? void 0 : excerptElement.classList.add(variantClass);
|
|
94
|
+
subtagsElement === null || subtagsElement === void 0 ? void 0 : subtagsElement.classList.add(variantClass);
|
|
65
95
|
});
|
|
66
96
|
}
|
|
67
97
|
setImageHovered(isHovered) {
|
|
@@ -96,7 +126,7 @@ const SpwCard = class {
|
|
|
96
126
|
'aria-label': this === null || this === void 0 ? void 0 : this.accAriaLabel,
|
|
97
127
|
'aria-disabled': this.disabled ? 'true' : null,
|
|
98
128
|
};
|
|
99
|
-
return (index.h(index.Host, { key: '
|
|
129
|
+
return (index.h(index.Host, { key: '3a6d060458c1301b3935fca45fbd75f75d331435', class: { '--is-full-height': this.fullHeight } }, index.h("article", { key: '4fb9f4c2dcdfeadee146559a49881392171352a8', class: this.elementClass }, variant === 'event' && (index.h(TagType, Object.assign({ key: '7bc364652cfcc22b7e03fc21383247161d6a0a17' }, attrs, { class: "spw-card__dates" }), dateStart && index.h("div", { key: '07f9aa4a3396cb4b7f376c5f0d6f7a7c167a4855', class: "spw-card__date-item" }, this.formatDate(dateStart)), dateEnd && index.h("div", { key: '96db297358b7b797da1b24b7809313df3092480d', class: "spw-card__date-item" }, this.formatDate(dateEnd)))), index.h(TagType, Object.assign({ key: '61e28cbd7629917f5f82e192be5080f7a905fe81' }, attrs, ariaAttributes, { class: "spw-card__link" }), index.h("slot", { key: '3bdecad5580ae21af4da15d2710d787a081a95d0' })))));
|
|
100
130
|
}
|
|
101
131
|
get el() { return index.getElement(this); }
|
|
102
132
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"spw-card.entry.cjs.js","mappings":"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","names":["index","h","Host"],"sources":["src/components/spw-card/spw-card.scss?tag=spw-card&encapsulation=shadow","src/components/spw-card/spw-card.tsx"],"sourcesContent":[":host {\n display: block;\n position: relative;\n width: 100%;\n &[data-modal-trigger] {\n cursor: pointer;\n }\n}\n\n:host(.--is-full-height) {\n height: 100%;\n}\n\n.spw-card {\n display: block;\n border-radius: 5px;\n background: var(--spw-ds-white);\n box-shadow: var(--spw-effect-elevation-2);\n transition: all 0.3s ease-in-out;\n\n :host(.--is-full-height) & {\n height: 100%;\n }\n\n &--hoverable:hover {\n box-shadow: var(--spw-effect-elevation-4);\n transform: translateY(-5px);\n }\n\n &__dates {\n cursor: pointer;\n position: absolute;\n top: 50%;\n left: 0;\n transform: translate(-50%, -50%);\n flex-direction: column;\n line-height: 1.1;\n width: 80px;\n height: 80px;\n text-align: center;\n color: white;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n background: var(--spw-ds-primary);\n border-radius: 50%;\n font-size: 18px;\n text-decoration: none;\n }\n &__date-item {\n span:first-of-type {\n font-weight: bold;\n }\n }\n}\n\n.spw-card__link {\n display: block;\n height: 100%;\n width: 100%;\n color: inherit;\n text-decoration: none;\n\n .spw-card--no-image & {\n padding-top: 15px;\n }\n\n &:focus-visible {\n outline: 3px solid white;\n outline-offset: -1px;\n box-shadow: 0 0 0 5px black;\n border-radius: 5px;\n }\n}\n\n.spw-card--vertical,\n.spw-card--video {\n .spw-card__link {\n display: flex;\n min-height: 240px;\n }\n}\n\n.spw-card--sidebar {\n box-shadow: none;\n &:hover {\n box-shadow: none;\n }\n .spw-card__link {\n display: flex;\n gap: 16px;\n }\n}\n\n.spw-card--event {\n position: relative;\n width: calc(100% - 40px);\n left: 40px;\n}\n","import { Element, Listen, State, Component, Prop, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-card',\n styleUrl: 'spw-card.scss',\n shadow: true,\n})\nexport class SpwCard {\n @Element() el: HTMLSpwCardElement;\n @State() hasImage: boolean = false;\n\n /** Type de variante de carte */\n @Prop() variant?: 'news' | 'vertical' | 'video' | 'event' | 'sidebar' = 'news';\n /** Type d'élément du bouton */\n @Prop() elementType: string = 'a';\n /** Spécifie le lien si nécessaire */\n @Prop() href?: string;\n /** Attribut target, s'applique uniquement si href est rempli */\n @Prop() target: string = '_self';\n /** Remplit l'attribut rel */\n @Prop() rel?: string;\n /** Définir une date de début si la carte est un évènement */\n @Prop() dateStart?: string;\n /** Définir une date de fin si la carte est un évènement */\n @Prop() dateEnd?: string;\n\n /** Si vrai, les cartes ont la même hauteur */\n @Prop() fullHeight: boolean = false;\n /** Si désactivée, la carte n'est pas utilisable */\n @Prop() disabled: boolean = false;\n /** Remplit l'attribut aria-label, utilisé à des fins d'accessibilité */\n @Prop() accAriaLabel?: string;\n\n componentWillLoad() {\n this.checkForImage();\n this.applyVariantToChildren();\n }\n\n @Listen('slotchange')\n slotChanged() {\n this.checkForImage();\n this.applyVariantToChildren();\n }\n\n @Listen('mouseenter')\n onMouseEnter() {\n this.setImageHovered(true);\n }\n\n @Listen('mouseleave')\n onMouseLeave() {\n this.setImageHovered(false);\n }\n\n private checkForImage() {\n requestAnimationFrame(() => {\n const imageElement = this.el.querySelector('spw-card-image');\n const contentElement = this.el.querySelector('spw-card-content');\n this.hasImage = !!imageElement;\n if (!this.hasImage) {\n contentElement.classList.add('--no-image');\n }\n });\n }\n\n private formatDate(date?: string): any[] {\n if (!date) return [];\n const parts = date.split('/');\n return parts.flatMap((part, index) => (index < parts.length - 1 ? [<span>{part}</span>, <span>/</span>] : [<span>{part}</span>]));\n }\n\n private applyVariantToChildren() {\n requestAnimationFrame(() => {\n const variantClass = `--${this.variant}`;\n const contentElement = this.el.querySelector('spw-card-content');\n const imageElement = this.el.querySelector('spw-card-image');\n const titleElement = this.el.querySelector('spw-card-title');\n const excerptElement = this.el.querySelector('spw-card-excerpt');\n const subtagsElement = this.el.querySelector('spw-card-subtags');\n\n contentElement && contentElement.classList.add(variantClass);\n imageElement && imageElement.classList.add(variantClass);\n titleElement && titleElement.classList.add(variantClass);\n excerptElement && excerptElement.classList.add(variantClass);\n subtagsElement && subtagsElement.classList.add(variantClass);\n });\n }\n\n private setImageHovered(isHovered: boolean) {\n const imageElement = this.el.querySelector('spw-card-image');\n const titleElement = this.el.querySelector('spw-card-title');\n if (imageElement && this.href) {\n imageElement.classList.toggle('--hovered', isHovered);\n }\n if (titleElement && this.href) {\n titleElement.classList.toggle('--hovered', isHovered);\n }\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-card': true,\n 'spw-card--hoverable': !!this.href,\n 'spw-card--no-image': !this.hasImage,\n [`spw-card--${this.variant}`]: true,\n };\n }\n\n render() {\n const { href, rel, target, dateStart, dateEnd, variant } = this;\n const TagType = this.href === undefined ? 'div' : 'a';\n const attrs =\n TagType === 'div'\n ? {}\n : {\n href,\n rel,\n target,\n };\n\n const ariaAttributes = {\n 'aria-label': this?.accAriaLabel,\n 'aria-disabled': this.disabled ? 'true' : null,\n };\n\n return (\n <Host class={{ '--is-full-height': this.fullHeight }}>\n <article class={this.elementClass}>\n {variant === 'event' && (\n <TagType {...attrs} class=\"spw-card__dates\">\n {dateStart && <div class=\"spw-card__date-item\">{this.formatDate(dateStart)}</div>}\n {dateEnd && <div class=\"spw-card__date-item\">{this.formatDate(dateEnd)}</div>}\n </TagType>\n )}\n <TagType {...attrs} {...ariaAttributes} class=\"spw-card__link\">\n <slot></slot>\n </TagType>\n </article>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"spw-card.entry.cjs.js","mappings":"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","names":["index","h","Host"],"sources":["src/components/spw-card/spw-card.scss?tag=spw-card&encapsulation=shadow","src/components/spw-card/spw-card.tsx"],"sourcesContent":[":host {\n display: block;\n position: relative;\n width: 100%;\n --spw-card-background: var(--spw-ds-white);\n --spw-card-box-shadow: var(--spw-effect-elevation-6);\n --spw-card-border: none;\n &[data-modal-trigger] {\n cursor: pointer;\n }\n}\n\n:host(.--is-full-height) {\n height: 100%;\n}\n\n.spw-card {\n display: block;\n border-radius: 5px;\n background: var(--spw-card-background);\n box-shadow: var(--spw-card-box-shadow);\n border: var(--spw-card-border);\n transition: all 0.3s ease-in-out;\n\n :host(.--is-full-height) & {\n height: 100%;\n }\n\n &--hoverable:hover {\n box-shadow: var(--spw-effect-elevation-4);\n transform: translateY(-5px);\n }\n\n &__dates {\n cursor: pointer;\n position: absolute;\n top: 50%;\n left: 0;\n transform: translate(-50%, -50%);\n flex-direction: column;\n line-height: 1.1;\n width: 80px;\n height: 80px;\n text-align: center;\n color: white;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n background: var(--spw-ds-primary);\n border-radius: 50%;\n font-size: 18px;\n text-decoration: none;\n z-index: 2;\n }\n &__date-item {\n span:first-of-type {\n font-weight: bold;\n }\n }\n}\n\n.spw-card__link {\n display: block;\n height: 100%;\n width: 100%;\n color: inherit;\n text-decoration: none;\n\n .spw-card--no-image & {\n padding-top: 15px;\n }\n\n &:focus-visible {\n outline: 3px solid white;\n outline-offset: -1px;\n box-shadow: 0 0 0 5px black;\n border-radius: 5px;\n }\n}\n\n.spw-card--vertical,\n.spw-card--video {\n .spw-card__link {\n display: flex;\n min-height: 240px;\n }\n}\n\n.spw-card--event {\n .spw-card__link {\n display: flex;\n }\n}\n\n.spw-card--sidebar {\n box-shadow: none;\n &:hover {\n box-shadow: none;\n }\n .spw-card__link {\n display: flex;\n gap: 16px;\n }\n}\n\n.spw-card--event {\n position: relative;\n width: calc(100% - 40px);\n left: 40px;\n}\n","import { Element, Listen, State, Component, Prop, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-card',\n styleUrl: 'spw-card.scss',\n shadow: true,\n})\nexport class SpwCard {\n @Element() el: HTMLSpwCardElement;\n @State() hasImage: boolean = false;\n private childHoveredCount = 0; // <-- Ajouté : pour suivre le nombre de sous-cartes survolées\n\n /** Type de variante de carte */\n @Prop() variant?: 'news' | 'vertical' | 'video' | 'event' | 'sidebar' | 'people' = 'news';\n /** Type d'élément du bouton */\n @Prop() elementType: string = 'a';\n /** Spécifie le lien si nécessaire */\n @Prop() href?: string;\n /** Attribut target, s'applique uniquement si href est rempli */\n @Prop() target: string = '_self';\n /** Remplit l'attribut rel */\n @Prop() rel?: string;\n /** Définir une date de début si la carte est un évènement */\n @Prop() dateStart?: string;\n /** Définir une date de fin si la carte est un évènement */\n @Prop() dateEnd?: string;\n\n /** Si vrai, les cartes ont la même hauteur */\n @Prop() fullHeight: boolean = false;\n /** Si désactivée, la carte n'est pas utilisable */\n @Prop() disabled: boolean = false;\n /** Remplit l'attribut aria-label, utilisé à des fins d'accessibilité */\n @Prop() accAriaLabel?: string;\n\n componentWillLoad() {\n this.checkForImage();\n this.applyVariantToChildren();\n this.attachNestedCardListeners();\n }\n\n @Listen('slotchange')\n slotChanged() {\n this.checkForImage();\n this.applyVariantToChildren();\n this.attachNestedCardListeners();\n }\n\n @Listen('mouseenter')\n onMouseEnter() {\n if (this.childHoveredCount === 0) {\n this.setImageHovered(true);\n }\n }\n\n @Listen('mouseleave')\n onMouseLeave() {\n this.setImageHovered(false);\n }\n\n private attachNestedCardListeners() {\n requestAnimationFrame(() => {\n const nestedCards = this.el.querySelectorAll('spw-card');\n\n nestedCards.forEach(card => {\n card.addEventListener('mouseenter', this.onNestedCardEnter.bind(this), true);\n card.addEventListener('mouseleave', this.onNestedCardLeave.bind(this), true);\n });\n });\n }\n\n private onNestedCardEnter = () => {\n this.childHoveredCount++;\n this.setImageHovered(false);\n };\n\n private onNestedCardLeave = () => {\n this.childHoveredCount = Math.max(0, this.childHoveredCount - 1);\n if (this.childHoveredCount === 0 && this.isPointerInside(this.el)) {\n this.setImageHovered(true);\n }\n };\n\n private isPointerInside(element: HTMLElement): boolean {\n const rect = element.getBoundingClientRect();\n const { left, top, right, bottom } = rect;\n const { clientX, clientY } = window as any;\n return clientX >= left && clientX <= right && clientY >= top && clientY <= bottom;\n }\n\n private checkForImage() {\n requestAnimationFrame(() => {\n const imageElement = this.el.querySelector('spw-card-image');\n const contentElement = this.el.querySelector('spw-card-content');\n this.hasImage = !!imageElement;\n if (!this.hasImage) {\n contentElement?.classList.add('--no-image');\n }\n });\n }\n\n private formatDate(date?: string): any[] {\n if (!date) return [];\n const parts = date.split('/');\n return parts.flatMap((part, index) => (index < parts.length - 1 ? [<span>{part}</span>, <span>/</span>] : [<span>{part}</span>]));\n }\n\n private applyVariantToChildren() {\n requestAnimationFrame(() => {\n const variantClass = `--${this.variant}`;\n const contentElement = this.el.querySelector('spw-card-content');\n const imageElement = this.el.querySelector('spw-card-image');\n const titleElement = this.el.querySelector('spw-card-title');\n const excerptElement = this.el.querySelector('spw-card-excerpt');\n const subtagsElement = this.el.querySelector('spw-card-subtags');\n\n contentElement?.classList.add(variantClass);\n imageElement?.classList.add(variantClass);\n titleElement?.classList.add(variantClass);\n excerptElement?.classList.add(variantClass);\n subtagsElement?.classList.add(variantClass);\n });\n }\n\n private setImageHovered(isHovered: boolean) {\n const imageElement = this.el.querySelector('spw-card-image');\n const titleElement = this.el.querySelector('spw-card-title');\n if (imageElement && this.href) {\n imageElement.classList.toggle('--hovered', isHovered);\n }\n if (titleElement && this.href) {\n titleElement.classList.toggle('--hovered', isHovered);\n }\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-card': true,\n 'spw-card--hoverable': !!this.href,\n 'spw-card--no-image': !this.hasImage,\n [`spw-card--${this.variant}`]: true,\n };\n }\n\n render() {\n const { href, rel, target, dateStart, dateEnd, variant } = this;\n const TagType = this.href === undefined ? 'div' : 'a';\n const attrs =\n TagType === 'div'\n ? {}\n : {\n href,\n rel,\n target,\n };\n\n const ariaAttributes = {\n 'aria-label': this?.accAriaLabel,\n 'aria-disabled': this.disabled ? 'true' : null,\n };\n\n return (\n <Host class={{ '--is-full-height': this.fullHeight }}>\n <article class={this.elementClass}>\n {variant === 'event' && (\n <TagType {...attrs} class=\"spw-card__dates\">\n {dateStart && <div class=\"spw-card__date-item\">{this.formatDate(dateStart)}</div>}\n {dateEnd && <div class=\"spw-card__date-item\">{this.formatDate(dateEnd)}</div>}\n </TagType>\n )}\n <TagType {...attrs} {...ariaAttributes} class=\"spw-card__link\">\n <slot></slot>\n </TagType>\n </article>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spw-card.entry.cjs.js","sources":["src/components/spw-card/spw-card.scss?tag=spw-card&encapsulation=shadow","src/components/spw-card/spw-card.tsx"],"sourcesContent":[":host {\n display: block;\n position: relative;\n width: 100%;\n &[data-modal-trigger] {\n cursor: pointer;\n }\n}\n\n:host(.--is-full-height) {\n height: 100%;\n}\n\n.spw-card {\n display: block;\n border-radius: 5px;\n background: var(--spw-ds-white);\n box-shadow: var(--spw-effect-elevation-2);\n transition: all 0.3s ease-in-out;\n\n :host(.--is-full-height) & {\n height: 100%;\n }\n\n &--hoverable:hover {\n box-shadow: var(--spw-effect-elevation-4);\n transform: translateY(-5px);\n }\n\n &__dates {\n cursor: pointer;\n position: absolute;\n top: 50%;\n left: 0;\n transform: translate(-50%, -50%);\n flex-direction: column;\n line-height: 1.1;\n width: 80px;\n height: 80px;\n text-align: center;\n color: white;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n background: var(--spw-ds-primary);\n border-radius: 50%;\n font-size: 18px;\n text-decoration: none;\n }\n &__date-item {\n span:first-of-type {\n font-weight: bold;\n }\n }\n}\n\n.spw-card__link {\n display: block;\n height: 100%;\n width: 100%;\n color: inherit;\n text-decoration: none;\n\n .spw-card--no-image & {\n padding-top: 15px;\n }\n\n &:focus-visible {\n outline: 3px solid white;\n outline-offset: -1px;\n box-shadow: 0 0 0 5px black;\n border-radius: 5px;\n }\n}\n\n.spw-card--vertical,\n.spw-card--video {\n .spw-card__link {\n display: flex;\n min-height: 240px;\n }\n}\n\n.spw-card--sidebar {\n box-shadow: none;\n &:hover {\n box-shadow: none;\n }\n .spw-card__link {\n display: flex;\n gap: 16px;\n }\n}\n\n.spw-card--event {\n position: relative;\n width: calc(100% - 40px);\n left: 40px;\n}\n","import { Element, Listen, State, Component, Prop, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-card',\n styleUrl: 'spw-card.scss',\n shadow: true,\n})\nexport class SpwCard {\n @Element() el: HTMLSpwCardElement;\n @State() hasImage: boolean = false;\n\n /** Type de variante de carte */\n @Prop() variant?: 'news' | 'vertical' | 'video' | 'event' | 'sidebar' = 'news';\n /** Type d'élément du bouton */\n @Prop() elementType: string = 'a';\n /** Spécifie le lien si nécessaire */\n @Prop() href?: string;\n /** Attribut target, s'applique uniquement si href est rempli */\n @Prop() target: string = '_self';\n /** Remplit l'attribut rel */\n @Prop() rel?: string;\n /** Définir une date de début si la carte est un évènement */\n @Prop() dateStart?: string;\n /** Définir une date de fin si la carte est un évènement */\n @Prop() dateEnd?: string;\n\n /** Si vrai, les cartes ont la même hauteur */\n @Prop() fullHeight: boolean = false;\n /** Si désactivée, la carte n'est pas utilisable */\n @Prop() disabled: boolean = false;\n /** Remplit l'attribut aria-label, utilisé à des fins d'accessibilité */\n @Prop() accAriaLabel?: string;\n\n componentWillLoad() {\n this.checkForImage();\n this.applyVariantToChildren();\n }\n\n @Listen('slotchange')\n slotChanged() {\n this.checkForImage();\n this.applyVariantToChildren();\n }\n\n @Listen('mouseenter')\n onMouseEnter() {\n this.setImageHovered(true);\n }\n\n @Listen('mouseleave')\n onMouseLeave() {\n this.setImageHovered(false);\n }\n\n private checkForImage() {\n requestAnimationFrame(() => {\n const imageElement = this.el.querySelector('spw-card-image');\n const contentElement = this.el.querySelector('spw-card-content');\n this.hasImage = !!imageElement;\n if (!this.hasImage) {\n contentElement.classList.add('--no-image');\n }\n });\n }\n\n private formatDate(date?: string): any[] {\n if (!date) return [];\n const parts = date.split('/');\n return parts.flatMap((part, index) => (index < parts.length - 1 ? [<span>{part}</span>, <span>/</span>] : [<span>{part}</span>]));\n }\n\n private applyVariantToChildren() {\n requestAnimationFrame(() => {\n const variantClass = `--${this.variant}`;\n const contentElement = this.el.querySelector('spw-card-content');\n const imageElement = this.el.querySelector('spw-card-image');\n const titleElement = this.el.querySelector('spw-card-title');\n const excerptElement = this.el.querySelector('spw-card-excerpt');\n const subtagsElement = this.el.querySelector('spw-card-subtags');\n\n contentElement && contentElement.classList.add(variantClass);\n imageElement && imageElement.classList.add(variantClass);\n titleElement && titleElement.classList.add(variantClass);\n excerptElement && excerptElement.classList.add(variantClass);\n subtagsElement && subtagsElement.classList.add(variantClass);\n });\n }\n\n private setImageHovered(isHovered: boolean) {\n const imageElement = this.el.querySelector('spw-card-image');\n const titleElement = this.el.querySelector('spw-card-title');\n if (imageElement && this.href) {\n imageElement.classList.toggle('--hovered', isHovered);\n }\n if (titleElement && this.href) {\n titleElement.classList.toggle('--hovered', isHovered);\n }\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-card': true,\n 'spw-card--hoverable': !!this.href,\n 'spw-card--no-image': !this.hasImage,\n [`spw-card--${this.variant}`]: true,\n };\n }\n\n render() {\n const { href, rel, target, dateStart, dateEnd, variant } = this;\n const TagType = this.href === undefined ? 'div' : 'a';\n const attrs =\n TagType === 'div'\n ? {}\n : {\n href,\n rel,\n target,\n };\n\n const ariaAttributes = {\n 'aria-label': this?.accAriaLabel,\n 'aria-disabled': this.disabled ? 'true' : null,\n };\n\n return (\n <Host class={{ '--is-full-height': this.fullHeight }}>\n <article class={this.elementClass}>\n {variant === 'event' && (\n <TagType {...attrs} class=\"spw-card__dates\">\n {dateStart && <div class=\"spw-card__date-item\">{this.formatDate(dateStart)}</div>}\n {dateEnd && <div class=\"spw-card__date-item\">{this.formatDate(dateEnd)}</div>}\n </TagType>\n )}\n <TagType {...attrs} {...ariaAttributes} class=\"spw-card__link\">\n <slot></slot>\n </TagType>\n </article>\n </Host>\n );\n }\n}\n"],"names":["index","h","Host"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spw-card.entry.cjs.js","sources":["src/components/spw-card/spw-card.scss?tag=spw-card&encapsulation=shadow","src/components/spw-card/spw-card.tsx"],"sourcesContent":[":host {\n display: block;\n position: relative;\n width: 100%;\n --spw-card-background: var(--spw-ds-white);\n --spw-card-box-shadow: var(--spw-effect-elevation-6);\n --spw-card-border: none;\n &[data-modal-trigger] {\n cursor: pointer;\n }\n}\n\n:host(.--is-full-height) {\n height: 100%;\n}\n\n.spw-card {\n display: block;\n border-radius: 5px;\n background: var(--spw-card-background);\n box-shadow: var(--spw-card-box-shadow);\n border: var(--spw-card-border);\n transition: all 0.3s ease-in-out;\n\n :host(.--is-full-height) & {\n height: 100%;\n }\n\n &--hoverable:hover {\n box-shadow: var(--spw-effect-elevation-4);\n transform: translateY(-5px);\n }\n\n &__dates {\n cursor: pointer;\n position: absolute;\n top: 50%;\n left: 0;\n transform: translate(-50%, -50%);\n flex-direction: column;\n line-height: 1.1;\n width: 80px;\n height: 80px;\n text-align: center;\n color: white;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n background: var(--spw-ds-primary);\n border-radius: 50%;\n font-size: 18px;\n text-decoration: none;\n z-index: 2;\n }\n &__date-item {\n span:first-of-type {\n font-weight: bold;\n }\n }\n}\n\n.spw-card__link {\n display: block;\n height: 100%;\n width: 100%;\n color: inherit;\n text-decoration: none;\n\n .spw-card--no-image & {\n padding-top: 15px;\n }\n\n &:focus-visible {\n outline: 3px solid white;\n outline-offset: -1px;\n box-shadow: 0 0 0 5px black;\n border-radius: 5px;\n }\n}\n\n.spw-card--vertical,\n.spw-card--video {\n .spw-card__link {\n display: flex;\n min-height: 240px;\n }\n}\n\n.spw-card--event {\n .spw-card__link {\n display: flex;\n }\n}\n\n.spw-card--sidebar {\n box-shadow: none;\n &:hover {\n box-shadow: none;\n }\n .spw-card__link {\n display: flex;\n gap: 16px;\n }\n}\n\n.spw-card--event {\n position: relative;\n width: calc(100% - 40px);\n left: 40px;\n}\n","import { Element, Listen, State, Component, Prop, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-card',\n styleUrl: 'spw-card.scss',\n shadow: true,\n})\nexport class SpwCard {\n @Element() el: HTMLSpwCardElement;\n @State() hasImage: boolean = false;\n private childHoveredCount = 0; // <-- Ajouté : pour suivre le nombre de sous-cartes survolées\n\n /** Type de variante de carte */\n @Prop() variant?: 'news' | 'vertical' | 'video' | 'event' | 'sidebar' | 'people' = 'news';\n /** Type d'élément du bouton */\n @Prop() elementType: string = 'a';\n /** Spécifie le lien si nécessaire */\n @Prop() href?: string;\n /** Attribut target, s'applique uniquement si href est rempli */\n @Prop() target: string = '_self';\n /** Remplit l'attribut rel */\n @Prop() rel?: string;\n /** Définir une date de début si la carte est un évènement */\n @Prop() dateStart?: string;\n /** Définir une date de fin si la carte est un évènement */\n @Prop() dateEnd?: string;\n\n /** Si vrai, les cartes ont la même hauteur */\n @Prop() fullHeight: boolean = false;\n /** Si désactivée, la carte n'est pas utilisable */\n @Prop() disabled: boolean = false;\n /** Remplit l'attribut aria-label, utilisé à des fins d'accessibilité */\n @Prop() accAriaLabel?: string;\n\n componentWillLoad() {\n this.checkForImage();\n this.applyVariantToChildren();\n this.attachNestedCardListeners();\n }\n\n @Listen('slotchange')\n slotChanged() {\n this.checkForImage();\n this.applyVariantToChildren();\n this.attachNestedCardListeners();\n }\n\n @Listen('mouseenter')\n onMouseEnter() {\n if (this.childHoveredCount === 0) {\n this.setImageHovered(true);\n }\n }\n\n @Listen('mouseleave')\n onMouseLeave() {\n this.setImageHovered(false);\n }\n\n private attachNestedCardListeners() {\n requestAnimationFrame(() => {\n const nestedCards = this.el.querySelectorAll('spw-card');\n\n nestedCards.forEach(card => {\n card.addEventListener('mouseenter', this.onNestedCardEnter.bind(this), true);\n card.addEventListener('mouseleave', this.onNestedCardLeave.bind(this), true);\n });\n });\n }\n\n private onNestedCardEnter = () => {\n this.childHoveredCount++;\n this.setImageHovered(false);\n };\n\n private onNestedCardLeave = () => {\n this.childHoveredCount = Math.max(0, this.childHoveredCount - 1);\n if (this.childHoveredCount === 0 && this.isPointerInside(this.el)) {\n this.setImageHovered(true);\n }\n };\n\n private isPointerInside(element: HTMLElement): boolean {\n const rect = element.getBoundingClientRect();\n const { left, top, right, bottom } = rect;\n const { clientX, clientY } = window as any;\n return clientX >= left && clientX <= right && clientY >= top && clientY <= bottom;\n }\n\n private checkForImage() {\n requestAnimationFrame(() => {\n const imageElement = this.el.querySelector('spw-card-image');\n const contentElement = this.el.querySelector('spw-card-content');\n this.hasImage = !!imageElement;\n if (!this.hasImage) {\n contentElement?.classList.add('--no-image');\n }\n });\n }\n\n private formatDate(date?: string): any[] {\n if (!date) return [];\n const parts = date.split('/');\n return parts.flatMap((part, index) => (index < parts.length - 1 ? [<span>{part}</span>, <span>/</span>] : [<span>{part}</span>]));\n }\n\n private applyVariantToChildren() {\n requestAnimationFrame(() => {\n const variantClass = `--${this.variant}`;\n const contentElement = this.el.querySelector('spw-card-content');\n const imageElement = this.el.querySelector('spw-card-image');\n const titleElement = this.el.querySelector('spw-card-title');\n const excerptElement = this.el.querySelector('spw-card-excerpt');\n const subtagsElement = this.el.querySelector('spw-card-subtags');\n\n contentElement?.classList.add(variantClass);\n imageElement?.classList.add(variantClass);\n titleElement?.classList.add(variantClass);\n excerptElement?.classList.add(variantClass);\n subtagsElement?.classList.add(variantClass);\n });\n }\n\n private setImageHovered(isHovered: boolean) {\n const imageElement = this.el.querySelector('spw-card-image');\n const titleElement = this.el.querySelector('spw-card-title');\n if (imageElement && this.href) {\n imageElement.classList.toggle('--hovered', isHovered);\n }\n if (titleElement && this.href) {\n titleElement.classList.toggle('--hovered', isHovered);\n }\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-card': true,\n 'spw-card--hoverable': !!this.href,\n 'spw-card--no-image': !this.hasImage,\n [`spw-card--${this.variant}`]: true,\n };\n }\n\n render() {\n const { href, rel, target, dateStart, dateEnd, variant } = this;\n const TagType = this.href === undefined ? 'div' : 'a';\n const attrs =\n TagType === 'div'\n ? {}\n : {\n href,\n rel,\n target,\n };\n\n const ariaAttributes = {\n 'aria-label': this?.accAriaLabel,\n 'aria-disabled': this.disabled ? 'true' : null,\n };\n\n return (\n <Host class={{ '--is-full-height': this.fullHeight }}>\n <article class={this.elementClass}>\n {variant === 'event' && (\n <TagType {...attrs} class=\"spw-card__dates\">\n {dateStart && <div class=\"spw-card__date-item\">{this.formatDate(dateStart)}</div>}\n {dateEnd && <div class=\"spw-card__date-item\">{this.formatDate(dateEnd)}</div>}\n </TagType>\n )}\n <TagType {...attrs} {...ariaAttributes} class=\"spw-card__link\">\n <slot></slot>\n </TagType>\n </article>\n </Host>\n );\n }\n}\n"],"names":["index","h","Host"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var index = require('./index-iVhYitTd.js');
|
|
4
4
|
|
|
5
|
-
const spwCheckboxCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;--spw-ds-checkbox-checked-color:var(--spw-ds-primary);box-sizing:border-box;display:inline-flex;font-size:100%;line-height:1.3;vertical-align:top}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1200px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px;width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}.spw-checkbox{align-items:flex-start;display:inline-flex;flex-direction:row;padding:0}.spw-checkbox__wrapper{align-items:center;background-color:var(--spw-ds-white);border:2px solid var(--spw-color-themes-grey-grey-900);border-radius:var(--spw-spacings-border-radius-2-xs);display:flex;flex:none;flex-grow:0;font-size:var(--spw-typography-body-body-3-font-size);height:20px;justify-content:center;order:0;position:relative;width:20px}.spw-checkbox__wrapper spw-icon{font-size:14px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.spw-checkbox__wrapper--error{border-color:var(--spw-colors-dark-states-error-error-300)}.spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled):hover{outline:4px solid var(--spw-color-themes-grey-grey-300)}.spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled):active,.spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled):focus-visible,.spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled):focus-within{box-shadow:0 0 0 4px #000;outline:2px solid #fff;outline-offset:0}.spw-checkbox__wrapper--disabled{border-color:var(--spw-color-themes-grey-grey-500)}.spw-checkbox__wrapper--checked{border-color:var(--spw-ds-checkbox-checked-color);color:var(--spw-ds-checkbox-checked-color)}.spw-checkbox__wrapper--checked--disabled{color:var(--spw-color-themes-grey-grey-500)}.spw-checkbox__wrapper--toggle{background:var(--spw-color-themes-grey-grey-500);border-
|
|
5
|
+
const spwCheckboxCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;--spw-ds-checkbox-checked-color:var(--spw-ds-primary);--spw-ds-checkbox-checked-active-color:var(--spw-ds-active);--spw-ds-checkbox-checked-hover-color:var(--spw-ds-variant);box-sizing:border-box;display:inline-flex;font-size:100%;line-height:1.3;vertical-align:top}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1200px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px;width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}.spw-checkbox{align-items:flex-start;display:inline-flex;flex-direction:row;padding:0}.spw-checkbox__wrapper{align-items:center;background-color:var(--spw-ds-white);border:2px solid var(--spw-color-themes-grey-grey-900);border-radius:var(--spw-spacings-border-radius-2-xs);display:flex;flex:none;flex-grow:0;font-size:var(--spw-typography-body-body-3-font-size);height:20px;justify-content:center;order:0;position:relative;width:20px}.spw-checkbox__wrapper spw-icon{font-size:14px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.spw-checkbox__wrapper--error{border-color:var(--spw-colors-dark-states-error-error-300)}.spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled):hover{outline:4px solid var(--spw-color-themes-grey-grey-300)}.spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled):active,.spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled):focus-visible,.spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled):focus-within{box-shadow:0 0 0 4px #000;outline:2px solid #fff;outline-offset:0}.spw-checkbox__wrapper--disabled{border-color:var(--spw-color-themes-grey-grey-500)}.spw-checkbox__wrapper--checked{border-color:var(--spw-ds-checkbox-checked-color);color:var(--spw-ds-checkbox-checked-color)}.spw-checkbox__wrapper--checked--disabled{color:var(--spw-color-themes-grey-grey-500)}.spw-checkbox__wrapper--toggle{background:var(--spw-color-themes-grey-grey-500);border:none;border-radius:40px;height:18px;top:1px;transition:background .2s ease;width:30px}.spw-checkbox__wrapper--toggle:hover{background:var(--spw-color-themes-grey-grey-600)}.spw-checkbox__wrapper--toggle:active{background:var(--spw-color-themes-grey-grey-800)}.spw-checkbox__wrapper--toggle spw-icon{line-height:0;margin-left:15px;opacity:0;transition:all .2s ease .3s;transition:all .2s ease}.spw-checkbox__wrapper--toggle:before{background:#fff;border-radius:50%;content:\"\";height:14px;left:2px;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s ease;width:14px}.spw-checkbox__wrapper.spw-checkbox__wrapper--checked.spw-checkbox__wrapper--toggle{background:var(--spw-ds-checkbox-checked-color);color:var(--spw-ds-checkbox-checked-color)}.spw-checkbox__wrapper.spw-checkbox__wrapper--checked.spw-checkbox__wrapper--toggle:before{background:#fff;left:calc(100% - 16px)}.spw-checkbox__wrapper.spw-checkbox__wrapper--checked.spw-checkbox__wrapper--toggle spw-icon{font-size:10px;margin-left:6px;opacity:1}.spw-checkbox__wrapper.spw-checkbox__wrapper--checked.spw-checkbox__wrapper--toggle:not(.spw-checkbox__wrapper--disabled):hover{background:var(--spw-ds-checkbox-checked-hover-color);color:var(--spw-ds-checkbox-checked-hover-color)}.spw-checkbox__wrapper.spw-checkbox__wrapper--checked.spw-checkbox__wrapper--toggle:not(.spw-checkbox__wrapper--disabled):active{background:var(--spw-ds-checkbox-checked-active-color);color:var(--spw-ds-checkbox-checked-active-color)}.spw-checkbox__wrapper.spw-checkbox__wrapper--toggle.spw-checkbox__wrapper--disabled{background:#fff;border-color:var(--spw-color-themes-grey-grey-500)}.spw-checkbox__wrapper.spw-checkbox__wrapper--toggle.spw-checkbox__wrapper--disabled:before{background:var(--spw-color-themes-grey-grey-500)}.spw-checkbox__label{word-wrap:break-word;color:var(--spw-color-themes-grey-grey-900);order:1;padding-left:var(--spw-spacings-spacing-sm);padding-top:1px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.spw-checkbox__label:hover~.spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled){outline:4px solid var(--spw-color-themes-grey-grey-300)}.spw-checkbox__label:active~.spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled){box-shadow:0 0 0 4px #000;outline:2px solid #fff;outline-offset:0}.spw-checkbox__label--disabled{color:var(--spw-color-themes-grey-grey-500)}.spw-checkbox__label:hover,.spw-checkbox__wrapper:hover{cursor:pointer}.spw-checkbox__label--disabled:hover,.spw-checkbox__wrapper--disabled:hover{cursor:not-allowed}.-spw-tw-mt-1{margin-top:-.25rem}.spw-tw-mb-2{margin-bottom:.5rem}.spw-tw-mr-2{margin-right:.5rem}";
|
|
6
6
|
|
|
7
7
|
const SpwCheckbox = class {
|
|
8
8
|
constructor(hostRef) {
|
|
@@ -89,7 +89,7 @@ const SpwCheckbox = class {
|
|
|
89
89
|
render() {
|
|
90
90
|
const slot = this.el.innerHTML;
|
|
91
91
|
const hasSlot = Boolean(slot);
|
|
92
|
-
return (index.h("div", { key: '
|
|
92
|
+
return (index.h("div", { key: '346a6a165000a9fac29cfcf8fb742dc3871d07c2', class: "spw-checkbox" }, index.h("input", { key: 'a10fc25d9dc9e2281d945f686f91cf004ad63076', type: "checkbox", ref: el => (this.inputElement = el), checked: this.internalChecked, onChange: this.handleCheckbox.bind(this), name: this.name, disabled: this.disabled, style: { display: 'none' } }), hasSlot && (index.h("label", { key: '4666d69baa172d4a9f81ed2fc17edda8faea3d56', htmlFor: this.name, class: `spw-checkbox__label ${this.disabled ? 'spw-checkbox__label--disabled' : ''}`, onClick: this.handleCheckbox.bind(this) }, index.h("slot", { key: '31f0458f49a806820c4f4d7411a9b02045ebc9a6' }))), index.h("div", { key: 'a537f489f207f9ccfcc933b57a58d5891fdcbe2b', tabindex: this.disabled ? -1 : 0, onClick: this.handleCheckbox.bind(this), onKeyDown: this.handleKeydown.bind(this), role: "checkbox", "aria-checked": this.internalChecked ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : 'false', "aria-labelledby": "label", class: this.elementClass }, this.internalChecked && index.h("spw-icon", { key: '39ba0368fca18e58d613e1232a5c77fa1d7dc4e6', icon: this.icon }))));
|
|
93
93
|
}
|
|
94
94
|
static get formAssociated() { return true; }
|
|
95
95
|
get el() { return index.getElement(this); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"spw-checkbox.entry.cjs.js","mappings":"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","names":["h"],"sources":["src/components/spw-checkbox/spw-checkbox.scss?tag=spw-checkbox&encapsulation=shadow","src/components/spw-checkbox/spw-checkbox.tsx"],"sourcesContent":[":host {\n display: inline-flex;\n vertical-align: top;\n --spw-ds-checkbox-checked-color: var(--spw-ds-primary);\n}\n\n.spw-checkbox {\n display: inline-flex;\n flex-direction: row;\n align-items: flex-start;\n padding: 0;\n\n &__wrapper {\n display: flex;\n position: relative;\n justify-content: center;\n align-items: center;\n width: 20px;\n height: 20px;\n background-color: var(--spw-ds-white);\n border: 2px solid var(--spw-color-themes-grey-grey-900);\n border-radius: var(--spw-spacings-border-radius-2-xs);\n font-size: var(--spw-typography-body-body-3-font-size);\n flex: none;\n order: 0;\n flex-grow: 0;\n\n spw-icon {\n font-size: 14px;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n }\n\n &--error {\n border-color: var(--spw-colors-dark-states-error-error-300);\n }\n\n &:not(.spw-checkbox__wrapper--disabled):hover {\n outline: 4px solid var(--spw-color-themes-grey-grey-300);\n }\n\n &:not(.spw-checkbox__wrapper--disabled):focus-visible,\n &:not(.spw-checkbox__wrapper--disabled):active,\n &:not(.spw-checkbox__wrapper--disabled):focus-within,\n &:not(.spw-checkbox__wrapper--disabled):active {\n outline: 2px solid white;\n outline-offset: 0;\n box-shadow: 0 0 0 4px black;\n }\n\n &--disabled {\n border-color: var(--spw-color-themes-grey-grey-500);\n }\n\n &--checked {\n border-color: var(--spw-ds-checkbox-checked-color);\n color: var(--spw-ds-checkbox-checked-color);\n\n &--disabled {\n color: var(--spw-color-themes-grey-grey-500);\n }\n }\n\n &--toggle {\n width: 32px;\n height: 20px;\n border-radius: 40px;\n border-color: var(--spw-color-themes-grey-grey-500);\n background: var(--spw-color-themes-grey-grey-500);\n // transition: border-color 0.2s ease;\n spw-icon {\n opacity: 0;\n line-height: 0;\n transition: all 0.2s 0.3s ease;\n }\n &:before {\n content: '';\n position: absolute;\n width: 14px;\n height: 14px;\n background: white;\n border-radius: 50%;\n top: 50%;\n left: 2px;\n transform: translateY(-50%);\n transition: all 0.2s ease;\n }\n }\n &.spw-checkbox__wrapper--checked.spw-checkbox__wrapper--toggle {\n border-color: var(--spw-ds-checkbox-checked-color);\n background: var(--spw-ds-checkbox-checked-color);\n &:before {\n left: calc(100% - 16px);\n background: white;\n }\n spw-icon {\n display: block;\n color: var(--spw-ds-checkbox-checked-color);\n font-size: 10px;\n margin-left: 5px;\n // opacity: 1;\n }\n }\n &.spw-checkbox__wrapper--toggle.spw-checkbox__wrapper--disabled {\n border-color: var(--spw-color-themes-grey-grey-500);\n background: white;\n &:before {\n background: var(--spw-color-themes-grey-grey-500);\n }\n }\n }\n\n &__label {\n color: var(--spw-color-themes-grey-grey-900);\n word-wrap: break-word;\n order: 1;\n padding-top: 1px;\n user-select: none;\n padding-left: var(--spw-spacings-spacing-sm);\n\n &:hover ~ .spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled) {\n outline: 4px solid var(--spw-color-themes-grey-grey-300);\n }\n\n &:active ~ .spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled) {\n outline: 2px solid white;\n outline-offset: 0;\n box-shadow: 0 0 0 4px black;\n }\n\n &--disabled {\n color: var(--spw-color-themes-grey-grey-500);\n }\n }\n\n &__wrapper,\n &__label {\n &:hover {\n cursor: pointer;\n }\n &--disabled:hover {\n cursor: not-allowed;\n }\n }\n}\n","import { Component, h, Prop, Element, State, Event, EventEmitter, Watch, Method, AttachInternals } from '@stencil/core';\n\n@Component({\n tag: 'spw-checkbox',\n styleUrl: 'spw-checkbox.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class SpwCheckbox {\n private inputElement: HTMLInputElement;\n\n @Element() el: HTMLSpwCheckboxElement;\n\n /** Détermine si la case à cocher est désactivée, rendant l'élément inutilisable */\n @Prop() disabled: boolean = false;\n /** Propriété mutable qui reflète si la case à cocher est cochée ou non */\n @Prop({ mutable: true, reflect: true }) checked: boolean = false;\n /** Indique s'il y a une erreur associée à la case à cocher, pour un affichage visuel */\n @Prop() error: boolean = false;\n /** Icône à afficher lorsque la case à cocher est cochée */\n @Prop() icon: string = 'fa-check';\n /** Nom de l'élément utilisé dans les formulaires */\n @Prop() name: string;\n /** Type de variant pour la checkbox */\n @Prop() variant?: 'default' | 'toggle' = 'default';\n\n @State() internalChecked: boolean;\n\n @AttachInternals() internals: ElementInternals;\n\n /** Événement déclenché lors d'un changement d'état de la case à cocher (cochée ou décochée) */\n @Event({ bubbles: true, composed: true }) spwChange: EventEmitter<boolean>;\n\n private handleCheckbox() {\n if (!this.disabled) {\n this.internalChecked = !this.internalChecked;\n this.checked = this.internalChecked;\n this.updateFormValue();\n this.spwChange.emit(this.internalChecked);\n }\n }\n\n /** Méthode publique pour changer l'état de la case à cocher. */\n @Method()\n async toggleCheckedState(newVal: boolean) {\n this.internalChecked = newVal;\n this.checked = newVal;\n this.updateFormValue();\n }\n\n @Watch('checked')\n checkedChanged(newChecked: boolean) {\n this.internalChecked = newChecked;\n this.inputElement.checked = newChecked;\n this.updateFormValue();\n }\n\n private updateFormValue() {\n if (this.internalChecked) {\n this.internals.setFormValue('on');\n } else {\n this.internals.setFormValue(null);\n }\n }\n\n private handleKeydown(event) {\n if (event.key === ' ' || event.key === 'Enter') {\n // Space or Enter keys\n this.handleCheckbox();\n event.preventDefault();\n }\n }\n\n componentWillLoad() {\n this.internalChecked = this.checked;\n this.updateFormValue();\n }\n\n componentDidLoad() {\n this.el.closest('form')?.addEventListener('formdata', (e: FormDataEvent) => {\n if (this.internalChecked) {\n e.formData.set(this.name, 'on');\n }\n });\n }\n\n formResetCallback() {\n this.internalChecked = false;\n this.checked = false;\n this.updateFormValue();\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-checkbox__wrapper': true,\n [`spw-checkbox__wrapper--${this.variant}`]: true,\n 'spw-checkbox__wrapper--disabled': this.disabled,\n 'spw-checkbox__wrapper--checked': this.internalChecked,\n 'spw-checkbox__wrapper--error': this.error,\n };\n }\n\n render() {\n const slot = this.el.innerHTML;\n const hasSlot = Boolean(slot);\n\n return (\n <div class=\"spw-checkbox\">\n <input\n type=\"checkbox\"\n ref={el => (this.inputElement = el)}\n checked={this.internalChecked}\n onChange={this.handleCheckbox.bind(this)}\n name={this.name}\n disabled={this.disabled}\n style={{ display: 'none' }}\n />\n {hasSlot && (\n <label htmlFor={this.name} class={`spw-checkbox__label ${this.disabled ? 'spw-checkbox__label--disabled' : ''}`} onClick={this.handleCheckbox.bind(this)}>\n <slot />\n </label>\n )}\n <div\n tabindex={this.disabled ? -1 : 0}\n onClick={this.handleCheckbox.bind(this)}\n onKeyDown={this.handleKeydown.bind(this)}\n role=\"checkbox\"\n aria-checked={this.internalChecked ? 'true' : 'false'}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-labelledby=\"label\"\n class={this.elementClass}\n >\n {this.internalChecked && <spw-icon icon={this.icon}></spw-icon>}\n </div>\n </div>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"spw-checkbox.entry.cjs.js","mappings":"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","names":["h"],"sources":["src/components/spw-checkbox/spw-checkbox.scss?tag=spw-checkbox&encapsulation=shadow","src/components/spw-checkbox/spw-checkbox.tsx"],"sourcesContent":[":host {\n display: inline-flex;\n vertical-align: top;\n --spw-ds-checkbox-checked-color: var(--spw-ds-primary);\n --spw-ds-checkbox-checked-active-color: var(--spw-ds-active);\n --spw-ds-checkbox-checked-hover-color: var(--spw-ds-variant);\n}\n\n.spw-checkbox {\n display: inline-flex;\n flex-direction: row;\n align-items: flex-start;\n padding: 0;\n\n &__wrapper {\n display: flex;\n position: relative;\n justify-content: center;\n align-items: center;\n width: 20px;\n height: 20px;\n background-color: var(--spw-ds-white);\n border: 2px solid var(--spw-color-themes-grey-grey-900);\n border-radius: var(--spw-spacings-border-radius-2-xs);\n font-size: var(--spw-typography-body-body-3-font-size);\n flex: none;\n order: 0;\n flex-grow: 0;\n\n spw-icon {\n font-size: 14px;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n }\n\n &--error {\n border-color: var(--spw-colors-dark-states-error-error-300);\n }\n\n &:not(.spw-checkbox__wrapper--disabled):hover {\n outline: 4px solid var(--spw-color-themes-grey-grey-300);\n }\n\n &:not(.spw-checkbox__wrapper--disabled):focus-visible,\n &:not(.spw-checkbox__wrapper--disabled):active,\n &:not(.spw-checkbox__wrapper--disabled):focus-within,\n &:not(.spw-checkbox__wrapper--disabled):active {\n outline: 2px solid white;\n outline-offset: 0;\n box-shadow: 0 0 0 4px black;\n }\n\n &--disabled {\n border-color: var(--spw-color-themes-grey-grey-500);\n }\n\n &--checked {\n border-color: var(--spw-ds-checkbox-checked-color);\n color: var(--spw-ds-checkbox-checked-color);\n\n &--disabled {\n color: var(--spw-color-themes-grey-grey-500);\n }\n }\n\n &--toggle {\n top: 1px;\n width: 30px;\n height: 18px;\n border-radius: 40px;\n border: none;\n background: var(--spw-color-themes-grey-grey-500);\n transition: background 0.2s ease;\n &:hover {\n background: var(--spw-color-themes-grey-grey-600);\n }\n &:active {\n background: var(--spw-color-themes-grey-grey-800);\n }\n spw-icon {\n opacity: 0;\n line-height: 0;\n transition: all 0.2s 0.3s ease;\n margin-left: 15px;\n transition: all 0.2s ease;\n }\n &:before {\n content: '';\n position: absolute;\n width: 14px;\n height: 14px;\n background: white;\n border-radius: 50%;\n top: 50%;\n left: 2px;\n transform: translateY(-50%);\n transition: all 0.2s ease;\n }\n }\n &.spw-checkbox__wrapper--checked.spw-checkbox__wrapper--toggle {\n background: var(--spw-ds-checkbox-checked-color);\n color: var(--spw-ds-checkbox-checked-color);\n &:before {\n left: calc(100% - 16px);\n background: white;\n }\n spw-icon {\n font-size: 10px;\n margin-left: 6px;\n opacity: 1;\n }\n &:not(.spw-checkbox__wrapper--disabled):hover {\n background: var(--spw-ds-checkbox-checked-hover-color);\n color: var(--spw-ds-checkbox-checked-hover-color);\n }\n &:not(.spw-checkbox__wrapper--disabled):active {\n background: var(--spw-ds-checkbox-checked-active-color);\n color: var(--spw-ds-checkbox-checked-active-color);\n }\n }\n &.spw-checkbox__wrapper--toggle.spw-checkbox__wrapper--disabled {\n border-color: var(--spw-color-themes-grey-grey-500);\n background: white;\n &:before {\n background: var(--spw-color-themes-grey-grey-500);\n }\n }\n }\n\n &__label {\n color: var(--spw-color-themes-grey-grey-900);\n word-wrap: break-word;\n order: 1;\n padding-top: 1px;\n user-select: none;\n padding-left: var(--spw-spacings-spacing-sm);\n\n &:hover ~ .spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled) {\n outline: 4px solid var(--spw-color-themes-grey-grey-300);\n }\n\n // &:hover ~ .spw-checkbox__wrapper--toggle:not(.spw-checkbox__wrapper--disabled) {\n // background: var(--spw-color-themes-grey-grey-600);\n // color: var(--spw-color-themes-grey-grey-600);\n // }\n\n // &:active ~ .spw-checkbox__wrapper--toggle:not(.spw-checkbox__wrapper--disabled) {\n // background: var(--spw-color-themes-grey-grey-800);\n // color: var(--spw-color-themes-grey-grey-800);\n // }\n\n // &:hover ~ .spw-checkbox__wrapper--toggle.spw-checkbox__wrapper--checked:not(.spw-checkbox__wrapper--disabled) {\n // background: var(--spw-ds-checkbox-checked-hover-color);\n // color: var(--spw-ds-checkbox-checked-hover-color);\n // }\n\n // &:active ~ .spw-checkbox__wrapper--toggle.spw-checkbox__wrapper--checked:not(.spw-checkbox__wrapper--disabled) {\n // background: var(--spw-ds-checkbox-checked-active-color);\n // color: var(--spw-ds-checkbox-checked-active-color);\n // }\n\n &:active ~ .spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled) {\n outline: 2px solid white;\n outline-offset: 0;\n box-shadow: 0 0 0 4px black;\n }\n\n &--disabled {\n color: var(--spw-color-themes-grey-grey-500);\n }\n }\n\n &__wrapper,\n &__label {\n &:hover {\n cursor: pointer;\n }\n &--disabled:hover {\n cursor: not-allowed;\n }\n }\n}\n","import { Component, h, Prop, Element, State, Event, EventEmitter, Watch, Method, AttachInternals } from '@stencil/core';\n\n@Component({\n tag: 'spw-checkbox',\n styleUrl: 'spw-checkbox.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class SpwCheckbox {\n private inputElement: HTMLInputElement;\n\n @Element() el: HTMLSpwCheckboxElement;\n\n /** Détermine si la case à cocher est désactivée, rendant l'élément inutilisable */\n @Prop() disabled: boolean = false;\n /** Propriété mutable qui reflète si la case à cocher est cochée ou non */\n @Prop({ mutable: true, reflect: true }) checked: boolean = false;\n /** Indique s'il y a une erreur associée à la case à cocher, pour un affichage visuel */\n @Prop() error: boolean = false;\n /** Icône à afficher lorsque la case à cocher est cochée */\n @Prop() icon: string = 'fa-check';\n /** Nom de l'élément utilisé dans les formulaires */\n @Prop() name: string;\n /** Type de variant pour la checkbox */\n @Prop() variant?: 'default' | 'toggle' = 'default';\n\n @State() internalChecked: boolean;\n\n @AttachInternals() internals: ElementInternals;\n\n /** Événement déclenché lors d'un changement d'état de la case à cocher (cochée ou décochée) */\n @Event({ bubbles: true, composed: true }) spwChange: EventEmitter<boolean>;\n\n private handleCheckbox() {\n if (!this.disabled) {\n this.internalChecked = !this.internalChecked;\n this.checked = this.internalChecked;\n this.updateFormValue();\n this.spwChange.emit(this.internalChecked);\n }\n }\n\n /** Méthode publique pour changer l'état de la case à cocher. */\n @Method()\n async toggleCheckedState(newVal: boolean) {\n this.internalChecked = newVal;\n this.checked = newVal;\n this.updateFormValue();\n }\n\n @Watch('checked')\n checkedChanged(newChecked: boolean) {\n this.internalChecked = newChecked;\n this.inputElement.checked = newChecked;\n this.updateFormValue();\n }\n\n private updateFormValue() {\n if (this.internalChecked) {\n this.internals.setFormValue('on');\n } else {\n this.internals.setFormValue(null);\n }\n }\n\n private handleKeydown(event) {\n if (event.key === ' ' || event.key === 'Enter') {\n // Space or Enter keys\n this.handleCheckbox();\n event.preventDefault();\n }\n }\n\n componentWillLoad() {\n this.internalChecked = this.checked;\n this.updateFormValue();\n }\n\n componentDidLoad() {\n this.el.closest('form')?.addEventListener('formdata', (e: FormDataEvent) => {\n if (this.internalChecked) {\n e.formData.set(this.name, 'on');\n }\n });\n }\n\n formResetCallback() {\n this.internalChecked = false;\n this.checked = false;\n this.updateFormValue();\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-checkbox__wrapper': true,\n [`spw-checkbox__wrapper--${this.variant}`]: true,\n 'spw-checkbox__wrapper--disabled': this.disabled,\n 'spw-checkbox__wrapper--checked': this.internalChecked,\n 'spw-checkbox__wrapper--error': this.error,\n };\n }\n\n render() {\n const slot = this.el.innerHTML;\n const hasSlot = Boolean(slot);\n\n return (\n <div class=\"spw-checkbox\">\n <input\n type=\"checkbox\"\n ref={el => (this.inputElement = el)}\n checked={this.internalChecked}\n onChange={this.handleCheckbox.bind(this)}\n name={this.name}\n disabled={this.disabled}\n style={{ display: 'none' }}\n />\n {hasSlot && (\n <label htmlFor={this.name} class={`spw-checkbox__label ${this.disabled ? 'spw-checkbox__label--disabled' : ''}`} onClick={this.handleCheckbox.bind(this)}>\n <slot />\n </label>\n )}\n <div\n tabindex={this.disabled ? -1 : 0}\n onClick={this.handleCheckbox.bind(this)}\n onKeyDown={this.handleKeydown.bind(this)}\n role=\"checkbox\"\n aria-checked={this.internalChecked ? 'true' : 'false'}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-labelledby=\"label\"\n class={this.elementClass}\n >\n {this.internalChecked && <spw-icon icon={this.icon}></spw-icon>}\n </div>\n </div>\n );\n }\n}\n"],"version":3}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spw-checkbox.entry.cjs.js","sources":["src/components/spw-checkbox/spw-checkbox.scss?tag=spw-checkbox&encapsulation=shadow","src/components/spw-checkbox/spw-checkbox.tsx"],"sourcesContent":[":host {\n display: inline-flex;\n vertical-align: top;\n --spw-ds-checkbox-checked-color: var(--spw-ds-primary);\n}\n\n.spw-checkbox {\n display: inline-flex;\n flex-direction: row;\n align-items: flex-start;\n padding: 0;\n\n &__wrapper {\n display: flex;\n position: relative;\n justify-content: center;\n align-items: center;\n width: 20px;\n height: 20px;\n background-color: var(--spw-ds-white);\n border: 2px solid var(--spw-color-themes-grey-grey-900);\n border-radius: var(--spw-spacings-border-radius-2-xs);\n font-size: var(--spw-typography-body-body-3-font-size);\n flex: none;\n order: 0;\n flex-grow: 0;\n\n spw-icon {\n font-size: 14px;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n }\n\n &--error {\n border-color: var(--spw-colors-dark-states-error-error-300);\n }\n\n &:not(.spw-checkbox__wrapper--disabled):hover {\n outline: 4px solid var(--spw-color-themes-grey-grey-300);\n }\n\n &:not(.spw-checkbox__wrapper--disabled):focus-visible,\n &:not(.spw-checkbox__wrapper--disabled):active,\n &:not(.spw-checkbox__wrapper--disabled):focus-within,\n &:not(.spw-checkbox__wrapper--disabled):active {\n outline: 2px solid white;\n outline-offset: 0;\n box-shadow: 0 0 0 4px black;\n }\n\n &--disabled {\n border-color: var(--spw-color-themes-grey-grey-500);\n }\n\n &--checked {\n border-color: var(--spw-ds-checkbox-checked-color);\n color: var(--spw-ds-checkbox-checked-color);\n\n &--disabled {\n color: var(--spw-color-themes-grey-grey-500);\n }\n }\n\n &--toggle {\n width: 32px;\n height: 20px;\n border-radius: 40px;\n border-color: var(--spw-color-themes-grey-grey-500);\n background: var(--spw-color-themes-grey-grey-500);\n // transition: border-color 0.2s ease;\n spw-icon {\n opacity: 0;\n line-height: 0;\n transition: all 0.2s 0.3s ease;\n }\n &:before {\n content: '';\n position: absolute;\n width: 14px;\n height: 14px;\n background: white;\n border-radius: 50%;\n top: 50%;\n left: 2px;\n transform: translateY(-50%);\n transition: all 0.2s ease;\n }\n }\n &.spw-checkbox__wrapper--checked.spw-checkbox__wrapper--toggle {\n border-color: var(--spw-ds-checkbox-checked-color);\n background: var(--spw-ds-checkbox-checked-color);\n &:before {\n left: calc(100% - 16px);\n background: white;\n }\n spw-icon {\n display: block;\n color: var(--spw-ds-checkbox-checked-color);\n font-size: 10px;\n margin-left: 5px;\n // opacity: 1;\n }\n }\n &.spw-checkbox__wrapper--toggle.spw-checkbox__wrapper--disabled {\n border-color: var(--spw-color-themes-grey-grey-500);\n background: white;\n &:before {\n background: var(--spw-color-themes-grey-grey-500);\n }\n }\n }\n\n &__label {\n color: var(--spw-color-themes-grey-grey-900);\n word-wrap: break-word;\n order: 1;\n padding-top: 1px;\n user-select: none;\n padding-left: var(--spw-spacings-spacing-sm);\n\n &:hover ~ .spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled) {\n outline: 4px solid var(--spw-color-themes-grey-grey-300);\n }\n\n &:active ~ .spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled) {\n outline: 2px solid white;\n outline-offset: 0;\n box-shadow: 0 0 0 4px black;\n }\n\n &--disabled {\n color: var(--spw-color-themes-grey-grey-500);\n }\n }\n\n &__wrapper,\n &__label {\n &:hover {\n cursor: pointer;\n }\n &--disabled:hover {\n cursor: not-allowed;\n }\n }\n}\n","import { Component, h, Prop, Element, State, Event, EventEmitter, Watch, Method, AttachInternals } from '@stencil/core';\n\n@Component({\n tag: 'spw-checkbox',\n styleUrl: 'spw-checkbox.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class SpwCheckbox {\n private inputElement: HTMLInputElement;\n\n @Element() el: HTMLSpwCheckboxElement;\n\n /** Détermine si la case à cocher est désactivée, rendant l'élément inutilisable */\n @Prop() disabled: boolean = false;\n /** Propriété mutable qui reflète si la case à cocher est cochée ou non */\n @Prop({ mutable: true, reflect: true }) checked: boolean = false;\n /** Indique s'il y a une erreur associée à la case à cocher, pour un affichage visuel */\n @Prop() error: boolean = false;\n /** Icône à afficher lorsque la case à cocher est cochée */\n @Prop() icon: string = 'fa-check';\n /** Nom de l'élément utilisé dans les formulaires */\n @Prop() name: string;\n /** Type de variant pour la checkbox */\n @Prop() variant?: 'default' | 'toggle' = 'default';\n\n @State() internalChecked: boolean;\n\n @AttachInternals() internals: ElementInternals;\n\n /** Événement déclenché lors d'un changement d'état de la case à cocher (cochée ou décochée) */\n @Event({ bubbles: true, composed: true }) spwChange: EventEmitter<boolean>;\n\n private handleCheckbox() {\n if (!this.disabled) {\n this.internalChecked = !this.internalChecked;\n this.checked = this.internalChecked;\n this.updateFormValue();\n this.spwChange.emit(this.internalChecked);\n }\n }\n\n /** Méthode publique pour changer l'état de la case à cocher. */\n @Method()\n async toggleCheckedState(newVal: boolean) {\n this.internalChecked = newVal;\n this.checked = newVal;\n this.updateFormValue();\n }\n\n @Watch('checked')\n checkedChanged(newChecked: boolean) {\n this.internalChecked = newChecked;\n this.inputElement.checked = newChecked;\n this.updateFormValue();\n }\n\n private updateFormValue() {\n if (this.internalChecked) {\n this.internals.setFormValue('on');\n } else {\n this.internals.setFormValue(null);\n }\n }\n\n private handleKeydown(event) {\n if (event.key === ' ' || event.key === 'Enter') {\n // Space or Enter keys\n this.handleCheckbox();\n event.preventDefault();\n }\n }\n\n componentWillLoad() {\n this.internalChecked = this.checked;\n this.updateFormValue();\n }\n\n componentDidLoad() {\n this.el.closest('form')?.addEventListener('formdata', (e: FormDataEvent) => {\n if (this.internalChecked) {\n e.formData.set(this.name, 'on');\n }\n });\n }\n\n formResetCallback() {\n this.internalChecked = false;\n this.checked = false;\n this.updateFormValue();\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-checkbox__wrapper': true,\n [`spw-checkbox__wrapper--${this.variant}`]: true,\n 'spw-checkbox__wrapper--disabled': this.disabled,\n 'spw-checkbox__wrapper--checked': this.internalChecked,\n 'spw-checkbox__wrapper--error': this.error,\n };\n }\n\n render() {\n const slot = this.el.innerHTML;\n const hasSlot = Boolean(slot);\n\n return (\n <div class=\"spw-checkbox\">\n <input\n type=\"checkbox\"\n ref={el => (this.inputElement = el)}\n checked={this.internalChecked}\n onChange={this.handleCheckbox.bind(this)}\n name={this.name}\n disabled={this.disabled}\n style={{ display: 'none' }}\n />\n {hasSlot && (\n <label htmlFor={this.name} class={`spw-checkbox__label ${this.disabled ? 'spw-checkbox__label--disabled' : ''}`} onClick={this.handleCheckbox.bind(this)}>\n <slot />\n </label>\n )}\n <div\n tabindex={this.disabled ? -1 : 0}\n onClick={this.handleCheckbox.bind(this)}\n onKeyDown={this.handleKeydown.bind(this)}\n role=\"checkbox\"\n aria-checked={this.internalChecked ? 'true' : 'false'}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-labelledby=\"label\"\n class={this.elementClass}\n >\n {this.internalChecked && <spw-icon icon={this.icon}></spw-icon>}\n </div>\n </div>\n );\n }\n}\n"],"names":["h"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spw-checkbox.entry.cjs.js","sources":["src/components/spw-checkbox/spw-checkbox.scss?tag=spw-checkbox&encapsulation=shadow","src/components/spw-checkbox/spw-checkbox.tsx"],"sourcesContent":[":host {\n display: inline-flex;\n vertical-align: top;\n --spw-ds-checkbox-checked-color: var(--spw-ds-primary);\n --spw-ds-checkbox-checked-active-color: var(--spw-ds-active);\n --spw-ds-checkbox-checked-hover-color: var(--spw-ds-variant);\n}\n\n.spw-checkbox {\n display: inline-flex;\n flex-direction: row;\n align-items: flex-start;\n padding: 0;\n\n &__wrapper {\n display: flex;\n position: relative;\n justify-content: center;\n align-items: center;\n width: 20px;\n height: 20px;\n background-color: var(--spw-ds-white);\n border: 2px solid var(--spw-color-themes-grey-grey-900);\n border-radius: var(--spw-spacings-border-radius-2-xs);\n font-size: var(--spw-typography-body-body-3-font-size);\n flex: none;\n order: 0;\n flex-grow: 0;\n\n spw-icon {\n font-size: 14px;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n }\n\n &--error {\n border-color: var(--spw-colors-dark-states-error-error-300);\n }\n\n &:not(.spw-checkbox__wrapper--disabled):hover {\n outline: 4px solid var(--spw-color-themes-grey-grey-300);\n }\n\n &:not(.spw-checkbox__wrapper--disabled):focus-visible,\n &:not(.spw-checkbox__wrapper--disabled):active,\n &:not(.spw-checkbox__wrapper--disabled):focus-within,\n &:not(.spw-checkbox__wrapper--disabled):active {\n outline: 2px solid white;\n outline-offset: 0;\n box-shadow: 0 0 0 4px black;\n }\n\n &--disabled {\n border-color: var(--spw-color-themes-grey-grey-500);\n }\n\n &--checked {\n border-color: var(--spw-ds-checkbox-checked-color);\n color: var(--spw-ds-checkbox-checked-color);\n\n &--disabled {\n color: var(--spw-color-themes-grey-grey-500);\n }\n }\n\n &--toggle {\n top: 1px;\n width: 30px;\n height: 18px;\n border-radius: 40px;\n border: none;\n background: var(--spw-color-themes-grey-grey-500);\n transition: background 0.2s ease;\n &:hover {\n background: var(--spw-color-themes-grey-grey-600);\n }\n &:active {\n background: var(--spw-color-themes-grey-grey-800);\n }\n spw-icon {\n opacity: 0;\n line-height: 0;\n transition: all 0.2s 0.3s ease;\n margin-left: 15px;\n transition: all 0.2s ease;\n }\n &:before {\n content: '';\n position: absolute;\n width: 14px;\n height: 14px;\n background: white;\n border-radius: 50%;\n top: 50%;\n left: 2px;\n transform: translateY(-50%);\n transition: all 0.2s ease;\n }\n }\n &.spw-checkbox__wrapper--checked.spw-checkbox__wrapper--toggle {\n background: var(--spw-ds-checkbox-checked-color);\n color: var(--spw-ds-checkbox-checked-color);\n &:before {\n left: calc(100% - 16px);\n background: white;\n }\n spw-icon {\n font-size: 10px;\n margin-left: 6px;\n opacity: 1;\n }\n &:not(.spw-checkbox__wrapper--disabled):hover {\n background: var(--spw-ds-checkbox-checked-hover-color);\n color: var(--spw-ds-checkbox-checked-hover-color);\n }\n &:not(.spw-checkbox__wrapper--disabled):active {\n background: var(--spw-ds-checkbox-checked-active-color);\n color: var(--spw-ds-checkbox-checked-active-color);\n }\n }\n &.spw-checkbox__wrapper--toggle.spw-checkbox__wrapper--disabled {\n border-color: var(--spw-color-themes-grey-grey-500);\n background: white;\n &:before {\n background: var(--spw-color-themes-grey-grey-500);\n }\n }\n }\n\n &__label {\n color: var(--spw-color-themes-grey-grey-900);\n word-wrap: break-word;\n order: 1;\n padding-top: 1px;\n user-select: none;\n padding-left: var(--spw-spacings-spacing-sm);\n\n &:hover ~ .spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled) {\n outline: 4px solid var(--spw-color-themes-grey-grey-300);\n }\n\n // &:hover ~ .spw-checkbox__wrapper--toggle:not(.spw-checkbox__wrapper--disabled) {\n // background: var(--spw-color-themes-grey-grey-600);\n // color: var(--spw-color-themes-grey-grey-600);\n // }\n\n // &:active ~ .spw-checkbox__wrapper--toggle:not(.spw-checkbox__wrapper--disabled) {\n // background: var(--spw-color-themes-grey-grey-800);\n // color: var(--spw-color-themes-grey-grey-800);\n // }\n\n // &:hover ~ .spw-checkbox__wrapper--toggle.spw-checkbox__wrapper--checked:not(.spw-checkbox__wrapper--disabled) {\n // background: var(--spw-ds-checkbox-checked-hover-color);\n // color: var(--spw-ds-checkbox-checked-hover-color);\n // }\n\n // &:active ~ .spw-checkbox__wrapper--toggle.spw-checkbox__wrapper--checked:not(.spw-checkbox__wrapper--disabled) {\n // background: var(--spw-ds-checkbox-checked-active-color);\n // color: var(--spw-ds-checkbox-checked-active-color);\n // }\n\n &:active ~ .spw-checkbox__wrapper:not(.spw-checkbox__wrapper--disabled) {\n outline: 2px solid white;\n outline-offset: 0;\n box-shadow: 0 0 0 4px black;\n }\n\n &--disabled {\n color: var(--spw-color-themes-grey-grey-500);\n }\n }\n\n &__wrapper,\n &__label {\n &:hover {\n cursor: pointer;\n }\n &--disabled:hover {\n cursor: not-allowed;\n }\n }\n}\n","import { Component, h, Prop, Element, State, Event, EventEmitter, Watch, Method, AttachInternals } from '@stencil/core';\n\n@Component({\n tag: 'spw-checkbox',\n styleUrl: 'spw-checkbox.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class SpwCheckbox {\n private inputElement: HTMLInputElement;\n\n @Element() el: HTMLSpwCheckboxElement;\n\n /** Détermine si la case à cocher est désactivée, rendant l'élément inutilisable */\n @Prop() disabled: boolean = false;\n /** Propriété mutable qui reflète si la case à cocher est cochée ou non */\n @Prop({ mutable: true, reflect: true }) checked: boolean = false;\n /** Indique s'il y a une erreur associée à la case à cocher, pour un affichage visuel */\n @Prop() error: boolean = false;\n /** Icône à afficher lorsque la case à cocher est cochée */\n @Prop() icon: string = 'fa-check';\n /** Nom de l'élément utilisé dans les formulaires */\n @Prop() name: string;\n /** Type de variant pour la checkbox */\n @Prop() variant?: 'default' | 'toggle' = 'default';\n\n @State() internalChecked: boolean;\n\n @AttachInternals() internals: ElementInternals;\n\n /** Événement déclenché lors d'un changement d'état de la case à cocher (cochée ou décochée) */\n @Event({ bubbles: true, composed: true }) spwChange: EventEmitter<boolean>;\n\n private handleCheckbox() {\n if (!this.disabled) {\n this.internalChecked = !this.internalChecked;\n this.checked = this.internalChecked;\n this.updateFormValue();\n this.spwChange.emit(this.internalChecked);\n }\n }\n\n /** Méthode publique pour changer l'état de la case à cocher. */\n @Method()\n async toggleCheckedState(newVal: boolean) {\n this.internalChecked = newVal;\n this.checked = newVal;\n this.updateFormValue();\n }\n\n @Watch('checked')\n checkedChanged(newChecked: boolean) {\n this.internalChecked = newChecked;\n this.inputElement.checked = newChecked;\n this.updateFormValue();\n }\n\n private updateFormValue() {\n if (this.internalChecked) {\n this.internals.setFormValue('on');\n } else {\n this.internals.setFormValue(null);\n }\n }\n\n private handleKeydown(event) {\n if (event.key === ' ' || event.key === 'Enter') {\n // Space or Enter keys\n this.handleCheckbox();\n event.preventDefault();\n }\n }\n\n componentWillLoad() {\n this.internalChecked = this.checked;\n this.updateFormValue();\n }\n\n componentDidLoad() {\n this.el.closest('form')?.addEventListener('formdata', (e: FormDataEvent) => {\n if (this.internalChecked) {\n e.formData.set(this.name, 'on');\n }\n });\n }\n\n formResetCallback() {\n this.internalChecked = false;\n this.checked = false;\n this.updateFormValue();\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-checkbox__wrapper': true,\n [`spw-checkbox__wrapper--${this.variant}`]: true,\n 'spw-checkbox__wrapper--disabled': this.disabled,\n 'spw-checkbox__wrapper--checked': this.internalChecked,\n 'spw-checkbox__wrapper--error': this.error,\n };\n }\n\n render() {\n const slot = this.el.innerHTML;\n const hasSlot = Boolean(slot);\n\n return (\n <div class=\"spw-checkbox\">\n <input\n type=\"checkbox\"\n ref={el => (this.inputElement = el)}\n checked={this.internalChecked}\n onChange={this.handleCheckbox.bind(this)}\n name={this.name}\n disabled={this.disabled}\n style={{ display: 'none' }}\n />\n {hasSlot && (\n <label htmlFor={this.name} class={`spw-checkbox__label ${this.disabled ? 'spw-checkbox__label--disabled' : ''}`} onClick={this.handleCheckbox.bind(this)}>\n <slot />\n </label>\n )}\n <div\n tabindex={this.disabled ? -1 : 0}\n onClick={this.handleCheckbox.bind(this)}\n onKeyDown={this.handleKeydown.bind(this)}\n role=\"checkbox\"\n aria-checked={this.internalChecked ? 'true' : 'false'}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-labelledby=\"label\"\n class={this.elementClass}\n >\n {this.internalChecked && <spw-icon icon={this.icon}></spw-icon>}\n </div>\n </div>\n );\n }\n}\n"],"names":["h"],"mappings":"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"}
|