genesys-spark-components 3.4.2 → 3.6.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/CHANGELOG.md +22 -0
- package/dist/cjs/genesys-webcomponents.cjs.js +1 -1
- package/dist/cjs/gux-accordion-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-accordion.cjs.entry.js +1 -1
- package/dist/cjs/gux-action-button-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-action-button.cjs.entry.js +1 -1
- package/dist/cjs/gux-action-list-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-action-toast.cjs.entry.js +1 -1
- package/dist/cjs/gux-advanced-dropdown.cjs.entry.js +1 -1
- package/dist/cjs/gux-badge-beta.cjs.entry.js +1 -1
- package/dist/cjs/gux-breadcrumbs.cjs.entry.js +1 -1
- package/dist/cjs/gux-button-multi-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-button-multi.cjs.entry.js +1 -1
- package/dist/cjs/gux-button-slot-beta.cjs.entry.js +1 -1
- package/dist/cjs/gux-button.cjs.entry.js +1 -1
- package/dist/cjs/gux-calendar.cjs.entry.js +1 -1
- package/dist/cjs/gux-card-beta.cjs.entry.js +1 -1
- package/dist/cjs/gux-chart-column-beta.cjs.entry.js +1 -1
- package/dist/cjs/gux-chart-donut-beta.cjs.entry.js +1 -1
- package/dist/cjs/gux-chart-line-beta.cjs.entry.js +1 -1
- package/dist/cjs/gux-chart-pie-beta.cjs.entry.js +1 -1
- package/dist/cjs/gux-chart-scatter-plot-beta.cjs.entry.js +1 -1
- package/dist/cjs/gux-command-palette-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-content-search.cjs.entry.js +1 -1
- package/dist/cjs/gux-copy-to-clipboard-beta.cjs.entry.js +1 -1
- package/dist/cjs/gux-datepicker.cjs.entry.js +1 -1
- package/dist/cjs/gux-disclosure-button.cjs.entry.js +1 -1
- package/dist/cjs/gux-dismiss-button.cjs.entry.js +1 -1
- package/dist/cjs/gux-dropdown-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-dropdown-multi-beta.cjs.entry.js +297 -0
- package/dist/cjs/gux-dropdown-multi-tag.cjs.entry.js +58 -0
- package/dist/cjs/gux-dropdown_3.cjs.entry.js +27 -175
- package/dist/cjs/gux-error-message-beta.cjs.entry.js +1 -1
- package/dist/cjs/gux-flyout-menu-beta.cjs.entry.js +1 -1
- package/dist/cjs/gux-form-field-checkbox.cjs.entry.js +6 -6
- package/dist/cjs/gux-form-field-color.cjs.entry.js +7 -7
- package/dist/cjs/gux-form-field-dropdown.cjs.entry.js +91 -0
- package/dist/cjs/gux-form-field-input-clear-button.cjs.entry.js +1 -1
- package/dist/cjs/gux-form-field-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-form-field-number.cjs.entry.js +9 -9
- package/dist/cjs/gux-form-field-radio.cjs.entry.js +6 -6
- package/dist/cjs/gux-form-field-range.cjs.entry.js +7 -7
- package/dist/cjs/gux-form-field-search.cjs.entry.js +9 -9
- package/dist/cjs/gux-form-field-select.cjs.entry.js +7 -7
- package/dist/cjs/gux-form-field-text-like.cjs.entry.js +9 -9
- package/dist/cjs/gux-form-field-textarea.cjs.entry.js +7 -7
- package/dist/cjs/{gux-form-field.servce-e9451c50.js → gux-form-field.service-e38b2c2f.js} +0 -0
- package/dist/cjs/gux-icon.cjs.entry.js +1 -1
- package/dist/cjs/gux-list-item-legacy_2.cjs.entry.js +1 -1
- package/dist/cjs/gux-list.cjs.entry.js +1 -1
- package/dist/cjs/gux-listbox-multi.cjs.entry.js +159 -0
- package/dist/cjs/gux-listbox.service-d394da79.js +161 -0
- package/dist/cjs/gux-modal.cjs.entry.js +1 -1
- package/dist/cjs/gux-notification-toast.cjs.entry.js +1 -1
- package/dist/cjs/gux-option-multi.cjs.entry.js +47 -0
- package/dist/cjs/gux-page-loading-spinner.cjs.entry.js +1 -1
- package/dist/cjs/gux-pagination-beta.cjs.entry.js +1 -1
- package/dist/cjs/gux-pagination-cursor.cjs.entry.js +1 -1
- package/dist/cjs/gux-pagination.cjs.entry.js +1 -1
- package/dist/cjs/gux-panel-frame-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-popover-list.cjs.entry.js +1 -1
- package/dist/cjs/gux-popover.cjs.entry.js +1 -1
- package/dist/cjs/gux-radial-loading.cjs.entry.js +1 -1
- package/dist/cjs/gux-radial-progress.cjs.entry.js +1 -1
- package/dist/cjs/gux-rating.cjs.entry.js +1 -1
- package/dist/cjs/gux-row-select.cjs.entry.js +1 -1
- package/dist/cjs/gux-side-panel-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-simple-toast.cjs.entry.js +1 -1
- package/dist/cjs/gux-switch.cjs.entry.js +1 -1
- package/dist/cjs/gux-table-beta.cjs.entry.js +8 -5
- package/dist/cjs/gux-tabs-advanced.cjs.entry.js +1 -1
- package/dist/cjs/gux-tabs-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-tabs.cjs.entry.js +1 -1
- package/dist/cjs/gux-tag-beta.cjs.entry.js +1 -1
- package/dist/cjs/gux-text-highlight.cjs.entry.js +1 -1
- package/dist/cjs/gux-text-label-legacy.cjs.entry.js +1 -1
- package/dist/cjs/gux-time-picker-beta.cjs.entry.js +1 -1
- package/dist/cjs/gux-toggle.cjs.entry.js +1 -1
- package/dist/cjs/gux-tooltip_2.cjs.entry.js +1 -1
- package/dist/cjs/gux-visualization-beta.cjs.entry.js +1 -1
- package/dist/cjs/index-33b1b88e.js +442 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{usage-tracking-dad68b30.js → usage-tracking-f3cc3f84.js} +1 -1
- package/dist/collection/collection-manifest.json +5 -0
- package/dist/collection/components/beta/gux-dropdown-multi/gux-dropdown-multi-tag/gux-dropdown-multi-tag.css +50 -0
- package/dist/collection/components/beta/gux-dropdown-multi/gux-dropdown-multi-tag/gux-dropdown-multi-tag.js +116 -0
- package/dist/collection/components/beta/gux-dropdown-multi/gux-dropdown-multi.css +151 -0
- package/dist/collection/components/beta/gux-dropdown-multi/gux-dropdown-multi.js +458 -0
- package/dist/collection/components/beta/gux-table/gux-row-select/gux-row-select.js +18 -1
- package/dist/collection/components/beta/gux-table/gux-table.js +7 -4
- package/dist/collection/components/beta/gux-tag/gux-tag.js +0 -17
- package/dist/collection/components/stable/gux-dropdown/gux-dropdown.js +19 -0
- package/dist/collection/components/stable/gux-form-field/components/gux-form-field-checkbox/gux-form-field-checkbox.js +1 -1
- package/dist/collection/components/stable/gux-form-field/components/gux-form-field-color/gux-form-field-color.js +1 -1
- package/dist/collection/components/stable/gux-form-field/components/gux-form-field-dropdown/gux-form-field-dropdown.css +153 -0
- package/dist/collection/components/stable/gux-form-field/components/gux-form-field-dropdown/gux-form-field-dropdown.js +126 -0
- package/dist/collection/components/stable/gux-form-field/components/gux-form-field-number/gux-form-field-number.js +1 -1
- package/dist/collection/components/stable/gux-form-field/components/gux-form-field-radio/gux-form-field-radio.js +1 -1
- package/dist/collection/components/stable/gux-form-field/components/gux-form-field-range/gux-form-field-range.js +1 -1
- package/dist/collection/components/stable/gux-form-field/components/gux-form-field-search/gux-form-field-search.js +1 -1
- package/dist/collection/components/stable/gux-form-field/components/gux-form-field-select/gux-form-field-select.js +1 -1
- package/dist/collection/components/stable/gux-form-field/components/gux-form-field-text-like/gux-form-field-text-like.js +1 -1
- package/dist/collection/components/stable/gux-form-field/components/gux-form-field-textarea/gux-form-field-textarea.js +1 -1
- package/dist/collection/components/stable/gux-form-field/{gux-form-field.servce.js → gux-form-field.service.js} +0 -0
- package/dist/collection/components/stable/gux-listbox/gux-listbox.js +7 -9
- package/dist/collection/components/stable/gux-listbox-multi/gux-listbox-multi.css +23 -0
- package/dist/collection/components/stable/gux-listbox-multi/gux-listbox-multi.js +269 -0
- package/dist/collection/components/stable/gux-listbox-multi/gux-option-multi/gux-option-multi.css +45 -0
- package/dist/collection/components/stable/gux-listbox-multi/gux-option-multi/gux-option-multi.js +167 -0
- package/dist/deploy-info.json +3 -3
- package/dist/esm/genesys-webcomponents.js +1 -1
- package/dist/esm/gux-accordion-legacy.entry.js +1 -1
- package/dist/esm/gux-accordion.entry.js +1 -1
- package/dist/esm/gux-action-button-legacy.entry.js +1 -1
- package/dist/esm/gux-action-button.entry.js +1 -1
- package/dist/esm/gux-action-list-legacy.entry.js +1 -1
- package/dist/esm/gux-action-toast.entry.js +1 -1
- package/dist/esm/gux-advanced-dropdown.entry.js +1 -1
- package/dist/esm/gux-badge-beta.entry.js +1 -1
- package/dist/esm/gux-breadcrumbs.entry.js +1 -1
- package/dist/esm/gux-button-multi-legacy.entry.js +1 -1
- package/dist/esm/gux-button-multi.entry.js +1 -1
- package/dist/esm/gux-button-slot-beta.entry.js +1 -1
- package/dist/esm/gux-button.entry.js +1 -1
- package/dist/esm/gux-calendar.entry.js +1 -1
- package/dist/esm/gux-card-beta.entry.js +1 -1
- package/dist/esm/gux-chart-column-beta.entry.js +1 -1
- package/dist/esm/gux-chart-donut-beta.entry.js +1 -1
- package/dist/esm/gux-chart-line-beta.entry.js +1 -1
- package/dist/esm/gux-chart-pie-beta.entry.js +1 -1
- package/dist/esm/gux-chart-scatter-plot-beta.entry.js +1 -1
- package/dist/esm/gux-command-palette-legacy.entry.js +1 -1
- package/dist/esm/gux-content-search.entry.js +1 -1
- package/dist/esm/gux-copy-to-clipboard-beta.entry.js +1 -1
- package/dist/esm/gux-datepicker.entry.js +1 -1
- package/dist/esm/gux-disclosure-button.entry.js +1 -1
- package/dist/esm/gux-dismiss-button.entry.js +1 -1
- package/dist/esm/gux-dropdown-legacy.entry.js +1 -1
- package/dist/esm/gux-dropdown-multi-beta.entry.js +293 -0
- package/dist/esm/gux-dropdown-multi-tag.entry.js +54 -0
- package/dist/esm/gux-dropdown_3.entry.js +9 -157
- package/dist/esm/gux-error-message-beta.entry.js +1 -1
- package/dist/esm/gux-flyout-menu-beta.entry.js +1 -1
- package/dist/esm/gux-form-field-checkbox.entry.js +2 -2
- package/dist/esm/gux-form-field-color.entry.js +2 -2
- package/dist/esm/gux-form-field-dropdown.entry.js +87 -0
- package/dist/esm/gux-form-field-input-clear-button.entry.js +1 -1
- package/dist/esm/gux-form-field-legacy.entry.js +1 -1
- package/dist/esm/gux-form-field-number.entry.js +2 -2
- package/dist/esm/gux-form-field-radio.entry.js +2 -2
- package/dist/esm/gux-form-field-range.entry.js +2 -2
- package/dist/esm/gux-form-field-search.entry.js +2 -2
- package/dist/esm/gux-form-field-select.entry.js +2 -2
- package/dist/esm/gux-form-field-text-like.entry.js +2 -2
- package/dist/esm/gux-form-field-textarea.entry.js +2 -2
- package/dist/esm/{gux-form-field.servce-971609e2.js → gux-form-field.service-4ad30790.js} +0 -0
- package/dist/esm/gux-icon.entry.js +1 -1
- package/dist/esm/gux-list-item-legacy_2.entry.js +1 -1
- package/dist/esm/gux-list.entry.js +1 -1
- package/dist/esm/gux-listbox-multi.entry.js +155 -0
- package/dist/esm/gux-listbox.service-3541a2f7.js +148 -0
- package/dist/esm/gux-modal.entry.js +1 -1
- package/dist/esm/gux-notification-toast.entry.js +1 -1
- package/dist/esm/gux-option-multi.entry.js +43 -0
- package/dist/esm/gux-page-loading-spinner.entry.js +1 -1
- package/dist/esm/gux-pagination-beta.entry.js +1 -1
- package/dist/esm/gux-pagination-cursor.entry.js +1 -1
- package/dist/esm/gux-pagination.entry.js +1 -1
- package/dist/esm/gux-panel-frame-legacy.entry.js +1 -1
- package/dist/esm/gux-popover-list.entry.js +1 -1
- package/dist/esm/gux-popover.entry.js +1 -1
- package/dist/esm/gux-radial-loading.entry.js +1 -1
- package/dist/esm/gux-radial-progress.entry.js +1 -1
- package/dist/esm/gux-rating.entry.js +1 -1
- package/dist/esm/gux-row-select.entry.js +1 -1
- package/dist/esm/gux-side-panel-legacy.entry.js +1 -1
- package/dist/esm/gux-simple-toast.entry.js +1 -1
- package/dist/esm/gux-switch.entry.js +1 -1
- package/dist/esm/gux-table-beta.entry.js +8 -5
- package/dist/esm/gux-tabs-advanced.entry.js +1 -1
- package/dist/esm/gux-tabs-legacy.entry.js +1 -1
- package/dist/esm/gux-tabs.entry.js +1 -1
- package/dist/esm/gux-tag-beta.entry.js +1 -1
- package/dist/esm/gux-text-highlight.entry.js +1 -1
- package/dist/esm/gux-text-label-legacy.entry.js +1 -1
- package/dist/esm/gux-time-picker-beta.entry.js +1 -1
- package/dist/esm/gux-toggle.entry.js +1 -1
- package/dist/esm/gux-tooltip_2.entry.js +1 -1
- package/dist/esm/gux-visualization-beta.entry.js +1 -1
- package/dist/esm/index-76794476.js +442 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{usage-tracking-e780a146.js → usage-tracking-83359dbf.js} +1 -1
- package/dist/genesys-webcomponents/genesys-webcomponents.esm.js +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.ar.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.cs.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.da.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.de.json +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.fi.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.fr-ca.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.fr.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.it.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.ja.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.ko.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.nl.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.no.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.pl.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.pt-br.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.ru.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.sv.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.th.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.tr.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.zh-cn.json +1 -1
- package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.zh-tw.json +1 -1
- package/dist/genesys-webcomponents/p-020690ec.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-636c54c6.entry.js → p-0319263d.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-2a39b40e.entry.js → p-0424f896.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-d19a7fb6.entry.js → p-07f57fba.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-0ba16a48.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-1031b574.entry.js → p-0c2f3d37.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-378cd6cf.entry.js → p-0d51e659.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-4ade0038.entry.js → p-0eade7d8.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-cd9ddc56.entry.js → p-11a585f0.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-7009289e.entry.js → p-1729a48c.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-d5da8ebb.entry.js → p-17980fa9.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-28c7f729.entry.js → p-1b839ce5.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-e8009e30.entry.js → p-2428f6b2.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-0842e67c.entry.js → p-291608e9.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-60556732.entry.js → p-29f0760a.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-0ddd8d4f.entry.js → p-2a0fbc9f.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-2a2f15bb.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-5854940b.entry.js → p-32235f46.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-96011a34.entry.js → p-323c1430.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-155bb34f.entry.js → p-32585fea.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-3770c1e9.js +1 -0
- package/dist/genesys-webcomponents/{p-65b6304c.entry.js → p-39d898df.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-1d011a81.entry.js → p-3e94ba55.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-32e65c1f.entry.js → p-42f9c421.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-08b07a2b.js → p-479cf5a2.js} +0 -0
- package/dist/genesys-webcomponents/{p-983933c0.entry.js → p-4c5acf82.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-29014d1e.entry.js → p-58b5efa2.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-2cf45506.entry.js → p-5bbf331f.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-e902c88f.entry.js → p-60f75d6e.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-ed5511fd.entry.js → p-62c2dcaf.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-d230bf80.entry.js → p-62d1cde8.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-66ca3da0.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-f6ee453e.entry.js → p-6809132b.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-382be864.entry.js → p-6e2e5f6f.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-85e91ce9.entry.js → p-71a69169.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-7190ade6.entry.js → p-7213d71d.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-be064568.entry.js → p-772f31b1.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-53b57303.entry.js → p-77f93a2b.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-e6759802.entry.js → p-787ec751.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-c528cbba.entry.js → p-7b4f9126.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-2caf5f99.entry.js → p-7cc82e6f.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-7b189793.entry.js → p-88b2b100.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-17d4a2ef.entry.js → p-90ba25cf.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-266acba3.entry.js → p-95e43594.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-c6588eae.entry.js → p-964097f0.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-ceeb8e8b.entry.js → p-9a09169f.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-648daaad.entry.js → p-9d663bf4.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-d7ea3dd5.entry.js → p-9f97f311.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-0749ddc0.js → p-a44f5924.js} +1 -1
- package/dist/genesys-webcomponents/{p-34b626d1.entry.js → p-a5fa799d.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-c09846a5.entry.js → p-a87d2b90.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-730b7824.entry.js → p-a926e0c4.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-b1662ae2.entry.js → p-a9499ee1.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-80e8d129.entry.js → p-ab11ff84.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-5fa06e39.entry.js → p-af4be06f.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-f2188fb8.entry.js → p-b7c37cbc.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-0bccbc5e.entry.js → p-bd2fd32a.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-22c63b2f.entry.js → p-bf6fd055.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-9268a785.entry.js → p-c3582f7c.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-3c2622bb.entry.js → p-cc544e76.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-6ae02bd1.entry.js → p-ccfa2e58.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-5e4a13fa.entry.js → p-cf581353.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-6cba93cf.entry.js → p-d989c6fa.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-9e8e412b.entry.js → p-dbc95134.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-5238df29.entry.js → p-dc53d8fb.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-8582d04a.entry.js → p-dee741ef.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-3095605b.entry.js → p-e67b0d46.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-e78de8af.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-269963ec.entry.js → p-e813ac64.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-ea1706f3.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-dc35acd6.entry.js → p-eaff9d4f.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-1892eb76.entry.js → p-ef9491b9.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-f07ad3df.entry.js +1 -0
- package/dist/genesys-webcomponents/p-f4e91e7a.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-c7b78b58.entry.js → p-fa36c86b.entry.js} +1 -1
- package/dist/genesys-webcomponents/p-fb49bd0d.entry.js +1 -0
- package/dist/genesys-webcomponents/{p-bfd2effd.entry.js → p-fb6977e1.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-918a52ca.entry.js → p-fd4474d2.entry.js} +1 -1
- package/dist/genesys-webcomponents/{p-18788841.entry.js → p-ff2a29fb.entry.js} +1 -1
- package/dist/stencil-wrapper.js +1 -1
- package/dist/types/components/beta/gux-dropdown-multi/gux-dropdown-multi-tag/gux-dropdown-multi-tag.d.ts +20 -0
- package/dist/types/components/beta/gux-dropdown-multi/gux-dropdown-multi.d.ts +56 -0
- package/dist/types/components/beta/gux-table/gux-row-select/gux-row-select.d.ts +1 -0
- package/dist/types/components/beta/gux-tag/gux-tag.d.ts +0 -4
- package/dist/types/components/stable/gux-dropdown/gux-dropdown.d.ts +1 -0
- package/dist/types/components/stable/gux-form-field/components/gux-form-field-dropdown/gux-form-field-dropdown.d.ts +27 -0
- package/dist/types/components/stable/gux-form-field/{gux-form-field.servce.d.ts → gux-form-field.service.d.ts} +1 -1
- package/dist/types/components/stable/gux-listbox/gux-listbox.d.ts +1 -1
- package/dist/types/components/stable/gux-listbox-multi/gux-listbox-multi.d.ts +28 -0
- package/dist/types/components/stable/gux-listbox-multi/gux-option-multi/gux-option-multi.d.ts +15 -0
- package/dist/types/components.d.ts +125 -8
- package/dist/types/utils/dom/on-attribute-change.d.ts +2 -2
- package/package.json +1 -1
- package/dist/genesys-webcomponents/p-03f786bb.entry.js +0 -1
- package/dist/genesys-webcomponents/p-201c4e67.entry.js +0 -1
- package/dist/genesys-webcomponents/p-6eea2eb5.entry.js +0 -1
- package/dist/genesys-webcomponents/p-7cef90a5.entry.js +0 -1
|
@@ -2,9 +2,9 @@ import { r as registerInstance, f as forceUpdate, h, g as getElement, c as creat
|
|
|
2
2
|
import { O as OnClickOutside } from './on-click-outside-ce30de20.js';
|
|
3
3
|
import { b as buildI18nForComponent } from './index-5bfcdeb1.js';
|
|
4
4
|
import { s as simulateNativeEvent } from './simulate-native-event-ac69961f.js';
|
|
5
|
-
import { t as trackComponent } from './usage-tracking-
|
|
5
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
6
|
+
import { g as getSearchOption, s as setInitialActiveOption, c as clearActiveOptions, a as setLastOptionActive, b as setFirstOptionActive, h as hasPreviousOption, d as setPreviousOptionActive, e as hasNextOption, f as setNextOptionActive, i as actOnActiveOption, j as goToOption, o as onClickedOption } from './gux-listbox.service-3541a2f7.js';
|
|
6
7
|
import { w as whenEventIsFrom } from './when-event-is-from-18667084.js';
|
|
7
|
-
import { l as logError } from './log-error-b1a1a086.js';
|
|
8
8
|
import { r as randomHTMLId } from './random-html-id-8e3f658c.js';
|
|
9
9
|
import './get-closest-element-1597503c.js';
|
|
10
10
|
|
|
@@ -17,153 +17,6 @@ const translationResources$1 = {
|
|
|
17
17
|
dropdown: dropdown
|
|
18
18
|
};
|
|
19
19
|
|
|
20
|
-
function getListOptions(list) {
|
|
21
|
-
return Array.from(list.children);
|
|
22
|
-
}
|
|
23
|
-
function getHoveredOption(list) {
|
|
24
|
-
return getListOptions(list).find(option => option.hovered && !option.disabled && !option.filtered);
|
|
25
|
-
}
|
|
26
|
-
function getFirstSelectedOption(list) {
|
|
27
|
-
return getListOptions(list).find(option => option.selected && !option.disabled && !option.filtered);
|
|
28
|
-
}
|
|
29
|
-
function getActiveOption(list) {
|
|
30
|
-
return getListOptions(list).find(option => option.active);
|
|
31
|
-
}
|
|
32
|
-
function setActiveOption(list, element) {
|
|
33
|
-
if (element) {
|
|
34
|
-
getListOptions(list).forEach(option => {
|
|
35
|
-
const active = (!option.disabled || !option.filtered) && option === element;
|
|
36
|
-
option.active = active;
|
|
37
|
-
if (active) {
|
|
38
|
-
list.setAttribute('aria-activedescendant', option.id);
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
element.scrollIntoView({ block: 'nearest' });
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
function getFirstOption(list) {
|
|
45
|
-
let firstOption = getListOptions(list)[0];
|
|
46
|
-
while (firstOption && (firstOption.disabled || firstOption.filtered)) {
|
|
47
|
-
firstOption = firstOption.nextElementSibling;
|
|
48
|
-
}
|
|
49
|
-
return firstOption;
|
|
50
|
-
}
|
|
51
|
-
function getNextOption(list) {
|
|
52
|
-
if (hasActiveOption(list)) {
|
|
53
|
-
let nextOption = getActiveOption(list)
|
|
54
|
-
.nextElementSibling;
|
|
55
|
-
while (nextOption && (nextOption.disabled || nextOption.filtered)) {
|
|
56
|
-
nextOption = nextOption.nextElementSibling;
|
|
57
|
-
}
|
|
58
|
-
return nextOption;
|
|
59
|
-
}
|
|
60
|
-
return getFirstOption(list);
|
|
61
|
-
}
|
|
62
|
-
function getPreviousOption(list) {
|
|
63
|
-
if (hasActiveOption(list)) {
|
|
64
|
-
let previousOption = getActiveOption(list)
|
|
65
|
-
.previousElementSibling;
|
|
66
|
-
while (previousOption &&
|
|
67
|
-
(previousOption.disabled || previousOption.filtered)) {
|
|
68
|
-
previousOption =
|
|
69
|
-
previousOption.previousElementSibling;
|
|
70
|
-
}
|
|
71
|
-
return previousOption;
|
|
72
|
-
}
|
|
73
|
-
return getFirstOption(list);
|
|
74
|
-
}
|
|
75
|
-
function getLastOption(list) {
|
|
76
|
-
const options = getListOptions(list);
|
|
77
|
-
let lastOption = options[options.length - 1];
|
|
78
|
-
while (lastOption && (lastOption.disabled || lastOption.filtered)) {
|
|
79
|
-
lastOption = lastOption.previousElementSibling;
|
|
80
|
-
}
|
|
81
|
-
return lastOption;
|
|
82
|
-
}
|
|
83
|
-
function hasActiveOption(list) {
|
|
84
|
-
return Boolean(getActiveOption(list));
|
|
85
|
-
}
|
|
86
|
-
function getSearchOption(list, searchString) {
|
|
87
|
-
return getListOptions(list).find(option => {
|
|
88
|
-
return ((!option.disabled || !option.filtered) &&
|
|
89
|
-
option.textContent.toLowerCase().startsWith(searchString.toLowerCase()));
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
function setSearchOptionActive(list, searchString) {
|
|
93
|
-
const option = getSearchOption(list, searchString);
|
|
94
|
-
if (option) {
|
|
95
|
-
setActiveOption(list, option);
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
clearActiveOptions(list);
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
function clearActiveOptions(list) {
|
|
102
|
-
getListOptions(list).forEach(option => {
|
|
103
|
-
option.active = false;
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
function setInitialActiveOption(list) {
|
|
107
|
-
setActiveOption(list, getHoveredOption(list) ||
|
|
108
|
-
getFirstSelectedOption(list) ||
|
|
109
|
-
getFirstOption(list));
|
|
110
|
-
}
|
|
111
|
-
function hasPreviousOption(list) {
|
|
112
|
-
if (hasActiveOption(list)) {
|
|
113
|
-
let previousOption = getActiveOption(list)
|
|
114
|
-
.previousElementSibling;
|
|
115
|
-
while (previousOption &&
|
|
116
|
-
(previousOption.disabled || previousOption.filtered)) {
|
|
117
|
-
previousOption =
|
|
118
|
-
previousOption.previousElementSibling;
|
|
119
|
-
}
|
|
120
|
-
return Boolean(previousOption);
|
|
121
|
-
}
|
|
122
|
-
return false;
|
|
123
|
-
}
|
|
124
|
-
function hasNextOption(list) {
|
|
125
|
-
if (hasActiveOption(list)) {
|
|
126
|
-
let nextOption = getActiveOption(list)
|
|
127
|
-
.nextElementSibling;
|
|
128
|
-
while (nextOption && (nextOption.disabled || nextOption.filtered)) {
|
|
129
|
-
nextOption = nextOption.nextElementSibling;
|
|
130
|
-
}
|
|
131
|
-
return Boolean(nextOption);
|
|
132
|
-
}
|
|
133
|
-
return false;
|
|
134
|
-
}
|
|
135
|
-
function setFirstOptionActive(list) {
|
|
136
|
-
setActiveOption(list, getFirstOption(list));
|
|
137
|
-
}
|
|
138
|
-
function setNextOptionActive(list) {
|
|
139
|
-
setActiveOption(list, getNextOption(list));
|
|
140
|
-
}
|
|
141
|
-
function setPreviousOptionActive(list) {
|
|
142
|
-
setActiveOption(list, getPreviousOption(list));
|
|
143
|
-
}
|
|
144
|
-
function setLastOptionActive(list) {
|
|
145
|
-
setActiveOption(list, getLastOption(list));
|
|
146
|
-
}
|
|
147
|
-
function actOnActiveOption(list, handler) {
|
|
148
|
-
if (hasActiveOption(list)) {
|
|
149
|
-
handler(getActiveOption(list).value);
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
function onClickedOption(option, handler) {
|
|
153
|
-
handler(option.value);
|
|
154
|
-
}
|
|
155
|
-
let timer;
|
|
156
|
-
let searchStringState = '';
|
|
157
|
-
const searchDebounceInterval = 250;
|
|
158
|
-
function goToOption(list, letter) {
|
|
159
|
-
clearTimeout(timer);
|
|
160
|
-
searchStringState += letter;
|
|
161
|
-
timer = setTimeout(() => {
|
|
162
|
-
setSearchOptionActive(list, searchStringState);
|
|
163
|
-
searchStringState = '';
|
|
164
|
-
}, searchDebounceInterval);
|
|
165
|
-
}
|
|
166
|
-
|
|
167
20
|
const guxDropdownCss = ":host{color:#2e394c}.gux-field,.gux-target-container-expanded{all:unset;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:nowrap;align-content:stretch;align-items:center;justify-content:center;width:100%;height:32px;padding:6px 8px 6px 6px;font-family:inherit;font-size:12px;line-height:1.6667;cursor:pointer;background-color:#f6f7f9}.gux-field.gux-input-field{height:30px}.gux-field .gux-field-content{display:flex;flex:1 1 0;flex-direction:row;flex-wrap:nowrap;align-content:stretch;align-items:flex-start;justify-content:flex-start;min-width:0;height:100%}.gux-field .gux-field-content .gux-filter,.gux-field .gux-field-content .gux-selected-option,.gux-field .gux-field-content .gux-placeholder{flex:1 1 auto;align-self:auto;order:0;padding-left:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gux-field .gux-field-content .gux-filter{position:relative;height:100%}.gux-field .gux-field-content .gux-filter .gux-filter-input{all:unset;width:100%;color:transparent;caret-color:#2e394c}.gux-field .gux-field-content .gux-filter .gux-filter-display .gux-filter-text{color:#2e394c}.gux-field .gux-field-content .gux-filter .gux-filter-display .gux-filter-suggestion{color:#596373}.gux-field .gux-field-content .gux-filter .gux-filter-input,.gux-field .gux-field-content .gux-filter .gux-filter-display{position:absolute}.gux-field .gux-field-content .gux-placeholder{color:#596373}.gux-field .gux-expand-icon{flex:0 0 auto;align-self:auto;order:0;width:16px;height:16px;padding-left:8px;color:#596373}.gux-target-container-expanded{border:1px solid #6b7585;border-radius:4px;box-shadow:inset 0 0 4px rgba(32, 41, 55, 0.16)}.gux-target-container-expanded:focus-within{outline:none;box-shadow:0 0 0 1px #fdfdfd, 0 0 0 4px #aac9ff}.gux-target-container-expanded .gux-filter-input{background-color:inherit;border:none}.gux-target-container-expanded .gux-filter-input:focus{border:none;outline:none}.gux-target-container-expanded .gux-field-button{width:auto;height:30px;padding:0 0 0 8px;margin:0;background:inherit;border:none;outline:none;box-shadow:none}.gux-target-container-expanded .gux-field-button:focus{outline:none}.gux-target-container-collapsed .gux-field-button{border:1px solid #6b7585;border-radius:4px;box-shadow:inset 0 0 4px rgba(32, 41, 55, 0.16)}.gux-target-container-collapsed .gux-field-button:focus{outline:none;box-shadow:0 0 0 1px #fdfdfd, 0 0 0 4px #aac9ff}.gux-listbox-container{box-sizing:border-box;margin:0;color:#2e394c}";
|
|
168
21
|
|
|
169
22
|
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
@@ -180,6 +33,7 @@ const GuxDropdown = class {
|
|
|
180
33
|
constructor(hostRef) {
|
|
181
34
|
registerInstance(this, hostRef);
|
|
182
35
|
this.disabled = false;
|
|
36
|
+
this.required = false;
|
|
183
37
|
this.filterable = false;
|
|
184
38
|
this.expanded = false;
|
|
185
39
|
this.filter = '';
|
|
@@ -409,6 +263,7 @@ const GuxListbox = class {
|
|
|
409
263
|
registerInstance(this, hostRef);
|
|
410
264
|
this.internallistboxoptionsupdated = createEvent(this, "internallistboxoptionsupdated", 7);
|
|
411
265
|
this.filter = '';
|
|
266
|
+
this.selectedValues = [];
|
|
412
267
|
this.listboxOptions = [];
|
|
413
268
|
}
|
|
414
269
|
onFocus() {
|
|
@@ -484,27 +339,24 @@ const GuxListbox = class {
|
|
|
484
339
|
actOnActiveOption(this.root, value => this.updateValue(value));
|
|
485
340
|
}
|
|
486
341
|
setListboxOptions() {
|
|
342
|
+
if (this.value) {
|
|
343
|
+
this.selectedValues = this.value.split(',');
|
|
344
|
+
}
|
|
487
345
|
this.listboxOptions = Array.from(this.root.children);
|
|
488
346
|
this.internallistboxoptionsupdated.emit();
|
|
489
347
|
}
|
|
490
348
|
updateValue(newValue) {
|
|
491
349
|
if (this.value !== newValue) {
|
|
492
350
|
this.value = newValue;
|
|
493
|
-
simulateNativeEvent(this.root, 'input');
|
|
494
|
-
simulateNativeEvent(this.root, 'change');
|
|
495
351
|
}
|
|
352
|
+
simulateNativeEvent(this.root, 'input');
|
|
353
|
+
simulateNativeEvent(this.root, 'change');
|
|
496
354
|
}
|
|
497
355
|
async componentWillLoad() {
|
|
498
356
|
trackComponent(this.root);
|
|
499
357
|
this.i18n = await buildI18nForComponent(this.root, translationResources);
|
|
500
358
|
this.setListboxOptions();
|
|
501
359
|
}
|
|
502
|
-
componentDidLoad() {
|
|
503
|
-
if (!(this.root.getAttribute('aria-label') ||
|
|
504
|
-
this.root.getAttribute('aria-labelledby'))) {
|
|
505
|
-
logError('gux-listbox', '`gux-listbox` requires a label. Either provide a label and associate it with the listbox using `aria-labelledby` or add an `aria-label` attribute to the gux-listbox element.');
|
|
506
|
-
}
|
|
507
|
-
}
|
|
508
360
|
componentWillRender() {
|
|
509
361
|
this.listboxOptions.forEach(listboxOption => {
|
|
510
362
|
listboxOption.selected = listboxOption.value === this.value;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as registerInstance, h, g as getElement } from './index-76794476.js';
|
|
2
|
-
import { t as trackComponent } from './usage-tracking-
|
|
2
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
3
3
|
|
|
4
4
|
const guxErrorMessageBetaCss = ".gux-container{display:flex;flex-direction:row;flex-wrap:nowrap;align-content:stretch;align-items:flex-start;justify-content:flex-start;font-size:11px;color:#2e394c}.gux-container gux-icon{flex:0 1 auto;align-self:auto;order:0;width:16px;height:16px;margin:0 4px;color:#ea0b0b}.gux-container .gux-message{flex:0 1 auto;align-self:auto;order:0}";
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as registerInstance, h, H as Host, g as getElement } from './index-76794476.js';
|
|
2
|
-
import { t as trackComponent } from './usage-tracking-
|
|
2
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
3
3
|
import { m as moveFocusDelay, h as hideDelay } from './gux-menu.common-60ab04e4.js';
|
|
4
4
|
import { c as createPopper } from './popper-93ecb064.js';
|
|
5
5
|
|
|
@@ -2,8 +2,8 @@ import { r as registerInstance, h, H as Host, g as getElement } from './index-76
|
|
|
2
2
|
import { O as OnMutation } from './on-mutation-2e96b1b9.js';
|
|
3
3
|
import { o as onDisabledChange } from './on-attribute-change-2b01c315.js';
|
|
4
4
|
import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
|
|
5
|
-
import { t as trackComponent } from './usage-tracking-
|
|
6
|
-
import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds } from './gux-form-field.
|
|
5
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
6
|
+
import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds } from './gux-form-field.service-4ad30790.js';
|
|
7
7
|
import './random-html-id-8e3f658c.js';
|
|
8
8
|
import './log-error-b1a1a086.js';
|
|
9
9
|
import './set-input-value-5adeaccc.js';
|
|
@@ -2,9 +2,9 @@ import { r as registerInstance, h, g as getElement } from './index-76794476.js';
|
|
|
2
2
|
import { O as OnMutation } from './on-mutation-2e96b1b9.js';
|
|
3
3
|
import { o as onDisabledChange, a as onRequiredChange } from './on-attribute-change-2b01c315.js';
|
|
4
4
|
import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
|
|
5
|
-
import { t as trackComponent } from './usage-tracking-
|
|
5
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
6
6
|
import { G as GuxFormFieldLabel, a as GuxFormFieldContainer } from './gux-form-field-label-ac49a8be.js';
|
|
7
|
-
import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.
|
|
7
|
+
import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.service-4ad30790.js';
|
|
8
8
|
import './random-html-id-8e3f658c.js';
|
|
9
9
|
import './log-error-b1a1a086.js';
|
|
10
10
|
import './set-input-value-5adeaccc.js';
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { r as registerInstance, h, g as getElement } from './index-76794476.js';
|
|
2
|
+
import { O as OnMutation } from './on-mutation-2e96b1b9.js';
|
|
3
|
+
import { o as onDisabledChange, a as onRequiredChange } from './on-attribute-change-2b01c315.js';
|
|
4
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
5
|
+
import { G as GuxFormFieldLabel, a as GuxFormFieldContainer } from './gux-form-field-label-ac49a8be.js';
|
|
6
|
+
import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.service-4ad30790.js';
|
|
7
|
+
import './random-html-id-8e3f658c.js';
|
|
8
|
+
import './log-error-b1a1a086.js';
|
|
9
|
+
import './set-input-value-5adeaccc.js';
|
|
10
|
+
import './simulate-native-event-ac69961f.js';
|
|
11
|
+
|
|
12
|
+
const guxFormFieldDropdownCss = ".gux-form-field-container{margin:16px 0}.gux-form-field-container.gux-beside{display:flex;flex-direction:row}.gux-form-field-error{display:none;flex-direction:row;flex-wrap:nowrap;align-content:stretch;align-items:flex-start;justify-content:flex-start;margin:4px 0;font-size:11px;color:#2e394c}.gux-form-field-error.gux-show{display:flex}.gux-form-field-error gux-icon{flex:0 1 auto;align-self:auto;order:0;width:16px;height:16px;margin:0 4px;color:#ea0b0b}.gux-form-field-error .gux-message{flex:0 1 auto;align-self:auto;order:0}.gux-form-field-label.gux-required::after{font-size:12px;color:#ea0b0b;content:' *'}.gux-form-field-label.gux-beside{position:relative;top:8px;width:fit-content;min-width:45px;margin-right:8px}.gux-form-field-label.gux-above{margin-bottom:8px}.gux-form-field-label.gux-screenreader{position:absolute;top:auto;left:-10000px;width:1px;height:1px;overflow:hidden}:host{display:block;color:#2e394c}::slotted(label){font-family:Roboto, sans-serif;font-weight:400;font-weight:700;font-size:12px;line-height:16px}::slotted(select){flex:1 1 auto;align-self:auto;order:0;height:32px;padding:0 32px 0 12px;margin:0;color:#2e394c;background-color:#f6f7f9;border:none;border-radius:4px;outline:none;box-shadow:inset 0 0 4px rgba(32, 41, 55, 0.16);-moz-appearance:none;-webkit-appearance:none;appearance:none}::slotted(select)::placeholder{color:#596373;opacity:1}.gux-input-and-error-container{flex-grow:1}.gux-input-and-error-container .gux-input .gux-input-container{position:relative;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:nowrap;align-content:stretch;align-items:center;justify-content:center;width:100%;font-family:inherit;font-size:12px;line-height:1.6667;color:#2e394c;background-color:#f6f7f9;background-image:none;border:1px solid #6b7585;border-radius:4px}.gux-input-and-error-container .gux-input .gux-input-container.gux-disabled{pointer-events:none;opacity:0.5}.gux-input-and-error-container .gux-input .gux-input-container:hover gux-icon{color:#2a60c8}.gux-input-and-error-container .gux-input .gux-input-container select{flex:1 1 auto;align-self:auto;order:0;height:32px;padding:0 32px 0 12px;margin:0;color:#2e394c;background-color:#f6f7f9;border:none;border-radius:4px;outline:none;box-shadow:inset 0 0 4px rgba(32, 41, 55, 0.16);-moz-appearance:none;-webkit-appearance:none;appearance:none}.gux-input-and-error-container .gux-input .gux-input-container gux-icon{position:absolute;top:0;right:0;width:16px;height:16px;margin:8px;pointer-events:none}.gux-input-and-error-container .gux-input .gux-input-container:focus-within{border-color:#2a60c8;outline:none;box-shadow:0 0 0 1px #fdfdfd, 0 0 0 4px #aac9ff}.gux-input-and-error-container .gux-input.gux-input-error .gux-input-container{border-color:#ea0b0b}";
|
|
13
|
+
|
|
14
|
+
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
15
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
16
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
17
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
18
|
+
else
|
|
19
|
+
for (var i = decorators.length - 1; i >= 0; i--)
|
|
20
|
+
if (d = decorators[i])
|
|
21
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
22
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
23
|
+
};
|
|
24
|
+
const GuxFormFieldDropdown = class {
|
|
25
|
+
constructor(hostRef) {
|
|
26
|
+
registerInstance(this, hostRef);
|
|
27
|
+
this.computedLabelPosition = 'above';
|
|
28
|
+
this.hasError = false;
|
|
29
|
+
}
|
|
30
|
+
onMutation() {
|
|
31
|
+
this.hasError = hasErrorSlot(this.root);
|
|
32
|
+
}
|
|
33
|
+
componentWillLoad() {
|
|
34
|
+
this.setInput();
|
|
35
|
+
this.setLabel();
|
|
36
|
+
this.hasError = hasErrorSlot(this.root);
|
|
37
|
+
trackComponent(this.root, { variant: this.variant });
|
|
38
|
+
}
|
|
39
|
+
disconnectedCallback() {
|
|
40
|
+
this.disabledObserver.disconnect();
|
|
41
|
+
this.requiredObserver.disconnect();
|
|
42
|
+
}
|
|
43
|
+
render() {
|
|
44
|
+
return (h(GuxFormFieldContainer, { labelPosition: this.computedLabelPosition }, h(GuxFormFieldLabel, { position: this.computedLabelPosition, required: this.required }, h("slot", { name: "label", onSlotchange: () => this.setLabel() })), h("div", { class: "gux-input-and-error-container" }, h("div", { class: {
|
|
45
|
+
'gux-input': true,
|
|
46
|
+
'gux-input-error': this.hasError
|
|
47
|
+
} }, h("div", { class: {
|
|
48
|
+
'gux-dropdown-container': true,
|
|
49
|
+
'gux-disabled': this.disabled
|
|
50
|
+
} }, h("slot", null))), h(GuxFormFieldError, { hasError: this.hasError }, h("slot", { name: "error" })))));
|
|
51
|
+
}
|
|
52
|
+
get variant() {
|
|
53
|
+
const labelPositionVariant = this.labelPosition
|
|
54
|
+
? this.labelPosition.toLowerCase()
|
|
55
|
+
: 'none';
|
|
56
|
+
const type = 'dropdown';
|
|
57
|
+
return `${type}-${labelPositionVariant}`;
|
|
58
|
+
}
|
|
59
|
+
setInput() {
|
|
60
|
+
this.dropdownElement =
|
|
61
|
+
this.root.querySelector('gux-dropdown') ||
|
|
62
|
+
this.root.querySelector('gux-dropdown-multi-beta');
|
|
63
|
+
this.listboxElement =
|
|
64
|
+
this.root.querySelector('gux-listbox') ||
|
|
65
|
+
this.root.querySelector('gux-listbox-multi');
|
|
66
|
+
this.disabled = this.dropdownElement.disabled;
|
|
67
|
+
this.required = this.dropdownElement.required;
|
|
68
|
+
this.disabledObserver = onDisabledChange(this.dropdownElement, (disabled) => {
|
|
69
|
+
this.disabled = disabled;
|
|
70
|
+
});
|
|
71
|
+
this.requiredObserver = onRequiredChange(this.dropdownElement, (required) => {
|
|
72
|
+
this.required = required;
|
|
73
|
+
});
|
|
74
|
+
validateFormIds(this.root, this.listboxElement);
|
|
75
|
+
}
|
|
76
|
+
setLabel() {
|
|
77
|
+
this.label = this.root.querySelector('label[slot="label"]');
|
|
78
|
+
this.computedLabelPosition = getComputedLabelPosition(this.label, this.labelPosition);
|
|
79
|
+
}
|
|
80
|
+
get root() { return getElement(this); }
|
|
81
|
+
};
|
|
82
|
+
__decorate([
|
|
83
|
+
OnMutation({ childList: true, subtree: true })
|
|
84
|
+
], GuxFormFieldDropdown.prototype, "onMutation", null);
|
|
85
|
+
GuxFormFieldDropdown.style = guxFormFieldDropdownCss;
|
|
86
|
+
|
|
87
|
+
export { GuxFormFieldDropdown as gux_form_field_dropdown };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as registerInstance, h, g as getElement } from './index-76794476.js';
|
|
2
|
-
import { t as trackComponent } from './usage-tracking-
|
|
2
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
3
3
|
import { b as buildI18nForComponent } from './index-5bfcdeb1.js';
|
|
4
4
|
import './get-closest-element-1597503c.js';
|
|
5
5
|
|
|
@@ -4,7 +4,7 @@ import { r as randomHTMLId } from './random-html-id-8e3f658c.js';
|
|
|
4
4
|
import { l as logError } from './log-error-b1a1a086.js';
|
|
5
5
|
import { a as onRequiredChange } from './on-attribute-change-2b01c315.js';
|
|
6
6
|
import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
|
|
7
|
-
import { t as trackComponent } from './usage-tracking-
|
|
7
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
8
8
|
|
|
9
9
|
const guxFormFieldCss = "gux-form-field-legacy{display:block;color:#2e394c}gux-form-field-legacy .gux-label-and-input-and-error-container{margin:16px 0}gux-form-field-legacy .gux-label-and-input-and-error-container label{font-size:12px;font-weight:bold;line-height:20px}gux-form-field-legacy .gux-label-and-input-and-error-container input,gux-form-field-legacy .gux-label-and-input-and-error-container select{width:100%;font-size:12px}gux-form-field-legacy .gux-label-and-input-and-error-container .gux-input-container input{overflow:hidden;text-overflow:ellipsis}gux-form-field-legacy .gux-label-and-input-and-error-container .gux-input-error .gux-input-container{border-color:#ea0b0b}gux-form-field-legacy .gux-label-and-input-and-error-container .gux-input-error textarea{border-color:#ea0b0b}gux-form-field-legacy .gux-label-and-input-and-error-container .gux-input-error .gux-input-color-main-element{border-color:#ea0b0b}gux-form-field-legacy .gux-label-and-input-and-error-container .gux-input-and-error-container{flex-grow:1}gux-form-field-legacy .gux-label-and-input-and-error-container.gux-beside{display:flex;flex-direction:row}gux-form-field-legacy .gux-label-and-input-and-error-container.gux-beside .gux-label-container{position:relative;top:7px;width:fit-content;min-width:45px;margin-right:8px}gux-form-field-legacy .gux-label-and-input-and-error-container.gux-beside gux-input-range,gux-form-field-legacy .gux-label-and-input-and-error-container.gux-beside gux-input-select,gux-form-field-legacy .gux-label-and-input-and-error-container.gux-beside gux-input-text-like,gux-form-field-legacy .gux-label-and-input-and-error-container.gux-beside gux-input-search{flex:1 1 auto}gux-form-field-legacy .gux-label-and-input-and-error-container.gux-screenreader label{position:absolute;top:auto;left:-10000px;width:1px;height:1px;overflow:hidden}gux-form-field-legacy .gux-required::after{font-size:12px;color:#ea0b0b;content:' *'}gux-form-field-legacy .gux-error{display:none;margin:4px 0}gux-form-field-legacy .gux-error.gux-show{display:block}";
|
|
10
10
|
|
|
@@ -3,11 +3,11 @@ import { b as buildI18nForComponent } from './index-5bfcdeb1.js';
|
|
|
3
3
|
import { O as OnMutation } from './on-mutation-2e96b1b9.js';
|
|
4
4
|
import { o as onDisabledChange, a as onRequiredChange } from './on-attribute-change-2b01c315.js';
|
|
5
5
|
import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
|
|
6
|
-
import { t as trackComponent } from './usage-tracking-
|
|
6
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
7
7
|
import { s as setInputValue } from './set-input-value-5adeaccc.js';
|
|
8
8
|
import { s as simulateNativeEvent } from './simulate-native-event-ac69961f.js';
|
|
9
9
|
import { G as GuxFormFieldLabel, a as GuxFormFieldContainer } from './gux-form-field-label-ac49a8be.js';
|
|
10
|
-
import { h as hasErrorSlot, c as clearInput, G as GuxFormFieldError, a as hasContent, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.
|
|
10
|
+
import { h as hasErrorSlot, c as clearInput, G as GuxFormFieldError, a as hasContent, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.service-4ad30790.js';
|
|
11
11
|
import './get-closest-element-1597503c.js';
|
|
12
12
|
import './random-html-id-8e3f658c.js';
|
|
13
13
|
import './log-error-b1a1a086.js';
|
|
@@ -2,8 +2,8 @@ import { r as registerInstance, h, H as Host, g as getElement } from './index-76
|
|
|
2
2
|
import { O as OnMutation } from './on-mutation-2e96b1b9.js';
|
|
3
3
|
import { o as onDisabledChange } from './on-attribute-change-2b01c315.js';
|
|
4
4
|
import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
|
|
5
|
-
import { t as trackComponent } from './usage-tracking-
|
|
6
|
-
import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds } from './gux-form-field.
|
|
5
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
6
|
+
import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds } from './gux-form-field.service-4ad30790.js';
|
|
7
7
|
import './random-html-id-8e3f658c.js';
|
|
8
8
|
import './log-error-b1a1a086.js';
|
|
9
9
|
import './set-input-value-5adeaccc.js';
|
|
@@ -2,9 +2,9 @@ import { r as registerInstance, h, H as Host, g as getElement } from './index-76
|
|
|
2
2
|
import { O as OnMutation } from './on-mutation-2e96b1b9.js';
|
|
3
3
|
import { o as onDisabledChange, a as onRequiredChange } from './on-attribute-change-2b01c315.js';
|
|
4
4
|
import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
|
|
5
|
-
import { t as trackComponent } from './usage-tracking-
|
|
5
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
6
6
|
import { a as GuxFormFieldContainer, G as GuxFormFieldLabel } from './gux-form-field-label-ac49a8be.js';
|
|
7
|
-
import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.
|
|
7
|
+
import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.service-4ad30790.js';
|
|
8
8
|
import './random-html-id-8e3f658c.js';
|
|
9
9
|
import './log-error-b1a1a086.js';
|
|
10
10
|
import './set-input-value-5adeaccc.js';
|
|
@@ -2,9 +2,9 @@ import { r as registerInstance, h, g as getElement } from './index-76794476.js';
|
|
|
2
2
|
import { O as OnMutation } from './on-mutation-2e96b1b9.js';
|
|
3
3
|
import { o as onDisabledChange, a as onRequiredChange } from './on-attribute-change-2b01c315.js';
|
|
4
4
|
import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
|
|
5
|
-
import { t as trackComponent } from './usage-tracking-
|
|
5
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
6
6
|
import { G as GuxFormFieldLabel, a as GuxFormFieldContainer } from './gux-form-field-label-ac49a8be.js';
|
|
7
|
-
import { h as hasErrorSlot, c as clearInput, G as GuxFormFieldError, a as hasContent, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.
|
|
7
|
+
import { h as hasErrorSlot, c as clearInput, G as GuxFormFieldError, a as hasContent, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.service-4ad30790.js';
|
|
8
8
|
import './random-html-id-8e3f658c.js';
|
|
9
9
|
import './log-error-b1a1a086.js';
|
|
10
10
|
import './set-input-value-5adeaccc.js';
|
|
@@ -2,9 +2,9 @@ import { r as registerInstance, h, g as getElement } from './index-76794476.js';
|
|
|
2
2
|
import { O as OnMutation } from './on-mutation-2e96b1b9.js';
|
|
3
3
|
import { o as onDisabledChange, a as onRequiredChange } from './on-attribute-change-2b01c315.js';
|
|
4
4
|
import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
|
|
5
|
-
import { t as trackComponent } from './usage-tracking-
|
|
5
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
6
6
|
import { G as GuxFormFieldLabel, a as GuxFormFieldContainer } from './gux-form-field-label-ac49a8be.js';
|
|
7
|
-
import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.
|
|
7
|
+
import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.service-4ad30790.js';
|
|
8
8
|
import './random-html-id-8e3f658c.js';
|
|
9
9
|
import './log-error-b1a1a086.js';
|
|
10
10
|
import './set-input-value-5adeaccc.js';
|
|
@@ -2,9 +2,9 @@ import { r as registerInstance, h, g as getElement } from './index-76794476.js';
|
|
|
2
2
|
import { O as OnMutation } from './on-mutation-2e96b1b9.js';
|
|
3
3
|
import { o as onDisabledChange, a as onRequiredChange } from './on-attribute-change-2b01c315.js';
|
|
4
4
|
import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
|
|
5
|
-
import { t as trackComponent } from './usage-tracking-
|
|
5
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
6
6
|
import { G as GuxFormFieldLabel, a as GuxFormFieldContainer } from './gux-form-field-label-ac49a8be.js';
|
|
7
|
-
import { h as hasErrorSlot, c as clearInput, G as GuxFormFieldError, a as hasContent, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.
|
|
7
|
+
import { h as hasErrorSlot, c as clearInput, G as GuxFormFieldError, a as hasContent, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.service-4ad30790.js';
|
|
8
8
|
import './random-html-id-8e3f658c.js';
|
|
9
9
|
import './log-error-b1a1a086.js';
|
|
10
10
|
import './set-input-value-5adeaccc.js';
|
|
@@ -2,9 +2,9 @@ import { r as registerInstance, h, g as getElement } from './index-76794476.js';
|
|
|
2
2
|
import { O as OnMutation } from './on-mutation-2e96b1b9.js';
|
|
3
3
|
import { o as onDisabledChange, a as onRequiredChange } from './on-attribute-change-2b01c315.js';
|
|
4
4
|
import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
|
|
5
|
-
import { t as trackComponent } from './usage-tracking-
|
|
5
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
6
6
|
import { G as GuxFormFieldLabel, a as GuxFormFieldContainer } from './gux-form-field-label-ac49a8be.js';
|
|
7
|
-
import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.
|
|
7
|
+
import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.service-4ad30790.js';
|
|
8
8
|
import './random-html-id-8e3f658c.js';
|
|
9
9
|
import './log-error-b1a1a086.js';
|
|
10
10
|
import './set-input-value-5adeaccc.js';
|
|
File without changes
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as getAssetPath, r as registerInstance, h, g as getElement } from './index-76794476.js';
|
|
2
|
-
import { t as trackComponent } from './usage-tracking-
|
|
2
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
3
3
|
import { l as logError } from './log-error-b1a1a086.js';
|
|
4
4
|
|
|
5
5
|
const iconNameMap = {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-76794476.js';
|
|
2
|
-
import { t as trackComponent } from './usage-tracking-
|
|
2
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
3
3
|
|
|
4
4
|
const guxListItemCss = ":host:focus .gux-list-item,:host:active .gux-list-item,:host:hover:not([disabled]) .gux-list-item{color:#fdfdfd;background:#2a60c8}:host(:focus) .gux-list-item,:host(:active) .gux-list-item,:host(:hover:not([disabled])) .gux-list-item{color:#fdfdfd;background:#2a60c8}:host([disabled]) .gux-list-item{pointer-events:none;cursor:default;opacity:0.5}.gux-list-item{display:flex;height:max-content;padding:0 16px;line-height:32px;word-wrap:break-word;cursor:pointer}.gux-list-item .gux-text{width:100%}";
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as registerInstance, h, H as Host, g as getElement } from './index-76794476.js';
|
|
2
|
-
import { t as trackComponent } from './usage-tracking-
|
|
2
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
3
3
|
|
|
4
4
|
const validFocusableItems = ['gux-list-item'];
|
|
5
5
|
function getRootChildren(root) {
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-76794476.js';
|
|
2
|
+
import { s as setInitialActiveOption, c as clearActiveOptions, a as setLastOptionActive, b as setFirstOptionActive, h as hasPreviousOption, d as setPreviousOptionActive, e as hasNextOption, f as setNextOptionActive, i as actOnActiveOption, j as goToOption, o as onClickedOption } from './gux-listbox.service-3541a2f7.js';
|
|
3
|
+
import { b as buildI18nForComponent } from './index-5bfcdeb1.js';
|
|
4
|
+
import { w as whenEventIsFrom } from './when-event-is-from-18667084.js';
|
|
5
|
+
import { s as simulateNativeEvent } from './simulate-native-event-ac69961f.js';
|
|
6
|
+
import { t as trackComponent } from './usage-tracking-83359dbf.js';
|
|
7
|
+
import './get-closest-element-1597503c.js';
|
|
8
|
+
|
|
9
|
+
const noMatches = "No matches";
|
|
10
|
+
const translationResources = {
|
|
11
|
+
noMatches: noMatches
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
const guxListboxMultiCss = ":host{box-sizing:border-box;display:block;max-height:20rem;padding:8px 0;margin:0;overflow-y:auto;color:#2e394c;background:#fdfdfd;border:1px solid #b4bccb;border-radius:4px;outline:none}:host(:focus){outline:none;box-shadow:0 0 0 1px #fdfdfd, 0 0 0 4px #aac9ff}.gux-no-matches{box-sizing:border-box;height:32px;padding:8px 16px;color:#2e394c}";
|
|
15
|
+
|
|
16
|
+
const GuxListboxMulti = class {
|
|
17
|
+
constructor(hostRef) {
|
|
18
|
+
registerInstance(this, hostRef);
|
|
19
|
+
this.internallistboxoptionsupdated = createEvent(this, "internallistboxoptionsupdated", 7);
|
|
20
|
+
this.filter = '';
|
|
21
|
+
this.selectedValues = [];
|
|
22
|
+
this.listboxOptions = [];
|
|
23
|
+
}
|
|
24
|
+
onFocus() {
|
|
25
|
+
setInitialActiveOption(this.root);
|
|
26
|
+
}
|
|
27
|
+
onBlur() {
|
|
28
|
+
clearActiveOptions(this.root);
|
|
29
|
+
}
|
|
30
|
+
onKeydown(event) {
|
|
31
|
+
switch (event.key) {
|
|
32
|
+
case 'Enter':
|
|
33
|
+
event.preventDefault();
|
|
34
|
+
actOnActiveOption(this.root, value => this.updateValue(value));
|
|
35
|
+
return;
|
|
36
|
+
case 'ArrowDown':
|
|
37
|
+
event.preventDefault();
|
|
38
|
+
if (hasNextOption(this.root)) {
|
|
39
|
+
event.stopPropagation();
|
|
40
|
+
setNextOptionActive(this.root);
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
setFirstOptionActive(this.root);
|
|
44
|
+
}
|
|
45
|
+
return;
|
|
46
|
+
case 'ArrowUp': {
|
|
47
|
+
event.preventDefault();
|
|
48
|
+
if (hasPreviousOption(this.root)) {
|
|
49
|
+
event.stopPropagation();
|
|
50
|
+
setPreviousOptionActive(this.root);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
setLastOptionActive(this.root);
|
|
54
|
+
}
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
case 'Home': {
|
|
58
|
+
event.preventDefault();
|
|
59
|
+
setFirstOptionActive(this.root);
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
case 'End': {
|
|
63
|
+
event.preventDefault();
|
|
64
|
+
setLastOptionActive(this.root);
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
case ' ': {
|
|
68
|
+
event.preventDefault();
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
if (event.key.length === 1) {
|
|
73
|
+
goToOption(this.root, event.key);
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
onKeyup(event) {
|
|
78
|
+
switch (event.key) {
|
|
79
|
+
case ' ':
|
|
80
|
+
actOnActiveOption(this.root, value => this.updateValue(value));
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
onMousemove() {
|
|
85
|
+
clearActiveOptions(this.root);
|
|
86
|
+
}
|
|
87
|
+
onClick(event) {
|
|
88
|
+
whenEventIsFrom('gux-option-multi', event, (option) => {
|
|
89
|
+
onClickedOption(option, value => this.updateValue(value));
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
validateValue() {
|
|
93
|
+
if (this.value) {
|
|
94
|
+
this.selectedValues = this.value.split(',');
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
this.selectedValues = [];
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
101
|
+
async guxSelectActive() {
|
|
102
|
+
actOnActiveOption(this.root, value => this.updateValue(value));
|
|
103
|
+
}
|
|
104
|
+
setListboxOptions() {
|
|
105
|
+
if (this.value) {
|
|
106
|
+
this.selectedValues = this.value.split(',');
|
|
107
|
+
}
|
|
108
|
+
this.listboxOptions = Array.from(this.root.children);
|
|
109
|
+
this.internallistboxoptionsupdated.emit();
|
|
110
|
+
}
|
|
111
|
+
updateValue(newValue) {
|
|
112
|
+
if (!this.selectedValues.includes(newValue)) {
|
|
113
|
+
const newArray = [...this.selectedValues, newValue];
|
|
114
|
+
this.selectedValues = newArray;
|
|
115
|
+
this.value = this.selectedValues.join(',');
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
this.selectedValues = this.selectedValues.filter(e => e !== newValue);
|
|
119
|
+
this.value = this.selectedValues.join(',');
|
|
120
|
+
}
|
|
121
|
+
simulateNativeEvent(this.root, 'input');
|
|
122
|
+
simulateNativeEvent(this.root, 'change');
|
|
123
|
+
}
|
|
124
|
+
async componentWillLoad() {
|
|
125
|
+
trackComponent(this.root);
|
|
126
|
+
this.i18n = await buildI18nForComponent(this.root, translationResources);
|
|
127
|
+
this.setListboxOptions();
|
|
128
|
+
}
|
|
129
|
+
componentWillRender() {
|
|
130
|
+
this.listboxOptions.forEach(listboxOption => {
|
|
131
|
+
listboxOption.selected = this.selectedValues.includes(listboxOption.value);
|
|
132
|
+
listboxOption.filtered = !listboxOption.textContent
|
|
133
|
+
.toLowerCase()
|
|
134
|
+
.startsWith(this.filter.toLowerCase());
|
|
135
|
+
});
|
|
136
|
+
this.allListboxOptionsFiltered =
|
|
137
|
+
this.listboxOptions.filter(listboxOption => !listboxOption.filtered)
|
|
138
|
+
.length === 0;
|
|
139
|
+
}
|
|
140
|
+
renderAllListboxOptionsFiltered() {
|
|
141
|
+
if (this.allListboxOptionsFiltered) {
|
|
142
|
+
return (h("div", { class: "gux-no-matches" }, this.i18n('noMatches')));
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
render() {
|
|
146
|
+
return (h(Host, { role: "listbox", "aria-multiselectable": "true", tabindex: 0 }, h("slot", { onSlotchange: () => this.setListboxOptions() }), this.renderAllListboxOptionsFiltered()));
|
|
147
|
+
}
|
|
148
|
+
get root() { return getElement(this); }
|
|
149
|
+
static get watchers() { return {
|
|
150
|
+
"value": ["validateValue"]
|
|
151
|
+
}; }
|
|
152
|
+
};
|
|
153
|
+
GuxListboxMulti.style = guxListboxMultiCss;
|
|
154
|
+
|
|
155
|
+
export { GuxListboxMulti as gux_listbox_multi };
|