@spw-ds/spw-stencil-library 1.2.0 → 1.2.1
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/{index-DPoQq9TD.js → index-iVhYitTd.js} +5 -2
- package/dist/cjs/index-iVhYitTd.js.map +1 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/spw-accordion_4.cjs.entry.js +5 -5
- package/dist/cjs/spw-breadcrumb-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-breadcrumb.cjs.entry.js +2 -2
- package/dist/cjs/spw-button_2.cjs.entry.js +3 -3
- package/dist/cjs/spw-card-content.cjs.entry.js +2 -2
- package/dist/cjs/spw-card-excerpt.cjs.entry.js +2 -2
- package/dist/cjs/spw-card-image.cjs.entry.js +2 -2
- package/dist/cjs/spw-card-subtag-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-card-subtags.cjs.entry.js +2 -2
- package/dist/cjs/spw-card-title.cjs.entry.js +2 -2
- package/dist/cjs/spw-card.cjs.entry.js +2 -2
- package/dist/cjs/spw-checkbox.cjs.entry.js +6 -3
- package/dist/cjs/spw-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-checkbox.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-cookies.cjs.entry.js +1 -1
- package/dist/cjs/spw-custom-select.cjs.entry.js +23 -12
- package/dist/cjs/spw-custom-select.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-custom-select.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-date-picker.cjs.entry.js +2 -2
- package/dist/cjs/spw-dropdown.cjs.entry.js +2 -2
- package/dist/cjs/spw-field-label_6.cjs.entry.js +6 -6
- package/dist/cjs/spw-field-message.cjs.entry.js +2 -2
- package/dist/cjs/spw-file-upload.cjs.entry.js +3 -3
- package/dist/cjs/spw-footer-bottom.cjs.entry.js +2 -2
- package/dist/cjs/spw-footer-content-col.cjs.entry.js +2 -2
- package/dist/cjs/spw-footer-content.cjs.entry.js +2 -2
- package/dist/cjs/spw-footer-link.cjs.entry.js +2 -2
- package/dist/cjs/spw-footer.cjs.entry.js +2 -2
- package/dist/cjs/spw-header-lang-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-header-lang.cjs.entry.js +2 -2
- package/dist/cjs/spw-header-navigation-dropdown.cjs.entry.js +2 -2
- package/dist/cjs/spw-header-navigation-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-header-navigation.cjs.entry.js +2 -2
- package/dist/cjs/spw-header-persona-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-header-persona.cjs.entry.js +2 -2
- package/dist/cjs/spw-header.cjs.entry.js +2 -2
- package/dist/cjs/spw-hero.cjs.entry.js +6 -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 +2389 -0
- package/dist/cjs/spw-illustration.cjs.entry.js.map +1 -0
- package/dist/cjs/spw-illustration.entry.cjs.js.map +1 -0
- package/dist/cjs/spw-iodda.cjs.entry.js +2 -2
- package/dist/cjs/spw-list-description.cjs.entry.js +2 -2
- package/dist/cjs/spw-list-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-list-title.cjs.entry.js +2 -2
- package/dist/cjs/spw-list.cjs.entry.js +2 -2
- package/dist/cjs/spw-message.cjs.entry.js +1 -1
- package/dist/cjs/spw-modal.cjs.entry.js +12 -10
- package/dist/cjs/spw-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-modal.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-mosaic-item.cjs.entry.js +2 -2
- package/dist/cjs/spw-mosaic.cjs.entry.js +2 -2
- package/dist/cjs/spw-pagination.cjs.entry.js +7 -7
- package/dist/cjs/spw-radio.cjs.entry.js +2 -2
- package/dist/cjs/spw-search-field.cjs.entry.js +3 -3
- package/dist/cjs/spw-select.cjs.entry.js +37 -3
- package/dist/cjs/spw-select.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-select.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-sidebar-navigation-dropdown.cjs.entry.js +1 -1
- package/dist/cjs/spw-sidebar-navigation-item.cjs.entry.js +1 -1
- package/dist/cjs/spw-sidebar-navigation-separator.cjs.entry.js +1 -1
- package/dist/cjs/spw-sidebar.cjs.entry.js +1 -1
- package/dist/cjs/spw-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/spw-socials.cjs.entry.js +1 -1
- package/dist/cjs/spw-stencil-library.cjs.js +2 -2
- package/dist/cjs/spw-table-body.cjs.entry.js +1 -1
- package/dist/cjs/spw-table-cell.cjs.entry.js +2 -2
- package/dist/cjs/spw-table-cell.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-table-cell.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-table-footer.cjs.entry.js +1 -1
- package/dist/cjs/spw-table-head.cjs.entry.js +1 -1
- package/dist/cjs/spw-table-header.cjs.entry.js +9 -5
- 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 +11 -3
- package/dist/cjs/spw-table-row.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-table-row.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-table.cjs.entry.js +23 -10
- 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-content.cjs.entry.js +1 -1
- package/dist/cjs/spw-tabs-navigation-item.cjs.entry.js +6 -3
- package/dist/cjs/spw-tabs-navigation-item.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-tabs-navigation-item.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-tabs-navigation.cjs.entry.js +85 -3
- package/dist/cjs/spw-tabs-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-tabs-navigation.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-tabs.cjs.entry.js +70 -13
- package/dist/cjs/spw-tabs.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-tabs.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-tag.cjs.entry.js +2 -2
- package/dist/cjs/spw-text-field.cjs.entry.js +2 -2
- package/dist/cjs/spw-textarea.cjs.entry.js +2 -2
- package/dist/cjs/spw-tile-description.cjs.entry.js +2 -2
- package/dist/cjs/spw-tile-title.cjs.entry.js +2 -2
- package/dist/cjs/spw-tile.cjs.entry.js +2 -2
- package/dist/cjs/spw-tooltip.cjs.entry.js +3 -3
- package/dist/cjs/spw-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/spw-tooltip.entry.cjs.js.map +1 -1
- package/dist/cjs/spw-topbar.cjs.entry.js +2 -2
- package/dist/cjs/utils-CKYAw_Le.js.map +1 -1
- package/dist/collection/collection-manifest.json +2 -1
- package/dist/collection/components/spw-accordion/spw-accordion-content/spw-accordion-content.js +1 -1
- package/dist/collection/components/spw-accordion/spw-accordion-item/spw-accordion-item.js +1 -1
- package/dist/collection/components/spw-accordion/spw-accordion-title/spw-accordion-title.js +1 -1
- package/dist/collection/components/spw-accordion/spw-accordion.js +1 -1
- package/dist/collection/components/spw-breadcrumb/spw-breadcrumb-item/spw-breadcrumb-item.js +1 -1
- package/dist/collection/components/spw-breadcrumb/spw-breadcrumb.js +1 -1
- package/dist/collection/components/spw-button/spw-button.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.css +1 -1
- package/dist/collection/components/spw-checkbox/spw-checkbox.js +24 -1
- package/dist/collection/components/spw-checkbox/spw-checkbox.js.map +1 -1
- package/dist/collection/components/spw-custom-select/spw-custom-select.js +27 -16
- package/dist/collection/components/spw-custom-select/spw-custom-select.js.map +1 -1
- package/dist/collection/components/spw-date-picker/spw-date-picker.js +1 -1
- package/dist/collection/components/spw-dropdown/spw-dropdown.js +1 -1
- package/dist/collection/components/spw-field-label/spw-field-label.js +1 -1
- package/dist/collection/components/spw-field-message/spw-field-message.js +1 -1
- package/dist/collection/components/spw-file-upload/spw-file-upload.js +2 -2
- package/dist/collection/components/spw-footer/spw-footer-bottom/spw-footer-bottom.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer-content/spw-footer-content.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer-content-col/spw-footer-content-col.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer-link/spw-footer-link.js +1 -1
- package/dist/collection/components/spw-footer/spw-footer.js +1 -1
- package/dist/collection/components/spw-group/spw-group.js +1 -1
- package/dist/collection/components/spw-header/spw-header-lang/spw-header-lang.js +1 -1
- package/dist/collection/components/spw-header/spw-header-lang-item/spw-header-lang-item.js +1 -1
- package/dist/collection/components/spw-header/spw-header-navigation/spw-header-navigation.js +1 -1
- package/dist/collection/components/spw-header/spw-header-navigation-dropdown/spw-header-navigation-dropdown.js +1 -1
- package/dist/collection/components/spw-header/spw-header-navigation-item/spw-header-navigation-item.js +1 -1
- package/dist/collection/components/spw-header/spw-header-persona/spw-header-persona.js +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 +24 -1
- 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 +2 -0
- package/dist/collection/components/spw-illustration/spw-illustration.js +2479 -0
- package/dist/collection/components/spw-illustration/spw-illustration.js.map +1 -0
- 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 +11 -9
- package/dist/collection/components/spw-modal/spw-modal.js.map +1 -1
- package/dist/collection/components/spw-mosaic/spw-mosaic-item/spw-mosaic-item.js +1 -1
- package/dist/collection/components/spw-mosaic/spw-mosaic.js +1 -1
- package/dist/collection/components/spw-pagination/spw-pagination.js +6 -6
- package/dist/collection/components/spw-radio/spw-radio.js +1 -1
- package/dist/collection/components/spw-search-field/spw-search-field.js +2 -2
- package/dist/collection/components/spw-select/spw-select.js +100 -2
- package/dist/collection/components/spw-select/spw-select.js.map +1 -1
- package/dist/collection/components/spw-table/spw-table-cell/spw-table-cell.css +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 +7 -3
- 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.css +1 -1
- package/dist/collection/components/spw-table/spw-table-row/spw-table-row.js +35 -1
- package/dist/collection/components/spw-table/spw-table-row/spw-table-row.js.map +1 -1
- package/dist/collection/components/spw-table/spw-table.js +22 -9
- package/dist/collection/components/spw-table/spw-table.js.map +1 -1
- package/dist/collection/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.css +1 -1
- package/dist/collection/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.js +100 -1
- package/dist/collection/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.js.map +1 -1
- package/dist/collection/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.css +1 -1
- package/dist/collection/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.js +43 -2
- package/dist/collection/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.js.map +1 -1
- package/dist/collection/components/spw-tabs/spw-tabs.js +129 -12
- package/dist/collection/components/spw-tabs/spw-tabs.js.map +1 -1
- package/dist/collection/components/spw-tag/spw-tag.js +1 -1
- package/dist/collection/components/spw-text-field/spw-text-field.js +1 -1
- package/dist/collection/components/spw-textarea/spw-textarea.js +1 -1
- package/dist/collection/components/spw-theme-provider/spw-theme-provider.js +1 -1
- package/dist/collection/components/spw-tile/spw-tile-description/spw-tile-description.js +1 -1
- package/dist/collection/components/spw-tile/spw-tile-title/spw-tile-title.js +1 -1
- package/dist/collection/components/spw-tile/spw-tile.js +1 -1
- package/dist/collection/components/spw-tooltip/spw-tooltip.css +1 -1
- package/dist/collection/components/spw-tooltip/spw-tooltip.js +1 -1
- package/dist/collection/components/spw-topbar/spw-topbar.js +1 -1
- package/dist/collection/stories/components/spw-checkbox/spw-checkbox.stories.js +6 -7
- 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 +108 -0
- package/dist/collection/stories/components/spw-custom-select/spw-custom-select.stories.js.map +1 -0
- package/dist/collection/stories/components/spw-date-picker/spw-date-picker.stories.js +6 -4
- 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 +2 -1
- package/dist/collection/stories/components/spw-dropdown/spw-dropdown.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-file-upload/spw-file-upload.stories.js +6 -7
- 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 +1 -0
- package/dist/collection/stories/components/spw-icon/spw-icon.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-radio/spw-radio.stories.js +6 -7
- package/dist/collection/stories/components/spw-radio/spw-radio.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-select/spw-select.stories.js +6 -7
- package/dist/collection/stories/components/spw-select/spw-select.stories.js.map +1 -1
- package/dist/collection/stories/components/spw-text-field/spw-text-field.stories.js +6 -6
- package/dist/collection/stories/components/spw-text-field/spw-text-field.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-card/spw-card.stories.js +2 -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 +4 -2
- package/dist/collection/stories/organisms/spw-footer/spw-footer.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-header/spw-header.stories.js +2 -1
- 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 +24 -4
- 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 +2 -1
- package/dist/collection/stories/organisms/spw-list/spw-list.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-modal/spw-modal.stories.js +1 -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 +8 -4
- 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 +2 -1
- package/dist/collection/stories/organisms/spw-sidebar/spw-sidebar.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-table/spw-table.stories.js +98 -5
- 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 +6 -3
- 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 +6 -3
- package/dist/collection/stories/organisms/spw-tile/spw-tile.stories.js.map +1 -1
- package/dist/collection/stories/organisms/spw-topbar/spw-topbar.stories.js +2 -1
- package/dist/collection/stories/organisms/spw-topbar/spw-topbar.stories.js.map +1 -1
- package/dist/collection/utils/utils.js +12 -1
- package/dist/collection/utils/utils.js.map +1 -1
- package/dist/components/index.js +3 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/{p-_VSq6JhE.js → p-2zBnLUyL.js} +3 -3
- package/dist/components/{p-_VSq6JhE.js.map → p-2zBnLUyL.js.map} +1 -1
- package/dist/components/{p-BrCiFcDB.js → p-BExIjlwY.js} +12 -12
- package/dist/components/{p-BrCiFcDB.js.map → p-BExIjlwY.js.map} +1 -1
- package/dist/components/p-BRzMlz9h.js +129 -0
- package/dist/components/p-BRzMlz9h.js.map +1 -0
- package/dist/components/{p-DMD2z45s.js → p-BbuJ0hsQ.js} +4 -4
- package/dist/components/{p-DMD2z45s.js.map → p-BbuJ0hsQ.js.map} +1 -1
- package/dist/components/{p-DqtSG4Dc.js → p-Bja0SU2g.js} +4 -4
- package/dist/components/p-Bja0SU2g.js.map +1 -0
- package/dist/components/{p-DDvpvxxV.js → p-C_iAJUsF.js} +3 -3
- package/dist/components/{p-DDvpvxxV.js.map → p-C_iAJUsF.js.map} +1 -1
- package/dist/components/{p-DibGOHbd.js → p-CahscFgh.js} +6 -6
- package/dist/components/{p-DibGOHbd.js.map → p-CahscFgh.js.map} +1 -1
- package/dist/components/{p-CF4CA9QM.js → p-CwxUBfbv.js} +3 -3
- package/dist/components/{p-CF4CA9QM.js.map → p-CwxUBfbv.js.map} +1 -1
- package/dist/components/{p-Clhpt_u-.js → p-DSus8Zwu.js} +4 -4
- package/dist/components/{p-Clhpt_u-.js.map → p-DSus8Zwu.js.map} +1 -1
- package/dist/components/{p-BPTPujMC.js → p-DnyVO_PX.js} +5 -5
- package/dist/components/{p-BPTPujMC.js.map → p-DnyVO_PX.js.map} +1 -1
- package/dist/components/{p-wxevhJKV.js → p-DogcJyQh.js} +4 -4
- package/dist/components/{p-wxevhJKV.js.map → p-DogcJyQh.js.map} +1 -1
- package/dist/components/{p-B1_XG4Wf.js → p-JncqUnd1.js} +3 -3
- package/dist/components/{p-B1_XG4Wf.js.map → p-JncqUnd1.js.map} +1 -1
- package/dist/components/{p-BrOEFNbv.js → p-_q4w18VU.js} +3 -3
- package/dist/components/{p-BrOEFNbv.js.map → p-_q4w18VU.js.map} +1 -1
- package/dist/components/{p-Ch60bguo.js → p-z27d6ASx.js} +3 -3
- package/dist/components/{p-Ch60bguo.js.map → p-z27d6ASx.js.map} +1 -1
- package/dist/components/p-zpG0udTn.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 +3 -3
- package/dist/components/spw-breadcrumb.js +1 -1
- package/dist/components/spw-button.js +1 -1
- package/dist/components/spw-card-content.js +1 -1
- package/dist/components/spw-card-excerpt.js +1 -1
- package/dist/components/spw-card-image.js +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 +28 -17
- package/dist/components/spw-custom-select.js.map +1 -1
- package/dist/components/spw-date-picker.js +4 -4
- 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-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 +2 -2
- 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 +6 -2
- package/dist/components/spw-hero.js.map +1 -1
- package/dist/components/spw-icon.js +1 -1
- package/dist/components/spw-illustration.d.ts +11 -0
- package/dist/components/spw-illustration.js +2410 -0
- package/dist/components/spw-illustration.js.map +1 -0
- 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 +12 -10
- package/dist/components/spw-modal.js.map +1 -1
- package/dist/components/spw-mosaic-item.js +1 -1
- package/dist/components/spw-mosaic.js +1 -1
- package/dist/components/spw-pagination.js +1 -1
- package/dist/components/spw-radio.js +1 -1
- package/dist/components/spw-search-field.js +6 -6
- package/dist/components/spw-select.js +44 -5
- package/dist/components/spw-select.js.map +1 -1
- package/dist/components/spw-sidebar-navigation-item.js +2 -2
- package/dist/components/spw-sidebar.js +1 -1
- package/dist/components/spw-table-cell.js +1 -1
- package/dist/components/spw-table-cell.js.map +1 -1
- package/dist/components/spw-table-header.js +10 -6
- package/dist/components/spw-table-header.js.map +1 -1
- package/dist/components/spw-table-row.js +13 -3
- package/dist/components/spw-table-row.js.map +1 -1
- package/dist/components/spw-table.js +22 -9
- package/dist/components/spw-table.js.map +1 -1
- package/dist/components/spw-tabs-navigation-item.js +21 -4
- package/dist/components/spw-tabs-navigation-item.js.map +1 -1
- package/dist/components/spw-tabs-navigation.js +95 -4
- package/dist/components/spw-tabs-navigation.js.map +1 -1
- package/dist/components/spw-tabs.js +75 -14
- package/dist/components/spw-tabs.js.map +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 +4 -4
- 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-tooltip.js +1 -1
- package/dist/components/spw-topbar.js +1 -1
- package/dist/components_json.json +505 -34
- package/dist/components_vscode.json +127 -7
- package/dist/esm/{index-BaAUTDWF.js → index-BYM_CUUH.js} +5 -2
- package/dist/esm/index-BYM_CUUH.js.map +1 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/spw-accordion_4.entry.js +5 -5
- package/dist/esm/spw-breadcrumb-item.entry.js +2 -2
- package/dist/esm/spw-breadcrumb.entry.js +2 -2
- package/dist/esm/spw-button_2.entry.js +3 -3
- package/dist/esm/spw-card-content.entry.js +2 -2
- package/dist/esm/spw-card-excerpt.entry.js +2 -2
- package/dist/esm/spw-card-image.entry.js +2 -2
- package/dist/esm/spw-card-subtag-item.entry.js +2 -2
- package/dist/esm/spw-card-subtags.entry.js +2 -2
- package/dist/esm/spw-card-title.entry.js +2 -2
- package/dist/esm/spw-card.entry.js +2 -2
- package/dist/esm/spw-checkbox.entry.js +6 -3
- package/dist/esm/spw-checkbox.entry.js.map +1 -1
- package/dist/esm/spw-cookies.entry.js +1 -1
- package/dist/esm/spw-custom-select.entry.js +23 -12
- package/dist/esm/spw-custom-select.entry.js.map +1 -1
- package/dist/esm/spw-date-picker.entry.js +2 -2
- package/dist/esm/spw-dropdown.entry.js +2 -2
- package/dist/esm/spw-field-label_6.entry.js +6 -6
- package/dist/esm/spw-field-message.entry.js +2 -2
- package/dist/esm/spw-file-upload.entry.js +3 -3
- package/dist/esm/spw-footer-bottom.entry.js +2 -2
- package/dist/esm/spw-footer-content-col.entry.js +2 -2
- package/dist/esm/spw-footer-content.entry.js +2 -2
- package/dist/esm/spw-footer-link.entry.js +2 -2
- package/dist/esm/spw-footer.entry.js +2 -2
- package/dist/esm/spw-header-lang-item.entry.js +2 -2
- package/dist/esm/spw-header-lang.entry.js +2 -2
- package/dist/esm/spw-header-navigation-dropdown.entry.js +2 -2
- package/dist/esm/spw-header-navigation-item.entry.js +2 -2
- package/dist/esm/spw-header-navigation.entry.js +2 -2
- package/dist/esm/spw-header-persona-item.entry.js +2 -2
- package/dist/esm/spw-header-persona.entry.js +2 -2
- package/dist/esm/spw-header.entry.js +2 -2
- package/dist/esm/spw-hero.entry.js +6 -3
- package/dist/esm/spw-hero.entry.js.map +1 -1
- package/dist/esm/spw-illustration.entry.js +2387 -0
- package/dist/esm/spw-illustration.entry.js.map +1 -0
- package/dist/esm/spw-iodda.entry.js +2 -2
- package/dist/esm/spw-list-description.entry.js +2 -2
- package/dist/esm/spw-list-item.entry.js +2 -2
- package/dist/esm/spw-list-title.entry.js +2 -2
- package/dist/esm/spw-list.entry.js +2 -2
- package/dist/esm/spw-message.entry.js +1 -1
- package/dist/esm/spw-modal.entry.js +12 -10
- package/dist/esm/spw-modal.entry.js.map +1 -1
- package/dist/esm/spw-mosaic-item.entry.js +2 -2
- package/dist/esm/spw-mosaic.entry.js +2 -2
- package/dist/esm/spw-pagination.entry.js +7 -7
- package/dist/esm/spw-radio.entry.js +2 -2
- package/dist/esm/spw-search-field.entry.js +3 -3
- package/dist/esm/spw-select.entry.js +37 -3
- package/dist/esm/spw-select.entry.js.map +1 -1
- package/dist/esm/spw-sidebar-navigation-dropdown.entry.js +1 -1
- package/dist/esm/spw-sidebar-navigation-item.entry.js +1 -1
- package/dist/esm/spw-sidebar-navigation-separator.entry.js +1 -1
- package/dist/esm/spw-sidebar.entry.js +1 -1
- package/dist/esm/spw-skeleton.entry.js +1 -1
- package/dist/esm/spw-socials.entry.js +1 -1
- package/dist/esm/spw-stencil-library.js +3 -3
- package/dist/esm/spw-table-body.entry.js +1 -1
- package/dist/esm/spw-table-cell.entry.js +2 -2
- package/dist/esm/spw-table-cell.entry.js.map +1 -1
- package/dist/esm/spw-table-footer.entry.js +1 -1
- package/dist/esm/spw-table-head.entry.js +1 -1
- package/dist/esm/spw-table-header.entry.js +9 -5
- package/dist/esm/spw-table-header.entry.js.map +1 -1
- package/dist/esm/spw-table-row.entry.js +11 -3
- package/dist/esm/spw-table-row.entry.js.map +1 -1
- package/dist/esm/spw-table.entry.js +23 -10
- package/dist/esm/spw-table.entry.js.map +1 -1
- package/dist/esm/spw-tabs-content.entry.js +1 -1
- package/dist/esm/spw-tabs-navigation-item.entry.js +6 -3
- package/dist/esm/spw-tabs-navigation-item.entry.js.map +1 -1
- package/dist/esm/spw-tabs-navigation.entry.js +85 -3
- package/dist/esm/spw-tabs-navigation.entry.js.map +1 -1
- package/dist/esm/spw-tabs.entry.js +70 -13
- package/dist/esm/spw-tabs.entry.js.map +1 -1
- package/dist/esm/spw-tag.entry.js +2 -2
- package/dist/esm/spw-text-field.entry.js +2 -2
- package/dist/esm/spw-textarea.entry.js +2 -2
- package/dist/esm/spw-tile-description.entry.js +2 -2
- package/dist/esm/spw-tile-title.entry.js +2 -2
- package/dist/esm/spw-tile.entry.js +2 -2
- package/dist/esm/spw-tooltip.entry.js +3 -3
- package/dist/esm/spw-tooltip.entry.js.map +1 -1
- package/dist/esm/spw-topbar.entry.js +2 -2
- package/dist/esm/utils-zpG0udTn.js.map +1 -1
- package/dist/spw-stencil-library/{p-27d3d92a.entry.js → p-095280cd.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-4e96a7f8.entry.js → p-0aa4a108.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-3625250b.entry.js → p-1e725439.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-c93bb0fb.entry.js → p-2111f4af.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-0b4a2f05.entry.js → p-272b59d2.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-f384262d.entry.js → p-2e8ec25d.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-f8b02eb3.entry.js → p-2f4d2f5e.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-621edd61.entry.js → p-302b8062.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-ce16fd94.entry.js → p-3554fb8f.entry.js} +2 -2
- package/dist/spw-stencil-library/p-3554fb8f.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-98255d7f.entry.js → p-3a4b10ad.entry.js} +2 -2
- package/dist/spw-stencil-library/p-3ab472db.entry.js +2 -0
- package/dist/spw-stencil-library/p-3ab472db.entry.js.map +1 -0
- package/dist/spw-stencil-library/p-3e6fe922.entry.js +2 -0
- package/dist/spw-stencil-library/p-3e6fe922.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-eb6ad6f0.entry.js → p-40283415.entry.js} +2 -2
- package/dist/spw-stencil-library/p-40283415.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-86c265a0.entry.js → p-40875966.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-4122bb55.entry.js → p-4540f03d.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-754d81d9.entry.js → p-4c4a0709.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-49e6a16e.entry.js → p-4de11305.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-7c7f8eae.entry.js → p-5d7b7815.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-49221194.entry.js → p-5ed3e0dc.entry.js} +4 -4
- package/dist/spw-stencil-library/p-6080e3af.entry.js +2 -0
- package/dist/spw-stencil-library/p-6080e3af.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-3cdcc221.entry.js → p-623f0364.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-8ea75393.entry.js → p-65362ceb.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-9cdaf77f.entry.js → p-68470983.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-1d53f317.entry.js → p-6e73ea86.entry.js} +2 -2
- package/dist/spw-stencil-library/p-6e73ea86.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-8ae132ed.entry.js → p-6ec9bc6c.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-0f3f20f5.entry.js → p-7028e7b5.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-7d9b220f.entry.js → p-729ecfae.entry.js} +2 -2
- package/dist/spw-stencil-library/p-729ecfae.entry.js.map +1 -0
- package/dist/spw-stencil-library/p-73db3953.entry.js +2 -0
- package/dist/spw-stencil-library/p-73db3953.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-8b951993.entry.js → p-7e30e4c2.entry.js} +2 -2
- package/dist/spw-stencil-library/p-7e30e4c2.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-4081582a.entry.js → p-7f51d86c.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-aa7566e0.entry.js → p-81b268ec.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-3a446e55.entry.js → p-8abf47fe.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-30005a16.entry.js → p-8f3a311c.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-8312033a.entry.js → p-90b5dafe.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-328bfb78.entry.js → p-92c085a5.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-809f6063.entry.js → p-92dc2c82.entry.js} +2 -2
- package/dist/spw-stencil-library/p-93f062f5.entry.js +2 -0
- package/dist/spw-stencil-library/p-93f062f5.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-ae95b303.entry.js → p-999a607e.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-f7d5eb27.entry.js → p-9a5031d4.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-938971bc.entry.js → p-9b651a66.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-BaAUTDWF.js → p-BYM_CUUH.js} +2 -2
- package/dist/spw-stencil-library/p-BYM_CUUH.js.map +1 -0
- package/dist/spw-stencil-library/{p-325309ec.entry.js → p-a421a2bd.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-3ca241ed.entry.js → p-a46af3e5.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-96f2ab55.entry.js → p-a5b78201.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-16f48e73.entry.js → p-a7d606e3.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-5752fdef.entry.js → p-ae905af5.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-7a9c8362.entry.js → p-b044a74c.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-8b7f940d.entry.js → p-b0ca9615.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-c08f14f9.entry.js → p-b45534d4.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-add90792.entry.js → p-b77d1fe8.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-b6908714.entry.js → p-b7d4f7c6.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-3ffc32e2.entry.js → p-c7453498.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-a09a320d.entry.js → p-c7e025a5.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-1dde0477.entry.js → p-c8b5a26a.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-ea24705d.entry.js → p-cc8717c0.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-e95b2caa.entry.js → p-cc934cd6.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-cc2fc4d1.entry.js → p-cf508941.entry.js} +2 -2
- package/dist/spw-stencil-library/p-cfd71d4a.entry.js +2 -0
- package/dist/spw-stencil-library/p-cfd71d4a.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-dfade2bb.entry.js → p-cff5a7e4.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-ad03e5fa.entry.js → p-d2c4f07d.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-45abc261.entry.js → p-d67fdf8d.entry.js} +2 -2
- package/dist/spw-stencil-library/p-d6b76976.entry.js +2 -0
- package/dist/spw-stencil-library/p-d6b76976.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-7f39476b.entry.js → p-dd441d3f.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-b7608972.entry.js → p-dff72718.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-b00ef206.entry.js → p-e5178e47.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-d4922788.entry.js → p-e67b5361.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-08ead4ae.entry.js → p-e6981b73.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-fa895f36.entry.js → p-e771bb8e.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-102ff932.entry.js → p-f108ecf1.entry.js} +2 -2
- package/dist/spw-stencil-library/p-f3e9ab57.entry.js +2 -0
- package/dist/spw-stencil-library/p-f3e9ab57.entry.js.map +1 -0
- package/dist/spw-stencil-library/{p-a992edea.entry.js → p-f62d837a.entry.js} +2 -2
- package/dist/spw-stencil-library/{p-44a61c9f.entry.js → p-fc1d8034.entry.js} +2 -2
- package/dist/spw-stencil-library/p-ffb3b941.entry.js +2 -0
- package/dist/spw-stencil-library/p-ffb3b941.entry.js.map +1 -0
- package/dist/spw-stencil-library/p-zpG0udTn.js.map +1 -1
- package/dist/spw-stencil-library/spw-checkbox.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-custom-select.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 -0
- package/dist/spw-stencil-library/spw-modal.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-select.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-stencil-library.css +5 -1
- package/dist/spw-stencil-library/spw-stencil-library.esm.js +1 -1
- package/dist/spw-stencil-library/spw-table-cell.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-row.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-table.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-tabs-navigation-item.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-tabs-navigation.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-tabs.entry.esm.js.map +1 -1
- package/dist/spw-stencil-library/spw-tooltip.entry.esm.js.map +1 -1
- package/dist/stats.json +2097 -1142
- package/dist/types/components/spw-checkbox/spw-checkbox.d.ts +2 -0
- package/dist/types/components/spw-custom-select/spw-custom-select.d.ts +3 -3
- package/dist/types/components/spw-hero/spw-hero.d.ts +2 -0
- package/dist/types/components/spw-illustration/spw-illustration.d.ts +32 -0
- package/dist/types/components/spw-select/spw-select.d.ts +12 -0
- package/dist/types/components/spw-table/spw-table-row/spw-table-row.d.ts +3 -0
- package/dist/types/components/spw-table/spw-table.d.ts +1 -0
- package/dist/types/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.d.ts +17 -0
- package/dist/types/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.d.ts +4 -0
- package/dist/types/components/spw-tabs/spw-tabs.d.ts +11 -1
- package/dist/types/components.d.ts +160 -12
- package/dist/types/stories/components/spw-custom-select/spw-custom-select.stories.d.ts +9 -0
- package/dist/types/stories/organisms/spw-hero/spw-hero.stories.d.ts +2 -0
- package/hydrate/index.js +2757 -125
- package/hydrate/index.mjs +2757 -125
- package/package.json +1 -1
- package/dist/cjs/index-DPoQq9TD.js.map +0 -1
- package/dist/components/p-COf5LpGH.js +0 -125
- package/dist/components/p-COf5LpGH.js.map +0 -1
- package/dist/components/p-DqtSG4Dc.js.map +0 -1
- package/dist/esm/index-BaAUTDWF.js.map +0 -1
- package/dist/spw-stencil-library/_commonjsHelpers-CvGrISen.js.map +0 -1
- package/dist/spw-stencil-library/app-globals-DQuL1Twl.js.map +0 -1
- package/dist/spw-stencil-library/index-CHjlxlqM.js.map +0 -1
- package/dist/spw-stencil-library/p-1d53f317.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-275708d3.entry.js +0 -2
- package/dist/spw-stencil-library/p-275708d3.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-4917458b.entry.js +0 -2
- package/dist/spw-stencil-library/p-4917458b.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-49d9a720.entry.js +0 -2
- package/dist/spw-stencil-library/p-49d9a720.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-4ae6cb6c.entry.js +0 -2
- package/dist/spw-stencil-library/p-4ae6cb6c.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-7d9b220f.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-84132f3d.entry.js +0 -2
- package/dist/spw-stencil-library/p-84132f3d.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-8b951993.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-BaAUTDWF.js.map +0 -1
- package/dist/spw-stencil-library/p-b24afc65.entry.js +0 -2
- package/dist/spw-stencil-library/p-b24afc65.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-ce16fd94.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-cf09d649.entry.js +0 -2
- package/dist/spw-stencil-library/p-cf09d649.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-eb6ad6f0.entry.js.map +0 -1
- package/dist/spw-stencil-library/p-f7dd32a4.entry.js +0 -2
- package/dist/spw-stencil-library/p-f7dd32a4.entry.js.map +0 -1
- package/dist/spw-stencil-library/utils-BXStmMnc.js.map +0 -1
- /package/dist/spw-stencil-library/{p-27d3d92a.entry.js.map → p-095280cd.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-4e96a7f8.entry.js.map → p-0aa4a108.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-3625250b.entry.js.map → p-1e725439.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-c93bb0fb.entry.js.map → p-2111f4af.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-0b4a2f05.entry.js.map → p-272b59d2.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-f384262d.entry.js.map → p-2e8ec25d.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-f8b02eb3.entry.js.map → p-2f4d2f5e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-621edd61.entry.js.map → p-302b8062.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-98255d7f.entry.js.map → p-3a4b10ad.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-86c265a0.entry.js.map → p-40875966.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-4122bb55.entry.js.map → p-4540f03d.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-754d81d9.entry.js.map → p-4c4a0709.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-49e6a16e.entry.js.map → p-4de11305.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-7c7f8eae.entry.js.map → p-5d7b7815.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-49221194.entry.js.map → p-5ed3e0dc.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-3cdcc221.entry.js.map → p-623f0364.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-8ea75393.entry.js.map → p-65362ceb.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-9cdaf77f.entry.js.map → p-68470983.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-8ae132ed.entry.js.map → p-6ec9bc6c.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-0f3f20f5.entry.js.map → p-7028e7b5.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-4081582a.entry.js.map → p-7f51d86c.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-aa7566e0.entry.js.map → p-81b268ec.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-3a446e55.entry.js.map → p-8abf47fe.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-30005a16.entry.js.map → p-8f3a311c.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-8312033a.entry.js.map → p-90b5dafe.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-328bfb78.entry.js.map → p-92c085a5.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-809f6063.entry.js.map → p-92dc2c82.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-ae95b303.entry.js.map → p-999a607e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-f7d5eb27.entry.js.map → p-9a5031d4.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-938971bc.entry.js.map → p-9b651a66.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-325309ec.entry.js.map → p-a421a2bd.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-3ca241ed.entry.js.map → p-a46af3e5.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-96f2ab55.entry.js.map → p-a5b78201.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-16f48e73.entry.js.map → p-a7d606e3.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-5752fdef.entry.js.map → p-ae905af5.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-7a9c8362.entry.js.map → p-b044a74c.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-8b7f940d.entry.js.map → p-b0ca9615.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-c08f14f9.entry.js.map → p-b45534d4.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-add90792.entry.js.map → p-b77d1fe8.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-b6908714.entry.js.map → p-b7d4f7c6.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-3ffc32e2.entry.js.map → p-c7453498.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-a09a320d.entry.js.map → p-c7e025a5.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-1dde0477.entry.js.map → p-c8b5a26a.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-ea24705d.entry.js.map → p-cc8717c0.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-e95b2caa.entry.js.map → p-cc934cd6.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-cc2fc4d1.entry.js.map → p-cf508941.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-dfade2bb.entry.js.map → p-cff5a7e4.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-ad03e5fa.entry.js.map → p-d2c4f07d.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-45abc261.entry.js.map → p-d67fdf8d.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-7f39476b.entry.js.map → p-dd441d3f.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-b7608972.entry.js.map → p-dff72718.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-b00ef206.entry.js.map → p-e5178e47.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-d4922788.entry.js.map → p-e67b5361.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-08ead4ae.entry.js.map → p-e6981b73.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-fa895f36.entry.js.map → p-e771bb8e.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-102ff932.entry.js.map → p-f108ecf1.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-a992edea.entry.js.map → p-f62d837a.entry.js.map} +0 -0
- /package/dist/spw-stencil-library/{p-44a61c9f.entry.js.map → p-fc1d8034.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spw-table.entry.cjs.js","sources":["src/components/spw-table/spw-table.scss?tag=spw-table&encapsulation=shadow","src/components/spw-table/spw-table.tsx"],"sourcesContent":[":host {\n display: block;\n position: relative;\n}\n\n%highlight {\n font-weight: 700;\n background: var(--spw-color-themes-grey-grey-100);\n}\n\n.spw-table-container {\n width: 100%;\n overflow-x: auto;\n overflow-y: auto;\n max-height: var(--spw-table-max-height);\n border-radius: 4px;\n outline: 1px solid var(--spw-color-themes-grey-grey-300);\n outline-offset: -1px;\n position: relative;\n @include scrollbars(var(--spw-color-themes-grey-grey-400), var(--spw-ds-white));\n}\n\n.spw-table {\n width: 100%;\n border-collapse: collapse;\n min-width: var(--spw-table-min-width);\n border-radius: 4px;\n position: relative;\n}\n","import { Component, Element, Event, Listen, State, EventEmitter, Host, Prop, h } from '@stencil/core';\n\nexport interface SortEvent {\n column: string;\n direction: 'asc' | 'desc';\n}\n\n@Component({\n tag: 'spw-table',\n styleUrl: 'spw-table.scss',\n shadow: true,\n})\nexport class SpwTable {\n @Element() el: HTMLSpwTableElement;\n\n /** Propriété pour l'aria-label, à des fins d'accessibilité */\n @Prop() accAriaLabel?: string;\n /** Si le header du tableau doit être sticky ou non */\n @Prop() isSticky?: boolean = false;\n /** Si défini, apparition d'une scrollbar verticale et max-height */\n @Prop() maxHeight?: string;\n /** Si défini, apparition d'une scrollbar horizontale et max-width */\n @Prop() minWidth?: string = '600';\n /** Définit un background de couleur différent une ligne sur 2 */\n @Prop() isZebra?: boolean = false;\n\n @Event() spwSort: EventEmitter<SortEvent>;\n\n @State() currentSort?: SortEvent;\n\n componentDidLoad() {\n this.updateZebra();\n const slot = this.el.shadowRoot?.querySelector('slot');\n if (slot) {\n slot.addEventListener('slotchange', () => this.setupHeaderCheckboxListener());\n }\n this.setupHeaderCheckboxListener();\n this.setupBodyCheckboxListener();\n }\n\n private getMasterCheckboxColumnIndex(): number | null {\n const slot = this.el.shadowRoot?.querySelector('slot');\n if (!slot) return null;\n\n const assignedElements = slot.assignedElements({ flatten: true }) as HTMLElement[];\n const head = assignedElements.find(el => el.tagName.toLowerCase() === 'spw-table-head');\n if (!head) return null;\n\n const headerRow = head.querySelector('spw-table-row');\n if (!headerRow) return null;\n\n const headerCells = Array.from(headerRow.querySelectorAll('spw-table-header'));\n\n for (let i = 0; i < headerCells.length; i++) {\n if (headerCells[i].querySelector('spw-checkbox')) {\n return i;\n }\n }\n\n return null;\n }\n\n private updateMasterCheckboxState() {\n const columnIndex = this.getMasterCheckboxColumnIndex();\n if (columnIndex === null) return;\n\n const slot = this.el.shadowRoot?.querySelector('slot');\n const assignedElements = slot?.assignedElements({ flatten: true }) as HTMLElement[] | undefined;\n if (!assignedElements) return;\n\n const head = assignedElements.find(el => el.tagName.toLowerCase() === 'spw-table-head');\n const body = assignedElements.find(el => el.tagName.toLowerCase() === 'spw-table-body');\n if (!head || !body) return;\n\n const headerRow = head.querySelector('spw-table-row');\n const headerCell = headerRow?.querySelectorAll('spw-table-header')[columnIndex];\n const masterCheckbox = headerCell?.querySelector('spw-checkbox') as any;\n\n const rows = body.querySelectorAll('spw-table-row');\n const values = Array.from(rows).map(row => {\n const cell = row.querySelectorAll('spw-table-cell')[columnIndex];\n const cb = cell?.querySelector('spw-checkbox') as any;\n return cb?.checked === true || cb?.getAttribute('checked') === 'true';\n });\n\n if (values.length === 0) return;\n\n const allChecked = values.every(Boolean);\n const noneChecked = values.every(v => !v);\n\n if (!masterCheckbox) return;\n\n if (allChecked) {\n masterCheckbox.checked = true;\n masterCheckbox.setAttribute('checked', 'true');\n masterCheckbox.setAttribute('icon', 'fa-check');\n } else if (noneChecked) {\n masterCheckbox.checked = false;\n masterCheckbox.setAttribute('checked', 'false');\n masterCheckbox.setAttribute('icon', 'fa-check');\n } else {\n masterCheckbox.checked = true;\n masterCheckbox.setAttribute('checked', 'true');\n masterCheckbox.setAttribute('icon', 'fa-minus');\n }\n }\n\n private setupHeaderCheckboxListener() {\n const assignedElements = this.el.shadowRoot?.querySelector('slot')?.assignedElements({ flatten: true }) as HTMLElement[] | undefined;\n\n if (!assignedElements) return;\n\n const head = assignedElements.find(el => el.tagName.toLowerCase() === 'spw-table-head');\n if (!head) return;\n\n const headerRows = head.querySelectorAll('spw-table-row');\n\n headerRows.forEach(row => {\n const checkboxes = row.querySelectorAll('spw-checkbox');\n checkboxes.forEach(cb => {\n cb.addEventListener('spwChange', (event: CustomEvent<boolean>) => {\n this.toggleAllRowCheckboxes(event.detail);\n });\n });\n });\n }\n\n private setupBodyCheckboxListener() {\n const body = Array.from(this.el.children).find(el => el.tagName.toLowerCase() === 'spw-table-body');\n if (!body) return;\n\n const rows = body.querySelectorAll('spw-table-row');\n rows.forEach(row => {\n const checkboxes = row.querySelectorAll('spw-checkbox');\n checkboxes.forEach(cb => {\n cb.addEventListener('spwChange', () => this.updateMasterCheckboxState());\n });\n });\n }\n\n private toggleAllRowCheckboxes(checked: boolean) {\n const columnIndex = this.getMasterCheckboxColumnIndex();\n if (columnIndex === null) return;\n\n const slot = this.el.shadowRoot?.querySelector('slot');\n const assignedElements = slot?.assignedElements({ flatten: true }) as HTMLElement[] | undefined;\n if (!assignedElements) return;\n\n const body = assignedElements.find(el => el.tagName.toLowerCase() === 'spw-table-body');\n if (!body) return;\n\n const rows = body.querySelectorAll('spw-table-row');\n\n rows.forEach(row => {\n const cells = Array.from(row.querySelectorAll('spw-table-cell'));\n const targetCell = cells[columnIndex];\n const checkbox = targetCell?.querySelector('spw-checkbox') as any;\n\n if (checkbox) {\n checkbox.checked = checked;\n checkbox.setAttribute('checked', checked.toString());\n }\n });\n\n setTimeout(() => {\n this.updateMasterCheckboxState();\n }, 0);\n }\n\n @Listen('spwHeaderClick')\n handleHeaderClick(event: CustomEvent<string>) {\n const columnId = event.detail;\n const current = this.currentSort;\n\n const newSort: SortEvent = {\n column: columnId,\n direction: current?.column === columnId && current.direction === 'asc' ? 'desc' : 'asc',\n };\n\n this.currentSort = newSort;\n this.spwSort.emit(newSort);\n this.sortRows(newSort.column, newSort.direction);\n this.updateHeadersSortState(newSort);\n this.updateZebra();\n }\n\n private updateZebra() {\n const slot = this.el.shadowRoot.querySelector('slot');\n if (!slot) return;\n\n const assignedElements = slot.assignedElements({ flatten: true });\n const body = assignedElements.find(el => el.tagName.toLowerCase() === 'spw-table-body') as any;\n\n if (body) {\n if (this.isZebra) {\n body.setAttribute('is-zebra', 'true');\n } else {\n body.removeAttribute('is-zebra');\n }\n\n if (typeof body.updateZebraStyles === 'function') {\n body.updateZebraStyles();\n }\n }\n }\n\n private sortRows(columnId: string, direction: 'asc' | 'desc') {\n const body = this.el.shadowRoot\n .querySelector('slot')\n ?.assignedElements()\n .find(el => el.tagName.toLowerCase() === 'spw-table-body');\n if (!body) return;\n\n const rows = Array.from(body.querySelectorAll('spw-table-row'));\n\n const columnIndex = Array.from(this.el.querySelectorAll('spw-table-header')).findIndex((header: any) => header.columnId === columnId);\n if (columnIndex === -1) return;\n\n rows.sort((a: any, b: any) => {\n const aCell = a.querySelectorAll('spw-table-cell')[columnIndex];\n const bCell = b.querySelectorAll('spw-table-cell')[columnIndex];\n if (!aCell || !bCell) return 0;\n\n const aValue = aCell.textContent.trim();\n const bValue = bCell.textContent.trim();\n\n if (!isNaN(Number(aValue)) && !isNaN(Number(bValue))) {\n return direction === 'asc' ? +aValue - +bValue : +bValue - +aValue;\n }\n\n return direction === 'asc' ? aValue.localeCompare(bValue) : bValue.localeCompare(aValue);\n });\n\n rows.forEach(row => body.appendChild(row));\n\n const bodyComponent = body as HTMLSpwTableBodyElement;\n if (bodyComponent?.updateZebraStyles) {\n bodyComponent.updateZebraStyles();\n }\n }\n\n private updateHeadersSortState(sort: SortEvent) {\n const headers = this.el.querySelectorAll('spw-table-header');\n headers.forEach((header: any) => {\n const isCurrent = header.columnId === sort.column;\n header.isSorted = isCurrent;\n header.sortDirection = isCurrent ? sort.direction : undefined;\n });\n }\n\n private formatSize(value?: string): string {\n if (value === undefined || value === null) {\n return 'auto';\n }\n return `${value}px`;\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-table': true,\n 'spw-table--is-sticky': this.isSticky,\n };\n }\n\n render() {\n return (\n <Host\n style={{\n '--spw-table-max-height': this.formatSize(this.maxHeight),\n '--spw-table-min-width': this.formatSize(this.minWidth),\n }}\n >\n <div class=\"spw-table-container\">\n <table part=\"table\" class={this.elementClass} role=\"table\" aria-label={this.accAriaLabel}>\n <slot />\n </table>\n </div>\n </Host>\n );\n }\n}\n"],"names":["h","Host"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spw-table.entry.cjs.js","sources":["src/components/spw-table/spw-table.scss?tag=spw-table&encapsulation=shadow","src/components/spw-table/spw-table.tsx"],"sourcesContent":[":host {\n display: block;\n position: relative;\n}\n\n%highlight {\n font-weight: 700;\n background: var(--spw-color-themes-grey-grey-100);\n}\n\n.spw-table-container {\n width: 100%;\n overflow-x: auto;\n overflow-y: auto;\n max-height: var(--spw-table-max-height);\n border-radius: 4px;\n outline: 1px solid var(--spw-color-themes-grey-grey-300);\n outline-offset: -1px;\n position: relative;\n @include scrollbars(var(--spw-color-themes-grey-grey-400), var(--spw-ds-white));\n}\n\n.spw-table {\n width: 100%;\n border-collapse: collapse;\n min-width: var(--spw-table-min-width);\n border-radius: 4px;\n position: relative;\n}\n","import { Component, Element, Event, Listen, State, EventEmitter, Host, Prop, h } from '@stencil/core';\n\nexport interface SortEvent {\n column: string;\n direction: 'asc' | 'desc';\n}\n\n@Component({\n tag: 'spw-table',\n styleUrl: 'spw-table.scss',\n shadow: true,\n})\nexport class SpwTable {\n @Element() el: HTMLSpwTableElement;\n\n /** Propriété pour l'aria-label, à des fins d'accessibilité */\n @Prop() accAriaLabel?: string;\n /** Si le header du tableau doit être sticky ou non */\n @Prop() isSticky?: boolean = false;\n /** Si défini, apparition d'une scrollbar verticale et max-height */\n @Prop() maxHeight?: string;\n /** Si défini, apparition d'une scrollbar horizontale et max-width */\n @Prop() minWidth?: string = '600';\n /** Définit un background de couleur différent une ligne sur 2 */\n @Prop() isZebra?: boolean = false;\n\n @Event() spwSort: EventEmitter<SortEvent>;\n\n @State() currentSort?: SortEvent;\n\n componentDidLoad() {\n this.updateZebra();\n const slot = this.el.shadowRoot?.querySelector('slot');\n if (slot) {\n slot.addEventListener('slotchange', () => {\n this.setupHeaderCheckboxListener();\n this.updateMasterCheckboxState();\n });\n }\n this.setupHeaderCheckboxListener();\n this.setupBodyCheckboxListener();\n setTimeout(() => {\n this.updateMasterCheckboxState();\n }, 0);\n }\n\n private getMasterCheckboxColumnIndex(): number | null {\n const slot = this.el.shadowRoot?.querySelector('slot');\n if (!slot) return null;\n\n const assignedElements = slot.assignedElements({ flatten: true }) as HTMLElement[];\n const head = assignedElements.find(el => el.tagName.toLowerCase() === 'spw-table-head');\n if (!head) return null;\n\n const headerRow = head.querySelector('spw-table-row');\n if (!headerRow) return null;\n\n const headerCells = Array.from(headerRow.querySelectorAll('spw-table-header'));\n\n for (let i = 0; i < headerCells.length; i++) {\n if (headerCells[i].querySelector('spw-checkbox')) {\n return i;\n }\n }\n\n return null;\n }\n\n private isCheckboxDisabled(checkbox: any): boolean {\n return checkbox?.disabled === true || checkbox?.getAttribute('disabled') === 'true' || checkbox?.getAttribute('disabled') === '';\n }\n\n private updateMasterCheckboxState() {\n const columnIndex = this.getMasterCheckboxColumnIndex();\n if (columnIndex === null) return;\n\n const slot = this.el.shadowRoot?.querySelector('slot');\n const assignedElements = slot?.assignedElements({ flatten: true }) as HTMLElement[] | undefined;\n if (!assignedElements) return;\n\n const head = assignedElements.find(el => el.tagName.toLowerCase() === 'spw-table-head');\n const body = assignedElements.find(el => el.tagName.toLowerCase() === 'spw-table-body');\n if (!head || !body) return;\n\n const headerRow = head.querySelector('spw-table-row');\n const headerCell = headerRow?.querySelectorAll('spw-table-header')[columnIndex];\n const masterCheckbox = headerCell?.querySelector('spw-checkbox') as any;\n\n const rows = body.querySelectorAll('spw-table-row');\n const checkboxData = Array.from(rows).map(row => {\n const cell = row.querySelectorAll('spw-table-cell')[columnIndex];\n const cb = cell?.querySelector('spw-checkbox') as any;\n return {\n checked: cb?.checked === true || cb?.getAttribute('checked') === 'true',\n disabled: this.isCheckboxDisabled(cb),\n };\n });\n\n const enabledCheckboxes = checkboxData.filter(item => !item.disabled);\n\n if (enabledCheckboxes.length === 0) return;\n\n const allChecked = enabledCheckboxes.every(item => item.checked);\n const noneChecked = enabledCheckboxes.every(item => !item.checked);\n\n if (!masterCheckbox) return;\n\n if (allChecked) {\n masterCheckbox.checked = true;\n masterCheckbox.setAttribute('checked', 'true');\n masterCheckbox.setAttribute('icon', 'fa-check');\n } else if (noneChecked) {\n masterCheckbox.checked = false;\n masterCheckbox.setAttribute('checked', 'false');\n masterCheckbox.setAttribute('icon', 'fa-check');\n } else {\n masterCheckbox.checked = true;\n masterCheckbox.setAttribute('checked', 'true');\n masterCheckbox.setAttribute('icon', 'fa-minus');\n }\n }\n\n private setupHeaderCheckboxListener() {\n const assignedElements = this.el.shadowRoot?.querySelector('slot')?.assignedElements({ flatten: true }) as HTMLElement[] | undefined;\n\n if (!assignedElements) return;\n\n const head = assignedElements.find(el => el.tagName.toLowerCase() === 'spw-table-head');\n if (!head) return;\n\n const headerRows = head.querySelectorAll('spw-table-row');\n\n headerRows.forEach(row => {\n const checkboxes = row.querySelectorAll('spw-checkbox');\n checkboxes.forEach(cb => {\n cb.addEventListener('spwChange', (event: CustomEvent<boolean>) => {\n this.toggleAllRowCheckboxes(event.detail);\n });\n });\n });\n }\n\n private setupBodyCheckboxListener() {\n const body = Array.from(this.el.children).find(el => el.tagName.toLowerCase() === 'spw-table-body');\n if (!body) return;\n\n const rows = body.querySelectorAll('spw-table-row');\n rows.forEach(row => {\n const checkboxes = row.querySelectorAll('spw-checkbox');\n checkboxes.forEach(cb => {\n cb.addEventListener('spwChange', () => this.updateMasterCheckboxState());\n });\n });\n }\n\n private toggleAllRowCheckboxes(checked: boolean) {\n const columnIndex = this.getMasterCheckboxColumnIndex();\n if (columnIndex === null) return;\n\n const slot = this.el.shadowRoot?.querySelector('slot');\n const assignedElements = slot?.assignedElements({ flatten: true }) as HTMLElement[] | undefined;\n if (!assignedElements) return;\n\n const body = assignedElements.find(el => el.tagName.toLowerCase() === 'spw-table-body');\n if (!body) return;\n\n const rows = body.querySelectorAll('spw-table-row');\n\n rows.forEach(row => {\n const cells = Array.from(row.querySelectorAll('spw-table-cell'));\n const targetCell = cells[columnIndex];\n const checkbox = targetCell?.querySelector('spw-checkbox') as any;\n\n if (checkbox && !this.isCheckboxDisabled(checkbox)) {\n checkbox.checked = checked;\n checkbox.setAttribute('checked', checked.toString());\n }\n });\n\n setTimeout(() => {\n this.updateMasterCheckboxState();\n }, 0);\n }\n\n @Listen('spwHeaderClick')\n handleHeaderClick(event: CustomEvent<string>) {\n const columnId = event.detail;\n const current = this.currentSort;\n\n const newSort: SortEvent = {\n column: columnId,\n direction: current?.column === columnId && current.direction === 'asc' ? 'desc' : 'asc',\n };\n\n this.currentSort = newSort;\n this.spwSort.emit(newSort);\n this.sortRows(newSort.column, newSort.direction);\n this.updateHeadersSortState(newSort);\n this.updateZebra();\n }\n\n private updateZebra() {\n const slot = this.el.shadowRoot.querySelector('slot');\n if (!slot) return;\n\n const assignedElements = slot.assignedElements({ flatten: true });\n const body = assignedElements.find(el => el.tagName.toLowerCase() === 'spw-table-body') as any;\n\n if (body) {\n if (this.isZebra) {\n body.setAttribute('is-zebra', 'true');\n } else {\n body.removeAttribute('is-zebra');\n }\n\n if (typeof body.updateZebraStyles === 'function') {\n body.updateZebraStyles();\n }\n }\n }\n\n private sortRows(columnId: string, direction: 'asc' | 'desc') {\n const body = this.el.shadowRoot\n .querySelector('slot')\n ?.assignedElements()\n .find(el => el.tagName.toLowerCase() === 'spw-table-body');\n if (!body) return;\n\n const rows = Array.from(body.querySelectorAll('spw-table-row'));\n\n const columnIndex = Array.from(this.el.querySelectorAll('spw-table-header')).findIndex((header: any) => header.columnId === columnId);\n if (columnIndex === -1) return;\n\n rows.sort((a: any, b: any) => {\n const aCell = a.querySelectorAll('spw-table-cell')[columnIndex];\n const bCell = b.querySelectorAll('spw-table-cell')[columnIndex];\n if (!aCell || !bCell) return 0;\n\n const aValue = aCell.textContent.trim();\n const bValue = bCell.textContent.trim();\n\n if (!isNaN(Number(aValue)) && !isNaN(Number(bValue))) {\n return direction === 'asc' ? +aValue - +bValue : +bValue - +aValue;\n }\n\n return direction === 'asc' ? aValue.localeCompare(bValue) : bValue.localeCompare(aValue);\n });\n\n rows.forEach(row => body.appendChild(row));\n\n const bodyComponent = body as HTMLSpwTableBodyElement;\n if (bodyComponent?.updateZebraStyles) {\n bodyComponent.updateZebraStyles();\n }\n }\n\n private updateHeadersSortState(sort: SortEvent) {\n const headers = this.el.querySelectorAll('spw-table-header');\n headers.forEach((header: any) => {\n const isCurrent = header.columnId === sort.column;\n header.isSorted = isCurrent;\n header.sortDirection = isCurrent ? sort.direction : undefined;\n });\n }\n\n private formatSize(value?: string): string {\n if (value === undefined || value === null) {\n return 'auto';\n }\n return `${value}px`;\n }\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-table': true,\n 'spw-table--is-sticky': this.isSticky,\n };\n }\n\n render() {\n return (\n <Host\n style={{\n '--spw-table-max-height': this.formatSize(this.maxHeight),\n '--spw-table-min-width': this.formatSize(this.minWidth),\n }}\n >\n <div class=\"spw-table-container\">\n <table part=\"table\" class={this.elementClass} role=\"table\" aria-label={this.accAriaLabel}>\n <slot />\n </table>\n </div>\n </Host>\n );\n }\n}\n"],"names":["h","Host"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-iVhYitTd.js');
|
|
4
4
|
|
|
5
5
|
const spwTabsContentCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;box-sizing:border-box;display:block;font-size:100%;line-height:1.3}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1200px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px;width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}:host(.--box) .spw-tabs-content{background:#fff;border:1px solid var(--spw-colors-support-grey-grey-300);border-radius:0 0 4px 4px}";
|
|
6
6
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-iVhYitTd.js');
|
|
4
4
|
|
|
5
|
-
const spwTabsNavigationItemCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;--spw-tabs-max-width-text:200px;--spw-tabs-border-radius:4px 4px 0 0;--spw-tabs-margin-left:0;box-sizing:border-box;display:contents;font-size:100%;line-height:1.3}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1200px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px;width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}.spw-tabs-navigation-item{color:var(--spw-colors-support-grey-grey-700);cursor:pointer;
|
|
5
|
+
const spwTabsNavigationItemCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;--spw-tabs-max-width-text:200px;--spw-tabs-border-radius:4px 4px 0 0;--spw-tabs-margin-left:0;box-sizing:border-box;display:contents;font-size:100%;line-height:1.3}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1200px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px;width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}.spw-tabs-navigation-item{color:var(--spw-colors-support-grey-grey-700);cursor:pointer;position:relative;transition:color .2s linear;-webkit-user-select:none;-moz-user-select:none;user-select:none}.spw-tabs-navigation-item:hover{color:var(--spw-colors-support-grey-grey-900)}:host(.--box) .spw-tabs-navigation-item:hover{color:var(--spw-colors-support-grey-grey-900)}.spw-tabs-navigation-item:focus-visible{outline:2px solid #000;outline-offset:-2px}:host(.--box) .spw-tabs-navigation-item{background:var(--spw-colors-support-grey-grey-100);border:1px solid var(--spw-colors-support-grey-grey-300);border-radius:var(--spw-tabs-border-radius);color:var(--spw-colors-support-grey-grey-600);margin-left:var(--spw-tabs-margin-left);margin-top:3px}.spw-tabs-navigation-item--disabled{cursor:not-allowed;opacity:.6}.spw-tabs-navigation-item--disabled:hover{color:var(--spw-colors-support-grey-grey-700)}:host(.--box) .spw-tabs-navigation-item--disabled{color:var(--spw-colors-support-grey-grey-400);opacity:1}:host(.--box) .spw-tabs-navigation-item--disabled:hover{color:var(--spw-colors-support-grey-grey-400)}:host(.--box) .spw-tabs-navigation-item--disabled:active{transform:none}.spw-tabs-navigation-item--active{border-bottom:0;color:var(--spw-colors-support-grey-grey-900)}.spw-tabs-navigation-item--active:after{background:var(--spw-ds-primary);bottom:0;content:\"\";height:2px;left:0;position:absolute;width:100%}:host(.--box) .spw-tabs-navigation-item--active{background:#fff;color:var(--spw-colors-support-grey-grey-900);margin-top:0;position:relative;top:1px}:host(.--box) .spw-tabs-navigation-item--active:after{display:none}.spw-tabs-navigation-item--bubble:before{background:var(--spw-ds-primary);border-radius:50%;content:\"\";height:6px;position:absolute;right:-8px;top:2px;width:6px}:host(.--box) .spw-tabs-navigation-item--bubble:before{right:4px;top:4px}:host(.--ellipsis) .spw-tabs-navigation-item{flex-shrink:0;max-width:var(--spw-tabs-max-width-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(.--ellipsis) .spw-tabs-navigation-item spw-tooltip{display:contents}:host(.--small) .spw-tabs-navigation-item{font-size:14px;padding:8px 0 12px}:host(.--small.--box) .spw-tabs-navigation-item{padding:7px 16px 6px}:host(.--small.--box) .spw-tabs-navigation-item .spw-tabs-navigation-item--active{padding:8px 16px}:host(.--medium) .spw-tabs-navigation-item{font-size:16px;padding:12px 0 16px}:host(.--medium.--box) .spw-tabs-navigation-item{padding:11px 16px 10px}:host(.--medium.--box) .spw-tabs-navigation-item .spw-tabs-navigation-item--active{padding:12px 16px}:host(.--large) .spw-tabs-navigation-item{font-size:18px;padding:16px 0 20px}:host(.--large.--box) .spw-tabs-navigation-item{padding:15px 20px 14px}:host(.--large.--box) .spw-tabs-navigation-item .spw-tabs-navigation-item--active{padding:16px 20px}.spw-tabs-navigation-item .spw-icon--left{margin-right:4px}.spw-tabs-navigation-item .spw-icon--right{margin-left:4px}";
|
|
6
6
|
|
|
7
7
|
const SpwTabsNavigationItem = class {
|
|
8
8
|
constructor(hostRef) {
|
|
@@ -62,7 +62,10 @@ const SpwTabsNavigationItem = class {
|
|
|
62
62
|
};
|
|
63
63
|
}
|
|
64
64
|
render() {
|
|
65
|
-
|
|
65
|
+
const iconPosition = this.icon && !this.iconPosition ? 'right' : this.iconPosition;
|
|
66
|
+
const iconClass = `spw-icon--${iconPosition}`;
|
|
67
|
+
const iconElement = this.icon ? index.h("spw-icon", { class: iconClass, icon: this.icon }) : null;
|
|
68
|
+
return (index.h(index.Host, { key: '2c8b4f33a4ce4b0d93d19f60d71c5e98493f9b61', class: this.active ? '--active' : '' }, index.h("li", { key: '13bd151dd875a78cb40a1dbccd572d1c27fc498d', id: `tab-${this.tabId}`, role: "tab", "aria-selected": this.active ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : 'false', "aria-controls": `panel-${this.tabId}`, "aria-label": this.slotText, onKeyDown: this.handleKeyDown, tabIndex: this.disabled ? -1 : 0, class: this.elementClass, onClick: this.handleClick }, this.hasEllipsis && (index.h("spw-tooltip", { key: '4a23e2eabd0c9ebfd3a4a8585bf4c970588324e0', cursor: this.disabled ? 'disabled' : 'pointer', class: "spw-tooltip--has-ellipsis", tooltipText: this.slotText }, iconPosition === 'left' && iconElement, index.h("slot", { key: '6c2b2f731b1e33fa59970126366b0fec3a195351' }), iconPosition === 'right' && iconElement)), !this.hasEllipsis && (index.h(index.Fragment, { key: '1512342a37d70d6f77261c827b04a7fef5bb3518' }, iconPosition === 'left' && iconElement, index.h("slot", { key: 'e922274eabdd91e4ed47cda20f79e9214e7cbc73' }), iconPosition === 'right' && iconElement)), ' ', this.bubble && index.h("span", { key: '88b495cdbf39dabff8a04231da392e78f43e39c4', class: "bubble" }))));
|
|
66
69
|
}
|
|
67
70
|
get el() { return index.getElement(this); }
|
|
68
71
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"spw-tabs-navigation-item.entry.cjs.js","mappings":"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","names":["h","Host"],"sources":["src/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.scss?tag=spw-tabs-navigation-item&encapsulation=shadow","src/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.tsx"],"sourcesContent":[":host {\n display: contents;\n --spw-tabs-max-width-text: 200px;\n --spw-tabs-border-radius: 4px 4px 0 0;\n --spw-tabs-margin-left: 0;\n}\n\n.spw-tabs-navigation-item {\n position: relative;\n cursor: pointer;\n padding: 8px 0 12px 0;\n font-size: 14px;\n color: var(--spw-colors-support-grey-grey-700);\n user-select: none;\n transition: color 0.2s linear;\n &:hover {\n color: var(--spw-colors-support-grey-grey-900);\n :host(.--box) & {\n color: var(--spw-colors-support-grey-grey-900);\n }\n }\n &:focus-visible {\n outline: 2px solid black;\n outline-offset: -2px;\n }\n :host(.--box) & {\n background: var(--spw-colors-support-grey-grey-100);\n color: var(--spw-colors-support-grey-grey-600);\n border: 1px solid var(--spw-colors-support-grey-grey-300);\n padding: 7px 16px 6px 16px;\n margin-top: 3px;\n border-radius: var(--spw-tabs-border-radius);\n margin-left: var(--spw-tabs-margin-left);\n }\n &--disabled {\n opacity: 0.6;\n cursor: not-allowed;\n &:hover {\n color: var(--spw-colors-support-grey-grey-700);\n }\n :host(.--box) & {\n opacity: 1;\n color: var(--spw-colors-support-grey-grey-400);\n &:hover {\n color: var(--spw-colors-support-grey-grey-400);\n }\n &:active {\n transform: none;\n }\n }\n }\n &--active {\n color: var(--spw-colors-support-grey-grey-900);\n &:after {\n content: '';\n position: absolute;\n width: 100%;\n bottom: 0;\n left: 0;\n height: 2px;\n background: var(--spw-ds-primary);\n }\n :host(.--box) & {\n color: var(--spw-colors-support-grey-grey-900);\n background: white;\n border-bottom-color: transparent;\n padding: 8px 16px;\n margin-top: 0;\n &:after {\n display: none;\n }\n }\n }\n &--bubble {\n &:before {\n content: '';\n position: absolute;\n top: 2px;\n right: -8px;\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background: var(--spw-ds-primary);\n :host(.--box) & {\n top: 4px;\n right: 4px;\n }\n }\n }\n :host(.--ellipsis) & {\n max-width: var(--spw-tabs-max-width-text);\n overflow: hidden;\n text-overflow: ellipsis;\n }\n}\n","import { Component, h, Element, Prop, Event, State, EventEmitter, Host, Listen } from '@stencil/core';\n\n@Component({\n tag: 'spw-tabs-navigation-item',\n styleUrl: 'spw-tabs-navigation-item.scss',\n shadow: true,\n})\nexport class SpwTabsNavigationItem {\n @Element() el: HTMLElement;\n\n /** Définit un id pour le tab */\n @Prop() tabId!: string;\n /** Définit si le tab est actif ou non */\n @Prop() active: boolean = false;\n /** Définit si le tab est disabled ou non */\n @Prop() disabled: boolean = false;\n /** Prévoit la présence d'une pastille sur l'élément de navigation */\n @Prop() bubble: boolean = false;\n /** Définit si le texte doit être coupé pour les onglets au titre trop long */\n @Prop() hasEllipsis?: boolean;\n\n @State() slotText: string = '';\n\n @Event() tabSelected: EventEmitter<string>;\n\n componentDidLoad() {\n this.updateSlotText();\n }\n\n @Listen('slotchange')\n handleSlotChange() {\n this.updateSlotText();\n }\n\n private updateSlotText() {\n const slot = this.el.shadowRoot?.querySelector('slot');\n if (slot) {\n const assignedNodes = slot.assignedNodes({ flatten: true });\n const text = assignedNodes\n .filter(n => n.nodeType === Node.TEXT_NODE || n.nodeType === Node.ELEMENT_NODE)\n .map(n => (n as HTMLElement | Text).textContent?.trim())\n .join(' ')\n .trim();\n\n this.slotText = text || '';\n }\n }\n\n private handleClick = (event: Event) => {\n event.preventDefault();\n event.stopPropagation();\n\n if (!this.disabled) {\n this.tabSelected.emit(this.tabId);\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (this.disabled) return;\n\n const key = event.key;\n if (key === 'Enter' || key === ' ') {\n event.preventDefault();\n event.stopPropagation();\n this.tabSelected.emit(this.tabId);\n }\n };\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-tabs-navigation-item': true,\n 'spw-tabs-navigation-item--active': this.active,\n 'spw-tabs-navigation-item--disabled': this.disabled,\n 'spw-tabs-navigation-item--bubble': this.bubble,\n 'spw-tabs-navigation-item--ellipsis': this.hasEllipsis,\n };\n }\n\n render() {\n return (\n <Host class={this.active ? '--active' : ''}>\n <li\n id={`tab-${this.tabId}`}\n role=\"tab\"\n aria-selected={this.active ? 'true' : 'false'}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-controls={`panel-${this.tabId}`}\n aria-label={this.slotText}\n onKeyDown={this.handleKeyDown}\n tabIndex={this.disabled ? -1 : 0}\n class={this.elementClass}\n onClick={this.handleClick}\n title={this.hasEllipsis ? this.slotText : undefined}\n >\n <slot></slot>\n {this.bubble && <span class=\"bubble\"></span>}\n </li>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"spw-tabs-navigation-item.entry.cjs.js","mappings":"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","names":["h","Host","Fragment"],"sources":["src/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.scss?tag=spw-tabs-navigation-item&encapsulation=shadow","src/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.tsx"],"sourcesContent":[":host {\n display: contents;\n --spw-tabs-max-width-text: 200px;\n --spw-tabs-border-radius: 4px 4px 0 0;\n --spw-tabs-margin-left: 0;\n}\n\n.spw-tabs-navigation-item {\n position: relative;\n cursor: pointer;\n color: var(--spw-colors-support-grey-grey-700);\n user-select: none;\n transition: color 0.2s linear;\n &:hover {\n color: var(--spw-colors-support-grey-grey-900);\n :host(.--box) & {\n color: var(--spw-colors-support-grey-grey-900);\n }\n }\n &:focus-visible {\n outline: 2px solid black;\n outline-offset: -2px;\n }\n :host(.--box) & {\n background: var(--spw-colors-support-grey-grey-100);\n color: var(--spw-colors-support-grey-grey-600);\n border: 1px solid var(--spw-colors-support-grey-grey-300);\n margin-top: 3px;\n border-radius: var(--spw-tabs-border-radius);\n margin-left: var(--spw-tabs-margin-left);\n }\n &--disabled {\n opacity: 0.6;\n cursor: not-allowed;\n &:hover {\n color: var(--spw-colors-support-grey-grey-700);\n }\n :host(.--box) & {\n opacity: 1;\n color: var(--spw-colors-support-grey-grey-400);\n &:hover {\n color: var(--spw-colors-support-grey-grey-400);\n }\n &:active {\n transform: none;\n }\n }\n }\n &--active {\n border-bottom: 0;\n color: var(--spw-colors-support-grey-grey-900);\n &:after {\n content: '';\n position: absolute;\n width: 100%;\n bottom: 0;\n left: 0;\n height: 2px;\n background: var(--spw-ds-primary);\n }\n :host(.--box) & {\n position: relative;\n top: 1px;\n color: var(--spw-colors-support-grey-grey-900);\n background: white;\n // border-bottom-color: transparent;\n margin-top: 0;\n &:after {\n display: none;\n }\n }\n }\n &--bubble {\n &:before {\n content: '';\n position: absolute;\n top: 2px;\n right: -8px;\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background: var(--spw-ds-primary);\n :host(.--box) & {\n top: 4px;\n right: 4px;\n }\n }\n }\n :host(.--ellipsis) & {\n max-width: var(--spw-tabs-max-width-text);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n flex-shrink: 0;\n spw-tooltip {\n display: contents;\n }\n }\n :host(.--small) & {\n padding: 8px 0 12px 0;\n font-size: 14px;\n }\n :host(.--small.--box) & {\n padding: 7px 16px 6px 16px;\n .spw-tabs-navigation-item--active {\n padding: 8px 16px;\n }\n }\n :host(.--medium) & {\n padding: 12px 0 16px 0;\n font-size: 16px;\n }\n :host(.--medium.--box) & {\n padding: 11px 16px 10px 16px;\n .spw-tabs-navigation-item--active {\n padding: 12px 16px;\n }\n }\n :host(.--large) & {\n padding: 16px 0 20px 0;\n font-size: 18px;\n }\n :host(.--large.--box) & {\n padding: 15px 20px 14px 20px;\n .spw-tabs-navigation-item--active {\n padding: 16px 20px;\n }\n }\n .spw-icon {\n &--left {\n margin-right: 4px;\n }\n &--right {\n margin-left: 4px;\n }\n }\n}\n","import { Component, h, Fragment, Element, Prop, Event, State, EventEmitter, Host, Listen } from '@stencil/core';\n\n@Component({\n tag: 'spw-tabs-navigation-item',\n styleUrl: 'spw-tabs-navigation-item.scss',\n shadow: true,\n})\nexport class SpwTabsNavigationItem {\n @Element() el: HTMLElement;\n\n /** Définit un id pour le tab */\n @Prop() tabId!: string;\n /** Définit si le tab est actif ou non */\n @Prop() active: boolean = false;\n /** Définit si le tab est disabled ou non */\n @Prop() disabled: boolean = false;\n /** Prévoit la présence d'une pastille sur l'élément de navigation */\n @Prop() bubble: boolean = false;\n /** Définit si le texte doit être coupé pour les onglets au titre trop long */\n @Prop() hasEllipsis?: boolean;\n /** Si rempli, vous pouvez utiliser une référence d'icône font-awesome sur le spw-tabs-navigation-item */\n @Prop() icon?: string;\n /** Position de l'icône à l'intérieur du bouton sur le spw-tabs-navigation-item */\n @Prop() iconPosition?: 'left' | 'right';\n\n @State() slotText: string = '';\n\n @Event() tabSelected: EventEmitter<string>;\n\n componentDidLoad() {\n this.updateSlotText();\n }\n\n @Listen('slotchange')\n handleSlotChange() {\n this.updateSlotText();\n }\n\n private updateSlotText() {\n const slot = this.el.shadowRoot?.querySelector('slot');\n if (slot) {\n const assignedNodes = slot.assignedNodes({ flatten: true });\n const text = assignedNodes\n .filter(n => n.nodeType === Node.TEXT_NODE || n.nodeType === Node.ELEMENT_NODE)\n .map(n => (n as HTMLElement | Text).textContent?.trim())\n .join(' ')\n .trim();\n\n this.slotText = text || '';\n }\n }\n\n private handleClick = (event: Event) => {\n event.preventDefault();\n event.stopPropagation();\n\n if (!this.disabled) {\n this.tabSelected.emit(this.tabId);\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (this.disabled) return;\n\n const key = event.key;\n if (key === 'Enter' || key === ' ') {\n event.preventDefault();\n event.stopPropagation();\n this.tabSelected.emit(this.tabId);\n }\n };\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-tabs-navigation-item': true,\n 'spw-tabs-navigation-item--active': this.active,\n 'spw-tabs-navigation-item--disabled': this.disabled,\n 'spw-tabs-navigation-item--bubble': this.bubble,\n 'spw-tabs-navigation-item--ellipsis': this.hasEllipsis,\n };\n }\n\n render() {\n const iconPosition = this.icon && !this.iconPosition ? 'right' : this.iconPosition;\n const iconClass = `spw-icon--${iconPosition}`;\n const iconElement = this.icon ? <spw-icon class={iconClass} icon={this.icon}></spw-icon> : null;\n\n return (\n <Host class={this.active ? '--active' : ''}>\n <li\n id={`tab-${this.tabId}`}\n role=\"tab\"\n aria-selected={this.active ? 'true' : 'false'}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-controls={`panel-${this.tabId}`}\n aria-label={this.slotText}\n onKeyDown={this.handleKeyDown}\n tabIndex={this.disabled ? -1 : 0}\n class={this.elementClass}\n onClick={this.handleClick}\n >\n {this.hasEllipsis && (\n <spw-tooltip cursor={this.disabled ? 'disabled' : 'pointer'} class=\"spw-tooltip--has-ellipsis\" tooltipText={this.slotText}>\n {iconPosition === 'left' && iconElement}\n <slot></slot>\n {iconPosition === 'right' && iconElement}\n </spw-tooltip>\n )}\n {!this.hasEllipsis && (\n <Fragment>\n {iconPosition === 'left' && iconElement}\n <slot></slot>\n {iconPosition === 'right' && iconElement}\n </Fragment>\n )}{' '}\n {this.bubble && <span class=\"bubble\"></span>}\n </li>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spw-tabs-navigation-item.entry.cjs.js","sources":["src/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.scss?tag=spw-tabs-navigation-item&encapsulation=shadow","src/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.tsx"],"sourcesContent":[":host {\n display: contents;\n --spw-tabs-max-width-text: 200px;\n --spw-tabs-border-radius: 4px 4px 0 0;\n --spw-tabs-margin-left: 0;\n}\n\n.spw-tabs-navigation-item {\n position: relative;\n cursor: pointer;\n padding: 8px 0 12px 0;\n font-size: 14px;\n color: var(--spw-colors-support-grey-grey-700);\n user-select: none;\n transition: color 0.2s linear;\n &:hover {\n color: var(--spw-colors-support-grey-grey-900);\n :host(.--box) & {\n color: var(--spw-colors-support-grey-grey-900);\n }\n }\n &:focus-visible {\n outline: 2px solid black;\n outline-offset: -2px;\n }\n :host(.--box) & {\n background: var(--spw-colors-support-grey-grey-100);\n color: var(--spw-colors-support-grey-grey-600);\n border: 1px solid var(--spw-colors-support-grey-grey-300);\n padding: 7px 16px 6px 16px;\n margin-top: 3px;\n border-radius: var(--spw-tabs-border-radius);\n margin-left: var(--spw-tabs-margin-left);\n }\n &--disabled {\n opacity: 0.6;\n cursor: not-allowed;\n &:hover {\n color: var(--spw-colors-support-grey-grey-700);\n }\n :host(.--box) & {\n opacity: 1;\n color: var(--spw-colors-support-grey-grey-400);\n &:hover {\n color: var(--spw-colors-support-grey-grey-400);\n }\n &:active {\n transform: none;\n }\n }\n }\n &--active {\n color: var(--spw-colors-support-grey-grey-900);\n &:after {\n content: '';\n position: absolute;\n width: 100%;\n bottom: 0;\n left: 0;\n height: 2px;\n background: var(--spw-ds-primary);\n }\n :host(.--box) & {\n color: var(--spw-colors-support-grey-grey-900);\n background: white;\n border-bottom-color: transparent;\n padding: 8px 16px;\n margin-top: 0;\n &:after {\n display: none;\n }\n }\n }\n &--bubble {\n &:before {\n content: '';\n position: absolute;\n top: 2px;\n right: -8px;\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background: var(--spw-ds-primary);\n :host(.--box) & {\n top: 4px;\n right: 4px;\n }\n }\n }\n :host(.--ellipsis) & {\n max-width: var(--spw-tabs-max-width-text);\n overflow: hidden;\n text-overflow: ellipsis;\n }\n}\n","import { Component, h, Element, Prop, Event, State, EventEmitter, Host, Listen } from '@stencil/core';\n\n@Component({\n tag: 'spw-tabs-navigation-item',\n styleUrl: 'spw-tabs-navigation-item.scss',\n shadow: true,\n})\nexport class SpwTabsNavigationItem {\n @Element() el: HTMLElement;\n\n /** Définit un id pour le tab */\n @Prop() tabId!: string;\n /** Définit si le tab est actif ou non */\n @Prop() active: boolean = false;\n /** Définit si le tab est disabled ou non */\n @Prop() disabled: boolean = false;\n /** Prévoit la présence d'une pastille sur l'élément de navigation */\n @Prop() bubble: boolean = false;\n /** Définit si le texte doit être coupé pour les onglets au titre trop long */\n @Prop() hasEllipsis?: boolean;\n\n @State() slotText: string = '';\n\n @Event() tabSelected: EventEmitter<string>;\n\n componentDidLoad() {\n this.updateSlotText();\n }\n\n @Listen('slotchange')\n handleSlotChange() {\n this.updateSlotText();\n }\n\n private updateSlotText() {\n const slot = this.el.shadowRoot?.querySelector('slot');\n if (slot) {\n const assignedNodes = slot.assignedNodes({ flatten: true });\n const text = assignedNodes\n .filter(n => n.nodeType === Node.TEXT_NODE || n.nodeType === Node.ELEMENT_NODE)\n .map(n => (n as HTMLElement | Text).textContent?.trim())\n .join(' ')\n .trim();\n\n this.slotText = text || '';\n }\n }\n\n private handleClick = (event: Event) => {\n event.preventDefault();\n event.stopPropagation();\n\n if (!this.disabled) {\n this.tabSelected.emit(this.tabId);\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (this.disabled) return;\n\n const key = event.key;\n if (key === 'Enter' || key === ' ') {\n event.preventDefault();\n event.stopPropagation();\n this.tabSelected.emit(this.tabId);\n }\n };\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-tabs-navigation-item': true,\n 'spw-tabs-navigation-item--active': this.active,\n 'spw-tabs-navigation-item--disabled': this.disabled,\n 'spw-tabs-navigation-item--bubble': this.bubble,\n 'spw-tabs-navigation-item--ellipsis': this.hasEllipsis,\n };\n }\n\n render() {\n return (\n <Host class={this.active ? '--active' : ''}>\n <li\n id={`tab-${this.tabId}`}\n role=\"tab\"\n aria-selected={this.active ? 'true' : 'false'}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-controls={`panel-${this.tabId}`}\n aria-label={this.slotText}\n onKeyDown={this.handleKeyDown}\n tabIndex={this.disabled ? -1 : 0}\n class={this.elementClass}\n onClick={this.handleClick}\n title={this.hasEllipsis ? this.slotText : undefined}\n >\n <slot></slot>\n {this.bubble && <span class=\"bubble\"></span>}\n </li>\n </Host>\n );\n }\n}\n"],"names":["h","Host"],"mappings":";;;;AAAA,MAAM,wBAAwB,GAAG,mrJAAmrJ;;MCOvsJ,qBAAqB,GAAA,MAAA;AALlC,IAAA,WAAA,CAAA,OAAA,EAAA;;;;AAWU,QAAA,IAAM,CAAA,MAAA,GAAY,KAAK;;AAEvB,QAAA,IAAQ,CAAA,QAAA,GAAY,KAAK;;AAEzB,QAAA,IAAM,CAAA,MAAA,GAAY,KAAK;AAItB,QAAA,IAAQ,CAAA,QAAA,GAAW,EAAE;AA2BtB,QAAA,IAAA,CAAA,WAAW,GAAG,CAAC,KAAY,KAAI;YACrC,KAAK,CAAC,cAAc,EAAE;YACtB,KAAK,CAAC,eAAe,EAAE;AAEvB,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAClB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;;AAErC,SAAC;AAEO,QAAA,IAAA,CAAA,aAAa,GAAG,CAAC,KAAoB,KAAI;YAC/C,IAAI,IAAI,CAAC,QAAQ;gBAAE;AAEnB,YAAA,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG;YACrB,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,GAAG,EAAE;gBAClC,KAAK,CAAC,cAAc,EAAE;gBACtB,KAAK,CAAC,eAAe,EAAE;gBACvB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;;AAErC,SAAC;AAkCF;IA3EC,gBAAgB,GAAA;QACd,IAAI,CAAC,cAAc,EAAE;;IAIvB,gBAAgB,GAAA;QACd,IAAI,CAAC,cAAc,EAAE;;IAGf,cAAc,GAAA;;AACpB,QAAA,MAAM,IAAI,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,EAAE,CAAC,UAAU,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,aAAa,CAAC,MAAM,CAAC;QACtD,IAAI,IAAI,EAAE;AACR,YAAA,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3D,MAAM,IAAI,GAAG;iBACV,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY;AAC7E,iBAAA,GAAG,CAAC,CAAC,IAAG,UAAC,OAAA,CAAA,EAAA,GAAC,CAAwB,CAAC,WAAW,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAI,EAAE,CAAA,EAAA;iBACtD,IAAI,CAAC,GAAG;AACR,iBAAA,IAAI,EAAE;AAET,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,IAAI,EAAE;;;AAwB9B,IAAA,IAAY,YAAY,GAAA;QACtB,OAAO;AACL,YAAA,0BAA0B,EAAE,IAAI;YAChC,kCAAkC,EAAE,IAAI,CAAC,MAAM;YAC/C,oCAAoC,EAAE,IAAI,CAAC,QAAQ;YACnD,kCAAkC,EAAE,IAAI,CAAC,MAAM;YAC/C,oCAAoC,EAAE,IAAI,CAAC,WAAW;SACvD;;IAGH,MAAM,GAAA;AACJ,QAAA,QACEA,OAAC,CAAAC,UAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,IAAI,CAAC,MAAM,GAAG,UAAU,GAAG,EAAE,EAAA,EACxCD,OACE,CAAA,IAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAE,EAAE,CAAO,IAAA,EAAA,IAAI,CAAC,KAAK,CAAA,CAAE,EACvB,IAAI,EAAC,KAAK,EACK,eAAA,EAAA,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,EAC9B,eAAA,EAAA,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,OAAO,EAChC,eAAA,EAAA,SAAS,IAAI,CAAC,KAAK,CAAE,CAAA,EACxB,YAAA,EAAA,IAAI,CAAC,QAAQ,EACzB,SAAS,EAAE,IAAI,CAAC,aAAa,EAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,CAAC,EAChC,KAAK,EAAE,IAAI,CAAC,YAAY,EACxB,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,KAAK,EAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,GAAG,SAAS,EAAA,EAEnDA,OAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,EACZ,IAAI,CAAC,MAAM,IAAIA,OAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,QAAQ,EAAQ,CAAA,CACzC,CACA;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"spw-tabs-navigation-item.entry.cjs.js","sources":["src/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.scss?tag=spw-tabs-navigation-item&encapsulation=shadow","src/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.tsx"],"sourcesContent":[":host {\n display: contents;\n --spw-tabs-max-width-text: 200px;\n --spw-tabs-border-radius: 4px 4px 0 0;\n --spw-tabs-margin-left: 0;\n}\n\n.spw-tabs-navigation-item {\n position: relative;\n cursor: pointer;\n color: var(--spw-colors-support-grey-grey-700);\n user-select: none;\n transition: color 0.2s linear;\n &:hover {\n color: var(--spw-colors-support-grey-grey-900);\n :host(.--box) & {\n color: var(--spw-colors-support-grey-grey-900);\n }\n }\n &:focus-visible {\n outline: 2px solid black;\n outline-offset: -2px;\n }\n :host(.--box) & {\n background: var(--spw-colors-support-grey-grey-100);\n color: var(--spw-colors-support-grey-grey-600);\n border: 1px solid var(--spw-colors-support-grey-grey-300);\n margin-top: 3px;\n border-radius: var(--spw-tabs-border-radius);\n margin-left: var(--spw-tabs-margin-left);\n }\n &--disabled {\n opacity: 0.6;\n cursor: not-allowed;\n &:hover {\n color: var(--spw-colors-support-grey-grey-700);\n }\n :host(.--box) & {\n opacity: 1;\n color: var(--spw-colors-support-grey-grey-400);\n &:hover {\n color: var(--spw-colors-support-grey-grey-400);\n }\n &:active {\n transform: none;\n }\n }\n }\n &--active {\n border-bottom: 0;\n color: var(--spw-colors-support-grey-grey-900);\n &:after {\n content: '';\n position: absolute;\n width: 100%;\n bottom: 0;\n left: 0;\n height: 2px;\n background: var(--spw-ds-primary);\n }\n :host(.--box) & {\n position: relative;\n top: 1px;\n color: var(--spw-colors-support-grey-grey-900);\n background: white;\n // border-bottom-color: transparent;\n margin-top: 0;\n &:after {\n display: none;\n }\n }\n }\n &--bubble {\n &:before {\n content: '';\n position: absolute;\n top: 2px;\n right: -8px;\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background: var(--spw-ds-primary);\n :host(.--box) & {\n top: 4px;\n right: 4px;\n }\n }\n }\n :host(.--ellipsis) & {\n max-width: var(--spw-tabs-max-width-text);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n flex-shrink: 0;\n spw-tooltip {\n display: contents;\n }\n }\n :host(.--small) & {\n padding: 8px 0 12px 0;\n font-size: 14px;\n }\n :host(.--small.--box) & {\n padding: 7px 16px 6px 16px;\n .spw-tabs-navigation-item--active {\n padding: 8px 16px;\n }\n }\n :host(.--medium) & {\n padding: 12px 0 16px 0;\n font-size: 16px;\n }\n :host(.--medium.--box) & {\n padding: 11px 16px 10px 16px;\n .spw-tabs-navigation-item--active {\n padding: 12px 16px;\n }\n }\n :host(.--large) & {\n padding: 16px 0 20px 0;\n font-size: 18px;\n }\n :host(.--large.--box) & {\n padding: 15px 20px 14px 20px;\n .spw-tabs-navigation-item--active {\n padding: 16px 20px;\n }\n }\n .spw-icon {\n &--left {\n margin-right: 4px;\n }\n &--right {\n margin-left: 4px;\n }\n }\n}\n","import { Component, h, Fragment, Element, Prop, Event, State, EventEmitter, Host, Listen } from '@stencil/core';\n\n@Component({\n tag: 'spw-tabs-navigation-item',\n styleUrl: 'spw-tabs-navigation-item.scss',\n shadow: true,\n})\nexport class SpwTabsNavigationItem {\n @Element() el: HTMLElement;\n\n /** Définit un id pour le tab */\n @Prop() tabId!: string;\n /** Définit si le tab est actif ou non */\n @Prop() active: boolean = false;\n /** Définit si le tab est disabled ou non */\n @Prop() disabled: boolean = false;\n /** Prévoit la présence d'une pastille sur l'élément de navigation */\n @Prop() bubble: boolean = false;\n /** Définit si le texte doit être coupé pour les onglets au titre trop long */\n @Prop() hasEllipsis?: boolean;\n /** Si rempli, vous pouvez utiliser une référence d'icône font-awesome sur le spw-tabs-navigation-item */\n @Prop() icon?: string;\n /** Position de l'icône à l'intérieur du bouton sur le spw-tabs-navigation-item */\n @Prop() iconPosition?: 'left' | 'right';\n\n @State() slotText: string = '';\n\n @Event() tabSelected: EventEmitter<string>;\n\n componentDidLoad() {\n this.updateSlotText();\n }\n\n @Listen('slotchange')\n handleSlotChange() {\n this.updateSlotText();\n }\n\n private updateSlotText() {\n const slot = this.el.shadowRoot?.querySelector('slot');\n if (slot) {\n const assignedNodes = slot.assignedNodes({ flatten: true });\n const text = assignedNodes\n .filter(n => n.nodeType === Node.TEXT_NODE || n.nodeType === Node.ELEMENT_NODE)\n .map(n => (n as HTMLElement | Text).textContent?.trim())\n .join(' ')\n .trim();\n\n this.slotText = text || '';\n }\n }\n\n private handleClick = (event: Event) => {\n event.preventDefault();\n event.stopPropagation();\n\n if (!this.disabled) {\n this.tabSelected.emit(this.tabId);\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (this.disabled) return;\n\n const key = event.key;\n if (key === 'Enter' || key === ' ') {\n event.preventDefault();\n event.stopPropagation();\n this.tabSelected.emit(this.tabId);\n }\n };\n\n private get elementClass(): { [className: string]: boolean } {\n return {\n 'spw-tabs-navigation-item': true,\n 'spw-tabs-navigation-item--active': this.active,\n 'spw-tabs-navigation-item--disabled': this.disabled,\n 'spw-tabs-navigation-item--bubble': this.bubble,\n 'spw-tabs-navigation-item--ellipsis': this.hasEllipsis,\n };\n }\n\n render() {\n const iconPosition = this.icon && !this.iconPosition ? 'right' : this.iconPosition;\n const iconClass = `spw-icon--${iconPosition}`;\n const iconElement = this.icon ? <spw-icon class={iconClass} icon={this.icon}></spw-icon> : null;\n\n return (\n <Host class={this.active ? '--active' : ''}>\n <li\n id={`tab-${this.tabId}`}\n role=\"tab\"\n aria-selected={this.active ? 'true' : 'false'}\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-controls={`panel-${this.tabId}`}\n aria-label={this.slotText}\n onKeyDown={this.handleKeyDown}\n tabIndex={this.disabled ? -1 : 0}\n class={this.elementClass}\n onClick={this.handleClick}\n >\n {this.hasEllipsis && (\n <spw-tooltip cursor={this.disabled ? 'disabled' : 'pointer'} class=\"spw-tooltip--has-ellipsis\" tooltipText={this.slotText}>\n {iconPosition === 'left' && iconElement}\n <slot></slot>\n {iconPosition === 'right' && iconElement}\n </spw-tooltip>\n )}\n {!this.hasEllipsis && (\n <Fragment>\n {iconPosition === 'left' && iconElement}\n <slot></slot>\n {iconPosition === 'right' && iconElement}\n </Fragment>\n )}{' '}\n {this.bubble && <span class=\"bubble\"></span>}\n </li>\n </Host>\n );\n }\n}\n"],"names":["h","Host","Fragment"],"mappings":"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"}
|
|
@@ -1,16 +1,98 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-iVhYitTd.js');
|
|
4
4
|
|
|
5
|
-
const spwTabsNavigationCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;box-sizing:border-box;display:block;font-size:100%;line-height:1.3}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1200px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px;width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}.spw-tabs-navigation__list{border-bottom:1px solid var(--spw-colors-support-grey-grey-300);display:flex;flex-wrap:nowrap;gap:24px;overflow-x:auto;position:relative;white-space:nowrap;z-index:2}:host(.--box) .spw-tabs-navigation__list{border-bottom:0;gap:0;top:1px}::slotted(spw-tabs-navigation-item){--spw-tabs-border-radius:0;--spw-tabs-margin-left:-1px}::slotted(spw-tabs-navigation-item:first-child){--spw-tabs-border-radius:4px 0 0 0;--spw-tabs-margin-left:0}::slotted(spw-tabs-navigation-item:last-child){--spw-tabs-border-radius:0 4px 0 0;--spw-tabs-margin-left:-1px}::slotted(spw-tabs-navigation-item.--active){--spw-tabs-border-radius:4px 4px 0 0}";
|
|
5
|
+
const spwTabsNavigationCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;box-sizing:border-box;display:block;font-size:100%;line-height:1.3;position:relative;top:1px}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1200px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px;width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}.spw-tabs-navigation-container{align-items:center;display:flex;overflow:hidden;position:relative;width:100%}.spw-tabs-navigation{flex:1;overflow:hidden}.spw-tabs-navigation__list{-ms-overflow-style:none;border-bottom:1px solid var(--spw-colors-support-grey-grey-300);display:flex;flex-wrap:nowrap;gap:24px;list-style:none;margin:0;overflow-x:auto;padding:0;position:relative;scroll-behavior:smooth;scrollbar-width:none;white-space:nowrap;z-index:2}.spw-tabs-navigation__list::-webkit-scrollbar{display:none}:host(.--box) .spw-tabs-navigation__list{border-bottom:0;gap:0}.spw-tabs-navigation__arrow{align-items:center;background:#fff;border:none;cursor:pointer;display:flex;height:33px;justify-content:center;position:relative;top:1px;transition:all .2s ease;width:33px;z-index:10}.spw-tabs-navigation__arrow spw-icon{color:var(--spw-colors-support-grey-grey-500);font-size:14px}.spw-tabs-navigation__arrow:hover spw-icon{color:var(--spw-colors-support-grey-grey-600)}.spw-tabs-navigation__arrow:active spw-icon{color:var(--spw-colors-support-grey-grey-900)}.spw-tabs-navigation__arrow--left{border-radius:4px 0 0 0;border-right:1px solid var(--spw-colors-support-grey-grey-300)}.spw-tabs-navigation__arrow--right{border-left:1px solid var(--spw-colors-support-grey-grey-300);border-radius:0 4px 0 0}::slotted(spw-tabs-navigation-item){--spw-tabs-border-radius:0;--spw-tabs-margin-left:-1px}::slotted(spw-tabs-navigation-item:first-child){--spw-tabs-border-radius:4px 0 0 0;--spw-tabs-margin-left:0}::slotted(spw-tabs-navigation-item:last-child){--spw-tabs-border-radius:0 4px 0 0;--spw-tabs-margin-left:-1px}::slotted(spw-tabs-navigation-item.--active){--spw-tabs-border-radius:4px 4px 0 0}";
|
|
6
6
|
|
|
7
7
|
const SpwTabsNavigation = class {
|
|
8
8
|
constructor(hostRef) {
|
|
9
9
|
index.registerInstance(this, hostRef);
|
|
10
|
+
this.showLeftArrow = false;
|
|
11
|
+
this.showRightArrow = false;
|
|
12
|
+
this.scrollPercentage = 30;
|
|
13
|
+
this.resizeObserver = null;
|
|
14
|
+
this.mutationObserver = null;
|
|
15
|
+
this.setupObservers = () => {
|
|
16
|
+
this.resizeObserver = new ResizeObserver(() => {
|
|
17
|
+
this.checkOverflow();
|
|
18
|
+
});
|
|
19
|
+
if (this.ulElement) {
|
|
20
|
+
this.resizeObserver.observe(this.ulElement);
|
|
21
|
+
}
|
|
22
|
+
this.mutationObserver = new MutationObserver(() => {
|
|
23
|
+
this.updateSlottedElementsObservation();
|
|
24
|
+
setTimeout(() => this.checkOverflow(), 10);
|
|
25
|
+
});
|
|
26
|
+
this.mutationObserver.observe(this.hostElement, {
|
|
27
|
+
childList: true,
|
|
28
|
+
subtree: true,
|
|
29
|
+
});
|
|
30
|
+
this.updateSlottedElementsObservation();
|
|
31
|
+
};
|
|
32
|
+
this.updateSlottedElementsObservation = () => {
|
|
33
|
+
if (!this.resizeObserver)
|
|
34
|
+
return;
|
|
35
|
+
const children = Array.from(this.hostElement.children);
|
|
36
|
+
children.forEach(child => {
|
|
37
|
+
this.resizeObserver.observe(child);
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
this.cleanupObservers = () => {
|
|
41
|
+
if (this.resizeObserver) {
|
|
42
|
+
this.resizeObserver.disconnect();
|
|
43
|
+
this.resizeObserver = null;
|
|
44
|
+
}
|
|
45
|
+
if (this.mutationObserver) {
|
|
46
|
+
this.mutationObserver.disconnect();
|
|
47
|
+
this.mutationObserver = null;
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
this.checkOverflow = () => {
|
|
51
|
+
if (!this.ulElement)
|
|
52
|
+
return;
|
|
53
|
+
const containerWidth = this.ulElement.clientWidth;
|
|
54
|
+
const contentWidth = this.ulElement.scrollWidth;
|
|
55
|
+
const scrollLeft = this.ulElement.scrollLeft;
|
|
56
|
+
const hasOverflow = contentWidth > containerWidth;
|
|
57
|
+
this.showLeftArrow = hasOverflow && scrollLeft > 0;
|
|
58
|
+
this.showRightArrow = hasOverflow && scrollLeft < contentWidth - containerWidth - 1;
|
|
59
|
+
};
|
|
60
|
+
this.scrollLeft = () => {
|
|
61
|
+
if (!this.ulElement)
|
|
62
|
+
return;
|
|
63
|
+
const scrollAmount = (this.ulElement.clientWidth * this.scrollPercentage) / 100;
|
|
64
|
+
this.ulElement.scrollBy({
|
|
65
|
+
left: -scrollAmount,
|
|
66
|
+
behavior: 'smooth',
|
|
67
|
+
});
|
|
68
|
+
};
|
|
69
|
+
this.scrollRight = () => {
|
|
70
|
+
if (!this.ulElement)
|
|
71
|
+
return;
|
|
72
|
+
const scrollAmount = (this.ulElement.clientWidth * this.scrollPercentage) / 100;
|
|
73
|
+
this.ulElement.scrollBy({
|
|
74
|
+
left: scrollAmount,
|
|
75
|
+
behavior: 'smooth',
|
|
76
|
+
});
|
|
77
|
+
};
|
|
78
|
+
this.handleScroll = () => {
|
|
79
|
+
this.checkOverflow();
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
componentDidLoad() {
|
|
83
|
+
this.checkOverflow();
|
|
84
|
+
this.setupObservers();
|
|
85
|
+
}
|
|
86
|
+
disconnectedCallback() {
|
|
87
|
+
this.cleanupObservers();
|
|
88
|
+
}
|
|
89
|
+
onWindowResize() {
|
|
90
|
+
this.checkOverflow();
|
|
10
91
|
}
|
|
11
92
|
render() {
|
|
12
|
-
return (index.h("nav", { key: '
|
|
93
|
+
return (index.h("div", { key: 'e30dd2eeaff721cf907cc90f274fea0e09374704', class: "spw-tabs-navigation-container" }, this.showLeftArrow && (index.h("button", { key: 'd06751d3a971c6fc8a766893a0f20287808e12b6', class: "spw-tabs-navigation__arrow spw-tabs-navigation__arrow--left", onClick: this.scrollLeft, "aria-label": "Faire d\u00E9filer vers la gauche" }, index.h("spw-icon", { key: 'af54fc328d44238155fb8137566c96e45e0a0483', icon: "fa-chevron-left" }))), index.h("nav", { key: 'ab61a57c0f21cf18a4ad25f2468ac9fe6c56bb24', class: "spw-tabs-navigation" }, index.h("ul", { key: '8e87fa8b691dc26b7196f2aca9f573cc4e15f294', class: "spw-tabs-navigation__list", role: "tablist", ref: el => (this.ulElement = el), onScroll: this.handleScroll }, index.h("slot", { key: '10933f456cb16f0a5f7f1b07fb831fd695a2cb8b' }))), this.showRightArrow && (index.h("button", { key: '365deb76145d29345b25c48235c82a8dd325a8fc', class: "spw-tabs-navigation__arrow spw-tabs-navigation__arrow--right", onClick: this.scrollRight, "aria-label": "Faire d\u00E9filer vers la droite" }, index.h("spw-icon", { key: '0595bfaf9a4dd1bb00e0f0f4a8386c33bdeb8c47', icon: "fa-chevron-right" })))));
|
|
13
94
|
}
|
|
95
|
+
get hostElement() { return index.getElement(this); }
|
|
14
96
|
};
|
|
15
97
|
SpwTabsNavigation.style = spwTabsNavigationCss;
|
|
16
98
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"spw-tabs-navigation.entry.cjs.js","mappings":";;;;AAAA,MAAM,oBAAoB,GAAG,
|
|
1
|
+
{"file":"spw-tabs-navigation.entry.cjs.js","mappings":"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","names":["h"],"sources":["src/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.scss?tag=spw-tabs-navigation&encapsulation=shadow","src/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.tsx"],"sourcesContent":[":host {\n display: block;\n position: relative;\n top: 1px;\n // border-bottom: 1px solid var(--spw-colors-support-grey-grey-300);\n}\n\n.spw-tabs-navigation-container {\n display: flex;\n align-items: center;\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n\n.spw-tabs-navigation {\n flex: 1;\n overflow: hidden;\n\n &__list {\n position: relative;\n z-index: 2;\n display: flex;\n flex-wrap: nowrap;\n gap: 24px;\n overflow-x: auto;\n white-space: nowrap;\n border-bottom: 1px solid var(--spw-colors-support-grey-grey-300);\n scroll-behavior: smooth;\n list-style: none;\n margin: 0;\n padding: 0;\n scrollbar-width: none;\n -ms-overflow-style: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n\n :host(.--box) & {\n gap: 0;\n border-bottom: 0;\n // top: 1px;\n }\n }\n}\n\n.spw-tabs-navigation__arrow {\n position: relative;\n top: 1px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: white;\n // border: 1px solid #ddd;\n // border-bottom: 1px solid #ccc;\n border: none;\n width: 33px;\n height: 33px;\n cursor: pointer;\n z-index: 10;\n transition: all 0.2s ease;\n\n spw-icon {\n font-size: 14px;\n color: var(--spw-colors-support-grey-grey-500);\n }\n\n &:hover {\n // background: var(--spw-colors-support-grey-grey-100);\n spw-icon {\n color: var(--spw-colors-support-grey-grey-600);\n }\n }\n\n &:active {\n // background: var(--spw-colors-support-grey-grey-200);\n spw-icon {\n color: var(--spw-colors-support-grey-grey-900);\n }\n }\n\n &--left {\n border-radius: 4px 0 0 0;\n border-right: 1px solid var(--spw-colors-support-grey-grey-300);\n }\n\n &--right {\n border-radius: 0 4px 0 0;\n border-left: 1px solid var(--spw-colors-support-grey-grey-300);\n }\n}\n\n::slotted(spw-tabs-navigation-item) {\n --spw-tabs-border-radius: 0;\n --spw-tabs-margin-left: -1px;\n}\n\n::slotted(spw-tabs-navigation-item:first-child) {\n --spw-tabs-border-radius: 4px 0 0 0;\n --spw-tabs-margin-left: 0;\n}\n\n::slotted(spw-tabs-navigation-item:last-child) {\n --spw-tabs-border-radius: 0 4px 0 0;\n --spw-tabs-margin-left: -1px;\n}\n\n::slotted(spw-tabs-navigation-item.--active) {\n --spw-tabs-border-radius: 4px 4px 0 0;\n}\n","import { Component, h, Element, State, Listen } from '@stencil/core';\n\n@Component({\n tag: 'spw-tabs-navigation',\n styleUrl: 'spw-tabs-navigation.scss',\n shadow: true,\n})\nexport class SpwTabsNavigation {\n @Element() hostElement: HTMLElement;\n @State() showLeftArrow: boolean = false;\n @State() showRightArrow: boolean = false;\n\n private ulElement: HTMLUListElement;\n private scrollPercentage: number = 30;\n\n private resizeObserver: ResizeObserver | null = null;\n private mutationObserver: MutationObserver | null = null;\n\n componentDidLoad() {\n this.checkOverflow();\n this.setupObservers();\n }\n\n disconnectedCallback() {\n this.cleanupObservers();\n }\n\n @Listen('resize', { target: 'window' })\n onWindowResize() {\n this.checkOverflow();\n }\n\n private setupObservers = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.checkOverflow();\n });\n\n if (this.ulElement) {\n this.resizeObserver.observe(this.ulElement);\n }\n\n this.mutationObserver = new MutationObserver(() => {\n this.updateSlottedElementsObservation();\n setTimeout(() => this.checkOverflow(), 10);\n });\n\n this.mutationObserver.observe(this.hostElement, {\n childList: true,\n subtree: true,\n });\n\n this.updateSlottedElementsObservation();\n };\n\n private updateSlottedElementsObservation = () => {\n if (!this.resizeObserver) return;\n\n const children = Array.from(this.hostElement.children);\n children.forEach(child => {\n this.resizeObserver!.observe(child);\n });\n };\n\n private cleanupObservers = () => {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n this.resizeObserver = null;\n }\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n this.mutationObserver = null;\n }\n };\n\n private checkOverflow = () => {\n if (!this.ulElement) return;\n\n const containerWidth = this.ulElement.clientWidth;\n const contentWidth = this.ulElement.scrollWidth;\n const scrollLeft = this.ulElement.scrollLeft;\n\n const hasOverflow = contentWidth > containerWidth;\n\n this.showLeftArrow = hasOverflow && scrollLeft > 0;\n this.showRightArrow = hasOverflow && scrollLeft < contentWidth - containerWidth - 1;\n };\n\n private scrollLeft = () => {\n if (!this.ulElement) return;\n\n const scrollAmount = (this.ulElement.clientWidth * this.scrollPercentage) / 100;\n this.ulElement.scrollBy({\n left: -scrollAmount,\n behavior: 'smooth',\n });\n };\n\n private scrollRight = () => {\n if (!this.ulElement) return;\n\n const scrollAmount = (this.ulElement.clientWidth * this.scrollPercentage) / 100;\n this.ulElement.scrollBy({\n left: scrollAmount,\n behavior: 'smooth',\n });\n };\n\n private handleScroll = () => {\n this.checkOverflow();\n };\n\n render() {\n return (\n <div class=\"spw-tabs-navigation-container\">\n {this.showLeftArrow && (\n <button class=\"spw-tabs-navigation__arrow spw-tabs-navigation__arrow--left\" onClick={this.scrollLeft} aria-label=\"Faire défiler vers la gauche\">\n <spw-icon icon=\"fa-chevron-left\"></spw-icon>\n </button>\n )}\n\n <nav class=\"spw-tabs-navigation\">\n <ul class=\"spw-tabs-navigation__list\" role=\"tablist\" ref={el => (this.ulElement = el as HTMLUListElement)} onScroll={this.handleScroll}>\n <slot></slot>\n </ul>\n </nav>\n\n {this.showRightArrow && (\n <button class=\"spw-tabs-navigation__arrow spw-tabs-navigation__arrow--right\" onClick={this.scrollRight} aria-label=\"Faire défiler vers la droite\">\n <spw-icon icon=\"fa-chevron-right\"></spw-icon>\n </button>\n )}\n </div>\n );\n }\n}\n"],"version":3}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spw-tabs-navigation.entry.cjs.js","sources":["src/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.scss?tag=spw-tabs-navigation&encapsulation=shadow","src/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.spw-tabs-navigation {\n &__list {\n position: relative;\n z-index: 2;\n display: flex;\n flex-wrap: nowrap;\n gap: 24px;\n overflow-x: auto;\n white-space: nowrap;\n border-bottom: 1px solid var(--spw-colors-support-grey-grey-300);\n :host(.--box) & {\n gap: 0;\n border-bottom: 0;\n top: 1px;\n }\n }\n}\n\n::slotted(spw-tabs-navigation-item) {\n --spw-tabs-border-radius: 0;\n --spw-tabs-margin-left: -1px;\n}\n\n::slotted(spw-tabs-navigation-item:first-child) {\n --spw-tabs-border-radius: 4px 0 0 0;\n --spw-tabs-margin-left: 0;\n}\n\n::slotted(spw-tabs-navigation-item:last-child) {\n --spw-tabs-border-radius: 0 4px 0 0;\n --spw-tabs-margin-left: -1px;\n}\n\n::slotted(spw-tabs-navigation-item.--active) {\n --spw-tabs-border-radius: 4px 4px 0 0;\n}\n","import { Component, h } from '@stencil/core';\n\n@Component({\n tag: 'spw-tabs-navigation',\n styleUrl: 'spw-tabs-navigation.scss',\n shadow: true,\n})\nexport class SpwTabsNavigation {\n render() {\n return (\n <
|
|
1
|
+
{"version":3,"file":"spw-tabs-navigation.entry.cjs.js","sources":["src/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.scss?tag=spw-tabs-navigation&encapsulation=shadow","src/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.tsx"],"sourcesContent":[":host {\n display: block;\n position: relative;\n top: 1px;\n // border-bottom: 1px solid var(--spw-colors-support-grey-grey-300);\n}\n\n.spw-tabs-navigation-container {\n display: flex;\n align-items: center;\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n\n.spw-tabs-navigation {\n flex: 1;\n overflow: hidden;\n\n &__list {\n position: relative;\n z-index: 2;\n display: flex;\n flex-wrap: nowrap;\n gap: 24px;\n overflow-x: auto;\n white-space: nowrap;\n border-bottom: 1px solid var(--spw-colors-support-grey-grey-300);\n scroll-behavior: smooth;\n list-style: none;\n margin: 0;\n padding: 0;\n scrollbar-width: none;\n -ms-overflow-style: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n\n :host(.--box) & {\n gap: 0;\n border-bottom: 0;\n // top: 1px;\n }\n }\n}\n\n.spw-tabs-navigation__arrow {\n position: relative;\n top: 1px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: white;\n // border: 1px solid #ddd;\n // border-bottom: 1px solid #ccc;\n border: none;\n width: 33px;\n height: 33px;\n cursor: pointer;\n z-index: 10;\n transition: all 0.2s ease;\n\n spw-icon {\n font-size: 14px;\n color: var(--spw-colors-support-grey-grey-500);\n }\n\n &:hover {\n // background: var(--spw-colors-support-grey-grey-100);\n spw-icon {\n color: var(--spw-colors-support-grey-grey-600);\n }\n }\n\n &:active {\n // background: var(--spw-colors-support-grey-grey-200);\n spw-icon {\n color: var(--spw-colors-support-grey-grey-900);\n }\n }\n\n &--left {\n border-radius: 4px 0 0 0;\n border-right: 1px solid var(--spw-colors-support-grey-grey-300);\n }\n\n &--right {\n border-radius: 0 4px 0 0;\n border-left: 1px solid var(--spw-colors-support-grey-grey-300);\n }\n}\n\n::slotted(spw-tabs-navigation-item) {\n --spw-tabs-border-radius: 0;\n --spw-tabs-margin-left: -1px;\n}\n\n::slotted(spw-tabs-navigation-item:first-child) {\n --spw-tabs-border-radius: 4px 0 0 0;\n --spw-tabs-margin-left: 0;\n}\n\n::slotted(spw-tabs-navigation-item:last-child) {\n --spw-tabs-border-radius: 0 4px 0 0;\n --spw-tabs-margin-left: -1px;\n}\n\n::slotted(spw-tabs-navigation-item.--active) {\n --spw-tabs-border-radius: 4px 4px 0 0;\n}\n","import { Component, h, Element, State, Listen } from '@stencil/core';\n\n@Component({\n tag: 'spw-tabs-navigation',\n styleUrl: 'spw-tabs-navigation.scss',\n shadow: true,\n})\nexport class SpwTabsNavigation {\n @Element() hostElement: HTMLElement;\n @State() showLeftArrow: boolean = false;\n @State() showRightArrow: boolean = false;\n\n private ulElement: HTMLUListElement;\n private scrollPercentage: number = 30;\n\n private resizeObserver: ResizeObserver | null = null;\n private mutationObserver: MutationObserver | null = null;\n\n componentDidLoad() {\n this.checkOverflow();\n this.setupObservers();\n }\n\n disconnectedCallback() {\n this.cleanupObservers();\n }\n\n @Listen('resize', { target: 'window' })\n onWindowResize() {\n this.checkOverflow();\n }\n\n private setupObservers = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.checkOverflow();\n });\n\n if (this.ulElement) {\n this.resizeObserver.observe(this.ulElement);\n }\n\n this.mutationObserver = new MutationObserver(() => {\n this.updateSlottedElementsObservation();\n setTimeout(() => this.checkOverflow(), 10);\n });\n\n this.mutationObserver.observe(this.hostElement, {\n childList: true,\n subtree: true,\n });\n\n this.updateSlottedElementsObservation();\n };\n\n private updateSlottedElementsObservation = () => {\n if (!this.resizeObserver) return;\n\n const children = Array.from(this.hostElement.children);\n children.forEach(child => {\n this.resizeObserver!.observe(child);\n });\n };\n\n private cleanupObservers = () => {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n this.resizeObserver = null;\n }\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n this.mutationObserver = null;\n }\n };\n\n private checkOverflow = () => {\n if (!this.ulElement) return;\n\n const containerWidth = this.ulElement.clientWidth;\n const contentWidth = this.ulElement.scrollWidth;\n const scrollLeft = this.ulElement.scrollLeft;\n\n const hasOverflow = contentWidth > containerWidth;\n\n this.showLeftArrow = hasOverflow && scrollLeft > 0;\n this.showRightArrow = hasOverflow && scrollLeft < contentWidth - containerWidth - 1;\n };\n\n private scrollLeft = () => {\n if (!this.ulElement) return;\n\n const scrollAmount = (this.ulElement.clientWidth * this.scrollPercentage) / 100;\n this.ulElement.scrollBy({\n left: -scrollAmount,\n behavior: 'smooth',\n });\n };\n\n private scrollRight = () => {\n if (!this.ulElement) return;\n\n const scrollAmount = (this.ulElement.clientWidth * this.scrollPercentage) / 100;\n this.ulElement.scrollBy({\n left: scrollAmount,\n behavior: 'smooth',\n });\n };\n\n private handleScroll = () => {\n this.checkOverflow();\n };\n\n render() {\n return (\n <div class=\"spw-tabs-navigation-container\">\n {this.showLeftArrow && (\n <button class=\"spw-tabs-navigation__arrow spw-tabs-navigation__arrow--left\" onClick={this.scrollLeft} aria-label=\"Faire défiler vers la gauche\">\n <spw-icon icon=\"fa-chevron-left\"></spw-icon>\n </button>\n )}\n\n <nav class=\"spw-tabs-navigation\">\n <ul class=\"spw-tabs-navigation__list\" role=\"tablist\" ref={el => (this.ulElement = el as HTMLUListElement)} onScroll={this.handleScroll}>\n <slot></slot>\n </ul>\n </nav>\n\n {this.showRightArrow && (\n <button class=\"spw-tabs-navigation__arrow spw-tabs-navigation__arrow--right\" onClick={this.scrollRight} aria-label=\"Faire défiler vers la droite\">\n <spw-icon icon=\"fa-chevron-right\"></spw-icon>\n </button>\n )}\n </div>\n );\n }\n}\n"],"names":["h"],"mappings":"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"}
|
|
@@ -1,18 +1,21 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-iVhYitTd.js');
|
|
4
4
|
|
|
5
5
|
const spwTabsCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.3}h1,h2,h3,h4,h5,h6,li,p,ul{margin:0;padding:0}ul{list-style:none}:host{-webkit-text-size-adjust:100%;box-sizing:border-box;display:block;font-size:100%;line-height:1.3}:host *,:host :after,:host :before{box-sizing:inherit;font-family:Nunito Sans}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--spw-ds-container-xl:1200px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px;width:100%}@media (min-width:460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width:768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width:1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width:1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}";
|
|
6
6
|
|
|
7
7
|
const SpwTabs = class {
|
|
8
8
|
constructor(hostRef) {
|
|
9
9
|
index.registerInstance(this, hostRef);
|
|
10
|
+
this.tabChanged = index.createEvent(this, "tabChanged");
|
|
10
11
|
/** Onglet actif par défaut */
|
|
11
12
|
this.defaultActiveTab = '1';
|
|
12
13
|
/** Variante des onglets */
|
|
13
14
|
this.variant = 'default';
|
|
14
|
-
/** Texte coupé si trop long */
|
|
15
|
+
/** Texte coupé si trop long, affiche un tooltip si le contenu excède la max-width définie */
|
|
15
16
|
this.hasEllipsis = false;
|
|
17
|
+
/** Permet de spécifier la taille de l'onglet */
|
|
18
|
+
this.size = 'small';
|
|
16
19
|
this.activeTab = '1'; // Initialiser avec une valeur par défaut
|
|
17
20
|
}
|
|
18
21
|
componentWillLoad() {
|
|
@@ -21,9 +24,19 @@ const SpwTabs = class {
|
|
|
21
24
|
componentDidLoad() {
|
|
22
25
|
this.applyVariantToChildren();
|
|
23
26
|
this.updateActiveStates();
|
|
27
|
+
setTimeout(() => {
|
|
28
|
+
this.applyMaxWidthToChildren();
|
|
29
|
+
}, 100);
|
|
24
30
|
}
|
|
25
31
|
activeTabChanged() {
|
|
26
32
|
this.updateActiveStates();
|
|
33
|
+
this.tabChanged.emit(this.activeTab);
|
|
34
|
+
}
|
|
35
|
+
maxWidthChanged() {
|
|
36
|
+
this.applyMaxWidthToChildren();
|
|
37
|
+
}
|
|
38
|
+
hasEllipsisChanged() {
|
|
39
|
+
this.applyVariantToChildren();
|
|
27
40
|
}
|
|
28
41
|
/**
|
|
29
42
|
* Récupère l'onglet actuellement sélectionné
|
|
@@ -50,6 +63,7 @@ const SpwTabs = class {
|
|
|
50
63
|
slotChanged() {
|
|
51
64
|
this.applyVariantToChildren();
|
|
52
65
|
this.updateActiveStates();
|
|
66
|
+
this.applyMaxWidthToChildren();
|
|
53
67
|
}
|
|
54
68
|
updateActiveStates() {
|
|
55
69
|
const isInThisComponent = (el) => el.closest('spw-tabs') === this.el;
|
|
@@ -62,11 +76,57 @@ const SpwTabs = class {
|
|
|
62
76
|
content.active = content.tabId === this.activeTab;
|
|
63
77
|
});
|
|
64
78
|
}
|
|
79
|
+
applyMaxWidthToChildren() {
|
|
80
|
+
if (!this.maxWidth) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
requestAnimationFrame(() => {
|
|
84
|
+
const isInThisComponent = (el) => el.closest('spw-tabs') === this.el;
|
|
85
|
+
const navItems = Array.from(this.el.querySelectorAll('spw-tabs-navigation-item')).filter(isInThisComponent);
|
|
86
|
+
const ellipsisClass = `--ellipsis`;
|
|
87
|
+
navItems.forEach(item => {
|
|
88
|
+
var _a;
|
|
89
|
+
const textContent = ((_a = item.textContent) === null || _a === void 0 ? void 0 : _a.trim()) || '';
|
|
90
|
+
if (!textContent) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
const measureEl = document.createElement('div');
|
|
94
|
+
measureEl.style.cssText = `
|
|
95
|
+
position: absolute;
|
|
96
|
+
visibility: hidden;
|
|
97
|
+
white-space: nowrap;
|
|
98
|
+
top: -9999px;
|
|
99
|
+
left: -9999px;
|
|
100
|
+
`;
|
|
101
|
+
measureEl.textContent = textContent;
|
|
102
|
+
const computedStyle = window.getComputedStyle(item);
|
|
103
|
+
measureEl.style.fontSize = computedStyle.fontSize;
|
|
104
|
+
measureEl.style.fontFamily = computedStyle.fontFamily;
|
|
105
|
+
measureEl.style.fontWeight = computedStyle.fontWeight;
|
|
106
|
+
measureEl.style.fontStyle = computedStyle.fontStyle;
|
|
107
|
+
measureEl.style.letterSpacing = computedStyle.letterSpacing;
|
|
108
|
+
measureEl.style.textTransform = computedStyle.textTransform;
|
|
109
|
+
document.body.appendChild(measureEl);
|
|
110
|
+
const contentWidth = measureEl.getBoundingClientRect().width;
|
|
111
|
+
document.body.removeChild(measureEl);
|
|
112
|
+
if (contentWidth > this.maxWidth) {
|
|
113
|
+
item.style.setProperty('--spw-tabs-max-width-text', `${this.maxWidth}px`);
|
|
114
|
+
item.setAttribute('has-ellipsis', 'true');
|
|
115
|
+
item.classList.add(ellipsisClass);
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
item.style.removeProperty('--spw-tabs-max-width-text');
|
|
119
|
+
item.setAttribute('has-ellipsis', 'false');
|
|
120
|
+
item.classList.remove(ellipsisClass);
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
});
|
|
124
|
+
}
|
|
65
125
|
applyVariantToChildren() {
|
|
66
126
|
requestAnimationFrame(() => {
|
|
67
127
|
var _a, _b;
|
|
68
128
|
const variantClass = `--${this.variant}`;
|
|
69
|
-
const
|
|
129
|
+
const sizeClass = `--${this.size}`;
|
|
70
130
|
const isInThisComponent = (el) => el.closest('spw-tabs') === this.el;
|
|
71
131
|
const navigationSlot = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('slot[name="navigation"]');
|
|
72
132
|
const contentSlot = (_b = this.el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('slot[name="content"]');
|
|
@@ -78,19 +138,13 @@ const SpwTabs = class {
|
|
|
78
138
|
el.querySelectorAll('spw-tabs-navigation-item').forEach(item => {
|
|
79
139
|
if (isInThisComponent(item)) {
|
|
80
140
|
item.classList.add(variantClass);
|
|
81
|
-
|
|
82
|
-
item.classList.add(ellipsisClass);
|
|
83
|
-
}
|
|
84
|
-
item.setAttribute('has-ellipsis', this.hasEllipsis ? 'true' : 'false');
|
|
141
|
+
item.classList.add(sizeClass);
|
|
85
142
|
}
|
|
86
143
|
});
|
|
87
144
|
}
|
|
88
145
|
else if (el.tagName === 'SPW-TABS-NAVIGATION-ITEM') {
|
|
89
146
|
el.classList.add(variantClass);
|
|
90
|
-
|
|
91
|
-
el.classList.add(ellipsisClass);
|
|
92
|
-
}
|
|
93
|
-
el.setAttribute('has-ellipsis', this.hasEllipsis ? 'true' : 'false');
|
|
147
|
+
el.classList.add(sizeClass);
|
|
94
148
|
}
|
|
95
149
|
});
|
|
96
150
|
contentElements.forEach(el => {
|
|
@@ -105,6 +159,7 @@ const SpwTabs = class {
|
|
|
105
159
|
});
|
|
106
160
|
}
|
|
107
161
|
});
|
|
162
|
+
this.applyMaxWidthToChildren();
|
|
108
163
|
});
|
|
109
164
|
}
|
|
110
165
|
get elementClass() {
|
|
@@ -114,11 +169,13 @@ const SpwTabs = class {
|
|
|
114
169
|
};
|
|
115
170
|
}
|
|
116
171
|
render() {
|
|
117
|
-
return (index.h("div", { key: '
|
|
172
|
+
return (index.h("div", { key: '524414454013d4f3d7fbf2c170fc58751fe46503', class: this.elementClass }, index.h("slot", { key: 'ebc36ddb238084cdfdc39c44021c3413949a0cbc', name: "navigation" }), index.h("slot", { key: '6bf3dd7c53dc133956b20169c9077c93d828ee8c', name: "content" })));
|
|
118
173
|
}
|
|
119
174
|
get el() { return index.getElement(this); }
|
|
120
175
|
static get watchers() { return {
|
|
121
|
-
"activeTab": ["activeTabChanged"]
|
|
176
|
+
"activeTab": ["activeTabChanged"],
|
|
177
|
+
"maxWidth": ["maxWidthChanged"],
|
|
178
|
+
"hasEllipsis": ["hasEllipsisChanged"]
|
|
122
179
|
}; }
|
|
123
180
|
};
|
|
124
181
|
SpwTabs.style = spwTabsCss;
|