@wordpress/components 19.7.0-next.e230fbab09.0 → 19.8.1
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 +57 -1
- package/README.md +38 -0
- package/build/base-control/index.js +41 -32
- package/build/base-control/index.js.map +1 -1
- package/build/base-control/styles/base-control-styles.js +43 -22
- package/build/base-control/styles/base-control-styles.js.map +1 -1
- package/build/base-control/types.js +6 -0
- package/build/base-control/types.js.map +1 -0
- package/build/border-box-control/border-box-control/component.js +124 -0
- package/build/border-box-control/border-box-control/component.js.map +1 -0
- package/build/border-box-control/border-box-control/hook.js +113 -0
- package/build/border-box-control/border-box-control/hook.js.map +1 -0
- package/build/border-box-control/border-box-control/index.js +24 -0
- package/build/border-box-control/border-box-control/index.js.map +1 -0
- package/build/border-box-control/border-box-control-linked-button/component.js +59 -0
- package/build/border-box-control/border-box-control-linked-button/component.js.map +1 -0
- package/build/border-box-control/border-box-control-linked-button/hook.js +41 -0
- package/build/border-box-control/border-box-control-linked-button/hook.js.map +1 -0
- package/build/border-box-control/border-box-control-linked-button/index.js +16 -0
- package/build/border-box-control/border-box-control-linked-button/index.js.map +1 -0
- package/build/border-box-control/border-box-control-split-controls/component.js +93 -0
- package/build/border-box-control/border-box-control-split-controls/component.js.map +1 -0
- package/build/border-box-control/border-box-control-split-controls/hook.js +45 -0
- package/build/border-box-control/border-box-control-split-controls/hook.js.map +1 -0
- package/build/border-box-control/border-box-control-split-controls/index.js +16 -0
- package/build/border-box-control/border-box-control-split-controls/index.js.map +1 -0
- package/build/border-box-control/border-box-control-visualizer/component.js +40 -0
- package/build/border-box-control/border-box-control-visualizer/component.js.map +1 -0
- package/build/border-box-control/border-box-control-visualizer/hook.js +43 -0
- package/build/border-box-control/border-box-control-visualizer/hook.js.map +1 -0
- package/build/border-box-control/border-box-control-visualizer/index.js +16 -0
- package/build/border-box-control/border-box-control-visualizer/index.js.map +1 -0
- package/build/border-box-control/index.js +44 -0
- package/build/border-box-control/index.js.map +1 -0
- package/build/border-box-control/styles.js +76 -0
- package/build/border-box-control/styles.js.map +1 -0
- package/build/border-box-control/types.js +6 -0
- package/build/border-box-control/types.js.map +1 -0
- package/build/border-box-control/utils.js +161 -0
- package/build/border-box-control/utils.js.map +1 -0
- package/build/border-control/border-control/component.js +119 -0
- package/build/border-control/border-control/component.js.map +1 -0
- package/build/border-control/border-control/hook.js +130 -0
- package/build/border-control/border-control/hook.js.map +1 -0
- package/build/border-control/border-control/index.js +24 -0
- package/build/border-control/border-control/index.js.map +1 -0
- package/build/border-control/border-control-dropdown/component.js +196 -0
- package/build/border-control/border-control-dropdown/component.js.map +1 -0
- package/build/border-control/border-control-dropdown/hook.js +105 -0
- package/build/border-control/border-control-dropdown/hook.js.map +1 -0
- package/build/border-control/border-control-dropdown/index.js +16 -0
- package/build/border-control/border-control-dropdown/index.js.map +1 -0
- package/build/border-control/border-control-style-picker/component.js +101 -0
- package/build/border-control/border-control-style-picker/component.js.map +1 -0
- package/build/border-control/border-control-style-picker/hook.js +45 -0
- package/build/border-control/border-control-style-picker/hook.js.map +1 -0
- package/build/border-control/border-control-style-picker/index.js +16 -0
- package/build/border-control/border-control-style-picker/index.js.map +1 -0
- package/build/border-control/index.js +24 -0
- package/build/border-control/index.js.map +1 -0
- package/build/border-control/styles.js +125 -0
- package/build/border-control/styles.js.map +1 -0
- package/build/border-control/types.js +6 -0
- package/build/border-control/types.js.map +1 -0
- package/build/box-control/all-input-control.js +3 -7
- package/build/box-control/all-input-control.js.map +1 -1
- package/build/box-control/axial-input-controls.js +20 -15
- package/build/box-control/axial-input-controls.js.map +1 -1
- package/build/box-control/input-controls.js +21 -16
- package/build/box-control/input-controls.js.map +1 -1
- package/build/box-control/utils.js +25 -11
- package/build/box-control/utils.js.map +1 -1
- package/build/card/styles.js +22 -17
- package/build/card/styles.js.map +1 -1
- package/build/checkbox-control/index.js +21 -1
- package/build/checkbox-control/index.js.map +1 -1
- package/build/color-palette/index.js +53 -4
- package/build/color-palette/index.js.map +1 -1
- package/build/custom-select-control/index.js +12 -4
- package/build/custom-select-control/index.js.map +1 -1
- package/build/divider/styles.js +28 -16
- package/build/divider/styles.js.map +1 -1
- package/build/focal-point-picker/controls.js +2 -3
- package/build/focal-point-picker/controls.js.map +1 -1
- package/build/form-file-upload/index.js +4 -1
- package/build/form-file-upload/index.js.map +1 -1
- package/build/guide/index.js +14 -8
- package/build/guide/index.js.map +1 -1
- package/build/index.js +40 -0
- package/build/index.js.map +1 -1
- package/build/input-control/input-field.js +21 -14
- package/build/input-control/input-field.js.map +1 -1
- package/build/input-control/reducer/actions.js +1 -3
- package/build/input-control/reducer/actions.js.map +1 -1
- package/build/input-control/reducer/reducer.js +1 -43
- package/build/input-control/reducer/reducer.js.map +1 -1
- package/build/item-group/styles.js +14 -14
- package/build/item-group/styles.js.map +1 -1
- package/build/mobile/picker/index.android.js +0 -3
- package/build/mobile/picker/index.android.js.map +1 -1
- package/build/number-control/index.js +15 -10
- package/build/number-control/index.js.map +1 -1
- package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
- package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
- package/build/surface/styles.js +8 -8
- package/build/surface/styles.js.map +1 -1
- package/build/toggle-group-control/index.js +8 -0
- package/build/toggle-group-control/index.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/component.js +10 -1
- package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/styles.js +14 -3
- package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js +90 -0
- package/build/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js.map +1 -0
- package/build/toggle-group-control/toggle-group-control-option/component.js +9 -90
- package/build/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control-option-base/component.js +127 -0
- package/build/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -0
- package/build/toggle-group-control/toggle-group-control-option-base/index.js +16 -0
- package/build/toggle-group-control/toggle-group-control-option-base/index.js.map +1 -0
- package/build/toggle-group-control/toggle-group-control-option-base/styles.js +66 -0
- package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -0
- package/build/toggle-group-control/toggle-group-control-option-icon/component.js +55 -0
- package/build/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -0
- package/build/toggle-group-control/toggle-group-control-option-icon/index.js +16 -0
- package/build/toggle-group-control/toggle-group-control-option-icon/index.js.map +1 -0
- package/build/toolbar-dropdown-menu/index.js +1 -1
- package/build/toolbar-dropdown-menu/index.js.map +1 -1
- package/build/tree-grid/index.js +4 -1
- package/build/tree-grid/index.js.map +1 -1
- package/build/unit-control/index.js +56 -29
- package/build/unit-control/index.js.map +1 -1
- package/build/unit-control/unit-select-control.js +2 -4
- package/build/unit-control/unit-select-control.js.map +1 -1
- package/build/utils/colors-values.js +5 -3
- package/build/utils/colors-values.js.map +1 -1
- package/build/utils/config-values.js +9 -4
- package/build/utils/config-values.js.map +1 -1
- package/build-module/base-control/index.js +39 -35
- package/build-module/base-control/index.js.map +1 -1
- package/build-module/base-control/styles/base-control-styles.js +44 -16
- package/build-module/base-control/styles/base-control-styles.js.map +1 -1
- package/build-module/base-control/types.js +2 -0
- package/build-module/base-control/types.js.map +1 -0
- package/build-module/border-box-control/border-box-control/component.js +104 -0
- package/build-module/border-box-control/border-box-control/component.js.map +1 -0
- package/build-module/border-box-control/border-box-control/hook.js +97 -0
- package/build-module/border-box-control/border-box-control/hook.js.map +1 -0
- package/build-module/border-box-control/border-box-control/index.js +3 -0
- package/build-module/border-box-control/border-box-control/index.js.map +1 -0
- package/build-module/border-box-control/border-box-control-linked-button/component.js +42 -0
- package/build-module/border-box-control/border-box-control-linked-button/component.js.map +1 -0
- package/build-module/border-box-control/border-box-control-linked-button/hook.js +26 -0
- package/build-module/border-box-control/border-box-control-linked-button/hook.js.map +1 -0
- package/build-module/border-box-control/border-box-control-linked-button/index.js +2 -0
- package/build-module/border-box-control/border-box-control-linked-button/index.js.map +1 -0
- package/build-module/border-box-control/border-box-control-split-controls/component.js +77 -0
- package/build-module/border-box-control/border-box-control-split-controls/component.js.map +1 -0
- package/build-module/border-box-control/border-box-control-split-controls/hook.js +30 -0
- package/build-module/border-box-control/border-box-control-split-controls/hook.js.map +1 -0
- package/build-module/border-box-control/border-box-control-split-controls/index.js +2 -0
- package/build-module/border-box-control/border-box-control-split-controls/index.js.map +1 -0
- package/build-module/border-box-control/border-box-control-visualizer/component.js +27 -0
- package/build-module/border-box-control/border-box-control-visualizer/component.js.map +1 -0
- package/build-module/border-box-control/border-box-control-visualizer/hook.js +28 -0
- package/build-module/border-box-control/border-box-control-visualizer/hook.js.map +1 -0
- package/build-module/border-box-control/border-box-control-visualizer/index.js +2 -0
- package/build-module/border-box-control/border-box-control-visualizer/index.js.map +1 -0
- package/build-module/border-box-control/index.js +4 -0
- package/build-module/border-box-control/index.js.map +1 -0
- package/build-module/border-box-control/styles.js +66 -0
- package/build-module/border-box-control/styles.js.map +1 -0
- package/build-module/border-box-control/types.js +2 -0
- package/build-module/border-box-control/types.js.map +1 -0
- package/build-module/border-box-control/utils.js +127 -0
- package/build-module/border-box-control/utils.js.map +1 -0
- package/build-module/border-control/border-control/component.js +100 -0
- package/build-module/border-control/border-control/component.js.map +1 -0
- package/build-module/border-control/border-control/hook.js +115 -0
- package/build-module/border-control/border-control/hook.js.map +1 -0
- package/build-module/border-control/border-control/index.js +3 -0
- package/build-module/border-control/border-control/index.js.map +1 -0
- package/build-module/border-control/border-control-dropdown/component.js +174 -0
- package/build-module/border-control/border-control-dropdown/component.js.map +1 -0
- package/build-module/border-control/border-control-dropdown/hook.js +89 -0
- package/build-module/border-control/border-control-dropdown/hook.js.map +1 -0
- package/build-module/border-control/border-control-dropdown/index.js +2 -0
- package/build-module/border-control/border-control-dropdown/index.js.map +1 -0
- package/build-module/border-control/border-control-style-picker/component.js +81 -0
- package/build-module/border-control/border-control-style-picker/component.js.map +1 -0
- package/build-module/border-control/border-control-style-picker/hook.js +30 -0
- package/build-module/border-control/border-control-style-picker/hook.js.map +1 -0
- package/build-module/border-control/border-control-style-picker/index.js +2 -0
- package/build-module/border-control/border-control-style-picker/index.js.map +1 -0
- package/build-module/border-control/index.js +3 -0
- package/build-module/border-control/index.js.map +1 -0
- package/build-module/border-control/styles.js +90 -0
- package/build-module/border-control/styles.js.map +1 -0
- package/build-module/border-control/types.js +2 -0
- package/build-module/border-control/types.js.map +1 -0
- package/build-module/box-control/all-input-control.js +4 -8
- package/build-module/box-control/all-input-control.js.map +1 -1
- package/build-module/box-control/axial-input-controls.js +18 -14
- package/build-module/box-control/axial-input-controls.js.map +1 -1
- package/build-module/box-control/input-controls.js +18 -14
- package/build-module/box-control/input-controls.js.map +1 -1
- package/build-module/box-control/utils.js +25 -11
- package/build-module/box-control/utils.js.map +1 -1
- package/build-module/card/styles.js +23 -18
- package/build-module/card/styles.js.map +1 -1
- package/build-module/checkbox-control/index.js +24 -3
- package/build-module/checkbox-control/index.js.map +1 -1
- package/build-module/color-palette/index.js +52 -4
- package/build-module/color-palette/index.js.map +1 -1
- package/build-module/custom-select-control/index.js +12 -4
- package/build-module/custom-select-control/index.js.map +1 -1
- package/build-module/divider/styles.js +29 -10
- package/build-module/divider/styles.js.map +1 -1
- package/build-module/focal-point-picker/controls.js +2 -3
- package/build-module/focal-point-picker/controls.js.map +1 -1
- package/build-module/form-file-upload/index.js +4 -1
- package/build-module/form-file-upload/index.js.map +1 -1
- package/build-module/guide/index.js +14 -8
- package/build-module/guide/index.js.map +1 -1
- package/build-module/index.js +3 -1
- package/build-module/index.js.map +1 -1
- package/build-module/input-control/input-field.js +21 -13
- package/build-module/input-control/input-field.js.map +1 -1
- package/build-module/input-control/reducer/actions.js +0 -1
- package/build-module/input-control/reducer/actions.js.map +1 -1
- package/build-module/input-control/reducer/reducer.js +2 -39
- package/build-module/input-control/reducer/reducer.js.map +1 -1
- package/build-module/item-group/styles.js +14 -14
- package/build-module/item-group/styles.js.map +1 -1
- package/build-module/mobile/picker/index.android.js +0 -3
- package/build-module/mobile/picker/index.android.js.map +1 -1
- package/build-module/number-control/index.js +15 -9
- package/build-module/number-control/index.js.map +1 -1
- package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
- package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
- package/build-module/surface/styles.js +8 -8
- package/build-module/surface/styles.js.map +1 -1
- package/build-module/toggle-group-control/index.js +1 -0
- package/build-module/toggle-group-control/index.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/component.js +8 -1
- 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 +11 -3
- package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js +86 -0
- package/build-module/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js.map +1 -0
- package/build-module/toggle-group-control/toggle-group-control-option/component.js +9 -79
- package/build-module/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control-option-base/component.js +105 -0
- package/build-module/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -0
- package/build-module/toggle-group-control/toggle-group-control-option-base/index.js +2 -0
- package/build-module/toggle-group-control/toggle-group-control-option-base/index.js.map +1 -0
- package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js +55 -0
- package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -0
- package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js +50 -0
- package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -0
- package/build-module/toggle-group-control/toggle-group-control-option-icon/index.js +2 -0
- package/build-module/toggle-group-control/toggle-group-control-option-icon/index.js.map +1 -0
- package/build-module/toolbar-dropdown-menu/index.js +1 -1
- package/build-module/toolbar-dropdown-menu/index.js.map +1 -1
- package/build-module/tree-grid/index.js +4 -1
- package/build-module/tree-grid/index.js.map +1 -1
- package/build-module/unit-control/index.js +54 -27
- package/build-module/unit-control/index.js.map +1 -1
- package/build-module/unit-control/unit-select-control.js +2 -3
- package/build-module/unit-control/unit-select-control.js.map +1 -1
- package/build-module/utils/colors-values.js +5 -3
- package/build-module/utils/colors-values.js.map +1 -1
- package/build-module/utils/config-values.js +8 -4
- package/build-module/utils/config-values.js.map +1 -1
- package/build-style/style-rtl.css +33 -185
- package/build-style/style.css +33 -185
- package/build-types/base-control/index.d.ts +35 -71
- package/build-types/base-control/index.d.ts.map +1 -1
- package/build-types/base-control/stories/index.d.ts +25 -0
- package/build-types/base-control/stories/index.d.ts.map +1 -0
- package/build-types/base-control/styles/base-control-styles.d.ts +10 -5
- package/build-types/base-control/styles/base-control-styles.d.ts.map +1 -1
- package/build-types/base-control/types.d.ts +41 -0
- package/build-types/base-control/types.d.ts.map +1 -0
- package/build-types/border-box-control/border-box-control/component.d.ts +4 -0
- package/build-types/border-box-control/border-box-control/component.d.ts.map +1 -0
- package/build-types/border-box-control/border-box-control/hook.d.ts +282 -0
- package/build-types/border-box-control/border-box-control/hook.d.ts.map +1 -0
- package/build-types/border-box-control/border-box-control/index.d.ts +3 -0
- package/build-types/border-box-control/border-box-control/index.d.ts.map +1 -0
- package/build-types/border-box-control/border-box-control-linked-button/component.d.ts +4 -0
- package/build-types/border-box-control/border-box-control-linked-button/component.d.ts.map +1 -0
- package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts +266 -0
- package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts.map +1 -0
- package/build-types/border-box-control/border-box-control-linked-button/index.d.ts +2 -0
- package/build-types/border-box-control/border-box-control-linked-button/index.d.ts.map +1 -0
- package/build-types/border-box-control/border-box-control-split-controls/component.d.ts +4 -0
- package/build-types/border-box-control/border-box-control-split-controls/component.d.ts.map +1 -0
- package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts +274 -0
- package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts.map +1 -0
- package/build-types/border-box-control/border-box-control-split-controls/index.d.ts +2 -0
- package/build-types/border-box-control/border-box-control-split-controls/index.d.ts.map +1 -0
- package/build-types/border-box-control/border-box-control-visualizer/component.d.ts +4 -0
- package/build-types/border-box-control/border-box-control-visualizer/component.d.ts.map +1 -0
- package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts +266 -0
- package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts.map +1 -0
- package/build-types/border-box-control/border-box-control-visualizer/index.d.ts +2 -0
- package/build-types/border-box-control/border-box-control-visualizer/index.d.ts.map +1 -0
- package/build-types/border-box-control/index.d.ts +4 -0
- package/build-types/border-box-control/index.d.ts.map +1 -0
- package/build-types/border-box-control/styles.d.ts +8 -0
- package/build-types/border-box-control/styles.d.ts.map +1 -0
- package/build-types/border-box-control/types.d.ts +91 -0
- package/build-types/border-box-control/types.d.ts.map +1 -0
- package/build-types/border-box-control/utils.d.ts +24 -0
- package/build-types/border-box-control/utils.d.ts.map +1 -0
- package/build-types/border-control/border-control/component.d.ts +4 -0
- package/build-types/border-control/border-control/component.d.ts.map +1 -0
- package/build-types/border-control/border-control/hook.d.ts +285 -0
- package/build-types/border-control/border-control/hook.d.ts.map +1 -0
- package/build-types/border-control/border-control/index.d.ts +3 -0
- package/build-types/border-control/border-control/index.d.ts.map +1 -0
- package/build-types/border-control/border-control-dropdown/component.d.ts +4 -0
- package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -0
- package/build-types/border-control/border-control-dropdown/hook.d.ts +280 -0
- package/build-types/border-control/border-control-dropdown/hook.d.ts.map +1 -0
- package/build-types/border-control/border-control-dropdown/index.d.ts +2 -0
- package/build-types/border-control/border-control-dropdown/index.d.ts.map +1 -0
- package/build-types/border-control/border-control-style-picker/component.d.ts +4 -0
- package/build-types/border-control/border-control-style-picker/component.d.ts.map +1 -0
- package/build-types/border-control/border-control-style-picker/hook.d.ts +269 -0
- package/build-types/border-control/border-control-style-picker/hook.d.ts.map +1 -0
- package/build-types/border-control/border-control-style-picker/index.d.ts +2 -0
- package/build-types/border-control/border-control-style-picker/index.d.ts.map +1 -0
- package/build-types/border-control/index.d.ts +3 -0
- package/build-types/border-control/index.d.ts.map +1 -0
- package/build-types/border-control/styles.d.ts +18 -0
- package/build-types/border-control/styles.d.ts.map +1 -0
- package/build-types/border-control/types.d.ts +163 -0
- package/build-types/border-control/types.d.ts.map +1 -0
- package/build-types/card/card-divider/hook.d.ts +1 -1
- package/build-types/card/styles.d.ts.map +1 -1
- package/build-types/color-indicator/index.d.ts +7 -0
- package/build-types/color-indicator/index.d.ts.map +1 -0
- package/build-types/color-palette/index.d.ts.map +1 -1
- package/build-types/color-picker/styles.d.ts +1 -1
- package/build-types/divider/stories/index.d.ts +1 -0
- package/build-types/divider/stories/index.d.ts.map +1 -1
- package/build-types/divider/styles.d.ts.map +1 -1
- package/build-types/divider/types.d.ts +8 -1
- package/build-types/divider/types.d.ts.map +1 -1
- package/build-types/input-control/input-field.d.ts.map +1 -1
- package/build-types/input-control/reducer/actions.d.ts +1 -3
- package/build-types/input-control/reducer/actions.d.ts.map +1 -1
- package/build-types/input-control/reducer/reducer.d.ts +3 -9
- package/build-types/input-control/reducer/reducer.d.ts.map +1 -1
- package/build-types/input-control/stories/index.d.ts +17 -0
- package/build-types/input-control/stories/index.d.ts.map +1 -0
- package/build-types/input-control/types.d.ts +2 -2
- package/build-types/input-control/types.d.ts.map +1 -1
- package/build-types/item-group/styles.d.ts.map +1 -1
- package/build-types/number-control/index.d.ts +3 -3
- package/build-types/number-control/index.d.ts.map +1 -1
- package/build-types/range-control/styles/range-control-styles.d.ts +1 -1
- package/build-types/resizable-box/resize-tooltip/styles/resize-tooltip.styles.d.ts.map +1 -1
- package/build-types/spinner/styles/spinner-styles.d.ts +5 -0
- package/build-types/spinner/styles/spinner-styles.d.ts.map +1 -0
- package/build-types/toggle-group-control/index.d.ts +1 -0
- package/build-types/toggle-group-control/index.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control/styles.d.ts +5 -0
- package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.d.ts +9 -0
- package/build-types/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.d.ts.map +1 -0
- package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts +6 -2
- package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option/styles.d.ts +0 -4
- package/build-types/toggle-group-control/toggle-group-control-option/styles.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts +25 -0
- package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts.map +1 -0
- package/build-types/toggle-group-control/toggle-group-control-option-base/index.d.ts +2 -0
- package/build-types/toggle-group-control/toggle-group-control-option-base/index.d.ts.map +1 -0
- package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts +15 -0
- package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -0
- package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts +37 -0
- package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts.map +1 -0
- package/build-types/toggle-group-control/toggle-group-control-option-icon/index.d.ts +2 -0
- package/build-types/toggle-group-control/toggle-group-control-option-icon/index.d.ts.map +1 -0
- package/build-types/toggle-group-control/types.d.ts +24 -8
- package/build-types/toggle-group-control/types.d.ts.map +1 -1
- package/build-types/ui/form-group/form-group.d.ts +2 -2
- package/build-types/unit-control/index.d.ts +12 -5
- package/build-types/unit-control/index.d.ts.map +1 -1
- package/build-types/unit-control/stories/index.d.ts +33 -0
- package/build-types/unit-control/stories/index.d.ts.map +1 -0
- package/build-types/unit-control/styles/unit-control-styles.d.ts +1 -1
- package/build-types/unit-control/types.d.ts +28 -7
- package/build-types/unit-control/types.d.ts.map +1 -1
- package/build-types/unit-control/unit-select-control.d.ts.map +1 -1
- package/build-types/utils/colors-values.d.ts +78 -18
- package/build-types/utils/colors-values.d.ts.map +1 -1
- package/build-types/utils/config-values.d.ts +71 -71
- package/build-types/utils/config-values.d.ts.map +1 -1
- package/package.json +17 -17
- package/src/animate/README.md +1 -1
- package/src/base-control/README.md +20 -12
- package/src/base-control/index.tsx +124 -0
- package/src/base-control/stories/index.tsx +80 -0
- package/src/base-control/styles/{base-control-styles.js → base-control-styles.ts} +23 -1
- package/src/base-control/types.ts +42 -0
- package/src/border-box-control/border-box-control/README.md +178 -0
- package/src/border-box-control/border-box-control/component.tsx +123 -0
- package/src/border-box-control/border-box-control/hook.ts +119 -0
- package/src/border-box-control/border-box-control/index.ts +2 -0
- package/src/border-box-control/border-box-control-linked-button/component.tsx +50 -0
- package/src/border-box-control/border-box-control-linked-button/hook.ts +30 -0
- package/src/border-box-control/border-box-control-linked-button/index.ts +1 -0
- package/src/border-box-control/border-box-control-split-controls/component.tsx +90 -0
- package/src/border-box-control/border-box-control-split-controls/hook.ts +34 -0
- package/src/border-box-control/border-box-control-split-controls/index.ts +1 -0
- package/src/border-box-control/border-box-control-visualizer/component.tsx +28 -0
- package/src/border-box-control/border-box-control-visualizer/hook.ts +30 -0
- package/src/border-box-control/border-box-control-visualizer/index.ts +1 -0
- package/src/border-box-control/index.ts +3 -0
- package/src/border-box-control/stories/index.js +104 -0
- package/src/border-box-control/styles.ts +69 -0
- package/src/border-box-control/test/index.js +354 -0
- package/src/border-box-control/test/utils.js +305 -0
- package/src/border-box-control/types.ts +98 -0
- package/src/border-box-control/utils.ts +151 -0
- package/src/border-control/border-control/README.md +181 -0
- package/src/border-control/border-control/component.tsx +112 -0
- package/src/border-control/border-control/hook.ts +145 -0
- package/src/border-control/border-control/index.ts +2 -0
- package/src/border-control/border-control-dropdown/component.tsx +252 -0
- package/src/border-control/border-control-dropdown/hook.ts +98 -0
- package/src/border-control/border-control-dropdown/index.ts +1 -0
- package/src/border-control/border-control-style-picker/component.tsx +89 -0
- package/src/border-control/border-control-style-picker/hook.ts +34 -0
- package/src/border-control/border-control-style-picker/index.ts +1 -0
- package/src/border-control/index.ts +2 -0
- package/src/border-control/stories/index.js +118 -0
- package/src/border-control/styles.ts +190 -0
- package/src/border-control/test/index.js +436 -0
- package/src/border-control/types.ts +173 -0
- package/src/box-control/all-input-control.js +2 -10
- package/src/box-control/axial-input-controls.js +32 -21
- package/src/box-control/input-controls.js +30 -19
- package/src/box-control/utils.js +29 -12
- package/src/card/styles.js +11 -5
- package/src/card/test/__snapshots__/index.js.snap +83 -66
- package/src/card/test/index.js +7 -5
- package/src/checkbox-control/index.js +34 -3
- package/src/checkbox-control/stories/index.js +44 -0
- package/src/checkbox-control/style.scss +4 -2
- package/src/color-palette/README.md +6 -0
- package/src/color-palette/index.js +73 -8
- package/src/color-palette/stories/index.js +69 -26
- package/src/color-palette/style.scss +11 -3
- package/src/color-palette/test/__snapshots__/index.js.snap +662 -12
- package/src/color-palette/test/index.js +1 -1
- package/src/custom-select-control/index.js +15 -3
- package/src/custom-select-control/stories/index.js +77 -74
- package/src/custom-select-control/style.scss +23 -4
- package/src/disabled/README.md +7 -10
- package/src/divider/stories/index.tsx +26 -23
- package/src/divider/styles.ts +9 -0
- package/src/divider/types.ts +11 -1
- package/src/flyout/test/__snapshots__/index.js.snap +7 -7
- package/src/focal-point-picker/controls.js +2 -3
- package/src/font-size-picker/test/index.js +0 -2
- package/src/form-file-upload/README.md +18 -0
- package/src/form-file-upload/index.js +3 -0
- package/src/form-file-upload/test/index.js +73 -11
- package/src/form-toggle/README.md +1 -1
- package/src/guide/index.js +12 -13
- package/src/guide/style.scss +0 -4
- package/src/index.js +8 -0
- package/src/input-control/input-field.tsx +23 -12
- package/src/input-control/reducer/actions.ts +1 -7
- package/src/input-control/reducer/reducer.ts +0 -29
- package/src/input-control/types.ts +2 -1
- package/src/item-group/styles.ts +1 -0
- package/src/item-group/test/__snapshots__/index.js.snap +11 -10
- package/src/mobile/picker/index.android.js +0 -1
- package/src/number-control/README.md +14 -0
- package/src/number-control/index.js +13 -12
- package/src/number-control/stories/index.js +14 -7
- package/src/number-control/test/index.js +79 -1
- package/src/range-control/stories/index.js +91 -119
- package/src/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +1 -0
- package/src/surface/styles.js +1 -1
- package/src/surface/test/__snapshots__/index.js.snap +11 -11
- package/src/toggle-group-control/index.ts +1 -0
- package/src/toggle-group-control/stories/index.js +37 -7
- package/src/toggle-group-control/test/__snapshots__/index.js.snap +269 -32
- package/src/toggle-group-control/test/index.js +43 -10
- package/src/toggle-group-control/toggle-group-control/component.tsx +10 -0
- package/src/toggle-group-control/toggle-group-control/styles.ts +14 -0
- package/src/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.tsx +86 -0
- package/src/toggle-group-control/toggle-group-control-option/README.md +8 -5
- package/src/toggle-group-control/toggle-group-control-option/component.tsx +18 -97
- package/src/toggle-group-control/toggle-group-control-option-base/README.md +27 -0
- package/src/toggle-group-control/toggle-group-control-option-base/component.tsx +129 -0
- package/src/toggle-group-control/toggle-group-control-option-base/index.ts +1 -0
- package/src/toggle-group-control/{toggle-group-control-option → toggle-group-control-option-base}/styles.ts +4 -13
- package/src/toggle-group-control/toggle-group-control-option-icon/README.md +56 -0
- package/src/toggle-group-control/toggle-group-control-option-icon/component.tsx +56 -0
- package/src/toggle-group-control/toggle-group-control-option-icon/index.ts +1 -0
- package/src/toggle-group-control/types.ts +33 -8
- package/src/toolbar-dropdown-menu/index.js +1 -1
- package/src/toolbar-group/style.scss +0 -73
- package/src/tools-panel/test/__snapshots__/index.js.snap +8 -8
- package/src/tree-grid/README.md +1 -1
- package/src/tree-grid/index.js +4 -0
- package/src/tree-grid/test/index.js +61 -17
- package/src/unit-control/README.md +7 -3
- package/src/unit-control/index.tsx +65 -31
- package/src/unit-control/stories/index.tsx +170 -0
- package/src/unit-control/test/index.js +263 -100
- package/src/unit-control/types.ts +65 -42
- package/src/unit-control/unit-select-control.tsx +2 -3
- package/src/utils/colors-values.js +4 -3
- package/src/utils/config-values.js +9 -4
- package/tsconfig.json +3 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/build/guide/finish-button.js +0 -44
- package/build/guide/finish-button.js.map +0 -1
- package/build/toggle-group-control/toggle-group-control-option/styles.js +0 -73
- package/build/toggle-group-control/toggle-group-control-option/styles.js.map +0 -1
- package/build-module/guide/finish-button.js +0 -34
- package/build-module/guide/finish-button.js.map +0 -1
- package/build-module/toggle-group-control/toggle-group-control-option/styles.js +0 -61
- package/build-module/toggle-group-control/toggle-group-control-option/styles.js.map +0 -1
- package/src/base-control/index.js +0 -111
- package/src/base-control/stories/index.js +0 -81
- package/src/guide/finish-button.js +0 -26
- package/src/guide/test/finish-button.js +0 -49
- package/src/unit-control/stories/index.js +0 -127
|
@@ -56,6 +56,8 @@ const stateReducer = (
|
|
|
56
56
|
}
|
|
57
57
|
};
|
|
58
58
|
export default function CustomSelectControl( {
|
|
59
|
+
/** Start opting into the larger default height that will become the default size in a future version. */
|
|
60
|
+
__next36pxDefaultSize = false,
|
|
59
61
|
className,
|
|
60
62
|
hideLabelFromVision,
|
|
61
63
|
label,
|
|
@@ -141,15 +143,24 @@ export default function CustomSelectControl( {
|
|
|
141
143
|
// This is needed because some speech recognition software don't support `aria-labelledby`.
|
|
142
144
|
'aria-label': label,
|
|
143
145
|
'aria-labelledby': undefined,
|
|
144
|
-
className:
|
|
145
|
-
|
|
146
|
+
className: classnames(
|
|
147
|
+
'components-custom-select-control__button',
|
|
148
|
+
{ 'is-next-36px-default-size': __next36pxDefaultSize }
|
|
149
|
+
),
|
|
150
|
+
isSmall: ! __next36pxDefaultSize,
|
|
146
151
|
describedBy: getDescribedBy(),
|
|
147
152
|
} ) }
|
|
148
153
|
>
|
|
149
154
|
{ itemToString( selectedItem ) }
|
|
150
155
|
<Icon
|
|
151
156
|
icon={ chevronDown }
|
|
152
|
-
className=
|
|
157
|
+
className={ classnames(
|
|
158
|
+
'components-custom-select-control__button-icon',
|
|
159
|
+
{
|
|
160
|
+
'is-next-36px-default-size': __next36pxDefaultSize,
|
|
161
|
+
}
|
|
162
|
+
) }
|
|
163
|
+
size={ 18 }
|
|
153
164
|
/>
|
|
154
165
|
</Button>
|
|
155
166
|
{ /* eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions */ }
|
|
@@ -169,6 +180,7 @@ export default function CustomSelectControl( {
|
|
|
169
180
|
'is-highlighted':
|
|
170
181
|
index === highlightedIndex,
|
|
171
182
|
'has-hint': !! item.__experimentalHint,
|
|
183
|
+
'is-next-36px-default-size': __next36pxDefaultSize,
|
|
172
184
|
}
|
|
173
185
|
),
|
|
174
186
|
style: item.style,
|
|
@@ -6,81 +6,84 @@ import CustomSelectControl from '../';
|
|
|
6
6
|
export default {
|
|
7
7
|
title: 'Components/CustomSelectControl',
|
|
8
8
|
component: CustomSelectControl,
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
key: 'small',
|
|
14
|
-
name: 'Small',
|
|
15
|
-
style: { fontSize: '50%' },
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
key: 'normal',
|
|
19
|
-
name: 'Normal',
|
|
20
|
-
style: { fontSize: '100%' },
|
|
21
|
-
className: 'can-apply-custom-class-to-option',
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
key: 'large',
|
|
25
|
-
name: 'Large',
|
|
26
|
-
style: { fontSize: '200%' },
|
|
27
|
-
},
|
|
28
|
-
{
|
|
29
|
-
key: 'huge',
|
|
30
|
-
name: 'Huge',
|
|
31
|
-
style: { fontSize: '300%' },
|
|
32
|
-
},
|
|
33
|
-
];
|
|
34
|
-
export const _default = () => (
|
|
35
|
-
<CustomSelectControl label="Font size" options={ defaultOptions } />
|
|
36
|
-
);
|
|
37
|
-
|
|
38
|
-
const longLabelOptions = [
|
|
39
|
-
{
|
|
40
|
-
key: 'reallylonglabel1',
|
|
41
|
-
name: 'Really long labels are good for stress testing',
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
key: 'reallylonglabel2',
|
|
45
|
-
name: 'But they can take a long time to type.',
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
key: 'reallylonglabel3',
|
|
49
|
-
name:
|
|
50
|
-
'That really is ok though because you should stress test your UIs.',
|
|
9
|
+
argTypes: {
|
|
10
|
+
__next36pxDefaultSize: {
|
|
11
|
+
control: { type: 'boolean' },
|
|
12
|
+
},
|
|
51
13
|
},
|
|
52
|
-
|
|
14
|
+
};
|
|
53
15
|
|
|
54
|
-
export const
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
16
|
+
export const Default = CustomSelectControl.bind( {} );
|
|
17
|
+
Default.args = {
|
|
18
|
+
label: 'Label',
|
|
19
|
+
options: [
|
|
20
|
+
{
|
|
21
|
+
key: 'small',
|
|
22
|
+
name: 'Small',
|
|
23
|
+
style: { fontSize: '50%' },
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
key: 'normal',
|
|
27
|
+
name: 'Normal',
|
|
28
|
+
style: { fontSize: '100%' },
|
|
29
|
+
className: 'can-apply-custom-class-to-option',
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
key: 'large',
|
|
33
|
+
name: 'Large',
|
|
34
|
+
style: { fontSize: '200%' },
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
key: 'huge',
|
|
38
|
+
name: 'Huge',
|
|
39
|
+
style: { fontSize: '300%' },
|
|
40
|
+
},
|
|
41
|
+
],
|
|
42
|
+
};
|
|
60
43
|
|
|
61
|
-
const
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
__experimentalHint: '1600x1600',
|
|
81
|
-
},
|
|
82
|
-
];
|
|
44
|
+
export const WithLongLabels = CustomSelectControl.bind( {} );
|
|
45
|
+
WithLongLabels.args = {
|
|
46
|
+
...Default.args,
|
|
47
|
+
options: [
|
|
48
|
+
{
|
|
49
|
+
key: 'reallylonglabel1',
|
|
50
|
+
name: 'Really long labels are good for stress testing',
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
key: 'reallylonglabel2',
|
|
54
|
+
name: 'But they can take a long time to type.',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
key: 'reallylonglabel3',
|
|
58
|
+
name:
|
|
59
|
+
'That really is ok though because you should stress test your UIs.',
|
|
60
|
+
},
|
|
61
|
+
],
|
|
62
|
+
};
|
|
83
63
|
|
|
84
|
-
export const
|
|
85
|
-
|
|
86
|
-
|
|
64
|
+
export const WithHints = CustomSelectControl.bind( {} );
|
|
65
|
+
WithHints.args = {
|
|
66
|
+
...Default.args,
|
|
67
|
+
options: [
|
|
68
|
+
{
|
|
69
|
+
key: 'thumbnail',
|
|
70
|
+
name: 'Thumbnail',
|
|
71
|
+
__experimentalHint: '150x150',
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
key: 'medium',
|
|
75
|
+
name: 'Medium',
|
|
76
|
+
__experimentalHint: '250x250',
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
key: 'large',
|
|
80
|
+
name: 'Large',
|
|
81
|
+
__experimentalHint: '1024x1024',
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
key: 'full',
|
|
85
|
+
name: 'Full Size',
|
|
86
|
+
__experimentalHint: '1600x1600',
|
|
87
|
+
},
|
|
88
|
+
],
|
|
89
|
+
};
|
|
@@ -10,15 +10,26 @@
|
|
|
10
10
|
.components-custom-select-control__button {
|
|
11
11
|
border: 1px solid $gray-700;
|
|
12
12
|
border-radius: $radius-block-ui;
|
|
13
|
-
min-height: 30px;
|
|
14
13
|
min-width: 130px;
|
|
15
14
|
position: relative;
|
|
16
15
|
text-align: left;
|
|
17
16
|
|
|
17
|
+
&:not(.is-next-36px-default-size) {
|
|
18
|
+
min-height: 30px;
|
|
19
|
+
}
|
|
20
|
+
|
|
18
21
|
// For all button sizes allow sufficient space for the
|
|
19
22
|
// dropdown "arrow" icon to display.
|
|
20
23
|
&.components-custom-select-control__button {
|
|
21
|
-
|
|
24
|
+
// TODO: Some of these can be removed after some internal inconsistencies are addressed, such as the chevron
|
|
25
|
+
// (https://github.com/WordPress/gutenberg/issues/39400) and Button padding (https://github.com/WordPress/gutenberg/issues/39431)
|
|
26
|
+
padding-left: $grid-unit-20;
|
|
27
|
+
padding-right: $icon-size + $grid-unit-10;
|
|
28
|
+
|
|
29
|
+
&:not(.is-next-36px-default-size) {
|
|
30
|
+
padding-left: $grid-unit-10;
|
|
31
|
+
padding-right: $icon-size;
|
|
32
|
+
}
|
|
22
33
|
}
|
|
23
34
|
|
|
24
35
|
&:focus:not(:disabled) {
|
|
@@ -30,8 +41,12 @@
|
|
|
30
41
|
height: 100%;
|
|
31
42
|
padding: 0;
|
|
32
43
|
position: absolute;
|
|
33
|
-
right:
|
|
44
|
+
right: $grid-unit-10;
|
|
34
45
|
top: 0;
|
|
46
|
+
|
|
47
|
+
&:not(.is-next-36px-default-size) {
|
|
48
|
+
right: $grid-unit-05;
|
|
49
|
+
}
|
|
35
50
|
}
|
|
36
51
|
}
|
|
37
52
|
|
|
@@ -61,10 +76,14 @@
|
|
|
61
76
|
display: grid;
|
|
62
77
|
grid-template-columns: auto auto;
|
|
63
78
|
list-style-type: none;
|
|
64
|
-
padding: $grid-unit-10;
|
|
79
|
+
padding: $grid-unit-10 $grid-unit-20;
|
|
65
80
|
cursor: default;
|
|
66
81
|
line-height: $icon-size + $grid-unit-05;
|
|
67
82
|
|
|
83
|
+
&:not(.is-next-36px-default-size) {
|
|
84
|
+
padding: $grid-unit-10;
|
|
85
|
+
}
|
|
86
|
+
|
|
68
87
|
&.has-hint {
|
|
69
88
|
grid-template-columns: auto auto 30px;
|
|
70
89
|
}
|
package/src/disabled/README.md
CHANGED
|
@@ -33,19 +33,16 @@ const MyDisabled = () => {
|
|
|
33
33
|
};
|
|
34
34
|
```
|
|
35
35
|
|
|
36
|
-
A component can detect if it has been wrapped in a `<Disabled
|
|
36
|
+
A component can detect if it has been wrapped in a `<Disabled />` by accessing its [context](https://reactjs.org/docs/context.html) using `Disabled.Context`.
|
|
37
37
|
|
|
38
38
|
```jsx
|
|
39
|
-
function CustomButton() {
|
|
39
|
+
function CustomButton( props ) {
|
|
40
|
+
const isDisabled = useContext( Disabled.Context );
|
|
40
41
|
return (
|
|
41
|
-
<
|
|
42
|
-
{
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
style={ { opacity: isDisabled ? 0.5 : 1 } }
|
|
46
|
-
/>
|
|
47
|
-
) }
|
|
48
|
-
</Disabled.Consumer>
|
|
42
|
+
<button
|
|
43
|
+
{ ...props }
|
|
44
|
+
style={ { opacity: isDisabled ? 0.5 : 1 } }
|
|
45
|
+
/>
|
|
49
46
|
);
|
|
50
47
|
}
|
|
51
48
|
```
|
|
@@ -8,6 +8,7 @@ import type { ComponentMeta, ComponentStory } from '@storybook/react';
|
|
|
8
8
|
*/
|
|
9
9
|
import { Text } from '../../text';
|
|
10
10
|
import { Divider } from '..';
|
|
11
|
+
import { Flex } from '../../flex';
|
|
11
12
|
|
|
12
13
|
const meta: ComponentMeta< typeof Divider > = {
|
|
13
14
|
component: Divider,
|
|
@@ -30,7 +31,7 @@ const meta: ComponentMeta< typeof Divider > = {
|
|
|
30
31
|
};
|
|
31
32
|
export default meta;
|
|
32
33
|
|
|
33
|
-
const
|
|
34
|
+
const Template: ComponentStory< typeof Divider > = ( args ) => (
|
|
34
35
|
<div>
|
|
35
36
|
<Text>Some text before the divider</Text>
|
|
36
37
|
<Divider { ...args } />
|
|
@@ -38,33 +39,35 @@ const HorizontalTemplate: ComponentStory< typeof Divider > = ( args ) => (
|
|
|
38
39
|
</div>
|
|
39
40
|
);
|
|
40
41
|
|
|
41
|
-
const
|
|
42
|
-
const styles = {
|
|
43
|
-
display: 'flex',
|
|
44
|
-
alignItems: 'stretch',
|
|
45
|
-
justifyContent: 'start',
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
return (
|
|
49
|
-
<div style={ styles }>
|
|
50
|
-
<Text>Some text before the divider</Text>
|
|
51
|
-
<Divider { ...args } />
|
|
52
|
-
<Text>Some text after the divider</Text>
|
|
53
|
-
</div>
|
|
54
|
-
);
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
export const Horizontal: ComponentStory<
|
|
58
|
-
typeof Divider
|
|
59
|
-
> = HorizontalTemplate.bind( {} );
|
|
42
|
+
export const Horizontal: ComponentStory< typeof Divider > = Template.bind( {} );
|
|
60
43
|
Horizontal.args = {
|
|
61
44
|
margin: 2,
|
|
62
45
|
};
|
|
63
46
|
|
|
64
|
-
export const Vertical: ComponentStory< typeof Divider > =
|
|
65
|
-
{}
|
|
66
|
-
);
|
|
47
|
+
export const Vertical: ComponentStory< typeof Divider > = Template.bind( {} );
|
|
67
48
|
Vertical.args = {
|
|
68
49
|
...Horizontal.args,
|
|
69
50
|
orientation: 'vertical',
|
|
70
51
|
};
|
|
52
|
+
|
|
53
|
+
// Inside a `flex` container, the divider will need to be `stretch` aligned in order to be visible.
|
|
54
|
+
export const InFlexContainer: ComponentStory< typeof Divider > = ( args ) => {
|
|
55
|
+
return (
|
|
56
|
+
<Flex align="stretch">
|
|
57
|
+
<Text>
|
|
58
|
+
Some text before the divider Some text before the divider Some
|
|
59
|
+
text before the divider Some text before the divider Some text
|
|
60
|
+
before the divider Some text before the divider Some text before
|
|
61
|
+
the divider
|
|
62
|
+
</Text>
|
|
63
|
+
<Divider { ...args } />
|
|
64
|
+
<Text>
|
|
65
|
+
Some text after the divider Some text after the divider Some
|
|
66
|
+
text after the divider
|
|
67
|
+
</Text>
|
|
68
|
+
</Flex>
|
|
69
|
+
);
|
|
70
|
+
};
|
|
71
|
+
InFlexContainer.args = {
|
|
72
|
+
...Vertical.args,
|
|
73
|
+
};
|
package/src/divider/styles.ts
CHANGED
|
@@ -45,6 +45,14 @@ const renderMargin = ( {
|
|
|
45
45
|
} )()
|
|
46
46
|
);
|
|
47
47
|
|
|
48
|
+
const renderDisplay = ( {
|
|
49
|
+
'aria-orientation': orientation = 'horizontal',
|
|
50
|
+
}: Props ) => {
|
|
51
|
+
return orientation === 'vertical'
|
|
52
|
+
? css( { display: 'inline' } )
|
|
53
|
+
: undefined;
|
|
54
|
+
};
|
|
55
|
+
|
|
48
56
|
const renderBorder = ( {
|
|
49
57
|
'aria-orientation': orientation = 'horizontal',
|
|
50
58
|
}: Props ) => {
|
|
@@ -67,6 +75,7 @@ export const DividerView = styled.hr< Props >`
|
|
|
67
75
|
border: 0;
|
|
68
76
|
margin: 0;
|
|
69
77
|
|
|
78
|
+
${ renderDisplay }
|
|
70
79
|
${ renderBorder }
|
|
71
80
|
${ renderSize }
|
|
72
81
|
${ renderMargin }
|
package/src/divider/types.ts
CHANGED
|
@@ -22,8 +22,18 @@ export interface OwnProps {
|
|
|
22
22
|
* Adjusts the inline-end margin.
|
|
23
23
|
*/
|
|
24
24
|
marginEnd?: SpaceInput;
|
|
25
|
+
/**
|
|
26
|
+
* Divider's orientation. When using inside a flex container, you may need to make sure the divider is `stretch` aligned
|
|
27
|
+
* in order for it to be visible.
|
|
28
|
+
*
|
|
29
|
+
* @default 'horizontal'
|
|
30
|
+
*/
|
|
31
|
+
orientation?: SeparatorProps[ 'orientation' ];
|
|
25
32
|
}
|
|
26
33
|
|
|
27
34
|
export interface Props
|
|
28
|
-
extends Omit<
|
|
35
|
+
extends Omit<
|
|
36
|
+
SeparatorProps,
|
|
37
|
+
'children' | 'unstable_system' | 'orientation'
|
|
38
|
+
>,
|
|
29
39
|
OwnProps {}
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
exports[`props should render correctly 1`] = `
|
|
4
4
|
.emotion-1 {
|
|
5
5
|
background-color: #fff;
|
|
6
|
-
color: #
|
|
6
|
+
color: #1e1e1e;
|
|
7
7
|
position: relative;
|
|
8
8
|
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
|
|
9
9
|
outline: none;
|
|
10
|
-
border-radius: 2px;
|
|
10
|
+
border-radius: calc(2px - 1px);
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
.emotion-1 .components-card-body {
|
|
@@ -26,13 +26,13 @@ exports[`props should render correctly 1`] = `
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
.emotion-5:first-of-type {
|
|
29
|
-
border-top-left-radius: 2px;
|
|
30
|
-
border-top-right-radius: 2px;
|
|
29
|
+
border-top-left-radius: calc(2px - 1px);
|
|
30
|
+
border-top-right-radius: calc(2px - 1px);
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
.emotion-5:last-of-type {
|
|
34
|
-
border-bottom-left-radius: 2px;
|
|
35
|
-
border-bottom-right-radius: 2px;
|
|
34
|
+
border-bottom-left-radius: calc(2px - 1px);
|
|
35
|
+
border-bottom-right-radius: calc(2px - 1px);
|
|
36
36
|
}
|
|
37
37
|
|
|
38
38
|
.emotion-7 {
|
|
@@ -172,7 +172,7 @@ Snapshot Diff:
|
|
|
172
172
|
tabindex="-1"
|
|
173
173
|
/>
|
|
174
174
|
+ <div
|
|
175
|
-
+ class="components-card__body components-card-body css-
|
|
175
|
+
+ class="components-card__body components-card-body css-1nwhnu3-View-Body-borderRadius-medium em57xhy0"
|
|
176
176
|
+ data-wp-c16t="true"
|
|
177
177
|
+ data-wp-component="CardBody"
|
|
178
178
|
+ >
|
|
@@ -42,13 +42,13 @@ export default function FocalPointPickerControls( {
|
|
|
42
42
|
<ControlWrapper className="focal-point-picker__controls">
|
|
43
43
|
<UnitControl
|
|
44
44
|
label={ __( 'Left' ) }
|
|
45
|
-
value={ valueX }
|
|
45
|
+
value={ [ valueX, '%' ].join( '' ) }
|
|
46
46
|
onChange={ ( next ) => handleChange( next, 'x' ) }
|
|
47
47
|
dragDirection="e"
|
|
48
48
|
/>
|
|
49
49
|
<UnitControl
|
|
50
50
|
label={ __( 'Top' ) }
|
|
51
|
-
value={ valueY }
|
|
51
|
+
value={ [ valueY, '%' ].join( '' ) }
|
|
52
52
|
onChange={ ( next ) => handleChange( next, 'y' ) }
|
|
53
53
|
dragDirection="s"
|
|
54
54
|
/>
|
|
@@ -63,7 +63,6 @@ function UnitControl( props ) {
|
|
|
63
63
|
labelPosition="top"
|
|
64
64
|
max={ TEXTCONTROL_MAX }
|
|
65
65
|
min={ TEXTCONTROL_MIN }
|
|
66
|
-
unit="%"
|
|
67
66
|
units={ [ { value: '%', label: '%' } ] }
|
|
68
67
|
{ ...props }
|
|
69
68
|
/>
|
|
@@ -203,7 +203,6 @@ describe( 'FontSizePicker', () => {
|
|
|
203
203
|
);
|
|
204
204
|
const element = screen.getByLabelText( 'Large' );
|
|
205
205
|
expect( element ).toBeInTheDocument();
|
|
206
|
-
expect( element.children ).toHaveLength( 2 );
|
|
207
206
|
expect( element.children[ 0 ].textContent ).toBe( '1.7' );
|
|
208
207
|
} );
|
|
209
208
|
it( 'should use incremental sequence of numbers as labels if we have complex css', () => {
|
|
@@ -223,7 +222,6 @@ describe( 'FontSizePicker', () => {
|
|
|
223
222
|
);
|
|
224
223
|
const element = screen.getByLabelText( 'Large' );
|
|
225
224
|
expect( element ).toBeInTheDocument();
|
|
226
|
-
expect( element.children ).toHaveLength( 2 );
|
|
227
225
|
expect( element.children[ 0 ].textContent ).toBe( '3' );
|
|
228
226
|
} );
|
|
229
227
|
} );
|
|
@@ -57,6 +57,24 @@ Callback function passed directly to the `input` file element.
|
|
|
57
57
|
- Type: `Function`
|
|
58
58
|
- Required: Yes
|
|
59
59
|
|
|
60
|
+
### onClick
|
|
61
|
+
|
|
62
|
+
Callback function passed directly to the `input` file element.
|
|
63
|
+
|
|
64
|
+
This can be useful when you want to force a `change` event to fire when the user chooses the same file again. To do this, set the target value to an empty string in the `onClick` function.
|
|
65
|
+
|
|
66
|
+
```jsx
|
|
67
|
+
<FormFileUpload
|
|
68
|
+
onClick={ ( event ) => ( event.target.value = '' ) }
|
|
69
|
+
onChange={ onChange }
|
|
70
|
+
>
|
|
71
|
+
Upload
|
|
72
|
+
</FormFileUpload>
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
- Type: `Function`
|
|
76
|
+
- Required: No
|
|
77
|
+
|
|
60
78
|
### render
|
|
61
79
|
|
|
62
80
|
Optional callback function used to render the UI. If passed the component does not render any UI and calls this function to render it.
|
|
@@ -13,6 +13,7 @@ function FormFileUpload( {
|
|
|
13
13
|
children,
|
|
14
14
|
multiple = false,
|
|
15
15
|
onChange,
|
|
16
|
+
onClick,
|
|
16
17
|
render,
|
|
17
18
|
...props
|
|
18
19
|
} ) {
|
|
@@ -38,6 +39,8 @@ function FormFileUpload( {
|
|
|
38
39
|
style={ { display: 'none' } }
|
|
39
40
|
accept={ accept }
|
|
40
41
|
onChange={ onChange }
|
|
42
|
+
onClick={ onClick }
|
|
43
|
+
data-testid="form-file-upload-input"
|
|
41
44
|
/>
|
|
42
45
|
</div>
|
|
43
46
|
);
|
|
@@ -1,30 +1,92 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
4
|
+
import { render as RTLrender, screen } from '@testing-library/react';
|
|
5
|
+
import userEvent from '@testing-library/user-event';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* Internal dependencies
|
|
9
9
|
*/
|
|
10
10
|
import FormFileUpload from '../';
|
|
11
11
|
|
|
12
|
+
/**
|
|
13
|
+
* Browser dependencies
|
|
14
|
+
*/
|
|
15
|
+
const { File } = window;
|
|
16
|
+
|
|
17
|
+
function render( jsx ) {
|
|
18
|
+
return {
|
|
19
|
+
user: userEvent.setup( {
|
|
20
|
+
// Avoids timeout errors (https://github.com/testing-library/user-event/issues/565#issuecomment-1064579531).
|
|
21
|
+
delay: null,
|
|
22
|
+
} ),
|
|
23
|
+
...RTLrender( jsx ),
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
// @testing-library/user-event considers changing <input type="file"> to a string as a change, but it do not occur on real browsers, so the comparisons will be against this result
|
|
28
|
+
const fakePath = expect.objectContaining( {
|
|
29
|
+
target: expect.objectContaining( {
|
|
30
|
+
value: 'C:\\fakepath\\hello.png',
|
|
31
|
+
} ),
|
|
32
|
+
} );
|
|
33
|
+
|
|
12
34
|
describe( 'FormFileUpload', () => {
|
|
13
35
|
it( 'should show an Icon Button and a hidden input', () => {
|
|
14
|
-
|
|
36
|
+
render( <FormFileUpload>My Upload Button</FormFileUpload> );
|
|
37
|
+
|
|
38
|
+
const button = screen.getByText( 'My Upload Button' );
|
|
39
|
+
const input = screen.getByTestId( 'form-file-upload-input' );
|
|
40
|
+
expect( button ).toBeInTheDocument();
|
|
41
|
+
expect( input.style.display ).toBe( 'none' );
|
|
42
|
+
} );
|
|
43
|
+
|
|
44
|
+
it( 'should not fire a change event after selecting the same file', async () => {
|
|
45
|
+
const onChange = jest.fn();
|
|
46
|
+
|
|
47
|
+
const { user } = render(
|
|
48
|
+
<FormFileUpload onChange={ onChange }>
|
|
49
|
+
My Upload Button
|
|
50
|
+
</FormFileUpload>
|
|
51
|
+
);
|
|
52
|
+
|
|
53
|
+
const file = new File( [ 'hello' ], 'hello.png', {
|
|
54
|
+
type: 'image/png',
|
|
55
|
+
} );
|
|
56
|
+
|
|
57
|
+
const input = screen.getByTestId( 'form-file-upload-input' );
|
|
58
|
+
|
|
59
|
+
await user.upload( input, file );
|
|
60
|
+
|
|
61
|
+
await user.upload( input, file );
|
|
62
|
+
|
|
63
|
+
expect( onChange ).toHaveBeenCalledTimes( 1 );
|
|
64
|
+
expect( onChange ).toHaveBeenCalledWith( fakePath );
|
|
65
|
+
} );
|
|
66
|
+
|
|
67
|
+
it( 'should fire a change event after selecting the same file if the value was reset in between', async () => {
|
|
68
|
+
const onChange = jest.fn();
|
|
69
|
+
|
|
70
|
+
const { user } = render(
|
|
15
71
|
<FormFileUpload
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
recentlyUsedBlocks={ [] }
|
|
19
|
-
debouncedSpeak={ noop }
|
|
72
|
+
onClick={ jest.fn( ( e ) => ( e.target.value = '' ) ) }
|
|
73
|
+
onChange={ onChange }
|
|
20
74
|
>
|
|
21
75
|
My Upload Button
|
|
22
76
|
</FormFileUpload>
|
|
23
77
|
);
|
|
24
78
|
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
79
|
+
const file = new File( [ 'hello' ], 'hello.png', {
|
|
80
|
+
type: 'image/png',
|
|
81
|
+
} );
|
|
82
|
+
|
|
83
|
+
const input = screen.getByTestId( 'form-file-upload-input' );
|
|
84
|
+
await user.upload( input, file );
|
|
85
|
+
|
|
86
|
+
expect( onChange ).toHaveBeenNthCalledWith( 1, fakePath );
|
|
87
|
+
|
|
88
|
+
await user.upload( input, file );
|
|
89
|
+
|
|
90
|
+
expect( onChange ).toHaveBeenNthCalledWith( 2, fakePath );
|
|
29
91
|
} );
|
|
30
92
|
} );
|