@cloudscape-design/components 3.0.1126 → 3.0.1127
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/alert/actions-wrapper/index.d.ts.map +1 -1
- package/alert/actions-wrapper/index.js.map +1 -1
- package/alert/internal-do-not-use-core.js.map +1 -1
- package/alert/internal.d.ts +2 -2
- package/alert/internal.d.ts.map +1 -1
- package/alert/internal.js.map +1 -1
- package/alert/style.d.ts +2 -1
- package/alert/style.d.ts.map +1 -1
- package/alert/style.js.map +1 -1
- package/anchor-navigation/anchor-item/index.d.ts.map +1 -1
- package/anchor-navigation/anchor-item/index.js.map +1 -1
- package/anchor-navigation/index.d.ts +0 -1
- package/anchor-navigation/index.d.ts.map +1 -1
- package/anchor-navigation/internal.d.ts +0 -1
- package/anchor-navigation/internal.d.ts.map +1 -1
- package/anchor-navigation/internal.js.map +1 -1
- package/anchor-navigation/use-scroll-spy.js.map +1 -1
- package/anchor-navigation/utils.d.ts.map +1 -1
- package/anchor-navigation/utils.js.map +1 -1
- package/annotation-context/annotation/annotation-icon.d.ts +0 -1
- package/annotation-context/annotation/annotation-icon.d.ts.map +1 -1
- package/annotation-context/annotation/annotation-icon.js.map +1 -1
- package/annotation-context/annotation/closed-annotation.d.ts +0 -1
- package/annotation-context/annotation/closed-annotation.d.ts.map +1 -1
- package/annotation-context/annotation/closed-annotation.js.map +1 -1
- package/annotation-context/index.d.ts +0 -1
- package/annotation-context/index.d.ts.map +1 -1
- package/annotation-context/index.js.map +1 -1
- package/annotation-context/interfaces.d.ts +0 -1
- package/annotation-context/interfaces.d.ts.map +1 -1
- package/annotation-context/utils.js.map +1 -1
- package/app-layout/classic.js.map +1 -1
- package/app-layout/content-wrapper/index.js.map +1 -1
- package/app-layout/drawer/drawers-helpers.js.map +1 -1
- package/app-layout/drawer/index.d.ts.map +1 -1
- package/app-layout/drawer/index.js.map +1 -1
- package/app-layout/drawer/overflow-menu.d.ts +0 -1
- package/app-layout/drawer/overflow-menu.d.ts.map +1 -1
- package/app-layout/drawer/overflow-menu.js.map +1 -1
- package/app-layout/drawer/resizable-drawer.d.ts +0 -1
- package/app-layout/drawer/resizable-drawer.d.ts.map +1 -1
- package/app-layout/drawer/resizable-drawer.js.map +1 -1
- package/app-layout/index.js.map +1 -1
- package/app-layout/internal.js.map +1 -1
- package/app-layout/mobile-toolbar/index.js.map +1 -1
- package/app-layout/runtime-drawer/index.d.ts +4 -4
- package/app-layout/runtime-drawer/index.d.ts.map +1 -1
- package/app-layout/runtime-drawer/index.js.map +1 -1
- package/app-layout/runtime-drawer/use-runtime-drawer-context.d.ts.map +1 -1
- package/app-layout/runtime-drawer/use-runtime-drawer-context.js.map +1 -1
- package/app-layout/split-panel/provider.js.map +1 -1
- package/app-layout/split-panel/split-panel-forced-position.js.map +1 -1
- package/app-layout/toggles/index.d.ts.map +1 -1
- package/app-layout/utils/sticky-offsets.d.ts +3 -1
- package/app-layout/utils/sticky-offsets.d.ts.map +1 -1
- package/app-layout/utils/use-app-layout-placement.d.ts +0 -1
- package/app-layout/utils/use-app-layout-placement.d.ts.map +1 -1
- package/app-layout/utils/use-app-layout-placement.js.map +1 -1
- package/app-layout/utils/use-drawers.d.ts.map +1 -1
- package/app-layout/utils/use-drawers.js.map +1 -1
- package/app-layout/utils/use-focus-control.js.map +1 -1
- package/app-layout/utils/use-global-scroll-padding.js.map +1 -1
- package/app-layout/utils/use-keyboard-events.d.ts.map +1 -1
- package/app-layout/utils/use-keyboard-events.js.map +1 -1
- package/app-layout/utils/use-pointer-events.d.ts.map +1 -1
- package/app-layout/utils/use-pointer-events.js.map +1 -1
- package/app-layout/utils/use-resize.js.map +1 -1
- package/app-layout/utils/use-split-panel-focus-control.js.map +1 -1
- package/app-layout/utils/visibility-context.d.ts +0 -1
- package/app-layout/utils/visibility-context.d.ts.map +1 -1
- package/app-layout/visual-refresh/background.d.ts +0 -1
- package/app-layout/visual-refresh/background.d.ts.map +1 -1
- package/app-layout/visual-refresh/background.js.map +1 -1
- package/app-layout/visual-refresh/breadcrumbs.d.ts +0 -1
- package/app-layout/visual-refresh/breadcrumbs.d.ts.map +1 -1
- package/app-layout/visual-refresh/breadcrumbs.js.map +1 -1
- package/app-layout/visual-refresh/context.js.map +1 -1
- package/app-layout/visual-refresh/drawers.d.ts +0 -1
- package/app-layout/visual-refresh/drawers.d.ts.map +1 -1
- package/app-layout/visual-refresh/drawers.js.map +1 -1
- package/app-layout/visual-refresh/header.d.ts +0 -1
- package/app-layout/visual-refresh/header.d.ts.map +1 -1
- package/app-layout/visual-refresh/header.js.map +1 -1
- package/app-layout/visual-refresh/layout.js.map +1 -1
- package/app-layout/visual-refresh/main.d.ts +0 -1
- package/app-layout/visual-refresh/main.d.ts.map +1 -1
- package/app-layout/visual-refresh/mobile-toolbar.d.ts +0 -1
- package/app-layout/visual-refresh/mobile-toolbar.d.ts.map +1 -1
- package/app-layout/visual-refresh/mobile-toolbar.js.map +1 -1
- package/app-layout/visual-refresh/navigation.d.ts +0 -1
- package/app-layout/visual-refresh/navigation.d.ts.map +1 -1
- package/app-layout/visual-refresh/navigation.js.map +1 -1
- package/app-layout/visual-refresh/notifications.d.ts +0 -1
- package/app-layout/visual-refresh/notifications.d.ts.map +1 -1
- package/app-layout/visual-refresh/notifications.js.map +1 -1
- package/app-layout/visual-refresh/split-panel.js.map +1 -1
- package/app-layout/visual-refresh/tools.js.map +1 -1
- package/app-layout/visual-refresh/use-background-overlap.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/compute-layout.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/drawer/global-ai-drawer.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/drawer/global-bottom-drawer.d.ts +0 -1
- package/app-layout/visual-refresh-toolbar/drawer/global-bottom-drawer.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/drawer/global-bottom-drawer.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/drawer/global-drawer.d.ts +0 -1
- package/app-layout/visual-refresh-toolbar/drawer/global-drawer.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/drawer/global-drawer.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/drawer/global-drawers.d.ts +0 -1
- package/app-layout/visual-refresh-toolbar/drawer/global-drawers.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/drawer/global-drawers.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/drawer/local-drawer.d.ts +0 -1
- package/app-layout/visual-refresh-toolbar/drawer/local-drawer.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/drawer/local-drawer.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/drawer/use-resize.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/internal.d.ts +0 -1
- package/app-layout/visual-refresh-toolbar/internal.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/navigation/index.d.ts +0 -1
- package/app-layout/visual-refresh-toolbar/navigation/index.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/navigation/index.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/skeleton/index.d.ts +0 -1
- package/app-layout/visual-refresh-toolbar/skeleton/index.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/skeleton/multi-layout.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/state/index.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/state/index.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/state/props-merger.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/state/props-merger.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/state/use-ai-drawer.d.ts +10 -11
- package/app-layout/visual-refresh-toolbar/state/use-ai-drawer.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/state/use-ai-drawer.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/state/use-app-layout.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/state/use-app-layout.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/state/use-bottom-drawers.d.ts +10 -10
- package/app-layout/visual-refresh-toolbar/state/use-bottom-drawers.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/state/use-bottom-drawers.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/state/use-skeleton-slots-attributes.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/state/use-widget-messages.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/toolbar/drawer-triggers.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/toolbar/index.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/widget-areas/after-main-slot.d.ts +0 -1
- package/app-layout/visual-refresh-toolbar/widget-areas/after-main-slot.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/widget-areas/after-main-slot.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/widget-areas/before-main-slot.d.ts +0 -1
- package/app-layout/visual-refresh-toolbar/widget-areas/before-main-slot.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/widget-areas/before-main-slot.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/widget-areas/bottom-content-slot.d.ts +0 -1
- package/app-layout/visual-refresh-toolbar/widget-areas/bottom-content-slot.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/widget-areas/bottom-content-slot.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/widget-areas/top-content-slot.d.ts +0 -1
- package/app-layout/visual-refresh-toolbar/widget-areas/top-content-slot.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/widget-areas/top-content-slot.js.map +1 -1
- package/app-layout-toolbar/index.js.map +1 -1
- package/area-chart/async-store/index.js.map +1 -1
- package/area-chart/chart-container.d.ts +0 -1
- package/area-chart/chart-container.d.ts.map +1 -1
- package/area-chart/elements/area-chart-filter.d.ts +0 -1
- package/area-chart/elements/area-chart-filter.d.ts.map +1 -1
- package/area-chart/elements/area-chart-legend.d.ts.map +1 -1
- package/area-chart/elements/area-series.d.ts +0 -1
- package/area-chart/elements/area-series.d.ts.map +1 -1
- package/area-chart/elements/chart-popover.js.map +1 -1
- package/area-chart/elements/data-series.d.ts +0 -1
- package/area-chart/elements/data-series.d.ts.map +1 -1
- package/area-chart/elements/data-series.js.map +1 -1
- package/area-chart/elements/highlighted-point.d.ts +1 -1
- package/area-chart/elements/highlighted-point.d.ts.map +1 -1
- package/area-chart/elements/threshold-series.d.ts +0 -1
- package/area-chart/elements/threshold-series.d.ts.map +1 -1
- package/area-chart/elements/use-highlight-details.js.map +1 -1
- package/area-chart/elements/vertical-marker.d.ts +0 -1
- package/area-chart/elements/vertical-marker.d.ts.map +1 -1
- package/area-chart/index.d.ts +0 -1
- package/area-chart/index.d.ts.map +1 -1
- package/area-chart/internal.d.ts +0 -1
- package/area-chart/internal.d.ts.map +1 -1
- package/area-chart/internal.js.map +1 -1
- package/area-chart/model/create-series-decorator.d.ts.map +1 -1
- package/area-chart/model/use-chart-model.js.map +1 -1
- package/area-chart/model/use-filter-props.js.map +1 -1
- package/area-chart/model/use-highlight-props.js.map +1 -1
- package/area-chart/model/utils.js.map +1 -1
- package/attribute-editor/additional-info.d.ts.map +1 -1
- package/attribute-editor/index.d.ts.map +1 -1
- package/attribute-editor/internal.d.ts.map +1 -1
- package/attribute-editor/internal.js.map +1 -1
- package/attribute-editor/row.d.ts.map +1 -1
- package/attribute-editor/row.js.map +1 -1
- package/attribute-editor/utils.js.map +1 -1
- package/autosuggest/autosuggest-option.js.map +1 -1
- package/autosuggest/internal.js.map +1 -1
- package/autosuggest/load-more-controller.d.ts.map +1 -1
- package/autosuggest/load-more-controller.js.map +1 -1
- package/autosuggest/options-controller.d.ts.map +1 -1
- package/autosuggest/options-controller.js.map +1 -1
- package/autosuggest/options-list.js.map +1 -1
- package/autosuggest/plain-list.d.ts +3 -3
- package/autosuggest/plain-list.d.ts.map +1 -1
- package/autosuggest/plain-list.js.map +1 -1
- package/autosuggest/utils/utils.d.ts.map +1 -1
- package/autosuggest/utils/utils.js.map +1 -1
- package/autosuggest/virtual-list.d.ts +0 -1
- package/autosuggest/virtual-list.d.ts.map +1 -1
- package/autosuggest/virtual-list.js.map +1 -1
- package/badge/index.d.ts +0 -1
- package/badge/index.d.ts.map +1 -1
- package/badge/style.js.map +1 -1
- package/bar-chart/index.d.ts +0 -1
- package/bar-chart/index.d.ts.map +1 -1
- package/box/index.d.ts +0 -1
- package/box/index.d.ts.map +1 -1
- package/box/interfaces.d.ts +0 -1
- package/box/interfaces.d.ts.map +1 -1
- package/box/internal.d.ts +0 -1
- package/box/internal.d.ts.map +1 -1
- package/box/internal.js.map +1 -1
- package/breadcrumb-group/all-items-dropdown.d.ts +0 -1
- package/breadcrumb-group/all-items-dropdown.d.ts.map +1 -1
- package/breadcrumb-group/all-items-dropdown.js.map +1 -1
- package/breadcrumb-group/implementation.d.ts +0 -1
- package/breadcrumb-group/implementation.d.ts.map +1 -1
- package/breadcrumb-group/implementation.js +1 -1
- package/breadcrumb-group/implementation.js.map +1 -1
- package/breadcrumb-group/index.d.ts +0 -1
- package/breadcrumb-group/index.d.ts.map +1 -1
- package/breadcrumb-group/index.js.map +1 -1
- package/breadcrumb-group/item/funnel.js.map +1 -1
- package/breadcrumb-group/item/item.d.ts +0 -1
- package/breadcrumb-group/item/item.d.ts.map +1 -1
- package/breadcrumb-group/item/item.js.map +1 -1
- package/breadcrumb-group/skeleton.d.ts +1 -1
- package/breadcrumb-group/utils.d.ts.map +1 -1
- package/breadcrumb-group/utils.js.map +1 -1
- package/button/icon-helper.js.map +1 -1
- package/button/internal.d.ts +9 -9
- package/button/internal.d.ts.map +1 -1
- package/button/internal.js.map +1 -1
- package/button/style.js.map +1 -1
- package/button-dropdown/category-elements/category-element.d.ts +0 -1
- package/button-dropdown/category-elements/category-element.d.ts.map +1 -1
- package/button-dropdown/category-elements/expandable-category-element.d.ts +0 -1
- package/button-dropdown/category-elements/expandable-category-element.d.ts.map +1 -1
- package/button-dropdown/category-elements/expandable-category-element.js.map +1 -1
- package/button-dropdown/category-elements/mobile-expandable-category-element.d.ts +0 -1
- package/button-dropdown/category-elements/mobile-expandable-category-element.d.ts.map +1 -1
- package/button-dropdown/category-elements/mobile-expandable-category-element.js.map +1 -1
- package/button-dropdown/internal.js.map +1 -1
- package/button-dropdown/item-element/index.d.ts +0 -1
- package/button-dropdown/item-element/index.d.ts.map +1 -1
- package/button-dropdown/item-element/index.js.map +1 -1
- package/button-dropdown/items-list.d.ts +0 -1
- package/button-dropdown/items-list.d.ts.map +1 -1
- package/button-dropdown/items-list.js.map +1 -1
- package/button-dropdown/mobile-expandable-group/mobile-expandable-group.d.ts.map +1 -1
- package/button-dropdown/tooltip.js.map +1 -1
- package/button-dropdown/utils/create-items-tree.js.map +1 -1
- package/button-dropdown/utils/move-highlight.js.map +1 -1
- package/button-dropdown/utils/use-button-dropdown.js.map +1 -1
- package/button-dropdown/utils/use-highlighted-menu.js.map +1 -1
- package/button-dropdown/utils/utils.d.ts.map +1 -1
- package/button-dropdown/utils/utils.js.map +1 -1
- package/button-group/icon-button-item.js.map +1 -1
- package/button-group/icon-toggle-button-item.js.map +1 -1
- package/button-group/interfaces.d.ts +0 -1
- package/button-group/interfaces.d.ts.map +1 -1
- package/button-group/internal-do-not-use-core.js.map +1 -1
- package/button-group/internal.js.map +1 -1
- package/button-group/item-element.js.map +1 -1
- package/button-group/style.js.map +1 -1
- package/calendar/grid/calendar-grid-header.d.ts +0 -1
- package/calendar/grid/calendar-grid-header.d.ts.map +1 -1
- package/calendar/grid/index.js.map +1 -1
- package/calendar/grid/use-calendar-grid-keyboard-navigation.d.ts.map +1 -1
- package/calendar/grid/use-calendar-grid-keyboard-navigation.js.map +1 -1
- package/calendar/grid/use-calendar-grid-rows.js.map +1 -1
- package/calendar/header/header-button.d.ts +0 -1
- package/calendar/header/header-button.d.ts.map +1 -1
- package/calendar/header/index.d.ts +0 -1
- package/calendar/header/index.d.ts.map +1 -1
- package/calendar/index.d.ts +0 -1
- package/calendar/index.d.ts.map +1 -1
- package/calendar/internal.d.ts +0 -1
- package/calendar/internal.d.ts.map +1 -1
- package/calendar/internal.js.map +1 -1
- package/calendar/use-calendar-labels.js.map +1 -1
- package/calendar/utils/intl.js.map +1 -1
- package/calendar/utils/navigation-day.js.map +1 -1
- package/calendar/utils/navigation-month.js.map +1 -1
- package/cards/cards-layout-helper.d.ts.map +1 -1
- package/cards/cards-layout-helper.js.map +1 -1
- package/cards/index.d.ts.map +1 -1
- package/cards/index.js.map +1 -1
- package/checkbox/internal.js.map +1 -1
- package/checkbox/style.js.map +1 -1
- package/code-editor/error-screen.d.ts.map +1 -1
- package/code-editor/index.js.map +1 -1
- package/code-editor/listeners.js.map +1 -1
- package/code-editor/loading-screen.d.ts.map +1 -1
- package/code-editor/pane.d.ts +0 -1
- package/code-editor/pane.d.ts.map +1 -1
- package/code-editor/pane.js.map +1 -1
- package/code-editor/preferences-modal.d.ts +0 -1
- package/code-editor/preferences-modal.d.ts.map +1 -1
- package/code-editor/resizable-box/index.js.map +1 -1
- package/code-editor/setup-editor.js.map +1 -1
- package/code-editor/use-editor.d.ts +0 -2
- package/code-editor/use-editor.d.ts.map +1 -1
- package/code-editor/use-editor.js.map +1 -1
- package/code-editor/util.d.ts +2 -2
- package/code-editor/util.js.map +1 -1
- package/collection-preferences/analytics-metadata/utils.d.ts +1 -1
- package/collection-preferences/analytics-metadata/utils.d.ts.map +1 -1
- package/collection-preferences/analytics-metadata/utils.js.map +1 -1
- package/collection-preferences/content-display/content-display-option.d.ts.map +1 -1
- package/collection-preferences/content-display/index.d.ts +0 -1
- package/collection-preferences/content-display/index.d.ts.map +1 -1
- package/collection-preferences/content-display/utils.js.map +1 -1
- package/collection-preferences/index.d.ts +0 -1
- package/collection-preferences/index.d.ts.map +1 -1
- package/collection-preferences/index.js.map +1 -1
- package/collection-preferences/interfaces.d.ts +0 -1
- package/collection-preferences/interfaces.d.ts.map +1 -1
- package/collection-preferences/utils.d.ts.map +1 -1
- package/collection-preferences/utils.js.map +1 -1
- package/collection-preferences/visible-content.d.ts +0 -1
- package/collection-preferences/visible-content.d.ts.map +1 -1
- package/collection-preferences/visible-content.js.map +1 -1
- package/column-layout/flexible-column-layout/index.js.map +1 -1
- package/column-layout/index.d.ts +0 -1
- package/column-layout/index.d.ts.map +1 -1
- package/column-layout/internal.d.ts +0 -1
- package/column-layout/internal.d.ts.map +1 -1
- package/column-layout/util.js.map +1 -1
- package/container/index.d.ts +0 -1
- package/container/index.d.ts.map +1 -1
- package/container/style.js.map +1 -1
- package/container/use-sticky-header.d.ts.map +1 -1
- package/container/use-sticky-header.js.map +1 -1
- package/content-layout/index.d.ts +0 -1
- package/content-layout/index.d.ts.map +1 -1
- package/content-layout/interfaces.d.ts +0 -1
- package/content-layout/interfaces.d.ts.map +1 -1
- package/content-layout/internal.d.ts +0 -1
- package/content-layout/internal.d.ts.map +1 -1
- package/copy-to-clipboard/index.d.ts +0 -1
- package/copy-to-clipboard/index.d.ts.map +1 -1
- package/copy-to-clipboard/internal.d.ts +0 -1
- package/copy-to-clipboard/internal.d.ts.map +1 -1
- package/copy-to-clipboard/internal.js.map +1 -1
- package/date-input/internal.d.ts +1 -1
- package/date-input/internal.d.ts.map +1 -1
- package/date-input/internal.js.map +1 -1
- package/date-input/utils.d.ts.map +1 -1
- package/date-input/utils.js.map +1 -1
- package/date-picker/index.js.map +1 -1
- package/date-range-picker/calendar/grids/grid-cell.js.map +1 -1
- package/date-range-picker/calendar/grids/grid.d.ts +0 -1
- package/date-range-picker/calendar/grids/grid.d.ts.map +1 -1
- package/date-range-picker/calendar/grids/grid.js.map +1 -1
- package/date-range-picker/calendar/grids/index.d.ts +0 -1
- package/date-range-picker/calendar/grids/index.d.ts.map +1 -1
- package/date-range-picker/calendar/grids/index.js.map +1 -1
- package/date-range-picker/calendar/grids/interfaces.d.ts +0 -1
- package/date-range-picker/calendar/grids/interfaces.d.ts.map +1 -1
- package/date-range-picker/calendar/grids/intl.js.map +1 -1
- package/date-range-picker/calendar/header/header-button.d.ts +0 -1
- package/date-range-picker/calendar/header/header-button.d.ts.map +1 -1
- package/date-range-picker/calendar/header/index.d.ts +0 -1
- package/date-range-picker/calendar/header/index.d.ts.map +1 -1
- package/date-range-picker/calendar/index.d.ts +0 -1
- package/date-range-picker/calendar/index.d.ts.map +1 -1
- package/date-range-picker/calendar/index.js.map +1 -1
- package/date-range-picker/calendar/interfaces.d.ts +0 -1
- package/date-range-picker/calendar/interfaces.d.ts.map +1 -1
- package/date-range-picker/calendar/range-inputs.d.ts +0 -1
- package/date-range-picker/calendar/range-inputs.d.ts.map +1 -1
- package/date-range-picker/calendar/utils.d.ts +2 -2
- package/date-range-picker/calendar/utils.d.ts.map +1 -1
- package/date-range-picker/calendar/utils.js.map +1 -1
- package/date-range-picker/dropdown.d.ts +0 -1
- package/date-range-picker/dropdown.d.ts.map +1 -1
- package/date-range-picker/dropdown.js.map +1 -1
- package/date-range-picker/index.js.map +1 -1
- package/date-range-picker/mode-switcher.d.ts +0 -1
- package/date-range-picker/mode-switcher.d.ts.map +1 -1
- package/date-range-picker/relative-range/index.d.ts +0 -1
- package/date-range-picker/relative-range/index.d.ts.map +1 -1
- package/date-range-picker/relative-range/index.js +2 -4
- package/date-range-picker/relative-range/index.js.map +1 -1
- package/date-range-picker/time-offset.js.map +1 -1
- package/date-range-picker/utils.js.map +1 -1
- package/drawer/implementation.d.ts +0 -1
- package/drawer/implementation.d.ts.map +1 -1
- package/drawer/index.d.ts +0 -1
- package/drawer/index.d.ts.map +1 -1
- package/expandable-section/expandable-section-container.d.ts.map +1 -1
- package/expandable-section/expandable-section-container.js.map +1 -1
- package/expandable-section/expandable-section-header.d.ts.map +1 -1
- package/expandable-section/expandable-section-header.js.map +1 -1
- package/expandable-section/index.d.ts +0 -1
- package/expandable-section/index.d.ts.map +1 -1
- package/expandable-section/internal.d.ts +0 -1
- package/expandable-section/internal.d.ts.map +1 -1
- package/expandable-section/internal.js.map +1 -1
- package/file-dropzone/index.d.ts +0 -1
- package/file-dropzone/index.d.ts.map +1 -1
- package/file-dropzone/interfaces.d.ts +0 -1
- package/file-dropzone/interfaces.d.ts.map +1 -1
- package/file-dropzone/internal.d.ts +0 -1
- package/file-dropzone/internal.d.ts.map +1 -1
- package/file-dropzone/internal.js.map +1 -1
- package/file-dropzone/use-files-dragging.js.map +1 -1
- package/file-input/internal.js.map +1 -1
- package/file-token-group/default-formatters.js.map +1 -1
- package/file-token-group/file-token.js.map +1 -1
- package/file-token-group/index.d.ts +0 -1
- package/file-token-group/index.d.ts.map +1 -1
- package/file-token-group/internal.d.ts +0 -1
- package/file-token-group/internal.d.ts.map +1 -1
- package/file-token-group/thumbnail.d.ts +0 -1
- package/file-token-group/thumbnail.d.ts.map +1 -1
- package/file-token-group/thumbnail.js.map +1 -1
- package/file-upload/interfaces.d.ts +0 -1
- package/file-upload/interfaces.d.ts.map +1 -1
- package/file-upload/internal.js.map +1 -1
- package/flashbar/analytics-metadata/utils.d.ts.map +1 -1
- package/flashbar/analytics-metadata/utils.js.map +1 -1
- package/flashbar/collapsible-flashbar.d.ts +0 -1
- package/flashbar/collapsible-flashbar.d.ts.map +1 -1
- package/flashbar/collapsible-flashbar.js.map +1 -1
- package/flashbar/common.d.ts +0 -1
- package/flashbar/common.d.ts.map +1 -1
- package/flashbar/common.js.map +1 -1
- package/flashbar/flash.d.ts.map +1 -1
- package/flashbar/flash.js.map +1 -1
- package/flashbar/implementation.d.ts +0 -1
- package/flashbar/implementation.d.ts.map +1 -1
- package/flashbar/implementation.js.map +1 -1
- package/flashbar/index.d.ts +0 -1
- package/flashbar/index.d.ts.map +1 -1
- package/flashbar/non-collapsible-flashbar.d.ts +0 -1
- package/flashbar/non-collapsible-flashbar.d.ts.map +1 -1
- package/flashbar/non-collapsible-flashbar.js.map +1 -1
- package/flashbar/style.js.map +1 -1
- package/flashbar/utils.js.map +1 -1
- package/form/analytics-metadata/styles.css.js +2 -1
- package/form/analytics-metadata/styles.scoped.css +2 -1
- package/form/analytics-metadata/styles.selectors.js +2 -1
- package/form/index.d.ts +0 -1
- package/form/index.d.ts.map +1 -1
- package/form/index.js +1 -1
- package/form/index.js.map +1 -1
- package/form/internal.d.ts +0 -1
- package/form/internal.d.ts.map +1 -1
- package/form/internal.js +1 -1
- package/form/internal.js.map +1 -1
- package/form-field/index.d.ts +0 -1
- package/form-field/index.d.ts.map +1 -1
- package/form-field/internal.js.map +1 -1
- package/form-field/util.d.ts +0 -1
- package/form-field/util.d.ts.map +1 -1
- package/form-field/util.js.map +1 -1
- package/grid/index.d.ts +0 -1
- package/grid/index.d.ts.map +1 -1
- package/grid/internal.js.map +1 -1
- package/header/analytics/use-table-integration.d.ts.map +1 -1
- package/header/analytics/use-table-integration.js.map +1 -1
- package/header/index.d.ts +0 -1
- package/header/index.d.ts.map +1 -1
- package/header/internal.js.map +1 -1
- package/help-panel/implementation.d.ts +0 -1
- package/help-panel/implementation.d.ts.map +1 -1
- package/help-panel/index.d.ts +0 -1
- package/help-panel/index.d.ts.map +1 -1
- package/hotspot/index.d.ts +0 -1
- package/hotspot/index.d.ts.map +1 -1
- package/hotspot/index.js.map +1 -1
- package/hotspot/interfaces.d.ts +0 -1
- package/hotspot/interfaces.d.ts.map +1 -1
- package/i18n/get-matchable-locales.js.map +1 -1
- package/i18n/provider.js.map +1 -1
- package/icon/generated/icons.d.ts +0 -1
- package/icon/generated/icons.d.ts.map +1 -1
- package/icon/index.d.ts +0 -1
- package/icon/index.d.ts.map +1 -1
- package/icon/internal.d.ts +0 -1
- package/icon/internal.d.ts.map +1 -1
- package/icon/internal.js.map +1 -1
- package/icon-provider/context.d.ts +0 -1
- package/icon-provider/context.d.ts.map +1 -1
- package/icon-provider/index.d.ts +0 -1
- package/icon-provider/index.d.ts.map +1 -1
- package/icon-provider/internal.d.ts +0 -1
- package/icon-provider/internal.d.ts.map +1 -1
- package/icon-provider/internal.js.map +1 -1
- package/input/interfaces.d.ts +0 -1
- package/input/interfaces.d.ts.map +1 -1
- package/input/internal-do-not-use-core.js +2 -2
- package/input/internal-do-not-use-core.js.map +1 -1
- package/input/internal.js.map +1 -1
- package/input/styles.js.map +1 -1
- package/input/utils.d.ts.map +1 -1
- package/input/utils.js.map +1 -1
- package/internal/analytics/components/analytics-funnel.d.ts.map +1 -1
- package/internal/analytics/components/analytics-funnel.js.map +1 -1
- package/internal/analytics/hooks/use-funnel.d.ts +3 -4
- package/internal/analytics/hooks/use-funnel.d.ts.map +1 -1
- package/internal/analytics/hooks/use-funnel.js.map +1 -1
- package/internal/analytics/selectors.d.ts +6 -6
- package/internal/analytics/selectors.d.ts.map +1 -1
- package/internal/analytics/utils/parse-count-text.d.ts.map +1 -1
- package/internal/analytics/utils/parse-count-text.js.map +1 -1
- package/internal/animate.js.map +1 -1
- package/internal/base-component/index.d.ts.map +1 -1
- package/internal/base-component/index.js.map +1 -1
- package/internal/base-component/styles.scoped.css +1 -1
- package/internal/breakpoints.js.map +1 -1
- package/internal/components/abstract-switch/index.js.map +1 -1
- package/internal/components/autosuggest-input/index.js.map +1 -1
- package/internal/components/button-trigger/index.js.map +1 -1
- package/internal/components/cartesian-chart/axis-label.d.ts +0 -1
- package/internal/components/cartesian-chart/axis-label.d.ts.map +1 -1
- package/internal/components/cartesian-chart/axis-label.js.map +1 -1
- package/internal/components/cartesian-chart/block-end-labels.d.ts.map +1 -1
- package/internal/components/cartesian-chart/block-end-labels.js.map +1 -1
- package/internal/components/cartesian-chart/chart-container.js.map +1 -1
- package/internal/components/cartesian-chart/emphasized-baseline.d.ts +0 -1
- package/internal/components/cartesian-chart/emphasized-baseline.d.ts.map +1 -1
- package/internal/components/cartesian-chart/emphasized-baseline.js.map +1 -1
- package/internal/components/cartesian-chart/highlighted-point.js.map +1 -1
- package/internal/components/cartesian-chart/inline-start-labels.d.ts +0 -1
- package/internal/components/cartesian-chart/inline-start-labels.d.ts.map +1 -1
- package/internal/components/cartesian-chart/inline-start-labels.js.map +1 -1
- package/internal/components/cartesian-chart/interfaces.d.ts +0 -1
- package/internal/components/cartesian-chart/interfaces.d.ts.map +1 -1
- package/internal/components/cartesian-chart/label-utils.js.map +1 -1
- package/internal/components/cartesian-chart/labels-measure.d.ts +0 -1
- package/internal/components/cartesian-chart/labels-measure.d.ts.map +1 -1
- package/internal/components/cartesian-chart/labels-measure.js.map +1 -1
- package/internal/components/cartesian-chart/scales.d.ts +1 -1
- package/internal/components/cartesian-chart/scales.d.ts.map +1 -1
- package/internal/components/cartesian-chart/scales.js.map +1 -1
- package/internal/components/cartesian-chart/ticks.js.map +1 -1
- package/internal/components/cartesian-chart/vertical-grid-lines.d.ts +0 -1
- package/internal/components/cartesian-chart/vertical-grid-lines.d.ts.map +1 -1
- package/internal/components/chart-filter/index.d.ts.map +1 -1
- package/internal/components/chart-legend/index.d.ts.map +1 -1
- package/internal/components/chart-legend/index.js.map +1 -1
- package/internal/components/chart-plot/application-controller.js.map +1 -1
- package/internal/components/chart-plot/focus-outline.js.map +1 -1
- package/internal/components/chart-plot/index.js.map +1 -1
- package/internal/components/chart-popover/index.js.map +1 -1
- package/internal/components/chart-series-details/index.js.map +1 -1
- package/internal/components/chart-series-details/series-details-text.js.map +1 -1
- package/internal/components/chart-status-container/index.js.map +1 -1
- package/internal/components/chart-wrapper/index.js.map +1 -1
- package/internal/components/checkbox-icon/index.d.ts +0 -1
- package/internal/components/checkbox-icon/index.d.ts.map +1 -1
- package/internal/components/drag-handle/button.js.map +1 -1
- package/internal/components/drag-handle/hooks/use-drag-handle-interaction-state.d.ts.map +1 -1
- package/internal/components/drag-handle/hooks/use-drag-handle-interaction-state.js.map +1 -1
- package/internal/components/drag-handle/interfaces.d.ts +0 -1
- package/internal/components/drag-handle/interfaces.d.ts.map +1 -1
- package/internal/components/drag-handle/resize-icon.d.ts +0 -1
- package/internal/components/drag-handle/resize-icon.d.ts.map +1 -1
- package/internal/components/drag-handle-wrapper/index.d.ts +0 -1
- package/internal/components/drag-handle-wrapper/index.d.ts.map +1 -1
- package/internal/components/drag-handle-wrapper/index.js.map +1 -1
- package/internal/components/drag-handle-wrapper/interfaces.d.ts +0 -1
- package/internal/components/drag-handle-wrapper/interfaces.d.ts.map +1 -1
- package/internal/components/drag-handle-wrapper/portal-overlay.js.map +1 -1
- package/internal/components/dropdown/context.d.ts.map +1 -1
- package/internal/components/dropdown/dropdown-fit-handler.d.ts +7 -7
- package/internal/components/dropdown/dropdown-fit-handler.d.ts.map +1 -1
- package/internal/components/dropdown/dropdown-fit-handler.js.map +1 -1
- package/internal/components/dropdown/dropdown-position.js.map +1 -1
- package/internal/components/dropdown/index.d.ts +0 -1
- package/internal/components/dropdown/index.d.ts.map +1 -1
- package/internal/components/dropdown/index.js.map +1 -1
- package/internal/components/dropdown-status/index.js.map +1 -1
- package/internal/components/focus-lock/index.js.map +1 -1
- package/internal/components/focus-lock/utils.js.map +1 -1
- package/internal/components/masked-input/index.js.map +1 -1
- package/internal/components/masked-input/keyboard-handler.d.ts.map +1 -1
- package/internal/components/masked-input/keyboard-handler.js.map +1 -1
- package/internal/components/masked-input/use-mask.d.ts.map +1 -1
- package/internal/components/masked-input/use-mask.js.map +1 -1
- package/internal/components/masked-input/utils/keys.d.ts.map +1 -1
- package/internal/components/masked-input/utils/mask-format.js.map +1 -1
- package/internal/components/masked-input/utils/strings.d.ts.map +1 -1
- package/internal/components/menu-dropdown/index.d.ts.map +1 -1
- package/internal/components/menu-dropdown/interfaces.d.ts +0 -1
- package/internal/components/menu-dropdown/interfaces.d.ts.map +1 -1
- package/internal/components/option/highlight-match.js.map +1 -1
- package/internal/components/option/index.d.ts +0 -1
- package/internal/components/option/index.d.ts.map +1 -1
- package/internal/components/option/index.js.map +1 -1
- package/internal/components/option/option-announcer.js.map +1 -1
- package/internal/components/option/option-parts.d.ts.map +1 -1
- package/internal/components/option/option-parts.js.map +1 -1
- package/internal/components/option/utils/filter-options.d.ts.map +1 -1
- package/internal/components/option/utils/filter-options.js.map +1 -1
- package/internal/components/option/utils/flatten-options.d.ts.map +1 -1
- package/internal/components/option/utils/flatten-options.js.map +1 -1
- package/internal/components/option/utils/unflatten-options.js.map +1 -1
- package/internal/components/options-list/index.js.map +1 -1
- package/internal/components/options-list/utils/test-indexes.d.ts +1 -1
- package/internal/components/options-list/utils/test-indexes.d.ts.map +1 -1
- package/internal/components/options-list/utils/test-indexes.js.map +1 -1
- package/internal/components/options-list/utils/use-highlight-option.js.map +1 -1
- package/internal/components/options-list/utils/use-ids.d.ts.map +1 -1
- package/internal/components/options-list/utils/use-ids.js.map +1 -1
- package/internal/components/options-list/utils/use-keyboard.js.map +1 -1
- package/internal/components/options-list/utils/use-open-state.d.ts.map +1 -1
- package/internal/components/options-list/utils/use-open-state.js.map +1 -1
- package/internal/components/responsive-text/index.js.map +1 -1
- package/internal/components/responsive-text/responsive-text-utils.js.map +1 -1
- package/internal/components/selectable-item/analytics-metadata/utils.d.ts.map +1 -1
- package/internal/components/selectable-item/analytics-metadata/utils.js.map +1 -1
- package/internal/components/selectable-item/index.js.map +1 -1
- package/internal/components/selectable-item/interfaces.d.ts +0 -1
- package/internal/components/selectable-item/interfaces.d.ts.map +1 -1
- package/internal/components/sortable-area/index.d.ts +0 -1
- package/internal/components/sortable-area/index.d.ts.map +1 -1
- package/internal/components/sortable-area/index.js.map +1 -1
- package/internal/components/sortable-area/interfaces.d.ts +0 -1
- package/internal/components/sortable-area/interfaces.d.ts.map +1 -1
- package/internal/components/sortable-area/keyboard-sensor/index.js.map +1 -1
- package/internal/components/sortable-area/keyboard-sensor/utilities/scroll.js.map +1 -1
- package/internal/components/sortable-area/use-drag-and-drop-reorder.d.ts.map +1 -1
- package/internal/components/sortable-area/use-drag-and-drop-reorder.js.map +1 -1
- package/internal/components/sortable-area/use-live-announcements.js.map +1 -1
- package/internal/components/structured-item/index.d.ts +0 -1
- package/internal/components/structured-item/index.d.ts.map +1 -1
- package/internal/components/token-list/index.d.ts +0 -1
- package/internal/components/token-list/index.d.ts.map +1 -1
- package/internal/components/token-list/index.js.map +1 -1
- package/internal/components/token-list/token-limit-toggle.d.ts +0 -1
- package/internal/components/token-list/token-limit-toggle.d.ts.map +1 -1
- package/internal/components/tooltip/index.js.map +1 -1
- package/internal/components/transition/index.js.map +1 -1
- package/internal/components/visual-context/index.js.map +1 -1
- package/internal/context/button-context.d.ts +0 -1
- package/internal/context/button-context.d.ts.map +1 -1
- package/internal/context/collection-label-context.d.ts +0 -1
- package/internal/context/collection-label-context.d.ts.map +1 -1
- package/internal/context/collection-preferences-metadata-context.d.ts +0 -1
- package/internal/context/collection-preferences-metadata-context.d.ts.map +1 -1
- package/internal/context/container-header.d.ts.map +1 -1
- package/internal/context/dynamic-overlap-context.d.ts +0 -1
- package/internal/context/dynamic-overlap-context.d.ts.map +1 -1
- package/internal/context/form-field-context.d.ts +0 -1
- package/internal/context/form-field-context.d.ts.map +1 -1
- package/internal/context/info-link-label-context.d.ts +0 -1
- package/internal/context/info-link-label-context.d.ts.map +1 -1
- package/internal/context/link-default-variant-context.d.ts +0 -1
- package/internal/context/link-default-variant-context.d.ts.map +1 -1
- package/internal/context/reset-contexts-for-modal.d.ts.map +1 -1
- package/internal/context/split-panel-context.js.map +1 -1
- package/internal/debounce.js.map +1 -1
- package/internal/environment.js +2 -2
- package/internal/environment.json +2 -2
- package/internal/events/index.js.map +1 -1
- package/internal/focus-tracker.js.map +1 -1
- package/internal/hooks/check-controlled/index.js.map +1 -1
- package/internal/hooks/container-queries/use-container-breakpoints.d.ts.map +1 -1
- package/internal/hooks/container-queries/use-height-measure.d.ts +0 -1
- package/internal/hooks/container-queries/use-height-measure.d.ts.map +1 -1
- package/internal/hooks/use-base-component/styles-check.d.ts +1 -1
- package/internal/hooks/use-base-component/styles-check.d.ts.map +1 -1
- package/internal/hooks/use-base-component/styles-check.js +34 -25
- package/internal/hooks/use-base-component/styles-check.js.map +1 -1
- package/internal/hooks/use-controllable/index.d.ts.map +1 -1
- package/internal/hooks/use-controllable/index.js.map +1 -1
- package/internal/hooks/use-date-cache/index.js.map +1 -1
- package/internal/hooks/use-debounce-callback/index.js.map +1 -1
- package/internal/hooks/use-dom-attribute/index.d.ts +1 -2
- package/internal/hooks/use-dom-attribute/index.d.ts.map +1 -1
- package/internal/hooks/use-dynamic-overlap/index.d.ts +0 -1
- package/internal/hooks/use-dynamic-overlap/index.d.ts.map +1 -1
- package/internal/hooks/use-dynamic-overlap/index.js.map +1 -1
- package/internal/hooks/use-effect-on-update/index.js.map +1 -1
- package/internal/hooks/use-focus-tracker.js.map +1 -1
- package/internal/hooks/use-hidden-description/index.d.ts +0 -1
- package/internal/hooks/use-hidden-description/index.d.ts.map +1 -1
- package/internal/hooks/use-intersection-observer/index.d.ts +2 -1
- package/internal/hooks/use-intersection-observer/index.d.ts.map +1 -1
- package/internal/hooks/use-intersection-observer/index.js.map +1 -1
- package/internal/hooks/use-list-focus-controller.d.ts +0 -1
- package/internal/hooks/use-list-focus-controller.d.ts.map +1 -1
- package/internal/hooks/use-list-focus-controller.js.map +1 -1
- package/internal/hooks/use-mobile/index.js.map +1 -1
- package/internal/hooks/use-modal-component-analytics/index.d.ts.map +1 -1
- package/internal/hooks/use-modal-component-analytics/index.js.map +1 -1
- package/internal/hooks/use-performance-marks/index.d.ts +0 -1
- package/internal/hooks/use-performance-marks/index.d.ts.map +1 -1
- package/internal/hooks/use-performance-marks/index.js.map +1 -1
- package/internal/hooks/use-performance-marks/is-in-viewport.js.map +1 -1
- package/internal/hooks/use-previous/index.d.ts.map +1 -1
- package/internal/hooks/use-scroll-sync/index.d.ts.map +1 -1
- package/internal/hooks/use-scroll-sync/index.js.map +1 -1
- package/internal/hooks/use-table-interaction-metrics/index.d.ts +0 -1
- package/internal/hooks/use-table-interaction-metrics/index.d.ts.map +1 -1
- package/internal/hooks/use-table-interaction-metrics/index.js.map +1 -1
- package/internal/hooks/use-virtual/index.js.map +1 -1
- package/internal/manifest.json +1 -1
- package/internal/plugins/api.d.ts.map +1 -1
- package/internal/plugins/api.js.map +1 -1
- package/internal/plugins/controllers/action-buttons.d.ts.map +1 -1
- package/internal/plugins/controllers/alert-flash-content.d.ts.map +1 -1
- package/internal/plugins/controllers/alert-flash-content.js.map +1 -1
- package/internal/plugins/controllers/app-layout-widget.d.ts.map +1 -1
- package/internal/plugins/controllers/app-layout-widget.js.map +1 -1
- package/internal/plugins/controllers/breadcrumbs.d.ts.map +1 -1
- package/internal/plugins/controllers/breadcrumbs.js.map +1 -1
- package/internal/plugins/controllers/drawers.d.ts.map +1 -1
- package/internal/plugins/controllers/drawers.js.map +1 -1
- package/internal/plugins/controllers/shared-react-contexts.d.ts.map +1 -1
- package/internal/plugins/controllers/shared-react-contexts.js.map +1 -1
- package/internal/plugins/helpers/use-discovered-action.d.ts.map +1 -1
- package/internal/plugins/helpers/use-discovered-action.js.map +1 -1
- package/internal/plugins/helpers/use-discovered-content.d.ts.map +1 -1
- package/internal/plugins/helpers/use-discovered-content.js.map +1 -1
- package/internal/plugins/helpers/use-global-breadcrumbs.js.map +1 -1
- package/internal/plugins/helpers/utils.js.map +1 -1
- package/internal/plugins/widget/core.js.map +1 -1
- package/internal/styles/motion/utils.d.ts.map +1 -1
- package/internal/utils/browser-scrollbar-size.js.map +1 -1
- package/internal/utils/calculate-once.js.map +1 -1
- package/internal/utils/check-safe-url.js.map +1 -1
- package/internal/utils/circle-index.js.map +1 -1
- package/internal/utils/create-category-color-scale.js.map +1 -1
- package/internal/utils/date-time/calendar.js.map +1 -1
- package/internal/utils/date-time/format-date-iso.js.map +1 -1
- package/internal/utils/date-time/format-date-localized.js.map +1 -1
- package/internal/utils/date-time/format-date-time-with-offset.js.map +1 -1
- package/internal/utils/date-time/format-date.js.map +1 -1
- package/internal/utils/date-time/format-time-offset.js.map +1 -1
- package/internal/utils/date-time/format-time.d.ts.map +1 -1
- package/internal/utils/date-time/join-date-time.js.map +1 -1
- package/internal/utils/date-time/parse-date.js.map +1 -1
- package/internal/utils/date-time/parse-timezone-offset.js.map +1 -1
- package/internal/utils/dom.js.map +1 -1
- package/internal/utils/external-props.d.ts.map +1 -1
- package/internal/utils/get-visual-theme.d.ts.map +1 -1
- package/internal/utils/get-visual-theme.js.map +1 -1
- package/internal/utils/handle-key.js.map +1 -1
- package/internal/utils/locale/merge-locales.js.map +1 -1
- package/internal/utils/locale/normalize-locale.js.map +1 -1
- package/internal/utils/locale/normalize-start-of-week.d.ts.map +1 -1
- package/internal/utils/node-belongs.js.map +1 -1
- package/internal/utils/promises.js.map +1 -1
- package/internal/utils/scrollable-containers.d.ts.map +1 -1
- package/internal/utils/scrollable-containers.js.map +1 -1
- package/internal/utils/strings/pad-left-zeros.js.map +1 -1
- package/internal/utils/style.js.map +1 -1
- package/internal/utils/throttle.js.map +1 -1
- package/internal/utils/use-container-width.js.map +1 -1
- package/internal/utils/with-native-attributes.d.ts.map +1 -1
- package/internal/utils/with-native-attributes.js.map +1 -1
- package/internal/widgets/index.d.ts.map +1 -1
- package/internal/widgets/index.js.map +1 -1
- package/internal/widgets/loader-mock.js.map +1 -1
- package/key-value-pairs/index.d.ts +0 -1
- package/key-value-pairs/index.d.ts.map +1 -1
- package/key-value-pairs/internal.js.map +1 -1
- package/line-chart/index.d.ts +0 -1
- package/line-chart/index.d.ts.map +1 -1
- package/link/internal-do-not-use-core.js.map +1 -1
- package/link/internal.d.ts +1 -1
- package/link/internal.js.map +1 -1
- package/link/style.js.map +1 -1
- package/list/index.d.ts +0 -1
- package/list/index.d.ts.map +1 -1
- package/list/internal.d.ts +0 -1
- package/list/internal.d.ts.map +1 -1
- package/list/internal.js.map +1 -1
- package/live-region/controller.js.map +1 -1
- package/live-region/index.d.ts +0 -1
- package/live-region/index.d.ts.map +1 -1
- package/live-region/interfaces.d.ts +0 -1
- package/live-region/interfaces.d.ts.map +1 -1
- package/live-region/internal.js.map +1 -1
- package/mixed-line-bar-chart/bar-series.d.ts +0 -1
- package/mixed-line-bar-chart/bar-series.d.ts.map +1 -1
- package/mixed-line-bar-chart/bar-series.js.map +1 -1
- package/mixed-line-bar-chart/chart-container.d.ts +0 -1
- package/mixed-line-bar-chart/chart-container.d.ts.map +1 -1
- package/mixed-line-bar-chart/chart-container.js.map +1 -1
- package/mixed-line-bar-chart/chart-popover.js.map +1 -1
- package/mixed-line-bar-chart/create-one-side-rounded-rect-path.js.map +1 -1
- package/mixed-line-bar-chart/data-series.d.ts +0 -1
- package/mixed-line-bar-chart/data-series.d.ts.map +1 -1
- package/mixed-line-bar-chart/data-series.js.map +1 -1
- package/mixed-line-bar-chart/domain.js.map +1 -1
- package/mixed-line-bar-chart/format-highlighted.js.map +1 -1
- package/mixed-line-bar-chart/hooks/use-mouse-hover.d.ts +0 -1
- package/mixed-line-bar-chart/hooks/use-mouse-hover.d.ts.map +1 -1
- package/mixed-line-bar-chart/hooks/use-mouse-hover.js.map +1 -1
- package/mixed-line-bar-chart/hooks/use-navigation.d.ts.map +1 -1
- package/mixed-line-bar-chart/hooks/use-navigation.js.map +1 -1
- package/mixed-line-bar-chart/hooks/use-popover.js.map +1 -1
- package/mixed-line-bar-chart/index.d.ts +0 -1
- package/mixed-line-bar-chart/index.d.ts.map +1 -1
- package/mixed-line-bar-chart/internal.d.ts +0 -1
- package/mixed-line-bar-chart/internal.d.ts.map +1 -1
- package/mixed-line-bar-chart/internal.js.map +1 -1
- package/mixed-line-bar-chart/line-series.d.ts +0 -1
- package/mixed-line-bar-chart/line-series.d.ts.map +1 -1
- package/mixed-line-bar-chart/line-series.js.map +1 -1
- package/mixed-line-bar-chart/make-scaled-bar-groups.js.map +1 -1
- package/mixed-line-bar-chart/make-scaled-series.js.map +1 -1
- package/mixed-line-bar-chart/utils.d.ts.map +1 -1
- package/mixed-line-bar-chart/utils.js.map +1 -1
- package/modal/body-scroll.js.map +1 -1
- package/modal/index.d.ts +0 -1
- package/modal/index.d.ts.map +1 -1
- package/modal/index.js.map +1 -1
- package/modal/interfaces.d.ts +3 -2
- package/modal/interfaces.d.ts.map +1 -1
- package/modal/interfaces.js.map +1 -1
- package/modal/internal.d.ts +0 -1
- package/modal/internal.d.ts.map +1 -1
- package/modal/internal.js.map +1 -1
- package/multiselect/embedded.d.ts +2 -2
- package/multiselect/embedded.d.ts.map +1 -1
- package/multiselect/internal.d.ts +1 -1
- package/multiselect/use-multiselect.d.ts +5 -5
- package/multiselect/use-multiselect.d.ts.map +1 -1
- package/multiselect/use-multiselect.js.map +1 -1
- package/navigable-group/interfaces.d.ts +0 -1
- package/navigable-group/interfaces.d.ts.map +1 -1
- package/navigable-group/internal.js.map +1 -1
- package/package.json +1 -1
- package/pagination/index.d.ts +0 -1
- package/pagination/index.d.ts.map +1 -1
- package/pagination/internal.d.ts +0 -1
- package/pagination/internal.d.ts.map +1 -1
- package/pagination/internal.js.map +1 -1
- package/pagination/utils.js.map +1 -1
- package/pie-chart/index.d.ts +0 -1
- package/pie-chart/index.d.ts.map +1 -1
- package/pie-chart/index.js.map +1 -1
- package/pie-chart/labels.d.ts.map +1 -1
- package/pie-chart/labels.js.map +1 -1
- package/pie-chart/pie-chart.d.ts +0 -1
- package/pie-chart/pie-chart.d.ts.map +1 -1
- package/pie-chart/pie-chart.js.map +1 -1
- package/pie-chart/responsive-text.js.map +1 -1
- package/pie-chart/segments.js.map +1 -1
- package/pie-chart/utils.d.ts +1 -1
- package/pie-chart/utils.d.ts.map +1 -1
- package/pie-chart/utils.js.map +1 -1
- package/popover/arrow.d.ts.map +1 -1
- package/popover/body.js.map +1 -1
- package/popover/conditional-live-region.d.ts.map +1 -1
- package/popover/conditional-live-region.js.map +1 -1
- package/popover/container.js.map +1 -1
- package/popover/index.js.map +1 -1
- package/popover/interfaces.d.ts +0 -1
- package/popover/interfaces.d.ts.map +1 -1
- package/popover/internal.js.map +1 -1
- package/popover/use-popover-position.js.map +1 -1
- package/popover/use-position-observer.js.map +1 -1
- package/popover/utils/positions.js.map +1 -1
- package/progress-bar/index.d.ts +0 -1
- package/progress-bar/index.d.ts.map +1 -1
- package/progress-bar/index.js.map +1 -1
- package/progress-bar/interfaces.d.ts +0 -1
- package/progress-bar/interfaces.d.ts.map +1 -1
- package/progress-bar/internal.d.ts.map +1 -1
- package/progress-bar/internal.js.map +1 -1
- package/prompt-input/interfaces.d.ts +0 -1
- package/prompt-input/interfaces.d.ts.map +1 -1
- package/prompt-input/internal.js.map +1 -1
- package/property-filter/controller.d.ts.map +1 -1
- package/property-filter/controller.js.map +1 -1
- package/property-filter/filter-options.js.map +1 -1
- package/property-filter/i18n-utils.js.map +1 -1
- package/property-filter/index.js.map +1 -1
- package/property-filter/internal.d.ts +1 -1
- package/property-filter/internal.js.map +1 -1
- package/property-filter/property-editor.d.ts +0 -1
- package/property-filter/property-editor.d.ts.map +1 -1
- package/property-filter/property-filter-autosuggest.js.map +1 -1
- package/property-filter/token-editor-inputs.d.ts +0 -1
- package/property-filter/token-editor-inputs.d.ts.map +1 -1
- package/property-filter/token-editor-inputs.js.map +1 -1
- package/property-filter/token-editor.d.ts +0 -1
- package/property-filter/token-editor.d.ts.map +1 -1
- package/property-filter/token-editor.js.map +1 -1
- package/property-filter/token.d.ts +0 -1
- package/property-filter/token.d.ts.map +1 -1
- package/property-filter/token.js.map +1 -1
- package/property-filter/use-load-items.d.ts.map +1 -1
- package/property-filter/use-load-items.js.map +1 -1
- package/property-filter/utils.js.map +1 -1
- package/radio-group/radio-button.js.map +1 -1
- package/radio-group/style.js.map +1 -1
- package/s3-resource-selector/index.js.map +1 -1
- package/s3-resource-selector/s3-in-context/index.js.map +1 -1
- package/s3-resource-selector/s3-in-context/use-versions-fetch.js.map +1 -1
- package/s3-resource-selector/s3-in-context/validation.js.map +1 -1
- package/s3-resource-selector/s3-modal/basic-table.js.map +1 -1
- package/s3-resource-selector/s3-modal/column-formats.js.map +1 -1
- package/s3-resource-selector/s3-modal/index.js.map +1 -1
- package/s3-resource-selector/s3-modal/table-utils.d.ts.map +1 -1
- package/s3-resource-selector/s3-modal/table-utils.js.map +1 -1
- package/s3-resource-selector/utils.js.map +1 -1
- package/segmented-control/index.d.ts +0 -1
- package/segmented-control/index.d.ts.map +1 -1
- package/segmented-control/internal-segmented-control.d.ts +0 -1
- package/segmented-control/internal-segmented-control.d.ts.map +1 -1
- package/segmented-control/internal-segmented-control.js.map +1 -1
- package/segmented-control/internal.d.ts +0 -1
- package/segmented-control/internal.d.ts.map +1 -1
- package/select/internal.js.map +1 -1
- package/select/parts/filter.d.ts +1 -1
- package/select/parts/filter.js.map +1 -1
- package/select/parts/plain-list.js.map +1 -1
- package/select/parts/trigger.js.map +1 -1
- package/select/parts/virtual-list.js.map +1 -1
- package/select/utils/check-option-value-field.js.map +1 -1
- package/select/utils/connect-options.d.ts.map +1 -1
- package/select/utils/connect-options.js.map +1 -1
- package/select/utils/get-item-props.d.ts.map +1 -1
- package/select/utils/render-options.d.ts.map +1 -1
- package/select/utils/render-options.js.map +1 -1
- package/select/utils/scroll-to-index.js.map +1 -1
- package/select/utils/use-announcement.js.map +1 -1
- package/select/utils/use-load-items.d.ts.map +1 -1
- package/select/utils/use-load-items.js.map +1 -1
- package/select/utils/use-native-search.d.ts.map +1 -1
- package/select/utils/use-native-search.js.map +1 -1
- package/select/utils/use-select.d.ts +1 -1
- package/select/utils/use-select.d.ts.map +1 -1
- package/select/utils/use-select.js.map +1 -1
- package/side-navigation/implementation.d.ts +0 -1
- package/side-navigation/implementation.d.ts.map +1 -1
- package/side-navigation/implementation.js.map +1 -1
- package/side-navigation/index.d.ts +0 -1
- package/side-navigation/index.d.ts.map +1 -1
- package/side-navigation/parts.js.map +1 -1
- package/side-navigation/util.js.map +1 -1
- package/slider/index.d.ts +0 -1
- package/slider/index.d.ts.map +1 -1
- package/slider/internal.d.ts +0 -1
- package/slider/internal.d.ts.map +1 -1
- package/slider/internal.js.map +1 -1
- package/slider/slider-labels.d.ts +0 -1
- package/slider/slider-labels.d.ts.map +1 -1
- package/slider/slider-labels.js.map +1 -1
- package/slider/tick-marks.d.ts +0 -1
- package/slider/tick-marks.d.ts.map +1 -1
- package/slider/tick-marks.js.map +1 -1
- package/slider/utils.d.ts +3 -3
- package/slider/utils.d.ts.map +1 -1
- package/slider/utils.js.map +1 -1
- package/space-between/index.d.ts +0 -1
- package/space-between/index.d.ts.map +1 -1
- package/space-between/interfaces.d.ts +0 -1
- package/space-between/interfaces.d.ts.map +1 -1
- package/spinner/index.d.ts +0 -1
- package/spinner/index.d.ts.map +1 -1
- package/spinner/interfaces.d.ts +0 -1
- package/spinner/interfaces.d.ts.map +1 -1
- package/spinner/internal.d.ts +0 -1
- package/spinner/internal.d.ts.map +1 -1
- package/split-panel/icons/bottom-icon-refresh.d.ts +0 -1
- package/split-panel/icons/bottom-icon-refresh.d.ts.map +1 -1
- package/split-panel/icons/bottom-icon.d.ts +0 -1
- package/split-panel/icons/bottom-icon.d.ts.map +1 -1
- package/split-panel/icons/side-position-refresh.d.ts +0 -1
- package/split-panel/icons/side-position-refresh.d.ts.map +1 -1
- package/split-panel/icons/side-position.d.ts +0 -1
- package/split-panel/icons/side-position.d.ts.map +1 -1
- package/split-panel/implementation.d.ts +0 -1
- package/split-panel/implementation.d.ts.map +1 -1
- package/split-panel/implementation.js.map +1 -1
- package/split-panel/index.d.ts +0 -1
- package/split-panel/index.d.ts.map +1 -1
- package/split-panel/preferences-modal.d.ts +0 -1
- package/split-panel/preferences-modal.d.ts.map +1 -1
- package/split-panel/utils/size-utils.js.map +1 -1
- package/status-indicator/index.d.ts +0 -1
- package/status-indicator/index.d.ts.map +1 -1
- package/status-indicator/interfaces.d.ts +0 -1
- package/status-indicator/interfaces.d.ts.map +1 -1
- package/status-indicator/internal.d.ts +0 -1
- package/status-indicator/internal.d.ts.map +1 -1
- package/steps/index.d.ts +0 -1
- package/steps/index.d.ts.map +1 -1
- package/steps/interfaces.d.ts +0 -1
- package/steps/interfaces.d.ts.map +1 -1
- package/steps/internal.d.ts +0 -1
- package/steps/internal.d.ts.map +1 -1
- package/table/body-cell/click-away.d.ts +0 -1
- package/table/body-cell/click-away.d.ts.map +1 -1
- package/table/body-cell/click-away.js.map +1 -1
- package/table/body-cell/disabled-inline-editor.d.ts +0 -1
- package/table/body-cell/disabled-inline-editor.d.ts.map +1 -1
- package/table/body-cell/disabled-inline-editor.js.map +1 -1
- package/table/body-cell/index.d.ts +0 -1
- package/table/body-cell/index.d.ts.map +1 -1
- package/table/body-cell/index.js.map +1 -1
- package/table/body-cell/inline-editor.d.ts +0 -1
- package/table/body-cell/inline-editor.d.ts.map +1 -1
- package/table/body-cell/inline-editor.js +1 -1
- package/table/body-cell/inline-editor.js.map +1 -1
- package/table/column-widths-utils.js.map +1 -1
- package/table/expandable-rows/expandable-rows-utils.d.ts.map +1 -1
- package/table/expandable-rows/expandable-rows-utils.js.map +1 -1
- package/table/header-cell/index.js.map +1 -1
- package/table/header-cell/utils.d.ts +1 -1
- package/table/header-cell/utils.d.ts.map +1 -1
- package/table/header-cell/utils.js.map +1 -1
- package/table/index.d.ts.map +1 -1
- package/table/index.js.map +1 -1
- package/table/internal.d.ts.map +1 -1
- package/table/internal.js.map +1 -1
- package/table/no-data-cell.js.map +1 -1
- package/table/progressive-loading/items-loader.js.map +1 -1
- package/table/progressive-loading/loader-cell.d.ts +0 -1
- package/table/progressive-loading/loader-cell.d.ts.map +1 -1
- package/table/progressive-loading/progressive-loading-utils.js.map +1 -1
- package/table/resizer/index.d.ts +0 -1
- package/table/resizer/index.d.ts.map +1 -1
- package/table/resizer/index.js.map +1 -1
- package/table/resizer/resizer-lookup.js.map +1 -1
- package/table/selection/selection-cell.d.ts +0 -1
- package/table/selection/selection-cell.d.ts.map +1 -1
- package/table/selection/selection-control.js.map +1 -1
- package/table/selection/use-selection-focus-move.js.map +1 -1
- package/table/selection/use-selection.js.map +1 -1
- package/table/selection/utils.d.ts.map +1 -1
- package/table/sticky-columns/use-sticky-columns.js.map +1 -1
- package/table/sticky-columns/utils.js.map +1 -1
- package/table/sticky-scrollbar/use-sticky-scrollbar.d.ts.map +1 -1
- package/table/sticky-scrollbar/use-sticky-scrollbar.js.map +1 -1
- package/table/sticky-scrolling.d.ts +0 -1
- package/table/sticky-scrolling.d.ts.map +1 -1
- package/table/sticky-scrolling.js.map +1 -1
- package/table/table-role/grid-navigation.d.ts +0 -1
- package/table/table-role/grid-navigation.d.ts.map +1 -1
- package/table/table-role/grid-navigation.js.map +1 -1
- package/table/table-role/interfaces.d.ts +0 -1
- package/table/table-role/interfaces.d.ts.map +1 -1
- package/table/table-role/table-role-helper.d.ts +0 -1
- package/table/table-role/table-role-helper.d.ts.map +1 -1
- package/table/table-role/table-role-helper.js.map +1 -1
- package/table/table-role/utils.d.ts +1 -1
- package/table/table-role/utils.d.ts.map +1 -1
- package/table/table-role/utils.js.map +1 -1
- package/table/tools-header.js.map +1 -1
- package/table/use-cell-editing.js.map +1 -1
- package/table/use-column-widths.js.map +1 -1
- package/table/use-prevent-sticky-click-scroll.d.ts +0 -1
- package/table/use-prevent-sticky-click-scroll.d.ts.map +1 -1
- package/table/use-prevent-sticky-click-scroll.js.map +1 -1
- package/table/use-row-events.d.ts.map +1 -1
- package/table/use-row-events.js.map +1 -1
- package/table/use-sticky-header.d.ts.map +1 -1
- package/table/use-sticky-header.js.map +1 -1
- package/table/use-table-focus-navigation.js.map +1 -1
- package/table/utils.d.ts +1 -1
- package/table/utils.d.ts.map +1 -1
- package/table/utils.js.map +1 -1
- package/tabs/index.d.ts +0 -1
- package/tabs/index.d.ts.map +1 -1
- package/tabs/index.js.map +1 -1
- package/tabs/interfaces.d.ts +0 -1
- package/tabs/interfaces.d.ts.map +1 -1
- package/tabs/scroll-utils.d.ts +1 -1
- package/tabs/scroll-utils.d.ts.map +1 -1
- package/tabs/scroll-utils.js.map +1 -1
- package/tabs/smooth-scroll.d.ts.map +1 -1
- package/tabs/smooth-scroll.js.map +1 -1
- package/tabs/tab-header-bar.d.ts +0 -1
- package/tabs/tab-header-bar.d.ts.map +1 -1
- package/tabs/tab-header-bar.js.map +1 -1
- package/tag-editor/index.js.map +1 -1
- package/tag-editor/internal.js.map +1 -1
- package/tag-editor/utils.js.map +1 -1
- package/tag-editor/validation.d.ts.map +1 -1
- package/tag-editor/validation.js.map +1 -1
- package/test-utils/dom/alert/index.js +1 -1
- package/test-utils/dom/alert/index.js.map +1 -1
- package/test-utils/dom/anchor-navigation/index.js +1 -1
- package/test-utils/dom/anchor-navigation/index.js.map +1 -1
- package/test-utils/dom/annotation/index.js +1 -1
- package/test-utils/dom/annotation/index.js.map +1 -1
- package/test-utils/dom/app-layout/index.js +1 -1
- package/test-utils/dom/app-layout/index.js.map +1 -1
- package/test-utils/dom/app-layout-toolbar/index.js +1 -1
- package/test-utils/dom/app-layout-toolbar/index.js.map +1 -1
- package/test-utils/dom/area-chart/index.js +1 -1
- package/test-utils/dom/area-chart/index.js.map +1 -1
- package/test-utils/dom/attribute-editor/index.js +1 -1
- package/test-utils/dom/attribute-editor/index.js.map +1 -1
- package/test-utils/dom/autosuggest/index.js +1 -1
- package/test-utils/dom/autosuggest/index.js.map +1 -1
- package/test-utils/dom/badge/index.js +1 -1
- package/test-utils/dom/badge/index.js.map +1 -1
- package/test-utils/dom/bar-chart/index.js +1 -1
- package/test-utils/dom/bar-chart/index.js.map +1 -1
- package/test-utils/dom/box/index.js +1 -1
- package/test-utils/dom/box/index.js.map +1 -1
- package/test-utils/dom/breadcrumb-group/index.js +1 -1
- package/test-utils/dom/breadcrumb-group/index.js.map +1 -1
- package/test-utils/dom/button/index.js +1 -1
- package/test-utils/dom/button/index.js.map +1 -1
- package/test-utils/dom/button-dropdown/index.js +1 -1
- package/test-utils/dom/button-dropdown/index.js.map +1 -1
- package/test-utils/dom/button-group/index.js +1 -1
- package/test-utils/dom/button-group/index.js.map +1 -1
- package/test-utils/dom/calendar/index.js +1 -1
- package/test-utils/dom/calendar/index.js.map +1 -1
- package/test-utils/dom/cards/index.js +1 -1
- package/test-utils/dom/cards/index.js.map +1 -1
- package/test-utils/dom/checkbox/index.js +1 -1
- package/test-utils/dom/checkbox/index.js.map +1 -1
- package/test-utils/dom/code-editor/index.js +1 -1
- package/test-utils/dom/code-editor/index.js.map +1 -1
- package/test-utils/dom/collection-preferences/content-display-preference.js +1 -1
- package/test-utils/dom/collection-preferences/content-display-preference.js.map +1 -1
- package/test-utils/dom/collection-preferences/index.js +1 -1
- package/test-utils/dom/collection-preferences/index.js.map +1 -1
- package/test-utils/dom/collection-preferences/page-size-preference.js +1 -1
- package/test-utils/dom/collection-preferences/page-size-preference.js.map +1 -1
- package/test-utils/dom/collection-preferences/sticky-columns-preference.js +1 -1
- package/test-utils/dom/collection-preferences/sticky-columns-preference.js.map +1 -1
- package/test-utils/dom/collection-preferences/visible-content-preference.js +1 -1
- package/test-utils/dom/collection-preferences/visible-content-preference.js.map +1 -1
- package/test-utils/dom/column-layout/index.js +1 -1
- package/test-utils/dom/column-layout/index.js.map +1 -1
- package/test-utils/dom/container/index.js +1 -1
- package/test-utils/dom/container/index.js.map +1 -1
- package/test-utils/dom/content-layout/index.js +1 -1
- package/test-utils/dom/content-layout/index.js.map +1 -1
- package/test-utils/dom/copy-to-clipboard/index.js +1 -1
- package/test-utils/dom/copy-to-clipboard/index.js.map +1 -1
- package/test-utils/dom/date-input/index.js +1 -1
- package/test-utils/dom/date-input/index.js.map +1 -1
- package/test-utils/dom/date-picker/index.js +1 -1
- package/test-utils/dom/date-picker/index.js.map +1 -1
- package/test-utils/dom/date-range-picker/index.js +1 -1
- package/test-utils/dom/date-range-picker/index.js.map +1 -1
- package/test-utils/dom/drawer/index.js +1 -1
- package/test-utils/dom/drawer/index.js.map +1 -1
- package/test-utils/dom/expandable-section/index.js +1 -1
- package/test-utils/dom/expandable-section/index.js.map +1 -1
- package/test-utils/dom/file-dropzone/index.js +1 -1
- package/test-utils/dom/file-dropzone/index.js.map +1 -1
- package/test-utils/dom/file-input/index.js +1 -1
- package/test-utils/dom/file-input/index.js.map +1 -1
- package/test-utils/dom/file-token-group/index.js +1 -1
- package/test-utils/dom/file-token-group/index.js.map +1 -1
- package/test-utils/dom/file-upload/index.js +1 -1
- package/test-utils/dom/file-upload/index.js.map +1 -1
- package/test-utils/dom/flashbar/flash.js +1 -1
- package/test-utils/dom/flashbar/flash.js.map +1 -1
- package/test-utils/dom/flashbar/index.js +1 -1
- package/test-utils/dom/flashbar/index.js.map +1 -1
- package/test-utils/dom/form/index.js +1 -1
- package/test-utils/dom/form/index.js.map +1 -1
- package/test-utils/dom/form-field/index.js +1 -1
- package/test-utils/dom/form-field/index.js.map +1 -1
- package/test-utils/dom/grid/index.js +1 -1
- package/test-utils/dom/grid/index.js.map +1 -1
- package/test-utils/dom/header/index.js +1 -1
- package/test-utils/dom/header/index.js.map +1 -1
- package/test-utils/dom/help-panel/index.js +1 -1
- package/test-utils/dom/help-panel/index.js.map +1 -1
- package/test-utils/dom/hotspot/index.js +1 -1
- package/test-utils/dom/hotspot/index.js.map +1 -1
- package/test-utils/dom/icon/index.js +1 -1
- package/test-utils/dom/icon/index.js.map +1 -1
- package/test-utils/dom/index.js +1 -1
- package/test-utils/dom/index.js.map +1 -1
- package/test-utils/dom/input/base-input.js +1 -1
- package/test-utils/dom/input/base-input.js.map +1 -1
- package/test-utils/dom/input/index.js +1 -1
- package/test-utils/dom/input/index.js.map +1 -1
- package/test-utils/dom/internal/abstract-switch.js +1 -1
- package/test-utils/dom/internal/abstract-switch.js.map +1 -1
- package/test-utils/dom/internal/autosuggest-input.js +1 -1
- package/test-utils/dom/internal/autosuggest-input.js.map +1 -1
- package/test-utils/dom/internal/chart-filter.js +1 -1
- package/test-utils/dom/internal/chart-filter.js.map +1 -1
- package/test-utils/dom/internal/chart-legend.js +1 -1
- package/test-utils/dom/internal/chart-legend.js.map +1 -1
- package/test-utils/dom/internal/chart-popover.js +1 -1
- package/test-utils/dom/internal/chart-popover.js.map +1 -1
- package/test-utils/dom/internal/chart-tooltip.js +1 -1
- package/test-utils/dom/internal/chart-tooltip.js.map +1 -1
- package/test-utils/dom/internal/drag-handle.js +1 -1
- package/test-utils/dom/internal/drag-handle.js.map +1 -1
- package/test-utils/dom/internal/dropdown-host.js +1 -1
- package/test-utils/dom/internal/dropdown-host.js.map +1 -1
- package/test-utils/dom/internal/dropdown.js +1 -1
- package/test-utils/dom/internal/dropdown.js.map +1 -1
- package/test-utils/dom/internal/option.js +1 -1
- package/test-utils/dom/internal/option.js.map +1 -1
- package/test-utils/dom/internal/options-list.js +1 -1
- package/test-utils/dom/internal/options-list.js.map +1 -1
- package/test-utils/dom/internal/structured-item.js +1 -1
- package/test-utils/dom/internal/structured-item.js.map +1 -1
- package/test-utils/dom/internal/tooltip.js +1 -1
- package/test-utils/dom/internal/tooltip.js.map +1 -1
- package/test-utils/dom/key-value-pairs/index.js +1 -1
- package/test-utils/dom/key-value-pairs/index.js.map +1 -1
- package/test-utils/dom/line-chart/index.js +1 -1
- package/test-utils/dom/line-chart/index.js.map +1 -1
- package/test-utils/dom/link/index.js +1 -1
- package/test-utils/dom/link/index.js.map +1 -1
- package/test-utils/dom/list/index.js +1 -1
- package/test-utils/dom/list/index.js.map +1 -1
- package/test-utils/dom/live-region/index.js +1 -1
- package/test-utils/dom/live-region/index.js.map +1 -1
- package/test-utils/dom/mixed-line-bar-chart/index.js +1 -1
- package/test-utils/dom/mixed-line-bar-chart/index.js.map +1 -1
- package/test-utils/dom/modal/index.js +1 -1
- package/test-utils/dom/modal/index.js.map +1 -1
- package/test-utils/dom/multiselect/index.js +1 -1
- package/test-utils/dom/multiselect/index.js.map +1 -1
- package/test-utils/dom/navigable-group/index.js +1 -1
- package/test-utils/dom/navigable-group/index.js.map +1 -1
- package/test-utils/dom/pagination/index.js +1 -1
- package/test-utils/dom/pagination/index.js.map +1 -1
- package/test-utils/dom/pie-chart/index.js +1 -1
- package/test-utils/dom/pie-chart/index.js.map +1 -1
- package/test-utils/dom/popover/index.js +1 -1
- package/test-utils/dom/popover/index.js.map +1 -1
- package/test-utils/dom/progress-bar/index.js +1 -1
- package/test-utils/dom/progress-bar/index.js.map +1 -1
- package/test-utils/dom/prompt-input/index.js +1 -1
- package/test-utils/dom/prompt-input/index.js.map +1 -1
- package/test-utils/dom/property-filter/index.js +1 -1
- package/test-utils/dom/property-filter/index.js.map +1 -1
- package/test-utils/dom/radio-group/index.js +1 -1
- package/test-utils/dom/radio-group/index.js.map +1 -1
- package/test-utils/dom/s3-resource-selector/index.js +1 -1
- package/test-utils/dom/s3-resource-selector/index.js.map +1 -1
- package/test-utils/dom/segmented-control/index.js +1 -1
- package/test-utils/dom/segmented-control/index.js.map +1 -1
- package/test-utils/dom/select/index.js +1 -1
- package/test-utils/dom/select/index.js.map +1 -1
- package/test-utils/dom/side-navigation/index.js +1 -1
- package/test-utils/dom/side-navigation/index.js.map +1 -1
- package/test-utils/dom/slider/index.js +1 -1
- package/test-utils/dom/slider/index.js.map +1 -1
- package/test-utils/dom/space-between/index.js +1 -1
- package/test-utils/dom/space-between/index.js.map +1 -1
- package/test-utils/dom/spinner/index.js +1 -1
- package/test-utils/dom/spinner/index.js.map +1 -1
- package/test-utils/dom/split-panel/index.js +1 -1
- package/test-utils/dom/split-panel/index.js.map +1 -1
- package/test-utils/dom/status-indicator/index.js +1 -1
- package/test-utils/dom/status-indicator/index.js.map +1 -1
- package/test-utils/dom/steps/index.js +1 -1
- package/test-utils/dom/steps/index.js.map +1 -1
- package/test-utils/dom/table/index.js +1 -1
- package/test-utils/dom/table/index.js.map +1 -1
- package/test-utils/dom/tabs/index.js +1 -1
- package/test-utils/dom/tabs/index.js.map +1 -1
- package/test-utils/dom/tag-editor/index.js +1 -1
- package/test-utils/dom/tag-editor/index.js.map +1 -1
- package/test-utils/dom/text-content/index.js +1 -1
- package/test-utils/dom/text-content/index.js.map +1 -1
- package/test-utils/dom/text-filter/index.js +1 -1
- package/test-utils/dom/text-filter/index.js.map +1 -1
- package/test-utils/dom/textarea/index.js +1 -1
- package/test-utils/dom/textarea/index.js.map +1 -1
- package/test-utils/dom/tiles/index.js +1 -1
- package/test-utils/dom/tiles/index.js.map +1 -1
- package/test-utils/dom/tiles/tile.js +1 -1
- package/test-utils/dom/tiles/tile.js.map +1 -1
- package/test-utils/dom/time-input/index.js +1 -1
- package/test-utils/dom/time-input/index.js.map +1 -1
- package/test-utils/dom/toggle/index.js +1 -1
- package/test-utils/dom/toggle/index.js.map +1 -1
- package/test-utils/dom/toggle-button/index.js +1 -1
- package/test-utils/dom/toggle-button/index.js.map +1 -1
- package/test-utils/dom/token/index.js +1 -1
- package/test-utils/dom/token/index.js.map +1 -1
- package/test-utils/dom/token-group/index.js +1 -1
- package/test-utils/dom/token-group/index.js.map +1 -1
- package/test-utils/dom/top-navigation/index.js +1 -1
- package/test-utils/dom/top-navigation/index.js.map +1 -1
- package/test-utils/dom/tree-view/index.js +1 -1
- package/test-utils/dom/tree-view/index.js.map +1 -1
- package/test-utils/dom/tutorial-panel/index.js +1 -1
- package/test-utils/dom/tutorial-panel/index.js.map +1 -1
- package/test-utils/dom/tutorial-panel/tutorial.js +1 -1
- package/test-utils/dom/tutorial-panel/tutorial.js.map +1 -1
- package/test-utils/dom/wizard/index.js +1 -1
- package/test-utils/dom/wizard/index.js.map +1 -1
- package/test-utils/selectors/alert/index.js +1 -1
- package/test-utils/selectors/alert/index.js.map +1 -1
- package/test-utils/selectors/anchor-navigation/index.js +1 -1
- package/test-utils/selectors/anchor-navigation/index.js.map +1 -1
- package/test-utils/selectors/annotation/index.js +1 -1
- package/test-utils/selectors/annotation/index.js.map +1 -1
- package/test-utils/selectors/app-layout/index.js +1 -1
- package/test-utils/selectors/app-layout/index.js.map +1 -1
- package/test-utils/selectors/app-layout-toolbar/index.js +1 -1
- package/test-utils/selectors/app-layout-toolbar/index.js.map +1 -1
- package/test-utils/selectors/area-chart/index.js +1 -1
- package/test-utils/selectors/area-chart/index.js.map +1 -1
- package/test-utils/selectors/attribute-editor/index.js +1 -1
- package/test-utils/selectors/attribute-editor/index.js.map +1 -1
- package/test-utils/selectors/autosuggest/index.js +1 -1
- package/test-utils/selectors/autosuggest/index.js.map +1 -1
- package/test-utils/selectors/badge/index.js +1 -1
- package/test-utils/selectors/badge/index.js.map +1 -1
- package/test-utils/selectors/bar-chart/index.js +1 -1
- package/test-utils/selectors/bar-chart/index.js.map +1 -1
- package/test-utils/selectors/box/index.js +1 -1
- package/test-utils/selectors/box/index.js.map +1 -1
- package/test-utils/selectors/breadcrumb-group/index.js +1 -1
- package/test-utils/selectors/breadcrumb-group/index.js.map +1 -1
- package/test-utils/selectors/button/index.js +1 -1
- package/test-utils/selectors/button/index.js.map +1 -1
- package/test-utils/selectors/button-dropdown/index.js +1 -1
- package/test-utils/selectors/button-dropdown/index.js.map +1 -1
- package/test-utils/selectors/button-group/index.js +1 -1
- package/test-utils/selectors/button-group/index.js.map +1 -1
- package/test-utils/selectors/calendar/index.js +1 -1
- package/test-utils/selectors/calendar/index.js.map +1 -1
- package/test-utils/selectors/cards/index.js +1 -1
- package/test-utils/selectors/cards/index.js.map +1 -1
- package/test-utils/selectors/checkbox/index.js +1 -1
- package/test-utils/selectors/checkbox/index.js.map +1 -1
- package/test-utils/selectors/code-editor/index.js +1 -1
- package/test-utils/selectors/code-editor/index.js.map +1 -1
- package/test-utils/selectors/collection-preferences/content-display-preference.js +1 -1
- package/test-utils/selectors/collection-preferences/content-display-preference.js.map +1 -1
- package/test-utils/selectors/collection-preferences/index.js +1 -1
- package/test-utils/selectors/collection-preferences/index.js.map +1 -1
- package/test-utils/selectors/collection-preferences/page-size-preference.js +1 -1
- package/test-utils/selectors/collection-preferences/page-size-preference.js.map +1 -1
- package/test-utils/selectors/collection-preferences/sticky-columns-preference.js +1 -1
- package/test-utils/selectors/collection-preferences/sticky-columns-preference.js.map +1 -1
- package/test-utils/selectors/collection-preferences/visible-content-preference.js +1 -1
- package/test-utils/selectors/collection-preferences/visible-content-preference.js.map +1 -1
- package/test-utils/selectors/column-layout/index.js +1 -1
- package/test-utils/selectors/column-layout/index.js.map +1 -1
- package/test-utils/selectors/container/index.js +1 -1
- package/test-utils/selectors/container/index.js.map +1 -1
- package/test-utils/selectors/content-layout/index.js +1 -1
- package/test-utils/selectors/content-layout/index.js.map +1 -1
- package/test-utils/selectors/copy-to-clipboard/index.js +1 -1
- package/test-utils/selectors/copy-to-clipboard/index.js.map +1 -1
- package/test-utils/selectors/date-input/index.js +1 -1
- package/test-utils/selectors/date-input/index.js.map +1 -1
- package/test-utils/selectors/date-picker/index.js +1 -1
- package/test-utils/selectors/date-picker/index.js.map +1 -1
- package/test-utils/selectors/date-range-picker/index.js +1 -1
- package/test-utils/selectors/date-range-picker/index.js.map +1 -1
- package/test-utils/selectors/drawer/index.js +1 -1
- package/test-utils/selectors/drawer/index.js.map +1 -1
- package/test-utils/selectors/expandable-section/index.js +1 -1
- package/test-utils/selectors/expandable-section/index.js.map +1 -1
- package/test-utils/selectors/file-dropzone/index.js +1 -1
- package/test-utils/selectors/file-dropzone/index.js.map +1 -1
- package/test-utils/selectors/file-input/index.js +1 -1
- package/test-utils/selectors/file-input/index.js.map +1 -1
- package/test-utils/selectors/file-token-group/index.js +1 -1
- package/test-utils/selectors/file-token-group/index.js.map +1 -1
- package/test-utils/selectors/file-upload/index.js +1 -1
- package/test-utils/selectors/file-upload/index.js.map +1 -1
- package/test-utils/selectors/flashbar/flash.js +1 -1
- package/test-utils/selectors/flashbar/flash.js.map +1 -1
- package/test-utils/selectors/flashbar/index.js +1 -1
- package/test-utils/selectors/flashbar/index.js.map +1 -1
- package/test-utils/selectors/form/index.js +1 -1
- package/test-utils/selectors/form/index.js.map +1 -1
- package/test-utils/selectors/form-field/index.js +1 -1
- package/test-utils/selectors/form-field/index.js.map +1 -1
- package/test-utils/selectors/grid/index.js +1 -1
- package/test-utils/selectors/grid/index.js.map +1 -1
- package/test-utils/selectors/header/index.js +1 -1
- package/test-utils/selectors/header/index.js.map +1 -1
- package/test-utils/selectors/help-panel/index.js +1 -1
- package/test-utils/selectors/help-panel/index.js.map +1 -1
- package/test-utils/selectors/hotspot/index.js +1 -1
- package/test-utils/selectors/hotspot/index.js.map +1 -1
- package/test-utils/selectors/icon/index.js +1 -1
- package/test-utils/selectors/icon/index.js.map +1 -1
- package/test-utils/selectors/index.js +1 -1
- package/test-utils/selectors/index.js.map +1 -1
- package/test-utils/selectors/input/index.js +1 -1
- package/test-utils/selectors/input/index.js.map +1 -1
- package/test-utils/selectors/internal/abstract-switch.js +1 -1
- package/test-utils/selectors/internal/abstract-switch.js.map +1 -1
- package/test-utils/selectors/internal/autosuggest-input.js +1 -1
- package/test-utils/selectors/internal/autosuggest-input.js.map +1 -1
- package/test-utils/selectors/internal/chart-filter.js +1 -1
- package/test-utils/selectors/internal/chart-filter.js.map +1 -1
- package/test-utils/selectors/internal/chart-legend.js +1 -1
- package/test-utils/selectors/internal/chart-legend.js.map +1 -1
- package/test-utils/selectors/internal/chart-popover.js +1 -1
- package/test-utils/selectors/internal/chart-popover.js.map +1 -1
- package/test-utils/selectors/internal/chart-tooltip.js +1 -1
- package/test-utils/selectors/internal/chart-tooltip.js.map +1 -1
- package/test-utils/selectors/internal/drag-handle.js +1 -1
- package/test-utils/selectors/internal/drag-handle.js.map +1 -1
- package/test-utils/selectors/internal/dropdown-host.js.map +1 -1
- package/test-utils/selectors/internal/dropdown.js +1 -1
- package/test-utils/selectors/internal/dropdown.js.map +1 -1
- package/test-utils/selectors/internal/option.js +1 -1
- package/test-utils/selectors/internal/option.js.map +1 -1
- package/test-utils/selectors/internal/options-list.js +1 -1
- package/test-utils/selectors/internal/options-list.js.map +1 -1
- package/test-utils/selectors/internal/structured-item.js +1 -1
- package/test-utils/selectors/internal/structured-item.js.map +1 -1
- package/test-utils/selectors/internal/tooltip.js +1 -1
- package/test-utils/selectors/internal/tooltip.js.map +1 -1
- package/test-utils/selectors/key-value-pairs/index.js +1 -1
- package/test-utils/selectors/key-value-pairs/index.js.map +1 -1
- package/test-utils/selectors/line-chart/index.js +1 -1
- package/test-utils/selectors/line-chart/index.js.map +1 -1
- package/test-utils/selectors/link/index.js +1 -1
- package/test-utils/selectors/link/index.js.map +1 -1
- package/test-utils/selectors/list/index.js +1 -1
- package/test-utils/selectors/list/index.js.map +1 -1
- package/test-utils/selectors/live-region/index.js +1 -1
- package/test-utils/selectors/live-region/index.js.map +1 -1
- package/test-utils/selectors/mixed-line-bar-chart/index.js +1 -1
- package/test-utils/selectors/mixed-line-bar-chart/index.js.map +1 -1
- package/test-utils/selectors/modal/index.js +1 -1
- package/test-utils/selectors/modal/index.js.map +1 -1
- package/test-utils/selectors/multiselect/index.js +1 -1
- package/test-utils/selectors/multiselect/index.js.map +1 -1
- package/test-utils/selectors/navigable-group/index.js +1 -1
- package/test-utils/selectors/navigable-group/index.js.map +1 -1
- package/test-utils/selectors/pagination/index.js +1 -1
- package/test-utils/selectors/pagination/index.js.map +1 -1
- package/test-utils/selectors/pie-chart/index.js +1 -1
- package/test-utils/selectors/pie-chart/index.js.map +1 -1
- package/test-utils/selectors/popover/index.js +1 -1
- package/test-utils/selectors/popover/index.js.map +1 -1
- package/test-utils/selectors/progress-bar/index.js +1 -1
- package/test-utils/selectors/progress-bar/index.js.map +1 -1
- package/test-utils/selectors/prompt-input/index.js +1 -1
- package/test-utils/selectors/prompt-input/index.js.map +1 -1
- package/test-utils/selectors/property-filter/index.js +1 -1
- package/test-utils/selectors/property-filter/index.js.map +1 -1
- package/test-utils/selectors/radio-group/index.js +1 -1
- package/test-utils/selectors/radio-group/index.js.map +1 -1
- package/test-utils/selectors/s3-resource-selector/index.js +1 -1
- package/test-utils/selectors/s3-resource-selector/index.js.map +1 -1
- package/test-utils/selectors/segmented-control/index.js +1 -1
- package/test-utils/selectors/segmented-control/index.js.map +1 -1
- package/test-utils/selectors/select/index.js +1 -1
- package/test-utils/selectors/select/index.js.map +1 -1
- package/test-utils/selectors/side-navigation/index.js +1 -1
- package/test-utils/selectors/side-navigation/index.js.map +1 -1
- package/test-utils/selectors/slider/index.js +1 -1
- package/test-utils/selectors/slider/index.js.map +1 -1
- package/test-utils/selectors/space-between/index.js +1 -1
- package/test-utils/selectors/space-between/index.js.map +1 -1
- package/test-utils/selectors/spinner/index.js +1 -1
- package/test-utils/selectors/spinner/index.js.map +1 -1
- package/test-utils/selectors/split-panel/index.js +1 -1
- package/test-utils/selectors/split-panel/index.js.map +1 -1
- package/test-utils/selectors/status-indicator/index.js +1 -1
- package/test-utils/selectors/status-indicator/index.js.map +1 -1
- package/test-utils/selectors/steps/index.js +1 -1
- package/test-utils/selectors/steps/index.js.map +1 -1
- package/test-utils/selectors/table/index.js +1 -1
- package/test-utils/selectors/table/index.js.map +1 -1
- package/test-utils/selectors/tabs/index.js +1 -1
- package/test-utils/selectors/tabs/index.js.map +1 -1
- package/test-utils/selectors/tag-editor/index.js +1 -1
- package/test-utils/selectors/tag-editor/index.js.map +1 -1
- package/test-utils/selectors/text-content/index.js +1 -1
- package/test-utils/selectors/text-content/index.js.map +1 -1
- package/test-utils/selectors/text-filter/index.js +1 -1
- package/test-utils/selectors/text-filter/index.js.map +1 -1
- package/test-utils/selectors/textarea/index.js +1 -1
- package/test-utils/selectors/textarea/index.js.map +1 -1
- package/test-utils/selectors/tiles/index.js +1 -1
- package/test-utils/selectors/tiles/index.js.map +1 -1
- package/test-utils/selectors/tiles/tile.js +1 -1
- package/test-utils/selectors/tiles/tile.js.map +1 -1
- package/test-utils/selectors/time-input/index.js +1 -1
- package/test-utils/selectors/time-input/index.js.map +1 -1
- package/test-utils/selectors/toggle/index.js +1 -1
- package/test-utils/selectors/toggle/index.js.map +1 -1
- package/test-utils/selectors/toggle-button/index.js +1 -1
- package/test-utils/selectors/toggle-button/index.js.map +1 -1
- package/test-utils/selectors/token/index.js +1 -1
- package/test-utils/selectors/token/index.js.map +1 -1
- package/test-utils/selectors/token-group/index.js +1 -1
- package/test-utils/selectors/token-group/index.js.map +1 -1
- package/test-utils/selectors/top-navigation/index.js +1 -1
- package/test-utils/selectors/top-navigation/index.js.map +1 -1
- package/test-utils/selectors/tree-view/index.js +1 -1
- package/test-utils/selectors/tree-view/index.js.map +1 -1
- package/test-utils/selectors/tutorial-panel/index.js +1 -1
- package/test-utils/selectors/tutorial-panel/index.js.map +1 -1
- package/test-utils/selectors/tutorial-panel/tutorial.js +1 -1
- package/test-utils/selectors/tutorial-panel/tutorial.js.map +1 -1
- package/test-utils/selectors/wizard/index.js +1 -1
- package/test-utils/selectors/wizard/index.js.map +1 -1
- package/text-content/index.d.ts +0 -1
- package/text-content/index.d.ts.map +1 -1
- package/text-filter/analytics/use-table-integration.d.ts.map +1 -1
- package/text-filter/analytics/use-table-integration.js.map +1 -1
- package/text-filter/use-debounce-search-result-callback.js.map +1 -1
- package/textarea/interfaces.d.ts +0 -1
- package/textarea/interfaces.d.ts.map +1 -1
- package/textarea/internal-do-not-use-core.js.map +1 -1
- package/textarea/styles.js.map +1 -1
- package/tiles/internal.js.map +1 -1
- package/tiles/tile.js.map +1 -1
- package/toggle/internal.js.map +1 -1
- package/toggle/style.js.map +1 -1
- package/toggle-button/internal.d.ts +2 -2
- package/toggle-button/internal.d.ts.map +1 -1
- package/toggle-button/internal.js.map +1 -1
- package/toggle-button/util.js.map +1 -1
- package/token/dismiss-button.js.map +1 -1
- package/token/index.d.ts +0 -1
- package/token/index.d.ts.map +1 -1
- package/token/internal.d.ts +0 -1
- package/token/internal.d.ts.map +1 -1
- package/token/internal.js.map +1 -1
- package/token-group/index.d.ts +0 -1
- package/token-group/index.d.ts.map +1 -1
- package/token-group/internal.d.ts +0 -1
- package/token-group/internal.d.ts.map +1 -1
- package/token-group/internal.js.map +1 -1
- package/top-navigation/index.d.ts +0 -1
- package/top-navigation/index.d.ts.map +1 -1
- package/top-navigation/interfaces.d.ts +0 -1
- package/top-navigation/interfaces.d.ts.map +1 -1
- package/top-navigation/internal.d.ts +0 -1
- package/top-navigation/internal.d.ts.map +1 -1
- package/top-navigation/internal.js.map +1 -1
- package/top-navigation/parts/overflow-menu/index.d.ts +0 -1
- package/top-navigation/parts/overflow-menu/index.d.ts.map +1 -1
- package/top-navigation/parts/overflow-menu/index.js.map +1 -1
- package/top-navigation/parts/overflow-menu/menu-item.d.ts.map +1 -1
- package/top-navigation/parts/overflow-menu/menu-item.js.map +1 -1
- package/top-navigation/parts/overflow-menu/router.d.ts.map +1 -1
- package/top-navigation/parts/overflow-menu/router.js.map +1 -1
- package/top-navigation/parts/overflow-menu/views/submenu.d.ts +0 -1
- package/top-navigation/parts/overflow-menu/views/submenu.d.ts.map +1 -1
- package/top-navigation/parts/overflow-menu/views/submenu.js.map +1 -1
- package/top-navigation/parts/overflow-menu/views/utilities.d.ts +0 -1
- package/top-navigation/parts/overflow-menu/views/utilities.d.ts.map +1 -1
- package/top-navigation/parts/overflow-menu/views/utilities.js.map +1 -1
- package/top-navigation/parts/utility.d.ts +0 -1
- package/top-navigation/parts/utility.d.ts.map +1 -1
- package/top-navigation/parts/utility.js.map +1 -1
- package/top-navigation/use-top-navigation.js.map +1 -1
- package/tree-view/index.d.ts +0 -1
- package/tree-view/index.d.ts.map +1 -1
- package/tree-view/internal.d.ts +0 -1
- package/tree-view/internal.d.ts.map +1 -1
- package/tree-view/internal.js.map +1 -1
- package/tree-view/keyboard-navigation/index.js.map +1 -1
- package/tree-view/keyboard-navigation/utils.d.ts +3 -3
- package/tree-view/keyboard-navigation/utils.d.ts.map +1 -1
- package/tree-view/keyboard-navigation/utils.js.map +1 -1
- package/tree-view/tree-item/focus-target.d.ts +0 -1
- package/tree-view/tree-item/focus-target.d.ts.map +1 -1
- package/tree-view/tree-item/index.d.ts +0 -1
- package/tree-view/tree-item/index.d.ts.map +1 -1
- package/tree-view/tree-item/index.js.map +1 -1
- package/tree-view/utils.js.map +1 -1
- package/tutorial-panel/components/tutorial-detail-view/index.d.ts +0 -1
- package/tutorial-panel/components/tutorial-detail-view/index.d.ts.map +1 -1
- package/tutorial-panel/components/tutorial-detail-view/task-list.d.ts +0 -1
- package/tutorial-panel/components/tutorial-detail-view/task-list.d.ts.map +1 -1
- package/tutorial-panel/components/tutorial-detail-view/task.d.ts +0 -1
- package/tutorial-panel/components/tutorial-detail-view/task.d.ts.map +1 -1
- package/tutorial-panel/components/tutorial-detail-view/task.js.map +1 -1
- package/tutorial-panel/components/tutorial-list/index.d.ts +0 -1
- package/tutorial-panel/components/tutorial-list/index.d.ts.map +1 -1
- package/tutorial-panel/index.d.ts +0 -1
- package/tutorial-panel/index.d.ts.map +1 -1
- package/wizard/analytics-metadata/styles.css.js +2 -1
- package/wizard/analytics-metadata/styles.scoped.css +2 -1
- package/wizard/analytics-metadata/styles.selectors.js +2 -1
- package/wizard/analytics-metadata/utils.d.ts.map +1 -1
- package/wizard/analytics-metadata/utils.js.map +1 -1
- package/wizard/analytics.js.map +1 -1
- package/wizard/index.d.ts +0 -1
- package/wizard/index.d.ts.map +1 -1
- package/wizard/internal-do-not-use-core.js +2 -2
- package/wizard/internal-do-not-use-core.js.map +1 -1
- package/wizard/internal.d.ts +0 -1
- package/wizard/internal.d.ts.map +1 -1
- package/wizard/internal.js +2 -1
- package/wizard/internal.js.map +1 -1
- package/wizard/wizard-actions.d.ts +0 -1
- package/wizard/wizard-actions.d.ts.map +1 -1
- package/wizard/wizard-actions.js.map +1 -1
- package/wizard/wizard-form.d.ts +1 -1
- package/wizard/wizard-form.d.ts.map +1 -1
- package/wizard/wizard-form.js +1 -1
- package/wizard/wizard-form.js.map +1 -1
- package/wizard/wizard-navigation.d.ts +0 -1
- package/wizard/wizard-navigation.d.ts.map +1 -1
- package/wizard/wizard-navigation.js.map +1 -1
package/tabs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tabs/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n'use client';\nimport React, { useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { useUniqueId } from '@cloudscape-design/component-toolkit/internal';\nimport { getAnalyticsMetadataAttribute } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nimport InternalContainer from '../container/internal';\nimport { getBaseProps } from '../internal/base-component';\nimport { fireNonCancelableEvent } from '../internal/events';\nimport useBaseComponent from '../internal/hooks/use-base-component';\nimport { useControllable } from '../internal/hooks/use-controllable';\nimport { applyDisplayName } from '../internal/utils/apply-display-name';\nimport { checkSafeUrl } from '../internal/utils/check-safe-url';\nimport { GeneratedAnalyticsMetadataTabsComponent } from './analytics-metadata/interfaces';\nimport { TabsProps } from './interfaces';\nimport { getTabElementId, TabHeaderBar } from './tab-header-bar';\n\nimport analyticsSelectors from './analytics-metadata/styles.css.js';\nimport styles from './styles.css.js';\n\nexport { TabsProps };\n\nfunction firstEnabledTab(tabs: ReadonlyArray<TabsProps.Tab>) {\n const enabledTabs = tabs.filter(tab => !tab.disabled);\n if (enabledTabs.length > 0) {\n return enabledTabs[0];\n }\n return null;\n}\n\nfunction shouldRenderTabContent(tab: TabsProps.Tab, viewedTabs: Set<string>) {\n switch (tab.contentRenderStrategy) {\n case 'active':\n return false; // rendering active tab is handled directly in component\n case 'eager':\n return true;\n case 'lazy':\n return viewedTabs.has(tab.id);\n }\n return false;\n}\n\nexport default function Tabs({\n tabs,\n variant = 'default',\n onChange,\n activeTabId: controlledTabId,\n ariaLabel,\n ariaLabelledby,\n disableContentPaddings = false,\n i18nStrings,\n fitHeight,\n keyboardActivationMode = 'automatic',\n actions,\n ...rest\n}: TabsProps) {\n for (const tab of tabs) {\n checkSafeUrl('Tabs', tab.href);\n }\n const { __internalRootRef } = useBaseComponent('Tabs', {\n props: { disableContentPaddings, variant, fitHeight, keyboardActivationMode },\n metadata: {\n hasActions: tabs.some(tab => !!tab.action),\n hasHeaderActions: !!actions,\n hasDisabledReasons: tabs.some(tab => !!tab.disabledReason),\n hasEagerLoadedTabs: tabs.some(tab => tab.contentRenderStrategy === 'eager'),\n hasLazyLoadedTabs: tabs.some(tab => tab.contentRenderStrategy === 'lazy'),\n },\n });\n const idNamespace = useUniqueId('awsui-tabs-');\n\n const [activeTabId, setActiveTabId] = useControllable(controlledTabId, onChange, firstEnabledTab(tabs)?.id ?? '', {\n componentName: 'Tabs',\n controlledProp: 'activeTabId',\n changeHandler: 'onChange',\n });\n\n const viewedTabs = useRef(new Set<string>());\n if (activeTabId !== undefined) {\n viewedTabs.current.add(activeTabId);\n }\n\n const baseProps = getBaseProps(rest);\n\n const analyticsComponentMetadata: GeneratedAnalyticsMetadataTabsComponent = {\n name: 'awsui.Tabs',\n label: `.${analyticsSelectors['tabs-header-list']}`,\n };\n\n if (activeTabId) {\n analyticsComponentMetadata.properties = {\n activeTabId,\n activeTabLabel: `.${analyticsSelectors['active-tab-header']} .${analyticsSelectors['tab-label']}`,\n activeTabPosition: `${tabs.findIndex(tab => tab.id === activeTabId) + 1}`,\n tabsCount: `${tabs.length}`,\n };\n }\n\n const content = () => {\n const selectedTab = tabs.filter(tab => tab.id === activeTabId)[0];\n const renderContent = (tab: TabsProps.Tab) => {\n const isTabSelected = tab === selectedTab;\n\n const classes = clsx({\n [styles['tabs-content']]: true,\n [styles['tabs-content-active']]: isTabSelected,\n });\n\n const contentAttributes: JSX.IntrinsicElements['div'] = {\n className: classes,\n role: 'tabpanel',\n id: `${idNamespace}-${tab.id}-panel`,\n key: `${idNamespace}-${tab.id}-panel`,\n tabIndex: 0,\n 'aria-labelledby': getTabElementId({ namespace: idNamespace, tabId: tab.id }),\n };\n\n const isContentShown = !tab.disabled && (isTabSelected || shouldRenderTabContent(tab, viewedTabs.current));\n\n return <div {...contentAttributes}>{isContentShown && tab.content}</div>;\n };\n\n return (\n <div\n className={clsx(\n variant === 'container' || variant === 'stacked'\n ? styles['tabs-container-content-wrapper']\n : styles['tabs-content-wrapper'],\n {\n [styles['with-paddings']]: !disableContentPaddings,\n }\n )}\n >\n {tabs.map(renderContent)}\n </div>\n );\n };\n\n const header = (\n <TabHeaderBar\n activeTabId={activeTabId}\n variant={variant}\n idNamespace={idNamespace}\n ariaLabel={ariaLabel}\n ariaLabelledby={ariaLabelledby}\n tabs={tabs}\n actions={actions}\n onChange={changeDetail => {\n setActiveTabId(changeDetail.activeTabId);\n fireNonCancelableEvent(onChange, changeDetail);\n }}\n i18nStrings={i18nStrings}\n keyboardActivationMode={keyboardActivationMode}\n />\n );\n\n if (variant === 'container' || variant === 'stacked') {\n return (\n <InternalContainer\n header={header}\n disableHeaderPaddings={true}\n {...baseProps}\n className={clsx(baseProps.className, styles.root)}\n __internalRootRef={__internalRootRef}\n disableContentPaddings={true}\n variant={variant === 'stacked' ? 'stacked' : 'default'}\n fitHeight={fitHeight}\n {...getAnalyticsMetadataAttribute({ component: analyticsComponentMetadata })}\n >\n {content()}\n </InternalContainer>\n );\n }\n\n return (\n <div\n {...baseProps}\n className={clsx(baseProps.className, styles.root, styles.tabs, { [styles['fit-height']]: fitHeight })}\n ref={__internalRootRef}\n {...getAnalyticsMetadataAttribute({ component: analyticsComponentMetadata })}\n >\n {header}\n {content()}\n </div>\n );\n}\n\napplyDisplayName(Tabs, 'Tabs');\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tabs/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n'use client';\nimport React, { useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { useUniqueId } from '@cloudscape-design/component-toolkit/internal';\nimport { getAnalyticsMetadataAttribute } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nimport InternalContainer from '../container/internal';\nimport { getBaseProps } from '../internal/base-component';\nimport { fireNonCancelableEvent } from '../internal/events';\nimport useBaseComponent from '../internal/hooks/use-base-component';\nimport { useControllable } from '../internal/hooks/use-controllable';\nimport { applyDisplayName } from '../internal/utils/apply-display-name';\nimport { checkSafeUrl } from '../internal/utils/check-safe-url';\nimport { GeneratedAnalyticsMetadataTabsComponent } from './analytics-metadata/interfaces';\nimport { TabsProps } from './interfaces';\nimport { getTabElementId, TabHeaderBar } from './tab-header-bar';\n\nimport analyticsSelectors from './analytics-metadata/styles.css.js';\nimport styles from './styles.css.js';\n\nexport { TabsProps };\n\nfunction firstEnabledTab(tabs: ReadonlyArray<TabsProps.Tab>) {\n const enabledTabs = tabs.filter(tab => !tab.disabled);\n if (enabledTabs.length > 0) {\n return enabledTabs[0];\n }\n return null;\n}\n\nfunction shouldRenderTabContent(tab: TabsProps.Tab, viewedTabs: Set<string>) {\n switch (tab.contentRenderStrategy) {\n case 'active':\n return false; // rendering active tab is handled directly in component\n case 'eager':\n return true;\n case 'lazy':\n return viewedTabs.has(tab.id);\n }\n return false;\n}\n\nexport default function Tabs({\n tabs,\n variant = 'default',\n onChange,\n activeTabId: controlledTabId,\n ariaLabel,\n ariaLabelledby,\n disableContentPaddings = false,\n i18nStrings,\n fitHeight,\n keyboardActivationMode = 'automatic',\n actions,\n ...rest\n}: TabsProps) {\n for (const tab of tabs) {\n checkSafeUrl('Tabs', tab.href);\n }\n const { __internalRootRef } = useBaseComponent('Tabs', {\n props: { disableContentPaddings, variant, fitHeight, keyboardActivationMode },\n metadata: {\n hasActions: tabs.some(tab => !!tab.action),\n hasHeaderActions: !!actions,\n hasDisabledReasons: tabs.some(tab => !!tab.disabledReason),\n hasEagerLoadedTabs: tabs.some(tab => tab.contentRenderStrategy === 'eager'),\n hasLazyLoadedTabs: tabs.some(tab => tab.contentRenderStrategy === 'lazy'),\n },\n });\n const idNamespace = useUniqueId('awsui-tabs-');\n\n const [activeTabId, setActiveTabId] = useControllable(controlledTabId, onChange, firstEnabledTab(tabs)?.id ?? '', {\n componentName: 'Tabs',\n controlledProp: 'activeTabId',\n changeHandler: 'onChange',\n });\n\n const viewedTabs = useRef(new Set<string>());\n if (activeTabId !== undefined) {\n viewedTabs.current.add(activeTabId);\n }\n\n const baseProps = getBaseProps(rest);\n\n const analyticsComponentMetadata: GeneratedAnalyticsMetadataTabsComponent = {\n name: 'awsui.Tabs',\n label: `.${analyticsSelectors['tabs-header-list']}`,\n };\n\n if (activeTabId) {\n analyticsComponentMetadata.properties = {\n activeTabId,\n activeTabLabel: `.${analyticsSelectors['active-tab-header']} .${analyticsSelectors['tab-label']}`,\n activeTabPosition: `${tabs.findIndex(tab => tab.id === activeTabId) + 1}`,\n tabsCount: `${tabs.length}`,\n };\n }\n\n const content = () => {\n const selectedTab = tabs.filter(tab => tab.id === activeTabId)[0];\n const renderContent = (tab: TabsProps.Tab) => {\n const isTabSelected = tab === selectedTab;\n\n const classes = clsx({\n [styles['tabs-content']]: true,\n [styles['tabs-content-active']]: isTabSelected,\n });\n\n const contentAttributes: JSX.IntrinsicElements['div'] = {\n className: classes,\n role: 'tabpanel',\n id: `${idNamespace}-${tab.id}-panel`,\n key: `${idNamespace}-${tab.id}-panel`,\n tabIndex: 0,\n 'aria-labelledby': getTabElementId({ namespace: idNamespace, tabId: tab.id }),\n };\n\n const isContentShown = !tab.disabled && (isTabSelected || shouldRenderTabContent(tab, viewedTabs.current));\n\n return <div {...contentAttributes}>{isContentShown && tab.content}</div>;\n };\n\n return (\n <div\n className={clsx(\n variant === 'container' || variant === 'stacked'\n ? styles['tabs-container-content-wrapper']\n : styles['tabs-content-wrapper'],\n {\n [styles['with-paddings']]: !disableContentPaddings,\n }\n )}\n >\n {tabs.map(renderContent)}\n </div>\n );\n };\n\n const header = (\n <TabHeaderBar\n activeTabId={activeTabId}\n variant={variant}\n idNamespace={idNamespace}\n ariaLabel={ariaLabel}\n ariaLabelledby={ariaLabelledby}\n tabs={tabs}\n actions={actions}\n onChange={changeDetail => {\n setActiveTabId(changeDetail.activeTabId);\n fireNonCancelableEvent(onChange, changeDetail);\n }}\n i18nStrings={i18nStrings}\n keyboardActivationMode={keyboardActivationMode}\n />\n );\n\n if (variant === 'container' || variant === 'stacked') {\n return (\n <InternalContainer\n header={header}\n disableHeaderPaddings={true}\n {...baseProps}\n className={clsx(baseProps.className, styles.root)}\n __internalRootRef={__internalRootRef}\n disableContentPaddings={true}\n variant={variant === 'stacked' ? 'stacked' : 'default'}\n fitHeight={fitHeight}\n {...getAnalyticsMetadataAttribute({ component: analyticsComponentMetadata })}\n >\n {content()}\n </InternalContainer>\n );\n }\n\n return (\n <div\n {...baseProps}\n className={clsx(baseProps.className, styles.root, styles.tabs, { [styles['fit-height']]: fitHeight })}\n ref={__internalRootRef}\n {...getAnalyticsMetadataAttribute({ component: analyticsComponentMetadata })}\n >\n {header}\n {content()}\n </div>\n );\n}\n\napplyDisplayName(Tabs, 'Tabs');\n"]}
|
package/tabs/interfaces.d.ts
CHANGED
package/tabs/interfaces.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/tabs/interfaces.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/tabs/interfaces.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,MAAM,WAAW,SAAU,SAAQ,kBAAkB;IACnD;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAEnC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE1B;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC;IAE5B;;;OAGG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAE7D;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAEjC;;;OAGG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC,WAAW,CAAC;IACpC;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;;;OAQG;IACH,sBAAsB,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAC;CACjD;AACD,yBAAiB,SAAS,CAAC;IACzB,KAAY,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;IAE1D,UAAiB,GAAG;QAClB;;WAEG;QACH,EAAE,EAAE,MAAM,CAAC;QACX;;WAEG;QACH,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;QACvB;;WAEG;QACH,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QAC1B;;WAEG;QACH,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB;;WAEG;QACH,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB;;;WAGG;QACH,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB;;WAEG;QACH,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB;;WAEG;QACH,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B;;;;WAIG;QACH,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QACzB;;WAEG;QACH,SAAS,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;QACnC;;;;;;WAMG;QACH,IAAI,CAAC,EAAE,MAAM,CAAC;QACd;;;;;WAKG;QACH,qBAAqB,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;KACrD;IAED,UAAiB,YAAY;QAC3B;;WAEG;QACH,WAAW,EAAE,MAAM,CAAC;QACpB;;WAEG;QACH,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB;IAED,UAAiB,WAAW;QAC1B;;WAEG;QACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B;;WAEG;QACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B;;;WAGG;QACH,kCAAkC,CAAC,EAAE,MAAM,CAAC;KAC7C;CACF"}
|
package/tabs/scroll-utils.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const onPaginationClick: (headerBarRef: React.RefObject<HTMLUListElement>, direction:
|
|
1
|
+
export declare const onPaginationClick: (headerBarRef: React.RefObject<HTMLUListElement>, direction: "forward" | "backward") => void;
|
|
2
2
|
export declare const hasHorizontalOverflow: (headerBar: HTMLElement, inlineStartOverflowButton: React.RefObject<HTMLElement>) => boolean;
|
|
3
3
|
export declare const hasInlineStartOverflow: (headerBar: HTMLElement) => boolean;
|
|
4
4
|
export declare const hasInlineEndOverflow: (headerBar: HTMLElement) => boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scroll-utils.d.ts","sourceRoot":"","sources":["../../../src/tabs/scroll-utils.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"scroll-utils.d.ts","sourceRoot":"","sources":["../../../src/tabs/scroll-utils.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,iBAAiB,GAC5B,cAAc,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAC/C,WAAW,SAAS,GAAG,UAAU,KAChC,IAmBF,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAChC,WAAW,WAAW,EACtB,2BAA2B,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,KACtD,OAMF,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,WAAW,WAAW,KAAG,OAE/D,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,WAAW,WAAW,KAAG,OAE7D,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,WAAW,WAAW,EAAE,WAAW,WAAW,EAAE,gBAAa,KAAG,IAoB9F,CAAC"}
|
package/tabs/scroll-utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scroll-utils.js","sourceRoot":"","sources":["../../../src/tabs/scroll-utils.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AAE/F,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAE3C,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,YAA+C,EAC/C,SAAiC,EAC3B,EAAE;IACR,IAAI,CAAC,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,OAAO,CAAA,EAAE;
|
|
1
|
+
{"version":3,"file":"scroll-utils.js","sourceRoot":"","sources":["../../../src/tabs/scroll-utils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getIsRtl, getScrollInlineStart } from '@cloudscape-design/component-toolkit/internal';\n\nimport smoothScroll from './smooth-scroll';\n\nexport const onPaginationClick = (\n headerBarRef: React.RefObject<HTMLUListElement>,\n direction: 'forward' | 'backward'\n): void => {\n if (!headerBarRef?.current) {\n return;\n }\n const element = headerBarRef.current;\n const { scrollLeft, scrollWidth, offsetWidth } = element;\n\n // Scroll each paginated section by 75% of what is already visible\n const paginatedSectionSize = Math.ceil(element.clientWidth * 0.75);\n\n const scrollDistance =\n direction === 'forward'\n ? Math.min(Math.abs(scrollLeft) + paginatedSectionSize, scrollWidth - offsetWidth)\n : Math.max(Math.abs(scrollLeft) - paginatedSectionSize, 0);\n\n // scroll destination needs to be a negative number if the direction is RTL\n const scrollTo = getIsRtl(element) ? scrollDistance * -1 : scrollDistance;\n\n smoothScroll(element, scrollTo);\n};\n\nexport const hasHorizontalOverflow = (\n headerBar: HTMLElement,\n inlineStartOverflowButton: React.RefObject<HTMLElement>\n): boolean => {\n const { offsetWidth, scrollWidth } = headerBar;\n\n // Need to account for pagination button width when deciding if there would be overflow without them\n const paginationButtonsWidth = inlineStartOverflowButton.current && 2 * inlineStartOverflowButton.current.offsetWidth;\n return paginationButtonsWidth ? scrollWidth > offsetWidth + paginationButtonsWidth : scrollWidth > offsetWidth;\n};\n\nexport const hasInlineStartOverflow = (headerBar: HTMLElement): boolean => {\n return getScrollInlineStart(headerBar) > 0;\n};\n\nexport const hasInlineEndOverflow = (headerBar: HTMLElement): boolean => {\n return Math.ceil(getScrollInlineStart(headerBar)) < headerBar.scrollWidth - headerBar.offsetWidth;\n};\n\nexport const scrollIntoView = (tabHeader: HTMLElement, headerBar: HTMLElement, smooth = true): void => {\n if (!tabHeader || !headerBar) {\n return;\n }\n // Extra left and right margin to always make the focus ring visible\n const margin = 2;\n let updatedLeftScroll = headerBar.scrollLeft;\n\n // Anchor tab to left of scroll parent\n updatedLeftScroll = Math.min(updatedLeftScroll, tabHeader.offsetLeft - margin);\n // Anchor tab to right of scroll parent\n updatedLeftScroll = Math.max(\n updatedLeftScroll,\n tabHeader.offsetLeft + tabHeader.offsetWidth / 2 - headerBar.offsetWidth / 2 + margin\n );\n if (smooth) {\n smoothScroll(headerBar, updatedLeftScroll);\n } else {\n headerBar.scrollLeft = updatedLeftScroll;\n }\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smooth-scroll.d.ts","sourceRoot":"","sources":["../../../src/tabs/smooth-scroll.ts"],"names":[],"mappings":"AA+CA,QAAA,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"smooth-scroll.d.ts","sourceRoot":"","sources":["../../../src/tabs/smooth-scroll.ts"],"names":[],"mappings":"AA+CA,QAAA,MAAM,YAAY,GAAI,SAAS,WAAW,EAAE,IAAI,MAAM,SAarD,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smooth-scroll.js","sourceRoot":"","sources":["../../../src/tabs/smooth-scroll.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AAEjF,OAAO,gCAAgC,MAAM,kCAAkC,CAAC;AAUhF,wHAAwH;AACxH,MAAM,cAAc,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;AAC7E,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;AAEhG,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;AAE/E,MAAM,IAAI,GAAG,CAAC,CAAS,EAAU,EAAE;IACjC,OAAO,GAAG,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;AAC3C,CAAC,CAAC;AAEF,MAAM,IAAI,GAAG,CAAC,OAAsB,EAAQ,EAAE;IAC5C,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;IACnB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;IAC1E,OAAO,CAAC,UAAU,CAAC,UAAU,GAAG,QAAQ,CAAC;IACzC,qDAAqD;IACrD,IAAI,QAAQ,KAAK,OAAO,CAAC,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"smooth-scroll.js","sourceRoot":"","sources":["../../../src/tabs/smooth-scroll.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AAEjF,OAAO,gCAAgC,MAAM,kCAAkC,CAAC;AAUhF,wHAAwH;AACxH,MAAM,cAAc,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;AAC7E,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;AAEhG,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;AAE/E,MAAM,IAAI,GAAG,CAAC,CAAS,EAAU,EAAE;IACjC,OAAO,GAAG,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;AAC3C,CAAC,CAAC;AAEF,MAAM,IAAI,GAAG,CAAC,OAAsB,EAAQ,EAAE;IAC5C,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;IACnB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;IAC1E,OAAO,CAAC,UAAU,CAAC,UAAU,GAAG,QAAQ,CAAC;IACzC,qDAAqD;IACrD,IAAI,QAAQ,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;QAC9B,qBAAqB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,OAAoB,EAAE,IAAY,EAAQ,EAAE;IACxE,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAClC,IAAI,CAAC;QACH,UAAU,EAAE,OAAO;QACnB,MAAM;QACN,IAAI;QACJ,SAAS,EAAE,GAAG,EAAE;QAChB,UAAU,EAAE,aAAa,CAAC,IAAI,GAAG,MAAM,CAAC;KACzC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,OAAoB,EAAE,EAAU,EAAE,EAAE;IACxD,IAAI,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,UAAU,GAAG,EAAE,CAAC;QACxB,OAAO;IACT,CAAC;IACD,IAAI,gCAAgC,EAAE,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QAC3D,OAAO,CAAC,QAAQ,CAAC;YACf,IAAI,EAAE,EAAE;YACR,QAAQ,EAAE,QAAQ;SACnB,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IACD,oBAAoB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { isMotionDisabled } from '@cloudscape-design/component-toolkit/internal';\n\nimport isNativeSmoothScrollingSupported from './native-smooth-scroll-supported';\n\ninterface ScrollContext {\n scrollable: HTMLElement;\n startX: number;\n endX: number;\n startTime: number;\n scrollTime: number;\n}\n\n// The scroll speed depends on the scrolling distance. The equation below is an interpolation of measurements in Chrome.\nconst getScrollSpeed = (pixels: number) => 0.0015 * Math.abs(pixels) + 0.558;\nconst getScrollTime = (pixels: number) => Math.round(Math.abs(pixels) / getScrollSpeed(pixels));\n\nconst now = () => (window.performance ? window.performance.now() : Date.now());\n\nconst ease = (k: number): number => {\n return 0.5 * (1 - Math.cos(Math.PI * k));\n};\n\nconst step = (context: ScrollContext): void => {\n const time = now();\n const elapsed = Math.min((time - context.startTime) / context.scrollTime, 1);\n const value = ease(elapsed);\n const currentX = context.startX + (context.endX - context.startX) * value;\n context.scrollable.scrollLeft = currentX;\n // scroll more if we have not reached our destination\n if (currentX !== context.endX) {\n requestAnimationFrame(() => step(context));\n }\n};\n\nconst simulateSmoothScroll = (element: HTMLElement, endX: number): void => {\n const startX = element.scrollLeft;\n step({\n scrollable: element,\n startX,\n endX,\n startTime: now(),\n scrollTime: getScrollTime(endX - startX),\n });\n};\n\nconst smoothScroll = (element: HTMLElement, to: number) => {\n if (isMotionDisabled(element)) {\n element.scrollLeft = to;\n return;\n }\n if (isNativeSmoothScrollingSupported() && element.scrollTo) {\n element.scrollTo({\n left: to,\n behavior: 'smooth',\n });\n return;\n }\n simulateSmoothScroll(element, to);\n};\n\nexport default smoothScroll;\n"]}
|
package/tabs/tab-header-bar.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tab-header-bar.d.ts","sourceRoot":"","sources":["../../../src/tabs/tab-header-bar.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tab-header-bar.d.ts","sourceRoot":"","sources":["../../../src/tabs/tab-header-bar.tsx"],"names":[],"mappings":"AAiCA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AA0CzC,UAAU,iBAAiB;IACzB,QAAQ,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC,YAAY,KAAK,IAAI,CAAC;IACzD,WAAW,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC;IACtC,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACxB,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,SAAS,CAAC,WAAW,CAAC;IACpC,sBAAsB,EAAE,QAAQ,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAChC;AAED,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,WAAW,EACX,IAAI,EACJ,OAAO,EACP,WAAW,EACX,SAAS,EACT,cAAc,EACd,WAAW,EACX,sBAAsB,EACtB,OAAO,GACR,EAAE,iBAAiB,eAqbnB;AA6ED,wBAAgB,eAAe,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,UAEzF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tab-header-bar.js","sourceRoot":"","sources":["../../../src/tabs/tab-header-bar.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport React, { forwardRef, useEffect, useRef, useState } from 'react';\nimport clsx from 'clsx';\n\nimport { useContainerQuery } from '@cloudscape-design/component-toolkit';\nimport {\n SingleTabStopNavigationAPI,\n SingleTabStopNavigationProvider,\n useMergeRefs,\n useSingleTabStopNavigation,\n} from '@cloudscape-design/component-toolkit/internal';\nimport { getAnalyticsMetadataAttribute } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nimport { ButtonProps } from '../button/interfaces';\nimport { InternalButton } from '../button/internal';\nimport { useInternalI18n } from '../i18n/context';\nimport { getAllFocusables } from '../internal/components/focus-lock/utils';\nimport Tooltip from '../internal/components/tooltip';\nimport { hasModifierKeys, isPlainLeftClick } from '../internal/events';\nimport useHiddenDescription from '../internal/hooks/use-hidden-description';\nimport { usePrevious } from '../internal/hooks/use-previous';\nimport { useVisualRefresh } from '../internal/hooks/use-visual-mode';\nimport { KeyCode } from '../internal/keycode';\nimport { circleIndex } from '../internal/utils/circle-index';\nimport { isHTMLElement } from '../internal/utils/dom';\nimport handleKey from '../internal/utils/handle-key';\nimport {\n GeneratedAnalyticsMetadataTabsComponent,\n GeneratedAnalyticsMetadataTabsDismiss,\n GeneratedAnalyticsMetadataTabsSelect,\n} from './analytics-metadata/interfaces';\nimport { TabsProps } from './interfaces';\nimport {\n hasHorizontalOverflow,\n hasInlineEndOverflow,\n hasInlineStartOverflow,\n onPaginationClick,\n scrollIntoView,\n} from './scroll-utils';\n\nimport analyticsSelectors from './analytics-metadata/styles.css.js';\nimport styles from './styles.css.js';\nimport testUtilStyles from './test-classes/styles.css.js';\n\nconst tabSelector = `.${styles['tabs-tab-link']}`;\nconst focusedTabSelector = `.${styles['tabs-tab-focused']}`;\nconst focusableTabSelector = `.${styles['tabs-tab-focusable']}`;\n\nfunction dismissButton({\n dismissLabel,\n dismissDisabled,\n onDismiss,\n tabId,\n}: {\n dismissLabel?: string;\n dismissDisabled?: boolean;\n onDismiss: ButtonProps['onClick'];\n tabId: string;\n}) {\n return (\n <InternalButton\n onClick={onDismiss}\n variant=\"icon\"\n iconName=\"close\"\n formAction=\"none\"\n ariaLabel={dismissLabel}\n disabled={dismissDisabled}\n className={clsx(testUtilStyles['tab-dismiss-button'], analyticsSelectors['tab-dismiss-button'])}\n data-testid={`awsui-tab-dismiss-button-${tabId}`}\n />\n );\n}\n\ninterface TabHeaderBarProps {\n onChange: (changeDetail: TabsProps.ChangeDetail) => void;\n activeTabId: TabsProps['activeTabId'];\n tabs: TabsProps['tabs'];\n variant: TabsProps['variant'];\n idNamespace: string;\n ariaLabel?: string;\n ariaLabelledby?: string;\n i18nStrings?: TabsProps.I18nStrings;\n keyboardActivationMode: Required<TabsProps['keyboardActivationMode']>;\n actions?: TabsProps['actions'];\n}\n\nexport function TabHeaderBar({\n onChange,\n activeTabId,\n tabs,\n variant,\n idNamespace,\n ariaLabel,\n ariaLabelledby,\n i18nStrings,\n keyboardActivationMode,\n actions,\n}: TabHeaderBarProps) {\n const headerBarRef = useRef<HTMLUListElement>(null);\n const activeTabHeaderRef = useRef<null | HTMLElement>(null);\n const inlineStartOverflowButton = useRef<HTMLElement>(null);\n const i18n = useInternalI18n('tabs');\n\n const isVisualRefresh = useVisualRefresh();\n\n const containerObjectRef = useRef<HTMLDivElement>(null);\n const documentRef = useRef<null | Document>(typeof document !== 'undefined' ? document : null);\n const documentRefCallback = (node: null | Element) => (documentRef.current = node?.ownerDocument ?? document);\n const [widthChange, containerMeasureRef] = useContainerQuery<number>(rect => rect.contentBoxWidth);\n const containerRef = useMergeRefs(containerObjectRef, containerMeasureRef, documentRefCallback);\n const tabRefs = useRef<Map<string, HTMLElement>>(new Map());\n const [horizontalOverflow, setHorizontalOverflow] = useState(false);\n const [inlineStartOverflow, setInlineStartOverflow] = useState(false);\n const [inlineEndOverflow, setInlineEndOverflow] = useState(false);\n const [focusedTabId, setFocusedTabId] = useState(activeTabId);\n const [previousActiveTabId, setPreviousActiveTabId] = useState<string | undefined>(activeTabId);\n const hasActionOrDismissible = tabs.some(tab => tab.action || tab.dismissible);\n const hadActionOrDismissible = usePrevious(hasActionOrDismissible);\n const tabActionAttributes = hasActionOrDismissible\n ? {\n role: 'application',\n 'aria-roledescription': i18n(\n 'i18nStrings.tabsWithActionsAriaRoleDescription',\n i18nStrings?.tabsWithActionsAriaRoleDescription\n ),\n }\n : {\n role: 'tablist',\n };\n\n useEffect(() => {\n if (hadActionOrDismissible && !hasActionOrDismissible) {\n // when tabs becomes non-dismissible (e.g. when all dismissible tabs are removed),\n // the hasActionOrDismissible is changing which causing tabs to re-mount to the React tree,\n // which, in turn, causes losing their refs, and the nextActive.focus() function inside handleDismiss does not focus on the next tab\n // so this code does\n getNextFocusTarget()?.focus();\n }\n }, [hasActionOrDismissible, hadActionOrDismissible]);\n\n useEffect(() => {\n if (headerBarRef.current) {\n setHorizontalOverflow(hasHorizontalOverflow(headerBarRef.current, inlineStartOverflowButton));\n setInlineStartOverflow(hasInlineStartOverflow(headerBarRef.current));\n setInlineEndOverflow(hasInlineEndOverflow(headerBarRef.current));\n }\n }, [widthChange, tabs]);\n\n const scrollIntoViewIfPossible = (smooth: boolean) => {\n if (!activeTabId) {\n return;\n }\n const activeTabRef = tabRefs.current.get(activeTabId);\n if (activeTabRef && headerBarRef.current) {\n scrollIntoView(activeTabRef, headerBarRef.current, smooth);\n }\n };\n\n useEffect(() => {\n // Delay scrollIntoView as the position is depending on parent elements\n // (effects are called inside-out in the component tree).\n // Wait one frame to allow parents to complete it's calculation.\n requestAnimationFrame(() => {\n scrollIntoViewIfPossible(false);\n });\n // Non-smooth scrolling should not be called upon activeId change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [horizontalOverflow, widthChange, tabs.length]);\n\n useEffect(() => {\n scrollIntoViewIfPossible(true);\n // Smooth scrolling should only be called upon activeId change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [activeTabId]);\n\n useEffect(() => {\n /*\n When the selected tab changes and we are currently already focused on a tab,\n move the focus to the newly selected tab.\n */\n if (documentRef.current && headerBarRef.current?.contains(documentRef.current.activeElement)) {\n if (documentRef.current.activeElement !== activeTabHeaderRef.current) {\n activeTabHeaderRef.current?.focus({ preventScroll: true });\n }\n }\n }, [activeTabId]);\n\n const onScroll = () => {\n if (headerBarRef.current) {\n setInlineStartOverflow(hasInlineStartOverflow(headerBarRef.current));\n setInlineEndOverflow(hasInlineEndOverflow(headerBarRef.current));\n }\n };\n\n const classes = clsx({\n [styles['tabs-header']]: true,\n [styles['tabs-header-with-divider']]: variant === 'default' || isVisualRefresh,\n });\n\n const leftButtonClasses = clsx({\n [styles['pagination-button']]: true,\n [styles['pagination-button-left']]: true,\n [styles['pagination-button-left-scrollable']]: inlineStartOverflow,\n });\n\n const rightButtonClasses = clsx({\n [styles['pagination-button']]: true,\n [styles['pagination-button-right']]: true,\n [styles['pagination-button-right-scrollable']]: inlineEndOverflow,\n });\n\n const navigationAPI = useRef<SingleTabStopNavigationAPI>(null);\n\n function getNextFocusTarget(): null | HTMLElement {\n if (!containerObjectRef.current) {\n return null;\n }\n const tabElements: HTMLButtonElement[] = Array.from(containerObjectRef.current.querySelectorAll(tabSelector));\n return tabElements.find(tab => tab.matches(focusedTabSelector)) ?? tabElements.find(tab => !tab.disabled) ?? null;\n }\n\n function onUnregisterActive(focusableElement: HTMLElement) {\n const isFocusableActionOrDismissible = !focusableElement.classList.contains(styles['tabs-tab-link']);\n if (!isFocusableActionOrDismissible) {\n const nextFocusTarget = navigationAPI.current?.getFocusTarget();\n const tabLinkButton = nextFocusTarget?.querySelector(`.${styles['tabs-tab-link']}`) as HTMLElement;\n tabLinkButton?.focus();\n }\n }\n\n useEffect(() => {\n navigationAPI.current?.updateFocusTarget();\n });\n function onFocus() {\n navigationAPI.current?.updateFocusTarget();\n }\n function onBlur() {\n navigationAPI.current?.updateFocusTarget();\n }\n\n function onKeyDown(event: React.KeyboardEvent) {\n const focusTarget = documentRef.current?.activeElement;\n const specialKeys = [\n KeyCode.right,\n KeyCode.left,\n KeyCode.end,\n KeyCode.home,\n KeyCode.pageUp,\n KeyCode.pageDown,\n KeyCode.space,\n ];\n const isActionOpen = documentRef.current?.querySelector(`.${styles['tabs-tab-action']} [aria-expanded=\"true\"]`);\n const isDismissOrActionFocused = !focusTarget?.classList.contains(styles['tabs-tab-link']);\n\n if (isActionOpen) {\n return;\n }\n if (event.key === 'Tab' && !event.shiftKey && isDismissOrActionFocused) {\n event.preventDefault();\n const panelId = `${idNamespace}-${activeTabId}-panel`;\n const panel = documentRef.current?.getElementById(panelId);\n panel?.focus();\n }\n if (hasModifierKeys(event) || specialKeys.indexOf(event.keyCode) === -1) {\n return;\n }\n if (!containerObjectRef.current || !focusTarget) {\n return;\n }\n\n event.preventDefault();\n\n const focusables = getFocusablesFrom(containerObjectRef.current);\n const activeIndex = isHTMLElement(focusTarget) ? focusables.indexOf(focusTarget) : -1;\n\n handleKey(event as any, {\n onHome: () => focusElement(focusables[0]),\n onEnd: () => focusElement(focusables[focusables.length - 1]),\n onInlineStart: () => focusElement(focusables[circleIndex(activeIndex - 1, [0, focusables.length - 1])]),\n onInlineEnd: () => focusElement(focusables[circleIndex(activeIndex + 1, [0, focusables.length - 1])]),\n onPageDown: () => inlineEndOverflow && onPaginationClick(headerBarRef, 'forward'),\n onPageUp: () => inlineStartOverflow && onPaginationClick(headerBarRef, 'backward'),\n onActivate: () =>\n focusedTabId &&\n focusedTabId !== activeTabId &&\n onChange({ activeTabId: focusedTabId, activeTabHref: tabs.find(tab => tab.id === focusedTabId)?.href }),\n });\n }\n function focusElement(element: HTMLElement) {\n element.focus();\n // If focusable element is a tab - fire the onChange for it.\n const tabsById = tabs.reduce((map, tab) => map.set(tab.id, tab), new Map<string, TabsProps.Tab>());\n for (const [tabId, focusTargetTabTriggerElement] of tabRefs.current.entries()) {\n const focusTargetTabLabelElement = focusTargetTabTriggerElement?.querySelector(`.${styles['tabs-tab-link']}`);\n if (tabId !== activeTabId && focusTargetTabLabelElement === element) {\n setPreviousActiveTabId(tabId);\n setFocusedTabId(tabId);\n\n if (!tabsById.get(tabId)?.disabled && keyboardActivationMode === 'automatic') {\n onChange({ activeTabId: tabId, activeTabHref: tabsById.get(tabId)?.href });\n }\n break;\n }\n }\n }\n // List all non-disabled and registered focusables: those are eligible for keyboard navigation.\n function getFocusablesFrom(target: HTMLElement) {\n function isElementRegistered(element: HTMLElement) {\n return navigationAPI.current?.isRegistered(element) ?? false;\n }\n function isElementFocusable(element: HTMLElement) {\n if (element instanceof HTMLButtonElement) {\n return !element.disabled || element.closest(focusableTabSelector);\n }\n\n return element.matches(focusableTabSelector);\n }\n return getAllFocusables(target).filter(el => isElementRegistered(el) && isElementFocusable(el));\n }\n\n const TabList = hasActionOrDismissible ? 'div' : 'ul';\n\n return (\n <div className={classes}>\n <div className={styles['tab-header-scroll-container']} ref={containerRef}>\n {horizontalOverflow && (\n <span ref={inlineStartOverflowButton} className={leftButtonClasses}>\n <InternalButton\n formAction=\"none\"\n variant=\"icon\"\n iconName=\"angle-left\"\n disabled={!inlineStartOverflow}\n __focusable={true}\n onClick={() => onPaginationClick(headerBarRef, 'backward')}\n ariaLabel={i18n('i18nStrings.scrollLeftAriaLabel', i18nStrings?.scrollLeftAriaLabel)}\n />\n </span>\n )}\n <SingleTabStopNavigationProvider\n ref={navigationAPI}\n navigationActive={true}\n getNextFocusTarget={getNextFocusTarget}\n onUnregisterActive={onUnregisterActive}\n >\n <TabList\n {...tabActionAttributes}\n className={clsx(styles['tabs-header-list'], analyticsSelectors['tabs-header-list'])}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n ref={headerBarRef as never}\n onScroll={onScroll}\n onKeyDown={onKeyDown}\n onFocus={onFocus}\n onBlur={onBlur}\n >\n {tabs.map(renderTabHeader)}\n </TabList>\n </SingleTabStopNavigationProvider>\n {horizontalOverflow && (\n <span className={rightButtonClasses}>\n <InternalButton\n formAction=\"none\"\n variant=\"icon\"\n iconName=\"angle-right\"\n disabled={!inlineEndOverflow}\n __focusable={true}\n onClick={() => onPaginationClick(headerBarRef, 'forward')}\n ariaLabel={i18n('i18nStrings.scrollRightAriaLabel', i18nStrings?.scrollRightAriaLabel)}\n />\n </span>\n )}\n </div>\n {actions && <div className={styles['actions-container']}>{actions}</div>}\n </div>\n );\n\n function renderTabHeader(tab: TabsProps.Tab, index: number) {\n const { dismissible, dismissLabel, dismissDisabled, action, onDismiss } = tab;\n const isActive = activeTabId === tab.id && !tab.disabled;\n\n const clickTab = (event: React.MouseEvent) => {\n if (tab.disabled) {\n event.preventDefault();\n return;\n }\n\n // if the primary mouse button is clicked with a modifier key, the browser will handle opening a new tab\n const specialKey = !isPlainLeftClick(event);\n if (specialKey && tab.href) {\n return;\n }\n\n event.preventDefault();\n // for browsers that do not focus buttons on button click\n if (!tab.href) {\n const clickedTabRef = tabRefs.current.get(tab.id) as undefined | HTMLButtonElement;\n if (clickedTabRef) {\n if (clickedTabRef && clickedTabRef !== documentRef.current?.activeElement) {\n clickedTabRef.focus({ preventScroll: true });\n }\n }\n }\n\n if (tab.id === activeTabId) {\n return;\n }\n\n setFocusedTabId(tab.id);\n setPreviousActiveTabId(tab.id);\n onChange({ activeTabId: tab.id, activeTabHref: tab.href });\n };\n\n const classes = clsx({\n [styles['tabs-tab-link']]: true,\n [styles.refresh]: isVisualRefresh,\n [styles['tabs-tab-active']]: activeTabId === tab.id && !tab.disabled,\n [styles['tabs-tab-focused']]: focusedTabId === tab.id,\n [styles['tabs-tab-active']]: isActive,\n [analyticsSelectors['active-tab-header']]: isActive,\n [styles['tabs-tab-disabled']]: tab.disabled,\n [styles['tabs-tab-focusable']]: !tab.disabled || (tab.disabled && !!tab.disabledReason),\n });\n\n const tabHeaderContainerClasses = clsx({\n [styles['tabs-tab-header-container']]: true,\n [styles.refresh]: isVisualRefresh,\n [styles['tabs-tab-active']]: isActive,\n [styles['tabs-tab-disabled']]: tab.disabled,\n [styles['tabs-tab-focusable']]: !tab.disabled || (tab.disabled && !!tab.disabledReason),\n });\n\n const tabActionClasses = clsx({\n [styles['tabs-tab-action']]: true,\n [styles['tabs-tab-active']]: isActive,\n });\n\n const commonProps: (JSX.IntrinsicElements['a'] | JSX.IntrinsicElements['button']) & { 'data-testid': string } = {\n className: classes,\n 'aria-controls': `${idNamespace}-${tab.id}-panel`,\n 'data-testid': tab.id,\n id: getTabElementId({ namespace: idNamespace, tabId: tab.id }),\n onClick: clickTab,\n };\n\n const tabHeaderContainerAriaProps = hasActionOrDismissible\n ? {\n role: 'group',\n 'aria-labelledby': commonProps.id,\n }\n : {};\n\n if (!hasActionOrDismissible) {\n commonProps['aria-selected'] = activeTabId === tab.id;\n commonProps.role = 'tab';\n } else {\n commonProps['aria-expanded'] = activeTabId === tab.id;\n }\n\n if (tab.disabled) {\n commonProps['aria-disabled'] = 'true';\n }\n\n const setElement = (tabElement: null | HTMLElement) => {\n if (tab.id === activeTabId) {\n activeTabHeaderRef.current = tabElement;\n }\n tabRefs.current.set(tab.id, tabElement as HTMLElement);\n };\n\n const handleDismiss: ButtonProps['onClick'] = event => {\n if (!containerObjectRef.current || !onDismiss) {\n return;\n }\n const tabElements = getFocusablesFrom(containerObjectRef.current).filter(el =>\n el.classList.contains(styles['tabs-tab-link'])\n );\n const activeTabIndex = tabElements.findIndex(el => el.dataset.testid === tab.id);\n tabElements.splice(activeTabIndex, 1);\n let nextActive: HTMLElement | undefined;\n if (previousActiveTabId && previousActiveTabId !== tab.id) {\n nextActive = tabElements.find(el => el.dataset.testid === previousActiveTabId);\n } else {\n nextActive = tabElements[Math.min(tabElements.length - 1, activeTabIndex)];\n }\n if (nextActive && nextActive.dataset.testid) {\n onChange({ activeTabId: nextActive.dataset.testid });\n setPreviousActiveTabId(nextActive.dataset.testid);\n nextActive.focus();\n }\n onDismiss(event);\n };\n\n const TabItem = hasActionOrDismissible ? 'div' : 'li';\n\n const analyticsDismissMetadata: GeneratedAnalyticsMetadataTabsDismiss = {\n action: 'dismiss',\n detail: {\n id: tab.id,\n label: `.${analyticsSelectors['tab-dismiss-button']}`,\n position: `${index + 1}`,\n },\n };\n\n const analyticsComponentMetadataInnerContext: Partial<GeneratedAnalyticsMetadataTabsComponent> = {\n innerContext: {\n tabId: tab.id,\n tabLabel: `.${analyticsSelectors['tab-label']}`,\n tabPosition: `${index + 1}`,\n },\n };\n\n return (\n <TabItem\n ref={(element: any) => tabRefs.current.set(tab.id, element as HTMLElement)}\n className={styles['tabs-tab']}\n role=\"presentation\"\n key={tab.id}\n >\n <div\n className={tabHeaderContainerClasses}\n {...tabHeaderContainerAriaProps}\n {...getAnalyticsMetadataAttribute({ component: analyticsComponentMetadataInnerContext })}\n >\n <TabTrigger ref={setElement} tab={tab} elementProps={commonProps} activeTabId={activeTabId} index={index} />\n {action && <span className={tabActionClasses}>{action}</span>}\n {dismissible && (\n <span className={styles['tabs-tab-dismiss']} {...getAnalyticsMetadataAttribute(analyticsDismissMetadata)}>\n {dismissButton({ dismissLabel, dismissDisabled, onDismiss: handleDismiss, tabId: tab.id })}\n </span>\n )}\n </div>\n </TabItem>\n );\n }\n}\n\ninterface TabTriggerProps {\n tab: TabsProps.Tab;\n elementProps: React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>;\n activeTabId?: string;\n index: number;\n}\nconst TabTrigger = forwardRef(\n ({ tab, elementProps, activeTabId, index }: TabTriggerProps, ref: React.Ref<HTMLElement>) => {\n const refObject = useRef<HTMLElement>(null);\n const tabLabelRefObject = useRef<HTMLElement>(null);\n const mergedRef = useMergeRefs(refObject, ref);\n const { tabIndex } = useSingleTabStopNavigation(refObject);\n const isDisabledWithReason = tab.disabled && !!tab.disabledReason;\n const [showTooltip, setShowTooltip] = useState(false);\n const { targetProps, descriptionEl } = useHiddenDescription(tab.disabledReason);\n const children = (\n <>\n <span className={clsx(styles['tabs-tab-label'], analyticsSelectors['tab-label'])} ref={tabLabelRefObject}>\n {/* The label is wrapped with span so that whitespaces inside don't get trimmed. */}\n <span>{tab.label}</span>\n </span>\n {isDisabledWithReason && (\n <>\n {descriptionEl}\n {showTooltip && (\n <Tooltip\n className={styles['disabled-reason-tooltip']}\n trackRef={tabLabelRefObject}\n value={tab.disabledReason!}\n onDismiss={() => setShowTooltip(false)}\n />\n )}\n </>\n )}\n </>\n );\n\n const handlers = {\n onFocus: () => setShowTooltip(true),\n onBlur: () => setShowTooltip(false),\n onMouseEnter: () => setShowTooltip(true),\n onMouseLeave: () => setShowTooltip(false),\n };\n\n const analyticsSelectMetadata: GeneratedAnalyticsMetadataTabsSelect = {\n action: 'select',\n detail: {\n id: tab.id,\n label: `.${analyticsSelectors['tab-label']}`,\n position: `${index + 1}`,\n originTabId: activeTabId || '',\n },\n };\n\n const commonProps = {\n ...elementProps,\n ...(isDisabledWithReason ? targetProps : {}),\n ...(isDisabledWithReason ? handlers : {}),\n ref: mergedRef,\n tabIndex: tabIndex,\n ...(tab.disabled || tab.id === activeTabId ? {} : getAnalyticsMetadataAttribute(analyticsSelectMetadata)),\n };\n\n return tab.href ? (\n <a {...commonProps} href={tab.href}>\n {children}\n </a>\n ) : (\n <button {...commonProps} type=\"button\" disabled={tab.disabled && !isDisabledWithReason}>\n {children}\n </button>\n );\n }\n);\n\nexport function getTabElementId({ namespace, tabId }: { namespace: string; tabId: string }) {\n return namespace + '-' + tabId;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"tab-header-bar.js","sourceRoot":"","sources":["../../../src/tabs/tab-header-bar.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport React, { forwardRef, useEffect, useRef, useState } from 'react';\nimport clsx from 'clsx';\n\nimport { useContainerQuery } from '@cloudscape-design/component-toolkit';\nimport {\n SingleTabStopNavigationAPI,\n SingleTabStopNavigationProvider,\n useMergeRefs,\n useSingleTabStopNavigation,\n} from '@cloudscape-design/component-toolkit/internal';\nimport { getAnalyticsMetadataAttribute } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nimport { ButtonProps } from '../button/interfaces';\nimport { InternalButton } from '../button/internal';\nimport { useInternalI18n } from '../i18n/context';\nimport { getAllFocusables } from '../internal/components/focus-lock/utils';\nimport Tooltip from '../internal/components/tooltip';\nimport { hasModifierKeys, isPlainLeftClick } from '../internal/events';\nimport useHiddenDescription from '../internal/hooks/use-hidden-description';\nimport { usePrevious } from '../internal/hooks/use-previous';\nimport { useVisualRefresh } from '../internal/hooks/use-visual-mode';\nimport { KeyCode } from '../internal/keycode';\nimport { circleIndex } from '../internal/utils/circle-index';\nimport { isHTMLElement } from '../internal/utils/dom';\nimport handleKey from '../internal/utils/handle-key';\nimport {\n GeneratedAnalyticsMetadataTabsComponent,\n GeneratedAnalyticsMetadataTabsDismiss,\n GeneratedAnalyticsMetadataTabsSelect,\n} from './analytics-metadata/interfaces';\nimport { TabsProps } from './interfaces';\nimport {\n hasHorizontalOverflow,\n hasInlineEndOverflow,\n hasInlineStartOverflow,\n onPaginationClick,\n scrollIntoView,\n} from './scroll-utils';\n\nimport analyticsSelectors from './analytics-metadata/styles.css.js';\nimport styles from './styles.css.js';\nimport testUtilStyles from './test-classes/styles.css.js';\n\nconst tabSelector = `.${styles['tabs-tab-link']}`;\nconst focusedTabSelector = `.${styles['tabs-tab-focused']}`;\nconst focusableTabSelector = `.${styles['tabs-tab-focusable']}`;\n\nfunction dismissButton({\n dismissLabel,\n dismissDisabled,\n onDismiss,\n tabId,\n}: {\n dismissLabel?: string;\n dismissDisabled?: boolean;\n onDismiss: ButtonProps['onClick'];\n tabId: string;\n}) {\n return (\n <InternalButton\n onClick={onDismiss}\n variant=\"icon\"\n iconName=\"close\"\n formAction=\"none\"\n ariaLabel={dismissLabel}\n disabled={dismissDisabled}\n className={clsx(testUtilStyles['tab-dismiss-button'], analyticsSelectors['tab-dismiss-button'])}\n data-testid={`awsui-tab-dismiss-button-${tabId}`}\n />\n );\n}\n\ninterface TabHeaderBarProps {\n onChange: (changeDetail: TabsProps.ChangeDetail) => void;\n activeTabId: TabsProps['activeTabId'];\n tabs: TabsProps['tabs'];\n variant: TabsProps['variant'];\n idNamespace: string;\n ariaLabel?: string;\n ariaLabelledby?: string;\n i18nStrings?: TabsProps.I18nStrings;\n keyboardActivationMode: Required<TabsProps['keyboardActivationMode']>;\n actions?: TabsProps['actions'];\n}\n\nexport function TabHeaderBar({\n onChange,\n activeTabId,\n tabs,\n variant,\n idNamespace,\n ariaLabel,\n ariaLabelledby,\n i18nStrings,\n keyboardActivationMode,\n actions,\n}: TabHeaderBarProps) {\n const headerBarRef = useRef<HTMLUListElement>(null);\n const activeTabHeaderRef = useRef<null | HTMLElement>(null);\n const inlineStartOverflowButton = useRef<HTMLElement>(null);\n const i18n = useInternalI18n('tabs');\n\n const isVisualRefresh = useVisualRefresh();\n\n const containerObjectRef = useRef<HTMLDivElement>(null);\n const documentRef = useRef<null | Document>(typeof document !== 'undefined' ? document : null);\n const documentRefCallback = (node: null | Element) => (documentRef.current = node?.ownerDocument ?? document);\n const [widthChange, containerMeasureRef] = useContainerQuery<number>(rect => rect.contentBoxWidth);\n const containerRef = useMergeRefs(containerObjectRef, containerMeasureRef, documentRefCallback);\n const tabRefs = useRef<Map<string, HTMLElement>>(new Map());\n const [horizontalOverflow, setHorizontalOverflow] = useState(false);\n const [inlineStartOverflow, setInlineStartOverflow] = useState(false);\n const [inlineEndOverflow, setInlineEndOverflow] = useState(false);\n const [focusedTabId, setFocusedTabId] = useState(activeTabId);\n const [previousActiveTabId, setPreviousActiveTabId] = useState<string | undefined>(activeTabId);\n const hasActionOrDismissible = tabs.some(tab => tab.action || tab.dismissible);\n const hadActionOrDismissible = usePrevious(hasActionOrDismissible);\n const tabActionAttributes = hasActionOrDismissible\n ? {\n role: 'application',\n 'aria-roledescription': i18n(\n 'i18nStrings.tabsWithActionsAriaRoleDescription',\n i18nStrings?.tabsWithActionsAriaRoleDescription\n ),\n }\n : {\n role: 'tablist',\n };\n\n useEffect(() => {\n if (hadActionOrDismissible && !hasActionOrDismissible) {\n // when tabs becomes non-dismissible (e.g. when all dismissible tabs are removed),\n // the hasActionOrDismissible is changing which causing tabs to re-mount to the React tree,\n // which, in turn, causes losing their refs, and the nextActive.focus() function inside handleDismiss does not focus on the next tab\n // so this code does\n getNextFocusTarget()?.focus();\n }\n }, [hasActionOrDismissible, hadActionOrDismissible]);\n\n useEffect(() => {\n if (headerBarRef.current) {\n setHorizontalOverflow(hasHorizontalOverflow(headerBarRef.current, inlineStartOverflowButton));\n setInlineStartOverflow(hasInlineStartOverflow(headerBarRef.current));\n setInlineEndOverflow(hasInlineEndOverflow(headerBarRef.current));\n }\n }, [widthChange, tabs]);\n\n const scrollIntoViewIfPossible = (smooth: boolean) => {\n if (!activeTabId) {\n return;\n }\n const activeTabRef = tabRefs.current.get(activeTabId);\n if (activeTabRef && headerBarRef.current) {\n scrollIntoView(activeTabRef, headerBarRef.current, smooth);\n }\n };\n\n useEffect(() => {\n // Delay scrollIntoView as the position is depending on parent elements\n // (effects are called inside-out in the component tree).\n // Wait one frame to allow parents to complete it's calculation.\n requestAnimationFrame(() => {\n scrollIntoViewIfPossible(false);\n });\n // Non-smooth scrolling should not be called upon activeId change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [horizontalOverflow, widthChange, tabs.length]);\n\n useEffect(() => {\n scrollIntoViewIfPossible(true);\n // Smooth scrolling should only be called upon activeId change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [activeTabId]);\n\n useEffect(() => {\n /*\n When the selected tab changes and we are currently already focused on a tab,\n move the focus to the newly selected tab.\n */\n if (documentRef.current && headerBarRef.current?.contains(documentRef.current.activeElement)) {\n if (documentRef.current.activeElement !== activeTabHeaderRef.current) {\n activeTabHeaderRef.current?.focus({ preventScroll: true });\n }\n }\n }, [activeTabId]);\n\n const onScroll = () => {\n if (headerBarRef.current) {\n setInlineStartOverflow(hasInlineStartOverflow(headerBarRef.current));\n setInlineEndOverflow(hasInlineEndOverflow(headerBarRef.current));\n }\n };\n\n const classes = clsx({\n [styles['tabs-header']]: true,\n [styles['tabs-header-with-divider']]: variant === 'default' || isVisualRefresh,\n });\n\n const leftButtonClasses = clsx({\n [styles['pagination-button']]: true,\n [styles['pagination-button-left']]: true,\n [styles['pagination-button-left-scrollable']]: inlineStartOverflow,\n });\n\n const rightButtonClasses = clsx({\n [styles['pagination-button']]: true,\n [styles['pagination-button-right']]: true,\n [styles['pagination-button-right-scrollable']]: inlineEndOverflow,\n });\n\n const navigationAPI = useRef<SingleTabStopNavigationAPI>(null);\n\n function getNextFocusTarget(): null | HTMLElement {\n if (!containerObjectRef.current) {\n return null;\n }\n const tabElements: HTMLButtonElement[] = Array.from(containerObjectRef.current.querySelectorAll(tabSelector));\n return tabElements.find(tab => tab.matches(focusedTabSelector)) ?? tabElements.find(tab => !tab.disabled) ?? null;\n }\n\n function onUnregisterActive(focusableElement: HTMLElement) {\n const isFocusableActionOrDismissible = !focusableElement.classList.contains(styles['tabs-tab-link']);\n if (!isFocusableActionOrDismissible) {\n const nextFocusTarget = navigationAPI.current?.getFocusTarget();\n const tabLinkButton = nextFocusTarget?.querySelector(`.${styles['tabs-tab-link']}`) as HTMLElement;\n tabLinkButton?.focus();\n }\n }\n\n useEffect(() => {\n navigationAPI.current?.updateFocusTarget();\n });\n function onFocus() {\n navigationAPI.current?.updateFocusTarget();\n }\n function onBlur() {\n navigationAPI.current?.updateFocusTarget();\n }\n\n function onKeyDown(event: React.KeyboardEvent) {\n const focusTarget = documentRef.current?.activeElement;\n const specialKeys = [\n KeyCode.right,\n KeyCode.left,\n KeyCode.end,\n KeyCode.home,\n KeyCode.pageUp,\n KeyCode.pageDown,\n KeyCode.space,\n ];\n const isActionOpen = documentRef.current?.querySelector(`.${styles['tabs-tab-action']} [aria-expanded=\"true\"]`);\n const isDismissOrActionFocused = !focusTarget?.classList.contains(styles['tabs-tab-link']);\n\n if (isActionOpen) {\n return;\n }\n if (event.key === 'Tab' && !event.shiftKey && isDismissOrActionFocused) {\n event.preventDefault();\n const panelId = `${idNamespace}-${activeTabId}-panel`;\n const panel = documentRef.current?.getElementById(panelId);\n panel?.focus();\n }\n if (hasModifierKeys(event) || specialKeys.indexOf(event.keyCode) === -1) {\n return;\n }\n if (!containerObjectRef.current || !focusTarget) {\n return;\n }\n\n event.preventDefault();\n\n const focusables = getFocusablesFrom(containerObjectRef.current);\n const activeIndex = isHTMLElement(focusTarget) ? focusables.indexOf(focusTarget) : -1;\n\n handleKey(event as any, {\n onHome: () => focusElement(focusables[0]),\n onEnd: () => focusElement(focusables[focusables.length - 1]),\n onInlineStart: () => focusElement(focusables[circleIndex(activeIndex - 1, [0, focusables.length - 1])]),\n onInlineEnd: () => focusElement(focusables[circleIndex(activeIndex + 1, [0, focusables.length - 1])]),\n onPageDown: () => inlineEndOverflow && onPaginationClick(headerBarRef, 'forward'),\n onPageUp: () => inlineStartOverflow && onPaginationClick(headerBarRef, 'backward'),\n onActivate: () =>\n focusedTabId &&\n focusedTabId !== activeTabId &&\n onChange({ activeTabId: focusedTabId, activeTabHref: tabs.find(tab => tab.id === focusedTabId)?.href }),\n });\n }\n function focusElement(element: HTMLElement) {\n element.focus();\n // If focusable element is a tab - fire the onChange for it.\n const tabsById = tabs.reduce((map, tab) => map.set(tab.id, tab), new Map<string, TabsProps.Tab>());\n for (const [tabId, focusTargetTabTriggerElement] of tabRefs.current.entries()) {\n const focusTargetTabLabelElement = focusTargetTabTriggerElement?.querySelector(`.${styles['tabs-tab-link']}`);\n if (tabId !== activeTabId && focusTargetTabLabelElement === element) {\n setPreviousActiveTabId(tabId);\n setFocusedTabId(tabId);\n\n if (!tabsById.get(tabId)?.disabled && keyboardActivationMode === 'automatic') {\n onChange({ activeTabId: tabId, activeTabHref: tabsById.get(tabId)?.href });\n }\n break;\n }\n }\n }\n // List all non-disabled and registered focusables: those are eligible for keyboard navigation.\n function getFocusablesFrom(target: HTMLElement) {\n function isElementRegistered(element: HTMLElement) {\n return navigationAPI.current?.isRegistered(element) ?? false;\n }\n function isElementFocusable(element: HTMLElement) {\n if (element instanceof HTMLButtonElement) {\n return !element.disabled || element.closest(focusableTabSelector);\n }\n\n return element.matches(focusableTabSelector);\n }\n return getAllFocusables(target).filter(el => isElementRegistered(el) && isElementFocusable(el));\n }\n\n const TabList = hasActionOrDismissible ? 'div' : 'ul';\n\n return (\n <div className={classes}>\n <div className={styles['tab-header-scroll-container']} ref={containerRef}>\n {horizontalOverflow && (\n <span ref={inlineStartOverflowButton} className={leftButtonClasses}>\n <InternalButton\n formAction=\"none\"\n variant=\"icon\"\n iconName=\"angle-left\"\n disabled={!inlineStartOverflow}\n __focusable={true}\n onClick={() => onPaginationClick(headerBarRef, 'backward')}\n ariaLabel={i18n('i18nStrings.scrollLeftAriaLabel', i18nStrings?.scrollLeftAriaLabel)}\n />\n </span>\n )}\n <SingleTabStopNavigationProvider\n ref={navigationAPI}\n navigationActive={true}\n getNextFocusTarget={getNextFocusTarget}\n onUnregisterActive={onUnregisterActive}\n >\n <TabList\n {...tabActionAttributes}\n className={clsx(styles['tabs-header-list'], analyticsSelectors['tabs-header-list'])}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n ref={headerBarRef as never}\n onScroll={onScroll}\n onKeyDown={onKeyDown}\n onFocus={onFocus}\n onBlur={onBlur}\n >\n {tabs.map(renderTabHeader)}\n </TabList>\n </SingleTabStopNavigationProvider>\n {horizontalOverflow && (\n <span className={rightButtonClasses}>\n <InternalButton\n formAction=\"none\"\n variant=\"icon\"\n iconName=\"angle-right\"\n disabled={!inlineEndOverflow}\n __focusable={true}\n onClick={() => onPaginationClick(headerBarRef, 'forward')}\n ariaLabel={i18n('i18nStrings.scrollRightAriaLabel', i18nStrings?.scrollRightAriaLabel)}\n />\n </span>\n )}\n </div>\n {actions && <div className={styles['actions-container']}>{actions}</div>}\n </div>\n );\n\n function renderTabHeader(tab: TabsProps.Tab, index: number) {\n const { dismissible, dismissLabel, dismissDisabled, action, onDismiss } = tab;\n const isActive = activeTabId === tab.id && !tab.disabled;\n\n const clickTab = (event: React.MouseEvent) => {\n if (tab.disabled) {\n event.preventDefault();\n return;\n }\n\n // if the primary mouse button is clicked with a modifier key, the browser will handle opening a new tab\n const specialKey = !isPlainLeftClick(event);\n if (specialKey && tab.href) {\n return;\n }\n\n event.preventDefault();\n // for browsers that do not focus buttons on button click\n if (!tab.href) {\n const clickedTabRef = tabRefs.current.get(tab.id) as undefined | HTMLButtonElement;\n if (clickedTabRef) {\n if (clickedTabRef && clickedTabRef !== documentRef.current?.activeElement) {\n clickedTabRef.focus({ preventScroll: true });\n }\n }\n }\n\n if (tab.id === activeTabId) {\n return;\n }\n\n setFocusedTabId(tab.id);\n setPreviousActiveTabId(tab.id);\n onChange({ activeTabId: tab.id, activeTabHref: tab.href });\n };\n\n const classes = clsx({\n [styles['tabs-tab-link']]: true,\n [styles.refresh]: isVisualRefresh,\n [styles['tabs-tab-active']]: activeTabId === tab.id && !tab.disabled,\n [styles['tabs-tab-focused']]: focusedTabId === tab.id,\n [styles['tabs-tab-active']]: isActive,\n [analyticsSelectors['active-tab-header']]: isActive,\n [styles['tabs-tab-disabled']]: tab.disabled,\n [styles['tabs-tab-focusable']]: !tab.disabled || (tab.disabled && !!tab.disabledReason),\n });\n\n const tabHeaderContainerClasses = clsx({\n [styles['tabs-tab-header-container']]: true,\n [styles.refresh]: isVisualRefresh,\n [styles['tabs-tab-active']]: isActive,\n [styles['tabs-tab-disabled']]: tab.disabled,\n [styles['tabs-tab-focusable']]: !tab.disabled || (tab.disabled && !!tab.disabledReason),\n });\n\n const tabActionClasses = clsx({\n [styles['tabs-tab-action']]: true,\n [styles['tabs-tab-active']]: isActive,\n });\n\n const commonProps: (JSX.IntrinsicElements['a'] | JSX.IntrinsicElements['button']) & { 'data-testid': string } = {\n className: classes,\n 'aria-controls': `${idNamespace}-${tab.id}-panel`,\n 'data-testid': tab.id,\n id: getTabElementId({ namespace: idNamespace, tabId: tab.id }),\n onClick: clickTab,\n };\n\n const tabHeaderContainerAriaProps = hasActionOrDismissible\n ? {\n role: 'group',\n 'aria-labelledby': commonProps.id,\n }\n : {};\n\n if (!hasActionOrDismissible) {\n commonProps['aria-selected'] = activeTabId === tab.id;\n commonProps.role = 'tab';\n } else {\n commonProps['aria-expanded'] = activeTabId === tab.id;\n }\n\n if (tab.disabled) {\n commonProps['aria-disabled'] = 'true';\n }\n\n const setElement = (tabElement: null | HTMLElement) => {\n if (tab.id === activeTabId) {\n activeTabHeaderRef.current = tabElement;\n }\n tabRefs.current.set(tab.id, tabElement as HTMLElement);\n };\n\n const handleDismiss: ButtonProps['onClick'] = event => {\n if (!containerObjectRef.current || !onDismiss) {\n return;\n }\n const tabElements = getFocusablesFrom(containerObjectRef.current).filter(el =>\n el.classList.contains(styles['tabs-tab-link'])\n );\n const activeTabIndex = tabElements.findIndex(el => el.dataset.testid === tab.id);\n tabElements.splice(activeTabIndex, 1);\n let nextActive: HTMLElement | undefined;\n if (previousActiveTabId && previousActiveTabId !== tab.id) {\n nextActive = tabElements.find(el => el.dataset.testid === previousActiveTabId);\n } else {\n nextActive = tabElements[Math.min(tabElements.length - 1, activeTabIndex)];\n }\n if (nextActive && nextActive.dataset.testid) {\n onChange({ activeTabId: nextActive.dataset.testid });\n setPreviousActiveTabId(nextActive.dataset.testid);\n nextActive.focus();\n }\n onDismiss(event);\n };\n\n const TabItem = hasActionOrDismissible ? 'div' : 'li';\n\n const analyticsDismissMetadata: GeneratedAnalyticsMetadataTabsDismiss = {\n action: 'dismiss',\n detail: {\n id: tab.id,\n label: `.${analyticsSelectors['tab-dismiss-button']}`,\n position: `${index + 1}`,\n },\n };\n\n const analyticsComponentMetadataInnerContext: Partial<GeneratedAnalyticsMetadataTabsComponent> = {\n innerContext: {\n tabId: tab.id,\n tabLabel: `.${analyticsSelectors['tab-label']}`,\n tabPosition: `${index + 1}`,\n },\n };\n\n return (\n <TabItem\n ref={(element: any) => tabRefs.current.set(tab.id, element as HTMLElement)}\n className={styles['tabs-tab']}\n role=\"presentation\"\n key={tab.id}\n >\n <div\n className={tabHeaderContainerClasses}\n {...tabHeaderContainerAriaProps}\n {...getAnalyticsMetadataAttribute({ component: analyticsComponentMetadataInnerContext })}\n >\n <TabTrigger ref={setElement} tab={tab} elementProps={commonProps} activeTabId={activeTabId} index={index} />\n {action && <span className={tabActionClasses}>{action}</span>}\n {dismissible && (\n <span className={styles['tabs-tab-dismiss']} {...getAnalyticsMetadataAttribute(analyticsDismissMetadata)}>\n {dismissButton({ dismissLabel, dismissDisabled, onDismiss: handleDismiss, tabId: tab.id })}\n </span>\n )}\n </div>\n </TabItem>\n );\n }\n}\n\ninterface TabTriggerProps {\n tab: TabsProps.Tab;\n elementProps: React.HTMLAttributes<HTMLAnchorElement | HTMLButtonElement>;\n activeTabId?: string;\n index: number;\n}\nconst TabTrigger = forwardRef(\n ({ tab, elementProps, activeTabId, index }: TabTriggerProps, ref: React.Ref<HTMLElement>) => {\n const refObject = useRef<HTMLElement>(null);\n const tabLabelRefObject = useRef<HTMLElement>(null);\n const mergedRef = useMergeRefs(refObject, ref);\n const { tabIndex } = useSingleTabStopNavigation(refObject);\n const isDisabledWithReason = tab.disabled && !!tab.disabledReason;\n const [showTooltip, setShowTooltip] = useState(false);\n const { targetProps, descriptionEl } = useHiddenDescription(tab.disabledReason);\n const children = (\n <>\n <span className={clsx(styles['tabs-tab-label'], analyticsSelectors['tab-label'])} ref={tabLabelRefObject}>\n {/* The label is wrapped with span so that whitespaces inside don't get trimmed. */}\n <span>{tab.label}</span>\n </span>\n {isDisabledWithReason && (\n <>\n {descriptionEl}\n {showTooltip && (\n <Tooltip\n className={styles['disabled-reason-tooltip']}\n trackRef={tabLabelRefObject}\n value={tab.disabledReason!}\n onDismiss={() => setShowTooltip(false)}\n />\n )}\n </>\n )}\n </>\n );\n\n const handlers = {\n onFocus: () => setShowTooltip(true),\n onBlur: () => setShowTooltip(false),\n onMouseEnter: () => setShowTooltip(true),\n onMouseLeave: () => setShowTooltip(false),\n };\n\n const analyticsSelectMetadata: GeneratedAnalyticsMetadataTabsSelect = {\n action: 'select',\n detail: {\n id: tab.id,\n label: `.${analyticsSelectors['tab-label']}`,\n position: `${index + 1}`,\n originTabId: activeTabId || '',\n },\n };\n\n const commonProps = {\n ...elementProps,\n ...(isDisabledWithReason ? targetProps : {}),\n ...(isDisabledWithReason ? handlers : {}),\n ref: mergedRef,\n tabIndex: tabIndex,\n ...(tab.disabled || tab.id === activeTabId ? {} : getAnalyticsMetadataAttribute(analyticsSelectMetadata)),\n };\n\n return tab.href ? (\n <a {...commonProps} href={tab.href}>\n {children}\n </a>\n ) : (\n <button {...commonProps} type=\"button\" disabled={tab.disabled && !isDisabledWithReason}>\n {children}\n </button>\n );\n }\n);\n\nexport function getTabElementId({ namespace, tabId }: { namespace: string; tabId: string }) {\n return namespace + '-' + tabId;\n}\n"]}
|
package/tag-editor/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tag-editor/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n'use client';\nimport React, { useCallback, useImperativeHandle, useLayoutEffect, useMemo, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { useStableCallback } from '@cloudscape-design/component-toolkit/internal';\n\nimport { AttributeEditorProps } from '../attribute-editor/interfaces';\nimport InternalAttributeEditor from '../attribute-editor/internal';\nimport { AutosuggestProps } from '../autosuggest/interfaces';\nimport InternalBox from '../box/internal';\nimport { FormFieldError } from '../form-field/internal';\nimport { useInternalI18n } from '../i18n/context';\nimport { InputProps } from '../input/interfaces';\nimport { getBaseProps } from '../internal/base-component';\nimport { fireNonCancelableEvent, NonCancelableCustomEvent } from '../internal/events';\nimport useBaseComponent from '../internal/hooks/use-base-component';\nimport { applyDisplayName } from '../internal/utils/apply-display-name';\nimport InternalLiveRegion from '../live-region/internal';\nimport InternalStatusIndicator from '../status-indicator/internal';\nimport { TagEditorProps } from './interfaces';\nimport { TagControl, UndoButton } from './internal';\nimport { useMemoizedArray } from './utils';\nimport { getTagsDiff } from './utils';\nimport { validate, ValidationError } from './validation';\n\nimport styles from './styles.css.js';\n\nexport { TagEditorProps, getTagsDiff };\n\ninterface InternalTag {\n tag: TagEditorProps.Tag;\n error?: ValidationError;\n}\n\nconst isItemRemovable = ({ tag }: InternalTag) => !tag.markedForRemoval;\n\nconst TagEditor = React.forwardRef(\n (\n {\n tags = [],\n i18nStrings,\n loading = false,\n tagLimit = 50,\n allowedCharacterPattern,\n keysRequest,\n valuesRequest,\n onChange,\n ...restProps\n }: TagEditorProps,\n ref: React.Ref<TagEditorProps.Ref>\n ) => {\n const baseComponentProps = useBaseComponent('TagEditor', {\n props: { tagLimit, allowedCharacterPattern },\n });\n const i18n = useInternalI18n('tag-editor');\n\n const remainingTags = tagLimit - tags.filter(tag => !tag.markedForRemoval).length;\n\n const attributeEditorRef = useRef<AttributeEditorProps.Ref>(null);\n const keyInputRefs = useRef<(InputProps.Ref | undefined | null)[]>([]);\n const valueInputRefs = useRef<(InputProps.Ref | undefined | null)[]>([]);\n const undoButtonRefs = useRef<(HTMLAnchorElement | undefined | null)[]>([]);\n\n const initialKeyOptionsRef = useRef<AutosuggestProps.Options>([]);\n const keyDirtyStateRef = useRef<boolean[]>([]);\n const focusEventRef = useRef<() => void>();\n\n useLayoutEffect(() => {\n focusEventRef.current?.apply(undefined);\n focusEventRef.current = undefined;\n });\n\n const errors = validate(\n tags,\n keyDirtyStateRef.current,\n i18n,\n i18nStrings,\n allowedCharacterPattern ? new RegExp(allowedCharacterPattern) : undefined\n );\n\n const internalTags = useMemoizedArray(\n tags.map((tag, i) => ({ tag, error: errors[i] })),\n (prev, next) => {\n return prev.tag === next.tag && prev.error?.key === next.error?.key && prev.error?.value === next.error?.value;\n }\n );\n\n useImperativeHandle(\n ref,\n () => ({\n focus() {\n const errorIndex = internalTags.findIndex(({ error }) => error?.key || error?.value);\n if (errorIndex !== -1) {\n const refArray = internalTags[errorIndex].error?.key ? keyInputRefs : valueInputRefs;\n refArray.current[errorIndex]?.focus();\n }\n },\n }),\n [internalTags]\n );\n\n const validateAndFire = useCallback(\n (newTags: ReadonlyArray<TagEditorProps.Tag>) => {\n fireNonCancelableEvent(onChange, {\n tags: newTags,\n valid: !validate(\n newTags,\n keyDirtyStateRef.current,\n i18n,\n i18nStrings,\n allowedCharacterPattern ? new RegExp(allowedCharacterPattern) : undefined\n ).some(error => error),\n });\n },\n [onChange, i18n, i18nStrings, allowedCharacterPattern]\n );\n\n const onAddButtonClick = () => {\n validateAndFire([...tags, { key: '', value: '', existing: false }]);\n focusEventRef.current = () => {\n keyInputRefs.current[tags.length]?.focus();\n };\n };\n\n const onRemoveButtonClick = useStableCallback(\n ({ detail }: NonCancelableCustomEvent<AttributeEditorProps.RemoveButtonClickDetail>) => {\n const existing = tags[detail.itemIndex].existing;\n validateAndFire([\n ...tags.slice(0, detail.itemIndex),\n ...(existing ? [{ ...tags[detail.itemIndex], markedForRemoval: true }] : []),\n ...tags.slice(detail.itemIndex + 1),\n ]);\n if (existing) {\n focusEventRef.current = () => {\n undoButtonRefs.current[detail.itemIndex]?.focus();\n };\n } else {\n keyDirtyStateRef.current.splice(detail.itemIndex, 1);\n const nextKey = keyInputRefs.current[detail.itemIndex + 1];\n if (nextKey) {\n // if next key is present, focus _current_ key which will be replaced by next after state update\n keyInputRefs.current[detail.itemIndex]?.focus();\n } else if (detail.itemIndex > 0) {\n // otherwise focus previous key/value/undo button\n const previousIsExisting = tags[detail.itemIndex - 1].existing;\n if (previousIsExisting) {\n if (tags[detail.itemIndex - 1].markedForRemoval) {\n undoButtonRefs.current[detail.itemIndex - 1]?.focus();\n } else {\n valueInputRefs.current[detail.itemIndex - 1]?.focus();\n }\n } else {\n keyInputRefs.current[detail.itemIndex - 1]?.focus();\n }\n } else {\n // or the 'add' button\n attributeEditorRef.current?.focusAddButton();\n }\n }\n }\n );\n\n const onKeyChange = useStableCallback((value: string, row: number) => {\n keyDirtyStateRef.current[row] = true;\n validateAndFire([...tags.slice(0, row), { ...tags[row], key: value }, ...tags.slice(row + 1)]);\n });\n\n const onKeyBlur = useStableCallback((row: number) => {\n keyDirtyStateRef.current[row] = true;\n // Force re-render by providing a new array reference\n validateAndFire([...tags]);\n });\n\n const onValueChange = useStableCallback((value: string, row: number) => {\n validateAndFire([...tags.slice(0, row), { ...tags[row], value }, ...tags.slice(row + 1)]);\n });\n\n const onUndoRemoval = useStableCallback((row: number) => {\n validateAndFire([...tags.slice(0, row), { ...tags[row], markedForRemoval: false }, ...tags.slice(row + 1)]);\n focusEventRef.current = () => {\n attributeEditorRef.current?.focusRemoveButton(row);\n };\n });\n\n const definition = useMemo(\n () => [\n {\n label: i18n('i18nStrings.keyHeader', i18nStrings?.keyHeader),\n control: ({ tag }: InternalTag, row: number) => (\n <TagControl\n row={row}\n value={tag.key}\n readOnly={tag.existing}\n limit={200}\n defaultOptions={[]}\n placeholder={i18n('i18nStrings.keyPlaceholder', i18nStrings?.keyPlaceholder)}\n errorText={i18n('i18nStrings.keysSuggestionError', i18nStrings?.keysSuggestionError)}\n loadingText={i18n('i18nStrings.keysSuggestionLoading', i18nStrings?.keysSuggestionLoading)}\n suggestionText={i18n('i18nStrings.keySuggestion', i18nStrings?.keySuggestion)}\n tooManySuggestionText={i18n('i18nStrings.tooManyKeysSuggestion', i18nStrings?.tooManyKeysSuggestion)}\n enteredTextLabel={i18nStrings?.enteredKeyLabel}\n clearAriaLabel={i18nStrings?.clearAriaLabel}\n onRequest={keysRequest}\n onChange={onKeyChange}\n onBlur={onKeyBlur}\n initialOptionsRef={initialKeyOptionsRef}\n ref={ref => {\n keyInputRefs.current[row] = ref;\n }}\n />\n ),\n errorText: ({ error }: InternalTag) => error?.key,\n },\n {\n label: (\n <span>\n {i18n('i18nStrings.valueHeader', i18nStrings?.valueHeader)} -{' '}\n <i>{i18n('i18nStrings.optional', i18nStrings?.optional)}</i>\n </span>\n ),\n control: ({ tag }: InternalTag, row: number) =>\n tag.markedForRemoval ? (\n <div role=\"alert\">\n <InternalBox margin={{ top: 'xxs' }}>\n {i18n('i18nStrings.undoPrompt', i18nStrings?.undoPrompt)}{' '}\n <UndoButton\n onClick={() => onUndoRemoval(row)}\n ref={elem => {\n undoButtonRefs.current[row] = elem;\n }}\n >\n {i18n('i18nStrings.undoButton', i18nStrings?.undoButton)}\n </UndoButton>\n </InternalBox>\n </div>\n ) : (\n <TagControl\n row={row}\n value={tag.value}\n readOnly={false}\n limit={200}\n defaultOptions={tag.valueSuggestionOptions ?? []}\n placeholder={i18n('i18nStrings.valuePlaceholder', i18nStrings?.valuePlaceholder)}\n errorText={i18n('i18nStrings.valuesSuggestionError', i18nStrings?.valuesSuggestionError)}\n loadingText={i18n('i18nStrings.valuesSuggestionLoading', i18nStrings?.valuesSuggestionLoading)}\n suggestionText={i18n('i18nStrings.valueSuggestion', i18nStrings?.valueSuggestion)}\n tooManySuggestionText={i18n(\n 'i18nStrings.tooManyValuesSuggestion',\n i18nStrings?.tooManyValuesSuggestion\n )}\n enteredTextLabel={i18nStrings?.enteredValueLabel}\n clearAriaLabel={i18nStrings?.clearAriaLabel}\n filteringKey={tag.key}\n onRequest={valuesRequest && (value => valuesRequest(tag.key, value))}\n onChange={onValueChange}\n ref={ref => {\n valueInputRefs.current[row] = ref;\n }}\n />\n ),\n errorText: ({ error }: InternalTag) => error?.value,\n },\n ],\n [i18n, i18nStrings, keysRequest, onKeyChange, onKeyBlur, valuesRequest, onValueChange, onUndoRemoval]\n );\n\n const forwardedI18nStrings = useMemo<AttributeEditorProps.I18nStrings<InternalTag>>(\n () => ({\n errorIconAriaLabel: i18nStrings?.errorIconAriaLabel,\n itemRemovedAriaLive: i18nStrings?.itemRemovedAriaLive,\n removeButtonAriaLabel: i18n(\n 'i18nStrings.removeButtonAriaLabel',\n i18nStrings?.removeButtonAriaLabel && (({ tag }) => i18nStrings.removeButtonAriaLabel!(tag)),\n format =>\n ({ tag }) =>\n format({ tag__key: tag.key })\n ),\n }),\n [i18nStrings, i18n]\n );\n\n if (loading) {\n return (\n <div className={styles.root} ref={baseComponentProps.__internalRootRef}>\n <InternalStatusIndicator className={styles.loading} type=\"loading\">\n <InternalLiveRegion tagName=\"span\">{i18n('i18nStrings.loading', i18nStrings?.loading)}</InternalLiveRegion>\n </InternalStatusIndicator>\n </div>\n );\n }\n\n const baseProps = getBaseProps(restProps);\n return (\n <InternalAttributeEditor<InternalTag>\n {...baseProps}\n {...baseComponentProps}\n ref={attributeEditorRef}\n className={clsx(styles.root, baseProps.className)}\n items={internalTags}\n isItemRemovable={isItemRemovable}\n onAddButtonClick={onAddButtonClick}\n onRemoveButtonClick={onRemoveButtonClick}\n addButtonText={i18n('i18nStrings.addButton', i18nStrings?.addButton) ?? ''}\n removeButtonText={i18nStrings?.removeButton}\n disableAddButton={remainingTags <= 0}\n empty={i18n('i18nStrings.emptyTags', i18nStrings?.emptyTags)}\n addButtonVariant=\"normal\"\n additionalInfo={\n remainingTags < 0 ? (\n <FormFieldError errorIconAriaLabel={i18nStrings?.errorIconAriaLabel}>\n {i18n('i18nStrings.tagLimitExceeded', i18nStrings?.tagLimitExceeded?.(tagLimit), format =>\n format({ tagLimit })\n ) ?? ''}\n </FormFieldError>\n ) : remainingTags === 0 ? (\n (i18n('i18nStrings.tagLimitReached', i18nStrings?.tagLimitReached?.(tagLimit), format =>\n format({ tagLimit })\n ) ?? '')\n ) : (\n i18n('i18nStrings.tagLimit', i18nStrings?.tagLimit?.(remainingTags, tagLimit), format =>\n format({ tagLimitAvailable: `${remainingTags === tagLimit}`, availableTags: remainingTags, tagLimit })\n )\n )\n }\n definition={definition}\n i18nStrings={forwardedI18nStrings}\n />\n );\n }\n);\n\napplyDisplayName(TagEditor, 'TagEditor');\nexport default TagEditor;\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tag-editor/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n'use client';\nimport React, { useCallback, useImperativeHandle, useLayoutEffect, useMemo, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { useStableCallback } from '@cloudscape-design/component-toolkit/internal';\n\nimport { AttributeEditorProps } from '../attribute-editor/interfaces';\nimport InternalAttributeEditor from '../attribute-editor/internal';\nimport { AutosuggestProps } from '../autosuggest/interfaces';\nimport InternalBox from '../box/internal';\nimport { FormFieldError } from '../form-field/internal';\nimport { useInternalI18n } from '../i18n/context';\nimport { InputProps } from '../input/interfaces';\nimport { getBaseProps } from '../internal/base-component';\nimport { fireNonCancelableEvent, NonCancelableCustomEvent } from '../internal/events';\nimport useBaseComponent from '../internal/hooks/use-base-component';\nimport { applyDisplayName } from '../internal/utils/apply-display-name';\nimport InternalLiveRegion from '../live-region/internal';\nimport InternalStatusIndicator from '../status-indicator/internal';\nimport { TagEditorProps } from './interfaces';\nimport { TagControl, UndoButton } from './internal';\nimport { useMemoizedArray } from './utils';\nimport { getTagsDiff } from './utils';\nimport { validate, ValidationError } from './validation';\n\nimport styles from './styles.css.js';\n\nexport { TagEditorProps, getTagsDiff };\n\ninterface InternalTag {\n tag: TagEditorProps.Tag;\n error?: ValidationError;\n}\n\nconst isItemRemovable = ({ tag }: InternalTag) => !tag.markedForRemoval;\n\nconst TagEditor = React.forwardRef(\n (\n {\n tags = [],\n i18nStrings,\n loading = false,\n tagLimit = 50,\n allowedCharacterPattern,\n keysRequest,\n valuesRequest,\n onChange,\n ...restProps\n }: TagEditorProps,\n ref: React.Ref<TagEditorProps.Ref>\n ) => {\n const baseComponentProps = useBaseComponent('TagEditor', {\n props: { tagLimit, allowedCharacterPattern },\n });\n const i18n = useInternalI18n('tag-editor');\n\n const remainingTags = tagLimit - tags.filter(tag => !tag.markedForRemoval).length;\n\n const attributeEditorRef = useRef<AttributeEditorProps.Ref>(null);\n const keyInputRefs = useRef<(InputProps.Ref | undefined | null)[]>([]);\n const valueInputRefs = useRef<(InputProps.Ref | undefined | null)[]>([]);\n const undoButtonRefs = useRef<(HTMLAnchorElement | undefined | null)[]>([]);\n\n const initialKeyOptionsRef = useRef<AutosuggestProps.Options>([]);\n const keyDirtyStateRef = useRef<boolean[]>([]);\n const focusEventRef = useRef<() => void>();\n\n useLayoutEffect(() => {\n focusEventRef.current?.apply(undefined);\n focusEventRef.current = undefined;\n });\n\n const errors = validate(\n tags,\n keyDirtyStateRef.current,\n i18n,\n i18nStrings,\n allowedCharacterPattern ? new RegExp(allowedCharacterPattern) : undefined\n );\n\n const internalTags = useMemoizedArray(\n tags.map((tag, i) => ({ tag, error: errors[i] })),\n (prev, next) => {\n return prev.tag === next.tag && prev.error?.key === next.error?.key && prev.error?.value === next.error?.value;\n }\n );\n\n useImperativeHandle(\n ref,\n () => ({\n focus() {\n const errorIndex = internalTags.findIndex(({ error }) => error?.key || error?.value);\n if (errorIndex !== -1) {\n const refArray = internalTags[errorIndex].error?.key ? keyInputRefs : valueInputRefs;\n refArray.current[errorIndex]?.focus();\n }\n },\n }),\n [internalTags]\n );\n\n const validateAndFire = useCallback(\n (newTags: ReadonlyArray<TagEditorProps.Tag>) => {\n fireNonCancelableEvent(onChange, {\n tags: newTags,\n valid: !validate(\n newTags,\n keyDirtyStateRef.current,\n i18n,\n i18nStrings,\n allowedCharacterPattern ? new RegExp(allowedCharacterPattern) : undefined\n ).some(error => error),\n });\n },\n [onChange, i18n, i18nStrings, allowedCharacterPattern]\n );\n\n const onAddButtonClick = () => {\n validateAndFire([...tags, { key: '', value: '', existing: false }]);\n focusEventRef.current = () => {\n keyInputRefs.current[tags.length]?.focus();\n };\n };\n\n const onRemoveButtonClick = useStableCallback(\n ({ detail }: NonCancelableCustomEvent<AttributeEditorProps.RemoveButtonClickDetail>) => {\n const existing = tags[detail.itemIndex].existing;\n validateAndFire([\n ...tags.slice(0, detail.itemIndex),\n ...(existing ? [{ ...tags[detail.itemIndex], markedForRemoval: true }] : []),\n ...tags.slice(detail.itemIndex + 1),\n ]);\n if (existing) {\n focusEventRef.current = () => {\n undoButtonRefs.current[detail.itemIndex]?.focus();\n };\n } else {\n keyDirtyStateRef.current.splice(detail.itemIndex, 1);\n const nextKey = keyInputRefs.current[detail.itemIndex + 1];\n if (nextKey) {\n // if next key is present, focus _current_ key which will be replaced by next after state update\n keyInputRefs.current[detail.itemIndex]?.focus();\n } else if (detail.itemIndex > 0) {\n // otherwise focus previous key/value/undo button\n const previousIsExisting = tags[detail.itemIndex - 1].existing;\n if (previousIsExisting) {\n if (tags[detail.itemIndex - 1].markedForRemoval) {\n undoButtonRefs.current[detail.itemIndex - 1]?.focus();\n } else {\n valueInputRefs.current[detail.itemIndex - 1]?.focus();\n }\n } else {\n keyInputRefs.current[detail.itemIndex - 1]?.focus();\n }\n } else {\n // or the 'add' button\n attributeEditorRef.current?.focusAddButton();\n }\n }\n }\n );\n\n const onKeyChange = useStableCallback((value: string, row: number) => {\n keyDirtyStateRef.current[row] = true;\n validateAndFire([...tags.slice(0, row), { ...tags[row], key: value }, ...tags.slice(row + 1)]);\n });\n\n const onKeyBlur = useStableCallback((row: number) => {\n keyDirtyStateRef.current[row] = true;\n // Force re-render by providing a new array reference\n validateAndFire([...tags]);\n });\n\n const onValueChange = useStableCallback((value: string, row: number) => {\n validateAndFire([...tags.slice(0, row), { ...tags[row], value }, ...tags.slice(row + 1)]);\n });\n\n const onUndoRemoval = useStableCallback((row: number) => {\n validateAndFire([...tags.slice(0, row), { ...tags[row], markedForRemoval: false }, ...tags.slice(row + 1)]);\n focusEventRef.current = () => {\n attributeEditorRef.current?.focusRemoveButton(row);\n };\n });\n\n const definition = useMemo(\n () => [\n {\n label: i18n('i18nStrings.keyHeader', i18nStrings?.keyHeader),\n control: ({ tag }: InternalTag, row: number) => (\n <TagControl\n row={row}\n value={tag.key}\n readOnly={tag.existing}\n limit={200}\n defaultOptions={[]}\n placeholder={i18n('i18nStrings.keyPlaceholder', i18nStrings?.keyPlaceholder)}\n errorText={i18n('i18nStrings.keysSuggestionError', i18nStrings?.keysSuggestionError)}\n loadingText={i18n('i18nStrings.keysSuggestionLoading', i18nStrings?.keysSuggestionLoading)}\n suggestionText={i18n('i18nStrings.keySuggestion', i18nStrings?.keySuggestion)}\n tooManySuggestionText={i18n('i18nStrings.tooManyKeysSuggestion', i18nStrings?.tooManyKeysSuggestion)}\n enteredTextLabel={i18nStrings?.enteredKeyLabel}\n clearAriaLabel={i18nStrings?.clearAriaLabel}\n onRequest={keysRequest}\n onChange={onKeyChange}\n onBlur={onKeyBlur}\n initialOptionsRef={initialKeyOptionsRef}\n ref={ref => {\n keyInputRefs.current[row] = ref;\n }}\n />\n ),\n errorText: ({ error }: InternalTag) => error?.key,\n },\n {\n label: (\n <span>\n {i18n('i18nStrings.valueHeader', i18nStrings?.valueHeader)} -{' '}\n <i>{i18n('i18nStrings.optional', i18nStrings?.optional)}</i>\n </span>\n ),\n control: ({ tag }: InternalTag, row: number) =>\n tag.markedForRemoval ? (\n <div role=\"alert\">\n <InternalBox margin={{ top: 'xxs' }}>\n {i18n('i18nStrings.undoPrompt', i18nStrings?.undoPrompt)}{' '}\n <UndoButton\n onClick={() => onUndoRemoval(row)}\n ref={elem => {\n undoButtonRefs.current[row] = elem;\n }}\n >\n {i18n('i18nStrings.undoButton', i18nStrings?.undoButton)}\n </UndoButton>\n </InternalBox>\n </div>\n ) : (\n <TagControl\n row={row}\n value={tag.value}\n readOnly={false}\n limit={200}\n defaultOptions={tag.valueSuggestionOptions ?? []}\n placeholder={i18n('i18nStrings.valuePlaceholder', i18nStrings?.valuePlaceholder)}\n errorText={i18n('i18nStrings.valuesSuggestionError', i18nStrings?.valuesSuggestionError)}\n loadingText={i18n('i18nStrings.valuesSuggestionLoading', i18nStrings?.valuesSuggestionLoading)}\n suggestionText={i18n('i18nStrings.valueSuggestion', i18nStrings?.valueSuggestion)}\n tooManySuggestionText={i18n(\n 'i18nStrings.tooManyValuesSuggestion',\n i18nStrings?.tooManyValuesSuggestion\n )}\n enteredTextLabel={i18nStrings?.enteredValueLabel}\n clearAriaLabel={i18nStrings?.clearAriaLabel}\n filteringKey={tag.key}\n onRequest={valuesRequest && (value => valuesRequest(tag.key, value))}\n onChange={onValueChange}\n ref={ref => {\n valueInputRefs.current[row] = ref;\n }}\n />\n ),\n errorText: ({ error }: InternalTag) => error?.value,\n },\n ],\n [i18n, i18nStrings, keysRequest, onKeyChange, onKeyBlur, valuesRequest, onValueChange, onUndoRemoval]\n );\n\n const forwardedI18nStrings = useMemo<AttributeEditorProps.I18nStrings<InternalTag>>(\n () => ({\n errorIconAriaLabel: i18nStrings?.errorIconAriaLabel,\n itemRemovedAriaLive: i18nStrings?.itemRemovedAriaLive,\n removeButtonAriaLabel: i18n(\n 'i18nStrings.removeButtonAriaLabel',\n i18nStrings?.removeButtonAriaLabel && (({ tag }) => i18nStrings.removeButtonAriaLabel!(tag)),\n format =>\n ({ tag }) =>\n format({ tag__key: tag.key })\n ),\n }),\n [i18nStrings, i18n]\n );\n\n if (loading) {\n return (\n <div className={styles.root} ref={baseComponentProps.__internalRootRef}>\n <InternalStatusIndicator className={styles.loading} type=\"loading\">\n <InternalLiveRegion tagName=\"span\">{i18n('i18nStrings.loading', i18nStrings?.loading)}</InternalLiveRegion>\n </InternalStatusIndicator>\n </div>\n );\n }\n\n const baseProps = getBaseProps(restProps);\n return (\n <InternalAttributeEditor<InternalTag>\n {...baseProps}\n {...baseComponentProps}\n ref={attributeEditorRef}\n className={clsx(styles.root, baseProps.className)}\n items={internalTags}\n isItemRemovable={isItemRemovable}\n onAddButtonClick={onAddButtonClick}\n onRemoveButtonClick={onRemoveButtonClick}\n addButtonText={i18n('i18nStrings.addButton', i18nStrings?.addButton) ?? ''}\n removeButtonText={i18nStrings?.removeButton}\n disableAddButton={remainingTags <= 0}\n empty={i18n('i18nStrings.emptyTags', i18nStrings?.emptyTags)}\n addButtonVariant=\"normal\"\n additionalInfo={\n remainingTags < 0 ? (\n <FormFieldError errorIconAriaLabel={i18nStrings?.errorIconAriaLabel}>\n {i18n('i18nStrings.tagLimitExceeded', i18nStrings?.tagLimitExceeded?.(tagLimit), format =>\n format({ tagLimit })\n ) ?? ''}\n </FormFieldError>\n ) : remainingTags === 0 ? (\n (i18n('i18nStrings.tagLimitReached', i18nStrings?.tagLimitReached?.(tagLimit), format =>\n format({ tagLimit })\n ) ?? '')\n ) : (\n i18n('i18nStrings.tagLimit', i18nStrings?.tagLimit?.(remainingTags, tagLimit), format =>\n format({ tagLimitAvailable: `${remainingTags === tagLimit}`, availableTags: remainingTags, tagLimit })\n )\n )\n }\n definition={definition}\n i18nStrings={forwardedI18nStrings}\n />\n );\n }\n);\n\napplyDisplayName(TagEditor, 'TagEditor');\nexport default TagEditor;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/tag-editor/internal.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGhD,OAAO,mBAAmB,MAAM,yBAAyB,CAAC;AAG1D,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAErF,OAAO,MAAM,MAAM,iBAAiB,CAAC;AA2BrC,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CACxC,CACE,EACE,GAAG,EACH,KAAK,EACL,QAAQ,EACR,cAAc,EACd,WAAW,EACX,SAAS,EACT,WAAW,EACX,cAAc,EACd,qBAAqB,EACrB,KAAK,EACL,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,QAAQ,EACR,MAAM,EACN,SAAS,EACT,iBAAiB,GACD,EAClB,GAA8B,EAC9B,EAAE;IACF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAA2B,cAAc,CAAC,CAAC;IACjF,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,EAAkC,CAAC;IAC/E,MAAM,kBAAkB,GAAG,MAAM,CAAqD;QACpF,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;QAChB,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK;KACzB,CAAC,CAAC;IAEH,MAAM,oBAAoB,GAAG,MAAM,CAAkB,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC3F,MAAM,WAAW,GAAG,CAAC,GAAuB,EAAE,KAAa,EAAE,EAAE,CAC7D,oBAAoB,CAAC,OAAO,CAAC,GAAG,KAAK,GAAG,IAAI,oBAAoB,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC;IAE3F,MAAM,WAAW,GAAG,CAAC,aAAqB,EAAE,EAAE;QAC5C,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC,YAAY,EAAE,aAAa,CAAC,IAAI,kBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/tag-editor/internal.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGhD,OAAO,mBAAmB,MAAM,yBAAyB,CAAC;AAG1D,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAErF,OAAO,MAAM,MAAM,iBAAiB,CAAC;AA2BrC,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CACxC,CACE,EACE,GAAG,EACH,KAAK,EACL,QAAQ,EACR,cAAc,EACd,WAAW,EACX,SAAS,EACT,WAAW,EACX,cAAc,EACd,qBAAqB,EACrB,KAAK,EACL,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,QAAQ,EACR,MAAM,EACN,SAAS,EACT,iBAAiB,GACD,EAClB,GAA8B,EAC9B,EAAE;IACF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAA2B,cAAc,CAAC,CAAC;IACjF,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,EAAkC,CAAC;IAC/E,MAAM,kBAAkB,GAAG,MAAM,CAAqD;QACpF,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;QAChB,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK;KACzB,CAAC,CAAC;IAEH,MAAM,oBAAoB,GAAG,MAAM,CAAkB,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC3F,MAAM,WAAW,GAAG,CAAC,GAAuB,EAAE,KAAa,EAAE,EAAE,CAC7D,oBAAoB,CAAC,OAAO,CAAC,GAAG,KAAK,GAAG,IAAI,oBAAoB,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC;IAE3F,MAAM,WAAW,GAAG,CAAC,aAAqB,EAAE,EAAE;QAC5C,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC,YAAY,EAAE,aAAa,CAAC,IAAI,kBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;YACvG,OAAO;QACT,CAAC;QACD,kBAAkB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAEpC,IAAI,oBAAoB,CAAC,OAAO,CAAC,GAAG,KAAK,YAAY,EAAE,CAAC;YACtD,wDAAwD;YACxD,UAAU,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;aAAM,IAAI,aAAa,KAAK,EAAE,KAAI,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,OAAO,CAAA,IAAI,iBAAiB,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtG,iFAAiF;YACjF,UAAU,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QAED,aAAa,CAAC,SAAS,CAAC,CAAC;QACzB,oBAAoB,CAAC,OAAO,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;QAE3E,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,eAAe,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;QACnF,OAAO;aACJ,IAAI,CAAC,SAAS,CAAC,EAAE;YAChB,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YACvD,aAAa,CAAC,SAAS,CAAC,CAAC;YACzB,UAAU,CAAC,UAAU,CAAC,CAAC;YACvB,IAAI,iBAAiB,EAAE,CAAC;gBACtB,iBAAiB,CAAC,OAAO,GAAG,UAAU,CAAC;YACzC,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE;YACX,IAAI,CAAC,CAAC,GAAG,YAAY,sBAAsB,CAAC,EAAE,CAAC;gBAC7C,aAAa,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;QACH,CAAC,CAAC,CAAC;QACL,kBAAkB,CAAC,OAAO,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IACvD,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,mBAAmB,IAClB,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAC9C,KAAK,EAAE,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,qBAAqB,EACtE,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,EACrD,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,GAAG,CAAC,EAC3B,OAAO,EAAE,GAAG,EAAE;YACZ,WAAW,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC,EACD,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;YAC1B,WAAW,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACpC,CAAC,GACD,CACH,CAAC;AACJ,CAAC,CACF,CAAC;AAOF,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CACxC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAmB,EAAE,GAAiC,EAAE,EAAE;IAC5E,OAAO,CACL,2BACE,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,EACX,SAAS,EAAE,MAAM,CAAC,aAAa,CAAC,EAChC,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,KAAK,CAAC,EAAE;YACjB,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC;gBACvE,KAAK,CAAC,cAAc,EAAE,CAAC;YACzB,CAAC;YACD,4DAA4D;YAC5D,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC;gBACpC,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,EACD,OAAO,EAAE,KAAK,CAAC,EAAE;YACf,sDAAsD;YACtD,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC;gBACpC,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,IAEA,QAAQ,CACP,CACL,CAAC;AACJ,CAAC,CACF,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useRef, useState } from 'react';\n\nimport { AutosuggestProps } from '../autosuggest/interfaces';\nimport InternalAutosuggest from '../autosuggest/internal';\nimport { InputProps } from '../input/interfaces';\nimport { DropdownStatusProps } from '../internal/components/dropdown-status';\nimport { KeyCode } from '../internal/keycode';\nimport { makeCancellable, PromiseCancelledSignal } from '../internal/utils/promises';\n\nimport styles from './styles.css.js';\n\ninterface FilteringParams {\n key?: string;\n value?: string;\n}\nexport interface TagControlProps {\n row: number;\n value: string;\n readOnly: boolean;\n defaultOptions: AutosuggestProps.Options;\n placeholder?: string;\n errorText?: string;\n loadingText?: string;\n suggestionText?: string;\n tooManySuggestionText?: string;\n limit: number;\n filteringKey?: string;\n clearAriaLabel?: string;\n enteredTextLabel?: (value: string) => string;\n onChange: (value: string, row: number) => void;\n onBlur?: (row: number) => void;\n onRequest?: (value: string) => Promise<readonly string[]>;\n\n initialOptionsRef?: React.MutableRefObject<AutosuggestProps.Options>;\n}\n\nexport const TagControl = React.forwardRef(\n (\n {\n row,\n value,\n readOnly,\n defaultOptions,\n placeholder,\n errorText,\n loadingText,\n suggestionText,\n tooManySuggestionText,\n limit,\n filteringKey,\n enteredTextLabel,\n clearAriaLabel,\n onChange,\n onBlur,\n onRequest,\n initialOptionsRef,\n }: TagControlProps,\n ref: React.Ref<InputProps.Ref>\n ) => {\n const [options, setOptions] = useState<AutosuggestProps.Options>(defaultOptions);\n const [statusType, setStatusType] = useState<DropdownStatusProps.StatusType>();\n const requestCancelFnRef = useRef<{ cancel: () => void; isCancelled: () => boolean }>({\n cancel: () => {},\n isCancelled: () => false,\n });\n\n const latestFilteringQuery = useRef<FilteringParams>({ key: undefined, value: undefined });\n const isSameQuery = (key: string | undefined, value: string) =>\n latestFilteringQuery.current.key === key && latestFilteringQuery.current.value === value;\n\n const onLoadItems = (filteringText: string) => {\n if (!onRequest || isSameQuery(filteringKey, filteringText) || requestCancelFnRef.current.isCancelled()) {\n return;\n }\n requestCancelFnRef.current.cancel();\n\n if (latestFilteringQuery.current.key !== filteringKey) {\n // Reset suggestions for values if the key is different.\n setOptions([]);\n } else if (filteringText === '' && initialOptionsRef?.current && initialOptionsRef.current.length > 0) {\n // Load in the background, if the value is empty and we already have suggestions.\n setOptions(initialOptionsRef.current);\n }\n\n setStatusType('loading');\n latestFilteringQuery.current = { key: filteringKey, value: filteringText };\n\n const { promise, cancel, isCancelled } = makeCancellable(onRequest(filteringText));\n promise\n .then(newValues => {\n const newOptions = newValues.map(value => ({ value }));\n setStatusType(undefined);\n setOptions(newOptions);\n if (initialOptionsRef) {\n initialOptionsRef.current = newOptions;\n }\n })\n .catch(err => {\n if (!(err instanceof PromiseCancelledSignal)) {\n setStatusType('error');\n }\n });\n requestCancelFnRef.current = { cancel, isCancelled };\n };\n\n return (\n <InternalAutosuggest\n ref={ref}\n value={value}\n readOnly={readOnly}\n statusType={statusType}\n options={options.length < limit ? options : []}\n empty={options.length < limit ? suggestionText : tooManySuggestionText}\n placeholder={placeholder}\n errorText={errorText}\n loadingText={loadingText}\n enteredTextLabel={enteredTextLabel}\n clearAriaLabel={clearAriaLabel}\n onChange={({ detail }) => onChange(detail.value, row)}\n onBlur={() => onBlur?.(row)}\n onFocus={() => {\n onLoadItems('');\n }}\n onLoadItems={({ detail }) => {\n onLoadItems(detail.filteringText);\n }}\n />\n );\n }\n);\n\ninterface UndoButtonProps {\n children: React.ReactNode;\n onClick: () => void;\n}\n\nexport const UndoButton = React.forwardRef(\n ({ children, onClick }: UndoButtonProps, ref: React.Ref<HTMLAnchorElement>) => {\n return (\n <a\n ref={ref}\n role=\"button\"\n tabIndex={0}\n className={styles['undo-button']}\n onClick={onClick}\n onKeyDown={event => {\n if (event.keyCode === KeyCode.space || event.keyCode === KeyCode.enter) {\n event.preventDefault();\n }\n // Enter activates the button on key down instead of key up.\n if (event.keyCode === KeyCode.enter) {\n onClick();\n }\n }}\n onKeyUp={event => {\n // Emulate button behavior, which also fires on space.\n if (event.keyCode === KeyCode.space) {\n onClick();\n }\n }}\n >\n {children}\n </a>\n );\n }\n);\n"]}
|
package/tag-editor/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/tag-editor/utils.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,+CAA+C,CAAC;AAEzE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAG3D,SAAS,iBAAiB,CACxB,IAAsB,EACtB,IAAsB,EACtB,OAAsC;IAEtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/tag-editor/utils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { useEffect, useRef } from 'react';\n\nimport { warnOnce } from '@cloudscape-design/component-toolkit/internal';\n\nimport { isDevelopment } from '../internal/is-development';\nimport { TagEditorProps } from './interfaces';\n\nfunction makeMemoizedArray<T>(\n prev: ReadonlyArray<T>,\n next: ReadonlyArray<T>,\n isEqual: (prev: T, next: T) => boolean\n): ReadonlyArray<T> {\n for (let i = 0; i < Math.max(prev.length, next.length); i++) {\n // The next array is shorter, but all the items match.\n if (i === next.length) {\n return prev.slice(0, i);\n }\n // The prev array is shorter, but all the items so far match.\n if (i === prev.length) {\n return [...prev.slice(0, i), ...next.slice(i)];\n }\n // The item is not equal. Partition at this point.\n if (!isEqual(prev[i], next[i])) {\n return [...prev.slice(0, i), next[i], ...makeMemoizedArray(prev.slice(i + 1), next.slice(i + 1), isEqual)];\n }\n }\n\n // All the references match. Return the old array.\n return prev;\n}\n\nexport function useMemoizedArray<T>(array: ReadonlyArray<T>, isEqual: (prev: T, next: T) => boolean): ReadonlyArray<T> {\n const ref = useRef<ReadonlyArray<T>>(array);\n const updated = makeMemoizedArray(ref.current, array, isEqual);\n useEffect(() => {\n ref.current = updated;\n }, [updated]);\n return updated;\n}\n\ninterface GetTagsDiffResult {\n created: Record<string, string>;\n removed: string[];\n}\n\nfunction hasDuplicateKeys(arr: readonly TagEditorProps.Tag[]): boolean {\n const keys = arr.map(obj => obj.key);\n const uniqueKeys = new Set(keys);\n return uniqueKeys.size !== keys.length;\n}\n\n/**\n * Compares the initial tags with the current tags passed to the tag editor\n * and returns the differences, identifying which tags have been created or removed.\n *\n * This utility can be used to track tag changes and inform your tagging service about\n * the removed and added tags.\n *\n * @param initialTags - The original tags fetched from the backend or tagging service.\n * @param tags - The current tags provided to the tag editor, including any new or modified tags.\n * @returns An object containing two arrays:\n * - `created`: An record of tags that are new or updated (with modified values).\n * Each tag is represented by its `key` and `value`.\n * - `removed`: An array of tag keys that were present in the initial tags but marked for removal.\n *\n * Updated tags are treated as both `created` and `removed` tags.\n */\nexport function getTagsDiff(\n initialTags: readonly TagEditorProps.Tag[],\n tags: readonly TagEditorProps.Tag[]\n): GetTagsDiffResult {\n if (isDevelopment) {\n if (initialTags.some(t => !t.existing)) {\n warnOnce('getTagsDiff: existing property', 'all initial tags should have `existing` property set to `true`.');\n }\n if (hasDuplicateKeys(initialTags) || hasDuplicateKeys(tags)) {\n warnOnce('getTagsDiff: duplicate keys', 'tags should not have duplicate keys.');\n }\n }\n const updated = tags.filter(tag =>\n initialTags.some(({ key, value }) => {\n return !tag.markedForRemoval && tag.key === key && tag.existing && tag.value !== value;\n })\n );\n const created = [...tags.filter(tag => !tag.existing), ...updated]\n .map(({ key, value }) => ({ key, value }))\n .reduce((acc: Record<string, string>, tag) => {\n acc[tag.key] = tag.value;\n return acc;\n }, {});\n const removed = [...tags.filter(tag => tag.existing && tag.markedForRemoval), ...updated].map(t => t.key);\n\n return { created, removed };\n}\n"]}
|