@spw-ds/spw-stencil-library 1.2.2 → 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 +1 -1
- 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 +1 -1
- 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-title.cjs.entry.js +1 -1
- 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-field-label_6.cjs.entry.js +3 -3
- 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-image/spw-card-image.css +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.css +1 -1
- package/dist/collection/components/spw-card/spw-card.js +38 -8
- package/dist/collection/components/spw-card/spw-card.js.map +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.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/components/{p-BvWTgY8c.js → p-B-sLKmnT.js} +3 -3
- package/dist/components/{p-BvWTgY8c.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-DPUqdUk8.js → p-BDRCqK1w.js} +3 -3
- package/dist/components/{p-DPUqdUk8.js.map → p-BDRCqK1w.js.map} +1 -1
- package/dist/components/{p-BQKQ0k0G.js → p-DIhULKFM.js} +3 -3
- package/dist/components/{p-BQKQ0k0G.js.map → p-DIhULKFM.js.map} +1 -1
- package/dist/components/{p-CMFyBNvH.js → p-DaosfSzT.js} +9 -9
- package/dist/components/{p-CMFyBNvH.js.map → p-DaosfSzT.js.map} +1 -1
- package/dist/components/{p-5qcE_Ljw.js → p-Dku0Cksp.js} +3 -3
- package/dist/components/{p-5qcE_Ljw.js.map → p-Dku0Cksp.js.map} +1 -1
- package/dist/components/{p-BsulPKjc.js → p-GUYao_6w.js} +3 -3
- package/dist/components/{p-BsulPKjc.js.map → p-GUYao_6w.js.map} +1 -1
- package/dist/components/{p-BbuJ0hsQ.js → p-c0hJPgjJ.js} +3 -3
- package/dist/components/p-c0hJPgjJ.js.map +1 -0
- package/dist/components/{p-8jCY8rtJ.js → p-fNRoK67L.js} +3 -3
- package/dist/components/{p-8jCY8rtJ.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 +1 -1
- package/dist/components/spw-card-excerpt.js.map +1 -1
- package/dist/components/spw-card-image.js +1 -1
- package/dist/components/spw-card-image.js.map +1 -1
- package/dist/components/spw-card-title.js +1 -1
- 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-cookies.js +4 -4
- package/dist/components/spw-file-upload.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 +4 -4
- 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 +3 -3
- 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 +1 -1
- 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 +367 -5
- 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 +1 -1
- package/dist/esm/spw-card-excerpt.entry.js.map +1 -1
- package/dist/esm/spw-card-image.entry.js +1 -1
- package/dist/esm/spw-card-image.entry.js.map +1 -1
- package/dist/esm/spw-card-title.entry.js +1 -1
- 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-field-label_6.entry.js +3 -3
- 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-e1a459eb.entry.js → p-0226ad72.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-328fb48c.entry.js → p-04274072.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-2c8e65e5.entry.js → p-09a2d080.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-5426464a.entry.js → p-09d27c4b.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-b726755c.entry.js → p-11805364.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-96fac544.entry.js → p-181ae002.entry.js} +2 -2
- package/dist/spw-stencil-library/p-181ae002.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-274ce2d2.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-991d5382.entry.js → p-1f382434.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-49be45a2.entry.js → p-272dc0ee.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-44124a37.entry.js → p-2fd3eb76.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-c1a30fb7.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-4526bef6.entry.js → p-376b1e84.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-228a413d.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-573393ab.entry.js → p-42658e0a.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-aa364a44.entry.js → p-44d87d3f.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-be3b1d65.entry.js → p-4d61f200.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-f2008faa.entry.js → p-554af1e3.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-4e7df891.entry.js → p-5a034423.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-57851ceb.entry.js → p-5f82570e.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-b64a003c.entry.js → p-64670b2e.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-35ef6489.entry.js → p-74b4aea0.entry.js} +2 -2
- package/dist/spw-stencil-library/p-74b4aea0.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-a2b3dd47.entry.js → p-7cd55113.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-ca672774.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-8d94697c.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-74d118ec.entry.js → p-8ef8864e.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-ad5f01e4.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-d8078491.entry.js → p-a30563ff.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-a27ed650.entry.js → p-a8311acd.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-3cfcf070.entry.js → p-a93f21f9.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-4fa98537.entry.js → p-a950bce8.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-0e310e7a.entry.js → p-ba27b9b0.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-e5c9fb8e.entry.js → p-bf2d0cf4.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-af49292e.entry.js → p-c2de4206.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-5cb1344b.entry.js → p-c54fee67.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-68f9c5bf.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-c7fecad8.entry.js → p-db2354cf.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-3240c1a4.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-10269c11.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-e1c4d94e.entry.js → p-e72c6410.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-1e07197c.entry.js → p-f5de314e.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-07cadb86.entry.js → p-fabf41a2.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-a093ab2f.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-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 +1063 -410
- package/dist/types/components/spw-card/spw-card.d.ts +5 -0
- 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 +112 -0
- package/hydrate/index.js +189 -81
- package/hydrate/index.mjs +189 -81
- package/package.json +1 -1
- package/dist/components/p-BbuJ0hsQ.js.map +0 -1
- package/dist/components/p-z27d6ASx.js.map +0 -1
- package/dist/spw-stencil-library/p-10269c11.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-1e725439.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-228a413d.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-35ef6489.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-57d83f8b.entry.js +0 -2
- package/dist/spw-stencil-library/p-57d83f8b.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-68f9c5bf.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-6b291009.entry.js +0 -2
- package/dist/spw-stencil-library/p-6b291009.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-6d08bcc3.entry.js +0 -2
- package/dist/spw-stencil-library/p-6d08bcc3.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-6ee69164.entry.js +0 -2
- package/dist/spw-stencil-library/p-6ee69164.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-96fac544.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-aaffdc4f.entry.js +0 -2
- package/dist/spw-stencil-library/p-aaffdc4f.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-bf14b880.entry.js +0 -2
- package/dist/spw-stencil-library/p-bf14b880.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-bf43d61c.entry.js +0 -2
- package/dist/spw-stencil-library/p-bf43d61c.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-c1a30fb7.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-f1d04cc1.entry.js +0 -2
- package/dist/spw-stencil-library/p-f1d04cc1.entry.js.map +0 -1
- /package/dist/spw-stencil-library/{p-e1a459eb.entry.js.map → p-0226ad72.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-328fb48c.entry.js.map → p-04274072.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-2c8e65e5.entry.js.map → p-09a2d080.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-5426464a.entry.js.map → p-09d27c4b.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-b726755c.entry.js.map → p-11805364.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-274ce2d2.entry.js.map → p-19a69f36.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-991d5382.entry.js.map → p-1f382434.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-49be45a2.entry.js.map → p-272dc0ee.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-44124a37.entry.js.map → p-2fd3eb76.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-4526bef6.entry.js.map → p-376b1e84.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-573393ab.entry.js.map → p-42658e0a.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-aa364a44.entry.js.map → p-44d87d3f.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-be3b1d65.entry.js.map → p-4d61f200.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-f2008faa.entry.js.map → p-554af1e3.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-4e7df891.entry.js.map → p-5a034423.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-57851ceb.entry.js.map → p-5f82570e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-b64a003c.entry.js.map → p-64670b2e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-a2b3dd47.entry.js.map → p-7cd55113.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-ca672774.entry.js.map → p-7d80a44e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-8d94697c.entry.js.map → p-8c6c9db5.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-74d118ec.entry.js.map → p-8ef8864e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-ad5f01e4.entry.js.map → p-9219fe7c.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-d8078491.entry.js.map → p-a30563ff.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-a27ed650.entry.js.map → p-a8311acd.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-3cfcf070.entry.js.map → p-a93f21f9.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-4fa98537.entry.js.map → p-a950bce8.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-0e310e7a.entry.js.map → p-ba27b9b0.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-e5c9fb8e.entry.js.map → p-bf2d0cf4.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-af49292e.entry.js.map → p-c2de4206.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-5cb1344b.entry.js.map → p-c54fee67.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-c7fecad8.entry.js.map → p-db2354cf.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-3240c1a4.entry.js.map → p-dd4bf12d.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-e1c4d94e.entry.js.map → p-e72c6410.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-1e07197c.entry.js.map → p-f5de314e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-07cadb86.entry.js.map → p-fabf41a2.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-a093ab2f.entry.js.map → p-fbe468de.entry.js.map} +0 -0
|
@@ -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
|
|
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;;;;;;;;"}
|
|
@@ -2,7 +2,7 @@
|
|
|
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}: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}";
|
|
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) {
|
|
@@ -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 :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,
|
|
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%;--spw-card-background:var(--spw-ds-white);--spw-card-box-shadow:var(--spw-effect-elevation-
|
|
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":";;;;AAAA,MAAM,UAAU,GAAG,mhIAAmhI;;MCOzhI,OAAO,GAAA,MAAA;AALpB,IAAA,WAAA,CAAA,OAAA,EAAA;;AAOW,QAAA,IAAQ,CAAA,QAAA,GAAY,KAAK;;AAG1B,QAAA,IAAO,CAAA,OAAA,GAAoE,MAAM;;AAEjF,QAAA,IAAW,CAAA,WAAA,GAAW,GAAG;;AAIzB,QAAA,IAAM,CAAA,MAAA,GAAW,OAAO;;AASxB,QAAA,IAAU,CAAA,UAAA,GAAY,KAAK;;AAE3B,QAAA,IAAQ,CAAA,QAAA,GAAY,KAAK;AAgHlC;IA5GC,iBAAiB,GAAA;QACf,IAAI,CAAC,aAAa,EAAE;QACpB,IAAI,CAAC,sBAAsB,EAAE;;IAI/B,WAAW,GAAA;QACT,IAAI,CAAC,aAAa,EAAE;QACpB,IAAI,CAAC,sBAAsB,EAAE;;IAI/B,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;;IAI5B,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;;IAGrB,aAAa,GAAA;QACnB,qBAAqB,CAAC,MAAK;YACzB,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,gBAAgB,CAAC;YAC5D,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,kBAAkB,CAAC;AAChE,YAAA,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,YAAY;AAC9B,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAClB,gBAAA,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC;;AAE9C,SAAC,CAAC;;AAGI,IAAA,UAAU,CAAC,IAAa,EAAA;AAC9B,QAAA,IAAI,CAAC,IAAI;AAAE,YAAA,OAAO,EAAE;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAEA,OAAK,MAAMA,OAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,CAACC,OAAA,CAAA,MAAA,EAAA,IAAA,EAAO,IAAI,CAAQ,EAAEA,0BAAc,CAAC,GAAG,CAACA,OAAO,CAAA,MAAA,EAAA,IAAA,EAAA,IAAI,CAAQ,CAAC,CAAC,CAAC;;IAG3H,sBAAsB,GAAA;QAC5B,qBAAqB,CAAC,MAAK;AACzB,YAAA,MAAM,YAAY,GAAG,CAAA,EAAA,EAAK,IAAI,CAAC,OAAO,EAAE;YACxC,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,kBAAkB,CAAC;YAChE,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,gBAAgB,CAAC;YAC5D,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,gBAAgB,CAAC;YAC5D,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,kBAAkB,CAAC;YAChE,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,kBAAkB,CAAC;YAEhE,cAAc,IAAI,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC;YAC5D,YAAY,IAAI,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC;YACxD,YAAY,IAAI,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC;YACxD,cAAc,IAAI,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC;YAC5D,cAAc,IAAI,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC;AAC9D,SAAC,CAAC;;AAGI,IAAA,eAAe,CAAC,SAAkB,EAAA;QACxC,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,gBAAgB,CAAC;QAC5D,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,gBAAgB,CAAC;AAC5D,QAAA,IAAI,YAAY,IAAI,IAAI,CAAC,IAAI,EAAE;YAC7B,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC;;AAEvD,QAAA,IAAI,YAAY,IAAI,IAAI,CAAC,IAAI,EAAE;YAC7B,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC;;;AAIzD,IAAA,IAAY,YAAY,GAAA;QACtB,OAAO;AACL,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,qBAAqB,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI;AAClC,YAAA,oBAAoB,EAAE,CAAC,IAAI,CAAC,QAAQ;AACpC,YAAA,CAAC,aAAa,IAAI,CAAC,OAAO,CAAE,CAAA,GAAG,IAAI;SACpC;;IAGH,MAAM,GAAA;AACJ,QAAA,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI;AAC/D,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,GAAG,KAAK,GAAG,GAAG;AACrD,QAAA,MAAM,KAAK,GACT,OAAO,KAAK;AACV,cAAE;AACF,cAAE;gBACE,IAAI;gBACJ,GAAG;gBACH,MAAM;aACP;AAEP,QAAA,MAAM,cAAc,GAAG;AACrB,YAAA,YAAY,EAAE,IAAI,KAAA,IAAA,IAAJ,IAAI,KAAJ,MAAA,GAAA,MAAA,GAAA,IAAI,CAAE,YAAY;YAChC,eAAe,EAAE,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,IAAI;SAC/C;AAED,QAAA,QACEA,OAAA,CAACC,UAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAC,KAAK,EAAE,EAAE,kBAAkB,EAAE,IAAI,CAAC,UAAU,EAAE,EAAA,EAClDD,OAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAS,KAAK,EAAE,IAAI,CAAC,YAAY,EAAA,EAC9B,OAAO,KAAK,OAAO,KAClBA,OAAA,CAAC,OAAO,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAK,KAAK,EAAA,EAAE,KAAK,EAAC,iBAAiB,EAAA,CAAA,EACxC,SAAS,IAAIA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,qBAAqB,EAAA,EAAE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAO,EAChF,OAAO,IAAIA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,qBAAqB,EAAE,EAAA,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAO,CACrE,CACX,EACDA,OAAC,CAAA,OAAO,qEAAK,KAAK,EAAM,cAAc,EAAE,EAAA,KAAK,EAAC,gBAAgB,EAAA,CAAA,EAC5DA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAa,CACL,CACF,CACL;;;;;;;;","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-2);\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 }\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' | '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 }\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 --spw-card-background: var(--spw-ds-white);\n --spw-card-box-shadow: var(--spw-effect-elevation-2);\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 }\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' | '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 }\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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"}
|
|
@@ -135,7 +135,7 @@ const SpwLink = class {
|
|
|
135
135
|
};
|
|
136
136
|
const iconClass = `spw-icon--${iconPosition}`;
|
|
137
137
|
const iconElement = icon ? index.h("spw-icon", { class: iconClass, icon: icon }) : null;
|
|
138
|
-
return (index.h("a", Object.assign({ key: '
|
|
138
|
+
return (index.h("a", Object.assign({ key: 'e0f82245f511e930a70f4eb5a872ad73b86d30c5', href: disabled ? undefined : href, rel: rel, target: target, class: this.elementClass, onClick: this.onClick }, ariaAttributes), iconPosition === 'left' && iconElement, index.h("div", { key: '77eb530be7a5ed9de3ed2c4f19839061e70d64c1', class: "spw-link__inner" }, index.h("slot", { key: '6c803c3372e281aaf5205baa1b0d1441d200f7e5' })), iconPosition === 'right' && iconElement));
|
|
139
139
|
}
|
|
140
140
|
get el() { return index.getElement(this); }
|
|
141
141
|
};
|
|
@@ -172,7 +172,7 @@ const SpwSeparator = class {
|
|
|
172
172
|
};
|
|
173
173
|
}
|
|
174
174
|
render() {
|
|
175
|
-
return index.h("div", { key: '
|
|
175
|
+
return index.h("div", { key: '109c32f1b6daa299ac305a7cfd983164639f2464', class: this.elementClass, style: this.style });
|
|
176
176
|
}
|
|
177
177
|
};
|
|
178
178
|
SpwSeparator.style = spwSeparatorCss;
|
|
@@ -235,7 +235,7 @@ const SpwThemeProvider = class {
|
|
|
235
235
|
document.documentElement.setAttribute('data-theme', theme);
|
|
236
236
|
}
|
|
237
237
|
render() {
|
|
238
|
-
return (index.h("main", { key: '
|
|
238
|
+
return (index.h("main", { key: '6f7aca521c79251d53fe6a1f6be05b22ce24da4d', class: `spw-theme-${this.theme}` }, index.h("slot", { key: '2967c6e79bd74eff414de7180e57287d557ffac1' })));
|
|
239
239
|
}
|
|
240
240
|
get el() { return index.getElement(this); }
|
|
241
241
|
};
|
|
@@ -10,7 +10,7 @@ const SpwHeaderLangItem = class {
|
|
|
10
10
|
this.active = false;
|
|
11
11
|
}
|
|
12
12
|
render() {
|
|
13
|
-
return (index.h(index.Host, { key: '
|
|
13
|
+
return (index.h(index.Host, { key: 'd800f4a5ab1726a07ca2596410add0c58f0000e6' }, index.h("div", { key: 'ca3886060340284cef67090d73a972b6af00c4b6', class: { 'spw-header-lang-item': true, 'spw-header-lang-item--active': this.active } }, index.h("slot", { key: 'ac512b451be1352bedfc889117d3168511a4678b' }))));
|
|
14
14
|
}
|
|
15
15
|
};
|
|
16
16
|
SpwHeaderLangItem.style = spwHeaderLangItemCss;
|
|
@@ -56,7 +56,7 @@ const SpwHeaderLang = class {
|
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
58
|
render() {
|
|
59
|
-
return (index.h(index.Host, { key: '
|
|
59
|
+
return (index.h(index.Host, { key: 'df40430562c0c38ca0d083496eb3ab3bfc9f6d83' }, index.h("div", { key: '213318a6543812175b5ab415dd65a80c4250289e', class: "spw-header-lang" }, index.h("spw-button", { key: 'ec3767cb9a82d55597a4847011a7c649df0672d2', variant: "tertiary", surface: "light", icon: "fa-chevron-down", class: "spw-header-lang__active-lang", onKeyDown: this.handleButtonKeyDown, onClick: this.handleButtonClick }, this.activeLang), index.h("select", { key: '338f8ab58bff50bdae6ff699d46d2a15e22792dc', class: "spw-header-lang__select", onChange: e => this.handleChange(e), ref: el => (this.selectEl = el), tabIndex: -1 }), index.h("ul", { key: 'c989e6da353f1bac2461f66cf880d10a3c0641cd', class: "spw-header-lang__options" }, this.options.map(option => {
|
|
60
60
|
var _a;
|
|
61
61
|
const label = ((_a = option.textContent) === null || _a === void 0 ? void 0 : _a.trim()) || '';
|
|
62
62
|
const value = option.getAttribute('value') || '';
|
|
@@ -9,7 +9,7 @@ const SpwHeaderNavigationDropdown = class {
|
|
|
9
9
|
index.registerInstance(this, hostRef);
|
|
10
10
|
}
|
|
11
11
|
render() {
|
|
12
|
-
return (index.h(index.Host, { key: '
|
|
12
|
+
return (index.h(index.Host, { key: '0750309524960bdc6409b7f3308bfa5c0a0f63eb' }, index.h("slot", { key: 'e0d299a85392eea8815a952fbeeedf7238bb898a' })));
|
|
13
13
|
}
|
|
14
14
|
};
|
|
15
15
|
SpwHeaderNavigationDropdown.style = spwHeaderNavigationDropdownCss;
|
|
@@ -131,7 +131,7 @@ const SpwHeaderNavigationItem = class {
|
|
|
131
131
|
'spw-header-navigation-item--is-active': this.internalIsActive,
|
|
132
132
|
'spw-header-navigation-item--is-subnav-visible': this.isSubnavVisible,
|
|
133
133
|
};
|
|
134
|
-
return (index.h(index.Host, { key: '
|
|
134
|
+
return (index.h(index.Host, { key: '99e22960a8623ff32fd3cb05dcf22cf5fcae86d8', "data-level": this.level }, index.h("li", { key: '4a93483ef7a15c7c286cdc2ead368787eec7e402', class: elementClass }, index.h("div", { key: '9c2fcd9c8aa35a197603be2ae4b5f20e4bc07460', class: "spw-header-navigation-item__content", onClick: event => this.toggleSubnavVisibility(event) }, this.isSubnavVisible && (index.h("div", { key: 'c48a9e0a758f4dc8d32784f6e64cbcff6026f3f9', class: `spw-header-navigation-item__top spw-header-navigation-item__top--${this.level}` }, index.h("div", { key: '332d772c77e37fd2d34763a8fb1c4daba3c0f209', class: "spw-header-navigation-item__top-back", onClick: event => this.handleBackClick(event) }, index.h("spw-icon", { key: '16c3aaf99745cf973ac94b44f3685465594a5f6a', icon: "fa-chevron-left" }), " ", index.h("span", { key: '4c0e3ef02b1d804177814d21b6713acc92c72ae8' }, this.level === 1 ? '' : this.level === 2 ? 'Menu principal' : storedTitle)), index.h("div", { key: 'ca137c976669140ce05b6499bdb35f356f441cf8', class: "spw-header-navigation-item__top-title" }, index.h("a", { key: '1e32b4bcd035b77196ba22c15a9cf33672f610f1', href: (pageTitle === null || pageTitle === void 0 ? void 0 : pageTitle.link) || '#', target: (pageTitle === null || pageTitle === void 0 ? void 0 : pageTitle.target) || '_self' }, (pageTitle === null || pageTitle === void 0 ? void 0 : pageTitle.title) || '')))), index.h("slot", { key: 'd80ed70c92771c873a58564e08881bc6e81517c4' })))));
|
|
135
135
|
}
|
|
136
136
|
get el() { return index.getElement(this); }
|
|
137
137
|
};
|
|
@@ -43,7 +43,7 @@ const SpwHeaderNavigation = class {
|
|
|
43
43
|
return allItems;
|
|
44
44
|
}
|
|
45
45
|
render() {
|
|
46
|
-
return (index.h(index.Host, { key: '
|
|
46
|
+
return (index.h(index.Host, { key: 'fbb659c46a4f2020ff043a8ac15b432eabe788fd' }, index.h("nav", { key: '235ab2e873b91b51ce4657f0f9bca9f93a6c4f1f', class: "spw-header-navigation" }, index.h("div", { key: '4f9eb3b0aa07907d29a866df99c803874c2ae389', class: "spw-ds-container" }, index.h("ul", { key: 'bd6d5958529b16fc8b91b5f998f63912d164704a', class: "spw-header-navigation__list" }, index.h("li", { key: '68d5ca52774ddfecdf460ec58ab4b61a729cec61', class: "spw-header-navigation__list-back" }, index.h("a", { key: '9e317cd130a1918b37a6b7851030b2d070b477b5', href: "#", onClick: event => this.redirectToHome(event) }, index.h("spw-icon", { key: 'e3e041d4e79f28fa3f756b112618fdb77ecbd53a', icon: "fa-chevron-left" }), " ", index.h("span", { key: '9c51890d66cdf1239e187bb234e0e0e92ee86f7d' }, "Page d'accueil"))), index.h("slot", { key: 'cd919f0bb080b23d935b04e52713eb71006ce36b' }))))));
|
|
47
47
|
}
|
|
48
48
|
};
|
|
49
49
|
SpwHeaderNavigation.style = spwHeaderNavigationCss;
|
|
@@ -10,7 +10,7 @@ const SpwHeaderPersonaItem = class {
|
|
|
10
10
|
this.active = false;
|
|
11
11
|
}
|
|
12
12
|
render() {
|
|
13
|
-
return (index.h(index.Host, { key: '
|
|
13
|
+
return (index.h(index.Host, { key: 'eee572c064debd003a1820ffaecd91a11fccc2aa' }, index.h("div", { key: 'c7b51b61d0d53bd659febab0d448d950ebcf14d4', class: { 'spw-header-persona-item': true, 'spw-header-persona-item--active': this.active } }, index.h("slot", { key: 'b7342be2d08ea3b760c330c0a16b30e883642079' }))));
|
|
14
14
|
}
|
|
15
15
|
};
|
|
16
16
|
SpwHeaderPersonaItem.style = spwHeaderPersonaItemCss;
|
|
@@ -7,6 +7,8 @@ const spwHeaderPersonaCss = "/*! normalize.css v8.0.1 | MIT License | github.com
|
|
|
7
7
|
const SpwHeaderPersona = class {
|
|
8
8
|
constructor(hostRef) {
|
|
9
9
|
index.registerInstance(this, hostRef);
|
|
10
|
+
/** Label pour le choix du persona (à appliquer sur spw-header-persona) */
|
|
11
|
+
this.personaLabel = 'Je suis :';
|
|
10
12
|
this.activePersona = '';
|
|
11
13
|
this.options = [];
|
|
12
14
|
this.handleButtonClick = () => {
|
|
@@ -50,7 +52,7 @@ const SpwHeaderPersona = class {
|
|
|
50
52
|
}
|
|
51
53
|
}
|
|
52
54
|
render() {
|
|
53
|
-
return (index.h(index.Host, { key: '
|
|
55
|
+
return (index.h(index.Host, { key: 'b78b96b4c0f36a7e3eeea53a8129f9cd75a2f5fc' }, index.h("div", { key: '4721edf723463cfd6901ff64b791c84b0e942a2f', class: "spw-header-persona", onClick: this.handleButtonClick, onKeyDown: this.handleButtonKeyDown }, index.h("span", { key: '475f28ae1209129f444515e6175f4a05b1f8d5c3', class: "spw-header-persona__label" }, this.personaLabel), index.h("div", { key: '7e349e6db91d6fb3256b50c8176bcb4bea5463e3', class: "spw-header-persona__active-persona" }, this.activePersona, " ", index.h("spw-icon", { key: '2219b7a1bcefbb5dbff8faf721fb6b5496628f5d', icon: "fa-chevron-down" })), index.h("select", { key: '4d1b0dfae5d17578031e11c8ccf44d8d7018b080', class: "spw-header-persona__select", ref: el => (this.selectEl = el), onChange: e => this.handleChange(e), tabIndex: -1 }))));
|
|
54
56
|
}
|
|
55
57
|
get el() { return index.getElement(this); }
|
|
56
58
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"spw-header-persona.entry.cjs.js","mappings":";;;;AAAA,MAAM,mBAAmB,GAAG,ojIAAojI;;MCOnkI,gBAAgB,GAAA,MAAA;AAL7B,IAAA,WAAA,CAAA,OAAA,EAAA
|
|
1
|
+
{"file":"spw-header-persona.entry.cjs.js","mappings":"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","names":["h","Host"],"sources":["src/components/spw-header/spw-header-persona/spw-header-persona.scss?tag=spw-header-persona&encapsulation=shadow","src/components/spw-header/spw-header-persona/spw-header-persona.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.spw-header-persona {\n position: relative;\n @include under-breakpoint(lg) {\n border-bottom: 1px solid var(--spw-colors-support-grey-grey-300);\n padding-top: 24px;\n padding-bottom: 24px;\n }\n @include breakpoint(lg) {\n padding-left: 24px;\n margin-left: 24px;\n border-left: 1px solid var(--spw-colors-support-grey-grey-300);\n }\n\n &__label {\n font-size: 14px;\n margin-bottom: 2px;\n display: block;\n color: var(--spw-colors-support-grey-grey-700);\n @include under-breakpoint(lg) {\n display: none;\n }\n }\n\n &__active-persona {\n position: relative;\n display: flex;\n gap: 6px;\n justify-content: space-between;\n cursor: pointer;\n font-weight: bold;\n text-decoration: none;\n color: var(--spw-colors-support-grey-grey-900);\n @include breakpoint(lg) {\n text-decoration: underline;\n .spw-header-persona:hover & {\n text-decoration: none;\n }\n }\n }\n\n &__trigger {\n display: block;\n .spw-header-persona--opened & {\n transform: rotate(180deg);\n }\n }\n\n &__select {\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n opacity: 0;\n cursor: pointer;\n z-index: 2;\n }\n\n &__dropdown {\n display: none;\n overflow: hidden;\n .spw-header-persona--opened & {\n display: block;\n @include breakpoint(lg) {\n position: absolute;\n width: max-content;\n z-index: 99999;\n background: white;\n border-radius: 4px;\n box-shadow: var(--spw-effect-elevation-8);\n }\n }\n }\n}\n","import { Component, h, Prop, Host, Element, State } from '@stencil/core';\n\n@Component({\n tag: 'spw-header-persona',\n styleUrl: 'spw-header-persona.scss',\n shadow: true,\n})\nexport class SpwHeaderPersona {\n /** Label pour le choix du persona (à appliquer sur spw-header-persona) */\n @Prop() personaLabel?: string = 'Je suis :';\n\n @Element() el!: HTMLElement;\n @State() activePersona: string = '';\n @State() options: HTMLOptionElement[] = [];\n\n private selectEl!: HTMLSelectElement;\n\n componentWillLoad() {\n this.setInitialPersona();\n }\n\n componentDidLoad() {\n this.moveOptionsToSelect();\n }\n\n private setInitialPersona() {\n const selected = this.el.querySelector('option[selected]');\n this.activePersona = selected?.textContent?.trim() || '';\n }\n\n private moveOptionsToSelect() {\n const lightDomOptions = Array.from(this.el.querySelectorAll('option'));\n this.options = lightDomOptions;\n lightDomOptions.forEach(option => {\n this.selectEl.appendChild(option);\n });\n }\n\n private handleChange(event: Event) {\n const select = event.target as HTMLSelectElement;\n const selectedOption = select.selectedOptions[0];\n this.activePersona = selectedOption?.textContent?.trim() || '';\n const link = selectedOption?.getAttribute('data-link');\n if (link) {\n window.location.href = link;\n }\n }\n\n private handleButtonClick = () => {\n this.selectEl?.click();\n };\n\n private handleButtonKeyDown = (event: KeyboardEvent) => {\n if (event.key === ' ' || event.key === 'Enter') {\n event.preventDefault();\n this.selectEl?.click();\n }\n };\n\n render() {\n return (\n <Host>\n <div class=\"spw-header-persona\" onClick={this.handleButtonClick} onKeyDown={this.handleButtonKeyDown}>\n <span class=\"spw-header-persona__label\">{this.personaLabel}</span>\n <div class=\"spw-header-persona__active-persona\">\n {this.activePersona} <spw-icon icon=\"fa-chevron-down\"></spw-icon>\n </div>\n <select class=\"spw-header-persona__select\" ref={el => (this.selectEl = el as HTMLSelectElement)} onChange={e => this.handleChange(e)} tabIndex={-1} />\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spw-header-persona.entry.cjs.js","sources":["src/components/spw-header/spw-header-persona/spw-header-persona.scss?tag=spw-header-persona&encapsulation=shadow","src/components/spw-header/spw-header-persona/spw-header-persona.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.spw-header-persona {\n position: relative;\n @include under-breakpoint(lg) {\n border-bottom: 1px solid var(--spw-colors-support-grey-grey-300);\n padding-top: 24px;\n padding-bottom: 24px;\n }\n @include breakpoint(lg) {\n padding-left: 24px;\n margin-left: 24px;\n border-left: 1px solid var(--spw-colors-support-grey-grey-300);\n }\n\n &__label {\n font-size: 14px;\n margin-bottom: 2px;\n display: block;\n color: var(--spw-colors-support-grey-grey-700);\n @include under-breakpoint(lg) {\n display: none;\n }\n }\n\n &__active-persona {\n position: relative;\n display: flex;\n gap: 6px;\n justify-content: space-between;\n cursor: pointer;\n font-weight: bold;\n text-decoration: none;\n color: var(--spw-colors-support-grey-grey-900);\n @include breakpoint(lg) {\n text-decoration: underline;\n .spw-header-persona:hover & {\n text-decoration: none;\n }\n }\n }\n\n &__trigger {\n display: block;\n .spw-header-persona--opened & {\n transform: rotate(180deg);\n }\n }\n\n &__select {\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n opacity: 0;\n cursor: pointer;\n z-index: 2;\n }\n\n &__dropdown {\n display: none;\n overflow: hidden;\n .spw-header-persona--opened & {\n display: block;\n @include breakpoint(lg) {\n position: absolute;\n width: max-content;\n z-index: 99999;\n background: white;\n border-radius: 4px;\n box-shadow: var(--spw-effect-elevation-8);\n }\n }\n }\n}\n","import { Component, h, Host, Element, State } from '@stencil/core';\n\n@Component({\n tag: 'spw-header-persona',\n styleUrl: 'spw-header-persona.scss',\n shadow: true,\n})\nexport class SpwHeaderPersona {\n @Element() el!: HTMLElement;\n @State() activePersona: string = '';\n @State() options: HTMLOptionElement[] = [];\n\n private selectEl!: HTMLSelectElement;\n\n componentWillLoad() {\n this.setInitialPersona();\n }\n\n componentDidLoad() {\n this.moveOptionsToSelect();\n }\n\n private setInitialPersona() {\n const selected = this.el.querySelector('option[selected]');\n this.activePersona = selected?.textContent?.trim() || '';\n }\n\n private moveOptionsToSelect() {\n const lightDomOptions = Array.from(this.el.querySelectorAll('option'));\n this.options = lightDomOptions;\n lightDomOptions.forEach(option => {\n this.selectEl.appendChild(option);\n });\n }\n\n private handleChange(event: Event) {\n const select = event.target as HTMLSelectElement;\n const selectedOption = select.selectedOptions[0];\n this.activePersona = selectedOption?.textContent?.trim() || '';\n const link = selectedOption?.getAttribute('data-link');\n if (link) {\n window.location.href = link;\n }\n }\n\n private handleButtonClick = () => {\n this.selectEl?.click();\n };\n\n private handleButtonKeyDown = (event: KeyboardEvent) => {\n if (event.key === ' ' || event.key === 'Enter') {\n event.preventDefault();\n this.selectEl?.click();\n }\n };\n\n render() {\n return (\n <Host>\n <div class=\"spw-header-persona\" onClick={this.handleButtonClick} onKeyDown={this.handleButtonKeyDown}>\n <span class=\"spw-header-persona__label\">
|
|
1
|
+
{"version":3,"file":"spw-header-persona.entry.cjs.js","sources":["src/components/spw-header/spw-header-persona/spw-header-persona.scss?tag=spw-header-persona&encapsulation=shadow","src/components/spw-header/spw-header-persona/spw-header-persona.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.spw-header-persona {\n position: relative;\n @include under-breakpoint(lg) {\n border-bottom: 1px solid var(--spw-colors-support-grey-grey-300);\n padding-top: 24px;\n padding-bottom: 24px;\n }\n @include breakpoint(lg) {\n padding-left: 24px;\n margin-left: 24px;\n border-left: 1px solid var(--spw-colors-support-grey-grey-300);\n }\n\n &__label {\n font-size: 14px;\n margin-bottom: 2px;\n display: block;\n color: var(--spw-colors-support-grey-grey-700);\n @include under-breakpoint(lg) {\n display: none;\n }\n }\n\n &__active-persona {\n position: relative;\n display: flex;\n gap: 6px;\n justify-content: space-between;\n cursor: pointer;\n font-weight: bold;\n text-decoration: none;\n color: var(--spw-colors-support-grey-grey-900);\n @include breakpoint(lg) {\n text-decoration: underline;\n .spw-header-persona:hover & {\n text-decoration: none;\n }\n }\n }\n\n &__trigger {\n display: block;\n .spw-header-persona--opened & {\n transform: rotate(180deg);\n }\n }\n\n &__select {\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n opacity: 0;\n cursor: pointer;\n z-index: 2;\n }\n\n &__dropdown {\n display: none;\n overflow: hidden;\n .spw-header-persona--opened & {\n display: block;\n @include breakpoint(lg) {\n position: absolute;\n width: max-content;\n z-index: 99999;\n background: white;\n border-radius: 4px;\n box-shadow: var(--spw-effect-elevation-8);\n }\n }\n }\n}\n","import { Component, h, Prop, Host, Element, State } from '@stencil/core';\n\n@Component({\n tag: 'spw-header-persona',\n styleUrl: 'spw-header-persona.scss',\n shadow: true,\n})\nexport class SpwHeaderPersona {\n /** Label pour le choix du persona (à appliquer sur spw-header-persona) */\n @Prop() personaLabel?: string = 'Je suis :';\n\n @Element() el!: HTMLElement;\n @State() activePersona: string = '';\n @State() options: HTMLOptionElement[] = [];\n\n private selectEl!: HTMLSelectElement;\n\n componentWillLoad() {\n this.setInitialPersona();\n }\n\n componentDidLoad() {\n this.moveOptionsToSelect();\n }\n\n private setInitialPersona() {\n const selected = this.el.querySelector('option[selected]');\n this.activePersona = selected?.textContent?.trim() || '';\n }\n\n private moveOptionsToSelect() {\n const lightDomOptions = Array.from(this.el.querySelectorAll('option'));\n this.options = lightDomOptions;\n lightDomOptions.forEach(option => {\n this.selectEl.appendChild(option);\n });\n }\n\n private handleChange(event: Event) {\n const select = event.target as HTMLSelectElement;\n const selectedOption = select.selectedOptions[0];\n this.activePersona = selectedOption?.textContent?.trim() || '';\n const link = selectedOption?.getAttribute('data-link');\n if (link) {\n window.location.href = link;\n }\n }\n\n private handleButtonClick = () => {\n this.selectEl?.click();\n };\n\n private handleButtonKeyDown = (event: KeyboardEvent) => {\n if (event.key === ' ' || event.key === 'Enter') {\n event.preventDefault();\n this.selectEl?.click();\n }\n };\n\n render() {\n return (\n <Host>\n <div class=\"spw-header-persona\" onClick={this.handleButtonClick} onKeyDown={this.handleButtonKeyDown}>\n <span class=\"spw-header-persona__label\">{this.personaLabel}</span>\n <div class=\"spw-header-persona__active-persona\">\n {this.activePersona} <spw-icon icon=\"fa-chevron-down\"></spw-icon>\n </div>\n <select class=\"spw-header-persona__select\" ref={el => (this.selectEl = el as HTMLSelectElement)} onChange={e => this.handleChange(e)} tabIndex={-1} />\n </div>\n </Host>\n );\n }\n}\n"],"names":["h","Host"],"mappings":"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"}
|