wcs-core 7.5.1 → 7.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle/index.js +1 -1
- package/bundle/p-035ad27f.js +2 -0
- package/bundle/{p-010cf905.js → p-16c7ed2e.js} +2 -2
- package/bundle/p-34ecd856.js +2 -0
- package/bundle/p-34ecd856.js.map +1 -0
- package/bundle/p-53550684.js +2 -0
- package/bundle/p-53550684.js.map +1 -0
- package/bundle/{p-97e70e10.js → p-5a997d17.js} +2 -2
- package/bundle/p-68ab4391.js +16 -0
- package/bundle/p-68ab4391.js.map +1 -0
- package/bundle/{p-60193ef5.js → p-791fce94.js} +2 -2
- package/bundle/{p-44a3b0b9.js → p-87b9556d.js} +2 -2
- package/bundle/{p-d23d7658.js → p-886109ed.js} +2 -2
- package/bundle/p-9138985e.js +2 -0
- package/bundle/p-9138985e.js.map +1 -0
- package/bundle/p-95eb2e54.js +2 -0
- package/bundle/p-95eb2e54.js.map +1 -0
- package/bundle/{p-2751ddc1.js → p-a9a83300.js} +2 -2
- package/bundle/{p-cdc6f6c2.js → p-c13e9bb6.js} +8 -8
- package/bundle/p-c13e9bb6.js.map +1 -0
- package/bundle/p-c70a403e.js +2 -0
- package/bundle/p-c70a403e.js.map +1 -0
- package/bundle/{p-c8b73e93.js → p-d7d1ea63.js} +2 -2
- package/bundle/p-f6d5c242.js +2 -0
- package/bundle/p-f6d5c242.js.map +1 -0
- package/bundle/wcs-accordion-panel.js +1 -1
- package/bundle/wcs-alert-drawer.js +1 -1
- package/bundle/wcs-alert-drawer.js.map +1 -1
- package/bundle/wcs-alert.js +1 -1
- package/bundle/wcs-app.js +1 -1
- package/bundle/wcs-badge.js +1 -1
- package/bundle/wcs-breadcrumb-item.js +1 -1
- package/bundle/wcs-breadcrumb.js +1 -1
- package/bundle/wcs-button.js +1 -1
- package/bundle/wcs-card-body.js +1 -1
- package/bundle/wcs-card-body.js.map +1 -1
- package/bundle/wcs-card-content.js +1 -1
- package/bundle/wcs-card-content.js.map +1 -1
- package/bundle/wcs-card-footer.js +1 -1
- package/bundle/wcs-card-header.js +1 -1
- package/bundle/wcs-card-media.js +1 -1
- package/bundle/wcs-card.js +1 -1
- package/bundle/wcs-card.js.map +1 -1
- package/bundle/wcs-checkbox.js +1 -1
- package/bundle/wcs-chip.js +1 -1
- package/bundle/wcs-chip.js.map +1 -1
- package/bundle/wcs-com-nav-category.js +1 -1
- package/bundle/wcs-com-nav-item.js +1 -1
- package/bundle/wcs-com-nav-submenu.js +1 -1
- package/bundle/wcs-com-nav.js +1 -1
- package/bundle/wcs-com-nav.js.map +1 -1
- package/bundle/wcs-counter.js +1 -1
- package/bundle/wcs-divider.js +1 -1
- package/bundle/wcs-dropdown-divider.js +1 -1
- package/bundle/wcs-dropdown-header.js +1 -1
- package/bundle/wcs-dropdown-item.js +1 -1
- package/bundle/wcs-dropdown.js +1 -1
- package/bundle/wcs-dropdown.js.map +1 -1
- package/bundle/wcs-editable-field.js +1 -1
- package/bundle/wcs-editable-field.js.map +1 -1
- package/bundle/wcs-error.js +1 -1
- package/bundle/wcs-field-content.js +1 -1
- package/bundle/wcs-field-content.js.map +1 -1
- package/bundle/wcs-field-label.js +1 -1
- package/bundle/wcs-field.js +1 -1
- package/bundle/wcs-field.js.map +1 -1
- package/bundle/wcs-footer.js +1 -1
- package/bundle/wcs-form-field.js +1 -1
- package/bundle/wcs-galactic-menu.js +1 -1
- package/bundle/wcs-galactic.js +1 -1
- package/bundle/wcs-grid-column.js +1 -1
- package/bundle/wcs-grid-custom-cell.js +1 -1
- package/bundle/wcs-grid-custom-cell.js.map +1 -1
- package/bundle/wcs-grid-pagination.js +1 -1
- package/bundle/wcs-grid.js +1 -1
- package/bundle/wcs-grid.js.map +1 -1
- package/bundle/wcs-header.js +1 -1
- package/bundle/wcs-hint.js +1 -1
- package/bundle/wcs-horizontal-stepper.js +1 -1
- package/bundle/wcs-icon.js +1 -1
- package/bundle/wcs-input.js +1 -1
- package/bundle/wcs-input.js.map +1 -1
- package/bundle/wcs-label.js +1 -1
- package/bundle/wcs-list-item-properties.js +1 -1
- package/bundle/wcs-list-item-property.js +1 -1
- package/bundle/wcs-list-item.js +1 -1
- package/bundle/wcs-mat-icon.js +1 -1
- package/bundle/wcs-message.d.ts +11 -0
- package/bundle/wcs-message.js +2 -0
- package/bundle/wcs-message.js.map +1 -0
- package/bundle/wcs-modal.js +1 -1
- package/bundle/wcs-native-select.js +1 -1
- package/bundle/wcs-nav-item.js +1 -1
- package/bundle/wcs-nav.js +1 -1
- package/bundle/wcs-progress-bar.js +1 -1
- package/bundle/wcs-progress-radial.js +1 -1
- package/bundle/wcs-radio-group.js +1 -1
- package/bundle/wcs-radio-group.js.map +1 -1
- package/bundle/wcs-radio.js +1 -1
- package/bundle/wcs-radio.js.map +1 -1
- package/bundle/wcs-select-option.js +1 -1
- package/bundle/wcs-select.js +1 -1
- package/bundle/wcs-skeleton-circle.js +1 -1
- package/bundle/wcs-skeleton-rectangle.js +1 -1
- package/bundle/wcs-skeleton-text.js +1 -1
- package/bundle/wcs-spinner.js +1 -1
- package/bundle/wcs-switch.js +1 -1
- package/bundle/wcs-tab.js +1 -1
- package/bundle/wcs-tab.js.map +1 -1
- package/bundle/wcs-tabs.js +1 -1
- package/bundle/wcs-textarea.js +1 -1
- package/bundle/wcs-tooltip.js +2 -2
- package/composite-elements/{p-a90bb01e.js → p-061ccda5.js} +2 -2
- package/composite-elements/{p-ef26b4d8.js → p-2181568b.js} +2 -2
- package/composite-elements/{p-b83afff9.js → p-61886571.js} +2 -2
- package/composite-elements/p-846e40e9.js +16 -0
- package/composite-elements/p-846e40e9.js.map +1 -0
- package/composite-elements/p-8a2107d4.js +2 -0
- package/composite-elements/p-8a2107d4.js.map +1 -0
- package/composite-elements/p-8cafb0b4.js +2 -0
- package/composite-elements/p-8cafb0b4.js.map +1 -0
- package/composite-elements/p-8f51f4cb.js +2 -0
- package/composite-elements/p-8f51f4cb.js.map +1 -0
- package/composite-elements/p-b53ae1a8.js +2 -0
- package/composite-elements/p-b53ae1a8.js.map +1 -0
- package/composite-elements/p-b6d0a6b4.js +2 -0
- package/composite-elements/p-cb9faa9b.js +2 -0
- package/composite-elements/{p-5a3d7fec.js → p-cd6cca64.js} +2 -2
- package/composite-elements/{p-04663560.js → p-d2d79425.js} +2 -2
- package/composite-elements/{p-b92e818b.js → p-f0b064a2.js} +2 -2
- package/composite-elements/{p-51517fda.js → p-f161f50b.js} +8 -8
- package/composite-elements/p-f161f50b.js.map +1 -0
- package/composite-elements/p-f6d5c242.js +2 -0
- package/composite-elements/p-f6d5c242.js.map +1 -0
- package/composite-elements/p-f85cc676.js +2 -0
- package/composite-elements/p-f85cc676.js.map +1 -0
- package/composite-elements/wcs-accordion-panel.js +1 -1
- package/composite-elements/wcs-alert-drawer.js +1 -1
- package/composite-elements/wcs-alert-drawer.js.map +1 -1
- package/composite-elements/wcs-alert.js +1 -1
- package/composite-elements/wcs-app.js +1 -1
- package/composite-elements/wcs-badge.js +1 -1
- package/composite-elements/wcs-breadcrumb-item.js +1 -1
- package/composite-elements/wcs-breadcrumb.js +1 -1
- package/composite-elements/wcs-button.js +1 -1
- package/composite-elements/wcs-card-body.js +1 -1
- package/composite-elements/wcs-card-body.js.map +1 -1
- package/composite-elements/wcs-card-content.js +1 -1
- package/composite-elements/wcs-card-content.js.map +1 -1
- package/composite-elements/wcs-card-footer.js +1 -1
- package/composite-elements/wcs-card-header.js +1 -1
- package/composite-elements/wcs-card-media.js +1 -1
- package/composite-elements/wcs-card.js +1 -1
- package/composite-elements/wcs-card.js.map +1 -1
- package/composite-elements/wcs-checkbox.js +1 -1
- package/composite-elements/wcs-chip.js +1 -1
- package/composite-elements/wcs-chip.js.map +1 -1
- package/composite-elements/wcs-com-nav-category.js +1 -1
- package/composite-elements/wcs-com-nav-item.js +1 -1
- package/composite-elements/wcs-com-nav-submenu.js +1 -1
- package/composite-elements/wcs-com-nav.js +1 -1
- package/composite-elements/wcs-com-nav.js.map +1 -1
- package/composite-elements/wcs-counter.js +1 -1
- package/composite-elements/wcs-divider.js +1 -1
- package/composite-elements/wcs-dropdown-divider.js +1 -1
- package/composite-elements/wcs-dropdown-header.js +1 -1
- package/composite-elements/wcs-dropdown-item.js +1 -1
- package/composite-elements/wcs-dropdown.js +1 -1
- package/composite-elements/wcs-dropdown.js.map +1 -1
- package/composite-elements/wcs-editable-field.js +1 -1
- package/composite-elements/wcs-editable-field.js.map +1 -1
- package/composite-elements/wcs-error.js +1 -1
- package/composite-elements/wcs-field-content.js +1 -1
- package/composite-elements/wcs-field-content.js.map +1 -1
- package/composite-elements/wcs-field-label.js +1 -1
- package/composite-elements/wcs-field.js +1 -1
- package/composite-elements/wcs-field.js.map +1 -1
- package/composite-elements/wcs-footer.js +1 -1
- package/composite-elements/wcs-form-field.js +1 -1
- package/composite-elements/wcs-galactic-menu.js +1 -1
- package/composite-elements/wcs-galactic.js +1 -1
- package/composite-elements/wcs-grid-column.js +1 -1
- package/composite-elements/wcs-grid-custom-cell.js +1 -1
- package/composite-elements/wcs-grid-custom-cell.js.map +1 -1
- package/composite-elements/wcs-grid-pagination.js +1 -1
- package/composite-elements/wcs-grid.js +1 -1
- package/composite-elements/wcs-grid.js.map +1 -1
- package/composite-elements/wcs-header.js +1 -1
- package/composite-elements/wcs-hint.js +1 -1
- package/composite-elements/wcs-horizontal-stepper.js +1 -1
- package/composite-elements/wcs-icon.js +1 -1
- package/composite-elements/wcs-input.js +1 -1
- package/composite-elements/wcs-input.js.map +1 -1
- package/composite-elements/wcs-label.js +1 -1
- package/composite-elements/wcs-list-item-properties.js +1 -1
- package/composite-elements/wcs-list-item-property.js +1 -1
- package/composite-elements/wcs-list-item.js +1 -1
- package/composite-elements/wcs-mat-icon.js +1 -1
- package/composite-elements/wcs-message.d.ts +11 -0
- package/composite-elements/wcs-message.js +2 -0
- package/composite-elements/wcs-message.js.map +1 -0
- package/composite-elements/wcs-modal.js +1 -1
- package/composite-elements/wcs-native-select.js +1 -1
- package/composite-elements/wcs-nav-item.js +1 -1
- package/composite-elements/wcs-nav.js +1 -1
- package/composite-elements/wcs-progress-bar.js +1 -1
- package/composite-elements/wcs-progress-radial.js +1 -1
- package/composite-elements/wcs-radio-group.js +1 -1
- package/composite-elements/wcs-radio.js +1 -1
- package/composite-elements/wcs-radio.js.map +1 -1
- package/composite-elements/wcs-select-option.js +1 -1
- package/composite-elements/wcs-select.js +1 -1
- package/composite-elements/wcs-skeleton-circle.js +1 -1
- package/composite-elements/wcs-skeleton-rectangle.js +1 -1
- package/composite-elements/wcs-skeleton-text.js +1 -1
- package/composite-elements/wcs-spinner.js +1 -1
- package/composite-elements/wcs-switch.js +1 -1
- package/composite-elements/wcs-tab.js +1 -1
- package/composite-elements/wcs-tab.js.map +1 -1
- package/composite-elements/wcs-tabs.js +1 -1
- package/composite-elements/wcs-textarea.js +1 -1
- package/composite-elements/wcs-tooltip.js +2 -2
- package/dist/cjs/alert-close-button-4435ed57.js +10 -0
- package/dist/cjs/alert-close-button-4435ed57.js.map +1 -0
- package/dist/cjs/{com-nav-utils-ff4f0bef.js → com-nav-utils-e081e998.js} +2 -2
- package/dist/cjs/{com-nav-utils-ff4f0bef.js.map → com-nav-utils-e081e998.js.map} +1 -1
- package/dist/cjs/{grid-pagination-4505d7b6.js → grid-pagination-e92dca78.js} +4 -4
- package/dist/cjs/grid-pagination-e92dca78.js.map +1 -0
- package/dist/cjs/{helpers-2f1a8ddc.js → helpers-eaafd588.js} +1 -9
- package/dist/cjs/helpers-eaafd588.js.map +1 -0
- package/dist/cjs/{isEqual-8a0a6936.js → isEqual-be8e5a57.js} +2 -2
- package/dist/cjs/{isEqual-8a0a6936.js.map → isEqual-be8e5a57.js.map} +1 -1
- package/dist/cjs/{keyboard-event-40ecdc27.js → keyboard-event-4890c60e.js} +2 -2
- package/dist/cjs/{keyboard-event-40ecdc27.js.map → keyboard-event-4890c60e.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/wcs-accordion-panel.cjs.entry.js +1 -1
- package/dist/cjs/wcs-alert-drawer.cjs.entry.js +14 -2
- package/dist/cjs/wcs-alert-drawer.cjs.entry.js.map +1 -1
- package/dist/cjs/wcs-alert.cjs.entry.js +3 -2
- package/dist/cjs/wcs-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/wcs-app.cjs.entry.js +3 -3
- package/dist/cjs/wcs-badge.cjs.entry.js +1 -1
- package/dist/cjs/wcs-breadcrumb-item.cjs.entry.js +1 -1
- package/dist/cjs/wcs-breadcrumb.cjs.entry.js +2 -2
- package/dist/cjs/{wcs-button_2.cjs.entry.js → wcs-button_3.cjs.entry.js} +40 -5
- package/dist/cjs/wcs-button_3.cjs.entry.js.map +1 -0
- package/dist/cjs/wcs-card-body.cjs.entry.js +1 -1
- package/dist/cjs/wcs-card-content.cjs.entry.js +1 -1
- package/dist/cjs/wcs-card-content.cjs.entry.js.map +1 -1
- package/dist/cjs/wcs-card-footer.cjs.entry.js +1 -1
- package/dist/cjs/wcs-card-header.cjs.entry.js +1 -1
- package/dist/cjs/wcs-card-media.cjs.entry.js +1 -1
- package/dist/cjs/wcs-card.cjs.entry.js +1 -1
- package/dist/cjs/wcs-card.cjs.entry.js.map +1 -1
- package/dist/cjs/wcs-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/wcs-chip.cjs.entry.js +18 -6
- package/dist/cjs/wcs-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/wcs-com-nav-category.cjs.entry.js +4 -4
- package/dist/cjs/wcs-com-nav-item.cjs.entry.js +1 -1
- package/dist/cjs/wcs-com-nav-submenu.cjs.entry.js +4 -4
- package/dist/cjs/wcs-com-nav.cjs.entry.js +4 -4
- package/dist/cjs/wcs-counter.cjs.entry.js +2 -2
- package/dist/cjs/wcs-divider.cjs.entry.js +1 -1
- package/dist/cjs/wcs-dropdown-divider.cjs.entry.js +1 -1
- package/dist/cjs/wcs-dropdown-header.cjs.entry.js +1 -1
- package/dist/cjs/wcs-dropdown-item.cjs.entry.js +2 -2
- package/dist/cjs/wcs-dropdown.cjs.entry.js +4 -4
- package/dist/cjs/wcs-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/wcs-editable-field.cjs.entry.js +35 -11
- package/dist/cjs/wcs-editable-field.cjs.entry.js.map +1 -1
- package/dist/cjs/wcs-error_3.cjs.entry.js +5 -5
- package/dist/cjs/wcs-error_3.cjs.entry.js.map +1 -1
- package/dist/cjs/wcs-field-content.cjs.entry.js +1 -1
- package/dist/cjs/wcs-field-label.cjs.entry.js +1 -1
- package/dist/cjs/wcs-field.cjs.entry.js +1 -1
- package/dist/cjs/wcs-footer.cjs.entry.js +1 -1
- package/dist/cjs/wcs-galactic-menu.cjs.entry.js +3 -3
- package/dist/cjs/wcs-galactic.cjs.entry.js +1 -1
- package/dist/cjs/wcs-grid-column.cjs.entry.js +2 -2
- package/dist/cjs/wcs-grid-custom-cell.cjs.entry.js +1 -1
- package/dist/cjs/wcs-grid-pagination.cjs.entry.js +2 -2
- package/dist/cjs/wcs-grid.cjs.entry.js +15 -8
- package/dist/cjs/wcs-grid.cjs.entry.js.map +1 -1
- package/dist/cjs/wcs-header.cjs.entry.js +2 -2
- package/dist/cjs/wcs-hint.cjs.entry.js +1 -1
- package/dist/cjs/wcs-horizontal-stepper.cjs.entry.js +1 -1
- package/dist/cjs/wcs-icon.cjs.entry.js +2 -2
- package/dist/cjs/wcs-input.cjs.entry.js +2 -7
- package/dist/cjs/wcs-input.cjs.entry.js.map +1 -1
- package/dist/cjs/wcs-list-item-properties.cjs.entry.js +1 -1
- package/dist/cjs/wcs-list-item-property.cjs.entry.js +1 -1
- package/dist/cjs/wcs-list-item.cjs.entry.js +1 -1
- package/dist/cjs/wcs-message.cjs.entry.js +56 -0
- package/dist/cjs/wcs-message.cjs.entry.js.map +1 -0
- package/dist/cjs/wcs-modal.cjs.entry.js +2 -2
- package/dist/cjs/wcs-native-select.cjs.entry.js +1 -1
- package/dist/cjs/wcs-nav-item.cjs.entry.js +2 -2
- package/dist/cjs/wcs-nav.cjs.entry.js +2 -2
- package/dist/cjs/wcs-progress-bar.cjs.entry.js +3 -3
- package/dist/cjs/wcs-progress-radial.cjs.entry.js +3 -3
- package/dist/cjs/wcs-radio-group.cjs.entry.js +2 -2
- package/dist/cjs/wcs-radio.cjs.entry.js +25 -21
- package/dist/cjs/wcs-radio.cjs.entry.js.map +1 -1
- package/dist/cjs/wcs-select_2.cjs.entry.js +25 -23
- package/dist/cjs/wcs-select_2.cjs.entry.js.map +1 -1
- package/dist/cjs/wcs-skeleton-circle.cjs.entry.js +1 -1
- package/dist/cjs/wcs-skeleton-rectangle.cjs.entry.js +1 -1
- package/dist/cjs/wcs-skeleton-text.cjs.entry.js +1 -1
- package/dist/cjs/wcs-switch.cjs.entry.js +2 -2
- package/dist/cjs/wcs-tab.cjs.entry.js +1 -1
- package/dist/cjs/wcs-tabs.cjs.entry.js +2 -2
- package/dist/cjs/wcs-textarea.cjs.entry.js +2 -2
- package/dist/cjs/wcs-tooltip.cjs.entry.js +2 -2
- package/dist/cjs/wcs.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/alert/alert-close-button.js +3 -0
- package/dist/collection/components/alert/alert-close-button.js.map +1 -0
- package/dist/collection/components/alert/alert.css +12 -11
- package/dist/collection/components/alert/alert.js +2 -1
- package/dist/collection/components/alert/alert.js.map +1 -1
- package/dist/collection/components/alert-drawer/alert-drawer.js +34 -2
- package/dist/collection/components/alert-drawer/alert-drawer.js.map +1 -1
- package/dist/collection/components/app/app.js +3 -3
- package/dist/collection/components/badge/badge.js +1 -1
- package/dist/collection/components/breadcrumb/breadcrumb.js +1 -1
- package/dist/collection/components/breadcrumb-item/breadcrumb-item.js +1 -1
- package/dist/collection/components/button/button.css +26 -0
- package/dist/collection/components/button/button.js +47 -1
- package/dist/collection/components/button/button.js.map +1 -1
- package/dist/collection/components/card/card.js +11 -4
- package/dist/collection/components/card/card.js.map +1 -1
- package/dist/collection/components/card-body/card-body.js +1 -1
- package/dist/collection/components/card-content/card-content.js +8 -3
- package/dist/collection/components/card-content/card-content.js.map +1 -1
- package/dist/collection/components/card-footer/card-footer.js +1 -1
- package/dist/collection/components/card-header/card-header.js +1 -1
- package/dist/collection/components/card-media/card-media.js +1 -1
- package/dist/collection/components/checkbox/checkbox.js +1 -1
- package/dist/collection/components/chip/chip.e2e.playwright.js +33 -0
- package/dist/collection/components/chip/chip.e2e.playwright.js.map +1 -1
- package/dist/collection/components/chip/chip.js +19 -6
- package/dist/collection/components/chip/chip.js.map +1 -1
- package/dist/collection/components/com-nav/com-nav.js +2 -2
- package/dist/collection/components/com-nav-category/com-nav-category.js +2 -2
- package/dist/collection/components/com-nav-item/com-nav-item.js +1 -1
- package/dist/collection/components/com-nav-submenu/com-nav-submenu.js +2 -2
- package/dist/collection/components/counter/counter.js +1 -1
- package/dist/collection/components/divider/divider.js +1 -1
- package/dist/collection/components/dropdown/dropdown.css +9 -0
- package/dist/collection/components/dropdown/dropdown.e2e.playwright.js +76 -0
- package/dist/collection/components/dropdown/dropdown.e2e.playwright.js.map +1 -1
- package/dist/collection/components/dropdown/dropdown.js +1 -1
- package/dist/collection/components/dropdown-divider/dropdown-divider.js +1 -1
- package/dist/collection/components/dropdown-header/dropdown-header.js +1 -1
- package/dist/collection/components/dropdown-item/dropdown-item.js +1 -1
- package/dist/collection/components/editable-field/editable-field.e2e.playwright.js +214 -0
- package/dist/collection/components/editable-field/editable-field.e2e.playwright.js.map +1 -1
- package/dist/collection/components/editable-field/editable-field.js +34 -10
- package/dist/collection/components/editable-field/editable-field.js.map +1 -1
- package/dist/collection/components/error/error.js +1 -1
- package/dist/collection/components/field/field.js +1 -1
- package/dist/collection/components/field-content/field-content.js +1 -1
- package/dist/collection/components/field-label/field-label.js +1 -1
- package/dist/collection/components/footer/footer.js +1 -1
- package/dist/collection/components/form-field/form-field.js +1 -1
- package/dist/collection/components/galactic/galactic.js +1 -1
- package/dist/collection/components/galactic-menu/galactic-menu.js +2 -2
- package/dist/collection/components/grid/grid-radio.css +8 -0
- package/dist/collection/components/grid/grid.e2e.playwright.js +130 -0
- package/dist/collection/components/grid/grid.e2e.playwright.js.map +1 -1
- package/dist/collection/components/grid/grid.js +10 -3
- package/dist/collection/components/grid/grid.js.map +1 -1
- package/dist/collection/components/grid-column/grid-column.js +1 -1
- package/dist/collection/components/grid-custom-cell/grid-custom-cell.js +1 -1
- package/dist/collection/components/grid-pagination/grid-pagination.css +4 -0
- package/dist/collection/components/grid-pagination/grid-pagination.js +4 -1
- package/dist/collection/components/grid-pagination/grid-pagination.js.map +1 -1
- package/dist/collection/components/header/header.js +1 -1
- package/dist/collection/components/hint/hint.js +1 -1
- package/dist/collection/components/horizontal-stepper/horizontal-stepper.js +1 -1
- package/dist/collection/components/icon/icon.js +1 -1
- package/dist/collection/components/input/input.js +2 -7
- package/dist/collection/components/input/input.js.map +1 -1
- package/dist/collection/components/label/label.css +12 -8
- package/dist/collection/components/label/label.e2e.playwright.js +62 -0
- package/dist/collection/components/label/label.e2e.playwright.js.map +1 -1
- package/dist/collection/components/label/label.js +1 -1
- package/dist/collection/components/label/label.js.map +1 -1
- package/dist/collection/components/list-item/list-item.js +1 -1
- package/dist/collection/components/list-item-properties/list-item-properties.js +1 -1
- package/dist/collection/components/list-item-property/list-item-property.js +1 -1
- package/dist/collection/components/mat-icon/mat-icon.css +8 -4
- package/dist/collection/components/mat-icon/mat-icon.js +6 -1
- package/dist/collection/components/mat-icon/mat-icon.js.map +1 -1
- package/dist/collection/components/message/message-interface.js +2 -0
- package/dist/collection/components/message/message-interface.js.map +1 -0
- package/dist/collection/components/message/message.css +101 -0
- package/dist/collection/components/message/message.js +206 -0
- package/dist/collection/components/message/message.js.map +1 -0
- package/dist/collection/components/modal/modal.js +1 -1
- package/dist/collection/components/native-select/native-select.js +1 -1
- package/dist/collection/components/nav/nav.js +1 -1
- package/dist/collection/components/nav-item/nav-item.js +1 -1
- package/dist/collection/components/progress-bar/progress-bar.js +2 -2
- package/dist/collection/components/progress-radial/progress-radial.js +2 -2
- package/dist/collection/components/radio/radio.css +48 -37
- package/dist/collection/components/radio/radio.js +24 -20
- package/dist/collection/components/radio/radio.js.map +1 -1
- package/dist/collection/components/radio-group/radio-group.e2e.playwright.js +92 -7
- package/dist/collection/components/radio-group/radio-group.e2e.playwright.js.map +1 -1
- package/dist/collection/components/radio-group/radio-group.js +1 -1
- package/dist/collection/components/select/select-interface.js.map +1 -1
- package/dist/collection/components/select/select.e2e.playwright.js +167 -16
- package/dist/collection/components/select/select.e2e.playwright.js.map +1 -1
- package/dist/collection/components/select/select.js +21 -19
- package/dist/collection/components/select/select.js.map +1 -1
- package/dist/collection/components/select-option/select-option.js +2 -2
- package/dist/collection/components/skeleton-circle/skeleton-circle.js +1 -1
- package/dist/collection/components/skeleton-rectangle/skeleton-rectangle.js +1 -1
- package/dist/collection/components/skeleton-text/skeleton-text.js +1 -1
- package/dist/collection/components/spinner/spinner.js +1 -1
- package/dist/collection/components/switch/switch.js +1 -1
- package/dist/collection/components/tab/tab.js +1 -1
- package/dist/collection/components/tabs/tabs.js +1 -1
- package/dist/collection/components/textarea/textarea.js +1 -1
- package/dist/collection/components/tooltip/tooltip.js +1 -1
- package/dist/esm/alert-close-button-2ce5ac95.js +8 -0
- package/dist/esm/alert-close-button-2ce5ac95.js.map +1 -0
- package/dist/esm/{com-nav-utils-ee7bf77c.js → com-nav-utils-a5af32af.js} +2 -2
- package/dist/esm/{com-nav-utils-ee7bf77c.js.map → com-nav-utils-a5af32af.js.map} +1 -1
- package/dist/esm/{grid-pagination-731726a6.js → grid-pagination-c29173f6.js} +4 -4
- package/dist/esm/grid-pagination-c29173f6.js.map +1 -0
- package/dist/esm/{helpers-ece6a2d3.js → helpers-2d73ee7c.js} +2 -9
- package/dist/esm/helpers-2d73ee7c.js.map +1 -0
- package/dist/esm/{isEqual-f2a07f4c.js → isEqual-89e74e17.js} +2 -2
- package/dist/esm/{isEqual-f2a07f4c.js.map → isEqual-89e74e17.js.map} +1 -1
- package/dist/esm/{keyboard-event-26b65ae5.js → keyboard-event-3a0579d5.js} +2 -2
- package/dist/esm/{keyboard-event-26b65ae5.js.map → keyboard-event-3a0579d5.js.map} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/wcs-accordion-panel.entry.js +1 -1
- package/dist/esm/wcs-alert-drawer.entry.js +14 -2
- package/dist/esm/wcs-alert-drawer.entry.js.map +1 -1
- package/dist/esm/wcs-alert.entry.js +3 -2
- package/dist/esm/wcs-alert.entry.js.map +1 -1
- package/dist/esm/wcs-app.entry.js +3 -3
- package/dist/esm/wcs-badge.entry.js +1 -1
- package/dist/esm/wcs-breadcrumb-item.entry.js +1 -1
- package/dist/esm/wcs-breadcrumb.entry.js +2 -2
- package/dist/esm/{wcs-button_2.entry.js → wcs-button_3.entry.js} +41 -7
- package/dist/esm/{wcs-button_2.entry.js.map → wcs-button_3.entry.js.map} +1 -1
- package/dist/esm/wcs-card-body.entry.js +1 -1
- package/dist/esm/wcs-card-content.entry.js +1 -1
- package/dist/esm/wcs-card-content.entry.js.map +1 -1
- package/dist/esm/wcs-card-footer.entry.js +1 -1
- package/dist/esm/wcs-card-header.entry.js +1 -1
- package/dist/esm/wcs-card-media.entry.js +1 -1
- package/dist/esm/wcs-card.entry.js +1 -1
- package/dist/esm/wcs-card.entry.js.map +1 -1
- package/dist/esm/wcs-checkbox.entry.js +2 -2
- package/dist/esm/wcs-chip.entry.js +18 -6
- package/dist/esm/wcs-chip.entry.js.map +1 -1
- package/dist/esm/wcs-com-nav-category.entry.js +4 -4
- package/dist/esm/wcs-com-nav-item.entry.js +1 -1
- package/dist/esm/wcs-com-nav-submenu.entry.js +4 -4
- package/dist/esm/wcs-com-nav.entry.js +4 -4
- package/dist/esm/wcs-counter.entry.js +2 -2
- package/dist/esm/wcs-divider.entry.js +1 -1
- package/dist/esm/wcs-dropdown-divider.entry.js +1 -1
- package/dist/esm/wcs-dropdown-header.entry.js +1 -1
- package/dist/esm/wcs-dropdown-item.entry.js +2 -2
- package/dist/esm/wcs-dropdown.entry.js +4 -4
- package/dist/esm/wcs-dropdown.entry.js.map +1 -1
- package/dist/esm/wcs-editable-field.entry.js +35 -11
- package/dist/esm/wcs-editable-field.entry.js.map +1 -1
- package/dist/esm/wcs-error_3.entry.js +5 -5
- package/dist/esm/wcs-error_3.entry.js.map +1 -1
- package/dist/esm/wcs-field-content.entry.js +1 -1
- package/dist/esm/wcs-field-label.entry.js +1 -1
- package/dist/esm/wcs-field.entry.js +1 -1
- package/dist/esm/wcs-footer.entry.js +1 -1
- package/dist/esm/wcs-galactic-menu.entry.js +3 -3
- package/dist/esm/wcs-galactic.entry.js +1 -1
- package/dist/esm/wcs-grid-column.entry.js +2 -2
- package/dist/esm/wcs-grid-custom-cell.entry.js +1 -1
- package/dist/esm/wcs-grid-pagination.entry.js +2 -2
- package/dist/esm/wcs-grid.entry.js +15 -8
- package/dist/esm/wcs-grid.entry.js.map +1 -1
- package/dist/esm/wcs-header.entry.js +2 -2
- package/dist/esm/wcs-hint.entry.js +1 -1
- package/dist/esm/wcs-horizontal-stepper.entry.js +1 -1
- package/dist/esm/wcs-icon.entry.js +2 -2
- package/dist/esm/wcs-input.entry.js +2 -7
- package/dist/esm/wcs-input.entry.js.map +1 -1
- package/dist/esm/wcs-list-item-properties.entry.js +1 -1
- package/dist/esm/wcs-list-item-property.entry.js +1 -1
- package/dist/esm/wcs-list-item.entry.js +1 -1
- package/dist/esm/wcs-message.entry.js +52 -0
- package/dist/esm/wcs-message.entry.js.map +1 -0
- package/dist/esm/wcs-modal.entry.js +2 -2
- package/dist/esm/wcs-native-select.entry.js +1 -1
- package/dist/esm/wcs-nav-item.entry.js +2 -2
- package/dist/esm/wcs-nav.entry.js +2 -2
- package/dist/esm/wcs-progress-bar.entry.js +3 -3
- package/dist/esm/wcs-progress-radial.entry.js +3 -3
- package/dist/esm/wcs-radio-group.entry.js +2 -2
- package/dist/esm/wcs-radio.entry.js +25 -21
- package/dist/esm/wcs-radio.entry.js.map +1 -1
- package/dist/esm/wcs-select_2.entry.js +25 -23
- package/dist/esm/wcs-select_2.entry.js.map +1 -1
- package/dist/esm/wcs-skeleton-circle.entry.js +1 -1
- package/dist/esm/wcs-skeleton-rectangle.entry.js +1 -1
- package/dist/esm/wcs-skeleton-text.entry.js +1 -1
- package/dist/esm/wcs-switch.entry.js +2 -2
- package/dist/esm/wcs-tab.entry.js +1 -1
- package/dist/esm/wcs-tabs.entry.js +2 -2
- package/dist/esm/wcs-textarea.entry.js +2 -2
- package/dist/esm/wcs-tooltip.entry.js +2 -2
- package/dist/esm/wcs.js +1 -1
- package/dist/types/components/alert/alert-close-button.d.ts +4 -0
- package/dist/types/components/alert-drawer/alert-drawer.d.ts +10 -0
- package/dist/types/components/button/button.d.ts +18 -0
- package/dist/types/components/card/card.d.ts +10 -3
- package/dist/types/components/card-content/card-content.d.ts +7 -2
- package/dist/types/components/chip/chip.d.ts +1 -1
- package/dist/types/components/editable-field/editable-field.d.ts +3 -0
- package/dist/types/components/grid-pagination/grid-pagination.d.ts +3 -0
- package/dist/types/components/mat-icon/mat-icon.d.ts +5 -0
- package/dist/types/components/message/message-interface.d.ts +1 -0
- package/dist/types/components/message/message.d.ts +77 -0
- package/dist/types/components/radio/radio.d.ts +4 -5
- package/dist/types/components/select/select-interface.d.ts +5 -0
- package/dist/types/components/select/select.d.ts +0 -2
- package/dist/types/components.d.ts +316 -21
- package/dist/wcs/{p-41b946b2.entry.js → p-03ae13ec.entry.js} +2 -2
- package/dist/wcs/p-07c961b4.entry.js +2 -0
- package/dist/wcs/p-07c961b4.entry.js.map +1 -0
- package/dist/wcs/{p-dfb52a1c.entry.js → p-0a0bc006.entry.js} +2 -2
- package/dist/wcs/p-0a0bc006.entry.js.map +1 -0
- package/dist/wcs/{p-abd8d5a0.entry.js → p-167108aa.entry.js} +2 -2
- package/dist/wcs/{p-5e8fff73.entry.js → p-17c8f012.entry.js} +2 -2
- package/dist/wcs/{p-db7ba599.entry.js → p-190a8883.entry.js} +3 -3
- package/dist/wcs/{p-0758d22e.entry.js → p-276070f3.entry.js} +2 -2
- package/dist/wcs/{p-f929b66f.entry.js → p-28941abc.entry.js} +2 -2
- package/dist/wcs/p-28b3e55a.entry.js +2 -0
- package/dist/wcs/p-28b3e55a.entry.js.map +1 -0
- package/dist/wcs/{p-c261eaf9.entry.js → p-28d52607.entry.js} +2 -2
- package/dist/wcs/p-2d4fd96a.entry.js +2 -0
- package/dist/wcs/{p-18fa39f4.entry.js → p-2d5becbf.entry.js} +2 -2
- package/dist/wcs/p-2da579f2.entry.js +2 -0
- package/dist/wcs/{p-53a395a9.entry.js → p-2e0238b6.entry.js} +2 -2
- package/dist/wcs/{p-1e7ea63c.entry.js → p-358a505f.entry.js} +2 -2
- package/dist/wcs/{p-dff8641e.entry.js → p-38d37878.entry.js} +2 -2
- package/dist/wcs/{p-4ae08567.entry.js → p-3bc23ef1.entry.js} +2 -2
- package/dist/wcs/p-3da303d7.entry.js +16 -0
- package/dist/wcs/p-3da303d7.entry.js.map +1 -0
- package/dist/wcs/{p-9fd3366c.entry.js → p-407d9700.entry.js} +2 -2
- package/dist/wcs/{p-c84ae00d.entry.js → p-41383e84.entry.js} +2 -2
- package/dist/wcs/{p-27b438c0.entry.js → p-4506e5e4.entry.js} +2 -2
- package/dist/wcs/{p-5202b323.entry.js → p-48541bf7.entry.js} +2 -2
- package/dist/wcs/{p-8332a7e3.entry.js → p-4a28d7a3.entry.js} +2 -2
- package/dist/wcs/p-4c43d8fc.entry.js +2 -0
- package/dist/wcs/p-4c43d8fc.entry.js.map +1 -0
- package/dist/wcs/{p-0424e545.entry.js → p-4d7bc716.entry.js} +2 -2
- package/dist/wcs/{p-f2f7595e.entry.js → p-4ef24e07.entry.js} +2 -2
- package/dist/wcs/{p-f2f7595e.entry.js.map → p-4ef24e07.entry.js.map} +1 -1
- package/dist/wcs/{p-367946fe.entry.js → p-4f20cdba.entry.js} +2 -2
- package/dist/wcs/{p-1ba616c2.entry.js → p-4fad6675.entry.js} +2 -2
- package/dist/wcs/p-51c93d07.entry.js +2 -0
- package/dist/wcs/p-51c93d07.entry.js.map +1 -0
- package/dist/wcs/{p-cbda74f6.entry.js → p-575881cd.entry.js} +2 -2
- package/dist/wcs/p-5823cd22.entry.js +2 -0
- package/dist/wcs/p-5a276237.entry.js +2 -0
- package/dist/wcs/{p-fdeae83e.entry.js → p-5b61a775.entry.js} +2 -2
- package/dist/wcs/p-5bc7a732.js +2 -0
- package/dist/wcs/p-5bc7a732.js.map +1 -0
- package/dist/wcs/{p-ff826ebe.js → p-5cea30cb.js} +1 -1
- package/dist/wcs/{p-ff826ebe.js.map → p-5cea30cb.js.map} +1 -1
- package/dist/wcs/p-6033c91b.entry.js +2 -0
- package/dist/wcs/p-609115fc.js +2 -0
- package/dist/wcs/p-609115fc.js.map +1 -0
- package/dist/wcs/{p-aadf37e7.entry.js → p-6b5db6be.entry.js} +2 -2
- package/dist/wcs/{p-a0f6ef30.entry.js → p-6b86d4fa.entry.js} +2 -2
- package/dist/wcs/p-6b86d4fa.entry.js.map +1 -0
- package/dist/wcs/p-6c6841ac.entry.js +2 -0
- package/dist/wcs/p-6c78d16e.js +2 -0
- package/dist/wcs/p-714c3cd7.entry.js +2 -0
- package/dist/wcs/p-714c3cd7.entry.js.map +1 -0
- package/dist/wcs/p-71af107c.js +2 -0
- package/dist/wcs/p-71af107c.js.map +1 -0
- package/dist/wcs/{p-ad286030.entry.js → p-7b67cec9.entry.js} +2 -2
- package/dist/wcs/{p-781a956e.entry.js → p-7cd88886.entry.js} +2 -2
- package/dist/wcs/{p-850fa9c9.entry.js → p-7f5eea6a.entry.js} +2 -2
- package/dist/wcs/{p-e56b9ce2.entry.js → p-882886ae.entry.js} +2 -2
- package/dist/wcs/p-8fd515a3.entry.js +2 -0
- package/dist/wcs/{p-352e1f99.entry.js → p-95f35254.entry.js} +2 -2
- package/dist/wcs/{p-b0a6eec6.entry.js → p-9d47a628.entry.js} +2 -2
- package/dist/wcs/p-9d683786.entry.js +2 -0
- package/dist/wcs/{p-22620c69.entry.js → p-a45a1f25.entry.js} +2 -2
- package/dist/wcs/p-a45a1f25.entry.js.map +1 -0
- package/dist/wcs/{p-0326f834.entry.js → p-a9fa5726.entry.js} +2 -2
- package/dist/wcs/p-ae305b09.entry.js +2 -0
- package/dist/wcs/p-ae305b09.entry.js.map +1 -0
- package/dist/wcs/p-afd3e923.entry.js +2 -0
- package/dist/wcs/{p-990698a7.entry.js → p-b1b0e2cb.entry.js} +2 -2
- package/dist/wcs/p-b1b0e2cb.entry.js.map +1 -0
- package/dist/wcs/{p-3a18535f.entry.js → p-b9744cf7.entry.js} +2 -2
- package/dist/wcs/p-b99daad4.entry.js +156 -0
- package/dist/wcs/p-b99daad4.entry.js.map +1 -0
- package/dist/wcs/{p-cbbca016.entry.js → p-cefd8219.entry.js} +2 -2
- package/dist/wcs/{p-9c73744c.entry.js → p-d18051b2.entry.js} +2 -2
- package/dist/wcs/{p-637ec45a.entry.js → p-d42f5883.entry.js} +2 -2
- package/dist/wcs/p-d42f5883.entry.js.map +1 -0
- package/dist/wcs/p-d6d273d2.js +2 -0
- package/dist/wcs/{p-2329af04.entry.js → p-e08febb4.entry.js} +2 -2
- package/dist/wcs/{p-bc009574.entry.js → p-e91d33e0.entry.js} +2 -2
- package/dist/wcs/p-f37d7b07.entry.js +2 -0
- package/dist/wcs/{p-fbd68522.entry.js → p-f7897fd4.entry.js} +2 -2
- package/dist/wcs/{p-c6f8c45c.entry.js → p-fcc43c82.entry.js} +2 -2
- package/dist/wcs/{p-ed3b0709.entry.js → p-fd18dce6.entry.js} +2 -2
- package/dist/wcs/p-fed6a8cd.entry.js +2 -0
- package/dist/wcs/{p-cad10435.entry.js.map → p-fed6a8cd.entry.js.map} +1 -1
- package/dist/wcs/{p-4e2d6227.entry.js → p-ff20d08b.entry.js} +2 -2
- package/dist/wcs/wcs.esm.js +1 -1
- package/dist/wcs/wcs.esm.js.map +1 -1
- package/package.json +2 -2
- package/bundle/p-2e9b9605.js +0 -2
- package/bundle/p-2e9b9605.js.map +0 -1
- package/bundle/p-30d83d3d.js +0 -2
- package/bundle/p-30d83d3d.js.map +0 -1
- package/bundle/p-581fc0fc.js +0 -2
- package/bundle/p-581fc0fc.js.map +0 -1
- package/bundle/p-763371a0.js +0 -16
- package/bundle/p-763371a0.js.map +0 -1
- package/bundle/p-98bd8a96.js +0 -2
- package/bundle/p-98bd8a96.js.map +0 -1
- package/bundle/p-9c2aa87a.js +0 -2
- package/bundle/p-9c2aa87a.js.map +0 -1
- package/bundle/p-cdc6f6c2.js.map +0 -1
- package/bundle/p-f0dda0b8.js +0 -2
- package/composite-elements/p-2454bcae.js +0 -2
- package/composite-elements/p-2a51c239.js +0 -2
- package/composite-elements/p-2a51c239.js.map +0 -1
- package/composite-elements/p-46f752d5.js +0 -2
- package/composite-elements/p-51517fda.js.map +0 -1
- package/composite-elements/p-55668982.js +0 -2
- package/composite-elements/p-55668982.js.map +0 -1
- package/composite-elements/p-79ad61e4.js +0 -2
- package/composite-elements/p-79ad61e4.js.map +0 -1
- package/composite-elements/p-af24fb0d.js +0 -16
- package/composite-elements/p-af24fb0d.js.map +0 -1
- package/composite-elements/p-bc4c736d.js +0 -2
- package/composite-elements/p-bc4c736d.js.map +0 -1
- package/composite-elements/p-e803bb26.js +0 -2
- package/composite-elements/p-e803bb26.js.map +0 -1
- package/dist/cjs/grid-pagination-4505d7b6.js.map +0 -1
- package/dist/cjs/helpers-2f1a8ddc.js.map +0 -1
- package/dist/cjs/wcs-button_2.cjs.entry.js.map +0 -1
- package/dist/cjs/wcs-mat-icon.cjs.entry.js +0 -42
- package/dist/cjs/wcs-mat-icon.cjs.entry.js.map +0 -1
- package/dist/esm/grid-pagination-731726a6.js.map +0 -1
- package/dist/esm/helpers-ece6a2d3.js.map +0 -1
- package/dist/esm/wcs-mat-icon.entry.js +0 -38
- package/dist/esm/wcs-mat-icon.entry.js.map +0 -1
- package/dist/wcs/p-0017d766.js +0 -2
- package/dist/wcs/p-0b8157e7.entry.js +0 -2
- package/dist/wcs/p-2221bf0c.entry.js +0 -16
- package/dist/wcs/p-2221bf0c.entry.js.map +0 -1
- package/dist/wcs/p-22620c69.entry.js.map +0 -1
- package/dist/wcs/p-3823f54e.entry.js +0 -2
- package/dist/wcs/p-450942b1.entry.js +0 -156
- package/dist/wcs/p-450942b1.entry.js.map +0 -1
- package/dist/wcs/p-52d77e1f.js +0 -2
- package/dist/wcs/p-52d77e1f.js.map +0 -1
- package/dist/wcs/p-5607246c.entry.js +0 -2
- package/dist/wcs/p-580b3142.entry.js +0 -2
- package/dist/wcs/p-5da0534f.entry.js +0 -2
- package/dist/wcs/p-5da0534f.entry.js.map +0 -1
- package/dist/wcs/p-637ec45a.entry.js.map +0 -1
- package/dist/wcs/p-6aededc6.entry.js +0 -2
- package/dist/wcs/p-7de847e0.entry.js +0 -2
- package/dist/wcs/p-8152d360.entry.js +0 -2
- package/dist/wcs/p-8152d360.entry.js.map +0 -1
- package/dist/wcs/p-86ec9ead.entry.js +0 -2
- package/dist/wcs/p-86ec9ead.entry.js.map +0 -1
- package/dist/wcs/p-89b8c724.js +0 -2
- package/dist/wcs/p-98a8b806.entry.js +0 -2
- package/dist/wcs/p-98a8b806.entry.js.map +0 -1
- package/dist/wcs/p-990698a7.entry.js.map +0 -1
- package/dist/wcs/p-a0f6ef30.entry.js.map +0 -1
- package/dist/wcs/p-ad5192cd.entry.js +0 -2
- package/dist/wcs/p-b28b2fba.entry.js +0 -2
- package/dist/wcs/p-b28b2fba.entry.js.map +0 -1
- package/dist/wcs/p-c211a5d1.entry.js +0 -2
- package/dist/wcs/p-c5bad0b8.js +0 -2
- package/dist/wcs/p-c5bad0b8.js.map +0 -1
- package/dist/wcs/p-c7812760.entry.js +0 -2
- package/dist/wcs/p-cad10435.entry.js +0 -2
- package/dist/wcs/p-dfb52a1c.entry.js.map +0 -1
- package/dist/wcs/p-e26c19e5.entry.js +0 -2
- package/dist/wcs/p-fe303f58.entry.js +0 -2
- package/dist/wcs/p-fe303f58.entry.js.map +0 -1
- /package/bundle/{p-f0dda0b8.js.map → p-035ad27f.js.map} +0 -0
- /package/bundle/{p-010cf905.js.map → p-16c7ed2e.js.map} +0 -0
- /package/bundle/{p-97e70e10.js.map → p-5a997d17.js.map} +0 -0
- /package/bundle/{p-60193ef5.js.map → p-791fce94.js.map} +0 -0
- /package/bundle/{p-44a3b0b9.js.map → p-87b9556d.js.map} +0 -0
- /package/bundle/{p-d23d7658.js.map → p-886109ed.js.map} +0 -0
- /package/bundle/{p-2751ddc1.js.map → p-a9a83300.js.map} +0 -0
- /package/bundle/{p-c8b73e93.js.map → p-d7d1ea63.js.map} +0 -0
- /package/composite-elements/{p-a90bb01e.js.map → p-061ccda5.js.map} +0 -0
- /package/composite-elements/{p-ef26b4d8.js.map → p-2181568b.js.map} +0 -0
- /package/composite-elements/{p-b83afff9.js.map → p-61886571.js.map} +0 -0
- /package/composite-elements/{p-2454bcae.js.map → p-b6d0a6b4.js.map} +0 -0
- /package/composite-elements/{p-46f752d5.js.map → p-cb9faa9b.js.map} +0 -0
- /package/composite-elements/{p-5a3d7fec.js.map → p-cd6cca64.js.map} +0 -0
- /package/composite-elements/{p-04663560.js.map → p-d2d79425.js.map} +0 -0
- /package/composite-elements/{p-b92e818b.js.map → p-f0b064a2.js.map} +0 -0
- /package/dist/wcs/{p-41b946b2.entry.js.map → p-03ae13ec.entry.js.map} +0 -0
- /package/dist/wcs/{p-abd8d5a0.entry.js.map → p-167108aa.entry.js.map} +0 -0
- /package/dist/wcs/{p-5e8fff73.entry.js.map → p-17c8f012.entry.js.map} +0 -0
- /package/dist/wcs/{p-db7ba599.entry.js.map → p-190a8883.entry.js.map} +0 -0
- /package/dist/wcs/{p-0758d22e.entry.js.map → p-276070f3.entry.js.map} +0 -0
- /package/dist/wcs/{p-f929b66f.entry.js.map → p-28941abc.entry.js.map} +0 -0
- /package/dist/wcs/{p-c261eaf9.entry.js.map → p-28d52607.entry.js.map} +0 -0
- /package/dist/wcs/{p-c211a5d1.entry.js.map → p-2d4fd96a.entry.js.map} +0 -0
- /package/dist/wcs/{p-18fa39f4.entry.js.map → p-2d5becbf.entry.js.map} +0 -0
- /package/dist/wcs/{p-7de847e0.entry.js.map → p-2da579f2.entry.js.map} +0 -0
- /package/dist/wcs/{p-53a395a9.entry.js.map → p-2e0238b6.entry.js.map} +0 -0
- /package/dist/wcs/{p-1e7ea63c.entry.js.map → p-358a505f.entry.js.map} +0 -0
- /package/dist/wcs/{p-dff8641e.entry.js.map → p-38d37878.entry.js.map} +0 -0
- /package/dist/wcs/{p-4ae08567.entry.js.map → p-3bc23ef1.entry.js.map} +0 -0
- /package/dist/wcs/{p-9fd3366c.entry.js.map → p-407d9700.entry.js.map} +0 -0
- /package/dist/wcs/{p-c84ae00d.entry.js.map → p-41383e84.entry.js.map} +0 -0
- /package/dist/wcs/{p-27b438c0.entry.js.map → p-4506e5e4.entry.js.map} +0 -0
- /package/dist/wcs/{p-5202b323.entry.js.map → p-48541bf7.entry.js.map} +0 -0
- /package/dist/wcs/{p-8332a7e3.entry.js.map → p-4a28d7a3.entry.js.map} +0 -0
- /package/dist/wcs/{p-0424e545.entry.js.map → p-4d7bc716.entry.js.map} +0 -0
- /package/dist/wcs/{p-367946fe.entry.js.map → p-4f20cdba.entry.js.map} +0 -0
- /package/dist/wcs/{p-1ba616c2.entry.js.map → p-4fad6675.entry.js.map} +0 -0
- /package/dist/wcs/{p-cbda74f6.entry.js.map → p-575881cd.entry.js.map} +0 -0
- /package/dist/wcs/{p-0b8157e7.entry.js.map → p-5823cd22.entry.js.map} +0 -0
- /package/dist/wcs/{p-580b3142.entry.js.map → p-5a276237.entry.js.map} +0 -0
- /package/dist/wcs/{p-fdeae83e.entry.js.map → p-5b61a775.entry.js.map} +0 -0
- /package/dist/wcs/{p-e26c19e5.entry.js.map → p-6033c91b.entry.js.map} +0 -0
- /package/dist/wcs/{p-aadf37e7.entry.js.map → p-6b5db6be.entry.js.map} +0 -0
- /package/dist/wcs/{p-6aededc6.entry.js.map → p-6c6841ac.entry.js.map} +0 -0
- /package/dist/wcs/{p-0017d766.js.map → p-6c78d16e.js.map} +0 -0
- /package/dist/wcs/{p-ad286030.entry.js.map → p-7b67cec9.entry.js.map} +0 -0
- /package/dist/wcs/{p-781a956e.entry.js.map → p-7cd88886.entry.js.map} +0 -0
- /package/dist/wcs/{p-850fa9c9.entry.js.map → p-7f5eea6a.entry.js.map} +0 -0
- /package/dist/wcs/{p-e56b9ce2.entry.js.map → p-882886ae.entry.js.map} +0 -0
- /package/dist/wcs/{p-5607246c.entry.js.map → p-8fd515a3.entry.js.map} +0 -0
- /package/dist/wcs/{p-352e1f99.entry.js.map → p-95f35254.entry.js.map} +0 -0
- /package/dist/wcs/{p-b0a6eec6.entry.js.map → p-9d47a628.entry.js.map} +0 -0
- /package/dist/wcs/{p-3823f54e.entry.js.map → p-9d683786.entry.js.map} +0 -0
- /package/dist/wcs/{p-0326f834.entry.js.map → p-a9fa5726.entry.js.map} +0 -0
- /package/dist/wcs/{p-ad5192cd.entry.js.map → p-afd3e923.entry.js.map} +0 -0
- /package/dist/wcs/{p-3a18535f.entry.js.map → p-b9744cf7.entry.js.map} +0 -0
- /package/dist/wcs/{p-cbbca016.entry.js.map → p-cefd8219.entry.js.map} +0 -0
- /package/dist/wcs/{p-9c73744c.entry.js.map → p-d18051b2.entry.js.map} +0 -0
- /package/dist/wcs/{p-89b8c724.js.map → p-d6d273d2.js.map} +0 -0
- /package/dist/wcs/{p-2329af04.entry.js.map → p-e08febb4.entry.js.map} +0 -0
- /package/dist/wcs/{p-bc009574.entry.js.map → p-e91d33e0.entry.js.map} +0 -0
- /package/dist/wcs/{p-c7812760.entry.js.map → p-f37d7b07.entry.js.map} +0 -0
- /package/dist/wcs/{p-fbd68522.entry.js.map → p-f7897fd4.entry.js.map} +0 -0
- /package/dist/wcs/{p-c6f8c45c.entry.js.map → p-fcc43c82.entry.js.map} +0 -0
- /package/dist/wcs/{p-ed3b0709.entry.js.map → p-fd18dce6.entry.js.map} +0 -0
- /package/dist/wcs/{p-4e2d6227.entry.js.map → p-ff20d08b.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["WcsEditableFieldSizeValues","isWcsEditableFieldSize","size","includes","editableFieldCss","WcsEditableFieldStyle0","EditableComponentState","EDIT_ARIA_LABEL","DELAY_BEFORE_FOCUS","EditableField","proxyCustomElement","H","this","spiedElement","currentValue","DISPLAY","componentWillLoad","console","warn","join","value","componentDidLoad","assignedElements","el","shadowRoot","querySelector","type","initWithInput","initWithTextArea","initWithSelect","disconnectedCallback","cleanUpSpiedElementEventListeners","keyboardSubmitHandler","event","shouldValidateOnEnterKey","isEnterKey","ctrlKey","sendCurrentValue","isEscapeKey","discardChanges","onWcsInputOrChange","stopImmediatePropagation","detail","target","validateFn","isError","_a","removeEventListener","onInputKeydownCallback","_b","onWcsInputOrChangeCallback","_c","element","filter","x","tagName","Error","addWcsInputEventHandler","addKeyDownHandler","addWcsChangeEventHandler","elt","bind","addEventListener","focusEditModeBtn","setTimeout","editModeBtn","focus","currentState","EDIT","LOAD","wcsChange","emit","newValue","successHandler","forceDisplayStateAndValidate","errorHandler","onWindowClickEvent","isMouseEvent","clickInsideElement","onValueChange","onDisplayContainerClick","readonly","fitContent","getReadonlySvgIcon","h","xmlns","width","height","viewBox","class","d","transform","formatValues","formattedValue","formattedCurrentValue","formatFn","Array","isArray","formattedValueText","render","Host","key","label","onClick","ref","icon","errorMsg"],"sources":["src/components/editable-field/editable-field-interface.tsx","src/components/editable-field/editable-field.scss?tag=wcs-editable-field&encapsulation=shadow","src/components/editable-field/editable-field.tsx"],"sourcesContent":["import { WcsSize } from '../../shared-types';\n\nexport type ValidateFn<T> = (value: T) => boolean;\nexport type FormatFn<T> = (value: T) => string;\n\nexport interface EditableComponentUpdateEvent {\n /**\n * The new value sent by the component inside the `wcs-editable-field`\n */\n newValue: any; // We use any for now, but when components typings will support template, change for parameterized type\n /**\n * Used to get from LOAD state to DISPLAY state. \n * Only use to commit the value, when the value is not systematically updated at every event firing\n */\n successHandler: () => void;\n /**\n * Used to get from LOAD state to DISPLAY state. \n * Only use to discard the value, when the value should not be updated \n */\n errorHandler: () => void;\n}\n\nexport const WcsEditableFieldSizeValues = ['m', 'l'] as const; // as const keyword is used to infer and preserve the exact literal values of an array or object.\n\nexport type WcsEditableFieldSize = Extract<WcsSize, typeof WcsEditableFieldSizeValues[number]>;\n\nexport function isWcsEditableFieldSize(size: string): size is WcsEditableFieldSize {\n // @ts-ignore : ignore size type, as it is checked with WcsEditableFieldSizeValues\n return WcsEditableFieldSizeValues.includes(size);\n}\n\nexport type EditableFieldType = 'input' | 'textarea' | 'select';\n",":host {\n --wcs-editable-field-label-color: var(--wcs-semantic-color-text-primary);\n --wcs-editable-field-label-font-weight: var(--wcs-semantic-font-weight-book);\n --wcs-editable-field-label-gap: var(--wcs-semantic-spacing-base);\n --wcs-editable-field-label-font-size: var(--wcs-semantic-font-size-m);\n\n --wcs-editable-field-background-color: var(--wcs-semantic-color-background-control-default);\n --wcs-editable-field-value-font-weight: var(--wcs-semantic-font-weight-medium);\n --wcs-editable-field-value-color-default: var(--wcs-semantic-color-text-primary);\n --wcs-editable-field-value-color-hover: var(--wcs-semantic-color-text-primary);\n --wcs-editable-field-value-color-readonly: var(--wcs-semantic-color-text-tertiary);\n --wcs-editable-field-height-m: var(--wcs-semantic-size-m);\n --wcs-editable-field-height-l: var(--wcs-semantic-size-l);\n --wcs-editable-field-font-size-m: var(--wcs-semantic-font-size-m);\n --wcs-editable-field-font-size-l: var(--wcs-semantic-font-size-l);\n\n --wcs-editable-field-border-radius: var(--wcs-semantic-border-radius-base);\n --wcs-editable-field-border-width: var(--wcs-semantic-border-width-default);\n --wcs-editable-field-border-width-focus: var(--wcs-semantic-border-width-large);\n --wcs-editable-field-border-width-hover: var(--wcs-semantic-border-width-default);\n --wcs-editable-field-border-color-default: var(--wcs-semantic-color-border-primary);\n --wcs-editable-field-border-color-hover: var(--wcs-semantic-color-border-control-focus);\n --wcs-editable-field-border-color-focus: var(--wcs-semantic-color-border-control-focus);\n --wcs-editable-field-border-style: var(--wcs-semantic-border-style-focus-control);\n\n --wcs-editable-field-padding-vertical-m: 0;\n --wcs-editable-field-padding-vertical-l: 0;\n --wcs-editable-field-padding-horizontal-m: var(--wcs-semantic-spacing-large);\n --wcs-editable-field-padding-horizontal-l: var(--wcs-semantic-spacing-large);\n\n --wcs-editable-field-icon-color-readonly: var(--wcs-semantic-color-text-tertiary);\n\n // Default\n --wcs-editable-field-host-padding: var(--wcs-editable-field-padding-vertical-m) var(--wcs-editable-field-padding-horizontal-m);\n --wcs-editable-field-host-height: var(--wcs-editable-field-height-m);\n --wcs-editable-field-font-size: var(--wcs-editable-field-font-size-m);\n\n display: block;\n\n .display-none {\n display: none !important;\n }\n\n .label {\n margin-bottom: var(--wcs-editable-field-label-gap);\n font-weight: var(--wcs-editable-field-label-font-weight);\n font-size: var(--wcs-editable-field-label-font-size);\n color: var(--wcs-editable-field-label-color);\n }\n\n .edit-container {\n display: flex;\n width: 100%;\n\n .visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n clip-path: inset(50%);\n white-space: nowrap;\n outline: 0;\n outline-offset: 0;\n }\n }\n\n button.display-container {\n // Reset native button styles\n width: 100%;\n border: none;\n font-family: inherit;\n text-align: start;\n\n box-sizing: border-box;\n wcs-mat-icon {\n display: none;\n }\n min-height: var(--wcs-editable-field-host-height);\n white-space: break-spaces;\n display: flex;\n justify-content: space-between;\n align-items: center;\n background-color: var(--wcs-editable-field-background-color);\n border-radius: var(--wcs-editable-field-border-radius);\n font-size: var(--wcs-editable-field-font-size);\n line-height: 1.5;\n font-weight: var(--wcs-editable-field-value-font-weight);\n color: var(--wcs-editable-field-value-color-default);\n padding: var(--wcs-editable-field-host-padding);\n outline: var(--wcs-editable-field-border-style) var(--wcs-editable-field-border-width) var(--wcs-editable-field-border-color-default);\n }\n\n .load-container {\n box-sizing: border-box;\n min-height: var(--wcs-editable-field-host-height);\n white-space: pre;\n display: flex;\n justify-content: space-between;\n background-color: var(--wcs-editable-field-background-color);\n border-radius: var(--wcs-editable-field-border-radius);\n font-size: var(--wcs-editable-field-font-size);\n line-height: 1.5;\n font-weight: var(--wcs-editable-field-value-font-weight);\n color: var(--wcs-editable-field-value-color-default);\n padding: var(--wcs-editable-field-host-padding);\n outline: var(--wcs-editable-field-border-style) var(--wcs-editable-field-border-width) var(--wcs-editable-field-border-color-default);\n align-items: center;\n }\n\n wcs-spinner {\n height: 24px;\n width: 24px;\n }\n\n .readonly-icon {\n fill: var(--wcs-editable-field-icon-color-readonly);\n }\n}\n\n:host([readonly]) {\n --wcs-editable-field-background-color: var(--wcs-semantic-color-background-control-readonly);\n\n .display-container {\n color: var(--wcs-editable-field-value-color-readonly);\n\n &:focus-visible {\n outline: var(--wcs-editable-field-border-style) var(--wcs-editable-field-border-width-focus) var(--wcs-editable-field-border-color-default);\n }\n }\n}\n\n:host(:not([readonly])) {\n .display-container:hover,\n .display-container:focus-visible {\n wcs-mat-icon {\n display: flex;\n align-items: center;\n }\n }\n\n .display-container:hover {\n color: var(--wcs-editable-field-value-color-hover);\n cursor: pointer;\n outline: var(--wcs-editable-field-border-style) var(--wcs-editable-field-border-width-hover) var(--wcs-editable-field-border-color-hover);\n }\n\n .display-container:focus-visible {\n outline: var(--wcs-editable-field-border-style) var(--wcs-editable-field-border-width-focus) var(--wcs-editable-field-border-color-focus);\n }\n}\n\n:host([size=l]) {\n --wcs-editable-field-host-padding: var(--wcs-editable-field-padding-vertical-l) var(--wcs-editable-field-padding-horizontal-l);\n --wcs-editable-field-host-height: var(--wcs-editable-field-height-l);\n --wcs-editable-field-font-size: var(--wcs-editable-field-font-size-l);\n}\n\n:host([size=m]) { // Default\n --wcs-editable-field-host-padding: var(--wcs-editable-field-padding-vertical-m) var(--wcs-editable-field-padding-horizontal-m);\n --wcs-editable-field-host-height: var(--wcs-editable-field-height-m);\n --wcs-editable-field-font-size: var(--wcs-editable-field-font-size-m);\n}\n","import {\n Component,\n ComponentInterface,\n EventEmitter,\n h,\n Prop,\n Event,\n State,\n Host,\n Element,\n Watch,\n Listen\n} from '@stencil/core';\n\nimport {\n EditableComponentUpdateEvent,\n EditableFieldType,\n FormatFn,\n isWcsEditableFieldSize,\n ValidateFn,\n WcsEditableFieldSize,\n WcsEditableFieldSizeValues\n} from './editable-field-interface';\nimport { clickInsideElement, isEnterKey, isEscapeKey, isMouseEvent } from '../../utils/helpers';\n\nenum EditableComponentState {\n DISPLAY,\n EDIT,\n LOAD\n}\n\n/**\n * Aria-label of the display button\n */\nconst EDIT_ARIA_LABEL = \"Éditer\";\n\n// We wait until the element is displayed on the page otherwise the focus does not work.\n// 20ms is a little more than a 16ms frame at 60fps.\nconst DELAY_BEFORE_FOCUS = 20;\n\n/**\n * The editable-field component can be used to simplify the user experience, avoiding the use of a redirection to a form\n * to edit the data of an entity. You can use it with these wrapped components : `wcs-input`, `wcs-textarea`, `wcs-select`. \n *\n * This component is not present in the SNCF design system specifications, so we tried to build it in the most\n * \"discoverable\" way possible (for users who interact with), but it's a first version.\n * \n * **How to use ❓** \n * This component is mostly used with a server that returns a response to the input sent through the `wcsChange` event.\n * It has 3 internal states :\n * - DISPLAY = the default state of the editable-field\n * - EDIT = the editable-field is editable, the user should input the data\n * - LOADING = the data is submitted and the editable-field is waiting for a **response**\n *\n * A **response** is needed to get the component out of the LOADING state. You can either :\n * - Set the `value` property to a different value to tell the component to refresh and go back into DISPLAY state\n * - Use the `successHandler` callback through the `wcsChange` event (see interface [EditableComponentUpdateEvent](https://gitlab.com/SNCF/wcs/-/blob/develop/src/components/editable-field/editable-field-interface.tsx))\n * - Use the `errorHandler` callback through the `wcsChange` event (see interface [EditableComponentUpdateEvent](https://gitlab.com/SNCF/wcs/-/blob/develop/src/components/editable-field/editable-field-interface.tsx))\n * \n * **Accessibility guidelines 💡** \n * \n * > - Aria attributes are put on the native component on the first rendering with the `label` and `errorMsg` you provided \n * > - Additional aria attributes put on `<wcs-editable-field>` won't inherit onto the native component : you must use the `setAriaAttribute` method.\n * \n * @cssprop --wcs-editable-field-label-color - Color of the label text\n * @cssprop --wcs-editable-field-label-font-weight - Font weight of the label text\n * @cssprop --wcs-editable-field-label-gap - Gap between the label and the field\n * @cssprop --wcs-editable-field-label-font-size - Font size of the label text\n *\n * @cssprop --wcs-editable-field-background-color - Background color of the editable field\n * @cssprop --wcs-editable-field-value-font-weight - Font weight of the field value text\n * @cssprop --wcs-editable-field-value-color-default - Default color of the field value text\n * @cssprop --wcs-editable-field-value-color-hover - Color of the field value text on hover\n * @cssprop --wcs-editable-field-value-color-readonly - Color of the field value text when readonly\n *\n * @cssprop --wcs-editable-field-height-m - Height of the editable field in medium size\n * @cssprop --wcs-editable-field-height-l - Height of the editable field in large size\n * @cssprop --wcs-editable-field-font-size-m - Font size of the field value text in medium size\n * @cssprop --wcs-editable-field-font-size-l - Font size of the field value text in large size\n *\n * @cssprop --wcs-editable-field-border-radius - Border radius of the editable field\n * @cssprop --wcs-editable-field-border-width - Border width of the editable field\n * @cssprop --wcs-editable-field-border-width-focus - Border width of the editable field when focused\n * @cssprop --wcs-editable-field-border-width-hover - Border width of the editable field on hover\n * @cssprop --wcs-editable-field-border-color-default - Default border color of the editable field\n * @cssprop --wcs-editable-field-border-color-hover - Border color of the editable field on hover\n * @cssprop --wcs-editable-field-border-color-focus - Border color of the editable field on focus\n * @cssprop --wcs-editable-field-border-style - Border style of the editable field\n *\n * @cssprop --wcs-editable-field-padding-vertical-m - Vertical padding of the editable field in medium size\n * @cssprop --wcs-editable-field-padding-vertical-l - Vertical padding of the editable field in large size\n * @cssprop --wcs-editable-field-padding-horizontal-m - Horizontal padding of the editable field in medium size\n * @cssprop --wcs-editable-field-padding-horizontal-l - Horizontal padding of the editable field in large size\n *\n * @cssprop --wcs-editable-field-icon-color-readonly - Color of the icon when the field is readonly\n */\n@Component({\n tag: 'wcs-editable-field',\n styleUrl: 'editable-field.scss',\n shadow: true\n})\nexport class EditableField implements ComponentInterface {\n @Element() private el!: HTMLWcsEditableFieldElement;\n private spiedElement: HTMLElement = null;\n private editModeBtn: HTMLButtonElement;\n private onInputKeydownCallback: (event: KeyboardEvent) => void;\n private onWcsInputOrChangeCallback: (event: CustomEvent) => void;\n\n @State() private currentState: EditableComponentState = EditableComponentState.DISPLAY;\n /**\n * Specifies which component is used for editing\n */\n @Prop() type: EditableFieldType = 'input';\n /**\n * Label of the field. \n * Will also be part of the edit button `aria-label`.\n */\n @Prop() label!: string;\n /**\n * Event called at each (valid) update of the field.\n */\n @Event() wcsChange!: EventEmitter<EditableComponentUpdateEvent>;\n /**\n * Specify whether the field is editable or not\n */\n @Prop({ reflect: true }) readonly: boolean = false;\n /**\n * Initial value of the field\n */\n @Prop({mutable: true}) value: any;\n /**\n * Function to customize the validation of the data during the update\n */\n @Prop() validateFn: ValidateFn<any>;\n /**\n * Function used to format the value\n */\n @Prop() formatFn: FormatFn<any>;\n /**\n * Error message displayed under the field if validation failed.\n */\n @Prop() errorMsg: string = null;\n /**\n * Specify the size (height) of the editable field.\n */\n @Prop({reflect: true}) size: WcsEditableFieldSize = 'm';\n\n @State() private isError: boolean = false;\n\n private currentValue: any = null;\n\n componentWillLoad(): Promise<void> | void {\n if(!isWcsEditableFieldSize(this.size)) {\n console.warn(`Invalid size value for wcs-editable-field : \"${this.size}\". Must be one of \"${WcsEditableFieldSizeValues.join(', ')}\"`);\n this.size = \"m\"; // Default fallback value\n }\n this.currentValue = this.value;\n }\n\n componentDidLoad() {\n const assignedElements = (this.el.shadowRoot.querySelector('slot') as HTMLSlotElement).assignedElements();\n switch (this.type) {\n case 'input':\n this.initWithInput(assignedElements);\n break;\n case 'textarea':\n this.initWithTextArea(assignedElements);\n break;\n case 'select':\n this.initWithSelect(assignedElements)\n break;\n }\n }\n\n\n disconnectedCallback(): void {\n this.cleanUpSpiedElementEventListeners();\n }\n\n private keyboardSubmitHandler(event: KeyboardEvent): void {\n const shouldValidateOnEnterKey = \n (this.type === 'textarea' || this.type === 'select')\n ? (isEnterKey(event) && event.ctrlKey)\n : isEnterKey(event);\n\n if (shouldValidateOnEnterKey) {\n this.sendCurrentValue();\n }\n if (isEscapeKey(event)) {\n this.discardChanges();\n }\n }\n\n private onWcsInputOrChange(event: CustomEvent) {\n event.stopImmediatePropagation();\n const value = this.type === 'select' ? event.detail.value : event.detail.target.value;\n this.currentValue = value;\n if (this.validateFn) {\n this.isError = !this.validateFn(this.currentValue);\n }\n }\n\n private cleanUpSpiedElementEventListeners(): void {\n this.spiedElement?.removeEventListener('keydown', this.onInputKeydownCallback);\n this.spiedElement?.removeEventListener('wcsInput', this.onWcsInputOrChangeCallback);\n this.spiedElement?.removeEventListener('wcsChange', this.onWcsInputOrChangeCallback);\n }\n\n private initWithInput(assignedElements: Element[]) {\n const element = assignedElements.filter(x => {\n return x.tagName === 'WCS-INPUT'\n })[0];\n if (!element) throw new Error('You must provide a slotted input element to handle edition');\n this.spiedElement = element as HTMLElement;\n this.addWcsInputEventHandler(this.spiedElement);\n this.addKeyDownHandler(this.spiedElement);\n }\n\n private initWithTextArea(assignedElements: Element[]) {\n const element = assignedElements.filter(x => {\n return x.tagName === 'WCS-TEXTAREA'\n })[0];\n if (!element) throw new Error('You must provide a slotted textarea element to handle edition');\n this.spiedElement = element as HTMLElement;\n this.addWcsInputEventHandler(this.spiedElement);\n this.addKeyDownHandler(this.spiedElement);\n }\n\n private initWithSelect(assignedElements: Element[]) {\n const element = assignedElements.filter(x => {\n return x.tagName === 'WCS-SELECT'\n })[0];\n if (!element) throw new Error('You must provide a slotted select element to handle edition');\n this.spiedElement = element as HTMLElement;\n this.addWcsChangeEventHandler(this.spiedElement);\n this.addKeyDownHandler(this.spiedElement);\n }\n\n /**\n * This method subscribes the component to the change events produced by the other WCS components\n * (provided by the user in slot)\n * @param elt the element to subscribe to\n * @private\n */\n private addWcsChangeEventHandler(elt: HTMLElement) {\n this.onWcsInputOrChangeCallback = this.onWcsInputOrChange.bind(this);\n elt.addEventListener('wcsChange', this.onWcsInputOrChangeCallback);\n }\n\n /**\n * This method subscribes the component to the input events produced by the other WCS components\n * @param elt the element to subscribe to\n * @private\n */\n private addWcsInputEventHandler(elt: HTMLElement) {\n this.onWcsInputOrChangeCallback = this.onWcsInputOrChange.bind(this);\n elt.addEventListener('wcsInput', this.onWcsInputOrChangeCallback);\n }\n\n /**\n * This method subscribes the component to the keydown events produced by the other WCS components \n * @param elt the element to subscribe to\n * @private\n */\n private addKeyDownHandler(elt: HTMLElement) {\n this.onInputKeydownCallback = this.keyboardSubmitHandler.bind(this);\n elt.addEventListener('keydown', this.onInputKeydownCallback);\n }\n\n private focusEditModeBtn() {\n setTimeout(() => {\n this.editModeBtn?.focus();\n }, DELAY_BEFORE_FOCUS);\n }\n\n private sendCurrentValue() {\n if (this.currentState === EditableComponentState.EDIT) {\n if (this.value === this.currentValue) {\n this.currentState = EditableComponentState.DISPLAY;\n this.focusEditModeBtn();\n } else {\n this.isError = this.validateFn ? !this.validateFn(this.currentValue) : false;\n if (!this.isError) {\n this.currentState = EditableComponentState.LOAD;\n this.wcsChange.emit({\n newValue: this.currentValue,\n successHandler: () => this.forceDisplayStateAndValidate(),\n errorHandler: () => this.errorHandler()\n });\n }\n }\n }\n }\n\n private discardChanges() {\n this.currentValue = this.value;\n this.currentState = EditableComponentState.DISPLAY;\n this.isError = false;\n this.focusEditModeBtn();\n }\n\n forceDisplayStateAndValidate() {\n if (this.currentState === EditableComponentState.LOAD) {\n this.value = this.currentValue;\n this.currentState = EditableComponentState.DISPLAY;\n this.focusEditModeBtn();\n } else {\n throw new Error('You cannot set display state from ' + EditableComponentState[this.currentState] + ' state');\n }\n }\n\n // Process only mouse clicks, to avoid interfering with keyboard triggered button clicks. \n // In some browsers, pressing \"Enter\" or \"Space\" while focused on a button generates a click event\n // with `event.detail` set to 0. It's a keyboard triggered click, not a real mouse click. \n @Listen('click', {target: 'window'})\n onWindowClickEvent(event: MouseEvent | KeyboardEvent) {\n // Ensure only true mouse clicks are processed\n if (isMouseEvent(event) && event.detail !== 0 && !clickInsideElement(event, this.el)) {\n if (this.currentState === EditableComponentState.EDIT) {\n if (this.isError) {\n this.discardChanges();\n } else {\n this.sendCurrentValue();\n }\n }\n }\n }\n\n /**\n * discard changes and force component state to DISPLAY\n * <br/>\n * This method must be call when component is in LOAD state\n */\n errorHandler() {\n this.discardChanges();\n }\n\n @Watch('value')\n onValueChange(): void {\n this.currentState = EditableComponentState.DISPLAY;\n }\n\n private onDisplayContainerClick(): void {\n if (this.currentState === EditableComponentState.DISPLAY && this.readonly === false) {\n this.currentState = EditableComponentState.EDIT;\n this.spiedElement['value'] = this.currentValue;\n if (this.validateFn) {\n this.isError = !this.validateFn(this.currentValue);\n }\n setTimeout(() => {\n if (this.type === 'input') {\n (this.spiedElement as HTMLWcsInputElement).focus();\n } else if (this.type === 'textarea') {\n (this.spiedElement as HTMLWcsTextareaElement).fitContent();\n (this.spiedElement as HTMLWcsTextareaElement).focus();\n }\n }, DELAY_BEFORE_FOCUS)\n }\n }\n\n private getReadonlySvgIcon() {\n return <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"26\" height=\"24\" viewBox=\"0 0 27 25\"\n class=\"readonly-icon\">\n <path d=\"M26.79,25.05H1.21a.73.73,0,0,0,0,1.45H26.79a.73.73,0,0,0,0-1.45Z\"\n transform=\"translate(-0.5 -1.5)\"/>\n <path\n d=\"M19.8,8.87h-.61V6.73a5.23,5.23,0,0,0-10.46,0V8.87H8.2a1.63,1.63,0,0,0-1.63,1.62V21.32A1.62,1.62,0,0,0,8.2,22.94H19.8a1.62,1.62,0,0,0,1.63-1.62V10.49A1.63,1.63,0,0,0,19.8,8.87ZM10.93,6.73a3,3,0,1,1,6.06,0V8.87H10.93Zm3,14.15a5,5,0,1,1,5-5A5,5,0,0,1,14,20.88Z\"\n transform=\"translate(-0.5 -1.5)\"/>\n <path\n d=\"M14,12.62a3.29,3.29,0,1,0,3.29,3.29A3.29,3.29,0,0,0,14,12.62Zm0,4.75a1.47,1.47,0,1,1,1.47-1.46A1.46,1.46,0,0,1,14,17.37Z\"\n transform=\"translate(-0.5 -1.5)\"/>\n </svg>;\n }\n\n private formatValues() {\n let formattedValue = this.value;\n let formattedCurrentValue = this.currentValue;\n if (this.formatFn) {\n formattedValue = this.formatFn(this.value);\n formattedCurrentValue = this.formatFn(this.currentValue);\n }\n if (Array.isArray(this.value)) {\n formattedValue = this.value.join(', ');\n }\n if (Array.isArray(this.currentValue)) {\n formattedCurrentValue = this.currentValue.join(', ');\n }\n return {\n formattedValue: (formattedValue ? (<span>{formattedValue}</span>) : (<span></span>)),\n formattedValueText: formattedValue,\n formattedCurrentValue: (formattedCurrentValue ? (<span>{formattedCurrentValue}</span>) : (<span></span>))\n };\n }\n \n render(): any {\n const {formattedValue, formattedValueText, formattedCurrentValue} = this.formatValues();\n return (\n <Host>\n <div class=\"label\">{this.label}</div>\n <button\n type=\"button\"\n class={'display-container ' + (this.currentState !== EditableComponentState.DISPLAY ? 'display-none' : '')}\n onClick={() => this.onDisplayContainerClick()}\n ref={(el) => this.editModeBtn = el}\n aria-label={`${EDIT_ARIA_LABEL} ${this.label} ${formattedValueText}`}\n >\n {formattedValue}\n <wcs-mat-icon icon=\"edit\" size=\"s\"></wcs-mat-icon>\n {this.readonly ? this.getReadonlySvgIcon() : null}\n </button>\n <div\n class={'load-container ' + (this.currentState !== EditableComponentState.LOAD ? 'display-none' : '')}>\n {formattedCurrentValue}\n <wcs-spinner></wcs-spinner>\n </div>\n <wcs-form-field is-error={this.isError}\n class={'edit-container ' + (this.currentState !== EditableComponentState.EDIT ? 'display-none' : '')}\n >\n <wcs-label class=\"visually-hidden\">{this.label}</wcs-label>\n <slot/>\n {\n this.isError && this.errorMsg\n ? <wcs-error>{this.errorMsg}</wcs-error>\n : null\n }\n </wcs-form-field>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["WcsEditableFieldSizeValues","isWcsEditableFieldSize","size","includes","editableFieldCss","WcsEditableFieldStyle0","EditableComponentState","EDIT_ARIA_LABEL","DELAY_BEFORE_FOCUS","EditableField","proxyCustomElement","H","this","spiedElement","currentValue","DISPLAY","componentWillLoad","console","warn","join","value","componentDidLoad","assignedElements","el","shadowRoot","querySelector","type","initWithInput","initWithTextArea","initWithSelect","disconnectedCallback","cleanUpSpiedElementEventListeners","keyboardSubmitHandler","event","shouldValidateOnEnterKey","isEnterKey","ctrlKey","sendCurrentValue","isEscapeKey","discardChanges","onWcsInputOrChange","stopImmediatePropagation","detail","target","validateFn","isError","_a","removeEventListener","onInputKeydownCallback","_b","onWcsInputOrChangeCallback","_c","element","filter","x","tagName","Error","addWcsInputEventHandler","addKeyDownHandler","addWcsChangeEventHandler","elt","bind","addEventListener","focusEditModeBtn","setTimeout","editModeBtn","focus","currentState","EDIT","LOAD","wcsChange","emit","newValue","successHandler","forceDisplayStateAndValidate","errorHandler","onWindowClickEvent","isMouseEvent","clickInsideElement","onValueChange","onDisplayContainerClick","readonly","fitContent","getReadonlySvgIcon","h","xmlns","width","height","viewBox","class","d","transform","getSelectElement","computeSelectDisplayTextFromSlottedSelectOptions","selectElement","serverMode","options","Array","from","querySelectorAll","compareWith","optionValue","selectedValue","isArray","map","find","option","innerText","_d","getDisplayValue","formatFn","formatValues","formattedValue","formattedCurrentValue","formattedValueText","render","Host","key","label","onClick","ref","icon","errorMsg"],"sources":["src/components/editable-field/editable-field-interface.tsx","src/components/editable-field/editable-field.scss?tag=wcs-editable-field&encapsulation=shadow","src/components/editable-field/editable-field.tsx"],"sourcesContent":["import { WcsSize } from '../../shared-types';\n\nexport type ValidateFn<T> = (value: T) => boolean;\nexport type FormatFn<T> = (value: T) => string;\n\nexport interface EditableComponentUpdateEvent {\n /**\n * The new value sent by the component inside the `wcs-editable-field`\n */\n newValue: any; // We use any for now, but when components typings will support template, change for parameterized type\n /**\n * Used to get from LOAD state to DISPLAY state. \n * Only use to commit the value, when the value is not systematically updated at every event firing\n */\n successHandler: () => void;\n /**\n * Used to get from LOAD state to DISPLAY state. \n * Only use to discard the value, when the value should not be updated \n */\n errorHandler: () => void;\n}\n\nexport const WcsEditableFieldSizeValues = ['m', 'l'] as const; // as const keyword is used to infer and preserve the exact literal values of an array or object.\n\nexport type WcsEditableFieldSize = Extract<WcsSize, typeof WcsEditableFieldSizeValues[number]>;\n\nexport function isWcsEditableFieldSize(size: string): size is WcsEditableFieldSize {\n // @ts-ignore : ignore size type, as it is checked with WcsEditableFieldSizeValues\n return WcsEditableFieldSizeValues.includes(size);\n}\n\nexport type EditableFieldType = 'input' | 'textarea' | 'select';\n",":host {\n --wcs-editable-field-label-color: var(--wcs-semantic-color-text-primary);\n --wcs-editable-field-label-font-weight: var(--wcs-semantic-font-weight-book);\n --wcs-editable-field-label-gap: var(--wcs-semantic-spacing-base);\n --wcs-editable-field-label-font-size: var(--wcs-semantic-font-size-m);\n\n --wcs-editable-field-background-color: var(--wcs-semantic-color-background-control-default);\n --wcs-editable-field-value-font-weight: var(--wcs-semantic-font-weight-medium);\n --wcs-editable-field-value-color-default: var(--wcs-semantic-color-text-primary);\n --wcs-editable-field-value-color-hover: var(--wcs-semantic-color-text-primary);\n --wcs-editable-field-value-color-readonly: var(--wcs-semantic-color-text-tertiary);\n --wcs-editable-field-height-m: var(--wcs-semantic-size-m);\n --wcs-editable-field-height-l: var(--wcs-semantic-size-l);\n --wcs-editable-field-font-size-m: var(--wcs-semantic-font-size-m);\n --wcs-editable-field-font-size-l: var(--wcs-semantic-font-size-l);\n\n --wcs-editable-field-border-radius: var(--wcs-semantic-border-radius-base);\n --wcs-editable-field-border-width: var(--wcs-semantic-border-width-default);\n --wcs-editable-field-border-width-focus: var(--wcs-semantic-border-width-large);\n --wcs-editable-field-border-width-hover: var(--wcs-semantic-border-width-default);\n --wcs-editable-field-border-color-default: var(--wcs-semantic-color-border-primary);\n --wcs-editable-field-border-color-hover: var(--wcs-semantic-color-border-control-focus);\n --wcs-editable-field-border-color-focus: var(--wcs-semantic-color-border-control-focus);\n --wcs-editable-field-border-style: var(--wcs-semantic-border-style-focus-control);\n\n --wcs-editable-field-padding-vertical-m: 0;\n --wcs-editable-field-padding-vertical-l: 0;\n --wcs-editable-field-padding-horizontal-m: var(--wcs-semantic-spacing-large);\n --wcs-editable-field-padding-horizontal-l: var(--wcs-semantic-spacing-large);\n\n --wcs-editable-field-icon-color-readonly: var(--wcs-semantic-color-text-tertiary);\n\n // Default\n --wcs-editable-field-host-padding: var(--wcs-editable-field-padding-vertical-m) var(--wcs-editable-field-padding-horizontal-m);\n --wcs-editable-field-host-height: var(--wcs-editable-field-height-m);\n --wcs-editable-field-font-size: var(--wcs-editable-field-font-size-m);\n\n display: block;\n\n .display-none {\n display: none !important;\n }\n\n .label {\n margin-bottom: var(--wcs-editable-field-label-gap);\n font-weight: var(--wcs-editable-field-label-font-weight);\n font-size: var(--wcs-editable-field-label-font-size);\n color: var(--wcs-editable-field-label-color);\n }\n\n .edit-container {\n display: flex;\n width: 100%;\n\n .visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n clip-path: inset(50%);\n white-space: nowrap;\n outline: 0;\n outline-offset: 0;\n }\n }\n\n button.display-container {\n // Reset native button styles\n width: 100%;\n border: none;\n font-family: inherit;\n text-align: start;\n\n box-sizing: border-box;\n wcs-mat-icon {\n display: none;\n }\n min-height: var(--wcs-editable-field-host-height);\n white-space: break-spaces;\n display: flex;\n justify-content: space-between;\n align-items: center;\n background-color: var(--wcs-editable-field-background-color);\n border-radius: var(--wcs-editable-field-border-radius);\n font-size: var(--wcs-editable-field-font-size);\n line-height: 1.5;\n font-weight: var(--wcs-editable-field-value-font-weight);\n color: var(--wcs-editable-field-value-color-default);\n padding: var(--wcs-editable-field-host-padding);\n outline: var(--wcs-editable-field-border-style) var(--wcs-editable-field-border-width) var(--wcs-editable-field-border-color-default);\n }\n\n .load-container {\n box-sizing: border-box;\n min-height: var(--wcs-editable-field-host-height);\n white-space: pre;\n display: flex;\n justify-content: space-between;\n background-color: var(--wcs-editable-field-background-color);\n border-radius: var(--wcs-editable-field-border-radius);\n font-size: var(--wcs-editable-field-font-size);\n line-height: 1.5;\n font-weight: var(--wcs-editable-field-value-font-weight);\n color: var(--wcs-editable-field-value-color-default);\n padding: var(--wcs-editable-field-host-padding);\n outline: var(--wcs-editable-field-border-style) var(--wcs-editable-field-border-width) var(--wcs-editable-field-border-color-default);\n align-items: center;\n }\n\n wcs-spinner {\n height: 24px;\n width: 24px;\n }\n\n .readonly-icon {\n fill: var(--wcs-editable-field-icon-color-readonly);\n }\n}\n\n:host([readonly]) {\n --wcs-editable-field-background-color: var(--wcs-semantic-color-background-control-readonly);\n\n .display-container {\n color: var(--wcs-editable-field-value-color-readonly);\n\n &:focus-visible {\n outline: var(--wcs-editable-field-border-style) var(--wcs-editable-field-border-width-focus) var(--wcs-editable-field-border-color-default);\n }\n }\n}\n\n:host(:not([readonly])) {\n .display-container:hover,\n .display-container:focus-visible {\n wcs-mat-icon {\n display: flex;\n align-items: center;\n }\n }\n\n .display-container:hover {\n color: var(--wcs-editable-field-value-color-hover);\n cursor: pointer;\n outline: var(--wcs-editable-field-border-style) var(--wcs-editable-field-border-width-hover) var(--wcs-editable-field-border-color-hover);\n }\n\n .display-container:focus-visible {\n outline: var(--wcs-editable-field-border-style) var(--wcs-editable-field-border-width-focus) var(--wcs-editable-field-border-color-focus);\n }\n}\n\n:host([size=l]) {\n --wcs-editable-field-host-padding: var(--wcs-editable-field-padding-vertical-l) var(--wcs-editable-field-padding-horizontal-l);\n --wcs-editable-field-host-height: var(--wcs-editable-field-height-l);\n --wcs-editable-field-font-size: var(--wcs-editable-field-font-size-l);\n}\n\n:host([size=m]) { // Default\n --wcs-editable-field-host-padding: var(--wcs-editable-field-padding-vertical-m) var(--wcs-editable-field-padding-horizontal-m);\n --wcs-editable-field-host-height: var(--wcs-editable-field-height-m);\n --wcs-editable-field-font-size: var(--wcs-editable-field-font-size-m);\n}\n","import {\n Component,\n ComponentInterface,\n EventEmitter,\n h,\n Prop,\n Event,\n State,\n Host,\n Element,\n Watch,\n Listen\n} from '@stencil/core';\n\nimport {\n EditableComponentUpdateEvent,\n EditableFieldType,\n FormatFn,\n isWcsEditableFieldSize,\n ValidateFn,\n WcsEditableFieldSize,\n WcsEditableFieldSizeValues\n} from './editable-field-interface';\nimport { clickInsideElement, isEnterKey, isEscapeKey, isMouseEvent } from '../../utils/helpers';\n\nenum EditableComponentState {\n DISPLAY,\n EDIT,\n LOAD\n}\n\n/**\n * Aria-label of the display button\n */\nconst EDIT_ARIA_LABEL = \"Éditer\";\n\n// We wait until the element is displayed on the page otherwise the focus does not work.\n// 20ms is a little more than a 16ms frame at 60fps.\nconst DELAY_BEFORE_FOCUS = 20;\n\n/**\n * The editable-field component can be used to simplify the user experience, avoiding the use of a redirection to a form\n * to edit the data of an entity. You can use it with these wrapped components : `wcs-input`, `wcs-textarea`, `wcs-select`. \n *\n * This component is not present in the SNCF design system specifications, so we tried to build it in the most\n * \"discoverable\" way possible (for users who interact with), but it's a first version.\n * \n * **How to use ❓** \n * This component is mostly used with a server that returns a response to the input sent through the `wcsChange` event.\n * It has 3 internal states :\n * - DISPLAY = the default state of the editable-field\n * - EDIT = the editable-field is editable, the user should input the data\n * - LOADING = the data is submitted and the editable-field is waiting for a **response**\n *\n * A **response** is needed to get the component out of the LOADING state. You can either :\n * - Set the `value` property to a different value to tell the component to refresh and go back into DISPLAY state\n * - Use the `successHandler` callback through the `wcsChange` event (see interface [EditableComponentUpdateEvent](https://gitlab.com/SNCF/wcs/-/blob/develop/src/components/editable-field/editable-field-interface.tsx))\n * - Use the `errorHandler` callback through the `wcsChange` event (see interface [EditableComponentUpdateEvent](https://gitlab.com/SNCF/wcs/-/blob/develop/src/components/editable-field/editable-field-interface.tsx))\n * \n * **Accessibility guidelines 💡** \n * \n * > - Aria attributes are put on the native component on the first rendering with the `label` and `errorMsg` you provided \n * > - Additional aria attributes put on `<wcs-editable-field>` won't inherit onto the native component : you must use the `setAriaAttribute` method.\n * \n * @cssprop --wcs-editable-field-label-color - Color of the label text\n * @cssprop --wcs-editable-field-label-font-weight - Font weight of the label text\n * @cssprop --wcs-editable-field-label-gap - Gap between the label and the field\n * @cssprop --wcs-editable-field-label-font-size - Font size of the label text\n *\n * @cssprop --wcs-editable-field-background-color - Background color of the editable field\n * @cssprop --wcs-editable-field-value-font-weight - Font weight of the field value text\n * @cssprop --wcs-editable-field-value-color-default - Default color of the field value text\n * @cssprop --wcs-editable-field-value-color-hover - Color of the field value text on hover\n * @cssprop --wcs-editable-field-value-color-readonly - Color of the field value text when readonly\n *\n * @cssprop --wcs-editable-field-height-m - Height of the editable field in medium size\n * @cssprop --wcs-editable-field-height-l - Height of the editable field in large size\n * @cssprop --wcs-editable-field-font-size-m - Font size of the field value text in medium size\n * @cssprop --wcs-editable-field-font-size-l - Font size of the field value text in large size\n *\n * @cssprop --wcs-editable-field-border-radius - Border radius of the editable field\n * @cssprop --wcs-editable-field-border-width - Border width of the editable field\n * @cssprop --wcs-editable-field-border-width-focus - Border width of the editable field when focused\n * @cssprop --wcs-editable-field-border-width-hover - Border width of the editable field on hover\n * @cssprop --wcs-editable-field-border-color-default - Default border color of the editable field\n * @cssprop --wcs-editable-field-border-color-hover - Border color of the editable field on hover\n * @cssprop --wcs-editable-field-border-color-focus - Border color of the editable field on focus\n * @cssprop --wcs-editable-field-border-style - Border style of the editable field\n *\n * @cssprop --wcs-editable-field-padding-vertical-m - Vertical padding of the editable field in medium size\n * @cssprop --wcs-editable-field-padding-vertical-l - Vertical padding of the editable field in large size\n * @cssprop --wcs-editable-field-padding-horizontal-m - Horizontal padding of the editable field in medium size\n * @cssprop --wcs-editable-field-padding-horizontal-l - Horizontal padding of the editable field in large size\n *\n * @cssprop --wcs-editable-field-icon-color-readonly - Color of the icon when the field is readonly\n */\n@Component({\n tag: 'wcs-editable-field',\n styleUrl: 'editable-field.scss',\n shadow: true\n})\nexport class EditableField implements ComponentInterface {\n @Element() private el!: HTMLWcsEditableFieldElement;\n private spiedElement: HTMLElement = null;\n private editModeBtn: HTMLButtonElement;\n private onInputKeydownCallback: (event: KeyboardEvent) => void;\n private onWcsInputOrChangeCallback: (event: CustomEvent) => void;\n\n @State() private currentState: EditableComponentState = EditableComponentState.DISPLAY;\n /**\n * Specifies which component is used for editing\n */\n @Prop() type: EditableFieldType = 'input';\n /**\n * Label of the field. \n * Will also be part of the edit button `aria-label`.\n */\n @Prop() label!: string;\n /**\n * Event called at each (valid) update of the field.\n */\n @Event() wcsChange!: EventEmitter<EditableComponentUpdateEvent>;\n /**\n * Specify whether the field is editable or not\n */\n @Prop({ reflect: true }) readonly: boolean = false;\n /**\n * Initial value of the field\n */\n @Prop({mutable: true}) value: any;\n /**\n * Function to customize the validation of the data during the update\n */\n @Prop() validateFn: ValidateFn<any>;\n /**\n * Function used to format the value\n */\n @Prop() formatFn: FormatFn<any>;\n /**\n * Error message displayed under the field if validation failed.\n */\n @Prop() errorMsg: string = null;\n /**\n * Specify the size (height) of the editable field.\n */\n @Prop({reflect: true}) size: WcsEditableFieldSize = 'm';\n\n @State() private isError: boolean = false;\n\n private currentValue: any = null;\n\n componentWillLoad(): Promise<void> | void {\n if(!isWcsEditableFieldSize(this.size)) {\n console.warn(`Invalid size value for wcs-editable-field : \"${this.size}\". Must be one of \"${WcsEditableFieldSizeValues.join(', ')}\"`);\n this.size = \"m\"; // Default fallback value\n }\n this.currentValue = this.value;\n }\n\n componentDidLoad() {\n const assignedElements = (this.el.shadowRoot.querySelector('slot') as HTMLSlotElement).assignedElements();\n switch (this.type) {\n case 'input':\n this.initWithInput(assignedElements);\n break;\n case 'textarea':\n this.initWithTextArea(assignedElements);\n break;\n case 'select':\n this.initWithSelect(assignedElements);\n break;\n }\n }\n\n\n disconnectedCallback(): void {\n this.cleanUpSpiedElementEventListeners();\n }\n\n private keyboardSubmitHandler(event: KeyboardEvent): void {\n const shouldValidateOnEnterKey = \n (this.type === 'textarea' || this.type === 'select')\n ? (isEnterKey(event) && event.ctrlKey)\n : isEnterKey(event);\n\n if (shouldValidateOnEnterKey) {\n this.sendCurrentValue();\n }\n if (isEscapeKey(event)) {\n this.discardChanges();\n }\n }\n\n private onWcsInputOrChange(event: CustomEvent) {\n event.stopImmediatePropagation();\n const value = this.type === 'select' ? event.detail.value : event.detail.target.value;\n this.currentValue = value;\n if (this.validateFn) {\n this.isError = !this.validateFn(this.currentValue);\n }\n }\n\n private cleanUpSpiedElementEventListeners(): void {\n this.spiedElement?.removeEventListener('keydown', this.onInputKeydownCallback);\n this.spiedElement?.removeEventListener('wcsInput', this.onWcsInputOrChangeCallback);\n this.spiedElement?.removeEventListener('wcsChange', this.onWcsInputOrChangeCallback);\n }\n\n private initWithInput(assignedElements: Element[]) {\n const element = assignedElements.filter(x => {\n return x.tagName === 'WCS-INPUT'\n })[0];\n if (!element) throw new Error('You must provide a slotted input element to handle edition');\n this.spiedElement = element as HTMLElement;\n this.addWcsInputEventHandler(this.spiedElement);\n this.addKeyDownHandler(this.spiedElement);\n }\n\n private initWithTextArea(assignedElements: Element[]) {\n const element = assignedElements.filter(x => {\n return x.tagName === 'WCS-TEXTAREA'\n })[0];\n if (!element) throw new Error('You must provide a slotted textarea element to handle edition');\n this.spiedElement = element as HTMLElement;\n this.addWcsInputEventHandler(this.spiedElement);\n this.addKeyDownHandler(this.spiedElement);\n }\n\n private initWithSelect(assignedElements: Element[]) {\n const element = assignedElements.filter(x => {\n return x.tagName === 'WCS-SELECT'\n })[0];\n if (!element) throw new Error('You must provide a slotted select element to handle edition');\n this.spiedElement = element as HTMLElement;\n this.addWcsChangeEventHandler(this.spiedElement);\n this.addKeyDownHandler(this.spiedElement);\n }\n\n /**\n * This method subscribes the component to the change events produced by the other WCS components\n * (provided by the user in slot)\n * @param elt the element to subscribe to\n * @private\n */\n private addWcsChangeEventHandler(elt: HTMLElement) {\n this.onWcsInputOrChangeCallback = this.onWcsInputOrChange.bind(this);\n elt.addEventListener('wcsChange', this.onWcsInputOrChangeCallback);\n }\n\n /**\n * This method subscribes the component to the input events produced by the other WCS components\n * @param elt the element to subscribe to\n * @private\n */\n private addWcsInputEventHandler(elt: HTMLElement) {\n this.onWcsInputOrChangeCallback = this.onWcsInputOrChange.bind(this);\n elt.addEventListener('wcsInput', this.onWcsInputOrChangeCallback);\n }\n\n /**\n * This method subscribes the component to the keydown events produced by the other WCS components \n * @param elt the element to subscribe to\n * @private\n */\n private addKeyDownHandler(elt: HTMLElement) {\n this.onInputKeydownCallback = this.keyboardSubmitHandler.bind(this);\n elt.addEventListener('keydown', this.onInputKeydownCallback);\n }\n\n private focusEditModeBtn() {\n setTimeout(() => {\n this.editModeBtn?.focus();\n }, DELAY_BEFORE_FOCUS);\n }\n\n private sendCurrentValue() {\n if (this.currentState === EditableComponentState.EDIT) {\n if (this.value === this.currentValue) {\n this.currentState = EditableComponentState.DISPLAY;\n this.focusEditModeBtn();\n } else {\n this.isError = this.validateFn ? !this.validateFn(this.currentValue) : false;\n if (!this.isError) {\n this.currentState = EditableComponentState.LOAD;\n this.wcsChange.emit({\n newValue: this.currentValue,\n successHandler: () => this.forceDisplayStateAndValidate(),\n errorHandler: () => this.errorHandler()\n });\n }\n }\n }\n }\n\n private discardChanges() {\n this.currentValue = this.value;\n this.currentState = EditableComponentState.DISPLAY;\n this.isError = false;\n this.focusEditModeBtn();\n }\n\n forceDisplayStateAndValidate() {\n if (this.currentState === EditableComponentState.LOAD) {\n this.value = this.currentValue;\n this.currentState = EditableComponentState.DISPLAY;\n this.focusEditModeBtn();\n } else {\n throw new Error('You cannot set display state from ' + EditableComponentState[this.currentState] + ' state');\n }\n }\n\n // Process only mouse clicks, to avoid interfering with keyboard triggered button clicks. \n // In some browsers, pressing \"Enter\" or \"Space\" while focused on a button generates a click event\n // with `event.detail` set to 0. It's a keyboard triggered click, not a real mouse click. \n @Listen('click', {target: 'window'})\n onWindowClickEvent(event: MouseEvent | KeyboardEvent) {\n // Ensure only true mouse clicks are processed\n if (isMouseEvent(event) && event.detail !== 0 && !clickInsideElement(event, this.el)) {\n if (this.currentState === EditableComponentState.EDIT) {\n if (this.isError) {\n this.discardChanges();\n } else {\n this.sendCurrentValue();\n }\n }\n }\n }\n\n /**\n * discard changes and force component state to DISPLAY\n * <br/>\n * This method must be call when component is in LOAD state\n */\n errorHandler() {\n this.discardChanges();\n }\n\n @Watch('value')\n onValueChange(): void {\n this.currentState = EditableComponentState.DISPLAY;\n this.currentValue = this.value;\n }\n\n private onDisplayContainerClick(): void {\n if (this.currentState === EditableComponentState.DISPLAY && this.readonly === false) {\n this.currentState = EditableComponentState.EDIT;\n this.spiedElement['value'] = this.currentValue;\n if (this.validateFn) {\n this.isError = !this.validateFn(this.currentValue);\n }\n setTimeout(() => {\n if (this.type === 'input') {\n (this.spiedElement as HTMLWcsInputElement).focus();\n } else if (this.type === 'textarea') {\n (this.spiedElement as HTMLWcsTextareaElement).fitContent();\n (this.spiedElement as HTMLWcsTextareaElement).focus();\n }\n }, DELAY_BEFORE_FOCUS)\n }\n }\n\n private getReadonlySvgIcon() {\n return <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"26\" height=\"24\" viewBox=\"0 0 27 25\"\n class=\"readonly-icon\">\n <path d=\"M26.79,25.05H1.21a.73.73,0,0,0,0,1.45H26.79a.73.73,0,0,0,0-1.45Z\"\n transform=\"translate(-0.5 -1.5)\"/>\n <path\n d=\"M19.8,8.87h-.61V6.73a5.23,5.23,0,0,0-10.46,0V8.87H8.2a1.63,1.63,0,0,0-1.63,1.62V21.32A1.62,1.62,0,0,0,8.2,22.94H19.8a1.62,1.62,0,0,0,1.63-1.62V10.49A1.63,1.63,0,0,0,19.8,8.87ZM10.93,6.73a3,3,0,1,1,6.06,0V8.87H10.93Zm3,14.15a5,5,0,1,1,5-5A5,5,0,0,1,14,20.88Z\"\n transform=\"translate(-0.5 -1.5)\"/>\n <path\n d=\"M14,12.62a3.29,3.29,0,1,0,3.29,3.29A3.29,3.29,0,0,0,14,12.62Zm0,4.75a1.47,1.47,0,1,1,1.47-1.46A1.46,1.46,0,0,1,14,17.37Z\"\n transform=\"translate(-0.5 -1.5)\"/>\n </svg>;\n }\n\n private getSelectElement(): HTMLWcsSelectElement {\n return (this.spiedElement ?? this.el.querySelector('wcs-select')) as HTMLWcsSelectElement;\n }\n \n private computeSelectDisplayTextFromSlottedSelectOptions(value: any): string {\n const selectElement = this.getSelectElement();\n \n // in server mode, selected options could be not found in the DOM so we could not find innerText of option\n // so we fall back on the value \n if (selectElement.serverMode) {\n return value;\n }\n \n const options = Array.from(selectElement?.querySelectorAll('wcs-select-option') ?? []);\n const compareWith = selectElement?.compareWith ?? ((optionValue: any, selectedValue: any) => optionValue === selectedValue);\n\n if (Array.isArray(value)) {\n return value\n .map(selectedValue => options.find(option => compareWith(option.value, selectedValue))?.innerText ?? selectedValue)\n .join(', ');\n }\n\n return options.find(option => compareWith(option.value, value))?.innerText ?? value;\n }\n \n private getDisplayValue(value: any) {\n if (this.formatFn) {\n return this.formatFn(value);\n }\n\n if (this.type === 'select') {\n return this.computeSelectDisplayTextFromSlottedSelectOptions(value);\n }\n\n if (Array.isArray(value)) {\n return value.join(', ');\n }\n\n return value;\n }\n\n private formatValues() {\n const formattedValue = this.getDisplayValue(this.value);\n const formattedCurrentValue = this.getDisplayValue(this.currentValue);\n\n return {\n formattedValue: (formattedValue ? (<span>{formattedValue}</span>) : (<span></span>)),\n formattedValueText: formattedValue,\n formattedCurrentValue: (formattedCurrentValue ? (<span>{formattedCurrentValue}</span>) : (<span></span>))\n };\n }\n \n render(): any {\n const {formattedValue, formattedValueText, formattedCurrentValue} = this.formatValues();\n return (\n <Host>\n <div class=\"label\">{this.label}</div>\n <button\n type=\"button\"\n class={'display-container ' + (this.currentState !== EditableComponentState.DISPLAY ? 'display-none' : '')}\n onClick={() => this.onDisplayContainerClick()}\n ref={(el) => this.editModeBtn = el}\n aria-label={`${EDIT_ARIA_LABEL} ${this.label} ${formattedValueText}`}\n >\n {formattedValue}\n <wcs-mat-icon icon=\"edit\" size=\"s\"></wcs-mat-icon>\n {this.readonly ? this.getReadonlySvgIcon() : null}\n </button>\n <div\n class={'load-container ' + (this.currentState !== EditableComponentState.LOAD ? 'display-none' : '')}>\n {formattedCurrentValue}\n <wcs-spinner></wcs-spinner>\n </div>\n <wcs-form-field is-error={this.isError}\n class={'edit-container ' + (this.currentState !== EditableComponentState.EDIT ? 'display-none' : '')}\n >\n <wcs-label class=\"visually-hidden\">{this.label}</wcs-label>\n <slot/>\n {\n this.isError && this.errorMsg\n ? <wcs-error>{this.errorMsg}</wcs-error>\n : null\n }\n </wcs-form-field>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
package/bundle/wcs-error.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{L as o,d as s}from"./p-
|
|
1
|
+
import{L as o,d as s}from"./p-791fce94.js";const t=o;const c=s;export{t as WcsError,c as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=wcs-error.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as e,H as t,h as
|
|
1
|
+
import{p as e,H as t,h as s,c}from"./p-2bef72c7.js";const n=e(class e extends t{constructor(){super();this.__registerHost();this.__attachShadow()}render(){return s(c,{key:"d9e607042807d1eac96334e573b689fd556efb57",slot:"content"},s("slot",{key:"bfc5e88fcdaa0a74a530310c916e8e9d0686ade3"}))}},[1,"wcs-field-content"]);function o(){if(typeof customElements==="undefined"){return}const e=["wcs-field-content"];e.forEach((e=>{switch(e){case"wcs-field-content":if(!customElements.get(e)){customElements.define(e,n)}break}}))}const f=n;const d=o;export{f as WcsFieldContent,d as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=wcs-field-content.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["FieldContent","proxyCustomElement","H","render","h","Host","key","slot"],"sources":["src/components/field-content/field-content.tsx"],"sourcesContent":["import { Component, ComponentInterface, h, Host } from '@stencil/core';\n\n/**\n * The field-content is a subcomponent of `wcs-field`. It represents the text content of the field.\n * \n * @cssprop --wcs-field-content-color - Color of the content\n * @cssprop --wcs-field-content-font-weight - Font weight of the content\n * @cssprop --wcs-field-content-font-size - Font size of the content\n * @cssprop --wcs-field-content-line-height - Line height of the content\n */\n@Component({\n tag: 'wcs-field-content',\n shadow: true\n})\nexport class FieldContent implements ComponentInterface {\n render() {\n return (\n <Host slot=\"content\">\n <slot/>\n </Host>\n );\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["FieldContent","proxyCustomElement","H","render","h","Host","key","slot"],"sources":["src/components/field-content/field-content.tsx"],"sourcesContent":["import { Component, ComponentInterface, h, Host } from '@stencil/core';\n\n/**\n * The field-content is a subcomponent of `wcs-field`. It represents the text content of the field.\n * \n * @cssprop --wcs-field-content-color - Color of the content\n * @cssprop --wcs-field-content-font-weight - Font weight of the content\n * @cssprop --wcs-field-content-font-size - Font size of the content\n * @cssprop --wcs-field-content-line-height - Line height of the content\n */\n@Component({\n tag: 'wcs-field-content',\n shadow: true\n})\nexport class FieldContent implements ComponentInterface {\n render() {\n return (\n <Host slot=\"content\">\n <slot/>\n </Host>\n );\n }\n}\n"],"mappings":"0DAcaA,EAAYC,EAAA,MAAAD,UAAAE,E,kEACrB,MAAAC,GACI,OACIC,EAACC,EAAI,CAAAC,IAAA,2CAACC,KAAK,WACPH,EAAA,QAAAE,IAAA,6C"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as e,H as s,h as t,c}from"./p-2bef72c7.js";const l=e(class e extends s{constructor(){super();this.__registerHost();this.__attachShadow()}render(){return t(c,{key:"
|
|
1
|
+
import{p as e,H as s,h as t,c}from"./p-2bef72c7.js";const l=e(class e extends s{constructor(){super();this.__registerHost();this.__attachShadow()}render(){return t(c,{key:"8ec997eb8d3c959d536e915e41b6feee0abae9b5",slot:"label"},t("slot",{key:"6388cadd5e9f3b793accd62806897550d38e2473"}))}},[1,"wcs-field-label"]);function n(){if(typeof customElements==="undefined"){return}const e=["wcs-field-label"];e.forEach((e=>{switch(e){case"wcs-field-label":if(!customElements.get(e)){customElements.define(e,l)}break}}))}const o=l;const a=n;export{o as WcsFieldLabel,a as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=wcs-field-label.js.map
|
package/bundle/wcs-field.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as e,H as t,h as
|
|
1
|
+
import{p as e,H as t,h as s,c}from"./p-2bef72c7.js";const i=":host{--wcs-field-label-color:var(--wcs-semantic-color-text-secondary);--wcs-field-label-font-weight:var(--wcs-semantic-font-weight-medium);--wcs-field-label-font-size:var(--wcs-semantic-font-size-body-3);--wcs-field-label-line-height:var(--wcs-semantic-font-line-height-large);--wcs-field-content-color:var(--wcs-semantic-color-text-secondary);--wcs-field-content-font-weight:var(--wcs-semantic-font-weight-book);--wcs-field-content-font-size:var(--wcs-semantic-font-size-body-3);--wcs-field-content-line-height:var(--wcs-semantic-font-line-height-medium);--wcs-field-margin-top:var(--wcs-semantic-spacing-base);--wcs-field-margin-bottom:var(--wcs-semantic-spacing-large);--wcs-field-gap:var(--wcs-semantic-spacing-small);display:flex;flex-direction:column;margin-top:var(--wcs-field-margin-top);margin-bottom:var(--wcs-field-margin-bottom);gap:var(--wcs-field-gap)}::slotted([slot=label]){color:var(--wcs-field-label-color);font-weight:var(--wcs-field-label-font-weight);font-size:var(--wcs-field-label-font-size);line-height:var(--wcs-field-label-line-height)}::slotted([slot=content]){color:var(--wcs-field-content-color);font-weight:var(--wcs-field-content-font-weight);font-size:var(--wcs-field-content-font-size);line-height:var(--wcs-field-content-line-height)}";const n=i;const o=e(class e extends t{constructor(){super();this.__registerHost();this.__attachShadow()}render(){return s(c,{key:"2f1a99e80af297bdad4ffc522c124ef998433036"},s("slot",{key:"02ed1e93a6fa2394bb76699ebae4b85d1f693941",name:"label"}),s("slot",{key:"de5f51186a195b070839751260a2b15aee14d75c",name:"content"}))}static get style(){return n}},[1,"wcs-field"]);function l(){if(typeof customElements==="undefined"){return}const e=["wcs-field"];e.forEach((e=>{switch(e){case"wcs-field":if(!customElements.get(e)){customElements.define(e,o)}break}}))}const a=o;const f=l;export{a as WcsField,f as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=wcs-field.js.map
|
package/bundle/wcs-field.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["fieldCss","WcsFieldStyle0","Field","proxyCustomElement","H","render","h","Host","key","name"],"sources":["src/components/field/field.scss?tag=wcs-field&encapsulation=shadow","src/components/field/field.tsx"],"sourcesContent":[":host{\n --wcs-field-label-color: var(--wcs-semantic-color-text-secondary);\n --wcs-field-label-font-weight: var(--wcs-semantic-font-weight-medium);\n --wcs-field-label-font-size: var(--wcs-semantic-font-size-body-3);\n --wcs-field-label-line-height: var(--wcs-semantic-font-line-height-large);\n\n --wcs-field-content-color: var(--wcs-semantic-color-text-secondary);\n --wcs-field-content-font-weight: var(--wcs-semantic-font-weight-book);\n --wcs-field-content-font-size: var(--wcs-semantic-font-size-body-3);\n --wcs-field-content-line-height: var(--wcs-semantic-font-line-height-medium);\n\n --wcs-field-margin-top: var(--wcs-semantic-spacing-base);\n --wcs-field-margin-bottom: var(--wcs-semantic-spacing-large);\n --wcs-field-gap: var(--wcs-semantic-spacing-small);\n\n display: flex;\n flex-direction: column;\n margin-top: var(--wcs-field-margin-top);\n margin-bottom: var(--wcs-field-margin-bottom);\n gap: var(--wcs-field-gap);\n}\n::slotted([slot=label]) {\n color: var(--wcs-field-label-color);\n font-weight: var(--wcs-field-label-font-weight);\n font-size: var(--wcs-field-label-font-size);\n line-height: var(--wcs-field-label-line-height);\n}\n\n::slotted([slot=content]) {\n color: var(--wcs-field-content-color);\n font-weight: var(--wcs-field-content-font-weight);\n font-size: var(--wcs-field-content-font-size);\n line-height: var(--wcs-field-content-line-height);\n}\n","import { Component, ComponentInterface, h, Host, } from '@stencil/core';\n\n/**\n * This field component can be used to display the details of an entity. It is built around the label and the content of the field.\n * \n * @slot label Label of the field\n * @slot content Content of the field\n *\n * @cssprop --wcs-field-label-color - The color of the label\n * @cssprop --wcs-field-label-font-weight - The font weight of the label\n * @cssprop --wcs-field-label-font-size - The font size of the label\n * @cssprop --wcs-field-label-line-height - The line height of the label\n * \n * @cssprop --wcs-field-content-color - The color of the content\n * @cssprop --wcs-field-content-font-weight - The font weight of the content\n * @cssprop --wcs-field-content-font-size - The font size of the content\n * \n * @cssprop --wcs-field-margin-top - The margin top of the field \n * @cssprop --wcs-field-margin-bottom - The margin bottom of the field\n * @cssprop --wcs-field-gap - The gap between the label and the content\n *\n */\n@Component({\n tag: 'wcs-field',\n styleUrl: 'field.scss',\n shadow: true\n})\nexport class Field implements ComponentInterface {\n render() {\n return (\n <Host>\n <slot name=\"label\"/>\n <slot name=\"content\"/>\n </Host>\n );\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["fieldCss","WcsFieldStyle0","Field","proxyCustomElement","H","render","h","Host","key","name"],"sources":["src/components/field/field.scss?tag=wcs-field&encapsulation=shadow","src/components/field/field.tsx"],"sourcesContent":[":host{\n --wcs-field-label-color: var(--wcs-semantic-color-text-secondary);\n --wcs-field-label-font-weight: var(--wcs-semantic-font-weight-medium);\n --wcs-field-label-font-size: var(--wcs-semantic-font-size-body-3);\n --wcs-field-label-line-height: var(--wcs-semantic-font-line-height-large);\n\n --wcs-field-content-color: var(--wcs-semantic-color-text-secondary);\n --wcs-field-content-font-weight: var(--wcs-semantic-font-weight-book);\n --wcs-field-content-font-size: var(--wcs-semantic-font-size-body-3);\n --wcs-field-content-line-height: var(--wcs-semantic-font-line-height-medium);\n\n --wcs-field-margin-top: var(--wcs-semantic-spacing-base);\n --wcs-field-margin-bottom: var(--wcs-semantic-spacing-large);\n --wcs-field-gap: var(--wcs-semantic-spacing-small);\n\n display: flex;\n flex-direction: column;\n margin-top: var(--wcs-field-margin-top);\n margin-bottom: var(--wcs-field-margin-bottom);\n gap: var(--wcs-field-gap);\n}\n::slotted([slot=label]) {\n color: var(--wcs-field-label-color);\n font-weight: var(--wcs-field-label-font-weight);\n font-size: var(--wcs-field-label-font-size);\n line-height: var(--wcs-field-label-line-height);\n}\n\n::slotted([slot=content]) {\n color: var(--wcs-field-content-color);\n font-weight: var(--wcs-field-content-font-weight);\n font-size: var(--wcs-field-content-font-size);\n line-height: var(--wcs-field-content-line-height);\n}\n","import { Component, ComponentInterface, h, Host, } from '@stencil/core';\n\n/**\n * This field component can be used to display the details of an entity. It is built around the label and the content of the field.\n * \n * @slot label Label of the field\n * @slot content Content of the field\n *\n * @cssprop --wcs-field-label-color - The color of the label\n * @cssprop --wcs-field-label-font-weight - The font weight of the label\n * @cssprop --wcs-field-label-font-size - The font size of the label\n * @cssprop --wcs-field-label-line-height - The line height of the label\n * \n * @cssprop --wcs-field-content-color - The color of the content\n * @cssprop --wcs-field-content-font-weight - The font weight of the content\n * @cssprop --wcs-field-content-font-size - The font size of the content\n * \n * @cssprop --wcs-field-margin-top - The margin top of the field \n * @cssprop --wcs-field-margin-bottom - The margin bottom of the field\n * @cssprop --wcs-field-gap - The gap between the label and the content\n *\n */\n@Component({\n tag: 'wcs-field',\n styleUrl: 'field.scss',\n shadow: true\n})\nexport class Field implements ComponentInterface {\n render() {\n return (\n <Host>\n <slot name=\"label\"/>\n <slot name=\"content\"/>\n </Host>\n );\n }\n}\n"],"mappings":"oDAAA,MAAMA,EAAW,wvCACjB,MAAAC,EAAeD,E,MC0BFE,EAAKC,EAAA,MAAAD,UAAAE,E,kEACd,MAAAC,GACI,OACIC,EAACC,EAAI,CAAAC,IAAA,4CACDF,EAAA,QAAAE,IAAA,2CAAMC,KAAK,UACXH,EAAA,QAAAE,IAAA,2CAAMC,KAAK,Y"}
|
package/bundle/wcs-footer.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as e,H as o,h as t,c}from"./p-2bef72c7.js";const a=":host{--wcs-footer-background-color:var(--wcs-semantic-color-background-surface-inverse);--wcs-footer-text-color:var(--wcs-semantic-color-text-inverse);--wcs-footer-link-text-color:var(--wcs-semantic-color-text-inverse);--wcs-footer-link-text-color-hover:var(--wcs-semantic-color-text-inverse);--wcs-footer-link-font-size:var(--wcs-semantic-font-size-label-2);--wcs-footer-link-font-weight:var(--wcs-semantic-font-weight-medium);--wcs-footer-link-gap:calc(4 * var(--wcs-semantic-spacing-base));--wcs-footer-gap:var(--wcs-semantic-spacing-large);--wcs-footer-end-gap:var(--wcs-semantic-spacing-large);--wcs-footer-max-width:var(--wcs-semantic-breakpoint-desktop, var(--wcs-com-content-max-width));--wcs-footer-padding:calc(3 * var(--wcs-semantic-spacing-base));display:block;width:100%;background-color:var(--wcs-footer-background-color);color:var(--wcs-footer-text-color)}:host .end{margin-top:var(--wcs-footer-gap);gap:var(--wcs-footer-end-gap);width:100%;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline}:host .end .end-left,:host .end .end-right{display:flex;flex-wrap:wrap;column-gap:var(--wcs-footer-link-gap)}@media only screen and (max-width: 1024px){:host .end .end-left,:host .end .end-right{flex-direction:column}}:host .end slot[name=end-left]::slotted(a){color:var(--wcs-footer-link-text-color, var(--wcs-footer-text-color));font-size:14px;font-weight:500;text-decoration:none}:host .end slot[name=end-left]::slotted(a:hover){color:var(--wcs-footer-link-text-color-hover)}:host .container{margin:0 auto;display:flex;flex-direction:column;max-width:var(--wcs-footer-max-width);padding:var(--wcs-footer-padding)}";const s=a;const n=e(class e extends o{constructor(){super();this.__registerHost();this.__attachShadow()}render(){return t(c,{key:"
|
|
1
|
+
import{p as e,H as o,h as t,c}from"./p-2bef72c7.js";const a=":host{--wcs-footer-background-color:var(--wcs-semantic-color-background-surface-inverse);--wcs-footer-text-color:var(--wcs-semantic-color-text-inverse);--wcs-footer-link-text-color:var(--wcs-semantic-color-text-inverse);--wcs-footer-link-text-color-hover:var(--wcs-semantic-color-text-inverse);--wcs-footer-link-font-size:var(--wcs-semantic-font-size-label-2);--wcs-footer-link-font-weight:var(--wcs-semantic-font-weight-medium);--wcs-footer-link-gap:calc(4 * var(--wcs-semantic-spacing-base));--wcs-footer-gap:var(--wcs-semantic-spacing-large);--wcs-footer-end-gap:var(--wcs-semantic-spacing-large);--wcs-footer-max-width:var(--wcs-semantic-breakpoint-desktop, var(--wcs-com-content-max-width));--wcs-footer-padding:calc(3 * var(--wcs-semantic-spacing-base));display:block;width:100%;background-color:var(--wcs-footer-background-color);color:var(--wcs-footer-text-color)}:host .end{margin-top:var(--wcs-footer-gap);gap:var(--wcs-footer-end-gap);width:100%;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline}:host .end .end-left,:host .end .end-right{display:flex;flex-wrap:wrap;column-gap:var(--wcs-footer-link-gap)}@media only screen and (max-width: 1024px){:host .end .end-left,:host .end .end-right{flex-direction:column}}:host .end slot[name=end-left]::slotted(a){color:var(--wcs-footer-link-text-color, var(--wcs-footer-text-color));font-size:14px;font-weight:500;text-decoration:none}:host .end slot[name=end-left]::slotted(a:hover){color:var(--wcs-footer-link-text-color-hover)}:host .container{margin:0 auto;display:flex;flex-direction:column;max-width:var(--wcs-footer-max-width);padding:var(--wcs-footer-padding)}";const s=a;const n=e(class e extends o{constructor(){super();this.__registerHost();this.__attachShadow()}render(){return t(c,{key:"1982e1bb2f8f8fab2b32039b98327b82d0f7fe5b"},t("footer",{key:"5df2e947ab692961ff3bab26c029d1cd6b60b525",role:"contentinfo"},t("div",{key:"1aa5188a4679ca7c8d898747fae709648bf4efd4",class:"container"},t("div",{key:"4e0720a198a72fd4d215afa9a9b82c9a01f935c7"},t("slot",{key:"b982e050f713d0684eb0202a33a72394a062383b"})),t("div",{key:"2d2969a699b1b56ebc712fecbb99ccde8dc28c28",class:"end"},t("div",{key:"a0e18ea874704d4fd8aac0204122b9a18209ca37",class:"end-left"},t("slot",{key:"c70c138311778a58748dcfcdd03f8f61895bc6ec",name:"end-left"})),t("div",{key:"3339a070ca8068d7441643825fdb30e684d9aff7",class:"end-right"},t("slot",{key:"f576479754f88144e8ded04c90d1696882e6155e",name:"end-right"}))))))}static get style(){return s}},[1,"wcs-footer"]);function r(){if(typeof customElements==="undefined"){return}const e=["wcs-footer"];e.forEach((e=>{switch(e){case"wcs-footer":if(!customElements.get(e)){customElements.define(e,n)}break}}))}const d=n;const i=r;export{d as WcsFooter,i as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=wcs-footer.js.map
|
package/bundle/wcs-form-field.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{F as o,d as s}from"./p-
|
|
1
|
+
import{F as o,d as s}from"./p-16c7ed2e.js";const t=o;const c=s;export{t as WcsFormField,c as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=wcs-form-field.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as e,H as a,h as t,c}from"./p-2bef72c7.js";import{i as o,a as i,s,l as n,b as r}from"./p-
|
|
1
|
+
import{p as e,H as a,h as t,c}from"./p-2bef72c7.js";import{i as o,a as i,s,l as n,b as r}from"./p-53550684.js";import{d as l}from"./p-95eb2e54.js";import{c as d}from"./p-e1fb3625.js";const u=':host{--wcs-galactic-menu-background-color:var(--wcs-semantic-color-background-surface-brand);--wcs-galactic-menu-padding-horizontal:var(--wcs-semantic-spacing-large);--wcs-galactic-menu-gap:var(--wcs-semantic-spacing-large);--wcs-galactic-menu-height:var(--wcs-semantic-size-s);--wcs-galactic-menu-icon-focus-outline-color:var(--wcs-galactic-text-color, white);--wcs-galactic-menu-overlay-color:var(--wcs-semantic-color-text-inverse);--wcs-galactic-menu-overlay-background-color:var(--wcs-semantic-color-background-surface-inverse);--wcs-galactic-menu-overlay-padding:var(--wcs-semantic-spacing-large);display:flex;align-items:center;box-sizing:border-box;height:var(--wcs-galactic-menu-height);gap:var(--wcs-galactic-menu-gap);padding:0 var(--wcs-galactic-menu-padding-horizontal);background-color:var(--wcs-galactic-menu-background-color)}#menu{display:none;background-color:var(--wcs-galactic-menu-overlay-background-color);color:var(--wcs-galactic-menu-overlay-color);padding:var(--wcs-galactic-menu-overlay-padding);--wcs-semantic-color-border-focus-base:var(--wcs-semantic-color-text-inverse, white)}#menu[data-show]{display:block;z-index:9999}#menu[data-popper-placement^=top]>#arrow{bottom:-4px}#menu[data-popper-placement^=bottom]>#arrow{top:-4px}#menu[data-popper-placement^=left]>#arrow{right:-4px}#menu[data-popper-placement^=right]>#arrow{left:-4px}#arrow,#arrow::before{position:absolute;width:8px;height:8px;background:inherit}#arrow{visibility:hidden}#arrow::before{visibility:visible;content:"";transform:rotate(45deg)}button{background:transparent;border:none;color:inherit;cursor:pointer;user-select:none}button:focus-visible{outline:var(--wcs-semantic-border-width-large) dashed var(--wcs-galactic-menu-icon-focus-outline-color);outline-offset:0;border-radius:0.1rem}';const m=u;const p=["tabindex","title"];const g=e(class e extends a{constructor(){super();this.__registerHost();this.__attachShadow();this.inheritedAttributes={};this.showPopoverMenu=false;this.text=undefined}componentDidLoad(){this.menu=this.el.shadowRoot.getElementById("toggle-menu-icon");this.tooltip=this.el.shadowRoot.getElementById("menu");this.popper=d(this.menu,this.tooltip,{placement:"bottom-end",modifiers:[{name:"offset",options:{offset:[0,8]}}]})}componentWillLoad(){this.inheritedAttributes=Object.assign(Object.assign({},o(this.el)),i(this.el,p))}async setAriaAttribute(e,a){s(this.menuButton,e,a)}onWindowClickEvent(e){if(n(e,this.tooltip)||n(e,this.menu)){return}else{if(this.showPopoverMenu){this.toggleMenu()}}}onKeyDown(e){var a;if(r(e)){e.preventDefault();this.showPopoverMenu=false;(a=this.menuButton)===null||a===void 0?void 0:a.focus()}}toggleMenu(){this.showPopoverMenu=!this.showPopoverMenu}componentDidRender(){if(this.popper){this.popper.update()}}render(){return t(c,{key:"8119cc6893e6dc5eda0b2f88a2d3935f9c1a6ac4"},t("span",{key:"c6ca18f7cb948c09d7d5fdd6bc9aacbad2e397fe"},this.text),t("button",Object.assign({key:"a04475052533f24675ef125ba52117bc15279fba","aria-haspopup":"true","aria-controls":"menu",ref:e=>{this.menuButton=e},"aria-expanded":this.showPopoverMenu?"true":"false"},this.inheritedAttributes,{onClick:e=>this.toggleMenu()}),t("wcs-mat-icon",{key:"7a394bfe5e1cee3d49dba4672c6569a0f94a02ae",id:"toggle-menu-icon",icon:"more_horiz",size:"m"})),t("span",{key:"290449dc75b2d5ba33acb49865b1736cf12cb13c",id:"menu",role:"menu","data-show":this.showPopoverMenu},t("div",{key:"d5224168e7f11b935453c7e883791842ffbc0c61",id:"arrow","data-popper-arrow":true}),t("slot",{key:"eaaffe928ece2da680be02522e16655d961261ad"})))}get el(){return this}static get style(){return m}},[1,"wcs-galactic-menu",{text:[1],showPopoverMenu:[32],setAriaAttribute:[64]},[[8,"click","onWindowClickEvent"],[0,"keydown","onKeyDown"]]]);function b(){if(typeof customElements==="undefined"){return}const e=["wcs-galactic-menu","wcs-mat-icon"];e.forEach((e=>{switch(e){case"wcs-galactic-menu":if(!customElements.get(e)){customElements.define(e,g)}break;case"wcs-mat-icon":if(!customElements.get(e)){l()}break}}))}const h=g;const f=b;export{h as WcsGalacticMenu,f as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=wcs-galactic-menu.js.map
|
package/bundle/wcs-galactic.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as c,H as
|
|
1
|
+
import{p as c,H as s,h as t,c as L}from"./p-2bef72c7.js";const a=":host{--wcs-galactic-background-color:var(--wcs-semantic-color-background-surface-inverse);--wcs-galactic-text-color:var(--wcs-semantic-color-text-inverse);--wcs-galactic-height:var(--wcs-semantic-size-s);--wcs-galactic-font-size:var(--wcs-semantic-font-size-label-2);--wcs-galactic-font-weight:var(--wcs-semantic-font-weight-medium);--wcs-galactic-max-width:var(--wcs-com-content-max-width);--wcs-galactic-padding-horizontal:calc(2 * var(--wcs-semantic-spacing-base));--wcs-galactic-logo-height:var(--wcs-semantic-size-s);--wcs-galactic-logo-margin-right:calc(2 * var(--wcs-semantic-spacing-base));--wcs-semantic-color-foreground-action-tertiary-default:var(--wcs-galactic-text-color);display:block;background-color:var(--wcs-galactic-background-color)}.container{height:var(--wcs-galactic-height);align-items:center;justify-content:space-between;color:var(--wcs-galactic-text-color);font-size:var(--wcs-galactic-font-size);font-weight:var(--wcs-galactic-font-weight);display:flex;max-width:var(--wcs-galactic-max-width);padding:0 var(--wcs-galactic-padding-horizontal);margin:0 auto}.container #sncf-logo{height:var(--wcs-galactic-logo-height);margin-right:var(--wcs-galactic-logo-margin-right)}.container .logo-container{display:flex;align-items:center}.actions-container{display:flex;align-items:center}";const i=a;const w=c(class c extends s{constructor(){super();this.__registerHost();this.__attachShadow();this.text=undefined;this.show=false}render(){return t(L,{key:"232bedfce53c034b8cb1d65386d883bd7e3bf98d"},t("div",{key:"0c3540994bd2b846a4668cb20f7e12207b764041",class:"container"},t("div",{key:"5e3d1e7c948420b75383a52eb39c22acfa443e1f",class:"logo-container"},t("img",{key:"d3d28eab6584e0b670cd7624147033c134f0bfbe",src:M,id:"sncf-logo",alt:"SNCF"}),t("span",{key:"46de64ef60c5b5180397dbcee9d18ddd33f42025"},this.text)),t("div",{key:"2de7221e95f3628a2c05a9b1006b75b25f6cb25e",class:"actions-container"},t("slot",{key:"d91d6a26c3d9c79610e8b35c79bb7e3e42541751"}))))}static get style(){return i}},[1,"wcs-galactic",{text:[1],show:[32]}]);const M="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjxzdmcgdmVy"+"c2lvbj0iMS4wIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5"+"rIiB2aWV3Qm94PSIwIDAgMzIgMzIiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KCTxsaW5lYXJHcmFkaWVudCBpZD0iU1ZHX0dSQURJRU5UIiBncmFkaW"+"VudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAiIHkxPSIxNiIgeDI9IjMxLjk1OTMiIHkyPSIxNiI+DQoJCTxzdG9wICBvZmZzZXQ9IjAiIHN0e"+"WxlPSJzdG9wLWNvbG9yOiM4MzJGNzAiLz4NCgkJPHN0b3AgIG9mZnNldD0iMC4yNDcyIiBzdHlsZT0ic3RvcC1jb2xvcjojQUMyODdDIi8+DQoJCTxz"+"dG9wICBvZmZzZXQ9IjAuODE0NiIgc3R5bGU9InN0b3AtY29sb3I6I0RGMjUzMCIvPg0KCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2x"+"vcjojREYyNTMwIi8+DQoJPC9saW5lYXJHcmFkaWVudD4NCgk8cGF0aCBmaWxsPSJ1cmwoI1NWR19HUkFESUVOVCkiIGQ9Ik0wLjYsNy43QzAuMiw3Lj"+"csMCw3LjgsMCw4LjJ2MTUuN2MwLDAuMywwLjIsMC41LDAuNSwwLjVoMjhjMC4zLDAsMC41LDAsMC42LTAuNGMwLDAsMi44LTguOSwyLjktOSBjMC4xL"+"TAuMywwLTAuNS0wLjMtMC43QzIyLjYsOC41LDguOSw3LjYsMi44LDcuNkMxLjksNy42LDEuMSw3LjYsMC42LDcuN3oiLz4NCgk8cGF0aCBmaWxsPSIj"+"RkZGRkZGIiBkPSJNNi40LDE3LjdjLTEtMC41LTEuNy0wLjgtMS42LTEuM0M1LDE1LjgsNi4xLDE1LjYsNywxNS42YzAuNSwwLDAuOCwwLjEsMS4yLDA"+"uMmwwLjMtMS4xIGMtMC41LTAuMS0wLjgtMC4xLTEuNC0wLjFjLTEuOSwwLTMuNiwwLjUtNCwxLjZjLTAuNSwxLjMsMC45LDIsMi4yLDIuNmMxLDAuNS"+"wxLjgsMC45LDEuNSwxLjVjLTAuMiwwLjUtMC45LDAuNy0yLDAuNyBjLTAuOSwwLTItMC4zLTIuOS0wLjdsLTAuNSwxLjFjMC42LDAuMywyLDAuNywzL"+"jEsMC43YzIuMSwwLDMuNS0wLjUsNC4xLTEuN0M5LjMsMTkuMSw3LjcsMTguMyw2LjQsMTcuN3oiLz4NCgk8cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJN"+"OS4zLDE5LjZDOS4zLDE5LjcsOS4zLDE5LjcsOS4zLDE5LjZjMC4xLDAsMC4xLDAsMC4xLDBjMCwwLDEtMy4yLDEtMy4yYzEuMSwxLjUsMi4xLDMuNSw"+"yLjcsNS42aDEuNyBsMC45LTIuN2MwLDAsMCwwLDAuMSwwYzAsMCwwLDAsMC4xLDBjMC4zLDEuNywxLjksMi44LDQuMywyLjhjMS41LDAsMi45LTAuNC"+"wzLjItMC42bDAuOS0yLjhoMy40bDAuMy0xLjFoLTMuNGwwLjYtMS44aDQuMSBsMC40LTEuMWgtNS43bC0xLjksNi4xYy0wLjQsMC4xLTAuOSwwLjItM"+"S41LDAuMmMtMS4xLDAtMi4xLTAuMy0yLjYtMC45Yy0wLjQtMC41LTAuNS0xLTAuNC0xLjdjMC4yLTEuNiwxLjgtMi42LDMuOC0yLjYgYzAuNCwwLDAu"+"OSwwLDEuMywwLjFsMC40LTEuMmMtMC41LTAuMS0xLjEtMC4xLTEuNy0wLjFjLTEuOCwwLTMuNCwwLjYtNC40LDEuN2MwLDAtMC4xLDAtMC4xLDBjMCw"+"wLTAuMSwwLDAsMGwwLjUtMS42aC0xLjUgTDE0LDE5LjhjLTAuNS0xLjUtMS42LTMuNS0yLjktNS4xSDkuNWwtMS4yLDMuN0M4LjksMTguOCw5LjEsMT"+"kuMiw5LjMsMTkuNnoiLz4NCjwvc3ZnPg0K";function e(){if(typeof customElements==="undefined"){return}const c=["wcs-galactic"];c.forEach((c=>{switch(c){case"wcs-galactic":if(!customElements.get(c)){customElements.define(c,w)}break}}))}const j=w;const o=e;export{j as WcsGalactic,o as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=wcs-galactic.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as t,H as r,d as e,h as s,c as o}from"./p-2bef72c7.js";import{h as i}from"./p-d3404c52.js";import{i as n,a,s as d,c,d as h}from"./p-
|
|
1
|
+
import{p as t,H as r,d as e,h as s,c as o}from"./p-2bef72c7.js";import{h as i}from"./p-d3404c52.js";import{i as n,a,s as d,c,d as h}from"./p-53550684.js";const l=({state:t})=>i("svg",{"aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 12 12",fill:"none"},i("g",{class:(t==="none"?"":t)+" arrow-group"},i("path",{class:"arrow",fill:"#333333",d:"M10.0973 5.34619C9.79269 5.67941 9.29832 5.67941 8.99348 5.34619L6.78316 2.92128L6.78316 11.144C6.78316 11.6168 6.43368 12 6.00289 12C5.57187 12 5.22261 11.6168 5.22261 11.144L5.22261 2.92128L3.01219 5.34619C2.70802 5.67941 2.21341 5.67941 1.90881 5.34619C1.75655 5.17859 1.68005 4.95932 1.68005 4.73997C1.68005 4.52061 1.75655 4.30192 1.90881 4.13433L5.45122 0.250846C5.75597 -0.0836145 6.24977 -0.0836145 6.55454 0.250846L10.0973 4.13433C10.4017 4.46883 10.4017 5.01168 10.0973 5.34619Z"})));const u=":host{display:contents}:host th{color:var(--wcs-grid-header-text-color);background-color:var(--wcs-grid-header-background-color-default);border-bottom:var(--wcs-grid-header-border-bottom);border-left:var(--wcs-grid-header-border-left);border-radius:var(--wcs-grid-header-border-radius);padding:var(--wcs-grid-header-padding-vertical) var(--wcs-grid-header-padding-horizontal);text-align:left;align-content:center;transition:background-color var(--wcs-grid-header-transition-duration) ease-in-out;}:host th .grid-column-th-content{-webkit-appearance:none;appearance:none;background:none;border:none;outline:none;margin:0;padding:0;font-size:var(--wcs-grid-header-font-size);line-height:var(--wcs-grid-header-line-height);color:var(--wcs-grid-header-text-color);cursor:inherit;display:inline-flex;border-collapse:separate;font-family:inherit;text-align:left;align-items:center;gap:var(--wcs-semantic-spacing-base)}:host th .grid-column-th-content span{font-weight:var(--wcs-grid-header-font-weight)}:host th[aria-sort]:hover{background-color:var(--wcs-grid-header-background-color-hover)}:host th[aria-sort]:active{background-color:var(--wcs-grid-header-background-color-press)}:host th[aria-sort=ascending],:host th[aria-sort=descending]{--wcs-grid-header-sort-arrow-color:var(--wcs-grid-header-sort-arrow-color-default)}:host th[aria-sort=none]:hover{--wcs-grid-header-sort-arrow-color:var(--wcs-grid-header-sort-arrow-color-hover)}:host th:focus-visible,:host th:has(:focus-visible){outline:var(--wcs-semantic-border-width-large) dashed var(--wcs-grid-outline-color);outline-offset:0;border-radius:0.1rem}@supports not selector(&:has(:focus-visible)){:host th:focus-within{outline:var(--wcs-semantic-border-width-large) dashed var(--wcs-grid-outline-color);outline-offset:0;border-radius:0.1rem}}:host .pointer{cursor:pointer}:host([hidden]){display:none !important}";const g=u;const f=".arrow-group{transform-origin:50% 50%;transition:transform var(--wcs-semantic-motion-duration-feedback-base, 150ms) ease-in-out}.arrow{fill:var(--wcs-grid-header-sort-arrow-color, transparent)}.desc{transform:rotate(180deg)}";const w=f;const b=["tabindex","title"];const p=t(class t extends r{constructor(){super();this.__registerHost();this.__attachShadow();this.wcsSortChange=e(this,"wcsSortChange",7);this.wcsHiddenChange=e(this,"wcsHiddenChange",7);this.inheritedAttributes={};this.path=undefined;this.name=undefined;this.sort=false;this.sortFn=undefined;this.formatter=undefined;this.sortOrder="none";this.width=undefined;this.customCells=false;this.hidden=false;this.cursorPosition=undefined;this.columnPosition=undefined}componentWillLoad(){this.inheritedAttributes=Object.assign(Object.assign({},n(this.el)),a(this.el,b))}async setAriaAttribute(t,r){d(this.nativeTh,t,r)}parseMyObjectProp(t){this.wcsHiddenChange.emit(t)}sortOrderChange(t){this.emitSortConfig()}emitSortConfig(){if(!this.sort)return;this.wcsSortChange.emit({column:this.el,order:this.sortOrder,sortFn:this.sortFn})}getSortOrderForAriaSort(t){switch(t){case"asc":return"ascending";case"desc":return"descending";case"none":default:return"none"}}getTabIndex(){var t,r;return((t=this.cursorPosition)===null||t===void 0?void 0:t.col)===this.columnPosition&&((r=this.cursorPosition)===null||r===void 0?void 0:r.row)===0?0:-1}getTagName(){return this.sort?"button":"div"}delegateFocusToButton(){if(this.sort){this.buttonOrDiv.focus()}}render(){const t=this.getTagName();return s(o,{key:"118b343bd6403270ae60ec7859ba56bea98c6aa1",slot:"grid-column"},s("th",Object.assign({key:"61815f030b8b3b5ceff187bf264a86d03fa8a3bd",style:{width:this.width},class:this.sort?"pointer":"",tabIndex:this.sort?-1:this.getTabIndex(),scope:"col",onClick:this.onSortClick.bind(this),onKeyDown:this.handleSortKeyDown.bind(this),onFocus:this.delegateFocusToButton.bind(this),"aria-sort":this.sort?this.getSortOrderForAriaSort(this.sortOrder):null,ref:t=>this.nativeTh=t},this.inheritedAttributes),s(t,{key:"5894a5ca7af78e40b6307a290707090f974ef652",class:"grid-column-th-content",ref:t=>this.buttonOrDiv=t,tabIndex:this.sort?this.getTabIndex():-1},s("span",{key:"4bd49d08cea2f0892ae0e28f20cf2fc982345f9e"},this.name),this.sort?s("div",{class:"sort-arrow-container"},s(l,{state:this.sortOrder})):"")))}onSortClick(){if(!this.sort)return;this.sortOrder=this.sortOrder==="none"||this.sortOrder==="desc"?"asc":"desc"}handleSortKeyDown(t){if(c(t)||h(t)){t.preventDefault();this.onSortClick()}}get el(){return this}static get watchers(){return{hidden:["parseMyObjectProp"],sortOrder:["sortOrderChange"]}}static get style(){return g+w}},[1,"wcs-grid-column",{path:[1],name:[1],sort:[516],sortFn:[16],formatter:[16],sortOrder:[1025,"sort-order"],width:[1],customCells:[516,"custom-cells"],hidden:[516],cursorPosition:[16],columnPosition:[2,"column-position"],setAriaAttribute:[64]},undefined,{hidden:["parseMyObjectProp"],sortOrder:["sortOrderChange"]}]);function m(){if(typeof customElements==="undefined"){return}const t=["wcs-grid-column"];t.forEach((t=>{switch(t){case"wcs-grid-column":if(!customElements.get(t)){customElements.define(t,p)}break}}))}const v=p;const k=m;export{v as WcsGridColumn,k as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=wcs-grid-column.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as
|
|
1
|
+
import{p as s,H as c,h as e,c as t}from"./p-2bef72c7.js";const o=s(class s extends c{constructor(){super();this.__registerHost();this.__attachShadow();this.columnId=undefined;this.rowId=undefined}render(){return e(t,{key:"aac258f291f690ca8e124414d265f5fec7fc6a56",slot:this.columnId+"-"+this.rowId},e("slot",{key:"7371fc04b30f46ada2ae94c8b4c64d6e0aa07789"}))}},[1,"wcs-grid-custom-cell",{columnId:[1,"column-id"],rowId:[8,"row-id"]}]);function n(){if(typeof customElements==="undefined"){return}const s=["wcs-grid-custom-cell"];s.forEach((s=>{switch(s){case"wcs-grid-custom-cell":if(!customElements.get(s)){customElements.define(s,o)}break}}))}const i=o;const d=n;export{i as WcsGridCustomCell,d as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=wcs-grid-custom-cell.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["GridCustomCell","proxyCustomElement","H","render","h","Host","key","slot","this","columnId","rowId"],"sources":["src/components/grid-custom-cell/grid-custom-cell.tsx"],"sourcesContent":["import { Component, ComponentInterface, h, Host, Prop } from '@stencil/core';\n\n/**\n * The grid custom cell is a subcomponent of `wcs-grid`.\n */\n@Component({\n tag: 'wcs-grid-custom-cell',\n shadow: true\n})\nexport class GridCustomCell implements ComponentInterface {\n /**\n * ID of the column for which to render the cell\n */\n @Prop() columnId: string;\n /**\n * Key value of the object rendered for the cell's row\n */\n @Prop() rowId: any;\n\n render(): any {\n return (\n <Host slot={this.columnId + '-' + this.rowId}>\n <slot />\n </Host>\n );\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["GridCustomCell","proxyCustomElement","H","render","h","Host","key","slot","this","columnId","rowId"],"sources":["src/components/grid-custom-cell/grid-custom-cell.tsx"],"sourcesContent":["import { Component, ComponentInterface, h, Host, Prop } from '@stencil/core';\n\n/**\n * The grid custom cell is a subcomponent of `wcs-grid`.\n */\n@Component({\n tag: 'wcs-grid-custom-cell',\n shadow: true\n})\nexport class GridCustomCell implements ComponentInterface {\n /**\n * ID of the column for which to render the cell\n */\n @Prop() columnId: string;\n /**\n * Key value of the object rendered for the cell's row\n */\n @Prop() rowId: any;\n\n render(): any {\n return (\n <Host slot={this.columnId + '-' + this.rowId}>\n <slot />\n </Host>\n );\n }\n}\n"],"mappings":"+DASaA,EAAcC,EAAA,MAAAD,UAAAE,E,+GAUvB,MAAAC,GACI,OACIC,EAACC,EAAI,CAAAC,IAAA,2CAACC,KAAMC,KAAKC,SAAW,IAAMD,KAAKE,OACnCN,EAAA,QAAAE,IAAA,6C"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{G as o,d as s}from"./p-
|
|
1
|
+
import{G as o,d as s}from"./p-34ecd856.js";const t=o;const c=s;export{t as WcsGridPagination,c as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=wcs-grid-pagination.js.map
|
package/bundle/wcs-grid.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as r,H as t,d as e,f as i,h as o,c as s}from"./p-2bef72c7.js";import{G as n}from"./p-30d83d3d.js";import{k as a}from"./p-97e70e10.js";import{h as c}from"./p-d3404c52.js";import{i as d,a as l,s as u}from"./p-2e9b9605.js";import{d as h}from"./p-cdc6f6c2.js";import{d as f}from"./p-44a3b0b9.js";import{d as g}from"./p-c8b73e93.js";import{i as b,b as w,a as v,S as m,c as p,g as k,e as y,d as C,f as j,h as x,M as A,o as _,k as R,r as E,j as S,s as I,l as O,m as F,U as P,n as D,p as M,q as G,t as T,u as W,v as H,w as U}from"./p-763371a0.js";function N(r){switch(r){case"asc":return 1;case"desc":return-1}}var z;var B=new Uint8Array(16);function L(){if(!z){z=typeof crypto!=="undefined"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||typeof msCrypto!=="undefined"&&typeof msCrypto.getRandomValues==="function"&&msCrypto.getRandomValues.bind(msCrypto);if(!z){throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported")}}return z(B)}const $=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function K(r){return typeof r==="string"&&$.test(r)}var V=[];for(var q=0;q<256;++q){V.push((q+256).toString(16).substr(1))}function J(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0;var e=(V[r[t+0]]+V[r[t+1]]+V[r[t+2]]+V[r[t+3]]+"-"+V[r[t+4]]+V[r[t+5]]+"-"+V[r[t+6]]+V[r[t+7]]+"-"+V[r[t+8]]+V[r[t+9]]+"-"+V[r[t+10]]+V[r[t+11]]+V[r[t+12]]+V[r[t+13]]+V[r[t+14]]+V[r[t+15]]).toLowerCase();if(!K(e)){throw TypeError("Stringified UUID is invalid")}return e}function Q(r,t,e){r=r||{};var i=r.random||(r.rng||L)();i[6]=i[6]&15|64;i[8]=i[8]&63|128;if(t){e=e||0;for(var o=0;o<16;++o){t[e+o]=i[o]}return t}return J(i)}var X="[object Symbol]";function Y(r){return typeof r=="symbol"||b(r)&&w(r)==X}function Z(r,t){var e=-1,i=r==null?0:r.length,o=Array(i);while(++e<i){o[e]=t(r[e],e,r)}return o}var rr=1/0;var tr=m?m.prototype:undefined,er=tr?tr.toString:undefined;function ir(r){if(typeof r=="string"){return r}if(v(r)){return Z(r,ir)+""}if(Y(r)){return er?er.call(r):""}var t=r+"";return t=="0"&&1/r==-rr?"-0":t}var or=Object.create;var sr=function(){function r(){}return function(t){if(!p(t)){return{}}if(or){return or(t)}r.prototype=t;var e=new r;r.prototype=undefined;return e}}();const nr=sr;function ar(r,t){var e=-1,i=r.length;t||(t=Array(i));while(++e<i){t[e]=r[e]}return t}var cr=function(){try{var r=k(Object,"defineProperty");r({},"",{});return r}catch(r){}}();const dr=cr;function lr(r,t){var e=-1,i=r==null?0:r.length;while(++e<i){if(t(r[e],e,r)===false){break}}return r}function ur(r,t,e){if(t=="__proto__"&&dr){dr(r,t,{configurable:true,enumerable:true,value:e,writable:true})}else{r[t]=e}}var hr=Object.prototype;var fr=hr.hasOwnProperty;function gr(r,t,e){var i=r[t];if(!(fr.call(r,t)&&y(i,e))||e===undefined&&!(t in r)){ur(r,t,e)}}function br(r,t,e,i){var o=!e;e||(e={});var s=-1,n=t.length;while(++s<n){var a=t[s];var c=i?i(e[a],r[a],a,e,r):undefined;if(c===undefined){c=r[a]}if(o){ur(e,a,c)}else{gr(e,a,c)}}return e}function wr(r){var t=[];if(r!=null){for(var e in Object(r)){t.push(e)}}return t}var vr=Object.prototype;var mr=vr.hasOwnProperty;function pr(r){if(!p(r)){return wr(r)}var t=C(r),e=[];for(var i in r){if(!(i=="constructor"&&(t||!mr.call(r,i)))){e.push(i)}}return e}function kr(r){return j(r)?x(r,true):pr(r)}var yr=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Cr=/^\w*$/;function jr(r,t){if(v(r)){return false}var e=typeof r;if(e=="number"||e=="symbol"||e=="boolean"||r==null||Y(r)){return true}return Cr.test(r)||!yr.test(r)||t!=null&&r in Object(t)}var xr="Expected a function";function Ar(r,t){if(typeof r!="function"||t!=null&&typeof t!="function"){throw new TypeError(xr)}var e=function(){var i=arguments,o=t?t.apply(this,i):i[0],s=e.cache;if(s.has(o)){return s.get(o)}var n=r.apply(this,i);e.cache=s.set(o,n)||s;return n};e.cache=new(Ar.Cache||A);return e}Ar.Cache=A;var _r=500;function Rr(r){var t=Ar(r,(function(r){if(e.size===_r){e.clear()}return r}));var e=t.cache;return t}var Er=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;var Sr=/\\(\\)?/g;var Ir=Rr((function(r){var t=[];if(r.charCodeAt(0)===46){t.push("")}r.replace(Er,(function(r,e,i,o){t.push(i?o.replace(Sr,"$1"):e||r)}));return t}));const Or=Ir;function Fr(r){return r==null?"":ir(r)}function Pr(r,t){if(v(r)){return r}return jr(r,t)?[r]:Or(Fr(r))}var Dr=1/0;function Mr(r){if(typeof r=="string"||Y(r)){return r}var t=r+"";return t=="0"&&1/r==-Dr?"-0":t}function Gr(r,t){t=Pr(t,r);var e=0,i=t.length;while(r!=null&&e<i){r=r[Mr(t[e++])]}return e&&e==i?r:undefined}function Tr(r,t,e){var i=r==null?undefined:Gr(r,t);return i===undefined?e:i}var Wr=_(Object.getPrototypeOf,Object);const Hr=Wr;function Ur(r,t){return r&&br(t,R(t),r)}function Nr(r,t){return r&&br(t,kr(t),r)}var zr=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var Br=zr&&typeof module=="object"&&module&&!module.nodeType&&module;var Lr=Br&&Br.exports===zr;var $r=Lr?E.Buffer:undefined,Kr=$r?$r.allocUnsafe:undefined;function Vr(r,t){if(t){return r.slice()}var e=r.length,i=Kr?Kr(e):new r.constructor(e);r.copy(i);return i}function qr(r,t){return br(r,S(r),t)}var Jr=Object.getOwnPropertySymbols;var Qr=!Jr?I:function(r){var t=[];while(r){O(t,S(r));r=Hr(r)}return t};const Xr=Qr;function Yr(r,t){return br(r,Xr(r),t)}function Zr(r){return F(r,kr,Xr)}var rt=Object.prototype;var tt=rt.hasOwnProperty;function et(r){var t=r.length,e=new r.constructor(t);if(t&&typeof r[0]=="string"&&tt.call(r,"index")){e.index=r.index;e.input=r.input}return e}function it(r){var t=new r.constructor(r.byteLength);new P(t).set(new P(r));return t}function ot(r,t){var e=t?it(r.buffer):r.buffer;return new r.constructor(e,r.byteOffset,r.byteLength)}var st=/\w*$/;function nt(r){var t=new r.constructor(r.source,st.exec(r));t.lastIndex=r.lastIndex;return t}var at=m?m.prototype:undefined,ct=at?at.valueOf:undefined;function dt(r){return ct?Object(ct.call(r)):{}}function lt(r,t){var e=t?it(r.buffer):r.buffer;return new r.constructor(e,r.byteOffset,r.length)}var ut="[object Boolean]",ht="[object Date]",ft="[object Map]",gt="[object Number]",bt="[object RegExp]",wt="[object Set]",vt="[object String]",mt="[object Symbol]";var pt="[object ArrayBuffer]",kt="[object DataView]",yt="[object Float32Array]",Ct="[object Float64Array]",jt="[object Int8Array]",xt="[object Int16Array]",At="[object Int32Array]",_t="[object Uint8Array]",Rt="[object Uint8ClampedArray]",Et="[object Uint16Array]",St="[object Uint32Array]";function It(r,t,e){var i=r.constructor;switch(t){case pt:return it(r);case ut:case ht:return new i(+r);case kt:return ot(r,e);case yt:case Ct:case jt:case xt:case At:case _t:case Rt:case Et:case St:return lt(r,e);case ft:return new i;case gt:case vt:return new i(r);case bt:return nt(r);case wt:return new i;case mt:return dt(r)}}function Ot(r){return typeof r.constructor=="function"&&!C(r)?nr(Hr(r)):{}}var Ft="[object Map]";function Pt(r){return b(r)&&D(r)==Ft}var Dt=G&&G.isMap;var Mt=Dt?M(Dt):Pt;const Gt=Mt;var Tt="[object Set]";function Wt(r){return b(r)&&D(r)==Tt}var Ht=G&&G.isSet;var Ut=Ht?M(Ht):Wt;const Nt=Ut;var zt=1,Bt=2,Lt=4;var $t="[object Arguments]",Kt="[object Array]",Vt="[object Boolean]",qt="[object Date]",Jt="[object Error]",Qt="[object Function]",Xt="[object GeneratorFunction]",Yt="[object Map]",Zt="[object Number]",re="[object Object]",te="[object RegExp]",ee="[object Set]",ie="[object String]",oe="[object Symbol]",se="[object WeakMap]";var ne="[object ArrayBuffer]",ae="[object DataView]",ce="[object Float32Array]",de="[object Float64Array]",le="[object Int8Array]",ue="[object Int16Array]",he="[object Int32Array]",fe="[object Uint8Array]",ge="[object Uint8ClampedArray]",be="[object Uint16Array]",we="[object Uint32Array]";var ve={};ve[$t]=ve[Kt]=ve[ne]=ve[ae]=ve[Vt]=ve[qt]=ve[ce]=ve[de]=ve[le]=ve[ue]=ve[he]=ve[Yt]=ve[Zt]=ve[re]=ve[te]=ve[ee]=ve[ie]=ve[oe]=ve[fe]=ve[ge]=ve[be]=ve[we]=true;ve[Jt]=ve[Qt]=ve[se]=false;function me(r,t,e,i,o,s){var n,a=t&zt,c=t&Bt,d=t≪if(e){n=o?e(r,i,o,s):e(r)}if(n!==undefined){return n}if(!p(r)){return r}var l=v(r);if(l){n=et(r);if(!a){return ar(r,n)}}else{var u=D(r),h=u==Qt||u==Xt;if(T(r)){return Vr(r,a)}if(u==re||u==$t||h&&!o){n=c||h?{}:Ot(r);if(!a){return c?Yr(r,Nr(n,r)):qr(r,Ur(n,r))}}else{if(!ve[u]){return o?r:{}}n=It(r,u,a)}}s||(s=new W);var f=s.get(r);if(f){return f}s.set(r,n);if(Nt(r)){r.forEach((function(i){n.add(me(i,t,e,i,r,s))}))}else if(Gt(r)){r.forEach((function(i,o){n.set(o,me(i,t,e,o,r,s))}))}var g=d?c?Zr:H:c?kr:R;var b=l?undefined:g(r);lr(b||r,(function(i,o){if(b){o=i;i=r[o]}gr(n,o,me(i,t,e,o,r,s))}));return n}var pe=1,ke=4;function ye(r){return me(r,pe|ke)}function Ce(r,t){const e=a(r);if(e==="UNKNOWN"){return[]}switch(e){case"UP_ARROW":return[{kind:"FocusCell",target:"up"}];case"DOWN_ARROW":return[{kind:"FocusCell",target:"down"}];case"LEFT_ARROW":return[{kind:"FocusCell",target:"left"}];case"RIGHT_ARROW":return[{kind:"FocusCell",target:"right"}];case"HOME":return[{kind:"FocusCell",target:"first_of_row"}];case"END":return[{kind:"FocusCell",target:"last_of_row"}];case"MAJ+SPACE":switch(t){case"grid_selection_single":case"grid_selection_multiple":return[{kind:"SelectRow",target:"one"}]}break;case"CTRL+A":switch(t){case"grid_selection_multiple":return[{kind:"SelectRow",target:"all"}]}break;case"CTRL+HOME":return[{kind:"FocusCell",target:"first_of_grid"}];case"CTRL+END":return[{kind:"FocusCell",target:"last_of_grid"}]}return[]}const je=({checked:r,row:t,rowIndex:e,totalRows:i,onClick:o})=>{let s;return c("div",{class:`grid-radio ${r?"checked":""}`,onClick:r=>s.click()},c("input",{type:"radio",name:"selection","aria-setsize":i,"aria-posinset":e,tabindex:"-1",checked:r,"aria-checked":`${r}`,ref:r=>s=r,onClick:r=>o(t)}))};const xe=":host{--wcs-grid-gap:0;--wcs-grid-vertical-align:middle;--wcs-grid-outline-color:var(--wcs-semantic-color-border-focus-base);--wcs-grid-cell-text-color:var(--wcs-semantic-color-text-secondary);--wcs-grid-cell-padding-horizontal:var(--wcs-semantic-spacing-large);--wcs-grid-cell-padding-vertical:var(--wcs-semantic-spacing-base);--wcs-grid-cell-border-bottom:none;--wcs-grid-cell-separator-border:none;--wcs-grid-first-cell-border-radius:0;--wcs-grid-last-cell-border-radius:0;--wcs-grid-highlight-color:var(--wcs-semantic-color-background-surface-accent-lighter);--wcs-grid-row-background-color:var(--wcs-semantic-color-background-surface-primary);--wcs-grid-row-odd-background-color:var(--wcs-grid-row-background-color);--wcs-grid-row-even-background-color:var(--wcs-semantic-color-background-surface-accent-lightest);--wcs-grid-header-background-color-default:var(--wcs-semantic-color-background-action-secondary-default);--wcs-grid-header-background-color-hover:var(--wcs-semantic-color-background-action-secondary-hover);--wcs-grid-header-background-color-press:var(--wcs-semantic-color-background-action-secondary-press);--wcs-grid-header-text-color:var(--wcs-semantic-color-text-primary);--wcs-grid-header-font-weight:var(--wcs-semantic-font-weight-heavy);--wcs-grid-header-font-size:var(--wcs-semantic-font-size-label-1);--wcs-grid-header-line-height:var(--wcs-primitive-font-line-height-140);--wcs-grid-header-padding-vertical:var(--wcs-semantic-spacing-base);--wcs-grid-header-padding-horizontal:var(--wcs-semantic-spacing-large);--wcs-grid-header-border-left:none;--wcs-grid-header-border-radius:0;--wcs-grid-header-border-bottom:solid var(--wcs-semantic-border-width-default) var(--wcs-semantic-color-border-secondary);--wcs-grid-header-transition-duration:var(--wcs-semantic-motion-duration-feedback-fast);--wcs-grid-first-header-background-color:var(--wcs-semantic-color-background-action-secondary-default);--wcs-grid-first-header-border-radius:0;--wcs-grid-last-header-border-radius:0;--wcs-grid-column-selection-width:calc(5 * var(--wcs-semantic-spacing-base));--wcs-grid-header-sort-arrow-color-default:var(--wcs-semantic-color-foreground-action-neutral-default);--wcs-grid-header-sort-arrow-color-hover:var(--wcs-semantic-color-foreground-action-neutral-hover);display:block}:host th{border-radius:var(--wcs-grid-first-header-border-radius);background-color:var(--wcs-grid-first-header-background-color)}:host ::slotted([slot=grid-column]:first-child){--wcs-grid-header-border-left:none}:host :host([selection]) ::slotted([slot=grid-column]:first-child){--wcs-component-grid-header-border-radius-first:0;--wcs-grid-header-border-left:var(--wcs-grid-header-border-left)}:host table{width:100%;border-collapse:collapse;border-spacing:var(--wcs-grid-gap)}:host table thead{border-bottom:var(--wcs-grid-header-border-bottom)}:host table tbody{vertical-align:var(--wcs-grid-vertical-align)}:host td{color:var(--wcs-grid-cell-text-color);margin:0;padding:var(--wcs-grid-cell-padding-vertical) var(--wcs-grid-cell-padding-horizontal)}:host td:focus-visible{outline:var(--wcs-semantic-border-width-large) dashed var(--wcs-grid-outline-color);outline-offset:0;border-radius:0.1rem}:host td:first-child{border-radius:var(--wcs-grid-first-cell-border-radius)}:host td:last-child{border-radius:var(--wcs-grid-last-cell-border-radius)}:host td:not(:first-child){border-left:var(--wcs-grid-cell-separator-border)}:host tr{background-color:var(--wcs-grid-row-background-color)}:host tr:nth-child(odd){background-color:var(--wcs-grid-row-odd-background-color, var(--wcs-grid-row-background-color))}:host tr:nth-child(even){background-color:var(--wcs-grid-row-even-background-color, var(--wcs-grid-row-background-color))}:host tr:not(:last-child) td{border-bottom:var(--wcs-grid-cell-border-bottom)}:host .wcs-grid-selection-column{padding:var(--wcs-grid-cell-padding-vertical) var(--wcs-grid-cell-padding-horizontal);width:var(--wcs-grid-column-selection-width);text-align:start}:host tr.selected{background-color:var(--wcs-grid-highlight-color)}:host .loading{text-align:center}";const Ae=xe;const _e='.grid-radio{--wcs-grid-radio-outline-color:var(--wcs-semantic-color-border-focus-base);--wcs-grid-radio-padding:calc(var(--wcs-semantic-size-base) / 4);--wcs-grid-radio-transition:var(--wcs-semantic-motion-duration-feedback-base);--wcs-grid-radio-border-color-default:var(--wcs-semantic-color-border-control-indicator-default);--wcs-grid-radio-border-color-selected:var(--wcs-semantic-color-border-control-indicator-selected);--wcs-grid-radio-border-color-hover:var(--wcs-semantic-color-border-control-indicator-hover);--wcs-grid-radio-border-color-disabled:var(--wcs-semantic-color-border-control-indicator-disabled);--wcs-grid-radio-background-color-default:transparent;--wcs-grid-radio-background-color-selected:var(--wcs-semantic-color-background-control-indicator-selected);--wcs-grid-radio-background-color-disabled:var(--wcs-semantic-color-background-control-indicator-disabled);--wcs-grid-radio-inner-border-color:white;width:fit-content;cursor:pointer;padding:var(--wcs-grid-radio-padding, 0.125rem);}.grid-radio:has(input:focus-visible){outline:var(--wcs-semantic-border-width-large) dashed var(--wcs-grid-radio-outline-color);outline-offset:var(--wcs-semantic-spacing-small);border-radius:0.1rem}@supports not selector(:has(input:focus-visible)){.grid-radio:focus-within{outline:var(--wcs-semantic-border-width-large) dashed var(--wcs-grid-radio-outline-color);outline-offset:var(--wcs-semantic-spacing-small);border-radius:0.1rem}}.grid-radio input{position:absolute;opacity:0;height:1px;width:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.grid-radio::before{content:"";display:flex;border-radius:50%;border:2px solid var(--wcs-grid-radio-border-color-default);position:relative;width:1.125rem;height:1.125rem;box-sizing:border-box;background-color:var(--wcs-grid-radio-background-color-default);transition:var(--wcs-grid-radio-transition, 0.175s) ease-in-out}.grid-radio:hover::before{border-color:var(--wcs-grid-radio-border-color-hover)}.grid-radio.checked::before{border-color:var(--wcs-grid-radio-border-color-selected);background-color:var(--wcs-grid-radio-background-color-selected);outline:solid 2px var(--wcs-grid-radio-inner-border-color);outline-offset:-4px}';const Re=_e;const Ee=["title"];const Se=r(class r extends t{constructor(){super();this.__registerHost();this.__attachShadow();this.wcsGridSelectionChange=e(this,"wcsGridSelectionChange",7);this.wcsGridAllSelectionChange=e(this,"wcsGridAllSelectionChange",7);this.wcsFocus=e(this,"wcsFocus",7);this.wcsBlur=e(this,"wcsBlur",7);this.inheritedAttributes={};this.serverMode=false;this.data=undefined;this.loading=undefined;this.selectionConfig="none";this.selectedItems=[];this.wcsGridPaginationId=undefined;this.rowIdPath=undefined;this.rowCssPartsFn=r=>null;this.columns=undefined;this.paginationEl=undefined;this.rows=[];this.cursorPosition={col:0,row:1}}onCursorPositionChange(r){this.getGridColumnsFromTemplate().forEach((t=>t.cursorPosition=r))}onDataChange(r){this.updateGridRows(r);this.refreshSort(false);this.updatePageIndex()}onSelectedItemsPropertyChange(r){this.updateSelectionWithValues(r)}onFocus(r){var t;(t=this.getElementToFocusAtCursorPosition())===null||t===void 0?void 0:t.focus();this.wcsFocus.emit(r)}onBlur(r){this.wcsBlur.emit(r)}async focusFirstCell(){var r;this.cursorPosition={col:this.selectionConfig==="none"?0:1,row:1};(r=this.getElementToFocusAtCursorPosition())===null||r===void 0?void 0:r.focus()}hasSelectionColumn(){return this.selectionConfig!=="none"}getElementToFocusAtCursorPosition(){var r,t;const e=(r=this.gridElementsWithCoordinates.find((r=>{var t,e;return r.col===((t=this.cursorPosition)===null||t===void 0?void 0:t.col)&&r.row===((e=this.cursorPosition)===null||e===void 0?void 0:e.row)})))===null||r===void 0?void 0:r.el;return this.hasSelectionColumn()?(t=e.querySelector('wcs-checkbox,input[type="radio"]'))!==null&&t!==void 0?t:e:e}moveCursorPosition(r,t){var e;this.cursorPosition={col:r==="first"?0:r==="last"?this.totalDisplayedColumnCount()-1:Math.min(Math.max(this.cursorPosition.col+r,0),this.totalDisplayedColumnCount()-1),row:t==="first"?0:t==="last"?this.getRowsForCurrentPage().length:Math.min(Math.max(this.cursorPosition.row+t,0),this.getRowsForCurrentPage().length)};this.handleCursorPositionOnEmptyTh();(e=this.getElementToFocusAtCursorPosition())===null||e===void 0?void 0:e.focus()}handleCursorPositionOnEmptyTh(){if(this.selectionConfig==="single"&&this.cursorPosition.col===0&&this.cursorPosition.row===0){this.cursorPosition={col:1,row:0}}}onHiddenColumnChange(){i(this);this.cursorPosition={col:0,row:1}}onKeyDown(r){var t;if(((t=document.activeElement)===null||t===void 0?void 0:t.tagName)==="WCS-GRID-PAGINATION"){return}let e;switch(this.selectionConfig){case"multiple":e="grid_selection_multiple";break;case"single":e="grid_selection_single";break;case"none":e="grid_no_selection";break}const i=Ce(r,e);if(i.length!=0){r.preventDefault()}for(const t of i){this.doActionFromKeyboardEventAssociatedAction(t,r)}}doActionFromKeyboardEventAssociatedAction(r,t){switch(r.kind){case"FocusCell":switch(r.target){case"up":this.moveCursorPosition(0,-1);break;case"down":this.moveCursorPosition(0,1);break;case"left":this.moveCursorPosition(-1,0);break;case"right":this.moveCursorPosition(1,0);break;case"first_of_row":this.moveCursorPosition("first",0);break;case"last_of_row":this.moveCursorPosition("last",0);break;case"first_of_grid":this.moveCursorPosition("first","first");break;case"last_of_grid":this.moveCursorPosition("last","last");break}case"SelectRow":switch(r.target){case"one":t.preventDefault();if(this.cursorPosition.row>0){this.onRowSelection(this.rows[this.cursorPosition.row-1])}break;case"all":this.selectAllRows();break}break;default:throw new Error("Internal error")}}onClick(r){const t=r.composedPath().filter((r=>["TD","TH"].includes(r.nodeName)))[0];if(!t)return;const e=this.gridElementsWithCoordinates.find((r=>r.el===t));this.cursorPosition={col:e.col,row:e.row}}updateSelectionWithValues(r){if(this.selectionConfig==="single"){this.rows.map((r=>r.selected=false));for(const t of this.rows){if(U(t.data,r)){t.selected=true;break}}}else if(this.selectionConfig==="multiple"){this.rows.map((r=>r.selected=false));for(const t of this.rows){if(r.find((r=>U(r,t.data)))){t.selected=true}}}this.rows=ye(this.rows)}wcsGridRowToWcsGridRowData(r){return{selected:r.selected,page:r.page,data:r.data}}updateGridRows(r){const t=[];if(r&&this.columns){for(let e=0;e<r.length;e++){const i={uuid:Q(),data:r[e],selected:false,cells:[]};let o=0;for(const t of this.columns){t.columnPosition=o+(this.hasSelectionColumn()?1:0);o++;i.cells.push({content:Tr(r[e],t.path),column:t,formatter:t.formatter})}t.push(i)}this.rows=t}}componentDidLoad(){this.columns=this.getGridColumnsFromTemplate();this.paginationEl=this.wcsGridPaginationId?document.getElementById(this.wcsGridPaginationId):this.getGridPaginationsFromTemplate()[0];this.updateGridRows(this.data);if(this.selectedItems){this.updateSelectionWithValues(this.selectedItems)}this.refreshSort(true);this.updatePageIndex()}componentWillLoad(){this.inheritedAttributes=Object.assign(Object.assign({},d(this.el)),l(this.el,Ee))}async setAriaAttribute(r,t){u(this.nativeTable,r,t)}refreshSort(r){if(this.columns){const[t,...e]=this.columns.filter((r=>r.sortOrder!=="none"));if(t&&!this.serverMode){this.sortBy(t)}r&&this.disableSortOrderForColumns(e)}}disableSortOrderForColumns(r){r===null||r===void 0?void 0:r.forEach((r=>r.sortOrder="none"))}getGridColumnsFromTemplate(){const r=this.el.shadowRoot.querySelector('slot[name="grid-column"]');return r.assignedElements()}getGridPaginationsFromTemplate(){const r=this.el.shadowRoot.querySelector('slot[name="grid-pagination"]');return r.assignedElements()}get gridElementsWithCoordinates(){const r=[];if(this.selectionConfig==="multiple"){r.push({el:this.el.shadowRoot.querySelector("th"),row:0,col:0})}this.getGridColumnsFromTemplate().filter((r=>!r.hidden)).forEach(((t,e)=>{r.push({el:t.shadowRoot.querySelector("th"),row:0,col:e+(this.hasSelectionColumn()?1:0)})}));this.el.shadowRoot.querySelectorAll("td").forEach(((t,e)=>{r.push({el:t,row:1+Math.floor(e/this.totalDisplayedColumnCount()),col:e%this.totalDisplayedColumnCount()})}));return r}sortChangeEventHandler(r){if(r.detail.order==="none"||!this.columns)return;this.disableSortOrderForColumns(this.columns.filter((t=>t!==r.detail.column)));if(this.serverMode)return;this.sortBy(r.detail.column);this.updatePageIndex()}sortBy(r){if(r.sortFn){this.rows=ye(this.rows).sort(((t,e)=>r.sortFn(t.data,e.data,r)*N(r.sortOrder)))}else{this.rows=ye(this.rows).sort(((t,e)=>{const i=r.path;return(Tr(t.data,i)<Tr(e.data,i)?-1:Tr(t.data,i)>Tr(e.data,i)?1:0)*N(r.sortOrder)}))}}updatePageIndex(){if(!this.serverMode&&this.paginationEl){this.paginationEl.itemsCount=this.data.length;this.paginationEl.pageCount=Math.ceil(this.data.length/this.paginationEl.pageSize);if(this.paginationEl.pageCount<=1){this.paginationEl.currentPage=n.INDEX_FIRST_PAGE}else if(this.paginationEl.pageCount>0&&this.paginationEl.currentPage+1>this.paginationEl.pageCount){this.paginationEl.currentPage=this.paginationEl.pageCount-1}const r=ye(this.rows);r.forEach(((r,t)=>r.page=Math.floor(t/this.paginationEl.pageSize)));this.rows=[...r]}}paginationChangeEventHandler(){this.onPaginationChange()}paginationChangeEventHandlerOutside(r){if(this.wcsGridPaginationId&&this.wcsGridPaginationId===r.target.id){this.onPaginationChange()}}onPaginationChange(){if(this.serverMode)return;this.updatePageIndex()}onRowSelection(r){if(this.selectionConfig==="single"){this.rows.filter((t=>t.uuid!==r.uuid)).map((r=>r.selected=false))}r.selected=!r.selected;if(this.selectionConfig!=="single"||r.selected){this.wcsGridSelectionChange.emit({selectedRows:this.selectedRows.map((r=>this.wcsGridRowToWcsGridRowData(r))),changedRow:this.wcsGridRowToWcsGridRowData(r)})}this.rows=ye(this.rows)}get selectedRows(){return this.rows.filter((r=>r.selected))}selectAllRows(){const r=this.getRowsForCurrentPage();const t=!this.allRowsAreSelected();r.map((r=>r.selected=t));this.wcsGridAllSelectionChange.emit({rows:t?r.map((r=>this.wcsGridRowToWcsGridRowData(r))):[]});this.wcsGridSelectionChange.emit({selectedRows:this.selectedRows.map((r=>this.wcsGridRowToWcsGridRowData(r))),changedRow:"allCheckbox"});this.rows=ye(this.rows)}allRowsAreSelected(){const r=this.getRowsForCurrentPage();return r.length>0&&r.filter((r=>r.selected)).length===r.length}getRowsForCurrentPage(){if(!this.serverMode&&this.paginationEl){return this.rows.filter((r=>r.page===this.paginationEl.currentPage))}return this.rows}renderSelectionColumn(r,t){var e,i,s,n;switch(this.selectionConfig){case"none":return;case"single":return o("td",{"aria-colindex":this.atLeastOneColumnHidden()?1:null,tabIndex:((e=this.cursorPosition)===null||e===void 0?void 0:e.col)===0&&t+1===((i=this.cursorPosition)===null||i===void 0?void 0:i.row)?0:-1},o(je,{checked:r.selected,row:r,rowIndex:t+1,totalRows:this.rows.length,onClick:r=>{if(!r.selected){this.onRowSelection(r)}}}));case"multiple":return o("td",{"aria-colindex":this.atLeastOneColumnHidden()?1:null,tabIndex:((s=this.cursorPosition)===null||s===void 0?void 0:s.col)===0&&t+1===((n=this.cursorPosition)===null||n===void 0?void 0:n.row)?0:-1},o("wcs-checkbox",{tabIndex:-1,part:"row-checkbox",checked:r.selected,onWcsChange:this.onRowSelection.bind(this,r)}))}}getCellContent(r,t){if(t.formatter){return t.formatter(o,t.column,this.wcsGridRowToWcsGridRowData(r))}return t.content}totalColumnCount(){if(!this.columns){return 0}return this.columns.length+(this.hasSelectionColumn()?1:0)}totalDisplayedColumnCount(){var r,t;return(t=this.totalColumnCount()-((r=this.columns)===null||r===void 0?void 0:r.filter((r=>r.hidden)).length))!==null&&t!==void 0?t:0}atLeastOneColumnHidden(){return this.totalDisplayedColumnCount()!==this.totalColumnCount()}render(){var r,t,e,i;return o(s,{key:"1e9b1d5dc405c67428750276de3e38e8e163d20e"},o("table",Object.assign({key:"42e610c403c108f36c2f5e4eb276b9e1c6349b8c",role:"grid",ref:r=>this.nativeTable=r,"aria-rowcount":!this.loading&&((r=this.rows)===null||r===void 0?void 0:r.length),"aria-colcount":!this.loading&&this.totalDisplayedColumnCount()},this.inheritedAttributes),o("thead",{key:"365bf4de9329c94c5c891040b14ca844c6e8fd99"},o("tr",{key:"9d1e4c4cf0418f585679a055edbb88ca08493d3d","aria-rowindex":"1"},this.selectionConfig==="none"?"":o("th",{class:"wcs-grid-selection-column"},this.selectionConfig==="single"?"":o("wcs-checkbox",{tabIndex:((t=this.cursorPosition)===null||t===void 0?void 0:t.col)===0&&((e=this.cursorPosition)===null||e===void 0?void 0:e.row)===0?0:-1,part:"all-rows-checkbox",checked:this.allRowsAreSelected(),onWcsChange:this.selectAllRows.bind(this)})),o("slot",{key:"4c1ed31eeaf61d0f94a156cc97b393abafdfb6e3",name:"grid-column"}))),o("tbody",{key:"5758c76c248e9e54759bd008310047a5c670339a"},this.loading?o("tr",{"aria-busy":"true"},o("td",{colSpan:this.totalColumnCount(),class:"loading"},o("wcs-spinner",null))):(i=this.rows)===null||i===void 0?void 0:i.filter((r=>this.serverMode||!this.paginationEl||r.page===this.paginationEl.currentPage)).map(((r,t)=>this.renderRow(r,t))))),o("slot",{key:"170e79b086e8235ae736c8cc54512b0e3bb0e7ab",name:"grid-pagination"}))}renderRow(r,t){var e,i;let s=0;return o("tr",{class:r.selected?"selected":"",part:(e=this.rowCssPartsWithoutEmptyList(r))===null||e===void 0?void 0:e.join(" "),"aria-selected":r.selected?"true":null,"aria-rowindex":t+2},this.renderSelectionColumn(r,t),(i=r.cells)===null||i===void 0?void 0:i.map(((e,i)=>{var n,a;if(e.column.hidden){s++;return}const c=i-s+1+(this.hasSelectionColumn()?1:0);const d=c-1===((n=this.cursorPosition)===null||n===void 0?void 0:n.col)&&t+1===((a=this.cursorPosition)===null||a===void 0?void 0:a.row);return e.column.customCells?o("td",{tabIndex:d?0:-1,"aria-colindex":this.atLeastOneColumnHidden()?c:null},o("slot",{name:e.column.id+"-"+Tr(r.data,this.rowIdPath)})):o("td",{tabIndex:d?0:-1,"aria-colindex":this.atLeastOneColumnHidden()?c:null,part:e.column.path+"-column"},this.getCellContent(r,e))})))}rowCssPartsWithoutEmptyList(r){const t=this.rowCssPartsFn(r);return(t===null||t===void 0?void 0:t.length)===0?null:t}get el(){return this}static get watchers(){return{cursorPosition:["onCursorPositionChange"],data:["onDataChange"],selectedItems:["onSelectedItemsPropertyChange"]}}static get style(){return Ae+Re}},[1,"wcs-grid",{serverMode:[516,"server-mode"],data:[16],loading:[516],selectionConfig:[1,"selection-config"],selectedItems:[8,"selected-items"],wcsGridPaginationId:[1,"wcs-grid-pagination-id"],rowIdPath:[1,"row-id-path"],rowCssPartsFn:[16],columns:[32],paginationEl:[32],rows:[32],cursorPosition:[32],focusFirstCell:[64],setAriaAttribute:[64]},[[0,"focus","onFocus"],[0,"blur","onBlur"],[0,"wcsHiddenChange","onHiddenColumnChange"],[0,"keydown","onKeyDown"],[1,"mousedown","onClick"],[0,"wcsSortChange","sortChangeEventHandler"],[0,"wcsGridPaginationChange","paginationChangeEventHandler"],[8,"wcsGridPaginationChange","paginationChangeEventHandlerOutside"]],{cursorPosition:["onCursorPositionChange"],data:["onDataChange"],selectedItems:["onSelectedItemsPropertyChange"]}]);function Ie(){if(typeof customElements==="undefined"){return}const r=["wcs-grid","wcs-button","wcs-checkbox","wcs-spinner"];r.forEach((r=>{switch(r){case"wcs-grid":if(!customElements.get(r)){customElements.define(r,Se)}break;case"wcs-button":if(!customElements.get(r)){h()}break;case"wcs-checkbox":if(!customElements.get(r)){f()}break;case"wcs-spinner":if(!customElements.get(r)){g()}break}}))}const Oe=Se;const Fe=Ie;export{Oe as WcsGrid,Fe as defineCustomElement};
|
|
1
|
+
import{p as r,H as t,d as e,f as i,h as o,c as s}from"./p-2bef72c7.js";import{G as n}from"./p-34ecd856.js";import{k as a}from"./p-5a997d17.js";import{h as c}from"./p-d3404c52.js";import{i as d,a as l,s as u}from"./p-53550684.js";import{d as h}from"./p-c13e9bb6.js";import{d as f}from"./p-87b9556d.js";import{d as g}from"./p-95eb2e54.js";import{d as w}from"./p-d7d1ea63.js";import{i as b,b as v,a as m,S as p,c as k,g as y,e as C,d as j,f as x,h as A,M as _,o as R,k as E,r as S,j as I,s as O,l as F,m as P,U as D,n as M,p as G,q as T,t as W,u as H,v as U,w as N}from"./p-68ab4391.js";function z(r){switch(r){case"asc":return 1;case"desc":return-1}}var B;var L=new Uint8Array(16);function $(){if(!B){B=typeof crypto!=="undefined"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||typeof msCrypto!=="undefined"&&typeof msCrypto.getRandomValues==="function"&&msCrypto.getRandomValues.bind(msCrypto);if(!B){throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported")}}return B(L)}const K=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function V(r){return typeof r==="string"&&K.test(r)}var q=[];for(var J=0;J<256;++J){q.push((J+256).toString(16).substr(1))}function Q(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0;var e=(q[r[t+0]]+q[r[t+1]]+q[r[t+2]]+q[r[t+3]]+"-"+q[r[t+4]]+q[r[t+5]]+"-"+q[r[t+6]]+q[r[t+7]]+"-"+q[r[t+8]]+q[r[t+9]]+"-"+q[r[t+10]]+q[r[t+11]]+q[r[t+12]]+q[r[t+13]]+q[r[t+14]]+q[r[t+15]]).toLowerCase();if(!V(e)){throw TypeError("Stringified UUID is invalid")}return e}function X(r,t,e){r=r||{};var i=r.random||(r.rng||$)();i[6]=i[6]&15|64;i[8]=i[8]&63|128;if(t){e=e||0;for(var o=0;o<16;++o){t[e+o]=i[o]}return t}return Q(i)}var Y="[object Symbol]";function Z(r){return typeof r=="symbol"||b(r)&&v(r)==Y}function rr(r,t){var e=-1,i=r==null?0:r.length,o=Array(i);while(++e<i){o[e]=t(r[e],e,r)}return o}var tr=1/0;var er=p?p.prototype:undefined,ir=er?er.toString:undefined;function or(r){if(typeof r=="string"){return r}if(m(r)){return rr(r,or)+""}if(Z(r)){return ir?ir.call(r):""}var t=r+"";return t=="0"&&1/r==-tr?"-0":t}var sr=Object.create;var nr=function(){function r(){}return function(t){if(!k(t)){return{}}if(sr){return sr(t)}r.prototype=t;var e=new r;r.prototype=undefined;return e}}();const ar=nr;function cr(r,t){var e=-1,i=r.length;t||(t=Array(i));while(++e<i){t[e]=r[e]}return t}var dr=function(){try{var r=y(Object,"defineProperty");r({},"",{});return r}catch(r){}}();const lr=dr;function ur(r,t){var e=-1,i=r==null?0:r.length;while(++e<i){if(t(r[e],e,r)===false){break}}return r}function hr(r,t,e){if(t=="__proto__"&&lr){lr(r,t,{configurable:true,enumerable:true,value:e,writable:true})}else{r[t]=e}}var fr=Object.prototype;var gr=fr.hasOwnProperty;function wr(r,t,e){var i=r[t];if(!(gr.call(r,t)&&C(i,e))||e===undefined&&!(t in r)){hr(r,t,e)}}function br(r,t,e,i){var o=!e;e||(e={});var s=-1,n=t.length;while(++s<n){var a=t[s];var c=i?i(e[a],r[a],a,e,r):undefined;if(c===undefined){c=r[a]}if(o){hr(e,a,c)}else{wr(e,a,c)}}return e}function vr(r){var t=[];if(r!=null){for(var e in Object(r)){t.push(e)}}return t}var mr=Object.prototype;var pr=mr.hasOwnProperty;function kr(r){if(!k(r)){return vr(r)}var t=j(r),e=[];for(var i in r){if(!(i=="constructor"&&(t||!pr.call(r,i)))){e.push(i)}}return e}function yr(r){return x(r)?A(r,true):kr(r)}var Cr=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,jr=/^\w*$/;function xr(r,t){if(m(r)){return false}var e=typeof r;if(e=="number"||e=="symbol"||e=="boolean"||r==null||Z(r)){return true}return jr.test(r)||!Cr.test(r)||t!=null&&r in Object(t)}var Ar="Expected a function";function _r(r,t){if(typeof r!="function"||t!=null&&typeof t!="function"){throw new TypeError(Ar)}var e=function(){var i=arguments,o=t?t.apply(this,i):i[0],s=e.cache;if(s.has(o)){return s.get(o)}var n=r.apply(this,i);e.cache=s.set(o,n)||s;return n};e.cache=new(_r.Cache||_);return e}_r.Cache=_;var Rr=500;function Er(r){var t=_r(r,(function(r){if(e.size===Rr){e.clear()}return r}));var e=t.cache;return t}var Sr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;var Ir=/\\(\\)?/g;var Or=Er((function(r){var t=[];if(r.charCodeAt(0)===46){t.push("")}r.replace(Sr,(function(r,e,i,o){t.push(i?o.replace(Ir,"$1"):e||r)}));return t}));const Fr=Or;function Pr(r){return r==null?"":or(r)}function Dr(r,t){if(m(r)){return r}return xr(r,t)?[r]:Fr(Pr(r))}var Mr=1/0;function Gr(r){if(typeof r=="string"||Z(r)){return r}var t=r+"";return t=="0"&&1/r==-Mr?"-0":t}function Tr(r,t){t=Dr(t,r);var e=0,i=t.length;while(r!=null&&e<i){r=r[Gr(t[e++])]}return e&&e==i?r:undefined}function Wr(r,t,e){var i=r==null?undefined:Tr(r,t);return i===undefined?e:i}var Hr=R(Object.getPrototypeOf,Object);const Ur=Hr;function Nr(r,t){return r&&br(t,E(t),r)}function zr(r,t){return r&&br(t,yr(t),r)}var Br=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var Lr=Br&&typeof module=="object"&&module&&!module.nodeType&&module;var $r=Lr&&Lr.exports===Br;var Kr=$r?S.Buffer:undefined,Vr=Kr?Kr.allocUnsafe:undefined;function qr(r,t){if(t){return r.slice()}var e=r.length,i=Vr?Vr(e):new r.constructor(e);r.copy(i);return i}function Jr(r,t){return br(r,I(r),t)}var Qr=Object.getOwnPropertySymbols;var Xr=!Qr?O:function(r){var t=[];while(r){F(t,I(r));r=Ur(r)}return t};const Yr=Xr;function Zr(r,t){return br(r,Yr(r),t)}function rt(r){return P(r,yr,Yr)}var tt=Object.prototype;var et=tt.hasOwnProperty;function it(r){var t=r.length,e=new r.constructor(t);if(t&&typeof r[0]=="string"&&et.call(r,"index")){e.index=r.index;e.input=r.input}return e}function ot(r){var t=new r.constructor(r.byteLength);new D(t).set(new D(r));return t}function st(r,t){var e=t?ot(r.buffer):r.buffer;return new r.constructor(e,r.byteOffset,r.byteLength)}var nt=/\w*$/;function at(r){var t=new r.constructor(r.source,nt.exec(r));t.lastIndex=r.lastIndex;return t}var ct=p?p.prototype:undefined,dt=ct?ct.valueOf:undefined;function lt(r){return dt?Object(dt.call(r)):{}}function ut(r,t){var e=t?ot(r.buffer):r.buffer;return new r.constructor(e,r.byteOffset,r.length)}var ht="[object Boolean]",ft="[object Date]",gt="[object Map]",wt="[object Number]",bt="[object RegExp]",vt="[object Set]",mt="[object String]",pt="[object Symbol]";var kt="[object ArrayBuffer]",yt="[object DataView]",Ct="[object Float32Array]",jt="[object Float64Array]",xt="[object Int8Array]",At="[object Int16Array]",_t="[object Int32Array]",Rt="[object Uint8Array]",Et="[object Uint8ClampedArray]",St="[object Uint16Array]",It="[object Uint32Array]";function Ot(r,t,e){var i=r.constructor;switch(t){case kt:return ot(r);case ht:case ft:return new i(+r);case yt:return st(r,e);case Ct:case jt:case xt:case At:case _t:case Rt:case Et:case St:case It:return ut(r,e);case gt:return new i;case wt:case mt:return new i(r);case bt:return at(r);case vt:return new i;case pt:return lt(r)}}function Ft(r){return typeof r.constructor=="function"&&!j(r)?ar(Ur(r)):{}}var Pt="[object Map]";function Dt(r){return b(r)&&M(r)==Pt}var Mt=T&&T.isMap;var Gt=Mt?G(Mt):Dt;const Tt=Gt;var Wt="[object Set]";function Ht(r){return b(r)&&M(r)==Wt}var Ut=T&&T.isSet;var Nt=Ut?G(Ut):Ht;const zt=Nt;var Bt=1,Lt=2,$t=4;var Kt="[object Arguments]",Vt="[object Array]",qt="[object Boolean]",Jt="[object Date]",Qt="[object Error]",Xt="[object Function]",Yt="[object GeneratorFunction]",Zt="[object Map]",re="[object Number]",te="[object Object]",ee="[object RegExp]",ie="[object Set]",oe="[object String]",se="[object Symbol]",ne="[object WeakMap]";var ae="[object ArrayBuffer]",ce="[object DataView]",de="[object Float32Array]",le="[object Float64Array]",ue="[object Int8Array]",he="[object Int16Array]",fe="[object Int32Array]",ge="[object Uint8Array]",we="[object Uint8ClampedArray]",be="[object Uint16Array]",ve="[object Uint32Array]";var me={};me[Kt]=me[Vt]=me[ae]=me[ce]=me[qt]=me[Jt]=me[de]=me[le]=me[ue]=me[he]=me[fe]=me[Zt]=me[re]=me[te]=me[ee]=me[ie]=me[oe]=me[se]=me[ge]=me[we]=me[be]=me[ve]=true;me[Qt]=me[Xt]=me[ne]=false;function pe(r,t,e,i,o,s){var n,a=t&Bt,c=t&Lt,d=t&$t;if(e){n=o?e(r,i,o,s):e(r)}if(n!==undefined){return n}if(!k(r)){return r}var l=m(r);if(l){n=it(r);if(!a){return cr(r,n)}}else{var u=M(r),h=u==Xt||u==Yt;if(W(r)){return qr(r,a)}if(u==te||u==Kt||h&&!o){n=c||h?{}:Ft(r);if(!a){return c?Zr(r,zr(n,r)):Jr(r,Nr(n,r))}}else{if(!me[u]){return o?r:{}}n=Ot(r,u,a)}}s||(s=new H);var f=s.get(r);if(f){return f}s.set(r,n);if(zt(r)){r.forEach((function(i){n.add(pe(i,t,e,i,r,s))}))}else if(Tt(r)){r.forEach((function(i,o){n.set(o,pe(i,t,e,o,r,s))}))}var g=d?c?rt:U:c?yr:E;var w=l?undefined:g(r);ur(w||r,(function(i,o){if(w){o=i;i=r[o]}wr(n,o,pe(i,t,e,o,r,s))}));return n}var ke=1,ye=4;function Ce(r){return pe(r,ke|ye)}function je(r,t){const e=a(r);if(e==="UNKNOWN"){return[]}switch(e){case"UP_ARROW":return[{kind:"FocusCell",target:"up"}];case"DOWN_ARROW":return[{kind:"FocusCell",target:"down"}];case"LEFT_ARROW":return[{kind:"FocusCell",target:"left"}];case"RIGHT_ARROW":return[{kind:"FocusCell",target:"right"}];case"HOME":return[{kind:"FocusCell",target:"first_of_row"}];case"END":return[{kind:"FocusCell",target:"last_of_row"}];case"MAJ+SPACE":switch(t){case"grid_selection_single":case"grid_selection_multiple":return[{kind:"SelectRow",target:"one"}]}break;case"CTRL+A":switch(t){case"grid_selection_multiple":return[{kind:"SelectRow",target:"all"}]}break;case"CTRL+HOME":return[{kind:"FocusCell",target:"first_of_grid"}];case"CTRL+END":return[{kind:"FocusCell",target:"last_of_grid"}]}return[]}const xe=({checked:r,row:t,rowIndex:e,totalRows:i,onClick:o})=>{let s;return c("div",{class:`grid-radio ${r?"checked":""}`,onClick:r=>s.click()},c("input",{type:"radio",name:"selection","aria-setsize":i,"aria-posinset":e,tabindex:"-1",checked:r,"aria-checked":`${r}`,ref:r=>s=r,onClick:r=>o(t)}))};const Ae=":host{--wcs-grid-gap:0;--wcs-grid-vertical-align:middle;--wcs-grid-outline-color:var(--wcs-semantic-color-border-focus-base);--wcs-grid-cell-text-color:var(--wcs-semantic-color-text-secondary);--wcs-grid-cell-padding-horizontal:var(--wcs-semantic-spacing-large);--wcs-grid-cell-padding-vertical:var(--wcs-semantic-spacing-base);--wcs-grid-cell-border-bottom:none;--wcs-grid-cell-separator-border:none;--wcs-grid-first-cell-border-radius:0;--wcs-grid-last-cell-border-radius:0;--wcs-grid-highlight-color:var(--wcs-semantic-color-background-surface-accent-lighter);--wcs-grid-row-background-color:var(--wcs-semantic-color-background-surface-primary);--wcs-grid-row-odd-background-color:var(--wcs-grid-row-background-color);--wcs-grid-row-even-background-color:var(--wcs-semantic-color-background-surface-accent-lightest);--wcs-grid-header-background-color-default:var(--wcs-semantic-color-background-action-secondary-default);--wcs-grid-header-background-color-hover:var(--wcs-semantic-color-background-action-secondary-hover);--wcs-grid-header-background-color-press:var(--wcs-semantic-color-background-action-secondary-press);--wcs-grid-header-text-color:var(--wcs-semantic-color-text-primary);--wcs-grid-header-font-weight:var(--wcs-semantic-font-weight-heavy);--wcs-grid-header-font-size:var(--wcs-semantic-font-size-label-1);--wcs-grid-header-line-height:var(--wcs-primitive-font-line-height-140);--wcs-grid-header-padding-vertical:var(--wcs-semantic-spacing-base);--wcs-grid-header-padding-horizontal:var(--wcs-semantic-spacing-large);--wcs-grid-header-border-left:none;--wcs-grid-header-border-radius:0;--wcs-grid-header-border-bottom:solid var(--wcs-semantic-border-width-default) var(--wcs-semantic-color-border-secondary);--wcs-grid-header-transition-duration:var(--wcs-semantic-motion-duration-feedback-fast);--wcs-grid-first-header-background-color:var(--wcs-semantic-color-background-action-secondary-default);--wcs-grid-first-header-border-radius:0;--wcs-grid-last-header-border-radius:0;--wcs-grid-column-selection-width:calc(5 * var(--wcs-semantic-spacing-base));--wcs-grid-header-sort-arrow-color-default:var(--wcs-semantic-color-foreground-action-neutral-default);--wcs-grid-header-sort-arrow-color-hover:var(--wcs-semantic-color-foreground-action-neutral-hover);display:block}:host th{border-radius:var(--wcs-grid-first-header-border-radius);background-color:var(--wcs-grid-first-header-background-color)}:host ::slotted([slot=grid-column]:first-child){--wcs-grid-header-border-left:none}:host :host([selection]) ::slotted([slot=grid-column]:first-child){--wcs-component-grid-header-border-radius-first:0;--wcs-grid-header-border-left:var(--wcs-grid-header-border-left)}:host table{width:100%;border-collapse:collapse;border-spacing:var(--wcs-grid-gap)}:host table thead{border-bottom:var(--wcs-grid-header-border-bottom)}:host table tbody{vertical-align:var(--wcs-grid-vertical-align)}:host td{color:var(--wcs-grid-cell-text-color);margin:0;padding:var(--wcs-grid-cell-padding-vertical) var(--wcs-grid-cell-padding-horizontal)}:host td:focus-visible{outline:var(--wcs-semantic-border-width-large) dashed var(--wcs-grid-outline-color);outline-offset:0;border-radius:0.1rem}:host td:first-child{border-radius:var(--wcs-grid-first-cell-border-radius)}:host td:last-child{border-radius:var(--wcs-grid-last-cell-border-radius)}:host td:not(:first-child){border-left:var(--wcs-grid-cell-separator-border)}:host tr{background-color:var(--wcs-grid-row-background-color)}:host tr:nth-child(odd){background-color:var(--wcs-grid-row-odd-background-color, var(--wcs-grid-row-background-color))}:host tr:nth-child(even){background-color:var(--wcs-grid-row-even-background-color, var(--wcs-grid-row-background-color))}:host tr:not(:last-child) td{border-bottom:var(--wcs-grid-cell-border-bottom)}:host .wcs-grid-selection-column{padding:var(--wcs-grid-cell-padding-vertical) var(--wcs-grid-cell-padding-horizontal);width:var(--wcs-grid-column-selection-width);text-align:start}:host tr.selected{background-color:var(--wcs-grid-highlight-color)}:host .loading{text-align:center}";const _e=Ae;const Re='.grid-radio{--wcs-grid-radio-outline-color:var(--wcs-semantic-color-border-focus-base);--wcs-grid-radio-padding:calc(var(--wcs-semantic-size-base) / 4);--wcs-grid-radio-transition:var(--wcs-semantic-motion-duration-feedback-base);--wcs-grid-radio-border-color-default:var(--wcs-semantic-color-border-control-indicator-default);--wcs-grid-radio-border-color-selected:var(--wcs-semantic-color-border-control-indicator-selected);--wcs-grid-radio-border-color-hover:var(--wcs-semantic-color-border-control-indicator-hover);--wcs-grid-radio-border-color-disabled:var(--wcs-semantic-color-border-control-indicator-disabled);--wcs-grid-radio-background-color-default:transparent;--wcs-grid-radio-background-color-selected:var(--wcs-semantic-color-background-control-indicator-selected);--wcs-grid-radio-background-color-disabled:var(--wcs-semantic-color-background-control-indicator-disabled);--wcs-grid-radio-inner-border-color:white;width:fit-content;cursor:pointer;padding:var(--wcs-grid-radio-padding, 0.125rem);position:relative;}.grid-radio:has(input:focus-visible){outline:var(--wcs-semantic-border-width-large) dashed var(--wcs-grid-radio-outline-color);outline-offset:var(--wcs-semantic-spacing-small);border-radius:0.1rem}@supports not selector(:has(input:focus-visible)){.grid-radio:focus-within{outline:var(--wcs-semantic-border-width-large) dashed var(--wcs-grid-radio-outline-color);outline-offset:var(--wcs-semantic-spacing-small);border-radius:0.1rem}}.grid-radio input{position:absolute;opacity:0;height:1px;width:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.grid-radio::before{content:"";display:flex;border-radius:50%;border:2px solid var(--wcs-grid-radio-border-color-default);position:relative;width:1.125rem;height:1.125rem;box-sizing:border-box;background-color:var(--wcs-grid-radio-background-color-default);transition:var(--wcs-grid-radio-transition, 0.175s) ease-in-out}.grid-radio:hover::before{border-color:var(--wcs-grid-radio-border-color-hover)}.grid-radio.checked::before{border-color:var(--wcs-grid-radio-border-color-selected);background-color:var(--wcs-grid-radio-background-color-selected);outline:solid 2px var(--wcs-grid-radio-inner-border-color);outline-offset:-4px}';const Ee=Re;const Se=["title"];const Ie=r(class r extends t{constructor(){super();this.__registerHost();this.__attachShadow();this.wcsGridSelectionChange=e(this,"wcsGridSelectionChange",7);this.wcsGridAllSelectionChange=e(this,"wcsGridAllSelectionChange",7);this.wcsFocus=e(this,"wcsFocus",7);this.wcsBlur=e(this,"wcsBlur",7);this.inheritedAttributes={};this.serverMode=false;this.data=undefined;this.loading=undefined;this.selectionConfig="none";this.selectedItems=[];this.wcsGridPaginationId=undefined;this.rowIdPath=undefined;this.rowCssPartsFn=r=>null;this.columns=undefined;this.paginationEl=undefined;this.rows=[];this.cursorPosition={col:0,row:1}}onCursorPositionChange(r){this.getGridColumnsFromTemplate().forEach((t=>t.cursorPosition=r))}onDataChange(r){this.updateGridRows(r);this.refreshSort(false);this.updatePageIndex()}onSelectedItemsPropertyChange(r){this.updateSelectionWithValues(r)}onFocus(r){var t;(t=this.getElementToFocusAtCursorPosition())===null||t===void 0?void 0:t.focus();this.wcsFocus.emit(r)}onBlur(r){this.wcsBlur.emit(r)}async focusFirstCell(){var r;this.cursorPosition={col:this.selectionConfig==="none"?0:1,row:1};(r=this.getElementToFocusAtCursorPosition())===null||r===void 0?void 0:r.focus()}hasSelectionColumn(){return this.selectionConfig!=="none"}getElementToFocusAtCursorPosition(){var r,t;const e=(r=this.gridElementsWithCoordinates.find((r=>{var t,e;return r.col===((t=this.cursorPosition)===null||t===void 0?void 0:t.col)&&r.row===((e=this.cursorPosition)===null||e===void 0?void 0:e.row)})))===null||r===void 0?void 0:r.el;return this.hasSelectionColumn()?(t=e.querySelector('wcs-checkbox,input[type="radio"]'))!==null&&t!==void 0?t:e:e}moveCursorPosition(r,t){var e;this.cursorPosition={col:r==="first"?0:r==="last"?this.totalDisplayedColumnCount()-1:Math.min(Math.max(this.cursorPosition.col+r,0),this.totalDisplayedColumnCount()-1),row:t==="first"?0:t==="last"?this.getRowsForCurrentPage().length:Math.min(Math.max(this.cursorPosition.row+t,0),this.getRowsForCurrentPage().length)};this.handleCursorPositionOnEmptyTh();(e=this.getElementToFocusAtCursorPosition())===null||e===void 0?void 0:e.focus()}handleCursorPositionOnEmptyTh(){if(this.selectionConfig==="single"&&this.cursorPosition.col===0&&this.cursorPosition.row===0){this.cursorPosition={col:1,row:0}}}onHiddenColumnChange(){i(this);this.cursorPosition={col:0,row:1}}onKeyDown(r){var t;if(((t=document.activeElement)===null||t===void 0?void 0:t.tagName)==="WCS-GRID-PAGINATION"){return}let e;switch(this.selectionConfig){case"multiple":e="grid_selection_multiple";break;case"single":e="grid_selection_single";break;case"none":e="grid_no_selection";break}const i=je(r,e);if(i.length!=0){r.preventDefault()}for(const t of i){this.doActionFromKeyboardEventAssociatedAction(t,r)}}doActionFromKeyboardEventAssociatedAction(r,t){switch(r.kind){case"FocusCell":switch(r.target){case"up":this.moveCursorPosition(0,-1);break;case"down":this.moveCursorPosition(0,1);break;case"left":this.moveCursorPosition(-1,0);break;case"right":this.moveCursorPosition(1,0);break;case"first_of_row":this.moveCursorPosition("first",0);break;case"last_of_row":this.moveCursorPosition("last",0);break;case"first_of_grid":this.moveCursorPosition("first","first");break;case"last_of_grid":this.moveCursorPosition("last","last");break}case"SelectRow":switch(r.target){case"one":t.preventDefault();if(this.cursorPosition.row>0){this.onRowSelection(this.rows[this.cursorPosition.row-1])}break;case"all":this.selectAllRows();break}break;default:throw new Error("Internal error")}}onClick(r){const t=r.composedPath().filter((r=>["TD","TH"].includes(r.nodeName)))[0];if(!t)return;const e=this.gridElementsWithCoordinates.find((r=>r.el===t));this.cursorPosition={col:e.col,row:e.row}}updateSelectionWithValues(r){if(this.selectionConfig==="single"){this.rows.map((r=>r.selected=false));for(const t of this.rows){if(N(t.data,r)){t.selected=true;break}}}else if(this.selectionConfig==="multiple"){this.rows.map((r=>r.selected=false));for(const t of this.rows){if(r.find((r=>N(r,t.data)))){t.selected=true}}}this.rows=Ce(this.rows)}wcsGridRowToWcsGridRowData(r){return{selected:r.selected,page:r.page,data:r.data}}updateGridRows(r){const t=[];if(r&&this.columns){for(let e=0;e<r.length;e++){const i={uuid:X(),data:r[e],selected:false,cells:[]};let o=0;for(const t of this.columns){t.columnPosition=o+(this.hasSelectionColumn()?1:0);o++;i.cells.push({content:Wr(r[e],t.path),column:t,formatter:t.formatter})}t.push(i)}this.rows=t}}componentDidLoad(){this.columns=this.getGridColumnsFromTemplate();this.paginationEl=this.wcsGridPaginationId?document.getElementById(this.wcsGridPaginationId):this.getGridPaginationsFromTemplate()[0];this.updateGridRows(this.data);if(this.selectedItems){this.updateSelectionWithValues(this.selectedItems)}this.refreshSort(true);this.updatePageIndex()}componentWillLoad(){this.inheritedAttributes=Object.assign(Object.assign({},d(this.el)),l(this.el,Se))}async setAriaAttribute(r,t){u(this.nativeTable,r,t)}refreshSort(r){if(this.columns){const[t,...e]=this.columns.filter((r=>r.sortOrder!=="none"));if(t&&!this.serverMode){this.sortBy(t)}r&&this.disableSortOrderForColumns(e)}}disableSortOrderForColumns(r){r===null||r===void 0?void 0:r.forEach((r=>r.sortOrder="none"))}getGridColumnsFromTemplate(){const r=this.el.shadowRoot.querySelector('slot[name="grid-column"]');return r.assignedElements()}getGridPaginationsFromTemplate(){const r=this.el.shadowRoot.querySelector('slot[name="grid-pagination"]');return r.assignedElements()}get gridElementsWithCoordinates(){const r=[];if(this.selectionConfig==="multiple"){r.push({el:this.el.shadowRoot.querySelector("th"),row:0,col:0})}this.getGridColumnsFromTemplate().filter((r=>!r.hidden)).forEach(((t,e)=>{r.push({el:t.shadowRoot.querySelector("th"),row:0,col:e+(this.hasSelectionColumn()?1:0)})}));this.el.shadowRoot.querySelectorAll("td").forEach(((t,e)=>{r.push({el:t,row:1+Math.floor(e/this.totalDisplayedColumnCount()),col:e%this.totalDisplayedColumnCount()})}));return r}sortChangeEventHandler(r){if(r.detail.order==="none"||!this.columns)return;this.disableSortOrderForColumns(this.columns.filter((t=>t!==r.detail.column)));if(this.serverMode)return;this.sortBy(r.detail.column);this.updatePageIndex()}sortBy(r){if(r.sortFn){this.rows=Ce(this.rows).sort(((t,e)=>r.sortFn(t.data,e.data,r)*z(r.sortOrder)))}else{this.rows=Ce(this.rows).sort(((t,e)=>{const i=r.path;return(Wr(t.data,i)<Wr(e.data,i)?-1:Wr(t.data,i)>Wr(e.data,i)?1:0)*z(r.sortOrder)}))}}updatePageIndex(){var r;if(!this.serverMode&&this.paginationEl){if(!this.data||((r=this.data)===null||r===void 0?void 0:r.length)===0){this.paginationEl.itemsCount=0;this.paginationEl.pageCount=0;this.paginationEl.currentPage=-1;return}this.paginationEl.itemsCount=this.data.length;this.paginationEl.pageCount=Math.ceil(this.data.length/this.paginationEl.pageSize);if(this.paginationEl.pageCount<=1){this.paginationEl.currentPage=n.INDEX_FIRST_PAGE}else if(this.paginationEl.pageCount>0&&this.paginationEl.currentPage+1>this.paginationEl.pageCount){this.paginationEl.currentPage=this.paginationEl.pageCount-1}const t=Ce(this.rows);t.forEach(((r,t)=>r.page=Math.floor(t/this.paginationEl.pageSize)));this.rows=[...t]}}paginationChangeEventHandler(){this.onPaginationChange()}paginationChangeEventHandlerOutside(r){if(this.wcsGridPaginationId&&this.wcsGridPaginationId===r.target.id){this.onPaginationChange()}}onPaginationChange(){if(this.serverMode)return;this.updatePageIndex()}onRowSelection(r){if(this.selectionConfig==="single"){this.rows.filter((t=>t.uuid!==r.uuid)).map((r=>r.selected=false))}r.selected=!r.selected;if(this.selectionConfig!=="single"||r.selected){this.wcsGridSelectionChange.emit({selectedRows:this.selectedRows.map((r=>this.wcsGridRowToWcsGridRowData(r))),changedRow:this.wcsGridRowToWcsGridRowData(r)})}this.rows=Ce(this.rows)}get selectedRows(){return this.rows.filter((r=>r.selected))}selectAllRows(){const r=this.getRowsForCurrentPage();const t=!this.allRowsAreSelected();r.map((r=>r.selected=t));this.wcsGridAllSelectionChange.emit({rows:t?r.map((r=>this.wcsGridRowToWcsGridRowData(r))):[]});this.wcsGridSelectionChange.emit({selectedRows:this.selectedRows.map((r=>this.wcsGridRowToWcsGridRowData(r))),changedRow:"allCheckbox"});this.rows=Ce(this.rows)}allRowsAreSelected(){const r=this.getRowsForCurrentPage();return r.length>0&&r.filter((r=>r.selected)).length===r.length}getRowsForCurrentPage(){if(!this.serverMode&&this.paginationEl){return this.rows.filter((r=>r.page===this.paginationEl.currentPage))}return this.rows}renderSelectionColumn(r,t){var e,i,s,n;switch(this.selectionConfig){case"none":return;case"single":return o("td",{"aria-colindex":this.atLeastOneColumnHidden()?1:null,tabIndex:((e=this.cursorPosition)===null||e===void 0?void 0:e.col)===0&&t+1===((i=this.cursorPosition)===null||i===void 0?void 0:i.row)?0:-1},o(xe,{checked:r.selected,row:r,rowIndex:t+1,totalRows:this.rows.length,onClick:r=>{if(!r.selected){this.onRowSelection(r)}}}));case"multiple":return o("td",{"aria-colindex":this.atLeastOneColumnHidden()?1:null,tabIndex:((s=this.cursorPosition)===null||s===void 0?void 0:s.col)===0&&t+1===((n=this.cursorPosition)===null||n===void 0?void 0:n.row)?0:-1},o("wcs-checkbox",{tabIndex:-1,part:"row-checkbox",checked:r.selected,onWcsChange:this.onRowSelection.bind(this,r)}))}}getCellContent(r,t){if(t.formatter){return t.formatter(o,t.column,this.wcsGridRowToWcsGridRowData(r))}return t.content}totalColumnCount(){if(!this.columns){return 0}return this.columns.length+(this.hasSelectionColumn()?1:0)}totalDisplayedColumnCount(){var r,t;return(t=this.totalColumnCount()-((r=this.columns)===null||r===void 0?void 0:r.filter((r=>r.hidden)).length))!==null&&t!==void 0?t:0}atLeastOneColumnHidden(){return this.totalDisplayedColumnCount()!==this.totalColumnCount()}render(){var r,t,e,i;return o(s,{key:"6e42449e37f59f83499df9359733fd3fc3a1d93e"},o("table",Object.assign({key:"1cafcdf15955b01522441053d09891e388f03912",role:"grid",ref:r=>this.nativeTable=r,"aria-rowcount":!this.loading&&((r=this.rows)===null||r===void 0?void 0:r.length),"aria-colcount":!this.loading&&this.totalDisplayedColumnCount()},this.inheritedAttributes),o("thead",{key:"99d597b8e11ab46072008a8d8cbb801f8646fd4d"},o("tr",{key:"d2e912234b5837fedcc54f450181989c7e3b6cc1","aria-rowindex":"1"},this.selectionConfig==="none"?"":o("th",{class:"wcs-grid-selection-column"},this.selectionConfig==="single"?"":o("wcs-checkbox",{tabIndex:((t=this.cursorPosition)===null||t===void 0?void 0:t.col)===0&&((e=this.cursorPosition)===null||e===void 0?void 0:e.row)===0?0:-1,part:"all-rows-checkbox",checked:this.allRowsAreSelected(),onWcsChange:this.selectAllRows.bind(this)})),o("slot",{key:"15d0607ad6f51f15bfa511836ff89d64d84e2db4",name:"grid-column"}))),o("tbody",{key:"bd02a78ade9037a3f5ba47e08f1bd6a7184e5f63"},this.loading?o("tr",{"aria-busy":"true"},o("td",{colSpan:this.totalColumnCount(),class:"loading"},o("wcs-spinner",null))):(i=this.rows)===null||i===void 0?void 0:i.filter((r=>this.serverMode||!this.paginationEl||r.page===this.paginationEl.currentPage)).map(((r,t)=>this.renderRow(r,t))))),o("slot",{key:"fe6d559fb6ced1a3de3466012bea2cd9ef2a7d8a",name:"grid-pagination"}))}renderRow(r,t){var e,i;let s=0;return o("tr",{class:r.selected?"selected":"",part:(e=this.rowCssPartsWithoutEmptyList(r))===null||e===void 0?void 0:e.join(" "),"aria-selected":r.selected?"true":null,"aria-rowindex":t+2},this.renderSelectionColumn(r,t),(i=r.cells)===null||i===void 0?void 0:i.map(((e,i)=>{var n,a;if(e.column.hidden){s++;return}const c=i-s+1+(this.hasSelectionColumn()?1:0);const d=c-1===((n=this.cursorPosition)===null||n===void 0?void 0:n.col)&&t+1===((a=this.cursorPosition)===null||a===void 0?void 0:a.row);return e.column.customCells?o("td",{tabIndex:d?0:-1,"aria-colindex":this.atLeastOneColumnHidden()?c:null},o("slot",{name:e.column.id+"-"+Wr(r.data,this.rowIdPath)})):o("td",{tabIndex:d?0:-1,"aria-colindex":this.atLeastOneColumnHidden()?c:null,part:e.column.path+"-column"},this.getCellContent(r,e))})))}rowCssPartsWithoutEmptyList(r){const t=this.rowCssPartsFn(r);return(t===null||t===void 0?void 0:t.length)===0?null:t}get el(){return this}static get watchers(){return{cursorPosition:["onCursorPositionChange"],data:["onDataChange"],selectedItems:["onSelectedItemsPropertyChange"]}}static get style(){return _e+Ee}},[1,"wcs-grid",{serverMode:[516,"server-mode"],data:[16],loading:[516],selectionConfig:[1,"selection-config"],selectedItems:[8,"selected-items"],wcsGridPaginationId:[1,"wcs-grid-pagination-id"],rowIdPath:[1,"row-id-path"],rowCssPartsFn:[16],columns:[32],paginationEl:[32],rows:[32],cursorPosition:[32],focusFirstCell:[64],setAriaAttribute:[64]},[[0,"focus","onFocus"],[0,"blur","onBlur"],[0,"wcsHiddenChange","onHiddenColumnChange"],[0,"keydown","onKeyDown"],[1,"mousedown","onClick"],[0,"wcsSortChange","sortChangeEventHandler"],[0,"wcsGridPaginationChange","paginationChangeEventHandler"],[8,"wcsGridPaginationChange","paginationChangeEventHandlerOutside"]],{cursorPosition:["onCursorPositionChange"],data:["onDataChange"],selectedItems:["onSelectedItemsPropertyChange"]}]);function Oe(){if(typeof customElements==="undefined"){return}const r=["wcs-grid","wcs-button","wcs-checkbox","wcs-mat-icon","wcs-spinner"];r.forEach((r=>{switch(r){case"wcs-grid":if(!customElements.get(r)){customElements.define(r,Ie)}break;case"wcs-button":if(!customElements.get(r)){h()}break;case"wcs-checkbox":if(!customElements.get(r)){f()}break;case"wcs-mat-icon":if(!customElements.get(r)){g()}break;case"wcs-spinner":if(!customElements.get(r)){w()}break}}))}const Fe=Ie;const Pe=Oe;export{Fe as WcsGrid,Pe as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=wcs-grid.js.map
|