@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
|
@@ -27,15 +27,20 @@ import { BlockRenameControl, useBlockRename } from '../block-rename';
|
|
|
27
27
|
const { Fill, Slot } = createSlotFill( 'BlockSettingsMenuControls' );
|
|
28
28
|
|
|
29
29
|
const BlockSettingsMenuControlsSlot = ( { fillProps, clientIds = null } ) => {
|
|
30
|
-
const { selectedBlocks, selectedClientIds } = useSelect(
|
|
30
|
+
const { selectedBlocks, selectedClientIds, isContentOnly } = useSelect(
|
|
31
31
|
( select ) => {
|
|
32
|
-
const {
|
|
33
|
-
|
|
32
|
+
const {
|
|
33
|
+
getBlockNamesByClientId,
|
|
34
|
+
getSelectedBlockClientIds,
|
|
35
|
+
getBlockEditingMode,
|
|
36
|
+
} = select( blockEditorStore );
|
|
34
37
|
const ids =
|
|
35
38
|
clientIds !== null ? clientIds : getSelectedBlockClientIds();
|
|
36
39
|
return {
|
|
37
40
|
selectedBlocks: getBlockNamesByClientId( ids ),
|
|
38
41
|
selectedClientIds: ids,
|
|
42
|
+
isContentOnly:
|
|
43
|
+
getBlockEditingMode( ids[ 0 ] ) === 'contentOnly',
|
|
39
44
|
};
|
|
40
45
|
},
|
|
41
46
|
[ clientIds ]
|
|
@@ -43,8 +48,10 @@ const BlockSettingsMenuControlsSlot = ( { fillProps, clientIds = null } ) => {
|
|
|
43
48
|
|
|
44
49
|
const { canLock } = useBlockLock( selectedClientIds[ 0 ] );
|
|
45
50
|
const { canRename } = useBlockRename( selectedBlocks[ 0 ] );
|
|
46
|
-
const showLockButton =
|
|
47
|
-
|
|
51
|
+
const showLockButton =
|
|
52
|
+
selectedClientIds.length === 1 && canLock && ! isContentOnly;
|
|
53
|
+
const showRenameButton =
|
|
54
|
+
selectedClientIds.length === 1 && canRename && ! isContentOnly;
|
|
48
55
|
|
|
49
56
|
// Check if current selection of blocks is Groupable or Ungroupable
|
|
50
57
|
// and pass this props down to ConvertToGroupButton.
|
|
@@ -89,17 +96,19 @@ const BlockSettingsMenuControlsSlot = ( { fillProps, clientIds = null } ) => {
|
|
|
89
96
|
/>
|
|
90
97
|
) }
|
|
91
98
|
{ fills }
|
|
92
|
-
{ fillProps?.canMove &&
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
99
|
+
{ fillProps?.canMove &&
|
|
100
|
+
! fillProps?.onlyBlock &&
|
|
101
|
+
! isContentOnly && (
|
|
102
|
+
<MenuItem
|
|
103
|
+
onClick={ pipe(
|
|
104
|
+
fillProps?.onClose,
|
|
105
|
+
fillProps?.onMoveTo
|
|
106
|
+
) }
|
|
107
|
+
>
|
|
108
|
+
{ __( 'Move to' ) }
|
|
109
|
+
</MenuItem>
|
|
110
|
+
) }
|
|
111
|
+
{ fillProps?.count === 1 && ! isContentOnly && (
|
|
103
112
|
<BlockModeToggle
|
|
104
113
|
clientId={ fillProps?.firstBlockClientId }
|
|
105
114
|
onToggle={ fillProps?.onClose }
|
|
@@ -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
|
|
@@ -68,7 +68,7 @@ function BlockStyles( { clientId, onSwitch = noop, onHoverClassName = noop } ) {
|
|
|
68
68
|
return (
|
|
69
69
|
<Button
|
|
70
70
|
__next40pxDefaultSize
|
|
71
|
-
className={
|
|
71
|
+
className={ clsx(
|
|
72
72
|
'block-editor-block-styles__item',
|
|
73
73
|
{
|
|
74
74
|
'is-active':
|
|
@@ -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
|
|
@@ -140,11 +140,11 @@ export function PrivateBlockToolbar( {
|
|
|
140
140
|
isReusableBlock( blockType ) || isTemplatePart( blockType );
|
|
141
141
|
|
|
142
142
|
// Shifts the toolbar to make room for the parent block selector.
|
|
143
|
-
const classes =
|
|
143
|
+
const classes = clsx( 'block-editor-block-contextual-toolbar', {
|
|
144
144
|
'has-parent': showParentSelector,
|
|
145
145
|
} );
|
|
146
146
|
|
|
147
|
-
const innerClasses =
|
|
147
|
+
const innerClasses = clsx( 'block-editor-block-toolbar', {
|
|
148
148
|
'is-synced': isSynced,
|
|
149
149
|
} );
|
|
150
150
|
|
|
@@ -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
|
|
@@ -273,7 +273,7 @@ function BlockSelectionButton( { clientId, rootClientId } ) {
|
|
|
273
273
|
}
|
|
274
274
|
}
|
|
275
275
|
|
|
276
|
-
const classNames =
|
|
276
|
+
const classNames = clsx(
|
|
277
277
|
'block-editor-block-list__block-selection-button',
|
|
278
278
|
{
|
|
279
279
|
'is-block-moving-mode': !! blockMovingMode,
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
4
|
+
import clsx from 'clsx';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Internal dependencies
|
|
8
8
|
*/
|
|
9
9
|
import BlockSelectionButton from './block-selection-button';
|
|
10
|
-
import
|
|
10
|
+
import { PrivateBlockPopover } from '../block-popover';
|
|
11
11
|
import useBlockToolbarPopoverProps from './use-block-toolbar-popover-props';
|
|
12
12
|
import useSelectedBlockToolProps from './use-selected-block-tool-props';
|
|
13
13
|
|
|
@@ -28,10 +28,10 @@ export default function BlockToolbarBreadcrumb( {
|
|
|
28
28
|
} );
|
|
29
29
|
|
|
30
30
|
return (
|
|
31
|
-
<
|
|
31
|
+
<PrivateBlockPopover
|
|
32
32
|
clientId={ capturingClientId || clientId }
|
|
33
33
|
bottomClientId={ lastClientId }
|
|
34
|
-
className={
|
|
34
|
+
className={ clsx( 'block-editor-block-list__block-popover', {
|
|
35
35
|
'is-insertion-point-visible': isInsertionPointVisible,
|
|
36
36
|
} ) }
|
|
37
37
|
resize={ false }
|
|
@@ -41,6 +41,6 @@ export default function BlockToolbarBreadcrumb( {
|
|
|
41
41
|
clientId={ clientId }
|
|
42
42
|
rootClientId={ rootClientId }
|
|
43
43
|
/>
|
|
44
|
-
</
|
|
44
|
+
</PrivateBlockPopover>
|
|
45
45
|
);
|
|
46
46
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
4
|
+
import clsx from 'clsx';
|
|
5
5
|
/**
|
|
6
6
|
* WordPress dependencies
|
|
7
7
|
*/
|
|
@@ -57,12 +57,9 @@ export default function BlockToolbarPopover( {
|
|
|
57
57
|
<BlockPopover
|
|
58
58
|
clientId={ capturingClientId || clientId }
|
|
59
59
|
bottomClientId={ lastClientId }
|
|
60
|
-
className={
|
|
61
|
-
'
|
|
62
|
-
|
|
63
|
-
'is-insertion-point-visible': isInsertionPointVisible,
|
|
64
|
-
}
|
|
65
|
-
) }
|
|
60
|
+
className={ clsx( 'block-editor-block-list__block-popover', {
|
|
61
|
+
'is-insertion-point-visible': isInsertionPointVisible,
|
|
62
|
+
} ) }
|
|
66
63
|
resize={ false }
|
|
67
64
|
{ ...popoverProps }
|
|
68
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
|
* Internal dependencies
|
|
@@ -31,7 +31,7 @@ export default function EmptyBlockInserter( {
|
|
|
31
31
|
<BlockPopoverCover
|
|
32
32
|
clientId={ capturingClientId || clientId }
|
|
33
33
|
bottomClientId={ lastClientId }
|
|
34
|
-
className={
|
|
34
|
+
className={ clsx(
|
|
35
35
|
'block-editor-block-list__block-side-inserter-popover',
|
|
36
36
|
{
|
|
37
37
|
'is-insertion-point-visible': isInsertionPointVisible,
|
|
@@ -6,6 +6,9 @@ import { isTextField } from '@wordpress/dom';
|
|
|
6
6
|
import { Popover } from '@wordpress/components';
|
|
7
7
|
import { __unstableUseShortcutEventMatch as useShortcutEventMatch } from '@wordpress/keyboard-shortcuts';
|
|
8
8
|
import { useRef } from '@wordpress/element';
|
|
9
|
+
import { switchToBlockType, store as blocksStore } from '@wordpress/blocks';
|
|
10
|
+
import { speak } from '@wordpress/a11y';
|
|
11
|
+
import { __ } from '@wordpress/i18n';
|
|
9
12
|
|
|
10
13
|
/**
|
|
11
14
|
* Internal dependencies
|
|
@@ -64,9 +67,13 @@ export default function BlockTools( {
|
|
|
64
67
|
[]
|
|
65
68
|
);
|
|
66
69
|
const isMatch = useShortcutEventMatch();
|
|
67
|
-
const {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
+
const {
|
|
71
|
+
getBlocksByClientId,
|
|
72
|
+
getSelectedBlockClientIds,
|
|
73
|
+
getBlockRootClientId,
|
|
74
|
+
isGroupable,
|
|
75
|
+
} = useSelect( blockEditorStore );
|
|
76
|
+
const { getGroupingBlockName } = useSelect( blocksStore );
|
|
70
77
|
const {
|
|
71
78
|
showEmptyBlockSideInserter,
|
|
72
79
|
showBreadcrumb,
|
|
@@ -76,6 +83,7 @@ export default function BlockTools( {
|
|
|
76
83
|
const {
|
|
77
84
|
duplicateBlocks,
|
|
78
85
|
removeBlocks,
|
|
86
|
+
replaceBlocks,
|
|
79
87
|
insertAfterBlock,
|
|
80
88
|
insertBeforeBlock,
|
|
81
89
|
selectBlock,
|
|
@@ -159,6 +167,19 @@ export default function BlockTools( {
|
|
|
159
167
|
}
|
|
160
168
|
event.preventDefault();
|
|
161
169
|
expandBlock( clientId );
|
|
170
|
+
} else if ( isMatch( 'core/block-editor/group', event ) ) {
|
|
171
|
+
const clientIds = getSelectedBlockClientIds();
|
|
172
|
+
if ( clientIds.length > 1 && isGroupable( clientIds ) ) {
|
|
173
|
+
event.preventDefault();
|
|
174
|
+
const blocks = getBlocksByClientId( clientIds );
|
|
175
|
+
const groupingBlockName = getGroupingBlockName();
|
|
176
|
+
const newBlocks = switchToBlockType(
|
|
177
|
+
blocks,
|
|
178
|
+
groupingBlockName
|
|
179
|
+
);
|
|
180
|
+
replaceBlocks( clientIds, newBlocks );
|
|
181
|
+
speak( __( 'Selected blocks are grouped.' ) );
|
|
182
|
+
}
|
|
162
183
|
}
|
|
163
184
|
}
|
|
164
185
|
|
|
@@ -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
|
|
@@ -150,7 +150,7 @@ function InbetweenInsertionPointPopover( {
|
|
|
150
150
|
? 'is-horizontal'
|
|
151
151
|
: 'is-vertical';
|
|
152
152
|
|
|
153
|
-
const className =
|
|
153
|
+
const className = clsx(
|
|
154
154
|
'block-editor-block-list__insertion-point',
|
|
155
155
|
orientationClassname
|
|
156
156
|
);
|
|
@@ -175,7 +175,7 @@ function InbetweenInsertionPointPopover( {
|
|
|
175
175
|
tabIndex={ -1 }
|
|
176
176
|
onClick={ onClick }
|
|
177
177
|
onFocus={ onFocus }
|
|
178
|
-
className={
|
|
178
|
+
className={ clsx( className, {
|
|
179
179
|
'is-with-inserter': isInserterShown,
|
|
180
180
|
} ) }
|
|
181
181
|
onHoverEnd={ maybeHideInserterPoint }
|
|
@@ -188,7 +188,7 @@ function InbetweenInsertionPointPopover( {
|
|
|
188
188
|
{ isInserterShown && (
|
|
189
189
|
<motion.div
|
|
190
190
|
variants={ inserterVariants }
|
|
191
|
-
className={
|
|
191
|
+
className={ clsx(
|
|
192
192
|
'block-editor-block-list__insertion-point-inserter'
|
|
193
193
|
) }
|
|
194
194
|
>
|
|
@@ -262,3 +262,11 @@
|
|
|
262
262
|
.is-dragging-components-draggable .components-tooltip {
|
|
263
263
|
display: none;
|
|
264
264
|
}
|
|
265
|
+
|
|
266
|
+
.components-popover.block-editor-block-popover__inbetween .block-editor-button-pattern-inserter__button {
|
|
267
|
+
pointer-events: all;
|
|
268
|
+
position: absolute;
|
|
269
|
+
transform: translateX(-50%) translateY(-50%);
|
|
270
|
+
top: 50%;
|
|
271
|
+
left: 50%;
|
|
272
|
+
}
|
|
@@ -2,25 +2,56 @@
|
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
4
|
import { useSelect } from '@wordpress/data';
|
|
5
|
-
import { useEffect, useState } from '@wordpress/element';
|
|
5
|
+
import { useEffect, useRef, useState } from '@wordpress/element';
|
|
6
|
+
import { Button } from '@wordpress/components';
|
|
7
|
+
import { plus } from '@wordpress/icons';
|
|
8
|
+
import { _x } from '@wordpress/i18n';
|
|
6
9
|
|
|
7
10
|
/**
|
|
8
11
|
* Internal dependencies
|
|
9
12
|
*/
|
|
10
13
|
import BlockPopoverInbetween from '../block-popover/inbetween';
|
|
11
14
|
import { store as blockEditorStore } from '../../store';
|
|
12
|
-
import Inserter from '../inserter';
|
|
13
15
|
import { unlock } from '../../lock-unlock';
|
|
14
16
|
|
|
15
|
-
function ZoomOutModeInserters(
|
|
17
|
+
function ZoomOutModeInserters() {
|
|
16
18
|
const [ isReady, setIsReady ] = useState( false );
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
const {
|
|
20
|
+
blockOrder,
|
|
21
|
+
sectionRootClientId,
|
|
22
|
+
insertionPoint,
|
|
23
|
+
setInserterIsOpened,
|
|
24
|
+
} = useSelect( ( select ) => {
|
|
25
|
+
const { getSettings, getBlockOrder } = select( blockEditorStore );
|
|
26
|
+
const { sectionRootClientId: root } = unlock( getSettings() );
|
|
27
|
+
// To do: move ZoomOutModeInserters to core/editor.
|
|
28
|
+
// Or we perhaps we should move the insertion point state to the
|
|
29
|
+
// block-editor store. I'm not sure what it was ever moved to the editor
|
|
30
|
+
// store, because all the inserter components all live in the
|
|
31
|
+
// block-editor package.
|
|
32
|
+
// eslint-disable-next-line @wordpress/data-no-store-string-literals
|
|
33
|
+
const editor = select( 'core/editor' );
|
|
34
|
+
return {
|
|
35
|
+
blockOrder: getBlockOrder( root ),
|
|
36
|
+
insertionPoint: unlock( editor ).getInsertionPoint(),
|
|
37
|
+
sectionRootClientId: root,
|
|
38
|
+
setInserterIsOpened:
|
|
39
|
+
getSettings().__experimentalSetIsInserterOpened,
|
|
40
|
+
};
|
|
22
41
|
}, [] );
|
|
23
42
|
|
|
43
|
+
const isMounted = useRef( false );
|
|
44
|
+
|
|
45
|
+
useEffect( () => {
|
|
46
|
+
if ( ! isMounted.current ) {
|
|
47
|
+
isMounted.current = true;
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
// reset insertion point when the block order changes
|
|
51
|
+
setInserterIsOpened( true );
|
|
52
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
53
|
+
}, [ blockOrder ] );
|
|
54
|
+
|
|
24
55
|
// Defer the initial rendering to avoid the jumps due to the animation.
|
|
25
56
|
useEffect( () => {
|
|
26
57
|
const timeout = setTimeout( () => {
|
|
@@ -35,24 +66,45 @@ function ZoomOutModeInserters( { __unstableContentRef } ) {
|
|
|
35
66
|
return null;
|
|
36
67
|
}
|
|
37
68
|
|
|
38
|
-
return blockOrder.map( ( clientId, index ) => {
|
|
39
|
-
if ( index === blockOrder.length - 1 ) {
|
|
40
|
-
return null;
|
|
41
|
-
}
|
|
69
|
+
return [ undefined, ...blockOrder ].map( ( clientId, index ) => {
|
|
42
70
|
return (
|
|
43
71
|
<BlockPopoverInbetween
|
|
44
|
-
key={
|
|
72
|
+
key={ index }
|
|
45
73
|
previousClientId={ clientId }
|
|
46
|
-
nextClientId={ blockOrder[ index
|
|
47
|
-
__unstableContentRef={ __unstableContentRef }
|
|
74
|
+
nextClientId={ blockOrder[ index ] }
|
|
48
75
|
>
|
|
49
|
-
|
|
50
|
-
<
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
76
|
+
{ insertionPoint.insertionIndex === index && (
|
|
77
|
+
<div
|
|
78
|
+
style={ {
|
|
79
|
+
borderRadius: '0',
|
|
80
|
+
height: '12px',
|
|
81
|
+
opacity: 1,
|
|
82
|
+
transform: 'translateY(-50%)',
|
|
83
|
+
width: '100%',
|
|
84
|
+
} }
|
|
85
|
+
className="block-editor-block-list__insertion-point-indicator"
|
|
86
|
+
/>
|
|
87
|
+
) }
|
|
88
|
+
{ insertionPoint.insertionIndex !== index && (
|
|
89
|
+
<Button
|
|
90
|
+
variant="primary"
|
|
91
|
+
icon={ plus }
|
|
92
|
+
size="compact"
|
|
93
|
+
className="block-editor-button-pattern-inserter__button"
|
|
94
|
+
onClick={ () => {
|
|
95
|
+
setInserterIsOpened( {
|
|
96
|
+
rootClientId: sectionRootClientId,
|
|
97
|
+
insertionIndex: index,
|
|
98
|
+
tab: 'patterns',
|
|
99
|
+
category: 'all',
|
|
100
|
+
} );
|
|
101
|
+
} }
|
|
102
|
+
label={ _x(
|
|
103
|
+
'Add pattern',
|
|
104
|
+
'Generic label for pattern inserter button'
|
|
105
|
+
) }
|
|
54
106
|
/>
|
|
55
|
-
|
|
107
|
+
) }
|
|
56
108
|
</BlockPopoverInbetween>
|
|
57
109
|
);
|
|
58
110
|
} );
|
|
@@ -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
|
|
@@ -18,7 +18,7 @@ function BlockVariationPicker( {
|
|
|
18
18
|
onSelect,
|
|
19
19
|
allowSkip,
|
|
20
20
|
} ) {
|
|
21
|
-
const classes =
|
|
21
|
+
const classes = clsx( 'block-editor-block-variation-picker', {
|
|
22
22
|
'has-many-variations': variations.length > 4,
|
|
23
23
|
} );
|
|
24
24
|
|
|
@@ -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 @@ function ButtonBlockAppender(
|
|
|
53
53
|
ref={ ref }
|
|
54
54
|
onFocus={ onFocus }
|
|
55
55
|
tabIndex={ tabIndex }
|
|
56
|
-
className={
|
|
56
|
+
className={ clsx(
|
|
57
57
|
className,
|
|
58
58
|
'block-editor-button-block-appender'
|
|
59
59
|
) }
|
|
@@ -223,7 +223,13 @@ export default function ChildLayoutControl( {
|
|
|
223
223
|
} }
|
|
224
224
|
value={ columnStart }
|
|
225
225
|
min={ 1 }
|
|
226
|
-
max={
|
|
226
|
+
max={
|
|
227
|
+
parentLayout?.columnCount
|
|
228
|
+
? parentLayout.columnCount -
|
|
229
|
+
( columnSpan ?? 1 ) +
|
|
230
|
+
1
|
|
231
|
+
: undefined
|
|
232
|
+
}
|
|
227
233
|
/>
|
|
228
234
|
</FlexItem>
|
|
229
235
|
<FlexItem style={ { width: '50%' } }>
|
|
@@ -241,7 +247,13 @@ export default function ChildLayoutControl( {
|
|
|
241
247
|
} }
|
|
242
248
|
value={ rowStart }
|
|
243
249
|
min={ 1 }
|
|
244
|
-
max={
|
|
250
|
+
max={
|
|
251
|
+
parentLayout?.rowCount
|
|
252
|
+
? parentLayout.rowCount -
|
|
253
|
+
( rowSpan ?? 1 ) +
|
|
254
|
+
1
|
|
255
|
+
: undefined
|
|
256
|
+
}
|
|
245
257
|
/>
|
|
246
258
|
</FlexItem>
|
|
247
259
|
</Flex>
|
|
@@ -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
|
|
@@ -114,7 +114,7 @@ function ColorGradientControlInner( {
|
|
|
114
114
|
return (
|
|
115
115
|
<BaseControl
|
|
116
116
|
__nextHasNoMarginBottom
|
|
117
|
-
className={
|
|
117
|
+
className={ clsx(
|
|
118
118
|
'block-editor-color-gradient-control',
|
|
119
119
|
className
|
|
120
120
|
) }
|
|
@@ -141,7 +141,7 @@ function ColorGradientControlInner( {
|
|
|
141
141
|
>
|
|
142
142
|
<Tabs.TabList>
|
|
143
143
|
<Tabs.Tab tabId={ TAB_IDS.color }>
|
|
144
|
-
{ __( '
|
|
144
|
+
{ __( 'Color' ) }
|
|
145
145
|
</Tabs.Tab>
|
|
146
146
|
<Tabs.Tab tabId={ TAB_IDS.gradient }>
|
|
147
147
|
{ __( 'Gradient' ) }
|
|
@@ -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 @@ const renderToggle =
|
|
|
80
80
|
|
|
81
81
|
const toggleProps = {
|
|
82
82
|
onClick: onToggle,
|
|
83
|
-
className:
|
|
83
|
+
className: clsx(
|
|
84
84
|
'block-editor-panel-color-gradient-settings__dropdown',
|
|
85
85
|
{ 'is-open': isOpen }
|
|
86
86
|
),
|
|
@@ -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
|
|
@@ -61,7 +61,7 @@ export const PanelColorGradientSettingsInner = ( {
|
|
|
61
61
|
|
|
62
62
|
return (
|
|
63
63
|
<ToolsPanel
|
|
64
|
-
className={
|
|
64
|
+
className={ clsx(
|
|
65
65
|
'block-editor-panel-color-gradient-settings',
|
|
66
66
|
className
|
|
67
67
|
) }
|
|
@@ -43,7 +43,7 @@ describe( 'ColorPaletteControl', () => {
|
|
|
43
43
|
|
|
44
44
|
// Is showing the two tab buttons.
|
|
45
45
|
expect(
|
|
46
|
-
screen.getByRole( 'tab', { name: '
|
|
46
|
+
screen.getByRole( 'tab', { name: 'Color' } )
|
|
47
47
|
).toBeInTheDocument();
|
|
48
48
|
expect(
|
|
49
49
|
screen.getByRole( 'tab', { name: 'Gradient' } )
|
|
@@ -72,7 +72,7 @@ describe( 'ColorPaletteControl', () => {
|
|
|
72
72
|
|
|
73
73
|
// Is not showing the two tab buttons.
|
|
74
74
|
expect(
|
|
75
|
-
screen.queryByRole( 'tab', { name: '
|
|
75
|
+
screen.queryByRole( 'tab', { name: 'Color' } )
|
|
76
76
|
).not.toBeInTheDocument();
|
|
77
77
|
expect(
|
|
78
78
|
screen.queryByRole( 'tab', { name: 'Gradient' } )
|
|
@@ -111,7 +111,7 @@ describe( 'ColorPaletteControl', () => {
|
|
|
111
111
|
|
|
112
112
|
// Is not showing the two tab buttons.
|
|
113
113
|
expect(
|
|
114
|
-
screen.queryByRole( 'tab', { name: '
|
|
114
|
+
screen.queryByRole( 'tab', { name: 'Color' } )
|
|
115
115
|
).not.toBeInTheDocument();
|
|
116
116
|
expect(
|
|
117
117
|
screen.queryByRole( 'tab', { name: 'Gradient' } )
|
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
import { MenuItem } from '@wordpress/components';
|
|
5
5
|
import { _x } from '@wordpress/i18n';
|
|
6
6
|
import { switchToBlockType } from '@wordpress/blocks';
|
|
7
|
-
import { useDispatch } from '@wordpress/data';
|
|
7
|
+
import { useSelect, useDispatch } from '@wordpress/data';
|
|
8
|
+
import { displayShortcut } from '@wordpress/keycodes';
|
|
8
9
|
|
|
9
10
|
/**
|
|
10
11
|
* Internal dependencies
|
|
@@ -22,6 +23,7 @@ function ConvertToGroupButton( {
|
|
|
22
23
|
groupingBlockName,
|
|
23
24
|
onClose = () => {},
|
|
24
25
|
} ) {
|
|
26
|
+
const { getSelectedBlockClientIds } = useSelect( blockEditorStore );
|
|
25
27
|
const { replaceBlocks } = useDispatch( blockEditorStore );
|
|
26
28
|
const onConvertToGroup = () => {
|
|
27
29
|
// Activate the `transform` on the Grouping Block which does the conversion.
|
|
@@ -52,10 +54,17 @@ function ConvertToGroupButton( {
|
|
|
52
54
|
return null;
|
|
53
55
|
}
|
|
54
56
|
|
|
57
|
+
const selectedBlockClientIds = getSelectedBlockClientIds();
|
|
58
|
+
|
|
55
59
|
return (
|
|
56
60
|
<>
|
|
57
61
|
{ isGroupable && (
|
|
58
62
|
<MenuItem
|
|
63
|
+
shortcut={
|
|
64
|
+
selectedBlockClientIds.length > 1
|
|
65
|
+
? displayShortcut.primary( 'g' )
|
|
66
|
+
: undefined
|
|
67
|
+
}
|
|
59
68
|
onClick={ () => {
|
|
60
69
|
onConvertToGroup();
|
|
61
70
|
onClose();
|
|
@@ -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
|
|
@@ -58,7 +58,7 @@ export default function DefaultBlockAppender( { rootClientId } ) {
|
|
|
58
58
|
return (
|
|
59
59
|
<div
|
|
60
60
|
data-root-client-id={ rootClientId || '' }
|
|
61
|
-
className={
|
|
61
|
+
className={ clsx( 'block-editor-default-block-appender', {
|
|
62
62
|
'has-visible-prompt': showPrompt,
|
|
63
63
|
} ) }
|
|
64
64
|
>
|