@wordpress/components 28.8.6 → 28.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +44 -5
- package/build/alignment-matrix-control/icon.js.map +1 -1
- package/build/alignment-matrix-control/types.js.map +1 -1
- package/build/alignment-matrix-control/utils.js.map +1 -1
- package/build/angle-picker-control/angle-circle.js.map +1 -1
- package/build/autocomplete/autocompleter-ui.js +3 -3
- package/build/autocomplete/autocompleter-ui.js.map +1 -1
- package/build/autocomplete/get-default-use-items.js.map +1 -1
- package/build/autocomplete/index.js +5 -1
- package/build/autocomplete/index.js.map +1 -1
- package/build/base-control/hooks.js.map +1 -1
- package/build/base-control/index.js.map +1 -1
- package/build/border-box-control/border-box-control/component.js +3 -14
- package/build/border-box-control/border-box-control/component.js.map +1 -1
- package/build/border-box-control/border-box-control/hook.js.map +1 -1
- package/build/border-box-control/styles.js.map +1 -1
- package/build/border-box-control/utils.js.map +1 -1
- package/build/border-control/border-control/component.js +1 -2
- package/build/border-control/border-control/component.js.map +1 -1
- package/build/border-control/border-control/hook.js.map +1 -1
- package/build/border-control/border-control-dropdown/component.js +2 -14
- package/build/border-control/border-control-dropdown/component.js.map +1 -1
- package/build/border-control/styles.js +13 -13
- package/build/border-control/styles.js.map +1 -1
- package/build/border-control/types.js.map +1 -1
- package/build/box-control/axial-input-controls.js.map +1 -1
- package/build/box-control/icon.js.map +1 -1
- package/build/box-control/index.js +4 -4
- package/build/box-control/index.js.map +1 -1
- package/build/box-control/input-controls.js.map +1 -1
- package/build/box-control/types.js.map +1 -1
- package/build/button/index.native.js +1 -1
- package/build/button/index.native.js.map +1 -1
- package/build/card/card/component.js +1 -1
- package/build/card/card/component.js.map +1 -1
- package/build/card/styles.js.map +1 -1
- package/build/color-palette/index.js.map +1 -1
- package/build/color-palette/index.native.js +2 -1
- package/build/color-palette/index.native.js.map +1 -1
- package/build/color-picker/styles.js.map +1 -1
- package/build/combobox-control/index.js +1 -1
- package/build/combobox-control/index.js.map +1 -1
- package/build/composite/legacy/index.js.map +1 -1
- package/build/context/context-connect.js +1 -0
- package/build/context/context-connect.js.map +1 -1
- package/build/context/context-system-provider.js +1 -1
- package/build/context/context-system-provider.js.map +1 -1
- package/build/context/get-styled-class-name-from-key.js.map +1 -1
- package/build/custom-gradient-picker/gradient-bar/control-points.js.map +1 -1
- package/build/custom-gradient-picker/index.js.map +1 -1
- package/build/custom-gradient-picker/serializer.js.map +1 -1
- package/build/custom-gradient-picker/utils.js.map +1 -1
- package/build/custom-select-control-v2/styles.js.map +1 -1
- package/build/dashicon/index.js.map +1 -1
- package/build/date-time/date/styles.js.map +1 -1
- package/build/date-time/time/timezone.js.map +1 -1
- package/build/draggable/index.js.map +1 -1
- package/build/drop-zone/index.js.map +1 -1
- package/build/dropdown-menu-v2/styles.js.map +1 -1
- package/build/duotone-picker/color-list-picker/index.js.map +1 -1
- package/build/duotone-picker/utils.js.map +1 -1
- package/build/elevation/hook.js.map +1 -1
- package/build/external-link/index.js +20 -23
- package/build/external-link/index.js.map +1 -1
- package/build/focal-point-picker/index.js.map +1 -1
- package/build/focal-point-picker/index.native.js.map +1 -1
- package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
- package/build/font-size-picker/index.js.map +1 -1
- package/build/form-token-field/index.js +2 -1
- package/build/form-token-field/index.js.map +1 -1
- package/build/form-token-field/suggestions-list.js.map +1 -1
- package/build/form-token-field/token-input.js.map +1 -1
- package/build/form-token-field/token.js +1 -1
- package/build/form-token-field/token.js.map +1 -1
- package/build/gradient-picker/index.js.map +1 -1
- package/build/grid/hook.js.map +1 -1
- package/build/guide/page-control.js +1 -1
- package/build/guide/page-control.js.map +1 -1
- package/build/h-stack/hook.js.map +1 -1
- package/build/heading/hook.js.map +1 -1
- package/build/index.js +36 -5
- package/build/index.js.map +1 -1
- package/build/input-control/index.js.map +1 -1
- package/build/input-control/input-base.js.map +1 -1
- package/build/input-control/styles/input-control-styles.js.map +1 -1
- package/build/item-group/styles.js.map +1 -1
- package/build/menu-group/index.js.map +1 -1
- package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js.map +1 -1
- package/build/mobile/bottom-sheet/cell.native.js +4 -4
- package/build/mobile/bottom-sheet/cell.native.js.map +1 -1
- package/build/mobile/bottom-sheet/index.native.js.map +1 -1
- package/build/mobile/bottom-sheet/range-cell.native.js +1 -1
- package/build/mobile/bottom-sheet/range-cell.native.js.map +1 -1
- package/build/mobile/bottom-sheet/range-text-input.native.js.map +1 -1
- package/build/mobile/bottom-sheet/stepper-cell/index.native.js +1 -1
- package/build/mobile/bottom-sheet/stepper-cell/index.native.js.map +1 -1
- package/build/mobile/bottom-sheet/switch-cell.native.js +4 -4
- package/build/mobile/bottom-sheet/switch-cell.native.js.map +1 -1
- package/build/mobile/cycle-select-control/index.native.js.map +1 -1
- package/build/mobile/gradient/index.native.js.map +1 -1
- package/build/mobile/image/index.native.js.map +1 -1
- package/build/mobile/link-picker/index.native.js +1 -1
- package/build/mobile/link-picker/index.native.js.map +1 -1
- package/build/mobile/link-picker/link-picker-results.native.js.map +1 -1
- package/build/mobile/picker/index.android.js.map +1 -1
- package/build/mobile/segmented-control/index.native.js.map +1 -1
- package/build/mobile/utils/get-px-from-css-unit.native.js.map +1 -1
- package/build/mobile/utils/use-unit-converter-to-mobile.native.js.map +1 -1
- package/build/modal/aria-helper.js +2 -1
- package/build/modal/aria-helper.js.map +1 -1
- package/build/modal/index.js +2 -1
- package/build/modal/index.js.map +1 -1
- package/build/modal/use-modal-exit-animation.js.map +1 -1
- package/build/navigation/group/index.js.map +1 -1
- package/build/navigation/item/base.js.map +1 -1
- package/build/navigation/menu/index.js.map +1 -1
- package/build/navigation/menu/menu-title-search.js +2 -2
- package/build/navigation/menu/menu-title-search.js.map +1 -1
- package/build/navigation/menu/menu-title.js.map +1 -1
- package/build/navigation/styles/navigation-styles.js.map +1 -1
- package/build/navigator/index.js +128 -32
- package/build/navigator/index.js.map +1 -1
- package/build/navigator/legacy.js +179 -0
- package/build/navigator/legacy.js.map +1 -0
- package/build/navigator/{navigator-provider → navigator}/component.js +5 -40
- package/build/navigator/navigator/component.js.map +1 -0
- package/build/navigator/navigator-back-button/component.js +2 -38
- package/build/navigator/navigator-back-button/component.js.map +1 -1
- package/build/navigator/navigator-back-button/hook.js +1 -1
- package/build/navigator/navigator-back-button/hook.js.map +1 -1
- package/build/navigator/navigator-button/component.js +2 -37
- package/build/navigator/navigator-button/component.js.map +1 -1
- package/build/navigator/navigator-button/hook.js +1 -1
- package/build/navigator/navigator-button/hook.js.map +1 -1
- package/build/navigator/navigator-screen/component.js +40 -62
- package/build/navigator/navigator-screen/component.js.map +1 -1
- package/build/navigator/navigator-screen/use-screen-animate-presence.js +114 -0
- package/build/navigator/navigator-screen/use-screen-animate-presence.js.map +1 -0
- package/build/navigator/navigator-to-parent-button/component.js +3 -7
- package/build/navigator/navigator-to-parent-button/component.js.map +1 -1
- package/build/navigator/styles.js +78 -35
- package/build/navigator/styles.js.map +1 -1
- package/build/navigator/types.js.map +1 -1
- package/build/navigator/use-navigator.js +4 -1
- package/build/navigator/use-navigator.js.map +1 -1
- package/build/number-control/styles/number-control-styles.js.map +1 -1
- package/build/palette-edit/index.js +1 -1
- package/build/palette-edit/index.js.map +1 -1
- package/build/popover/index.js +1 -1
- package/build/popover/index.js.map +1 -1
- package/build/popover/overlay-middlewares.js.map +1 -1
- package/build/popover/utils.js.map +1 -1
- package/build/progress-bar/index.js.map +1 -1
- package/build/progress-bar/styles.js.map +1 -1
- package/build/query-controls/index.js.map +1 -1
- package/build/query-controls/index.native.js.map +1 -1
- package/build/radio-control/index.js.map +1 -1
- package/build/radio-control/index.native.js.map +1 -1
- package/build/range-control/index.js.map +1 -1
- package/build/range-control/index.native.js.map +1 -1
- package/build/range-control/rail.js.map +1 -1
- package/build/range-control/styles/range-control-styles.js +32 -32
- package/build/range-control/styles/range-control-styles.js.map +1 -1
- package/build/range-control/tooltip.js +1 -1
- package/build/range-control/tooltip.js.map +1 -1
- package/build/range-control/utils.js.map +1 -1
- package/build/resizable-box/resize-tooltip/label.js.map +1 -1
- package/build/resizable-box/resize-tooltip/utils.js.map +1 -1
- package/build/responsive-wrapper/index.js.map +1 -1
- package/build/sandbox/index.js.map +1 -1
- package/build/sandbox/index.native.js.map +1 -1
- package/build/search-control/index.js +11 -2
- package/build/search-control/index.js.map +1 -1
- package/build/search-control/index.native.js.map +1 -1
- package/build/search-control/types.js.map +1 -1
- package/build/select-control/index.js.map +1 -1
- package/build/select-control/index.native.js.map +1 -1
- package/build/slot-fill/index.js.map +1 -1
- package/build/spinner/styles.js.map +1 -1
- package/build/style-provider/index.js +1 -0
- package/build/style-provider/index.js.map +1 -1
- package/build/surface/hook.js.map +1 -1
- package/build/surface/styles.js.map +1 -1
- package/build/tab-panel/index.js.map +1 -1
- package/build/tabs/index.js.map +1 -1
- package/build/tabs/styles.js +30 -12
- package/build/tabs/styles.js.map +1 -1
- package/build/tabs/tab.js +7 -2
- package/build/tabs/tab.js.map +1 -1
- package/build/tabs/tablist.js +71 -39
- package/build/tabs/tablist.js.map +1 -1
- package/build/tabs/tabpanel.js.map +1 -1
- package/build/tabs/use-track-overflow.js +73 -0
- package/build/tabs/use-track-overflow.js.map +1 -0
- package/build/text/get-line-height.js.map +1 -1
- package/build/text/styles/text-mixins.native.js.map +1 -1
- package/build/text/utils.js.map +1 -1
- package/build/text-control/index.native.js.map +1 -1
- package/build/text-highlight/index.js.map +1 -1
- package/build/textarea-control/index.js.map +1 -1
- package/build/theme/color-algorithms.js.map +1 -1
- package/build/theme/styles.js.map +1 -1
- package/build/toggle-control/index.js.map +1 -1
- package/build/toggle-control/index.native.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/as-button-group.js +4 -2
- package/build/toggle-group-control/toggle-group-control/as-button-group.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/as-radio-group.js +13 -2
- package/build/toggle-group-control/toggle-group-control/as-radio-group.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/component.js +15 -8
- package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/styles.js +7 -7
- package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control-option-base/component.js +13 -20
- package/build/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control-option-base/styles.js +8 -9
- package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
- package/build/toggle-group-control/types.js.map +1 -1
- package/build/toolbar/toolbar/index.js.map +1 -1
- package/build/tools-panel/styles.js.map +1 -1
- package/build/unit-control/index.js.map +1 -1
- package/build/unit-control/utils.js.map +1 -1
- package/build/utils/breakpoint.js.map +1 -1
- package/build/utils/colors-values.js.map +1 -1
- package/build/utils/config-values.js.map +1 -1
- package/build/utils/element-rect.js +22 -13
- package/build/utils/element-rect.js.map +1 -1
- package/build/utils/font-size.js.map +1 -1
- package/build/utils/hooks/use-animated-offset-rect.js +80 -0
- package/build/utils/hooks/use-animated-offset-rect.js.map +1 -0
- package/build/utils/hooks/use-cx.js.map +1 -1
- package/build/utils/hooks/use-on-value-update.js +3 -7
- package/build/utils/hooks/use-on-value-update.js.map +1 -1
- package/build/utils/math.js +2 -2
- package/build/utils/math.js.map +1 -1
- package/build/utils/space.js.map +1 -1
- package/build/utils/unit-values.js.map +1 -1
- package/build/utils/use-responsive-value.js.map +1 -1
- package/build-module/alignment-matrix-control/cell.js +1 -2
- package/build-module/alignment-matrix-control/cell.js.map +1 -1
- package/build-module/alignment-matrix-control/icon.js.map +1 -1
- package/build-module/alignment-matrix-control/types.js.map +1 -1
- package/build-module/alignment-matrix-control/utils.js.map +1 -1
- package/build-module/angle-picker-control/angle-circle.js.map +1 -1
- package/build-module/angle-picker-control/index.js +1 -2
- package/build-module/angle-picker-control/index.js.map +1 -1
- package/build-module/autocomplete/autocompleter-ui.js +4 -6
- package/build-module/autocomplete/autocompleter-ui.js.map +1 -1
- package/build-module/autocomplete/autocompleter-ui.native.js +1 -2
- package/build-module/autocomplete/autocompleter-ui.native.js.map +1 -1
- package/build-module/autocomplete/get-default-use-items.js.map +1 -1
- package/build-module/autocomplete/index.js +6 -4
- package/build-module/autocomplete/index.js.map +1 -1
- package/build-module/base-control/hooks.js.map +1 -1
- package/build-module/base-control/index.js +1 -2
- package/build-module/base-control/index.js.map +1 -1
- package/build-module/base-control/index.native.js +1 -2
- package/build-module/base-control/index.native.js.map +1 -1
- package/build-module/border-box-control/border-box-control/component.js +4 -16
- package/build-module/border-box-control/border-box-control/component.js.map +1 -1
- package/build-module/border-box-control/border-box-control/hook.js.map +1 -1
- package/build-module/border-box-control/border-box-control-split-controls/component.js +1 -2
- package/build-module/border-box-control/border-box-control-split-controls/component.js.map +1 -1
- package/build-module/border-box-control/styles.js.map +1 -1
- package/build-module/border-box-control/utils.js.map +1 -1
- package/build-module/border-control/border-control/component.js +2 -4
- package/build-module/border-control/border-control/component.js.map +1 -1
- package/build-module/border-control/border-control/hook.js.map +1 -1
- package/build-module/border-control/border-control-dropdown/component.js +3 -17
- package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
- package/build-module/border-control/styles.js +13 -13
- package/build-module/border-control/styles.js.map +1 -1
- package/build-module/border-control/types.js.map +1 -1
- package/build-module/box-control/all-input-control.js +1 -3
- package/build-module/box-control/all-input-control.js.map +1 -1
- package/build-module/box-control/axial-input-controls.js +1 -3
- package/build-module/box-control/axial-input-controls.js.map +1 -1
- package/build-module/box-control/icon.js +1 -2
- package/build-module/box-control/icon.js.map +1 -1
- package/build-module/box-control/index.js +5 -6
- package/build-module/box-control/index.js.map +1 -1
- package/build-module/box-control/input-controls.js +1 -3
- package/build-module/box-control/input-controls.js.map +1 -1
- package/build-module/box-control/types.js.map +1 -1
- package/build-module/button/index.js +1 -3
- package/build-module/button/index.js.map +1 -1
- package/build-module/button/index.native.js +2 -3
- package/build-module/button/index.native.js.map +1 -1
- package/build-module/card/card/component.js +2 -3
- package/build-module/card/card/component.js.map +1 -1
- package/build-module/card/styles.js.map +1 -1
- package/build-module/checkbox-control/index.js +1 -2
- package/build-module/checkbox-control/index.js.map +1 -1
- package/build-module/circular-option-picker/circular-option-picker-option.js +1 -2
- package/build-module/circular-option-picker/circular-option-picker-option.js.map +1 -1
- package/build-module/circular-option-picker/circular-option-picker.js +1 -2
- package/build-module/circular-option-picker/circular-option-picker.js.map +1 -1
- package/build-module/color-indicator/index.native.js +1 -2
- package/build-module/color-indicator/index.native.js.map +1 -1
- package/build-module/color-palette/index.js +1 -2
- package/build-module/color-palette/index.js.map +1 -1
- package/build-module/color-palette/index.native.js +3 -4
- package/build-module/color-palette/index.native.js.map +1 -1
- package/build-module/color-picker/component.js +1 -2
- package/build-module/color-picker/component.js.map +1 -1
- package/build-module/color-picker/hsl-input.js +1 -3
- package/build-module/color-picker/hsl-input.js.map +1 -1
- package/build-module/color-picker/hsv-color-picker.native.js +1 -2
- package/build-module/color-picker/hsv-color-picker.native.js.map +1 -1
- package/build-module/color-picker/hue-picker.native.js +1 -2
- package/build-module/color-picker/hue-picker.native.js.map +1 -1
- package/build-module/color-picker/index.native.js +1 -3
- package/build-module/color-picker/index.native.js.map +1 -1
- package/build-module/color-picker/input-with-slider.js +1 -2
- package/build-module/color-picker/input-with-slider.js.map +1 -1
- package/build-module/color-picker/rgb-input.js +1 -3
- package/build-module/color-picker/rgb-input.js.map +1 -1
- package/build-module/color-picker/saturation-picker.native.js +1 -2
- package/build-module/color-picker/saturation-picker.native.js.map +1 -1
- package/build-module/color-picker/styles.js.map +1 -1
- package/build-module/combobox-control/index.js +2 -3
- package/build-module/combobox-control/index.js.map +1 -1
- package/build-module/composite/legacy/index.js.map +1 -1
- package/build-module/confirm-dialog/component.js +1 -3
- package/build-module/confirm-dialog/component.js.map +1 -1
- package/build-module/context/context-connect.js +1 -0
- package/build-module/context/context-connect.js.map +1 -1
- package/build-module/context/context-system-provider.js +1 -1
- package/build-module/context/context-system-provider.js.map +1 -1
- package/build-module/context/get-styled-class-name-from-key.js.map +1 -1
- package/build-module/custom-gradient-picker/gradient-bar/control-points.js +1 -3
- package/build-module/custom-gradient-picker/gradient-bar/control-points.js.map +1 -1
- package/build-module/custom-gradient-picker/gradient-bar/index.js +1 -2
- package/build-module/custom-gradient-picker/gradient-bar/index.js.map +1 -1
- package/build-module/custom-gradient-picker/index.js +1 -2
- package/build-module/custom-gradient-picker/index.js.map +1 -1
- package/build-module/custom-gradient-picker/index.native.js +1 -3
- package/build-module/custom-gradient-picker/index.native.js.map +1 -1
- package/build-module/custom-gradient-picker/serializer.js.map +1 -1
- package/build-module/custom-gradient-picker/utils.js.map +1 -1
- package/build-module/custom-select-control/index.js +1 -3
- package/build-module/custom-select-control/index.js.map +1 -1
- package/build-module/custom-select-control-v2/custom-select.js +1 -2
- package/build-module/custom-select-control-v2/custom-select.js.map +1 -1
- package/build-module/custom-select-control-v2/item.js +1 -2
- package/build-module/custom-select-control-v2/item.js.map +1 -1
- package/build-module/custom-select-control-v2/styles.js.map +1 -1
- package/build-module/dashicon/index.js.map +1 -1
- package/build-module/date-time/date/index.js +1 -2
- package/build-module/date-time/date/index.js.map +1 -1
- package/build-module/date-time/date/styles.js.map +1 -1
- package/build-module/date-time/date-time/index.js +1 -3
- package/build-module/date-time/date-time/index.js.map +1 -1
- package/build-module/date-time/time/index.js +1 -2
- package/build-module/date-time/time/index.js.map +1 -1
- package/build-module/date-time/time/time-input/index.js +1 -2
- package/build-module/date-time/time/time-input/index.js.map +1 -1
- package/build-module/date-time/time/timezone.js.map +1 -1
- package/build-module/dimension-control/index.js +1 -3
- package/build-module/dimension-control/index.js.map +1 -1
- package/build-module/draggable/index.js +1 -3
- package/build-module/draggable/index.js.map +1 -1
- package/build-module/drop-zone/index.js +1 -2
- package/build-module/drop-zone/index.js.map +1 -1
- package/build-module/dropdown/index.js +1 -2
- package/build-module/dropdown/index.js.map +1 -1
- package/build-module/dropdown/index.native.js +1 -2
- package/build-module/dropdown/index.native.js.map +1 -1
- package/build-module/dropdown-menu/index.js +1 -2
- package/build-module/dropdown-menu/index.js.map +1 -1
- package/build-module/dropdown-menu/index.native.js +1 -2
- package/build-module/dropdown-menu/index.native.js.map +1 -1
- package/build-module/dropdown-menu-v2/checkbox-item.js +1 -2
- package/build-module/dropdown-menu-v2/checkbox-item.js.map +1 -1
- package/build-module/dropdown-menu-v2/index.js +1 -3
- package/build-module/dropdown-menu-v2/index.js.map +1 -1
- package/build-module/dropdown-menu-v2/item.js +1 -2
- package/build-module/dropdown-menu-v2/item.js.map +1 -1
- package/build-module/dropdown-menu-v2/radio-item.js +1 -2
- package/build-module/dropdown-menu-v2/radio-item.js.map +1 -1
- package/build-module/dropdown-menu-v2/styles.js.map +1 -1
- package/build-module/duotone-picker/color-list-picker/index.js +1 -3
- package/build-module/duotone-picker/color-list-picker/index.js.map +1 -1
- package/build-module/duotone-picker/duotone-picker.js +1 -2
- package/build-module/duotone-picker/duotone-picker.js.map +1 -1
- package/build-module/duotone-picker/utils.js.map +1 -1
- package/build-module/elevation/hook.js.map +1 -1
- package/build-module/external-link/index.js +21 -25
- package/build-module/external-link/index.js.map +1 -1
- package/build-module/external-link/index.native.js +1 -2
- package/build-module/external-link/index.native.js.map +1 -1
- package/build-module/focal-point-picker/controls.js +1 -2
- package/build-module/focal-point-picker/controls.js.map +1 -1
- package/build-module/focal-point-picker/focal-point.native.js +1 -2
- package/build-module/focal-point-picker/focal-point.native.js.map +1 -1
- package/build-module/focal-point-picker/grid.js +1 -2
- package/build-module/focal-point-picker/grid.js.map +1 -1
- package/build-module/focal-point-picker/index.js +1 -2
- package/build-module/focal-point-picker/index.js.map +1 -1
- package/build-module/focal-point-picker/index.native.js +1 -2
- package/build-module/focal-point-picker/index.native.js.map +1 -1
- package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
- package/build-module/focal-point-picker/tooltip/index.native.js +1 -2
- package/build-module/focal-point-picker/tooltip/index.native.js.map +1 -1
- package/build-module/font-size-picker/index.js +1 -2
- package/build-module/font-size-picker/index.js.map +1 -1
- package/build-module/font-size-picker/index.native.js +1 -3
- package/build-module/font-size-picker/index.native.js.map +1 -1
- package/build-module/form-file-upload/index.js +1 -2
- package/build-module/form-file-upload/index.js.map +1 -1
- package/build-module/form-toggle/index.js +1 -2
- package/build-module/form-toggle/index.js.map +1 -1
- package/build-module/form-token-field/index.js +3 -3
- package/build-module/form-token-field/index.js.map +1 -1
- package/build-module/form-token-field/suggestions-list.js +1 -2
- package/build-module/form-token-field/suggestions-list.js.map +1 -1
- package/build-module/form-token-field/token-input.js.map +1 -1
- package/build-module/form-token-field/token.js +2 -3
- package/build-module/form-token-field/token.js.map +1 -1
- package/build-module/gradient-picker/index.js +1 -2
- package/build-module/gradient-picker/index.js.map +1 -1
- package/build-module/grid/hook.js.map +1 -1
- package/build-module/guide/index.js +1 -2
- package/build-module/guide/index.js.map +1 -1
- package/build-module/guide/page-control.js +1 -1
- package/build-module/guide/page-control.js.map +1 -1
- package/build-module/h-stack/hook.js.map +1 -1
- package/build-module/heading/hook.js.map +1 -1
- package/build-module/higher-order/with-fallback-styles/index.js +3 -4
- package/build-module/higher-order/with-fallback-styles/index.js.map +1 -1
- package/build-module/index.js +14 -4
- package/build-module/index.js.map +1 -1
- package/build-module/input-control/index.js.map +1 -1
- package/build-module/input-control/input-base.js +1 -2
- package/build-module/input-control/input-base.js.map +1 -1
- package/build-module/input-control/styles/input-control-styles.js.map +1 -1
- package/build-module/item-group/styles.js.map +1 -1
- package/build-module/keyboard-shortcuts/index.js +1 -3
- package/build-module/keyboard-shortcuts/index.js.map +1 -1
- package/build-module/menu-group/index.js +1 -2
- package/build-module/menu-group/index.js.map +1 -1
- package/build-module/menu-item/index.js +1 -2
- package/build-module/menu-item/index.js.map +1 -1
- package/build-module/menu-items-choice/index.js +1 -2
- package/build-module/menu-items-choice/index.js.map +1 -1
- package/build-module/mobile/badge/index.native.js +1 -3
- package/build-module/mobile/badge/index.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js +1 -2
- package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/cell.native.js +5 -6
- package/build-module/mobile/bottom-sheet/cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/color-cell.native.js +1 -2
- package/build-module/mobile/bottom-sheet/color-cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/index.native.js +1 -3
- package/build-module/mobile/bottom-sheet/index.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/link-suggestion-item-cell.native.js +1 -2
- package/build-module/mobile/bottom-sheet/link-suggestion-item-cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/nav-bar/back-button.native.js +1 -2
- package/build-module/mobile/bottom-sheet/nav-bar/back-button.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/range-cell.native.js +2 -3
- package/build-module/mobile/bottom-sheet/range-cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/range-text-input.native.js +1 -2
- package/build-module/mobile/bottom-sheet/range-text-input.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/stepper-cell/index.native.js +2 -3
- package/build-module/mobile/bottom-sheet/stepper-cell/index.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/stepper-cell/stepper.android.js +1 -2
- package/build-module/mobile/bottom-sheet/stepper-cell/stepper.android.js.map +1 -1
- package/build-module/mobile/bottom-sheet/stepper-cell/stepper.ios.js +1 -2
- package/build-module/mobile/bottom-sheet/stepper-cell/stepper.ios.js.map +1 -1
- package/build-module/mobile/bottom-sheet/sub-sheet/index.native.js +1 -3
- package/build-module/mobile/bottom-sheet/sub-sheet/index.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/switch-cell.native.js +4 -4
- package/build-module/mobile/bottom-sheet/switch-cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet-select-control/index.native.js +1 -3
- package/build-module/mobile/bottom-sheet-select-control/index.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet-text-control/index.native.js +1 -3
- package/build-module/mobile/bottom-sheet-text-control/index.native.js.map +1 -1
- package/build-module/mobile/color-settings/gradient-picker-screen.native.js +1 -2
- package/build-module/mobile/color-settings/gradient-picker-screen.native.js.map +1 -1
- package/build-module/mobile/color-settings/index.native.js +1 -2
- package/build-module/mobile/color-settings/index.native.js.map +1 -1
- package/build-module/mobile/color-settings/palette.screen.native.js +1 -3
- package/build-module/mobile/color-settings/palette.screen.native.js.map +1 -1
- package/build-module/mobile/cycle-select-control/index.native.js.map +1 -1
- package/build-module/mobile/focal-point-settings-panel/index.native.js +1 -2
- package/build-module/mobile/focal-point-settings-panel/index.native.js.map +1 -1
- package/build-module/mobile/gradient/index.native.js +1 -2
- package/build-module/mobile/gradient/index.native.js.map +1 -1
- package/build-module/mobile/html-text-input/index.native.js +1 -2
- package/build-module/mobile/html-text-input/index.native.js.map +1 -1
- package/build-module/mobile/image/icon-retry.native.js +1 -2
- package/build-module/mobile/image/icon-retry.native.js.map +1 -1
- package/build-module/mobile/image/image-editing-button.native.js +1 -2
- package/build-module/mobile/image/image-editing-button.native.js.map +1 -1
- package/build-module/mobile/image/index.native.js +1 -3
- package/build-module/mobile/image/index.native.js.map +1 -1
- package/build-module/mobile/keyboard-avoiding-view/index.ios.js +1 -2
- package/build-module/mobile/keyboard-avoiding-view/index.ios.js.map +1 -1
- package/build-module/mobile/link-picker/index.native.js +2 -3
- package/build-module/mobile/link-picker/index.native.js.map +1 -1
- package/build-module/mobile/link-picker/link-picker-results.native.js.map +1 -1
- package/build-module/mobile/link-settings/index.native.js +1 -3
- package/build-module/mobile/link-settings/index.native.js.map +1 -1
- package/build-module/mobile/link-settings/link-settings-navigation.native.js +1 -2
- package/build-module/mobile/link-settings/link-settings-navigation.native.js.map +1 -1
- package/build-module/mobile/picker/index.android.js +1 -2
- package/build-module/mobile/picker/index.android.js.map +1 -1
- package/build-module/mobile/segmented-control/index.native.js +1 -2
- package/build-module/mobile/segmented-control/index.native.js.map +1 -1
- package/build-module/mobile/utils/get-px-from-css-unit.native.js.map +1 -1
- package/build-module/mobile/utils/use-unit-converter-to-mobile.native.js.map +1 -1
- package/build-module/modal/aria-helper.js +2 -1
- package/build-module/modal/aria-helper.js.map +1 -1
- package/build-module/modal/index.js +3 -4
- package/build-module/modal/index.js.map +1 -1
- package/build-module/modal/use-modal-exit-animation.js.map +1 -1
- package/build-module/navigation/back-button/index.js +1 -2
- package/build-module/navigation/back-button/index.js.map +1 -1
- package/build-module/navigation/group/index.js +1 -2
- package/build-module/navigation/group/index.js.map +1 -1
- package/build-module/navigation/item/base-content.js +1 -3
- package/build-module/navigation/item/base-content.js.map +1 -1
- package/build-module/navigation/item/base.js.map +1 -1
- package/build-module/navigation/item/index.js +1 -2
- package/build-module/navigation/item/index.js.map +1 -1
- package/build-module/navigation/menu/index.js +1 -2
- package/build-module/navigation/menu/index.js.map +1 -1
- package/build-module/navigation/menu/menu-title-search.js +2 -2
- package/build-module/navigation/menu/menu-title-search.js.map +1 -1
- package/build-module/navigation/menu/menu-title.js +1 -2
- package/build-module/navigation/menu/menu-title.js.map +1 -1
- package/build-module/navigation/menu/search-no-results-found.js +1 -2
- package/build-module/navigation/menu/search-no-results-found.js.map +1 -1
- package/build-module/navigation/styles/navigation-styles.js.map +1 -1
- package/build-module/navigator/index.js +130 -5
- package/build-module/navigator/index.js.map +1 -1
- package/build-module/navigator/legacy.js +167 -0
- package/build-module/navigator/legacy.js.map +1 -0
- package/build-module/navigator/{navigator-provider → navigator}/component.js +4 -39
- package/build-module/navigator/navigator/component.js.map +1 -0
- package/build-module/navigator/navigator-back-button/component.js +1 -37
- package/build-module/navigator/navigator-back-button/component.js.map +1 -1
- package/build-module/navigator/navigator-back-button/hook.js +1 -1
- package/build-module/navigator/navigator-back-button/hook.js.map +1 -1
- package/build-module/navigator/navigator-button/component.js +1 -36
- package/build-module/navigator/navigator-button/component.js.map +1 -1
- package/build-module/navigator/navigator-button/hook.js +1 -1
- package/build-module/navigator/navigator-button/hook.js.map +1 -1
- package/build-module/navigator/navigator-screen/component.js +39 -61
- package/build-module/navigator/navigator-screen/component.js.map +1 -1
- package/build-module/navigator/navigator-screen/use-screen-animate-presence.js +106 -0
- package/build-module/navigator/navigator-screen/use-screen-animate-presence.js.map +1 -0
- package/build-module/navigator/navigator-to-parent-button/component.js +2 -6
- package/build-module/navigator/navigator-to-parent-button/component.js.map +1 -1
- package/build-module/navigator/styles.js +77 -33
- package/build-module/navigator/styles.js.map +1 -1
- package/build-module/navigator/types.js.map +1 -1
- package/build-module/navigator/use-navigator.js +4 -1
- package/build-module/navigator/use-navigator.js.map +1 -1
- package/build-module/notice/index.js +1 -2
- package/build-module/notice/index.js.map +1 -1
- package/build-module/notice/index.native.js +1 -3
- package/build-module/notice/index.native.js.map +1 -1
- package/build-module/number-control/index.js +1 -3
- package/build-module/number-control/index.js.map +1 -1
- package/build-module/number-control/styles/number-control-styles.js.map +1 -1
- package/build-module/palette-edit/index.js +2 -4
- package/build-module/palette-edit/index.js.map +1 -1
- package/build-module/panel/actions.native.js +1 -2
- package/build-module/panel/actions.native.js.map +1 -1
- package/build-module/panel/body.js +1 -2
- package/build-module/panel/body.js.map +1 -1
- package/build-module/panel/body.native.js +1 -2
- package/build-module/panel/body.native.js.map +1 -1
- package/build-module/panel/header.js +1 -2
- package/build-module/panel/header.js.map +1 -1
- package/build-module/panel/index.js +1 -2
- package/build-module/panel/index.js.map +1 -1
- package/build-module/placeholder/index.js +1 -2
- package/build-module/placeholder/index.js.map +1 -1
- package/build-module/popover/index.js +2 -4
- package/build-module/popover/index.js.map +1 -1
- package/build-module/popover/overlay-middlewares.js.map +1 -1
- package/build-module/popover/utils.js.map +1 -1
- package/build-module/progress-bar/index.js +1 -2
- package/build-module/progress-bar/index.js.map +1 -1
- package/build-module/progress-bar/styles.js.map +1 -1
- package/build-module/query-controls/index.js.map +1 -1
- package/build-module/query-controls/index.native.js +1 -3
- package/build-module/query-controls/index.native.js.map +1 -1
- package/build-module/radio-control/index.js +1 -2
- package/build-module/radio-control/index.js.map +1 -1
- package/build-module/radio-control/index.native.js +1 -2
- package/build-module/radio-control/index.native.js.map +1 -1
- package/build-module/range-control/index.js +1 -2
- package/build-module/range-control/index.js.map +1 -1
- package/build-module/range-control/index.native.js.map +1 -1
- package/build-module/range-control/mark.js +1 -3
- package/build-module/range-control/mark.js.map +1 -1
- package/build-module/range-control/rail.js +1 -3
- package/build-module/range-control/rail.js.map +1 -1
- package/build-module/range-control/styles/range-control-styles.js +32 -32
- package/build-module/range-control/styles/range-control-styles.js.map +1 -1
- package/build-module/range-control/tooltip.js +1 -1
- package/build-module/range-control/tooltip.js.map +1 -1
- package/build-module/range-control/utils.js.map +1 -1
- package/build-module/resizable-box/index.js +1 -2
- package/build-module/resizable-box/index.js.map +1 -1
- package/build-module/resizable-box/resize-tooltip/index.js +1 -2
- package/build-module/resizable-box/resize-tooltip/index.js.map +1 -1
- package/build-module/resizable-box/resize-tooltip/label.js.map +1 -1
- package/build-module/resizable-box/resize-tooltip/utils.js.map +1 -1
- package/build-module/responsive-wrapper/index.js.map +1 -1
- package/build-module/sandbox/index.js +1 -2
- package/build-module/sandbox/index.js.map +1 -1
- package/build-module/sandbox/index.native.js +1 -2
- package/build-module/sandbox/index.native.js.map +1 -1
- package/build-module/search-control/index.js +11 -2
- package/build-module/search-control/index.js.map +1 -1
- package/build-module/search-control/index.native.js +1 -2
- package/build-module/search-control/index.native.js.map +1 -1
- package/build-module/search-control/types.js.map +1 -1
- package/build-module/select-control/index.js.map +1 -1
- package/build-module/select-control/index.native.js.map +1 -1
- package/build-module/slot-fill/index.js +1 -3
- package/build-module/slot-fill/index.js.map +1 -1
- package/build-module/slot-fill/slot.js +1 -2
- package/build-module/slot-fill/slot.js.map +1 -1
- package/build-module/snackbar/index.js +1 -2
- package/build-module/snackbar/index.js.map +1 -1
- package/build-module/snackbar/list.js +1 -2
- package/build-module/snackbar/list.js.map +1 -1
- package/build-module/spinner/index.js +1 -2
- package/build-module/spinner/index.js.map +1 -1
- package/build-module/spinner/styles.js.map +1 -1
- package/build-module/style-provider/index.js +1 -0
- package/build-module/style-provider/index.js.map +1 -1
- package/build-module/surface/hook.js.map +1 -1
- package/build-module/surface/styles.js.map +1 -1
- package/build-module/tab-panel/index.js +1 -2
- package/build-module/tab-panel/index.js.map +1 -1
- package/build-module/tabs/index.js.map +1 -1
- package/build-module/tabs/styles.js +28 -6
- package/build-module/tabs/styles.js.map +1 -1
- package/build-module/tabs/tab.js +9 -4
- package/build-module/tabs/tab.js.map +1 -1
- package/build-module/tabs/tablist.js +72 -40
- package/build-module/tabs/tablist.js.map +1 -1
- package/build-module/tabs/tabpanel.js.map +1 -1
- package/build-module/tabs/use-track-overflow.js +67 -0
- package/build-module/tabs/use-track-overflow.js.map +1 -0
- package/build-module/text/get-line-height.js.map +1 -1
- package/build-module/text/styles/text-mixins.native.js.map +1 -1
- package/build-module/text/utils.js.map +1 -1
- package/build-module/text-control/index.native.js.map +1 -1
- package/build-module/text-highlight/index.js +1 -2
- package/build-module/text-highlight/index.js.map +1 -1
- package/build-module/textarea-control/index.js.map +1 -1
- package/build-module/theme/color-algorithms.js.map +1 -1
- package/build-module/theme/styles.js.map +1 -1
- package/build-module/tip/index.js +1 -2
- package/build-module/tip/index.js.map +1 -1
- package/build-module/toggle-control/index.js +1 -2
- package/build-module/toggle-control/index.js.map +1 -1
- package/build-module/toggle-control/index.native.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/as-button-group.js +4 -2
- package/build-module/toggle-group-control/toggle-group-control/as-button-group.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/as-radio-group.js +14 -3
- package/build-module/toggle-group-control/toggle-group-control/as-radio-group.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/component.js +17 -12
- package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/styles.js +7 -7
- package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control-option-base/component.js +16 -25
- package/build-module/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js +7 -8
- package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
- package/build-module/toggle-group-control/types.js.map +1 -1
- package/build-module/toolbar/toolbar/index.js.map +1 -1
- package/build-module/toolbar/toolbar-button/toolbar-button-container.native.js +2 -2
- package/build-module/toolbar/toolbar-button/toolbar-button-container.native.js.map +1 -1
- package/build-module/toolbar/toolbar-group/index.js +1 -2
- package/build-module/toolbar/toolbar-group/index.js.map +1 -1
- package/build-module/tools-panel/styles.js.map +1 -1
- package/build-module/tools-panel/tools-panel/component.js +1 -2
- package/build-module/tools-panel/tools-panel/component.js.map +1 -1
- package/build-module/tools-panel/tools-panel-header/component.js +1 -3
- package/build-module/tools-panel/tools-panel-header/component.js.map +1 -1
- package/build-module/tooltip/index.js +1 -2
- package/build-module/tooltip/index.js.map +1 -1
- package/build-module/tooltip/index.native.js +1 -3
- package/build-module/tooltip/index.native.js.map +1 -1
- package/build-module/tree-grid/cell.js +1 -2
- package/build-module/tree-grid/cell.js.map +1 -1
- package/build-module/unit-control/index.js.map +1 -1
- package/build-module/unit-control/index.native.js +1 -3
- package/build-module/unit-control/index.native.js.map +1 -1
- package/build-module/unit-control/utils.js.map +1 -1
- package/build-module/utils/breakpoint.js.map +1 -1
- package/build-module/utils/colors-values.js.map +1 -1
- package/build-module/utils/config-values.js.map +1 -1
- package/build-module/utils/element-rect.js +22 -12
- package/build-module/utils/element-rect.js.map +1 -1
- package/build-module/utils/font-size.js.map +1 -1
- package/build-module/utils/hooks/use-animated-offset-rect.js +74 -0
- package/build-module/utils/hooks/use-animated-offset-rect.js.map +1 -0
- package/build-module/utils/hooks/use-cx.js.map +1 -1
- package/build-module/utils/hooks/use-on-value-update.js +3 -6
- package/build-module/utils/hooks/use-on-value-update.js.map +1 -1
- package/build-module/utils/math.js +2 -2
- package/build-module/utils/math.js.map +1 -1
- package/build-module/utils/space.js.map +1 -1
- package/build-module/utils/unit-values.js.map +1 -1
- package/build-module/utils/use-responsive-value.js.map +1 -1
- package/build-style/style-rtl.css +30 -14
- package/build-style/style.css +30 -14
- package/build-types/alignment-matrix-control/types.d.ts +2 -0
- package/build-types/alignment-matrix-control/types.d.ts.map +1 -1
- package/build-types/autocomplete/index.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control/component.d.ts +5 -15
- package/build-types/border-box-control/border-box-control/component.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control-split-controls/component.d.ts +2 -1
- package/build-types/border-box-control/border-box-control-split-controls/component.d.ts.map +1 -1
- package/build-types/border-box-control/stories/index.story.d.ts +3 -2
- package/build-types/border-box-control/stories/index.story.d.ts.map +1 -1
- package/build-types/border-control/border-control/component.d.ts +3 -2
- package/build-types/border-control/border-control/component.d.ts.map +1 -1
- package/build-types/border-control/border-control-dropdown/component.d.ts +2 -1
- package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
- package/build-types/border-control/border-control-style-picker/component.d.ts.map +1 -1
- package/build-types/border-control/stories/index.story.d.ts +15 -30
- package/build-types/border-control/stories/index.story.d.ts.map +1 -1
- package/build-types/border-control/styles.d.ts.map +1 -1
- package/build-types/border-control/types.d.ts +12 -7
- package/build-types/border-control/types.d.ts.map +1 -1
- package/build-types/box-control/index.d.ts +4 -4
- package/build-types/box-control/stories/index.story.d.ts.map +1 -1
- package/build-types/box-control/types.d.ts +3 -3
- package/build-types/composite/stories/index.story.d.ts +22 -0
- package/build-types/composite/stories/index.story.d.ts.map +1 -1
- package/build-types/dropdown/stories/index.story.d.ts.map +1 -1
- package/build-types/dropdown-menu/stories/index.story.d.ts.map +1 -1
- package/build-types/index.d.ts +23 -4
- package/build-types/index.d.ts.map +1 -1
- package/build-types/modal/aria-helper.d.ts.map +1 -1
- package/build-types/navigator/index.d.ts +171 -5
- package/build-types/navigator/index.d.ts.map +1 -1
- package/build-types/navigator/legacy.d.ts +226 -0
- package/build-types/navigator/legacy.d.ts.map +1 -0
- package/build-types/navigator/navigator/component.d.ts +3 -0
- package/build-types/navigator/navigator/component.d.ts.map +1 -0
- package/build-types/navigator/navigator-back-button/component.d.ts +0 -35
- package/build-types/navigator/navigator-back-button/component.d.ts.map +1 -1
- package/build-types/navigator/navigator-button/component.d.ts +0 -34
- package/build-types/navigator/navigator-button/component.d.ts.map +1 -1
- package/build-types/navigator/navigator-screen/component.d.ts +0 -35
- package/build-types/navigator/navigator-screen/component.d.ts.map +1 -1
- package/build-types/navigator/navigator-screen/use-screen-animate-presence.d.ts +16 -0
- package/build-types/navigator/navigator-screen/use-screen-animate-presence.d.ts.map +1 -0
- package/build-types/navigator/navigator-to-parent-button/component.d.ts +0 -4
- package/build-types/navigator/navigator-to-parent-button/component.d.ts.map +1 -1
- package/build-types/navigator/stories/index.story.d.ts +5 -5
- package/build-types/navigator/stories/index.story.d.ts.map +1 -1
- package/build-types/navigator/styles.d.ts +20 -7
- package/build-types/navigator/styles.d.ts.map +1 -1
- package/build-types/navigator/types.d.ts +19 -1
- package/build-types/navigator/types.d.ts.map +1 -1
- package/build-types/navigator/use-navigator.d.ts +4 -1
- package/build-types/navigator/use-navigator.d.ts.map +1 -1
- package/build-types/range-control/styles/range-control-styles.d.ts +1 -1
- package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
- package/build-types/search-control/index.d.ts.map +1 -1
- package/build-types/search-control/stories/index.story.d.ts +0 -8
- package/build-types/search-control/stories/index.story.d.ts.map +1 -1
- package/build-types/search-control/types.d.ts +3 -0
- package/build-types/search-control/types.d.ts.map +1 -1
- package/build-types/select-control/stories/index.story.d.ts +7 -0
- package/build-types/select-control/stories/index.story.d.ts.map +1 -1
- package/build-types/tabs/stories/index.story.d.ts +2 -1
- package/build-types/tabs/stories/index.story.d.ts.map +1 -1
- package/build-types/tabs/styles.d.ts +7 -0
- package/build-types/tabs/styles.d.ts.map +1 -1
- package/build-types/tabs/tab.d.ts.map +1 -1
- package/build-types/tabs/tablist.d.ts.map +1 -1
- package/build-types/tabs/use-track-overflow.d.ts +17 -0
- package/build-types/tabs/use-track-overflow.d.ts.map +1 -0
- package/build-types/toggle-group-control/toggle-group-control/as-button-group.d.ts +2 -2
- package/build-types/toggle-group-control/toggle-group-control/as-button-group.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control/as-radio-group.d.ts +2 -2
- package/build-types/toggle-group-control/toggle-group-control/as-radio-group.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts +0 -1
- package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -1
- package/build-types/toggle-group-control/types.d.ts +2 -1
- package/build-types/toggle-group-control/types.d.ts.map +1 -1
- package/build-types/utils/element-rect.d.ts +8 -0
- package/build-types/utils/element-rect.d.ts.map +1 -1
- package/build-types/utils/hooks/use-animated-offset-rect.d.ts +62 -0
- package/build-types/utils/hooks/use-animated-offset-rect.d.ts.map +1 -0
- package/build-types/utils/hooks/use-on-value-update.d.ts.map +1 -1
- package/package.json +20 -20
- package/schemas/docs-manifest.json +38 -0
- package/src/alignment-matrix-control/README.md +46 -36
- package/src/alignment-matrix-control/docs-manifest.json +12 -0
- package/src/alignment-matrix-control/types.ts +2 -0
- package/src/angle-picker-control/README.md +36 -23
- package/src/angle-picker-control/docs-manifest.json +5 -0
- package/src/autocomplete/index.tsx +4 -1
- package/src/border-box-control/border-box-control/README.md +22 -26
- package/src/border-box-control/border-box-control/component.tsx +3 -14
- package/src/border-box-control/stories/index.story.tsx +2 -1
- package/src/border-control/border-control/README.md +26 -36
- package/src/border-control/border-control/component.tsx +1 -2
- package/src/border-control/border-control-dropdown/component.tsx +1 -15
- package/src/border-control/stories/index.story.tsx +4 -10
- package/src/border-control/styles.ts +0 -1
- package/src/border-control/test/index.js +2 -15
- package/src/border-control/types.ts +12 -7
- package/src/box-control/README.md +9 -12
- package/src/box-control/index.tsx +4 -4
- package/src/box-control/stories/index.story.tsx +1 -1
- package/src/box-control/types.ts +3 -3
- package/src/button/style.scss +5 -1
- package/src/composite/legacy/test/index.tsx +22 -21
- package/src/composite/stories/index.story.tsx +42 -0
- package/src/composite/test/index.tsx +629 -38
- package/src/dropdown/stories/index.story.tsx +1 -0
- package/src/dropdown/style.scss +10 -13
- package/src/dropdown-menu/stories/index.story.tsx +3 -0
- package/src/index.ts +19 -1
- package/src/menu-group/style.scss +4 -1
- package/src/menu-items-choice/style.scss +2 -0
- package/src/modal/aria-helper.ts +1 -0
- package/src/navigator/README.md +176 -0
- package/src/navigator/index.tsx +131 -0
- package/src/navigator/legacy.ts +169 -0
- package/src/navigator/{navigator-provider → navigator}/component.tsx +6 -44
- package/src/navigator/navigator-back-button/component.tsx +1 -37
- package/src/navigator/navigator-back-button/hook.ts +1 -1
- package/src/navigator/navigator-button/component.tsx +1 -36
- package/src/navigator/navigator-button/hook.ts +1 -1
- package/src/navigator/navigator-screen/component.tsx +48 -76
- package/src/navigator/navigator-screen/use-screen-animate-presence.ts +177 -0
- package/src/navigator/navigator-to-parent-button/component.tsx +2 -7
- package/src/navigator/stories/index.story.tsx +55 -54
- package/src/navigator/styles.ts +112 -41
- package/src/navigator/test/index.tsx +47 -47
- package/src/navigator/types.ts +19 -1
- package/src/navigator/use-navigator.ts +4 -1
- package/src/range-control/styles/range-control-styles.ts +19 -10
- package/src/range-control/tooltip.tsx +1 -1
- package/src/search-control/README.md +2 -0
- package/src/search-control/index.tsx +9 -2
- package/src/search-control/stories/index.story.tsx +0 -15
- package/src/search-control/test/index.tsx +4 -1
- package/src/search-control/types.ts +3 -0
- package/src/select-control/stories/index.story.tsx +14 -1
- package/src/tabs/stories/index.story.tsx +106 -0
- package/src/tabs/styles.ts +161 -58
- package/src/tabs/tab.tsx +8 -2
- package/src/tabs/tablist.tsx +72 -39
- package/src/tabs/use-track-overflow.ts +76 -0
- package/src/toggle-group-control/test/__snapshots__/index.tsx.snap +208 -44
- package/src/toggle-group-control/test/index.tsx +26 -0
- package/src/toggle-group-control/toggle-group-control/as-button-group.tsx +18 -10
- package/src/toggle-group-control/toggle-group-control/as-radio-group.tsx +30 -12
- package/src/toggle-group-control/toggle-group-control/component.tsx +19 -6
- package/src/toggle-group-control/toggle-group-control/styles.ts +41 -0
- package/src/toggle-group-control/toggle-group-control-option-base/component.tsx +15 -28
- package/src/toggle-group-control/toggle-group-control-option-base/styles.ts +0 -11
- package/src/toggle-group-control/types.ts +3 -1
- package/src/tools-panel/tools-panel/README.md +10 -10
- package/src/utils/element-rect.ts +32 -15
- package/src/utils/hooks/use-animated-offset-rect.ts +107 -0
- package/src/utils/hooks/use-on-value-update.ts +3 -6
- package/tsconfig.tsbuildinfo +1 -1
- package/build/navigator/navigator-provider/component.js.map +0 -1
- package/build/utils/hooks/use-event.js +0 -41
- package/build/utils/hooks/use-event.js.map +0 -1
- package/build-module/navigator/navigator-provider/component.js.map +0 -1
- package/build-module/utils/hooks/use-event.js +0 -35
- package/build-module/utils/hooks/use-event.js.map +0 -1
- package/build-types/navigator/navigator-provider/component.d.ts +0 -37
- package/build-types/navigator/navigator-provider/component.d.ts.map +0 -1
- package/build-types/utils/hooks/use-event.d.ts +0 -20
- package/build-types/utils/hooks/use-event.d.ts.map +0 -1
- package/src/navigator/index.ts +0 -6
- package/src/navigator/navigator-back-button/README.md +0 -15
- package/src/navigator/navigator-button/README.md +0 -38
- package/src/navigator/navigator-provider/README.md +0 -94
- package/src/navigator/navigator-screen/README.md +0 -33
- package/src/navigator/navigator-to-parent-button/README.md +0 -17
- package/src/utils/hooks/use-event.ts +0 -38
|
@@ -8,20 +8,20 @@ import type { Meta, StoryObj } from '@storybook/react';
|
|
|
8
8
|
*/
|
|
9
9
|
import Button from '../../button';
|
|
10
10
|
import { VStack } from '../../v-stack';
|
|
11
|
-
import {
|
|
12
|
-
NavigatorProvider,
|
|
13
|
-
NavigatorScreen,
|
|
14
|
-
NavigatorButton,
|
|
15
|
-
NavigatorBackButton,
|
|
16
|
-
useNavigator,
|
|
17
|
-
} from '..';
|
|
18
11
|
import { HStack } from '../../h-stack';
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
subcomponents: {
|
|
24
|
-
|
|
12
|
+
import { Navigator, useNavigator } from '../';
|
|
13
|
+
|
|
14
|
+
const meta: Meta< typeof Navigator > = {
|
|
15
|
+
component: Navigator,
|
|
16
|
+
subcomponents: {
|
|
17
|
+
// @ts-expect-error - See https://github.com/storybookjs/storybook/issues/23170
|
|
18
|
+
Screen: Navigator.Screen,
|
|
19
|
+
// @ts-expect-error - See https://github.com/storybookjs/storybook/issues/23170
|
|
20
|
+
Button: Navigator.Button,
|
|
21
|
+
// @ts-expect-error - See https://github.com/storybookjs/storybook/issues/23170
|
|
22
|
+
BackButton: Navigator.BackButton,
|
|
23
|
+
},
|
|
24
|
+
title: 'Components/Navigator',
|
|
25
25
|
argTypes: {
|
|
26
26
|
as: { control: { type: null } },
|
|
27
27
|
children: { control: { type: null } },
|
|
@@ -36,14 +36,14 @@ const meta: Meta< typeof NavigatorProvider > = {
|
|
|
36
36
|
return (
|
|
37
37
|
<>
|
|
38
38
|
<style>{ `
|
|
39
|
-
/*
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
39
|
+
/* The data-wp-component attribute is a private implementation
|
|
40
|
+
* detail of the Navigator component. Do not use outside of
|
|
41
|
+
* its source code.
|
|
42
|
+
*/
|
|
43
|
+
[data-wp-component="Navigator"] {
|
|
44
|
+
height: 250px;
|
|
45
45
|
}
|
|
46
|
-
[data-wp-component="
|
|
46
|
+
[data-wp-component="Navigator.Screen"] {
|
|
47
47
|
padding: 8px;
|
|
48
48
|
}
|
|
49
49
|
` }</style>
|
|
@@ -55,55 +55,55 @@ const meta: Meta< typeof NavigatorProvider > = {
|
|
|
55
55
|
};
|
|
56
56
|
export default meta;
|
|
57
57
|
|
|
58
|
-
export const Default: StoryObj< typeof
|
|
58
|
+
export const Default: StoryObj< typeof Navigator > = {
|
|
59
59
|
args: {
|
|
60
60
|
initialPath: '/',
|
|
61
61
|
children: (
|
|
62
62
|
<>
|
|
63
|
-
<
|
|
63
|
+
<Navigator.Screen path="/">
|
|
64
64
|
<h2>This is the home screen.</h2>
|
|
65
65
|
|
|
66
66
|
<VStack alignment="left">
|
|
67
|
-
<
|
|
67
|
+
<Navigator.Button variant="primary" path="/child">
|
|
68
68
|
Go to child screen.
|
|
69
|
-
</
|
|
69
|
+
</Navigator.Button>
|
|
70
70
|
|
|
71
|
-
<
|
|
71
|
+
<Navigator.Button variant="primary" path="/product/1">
|
|
72
72
|
Go to dynamic path screen with id 1.
|
|
73
|
-
</
|
|
73
|
+
</Navigator.Button>
|
|
74
74
|
|
|
75
|
-
<
|
|
75
|
+
<Navigator.Button variant="primary" path="/product/2">
|
|
76
76
|
Go to dynamic path screen with id 2.
|
|
77
|
-
</
|
|
77
|
+
</Navigator.Button>
|
|
78
78
|
</VStack>
|
|
79
|
-
</
|
|
79
|
+
</Navigator.Screen>
|
|
80
80
|
|
|
81
|
-
<
|
|
81
|
+
<Navigator.Screen path="/child">
|
|
82
82
|
<h2>This is the child screen.</h2>
|
|
83
83
|
<HStack spacing={ 2 } alignment="left">
|
|
84
|
-
<
|
|
84
|
+
<Navigator.BackButton variant="secondary">
|
|
85
85
|
Go back
|
|
86
|
-
</
|
|
86
|
+
</Navigator.BackButton>
|
|
87
87
|
|
|
88
|
-
<
|
|
88
|
+
<Navigator.Button
|
|
89
89
|
variant="primary"
|
|
90
90
|
path="/child/grandchild"
|
|
91
91
|
>
|
|
92
92
|
Go to grand child screen.
|
|
93
|
-
</
|
|
93
|
+
</Navigator.Button>
|
|
94
94
|
</HStack>
|
|
95
|
-
</
|
|
95
|
+
</Navigator.Screen>
|
|
96
96
|
|
|
97
|
-
<
|
|
97
|
+
<Navigator.Screen path="/child/grandchild">
|
|
98
98
|
<h2>This is the grand child screen.</h2>
|
|
99
|
-
<
|
|
99
|
+
<Navigator.BackButton variant="secondary">
|
|
100
100
|
Go back
|
|
101
|
-
</
|
|
102
|
-
</
|
|
101
|
+
</Navigator.BackButton>
|
|
102
|
+
</Navigator.Screen>
|
|
103
103
|
|
|
104
|
-
<
|
|
104
|
+
<Navigator.Screen path="/product/:id">
|
|
105
105
|
<DynamicScreen />
|
|
106
|
-
</
|
|
106
|
+
</Navigator.Screen>
|
|
107
107
|
</>
|
|
108
108
|
),
|
|
109
109
|
},
|
|
@@ -119,14 +119,14 @@ function DynamicScreen() {
|
|
|
119
119
|
This screen can parse params dynamically. The current id is:{ ' ' }
|
|
120
120
|
{ params.id }
|
|
121
121
|
</p>
|
|
122
|
-
<
|
|
122
|
+
<Navigator.BackButton variant="secondary">
|
|
123
123
|
Go back
|
|
124
|
-
</
|
|
124
|
+
</Navigator.BackButton>
|
|
125
125
|
</>
|
|
126
126
|
);
|
|
127
127
|
}
|
|
128
128
|
|
|
129
|
-
export const WithNestedInitialPath: StoryObj< typeof
|
|
129
|
+
export const WithNestedInitialPath: StoryObj< typeof Navigator > = {
|
|
130
130
|
...Default,
|
|
131
131
|
args: {
|
|
132
132
|
...Default.args,
|
|
@@ -138,7 +138,7 @@ const NavigatorButtonWithSkipFocus = ( {
|
|
|
138
138
|
path,
|
|
139
139
|
onClick,
|
|
140
140
|
...props
|
|
141
|
-
}: React.ComponentProps< typeof
|
|
141
|
+
}: React.ComponentProps< typeof Navigator.Button > ) => {
|
|
142
142
|
const { goTo } = useNavigator();
|
|
143
143
|
|
|
144
144
|
return (
|
|
@@ -156,7 +156,7 @@ const NavigatorButtonWithSkipFocus = ( {
|
|
|
156
156
|
);
|
|
157
157
|
};
|
|
158
158
|
|
|
159
|
-
export const SkipFocus: StoryObj< typeof
|
|
159
|
+
export const SkipFocus: StoryObj< typeof Navigator > = {
|
|
160
160
|
args: {
|
|
161
161
|
initialPath: '/',
|
|
162
162
|
children: (
|
|
@@ -167,21 +167,22 @@ export const SkipFocus: StoryObj< typeof NavigatorProvider > = {
|
|
|
167
167
|
outline: '1px solid black',
|
|
168
168
|
outlineOffset: '-1px',
|
|
169
169
|
marginBlockEnd: '1rem',
|
|
170
|
+
display: 'contents',
|
|
170
171
|
} }
|
|
171
172
|
>
|
|
172
|
-
<
|
|
173
|
+
<Navigator.Screen path="/">
|
|
173
174
|
<h2>Home screen</h2>
|
|
174
|
-
<
|
|
175
|
+
<Navigator.Button variant="primary" path="/child">
|
|
175
176
|
Go to child screen.
|
|
176
|
-
</
|
|
177
|
-
</
|
|
177
|
+
</Navigator.Button>
|
|
178
|
+
</Navigator.Screen>
|
|
178
179
|
|
|
179
|
-
<
|
|
180
|
+
<Navigator.Screen path="/child">
|
|
180
181
|
<h2>Child screen</h2>
|
|
181
|
-
<
|
|
182
|
+
<Navigator.BackButton variant="secondary">
|
|
182
183
|
Go back to home screen
|
|
183
|
-
</
|
|
184
|
-
</
|
|
184
|
+
</Navigator.BackButton>
|
|
185
|
+
</Navigator.Screen>
|
|
185
186
|
</div>
|
|
186
187
|
|
|
187
188
|
<NavigatorButtonWithSkipFocus path="/child">
|
package/src/navigator/styles.ts
CHANGED
|
@@ -3,69 +3,140 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { css, keyframes } from '@emotion/react';
|
|
5
5
|
|
|
6
|
-
export const
|
|
6
|
+
export const navigatorWrapper = css`
|
|
7
|
+
position: relative;
|
|
7
8
|
/* Prevents horizontal overflow while animating screen transitions */
|
|
8
|
-
overflow-x:
|
|
9
|
-
/*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
9
|
+
overflow-x: clip;
|
|
10
|
+
/*
|
|
11
|
+
* Mark this DOM subtree as isolated when it comes to layout calculations,
|
|
12
|
+
* providing performance benefits.
|
|
12
13
|
*/
|
|
13
|
-
contain:
|
|
14
|
+
contain: layout;
|
|
15
|
+
|
|
16
|
+
display: grid;
|
|
17
|
+
grid-template-columns: 1fr;
|
|
18
|
+
grid-template-rows: 1fr;
|
|
19
|
+
align-items: start;
|
|
14
20
|
`;
|
|
15
21
|
|
|
16
|
-
const
|
|
17
|
-
|
|
22
|
+
const fadeIn = keyframes( {
|
|
23
|
+
from: {
|
|
18
24
|
opacity: 0,
|
|
19
|
-
transform: `translateX( 50px )`,
|
|
20
25
|
},
|
|
21
|
-
'100%': { opacity: 1, transform: 'none' },
|
|
22
26
|
} );
|
|
23
27
|
|
|
24
|
-
const
|
|
25
|
-
|
|
28
|
+
const fadeOut = keyframes( {
|
|
29
|
+
to: {
|
|
26
30
|
opacity: 0,
|
|
27
|
-
transform: `translateX( -50px )`,
|
|
28
31
|
},
|
|
29
|
-
'100%': { opacity: 1, transform: 'none' },
|
|
30
32
|
} );
|
|
31
33
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
34
|
+
export const slideFromRight = keyframes( {
|
|
35
|
+
from: {
|
|
36
|
+
transform: 'translateX(100px)',
|
|
37
|
+
},
|
|
38
|
+
} );
|
|
39
|
+
|
|
40
|
+
export const slideToLeft = keyframes( {
|
|
41
|
+
to: {
|
|
42
|
+
transform: 'translateX(-80px)',
|
|
43
|
+
},
|
|
44
|
+
} );
|
|
45
|
+
|
|
46
|
+
export const slideFromLeft = keyframes( {
|
|
47
|
+
from: {
|
|
48
|
+
transform: 'translateX(-100px)',
|
|
49
|
+
},
|
|
50
|
+
} );
|
|
51
|
+
|
|
52
|
+
export const slideToRight = keyframes( {
|
|
53
|
+
to: {
|
|
54
|
+
transform: 'translateX(80px)',
|
|
55
|
+
},
|
|
56
|
+
} );
|
|
57
|
+
|
|
58
|
+
const FADE = {
|
|
59
|
+
DURATION: 70,
|
|
60
|
+
EASING: 'linear',
|
|
61
|
+
DELAY: {
|
|
62
|
+
IN: 70,
|
|
63
|
+
OUT: 40,
|
|
64
|
+
},
|
|
65
|
+
};
|
|
66
|
+
const SLIDE = {
|
|
67
|
+
DURATION: 300,
|
|
68
|
+
EASING: 'cubic-bezier(0.33, 0, 0, 1)',
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
export const TOTAL_ANIMATION_DURATION = {
|
|
72
|
+
IN: Math.max( FADE.DURATION + FADE.DELAY.IN, SLIDE.DURATION ),
|
|
73
|
+
OUT: Math.max( FADE.DURATION + FADE.DELAY.OUT, SLIDE.DURATION ),
|
|
36
74
|
};
|
|
37
75
|
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
76
|
+
export const ANIMATION_END_NAMES = {
|
|
77
|
+
end: {
|
|
78
|
+
in: slideFromRight.name,
|
|
79
|
+
out: slideToLeft.name,
|
|
80
|
+
},
|
|
81
|
+
start: {
|
|
82
|
+
in: slideFromLeft.name,
|
|
83
|
+
out: slideToRight.name,
|
|
84
|
+
},
|
|
85
|
+
};
|
|
46
86
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
87
|
+
const ANIMATION = {
|
|
88
|
+
end: {
|
|
89
|
+
in: css`
|
|
90
|
+
${ FADE.DURATION }ms ${ FADE.EASING } ${ FADE.DELAY
|
|
91
|
+
.IN }ms both ${ fadeIn }, ${ SLIDE.DURATION }ms ${ SLIDE.EASING } both ${ slideFromRight }
|
|
92
|
+
`,
|
|
93
|
+
out: css`
|
|
94
|
+
${ FADE.DURATION }ms ${ FADE.EASING } ${ FADE.DELAY
|
|
95
|
+
.OUT }ms both ${ fadeOut }, ${ SLIDE.DURATION }ms ${ SLIDE.EASING } both ${ slideToLeft }
|
|
96
|
+
`,
|
|
97
|
+
},
|
|
98
|
+
start: {
|
|
99
|
+
in: css`
|
|
100
|
+
${ FADE.DURATION }ms ${ FADE.EASING } ${ FADE.DELAY
|
|
101
|
+
.IN }ms both ${ fadeIn }, ${ SLIDE.DURATION }ms ${ SLIDE.EASING } both ${ slideFromLeft }
|
|
102
|
+
`,
|
|
103
|
+
out: css`
|
|
104
|
+
${ FADE.DURATION }ms ${ FADE.EASING } ${ FADE.DELAY
|
|
105
|
+
.OUT }ms both ${ fadeOut }, ${ SLIDE.DURATION }ms ${ SLIDE.EASING } both ${ slideToRight }
|
|
106
|
+
`,
|
|
107
|
+
},
|
|
108
|
+
} as const;
|
|
109
|
+
export const navigatorScreenAnimation = css`
|
|
110
|
+
z-index: 1;
|
|
51
111
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
will-change: transform, opacity;
|
|
56
|
-
animation-name: ${ animationName };
|
|
112
|
+
&[data-animation-type='out'] {
|
|
113
|
+
z-index: 0;
|
|
114
|
+
}
|
|
57
115
|
|
|
58
|
-
|
|
59
|
-
|
|
116
|
+
@media not ( prefers-reduced-motion ) {
|
|
117
|
+
&:not( [data-skip-animation] ) {
|
|
118
|
+
${ ( [ 'start', 'end' ] as const ).map( ( direction ) =>
|
|
119
|
+
( [ 'in', 'out' ] as const ).map(
|
|
120
|
+
( type ) => css`
|
|
121
|
+
&[data-animation-direction='${ direction }'][data-animation-type='${ type }'] {
|
|
122
|
+
animation: ${ ANIMATION[ direction ][ type ] };
|
|
123
|
+
}
|
|
124
|
+
`
|
|
125
|
+
)
|
|
126
|
+
) }
|
|
60
127
|
}
|
|
61
|
-
|
|
62
|
-
|
|
128
|
+
}
|
|
129
|
+
`;
|
|
63
130
|
|
|
64
|
-
export const navigatorScreen =
|
|
131
|
+
export const navigatorScreen = css`
|
|
65
132
|
/* Ensures horizontal overflow is visually accessible */
|
|
66
133
|
overflow-x: auto;
|
|
67
134
|
/* In case the root has a height, it should not be exceeded */
|
|
68
135
|
max-height: 100%;
|
|
136
|
+
box-sizing: border-box;
|
|
137
|
+
|
|
138
|
+
position: relative;
|
|
69
139
|
|
|
70
|
-
|
|
140
|
+
grid-column: 1 / -1;
|
|
141
|
+
grid-row: 1 / -1;
|
|
71
142
|
`;
|
|
@@ -14,14 +14,8 @@ import { useState } from '@wordpress/element';
|
|
|
14
14
|
* Internal dependencies
|
|
15
15
|
*/
|
|
16
16
|
import Button from '../../button';
|
|
17
|
-
import {
|
|
18
|
-
|
|
19
|
-
NavigatorScreen,
|
|
20
|
-
NavigatorButton,
|
|
21
|
-
NavigatorBackButton,
|
|
22
|
-
NavigatorToParentButton,
|
|
23
|
-
useNavigator,
|
|
24
|
-
} from '..';
|
|
17
|
+
import { Navigator, useNavigator } from '..';
|
|
18
|
+
import { NavigatorToParentButton } from '../legacy';
|
|
25
19
|
import type { NavigateOptions } from '../types';
|
|
26
20
|
|
|
27
21
|
const INVALID_HTML_ATTRIBUTE = {
|
|
@@ -76,11 +70,11 @@ function CustomNavigatorButton( {
|
|
|
76
70
|
path,
|
|
77
71
|
onClick,
|
|
78
72
|
...props
|
|
79
|
-
}: Omit< ComponentPropsWithoutRef< typeof
|
|
73
|
+
}: Omit< ComponentPropsWithoutRef< typeof Navigator.Button >, 'onClick' > & {
|
|
80
74
|
onClick?: CustomTestOnClickHandler;
|
|
81
75
|
} ) {
|
|
82
76
|
return (
|
|
83
|
-
<
|
|
77
|
+
<Navigator.Button
|
|
84
78
|
onClick={ () => {
|
|
85
79
|
// Used to spy on the values passed to `navigator.goTo`.
|
|
86
80
|
onClick?.( { type: 'goTo', path } );
|
|
@@ -95,7 +89,7 @@ function CustomNavigatorGoToBackButton( {
|
|
|
95
89
|
path,
|
|
96
90
|
onClick,
|
|
97
91
|
...props
|
|
98
|
-
}: Omit< ComponentPropsWithoutRef< typeof
|
|
92
|
+
}: Omit< ComponentPropsWithoutRef< typeof Navigator.Button >, 'onClick' > & {
|
|
99
93
|
onClick?: CustomTestOnClickHandler;
|
|
100
94
|
} ) {
|
|
101
95
|
const { goTo } = useNavigator();
|
|
@@ -115,7 +109,7 @@ function CustomNavigatorGoToSkipFocusButton( {
|
|
|
115
109
|
path,
|
|
116
110
|
onClick,
|
|
117
111
|
...props
|
|
118
|
-
}: Omit< ComponentPropsWithoutRef< typeof
|
|
112
|
+
}: Omit< ComponentPropsWithoutRef< typeof Navigator.Button >, 'onClick' > & {
|
|
119
113
|
onClick?: CustomTestOnClickHandler;
|
|
120
114
|
} ) {
|
|
121
115
|
const { goTo } = useNavigator();
|
|
@@ -134,11 +128,14 @@ function CustomNavigatorGoToSkipFocusButton( {
|
|
|
134
128
|
function CustomNavigatorBackButton( {
|
|
135
129
|
onClick,
|
|
136
130
|
...props
|
|
137
|
-
}: Omit<
|
|
131
|
+
}: Omit<
|
|
132
|
+
ComponentPropsWithoutRef< typeof Navigator.BackButton >,
|
|
133
|
+
'onClick'
|
|
134
|
+
> & {
|
|
138
135
|
onClick?: CustomTestOnClickHandler;
|
|
139
136
|
} ) {
|
|
140
137
|
return (
|
|
141
|
-
<
|
|
138
|
+
<Navigator.BackButton
|
|
142
139
|
onClick={ () => {
|
|
143
140
|
// Used to spy on the values passed to `navigator.goBack`.
|
|
144
141
|
onClick?.( { type: 'goBack' } );
|
|
@@ -151,7 +148,10 @@ function CustomNavigatorBackButton( {
|
|
|
151
148
|
function CustomNavigatorToParentButton( {
|
|
152
149
|
onClick,
|
|
153
150
|
...props
|
|
154
|
-
}: Omit<
|
|
151
|
+
}: Omit<
|
|
152
|
+
ComponentPropsWithoutRef< typeof Navigator.BackButton >,
|
|
153
|
+
'onClick'
|
|
154
|
+
> & {
|
|
155
155
|
onClick?: CustomTestOnClickHandler;
|
|
156
156
|
} ) {
|
|
157
157
|
return (
|
|
@@ -194,13 +194,13 @@ const ProductScreen = ( {
|
|
|
194
194
|
const { params } = useNavigator();
|
|
195
195
|
|
|
196
196
|
return (
|
|
197
|
-
<
|
|
197
|
+
<Navigator.Screen path={ PATHS.PRODUCT_PATTERN }>
|
|
198
198
|
<p>{ SCREEN_TEXT.product }</p>
|
|
199
199
|
<p>Product ID is { params.productId }</p>
|
|
200
200
|
<CustomNavigatorBackButton onClick={ onBackButtonClick }>
|
|
201
201
|
{ BUTTON_TEXT.back }
|
|
202
202
|
</CustomNavigatorBackButton>
|
|
203
|
-
</
|
|
203
|
+
</Navigator.Screen>
|
|
204
204
|
);
|
|
205
205
|
};
|
|
206
206
|
|
|
@@ -215,8 +215,8 @@ const MyNavigation = ( {
|
|
|
215
215
|
const [ outerInputValue, setOuterInputValue ] = useState( '' );
|
|
216
216
|
return (
|
|
217
217
|
<>
|
|
218
|
-
<
|
|
219
|
-
<
|
|
218
|
+
<Navigator initialPath={ initialPath }>
|
|
219
|
+
<Navigator.Screen path={ PATHS.HOME }>
|
|
220
220
|
<p>{ SCREEN_TEXT.home }</p>
|
|
221
221
|
{ /*
|
|
222
222
|
* A button useful to test focus restoration. This button is the first
|
|
@@ -254,9 +254,9 @@ const MyNavigation = ( {
|
|
|
254
254
|
>
|
|
255
255
|
{ BUTTON_TEXT.toInvalidHtmlPathScreen }
|
|
256
256
|
</CustomNavigatorButton>
|
|
257
|
-
</
|
|
257
|
+
</Navigator.Screen>
|
|
258
258
|
|
|
259
|
-
<
|
|
259
|
+
<Navigator.Screen path={ PATHS.CHILD }>
|
|
260
260
|
<p>{ SCREEN_TEXT.child }</p>
|
|
261
261
|
{ /*
|
|
262
262
|
* A button useful to test focus restoration. This button is the first
|
|
@@ -286,30 +286,30 @@ const MyNavigation = ( {
|
|
|
286
286
|
} }
|
|
287
287
|
value={ innerInputValue }
|
|
288
288
|
/>
|
|
289
|
-
</
|
|
289
|
+
</Navigator.Screen>
|
|
290
290
|
|
|
291
|
-
<
|
|
291
|
+
<Navigator.Screen path={ PATHS.NESTED }>
|
|
292
292
|
<p>{ SCREEN_TEXT.nested }</p>
|
|
293
293
|
<CustomNavigatorBackButton
|
|
294
294
|
onClick={ onNavigatorButtonClick }
|
|
295
295
|
>
|
|
296
296
|
{ BUTTON_TEXT.back }
|
|
297
297
|
</CustomNavigatorBackButton>
|
|
298
|
-
</
|
|
298
|
+
</Navigator.Screen>
|
|
299
299
|
|
|
300
300
|
<ProductScreen onBackButtonClick={ onNavigatorButtonClick } />
|
|
301
301
|
|
|
302
|
-
<
|
|
302
|
+
<Navigator.Screen path={ PATHS.INVALID_HTML_ATTRIBUTE }>
|
|
303
303
|
<p>{ SCREEN_TEXT.invalidHtmlPath }</p>
|
|
304
304
|
<CustomNavigatorBackButton
|
|
305
305
|
onClick={ onNavigatorButtonClick }
|
|
306
306
|
>
|
|
307
307
|
{ BUTTON_TEXT.back }
|
|
308
308
|
</CustomNavigatorBackButton>
|
|
309
|
-
</
|
|
309
|
+
</Navigator.Screen>
|
|
310
310
|
|
|
311
|
-
{ /* A `
|
|
312
|
-
</
|
|
311
|
+
{ /* A `Navigator.Screen` with `path={ PATHS.NOT_FOUND }` is purposefully not included. */ }
|
|
312
|
+
</Navigator>
|
|
313
313
|
|
|
314
314
|
<label htmlFor="test-input-outer">Outer input</label>
|
|
315
315
|
<input
|
|
@@ -334,8 +334,8 @@ const MyHierarchicalNavigation = ( {
|
|
|
334
334
|
} ) => {
|
|
335
335
|
return (
|
|
336
336
|
<>
|
|
337
|
-
<
|
|
338
|
-
<
|
|
337
|
+
<Navigator initialPath={ initialPath }>
|
|
338
|
+
<Navigator.Screen path={ PATHS.HOME }>
|
|
339
339
|
<p>{ SCREEN_TEXT.home }</p>
|
|
340
340
|
{ /*
|
|
341
341
|
* A button useful to test focus restoration. This button is the first
|
|
@@ -349,9 +349,9 @@ const MyHierarchicalNavigation = ( {
|
|
|
349
349
|
>
|
|
350
350
|
{ BUTTON_TEXT.toChildScreen }
|
|
351
351
|
</CustomNavigatorButton>
|
|
352
|
-
</
|
|
352
|
+
</Navigator.Screen>
|
|
353
353
|
|
|
354
|
-
<
|
|
354
|
+
<Navigator.Screen path={ PATHS.CHILD }>
|
|
355
355
|
<p>{ SCREEN_TEXT.child }</p>
|
|
356
356
|
{ /*
|
|
357
357
|
* A button useful to test focus restoration. This button is the first
|
|
@@ -370,9 +370,9 @@ const MyHierarchicalNavigation = ( {
|
|
|
370
370
|
>
|
|
371
371
|
{ BUTTON_TEXT.back }
|
|
372
372
|
</CustomNavigatorBackButton>
|
|
373
|
-
</
|
|
373
|
+
</Navigator.Screen>
|
|
374
374
|
|
|
375
|
-
<
|
|
375
|
+
<Navigator.Screen path={ PATHS.NESTED }>
|
|
376
376
|
<p>{ SCREEN_TEXT.nested }</p>
|
|
377
377
|
<CustomNavigatorBackButton
|
|
378
378
|
onClick={ onNavigatorButtonClick }
|
|
@@ -385,14 +385,14 @@ const MyHierarchicalNavigation = ( {
|
|
|
385
385
|
>
|
|
386
386
|
{ BUTTON_TEXT.backUsingGoTo }
|
|
387
387
|
</CustomNavigatorGoToBackButton>
|
|
388
|
-
</
|
|
388
|
+
</Navigator.Screen>
|
|
389
389
|
<CustomNavigatorGoToSkipFocusButton
|
|
390
390
|
path={ PATHS.NESTED }
|
|
391
391
|
onClick={ onNavigatorButtonClick }
|
|
392
392
|
>
|
|
393
393
|
{ BUTTON_TEXT.goToWithSkipFocus }
|
|
394
394
|
</CustomNavigatorGoToSkipFocusButton>
|
|
395
|
-
</
|
|
395
|
+
</Navigator>
|
|
396
396
|
</>
|
|
397
397
|
);
|
|
398
398
|
};
|
|
@@ -406,8 +406,8 @@ const MyDeprecatedNavigation = ( {
|
|
|
406
406
|
} ) => {
|
|
407
407
|
return (
|
|
408
408
|
<>
|
|
409
|
-
<
|
|
410
|
-
<
|
|
409
|
+
<Navigator initialPath={ initialPath }>
|
|
410
|
+
<Navigator.Screen path={ PATHS.HOME }>
|
|
411
411
|
<p>{ SCREEN_TEXT.home }</p>
|
|
412
412
|
{ /*
|
|
413
413
|
* A button useful to test focus restoration. This button is the first
|
|
@@ -421,9 +421,9 @@ const MyDeprecatedNavigation = ( {
|
|
|
421
421
|
>
|
|
422
422
|
{ BUTTON_TEXT.toChildScreen }
|
|
423
423
|
</CustomNavigatorButton>
|
|
424
|
-
</
|
|
424
|
+
</Navigator.Screen>
|
|
425
425
|
|
|
426
|
-
<
|
|
426
|
+
<Navigator.Screen path={ PATHS.CHILD }>
|
|
427
427
|
<p>{ SCREEN_TEXT.child }</p>
|
|
428
428
|
{ /*
|
|
429
429
|
* A button useful to test focus restoration. This button is the first
|
|
@@ -442,17 +442,17 @@ const MyDeprecatedNavigation = ( {
|
|
|
442
442
|
>
|
|
443
443
|
{ BUTTON_TEXT.back }
|
|
444
444
|
</CustomNavigatorToParentButton>
|
|
445
|
-
</
|
|
445
|
+
</Navigator.Screen>
|
|
446
446
|
|
|
447
|
-
<
|
|
447
|
+
<Navigator.Screen path={ PATHS.NESTED }>
|
|
448
448
|
<p>{ SCREEN_TEXT.nested }</p>
|
|
449
449
|
<CustomNavigatorToParentButtonAlternative
|
|
450
450
|
onClick={ onNavigatorButtonClick }
|
|
451
451
|
>
|
|
452
452
|
{ BUTTON_TEXT.back }
|
|
453
453
|
</CustomNavigatorToParentButtonAlternative>
|
|
454
|
-
</
|
|
455
|
-
</
|
|
454
|
+
</Navigator.Screen>
|
|
455
|
+
</Navigator>
|
|
456
456
|
</>
|
|
457
457
|
);
|
|
458
458
|
};
|
|
@@ -643,10 +643,10 @@ describe( 'Navigator', () => {
|
|
|
643
643
|
} );
|
|
644
644
|
|
|
645
645
|
it( 'should warn if the `path` prop does not follow the required format', () => {
|
|
646
|
-
render( <
|
|
646
|
+
render( <Navigator.Screen path="not-valid">Test</Navigator.Screen> );
|
|
647
647
|
|
|
648
648
|
expect( console ).toHaveWarnedWith(
|
|
649
|
-
'wp.components.
|
|
649
|
+
'wp.components.Navigator.Screen: the `path` should follow a URL-like scheme; it should start with and be separated by the `/` character.'
|
|
650
650
|
);
|
|
651
651
|
} );
|
|
652
652
|
|
|
@@ -880,7 +880,7 @@ describe( 'Navigator', () => {
|
|
|
880
880
|
|
|
881
881
|
// Rendering `NavigatorToParentButton` logs a deprecation notice
|
|
882
882
|
expect( console ).toHaveWarnedWith(
|
|
883
|
-
'wp.components.NavigatorToParentButton is deprecated since version 6.7. Please use wp.components.
|
|
883
|
+
'wp.components.NavigatorToParentButton is deprecated since version 6.7. Please use wp.components.Navigator.BackButton instead.'
|
|
884
884
|
);
|
|
885
885
|
} );
|
|
886
886
|
|
package/src/navigator/types.ts
CHANGED
|
@@ -86,7 +86,7 @@ export type NavigatorContext = Navigator & {
|
|
|
86
86
|
match?: string;
|
|
87
87
|
};
|
|
88
88
|
|
|
89
|
-
export type
|
|
89
|
+
export type NavigatorProps = {
|
|
90
90
|
/**
|
|
91
91
|
* The initial active path.
|
|
92
92
|
*/
|
|
@@ -100,6 +100,24 @@ export type NavigatorProviderProps = {
|
|
|
100
100
|
export type NavigatorScreenProps = {
|
|
101
101
|
/**
|
|
102
102
|
* The screen's path, matched against the current path stored in the navigator.
|
|
103
|
+
*
|
|
104
|
+
* `Navigator` assumes that screens are organized hierarchically according
|
|
105
|
+
* to their `path`, which should follow a URL-like scheme where each path
|
|
106
|
+
* segment starts with and is separated by the `/` character.
|
|
107
|
+
*
|
|
108
|
+
* `Navigator` will treat "back" navigations as going to the parent screen —
|
|
109
|
+
* it is, therefore, the responsibility of the consumer of the component to
|
|
110
|
+
* create the correct screen hierarchy.
|
|
111
|
+
*
|
|
112
|
+
* For example:
|
|
113
|
+
* - `/` is the root of all paths. There should always be a screen with
|
|
114
|
+
* `path="/"`;
|
|
115
|
+
* - `/parent/child` is a child of `/parent`;
|
|
116
|
+
* - `/parent/child/grand-child` is a child of `/parent/child`;
|
|
117
|
+
* - `/parent/:param` is a child of `/parent` as well;
|
|
118
|
+
* - if the current screen has a `path="/parent/child/grand-child"`, when
|
|
119
|
+
* going "back" `Navigator` will try to recursively navigate the path
|
|
120
|
+
* hierarchy until a matching screen (or the root `/`) is found.
|
|
103
121
|
*/
|
|
104
122
|
path: string;
|
|
105
123
|
/**
|