@wordpress/block-editor 9.1.0 → 9.4.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 +10 -0
- package/build/autocompleters/block.js +3 -1
- package/build/autocompleters/block.js.map +1 -1
- package/build/components/block-actions/index.js.map +1 -1
- package/build/components/block-alignment-control/ui.js.map +1 -1
- package/build/components/block-alignment-matrix-control/index.js +3 -7
- package/build/components/block-alignment-matrix-control/index.js.map +1 -1
- package/build/components/block-breadcrumb/index.js.map +1 -1
- package/build/components/block-content-overlay/index.js.map +1 -1
- package/build/components/block-context/index.js.map +1 -1
- package/build/components/block-controls/hook.js.map +1 -1
- package/build/components/block-draggable/draggable-chip.native.js +2 -1
- package/build/components/block-draggable/draggable-chip.native.js.map +1 -1
- package/build/components/block-draggable/index.js.map +1 -1
- package/build/components/block-draggable/index.native.js +7 -3
- package/build/components/block-draggable/index.native.js.map +1 -1
- package/build/components/block-list/block-list-item.native.js.map +1 -1
- package/build/components/block-list/block-selection-button.native.js.map +1 -1
- package/build/components/block-list/block.js.map +1 -1
- package/build/components/block-list/block.native.js +2 -1
- package/build/components/block-list/block.native.js.map +1 -1
- package/build/components/block-list/index.js +34 -32
- package/build/components/block-list/index.js.map +1 -1
- package/build/components/block-list/index.native.js.map +1 -1
- package/build/components/block-list/use-block-props/index.js.map +1 -1
- package/build/components/block-list/use-block-props/use-block-custom-class-name.js.map +1 -1
- package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
- package/build/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build/components/block-list-appender/index.js.map +1 -1
- package/build/components/block-list-appender/index.native.js.map +1 -1
- package/build/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
- package/build/components/block-mobile-toolbar/index.native.js +2 -1
- package/build/components/block-mobile-toolbar/index.native.js.map +1 -1
- package/build/components/block-mover/button.js.map +1 -1
- package/build/components/block-mover/index.native.js.map +1 -1
- package/build/components/block-parent-selector/index.js.map +1 -1
- package/build/components/block-pattern-setup/index.js +3 -9
- package/build/components/block-pattern-setup/index.js.map +1 -1
- package/build/components/block-pattern-setup/setup-toolbar.js +3 -8
- package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
- package/build/components/block-popover/inbetween.js +9 -6
- package/build/components/block-popover/inbetween.js.map +1 -1
- package/build/components/block-popover/index.js +2 -1
- package/build/components/block-popover/index.js.map +1 -1
- package/build/components/block-preview/auto.js +21 -5
- package/build/components/block-preview/auto.js.map +1 -1
- package/build/components/block-selection-clearer/index.js.map +1 -1
- package/build/components/block-settings-menu/block-edit-visually-button.js +70 -0
- package/build/components/block-settings-menu/block-edit-visually-button.js.map +1 -0
- package/build/components/block-settings-menu/block-mode-toggle.js +3 -7
- package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
- package/build/components/block-settings-menu/block-settings-dropdown.js +6 -3
- package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build/components/block-settings-menu/index.js +6 -2
- package/build/components/block-settings-menu/index.js.map +1 -1
- package/build/components/block-settings-menu-controls/index.js +4 -1
- package/build/components/block-settings-menu-controls/index.js.map +1 -1
- package/build/components/block-styles/index.js +6 -3
- package/build/components/block-styles/index.js.map +1 -1
- package/build/components/block-styles/menu-items.js +3 -7
- package/build/components/block-styles/menu-items.js.map +1 -1
- package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
- package/build/components/block-title/use-block-display-title.js +3 -10
- package/build/components/block-title/use-block-display-title.js.map +1 -1
- package/build/components/block-toolbar/index.native.js.map +1 -1
- package/build/components/block-toolbar/utils.js +5 -8
- package/build/components/block-toolbar/utils.js.map +1 -1
- package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
- package/build/components/block-tools/block-selection-button.js +1 -0
- package/build/components/block-tools/block-selection-button.js.map +1 -1
- package/build/components/block-tools/index.js.map +1 -1
- package/build/components/block-types-list/index.native.js.map +1 -1
- package/build/components/block-variation-transforms/index.js +16 -2
- package/build/components/block-variation-transforms/index.js.map +1 -1
- package/build/components/color-style-selector/index.js.map +1 -1
- package/build/components/colors/with-colors.js.map +1 -1
- package/build/components/colors-gradients/dropdown.js +72 -95
- package/build/components/colors-gradients/dropdown.js.map +1 -1
- package/build/components/colors-gradients/panel-color-gradient-settings.js +35 -60
- package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
- package/build/components/convert-to-group-buttons/toolbar.js +22 -5
- package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
- package/build/components/copy-handler/index.js +17 -1
- package/build/components/copy-handler/index.js.map +1 -1
- package/build/components/default-block-appender/index.js.map +1 -1
- package/build/components/default-block-appender/index.native.js.map +1 -1
- package/build/components/default-style-picker/index.js.map +1 -1
- package/build/components/duotone/components.js +145 -0
- package/build/components/duotone/components.js.map +1 -0
- package/build/components/duotone/index.js +40 -0
- package/build/components/duotone/index.js.map +1 -0
- package/build/components/duotone/utils.js +38 -0
- package/build/components/duotone/utils.js.map +1 -0
- package/build/components/duotone-control/index.js +17 -5
- package/build/components/duotone-control/index.js.map +1 -1
- package/build/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
- package/build/components/image-size-control/index.js +3 -1
- package/build/components/image-size-control/index.js.map +1 -1
- package/build/components/index.js +41 -0
- package/build/components/index.js.map +1 -1
- package/build/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
- package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
- package/build/components/inserter/block-types-tab.native.js.map +1 -1
- package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
- package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
- package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
- package/build/components/inserter/index.js +3 -3
- package/build/components/inserter/index.js.map +1 -1
- package/build/components/inserter/index.native.js.map +1 -1
- package/build/components/inserter/library.js +3 -7
- package/build/components/inserter/library.js.map +1 -1
- package/build/components/inserter/menu.js.map +1 -1
- package/build/components/inserter/menu.native.js.map +1 -1
- package/build/components/inserter/no-results.native.js.map +1 -1
- package/build/components/inserter/quick-inserter.js.map +1 -1
- package/build/components/inserter/search-items.js +1 -1
- package/build/components/inserter/search-items.js.map +1 -1
- package/build/components/inserter/search-results.native.js.map +1 -1
- package/build/components/inspector-popover-header/index.js +56 -0
- package/build/components/inspector-popover-header/index.js.map +1 -0
- package/build/components/line-height-control/index.js.map +1 -1
- package/build/components/link-control/index.js +4 -4
- package/build/components/link-control/index.js.map +1 -1
- package/build/components/link-control/search-create-button.js +1 -3
- package/build/components/link-control/search-create-button.js.map +1 -1
- package/build/components/link-control/search-input.js +5 -3
- package/build/components/link-control/search-input.js.map +1 -1
- package/build/components/link-control/settings-drawer.js +3 -7
- package/build/components/link-control/settings-drawer.js.map +1 -1
- package/build/components/link-control/use-search-handler.js.map +1 -1
- package/build/components/list-view/block-contents.js.map +1 -1
- package/build/components/list-view/branch.js.map +1 -1
- package/build/components/list-view/index.js.map +1 -1
- package/build/components/list-view/use-block-selection.js.map +1 -1
- package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
- package/build/components/list-view/utils.js +1 -7
- package/build/components/list-view/utils.js.map +1 -1
- package/build/components/media-placeholder/index.js +5 -6
- package/build/components/media-placeholder/index.js.map +1 -1
- package/build/components/media-placeholder/index.native.js +4 -4
- package/build/components/media-placeholder/index.native.js.map +1 -1
- package/build/components/media-replace-flow/index.js +23 -14
- package/build/components/media-replace-flow/index.js.map +1 -1
- package/build/components/media-upload/index.native.js +10 -4
- package/build/components/media-upload/index.native.js.map +1 -1
- package/build/components/navigable-toolbar/index.js.map +1 -1
- package/build/components/plain-text/index.native.js +62 -7
- package/build/components/plain-text/index.native.js.map +1 -1
- package/build/components/preview-options/index.js +4 -0
- package/build/components/preview-options/index.js.map +1 -1
- package/build/components/provider/use-block-sync.js +5 -3
- package/build/components/provider/use-block-sync.js.map +1 -1
- package/build/components/publish-date-time-picker/index.js +56 -0
- package/build/components/publish-date-time-picker/index.js.map +1 -0
- package/build/components/rich-text/embed-handler-picker.native.js +4 -8
- package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
- package/build/components/rich-text/index.js +1 -1
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/rich-text/index.native.js +5 -1
- package/build/components/rich-text/index.native.js.map +1 -1
- package/build/components/rich-text/use-format-types.js.map +1 -1
- package/build/components/rich-text/use-input-rules.js +4 -13
- package/build/components/rich-text/use-input-rules.js.map +1 -1
- package/build/components/rich-text/use-mark-persistent.js.map +1 -1
- package/build/components/rich-text/use-paste-handler.js +20 -5
- package/build/components/rich-text/use-paste-handler.js.map +1 -1
- package/build/components/skip-to-selected-block/index.js.map +1 -1
- package/build/components/ungroup-button/index.native.js +3 -7
- package/build/components/ungroup-button/index.native.js.map +1 -1
- package/build/components/url-input/index.js +14 -3
- package/build/components/url-input/index.js.map +1 -1
- package/build/components/use-block-display-information/index.js.map +1 -1
- package/build/components/use-block-drop-zone/index.js.map +1 -1
- package/build/components/use-block-drop-zone/index.native.js.map +1 -1
- package/build/components/use-display-block-controls/index.native.js.map +1 -1
- package/build/components/use-on-block-drop/index.js.map +1 -1
- package/build/components/use-on-block-drop/index.native.js.map +1 -1
- package/build/components/use-setting/index.js.map +1 -1
- package/build/components/writing-flow/use-arrow-nav.js +12 -12
- package/build/components/writing-flow/use-arrow-nav.js.map +1 -1
- package/build/components/writing-flow/use-click-selection.js.map +1 -1
- package/build/components/writing-flow/use-drag-selection.js.map +1 -1
- package/build/components/writing-flow/use-input.js +15 -0
- package/build/components/writing-flow/use-input.js.map +1 -1
- package/build/components/writing-flow/use-multi-selection.js.map +1 -1
- package/build/components/writing-flow/use-select-all.js.map +1 -1
- package/build/components/writing-flow/use-selection-observer.js.map +1 -1
- package/build/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build/elements/index.js +17 -0
- package/build/elements/index.js.map +1 -0
- package/build/hooks/aria-label.js +71 -0
- package/build/hooks/aria-label.js.map +1 -0
- package/build/hooks/color-panel.js.map +1 -1
- package/build/hooks/color-panel.native.js.map +1 -1
- package/build/hooks/color.js +8 -88
- package/build/hooks/color.js.map +1 -1
- package/build/hooks/dimensions.js +14 -4
- package/build/hooks/dimensions.js.map +1 -1
- package/build/hooks/duotone.js +33 -160
- package/build/hooks/duotone.js.map +1 -1
- package/build/hooks/font-family.js.map +1 -1
- package/build/hooks/gap.js.map +1 -1
- package/build/hooks/index.js +3 -7
- package/build/hooks/index.js.map +1 -1
- package/build/hooks/layout.js +44 -5
- package/build/hooks/layout.js.map +1 -1
- package/build/index.js +14 -7
- package/build/index.js.map +1 -1
- package/build/layouts/flex.js +7 -4
- package/build/layouts/flex.js.map +1 -1
- package/build/store/actions.js +24 -14
- package/build/store/actions.js.map +1 -1
- package/build/store/reducer.js +35 -11
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +30 -2
- package/build/store/selectors.js.map +1 -1
- package/build/utils/pasting.js.map +1 -1
- package/build/utils/selection.js +34 -0
- package/build/utils/selection.js.map +1 -0
- package/build/utils/transform-styles/transforms/wrap.js.map +1 -1
- package/build-module/autocompleters/block.js +4 -1
- package/build-module/autocompleters/block.js.map +1 -1
- package/build-module/components/block-actions/index.js.map +1 -1
- package/build-module/components/block-alignment-control/ui.js.map +1 -1
- package/build-module/components/block-alignment-matrix-control/index.js +2 -5
- package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
- package/build-module/components/block-breadcrumb/index.js.map +1 -1
- package/build-module/components/block-content-overlay/index.js.map +1 -1
- package/build-module/components/block-context/index.js.map +1 -1
- package/build-module/components/block-controls/hook.js.map +1 -1
- package/build-module/components/block-draggable/draggable-chip.native.js +2 -1
- package/build-module/components/block-draggable/draggable-chip.native.js.map +1 -1
- package/build-module/components/block-draggable/index.js.map +1 -1
- package/build-module/components/block-draggable/index.native.js +7 -3
- package/build-module/components/block-draggable/index.native.js.map +1 -1
- package/build-module/components/block-list/block-list-item.native.js.map +1 -1
- package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
- package/build-module/components/block-list/block.js.map +1 -1
- package/build-module/components/block-list/block.native.js +2 -1
- package/build-module/components/block-list/block.native.js.map +1 -1
- package/build-module/components/block-list/index.js +35 -33
- package/build-module/components/block-list/index.js.map +1 -1
- package/build-module/components/block-list/index.native.js.map +1 -1
- package/build-module/components/block-list/use-block-props/index.js.map +1 -1
- package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js.map +1 -1
- package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
- package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build-module/components/block-list-appender/index.js.map +1 -1
- package/build-module/components/block-list-appender/index.native.js.map +1 -1
- package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
- package/build-module/components/block-mobile-toolbar/index.native.js +2 -1
- package/build-module/components/block-mobile-toolbar/index.native.js.map +1 -1
- package/build-module/components/block-mover/button.js.map +1 -1
- package/build-module/components/block-mover/index.native.js.map +1 -1
- package/build-module/components/block-parent-selector/index.js.map +1 -1
- package/build-module/components/block-pattern-setup/index.js +3 -9
- package/build-module/components/block-pattern-setup/index.js.map +1 -1
- package/build-module/components/block-pattern-setup/setup-toolbar.js +3 -8
- package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
- package/build-module/components/block-popover/inbetween.js +9 -6
- package/build-module/components/block-popover/inbetween.js.map +1 -1
- package/build-module/components/block-popover/index.js +2 -1
- package/build-module/components/block-popover/index.js.map +1 -1
- package/build-module/components/block-preview/auto.js +20 -5
- package/build-module/components/block-preview/auto.js.map +1 -1
- package/build-module/components/block-selection-clearer/index.js.map +1 -1
- package/build-module/components/block-settings-menu/block-edit-visually-button.js +56 -0
- package/build-module/components/block-settings-menu/block-edit-visually-button.js.map +1 -0
- package/build-module/components/block-settings-menu/block-mode-toggle.js +3 -5
- package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
- package/build-module/components/block-settings-menu/block-settings-dropdown.js +6 -2
- package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build-module/components/block-settings-menu/index.js +6 -3
- package/build-module/components/block-settings-menu/index.js.map +1 -1
- package/build-module/components/block-settings-menu-controls/index.js +5 -2
- package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
- package/build-module/components/block-styles/index.js +5 -2
- package/build-module/components/block-styles/index.js.map +1 -1
- package/build-module/components/block-styles/menu-items.js +3 -5
- package/build-module/components/block-styles/menu-items.js.map +1 -1
- package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
- package/build-module/components/block-title/use-block-display-title.js +3 -9
- package/build-module/components/block-title/use-block-display-title.js.map +1 -1
- package/build-module/components/block-toolbar/index.native.js.map +1 -1
- package/build-module/components/block-toolbar/utils.js +3 -5
- package/build-module/components/block-toolbar/utils.js.map +1 -1
- package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
- package/build-module/components/block-tools/block-selection-button.js +1 -0
- package/build-module/components/block-tools/block-selection-button.js.map +1 -1
- package/build-module/components/block-tools/index.js.map +1 -1
- package/build-module/components/block-types-list/index.native.js.map +1 -1
- package/build-module/components/block-variation-transforms/index.js +13 -2
- package/build-module/components/block-variation-transforms/index.js.map +1 -1
- package/build-module/components/color-style-selector/index.js.map +1 -1
- package/build-module/components/colors/with-colors.js.map +1 -1
- package/build-module/components/colors-gradients/dropdown.js +74 -97
- package/build-module/components/colors-gradients/dropdown.js.map +1 -1
- package/build-module/components/colors-gradients/panel-color-gradient-settings.js +36 -64
- package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
- package/build-module/components/convert-to-group-buttons/toolbar.js +23 -6
- package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
- package/build-module/components/copy-handler/index.js +18 -2
- package/build-module/components/copy-handler/index.js.map +1 -1
- package/build-module/components/default-block-appender/index.js.map +1 -1
- package/build-module/components/default-block-appender/index.native.js.map +1 -1
- package/build-module/components/default-style-picker/index.js.map +1 -1
- package/build-module/components/duotone/components.js +130 -0
- package/build-module/components/duotone/components.js.map +1 -0
- package/build-module/components/duotone/index.js +3 -0
- package/build-module/components/duotone/index.js.map +1 -0
- package/build-module/components/duotone/utils.js +30 -0
- package/build-module/components/duotone/utils.js.map +1 -0
- package/build-module/components/duotone-control/index.js +18 -6
- package/build-module/components/duotone-control/index.js.map +1 -1
- package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
- package/build-module/components/image-size-control/index.js +4 -1
- package/build-module/components/image-size-control/index.js.map +1 -1
- package/build-module/components/index.js +4 -0
- package/build-module/components/index.js.map +1 -1
- package/build-module/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
- package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
- package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
- package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
- package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
- package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
- package/build-module/components/inserter/index.js +3 -2
- package/build-module/components/inserter/index.js.map +1 -1
- package/build-module/components/inserter/index.native.js.map +1 -1
- package/build-module/components/inserter/library.js +2 -5
- package/build-module/components/inserter/library.js.map +1 -1
- package/build-module/components/inserter/menu.js.map +1 -1
- package/build-module/components/inserter/menu.native.js.map +1 -1
- package/build-module/components/inserter/no-results.native.js.map +1 -1
- package/build-module/components/inserter/quick-inserter.js.map +1 -1
- package/build-module/components/inserter/search-items.js +2 -2
- package/build-module/components/inserter/search-items.js.map +1 -1
- package/build-module/components/inserter/search-results.native.js.map +1 -1
- package/build-module/components/inspector-popover-header/index.js +46 -0
- package/build-module/components/inspector-popover-header/index.js.map +1 -0
- package/build-module/components/line-height-control/index.js.map +1 -1
- package/build-module/components/link-control/index.js +2 -1
- package/build-module/components/link-control/index.js.map +1 -1
- package/build-module/components/link-control/search-create-button.js +1 -2
- package/build-module/components/link-control/search-create-button.js.map +1 -1
- package/build-module/components/link-control/search-input.js +3 -1
- package/build-module/components/link-control/search-input.js.map +1 -1
- package/build-module/components/link-control/settings-drawer.js +2 -5
- package/build-module/components/link-control/settings-drawer.js.map +1 -1
- package/build-module/components/link-control/use-search-handler.js.map +1 -1
- package/build-module/components/list-view/block-contents.js.map +1 -1
- package/build-module/components/list-view/branch.js.map +1 -1
- package/build-module/components/list-view/index.js.map +1 -1
- package/build-module/components/list-view/use-block-selection.js.map +1 -1
- package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
- package/build-module/components/list-view/utils.js +1 -6
- package/build-module/components/list-view/utils.js.map +1 -1
- package/build-module/components/media-placeholder/index.js +3 -3
- package/build-module/components/media-placeholder/index.js.map +1 -1
- package/build-module/components/media-placeholder/index.native.js +5 -3
- package/build-module/components/media-placeholder/index.native.js.map +1 -1
- package/build-module/components/media-replace-flow/index.js +24 -14
- package/build-module/components/media-replace-flow/index.js.map +1 -1
- package/build-module/components/media-upload/index.native.js +8 -3
- package/build-module/components/media-upload/index.native.js.map +1 -1
- package/build-module/components/navigable-toolbar/index.js.map +1 -1
- package/build-module/components/plain-text/index.native.js +63 -8
- package/build-module/components/plain-text/index.native.js.map +1 -1
- package/build-module/components/preview-options/index.js +4 -0
- package/build-module/components/preview-options/index.js.map +1 -1
- package/build-module/components/provider/use-block-sync.js +4 -1
- package/build-module/components/provider/use-block-sync.js.map +1 -1
- package/build-module/components/publish-date-time-picker/index.js +42 -0
- package/build-module/components/publish-date-time-picker/index.js.map +1 -0
- package/build-module/components/rich-text/embed-handler-picker.native.js +3 -5
- package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
- package/build-module/components/rich-text/index.js +1 -1
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/rich-text/index.native.js +5 -1
- package/build-module/components/rich-text/index.native.js.map +1 -1
- package/build-module/components/rich-text/use-format-types.js.map +1 -1
- package/build-module/components/rich-text/use-input-rules.js +3 -11
- package/build-module/components/rich-text/use-input-rules.js.map +1 -1
- package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
- package/build-module/components/rich-text/use-paste-handler.js +20 -5
- package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
- package/build-module/components/skip-to-selected-block/index.js.map +1 -1
- package/build-module/components/ungroup-button/index.native.js +3 -5
- package/build-module/components/ungroup-button/index.native.js.map +1 -1
- package/build-module/components/url-input/index.js +11 -1
- package/build-module/components/url-input/index.js.map +1 -1
- package/build-module/components/use-block-display-information/index.js.map +1 -1
- package/build-module/components/use-block-drop-zone/index.js.map +1 -1
- package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
- package/build-module/components/use-display-block-controls/index.native.js.map +1 -1
- package/build-module/components/use-on-block-drop/index.js.map +1 -1
- package/build-module/components/use-on-block-drop/index.native.js.map +1 -1
- package/build-module/components/use-setting/index.js.map +1 -1
- package/build-module/components/writing-flow/use-arrow-nav.js +12 -11
- package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
- package/build-module/components/writing-flow/use-click-selection.js.map +1 -1
- package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
- package/build-module/components/writing-flow/use-input.js +15 -0
- package/build-module/components/writing-flow/use-input.js.map +1 -1
- package/build-module/components/writing-flow/use-multi-selection.js.map +1 -1
- package/build-module/components/writing-flow/use-select-all.js.map +1 -1
- package/build-module/components/writing-flow/use-selection-observer.js.map +1 -1
- package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build-module/elements/index.js +8 -0
- package/build-module/elements/index.js.map +1 -0
- package/build-module/hooks/aria-label.js +59 -0
- package/build-module/hooks/aria-label.js.map +1 -0
- package/build-module/hooks/color-panel.js.map +1 -1
- package/build-module/hooks/color-panel.native.js.map +1 -1
- package/build-module/hooks/color.js +8 -88
- package/build-module/hooks/color.js.map +1 -1
- package/build-module/hooks/dimensions.js +14 -4
- package/build-module/hooks/dimensions.js.map +1 -1
- package/build-module/hooks/duotone.js +22 -140
- package/build-module/hooks/duotone.js.map +1 -1
- package/build-module/hooks/font-family.js.map +1 -1
- package/build-module/hooks/gap.js.map +1 -1
- package/build-module/hooks/index.js +1 -1
- package/build-module/hooks/index.js.map +1 -1
- package/build-module/hooks/layout.js +45 -6
- package/build-module/hooks/layout.js.map +1 -1
- package/build-module/index.js +2 -1
- package/build-module/index.js.map +1 -1
- package/build-module/layouts/flex.js +6 -4
- package/build-module/layouts/flex.js.map +1 -1
- package/build-module/store/actions.js +18 -11
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/reducer.js +36 -12
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +25 -2
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/pasting.js.map +1 -1
- package/build-module/utils/selection.js +24 -0
- package/build-module/utils/selection.js.map +1 -0
- package/build-module/utils/transform-styles/transforms/wrap.js.map +1 -1
- package/build-style/style-rtl.css +37 -37
- package/build-style/style.css +37 -37
- package/package.json +30 -30
- package/src/autocompleters/block.js +2 -1
- package/src/components/block-actions/index.js +2 -3
- package/src/components/block-alignment-control/ui.js +4 -6
- package/src/components/block-alignment-matrix-control/index.js +2 -4
- package/src/components/block-breadcrumb/index.js +2 -5
- package/src/components/block-compare/test/block-view.js +2 -1
- package/src/components/block-content-overlay/index.js +2 -5
- package/src/components/block-context/index.js +4 -4
- package/src/components/block-controls/hook.js +2 -3
- package/src/components/block-draggable/draggable-chip.native.js +1 -1
- package/src/components/block-draggable/index.js +6 -13
- package/src/components/block-draggable/index.native.js +10 -14
- package/src/components/block-draggable/test/__snapshots__/index.native.js.snap +73 -0
- package/src/components/block-draggable/test/helpers.native.js +183 -0
- package/src/components/block-draggable/test/index.native.js +493 -0
- package/src/components/block-edit/test/edit.js +2 -1
- package/src/components/block-list/block-list-item.native.js +4 -12
- package/src/components/block-list/block-selection-button.native.js +2 -3
- package/src/components/block-list/block.js +8 -10
- package/src/components/block-list/block.native.js +11 -15
- package/src/components/block-list/index.js +46 -47
- package/src/components/block-list/index.native.js +12 -21
- package/src/components/block-list/style.scss +1 -1
- package/src/components/block-list/test/block-list-context.native.js +8 -16
- package/src/components/block-list/use-block-props/index.js +6 -3
- package/src/components/block-list/use-block-props/use-block-custom-class-name.js +2 -3
- package/src/components/block-list/use-block-props/use-selected-block-event-handlers.js +2 -3
- package/src/components/block-list/use-in-between-inserter.js +2 -3
- package/src/components/block-list-appender/index.js +2 -5
- package/src/components/block-list-appender/index.native.js +2 -3
- package/src/components/block-mobile-toolbar/block-actions-menu.native.js +4 -6
- package/src/components/block-mobile-toolbar/index.native.js +1 -0
- package/src/components/block-mover/button.js +2 -3
- package/src/components/block-mover/index.native.js +4 -6
- package/src/components/block-mover/test/__snapshots__/index.native.js.snap +4 -0
- package/src/components/block-parent-selector/index.js +2 -3
- package/src/components/block-pattern-setup/index.js +4 -14
- package/src/components/block-pattern-setup/setup-toolbar.js +2 -9
- package/src/components/block-popover/inbetween.js +12 -7
- package/src/components/block-popover/index.js +1 -0
- package/src/components/block-preview/auto.js +21 -11
- package/src/components/block-selection-clearer/index.js +2 -3
- package/src/components/block-settings-menu/block-edit-visually-button.js +52 -0
- package/src/components/block-settings-menu/block-mode-toggle.js +4 -8
- package/src/components/block-settings-menu/block-settings-dropdown.js +9 -8
- package/src/components/block-settings-menu/index.js +15 -11
- package/src/components/block-settings-menu-controls/index.js +3 -2
- package/src/components/block-styles/index.js +3 -1
- package/src/components/block-styles/menu-items.js +2 -5
- package/src/components/block-switcher/block-transformations-menu.js +2 -4
- package/src/components/block-title/use-block-display-title.js +9 -7
- package/src/components/block-toolbar/index.native.js +2 -5
- package/src/components/block-toolbar/utils.js +3 -11
- package/src/components/block-tools/block-contextual-toolbar.js +2 -5
- package/src/components/block-tools/block-selection-button.js +1 -0
- package/src/components/block-tools/index.js +2 -3
- package/src/components/block-types-list/index.native.js +2 -4
- package/src/components/block-variation-transforms/index.js +10 -8
- package/src/components/color-palette/test/control.js +2 -1
- package/src/components/color-style-selector/index.js +27 -28
- package/src/components/colors/test/with-colors.js +14 -14
- package/src/components/colors/with-colors.js +8 -12
- package/src/components/colors-gradients/dropdown.js +49 -69
- package/src/components/colors-gradients/panel-color-gradient-settings.js +30 -76
- package/src/components/colors-gradients/style.scss +11 -37
- package/src/components/colors-gradients/test/control.js +10 -10
- package/src/components/convert-to-group-buttons/toolbar.js +32 -19
- package/src/components/copy-handler/README.md +7 -2
- package/src/components/copy-handler/index.js +26 -6
- package/src/components/default-block-appender/index.js +4 -6
- package/src/components/default-block-appender/index.native.js +4 -9
- package/src/components/default-style-picker/index.js +20 -21
- package/src/components/duotone/components.js +133 -0
- package/src/components/duotone/index.js +7 -0
- package/src/components/duotone/utils.js +25 -0
- package/src/components/duotone-control/index.js +12 -7
- package/src/components/duotone-control/style.scss +5 -0
- package/src/components/font-sizes/with-font-sizes.js +2 -3
- package/src/components/image-editor/aspect-ratio-dropdown.js +2 -6
- package/src/components/image-size-control/index.js +4 -7
- package/src/components/index.js +4 -0
- package/src/components/inner-blocks/use-inner-block-template-sync.js +2 -3
- package/src/components/inner-blocks/use-nested-settings-update.js +6 -9
- package/src/components/inserter/block-types-tab.native.js +2 -3
- package/src/components/inserter/hooks/use-block-type-impressions.native.js +2 -3
- package/src/components/inserter/hooks/use-insertion-point.js +3 -2
- package/src/components/inserter/hooks/use-patterns-state.js +4 -5
- package/src/components/inserter/index.js +7 -11
- package/src/components/inserter/index.native.js +6 -11
- package/src/components/inserter/library.js +2 -5
- package/src/components/inserter/menu.js +14 -19
- package/src/components/inserter/menu.native.js +8 -6
- package/src/components/inserter/no-results.native.js +2 -1
- package/src/components/inserter/quick-inserter.js +2 -3
- package/src/components/inserter/search-items.js +6 -6
- package/src/components/inserter/search-results.native.js +4 -6
- package/src/components/inspector-popover-header/README.md +76 -0
- package/src/components/inspector-popover-header/index.js +56 -0
- package/src/components/inspector-popover-header/style.scss +16 -0
- package/src/components/line-height-control/index.js +1 -2
- package/src/components/link-control/index.js +4 -4
- package/src/components/link-control/search-create-button.js +4 -2
- package/src/components/link-control/search-input.js +3 -1
- package/src/components/link-control/settings-drawer.js +2 -5
- package/src/components/link-control/test/fixtures/index.js +5 -7
- package/src/components/link-control/test/index.js +79 -102
- package/src/components/link-control/use-search-handler.js +2 -2
- package/src/components/list-view/block-contents.js +2 -4
- package/src/components/list-view/branch.js +22 -23
- package/src/components/list-view/index.js +4 -8
- package/src/components/list-view/use-block-selection.js +5 -5
- package/src/components/list-view/use-list-view-drop-zone.js +2 -1
- package/src/components/list-view/utils.js +1 -6
- package/src/components/media-placeholder/index.js +3 -3
- package/src/components/media-placeholder/index.native.js +9 -5
- package/src/components/media-replace-flow/index.js +78 -55
- package/src/components/media-upload/README.md +8 -0
- package/src/components/media-upload/index.native.js +6 -2
- package/src/components/media-upload/test/index.native.js +31 -6
- package/src/components/navigable-toolbar/index.js +1 -2
- package/src/components/panel-color-settings/test/index.js +2 -1
- package/src/components/plain-text/index.native.js +60 -8
- package/src/components/preview-options/index.js +4 -0
- package/src/components/provider/use-block-sync.js +5 -2
- package/src/components/publish-date-time-picker/README.md +52 -0
- package/src/components/publish-date-time-picker/index.js +41 -0
- package/src/components/responsive-block-control/README.md +3 -1
- package/src/components/responsive-block-control/test/index.js +4 -4
- package/src/components/rich-text/embed-handler-picker.native.js +2 -5
- package/src/components/rich-text/index.js +9 -4
- package/src/components/rich-text/index.native.js +4 -0
- package/src/components/rich-text/use-format-types.js +16 -16
- package/src/components/rich-text/use-input-rules.js +6 -15
- package/src/components/rich-text/use-mark-persistent.js +2 -3
- package/src/components/rich-text/use-paste-handler.js +17 -5
- package/src/components/skip-to-selected-block/index.js +2 -3
- package/src/components/ungroup-button/index.native.js +4 -8
- package/src/components/url-input/index.js +21 -20
- package/src/components/use-block-display-information/index.js +4 -6
- package/src/components/use-block-drop-zone/index.js +2 -3
- package/src/components/use-block-drop-zone/index.native.js +2 -4
- package/src/components/use-block-drop-zone/test/index.js +22 -23
- package/src/components/use-display-block-controls/index.native.js +2 -3
- package/src/components/use-no-recursive-renders/test/use-no-recursive-renders.js +2 -3
- package/src/components/use-on-block-drop/index.js +2 -5
- package/src/components/use-on-block-drop/index.native.js +4 -8
- package/src/components/use-setting/index.js +8 -6
- package/src/components/writing-flow/test/index.js +22 -4
- package/src/components/writing-flow/use-arrow-nav.js +22 -10
- package/src/components/writing-flow/use-click-selection.js +2 -5
- package/src/components/writing-flow/use-drag-selection.js +6 -9
- package/src/components/writing-flow/use-input.js +12 -0
- package/src/components/writing-flow/use-multi-selection.js +2 -4
- package/src/components/writing-flow/use-select-all.js +2 -5
- package/src/components/writing-flow/use-selection-observer.js +4 -6
- package/src/components/writing-flow/use-tab-nav.js +2 -5
- package/src/elements/index.js +8 -0
- package/src/elements/test/index.js +18 -0
- package/src/hooks/aria-label.js +67 -0
- package/src/hooks/color-panel.js +4 -4
- package/src/hooks/color-panel.native.js +2 -2
- package/src/hooks/color.js +7 -76
- package/src/hooks/color.scss +9 -0
- package/src/hooks/dimensions.js +11 -3
- package/src/hooks/duotone.js +18 -139
- package/src/hooks/font-family.js +4 -2
- package/src/hooks/gap.js +2 -3
- package/src/hooks/index.js +1 -1
- package/src/hooks/layout.js +74 -13
- package/src/hooks/test/align.js +2 -1
- package/src/hooks/test/generated-class-name.js +2 -5
- package/src/hooks/test/utils.js +2 -5
- package/src/index.js +1 -1
- package/src/layouts/flex.js +13 -5
- package/src/store/actions.js +772 -729
- package/src/store/reducer.js +219 -183
- package/src/store/selectors.js +82 -54
- package/src/store/test/actions.js +2 -1
- package/src/store/test/reducer.js +145 -10
- package/src/store/test/selectors.js +20 -27
- package/src/style.scss +1 -0
- package/src/utils/pasting.js +3 -3
- package/src/utils/selection.js +26 -0
- package/src/utils/test/selection.js +39 -0
- package/src/utils/transform-styles/transforms/wrap.js +30 -28
- package/tsconfig.tsbuildinfo +1 -1
- package/build/components/colors/color-panel.js +0 -82
- package/build/components/colors/color-panel.js.map +0 -1
- package/build/components/colors/color-panel.native.js +0 -11
- package/build/components/colors/color-panel.native.js.map +0 -1
- package/build-module/components/colors/color-panel.js +0 -70
- package/build-module/components/colors/color-panel.js.map +0 -1
- package/build-module/components/colors/color-panel.native.js +0 -4
- package/build-module/components/colors/color-panel.native.js.map +0 -1
- package/src/components/colors/color-panel.js +0 -91
- package/src/components/colors/color-panel.native.js +0 -3
|
@@ -6,7 +6,7 @@ import classnames from 'classnames';
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
8
8
|
*/
|
|
9
|
-
import { AsyncModeProvider, useSelect } from '@wordpress/data';
|
|
9
|
+
import { AsyncModeProvider, useSelect, useDispatch } from '@wordpress/data';
|
|
10
10
|
import { useViewportMatch, useMergeRefs } from '@wordpress/compose';
|
|
11
11
|
import { createContext, useState, useMemo } from '@wordpress/element';
|
|
12
12
|
|
|
@@ -36,9 +36,8 @@ function Root( { className, ...settings } ) {
|
|
|
36
36
|
const isLargeViewport = useViewportMatch( 'medium' );
|
|
37
37
|
const { isOutlineMode, isFocusMode, isNavigationMode } = useSelect(
|
|
38
38
|
( select ) => {
|
|
39
|
-
const { getSettings, isNavigationMode: _isNavigationMode } =
|
|
40
|
-
blockEditorStore
|
|
41
|
-
);
|
|
39
|
+
const { getSettings, isNavigationMode: _isNavigationMode } =
|
|
40
|
+
select( blockEditorStore );
|
|
42
41
|
const { outlineMode, focusMode } = getSettings();
|
|
43
42
|
return {
|
|
44
43
|
isOutlineMode: outlineMode,
|
|
@@ -48,6 +47,23 @@ function Root( { className, ...settings } ) {
|
|
|
48
47
|
},
|
|
49
48
|
[]
|
|
50
49
|
);
|
|
50
|
+
const { setBlockVisibility } = useDispatch( blockEditorStore );
|
|
51
|
+
const intersectionObserver = useMemo( () => {
|
|
52
|
+
const { IntersectionObserver: Observer } = window;
|
|
53
|
+
|
|
54
|
+
if ( ! Observer ) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
return new Observer( ( entries ) => {
|
|
59
|
+
const updates = {};
|
|
60
|
+
for ( const entry of entries ) {
|
|
61
|
+
const clientId = entry.target.getAttribute( 'data-block' );
|
|
62
|
+
updates[ clientId ] = entry.isIntersecting;
|
|
63
|
+
}
|
|
64
|
+
setBlockVisibility( updates );
|
|
65
|
+
} );
|
|
66
|
+
}, [] );
|
|
51
67
|
const innerBlocksProps = useInnerBlocksProps(
|
|
52
68
|
{
|
|
53
69
|
ref: useMergeRefs( [
|
|
@@ -65,7 +81,9 @@ function Root( { className, ...settings } ) {
|
|
|
65
81
|
);
|
|
66
82
|
return (
|
|
67
83
|
<elementContext.Provider value={ element }>
|
|
68
|
-
<
|
|
84
|
+
<IntersectionObserver.Provider value={ intersectionObserver }>
|
|
85
|
+
<div { ...innerBlocksProps } />
|
|
86
|
+
</IntersectionObserver.Provider>
|
|
69
87
|
</elementContext.Provider>
|
|
70
88
|
);
|
|
71
89
|
}
|
|
@@ -90,34 +108,17 @@ function Items( {
|
|
|
90
108
|
__experimentalAppenderTagName,
|
|
91
109
|
__experimentalLayout: layout = defaultLayout,
|
|
92
110
|
} ) {
|
|
93
|
-
const
|
|
94
|
-
const intersectionObserver = useMemo( () => {
|
|
95
|
-
const { IntersectionObserver: Observer } = window;
|
|
96
|
-
|
|
97
|
-
if ( ! Observer ) {
|
|
98
|
-
return;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
return new Observer( ( entries ) => {
|
|
102
|
-
setIntersectingBlocks( ( oldIntersectingBlocks ) => {
|
|
103
|
-
const newIntersectingBlocks = new Set( oldIntersectingBlocks );
|
|
104
|
-
for ( const entry of entries ) {
|
|
105
|
-
const clientId = entry.target.getAttribute( 'data-block' );
|
|
106
|
-
const action = entry.isIntersecting ? 'add' : 'delete';
|
|
107
|
-
newIntersectingBlocks[ action ]( clientId );
|
|
108
|
-
}
|
|
109
|
-
return newIntersectingBlocks;
|
|
110
|
-
} );
|
|
111
|
-
} );
|
|
112
|
-
}, [ setIntersectingBlocks ] );
|
|
113
|
-
const { order, selectedBlocks } = useSelect(
|
|
111
|
+
const { order, selectedBlocks, visibleBlocks } = useSelect(
|
|
114
112
|
( select ) => {
|
|
115
|
-
const {
|
|
116
|
-
|
|
117
|
-
|
|
113
|
+
const {
|
|
114
|
+
getBlockOrder,
|
|
115
|
+
getSelectedBlockClientIds,
|
|
116
|
+
__unstableGetVisibleBlocks,
|
|
117
|
+
} = select( blockEditorStore );
|
|
118
118
|
return {
|
|
119
119
|
order: getBlockOrder( rootClientId ),
|
|
120
120
|
selectedBlocks: getSelectedBlockClientIds(),
|
|
121
|
+
visibleBlocks: __unstableGetVisibleBlocks(),
|
|
121
122
|
};
|
|
122
123
|
},
|
|
123
124
|
[ rootClientId ]
|
|
@@ -125,24 +126,22 @@ function Items( {
|
|
|
125
126
|
|
|
126
127
|
return (
|
|
127
128
|
<LayoutProvider value={ layout }>
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
) ) }
|
|
145
|
-
</IntersectionObserver.Provider>
|
|
129
|
+
{ order.map( ( clientId ) => (
|
|
130
|
+
<AsyncModeProvider
|
|
131
|
+
key={ clientId }
|
|
132
|
+
value={
|
|
133
|
+
// Only provide data asynchronously if the block is
|
|
134
|
+
// not visible and not selected.
|
|
135
|
+
! visibleBlocks.has( clientId ) &&
|
|
136
|
+
! selectedBlocks.includes( clientId )
|
|
137
|
+
}
|
|
138
|
+
>
|
|
139
|
+
<BlockListBlock
|
|
140
|
+
rootClientId={ rootClientId }
|
|
141
|
+
clientId={ clientId }
|
|
142
|
+
/>
|
|
143
|
+
</AsyncModeProvider>
|
|
144
|
+
) ) }
|
|
146
145
|
{ order.length < 1 && placeholder }
|
|
147
146
|
<BlockListAppender
|
|
148
147
|
tagName={ __experimentalAppenderTagName }
|
|
@@ -70,22 +70,18 @@ export class BlockList extends Component {
|
|
|
70
70
|
};
|
|
71
71
|
this.renderItem = this.renderItem.bind( this );
|
|
72
72
|
this.renderBlockListFooter = this.renderBlockListFooter.bind( this );
|
|
73
|
-
this.onCaretVerticalPositionChange =
|
|
74
|
-
this
|
|
75
|
-
);
|
|
73
|
+
this.onCaretVerticalPositionChange =
|
|
74
|
+
this.onCaretVerticalPositionChange.bind( this );
|
|
76
75
|
this.scrollViewInnerRef = this.scrollViewInnerRef.bind( this );
|
|
77
76
|
this.addBlockToEndOfPost = this.addBlockToEndOfPost.bind( this );
|
|
78
|
-
this.shouldFlatListPreventAutomaticScroll =
|
|
79
|
-
this
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
this
|
|
83
|
-
);
|
|
77
|
+
this.shouldFlatListPreventAutomaticScroll =
|
|
78
|
+
this.shouldFlatListPreventAutomaticScroll.bind( this );
|
|
79
|
+
this.shouldShowInnerBlockAppender =
|
|
80
|
+
this.shouldShowInnerBlockAppender.bind( this );
|
|
84
81
|
this.renderEmptyList = this.renderEmptyList.bind( this );
|
|
85
82
|
this.getExtraData = this.getExtraData.bind( this );
|
|
86
|
-
this.getCellRendererComponent =
|
|
87
|
-
this
|
|
88
|
-
);
|
|
83
|
+
this.getCellRendererComponent =
|
|
84
|
+
this.getCellRendererComponent.bind( this );
|
|
89
85
|
|
|
90
86
|
this.onLayout = this.onLayout.bind( this );
|
|
91
87
|
|
|
@@ -241,12 +237,8 @@ export class BlockList extends Component {
|
|
|
241
237
|
} = this.props;
|
|
242
238
|
const { parentScrollRef, onScroll } = extraProps;
|
|
243
239
|
|
|
244
|
-
const {
|
|
245
|
-
|
|
246
|
-
blockBorder,
|
|
247
|
-
headerToolbar,
|
|
248
|
-
floatingToolbar,
|
|
249
|
-
} = styles;
|
|
240
|
+
const { blockToolbar, blockBorder, headerToolbar, floatingToolbar } =
|
|
241
|
+
styles;
|
|
250
242
|
|
|
251
243
|
const containerStyle = {
|
|
252
244
|
flex: isRootList ? 1 : 0,
|
|
@@ -456,9 +448,8 @@ export default compose( [
|
|
|
456
448
|
}
|
|
457
449
|
),
|
|
458
450
|
withDispatch( ( dispatch ) => {
|
|
459
|
-
const { insertBlock, replaceBlock, clearSelectedBlock } =
|
|
460
|
-
blockEditorStore
|
|
461
|
-
);
|
|
451
|
+
const { insertBlock, replaceBlock, clearSelectedBlock } =
|
|
452
|
+
dispatch( blockEditorStore );
|
|
462
453
|
|
|
463
454
|
return {
|
|
464
455
|
clearSelectedBlock,
|
|
@@ -293,7 +293,7 @@
|
|
|
293
293
|
|
|
294
294
|
// Spotlight mode. Fade out blocks unless they contain a selected block.
|
|
295
295
|
.is-focus-mode .block-editor-block-list__block:not(.has-child-selected) {
|
|
296
|
-
opacity: 0.
|
|
296
|
+
opacity: 0.2;
|
|
297
297
|
transition: opacity 0.1s linear;
|
|
298
298
|
@include reduce-motion("transition");
|
|
299
299
|
|
|
@@ -139,10 +139,8 @@ describe( 'updateBlocksLayouts', () => {
|
|
|
139
139
|
} );
|
|
140
140
|
|
|
141
141
|
it( "adds a new block's layout data at root level with inner blocks", () => {
|
|
142
|
-
const {
|
|
143
|
-
|
|
144
|
-
updateBlocksLayouts,
|
|
145
|
-
} = DEFAULT_BLOCK_LIST_CONTEXT;
|
|
142
|
+
const { findBlockLayoutByClientId, updateBlocksLayouts } =
|
|
143
|
+
DEFAULT_BLOCK_LIST_CONTEXT;
|
|
146
144
|
const currentBlockLayouts = {
|
|
147
145
|
current: cloneDeep( BLOCKS_LAYOUTS_DATA ),
|
|
148
146
|
};
|
|
@@ -180,10 +178,8 @@ describe( 'updateBlocksLayouts', () => {
|
|
|
180
178
|
} );
|
|
181
179
|
|
|
182
180
|
it( "adds a new block's layout data at deep level", () => {
|
|
183
|
-
const {
|
|
184
|
-
|
|
185
|
-
updateBlocksLayouts,
|
|
186
|
-
} = DEFAULT_BLOCK_LIST_CONTEXT;
|
|
181
|
+
const { findBlockLayoutByClientId, updateBlocksLayouts } =
|
|
182
|
+
DEFAULT_BLOCK_LIST_CONTEXT;
|
|
187
183
|
const currentBlockLayouts = {
|
|
188
184
|
current: cloneDeep( BLOCKS_LAYOUTS_DATA ),
|
|
189
185
|
};
|
|
@@ -208,10 +204,8 @@ describe( 'updateBlocksLayouts', () => {
|
|
|
208
204
|
} );
|
|
209
205
|
|
|
210
206
|
it( "deletes a block's layout data at root level", () => {
|
|
211
|
-
const {
|
|
212
|
-
|
|
213
|
-
updateBlocksLayouts,
|
|
214
|
-
} = DEFAULT_BLOCK_LIST_CONTEXT;
|
|
207
|
+
const { findBlockLayoutByClientId, updateBlocksLayouts } =
|
|
208
|
+
DEFAULT_BLOCK_LIST_CONTEXT;
|
|
215
209
|
const currentBlockLayouts = {
|
|
216
210
|
current: cloneDeep( BLOCKS_LAYOUTS_DATA ),
|
|
217
211
|
};
|
|
@@ -230,10 +224,8 @@ describe( 'updateBlocksLayouts', () => {
|
|
|
230
224
|
} );
|
|
231
225
|
|
|
232
226
|
it( "deletes a block's layout data at a deep level", () => {
|
|
233
|
-
const {
|
|
234
|
-
|
|
235
|
-
updateBlocksLayouts,
|
|
236
|
-
} = DEFAULT_BLOCK_LIST_CONTEXT;
|
|
227
|
+
const { findBlockLayoutByClientId, updateBlocksLayouts } =
|
|
228
|
+
DEFAULT_BLOCK_LIST_CONTEXT;
|
|
237
229
|
const currentBlockLayouts = {
|
|
238
230
|
current: cloneDeep( BLOCKS_LAYOUTS_DATA ),
|
|
239
231
|
};
|
|
@@ -62,9 +62,12 @@ export function useBlockProps(
|
|
|
62
62
|
props = {},
|
|
63
63
|
{ __unstableIsHtml, __unstableIsDisabled = false } = {}
|
|
64
64
|
) {
|
|
65
|
-
const {
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
const {
|
|
66
|
+
clientId,
|
|
67
|
+
className,
|
|
68
|
+
wrapperProps = {},
|
|
69
|
+
isAligned,
|
|
70
|
+
} = useContext( BlockListBlockContext );
|
|
68
71
|
const {
|
|
69
72
|
index,
|
|
70
73
|
mode,
|
|
@@ -22,9 +22,8 @@ export function useBlockCustomClassName( clientId ) {
|
|
|
22
22
|
// as much.
|
|
23
23
|
return useSelect(
|
|
24
24
|
( select ) => {
|
|
25
|
-
const { getBlockName, getBlockAttributes } =
|
|
26
|
-
blockEditorStore
|
|
27
|
-
);
|
|
25
|
+
const { getBlockName, getBlockAttributes } =
|
|
26
|
+
select( blockEditorStore );
|
|
28
27
|
const attributes = getBlockAttributes( clientId );
|
|
29
28
|
|
|
30
29
|
if ( ! attributes?.className ) {
|
|
@@ -24,9 +24,8 @@ export function useEventHandlers( clientId ) {
|
|
|
24
24
|
( select ) => select( blockEditorStore ).isBlockSelected( clientId ),
|
|
25
25
|
[ clientId ]
|
|
26
26
|
);
|
|
27
|
-
const { getBlockRootClientId, getBlockIndex } =
|
|
28
|
-
blockEditorStore
|
|
29
|
-
);
|
|
27
|
+
const { getBlockRootClientId, getBlockIndex } =
|
|
28
|
+
useSelect( blockEditorStore );
|
|
30
29
|
const { insertDefaultBlock, removeBlock } = useDispatch( blockEditorStore );
|
|
31
30
|
|
|
32
31
|
return useRefEffect(
|
|
@@ -27,9 +27,8 @@ export function useInBetweenInserter() {
|
|
|
27
27
|
getSelectedBlockClientIds,
|
|
28
28
|
getTemplateLock,
|
|
29
29
|
} = useSelect( blockEditorStore );
|
|
30
|
-
const { showInsertionPoint, hideInsertionPoint } =
|
|
31
|
-
blockEditorStore
|
|
32
|
-
);
|
|
30
|
+
const { showInsertionPoint, hideInsertionPoint } =
|
|
31
|
+
useDispatch( blockEditorStore );
|
|
33
32
|
|
|
34
33
|
return useRefEffect(
|
|
35
34
|
( node ) => {
|
|
@@ -93,11 +93,8 @@ function BlockListAppender( {
|
|
|
93
93
|
}
|
|
94
94
|
|
|
95
95
|
export default withSelect( ( select, { rootClientId } ) => {
|
|
96
|
-
const {
|
|
97
|
-
|
|
98
|
-
getTemplateLock,
|
|
99
|
-
getSelectedBlockClientId,
|
|
100
|
-
} = select( blockEditorStore );
|
|
96
|
+
const { canInsertBlockType, getTemplateLock, getSelectedBlockClientId } =
|
|
97
|
+
select( blockEditorStore );
|
|
101
98
|
|
|
102
99
|
return {
|
|
103
100
|
isLocked: !! getTemplateLock( rootClientId ),
|
|
@@ -48,9 +48,8 @@ function BlockListAppender( {
|
|
|
48
48
|
}
|
|
49
49
|
|
|
50
50
|
export default withSelect( ( select, { rootClientId } ) => {
|
|
51
|
-
const { getBlockOrder, canInsertBlockType, getTemplateLock } =
|
|
52
|
-
blockEditorStore
|
|
53
|
-
);
|
|
51
|
+
const { getBlockOrder, canInsertBlockType, getTemplateLock } =
|
|
52
|
+
select( blockEditorStore );
|
|
54
53
|
|
|
55
54
|
return {
|
|
56
55
|
isLocked: !! getTemplateLock( rootClientId ),
|
|
@@ -386,14 +386,12 @@ export default compose(
|
|
|
386
386
|
clearSelectedBlock,
|
|
387
387
|
} = dispatch( blockEditorStore );
|
|
388
388
|
const { openGeneralSidebar } = dispatch( 'core/edit-post' );
|
|
389
|
-
const { getBlockSelectionEnd, getBlock } =
|
|
390
|
-
blockEditorStore
|
|
391
|
-
);
|
|
389
|
+
const { getBlockSelectionEnd, getBlock } =
|
|
390
|
+
select( blockEditorStore );
|
|
392
391
|
const { createSuccessNotice } = dispatch( noticesStore );
|
|
393
392
|
|
|
394
|
-
const {
|
|
395
|
-
|
|
396
|
-
} = dispatch( reusableBlocksStore );
|
|
393
|
+
const { __experimentalConvertBlockToStatic: convertBlockToStatic } =
|
|
394
|
+
dispatch( reusableBlocksStore );
|
|
397
395
|
|
|
398
396
|
return {
|
|
399
397
|
createSuccessNotice,
|
|
@@ -108,9 +108,8 @@ const BlockMoverButton = forwardRef(
|
|
|
108
108
|
[ clientIds, direction ]
|
|
109
109
|
);
|
|
110
110
|
|
|
111
|
-
const { moveBlocksDown, moveBlocksUp } =
|
|
112
|
-
blockEditorStore
|
|
113
|
-
);
|
|
111
|
+
const { moveBlocksDown, moveBlocksUp } =
|
|
112
|
+
useDispatch( blockEditorStore );
|
|
114
113
|
const moverFunction =
|
|
115
114
|
direction === 'up' ? moveBlocksUp : moveBlocksDown;
|
|
116
115
|
|
|
@@ -37,9 +37,8 @@ export const BlockMover = ( {
|
|
|
37
37
|
} ) => {
|
|
38
38
|
const pickerRef = useRef();
|
|
39
39
|
const [ shouldPresentPicker, setShouldPresentPicker ] = useState( false );
|
|
40
|
-
const [ blockPageMoverState, setBlockPageMoverState ] =
|
|
41
|
-
undefined
|
|
42
|
-
);
|
|
40
|
+
const [ blockPageMoverState, setBlockPageMoverState ] =
|
|
41
|
+
useState( undefined );
|
|
43
42
|
const showBlockPageMover = ( direction ) => () => {
|
|
44
43
|
if ( ! pickerRef.current ) {
|
|
45
44
|
setBlockPageMoverState( undefined );
|
|
@@ -167,9 +166,8 @@ export default compose(
|
|
|
167
166
|
};
|
|
168
167
|
} ),
|
|
169
168
|
withDispatch( ( dispatch, { clientIds, rootClientId } ) => {
|
|
170
|
-
const { moveBlocksDown, moveBlocksUp, moveBlocksToPosition } =
|
|
171
|
-
blockEditorStore
|
|
172
|
-
);
|
|
169
|
+
const { moveBlocksDown, moveBlocksUp, moveBlocksToPosition } =
|
|
170
|
+
dispatch( blockEditorStore );
|
|
173
171
|
return {
|
|
174
172
|
onMoveDown: partial( moveBlocksDown, clientIds, rootClientId ),
|
|
175
173
|
onMoveUp: partial( moveBlocksUp, clientIds, rootClientId ),
|
|
@@ -35,6 +35,8 @@ Array [
|
|
|
35
35
|
>
|
|
36
36
|
<View
|
|
37
37
|
collapsable={false}
|
|
38
|
+
handlerTag={3}
|
|
39
|
+
handlerType="LongPressGestureHandler"
|
|
38
40
|
onGestureHandlerEvent={[Function]}
|
|
39
41
|
onGestureHandlerStateChange={[Function]}
|
|
40
42
|
style={
|
|
@@ -93,6 +95,8 @@ Array [
|
|
|
93
95
|
>
|
|
94
96
|
<View
|
|
95
97
|
collapsable={false}
|
|
98
|
+
handlerTag={4}
|
|
99
|
+
handlerType="LongPressGestureHandler"
|
|
96
100
|
onGestureHandlerEvent={[Function]}
|
|
97
101
|
onGestureHandlerStateChange={[Function]}
|
|
98
102
|
style={
|
|
@@ -22,9 +22,8 @@ import { store as blockEditorStore } from '../../store';
|
|
|
22
22
|
* @return {WPComponent} Parent block selector.
|
|
23
23
|
*/
|
|
24
24
|
export default function BlockParentSelector() {
|
|
25
|
-
const { selectBlock, toggleBlockHighlight } =
|
|
26
|
-
blockEditorStore
|
|
27
|
-
);
|
|
25
|
+
const { selectBlock, toggleBlockHighlight } =
|
|
26
|
+
useDispatch( blockEditorStore );
|
|
28
27
|
const { firstParentClientId, shouldHide, hasReducedUI } = useSelect(
|
|
29
28
|
( select ) => {
|
|
30
29
|
const {
|
|
@@ -145,21 +145,17 @@ const BlockPatternSetup = ( {
|
|
|
145
145
|
clientId,
|
|
146
146
|
blockName,
|
|
147
147
|
filterPatternsFn,
|
|
148
|
-
startBlankComponent,
|
|
149
148
|
onBlockPatternSelect,
|
|
150
149
|
} ) => {
|
|
151
150
|
const [ viewMode, setViewMode ] = useState( VIEWMODES.carousel );
|
|
152
151
|
const [ activeSlide, setActiveSlide ] = useState( 0 );
|
|
153
|
-
const [ showBlank, setShowBlank ] = useState( false );
|
|
154
152
|
const { replaceBlock } = useDispatch( blockEditorStore );
|
|
155
153
|
const patterns = usePatternsSetup( clientId, blockName, filterPatternsFn );
|
|
156
|
-
const [
|
|
157
|
-
|
|
158
|
-
{ height: contentHeight },
|
|
159
|
-
] = useResizeObserver();
|
|
154
|
+
const [ contentResizeListener, { height: contentHeight } ] =
|
|
155
|
+
useResizeObserver();
|
|
160
156
|
|
|
161
|
-
if ( ! patterns?.length
|
|
162
|
-
return
|
|
157
|
+
if ( ! patterns?.length ) {
|
|
158
|
+
return null;
|
|
163
159
|
}
|
|
164
160
|
|
|
165
161
|
const onBlockPatternSelectDefault = ( blocks ) => {
|
|
@@ -168,11 +164,6 @@ const BlockPatternSetup = ( {
|
|
|
168
164
|
};
|
|
169
165
|
const onPatternSelectCallback =
|
|
170
166
|
onBlockPatternSelect || onBlockPatternSelectDefault;
|
|
171
|
-
const onStartBlank = startBlankComponent
|
|
172
|
-
? () => {
|
|
173
|
-
setShowBlank( true );
|
|
174
|
-
}
|
|
175
|
-
: undefined;
|
|
176
167
|
return (
|
|
177
168
|
<>
|
|
178
169
|
{ contentResizeListener }
|
|
@@ -202,7 +193,6 @@ const BlockPatternSetup = ( {
|
|
|
202
193
|
patterns[ activeSlide ].blocks
|
|
203
194
|
);
|
|
204
195
|
} }
|
|
205
|
-
onStartBlank={ onStartBlank }
|
|
206
196
|
/>
|
|
207
197
|
</div>
|
|
208
198
|
</>
|
|
@@ -15,11 +15,8 @@ import {
|
|
|
15
15
|
*/
|
|
16
16
|
import { VIEWMODES } from './constants';
|
|
17
17
|
|
|
18
|
-
const Actions = ( {
|
|
18
|
+
const Actions = ( { onBlockPatternSelect } ) => (
|
|
19
19
|
<div className="block-editor-block-pattern-setup__actions">
|
|
20
|
-
{ onStartBlank && (
|
|
21
|
-
<Button onClick={ onStartBlank }>{ __( 'Start blank' ) }</Button>
|
|
22
|
-
) }
|
|
23
20
|
<Button variant="primary" onClick={ onBlockPatternSelect }>
|
|
24
21
|
{ __( 'Choose' ) }
|
|
25
22
|
</Button>
|
|
@@ -56,7 +53,6 @@ const SetupToolbar = ( {
|
|
|
56
53
|
activeSlide,
|
|
57
54
|
totalSlides,
|
|
58
55
|
onBlockPatternSelect,
|
|
59
|
-
onStartBlank,
|
|
60
56
|
} ) => {
|
|
61
57
|
const isCarouselView = viewMode === VIEWMODES.carousel;
|
|
62
58
|
const displayControls = (
|
|
@@ -87,10 +83,7 @@ const SetupToolbar = ( {
|
|
|
87
83
|
) }
|
|
88
84
|
{ displayControls }
|
|
89
85
|
{ isCarouselView && (
|
|
90
|
-
<Actions
|
|
91
|
-
onBlockPatternSelect={ onBlockPatternSelect }
|
|
92
|
-
onStartBlank={ onStartBlank }
|
|
93
|
-
/>
|
|
86
|
+
<Actions onBlockPatternSelect={ onBlockPatternSelect } />
|
|
94
87
|
) }
|
|
95
88
|
</div>
|
|
96
89
|
);
|
|
@@ -28,11 +28,13 @@ function BlockPopoverInbetween( {
|
|
|
28
28
|
__unstableContentRef,
|
|
29
29
|
...props
|
|
30
30
|
} ) {
|
|
31
|
-
const { orientation, rootClientId } = useSelect(
|
|
31
|
+
const { orientation, rootClientId, isVisible } = useSelect(
|
|
32
32
|
( select ) => {
|
|
33
|
-
const {
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
const {
|
|
34
|
+
getBlockListSettings,
|
|
35
|
+
getBlockRootClientId,
|
|
36
|
+
isBlockVisible,
|
|
37
|
+
} = select( blockEditorStore );
|
|
36
38
|
|
|
37
39
|
const _rootClientId = getBlockRootClientId( previousClientId );
|
|
38
40
|
return {
|
|
@@ -40,6 +42,9 @@ function BlockPopoverInbetween( {
|
|
|
40
42
|
getBlockListSettings( _rootClientId )?.orientation ||
|
|
41
43
|
'vertical',
|
|
42
44
|
rootClientId: _rootClientId,
|
|
45
|
+
isVisible:
|
|
46
|
+
isBlockVisible( previousClientId ) &&
|
|
47
|
+
isBlockVisible( nextClientId ),
|
|
43
48
|
};
|
|
44
49
|
},
|
|
45
50
|
[ previousClientId ]
|
|
@@ -48,7 +53,7 @@ function BlockPopoverInbetween( {
|
|
|
48
53
|
const nextElement = useBlockElement( nextClientId );
|
|
49
54
|
const isVertical = orientation === 'vertical';
|
|
50
55
|
const style = useMemo( () => {
|
|
51
|
-
if ( ! previousElement && ! nextElement ) {
|
|
56
|
+
if ( ( ! previousElement && ! nextElement ) || ! isVisible ) {
|
|
52
57
|
return {};
|
|
53
58
|
}
|
|
54
59
|
|
|
@@ -87,7 +92,7 @@ function BlockPopoverInbetween( {
|
|
|
87
92
|
}, [ previousElement, nextElement, isVertical ] );
|
|
88
93
|
|
|
89
94
|
const getAnchorRect = useCallback( () => {
|
|
90
|
-
if ( ! previousElement && ! nextElement ) {
|
|
95
|
+
if ( ( ! previousElement && ! nextElement ) || ! isVisible ) {
|
|
91
96
|
return {};
|
|
92
97
|
}
|
|
93
98
|
|
|
@@ -149,7 +154,7 @@ function BlockPopoverInbetween( {
|
|
|
149
154
|
|
|
150
155
|
const popoverScrollRef = usePopoverScroll( __unstableContentRef );
|
|
151
156
|
|
|
152
|
-
if ( ! previousElement || ! nextElement ) {
|
|
157
|
+
if ( ! previousElement || ! nextElement || ! isVisible ) {
|
|
153
158
|
return null;
|
|
154
159
|
}
|
|
155
160
|
|
|
@@ -62,6 +62,7 @@ export default function BlockPopover( {
|
|
|
62
62
|
// Observe movement for block animations (especially horizontal).
|
|
63
63
|
__unstableObserveElement={ selectedElement }
|
|
64
64
|
__unstableForcePosition
|
|
65
|
+
__unstableShift
|
|
65
66
|
{ ...props }
|
|
66
67
|
className={ classnames(
|
|
67
68
|
'block-editor-block-popover',
|
|
@@ -12,6 +12,7 @@ import { useMemo } from '@wordpress/element';
|
|
|
12
12
|
import BlockList from '../block-list';
|
|
13
13
|
import Iframe from '../iframe';
|
|
14
14
|
import EditorStyles from '../editor-styles';
|
|
15
|
+
import { __unstablePresetDuotoneFilter as PresetDuotoneFilter } from '../../components/duotone';
|
|
15
16
|
import { store } from '../../store';
|
|
16
17
|
|
|
17
18
|
// This is used to avoid rendering the block list if the sizes change.
|
|
@@ -24,19 +25,16 @@ function AutoBlockPreview( {
|
|
|
24
25
|
__experimentalPadding,
|
|
25
26
|
__experimentalMinHeight,
|
|
26
27
|
} ) {
|
|
27
|
-
const [
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
const
|
|
32
|
-
contentResizeListener,
|
|
33
|
-
{ height: contentHeight },
|
|
34
|
-
] = useResizeObserver();
|
|
35
|
-
const { styles, assets } = useSelect( ( select ) => {
|
|
28
|
+
const [ containerResizeListener, { width: containerWidth } ] =
|
|
29
|
+
useResizeObserver();
|
|
30
|
+
const [ contentResizeListener, { height: contentHeight } ] =
|
|
31
|
+
useResizeObserver();
|
|
32
|
+
const { styles, assets, duotone } = useSelect( ( select ) => {
|
|
36
33
|
const settings = select( store ).getSettings();
|
|
37
34
|
return {
|
|
38
35
|
styles: settings.styles,
|
|
39
36
|
assets: settings.__unstableResolvedAssets,
|
|
37
|
+
duotone: settings.__experimentalFeatures?.color?.duotone,
|
|
40
38
|
};
|
|
41
39
|
}, [] );
|
|
42
40
|
|
|
@@ -55,11 +53,14 @@ function AutoBlockPreview( {
|
|
|
55
53
|
return styles;
|
|
56
54
|
}, [ styles ] );
|
|
57
55
|
|
|
56
|
+
const svgFilters = useMemo( () => {
|
|
57
|
+
return [ ...( duotone?.default ?? [] ), ...( duotone?.theme ?? [] ) ];
|
|
58
|
+
}, [ duotone ] );
|
|
59
|
+
|
|
58
60
|
// Initialize on render instead of module top level, to avoid circular dependency issues.
|
|
59
61
|
MemoizedBlockList = MemoizedBlockList || pure( BlockList );
|
|
60
62
|
|
|
61
63
|
const scale = containerWidth / viewportWidth;
|
|
62
|
-
|
|
63
64
|
return (
|
|
64
65
|
<div className="block-editor-block-preview__container">
|
|
65
66
|
{ containerResizeListener }
|
|
@@ -104,12 +105,21 @@ function AutoBlockPreview( {
|
|
|
104
105
|
// See: https://github.com/WordPress/gutenberg/pull/38175.
|
|
105
106
|
maxHeight: MAX_HEIGHT,
|
|
106
107
|
minHeight:
|
|
107
|
-
scale < 1 && __experimentalMinHeight
|
|
108
|
+
scale !== 0 && scale < 1 && __experimentalMinHeight
|
|
108
109
|
? __experimentalMinHeight / scale
|
|
109
110
|
: __experimentalMinHeight,
|
|
110
111
|
} }
|
|
111
112
|
>
|
|
112
113
|
{ contentResizeListener }
|
|
114
|
+
{
|
|
115
|
+
/* Filters need to be rendered before children to avoid Safari rendering issues. */
|
|
116
|
+
svgFilters.map( ( preset ) => (
|
|
117
|
+
<PresetDuotoneFilter
|
|
118
|
+
preset={ preset }
|
|
119
|
+
key={ preset.slug }
|
|
120
|
+
/>
|
|
121
|
+
) )
|
|
122
|
+
}
|
|
113
123
|
<MemoizedBlockList renderAppender={ false } />
|
|
114
124
|
</Iframe>
|
|
115
125
|
</Disabled>
|
|
@@ -17,9 +17,8 @@ import { store as blockEditorStore } from '../../store';
|
|
|
17
17
|
* @return {import('react').RefCallback} Ref callback.
|
|
18
18
|
*/
|
|
19
19
|
export function useBlockSelectionClearer() {
|
|
20
|
-
const { hasSelectedBlock, hasMultiSelection } =
|
|
21
|
-
blockEditorStore
|
|
22
|
-
);
|
|
20
|
+
const { hasSelectedBlock, hasMultiSelection } =
|
|
21
|
+
useSelect( blockEditorStore );
|
|
23
22
|
const { clearSelectedBlock } = useDispatch( blockEditorStore );
|
|
24
23
|
|
|
25
24
|
return useRefEffect(
|