@wordpress/components 29.3.0 → 29.5.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 +30 -0
- package/build/alignment-matrix-control/icon.js +0 -1
- package/build/alignment-matrix-control/icon.js.map +1 -1
- package/build/alignment-matrix-control/index.js +0 -1
- package/build/alignment-matrix-control/index.js.map +1 -1
- package/build/autocomplete/autocompleter-ui.js +0 -1
- package/build/autocomplete/autocompleter-ui.js.map +1 -1
- package/build/autocomplete/autocompleter-ui.native.js +0 -1
- package/build/autocomplete/autocompleter-ui.native.js.map +1 -1
- package/build/autocomplete/get-default-use-items.js +0 -1
- package/build/autocomplete/get-default-use-items.js.map +1 -1
- package/build/autocomplete/index.js +0 -1
- package/build/autocomplete/index.js.map +1 -1
- package/build/border-box-control/utils.js +0 -1
- package/build/border-box-control/utils.js.map +1 -1
- package/build/border-control/border-control-dropdown/component.js +19 -22
- package/build/border-control/border-control-dropdown/component.js.map +1 -1
- package/build/border-control/border-control-dropdown/hook.js +3 -3
- package/build/border-control/border-control-dropdown/hook.js.map +1 -1
- package/build/border-control/border-control-style-picker/component.js +0 -1
- package/build/border-control/border-control-style-picker/component.js.map +1 -1
- package/build/border-control/styles.js +24 -19
- package/build/border-control/styles.js.map +1 -1
- package/build/box-control/index.js +0 -1
- package/build/box-control/index.js.map +1 -1
- package/build/box-control/input-control.js +0 -1
- package/build/box-control/input-control.js.map +1 -1
- package/build/box-control/utils.js +0 -1
- package/build/box-control/utils.js.map +1 -1
- package/build/button/index.native.js +0 -1
- package/build/button/index.native.js.map +1 -1
- package/build/circular-option-picker/circular-option-picker.js +1 -0
- package/build/circular-option-picker/circular-option-picker.js.map +1 -1
- package/build/circular-option-picker/index.js +7 -0
- package/build/circular-option-picker/index.js.map +1 -1
- package/build/circular-option-picker/types.js.map +1 -1
- package/build/circular-option-picker/utils.js +31 -0
- package/build/circular-option-picker/utils.js.map +1 -0
- package/build/color-indicator/index.native.js +0 -1
- package/build/color-indicator/index.native.js.map +1 -1
- package/build/color-palette/index.js +9 -30
- package/build/color-palette/index.js.map +1 -1
- package/build/color-palette/index.native.js +0 -1
- package/build/color-palette/index.native.js.map +1 -1
- package/build/color-palette/utils.js +0 -1
- package/build/color-palette/utils.js.map +1 -1
- package/build/combobox-control/index.js +4 -3
- package/build/combobox-control/index.js.map +1 -1
- package/build/combobox-control/types.js.map +1 -1
- package/build/composite/legacy/index.js +0 -1
- package/build/composite/legacy/index.js.map +1 -1
- package/build/context/context-connect.js +0 -1
- package/build/context/context-connect.js.map +1 -1
- package/build/custom-gradient-picker/gradient-bar/control-points.js +0 -1
- package/build/custom-gradient-picker/gradient-bar/control-points.js.map +1 -1
- package/build/custom-gradient-picker/gradient-bar/index.js +0 -1
- package/build/custom-gradient-picker/gradient-bar/index.js.map +1 -1
- package/build/custom-gradient-picker/gradient-bar/utils.js +0 -1
- package/build/custom-gradient-picker/gradient-bar/utils.js.map +1 -1
- package/build/custom-gradient-picker/index.js +0 -1
- package/build/custom-gradient-picker/index.js.map +1 -1
- package/build/custom-gradient-picker/serializer.js +0 -1
- package/build/custom-gradient-picker/serializer.js.map +1 -1
- package/build/custom-gradient-picker/utils.js +0 -1
- package/build/custom-gradient-picker/utils.js.map +1 -1
- package/build/custom-select-control/index.js +0 -1
- package/build/custom-select-control/index.js.map +1 -1
- package/build/dashicon/index.js +0 -1
- package/build/dashicon/index.js.map +1 -1
- package/build/date-time/date/index.js +0 -1
- package/build/date-time/date/index.js.map +1 -1
- package/build/date-time/date/use-lilius/index.js +0 -1
- package/build/date-time/date/use-lilius/index.js.map +1 -1
- package/build/date-time/time/index.js +0 -1
- package/build/date-time/time/index.js.map +1 -1
- package/build/dimension-control/index.js +0 -1
- package/build/dimension-control/index.js.map +1 -1
- package/build/dimension-control/sizes.js +0 -1
- package/build/dimension-control/sizes.js.map +1 -1
- package/build/draggable/index.js +0 -1
- package/build/draggable/index.js.map +1 -1
- package/build/draggable/index.native.js +0 -1
- package/build/draggable/index.native.js.map +1 -1
- package/build/dropdown-menu/index.js +0 -1
- package/build/dropdown-menu/index.js.map +1 -1
- package/build/dropdown-menu/index.native.js +0 -1
- package/build/dropdown-menu/index.native.js.map +1 -1
- package/build/duotone-picker/color-list-picker/index.js +0 -1
- package/build/duotone-picker/color-list-picker/index.js.map +1 -1
- package/build/duotone-picker/duotone-picker.js +8 -29
- package/build/duotone-picker/duotone-picker.js.map +1 -1
- package/build/duotone-picker/utils.js +0 -1
- package/build/duotone-picker/utils.js.map +1 -1
- package/build/external-link/index.js +0 -1
- package/build/external-link/index.js.map +1 -1
- package/build/font-size-picker/font-size-picker-select.js +4 -15
- package/build/font-size-picker/font-size-picker-select.js.map +1 -1
- package/build/font-size-picker/font-size-picker-toggle-group.js +0 -1
- package/build/font-size-picker/font-size-picker-toggle-group.js.map +1 -1
- package/build/font-size-picker/index.js +0 -1
- package/build/font-size-picker/index.js.map +1 -1
- package/build/font-size-picker/index.native.js +0 -1
- package/build/font-size-picker/index.native.js.map +1 -1
- package/build/font-size-picker/types.js.map +1 -1
- package/build/font-size-picker/utils.js +0 -1
- package/build/font-size-picker/utils.js.map +1 -1
- package/build/form-token-field/index.js +0 -1
- package/build/form-token-field/index.js.map +1 -1
- package/build/form-token-field/suggestions-list.js +0 -1
- package/build/form-token-field/suggestions-list.js.map +1 -1
- package/build/gradient-picker/index.js +8 -29
- package/build/gradient-picker/index.js.map +1 -1
- package/build/guide/index.js +0 -1
- package/build/guide/index.js.map +1 -1
- package/build/guide/page-control.js +0 -1
- package/build/guide/page-control.js.map +1 -1
- package/build/h-stack/hook.js +0 -1
- package/build/h-stack/hook.js.map +1 -1
- package/build/higher-order/navigate-regions/index.js +0 -1
- package/build/higher-order/navigate-regions/index.js.map +1 -1
- package/build/higher-order/with-fallback-styles/index.js +0 -1
- package/build/higher-order/with-fallback-styles/index.js.map +1 -1
- package/build/higher-order/with-filters/index.js +0 -1
- package/build/higher-order/with-filters/index.js.map +1 -1
- package/build/higher-order/with-notices/index.js +0 -1
- package/build/higher-order/with-notices/index.js.map +1 -1
- package/build/input-control/styles/input-control-styles.js +22 -22
- package/build/input-control/styles/input-control-styles.js.map +1 -1
- package/build/keyboard-shortcuts/index.js +0 -1
- package/build/keyboard-shortcuts/index.js.map +1 -1
- package/build/menu-items-choice/index.js +0 -1
- package/build/menu-items-choice/index.js.map +1 -1
- package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +0 -1
- package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js.map +1 -1
- package/build/mobile/bottom-sheet/keyboard-avoiding-view.native.js +0 -1
- package/build/mobile/bottom-sheet/keyboard-avoiding-view.native.js.map +1 -1
- package/build/mobile/bottom-sheet/picker-cell.native.js +0 -1
- package/build/mobile/bottom-sheet/picker-cell.native.js.map +1 -1
- package/build/mobile/bottom-sheet/switch-cell.native.js +1 -1
- package/build/mobile/bottom-sheet/switch-cell.native.js.map +1 -1
- package/build/mobile/bottom-sheet-select-control/index.native.js +0 -1
- package/build/mobile/bottom-sheet-select-control/index.native.js.map +1 -1
- package/build/mobile/color-settings/palette.screen.native.js +0 -1
- package/build/mobile/color-settings/palette.screen.native.js.map +1 -1
- package/build/mobile/gradient/index.native.js +0 -1
- package/build/mobile/gradient/index.native.js.map +1 -1
- package/build/mobile/media-edit/index.native.js +0 -1
- package/build/mobile/media-edit/index.native.js.map +1 -1
- package/build/mobile/picker/index.android.js +0 -1
- package/build/mobile/picker/index.android.js.map +1 -1
- package/build/mobile/picker/index.ios.js +0 -1
- package/build/mobile/picker/index.ios.js.map +1 -1
- package/build/mobile/segmented-control/index.native.js +0 -1
- package/build/mobile/segmented-control/index.native.js.map +1 -1
- package/build/mobile/utils/get-px-from-css-unit.native.js +0 -1
- package/build/mobile/utils/get-px-from-css-unit.native.js.map +1 -1
- package/build/navigable-container/container.js +0 -1
- package/build/navigable-container/container.js.map +1 -1
- package/build/navigation/group/index.js +0 -1
- package/build/navigation/group/index.js.map +1 -1
- package/build/navigation/menu/menu-title-search.js +0 -1
- package/build/navigation/menu/menu-title-search.js.map +1 -1
- package/build/navigation/menu/search-no-results-found.js +0 -1
- package/build/navigation/menu/search-no-results-found.js.map +1 -1
- package/build/navigator/navigator/component.js +0 -1
- package/build/navigator/navigator/component.js.map +1 -1
- package/build/navigator/navigator-screen/component.js +0 -1
- package/build/navigator/navigator-screen/component.js.map +1 -1
- package/build/navigator/utils/router.js +0 -1
- package/build/navigator/utils/router.js.map +1 -1
- package/build/notice/index.js +0 -1
- package/build/notice/index.js.map +1 -1
- package/build/notice/list.js +0 -1
- package/build/notice/list.js.map +1 -1
- package/build/notice/list.native.js +0 -1
- package/build/notice/list.native.js.map +1 -1
- package/build/number-control/index.js +2 -2
- package/build/number-control/index.js.map +1 -1
- package/build/palette-edit/index.js +0 -1
- package/build/palette-edit/index.js.map +1 -1
- package/build/panel/actions.native.js +0 -1
- package/build/panel/actions.native.js.map +1 -1
- package/build/query-controls/index.js +0 -1
- package/build/query-controls/index.js.map +1 -1
- package/build/query-controls/terms.js +0 -1
- package/build/query-controls/terms.js.map +1 -1
- package/build/radio-control/index.js +0 -1
- package/build/radio-control/index.js.map +1 -1
- package/build/radio-control/index.native.js +0 -1
- package/build/radio-control/index.native.js.map +1 -1
- package/build/range-control/rail.js +0 -1
- package/build/range-control/rail.js.map +1 -1
- package/build/resizable-box/index.js +0 -1
- package/build/resizable-box/index.js.map +1 -1
- package/build/sandbox/index.js +0 -1
- package/build/sandbox/index.js.map +1 -1
- package/build/sandbox/index.native.js +0 -1
- package/build/sandbox/index.native.js.map +1 -1
- package/build/search-control/index.native.js +0 -1
- package/build/search-control/index.native.js.map +1 -1
- package/build/select-control/index.js +0 -1
- package/build/select-control/index.js.map +1 -1
- package/build/slot-fill/bubbles-virtually/slot-fill-provider.js +0 -1
- package/build/slot-fill/bubbles-virtually/slot-fill-provider.js.map +1 -1
- package/build/slot-fill/provider.js +0 -1
- package/build/slot-fill/provider.js.map +1 -1
- package/build/slot-fill/slot.js +0 -1
- package/build/slot-fill/slot.js.map +1 -1
- package/build/snackbar/index.js +0 -1
- package/build/snackbar/index.js.map +1 -1
- package/build/snackbar/list.js +0 -1
- package/build/snackbar/list.js.map +1 -1
- package/build/tab-panel/index.js +0 -1
- package/build/tab-panel/index.js.map +1 -1
- package/build/tabs/index.js +0 -1
- package/build/tabs/index.js.map +1 -1
- package/build/text/utils.js +0 -1
- package/build/text/utils.js.map +1 -1
- package/build/textarea-control/styles/textarea-control-styles.js +3 -3
- package/build/textarea-control/styles/textarea-control-styles.js.map +1 -1
- package/build/theme/color-algorithms.js +0 -1
- package/build/theme/color-algorithms.js.map +1 -1
- package/build/toolbar/toolbar-group/index.js +0 -1
- package/build/toolbar/toolbar-group/index.js.map +1 -1
- package/build/tools-panel/tools-panel/hook.js +0 -1
- package/build/tools-panel/tools-panel/hook.js.map +1 -1
- package/build/tools-panel/tools-panel-header/component.js +0 -1
- package/build/tools-panel/tools-panel-header/component.js.map +1 -1
- package/build/tree-grid/index.js +0 -1
- package/build/tree-grid/index.js.map +1 -1
- package/build/tree-select/index.js +0 -1
- package/build/tree-select/index.js.map +1 -1
- package/build/unit-control/index.js +0 -1
- package/build/unit-control/index.js.map +1 -1
- package/build/unit-control/index.native.js +0 -1
- package/build/unit-control/index.native.js.map +1 -1
- package/build/unit-control/unit-select-control.js +0 -1
- package/build/unit-control/unit-select-control.js.map +1 -1
- package/build/unit-control/utils.js +0 -1
- package/build/unit-control/utils.js.map +1 -1
- package/build/utils/get-valid-children.js +0 -1
- package/build/utils/get-valid-children.js.map +1 -1
- package/build/utils/hooks/use-animated-offset-rect.js +0 -1
- package/build/utils/hooks/use-animated-offset-rect.js.map +1 -1
- package/build/utils/hooks/use-cx.js +0 -1
- package/build/utils/hooks/use-cx.js.map +1 -1
- package/build/utils/math.js +0 -1
- package/build/utils/math.js.map +1 -1
- package/build/utils/rtl.js +0 -1
- package/build/utils/rtl.js.map +1 -1
- package/build/utils/values.js +0 -1
- package/build/utils/values.js.map +1 -1
- package/build/z-stack/component.js +0 -1
- package/build/z-stack/component.js.map +1 -1
- package/build-module/alignment-matrix-control/icon.js +0 -1
- package/build-module/alignment-matrix-control/icon.js.map +1 -1
- package/build-module/alignment-matrix-control/index.js +0 -1
- package/build-module/alignment-matrix-control/index.js.map +1 -1
- package/build-module/autocomplete/autocompleter-ui.js +0 -1
- package/build-module/autocomplete/autocompleter-ui.js.map +1 -1
- package/build-module/autocomplete/autocompleter-ui.native.js +0 -1
- package/build-module/autocomplete/autocompleter-ui.native.js.map +1 -1
- package/build-module/autocomplete/get-default-use-items.js +0 -1
- package/build-module/autocomplete/get-default-use-items.js.map +1 -1
- package/build-module/autocomplete/index.js +0 -1
- package/build-module/autocomplete/index.js.map +1 -1
- package/build-module/border-box-control/utils.js +0 -1
- package/build-module/border-box-control/utils.js.map +1 -1
- package/build-module/border-control/border-control-dropdown/component.js +19 -22
- package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
- package/build-module/border-control/border-control-dropdown/hook.js +3 -3
- package/build-module/border-control/border-control-dropdown/hook.js.map +1 -1
- package/build-module/border-control/border-control-style-picker/component.js +0 -1
- package/build-module/border-control/border-control-style-picker/component.js.map +1 -1
- package/build-module/border-control/styles.js +22 -13
- package/build-module/border-control/styles.js.map +1 -1
- package/build-module/box-control/index.js +0 -1
- package/build-module/box-control/index.js.map +1 -1
- package/build-module/box-control/input-control.js +0 -1
- package/build-module/box-control/input-control.js.map +1 -1
- package/build-module/box-control/utils.js +0 -1
- package/build-module/box-control/utils.js.map +1 -1
- package/build-module/button/index.native.js +0 -1
- package/build-module/button/index.native.js.map +1 -1
- package/build-module/circular-option-picker/circular-option-picker.js +1 -0
- package/build-module/circular-option-picker/circular-option-picker.js.map +1 -1
- package/build-module/circular-option-picker/index.js +1 -0
- package/build-module/circular-option-picker/index.js.map +1 -1
- package/build-module/circular-option-picker/types.js.map +1 -1
- package/build-module/circular-option-picker/utils.js +25 -0
- package/build-module/circular-option-picker/utils.js.map +1 -0
- package/build-module/color-indicator/index.native.js +0 -1
- package/build-module/color-indicator/index.native.js.map +1 -1
- package/build-module/color-palette/index.js +7 -30
- package/build-module/color-palette/index.js.map +1 -1
- package/build-module/color-palette/index.native.js +0 -1
- package/build-module/color-palette/index.native.js.map +1 -1
- package/build-module/color-palette/utils.js +0 -1
- package/build-module/color-palette/utils.js.map +1 -1
- package/build-module/combobox-control/index.js +4 -3
- package/build-module/combobox-control/index.js.map +1 -1
- package/build-module/combobox-control/types.js.map +1 -1
- package/build-module/composite/legacy/index.js +0 -1
- package/build-module/composite/legacy/index.js.map +1 -1
- package/build-module/context/context-connect.js +0 -1
- package/build-module/context/context-connect.js.map +1 -1
- package/build-module/custom-gradient-picker/gradient-bar/control-points.js +0 -1
- package/build-module/custom-gradient-picker/gradient-bar/control-points.js.map +1 -1
- package/build-module/custom-gradient-picker/gradient-bar/index.js +0 -1
- package/build-module/custom-gradient-picker/gradient-bar/index.js.map +1 -1
- package/build-module/custom-gradient-picker/gradient-bar/utils.js +0 -1
- package/build-module/custom-gradient-picker/gradient-bar/utils.js.map +1 -1
- package/build-module/custom-gradient-picker/index.js +0 -1
- package/build-module/custom-gradient-picker/index.js.map +1 -1
- package/build-module/custom-gradient-picker/serializer.js +0 -1
- package/build-module/custom-gradient-picker/serializer.js.map +1 -1
- package/build-module/custom-gradient-picker/utils.js +0 -1
- package/build-module/custom-gradient-picker/utils.js.map +1 -1
- package/build-module/custom-select-control/index.js +0 -1
- package/build-module/custom-select-control/index.js.map +1 -1
- package/build-module/dashicon/index.js +0 -1
- package/build-module/dashicon/index.js.map +1 -1
- package/build-module/date-time/date/index.js +0 -1
- package/build-module/date-time/date/index.js.map +1 -1
- package/build-module/date-time/date/use-lilius/index.js +0 -1
- package/build-module/date-time/date/use-lilius/index.js.map +1 -1
- package/build-module/date-time/time/index.js +0 -1
- package/build-module/date-time/time/index.js.map +1 -1
- package/build-module/dimension-control/index.js +0 -1
- package/build-module/dimension-control/index.js.map +1 -1
- package/build-module/dimension-control/sizes.js +0 -1
- package/build-module/dimension-control/sizes.js.map +1 -1
- package/build-module/draggable/index.js +0 -1
- package/build-module/draggable/index.js.map +1 -1
- package/build-module/draggable/index.native.js +0 -1
- package/build-module/draggable/index.native.js.map +1 -1
- package/build-module/dropdown-menu/index.js +0 -1
- package/build-module/dropdown-menu/index.js.map +1 -1
- package/build-module/dropdown-menu/index.native.js +0 -1
- package/build-module/dropdown-menu/index.native.js.map +1 -1
- package/build-module/duotone-picker/color-list-picker/index.js +0 -1
- package/build-module/duotone-picker/color-list-picker/index.js.map +1 -1
- package/build-module/duotone-picker/duotone-picker.js +6 -29
- package/build-module/duotone-picker/duotone-picker.js.map +1 -1
- package/build-module/duotone-picker/utils.js +0 -1
- package/build-module/duotone-picker/utils.js.map +1 -1
- package/build-module/external-link/index.js +0 -1
- package/build-module/external-link/index.js.map +1 -1
- package/build-module/font-size-picker/font-size-picker-select.js +4 -15
- package/build-module/font-size-picker/font-size-picker-select.js.map +1 -1
- package/build-module/font-size-picker/font-size-picker-toggle-group.js +0 -1
- package/build-module/font-size-picker/font-size-picker-toggle-group.js.map +1 -1
- package/build-module/font-size-picker/index.js +0 -1
- package/build-module/font-size-picker/index.js.map +1 -1
- package/build-module/font-size-picker/index.native.js +0 -1
- package/build-module/font-size-picker/index.native.js.map +1 -1
- package/build-module/font-size-picker/types.js.map +1 -1
- package/build-module/font-size-picker/utils.js +0 -1
- package/build-module/font-size-picker/utils.js.map +1 -1
- package/build-module/form-token-field/index.js +0 -1
- package/build-module/form-token-field/index.js.map +1 -1
- package/build-module/form-token-field/suggestions-list.js +0 -1
- package/build-module/form-token-field/suggestions-list.js.map +1 -1
- package/build-module/gradient-picker/index.js +6 -29
- package/build-module/gradient-picker/index.js.map +1 -1
- package/build-module/guide/index.js +0 -1
- package/build-module/guide/index.js.map +1 -1
- package/build-module/guide/page-control.js +0 -1
- package/build-module/guide/page-control.js.map +1 -1
- package/build-module/h-stack/hook.js +0 -1
- package/build-module/h-stack/hook.js.map +1 -1
- package/build-module/higher-order/navigate-regions/index.js +0 -1
- package/build-module/higher-order/navigate-regions/index.js.map +1 -1
- package/build-module/higher-order/with-fallback-styles/index.js +0 -1
- package/build-module/higher-order/with-fallback-styles/index.js.map +1 -1
- package/build-module/higher-order/with-filters/index.js +0 -1
- package/build-module/higher-order/with-filters/index.js.map +1 -1
- package/build-module/higher-order/with-notices/index.js +0 -1
- package/build-module/higher-order/with-notices/index.js.map +1 -1
- package/build-module/input-control/styles/input-control-styles.js +22 -22
- package/build-module/input-control/styles/input-control-styles.js.map +1 -1
- package/build-module/keyboard-shortcuts/index.js +0 -1
- package/build-module/keyboard-shortcuts/index.js.map +1 -1
- package/build-module/menu-items-choice/index.js +0 -1
- package/build-module/menu-items-choice/index.js.map +1 -1
- package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +0 -1
- package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/keyboard-avoiding-view.native.js +0 -1
- package/build-module/mobile/bottom-sheet/keyboard-avoiding-view.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/picker-cell.native.js +0 -1
- package/build-module/mobile/bottom-sheet/picker-cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/switch-cell.native.js +1 -1
- package/build-module/mobile/bottom-sheet/switch-cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet-select-control/index.native.js +0 -1
- package/build-module/mobile/bottom-sheet-select-control/index.native.js.map +1 -1
- package/build-module/mobile/color-settings/palette.screen.native.js +0 -1
- package/build-module/mobile/color-settings/palette.screen.native.js.map +1 -1
- package/build-module/mobile/gradient/index.native.js +0 -1
- package/build-module/mobile/gradient/index.native.js.map +1 -1
- package/build-module/mobile/media-edit/index.native.js +0 -1
- package/build-module/mobile/media-edit/index.native.js.map +1 -1
- package/build-module/mobile/picker/index.android.js +0 -1
- package/build-module/mobile/picker/index.android.js.map +1 -1
- package/build-module/mobile/picker/index.ios.js +0 -1
- package/build-module/mobile/picker/index.ios.js.map +1 -1
- package/build-module/mobile/segmented-control/index.native.js +0 -1
- package/build-module/mobile/segmented-control/index.native.js.map +1 -1
- package/build-module/mobile/utils/get-px-from-css-unit.native.js +0 -1
- package/build-module/mobile/utils/get-px-from-css-unit.native.js.map +1 -1
- package/build-module/navigable-container/container.js +0 -1
- package/build-module/navigable-container/container.js.map +1 -1
- package/build-module/navigation/group/index.js +0 -1
- package/build-module/navigation/group/index.js.map +1 -1
- package/build-module/navigation/menu/menu-title-search.js +0 -1
- package/build-module/navigation/menu/menu-title-search.js.map +1 -1
- package/build-module/navigation/menu/search-no-results-found.js +0 -1
- package/build-module/navigation/menu/search-no-results-found.js.map +1 -1
- package/build-module/navigator/navigator/component.js +0 -1
- package/build-module/navigator/navigator/component.js.map +1 -1
- package/build-module/navigator/navigator-screen/component.js +0 -1
- package/build-module/navigator/navigator-screen/component.js.map +1 -1
- package/build-module/navigator/utils/router.js +0 -1
- package/build-module/navigator/utils/router.js.map +1 -1
- package/build-module/notice/index.js +0 -1
- package/build-module/notice/index.js.map +1 -1
- package/build-module/notice/list.js +0 -1
- package/build-module/notice/list.js.map +1 -1
- package/build-module/notice/list.native.js +0 -1
- package/build-module/notice/list.native.js.map +1 -1
- package/build-module/number-control/index.js +2 -2
- package/build-module/number-control/index.js.map +1 -1
- package/build-module/palette-edit/index.js +0 -1
- package/build-module/palette-edit/index.js.map +1 -1
- package/build-module/panel/actions.native.js +0 -1
- package/build-module/panel/actions.native.js.map +1 -1
- package/build-module/query-controls/index.js +0 -1
- package/build-module/query-controls/index.js.map +1 -1
- package/build-module/query-controls/terms.js +0 -1
- package/build-module/query-controls/terms.js.map +1 -1
- package/build-module/radio-control/index.js +0 -1
- package/build-module/radio-control/index.js.map +1 -1
- package/build-module/radio-control/index.native.js +0 -1
- package/build-module/radio-control/index.native.js.map +1 -1
- package/build-module/range-control/rail.js +0 -1
- package/build-module/range-control/rail.js.map +1 -1
- package/build-module/resizable-box/index.js +0 -1
- package/build-module/resizable-box/index.js.map +1 -1
- package/build-module/sandbox/index.js +0 -1
- package/build-module/sandbox/index.js.map +1 -1
- package/build-module/sandbox/index.native.js +0 -1
- package/build-module/sandbox/index.native.js.map +1 -1
- package/build-module/search-control/index.native.js +0 -1
- package/build-module/search-control/index.native.js.map +1 -1
- package/build-module/select-control/index.js +0 -1
- package/build-module/select-control/index.js.map +1 -1
- package/build-module/slot-fill/bubbles-virtually/slot-fill-provider.js +0 -1
- package/build-module/slot-fill/bubbles-virtually/slot-fill-provider.js.map +1 -1
- package/build-module/slot-fill/provider.js +0 -1
- package/build-module/slot-fill/provider.js.map +1 -1
- package/build-module/slot-fill/slot.js +0 -1
- package/build-module/slot-fill/slot.js.map +1 -1
- package/build-module/snackbar/index.js +0 -1
- package/build-module/snackbar/index.js.map +1 -1
- package/build-module/snackbar/list.js +0 -1
- package/build-module/snackbar/list.js.map +1 -1
- package/build-module/tab-panel/index.js +0 -1
- package/build-module/tab-panel/index.js.map +1 -1
- package/build-module/tabs/index.js +0 -1
- package/build-module/tabs/index.js.map +1 -1
- package/build-module/text/utils.js +0 -1
- package/build-module/text/utils.js.map +1 -1
- package/build-module/textarea-control/styles/textarea-control-styles.js +3 -3
- package/build-module/textarea-control/styles/textarea-control-styles.js.map +1 -1
- package/build-module/theme/color-algorithms.js +0 -1
- package/build-module/theme/color-algorithms.js.map +1 -1
- package/build-module/toolbar/toolbar-group/index.js +0 -1
- package/build-module/toolbar/toolbar-group/index.js.map +1 -1
- package/build-module/tools-panel/tools-panel/hook.js +0 -1
- package/build-module/tools-panel/tools-panel/hook.js.map +1 -1
- package/build-module/tools-panel/tools-panel-header/component.js +0 -1
- package/build-module/tools-panel/tools-panel-header/component.js.map +1 -1
- package/build-module/tree-grid/index.js +0 -1
- package/build-module/tree-grid/index.js.map +1 -1
- package/build-module/tree-select/index.js +0 -1
- package/build-module/tree-select/index.js.map +1 -1
- package/build-module/unit-control/index.js +0 -1
- package/build-module/unit-control/index.js.map +1 -1
- package/build-module/unit-control/index.native.js +0 -1
- package/build-module/unit-control/index.native.js.map +1 -1
- package/build-module/unit-control/unit-select-control.js +0 -1
- package/build-module/unit-control/unit-select-control.js.map +1 -1
- package/build-module/unit-control/utils.js +0 -1
- package/build-module/unit-control/utils.js.map +1 -1
- package/build-module/utils/get-valid-children.js +0 -1
- package/build-module/utils/get-valid-children.js.map +1 -1
- package/build-module/utils/hooks/use-animated-offset-rect.js +0 -1
- package/build-module/utils/hooks/use-animated-offset-rect.js.map +1 -1
- package/build-module/utils/hooks/use-cx.js +0 -1
- package/build-module/utils/hooks/use-cx.js.map +1 -1
- package/build-module/utils/math.js +0 -1
- package/build-module/utils/math.js.map +1 -1
- package/build-module/utils/rtl.js +0 -1
- package/build-module/utils/rtl.js.map +1 -1
- package/build-module/utils/values.js +0 -1
- package/build-module/utils/values.js.map +1 -1
- package/build-module/z-stack/component.js +0 -1
- package/build-module/z-stack/component.js.map +1 -1
- package/build-style/style-rtl.css +9 -6
- package/build-style/style.css +10 -6
- 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 +1 -1
- package/build-types/border-control/styles.d.ts +1 -1
- package/build-types/border-control/styles.d.ts.map +1 -1
- package/build-types/circular-option-picker/index.d.ts +1 -0
- package/build-types/circular-option-picker/index.d.ts.map +1 -1
- package/build-types/circular-option-picker/types.d.ts +11 -7
- package/build-types/circular-option-picker/types.d.ts.map +1 -1
- package/build-types/circular-option-picker/utils.d.ts +17 -0
- package/build-types/circular-option-picker/utils.d.ts.map +1 -0
- package/build-types/color-palette/index.d.ts.map +1 -1
- package/build-types/combobox-control/index.d.ts.map +1 -1
- package/build-types/combobox-control/stories/index.story.d.ts +4 -0
- package/build-types/combobox-control/stories/index.story.d.ts.map +1 -1
- package/build-types/combobox-control/types.d.ts +7 -0
- package/build-types/combobox-control/types.d.ts.map +1 -1
- package/build-types/duotone-picker/duotone-picker.d.ts.map +1 -1
- package/build-types/font-size-picker/font-size-picker-select.d.ts.map +1 -1
- package/build-types/font-size-picker/stories/index.story.d.ts.map +1 -1
- package/build-types/font-size-picker/types.d.ts +4 -0
- package/build-types/font-size-picker/types.d.ts.map +1 -1
- package/build-types/gradient-picker/index.d.ts.map +1 -1
- package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
- package/build-types/textarea-control/styles/textarea-control-styles.d.ts.map +1 -1
- package/package.json +19 -19
- package/src/border-box-control/test/index.tsx +1 -1
- package/src/border-control/border-control-dropdown/component.tsx +8 -12
- package/src/border-control/border-control-dropdown/hook.ts +3 -3
- package/src/border-control/styles.ts +4 -10
- package/src/border-control/test/index.js +1 -1
- package/src/circular-option-picker/README.md +13 -0
- package/src/circular-option-picker/circular-option-picker.tsx +1 -1
- package/src/circular-option-picker/index.tsx +1 -0
- package/src/circular-option-picker/stories/index.story.tsx +1 -1
- package/src/circular-option-picker/test/index.tsx +1 -0
- package/src/circular-option-picker/types.ts +11 -10
- package/src/circular-option-picker/utils.tsx +27 -0
- package/src/color-palette/index.tsx +11 -29
- package/src/color-palette/test/index.tsx +1 -1
- package/src/combobox-control/README.md +9 -1
- package/src/combobox-control/index.tsx +4 -1
- package/src/combobox-control/style.scss +4 -1
- package/src/combobox-control/types.ts +7 -0
- package/src/duotone-picker/duotone-picker.tsx +10 -28
- package/src/font-size-picker/README.md +2 -0
- package/src/font-size-picker/font-size-picker-select.tsx +4 -23
- package/src/font-size-picker/stories/index.story.tsx +4 -0
- package/src/font-size-picker/test/index.tsx +2 -24
- package/src/font-size-picker/types.ts +4 -0
- package/src/gradient-picker/index.tsx +10 -28
- package/src/input-control/styles/input-control-styles.tsx +9 -1
- package/src/mobile/bottom-sheet/switch-cell.native.js +1 -1
- package/src/notice/README.md +1 -1
- package/src/notice/style.scss +1 -0
- package/src/number-control/README.md +1 -1
- package/src/number-control/index.tsx +2 -2
- package/src/text-control/style.scss +6 -0
- package/src/textarea-control/styles/textarea-control-styles.ts +0 -2
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -157,7 +157,7 @@ const BorderControlDropdown = (
|
|
|
157
157
|
onStyleChange,
|
|
158
158
|
popoverContentClassName,
|
|
159
159
|
popoverControlsClassName,
|
|
160
|
-
|
|
160
|
+
resetButtonWrapperClassName,
|
|
161
161
|
size,
|
|
162
162
|
__unstablePopoverProps,
|
|
163
163
|
...otherProps
|
|
@@ -173,7 +173,7 @@ const BorderControlDropdown = (
|
|
|
173
173
|
enableStyle
|
|
174
174
|
);
|
|
175
175
|
|
|
176
|
-
const
|
|
176
|
+
const enableResetButton = color || ( style && style !== 'none' );
|
|
177
177
|
const dropdownPosition = __experimentalIsRenderedInSidebar
|
|
178
178
|
? 'bottom left'
|
|
179
179
|
: undefined;
|
|
@@ -199,9 +199,7 @@ const BorderControlDropdown = (
|
|
|
199
199
|
</Button>
|
|
200
200
|
);
|
|
201
201
|
|
|
202
|
-
const renderContent: DropdownComponentProps[ 'renderContent' ] = (
|
|
203
|
-
onClose,
|
|
204
|
-
} ) => (
|
|
202
|
+
const renderContent: DropdownComponentProps[ 'renderContent' ] = () => (
|
|
205
203
|
<>
|
|
206
204
|
<DropdownContentWrapper paddingSize="medium">
|
|
207
205
|
<VStack className={ popoverControlsClassName } spacing={ 6 }>
|
|
@@ -224,22 +222,20 @@ const BorderControlDropdown = (
|
|
|
224
222
|
/>
|
|
225
223
|
) }
|
|
226
224
|
</VStack>
|
|
227
|
-
|
|
228
|
-
{ showResetButton && (
|
|
229
|
-
<DropdownContentWrapper paddingSize="none">
|
|
225
|
+
<div className={ resetButtonWrapperClassName }>
|
|
230
226
|
<Button
|
|
231
|
-
className={ resetButtonClassName }
|
|
232
227
|
variant="tertiary"
|
|
233
228
|
onClick={ () => {
|
|
234
229
|
onReset();
|
|
235
|
-
onClose();
|
|
236
230
|
} }
|
|
231
|
+
disabled={ ! enableResetButton }
|
|
232
|
+
accessibleWhenDisabled
|
|
237
233
|
__next40pxDefaultSize
|
|
238
234
|
>
|
|
239
235
|
{ __( 'Reset' ) }
|
|
240
236
|
</Button>
|
|
241
|
-
</
|
|
242
|
-
|
|
237
|
+
</div>
|
|
238
|
+
</DropdownContentWrapper>
|
|
243
239
|
</>
|
|
244
240
|
);
|
|
245
241
|
|
|
@@ -76,8 +76,8 @@ export function useBorderControlDropdown(
|
|
|
76
76
|
return cx( styles.borderControlPopoverContent );
|
|
77
77
|
}, [ cx ] );
|
|
78
78
|
|
|
79
|
-
const
|
|
80
|
-
return cx( styles.
|
|
79
|
+
const resetButtonWrapperClassName = useMemo( () => {
|
|
80
|
+
return cx( styles.resetButtonWrapper );
|
|
81
81
|
}, [ cx ] );
|
|
82
82
|
|
|
83
83
|
return {
|
|
@@ -94,7 +94,7 @@ export function useBorderControlDropdown(
|
|
|
94
94
|
onReset,
|
|
95
95
|
popoverContentClassName,
|
|
96
96
|
popoverControlsClassName,
|
|
97
|
-
|
|
97
|
+
resetButtonWrapperClassName,
|
|
98
98
|
size,
|
|
99
99
|
__experimentalIsRenderedInSidebar,
|
|
100
100
|
};
|
|
@@ -147,16 +147,10 @@ export const borderControlPopoverControls = css`
|
|
|
147
147
|
export const borderControlPopoverContent = css``;
|
|
148
148
|
export const borderColorIndicator = css``;
|
|
149
149
|
|
|
150
|
-
export const
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
/* Override button component styling */
|
|
155
|
-
&& {
|
|
156
|
-
border-top: ${ CONFIG.borderWidth } solid ${ COLORS.gray[ 400 ] };
|
|
157
|
-
border-top-left-radius: 0;
|
|
158
|
-
border-top-right-radius: 0;
|
|
159
|
-
}
|
|
150
|
+
export const resetButtonWrapper = css`
|
|
151
|
+
display: flex;
|
|
152
|
+
justify-content: flex-end;
|
|
153
|
+
margin-top: 12px;
|
|
160
154
|
`;
|
|
161
155
|
|
|
162
156
|
export const borderSlider = () => css`
|
|
@@ -138,7 +138,7 @@ describe( 'BorderControl', () => {
|
|
|
138
138
|
|
|
139
139
|
const customColorPicker = getButton( /Custom color picker/ );
|
|
140
140
|
const circularOptionPicker = screen.getByRole( 'listbox', {
|
|
141
|
-
name: 'Custom color picker
|
|
141
|
+
name: 'Custom color picker',
|
|
142
142
|
} );
|
|
143
143
|
const colorSwatchButtons =
|
|
144
144
|
within( circularOptionPicker ).getAllByRole( 'option' );
|
|
@@ -93,6 +93,19 @@ Prevents keyboard interaction from wrapping around. Only used when `asButtons` i
|
|
|
93
93
|
- Required: No
|
|
94
94
|
- Default: `true`
|
|
95
95
|
|
|
96
|
+
### `aria-labelledby`: `string`
|
|
97
|
+
|
|
98
|
+
The ID reference list of one or more elements that label the wrapper element.
|
|
99
|
+
|
|
100
|
+
- Required: No
|
|
101
|
+
|
|
102
|
+
### `aria-label`: `string`
|
|
103
|
+
|
|
104
|
+
The label for the wrapper element. Not used if an 'aria-labelledby' is provided.
|
|
105
|
+
|
|
106
|
+
- Required: No
|
|
107
|
+
- Default: `Custom color picker`
|
|
108
|
+
|
|
96
109
|
## Subcomponents
|
|
97
110
|
|
|
98
111
|
### `CircularOptionPicker.ButtonAction`
|
|
@@ -132,7 +132,7 @@ function ButtonsCircularOptionPicker(
|
|
|
132
132
|
);
|
|
133
133
|
|
|
134
134
|
return (
|
|
135
|
-
<div { ...additionalProps } id={ baseId }>
|
|
135
|
+
<div { ...additionalProps } role="group" id={ baseId }>
|
|
136
136
|
<CircularOptionPickerContext.Provider value={ contextValue }>
|
|
137
137
|
{ options }
|
|
138
138
|
{ children }
|
|
@@ -131,7 +131,7 @@ WithLoopingDisabled.parameters = {
|
|
|
131
131
|
docs: {
|
|
132
132
|
source: {
|
|
133
133
|
code: `<CircularOptionPicker
|
|
134
|
-
|
|
134
|
+
'aria-label': 'Circular Option Picker',
|
|
135
135
|
loop={false}
|
|
136
136
|
options={<DefaultOptions />}
|
|
137
137
|
/>`,
|
|
@@ -57,6 +57,7 @@ describe( 'CircularOptionPicker', () => {
|
|
|
57
57
|
|
|
58
58
|
expect( screen.queryByRole( 'listbox' ) ).not.toBeInTheDocument();
|
|
59
59
|
expect( screen.queryByRole( 'option' ) ).not.toBeInTheDocument();
|
|
60
|
+
expect( screen.getByRole( 'group' ) ).toBeInTheDocument();
|
|
60
61
|
expect( screen.getByRole( 'button' ) ).toBeInTheDocument();
|
|
61
62
|
} );
|
|
62
63
|
} );
|
|
@@ -40,6 +40,16 @@ type CommonCircularOptionPickerProps = {
|
|
|
40
40
|
* The child elements.
|
|
41
41
|
*/
|
|
42
42
|
children?: ReactNode;
|
|
43
|
+
/**
|
|
44
|
+
* The ID reference list of one or more elements that label the wrapper
|
|
45
|
+
* element.
|
|
46
|
+
*/
|
|
47
|
+
'aria-labelledby'?: string;
|
|
48
|
+
/**
|
|
49
|
+
* The label for the wrapper element. Defaults to 'Custom color picker'. Not
|
|
50
|
+
* used if an 'aria-labelledby' is provided.
|
|
51
|
+
*/
|
|
52
|
+
'aria-label'?: string;
|
|
43
53
|
};
|
|
44
54
|
|
|
45
55
|
type WithBaseId = {
|
|
@@ -59,16 +69,7 @@ type FullListboxCircularOptionPickerProps = CommonCircularOptionPickerProps & {
|
|
|
59
69
|
* @default true
|
|
60
70
|
*/
|
|
61
71
|
loop?: boolean;
|
|
62
|
-
}
|
|
63
|
-
| {
|
|
64
|
-
'aria-label': string;
|
|
65
|
-
'aria-labelledby'?: never;
|
|
66
|
-
}
|
|
67
|
-
| {
|
|
68
|
-
'aria-label'?: never;
|
|
69
|
-
'aria-labelledby': string;
|
|
70
|
-
}
|
|
71
|
-
);
|
|
72
|
+
};
|
|
72
73
|
|
|
73
74
|
export type ListboxCircularOptionPickerProps = WithBaseId &
|
|
74
75
|
Omit< FullListboxCircularOptionPickerProps, 'asButtons' >;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { __ } from '@wordpress/i18n';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Computes the common props for the CircularOptionPicker.
|
|
8
|
+
*/
|
|
9
|
+
export function getComputeCircularOptionPickerCommonProps(
|
|
10
|
+
asButtons?: boolean,
|
|
11
|
+
loop?: boolean,
|
|
12
|
+
ariaLabel?: string,
|
|
13
|
+
ariaLabelledby?: string
|
|
14
|
+
) {
|
|
15
|
+
const metaProps = asButtons
|
|
16
|
+
? { asButtons: true }
|
|
17
|
+
: { asButtons: false, loop };
|
|
18
|
+
|
|
19
|
+
const labelProps = {
|
|
20
|
+
'aria-labelledby': ariaLabelledby,
|
|
21
|
+
'aria-label': ariaLabelledby
|
|
22
|
+
? undefined
|
|
23
|
+
: ariaLabel || __( 'Custom color picker' ),
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
return { metaProps, labelProps };
|
|
27
|
+
}
|
|
@@ -19,7 +19,9 @@ import { useCallback, useMemo, useState, forwardRef } from '@wordpress/element';
|
|
|
19
19
|
*/
|
|
20
20
|
import Dropdown from '../dropdown';
|
|
21
21
|
import { ColorPicker } from '../color-picker';
|
|
22
|
-
import CircularOptionPicker
|
|
22
|
+
import CircularOptionPicker, {
|
|
23
|
+
getComputeCircularOptionPickerCommonProps,
|
|
24
|
+
} from '../circular-option-picker';
|
|
23
25
|
import { VStack } from '../v-stack';
|
|
24
26
|
import { Truncate } from '../truncate';
|
|
25
27
|
import { ColorHeading } from './styles';
|
|
@@ -233,7 +235,7 @@ function UnforwardedColorPalette(
|
|
|
233
235
|
buttonLabelName,
|
|
234
236
|
displayValue
|
|
235
237
|
)
|
|
236
|
-
: __( 'Custom color picker
|
|
238
|
+
: __( 'Custom color picker' );
|
|
237
239
|
|
|
238
240
|
const paletteCommonProps = {
|
|
239
241
|
clearColor,
|
|
@@ -251,33 +253,12 @@ function UnforwardedColorPalette(
|
|
|
251
253
|
</CircularOptionPicker.ButtonAction>
|
|
252
254
|
);
|
|
253
255
|
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
metaProps = { asButtons: true };
|
|
261
|
-
} else {
|
|
262
|
-
const _metaProps: { asButtons: false; loop?: boolean } = {
|
|
263
|
-
asButtons: false,
|
|
264
|
-
loop,
|
|
265
|
-
};
|
|
266
|
-
|
|
267
|
-
if ( ariaLabel ) {
|
|
268
|
-
metaProps = { ..._metaProps, 'aria-label': ariaLabel };
|
|
269
|
-
} else if ( ariaLabelledby ) {
|
|
270
|
-
metaProps = {
|
|
271
|
-
..._metaProps,
|
|
272
|
-
'aria-labelledby': ariaLabelledby,
|
|
273
|
-
};
|
|
274
|
-
} else {
|
|
275
|
-
metaProps = {
|
|
276
|
-
..._metaProps,
|
|
277
|
-
'aria-label': __( 'Custom color picker.' ),
|
|
278
|
-
};
|
|
279
|
-
}
|
|
280
|
-
}
|
|
256
|
+
const { metaProps, labelProps } = getComputeCircularOptionPickerCommonProps(
|
|
257
|
+
asButtons,
|
|
258
|
+
loop,
|
|
259
|
+
ariaLabel,
|
|
260
|
+
ariaLabelledby
|
|
261
|
+
);
|
|
281
262
|
|
|
282
263
|
return (
|
|
283
264
|
<VStack spacing={ 3 } ref={ forwardedRef } { ...additionalProps }>
|
|
@@ -335,6 +316,7 @@ function UnforwardedColorPalette(
|
|
|
335
316
|
{ ( colors.length > 0 || actions ) && (
|
|
336
317
|
<CircularOptionPicker
|
|
337
318
|
{ ...metaProps }
|
|
319
|
+
{ ...labelProps }
|
|
338
320
|
actions={ actions }
|
|
339
321
|
options={
|
|
340
322
|
hasMultipleColorOrigins ? (
|
|
@@ -258,7 +258,7 @@ describe( 'ColorPalette', () => {
|
|
|
258
258
|
expect( screen.queryByText( colorCode ) ).not.toBeInTheDocument();
|
|
259
259
|
expect(
|
|
260
260
|
screen.getByRole( 'button', {
|
|
261
|
-
name: /^Custom color picker
|
|
261
|
+
name: /^Custom color picker$/,
|
|
262
262
|
} )
|
|
263
263
|
).toBeInTheDocument();
|
|
264
264
|
} );
|
|
@@ -39,6 +39,7 @@ function MyComboboxControl() {
|
|
|
39
39
|
label="Font Size"
|
|
40
40
|
value={ fontSize }
|
|
41
41
|
onChange={ setFontSize }
|
|
42
|
+
isLoading={ isLoading }
|
|
42
43
|
options={ filteredOptions }
|
|
43
44
|
onFilterValueChange={ ( inputValue ) =>
|
|
44
45
|
setFilteredOptions(
|
|
@@ -112,13 +113,20 @@ If the control is clicked, the dropdown will expand regardless of this prop.
|
|
|
112
113
|
- Required: No
|
|
113
114
|
- Default: `true`
|
|
114
115
|
|
|
115
|
-
|
|
116
|
+
#### placeholder
|
|
116
117
|
|
|
117
118
|
If passed, the combobox input will show a placeholder string if no values are present.
|
|
118
119
|
|
|
119
120
|
- Type: `string`
|
|
120
121
|
- Required: No
|
|
121
122
|
|
|
123
|
+
#### isLoading
|
|
124
|
+
|
|
125
|
+
Show a spinner (and hide the suggestions dropdown) while data about the matching suggestions (ie the `options` prop) is loading
|
|
126
|
+
|
|
127
|
+
- Type: `Boolean`
|
|
128
|
+
- Required: No
|
|
129
|
+
|
|
122
130
|
#### __experimentalRenderItem
|
|
123
131
|
|
|
124
132
|
Custom renderer invoked for each option in the suggestion list. The render prop receives as its argument an object containing, under the `item` key, the single option's data (directly from the array of data passed to the `options` prop).
|
|
@@ -35,6 +35,7 @@ import type { TokenInputProps } from '../form-token-field/types';
|
|
|
35
35
|
import { useDeprecated36pxDefaultSizeProp } from '../utils/use-deprecated-props';
|
|
36
36
|
import { withIgnoreIMEEvents } from '../utils/with-ignore-ime-events';
|
|
37
37
|
import { maybeWarnDeprecated36pxSize } from '../utils/deprecated-36px-size';
|
|
38
|
+
import Spinner from '../spinner';
|
|
38
39
|
|
|
39
40
|
const noop = () => {};
|
|
40
41
|
|
|
@@ -126,6 +127,7 @@ function ComboboxControl( props: ComboboxControlProps ) {
|
|
|
126
127
|
help,
|
|
127
128
|
allowReset = true,
|
|
128
129
|
className,
|
|
130
|
+
isLoading = false,
|
|
129
131
|
messages = {
|
|
130
132
|
selected: __( 'Item selected.' ),
|
|
131
133
|
},
|
|
@@ -362,6 +364,7 @@ function ComboboxControl( props: ComboboxControlProps ) {
|
|
|
362
364
|
onChange={ onInputChange }
|
|
363
365
|
/>
|
|
364
366
|
</FlexBlock>
|
|
367
|
+
{ isLoading && <Spinner /> }
|
|
365
368
|
{ allowReset && (
|
|
366
369
|
<Button
|
|
367
370
|
size="small"
|
|
@@ -375,7 +378,7 @@ function ComboboxControl( props: ComboboxControlProps ) {
|
|
|
375
378
|
/>
|
|
376
379
|
) }
|
|
377
380
|
</InputWrapperFlex>
|
|
378
|
-
{ isExpanded && (
|
|
381
|
+
{ isExpanded && ! isLoading && (
|
|
379
382
|
<SuggestionsList
|
|
380
383
|
instanceId={ instanceId }
|
|
381
384
|
// The empty string for `value` here is not actually used, but is
|
|
@@ -86,4 +86,11 @@ export type ComboboxControlProps = Pick<
|
|
|
86
86
|
* If passed, the combobox input will show a placeholder string if no values are present.
|
|
87
87
|
*/
|
|
88
88
|
placeholder?: string;
|
|
89
|
+
/**
|
|
90
|
+
* Show a spinner (and hide the suggestions dropdown) while data
|
|
91
|
+
* about the matching suggestions (ie the `options` prop) is loading
|
|
92
|
+
*
|
|
93
|
+
* @default false
|
|
94
|
+
*/
|
|
95
|
+
isLoading?: boolean;
|
|
89
96
|
};
|
|
@@ -13,7 +13,9 @@ import { __, sprintf } from '@wordpress/i18n';
|
|
|
13
13
|
* Internal dependencies
|
|
14
14
|
*/
|
|
15
15
|
import ColorListPicker from './color-list-picker';
|
|
16
|
-
import CircularOptionPicker
|
|
16
|
+
import CircularOptionPicker, {
|
|
17
|
+
getComputeCircularOptionPickerCommonProps,
|
|
18
|
+
} from '../circular-option-picker';
|
|
17
19
|
import { VStack } from '../v-stack';
|
|
18
20
|
|
|
19
21
|
import CustomDuotoneBar from './custom-duotone-bar';
|
|
@@ -127,33 +129,12 @@ function DuotonePicker( {
|
|
|
127
129
|
);
|
|
128
130
|
} );
|
|
129
131
|
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
metaProps = { asButtons: true };
|
|
137
|
-
} else {
|
|
138
|
-
const _metaProps: { asButtons: false; loop?: boolean } = {
|
|
139
|
-
asButtons: false,
|
|
140
|
-
loop,
|
|
141
|
-
};
|
|
142
|
-
|
|
143
|
-
if ( ariaLabel ) {
|
|
144
|
-
metaProps = { ..._metaProps, 'aria-label': ariaLabel };
|
|
145
|
-
} else if ( ariaLabelledby ) {
|
|
146
|
-
metaProps = {
|
|
147
|
-
..._metaProps,
|
|
148
|
-
'aria-labelledby': ariaLabelledby,
|
|
149
|
-
};
|
|
150
|
-
} else {
|
|
151
|
-
metaProps = {
|
|
152
|
-
..._metaProps,
|
|
153
|
-
'aria-label': __( 'Custom color picker.' ),
|
|
154
|
-
};
|
|
155
|
-
}
|
|
156
|
-
}
|
|
132
|
+
const { metaProps, labelProps } = getComputeCircularOptionPickerCommonProps(
|
|
133
|
+
asButtons,
|
|
134
|
+
loop,
|
|
135
|
+
ariaLabel,
|
|
136
|
+
ariaLabelledby
|
|
137
|
+
);
|
|
157
138
|
|
|
158
139
|
const options = unsetable
|
|
159
140
|
? [ unsetOption, ...duotoneOptions ]
|
|
@@ -163,6 +144,7 @@ function DuotonePicker( {
|
|
|
163
144
|
<CircularOptionPicker
|
|
164
145
|
{ ...otherProps }
|
|
165
146
|
{ ...metaProps }
|
|
147
|
+
{ ...labelProps }
|
|
166
148
|
options={ options }
|
|
167
149
|
actions={
|
|
168
150
|
!! clearable && (
|
|
@@ -99,6 +99,8 @@ Available units for custom font size selection.
|
|
|
99
99
|
|
|
100
100
|
The current font size value.
|
|
101
101
|
|
|
102
|
+
**Note**: For the `units` property to work, the current font size value must be specified as strings with units (e.g., `'12px'` instead of `12`). When the font size is provided as a number, the component operates in "unitless mode" where the `units` property has no effect.
|
|
103
|
+
|
|
102
104
|
- Required: No
|
|
103
105
|
|
|
104
106
|
### `withReset`: `boolean`
|
|
@@ -20,21 +20,8 @@ const DEFAULT_OPTION: FontSizePickerSelectOption = {
|
|
|
20
20
|
value: undefined,
|
|
21
21
|
};
|
|
22
22
|
|
|
23
|
-
const CUSTOM_OPTION: FontSizePickerSelectOption = {
|
|
24
|
-
key: 'custom',
|
|
25
|
-
name: __( 'Custom' ),
|
|
26
|
-
};
|
|
27
|
-
|
|
28
23
|
const FontSizePickerSelect = ( props: FontSizePickerSelectProps ) => {
|
|
29
|
-
const {
|
|
30
|
-
__next40pxDefaultSize,
|
|
31
|
-
fontSizes,
|
|
32
|
-
value,
|
|
33
|
-
disableCustomFontSizes,
|
|
34
|
-
size,
|
|
35
|
-
onChange,
|
|
36
|
-
onSelectCustom,
|
|
37
|
-
} = props;
|
|
24
|
+
const { __next40pxDefaultSize, fontSizes, value, size, onChange } = props;
|
|
38
25
|
|
|
39
26
|
const areAllSizesSameUnit = !! getCommonSizeUnit( fontSizes );
|
|
40
27
|
|
|
@@ -59,12 +46,10 @@ const FontSizePickerSelect = ( props: FontSizePickerSelectProps ) => {
|
|
|
59
46
|
hint,
|
|
60
47
|
};
|
|
61
48
|
} ),
|
|
62
|
-
...( disableCustomFontSizes ? [] : [ CUSTOM_OPTION ] ),
|
|
63
49
|
];
|
|
64
50
|
|
|
65
|
-
const selectedOption =
|
|
66
|
-
|
|
67
|
-
: DEFAULT_OPTION;
|
|
51
|
+
const selectedOption =
|
|
52
|
+
options.find( ( option ) => option.value === value ) ?? DEFAULT_OPTION;
|
|
68
53
|
|
|
69
54
|
return (
|
|
70
55
|
<CustomSelectControl
|
|
@@ -86,11 +71,7 @@ const FontSizePickerSelect = ( props: FontSizePickerSelectProps ) => {
|
|
|
86
71
|
}: {
|
|
87
72
|
selectedItem: FontSizePickerSelectOption;
|
|
88
73
|
} ) => {
|
|
89
|
-
|
|
90
|
-
onSelectCustom();
|
|
91
|
-
} else {
|
|
92
|
-
onChange( selectedItem.value );
|
|
93
|
-
}
|
|
74
|
+
onChange( selectedItem.value );
|
|
94
75
|
} }
|
|
95
76
|
size={ size }
|
|
96
77
|
/>
|
|
@@ -18,6 +18,10 @@ const meta: Meta< typeof FontSizePicker > = {
|
|
|
18
18
|
component: FontSizePicker,
|
|
19
19
|
argTypes: {
|
|
20
20
|
value: { control: false },
|
|
21
|
+
units: {
|
|
22
|
+
control: 'inline-check',
|
|
23
|
+
options: [ 'px', 'em', 'rem', 'vw', 'vh' ],
|
|
24
|
+
},
|
|
21
25
|
},
|
|
22
26
|
parameters: {
|
|
23
27
|
actions: { argTypesRegex: '^on.*' },
|
|
@@ -127,7 +127,7 @@ describe( 'FontSizePicker', () => {
|
|
|
127
127
|
screen.getByRole( 'combobox', { name: 'Font size' } )
|
|
128
128
|
);
|
|
129
129
|
const options = screen.getAllByRole( 'option' );
|
|
130
|
-
expect( options ).toHaveLength(
|
|
130
|
+
expect( options ).toHaveLength( 7 );
|
|
131
131
|
expect( options[ 0 ] ).toHaveAccessibleName( 'Default' );
|
|
132
132
|
expect( options[ 1 ] ).toHaveAccessibleName( 'Tiny 8' );
|
|
133
133
|
expect( options[ 2 ] ).toHaveAccessibleName( 'Small 12' );
|
|
@@ -135,7 +135,6 @@ describe( 'FontSizePicker', () => {
|
|
|
135
135
|
expect( options[ 4 ] ).toHaveAccessibleName( 'Large 20' );
|
|
136
136
|
expect( options[ 5 ] ).toHaveAccessibleName( 'Extra Large 30' );
|
|
137
137
|
expect( options[ 6 ] ).toHaveAccessibleName( 'xx-large 40' );
|
|
138
|
-
expect( options[ 7 ] ).toHaveAccessibleName( 'Custom' );
|
|
139
138
|
} );
|
|
140
139
|
|
|
141
140
|
test.each( [
|
|
@@ -186,7 +185,6 @@ describe( 'FontSizePicker', () => {
|
|
|
186
185
|
}
|
|
187
186
|
);
|
|
188
187
|
|
|
189
|
-
commonSelectTests( fontSizes );
|
|
190
188
|
commonTests( fontSizes );
|
|
191
189
|
} );
|
|
192
190
|
|
|
@@ -231,7 +229,7 @@ describe( 'FontSizePicker', () => {
|
|
|
231
229
|
screen.getByRole( 'combobox', { name: 'Font size' } )
|
|
232
230
|
);
|
|
233
231
|
const options = screen.getAllByRole( 'option' );
|
|
234
|
-
expect( options ).toHaveLength(
|
|
232
|
+
expect( options ).toHaveLength( 7 );
|
|
235
233
|
expect( options[ 0 ] ).toHaveAccessibleName( 'Default' );
|
|
236
234
|
expect( options[ 1 ] ).toHaveAccessibleName( 'Tiny 8px' );
|
|
237
235
|
expect( options[ 2 ] ).toHaveAccessibleName( 'Small 1em' );
|
|
@@ -239,7 +237,6 @@ describe( 'FontSizePicker', () => {
|
|
|
239
237
|
expect( options[ 4 ] ).toHaveAccessibleName( 'Large' );
|
|
240
238
|
expect( options[ 5 ] ).toHaveAccessibleName( 'Extra Large 30px' );
|
|
241
239
|
expect( options[ 6 ] ).toHaveAccessibleName( 'xx-large 40px' );
|
|
242
|
-
expect( options[ 7 ] ).toHaveAccessibleName( 'Custom' );
|
|
243
240
|
} );
|
|
244
241
|
|
|
245
242
|
test.each( [
|
|
@@ -327,7 +324,6 @@ describe( 'FontSizePicker', () => {
|
|
|
327
324
|
}
|
|
328
325
|
);
|
|
329
326
|
|
|
330
|
-
commonSelectTests( fontSizes );
|
|
331
327
|
commonTests( fontSizes );
|
|
332
328
|
} );
|
|
333
329
|
|
|
@@ -523,24 +519,6 @@ describe( 'FontSizePicker', () => {
|
|
|
523
519
|
);
|
|
524
520
|
}
|
|
525
521
|
|
|
526
|
-
function commonSelectTests( fontSizes: FontSize[] ) {
|
|
527
|
-
it( 'shows custom input when Custom is selected', async () => {
|
|
528
|
-
const user = userEvent.setup();
|
|
529
|
-
const onChange = jest.fn();
|
|
530
|
-
await render(
|
|
531
|
-
<FontSizePicker fontSizes={ fontSizes } onChange={ onChange } />
|
|
532
|
-
);
|
|
533
|
-
await user.click(
|
|
534
|
-
screen.getByRole( 'combobox', { name: 'Font size' } )
|
|
535
|
-
);
|
|
536
|
-
await user.click(
|
|
537
|
-
screen.getByRole( 'option', { name: 'Custom' } )
|
|
538
|
-
);
|
|
539
|
-
expect( screen.getByLabelText( 'Custom' ) ).toBeVisible();
|
|
540
|
-
expect( onChange ).not.toHaveBeenCalled();
|
|
541
|
-
} );
|
|
542
|
-
}
|
|
543
|
-
|
|
544
522
|
function commonTests( fontSizes: FontSize[] ) {
|
|
545
523
|
it( 'shows custom input when value is unknown', async () => {
|
|
546
524
|
await render(
|
|
@@ -34,6 +34,10 @@ export type FontSizePickerProps = {
|
|
|
34
34
|
units?: string[];
|
|
35
35
|
/**
|
|
36
36
|
* The current font size value.
|
|
37
|
+
*
|
|
38
|
+
* Note: For the `units` property to work, the current font size value must be specified
|
|
39
|
+
* as strings with units (e.g., '12px' instead of 12). When the font size is provided
|
|
40
|
+
* as a number, the component operates in "unitless mode" where the `units` property has no effect.
|
|
37
41
|
*/
|
|
38
42
|
value?: number | string;
|
|
39
43
|
/**
|
|
@@ -8,7 +8,9 @@ import { useCallback, useMemo } from '@wordpress/element';
|
|
|
8
8
|
/**
|
|
9
9
|
* Internal dependencies
|
|
10
10
|
*/
|
|
11
|
-
import CircularOptionPicker
|
|
11
|
+
import CircularOptionPicker, {
|
|
12
|
+
getComputeCircularOptionPickerCommonProps,
|
|
13
|
+
} from '../circular-option-picker';
|
|
12
14
|
import CustomGradientPicker from '../custom-gradient-picker';
|
|
13
15
|
import { VStack } from '../v-stack';
|
|
14
16
|
import { ColorHeading } from '../color-palette/styles';
|
|
@@ -128,37 +130,17 @@ function Component( props: PickerProps< any > ) {
|
|
|
128
130
|
<SingleOrigin { ...additionalProps } />
|
|
129
131
|
);
|
|
130
132
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
metaProps = { asButtons: true };
|
|
138
|
-
} else {
|
|
139
|
-
const _metaProps: { asButtons: false; loop?: boolean } = {
|
|
140
|
-
asButtons: false,
|
|
141
|
-
loop,
|
|
142
|
-
};
|
|
143
|
-
|
|
144
|
-
if ( ariaLabel ) {
|
|
145
|
-
metaProps = { ..._metaProps, 'aria-label': ariaLabel };
|
|
146
|
-
} else if ( ariaLabelledby ) {
|
|
147
|
-
metaProps = {
|
|
148
|
-
..._metaProps,
|
|
149
|
-
'aria-labelledby': ariaLabelledby,
|
|
150
|
-
};
|
|
151
|
-
} else {
|
|
152
|
-
metaProps = {
|
|
153
|
-
..._metaProps,
|
|
154
|
-
'aria-label': __( 'Custom color picker.' ),
|
|
155
|
-
};
|
|
156
|
-
}
|
|
157
|
-
}
|
|
133
|
+
const { metaProps, labelProps } = getComputeCircularOptionPickerCommonProps(
|
|
134
|
+
asButtons,
|
|
135
|
+
loop,
|
|
136
|
+
ariaLabel,
|
|
137
|
+
ariaLabelledby
|
|
138
|
+
);
|
|
158
139
|
|
|
159
140
|
return (
|
|
160
141
|
<CircularOptionPicker
|
|
161
142
|
{ ...metaProps }
|
|
143
|
+
{ ...labelProps }
|
|
162
144
|
actions={ actions }
|
|
163
145
|
options={ options }
|
|
164
146
|
/>
|