genesys-spark-components 3.13.1 → 3.14.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -0
- package/dist/cjs/en-dc1f49b7.js +30 -0
- package/dist/cjs/genesys-webcomponents.cjs.js +2 -2
- package/dist/cjs/gux-accordion-legacy.cjs.entry.js +2 -2
- package/dist/cjs/gux-accordion-section.cjs.entry.js +14 -3
- package/dist/cjs/gux-accordion.cjs.entry.js +2 -2
- package/dist/cjs/gux-action-button-legacy.cjs.entry.js +4 -4
- package/dist/cjs/gux-action-button.cjs.entry.js +4 -4
- package/dist/cjs/gux-action-item.cjs.entry.js +1 -1
- package/dist/cjs/gux-action-list-divider.cjs.entry.js +1 -1
- package/dist/cjs/gux-action-list-legacy.cjs.entry.js +2 -2
- package/dist/cjs/gux-action-toast.cjs.entry.js +2 -2
- package/dist/cjs/gux-advanced-dropdown.cjs.entry.js +5 -14
- package/dist/cjs/gux-all-row-select.cjs.entry.js +3 -3
- package/dist/cjs/gux-badge-beta.cjs.entry.js +3 -3
- package/dist/cjs/gux-breadcrumb-item.cjs.entry.js +1 -1
- package/dist/cjs/gux-breadcrumbs.cjs.entry.js +3 -3
- package/dist/cjs/gux-button-multi-legacy.cjs.entry.js +3 -3
- package/dist/cjs/gux-button-multi.cjs.entry.js +3 -3
- package/dist/cjs/gux-button-slot-beta.cjs.entry.js +2 -2
- package/dist/cjs/gux-button.cjs.entry.js +2 -2
- package/dist/cjs/gux-calendar.cjs.entry.js +3 -3
- package/dist/cjs/gux-card-beta.cjs.entry.js +2 -2
- package/dist/cjs/gux-chart-column-beta.cjs.entry.js +2 -2
- package/dist/cjs/gux-chart-donut-beta.cjs.entry.js +2 -2
- package/dist/cjs/gux-chart-line-beta.cjs.entry.js +2 -2
- package/dist/cjs/gux-chart-pie-beta.cjs.entry.js +2 -2
- package/dist/cjs/gux-chart-scatter-plot-beta.cjs.entry.js +2 -2
- package/dist/cjs/gux-color-select_2.cjs.entry.js +1 -1
- package/dist/cjs/gux-command-action.cjs.entry.js +1 -1
- package/dist/cjs/gux-command-palette-legacy.cjs.entry.js +3 -3
- package/dist/cjs/gux-content-search.cjs.entry.js +3 -3
- package/dist/cjs/gux-copy-to-clipboard-beta.cjs.entry.js +3 -3
- package/dist/cjs/gux-datepicker.cjs.entry.js +4 -4
- package/dist/cjs/gux-disclosure-button.cjs.entry.js +3 -3
- package/dist/cjs/gux-dismiss-button.cjs.entry.js +3 -3
- package/dist/cjs/gux-dropdown-legacy.cjs.entry.js +4 -4
- package/dist/cjs/gux-dropdown-multi-beta.cjs.entry.js +4 -4
- package/dist/cjs/gux-dropdown-multi-tag.cjs.entry.js +2 -2
- package/dist/cjs/gux-dropdown-option.cjs.entry.js +1 -1
- package/dist/cjs/gux-dropdown_3.cjs.entry.js +4 -4
- package/dist/cjs/gux-error-message-beta.cjs.entry.js +2 -2
- package/dist/cjs/gux-flyout-menu-beta.cjs.entry.js +2 -2
- package/dist/cjs/gux-form-field-checkbox.cjs.entry.js +4 -4
- package/dist/cjs/gux-form-field-color.cjs.entry.js +5 -5
- package/dist/cjs/gux-form-field-dropdown.cjs.entry.js +5 -5
- package/dist/cjs/gux-form-field-input-clear-button.cjs.entry.js +3 -3
- package/dist/cjs/{gux-form-field-label-abbb7396.js → gux-form-field-label-d5088b51.js} +1 -1
- package/dist/cjs/gux-form-field-legacy.cjs.entry.js +3 -3
- package/dist/cjs/gux-form-field-number.cjs.entry.js +6 -6
- package/dist/cjs/gux-form-field-radio.cjs.entry.js +4 -4
- package/dist/cjs/gux-form-field-range.cjs.entry.js +5 -5
- package/dist/cjs/gux-form-field-search.cjs.entry.js +5 -5
- package/dist/cjs/gux-form-field-select.cjs.entry.js +5 -5
- package/dist/cjs/gux-form-field-text-like.cjs.entry.js +5 -5
- package/dist/cjs/gux-form-field-textarea.cjs.entry.js +5 -5
- package/dist/cjs/{gux-form-field.service-21126f1d.js → gux-form-field.service-e38b2c2f.js} +1 -1
- package/dist/cjs/gux-icon.cjs.entry.js +2 -2
- package/dist/cjs/gux-input-checkbox_7.cjs.entry.js +2 -2
- package/dist/cjs/gux-input-search.cjs.entry.js +2 -2
- package/dist/cjs/gux-input-text-like.cjs.entry.js +2 -2
- package/dist/cjs/gux-list-divider-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-list-divider.cjs.entry.js +1 -1
- package/dist/cjs/gux-list-item-legacy_2.cjs.entry.js +2 -2
- package/dist/cjs/gux-list-item.cjs.entry.js +1 -1
- package/dist/cjs/gux-list.cjs.entry.js +2 -2
- package/dist/cjs/gux-listbox-multi.cjs.entry.js +3 -3
- package/dist/cjs/gux-loading-message-beta.cjs.entry.js +2 -2
- package/dist/cjs/gux-menu-option.cjs.entry.js +1 -1
- package/dist/cjs/gux-menu.cjs.entry.js +1 -1
- package/dist/cjs/gux-modal.cjs.entry.js +2 -2
- package/dist/cjs/gux-notification-toast.cjs.entry.js +2 -2
- package/dist/cjs/gux-option-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-option-multi.cjs.entry.js +1 -1
- package/dist/cjs/gux-page-loading-spinner.cjs.entry.js +2 -2
- package/dist/cjs/gux-pagination-beta.cjs.entry.js +2 -2
- package/dist/cjs/gux-pagination-buttons-beta_3.cjs.entry.js +2 -2
- package/dist/cjs/gux-pagination-buttons_3.cjs.entry.js +2 -2
- package/dist/cjs/gux-pagination-cursor.cjs.entry.js +3 -3
- package/dist/cjs/gux-pagination.cjs.entry.js +2 -2
- package/dist/cjs/gux-panel-frame-legacy.cjs.entry.js +2 -2
- package/dist/cjs/gux-popover-list.cjs.entry.js +3 -3
- package/dist/cjs/gux-popover.cjs.entry.js +3 -3
- package/dist/cjs/gux-popup.cjs.entry.js +1 -1
- package/dist/cjs/gux-radial-loading.cjs.entry.js +3 -3
- package/dist/cjs/gux-radial-progress.cjs.entry.js +2 -2
- package/dist/cjs/gux-rating.cjs.entry.js +2 -2
- package/dist/cjs/gux-row-select.cjs.entry.js +3 -3
- package/dist/cjs/gux-side-panel-button.cjs.entry.js +1 -1
- package/dist/cjs/gux-side-panel-legacy.cjs.entry.js +2 -2
- package/dist/cjs/gux-simple-toast.cjs.entry.js +2 -2
- package/dist/cjs/gux-sort-control.cjs.entry.js +98 -22
- package/dist/cjs/gux-submenu.cjs.entry.js +1 -1
- package/dist/cjs/gux-switch-item.cjs.entry.js +1 -1
- package/dist/cjs/gux-switch.cjs.entry.js +2 -2
- package/dist/cjs/gux-tab-advanced-list.cjs.entry.js +3 -3
- package/dist/cjs/gux-tab-advanced-panel.cjs.entry.js +1 -1
- package/dist/cjs/gux-tab-advanced.cjs.entry.js +2 -2
- package/dist/cjs/gux-tab-dropdown-option-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-tab-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-tab-list.cjs.entry.js +3 -3
- package/dist/cjs/gux-tab-panel.cjs.entry.js +1 -1
- package/dist/cjs/gux-tab.cjs.entry.js +1 -1
- package/dist/cjs/gux-table-beta.cjs.entry.js +4 -71
- package/dist/cjs/gux-table-select-menu.cjs.entry.js +3 -3
- package/dist/cjs/gux-table-select-popover.cjs.entry.js +2 -2
- package/dist/cjs/gux-tabs-advanced.cjs.entry.js +2 -2
- package/dist/cjs/gux-tabs-legacy.cjs.entry.js +3 -3
- package/dist/cjs/gux-tabs.cjs.entry.js +2 -2
- package/dist/cjs/gux-tag-beta.cjs.entry.js +3 -3
- package/dist/cjs/gux-text-highlight.cjs.entry.js +2 -2
- package/dist/cjs/gux-text-label-legacy.cjs.entry.js +2 -2
- package/dist/cjs/gux-time-picker-beta.cjs.entry.js +4 -4
- package/dist/cjs/gux-toggle-slider.cjs.entry.js +1 -1
- package/dist/cjs/gux-toggle.cjs.entry.js +3 -3
- package/dist/cjs/gux-tooltip_2.cjs.entry.js +3 -3
- package/dist/cjs/gux-visualization-beta.cjs.entry.js +3 -3
- package/dist/cjs/{index-0d3a5385.js → index-0a991c77.js} +1 -1
- package/dist/cjs/{index-525cfec0.js → index-33b1b88e.js} +0 -2
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/{on-click-outside-e0d28eff.js → on-click-outside-246a1eb3.js} +1 -1
- package/dist/cjs/{on-mutation-347de78d.js → on-mutation-2e4dd956.js} +1 -1
- package/dist/cjs/on-mutation-8f8a4460.js +13 -0
- package/dist/cjs/{usage-tracking-0403833a.js → usage-tracking-485ec37b.js} +1 -1
- package/dist/collection/components/beta/gux-table/gux-sort-control/gux-sort-control.css +32 -18
- package/dist/collection/components/beta/gux-table/gux-sort-control/gux-sort-control.js +144 -29
- package/dist/collection/components/beta/gux-table/gux-sort-control/tests/gux-sort-control.markup.js +82 -0
- package/dist/collection/components/beta/gux-table/gux-table.js +1 -68
- package/dist/collection/components/stable/gux-accordion/gux-accordion-section/gux-accordion-section.css +4 -0
- package/dist/collection/components/stable/gux-accordion/gux-accordion-section/gux-accordion-section.js +15 -4
- package/dist/deploy-info.json +3 -3
- package/dist/esm/en-66f138f8.js +28 -0
- package/dist/esm/genesys-webcomponents.js +2 -2
- package/dist/esm/gux-accordion-legacy.entry.js +2 -2
- package/dist/esm/gux-accordion-section.entry.js +14 -3
- package/dist/esm/gux-accordion.entry.js +2 -2
- package/dist/esm/gux-action-button-legacy.entry.js +4 -4
- package/dist/esm/gux-action-button.entry.js +4 -4
- package/dist/esm/gux-action-item.entry.js +1 -1
- package/dist/esm/gux-action-list-divider.entry.js +1 -1
- package/dist/esm/gux-action-list-legacy.entry.js +2 -2
- package/dist/esm/gux-action-toast.entry.js +2 -2
- package/dist/esm/gux-advanced-dropdown.entry.js +4 -13
- package/dist/esm/gux-all-row-select.entry.js +3 -3
- package/dist/esm/gux-badge-beta.entry.js +3 -3
- package/dist/esm/gux-breadcrumb-item.entry.js +1 -1
- package/dist/esm/gux-breadcrumbs.entry.js +3 -3
- package/dist/esm/gux-button-multi-legacy.entry.js +3 -3
- package/dist/esm/gux-button-multi.entry.js +3 -3
- package/dist/esm/gux-button-slot-beta.entry.js +2 -2
- package/dist/esm/gux-button.entry.js +2 -2
- package/dist/esm/gux-calendar.entry.js +3 -3
- package/dist/esm/gux-card-beta.entry.js +2 -2
- package/dist/esm/gux-chart-column-beta.entry.js +2 -2
- package/dist/esm/gux-chart-donut-beta.entry.js +2 -2
- package/dist/esm/gux-chart-line-beta.entry.js +2 -2
- package/dist/esm/gux-chart-pie-beta.entry.js +2 -2
- package/dist/esm/gux-chart-scatter-plot-beta.entry.js +2 -2
- package/dist/esm/gux-color-select_2.entry.js +1 -1
- package/dist/esm/gux-command-action.entry.js +1 -1
- package/dist/esm/gux-command-palette-legacy.entry.js +3 -3
- package/dist/esm/gux-content-search.entry.js +3 -3
- package/dist/esm/gux-copy-to-clipboard-beta.entry.js +3 -3
- package/dist/esm/gux-datepicker.entry.js +4 -4
- package/dist/esm/gux-disclosure-button.entry.js +3 -3
- package/dist/esm/gux-dismiss-button.entry.js +3 -3
- package/dist/esm/gux-dropdown-legacy.entry.js +4 -4
- package/dist/esm/gux-dropdown-multi-beta.entry.js +4 -4
- package/dist/esm/gux-dropdown-multi-tag.entry.js +2 -2
- package/dist/esm/gux-dropdown-option.entry.js +1 -1
- package/dist/esm/gux-dropdown_3.entry.js +4 -4
- package/dist/esm/gux-error-message-beta.entry.js +2 -2
- package/dist/esm/gux-flyout-menu-beta.entry.js +2 -2
- package/dist/esm/gux-form-field-checkbox.entry.js +4 -4
- package/dist/esm/gux-form-field-color.entry.js +5 -5
- package/dist/esm/gux-form-field-dropdown.entry.js +5 -5
- package/dist/esm/gux-form-field-input-clear-button.entry.js +3 -3
- package/dist/esm/{gux-form-field-label-1d0c1a02.js → gux-form-field-label-ac49a8be.js} +1 -1
- package/dist/esm/gux-form-field-legacy.entry.js +3 -3
- package/dist/esm/gux-form-field-number.entry.js +6 -6
- package/dist/esm/gux-form-field-radio.entry.js +4 -4
- package/dist/esm/gux-form-field-range.entry.js +5 -5
- package/dist/esm/gux-form-field-search.entry.js +5 -5
- package/dist/esm/gux-form-field-select.entry.js +5 -5
- package/dist/esm/gux-form-field-text-like.entry.js +5 -5
- package/dist/esm/gux-form-field-textarea.entry.js +5 -5
- package/dist/esm/{gux-form-field.service-4bfd6534.js → gux-form-field.service-4ad30790.js} +1 -1
- package/dist/esm/gux-icon.entry.js +2 -2
- package/dist/esm/gux-input-checkbox_7.entry.js +2 -2
- package/dist/esm/gux-input-search.entry.js +2 -2
- package/dist/esm/gux-input-text-like.entry.js +2 -2
- package/dist/esm/gux-list-divider-legacy.entry.js +1 -1
- package/dist/esm/gux-list-divider.entry.js +1 -1
- package/dist/esm/gux-list-item-legacy_2.entry.js +2 -2
- package/dist/esm/gux-list-item.entry.js +1 -1
- package/dist/esm/gux-list.entry.js +2 -2
- package/dist/esm/gux-listbox-multi.entry.js +3 -3
- package/dist/esm/gux-loading-message-beta.entry.js +2 -2
- package/dist/esm/gux-menu-option.entry.js +1 -1
- package/dist/esm/gux-menu.entry.js +1 -1
- package/dist/esm/gux-modal.entry.js +2 -2
- package/dist/esm/gux-notification-toast.entry.js +2 -2
- package/dist/esm/gux-option-legacy.entry.js +1 -1
- package/dist/esm/gux-option-multi.entry.js +1 -1
- package/dist/esm/gux-page-loading-spinner.entry.js +2 -2
- package/dist/esm/gux-pagination-beta.entry.js +2 -2
- package/dist/esm/gux-pagination-buttons-beta_3.entry.js +2 -2
- package/dist/esm/gux-pagination-buttons_3.entry.js +2 -2
- package/dist/esm/gux-pagination-cursor.entry.js +3 -3
- package/dist/esm/gux-pagination.entry.js +2 -2
- package/dist/esm/gux-panel-frame-legacy.entry.js +2 -2
- package/dist/esm/gux-popover-list.entry.js +3 -3
- package/dist/esm/gux-popover.entry.js +3 -3
- package/dist/esm/gux-popup.entry.js +1 -1
- package/dist/esm/gux-radial-loading.entry.js +3 -3
- package/dist/esm/gux-radial-progress.entry.js +2 -2
- package/dist/esm/gux-rating.entry.js +2 -2
- package/dist/esm/gux-row-select.entry.js +3 -3
- package/dist/esm/gux-side-panel-button.entry.js +1 -1
- package/dist/esm/gux-side-panel-legacy.entry.js +2 -2
- package/dist/esm/gux-simple-toast.entry.js +2 -2
- package/dist/esm/gux-sort-control.entry.js +98 -22
- package/dist/esm/gux-submenu.entry.js +1 -1
- package/dist/esm/gux-switch-item.entry.js +1 -1
- package/dist/esm/gux-switch.entry.js +2 -2
- package/dist/esm/gux-tab-advanced-list.entry.js +3 -3
- package/dist/esm/gux-tab-advanced-panel.entry.js +1 -1
- package/dist/esm/gux-tab-advanced.entry.js +2 -2
- package/dist/esm/gux-tab-dropdown-option-legacy.entry.js +1 -1
- package/dist/esm/gux-tab-legacy.entry.js +1 -1
- package/dist/esm/gux-tab-list.entry.js +3 -3
- package/dist/esm/gux-tab-panel.entry.js +1 -1
- package/dist/esm/gux-tab.entry.js +1 -1
- package/dist/esm/gux-table-beta.entry.js +4 -71
- package/dist/esm/gux-table-select-menu.entry.js +3 -3
- package/dist/esm/gux-table-select-popover.entry.js +2 -2
- package/dist/esm/gux-tabs-advanced.entry.js +2 -2
- package/dist/esm/gux-tabs-legacy.entry.js +3 -3
- package/dist/esm/gux-tabs.entry.js +2 -2
- package/dist/esm/gux-tag-beta.entry.js +3 -3
- package/dist/esm/gux-text-highlight.entry.js +2 -2
- package/dist/esm/gux-text-label-legacy.entry.js +2 -2
- package/dist/esm/gux-time-picker-beta.entry.js +4 -4
- package/dist/esm/gux-toggle-slider.entry.js +1 -1
- package/dist/esm/gux-toggle.entry.js +3 -3
- package/dist/esm/gux-tooltip_2.entry.js +3 -3
- package/dist/esm/gux-visualization-beta.entry.js +3 -3
- package/dist/esm/{index-b644eb47.js → index-017bdea1.js} +1 -1
- package/dist/esm/{index-d8b1bc53.js → index-76794476.js} +0 -2
- package/dist/esm/loader.js +2 -2
- package/dist/esm/{on-click-outside-9635bd3e.js → on-click-outside-ce30de20.js} +1 -1
- package/dist/esm/{on-mutation-1c2ba0a6.js → on-mutation-2e96b1b9.js} +1 -1
- package/dist/esm/on-mutation-d500715c.js +11 -0
- package/dist/esm/{usage-tracking-7c042fca.js → usage-tracking-8e40702f.js} +1 -1
- package/dist/genesys-webcomponents/genesys-webcomponents.css +1 -1
- package/dist/genesys-webcomponents/genesys-webcomponents.esm.js +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.en.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.es-es.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.es.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.it.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.ko.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.pl.json +1 -1
- package/dist/genesys-webcomponents/{p-5c2a8035.entry.js → p-01f68efb.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-cbba6750.entry.js → p-04e52486.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-9d24a3b0.entry.js → p-0500fe36.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-eea8d8b0.entry.js → p-0cbbff8d.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-0f2c83c3.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-aeaadb5d.entry.js → p-0f83ee43.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-b551f4c2.entry.js → p-1228f27f.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-c68d6c4d.entry.js → p-13574ebb.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-cdf55e17.entry.js → p-1504045c.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-dcad77c4.entry.js → p-1c1461e1.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-15a61bf9.entry.js → p-1c98aa57.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-7e7dd17c.entry.js → p-203a010e.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-e0660777.entry.js → p-2212a472.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-1075084c.entry.js → p-27cf3a0b.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-a6509d00.entry.js → p-2acf2470.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-9c30f1ae.entry.js → p-2ba83c10.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-b94b67a6.entry.js → p-2c1bbe1c.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-073ee3ba.entry.js → p-3302a7a9.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-02f88e5c.entry.js → p-33e6ef54.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-9154b32a.entry.js → p-34e05274.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-374c49e7.entry.js → p-352d1cb9.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-215dfc8c.entry.js → p-35445fa3.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-3c14e494.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-332b356f.entry.js → p-423366c2.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-7623d68f.entry.js → p-45d49edc.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-e2eac1a4.entry.js → p-47591c7f.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-14551b38.js → p-479cf5a2.js} +1 -1
- package/dist/genesys-webcomponents/{p-35578249.js → p-4b7056b2.js} +1 -1
- package/dist/genesys-webcomponents/{p-6fe4eeb9.entry.js → p-4ddf13c8.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-fc0d6b37.entry.js → p-4e00c36d.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-23c66ee4.entry.js → p-51d78377.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-5b9ed635.entry.js → p-53df4573.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-e292a8c7.entry.js → p-54cf4fc1.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-1173c715.entry.js → p-5674b67a.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-49b1912a.js → p-5ca81424.js} +1 -1
- package/dist/genesys-webcomponents/{p-54b89c5b.entry.js → p-5ccd07f6.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-1f1554e3.entry.js → p-5f8b46b5.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-97fff936.entry.js → p-60d19812.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-01928b29.entry.js → p-61ba2520.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-61fd6f64.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-0001b337.entry.js → p-65e3c3b9.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-b27f0bef.entry.js → p-66ca3da0.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-296b0d1e.entry.js → p-6717247e.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-9ed80cd5.entry.js → p-677ce668.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-e22552a0.entry.js → p-6aa62989.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-6f3534c8.entry.js → p-6c8c3cb2.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-d1c9081c.entry.js → p-707313b4.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-70f801fb.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-e220c05f.entry.js → p-72660222.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-7341343a.entry.js → p-74ab4e9c.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-49e17485.entry.js → p-75b3e648.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-35a87ae5.entry.js → p-75fe6ee6.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-8d38b686.entry.js → p-768bc10f.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-fee0493f.entry.js → p-7abebb37.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-17e7772d.entry.js → p-7c57956f.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-7c089705.entry.js → p-82301db5.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-128a0ad7.entry.js → p-825ee629.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-0b1bf180.entry.js → p-8288a4c9.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-5b13da7d.entry.js → p-82b556cb.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-bdf00b03.entry.js → p-83b3b17a.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-2136acf6.entry.js → p-85145b9f.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-2b773609.entry.js → p-887b1623.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-da1ea7b9.entry.js → p-8aad25ac.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-e4d4c203.entry.js → p-8dc34d7f.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-2c44ea0b.js → p-914acf6c.js} +1 -1
- package/dist/genesys-webcomponents/p-91d67883.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-db28e701.entry.js → p-92189326.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-2f870a86.entry.js → p-923a26f7.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-491b835c.entry.js → p-927052a1.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-93904222.js +1 -0
- package/dist/genesys-webcomponents/{p-356c4b29.entry.js → p-9b476241.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-dc50e458.entry.js → p-9da7e5d6.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-a085b143.js +2 -0
- package/dist/genesys-webcomponents/{p-536a4370.entry.js → p-a2d45029.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-7b2d7dc8.entry.js → p-a3db1240.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-361aa2c4.entry.js → p-a5211580.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-b225ce42.entry.js → p-a5c9fbed.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-5efd8056.entry.js → p-a6bbeb3c.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-da86164e.entry.js → p-a71cbccb.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-f0a3ed98.entry.js → p-a756448a.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-b1c99162.entry.js → p-a84bed57.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-afb54d23.js +1 -0
- package/dist/genesys-webcomponents/{p-9cf81b2b.entry.js → p-b33840d8.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-b33bebc7.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-835d322d.entry.js → p-b70c5e79.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-167e904b.entry.js → p-b9cb20fd.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-56fb2e8f.entry.js → p-bd1bcf4c.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-d33adb9d.entry.js → p-bea0187a.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-34613978.entry.js → p-bf593863.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-d380d7f4.entry.js → p-c1fe9ec2.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-f708f798.entry.js → p-c4bcfd16.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-f3f4c59f.entry.js → p-c87736cc.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-32caa12b.entry.js → p-caa0be5a.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-fab6cf59.entry.js → p-cb00dc25.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-1a5093b2.entry.js → p-cbbfe6fa.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-a41b086e.entry.js → p-cfd5c06d.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-2467f0c9.entry.js → p-d05be99b.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-d29d69f8.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-c282fb30.entry.js → p-d4ef998e.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-66117fa0.entry.js → p-d7a2f8dc.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-05403963.entry.js → p-d94e316d.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-a7dc7b57.entry.js → p-ddaec86a.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-94b591a5.entry.js → p-df0e989b.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-e6abb97f.entry.js → p-e2bc6510.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-e310debb.js +1 -0
- package/dist/genesys-webcomponents/{p-1ad06cfc.entry.js → p-e4e5aa67.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-35c9b84c.entry.js → p-e61558ed.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-1544d278.entry.js → p-e9b29165.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-392e1bd2.entry.js → p-ebf8f83f.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-be37f4ca.entry.js → p-ec95b4c2.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-1a95f804.entry.js → p-ede1de77.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-b30c5091.entry.js → p-ef4096e0.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-b2ccd287.entry.js → p-f0f7cf36.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-5647d38b.entry.js → p-f2a5fea9.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-d72ceff7.entry.js → p-f2b39a9e.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-f3c3aad3.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-5df04d6d.entry.js → p-f886e77a.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-f8870d02.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-1d29e85f.entry.js → p-fab71a07.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-2fb2e5b0.js → p-facb68c7.js} +1 -1
- package/dist/genesys-webcomponents/{p-71f30829.entry.js → p-fbd49114.entry.js} +1 -1
- package/dist/stencil-wrapper.js +1 -1
- package/dist/types/components/beta/gux-table/gux-sort-control/gux-sort-control.d.ts +17 -9
- package/dist/types/components/beta/gux-table/gux-sort-control/tests/gux-sort-control.markup.d.ts +23 -0
- package/dist/types/components/beta/gux-table/gux-table.d.ts +0 -9
- package/dist/types/components/beta/gux-table/gux-table.types.d.ts +2 -1
- package/dist/types/components/stable/gux-accordion/gux-accordion-section/gux-accordion-section.d.ts +7 -0
- package/dist/types/components/stable/gux-accordion/gux-accordion-section/gux-accordion-section.types.d.ts +1 -1
- package/dist/types/components.d.ts +20 -1
- package/package.json +1 -1
- package/dist/cjs/en-808055be.js +0 -26
- package/dist/esm/en-b5d2d35e.js +0 -24
- package/dist/genesys-webcomponents/p-051ca8d9.entry.js +0 -1
- package/dist/genesys-webcomponents/p-0d0ad98e.entry.js +0 -1
- package/dist/genesys-webcomponents/p-10fa6415.js +0 -1
- package/dist/genesys-webcomponents/p-2c133c22.entry.js +0 -1
- package/dist/genesys-webcomponents/p-50603b87.entry.js +0 -1
- package/dist/genesys-webcomponents/p-6fcc3130.entry.js +0 -1
- package/dist/genesys-webcomponents/p-803358d1.entry.js +0 -1
- package/dist/genesys-webcomponents/p-9135d771.entry.js +0 -1
- package/dist/genesys-webcomponents/p-b0c0bff1.entry.js +0 -1
- package/dist/genesys-webcomponents/p-cdf5cb56.js +0 -1
- package/dist/genesys-webcomponents/p-e571f861.js +0 -2
- package/dist/genesys-webcomponents/p-ec84cdc4.entry.js +0 -1
|
@@ -1,32 +1,46 @@
|
|
|
1
|
-
|
|
1
|
+
.gux-container {
|
|
2
2
|
position: absolute;
|
|
3
3
|
top: 0;
|
|
4
4
|
right: 0;
|
|
5
5
|
bottom: 0;
|
|
6
6
|
left: 0;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
7
|
+
display: flex;
|
|
8
|
+
flex-direction: row;
|
|
9
|
+
flex-wrap: nowrap;
|
|
10
|
+
align-content: flex-start;
|
|
11
|
+
align-items: center;
|
|
12
|
+
justify-content: flex-start;
|
|
13
|
+
border-top: 3px solid transparent;
|
|
14
|
+
border-bottom: 3px solid transparent;
|
|
15
|
+
}
|
|
16
|
+
.gux-container:focus-within {
|
|
17
|
+
border-bottom-color: #75a8ff;
|
|
18
|
+
}
|
|
19
|
+
.gux-container .gux-sort-button {
|
|
20
|
+
all: unset;
|
|
21
|
+
flex: 1 1 auto;
|
|
22
|
+
align-self: stretch;
|
|
23
|
+
order: 0;
|
|
17
24
|
cursor: pointer;
|
|
18
|
-
background: transparent;
|
|
19
|
-
border: none;
|
|
20
|
-
outline: none;
|
|
21
25
|
}
|
|
22
|
-
button gux-icon {
|
|
26
|
+
.gux-container .gux-sort-button .gux-sort-icon {
|
|
23
27
|
float: right;
|
|
24
28
|
width: 16px;
|
|
25
29
|
height: 16px;
|
|
26
|
-
|
|
30
|
+
margin: 8px;
|
|
31
|
+
color: #d7dce5;
|
|
32
|
+
}
|
|
33
|
+
.gux-container .gux-sort-button .gux-sort-icon.gux-left {
|
|
34
|
+
float: left;
|
|
35
|
+
}
|
|
36
|
+
.gux-container .gux-sort-button.gux-active .gux-sort-icon {
|
|
37
|
+
color: #2e394c;
|
|
27
38
|
}
|
|
28
|
-
|
|
29
|
-
|
|
39
|
+
.gux-container .gux-resize-spacer {
|
|
40
|
+
flex: 0 1 auto;
|
|
41
|
+
align-self: stretch;
|
|
42
|
+
order: 0;
|
|
43
|
+
width: 2px;
|
|
30
44
|
}
|
|
31
45
|
.gux-sr-only:not(:focus):not(:active) {
|
|
32
46
|
position: absolute;
|
|
@@ -1,52 +1,167 @@
|
|
|
1
|
-
import { Component,
|
|
1
|
+
import { Component, Element, Event, Prop, State, h } from '@stencil/core';
|
|
2
2
|
import { buildI18nForComponent } from '../../../../i18n';
|
|
3
|
+
import { trackComponent } from '../../../../usage-tracking';
|
|
4
|
+
import { getClosestElement } from '../../../../utils/dom/get-closest-element';
|
|
5
|
+
import { onMutation } from '../../../../utils/dom/on-mutation';
|
|
3
6
|
import tableResources from '../i18n/en.json';
|
|
4
7
|
export class GuxSortControl {
|
|
5
|
-
|
|
6
|
-
this.
|
|
7
|
-
this.
|
|
8
|
+
constructor() {
|
|
9
|
+
this.includeUnsorted = false;
|
|
10
|
+
this.active = false;
|
|
11
|
+
this.sort = 'none';
|
|
12
|
+
this.isLeftAlignIcon = false;
|
|
8
13
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
14
|
+
async componentWillLoad() {
|
|
15
|
+
trackComponent(this.root);
|
|
16
|
+
this.i18n = await buildI18nForComponent(this.root, tableResources, 'gux-table');
|
|
17
|
+
this.tableHeader = getClosestElement('th', this.root);
|
|
18
|
+
this.thObserver = onMutation(this.tableHeader, () => {
|
|
19
|
+
this.setState();
|
|
20
|
+
}, {
|
|
21
|
+
attributes: true,
|
|
22
|
+
childList: false,
|
|
23
|
+
subtree: false
|
|
24
|
+
});
|
|
25
|
+
this.setState();
|
|
13
26
|
}
|
|
14
|
-
|
|
15
|
-
|
|
27
|
+
disconnectedCallback() {
|
|
28
|
+
this.thObserver.disconnect();
|
|
16
29
|
}
|
|
17
|
-
|
|
18
|
-
this.
|
|
30
|
+
onClick() {
|
|
31
|
+
this.guxsortchanged.emit({
|
|
32
|
+
columnName: this.tableHeader.dataset.columnName,
|
|
33
|
+
sortDirection: this.getNextSort(this.sort)
|
|
34
|
+
});
|
|
19
35
|
}
|
|
20
|
-
|
|
21
|
-
this.
|
|
22
|
-
this.
|
|
36
|
+
setState() {
|
|
37
|
+
this.headerContent = this.tableHeader.textContent;
|
|
38
|
+
this.isLeftAlignIcon =
|
|
39
|
+
this.tableHeader.hasAttribute('data-cell-numeric') ||
|
|
40
|
+
this.tableHeader.hasAttribute('data-cell-action');
|
|
41
|
+
const ariaSort = this.tableHeader.getAttribute('aria-sort');
|
|
42
|
+
switch (ariaSort) {
|
|
43
|
+
case 'ascending':
|
|
44
|
+
case 'descending':
|
|
45
|
+
this.active = true;
|
|
46
|
+
this.sort = ariaSort;
|
|
47
|
+
break;
|
|
48
|
+
default:
|
|
49
|
+
this.active = false;
|
|
50
|
+
this.sort = 'none';
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
getIconName(colSortDirection) {
|
|
54
|
+
switch (colSortDirection) {
|
|
55
|
+
case 'descending':
|
|
56
|
+
return 'arrow-solid-up';
|
|
57
|
+
case 'ascending':
|
|
58
|
+
default:
|
|
59
|
+
return 'arrow-solid-down';
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
getNextSort(colSortDirection) {
|
|
63
|
+
switch (colSortDirection) {
|
|
64
|
+
case 'none':
|
|
65
|
+
return 'ascending';
|
|
66
|
+
case 'ascending':
|
|
67
|
+
return 'descending';
|
|
68
|
+
case 'descending':
|
|
69
|
+
default: {
|
|
70
|
+
if (this.includeUnsorted) {
|
|
71
|
+
return 'none';
|
|
72
|
+
}
|
|
73
|
+
return 'ascending';
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
getSRText(colSortDirection) {
|
|
78
|
+
switch (colSortDirection) {
|
|
79
|
+
case 'ascending':
|
|
80
|
+
return this.i18n('ascendingColumnSort', {
|
|
81
|
+
headerContent: this.headerContent
|
|
82
|
+
});
|
|
83
|
+
case 'descending': {
|
|
84
|
+
if (this.includeUnsorted) {
|
|
85
|
+
return this.i18n('descendingColumnSortIncludeUnsorted', {
|
|
86
|
+
headerContent: this.headerContent
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
return this.i18n('descendingColumnSort', {
|
|
90
|
+
headerContent: this.headerContent
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
default:
|
|
94
|
+
return this.i18n('noColumnSort', { headerContent: this.headerContent });
|
|
95
|
+
}
|
|
23
96
|
}
|
|
24
97
|
render() {
|
|
25
|
-
return (h(
|
|
26
|
-
h("button", {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
this.
|
|
98
|
+
return (h("div", { class: "gux-container" },
|
|
99
|
+
h("button", { class: {
|
|
100
|
+
'gux-sort-button': true,
|
|
101
|
+
'gux-active': this.active
|
|
102
|
+
}, type: "button", onClick: () => this.onClick() },
|
|
103
|
+
h("span", { class: "gux-sr-only" }, this.getSRText(this.sort)),
|
|
104
|
+
h("gux-icon", { class: {
|
|
105
|
+
'gux-sort-icon': true,
|
|
106
|
+
'gux-left': this.isLeftAlignIcon
|
|
107
|
+
}, "icon-name": this.getIconName(this.sort), decorative: true })),
|
|
108
|
+
h("div", { class: "gux-resize-spacer" })));
|
|
31
109
|
}
|
|
32
110
|
static get is() { return "gux-sort-control"; }
|
|
33
111
|
static get encapsulation() { return "shadow"; }
|
|
112
|
+
static get delegatesFocus() { return true; }
|
|
34
113
|
static get originalStyleUrls() { return {
|
|
35
114
|
"$": ["gux-sort-control.less"]
|
|
36
115
|
}; }
|
|
37
116
|
static get styleUrls() { return {
|
|
38
117
|
"$": ["gux-sort-control.css"]
|
|
39
118
|
}; }
|
|
119
|
+
static get properties() { return {
|
|
120
|
+
"includeUnsorted": {
|
|
121
|
+
"type": "boolean",
|
|
122
|
+
"mutable": false,
|
|
123
|
+
"complexType": {
|
|
124
|
+
"original": "boolean",
|
|
125
|
+
"resolved": "boolean",
|
|
126
|
+
"references": {}
|
|
127
|
+
},
|
|
128
|
+
"required": false,
|
|
129
|
+
"optional": false,
|
|
130
|
+
"docs": {
|
|
131
|
+
"tags": [],
|
|
132
|
+
"text": ""
|
|
133
|
+
},
|
|
134
|
+
"attribute": "include-unsorted",
|
|
135
|
+
"reflect": false,
|
|
136
|
+
"defaultValue": "false"
|
|
137
|
+
}
|
|
138
|
+
}; }
|
|
40
139
|
static get states() { return {
|
|
41
|
-
"
|
|
42
|
-
"
|
|
140
|
+
"headerContent": {},
|
|
141
|
+
"active": {},
|
|
142
|
+
"sort": {},
|
|
143
|
+
"isLeftAlignIcon": {}
|
|
43
144
|
}; }
|
|
44
|
-
static get
|
|
45
|
-
|
|
145
|
+
static get events() { return [{
|
|
146
|
+
"method": "guxsortchanged",
|
|
46
147
|
"name": "guxsortchanged",
|
|
47
|
-
"
|
|
48
|
-
"
|
|
49
|
-
"
|
|
50
|
-
"
|
|
148
|
+
"bubbles": true,
|
|
149
|
+
"cancelable": true,
|
|
150
|
+
"composed": true,
|
|
151
|
+
"docs": {
|
|
152
|
+
"tags": [],
|
|
153
|
+
"text": ""
|
|
154
|
+
},
|
|
155
|
+
"complexType": {
|
|
156
|
+
"original": "GuxTableSortState",
|
|
157
|
+
"resolved": "GuxTableSortState",
|
|
158
|
+
"references": {
|
|
159
|
+
"GuxTableSortState": {
|
|
160
|
+
"location": "import",
|
|
161
|
+
"path": "../gux-table.types"
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
51
165
|
}]; }
|
|
166
|
+
static get elementRef() { return "root"; }
|
|
52
167
|
}
|
package/dist/collection/components/beta/gux-table/gux-sort-control/tests/gux-sort-control.markup.js
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
export default {
|
|
2
|
+
notSorted: {
|
|
3
|
+
description: 'Not sorted',
|
|
4
|
+
html: `
|
|
5
|
+
<table>
|
|
6
|
+
<thead>
|
|
7
|
+
<tr>
|
|
8
|
+
<th data-column-name="c1">Column Header 1 <gux-sort-control /></th>
|
|
9
|
+
<th data-column-name="c2">Column Header 2</th>
|
|
10
|
+
</tr>
|
|
11
|
+
</thead>
|
|
12
|
+
<tbody>
|
|
13
|
+
<tr>
|
|
14
|
+
<td>Column 1, Row 1</td>
|
|
15
|
+
<td>Column 2, Row 1</td>
|
|
16
|
+
</tr>
|
|
17
|
+
</tbody>
|
|
18
|
+
</table>
|
|
19
|
+
`,
|
|
20
|
+
onclickSortDirection: 'ascending'
|
|
21
|
+
},
|
|
22
|
+
sortedAscending: {
|
|
23
|
+
description: 'Sorted ascending',
|
|
24
|
+
html: `
|
|
25
|
+
<table>
|
|
26
|
+
<thead>
|
|
27
|
+
<tr>
|
|
28
|
+
<th data-column-name="c1" aria-sort="ascending">Column Header 1 <gux-sort-control /></th>
|
|
29
|
+
<th data-column-name="c2">Column Header 2</th>
|
|
30
|
+
</tr>
|
|
31
|
+
</thead>
|
|
32
|
+
<tbody>
|
|
33
|
+
<tr>
|
|
34
|
+
<td>Column 1, Row 1</td>
|
|
35
|
+
<td>Column 2, Row 1</td>
|
|
36
|
+
</tr>
|
|
37
|
+
</tbody>
|
|
38
|
+
</table>
|
|
39
|
+
`,
|
|
40
|
+
onclickSortDirection: 'descending'
|
|
41
|
+
},
|
|
42
|
+
sortedDescending: {
|
|
43
|
+
description: 'Sorted descending',
|
|
44
|
+
html: `
|
|
45
|
+
<table>
|
|
46
|
+
<thead>
|
|
47
|
+
<tr>
|
|
48
|
+
<th data-column-name="c1" aria-sort="descending">Column Header 1 <gux-sort-control /></th>
|
|
49
|
+
<th data-column-name="c2">Column Header 2</th>
|
|
50
|
+
</tr>
|
|
51
|
+
</thead>
|
|
52
|
+
<tbody>
|
|
53
|
+
<tr>
|
|
54
|
+
<td>Column 1, Row 1</td>
|
|
55
|
+
<td>Column 2, Row 1</td>
|
|
56
|
+
</tr>
|
|
57
|
+
</tbody>
|
|
58
|
+
</table>
|
|
59
|
+
`,
|
|
60
|
+
onclickSortDirection: 'ascending'
|
|
61
|
+
},
|
|
62
|
+
sortedDescendingUnsortedAllowed: {
|
|
63
|
+
description: 'Sorted descending, unsorted allowed',
|
|
64
|
+
html: `
|
|
65
|
+
<table>
|
|
66
|
+
<thead>
|
|
67
|
+
<tr>
|
|
68
|
+
<th data-column-name="c1" aria-sort="descending">Column Header 1 <gux-sort-control include-unsorted/></th>
|
|
69
|
+
<th data-column-name="c2">Column Header 2</th>
|
|
70
|
+
</tr>
|
|
71
|
+
</thead>
|
|
72
|
+
<tbody>
|
|
73
|
+
<tr>
|
|
74
|
+
<td>Column 1, Row 1</td>
|
|
75
|
+
<td>Column 2, Row 1</td>
|
|
76
|
+
</tr>
|
|
77
|
+
</tbody>
|
|
78
|
+
</table>
|
|
79
|
+
`,
|
|
80
|
+
onclickSortDirection: 'none'
|
|
81
|
+
}
|
|
82
|
+
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, Host, Element, Event,
|
|
1
|
+
import { Component, Host, Element, Event, h, Listen, Method, Prop, readTask, forceUpdate, State } from '@stencil/core';
|
|
2
2
|
import { buildI18nForComponent } from '../../../i18n';
|
|
3
3
|
import { whenEventIsFrom } from '../../../utils/dom/when-event-is-from';
|
|
4
4
|
import { randomHTMLId } from '../../../utils/dom/random-html-id';
|
|
@@ -48,7 +48,6 @@ export class GuxTable {
|
|
|
48
48
|
if (this.resizableColumns) {
|
|
49
49
|
this.prepareResizableColumns();
|
|
50
50
|
}
|
|
51
|
-
this.prepareSortableColumns();
|
|
52
51
|
this.prepareSelectableRows();
|
|
53
52
|
this.checkHorizontalScroll();
|
|
54
53
|
this.checkVerticalScroll();
|
|
@@ -120,12 +119,6 @@ export class GuxTable {
|
|
|
120
119
|
get tableColumns() {
|
|
121
120
|
return Array.from(this.slottedTable.querySelectorAll('thead th'));
|
|
122
121
|
}
|
|
123
|
-
get tableColumnsDataSortable() {
|
|
124
|
-
return Array.from(this.slottedTable.querySelectorAll('thead th[data-sortable]'));
|
|
125
|
-
}
|
|
126
|
-
get sortControlCol() {
|
|
127
|
-
return Array.from(this.slottedTable.querySelectorAll('thead th gux-sort-control'));
|
|
128
|
-
}
|
|
129
122
|
get rowCheckboxes() {
|
|
130
123
|
return Array.from(this.slottedTable.querySelectorAll('tbody tr td gux-row-select'));
|
|
131
124
|
}
|
|
@@ -317,66 +310,6 @@ export class GuxTable {
|
|
|
317
310
|
getElementComputedWidth(element) {
|
|
318
311
|
return parseInt(window.getComputedStyle(element).getPropertyValue('width').split('px')[0], 10);
|
|
319
312
|
}
|
|
320
|
-
/******************************* Sortable Columns *******************************/
|
|
321
|
-
prepareSortableColumns() {
|
|
322
|
-
let sortControlSelected = [];
|
|
323
|
-
const sortControl = document.querySelector('gux-sort-control');
|
|
324
|
-
sortControl
|
|
325
|
-
? (sortControlSelected = this.sortControlCol)
|
|
326
|
-
: (sortControlSelected = this.tableColumnsDataSortable);
|
|
327
|
-
/* Only apply sortable styles if the data-sortable way of sorting is being used(ie the old way) and not the <gux-sort-control /> */
|
|
328
|
-
this.tableColumnsDataSortable.forEach((tableHeader) => {
|
|
329
|
-
if (tableHeader.hasAttribute('data-sortable')) {
|
|
330
|
-
this.prepareSortableColumnsStyles();
|
|
331
|
-
}
|
|
332
|
-
});
|
|
333
|
-
sortControlSelected.forEach((column) => {
|
|
334
|
-
column.onclick = (event) => {
|
|
335
|
-
if (!this.columnResizeHover) {
|
|
336
|
-
const button = event.target;
|
|
337
|
-
const columnElement = column.hasAttribute('data-sortable')
|
|
338
|
-
? event.currentTarget
|
|
339
|
-
: button.parentElement;
|
|
340
|
-
const sortDirection = columnElement.getAttribute('aria-sort') || '';
|
|
341
|
-
let newSortDirection = null;
|
|
342
|
-
switch (sortDirection) {
|
|
343
|
-
case '':
|
|
344
|
-
case 'descending':
|
|
345
|
-
newSortDirection = 'ascending';
|
|
346
|
-
break;
|
|
347
|
-
case 'ascending':
|
|
348
|
-
newSortDirection = 'descending';
|
|
349
|
-
break;
|
|
350
|
-
}
|
|
351
|
-
this.guxsortchanged.emit({
|
|
352
|
-
columnName: columnElement.dataset.columnName,
|
|
353
|
-
sortDirection: newSortDirection
|
|
354
|
-
});
|
|
355
|
-
}
|
|
356
|
-
};
|
|
357
|
-
});
|
|
358
|
-
}
|
|
359
|
-
/**
|
|
360
|
-
* Create sort styles if they don't exist. We can't make these static because we need to look up
|
|
361
|
-
* asset paths to generate the urls
|
|
362
|
-
*/
|
|
363
|
-
prepareSortableColumnsStyles() {
|
|
364
|
-
const styleId = 'gux-table-sortable-styles';
|
|
365
|
-
if (document.getElementById(styleId) == null) {
|
|
366
|
-
const styleElement = document.createElement('style');
|
|
367
|
-
styleElement.id = styleId;
|
|
368
|
-
const ascArrowIcon = getAssetPath(`./icons/arrow-solid-down.svg`);
|
|
369
|
-
const descArrowIcon = getAssetPath(`./icons/arrow-solid-up.svg`);
|
|
370
|
-
const sortAscContent = this.i18n('sortAsc');
|
|
371
|
-
const sortDescContent = this.i18n('sortDesc');
|
|
372
|
-
styleElement.innerHTML = `
|
|
373
|
-
th[data-sortable]:focus-within:after{content: "${sortAscContent}";background-image: url("${ascArrowIcon}");}
|
|
374
|
-
th[aria-sort="ascending"]:after{background-image:url("${ascArrowIcon}")!important;content:"${sortAscContent}"!important;}
|
|
375
|
-
th[aria-sort="descending"]:after{background-image:url("${descArrowIcon}")!important;content:"${sortDescContent}"!important;}
|
|
376
|
-
`;
|
|
377
|
-
document.querySelector('head').appendChild(styleElement);
|
|
378
|
-
}
|
|
379
|
-
}
|
|
380
313
|
setResizableColumnsStyles() {
|
|
381
314
|
const styleElement = document.getElementById(`${this.tableId}-resizable-styles`);
|
|
382
315
|
let columnsStyles = '';
|
|
@@ -9,7 +9,13 @@ import { logError } from '@utils/error/log-error';
|
|
|
9
9
|
export class GuxAccordionSection {
|
|
10
10
|
constructor() {
|
|
11
11
|
this.sectionId = randomHTMLId('gux-accordion-section');
|
|
12
|
+
/**
|
|
13
|
+
* Position of the arrow chevron icon. Position can be 'default' or 'before-text'. 'beside-text' is deprecated and will be removed in v4.
|
|
14
|
+
*/
|
|
12
15
|
this.arrowPosition = 'default';
|
|
16
|
+
/**
|
|
17
|
+
* The content layout used in the accordion section. 'text' layout provides default padding, 'custom' removes default padding.
|
|
18
|
+
*/
|
|
13
19
|
this.contentLayout = 'text';
|
|
14
20
|
this.open = false;
|
|
15
21
|
this.disabled = false;
|
|
@@ -23,6 +29,10 @@ export class GuxAccordionSection {
|
|
|
23
29
|
toggle() {
|
|
24
30
|
this.open = !this.open;
|
|
25
31
|
}
|
|
32
|
+
isArrowPositionBeforeText() {
|
|
33
|
+
return this.arrowPosition === 'before-text';
|
|
34
|
+
}
|
|
35
|
+
// arrow position 'beside-text' will be removed in v4 (COMUI-1128)
|
|
26
36
|
isArrowPositionedBesideText() {
|
|
27
37
|
return this.arrowPosition === 'beside-text';
|
|
28
38
|
}
|
|
@@ -50,7 +60,8 @@ export class GuxAccordionSection {
|
|
|
50
60
|
h("slot", { onSlotchange: () => this.handleSlotChange('subheader'), name: "subheader" })),
|
|
51
61
|
h("div", { class: {
|
|
52
62
|
'gux-header-icon': true,
|
|
53
|
-
'gux-expanded': this.open
|
|
63
|
+
'gux-expanded': this.open,
|
|
64
|
+
'gux-arrow-position-before-text': this.isArrowPositionBeforeText()
|
|
54
65
|
} },
|
|
55
66
|
h("gux-icon", { decorative: true, "icon-name": "chevron-small-down" }))),
|
|
56
67
|
h("div", { id: this.sectionId, class: {
|
|
@@ -74,7 +85,7 @@ export class GuxAccordionSection {
|
|
|
74
85
|
"mutable": false,
|
|
75
86
|
"complexType": {
|
|
76
87
|
"original": "GuxAccordionSectionArrowPosition",
|
|
77
|
-
"resolved": "\"beside-text\" | \"default\"",
|
|
88
|
+
"resolved": "\"before-text\" | \"beside-text\" | \"default\"",
|
|
78
89
|
"references": {
|
|
79
90
|
"GuxAccordionSectionArrowPosition": {
|
|
80
91
|
"location": "import",
|
|
@@ -86,7 +97,7 @@ export class GuxAccordionSection {
|
|
|
86
97
|
"optional": false,
|
|
87
98
|
"docs": {
|
|
88
99
|
"tags": [],
|
|
89
|
-
"text": ""
|
|
100
|
+
"text": "Position of the arrow chevron icon. Position can be 'default' or 'before-text'. 'beside-text' is deprecated and will be removed in v4."
|
|
90
101
|
},
|
|
91
102
|
"attribute": "arrow-position",
|
|
92
103
|
"reflect": false,
|
|
@@ -109,7 +120,7 @@ export class GuxAccordionSection {
|
|
|
109
120
|
"optional": false,
|
|
110
121
|
"docs": {
|
|
111
122
|
"tags": [],
|
|
112
|
-
"text": ""
|
|
123
|
+
"text": "The content layout used in the accordion section. 'text' layout provides default padding, 'custom' removes default padding."
|
|
113
124
|
},
|
|
114
125
|
"attribute": "content-layout",
|
|
115
126
|
"reflect": false,
|
package/dist/deploy-info.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "spark-components",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.14.1",
|
|
4
4
|
"ecosystem": "pc",
|
|
5
5
|
"team": "Core UI",
|
|
6
6
|
"indexFiles": [],
|
|
7
|
-
"build": "
|
|
8
|
-
"buildDate": "2022-
|
|
7
|
+
"build": "105",
|
|
8
|
+
"buildDate": "2022-08-02T09:19:57.058384Z"
|
|
9
9
|
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
const emptyMessage = "No data available";
|
|
2
|
+
const scrollLeft = "Scroll Left";
|
|
3
|
+
const scrollRight = "Scroll Right";
|
|
4
|
+
const selectAllTableRows = "Select All Table Rows";
|
|
5
|
+
const selectTableRow = "Select Table Row";
|
|
6
|
+
const sortAsc = "Sorted Ascending";
|
|
7
|
+
const sortDesc = "Sorted Descending";
|
|
8
|
+
const tableOptions = "Table Options";
|
|
9
|
+
const noColumnSort = "{headerContent}. The table is not currently sorted by this column. Click the column header to sort the table by this column in ascending order";
|
|
10
|
+
const ascendingColumnSort = "{headerContent}. The table is currently sorted by this column in ascending order. Click the column header to sort the table by this column in descending order";
|
|
11
|
+
const descendingColumnSort = "{headerContent}. The table is currently sorted by this column in descending order. Click the column header to sort the table by this column in ascending order";
|
|
12
|
+
const descendingColumnSortIncludeUnsorted = "{headerContent}. The table is currently sorted by this column in descending order. Click the column header to not sort the table by this column";
|
|
13
|
+
const tableResources = {
|
|
14
|
+
emptyMessage: emptyMessage,
|
|
15
|
+
scrollLeft: scrollLeft,
|
|
16
|
+
scrollRight: scrollRight,
|
|
17
|
+
selectAllTableRows: selectAllTableRows,
|
|
18
|
+
selectTableRow: selectTableRow,
|
|
19
|
+
sortAsc: sortAsc,
|
|
20
|
+
sortDesc: sortDesc,
|
|
21
|
+
tableOptions: tableOptions,
|
|
22
|
+
noColumnSort: noColumnSort,
|
|
23
|
+
ascendingColumnSort: ascendingColumnSort,
|
|
24
|
+
descendingColumnSort: descendingColumnSort,
|
|
25
|
+
descendingColumnSortIncludeUnsorted: descendingColumnSortIncludeUnsorted
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
export { tableResources as t };
|