@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
package/src/dropdown/style.scss
CHANGED
|
@@ -5,6 +5,16 @@
|
|
|
5
5
|
.components-dropdown__content {
|
|
6
6
|
.components-popover__content {
|
|
7
7
|
padding: $grid-unit-10;
|
|
8
|
+
|
|
9
|
+
&:has(.components-menu-group) {
|
|
10
|
+
padding: 0;
|
|
11
|
+
|
|
12
|
+
.components-dropdown-menu__menu > .components-menu-item__button,
|
|
13
|
+
> .components-menu-item__button {
|
|
14
|
+
margin: $grid-unit-10;
|
|
15
|
+
width: auto;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
8
18
|
}
|
|
9
19
|
|
|
10
20
|
[role="menuitem"] {
|
|
@@ -13,22 +23,9 @@
|
|
|
13
23
|
|
|
14
24
|
.components-menu-group {
|
|
15
25
|
padding: $grid-unit-10;
|
|
16
|
-
margin-top: 0;
|
|
17
|
-
margin-bottom: 0;
|
|
18
|
-
margin-left: -$grid-unit-10;
|
|
19
|
-
margin-right: -$grid-unit-10;
|
|
20
|
-
|
|
21
|
-
&:first-child {
|
|
22
|
-
margin-top: -$grid-unit-10;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
&:last-child {
|
|
26
|
-
margin-bottom: -$grid-unit-10;
|
|
27
|
-
}
|
|
28
26
|
}
|
|
29
27
|
|
|
30
28
|
.components-menu-group + .components-menu-group {
|
|
31
|
-
margin-top: 0;
|
|
32
29
|
border-top: $border-width solid $gray-400;
|
|
33
30
|
padding: $grid-unit-10;
|
|
34
31
|
}
|
|
@@ -96,6 +96,9 @@ export const WithChildren: StoryObj< typeof DropdownMenu > = {
|
|
|
96
96
|
icon: more,
|
|
97
97
|
children: ( { onClose } ) => (
|
|
98
98
|
<>
|
|
99
|
+
<MenuItem icon={ arrowUp } onClick={ onClose }>
|
|
100
|
+
Standalone Item
|
|
101
|
+
</MenuItem>
|
|
99
102
|
<MenuGroup>
|
|
100
103
|
<MenuItem icon={ arrowUp } onClick={ onClose }>
|
|
101
104
|
Move Up
|
package/src/index.ts
CHANGED
|
@@ -33,14 +33,22 @@ export {
|
|
|
33
33
|
} from './autocomplete';
|
|
34
34
|
export { default as BaseControl, useBaseControlProps } from './base-control';
|
|
35
35
|
export {
|
|
36
|
+
/** @deprecated Import `BorderBoxControl` instead. */
|
|
36
37
|
BorderBoxControl as __experimentalBorderBoxControl,
|
|
38
|
+
BorderBoxControl,
|
|
37
39
|
hasSplitBorders as __experimentalHasSplitBorders,
|
|
38
40
|
isDefinedBorder as __experimentalIsDefinedBorder,
|
|
39
41
|
isEmptyBorder as __experimentalIsEmptyBorder,
|
|
40
42
|
} from './border-box-control';
|
|
41
|
-
export { BorderControl as __experimentalBorderControl } from './border-control';
|
|
42
43
|
export {
|
|
44
|
+
/** @deprecated Import `BorderControl` instead. */
|
|
45
|
+
BorderControl as __experimentalBorderControl,
|
|
46
|
+
BorderControl,
|
|
47
|
+
} from './border-control';
|
|
48
|
+
export {
|
|
49
|
+
/** @deprecated Import `BoxControl` instead. */
|
|
43
50
|
default as __experimentalBoxControl,
|
|
51
|
+
default as BoxControl,
|
|
44
52
|
applyValueToSides as __experimentalApplyValueToSides,
|
|
45
53
|
} from './box-control';
|
|
46
54
|
export { default as Button } from './button';
|
|
@@ -121,11 +129,21 @@ export { default as __experimentalNavigationGroup } from './navigation/group';
|
|
|
121
129
|
export { default as __experimentalNavigationItem } from './navigation/item';
|
|
122
130
|
export { default as __experimentalNavigationMenu } from './navigation/menu';
|
|
123
131
|
export {
|
|
132
|
+
/** @deprecated Import `Navigator` instead. */
|
|
124
133
|
NavigatorProvider as __experimentalNavigatorProvider,
|
|
134
|
+
/** @deprecated Import `Navigator` and use `Navigator.Screen` instead. */
|
|
125
135
|
NavigatorScreen as __experimentalNavigatorScreen,
|
|
136
|
+
/** @deprecated Import `Navigator` and use `Navigator.Button` instead. */
|
|
126
137
|
NavigatorButton as __experimentalNavigatorButton,
|
|
138
|
+
/** @deprecated Import `Navigator` and use `Navigator.BackButton` instead. */
|
|
127
139
|
NavigatorBackButton as __experimentalNavigatorBackButton,
|
|
140
|
+
/** @deprecated Import `Navigator` and use `Navigator.BackButton` instead. */
|
|
128
141
|
NavigatorToParentButton as __experimentalNavigatorToParentButton,
|
|
142
|
+
} from './navigator/legacy';
|
|
143
|
+
export {
|
|
144
|
+
Navigator,
|
|
145
|
+
useNavigator,
|
|
146
|
+
/** @deprecated Import `useNavigator` instead. */
|
|
129
147
|
useNavigator as __experimentalUseNavigator,
|
|
130
148
|
} from './navigator';
|
|
131
149
|
export { default as Notice } from './notice';
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
.components-menu-group + .components-menu-group {
|
|
2
|
-
margin-top: $grid-unit-10;
|
|
3
2
|
padding-top: $grid-unit-10;
|
|
4
3
|
border-top: $border-width solid $gray-900;
|
|
5
4
|
|
|
@@ -10,6 +9,10 @@
|
|
|
10
9
|
}
|
|
11
10
|
}
|
|
12
11
|
|
|
12
|
+
.components-menu-group:has(> div:empty) {
|
|
13
|
+
display: none;
|
|
14
|
+
}
|
|
15
|
+
|
|
13
16
|
.components-menu-group__label {
|
|
14
17
|
padding: 0 $grid-unit-10;
|
|
15
18
|
margin-top: $grid-unit-05;
|
package/src/modal/aria-helper.ts
CHANGED
|
@@ -47,6 +47,7 @@ export function elementShouldBeHidden( element: Element ) {
|
|
|
47
47
|
const role = element.getAttribute( 'role' );
|
|
48
48
|
return ! (
|
|
49
49
|
element.tagName === 'SCRIPT' ||
|
|
50
|
+
element.hasAttribute( 'hidden' ) ||
|
|
50
51
|
element.hasAttribute( 'aria-hidden' ) ||
|
|
51
52
|
element.hasAttribute( 'aria-live' ) ||
|
|
52
53
|
( role && LIVE_REGION_ARIA_ROLES.has( role ) )
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
# `Navigator`
|
|
2
|
+
|
|
3
|
+
`Navigator` is a collection components that allow rendering nested views/panels/menus (via the `Navigator.Screen` component) and navigate between them (via the `Navigator.Button` and `Navigator.BackButton` components).
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```jsx
|
|
8
|
+
import { Navigator } from '@wordpress/components';
|
|
9
|
+
|
|
10
|
+
const MyNavigation = () => (
|
|
11
|
+
<Navigator initialPath="/">
|
|
12
|
+
<Navigator.Screen path="/">
|
|
13
|
+
<p>This is the home screen.</p>
|
|
14
|
+
<Navigator.Button path="/child">
|
|
15
|
+
Navigate to child screen.
|
|
16
|
+
</Navigator.Button>
|
|
17
|
+
</Navigator.Screen>
|
|
18
|
+
<Navigator.Screen path="/child">
|
|
19
|
+
<p>This is the child screen.</p>
|
|
20
|
+
<Navigator.BackButton>Go back</Navigator.BackButton>
|
|
21
|
+
</Navigator.Screen>
|
|
22
|
+
</Navigator>
|
|
23
|
+
);
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### Hierarchical `path`s
|
|
27
|
+
|
|
28
|
+
`Navigator` assumes that screens are organized hierarchically according to their `path`, which should follow a URL-like scheme where each path segment starts with and is separated by the `/` character.
|
|
29
|
+
|
|
30
|
+
`Navigator` will treat "back" navigations as going to the parent screen — it is, therefore, the responsibility of the consumer of the component to create the correct screen hierarchy.
|
|
31
|
+
|
|
32
|
+
For example:
|
|
33
|
+
|
|
34
|
+
- `/` is the root of all paths. There should always be a screen with `path="/"`;
|
|
35
|
+
- `/parent/child` is a child of `/parent`;
|
|
36
|
+
- `/parent/child/grand-child` is a child of `/parent/child`;
|
|
37
|
+
- `/parent/:param` is a child of `/parent` as well;
|
|
38
|
+
- if the current screen has a `path="/parent/child/grand-child"`, when going "back" `Navigator` will try to recursively navigate the path hierarchy until a matching screen (or the root `/`) is found.
|
|
39
|
+
|
|
40
|
+
### Height and animations
|
|
41
|
+
|
|
42
|
+
Due to how `Navigator.Screen` animations work, it is recommended that the `Navigator` component is assigned a `height` to prevent some potential UI jumps while moving across screens.
|
|
43
|
+
|
|
44
|
+
### Individual components
|
|
45
|
+
|
|
46
|
+
`Navigator` is comprised of four individual components:
|
|
47
|
+
|
|
48
|
+
- `Navigator`: a wrapper component and context provider. It holds the main logic for hiding and showing screens.
|
|
49
|
+
- `Navigator.Screen`: represents a single view/screen/panel;
|
|
50
|
+
- `Navigator.Button`: renders a button that allows navigating to a different `Navigator.Screen`;
|
|
51
|
+
- `Navigator.BackButton`: renders a button that allows navigating to the parent `Navigator.Screen` (see the section above about hierarchical paths).
|
|
52
|
+
|
|
53
|
+
For advanced usages, consumers can use the `useNavigator` hook.
|
|
54
|
+
|
|
55
|
+
#### `Navigator`
|
|
56
|
+
|
|
57
|
+
##### Props
|
|
58
|
+
|
|
59
|
+
###### `initialPath`: `string`
|
|
60
|
+
|
|
61
|
+
The initial active path.
|
|
62
|
+
|
|
63
|
+
- Required: Yes
|
|
64
|
+
|
|
65
|
+
###### `children`: `string`
|
|
66
|
+
|
|
67
|
+
The children elements.
|
|
68
|
+
|
|
69
|
+
- Required: Yes
|
|
70
|
+
|
|
71
|
+
#### `Navigator.Screen`
|
|
72
|
+
|
|
73
|
+
##### Props
|
|
74
|
+
|
|
75
|
+
###### `path`: `string`
|
|
76
|
+
|
|
77
|
+
The screen's path, matched against the current path stored in the navigator.
|
|
78
|
+
|
|
79
|
+
`Navigator` assumes that screens are organized hierarchically according to their `path`, which should follow a URL-like scheme where each path segment starts with and is separated by the `/` character.
|
|
80
|
+
|
|
81
|
+
`Navigator` will treat "back" navigations as going to the parent screen — it is, therefore, the responsibility of the consumer of the component to create the correct screen hierarchy.
|
|
82
|
+
|
|
83
|
+
For example:
|
|
84
|
+
|
|
85
|
+
- `/` is the root of all paths. There should always be a screen with `path="/"`.
|
|
86
|
+
- `/parent/child` is a child of `/parent`.
|
|
87
|
+
- `/parent/child/grand-child` is a child of `/parent/child`.
|
|
88
|
+
- `/parent/:param` is a child of `/parent` as well.
|
|
89
|
+
- if the current screen has a `path` with value `/parent/child/grand-child`, when going "back" `Navigator` will try to recursively navigate the path hierarchy until a matching screen (or the root `/`) is found.
|
|
90
|
+
|
|
91
|
+
- Required: Yes
|
|
92
|
+
|
|
93
|
+
###### `children`: `string`
|
|
94
|
+
|
|
95
|
+
The children elements.
|
|
96
|
+
|
|
97
|
+
- Required: Yes
|
|
98
|
+
|
|
99
|
+
#### `Navigator.Button`
|
|
100
|
+
|
|
101
|
+
##### Props
|
|
102
|
+
|
|
103
|
+
###### `path`: `string`
|
|
104
|
+
|
|
105
|
+
The path of the screen to navigate to. The value of this prop needs to be [a valid value for an HTML attribute](https://html.spec.whatwg.org/multipage/syntax.html#attributes-2).
|
|
106
|
+
|
|
107
|
+
- Required: Yes
|
|
108
|
+
|
|
109
|
+
###### `attributeName`: `string`
|
|
110
|
+
|
|
111
|
+
The HTML attribute used to identify the `Navigator.Button`, which is used by `Navigator` to restore focus.
|
|
112
|
+
|
|
113
|
+
- Required: No
|
|
114
|
+
- Default: `id`
|
|
115
|
+
|
|
116
|
+
###### `children`: `string`
|
|
117
|
+
|
|
118
|
+
The children elements.
|
|
119
|
+
|
|
120
|
+
- Required: No
|
|
121
|
+
|
|
122
|
+
###### Inherited props
|
|
123
|
+
|
|
124
|
+
`Navigator.Button` also inherits all of the [`Button` props](/packages/components/src/button/README.md#props), except for `href` and `target`.
|
|
125
|
+
|
|
126
|
+
#### `Navigator.BackButton`
|
|
127
|
+
|
|
128
|
+
##### Props
|
|
129
|
+
|
|
130
|
+
###### `children`: `string`
|
|
131
|
+
|
|
132
|
+
The children elements.
|
|
133
|
+
|
|
134
|
+
- Required: No
|
|
135
|
+
|
|
136
|
+
###### Inherited props
|
|
137
|
+
|
|
138
|
+
`Navigator.BackButton` also inherits all of the [`Button` props](/packages/components/src/button/README.md#props), except for `href` and `target`.
|
|
139
|
+
|
|
140
|
+
#### `useNavigator`
|
|
141
|
+
|
|
142
|
+
You can retrieve a `navigator` instance by using the `useNavigator` hook.
|
|
143
|
+
|
|
144
|
+
##### Props
|
|
145
|
+
|
|
146
|
+
The `navigator` instance has a few properties:
|
|
147
|
+
|
|
148
|
+
###### `goTo`: `( path: string, options: NavigateOptions ) => void`
|
|
149
|
+
|
|
150
|
+
The `goTo` function allows navigating to a given path. The second argument can augment the navigation operations with different options.
|
|
151
|
+
|
|
152
|
+
The available options are:
|
|
153
|
+
|
|
154
|
+
- `focusTargetSelector`: `string`. An optional property used to specify the CSS selector used to restore focus on the matching element when navigating back;
|
|
155
|
+
- `isBack`: `boolean`. An optional property used to specify whether the navigation should be considered as backwards (thus enabling focus restoration when possible, and causing the animation to be backwards too);
|
|
156
|
+
- `skipFocus`: `boolean`. An optional property used to opt out of `Navigator`'s focus management, useful when the consumer of the component wants to manage focus themselves;
|
|
157
|
+
|
|
158
|
+
###### `goBack`: `( path: string, options: NavigateOptions ) => void`
|
|
159
|
+
|
|
160
|
+
The `goBack` function allows navigating to the parent screen. Parent/child navigation only works if the paths you define are hierarchical (see note above).
|
|
161
|
+
|
|
162
|
+
When a match is not found, the function will try to recursively navigate the path hierarchy until a matching screen (or the root `/`) is found.
|
|
163
|
+
|
|
164
|
+
The available options are the same as for the `goTo` method, except for the `isBack` property, which is not available for the `goBack` method.
|
|
165
|
+
|
|
166
|
+
###### `location`: `NavigatorLocation`
|
|
167
|
+
|
|
168
|
+
The `location` object represents the current location, and has a few properties:
|
|
169
|
+
|
|
170
|
+
- `path`: `string`. The path associated to the location.
|
|
171
|
+
- `isBack`: `boolean`. A flag that is `true` when the current location was reached by navigating backwards.
|
|
172
|
+
- `isInitial`: `boolean`. A flag that is `true` only for the initial location.
|
|
173
|
+
|
|
174
|
+
###### `params`: `Record< string, string | string[] >`
|
|
175
|
+
|
|
176
|
+
The parsed record of parameters from the current location. For example if the current screen path is `/product/:productId` and the location is `/product/123`, then `params` will be `{ productId: '123' }`.
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Internal dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { Navigator as TopLevelNavigator } from './navigator/component';
|
|
5
|
+
import { NavigatorScreen } from './navigator-screen/component';
|
|
6
|
+
import { NavigatorButton } from './navigator-button/component';
|
|
7
|
+
import { NavigatorBackButton } from './navigator-back-button/component';
|
|
8
|
+
export { useNavigator } from './use-navigator';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* The `Navigator` component allows rendering nested views/panels/menus
|
|
12
|
+
* (via the `Navigator.Screen` component) and navigate between them
|
|
13
|
+
* (via the `Navigator.Button` and `Navigator.BackButton` components).
|
|
14
|
+
*
|
|
15
|
+
* ```jsx
|
|
16
|
+
* import { Navigator } from '@wordpress/components';
|
|
17
|
+
*
|
|
18
|
+
* const MyNavigation = () => (
|
|
19
|
+
* <Navigator initialPath="/">
|
|
20
|
+
* <Navigator.Screen path="/">
|
|
21
|
+
* <p>This is the home screen.</p>
|
|
22
|
+
* <Navigator.Button path="/child">
|
|
23
|
+
* Navigate to child screen.
|
|
24
|
+
* </Navigator.Button>
|
|
25
|
+
* </Navigator.Screen>
|
|
26
|
+
*
|
|
27
|
+
* <Navigator.Screen path="/child">
|
|
28
|
+
* <p>This is the child screen.</p>
|
|
29
|
+
* <Navigator.BackButton>
|
|
30
|
+
* Go back
|
|
31
|
+
* </Navigator.BackButton>
|
|
32
|
+
* </Navigator.Screen>
|
|
33
|
+
* </Navigator>
|
|
34
|
+
* );
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
export const Navigator = Object.assign( TopLevelNavigator, {
|
|
38
|
+
/**
|
|
39
|
+
* The `Navigator.Screen` component represents a single view/screen/panel and
|
|
40
|
+
* should be used in combination with the `Navigator`, the `Navigator.Button`
|
|
41
|
+
* and the `Navigator.BackButton` components.
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```jsx
|
|
45
|
+
* import { Navigator } from '@wordpress/components';
|
|
46
|
+
*
|
|
47
|
+
* const MyNavigation = () => (
|
|
48
|
+
* <Navigator initialPath="/">
|
|
49
|
+
* <Navigator.Screen path="/">
|
|
50
|
+
* <p>This is the home screen.</p>
|
|
51
|
+
* <Navigator.Button path="/child">
|
|
52
|
+
* Navigate to child screen.
|
|
53
|
+
* </Navigator.Button>
|
|
54
|
+
* </Navigator.Screen>
|
|
55
|
+
*
|
|
56
|
+
* <Navigator.Screen path="/child">
|
|
57
|
+
* <p>This is the child screen.</p>
|
|
58
|
+
* <Navigator.BackButton>
|
|
59
|
+
* Go back
|
|
60
|
+
* </Navigator.BackButton>
|
|
61
|
+
* </Navigator.Screen>
|
|
62
|
+
* </Navigator>
|
|
63
|
+
* );
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
Screen: Object.assign( NavigatorScreen, {
|
|
67
|
+
displayName: 'Navigator.Screen',
|
|
68
|
+
} ),
|
|
69
|
+
/**
|
|
70
|
+
* The `Navigator.Button` component can be used to navigate to a screen and
|
|
71
|
+
* should be used in combination with the `Navigator`, the `Navigator.Screen`
|
|
72
|
+
* and the `Navigator.BackButton` components.
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```jsx
|
|
76
|
+
* import { Navigator } from '@wordpress/components';
|
|
77
|
+
*
|
|
78
|
+
* const MyNavigation = () => (
|
|
79
|
+
* <Navigator initialPath="/">
|
|
80
|
+
* <Navigator.Screen path="/">
|
|
81
|
+
* <p>This is the home screen.</p>
|
|
82
|
+
* <Navigator.Button path="/child">
|
|
83
|
+
* Navigate to child screen.
|
|
84
|
+
* </Navigator.Button>
|
|
85
|
+
* </Navigator.Screen>
|
|
86
|
+
*
|
|
87
|
+
* <Navigator.Screen path="/child">
|
|
88
|
+
* <p>This is the child screen.</p>
|
|
89
|
+
* <Navigator.BackButton>
|
|
90
|
+
* Go back
|
|
91
|
+
* </Navigator.BackButton>
|
|
92
|
+
* </Navigator.Screen>
|
|
93
|
+
* </Navigator>
|
|
94
|
+
* );
|
|
95
|
+
* ```
|
|
96
|
+
*/
|
|
97
|
+
Button: Object.assign( NavigatorButton, {
|
|
98
|
+
displayName: 'Navigator.Button',
|
|
99
|
+
} ),
|
|
100
|
+
/**
|
|
101
|
+
* The `Navigator.BackButton` component can be used to navigate to a screen and
|
|
102
|
+
* should be used in combination with the `Navigator`, the `Navigator.Screen`
|
|
103
|
+
* and the `Navigator.Button` components.
|
|
104
|
+
*
|
|
105
|
+
* @example
|
|
106
|
+
* ```jsx
|
|
107
|
+
* import { Navigator } from '@wordpress/components';
|
|
108
|
+
*
|
|
109
|
+
* const MyNavigation = () => (
|
|
110
|
+
* <Navigator initialPath="/">
|
|
111
|
+
* <Navigator.Screen path="/">
|
|
112
|
+
* <p>This is the home screen.</p>
|
|
113
|
+
* <Navigator.Button path="/child">
|
|
114
|
+
* Navigate to child screen.
|
|
115
|
+
* </Navigator.Button>
|
|
116
|
+
* </Navigator.Screen>
|
|
117
|
+
*
|
|
118
|
+
* <Navigator.Screen path="/child">
|
|
119
|
+
* <p>This is the child screen.</p>
|
|
120
|
+
* <Navigator.BackButton>
|
|
121
|
+
* Go back
|
|
122
|
+
* </Navigator.BackButton>
|
|
123
|
+
* </Navigator.Screen>
|
|
124
|
+
* </Navigator>
|
|
125
|
+
* );
|
|
126
|
+
* ```
|
|
127
|
+
*/
|
|
128
|
+
BackButton: Object.assign( NavigatorBackButton, {
|
|
129
|
+
displayName: 'Navigator.BackButton',
|
|
130
|
+
} ),
|
|
131
|
+
} );
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Internal dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { Navigator as InternalNavigator } from './navigator/component';
|
|
5
|
+
import { NavigatorScreen as InternalNavigatorScreen } from './navigator-screen/component';
|
|
6
|
+
import { NavigatorButton as InternalNavigatorButton } from './navigator-button/component';
|
|
7
|
+
import { NavigatorBackButton as InternalNavigatorBackButton } from './navigator-back-button/component';
|
|
8
|
+
import { NavigatorToParentButton as InternalNavigatorToParentButton } from './navigator-to-parent-button/component';
|
|
9
|
+
export { useNavigator } from './use-navigator';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* The `NavigatorProvider` component allows rendering nested views/panels/menus
|
|
13
|
+
* (via the `NavigatorScreen` component and navigate between them
|
|
14
|
+
* (via the `NavigatorButton` and `NavigatorBackButton` components).
|
|
15
|
+
*
|
|
16
|
+
* ```jsx
|
|
17
|
+
* import {
|
|
18
|
+
* __experimentalNavigatorProvider as NavigatorProvider,
|
|
19
|
+
* __experimentalNavigatorScreen as NavigatorScreen,
|
|
20
|
+
* __experimentalNavigatorButton as NavigatorButton,
|
|
21
|
+
* __experimentalNavigatorBackButton as NavigatorBackButton,
|
|
22
|
+
* } from '@wordpress/components';
|
|
23
|
+
*
|
|
24
|
+
* const MyNavigation = () => (
|
|
25
|
+
* <NavigatorProvider initialPath="/">
|
|
26
|
+
* <NavigatorScreen path="/">
|
|
27
|
+
* <p>This is the home screen.</p>
|
|
28
|
+
* <NavigatorButton path="/child">
|
|
29
|
+
* Navigate to child screen.
|
|
30
|
+
* </NavigatorButton>
|
|
31
|
+
* </NavigatorScreen>
|
|
32
|
+
*
|
|
33
|
+
* <NavigatorScreen path="/child">
|
|
34
|
+
* <p>This is the child screen.</p>
|
|
35
|
+
* <NavigatorBackButton>
|
|
36
|
+
* Go back
|
|
37
|
+
* </NavigatorBackButton>
|
|
38
|
+
* </NavigatorScreen>
|
|
39
|
+
* </NavigatorProvider>
|
|
40
|
+
* );
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
export const NavigatorProvider = Object.assign( InternalNavigator, {
|
|
44
|
+
displayName: 'NavigatorProvider',
|
|
45
|
+
} );
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* The `NavigatorScreen` component represents a single view/screen/panel and
|
|
49
|
+
* should be used in combination with the `NavigatorProvider`, the
|
|
50
|
+
* `NavigatorButton` and the `NavigatorBackButton` components.
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```jsx
|
|
54
|
+
* import {
|
|
55
|
+
* __experimentalNavigatorProvider as NavigatorProvider,
|
|
56
|
+
* __experimentalNavigatorScreen as NavigatorScreen,
|
|
57
|
+
* __experimentalNavigatorButton as NavigatorButton,
|
|
58
|
+
* __experimentalNavigatorBackButton as NavigatorBackButton,
|
|
59
|
+
* } from '@wordpress/components';
|
|
60
|
+
*
|
|
61
|
+
* const MyNavigation = () => (
|
|
62
|
+
* <NavigatorProvider initialPath="/">
|
|
63
|
+
* <NavigatorScreen path="/">
|
|
64
|
+
* <p>This is the home screen.</p>
|
|
65
|
+
* <NavigatorButton path="/child">
|
|
66
|
+
* Navigate to child screen.
|
|
67
|
+
* </NavigatorButton>
|
|
68
|
+
* </NavigatorScreen>
|
|
69
|
+
*
|
|
70
|
+
* <NavigatorScreen path="/child">
|
|
71
|
+
* <p>This is the child screen.</p>
|
|
72
|
+
* <NavigatorBackButton>
|
|
73
|
+
* Go back
|
|
74
|
+
* </NavigatorBackButton>
|
|
75
|
+
* </NavigatorScreen>
|
|
76
|
+
* </NavigatorProvider>
|
|
77
|
+
* );
|
|
78
|
+
* ```
|
|
79
|
+
*/
|
|
80
|
+
export const NavigatorScreen = Object.assign( InternalNavigatorScreen, {
|
|
81
|
+
displayName: 'NavigatorScreen',
|
|
82
|
+
} );
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* The `NavigatorButton` component can be used to navigate to a screen and should
|
|
86
|
+
* be used in combination with the `NavigatorProvider`, the `NavigatorScreen`
|
|
87
|
+
* and the `NavigatorBackButton` components.
|
|
88
|
+
*
|
|
89
|
+
* @example
|
|
90
|
+
* ```jsx
|
|
91
|
+
* import {
|
|
92
|
+
* __experimentalNavigatorProvider as NavigatorProvider,
|
|
93
|
+
* __experimentalNavigatorScreen as NavigatorScreen,
|
|
94
|
+
* __experimentalNavigatorButton as NavigatorButton,
|
|
95
|
+
* __experimentalNavigatorBackButton as NavigatorBackButton,
|
|
96
|
+
* } from '@wordpress/components';
|
|
97
|
+
*
|
|
98
|
+
* const MyNavigation = () => (
|
|
99
|
+
* <NavigatorProvider initialPath="/">
|
|
100
|
+
* <NavigatorScreen path="/">
|
|
101
|
+
* <p>This is the home screen.</p>
|
|
102
|
+
* <NavigatorButton path="/child">
|
|
103
|
+
* Navigate to child screen.
|
|
104
|
+
* </NavigatorButton>
|
|
105
|
+
* </NavigatorScreen>
|
|
106
|
+
*
|
|
107
|
+
* <NavigatorScreen path="/child">
|
|
108
|
+
* <p>This is the child screen.</p>
|
|
109
|
+
* <NavigatorBackButton>
|
|
110
|
+
* Go back
|
|
111
|
+
* </NavigatorBackButton>
|
|
112
|
+
* </NavigatorScreen>
|
|
113
|
+
* </NavigatorProvider>
|
|
114
|
+
* );
|
|
115
|
+
* ```
|
|
116
|
+
*/
|
|
117
|
+
export const NavigatorButton = Object.assign( InternalNavigatorButton, {
|
|
118
|
+
displayName: 'NavigatorButton',
|
|
119
|
+
} );
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* The `NavigatorBackButton` component can be used to navigate to a screen and
|
|
123
|
+
* should be used in combination with the `NavigatorProvider`, the
|
|
124
|
+
* `NavigatorScreen` and the `NavigatorButton` components.
|
|
125
|
+
*
|
|
126
|
+
* @example
|
|
127
|
+
* ```jsx
|
|
128
|
+
* import {
|
|
129
|
+
* __experimentalNavigatorProvider as NavigatorProvider,
|
|
130
|
+
* __experimentalNavigatorScreen as NavigatorScreen,
|
|
131
|
+
* __experimentalNavigatorButton as NavigatorButton,
|
|
132
|
+
* __experimentalNavigatorBackButton as NavigatorBackButton,
|
|
133
|
+
* } from '@wordpress/components';
|
|
134
|
+
*
|
|
135
|
+
* const MyNavigation = () => (
|
|
136
|
+
* <NavigatorProvider initialPath="/">
|
|
137
|
+
* <NavigatorScreen path="/">
|
|
138
|
+
* <p>This is the home screen.</p>
|
|
139
|
+
* <NavigatorButton path="/child">
|
|
140
|
+
* Navigate to child screen.
|
|
141
|
+
* </NavigatorButton>
|
|
142
|
+
* </NavigatorScreen>
|
|
143
|
+
*
|
|
144
|
+
* <NavigatorScreen path="/child">
|
|
145
|
+
* <p>This is the child screen.</p>
|
|
146
|
+
* <NavigatorBackButton>
|
|
147
|
+
* Go back (to parent)
|
|
148
|
+
* </NavigatorBackButton>
|
|
149
|
+
* </NavigatorScreen>
|
|
150
|
+
* </NavigatorProvider>
|
|
151
|
+
* );
|
|
152
|
+
* ```
|
|
153
|
+
*/
|
|
154
|
+
export const NavigatorBackButton = Object.assign( InternalNavigatorBackButton, {
|
|
155
|
+
displayName: 'NavigatorBackButton',
|
|
156
|
+
} );
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* _Note: this component is deprecated. Please use the `NavigatorBackButton`
|
|
160
|
+
* component instead._
|
|
161
|
+
*
|
|
162
|
+
* @deprecated
|
|
163
|
+
*/
|
|
164
|
+
export const NavigatorToParentButton = Object.assign(
|
|
165
|
+
InternalNavigatorToParentButton,
|
|
166
|
+
{
|
|
167
|
+
displayName: 'NavigatorToParentButton',
|
|
168
|
+
}
|
|
169
|
+
);
|
|
@@ -21,7 +21,7 @@ import { View } from '../../view';
|
|
|
21
21
|
import { NavigatorContext } from '../context';
|
|
22
22
|
import * as styles from '../styles';
|
|
23
23
|
import type {
|
|
24
|
-
|
|
24
|
+
NavigatorProps,
|
|
25
25
|
NavigatorLocation,
|
|
26
26
|
NavigatorContext as NavigatorContextType,
|
|
27
27
|
NavigateOptions,
|
|
@@ -213,8 +213,8 @@ function routerReducer(
|
|
|
213
213
|
};
|
|
214
214
|
}
|
|
215
215
|
|
|
216
|
-
function
|
|
217
|
-
props: WordPressComponentProps<
|
|
216
|
+
function UnconnectedNavigator(
|
|
217
|
+
props: WordPressComponentProps< NavigatorProps, 'div' >,
|
|
218
218
|
forwardedRef: ForwardedRef< any >
|
|
219
219
|
) {
|
|
220
220
|
const {
|
|
@@ -222,7 +222,7 @@ function UnconnectedNavigatorProvider(
|
|
|
222
222
|
children,
|
|
223
223
|
className,
|
|
224
224
|
...otherProps
|
|
225
|
-
} = useContextSystem( props, '
|
|
225
|
+
} = useContextSystem( props, 'Navigator' );
|
|
226
226
|
|
|
227
227
|
const [ routerState, dispatch ] = useReducer(
|
|
228
228
|
routerReducer,
|
|
@@ -275,7 +275,7 @@ function UnconnectedNavigatorProvider(
|
|
|
275
275
|
|
|
276
276
|
const cx = useCx();
|
|
277
277
|
const classes = useMemo(
|
|
278
|
-
() => cx( styles.
|
|
278
|
+
() => cx( styles.navigatorWrapper, className ),
|
|
279
279
|
[ className, cx ]
|
|
280
280
|
);
|
|
281
281
|
|
|
@@ -288,42 +288,4 @@ function UnconnectedNavigatorProvider(
|
|
|
288
288
|
);
|
|
289
289
|
}
|
|
290
290
|
|
|
291
|
-
|
|
292
|
-
* The `NavigatorProvider` component allows rendering nested views/panels/menus
|
|
293
|
-
* (via the `NavigatorScreen` component and navigate between these different
|
|
294
|
-
* view (via the `NavigatorButton` and `NavigatorBackButton` components or the
|
|
295
|
-
* `useNavigator` hook).
|
|
296
|
-
*
|
|
297
|
-
* ```jsx
|
|
298
|
-
* import {
|
|
299
|
-
* __experimentalNavigatorProvider as NavigatorProvider,
|
|
300
|
-
* __experimentalNavigatorScreen as NavigatorScreen,
|
|
301
|
-
* __experimentalNavigatorButton as NavigatorButton,
|
|
302
|
-
* __experimentalNavigatorBackButton as NavigatorBackButton,
|
|
303
|
-
* } from '@wordpress/components';
|
|
304
|
-
*
|
|
305
|
-
* const MyNavigation = () => (
|
|
306
|
-
* <NavigatorProvider initialPath="/">
|
|
307
|
-
* <NavigatorScreen path="/">
|
|
308
|
-
* <p>This is the home screen.</p>
|
|
309
|
-
* <NavigatorButton path="/child">
|
|
310
|
-
* Navigate to child screen.
|
|
311
|
-
* </NavigatorButton>
|
|
312
|
-
* </NavigatorScreen>
|
|
313
|
-
*
|
|
314
|
-
* <NavigatorScreen path="/child">
|
|
315
|
-
* <p>This is the child screen.</p>
|
|
316
|
-
* <NavigatorBackButton>
|
|
317
|
-
* Go back
|
|
318
|
-
* </NavigatorBackButton>
|
|
319
|
-
* </NavigatorScreen>
|
|
320
|
-
* </NavigatorProvider>
|
|
321
|
-
* );
|
|
322
|
-
* ```
|
|
323
|
-
*/
|
|
324
|
-
export const NavigatorProvider = contextConnect(
|
|
325
|
-
UnconnectedNavigatorProvider,
|
|
326
|
-
'NavigatorProvider'
|
|
327
|
-
);
|
|
328
|
-
|
|
329
|
-
export default NavigatorProvider;
|
|
291
|
+
export const Navigator = contextConnect( UnconnectedNavigator, 'Navigator' );
|