@carbon/web-components 2.57.0 → 2.58.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/custom-elements.json +6 -6
- package/es/_virtual/{_@oxc-project_runtime@0.126.0/helpers → _@oxc-project_runtime@0.135.0/helpers/esm}/decorate.js +1 -1
- package/es/components/accordion/accordion-item-skeleton.js +1 -1
- package/es/components/accordion/accordion-item-skeleton.js.map +1 -1
- package/es/components/accordion/accordion-item.js +1 -1
- package/es/components/accordion/accordion-item.js.map +1 -1
- package/es/components/accordion/accordion-skeleton.js +1 -1
- package/es/components/accordion/accordion-skeleton.js.map +1 -1
- package/es/components/accordion/accordion.js +1 -1
- package/es/components/accordion/accordion.js.map +1 -1
- package/es/components/accordion/accordion.scss.js +1 -1
- package/es/components/accordion/accordion.scss.js.map +1 -1
- package/es/components/accordion/defs.js.map +1 -1
- package/es/components/ai-label/ai-label-action-button.js +1 -1
- package/es/components/ai-label/ai-label-action-button.js.map +1 -1
- package/es/components/ai-label/ai-label.js +1 -1
- package/es/components/ai-label/ai-label.js.map +1 -1
- package/es/components/ai-label/ai-label.scss.js +1 -1
- package/es/components/ai-label/defs.js.map +1 -1
- package/es/components/ai-skeleton/ai-skeleton-icon.js +1 -1
- package/es/components/ai-skeleton/ai-skeleton-icon.js.map +1 -1
- package/es/components/ai-skeleton/ai-skeleton-placeholder.js +1 -1
- package/es/components/ai-skeleton/ai-skeleton-placeholder.js.map +1 -1
- package/es/components/ai-skeleton/ai-skeleton-text.js +1 -1
- package/es/components/ai-skeleton/ai-skeleton-text.js.map +1 -1
- package/es/components/badge-indicator/badge-indicator.js +1 -1
- package/es/components/badge-indicator/badge-indicator.js.map +1 -1
- package/es/components/breadcrumb/breadcrumb-item.js +1 -1
- package/es/components/breadcrumb/breadcrumb-item.js.map +1 -1
- package/es/components/breadcrumb/breadcrumb-link.js +1 -1
- package/es/components/breadcrumb/breadcrumb-link.js.map +1 -1
- package/es/components/breadcrumb/breadcrumb-overflow-menu.js +1 -1
- package/es/components/breadcrumb/breadcrumb-overflow-menu.js.map +1 -1
- package/es/components/breadcrumb/breadcrumb-skeleton.js +1 -1
- package/es/components/breadcrumb/breadcrumb-skeleton.js.map +1 -1
- package/es/components/breadcrumb/breadcrumb.js +1 -1
- package/es/components/breadcrumb/breadcrumb.js.map +1 -1
- package/es/components/breadcrumb/breadcrumb.scss.js +1 -1
- package/es/components/breadcrumb/defs.js.map +1 -1
- package/es/components/button/button-set-base.js +1 -1
- package/es/components/button/button-set-base.js.map +1 -1
- package/es/components/button/button-set.d.ts +4 -0
- package/es/components/button/button-set.d.ts.map +1 -1
- package/es/components/button/button-set.js +5 -5
- package/es/components/button/button-set.js.map +1 -1
- package/es/components/button/button-skeleton.js +1 -1
- package/es/components/button/button-skeleton.js.map +1 -1
- package/es/components/button/button.js +1 -1
- package/es/components/button/button.js.map +1 -1
- package/es/components/button/button.scss.js +1 -1
- package/es/components/button/defs.js.map +1 -1
- package/es/components/chat-button/chat-button-skeleton.js +1 -1
- package/es/components/chat-button/chat-button-skeleton.js.map +1 -1
- package/es/components/chat-button/chat-button.js +1 -1
- package/es/components/chat-button/chat-button.js.map +1 -1
- package/es/components/chat-button/defs.js.map +1 -1
- package/es/components/checkbox/checkbox-group.js +1 -1
- package/es/components/checkbox/checkbox-group.js.map +1 -1
- package/es/components/checkbox/checkbox-skeleton.js +1 -1
- package/es/components/checkbox/checkbox-skeleton.js.map +1 -1
- package/es/components/checkbox/checkbox.js +1 -1
- package/es/components/checkbox/checkbox.js.map +1 -1
- package/es/components/checkbox/defs.js.map +1 -1
- package/es/components/code-snippet/code-snippet-skeleton.js +1 -1
- package/es/components/code-snippet/code-snippet-skeleton.js.map +1 -1
- package/es/components/code-snippet/code-snippet.js +1 -1
- package/es/components/code-snippet/code-snippet.js.map +1 -1
- package/es/components/code-snippet/code-snippet.scss.js +1 -1
- package/es/components/code-snippet/defs.js.map +1 -1
- package/es/components/combo-box/combo-box-item.js +1 -1
- package/es/components/combo-box/combo-box-item.js.map +1 -1
- package/es/components/combo-box/combo-box.js +1 -1
- package/es/components/combo-box/combo-box.js.map +1 -1
- package/es/components/combo-button/combo-button.js +1 -1
- package/es/components/combo-button/combo-button.js.map +1 -1
- package/es/components/combo-button/combo-button.scss.js +1 -1
- package/es/components/combo-button/defs.js.map +1 -1
- package/es/components/contained-list/contained-list-description.js +1 -1
- package/es/components/contained-list/contained-list-description.js.map +1 -1
- package/es/components/contained-list/contained-list-item.js +1 -1
- package/es/components/contained-list/contained-list-item.js.map +1 -1
- package/es/components/contained-list/contained-list.js +1 -1
- package/es/components/contained-list/contained-list.js.map +1 -1
- package/es/components/contained-list/contained-list.scss.js +1 -1
- package/es/components/content-switcher/content-switcher-item.js +1 -1
- package/es/components/content-switcher/content-switcher-item.js.map +1 -1
- package/es/components/content-switcher/content-switcher.js +1 -1
- package/es/components/content-switcher/content-switcher.js.map +1 -1
- package/es/components/content-switcher/content-switcher.scss.js +1 -1
- package/es/components/content-switcher/defs.js.map +1 -1
- package/es/components/copy/copy.js +1 -1
- package/es/components/copy/copy.js.map +1 -1
- package/es/components/copy-button/copy-button.js +1 -1
- package/es/components/copy-button/copy-button.js.map +1 -1
- package/es/components/copy-button/copy-button.scss.js +1 -1
- package/es/components/data-table/data-table.scss.js +1 -1
- package/es/components/data-table/defs.js.map +1 -1
- package/es/components/data-table/table-batch-actions.d.ts +8 -0
- package/es/components/data-table/table-batch-actions.d.ts.map +1 -1
- package/es/components/data-table/table-batch-actions.js +10 -9
- package/es/components/data-table/table-batch-actions.js.map +1 -1
- package/es/components/data-table/table-body.js +1 -1
- package/es/components/data-table/table-body.js.map +1 -1
- package/es/components/data-table/table-cell-content.js +1 -1
- package/es/components/data-table/table-cell-content.js.map +1 -1
- package/es/components/data-table/table-cell.js +1 -1
- package/es/components/data-table/table-cell.js.map +1 -1
- package/es/components/data-table/table-expanded-row.js +1 -1
- package/es/components/data-table/table-expanded-row.js.map +1 -1
- package/es/components/data-table/table-head.js +1 -1
- package/es/components/data-table/table-head.js.map +1 -1
- package/es/components/data-table/table-header-cell.js +1 -1
- package/es/components/data-table/table-header-cell.js.map +1 -1
- package/es/components/data-table/table-header-description.js +1 -1
- package/es/components/data-table/table-header-description.js.map +1 -1
- package/es/components/data-table/table-header-row.js +1 -1
- package/es/components/data-table/table-header-row.js.map +1 -1
- package/es/components/data-table/table-header-title.js +1 -1
- package/es/components/data-table/table-header-title.js.map +1 -1
- package/es/components/data-table/table-row.js +1 -1
- package/es/components/data-table/table-row.js.map +1 -1
- package/es/components/data-table/table-skeleton.js +1 -1
- package/es/components/data-table/table-skeleton.js.map +1 -1
- package/es/components/data-table/table-toolbar-content.js +1 -1
- package/es/components/data-table/table-toolbar-content.js.map +1 -1
- package/es/components/data-table/table-toolbar-search.js +1 -1
- package/es/components/data-table/table-toolbar-search.js.map +1 -1
- package/es/components/data-table/table-toolbar.js +1 -1
- package/es/components/data-table/table-toolbar.js.map +1 -1
- package/es/components/data-table/table.js +1 -1
- package/es/components/data-table/table.js.map +1 -1
- package/es/components/date-picker/append-to-plugin.js.map +1 -1
- package/es/components/date-picker/css-class-plugin.js.map +1 -1
- package/es/components/date-picker/date-picker-input-skeleton.js +1 -1
- package/es/components/date-picker/date-picker-input-skeleton.js.map +1 -1
- package/es/components/date-picker/date-picker-input.js +1 -1
- package/es/components/date-picker/date-picker-input.js.map +1 -1
- package/es/components/date-picker/date-picker.js +1 -1
- package/es/components/date-picker/date-picker.js.map +1 -1
- package/es/components/date-picker/defs.js.map +1 -1
- package/es/components/date-picker/fix-events-plugin.js.map +1 -1
- package/es/components/date-picker/focus-plugin.js.map +1 -1
- package/es/components/date-picker/icon-plugin.js.map +1 -1
- package/es/components/date-picker/iso-date.js.map +1 -1
- package/es/components/date-picker/month-select-plugin.js.map +1 -1
- package/es/components/date-picker/range-plugin.js.map +1 -1
- package/es/components/date-picker/shadow-dom-events-plugin.js.map +1 -1
- package/es/components/date-picker/state-handshake-plugin.js.map +1 -1
- package/es/components/dialog/dialog-body.js +1 -1
- package/es/components/dialog/dialog-body.js.map +1 -1
- package/es/components/dialog/dialog-close-button.js +1 -1
- package/es/components/dialog/dialog-close-button.js.map +1 -1
- package/es/components/dialog/dialog-controls.js +1 -1
- package/es/components/dialog/dialog-controls.js.map +1 -1
- package/es/components/dialog/dialog-footer-button.js +1 -1
- package/es/components/dialog/dialog-footer-button.js.map +1 -1
- package/es/components/dialog/dialog-footer.js +1 -1
- package/es/components/dialog/dialog-footer.js.map +1 -1
- package/es/components/dialog/dialog-header.js +1 -1
- package/es/components/dialog/dialog-header.js.map +1 -1
- package/es/components/dialog/dialog-subtitle.js +1 -1
- package/es/components/dialog/dialog-subtitle.js.map +1 -1
- package/es/components/dialog/dialog-title.js +1 -1
- package/es/components/dialog/dialog-title.js.map +1 -1
- package/es/components/dialog/dialog.js +1 -1
- package/es/components/dialog/dialog.js.map +1 -1
- package/es/components/dialog/dialog.scss.js +1 -1
- package/es/components/dropdown/defs.js.map +1 -1
- package/es/components/dropdown/dropdown-item.js +1 -1
- package/es/components/dropdown/dropdown-item.js.map +1 -1
- package/es/components/dropdown/dropdown-skeleton.js +1 -1
- package/es/components/dropdown/dropdown-skeleton.js.map +1 -1
- package/es/components/dropdown/dropdown.js +1 -1
- package/es/components/dropdown/dropdown.js.map +1 -1
- package/es/components/feature-flags/index.js +1 -1
- package/es/components/feature-flags/index.js.map +1 -1
- package/es/components/file-uploader/defs.js.map +1 -1
- package/es/components/file-uploader/demo-file-uploader.js +1 -1
- package/es/components/file-uploader/demo-file-uploader.js.map +1 -1
- package/es/components/file-uploader/file-uploader-button.js +1 -1
- package/es/components/file-uploader/file-uploader-button.js.map +1 -1
- package/es/components/file-uploader/file-uploader-drop-container.js +1 -1
- package/es/components/file-uploader/file-uploader-drop-container.js.map +1 -1
- package/es/components/file-uploader/file-uploader-item.js +1 -1
- package/es/components/file-uploader/file-uploader-item.js.map +1 -1
- package/es/components/file-uploader/file-uploader-skeleton.js +1 -1
- package/es/components/file-uploader/file-uploader-skeleton.js.map +1 -1
- package/es/components/file-uploader/file-uploader.js +1 -1
- package/es/components/file-uploader/file-uploader.js.map +1 -1
- package/es/components/file-uploader/file-uploader.scss.js +1 -1
- package/es/components/floating-menu/defs.js.map +1 -1
- package/es/components/floating-menu/floating-menu.js +1 -1
- package/es/components/floating-menu/floating-menu.js.map +1 -1
- package/es/components/fluid-combo-box/fluid-combo-box-skeleton.js +1 -1
- package/es/components/fluid-combo-box/fluid-combo-box-skeleton.js.map +1 -1
- package/es/components/fluid-combo-box/fluid-combo-box.js +1 -1
- package/es/components/fluid-combo-box/fluid-combo-box.js.map +1 -1
- package/es/components/fluid-dropdown/fluid-dropdown-skeleton.js +1 -1
- package/es/components/fluid-dropdown/fluid-dropdown-skeleton.js.map +1 -1
- package/es/components/fluid-dropdown/fluid-dropdown.js +1 -1
- package/es/components/fluid-dropdown/fluid-dropdown.js.map +1 -1
- package/es/components/fluid-form/fluid-form.js +1 -1
- package/es/components/fluid-form/fluid-form.js.map +1 -1
- package/es/components/fluid-multi-select/fluid-multi-select-skeleton.js +1 -1
- package/es/components/fluid-multi-select/fluid-multi-select-skeleton.js.map +1 -1
- package/es/components/fluid-multi-select/fluid-multi-select.js +1 -1
- package/es/components/fluid-multi-select/fluid-multi-select.js.map +1 -1
- package/es/components/fluid-multi-select/fluid-multi-select.scss.js +1 -1
- package/es/components/fluid-number-input/fluid-number-input-skeleton.js +1 -1
- package/es/components/fluid-number-input/fluid-number-input-skeleton.js.map +1 -1
- package/es/components/fluid-number-input/fluid-number-input.js +1 -1
- package/es/components/fluid-number-input/fluid-number-input.js.map +1 -1
- package/es/components/fluid-password-input/fluid-password-input.d.ts +1 -0
- package/es/components/fluid-password-input/fluid-password-input.d.ts.map +1 -1
- package/es/components/fluid-password-input/fluid-password-input.js +4 -3
- package/es/components/fluid-password-input/fluid-password-input.js.map +1 -1
- package/es/components/fluid-search/fluid-search-skeleton.js +1 -1
- package/es/components/fluid-search/fluid-search-skeleton.js.map +1 -1
- package/es/components/fluid-search/fluid-search.js +1 -1
- package/es/components/fluid-search/fluid-search.js.map +1 -1
- package/es/components/fluid-select/fluid-select-skeleton.js +1 -1
- package/es/components/fluid-select/fluid-select-skeleton.js.map +1 -1
- package/es/components/fluid-select/fluid-select.js +1 -1
- package/es/components/fluid-select/fluid-select.js.map +1 -1
- package/es/components/fluid-text-input/fluid-text-input-skeleton.js +1 -1
- package/es/components/fluid-text-input/fluid-text-input-skeleton.js.map +1 -1
- package/es/components/fluid-text-input/fluid-text-input.d.ts +1 -0
- package/es/components/fluid-text-input/fluid-text-input.d.ts.map +1 -1
- package/es/components/fluid-text-input/fluid-text-input.js +4 -3
- package/es/components/fluid-text-input/fluid-text-input.js.map +1 -1
- package/es/components/fluid-textarea/fluid-textarea-skeleton.js +1 -1
- package/es/components/fluid-textarea/fluid-textarea-skeleton.js.map +1 -1
- package/es/components/fluid-textarea/fluid-textarea.js +1 -1
- package/es/components/fluid-textarea/fluid-textarea.js.map +1 -1
- package/es/components/fluid-time-picker/fluid-time-picker-select.js +1 -1
- package/es/components/fluid-time-picker/fluid-time-picker-select.js.map +1 -1
- package/es/components/fluid-time-picker/fluid-time-picker-skeleton.js +1 -1
- package/es/components/fluid-time-picker/fluid-time-picker-skeleton.js.map +1 -1
- package/es/components/fluid-time-picker/fluid-time-picker.js +1 -1
- package/es/components/fluid-time-picker/fluid-time-picker.js.map +1 -1
- package/es/components/form/form-item.js +1 -1
- package/es/components/form/form-item.js.map +1 -1
- package/es/components/form/form.js +1 -1
- package/es/components/form/form.js.map +1 -1
- package/es/components/form-group/form-group.js +1 -1
- package/es/components/form-group/form-group.js.map +1 -1
- package/es/components/grid/column-hang.js +1 -1
- package/es/components/grid/column-hang.js.map +1 -1
- package/es/components/grid/column.js +1 -1
- package/es/components/grid/column.js.map +1 -1
- package/es/components/grid/defs.js.map +1 -1
- package/es/components/grid/grid-context.js.map +1 -1
- package/es/components/grid/grid.js +1 -1
- package/es/components/grid/grid.js.map +1 -1
- package/es/components/heading/heading.js +1 -1
- package/es/components/heading/heading.js.map +1 -1
- package/es/components/icon/icon.js +1 -1
- package/es/components/icon/icon.js.map +1 -1
- package/es/components/icon-button/defs.js.map +1 -1
- package/es/components/icon-button/icon-button.js +1 -1
- package/es/components/icon-button/icon-button.js.map +1 -1
- package/es/components/icon-indicator/defs.js.map +1 -1
- package/es/components/icon-indicator/icon-indicator.js +1 -1
- package/es/components/icon-indicator/icon-indicator.js.map +1 -1
- package/es/components/inline-loading/defs.js.map +1 -1
- package/es/components/inline-loading/inline-loading.js +1 -1
- package/es/components/inline-loading/inline-loading.js.map +1 -1
- package/es/components/layer/layer.js +1 -1
- package/es/components/layer/layer.js.map +1 -1
- package/es/components/layout/layout-constraint.js +1 -1
- package/es/components/layout/layout-constraint.js.map +1 -1
- package/es/components/layout/layout.js +1 -1
- package/es/components/layout/layout.js.map +1 -1
- package/es/components/link/link.d.ts +1 -1
- package/es/components/link/link.js +1 -1
- package/es/components/link/link.js.map +1 -1
- package/es/components/link/link.scss.js +1 -1
- package/es/components/list/list-item.js +1 -1
- package/es/components/list/list-item.js.map +1 -1
- package/es/components/list/ordered-list.js +1 -1
- package/es/components/list/ordered-list.js.map +1 -1
- package/es/components/list/unordered-list.js +1 -1
- package/es/components/list/unordered-list.js.map +1 -1
- package/es/components/loading/defs.js.map +1 -1
- package/es/components/loading/loading-icon.js.map +1 -1
- package/es/components/loading/loading.js +1 -1
- package/es/components/loading/loading.js.map +1 -1
- package/es/components/menu/defs.js.map +1 -1
- package/es/components/menu/menu-context.js.map +1 -1
- package/es/components/menu/menu-item-divider.js +1 -1
- package/es/components/menu/menu-item-divider.js.map +1 -1
- package/es/components/menu/menu-item-group.js +1 -1
- package/es/components/menu/menu-item-group.js.map +1 -1
- package/es/components/menu/menu-item-radio-group.js +1 -1
- package/es/components/menu/menu-item-radio-group.js.map +1 -1
- package/es/components/menu/menu-item-selectable.d.ts +4 -0
- package/es/components/menu/menu-item-selectable.d.ts.map +1 -1
- package/es/components/menu/menu-item-selectable.js +4 -4
- package/es/components/menu/menu-item-selectable.js.map +1 -1
- package/es/components/menu/menu-item.js +1 -1
- package/es/components/menu/menu-item.js.map +1 -1
- package/es/components/menu/menu.d.ts +14 -6
- package/es/components/menu/menu.d.ts.map +1 -1
- package/es/components/menu/menu.js +9 -7
- package/es/components/menu/menu.js.map +1 -1
- package/es/components/menu-button/defs.js.map +1 -1
- package/es/components/menu-button/menu-button.js +1 -1
- package/es/components/menu-button/menu-button.js.map +1 -1
- package/es/components/menu-button/menu-button.scss.js +1 -1
- package/es/components/modal/defs.js.map +1 -1
- package/es/components/modal/modal-base.js +1 -1
- package/es/components/modal/modal-base.js.map +1 -1
- package/es/components/modal/modal-body-content.js +1 -1
- package/es/components/modal/modal-body-content.js.map +1 -1
- package/es/components/modal/modal-body.js +1 -1
- package/es/components/modal/modal-body.js.map +1 -1
- package/es/components/modal/modal-close-button.js +1 -1
- package/es/components/modal/modal-close-button.js.map +1 -1
- package/es/components/modal/modal-footer-button.js +1 -1
- package/es/components/modal/modal-footer-button.js.map +1 -1
- package/es/components/modal/modal-footer.js +1 -1
- package/es/components/modal/modal-footer.js.map +1 -1
- package/es/components/modal/modal-header.js +1 -1
- package/es/components/modal/modal-header.js.map +1 -1
- package/es/components/modal/modal-heading.js +1 -1
- package/es/components/modal/modal-heading.js.map +1 -1
- package/es/components/modal/modal-label.js +1 -1
- package/es/components/modal/modal-label.js.map +1 -1
- package/es/components/modal/modal.js +1 -1
- package/es/components/modal/modal.js.map +1 -1
- package/es/components/modal/modal.scss.js +1 -1
- package/es/components/multi-select/defs.js.map +1 -1
- package/es/components/multi-select/multi-select-item.js +1 -1
- package/es/components/multi-select/multi-select-item.js.map +1 -1
- package/es/components/multi-select/multi-select.js +1 -1
- package/es/components/multi-select/multi-select.js.map +1 -1
- package/es/components/multi-select/multi-select.scss.js +1 -1
- package/es/components/notification/actionable-notification-button.js +1 -1
- package/es/components/notification/actionable-notification-button.js.map +1 -1
- package/es/components/notification/actionable-notification.js +1 -1
- package/es/components/notification/actionable-notification.js.map +1 -1
- package/es/components/notification/actionable-notification.scss.js +1 -1
- package/es/components/notification/callout-notification.js +1 -1
- package/es/components/notification/callout-notification.js.map +1 -1
- package/es/components/notification/defs.js.map +1 -1
- package/es/components/notification/inline-notification.js +1 -1
- package/es/components/notification/inline-notification.js.map +1 -1
- package/es/components/notification/inline-notification.scss.js +1 -1
- package/es/components/notification/stories/helper.js.map +1 -1
- package/es/components/notification/toast-notification.js +1 -1
- package/es/components/notification/toast-notification.js.map +1 -1
- package/es/components/notification/toast-notification.scss.js +1 -1
- package/es/components/number-input/defs.js.map +1 -1
- package/es/components/number-input/number-input-skeleton.js +1 -1
- package/es/components/number-input/number-input-skeleton.js.map +1 -1
- package/es/components/number-input/number-input.js +1 -1
- package/es/components/number-input/number-input.js.map +1 -1
- package/es/components/overflow-menu/defs.js.map +1 -1
- package/es/components/overflow-menu/overflow-menu-body.js +1 -1
- package/es/components/overflow-menu/overflow-menu-body.js.map +1 -1
- package/es/components/overflow-menu/overflow-menu-item.js +1 -1
- package/es/components/overflow-menu/overflow-menu-item.js.map +1 -1
- package/es/components/overflow-menu/overflow-menu.d.ts +8 -0
- package/es/components/overflow-menu/overflow-menu.d.ts.map +1 -1
- package/es/components/overflow-menu/overflow-menu.js +11 -10
- package/es/components/overflow-menu/overflow-menu.js.map +1 -1
- package/es/components/overflow-menu/overflow-menu.scss.js +1 -1
- package/es/components/page-header/page-header-breadcrumb.js +1 -1
- package/es/components/page-header/page-header-breadcrumb.js.map +1 -1
- package/es/components/page-header/page-header-content-text.js +1 -1
- package/es/components/page-header/page-header-content-text.js.map +1 -1
- package/es/components/page-header/page-header-content.js +1 -1
- package/es/components/page-header/page-header-content.js.map +1 -1
- package/es/components/page-header/page-header-hero-image.js +1 -1
- package/es/components/page-header/page-header-hero-image.js.map +1 -1
- package/es/components/page-header/page-header-tabs.js +1 -1
- package/es/components/page-header/page-header-tabs.js.map +1 -1
- package/es/components/page-header/page-header.js +1 -1
- package/es/components/page-header/page-header.js.map +1 -1
- package/es/components/pagination/defs.js.map +1 -1
- package/es/components/pagination/pagination.d.ts +3 -0
- package/es/components/pagination/pagination.d.ts.map +1 -1
- package/es/components/pagination/pagination.js +18 -23
- package/es/components/pagination/pagination.js.map +1 -1
- package/es/components/pagination/pagination.scss.js +1 -1
- package/es/components/pagination-nav/defs.js.map +1 -1
- package/es/components/pagination-nav/pagination-nav.js +1 -1
- package/es/components/pagination-nav/pagination-nav.js.map +1 -1
- package/es/components/pagination-nav/pagination-nav.scss.js +1 -1
- package/es/components/password-input/defs.js.map +1 -1
- package/es/components/password-input/password-input-skeleton.js +1 -1
- package/es/components/password-input/password-input-skeleton.js.map +1 -1
- package/es/components/password-input/password-input.js +1 -1
- package/es/components/password-input/password-input.js.map +1 -1
- package/es/components/popover/defs.js.map +1 -1
- package/es/components/popover/popover-content.js +1 -1
- package/es/components/popover/popover-content.js.map +1 -1
- package/es/components/popover/popover.d.ts +5 -0
- package/es/components/popover/popover.d.ts.map +1 -1
- package/es/components/popover/popover.js +23 -2
- package/es/components/popover/popover.js.map +1 -1
- package/es/components/popover/popover.scss.js +1 -1
- package/es/components/progress-bar/defs.js.map +1 -1
- package/es/components/progress-bar/progress-bar.d.ts +1 -0
- package/es/components/progress-bar/progress-bar.d.ts.map +1 -1
- package/es/components/progress-bar/progress-bar.js +5 -5
- package/es/components/progress-bar/progress-bar.js.map +1 -1
- package/es/components/progress-indicator/defs.js.map +1 -1
- package/es/components/progress-indicator/progress-indicator-skeleton.js +1 -1
- package/es/components/progress-indicator/progress-indicator-skeleton.js.map +1 -1
- package/es/components/progress-indicator/progress-indicator.js +1 -1
- package/es/components/progress-indicator/progress-indicator.js.map +1 -1
- package/es/components/progress-indicator/progress-indicator.scss.js +1 -1
- package/es/components/progress-indicator/progress-step-skeleton.js +1 -1
- package/es/components/progress-indicator/progress-step-skeleton.js.map +1 -1
- package/es/components/progress-indicator/progress-step.js +1 -1
- package/es/components/progress-indicator/progress-step.js.map +1 -1
- package/es/components/radio-button/defs.js.map +1 -1
- package/es/components/radio-button/radio-button-group.d.ts +3 -0
- package/es/components/radio-button/radio-button-group.d.ts.map +1 -1
- package/es/components/radio-button/radio-button-group.js +22 -5
- package/es/components/radio-button/radio-button-group.js.map +1 -1
- package/es/components/radio-button/radio-button-skeleton.js +1 -1
- package/es/components/radio-button/radio-button-skeleton.js.map +1 -1
- package/es/components/radio-button/radio-button.js +1 -1
- package/es/components/radio-button/radio-button.js.map +1 -1
- package/es/components/search/defs.js.map +1 -1
- package/es/components/search/search-skeleton.js +1 -1
- package/es/components/search/search-skeleton.js.map +1 -1
- package/es/components/search/search.js +1 -1
- package/es/components/search/search.js.map +1 -1
- package/es/components/select/select-item-group.js +1 -1
- package/es/components/select/select-item-group.js.map +1 -1
- package/es/components/select/select-item.js +1 -1
- package/es/components/select/select-item.js.map +1 -1
- package/es/components/select/select-skeleton.js +1 -1
- package/es/components/select/select-skeleton.js.map +1 -1
- package/es/components/select/select.js +1 -1
- package/es/components/select/select.js.map +1 -1
- package/es/components/shape-indicator/defs.js.map +1 -1
- package/es/components/shape-indicator/shape-indicator.js +1 -1
- package/es/components/shape-indicator/shape-indicator.js.map +1 -1
- package/es/components/side-panel/defs.js.map +1 -1
- package/es/components/side-panel/side-panel.js +1 -1
- package/es/components/side-panel/side-panel.js.map +1 -1
- package/es/components/skeleton-icon/skeleton-icon.js +1 -1
- package/es/components/skeleton-icon/skeleton-icon.js.map +1 -1
- package/es/components/skeleton-placeholder/skeleton-placeholder.js +1 -1
- package/es/components/skeleton-placeholder/skeleton-placeholder.js.map +1 -1
- package/es/components/skeleton-text/defs.js.map +1 -1
- package/es/components/skeleton-text/skeleton-text.js +1 -1
- package/es/components/skeleton-text/skeleton-text.js.map +1 -1
- package/es/components/skip-to-content/skip-to-content.js +1 -1
- package/es/components/skip-to-content/skip-to-content.js.map +1 -1
- package/es/components/skip-to-content/skip-to-content.scss.js +1 -1
- package/es/components/slider/slider-input.js +1 -1
- package/es/components/slider/slider-input.js.map +1 -1
- package/es/components/slider/slider-skeleton.js +1 -1
- package/es/components/slider/slider-skeleton.js.map +1 -1
- package/es/components/slider/slider.js +1 -1
- package/es/components/slider/slider.js.map +1 -1
- package/es/components/slug/defs.js.map +1 -1
- package/es/components/slug/slug-action-button.js +1 -1
- package/es/components/slug/slug-action-button.js.map +1 -1
- package/es/components/slug/slug.js +1 -1
- package/es/components/slug/slug.js.map +1 -1
- package/es/components/slug/slug.scss.js +1 -1
- package/es/components/stack/defs.js.map +1 -1
- package/es/components/stack/stack.js +1 -1
- package/es/components/stack/stack.js.map +1 -1
- package/es/components/structured-list/structured-list-body.js +1 -1
- package/es/components/structured-list/structured-list-body.js.map +1 -1
- package/es/components/structured-list/structured-list-cell.js +1 -1
- package/es/components/structured-list/structured-list-cell.js.map +1 -1
- package/es/components/structured-list/structured-list-head.js +1 -1
- package/es/components/structured-list/structured-list-head.js.map +1 -1
- package/es/components/structured-list/structured-list-header-cell-skeleton.js +1 -1
- package/es/components/structured-list/structured-list-header-cell-skeleton.js.map +1 -1
- package/es/components/structured-list/structured-list-header-cell.js +1 -1
- package/es/components/structured-list/structured-list-header-cell.js.map +1 -1
- package/es/components/structured-list/structured-list-header-row.js +1 -1
- package/es/components/structured-list/structured-list-header-row.js.map +1 -1
- package/es/components/structured-list/structured-list-row.js +1 -1
- package/es/components/structured-list/structured-list-row.js.map +1 -1
- package/es/components/structured-list/structured-list.js +1 -1
- package/es/components/structured-list/structured-list.js.map +1 -1
- package/es/components/tabs/defs.js.map +1 -1
- package/es/components/tabs/stories/tabs-wrapper.js +1 -1
- package/es/components/tabs/stories/tabs-wrapper.js.map +1 -1
- package/es/components/tabs/tab-skeleton.js +1 -1
- package/es/components/tabs/tab-skeleton.js.map +1 -1
- package/es/components/tabs/tab.js +1 -1
- package/es/components/tabs/tab.js.map +1 -1
- package/es/components/tabs/tabs-skeleton.js +1 -1
- package/es/components/tabs/tabs-skeleton.js.map +1 -1
- package/es/components/tabs/tabs-vertical.js +1 -1
- package/es/components/tabs/tabs-vertical.js.map +1 -1
- package/es/components/tabs/tabs.js +1 -1
- package/es/components/tabs/tabs.js.map +1 -1
- package/es/components/tabs/tabs.scss.js +1 -1
- package/es/components/tag/defs.js.map +1 -1
- package/es/components/tag/dismissible-tag.js +1 -1
- package/es/components/tag/dismissible-tag.js.map +1 -1
- package/es/components/tag/operational-tag.js +1 -1
- package/es/components/tag/operational-tag.js.map +1 -1
- package/es/components/tag/selectable-tag.js +1 -1
- package/es/components/tag/selectable-tag.js.map +1 -1
- package/es/components/tag/tag-skeleton.js +1 -1
- package/es/components/tag/tag-skeleton.js.map +1 -1
- package/es/components/tag/tag.js +1 -1
- package/es/components/tag/tag.js.map +1 -1
- package/es/components/tag/tag.scss.js +1 -1
- package/es/components/tearsheet/defs.js.map +1 -1
- package/es/components/tearsheet/tearsheet.js +1 -1
- package/es/components/tearsheet/tearsheet.js.map +1 -1
- package/es/components/text-input/defs.js.map +1 -1
- package/es/components/text-input/stories/helpers.js.map +1 -1
- package/es/components/text-input/text-input-skeleton.js +1 -1
- package/es/components/text-input/text-input-skeleton.js.map +1 -1
- package/es/components/text-input/text-input.js +1 -1
- package/es/components/text-input/text-input.js.map +1 -1
- package/es/components/textarea/stories/helpers.js.map +1 -1
- package/es/components/textarea/textarea-skeleton.js +1 -1
- package/es/components/textarea/textarea-skeleton.js.map +1 -1
- package/es/components/textarea/textarea.js +1 -1
- package/es/components/textarea/textarea.js.map +1 -1
- package/es/components/tile/clickable-tile.js +1 -1
- package/es/components/tile/clickable-tile.js.map +1 -1
- package/es/components/tile/expandable-tile.js +1 -1
- package/es/components/tile/expandable-tile.js.map +1 -1
- package/es/components/tile/radio-tile.js +1 -1
- package/es/components/tile/radio-tile.js.map +1 -1
- package/es/components/tile/selectable-tile.js +1 -1
- package/es/components/tile/selectable-tile.js.map +1 -1
- package/es/components/tile/tile-group.js +1 -1
- package/es/components/tile/tile-group.js.map +1 -1
- package/es/components/tile/tile.js +1 -1
- package/es/components/tile/tile.js.map +1 -1
- package/es/components/tile/tile.scss.js +1 -1
- package/es/components/time-picker/defs.js.map +1 -1
- package/es/components/time-picker/time-picker-select.js +1 -1
- package/es/components/time-picker/time-picker-select.js.map +1 -1
- package/es/components/time-picker/time-picker.js +1 -1
- package/es/components/time-picker/time-picker.js.map +1 -1
- package/es/components/toggle/defs.js.map +1 -1
- package/es/components/toggle/toggle-skeleton.js +1 -1
- package/es/components/toggle/toggle-skeleton.js.map +1 -1
- package/es/components/toggle/toggle.js +1 -1
- package/es/components/toggle/toggle.js.map +1 -1
- package/es/components/toggle-tip/toggletip.js +1 -1
- package/es/components/toggle-tip/toggletip.js.map +1 -1
- package/es/components/toggle-tip/toggletip.scss.js +1 -1
- package/es/components/tooltip/definition-tooltip.js +1 -1
- package/es/components/tooltip/definition-tooltip.js.map +1 -1
- package/es/components/tooltip/tooltip-content.js +1 -1
- package/es/components/tooltip/tooltip-content.js.map +1 -1
- package/es/components/tooltip/tooltip.js +1 -1
- package/es/components/tooltip/tooltip.js.map +1 -1
- package/es/components/tooltip/tooltip.scss.js +1 -1
- package/es/components/tree-view/defs.js.map +1 -1
- package/es/components/tree-view/tree-node.js +1 -1
- package/es/components/tree-view/tree-node.js.map +1 -1
- package/es/components/tree-view/tree-view.js +1 -1
- package/es/components/tree-view/tree-view.js.map +1 -1
- package/es/components/ui-shell/defs.js.map +1 -1
- package/es/components/ui-shell/header-global-action.js +1 -1
- package/es/components/ui-shell/header-global-action.js.map +1 -1
- package/es/components/ui-shell/header-menu-button.js +1 -1
- package/es/components/ui-shell/header-menu-button.js.map +1 -1
- package/es/components/ui-shell/header-menu-item.js +1 -1
- package/es/components/ui-shell/header-menu-item.js.map +1 -1
- package/es/components/ui-shell/header-menu.js +1 -1
- package/es/components/ui-shell/header-menu.js.map +1 -1
- package/es/components/ui-shell/header-name.js +1 -1
- package/es/components/ui-shell/header-name.js.map +1 -1
- package/es/components/ui-shell/header-nav-item.js +1 -1
- package/es/components/ui-shell/header-nav-item.js.map +1 -1
- package/es/components/ui-shell/header-nav.js +1 -1
- package/es/components/ui-shell/header-nav.js.map +1 -1
- package/es/components/ui-shell/header-panel.js +1 -1
- package/es/components/ui-shell/header-panel.js.map +1 -1
- package/es/components/ui-shell/header-side-nav-items.js +1 -1
- package/es/components/ui-shell/header-side-nav-items.js.map +1 -1
- package/es/components/ui-shell/header.js +1 -1
- package/es/components/ui-shell/header.js.map +1 -1
- package/es/components/ui-shell/header.scss.js +1 -1
- package/es/components/ui-shell/side-nav-divider.js +1 -1
- package/es/components/ui-shell/side-nav-divider.js.map +1 -1
- package/es/components/ui-shell/side-nav-items.js +1 -1
- package/es/components/ui-shell/side-nav-items.js.map +1 -1
- package/es/components/ui-shell/side-nav-link.js +1 -1
- package/es/components/ui-shell/side-nav-link.js.map +1 -1
- package/es/components/ui-shell/side-nav-menu-item.js +1 -1
- package/es/components/ui-shell/side-nav-menu-item.js.map +1 -1
- package/es/components/ui-shell/side-nav-menu.js +1 -1
- package/es/components/ui-shell/side-nav-menu.js.map +1 -1
- package/es/components/ui-shell/side-nav.js +1 -1
- package/es/components/ui-shell/side-nav.js.map +1 -1
- package/es/components/ui-shell/switcher-divider.js +1 -1
- package/es/components/ui-shell/switcher-divider.js.map +1 -1
- package/es/components/ui-shell/switcher-item.js +1 -1
- package/es/components/ui-shell/switcher-item.js.map +1 -1
- package/es/components/ui-shell/switcher.js +1 -1
- package/es/components/ui-shell/switcher.js.map +1 -1
- package/es/globals/controllers/floating-controller.js.map +1 -1
- package/es/globals/decorators/carbon-element.js.map +1 -1
- package/es/globals/decorators/host-listener.js.map +1 -1
- package/es/globals/directives/if-non-empty.js.map +1 -1
- package/es/globals/directives/spread.js.map +1 -1
- package/es/globals/internal/collection-helpers.js.map +1 -1
- package/es/globals/internal/deep-shadow-contains.js.map +1 -1
- package/es/globals/internal/icon-loader-utils.js.map +1 -1
- package/es/globals/internal/icon-loader.js.map +1 -1
- package/es/globals/internal/radio-group-manager.js.map +1 -1
- package/es/globals/mixins/focus.js.map +1 -1
- package/es/globals/mixins/form.js.map +1 -1
- package/es/globals/mixins/host-listener.js.map +1 -1
- package/es/globals/mixins/on.js.map +1 -1
- package/es/globals/mixins/validity.js.map +1 -1
- package/es/globals/shared-enums.js.map +1 -1
- package/es/node_modules/flatpickr/dist/esm/index.js.map +1 -1
- package/es/node_modules/flatpickr/dist/esm/l10n/default.js.map +1 -1
- package/es/node_modules/flatpickr/dist/esm/plugins/rangePlugin.js.map +1 -1
- package/es/node_modules/flatpickr/dist/esm/types/options.js.map +1 -1
- package/es/node_modules/flatpickr/dist/esm/utils/dates.js.map +1 -1
- package/es/node_modules/flatpickr/dist/esm/utils/dom.js.map +1 -1
- package/es/node_modules/flatpickr/dist/esm/utils/formatting.js.map +1 -1
- package/es/node_modules/flatpickr/dist/esm/utils/index.js.map +1 -1
- package/es/node_modules/flatpickr/dist/esm/utils/polyfills.js.map +1 -1
- package/es/packages/feature-flags/es/index.js.map +1 -1
- package/es-custom/_virtual/{_@oxc-project_runtime@0.126.0/helpers → _@oxc-project_runtime@0.135.0/helpers/esm}/decorate.js +1 -1
- package/es-custom/components/accordion/accordion-item-skeleton.js +1 -1
- package/es-custom/components/accordion/accordion-item-skeleton.js.map +1 -1
- package/es-custom/components/accordion/accordion-item.js +1 -1
- package/es-custom/components/accordion/accordion-item.js.map +1 -1
- package/es-custom/components/accordion/accordion-skeleton.js +1 -1
- package/es-custom/components/accordion/accordion-skeleton.js.map +1 -1
- package/es-custom/components/accordion/accordion.js +1 -1
- package/es-custom/components/accordion/accordion.js.map +1 -1
- package/es-custom/components/accordion/accordion.scss.js +1 -1
- package/es-custom/components/accordion/accordion.scss.js.map +1 -1
- package/es-custom/components/accordion/defs.js.map +1 -1
- package/es-custom/components/ai-label/ai-label-action-button.js +1 -1
- package/es-custom/components/ai-label/ai-label-action-button.js.map +1 -1
- package/es-custom/components/ai-label/ai-label.js +1 -1
- package/es-custom/components/ai-label/ai-label.js.map +1 -1
- package/es-custom/components/ai-label/ai-label.scss.js +1 -1
- package/es-custom/components/ai-label/defs.js.map +1 -1
- package/es-custom/components/ai-skeleton/ai-skeleton-icon.js +1 -1
- package/es-custom/components/ai-skeleton/ai-skeleton-icon.js.map +1 -1
- package/es-custom/components/ai-skeleton/ai-skeleton-placeholder.js +1 -1
- package/es-custom/components/ai-skeleton/ai-skeleton-placeholder.js.map +1 -1
- package/es-custom/components/ai-skeleton/ai-skeleton-text.js +1 -1
- package/es-custom/components/ai-skeleton/ai-skeleton-text.js.map +1 -1
- package/es-custom/components/badge-indicator/badge-indicator.js +1 -1
- package/es-custom/components/badge-indicator/badge-indicator.js.map +1 -1
- package/es-custom/components/breadcrumb/breadcrumb-item.js +1 -1
- package/es-custom/components/breadcrumb/breadcrumb-item.js.map +1 -1
- package/es-custom/components/breadcrumb/breadcrumb-link.js +1 -1
- package/es-custom/components/breadcrumb/breadcrumb-link.js.map +1 -1
- package/es-custom/components/breadcrumb/breadcrumb-overflow-menu.js +1 -1
- package/es-custom/components/breadcrumb/breadcrumb-overflow-menu.js.map +1 -1
- package/es-custom/components/breadcrumb/breadcrumb-skeleton.js +1 -1
- package/es-custom/components/breadcrumb/breadcrumb-skeleton.js.map +1 -1
- package/es-custom/components/breadcrumb/breadcrumb.js +1 -1
- package/es-custom/components/breadcrumb/breadcrumb.js.map +1 -1
- package/es-custom/components/breadcrumb/breadcrumb.scss.js +1 -1
- package/es-custom/components/breadcrumb/defs.js.map +1 -1
- package/es-custom/components/button/button-set-base.js +1 -1
- package/es-custom/components/button/button-set-base.js.map +1 -1
- package/es-custom/components/button/button-set.d.ts +4 -0
- package/es-custom/components/button/button-set.d.ts.map +1 -1
- package/es-custom/components/button/button-set.js +5 -5
- package/es-custom/components/button/button-set.js.map +1 -1
- package/es-custom/components/button/button-skeleton.js +1 -1
- package/es-custom/components/button/button-skeleton.js.map +1 -1
- package/es-custom/components/button/button.js +1 -1
- package/es-custom/components/button/button.js.map +1 -1
- package/es-custom/components/button/button.scss.js +1 -1
- package/es-custom/components/button/defs.js.map +1 -1
- package/es-custom/components/chat-button/chat-button-skeleton.js +1 -1
- package/es-custom/components/chat-button/chat-button-skeleton.js.map +1 -1
- package/es-custom/components/chat-button/chat-button.js +1 -1
- package/es-custom/components/chat-button/chat-button.js.map +1 -1
- package/es-custom/components/chat-button/defs.js.map +1 -1
- package/es-custom/components/checkbox/checkbox-group.js +1 -1
- package/es-custom/components/checkbox/checkbox-group.js.map +1 -1
- package/es-custom/components/checkbox/checkbox-skeleton.js +1 -1
- package/es-custom/components/checkbox/checkbox-skeleton.js.map +1 -1
- package/es-custom/components/checkbox/checkbox.js +1 -1
- package/es-custom/components/checkbox/checkbox.js.map +1 -1
- package/es-custom/components/checkbox/defs.js.map +1 -1
- package/es-custom/components/code-snippet/code-snippet-skeleton.js +1 -1
- package/es-custom/components/code-snippet/code-snippet-skeleton.js.map +1 -1
- package/es-custom/components/code-snippet/code-snippet.js +1 -1
- package/es-custom/components/code-snippet/code-snippet.js.map +1 -1
- package/es-custom/components/code-snippet/code-snippet.scss.js +1 -1
- package/es-custom/components/code-snippet/defs.js.map +1 -1
- package/es-custom/components/combo-box/combo-box-item.js +1 -1
- package/es-custom/components/combo-box/combo-box-item.js.map +1 -1
- package/es-custom/components/combo-box/combo-box.js +1 -1
- package/es-custom/components/combo-box/combo-box.js.map +1 -1
- package/es-custom/components/combo-button/combo-button.js +1 -1
- package/es-custom/components/combo-button/combo-button.js.map +1 -1
- package/es-custom/components/combo-button/combo-button.scss.js +1 -1
- package/es-custom/components/combo-button/defs.js.map +1 -1
- package/es-custom/components/contained-list/contained-list-description.js +1 -1
- package/es-custom/components/contained-list/contained-list-description.js.map +1 -1
- package/es-custom/components/contained-list/contained-list-item.js +1 -1
- package/es-custom/components/contained-list/contained-list-item.js.map +1 -1
- package/es-custom/components/contained-list/contained-list.js +1 -1
- package/es-custom/components/contained-list/contained-list.js.map +1 -1
- package/es-custom/components/contained-list/contained-list.scss.js +1 -1
- package/es-custom/components/content-switcher/content-switcher-item.js +1 -1
- package/es-custom/components/content-switcher/content-switcher-item.js.map +1 -1
- package/es-custom/components/content-switcher/content-switcher.js +1 -1
- package/es-custom/components/content-switcher/content-switcher.js.map +1 -1
- package/es-custom/components/content-switcher/content-switcher.scss.js +1 -1
- package/es-custom/components/content-switcher/defs.js.map +1 -1
- package/es-custom/components/copy/copy.js +1 -1
- package/es-custom/components/copy/copy.js.map +1 -1
- package/es-custom/components/copy-button/copy-button.js +1 -1
- package/es-custom/components/copy-button/copy-button.js.map +1 -1
- package/es-custom/components/copy-button/copy-button.scss.js +1 -1
- package/es-custom/components/data-table/data-table.scss.js +1 -1
- package/es-custom/components/data-table/defs.js.map +1 -1
- package/es-custom/components/data-table/table-batch-actions.d.ts +8 -0
- package/es-custom/components/data-table/table-batch-actions.d.ts.map +1 -1
- package/es-custom/components/data-table/table-batch-actions.js +10 -9
- package/es-custom/components/data-table/table-batch-actions.js.map +1 -1
- package/es-custom/components/data-table/table-body.js +1 -1
- package/es-custom/components/data-table/table-body.js.map +1 -1
- package/es-custom/components/data-table/table-cell-content.js +1 -1
- package/es-custom/components/data-table/table-cell-content.js.map +1 -1
- package/es-custom/components/data-table/table-cell.js +1 -1
- package/es-custom/components/data-table/table-cell.js.map +1 -1
- package/es-custom/components/data-table/table-expanded-row.js +1 -1
- package/es-custom/components/data-table/table-expanded-row.js.map +1 -1
- package/es-custom/components/data-table/table-head.js +1 -1
- package/es-custom/components/data-table/table-head.js.map +1 -1
- package/es-custom/components/data-table/table-header-cell.js +1 -1
- package/es-custom/components/data-table/table-header-cell.js.map +1 -1
- package/es-custom/components/data-table/table-header-description.js +1 -1
- package/es-custom/components/data-table/table-header-description.js.map +1 -1
- package/es-custom/components/data-table/table-header-row.js +1 -1
- package/es-custom/components/data-table/table-header-row.js.map +1 -1
- package/es-custom/components/data-table/table-header-title.js +1 -1
- package/es-custom/components/data-table/table-header-title.js.map +1 -1
- package/es-custom/components/data-table/table-row.js +1 -1
- package/es-custom/components/data-table/table-row.js.map +1 -1
- package/es-custom/components/data-table/table-skeleton.js +1 -1
- package/es-custom/components/data-table/table-skeleton.js.map +1 -1
- package/es-custom/components/data-table/table-toolbar-content.js +1 -1
- package/es-custom/components/data-table/table-toolbar-content.js.map +1 -1
- package/es-custom/components/data-table/table-toolbar-search.js +1 -1
- package/es-custom/components/data-table/table-toolbar-search.js.map +1 -1
- package/es-custom/components/data-table/table-toolbar.js +1 -1
- package/es-custom/components/data-table/table-toolbar.js.map +1 -1
- package/es-custom/components/data-table/table.js +1 -1
- package/es-custom/components/data-table/table.js.map +1 -1
- package/es-custom/components/date-picker/append-to-plugin.js.map +1 -1
- package/es-custom/components/date-picker/css-class-plugin.js.map +1 -1
- package/es-custom/components/date-picker/date-picker-input-skeleton.js +1 -1
- package/es-custom/components/date-picker/date-picker-input-skeleton.js.map +1 -1
- package/es-custom/components/date-picker/date-picker-input.js +1 -1
- package/es-custom/components/date-picker/date-picker-input.js.map +1 -1
- package/es-custom/components/date-picker/date-picker.js +1 -1
- package/es-custom/components/date-picker/date-picker.js.map +1 -1
- package/es-custom/components/date-picker/defs.js.map +1 -1
- package/es-custom/components/date-picker/fix-events-plugin.js.map +1 -1
- package/es-custom/components/date-picker/focus-plugin.js.map +1 -1
- package/es-custom/components/date-picker/icon-plugin.js.map +1 -1
- package/es-custom/components/date-picker/iso-date.js.map +1 -1
- package/es-custom/components/date-picker/month-select-plugin.js.map +1 -1
- package/es-custom/components/date-picker/range-plugin.js.map +1 -1
- package/es-custom/components/date-picker/shadow-dom-events-plugin.js.map +1 -1
- package/es-custom/components/date-picker/state-handshake-plugin.js.map +1 -1
- package/es-custom/components/dialog/dialog-body.js +1 -1
- package/es-custom/components/dialog/dialog-body.js.map +1 -1
- package/es-custom/components/dialog/dialog-close-button.js +1 -1
- package/es-custom/components/dialog/dialog-close-button.js.map +1 -1
- package/es-custom/components/dialog/dialog-controls.js +1 -1
- package/es-custom/components/dialog/dialog-controls.js.map +1 -1
- package/es-custom/components/dialog/dialog-footer-button.js +1 -1
- package/es-custom/components/dialog/dialog-footer-button.js.map +1 -1
- package/es-custom/components/dialog/dialog-footer.js +1 -1
- package/es-custom/components/dialog/dialog-footer.js.map +1 -1
- package/es-custom/components/dialog/dialog-header.js +1 -1
- package/es-custom/components/dialog/dialog-header.js.map +1 -1
- package/es-custom/components/dialog/dialog-subtitle.js +1 -1
- package/es-custom/components/dialog/dialog-subtitle.js.map +1 -1
- package/es-custom/components/dialog/dialog-title.js +1 -1
- package/es-custom/components/dialog/dialog-title.js.map +1 -1
- package/es-custom/components/dialog/dialog.js +1 -1
- package/es-custom/components/dialog/dialog.js.map +1 -1
- package/es-custom/components/dialog/dialog.scss.js +1 -1
- package/es-custom/components/dropdown/defs.js.map +1 -1
- package/es-custom/components/dropdown/dropdown-item.js +1 -1
- package/es-custom/components/dropdown/dropdown-item.js.map +1 -1
- package/es-custom/components/dropdown/dropdown-skeleton.js +1 -1
- package/es-custom/components/dropdown/dropdown-skeleton.js.map +1 -1
- package/es-custom/components/dropdown/dropdown.js +1 -1
- package/es-custom/components/dropdown/dropdown.js.map +1 -1
- package/es-custom/components/feature-flags/index.js +1 -1
- package/es-custom/components/feature-flags/index.js.map +1 -1
- package/es-custom/components/file-uploader/defs.js.map +1 -1
- package/es-custom/components/file-uploader/demo-file-uploader.js +1 -1
- package/es-custom/components/file-uploader/demo-file-uploader.js.map +1 -1
- package/es-custom/components/file-uploader/file-uploader-button.js +1 -1
- package/es-custom/components/file-uploader/file-uploader-button.js.map +1 -1
- package/es-custom/components/file-uploader/file-uploader-drop-container.js +1 -1
- package/es-custom/components/file-uploader/file-uploader-drop-container.js.map +1 -1
- package/es-custom/components/file-uploader/file-uploader-item.js +1 -1
- package/es-custom/components/file-uploader/file-uploader-item.js.map +1 -1
- package/es-custom/components/file-uploader/file-uploader-skeleton.js +1 -1
- package/es-custom/components/file-uploader/file-uploader-skeleton.js.map +1 -1
- package/es-custom/components/file-uploader/file-uploader.js +1 -1
- package/es-custom/components/file-uploader/file-uploader.js.map +1 -1
- package/es-custom/components/file-uploader/file-uploader.scss.js +1 -1
- package/es-custom/components/floating-menu/defs.js.map +1 -1
- package/es-custom/components/floating-menu/floating-menu.js +1 -1
- package/es-custom/components/floating-menu/floating-menu.js.map +1 -1
- package/es-custom/components/fluid-combo-box/fluid-combo-box-skeleton.js +1 -1
- package/es-custom/components/fluid-combo-box/fluid-combo-box-skeleton.js.map +1 -1
- package/es-custom/components/fluid-combo-box/fluid-combo-box.js +1 -1
- package/es-custom/components/fluid-combo-box/fluid-combo-box.js.map +1 -1
- package/es-custom/components/fluid-dropdown/fluid-dropdown-skeleton.js +1 -1
- package/es-custom/components/fluid-dropdown/fluid-dropdown-skeleton.js.map +1 -1
- package/es-custom/components/fluid-dropdown/fluid-dropdown.js +1 -1
- package/es-custom/components/fluid-dropdown/fluid-dropdown.js.map +1 -1
- package/es-custom/components/fluid-form/fluid-form.js +1 -1
- package/es-custom/components/fluid-form/fluid-form.js.map +1 -1
- package/es-custom/components/fluid-multi-select/fluid-multi-select-skeleton.js +1 -1
- package/es-custom/components/fluid-multi-select/fluid-multi-select-skeleton.js.map +1 -1
- package/es-custom/components/fluid-multi-select/fluid-multi-select.js +1 -1
- package/es-custom/components/fluid-multi-select/fluid-multi-select.js.map +1 -1
- package/es-custom/components/fluid-multi-select/fluid-multi-select.scss.js +1 -1
- package/es-custom/components/fluid-number-input/fluid-number-input-skeleton.js +1 -1
- package/es-custom/components/fluid-number-input/fluid-number-input-skeleton.js.map +1 -1
- package/es-custom/components/fluid-number-input/fluid-number-input.js +1 -1
- package/es-custom/components/fluid-number-input/fluid-number-input.js.map +1 -1
- package/es-custom/components/fluid-password-input/fluid-password-input.d.ts +1 -0
- package/es-custom/components/fluid-password-input/fluid-password-input.d.ts.map +1 -1
- package/es-custom/components/fluid-password-input/fluid-password-input.js +4 -3
- package/es-custom/components/fluid-password-input/fluid-password-input.js.map +1 -1
- package/es-custom/components/fluid-search/fluid-search-skeleton.js +1 -1
- package/es-custom/components/fluid-search/fluid-search-skeleton.js.map +1 -1
- package/es-custom/components/fluid-search/fluid-search.js +1 -1
- package/es-custom/components/fluid-search/fluid-search.js.map +1 -1
- package/es-custom/components/fluid-select/fluid-select-skeleton.js +1 -1
- package/es-custom/components/fluid-select/fluid-select-skeleton.js.map +1 -1
- package/es-custom/components/fluid-select/fluid-select.js +1 -1
- package/es-custom/components/fluid-select/fluid-select.js.map +1 -1
- package/es-custom/components/fluid-text-input/fluid-text-input-skeleton.js +1 -1
- package/es-custom/components/fluid-text-input/fluid-text-input-skeleton.js.map +1 -1
- package/es-custom/components/fluid-text-input/fluid-text-input.d.ts +1 -0
- package/es-custom/components/fluid-text-input/fluid-text-input.d.ts.map +1 -1
- package/es-custom/components/fluid-text-input/fluid-text-input.js +4 -3
- package/es-custom/components/fluid-text-input/fluid-text-input.js.map +1 -1
- package/es-custom/components/fluid-textarea/fluid-textarea-skeleton.js +1 -1
- package/es-custom/components/fluid-textarea/fluid-textarea-skeleton.js.map +1 -1
- package/es-custom/components/fluid-textarea/fluid-textarea.js +1 -1
- package/es-custom/components/fluid-textarea/fluid-textarea.js.map +1 -1
- package/es-custom/components/fluid-time-picker/fluid-time-picker-select.js +1 -1
- package/es-custom/components/fluid-time-picker/fluid-time-picker-select.js.map +1 -1
- package/es-custom/components/fluid-time-picker/fluid-time-picker-skeleton.js +1 -1
- package/es-custom/components/fluid-time-picker/fluid-time-picker-skeleton.js.map +1 -1
- package/es-custom/components/fluid-time-picker/fluid-time-picker.js +1 -1
- package/es-custom/components/fluid-time-picker/fluid-time-picker.js.map +1 -1
- package/es-custom/components/form/form-item.js +1 -1
- package/es-custom/components/form/form-item.js.map +1 -1
- package/es-custom/components/form/form.js +1 -1
- package/es-custom/components/form/form.js.map +1 -1
- package/es-custom/components/form-group/form-group.js +1 -1
- package/es-custom/components/form-group/form-group.js.map +1 -1
- package/es-custom/components/grid/column-hang.js +1 -1
- package/es-custom/components/grid/column-hang.js.map +1 -1
- package/es-custom/components/grid/column.js +1 -1
- package/es-custom/components/grid/column.js.map +1 -1
- package/es-custom/components/grid/defs.js.map +1 -1
- package/es-custom/components/grid/grid-context.js.map +1 -1
- package/es-custom/components/grid/grid.js +1 -1
- package/es-custom/components/grid/grid.js.map +1 -1
- package/es-custom/components/heading/heading.js +1 -1
- package/es-custom/components/heading/heading.js.map +1 -1
- package/es-custom/components/icon/icon.js +1 -1
- package/es-custom/components/icon/icon.js.map +1 -1
- package/es-custom/components/icon-button/defs.js.map +1 -1
- package/es-custom/components/icon-button/icon-button.js +1 -1
- package/es-custom/components/icon-button/icon-button.js.map +1 -1
- package/es-custom/components/icon-indicator/defs.js.map +1 -1
- package/es-custom/components/icon-indicator/icon-indicator.js +1 -1
- package/es-custom/components/icon-indicator/icon-indicator.js.map +1 -1
- package/es-custom/components/inline-loading/defs.js.map +1 -1
- package/es-custom/components/inline-loading/inline-loading.js +1 -1
- package/es-custom/components/inline-loading/inline-loading.js.map +1 -1
- package/es-custom/components/layer/layer.js +1 -1
- package/es-custom/components/layer/layer.js.map +1 -1
- package/es-custom/components/layout/layout-constraint.js +1 -1
- package/es-custom/components/layout/layout-constraint.js.map +1 -1
- package/es-custom/components/layout/layout.js +1 -1
- package/es-custom/components/layout/layout.js.map +1 -1
- package/es-custom/components/link/link.d.ts +1 -1
- package/es-custom/components/link/link.js +1 -1
- package/es-custom/components/link/link.js.map +1 -1
- package/es-custom/components/link/link.scss.js +1 -1
- package/es-custom/components/list/list-item.js +1 -1
- package/es-custom/components/list/list-item.js.map +1 -1
- package/es-custom/components/list/ordered-list.js +1 -1
- package/es-custom/components/list/ordered-list.js.map +1 -1
- package/es-custom/components/list/unordered-list.js +1 -1
- package/es-custom/components/list/unordered-list.js.map +1 -1
- package/es-custom/components/loading/defs.js.map +1 -1
- package/es-custom/components/loading/loading-icon.js.map +1 -1
- package/es-custom/components/loading/loading.js +1 -1
- package/es-custom/components/loading/loading.js.map +1 -1
- package/es-custom/components/menu/defs.js.map +1 -1
- package/es-custom/components/menu/menu-context.js.map +1 -1
- package/es-custom/components/menu/menu-item-divider.js +1 -1
- package/es-custom/components/menu/menu-item-divider.js.map +1 -1
- package/es-custom/components/menu/menu-item-group.js +1 -1
- package/es-custom/components/menu/menu-item-group.js.map +1 -1
- package/es-custom/components/menu/menu-item-radio-group.js +1 -1
- package/es-custom/components/menu/menu-item-radio-group.js.map +1 -1
- package/es-custom/components/menu/menu-item-selectable.d.ts +4 -0
- package/es-custom/components/menu/menu-item-selectable.d.ts.map +1 -1
- package/es-custom/components/menu/menu-item-selectable.js +4 -4
- package/es-custom/components/menu/menu-item-selectable.js.map +1 -1
- package/es-custom/components/menu/menu-item.js +1 -1
- package/es-custom/components/menu/menu-item.js.map +1 -1
- package/es-custom/components/menu/menu.d.ts +14 -6
- package/es-custom/components/menu/menu.d.ts.map +1 -1
- package/es-custom/components/menu/menu.js +9 -7
- package/es-custom/components/menu/menu.js.map +1 -1
- package/es-custom/components/menu-button/defs.js.map +1 -1
- package/es-custom/components/menu-button/menu-button.js +1 -1
- package/es-custom/components/menu-button/menu-button.js.map +1 -1
- package/es-custom/components/menu-button/menu-button.scss.js +1 -1
- package/es-custom/components/modal/defs.js.map +1 -1
- package/es-custom/components/modal/modal-base.js +1 -1
- package/es-custom/components/modal/modal-base.js.map +1 -1
- package/es-custom/components/modal/modal-body-content.js +1 -1
- package/es-custom/components/modal/modal-body-content.js.map +1 -1
- package/es-custom/components/modal/modal-body.js +1 -1
- package/es-custom/components/modal/modal-body.js.map +1 -1
- package/es-custom/components/modal/modal-close-button.js +1 -1
- package/es-custom/components/modal/modal-close-button.js.map +1 -1
- package/es-custom/components/modal/modal-footer-button.js +1 -1
- package/es-custom/components/modal/modal-footer-button.js.map +1 -1
- package/es-custom/components/modal/modal-footer.js +1 -1
- package/es-custom/components/modal/modal-footer.js.map +1 -1
- package/es-custom/components/modal/modal-header.js +1 -1
- package/es-custom/components/modal/modal-header.js.map +1 -1
- package/es-custom/components/modal/modal-heading.js +1 -1
- package/es-custom/components/modal/modal-heading.js.map +1 -1
- package/es-custom/components/modal/modal-label.js +1 -1
- package/es-custom/components/modal/modal-label.js.map +1 -1
- package/es-custom/components/modal/modal.js +1 -1
- package/es-custom/components/modal/modal.js.map +1 -1
- package/es-custom/components/modal/modal.scss.js +1 -1
- package/es-custom/components/multi-select/defs.js.map +1 -1
- package/es-custom/components/multi-select/multi-select-item.js +1 -1
- package/es-custom/components/multi-select/multi-select-item.js.map +1 -1
- package/es-custom/components/multi-select/multi-select.js +1 -1
- package/es-custom/components/multi-select/multi-select.js.map +1 -1
- package/es-custom/components/multi-select/multi-select.scss.js +1 -1
- package/es-custom/components/notification/actionable-notification-button.js +1 -1
- package/es-custom/components/notification/actionable-notification-button.js.map +1 -1
- package/es-custom/components/notification/actionable-notification.js +1 -1
- package/es-custom/components/notification/actionable-notification.js.map +1 -1
- package/es-custom/components/notification/actionable-notification.scss.js +1 -1
- package/es-custom/components/notification/callout-notification.js +1 -1
- package/es-custom/components/notification/callout-notification.js.map +1 -1
- package/es-custom/components/notification/defs.js.map +1 -1
- package/es-custom/components/notification/inline-notification.js +1 -1
- package/es-custom/components/notification/inline-notification.js.map +1 -1
- package/es-custom/components/notification/inline-notification.scss.js +1 -1
- package/es-custom/components/notification/stories/helper.js.map +1 -1
- package/es-custom/components/notification/toast-notification.js +1 -1
- package/es-custom/components/notification/toast-notification.js.map +1 -1
- package/es-custom/components/notification/toast-notification.scss.js +1 -1
- package/es-custom/components/number-input/defs.js.map +1 -1
- package/es-custom/components/number-input/number-input-skeleton.js +1 -1
- package/es-custom/components/number-input/number-input-skeleton.js.map +1 -1
- package/es-custom/components/number-input/number-input.js +1 -1
- package/es-custom/components/number-input/number-input.js.map +1 -1
- package/es-custom/components/overflow-menu/defs.js.map +1 -1
- package/es-custom/components/overflow-menu/overflow-menu-body.js +1 -1
- package/es-custom/components/overflow-menu/overflow-menu-body.js.map +1 -1
- package/es-custom/components/overflow-menu/overflow-menu-item.js +1 -1
- package/es-custom/components/overflow-menu/overflow-menu-item.js.map +1 -1
- package/es-custom/components/overflow-menu/overflow-menu.d.ts +8 -0
- package/es-custom/components/overflow-menu/overflow-menu.d.ts.map +1 -1
- package/es-custom/components/overflow-menu/overflow-menu.js +11 -10
- package/es-custom/components/overflow-menu/overflow-menu.js.map +1 -1
- package/es-custom/components/overflow-menu/overflow-menu.scss.js +1 -1
- package/es-custom/components/page-header/page-header-breadcrumb.js +1 -1
- package/es-custom/components/page-header/page-header-breadcrumb.js.map +1 -1
- package/es-custom/components/page-header/page-header-content-text.js +1 -1
- package/es-custom/components/page-header/page-header-content-text.js.map +1 -1
- package/es-custom/components/page-header/page-header-content.js +1 -1
- package/es-custom/components/page-header/page-header-content.js.map +1 -1
- package/es-custom/components/page-header/page-header-hero-image.js +1 -1
- package/es-custom/components/page-header/page-header-hero-image.js.map +1 -1
- package/es-custom/components/page-header/page-header-tabs.js +1 -1
- package/es-custom/components/page-header/page-header-tabs.js.map +1 -1
- package/es-custom/components/page-header/page-header.js +1 -1
- package/es-custom/components/page-header/page-header.js.map +1 -1
- package/es-custom/components/pagination/defs.js.map +1 -1
- package/es-custom/components/pagination/pagination.d.ts +3 -0
- package/es-custom/components/pagination/pagination.d.ts.map +1 -1
- package/es-custom/components/pagination/pagination.js +18 -23
- package/es-custom/components/pagination/pagination.js.map +1 -1
- package/es-custom/components/pagination/pagination.scss.js +1 -1
- package/es-custom/components/pagination-nav/defs.js.map +1 -1
- package/es-custom/components/pagination-nav/pagination-nav.js +1 -1
- package/es-custom/components/pagination-nav/pagination-nav.js.map +1 -1
- package/es-custom/components/pagination-nav/pagination-nav.scss.js +1 -1
- package/es-custom/components/password-input/defs.js.map +1 -1
- package/es-custom/components/password-input/password-input-skeleton.js +1 -1
- package/es-custom/components/password-input/password-input-skeleton.js.map +1 -1
- package/es-custom/components/password-input/password-input.js +1 -1
- package/es-custom/components/password-input/password-input.js.map +1 -1
- package/es-custom/components/popover/defs.js.map +1 -1
- package/es-custom/components/popover/popover-content.js +1 -1
- package/es-custom/components/popover/popover-content.js.map +1 -1
- package/es-custom/components/popover/popover.d.ts +5 -0
- package/es-custom/components/popover/popover.d.ts.map +1 -1
- package/es-custom/components/popover/popover.js +23 -2
- package/es-custom/components/popover/popover.js.map +1 -1
- package/es-custom/components/popover/popover.scss.js +1 -1
- package/es-custom/components/progress-bar/defs.js.map +1 -1
- package/es-custom/components/progress-bar/progress-bar.d.ts +1 -0
- package/es-custom/components/progress-bar/progress-bar.d.ts.map +1 -1
- package/es-custom/components/progress-bar/progress-bar.js +5 -5
- package/es-custom/components/progress-bar/progress-bar.js.map +1 -1
- package/es-custom/components/progress-indicator/defs.js.map +1 -1
- package/es-custom/components/progress-indicator/progress-indicator-skeleton.js +1 -1
- package/es-custom/components/progress-indicator/progress-indicator-skeleton.js.map +1 -1
- package/es-custom/components/progress-indicator/progress-indicator.js +1 -1
- package/es-custom/components/progress-indicator/progress-indicator.js.map +1 -1
- package/es-custom/components/progress-indicator/progress-indicator.scss.js +1 -1
- package/es-custom/components/progress-indicator/progress-step-skeleton.js +1 -1
- package/es-custom/components/progress-indicator/progress-step-skeleton.js.map +1 -1
- package/es-custom/components/progress-indicator/progress-step.js +1 -1
- package/es-custom/components/progress-indicator/progress-step.js.map +1 -1
- package/es-custom/components/radio-button/defs.js.map +1 -1
- package/es-custom/components/radio-button/radio-button-group.d.ts +3 -0
- package/es-custom/components/radio-button/radio-button-group.d.ts.map +1 -1
- package/es-custom/components/radio-button/radio-button-group.js +22 -5
- package/es-custom/components/radio-button/radio-button-group.js.map +1 -1
- package/es-custom/components/radio-button/radio-button-skeleton.js +1 -1
- package/es-custom/components/radio-button/radio-button-skeleton.js.map +1 -1
- package/es-custom/components/radio-button/radio-button.js +1 -1
- package/es-custom/components/radio-button/radio-button.js.map +1 -1
- package/es-custom/components/search/defs.js.map +1 -1
- package/es-custom/components/search/search-skeleton.js +1 -1
- package/es-custom/components/search/search-skeleton.js.map +1 -1
- package/es-custom/components/search/search.js +1 -1
- package/es-custom/components/search/search.js.map +1 -1
- package/es-custom/components/select/select-item-group.js +1 -1
- package/es-custom/components/select/select-item-group.js.map +1 -1
- package/es-custom/components/select/select-item.js +1 -1
- package/es-custom/components/select/select-item.js.map +1 -1
- package/es-custom/components/select/select-skeleton.js +1 -1
- package/es-custom/components/select/select-skeleton.js.map +1 -1
- package/es-custom/components/select/select.js +1 -1
- package/es-custom/components/select/select.js.map +1 -1
- package/es-custom/components/shape-indicator/defs.js.map +1 -1
- package/es-custom/components/shape-indicator/shape-indicator.js +1 -1
- package/es-custom/components/shape-indicator/shape-indicator.js.map +1 -1
- package/es-custom/components/side-panel/defs.js.map +1 -1
- package/es-custom/components/side-panel/side-panel.js +1 -1
- package/es-custom/components/side-panel/side-panel.js.map +1 -1
- package/es-custom/components/skeleton-icon/skeleton-icon.js +1 -1
- package/es-custom/components/skeleton-icon/skeleton-icon.js.map +1 -1
- package/es-custom/components/skeleton-placeholder/skeleton-placeholder.js +1 -1
- package/es-custom/components/skeleton-placeholder/skeleton-placeholder.js.map +1 -1
- package/es-custom/components/skeleton-text/defs.js.map +1 -1
- package/es-custom/components/skeleton-text/skeleton-text.js +1 -1
- package/es-custom/components/skeleton-text/skeleton-text.js.map +1 -1
- package/es-custom/components/skip-to-content/skip-to-content.js +1 -1
- package/es-custom/components/skip-to-content/skip-to-content.js.map +1 -1
- package/es-custom/components/skip-to-content/skip-to-content.scss.js +1 -1
- package/es-custom/components/slider/slider-input.js +1 -1
- package/es-custom/components/slider/slider-input.js.map +1 -1
- package/es-custom/components/slider/slider-skeleton.js +1 -1
- package/es-custom/components/slider/slider-skeleton.js.map +1 -1
- package/es-custom/components/slider/slider.js +1 -1
- package/es-custom/components/slider/slider.js.map +1 -1
- package/es-custom/components/slug/defs.js.map +1 -1
- package/es-custom/components/slug/slug-action-button.js +1 -1
- package/es-custom/components/slug/slug-action-button.js.map +1 -1
- package/es-custom/components/slug/slug.js +1 -1
- package/es-custom/components/slug/slug.js.map +1 -1
- package/es-custom/components/slug/slug.scss.js +1 -1
- package/es-custom/components/stack/defs.js.map +1 -1
- package/es-custom/components/stack/stack.js +1 -1
- package/es-custom/components/stack/stack.js.map +1 -1
- package/es-custom/components/structured-list/structured-list-body.js +1 -1
- package/es-custom/components/structured-list/structured-list-body.js.map +1 -1
- package/es-custom/components/structured-list/structured-list-cell.js +1 -1
- package/es-custom/components/structured-list/structured-list-cell.js.map +1 -1
- package/es-custom/components/structured-list/structured-list-head.js +1 -1
- package/es-custom/components/structured-list/structured-list-head.js.map +1 -1
- package/es-custom/components/structured-list/structured-list-header-cell-skeleton.js +1 -1
- package/es-custom/components/structured-list/structured-list-header-cell-skeleton.js.map +1 -1
- package/es-custom/components/structured-list/structured-list-header-cell.js +1 -1
- package/es-custom/components/structured-list/structured-list-header-cell.js.map +1 -1
- package/es-custom/components/structured-list/structured-list-header-row.js +1 -1
- package/es-custom/components/structured-list/structured-list-header-row.js.map +1 -1
- package/es-custom/components/structured-list/structured-list-row.js +1 -1
- package/es-custom/components/structured-list/structured-list-row.js.map +1 -1
- package/es-custom/components/structured-list/structured-list.js +1 -1
- package/es-custom/components/structured-list/structured-list.js.map +1 -1
- package/es-custom/components/tabs/defs.js.map +1 -1
- package/es-custom/components/tabs/stories/tabs-wrapper.js +1 -1
- package/es-custom/components/tabs/stories/tabs-wrapper.js.map +1 -1
- package/es-custom/components/tabs/tab-skeleton.js +1 -1
- package/es-custom/components/tabs/tab-skeleton.js.map +1 -1
- package/es-custom/components/tabs/tab.js +1 -1
- package/es-custom/components/tabs/tab.js.map +1 -1
- package/es-custom/components/tabs/tabs-skeleton.js +1 -1
- package/es-custom/components/tabs/tabs-skeleton.js.map +1 -1
- package/es-custom/components/tabs/tabs-vertical.js +1 -1
- package/es-custom/components/tabs/tabs-vertical.js.map +1 -1
- package/es-custom/components/tabs/tabs.js +1 -1
- package/es-custom/components/tabs/tabs.js.map +1 -1
- package/es-custom/components/tabs/tabs.scss.js +1 -1
- package/es-custom/components/tag/defs.js.map +1 -1
- package/es-custom/components/tag/dismissible-tag.js +1 -1
- package/es-custom/components/tag/dismissible-tag.js.map +1 -1
- package/es-custom/components/tag/operational-tag.js +1 -1
- package/es-custom/components/tag/operational-tag.js.map +1 -1
- package/es-custom/components/tag/selectable-tag.js +1 -1
- package/es-custom/components/tag/selectable-tag.js.map +1 -1
- package/es-custom/components/tag/tag-skeleton.js +1 -1
- package/es-custom/components/tag/tag-skeleton.js.map +1 -1
- package/es-custom/components/tag/tag.js +1 -1
- package/es-custom/components/tag/tag.js.map +1 -1
- package/es-custom/components/tag/tag.scss.js +1 -1
- package/es-custom/components/tearsheet/defs.js.map +1 -1
- package/es-custom/components/tearsheet/tearsheet.js +1 -1
- package/es-custom/components/tearsheet/tearsheet.js.map +1 -1
- package/es-custom/components/text-input/defs.js.map +1 -1
- package/es-custom/components/text-input/stories/helpers.js.map +1 -1
- package/es-custom/components/text-input/text-input-skeleton.js +1 -1
- package/es-custom/components/text-input/text-input-skeleton.js.map +1 -1
- package/es-custom/components/text-input/text-input.js +1 -1
- package/es-custom/components/text-input/text-input.js.map +1 -1
- package/es-custom/components/textarea/stories/helpers.js.map +1 -1
- package/es-custom/components/textarea/textarea-skeleton.js +1 -1
- package/es-custom/components/textarea/textarea-skeleton.js.map +1 -1
- package/es-custom/components/textarea/textarea.js +1 -1
- package/es-custom/components/textarea/textarea.js.map +1 -1
- package/es-custom/components/tile/clickable-tile.js +1 -1
- package/es-custom/components/tile/clickable-tile.js.map +1 -1
- package/es-custom/components/tile/expandable-tile.js +1 -1
- package/es-custom/components/tile/expandable-tile.js.map +1 -1
- package/es-custom/components/tile/radio-tile.js +1 -1
- package/es-custom/components/tile/radio-tile.js.map +1 -1
- package/es-custom/components/tile/selectable-tile.js +1 -1
- package/es-custom/components/tile/selectable-tile.js.map +1 -1
- package/es-custom/components/tile/tile-group.js +1 -1
- package/es-custom/components/tile/tile-group.js.map +1 -1
- package/es-custom/components/tile/tile.js +1 -1
- package/es-custom/components/tile/tile.js.map +1 -1
- package/es-custom/components/tile/tile.scss.js +1 -1
- package/es-custom/components/time-picker/defs.js.map +1 -1
- package/es-custom/components/time-picker/time-picker-select.js +1 -1
- package/es-custom/components/time-picker/time-picker-select.js.map +1 -1
- package/es-custom/components/time-picker/time-picker.js +1 -1
- package/es-custom/components/time-picker/time-picker.js.map +1 -1
- package/es-custom/components/toggle/defs.js.map +1 -1
- package/es-custom/components/toggle/toggle-skeleton.js +1 -1
- package/es-custom/components/toggle/toggle-skeleton.js.map +1 -1
- package/es-custom/components/toggle/toggle.js +1 -1
- package/es-custom/components/toggle/toggle.js.map +1 -1
- package/es-custom/components/toggle-tip/toggletip.js +1 -1
- package/es-custom/components/toggle-tip/toggletip.js.map +1 -1
- package/es-custom/components/toggle-tip/toggletip.scss.js +1 -1
- package/es-custom/components/tooltip/definition-tooltip.js +1 -1
- package/es-custom/components/tooltip/definition-tooltip.js.map +1 -1
- package/es-custom/components/tooltip/tooltip-content.js +1 -1
- package/es-custom/components/tooltip/tooltip-content.js.map +1 -1
- package/es-custom/components/tooltip/tooltip.js +1 -1
- package/es-custom/components/tooltip/tooltip.js.map +1 -1
- package/es-custom/components/tooltip/tooltip.scss.js +1 -1
- package/es-custom/components/tree-view/defs.js.map +1 -1
- package/es-custom/components/tree-view/tree-node.js +1 -1
- package/es-custom/components/tree-view/tree-node.js.map +1 -1
- package/es-custom/components/tree-view/tree-view.js +1 -1
- package/es-custom/components/tree-view/tree-view.js.map +1 -1
- package/es-custom/components/ui-shell/defs.js.map +1 -1
- package/es-custom/components/ui-shell/header-global-action.js +1 -1
- package/es-custom/components/ui-shell/header-global-action.js.map +1 -1
- package/es-custom/components/ui-shell/header-menu-button.js +1 -1
- package/es-custom/components/ui-shell/header-menu-button.js.map +1 -1
- package/es-custom/components/ui-shell/header-menu-item.js +1 -1
- package/es-custom/components/ui-shell/header-menu-item.js.map +1 -1
- package/es-custom/components/ui-shell/header-menu.js +1 -1
- package/es-custom/components/ui-shell/header-menu.js.map +1 -1
- package/es-custom/components/ui-shell/header-name.js +1 -1
- package/es-custom/components/ui-shell/header-name.js.map +1 -1
- package/es-custom/components/ui-shell/header-nav-item.js +1 -1
- package/es-custom/components/ui-shell/header-nav-item.js.map +1 -1
- package/es-custom/components/ui-shell/header-nav.js +1 -1
- package/es-custom/components/ui-shell/header-nav.js.map +1 -1
- package/es-custom/components/ui-shell/header-panel.js +1 -1
- package/es-custom/components/ui-shell/header-panel.js.map +1 -1
- package/es-custom/components/ui-shell/header-side-nav-items.js +1 -1
- package/es-custom/components/ui-shell/header-side-nav-items.js.map +1 -1
- package/es-custom/components/ui-shell/header.js +1 -1
- package/es-custom/components/ui-shell/header.js.map +1 -1
- package/es-custom/components/ui-shell/header.scss.js +1 -1
- package/es-custom/components/ui-shell/side-nav-divider.js +1 -1
- package/es-custom/components/ui-shell/side-nav-divider.js.map +1 -1
- package/es-custom/components/ui-shell/side-nav-items.js +1 -1
- package/es-custom/components/ui-shell/side-nav-items.js.map +1 -1
- package/es-custom/components/ui-shell/side-nav-link.js +1 -1
- package/es-custom/components/ui-shell/side-nav-link.js.map +1 -1
- package/es-custom/components/ui-shell/side-nav-menu-item.js +1 -1
- package/es-custom/components/ui-shell/side-nav-menu-item.js.map +1 -1
- package/es-custom/components/ui-shell/side-nav-menu.js +1 -1
- package/es-custom/components/ui-shell/side-nav-menu.js.map +1 -1
- package/es-custom/components/ui-shell/side-nav.js +1 -1
- package/es-custom/components/ui-shell/side-nav.js.map +1 -1
- package/es-custom/components/ui-shell/switcher-divider.js +1 -1
- package/es-custom/components/ui-shell/switcher-divider.js.map +1 -1
- package/es-custom/components/ui-shell/switcher-item.js +1 -1
- package/es-custom/components/ui-shell/switcher-item.js.map +1 -1
- package/es-custom/components/ui-shell/switcher.js +1 -1
- package/es-custom/components/ui-shell/switcher.js.map +1 -1
- package/es-custom/globals/controllers/floating-controller.js.map +1 -1
- package/es-custom/globals/decorators/carbon-element.js.map +1 -1
- package/es-custom/globals/decorators/host-listener.js.map +1 -1
- package/es-custom/globals/directives/if-non-empty.js.map +1 -1
- package/es-custom/globals/directives/spread.js.map +1 -1
- package/es-custom/globals/internal/collection-helpers.js.map +1 -1
- package/es-custom/globals/internal/deep-shadow-contains.js.map +1 -1
- package/es-custom/globals/internal/icon-loader-utils.js.map +1 -1
- package/es-custom/globals/internal/icon-loader.js.map +1 -1
- package/es-custom/globals/internal/radio-group-manager.js.map +1 -1
- package/es-custom/globals/mixins/focus.js.map +1 -1
- package/es-custom/globals/mixins/form.js.map +1 -1
- package/es-custom/globals/mixins/host-listener.js.map +1 -1
- package/es-custom/globals/mixins/on.js.map +1 -1
- package/es-custom/globals/mixins/validity.js.map +1 -1
- package/es-custom/globals/shared-enums.js.map +1 -1
- package/es-custom/node_modules/flatpickr/dist/esm/index.js.map +1 -1
- package/es-custom/node_modules/flatpickr/dist/esm/l10n/default.js.map +1 -1
- package/es-custom/node_modules/flatpickr/dist/esm/plugins/rangePlugin.js.map +1 -1
- package/es-custom/node_modules/flatpickr/dist/esm/types/options.js.map +1 -1
- package/es-custom/node_modules/flatpickr/dist/esm/utils/dates.js.map +1 -1
- package/es-custom/node_modules/flatpickr/dist/esm/utils/dom.js.map +1 -1
- package/es-custom/node_modules/flatpickr/dist/esm/utils/formatting.js.map +1 -1
- package/es-custom/node_modules/flatpickr/dist/esm/utils/index.js.map +1 -1
- package/es-custom/node_modules/flatpickr/dist/esm/utils/polyfills.js.map +1 -1
- package/es-custom/packages/feature-flags/es/index.js.map +1 -1
- package/lib/components/accordion/defs.js.map +1 -1
- package/lib/components/ai-label/defs.js.map +1 -1
- package/lib/components/breadcrumb/defs.js.map +1 -1
- package/lib/components/button/button-set.d.ts +4 -0
- package/lib/components/button/button-set.d.ts.map +1 -1
- package/lib/components/button/defs.js.map +1 -1
- package/lib/components/chat-button/defs.js.map +1 -1
- package/lib/components/checkbox/defs.js.map +1 -1
- package/lib/components/code-snippet/defs.js.map +1 -1
- package/lib/components/combo-button/defs.js.map +1 -1
- package/lib/components/content-switcher/defs.js.map +1 -1
- package/lib/components/data-table/defs.js.map +1 -1
- package/lib/components/data-table/table-batch-actions.d.ts +8 -0
- package/lib/components/data-table/table-batch-actions.d.ts.map +1 -1
- package/lib/components/date-picker/defs.js.map +1 -1
- package/lib/components/dropdown/defs.js.map +1 -1
- package/lib/components/file-uploader/defs.js.map +1 -1
- package/lib/components/floating-menu/defs.js.map +1 -1
- package/lib/components/fluid-password-input/fluid-password-input.d.ts +1 -0
- package/lib/components/fluid-password-input/fluid-password-input.d.ts.map +1 -1
- package/lib/components/fluid-text-input/fluid-text-input.d.ts +1 -0
- package/lib/components/fluid-text-input/fluid-text-input.d.ts.map +1 -1
- package/lib/components/grid/defs.js.map +1 -1
- package/lib/components/icon-button/defs.js.map +1 -1
- package/lib/components/icon-indicator/defs.js.map +1 -1
- package/lib/components/inline-loading/defs.js.map +1 -1
- package/lib/components/link/link.d.ts +1 -1
- package/lib/components/loading/defs.js.map +1 -1
- package/lib/components/menu/defs.js.map +1 -1
- package/lib/components/menu/menu-item-selectable.d.ts +4 -0
- package/lib/components/menu/menu-item-selectable.d.ts.map +1 -1
- package/lib/components/menu/menu.d.ts +14 -6
- package/lib/components/menu/menu.d.ts.map +1 -1
- package/lib/components/menu-button/defs.js.map +1 -1
- package/lib/components/modal/defs.js.map +1 -1
- package/lib/components/multi-select/defs.js.map +1 -1
- package/lib/components/notification/defs.js.map +1 -1
- package/lib/components/number-input/defs.js.map +1 -1
- package/lib/components/overflow-menu/defs.js.map +1 -1
- package/lib/components/overflow-menu/overflow-menu.d.ts +8 -0
- package/lib/components/overflow-menu/overflow-menu.d.ts.map +1 -1
- package/lib/components/pagination/defs.js.map +1 -1
- package/lib/components/pagination/pagination.d.ts +3 -0
- package/lib/components/pagination/pagination.d.ts.map +1 -1
- package/lib/components/pagination-nav/defs.js.map +1 -1
- package/lib/components/password-input/defs.js.map +1 -1
- package/lib/components/popover/defs.js.map +1 -1
- package/lib/components/popover/popover.d.ts +5 -0
- package/lib/components/popover/popover.d.ts.map +1 -1
- package/lib/components/progress-bar/defs.js.map +1 -1
- package/lib/components/progress-bar/progress-bar.d.ts +1 -0
- package/lib/components/progress-bar/progress-bar.d.ts.map +1 -1
- package/lib/components/progress-indicator/defs.js.map +1 -1
- package/lib/components/radio-button/defs.js.map +1 -1
- package/lib/components/radio-button/radio-button-group.d.ts +3 -0
- package/lib/components/radio-button/radio-button-group.d.ts.map +1 -1
- package/lib/components/search/defs.js.map +1 -1
- package/lib/components/shape-indicator/defs.js.map +1 -1
- package/lib/components/side-panel/defs.js.map +1 -1
- package/lib/components/skeleton-text/defs.js.map +1 -1
- package/lib/components/slug/defs.js.map +1 -1
- package/lib/components/stack/defs.js.map +1 -1
- package/lib/components/tabs/defs.js.map +1 -1
- package/lib/components/tag/defs.js.map +1 -1
- package/lib/components/tearsheet/defs.js.map +1 -1
- package/lib/components/text-input/defs.js.map +1 -1
- package/lib/components/time-picker/defs.js.map +1 -1
- package/lib/components/toggle/defs.js.map +1 -1
- package/lib/components/tree-view/defs.js.map +1 -1
- package/lib/components/ui-shell/defs.js.map +1 -1
- package/lib/globals/controllers/floating-controller.js.map +1 -1
- package/lib/globals/shared-enums.js.map +1 -1
- package/package.json +7 -7
- package/scss/components/accordion/accordion.scss +32 -28
- package/scss/components/grid/grid-story.scss +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combo-box.js","names":["CDSDropdown","ifNonEmpty","styles","customElement"],"sources":["../../../src/components/combo-box/combo-box.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2026\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit/directives/class-map.js';\nimport { TemplateResult, html } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport Close16 from '@carbon/icons/es/close/16.js';\nimport { forEach } from '../../globals/internal/collection-helpers';\nimport CDSDropdown, { DROPDOWN_KEYBOARD_ACTION } from '../dropdown/dropdown';\nimport CDSComboBoxItem from './combo-box-item';\nimport { iconLoader } from '../../globals/internal/icon-loader';\nimport styles from './combo-box.scss?lit';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport ifNonEmpty from '../../globals/directives/if-non-empty';\nimport spread from '../../globals/directives/spread';\n\nexport { DROPDOWN_DIRECTION, DROPDOWN_SIZE } from '../dropdown/dropdown';\n\ntype ShouldFilterItem = (input: {\n item: CDSComboBoxItem;\n itemToString: (item: CDSComboBoxItem) => string;\n inputValue: string | null;\n}) => boolean;\n\n/**\n * Combo box.\n *\n * @element cds-custom-combo-box\n * @fires cds-custom-combo-box-beingselected\n * The custom event fired before a combo box item is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n * @fires cds-custom-combo-box-beingtoggled\n * The custom event fired before the open state of this combo box is toggled upon a user gesture.\n * Cancellation of this event stops the user-initiated toggling.\n * @fires cds-custom-combo-box-selected - The custom event fired after a combo box item is selected upon a user gesture.\n * @fires cds-custom-combo-box-toggled - The custom event fired after the open state of this combo box is toggled upon a user gesture.\n */\n@customElement(`${prefix}-combo-box`)\nclass CDSComboBox extends CDSDropdown {\n /**\n * The text content that should be set to the `<input>` for filtering.\n */\n protected _filterInputValue = '';\n\n protected _shouldTriggerBeFocusable = false;\n\n /**\n * The `<input>` for filtering.\n */\n @query('input')\n private _filterInputNode!: HTMLInputElement;\n\n /**\n * The menu containing all selectable items.\n */\n @query('#menu-body')\n private _itemMenu!: HTMLElement;\n\n /**\n * The selection button.\n */\n @query('#selection-button')\n private _selectionButtonNode!: HTMLElement;\n\n /**\n * @param item A combo box item.\n * @returns `true` if the given combo box item matches the query text user types.\n */\n protected _testItemWithQueryText(item) {\n return (this.itemMatches || this._defaultItemMatches)(\n item,\n this._filterInputNode.value\n );\n }\n\n /**\n * The default item matching callback.\n *\n * @param item The combo box item.\n * @param queryText The query text user types.\n * @returns `true` if the given combo box item matches the given query text.\n */\n protected _defaultItemMatches(\n item: CDSComboBoxItem,\n queryText: string\n ): boolean {\n return (\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- https://github.com/carbon-design-system/carbon/issues/20452\n item.textContent!.toLowerCase().indexOf(queryText.toLowerCase()) >= 0\n );\n }\n\n connectedCallback() {\n super.connectedCallback();\n if (this.typeahead) {\n this.shouldFilterItem = true;\n this.setAttribute('should-filter-item', '');\n }\n }\n\n /**\n * Handles `input` event on the `<input>` for filtering.\n */\n protected _handleInput(event: InputEvent) {\n const rawQueryText = this._filterInputNode.value;\n const queryText = rawQueryText.trim().toLowerCase();\n\n if (rawQueryText.length !== 0) {\n this.setAttribute('isClosable', '');\n } else {\n this.removeAttribute('isClosable');\n }\n\n const items = this.querySelectorAll(\n (this.constructor as typeof CDSComboBox).selectorItem\n );\n\n const firstMatchIndex = this._filterItems(items, queryText, rawQueryText);\n if (firstMatchIndex !== -1) {\n const highlightedItem = items[firstMatchIndex];\n if (highlightedItem) {\n this._scrollItemIntoView(highlightedItem as HTMLElement);\n }\n if (this.typeahead && event?.inputType?.startsWith('insert')) {\n const suggestedItem = highlightedItem.textContent?.trim() ?? '';\n if (\n suggestedItem.toLowerCase().startsWith(rawQueryText.toLowerCase()) &&\n suggestedItem.length > rawQueryText.length\n ) {\n const suggestionText =\n rawQueryText + suggestedItem.slice(rawQueryText.length);\n\n this._filterInputNode.value = suggestionText;\n this._filterInputNode.setSelectionRange(\n rawQueryText.length,\n suggestionText.length\n );\n\n this._filterInputValue = suggestionText;\n this.open = true;\n this.requestUpdate();\n return;\n }\n }\n }\n\n this._filterInputValue = rawQueryText;\n\n if (this.allowCustomValue) {\n const previousValue = this.value;\n this.value = rawQueryText;\n\n if (previousValue !== this.value) {\n this.dispatchEvent(\n new CustomEvent(\n (this.constructor as typeof CDSComboBox).eventSelect,\n {\n bubbles: true,\n composed: true,\n detail: {\n item: null,\n value: this.value,\n },\n }\n )\n );\n }\n }\n this.open = true;\n this.requestUpdate();\n }\n\n // removes the autocomplete suggestion\n protected _removeAutoCompleteSuggestion() {\n if (!this._filterInputNode) return;\n const { selectionStart, selectionEnd, value } = this._filterInputNode;\n if (selectionStart && selectionEnd && selectionEnd > selectionStart) {\n const cleanInput = value.slice(0, selectionStart);\n this._filterInputNode.value = cleanInput;\n this._filterInputNode.setSelectionRange(\n cleanInput.length,\n cleanInput.length\n );\n return;\n }\n }\n\n // Applies filtering/highlighting to all slotted items.\n protected _filterItems(\n items: NodeListOf<Element>,\n queryText: string,\n rawQueryText: string\n ): number {\n let firstMatchIndex = -1;\n const hasQuery = Boolean(queryText);\n forEach(items, (item, i) => {\n const comboItem = item as CDSComboBoxItem;\n const index = i ?? -1;\n if (!hasQuery) {\n (comboItem as HTMLElement).style.display = '';\n comboItem.highlighted = false;\n return;\n }\n const matches = this.typeahead\n ? (comboItem.textContent || '').toLowerCase().startsWith(queryText)\n : (comboItem.textContent || '').toLowerCase().includes(queryText);\n const filterFunction =\n typeof this.shouldFilterItem === 'function'\n ? this.shouldFilterItem\n : null;\n const shouldApplyBuiltInFilter =\n filterFunction === null && hasQuery && this.shouldFilterItem === true;\n const itemToString = (value: CDSComboBoxItem) => value.textContent || '';\n const filterInputValue = rawQueryText.length === 0 ? null : rawQueryText;\n const passesFilter = filterFunction\n ? filterFunction({\n item: comboItem,\n itemToString,\n inputValue: filterInputValue,\n })\n : shouldApplyBuiltInFilter\n ? matches\n : true;\n const highlightMatch = filterFunction !== null ? passesFilter : matches;\n if (highlightMatch && firstMatchIndex === -1) {\n firstMatchIndex = index;\n }\n if (filterFunction || shouldApplyBuiltInFilter) {\n (comboItem as HTMLElement).style.display = passesFilter ? '' : 'none';\n } else {\n (comboItem as HTMLElement).style.display = '';\n }\n comboItem.highlighted = index === firstMatchIndex;\n });\n return firstMatchIndex;\n }\n\n protected _scrollItemIntoView(item: HTMLElement) {\n if (!this._itemMenu) {\n return;\n }\n const menuRect = this._itemMenu.getBoundingClientRect();\n const itemRect = item.getBoundingClientRect();\n if (!menuRect || !itemRect) {\n return;\n }\n const menuBottom = menuRect.top + this._itemMenu.clientHeight;\n const isWithinViewport =\n menuRect.top <= itemRect.top && itemRect.bottom <= menuBottom;\n if (isWithinViewport) {\n return;\n }\n const scrollTop = itemRect.top - menuRect.top;\n const scrollBottom = itemRect.bottom - menuRect.bottom;\n this._itemMenu.scrollTop +=\n Math.abs(scrollTop) < Math.abs(scrollBottom) ? scrollTop : scrollBottom;\n }\n\n protected _getSelectedItem(): CDSComboBoxItem | null {\n if (!this.value) return null;\n const items = Array.from(\n this.querySelectorAll(\n (this.constructor as typeof CDSDropdown).selectorItem\n )\n ) as CDSComboBoxItem[];\n return items.find((it) => String(it.value) === String(this.value)) ?? null;\n }\n\n protected _revertInputToSelected(focus = true) {\n const selected = this._getSelectedItem();\n\n let text = selected?.textContent ?? '';\n if (this.allowCustomValue && !selected && this.value) {\n text = this.value as string;\n }\n\n this._filterInputValue = text;\n\n if (this._filterInputNode) {\n this._filterInputNode.value = text;\n\n if (focus) {\n try {\n this._filterInputNode.focus();\n const len = text.length;\n this._filterInputNode.setSelectionRange(len, len);\n } catch {\n /* ignore */\n }\n }\n }\n\n this._resetFilteredItems();\n this.removeAttribute('isClosable');\n this.requestUpdate();\n }\n\n protected _handleInputKeydown(event: KeyboardEvent) {\n // remove the autocomplete suggestion when navigating away from the suggested item\n if (\n this.typeahead &&\n (event.key === 'ArrowDown' || event.key === 'ArrowUp')\n ) {\n this._removeAutoCompleteSuggestion();\n }\n if (event.key !== 'Escape') {\n return;\n }\n if (!this._filterInputNode) {\n return;\n }\n\n if (this.open) {\n this._handleUserInitiatedToggle(false);\n } else {\n if (this.value) {\n this._revertInputToSelected(true);\n } else if (this._filterInputNode.value) {\n this._clearInputWithoutSelecting(true);\n }\n\n if (this.value || this._filterInputNode.value) {\n this._handleUserInitiatedClearInput();\n }\n }\n }\n\n protected _handleClickInner(event: MouseEvent) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n const { target } = event as any;\n if (this._selectionButtonNode?.contains(target)) {\n this._handleUserInitiatedClearInput();\n } else {\n super._handleClickInner(event);\n }\n }\n\n protected _handleKeypressInner(event: KeyboardEvent) {\n const { key } = event;\n const action = (this.constructor as typeof CDSDropdown).getAction(key);\n const { TRIGGERING } = DROPDOWN_KEYBOARD_ACTION;\n if (\n this._selectionButtonNode?.contains(event.target as Node) &&\n // Space key should be handled by `<input>` unless \"clear selection\" button has focus\n (action === TRIGGERING || key === ' ')\n ) {\n this._handleUserInitiatedClearInput();\n } else {\n super._handleKeypressInner(event);\n }\n }\n\n /**\n * Handles user-initiated clearing the `<input>` for filtering.\n */\n protected _handleUserInitiatedClearInput() {\n this._handleUserInitiatedSelectItem();\n if (this.value) {\n this._revertInputToSelected(true);\n } else {\n this._clearInputWithoutSelecting(true);\n }\n this.requestUpdate();\n }\n\n protected _handleUserInitiatedSelectItem(item?: CDSComboBoxItem) {\n if (item && !this._selectionShouldChange(item)) {\n // Escape hatch for `shouldUpdate()` logic that updates `._filterInputValue()` when selection changes,\n // given we want to update the `<input>` and close the dropdown even if selection doesn't update.\n // Use case:\n // 1. Select the 2nd item in combo box drop down\n // 2. Type some text in the `<input>`\n // 3. Re-select the 2nd item in combo box drop down,\n // the `<input>` has to updated with the 2nd item and the dropdown should be closed,\n // even if there is no change in the selected value\n this._filterInputValue = item.textContent || '';\n this.open = false;\n this.requestUpdate();\n }\n super._handleUserInitiatedSelectItem(item);\n }\n\n protected _selectionDidChange(itemToSelect?: CDSComboBoxItem) {\n this.value = !itemToSelect ? '' : itemToSelect.value;\n forEach(\n this.querySelectorAll(\n (this.constructor as typeof CDSDropdown).selectorItemSelected\n ),\n (item) => {\n (item as CDSComboBoxItem).selected = false;\n item.setAttribute('aria-selected', 'false');\n }\n );\n if (itemToSelect) {\n itemToSelect.selected = true;\n itemToSelect.setAttribute('aria-selected', 'true');\n }\n\n this._handleUserInitiatedToggle(false);\n\n if (this._filterInputNode) {\n try {\n this._filterInputNode.focus();\n const val = this._filterInputNode.value || '';\n this._filterInputNode.setSelectionRange(val.length, val.length);\n } catch {\n /* ignore browsers that prevent setSelectionRange */\n }\n }\n }\n\n protected _renderLabel(): TemplateResult {\n const {\n disabled,\n inputLabel,\n label,\n open,\n readOnly,\n value,\n inputProps,\n _activeDescendant: activeDescendant,\n _filterInputValue: filterInputValue,\n _handleInput: handleInput,\n _handleInputKeydown: handleInputKeydown,\n } = this;\n\n const inputClasses = classMap({\n [`${prefix}--text-input`]: true,\n [`${prefix}--text-input--empty`]: !value,\n });\n\n let activeDescendantFallback: string | undefined;\n if (open && !activeDescendant) {\n const constructor = this.constructor as typeof CDSDropdown;\n const items = this.querySelectorAll(constructor.selectorItem);\n activeDescendantFallback = items[0]?.id;\n }\n\n return html`\n <input\n id=\"trigger-button\"\n class=\"${inputClasses}\"\n ?disabled=${disabled}\n placeholder=\"${label}\"\n .value=${filterInputValue}\n role=\"combobox\"\n aria-label=\"${ifNonEmpty(inputLabel)}\"\n aria-labelledby=\"dropdown-label\"\n aria-controls=\"menu-body\"\n aria-haspopup=\"listbox\"\n aria-autocomplete=\"list\"\n aria-expanded=\"${String(open)}\"\n aria-activedescendant=\"${ifDefined(\n open ? (activeDescendant ?? activeDescendantFallback) : ''\n )}\"\n ?readonly=${readOnly}\n @input=${handleInput}\n @keydown=${handleInputKeydown}\n ...=\"${spread(this._normalizeInputProps(inputProps))}\" />\n `;\n }\n\n protected _renderFollowingLabel(): TemplateResult | undefined {\n const { clearSelectionLabel, _filterInputValue: filterInputValue } = this;\n\n if (filterInputValue.length != 0) {\n this.setAttribute('isClosable', '');\n } else {\n this.removeAttribute('isClosable');\n }\n\n return filterInputValue.length === 0\n ? undefined\n : html`\n <div\n id=\"selection-button\"\n role=\"button\"\n class=\"${prefix}--list-box__selection\"\n tabindex=\"-1\"\n title=\"${clearSelectionLabel}\">\n ${iconLoader(Close16, { 'aria-label': clearSelectionLabel })}\n </div>\n `;\n }\n\n protected _renderTitleLabel(): TemplateResult {\n const {\n disabled,\n hideLabel,\n titleText,\n _slotTitleTextNode: slotTitleTextNode,\n _handleSlotchangeLabelText: handleSlotchangeLabelText,\n } = this;\n\n const labelClasses = classMap({\n [`${prefix}--label`]: true,\n [`${prefix}--label--disabled`]: disabled,\n [`${prefix}--visually-hidden`]: hideLabel,\n });\n\n const hasTitleText =\n titleText ||\n (slotTitleTextNode && slotTitleTextNode.assignedNodes().length > 0);\n\n return html`\n <label\n id=\"dropdown-label\"\n part=\"title-text\"\n class=\"${labelClasses}\"\n ?hidden=\"${!hasTitleText}\">\n <slot name=\"title-text\" @slotchange=\"${handleSlotchangeLabelText}\"\n >${titleText}</slot\n >\n </label>\n `;\n }\n /**\n * The `aria-label` attribute for the icon to clear selection.\n */\n @property({ attribute: 'clear-selection-label' })\n clearSelectionLabel = 'Clear selection';\n\n /**\n * The `aria-label` attribute for the `<input>` for filtering.\n */\n @property({ attribute: 'input-label' })\n inputLabel = '';\n\n /**\n * The custom item matching callback.\n */\n @property({ attribute: false })\n itemMatches!: (item: CDSComboBoxItem, queryText: string) => boolean;\n\n /**\n * Provide custom filtering behavior. This attribute will be ignored if\n * `typeahead` is enabled and will default to `true`\n */\n @property({\n attribute: 'should-filter-item',\n converter: {\n fromAttribute: (value) => value !== null,\n },\n })\n shouldFilterItem: boolean | ShouldFilterItem = false;\n\n /**\n * **Experimental**: will enable autocomplete and typeahead for the input field.\n */\n @property({ type: Boolean, reflect: true })\n typeahead = false;\n\n /**\n * `true` to allow custom values that do not match any item in the list.\n */\n @property({ type: Boolean, attribute: 'allow-custom-value' })\n allowCustomValue = false;\n\n /**\n * Additional input attributes to apply to the internal input element.\n * Allows passing native HTML input attributes like `maxlength`, `pattern`,\n * `autocomplete`, etc.\n */\n @property({ type: Object, attribute: false })\n inputProps?: Record<string, string | number | boolean>;\n\n private _normalizeInputProps(\n inputProps?: Record<string, string | number | boolean>\n ) {\n const normalizedInputProps: Record<string, string> = {};\n\n Object.entries(inputProps ?? {}).forEach(([key, value]) => {\n if (value === undefined || value === null || value === false) {\n return;\n }\n normalizedInputProps[key] = value === true ? '' : String(value);\n });\n\n return normalizedInputProps;\n }\n\n shouldUpdate(changedProperties) {\n super.shouldUpdate(changedProperties);\n if (!changedProperties.has('value')) {\n return true;\n }\n if (this._selectedItemContent) {\n this._filterInputValue = this._selectedItemContent.textContent || '';\n return true;\n }\n if (this.allowCustomValue && this.value) {\n this._filterInputValue = String(this.value);\n return true;\n }\n if (this.value === '') {\n this._filterInputValue = '';\n }\n return true;\n }\n\n protected _clearInputWithoutSelecting(focus = true) {\n this._filterInputValue = '';\n if (this._filterInputNode) {\n this._filterInputNode.value = '';\n\n if (focus) {\n try {\n this._filterInputNode.focus();\n this._filterInputNode.setSelectionRange(0, 0);\n } catch {\n /* ignore */\n }\n }\n }\n\n this._resetFilteredItems();\n this.removeAttribute('isClosable');\n this.requestUpdate();\n }\n\n updated(changedProperties) {\n super.updated(changedProperties);\n if (changedProperties.has('open')) {\n if (this.open && this._filterInputNode) {\n this._handleInput(changedProperties);\n } else if (!this.open) {\n // remove the autocomplete suggestion when closing the combobox\n this._removeAutoCompleteSuggestion();\n this._resetFilteredItems();\n if (this._filterInputNode.value == '') {\n this.value = '';\n }\n if (this.value) {\n this._revertInputToSelected(false);\n if (\n this._filterInputNode &&\n document.activeElement === this._filterInputNode\n ) {\n (this._filterInputNode as HTMLInputElement).blur();\n }\n } else if (\n this._filterInputValue &&\n this._filterInputValue.length > 0 &&\n !this.allowCustomValue\n ) {\n this._clearInputWithoutSelecting(false);\n if (\n this._filterInputNode &&\n document.activeElement === this._filterInputNode\n ) {\n (this._filterInputNode as HTMLInputElement).blur();\n }\n } else {\n // nothing typed and no selection, ensure no extra changes\n }\n }\n }\n const { _listBoxNode: listBoxNode } = this;\n if (listBoxNode) {\n listBoxNode.classList.add(`${prefix}--combo-box`);\n }\n }\n\n // Restores the full list when the query is cleared or the menu closes.\n protected _resetFilteredItems() {\n const items = this.querySelectorAll(\n (this.constructor as typeof CDSComboBox).selectorItem\n );\n forEach(items, (item) => {\n const comboItem = item as CDSComboBoxItem;\n (comboItem as HTMLElement).style.display = '';\n comboItem.highlighted = false;\n });\n }\n\n // For combo box, open/selection with space key is disabled given the input box should take it over\n static TRIGGER_KEYS = new Set(['Enter']);\n\n /**\n * A selector that will return highlighted items.\n */\n static get selectorItemHighlighted() {\n return `${prefix}-combo-box-item[highlighted]`;\n }\n\n /**\n * A selector that will return combo box items.\n */\n static get selectorItem() {\n return `${prefix}-combo-box-item`;\n }\n\n /**\n * A selector that will return selected items.\n */\n static get selectorItemSelected() {\n return `${prefix}-combo-box-item[selected]`;\n }\n\n /**\n * The name of the custom event fired before this combo box item is being toggled upon a user gesture.\n * Cancellation of this event stops the user-initiated action of toggling this combo box item.\n */\n static get eventBeforeToggle() {\n return `${prefix}-combo-box-beingtoggled`;\n }\n\n /**\n * The name of the custom event fired after this combo box item is toggled upon a user gesture.\n */\n static get eventToggle() {\n return `${prefix}-combo-box-toggled`;\n }\n\n /**\n * The name of the custom event fired before a combo box item is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n */\n static get eventBeforeSelect() {\n return `${prefix}-combo-box-beingselected`;\n }\n\n /**\n * The name of the custom event fired after a a combo box item is selected upon a user gesture.\n */\n static get eventSelect() {\n return `${prefix}-combo-box-selected`;\n }\n\n static styles = styles;\n}\n\nexport default CDSComboBox;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"combo-box.js","names":["CDSDropdown","ifNonEmpty","styles","customElement"],"sources":["../../../src/components/combo-box/combo-box.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2026\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit/directives/class-map.js';\nimport { TemplateResult, html } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport Close16 from '@carbon/icons/es/close/16.js';\nimport { forEach } from '../../globals/internal/collection-helpers';\nimport CDSDropdown, { DROPDOWN_KEYBOARD_ACTION } from '../dropdown/dropdown';\nimport CDSComboBoxItem from './combo-box-item';\nimport { iconLoader } from '../../globals/internal/icon-loader';\nimport styles from './combo-box.scss?lit';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport ifNonEmpty from '../../globals/directives/if-non-empty';\nimport spread from '../../globals/directives/spread';\n\nexport { DROPDOWN_DIRECTION, DROPDOWN_SIZE } from '../dropdown/dropdown';\n\ntype ShouldFilterItem = (input: {\n item: CDSComboBoxItem;\n itemToString: (item: CDSComboBoxItem) => string;\n inputValue: string | null;\n}) => boolean;\n\n/**\n * Combo box.\n *\n * @element cds-custom-combo-box\n * @fires cds-custom-combo-box-beingselected\n * The custom event fired before a combo box item is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n * @fires cds-custom-combo-box-beingtoggled\n * The custom event fired before the open state of this combo box is toggled upon a user gesture.\n * Cancellation of this event stops the user-initiated toggling.\n * @fires cds-custom-combo-box-selected - The custom event fired after a combo box item is selected upon a user gesture.\n * @fires cds-custom-combo-box-toggled - The custom event fired after the open state of this combo box is toggled upon a user gesture.\n */\n@customElement(`${prefix}-combo-box`)\nclass CDSComboBox extends CDSDropdown {\n /**\n * The text content that should be set to the `<input>` for filtering.\n */\n protected _filterInputValue = '';\n\n protected _shouldTriggerBeFocusable = false;\n\n /**\n * The `<input>` for filtering.\n */\n @query('input')\n private _filterInputNode!: HTMLInputElement;\n\n /**\n * The menu containing all selectable items.\n */\n @query('#menu-body')\n private _itemMenu!: HTMLElement;\n\n /**\n * The selection button.\n */\n @query('#selection-button')\n private _selectionButtonNode!: HTMLElement;\n\n /**\n * @param item A combo box item.\n * @returns `true` if the given combo box item matches the query text user types.\n */\n protected _testItemWithQueryText(item) {\n return (this.itemMatches || this._defaultItemMatches)(\n item,\n this._filterInputNode.value\n );\n }\n\n /**\n * The default item matching callback.\n *\n * @param item The combo box item.\n * @param queryText The query text user types.\n * @returns `true` if the given combo box item matches the given query text.\n */\n protected _defaultItemMatches(\n item: CDSComboBoxItem,\n queryText: string\n ): boolean {\n return (\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- https://github.com/carbon-design-system/carbon/issues/20452\n item.textContent!.toLowerCase().indexOf(queryText.toLowerCase()) >= 0\n );\n }\n\n connectedCallback() {\n super.connectedCallback();\n if (this.typeahead) {\n this.shouldFilterItem = true;\n this.setAttribute('should-filter-item', '');\n }\n }\n\n /**\n * Handles `input` event on the `<input>` for filtering.\n */\n protected _handleInput(event: InputEvent) {\n const rawQueryText = this._filterInputNode.value;\n const queryText = rawQueryText.trim().toLowerCase();\n\n if (rawQueryText.length !== 0) {\n this.setAttribute('isClosable', '');\n } else {\n this.removeAttribute('isClosable');\n }\n\n const items = this.querySelectorAll(\n (this.constructor as typeof CDSComboBox).selectorItem\n );\n\n const firstMatchIndex = this._filterItems(items, queryText, rawQueryText);\n if (firstMatchIndex !== -1) {\n const highlightedItem = items[firstMatchIndex];\n if (highlightedItem) {\n this._scrollItemIntoView(highlightedItem as HTMLElement);\n }\n if (this.typeahead && event?.inputType?.startsWith('insert')) {\n const suggestedItem = highlightedItem.textContent?.trim() ?? '';\n if (\n suggestedItem.toLowerCase().startsWith(rawQueryText.toLowerCase()) &&\n suggestedItem.length > rawQueryText.length\n ) {\n const suggestionText =\n rawQueryText + suggestedItem.slice(rawQueryText.length);\n\n this._filterInputNode.value = suggestionText;\n this._filterInputNode.setSelectionRange(\n rawQueryText.length,\n suggestionText.length\n );\n\n this._filterInputValue = suggestionText;\n this.open = true;\n this.requestUpdate();\n return;\n }\n }\n }\n\n this._filterInputValue = rawQueryText;\n\n if (this.allowCustomValue) {\n const previousValue = this.value;\n this.value = rawQueryText;\n\n if (previousValue !== this.value) {\n this.dispatchEvent(\n new CustomEvent(\n (this.constructor as typeof CDSComboBox).eventSelect,\n {\n bubbles: true,\n composed: true,\n detail: {\n item: null,\n value: this.value,\n },\n }\n )\n );\n }\n }\n this.open = true;\n this.requestUpdate();\n }\n\n // removes the autocomplete suggestion\n protected _removeAutoCompleteSuggestion() {\n if (!this._filterInputNode) return;\n const { selectionStart, selectionEnd, value } = this._filterInputNode;\n if (selectionStart && selectionEnd && selectionEnd > selectionStart) {\n const cleanInput = value.slice(0, selectionStart);\n this._filterInputNode.value = cleanInput;\n this._filterInputNode.setSelectionRange(\n cleanInput.length,\n cleanInput.length\n );\n return;\n }\n }\n\n // Applies filtering/highlighting to all slotted items.\n protected _filterItems(\n items: NodeListOf<Element>,\n queryText: string,\n rawQueryText: string\n ): number {\n let firstMatchIndex = -1;\n const hasQuery = Boolean(queryText);\n forEach(items, (item, i) => {\n const comboItem = item as CDSComboBoxItem;\n const index = i ?? -1;\n if (!hasQuery) {\n (comboItem as HTMLElement).style.display = '';\n comboItem.highlighted = false;\n return;\n }\n const matches = this.typeahead\n ? (comboItem.textContent || '').toLowerCase().startsWith(queryText)\n : (comboItem.textContent || '').toLowerCase().includes(queryText);\n const filterFunction =\n typeof this.shouldFilterItem === 'function'\n ? this.shouldFilterItem\n : null;\n const shouldApplyBuiltInFilter =\n filterFunction === null && hasQuery && this.shouldFilterItem === true;\n const itemToString = (value: CDSComboBoxItem) => value.textContent || '';\n const filterInputValue = rawQueryText.length === 0 ? null : rawQueryText;\n const passesFilter = filterFunction\n ? filterFunction({\n item: comboItem,\n itemToString,\n inputValue: filterInputValue,\n })\n : shouldApplyBuiltInFilter\n ? matches\n : true;\n const highlightMatch = filterFunction !== null ? passesFilter : matches;\n if (highlightMatch && firstMatchIndex === -1) {\n firstMatchIndex = index;\n }\n if (filterFunction || shouldApplyBuiltInFilter) {\n (comboItem as HTMLElement).style.display = passesFilter ? '' : 'none';\n } else {\n (comboItem as HTMLElement).style.display = '';\n }\n comboItem.highlighted = index === firstMatchIndex;\n });\n return firstMatchIndex;\n }\n\n protected _scrollItemIntoView(item: HTMLElement) {\n if (!this._itemMenu) {\n return;\n }\n const menuRect = this._itemMenu.getBoundingClientRect();\n const itemRect = item.getBoundingClientRect();\n if (!menuRect || !itemRect) {\n return;\n }\n const menuBottom = menuRect.top + this._itemMenu.clientHeight;\n const isWithinViewport =\n menuRect.top <= itemRect.top && itemRect.bottom <= menuBottom;\n if (isWithinViewport) {\n return;\n }\n const scrollTop = itemRect.top - menuRect.top;\n const scrollBottom = itemRect.bottom - menuRect.bottom;\n this._itemMenu.scrollTop +=\n Math.abs(scrollTop) < Math.abs(scrollBottom) ? scrollTop : scrollBottom;\n }\n\n protected _getSelectedItem(): CDSComboBoxItem | null {\n if (!this.value) return null;\n const items = Array.from(\n this.querySelectorAll(\n (this.constructor as typeof CDSDropdown).selectorItem\n )\n ) as CDSComboBoxItem[];\n return items.find((it) => String(it.value) === String(this.value)) ?? null;\n }\n\n protected _revertInputToSelected(focus = true) {\n const selected = this._getSelectedItem();\n\n let text = selected?.textContent ?? '';\n if (this.allowCustomValue && !selected && this.value) {\n text = this.value as string;\n }\n\n this._filterInputValue = text;\n\n if (this._filterInputNode) {\n this._filterInputNode.value = text;\n\n if (focus) {\n try {\n this._filterInputNode.focus();\n const len = text.length;\n this._filterInputNode.setSelectionRange(len, len);\n } catch {\n /* ignore */\n }\n }\n }\n\n this._resetFilteredItems();\n this.removeAttribute('isClosable');\n this.requestUpdate();\n }\n\n protected _handleInputKeydown(event: KeyboardEvent) {\n // remove the autocomplete suggestion when navigating away from the suggested item\n if (\n this.typeahead &&\n (event.key === 'ArrowDown' || event.key === 'ArrowUp')\n ) {\n this._removeAutoCompleteSuggestion();\n }\n if (event.key !== 'Escape') {\n return;\n }\n if (!this._filterInputNode) {\n return;\n }\n\n if (this.open) {\n this._handleUserInitiatedToggle(false);\n } else {\n if (this.value) {\n this._revertInputToSelected(true);\n } else if (this._filterInputNode.value) {\n this._clearInputWithoutSelecting(true);\n }\n\n if (this.value || this._filterInputNode.value) {\n this._handleUserInitiatedClearInput();\n }\n }\n }\n\n protected _handleClickInner(event: MouseEvent) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n const { target } = event as any;\n if (this._selectionButtonNode?.contains(target)) {\n this._handleUserInitiatedClearInput();\n } else {\n super._handleClickInner(event);\n }\n }\n\n protected _handleKeypressInner(event: KeyboardEvent) {\n const { key } = event;\n const action = (this.constructor as typeof CDSDropdown).getAction(key);\n const { TRIGGERING } = DROPDOWN_KEYBOARD_ACTION;\n if (\n this._selectionButtonNode?.contains(event.target as Node) &&\n // Space key should be handled by `<input>` unless \"clear selection\" button has focus\n (action === TRIGGERING || key === ' ')\n ) {\n this._handleUserInitiatedClearInput();\n } else {\n super._handleKeypressInner(event);\n }\n }\n\n /**\n * Handles user-initiated clearing the `<input>` for filtering.\n */\n protected _handleUserInitiatedClearInput() {\n this._handleUserInitiatedSelectItem();\n if (this.value) {\n this._revertInputToSelected(true);\n } else {\n this._clearInputWithoutSelecting(true);\n }\n this.requestUpdate();\n }\n\n protected _handleUserInitiatedSelectItem(item?: CDSComboBoxItem) {\n if (item && !this._selectionShouldChange(item)) {\n // Escape hatch for `shouldUpdate()` logic that updates `._filterInputValue()` when selection changes,\n // given we want to update the `<input>` and close the dropdown even if selection doesn't update.\n // Use case:\n // 1. Select the 2nd item in combo box drop down\n // 2. Type some text in the `<input>`\n // 3. Re-select the 2nd item in combo box drop down,\n // the `<input>` has to updated with the 2nd item and the dropdown should be closed,\n // even if there is no change in the selected value\n this._filterInputValue = item.textContent || '';\n this.open = false;\n this.requestUpdate();\n }\n super._handleUserInitiatedSelectItem(item);\n }\n\n protected _selectionDidChange(itemToSelect?: CDSComboBoxItem) {\n this.value = !itemToSelect ? '' : itemToSelect.value;\n forEach(\n this.querySelectorAll(\n (this.constructor as typeof CDSDropdown).selectorItemSelected\n ),\n (item) => {\n (item as CDSComboBoxItem).selected = false;\n item.setAttribute('aria-selected', 'false');\n }\n );\n if (itemToSelect) {\n itemToSelect.selected = true;\n itemToSelect.setAttribute('aria-selected', 'true');\n }\n\n this._handleUserInitiatedToggle(false);\n\n if (this._filterInputNode) {\n try {\n this._filterInputNode.focus();\n const val = this._filterInputNode.value || '';\n this._filterInputNode.setSelectionRange(val.length, val.length);\n } catch {\n /* ignore browsers that prevent setSelectionRange */\n }\n }\n }\n\n protected _renderLabel(): TemplateResult {\n const {\n disabled,\n inputLabel,\n label,\n open,\n readOnly,\n value,\n inputProps,\n _activeDescendant: activeDescendant,\n _filterInputValue: filterInputValue,\n _handleInput: handleInput,\n _handleInputKeydown: handleInputKeydown,\n } = this;\n\n const inputClasses = classMap({\n [`${prefix}--text-input`]: true,\n [`${prefix}--text-input--empty`]: !value,\n });\n\n let activeDescendantFallback: string | undefined;\n if (open && !activeDescendant) {\n const constructor = this.constructor as typeof CDSDropdown;\n const items = this.querySelectorAll(constructor.selectorItem);\n activeDescendantFallback = items[0]?.id;\n }\n\n return html`\n <input\n id=\"trigger-button\"\n class=\"${inputClasses}\"\n ?disabled=${disabled}\n placeholder=\"${label}\"\n .value=${filterInputValue}\n role=\"combobox\"\n aria-label=\"${ifNonEmpty(inputLabel)}\"\n aria-labelledby=\"dropdown-label\"\n aria-controls=\"menu-body\"\n aria-haspopup=\"listbox\"\n aria-autocomplete=\"list\"\n aria-expanded=\"${String(open)}\"\n aria-activedescendant=\"${ifDefined(\n open ? (activeDescendant ?? activeDescendantFallback) : ''\n )}\"\n ?readonly=${readOnly}\n @input=${handleInput}\n @keydown=${handleInputKeydown}\n ...=\"${spread(this._normalizeInputProps(inputProps))}\" />\n `;\n }\n\n protected _renderFollowingLabel(): TemplateResult | undefined {\n const { clearSelectionLabel, _filterInputValue: filterInputValue } = this;\n\n if (filterInputValue.length != 0) {\n this.setAttribute('isClosable', '');\n } else {\n this.removeAttribute('isClosable');\n }\n\n return filterInputValue.length === 0\n ? undefined\n : html`\n <div\n id=\"selection-button\"\n role=\"button\"\n class=\"${prefix}--list-box__selection\"\n tabindex=\"-1\"\n title=\"${clearSelectionLabel}\">\n ${iconLoader(Close16, { 'aria-label': clearSelectionLabel })}\n </div>\n `;\n }\n\n protected _renderTitleLabel(): TemplateResult {\n const {\n disabled,\n hideLabel,\n titleText,\n _slotTitleTextNode: slotTitleTextNode,\n _handleSlotchangeLabelText: handleSlotchangeLabelText,\n } = this;\n\n const labelClasses = classMap({\n [`${prefix}--label`]: true,\n [`${prefix}--label--disabled`]: disabled,\n [`${prefix}--visually-hidden`]: hideLabel,\n });\n\n const hasTitleText =\n titleText ||\n (slotTitleTextNode && slotTitleTextNode.assignedNodes().length > 0);\n\n return html`\n <label\n id=\"dropdown-label\"\n part=\"title-text\"\n class=\"${labelClasses}\"\n ?hidden=\"${!hasTitleText}\">\n <slot name=\"title-text\" @slotchange=\"${handleSlotchangeLabelText}\"\n >${titleText}</slot\n >\n </label>\n `;\n }\n /**\n * The `aria-label` attribute for the icon to clear selection.\n */\n @property({ attribute: 'clear-selection-label' })\n clearSelectionLabel = 'Clear selection';\n\n /**\n * The `aria-label` attribute for the `<input>` for filtering.\n */\n @property({ attribute: 'input-label' })\n inputLabel = '';\n\n /**\n * The custom item matching callback.\n */\n @property({ attribute: false })\n itemMatches!: (item: CDSComboBoxItem, queryText: string) => boolean;\n\n /**\n * Provide custom filtering behavior. This attribute will be ignored if\n * `typeahead` is enabled and will default to `true`\n */\n @property({\n attribute: 'should-filter-item',\n converter: {\n fromAttribute: (value) => value !== null,\n },\n })\n shouldFilterItem: boolean | ShouldFilterItem = false;\n\n /**\n * **Experimental**: will enable autocomplete and typeahead for the input field.\n */\n @property({ type: Boolean, reflect: true })\n typeahead = false;\n\n /**\n * `true` to allow custom values that do not match any item in the list.\n */\n @property({ type: Boolean, attribute: 'allow-custom-value' })\n allowCustomValue = false;\n\n /**\n * Additional input attributes to apply to the internal input element.\n * Allows passing native HTML input attributes like `maxlength`, `pattern`,\n * `autocomplete`, etc.\n */\n @property({ type: Object, attribute: false })\n inputProps?: Record<string, string | number | boolean>;\n\n private _normalizeInputProps(\n inputProps?: Record<string, string | number | boolean>\n ) {\n const normalizedInputProps: Record<string, string> = {};\n\n Object.entries(inputProps ?? {}).forEach(([key, value]) => {\n if (value === undefined || value === null || value === false) {\n return;\n }\n normalizedInputProps[key] = value === true ? '' : String(value);\n });\n\n return normalizedInputProps;\n }\n\n shouldUpdate(changedProperties) {\n super.shouldUpdate(changedProperties);\n if (!changedProperties.has('value')) {\n return true;\n }\n if (this._selectedItemContent) {\n this._filterInputValue = this._selectedItemContent.textContent || '';\n return true;\n }\n if (this.allowCustomValue && this.value) {\n this._filterInputValue = String(this.value);\n return true;\n }\n if (this.value === '') {\n this._filterInputValue = '';\n }\n return true;\n }\n\n protected _clearInputWithoutSelecting(focus = true) {\n this._filterInputValue = '';\n if (this._filterInputNode) {\n this._filterInputNode.value = '';\n\n if (focus) {\n try {\n this._filterInputNode.focus();\n this._filterInputNode.setSelectionRange(0, 0);\n } catch {\n /* ignore */\n }\n }\n }\n\n this._resetFilteredItems();\n this.removeAttribute('isClosable');\n this.requestUpdate();\n }\n\n updated(changedProperties) {\n super.updated(changedProperties);\n if (changedProperties.has('open')) {\n if (this.open && this._filterInputNode) {\n this._handleInput(changedProperties);\n } else if (!this.open) {\n // remove the autocomplete suggestion when closing the combobox\n this._removeAutoCompleteSuggestion();\n this._resetFilteredItems();\n if (this._filterInputNode.value == '') {\n this.value = '';\n }\n if (this.value) {\n this._revertInputToSelected(false);\n if (\n this._filterInputNode &&\n document.activeElement === this._filterInputNode\n ) {\n (this._filterInputNode as HTMLInputElement).blur();\n }\n } else if (\n this._filterInputValue &&\n this._filterInputValue.length > 0 &&\n !this.allowCustomValue\n ) {\n this._clearInputWithoutSelecting(false);\n if (\n this._filterInputNode &&\n document.activeElement === this._filterInputNode\n ) {\n (this._filterInputNode as HTMLInputElement).blur();\n }\n } else {\n // nothing typed and no selection, ensure no extra changes\n }\n }\n }\n const { _listBoxNode: listBoxNode } = this;\n if (listBoxNode) {\n listBoxNode.classList.add(`${prefix}--combo-box`);\n }\n }\n\n // Restores the full list when the query is cleared or the menu closes.\n protected _resetFilteredItems() {\n const items = this.querySelectorAll(\n (this.constructor as typeof CDSComboBox).selectorItem\n );\n forEach(items, (item) => {\n const comboItem = item as CDSComboBoxItem;\n (comboItem as HTMLElement).style.display = '';\n comboItem.highlighted = false;\n });\n }\n\n // For combo box, open/selection with space key is disabled given the input box should take it over\n static TRIGGER_KEYS = new Set(['Enter']);\n\n /**\n * A selector that will return highlighted items.\n */\n static get selectorItemHighlighted() {\n return `${prefix}-combo-box-item[highlighted]`;\n }\n\n /**\n * A selector that will return combo box items.\n */\n static get selectorItem() {\n return `${prefix}-combo-box-item`;\n }\n\n /**\n * A selector that will return selected items.\n */\n static get selectorItemSelected() {\n return `${prefix}-combo-box-item[selected]`;\n }\n\n /**\n * The name of the custom event fired before this combo box item is being toggled upon a user gesture.\n * Cancellation of this event stops the user-initiated action of toggling this combo box item.\n */\n static get eventBeforeToggle() {\n return `${prefix}-combo-box-beingtoggled`;\n }\n\n /**\n * The name of the custom event fired after this combo box item is toggled upon a user gesture.\n */\n static get eventToggle() {\n return `${prefix}-combo-box-toggled`;\n }\n\n /**\n * The name of the custom event fired before a combo box item is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n */\n static get eventBeforeSelect() {\n return `${prefix}-combo-box-beingselected`;\n }\n\n /**\n * The name of the custom event fired after a a combo box item is selected upon a user gesture.\n */\n static get eventSelect() {\n return `${prefix}-combo-box-selected`;\n }\n\n static styles = styles;\n}\n\nexport default CDSComboBox;\n"],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
import "../../globals/settings.js";
|
|
9
9
|
import { carbonElement } from "../../globals/decorators/carbon-element.js";
|
|
10
|
-
import { __decorate } from "../../_virtual/_@oxc-project_runtime@0.
|
|
10
|
+
import { __decorate } from "../../_virtual/_@oxc-project_runtime@0.135.0/helpers/esm/decorate.js";
|
|
11
11
|
import iconLoader from "../../globals/internal/icon-loader.js";
|
|
12
12
|
import HostListener from "../../globals/decorators/host-listener.js";
|
|
13
13
|
import HostListenerMixin from "../../globals/mixins/host-listener.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combo-button.js","names":["FloatingUIController","styles","customElement"],"sources":["../../../src/components/combo-button/combo-button.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2025, 2025\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\nimport styles from './combo-button.scss?lit';\nimport '../button/index';\nimport '../menu/index';\nimport '../icon-button/index';\nimport ChevronDown16 from '@carbon/icons/es/chevron--down/16.js';\nimport { iconLoader } from '../../globals/internal/icon-loader';\nimport CDSMenu from '../menu/menu';\nimport CDSButton from '../button/button';\nimport { COMBO_BUTTON_SIZE, COMBO_BUTTON_TOOLTIP_ALIGNMENT } from './defs';\nimport { POPOVER_ALIGNMENT } from '../popover/defs';\nimport { ICON_BUTTON_TOOLTIP_ALIGNMENT } from '../icon-button/defs';\nimport FloatingUIController from '../../globals/controllers/floating-controller';\n\nexport { COMBO_BUTTON_SIZE, COMBO_BUTTON_TOOLTIP_ALIGNMENT };\n\n/**\n * Combo button.\n * @element cds-custom-combo-button\n */\n@customElement(`${prefix}-combo-button`)\nclass CDSComboButton extends HostListenerMixin(LitElement) {\n private _menuController = new FloatingUIController(this);\n\n @query(`${prefix}-icon-button`)\n _triggerNode!: CDSButton;\n\n @query(`${prefix}-menu`)\n _menuNode!: CDSMenu;\n\n @property({ type: Boolean, reflect: true })\n private _open = false;\n\n /**\n * Specify whether the ComboButton should be disabled, or not.\n */\n @property({ type: Boolean, reflect: true })\n disabled?;\n\n /**\n * Provide the label to be rendered on the primary action button.\n */\n @property()\n label!: string;\n\n /**\n * Experimental property. Specify how the menu should align with the button element\n */\n @property({ reflect: true, type: String, attribute: 'menu-alignment' })\n menuAlignment = POPOVER_ALIGNMENT.TOP;\n\n /**\n * Provide an optional function to be called when the primary action element is clicked.\n */\n @property({ type: Function })\n onClick?: (event: Event) => void;\n\n /**\n * Specify the size of the button and menu.\n */\n @property({ type: COMBO_BUTTON_SIZE, reflect: true })\n size = COMBO_BUTTON_SIZE.LARGE;\n\n /**\n * Specify how the trigger tooltip should be aligned.\n */\n @property({ reflect: true, attribute: 'tooltip-alignment' })\n tooltipAlignment = ICON_BUTTON_TOOLTIP_ALIGNMENT.TOP;\n\n /**\n * Provide the tooltip content for the icon button.\n */\n @property({ type: String, attribute: 'tooltip-content' })\n tooltipContent = 'Additional actions';\n\n @HostListener('click')\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- https://github.com/carbon-design-system/carbon/issues/20452\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = (event: Event) => {\n const path = event.composedPath();\n if (path.includes(this._triggerNode)) {\n this._open = !this._open;\n } else if (this._open) {\n this._open = false;\n }\n if ((event.target as HTMLElement).tagName === 'CDS-MENU-ITEM') {\n this.onClick?.(event);\n }\n };\n\n @HostListener('focusout')\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- https://github.com/carbon-design-system/carbon/issues/20452\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleBlur = ({ relatedTarget }: FocusEvent) => {\n // Close the menu if the focus moves outside the menu button or menu\n if (!this.contains(relatedTarget as Node)) {\n this._open = false;\n }\n };\n\n updated(changedProperties) {\n const menu = this.querySelector(`${prefix}-menu`) as CDSMenu;\n\n if (\n changedProperties.has('_open') ||\n changedProperties.has('menuAlignment')\n ) {\n this.updateComplete.then(() => {\n const styleElement = menu.shadowRoot?.querySelector(\n `.${prefix}--menu`\n ) as HTMLElement;\n\n menu.open = this._open;\n\n this._menuController.setPlacement({\n trigger: this,\n target: menu,\n alignment: this.menuAlignment,\n styleElement,\n matchWidth: true,\n open: this._open,\n });\n });\n }\n\n if (changedProperties.has('size')) {\n menu.setAttribute('size', this.size);\n }\n }\n\n render() {\n const { size, disabled, label, tooltipAlignment, menuAlignment, onClick } =\n this;\n return html`\n <cds-custom-button size=${size} ?disabled=${disabled} @click=${onClick}>\n ${label}\n </cds-custom-button>\n <cds-custom-icon-button\n size=${size}\n ?disabled=${disabled}\n align=${tooltipAlignment}\n menu-alignment=${menuAlignment}\n part=\"trigger\">\n ${iconLoader(ChevronDown16, { slot: 'icon' })}\n <span slot=\"tooltip-content\">${this.tooltipContent}</span>\n </cds-custom-icon-button>\n <slot></slot>\n `;\n }\n\n static styles = styles;\n}\n\nexport default CDSComboButton;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,IAAA,iBAAA,MACM,uBAAuB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"combo-button.js","names":["FloatingUIController","styles","customElement"],"sources":["../../../src/components/combo-button/combo-button.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2025, 2025\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\nimport styles from './combo-button.scss?lit';\nimport '../button/index';\nimport '../menu/index';\nimport '../icon-button/index';\nimport ChevronDown16 from '@carbon/icons/es/chevron--down/16.js';\nimport { iconLoader } from '../../globals/internal/icon-loader';\nimport CDSMenu from '../menu/menu';\nimport CDSButton from '../button/button';\nimport { COMBO_BUTTON_SIZE, COMBO_BUTTON_TOOLTIP_ALIGNMENT } from './defs';\nimport { POPOVER_ALIGNMENT } from '../popover/defs';\nimport { ICON_BUTTON_TOOLTIP_ALIGNMENT } from '../icon-button/defs';\nimport FloatingUIController from '../../globals/controllers/floating-controller';\n\nexport { COMBO_BUTTON_SIZE, COMBO_BUTTON_TOOLTIP_ALIGNMENT };\n\n/**\n * Combo button.\n * @element cds-custom-combo-button\n */\n@customElement(`${prefix}-combo-button`)\nclass CDSComboButton extends HostListenerMixin(LitElement) {\n private _menuController = new FloatingUIController(this);\n\n @query(`${prefix}-icon-button`)\n _triggerNode!: CDSButton;\n\n @query(`${prefix}-menu`)\n _menuNode!: CDSMenu;\n\n @property({ type: Boolean, reflect: true })\n private _open = false;\n\n /**\n * Specify whether the ComboButton should be disabled, or not.\n */\n @property({ type: Boolean, reflect: true })\n disabled?;\n\n /**\n * Provide the label to be rendered on the primary action button.\n */\n @property()\n label!: string;\n\n /**\n * Experimental property. Specify how the menu should align with the button element\n */\n @property({ reflect: true, type: String, attribute: 'menu-alignment' })\n menuAlignment = POPOVER_ALIGNMENT.TOP;\n\n /**\n * Provide an optional function to be called when the primary action element is clicked.\n */\n @property({ type: Function })\n onClick?: (event: Event) => void;\n\n /**\n * Specify the size of the button and menu.\n */\n @property({ type: COMBO_BUTTON_SIZE, reflect: true })\n size = COMBO_BUTTON_SIZE.LARGE;\n\n /**\n * Specify how the trigger tooltip should be aligned.\n */\n @property({ reflect: true, attribute: 'tooltip-alignment' })\n tooltipAlignment = ICON_BUTTON_TOOLTIP_ALIGNMENT.TOP;\n\n /**\n * Provide the tooltip content for the icon button.\n */\n @property({ type: String, attribute: 'tooltip-content' })\n tooltipContent = 'Additional actions';\n\n @HostListener('click')\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- https://github.com/carbon-design-system/carbon/issues/20452\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = (event: Event) => {\n const path = event.composedPath();\n if (path.includes(this._triggerNode)) {\n this._open = !this._open;\n } else if (this._open) {\n this._open = false;\n }\n if ((event.target as HTMLElement).tagName === 'CDS-MENU-ITEM') {\n this.onClick?.(event);\n }\n };\n\n @HostListener('focusout')\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- https://github.com/carbon-design-system/carbon/issues/20452\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleBlur = ({ relatedTarget }: FocusEvent) => {\n // Close the menu if the focus moves outside the menu button or menu\n if (!this.contains(relatedTarget as Node)) {\n this._open = false;\n }\n };\n\n updated(changedProperties) {\n const menu = this.querySelector(`${prefix}-menu`) as CDSMenu;\n\n if (\n changedProperties.has('_open') ||\n changedProperties.has('menuAlignment')\n ) {\n this.updateComplete.then(() => {\n const styleElement = menu.shadowRoot?.querySelector(\n `.${prefix}--menu`\n ) as HTMLElement;\n\n menu.open = this._open;\n\n this._menuController.setPlacement({\n trigger: this,\n target: menu,\n alignment: this.menuAlignment,\n styleElement,\n matchWidth: true,\n open: this._open,\n });\n });\n }\n\n if (changedProperties.has('size')) {\n menu.setAttribute('size', this.size);\n }\n }\n\n render() {\n const { size, disabled, label, tooltipAlignment, menuAlignment, onClick } =\n this;\n return html`\n <cds-custom-button size=${size} ?disabled=${disabled} @click=${onClick}>\n ${label}\n </cds-custom-button>\n <cds-custom-icon-button\n size=${size}\n ?disabled=${disabled}\n align=${tooltipAlignment}\n menu-alignment=${menuAlignment}\n part=\"trigger\">\n ${iconLoader(ChevronDown16, { slot: 'icon' })}\n <span slot=\"tooltip-content\">${this.tooltipContent}</span>\n </cds-custom-icon-button>\n <slot></slot>\n `;\n }\n\n static styles = styles;\n}\n\nexport default CDSComboButton;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,IAAA,iBAAA,MACM,uBAAuB,kBAAkB,UAAU,CAAC,CAAC;;;yBAC/B,IAAIA,mBAAqB,IAAI;eASvC;;;;wBA0CC;uBAKO,UAAiB;GAEvC,IADa,MAAM,aACZ,CAAC,CAAC,SAAS,KAAK,YAAY,GACjC,KAAK,QAAQ,CAAC,KAAK;QACd,IAAI,KAAK,OACd,KAAK,QAAQ;GAEf,IAAK,MAAM,OAAuB,YAAY,iBAC5C,KAAK,UAAU,KAAK;EAExB;sBAKuB,EAAE,oBAAgC;GAEvD,IAAI,CAAC,KAAK,SAAS,aAAqB,GACtC,KAAK,QAAQ;EAEjB;;CAEA,QAAQ,mBAAmB;EACzB,MAAM,OAAO,KAAK,cAAc,UAAgB;EAEhD,IACE,kBAAkB,IAAI,OAAO,KAC7B,kBAAkB,IAAI,eAAe,GAErC,KAAK,eAAe,WAAW;GAC7B,MAAM,eAAe,KAAK,YAAY,cACpC,YACF;GAEA,KAAK,OAAO,KAAK;GAEjB,KAAK,gBAAgB,aAAa;IAChC,SAAS;IACT,QAAQ;IACR,WAAW,KAAK;IAChB;IACA,YAAY;IACZ,MAAM,KAAK;GACb,CAAC;EACH,CAAC;EAGH,IAAI,kBAAkB,IAAI,MAAM,GAC9B,KAAK,aAAa,QAAQ,KAAK,IAAI;CAEvC;CAEA,SAAS;EACP,MAAM,EAAE,MAAM,UAAU,OAAO,kBAAkB,eAAe,YAC9D;EACF,OAAO,IAAI;yBACU,KAAK,aAAa,SAAS,UAAU,QAAQ;UAC5D,MAAM;;;eAGD,KAAK;oBACA,SAAS;gBACb,iBAAiB;yBACR,cAAc;;UAE7B,WAAW,eAAe,EAAE,MAAM,OAAO,CAAC,EAAE;uCACf,KAAK,eAAe;;;;CAIzD;;gBAEgBC;;AAClB;YA/HG,MAAM,iBAAuB,CAAA,GAAA,eAAA,WAAA,gBAAA,KAAA,CAAA;YAG7B,MAAM,UAAgB,CAAA,GAAA,eAAA,WAAA,aAAA,KAAA,CAAA;YAGtB,SAAS;CAAE,MAAM;CAAS,SAAS;AAAK,CAAC,CAAA,GAAA,eAAA,WAAA,SAAA,KAAA,CAAA;YAMzC,SAAS;CAAE,MAAM;CAAS,SAAS;AAAK,CAAC,CAAA,GAAA,eAAA,WAAA,YAAA,KAAA,CAAA;YAMzC,SAAS,CAAA,GAAA,eAAA,WAAA,SAAA,KAAA,CAAA;YAMT,SAAS;CAAE,SAAS;CAAM,MAAM;CAAQ,WAAW;AAAiB,CAAC,CAAA,GAAA,eAAA,WAAA,iBAAA,KAAA,CAAA;YAMrE,SAAS,EAAE,MAAM,SAAS,CAAC,CAAA,GAAA,eAAA,WAAA,WAAA,KAAA,CAAA;YAM3B,SAAS;CAAE,MAAM;CAAmB,SAAS;AAAK,CAAC,CAAA,GAAA,eAAA,WAAA,QAAA,KAAA,CAAA;YAMnD,SAAS;CAAE,SAAS;CAAM,WAAW;AAAoB,CAAC,CAAA,GAAA,eAAA,WAAA,oBAAA,KAAA,CAAA;YAM1D,SAAS;CAAE,MAAM;CAAQ,WAAW;AAAkB,CAAC,CAAA,GAAA,eAAA,WAAA,kBAAA,KAAA,CAAA;YAGvD,aAAa,OAAO,CAAA,GAAA,eAAA,WAAA,gBAAA,KAAA,CAAA;YAepB,aAAa,UAAU,CAAA,GAAA,eAAA,WAAA,eAAA,KAAA,CAAA;6BAtEzBC,cAAc,kBAAwB,CAAA,GAAA,cAAA;AAqIvC,IAAA,uBAAe"}
|