@wordpress/components 23.2.0 → 23.3.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 +35 -1
- package/CONTRIBUTING.md +1 -1
- package/build/alignment-matrix-control/utils.js +2 -2
- package/build/alignment-matrix-control/utils.js.map +1 -1
- package/build/autocomplete/autocompleter-ui.js +1 -3
- package/build/autocomplete/autocompleter-ui.js.map +1 -1
- package/build/border-box-control/border-box-control-linked-button/component.js.map +1 -1
- package/build/border-box-control/border-box-control-linked-button/hook.js.map +1 -1
- package/build/border-control/border-control-dropdown/component.js +8 -4
- package/build/border-control/border-control-dropdown/component.js.map +1 -1
- package/build/button/deprecated.js +8 -6
- package/build/button/deprecated.js.map +1 -1
- package/build/button/index.js +52 -23
- package/build/button/index.js.map +1 -1
- package/build/button/types.js +6 -0
- package/build/button/types.js.map +1 -0
- package/build/color-list-picker/index.js.map +1 -1
- package/build/color-list-picker/types.js +6 -0
- package/build/color-list-picker/types.js.map +1 -0
- package/build/color-palette/index.js +9 -61
- package/build/color-palette/index.js.map +1 -1
- package/build/color-palette/index.native.js +24 -9
- package/build/color-palette/index.native.js.map +1 -1
- package/build/color-palette/utils.js +103 -0
- package/build/color-palette/utils.js.map +1 -0
- package/build/custom-gradient-picker/gradient-bar/utils.js +1 -1
- package/build/custom-gradient-picker/gradient-bar/utils.js.map +1 -1
- package/build/date-time/date/index.js.map +1 -1
- package/build/dropdown/index.js +20 -8
- package/build/dropdown/index.js.map +1 -1
- package/build/form-token-field/token.js +1 -1
- package/build/form-token-field/token.js.map +1 -1
- package/build/gradient-picker/index.js +9 -1
- package/build/gradient-picker/index.js.map +1 -1
- package/build/h-stack/component.js +0 -1
- package/build/h-stack/component.js.map +1 -1
- package/build/input-control/input-field.js +4 -2
- package/build/input-control/input-field.js.map +1 -1
- package/build/keyboard-shortcuts/index.js +44 -16
- package/build/keyboard-shortcuts/index.js.map +1 -1
- package/build/keyboard-shortcuts/types.js +6 -0
- package/build/keyboard-shortcuts/types.js.map +1 -0
- package/build/modal/index.js +1 -1
- package/build/modal/index.js.map +1 -1
- package/build/notice/index.js +16 -18
- package/build/notice/index.js.map +1 -1
- package/build/notice/list.js +23 -8
- package/build/notice/list.js.map +1 -1
- package/build/notice/types.js +6 -0
- package/build/notice/types.js.map +1 -0
- package/build/number-control/index.js +1 -1
- package/build/number-control/index.js.map +1 -1
- package/build/query-controls/author-select.js +7 -3
- package/build/query-controls/author-select.js.map +1 -1
- package/build/query-controls/category-select.js +7 -3
- package/build/query-controls/category-select.js.map +1 -1
- package/build/query-controls/index.js +68 -20
- package/build/query-controls/index.js.map +1 -1
- package/build/query-controls/terms.js +4 -3
- package/build/query-controls/terms.js.map +1 -1
- package/build/query-controls/types.js +6 -0
- package/build/query-controls/types.js.map +1 -0
- package/build/slot-fill/bubbles-virtually/fill.js +1 -0
- package/build/slot-fill/bubbles-virtually/fill.js.map +1 -1
- package/build/slot-fill/slot.js +1 -0
- package/build/slot-fill/slot.js.map +1 -1
- package/build/slot-fill/use-slot.js +1 -11
- package/build/slot-fill/use-slot.js.map +1 -1
- package/build/snackbar/index.js.map +1 -1
- package/build/snackbar/list.js.map +1 -1
- package/build/tab-panel/index.js +36 -8
- package/build/tab-panel/index.js.map +1 -1
- package/build/tree-grid/index.js +1 -1
- package/build/tree-grid/index.js.map +1 -1
- package/build/tree-select/index.js +2 -6
- package/build/tree-select/index.js.map +1 -1
- package/build-module/alignment-matrix-control/utils.js +2 -2
- package/build-module/alignment-matrix-control/utils.js.map +1 -1
- package/build-module/autocomplete/autocompleter-ui.js +1 -2
- package/build-module/autocomplete/autocompleter-ui.js.map +1 -1
- package/build-module/border-box-control/border-box-control-linked-button/component.js.map +1 -1
- package/build-module/border-box-control/border-box-control-linked-button/hook.js.map +1 -1
- package/build-module/border-control/border-control-dropdown/component.js +7 -4
- package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
- package/build-module/button/deprecated.js +8 -5
- package/build-module/button/deprecated.js.map +1 -1
- package/build-module/button/index.js +51 -22
- package/build-module/button/index.js.map +1 -1
- package/build-module/button/types.js +2 -0
- package/build-module/button/types.js.map +1 -0
- package/build-module/color-list-picker/index.js.map +1 -1
- package/build-module/color-list-picker/types.js +2 -0
- package/build-module/color-list-picker/types.js.map +1 -0
- package/build-module/color-palette/index.js +7 -54
- package/build-module/color-palette/index.js.map +1 -1
- package/build-module/color-palette/index.native.js +24 -8
- package/build-module/color-palette/index.native.js.map +1 -1
- package/build-module/color-palette/utils.js +79 -0
- package/build-module/color-palette/utils.js.map +1 -0
- package/build-module/custom-gradient-picker/gradient-bar/utils.js +1 -1
- package/build-module/custom-gradient-picker/gradient-bar/utils.js.map +1 -1
- package/build-module/date-time/date/index.js +1 -1
- package/build-module/date-time/date/index.js.map +1 -1
- package/build-module/dropdown/index.js +19 -8
- package/build-module/dropdown/index.js.map +1 -1
- package/build-module/form-token-field/token.js +1 -1
- package/build-module/form-token-field/token.js.map +1 -1
- package/build-module/gradient-picker/index.js +9 -2
- package/build-module/gradient-picker/index.js.map +1 -1
- package/build-module/h-stack/component.js +0 -1
- package/build-module/h-stack/component.js.map +1 -1
- package/build-module/input-control/input-field.js +4 -2
- package/build-module/input-control/input-field.js.map +1 -1
- package/build-module/keyboard-shortcuts/index.js +48 -16
- package/build-module/keyboard-shortcuts/index.js.map +1 -1
- package/build-module/keyboard-shortcuts/types.js +2 -0
- package/build-module/keyboard-shortcuts/types.js.map +1 -0
- package/build-module/modal/index.js +1 -1
- package/build-module/modal/index.js.map +1 -1
- package/build-module/notice/index.js +14 -15
- package/build-module/notice/index.js.map +1 -1
- package/build-module/notice/list.js +23 -8
- package/build-module/notice/list.js.map +1 -1
- package/build-module/notice/types.js +2 -0
- package/build-module/notice/types.js.map +1 -0
- package/build-module/number-control/index.js +1 -1
- package/build-module/number-control/index.js.map +1 -1
- package/build-module/query-controls/author-select.js +7 -3
- package/build-module/query-controls/author-select.js.map +1 -1
- package/build-module/query-controls/category-select.js +8 -4
- package/build-module/query-controls/category-select.js.map +1 -1
- package/build-module/query-controls/index.js +64 -20
- package/build-module/query-controls/index.js.map +1 -1
- package/build-module/query-controls/terms.js +8 -4
- package/build-module/query-controls/terms.js.map +1 -1
- package/build-module/query-controls/types.js +2 -0
- package/build-module/query-controls/types.js.map +1 -0
- package/build-module/slot-fill/bubbles-virtually/fill.js +1 -0
- package/build-module/slot-fill/bubbles-virtually/fill.js.map +1 -1
- package/build-module/slot-fill/slot.js +1 -0
- package/build-module/slot-fill/slot.js.map +1 -1
- package/build-module/slot-fill/use-slot.js +2 -12
- package/build-module/slot-fill/use-slot.js.map +1 -1
- package/build-module/snackbar/index.js.map +1 -1
- package/build-module/snackbar/list.js.map +1 -1
- package/build-module/tab-panel/index.js +36 -8
- package/build-module/tab-panel/index.js.map +1 -1
- package/build-module/tree-grid/index.js +1 -1
- package/build-module/tree-grid/index.js.map +1 -1
- package/build-module/tree-select/index.js +2 -6
- package/build-module/tree-select/index.js.map +1 -1
- package/build-style/style-rtl.css +5 -0
- package/build-style/style.css +5 -0
- package/build-types/border-box-control/border-box-control/hook.d.ts +1 -1
- package/build-types/border-box-control/border-box-control-linked-button/component.d.ts +1 -1
- package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts +171 -160
- 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/hook.d.ts +1 -1
- package/build-types/border-control/border-control/hook.d.ts +1 -1
- package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
- package/build-types/border-control/border-control-dropdown/hook.d.ts +1 -1
- package/build-types/button/deprecated.d.ts +143 -7
- package/build-types/button/deprecated.d.ts.map +1 -1
- package/build-types/button/index.d.ts +20 -3
- package/build-types/button/index.d.ts.map +1 -1
- package/build-types/button/stories/index.d.ts +20 -0
- package/build-types/button/stories/index.d.ts.map +1 -0
- package/build-types/button/test/index.d.ts +2 -0
- package/build-types/button/test/index.d.ts.map +1 -0
- package/build-types/button/types.d.ts +134 -0
- package/build-types/button/types.d.ts.map +1 -0
- package/build-types/color-list-picker/index.d.ts +5 -0
- package/build-types/color-list-picker/index.d.ts.map +1 -0
- package/build-types/color-list-picker/types.d.ts +42 -0
- package/build-types/color-list-picker/types.d.ts.map +1 -0
- package/build-types/color-palette/index.d.ts +2 -4
- package/build-types/color-palette/index.d.ts.map +1 -1
- package/build-types/color-palette/stories/index.d.ts +2 -2
- package/build-types/color-palette/styles.d.ts +1 -1
- package/build-types/color-palette/types.d.ts +1 -1
- package/build-types/color-palette/types.d.ts.map +1 -1
- package/build-types/color-palette/utils.d.ts +14 -0
- package/build-types/color-palette/utils.d.ts.map +1 -0
- package/build-types/color-picker/styles.d.ts +2 -2
- package/build-types/date-time/date/index.d.ts.map +1 -1
- package/build-types/date-time/date/styles.d.ts +3 -3
- package/build-types/dropdown/index.d.ts +4 -4
- package/build-types/dropdown/index.d.ts.map +1 -1
- package/build-types/dropdown/stories/index.d.ts.map +1 -1
- package/build-types/dropdown/types.d.ts +9 -10
- package/build-types/dropdown/types.d.ts.map +1 -1
- package/build-types/font-size-picker/styles.d.ts +2 -2
- package/build-types/h-stack/component.d.ts +0 -1
- package/build-types/h-stack/component.d.ts.map +1 -1
- package/build-types/input-control/input-field.d.ts.map +1 -1
- package/build-types/keyboard-shortcuts/index.d.ts +38 -0
- package/build-types/keyboard-shortcuts/index.d.ts.map +1 -0
- package/build-types/keyboard-shortcuts/stories/index.d.ts +12 -0
- package/build-types/keyboard-shortcuts/stories/index.d.ts.map +1 -0
- package/build-types/keyboard-shortcuts/test/index.d.ts +2 -0
- package/build-types/keyboard-shortcuts/test/index.d.ts.map +1 -0
- package/build-types/keyboard-shortcuts/types.d.ts +48 -0
- package/build-types/keyboard-shortcuts/types.d.ts.map +1 -0
- package/build-types/modal/index.d.ts.map +1 -1
- package/build-types/navigator/navigator-back-button/component.d.ts +1 -1
- package/build-types/navigator/navigator-back-button/hook.d.ts +2 -2
- package/build-types/navigator/navigator-button/component.d.ts +1 -1
- package/build-types/navigator/navigator-button/hook.d.ts +2 -2
- package/build-types/notice/index.d.ts +16 -0
- package/build-types/notice/index.d.ts.map +1 -0
- package/build-types/notice/list.d.ts +32 -0
- package/build-types/notice/list.d.ts.map +1 -0
- package/build-types/notice/stories/index.d.ts +17 -0
- package/build-types/notice/stories/index.d.ts.map +1 -0
- package/build-types/notice/test/index.d.ts +2 -0
- package/build-types/notice/test/index.d.ts.map +1 -0
- package/build-types/notice/test/list.d.ts +2 -0
- package/build-types/notice/test/list.d.ts.map +1 -0
- package/build-types/notice/types.d.ts +128 -0
- package/build-types/notice/types.d.ts.map +1 -0
- package/build-types/number-control/styles/number-control-styles.d.ts +2 -2
- package/build-types/number-control/styles/number-control-styles.d.ts.map +1 -1
- package/build-types/placeholder/stories/index.d.ts.map +1 -1
- package/build-types/query-controls/author-select.d.ts +4 -0
- package/build-types/query-controls/author-select.d.ts.map +1 -0
- package/build-types/query-controls/category-select.d.ts +4 -0
- package/build-types/query-controls/category-select.d.ts.map +1 -0
- package/build-types/query-controls/index.d.ts +30 -0
- package/build-types/query-controls/index.d.ts.map +1 -0
- package/build-types/query-controls/stories/index.d.ts +13 -0
- package/build-types/query-controls/stories/index.d.ts.map +1 -0
- package/build-types/query-controls/terms.d.ts +13 -0
- package/build-types/query-controls/terms.d.ts.map +1 -0
- package/build-types/query-controls/test/terms.d.ts +2 -0
- package/build-types/query-controls/test/terms.d.ts.map +1 -0
- package/build-types/query-controls/types.d.ts +131 -0
- package/build-types/query-controls/types.d.ts.map +1 -0
- package/build-types/range-control/index.d.ts +1 -1
- package/build-types/slot-fill/bubbles-virtually/fill.d.ts.map +1 -1
- package/build-types/slot-fill/use-slot.d.ts.map +1 -1
- package/build-types/snackbar/index.d.ts +9 -2
- package/build-types/snackbar/index.d.ts.map +1 -1
- package/build-types/snackbar/list.d.ts.map +1 -1
- package/build-types/snackbar/types.d.ts +15 -88
- package/build-types/snackbar/types.d.ts.map +1 -1
- package/build-types/tab-panel/index.d.ts.map +1 -1
- package/build-types/tab-panel/types.d.ts +1 -1
- package/build-types/tab-panel/types.d.ts.map +1 -1
- package/build-types/toggle-group-control/stories/index.d.ts.map +1 -1
- package/build-types/tree-select/index.d.ts.map +1 -1
- package/build-types/ui/form-group/form-group.d.ts +2 -2
- package/package.json +18 -17
- package/src/alignment-matrix-control/utils.tsx +2 -2
- package/src/autocomplete/autocompleter-ui.js +1 -2
- package/src/autocomplete/test/index.js +1 -5
- package/src/border-box-control/border-box-control-linked-button/component.tsx +1 -1
- package/src/border-box-control/border-box-control-linked-button/hook.ts +1 -1
- package/src/border-control/border-control-dropdown/component.tsx +9 -8
- package/src/box-control/test/index.js +11 -35
- package/src/button/README.md +49 -55
- package/src/button/{deprecated.js → deprecated.tsx} +19 -4
- package/src/button/{index.js → index.tsx} +95 -34
- package/src/button/stories/index.tsx +106 -0
- package/src/button/style.scss +3 -2
- package/src/button/test/{index.js → index.tsx} +30 -7
- package/src/button/types.ts +138 -0
- package/src/checkbox-control/test/index.tsx +1 -5
- package/src/color-list-picker/{index.js → index.tsx} +3 -2
- package/src/color-list-picker/types.ts +46 -0
- package/src/color-palette/README.md +1 -1
- package/src/color-palette/index.native.js +11 -4
- package/src/color-palette/index.tsx +11 -67
- package/src/color-palette/test/index.tsx +4 -14
- package/src/color-palette/test/utils.ts +1 -1
- package/src/color-palette/types.ts +1 -1
- package/src/color-palette/utils.ts +98 -0
- package/src/color-picker/test/index.js +6 -15
- package/src/combobox-control/test/index.js +1 -6
- package/src/confirm-dialog/test/index.js +9 -29
- package/src/custom-gradient-picker/gradient-bar/utils.js +1 -1
- package/src/date-time/date/index.tsx +2 -1
- package/src/date-time/date/test/index.tsx +2 -8
- package/src/date-time/time/test/index.tsx +9 -29
- package/src/dimension-control/test/index.test.js +2 -8
- package/src/disabled/test/index.tsx +1 -5
- package/src/draggable/test/index.native.js +4 -4
- package/src/dropdown/README.md +1 -8
- package/src/dropdown/index.tsx +17 -6
- package/src/dropdown/stories/index.tsx +3 -3
- package/src/dropdown/test/index.tsx +2 -8
- package/src/dropdown/types.ts +9 -10
- package/src/dropdown-menu/README.md +1 -1
- package/src/dropdown-menu/stories/index.js +96 -27
- package/src/dropdown-menu/test/index.js +2 -8
- package/src/external-link/test/index.tsx +1 -6
- package/src/focal-point-picker/test/index.js +3 -11
- package/src/font-size-picker/test/index.tsx +14 -44
- package/src/form-file-upload/test/index.tsx +2 -17
- package/src/form-toggle/test/index.tsx +1 -5
- package/src/form-token-field/test/index.tsx +80 -163
- package/src/form-token-field/token.tsx +1 -1
- package/src/gradient-picker/index.js +15 -4
- package/src/guide/test/index.js +5 -17
- package/src/h-stack/component.tsx +0 -1
- package/src/higher-order/with-filters/test/index.js +24 -24
- package/src/higher-order/with-focus-outside/test/index.js +11 -25
- package/src/higher-order/with-focus-return/test/index.js +1 -5
- package/src/input-control/input-field.tsx +3 -1
- package/src/input-control/test/index.js +1 -6
- package/src/isolated-event-container/test/index.js +2 -8
- package/src/keyboard-shortcuts/README.md +1 -1
- package/src/keyboard-shortcuts/index.tsx +93 -0
- package/src/keyboard-shortcuts/stories/index.tsx +60 -0
- package/src/keyboard-shortcuts/test/{index.js → index.tsx} +16 -6
- package/src/keyboard-shortcuts/types.ts +51 -0
- package/src/modal/index.tsx +1 -2
- package/src/navigable-container/test/navigable-menu.js +5 -17
- package/src/navigable-container/test/tababble-container.js +3 -11
- package/src/navigation/test/index.js +3 -11
- package/src/navigator/test/index.tsx +6 -20
- package/src/notice/README.md +89 -42
- package/src/notice/{index.js → index.tsx} +28 -20
- package/src/notice/list.tsx +72 -0
- package/src/notice/stories/index.tsx +119 -0
- package/src/notice/test/__snapshots__/{index.js.snap → index.tsx.snap} +0 -0
- package/src/notice/test/{index.js → index.tsx} +7 -4
- package/src/notice/test/{list.js → list.tsx} +0 -0
- package/src/notice/types.ts +136 -0
- package/src/number-control/index.tsx +1 -1
- package/src/number-control/test/index.tsx +28 -86
- package/src/panel/test/body.js +2 -8
- package/src/placeholder/stories/index.tsx +1 -0
- package/src/query-controls/README.md +56 -56
- package/src/query-controls/author-select.tsx +37 -0
- package/src/query-controls/category-select.tsx +46 -0
- package/src/query-controls/index.tsx +192 -0
- package/src/query-controls/stories/index.tsx +205 -0
- package/src/query-controls/terms.ts +57 -0
- package/src/query-controls/test/{terms.js → terms.ts} +36 -20
- package/src/query-controls/types.ts +150 -0
- package/src/select-control/test/select-control.tsx +1 -6
- package/src/slot-fill/bubbles-virtually/fill.js +1 -0
- package/src/slot-fill/slot.js +1 -1
- package/src/slot-fill/use-slot.js +6 -16
- package/src/snackbar/index.tsx +6 -5
- package/src/snackbar/list.tsx +4 -2
- package/src/snackbar/types.ts +18 -92
- package/src/tab-panel/index.tsx +38 -16
- package/src/tab-panel/style.scss +8 -0
- package/src/tab-panel/test/index.tsx +35 -7
- package/src/tab-panel/types.ts +1 -1
- package/src/theme/test/index.tsx +4 -4
- package/src/toggle-group-control/stories/index.tsx +1 -0
- package/src/toggle-group-control/test/index.tsx +7 -23
- package/src/toolbar/stories/index.js +75 -72
- package/src/tools-panel/stories/index.js +3 -0
- package/src/tools-panel/test/index.js +1 -1
- package/src/tree-grid/index.js +1 -1
- package/src/tree-select/index.tsx +3 -6
- package/src/ui/context/test/context-connect.tsx +2 -0
- package/src/ui/context/test/wordpress-component.tsx +2 -0
- package/src/unit-control/test/index.tsx +21 -74
- package/src/utils/hooks/test/use-latest-ref.js +15 -18
- package/tsconfig.json +1 -4
- package/tsconfig.tsbuildinfo +1 -1
- package/build-types/radio-context/index.d.ts +0 -6
- package/build-types/radio-context/index.d.ts.map +0 -1
- package/src/button/stories/index.js +0 -179
- package/src/keyboard-shortcuts/index.js +0 -56
- package/src/notice/list.js +0 -48
- package/src/notice/stories/index.js +0 -46
- package/src/query-controls/author-select.js +0 -23
- package/src/query-controls/category-select.js +0 -31
- package/src/query-controls/index.js +0 -122
- package/src/query-controls/terms.js +0 -40
- package/src/toolbar/stories/toolbar-button.js +0 -32
- package/src/toolbar/stories/toolbar-group.js +0 -33
|
@@ -1,52 +1,121 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* External dependencies
|
|
3
|
-
*/
|
|
4
|
-
import { text, boolean } from '@storybook/addon-knobs';
|
|
5
|
-
|
|
6
1
|
/**
|
|
7
2
|
* Internal dependencies
|
|
8
3
|
*/
|
|
9
4
|
import DropdownMenu from '../';
|
|
5
|
+
import { MenuGroup, MenuItem } from '../../';
|
|
10
6
|
|
|
11
7
|
/**
|
|
12
8
|
* WordPress dependencies
|
|
13
9
|
*/
|
|
14
|
-
import {
|
|
10
|
+
import {
|
|
11
|
+
menu,
|
|
12
|
+
arrowUp,
|
|
13
|
+
arrowDown,
|
|
14
|
+
chevronDown,
|
|
15
|
+
more,
|
|
16
|
+
trash,
|
|
17
|
+
} from '@wordpress/icons';
|
|
15
18
|
|
|
16
19
|
export default {
|
|
17
20
|
title: 'Components/DropdownMenu',
|
|
18
21
|
component: DropdownMenu,
|
|
22
|
+
argTypes: {
|
|
23
|
+
className: { control: { type: 'text' } },
|
|
24
|
+
children: { control: { type: null } },
|
|
25
|
+
disableOpenOnArrowDown: { control: { type: 'boolean' } },
|
|
26
|
+
icon: {
|
|
27
|
+
options: [ 'menu', 'chevronDown', 'more' ],
|
|
28
|
+
mapping: { menu, chevronDown, more },
|
|
29
|
+
control: { type: 'select' },
|
|
30
|
+
},
|
|
31
|
+
menuProps: {
|
|
32
|
+
control: { type: 'object' },
|
|
33
|
+
},
|
|
34
|
+
noIcons: { control: { type: 'boolean' } },
|
|
35
|
+
popoverProps: {
|
|
36
|
+
control: { type: 'object' },
|
|
37
|
+
},
|
|
38
|
+
text: { control: { type: 'text' } },
|
|
39
|
+
toggleProps: {
|
|
40
|
+
control: { type: 'object' },
|
|
41
|
+
},
|
|
42
|
+
},
|
|
19
43
|
parameters: {
|
|
20
|
-
|
|
44
|
+
controls: { expanded: true },
|
|
45
|
+
docs: { source: { state: 'open' } },
|
|
21
46
|
},
|
|
22
47
|
};
|
|
23
48
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
'Show tooltip on a toggle button',
|
|
30
|
-
true
|
|
31
|
-
);
|
|
49
|
+
const Template = ( props ) => (
|
|
50
|
+
<div style={ { height: 150 } }>
|
|
51
|
+
<DropdownMenu { ...props } />
|
|
52
|
+
</div>
|
|
53
|
+
);
|
|
32
54
|
|
|
33
|
-
|
|
55
|
+
export const Default = Template.bind( {} );
|
|
56
|
+
Default.args = {
|
|
57
|
+
label: 'Select a direction.',
|
|
58
|
+
icon: menu,
|
|
59
|
+
controls: [
|
|
34
60
|
{
|
|
35
|
-
title:
|
|
61
|
+
title: 'First Menu Item Label',
|
|
36
62
|
icon: arrowUp,
|
|
63
|
+
// eslint-disable-next-line no-console
|
|
64
|
+
onClick: () => console.log( 'up!' ),
|
|
37
65
|
},
|
|
38
66
|
{
|
|
39
|
-
title:
|
|
67
|
+
title: 'Second Menu Item Label',
|
|
40
68
|
icon: arrowDown,
|
|
69
|
+
// eslint-disable-next-line no-console
|
|
70
|
+
onClick: () => console.log( 'down!' ),
|
|
41
71
|
},
|
|
42
|
-
]
|
|
72
|
+
],
|
|
73
|
+
};
|
|
43
74
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
75
|
+
export const WithChildren = Template.bind( {} );
|
|
76
|
+
// Adding custom source because Storybook is not able to show the contents of
|
|
77
|
+
// the `children` prop correctly in the code snippet.
|
|
78
|
+
WithChildren.parameters = {
|
|
79
|
+
docs: {
|
|
80
|
+
source: {
|
|
81
|
+
code: `<DropdownMenu label="Select a direction." icon={ more }>
|
|
82
|
+
<MenuGroup>
|
|
83
|
+
<MenuItem icon={ arrowUp } onClick={ onClose }>
|
|
84
|
+
Move Up
|
|
85
|
+
</MenuItem>
|
|
86
|
+
<MenuItem icon={ arrowDown } onClick={ onClose }>
|
|
87
|
+
Move Down
|
|
88
|
+
</MenuItem>
|
|
89
|
+
</MenuGroup>
|
|
90
|
+
<MenuGroup>
|
|
91
|
+
<MenuItem icon={ trash } onClick={ onClose }>
|
|
92
|
+
Remove
|
|
93
|
+
</MenuItem>
|
|
94
|
+
</MenuGroup>
|
|
95
|
+
</DropdownMenu>`,
|
|
96
|
+
language: 'jsx',
|
|
97
|
+
type: 'auto',
|
|
98
|
+
},
|
|
99
|
+
},
|
|
100
|
+
};
|
|
101
|
+
WithChildren.args = {
|
|
102
|
+
label: 'Select a direction.',
|
|
103
|
+
icon: more,
|
|
104
|
+
children: ( { onClose } ) => (
|
|
105
|
+
<>
|
|
106
|
+
<MenuGroup>
|
|
107
|
+
<MenuItem icon={ arrowUp } onClick={ onClose }>
|
|
108
|
+
Move Up
|
|
109
|
+
</MenuItem>
|
|
110
|
+
<MenuItem icon={ arrowDown } onClick={ onClose }>
|
|
111
|
+
Move Down
|
|
112
|
+
</MenuItem>
|
|
113
|
+
</MenuGroup>
|
|
114
|
+
<MenuGroup>
|
|
115
|
+
<MenuItem icon={ trash } onClick={ onClose }>
|
|
116
|
+
Remove
|
|
117
|
+
</MenuItem>
|
|
118
|
+
</MenuGroup>
|
|
119
|
+
</>
|
|
120
|
+
),
|
|
52
121
|
};
|
|
@@ -15,8 +15,6 @@ import { arrowLeft, arrowRight, arrowUp, arrowDown } from '@wordpress/icons';
|
|
|
15
15
|
import DropdownMenu from '../';
|
|
16
16
|
import { MenuItem } from '../../';
|
|
17
17
|
|
|
18
|
-
jest.useFakeTimers();
|
|
19
|
-
|
|
20
18
|
describe( 'DropdownMenu', () => {
|
|
21
19
|
it( 'should not render when neither controls nor children are assigned', () => {
|
|
22
20
|
render( <DropdownMenu /> );
|
|
@@ -33,9 +31,7 @@ describe( 'DropdownMenu', () => {
|
|
|
33
31
|
} );
|
|
34
32
|
|
|
35
33
|
it( 'should open menu when pressing arrow down on the toggle and the controls prop is used to define menu items', async () => {
|
|
36
|
-
const user = userEvent.setup(
|
|
37
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
38
|
-
} );
|
|
34
|
+
const user = userEvent.setup();
|
|
39
35
|
|
|
40
36
|
const controls = [
|
|
41
37
|
{
|
|
@@ -82,9 +78,7 @@ describe( 'DropdownMenu', () => {
|
|
|
82
78
|
} );
|
|
83
79
|
|
|
84
80
|
it( 'should open menu when pressing arrow down on the toggle and the children prop is used to define menu items', async () => {
|
|
85
|
-
const user = userEvent.setup(
|
|
86
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
87
|
-
} );
|
|
81
|
+
const user = userEvent.setup();
|
|
88
82
|
|
|
89
83
|
render(
|
|
90
84
|
<DropdownMenu
|
|
@@ -9,12 +9,7 @@ import userEvent from '@testing-library/user-event';
|
|
|
9
9
|
*/
|
|
10
10
|
import { ExternalLink } from '..';
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const setupUser = () =>
|
|
15
|
-
userEvent.setup( {
|
|
16
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
17
|
-
} );
|
|
12
|
+
const setupUser = () => userEvent.setup();
|
|
18
13
|
|
|
19
14
|
describe( 'ExternalLink', () => {
|
|
20
15
|
test( 'should call function passed in onClick handler when clicking the link', async () => {
|
|
@@ -9,14 +9,10 @@ import userEvent from '@testing-library/user-event';
|
|
|
9
9
|
*/
|
|
10
10
|
import Picker from '..';
|
|
11
11
|
|
|
12
|
-
jest.useFakeTimers();
|
|
13
|
-
|
|
14
12
|
describe( 'FocalPointPicker', () => {
|
|
15
13
|
describe( 'focus and blur', () => {
|
|
16
14
|
it( 'clicking the draggable area should focus it', async () => {
|
|
17
|
-
const user = userEvent.setup(
|
|
18
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
19
|
-
} );
|
|
15
|
+
const user = userEvent.setup();
|
|
20
16
|
|
|
21
17
|
const mockOnChange = jest.fn();
|
|
22
18
|
|
|
@@ -89,9 +85,7 @@ describe( 'FocalPointPicker', () => {
|
|
|
89
85
|
|
|
90
86
|
describe( 'resolvePoint handling', () => {
|
|
91
87
|
it( 'should allow value altering', async () => {
|
|
92
|
-
const user = userEvent.setup(
|
|
93
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
94
|
-
} );
|
|
88
|
+
const user = userEvent.setup();
|
|
95
89
|
|
|
96
90
|
const spyChange = jest.fn();
|
|
97
91
|
const spy = jest.fn();
|
|
@@ -131,9 +125,7 @@ describe( 'FocalPointPicker', () => {
|
|
|
131
125
|
expect( xInput.value ).toBe( '93' );
|
|
132
126
|
} );
|
|
133
127
|
it( 'call onChange with the expected values', async () => {
|
|
134
|
-
const user = userEvent.setup(
|
|
135
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
136
|
-
} );
|
|
128
|
+
const user = userEvent.setup();
|
|
137
129
|
|
|
138
130
|
const spyChange = jest.fn();
|
|
139
131
|
render(
|
|
@@ -10,8 +10,6 @@ import userEvent from '@testing-library/user-event';
|
|
|
10
10
|
import FontSizePicker from '../';
|
|
11
11
|
import type { FontSize } from '../types';
|
|
12
12
|
|
|
13
|
-
jest.useFakeTimers();
|
|
14
|
-
|
|
15
13
|
describe( 'FontSizePicker', () => {
|
|
16
14
|
test.each( [
|
|
17
15
|
// Use units when initial value uses units.
|
|
@@ -21,9 +19,7 @@ describe( 'FontSizePicker', () => {
|
|
|
21
19
|
] )(
|
|
22
20
|
'should call onChange( $expectedValue ) after user types 80 when value is $value',
|
|
23
21
|
async ( { value, expectedValue } ) => {
|
|
24
|
-
const user = userEvent.setup(
|
|
25
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
26
|
-
} );
|
|
22
|
+
const user = userEvent.setup();
|
|
27
23
|
const onChange = jest.fn();
|
|
28
24
|
render(
|
|
29
25
|
<FontSizePicker
|
|
@@ -48,9 +44,7 @@ describe( 'FontSizePicker', () => {
|
|
|
48
44
|
] )(
|
|
49
45
|
'should call onChange( $expectedValue ) after user types 80 when first font size is $firstFontSize',
|
|
50
46
|
async ( { firstFontSize, expectedValue } ) => {
|
|
51
|
-
const user = userEvent.setup(
|
|
52
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
53
|
-
} );
|
|
47
|
+
const user = userEvent.setup();
|
|
54
48
|
const onChange = jest.fn();
|
|
55
49
|
render(
|
|
56
50
|
<FontSizePicker
|
|
@@ -104,9 +98,7 @@ describe( 'FontSizePicker', () => {
|
|
|
104
98
|
];
|
|
105
99
|
|
|
106
100
|
it( 'displays a select control', async () => {
|
|
107
|
-
const user = userEvent.setup(
|
|
108
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
109
|
-
} );
|
|
101
|
+
const user = userEvent.setup();
|
|
110
102
|
render(
|
|
111
103
|
<FontSizePicker
|
|
112
104
|
__nextHasNoMarginBottom
|
|
@@ -162,9 +154,7 @@ describe( 'FontSizePicker', () => {
|
|
|
162
154
|
] )(
|
|
163
155
|
'calls onChange( $expectedArguments ) when $option is selected',
|
|
164
156
|
async ( { option, value, expectedArguments } ) => {
|
|
165
|
-
const user = userEvent.setup(
|
|
166
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
167
|
-
} );
|
|
157
|
+
const user = userEvent.setup();
|
|
168
158
|
const onChange = jest.fn();
|
|
169
159
|
render(
|
|
170
160
|
<FontSizePicker
|
|
@@ -224,9 +214,7 @@ describe( 'FontSizePicker', () => {
|
|
|
224
214
|
];
|
|
225
215
|
|
|
226
216
|
it( 'displays a select control', async () => {
|
|
227
|
-
const user = userEvent.setup(
|
|
228
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
229
|
-
} );
|
|
217
|
+
const user = userEvent.setup();
|
|
230
218
|
render(
|
|
231
219
|
<FontSizePicker
|
|
232
220
|
__nextHasNoMarginBottom
|
|
@@ -323,9 +311,7 @@ describe( 'FontSizePicker', () => {
|
|
|
323
311
|
] )(
|
|
324
312
|
'calls onChange( $expectedValue ) when $option is selected',
|
|
325
313
|
async ( { option, value, expectedArguments } ) => {
|
|
326
|
-
const user = userEvent.setup(
|
|
327
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
328
|
-
} );
|
|
314
|
+
const user = userEvent.setup();
|
|
329
315
|
const onChange = jest.fn();
|
|
330
316
|
render(
|
|
331
317
|
<FontSizePicker
|
|
@@ -421,9 +407,7 @@ describe( 'FontSizePicker', () => {
|
|
|
421
407
|
);
|
|
422
408
|
|
|
423
409
|
it( 'calls onChange when a font size is selected', async () => {
|
|
424
|
-
const user = userEvent.setup(
|
|
425
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
426
|
-
} );
|
|
410
|
+
const user = userEvent.setup();
|
|
427
411
|
const onChange = jest.fn();
|
|
428
412
|
render(
|
|
429
413
|
<FontSizePicker
|
|
@@ -523,9 +507,7 @@ describe( 'FontSizePicker', () => {
|
|
|
523
507
|
] )(
|
|
524
508
|
'calls onChange( $expectedArguments ) when $radio is selected',
|
|
525
509
|
async ( { radio, expectedArguments } ) => {
|
|
526
|
-
const user = userEvent.setup(
|
|
527
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
528
|
-
} );
|
|
510
|
+
const user = userEvent.setup();
|
|
529
511
|
const onChange = jest.fn();
|
|
530
512
|
render(
|
|
531
513
|
<FontSizePicker
|
|
@@ -580,9 +562,7 @@ describe( 'FontSizePicker', () => {
|
|
|
580
562
|
|
|
581
563
|
function commonSelectTests( fontSizes: FontSize[] ) {
|
|
582
564
|
it( 'shows custom input when Custom is selected', async () => {
|
|
583
|
-
const user = userEvent.setup(
|
|
584
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
585
|
-
} );
|
|
565
|
+
const user = userEvent.setup();
|
|
586
566
|
const onChange = jest.fn();
|
|
587
567
|
render(
|
|
588
568
|
<FontSizePicker
|
|
@@ -615,9 +595,7 @@ describe( 'FontSizePicker', () => {
|
|
|
615
595
|
} );
|
|
616
596
|
|
|
617
597
|
it( 'allows custom values by default', async () => {
|
|
618
|
-
const user = userEvent.setup(
|
|
619
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
620
|
-
} );
|
|
598
|
+
const user = userEvent.setup();
|
|
621
599
|
const onChange = jest.fn();
|
|
622
600
|
render(
|
|
623
601
|
<FontSizePicker
|
|
@@ -648,9 +626,7 @@ describe( 'FontSizePicker', () => {
|
|
|
648
626
|
} );
|
|
649
627
|
|
|
650
628
|
it( 'does not display a slider by default', async () => {
|
|
651
|
-
const user = userEvent.setup(
|
|
652
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
653
|
-
} );
|
|
629
|
+
const user = userEvent.setup();
|
|
654
630
|
render(
|
|
655
631
|
<FontSizePicker
|
|
656
632
|
__nextHasNoMarginBottom
|
|
@@ -666,9 +642,7 @@ describe( 'FontSizePicker', () => {
|
|
|
666
642
|
} );
|
|
667
643
|
|
|
668
644
|
it( 'allows a slider to be used when withSlider is set', async () => {
|
|
669
|
-
const user = userEvent.setup(
|
|
670
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
671
|
-
} );
|
|
645
|
+
const user = userEvent.setup();
|
|
672
646
|
const onChange = jest.fn();
|
|
673
647
|
render(
|
|
674
648
|
<FontSizePicker
|
|
@@ -690,9 +664,7 @@ describe( 'FontSizePicker', () => {
|
|
|
690
664
|
} );
|
|
691
665
|
|
|
692
666
|
it( 'allows reset by default', async () => {
|
|
693
|
-
const user = userEvent.setup(
|
|
694
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
695
|
-
} );
|
|
667
|
+
const user = userEvent.setup();
|
|
696
668
|
const onChange = jest.fn();
|
|
697
669
|
render(
|
|
698
670
|
<FontSizePicker
|
|
@@ -711,9 +683,7 @@ describe( 'FontSizePicker', () => {
|
|
|
711
683
|
} );
|
|
712
684
|
|
|
713
685
|
it( 'does not allow reset when withReset is false', async () => {
|
|
714
|
-
const user = userEvent.setup(
|
|
715
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
716
|
-
} );
|
|
686
|
+
const user = userEvent.setup();
|
|
717
687
|
render(
|
|
718
688
|
<FontSizePicker
|
|
719
689
|
__nextHasNoMarginBottom
|
|
@@ -14,8 +14,6 @@ import FormFileUpload from '..';
|
|
|
14
14
|
*/
|
|
15
15
|
const { File } = window;
|
|
16
16
|
|
|
17
|
-
jest.useFakeTimers();
|
|
18
|
-
|
|
19
17
|
// @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
|
|
20
18
|
const fakePath = expect.objectContaining( {
|
|
21
19
|
target: expect.objectContaining( {
|
|
@@ -24,15 +22,6 @@ const fakePath = expect.objectContaining( {
|
|
|
24
22
|
} );
|
|
25
23
|
|
|
26
24
|
describe( 'FormFileUpload', () => {
|
|
27
|
-
beforeEach( () => {
|
|
28
|
-
jest.useFakeTimers();
|
|
29
|
-
} );
|
|
30
|
-
|
|
31
|
-
afterEach( () => {
|
|
32
|
-
jest.runOnlyPendingTimers();
|
|
33
|
-
jest.useRealTimers();
|
|
34
|
-
} );
|
|
35
|
-
|
|
36
25
|
it( 'should show an Icon Button and a hidden input', () => {
|
|
37
26
|
render(
|
|
38
27
|
<FormFileUpload onChange={ () => {} }>
|
|
@@ -47,9 +36,7 @@ describe( 'FormFileUpload', () => {
|
|
|
47
36
|
} );
|
|
48
37
|
|
|
49
38
|
it( 'should not fire a change event after selecting the same file', async () => {
|
|
50
|
-
const user = userEvent.setup(
|
|
51
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
52
|
-
} );
|
|
39
|
+
const user = userEvent.setup();
|
|
53
40
|
|
|
54
41
|
const onChange = jest.fn();
|
|
55
42
|
|
|
@@ -74,9 +61,7 @@ describe( 'FormFileUpload', () => {
|
|
|
74
61
|
} );
|
|
75
62
|
|
|
76
63
|
it( 'should fire a change event after selecting the same file if the value was reset in between', async () => {
|
|
77
|
-
const user = userEvent.setup(
|
|
78
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
79
|
-
} );
|
|
64
|
+
const user = userEvent.setup();
|
|
80
65
|
|
|
81
66
|
const onChange = jest.fn();
|
|
82
67
|
|
|
@@ -15,8 +15,6 @@ import { useState } from '@wordpress/element';
|
|
|
15
15
|
import FormToggle, { noop } from '..';
|
|
16
16
|
import type { FormToggleProps } from '../types';
|
|
17
17
|
|
|
18
|
-
jest.useFakeTimers();
|
|
19
|
-
|
|
20
18
|
const getInput = () => screen.getByRole( 'checkbox' ) as HTMLInputElement;
|
|
21
19
|
|
|
22
20
|
const ControlledFormToggle = ( { onChange }: FormToggleProps ) => {
|
|
@@ -81,9 +79,7 @@ describe( 'FormToggle', () => {
|
|
|
81
79
|
|
|
82
80
|
describe( 'Value', () => {
|
|
83
81
|
it( 'should flip the checked property when clicked', async () => {
|
|
84
|
-
const user = userEvent.setup(
|
|
85
|
-
advanceTimers: jest.advanceTimersByTime,
|
|
86
|
-
} );
|
|
82
|
+
const user = userEvent.setup();
|
|
87
83
|
|
|
88
84
|
const onChange = jest.fn();
|
|
89
85
|
render( <ControlledFormToggle onChange={ onChange } /> );
|