@wordpress/components 22.1.0 → 23.1.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 +67 -0
- package/CONTRIBUTING.md +0 -21
- package/build/alignment-matrix-control/cell.js.map +1 -1
- package/build/alignment-matrix-control/icon.js +4 -2
- package/build/alignment-matrix-control/icon.js.map +1 -1
- package/build/alignment-matrix-control/index.js +25 -1
- package/build/alignment-matrix-control/index.js.map +1 -1
- package/build/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js +13 -13
- package/build/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js.map +1 -1
- package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js +16 -16
- package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
- package/build/alignment-matrix-control/types.js +6 -0
- package/build/alignment-matrix-control/types.js.map +1 -0
- package/build/alignment-matrix-control/utils.js +9 -8
- package/build/alignment-matrix-control/utils.js.map +1 -1
- package/build/angle-picker-control/styles/angle-picker-control-styles.js +9 -9
- package/build/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
- package/build/autocomplete/index.js +39 -12
- package/build/autocomplete/index.js.map +1 -1
- package/build/base-control/hooks.js +52 -0
- package/build/base-control/hooks.js.map +1 -0
- package/build/base-control/index.js +24 -7
- package/build/base-control/index.js.map +1 -1
- package/build/base-field/hook.js +0 -14
- package/build/base-field/hook.js.map +1 -1
- package/build/base-field/index.js.map +1 -1
- package/build/base-field/styles.js +5 -5
- package/build/base-field/styles.js.map +1 -1
- package/build/base-field/types.js +6 -0
- package/build/base-field/types.js.map +1 -0
- package/build/border-box-control/border-box-control/component.js +0 -3
- package/build/border-box-control/border-box-control/component.js.map +1 -1
- package/build/border-box-control/border-box-control/hook.js +0 -2
- package/build/border-box-control/border-box-control/hook.js.map +1 -1
- package/build/border-box-control/border-box-control-split-controls/component.js +0 -2
- package/build/border-box-control/border-box-control-split-controls/component.js.map +1 -1
- package/build/border-box-control/border-box-control-split-controls/hook.js +0 -2
- package/build/border-box-control/border-box-control-split-controls/hook.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 +0 -2
- package/build/border-control/border-control/hook.js.map +1 -1
- package/build/border-control/border-control-dropdown/component.js +6 -11
- package/build/border-control/border-control-dropdown/component.js.map +1 -1
- package/build/border-control/border-control-dropdown/hook.js +0 -2
- package/build/border-control/border-control-dropdown/hook.js.map +1 -1
- package/build/border-control/styles.js +16 -16
- package/build/border-control/styles.js.map +1 -1
- package/build/box-control/linked-button.js +3 -4
- package/build/box-control/linked-button.js.map +1 -1
- package/build/color-palette/index.js +7 -15
- package/build/color-palette/index.js.map +1 -1
- package/build/color-picker/input-with-slider.js +1 -0
- package/build/color-picker/input-with-slider.js.map +1 -1
- package/build/color-picker/styles.js +8 -8
- package/build/color-picker/styles.js.map +1 -1
- package/build/custom-select-control/index.js +14 -2
- package/build/custom-select-control/index.js.map +1 -1
- package/build/dashicon/index.js +1 -4
- package/build/dashicon/index.js.map +1 -1
- package/build/date-time/date-time/index.js +4 -4
- package/build/date-time/date-time/index.js.map +1 -1
- package/build/dimension-control/index.js.map +1 -1
- package/build/dropdown/index.js +45 -10
- package/build/dropdown/index.js.map +1 -1
- package/build/duotone-picker/duotone-picker.js +2 -2
- package/build/duotone-picker/duotone-picker.js.map +1 -1
- package/build/gradient-picker/index.js +4 -11
- package/build/gradient-picker/index.js.map +1 -1
- package/build/higher-order/navigate-regions/index.js +4 -3
- package/build/higher-order/navigate-regions/index.js.map +1 -1
- package/build/higher-order/with-fallback-styles/index.js +2 -2
- package/build/higher-order/with-fallback-styles/index.js.map +1 -1
- package/build/index.js +13 -9
- package/build/index.js.map +1 -1
- package/build/input-control/index.js +17 -5
- package/build/input-control/index.js.map +1 -1
- package/build/input-control/input-base.js +2 -0
- package/build/input-control/input-base.js.map +1 -1
- package/build/mobile/bottom-sheet/cell.native.js +1 -1
- package/build/mobile/bottom-sheet/cell.native.js.map +1 -1
- package/build/mobile/bottom-sheet/picker-cell.native.js +1 -9
- package/build/mobile/bottom-sheet/picker-cell.native.js.map +1 -1
- package/build/mobile/bottom-sheet/switch-cell.native.js +1 -3
- package/build/mobile/bottom-sheet/switch-cell.native.js.map +1 -1
- package/build/mobile/global-styles-context/index.native.js +8 -8
- package/build/mobile/global-styles-context/index.native.js.map +1 -1
- package/build/mobile/global-styles-context/utils.native.js +30 -12
- package/build/mobile/global-styles-context/utils.native.js.map +1 -1
- package/build/mobile/keyboard-aware-flat-list/index.ios.js +4 -2
- package/build/mobile/keyboard-aware-flat-list/index.ios.js.map +1 -1
- package/build/modal/index.js +8 -0
- package/build/modal/index.js.map +1 -1
- package/build/navigator/navigator-provider/component.js +12 -8
- package/build/navigator/navigator-provider/component.js.map +1 -1
- package/build/number-control/styles/number-control-styles.js +8 -8
- package/build/number-control/styles/number-control-styles.js.map +1 -1
- package/build/palette-edit/index.js +72 -33
- package/build/palette-edit/index.js.map +1 -1
- package/build/popover/index.js +10 -2
- package/build/popover/index.js.map +1 -1
- package/build/query-controls/index.js +1 -0
- package/build/query-controls/index.js.map +1 -1
- package/build/snackbar/index.js +35 -24
- package/build/snackbar/index.js.map +1 -1
- package/build/snackbar/list.js +14 -19
- package/build/snackbar/list.js.map +1 -1
- package/build/snackbar/types.js +6 -0
- package/build/snackbar/types.js.map +1 -0
- package/build/tab-panel/index.js +15 -9
- package/build/tab-panel/index.js.map +1 -1
- package/build/theme/color-algorithms.js +118 -0
- package/build/theme/color-algorithms.js.map +1 -0
- package/build/theme/index.js +21 -18
- package/build/theme/index.js.map +1 -1
- package/build/theme/styles.js +10 -7
- package/build/theme/styles.js.map +1 -1
- package/build/toggle-control/index.js +5 -2
- package/build/toggle-control/index.js.map +1 -1
- package/build/ui/context/context-system-provider.js +3 -1
- package/build/ui/context/context-system-provider.js.map +1 -1
- package/build/unit-control/index.js +5 -2
- package/build/unit-control/index.js.map +1 -1
- package/build/utils/colors-values.js +1 -1
- package/build/utils/colors-values.js.map +1 -1
- package/build/utils/config-values.js +0 -2
- package/build/utils/config-values.js.map +1 -1
- package/build/utils/hooks/use-controlled-value.js.map +1 -1
- package/build-module/alignment-matrix-control/cell.js.map +1 -1
- package/build-module/alignment-matrix-control/icon.js +4 -2
- package/build-module/alignment-matrix-control/icon.js.map +1 -1
- package/build-module/alignment-matrix-control/index.js +23 -1
- package/build-module/alignment-matrix-control/index.js.map +1 -1
- package/build-module/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js +13 -13
- package/build-module/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js.map +1 -1
- package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js +16 -16
- package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
- package/build-module/alignment-matrix-control/types.js +2 -0
- package/build-module/alignment-matrix-control/types.js.map +1 -0
- package/build-module/alignment-matrix-control/utils.js +13 -8
- package/build-module/alignment-matrix-control/utils.js.map +1 -1
- package/build-module/angle-picker-control/styles/angle-picker-control-styles.js +9 -9
- package/build-module/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
- package/build-module/autocomplete/index.js +39 -11
- package/build-module/autocomplete/index.js.map +1 -1
- package/build-module/base-control/hooks.js +41 -0
- package/build-module/base-control/hooks.js.map +1 -0
- package/build-module/base-control/index.js +18 -8
- package/build-module/base-control/index.js.map +1 -1
- package/build-module/base-field/hook.js +0 -14
- package/build-module/base-field/hook.js.map +1 -1
- package/build-module/base-field/index.js.map +1 -1
- package/build-module/base-field/styles.js +5 -5
- package/build-module/base-field/styles.js.map +1 -1
- package/build-module/base-field/types.js +2 -0
- package/build-module/base-field/types.js.map +1 -0
- package/build-module/border-box-control/border-box-control/component.js +0 -3
- 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 +0 -2
- 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 +0 -2
- package/build-module/border-box-control/border-box-control-split-controls/component.js.map +1 -1
- package/build-module/border-box-control/border-box-control-split-controls/hook.js +0 -2
- package/build-module/border-box-control/border-box-control-split-controls/hook.js.map +1 -1
- package/build-module/border-control/border-control/component.js +1 -2
- package/build-module/border-control/border-control/component.js.map +1 -1
- package/build-module/border-control/border-control/hook.js +0 -2
- package/build-module/border-control/border-control/hook.js.map +1 -1
- package/build-module/border-control/border-control-dropdown/component.js +6 -11
- package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
- package/build-module/border-control/border-control-dropdown/hook.js +0 -2
- package/build-module/border-control/border-control-dropdown/hook.js.map +1 -1
- package/build-module/border-control/styles.js +17 -17
- package/build-module/border-control/styles.js.map +1 -1
- package/build-module/box-control/linked-button.js +3 -4
- package/build-module/box-control/linked-button.js.map +1 -1
- package/build-module/color-palette/index.js +7 -15
- package/build-module/color-palette/index.js.map +1 -1
- package/build-module/color-picker/input-with-slider.js +1 -0
- package/build-module/color-picker/input-with-slider.js.map +1 -1
- package/build-module/color-picker/styles.js +8 -8
- package/build-module/color-picker/styles.js.map +1 -1
- package/build-module/custom-select-control/index.js +14 -2
- package/build-module/custom-select-control/index.js.map +1 -1
- package/build-module/dashicon/index.js +1 -4
- package/build-module/dashicon/index.js.map +1 -1
- package/build-module/date-time/date-time/index.js +4 -4
- package/build-module/date-time/date-time/index.js.map +1 -1
- package/build-module/dimension-control/index.js +1 -2
- package/build-module/dimension-control/index.js.map +1 -1
- package/build-module/dropdown/index.js +44 -10
- package/build-module/dropdown/index.js.map +1 -1
- package/build-module/duotone-picker/duotone-picker.js +2 -2
- package/build-module/duotone-picker/duotone-picker.js.map +1 -1
- package/build-module/gradient-picker/index.js +4 -10
- package/build-module/gradient-picker/index.js.map +1 -1
- package/build-module/higher-order/navigate-regions/index.js +4 -3
- package/build-module/higher-order/navigate-regions/index.js.map +1 -1
- package/build-module/higher-order/with-fallback-styles/index.js +2 -2
- package/build-module/higher-order/with-fallback-styles/index.js.map +1 -1
- package/build-module/index.js +2 -3
- package/build-module/index.js.map +1 -1
- package/build-module/input-control/index.js +16 -5
- package/build-module/input-control/index.js.map +1 -1
- package/build-module/input-control/input-base.js +2 -0
- package/build-module/input-control/input-base.js.map +1 -1
- package/build-module/mobile/bottom-sheet/cell.native.js +1 -1
- package/build-module/mobile/bottom-sheet/cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/picker-cell.native.js +1 -8
- package/build-module/mobile/bottom-sheet/picker-cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/switch-cell.native.js +1 -2
- package/build-module/mobile/bottom-sheet/switch-cell.native.js.map +1 -1
- package/build-module/mobile/global-styles-context/index.native.js +8 -7
- package/build-module/mobile/global-styles-context/index.native.js.map +1 -1
- package/build-module/mobile/global-styles-context/utils.native.js +31 -13
- package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
- package/build-module/mobile/keyboard-aware-flat-list/index.ios.js +2 -2
- package/build-module/mobile/keyboard-aware-flat-list/index.ios.js.map +1 -1
- package/build-module/modal/index.js +8 -0
- package/build-module/modal/index.js.map +1 -1
- package/build-module/navigator/navigator-provider/component.js +12 -8
- package/build-module/navigator/navigator-provider/component.js.map +1 -1
- package/build-module/number-control/styles/number-control-styles.js +8 -10
- package/build-module/number-control/styles/number-control-styles.js.map +1 -1
- package/build-module/palette-edit/index.js +73 -34
- package/build-module/palette-edit/index.js.map +1 -1
- package/build-module/popover/index.js +10 -2
- package/build-module/popover/index.js.map +1 -1
- package/build-module/query-controls/index.js +1 -0
- package/build-module/query-controls/index.js.map +1 -1
- package/build-module/snackbar/index.js +33 -23
- package/build-module/snackbar/index.js.map +1 -1
- package/build-module/snackbar/list.js +14 -22
- package/build-module/snackbar/list.js.map +1 -1
- package/build-module/snackbar/types.js +2 -0
- package/build-module/snackbar/types.js.map +1 -0
- package/build-module/tab-panel/index.js +15 -8
- package/build-module/tab-panel/index.js.map +1 -1
- package/build-module/theme/color-algorithms.js +105 -0
- package/build-module/theme/color-algorithms.js.map +1 -0
- package/build-module/theme/index.js +21 -17
- package/build-module/theme/index.js.map +1 -1
- package/build-module/theme/styles.js +8 -6
- package/build-module/theme/styles.js.map +1 -1
- package/build-module/toggle-control/index.js +4 -2
- package/build-module/toggle-control/index.js.map +1 -1
- package/build-module/ui/context/context-system-provider.js +3 -2
- package/build-module/ui/context/context-system-provider.js.map +1 -1
- package/build-module/unit-control/index.js +5 -2
- package/build-module/unit-control/index.js.map +1 -1
- package/build-module/utils/colors-values.js +1 -1
- package/build-module/utils/colors-values.js.map +1 -1
- package/build-module/utils/config-values.js +0 -2
- package/build-module/utils/config-values.js.map +1 -1
- package/build-module/utils/hooks/use-controlled-value.js.map +1 -1
- package/build-style/style-rtl.css +108 -104
- package/build-style/style.css +108 -104
- package/build-types/alignment-matrix-control/cell.d.ts +5 -0
- package/build-types/alignment-matrix-control/cell.d.ts.map +1 -0
- package/build-types/alignment-matrix-control/icon.d.ts +6 -0
- package/build-types/alignment-matrix-control/icon.d.ts.map +1 -0
- package/build-types/alignment-matrix-control/index.d.ts +30 -0
- package/build-types/alignment-matrix-control/index.d.ts.map +1 -0
- package/build-types/alignment-matrix-control/stories/index.d.ts +14 -0
- package/build-types/alignment-matrix-control/stories/index.d.ts.map +1 -0
- package/build-types/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.d.ts +19 -0
- package/build-types/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.d.ts.map +1 -0
- package/build-types/alignment-matrix-control/styles/alignment-matrix-control-styles.d.ts +23 -0
- package/build-types/alignment-matrix-control/styles/alignment-matrix-control-styles.d.ts.map +1 -0
- package/build-types/alignment-matrix-control/test/index.d.ts +2 -0
- package/build-types/alignment-matrix-control/test/index.d.ts.map +1 -0
- package/build-types/alignment-matrix-control/types.d.ts +39 -0
- package/build-types/alignment-matrix-control/types.d.ts.map +1 -0
- package/build-types/alignment-matrix-control/utils.d.ts +33 -0
- package/build-types/alignment-matrix-control/utils.d.ts.map +1 -0
- package/build-types/base-control/hooks.d.ts +23 -0
- package/build-types/base-control/hooks.d.ts.map +1 -0
- package/build-types/base-control/index.d.ts +17 -7
- package/build-types/base-control/index.d.ts.map +1 -1
- package/build-types/base-control/stories/index.d.ts.map +1 -1
- package/build-types/base-control/test/index.d.ts +2 -0
- package/build-types/base-control/test/index.d.ts.map +1 -0
- package/build-types/base-control/types.d.ts +8 -2
- package/build-types/base-control/types.d.ts.map +1 -1
- package/build-types/base-field/hook.d.ts +7 -31
- package/build-types/base-field/hook.d.ts.map +1 -1
- package/build-types/base-field/index.d.ts +1 -1
- package/build-types/base-field/index.d.ts.map +1 -1
- package/build-types/base-field/styles.d.ts +5 -5
- package/build-types/base-field/styles.d.ts.map +1 -1
- package/build-types/base-field/test/index.d.ts +2 -0
- package/build-types/base-field/test/index.d.ts.map +1 -0
- package/build-types/base-field/types.d.ts +29 -0
- package/build-types/base-field/types.d.ts.map +1 -0
- package/build-types/border-box-control/border-box-control/component.d.ts +1 -1
- package/build-types/border-box-control/border-box-control/component.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control/hook.d.ts +2 -3
- package/build-types/border-box-control/border-box-control/hook.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts +2 -2
- package/build-types/border-box-control/border-box-control-split-controls/component.d.ts +1 -1
- package/build-types/border-box-control/border-box-control-split-controls/component.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts +2 -3
- package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts +2 -2
- package/build-types/border-box-control/stories/index.d.ts +1 -1
- package/build-types/border-control/border-control/component.d.ts +1 -1
- package/build-types/border-control/border-control/component.d.ts.map +1 -1
- package/build-types/border-control/border-control/hook.d.ts +2 -3
- package/build-types/border-control/border-control/hook.d.ts.map +1 -1
- package/build-types/border-control/border-control-dropdown/component.d.ts +1 -1
- package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
- package/build-types/border-control/border-control-dropdown/hook.d.ts +2 -3
- package/build-types/border-control/border-control-dropdown/hook.d.ts.map +1 -1
- package/build-types/border-control/border-control-style-picker/hook.d.ts +2 -2
- package/build-types/border-control/stories/index.d.ts +6 -6
- package/build-types/border-control/stories/index.d.ts.map +1 -1
- package/build-types/border-control/styles.d.ts.map +1 -1
- package/build-types/border-control/types.d.ts +1 -1
- package/build-types/border-control/types.d.ts.map +1 -1
- package/build-types/card/card/hook.d.ts +2 -2
- package/build-types/card/card-body/hook.d.ts +2 -2
- package/build-types/card/card-divider/hook.d.ts +2 -2
- package/build-types/card/card-footer/hook.d.ts +2 -2
- package/build-types/card/card-header/hook.d.ts +2 -2
- package/build-types/card/card-media/hook.d.ts +2 -2
- package/build-types/color-palette/index.d.ts +3 -4
- package/build-types/color-palette/index.d.ts.map +1 -1
- package/build-types/color-palette/stories/index.d.ts +6 -14
- package/build-types/color-palette/stories/index.d.ts.map +1 -1
- package/build-types/color-palette/styles.d.ts +1 -1
- package/build-types/color-palette/types.d.ts +4 -17
- package/build-types/color-palette/types.d.ts.map +1 -1
- package/build-types/color-picker/input-with-slider.d.ts.map +1 -1
- package/build-types/color-picker/styles.d.ts +5 -5
- package/build-types/color-picker/styles.d.ts.map +1 -1
- package/build-types/custom-select-control/index.d.ts.map +1 -1
- package/build-types/dashicon/index.d.ts +6 -20
- package/build-types/dashicon/index.d.ts.map +1 -1
- package/build-types/dashicon/types.d.ts +14 -0
- package/build-types/dashicon/types.d.ts.map +1 -1
- package/build-types/date-time/date/styles.d.ts +3 -3
- package/build-types/date-time/date-time/styles.d.ts +3 -3
- package/build-types/date-time/time/styles.d.ts +8 -8
- package/build-types/disabled/stories/index.d.ts.map +1 -1
- package/build-types/dropdown/index.d.ts +29 -1
- package/build-types/dropdown/index.d.ts.map +1 -1
- package/build-types/dropdown/stories/index.d.ts +23 -0
- package/build-types/dropdown/stories/index.d.ts.map +1 -0
- package/build-types/dropdown/test/index.d.ts +2 -0
- package/build-types/dropdown/test/index.d.ts.map +1 -0
- package/build-types/dropdown/types.d.ts +101 -0
- package/build-types/dropdown/types.d.ts.map +1 -1
- package/build-types/elevation/hook.d.ts +2 -2
- package/build-types/external-link/styles/external-link-styles.d.ts +1 -1
- package/build-types/flex/flex/hook.d.ts +2 -2
- package/build-types/flex/flex-block/hook.d.ts +2 -2
- package/build-types/flex/flex-item/hook.d.ts +2 -2
- package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts +2 -5
- package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts.map +1 -1
- package/build-types/grid/hook.d.ts +2 -2
- package/build-types/h-stack/component.d.ts +1 -1
- package/build-types/h-stack/hook.d.ts +2 -2
- package/build-types/heading/hook.d.ts +2 -2
- package/build-types/icon/stories/index.d.ts +22 -0
- package/build-types/icon/stories/index.d.ts.map +1 -0
- package/build-types/input-control/index.d.ts +1 -1
- package/build-types/input-control/index.d.ts.map +1 -1
- package/build-types/input-control/input-base.d.ts.map +1 -1
- package/build-types/input-control/stories/index.d.ts +1 -0
- package/build-types/input-control/stories/index.d.ts.map +1 -1
- package/build-types/input-control/types.d.ts +2 -1
- package/build-types/input-control/types.d.ts.map +1 -1
- package/build-types/item-group/item/hook.d.ts +2 -2
- package/build-types/item-group/item-group/hook.d.ts +2 -2
- package/build-types/modal/index.d.ts.map +1 -1
- package/build-types/modal/stories/index.d.ts.map +1 -1
- package/build-types/navigator/navigator-back-button/hook.d.ts +3 -3
- package/build-types/navigator/navigator-button/hook.d.ts +3 -3
- package/build-types/navigator/navigator-provider/component.d.ts.map +1 -1
- package/build-types/number-control/index.d.ts +2 -2
- package/build-types/number-control/index.d.ts.map +1 -1
- package/build-types/number-control/stories/index.d.ts +25 -0
- package/build-types/number-control/stories/index.d.ts.map +1 -0
- package/build-types/number-control/styles/number-control-styles.d.ts +6 -6
- package/build-types/number-control/styles/number-control-styles.d.ts.map +1 -1
- package/build-types/number-control/test/index.d.ts +2 -0
- package/build-types/number-control/test/index.d.ts.map +1 -0
- package/build-types/popover/index.d.ts +1 -1
- package/build-types/popover/index.d.ts.map +1 -1
- package/build-types/popover/stories/e2e/index.d.ts +1 -1
- package/build-types/range-control/index.d.ts +1 -1
- package/build-types/range-control/styles/range-control-styles.d.ts +2 -2
- package/build-types/resizable-box/resize-tooltip/index.d.ts +15 -19
- package/build-types/resizable-box/resize-tooltip/index.d.ts.map +1 -1
- package/build-types/resizable-box/resize-tooltip/label.d.ts +4 -3
- package/build-types/resizable-box/resize-tooltip/label.d.ts.map +1 -1
- package/build-types/scrollable/hook.d.ts +2 -2
- package/build-types/search-control/index.d.ts +1 -1
- package/build-types/search-control/stories/index.d.ts +2 -2
- package/build-types/snackbar/index.d.ts +19 -0
- package/build-types/snackbar/index.d.ts.map +1 -0
- package/build-types/snackbar/list.d.ts +18 -0
- package/build-types/snackbar/list.d.ts.map +1 -0
- package/build-types/snackbar/stories/index.d.ts +16 -0
- package/build-types/snackbar/stories/index.d.ts.map +1 -0
- package/build-types/snackbar/stories/list.d.ts +12 -0
- package/build-types/snackbar/stories/list.d.ts.map +1 -0
- package/build-types/snackbar/types.d.ts +111 -0
- package/build-types/snackbar/types.d.ts.map +1 -0
- package/build-types/spacer/hook.d.ts +2 -2
- package/build-types/spinner/index.d.ts +1 -1
- package/build-types/surface/hook.d.ts +2 -2
- package/build-types/tab-panel/index.d.ts +1 -1
- package/build-types/tab-panel/index.d.ts.map +1 -1
- package/build-types/tab-panel/types.d.ts +19 -1
- package/build-types/tab-panel/types.d.ts.map +1 -1
- package/build-types/text/hook.d.ts +2 -2
- package/build-types/text-control/index.d.ts +2 -2
- package/build-types/text-control/stories/index.d.ts.map +1 -1
- package/build-types/text-control/types.d.ts +1 -5
- package/build-types/text-control/types.d.ts.map +1 -1
- package/build-types/theme/color-algorithms.d.ts +20 -0
- package/build-types/theme/color-algorithms.d.ts.map +1 -0
- package/build-types/theme/index.d.ts +1 -1
- package/build-types/theme/index.d.ts.map +1 -1
- package/build-types/theme/stories/index.d.ts +4 -0
- package/build-types/theme/stories/index.d.ts.map +1 -1
- package/build-types/theme/styles.d.ts +3 -2
- package/build-types/theme/styles.d.ts.map +1 -1
- package/build-types/theme/test/color-algorithms.d.ts +2 -0
- package/build-types/theme/test/color-algorithms.d.ts.map +1 -0
- package/build-types/theme/types.d.ts +41 -3
- package/build-types/theme/types.d.ts.map +1 -1
- package/build-types/toggle-control/index.d.ts.map +1 -1
- 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-radio-group.d.ts +2 -2
- package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts +1 -1
- package/build-types/tools-panel/tools-panel/hook.d.ts +2 -2
- package/build-types/tools-panel/tools-panel-header/hook.d.ts +2 -2
- package/build-types/tools-panel/tools-panel-item/hook.d.ts +2 -2
- package/build-types/truncate/hook.d.ts +2 -2
- package/build-types/ui/context/context-system-provider.d.ts.map +1 -1
- package/build-types/ui/control-group/hook.d.ts +2 -2
- package/build-types/ui/control-label/hook.d.ts +2 -2
- package/build-types/ui/form-group/form-group.d.ts +2 -2
- package/build-types/ui/form-group/use-form-group.d.ts +5 -5
- package/build-types/unit-control/index.d.ts +2 -1
- package/build-types/unit-control/index.d.ts.map +1 -1
- package/build-types/unit-control/styles/unit-control-styles.d.ts +2 -2
- package/build-types/unit-control/types.d.ts +4 -0
- package/build-types/unit-control/types.d.ts.map +1 -1
- package/build-types/utils/config-values.d.ts +0 -2
- package/build-types/utils/hooks/use-controlled-value.d.ts +2 -1
- package/build-types/utils/hooks/use-controlled-value.d.ts.map +1 -1
- package/build-types/v-stack/component.d.ts +2 -2
- package/build-types/v-stack/hook.d.ts +2 -2
- package/build-types/v-stack/stories/index.d.ts +2 -2
- package/package.json +21 -20
- package/src/alignment-matrix-control/README.md +7 -7
- package/src/alignment-matrix-control/{cell.js → cell.tsx} +7 -1
- package/src/alignment-matrix-control/{icon.js → icon.tsx} +6 -3
- package/src/alignment-matrix-control/{index.js → index.tsx} +31 -4
- package/src/alignment-matrix-control/stories/{index.js → index.tsx} +17 -9
- package/src/alignment-matrix-control/styles/{alignment-matrix-control-icon-styles.js → alignment-matrix-control-icon-styles.ts} +11 -3
- package/src/alignment-matrix-control/styles/{alignment-matrix-control-styles.js → alignment-matrix-control-styles.ts} +13 -3
- package/src/alignment-matrix-control/test/{index.js → index.tsx} +5 -5
- package/src/alignment-matrix-control/types.ts +54 -0
- package/src/alignment-matrix-control/{utils.js → utils.tsx} +24 -14
- package/src/angle-picker-control/styles/angle-picker-control-styles.js +4 -0
- package/src/autocomplete/index.js +44 -15
- package/src/autocomplete/test/index.js +2 -0
- package/src/base-control/README.md +21 -12
- package/src/base-control/hooks.ts +45 -0
- package/src/base-control/index.tsx +18 -7
- package/src/base-control/stories/index.tsx +8 -10
- package/src/base-control/test/index.tsx +53 -0
- package/src/base-control/types.ts +8 -2
- package/src/base-field/README.md +21 -22
- package/src/base-field/{hook.js → hook.ts} +5 -15
- package/src/base-field/{index.js → index.ts} +0 -0
- package/src/base-field/{styles.js → styles.ts} +2 -2
- package/src/base-field/test/__snapshots__/{index.js.snap → index.tsx.snap} +4 -4
- package/src/base-field/test/{index.js → index.tsx} +10 -5
- package/src/base-field/types.ts +29 -0
- package/src/border-box-control/border-box-control/README.md +1 -0
- package/src/border-box-control/border-box-control/component.tsx +0 -7
- package/src/border-box-control/border-box-control/hook.ts +0 -2
- package/src/border-box-control/border-box-control-split-controls/component.tsx +0 -2
- package/src/border-box-control/border-box-control-split-controls/hook.ts +0 -2
- package/src/border-box-control/test/index.js +5 -1
- package/src/border-control/border-control/component.tsx +1 -4
- package/src/border-control/border-control/hook.ts +0 -2
- package/src/border-control/border-control-dropdown/component.tsx +11 -17
- package/src/border-control/border-control-dropdown/hook.ts +0 -2
- package/src/border-control/stories/index.tsx +0 -1
- package/src/border-control/styles.ts +1 -10
- package/src/border-control/test/index.js +70 -67
- package/src/border-control/types.ts +1 -4
- package/src/box-control/linked-button.js +8 -11
- package/src/box-control/test/index.js +207 -134
- package/src/button/stories/index.js +30 -0
- package/src/button/style.scss +17 -14
- package/src/button/test/index.js +32 -15
- package/src/card/test/index.tsx +32 -20
- package/src/checkbox-control/test/index.tsx +2 -0
- package/src/circular-option-picker/style.scss +1 -0
- package/src/color-palette/index.tsx +16 -18
- package/src/color-palette/stories/index.tsx +1 -18
- package/src/color-palette/test/__snapshots__/index.tsx.snap +4 -4
- package/src/color-palette/test/index.tsx +86 -36
- package/src/color-palette/types.ts +4 -18
- package/src/color-picker/README.md +1 -0
- package/src/color-picker/input-with-slider.tsx +1 -0
- package/src/color-picker/styles.ts +0 -4
- package/src/color-picker/test/index.js +2 -0
- package/src/combobox-control/test/index.js +2 -0
- package/src/confirm-dialog/README.md +3 -2
- package/src/confirm-dialog/test/index.js +2 -0
- package/src/custom-select-control/README.md +14 -0
- package/src/custom-select-control/index.js +14 -2
- package/src/dashicon/{index.js → index.tsx} +10 -4
- package/src/dashicon/types.ts +17 -0
- package/src/date-time/date/test/index.tsx +2 -0
- package/src/date-time/date-time/index.tsx +2 -2
- package/src/date-time/time/test/index.tsx +2 -0
- package/src/dimension-control/index.js +2 -3
- package/src/dimension-control/test/__snapshots__/index.test.js.snap +4 -8
- package/src/dimension-control/test/index.test.js +2 -0
- package/src/disabled/stories/index.tsx +6 -2
- package/src/disabled/test/index.tsx +23 -11
- package/src/dropdown/README.md +41 -46
- package/src/dropdown/{index.js → index.tsx} +57 -13
- package/src/dropdown/stories/{index.js → index.tsx} +21 -8
- package/src/dropdown/test/index.tsx +88 -0
- package/src/dropdown/types.ts +107 -0
- package/src/dropdown-menu/README.md +2 -3
- package/src/dropdown-menu/test/index.js +20 -12
- package/src/duotone-picker/duotone-picker.js +2 -2
- package/src/external-link/test/index.tsx +2 -0
- package/src/focal-point-picker/test/index.js +2 -0
- package/src/focal-point-picker/test/media.js +26 -21
- package/src/font-size-picker/test/index.tsx +2 -0
- package/src/form-file-upload/test/index.tsx +2 -0
- package/src/form-toggle/test/index.tsx +2 -0
- package/src/form-token-field/style.scss +1 -1
- package/src/form-token-field/test/index.tsx +3 -0
- package/src/gradient-picker/index.js +6 -10
- package/src/gradient-picker/stories/index.js +0 -1
- package/src/grid/test/grid.tsx +31 -31
- package/src/guide/test/index.js +2 -0
- package/src/higher-order/navigate-regions/index.js +5 -2
- package/src/higher-order/navigate-regions/style.scss +13 -59
- package/src/higher-order/with-fallback-styles/index.js +4 -2
- package/src/higher-order/with-filters/test/index.js +32 -43
- package/src/higher-order/with-focus-outside/test/index.js +2 -0
- package/src/higher-order/with-focus-return/test/index.js +3 -4
- package/src/higher-order/with-notices/test/index.js +1 -0
- package/src/icon/stories/index.tsx +103 -0
- package/src/index.js +2 -3
- package/src/input-control/index.tsx +42 -28
- package/src/input-control/input-base.tsx +8 -1
- package/src/input-control/stories/index.tsx +6 -0
- package/src/input-control/test/index.js +21 -0
- package/src/input-control/types.ts +2 -0
- package/src/isolated-event-container/test/index.js +2 -0
- package/src/mobile/bottom-sheet/cell.native.js +1 -1
- package/src/mobile/bottom-sheet/picker-cell.native.js +1 -6
- package/src/mobile/bottom-sheet/switch-cell.native.js +2 -2
- package/src/mobile/global-styles-context/index.native.js +9 -11
- package/src/mobile/global-styles-context/utils.native.js +17 -16
- package/src/mobile/keyboard-aware-flat-list/index.ios.js +2 -2
- package/src/mobile/link-settings/test/edit.native.js +68 -124
- package/src/modal/index.tsx +11 -0
- package/src/modal/stories/index.tsx +3 -0
- package/src/modal/test/index.tsx +13 -0
- package/src/navigable-container/test/navigable-menu.js +2 -0
- package/src/navigable-container/test/tababble-container.js +2 -0
- package/src/navigation/stories/index.js +6 -6
- package/src/navigation/stories/{controlled-state.js → utils/controlled-state.js} +3 -3
- package/src/navigation/stories/{default.js → utils/default.js} +3 -3
- package/src/navigation/stories/{group.js → utils/group.js} +4 -4
- package/src/navigation/stories/{hide-if-empty.js → utils/hide-if-empty.js} +3 -3
- package/src/navigation/stories/{more-examples.js → utils/more-examples.js} +4 -4
- package/src/navigation/stories/{search.js → utils/search.js} +5 -5
- package/src/navigation/test/index.js +2 -0
- package/src/navigator/navigator-provider/component.tsx +13 -10
- package/src/navigator/test/index.tsx +2 -0
- package/src/notice/test/index.js +8 -3
- package/src/notice/test/list.js +8 -5
- package/src/number-control/stories/{index.js → index.tsx} +24 -7
- package/src/number-control/styles/{number-control-styles.js → number-control-styles.ts} +5 -3
- package/src/number-control/test/index.tsx +602 -0
- package/src/palette-edit/index.js +88 -39
- package/src/palette-edit/test/index.js +25 -1
- package/src/panel/test/__snapshots__/body.js.snap +9 -0
- package/src/panel/test/body.js +71 -62
- package/src/placeholder/test/index.tsx +3 -0
- package/src/popover/index.tsx +10 -2
- package/src/popover/style.scss +12 -11
- package/src/popover/test/index.tsx +25 -15
- package/src/query-controls/index.js +1 -0
- package/src/range-control/test/index.tsx +57 -60
- package/src/resizable-box/style.scss +1 -0
- package/src/sandbox/test/index.js +13 -11
- package/src/search-control/style.scss +4 -0
- package/src/select-control/test/select-control.tsx +2 -0
- package/src/snackbar/README.md +63 -8
- package/src/snackbar/{index.js → index.tsx} +46 -28
- package/src/snackbar/{list.js → list.tsx} +20 -21
- package/src/snackbar/stories/index.tsx +96 -0
- package/src/snackbar/stories/list.tsx +98 -0
- package/src/snackbar/types.ts +116 -0
- package/src/tab-panel/README.md +9 -0
- package/src/tab-panel/index.tsx +15 -5
- package/src/tab-panel/style.scss +46 -34
- package/src/tab-panel/test/index.tsx +113 -0
- package/src/tab-panel/types.ts +20 -1
- package/src/text/test/__snapshots__/index.tsx.snap +1 -0
- package/src/text/test/index.tsx +98 -46
- package/src/text-control/stories/index.tsx +0 -1
- package/src/text-control/types.ts +1 -6
- package/src/text-highlight/test/index.tsx +1 -0
- package/src/theme/README.md +32 -2
- package/src/theme/color-algorithms.ts +138 -0
- package/src/theme/index.tsx +23 -16
- package/src/theme/stories/index.tsx +67 -0
- package/src/theme/styles.ts +22 -17
- package/src/theme/test/color-algorithms.ts +100 -0
- package/src/theme/test/index.tsx +68 -35
- package/src/theme/types.ts +43 -3
- package/src/toggle-control/index.tsx +4 -2
- package/src/toggle-group-control/test/index.tsx +15 -2
- package/src/toolbar/style.scss +1 -1
- package/src/toolbar-group/test/index.js +10 -6
- package/src/tools-panel/stories/index.js +1 -1
- package/src/tools-panel/stories/{tools-panel-with-item-group-slot.js → utils/tools-panel-with-item-group-slot.js} +14 -11
- package/src/tools-panel/test/index.js +20 -14
- package/src/tooltip/README.md +7 -0
- package/src/tooltip/stories/index.js +68 -78
- package/src/tooltip/style.scss +2 -2
- package/src/tooltip/test/index.js +111 -18
- package/src/ui/context/context-system-provider.js +3 -2
- package/src/ui/context/test/context-system-provider.js +5 -4
- package/src/ui/control-label/test/index.js +3 -5
- package/src/unit-control/README.md +9 -1
- package/src/unit-control/index.tsx +3 -0
- package/src/unit-control/test/index.tsx +4 -0
- package/src/unit-control/types.ts +4 -0
- package/src/utils/colors-values.js +1 -1
- package/src/utils/config-values.js +0 -2
- package/src/utils/hooks/test/use-latest-ref.js +2 -0
- package/src/utils/hooks/use-controlled-value.ts +2 -2
- package/src/utils/theme-variables.scss +20 -0
- package/tsconfig.json +2 -4
- package/tsconfig.tsbuildinfo +1 -1
- package/src/dropdown/test/index.js +0 -98
- package/src/icon/stories/index.js +0 -128
- package/src/number-control/test/index.js +0 -478
- package/src/snackbar/stories/index.js +0 -89
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
4
|
import { camelCase } from 'change-case';
|
|
5
|
-
import {
|
|
5
|
+
import { get } from 'lodash';
|
|
6
6
|
import { Dimensions } from 'react-native';
|
|
7
7
|
|
|
8
8
|
/**
|
|
@@ -113,9 +113,9 @@ export function getBlockColors(
|
|
|
113
113
|
}
|
|
114
114
|
|
|
115
115
|
if ( ! isCustomColor ) {
|
|
116
|
-
const mappedColor =
|
|
117
|
-
slug
|
|
118
|
-
|
|
116
|
+
const mappedColor = Object.values( defaultColors ?? {} ).find(
|
|
117
|
+
( { slug } ) => slug === value
|
|
118
|
+
);
|
|
119
119
|
|
|
120
120
|
if ( mappedColor ) {
|
|
121
121
|
blockStyles[ styleKey ] = mappedColor.color;
|
|
@@ -143,6 +143,7 @@ export function getBlockTypography(
|
|
|
143
143
|
const typographyStyles = {};
|
|
144
144
|
const customBlockStyles = blockStyleAttributes?.style?.typography || {};
|
|
145
145
|
const blockGlobalStyles = baseGlobalStyles?.blocks?.[ blockName ];
|
|
146
|
+
const parsedFontSizes = Object.values( fontSizes ?? {} );
|
|
146
147
|
|
|
147
148
|
// Global styles.
|
|
148
149
|
if ( blockGlobalStyles?.typography ) {
|
|
@@ -153,9 +154,9 @@ export function getBlockTypography(
|
|
|
153
154
|
if ( parseInt( fontSize, 10 ) ) {
|
|
154
155
|
typographyStyles.fontSize = fontSize;
|
|
155
156
|
} else {
|
|
156
|
-
const mappedFontSize = find(
|
|
157
|
-
slug
|
|
158
|
-
|
|
157
|
+
const mappedFontSize = parsedFontSizes.find(
|
|
158
|
+
( { slug } ) => slug === fontSize
|
|
159
|
+
);
|
|
159
160
|
|
|
160
161
|
if ( mappedFontSize ) {
|
|
161
162
|
typographyStyles.fontSize = mappedFontSize?.size;
|
|
@@ -169,9 +170,9 @@ export function getBlockTypography(
|
|
|
169
170
|
}
|
|
170
171
|
|
|
171
172
|
if ( blockStyleAttributes?.fontSize && baseGlobalStyles ) {
|
|
172
|
-
const mappedFontSize = find(
|
|
173
|
-
slug
|
|
174
|
-
|
|
173
|
+
const mappedFontSize = parsedFontSizes.find(
|
|
174
|
+
( { slug } ) => slug === blockStyleAttributes?.fontSize
|
|
175
|
+
);
|
|
175
176
|
|
|
176
177
|
if ( mappedFontSize ) {
|
|
177
178
|
typographyStyles.fontSize = mappedFontSize?.size;
|
|
@@ -212,9 +213,9 @@ export function parseStylesVariables( styles, mappedValues, customValues ) {
|
|
|
212
213
|
const path = $2.split( '--' );
|
|
213
214
|
const mappedPresetValue = mappedValues[ path[ 0 ] ];
|
|
214
215
|
if ( mappedPresetValue && mappedPresetValue.slug ) {
|
|
215
|
-
const matchedValue =
|
|
216
|
-
|
|
217
|
-
} );
|
|
216
|
+
const matchedValue = Object.values(
|
|
217
|
+
mappedPresetValue.values ?? {}
|
|
218
|
+
).find( ( { slug } ) => slug === path[ 1 ] );
|
|
218
219
|
return matchedValue?.[ mappedPresetValue.slug ];
|
|
219
220
|
}
|
|
220
221
|
return UNKNOWN_VALUE;
|
|
@@ -244,9 +245,9 @@ export function parseStylesVariables( styles, mappedValues, customValues ) {
|
|
|
244
245
|
if ( variable === 'var' ) {
|
|
245
246
|
stylesBase = stylesBase.replace( varRegex, ( _$1, $2 ) => {
|
|
246
247
|
if ( mappedValues?.color ) {
|
|
247
|
-
const matchedValue =
|
|
248
|
-
slug
|
|
249
|
-
|
|
248
|
+
const matchedValue = mappedValues.color?.values?.find(
|
|
249
|
+
( { slug } ) => slug === $2
|
|
250
|
+
);
|
|
250
251
|
return `"${ matchedValue?.color }"`;
|
|
251
252
|
}
|
|
252
253
|
return UNKNOWN_VALUE;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view';
|
|
5
5
|
import { FlatList } from 'react-native';
|
|
6
|
-
import
|
|
6
|
+
import fastDeepEqual from 'fast-deep-equal/es6';
|
|
7
7
|
import Animated, {
|
|
8
8
|
useAnimatedScrollHandler,
|
|
9
9
|
useSharedValue,
|
|
@@ -14,7 +14,7 @@ import Animated, {
|
|
|
14
14
|
*/
|
|
15
15
|
import { memo, useCallback, useRef } from '@wordpress/element';
|
|
16
16
|
|
|
17
|
-
const List = memo( FlatList,
|
|
17
|
+
const List = memo( FlatList, fastDeepEqual );
|
|
18
18
|
const AnimatedKeyboardAwareScrollView = Animated.createAnimatedComponent(
|
|
19
19
|
KeyboardAwareScrollView
|
|
20
20
|
);
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* External dependencies
|
|
5
5
|
*/
|
|
6
6
|
import Clipboard from '@react-native-clipboard/clipboard';
|
|
7
|
-
import { fireEvent, initializeEditor
|
|
7
|
+
import { fireEvent, initializeEditor } from 'test/helpers';
|
|
8
8
|
/**
|
|
9
9
|
* WordPress dependencies
|
|
10
10
|
*/
|
|
@@ -76,24 +76,18 @@ describe.each( [
|
|
|
76
76
|
Clipboard.getString.mockReturnValue( url );
|
|
77
77
|
|
|
78
78
|
// Act.
|
|
79
|
-
const block = await
|
|
80
|
-
|
|
81
|
-
type === 'core/image' ? /Image Block/ : /Button Block/
|
|
82
|
-
)
|
|
79
|
+
const [ block ] = await subject.findAllByLabelText(
|
|
80
|
+
type === 'core/image' ? /Image Block/ : /Button Block/
|
|
83
81
|
);
|
|
84
82
|
fireEvent.press( block );
|
|
85
83
|
fireEvent.press( block );
|
|
86
|
-
fireEvent.press(
|
|
87
|
-
await waitFor( () => subject.getByLabelText( 'Open Settings' ) )
|
|
88
|
-
);
|
|
84
|
+
fireEvent.press( await subject.findByLabelText( 'Open Settings' ) );
|
|
89
85
|
|
|
90
86
|
// Assert.
|
|
91
|
-
const linkToField = await
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
}`
|
|
96
|
-
)
|
|
87
|
+
const linkToField = await subject.findByLabelText(
|
|
88
|
+
`Link to, ${
|
|
89
|
+
type === 'core/image' ? 'None' : 'Search or type URL'
|
|
90
|
+
}`
|
|
97
91
|
);
|
|
98
92
|
expect( linkToField ).toBeTruthy();
|
|
99
93
|
} );
|
|
@@ -113,37 +107,29 @@ describe.each( [
|
|
|
113
107
|
Clipboard.getString.mockReturnValue( url );
|
|
114
108
|
|
|
115
109
|
// Act.
|
|
116
|
-
const block = await
|
|
117
|
-
|
|
118
|
-
type === 'core/image' ? /Image Block/ : /Button Block/
|
|
119
|
-
)
|
|
110
|
+
const [ block ] = await subject.findAllByLabelText(
|
|
111
|
+
type === 'core/image' ? /Image Block/ : /Button Block/
|
|
120
112
|
);
|
|
121
113
|
fireEvent.press( block );
|
|
122
114
|
fireEvent.press( block );
|
|
123
115
|
fireEvent.press(
|
|
124
|
-
await
|
|
125
|
-
subject.getByLabelText( 'Open Settings' )
|
|
126
|
-
)
|
|
116
|
+
await subject.findByLabelText( 'Open Settings' )
|
|
127
117
|
);
|
|
128
118
|
fireEvent.press(
|
|
129
|
-
await
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
}`
|
|
136
|
-
)
|
|
119
|
+
await subject.findByLabelText(
|
|
120
|
+
`Link to, ${
|
|
121
|
+
type === 'core/image'
|
|
122
|
+
? 'None'
|
|
123
|
+
: 'Search or type URL'
|
|
124
|
+
}`
|
|
137
125
|
)
|
|
138
126
|
);
|
|
139
127
|
if ( type === 'core/image' ) {
|
|
140
128
|
fireEvent.press(
|
|
141
|
-
await
|
|
142
|
-
subject.getByLabelText( /Custom URL/ )
|
|
143
|
-
)
|
|
129
|
+
await subject.findByLabelText( /Custom URL/ )
|
|
144
130
|
);
|
|
145
131
|
}
|
|
146
|
-
await
|
|
132
|
+
await subject.findByLabelText( 'Apply' );
|
|
147
133
|
|
|
148
134
|
// Assert.
|
|
149
135
|
expect(
|
|
@@ -166,60 +152,46 @@ describe.each( [
|
|
|
166
152
|
Clipboard.getString.mockReturnValue( url );
|
|
167
153
|
|
|
168
154
|
// Act.
|
|
169
|
-
const block = await
|
|
170
|
-
|
|
171
|
-
type === 'core/image' ? /Image Block/ : /Button Block/
|
|
172
|
-
)
|
|
155
|
+
const [ block ] = await subject.findAllByLabelText(
|
|
156
|
+
type === 'core/image' ? /Image Block/ : /Button Block/
|
|
173
157
|
);
|
|
174
158
|
fireEvent.press( block );
|
|
175
159
|
fireEvent.press( block );
|
|
176
160
|
fireEvent.press(
|
|
177
|
-
await
|
|
178
|
-
subject.getByLabelText( 'Open Settings' )
|
|
179
|
-
)
|
|
161
|
+
await subject.findByLabelText( 'Open Settings' )
|
|
180
162
|
);
|
|
181
163
|
fireEvent.press(
|
|
182
|
-
await
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
}`
|
|
189
|
-
)
|
|
164
|
+
await subject.findByLabelText(
|
|
165
|
+
`Link to, ${
|
|
166
|
+
type === 'core/image'
|
|
167
|
+
? 'None'
|
|
168
|
+
: 'Search or type URL'
|
|
169
|
+
}`
|
|
190
170
|
)
|
|
191
171
|
);
|
|
192
172
|
if ( type === 'core/image' ) {
|
|
193
173
|
fireEvent.press(
|
|
194
|
-
await
|
|
195
|
-
subject.getByLabelText( 'Custom URL. Empty' )
|
|
196
|
-
)
|
|
174
|
+
await subject.findByLabelText( 'Custom URL. Empty' )
|
|
197
175
|
);
|
|
198
176
|
}
|
|
199
177
|
fireEvent.press(
|
|
200
|
-
await
|
|
201
|
-
|
|
202
|
-
`Copy URL from the clipboard, ${ url }`
|
|
203
|
-
)
|
|
178
|
+
await subject.findByLabelText(
|
|
179
|
+
`Copy URL from the clipboard, ${ url }`
|
|
204
180
|
)
|
|
205
181
|
);
|
|
206
182
|
fireEvent.press(
|
|
207
|
-
await
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
}`
|
|
212
|
-
)
|
|
183
|
+
await subject.findByLabelText(
|
|
184
|
+
`Link to, ${
|
|
185
|
+
type === 'core/image' ? 'Custom URL' : url
|
|
186
|
+
}`
|
|
213
187
|
)
|
|
214
188
|
);
|
|
215
189
|
if ( type === 'core/image' ) {
|
|
216
190
|
fireEvent.press(
|
|
217
|
-
await
|
|
218
|
-
subject.getByLabelText( `Custom URL, ${ url }` )
|
|
219
|
-
)
|
|
191
|
+
await subject.findByLabelText( `Custom URL, ${ url }` )
|
|
220
192
|
);
|
|
221
193
|
}
|
|
222
|
-
await
|
|
194
|
+
await subject.findByLabelText( 'Apply' );
|
|
223
195
|
|
|
224
196
|
// Assert.
|
|
225
197
|
expect(
|
|
@@ -245,51 +217,37 @@ describe.each( [
|
|
|
245
217
|
Clipboard.getString.mockReturnValue( url );
|
|
246
218
|
|
|
247
219
|
// Act.
|
|
248
|
-
const block = await
|
|
249
|
-
|
|
250
|
-
type === 'core/image'
|
|
251
|
-
? /Image Block/
|
|
252
|
-
: /Button Block/
|
|
253
|
-
)
|
|
220
|
+
const [ block ] = await subject.findAllByLabelText(
|
|
221
|
+
type === 'core/image' ? /Image Block/ : /Button Block/
|
|
254
222
|
);
|
|
255
223
|
fireEvent.press( block );
|
|
256
224
|
fireEvent.press( block );
|
|
257
225
|
fireEvent.press(
|
|
258
|
-
await
|
|
259
|
-
subject.getByLabelText( 'Open Settings' )
|
|
260
|
-
)
|
|
226
|
+
await subject.findByLabelText( 'Open Settings' )
|
|
261
227
|
);
|
|
262
228
|
fireEvent.press(
|
|
263
|
-
await
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
}`
|
|
270
|
-
)
|
|
229
|
+
await subject.findByLabelText(
|
|
230
|
+
`Link to, ${
|
|
231
|
+
type === 'core/image'
|
|
232
|
+
? 'None'
|
|
233
|
+
: 'Search or type URL'
|
|
234
|
+
}`
|
|
271
235
|
)
|
|
272
236
|
);
|
|
273
237
|
if ( type === 'core/image' ) {
|
|
274
238
|
fireEvent.press(
|
|
275
|
-
await
|
|
276
|
-
subject.getByLabelText( /Custom URL/ )
|
|
277
|
-
)
|
|
239
|
+
await subject.findByLabelText( /Custom URL/ )
|
|
278
240
|
);
|
|
279
241
|
}
|
|
280
|
-
await
|
|
281
|
-
|
|
282
|
-
`Copy URL from the clipboard, ${ url }`
|
|
283
|
-
)
|
|
242
|
+
await subject.findByLabelText(
|
|
243
|
+
`Copy URL from the clipboard, ${ url }`
|
|
284
244
|
);
|
|
285
245
|
|
|
286
246
|
// Assert.
|
|
287
|
-
const clipboardUrl = await
|
|
288
|
-
subject.getByText( url )
|
|
289
|
-
);
|
|
247
|
+
const clipboardUrl = await subject.findByText( url );
|
|
290
248
|
expect( clipboardUrl ).toBeTruthy();
|
|
291
|
-
const clipboardNote = await
|
|
292
|
-
|
|
249
|
+
const clipboardNote = await subject.findByText(
|
|
250
|
+
__( 'From clipboard' )
|
|
293
251
|
);
|
|
294
252
|
expect( clipboardNote ).toBeTruthy();
|
|
295
253
|
}
|
|
@@ -312,53 +270,39 @@ describe.each( [
|
|
|
312
270
|
Clipboard.getString.mockReturnValue( url );
|
|
313
271
|
|
|
314
272
|
// Act.
|
|
315
|
-
const block = await
|
|
316
|
-
|
|
317
|
-
type === 'core/image'
|
|
318
|
-
? /Image Block/
|
|
319
|
-
: /Button Block/
|
|
320
|
-
)
|
|
273
|
+
const [ block ] = await subject.findAllByLabelText(
|
|
274
|
+
type === 'core/image' ? /Image Block/ : /Button Block/
|
|
321
275
|
);
|
|
322
276
|
fireEvent.press( block );
|
|
323
277
|
fireEvent.press( block );
|
|
324
278
|
fireEvent.press(
|
|
325
|
-
await
|
|
326
|
-
subject.getByLabelText( 'Open Settings' )
|
|
327
|
-
)
|
|
279
|
+
await subject.findByLabelText( 'Open Settings' )
|
|
328
280
|
);
|
|
329
281
|
fireEvent.press(
|
|
330
|
-
await
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
}`
|
|
337
|
-
)
|
|
282
|
+
await subject.findByLabelText(
|
|
283
|
+
`Link to, ${
|
|
284
|
+
type === 'core/image'
|
|
285
|
+
? 'None'
|
|
286
|
+
: 'Search or type URL'
|
|
287
|
+
}`
|
|
338
288
|
)
|
|
339
289
|
);
|
|
340
290
|
if ( type === 'core/image' ) {
|
|
341
291
|
fireEvent.press(
|
|
342
|
-
await
|
|
343
|
-
subject.getByLabelText( /Custom URL/ )
|
|
344
|
-
)
|
|
292
|
+
await subject.findByLabelText( /Custom URL/ )
|
|
345
293
|
);
|
|
346
294
|
}
|
|
347
295
|
fireEvent.press(
|
|
348
|
-
await
|
|
349
|
-
|
|
350
|
-
`Copy URL from the clipboard, ${ url }`
|
|
351
|
-
)
|
|
296
|
+
await subject.findByLabelText(
|
|
297
|
+
`Copy URL from the clipboard, ${ url }`
|
|
352
298
|
)
|
|
353
299
|
);
|
|
354
300
|
|
|
355
301
|
// Assert.
|
|
356
|
-
const linkToField = await
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
}`
|
|
361
|
-
)
|
|
302
|
+
const linkToField = await subject.findByLabelText(
|
|
303
|
+
`Link to, ${
|
|
304
|
+
type === 'core/image' ? 'Custom URL' : url
|
|
305
|
+
}`
|
|
362
306
|
);
|
|
363
307
|
expect( linkToField ).toBeTruthy();
|
|
364
308
|
}
|
package/src/modal/index.tsx
CHANGED
|
@@ -98,6 +98,17 @@ function UnforwardedModal(
|
|
|
98
98
|
}, [ bodyOpenClassName ] );
|
|
99
99
|
|
|
100
100
|
function handleEscapeKeyDown( event: KeyboardEvent< HTMLDivElement > ) {
|
|
101
|
+
if (
|
|
102
|
+
// Ignore keydowns from IMEs
|
|
103
|
+
event.nativeEvent.isComposing ||
|
|
104
|
+
// Workaround for Mac Safari where the final Enter/Backspace of an IME composition
|
|
105
|
+
// is `isComposing=false`, even though it's technically still part of the composition.
|
|
106
|
+
// These can only be detected by keyCode.
|
|
107
|
+
event.keyCode === 229
|
|
108
|
+
) {
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
|
|
101
112
|
if (
|
|
102
113
|
shouldCloseOnEsc &&
|
|
103
114
|
event.code === 'Escape' &&
|
|
@@ -12,6 +12,7 @@ import { useState } from '@wordpress/element';
|
|
|
12
12
|
* Internal dependencies
|
|
13
13
|
*/
|
|
14
14
|
import Button from '../../button';
|
|
15
|
+
import InputControl from '../../input-control';
|
|
15
16
|
import Modal from '../';
|
|
16
17
|
import type { ModalProps } from '../types';
|
|
17
18
|
|
|
@@ -75,6 +76,8 @@ const Template: ComponentStory< typeof Modal > = ( {
|
|
|
75
76
|
anim id est laborum.
|
|
76
77
|
</p>
|
|
77
78
|
|
|
79
|
+
<InputControl style={ { marginBottom: '20px' } } />
|
|
80
|
+
|
|
78
81
|
<Button variant="secondary" onClick={ closeModal }>
|
|
79
82
|
Close Modal
|
|
80
83
|
</Button>
|
package/src/modal/test/index.tsx
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
4
|
import { render, screen, within } from '@testing-library/react';
|
|
5
|
+
import userEvent from '@testing-library/user-event';
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* Internal dependencies
|
|
@@ -69,4 +70,16 @@ describe( 'Modal', () => {
|
|
|
69
70
|
const title = within( dialog ).queryByText( 'Test Title' );
|
|
70
71
|
expect( title ).not.toBeInTheDocument();
|
|
71
72
|
} );
|
|
73
|
+
|
|
74
|
+
it( 'should call onRequestClose when the escape key is pressed', async () => {
|
|
75
|
+
const user = userEvent.setup();
|
|
76
|
+
const onRequestClose = jest.fn();
|
|
77
|
+
render(
|
|
78
|
+
<Modal onRequestClose={ onRequestClose }>
|
|
79
|
+
<p>Modal content</p>
|
|
80
|
+
</Modal>
|
|
81
|
+
);
|
|
82
|
+
await user.keyboard( '[Escape]' );
|
|
83
|
+
expect( onRequestClose ).toHaveBeenCalled();
|
|
84
|
+
} );
|
|
72
85
|
} );
|
|
@@ -6,12 +6,12 @@ import NavigationBackButton from '../back-button';
|
|
|
6
6
|
import NavigationGroup from '../group';
|
|
7
7
|
import NavigationItem from '../item';
|
|
8
8
|
import NavigationMenu from '../menu';
|
|
9
|
-
import { DefaultStory } from './default';
|
|
10
|
-
import { GroupStory } from './group';
|
|
11
|
-
import { ControlledStateStory } from './controlled-state';
|
|
12
|
-
import { SearchStory } from './search';
|
|
13
|
-
import { MoreExamplesStory } from './more-examples';
|
|
14
|
-
import { HideIfEmptyStory } from './hide-if-empty';
|
|
9
|
+
import { DefaultStory } from './utils/default';
|
|
10
|
+
import { GroupStory } from './utils/group';
|
|
11
|
+
import { ControlledStateStory } from './utils/controlled-state';
|
|
12
|
+
import { SearchStory } from './utils/search';
|
|
13
|
+
import { MoreExamplesStory } from './utils/more-examples';
|
|
14
|
+
import { HideIfEmptyStory } from './utils/hide-if-empty';
|
|
15
15
|
import './style.css';
|
|
16
16
|
|
|
17
17
|
export default {
|
|
@@ -7,9 +7,9 @@ import { useState } from '@wordpress/element';
|
|
|
7
7
|
/**
|
|
8
8
|
* Internal dependencies
|
|
9
9
|
*/
|
|
10
|
-
import Navigation from '
|
|
11
|
-
import NavigationItem from '
|
|
12
|
-
import NavigationMenu from '
|
|
10
|
+
import Navigation from '../..';
|
|
11
|
+
import NavigationItem from '../../item';
|
|
12
|
+
import NavigationMenu from '../../menu';
|
|
13
13
|
|
|
14
14
|
export function ControlledStateStory() {
|
|
15
15
|
const [ activeItem, setActiveItem ] = useState( 'item-1' );
|
|
@@ -6,9 +6,9 @@ import { useState } from '@wordpress/element';
|
|
|
6
6
|
/**
|
|
7
7
|
* Internal dependencies
|
|
8
8
|
*/
|
|
9
|
-
import Navigation from '
|
|
10
|
-
import NavigationItem from '
|
|
11
|
-
import NavigationMenu from '
|
|
9
|
+
import Navigation from '../..';
|
|
10
|
+
import NavigationItem from '../../item';
|
|
11
|
+
import NavigationMenu from '../../menu';
|
|
12
12
|
|
|
13
13
|
export function DefaultStory() {
|
|
14
14
|
const [ activeItem, setActiveItem ] = useState( 'item-1' );
|
|
@@ -6,10 +6,10 @@ import { useState } from '@wordpress/element';
|
|
|
6
6
|
/**
|
|
7
7
|
* Internal dependencies
|
|
8
8
|
*/
|
|
9
|
-
import Navigation from '
|
|
10
|
-
import NavigationItem from '
|
|
11
|
-
import NavigationMenu from '
|
|
12
|
-
import NavigationGroup from '
|
|
9
|
+
import Navigation from '../..';
|
|
10
|
+
import NavigationItem from '../../item';
|
|
11
|
+
import NavigationMenu from '../../menu';
|
|
12
|
+
import NavigationGroup from '../../group';
|
|
13
13
|
|
|
14
14
|
export function GroupStory() {
|
|
15
15
|
const [ activeItem, setActiveItem ] = useState( 'item-1' );
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Internal dependencies
|
|
3
3
|
*/
|
|
4
|
-
import Navigation from '
|
|
5
|
-
import NavigationItem from '
|
|
6
|
-
import NavigationMenu from '
|
|
4
|
+
import Navigation from '../..';
|
|
5
|
+
import NavigationItem from '../../item';
|
|
6
|
+
import NavigationMenu from '../../menu';
|
|
7
7
|
|
|
8
8
|
export function HideIfEmptyStory() {
|
|
9
9
|
return (
|
|
@@ -7,10 +7,10 @@ import { Icon, wordpress, home } from '@wordpress/icons';
|
|
|
7
7
|
/**
|
|
8
8
|
* Internal dependencies
|
|
9
9
|
*/
|
|
10
|
-
import Navigation from '
|
|
11
|
-
import NavigationGroup from '
|
|
12
|
-
import NavigationItem from '
|
|
13
|
-
import NavigationMenu from '
|
|
10
|
+
import Navigation from '../..';
|
|
11
|
+
import NavigationGroup from '../../group';
|
|
12
|
+
import NavigationItem from '../../item';
|
|
13
|
+
import NavigationMenu from '../../menu';
|
|
14
14
|
|
|
15
15
|
export function MoreExamplesStory() {
|
|
16
16
|
const [ activeItem, setActiveItem ] = useState( 'child-1' );
|
|
@@ -6,11 +6,11 @@ import { useState } from '@wordpress/element';
|
|
|
6
6
|
/**
|
|
7
7
|
* Internal dependencies
|
|
8
8
|
*/
|
|
9
|
-
import Navigation from '
|
|
10
|
-
import NavigationGroup from '
|
|
11
|
-
import NavigationItem from '
|
|
12
|
-
import NavigationMenu from '
|
|
13
|
-
import { normalizedSearch } from '
|
|
9
|
+
import Navigation from '../..';
|
|
10
|
+
import NavigationGroup from '../../group';
|
|
11
|
+
import NavigationItem from '../../item';
|
|
12
|
+
import NavigationMenu from '../../menu';
|
|
13
|
+
import { normalizedSearch } from '../../utils';
|
|
14
14
|
|
|
15
15
|
const searchItems = [
|
|
16
16
|
{ item: 'foo', title: 'Foo' },
|
|
@@ -16,6 +16,8 @@ import Navigation from '..';
|
|
|
16
16
|
import NavigationItem from '../item';
|
|
17
17
|
import NavigationMenu from '../menu';
|
|
18
18
|
|
|
19
|
+
jest.useFakeTimers();
|
|
20
|
+
|
|
19
21
|
const TestNavigation = ( { activeItem, rootTitle, showBadge } = {} ) => (
|
|
20
22
|
<Navigation activeItem={ activeItem }>
|
|
21
23
|
<NavigationMenu title={ rootTitle }>
|
|
@@ -43,8 +43,8 @@ function UnconnectedNavigatorProvider(
|
|
|
43
43
|
|
|
44
44
|
const goTo: NavigatorContextType[ 'goTo' ] = useCallback(
|
|
45
45
|
( path, options = {} ) => {
|
|
46
|
-
setLocationHistory( [
|
|
47
|
-
...
|
|
46
|
+
setLocationHistory( ( prevLocationHistory ) => [
|
|
47
|
+
...prevLocationHistory,
|
|
48
48
|
{
|
|
49
49
|
...options,
|
|
50
50
|
path,
|
|
@@ -53,21 +53,24 @@ function UnconnectedNavigatorProvider(
|
|
|
53
53
|
},
|
|
54
54
|
] );
|
|
55
55
|
},
|
|
56
|
-
[
|
|
56
|
+
[]
|
|
57
57
|
);
|
|
58
58
|
|
|
59
59
|
const goBack: NavigatorContextType[ 'goBack' ] = useCallback( () => {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
60
|
+
setLocationHistory( ( prevLocationHistory ) => {
|
|
61
|
+
if ( prevLocationHistory.length <= 1 ) {
|
|
62
|
+
return prevLocationHistory;
|
|
63
|
+
}
|
|
64
|
+
return [
|
|
65
|
+
...prevLocationHistory.slice( 0, -2 ),
|
|
63
66
|
{
|
|
64
|
-
...
|
|
67
|
+
...prevLocationHistory[ prevLocationHistory.length - 2 ],
|
|
65
68
|
isBack: true,
|
|
66
69
|
hasRestoredFocus: false,
|
|
67
70
|
},
|
|
68
|
-
]
|
|
69
|
-
}
|
|
70
|
-
}, [
|
|
71
|
+
];
|
|
72
|
+
} );
|
|
73
|
+
}, [] );
|
|
71
74
|
|
|
72
75
|
const navigatorContextValue: NavigatorContextType = useMemo(
|
|
73
76
|
() => ( {
|