@spw-ds/spw-stencil-library 1.10.2 → 1.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cem.json +1207 -160
- package/dist/cjs/{animation-DMuoVGnA.js → animation-tH5DQHbp.js} +7 -2
- package/dist/cjs/index-id_AkABS.js +3187 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/spw-accordion_4.cjs.entry.js +5 -5
- package/dist/cjs/spw-avatar.cjs.entry.js +2 -2
- package/dist/cjs/spw-block-content.cjs.entry.js +3 -3
- package/dist/cjs/spw-box.cjs.entry.js +62 -0
- package/dist/cjs/spw-breadcrumb-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-breadcrumb.cjs.entry.js +2 -2
- package/dist/cjs/spw-button_2.cjs.entry.js +4 -4
- package/dist/cjs/spw-card-content.cjs.entry.js +3 -3
- package/dist/cjs/spw-card-excerpt.cjs.entry.js +2 -2
- package/dist/cjs/spw-card-image.cjs.entry.js +5 -3
- package/dist/cjs/spw-card-subtag-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-card-subtags.cjs.entry.js +2 -2
- package/dist/cjs/spw-card-title.cjs.entry.js +2 -2
- package/dist/cjs/spw-card.cjs.entry.js +3 -3
- package/dist/cjs/spw-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/spw-cookies.cjs.entry.js +1 -1
- package/dist/cjs/spw-custom-select.cjs.entry.js +65 -6
- package/dist/cjs/spw-date-picker.cjs.entry.js +2 -2
- package/dist/cjs/spw-dropdown-container.cjs.entry.js +2 -2
- package/dist/cjs/spw-dropdown-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-dropdown.cjs.entry.js +2 -2
- package/dist/cjs/spw-field-label_7.cjs.entry.js +18 -18
- package/dist/cjs/spw-field-message.cjs.entry.js +2 -2
- package/dist/cjs/spw-file-upload.cjs.entry.js +3 -3
- package/dist/cjs/spw-footer-bottom.cjs.entry.js +3 -3
- package/dist/cjs/spw-footer-content-col.cjs.entry.js +7 -3
- package/dist/cjs/spw-footer-content.cjs.entry.js +2 -2
- package/dist/cjs/spw-footer-link.cjs.entry.js +3 -3
- package/dist/cjs/spw-footer.cjs.entry.js +2 -2
- package/dist/cjs/spw-grid-item.cjs.entry.js +3 -3
- package/dist/cjs/spw-grid.cjs.entry.js +6 -4
- package/dist/cjs/spw-header-lang.cjs.entry.js +2 -2
- package/dist/cjs/spw-header-navigation-dropdown.cjs.entry.js +2 -2
- package/dist/cjs/spw-header-navigation-item.cjs.entry.js +3 -3
- package/dist/cjs/spw-header-navigation.cjs.entry.js +2 -2
- package/dist/cjs/spw-header-persona-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-header-persona.cjs.entry.js +3 -3
- package/dist/cjs/spw-header.cjs.entry.js +16 -3
- package/dist/cjs/spw-hero.cjs.entry.js +21 -5
- package/dist/cjs/spw-illustration.cjs.entry.js +1 -1
- package/dist/cjs/spw-input-slider.cjs.entry.js +2 -2
- package/dist/cjs/spw-lightbox-item.cjs.entry.js +55 -0
- package/dist/cjs/spw-lightbox.cjs.entry.js +249 -0
- package/dist/cjs/spw-list-description.cjs.entry.js +2 -2
- package/dist/cjs/spw-list-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-list-title.cjs.entry.js +2 -2
- package/dist/cjs/spw-list.cjs.entry.js +2 -2
- package/dist/cjs/spw-message.cjs.entry.js +1 -1
- package/dist/cjs/spw-modal.cjs.entry.js +5 -5
- package/dist/cjs/spw-mosaic-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-mosaic.cjs.entry.js +2 -2
- package/dist/cjs/spw-pagination.cjs.entry.js +7 -7
- package/dist/cjs/spw-radio.cjs.entry.js +2 -2
- package/dist/cjs/spw-scrolltop.cjs.entry.js +2 -2
- package/dist/cjs/spw-search-field.cjs.entry.js +12 -6
- package/dist/cjs/spw-select.cjs.entry.js +2 -2
- package/dist/cjs/spw-sidebar-navigation-dropdown.cjs.entry.js +2 -2
- package/dist/cjs/spw-sidebar-navigation-item.cjs.entry.js +4 -4
- package/dist/cjs/spw-sidebar-navigation-separator.cjs.entry.js +2 -2
- package/dist/cjs/spw-sidebar.cjs.entry.js +2 -2
- package/dist/cjs/spw-skeleton.cjs.entry.js +2 -2
- package/dist/cjs/spw-slider-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-slider.cjs.entry.js +26 -9
- package/dist/cjs/spw-socials.cjs.entry.js +2 -2
- package/dist/cjs/spw-stencil-library.cjs.js +2 -2
- package/dist/cjs/spw-table-body.cjs.entry.js +2 -2
- package/dist/cjs/spw-table-cell.cjs.entry.js +2 -2
- package/dist/cjs/spw-table-container.cjs.entry.js +2 -2
- package/dist/cjs/spw-table-footer.cjs.entry.js +2 -2
- package/dist/cjs/spw-table-head.cjs.entry.js +2 -2
- package/dist/cjs/spw-table-header.cjs.entry.js +3 -3
- package/dist/cjs/spw-table-row.cjs.entry.js +2 -2
- package/dist/cjs/spw-table-sidebar.cjs.entry.js +2 -2
- package/dist/cjs/spw-table.cjs.entry.js +3 -3
- package/dist/cjs/spw-tabs-content.cjs.entry.js +1 -1
- package/dist/cjs/spw-tabs-navigation-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-tabs-navigation.cjs.entry.js +3 -3
- package/dist/cjs/spw-tabs.cjs.entry.js +2 -2
- package/dist/cjs/spw-tag.cjs.entry.js +2 -2
- package/dist/cjs/spw-text-field.cjs.entry.js +69 -10
- package/dist/cjs/spw-textarea.cjs.entry.js +2 -2
- package/dist/cjs/spw-tile-description.cjs.entry.js +2 -2
- package/dist/cjs/spw-tile-title.cjs.entry.js +2 -2
- package/dist/cjs/spw-tile.cjs.entry.js +2 -2
- package/dist/cjs/spw-timeline-item.cjs.entry.js +3 -3
- package/dist/cjs/spw-timeline.cjs.entry.js +3 -3
- package/dist/cjs/spw-toast-controller.cjs.entry.js +2 -2
- package/dist/cjs/spw-toast.cjs.entry.js +2 -2
- package/dist/cjs/spw-toc-container.cjs.entry.js +2 -2
- package/dist/cjs/spw-toc-navigation.cjs.entry.js +1 -1
- package/dist/cjs/spw-toc.cjs.entry.js +2 -2
- package/dist/cjs/spw-topbar.cjs.entry.js +2 -2
- package/dist/cjs/spw-wizard-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-wizard.cjs.entry.js +2 -2
- package/dist/collection/collection-manifest.json +3 -0
- package/dist/collection/components/spw-accordion/spw-accordion-content/spw-accordion-content.js +1 -1
- package/dist/collection/components/spw-accordion/spw-accordion-item/spw-accordion-item.js +1 -1
- package/dist/collection/components/spw-accordion/spw-accordion-title/spw-accordion-title.js +1 -1
- package/dist/collection/components/spw-accordion/spw-accordion.js +1 -1
- package/dist/collection/components/spw-avatar/spw-avatar.js +1 -1
- package/dist/collection/components/spw-block-content/spw-block-content.css +6 -6
- package/dist/collection/components/spw-block-content/spw-block-content.js +1 -1
- package/dist/collection/components/spw-box/spw-box.css +507 -0
- package/dist/collection/components/spw-box/spw-box.js +213 -0
- package/dist/collection/components/spw-breadcrumb/spw-breadcrumb-item/spw-breadcrumb-item.js +1 -1
- package/dist/collection/components/spw-breadcrumb/spw-breadcrumb.js +1 -1
- package/dist/collection/components/spw-button/spw-button.css +2 -2
- package/dist/collection/components/spw-button/spw-button.js +2 -2
- package/dist/collection/components/spw-card/spw-card-content/spw-card-content.css +15 -0
- package/dist/collection/components/spw-card/spw-card-content/spw-card-content.js +1 -1
- package/dist/collection/components/spw-card/spw-card-excerpt/spw-card-excerpt.js +1 -1
- package/dist/collection/components/spw-card/spw-card-image/spw-card-image.css +17 -0
- package/dist/collection/components/spw-card/spw-card-image/spw-card-image.js +25 -1
- package/dist/collection/components/spw-card/spw-card-subtag-item/spw-card-subtag-item.js +1 -1
- package/dist/collection/components/spw-card/spw-card-subtags/spw-card-subtags.js +1 -1
- package/dist/collection/components/spw-card/spw-card-title/spw-card-title.js +1 -1
- package/dist/collection/components/spw-card/spw-card.css +12 -0
- package/dist/collection/components/spw-card/spw-card.js +3 -3
- package/dist/collection/components/spw-checkbox/spw-checkbox.js +1 -1
- package/dist/collection/components/spw-custom-select/spw-custom-select.css +61 -3
- package/dist/collection/components/spw-custom-select/spw-custom-select.js +124 -5
- package/dist/collection/components/spw-date-picker/spw-date-picker.js +2 -2
- package/dist/collection/components/spw-dropdown/spw-dropdown-container/spw-dropdown-container.js +1 -1
- package/dist/collection/components/spw-dropdown/spw-dropdown-item/spw-dropdown-item.js +1 -1
- package/dist/collection/components/spw-dropdown/spw-dropdown.js +1 -1
- package/dist/collection/components/spw-field-label/spw-field-label.js +1 -1
- package/dist/collection/components/spw-field-message/spw-field-message.js +1 -1
- package/dist/collection/components/spw-file-upload/spw-file-upload.js +2 -2
- package/dist/collection/components/spw-footer/spw-footer-bottom/spw-footer-bottom.css +3 -1
- package/dist/collection/components/spw-footer/spw-footer-bottom/spw-footer-bottom.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer-content/spw-footer-content.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer-content-col/spw-footer-content-col.css +35 -0
- package/dist/collection/components/spw-footer/spw-footer-content-col/spw-footer-content-col.js +12 -1
- package/dist/collection/components/spw-footer/spw-footer-link/spw-footer-link.css +3 -1
- package/dist/collection/components/spw-footer/spw-footer-link/spw-footer-link.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer.js +1 -1
- package/dist/collection/components/spw-grid/spw-grid-item/spw-grid-item.js +2 -2
- package/dist/collection/components/spw-grid/spw-grid.css +18 -1
- package/dist/collection/components/spw-grid/spw-grid.js +24 -2
- package/dist/collection/components/spw-group/spw-group.js +1 -1
- package/dist/collection/components/spw-header/spw-header-lang/spw-header-lang.js +1 -1
- package/dist/collection/components/spw-header/spw-header-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.css +10 -0
- 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.css +19 -4
- package/dist/collection/components/spw-header/spw-header-persona/spw-header-persona.js +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 +5 -0
- package/dist/collection/components/spw-header/spw-header.js +34 -1
- package/dist/collection/components/spw-hero/spw-hero.css +37 -0
- package/dist/collection/components/spw-hero/spw-hero.js +97 -5
- package/dist/collection/components/spw-icon/spw-icon.js +1 -1
- package/dist/collection/components/spw-input-slider/spw-input-slider.js +1 -1
- package/dist/collection/components/spw-lightbox/spw-lightbox-item/spw-lightbox-item.css +462 -0
- package/dist/collection/components/spw-lightbox/spw-lightbox-item/spw-lightbox-item.js +314 -0
- package/dist/collection/components/spw-lightbox/spw-lightbox.css +614 -0
- package/dist/collection/components/spw-lightbox/spw-lightbox.js +525 -0
- 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.js +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 +1 -1
- package/dist/collection/components/spw-loading/spw-loading.js +1 -1
- package/dist/collection/components/spw-modal/spw-modal.js +3 -3
- 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-scrolltop/spw-scrolltop.js +1 -1
- package/dist/collection/components/spw-search-field/spw-search-field.css +6 -3
- package/dist/collection/components/spw-search-field/spw-search-field.js +51 -5
- package/dist/collection/components/spw-select/spw-select.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-slider/spw-slider-item/spw-slider-item.js +1 -1
- package/dist/collection/components/spw-slider/spw-slider.css +15 -0
- package/dist/collection/components/spw-slider/spw-slider.js +89 -7
- 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-container/spw-table-container.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-table/spw-table-sidebar/spw-table-sidebar.js +1 -1
- package/dist/collection/components/spw-table/spw-table.js +2 -2
- package/dist/collection/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.css +4 -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.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 +88 -10
- package/dist/collection/components/spw-textarea/spw-textarea.js +2 -2
- 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.js +1 -1
- package/dist/collection/components/spw-tile/spw-tile.js +1 -1
- package/dist/collection/components/spw-timeline/spw-timeline-item/spw-timeline-item.js +2 -2
- package/dist/collection/components/spw-timeline/spw-timeline.js +2 -2
- package/dist/collection/components/spw-toast/spw-toast-controller/spw-toast-controller.js +1 -1
- package/dist/collection/components/spw-toc/spw-toc-container/spw-toc-container.js +1 -1
- package/dist/collection/components/spw-toc/spw-toc.js +1 -1
- package/dist/collection/components/spw-tooltip/spw-tooltip.js +1 -1
- package/dist/collection/components/spw-topbar/spw-topbar.js +1 -1
- package/dist/collection/components/spw-wizard/spw-wizard-item/spw-wizard-item.js +1 -1
- package/dist/collection/components/spw-wizard/spw-wizard.js +1 -1
- package/dist/collection/stories/components/spw-box/spw-box.stories.js +312 -0
- package/dist/collection/stories/components/spw-custom-select/spw-custom-select.stories.js +23 -2
- package/dist/collection/stories/organisms/spw-card/spw-card.stories.js +58 -1
- package/dist/collection/stories/organisms/spw-hero/spw-hero.stories.js +61 -0
- package/dist/collection/stories/organisms/spw-lightbox/spw-lightbox.stories.js +623 -0
- package/dist/collection/stories/organisms/spw-slider/spw-slider.stories.js +142 -6
- package/dist/collection/stories/organisms/spw-toc/spw-toc.stories.js +40 -34
- package/dist/collection/utils/animation.js +7 -2
- package/dist/components/index.js +1 -1
- package/dist/components/{p-DwCnnHgn.js → p-26TmvHEb.js} +1 -1
- package/dist/components/{p-CMLl0RMI.js → p-B3wy-a7G.js} +1 -1
- package/dist/components/{p-D6LWZKvR.js → p-BAbzUkqV.js} +1 -1
- package/dist/components/{p-LSa_rZXb.js → p-BNsbxGcj.js} +1 -1
- package/dist/components/p-BRFNx2DL.js +1 -0
- package/dist/components/{p-BhdoYDTm.js → p-BRlLi9Ar.js} +1 -1
- package/dist/components/{p-DbSA5Qg5.js → p-Bu_U3_Ez.js} +1 -1
- package/dist/components/{p-BjLZzV7o.js → p-C8Vf9QlU.js} +1 -1
- package/dist/components/{p-CDlTW4jP.js → p-CLCgZYzK.js} +1 -1
- package/dist/components/p-CwQbV4MW.js +1 -0
- package/dist/components/{p-BxRsJDtg.js → p-DBIs7bbJ.js} +1 -1
- package/dist/components/{p-JuqrTYPp.js → p-DdZeGXq7.js} +1 -1
- package/dist/components/{p-DJvzArBD.js → p-Dv3JuDht.js} +1 -1
- package/dist/components/p-FB4itEEQ.js +1 -0
- package/dist/components/{p-BlIs4luv.js → p-HzgF73Oa.js} +1 -1
- package/dist/components/{p-DiO72wMf.js → p-oVOlDrOp.js} +1 -1
- package/dist/components/{p-D8N138f1.js → p-w411zfAm.js} +1 -1
- package/dist/components/spw-accordion-content.js +1 -1
- package/dist/components/spw-accordion-item.js +1 -1
- package/dist/components/spw-accordion-title.js +1 -1
- package/dist/components/spw-accordion.js +1 -1
- package/dist/components/spw-avatar.js +1 -1
- package/dist/components/spw-block-content.js +1 -1
- package/dist/components/spw-box.d.ts +11 -0
- package/dist/components/spw-box.js +1 -0
- package/dist/components/spw-breadcrumb-item.js +1 -1
- package/dist/components/spw-breadcrumb.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-excerpt.js +1 -1
- package/dist/components/spw-card-image.js +1 -1
- package/dist/components/spw-card-subtag-item.js +1 -1
- package/dist/components/spw-card-subtags.js +1 -1
- package/dist/components/spw-card-title.js +1 -1
- package/dist/components/spw-card.js +1 -1
- package/dist/components/spw-checkbox.js +1 -1
- package/dist/components/spw-cookies.js +1 -1
- package/dist/components/spw-custom-select.js +1 -1
- package/dist/components/spw-date-picker.js +1 -1
- package/dist/components/spw-dropdown-container.js +1 -1
- package/dist/components/spw-dropdown-item.js +1 -1
- package/dist/components/spw-dropdown.js +1 -1
- package/dist/components/spw-field-label.js +1 -1
- package/dist/components/spw-field-message.js +1 -1
- package/dist/components/spw-file-upload.js +1 -1
- package/dist/components/spw-footer-bottom.js +1 -1
- package/dist/components/spw-footer-content-col.js +1 -1
- package/dist/components/spw-footer-content.js +1 -1
- package/dist/components/spw-footer-link.js +1 -1
- package/dist/components/spw-footer.js +1 -1
- package/dist/components/spw-grid-item.js +1 -1
- package/dist/components/spw-grid.js +1 -1
- package/dist/components/spw-group.js +1 -1
- package/dist/components/spw-header-lang.js +1 -1
- 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 +1 -1
- package/dist/components/spw-header.js +1 -1
- package/dist/components/spw-hero.js +1 -1
- package/dist/components/spw-icon.js +1 -1
- package/dist/components/spw-input-slider.js +1 -1
- package/dist/components/spw-lightbox-item.d.ts +11 -0
- package/dist/components/spw-lightbox-item.js +1 -0
- package/dist/components/spw-lightbox.d.ts +11 -0
- package/dist/components/spw-lightbox.js +1 -0
- package/dist/components/spw-link.js +1 -1
- package/dist/components/spw-list-description.js +1 -1
- package/dist/components/spw-list-item.js +1 -1
- package/dist/components/spw-list-title.js +1 -1
- package/dist/components/spw-list.js +1 -1
- package/dist/components/spw-loading.js +1 -1
- package/dist/components/spw-message.js +1 -1
- package/dist/components/spw-modal.js +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-scrolltop.js +1 -1
- package/dist/components/spw-search-field.js +1 -1
- package/dist/components/spw-select.js +1 -1
- 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 +1 -1
- package/dist/components/spw-sidebar-navigation-separator.js +1 -1
- package/dist/components/spw-sidebar.js +1 -1
- package/dist/components/spw-skeleton.js +1 -1
- package/dist/components/spw-slider-item.js +1 -1
- package/dist/components/spw-slider.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-container.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 +1 -1
- package/dist/components/spw-table-row.js +1 -1
- package/dist/components/spw-table-sidebar.js +1 -1
- package/dist/components/spw-table.js +1 -1
- package/dist/components/spw-tabs-navigation-item.js +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 +1 -1
- package/dist/components/spw-tile.js +1 -1
- package/dist/components/spw-timeline-item.js +1 -1
- package/dist/components/spw-timeline.js +1 -1
- package/dist/components/spw-toast-controller.js +1 -1
- package/dist/components/spw-toast.js +1 -1
- package/dist/components/spw-toc-container.js +1 -1
- package/dist/components/spw-toc.js +1 -1
- package/dist/components/spw-tooltip.js +1 -1
- package/dist/components/spw-topbar.js +1 -1
- package/dist/components/spw-wizard-item.js +1 -1
- package/dist/components/spw-wizard.js +1 -1
- package/dist/components_json.json +1675 -121
- package/dist/esm/{animation-BO7xVlWo.js → animation-BRFNx2DL.js} +7 -2
- package/dist/esm/index-BvJ4Kko5.js +3158 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/spw-accordion_4.entry.js +5 -5
- package/dist/esm/spw-avatar.entry.js +2 -2
- package/dist/esm/spw-block-content.entry.js +3 -3
- package/dist/esm/spw-box.entry.js +60 -0
- package/dist/esm/spw-breadcrumb-item.entry.js +2 -2
- package/dist/esm/spw-breadcrumb.entry.js +2 -2
- package/dist/esm/spw-button_2.entry.js +4 -4
- package/dist/esm/spw-card-content.entry.js +3 -3
- package/dist/esm/spw-card-excerpt.entry.js +2 -2
- package/dist/esm/spw-card-image.entry.js +5 -3
- package/dist/esm/spw-card-subtag-item.entry.js +2 -2
- package/dist/esm/spw-card-subtags.entry.js +2 -2
- package/dist/esm/spw-card-title.entry.js +2 -2
- package/dist/esm/spw-card.entry.js +3 -3
- package/dist/esm/spw-checkbox.entry.js +2 -2
- package/dist/esm/spw-cookies.entry.js +1 -1
- package/dist/esm/spw-custom-select.entry.js +65 -6
- package/dist/esm/spw-date-picker.entry.js +2 -2
- package/dist/esm/spw-dropdown-container.entry.js +2 -2
- package/dist/esm/spw-dropdown-item.entry.js +2 -2
- package/dist/esm/spw-dropdown.entry.js +2 -2
- package/dist/esm/spw-field-label_7.entry.js +18 -18
- package/dist/esm/spw-field-message.entry.js +2 -2
- package/dist/esm/spw-file-upload.entry.js +3 -3
- package/dist/esm/spw-footer-bottom.entry.js +3 -3
- package/dist/esm/spw-footer-content-col.entry.js +7 -3
- package/dist/esm/spw-footer-content.entry.js +2 -2
- package/dist/esm/spw-footer-link.entry.js +3 -3
- package/dist/esm/spw-footer.entry.js +2 -2
- package/dist/esm/spw-grid-item.entry.js +3 -3
- package/dist/esm/spw-grid.entry.js +6 -4
- package/dist/esm/spw-header-lang.entry.js +2 -2
- package/dist/esm/spw-header-navigation-dropdown.entry.js +2 -2
- package/dist/esm/spw-header-navigation-item.entry.js +3 -3
- package/dist/esm/spw-header-navigation.entry.js +2 -2
- package/dist/esm/spw-header-persona-item.entry.js +2 -2
- package/dist/esm/spw-header-persona.entry.js +3 -3
- package/dist/esm/spw-header.entry.js +16 -3
- package/dist/esm/spw-hero.entry.js +21 -5
- package/dist/esm/spw-illustration.entry.js +1 -1
- package/dist/esm/spw-input-slider.entry.js +2 -2
- package/dist/esm/spw-lightbox-item.entry.js +53 -0
- package/dist/esm/spw-lightbox.entry.js +247 -0
- package/dist/esm/spw-list-description.entry.js +2 -2
- package/dist/esm/spw-list-item.entry.js +2 -2
- package/dist/esm/spw-list-title.entry.js +2 -2
- package/dist/esm/spw-list.entry.js +2 -2
- package/dist/esm/spw-message.entry.js +1 -1
- package/dist/esm/spw-modal.entry.js +5 -5
- package/dist/esm/spw-mosaic-item.entry.js +2 -2
- package/dist/esm/spw-mosaic.entry.js +2 -2
- package/dist/esm/spw-pagination.entry.js +7 -7
- package/dist/esm/spw-radio.entry.js +2 -2
- package/dist/esm/spw-scrolltop.entry.js +2 -2
- package/dist/esm/spw-search-field.entry.js +12 -6
- package/dist/esm/spw-select.entry.js +2 -2
- package/dist/esm/spw-sidebar-navigation-dropdown.entry.js +2 -2
- package/dist/esm/spw-sidebar-navigation-item.entry.js +4 -4
- package/dist/esm/spw-sidebar-navigation-separator.entry.js +2 -2
- package/dist/esm/spw-sidebar.entry.js +2 -2
- package/dist/esm/spw-skeleton.entry.js +2 -2
- package/dist/esm/spw-slider-item.entry.js +2 -2
- package/dist/esm/spw-slider.entry.js +26 -9
- package/dist/esm/spw-socials.entry.js +2 -2
- package/dist/esm/spw-stencil-library.js +3 -3
- package/dist/esm/spw-table-body.entry.js +2 -2
- package/dist/esm/spw-table-cell.entry.js +2 -2
- package/dist/esm/spw-table-container.entry.js +2 -2
- package/dist/esm/spw-table-footer.entry.js +2 -2
- package/dist/esm/spw-table-head.entry.js +2 -2
- package/dist/esm/spw-table-header.entry.js +3 -3
- package/dist/esm/spw-table-row.entry.js +2 -2
- package/dist/esm/spw-table-sidebar.entry.js +2 -2
- package/dist/esm/spw-table.entry.js +3 -3
- package/dist/esm/spw-tabs-content.entry.js +1 -1
- package/dist/esm/spw-tabs-navigation-item.entry.js +2 -2
- package/dist/esm/spw-tabs-navigation.entry.js +3 -3
- package/dist/esm/spw-tabs.entry.js +2 -2
- package/dist/esm/spw-tag.entry.js +2 -2
- package/dist/esm/spw-text-field.entry.js +69 -10
- package/dist/esm/spw-textarea.entry.js +2 -2
- package/dist/esm/spw-tile-description.entry.js +2 -2
- package/dist/esm/spw-tile-title.entry.js +2 -2
- package/dist/esm/spw-tile.entry.js +2 -2
- package/dist/esm/spw-timeline-item.entry.js +3 -3
- package/dist/esm/spw-timeline.entry.js +3 -3
- package/dist/esm/spw-toast-controller.entry.js +2 -2
- package/dist/esm/spw-toast.entry.js +2 -2
- package/dist/esm/spw-toc-container.entry.js +2 -2
- package/dist/esm/spw-toc-navigation.entry.js +1 -1
- package/dist/esm/spw-toc.entry.js +2 -2
- package/dist/esm/spw-topbar.entry.js +2 -2
- package/dist/esm/spw-wizard-item.entry.js +2 -2
- package/dist/esm/spw-wizard.entry.js +2 -2
- package/dist/spw-stencil-library/{p-3049cc60.entry.js → p-02de5468.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-72d6b4cb.entry.js → p-049c5159.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-eb71cf55.entry.js → p-05819904.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-4aa5759c.entry.js → p-0a9288b5.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-c195597b.entry.js → p-0b4fd80e.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-d21b0833.entry.js → p-0cf5aadc.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-a4336c0c.entry.js → p-153a026f.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-b460afdc.entry.js → p-1875874e.entry.js} +1 -1
- package/dist/spw-stencil-library/p-19c01c71.entry.js +1 -0
- package/dist/spw-stencil-library/{p-92b69e67.entry.js → p-1fa367e7.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-eba031ea.entry.js → p-2298be7a.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-06e9e52e.entry.js → p-242e2de6.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-a574c1f7.entry.js → p-28a5d0bf.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-1e21eb78.entry.js → p-28e49d02.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-2ef62013.entry.js → p-2b182fc8.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-935f19f8.entry.js → p-2dda4dfe.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-77c9e985.entry.js → p-34cc819b.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-46256b79.entry.js → p-35b865cf.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-8cfe9a5c.entry.js → p-38a53864.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-fc3463d2.entry.js → p-3ccb9c03.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-f413fe3a.entry.js → p-3e7b44af.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-8fc73ffb.entry.js → p-450306c5.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-937eeeeb.entry.js → p-47478c37.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-5b6d907b.entry.js → p-474cbbca.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-11039299.entry.js → p-47a23440.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-584f8ba5.entry.js → p-48b4e11f.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-9eeeb874.entry.js → p-4c59112a.entry.js} +1 -1
- package/dist/spw-stencil-library/p-4dd215d6.entry.js +1 -0
- package/dist/spw-stencil-library/{p-12878c95.entry.js → p-4eda33d4.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-12e209dc.entry.js → p-50ccad8a.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-5c58ca89.entry.js → p-52731c22.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-536082bb.entry.js → p-58393ab6.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-72e7b957.entry.js → p-59925808.entry.js} +1 -1
- package/dist/spw-stencil-library/p-61b5224c.entry.js +1 -0
- package/dist/spw-stencil-library/{p-017e66d3.entry.js → p-661d7e73.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-231fbcc9.entry.js → p-661fcef1.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-9bcade02.entry.js → p-6676fc1b.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-04208e52.entry.js → p-66da29be.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-862ebaf0.entry.js → p-6cf39777.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-989fa86f.entry.js → p-7107ed7f.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-dd9a9e15.entry.js → p-7177a4f7.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-ed5c4229.entry.js → p-732b2f4c.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-1c25df2f.entry.js → p-7ccef87e.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-9f3abef5.entry.js → p-7db10e21.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-e88d700b.entry.js → p-7dd7816b.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-3ad3b8d1.entry.js → p-8063aa58.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-68c8ab55.entry.js → p-822b0a4b.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-d8967e7d.entry.js → p-82aa983b.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-862856bf.entry.js → p-85e3a088.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-899045e0.entry.js → p-862fdbdb.entry.js} +1 -1
- package/dist/spw-stencil-library/p-873c504b.entry.js +1 -0
- package/dist/spw-stencil-library/p-8a65a845.entry.js +1 -0
- package/dist/spw-stencil-library/{p-461f9d48.entry.js → p-8c750816.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-d9b44e31.entry.js → p-95710898.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-c84743b7.entry.js → p-97c81dd9.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-218ae66c.entry.js → p-9eef1265.entry.js} +1 -1
- package/dist/spw-stencil-library/p-BRFNx2DL.js +1 -0
- package/dist/spw-stencil-library/p-BvJ4Kko5.js +2 -0
- package/dist/spw-stencil-library/p-a3176800.entry.js +1 -0
- package/dist/spw-stencil-library/{p-21ac7e70.entry.js → p-a3c881c8.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-6ac1cfdb.entry.js → p-a3ee7134.entry.js} +1 -1
- package/dist/spw-stencil-library/p-a6250c87.entry.js +1 -0
- package/dist/spw-stencil-library/{p-ef377fc3.entry.js → p-a6fb9fd7.entry.js} +1 -1
- package/dist/spw-stencil-library/p-aba5a50e.entry.js +1 -0
- package/dist/spw-stencil-library/p-ada5d5c1.entry.js +1 -0
- package/dist/spw-stencil-library/{p-fb0820ba.entry.js → p-ae28e3c0.entry.js} +1 -1
- package/dist/spw-stencil-library/p-b02ea898.entry.js +1 -0
- package/dist/spw-stencil-library/{p-bef41011.entry.js → p-b04edce9.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-335b9ec2.entry.js → p-b106fb83.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-9911694d.entry.js → p-bc45cc77.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-6b8ad6ec.entry.js → p-c319b12a.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-ce6499ac.entry.js → p-c3fcebbb.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-fd8ae317.entry.js → p-c44b2b7a.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-bc6051f9.entry.js → p-c8b2eba5.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-428c33de.entry.js → p-cf452afb.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-326f87ff.entry.js → p-d9d9f6e6.entry.js} +1 -1
- package/dist/spw-stencil-library/p-da114b29.entry.js +1 -0
- package/dist/spw-stencil-library/p-de825095.entry.js +1 -0
- package/dist/spw-stencil-library/{p-a77de6f3.entry.js → p-e0ce83c2.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-c9cb2441.entry.js → p-e838ba61.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-acd69768.entry.js → p-ecf926b0.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-1a85816b.entry.js → p-eeacd7b2.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-bb50f1c6.entry.js → p-f194ab4b.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-e53ff9dd.entry.js → p-f1baf303.entry.js} +1 -1
- package/dist/spw-stencil-library/p-f1ecd17e.entry.js +1 -0
- package/dist/spw-stencil-library/{p-b82b3af6.entry.js → p-f20b2da0.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-7d0fb1fc.entry.js → p-f2b58e55.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-53b60fa8.entry.js → p-f5d2d168.entry.js} +1 -1
- package/dist/spw-stencil-library/p-f69182ff.entry.js +1 -0
- package/dist/spw-stencil-library/{p-f5b3255d.entry.js → p-f898a06d.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-6c67f42e.entry.js → p-fab8c92f.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-33b37c7f.entry.js → p-fc96be97.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-3694301c.entry.js → p-fd564976.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-39cae775.entry.js → p-ff289cc8.entry.js} +1 -1
- package/dist/spw-stencil-library/{p-c7f64bb6.entry.js → p-ffe7898a.entry.js} +1 -1
- package/dist/spw-stencil-library/spw-stencil-library.css +4 -4
- package/dist/spw-stencil-library/spw-stencil-library.esm.js +1 -1
- package/dist/stats.json +12396 -9103
- package/dist/types/components/spw-box/spw-box.d.ts +25 -0
- package/dist/types/components/spw-card/spw-card-image/spw-card-image.d.ts +2 -0
- package/dist/types/components/spw-card/spw-card.d.ts +1 -1
- package/dist/types/components/spw-custom-select/spw-custom-select.d.ts +12 -1
- package/dist/types/components/spw-date-picker/spw-date-picker.d.ts +1 -1
- package/dist/types/components/spw-footer/spw-footer-content-col/spw-footer-content-col.d.ts +2 -0
- package/dist/types/components/spw-grid/spw-grid.d.ts +2 -0
- package/dist/types/components/spw-header/spw-header.d.ts +2 -0
- package/dist/types/components/spw-hero/spw-hero.d.ts +9 -1
- package/dist/types/components/spw-lightbox/spw-lightbox-item/spw-lightbox-item.d.ts +39 -0
- package/dist/types/components/spw-lightbox/spw-lightbox.d.ts +72 -0
- package/dist/types/components/spw-search-field/spw-search-field.d.ts +7 -1
- package/dist/types/components/spw-select/spw-select.d.ts +1 -1
- package/dist/types/components/spw-slider/spw-slider.d.ts +17 -0
- package/dist/types/components/spw-text-field/spw-text-field.d.ts +6 -1
- package/dist/types/components/spw-textarea/spw-textarea.d.ts +1 -1
- package/dist/types/components.d.ts +554 -18
- package/dist/types/stories/components/spw-box/spw-box.stories.d.ts +10 -0
- package/dist/types/stories/components/spw-custom-select/spw-custom-select.stories.d.ts +1 -0
- package/dist/types/stories/organisms/spw-card/spw-card.stories.d.ts +2 -1
- package/dist/types/stories/organisms/spw-hero/spw-hero.stories.d.ts +3 -0
- package/dist/types/stories/organisms/spw-lightbox/spw-lightbox.stories.d.ts +16 -0
- package/dist/types/stories/organisms/spw-slider/spw-slider.stories.d.ts +8 -1
- package/hydrate/index.js +798 -188
- package/hydrate/index.mjs +798 -188
- package/package.json +1 -1
- package/dist/cjs/index-CX9is0m-.js +0 -3175
- package/dist/components/p-BO7xVlWo.js +0 -1
- package/dist/components/p-CANbQKSH.js +0 -1
- package/dist/components/p-D4YZDvw0.js +0 -1
- package/dist/components_vscode.json +0 -4824
- package/dist/esm/index-Dk6w7kAO.js +0 -3146
- package/dist/spw-stencil-library/p-17891524.entry.js +0 -1
- package/dist/spw-stencil-library/p-438fedef.entry.js +0 -1
- package/dist/spw-stencil-library/p-5779ce33.entry.js +0 -1
- package/dist/spw-stencil-library/p-9397da21.entry.js +0 -1
- package/dist/spw-stencil-library/p-9e73b259.entry.js +0 -1
- package/dist/spw-stencil-library/p-BO7xVlWo.js +0 -1
- package/dist/spw-stencil-library/p-Dk6w7kAO.js +0 -2
- package/dist/spw-stencil-library/p-b4391972.entry.js +0 -1
- package/dist/spw-stencil-library/p-c452d5b0.entry.js +0 -1
- package/dist/spw-stencil-library/p-c8800fc9.entry.js +0 -1
- package/dist/spw-stencil-library/p-ce6317dd.entry.js +0 -1
- package/dist/spw-stencil-library/p-dd4fe0fb.entry.js +0 -1
- package/dist/spw-stencil-library/p-e1b7565b.entry.js +0 -1
|
@@ -0,0 +1,312 @@
|
|
|
1
|
+
let componentsData;
|
|
2
|
+
try {
|
|
3
|
+
componentsData = require('../../../../dist/components_json.json');
|
|
4
|
+
}
|
|
5
|
+
catch (error) {
|
|
6
|
+
console.warn('components_json.json non trouvé. Utilisation de valeurs par défaut.');
|
|
7
|
+
componentsData = {};
|
|
8
|
+
}
|
|
9
|
+
import { withComponentControls, toKebabCase } from "../../../utils/utils";
|
|
10
|
+
const elementTag = 'spw-box';
|
|
11
|
+
const argTypes = withComponentControls(componentsData, { tag: elementTag });
|
|
12
|
+
const meta = {
|
|
13
|
+
title: 'Composants/Box',
|
|
14
|
+
component: elementTag,
|
|
15
|
+
argTypes,
|
|
16
|
+
tags: ['autodocs'],
|
|
17
|
+
parameters: {
|
|
18
|
+
docs: {
|
|
19
|
+
description: {
|
|
20
|
+
component: `
|
|
21
|
+
<strong class="mr-2">Statut du composant :</strong> <spw-tag size="small" variant="green">Prêt</spw-tag>
|
|
22
|
+
|
|
23
|
+
La Box est un conteneur générique servant de structure d'accueil pour différents types de contenus. Elle permet de cadrer visuellement une information, de la détacher du reste de la page et de faciliter la lecture, sans imposer de contenu ou de hiérarchie prédéfinie.
|
|
24
|
+
|
|
25
|
+
## Styles
|
|
26
|
+
|
|
27
|
+
- **Avec fond** : fond blanc, coins arrondis et ombre légère (has-radius + has-shadow + padding). Détache clairement le contenu du reste de la page et crée un point de focalisation visuel.
|
|
28
|
+
- **Sans fond** : sans fond, sans ombre, sans bord arrondi, sans padding. S'intègre directement dans le flux de la page. À utiliser quand le cadre visuel n'est pas nécessaire mais qu'une structuration logique reste utile.
|
|
29
|
+
|
|
30
|
+
## Fonctionnalités
|
|
31
|
+
|
|
32
|
+
- Padding configurable (none, small, medium, large)
|
|
33
|
+
- Ombre portée et border-radius optionnels
|
|
34
|
+
- Position sticky à partir du breakpoint lg (1024px)
|
|
35
|
+
- Mode collapsible avec animation et breakpoint configurable (sm, md, lg, xl, xxl, always)
|
|
36
|
+
- Slot header pour le titre, toujours visible même en mode collapsible
|
|
37
|
+
- Icône chevron animée au collapse/expand
|
|
38
|
+
|
|
39
|
+
[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/225c31-box)
|
|
40
|
+
`,
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
|
+
export default meta;
|
|
46
|
+
const Template = args => {
|
|
47
|
+
const element = document.createElement(elementTag);
|
|
48
|
+
const controls = withComponentControls(componentsData, { tag: elementTag }) || {};
|
|
49
|
+
const masterProps = controls.__realProps || Object.keys(controls);
|
|
50
|
+
Object.entries(args).forEach(([key, val]) => {
|
|
51
|
+
if (masterProps.includes(key)) {
|
|
52
|
+
element.setAttribute(toKebabCase(key), val);
|
|
53
|
+
}
|
|
54
|
+
else if (key.startsWith('on')) {
|
|
55
|
+
element.addEventListener(key.substring(2).toLowerCase(), val);
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
element.innerHTML = /* HTML */ `
|
|
59
|
+
<div slot="header">
|
|
60
|
+
<h2 class="spw-ds-typography-heading-03 mb-0">Titre de la box</h2>
|
|
61
|
+
</div>
|
|
62
|
+
<div class="spw-ds-typography-body-01 mt-3">
|
|
63
|
+
<p class="mb-3">Contenu de la box. Ce composant est un conteneur polyvalent qui peut accueillir n'importe quel type de contenu : texte, listes, composants, etc.</p>
|
|
64
|
+
<spw-group orientation="vertical">
|
|
65
|
+
<spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
|
|
66
|
+
<spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
|
|
67
|
+
</spw-group>
|
|
68
|
+
</div>
|
|
69
|
+
`;
|
|
70
|
+
return element;
|
|
71
|
+
};
|
|
72
|
+
export const Default = Template.bind({});
|
|
73
|
+
Default.args = {
|
|
74
|
+
padding: 'medium',
|
|
75
|
+
hasRadius: true,
|
|
76
|
+
hasShadow: true,
|
|
77
|
+
};
|
|
78
|
+
Default.parameters = {
|
|
79
|
+
docs: {
|
|
80
|
+
description: {
|
|
81
|
+
story: `Box de base avec padding medium, border-radius et ombre portée. Cas d'usage type : widget de sidebar, encart de contenu secondaire.`,
|
|
82
|
+
},
|
|
83
|
+
},
|
|
84
|
+
};
|
|
85
|
+
export const Styles = () => {
|
|
86
|
+
const container = document.createElement('div');
|
|
87
|
+
container.style.cssText = 'display: flex; flex-direction: column; gap: 24px;';
|
|
88
|
+
container.innerHTML = /* HTML */ `
|
|
89
|
+
<spw-box padding="medium" has-radius="true" has-shadow="true">
|
|
90
|
+
<div slot="header">
|
|
91
|
+
<h3 class="spw-ds-typography-heading-04 mb-0">Style avec fond</h3>
|
|
92
|
+
</div>
|
|
93
|
+
<div class="mt-3">
|
|
94
|
+
<p class="spw-ds-typography-body-01 mb-3">
|
|
95
|
+
Fond blanc, coins arrondis et ombre légère. Détache clairement le contenu du reste de la page et crée un point de focalisation visuel.
|
|
96
|
+
</p>
|
|
97
|
+
<spw-group orientation="vertical">
|
|
98
|
+
<spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
|
|
99
|
+
<spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
|
|
100
|
+
</spw-group>
|
|
101
|
+
</div>
|
|
102
|
+
</spw-box>
|
|
103
|
+
<spw-box>
|
|
104
|
+
<div slot="header">
|
|
105
|
+
<h3 class="spw-ds-typography-heading-04 mb-0">Style sans fond</h3>
|
|
106
|
+
</div>
|
|
107
|
+
<div class="mt-3">
|
|
108
|
+
<p class="spw-ds-typography-body-01 mb-3">
|
|
109
|
+
Sans fond, sans ombre, sans border-radius, sans padding. S'intègre directement dans le flux de la page. À utiliser quand le cadre visuel n'est pas nécessaire mais qu'une
|
|
110
|
+
structuration logique reste utile.
|
|
111
|
+
</p>
|
|
112
|
+
<spw-group orientation="vertical">
|
|
113
|
+
<spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
|
|
114
|
+
<spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
|
|
115
|
+
</spw-group>
|
|
116
|
+
</div>
|
|
117
|
+
</spw-box>
|
|
118
|
+
`;
|
|
119
|
+
return container;
|
|
120
|
+
};
|
|
121
|
+
Styles.parameters = {
|
|
122
|
+
docs: {
|
|
123
|
+
description: {
|
|
124
|
+
story: `Les deux styles principaux de la box. Style avec fond (has-radius + has-shadow + padding) : crée un point de focalisation visuel fort. Style sans fond (aucune prop de décoration) : structuration logique discrète, intégrée dans le flux de la page.`,
|
|
125
|
+
},
|
|
126
|
+
},
|
|
127
|
+
};
|
|
128
|
+
export const PaddingVariants = () => {
|
|
129
|
+
const container = document.createElement('div');
|
|
130
|
+
container.style.cssText = 'display: flex; flex-direction: column; gap: 16px;';
|
|
131
|
+
container.innerHTML = /* HTML */ `
|
|
132
|
+
<spw-box has-radius="true" has-shadow="false" padding="none">
|
|
133
|
+
<div slot="header"><h3 class="spw-ds-typography-heading-04 mb-0">Padding none (défaut)</h3></div>
|
|
134
|
+
<p class="spw-ds-typography-body-01">Aucun padding interne. Utile quand le contenu gère lui-même son espacement.</p>
|
|
135
|
+
</spw-box>
|
|
136
|
+
<spw-box has-radius="true" has-shadow="true" padding="small">
|
|
137
|
+
<div slot="header"><h3 class="spw-ds-typography-heading-04 mb-0">Padding small — 16px</h3></div>
|
|
138
|
+
<p class="spw-ds-typography-body-01">Padding compact pour les widgets ou encarts de taille réduite.</p>
|
|
139
|
+
</spw-box>
|
|
140
|
+
<spw-box has-radius="true" has-shadow="true" padding="medium">
|
|
141
|
+
<div slot="header"><h3 class="spw-ds-typography-heading-04 mb-0">Padding medium — 24px</h3></div>
|
|
142
|
+
<p class="spw-ds-typography-body-01">Padding standard, recommandé pour la majorité des cas d'usage.</p>
|
|
143
|
+
</spw-box>
|
|
144
|
+
<spw-box has-radius="true" has-shadow="true" padding="large">
|
|
145
|
+
<div slot="header"><h3 class="spw-ds-typography-heading-04 mb-0">Padding large — 48px</h3></div>
|
|
146
|
+
<p class="spw-ds-typography-body-01">Padding généreux pour des sections mises en avant ou des contenus éditoriaux.</p>
|
|
147
|
+
</spw-box>
|
|
148
|
+
`;
|
|
149
|
+
return container;
|
|
150
|
+
};
|
|
151
|
+
PaddingVariants.parameters = {
|
|
152
|
+
docs: {
|
|
153
|
+
description: {
|
|
154
|
+
story: `Les quatre valeurs de padding disponibles : none, small (16px), medium (24px), large (48px).`,
|
|
155
|
+
},
|
|
156
|
+
},
|
|
157
|
+
};
|
|
158
|
+
export const WithShadowAndRadius = () => {
|
|
159
|
+
const container = document.createElement('div');
|
|
160
|
+
container.style.cssText = 'display: grid; grid-template-columns: 1fr 1fr; gap: 16px;';
|
|
161
|
+
container.innerHTML = /* HTML */ `
|
|
162
|
+
<spw-box padding="medium">
|
|
163
|
+
<div slot="header"><h3 class="spw-ds-typography-heading-04 mb-0">Sans shadow ni radius</h3></div>
|
|
164
|
+
<p class="spw-ds-typography-body-01">Box sans décoration visuelle. Le contenu définit ses propres bordures.</p>
|
|
165
|
+
</spw-box>
|
|
166
|
+
<spw-box padding="medium" has-shadow="true">
|
|
167
|
+
<div slot="header"><h3 class="spw-ds-typography-heading-04 mb-0">Shadow seul</h3></div>
|
|
168
|
+
<p class="spw-ds-typography-body-01">Ombre portée sans border-radius.</p>
|
|
169
|
+
</spw-box>
|
|
170
|
+
<spw-box padding="medium" has-radius="true" has-shadow="true">
|
|
171
|
+
<div slot="header"><h3 class="spw-ds-typography-heading-04 mb-0">Shadow + Radius</h3></div>
|
|
172
|
+
<p class="spw-ds-typography-body-01">Combinaison recommandée pour les widgets de sidebar et encarts.</p>
|
|
173
|
+
</spw-box>
|
|
174
|
+
`;
|
|
175
|
+
return container;
|
|
176
|
+
};
|
|
177
|
+
WithShadowAndRadius.parameters = {
|
|
178
|
+
docs: {
|
|
179
|
+
description: {
|
|
180
|
+
story: `Combinaisons de has-shadow et has-radius. La combinaison shadow + radius est recommandée pour les widgets de sidebar.`,
|
|
181
|
+
},
|
|
182
|
+
},
|
|
183
|
+
};
|
|
184
|
+
export const Collapsible = () => {
|
|
185
|
+
const container = document.createElement('div');
|
|
186
|
+
container.style.cssText = 'display: flex; flex-direction: column; gap: 16px; max-width: 400px;';
|
|
187
|
+
container.innerHTML = /* HTML */ `
|
|
188
|
+
<spw-box padding="medium" has-radius="true" has-shadow="true" is-collapsible="true" collapsible-breakpoint="always">
|
|
189
|
+
<div slot="header">
|
|
190
|
+
<h3 class="spw-ds-typography-heading-04 mb-0">Toujours collapsible</h3>
|
|
191
|
+
</div>
|
|
192
|
+
<div class="mt-3">
|
|
193
|
+
<p class="spw-ds-typography-body-01 mb-3">Ce contenu est collapsible quelle que soit la largeur du viewport.</p>
|
|
194
|
+
<spw-group orientation="vertical">
|
|
195
|
+
<spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
|
|
196
|
+
<spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
|
|
197
|
+
</spw-group>
|
|
198
|
+
</div>
|
|
199
|
+
</spw-box>
|
|
200
|
+
<spw-box padding="medium" has-radius="true" has-shadow="true" is-collapsible="true" collapsible-breakpoint="md">
|
|
201
|
+
<div slot="header">
|
|
202
|
+
<h3 class="spw-ds-typography-heading-04 mb-0">Collapsible sur mobile</h3>
|
|
203
|
+
</div>
|
|
204
|
+
<div class="mt-3">
|
|
205
|
+
<p class="spw-ds-typography-body-01 mb-3">Ce contenu est collapsible uniquement en dessous de 768px. Au-dessus, il est toujours visible.</p>
|
|
206
|
+
<spw-group orientation="vertical">
|
|
207
|
+
<spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
|
|
208
|
+
<spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
|
|
209
|
+
</spw-group>
|
|
210
|
+
</div>
|
|
211
|
+
</spw-box>
|
|
212
|
+
`;
|
|
213
|
+
return container;
|
|
214
|
+
};
|
|
215
|
+
Collapsible.parameters = {
|
|
216
|
+
docs: {
|
|
217
|
+
description: {
|
|
218
|
+
story: `Mode collapsible avec animation chevron. always : collapsible quelle que soit la résolution. md (768px) : collapsible uniquement sur mobile, contenu toujours visible au-dessus.`,
|
|
219
|
+
},
|
|
220
|
+
},
|
|
221
|
+
};
|
|
222
|
+
export const StickyWithContent = () => {
|
|
223
|
+
const container = document.createElement('div');
|
|
224
|
+
container.innerHTML = /* HTML */ `
|
|
225
|
+
<div style="display: flex; gap: 24px; align-items: flex-start;">
|
|
226
|
+
<div style="flex: 1; min-width: 0;">
|
|
227
|
+
<p class="spw-ds-typography-body-01 mb-4">
|
|
228
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut vel imperdiet diam. Aliquam in quam nulla. Duis mi erat, tempus vitae tincidunt in, pretium ut diam. Ut
|
|
229
|
+
malesuada ante et scelerisque eleifend.
|
|
230
|
+
</p>
|
|
231
|
+
<p class="spw-ds-typography-body-01 mb-4">
|
|
232
|
+
Curabitur luctus faucibus pretium. Praesent lacinia laoreet ipsum, at mattis magna cursus non. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut vel imperdiet
|
|
233
|
+
diam.
|
|
234
|
+
</p>
|
|
235
|
+
<p class="spw-ds-typography-body-01 mb-4">
|
|
236
|
+
Aliquam in quam nulla. Duis mi erat, tempus vitae tincidunt in, pretium ut diam. Ut malesuada ante et scelerisque eleifend. Curabitur luctus faucibus pretium.
|
|
237
|
+
</p>
|
|
238
|
+
<p class="spw-ds-typography-body-01 mb-4">Praesent lacinia laoreet ipsum, at mattis magna cursus non. Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
|
|
239
|
+
<p class="spw-ds-typography-body-01 mb-4">
|
|
240
|
+
Ut vel imperdiet diam. Aliquam in quam nulla. Duis mi erat, tempus vitae tincidunt in, pretium ut diam. Ut malesuada ante et scelerisque eleifend. Curabitur luctus
|
|
241
|
+
faucibus pretium.
|
|
242
|
+
</p>
|
|
243
|
+
</div>
|
|
244
|
+
<div style="width: 280px; flex-shrink: 0;">
|
|
245
|
+
<spw-box padding="medium" has-radius="true" has-shadow="true" is-sticky="true" sticky-top="24px">
|
|
246
|
+
<div slot="header">
|
|
247
|
+
<h3 class="spw-ds-typography-heading-04 mb-0">Box sticky</h3>
|
|
248
|
+
</div>
|
|
249
|
+
<div class="mt-3">
|
|
250
|
+
<p class="spw-ds-typography-body-01 mb-3">Cette box reste visible lors du scroll à partir du breakpoint lg.</p>
|
|
251
|
+
<spw-group orientation="vertical">
|
|
252
|
+
<spw-link variant="primary" icon="fa-phone" icon-position="left" href="tel:081654449">081 / 65 44 49</spw-link>
|
|
253
|
+
<spw-link variant="primary" icon="fa-envelope" icon-position="left" href="mailto:mail@mail.be">mail@mail.be</spw-link>
|
|
254
|
+
</spw-group>
|
|
255
|
+
<spw-button is-full-width="true" class="mt-4" variant="primary">Formulaire en ligne</spw-button>
|
|
256
|
+
</div>
|
|
257
|
+
</spw-box>
|
|
258
|
+
</div>
|
|
259
|
+
</div>
|
|
260
|
+
`;
|
|
261
|
+
return container;
|
|
262
|
+
};
|
|
263
|
+
StickyWithContent.parameters = {
|
|
264
|
+
docs: {
|
|
265
|
+
description: {
|
|
266
|
+
story: `Box sticky dans un layout deux colonnes. La box reste ancrée lors du scroll à partir du breakpoint lg (1024px). Cas d'usage : sidebar de contact, sommaire, actions rapides. Utiliser sticky-top pour ajuster la position selon la hauteur du header fixe de la page.`,
|
|
267
|
+
},
|
|
268
|
+
},
|
|
269
|
+
};
|
|
270
|
+
export const SidebarPattern = () => {
|
|
271
|
+
const container = document.createElement('div');
|
|
272
|
+
container.innerHTML = /* HTML */ `
|
|
273
|
+
<div style="display: flex; flex-direction: column; gap: 16px; max-width: 320px;">
|
|
274
|
+
<spw-box padding="medium" has-radius="true" has-shadow="true">
|
|
275
|
+
<div slot="header">
|
|
276
|
+
<h3 class="spw-ds-typography-heading-04 mb-0">Sommaire</h3>
|
|
277
|
+
</div>
|
|
278
|
+
<div class="mt-3">
|
|
279
|
+
<spw-group orientation="vertical">
|
|
280
|
+
<spw-link variant="primary" href="#">Introduction</spw-link>
|
|
281
|
+
<spw-link variant="primary" href="#">Premiers pas</spw-link>
|
|
282
|
+
<spw-link variant="primary" href="#">Fonctionnalités avancées</spw-link>
|
|
283
|
+
<spw-link variant="primary" href="#">FAQ</spw-link>
|
|
284
|
+
</spw-group>
|
|
285
|
+
</div>
|
|
286
|
+
</spw-box>
|
|
287
|
+
<spw-box padding="medium" has-radius="true" has-shadow="true" is-collapsible="true" collapsible-breakpoint="always">
|
|
288
|
+
<div slot="header">
|
|
289
|
+
<h3 class="spw-ds-typography-heading-04 mb-0">Besoin d'aide ?</h3>
|
|
290
|
+
</div>
|
|
291
|
+
<div class="mt-3">
|
|
292
|
+
<p class="spw-ds-typography-body-01 mb-3">Contactez-nous si vous ne trouvez pas la réponse à votre question.</p>
|
|
293
|
+
<spw-separator class="my-3"></spw-separator>
|
|
294
|
+
<spw-group orientation="vertical">
|
|
295
|
+
<spw-link variant="primary" icon="fa-phone" icon-position="left" href="tel:081654449">081 / 65 44 49</spw-link>
|
|
296
|
+
<spw-link variant="primary" icon="fa-envelope" icon-position="left" href="mailto:mail@mail.be">mail@mail.be</spw-link>
|
|
297
|
+
<spw-link variant="primary" icon="fa-globe" icon-position="left" href="#">www.wallonie.be</spw-link>
|
|
298
|
+
</spw-group>
|
|
299
|
+
<spw-button is-full-width="true" class="mt-4" variant="primary">Formulaire en ligne</spw-button>
|
|
300
|
+
</div>
|
|
301
|
+
</spw-box>
|
|
302
|
+
</div>
|
|
303
|
+
`;
|
|
304
|
+
return container;
|
|
305
|
+
};
|
|
306
|
+
SidebarPattern.parameters = {
|
|
307
|
+
docs: {
|
|
308
|
+
description: {
|
|
309
|
+
story: `Pattern sidebar avec deux box : une pour la navigation (sommaire) et une pour les informations de contact collapsible.`,
|
|
310
|
+
},
|
|
311
|
+
},
|
|
312
|
+
};
|
|
@@ -69,10 +69,15 @@ const Template = args => {
|
|
|
69
69
|
element.addEventListener(key.substring(2).toLowerCase(), val);
|
|
70
70
|
}
|
|
71
71
|
});
|
|
72
|
-
// Ajout de l’action Storybook pour suivre les changements de valeur
|
|
73
72
|
element.addEventListener('valueChanged', (event) => {
|
|
74
73
|
action('valueChanged')(event.detail);
|
|
75
74
|
});
|
|
75
|
+
element.addEventListener('optionCreated', (event) => {
|
|
76
|
+
action('optionCreated')(event.detail);
|
|
77
|
+
});
|
|
78
|
+
element.addEventListener('optionRemoved', (event) => {
|
|
79
|
+
action('optionRemoved')(event.detail);
|
|
80
|
+
});
|
|
76
81
|
return element;
|
|
77
82
|
};
|
|
78
83
|
/* -------------------------------------------------------------------------------------------------
|
|
@@ -84,7 +89,7 @@ Default.args = {
|
|
|
84
89
|
label: 'Sélection simple',
|
|
85
90
|
name: 'custom-select',
|
|
86
91
|
placeholder: 'Choisissez une option',
|
|
87
|
-
hint:
|
|
92
|
+
hint: "Ceci est un texte d'aide",
|
|
88
93
|
showHintIcon: false,
|
|
89
94
|
size: 'medium',
|
|
90
95
|
required: false,
|
|
@@ -164,3 +169,19 @@ AvecWarning.parameters = {
|
|
|
164
169
|
},
|
|
165
170
|
},
|
|
166
171
|
};
|
|
172
|
+
// --- CRÉATION À LA VOLÉE (MULTIPLE) ---
|
|
173
|
+
export const AllowCreateMultiple = Template.bind({});
|
|
174
|
+
AllowCreateMultiple.args = Object.assign(Object.assign({}, Default.args), { label: 'Mots-clés', multiple: true, isSearch: true, allowCreate: true, isClear: true, searchPlaceholder: 'Rechercher ou créer un mot-clé...', noResultsText: 'Aucun mot-clé existant.', placeholder: 'Sélectionnez ou créez des mots-clés', hint: 'Saisissez un mot-clé absent de la liste et cliquez sur + pour le créer.', showHintIcon: false, items: [
|
|
175
|
+
{ label: 'Angular', value: 'angular' },
|
|
176
|
+
{ label: 'React', value: 'react' },
|
|
177
|
+
{ label: 'Stencil', value: 'stencil' },
|
|
178
|
+
{ label: 'Vue', value: 'vue' },
|
|
179
|
+
{ label: 'Svelte', value: 'svelte' },
|
|
180
|
+
] });
|
|
181
|
+
AllowCreateMultiple.parameters = {
|
|
182
|
+
docs: {
|
|
183
|
+
description: {
|
|
184
|
+
story: `Custom Select avec création d'options à la volée et sélection multiple. Lorsque la saisie ne correspond à aucune option existante, un bouton + apparaît pour ajouter l'option directement. Les options créées sont marquées d'une icône de suppression. Les events optionCreated et optionRemoved sont émis pour permettre la synchronisation avec le backend. Cas d'usage : saisie de tags libres, mots-clés personnalisés, listes extensibles.`,
|
|
185
|
+
},
|
|
186
|
+
},
|
|
187
|
+
};
|
|
@@ -20,6 +20,12 @@ const meta = {
|
|
|
20
20
|
tags: ['autodocs'],
|
|
21
21
|
parameters: {
|
|
22
22
|
docs: {
|
|
23
|
+
source: {
|
|
24
|
+
transform: (src) => {
|
|
25
|
+
// Retire le wrapper div ajouté pour limiter la largeur du preview
|
|
26
|
+
return src.replace(/^<div[^>]*>\n?\s*/i, '').replace(/\n?\s*<\/div>$/i, '');
|
|
27
|
+
},
|
|
28
|
+
},
|
|
23
29
|
description: {
|
|
24
30
|
component: `
|
|
25
31
|
<strong class="mr-2">Statut du composant :</strong> <spw-tag size="small" variant="green">Prêt</spw-tag>
|
|
@@ -37,6 +43,7 @@ Le composant Carte est un conteneur cliquable qui affiche un aperçu visuel de c
|
|
|
37
43
|
- **People** : Carte profil avec avatar rond
|
|
38
44
|
- **Sidebar** : Version pour barre latérale
|
|
39
45
|
- **Highlighted** : Carte mise en avant avec style visuel distinctif
|
|
46
|
+
- **RoundedPicture** : Carte pour une galerie photo avec image arrondie et icône de survol personnalisable
|
|
40
47
|
|
|
41
48
|
## Structure
|
|
42
49
|
|
|
@@ -181,6 +188,14 @@ function getHtmlContent(variant, slotArgs) {
|
|
|
181
188
|
<img alt="${slotArgs.imgAlt || ''}" src="${slotArgs.imgSrc}" />
|
|
182
189
|
</spw-card-image>
|
|
183
190
|
</spw-card-content>
|
|
191
|
+
`;
|
|
192
|
+
case 'rounded-picture':
|
|
193
|
+
return `
|
|
194
|
+
${cardImage}
|
|
195
|
+
<spw-card-content tag="${slotArgs.contentTag}" date="${slotArgs.contentDate}">
|
|
196
|
+
${cardTitle}
|
|
197
|
+
${cardExcerpt}
|
|
198
|
+
</spw-card-content>
|
|
184
199
|
`;
|
|
185
200
|
default:
|
|
186
201
|
return `
|
|
@@ -194,6 +209,8 @@ function getHtmlContent(variant, slotArgs) {
|
|
|
194
209
|
}
|
|
195
210
|
}
|
|
196
211
|
const Template = args => {
|
|
212
|
+
const wrapper = document.createElement('div');
|
|
213
|
+
wrapper.style.maxWidth = '2000px';
|
|
197
214
|
const element = document.createElement(elementTag);
|
|
198
215
|
const variant = args.variant || 'news';
|
|
199
216
|
const controls = withComponentControls(componentsData, { tag: elementTag }) || {};
|
|
@@ -208,7 +225,8 @@ const Template = args => {
|
|
|
208
225
|
}
|
|
209
226
|
});
|
|
210
227
|
element.innerHTML = getHtmlContent(variant, args);
|
|
211
|
-
|
|
228
|
+
wrapper.appendChild(element);
|
|
229
|
+
return wrapper;
|
|
212
230
|
};
|
|
213
231
|
export const Default = Template.bind({});
|
|
214
232
|
Default.args = {
|
|
@@ -397,3 +415,42 @@ Highlighted.parameters = {
|
|
|
397
415
|
},
|
|
398
416
|
},
|
|
399
417
|
};
|
|
418
|
+
export const RoundedPicture = () => {
|
|
419
|
+
const wrapper = document.createElement('div');
|
|
420
|
+
wrapper.style.maxWidth = '300px';
|
|
421
|
+
wrapper.innerHTML = /* HTML */ `
|
|
422
|
+
<spw-card href="#" variant="rounded-picture">
|
|
423
|
+
<spw-card-image ratio="2/3" hover-icon="fa-magnifying-glass">
|
|
424
|
+
<img
|
|
425
|
+
src="https://images.unsplash.com/photo-1465056836041-7f43ac27dcb5?w=500&auto=format&fit=crop&q=60&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxzZWFyY2h8MTV8fGxhbmRzY2FwZXxlbnwwfHwwfHx8MA%3D%3D"
|
|
426
|
+
alt="Paysage"
|
|
427
|
+
/>
|
|
428
|
+
</spw-card-image>
|
|
429
|
+
<spw-card-content>
|
|
430
|
+
<spw-card-title>Titre</spw-card-title>
|
|
431
|
+
<spw-card-excerpt>Description</spw-card-excerpt>
|
|
432
|
+
</spw-card-content>
|
|
433
|
+
</spw-card>
|
|
434
|
+
`;
|
|
435
|
+
return wrapper;
|
|
436
|
+
};
|
|
437
|
+
RoundedPicture.parameters = {
|
|
438
|
+
docs: {
|
|
439
|
+
description: {
|
|
440
|
+
story: `Carte avec image arrondie en haut du contenu. Utilise ratio="2/3" sur spw-card-image et hover-icon pour personnaliser l'icône au survol. Peut servir pour afficher notamment une galerie photo.`,
|
|
441
|
+
},
|
|
442
|
+
source: {
|
|
443
|
+
code: /* HTML */ `
|
|
444
|
+
<spw-card href="#" variant="rounded-picture">
|
|
445
|
+
<spw-card-image ratio="2/3" hover-icon="fa-magnifying-glass">
|
|
446
|
+
<img src="..." alt="..." />
|
|
447
|
+
</spw-card-image>
|
|
448
|
+
<spw-card-content>
|
|
449
|
+
<spw-card-title>Titre</spw-card-title>
|
|
450
|
+
<spw-card-excerpt>Description</spw-card-excerpt>
|
|
451
|
+
</spw-card-content>
|
|
452
|
+
</spw-card>
|
|
453
|
+
`,
|
|
454
|
+
},
|
|
455
|
+
},
|
|
456
|
+
};
|
|
@@ -30,6 +30,7 @@ Le composant Hero Banner crée un bandeau visuel impactant en haut de page pour
|
|
|
30
30
|
- **Photo** : Image pleine largeur en arrière-plan
|
|
31
31
|
- **Maxi** : Bannière plein écran avec overlay pour page d'accueil
|
|
32
32
|
- **Mini** : Version compacte du hero banner
|
|
33
|
+
- **Featured** : Image pleine largeur sans slot de contenu. Le ratio de l'image est contrôlable via featured-ratio, featured-ratio-mobile, featured-ratio-tablet, featured-ratio-desktop
|
|
33
34
|
|
|
34
35
|
## Fonctionnalités
|
|
35
36
|
|
|
@@ -312,3 +313,63 @@ MiniDark.parameters = {
|
|
|
312
313
|
},
|
|
313
314
|
},
|
|
314
315
|
};
|
|
316
|
+
const TemplateFeatured = args => {
|
|
317
|
+
const element = document.createElement(elementTag);
|
|
318
|
+
const controls = withComponentControls(componentsData, { tag: elementTag }) || {};
|
|
319
|
+
const masterProps = controls.__realProps || Object.keys(controls);
|
|
320
|
+
Object.entries(args).forEach(([key, val]) => {
|
|
321
|
+
if (masterProps.includes(key)) {
|
|
322
|
+
element.setAttribute(toKebabCase(key), val);
|
|
323
|
+
}
|
|
324
|
+
else if (key.startsWith('on')) {
|
|
325
|
+
element.addEventListener(key.substring(2).toLowerCase(), val);
|
|
326
|
+
}
|
|
327
|
+
});
|
|
328
|
+
return element;
|
|
329
|
+
};
|
|
330
|
+
export const Featured = TemplateFeatured.bind({});
|
|
331
|
+
Featured.args = {
|
|
332
|
+
variant: 'featured',
|
|
333
|
+
imageSrc: 'https://images.unsplash.com/photo-1465056836041-7f43ac27dcb5',
|
|
334
|
+
imageAlt: 'Image featured',
|
|
335
|
+
surface: 'light',
|
|
336
|
+
featuredRatio: '16/9',
|
|
337
|
+
};
|
|
338
|
+
Featured.parameters = {
|
|
339
|
+
docs: {
|
|
340
|
+
description: {
|
|
341
|
+
story: `Hero featured avec image pleine largeur, sans slot de contenu. Le ratio de l'image est uniforme sur tous les breakpoints via featured-ratio.`,
|
|
342
|
+
},
|
|
343
|
+
},
|
|
344
|
+
};
|
|
345
|
+
export const FeaturedResponsiveRatio = TemplateFeatured.bind({});
|
|
346
|
+
FeaturedResponsiveRatio.args = {
|
|
347
|
+
variant: 'featured',
|
|
348
|
+
imageSrc: 'https://images.unsplash.com/photo-1465056836041-7f43ac27dcb5',
|
|
349
|
+
imageAlt: 'Image featured',
|
|
350
|
+
surface: 'light',
|
|
351
|
+
featuredRatioMobile: '4/3',
|
|
352
|
+
featuredRatioTablet: '16/9',
|
|
353
|
+
featuredRatioDesktop: '3/1',
|
|
354
|
+
};
|
|
355
|
+
FeaturedResponsiveRatio.parameters = {
|
|
356
|
+
docs: {
|
|
357
|
+
description: {
|
|
358
|
+
story: `Hero featured avec ratio d'image adaptatif selon le breakpoint : 4/3 sur mobile, 16/9 sur tablette, 3/1 sur desktop. Utiliser featured-ratio-mobile, featured-ratio-tablet et featured-ratio-desktop pour un contrôle granulaire.`,
|
|
359
|
+
},
|
|
360
|
+
},
|
|
361
|
+
};
|
|
362
|
+
export const FeaturedNaturalSize = TemplateFeatured.bind({});
|
|
363
|
+
FeaturedNaturalSize.args = {
|
|
364
|
+
variant: 'featured',
|
|
365
|
+
imageSrc: 'https://images.unsplash.com/photo-1465056836041-7f43ac27dcb5',
|
|
366
|
+
imageAlt: 'Image featured',
|
|
367
|
+
surface: 'light',
|
|
368
|
+
};
|
|
369
|
+
FeaturedNaturalSize.parameters = {
|
|
370
|
+
docs: {
|
|
371
|
+
description: {
|
|
372
|
+
story: `Hero featured sans ratio défini : l'image s'affiche à sa taille naturelle. À utiliser quand les dimensions de l'image sont maîtrisées et qu'aucun recadrage n'est souhaité.`,
|
|
373
|
+
},
|
|
374
|
+
},
|
|
375
|
+
};
|