@cloudscape-design/components 3.0.220 → 3.0.222
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/index.js +4 -4
- package/alert/index.js.map +1 -1
- package/alert/internal.js +14 -15
- package/alert/internal.js.map +1 -1
- package/annotation-context/annotation/annotation-icon.js +1 -2
- package/annotation-context/annotation/annotation-icon.js.map +1 -1
- package/annotation-context/annotation/annotation-popover.js +6 -7
- package/annotation-context/annotation/annotation-popover.js.map +1 -1
- package/annotation-context/annotation/annotation-trigger.js +4 -6
- package/annotation-context/annotation/annotation-trigger.js.map +1 -1
- package/annotation-context/annotation/closed-annotation.js +4 -5
- package/annotation-context/annotation/closed-annotation.js.map +1 -1
- package/annotation-context/annotation/open-annotation.js +2 -3
- package/annotation-context/annotation/open-annotation.js.map +1 -1
- package/annotation-context/context.js +7 -7
- package/annotation-context/context.js.map +1 -1
- package/annotation-context/index.js +62 -69
- package/annotation-context/index.js.map +1 -1
- package/app-layout/content-wrapper/index.js +2 -3
- package/app-layout/content-wrapper/index.js.map +1 -1
- package/app-layout/defaults.js +13 -14
- package/app-layout/defaults.js.map +1 -1
- package/app-layout/drawer.js +16 -18
- package/app-layout/drawer.js.map +1 -1
- package/app-layout/index.js +111 -113
- package/app-layout/index.js.map +1 -1
- package/app-layout/mobile-toolbar/index.js +7 -9
- package/app-layout/mobile-toolbar/index.js.map +1 -1
- package/app-layout/navigation-panel.js +5 -8
- package/app-layout/navigation-panel.js.map +1 -1
- package/app-layout/notifications/index.js +2 -2
- package/app-layout/notifications/index.js.map +1 -1
- package/app-layout/toggles/index.js +14 -22
- package/app-layout/toggles/index.js.map +1 -1
- package/app-layout/tools-and-split-panel.js +6 -9
- package/app-layout/tools-and-split-panel.js.map +1 -1
- package/app-layout/utils/use-content-height.js +14 -15
- package/app-layout/utils/use-content-height.js.map +1 -1
- package/app-layout/utils/use-content-width.js +8 -8
- package/app-layout/utils/use-content-width.js.map +1 -1
- package/app-layout/utils/use-focus-control.js +7 -8
- package/app-layout/utils/use-focus-control.js.map +1 -1
- package/app-layout/utils/use-observed-element.js +3 -3
- package/app-layout/utils/use-observed-element.js.map +1 -1
- package/app-layout/utils/use-window-width.js +4 -4
- package/app-layout/utils/use-window-width.js.map +1 -1
- package/app-layout/visual-refresh/app-bar.js +19 -20
- package/app-layout/visual-refresh/app-bar.js.map +1 -1
- package/app-layout/visual-refresh/background.js +9 -10
- package/app-layout/visual-refresh/background.js.map +1 -1
- package/app-layout/visual-refresh/context.js +101 -59
- package/app-layout/visual-refresh/context.js.map +1 -1
- package/app-layout/visual-refresh/header.js +6 -7
- package/app-layout/visual-refresh/header.js.map +1 -1
- package/app-layout/visual-refresh/index.js +3 -4
- package/app-layout/visual-refresh/index.js.map +1 -1
- package/app-layout/visual-refresh/layout.js +18 -21
- package/app-layout/visual-refresh/layout.js.map +1 -1
- package/app-layout/visual-refresh/main.js +17 -18
- package/app-layout/visual-refresh/main.js.map +1 -1
- package/app-layout/visual-refresh/navigation.js +22 -24
- package/app-layout/visual-refresh/navigation.js.map +1 -1
- package/app-layout/visual-refresh/notifications.js +6 -7
- package/app-layout/visual-refresh/notifications.js.map +1 -1
- package/app-layout/visual-refresh/split-panel.js +36 -43
- package/app-layout/visual-refresh/split-panel.js.map +1 -1
- package/app-layout/visual-refresh/tools.js +32 -34
- package/app-layout/visual-refresh/tools.js.map +1 -1
- package/app-layout/visual-refresh/trigger-button.js +5 -8
- package/app-layout/visual-refresh/trigger-button.js.map +1 -1
- package/area-chart/chart-container.js +18 -19
- package/area-chart/chart-container.js.map +1 -1
- package/area-chart/elements/area-chart-filter.js +7 -8
- package/area-chart/elements/area-chart-filter.js.map +1 -1
- package/area-chart/elements/area-chart-legend.js +6 -9
- package/area-chart/elements/area-chart-legend.js.map +1 -1
- package/area-chart/elements/area-series.js +12 -13
- package/area-chart/elements/area-series.js.map +1 -1
- package/area-chart/elements/chart-popover.js +4 -6
- package/area-chart/elements/chart-popover.js.map +1 -1
- package/area-chart/elements/data-series.js +14 -17
- package/area-chart/elements/data-series.js.map +1 -1
- package/area-chart/elements/highlighted-point.js +6 -7
- package/area-chart/elements/highlighted-point.js.map +1 -1
- package/area-chart/elements/threshold-series.js +5 -7
- package/area-chart/elements/threshold-series.js.map +1 -1
- package/area-chart/elements/use-highlight-details.js +28 -30
- package/area-chart/elements/use-highlight-details.js.map +1 -1
- package/area-chart/elements/vertical-marker.js +6 -7
- package/area-chart/elements/vertical-marker.js.map +1 -1
- package/area-chart/index.js +4 -4
- package/area-chart/index.js.map +1 -1
- package/area-chart/internal.js +40 -41
- package/area-chart/internal.js.map +1 -1
- package/area-chart/model/async-store.js +23 -30
- package/area-chart/model/async-store.js.map +1 -1
- package/area-chart/model/compute-chart-props.js +11 -12
- package/area-chart/model/compute-chart-props.js.map +1 -1
- package/area-chart/model/create-series-decorator.js +11 -13
- package/area-chart/model/create-series-decorator.js.map +1 -1
- package/area-chart/model/interactions-store.js +47 -54
- package/area-chart/model/interactions-store.js.map +1 -1
- package/area-chart/model/use-chart-model.js +85 -89
- package/area-chart/model/use-chart-model.js.map +1 -1
- package/area-chart/model/use-filter-props.js +6 -6
- package/area-chart/model/use-filter-props.js.map +1 -1
- package/area-chart/model/use-highlight-props.js +6 -6
- package/area-chart/model/use-highlight-props.js.map +1 -1
- package/area-chart/model/utils.js +46 -59
- package/area-chart/model/utils.js.map +1 -1
- package/attribute-editor/additional-info.js +2 -5
- package/attribute-editor/additional-info.js.map +1 -1
- package/attribute-editor/index.js +5 -5
- package/attribute-editor/index.js.map +1 -1
- package/attribute-editor/internal.js +20 -20
- package/attribute-editor/internal.js.map +1 -1
- package/attribute-editor/row.js +17 -25
- package/attribute-editor/row.js.map +1 -1
- package/autosuggest/autosuggest-option.js +12 -12
- package/autosuggest/autosuggest-option.js.map +1 -1
- package/autosuggest/index.js +6 -6
- package/autosuggest/index.js.map +1 -1
- package/autosuggest/internal.js +39 -39
- package/autosuggest/internal.js.map +1 -1
- package/autosuggest/load-more-controller.js +10 -14
- package/autosuggest/load-more-controller.js.map +1 -1
- package/autosuggest/options-controller.js +31 -32
- package/autosuggest/options-controller.js.map +1 -1
- package/autosuggest/options-list.js +12 -13
- package/autosuggest/options-list.js.map +1 -1
- package/autosuggest/plain-list.js +15 -17
- package/autosuggest/plain-list.js.map +1 -1
- package/autosuggest/utils/utils.js +12 -12
- package/autosuggest/utils/utils.js.map +1 -1
- package/autosuggest/virtual-list.js +14 -16
- package/autosuggest/virtual-list.js.map +1 -1
- package/badge/index.js +6 -6
- package/badge/index.js.map +1 -1
- package/bar-chart/index.js +6 -6
- package/bar-chart/index.js.map +1 -1
- package/box/index.js +4 -4
- package/box/index.js.map +1 -1
- package/box/internal.js +12 -12
- package/box/internal.js.map +1 -1
- package/breadcrumb-group/index.js +4 -4
- package/breadcrumb-group/index.js.map +1 -1
- package/breadcrumb-group/internal.js +24 -25
- package/breadcrumb-group/internal.js.map +1 -1
- package/breadcrumb-group/item/item.js +32 -34
- package/breadcrumb-group/item/item.js.map +1 -1
- package/button/icon-helper.js +6 -6
- package/button/icon-helper.js.map +1 -1
- package/button/index.js +6 -6
- package/button/index.js.map +1 -1
- package/button/internal.js +32 -33
- package/button/internal.js.map +1 -1
- package/button-dropdown/category-elements/category-element.js +3 -5
- package/button-dropdown/category-elements/category-element.js.map +1 -1
- package/button-dropdown/category-elements/expandable-category-element.js +23 -26
- package/button-dropdown/category-elements/expandable-category-element.js.map +1 -1
- package/button-dropdown/category-elements/mobile-expandable-category-element.js +27 -30
- package/button-dropdown/category-elements/mobile-expandable-category-element.js.map +1 -1
- package/button-dropdown/index.js +6 -6
- package/button-dropdown/index.js.map +1 -1
- package/button-dropdown/internal.js +28 -29
- package/button-dropdown/internal.js.map +1 -1
- package/button-dropdown/item-element/index.js +30 -36
- package/button-dropdown/item-element/index.js.map +1 -1
- package/button-dropdown/items-list.js +3 -4
- package/button-dropdown/items-list.js.map +1 -1
- package/button-dropdown/mobile-expandable-group/mobile-expandable-group.js +2 -4
- package/button-dropdown/mobile-expandable-group/mobile-expandable-group.js.map +1 -1
- package/button-dropdown/tooltip.js +22 -24
- package/button-dropdown/tooltip.js.map +1 -1
- package/button-dropdown/utils/create-items-tree.js +21 -23
- package/button-dropdown/utils/create-items-tree.js.map +1 -1
- package/button-dropdown/utils/menu-item.js +6 -9
- package/button-dropdown/utils/menu-item.js.map +1 -1
- package/button-dropdown/utils/move-highlight.js +3 -4
- package/button-dropdown/utils/move-highlight.js.map +1 -1
- package/button-dropdown/utils/use-button-dropdown.js +31 -33
- package/button-dropdown/utils/use-button-dropdown.js.map +1 -1
- package/button-dropdown/utils/use-hidden-description.js +3 -3
- package/button-dropdown/utils/use-hidden-description.js.map +1 -1
- package/button-dropdown/utils/use-highlighted-menu.js +40 -42
- package/button-dropdown/utils/use-highlighted-menu.js.map +1 -1
- package/button-dropdown/utils/utils.js +5 -9
- package/button-dropdown/utils/utils.js.map +1 -1
- package/calendar/grid/index.js +25 -28
- package/calendar/grid/index.js.map +1 -1
- package/calendar/header/header-button.js +4 -6
- package/calendar/header/header-button.js.map +1 -1
- package/calendar/header/index.js +1 -2
- package/calendar/header/index.js.map +1 -1
- package/calendar/index.js +4 -4
- package/calendar/index.js.map +1 -1
- package/calendar/internal.js +27 -27
- package/calendar/internal.js.map +1 -1
- package/calendar/utils/intl.js +12 -13
- package/calendar/utils/intl.js.map +1 -1
- package/calendar/utils/navigation.js +3 -3
- package/calendar/utils/navigation.js.map +1 -1
- package/cards/cards-layout-helper.js +12 -12
- package/cards/cards-layout-helper.js.map +1 -1
- package/cards/index.js +53 -63
- package/cards/index.js.map +1 -1
- package/checkbox/index.js +4 -4
- package/checkbox/index.js.map +1 -1
- package/checkbox/internal.d.ts +1 -0
- package/checkbox/internal.d.ts.map +1 -1
- package/checkbox/internal.js +9 -9
- package/checkbox/internal.js.map +1 -1
- package/code-editor/ace-modes.js +1 -1
- package/code-editor/ace-modes.js.map +1 -1
- package/code-editor/ace-themes.js +2 -2
- package/code-editor/ace-themes.js.map +1 -1
- package/code-editor/error-screen.js +3 -4
- package/code-editor/error-screen.js.map +1 -1
- package/code-editor/index.js +61 -65
- package/code-editor/index.js.map +1 -1
- package/code-editor/listeners.js +5 -5
- package/code-editor/listeners.js.map +1 -1
- package/code-editor/loading-screen.js +2 -2
- package/code-editor/loading-screen.js.map +1 -1
- package/code-editor/pane.js +21 -25
- package/code-editor/pane.js.map +1 -1
- package/code-editor/preferences-modal.js +12 -13
- package/code-editor/preferences-modal.js.map +1 -1
- package/code-editor/resizable-box/index.js +14 -15
- package/code-editor/resizable-box/index.js.map +1 -1
- package/code-editor/setup-editor.js +20 -20
- package/code-editor/setup-editor.js.map +1 -1
- package/code-editor/status-bar.js +19 -22
- package/code-editor/status-bar.js.map +1 -1
- package/code-editor/tab-button.js +7 -10
- package/code-editor/tab-button.js.map +1 -1
- package/code-editor/util.js +6 -6
- package/code-editor/util.js.map +1 -1
- package/collection-preferences/index.js +21 -23
- package/collection-preferences/index.js.map +1 -1
- package/collection-preferences/utils.js +25 -57
- package/collection-preferences/utils.js.map +1 -1
- package/collection-preferences/visible-content.js +23 -27
- package/collection-preferences/visible-content.js.map +1 -1
- package/column-layout/index.js +6 -6
- package/column-layout/index.js.map +1 -1
- package/column-layout/internal.js +20 -21
- package/column-layout/internal.js.map +1 -1
- package/column-layout/util.js +2 -2
- package/column-layout/util.js.map +1 -1
- package/container/index.js +5 -5
- package/container/index.js.map +1 -1
- package/container/internal.js +30 -31
- package/container/internal.js.map +1 -1
- package/container/use-sticky-header.js +25 -25
- package/container/use-sticky-header.js.map +1 -1
- package/content-layout/index.js +2 -3
- package/content-layout/index.js.map +1 -1
- package/content-layout/internal.js +15 -16
- package/content-layout/internal.js.map +1 -1
- package/date-input/index.js +3 -4
- package/date-input/index.js.map +1 -1
- package/date-input/internal.js +8 -8
- package/date-input/internal.js.map +1 -1
- package/date-picker/index.js +28 -28
- package/date-picker/index.js.map +1 -1
- package/date-range-picker/calendar/grids/grid.js +54 -57
- package/date-range-picker/calendar/grids/grid.js.map +1 -1
- package/date-range-picker/calendar/grids/index.js +27 -28
- package/date-range-picker/calendar/grids/index.js.map +1 -1
- package/date-range-picker/calendar/header/header-button.js +4 -6
- package/date-range-picker/calendar/header/header-button.js.map +1 -1
- package/date-range-picker/calendar/header/index.js +6 -7
- package/date-range-picker/calendar/header/index.js.map +1 -1
- package/date-range-picker/calendar/index.js +40 -45
- package/date-range-picker/calendar/index.js.map +1 -1
- package/date-range-picker/calendar/range-inputs.js +5 -6
- package/date-range-picker/calendar/range-inputs.js.map +1 -1
- package/date-range-picker/calendar/utils.js +2 -2
- package/date-range-picker/calendar/utils.js.map +1 -1
- package/date-range-picker/dropdown.js +29 -34
- package/date-range-picker/dropdown.js.map +1 -1
- package/date-range-picker/index.js +40 -43
- package/date-range-picker/index.js.map +1 -1
- package/date-range-picker/mode-switcher.js +2 -3
- package/date-range-picker/mode-switcher.js.map +1 -1
- package/date-range-picker/relative-range/index.js +36 -40
- package/date-range-picker/relative-range/index.js.map +1 -1
- package/date-range-picker/time-offset.js +5 -5
- package/date-range-picker/time-offset.js.map +1 -1
- package/date-range-picker/utils.js +4 -5
- package/date-range-picker/utils.js.map +1 -1
- package/expandable-section/expandable-section-container.js +5 -5
- package/expandable-section/expandable-section-container.js.map +1 -1
- package/expandable-section/expandable-section-header.js +18 -23
- package/expandable-section/expandable-section-header.js.map +1 -1
- package/expandable-section/index.js +4 -4
- package/expandable-section/index.js.map +1 -1
- package/expandable-section/internal.js +22 -22
- package/expandable-section/internal.js.map +1 -1
- package/flashbar/collapsible-flashbar.js +103 -118
- package/flashbar/collapsible-flashbar.js.map +1 -1
- package/flashbar/common.js +26 -35
- package/flashbar/common.js.map +1 -1
- package/flashbar/constant.js +1 -1
- package/flashbar/constant.js.map +1 -1
- package/flashbar/flash.js +23 -26
- package/flashbar/flash.js.map +1 -1
- package/flashbar/index.js +3 -4
- package/flashbar/index.js.map +1 -1
- package/flashbar/internal/analytics.js +12 -12
- package/flashbar/internal/analytics.js.map +1 -1
- package/flashbar/non-collapsible-flashbar.js +10 -10
- package/flashbar/non-collapsible-flashbar.js.map +1 -1
- package/flashbar/utils.js +25 -27
- package/flashbar/utils.js.map +1 -1
- package/form/index.js +4 -4
- package/form/index.js.map +1 -1
- package/form/internal.js +5 -6
- package/form/internal.js.map +1 -1
- package/form-field/index.js +4 -4
- package/form-field/index.js.map +1 -1
- package/form-field/internal.js +20 -23
- package/form-field/internal.js.map +1 -1
- package/form-field/util.js +9 -10
- package/form-field/util.js.map +1 -1
- package/grid/index.js +6 -6
- package/grid/index.js.map +1 -1
- package/grid/internal.js +14 -15
- package/grid/internal.js.map +1 -1
- package/header/index.js +4 -4
- package/header/index.js.map +1 -1
- package/header/internal.js +15 -15
- package/header/internal.js.map +1 -1
- package/help-panel/index.js +7 -7
- package/help-panel/index.js.map +1 -1
- package/hotspot/index.js +12 -12
- package/hotspot/index.js.map +1 -1
- package/icon/icons.js +1 -1
- package/icon/index.js +4 -4
- package/icon/index.js.map +1 -1
- package/icon/internal.js +18 -18
- package/icon/internal.js.map +1 -1
- package/input/index.js +36 -17
- package/input/index.js.map +1 -1
- package/input/internal.js +30 -25
- package/input/internal.js.map +1 -1
- package/input/utils.js +4 -5
- package/input/utils.js.map +1 -1
- package/internal/animate.js +27 -32
- package/internal/animate.js.map +1 -1
- package/internal/base-component/index.js +2 -2
- package/internal/base-component/index.js.map +1 -1
- package/internal/breakpoints.js +7 -12
- package/internal/breakpoints.js.map +1 -1
- package/internal/components/abstract-switch/index.d.ts +2 -1
- package/internal/components/abstract-switch/index.d.ts.map +1 -1
- package/internal/components/abstract-switch/index.js +19 -19
- package/internal/components/abstract-switch/index.js.map +1 -1
- package/internal/components/abstract-switch/styles.css.js +13 -12
- package/internal/components/abstract-switch/styles.scoped.css +21 -21
- package/internal/components/abstract-switch/styles.selectors.js +13 -12
- package/internal/components/autosuggest-input/index.js +38 -38
- package/internal/components/autosuggest-input/index.js.map +1 -1
- package/internal/components/button-trigger/index.js +7 -7
- package/internal/components/button-trigger/index.js.map +1 -1
- package/internal/components/cartesian-chart/axis-label.js +1 -2
- package/internal/components/cartesian-chart/axis-label.js.map +1 -1
- package/internal/components/cartesian-chart/bottom-labels.js +20 -26
- package/internal/components/cartesian-chart/bottom-labels.js.map +1 -1
- package/internal/components/cartesian-chart/constants.js +5 -5
- package/internal/components/cartesian-chart/constants.js.map +1 -1
- package/internal/components/cartesian-chart/emphasized-baseline.js +4 -5
- package/internal/components/cartesian-chart/emphasized-baseline.js.map +1 -1
- package/internal/components/cartesian-chart/highlighted-point.js +1 -2
- package/internal/components/cartesian-chart/highlighted-point.js.map +1 -1
- package/internal/components/cartesian-chart/label-utils.js +20 -24
- package/internal/components/cartesian-chart/label-utils.js.map +1 -1
- package/internal/components/cartesian-chart/labels-measure.js +6 -7
- package/internal/components/cartesian-chart/labels-measure.js.map +1 -1
- package/internal/components/cartesian-chart/left-labels.js +13 -17
- package/internal/components/cartesian-chart/left-labels.js.map +1 -1
- package/internal/components/cartesian-chart/scales.js +21 -26
- package/internal/components/cartesian-chart/scales.js.map +1 -1
- package/internal/components/cartesian-chart/ticks.js +9 -10
- package/internal/components/cartesian-chart/ticks.js.map +1 -1
- package/internal/components/cartesian-chart/vertical-grid-lines.js +3 -4
- package/internal/components/cartesian-chart/vertical-grid-lines.js.map +1 -1
- package/internal/components/cartesian-chart/vertical-marker.js +3 -4
- package/internal/components/cartesian-chart/vertical-marker.js.map +1 -1
- package/internal/components/chart-filter/index.js +13 -14
- package/internal/components/chart-filter/index.js.map +1 -1
- package/internal/components/chart-legend/index.js +26 -29
- package/internal/components/chart-legend/index.js.map +1 -1
- package/internal/components/chart-plot/application-controller.js +21 -25
- package/internal/components/chart-plot/application-controller.js.map +1 -1
- package/internal/components/chart-plot/focus-outline.js +7 -8
- package/internal/components/chart-plot/focus-outline.js.map +1 -1
- package/internal/components/chart-plot/index.js +33 -34
- package/internal/components/chart-plot/index.js.map +1 -1
- package/internal/components/chart-popover/index.js +11 -12
- package/internal/components/chart-popover/index.js.map +1 -1
- package/internal/components/chart-series-details/index.js +13 -17
- package/internal/components/chart-series-details/index.js.map +1 -1
- package/internal/components/chart-series-marker/index.js +2 -3
- package/internal/components/chart-series-marker/index.js.map +1 -1
- package/internal/components/chart-status-container/index.js +8 -10
- package/internal/components/chart-status-container/index.js.map +1 -1
- package/internal/components/checkbox-icon/index.js +18 -19
- package/internal/components/checkbox-icon/index.js.map +1 -1
- package/internal/components/dark-ribbon/index.js +13 -14
- package/internal/components/dark-ribbon/index.js.map +1 -1
- package/internal/components/dropdown/context.js +4 -5
- package/internal/components/dropdown/context.js.map +1 -1
- package/internal/components/dropdown/dropdown-fit-handler.js +74 -81
- package/internal/components/dropdown/dropdown-fit-handler.js.map +1 -1
- package/internal/components/dropdown/index.js +57 -65
- package/internal/components/dropdown/index.js.map +1 -1
- package/internal/components/dropdown-footer/index.js +2 -6
- package/internal/components/dropdown-footer/index.js.map +1 -1
- package/internal/components/dropdown-status/index.js +5 -7
- package/internal/components/dropdown-status/index.js.map +1 -1
- package/internal/components/filtering-token/index.js +4 -6
- package/internal/components/filtering-token/index.js.map +1 -1
- package/internal/components/focus-lock/index.js +10 -11
- package/internal/components/focus-lock/index.js.map +1 -1
- package/internal/components/focus-lock/utils.js +4 -4
- package/internal/components/focus-lock/utils.js.map +1 -1
- package/internal/components/live-region/index.js +10 -10
- package/internal/components/live-region/index.js.map +1 -1
- package/internal/components/masked-input/index.js +22 -24
- package/internal/components/masked-input/index.js.map +1 -1
- package/internal/components/masked-input/keyboard-handler.js +18 -18
- package/internal/components/masked-input/keyboard-handler.js.map +1 -1
- package/internal/components/masked-input/use-mask.js +24 -28
- package/internal/components/masked-input/use-mask.js.map +1 -1
- package/internal/components/masked-input/utils/keys.js +4 -6
- package/internal/components/masked-input/utils/keys.js.map +1 -1
- package/internal/components/masked-input/utils/mask-format.js +103 -113
- package/internal/components/masked-input/utils/mask-format.js.map +1 -1
- package/internal/components/masked-input/utils/strings.js +1 -4
- package/internal/components/masked-input/utils/strings.js.map +1 -1
- package/internal/components/menu-dropdown/index.js +10 -12
- package/internal/components/menu-dropdown/index.js.map +1 -1
- package/internal/components/option/highlight-match.js +14 -18
- package/internal/components/option/highlight-match.js.map +1 -1
- package/internal/components/option/index.js +13 -13
- package/internal/components/option/index.js.map +1 -1
- package/internal/components/option/option-announcer.js +1 -1
- package/internal/components/option/option-announcer.js.map +1 -1
- package/internal/components/option/option-parts.js +28 -45
- package/internal/components/option/option-parts.js.map +1 -1
- package/internal/components/option/utils/filter-options.js +16 -19
- package/internal/components/option/utils/filter-options.js.map +1 -1
- package/internal/components/option/utils/flatten-options.js +15 -15
- package/internal/components/option/utils/flatten-options.js.map +1 -1
- package/internal/components/option/utils/prepare-options.js +3 -3
- package/internal/components/option/utils/prepare-options.js.map +1 -1
- package/internal/components/options-list/index.js +19 -20
- package/internal/components/options-list/index.js.map +1 -1
- package/internal/components/options-list/utils/test-indexes.js +11 -11
- package/internal/components/options-list/utils/test-indexes.js.map +1 -1
- package/internal/components/options-list/utils/use-highlight-option.js +17 -21
- package/internal/components/options-list/utils/use-highlight-option.js.map +1 -1
- package/internal/components/options-list/utils/use-ids.js +2 -2
- package/internal/components/options-list/utils/use-ids.js.map +1 -1
- package/internal/components/options-list/utils/use-keyboard.js +6 -8
- package/internal/components/options-list/utils/use-keyboard.js.map +1 -1
- package/internal/components/options-list/utils/use-open-state.js +6 -7
- package/internal/components/options-list/utils/use-open-state.js.map +1 -1
- package/internal/components/portal/index.js +5 -6
- package/internal/components/portal/index.js.map +1 -1
- package/internal/components/screenreader-only/index.js +1 -2
- package/internal/components/screenreader-only/index.js.map +1 -1
- package/internal/components/selectable-item/index.js +25 -26
- package/internal/components/selectable-item/index.js.map +1 -1
- package/internal/components/tab-trap/index.js +1 -2
- package/internal/components/tab-trap/index.js.map +1 -1
- package/internal/components/transition/index.js +16 -16
- package/internal/components/transition/index.js.map +1 -1
- package/internal/components/visual-context/index.js +6 -7
- package/internal/components/visual-context/index.js.map +1 -1
- package/internal/context/app-layout-context.js +2 -2
- package/internal/context/app-layout-context.js.map +1 -1
- package/internal/context/form-field-context.js +4 -4
- package/internal/context/form-field-context.js.map +1 -1
- package/internal/context/split-panel-context.js +3 -3
- package/internal/context/split-panel-context.js.map +1 -1
- package/internal/debounce.js +6 -11
- package/internal/debounce.js.map +1 -1
- package/internal/environment.js +1 -1
- package/internal/events/index.js +12 -16
- package/internal/events/index.js.map +1 -1
- package/internal/focus-tracker.js +22 -27
- package/internal/focus-tracker.js.map +1 -1
- package/internal/generated/custom-css-properties/index.js +2 -2
- package/internal/generated/custom-css-properties/index.js.map +1 -1
- package/internal/hooks/check-controlled/index.js +1 -1
- package/internal/hooks/check-controlled/index.js.map +1 -1
- package/internal/hooks/container-queries/use-container-breakpoints.js +2 -2
- package/internal/hooks/container-queries/use-container-breakpoints.js.map +1 -1
- package/internal/hooks/container-queries/use-container-query.js +5 -6
- package/internal/hooks/container-queries/use-container-query.js.map +1 -1
- package/internal/hooks/container-queries/use-resize-observer.js +13 -13
- package/internal/hooks/container-queries/use-resize-observer.js.map +1 -1
- package/internal/hooks/focus-visible/index.js +8 -8
- package/internal/hooks/focus-visible/index.js.map +1 -1
- package/internal/hooks/forward-focus/index.js +5 -9
- package/internal/hooks/forward-focus/index.js.map +1 -1
- package/internal/hooks/forward-focus/radio-group.js +7 -7
- package/internal/hooks/forward-focus/radio-group.js.map +1 -1
- package/internal/hooks/use-base-component/component-metadata.js +5 -5
- package/internal/hooks/use-base-component/component-metadata.js.map +1 -1
- package/internal/hooks/use-base-component/index.js +1 -1
- package/internal/hooks/use-base-component/index.js.map +1 -1
- package/internal/hooks/use-controllable/index.js +16 -17
- package/internal/hooks/use-controllable/index.js.map +1 -1
- package/internal/hooks/use-date-cache/index.js +2 -2
- package/internal/hooks/use-date-cache/index.js.map +1 -1
- package/internal/hooks/use-debounce-callback/index.js +3 -7
- package/internal/hooks/use-debounce-callback/index.js.map +1 -1
- package/internal/hooks/use-dynamic-overlap/index.js +4 -4
- package/internal/hooks/use-dynamic-overlap/index.js.map +1 -1
- package/internal/hooks/use-effect-on-update.js +2 -2
- package/internal/hooks/use-effect-on-update.js.map +1 -1
- package/internal/hooks/use-focus-tracker.js +7 -8
- package/internal/hooks/use-focus-tracker.js.map +1 -1
- package/internal/hooks/use-has-rendered/index.js +6 -6
- package/internal/hooks/use-has-rendered/index.js.map +1 -1
- package/internal/hooks/use-merge-refs/index.js +5 -9
- package/internal/hooks/use-merge-refs/index.js.map +1 -1
- package/internal/hooks/use-mobile/index.js +7 -7
- package/internal/hooks/use-mobile/index.js.map +1 -1
- package/internal/hooks/use-mouse-down-target.js +5 -5
- package/internal/hooks/use-mouse-down-target.js.map +1 -1
- package/internal/hooks/use-mutation-observer/index.js +5 -5
- package/internal/hooks/use-mutation-observer/index.js.map +1 -1
- package/internal/hooks/use-portal-mode-classes/index.js +10 -12
- package/internal/hooks/use-portal-mode-classes/index.js.map +1 -1
- package/internal/hooks/use-previous/index.js +3 -3
- package/internal/hooks/use-previous/index.js.map +1 -1
- package/internal/hooks/use-scroll-sync/index.js +8 -9
- package/internal/hooks/use-scroll-sync/index.js.map +1 -1
- package/internal/hooks/use-singleton-handler/index.js +12 -14
- package/internal/hooks/use-singleton-handler/index.js.map +1 -1
- package/internal/hooks/use-stable-event-handler/index.js +3 -10
- package/internal/hooks/use-stable-event-handler/index.js.map +1 -1
- package/internal/hooks/use-telemetry/index.js +2 -2
- package/internal/hooks/use-telemetry/index.js.map +1 -1
- package/internal/hooks/use-telemetry/telemetry.js +3 -4
- package/internal/hooks/use-telemetry/telemetry.js.map +1 -1
- package/internal/hooks/use-unique-id/index.js +3 -3
- package/internal/hooks/use-unique-id/index.js.map +1 -1
- package/internal/hooks/use-visual-mode/index.js +11 -11
- package/internal/hooks/use-visual-mode/index.js.map +1 -1
- package/internal/is-development.js +1 -1
- package/internal/is-development.js.map +1 -1
- package/internal/logging.js +2 -2
- package/internal/logging.js.map +1 -1
- package/internal/manifest.json +1 -1
- package/internal/metrics/log-clients.js +18 -27
- package/internal/metrics/log-clients.js.map +1 -1
- package/internal/metrics/metrics-formatters.js +11 -14
- package/internal/metrics/metrics-formatters.js.map +1 -1
- package/internal/metrics/metrics.js +27 -33
- package/internal/metrics/metrics.js.map +1 -1
- package/internal/motion.js +2 -2
- package/internal/motion.js.map +1 -1
- package/internal/styles/colors.js +1 -1
- package/internal/styles/colors.js.map +1 -1
- package/internal/utils/browser-scrollbar-size.js +5 -5
- package/internal/utils/browser-scrollbar-size.js.map +1 -1
- package/internal/utils/calculate-once.js +2 -2
- package/internal/utils/calculate-once.js.map +1 -1
- package/internal/utils/check-safe-url.js +4 -4
- package/internal/utils/check-safe-url.js.map +1 -1
- package/internal/utils/create-category-color-scale.js +6 -9
- package/internal/utils/create-category-color-scale.js.map +1 -1
- package/internal/utils/date-time/format-date-range.js +3 -3
- package/internal/utils/date-time/format-date-range.js.map +1 -1
- package/internal/utils/date-time/format-date.js +4 -4
- package/internal/utils/date-time/format-date.js.map +1 -1
- package/internal/utils/date-time/format-time.js +5 -5
- package/internal/utils/date-time/format-time.js.map +1 -1
- package/internal/utils/date-time/format-timezone-offset.js +4 -4
- package/internal/utils/date-time/format-timezone-offset.js.map +1 -1
- package/internal/utils/date-time/is-iso-date-only.js +1 -1
- package/internal/utils/date-time/is-iso-date-only.js.map +1 -1
- package/internal/utils/date-time/join-date-time.js +3 -3
- package/internal/utils/date-time/join-date-time.js.map +1 -1
- package/internal/utils/date-time/parse-date.js +5 -6
- package/internal/utils/date-time/parse-date.js.map +1 -1
- package/internal/utils/date-time/parse-timezone-offset.js +5 -5
- package/internal/utils/date-time/parse-timezone-offset.js.map +1 -1
- package/internal/utils/date-time/shift-timezone-offset.js +6 -6
- package/internal/utils/date-time/shift-timezone-offset.js.map +1 -1
- package/internal/utils/dom.js +12 -12
- package/internal/utils/dom.js.map +1 -1
- package/internal/utils/external-props.js +3 -3
- package/internal/utils/external-props.js.map +1 -1
- package/internal/utils/focus-svg-element.js +1 -1
- package/internal/utils/focus-svg-element.js.map +1 -1
- package/internal/utils/locale/merge-locales.js +1 -1
- package/internal/utils/locale/merge-locales.js.map +1 -1
- package/internal/utils/locale/normalize-locale.js +3 -3
- package/internal/utils/locale/normalize-locale.js.map +1 -1
- package/internal/utils/promises.js +7 -11
- package/internal/utils/promises.js.map +1 -1
- package/internal/utils/scrollable-containers.js +14 -18
- package/internal/utils/scrollable-containers.js.map +1 -1
- package/internal/utils/strings/join-strings.js +1 -5
- package/internal/utils/strings/join-strings.js.map +1 -1
- package/internal/utils/strings/pad-left-zeros.js +1 -1
- package/internal/utils/strings/pad-left-zeros.js.map +1 -1
- package/internal/utils/throttle.js +10 -15
- package/internal/utils/throttle.js.map +1 -1
- package/internal/utils/use-container-width.js +3 -5
- package/internal/utils/use-container-width.js.map +1 -1
- package/line-chart/index.js +6 -6
- package/line-chart/index.js.map +1 -1
- package/link/index.js +5 -5
- package/link/index.js.map +1 -1
- package/link/internal.js +25 -25
- package/link/internal.js.map +1 -1
- package/mixed-line-bar-chart/bar-groups.js +3 -4
- package/mixed-line-bar-chart/bar-groups.js.map +1 -1
- package/mixed-line-bar-chart/bar-series.js +24 -33
- package/mixed-line-bar-chart/bar-series.js.map +1 -1
- package/mixed-line-bar-chart/chart-container.js +123 -138
- package/mixed-line-bar-chart/chart-container.js.map +1 -1
- package/mixed-line-bar-chart/chart-filters.js +10 -17
- package/mixed-line-bar-chart/chart-filters.js.map +1 -1
- package/mixed-line-bar-chart/chart-legend.js +9 -13
- package/mixed-line-bar-chart/chart-legend.js.map +1 -1
- package/mixed-line-bar-chart/chart-popover.js +3 -4
- package/mixed-line-bar-chart/chart-popover.js.map +1 -1
- package/mixed-line-bar-chart/data-series.js +13 -17
- package/mixed-line-bar-chart/data-series.js.map +1 -1
- package/mixed-line-bar-chart/domain.js +32 -39
- package/mixed-line-bar-chart/domain.js.map +1 -1
- package/mixed-line-bar-chart/format-highlighted.js +13 -14
- package/mixed-line-bar-chart/format-highlighted.js.map +1 -1
- package/mixed-line-bar-chart/hooks/use-mouse-hover.js +32 -34
- package/mixed-line-bar-chart/hooks/use-mouse-hover.js.map +1 -1
- package/mixed-line-bar-chart/hooks/use-navigation.js +48 -57
- package/mixed-line-bar-chart/hooks/use-navigation.js.map +1 -1
- package/mixed-line-bar-chart/hooks/use-popover.js +7 -7
- package/mixed-line-bar-chart/hooks/use-popover.js.map +1 -1
- package/mixed-line-bar-chart/index.js +4 -4
- package/mixed-line-bar-chart/index.js.map +1 -1
- package/mixed-line-bar-chart/internal.js +47 -49
- package/mixed-line-bar-chart/internal.js.map +1 -1
- package/mixed-line-bar-chart/line-series.js +19 -24
- package/mixed-line-bar-chart/line-series.js.map +1 -1
- package/mixed-line-bar-chart/make-scaled-bar-groups.js +10 -11
- package/mixed-line-bar-chart/make-scaled-bar-groups.js.map +1 -1
- package/mixed-line-bar-chart/make-scaled-series.js +30 -38
- package/mixed-line-bar-chart/make-scaled-series.js.map +1 -1
- package/mixed-line-bar-chart/utils.js +18 -21
- package/mixed-line-bar-chart/utils.js.map +1 -1
- package/modal/body-scroll.js +4 -4
- package/modal/body-scroll.js.map +1 -1
- package/modal/index.js +4 -4
- package/modal/index.js.map +1 -1
- package/modal/internal.js +24 -25
- package/modal/internal.js.map +1 -1
- package/multiselect/index.js +5 -5
- package/multiselect/index.js.map +1 -1
- package/multiselect/internal.js +81 -88
- package/multiselect/internal.js.map +1 -1
- package/package.json +1 -1
- package/pagination/index.js +2 -3
- package/pagination/index.js.map +1 -1
- package/pagination/internal.js +16 -17
- package/pagination/internal.js.map +1 -1
- package/pagination/utils.js +12 -12
- package/pagination/utils.js.map +1 -1
- package/pie-chart/index.js +38 -39
- package/pie-chart/index.js.map +1 -1
- package/pie-chart/labels.js +38 -42
- package/pie-chart/labels.js.map +1 -1
- package/pie-chart/pie-chart.js +65 -67
- package/pie-chart/pie-chart.js.map +1 -1
- package/pie-chart/responsive-text.js +9 -10
- package/pie-chart/responsive-text.js.map +1 -1
- package/pie-chart/segments.js +27 -31
- package/pie-chart/segments.js.map +1 -1
- package/pie-chart/utils.js +32 -35
- package/pie-chart/utils.js.map +1 -1
- package/popover/arrow.js +2 -2
- package/popover/arrow.js.map +1 -1
- package/popover/body.js +16 -19
- package/popover/body.js.map +1 -1
- package/popover/container.js +52 -55
- package/popover/container.js.map +1 -1
- package/popover/index.js +6 -6
- package/popover/index.js.map +1 -1
- package/popover/internal.js +28 -28
- package/popover/internal.js.map +1 -1
- package/popover/utils/positions.js +54 -66
- package/popover/utils/positions.js.map +1 -1
- package/progress-bar/index.js +17 -17
- package/progress-bar/index.js.map +1 -1
- package/progress-bar/internal.js +12 -16
- package/progress-bar/internal.js.map +1 -1
- package/property-filter/controller.js +117 -125
- package/property-filter/controller.js.map +1 -1
- package/property-filter/filter-options.js +8 -11
- package/property-filter/filter-options.js.map +1 -1
- package/property-filter/index.js +50 -50
- package/property-filter/index.js.map +1 -1
- package/property-filter/property-editor.js +4 -5
- package/property-filter/property-editor.js.map +1 -1
- package/property-filter/property-filter-autosuggest.js +39 -39
- package/property-filter/property-filter-autosuggest.js.map +1 -1
- package/property-filter/token-editor.js +55 -66
- package/property-filter/token-editor.js.map +1 -1
- package/property-filter/token.js +9 -11
- package/property-filter/token.js.map +1 -1
- package/property-filter/use-load-items.js +8 -12
- package/property-filter/use-load-items.js.map +1 -1
- package/property-filter/utils.js +13 -18
- package/property-filter/utils.js.map +1 -1
- package/radio-group/index.js +3 -4
- package/radio-group/index.js.map +1 -1
- package/radio-group/internal.js +9 -9
- package/radio-group/internal.js.map +1 -1
- package/radio-group/radio-button.js +12 -15
- package/radio-group/radio-button.js.map +1 -1
- package/s3-resource-selector/index.js +29 -29
- package/s3-resource-selector/index.js.map +1 -1
- package/s3-resource-selector/s3-in-context/index.js +16 -18
- package/s3-resource-selector/s3-in-context/index.js.map +1 -1
- package/s3-resource-selector/s3-in-context/search-input.js +3 -4
- package/s3-resource-selector/s3-in-context/search-input.js.map +1 -1
- package/s3-resource-selector/s3-in-context/use-versions-fetch.js +16 -16
- package/s3-resource-selector/s3-in-context/use-versions-fetch.js.map +1 -1
- package/s3-resource-selector/s3-in-context/validation.js +6 -6
- package/s3-resource-selector/s3-in-context/validation.js.map +1 -1
- package/s3-resource-selector/s3-modal/basic-table.js +19 -20
- package/s3-resource-selector/s3-modal/basic-table.js.map +1 -1
- package/s3-resource-selector/s3-modal/buckets-table.js +11 -13
- package/s3-resource-selector/s3-modal/buckets-table.js.map +1 -1
- package/s3-resource-selector/s3-modal/column-formats.js +5 -5
- package/s3-resource-selector/s3-modal/column-formats.js.map +1 -1
- package/s3-resource-selector/s3-modal/empty-state.js +1 -2
- package/s3-resource-selector/s3-modal/empty-state.js.map +1 -1
- package/s3-resource-selector/s3-modal/index.js +37 -43
- package/s3-resource-selector/s3-modal/index.js.map +1 -1
- package/s3-resource-selector/s3-modal/objects-table.js +12 -14
- package/s3-resource-selector/s3-modal/objects-table.js.map +1 -1
- package/s3-resource-selector/s3-modal/table-utils.js +9 -12
- package/s3-resource-selector/s3-modal/table-utils.js.map +1 -1
- package/s3-resource-selector/s3-modal/versions-table.js +10 -12
- package/s3-resource-selector/s3-modal/versions-table.js.map +1 -1
- package/s3-resource-selector/utils.js +1 -1
- package/s3-resource-selector/utils.js.map +1 -1
- package/segmented-control/index.js +2 -3
- package/segmented-control/index.js.map +1 -1
- package/segmented-control/internal-segmented-control.js +16 -17
- package/segmented-control/internal-segmented-control.js.map +1 -1
- package/segmented-control/internal.js +14 -14
- package/segmented-control/internal.js.map +1 -1
- package/segmented-control/segment.js +3 -6
- package/segmented-control/segment.js.map +1 -1
- package/select/index.js +6 -6
- package/select/index.js.map +1 -1
- package/select/internal.js +58 -58
- package/select/internal.js.map +1 -1
- package/select/parts/filter.js +4 -4
- package/select/parts/filter.js.map +1 -1
- package/select/parts/item.js +10 -10
- package/select/parts/item.js.map +1 -1
- package/select/parts/multiselect-item.js +13 -14
- package/select/parts/multiselect-item.js.map +1 -1
- package/select/parts/plain-list.js +13 -15
- package/select/parts/plain-list.js.map +1 -1
- package/select/parts/trigger.js +7 -9
- package/select/parts/trigger.js.map +1 -1
- package/select/parts/virtual-list.js +27 -33
- package/select/parts/virtual-list.js.map +1 -1
- package/select/utils/check-option-value-field.js +2 -2
- package/select/utils/check-option-value-field.js.map +1 -1
- package/select/utils/connect-options.js +6 -7
- package/select/utils/connect-options.js.map +1 -1
- package/select/utils/get-item-props.js +4 -7
- package/select/utils/get-item-props.js.map +1 -1
- package/select/utils/render-options.js +13 -15
- package/select/utils/render-options.js.map +1 -1
- package/select/utils/use-announcement.js +10 -11
- package/select/utils/use-announcement.js.map +1 -1
- package/select/utils/use-load-items.js +16 -19
- package/select/utils/use-load-items.js.map +1 -1
- package/select/utils/use-native-search.js +20 -29
- package/select/utils/use-native-search.js.map +1 -1
- package/select/utils/use-select.js +89 -96
- package/select/utils/use-select.js.map +1 -1
- package/side-navigation/index.js +10 -10
- package/side-navigation/index.js.map +1 -1
- package/side-navigation/internal.js +35 -46
- package/side-navigation/internal.js.map +1 -1
- package/side-navigation/util.js +9 -12
- package/side-navigation/util.js.map +1 -1
- package/space-between/index.js +4 -4
- package/space-between/index.js.map +1 -1
- package/space-between/internal.js +7 -7
- package/space-between/internal.js.map +1 -1
- package/spinner/index.js +4 -4
- package/spinner/index.js.map +1 -1
- package/spinner/internal.js +4 -4
- package/spinner/internal.js.map +1 -1
- package/split-panel/bottom.js +22 -25
- package/split-panel/bottom.js.map +1 -1
- package/split-panel/icons/bottom-icon-refresh.js +11 -13
- package/split-panel/icons/bottom-icon-refresh.js.map +1 -1
- package/split-panel/icons/bottom-icon.js +1 -1
- package/split-panel/icons/bottom-icon.js.map +1 -1
- package/split-panel/icons/resize-handler.js +3 -6
- package/split-panel/icons/resize-handler.js.map +1 -1
- package/split-panel/icons/side-position-refresh.js +12 -14
- package/split-panel/icons/side-position-refresh.js.map +1 -1
- package/split-panel/icons/side-position.js +1 -1
- package/split-panel/icons/side-position.js.map +1 -1
- package/split-panel/index.js +65 -65
- package/split-panel/index.js.map +1 -1
- package/split-panel/preferences-modal.js +9 -9
- package/split-panel/preferences-modal.js.map +1 -1
- package/split-panel/side.js +12 -15
- package/split-panel/side.js.map +1 -1
- package/split-panel/utils/size-utils.js +3 -3
- package/split-panel/utils/size-utils.js.map +1 -1
- package/split-panel/utils/use-keyboard-events.js +13 -17
- package/split-panel/utils/use-keyboard-events.js.map +1 -1
- package/split-panel/utils/use-pointer-events.js +12 -13
- package/split-panel/utils/use-pointer-events.js.map +1 -1
- package/status-indicator/index.js +4 -4
- package/status-indicator/index.js.map +1 -1
- package/status-indicator/internal.js +9 -10
- package/status-indicator/internal.js.map +1 -1
- package/table/body-cell/click-away.js +9 -10
- package/table/body-cell/click-away.js.map +1 -1
- package/table/body-cell/index.js +18 -18
- package/table/body-cell/index.js.map +1 -1
- package/table/body-cell/inline-editor.js +32 -46
- package/table/body-cell/inline-editor.js.map +1 -1
- package/table/body-cell/td-element.js +2 -4
- package/table/body-cell/td-element.js.map +1 -1
- package/table/body-cell/use-stable-scroll-position.js +10 -13
- package/table/body-cell/use-stable-scroll-position.js.map +1 -1
- package/table/header-cell/index.d.ts +4 -2
- package/table/header-cell/index.d.ts.map +1 -1
- package/table/header-cell/index.js +33 -34
- package/table/header-cell/index.js.map +1 -1
- package/table/header-cell/utils.js +10 -12
- package/table/header-cell/utils.js.map +1 -1
- package/table/index.js +5 -5
- package/table/index.js.map +1 -1
- package/table/internal.d.ts.map +1 -1
- package/table/internal.js +94 -118
- package/table/internal.js.map +1 -1
- package/table/resizer/index.d.ts +5 -1
- package/table/resizer/index.d.ts.map +1 -1
- package/table/resizer/index.js +40 -39
- package/table/resizer/index.js.map +1 -1
- package/table/selection-control/index.d.ts +4 -1
- package/table/selection-control/index.d.ts.map +1 -1
- package/table/selection-control/index.js +11 -11
- package/table/selection-control/index.js.map +1 -1
- package/table/sticky-header.d.ts +2 -2
- package/table/sticky-header.d.ts.map +1 -1
- package/table/sticky-header.js +16 -15
- package/table/sticky-header.js.map +1 -1
- package/table/sticky-scrollbar.js +5 -6
- package/table/sticky-scrollbar.js.map +1 -1
- package/table/sticky-scrolling.js +10 -10
- package/table/sticky-scrolling.js.map +1 -1
- package/table/thead.d.ts +11 -3
- package/table/thead.d.ts.map +1 -1
- package/table/thead.js +13 -13
- package/table/thead.js.map +1 -1
- package/table/tools-header.js +4 -5
- package/table/tools-header.js.map +1 -1
- package/table/use-column-widths.js +34 -44
- package/table/use-column-widths.js.map +1 -1
- package/table/use-row-events.js +10 -11
- package/table/use-row-events.js.map +1 -1
- package/table/use-selection.js +75 -81
- package/table/use-selection.js.map +1 -1
- package/table/use-sticky-header.js +16 -16
- package/table/use-sticky-header.js.map +1 -1
- package/table/use-sticky-scrollbar.js +42 -42
- package/table/use-sticky-scrollbar.js.map +1 -1
- package/table/use-table-focus-navigation.js +27 -28
- package/table/use-table-focus-navigation.js.map +1 -1
- package/table/utils.js +7 -7
- package/table/utils.js.map +1 -1
- package/tabs/index.js +30 -33
- package/tabs/index.js.map +1 -1
- package/tabs/scroll-utils.js +12 -13
- package/tabs/scroll-utils.js.map +1 -1
- package/tabs/smooth-scroll.js +17 -17
- package/tabs/smooth-scroll.js.map +1 -1
- package/tabs/tab-header-bar.js +61 -66
- package/tabs/tab-header-bar.js.map +1 -1
- package/tag-editor/index.js +59 -72
- package/tag-editor/index.js.map +1 -1
- package/tag-editor/internal.js +21 -29
- package/tag-editor/internal.js.map +1 -1
- package/tag-editor/utils.js +7 -8
- package/tag-editor/utils.js.map +1 -1
- package/tag-editor/validation.js +16 -18
- package/tag-editor/validation.js.map +1 -1
- package/text-content/index.js +6 -6
- package/text-content/index.js.map +1 -1
- package/text-filter/index.js +3 -4
- package/text-filter/index.js.map +1 -1
- package/text-filter/internal.js +10 -10
- package/text-filter/internal.js.map +1 -1
- package/textarea/index.js +23 -24
- package/textarea/index.js.map +1 -1
- package/theming/index.js +2 -3
- package/theming/index.js.map +1 -1
- package/tiles/index.js +3 -4
- package/tiles/index.js.map +1 -1
- package/tiles/internal.js +17 -17
- package/tiles/internal.js.map +1 -1
- package/tiles/tile.js +7 -9
- package/tiles/tile.js.map +1 -1
- package/time-input/index.js +5 -5
- package/time-input/index.js.map +1 -1
- package/time-input/internal.js +9 -9
- package/time-input/internal.js.map +1 -1
- package/toggle/index.js +3 -4
- package/toggle/index.js.map +1 -1
- package/toggle/internal.js +15 -16
- package/toggle/internal.js.map +1 -1
- package/token-group/dismiss-button.js +5 -7
- package/token-group/dismiss-button.js.map +1 -1
- package/token-group/index.js +4 -4
- package/token-group/index.js.map +1 -1
- package/token-group/internal.js +14 -14
- package/token-group/internal.js.map +1 -1
- package/token-group/toggle.js +7 -9
- package/token-group/toggle.js.map +1 -1
- package/top-navigation/1.0-beta/index.js +4 -4
- package/top-navigation/1.0-beta/index.js.map +1 -1
- package/top-navigation/1.0-beta/internal.js +43 -46
- package/top-navigation/1.0-beta/internal.js.map +1 -1
- package/top-navigation/1.0-beta/parts/overflow-menu.js +16 -17
- package/top-navigation/1.0-beta/parts/overflow-menu.js.map +1 -1
- package/top-navigation/1.0-beta/parts/utility.js +9 -12
- package/top-navigation/1.0-beta/parts/utility.js.map +1 -1
- package/top-navigation/1.0-beta/use-top-navigation.js +46 -54
- package/top-navigation/1.0-beta/use-top-navigation.js.map +1 -1
- package/top-navigation/index.js +4 -4
- package/top-navigation/index.js.map +1 -1
- package/top-navigation/internal.js +64 -71
- package/top-navigation/internal.js.map +1 -1
- package/top-navigation/parts/overflow-menu/header.js +3 -4
- package/top-navigation/parts/overflow-menu/header.js.map +1 -1
- package/top-navigation/parts/overflow-menu/index.js +4 -5
- package/top-navigation/parts/overflow-menu/index.js.map +1 -1
- package/top-navigation/parts/overflow-menu/menu-item.js +56 -61
- package/top-navigation/parts/overflow-menu/menu-item.js.map +1 -1
- package/top-navigation/parts/overflow-menu/router.js +11 -13
- package/top-navigation/parts/overflow-menu/router.js.map +1 -1
- package/top-navigation/parts/overflow-menu/views/submenu.js +6 -8
- package/top-navigation/parts/overflow-menu/views/submenu.js.map +1 -1
- package/top-navigation/parts/overflow-menu/views/utilities.js +5 -7
- package/top-navigation/parts/overflow-menu/views/utilities.js.map +1 -1
- package/top-navigation/parts/utility.js +12 -15
- package/top-navigation/parts/utility.js.map +1 -1
- package/top-navigation/use-top-navigation.js +52 -59
- package/top-navigation/use-top-navigation.js.map +1 -1
- package/tutorial-panel/components/tutorial-detail-view/congratulation-screen.js +5 -7
- package/tutorial-panel/components/tutorial-detail-view/congratulation-screen.js.map +1 -1
- package/tutorial-panel/components/tutorial-detail-view/index.js +6 -7
- package/tutorial-panel/components/tutorial-detail-view/index.js.map +1 -1
- package/tutorial-panel/components/tutorial-detail-view/task-list.js +8 -15
- package/tutorial-panel/components/tutorial-detail-view/task-list.js.map +1 -1
- package/tutorial-panel/components/tutorial-detail-view/task.js +5 -6
- package/tutorial-panel/components/tutorial-detail-view/task.js.map +1 -1
- package/tutorial-panel/components/tutorial-list/index.js +19 -22
- package/tutorial-panel/components/tutorial-list/index.js.map +1 -1
- package/tutorial-panel/index.js +8 -8
- package/tutorial-panel/index.js.map +1 -1
- package/wizard/index.js +28 -28
- package/wizard/index.js.map +1 -1
- package/wizard/internal/analytics.js +32 -42
- package/wizard/internal/analytics.js.map +1 -1
- package/wizard/unmount.js +6 -13
- package/wizard/unmount.js.map +1 -1
- package/wizard/wizard-actions.js +7 -8
- package/wizard/wizard-actions.js.map +1 -1
- package/wizard/wizard-form-header.js +2 -3
- package/wizard/wizard-form-header.js.map +1 -1
- package/wizard/wizard-form.js +14 -16
- package/wizard/wizard-form.js.map +1 -1
- package/wizard/wizard-navigation.js +19 -25
- package/wizard/wizard-navigation.js.map +1 -1
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { __assign } from "tslib";
|
|
2
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
4
3
|
import React, { useEffect, useState, useRef } from 'react';
|
|
@@ -18,48 +17,48 @@ export function getSharedI18Strings(i18nStrings) {
|
|
|
18
17
|
labelsPagination: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.labelsPagination,
|
|
19
18
|
noMatchTitle: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.filteringNoMatches,
|
|
20
19
|
noMatchSubtitle: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.filteringCantFindMatch,
|
|
21
|
-
clearFilterButtonText: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.clearFilterButtonText
|
|
20
|
+
clearFilterButtonText: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.clearFilterButtonText,
|
|
22
21
|
};
|
|
23
22
|
}
|
|
24
|
-
export function BasicS3Table(
|
|
25
|
-
var
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
var onSelectLatest = useStableEventHandler(onSelect);
|
|
23
|
+
export function BasicS3Table({ forwardFocusRef, columnDefinitions, fetchData, trackBy, i18nStrings = {}, isVisualRefresh, visibleColumns, isItemDisabled, onSelect, }) {
|
|
24
|
+
var _a;
|
|
25
|
+
const [loading, setLoading] = useState(false);
|
|
26
|
+
const [allItems, setAllItems] = useState([]);
|
|
27
|
+
const textFilterRef = useRef(null);
|
|
28
|
+
const onSelectLatest = useStableEventHandler(onSelect);
|
|
31
29
|
function loadData() {
|
|
32
30
|
setLoading(true);
|
|
33
31
|
fetchData()
|
|
34
|
-
.then(
|
|
32
|
+
.then(items => {
|
|
35
33
|
setAllItems(items);
|
|
36
34
|
setLoading(false);
|
|
37
|
-
})
|
|
35
|
+
})
|
|
36
|
+
.catch(() => {
|
|
38
37
|
// error handling should happen on the customer side, outside of this component
|
|
39
38
|
setLoading(false);
|
|
40
39
|
});
|
|
41
40
|
}
|
|
42
|
-
useEffect(
|
|
41
|
+
useEffect(() => {
|
|
43
42
|
loadData();
|
|
44
43
|
// Data loading is only happening on initial render, or via refresh button
|
|
45
44
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
46
45
|
}, []);
|
|
47
46
|
useForwardFocus(forwardFocusRef, textFilterRef);
|
|
48
|
-
|
|
49
|
-
selection: { trackBy
|
|
47
|
+
const { items, filteredItemsCount, collectionProps, filterProps, paginationProps, actions } = useCollection(allItems, {
|
|
48
|
+
selection: { trackBy },
|
|
50
49
|
filtering: {
|
|
51
50
|
empty: i18nStrings.emptyText,
|
|
52
|
-
noMatch: (React.createElement(EmptyState, { title: i18nStrings.noMatchTitle, subtitle: i18nStrings.noMatchSubtitle, action: React.createElement(InternalButton, { onClick:
|
|
51
|
+
noMatch: (React.createElement(EmptyState, { title: i18nStrings.noMatchTitle, subtitle: i18nStrings.noMatchSubtitle, action: React.createElement(InternalButton, { onClick: () => actions.setFiltering('') }, i18nStrings.clearFilterButtonText) })),
|
|
53
52
|
},
|
|
54
53
|
pagination: {},
|
|
55
|
-
sorting: {}
|
|
56
|
-
})
|
|
57
|
-
|
|
54
|
+
sorting: {},
|
|
55
|
+
});
|
|
56
|
+
const selectedItem = (_a = collectionProps.selectedItems) === null || _a === void 0 ? void 0 : _a[0];
|
|
58
57
|
// selectedItem can change internally inside the hook after pagination or filtering
|
|
59
58
|
// useEffect will capture all possible changes
|
|
60
|
-
useEffect(
|
|
59
|
+
useEffect(() => {
|
|
61
60
|
onSelectLatest(selectedItem);
|
|
62
61
|
}, [selectedItem, onSelectLatest]);
|
|
63
|
-
return (React.createElement(InternalTable,
|
|
62
|
+
return (React.createElement(InternalTable, Object.assign({ variant: "embedded" }, collectionProps, { header: React.createElement(InternalHeader, { variant: isVisualRefresh ? 'h3' : 'h2', actions: React.createElement(InternalButton, { iconName: "refresh", ariaLabel: i18nStrings.labelRefresh, onClick: loadData }), counter: selectedItem ? `(1/${allItems.length})` : `(${allItems.length})` }, i18nStrings.header), trackBy: trackBy, filter: React.createElement(InternalTextFilter, Object.assign({}, filterProps, { ref: textFilterRef, filteringAriaLabel: i18nStrings.filteringAriaLabel, filteringPlaceholder: i18nStrings.filteringPlaceholder, countText: i18nStrings.filteringCounterText ? i18nStrings.filteringCounterText(filteredItemsCount) : '' })), pagination: React.createElement(InternalPagination, Object.assign({}, paginationProps, { ariaLabels: i18nStrings.labelsPagination })), selectionType: "single", ariaLabels: i18nStrings.selectionLabels, loading: loading, loadingText: i18nStrings.loadingText, items: items, visibleColumns: visibleColumns, isItemDisabled: isItemDisabled, columnDefinitions: columnDefinitions })));
|
|
64
63
|
}
|
|
65
64
|
//# sourceMappingURL=basic-table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basic-table.js","sourceRoot":"","sources":["../../../../src/s3-resource-selector/s3-modal/basic-table.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"basic-table.js","sourceRoot":"","sources":["../../../../src/s3-resource-selector/s3-modal/basic-table.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\nimport React, { useEffect, useState, useRef } from 'react';\nimport { useCollection } from '@cloudscape-design/collection-hooks';\nimport { InternalButton } from '../../button/internal';\nimport InternalHeader from '../../header/internal';\nimport { PaginationProps } from '../../pagination/interfaces';\nimport InternalPagination from '../../pagination/internal';\nimport { TableProps } from '../../table/interfaces';\nimport InternalTable from '../../table/internal';\nimport { TextFilterProps } from '../../text-filter/interfaces';\nimport InternalTextFilter from '../../text-filter/internal';\nimport useForwardFocus, { ForwardFocusRef } from '../../internal/hooks/forward-focus';\nimport { useStableEventHandler } from '../../internal/hooks/use-stable-event-handler';\nimport { S3ResourceSelectorProps } from '../interfaces';\nimport { EmptyState } from './empty-state';\n\ninterface BasicS3TableStrings<T> {\n labelRefresh?: string;\n labelsPagination?: PaginationProps.Labels;\n header?: string;\n loadingText?: string;\n filteringPlaceholder?: string;\n filteringAriaLabel?: string;\n filteringCounterText?: S3ResourceSelectorProps.I18nStrings['filteringCounterText'];\n emptyText?: string;\n noMatchTitle?: string;\n noMatchSubtitle?: string;\n clearFilterButtonText?: string;\n selectionLabels?: TableProps.AriaLabels<T>;\n}\n\ninterface BasicS3TableProps<T> {\n // We do not use idiomatic `ref` prop because it does not allow generics.\n // Option 3 from this solution: https://stackoverflow.com/a/58473012/1297743\n forwardFocusRef: React.Ref<ForwardFocusRef>;\n columnDefinitions: ReadonlyArray<TableProps.ColumnDefinition<T>>;\n fetchData: () => Promise<ReadonlyArray<T>>;\n trackBy: TableProps.TrackBy<T>;\n i18nStrings: BasicS3TableStrings<T>;\n isVisualRefresh?: boolean;\n visibleColumns: ReadonlyArray<string>;\n isItemDisabled: TableProps.IsItemDisabled<T> | undefined;\n onSelect: (item: T | undefined) => void;\n}\n\nexport function getSharedI18Strings(i18nStrings: S3ResourceSelectorProps.I18nStrings | undefined) {\n return {\n filteringCounterText: i18nStrings?.filteringCounterText,\n labelRefresh: i18nStrings?.labelRefresh,\n labelsPagination: i18nStrings?.labelsPagination,\n noMatchTitle: i18nStrings?.filteringNoMatches,\n noMatchSubtitle: i18nStrings?.filteringCantFindMatch,\n clearFilterButtonText: i18nStrings?.clearFilterButtonText,\n };\n}\n\nexport function BasicS3Table<T>({\n forwardFocusRef,\n columnDefinitions,\n fetchData,\n trackBy,\n i18nStrings = {},\n isVisualRefresh,\n visibleColumns,\n isItemDisabled,\n onSelect,\n}: BasicS3TableProps<T>) {\n const [loading, setLoading] = useState(false);\n const [allItems, setAllItems] = useState<ReadonlyArray<T>>([]);\n const textFilterRef = useRef<TextFilterProps.Ref>(null);\n const onSelectLatest = useStableEventHandler(onSelect);\n\n function loadData() {\n setLoading(true);\n fetchData()\n .then(items => {\n setAllItems(items);\n setLoading(false);\n })\n .catch(() => {\n // error handling should happen on the customer side, outside of this component\n setLoading(false);\n });\n }\n\n useEffect(() => {\n loadData();\n // Data loading is only happening on initial render, or via refresh button\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useForwardFocus(forwardFocusRef, textFilterRef);\n\n const { items, filteredItemsCount, collectionProps, filterProps, paginationProps, actions } = useCollection(\n allItems,\n {\n selection: { trackBy },\n filtering: {\n empty: i18nStrings.emptyText,\n noMatch: (\n <EmptyState\n title={i18nStrings.noMatchTitle}\n subtitle={i18nStrings.noMatchSubtitle}\n action={\n <InternalButton onClick={() => actions.setFiltering('')}>\n {i18nStrings.clearFilterButtonText}\n </InternalButton>\n }\n />\n ),\n },\n pagination: {},\n sorting: {},\n }\n );\n const selectedItem = collectionProps.selectedItems?.[0];\n\n // selectedItem can change internally inside the hook after pagination or filtering\n // useEffect will capture all possible changes\n useEffect(() => {\n onSelectLatest(selectedItem);\n }, [selectedItem, onSelectLatest]);\n\n return (\n <InternalTable<T>\n variant=\"embedded\"\n {...collectionProps}\n header={\n <InternalHeader\n variant={isVisualRefresh ? 'h3' : 'h2'}\n actions={<InternalButton iconName=\"refresh\" ariaLabel={i18nStrings.labelRefresh} onClick={loadData} />}\n counter={selectedItem ? `(1/${allItems.length})` : `(${allItems.length})`}\n >\n {i18nStrings.header}\n </InternalHeader>\n }\n trackBy={trackBy}\n filter={\n <InternalTextFilter\n {...filterProps}\n ref={textFilterRef}\n filteringAriaLabel={i18nStrings.filteringAriaLabel}\n filteringPlaceholder={i18nStrings.filteringPlaceholder}\n countText={i18nStrings.filteringCounterText ? i18nStrings.filteringCounterText(filteredItemsCount!) : ''}\n />\n }\n pagination={<InternalPagination {...paginationProps} ariaLabels={i18nStrings.labelsPagination} />}\n selectionType=\"single\"\n ariaLabels={i18nStrings.selectionLabels}\n loading={loading}\n loadingText={i18nStrings.loadingText}\n items={items}\n visibleColumns={visibleColumns}\n isItemDisabled={isItemDisabled}\n columnDefinitions={columnDefinitions}\n />\n );\n}\n"]}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { __assign } from "tslib";
|
|
2
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
4
3
|
import React from 'react';
|
|
@@ -6,35 +5,34 @@ import InternalLink from '../../link/internal';
|
|
|
6
5
|
import { compareDates, getColumnAriaLabel, includes } from './table-utils';
|
|
7
6
|
import { formatDefault } from './column-formats';
|
|
8
7
|
import { BasicS3Table, getSharedI18Strings } from './basic-table';
|
|
9
|
-
export function BucketsTable(
|
|
10
|
-
|
|
11
|
-
return (React.createElement(BasicS3Table, { forwardFocusRef: forwardFocusRef, trackBy: "Name", fetchData: fetchData, visibleColumns: visibleColumns, isItemDisabled: isItemDisabled || (function () { return !includes(selectableItemsTypes, 'buckets'); }), i18nStrings: __assign(__assign({}, getSharedI18Strings(i18nStrings)), { header: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionBuckets, loadingText: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionBucketsLoading, filteringAriaLabel: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.labelFiltering(i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionBuckets), filteringPlaceholder: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionBucketsSearchPlaceholder, emptyText: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionBucketsNoItems, selectionLabels: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.labelsBucketsSelection }), isVisualRefresh: isVisualRefresh, columnDefinitions: [
|
|
8
|
+
export function BucketsTable({ forwardFocusRef, i18nStrings, isVisualRefresh, isItemDisabled, selectableItemsTypes, fetchData, visibleColumns, onDrilldown, onSelect, }) {
|
|
9
|
+
return (React.createElement(BasicS3Table, { forwardFocusRef: forwardFocusRef, trackBy: "Name", fetchData: fetchData, visibleColumns: visibleColumns, isItemDisabled: isItemDisabled || (() => !includes(selectableItemsTypes, 'buckets')), i18nStrings: Object.assign(Object.assign({}, getSharedI18Strings(i18nStrings)), { header: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionBuckets, loadingText: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionBucketsLoading, filteringAriaLabel: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.labelFiltering(i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionBuckets), filteringPlaceholder: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionBucketsSearchPlaceholder, emptyText: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionBucketsNoItems, selectionLabels: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.labelsBucketsSelection }), isVisualRefresh: isVisualRefresh, columnDefinitions: [
|
|
12
10
|
{
|
|
13
11
|
id: 'Name',
|
|
14
12
|
header: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnBucketName,
|
|
15
13
|
ariaLabel: getColumnAriaLabel(i18nStrings, i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnBucketName),
|
|
16
14
|
sortingField: 'Name',
|
|
17
|
-
cell:
|
|
18
|
-
|
|
19
|
-
return isClickable ? (React.createElement(InternalLink, { onFollow:
|
|
15
|
+
cell: item => {
|
|
16
|
+
const isClickable = includes(selectableItemsTypes, 'objects') || includes(selectableItemsTypes, 'versions');
|
|
17
|
+
return isClickable ? (React.createElement(InternalLink, { onFollow: () => item.Name && onDrilldown(item.Name), variant: "link" }, item.Name)) : (item.Name);
|
|
20
18
|
},
|
|
21
|
-
minWidth: '250px'
|
|
19
|
+
minWidth: '250px',
|
|
22
20
|
},
|
|
23
21
|
{
|
|
24
22
|
id: 'CreationDate',
|
|
25
23
|
header: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnBucketCreationDate,
|
|
26
24
|
ariaLabel: getColumnAriaLabel(i18nStrings, i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnBucketCreationDate),
|
|
27
|
-
sortingComparator:
|
|
28
|
-
cell:
|
|
25
|
+
sortingComparator: (a, b) => compareDates(a.CreationDate, b.CreationDate),
|
|
26
|
+
cell: item => formatDefault(item.CreationDate),
|
|
29
27
|
},
|
|
30
28
|
{
|
|
31
29
|
id: 'Region',
|
|
32
30
|
header: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnBucketRegion,
|
|
33
31
|
ariaLabel: getColumnAriaLabel(i18nStrings, i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnBucketRegion),
|
|
34
32
|
sortingField: 'Region',
|
|
35
|
-
cell:
|
|
36
|
-
minWidth: '150px'
|
|
33
|
+
cell: item => formatDefault(item.Region),
|
|
34
|
+
minWidth: '150px',
|
|
37
35
|
},
|
|
38
|
-
], onSelect:
|
|
36
|
+
], onSelect: item => { var _a; return onSelect((_a = item === null || item === void 0 ? void 0 : item.Name) !== null && _a !== void 0 ? _a : ''); } }));
|
|
39
37
|
}
|
|
40
38
|
//# sourceMappingURL=buckets-table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buckets-table.js","sourceRoot":"","sources":["../../../../src/s3-resource-selector/s3-modal/buckets-table.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"buckets-table.js","sourceRoot":"","sources":["../../../../src/s3-resource-selector/s3-modal/buckets-table.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\nimport React from 'react';\nimport InternalLink from '../../link/internal';\nimport { TableProps } from '../../table/interfaces';\nimport { ForwardFocusRef } from '../../internal/hooks/forward-focus';\nimport { S3ResourceSelectorProps } from '../interfaces';\nimport { compareDates, getColumnAriaLabel, includes } from './table-utils';\nimport { formatDefault } from './column-formats';\nimport { BasicS3Table, getSharedI18Strings } from './basic-table';\n\ninterface BucketsTableProps {\n forwardFocusRef: React.Ref<ForwardFocusRef>;\n visibleColumns: ReadonlyArray<string>;\n isItemDisabled: TableProps.IsItemDisabled<S3ResourceSelectorProps.Bucket> | undefined;\n selectableItemsTypes: S3ResourceSelectorProps['selectableItemsTypes'];\n fetchData: S3ResourceSelectorProps['fetchBuckets'];\n i18nStrings: S3ResourceSelectorProps.I18nStrings | undefined;\n isVisualRefresh?: boolean;\n onDrilldown: (path: string) => void;\n onSelect: (uri: string) => void;\n}\n\nexport function BucketsTable({\n forwardFocusRef,\n i18nStrings,\n isVisualRefresh,\n isItemDisabled,\n selectableItemsTypes,\n fetchData,\n visibleColumns,\n onDrilldown,\n onSelect,\n}: BucketsTableProps) {\n return (\n <BasicS3Table<S3ResourceSelectorProps.Bucket>\n forwardFocusRef={forwardFocusRef}\n trackBy=\"Name\"\n fetchData={fetchData}\n visibleColumns={visibleColumns}\n isItemDisabled={isItemDisabled || (() => !includes(selectableItemsTypes, 'buckets'))}\n i18nStrings={{\n ...getSharedI18Strings(i18nStrings),\n header: i18nStrings?.selectionBuckets,\n loadingText: i18nStrings?.selectionBucketsLoading,\n filteringAriaLabel: i18nStrings?.labelFiltering(i18nStrings?.selectionBuckets),\n filteringPlaceholder: i18nStrings?.selectionBucketsSearchPlaceholder,\n emptyText: i18nStrings?.selectionBucketsNoItems,\n selectionLabels: i18nStrings?.labelsBucketsSelection,\n }}\n isVisualRefresh={isVisualRefresh}\n columnDefinitions={[\n {\n id: 'Name',\n header: i18nStrings?.columnBucketName,\n ariaLabel: getColumnAriaLabel(i18nStrings, i18nStrings?.columnBucketName),\n sortingField: 'Name',\n cell: item => {\n const isClickable = includes(selectableItemsTypes, 'objects') || includes(selectableItemsTypes, 'versions');\n return isClickable ? (\n <InternalLink onFollow={() => item.Name && onDrilldown(item.Name)} variant=\"link\">\n {item.Name}\n </InternalLink>\n ) : (\n item.Name\n );\n },\n minWidth: '250px',\n },\n {\n id: 'CreationDate',\n header: i18nStrings?.columnBucketCreationDate,\n ariaLabel: getColumnAriaLabel(i18nStrings, i18nStrings?.columnBucketCreationDate),\n sortingComparator: (a, b) => compareDates(a.CreationDate, b.CreationDate),\n cell: item => formatDefault(item.CreationDate),\n },\n {\n id: 'Region',\n header: i18nStrings?.columnBucketRegion,\n ariaLabel: getColumnAriaLabel(i18nStrings, i18nStrings?.columnBucketRegion),\n sortingField: 'Region',\n cell: item => formatDefault(item.Region),\n minWidth: '150px',\n },\n ]}\n onSelect={item => onSelect(item?.Name ?? '')}\n />\n );\n}\n"]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
const BYTES_BASE = 1024;
|
|
4
|
+
const BYTES_DECIMALS = 2;
|
|
5
|
+
const BYTES_SIZES = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
|
|
6
6
|
export function formatDefault(value) {
|
|
7
7
|
return value ? value : '-';
|
|
8
8
|
}
|
|
@@ -11,9 +11,9 @@ export function formatSize(bytes) {
|
|
|
11
11
|
return '-';
|
|
12
12
|
}
|
|
13
13
|
if (bytes === 0) {
|
|
14
|
-
return
|
|
14
|
+
return `0 ${BYTES_SIZES[0]}`;
|
|
15
15
|
}
|
|
16
|
-
|
|
16
|
+
const i = Math.floor(Math.log(bytes) / Math.log(BYTES_BASE));
|
|
17
17
|
return parseFloat((bytes / Math.pow(BYTES_BASE, i)).toFixed(BYTES_DECIMALS)) + ' ' + BYTES_SIZES[i];
|
|
18
18
|
}
|
|
19
19
|
//# sourceMappingURL=column-formats.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"column-formats.js","sourceRoot":"","sources":["../../../../src/s3-resource-selector/s3-modal/column-formats.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,
|
|
1
|
+
{"version":3,"file":"column-formats.js","sourceRoot":"","sources":["../../../../src/s3-resource-selector/s3-modal/column-formats.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,cAAc,GAAG,CAAC,CAAC;AACzB,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAE9E,MAAM,UAAU,aAAa,CAAC,KAAyB;IACrD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAyB;IAClD,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,OAAO,GAAG,CAAC;KACZ;IACD,IAAI,KAAK,KAAK,CAAC,EAAE;QACf,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9B;IACD,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;IAC7D,OAAO,UAAU,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,GAAG,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;AACtG,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst BYTES_BASE = 1024;\nconst BYTES_DECIMALS = 2;\nconst BYTES_SIZES = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];\n\nexport function formatDefault(value: string | undefined) {\n return value ? value : '-';\n}\n\nexport function formatSize(bytes: number | undefined) {\n if (bytes === undefined) {\n return '-';\n }\n if (bytes === 0) {\n return `0 ${BYTES_SIZES[0]}`;\n }\n const i = Math.floor(Math.log(bytes) / Math.log(BYTES_BASE));\n return parseFloat((bytes / Math.pow(BYTES_BASE, i)).toFixed(BYTES_DECIMALS)) + ' ' + BYTES_SIZES[i];\n}\n"]}
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import InternalBox from '../../box/internal';
|
|
5
|
-
export function EmptyState(
|
|
6
|
-
var title = _a.title, subtitle = _a.subtitle, action = _a.action;
|
|
5
|
+
export function EmptyState({ title, subtitle, action }) {
|
|
7
6
|
return (React.createElement(InternalBox, { textAlign: "center", color: "inherit" },
|
|
8
7
|
React.createElement(InternalBox, { variant: "strong", textAlign: "center", color: "inherit" }, title),
|
|
9
8
|
React.createElement(InternalBox, { variant: "p", padding: { bottom: 's' }, color: "inherit" }, subtitle),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empty-state.js","sourceRoot":"","sources":["../../../../src/s3-resource-selector/s3-modal/empty-state.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAQ7C,MAAM,UAAU,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"empty-state.js","sourceRoot":"","sources":["../../../../src/s3-resource-selector/s3-modal/empty-state.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAQ7C,MAAM,UAAU,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAmB;IACrE,OAAO,CACL,oBAAC,WAAW,IAAC,SAAS,EAAC,QAAQ,EAAC,KAAK,EAAC,SAAS;QAC7C,oBAAC,WAAW,IAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,QAAQ,EAAC,KAAK,EAAC,SAAS,IAC7D,KAAK,CACM;QACd,oBAAC,WAAW,IAAC,OAAO,EAAC,GAAG,EAAC,OAAO,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,KAAK,EAAC,SAAS,IAC/D,QAAQ,CACG;QACb,MAAM,CACK,CACf,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\nimport InternalBox from '../../box/internal';\n\ninterface EmptyStateProps {\n title?: string;\n subtitle?: string;\n action?: React.ReactNode;\n}\n\nexport function EmptyState({ title, subtitle, action }: EmptyStateProps) {\n return (\n <InternalBox textAlign=\"center\" color=\"inherit\">\n <InternalBox variant=\"strong\" textAlign=\"center\" color=\"inherit\">\n {title}\n </InternalBox>\n <InternalBox variant=\"p\" padding={{ bottom: 's' }} color=\"inherit\">\n {subtitle}\n </InternalBox>\n {action}\n </InternalBox>\n );\n}\n"]}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { __assign, __spreadArray } from "tslib";
|
|
2
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
4
3
|
import React, { useReducer, useRef } from 'react';
|
|
@@ -17,10 +16,10 @@ import { joinObjectPath } from '../utils';
|
|
|
17
16
|
function assertNever(_value) {
|
|
18
17
|
return null;
|
|
19
18
|
}
|
|
20
|
-
|
|
19
|
+
const initialBrowseState = {
|
|
21
20
|
selectedItem: null,
|
|
22
21
|
currentView: 'buckets',
|
|
23
|
-
breadcrumbs: []
|
|
22
|
+
breadcrumbs: [],
|
|
24
23
|
};
|
|
25
24
|
function s3BrowseReducer(state, action) {
|
|
26
25
|
switch (action.type) {
|
|
@@ -30,76 +29,71 @@ function s3BrowseReducer(state, action) {
|
|
|
30
29
|
return {
|
|
31
30
|
selectedItem: null,
|
|
32
31
|
currentView: 'objects',
|
|
33
|
-
breadcrumbs: action.breadcrumbs
|
|
32
|
+
breadcrumbs: action.breadcrumbs,
|
|
34
33
|
};
|
|
35
34
|
case 'browse-versions':
|
|
36
35
|
return {
|
|
37
36
|
selectedItem: null,
|
|
38
37
|
currentView: 'versions',
|
|
39
|
-
breadcrumbs: action.breadcrumbs
|
|
38
|
+
breadcrumbs: action.breadcrumbs,
|
|
40
39
|
};
|
|
41
40
|
case 'select-item':
|
|
42
|
-
return
|
|
41
|
+
return Object.assign(Object.assign({}, state), { selectedItem: action.item });
|
|
43
42
|
default:
|
|
44
43
|
assertNever(action);
|
|
45
44
|
}
|
|
46
45
|
return state;
|
|
47
46
|
}
|
|
48
|
-
function createResourceInfo(
|
|
49
|
-
|
|
50
|
-
var prefix = 's3://';
|
|
47
|
+
function createResourceInfo({ currentView, breadcrumbs, selectedItem }) {
|
|
48
|
+
const prefix = 's3://';
|
|
51
49
|
if (currentView === 'versions') {
|
|
52
50
|
return { uri: prefix + joinObjectPath(breadcrumbs), versionId: selectedItem !== null && selectedItem !== void 0 ? selectedItem : undefined };
|
|
53
51
|
}
|
|
54
|
-
return { uri: prefix + joinObjectPath(
|
|
52
|
+
return { uri: prefix + joinObjectPath([...breadcrumbs, selectedItem]) };
|
|
55
53
|
}
|
|
56
|
-
export function S3Modal(
|
|
57
|
-
var
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
useEffectOnUpdate(function () {
|
|
54
|
+
export function S3Modal({ i18nStrings, alert, selectableItemsTypes, fetchBuckets, bucketsVisibleColumns, bucketsIsItemDisabled, fetchObjects, objectsVisibleColumns, objectsIsItemDisabled, fetchVersions, versionsVisibleColumns, versionsIsItemDisabled, onSubmit, onDismiss, }) {
|
|
55
|
+
var _a, _b;
|
|
56
|
+
const [{ currentView, breadcrumbs, selectedItem }, dispatch] = useReducer(s3BrowseReducer, initialBrowseState);
|
|
57
|
+
const forwardFocusRef = useRef(null);
|
|
58
|
+
const isVisualRefresh = useVisualRefresh();
|
|
59
|
+
useEffectOnUpdate(() => {
|
|
63
60
|
var _a;
|
|
64
61
|
(_a = forwardFocusRef.current) === null || _a === void 0 ? void 0 : _a.focus();
|
|
65
62
|
}, [breadcrumbs]);
|
|
66
63
|
return (React.createElement("div", null,
|
|
67
|
-
React.createElement(InternalModal, { visible: true, size: "max", closeAriaLabel: (
|
|
64
|
+
React.createElement(InternalModal, { visible: true, size: "max", closeAriaLabel: (_a = i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.labelModalDismiss) !== null && _a !== void 0 ? _a : '', onDismiss: onDismiss, header: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.modalTitle, footer: React.createElement(InternalSpaceBetween, { className: styles['modal-actions'], size: "xs", direction: "horizontal" },
|
|
68
65
|
React.createElement(InternalButton, { variant: "link", formAction: "none", onClick: onDismiss }, i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.modalCancelButton),
|
|
69
|
-
React.createElement(InternalButton, { variant: "primary", className: styles['submit-button'], disabled: !selectedItem, formAction: "none", onClick:
|
|
66
|
+
React.createElement(InternalButton, { variant: "primary", className: styles['submit-button'], disabled: !selectedItem, formAction: "none", onClick: () => onSubmit(createResourceInfo({ currentView, breadcrumbs, selectedItem })) }, i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.modalSubmitButton)) },
|
|
70
67
|
React.createElement(InternalSpaceBetween, { size: isVisualRefresh ? 'xxs' : 'xs' },
|
|
71
|
-
React.createElement(InternalBreadcrumbGroup, { ariaLabel: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.labelBreadcrumbs, expandAriaLabel: "Show path", onFollow:
|
|
68
|
+
React.createElement(InternalBreadcrumbGroup, { ariaLabel: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.labelBreadcrumbs, expandAriaLabel: "Show path", onFollow: event => {
|
|
72
69
|
event.preventDefault();
|
|
73
70
|
event.detail.item.meta.onClick();
|
|
74
|
-
}, items:
|
|
71
|
+
}, items: [
|
|
75
72
|
{
|
|
76
|
-
text: (
|
|
73
|
+
text: (_b = i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.modalBreadcrumbRootItem) !== null && _b !== void 0 ? _b : '',
|
|
77
74
|
href: '',
|
|
78
|
-
meta: { onClick:
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
return dispatch({
|
|
75
|
+
meta: { onClick: () => dispatch({ type: 'browse-buckets' }) },
|
|
76
|
+
},
|
|
77
|
+
...breadcrumbs.map((segment, index) => ({
|
|
78
|
+
text: segment,
|
|
79
|
+
href: '',
|
|
80
|
+
meta: {
|
|
81
|
+
onClick: () => dispatch({
|
|
86
82
|
type: 'browse-objects',
|
|
87
|
-
breadcrumbs: breadcrumbs.slice(0, index + 1)
|
|
88
|
-
})
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
|
|
83
|
+
breadcrumbs: breadcrumbs.slice(0, index + 1),
|
|
84
|
+
}),
|
|
85
|
+
},
|
|
86
|
+
})),
|
|
87
|
+
] }),
|
|
92
88
|
alert,
|
|
93
|
-
currentView === 'buckets' ? (React.createElement(BucketsTable, { forwardFocusRef: forwardFocusRef, fetchData: fetchBuckets, visibleColumns: bucketsVisibleColumns, isItemDisabled: bucketsIsItemDisabled, selectableItemsTypes: selectableItemsTypes, i18nStrings: i18nStrings, isVisualRefresh: isVisualRefresh, onDrilldown:
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
});
|
|
98
|
-
}, onSelect: function (item) { return dispatch({ type: 'select-item', item: item }); } })) : currentView === 'objects' ? (React.createElement(ObjectsTable, { forwardFocusRef: forwardFocusRef, pathSegments: breadcrumbs, fetchData: fetchObjects, visibleColumns: objectsVisibleColumns, isItemDisabled: objectsIsItemDisabled, selectableItemsTypes: selectableItemsTypes, i18nStrings: i18nStrings, isVisualRefresh: isVisualRefresh, onDrilldown: function (item) {
|
|
89
|
+
currentView === 'buckets' ? (React.createElement(BucketsTable, { forwardFocusRef: forwardFocusRef, fetchData: fetchBuckets, visibleColumns: bucketsVisibleColumns, isItemDisabled: bucketsIsItemDisabled, selectableItemsTypes: selectableItemsTypes, i18nStrings: i18nStrings, isVisualRefresh: isVisualRefresh, onDrilldown: path => dispatch({
|
|
90
|
+
type: 'browse-objects',
|
|
91
|
+
breadcrumbs: [path],
|
|
92
|
+
}), onSelect: item => dispatch({ type: 'select-item', item }) })) : currentView === 'objects' ? (React.createElement(ObjectsTable, { forwardFocusRef: forwardFocusRef, pathSegments: breadcrumbs, fetchData: fetchObjects, visibleColumns: objectsVisibleColumns, isItemDisabled: objectsIsItemDisabled, selectableItemsTypes: selectableItemsTypes, i18nStrings: i18nStrings, isVisualRefresh: isVisualRefresh, onDrilldown: item => {
|
|
99
93
|
dispatch({
|
|
100
94
|
type: item.IsFolder ? 'browse-objects' : 'browse-versions',
|
|
101
|
-
breadcrumbs:
|
|
95
|
+
breadcrumbs: [...breadcrumbs, item.Key],
|
|
102
96
|
});
|
|
103
|
-
}, onSelect:
|
|
97
|
+
}, onSelect: item => dispatch({ type: 'select-item', item }) })) : currentView === 'versions' ? (React.createElement(VersionsTable, { forwardFocusRef: forwardFocusRef, pathSegments: breadcrumbs, fetchData: fetchVersions, visibleColumns: versionsVisibleColumns, isItemDisabled: versionsIsItemDisabled, i18nStrings: i18nStrings, isVisualRefresh: isVisualRefresh, onSelect: item => dispatch({ type: 'select-item', item }) })) : (assertNever(currentView))))));
|
|
104
98
|
}
|
|
105
99
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/s3-resource-selector/s3-modal/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\nimport React, { useReducer, useRef } from 'react';\nimport InternalBreadcrumbGroup from '../../breadcrumb-group/internal';\nimport { InternalButton } from '../../button/internal';\nimport InternalModal from '../../modal/internal';\nimport InternalSpaceBetween from '../../space-between/internal';\nimport { ForwardFocusRef } from '../../internal/hooks/forward-focus';\nimport { useEffectOnUpdate } from '../../internal/hooks/use-effect-on-update';\nimport { useVisualRefresh } from '../../internal/hooks/use-visual-mode';\nimport { S3ResourceSelectorProps } from '../interfaces';\nimport { BucketsTable } from './buckets-table';\nimport { ObjectsTable } from './objects-table';\nimport { VersionsTable } from './versions-table';\nimport styles from './styles.css.js';\nimport { joinObjectPath } from '../utils';\n\nexport interface S3ModalProps {\n alert: React.ReactNode;\n selectableItemsTypes: S3ResourceSelectorProps['selectableItemsTypes'];\n fetchBuckets: S3ResourceSelectorProps['fetchBuckets'];\n bucketsVisibleColumns: ReadonlyArray<string>;\n bucketsIsItemDisabled: S3ResourceSelectorProps['bucketsIsItemDisabled'];\n fetchObjects: S3ResourceSelectorProps['fetchObjects'];\n objectsVisibleColumns: ReadonlyArray<string>;\n objectsIsItemDisabled: S3ResourceSelectorProps['objectsIsItemDisabled'];\n fetchVersions: S3ResourceSelectorProps['fetchVersions'];\n versionsVisibleColumns: ReadonlyArray<string>;\n versionsIsItemDisabled: S3ResourceSelectorProps['versionsIsItemDisabled'];\n i18nStrings: S3ResourceSelectorProps.I18nStrings | undefined;\n onDismiss: () => void;\n onSubmit: (resource: S3ResourceSelectorProps.Resource) => void;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction assertNever(_value: never) {\n return null;\n}\n\ninterface S3BrowseState {\n selectedItem: string | null;\n currentView: 'buckets' | 'objects' | 'versions';\n breadcrumbs: ReadonlyArray<string>;\n}\n\ntype S3BrowseActions =\n | { type: 'browse-buckets' }\n | { type: 'browse-objects' | 'browse-versions'; breadcrumbs: S3BrowseState['breadcrumbs'] }\n | { type: 'select-item'; item: string };\n\nconst initialBrowseState: S3BrowseState = {\n selectedItem: null,\n currentView: 'buckets',\n breadcrumbs: [],\n};\n\nfunction s3BrowseReducer(state: S3BrowseState, action: S3BrowseActions) {\n switch (action.type) {\n case 'browse-buckets':\n return initialBrowseState;\n case 'browse-objects':\n return {\n selectedItem: null,\n currentView: 'objects' as const,\n breadcrumbs: action.breadcrumbs,\n };\n case 'browse-versions':\n return {\n selectedItem: null,\n currentView: 'versions' as const,\n breadcrumbs: action.breadcrumbs,\n };\n case 'select-item':\n return {\n ...state,\n selectedItem: action.item,\n };\n default:\n assertNever(action);\n }\n return state;\n}\n\nfunction createResourceInfo({ currentView, breadcrumbs, selectedItem }: S3BrowseState) {\n const prefix = 's3://';\n if (currentView === 'versions') {\n return { uri: prefix + joinObjectPath(breadcrumbs), versionId: selectedItem ?? undefined };\n }\n return { uri: prefix + joinObjectPath([...breadcrumbs, selectedItem!]) };\n}\n\nexport function S3Modal({\n i18nStrings,\n alert,\n selectableItemsTypes,\n fetchBuckets,\n bucketsVisibleColumns,\n bucketsIsItemDisabled,\n fetchObjects,\n objectsVisibleColumns,\n objectsIsItemDisabled,\n fetchVersions,\n versionsVisibleColumns,\n versionsIsItemDisabled,\n onSubmit,\n onDismiss,\n}: S3ModalProps) {\n const [{ currentView, breadcrumbs, selectedItem }, dispatch] = useReducer(s3BrowseReducer, initialBrowseState);\n const forwardFocusRef = useRef<ForwardFocusRef>(null);\n\n const isVisualRefresh = useVisualRefresh();\n\n useEffectOnUpdate(() => {\n forwardFocusRef.current?.focus();\n }, [breadcrumbs]);\n\n return (\n <div>\n <InternalModal\n visible={true}\n size=\"max\"\n closeAriaLabel={i18nStrings?.labelModalDismiss ?? ''}\n onDismiss={onDismiss}\n header={i18nStrings?.modalTitle}\n footer={\n <InternalSpaceBetween className={styles['modal-actions']} size=\"xs\" direction=\"horizontal\">\n <InternalButton variant=\"link\" formAction=\"none\" onClick={onDismiss}>\n {i18nStrings?.modalCancelButton}\n </InternalButton>\n <InternalButton\n variant=\"primary\"\n className={styles['submit-button']}\n disabled={!selectedItem}\n formAction=\"none\"\n onClick={() => onSubmit(createResourceInfo({ currentView, breadcrumbs, selectedItem }))}\n >\n {i18nStrings?.modalSubmitButton}\n </InternalButton>\n </InternalSpaceBetween>\n }\n >\n <InternalSpaceBetween size={isVisualRefresh ? 'xxs' : 'xs'}>\n <InternalBreadcrumbGroup\n ariaLabel={i18nStrings?.labelBreadcrumbs}\n expandAriaLabel=\"Show path\"\n onFollow={event => {\n event.preventDefault();\n event.detail.item.meta.onClick();\n }}\n items={[\n {\n text: i18nStrings?.modalBreadcrumbRootItem ?? '',\n href: '',\n meta: { onClick: () => dispatch({ type: 'browse-buckets' }) },\n },\n ...breadcrumbs.map((segment, index) => ({\n text: segment,\n href: '',\n meta: {\n onClick: () =>\n dispatch({\n type: 'browse-objects',\n breadcrumbs: breadcrumbs.slice(0, index + 1),\n }),\n },\n })),\n ]}\n />\n {alert}\n {currentView === 'buckets' ? (\n <BucketsTable\n forwardFocusRef={forwardFocusRef}\n fetchData={fetchBuckets}\n visibleColumns={bucketsVisibleColumns}\n isItemDisabled={bucketsIsItemDisabled}\n selectableItemsTypes={selectableItemsTypes}\n i18nStrings={i18nStrings}\n isVisualRefresh={isVisualRefresh}\n onDrilldown={path =>\n dispatch({\n type: 'browse-objects',\n breadcrumbs: [path],\n })\n }\n onSelect={item => dispatch({ type: 'select-item', item })}\n />\n ) : currentView === 'objects' ? (\n <ObjectsTable\n forwardFocusRef={forwardFocusRef}\n pathSegments={breadcrumbs}\n fetchData={fetchObjects}\n visibleColumns={objectsVisibleColumns}\n isItemDisabled={objectsIsItemDisabled}\n selectableItemsTypes={selectableItemsTypes}\n i18nStrings={i18nStrings}\n isVisualRefresh={isVisualRefresh}\n onDrilldown={item => {\n dispatch({\n type: item.IsFolder ? 'browse-objects' : 'browse-versions',\n breadcrumbs: [...breadcrumbs, item.Key!],\n });\n }}\n onSelect={item => dispatch({ type: 'select-item', item })}\n />\n ) : currentView === 'versions' ? (\n <VersionsTable\n forwardFocusRef={forwardFocusRef}\n pathSegments={breadcrumbs}\n fetchData={fetchVersions}\n visibleColumns={versionsVisibleColumns}\n isItemDisabled={versionsIsItemDisabled}\n i18nStrings={i18nStrings}\n isVisualRefresh={isVisualRefresh}\n onSelect={item => dispatch({ type: 'select-item', item })}\n />\n ) : (\n assertNever(currentView)\n )}\n </InternalSpaceBetween>\n </InternalModal>\n </div>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/s3-resource-selector/s3-modal/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\nimport React, { useReducer, useRef } from 'react';\nimport InternalBreadcrumbGroup from '../../breadcrumb-group/internal';\nimport { InternalButton } from '../../button/internal';\nimport InternalModal from '../../modal/internal';\nimport InternalSpaceBetween from '../../space-between/internal';\nimport { ForwardFocusRef } from '../../internal/hooks/forward-focus';\nimport { useEffectOnUpdate } from '../../internal/hooks/use-effect-on-update';\nimport { useVisualRefresh } from '../../internal/hooks/use-visual-mode';\nimport { S3ResourceSelectorProps } from '../interfaces';\nimport { BucketsTable } from './buckets-table';\nimport { ObjectsTable } from './objects-table';\nimport { VersionsTable } from './versions-table';\nimport styles from './styles.css.js';\nimport { joinObjectPath } from '../utils';\n\nexport interface S3ModalProps {\n alert: React.ReactNode;\n selectableItemsTypes: S3ResourceSelectorProps['selectableItemsTypes'];\n fetchBuckets: S3ResourceSelectorProps['fetchBuckets'];\n bucketsVisibleColumns: ReadonlyArray<string>;\n bucketsIsItemDisabled: S3ResourceSelectorProps['bucketsIsItemDisabled'];\n fetchObjects: S3ResourceSelectorProps['fetchObjects'];\n objectsVisibleColumns: ReadonlyArray<string>;\n objectsIsItemDisabled: S3ResourceSelectorProps['objectsIsItemDisabled'];\n fetchVersions: S3ResourceSelectorProps['fetchVersions'];\n versionsVisibleColumns: ReadonlyArray<string>;\n versionsIsItemDisabled: S3ResourceSelectorProps['versionsIsItemDisabled'];\n i18nStrings: S3ResourceSelectorProps.I18nStrings | undefined;\n onDismiss: () => void;\n onSubmit: (resource: S3ResourceSelectorProps.Resource) => void;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction assertNever(_value: never) {\n return null;\n}\n\ninterface S3BrowseState {\n selectedItem: string | null;\n currentView: 'buckets' | 'objects' | 'versions';\n breadcrumbs: ReadonlyArray<string>;\n}\n\ntype S3BrowseActions =\n | { type: 'browse-buckets' }\n | { type: 'browse-objects' | 'browse-versions'; breadcrumbs: S3BrowseState['breadcrumbs'] }\n | { type: 'select-item'; item: string };\n\nconst initialBrowseState: S3BrowseState = {\n selectedItem: null,\n currentView: 'buckets',\n breadcrumbs: [],\n};\n\nfunction s3BrowseReducer(state: S3BrowseState, action: S3BrowseActions) {\n switch (action.type) {\n case 'browse-buckets':\n return initialBrowseState;\n case 'browse-objects':\n return {\n selectedItem: null,\n currentView: 'objects' as const,\n breadcrumbs: action.breadcrumbs,\n };\n case 'browse-versions':\n return {\n selectedItem: null,\n currentView: 'versions' as const,\n breadcrumbs: action.breadcrumbs,\n };\n case 'select-item':\n return {\n ...state,\n selectedItem: action.item,\n };\n default:\n assertNever(action);\n }\n return state;\n}\n\nfunction createResourceInfo({ currentView, breadcrumbs, selectedItem }: S3BrowseState) {\n const prefix = 's3://';\n if (currentView === 'versions') {\n return { uri: prefix + joinObjectPath(breadcrumbs), versionId: selectedItem ?? undefined };\n }\n return { uri: prefix + joinObjectPath([...breadcrumbs, selectedItem!]) };\n}\n\nexport function S3Modal({\n i18nStrings,\n alert,\n selectableItemsTypes,\n fetchBuckets,\n bucketsVisibleColumns,\n bucketsIsItemDisabled,\n fetchObjects,\n objectsVisibleColumns,\n objectsIsItemDisabled,\n fetchVersions,\n versionsVisibleColumns,\n versionsIsItemDisabled,\n onSubmit,\n onDismiss,\n}: S3ModalProps) {\n const [{ currentView, breadcrumbs, selectedItem }, dispatch] = useReducer(s3BrowseReducer, initialBrowseState);\n const forwardFocusRef = useRef<ForwardFocusRef>(null);\n\n const isVisualRefresh = useVisualRefresh();\n\n useEffectOnUpdate(() => {\n forwardFocusRef.current?.focus();\n }, [breadcrumbs]);\n\n return (\n <div>\n <InternalModal\n visible={true}\n size=\"max\"\n closeAriaLabel={i18nStrings?.labelModalDismiss ?? ''}\n onDismiss={onDismiss}\n header={i18nStrings?.modalTitle}\n footer={\n <InternalSpaceBetween className={styles['modal-actions']} size=\"xs\" direction=\"horizontal\">\n <InternalButton variant=\"link\" formAction=\"none\" onClick={onDismiss}>\n {i18nStrings?.modalCancelButton}\n </InternalButton>\n <InternalButton\n variant=\"primary\"\n className={styles['submit-button']}\n disabled={!selectedItem}\n formAction=\"none\"\n onClick={() => onSubmit(createResourceInfo({ currentView, breadcrumbs, selectedItem }))}\n >\n {i18nStrings?.modalSubmitButton}\n </InternalButton>\n </InternalSpaceBetween>\n }\n >\n <InternalSpaceBetween size={isVisualRefresh ? 'xxs' : 'xs'}>\n <InternalBreadcrumbGroup\n ariaLabel={i18nStrings?.labelBreadcrumbs}\n expandAriaLabel=\"Show path\"\n onFollow={event => {\n event.preventDefault();\n event.detail.item.meta.onClick();\n }}\n items={[\n {\n text: i18nStrings?.modalBreadcrumbRootItem ?? '',\n href: '',\n meta: { onClick: () => dispatch({ type: 'browse-buckets' }) },\n },\n ...breadcrumbs.map((segment, index) => ({\n text: segment,\n href: '',\n meta: {\n onClick: () =>\n dispatch({\n type: 'browse-objects',\n breadcrumbs: breadcrumbs.slice(0, index + 1),\n }),\n },\n })),\n ]}\n />\n {alert}\n {currentView === 'buckets' ? (\n <BucketsTable\n forwardFocusRef={forwardFocusRef}\n fetchData={fetchBuckets}\n visibleColumns={bucketsVisibleColumns}\n isItemDisabled={bucketsIsItemDisabled}\n selectableItemsTypes={selectableItemsTypes}\n i18nStrings={i18nStrings}\n isVisualRefresh={isVisualRefresh}\n onDrilldown={path =>\n dispatch({\n type: 'browse-objects',\n breadcrumbs: [path],\n })\n }\n onSelect={item => dispatch({ type: 'select-item', item })}\n />\n ) : currentView === 'objects' ? (\n <ObjectsTable\n forwardFocusRef={forwardFocusRef}\n pathSegments={breadcrumbs}\n fetchData={fetchObjects}\n visibleColumns={objectsVisibleColumns}\n isItemDisabled={objectsIsItemDisabled}\n selectableItemsTypes={selectableItemsTypes}\n i18nStrings={i18nStrings}\n isVisualRefresh={isVisualRefresh}\n onDrilldown={item => {\n dispatch({\n type: item.IsFolder ? 'browse-objects' : 'browse-versions',\n breadcrumbs: [...breadcrumbs, item.Key!],\n });\n }}\n onSelect={item => dispatch({ type: 'select-item', item })}\n />\n ) : currentView === 'versions' ? (\n <VersionsTable\n forwardFocusRef={forwardFocusRef}\n pathSegments={breadcrumbs}\n fetchData={fetchVersions}\n visibleColumns={versionsVisibleColumns}\n isItemDisabled={versionsIsItemDisabled}\n i18nStrings={i18nStrings}\n isVisualRefresh={isVisualRefresh}\n onSelect={item => dispatch({ type: 'select-item', item })}\n />\n ) : (\n assertNever(currentView)\n )}\n </InternalSpaceBetween>\n </InternalModal>\n </div>\n );\n}\n"]}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { __assign } from "tslib";
|
|
2
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
4
3
|
import React from 'react';
|
|
@@ -8,42 +7,41 @@ import InternalLink from '../../link/internal';
|
|
|
8
7
|
import { formatSize, formatDefault } from './column-formats';
|
|
9
8
|
import { BasicS3Table, getSharedI18Strings } from './basic-table';
|
|
10
9
|
import { joinObjectPath } from '../utils';
|
|
11
|
-
export function ObjectsTable(
|
|
12
|
-
var forwardFocusRef = _a.forwardFocusRef, pathSegments = _a.pathSegments, i18nStrings = _a.i18nStrings, isVisualRefresh = _a.isVisualRefresh, isItemDisabled = _a.isItemDisabled, selectableItemsTypes = _a.selectableItemsTypes, fetchData = _a.fetchData, visibleColumns = _a.visibleColumns, onDrilldown = _a.onDrilldown, onSelect = _a.onSelect;
|
|
10
|
+
export function ObjectsTable({ forwardFocusRef, pathSegments, i18nStrings, isVisualRefresh, isItemDisabled, selectableItemsTypes, fetchData, visibleColumns, onDrilldown, onSelect, }) {
|
|
13
11
|
return (React.createElement(BasicS3Table, {
|
|
14
12
|
// remount fresh component every we change the path to reset the inner state (e.g. selection/filtering)
|
|
15
|
-
key: pathSegments.join('/'), forwardFocusRef: forwardFocusRef, trackBy: "Key", fetchData:
|
|
16
|
-
|
|
13
|
+
key: pathSegments.join('/'), forwardFocusRef: forwardFocusRef, trackBy: "Key", fetchData: () => {
|
|
14
|
+
const [bucketName, ...rest] = pathSegments;
|
|
17
15
|
return fetchData(bucketName, joinObjectPath(rest));
|
|
18
|
-
}, i18nStrings:
|
|
16
|
+
}, i18nStrings: Object.assign(Object.assign({}, getSharedI18Strings(i18nStrings)), { header: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionObjects, filteringAriaLabel: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.labelFiltering(i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionObjects), filteringPlaceholder: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionObjectsSearchPlaceholder, loadingText: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionObjectsLoading, emptyText: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.selectionObjectsNoItems, selectionLabels: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.labelsObjectsSelection }), isVisualRefresh: isVisualRefresh, visibleColumns: visibleColumns, isItemDisabled: isItemDisabled || (() => !includes(selectableItemsTypes, 'objects')), columnDefinitions: [
|
|
19
17
|
{
|
|
20
18
|
id: 'Key',
|
|
21
19
|
header: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnObjectKey,
|
|
22
20
|
ariaLabel: getColumnAriaLabel(i18nStrings, i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnObjectKey),
|
|
23
21
|
sortingField: 'Key',
|
|
24
|
-
cell:
|
|
25
|
-
|
|
22
|
+
cell: item => {
|
|
23
|
+
const isClickable = item.IsFolder || includes(selectableItemsTypes, 'versions');
|
|
26
24
|
return (React.createElement(React.Fragment, null,
|
|
27
25
|
React.createElement(InternalIcon, { name: item.IsFolder ? 'folder' : 'file' }),
|
|
28
26
|
' ',
|
|
29
|
-
isClickable ? (React.createElement(InternalLink, { onFollow:
|
|
27
|
+
isClickable ? (React.createElement(InternalLink, { onFollow: () => item.Key && onDrilldown(item), variant: "link" }, item.Key)) : (item.Key)));
|
|
30
28
|
},
|
|
31
|
-
minWidth: '250px'
|
|
29
|
+
minWidth: '250px',
|
|
32
30
|
},
|
|
33
31
|
{
|
|
34
32
|
id: 'LastModified',
|
|
35
33
|
header: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnObjectLastModified,
|
|
36
34
|
ariaLabel: getColumnAriaLabel(i18nStrings, i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnObjectLastModified),
|
|
37
|
-
sortingComparator:
|
|
38
|
-
cell:
|
|
35
|
+
sortingComparator: (a, b) => compareDates(a.LastModified, b.LastModified),
|
|
36
|
+
cell: item => formatDefault(item.LastModified),
|
|
39
37
|
},
|
|
40
38
|
{
|
|
41
39
|
id: 'Size',
|
|
42
40
|
header: i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnObjectSize,
|
|
43
41
|
ariaLabel: getColumnAriaLabel(i18nStrings, i18nStrings === null || i18nStrings === void 0 ? void 0 : i18nStrings.columnObjectSize),
|
|
44
42
|
sortingField: 'Size',
|
|
45
|
-
cell:
|
|
43
|
+
cell: item => formatSize(item.Size),
|
|
46
44
|
},
|
|
47
|
-
], onSelect:
|
|
45
|
+
], onSelect: item => { var _a; return onSelect((_a = item === null || item === void 0 ? void 0 : item.Key) !== null && _a !== void 0 ? _a : ''); } }));
|
|
48
46
|
}
|
|
49
47
|
//# sourceMappingURL=objects-table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"objects-table.js","sourceRoot":"","sources":["../../../../src/s3-resource-selector/s3-modal/objects-table.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"objects-table.js","sourceRoot":"","sources":["../../../../src/s3-resource-selector/s3-modal/objects-table.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\nimport React from 'react';\nimport { S3ResourceSelectorProps } from '../interfaces';\nimport { compareDates, getColumnAriaLabel, includes } from './table-utils';\nimport InternalIcon from '../../icon/internal';\nimport InternalLink from '../../link/internal';\nimport { TableProps } from '../../table/interfaces';\nimport { ForwardFocusRef } from '../../internal/hooks/forward-focus';\nimport { formatSize, formatDefault } from './column-formats';\nimport { BasicS3Table, getSharedI18Strings } from './basic-table';\nimport { joinObjectPath } from '../utils';\n\ninterface ObjectsTableProps {\n forwardFocusRef: React.Ref<ForwardFocusRef>;\n pathSegments: ReadonlyArray<string>;\n visibleColumns: ReadonlyArray<string>;\n isItemDisabled: TableProps.IsItemDisabled<S3ResourceSelectorProps.Object> | undefined;\n selectableItemsTypes: S3ResourceSelectorProps['selectableItemsTypes'];\n fetchData: S3ResourceSelectorProps['fetchObjects'];\n i18nStrings: S3ResourceSelectorProps.I18nStrings | undefined;\n isVisualRefresh?: boolean;\n onDrilldown: (path: S3ResourceSelectorProps.Object) => void;\n onSelect: (uri: string) => void;\n}\n\nexport function ObjectsTable({\n forwardFocusRef,\n pathSegments,\n i18nStrings,\n isVisualRefresh,\n isItemDisabled,\n selectableItemsTypes,\n fetchData,\n visibleColumns,\n onDrilldown,\n onSelect,\n}: ObjectsTableProps) {\n return (\n <BasicS3Table<S3ResourceSelectorProps.Object>\n // remount fresh component every we change the path to reset the inner state (e.g. selection/filtering)\n key={pathSegments.join('/')}\n forwardFocusRef={forwardFocusRef}\n trackBy=\"Key\"\n fetchData={() => {\n const [bucketName, ...rest] = pathSegments;\n return fetchData(bucketName, joinObjectPath(rest));\n }}\n i18nStrings={{\n ...getSharedI18Strings(i18nStrings),\n header: i18nStrings?.selectionObjects,\n filteringAriaLabel: i18nStrings?.labelFiltering(i18nStrings?.selectionObjects),\n filteringPlaceholder: i18nStrings?.selectionObjectsSearchPlaceholder,\n loadingText: i18nStrings?.selectionObjectsLoading,\n emptyText: i18nStrings?.selectionObjectsNoItems,\n selectionLabels: i18nStrings?.labelsObjectsSelection,\n }}\n isVisualRefresh={isVisualRefresh}\n visibleColumns={visibleColumns}\n isItemDisabled={isItemDisabled || (() => !includes(selectableItemsTypes, 'objects'))}\n columnDefinitions={[\n {\n id: 'Key',\n header: i18nStrings?.columnObjectKey,\n ariaLabel: getColumnAriaLabel(i18nStrings, i18nStrings?.columnObjectKey),\n sortingField: 'Key',\n cell: item => {\n const isClickable = item.IsFolder || includes(selectableItemsTypes, 'versions');\n return (\n <>\n <InternalIcon name={item.IsFolder ? 'folder' : 'file'} />{' '}\n {isClickable ? (\n <InternalLink onFollow={() => item.Key && onDrilldown(item)} variant=\"link\">\n {item.Key}\n </InternalLink>\n ) : (\n item.Key\n )}\n </>\n );\n },\n minWidth: '250px',\n },\n {\n id: 'LastModified',\n header: i18nStrings?.columnObjectLastModified,\n ariaLabel: getColumnAriaLabel(i18nStrings, i18nStrings?.columnObjectLastModified),\n sortingComparator: (a, b) => compareDates(a.LastModified, b.LastModified),\n cell: item => formatDefault(item.LastModified),\n },\n {\n id: 'Size',\n header: i18nStrings?.columnObjectSize,\n ariaLabel: getColumnAriaLabel(i18nStrings, i18nStrings?.columnObjectSize),\n sortingField: 'Size',\n cell: item => formatSize(item.Size),\n },\n ]}\n onSelect={item => onSelect(item?.Key ?? '')}\n />\n );\n}\n"]}
|