@wordpress/block-editor 12.25.0 → 12.26.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 +9 -3
- package/README.md +6 -0
- package/build/components/block-actions/index.js +4 -2
- package/build/components/block-actions/index.js.map +1 -1
- package/build/components/block-alignment-control/ui.js +2 -2
- package/build/components/block-alignment-control/ui.js.map +1 -1
- package/build/components/block-card/index.js +2 -2
- package/build/components/block-card/index.js.map +1 -1
- package/build/components/block-compare/index.js +2 -2
- package/build/components/block-compare/index.js.map +1 -1
- package/build/components/block-edit/edit.js +2 -2
- package/build/components/block-edit/edit.js.map +1 -1
- package/build/components/block-icon/index.js +2 -2
- package/build/components/block-icon/index.js.map +1 -1
- package/build/components/block-inspector/index.js +1 -1
- package/build/components/block-inspector/index.js.map +1 -1
- package/build/components/block-list/block.js +4 -4
- package/build/components/block-list/block.js.map +1 -1
- package/build/components/block-list/block.native.js +2 -2
- package/build/components/block-list/block.native.js.map +1 -1
- package/build/components/block-list/index.js +2 -2
- package/build/components/block-list/index.js.map +1 -1
- package/build/components/block-list/use-block-props/index.js +5 -2
- package/build/components/block-list/use-block-props/index.js.map +1 -1
- package/build/components/block-list/use-block-props/use-scroll-into-view.js +44 -0
- package/build/components/block-list/use-block-props/use-scroll-into-view.js.map +1 -0
- package/build/components/block-list-appender/index.js +2 -2
- package/build/components/block-list-appender/index.js.map +1 -1
- package/build/components/block-mover/button.js +2 -2
- package/build/components/block-mover/button.js.map +1 -1
- package/build/components/block-mover/index.js +2 -2
- package/build/components/block-mover/index.js.map +1 -1
- package/build/components/block-patterns-list/index.js +26 -5
- package/build/components/block-patterns-list/index.js.map +1 -1
- package/build/components/block-popover/cover.js +9 -6
- package/build/components/block-popover/cover.js.map +1 -1
- package/build/components/block-popover/inbetween.js +2 -2
- package/build/components/block-popover/inbetween.js.map +1 -1
- package/build/components/block-popover/index.js +22 -4
- package/build/components/block-popover/index.js.map +1 -1
- package/build/components/block-preview/index.js +2 -2
- package/build/components/block-preview/index.js.map +1 -1
- package/build/components/block-settings-menu/block-settings-dropdown.js +8 -5
- package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build/components/block-settings-menu-controls/index.js +10 -7
- package/build/components/block-settings-menu-controls/index.js.map +1 -1
- package/build/components/block-styles/index.js +2 -2
- package/build/components/block-styles/index.js.map +1 -1
- package/build/components/block-toolbar/index.js +3 -3
- package/build/components/block-toolbar/index.js.map +1 -1
- package/build/components/block-tools/block-selection-button.js +2 -2
- package/build/components/block-tools/block-selection-button.js.map +1 -1
- package/build/components/block-tools/block-toolbar-breadcrumb.js +4 -4
- package/build/components/block-tools/block-toolbar-breadcrumb.js.map +1 -1
- package/build/components/block-tools/block-toolbar-popover.js +2 -2
- package/build/components/block-tools/block-toolbar-popover.js.map +1 -1
- package/build/components/block-tools/empty-block-inserter.js +2 -2
- package/build/components/block-tools/empty-block-inserter.js.map +1 -1
- package/build/components/block-tools/index.js +20 -1
- package/build/components/block-tools/index.js.map +1 -1
- package/build/components/block-tools/insertion-point.js +4 -4
- package/build/components/block-tools/insertion-point.js.map +1 -1
- package/build/components/block-tools/zoom-out-mode-inserters.js +66 -22
- package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
- package/build/components/block-variation-picker/index.js +2 -2
- package/build/components/block-variation-picker/index.js.map +1 -1
- package/build/components/button-block-appender/index.js +2 -2
- package/build/components/button-block-appender/index.js.map +1 -1
- package/build/components/child-layout-control/index.js +2 -2
- package/build/components/child-layout-control/index.js.map +1 -1
- package/build/components/colors-gradients/control.js +3 -3
- package/build/components/colors-gradients/control.js.map +1 -1
- package/build/components/colors-gradients/dropdown.js +2 -2
- package/build/components/colors-gradients/dropdown.js.map +1 -1
- package/build/components/colors-gradients/panel-color-gradient-settings.js +2 -2
- package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
- package/build/components/convert-to-group-buttons/index.js +6 -0
- package/build/components/convert-to-group-buttons/index.js.map +1 -1
- package/build/components/default-block-appender/index.js +2 -2
- package/build/components/default-block-appender/index.js.map +1 -1
- package/build/components/dimensions-tool/aspect-ratio-tool.js +30 -36
- package/build/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
- package/build/components/global-styles/background-panel.js +3 -3
- package/build/components/global-styles/background-panel.js.map +1 -1
- package/build/components/global-styles/color-panel.js +3 -3
- package/build/components/global-styles/color-panel.js.map +1 -1
- package/build/components/global-styles/dimensions-panel.js +4 -4
- package/build/components/global-styles/dimensions-panel.js.map +1 -1
- package/build/components/global-styles/filters-panel.js +2 -2
- package/build/components/global-styles/filters-panel.js.map +1 -1
- package/build/components/global-styles/shadow-panel-components.js +4 -4
- package/build/components/global-styles/shadow-panel-components.js.map +1 -1
- package/build/components/global-styles/use-global-styles-output.js +1 -1
- package/build/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build/components/grid-visualizer/grid-item-resizer.js +141 -24
- package/build/components/grid-visualizer/grid-item-resizer.js.map +1 -1
- package/build/components/grid-visualizer/grid-visualizer.js +11 -5
- package/build/components/grid-visualizer/grid-visualizer.js.map +1 -1
- package/build/components/iframe/index.js +69 -30
- package/build/components/iframe/index.js.map +1 -1
- package/build/components/image-editor/aspect-ratio-dropdown.js +53 -36
- package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
- package/build/components/image-editor/cropper.js +2 -2
- package/build/components/image-editor/cropper.js.map +1 -1
- package/build/components/image-editor/index.js +1 -1
- package/build/components/image-editor/index.js.map +1 -1
- package/build/components/index.js +8 -0
- package/build/components/index.js.map +1 -1
- package/build/components/inner-blocks/button-block-appender.js +2 -2
- package/build/components/inner-blocks/button-block-appender.js.map +1 -1
- package/build/components/inner-blocks/index.js +22 -21
- package/build/components/inner-blocks/index.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/pattern-list.js +1 -1
- package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/index.js +9 -0
- package/build/components/inserter/block-patterns-tab/index.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +1 -1
- package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
- package/build/components/inserter/block-types-tab.js +5 -3
- package/build/components/inserter/block-types-tab.js.map +1 -1
- package/build/components/inserter/hooks/use-insertion-point.js +11 -2
- package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
- package/build/components/inserter/hooks/use-patterns-state.js +12 -5
- package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
- package/build/components/inserter/index.js +2 -2
- package/build/components/inserter/index.js.map +1 -1
- package/build/components/inserter/library.js +8 -2
- package/build/components/inserter/library.js.map +1 -1
- package/build/components/inserter/media-tab/media-preview.js +2 -2
- package/build/components/inserter/media-tab/media-preview.js.map +1 -1
- package/build/components/inserter/menu.js +72 -56
- package/build/components/inserter/menu.js.map +1 -1
- package/build/components/inserter/quick-inserter.js +2 -2
- package/build/components/inserter/quick-inserter.js.map +1 -1
- package/build/components/inserter/tabs.js +17 -5
- package/build/components/inserter/tabs.js.map +1 -1
- package/build/components/inserter-list-item/index.js +3 -3
- package/build/components/inserter-list-item/index.js.map +1 -1
- package/build/components/keyboard-shortcuts/index.js +9 -0
- package/build/components/keyboard-shortcuts/index.js.map +1 -1
- package/build/components/link-control/index.js +2 -2
- package/build/components/link-control/index.js.map +1 -1
- package/build/components/link-control/link-preview.js +3 -3
- package/build/components/link-control/link-preview.js.map +1 -1
- package/build/components/link-control/search-results.js +2 -2
- package/build/components/link-control/search-results.js.map +1 -1
- package/build/components/list-view/block-contents.js +2 -2
- package/build/components/list-view/block-contents.js.map +1 -1
- package/build/components/list-view/block-select-button.js +11 -3
- package/build/components/list-view/block-select-button.js.map +1 -1
- package/build/components/list-view/block.js +35 -12
- package/build/components/list-view/block.js.map +1 -1
- package/build/components/list-view/drop-indicator.js +3 -3
- package/build/components/list-view/drop-indicator.js.map +1 -1
- package/build/components/list-view/index.js +2 -2
- package/build/components/list-view/index.js.map +1 -1
- package/build/components/list-view/leaf.js +2 -2
- package/build/components/list-view/leaf.js.map +1 -1
- package/build/components/media-placeholder/index.js +4 -4
- package/build/components/media-placeholder/index.js.map +1 -1
- package/build/components/media-replace-flow/index.js +2 -2
- package/build/components/media-replace-flow/index.js.map +1 -1
- package/build/components/plain-text/index.js +2 -2
- package/build/components/plain-text/index.js.map +1 -1
- package/build/components/provider/use-block-sync.js +18 -0
- package/build/components/provider/use-block-sync.js.map +1 -1
- package/build/components/responsive-block-control/index.js +2 -2
- package/build/components/responsive-block-control/index.js.map +1 -1
- package/build/components/rich-text/event-listeners/enter.js +33 -42
- package/build/components/rich-text/event-listeners/enter.js.map +1 -1
- package/build/components/rich-text/event-listeners/paste-handler.js +22 -42
- package/build/components/rich-text/event-listeners/paste-handler.js.map +1 -1
- package/build/components/rich-text/format-toolbar/index.js +2 -2
- package/build/components/rich-text/format-toolbar/index.js.map +1 -1
- package/build/components/rich-text/index.js +9 -2
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/rich-text/index.native.js +2 -2
- package/build/components/rich-text/index.native.js.map +1 -1
- package/build/components/rich-text/multiline.js +30 -2
- package/build/components/rich-text/multiline.js.map +1 -1
- package/build/components/segmented-text-control/index.js +2 -2
- package/build/components/segmented-text-control/index.js.map +1 -1
- package/build/components/text-alignment-control/index.js +2 -2
- package/build/components/text-alignment-control/index.js.map +1 -1
- package/build/components/text-decoration-control/index.js +2 -2
- package/build/components/text-decoration-control/index.js.map +1 -1
- package/build/components/text-transform-control/index.js +2 -2
- package/build/components/text-transform-control/index.js.map +1 -1
- package/build/components/url-input/index.js +4 -4
- package/build/components/url-input/index.js.map +1 -1
- package/build/components/url-popover/link-editor.js +2 -2
- package/build/components/url-popover/link-editor.js.map +1 -1
- package/build/components/url-popover/link-viewer-url.js +2 -2
- package/build/components/url-popover/link-viewer-url.js.map +1 -1
- package/build/components/url-popover/link-viewer.js +2 -2
- package/build/components/url-popover/link-viewer.js.map +1 -1
- package/build/components/warning/index.js +2 -2
- package/build/components/warning/index.js.map +1 -1
- package/build/components/writing-flow/index.js +2 -2
- package/build/components/writing-flow/index.js.map +1 -1
- package/build/components/writing-flow/use-clipboard-handler.js +77 -30
- package/build/components/writing-flow/use-clipboard-handler.js.map +1 -1
- package/build/components/writing-flow/use-input.js +44 -2
- package/build/components/writing-flow/use-input.js.map +1 -1
- package/build/components/writing-flow/use-tab-nav.js +6 -1
- package/build/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build/components/writing-mode-control/index.js +2 -2
- package/build/components/writing-mode-control/index.js.map +1 -1
- package/build/hooks/align.js +2 -2
- package/build/hooks/align.js.map +1 -1
- package/build/hooks/background.js +1 -1
- package/build/hooks/background.js.map +1 -1
- package/build/hooks/border.js +3 -3
- package/build/hooks/border.js.map +1 -1
- package/build/hooks/color.js +3 -3
- package/build/hooks/color.js.map +1 -1
- package/build/hooks/content-lock-ui.js +5 -28
- package/build/hooks/content-lock-ui.js.map +1 -1
- package/build/hooks/custom-class-name.js +2 -2
- package/build/hooks/custom-class-name.js.map +1 -1
- package/build/hooks/custom-class-name.native.js +2 -2
- package/build/hooks/custom-class-name.native.js.map +1 -1
- package/build/hooks/dimensions.js +2 -2
- package/build/hooks/dimensions.js.map +1 -1
- package/build/hooks/layout-child.js +16 -8
- package/build/hooks/layout-child.js.map +1 -1
- package/build/hooks/layout.js +2 -2
- package/build/hooks/layout.js.map +1 -1
- package/build/hooks/position.js +2 -2
- package/build/hooks/position.js.map +1 -1
- package/build/hooks/text-align.js +3 -3
- package/build/hooks/text-align.js.map +1 -1
- package/build/hooks/use-bindings-attributes.js +39 -13
- package/build/hooks/use-bindings-attributes.js.map +1 -1
- package/build/hooks/use-color-props.js +2 -2
- package/build/hooks/use-color-props.js.map +1 -1
- package/build/hooks/use-typography-props.js +2 -2
- package/build/hooks/use-typography-props.js.map +1 -1
- package/build/hooks/utils.js +2 -2
- package/build/hooks/utils.js.map +1 -1
- package/build/layouts/grid.js +7 -6
- package/build/layouts/grid.js.map +1 -1
- package/build/private-apis.js +4 -1
- package/build/private-apis.js.map +1 -1
- package/build/store/actions.js +134 -40
- package/build/store/actions.js.map +1 -1
- package/build/store/private-actions.js +26 -1
- package/build/store/private-actions.js.map +1 -1
- package/build/store/private-keys.js +2 -1
- package/build/store/private-keys.js.map +1 -1
- package/build/store/private-selectors.js +6 -0
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/selectors.js +4 -1
- package/build/store/selectors.js.map +1 -1
- package/build/utils/selection.js +8 -0
- package/build/utils/selection.js.map +1 -1
- package/build/utils/transform-styles/index.js +12 -7
- package/build/utils/transform-styles/index.js.map +1 -1
- package/build-module/components/block-actions/index.js +4 -2
- package/build-module/components/block-actions/index.js.map +1 -1
- package/build-module/components/block-alignment-control/ui.js +2 -2
- package/build-module/components/block-alignment-control/ui.js.map +1 -1
- package/build-module/components/block-card/index.js +2 -2
- package/build-module/components/block-card/index.js.map +1 -1
- package/build-module/components/block-compare/index.js +2 -2
- package/build-module/components/block-compare/index.js.map +1 -1
- package/build-module/components/block-edit/edit.js +2 -2
- package/build-module/components/block-edit/edit.js.map +1 -1
- package/build-module/components/block-icon/index.js +2 -2
- package/build-module/components/block-icon/index.js.map +1 -1
- package/build-module/components/block-inspector/index.js +1 -1
- package/build-module/components/block-inspector/index.js.map +1 -1
- package/build-module/components/block-list/block.js +4 -4
- package/build-module/components/block-list/block.js.map +1 -1
- package/build-module/components/block-list/block.native.js +2 -2
- package/build-module/components/block-list/block.native.js.map +1 -1
- package/build-module/components/block-list/index.js +2 -2
- package/build-module/components/block-list/index.js.map +1 -1
- package/build-module/components/block-list/use-block-props/index.js +5 -2
- package/build-module/components/block-list/use-block-props/index.js.map +1 -1
- package/build-module/components/block-list/use-block-props/use-scroll-into-view.js +37 -0
- package/build-module/components/block-list/use-block-props/use-scroll-into-view.js.map +1 -0
- package/build-module/components/block-list-appender/index.js +2 -2
- package/build-module/components/block-list-appender/index.js.map +1 -1
- package/build-module/components/block-mover/button.js +2 -2
- package/build-module/components/block-mover/button.js.map +1 -1
- package/build-module/components/block-mover/index.js +2 -2
- package/build-module/components/block-mover/index.js.map +1 -1
- package/build-module/components/block-patterns-list/index.js +27 -6
- package/build-module/components/block-patterns-list/index.js.map +1 -1
- package/build-module/components/block-popover/cover.js +9 -5
- package/build-module/components/block-popover/cover.js.map +1 -1
- package/build-module/components/block-popover/inbetween.js +2 -2
- package/build-module/components/block-popover/inbetween.js.map +1 -1
- package/build-module/components/block-popover/index.js +21 -3
- package/build-module/components/block-popover/index.js.map +1 -1
- package/build-module/components/block-preview/index.js +2 -2
- package/build-module/components/block-preview/index.js.map +1 -1
- package/build-module/components/block-settings-menu/block-settings-dropdown.js +8 -5
- package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build-module/components/block-settings-menu-controls/index.js +10 -7
- package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
- package/build-module/components/block-styles/index.js +2 -2
- package/build-module/components/block-styles/index.js.map +1 -1
- package/build-module/components/block-toolbar/index.js +3 -3
- package/build-module/components/block-toolbar/index.js.map +1 -1
- package/build-module/components/block-tools/block-selection-button.js +2 -2
- package/build-module/components/block-tools/block-selection-button.js.map +1 -1
- package/build-module/components/block-tools/block-toolbar-breadcrumb.js +4 -4
- package/build-module/components/block-tools/block-toolbar-breadcrumb.js.map +1 -1
- package/build-module/components/block-tools/block-toolbar-popover.js +2 -2
- package/build-module/components/block-tools/block-toolbar-popover.js.map +1 -1
- package/build-module/components/block-tools/empty-block-inserter.js +2 -2
- package/build-module/components/block-tools/empty-block-inserter.js.map +1 -1
- package/build-module/components/block-tools/index.js +20 -1
- package/build-module/components/block-tools/index.js.map +1 -1
- package/build-module/components/block-tools/insertion-point.js +4 -4
- package/build-module/components/block-tools/insertion-point.js.map +1 -1
- package/build-module/components/block-tools/zoom-out-mode-inserters.js +67 -23
- package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
- package/build-module/components/block-variation-picker/index.js +2 -2
- package/build-module/components/block-variation-picker/index.js.map +1 -1
- package/build-module/components/button-block-appender/index.js +2 -2
- package/build-module/components/button-block-appender/index.js.map +1 -1
- package/build-module/components/child-layout-control/index.js +2 -2
- package/build-module/components/child-layout-control/index.js.map +1 -1
- package/build-module/components/colors-gradients/control.js +3 -3
- package/build-module/components/colors-gradients/control.js.map +1 -1
- package/build-module/components/colors-gradients/dropdown.js +2 -2
- package/build-module/components/colors-gradients/dropdown.js.map +1 -1
- package/build-module/components/colors-gradients/panel-color-gradient-settings.js +2 -2
- package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
- package/build-module/components/convert-to-group-buttons/index.js +7 -1
- package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
- package/build-module/components/default-block-appender/index.js +2 -2
- package/build-module/components/default-block-appender/index.js.map +1 -1
- package/build-module/components/dimensions-tool/aspect-ratio-tool.js +30 -36
- package/build-module/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
- package/build-module/components/global-styles/background-panel.js +3 -3
- package/build-module/components/global-styles/background-panel.js.map +1 -1
- package/build-module/components/global-styles/color-panel.js +3 -3
- package/build-module/components/global-styles/color-panel.js.map +1 -1
- package/build-module/components/global-styles/dimensions-panel.js +4 -4
- package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
- package/build-module/components/global-styles/filters-panel.js +2 -2
- package/build-module/components/global-styles/filters-panel.js.map +1 -1
- package/build-module/components/global-styles/shadow-panel-components.js +4 -4
- package/build-module/components/global-styles/shadow-panel-components.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build-module/components/grid-visualizer/grid-item-resizer.js +141 -24
- package/build-module/components/grid-visualizer/grid-item-resizer.js.map +1 -1
- package/build-module/components/grid-visualizer/grid-visualizer.js +12 -6
- package/build-module/components/grid-visualizer/grid-visualizer.js.map +1 -1
- package/build-module/components/iframe/index.js +70 -31
- package/build-module/components/iframe/index.js.map +1 -1
- package/build-module/components/image-editor/aspect-ratio-dropdown.js +52 -36
- package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
- package/build-module/components/image-editor/cropper.js +2 -2
- package/build-module/components/image-editor/cropper.js.map +1 -1
- package/build-module/components/image-editor/index.js +1 -1
- package/build-module/components/image-editor/index.js.map +1 -1
- package/build-module/components/index.js +1 -0
- package/build-module/components/index.js.map +1 -1
- package/build-module/components/inner-blocks/button-block-appender.js +2 -2
- package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
- package/build-module/components/inner-blocks/index.js +22 -21
- package/build-module/components/inner-blocks/index.js.map +1 -1
- package/build-module/components/inserter/block-patterns-explorer/pattern-list.js +1 -1
- package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/index.js +10 -1
- package/build-module/components/inserter/block-patterns-tab/index.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +1 -1
- package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
- package/build-module/components/inserter/block-types-tab.js +6 -4
- package/build-module/components/inserter/block-types-tab.js.map +1 -1
- package/build-module/components/inserter/hooks/use-insertion-point.js +11 -2
- package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
- package/build-module/components/inserter/hooks/use-patterns-state.js +12 -5
- package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
- package/build-module/components/inserter/index.js +2 -2
- package/build-module/components/inserter/index.js.map +1 -1
- package/build-module/components/inserter/library.js +8 -2
- package/build-module/components/inserter/library.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-preview.js +2 -2
- package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
- package/build-module/components/inserter/menu.js +72 -56
- package/build-module/components/inserter/menu.js.map +1 -1
- package/build-module/components/inserter/quick-inserter.js +2 -2
- package/build-module/components/inserter/quick-inserter.js.map +1 -1
- package/build-module/components/inserter/tabs.js +18 -6
- package/build-module/components/inserter/tabs.js.map +1 -1
- package/build-module/components/inserter-list-item/index.js +3 -3
- package/build-module/components/inserter-list-item/index.js.map +1 -1
- package/build-module/components/keyboard-shortcuts/index.js +9 -0
- package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
- package/build-module/components/link-control/index.js +2 -2
- package/build-module/components/link-control/index.js.map +1 -1
- package/build-module/components/link-control/link-preview.js +3 -3
- package/build-module/components/link-control/link-preview.js.map +1 -1
- package/build-module/components/link-control/search-results.js +2 -2
- package/build-module/components/link-control/search-results.js.map +1 -1
- package/build-module/components/list-view/block-contents.js +2 -2
- package/build-module/components/list-view/block-contents.js.map +1 -1
- package/build-module/components/list-view/block-select-button.js +11 -3
- package/build-module/components/list-view/block-select-button.js.map +1 -1
- package/build-module/components/list-view/block.js +36 -13
- package/build-module/components/list-view/block.js.map +1 -1
- package/build-module/components/list-view/drop-indicator.js +3 -3
- package/build-module/components/list-view/drop-indicator.js.map +1 -1
- package/build-module/components/list-view/index.js +2 -2
- package/build-module/components/list-view/index.js.map +1 -1
- package/build-module/components/list-view/leaf.js +2 -2
- package/build-module/components/list-view/leaf.js.map +1 -1
- package/build-module/components/media-placeholder/index.js +4 -4
- package/build-module/components/media-placeholder/index.js.map +1 -1
- package/build-module/components/media-replace-flow/index.js +2 -2
- package/build-module/components/media-replace-flow/index.js.map +1 -1
- package/build-module/components/plain-text/index.js +2 -2
- package/build-module/components/plain-text/index.js.map +1 -1
- package/build-module/components/provider/use-block-sync.js +19 -1
- package/build-module/components/provider/use-block-sync.js.map +1 -1
- package/build-module/components/responsive-block-control/index.js +2 -2
- package/build-module/components/responsive-block-control/index.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/enter.js +33 -43
- package/build-module/components/rich-text/event-listeners/enter.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/paste-handler.js +23 -43
- package/build-module/components/rich-text/event-listeners/paste-handler.js.map +1 -1
- package/build-module/components/rich-text/format-toolbar/index.js +2 -2
- package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
- package/build-module/components/rich-text/index.js +9 -2
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/rich-text/index.native.js +2 -2
- package/build-module/components/rich-text/index.native.js.map +1 -1
- package/build-module/components/rich-text/multiline.js +31 -3
- package/build-module/components/rich-text/multiline.js.map +1 -1
- package/build-module/components/segmented-text-control/index.js +2 -2
- package/build-module/components/segmented-text-control/index.js.map +1 -1
- package/build-module/components/text-alignment-control/index.js +2 -2
- package/build-module/components/text-alignment-control/index.js.map +1 -1
- package/build-module/components/text-decoration-control/index.js +2 -2
- package/build-module/components/text-decoration-control/index.js.map +1 -1
- package/build-module/components/text-transform-control/index.js +2 -2
- package/build-module/components/text-transform-control/index.js.map +1 -1
- package/build-module/components/url-input/index.js +4 -4
- package/build-module/components/url-input/index.js.map +1 -1
- package/build-module/components/url-popover/link-editor.js +2 -2
- package/build-module/components/url-popover/link-editor.js.map +1 -1
- package/build-module/components/url-popover/link-viewer-url.js +2 -2
- package/build-module/components/url-popover/link-viewer-url.js.map +1 -1
- package/build-module/components/url-popover/link-viewer.js +2 -2
- package/build-module/components/url-popover/link-viewer.js.map +1 -1
- package/build-module/components/warning/index.js +2 -2
- package/build-module/components/warning/index.js.map +1 -1
- package/build-module/components/writing-flow/index.js +2 -2
- package/build-module/components/writing-flow/index.js.map +1 -1
- package/build-module/components/writing-flow/use-clipboard-handler.js +78 -31
- package/build-module/components/writing-flow/use-clipboard-handler.js.map +1 -1
- package/build-module/components/writing-flow/use-input.js +45 -3
- package/build-module/components/writing-flow/use-input.js.map +1 -1
- package/build-module/components/writing-flow/use-tab-nav.js +6 -1
- package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build-module/components/writing-mode-control/index.js +2 -2
- package/build-module/components/writing-mode-control/index.js.map +1 -1
- package/build-module/hooks/align.js +2 -2
- package/build-module/hooks/align.js.map +1 -1
- package/build-module/hooks/background.js +1 -1
- package/build-module/hooks/background.js.map +1 -1
- package/build-module/hooks/border.js +3 -3
- package/build-module/hooks/border.js.map +1 -1
- package/build-module/hooks/color.js +3 -3
- package/build-module/hooks/color.js.map +1 -1
- package/build-module/hooks/content-lock-ui.js +5 -28
- package/build-module/hooks/content-lock-ui.js.map +1 -1
- package/build-module/hooks/custom-class-name.js +2 -2
- package/build-module/hooks/custom-class-name.js.map +1 -1
- package/build-module/hooks/custom-class-name.native.js +2 -2
- package/build-module/hooks/custom-class-name.native.js.map +1 -1
- package/build-module/hooks/dimensions.js +2 -2
- package/build-module/hooks/dimensions.js.map +1 -1
- package/build-module/hooks/layout-child.js +16 -8
- package/build-module/hooks/layout-child.js.map +1 -1
- package/build-module/hooks/layout.js +2 -2
- package/build-module/hooks/layout.js.map +1 -1
- package/build-module/hooks/position.js +2 -2
- package/build-module/hooks/position.js.map +1 -1
- package/build-module/hooks/text-align.js +3 -3
- package/build-module/hooks/text-align.js.map +1 -1
- package/build-module/hooks/use-bindings-attributes.js +39 -13
- package/build-module/hooks/use-bindings-attributes.js.map +1 -1
- package/build-module/hooks/use-color-props.js +2 -2
- package/build-module/hooks/use-color-props.js.map +1 -1
- package/build-module/hooks/use-typography-props.js +2 -2
- package/build-module/hooks/use-typography-props.js.map +1 -1
- package/build-module/hooks/utils.js +2 -2
- package/build-module/hooks/utils.js.map +1 -1
- package/build-module/layouts/grid.js +7 -6
- package/build-module/layouts/grid.js.map +1 -1
- package/build-module/private-apis.js +5 -2
- package/build-module/private-apis.js.map +1 -1
- package/build-module/store/actions.js +136 -42
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/private-actions.js +24 -0
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/private-keys.js +1 -0
- package/build-module/store/private-keys.js.map +1 -1
- package/build-module/store/private-selectors.js +5 -0
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/selectors.js +4 -1
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/selection.js +7 -0
- package/build-module/utils/selection.js.map +1 -1
- package/build-module/utils/transform-styles/index.js +12 -7
- package/build-module/utils/transform-styles/index.js.map +1 -1
- package/build-style/content-rtl.css +89 -96
- package/build-style/content.css +89 -96
- package/build-style/style-rtl.css +14 -4
- package/build-style/style.css +14 -4
- package/build-types/components/block-context/index.d.ts +1 -1
- package/build-types/components/block-context/index.d.ts.map +1 -1
- package/package.json +32 -32
- package/src/components/block-actions/index.js +5 -1
- package/src/components/block-alignment-control/ui.js +2 -2
- package/src/components/block-card/index.js +2 -2
- package/src/components/block-compare/index.js +2 -2
- package/src/components/block-content-overlay/content.scss +4 -37
- package/src/components/block-draggable/test/helpers.native.js +8 -8
- package/src/components/block-edit/edit.js +2 -2
- package/src/components/block-icon/index.js +2 -2
- package/src/components/block-inspector/index.js +2 -1
- package/src/components/block-list/block.js +4 -4
- package/src/components/block-list/block.native.js +2 -2
- package/src/components/block-list/content.scss +46 -73
- package/src/components/block-list/index.js +2 -2
- package/src/components/block-list/use-block-props/index.js +4 -2
- package/src/components/block-list/use-block-props/use-scroll-into-view.js +38 -0
- package/src/components/block-list-appender/index.js +2 -2
- package/src/components/block-mover/button.js +2 -2
- package/src/components/block-mover/index.js +2 -2
- package/src/components/block-patterns-list/index.js +29 -4
- package/src/components/block-popover/README.md +1 -1
- package/src/components/block-popover/cover.js +22 -7
- package/src/components/block-popover/inbetween.js +2 -2
- package/src/components/block-popover/index.js +24 -6
- package/src/components/block-preview/index.js +2 -2
- package/src/components/block-settings-menu/block-settings-dropdown.js +14 -6
- package/src/components/block-settings-menu-controls/index.js +25 -16
- package/src/components/block-styles/index.js +2 -2
- package/src/components/block-toolbar/index.js +3 -3
- package/src/components/block-tools/block-selection-button.js +2 -2
- package/src/components/block-tools/block-toolbar-breadcrumb.js +5 -5
- package/src/components/block-tools/block-toolbar-popover.js +4 -7
- package/src/components/block-tools/empty-block-inserter.js +2 -2
- package/src/components/block-tools/index.js +24 -3
- package/src/components/block-tools/insertion-point.js +4 -4
- package/src/components/block-tools/style.scss +8 -0
- package/src/components/block-tools/zoom-out-mode-inserters.js +73 -21
- package/src/components/block-variation-picker/index.js +2 -2
- package/src/components/button-block-appender/index.js +2 -2
- package/src/components/child-layout-control/index.js +14 -2
- package/src/components/colors-gradients/control.js +3 -3
- package/src/components/colors-gradients/dropdown.js +2 -2
- package/src/components/colors-gradients/panel-color-gradient-settings.js +2 -2
- package/src/components/colors-gradients/test/control.js +3 -3
- package/src/components/convert-to-group-buttons/index.js +10 -1
- package/src/components/default-block-appender/index.js +2 -2
- package/src/components/dimensions-tool/aspect-ratio-tool.js +40 -67
- package/src/components/dimensions-tool/test/index.js +10 -0
- package/src/components/editable-text/README.md +0 -4
- package/src/components/global-styles/background-panel.js +3 -3
- package/src/components/global-styles/color-panel.js +3 -3
- package/src/components/global-styles/dimensions-panel.js +4 -4
- package/src/components/global-styles/filters-panel.js +2 -2
- package/src/components/global-styles/shadow-panel-components.js +6 -9
- package/src/components/global-styles/test/get-global-styles-changes.js +0 -2
- package/src/components/global-styles/test/use-global-styles-output.js +5 -5
- package/src/components/global-styles/use-global-styles-output.js +1 -1
- package/src/components/grid-visualizer/grid-item-resizer.js +169 -40
- package/src/components/grid-visualizer/grid-visualizer.js +19 -6
- package/src/components/iframe/content.scss +63 -0
- package/src/components/iframe/index.js +119 -39
- package/src/components/image-editor/aspect-ratio-dropdown.js +91 -59
- package/src/components/image-editor/cropper.js +2 -2
- package/src/components/image-editor/index.js +1 -1
- package/src/components/image-editor/test/index.js +22 -0
- package/src/components/index.js +1 -0
- package/src/components/inner-blocks/button-block-appender.js +2 -2
- package/src/components/inner-blocks/index.js +19 -17
- package/src/components/inserter/block-patterns-explorer/pattern-list.js +2 -1
- package/src/components/inserter/block-patterns-tab/index.js +17 -1
- package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +2 -1
- package/src/components/inserter/block-types-tab.js +7 -9
- package/src/components/inserter/hooks/use-insertion-point.js +15 -1
- package/src/components/inserter/hooks/use-patterns-state.js +18 -5
- package/src/components/inserter/index.js +4 -5
- package/src/components/inserter/library.js +6 -0
- package/src/components/inserter/media-tab/media-preview.js +2 -2
- package/src/components/inserter/menu.js +113 -107
- package/src/components/inserter/quick-inserter.js +2 -2
- package/src/components/inserter/style.scss +6 -8
- package/src/components/inserter/tabs.js +29 -15
- package/src/components/inserter-list-item/index.js +3 -3
- package/src/components/keyboard-shortcuts/index.js +12 -0
- package/src/components/line-height-control/test/index.js +16 -14
- package/src/components/link-control/index.js +2 -2
- package/src/components/link-control/link-preview.js +3 -3
- package/src/components/link-control/search-results.js +2 -2
- package/src/components/list-view/block-contents.js +2 -2
- package/src/components/list-view/block-select-button.js +14 -3
- package/src/components/list-view/block.js +54 -30
- package/src/components/list-view/drop-indicator.js +3 -3
- package/src/components/list-view/index.js +2 -2
- package/src/components/list-view/leaf.js +2 -5
- package/src/components/media-placeholder/index.js +4 -4
- package/src/components/media-replace-flow/index.js +2 -2
- package/src/components/plain-text/index.js +2 -2
- package/src/components/provider/use-block-sync.js +27 -1
- package/src/components/responsive-block-control/index.js +2 -2
- package/src/components/rich-text/README.md +0 -8
- package/src/components/rich-text/event-listeners/enter.js +28 -48
- package/src/components/rich-text/event-listeners/paste-handler.js +21 -58
- package/src/components/rich-text/format-toolbar/index.js +2 -2
- package/src/components/rich-text/index.js +10 -3
- package/src/components/rich-text/index.native.js +2 -2
- package/src/components/rich-text/multiline.js +31 -3
- package/src/components/segmented-text-control/index.js +2 -2
- package/src/components/text-alignment-control/index.js +2 -2
- package/src/components/text-decoration-control/index.js +2 -2
- package/src/components/text-transform-control/index.js +2 -2
- package/src/components/url-input/index.js +4 -4
- package/src/components/url-popover/link-editor.js +2 -2
- package/src/components/url-popover/link-viewer-url.js +2 -2
- package/src/components/url-popover/link-viewer.js +2 -2
- package/src/components/warning/index.js +2 -2
- package/src/components/writing-flow/index.js +2 -2
- package/src/components/writing-flow/use-clipboard-handler.js +107 -47
- package/src/components/writing-flow/use-input.js +75 -1
- package/src/components/writing-flow/use-tab-nav.js +10 -1
- package/src/components/writing-mode-control/index.js +2 -5
- package/src/content.scss +1 -0
- package/src/hooks/align.js +2 -2
- package/src/hooks/background.js +1 -1
- package/src/hooks/border.js +3 -3
- package/src/hooks/color.js +12 -19
- package/src/hooks/color.scss +1 -0
- package/src/hooks/content-lock-ui.js +16 -33
- package/src/hooks/custom-class-name.js +2 -2
- package/src/hooks/custom-class-name.native.js +2 -2
- package/src/hooks/dimensions.js +2 -2
- package/src/hooks/layout-child.js +34 -20
- package/src/hooks/layout.js +2 -2
- package/src/hooks/position.js +2 -2
- package/src/hooks/text-align.js +3 -3
- package/src/hooks/use-bindings-attributes.js +48 -16
- package/src/hooks/use-color-props.js +2 -2
- package/src/hooks/use-typography-props.js +2 -2
- package/src/hooks/utils.js +2 -2
- package/src/layouts/grid.js +3 -7
- package/src/private-apis.js +4 -0
- package/src/store/actions.js +225 -70
- package/src/store/private-actions.js +24 -0
- package/src/store/private-keys.js +1 -0
- package/src/store/private-selectors.js +15 -0
- package/src/store/selectors.js +4 -2
- package/src/utils/selection.js +8 -0
- package/src/utils/test/__snapshots__/transform-styles.js.snap +6 -0
- package/src/utils/test/transform-styles.js +14 -0
- package/src/utils/transform-styles/index.js +12 -9
- package/tsconfig.tsbuildinfo +1 -1
- package/build/components/rich-text/split-value.js +0 -81
- package/build/components/rich-text/split-value.js.map +0 -1
- package/build-module/components/rich-text/split-value.js +0 -75
- package/build-module/components/rich-text/split-value.js.map +0 -1
- package/src/components/rich-text/split-value.js +0 -64
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
4
|
+
import clsx from 'clsx';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
@@ -17,6 +17,7 @@ import {
|
|
|
17
17
|
import { VisuallyHidden, SearchControl, Popover } from '@wordpress/components';
|
|
18
18
|
import { __ } from '@wordpress/i18n';
|
|
19
19
|
import { useDebouncedInput } from '@wordpress/compose';
|
|
20
|
+
import { useSelect } from '@wordpress/data';
|
|
20
21
|
|
|
21
22
|
/**
|
|
22
23
|
* Internal dependencies
|
|
@@ -31,6 +32,7 @@ import InserterSearchResults from './search-results';
|
|
|
31
32
|
import useInsertionPoint from './hooks/use-insertion-point';
|
|
32
33
|
import InserterTabs from './tabs';
|
|
33
34
|
import { useZoomOut } from '../../hooks/use-zoom-out';
|
|
35
|
+
import { store as blockEditorStore } from '../../store';
|
|
34
36
|
|
|
35
37
|
const NOOP = () => {};
|
|
36
38
|
function InserterMenu(
|
|
@@ -45,18 +47,29 @@ function InserterMenu(
|
|
|
45
47
|
__experimentalFilterValue = '',
|
|
46
48
|
shouldFocusBlock = true,
|
|
47
49
|
__experimentalOnPatternCategorySelection = NOOP,
|
|
50
|
+
onClose,
|
|
51
|
+
__experimentalInitialTab,
|
|
52
|
+
__experimentalInitialCategory,
|
|
48
53
|
},
|
|
49
54
|
ref
|
|
50
55
|
) {
|
|
56
|
+
const isZoomOutMode = useSelect(
|
|
57
|
+
( select ) =>
|
|
58
|
+
select( blockEditorStore ).__unstableGetEditorMode() === 'zoom-out',
|
|
59
|
+
[]
|
|
60
|
+
);
|
|
51
61
|
const [ filterValue, setFilterValue, delayedFilterValue ] =
|
|
52
62
|
useDebouncedInput( __experimentalFilterValue );
|
|
53
63
|
const [ hoveredItem, setHoveredItem ] = useState( null );
|
|
54
|
-
const [ selectedPatternCategory, setSelectedPatternCategory ] =
|
|
55
|
-
|
|
64
|
+
const [ selectedPatternCategory, setSelectedPatternCategory ] = useState(
|
|
65
|
+
__experimentalInitialCategory
|
|
66
|
+
);
|
|
56
67
|
const [ patternFilter, setPatternFilter ] = useState( 'all' );
|
|
57
68
|
const [ selectedMediaCategory, setSelectedMediaCategory ] =
|
|
58
69
|
useState( null );
|
|
59
|
-
const [ selectedTab, setSelectedTab ] = useState(
|
|
70
|
+
const [ selectedTab, setSelectedTab ] = useState(
|
|
71
|
+
__experimentalInitialTab
|
|
72
|
+
);
|
|
60
73
|
|
|
61
74
|
const [ destinationRootClientId, onInsertBlocks, onToggleInsertionPoint ] =
|
|
62
75
|
useInsertionPoint( {
|
|
@@ -66,13 +79,27 @@ function InserterMenu(
|
|
|
66
79
|
insertionIndex: __experimentalInsertionIndex,
|
|
67
80
|
shouldFocusBlock,
|
|
68
81
|
} );
|
|
82
|
+
const blockTypesTabRef = useRef();
|
|
69
83
|
|
|
70
84
|
const onInsert = useCallback(
|
|
71
85
|
( blocks, meta, shouldForceFocusBlock ) => {
|
|
72
86
|
onInsertBlocks( blocks, meta, shouldForceFocusBlock );
|
|
73
87
|
onSelect();
|
|
88
|
+
|
|
89
|
+
// Check for focus loss due to filtering blocks by selected block type
|
|
90
|
+
window.requestAnimationFrame( () => {
|
|
91
|
+
if (
|
|
92
|
+
! shouldFocusBlock &&
|
|
93
|
+
! blockTypesTabRef?.current.contains(
|
|
94
|
+
ref.current.ownerDocument.activeElement
|
|
95
|
+
)
|
|
96
|
+
) {
|
|
97
|
+
// There has been a focus loss, so focus the first button in the block types tab
|
|
98
|
+
blockTypesTabRef?.current.querySelector( 'button' ).focus();
|
|
99
|
+
}
|
|
100
|
+
} );
|
|
74
101
|
},
|
|
75
|
-
[ onInsertBlocks, onSelect ]
|
|
102
|
+
[ onInsertBlocks, onSelect, shouldFocusBlock ]
|
|
76
103
|
);
|
|
77
104
|
|
|
78
105
|
const onInsertPattern = useCallback(
|
|
@@ -98,34 +125,27 @@ function InserterMenu(
|
|
|
98
125
|
[ onToggleInsertionPoint ]
|
|
99
126
|
);
|
|
100
127
|
|
|
101
|
-
const isZoomedOutViewExperimentEnabled =
|
|
102
|
-
window?.__experimentalEnableZoomedOutView;
|
|
103
128
|
const onClickPatternCategory = useCallback(
|
|
104
129
|
( patternCategory, filter ) => {
|
|
105
130
|
setSelectedPatternCategory( patternCategory );
|
|
106
131
|
setPatternFilter( filter );
|
|
107
|
-
|
|
108
|
-
__experimentalOnPatternCategorySelection();
|
|
109
|
-
}
|
|
132
|
+
__experimentalOnPatternCategorySelection();
|
|
110
133
|
},
|
|
111
|
-
[
|
|
112
|
-
setSelectedPatternCategory,
|
|
113
|
-
__experimentalOnPatternCategorySelection,
|
|
114
|
-
isZoomedOutViewExperimentEnabled,
|
|
115
|
-
]
|
|
134
|
+
[ setSelectedPatternCategory, __experimentalOnPatternCategorySelection ]
|
|
116
135
|
);
|
|
117
136
|
|
|
118
137
|
const showPatternPanel =
|
|
119
138
|
selectedTab === 'patterns' &&
|
|
120
139
|
! delayedFilterValue &&
|
|
121
|
-
selectedPatternCategory;
|
|
140
|
+
!! selectedPatternCategory;
|
|
122
141
|
|
|
123
|
-
const showMediaPanel = selectedTab === 'media' && selectedMediaCategory;
|
|
142
|
+
const showMediaPanel = selectedTab === 'media' && !! selectedMediaCategory;
|
|
124
143
|
|
|
125
144
|
const inserterSearch = useMemo( () => {
|
|
126
145
|
if ( selectedTab === 'media' ) {
|
|
127
146
|
return null;
|
|
128
147
|
}
|
|
148
|
+
|
|
129
149
|
return (
|
|
130
150
|
<>
|
|
131
151
|
<SearchControl
|
|
@@ -177,83 +197,68 @@ function InserterMenu(
|
|
|
177
197
|
isAppender,
|
|
178
198
|
] );
|
|
179
199
|
|
|
180
|
-
const blocksTab = useMemo(
|
|
181
|
-
|
|
200
|
+
const blocksTab = useMemo( () => {
|
|
201
|
+
return (
|
|
182
202
|
<>
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
<Tips />
|
|
200
|
-
</div>
|
|
201
|
-
) }
|
|
202
|
-
</>
|
|
203
|
+
<div className="block-editor-inserter__block-list">
|
|
204
|
+
<BlockTypesTab
|
|
205
|
+
ref={ blockTypesTabRef }
|
|
206
|
+
rootClientId={ destinationRootClientId }
|
|
207
|
+
onInsert={ onInsert }
|
|
208
|
+
onHover={ onHover }
|
|
209
|
+
showMostUsedBlocks={ showMostUsedBlocks }
|
|
210
|
+
/>
|
|
211
|
+
</div>
|
|
212
|
+
{ showInserterHelpPanel && (
|
|
213
|
+
<div className="block-editor-inserter__tips">
|
|
214
|
+
<VisuallyHidden as="h2">
|
|
215
|
+
{ __( 'A tip for using the block editor' ) }
|
|
216
|
+
</VisuallyHidden>
|
|
217
|
+
<Tips />
|
|
218
|
+
</div>
|
|
203
219
|
) }
|
|
204
220
|
</>
|
|
205
|
-
)
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
delayedFilterValue,
|
|
214
|
-
]
|
|
215
|
-
);
|
|
221
|
+
);
|
|
222
|
+
}, [
|
|
223
|
+
destinationRootClientId,
|
|
224
|
+
onInsert,
|
|
225
|
+
onHover,
|
|
226
|
+
showMostUsedBlocks,
|
|
227
|
+
showInserterHelpPanel,
|
|
228
|
+
] );
|
|
216
229
|
|
|
217
|
-
const patternsTab = useMemo(
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
{
|
|
221
|
-
{
|
|
222
|
-
|
|
230
|
+
const patternsTab = useMemo( () => {
|
|
231
|
+
return (
|
|
232
|
+
<BlockPatternsTab
|
|
233
|
+
rootClientId={ destinationRootClientId }
|
|
234
|
+
onInsert={ onInsertPattern }
|
|
235
|
+
onSelectCategory={ onClickPatternCategory }
|
|
236
|
+
selectedCategory={ selectedPatternCategory }
|
|
237
|
+
>
|
|
238
|
+
{ showPatternPanel && (
|
|
239
|
+
<PatternCategoryPreviewPanel
|
|
223
240
|
rootClientId={ destinationRootClientId }
|
|
224
241
|
onInsert={ onInsertPattern }
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
rootClientId={ destinationRootClientId }
|
|
231
|
-
onInsert={ onInsertPattern }
|
|
232
|
-
onHover={ onHoverPattern }
|
|
233
|
-
category={ selectedPatternCategory }
|
|
234
|
-
patternFilter={ patternFilter }
|
|
235
|
-
showTitlesAsTooltip
|
|
236
|
-
/>
|
|
237
|
-
) }
|
|
238
|
-
</BlockPatternsTab>
|
|
242
|
+
onHover={ onHoverPattern }
|
|
243
|
+
category={ selectedPatternCategory }
|
|
244
|
+
patternFilter={ patternFilter }
|
|
245
|
+
showTitlesAsTooltip
|
|
246
|
+
/>
|
|
239
247
|
) }
|
|
240
|
-
|
|
241
|
-
)
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
delayedFilterValue,
|
|
252
|
-
]
|
|
253
|
-
);
|
|
248
|
+
</BlockPatternsTab>
|
|
249
|
+
);
|
|
250
|
+
}, [
|
|
251
|
+
destinationRootClientId,
|
|
252
|
+
onHoverPattern,
|
|
253
|
+
onInsertPattern,
|
|
254
|
+
onClickPatternCategory,
|
|
255
|
+
patternFilter,
|
|
256
|
+
selectedPatternCategory,
|
|
257
|
+
showPatternPanel,
|
|
258
|
+
] );
|
|
254
259
|
|
|
255
|
-
const mediaTab = useMemo(
|
|
256
|
-
|
|
260
|
+
const mediaTab = useMemo( () => {
|
|
261
|
+
return (
|
|
257
262
|
<MediaTab
|
|
258
263
|
rootClientId={ destinationRootClientId }
|
|
259
264
|
selectedCategory={ selectedMediaCategory }
|
|
@@ -268,24 +273,14 @@ function InserterMenu(
|
|
|
268
273
|
/>
|
|
269
274
|
) }
|
|
270
275
|
</MediaTab>
|
|
271
|
-
)
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
);
|
|
280
|
-
|
|
281
|
-
const inserterTabsContents = useMemo(
|
|
282
|
-
() => ( {
|
|
283
|
-
blocks: blocksTab,
|
|
284
|
-
patterns: patternsTab,
|
|
285
|
-
media: mediaTab,
|
|
286
|
-
} ),
|
|
287
|
-
[ blocksTab, mediaTab, patternsTab ]
|
|
288
|
-
);
|
|
276
|
+
);
|
|
277
|
+
}, [
|
|
278
|
+
destinationRootClientId,
|
|
279
|
+
onInsert,
|
|
280
|
+
selectedMediaCategory,
|
|
281
|
+
setSelectedMediaCategory,
|
|
282
|
+
showMediaPanel,
|
|
283
|
+
] );
|
|
289
284
|
|
|
290
285
|
// When the pattern panel is showing, we want to use zoom out mode
|
|
291
286
|
useZoomOut( showPatternPanel );
|
|
@@ -312,8 +307,9 @@ function InserterMenu(
|
|
|
312
307
|
|
|
313
308
|
return (
|
|
314
309
|
<div
|
|
315
|
-
className={
|
|
310
|
+
className={ clsx( 'block-editor-inserter__menu', {
|
|
316
311
|
'show-panel': showPatternPanel || showMediaPanel,
|
|
312
|
+
'is-zoom-out': isZoomOutMode,
|
|
317
313
|
} ) }
|
|
318
314
|
ref={ ref }
|
|
319
315
|
>
|
|
@@ -321,8 +317,18 @@ function InserterMenu(
|
|
|
321
317
|
<InserterTabs
|
|
322
318
|
ref={ tabsRef }
|
|
323
319
|
onSelect={ handleSetSelectedTab }
|
|
324
|
-
|
|
325
|
-
|
|
320
|
+
onClose={ onClose }
|
|
321
|
+
selectedTab={ selectedTab }
|
|
322
|
+
>
|
|
323
|
+
{ inserterSearch }
|
|
324
|
+
{ selectedTab === 'blocks' &&
|
|
325
|
+
! delayedFilterValue &&
|
|
326
|
+
blocksTab }
|
|
327
|
+
{ selectedTab === 'patterns' &&
|
|
328
|
+
! delayedFilterValue &&
|
|
329
|
+
patternsTab }
|
|
330
|
+
{ selectedTab === 'media' && mediaTab }
|
|
331
|
+
</InserterTabs>
|
|
326
332
|
</div>
|
|
327
333
|
{ showInserterHelpPanel && hoveredItem && (
|
|
328
334
|
<Popover
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
4
|
+
import clsx from 'clsx';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
@@ -96,7 +96,7 @@ export default function QuickInserter( {
|
|
|
96
96
|
|
|
97
97
|
return (
|
|
98
98
|
<div
|
|
99
|
-
className={
|
|
99
|
+
className={ clsx( 'block-editor-inserter__quick-inserter', {
|
|
100
100
|
'has-search': showSearch,
|
|
101
101
|
'has-expand': setInserterIsOpened,
|
|
102
102
|
} ) }
|
|
@@ -116,7 +116,7 @@ $block-inserter-tabs-height: 44px;
|
|
|
116
116
|
overflow: hidden;
|
|
117
117
|
|
|
118
118
|
.block-editor-inserter__tablist {
|
|
119
|
-
|
|
119
|
+
width: 100%;
|
|
120
120
|
|
|
121
121
|
button[role="tab"] {
|
|
122
122
|
flex-grow: 1;
|
|
@@ -187,7 +187,8 @@ $block-inserter-tabs-height: 44px;
|
|
|
187
187
|
width: 100%;
|
|
188
188
|
}
|
|
189
189
|
|
|
190
|
-
.block-editor-inserter__no-results
|
|
190
|
+
.block-editor-inserter__no-results,
|
|
191
|
+
.block-editor-inserter__patterns-loading {
|
|
191
192
|
padding: $grid-unit-40;
|
|
192
193
|
text-align: center;
|
|
193
194
|
}
|
|
@@ -700,12 +701,9 @@ $block-inserter-tabs-height: 44px;
|
|
|
700
701
|
display: none;
|
|
701
702
|
}
|
|
702
703
|
|
|
703
|
-
.is-zoom-out {
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
}
|
|
707
|
-
|
|
708
|
-
.show-panel::after {
|
|
704
|
+
.block-editor-inserter__menu.is-zoom-out {
|
|
705
|
+
display: flex;
|
|
706
|
+
&.show-panel::after {
|
|
709
707
|
// Makes space for the inserter flyout panel
|
|
710
708
|
@include break-medium {
|
|
711
709
|
content: "";
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import {
|
|
5
|
+
Button,
|
|
6
|
+
privateApis as componentsPrivateApis,
|
|
7
|
+
} from '@wordpress/components';
|
|
5
8
|
import { __ } from '@wordpress/i18n';
|
|
6
9
|
import { forwardRef } from '@wordpress/element';
|
|
10
|
+
import { closeSmall } from '@wordpress/icons';
|
|
7
11
|
|
|
8
12
|
/**
|
|
9
13
|
* Internal dependencies
|
|
@@ -29,23 +33,33 @@ const mediaTab = {
|
|
|
29
33
|
title: __( 'Media' ),
|
|
30
34
|
};
|
|
31
35
|
|
|
32
|
-
function InserterTabs( { onSelect,
|
|
36
|
+
function InserterTabs( { onSelect, children, onClose, selectedTab }, ref ) {
|
|
33
37
|
const tabs = [ blocksTab, patternsTab, mediaTab ];
|
|
34
38
|
|
|
35
39
|
return (
|
|
36
40
|
<div className="block-editor-inserter__tabs" ref={ ref }>
|
|
37
|
-
<Tabs onSelect={ onSelect }>
|
|
38
|
-
<
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
41
|
+
<Tabs onSelect={ onSelect } selectedTabId={ selectedTab }>
|
|
42
|
+
<div className="block-editor-inserter-sidebar__header">
|
|
43
|
+
<Button
|
|
44
|
+
className="block-editor-inserter-sidebar__close-button"
|
|
45
|
+
icon={ closeSmall }
|
|
46
|
+
label={ __( 'Close block inserter' ) }
|
|
47
|
+
onClick={ () => onClose() }
|
|
48
|
+
size="small"
|
|
49
|
+
/>
|
|
50
|
+
|
|
51
|
+
<Tabs.TabList className="block-editor-inserter__tablist">
|
|
52
|
+
{ tabs.map( ( tab ) => (
|
|
53
|
+
<Tabs.Tab
|
|
54
|
+
key={ tab.name }
|
|
55
|
+
tabId={ tab.name }
|
|
56
|
+
className="block-editor-inserter__tab"
|
|
57
|
+
>
|
|
58
|
+
{ tab.title }
|
|
59
|
+
</Tabs.Tab>
|
|
60
|
+
) ) }
|
|
61
|
+
</Tabs.TabList>
|
|
62
|
+
</div>
|
|
49
63
|
{ tabs.map( ( tab ) => (
|
|
50
64
|
<Tabs.TabPanel
|
|
51
65
|
key={ tab.name }
|
|
@@ -53,7 +67,7 @@ function InserterTabs( { onSelect, tabsContents }, ref ) {
|
|
|
53
67
|
focusable={ false }
|
|
54
68
|
className="block-editor-inserter__tabpanel"
|
|
55
69
|
>
|
|
56
|
-
{
|
|
70
|
+
{ children }
|
|
57
71
|
</Tabs.TabPanel>
|
|
58
72
|
) ) }
|
|
59
73
|
</Tabs>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
4
|
+
import clsx from 'clsx';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
@@ -62,7 +62,7 @@ function InserterListItem( {
|
|
|
62
62
|
>
|
|
63
63
|
{ ( { draggable, onDragStart, onDragEnd } ) => (
|
|
64
64
|
<div
|
|
65
|
-
className={
|
|
65
|
+
className={ clsx(
|
|
66
66
|
'block-editor-block-types-list__list-item',
|
|
67
67
|
{
|
|
68
68
|
'is-synced': isSynced,
|
|
@@ -85,7 +85,7 @@ function InserterListItem( {
|
|
|
85
85
|
>
|
|
86
86
|
<InserterListboxItem
|
|
87
87
|
isFirst={ isFirst }
|
|
88
|
-
className={
|
|
88
|
+
className={ clsx(
|
|
89
89
|
'block-editor-block-types-list__item',
|
|
90
90
|
className
|
|
91
91
|
) }
|
|
@@ -143,6 +143,18 @@ function KeyboardShortcutsRegister() {
|
|
|
143
143
|
character: 'l',
|
|
144
144
|
},
|
|
145
145
|
} );
|
|
146
|
+
|
|
147
|
+
registerShortcut( {
|
|
148
|
+
name: 'core/block-editor/group',
|
|
149
|
+
category: 'block',
|
|
150
|
+
description: __(
|
|
151
|
+
'Create a group block from the selected multiple blocks.'
|
|
152
|
+
),
|
|
153
|
+
keyCombination: {
|
|
154
|
+
modifier: 'primary',
|
|
155
|
+
character: 'g',
|
|
156
|
+
},
|
|
157
|
+
} );
|
|
146
158
|
}, [ registerShortcut ] );
|
|
147
159
|
|
|
148
160
|
return null;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { render, screen } from '@testing-library/react';
|
|
5
|
+
import userEvent from '@testing-library/user-event';
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* WordPress dependencies
|
|
8
9
|
*/
|
|
9
10
|
import { useState } from '@wordpress/element';
|
|
10
|
-
import { UP, DOWN } from '@wordpress/keycodes';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Internal dependencies
|
|
@@ -29,35 +29,37 @@ const ControlledLineHeightControl = () => {
|
|
|
29
29
|
};
|
|
30
30
|
|
|
31
31
|
describe( 'LineHeightControl', () => {
|
|
32
|
-
it( 'should immediately step up from the default value if up-arrowed from an unset state', () => {
|
|
32
|
+
it( 'should immediately step up from the default value if up-arrowed from an unset state', async () => {
|
|
33
|
+
const user = userEvent.setup();
|
|
33
34
|
render( <ControlledLineHeightControl /> );
|
|
34
35
|
const input = screen.getByRole( 'spinbutton' );
|
|
35
|
-
|
|
36
|
-
|
|
36
|
+
await user.click( input );
|
|
37
|
+
await user.keyboard( '{ArrowUp}' );
|
|
37
38
|
expect( input ).toHaveValue( BASE_DEFAULT_VALUE + SPIN );
|
|
38
39
|
} );
|
|
39
40
|
|
|
40
|
-
it( 'should immediately step down from the default value if down-arrowed from an unset state', () => {
|
|
41
|
+
it( 'should immediately step down from the default value if down-arrowed from an unset state', async () => {
|
|
42
|
+
const user = userEvent.setup();
|
|
41
43
|
render( <ControlledLineHeightControl /> );
|
|
42
44
|
const input = screen.getByRole( 'spinbutton' );
|
|
43
|
-
|
|
44
|
-
|
|
45
|
+
await user.click( input );
|
|
46
|
+
await user.keyboard( '{ArrowDown}' );
|
|
45
47
|
expect( input ).toHaveValue( BASE_DEFAULT_VALUE - SPIN );
|
|
46
48
|
} );
|
|
47
49
|
|
|
48
|
-
it( 'should immediately step up from the default value if spin button up was clicked from an unset state', () => {
|
|
50
|
+
it( 'should immediately step up from the default value if spin button up was clicked from an unset state', async () => {
|
|
51
|
+
const user = userEvent.setup();
|
|
49
52
|
render( <ControlledLineHeightControl /> );
|
|
50
53
|
const input = screen.getByRole( 'spinbutton' );
|
|
51
|
-
|
|
52
|
-
fireEvent.change( input, { target: { value: 0.1 } } ); // simulates click on spin button up
|
|
54
|
+
await user.click( screen.getByRole( 'button', { name: 'Increment' } ) );
|
|
53
55
|
expect( input ).toHaveValue( BASE_DEFAULT_VALUE + SPIN );
|
|
54
56
|
} );
|
|
55
57
|
|
|
56
|
-
it( 'should immediately step down from the default value if spin button down was clicked from an unset state', () => {
|
|
58
|
+
it( 'should immediately step down from the default value if spin button down was clicked from an unset state', async () => {
|
|
59
|
+
const user = userEvent.setup();
|
|
57
60
|
render( <ControlledLineHeightControl /> );
|
|
58
61
|
const input = screen.getByRole( 'spinbutton' );
|
|
59
|
-
|
|
60
|
-
fireEvent.change( input, { target: { value: 0 } } ); // simulates click on spin button down
|
|
62
|
+
await user.click( screen.getByRole( 'button', { name: 'Decrement' } ) );
|
|
61
63
|
expect( input ).toHaveValue( BASE_DEFAULT_VALUE - SPIN );
|
|
62
64
|
} );
|
|
63
65
|
} );
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
4
|
+
import clsx from 'clsx';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
@@ -359,7 +359,7 @@ function LinkControl( {
|
|
|
359
359
|
{ isEditing && (
|
|
360
360
|
<>
|
|
361
361
|
<div
|
|
362
|
-
className={
|
|
362
|
+
className={ clsx( {
|
|
363
363
|
'block-editor-link-control__search-input-wrapper': true,
|
|
364
364
|
'has-text-control': showTextControl,
|
|
365
365
|
'has-actions': showActions,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
4
|
+
import clsx from 'clsx';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
@@ -80,7 +80,7 @@ export default function LinkPreview( {
|
|
|
80
80
|
return (
|
|
81
81
|
<div
|
|
82
82
|
aria-label={ __( 'Currently selected' ) }
|
|
83
|
-
className={
|
|
83
|
+
className={ clsx( 'block-editor-link-control__search-item', {
|
|
84
84
|
'is-current': true,
|
|
85
85
|
'is-rich': hasRichData,
|
|
86
86
|
'is-fetching': !! isFetching,
|
|
@@ -92,7 +92,7 @@ export default function LinkPreview( {
|
|
|
92
92
|
<div className="block-editor-link-control__search-item-top">
|
|
93
93
|
<span className="block-editor-link-control__search-item-header">
|
|
94
94
|
<span
|
|
95
|
-
className={
|
|
95
|
+
className={ clsx(
|
|
96
96
|
'block-editor-link-control__search-item-icon',
|
|
97
97
|
{
|
|
98
98
|
'is-image': richData?.icon,
|
|
@@ -7,7 +7,7 @@ import { VisuallyHidden, MenuGroup } from '@wordpress/components';
|
|
|
7
7
|
/**
|
|
8
8
|
* External dependencies
|
|
9
9
|
*/
|
|
10
|
-
import
|
|
10
|
+
import clsx from 'clsx';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Internal dependencies
|
|
@@ -30,7 +30,7 @@ export default function LinkControlSearchResults( {
|
|
|
30
30
|
createSuggestionButtonText,
|
|
31
31
|
suggestionsQuery,
|
|
32
32
|
} ) {
|
|
33
|
-
const resultsListClasses =
|
|
33
|
+
const resultsListClasses = clsx(
|
|
34
34
|
'block-editor-link-control__search-results',
|
|
35
35
|
{
|
|
36
36
|
'is-loading': isLoading,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
4
|
+
import clsx from 'clsx';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
@@ -53,7 +53,7 @@ const ListViewBlockContents = forwardRef(
|
|
|
53
53
|
const isBlockMoveTarget =
|
|
54
54
|
blockMovingClientId && selectedBlockInBlockEditor === clientId;
|
|
55
55
|
|
|
56
|
-
const className =
|
|
56
|
+
const className = clsx( 'block-editor-list-view-block-contents', {
|
|
57
57
|
'is-dropping-before': isBlockMoveTarget,
|
|
58
58
|
} );
|
|
59
59
|
|