@spw-ds/spw-stencil-library 1.3.0 → 1.3.2
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 +28 -5
- package/dist/cjs/spw-accordion_4.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-breadcrumb-item.cjs.entry.js +5 -2
- package/dist/cjs/spw-breadcrumb-item.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-breadcrumb-item.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-breadcrumb.cjs.entry.js +2 -2
- package/dist/cjs/spw-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-breadcrumb.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-button_2.cjs.entry.js +2 -2
- package/dist/cjs/spw-card-content.cjs.entry.js +1 -1
- package/dist/cjs/spw-card-excerpt.cjs.entry.js +1 -1
- package/dist/cjs/spw-card-image.cjs.entry.js +1 -1
- package/dist/cjs/spw-card-subtag-item.cjs.entry.js +1 -1
- package/dist/cjs/spw-card-subtags.cjs.entry.js +1 -1
- package/dist/cjs/spw-card-title.cjs.entry.js +1 -1
- package/dist/cjs/spw-card.cjs.entry.js +1 -1
- package/dist/cjs/spw-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/spw-custom-select.cjs.entry.js +3 -3
- package/dist/cjs/spw-date-picker.cjs.entry.js +5 -3
- package/dist/cjs/spw-date-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-date-picker.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-dropdown-container.cjs.entry.js +1 -1
- package/dist/cjs/spw-dropdown-item.cjs.entry.js +1 -1
- package/dist/cjs/spw-dropdown.cjs.entry.js +1 -1
- package/dist/cjs/spw-field-label_6.cjs.entry.js +6 -6
- package/dist/cjs/spw-field-message.cjs.entry.js +1 -1
- package/dist/cjs/spw-file-upload.cjs.entry.js +2 -2
- package/dist/cjs/spw-footer-bottom.cjs.entry.js +1 -1
- package/dist/cjs/spw-footer-content-col.cjs.entry.js +1 -1
- package/dist/cjs/spw-footer-content.cjs.entry.js +1 -1
- package/dist/cjs/spw-footer-link.cjs.entry.js +1 -1
- package/dist/cjs/spw-footer.cjs.entry.js +1 -1
- package/dist/cjs/spw-grid-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-grid.cjs.entry.js +2 -2
- 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 +1 -1
- package/dist/cjs/spw-header.cjs.entry.js +1 -1
- package/dist/cjs/spw-hero.cjs.entry.js +10 -3
- 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-illustration.cjs.entry.js +488 -1
- package/dist/cjs/spw-illustration.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-illustration.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 +1 -1
- package/dist/cjs/spw-list-title.cjs.entry.js +1 -1
- package/dist/cjs/spw-list.cjs.entry.js +1 -1
- package/dist/cjs/spw-modal.cjs.entry.js +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 +10 -10
- package/dist/cjs/spw-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-pagination.entry.cjs.js.map +1 -1
- 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-slider-item.cjs.entry.js +1 -1
- package/dist/cjs/spw-slider.cjs.entry.js +11 -4
- package/dist/cjs/spw-slider.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-slider.entry.cjs.js.map +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-container.cjs.entry.js +20 -0
- package/dist/cjs/spw-table-container.cjs.entry.js.map +1 -0
- package/dist/cjs/spw-table-container.entry.cjs.js.map +1 -0
- package/dist/cjs/spw-table-footer.cjs.entry.js +2 -2
- package/dist/cjs/spw-table-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-table-footer.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-table-head.cjs.entry.js +1 -1
- package/dist/cjs/spw-table-header.cjs.entry.js +3 -3
- package/dist/cjs/spw-table-header.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-table-header.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-table-row.cjs.entry.js +1 -1
- package/dist/cjs/spw-table-sidebar.cjs.entry.js +142 -0
- package/dist/cjs/spw-table-sidebar.cjs.entry.js.map +1 -0
- package/dist/cjs/spw-table-sidebar.entry.cjs.js.map +1 -0
- package/dist/cjs/spw-table.cjs.entry.js +34 -17
- package/dist/cjs/spw-table.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-table.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-tabs-navigation-item.cjs.entry.js +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 +2 -2
- package/dist/cjs/spw-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-textarea.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-tile-description.cjs.entry.js +1 -1
- package/dist/cjs/spw-tile-title.cjs.entry.js +1 -1
- package/dist/cjs/spw-tile.cjs.entry.js +1 -1
- package/dist/cjs/spw-toc-container.cjs.entry.js +73 -0
- package/dist/cjs/spw-toc-container.cjs.entry.js.map +1 -0
- package/dist/cjs/spw-toc-container.entry.cjs.js.map +1 -0
- package/dist/cjs/spw-toc-navigation.cjs.entry.js +283 -0
- package/dist/cjs/spw-toc-navigation.cjs.entry.js.map +1 -0
- package/dist/cjs/spw-toc-navigation.entry.cjs.js.map +1 -0
- package/dist/cjs/spw-toc.cjs.entry.js +20 -0
- package/dist/cjs/spw-toc.cjs.entry.js.map +1 -0
- package/dist/cjs/spw-toc.entry.cjs.js.map +1 -0
- package/dist/cjs/spw-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/spw-topbar.cjs.entry.js +1 -1
- package/dist/cjs/spw-wizard-item.cjs.entry.js +1 -1
- package/dist/cjs/spw-wizard.cjs.entry.js +1 -1
- package/dist/collection/collection-manifest.json +5 -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.css +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 +53 -1
- package/dist/collection/components/spw-accordion/spw-accordion.js.map +1 -1
- package/dist/collection/components/spw-breadcrumb/spw-breadcrumb-item/spw-breadcrumb-item.css +1 -1
- package/dist/collection/components/spw-breadcrumb/spw-breadcrumb-item/spw-breadcrumb-item.js +4 -1
- package/dist/collection/components/spw-breadcrumb/spw-breadcrumb-item/spw-breadcrumb-item.js.map +1 -1
- package/dist/collection/components/spw-breadcrumb/spw-breadcrumb.css +1 -1
- package/dist/collection/components/spw-breadcrumb/spw-breadcrumb.js +1 -1
- package/dist/collection/components/spw-button/spw-button.js +1 -1
- 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.js +1 -1
- package/dist/collection/components/spw-card/spw-card-subtag-item/spw-card-subtag-item.js +1 -1
- package/dist/collection/components/spw-card/spw-card-subtags/spw-card-subtags.js +1 -1
- package/dist/collection/components/spw-card/spw-card-title/spw-card-title.js +1 -1
- package/dist/collection/components/spw-card/spw-card.js +1 -1
- package/dist/collection/components/spw-checkbox/spw-checkbox.js +1 -1
- package/dist/collection/components/spw-custom-select/spw-custom-select.js +3 -3
- package/dist/collection/components/spw-date-picker/spw-date-picker.js +5 -3
- package/dist/collection/components/spw-date-picker/spw-date-picker.js.map +1 -1
- 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.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer-content/spw-footer-content.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer-content-col/spw-footer-content-col.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer-link/spw-footer-link.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer.js +1 -1
- package/dist/collection/components/spw-grid/spw-grid-item/spw-grid-item.js +2 -2
- package/dist/collection/components/spw-grid/spw-grid.js +2 -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-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 +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.js +1 -1
- package/dist/collection/components/spw-hero/spw-hero.css +1 -1
- package/dist/collection/components/spw-hero/spw-hero.js +51 -4
- package/dist/collection/components/spw-hero/spw-hero.js.map +1 -1
- package/dist/collection/components/spw-icon/spw-icon.js +1 -1
- package/dist/collection/components/spw-illustration/spw-illustration.css +1 -1
- package/dist/collection/components/spw-illustration/spw-illustration.js +488 -1
- package/dist/collection/components/spw-illustration/spw-illustration.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.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 +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 +12 -9
- package/dist/collection/components/spw-pagination/spw-pagination.js.map +1 -1
- 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-slider/spw-slider-item/spw-slider-item.js +1 -1
- package/dist/collection/components/spw-slider/spw-slider.css +1 -1
- package/dist/collection/components/spw-slider/spw-slider.js +30 -3
- package/dist/collection/components/spw-slider/spw-slider.js.map +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-container/spw-table-container.css +2 -0
- package/dist/collection/components/spw-table/spw-table-container/spw-table-container.js +19 -0
- package/dist/collection/components/spw-table/spw-table-container/spw-table-container.js.map +1 -0
- package/dist/collection/components/spw-table/spw-table-footer/spw-table-footer.css +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-footer/spw-table-footer.js.map +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.css +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-header/spw-table-header.js.map +1 -1
- 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.css +2 -0
- package/dist/collection/components/spw-table/spw-table-sidebar/spw-table-sidebar.js +290 -0
- package/dist/collection/components/spw-table/spw-table-sidebar/spw-table-sidebar.js.map +1 -0
- package/dist/collection/components/spw-table/spw-table.css +1 -1
- package/dist/collection/components/spw-table/spw-table.js +33 -16
- package/dist/collection/components/spw-table/spw-table.js.map +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.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 +3 -3
- package/dist/collection/components/spw-textarea/spw-textarea.js.map +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.js +1 -1
- package/dist/collection/components/spw-tile/spw-tile.js +1 -1
- package/dist/collection/components/spw-toc/spw-toc-container/spw-toc-container.css +2 -0
- package/dist/collection/components/spw-toc/spw-toc-container/spw-toc-container.js +120 -0
- package/dist/collection/components/spw-toc/spw-toc-container/spw-toc-container.js.map +1 -0
- package/dist/collection/components/spw-toc/spw-toc-navigation/spw-toc-navigation.css +2 -0
- package/dist/collection/components/spw-toc/spw-toc-navigation/spw-toc-navigation.js +301 -0
- package/dist/collection/components/spw-toc/spw-toc-navigation/spw-toc-navigation.js.map +1 -0
- package/dist/collection/components/spw-toc/spw-toc.css +2 -0
- package/dist/collection/components/spw-toc/spw-toc.js +18 -0
- package/dist/collection/components/spw-toc/spw-toc.js.map +1 -0
- 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-breadcrumb/spw-breadcrumb.stories.js +32 -1
- package/dist/collection/stories/components/spw-breadcrumb/spw-breadcrumb.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-button/spw-button.stories.js +59 -1
- package/dist/collection/stories/components/spw-button/spw-button.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-checkbox/spw-checkbox.stories.js +37 -1
- package/dist/collection/stories/components/spw-checkbox/spw-checkbox.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-custom-select/spw-custom-select.stories.js +60 -1
- package/dist/collection/stories/components/spw-custom-select/spw-custom-select.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-date-picker/spw-date-picker.stories.js +60 -1
- package/dist/collection/stories/components/spw-date-picker/spw-date-picker.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-dropdown/spw-dropdown.stories.js +19 -1
- package/dist/collection/stories/components/spw-dropdown/spw-dropdown.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-field-message/spw-field-message.stories.js +52 -1
- package/dist/collection/stories/components/spw-field-message/spw-field-message.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-file-upload/spw-file-upload.stories.js +20 -1
- package/dist/collection/stories/components/spw-file-upload/spw-file-upload.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-icon/spw-icon.stories.js +21 -1
- package/dist/collection/stories/components/spw-icon/spw-icon.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-link/spw-link.stories.js +31 -1
- package/dist/collection/stories/components/spw-link/spw-link.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-loading/spw-loading.stories.js +29 -1
- package/dist/collection/stories/components/spw-loading/spw-loading.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-pagination/spw-pagination.stories.js +37 -1
- package/dist/collection/stories/components/spw-pagination/spw-pagination.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-radio/spw-radio.stories.js +17 -1
- package/dist/collection/stories/components/spw-radio/spw-radio.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-search-field/spw-search-field.stories.js +33 -1
- package/dist/collection/stories/components/spw-search-field/spw-search-field.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-select/spw-select.stories.js +19 -1
- package/dist/collection/stories/components/spw-select/spw-select.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-separator/spw-separator.stories.js +33 -1
- package/dist/collection/stories/components/spw-separator/spw-separator.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-skeleton/spw-skeleton.stories.js +51 -2
- package/dist/collection/stories/components/spw-skeleton/spw-skeleton.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-tag/spw-tag.stories.js +72 -1
- package/dist/collection/stories/components/spw-tag/spw-tag.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-text-field/spw-text-field.stories.js +34 -1
- package/dist/collection/stories/components/spw-text-field/spw-text-field.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-textarea/spw-textarea.stories.js +16 -1
- package/dist/collection/stories/components/spw-textarea/spw-textarea.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-tooltip/spw-tooltip.stories.js +17 -1
- package/dist/collection/stories/components/spw-tooltip/spw-tooltip.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-accordion/spw-accordion.stories.js +17 -4
- package/dist/collection/stories/organisms/spw-accordion/spw-accordion.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-card/spw-card.stories.js +96 -1
- package/dist/collection/stories/organisms/spw-card/spw-card.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-footer/spw-footer.stories.js +38 -1
- package/dist/collection/stories/organisms/spw-footer/spw-footer.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-grid/spw-grid.stories.js +25 -1
- package/dist/collection/stories/organisms/spw-grid/spw-grid.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-group/spw-group.stories.js +46 -7
- package/dist/collection/stories/organisms/spw-group/spw-group.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-header/spw-header.stories.js +58 -7
- package/dist/collection/stories/organisms/spw-header/spw-header.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-hero/spw-hero.stories.js +87 -1
- package/dist/collection/stories/organisms/spw-hero/spw-hero.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-list/spw-list.stories.js +57 -1
- package/dist/collection/stories/organisms/spw-list/spw-list.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-message/spw-message.stories.js +71 -1
- package/dist/collection/stories/organisms/spw-message/spw-message.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-modal/spw-modal.stories.js +62 -1
- package/dist/collection/stories/organisms/spw-modal/spw-modal.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-mosaic/spw-mosaic.stories.js +74 -1
- package/dist/collection/stories/organisms/spw-mosaic/spw-mosaic.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-sidebar/spw-sidebar.stories.js +31 -1
- package/dist/collection/stories/organisms/spw-sidebar/spw-sidebar.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-slider/spw-slider.stories.js +21 -1
- package/dist/collection/stories/organisms/spw-slider/spw-slider.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-socials/spw-socials.stories.js +25 -1
- package/dist/collection/stories/organisms/spw-socials/spw-socials.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-table/spw-table.stories.js +69 -1
- package/dist/collection/stories/organisms/spw-table/spw-table.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-tabs/spw-tabs.stories.js +57 -1
- package/dist/collection/stories/organisms/spw-tabs/spw-tabs.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-tile/spw-tile.stories.js +83 -1
- package/dist/collection/stories/organisms/spw-tile/spw-tile.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-toc/spw-toc.stories.js +256 -0
- package/dist/collection/stories/organisms/spw-toc/spw-toc.stories.js.map +1 -0
- package/dist/collection/stories/organisms/spw-topbar/spw-topbar.stories.js +52 -1
- package/dist/collection/stories/organisms/spw-topbar/spw-topbar.stories.js.map +1 -1
- package/dist/components/{p-QqgPCBuq.js → p-BCWtq89_.js} +3 -3
- package/dist/components/{p-QqgPCBuq.js.map → p-BCWtq89_.js.map} +1 -1
- package/dist/components/{p-DzdAUdJU.js → p-BTvGjWzW.js} +3 -3
- package/dist/components/{p-DzdAUdJU.js.map → p-BTvGjWzW.js.map} +1 -1
- package/dist/components/{p-DtyDCGAt.js → p-BZeR2u__.js} +3 -3
- package/dist/components/{p-DtyDCGAt.js.map → p-BZeR2u__.js.map} +1 -1
- package/dist/components/{p-BJuYSBNu.js → p-Bu2NP1Hz.js} +4 -4
- package/dist/components/{p-BJuYSBNu.js.map → p-Bu2NP1Hz.js.map} +1 -1
- package/dist/components/{p-CFQbmE2_.js → p-C0RRW46w.js} +4 -4
- package/dist/components/p-C0RRW46w.js.map +1 -0
- package/dist/components/{p-BYWyi-Sg.js → p-Cwnv6xZs.js} +4 -4
- package/dist/components/{p-BYWyi-Sg.js.map → p-Cwnv6xZs.js.map} +1 -1
- package/dist/components/{p-YZZxQbyU.js → p-CyyuvuPG.js} +5 -5
- package/dist/components/{p-YZZxQbyU.js.map → p-CyyuvuPG.js.map} +1 -1
- package/dist/components/{p-CQpGzRKu.js → p-D4uTODSD.js} +31 -4
- package/dist/components/p-D4uTODSD.js.map +1 -0
- package/dist/components/{p-CN-VU2O8.js → p-DPJAZYpY.js} +3 -3
- package/dist/components/{p-CN-VU2O8.js.map → p-DPJAZYpY.js.map} +1 -1
- package/dist/components/{p-Otqq8W18.js → p-DYC6u5kd.js} +3 -3
- package/dist/components/{p-Otqq8W18.js.map → p-DYC6u5kd.js.map} +1 -1
- package/dist/components/{p-CIwDs15y.js → p-DrAfEAz-.js} +3 -3
- package/dist/components/{p-CIwDs15y.js.map → p-DrAfEAz-.js.map} +1 -1
- package/dist/components/{p-BPeRFxsF.js → p-DvSE7JLV.js} +4 -4
- package/dist/components/{p-BPeRFxsF.js.map → p-DvSE7JLV.js.map} +1 -1
- package/dist/components/{p-C47wKUeG.js → p-L8eHcqaq.js} +17 -17
- package/dist/components/p-L8eHcqaq.js.map +1 -0
- package/dist/components/{p-DTm94uQW.js → p-d3hqDeA0.js} +4 -4
- package/dist/components/{p-DTm94uQW.js.map → p-d3hqDeA0.js.map} +1 -1
- package/dist/components/{p-Cdk2nQ84.js → p-kJsRMeYL.js} +6 -6
- package/dist/components/{p-Cdk2nQ84.js.map → p-kJsRMeYL.js.map} +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-breadcrumb-item.js +7 -4
- package/dist/components/spw-breadcrumb-item.js.map +1 -1
- package/dist/components/spw-breadcrumb.js +2 -2
- package/dist/components/spw-breadcrumb.js.map +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 +2 -2
- 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 +8 -8
- package/dist/components/spw-custom-select.js +7 -7
- package/dist/components/spw-date-picker.js +8 -6
- package/dist/components/spw-date-picker.js.map +1 -1
- package/dist/components/spw-dropdown-container.js +1 -1
- package/dist/components/spw-dropdown-item.js +2 -2
- 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 +5 -5
- 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 +2 -2
- package/dist/components/spw-grid.js +2 -2
- package/dist/components/spw-group.js +2 -2
- package/dist/components/spw-header-lang-item.js +1 -1
- package/dist/components/spw-header-lang.js +4 -4
- package/dist/components/spw-header-navigation-dropdown.js +1 -1
- package/dist/components/spw-header-navigation-item.js +2 -2
- package/dist/components/spw-header-navigation.js +4 -4
- package/dist/components/spw-header-persona-item.js +1 -1
- package/dist/components/spw-header-persona.js +2 -2
- package/dist/components/spw-header.js +4 -4
- package/dist/components/spw-hero.js +14 -5
- package/dist/components/spw-hero.js.map +1 -1
- package/dist/components/spw-icon.js +1 -1
- package/dist/components/spw-illustration.js +488 -1
- package/dist/components/spw-illustration.js.map +1 -1
- package/dist/components/spw-iodda.js +7 -7
- package/dist/components/spw-link.js +1 -1
- package/dist/components/spw-list-description.js +1 -1
- package/dist/components/spw-list-item.js +2 -2
- package/dist/components/spw-list-title.js +2 -2
- package/dist/components/spw-list.js +1 -1
- package/dist/components/spw-loading.js +1 -1
- package/dist/components/spw-message.js +2 -2
- package/dist/components/spw-modal.js +2 -2
- 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 +6 -6
- package/dist/components/spw-select.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 +5 -5
- package/dist/components/spw-sidebar-navigation-separator.js +2 -2
- package/dist/components/spw-sidebar.js +2 -2
- package/dist/components/spw-skeleton.js +1 -1
- package/dist/components/spw-slider-item.js +1 -1
- package/dist/components/spw-slider.js +14 -6
- package/dist/components/spw-slider.js.map +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.d.ts +11 -0
- package/dist/components/spw-table-container.js +36 -0
- package/dist/components/spw-table-container.js.map +1 -0
- package/dist/components/spw-table-footer.js +2 -2
- package/dist/components/spw-table-footer.js.map +1 -1
- package/dist/components/spw-table-head.js +1 -1
- package/dist/components/spw-table-header.js +5 -5
- package/dist/components/spw-table-header.js.map +1 -1
- package/dist/components/spw-table-row.js +1 -1
- package/dist/components/spw-table-sidebar.d.ts +11 -0
- package/dist/components/spw-table-sidebar.js +185 -0
- package/dist/components/spw-table-sidebar.js.map +1 -0
- package/dist/components/spw-table.js +34 -17
- package/dist/components/spw-table.js.map +1 -1
- package/dist/components/spw-tabs-navigation-item.js +3 -3
- package/dist/components/spw-tabs-navigation.js +2 -2
- package/dist/components/spw-tabs.js +1 -1
- package/dist/components/spw-tag.js +2 -2
- package/dist/components/spw-text-field.js +1 -1
- package/dist/components/spw-textarea.js +5 -5
- package/dist/components/spw-textarea.js.map +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 +2 -2
- package/dist/components/spw-toc-container.d.ts +11 -0
- package/dist/components/spw-toc-container.js +90 -0
- package/dist/components/spw-toc-container.js.map +1 -0
- package/dist/components/spw-toc-navigation.d.ts +11 -0
- package/dist/components/spw-toc-navigation.js +304 -0
- package/dist/components/spw-toc-navigation.js.map +1 -0
- package/dist/components/spw-toc.d.ts +11 -0
- package/dist/components/spw-toc.js +35 -0
- package/dist/components/spw-toc.js.map +1 -0
- package/dist/components/spw-tooltip.js +1 -1
- package/dist/components/spw-topbar.js +1 -1
- package/dist/components/spw-wizard-item.js +2 -2
- package/dist/components/spw-wizard.js +1 -1
- package/dist/components_json.json +461 -16
- package/dist/components_vscode.json +3409 -0
- 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 +28 -5
- package/dist/esm/spw-accordion_4.entry.js.map +1 -1
- package/dist/esm/spw-breadcrumb-item.entry.js +5 -2
- package/dist/esm/spw-breadcrumb-item.entry.js.map +1 -1
- package/dist/esm/spw-breadcrumb.entry.js +2 -2
- package/dist/esm/spw-breadcrumb.entry.js.map +1 -1
- package/dist/esm/spw-button_2.entry.js +2 -2
- package/dist/esm/spw-card-content.entry.js +1 -1
- package/dist/esm/spw-card-excerpt.entry.js +1 -1
- package/dist/esm/spw-card-image.entry.js +1 -1
- package/dist/esm/spw-card-subtag-item.entry.js +1 -1
- package/dist/esm/spw-card-subtags.entry.js +1 -1
- package/dist/esm/spw-card-title.entry.js +1 -1
- package/dist/esm/spw-card.entry.js +1 -1
- package/dist/esm/spw-checkbox.entry.js +1 -1
- package/dist/esm/spw-custom-select.entry.js +3 -3
- package/dist/esm/spw-date-picker.entry.js +5 -3
- package/dist/esm/spw-date-picker.entry.js.map +1 -1
- package/dist/esm/spw-dropdown-container.entry.js +1 -1
- package/dist/esm/spw-dropdown-item.entry.js +1 -1
- package/dist/esm/spw-dropdown.entry.js +1 -1
- package/dist/esm/spw-field-label_6.entry.js +6 -6
- package/dist/esm/spw-field-message.entry.js +1 -1
- package/dist/esm/spw-file-upload.entry.js +2 -2
- package/dist/esm/spw-footer-bottom.entry.js +1 -1
- package/dist/esm/spw-footer-content-col.entry.js +1 -1
- package/dist/esm/spw-footer-content.entry.js +1 -1
- package/dist/esm/spw-footer-link.entry.js +1 -1
- package/dist/esm/spw-footer.entry.js +1 -1
- package/dist/esm/spw-grid-item.entry.js +2 -2
- package/dist/esm/spw-grid.entry.js +2 -2
- 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 +1 -1
- package/dist/esm/spw-header.entry.js +1 -1
- package/dist/esm/spw-hero.entry.js +10 -3
- package/dist/esm/spw-hero.entry.js.map +1 -1
- package/dist/esm/spw-illustration.entry.js +488 -1
- package/dist/esm/spw-illustration.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 +1 -1
- package/dist/esm/spw-list-title.entry.js +1 -1
- package/dist/esm/spw-list.entry.js +1 -1
- package/dist/esm/spw-modal.entry.js +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 +10 -10
- package/dist/esm/spw-pagination.entry.js.map +1 -1
- 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-slider-item.entry.js +1 -1
- package/dist/esm/spw-slider.entry.js +11 -4
- package/dist/esm/spw-slider.entry.js.map +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-container.entry.js +18 -0
- package/dist/esm/spw-table-container.entry.js.map +1 -0
- package/dist/esm/spw-table-footer.entry.js +2 -2
- package/dist/esm/spw-table-footer.entry.js.map +1 -1
- package/dist/esm/spw-table-head.entry.js +1 -1
- package/dist/esm/spw-table-header.entry.js +3 -3
- package/dist/esm/spw-table-header.entry.js.map +1 -1
- package/dist/esm/spw-table-row.entry.js +1 -1
- package/dist/esm/spw-table-sidebar.entry.js +140 -0
- package/dist/esm/spw-table-sidebar.entry.js.map +1 -0
- package/dist/esm/spw-table.entry.js +34 -17
- package/dist/esm/spw-table.entry.js.map +1 -1
- package/dist/esm/spw-tabs-navigation-item.entry.js +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 +2 -2
- package/dist/esm/spw-textarea.entry.js.map +1 -1
- package/dist/esm/spw-tile-description.entry.js +1 -1
- package/dist/esm/spw-tile-title.entry.js +1 -1
- package/dist/esm/spw-tile.entry.js +1 -1
- package/dist/esm/spw-toc-container.entry.js +71 -0
- package/dist/esm/spw-toc-container.entry.js.map +1 -0
- package/dist/esm/spw-toc-navigation.entry.js +281 -0
- package/dist/esm/spw-toc-navigation.entry.js.map +1 -0
- package/dist/esm/spw-toc.entry.js +18 -0
- package/dist/esm/spw-toc.entry.js.map +1 -0
- package/dist/esm/spw-tooltip.entry.js +1 -1
- package/dist/esm/spw-topbar.entry.js +1 -1
- package/dist/esm/spw-wizard-item.entry.js +1 -1
- package/dist/esm/spw-wizard.entry.js +1 -1
- package/dist/spw-stencil-library/{p-4bc3d2ef.entry.js → p-04aa5d86.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-a2fd09f8.entry.js → p-0839efb1.entry.js} +2 -2
- package/dist/spw-stencil-library/p-0a69cead.entry.js +2 -0
- package/dist/spw-stencil-library/p-0a69cead.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-84645c94.entry.js → p-0bc1209e.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-1644bf7d.entry.js → p-0e7f2c1a.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-6e37db2d.entry.js → p-0f728bbd.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-6e37db2d.entry.js.map → p-0f728bbd.entry.js.map} +1 -1
- package/dist/spw-stencil-library/{p-670f0edc.entry.js → p-1306c0ff.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-ed61e2a8.entry.js → p-137f2856.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-d02b077c.entry.js → p-1416942e.entry.js} +2 -2
- package/dist/spw-stencil-library/p-1416942e.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-5e0b04c0.entry.js → p-1bb4a071.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-eb26b450.entry.js → p-1c728c37.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-44bb3ec0.entry.js → p-20fa2637.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-2b70c24a.entry.js → p-2965d7ca.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-82ed2f9b.entry.js → p-29fb06a6.entry.js} +2 -2
- package/dist/spw-stencil-library/p-2d6f393e.entry.js +2 -0
- package/dist/spw-stencil-library/p-2d6f393e.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-2760ef2b.entry.js → p-2d7492af.entry.js} +2 -2
- package/dist/spw-stencil-library/p-2dea4478.entry.js +2 -0
- package/dist/spw-stencil-library/p-2dea4478.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-6c88a82d.entry.js → p-3067d3dd.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-e5f141b6.entry.js → p-31980405.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-9d0e8d02.entry.js → p-3553e1f1.entry.js} +2 -2
- package/dist/spw-stencil-library/p-3753277e.entry.js +2 -0
- package/dist/spw-stencil-library/p-3753277e.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-cbf4ef91.entry.js → p-3c524edb.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-93dc746d.entry.js → p-40b238cb.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-93dc746d.entry.js.map → p-40b238cb.entry.js.map} +1 -1
- package/dist/spw-stencil-library/{p-d37963e0.entry.js → p-420fd27d.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-87249c32.entry.js → p-460b4ede.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-c3f21e33.entry.js → p-47f6b942.entry.js} +2 -2
- package/dist/spw-stencil-library/p-48f1e67a.entry.js +2 -0
- package/dist/spw-stencil-library/p-48f1e67a.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-f26fd3b1.entry.js → p-49227f48.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-a065a834.entry.js → p-4ab97219.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-3545f888.entry.js → p-5ba3deea.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-5e1aae61.entry.js → p-6c0993d6.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-95749696.entry.js → p-70ccb73f.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-6f084e62.entry.js → p-70f46bf2.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-b3e76f4c.entry.js → p-7214cc7b.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-0c3e8d91.entry.js → p-798bac47.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-a4111a43.entry.js → p-8483cd8b.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-931bea3a.entry.js → p-8c2f0377.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-e4e2cb61.entry.js → p-93bd4d23.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-25204236.entry.js → p-95ec862e.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-5adfcd7e.entry.js → p-9a3dcf80.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-6cdf16ac.entry.js → p-9d5deba6.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-d28a7068.entry.js → p-a264b181.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-95fa97a9.entry.js → p-aa4ddfa1.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-9dea2f39.entry.js → p-ad964a8e.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-08000970.entry.js → p-ada217d5.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-197a694e.entry.js → p-aed34c29.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-94069aff.entry.js → p-b4805c08.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-277bb102.entry.js → p-bb4c4e16.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-a5004a01.entry.js → p-bb7f1387.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-b4c2fdf2.entry.js → p-bcceb61b.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-68f93962.entry.js → p-bf070798.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-110ca863.entry.js → p-c02b7133.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-ca98ee5d.entry.js → p-c278daa3.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-428aa721.entry.js → p-c398550f.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-803b2bb5.entry.js → p-c77adac8.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-aeec7eeb.entry.js → p-c7b2c5d7.entry.js} +2 -2
- package/dist/spw-stencil-library/p-c7b2c5d7.entry.js.map +1 -0
- package/dist/spw-stencil-library/p-c85f2f9a.entry.js +2 -0
- package/dist/spw-stencil-library/p-c85f2f9a.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-ea0cfe62.entry.js → p-cc3a84a1.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-91b264d1.entry.js → p-cc869e6f.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-a1d06611.entry.js → p-ccbc7c44.entry.js} +2 -2
- package/dist/spw-stencil-library/p-d0cb71d3.entry.js +2 -0
- package/dist/spw-stencil-library/p-d0cb71d3.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-3ac699ae.entry.js → p-d18146ca.entry.js} +2 -2
- package/dist/spw-stencil-library/p-d2b6aae7.entry.js +2 -0
- package/dist/spw-stencil-library/p-d2b6aae7.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-65aec904.entry.js → p-d2f5d210.entry.js} +2 -2
- package/dist/spw-stencil-library/p-d672e985.entry.js +2 -0
- package/dist/spw-stencil-library/p-d672e985.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-bb2421dc.entry.js → p-d8cae37d.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-e2bac6be.entry.js → p-db817793.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-c3246505.entry.js → p-dbb7e719.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-df4d1f42.entry.js → p-de771d14.entry.js} +2 -2
- package/dist/spw-stencil-library/p-dedeaccc.entry.js +2 -0
- package/dist/spw-stencil-library/p-dedeaccc.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-187d02cb.entry.js → p-e369abbb.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-67b7b947.entry.js → p-e44b8ebb.entry.js} +2 -2
- package/dist/spw-stencil-library/p-e55b0c4b.entry.js +2 -0
- package/dist/spw-stencil-library/p-e55b0c4b.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-1271e178.entry.js → p-e6b25971.entry.js} +2 -2
- package/dist/spw-stencil-library/p-e6b25971.entry.js.map +1 -0
- package/dist/spw-stencil-library/p-e6c8a3e4.entry.js +2 -0
- package/dist/spw-stencil-library/p-e6c8a3e4.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-6461fb4b.entry.js → p-e78304f0.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-25aaf6a6.entry.js → p-ea5f2427.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-95891f3a.entry.js → p-ea952c66.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-22f022ca.entry.js → p-eaa1025a.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-ef8f15e9.entry.js → p-f05cd056.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-2ef45489.entry.js → p-fad06d00.entry.js} +2 -2
- 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-breadcrumb-item.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-breadcrumb.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-date-picker.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-illustration.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-pagination.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-slider.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-table-container.entry.esm.js.map +1 -0
- package/dist/spw-stencil-library/spw-table-footer.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-table-header.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-table-sidebar.entry.esm.js.map +1 -0
- package/dist/spw-stencil-library/spw-table.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-textarea.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-toc-container.entry.esm.js.map +1 -0
- package/dist/spw-stencil-library/spw-toc-navigation.entry.esm.js.map +1 -0
- package/dist/spw-stencil-library/spw-toc.entry.esm.js.map +1 -0
- package/dist/stats.json +2225 -592
- package/dist/types/components/spw-accordion/spw-accordion.d.ts +6 -0
- package/dist/types/components/spw-hero/spw-hero.d.ts +5 -1
- package/dist/types/components/spw-illustration/spw-illustration.d.ts +2 -0
- package/dist/types/components/spw-pagination/spw-pagination.d.ts +1 -0
- package/dist/types/components/spw-slider/spw-slider.d.ts +3 -0
- package/dist/types/components/spw-table/spw-table-container/spw-table-container.d.ts +3 -0
- package/dist/types/components/spw-table/spw-table-sidebar/spw-table-sidebar.d.ts +34 -0
- package/dist/types/components/spw-table/spw-table.d.ts +2 -0
- package/dist/types/components/spw-toc/spw-toc-container/spw-toc-container.d.ts +18 -0
- package/dist/types/components/spw-toc/spw-toc-navigation/spw-toc-navigation.d.ts +24 -0
- package/dist/types/components/spw-toc/spw-toc.d.ts +3 -0
- package/dist/types/components.d.ts +185 -2
- package/dist/types/stories/organisms/spw-toc/spw-toc.stories.d.ts +5 -0
- package/hydrate/index.js +1245 -134
- package/hydrate/index.mjs +1245 -134
- package/package.json +4 -4
- package/dist/components/p-C47wKUeG.js.map +0 -1
- package/dist/components/p-CFQbmE2_.js.map +0 -1
- package/dist/components/p-CQpGzRKu.js.map +0 -1
- package/dist/spw-stencil-library/p-1271e178.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-33f33d6d.entry.js +0 -2
- package/dist/spw-stencil-library/p-33f33d6d.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-5c745e85.entry.js +0 -2
- package/dist/spw-stencil-library/p-5c745e85.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-71519d62.entry.js +0 -2
- package/dist/spw-stencil-library/p-71519d62.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-98bddf34.entry.js +0 -2
- package/dist/spw-stencil-library/p-98bddf34.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-aeec7eeb.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-b8645217.entry.js +0 -2
- package/dist/spw-stencil-library/p-b8645217.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-bf7cd8c9.entry.js +0 -2
- package/dist/spw-stencil-library/p-bf7cd8c9.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-c43d3406.entry.js +0 -2
- package/dist/spw-stencil-library/p-c43d3406.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-d02b077c.entry.js.map +0 -1
- /package/dist/spw-stencil-library/{p-4bc3d2ef.entry.js.map → p-04aa5d86.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-a2fd09f8.entry.js.map → p-0839efb1.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-84645c94.entry.js.map → p-0bc1209e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-1644bf7d.entry.js.map → p-0e7f2c1a.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-670f0edc.entry.js.map → p-1306c0ff.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-ed61e2a8.entry.js.map → p-137f2856.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-5e0b04c0.entry.js.map → p-1bb4a071.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-eb26b450.entry.js.map → p-1c728c37.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-44bb3ec0.entry.js.map → p-20fa2637.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-2b70c24a.entry.js.map → p-2965d7ca.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-82ed2f9b.entry.js.map → p-29fb06a6.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-2760ef2b.entry.js.map → p-2d7492af.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-6c88a82d.entry.js.map → p-3067d3dd.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-e5f141b6.entry.js.map → p-31980405.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-9d0e8d02.entry.js.map → p-3553e1f1.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-cbf4ef91.entry.js.map → p-3c524edb.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-d37963e0.entry.js.map → p-420fd27d.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-87249c32.entry.js.map → p-460b4ede.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-c3f21e33.entry.js.map → p-47f6b942.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-f26fd3b1.entry.js.map → p-49227f48.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-a065a834.entry.js.map → p-4ab97219.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-3545f888.entry.js.map → p-5ba3deea.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-5e1aae61.entry.js.map → p-6c0993d6.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-95749696.entry.js.map → p-70ccb73f.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-6f084e62.entry.js.map → p-70f46bf2.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-b3e76f4c.entry.js.map → p-7214cc7b.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-0c3e8d91.entry.js.map → p-798bac47.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-a4111a43.entry.js.map → p-8483cd8b.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-931bea3a.entry.js.map → p-8c2f0377.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-e4e2cb61.entry.js.map → p-93bd4d23.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-25204236.entry.js.map → p-95ec862e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-5adfcd7e.entry.js.map → p-9a3dcf80.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-6cdf16ac.entry.js.map → p-9d5deba6.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-d28a7068.entry.js.map → p-a264b181.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-95fa97a9.entry.js.map → p-aa4ddfa1.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-9dea2f39.entry.js.map → p-ad964a8e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-08000970.entry.js.map → p-ada217d5.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-197a694e.entry.js.map → p-aed34c29.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-94069aff.entry.js.map → p-b4805c08.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-277bb102.entry.js.map → p-bb4c4e16.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-a5004a01.entry.js.map → p-bb7f1387.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-b4c2fdf2.entry.js.map → p-bcceb61b.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-68f93962.entry.js.map → p-bf070798.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-110ca863.entry.js.map → p-c02b7133.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-ca98ee5d.entry.js.map → p-c278daa3.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-428aa721.entry.js.map → p-c398550f.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-803b2bb5.entry.js.map → p-c77adac8.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-ea0cfe62.entry.js.map → p-cc3a84a1.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-91b264d1.entry.js.map → p-cc869e6f.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-a1d06611.entry.js.map → p-ccbc7c44.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-3ac699ae.entry.js.map → p-d18146ca.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-65aec904.entry.js.map → p-d2f5d210.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-bb2421dc.entry.js.map → p-d8cae37d.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-e2bac6be.entry.js.map → p-db817793.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-c3246505.entry.js.map → p-dbb7e719.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-df4d1f42.entry.js.map → p-de771d14.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-187d02cb.entry.js.map → p-e369abbb.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-67b7b947.entry.js.map → p-e44b8ebb.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-6461fb4b.entry.js.map → p-e78304f0.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-25aaf6a6.entry.js.map → p-ea5f2427.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-95891f3a.entry.js.map → p-ea952c66.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-22f022ca.entry.js.map → p-eaa1025a.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-ef8f15e9.entry.js.map → p-f05cd056.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-2ef45489.entry.js.map → p-fad06d00.entry.js.map} +0 -0
|
@@ -20,7 +20,23 @@ const meta = {
|
|
|
20
20
|
component: `
|
|
21
21
|
<strong class="mr-2">Statut du composant :</strong> <spw-tag size="small" variant="green">Prêt</spw-tag>
|
|
22
22
|
|
|
23
|
-
Le
|
|
23
|
+
Le composant Button est un élément d'interaction essentiel permettant à l'utilisateur d'effectuer des actions dans l'interface. Il offre plusieurs variantes visuelles et états pour s'adapter à tous les contextes d'utilisation.
|
|
24
|
+
|
|
25
|
+
## Variantes disponibles
|
|
26
|
+
|
|
27
|
+
- **primary** : Action principale, attire l'attention
|
|
28
|
+
- **secondary** : Action secondaire, moins proéminente
|
|
29
|
+
- **tertiary** : Action tertiaire, discrète
|
|
30
|
+
|
|
31
|
+
## Fonctionnalités
|
|
32
|
+
|
|
33
|
+
- Support des icônes FontAwesome (gauche, droite ou seule)
|
|
34
|
+
- État de chargement avec loader intégré
|
|
35
|
+
- Mode icône seule pour actions compactes
|
|
36
|
+
- États disabled et hover
|
|
37
|
+
- Tailles configurables (small, medium, large)
|
|
38
|
+
- Attributs href et target pour comportement lien
|
|
39
|
+
|
|
24
40
|
|
|
25
41
|
[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/9055b6-bouton)
|
|
26
42
|
`,
|
|
@@ -88,4 +104,46 @@ IconOnly.args = {
|
|
|
88
104
|
icon: 'fa-arrow-right',
|
|
89
105
|
label: '',
|
|
90
106
|
};
|
|
107
|
+
Primary.parameters = {
|
|
108
|
+
docs: {
|
|
109
|
+
description: {
|
|
110
|
+
story: `Bouton primary avec fond coloré. C'est le variant le plus proéminent, utilisé pour l'action principale d'une page ou d'un formulaire. Cas d'usage : soumettre un formulaire, confirmer une action importante, accéder à la fonctionnalité principale.`,
|
|
111
|
+
},
|
|
112
|
+
},
|
|
113
|
+
};
|
|
114
|
+
Secondary.parameters = {
|
|
115
|
+
docs: {
|
|
116
|
+
description: {
|
|
117
|
+
story: `Bouton secondary avec bordure. Moins proéminent que le primary, idéal pour les actions secondaires. Cas d'usage : annuler, actions alternatives dans un formulaire, boutons d'action dans les modales.`,
|
|
118
|
+
},
|
|
119
|
+
},
|
|
120
|
+
};
|
|
121
|
+
Tertiary.parameters = {
|
|
122
|
+
docs: {
|
|
123
|
+
description: {
|
|
124
|
+
story: `Bouton tertiary discret, style texte simple. Pour les actions peu prioritaires ou inline dans le contenu. Cas d'usage : liens d'action dans du texte, actions optionnelles, navigation secondaire.`,
|
|
125
|
+
},
|
|
126
|
+
},
|
|
127
|
+
};
|
|
128
|
+
WithIcon.parameters = {
|
|
129
|
+
docs: {
|
|
130
|
+
description: {
|
|
131
|
+
story: `Bouton avec icône positionnée à droite (fa-arrow-right). L'icône renforce visuellement l'action et améliore la compréhension. Cas d'usage : navigation ("Suivant", "Continuer"), téléchargement, actions avec direction.`,
|
|
132
|
+
},
|
|
133
|
+
},
|
|
134
|
+
};
|
|
135
|
+
WithLoader.parameters = {
|
|
136
|
+
docs: {
|
|
137
|
+
description: {
|
|
138
|
+
story: `Bouton avec état de chargement (isLoading). Le loader remplace l'icône pendant le traitement. Cas d'usage : soumission de formulaire asynchrone, appels API, actions nécessitant un feedback visuel d'attente.`,
|
|
139
|
+
},
|
|
140
|
+
},
|
|
141
|
+
};
|
|
142
|
+
IconOnly.parameters = {
|
|
143
|
+
docs: {
|
|
144
|
+
description: {
|
|
145
|
+
story: `Bouton avec icône seule, sans texte (isIconOnly). Format compact pour les espaces restreints. Cas d'usage : actions dans toolbars, boutons de modification/suppression dans tableaux, actions répétitives où l'icône suffit à la compréhension.`,
|
|
146
|
+
},
|
|
147
|
+
},
|
|
148
|
+
};
|
|
91
149
|
//# sourceMappingURL=spw-button.stories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spw-button.stories.js","sourceRoot":"","sources":["../../../../src/stories/components/spw-button/spw-button.stories.ts"],"names":[],"mappings":"AAAA,IAAI,cAAmB,CAAC;AAExB,IAAI,CAAC;IACH,cAAc,GAAG,OAAO,CAAC,uCAAuC,CAAC,CAAC;AACpE,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,OAAO,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;IACpF,cAAc,GAAG,EAAE,CAAC;AACtB,CAAC;AAGD,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAElE,MAAM,UAAU,GAAG,YAAY,CAAC;AAEhC,MAAM,QAAQ,GAAG,qBAAqB,CAAC,cAAc,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;AAE5E,MAAM,IAAI,GAAS;IACjB,KAAK,EAAE,mBAAmB;IAC1B,SAAS,EAAE,UAAU;IACrB,QAAQ;IACR,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,WAAW,EAAE;gBACX,SAAS,EAAE
|
|
1
|
+
{"version":3,"file":"spw-button.stories.js","sourceRoot":"","sources":["../../../../src/stories/components/spw-button/spw-button.stories.ts"],"names":[],"mappings":"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","sourcesContent":["let componentsData: any;\n\ntry {\n componentsData = require('../../../../dist/components_json.json');\n} catch (error) {\n console.warn('components_json.json non trouvé. Utilisation de valeurs par défaut.');\n componentsData = {};\n}\n\nimport { Meta, StoryFn } from '@storybook/web-components';\nimport { withComponentControls, toKebabCase } from '@utils/utils';\n\nconst elementTag = 'spw-button';\n\nconst argTypes = withComponentControls(componentsData, { tag: elementTag });\n\nconst meta: Meta = {\n title: 'Composants/Bouton',\n component: elementTag,\n argTypes,\n tags: ['autodocs'],\n parameters: {\n docs: {\n description: {\n component: `\n<strong class=\"mr-2\">Statut du composant :</strong> <spw-tag size=\"small\" variant=\"green\">Prêt</spw-tag>\n\nLe composant Button est un élément d'interaction essentiel permettant à l'utilisateur d'effectuer des actions dans l'interface. Il offre plusieurs variantes visuelles et états pour s'adapter à tous les contextes d'utilisation.\n\n## Variantes disponibles\n\n- **primary** : Action principale, attire l'attention\n- **secondary** : Action secondaire, moins proéminente\n- **tertiary** : Action tertiaire, discrète\n\n## Fonctionnalités\n\n- Support des icônes FontAwesome (gauche, droite ou seule)\n- État de chargement avec loader intégré\n- Mode icône seule pour actions compactes\n- États disabled et hover\n- Tailles configurables (small, medium, large)\n- Attributs href et target pour comportement lien\n\n\n[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/9055b6-bouton)\n `,\n },\n },\n },\n};\n\nexport default meta;\n\nfunction htmlContent(slot) {\n return /* HTML */ `${slot}`;\n}\n\nconst Template: StoryFn = args => {\n const element = document.createElement(elementTag);\n const hasSlot = true;\n const slottedLabel = 'label';\n\n Object.entries(args).forEach(([key, val]) => {\n if (key.startsWith('on')) {\n element.addEventListener(key.substring(2).toLowerCase(), val);\n } else {\n if (key !== slottedLabel) {\n element.setAttribute(toKebabCase(key), val as string);\n }\n }\n });\n\n if (hasSlot) {\n element.innerHTML = htmlContent(args[slottedLabel]);\n }\n\n return element;\n};\n\nexport const Primary = Template.bind({});\nPrimary.args = {\n variant: 'primary',\n label: 'Primary Button',\n};\n\nexport const Secondary = Template.bind({});\nSecondary.args = {\n variant: 'secondary',\n label: 'Secondary Button',\n};\n\nexport const Tertiary = Template.bind({});\nTertiary.args = {\n variant: 'tertiary',\n label: 'Tertiary Button',\n};\n\nexport const WithIcon = Template.bind({});\nWithIcon.args = {\n variant: 'primary',\n label: 'Button with icon',\n icon: 'fa-arrow-right',\n iconPosition: 'right',\n};\n\nexport const WithLoader = Template.bind({});\nWithLoader.args = {\n variant: 'primary',\n label: 'Button with icon',\n icon: 'fa-arrow-right',\n iconPosition: 'right',\n isLoading: true,\n};\n\nexport const IconOnly = Template.bind({});\nIconOnly.args = {\n variant: 'primary',\n isIconOnly: true,\n icon: 'fa-arrow-right',\n label: '',\n};\n\nPrimary.parameters = {\n docs: {\n description: {\n story: `Bouton primary avec fond coloré. C'est le variant le plus proéminent, utilisé pour l'action principale d'une page ou d'un formulaire. Cas d'usage : soumettre un formulaire, confirmer une action importante, accéder à la fonctionnalité principale.`,\n },\n },\n};\n\nSecondary.parameters = {\n docs: {\n description: {\n story: `Bouton secondary avec bordure. Moins proéminent que le primary, idéal pour les actions secondaires. Cas d'usage : annuler, actions alternatives dans un formulaire, boutons d'action dans les modales.`,\n },\n },\n};\n\nTertiary.parameters = {\n docs: {\n description: {\n story: `Bouton tertiary discret, style texte simple. Pour les actions peu prioritaires ou inline dans le contenu. Cas d'usage : liens d'action dans du texte, actions optionnelles, navigation secondaire.`,\n },\n },\n};\n\nWithIcon.parameters = {\n docs: {\n description: {\n story: `Bouton avec icône positionnée à droite (fa-arrow-right). L'icône renforce visuellement l'action et améliore la compréhension. Cas d'usage : navigation (\"Suivant\", \"Continuer\"), téléchargement, actions avec direction.`,\n },\n },\n};\n\nWithLoader.parameters = {\n docs: {\n description: {\n story: `Bouton avec état de chargement (isLoading). Le loader remplace l'icône pendant le traitement. Cas d'usage : soumission de formulaire asynchrone, appels API, actions nécessitant un feedback visuel d'attente.`,\n },\n },\n};\n\nIconOnly.parameters = {\n docs: {\n description: {\n story: `Bouton avec icône seule, sans texte (isIconOnly). Format compact pour les espaces restreints. Cas d'usage : actions dans toolbars, boutons de modification/suppression dans tableaux, actions répétitives où l'icône suffit à la compréhension.`,\n },\n },\n};\n"]}
|
|
@@ -21,7 +21,29 @@ const meta = {
|
|
|
21
21
|
component: `
|
|
22
22
|
<strong class="mr-2">Statut du composant :</strong> <spw-tag size="small" variant="green">Prêt</spw-tag>
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
Le composant Checkbox permet aux utilisateurs de sélectionner une ou plusieurs options dans un formulaire. Il existe en deux variantes : case à cocher classique et toggle switch pour des options de type activation/désactivation.
|
|
25
|
+
|
|
26
|
+
## Variantes disponibles
|
|
27
|
+
|
|
28
|
+
- **checkbox** : Case à cocher standard (par défaut)
|
|
29
|
+
- **toggle** : Interrupteur pour activer/désactiver une option
|
|
30
|
+
|
|
31
|
+
## Fonctionnalités
|
|
32
|
+
|
|
33
|
+
- Sélection multiple indépendante
|
|
34
|
+
- États coché, non coché et indéterminé
|
|
35
|
+
- Label associé cliquable
|
|
36
|
+
- Groupement avec spw-group
|
|
37
|
+
- États disabled et error
|
|
38
|
+
- Support du clavier et accessibilité ARIA
|
|
39
|
+
|
|
40
|
+
## Cas d'usage
|
|
41
|
+
|
|
42
|
+
- Sélection de préférences multiples
|
|
43
|
+
- Filtres dans recherches et listes
|
|
44
|
+
- Activation de fonctionnalités optionnelles
|
|
45
|
+
- Consentements et autorisations
|
|
46
|
+
- Choix multiples dans formulaires
|
|
25
47
|
|
|
26
48
|
[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/68897f-case-a-cocher-checkbox)
|
|
27
49
|
`,
|
|
@@ -85,4 +107,18 @@ Toggle.args = {
|
|
|
85
107
|
label: 'Mon label toggle',
|
|
86
108
|
type: 'checkboxes',
|
|
87
109
|
};
|
|
110
|
+
Default.parameters = {
|
|
111
|
+
docs: {
|
|
112
|
+
description: {
|
|
113
|
+
story: `Groupe de checkboxes standard permettant la sélection multiple. Chaque checkbox est indépendante et peut être cochée ou décochée séparément. Cas d'usage : sélection de préférences, acceptation de conditions, filtres multiples, choix d'options dans formulaires.`,
|
|
114
|
+
},
|
|
115
|
+
},
|
|
116
|
+
};
|
|
117
|
+
Toggle.parameters = {
|
|
118
|
+
docs: {
|
|
119
|
+
description: {
|
|
120
|
+
story: `Checkbox en mode toggle (interrupteur). Idéal pour activer ou désactiver une fonctionnalité de manière plus visuelle. Cas d'usage : activation de notifications, paramètres on/off, préférences de confidentialité, options de visibilité.`,
|
|
121
|
+
},
|
|
122
|
+
},
|
|
123
|
+
};
|
|
88
124
|
//# sourceMappingURL=spw-checkbox.stories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spw-checkbox.stories.js","sourceRoot":"","sources":["../../../../src/stories/components/spw-checkbox/spw-checkbox.stories.ts"],"names":[],"mappings":"AAAA,IAAI,cAAmB,CAAC;AAExB,IAAI,CAAC;IACH,cAAc,GAAG,OAAO,CAAC,uCAAuC,CAAC,CAAC;AACpE,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,OAAO,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;IACpF,cAAc,GAAG,EAAE,CAAC;AACtB,CAAC;AAGD,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEnF,MAAM,UAAU,GAAG,WAAW,CAAC;AAE/B,MAAM,gBAAgB,GAAG,CAAC,cAAc,CAAC,CAAC;AAE1C,MAAM,QAAQ,mCACT,qBAAqB,CAAC,cAAc,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,GAC1D,eAAe,CAAC,cAAc,EAAE,gBAAgB,CAAC,CACrD,CAAC;AAEF,MAAM,IAAI,GAAS;IACjB,KAAK,EAAE,2CAA2C;IAClD,SAAS,EAAE,UAAU;IACrB,QAAQ;IACR,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,WAAW,EAAE;gBACX,SAAS,EAAE
|
|
1
|
+
{"version":3,"file":"spw-checkbox.stories.js","sourceRoot":"","sources":["../../../../src/stories/components/spw-checkbox/spw-checkbox.stories.ts"],"names":[],"mappings":"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","sourcesContent":["let componentsData: any;\n\ntry {\n componentsData = require('../../../../dist/components_json.json');\n} catch (error) {\n console.warn('components_json.json non trouvé. Utilisation de valeurs par défaut.');\n componentsData = {};\n}\n\nimport { Meta, StoryFn } from '@storybook/web-components';\nimport { withComponentControls, extractArgTypes, toKebabCase } from '@utils/utils';\n\nconst elementTag = 'spw-group';\n\nconst subComponentTags = ['spw-checkbox'];\n\nconst argTypes = {\n ...withComponentControls(componentsData, { tag: elementTag }),\n ...extractArgTypes(componentsData, subComponentTags),\n};\n\nconst meta: Meta = {\n title: 'Composants/Case à cocher (input checkbox)',\n component: elementTag,\n argTypes,\n tags: ['autodocs'],\n parameters: {\n docs: {\n description: {\n component: `\n<strong class=\"mr-2\">Statut du composant :</strong> <spw-tag size=\"small\" variant=\"green\">Prêt</spw-tag>\n\nLe composant Checkbox permet aux utilisateurs de sélectionner une ou plusieurs options dans un formulaire. Il existe en deux variantes : case à cocher classique et toggle switch pour des options de type activation/désactivation.\n\n## Variantes disponibles\n\n- **checkbox** : Case à cocher standard (par défaut)\n- **toggle** : Interrupteur pour activer/désactiver une option\n\n## Fonctionnalités\n\n- Sélection multiple indépendante\n- États coché, non coché et indéterminé\n- Label associé cliquable\n- Groupement avec spw-group\n- États disabled et error\n- Support du clavier et accessibilité ARIA\n\n## Cas d'usage\n\n- Sélection de préférences multiples\n- Filtres dans recherches et listes\n- Activation de fonctionnalités optionnelles\n- Consentements et autorisations\n- Choix multiples dans formulaires\n\n[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/68897f-case-a-cocher-checkbox)\n `,\n },\n },\n },\n};\n\nexport default meta;\n\nfunction htmlContent() {\n return /* HTML */ `\n <spw-checkbox name=\"checkbox\" value=\"1\">Checkbox 1</spw-checkbox>\n <spw-checkbox name=\"checkbox\" value=\"2\">Checkbox 2</spw-checkbox>\n `;\n}\n\nfunction htmlContentToggle() {\n return /* HTML */ `<spw-checkbox error=\"false\" variant=\"toggle\" value=\"false\" name=\"mon-checkbox-toggle\" id=\"mon-checkbox-toggle\">Mon toggle</spw-checkbox> `;\n}\n\nconst Template: StoryFn = args => {\n const element = document.createElement(elementTag);\n const hasSlot = true;\n\n const controls = withComponentControls(componentsData, { tag: elementTag }) || {};\n const masterProps = controls.__realProps || Object.keys(controls);\n\n Object.entries(args).forEach(([key, val]) => {\n if (masterProps.includes(key)) {\n element.setAttribute(toKebabCase(key), val as string);\n } else if (key.startsWith('on')) {\n element.addEventListener(key.substring(2).toLowerCase(), val);\n }\n });\n\n if (hasSlot) {\n element.innerHTML = htmlContent();\n }\n\n return element;\n};\n\nconst ToggleTemplate: StoryFn = args => {\n const element = document.createElement(elementTag);\n const hasSlot = true;\n\n const controls = withComponentControls(componentsData, { tag: elementTag }) || {};\n const masterProps = controls.__realProps || Object.keys(controls);\n\n Object.entries(args).forEach(([key, val]) => {\n if (masterProps.includes(key)) {\n element.setAttribute(toKebabCase(key), val as string);\n } else if (key.startsWith('on')) {\n element.addEventListener(key.substring(2).toLowerCase(), val);\n }\n });\n\n if (hasSlot) {\n element.innerHTML = htmlContentToggle();\n }\n\n return element;\n};\n\nexport const Default = Template.bind({});\nDefault.args = {\n label: 'Mon label',\n type: 'checkboxes',\n};\n\nexport const Toggle = ToggleTemplate.bind({});\nToggle.args = {\n label: 'Mon label toggle',\n type: 'checkboxes',\n};\n\nDefault.parameters = {\n docs: {\n description: {\n story: `Groupe de checkboxes standard permettant la sélection multiple. Chaque checkbox est indépendante et peut être cochée ou décochée séparément. Cas d'usage : sélection de préférences, acceptation de conditions, filtres multiples, choix d'options dans formulaires.`,\n },\n },\n};\n\nToggle.parameters = {\n docs: {\n description: {\n story: `Checkbox en mode toggle (interrupteur). Idéal pour activer ou désactiver une fonctionnalité de manière plus visuelle. Cas d'usage : activation de notifications, paramètres on/off, préférences de confidentialité, options de visibilité.`,\n },\n },\n};\n"]}
|
|
@@ -21,7 +21,24 @@ const meta = {
|
|
|
21
21
|
component: `
|
|
22
22
|
<strong class="mr-2">Statut du composant :</strong> <spw-tag size="small" variant="green">Prêt</spw-tag>
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
Le composant Custom Select est une version avancée du select standard, offrant recherche intégrée, multi-sélection et messages de validation enrichis. Idéal pour les listes longues ou les sélections complexes.
|
|
25
|
+
|
|
26
|
+
## Fonctionnalités
|
|
27
|
+
|
|
28
|
+
- Sélection simple ou multiple
|
|
29
|
+
- Messages d'état (erreur, succès, warning)
|
|
30
|
+
- Label et placeholder personnalisables
|
|
31
|
+
- Texte d'assistance avec icône
|
|
32
|
+
- Liste d'options dynamiques via JSON
|
|
33
|
+
- Événements personnalisés pour les changements
|
|
34
|
+
|
|
35
|
+
## Cas d'usage
|
|
36
|
+
|
|
37
|
+
- Sélection de tags ou catégories multiples
|
|
38
|
+
- Formulaires avec listes longues nécessitant recherche
|
|
39
|
+
- Filtres avancés avec multi-critères
|
|
40
|
+
- Configuration de paramètres complexes
|
|
41
|
+
- Sélection dans une liste étendue
|
|
25
42
|
|
|
26
43
|
[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/7029dd-champ-de-selection-select)
|
|
27
44
|
`,
|
|
@@ -105,4 +122,46 @@ AvecSucces.args = Object.assign(Object.assign({}, Default.args), { label: 'Champ
|
|
|
105
122
|
// --- AVEC WARNING ---
|
|
106
123
|
export const AvecWarning = Template.bind({});
|
|
107
124
|
AvecWarning.args = Object.assign(Object.assign({}, Default.args), { label: 'Champ avec avertissement', warning: 'Cette option peut avoir des conséquences inattendues' });
|
|
125
|
+
Default.parameters = {
|
|
126
|
+
docs: {
|
|
127
|
+
description: {
|
|
128
|
+
story: `Custom Select par défaut avec sélection simple. Liste déroulante stylisée avec options définies via JSON. Cas d'usage : sélection dans listes moyennes, formulaires nécessitant un style cohérent, alternatives au select natif.`,
|
|
129
|
+
},
|
|
130
|
+
},
|
|
131
|
+
};
|
|
132
|
+
Multiple.parameters = {
|
|
133
|
+
docs: {
|
|
134
|
+
description: {
|
|
135
|
+
story: `Custom Select avec sélection multiple activée. Les options sélectionnées s'affichent comme tags sous le champ. Cas d'usage : sélection de tags, catégories multiples, destinataires multiples, filtres combinés.`,
|
|
136
|
+
},
|
|
137
|
+
},
|
|
138
|
+
};
|
|
139
|
+
AvecRecherche.parameters = {
|
|
140
|
+
docs: {
|
|
141
|
+
description: {
|
|
142
|
+
story: `Custom Select avec recherche intégrée. Filtrage en temps réel des options pendant la saisie. Cas d'usage : listes longues de villes ou pays, recherche de contacts, sélection dans catalogues étendus.`,
|
|
143
|
+
},
|
|
144
|
+
},
|
|
145
|
+
};
|
|
146
|
+
AvecErreur.parameters = {
|
|
147
|
+
docs: {
|
|
148
|
+
description: {
|
|
149
|
+
story: `Custom Select en état d'erreur avec message. Affichage visuel distinctif pour indiquer une validation échouée. Cas d'usage : validation de formulaire, indication d'erreur après soumission, champs requis non remplis.`,
|
|
150
|
+
},
|
|
151
|
+
},
|
|
152
|
+
};
|
|
153
|
+
AvecSucces.parameters = {
|
|
154
|
+
docs: {
|
|
155
|
+
description: {
|
|
156
|
+
story: `Custom Select avec message de succès. Confirmation visuelle d'une sélection valide ou enregistrée. Cas d'usage : feedback positif après validation, confirmation d'enregistrement, indication de sélection correcte.`,
|
|
157
|
+
},
|
|
158
|
+
},
|
|
159
|
+
};
|
|
160
|
+
AvecWarning.parameters = {
|
|
161
|
+
docs: {
|
|
162
|
+
description: {
|
|
163
|
+
story: `Custom Select avec avertissement. Message d'alerte pour signaler une situation particulière sans bloquer l'action. Cas d'usage : options avec conséquences importantes, choix nécessitant attention, informations complémentaires critiques.`,
|
|
164
|
+
},
|
|
165
|
+
},
|
|
166
|
+
};
|
|
108
167
|
//# sourceMappingURL=spw-custom-select.stories.js.map
|
package/dist/collection/stories/components/spw-custom-select/spw-custom-select.stories.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spw-custom-select.stories.js","sourceRoot":"","sources":["../../../../src/stories/components/spw-custom-select/spw-custom-select.stories.ts"],"names":[],"mappings":"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","sourcesContent":["let componentsData: any;\n\ntry {\n componentsData = require('../../../../dist/components_json.json');\n} catch (error) {\n console.warn('components_json.json non trouvé. Utilisation de valeurs par défaut.');\n componentsData = {};\n}\n\nimport { Meta, StoryFn } from '@storybook/web-components';\nimport { withComponentControls, toKebabCase } from '@utils/utils';\nimport { action } from '@storybook/addon-actions';\n\nconst elementTag = 'spw-custom-select';\n\nconst argTypes = withComponentControls(componentsData, { tag: elementTag });\n\nconst meta: Meta = {\n title: 'Composants/Champ de sélection personnalisé (Custom Select)',\n component: elementTag,\n argTypes,\n tags: ['autodocs'],\n parameters: {\n docs: {\n description: {\n component: `\n<strong class=\"mr-2\">Statut du composant :</strong> <spw-tag size=\"small\" variant=\"green\">Prêt</spw-tag>\n\nPermet aux utilisateurs de sélectionner une ou plusieurs options dans une liste personnalisée avec recherche, multi-sélection et gestion d’erreurs.\n\n[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/7029dd-champ-de-selection-select)\n `,\n },\n },\n },\n};\n\nexport default meta;\n\n/* -------------------------------------------------------------------------------------------------\n * TEMPLATE STORY\n * ------------------------------------------------------------------------------------------------- */\nconst Template: StoryFn = args => {\n const element = document.createElement(elementTag);\n\n const controls = withComponentControls(componentsData, { tag: elementTag }) || {};\n const masterProps = controls.__realProps || Object.keys(controls);\n\n // Application des props du story aux attributs du composant\n Object.entries(args).forEach(([key, val]) => {\n if (val === undefined || val === null) return;\n\n if (key === 'items' && Array.isArray(val)) {\n // Les arrays doivent être passés en JSON\n element.setAttribute('items', JSON.stringify(val));\n } else if (masterProps.includes(key)) {\n element.setAttribute(toKebabCase(key), String(val));\n } else if (key.startsWith('on')) {\n element.addEventListener(key.substring(2).toLowerCase(), val);\n }\n });\n\n // Ajout de l’action Storybook pour suivre les changements de valeur\n element.addEventListener('valueChanged', (event: CustomEvent) => {\n action('valueChanged')(event.detail);\n });\n\n return element;\n};\n\n/* -------------------------------------------------------------------------------------------------\n * STORIES\n * ------------------------------------------------------------------------------------------------- */\n\n// --- STORY PAR DÉFAUT ---\nexport const Default = Template.bind({});\nDefault.args = {\n label: 'Sélection simple',\n name: 'custom-select',\n placeholder: 'Choisissez une option',\n hint: 'Ceci est un texte d’aide',\n showHintIcon: false,\n size: 'medium',\n required: false,\n isSearch: false,\n multiple: false,\n items: [\n { label: 'Option 1', value: '1' },\n { label: 'Option 2', value: '2' },\n { label: 'Option 3', value: '3' },\n ],\n};\n\n// --- MULTI-SÉLECTION ---\nexport const Multiple = Template.bind({});\nMultiple.args = {\n ...Default.args,\n label: 'Sélection multiple',\n multiple: true,\n placeholder: 'Sélectionnez une ou plusieurs options',\n items: [\n { label: 'Pomme', value: 'apple' },\n { label: 'Banane', value: 'banana' },\n { label: 'Cerise', value: 'cherry' },\n { label: 'Mangue', value: 'mango' },\n ],\n};\n\n// --- AVEC RECHERCHE ---\nexport const AvecRecherche = Template.bind({});\nAvecRecherche.args = {\n ...Default.args,\n label: 'Sélection avec recherche',\n isSearch: true,\n placeholder: 'Rechercher une option...',\n items: [\n { label: 'Paris', value: 'paris' },\n { label: 'Londres', value: 'london' },\n { label: 'Berlin', value: 'berlin' },\n { label: 'Madrid', value: 'madrid' },\n { label: 'Rome', value: 'rome' },\n ],\n};\n\n// --- AVEC ERREUR ---\nexport const AvecErreur = Template.bind({});\nAvecErreur.args = {\n ...Default.args,\n label: 'Champ avec erreur',\n error: 'Veuillez sélectionner une option valide',\n};\n\n// --- AVEC MESSAGE DE SUCCÈS ---\nexport const AvecSucces = Template.bind({});\nAvecSucces.args = {\n ...Default.args,\n label: 'Champ avec succès',\n success: 'Sélection enregistrée avec succès !',\n};\n\n// --- AVEC WARNING ---\nexport const AvecWarning = Template.bind({});\nAvecWarning.args = {\n ...Default.args,\n label: 'Champ avec avertissement',\n warning: 'Cette option peut avoir des conséquences inattendues',\n};\n"]}
|
|
1
|
+
{"version":3,"file":"spw-custom-select.stories.js","sourceRoot":"","sources":["../../../../src/stories/components/spw-custom-select/spw-custom-select.stories.ts"],"names":[],"mappings":"AAAA,IAAI,cAAmB,CAAC;AAExB,IAAI,CAAC;IACH,cAAc,GAAG,OAAO,CAAC,uCAAuC,CAAC,CAAC;AACpE,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,OAAO,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;IACpF,cAAc,GAAG,EAAE,CAAC;AACtB,CAAC;AAGD,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,MAAM,UAAU,GAAG,mBAAmB,CAAC;AAEvC,MAAM,QAAQ,GAAG,qBAAqB,CAAC,cAAc,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;AAE5E,MAAM,IAAI,GAAS;IACjB,KAAK,EAAE,4DAA4D;IACnE,SAAS,EAAE,UAAU;IACrB,QAAQ;IACR,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,WAAW,EAAE;gBACX,SAAS,EAAE;;;;;;;;;;;;;;;;;;;;;;;SAuBV;aACF;SACF;KACF;CACF,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB;;uGAEuG;AACvG,MAAM,QAAQ,GAAY,IAAI,CAAC,EAAE;IAC/B,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAEnD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,cAAc,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC;IAClF,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAElE,4DAA4D;IAC5D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE;QAC1C,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO;QAE9C,IAAI,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,yCAAyC;YACzC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;QACrD,CAAC;aAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACrC,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACtD,CAAC;aAAM,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;QAChE,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,oEAAoE;IACpE,OAAO,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAC,KAAkB,EAAE,EAAE;QAC9D,MAAM,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF;;uGAEuG;AAEvG,2BAA2B;AAC3B,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACzC,OAAO,CAAC,IAAI,GAAG;IACb,KAAK,EAAE,kBAAkB;IACzB,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,uBAAuB;IACpC,IAAI,EAAE,0BAA0B;IAChC,YAAY,EAAE,KAAK;IACnB,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE,KAAK;IACf,KAAK,EAAE;QACL,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE;QACjC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE;QACjC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE;KAClC;CACF,CAAC;AAEF,0BAA0B;AAC1B,MAAM,CAAC,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC1C,QAAQ,CAAC,IAAI,mCACR,OAAO,CAAC,IAAI,KACf,KAAK,EAAE,oBAAoB,EAC3B,QAAQ,EAAE,IAAI,EACd,WAAW,EAAE,uCAAuC,EACpD,KAAK,EAAE;QACL,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;QAClC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;QACpC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;QACpC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE;KACpC,GACF,CAAC;AAEF,yBAAyB;AACzB,MAAM,CAAC,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC/C,aAAa,CAAC,IAAI,mCACb,OAAO,CAAC,IAAI,KACf,KAAK,EAAE,0BAA0B,EACjC,QAAQ,EAAE,IAAI,EACd,WAAW,EAAE,0BAA0B,EACvC,KAAK,EAAE;QACL,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;QAClC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE;QACrC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;QACpC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;QACpC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;KACjC,GACF,CAAC;AAEF,sBAAsB;AACtB,MAAM,CAAC,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC5C,UAAU,CAAC,IAAI,mCACV,OAAO,CAAC,IAAI,KACf,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,yCAAyC,GACjD,CAAC;AAEF,iCAAiC;AACjC,MAAM,CAAC,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC5C,UAAU,CAAC,IAAI,mCACV,OAAO,CAAC,IAAI,KACf,KAAK,EAAE,mBAAmB,EAC1B,OAAO,EAAE,qCAAqC,GAC/C,CAAC;AAEF,uBAAuB;AACvB,MAAM,CAAC,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC7C,WAAW,CAAC,IAAI,mCACX,OAAO,CAAC,IAAI,KACf,KAAK,EAAE,0BAA0B,EACjC,OAAO,EAAE,sDAAsD,GAChE,CAAC;AAEF,OAAO,CAAC,UAAU,GAAG;IACnB,IAAI,EAAE;QACJ,WAAW,EAAE;YACX,KAAK,EAAE,kOAAkO;SAC1O;KACF;CACF,CAAC;AAEF,QAAQ,CAAC,UAAU,GAAG;IACpB,IAAI,EAAE;QACJ,WAAW,EAAE;YACX,KAAK,EAAE,kNAAkN;SAC1N;KACF;CACF,CAAC;AAEF,aAAa,CAAC,UAAU,GAAG;IACzB,IAAI,EAAE;QACJ,WAAW,EAAE;YACX,KAAK,EAAE,wMAAwM;SAChN;KACF;CACF,CAAC;AAEF,UAAU,CAAC,UAAU,GAAG;IACtB,IAAI,EAAE;QACJ,WAAW,EAAE;YACX,KAAK,EAAE,yNAAyN;SACjO;KACF;CACF,CAAC;AAEF,UAAU,CAAC,UAAU,GAAG;IACtB,IAAI,EAAE;QACJ,WAAW,EAAE;YACX,KAAK,EAAE,sNAAsN;SAC9N;KACF;CACF,CAAC;AAEF,WAAW,CAAC,UAAU,GAAG;IACvB,IAAI,EAAE;QACJ,WAAW,EAAE;YACX,KAAK,EAAE,8OAA8O;SACtP;KACF;CACF,CAAC","sourcesContent":["let componentsData: any;\n\ntry {\n componentsData = require('../../../../dist/components_json.json');\n} catch (error) {\n console.warn('components_json.json non trouvé. Utilisation de valeurs par défaut.');\n componentsData = {};\n}\n\nimport { Meta, StoryFn } from '@storybook/web-components';\nimport { withComponentControls, toKebabCase } from '@utils/utils';\nimport { action } from '@storybook/addon-actions';\n\nconst elementTag = 'spw-custom-select';\n\nconst argTypes = withComponentControls(componentsData, { tag: elementTag });\n\nconst meta: Meta = {\n title: 'Composants/Champ de sélection personnalisé (Custom Select)',\n component: elementTag,\n argTypes,\n tags: ['autodocs'],\n parameters: {\n docs: {\n description: {\n component: `\n<strong class=\"mr-2\">Statut du composant :</strong> <spw-tag size=\"small\" variant=\"green\">Prêt</spw-tag>\n\nLe composant Custom Select est une version avancée du select standard, offrant recherche intégrée, multi-sélection et messages de validation enrichis. Idéal pour les listes longues ou les sélections complexes.\n\n## Fonctionnalités\n\n- Sélection simple ou multiple\n- Messages d'état (erreur, succès, warning)\n- Label et placeholder personnalisables\n- Texte d'assistance avec icône\n- Liste d'options dynamiques via JSON\n- Événements personnalisés pour les changements\n\n## Cas d'usage\n\n- Sélection de tags ou catégories multiples\n- Formulaires avec listes longues nécessitant recherche\n- Filtres avancés avec multi-critères\n- Configuration de paramètres complexes\n- Sélection dans une liste étendue\n\n[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/7029dd-champ-de-selection-select)\n `,\n },\n },\n },\n};\n\nexport default meta;\n\n/* -------------------------------------------------------------------------------------------------\n * TEMPLATE STORY\n * ------------------------------------------------------------------------------------------------- */\nconst Template: StoryFn = args => {\n const element = document.createElement(elementTag);\n\n const controls = withComponentControls(componentsData, { tag: elementTag }) || {};\n const masterProps = controls.__realProps || Object.keys(controls);\n\n // Application des props du story aux attributs du composant\n Object.entries(args).forEach(([key, val]) => {\n if (val === undefined || val === null) return;\n\n if (key === 'items' && Array.isArray(val)) {\n // Les arrays doivent être passés en JSON\n element.setAttribute('items', JSON.stringify(val));\n } else if (masterProps.includes(key)) {\n element.setAttribute(toKebabCase(key), String(val));\n } else if (key.startsWith('on')) {\n element.addEventListener(key.substring(2).toLowerCase(), val);\n }\n });\n\n // Ajout de l’action Storybook pour suivre les changements de valeur\n element.addEventListener('valueChanged', (event: CustomEvent) => {\n action('valueChanged')(event.detail);\n });\n\n return element;\n};\n\n/* -------------------------------------------------------------------------------------------------\n * STORIES\n * ------------------------------------------------------------------------------------------------- */\n\n// --- STORY PAR DÉFAUT ---\nexport const Default = Template.bind({});\nDefault.args = {\n label: 'Sélection simple',\n name: 'custom-select',\n placeholder: 'Choisissez une option',\n hint: 'Ceci est un texte d’aide',\n showHintIcon: false,\n size: 'medium',\n required: false,\n isSearch: false,\n multiple: false,\n items: [\n { label: 'Option 1', value: '1' },\n { label: 'Option 2', value: '2' },\n { label: 'Option 3', value: '3' },\n ],\n};\n\n// --- MULTI-SÉLECTION ---\nexport const Multiple = Template.bind({});\nMultiple.args = {\n ...Default.args,\n label: 'Sélection multiple',\n multiple: true,\n placeholder: 'Sélectionnez une ou plusieurs options',\n items: [\n { label: 'Pomme', value: 'apple' },\n { label: 'Banane', value: 'banana' },\n { label: 'Cerise', value: 'cherry' },\n { label: 'Mangue', value: 'mango' },\n ],\n};\n\n// --- AVEC RECHERCHE ---\nexport const AvecRecherche = Template.bind({});\nAvecRecherche.args = {\n ...Default.args,\n label: 'Sélection avec recherche',\n isSearch: true,\n placeholder: 'Rechercher une option...',\n items: [\n { label: 'Paris', value: 'paris' },\n { label: 'Londres', value: 'london' },\n { label: 'Berlin', value: 'berlin' },\n { label: 'Madrid', value: 'madrid' },\n { label: 'Rome', value: 'rome' },\n ],\n};\n\n// --- AVEC ERREUR ---\nexport const AvecErreur = Template.bind({});\nAvecErreur.args = {\n ...Default.args,\n label: 'Champ avec erreur',\n error: 'Veuillez sélectionner une option valide',\n};\n\n// --- AVEC MESSAGE DE SUCCÈS ---\nexport const AvecSucces = Template.bind({});\nAvecSucces.args = {\n ...Default.args,\n label: 'Champ avec succès',\n success: 'Sélection enregistrée avec succès !',\n};\n\n// --- AVEC WARNING ---\nexport const AvecWarning = Template.bind({});\nAvecWarning.args = {\n ...Default.args,\n label: 'Champ avec avertissement',\n warning: 'Cette option peut avoir des conséquences inattendues',\n};\n\nDefault.parameters = {\n docs: {\n description: {\n story: `Custom Select par défaut avec sélection simple. Liste déroulante stylisée avec options définies via JSON. Cas d'usage : sélection dans listes moyennes, formulaires nécessitant un style cohérent, alternatives au select natif.`,\n },\n },\n};\n\nMultiple.parameters = {\n docs: {\n description: {\n story: `Custom Select avec sélection multiple activée. Les options sélectionnées s'affichent comme tags sous le champ. Cas d'usage : sélection de tags, catégories multiples, destinataires multiples, filtres combinés.`,\n },\n },\n};\n\nAvecRecherche.parameters = {\n docs: {\n description: {\n story: `Custom Select avec recherche intégrée. Filtrage en temps réel des options pendant la saisie. Cas d'usage : listes longues de villes ou pays, recherche de contacts, sélection dans catalogues étendus.`,\n },\n },\n};\n\nAvecErreur.parameters = {\n docs: {\n description: {\n story: `Custom Select en état d'erreur avec message. Affichage visuel distinctif pour indiquer une validation échouée. Cas d'usage : validation de formulaire, indication d'erreur après soumission, champs requis non remplis.`,\n },\n },\n};\n\nAvecSucces.parameters = {\n docs: {\n description: {\n story: `Custom Select avec message de succès. Confirmation visuelle d'une sélection valide ou enregistrée. Cas d'usage : feedback positif après validation, confirmation d'enregistrement, indication de sélection correcte.`,\n },\n },\n};\n\nAvecWarning.parameters = {\n docs: {\n description: {\n story: `Custom Select avec avertissement. Message d'alerte pour signaler une situation particulière sans bloquer l'action. Cas d'usage : options avec conséquences importantes, choix nécessitant attention, informations complémentaires critiques.`,\n },\n },\n};\n"]}
|
|
@@ -20,7 +20,24 @@ const meta = {
|
|
|
20
20
|
component: `
|
|
21
21
|
<strong class="mr-2">Statut du composant :</strong> <spw-tag size="small" variant="green">Prêt</spw-tag>
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
Le composant Date Picker permet aux utilisateurs de sélectionner une date via un calendrier interactif ou une saisie manuelle. Il supporte les sélections simples, les dates avec contraintes et les plages de dates.
|
|
24
|
+
|
|
25
|
+
## Fonctionnalités
|
|
26
|
+
|
|
27
|
+
- Calendrier interactif pour sélection visuelle
|
|
28
|
+
- Saisie manuelle de date au format JJ/MM/AAAA
|
|
29
|
+
- Contraintes de dates min et max
|
|
30
|
+
- Mode plage pour sélectionner début et fin
|
|
31
|
+
- Synchronisation automatique des plages
|
|
32
|
+
- État désactivé
|
|
33
|
+
|
|
34
|
+
## Cas d'usage
|
|
35
|
+
|
|
36
|
+
- Sélection de date de naissance
|
|
37
|
+
- Réservations et planifications
|
|
38
|
+
- Filtres de dates dans recherches
|
|
39
|
+
- Plages de dates pour rapports
|
|
40
|
+
- Formulaires de demandes avec dates
|
|
24
41
|
|
|
25
42
|
[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/314e53-choix-de-date-date-picker)
|
|
26
43
|
`,
|
|
@@ -117,4 +134,46 @@ DateRangeWithValues.args = {
|
|
|
117
134
|
endPlaceholder: 'Choisissez une date de fin',
|
|
118
135
|
endValue: '2025-06-15',
|
|
119
136
|
};
|
|
137
|
+
Default.parameters = {
|
|
138
|
+
docs: {
|
|
139
|
+
description: {
|
|
140
|
+
story: `Date Picker par défaut avec label et placeholder. Calendrier interactif et saisie manuelle possibles. Cas d'usage : date de naissance, formulaires de demande, sélection de date simple.`,
|
|
141
|
+
},
|
|
142
|
+
},
|
|
143
|
+
};
|
|
144
|
+
WithValue.parameters = {
|
|
145
|
+
docs: {
|
|
146
|
+
description: {
|
|
147
|
+
story: `Date Picker avec valeur pré-remplie. Date initiale définie pour modification ou affichage. Cas d'usage : édition de formulaires existants, dates par défaut, affichage de dates enregistrées.`,
|
|
148
|
+
},
|
|
149
|
+
},
|
|
150
|
+
};
|
|
151
|
+
WithConstraints.parameters = {
|
|
152
|
+
docs: {
|
|
153
|
+
description: {
|
|
154
|
+
story: `Date Picker avec contraintes de dates min et max. Limite les dates sélectionnables à une plage définie. Cas d'usage : réservations futures, dates limitées à une année, périodes de validité.`,
|
|
155
|
+
},
|
|
156
|
+
},
|
|
157
|
+
};
|
|
158
|
+
Disabled.parameters = {
|
|
159
|
+
docs: {
|
|
160
|
+
description: {
|
|
161
|
+
story: `Date Picker en état désactivé. Champ non modifiable pour affichage uniquement. Cas d'usage : dates fixes non modifiables, affichage de dates historiques, champs en lecture seule.`,
|
|
162
|
+
},
|
|
163
|
+
},
|
|
164
|
+
};
|
|
165
|
+
DateRange.parameters = {
|
|
166
|
+
docs: {
|
|
167
|
+
description: {
|
|
168
|
+
story: `Date Picker en mode plage avec deux champs synchronisés. Sélection de date de début et de fin liées. Cas d'usage : réservations avec durée, filtres de périodes, rapports sur plages temporelles, séjours ou locations.`,
|
|
169
|
+
},
|
|
170
|
+
},
|
|
171
|
+
};
|
|
172
|
+
DateRangeWithValues.parameters = {
|
|
173
|
+
docs: {
|
|
174
|
+
description: {
|
|
175
|
+
story: `Date Picker en mode plage avec valeurs pré-remplies. Plage de dates existante affichée et modifiable. Cas d'usage : édition de réservations, modification de filtres existants, affichage de périodes enregistrées.`,
|
|
176
|
+
},
|
|
177
|
+
},
|
|
178
|
+
};
|
|
120
179
|
//# sourceMappingURL=spw-date-picker.stories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spw-date-picker.stories.js","sourceRoot":"","sources":["../../../../src/stories/components/spw-date-picker/spw-date-picker.stories.ts"],"names":[],"mappings":"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","sourcesContent":["let componentsData: any;\n\ntry {\n componentsData = require('../../../../dist/components_json.json');\n} catch (error) {\n console.warn('components_json.json non trouvé. Utilisation de valeurs par défaut.');\n componentsData = {};\n}\n\nimport { Meta, StoryFn } from '@storybook/web-components';\nimport { withComponentControls, toKebabCase } from '@utils/utils';\n\nconst elementTag = 'spw-date-picker';\n\nconst argTypes = withComponentControls(componentsData, { tag: elementTag });\n\nconst meta: Meta = {\n title: 'Composants/Choix de date (date picker)',\n component: elementTag,\n argTypes,\n tags: ['autodocs'],\n parameters: {\n docs: {\n description: {\n component: `\n<strong class=\"mr-2\">Statut du composant :</strong> <spw-tag size=\"small\" variant=\"green\">Prêt</spw-tag>\n\nComposant de sélection de date avec options simples et avancées, incluant gestion de plages.\n\n[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/314e53-choix-de-date-date-picker)\n `,\n },\n },\n },\n};\n\nexport default meta;\n\n// Stories template\nconst Template: StoryFn = args => {\n const element = document.createElement(elementTag);\n const controls = withComponentControls(componentsData, { tag: elementTag }) || {};\n const masterProps = controls.__realProps || Object.keys(controls);\n\n Object.entries(args).forEach(([key, val]) => {\n if (masterProps.includes(key)) {\n element.setAttribute(toKebabCase(key), val as string);\n } else if (key.startsWith('on')) {\n element.addEventListener(key.substring(2).toLowerCase(), val);\n }\n });\n return element;\n};\n\n// Default\nexport const Default = Template.bind({});\nDefault.args = {\n label: 'Date de naissance',\n placeholder: 'JJ/MM/AAAA',\n};\n\n// WithValue\nexport const WithValue = Template.bind({});\nWithValue.args = {\n label: 'Date avec valeur',\n value: '2025-06-30',\n placeholder: 'JJ/MM/AAAA',\n};\n\n// WithConstraints\nexport const WithConstraints = Template.bind({});\nWithConstraints.args = {\n label: 'Date limitée',\n placeholder: 'JJ/MM/AAAA',\n min: '2025-01-01',\n max: '2025-12-31',\n};\n\n// Disabled\nexport const Disabled = Template.bind({});\nDisabled.args = {\n label: 'Date désactivée',\n placeholder: 'Non disponible',\n disabled: true,\n};\n\n// Range template (nécessite deux datepickers)\nconst RangeTemplate: StoryFn = args => {\n const container = document.createElement('div');\n\n // Créer le datepicker de début\n const startPicker = document.createElement(elementTag);\n startPicker.setAttribute('range', 'true');\n startPicker.setAttribute('range-id', args.rangeId || '1');\n startPicker.setAttribute('is-start', 'true');\n startPicker.setAttribute('label', args.startLabel || 'Date de début');\n startPicker.setAttribute('placeholder', args.startPlaceholder || 'Choisissez une date de début');\n if (args.startValue) startPicker.setAttribute('value', args.startValue);\n startPicker.classList.add('mb-3');\n\n // Créer le datepicker de fin\n const endPicker = document.createElement(elementTag);\n endPicker.setAttribute('range', 'true');\n endPicker.setAttribute('range-id', args.rangeId || '1');\n endPicker.setAttribute('label', args.endLabel || 'Date de fin');\n endPicker.setAttribute('placeholder', args.endPlaceholder || 'Choisissez une date de fin');\n if (args.endValue) endPicker.setAttribute('value', args.endValue);\n\n container.appendChild(startPicker);\n container.appendChild(endPicker);\n\n return container;\n};\n\n// DateRange\nexport const DateRange = RangeTemplate.bind({});\nDateRange.args = {\n rangeId: 'range-story-1',\n startLabel: 'Date de début',\n startPlaceholder: 'Choisissez une date de début',\n endLabel: 'Date de fin',\n endPlaceholder: 'Choisissez une date de fin',\n};\n\n// DateRangeWithValues\nexport const DateRangeWithValues = RangeTemplate.bind({});\nDateRangeWithValues.args = {\n rangeId: 'range-story-2',\n startLabel: 'Date de début',\n startPlaceholder: 'Choisissez une date de début',\n startValue: '2025-06-01',\n endLabel: 'Date de fin',\n endPlaceholder: 'Choisissez une date de fin',\n endValue: '2025-06-15',\n};\n"]}
|
|
1
|
+
{"version":3,"file":"spw-date-picker.stories.js","sourceRoot":"","sources":["../../../../src/stories/components/spw-date-picker/spw-date-picker.stories.ts"],"names":[],"mappings":"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","sourcesContent":["let componentsData: any;\n\ntry {\n componentsData = require('../../../../dist/components_json.json');\n} catch (error) {\n console.warn('components_json.json non trouvé. Utilisation de valeurs par défaut.');\n componentsData = {};\n}\n\nimport { Meta, StoryFn } from '@storybook/web-components';\nimport { withComponentControls, toKebabCase } from '@utils/utils';\n\nconst elementTag = 'spw-date-picker';\n\nconst argTypes = withComponentControls(componentsData, { tag: elementTag });\n\nconst meta: Meta = {\n title: 'Composants/Choix de date (date picker)',\n component: elementTag,\n argTypes,\n tags: ['autodocs'],\n parameters: {\n docs: {\n description: {\n component: `\n<strong class=\"mr-2\">Statut du composant :</strong> <spw-tag size=\"small\" variant=\"green\">Prêt</spw-tag>\n\nLe composant Date Picker permet aux utilisateurs de sélectionner une date via un calendrier interactif ou une saisie manuelle. Il supporte les sélections simples, les dates avec contraintes et les plages de dates.\n\n## Fonctionnalités\n\n- Calendrier interactif pour sélection visuelle\n- Saisie manuelle de date au format JJ/MM/AAAA\n- Contraintes de dates min et max\n- Mode plage pour sélectionner début et fin\n- Synchronisation automatique des plages\n- État désactivé\n\n## Cas d'usage\n\n- Sélection de date de naissance\n- Réservations et planifications\n- Filtres de dates dans recherches\n- Plages de dates pour rapports\n- Formulaires de demandes avec dates\n\n[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/314e53-choix-de-date-date-picker)\n `,\n },\n },\n },\n};\n\nexport default meta;\n\n// Stories template\nconst Template: StoryFn = args => {\n const element = document.createElement(elementTag);\n const controls = withComponentControls(componentsData, { tag: elementTag }) || {};\n const masterProps = controls.__realProps || Object.keys(controls);\n\n Object.entries(args).forEach(([key, val]) => {\n if (masterProps.includes(key)) {\n element.setAttribute(toKebabCase(key), val as string);\n } else if (key.startsWith('on')) {\n element.addEventListener(key.substring(2).toLowerCase(), val);\n }\n });\n return element;\n};\n\n// Default\nexport const Default = Template.bind({});\nDefault.args = {\n label: 'Date de naissance',\n placeholder: 'JJ/MM/AAAA',\n};\n\n// WithValue\nexport const WithValue = Template.bind({});\nWithValue.args = {\n label: 'Date avec valeur',\n value: '2025-06-30',\n placeholder: 'JJ/MM/AAAA',\n};\n\n// WithConstraints\nexport const WithConstraints = Template.bind({});\nWithConstraints.args = {\n label: 'Date limitée',\n placeholder: 'JJ/MM/AAAA',\n min: '2025-01-01',\n max: '2025-12-31',\n};\n\n// Disabled\nexport const Disabled = Template.bind({});\nDisabled.args = {\n label: 'Date désactivée',\n placeholder: 'Non disponible',\n disabled: true,\n};\n\n// Range template (nécessite deux datepickers)\nconst RangeTemplate: StoryFn = args => {\n const container = document.createElement('div');\n\n // Créer le datepicker de début\n const startPicker = document.createElement(elementTag);\n startPicker.setAttribute('range', 'true');\n startPicker.setAttribute('range-id', args.rangeId || '1');\n startPicker.setAttribute('is-start', 'true');\n startPicker.setAttribute('label', args.startLabel || 'Date de début');\n startPicker.setAttribute('placeholder', args.startPlaceholder || 'Choisissez une date de début');\n if (args.startValue) startPicker.setAttribute('value', args.startValue);\n startPicker.classList.add('mb-3');\n\n // Créer le datepicker de fin\n const endPicker = document.createElement(elementTag);\n endPicker.setAttribute('range', 'true');\n endPicker.setAttribute('range-id', args.rangeId || '1');\n endPicker.setAttribute('label', args.endLabel || 'Date de fin');\n endPicker.setAttribute('placeholder', args.endPlaceholder || 'Choisissez une date de fin');\n if (args.endValue) endPicker.setAttribute('value', args.endValue);\n\n container.appendChild(startPicker);\n container.appendChild(endPicker);\n\n return container;\n};\n\n// DateRange\nexport const DateRange = RangeTemplate.bind({});\nDateRange.args = {\n rangeId: 'range-story-1',\n startLabel: 'Date de début',\n startPlaceholder: 'Choisissez une date de début',\n endLabel: 'Date de fin',\n endPlaceholder: 'Choisissez une date de fin',\n};\n\n// DateRangeWithValues\nexport const DateRangeWithValues = RangeTemplate.bind({});\nDateRangeWithValues.args = {\n rangeId: 'range-story-2',\n startLabel: 'Date de début',\n startPlaceholder: 'Choisissez une date de début',\n startValue: '2025-06-01',\n endLabel: 'Date de fin',\n endPlaceholder: 'Choisissez une date de fin',\n endValue: '2025-06-15',\n};\n\nDefault.parameters = {\n docs: {\n description: {\n story: `Date Picker par défaut avec label et placeholder. Calendrier interactif et saisie manuelle possibles. Cas d'usage : date de naissance, formulaires de demande, sélection de date simple.`,\n },\n },\n};\n\nWithValue.parameters = {\n docs: {\n description: {\n story: `Date Picker avec valeur pré-remplie. Date initiale définie pour modification ou affichage. Cas d'usage : édition de formulaires existants, dates par défaut, affichage de dates enregistrées.`,\n },\n },\n};\n\nWithConstraints.parameters = {\n docs: {\n description: {\n story: `Date Picker avec contraintes de dates min et max. Limite les dates sélectionnables à une plage définie. Cas d'usage : réservations futures, dates limitées à une année, périodes de validité.`,\n },\n },\n};\n\nDisabled.parameters = {\n docs: {\n description: {\n story: `Date Picker en état désactivé. Champ non modifiable pour affichage uniquement. Cas d'usage : dates fixes non modifiables, affichage de dates historiques, champs en lecture seule.`,\n },\n },\n};\n\nDateRange.parameters = {\n docs: {\n description: {\n story: `Date Picker en mode plage avec deux champs synchronisés. Sélection de date de début et de fin liées. Cas d'usage : réservations avec durée, filtres de périodes, rapports sur plages temporelles, séjours ou locations.`,\n },\n },\n};\n\nDateRangeWithValues.parameters = {\n docs: {\n description: {\n story: `Date Picker en mode plage avec valeurs pré-remplies. Plage de dates existante affichée et modifiable. Cas d'usage : édition de réservations, modification de filtres existants, affichage de périodes enregistrées.`,\n },\n },\n};\n"]}
|
|
@@ -20,7 +20,25 @@ const meta = {
|
|
|
20
20
|
component: `
|
|
21
21
|
<strong class="mr-2">Statut du composant :</strong> <spw-tag size="small" variant="green">Prêt</spw-tag>
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
Le composant Dropdown affiche une liste d'actions ou d'options qui se déploie au clic sur un élément déclencheur. Il offre un moyen compact d'organiser plusieurs actions contextuelles.
|
|
24
|
+
|
|
25
|
+
## Fonctionnalités
|
|
26
|
+
|
|
27
|
+
- Déclencheur personnalisable (bouton, icône, texte)
|
|
28
|
+
- Contenu flexible via slot
|
|
29
|
+
- Fermeture au clic extérieur
|
|
30
|
+
- Positionnement automatique
|
|
31
|
+
- Support de contenu complexe (boutons, liens, séparateurs)
|
|
32
|
+
- Compatible avec spw-group pour organisation verticale
|
|
33
|
+
|
|
34
|
+
## Cas d'usage
|
|
35
|
+
|
|
36
|
+
- Menus d'actions contextuelles (modifier, supprimer, partager)
|
|
37
|
+
- Menus utilisateur avec profil et déconnexion
|
|
38
|
+
- Options supplémentaires dans cartes ou tableaux
|
|
39
|
+
- Actions groupées dans toolbars
|
|
40
|
+
- Menus de navigation compacts
|
|
41
|
+
- Filtres et tris dans listes
|
|
24
42
|
|
|
25
43
|
[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/135010-menu-deroulant-dropdown-menu)
|
|
26
44
|
`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spw-dropdown.stories.js","sourceRoot":"","sources":["../../../../src/stories/components/spw-dropdown/spw-dropdown.stories.ts"],"names":[],"mappings":"AAAA,IAAI,cAAmB,CAAC;AAExB,IAAI,CAAC;IACH,cAAc,GAAG,OAAO,CAAC,uCAAuC,CAAC,CAAC;AACpE,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,OAAO,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;IACpF,cAAc,GAAG,EAAE,CAAC;AACtB,CAAC;AAGD,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAElE,MAAM,UAAU,GAAG,cAAc,CAAC;AAElC,MAAM,QAAQ,GAAG,qBAAqB,CAAC,cAAc,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;AAE5E,MAAM,IAAI,GAAS;IACjB,KAAK,EAAE,sCAAsC;IAC7C,SAAS,EAAE,UAAU;IACrB,QAAQ;IACR,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,WAAW,EAAE;gBACX,SAAS,EAAE
|
|
1
|
+
{"version":3,"file":"spw-dropdown.stories.js","sourceRoot":"","sources":["../../../../src/stories/components/spw-dropdown/spw-dropdown.stories.ts"],"names":[],"mappings":"AAAA,IAAI,cAAmB,CAAC;AAExB,IAAI,CAAC;IACH,cAAc,GAAG,OAAO,CAAC,uCAAuC,CAAC,CAAC;AACpE,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,OAAO,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;IACpF,cAAc,GAAG,EAAE,CAAC;AACtB,CAAC;AAGD,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAElE,MAAM,UAAU,GAAG,cAAc,CAAC;AAElC,MAAM,QAAQ,GAAG,qBAAqB,CAAC,cAAc,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;AAE5E,MAAM,IAAI,GAAS;IACjB,KAAK,EAAE,sCAAsC;IAC7C,SAAS,EAAE,UAAU;IACrB,QAAQ;IACR,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,WAAW,EAAE;gBACX,SAAS,EAAE;;;;;;;;;;;;;;;;;;;;;;;;SAwBV;aACF;SACF;KACF;CACF,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,SAAS,kBAAkB;IACzB,OAAO,UAAU,CAAC;;;;;;;;;;GAUjB,CAAC;AACJ,CAAC;AAED,MAAM,eAAe,GAAY,IAAI,CAAC,EAAE;IACtC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAEnD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,cAAc,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC;IAClF,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAElE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE;QAC1C,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,GAAa,CAAC,CAAC;QACxD,CAAC;aAAM,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;QAChE,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,SAAS,GAAG,kBAAkB,EAAE,CAAC;IAEzC,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAChD,OAAO,CAAC,IAAI,GAAG,EAAE,CAAC","sourcesContent":["let componentsData: any;\n\ntry {\n componentsData = require('../../../../dist/components_json.json');\n} catch (error) {\n console.warn('components_json.json non trouvé. Utilisation de valeurs par défaut.');\n componentsData = {};\n}\n\nimport { Meta, StoryFn } from '@storybook/web-components';\nimport { withComponentControls, toKebabCase } from '@utils/utils';\n\nconst elementTag = 'spw-dropdown';\n\nconst argTypes = withComponentControls(componentsData, { tag: elementTag });\n\nconst meta: Meta = {\n title: 'Composants/Menu déroulant (dropdown)',\n component: elementTag,\n argTypes,\n tags: ['autodocs'],\n parameters: {\n docs: {\n description: {\n component: `\n<strong class=\"mr-2\">Statut du composant :</strong> <spw-tag size=\"small\" variant=\"green\">Prêt</spw-tag>\n\nLe composant Dropdown affiche une liste d'actions ou d'options qui se déploie au clic sur un élément déclencheur. Il offre un moyen compact d'organiser plusieurs actions contextuelles.\n\n## Fonctionnalités\n\n- Déclencheur personnalisable (bouton, icône, texte)\n- Contenu flexible via slot\n- Fermeture au clic extérieur\n- Positionnement automatique\n- Support de contenu complexe (boutons, liens, séparateurs)\n- Compatible avec spw-group pour organisation verticale\n\n## Cas d'usage\n\n- Menus d'actions contextuelles (modifier, supprimer, partager)\n- Menus utilisateur avec profil et déconnexion\n- Options supplémentaires dans cartes ou tableaux\n- Actions groupées dans toolbars\n- Menus de navigation compacts\n- Filtres et tris dans listes\n\n[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/135010-menu-deroulant-dropdown-menu)\n `,\n },\n },\n },\n};\n\nexport default meta;\n\nfunction htmlContentDefault() {\n return /* HTML */ `\n <spw-button icon=\"fa-ellipsis-vertical\" is-icon-only=\"true\" size=\"small\" variant=\"secondary\" class=\"mx-1\">\n <div slot=\"dropdownContent\">\n <spw-group orientation=\"vertical\" is-full-width>\n <spw-button is-full-width variant=\"secondary\" size=\"small\">Action 1</spw-button>\n <spw-button is-full-width variant=\"secondary\" size=\"small\">Action 2</spw-button>\n <spw-button is-full-width variant=\"primary\" size=\"small\">Validation</spw-button>\n </spw-group>\n </div>\n </spw-button>\n `;\n}\n\nconst TemplateDefault: StoryFn = args => {\n const element = document.createElement(elementTag);\n\n const controls = withComponentControls(componentsData, { tag: elementTag }) || {};\n const masterProps = controls.__realProps || Object.keys(controls);\n\n Object.entries(args).forEach(([key, val]) => {\n if (masterProps.includes(key)) {\n element.setAttribute(toKebabCase(key), val as string);\n } else if (key.startsWith('on')) {\n element.addEventListener(key.substring(2).toLowerCase(), val);\n }\n });\n\n element.innerHTML = htmlContentDefault();\n\n return element;\n};\n\nexport const Default = TemplateDefault.bind({});\nDefault.args = {};\n"]}
|
|
@@ -20,7 +20,30 @@ const meta = {
|
|
|
20
20
|
component: `
|
|
21
21
|
<strong class="mr-2">Statut du composant :</strong> <spw-tag size="small" variant="green">Prêt</spw-tag>
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
Le composant Field Message affiche des messages d'aide, d'erreur, de succès ou d'avertissement associés aux champs de formulaire. Il guide l'utilisateur et fournit un feedback visuel sur la validation.
|
|
24
|
+
|
|
25
|
+
## Variantes disponibles
|
|
26
|
+
|
|
27
|
+
- **hint** : Message d'aide neutre (par défaut)
|
|
28
|
+
- **error** : Message d'erreur en rouge
|
|
29
|
+
- **success** : Message de succès en vert
|
|
30
|
+
- **warning** : Message d'avertissement en orange
|
|
31
|
+
|
|
32
|
+
## Fonctionnalités
|
|
33
|
+
|
|
34
|
+
- Icônes contextuelles selon le type
|
|
35
|
+
- Couleurs distinctives par variante
|
|
36
|
+
- Intégration dans les champs de formulaire
|
|
37
|
+
- Texte personnalisable
|
|
38
|
+
|
|
39
|
+
## Cas d'usage
|
|
40
|
+
|
|
41
|
+
- Texte d'aide sous les champs de formulaire
|
|
42
|
+
- Messages d'erreur de validation
|
|
43
|
+
- Confirmation de saisie correcte
|
|
44
|
+
- Avertissements sur des contraintes
|
|
45
|
+
- Instructions de remplissage
|
|
46
|
+
- Feedback utilisateur en temps réel
|
|
24
47
|
|
|
25
48
|
[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/99862d-indice-de-champ-hint)
|
|
26
49
|
`,
|
|
@@ -71,4 +94,32 @@ Warning.args = {
|
|
|
71
94
|
label: 'Mon texte',
|
|
72
95
|
variant: 'warning',
|
|
73
96
|
};
|
|
97
|
+
Hint.parameters = {
|
|
98
|
+
docs: {
|
|
99
|
+
description: {
|
|
100
|
+
story: `Message d'aide neutre sous un champ de formulaire. Fournit des instructions ou conseils pour aider la saisie. Cas d'usage : format attendu, exemples de saisie, informations complémentaires sur le champ.`,
|
|
101
|
+
},
|
|
102
|
+
},
|
|
103
|
+
};
|
|
104
|
+
Error.parameters = {
|
|
105
|
+
docs: {
|
|
106
|
+
description: {
|
|
107
|
+
story: `Message d'erreur affiché en rouge avec icône. Indique un problème de validation ou une saisie incorrecte. Cas d'usage : erreurs de validation, format invalide, champs obligatoires manquants.`,
|
|
108
|
+
},
|
|
109
|
+
},
|
|
110
|
+
};
|
|
111
|
+
Success.parameters = {
|
|
112
|
+
docs: {
|
|
113
|
+
description: {
|
|
114
|
+
story: `Message de succès affiché en vert avec icône. Confirme une saisie valide ou une action réussie. Cas d'usage : validation réussie, confirmation d'enregistrement, saisie correcte.`,
|
|
115
|
+
},
|
|
116
|
+
},
|
|
117
|
+
};
|
|
118
|
+
Warning.parameters = {
|
|
119
|
+
docs: {
|
|
120
|
+
description: {
|
|
121
|
+
story: `Message d'avertissement affiché en orange avec icône. Alerte sur une situation particulière sans bloquer. Cas d'usage : contraintes importantes, informations critiques, précautions à prendre.`,
|
|
122
|
+
},
|
|
123
|
+
},
|
|
124
|
+
};
|
|
74
125
|
//# sourceMappingURL=spw-field-message.stories.js.map
|
package/dist/collection/stories/components/spw-field-message/spw-field-message.stories.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spw-field-message.stories.js","sourceRoot":"","sources":["../../../../src/stories/components/spw-field-message/spw-field-message.stories.ts"],"names":[],"mappings":"AAAA,IAAI,cAAmB,CAAC;AAExB,IAAI,CAAC;IACH,cAAc,GAAG,OAAO,CAAC,uCAAuC,CAAC,CAAC;AACpE,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,OAAO,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;IACpF,cAAc,GAAG,EAAE,CAAC;AACtB,CAAC;AAGD,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAElE,MAAM,UAAU,GAAG,mBAAmB,CAAC;AAEvC,MAAM,QAAQ,GAAG,qBAAqB,CAAC,cAAc,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;AAE5E,MAAM,IAAI,GAAS;IACjB,KAAK,EAAE,mCAAmC;IAC1C,SAAS,EAAE,UAAU;IACrB,QAAQ;IACR,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,WAAW,EAAE;gBACX,SAAS,EAAE
|
|
1
|
+
{"version":3,"file":"spw-field-message.stories.js","sourceRoot":"","sources":["../../../../src/stories/components/spw-field-message/spw-field-message.stories.ts"],"names":[],"mappings":"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","sourcesContent":["let componentsData: any;\n\ntry {\n componentsData = require('../../../../dist/components_json.json');\n} catch (error) {\n console.warn('components_json.json non trouvé. Utilisation de valeurs par défaut.');\n componentsData = {};\n}\n\nimport { Meta, StoryFn } from '@storybook/web-components';\nimport { withComponentControls, toKebabCase } from '@utils/utils';\n\nconst elementTag = 'spw-field-message';\n\nconst argTypes = withComponentControls(componentsData, { tag: elementTag });\n\nconst meta: Meta = {\n title: 'Composants/Indice de champ (hint)',\n component: elementTag,\n argTypes,\n tags: ['autodocs'],\n parameters: {\n docs: {\n description: {\n component: `\n<strong class=\"mr-2\">Statut du composant :</strong> <spw-tag size=\"small\" variant=\"green\">Prêt</spw-tag>\n\nLe composant Field Message affiche des messages d'aide, d'erreur, de succès ou d'avertissement associés aux champs de formulaire. Il guide l'utilisateur et fournit un feedback visuel sur la validation.\n\n## Variantes disponibles\n\n- **hint** : Message d'aide neutre (par défaut)\n- **error** : Message d'erreur en rouge\n- **success** : Message de succès en vert\n- **warning** : Message d'avertissement en orange\n\n## Fonctionnalités\n\n- Icônes contextuelles selon le type\n- Couleurs distinctives par variante\n- Intégration dans les champs de formulaire\n- Texte personnalisable\n\n## Cas d'usage\n\n- Texte d'aide sous les champs de formulaire\n- Messages d'erreur de validation\n- Confirmation de saisie correcte\n- Avertissements sur des contraintes\n- Instructions de remplissage\n- Feedback utilisateur en temps réel\n\n[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/99862d-indice-de-champ-hint)\n `,\n },\n },\n },\n};\n\nexport default meta;\n\nfunction htmlContent(slot) {\n return /* HTML */ `${slot}`;\n}\n\nconst Template: StoryFn = args => {\n const element = document.createElement(elementTag);\n const hasSlot = true;\n const slottedLabel = 'label';\n\n Object.entries(args).forEach(([key, val]) => {\n if (key.startsWith('on')) {\n element.addEventListener(key.substring(2).toLowerCase(), val);\n } else {\n if (key !== slottedLabel) {\n element.setAttribute(toKebabCase(key), val as string);\n }\n }\n });\n\n if (hasSlot) {\n element.innerHTML = htmlContent(args[slottedLabel]);\n }\n\n return element;\n};\n\nexport const Hint = Template.bind({});\nexport const Error = Template.bind({});\nexport const Success = Template.bind({});\nexport const Warning = Template.bind({});\nHint.args = {\n label: 'Mon texte',\n variant: 'hint',\n};\nError.args = {\n label: 'Mon texte',\n variant: 'error',\n};\nSuccess.args = {\n label: 'Mon texte',\n variant: 'success',\n};\nWarning.args = {\n label: 'Mon texte',\n variant: 'warning',\n};\n\nHint.parameters = {\n docs: {\n description: {\n story: `Message d'aide neutre sous un champ de formulaire. Fournit des instructions ou conseils pour aider la saisie. Cas d'usage : format attendu, exemples de saisie, informations complémentaires sur le champ.`,\n },\n },\n};\n\nError.parameters = {\n docs: {\n description: {\n story: `Message d'erreur affiché en rouge avec icône. Indique un problème de validation ou une saisie incorrecte. Cas d'usage : erreurs de validation, format invalide, champs obligatoires manquants.`,\n },\n },\n};\n\nSuccess.parameters = {\n docs: {\n description: {\n story: `Message de succès affiché en vert avec icône. Confirme une saisie valide ou une action réussie. Cas d'usage : validation réussie, confirmation d'enregistrement, saisie correcte.`,\n },\n },\n};\n\nWarning.parameters = {\n docs: {\n description: {\n story: `Message d'avertissement affiché en orange avec icône. Alerte sur une situation particulière sans bloquer. Cas d'usage : contraintes importantes, informations critiques, précautions à prendre.`,\n },\n },\n};\n"]}
|
|
@@ -20,7 +20,26 @@ const meta = {
|
|
|
20
20
|
component: `
|
|
21
21
|
<strong class="mr-2">Statut du composant :</strong> <spw-tag size="small" variant="green">Prêt</spw-tag>
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
Le composant File Upload permet aux utilisateurs de sélectionner et télécharger un ou plusieurs fichiers vers l'application. Il intègre validation de type, taille et nombre de fichiers avec feedback visuel.
|
|
24
|
+
|
|
25
|
+
## Fonctionnalités
|
|
26
|
+
|
|
27
|
+
- Sélection de fichiers unique ou multiple
|
|
28
|
+
- Drag and drop pour déposer des fichiers
|
|
29
|
+
- Validation des types de fichiers acceptés
|
|
30
|
+
- Limitation de taille par fichier (Mo)
|
|
31
|
+
- Limitation du nombre de fichiers
|
|
32
|
+
- Aperçu des fichiers sélectionnés
|
|
33
|
+
- Suppression individuelle des fichiers
|
|
34
|
+
- Messages d'erreur détaillés
|
|
35
|
+
|
|
36
|
+
## Cas d'usage
|
|
37
|
+
|
|
38
|
+
- Upload de documents
|
|
39
|
+
- Envoi de photos ou images
|
|
40
|
+
- Ajout de pièces jointes dans formulaires
|
|
41
|
+
- Import de fichiers de données (CSV, Excel)
|
|
42
|
+
- Téléchargement de fichiers multiples
|
|
24
43
|
|
|
25
44
|
[<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/934c31-envoi-de-fichiers-upload)
|
|
26
45
|
`,
|