@wordpress/components 21.3.0 → 22.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 +107 -1
- package/build/angle-picker-control/index.js +4 -2
- package/build/angle-picker-control/index.js.map +1 -1
- package/build/autocomplete/autocompleter-ui.js +28 -2
- package/build/autocomplete/autocompleter-ui.js.map +1 -1
- package/build/autocomplete/index.js +7 -3
- package/build/autocomplete/index.js.map +1 -1
- package/build/border-box-control/border-box-control/component.js +63 -15
- package/build/border-box-control/border-box-control/component.js.map +1 -1
- package/build/border-box-control/border-box-control/hook.js +19 -3
- package/build/border-box-control/border-box-control/hook.js.map +1 -1
- package/build/border-box-control/border-box-control-linked-button/hook.js +3 -3
- package/build/border-box-control/border-box-control-linked-button/hook.js.map +1 -1
- package/build/border-box-control/border-box-control-split-controls/component.js +3 -3
- 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 +18 -11
- package/build/border-box-control/border-box-control-split-controls/hook.js.map +1 -1
- package/build/border-box-control/border-box-control-visualizer/hook.js +3 -7
- package/build/border-box-control/border-box-control-visualizer/hook.js.map +1 -1
- package/build/border-box-control/styles.js +34 -34
- package/build/border-box-control/styles.js.map +1 -1
- package/build/border-control/border-control/component.js +6 -5
- package/build/border-control/border-control/component.js.map +1 -1
- package/build/border-control/border-control/hook.js +22 -5
- package/build/border-control/border-control/hook.js.map +1 -1
- package/build/border-control/border-control-dropdown/component.js +1 -1
- package/build/border-control/border-control-dropdown/component.js.map +1 -1
- package/build/border-control/border-control-dropdown/hook.js +15 -7
- package/build/border-control/border-control-dropdown/hook.js.map +1 -1
- package/build/border-control/styles.js +19 -34
- package/build/border-control/styles.js.map +1 -1
- package/build/box-control/index.js +6 -2
- package/build/box-control/index.js.map +1 -1
- package/build/circular-option-picker/index.js +14 -14
- package/build/circular-option-picker/index.js.map +1 -1
- package/build/color-palette/index.js +84 -31
- package/build/color-palette/index.js.map +1 -1
- package/build/color-palette/styles.js +3 -3
- package/build/color-palette/styles.js.map +1 -1
- package/build/color-palette/types.js +6 -0
- package/build/color-palette/types.js.map +1 -0
- package/build/color-picker/input-with-slider.js +18 -4
- package/build/color-picker/input-with-slider.js.map +1 -1
- package/build/custom-gradient-picker/gradient-bar/index.js +1 -3
- package/build/custom-gradient-picker/gradient-bar/index.js.map +1 -1
- package/build/custom-select-control/index.js +12 -5
- package/build/custom-select-control/index.js.map +1 -1
- package/build/dashicon/index.js +17 -2
- package/build/dashicon/index.js.map +1 -1
- package/build/date-time/date-time/index.js +2 -0
- package/build/date-time/date-time/index.js.map +1 -1
- package/build/date-time/time/index.js +4 -4
- package/build/date-time/time/index.js.map +1 -1
- package/build/disabled/index.js +8 -1
- package/build/disabled/index.js.map +1 -1
- package/build/draggable/index.js +58 -38
- package/build/draggable/index.js.map +1 -1
- package/build/draggable/types.js +6 -0
- package/build/draggable/types.js.map +1 -0
- package/build/external-link/index.js +13 -2
- package/build/external-link/index.js.map +1 -1
- package/build/flex/flex/hook.js +2 -3
- package/build/flex/flex/hook.js.map +1 -1
- package/build/focal-point-picker/focal-point.js +2 -12
- package/build/focal-point-picker/focal-point.js.map +1 -1
- package/build/focal-point-picker/styles/focal-point-style.js +11 -51
- package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
- package/build/focusable-iframe/index.js +0 -1
- package/build/focusable-iframe/index.js.map +1 -1
- package/build/font-size-picker/constants.js +41 -0
- package/build/font-size-picker/constants.js.map +1 -0
- package/build/font-size-picker/font-size-picker-select.js +97 -0
- package/build/font-size-picker/font-size-picker-select.js.map +1 -0
- package/build/font-size-picker/font-size-picker-toggle-group.js +50 -0
- package/build/font-size-picker/font-size-picker-toggle-group.js.map +1 -0
- package/build/font-size-picker/index.js +86 -110
- package/build/font-size-picker/index.js.map +1 -1
- package/build/font-size-picker/utils.js +16 -109
- package/build/font-size-picker/utils.js.map +1 -1
- package/build/form-file-upload/index.js.map +1 -1
- package/build/form-token-field/index.js +9 -6
- package/build/form-token-field/index.js.map +1 -1
- package/build/higher-order/navigate-regions/index.js +3 -0
- package/build/higher-order/navigate-regions/index.js.map +1 -1
- package/build/higher-order/with-filters/index.js +1 -7
- package/build/higher-order/with-filters/index.js.map +1 -1
- package/build/icon/index.js +3 -2
- package/build/icon/index.js.map +1 -1
- package/build/index.js +15 -1
- package/build/index.js.map +1 -1
- package/build/input-control/index.js +2 -0
- package/build/input-control/index.js.map +1 -1
- package/build/input-control/input-base.js +1 -1
- package/build/input-control/input-base.js.map +1 -1
- package/build/input-control/styles/input-control-styles.js +21 -21
- package/build/input-control/styles/input-control-styles.js.map +1 -1
- package/build/isolated-event-container/index.js +5 -9
- package/build/isolated-event-container/index.js.map +1 -1
- package/build/item-group/styles.js +10 -10
- package/build/item-group/styles.js.map +1 -1
- package/build/menu-group/index.js +17 -3
- package/build/menu-group/index.js.map +1 -1
- package/build/menu-group/types.js +6 -0
- package/build/menu-group/types.js.map +1 -0
- package/build/navigator/navigator-screen/component.js +27 -17
- package/build/navigator/navigator-screen/component.js.map +1 -1
- package/build/number-control/index.js +82 -22
- package/build/number-control/index.js.map +1 -1
- package/build/number-control/styles/number-control-styles.js +36 -6
- package/build/number-control/styles/number-control-styles.js.map +1 -1
- package/build/palette-edit/index.js +3 -1
- package/build/palette-edit/index.js.map +1 -1
- package/build/popover/index.js +23 -33
- package/build/popover/index.js.map +1 -1
- package/build/radio-group/index.js +7 -1
- package/build/radio-group/index.js.map +1 -1
- package/build/{radio → radio-group/radio}/index.js +7 -1
- package/build/radio-group/radio/index.js.map +1 -0
- package/build/{radio-context → radio-group/radio-context}/index.js +0 -0
- package/build/radio-group/radio-context/index.js.map +1 -0
- package/build/range-control/styles/range-control-styles.js +47 -57
- package/build/range-control/styles/range-control-styles.js.map +1 -1
- package/build/slot-fill/bubbles-virtually/fill.js +9 -5
- package/build/slot-fill/bubbles-virtually/fill.js.map +1 -1
- package/build/slot-fill/bubbles-virtually/slot.js +13 -8
- package/build/slot-fill/bubbles-virtually/slot.js.map +1 -1
- package/build/slot-fill/bubbles-virtually/use-slot.js +15 -9
- package/build/slot-fill/bubbles-virtually/use-slot.js.map +1 -1
- package/build/slot-fill/fill.js +12 -4
- package/build/slot-fill/fill.js.map +1 -1
- package/build/slot-fill/use-slot.js +3 -1
- package/build/slot-fill/use-slot.js.map +1 -1
- package/build/snackbar/index.js +1 -1
- package/build/snackbar/index.js.map +1 -1
- package/build/spinner/styles.js +4 -4
- package/build/spinner/styles.js.map +1 -1
- package/build/tab-panel/index.js +4 -9
- package/build/tab-panel/index.js.map +1 -1
- package/build/text-control/index.js +0 -2
- package/build/text-control/index.js.map +1 -1
- package/build/toggle-control/index.js +15 -3
- package/build/toggle-control/index.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/as-button-group.js +90 -0
- package/build/toggle-group-control/toggle-group-control/as-button-group.js.map +1 -0
- package/build/toggle-group-control/toggle-group-control/as-radio-group.js +90 -0
- package/build/toggle-group-control/toggle-group-control/as-radio-group.js.map +1 -0
- package/build/toggle-group-control/toggle-group-control/component.js +22 -50
- package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/styles.js +13 -8
- package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control-option-base/component.js +39 -17
- package/build/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control-option-base/styles.js +23 -23
- package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
- package/build/toolbar-dropdown-menu/index.js +1 -1
- package/build/toolbar-dropdown-menu/index.js.map +1 -1
- package/build/tools-panel/styles.js +14 -14
- package/build/tools-panel/styles.js.map +1 -1
- package/build/tools-panel/tools-panel-item/hook.js +9 -5
- package/build/tools-panel/tools-panel-item/hook.js.map +1 -1
- package/build/ui/context/context-system-provider.js +9 -22
- package/build/ui/context/context-system-provider.js.map +1 -1
- package/build/unit-control/index.js +7 -9
- package/build/unit-control/index.js.map +1 -1
- package/build/unit-control/styles/unit-control-styles.js +15 -25
- package/build/unit-control/styles/unit-control-styles.js.map +1 -1
- package/build/utils/colors-values.js +3 -2
- package/build/utils/colors-values.js.map +1 -1
- package/build/utils/config-values.js +0 -1
- package/build/utils/config-values.js.map +1 -1
- package/build/utils/hooks/use-update-effect.js +5 -1
- package/build/utils/hooks/use-update-effect.js.map +1 -1
- package/build/utils/input/base.js +2 -2
- package/build/utils/input/base.js.map +1 -1
- package/build/view/index.js.map +1 -1
- package/build-module/angle-picker-control/index.js +3 -2
- package/build-module/angle-picker-control/index.js.map +1 -1
- package/build-module/autocomplete/autocompleter-ui.js +29 -3
- package/build-module/autocomplete/autocompleter-ui.js.map +1 -1
- package/build-module/autocomplete/index.js +7 -3
- package/build-module/autocomplete/index.js.map +1 -1
- package/build-module/border-box-control/border-box-control/component.js +61 -13
- 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 +19 -3
- package/build-module/border-box-control/border-box-control/hook.js.map +1 -1
- package/build-module/border-box-control/border-box-control-linked-button/hook.js +3 -3
- package/build-module/border-box-control/border-box-control-linked-button/hook.js.map +1 -1
- package/build-module/border-box-control/border-box-control-split-controls/component.js +3 -3
- 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 +19 -10
- package/build-module/border-box-control/border-box-control-split-controls/hook.js.map +1 -1
- package/build-module/border-box-control/border-box-control-visualizer/hook.js +4 -6
- package/build-module/border-box-control/border-box-control-visualizer/hook.js.map +1 -1
- package/build-module/border-box-control/styles.js +26 -28
- package/build-module/border-box-control/styles.js.map +1 -1
- package/build-module/border-control/border-control/component.js +6 -5
- package/build-module/border-control/border-control/component.js.map +1 -1
- package/build-module/border-control/border-control/hook.js +22 -5
- package/build-module/border-control/border-control/hook.js.map +1 -1
- package/build-module/border-control/border-control-dropdown/component.js +1 -1
- package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
- package/build-module/border-control/border-control-dropdown/hook.js +15 -7
- package/build-module/border-control/border-control-dropdown/hook.js.map +1 -1
- package/build-module/border-control/styles.js +20 -36
- package/build-module/border-control/styles.js.map +1 -1
- package/build-module/box-control/index.js +6 -2
- package/build-module/box-control/index.js.map +1 -1
- package/build-module/circular-option-picker/index.js +14 -14
- package/build-module/circular-option-picker/index.js.map +1 -1
- package/build-module/color-palette/index.js +82 -29
- package/build-module/color-palette/index.js.map +1 -1
- package/build-module/color-palette/styles.js +3 -3
- package/build-module/color-palette/styles.js.map +1 -1
- package/build-module/color-palette/types.js +2 -0
- package/build-module/color-palette/types.js.map +1 -0
- package/build-module/color-picker/input-with-slider.js +18 -4
- package/build-module/color-picker/input-with-slider.js.map +1 -1
- package/build-module/custom-gradient-picker/gradient-bar/index.js +1 -2
- package/build-module/custom-gradient-picker/gradient-bar/index.js.map +1 -1
- package/build-module/custom-select-control/index.js +12 -5
- package/build-module/custom-select-control/index.js.map +1 -1
- package/build-module/dashicon/index.js +17 -2
- package/build-module/dashicon/index.js.map +1 -1
- package/build-module/date-time/date-time/index.js +2 -0
- package/build-module/date-time/date-time/index.js.map +1 -1
- package/build-module/date-time/time/index.js +4 -4
- package/build-module/date-time/time/index.js.map +1 -1
- package/build-module/disabled/index.js +8 -1
- package/build-module/disabled/index.js.map +1 -1
- package/build-module/draggable/index.js +59 -38
- package/build-module/draggable/index.js.map +1 -1
- package/build-module/draggable/types.js +2 -0
- package/build-module/draggable/types.js.map +1 -0
- package/build-module/external-link/index.js +13 -2
- package/build-module/external-link/index.js.map +1 -1
- package/build-module/flex/flex/hook.js +2 -3
- package/build-module/flex/flex/hook.js.map +1 -1
- package/build-module/focal-point-picker/focal-point.js +3 -13
- package/build-module/focal-point-picker/focal-point.js.map +1 -1
- package/build-module/focal-point-picker/styles/focal-point-style.js +6 -52
- package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
- package/build-module/focusable-iframe/index.js +0 -1
- package/build-module/focusable-iframe/index.js.map +1 -1
- package/build-module/font-size-picker/constants.js +31 -0
- package/build-module/font-size-picker/constants.js.map +1 -0
- package/build-module/font-size-picker/font-size-picker-select.js +83 -0
- package/build-module/font-size-picker/font-size-picker-select.js.map +1 -0
- package/build-module/font-size-picker/font-size-picker-toggle-group.js +40 -0
- package/build-module/font-size-picker/font-size-picker-toggle-group.js.map +1 -0
- package/build-module/font-size-picker/index.js +88 -111
- package/build-module/font-size-picker/index.js.map +1 -1
- package/build-module/font-size-picker/utils.js +15 -105
- package/build-module/font-size-picker/utils.js.map +1 -1
- package/build-module/form-file-upload/index.js.map +1 -1
- package/build-module/form-token-field/index.js +9 -6
- package/build-module/form-token-field/index.js.map +1 -1
- package/build-module/higher-order/navigate-regions/index.js +3 -0
- package/build-module/higher-order/navigate-regions/index.js.map +1 -1
- package/build-module/higher-order/with-filters/index.js +1 -6
- package/build-module/higher-order/with-filters/index.js.map +1 -1
- package/build-module/icon/index.js +3 -2
- package/build-module/icon/index.js.map +1 -1
- package/build-module/index.js +3 -2
- package/build-module/index.js.map +1 -1
- package/build-module/input-control/index.js +2 -0
- package/build-module/input-control/index.js.map +1 -1
- package/build-module/input-control/input-base.js +1 -1
- package/build-module/input-control/input-base.js.map +1 -1
- package/build-module/input-control/styles/input-control-styles.js +21 -21
- package/build-module/input-control/styles/input-control-styles.js.map +1 -1
- package/build-module/isolated-event-container/index.js +7 -9
- package/build-module/isolated-event-container/index.js.map +1 -1
- package/build-module/item-group/styles.js +10 -10
- package/build-module/item-group/styles.js.map +1 -1
- package/build-module/menu-group/index.js +20 -2
- package/build-module/menu-group/index.js.map +1 -1
- package/build-module/menu-group/types.js +2 -0
- package/build-module/menu-group/types.js.map +1 -0
- package/build-module/navigator/navigator-screen/component.js +27 -7
- package/build-module/navigator/navigator-screen/component.js.map +1 -1
- package/build-module/number-control/index.js +81 -26
- package/build-module/number-control/index.js.map +1 -1
- package/build-module/number-control/styles/number-control-styles.js +30 -4
- package/build-module/number-control/styles/number-control-styles.js.map +1 -1
- package/build-module/palette-edit/index.js +3 -1
- package/build-module/palette-edit/index.js.map +1 -1
- package/build-module/popover/index.js +23 -33
- package/build-module/popover/index.js.map +1 -1
- package/build-module/radio-group/index.js +6 -1
- package/build-module/radio-group/index.js.map +1 -1
- package/build-module/{radio → radio-group/radio}/index.js +6 -1
- package/build-module/radio-group/radio/index.js.map +1 -0
- package/build-module/{radio-context → radio-group/radio-context}/index.js +0 -0
- package/build-module/radio-group/radio-context/index.js.map +1 -0
- package/build-module/range-control/styles/range-control-styles.js +47 -57
- package/build-module/range-control/styles/range-control-styles.js.map +1 -1
- package/build-module/slot-fill/bubbles-virtually/fill.js +9 -5
- package/build-module/slot-fill/bubbles-virtually/fill.js.map +1 -1
- package/build-module/slot-fill/bubbles-virtually/slot.js +13 -8
- package/build-module/slot-fill/bubbles-virtually/slot.js.map +1 -1
- package/build-module/slot-fill/bubbles-virtually/use-slot.js +15 -9
- package/build-module/slot-fill/bubbles-virtually/use-slot.js.map +1 -1
- package/build-module/slot-fill/fill.js +12 -4
- package/build-module/slot-fill/fill.js.map +1 -1
- package/build-module/slot-fill/use-slot.js +3 -1
- package/build-module/slot-fill/use-slot.js.map +1 -1
- package/build-module/snackbar/index.js +1 -1
- package/build-module/snackbar/index.js.map +1 -1
- package/build-module/spinner/styles.js +4 -4
- package/build-module/spinner/styles.js.map +1 -1
- package/build-module/tab-panel/index.js +5 -10
- package/build-module/tab-panel/index.js.map +1 -1
- package/build-module/text-control/index.js +0 -2
- package/build-module/text-control/index.js.map +1 -1
- package/build-module/toggle-control/index.js +15 -3
- package/build-module/toggle-control/index.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/as-button-group.js +76 -0
- package/build-module/toggle-group-control/toggle-group-control/as-button-group.js.map +1 -0
- package/build-module/toggle-group-control/toggle-group-control/as-radio-group.js +75 -0
- package/build-module/toggle-group-control/toggle-group-control/as-radio-group.js.map +1 -0
- package/build-module/toggle-group-control/toggle-group-control/component.js +20 -49
- package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/styles.js +13 -6
- package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control-option-base/component.js +39 -17
- package/build-module/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js +21 -18
- package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
- package/build-module/toolbar-dropdown-menu/index.js +1 -1
- package/build-module/toolbar-dropdown-menu/index.js.map +1 -1
- package/build-module/tools-panel/styles.js +14 -14
- package/build-module/tools-panel/styles.js.map +1 -1
- package/build-module/tools-panel/tools-panel-item/hook.js +9 -5
- package/build-module/tools-panel/tools-panel-item/hook.js.map +1 -1
- package/build-module/ui/context/context-system-provider.js +6 -20
- package/build-module/ui/context/context-system-provider.js.map +1 -1
- package/build-module/unit-control/index.js +8 -10
- package/build-module/unit-control/index.js.map +1 -1
- package/build-module/unit-control/styles/unit-control-styles.js +8 -24
- package/build-module/unit-control/styles/unit-control-styles.js.map +1 -1
- package/build-module/utils/colors-values.js +3 -2
- package/build-module/utils/colors-values.js.map +1 -1
- package/build-module/utils/config-values.js +0 -1
- package/build-module/utils/config-values.js.map +1 -1
- package/build-module/utils/hooks/use-update-effect.js +5 -1
- package/build-module/utils/hooks/use-update-effect.js.map +1 -1
- package/build-module/utils/input/base.js +2 -2
- package/build-module/utils/input/base.js.map +1 -1
- package/build-module/view/index.js.map +1 -1
- package/build-style/style-rtl.css +93 -85
- package/build-style/style.css +91 -83
- package/build-types/base-field/hook.d.ts +11 -11
- package/build-types/border-box-control/border-box-control/component.d.ts +55 -6
- 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 +18 -17
- 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/component.d.ts +4 -2
- package/build-types/border-box-control/border-box-control-linked-button/component.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts +12 -12
- package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control-split-controls/component.d.ts +3 -3
- 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 +17 -17
- 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/component.d.ts +3 -2
- package/build-types/border-box-control/border-box-control-visualizer/component.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts +12 -12
- package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts.map +1 -1
- package/build-types/border-box-control/stories/index.d.ts +17 -0
- package/build-types/border-box-control/stories/index.d.ts.map +1 -0
- package/build-types/border-box-control/styles.d.ts +7 -6
- package/build-types/border-box-control/styles.d.ts.map +1 -1
- package/build-types/border-box-control/types.d.ts +5 -42
- package/build-types/border-box-control/types.d.ts.map +1 -1
- package/build-types/border-control/border-control/component.d.ts +4 -2
- package/build-types/border-control/border-control/component.d.ts.map +1 -1
- package/build-types/border-control/border-control/hook.d.ts +18 -18
- package/build-types/border-control/border-control/hook.d.ts.map +1 -1
- package/build-types/border-control/border-control-dropdown/component.d.ts +3 -3
- 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 +16 -16
- 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 +11 -11
- package/build-types/border-control/stories/index.d.ts +24 -12
- package/build-types/border-control/stories/index.d.ts.map +1 -1
- package/build-types/border-control/styles.d.ts +3 -3
- package/build-types/border-control/styles.d.ts.map +1 -1
- package/build-types/border-control/types.d.ts +10 -53
- package/build-types/border-control/types.d.ts.map +1 -1
- package/build-types/card/card/hook.d.ts +12 -12
- package/build-types/card/card-body/hook.d.ts +12 -12
- package/build-types/card/card-divider/hook.d.ts +13 -13
- package/build-types/card/card-footer/hook.d.ts +12 -12
- package/build-types/card/card-header/hook.d.ts +12 -12
- package/build-types/card/card-media/hook.d.ts +12 -12
- package/build-types/card/stories/index.d.ts.map +1 -1
- package/build-types/circular-option-picker/index.d.ts +4 -24
- package/build-types/circular-option-picker/index.d.ts.map +1 -1
- package/build-types/color-palette/index.d.ts +43 -14
- package/build-types/color-palette/index.d.ts.map +1 -1
- package/build-types/color-palette/stories/index.d.ts +50 -0
- package/build-types/color-palette/stories/index.d.ts.map +1 -0
- package/build-types/color-palette/styles.d.ts +3 -2
- package/build-types/color-palette/styles.d.ts.map +1 -1
- package/build-types/color-palette/test/index.d.ts +2 -0
- package/build-types/color-palette/test/index.d.ts.map +1 -0
- package/build-types/color-palette/types.d.ts +90 -0
- package/build-types/color-palette/types.d.ts.map +1 -0
- package/build-types/color-picker/input-with-slider.d.ts.map +1 -1
- package/build-types/color-picker/styles.d.ts +5 -4
- package/build-types/color-picker/styles.d.ts.map +1 -1
- package/build-types/confirm-dialog/component.d.ts +4 -4
- package/build-types/custom-select-control/index.d.ts +1 -12
- package/build-types/custom-select-control/index.d.ts.map +1 -1
- package/build-types/custom-select-control/styles.d.ts +3 -1
- package/build-types/custom-select-control/styles.d.ts.map +1 -1
- package/build-types/dashicon/index.d.ts +6 -1
- package/build-types/dashicon/index.d.ts.map +1 -1
- package/build-types/date-time/date/styles.d.ts +3 -3
- package/build-types/date-time/date-time/index.d.ts +2 -0
- package/build-types/date-time/date-time/index.d.ts.map +1 -1
- package/build-types/date-time/date-time/styles.d.ts +3 -3
- package/build-types/date-time/stories/date-time.d.ts.map +1 -1
- package/build-types/date-time/time/styles.d.ts +8 -4
- package/build-types/date-time/time/styles.d.ts.map +1 -1
- package/build-types/date-time/types.d.ts +0 -16
- package/build-types/date-time/types.d.ts.map +1 -1
- package/build-types/disabled/index.d.ts +8 -1
- package/build-types/disabled/index.d.ts.map +1 -1
- package/build-types/draggable/index.d.ts +42 -66
- package/build-types/draggable/index.d.ts.map +1 -1
- package/build-types/draggable/stories/index.d.ts +12 -0
- package/build-types/draggable/stories/index.d.ts.map +1 -0
- package/build-types/draggable/types.d.ts +58 -0
- package/build-types/draggable/types.d.ts.map +1 -0
- package/build-types/elevation/hook.d.ts +12 -12
- package/build-types/external-link/index.d.ts.map +1 -1
- package/build-types/external-link/styles/external-link-styles.d.ts +1 -1
- package/build-types/external-link/test/index.d.ts +2 -0
- package/build-types/external-link/test/index.d.ts.map +1 -0
- package/build-types/flex/flex/hook.d.ts +12 -12
- package/build-types/flex/flex/hook.d.ts.map +1 -1
- package/build-types/flex/flex-block/hook.d.ts +12 -12
- package/build-types/flex/flex-item/hook.d.ts +12 -12
- package/build-types/focal-point-picker/focal-point.d.ts.map +1 -1
- package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts +2 -2
- package/build-types/focal-point-picker/styles/focal-point-style.d.ts +1 -12
- package/build-types/focal-point-picker/styles/focal-point-style.d.ts.map +1 -1
- package/build-types/focusable-iframe/index.d.ts.map +1 -1
- package/build-types/font-size-picker/constants.d.ts +15 -0
- package/build-types/font-size-picker/constants.d.ts.map +1 -0
- package/build-types/font-size-picker/font-size-picker-select.d.ts +5 -0
- package/build-types/font-size-picker/font-size-picker-select.d.ts.map +1 -0
- package/build-types/font-size-picker/font-size-picker-toggle-group.d.ts +5 -0
- package/build-types/font-size-picker/font-size-picker-toggle-group.d.ts.map +1 -0
- package/build-types/font-size-picker/index.d.ts.map +1 -1
- package/build-types/font-size-picker/types.d.ts +14 -14
- package/build-types/font-size-picker/types.d.ts.map +1 -1
- package/build-types/font-size-picker/utils.d.ts +6 -26
- package/build-types/font-size-picker/utils.d.ts.map +1 -1
- package/build-types/form-file-upload/index.d.ts.map +1 -1
- package/build-types/form-file-upload/types.d.ts +5 -4
- package/build-types/form-file-upload/types.d.ts.map +1 -1
- package/build-types/form-token-field/index.d.ts.map +1 -1
- package/build-types/grid/hook.d.ts +12 -12
- package/build-types/h-stack/component.d.ts +1 -1
- package/build-types/h-stack/hook.d.ts +12 -12
- package/build-types/heading/hook.d.ts +12 -12
- package/build-types/icon/index.d.ts +1 -1
- package/build-types/icon/index.d.ts.map +1 -1
- 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 +5 -2
- package/build-types/input-control/input-base.d.ts.map +1 -1
- package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
- package/build-types/input-control/types.d.ts +3 -8
- package/build-types/input-control/types.d.ts.map +1 -1
- package/build-types/input-control/utils.d.ts +1 -1
- package/build-types/isolated-event-container/index.d.ts +3 -2
- package/build-types/isolated-event-container/index.d.ts.map +1 -1
- package/build-types/item-group/item/hook.d.ts +13 -13
- package/build-types/item-group/item-group/hook.d.ts +13 -13
- package/build-types/menu-group/index.d.ts +21 -1
- package/build-types/menu-group/index.d.ts.map +1 -1
- package/build-types/menu-group/test/index.d.ts +2 -0
- package/build-types/menu-group/test/index.d.ts.map +1 -0
- package/build-types/menu-group/types.d.ts +23 -0
- package/build-types/menu-group/types.d.ts.map +1 -0
- package/build-types/navigator/navigator-back-button/hook.d.ts +13 -13
- package/build-types/navigator/navigator-button/hook.d.ts +13 -13
- package/build-types/navigator/navigator-screen/component.d.ts.map +1 -1
- package/build-types/number-control/index.d.ts +2 -4
- package/build-types/number-control/index.d.ts.map +1 -1
- package/build-types/number-control/styles/number-control-styles.d.ts +5 -0
- package/build-types/number-control/styles/number-control-styles.d.ts.map +1 -1
- package/build-types/number-control/types.d.ts +12 -0
- package/build-types/number-control/types.d.ts.map +1 -1
- 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/popover/stories/index.d.ts +2 -0
- package/build-types/popover/stories/index.d.ts.map +1 -1
- package/build-types/popover/types.d.ts +18 -14
- package/build-types/popover/types.d.ts.map +1 -1
- package/build-types/radio-group/index.d.ts +10 -0
- package/build-types/radio-group/index.d.ts.map +1 -0
- package/build-types/radio-group/radio/index.d.ts +7 -0
- package/build-types/radio-group/radio/index.d.ts.map +1 -0
- package/build-types/{radio-context → radio-group/radio-context}/index.d.ts +0 -0
- package/build-types/radio-group/radio-context/index.d.ts.map +1 -0
- package/build-types/range-control/index.d.ts +1 -1
- package/build-types/range-control/styles/range-control-styles.d.ts +2 -1
- package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
- package/build-types/resizable-box/index.d.ts +1 -1
- package/build-types/resizable-box/resize-tooltip/index.d.ts +1 -1
- package/build-types/resizable-box/resize-tooltip/label.d.ts +1 -1
- package/build-types/scrollable/hook.d.ts +12 -12
- package/build-types/search-control/index.d.ts +2 -2
- package/build-types/search-control/stories/index.d.ts +4 -4
- package/build-types/select-control/stories/index.d.ts.map +1 -1
- package/build-types/slot-fill/bubbles-virtually/use-slot.d.ts.map +1 -1
- package/build-types/slot-fill/fill.d.ts.map +1 -1
- package/build-types/slot-fill/use-slot.d.ts.map +1 -1
- package/build-types/spacer/hook.d.ts +12 -12
- package/build-types/spinner/index.d.ts +1 -1
- package/build-types/surface/hook.d.ts +12 -12
- package/build-types/tab-panel/index.d.ts.map +1 -1
- package/build-types/text/hook.d.ts +12 -12
- package/build-types/text-control/index.d.ts +2 -4
- package/build-types/text-control/index.d.ts.map +1 -1
- package/build-types/text-control/stories/index.d.ts.map +1 -1
- package/build-types/toggle-control/index.d.ts.map +1 -1
- package/build-types/toggle-control/types.d.ts +2 -1
- package/build-types/toggle-control/types.d.ts.map +1 -1
- package/build-types/toggle-group-control/stories/index.d.ts +2 -2
- package/build-types/toggle-group-control/stories/index.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control/as-button-group.d.ts +6 -0
- package/build-types/toggle-group-control/toggle-group-control/as-button-group.d.ts.map +1 -0
- package/build-types/toggle-group-control/toggle-group-control/as-radio-group.d.ts +6 -0
- package/build-types/toggle-group-control/toggle-group-control/as-radio-group.d.ts.map +1 -0
- package/build-types/toggle-group-control/toggle-group-control/component.d.ts +2 -2
- package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control/styles.d.ts +1 -2
- package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts +4 -7
- package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts +1 -1
- package/build-types/toggle-group-control/types.d.ts +21 -15
- package/build-types/toggle-group-control/types.d.ts.map +1 -1
- package/build-types/tools-panel/tools-panel/hook.d.ts +12 -12
- package/build-types/tools-panel/tools-panel-header/hook.d.ts +12 -12
- package/build-types/tools-panel/tools-panel-item/hook.d.ts +12 -12
- package/build-types/tools-panel/tools-panel-item/hook.d.ts.map +1 -1
- package/build-types/truncate/hook.d.ts +12 -12
- package/build-types/ui/context/context-system-provider.d.ts.map +1 -1
- package/build-types/ui/control-group/hook.d.ts +12 -12
- package/build-types/ui/control-label/component.d.ts +1 -1
- package/build-types/ui/control-label/hook.d.ts +12 -12
- package/build-types/ui/form-group/form-group.d.ts +4 -4
- package/build-types/ui/form-group/use-form-group.d.ts +28 -28
- package/build-types/unit-control/index.d.ts +2 -2
- package/build-types/unit-control/index.d.ts.map +1 -1
- package/build-types/unit-control/styles/unit-control-styles.d.ts +2 -5
- package/build-types/unit-control/styles/unit-control-styles.d.ts.map +1 -1
- package/build-types/unit-control/types.d.ts +3 -3
- package/build-types/unit-control/types.d.ts.map +1 -1
- package/build-types/utils/colors-values.d.ts +1 -0
- package/build-types/utils/colors-values.d.ts.map +1 -1
- package/build-types/utils/config-values.d.ts +0 -1
- package/build-types/utils/hooks/use-update-effect.d.ts.map +1 -1
- package/build-types/utils/types.d.ts +0 -14
- package/build-types/utils/types.d.ts.map +1 -1
- package/build-types/v-stack/component.d.ts +2 -2
- package/build-types/v-stack/hook.d.ts +12 -12
- package/build-types/v-stack/stories/index.d.ts +2 -2
- package/build-types/view/index.d.ts +1 -1
- package/build-types/view/index.d.ts.map +1 -1
- package/package.json +17 -17
- package/src/angle-picker-control/index.js +3 -2
- package/src/angle-picker-control/stories/index.js +3 -0
- package/src/autocomplete/autocompleter-ui.js +29 -2
- package/src/autocomplete/index.js +12 -3
- package/src/autocomplete/style.scss +1 -1
- package/src/autocomplete/test/index.js +89 -0
- package/src/base-field/test/__snapshots__/index.js.snap +9 -7
- package/src/base-field/test/index.js +27 -15
- package/src/border-box-control/border-box-control/README.md +13 -17
- package/src/border-box-control/border-box-control/component.tsx +64 -13
- package/src/border-box-control/border-box-control/hook.ts +25 -6
- package/src/border-box-control/border-box-control-linked-button/hook.ts +3 -6
- package/src/border-box-control/border-box-control-split-controls/component.tsx +3 -6
- package/src/border-box-control/border-box-control-split-controls/hook.ts +21 -14
- package/src/border-box-control/border-box-control-visualizer/hook.ts +4 -7
- package/src/border-box-control/stories/index.tsx +90 -0
- package/src/border-box-control/styles.ts +28 -22
- package/src/border-box-control/test/index.js +287 -122
- package/src/border-box-control/types.ts +32 -62
- package/src/border-control/border-control/README.md +12 -17
- package/src/border-control/border-control/component.tsx +5 -4
- package/src/border-control/border-control/hook.ts +20 -6
- package/src/border-control/border-control-dropdown/component.tsx +7 -6
- package/src/border-control/border-control-dropdown/hook.ts +14 -8
- package/src/border-control/stories/index.tsx +12 -14
- package/src/border-control/styles.ts +20 -23
- package/src/border-control/test/index.js +139 -96
- package/src/border-control/types.ts +43 -82
- package/src/box-control/README.md +14 -0
- package/src/box-control/index.js +4 -0
- package/src/box-control/stories/index.js +8 -27
- package/src/button/README.md +2 -15
- package/src/button/stories/index.js +109 -178
- package/src/button/style.scss +17 -54
- package/src/card/stories/index.tsx +27 -31
- package/src/card/test/__snapshots__/index.tsx.snap +98 -401
- package/src/card/test/index.tsx +4 -8
- package/src/checkbox-control/style.scss +3 -3
- package/src/circular-option-picker/index.js +14 -20
- package/src/color-palette/README.md +47 -49
- package/src/color-palette/{index.js → index.tsx} +132 -51
- package/src/color-palette/stories/{index.js → index.tsx} +38 -27
- package/src/color-palette/style.scss +3 -3
- package/src/color-palette/{styles.js → styles.ts} +0 -0
- package/src/color-palette/test/__snapshots__/{index.js.snap → index.tsx.snap} +0 -0
- package/src/color-palette/test/{index.js → index.tsx} +1 -1
- package/src/color-palette/types.ts +97 -0
- package/src/color-picker/input-with-slider.tsx +14 -3
- package/src/custom-gradient-picker/gradient-bar/index.js +1 -3
- package/src/custom-select-control/README.md +14 -0
- package/src/custom-select-control/index.js +29 -15
- package/src/custom-select-control/stories/index.js +1 -0
- package/src/custom-select-control/style.scss +6 -1
- package/src/custom-select-control/test/index.js +39 -0
- package/src/dashicon/index.js +21 -2
- package/src/date-time/date/test/index.tsx +2 -2
- package/src/date-time/date-time/index.tsx +2 -0
- package/src/date-time/stories/date-time.tsx +4 -0
- package/src/date-time/time/index.tsx +4 -4
- package/src/date-time/types.ts +0 -19
- package/src/dimension-control/test/__snapshots__/index.test.js.snap +4 -0
- package/src/disabled/README.md +2 -0
- package/src/disabled/index.tsx +8 -1
- package/src/disabled/test/index.tsx +0 -5
- package/src/divider/test/index.tsx +4 -4
- package/src/draggable/README.md +13 -18
- package/src/draggable/{index.js → index.tsx} +71 -47
- package/src/draggable/stories/index.tsx +83 -0
- package/src/draggable/types.ts +58 -0
- package/src/drop-zone/style.scss +1 -1
- package/src/external-link/index.tsx +14 -6
- package/src/external-link/test/index.tsx +106 -0
- package/src/flex/flex/hook.ts +0 -3
- package/src/flex/test/index.tsx +29 -3
- package/src/focal-point-picker/focal-point.tsx +2 -24
- package/src/focal-point-picker/styles/focal-point-style.ts +8 -32
- package/src/focusable-iframe/index.js +0 -1
- package/src/font-size-picker/README.md +3 -3
- package/src/font-size-picker/constants.ts +37 -0
- package/src/font-size-picker/font-size-picker-select.tsx +98 -0
- package/src/font-size-picker/font-size-picker-toggle-group.tsx +41 -0
- package/src/font-size-picker/index.tsx +161 -214
- package/src/font-size-picker/test/index.tsx +653 -171
- package/src/font-size-picker/test/utils.ts +56 -140
- package/src/font-size-picker/types.ts +26 -17
- package/src/font-size-picker/utils.ts +16 -124
- package/src/form-file-upload/README.md +1 -3
- package/src/form-file-upload/index.tsx +1 -0
- package/src/form-file-upload/types.ts +5 -4
- package/src/form-toggle/style.scss +3 -3
- package/src/form-toggle/test/__snapshots__/index.tsx.snap +15 -13
- package/src/form-toggle/test/index.tsx +1 -1
- package/src/form-token-field/index.tsx +13 -5
- package/src/form-token-field/style.scss +2 -2
- package/src/form-token-field/test/index.tsx +6 -6
- package/src/h-stack/test/__snapshots__/index.tsx.snap +36 -30
- package/src/h-stack/test/index.tsx +3 -3
- package/src/higher-order/navigate-regions/index.js +4 -0
- package/src/higher-order/navigate-regions/style.scss +72 -20
- package/src/higher-order/with-filters/index.js +4 -9
- package/src/higher-order/with-notices/test/index.js +1 -1
- package/src/icon/index.tsx +3 -2
- package/src/icon/test/index.js +10 -0
- package/src/index.js +3 -1
- package/src/input-control/index.tsx +2 -0
- package/src/input-control/input-base.tsx +3 -3
- package/src/input-control/styles/input-control-styles.tsx +1 -0
- package/src/input-control/types.ts +4 -11
- package/src/isolated-event-container/index.tsx +32 -0
- package/src/item-group/stories/index.js +1 -1
- package/src/item-group/styles.ts +1 -1
- package/src/item-group/test/__snapshots__/index.js.snap +90 -85
- package/src/item-group/test/index.js +7 -17
- package/src/menu-group/{index.js → index.tsx} +22 -3
- package/src/menu-group/test/{index.js → index.tsx} +0 -0
- package/src/menu-group/types.ts +23 -0
- package/src/menu-item/style.scss +1 -1
- package/src/mobile/bottom-sheet/test/range-cell.native.js +4 -4
- package/src/mobile/html-text-input/test/index.native.js +2 -2
- package/src/mobile/link-settings/test/edit.native.js +29 -29
- package/src/mobile/link-settings/test/link-settings-navigation.native.js +5 -5
- package/src/navigator/navigator-screen/component.tsx +28 -6
- package/src/notice/README.md +2 -1
- package/src/notice/style.scss +1 -1
- package/src/number-control/README.md +9 -4
- package/src/number-control/index.tsx +100 -33
- package/src/number-control/styles/number-control-styles.js +26 -1
- package/src/number-control/test/index.js +50 -0
- package/src/number-control/types.ts +12 -0
- package/src/palette-edit/index.js +3 -0
- package/src/panel/style.scss +1 -1
- package/src/popover/README.md +12 -7
- package/src/popover/index.tsx +38 -37
- package/src/popover/stories/index.tsx +29 -1
- package/src/popover/style.scss +9 -0
- package/src/popover/types.ts +18 -15
- package/src/radio-group/README.md +4 -0
- package/src/radio-group/index.js +6 -1
- package/src/{radio → radio-group/radio}/index.js +6 -1
- package/src/{radio-context → radio-group/radio-context}/index.js +0 -0
- package/src/radio-group/stories/index.js +11 -2
- package/src/range-control/styles/range-control-styles.ts +2 -2
- package/src/resizable-box/style.scss +2 -2
- package/src/sandbox/test/index.js +2 -2
- package/src/scrollable/test/index.tsx +7 -3
- package/src/search-control/style.scss +1 -1
- package/src/select-control/stories/index.tsx +9 -4
- package/src/slot-fill/bubbles-virtually/fill.js +5 -5
- package/src/slot-fill/bubbles-virtually/slot.js +10 -8
- package/src/slot-fill/bubbles-virtually/use-slot.js +15 -9
- package/src/slot-fill/fill.js +12 -2
- package/src/slot-fill/use-slot.js +3 -0
- package/src/snackbar/index.js +1 -1
- package/src/snackbar/style.scss +2 -2
- package/src/spacer/test/index.tsx +33 -3
- package/src/spinner/styles.ts +1 -1
- package/src/surface/test/__snapshots__/index.tsx.snap +58 -46
- package/src/surface/test/index.tsx +12 -22
- package/src/tab-panel/index.tsx +10 -8
- package/src/tab-panel/style.scss +4 -5
- package/src/tab-panel/test/index.tsx +78 -1
- package/src/text/test/__snapshots__/index.tsx.snap +19 -15
- package/src/text/test/index.tsx +6 -6
- package/src/text-control/index.tsx +0 -2
- package/src/text-control/stories/index.tsx +5 -6
- package/src/toggle-control/README.md +6 -4
- package/src/toggle-control/index.tsx +13 -2
- package/src/toggle-control/types.ts +2 -4
- package/src/toggle-group-control/stories/index.tsx +6 -4
- package/src/toggle-group-control/test/__snapshots__/index.tsx.snap +221 -164
- package/src/toggle-group-control/test/index.tsx +156 -17
- package/src/toggle-group-control/toggle-group-control/README.md +8 -1
- package/src/toggle-group-control/toggle-group-control/as-button-group.tsx +103 -0
- package/src/toggle-group-control/toggle-group-control/as-radio-group.tsx +99 -0
- package/src/toggle-group-control/toggle-group-control/component.tsx +29 -74
- package/src/toggle-group-control/toggle-group-control/styles.ts +23 -15
- package/src/toggle-group-control/toggle-group-control-option-base/component.tsx +49 -25
- package/src/toggle-group-control/toggle-group-control-option-base/styles.ts +39 -19
- package/src/toggle-group-control/types.ts +76 -63
- package/src/toolbar-dropdown-menu/index.js +1 -1
- package/src/tools-panel/stories/index.js +0 -1
- package/src/tools-panel/stories/tools-panel-with-item-group-slot.js +0 -1
- package/src/tools-panel/styles.ts +1 -1
- package/src/tools-panel/tools-panel-item/hook.ts +6 -1
- package/src/tree-grid/test/__snapshots__/cell.js.snap +20 -18
- package/src/tree-grid/test/__snapshots__/roving-tab-index.js.snap +3 -1
- package/src/tree-grid/test/__snapshots__/row.js.snap +33 -29
- package/src/tree-grid/test/cell.js +1 -1
- package/src/tree-grid/test/index.js +12 -12
- package/src/tree-grid/test/roving-tab-index.js +1 -1
- package/src/tree-grid/test/row.js +2 -2
- package/src/truncate/test/index.tsx +9 -9
- package/src/ui/context/context-system-provider.js +5 -18
- package/src/ui/context/test/__snapshots__/context-system-provider.js.snap +23 -17
- package/src/ui/context/test/context-system-provider.js +3 -3
- package/src/ui/control-group/test/__snapshots__/index.js.snap +18 -16
- package/src/ui/control-group/test/index.js +1 -1
- package/src/ui/control-label/test/__snapshots__/index.js.snap +27 -21
- package/src/ui/control-label/test/index.js +3 -3
- package/src/ui/form-group/test/__snapshots__/index.js.snap +34 -30
- package/src/ui/form-group/test/index.js +18 -19
- package/src/ui/shortcut/test/__snapshots__/index.js.snap +1 -1
- package/src/ui/shortcut/test/index.js +1 -1
- package/src/ui/spinner/test/__snapshots__/index.js.snap +75 -73
- package/src/ui/spinner/test/index.js +3 -7
- package/src/unit-control/index.tsx +29 -30
- package/src/unit-control/styles/unit-control-styles.ts +6 -12
- package/src/unit-control/test/utils.ts +43 -0
- package/src/unit-control/types.ts +5 -6
- package/src/utils/colors-values.js +4 -2
- package/src/utils/config-values.js +0 -1
- package/src/utils/hooks/stories/use-cx.js +1 -1
- package/src/utils/hooks/use-update-effect.js +5 -1
- package/src/utils/input/base.js +2 -2
- package/src/utils/types.ts +0 -15
- package/src/v-stack/test/__snapshots__/index.tsx.snap +36 -30
- package/src/v-stack/test/index.tsx +3 -3
- package/src/view/{index.js → index.ts} +0 -0
- package/src/view/test/__snapshots__/index.js.snap +34 -24
- package/src/view/test/index.js +5 -5
- package/tsconfig.json +0 -2
- package/tsconfig.tsbuildinfo +1 -1
- package/build/radio/index.js.map +0 -1
- package/build/radio-context/index.js.map +0 -1
- package/build-module/radio/index.js.map +0 -1
- package/build-module/radio-context/index.js.map +0 -1
- package/build-types/radio-context/index.d.ts.map +0 -1
- package/src/border-box-control/stories/index.js +0 -106
- package/src/draggable/stories/index.js +0 -72
- package/src/form-file-upload/stories/index.js +0 -51
- package/src/isolated-event-container/index.js +0 -28
- package/src/radio/stories/index.js +0 -20
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import { fireEvent, render, screen } from '@testing-library/react';
|
|
4
|
+
import { act, fireEvent, render, screen } from '@testing-library/react';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Internal dependencies
|
|
@@ -22,28 +22,44 @@ const defaultBorder = {
|
|
|
22
22
|
width: '1px',
|
|
23
23
|
};
|
|
24
24
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
25
|
+
function createProps( customProps ) {
|
|
26
|
+
const props = {
|
|
27
|
+
colors,
|
|
28
|
+
label: 'Border',
|
|
29
|
+
onChange: jest.fn().mockImplementation( ( newValue ) => {
|
|
30
|
+
props.value = newValue;
|
|
31
|
+
} ),
|
|
32
|
+
value: defaultBorder,
|
|
33
|
+
...customProps,
|
|
34
|
+
};
|
|
35
|
+
return props;
|
|
36
|
+
}
|
|
33
37
|
|
|
34
38
|
const toggleLabelRegex = /Border color( and style)* picker/;
|
|
35
39
|
|
|
36
|
-
const renderBorderControl = (
|
|
37
|
-
|
|
40
|
+
const renderBorderControl = async ( props ) => {
|
|
41
|
+
const view = render( <BorderControl { ...props } /> );
|
|
42
|
+
// When the `Popover` component is rendered or updated, the `useFloating`
|
|
43
|
+
// hook from the `floating-ui` package will schedule a state update in a
|
|
44
|
+
// promise handler. We need to wait for this promise handler to execute
|
|
45
|
+
// before checking results. That's what this async `act()` call achieves.
|
|
46
|
+
// See also: https://floating-ui.com/docs/react-dom#testing
|
|
47
|
+
await act( () => Promise.resolve() );
|
|
48
|
+
return view;
|
|
38
49
|
};
|
|
39
50
|
|
|
40
|
-
const rerenderBorderControl = ( rerender,
|
|
41
|
-
|
|
51
|
+
const rerenderBorderControl = async ( rerender, props ) => {
|
|
52
|
+
const view = rerender( <BorderControl { ...props } /> );
|
|
53
|
+
// Same reason to `act()` as in `renderBorderControl` above.
|
|
54
|
+
await act( () => Promise.resolve() );
|
|
55
|
+
return view;
|
|
42
56
|
};
|
|
43
57
|
|
|
44
|
-
const openPopover = () => {
|
|
58
|
+
const openPopover = async () => {
|
|
45
59
|
const toggleButton = screen.getByLabelText( toggleLabelRegex );
|
|
46
60
|
fireEvent.click( toggleButton );
|
|
61
|
+
// Same reason to `act()` as in `renderBorderControl` above.
|
|
62
|
+
await act( () => Promise.resolve() );
|
|
47
63
|
};
|
|
48
64
|
|
|
49
65
|
const getButton = ( name ) => {
|
|
@@ -67,7 +83,9 @@ const getWidthInput = () => {
|
|
|
67
83
|
};
|
|
68
84
|
const setWidthInput = ( value ) => {
|
|
69
85
|
const widthInput = getWidthInput();
|
|
70
|
-
|
|
86
|
+
act( () => {
|
|
87
|
+
widthInput.focus();
|
|
88
|
+
} );
|
|
71
89
|
fireEvent.change( widthInput, { target: { value } } );
|
|
72
90
|
};
|
|
73
91
|
|
|
@@ -75,8 +93,9 @@ const clearWidthInput = () => setWidthInput( '' );
|
|
|
75
93
|
|
|
76
94
|
describe( 'BorderControl', () => {
|
|
77
95
|
describe( 'basic rendering', () => {
|
|
78
|
-
it( 'should render standard border control', () => {
|
|
79
|
-
|
|
96
|
+
it( 'should render standard border control', async () => {
|
|
97
|
+
const props = createProps();
|
|
98
|
+
await renderBorderControl( props );
|
|
80
99
|
|
|
81
100
|
const label = screen.getByText( props.label );
|
|
82
101
|
const colorButton = screen.getByLabelText( toggleLabelRegex );
|
|
@@ -95,8 +114,9 @@ describe( 'BorderControl', () => {
|
|
|
95
114
|
expect( slider ).not.toBeInTheDocument();
|
|
96
115
|
} );
|
|
97
116
|
|
|
98
|
-
it( 'should hide label', () => {
|
|
99
|
-
|
|
117
|
+
it( 'should hide label', async () => {
|
|
118
|
+
const props = createProps( { hideLabelFromVision: true } );
|
|
119
|
+
await renderBorderControl( props );
|
|
100
120
|
const label = screen.getByText( props.label );
|
|
101
121
|
|
|
102
122
|
// As visually hidden labels are still included in the document
|
|
@@ -108,23 +128,26 @@ describe( 'BorderControl', () => {
|
|
|
108
128
|
);
|
|
109
129
|
} );
|
|
110
130
|
|
|
111
|
-
it( 'should render with slider', () => {
|
|
112
|
-
|
|
131
|
+
it( 'should render with slider', async () => {
|
|
132
|
+
const props = createProps( { withSlider: true } );
|
|
133
|
+
await renderBorderControl( props );
|
|
113
134
|
|
|
114
135
|
const slider = getSliderInput();
|
|
115
136
|
expect( slider ).toBeInTheDocument();
|
|
116
137
|
} );
|
|
117
138
|
|
|
118
|
-
it( 'should render placeholder in UnitControl', () => {
|
|
119
|
-
|
|
120
|
-
|
|
139
|
+
it( 'should render placeholder in UnitControl', async () => {
|
|
140
|
+
const props = createProps( { placeholder: 'Mixed' } );
|
|
141
|
+
await renderBorderControl( props );
|
|
121
142
|
|
|
143
|
+
const widthInput = getWidthInput();
|
|
122
144
|
expect( widthInput ).toHaveAttribute( 'placeholder', 'Mixed' );
|
|
123
145
|
} );
|
|
124
146
|
|
|
125
|
-
it( 'should render color and style popover', () => {
|
|
126
|
-
|
|
127
|
-
|
|
147
|
+
it( 'should render color and style popover', async () => {
|
|
148
|
+
const props = createProps();
|
|
149
|
+
await renderBorderControl( props );
|
|
150
|
+
await openPopover();
|
|
128
151
|
|
|
129
152
|
const customColorPicker = getButton( /Custom color picker/ );
|
|
130
153
|
const colorSwatchButtons = screen.getAllByRole( 'button', {
|
|
@@ -145,9 +168,10 @@ describe( 'BorderControl', () => {
|
|
|
145
168
|
expect( resetButton ).toBeInTheDocument();
|
|
146
169
|
} );
|
|
147
170
|
|
|
148
|
-
it( 'should render color and style popover header', () => {
|
|
149
|
-
|
|
150
|
-
|
|
171
|
+
it( 'should render color and style popover header', async () => {
|
|
172
|
+
const props = createProps( { showDropdownHeader: true } );
|
|
173
|
+
await renderBorderControl( props );
|
|
174
|
+
await openPopover();
|
|
151
175
|
|
|
152
176
|
const headerLabel = screen.getByText( 'Border color' );
|
|
153
177
|
const closeButton = getButton( 'Close border color' );
|
|
@@ -156,9 +180,10 @@ describe( 'BorderControl', () => {
|
|
|
156
180
|
expect( closeButton ).toBeInTheDocument();
|
|
157
181
|
} );
|
|
158
182
|
|
|
159
|
-
it( 'should not render style options when opted out of', () => {
|
|
160
|
-
|
|
161
|
-
|
|
183
|
+
it( 'should not render style options when opted out of', async () => {
|
|
184
|
+
const props = createProps( { enableStyle: false } );
|
|
185
|
+
await renderBorderControl( props );
|
|
186
|
+
await openPopover();
|
|
162
187
|
|
|
163
188
|
const styleLabel = screen.queryByText( 'Style' );
|
|
164
189
|
const solidButton = queryButton( 'Solid' );
|
|
@@ -174,16 +199,18 @@ describe( 'BorderControl', () => {
|
|
|
174
199
|
|
|
175
200
|
describe( 'color and style picker aria labels', () => {
|
|
176
201
|
describe( 'with style selection enabled', () => {
|
|
177
|
-
it( 'should include both color and style in label', () => {
|
|
178
|
-
|
|
202
|
+
it( 'should include both color and style in label', async () => {
|
|
203
|
+
const props = createProps( { value: undefined } );
|
|
204
|
+
await renderBorderControl( props );
|
|
179
205
|
|
|
180
206
|
expect(
|
|
181
207
|
screen.getByLabelText( 'Border color and style picker.' )
|
|
182
208
|
).toBeInTheDocument();
|
|
183
209
|
} );
|
|
184
210
|
|
|
185
|
-
it( 'should correctly describe named color selection', () => {
|
|
186
|
-
|
|
211
|
+
it( 'should correctly describe named color selection', async () => {
|
|
212
|
+
const props = createProps( { value: { color: '#72aee6' } } );
|
|
213
|
+
await renderBorderControl( props );
|
|
187
214
|
|
|
188
215
|
expect(
|
|
189
216
|
screen.getByLabelText(
|
|
@@ -192,8 +219,9 @@ describe( 'BorderControl', () => {
|
|
|
192
219
|
).toBeInTheDocument();
|
|
193
220
|
} );
|
|
194
221
|
|
|
195
|
-
it( 'should correctly describe custom color selection', () => {
|
|
196
|
-
|
|
222
|
+
it( 'should correctly describe custom color selection', async () => {
|
|
223
|
+
const props = createProps( { value: { color: '#4b1d80' } } );
|
|
224
|
+
await renderBorderControl( props );
|
|
197
225
|
|
|
198
226
|
expect(
|
|
199
227
|
screen.getByLabelText(
|
|
@@ -202,10 +230,11 @@ describe( 'BorderControl', () => {
|
|
|
202
230
|
).toBeInTheDocument();
|
|
203
231
|
} );
|
|
204
232
|
|
|
205
|
-
it( 'should correctly describe named color and style selections', () => {
|
|
206
|
-
|
|
233
|
+
it( 'should correctly describe named color and style selections', async () => {
|
|
234
|
+
const props = createProps( {
|
|
207
235
|
value: { color: '#72aee6', style: 'dotted' },
|
|
208
236
|
} );
|
|
237
|
+
await renderBorderControl( props );
|
|
209
238
|
|
|
210
239
|
expect(
|
|
211
240
|
screen.getByLabelText(
|
|
@@ -214,10 +243,11 @@ describe( 'BorderControl', () => {
|
|
|
214
243
|
).toBeInTheDocument();
|
|
215
244
|
} );
|
|
216
245
|
|
|
217
|
-
it( 'should correctly describe custom color and style selections', () => {
|
|
218
|
-
|
|
246
|
+
it( 'should correctly describe custom color and style selections', async () => {
|
|
247
|
+
const props = createProps( {
|
|
219
248
|
value: { color: '#4b1d80', style: 'dashed' },
|
|
220
249
|
} );
|
|
250
|
+
await renderBorderControl( props );
|
|
221
251
|
|
|
222
252
|
expect(
|
|
223
253
|
screen.getByLabelText(
|
|
@@ -228,19 +258,24 @@ describe( 'BorderControl', () => {
|
|
|
228
258
|
} );
|
|
229
259
|
|
|
230
260
|
describe( 'with style selection disabled', () => {
|
|
231
|
-
it( 'should only include color in the label', () => {
|
|
232
|
-
|
|
261
|
+
it( 'should only include color in the label', async () => {
|
|
262
|
+
const props = createProps( {
|
|
263
|
+
value: undefined,
|
|
264
|
+
enableStyle: false,
|
|
265
|
+
} );
|
|
266
|
+
await renderBorderControl( props );
|
|
233
267
|
|
|
234
268
|
expect(
|
|
235
269
|
screen.getByLabelText( 'Border color picker.' )
|
|
236
270
|
).toBeInTheDocument();
|
|
237
271
|
} );
|
|
238
272
|
|
|
239
|
-
it( 'should correctly describe named color selection', () => {
|
|
240
|
-
|
|
273
|
+
it( 'should correctly describe named color selection', async () => {
|
|
274
|
+
const props = createProps( {
|
|
241
275
|
value: { color: '#72aee6' },
|
|
242
276
|
enableStyle: false,
|
|
243
277
|
} );
|
|
278
|
+
await renderBorderControl( props );
|
|
244
279
|
|
|
245
280
|
expect(
|
|
246
281
|
screen.getByLabelText(
|
|
@@ -249,11 +284,12 @@ describe( 'BorderControl', () => {
|
|
|
249
284
|
).toBeInTheDocument();
|
|
250
285
|
} );
|
|
251
286
|
|
|
252
|
-
it( 'should correctly describe custom color selection', () => {
|
|
253
|
-
|
|
287
|
+
it( 'should correctly describe custom color selection', async () => {
|
|
288
|
+
const props = createProps( {
|
|
254
289
|
value: { color: '#4b1d80' },
|
|
255
290
|
enableStyle: false,
|
|
256
291
|
} );
|
|
292
|
+
await renderBorderControl( props );
|
|
257
293
|
|
|
258
294
|
expect(
|
|
259
295
|
screen.getByLabelText(
|
|
@@ -265,13 +301,9 @@ describe( 'BorderControl', () => {
|
|
|
265
301
|
} );
|
|
266
302
|
|
|
267
303
|
describe( 'onChange handling', () => {
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
} );
|
|
272
|
-
|
|
273
|
-
it( 'should update width with slider value', () => {
|
|
274
|
-
const { rerender } = renderBorderControl( { withSlider: true } );
|
|
304
|
+
it( 'should update width with slider value', async () => {
|
|
305
|
+
const props = createProps( { withSlider: true } );
|
|
306
|
+
const { rerender } = await renderBorderControl( props );
|
|
275
307
|
|
|
276
308
|
const slider = getSliderInput();
|
|
277
309
|
fireEvent.change( slider, { target: { value: '5' } } );
|
|
@@ -281,15 +313,16 @@ describe( 'BorderControl', () => {
|
|
|
281
313
|
width: '5px',
|
|
282
314
|
} );
|
|
283
315
|
|
|
284
|
-
rerenderBorderControl( rerender,
|
|
316
|
+
await rerenderBorderControl( rerender, props );
|
|
285
317
|
const widthInput = getWidthInput();
|
|
286
318
|
|
|
287
319
|
expect( widthInput.value ).toEqual( '5' );
|
|
288
320
|
} );
|
|
289
321
|
|
|
290
|
-
it( 'should update color selection', () => {
|
|
291
|
-
|
|
292
|
-
|
|
322
|
+
it( 'should update color selection', async () => {
|
|
323
|
+
const props = createProps();
|
|
324
|
+
await renderBorderControl( props );
|
|
325
|
+
await openPopover();
|
|
293
326
|
clickButton( 'Color: Green' );
|
|
294
327
|
|
|
295
328
|
expect( props.onChange ).toHaveBeenNthCalledWith( 1, {
|
|
@@ -298,9 +331,10 @@ describe( 'BorderControl', () => {
|
|
|
298
331
|
} );
|
|
299
332
|
} );
|
|
300
333
|
|
|
301
|
-
it( 'should clear color selection when toggling swatch off', () => {
|
|
302
|
-
|
|
303
|
-
|
|
334
|
+
it( 'should clear color selection when toggling swatch off', async () => {
|
|
335
|
+
const props = createProps();
|
|
336
|
+
await renderBorderControl( props );
|
|
337
|
+
await openPopover();
|
|
304
338
|
clickButton( 'Color: Blue' );
|
|
305
339
|
|
|
306
340
|
expect( props.onChange ).toHaveBeenNthCalledWith( 1, {
|
|
@@ -309,9 +343,10 @@ describe( 'BorderControl', () => {
|
|
|
309
343
|
} );
|
|
310
344
|
} );
|
|
311
345
|
|
|
312
|
-
it( 'should update style selection', () => {
|
|
313
|
-
|
|
314
|
-
|
|
346
|
+
it( 'should update style selection', async () => {
|
|
347
|
+
const props = createProps();
|
|
348
|
+
await renderBorderControl( props );
|
|
349
|
+
await openPopover();
|
|
315
350
|
clickButton( 'Dashed' );
|
|
316
351
|
|
|
317
352
|
expect( props.onChange ).toHaveBeenNthCalledWith( 1, {
|
|
@@ -320,17 +355,19 @@ describe( 'BorderControl', () => {
|
|
|
320
355
|
} );
|
|
321
356
|
} );
|
|
322
357
|
|
|
323
|
-
it( 'should take no action when color and style popover is closed', () => {
|
|
324
|
-
|
|
325
|
-
|
|
358
|
+
it( 'should take no action when color and style popover is closed', async () => {
|
|
359
|
+
const props = createProps( { showDropdownHeader: true } );
|
|
360
|
+
await renderBorderControl( props );
|
|
361
|
+
await openPopover();
|
|
326
362
|
clickButton( 'Close border color' );
|
|
327
363
|
|
|
328
364
|
expect( props.onChange ).not.toHaveBeenCalled();
|
|
329
365
|
} );
|
|
330
366
|
|
|
331
|
-
it( 'should reset color and style only when popover reset button clicked', () => {
|
|
332
|
-
|
|
333
|
-
|
|
367
|
+
it( 'should reset color and style only when popover reset button clicked', async () => {
|
|
368
|
+
const props = createProps();
|
|
369
|
+
await renderBorderControl( props );
|
|
370
|
+
await openPopover();
|
|
334
371
|
clickButton( 'Reset to default' );
|
|
335
372
|
|
|
336
373
|
expect( props.onChange ).toHaveBeenNthCalledWith( 1, {
|
|
@@ -340,23 +377,25 @@ describe( 'BorderControl', () => {
|
|
|
340
377
|
} );
|
|
341
378
|
} );
|
|
342
379
|
|
|
343
|
-
it( 'should sanitize border when width and color are undefined', () => {
|
|
344
|
-
const
|
|
380
|
+
it( 'should sanitize border when width and color are undefined', async () => {
|
|
381
|
+
const props = createProps();
|
|
382
|
+
const { rerender } = await renderBorderControl( props );
|
|
345
383
|
clearWidthInput();
|
|
346
|
-
rerenderBorderControl( rerender );
|
|
347
|
-
openPopover();
|
|
384
|
+
await rerenderBorderControl( rerender, props );
|
|
385
|
+
await openPopover();
|
|
348
386
|
clickButton( 'Color: Blue' );
|
|
349
387
|
|
|
350
388
|
expect( props.onChange ).toHaveBeenCalledWith( undefined );
|
|
351
389
|
} );
|
|
352
390
|
|
|
353
|
-
it( 'should not sanitize border when requested', () => {
|
|
354
|
-
const
|
|
391
|
+
it( 'should not sanitize border when requested', async () => {
|
|
392
|
+
const props = createProps( {
|
|
355
393
|
shouldSanitizeBorder: false,
|
|
356
394
|
} );
|
|
395
|
+
const { rerender } = await renderBorderControl( props );
|
|
357
396
|
clearWidthInput();
|
|
358
|
-
rerenderBorderControl( rerender,
|
|
359
|
-
openPopover();
|
|
397
|
+
await rerenderBorderControl( rerender, props );
|
|
398
|
+
await openPopover();
|
|
360
399
|
clickButton( 'Color: Blue' );
|
|
361
400
|
|
|
362
401
|
expect( props.onChange ).toHaveBeenNthCalledWith( 2, {
|
|
@@ -366,9 +405,10 @@ describe( 'BorderControl', () => {
|
|
|
366
405
|
} );
|
|
367
406
|
} );
|
|
368
407
|
|
|
369
|
-
it( 'should clear color and set style to `none` when setting zero width', () => {
|
|
370
|
-
|
|
371
|
-
|
|
408
|
+
it( 'should clear color and set style to `none` when setting zero width', async () => {
|
|
409
|
+
const props = createProps();
|
|
410
|
+
await renderBorderControl( props );
|
|
411
|
+
await openPopover();
|
|
372
412
|
clickButton( 'Color: Green' );
|
|
373
413
|
clickButton( 'Dotted' );
|
|
374
414
|
setWidthInput( '0' );
|
|
@@ -380,13 +420,14 @@ describe( 'BorderControl', () => {
|
|
|
380
420
|
} );
|
|
381
421
|
} );
|
|
382
422
|
|
|
383
|
-
it( 'should reselect color and style selections when changing to non-zero width', () => {
|
|
384
|
-
const
|
|
385
|
-
|
|
423
|
+
it( 'should reselect color and style selections when changing to non-zero width', async () => {
|
|
424
|
+
const props = createProps();
|
|
425
|
+
const { rerender } = await renderBorderControl( props );
|
|
426
|
+
await openPopover();
|
|
386
427
|
clickButton( 'Color: Green' );
|
|
387
|
-
rerenderBorderControl( rerender );
|
|
428
|
+
await rerenderBorderControl( rerender, props );
|
|
388
429
|
clickButton( 'Dotted' );
|
|
389
|
-
rerenderBorderControl( rerender );
|
|
430
|
+
await rerenderBorderControl( rerender, props );
|
|
390
431
|
setWidthInput( '0' );
|
|
391
432
|
setWidthInput( '5' );
|
|
392
433
|
|
|
@@ -397,9 +438,10 @@ describe( 'BorderControl', () => {
|
|
|
397
438
|
} );
|
|
398
439
|
} );
|
|
399
440
|
|
|
400
|
-
it( 'should set a non-zero width when applying color to zero width border', () => {
|
|
401
|
-
const
|
|
402
|
-
|
|
441
|
+
it( 'should set a non-zero width when applying color to zero width border', async () => {
|
|
442
|
+
const props = createProps( { value: undefined } );
|
|
443
|
+
const { rerender } = await renderBorderControl( props );
|
|
444
|
+
await openPopover();
|
|
403
445
|
clickButton( 'Color: Yellow' );
|
|
404
446
|
|
|
405
447
|
expect( props.onChange ).toHaveBeenCalledWith( {
|
|
@@ -409,7 +451,7 @@ describe( 'BorderControl', () => {
|
|
|
409
451
|
} );
|
|
410
452
|
|
|
411
453
|
setWidthInput( '0' );
|
|
412
|
-
rerenderBorderControl( rerender );
|
|
454
|
+
await rerenderBorderControl( rerender, props );
|
|
413
455
|
clickButton( 'Color: Green' );
|
|
414
456
|
|
|
415
457
|
expect( props.onChange ).toHaveBeenCalledWith( {
|
|
@@ -419,12 +461,13 @@ describe( 'BorderControl', () => {
|
|
|
419
461
|
} );
|
|
420
462
|
} );
|
|
421
463
|
|
|
422
|
-
it( 'should set a non-zero width when applying style to zero width border', () => {
|
|
423
|
-
const
|
|
464
|
+
it( 'should set a non-zero width when applying style to zero width border', async () => {
|
|
465
|
+
const props = createProps( {
|
|
424
466
|
value: undefined,
|
|
425
467
|
shouldSanitizeBorder: false,
|
|
426
468
|
} );
|
|
427
|
-
|
|
469
|
+
const { rerender } = await renderBorderControl( props );
|
|
470
|
+
await openPopover();
|
|
428
471
|
clickButton( 'Dashed' );
|
|
429
472
|
|
|
430
473
|
expect( props.onChange ).toHaveBeenCalledWith( {
|
|
@@ -434,7 +477,7 @@ describe( 'BorderControl', () => {
|
|
|
434
477
|
} );
|
|
435
478
|
|
|
436
479
|
setWidthInput( '0' );
|
|
437
|
-
rerenderBorderControl( rerender,
|
|
480
|
+
await rerenderBorderControl( rerender, props );
|
|
438
481
|
clickButton( 'Dotted' );
|
|
439
482
|
|
|
440
483
|
expect( props.onChange ).toHaveBeenCalledWith( {
|
|
@@ -6,6 +6,7 @@ import type { CSSProperties } from 'react';
|
|
|
6
6
|
/**
|
|
7
7
|
* Internal dependencies
|
|
8
8
|
*/
|
|
9
|
+
import type { ColorPaletteProps } from '../color-palette/types';
|
|
9
10
|
import type { PopoverProps } from '../popover/types';
|
|
10
11
|
|
|
11
12
|
export type Border = {
|
|
@@ -14,43 +15,17 @@ export type Border = {
|
|
|
14
15
|
width?: CSSProperties[ 'borderWidth' ];
|
|
15
16
|
};
|
|
16
17
|
|
|
17
|
-
export type
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
colors: Color[];
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
export type Colors = ColorOrigin[] | Color[];
|
|
28
|
-
|
|
29
|
-
export type ColorProps = {
|
|
30
|
-
/**
|
|
31
|
-
* An array of color definitions. This may also be a multi-dimensional array
|
|
32
|
-
* where colors are organized by multiple origins.
|
|
33
|
-
*/
|
|
34
|
-
colors?: Colors;
|
|
18
|
+
export type ColorProps = Pick<
|
|
19
|
+
ColorPaletteProps,
|
|
20
|
+
| 'colors'
|
|
21
|
+
| 'enableAlpha'
|
|
22
|
+
| '__experimentalHasMultipleOrigins'
|
|
23
|
+
| '__experimentalIsRenderedInSidebar'
|
|
24
|
+
> & {
|
|
35
25
|
/**
|
|
36
26
|
* This toggles the ability to choose custom colors.
|
|
37
27
|
*/
|
|
38
28
|
disableCustomColors?: boolean;
|
|
39
|
-
/**
|
|
40
|
-
* This controls whether the alpha channel will be offered when selecting
|
|
41
|
-
* custom colors.
|
|
42
|
-
*/
|
|
43
|
-
enableAlpha?: boolean;
|
|
44
|
-
/**
|
|
45
|
-
* This is passed on to the color related sub-components which need to be
|
|
46
|
-
* made aware of whether the colors prop contains multiple origins.
|
|
47
|
-
*/
|
|
48
|
-
__experimentalHasMultipleOrigins?: boolean;
|
|
49
|
-
/**
|
|
50
|
-
* This is passed on to the color related sub-components so they may render
|
|
51
|
-
* more effectively when used within a sidebar.
|
|
52
|
-
*/
|
|
53
|
-
__experimentalIsRenderedInSidebar?: boolean;
|
|
54
29
|
};
|
|
55
30
|
|
|
56
31
|
export type LabelProps = {
|
|
@@ -72,8 +47,7 @@ export type BorderControlProps = ColorProps &
|
|
|
72
47
|
*/
|
|
73
48
|
disableUnits?: boolean;
|
|
74
49
|
/**
|
|
75
|
-
* This controls whether to
|
|
76
|
-
* `BorderDropdown` sub-component.
|
|
50
|
+
* This controls whether to support border style selection.
|
|
77
51
|
*
|
|
78
52
|
* @default true
|
|
79
53
|
*/
|
|
@@ -107,6 +81,12 @@ export type BorderControlProps = ColorProps &
|
|
|
107
81
|
* and a close button.
|
|
108
82
|
*/
|
|
109
83
|
showDropdownHeader?: boolean;
|
|
84
|
+
/**
|
|
85
|
+
* Size of the control.
|
|
86
|
+
*
|
|
87
|
+
* @default 'default'
|
|
88
|
+
*/
|
|
89
|
+
size?: 'default' | '__unstable-large';
|
|
110
90
|
/**
|
|
111
91
|
* An object representing a border or `undefined`. Used to set the
|
|
112
92
|
* current border configuration for this component.
|
|
@@ -122,57 +102,38 @@ export type BorderControlProps = ColorProps &
|
|
|
122
102
|
* `RangeControl` for additional control over a border's width.
|
|
123
103
|
*/
|
|
124
104
|
withSlider?: boolean;
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
export type DropdownProps = ColorProps &
|
|
108
|
+
Pick< BorderControlProps, 'enableStyle' | 'size' > & {
|
|
125
109
|
/**
|
|
126
|
-
*
|
|
127
|
-
*
|
|
128
|
-
*
|
|
129
|
-
|
|
110
|
+
* An object representing a border or `undefined`. This component will
|
|
111
|
+
* extract the border color and style selections from this object to use as
|
|
112
|
+
* values for its popover controls.
|
|
113
|
+
*/
|
|
114
|
+
border?: Border;
|
|
115
|
+
/**
|
|
116
|
+
* An internal prop used to control the visibility of the dropdown.
|
|
117
|
+
*/
|
|
118
|
+
__unstablePopoverProps?: Omit< PopoverProps, 'children' >;
|
|
119
|
+
/**
|
|
120
|
+
* A callback invoked when the border color or style selections change.
|
|
121
|
+
*/
|
|
122
|
+
onChange: ( newBorder?: Border ) => void;
|
|
123
|
+
/**
|
|
124
|
+
* Any previous style selection made by the user. This can be used to
|
|
125
|
+
* reapply that previous selection when, for example, a zero border width is
|
|
126
|
+
* to a non-zero value.
|
|
127
|
+
*/
|
|
128
|
+
previousStyleSelection?: string;
|
|
129
|
+
/**
|
|
130
|
+
* Whether or not to render a header for the border color and style picker
|
|
131
|
+
* dropdown. The header includes a label for the color picker and a
|
|
132
|
+
* close button.
|
|
130
133
|
*/
|
|
131
|
-
|
|
134
|
+
showDropdownHeader?: boolean;
|
|
132
135
|
};
|
|
133
136
|
|
|
134
|
-
export type DropdownProps = ColorProps & {
|
|
135
|
-
/**
|
|
136
|
-
* An object representing a border or `undefined`. This component will
|
|
137
|
-
* extract the border color and style selections from this object to use as
|
|
138
|
-
* values for its popover controls.
|
|
139
|
-
*/
|
|
140
|
-
border?: Border;
|
|
141
|
-
/**
|
|
142
|
-
* An internal prop used to control the visibility of the dropdown.
|
|
143
|
-
*/
|
|
144
|
-
__unstablePopoverProps?: Omit< PopoverProps, 'children' >;
|
|
145
|
-
/**
|
|
146
|
-
* This controls whether to render border style options.
|
|
147
|
-
*
|
|
148
|
-
* @default true
|
|
149
|
-
*/
|
|
150
|
-
enableStyle?: boolean;
|
|
151
|
-
/**
|
|
152
|
-
* A callback invoked when the border color or style selections change.
|
|
153
|
-
*/
|
|
154
|
-
onChange: ( newBorder?: Border ) => void;
|
|
155
|
-
/**
|
|
156
|
-
* Any previous style selection made by the user. This can be used to
|
|
157
|
-
* reapply that previous selection when, for example, a zero border width is
|
|
158
|
-
* to a non-zero value.
|
|
159
|
-
*/
|
|
160
|
-
previousStyleSelection?: string;
|
|
161
|
-
/**
|
|
162
|
-
* Whether or not to render a header for the border color and style picker
|
|
163
|
-
* dropdown. The header includes a label for the color picker and a
|
|
164
|
-
* close button.
|
|
165
|
-
*/
|
|
166
|
-
showDropdownHeader?: boolean;
|
|
167
|
-
/**
|
|
168
|
-
* Start opting into the larger default height that will become the
|
|
169
|
-
* default size in a future version.
|
|
170
|
-
*
|
|
171
|
-
* @default false
|
|
172
|
-
*/
|
|
173
|
-
__next36pxDefaultSize?: boolean;
|
|
174
|
-
};
|
|
175
|
-
|
|
176
137
|
export type StylePickerProps = LabelProps & {
|
|
177
138
|
/**
|
|
178
139
|
* A callback function invoked when a border style is selected or cleared.
|
|
@@ -95,3 +95,17 @@ The `top`, `right`, `bottom`, and `left` box dimension values.
|
|
|
95
95
|
|
|
96
96
|
- Type: `Object`
|
|
97
97
|
- Required: No
|
|
98
|
+
|
|
99
|
+
### onMouseOver
|
|
100
|
+
|
|
101
|
+
A handler for onMouseOver events.
|
|
102
|
+
|
|
103
|
+
- Type: `Function`
|
|
104
|
+
- Required: No
|
|
105
|
+
|
|
106
|
+
### onMouseOut
|
|
107
|
+
|
|
108
|
+
A handler for onMouseOut events.
|
|
109
|
+
|
|
110
|
+
- Type: `Function`
|
|
111
|
+
- Required: No
|
package/src/box-control/index.js
CHANGED
|
@@ -52,6 +52,8 @@ export default function BoxControl( {
|
|
|
52
52
|
splitOnAxis = false,
|
|
53
53
|
allowReset = true,
|
|
54
54
|
resetValues = DEFAULT_VALUES,
|
|
55
|
+
onMouseOver,
|
|
56
|
+
onMouseOut,
|
|
55
57
|
} ) {
|
|
56
58
|
const [ values, setValues ] = useControlledState( valuesProp, {
|
|
57
59
|
fallback: DEFAULT_VALUES,
|
|
@@ -114,6 +116,8 @@ export default function BoxControl( {
|
|
|
114
116
|
setSelectedUnits,
|
|
115
117
|
sides,
|
|
116
118
|
values: inputValues,
|
|
119
|
+
onMouseOver,
|
|
120
|
+
onMouseOut,
|
|
117
121
|
};
|
|
118
122
|
|
|
119
123
|
return (
|