@wordpress/block-editor 12.3.0 → 12.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/README.md +12 -0
- package/build/autocompleters/block.js +5 -3
- package/build/autocompleters/block.js.map +1 -1
- package/build/components/alignment-control/index.js +4 -6
- package/build/components/alignment-control/index.js.map +1 -1
- package/build/components/alignment-control/ui.js +5 -9
- package/build/components/alignment-control/ui.js.map +1 -1
- package/build/components/autocomplete/index.js +2 -4
- package/build/components/autocomplete/index.js.map +1 -1
- package/build/components/block-actions/index.js +4 -0
- package/build/components/block-actions/index.js.map +1 -1
- package/build/components/block-alignment-control/constants.js +1 -5
- package/build/components/block-alignment-control/constants.js.map +1 -1
- package/build/components/block-alignment-control/index.js +4 -6
- package/build/components/block-alignment-control/index.js.map +1 -1
- package/build/components/block-alignment-control/ui.js +3 -4
- package/build/components/block-alignment-control/ui.js.map +1 -1
- package/build/components/block-alignment-control/ui.native.js +3 -3
- package/build/components/block-alignment-control/ui.native.js.map +1 -1
- package/build/components/block-alignment-matrix-control/index.js +0 -1
- package/build/components/block-alignment-matrix-control/index.js.map +1 -1
- package/build/components/block-breadcrumb/index.js +2 -3
- package/build/components/block-breadcrumb/index.js.map +1 -1
- package/build/components/block-controls/fill.js +2 -1
- package/build/components/block-controls/fill.js.map +1 -1
- package/build/components/block-controls/index.js +8 -8
- package/build/components/block-controls/index.js.map +1 -1
- package/build/components/block-controls/slot.js +2 -4
- package/build/components/block-controls/slot.js.map +1 -1
- package/build/components/block-controls/slot.native.js +4 -2
- package/build/components/block-controls/slot.native.js.map +1 -1
- package/build/components/block-edit/edit.js +4 -6
- package/build/components/block-edit/edit.js.map +1 -1
- package/build/components/block-edit/edit.native.js +2 -4
- package/build/components/block-edit/edit.native.js.map +1 -1
- package/build/components/block-edit/index.js +3 -2
- package/build/components/block-edit/index.js.map +1 -1
- package/build/components/block-heading-level-dropdown/heading-level-icon.js +47 -0
- package/build/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -0
- package/build/components/block-heading-level-dropdown/index.js +83 -0
- package/build/components/block-heading-level-dropdown/index.js.map +1 -0
- package/build/components/block-heading-level-dropdown/index.native.js +72 -0
- package/build/components/block-heading-level-dropdown/index.native.js.map +1 -0
- package/build/components/block-icon/index.native.js +6 -7
- package/build/components/block-icon/index.native.js.map +1 -1
- package/build/components/block-info-slot-fill/index.js +4 -2
- package/build/components/block-info-slot-fill/index.js.map +1 -1
- package/build/components/block-inspector/index.js +20 -87
- package/build/components/block-inspector/index.js.map +1 -1
- package/build/components/block-list/block-list-item.native.js +4 -2
- package/build/components/block-list/block-list-item.native.js.map +1 -1
- package/build/components/block-list/block.js +6 -4
- package/build/components/block-list/block.js.map +1 -1
- package/build/components/block-list/block.native.js +1 -0
- package/build/components/block-list/block.native.js.map +1 -1
- package/build/components/block-list/index.js +7 -4
- package/build/components/block-list/index.js.map +1 -1
- package/build/components/block-list/index.native.js +8 -9
- package/build/components/block-list/index.native.js.map +1 -1
- package/build/components/block-list/subdirectory-icon.js +4 -7
- package/build/components/block-list/subdirectory-icon.js.map +1 -1
- package/build/components/block-list/use-in-between-inserter.js +1 -3
- package/build/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build/components/block-list-appender/index.js +21 -19
- package/build/components/block-list-appender/index.js.map +1 -1
- package/build/components/block-mobile-toolbar/block-actions-menu.native.js +1 -1
- package/build/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
- package/build/components/block-mover/button.js +12 -12
- package/build/components/block-mover/button.js.map +1 -1
- package/build/components/block-mover/index.js +11 -10
- package/build/components/block-mover/index.js.map +1 -1
- package/build/components/block-navigation/dropdown.js +4 -6
- package/build/components/block-navigation/dropdown.js.map +1 -1
- package/build/components/block-parent-selector/index.js +4 -5
- package/build/components/block-parent-selector/index.js.map +1 -1
- package/build/components/block-pattern-setup/index.js +6 -8
- package/build/components/block-pattern-setup/index.js.map +1 -1
- package/build/components/block-patterns-list/index.js +6 -8
- package/build/components/block-patterns-list/index.js.map +1 -1
- package/build/components/block-popover/inbetween.js +4 -6
- package/build/components/block-popover/inbetween.js.map +1 -1
- package/build/components/block-popover/index.js +4 -6
- package/build/components/block-popover/index.js.map +1 -1
- package/build/components/block-preview/auto.js +2 -4
- package/build/components/block-preview/auto.js.map +1 -1
- package/build/components/block-preview/index.js +7 -7
- package/build/components/block-preview/index.js.map +1 -1
- package/build/components/block-quick-navigation/index.js +83 -0
- package/build/components/block-quick-navigation/index.js.map +1 -0
- package/build/components/block-removal-warning-modal/index.js +90 -0
- package/build/components/block-removal-warning-modal/index.js.map +1 -0
- package/build/components/block-selection-clearer/index.js +4 -7
- package/build/components/block-selection-clearer/index.js.map +1 -1
- package/build/components/block-settings/button.native.js +2 -1
- package/build/components/block-settings/button.native.js.map +1 -1
- package/build/components/block-settings/container.native.js +6 -6
- package/build/components/block-settings/container.native.js.map +1 -1
- package/build/components/block-settings-menu/block-settings-dropdown.js +10 -11
- package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build/components/block-settings-menu/index.js +4 -5
- package/build/components/block-settings-menu/index.js.map +1 -1
- package/build/components/block-settings-menu-controls/index.js +4 -5
- package/build/components/block-settings-menu-controls/index.js.map +1 -1
- package/build/components/block-switcher/index.js +1 -2
- package/build/components/block-switcher/index.js.map +1 -1
- package/build/components/block-switcher/pattern-transformations-menu.js +6 -8
- package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
- package/build/components/block-toolbar/index.js +4 -5
- package/build/components/block-toolbar/index.js.map +1 -1
- package/build/components/block-tools/block-contextual-toolbar.js +4 -5
- package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
- package/build/components/block-tools/block-selection-button.js +4 -5
- package/build/components/block-tools/block-selection-button.js.map +1 -1
- package/build/components/block-tools/index.js +13 -6
- package/build/components/block-tools/index.js.map +1 -1
- package/build/components/block-tools/insertion-point.js +5 -5
- package/build/components/block-tools/insertion-point.js.map +1 -1
- package/build/components/block-tools/selected-block-popover.js +8 -8
- package/build/components/block-tools/selected-block-popover.js.map +1 -1
- package/build/components/block-types-list/index.native.js +4 -6
- package/build/components/block-types-list/index.native.js.map +1 -1
- package/build/components/block-vertical-alignment-control/index.js +4 -6
- package/build/components/block-vertical-alignment-control/index.js.map +1 -1
- package/build/components/block-vertical-alignment-control/ui.js +5 -12
- package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
- package/build/components/border-radius-control/all-input-control.js +2 -6
- package/build/components/border-radius-control/all-input-control.js.map +1 -1
- package/build/components/border-radius-control/input-controls.js +2 -6
- package/build/components/border-radius-control/input-controls.js.map +1 -1
- package/build/components/border-radius-control/linked-button.js +2 -6
- package/build/components/border-radius-control/linked-button.js.map +1 -1
- package/build/components/color-palette/control.js +2 -4
- package/build/components/color-palette/control.js.map +1 -1
- package/build/components/color-palette/with-color-context.js +2 -4
- package/build/components/color-palette/with-color-context.js.map +1 -1
- package/build/components/colors/utils.js +7 -3
- package/build/components/colors/utils.js.map +1 -1
- package/build/components/colors/with-colors.js +11 -16
- package/build/components/colors/with-colors.js.map +1 -1
- package/build/components/colors-gradients/control.js +7 -5
- package/build/components/colors-gradients/control.js.map +1 -1
- package/build/components/colors-gradients/dropdown.js +12 -11
- package/build/components/colors-gradients/dropdown.js.map +1 -1
- package/build/components/colors-gradients/panel-color-gradient-settings.js +7 -5
- package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
- package/build/components/copy-handler/index.js +5 -6
- package/build/components/copy-handler/index.js.map +1 -1
- package/build/components/duotone-control/index.js +1 -2
- package/build/components/duotone-control/index.js.map +1 -1
- package/build/components/editable-text/index.js +6 -7
- package/build/components/editable-text/index.js.map +1 -1
- package/build/components/font-appearance-control/index.js +2 -6
- package/build/components/font-appearance-control/index.js.map +1 -1
- package/build/components/font-family/index.js +4 -5
- package/build/components/font-family/index.js.map +1 -1
- package/build/components/font-sizes/font-size-picker.js +2 -4
- package/build/components/font-sizes/font-size-picker.js.map +1 -1
- package/build/components/font-sizes/utils.js +3 -3
- package/build/components/font-sizes/utils.js.map +1 -1
- package/build/components/font-sizes/with-font-sizes.js +7 -7
- package/build/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build/components/global-styles/color-panel.js +15 -16
- package/build/components/global-styles/color-panel.js.map +1 -1
- package/build/components/global-styles/effects-panel.js +2 -1
- package/build/components/global-styles/effects-panel.js.map +1 -1
- package/build/components/global-styles/filters-panel.js +2 -1
- package/build/components/global-styles/filters-panel.js.map +1 -1
- package/build/components/global-styles/index.js +6 -0
- package/build/components/global-styles/index.js.map +1 -1
- package/build/components/global-styles/typography-panel.js +7 -7
- package/build/components/global-styles/typography-panel.js.map +1 -1
- package/build/components/global-styles/use-global-styles-output.js +19 -16
- package/build/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build/components/gradients/with-gradient.js +2 -6
- package/build/components/gradients/with-gradient.js.map +1 -1
- package/build/components/iframe/index.js +5 -7
- package/build/components/iframe/index.js.map +1 -1
- package/build/components/image-editor/constants.js +1 -2
- package/build/components/image-editor/constants.js.map +1 -1
- package/build/components/index.js +9 -9
- package/build/components/index.js.map +1 -1
- package/build/components/index.native.js +9 -0
- package/build/components/index.native.js.map +1 -1
- package/build/components/inner-blocks/index.js +9 -8
- package/build/components/inner-blocks/index.js.map +1 -1
- package/build/components/inner-blocks/index.native.js +8 -7
- package/build/components/inner-blocks/index.native.js.map +1 -1
- package/build/components/inner-blocks/use-nested-settings-update.js +24 -30
- package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
- package/build/components/inner-blocks/with-client-id.js +2 -6
- package/build/components/inner-blocks/with-client-id.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/explorer.js +2 -1
- package/build/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
- package/build/components/inserter/block-patterns-tab.js +33 -5
- package/build/components/inserter/block-patterns-tab.js.map +1 -1
- package/build/components/inserter/hooks/use-block-types-state.js +4 -3
- package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
- package/build/components/inserter/hooks/use-insertion-point.js +1 -1
- package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
- package/build/components/inserter/index.js +8 -8
- package/build/components/inserter/index.js.map +1 -1
- package/build/components/inserter/index.native.js +4 -5
- package/build/components/inserter/index.native.js.map +1 -1
- package/build/components/inserter/library.js +1 -1
- package/build/components/inserter/library.js.map +1 -1
- package/build/components/inserter/media-tab/media-list.js +2 -6
- package/build/components/inserter/media-tab/media-list.js.map +1 -1
- package/build/components/inserter/media-tab/media-preview.js +4 -6
- package/build/components/inserter/media-tab/media-preview.js.map +1 -1
- package/build/components/inserter/media-tab/media-tab.js +1 -1
- package/build/components/inserter/media-tab/media-tab.js.map +1 -1
- package/build/components/inserter/reusable-blocks-tab.js +3 -3
- package/build/components/inserter/reusable-blocks-tab.js.map +1 -1
- package/build/components/inserter/tabs.js +3 -3
- package/build/components/inserter/tabs.js.map +1 -1
- package/build/components/inserter-list-item/index.js +4 -5
- package/build/components/inserter-list-item/index.js.map +1 -1
- package/build/components/inserter-listbox/group.js +4 -7
- package/build/components/inserter-listbox/group.js.map +1 -1
- package/build/components/inserter-listbox/item.js +8 -7
- package/build/components/inserter-listbox/item.js.map +1 -1
- package/build/components/inserter-listbox/row.js +4 -5
- package/build/components/inserter-listbox/row.js.map +1 -1
- package/build/components/inspector-controls/block-support-slot-container.js +2 -6
- package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
- package/build/components/inspector-controls/fill.native.js +2 -1
- package/build/components/inspector-controls/fill.native.js.map +1 -1
- package/build/components/inspector-controls/index.js +4 -6
- package/build/components/inspector-controls/index.js.map +1 -1
- package/build/components/inspector-controls/slot.js +4 -6
- package/build/components/inspector-controls/slot.js.map +1 -1
- package/build/components/inspector-controls/slot.native.js +2 -1
- package/build/components/inspector-controls/slot.native.js.map +1 -1
- package/build/components/justify-content-control/index.js +4 -6
- package/build/components/justify-content-control/index.js.map +1 -1
- package/build/components/justify-content-control/ui.js +4 -7
- package/build/components/justify-content-control/ui.js.map +1 -1
- package/build/components/letter-spacing-control/index.js +2 -4
- package/build/components/letter-spacing-control/index.js.map +1 -1
- package/build/components/line-height-control/index.js +2 -4
- package/build/components/line-height-control/index.js.map +1 -1
- package/build/components/link-control/index.js +3 -9
- package/build/components/link-control/index.js.map +1 -1
- package/build/components/link-control/search-create-button.js +2 -4
- package/build/components/link-control/search-create-button.js.map +1 -1
- package/build/components/link-control/search-input.js +3 -1
- package/build/components/link-control/search-input.js.map +1 -1
- package/build/components/link-control/search-item.js +2 -4
- package/build/components/link-control/search-item.js.map +1 -1
- package/build/components/link-control/search-results.js +2 -4
- package/build/components/link-control/search-results.js.map +1 -1
- package/build/components/list-view/appender.js +4 -6
- package/build/components/list-view/appender.js.map +1 -1
- package/build/components/list-view/aria-referenced-text.js +4 -8
- package/build/components/list-view/aria-referenced-text.js.map +1 -1
- package/build/components/list-view/block-contents.js +4 -5
- package/build/components/list-view/block-contents.js.map +1 -1
- package/build/components/list-view/block-select-button.js +13 -2
- package/build/components/list-view/block-select-button.js.map +1 -1
- package/build/components/list-view/branch.js +9 -8
- package/build/components/list-view/branch.js.map +1 -1
- package/build/components/list-view/drop-indicator.js +62 -11
- package/build/components/list-view/drop-indicator.js.map +1 -1
- package/build/components/list-view/index.js +4 -6
- package/build/components/list-view/index.js.map +1 -1
- package/build/components/list-view/leaf.js +4 -5
- package/build/components/list-view/leaf.js.map +1 -1
- package/build/components/list-view/use-list-view-client-ids.js +2 -22
- package/build/components/list-view/use-list-view-client-ids.js.map +1 -1
- package/build/components/list-view/use-list-view-drop-zone.js +46 -34
- package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
- package/build/components/media-placeholder/index.js +38 -13
- package/build/components/media-placeholder/index.js.map +1 -1
- package/build/components/media-replace-flow/index.js +1 -3
- package/build/components/media-replace-flow/index.js.map +1 -1
- package/build/components/navigable-toolbar/index.js +8 -8
- package/build/components/navigable-toolbar/index.js.map +1 -1
- package/build/components/panel-color-settings/index.js +4 -5
- package/build/components/panel-color-settings/index.js.map +1 -1
- package/build/components/plain-text/index.js +8 -8
- package/build/components/plain-text/index.js.map +1 -1
- package/build/components/plain-text/index.native.js +7 -6
- package/build/components/plain-text/index.native.js.map +1 -1
- package/build/components/preview-options/index.js +5 -4
- package/build/components/preview-options/index.js.map +1 -1
- package/build/components/provider/index.js +2 -4
- package/build/components/provider/index.js.map +1 -1
- package/build/components/provider/with-registry-provider.js +8 -10
- package/build/components/provider/with-registry-provider.js.map +1 -1
- package/build/components/publish-date-time-picker/index.js +4 -5
- package/build/components/publish-date-time-picker/index.js.map +1 -1
- package/build/components/resizable-box-popover/index.js +5 -5
- package/build/components/resizable-box-popover/index.js.map +1 -1
- package/build/components/rich-text/content.js +99 -0
- package/build/components/rich-text/content.js.map +1 -0
- package/build/components/rich-text/format-toolbar/index.js +1 -2
- package/build/components/rich-text/format-toolbar/index.js.map +1 -1
- package/build/components/rich-text/index.js +8 -42
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/rich-text/index.native.js +6 -34
- package/build/components/rich-text/index.native.js.map +1 -1
- package/build/components/rich-text/toolbar-button.js +2 -6
- package/build/components/rich-text/toolbar-button.js.map +1 -1
- package/build/components/spacing-sizes-control/index.js +8 -8
- package/build/components/spacing-sizes-control/index.js.map +1 -1
- package/build/components/tool-selector/index.js +2 -6
- package/build/components/tool-selector/index.js.map +1 -1
- package/build/components/unit-control/index.js +4 -5
- package/build/components/unit-control/index.js.map +1 -1
- package/build/components/url-input/index.js +8 -8
- package/build/components/url-input/index.js.map +1 -1
- package/build/components/url-input/index.native.js +4 -7
- package/build/components/url-input/index.native.js.map +1 -1
- package/build/components/url-popover/image-url-input-ui.js +21 -14
- package/build/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build/components/url-popover/index.js +4 -5
- package/build/components/url-popover/index.js.map +1 -1
- package/build/components/url-popover/link-editor.js +4 -5
- package/build/components/url-popover/link-editor.js.map +1 -1
- package/build/components/url-popover/link-viewer.js +4 -5
- package/build/components/url-popover/link-viewer.js.map +1 -1
- package/build/components/use-block-display-information/index.js +30 -2
- package/build/components/use-block-display-information/index.js.map +1 -1
- package/build/components/video-player/index.native.js +2 -4
- package/build/components/video-player/index.native.js.map +1 -1
- package/build/components/warning/index.native.js +4 -5
- package/build/components/warning/index.native.js.map +1 -1
- package/build/components/writing-flow/index.js +2 -4
- package/build/components/writing-flow/index.js.map +1 -1
- package/build/components/writing-flow/use-drag-selection.js +1 -1
- package/build/components/writing-flow/use-drag-selection.js.map +1 -1
- package/build/components/writing-flow/use-tab-nav.js +32 -4
- package/build/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build/hooks/align.js +8 -8
- package/build/hooks/align.js.map +1 -1
- package/build/hooks/anchor.js +4 -2
- package/build/hooks/anchor.js.map +1 -1
- package/build/hooks/behaviors.js +75 -37
- package/build/hooks/behaviors.js.map +1 -1
- package/build/hooks/border.js +4 -5
- package/build/hooks/border.js.map +1 -1
- package/build/hooks/color.js +4 -5
- package/build/hooks/color.js.map +1 -1
- package/build/hooks/content-lock-ui.js +8 -10
- package/build/hooks/content-lock-ui.js.map +1 -1
- package/build/hooks/custom-class-name.js +4 -2
- package/build/hooks/custom-class-name.js.map +1 -1
- package/build/hooks/dimensions.js +7 -7
- package/build/hooks/dimensions.js.map +1 -1
- package/build/hooks/duotone.js +5 -5
- package/build/hooks/duotone.js.map +1 -1
- package/build/hooks/font-family.js +2 -6
- package/build/hooks/font-family.js.map +1 -1
- package/build/hooks/font-size.js +10 -8
- package/build/hooks/font-size.js.map +1 -1
- package/build/hooks/layout.js +30 -28
- package/build/hooks/layout.js.map +1 -1
- package/build/hooks/position.js +24 -16
- package/build/hooks/position.js.map +1 -1
- package/build/hooks/style.js +8 -5
- package/build/hooks/style.js.map +1 -1
- package/build/hooks/supports.js +1 -1
- package/build/hooks/supports.js.map +1 -1
- package/build/hooks/typography.native.js +3 -1
- package/build/hooks/typography.native.js.map +1 -1
- package/build/hooks/use-typography-props.js +10 -17
- package/build/hooks/use-typography-props.js.map +1 -1
- package/build/index.js +0 -14
- package/build/index.js.map +1 -1
- package/build/layouts/constrained.js +3 -1
- package/build/layouts/constrained.js.map +1 -1
- package/build/layouts/definitions.js +154 -0
- package/build/layouts/definitions.js.map +1 -0
- package/build/layouts/flex.js +8 -5
- package/build/layouts/flex.js.map +1 -1
- package/build/layouts/flow.js +3 -1
- package/build/layouts/flow.js.map +1 -1
- package/build/layouts/grid.js +3 -1
- package/build/layouts/grid.js.map +1 -1
- package/build/layouts/utils.js +8 -2
- package/build/layouts/utils.js.map +1 -1
- package/build/private-apis.js +17 -1
- package/build/private-apis.js.map +1 -1
- package/build/store/actions.js +2 -62
- package/build/store/actions.js.map +1 -1
- package/build/store/private-actions.js +200 -0
- package/build/store/private-actions.js.map +1 -1
- package/build/store/private-selectors.js +72 -4
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/reducer.js +52 -1
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +42 -42
- package/build/store/selectors.js.map +1 -1
- package/build/utils/object.js +39 -0
- package/build/utils/object.js.map +1 -1
- package/build-module/autocompleters/block.js +5 -3
- package/build-module/autocompleters/block.js.map +1 -1
- package/build-module/components/alignment-control/index.js +4 -5
- package/build-module/components/alignment-control/index.js.map +1 -1
- package/build-module/components/alignment-control/ui.js +5 -6
- package/build-module/components/alignment-control/ui.js.map +1 -1
- package/build-module/components/autocomplete/index.js +2 -3
- package/build-module/components/autocomplete/index.js.map +1 -1
- package/build-module/components/block-actions/index.js +4 -0
- package/build-module/components/block-actions/index.js.map +1 -1
- package/build-module/components/block-alignment-control/constants.js +0 -3
- package/build-module/components/block-alignment-control/constants.js.map +1 -1
- package/build-module/components/block-alignment-control/index.js +4 -5
- package/build-module/components/block-alignment-control/index.js.map +1 -1
- package/build-module/components/block-alignment-control/ui.js +4 -4
- package/build-module/components/block-alignment-control/ui.js.map +1 -1
- package/build-module/components/block-alignment-control/ui.native.js +3 -2
- package/build-module/components/block-alignment-control/ui.native.js.map +1 -1
- package/build-module/components/block-alignment-matrix-control/index.js +0 -1
- package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
- package/build-module/components/block-breadcrumb/index.js +2 -3
- package/build-module/components/block-breadcrumb/index.js.map +1 -1
- package/build-module/components/block-controls/fill.js +2 -1
- package/build-module/components/block-controls/fill.js.map +1 -1
- package/build-module/components/block-controls/index.js +8 -7
- package/build-module/components/block-controls/index.js.map +1 -1
- package/build-module/components/block-controls/slot.js +2 -3
- package/build-module/components/block-controls/slot.js.map +1 -1
- package/build-module/components/block-controls/slot.native.js +4 -2
- package/build-module/components/block-controls/slot.native.js.map +1 -1
- package/build-module/components/block-edit/edit.js +4 -5
- package/build-module/components/block-edit/edit.js.map +1 -1
- package/build-module/components/block-edit/edit.native.js +2 -3
- package/build-module/components/block-edit/edit.native.js.map +1 -1
- package/build-module/components/block-edit/index.js +3 -2
- package/build-module/components/block-edit/index.js.map +1 -1
- package/build-module/components/block-heading-level-dropdown/heading-level-icon.js +39 -0
- package/build-module/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -0
- package/build-module/components/block-heading-level-dropdown/index.js +71 -0
- package/build-module/components/block-heading-level-dropdown/index.js.map +1 -0
- package/build-module/components/block-heading-level-dropdown/index.native.js +60 -0
- package/build-module/components/block-heading-level-dropdown/index.native.js.map +1 -0
- package/build-module/components/block-icon/index.native.js +6 -6
- package/build-module/components/block-icon/index.native.js.map +1 -1
- package/build-module/components/block-info-slot-fill/index.js +4 -2
- package/build-module/components/block-info-slot-fill/index.js.map +1 -1
- package/build-module/components/block-inspector/index.js +20 -88
- package/build-module/components/block-inspector/index.js.map +1 -1
- package/build-module/components/block-list/block-list-item.native.js +4 -2
- package/build-module/components/block-list/block-list-item.native.js.map +1 -1
- package/build-module/components/block-list/block.js +6 -4
- package/build-module/components/block-list/block.js.map +1 -1
- package/build-module/components/block-list/block.native.js +1 -0
- package/build-module/components/block-list/block.native.js.map +1 -1
- package/build-module/components/block-list/index.js +7 -4
- package/build-module/components/block-list/index.js.map +1 -1
- package/build-module/components/block-list/index.native.js +8 -8
- package/build-module/components/block-list/index.native.js.map +1 -1
- package/build-module/components/block-list/subdirectory-icon.js +4 -4
- package/build-module/components/block-list/subdirectory-icon.js.map +1 -1
- package/build-module/components/block-list/use-in-between-inserter.js +1 -3
- package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build-module/components/block-list-appender/index.js +21 -19
- package/build-module/components/block-list-appender/index.js.map +1 -1
- package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js +1 -1
- package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
- package/build-module/components/block-mover/button.js +12 -11
- package/build-module/components/block-mover/button.js.map +1 -1
- package/build-module/components/block-mover/index.js +11 -9
- package/build-module/components/block-mover/index.js.map +1 -1
- package/build-module/components/block-navigation/dropdown.js +4 -5
- package/build-module/components/block-navigation/dropdown.js.map +1 -1
- package/build-module/components/block-parent-selector/index.js +4 -4
- package/build-module/components/block-parent-selector/index.js.map +1 -1
- package/build-module/components/block-pattern-setup/index.js +6 -7
- package/build-module/components/block-pattern-setup/index.js.map +1 -1
- package/build-module/components/block-patterns-list/index.js +6 -7
- package/build-module/components/block-patterns-list/index.js.map +1 -1
- package/build-module/components/block-popover/inbetween.js +4 -5
- package/build-module/components/block-popover/inbetween.js.map +1 -1
- package/build-module/components/block-popover/index.js +4 -5
- package/build-module/components/block-popover/index.js.map +1 -1
- package/build-module/components/block-preview/auto.js +2 -3
- package/build-module/components/block-preview/auto.js.map +1 -1
- package/build-module/components/block-preview/index.js +7 -7
- package/build-module/components/block-preview/index.js.map +1 -1
- package/build-module/components/block-quick-navigation/index.js +69 -0
- package/build-module/components/block-quick-navigation/index.js.map +1 -0
- package/build-module/components/block-removal-warning-modal/index.js +76 -0
- package/build-module/components/block-removal-warning-modal/index.js.map +1 -0
- package/build-module/components/block-selection-clearer/index.js +4 -4
- package/build-module/components/block-selection-clearer/index.js.map +1 -1
- package/build-module/components/block-settings/button.native.js +2 -1
- package/build-module/components/block-settings/button.native.js.map +1 -1
- package/build-module/components/block-settings/container.native.js +6 -5
- package/build-module/components/block-settings/container.native.js.map +1 -1
- package/build-module/components/block-settings-menu/block-settings-dropdown.js +10 -10
- package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build-module/components/block-settings-menu/index.js +4 -4
- package/build-module/components/block-settings-menu/index.js.map +1 -1
- package/build-module/components/block-settings-menu-controls/index.js +4 -4
- package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
- package/build-module/components/block-switcher/index.js +1 -2
- package/build-module/components/block-switcher/index.js.map +1 -1
- package/build-module/components/block-switcher/pattern-transformations-menu.js +6 -7
- package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
- package/build-module/components/block-toolbar/index.js +4 -4
- package/build-module/components/block-toolbar/index.js.map +1 -1
- package/build-module/components/block-tools/block-contextual-toolbar.js +4 -4
- package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
- package/build-module/components/block-tools/block-selection-button.js +4 -4
- package/build-module/components/block-tools/block-selection-button.js.map +1 -1
- package/build-module/components/block-tools/index.js +13 -5
- package/build-module/components/block-tools/index.js.map +1 -1
- package/build-module/components/block-tools/insertion-point.js +5 -4
- package/build-module/components/block-tools/insertion-point.js.map +1 -1
- package/build-module/components/block-tools/selected-block-popover.js +8 -7
- package/build-module/components/block-tools/selected-block-popover.js.map +1 -1
- package/build-module/components/block-types-list/index.native.js +4 -5
- package/build-module/components/block-types-list/index.native.js.map +1 -1
- package/build-module/components/block-vertical-alignment-control/index.js +4 -5
- package/build-module/components/block-vertical-alignment-control/index.js.map +1 -1
- package/build-module/components/block-vertical-alignment-control/ui.js +5 -9
- package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
- package/build-module/components/border-radius-control/all-input-control.js +2 -3
- package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
- package/build-module/components/border-radius-control/input-controls.js +2 -3
- package/build-module/components/border-radius-control/input-controls.js.map +1 -1
- package/build-module/components/border-radius-control/linked-button.js +2 -3
- package/build-module/components/border-radius-control/linked-button.js.map +1 -1
- package/build-module/components/color-palette/control.js +2 -3
- package/build-module/components/color-palette/control.js.map +1 -1
- package/build-module/components/color-palette/with-color-context.js +2 -3
- package/build-module/components/color-palette/with-color-context.js.map +1 -1
- package/build-module/components/colors/utils.js +5 -1
- package/build-module/components/colors/utils.js.map +1 -1
- package/build-module/components/colors/with-colors.js +10 -14
- package/build-module/components/colors/with-colors.js.map +1 -1
- package/build-module/components/colors-gradients/control.js +7 -4
- package/build-module/components/colors-gradients/control.js.map +1 -1
- package/build-module/components/colors-gradients/dropdown.js +12 -10
- package/build-module/components/colors-gradients/dropdown.js.map +1 -1
- package/build-module/components/colors-gradients/panel-color-gradient-settings.js +7 -4
- package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
- package/build-module/components/copy-handler/index.js +5 -6
- package/build-module/components/copy-handler/index.js.map +1 -1
- package/build-module/components/duotone-control/index.js +1 -2
- package/build-module/components/duotone-control/index.js.map +1 -1
- package/build-module/components/editable-text/index.js +6 -6
- package/build-module/components/editable-text/index.js.map +1 -1
- package/build-module/components/font-appearance-control/index.js +2 -3
- package/build-module/components/font-appearance-control/index.js.map +1 -1
- package/build-module/components/font-family/index.js +4 -4
- package/build-module/components/font-family/index.js.map +1 -1
- package/build-module/components/font-sizes/font-size-picker.js +2 -3
- package/build-module/components/font-sizes/font-size-picker.js.map +1 -1
- package/build-module/components/font-sizes/utils.js +2 -2
- package/build-module/components/font-sizes/utils.js.map +1 -1
- package/build-module/components/font-sizes/with-font-sizes.js +7 -6
- package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build-module/components/global-styles/color-panel.js +15 -15
- package/build-module/components/global-styles/color-panel.js.map +1 -1
- package/build-module/components/global-styles/effects-panel.js +2 -1
- package/build-module/components/global-styles/effects-panel.js.map +1 -1
- package/build-module/components/global-styles/filters-panel.js +2 -1
- package/build-module/components/global-styles/filters-panel.js.map +1 -1
- package/build-module/components/global-styles/index.js +1 -1
- package/build-module/components/global-styles/index.js.map +1 -1
- package/build-module/components/global-styles/typography-panel.js +7 -7
- package/build-module/components/global-styles/typography-panel.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js +11 -10
- package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build-module/components/gradients/with-gradient.js +2 -3
- package/build-module/components/gradients/with-gradient.js.map +1 -1
- package/build-module/components/iframe/index.js +5 -6
- package/build-module/components/iframe/index.js.map +1 -1
- package/build-module/components/image-editor/constants.js +1 -2
- package/build-module/components/image-editor/constants.js.map +1 -1
- package/build-module/components/index.js +1 -1
- package/build-module/components/index.js.map +1 -1
- package/build-module/components/index.native.js +1 -0
- package/build-module/components/index.native.js.map +1 -1
- package/build-module/components/inner-blocks/index.js +9 -7
- package/build-module/components/inner-blocks/index.js.map +1 -1
- package/build-module/components/inner-blocks/index.native.js +8 -6
- package/build-module/components/inner-blocks/index.native.js.map +1 -1
- package/build-module/components/inner-blocks/use-nested-settings-update.js +24 -27
- package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
- package/build-module/components/inner-blocks/with-client-id.js +2 -3
- package/build-module/components/inner-blocks/with-client-id.js.map +1 -1
- package/build-module/components/inserter/block-patterns-explorer/explorer.js +2 -1
- package/build-module/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab.js +33 -7
- package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
- package/build-module/components/inserter/hooks/use-block-types-state.js +4 -3
- package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
- package/build-module/components/inserter/hooks/use-insertion-point.js +1 -1
- package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
- package/build-module/components/inserter/index.js +8 -7
- package/build-module/components/inserter/index.js.map +1 -1
- package/build-module/components/inserter/index.native.js +4 -4
- package/build-module/components/inserter/index.native.js.map +1 -1
- package/build-module/components/inserter/library.js +1 -1
- package/build-module/components/inserter/library.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-list.js +2 -3
- package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-preview.js +4 -5
- package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-tab.js +3 -3
- package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
- package/build-module/components/inserter/reusable-blocks-tab.js +3 -3
- package/build-module/components/inserter/reusable-blocks-tab.js.map +1 -1
- package/build-module/components/inserter/tabs.js +3 -3
- package/build-module/components/inserter/tabs.js.map +1 -1
- package/build-module/components/inserter-list-item/index.js +4 -4
- package/build-module/components/inserter-list-item/index.js.map +1 -1
- package/build-module/components/inserter-listbox/group.js +4 -4
- package/build-module/components/inserter-listbox/group.js.map +1 -1
- package/build-module/components/inserter-listbox/item.js +8 -6
- package/build-module/components/inserter-listbox/item.js.map +1 -1
- package/build-module/components/inserter-listbox/row.js +4 -4
- package/build-module/components/inserter-listbox/row.js.map +1 -1
- package/build-module/components/inspector-controls/block-support-slot-container.js +2 -3
- package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
- package/build-module/components/inspector-controls/fill.native.js +2 -1
- package/build-module/components/inspector-controls/fill.native.js.map +1 -1
- package/build-module/components/inspector-controls/index.js +4 -5
- package/build-module/components/inspector-controls/index.js.map +1 -1
- package/build-module/components/inspector-controls/slot.js +4 -5
- package/build-module/components/inspector-controls/slot.js.map +1 -1
- package/build-module/components/inspector-controls/slot.native.js +2 -1
- package/build-module/components/inspector-controls/slot.native.js.map +1 -1
- package/build-module/components/justify-content-control/index.js +4 -5
- package/build-module/components/justify-content-control/index.js.map +1 -1
- package/build-module/components/justify-content-control/ui.js +4 -4
- package/build-module/components/justify-content-control/ui.js.map +1 -1
- package/build-module/components/letter-spacing-control/index.js +2 -3
- package/build-module/components/letter-spacing-control/index.js.map +1 -1
- package/build-module/components/line-height-control/index.js +2 -3
- package/build-module/components/line-height-control/index.js.map +1 -1
- package/build-module/components/link-control/index.js +3 -9
- package/build-module/components/link-control/index.js.map +1 -1
- package/build-module/components/link-control/search-create-button.js +2 -3
- 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/search-item.js +2 -3
- package/build-module/components/link-control/search-item.js.map +1 -1
- package/build-module/components/link-control/search-results.js +2 -3
- package/build-module/components/link-control/search-results.js.map +1 -1
- package/build-module/components/list-view/appender.js +4 -5
- package/build-module/components/list-view/appender.js.map +1 -1
- package/build-module/components/list-view/aria-referenced-text.js +4 -5
- package/build-module/components/list-view/aria-referenced-text.js.map +1 -1
- package/build-module/components/list-view/block-contents.js +4 -4
- package/build-module/components/list-view/block-contents.js.map +1 -1
- package/build-module/components/list-view/block-select-button.js +14 -4
- package/build-module/components/list-view/block-select-button.js.map +1 -1
- package/build-module/components/list-view/branch.js +9 -7
- package/build-module/components/list-view/branch.js.map +1 -1
- package/build-module/components/list-view/drop-indicator.js +61 -11
- package/build-module/components/list-view/drop-indicator.js.map +1 -1
- package/build-module/components/list-view/index.js +4 -5
- package/build-module/components/list-view/index.js.map +1 -1
- package/build-module/components/list-view/leaf.js +4 -4
- package/build-module/components/list-view/leaf.js.map +1 -1
- package/build-module/components/list-view/use-list-view-client-ids.js +2 -22
- package/build-module/components/list-view/use-list-view-client-ids.js.map +1 -1
- package/build-module/components/list-view/use-list-view-drop-zone.js +45 -34
- package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
- package/build-module/components/media-placeholder/index.js +38 -13
- package/build-module/components/media-placeholder/index.js.map +1 -1
- package/build-module/components/media-replace-flow/index.js +1 -3
- package/build-module/components/media-replace-flow/index.js.map +1 -1
- package/build-module/components/navigable-toolbar/index.js +8 -7
- package/build-module/components/navigable-toolbar/index.js.map +1 -1
- package/build-module/components/panel-color-settings/index.js +4 -4
- package/build-module/components/panel-color-settings/index.js.map +1 -1
- package/build-module/components/plain-text/index.js +8 -7
- package/build-module/components/plain-text/index.js.map +1 -1
- package/build-module/components/plain-text/index.native.js +7 -5
- package/build-module/components/plain-text/index.native.js.map +1 -1
- package/build-module/components/preview-options/index.js +5 -4
- package/build-module/components/preview-options/index.js.map +1 -1
- package/build-module/components/provider/index.js +2 -3
- package/build-module/components/provider/index.js.map +1 -1
- package/build-module/components/provider/with-registry-provider.js +8 -7
- package/build-module/components/provider/with-registry-provider.js.map +1 -1
- package/build-module/components/publish-date-time-picker/index.js +4 -4
- package/build-module/components/publish-date-time-picker/index.js.map +1 -1
- package/build-module/components/resizable-box-popover/index.js +5 -4
- package/build-module/components/resizable-box-popover/index.js.map +1 -1
- package/build-module/components/rich-text/content.js +85 -0
- package/build-module/components/rich-text/content.js.map +1 -0
- package/build-module/components/rich-text/format-toolbar/index.js +1 -2
- package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
- package/build-module/components/rich-text/index.js +8 -42
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/rich-text/index.native.js +6 -34
- package/build-module/components/rich-text/index.native.js.map +1 -1
- package/build-module/components/rich-text/toolbar-button.js +2 -3
- package/build-module/components/rich-text/toolbar-button.js.map +1 -1
- package/build-module/components/spacing-sizes-control/index.js +8 -7
- package/build-module/components/spacing-sizes-control/index.js.map +1 -1
- package/build-module/components/tool-selector/index.js +2 -3
- package/build-module/components/tool-selector/index.js.map +1 -1
- package/build-module/components/unit-control/index.js +4 -4
- package/build-module/components/unit-control/index.js.map +1 -1
- package/build-module/components/url-input/index.js +8 -7
- package/build-module/components/url-input/index.js.map +1 -1
- package/build-module/components/url-input/index.native.js +4 -4
- package/build-module/components/url-input/index.native.js.map +1 -1
- package/build-module/components/url-popover/image-url-input-ui.js +22 -15
- package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build-module/components/url-popover/index.js +4 -4
- package/build-module/components/url-popover/index.js.map +1 -1
- package/build-module/components/url-popover/link-editor.js +4 -4
- package/build-module/components/url-popover/link-editor.js.map +1 -1
- package/build-module/components/url-popover/link-viewer.js +4 -4
- package/build-module/components/url-popover/link-viewer.js.map +1 -1
- package/build-module/components/use-block-display-information/index.js +29 -2
- package/build-module/components/use-block-display-information/index.js.map +1 -1
- package/build-module/components/video-player/index.native.js +2 -3
- package/build-module/components/video-player/index.native.js.map +1 -1
- package/build-module/components/warning/index.native.js +4 -4
- package/build-module/components/warning/index.native.js.map +1 -1
- package/build-module/components/writing-flow/index.js +2 -3
- package/build-module/components/writing-flow/index.js.map +1 -1
- package/build-module/components/writing-flow/use-drag-selection.js +1 -1
- package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
- package/build-module/components/writing-flow/use-tab-nav.js +32 -5
- package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build-module/hooks/align.js +8 -7
- package/build-module/hooks/align.js.map +1 -1
- package/build-module/hooks/anchor.js +4 -2
- package/build-module/hooks/anchor.js.map +1 -1
- package/build-module/hooks/behaviors.js +76 -34
- package/build-module/hooks/behaviors.js.map +1 -1
- package/build-module/hooks/border.js +4 -4
- package/build-module/hooks/border.js.map +1 -1
- package/build-module/hooks/color.js +4 -4
- package/build-module/hooks/color.js.map +1 -1
- package/build-module/hooks/content-lock-ui.js +8 -7
- package/build-module/hooks/content-lock-ui.js.map +1 -1
- package/build-module/hooks/custom-class-name.js +4 -2
- package/build-module/hooks/custom-class-name.js.map +1 -1
- package/build-module/hooks/dimensions.js +7 -6
- package/build-module/hooks/dimensions.js.map +1 -1
- package/build-module/hooks/duotone.js +5 -4
- package/build-module/hooks/duotone.js.map +1 -1
- package/build-module/hooks/font-family.js +1 -5
- package/build-module/hooks/font-family.js.map +1 -1
- package/build-module/hooks/font-size.js +10 -9
- package/build-module/hooks/font-size.js.map +1 -1
- package/build-module/hooks/layout.js +26 -24
- package/build-module/hooks/layout.js.map +1 -1
- package/build-module/hooks/position.js +23 -15
- package/build-module/hooks/position.js.map +1 -1
- package/build-module/hooks/style.js +8 -4
- package/build-module/hooks/style.js.map +1 -1
- package/build-module/hooks/supports.js +1 -1
- package/build-module/hooks/supports.js.map +1 -1
- package/build-module/hooks/typography.native.js +3 -1
- package/build-module/hooks/typography.native.js.map +1 -1
- package/build-module/hooks/use-typography-props.js +8 -15
- package/build-module/hooks/use-typography-props.js.map +1 -1
- package/build-module/index.js +1 -1
- package/build-module/index.js.map +1 -1
- package/build-module/layouts/constrained.js +2 -1
- package/build-module/layouts/constrained.js.map +1 -1
- package/build-module/layouts/definitions.js +147 -0
- package/build-module/layouts/definitions.js.map +1 -0
- package/build-module/layouts/flex.js +8 -6
- package/build-module/layouts/flex.js.map +1 -1
- package/build-module/layouts/flow.js +2 -1
- package/build-module/layouts/flow.js.map +1 -1
- package/build-module/layouts/grid.js +2 -1
- package/build-module/layouts/grid.js.map +1 -1
- package/build-module/layouts/utils.js +7 -2
- package/build-module/layouts/utils.js.map +1 -1
- package/build-module/private-apis.js +12 -1
- package/build-module/private-apis.js.map +1 -1
- package/build-module/store/actions.js +2 -62
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/private-actions.js +186 -0
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/private-selectors.js +63 -3
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/reducer.js +52 -1
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +42 -42
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/object.js +37 -1
- package/build-module/utils/object.js.map +1 -1
- package/build-style/style-rtl.css +16 -21
- package/build-style/style.css +16 -21
- package/package.json +31 -31
- package/src/autocompleters/block.js +4 -2
- package/src/components/alignment-control/ui.js +1 -2
- package/src/components/block-actions/index.js +10 -0
- package/src/components/block-alignment-control/constants.js +0 -4
- package/src/components/block-alignment-control/ui.js +1 -6
- package/src/components/block-alignment-matrix-control/index.js +1 -1
- package/src/components/block-breadcrumb/index.js +2 -6
- package/src/components/block-edit/index.js +3 -5
- package/src/components/block-heading-level-dropdown/README.md +52 -0
- package/src/components/block-heading-level-dropdown/heading-level-icon.js +43 -0
- package/src/components/block-heading-level-dropdown/index.js +77 -0
- package/src/components/block-heading-level-dropdown/index.native.js +63 -0
- package/src/components/block-inspector/index.js +18 -92
- package/src/components/block-inspector/style.scss +0 -5
- package/src/components/block-list/block.native.js +1 -0
- package/src/components/block-list/index.js +1 -1
- package/src/components/block-list/use-in-between-inserter.js +0 -4
- package/src/components/block-list-appender/index.js +29 -22
- package/src/components/block-lock/style.scss +11 -4
- package/src/components/block-mobile-toolbar/block-actions-menu.native.js +1 -1
- package/src/components/block-mobile-toolbar/test/block-actions-menu.native.js +2 -2
- package/src/components/block-mover/test/__snapshots__/index.native.js.snap +3 -3
- package/src/components/block-mover/test/index.native.js +1 -20
- package/src/components/block-preview/index.js +7 -14
- package/src/components/block-quick-navigation/index.js +81 -0
- package/src/components/block-removal-warning-modal/index.js +94 -0
- package/src/components/block-settings-menu/block-settings-dropdown.js +15 -13
- package/src/components/block-switcher/index.js +1 -2
- package/src/components/block-toolbar/style.scss +0 -4
- package/src/components/block-tools/index.js +10 -1
- package/src/components/block-vertical-alignment-control/ui.js +1 -3
- package/src/components/colors/utils.js +5 -1
- package/src/components/colors/with-colors.js +1 -5
- package/src/components/copy-handler/index.js +5 -5
- package/src/components/duotone-control/index.js +0 -1
- package/src/components/font-sizes/test/fluid-utils.js +97 -76
- package/src/components/font-sizes/utils.js +2 -2
- package/src/components/global-styles/color-panel.js +3 -3
- package/src/components/global-styles/index.js +1 -0
- package/src/components/global-styles/test/use-global-styles-output.js +14 -9
- package/src/components/global-styles/typography-panel.js +19 -16
- package/src/components/global-styles/use-global-styles-output.js +12 -12
- package/src/components/iframe/index.js +1 -1
- package/src/components/image-editor/constants.js +0 -1
- package/src/components/index.js +1 -1
- package/src/components/index.native.js +1 -0
- package/src/components/inner-blocks/index.js +4 -2
- package/src/components/inner-blocks/index.native.js +1 -1
- package/src/components/inner-blocks/use-nested-settings-update.js +31 -36
- package/src/components/inserter/block-patterns-tab.js +63 -8
- package/src/components/inserter/hooks/use-block-types-state.js +4 -3
- package/src/components/inserter/hooks/use-insertion-point.js +1 -0
- package/src/components/inserter/library.js +2 -1
- package/src/components/inserter/media-tab/media-tab.js +9 -3
- package/src/components/inserter/reusable-blocks-tab.js +3 -3
- package/src/components/inserter/tabs.js +3 -3
- package/src/components/link-control/index.js +2 -9
- package/src/components/link-control/search-input.js +1 -0
- package/src/components/link-control/test/index.js +40 -51
- package/src/components/list-view/block-select-button.js +19 -1
- package/src/components/list-view/branch.js +6 -3
- package/src/components/list-view/drop-indicator.js +94 -9
- package/src/components/list-view/style.scss +13 -12
- package/src/components/list-view/test/use-list-view-drop-zone.js +188 -93
- package/src/components/list-view/use-list-view-client-ids.js +3 -20
- package/src/components/list-view/use-list-view-drop-zone.js +97 -54
- package/src/components/media-placeholder/index.js +54 -20
- package/src/components/media-replace-flow/index.js +1 -3
- package/src/components/preview-options/index.js +3 -2
- package/src/components/provider/test/experimental-provider.js +9 -6
- package/src/components/rich-text/content.js +85 -0
- package/src/components/rich-text/format-toolbar/index.js +1 -2
- package/src/components/rich-text/index.js +2 -35
- package/src/components/rich-text/index.native.js +3 -33
- package/src/components/url-popover/image-url-input-ui.js +15 -15
- package/src/components/url-popover/test/__snapshots__/index.js.snap +3 -3
- package/src/components/use-block-display-information/index.js +26 -0
- package/src/components/writing-flow/use-drag-selection.js +1 -1
- package/src/components/writing-flow/use-tab-nav.js +42 -6
- package/src/hooks/behaviors.js +82 -39
- package/src/hooks/font-family.js +1 -5
- package/src/hooks/font-size.js +12 -17
- package/src/hooks/layout.js +17 -25
- package/src/hooks/position.js +24 -12
- package/src/hooks/supports.js +1 -1
- package/src/hooks/use-typography-props.js +14 -19
- package/src/index.js +0 -2
- package/src/layouts/constrained.js +2 -1
- package/src/layouts/definitions.js +174 -0
- package/src/layouts/flex.js +7 -5
- package/src/layouts/flow.js +2 -1
- package/src/layouts/grid.js +2 -1
- package/src/layouts/test/utils.js +2 -7
- package/src/layouts/utils.js +7 -2
- package/src/private-apis.js +11 -0
- package/src/store/actions.js +7 -56
- package/src/store/private-actions.js +193 -0
- package/src/store/private-selectors.js +108 -35
- package/src/store/reducer.js +44 -0
- package/src/store/selectors.js +61 -39
- package/src/store/test/private-selectors.js +269 -1
- package/src/store/test/selectors.js +18 -17
- package/src/utils/object.js +35 -0
- package/src/utils/test/object.js +96 -1
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Platform } from '@wordpress/element';
|
|
5
5
|
|
|
6
|
+
/**
|
|
7
|
+
* Internal dependencies
|
|
8
|
+
*/
|
|
9
|
+
import { blockTypePromptMessages } from '../components/block-removal-warning-modal';
|
|
10
|
+
|
|
11
|
+
const castArray = ( maybeArray ) =>
|
|
12
|
+
Array.isArray( maybeArray ) ? maybeArray : [ maybeArray ];
|
|
13
|
+
|
|
6
14
|
/**
|
|
7
15
|
* A list of private/experimental block editor settings that
|
|
8
16
|
* should not become a part of the WordPress public API.
|
|
@@ -105,3 +113,188 @@ export function unsetBlockEditingMode( clientId = '' ) {
|
|
|
105
113
|
clientId,
|
|
106
114
|
};
|
|
107
115
|
}
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Yields action objects used in signalling that the blocks corresponding to
|
|
119
|
+
* the set of specified client IDs are to be removed.
|
|
120
|
+
*
|
|
121
|
+
* Compared to `removeBlocks`, this private interface exposes an additional
|
|
122
|
+
* parameter; see `forceRemove`.
|
|
123
|
+
*
|
|
124
|
+
* @param {string|string[]} clientIds Client IDs of blocks to remove.
|
|
125
|
+
* @param {boolean} selectPrevious True if the previous block
|
|
126
|
+
* or the immediate parent
|
|
127
|
+
* (if no previous block exists)
|
|
128
|
+
* should be selected
|
|
129
|
+
* when a block is removed.
|
|
130
|
+
* @param {boolean} forceRemove Whether to force the operation,
|
|
131
|
+
* bypassing any checks for certain
|
|
132
|
+
* block types.
|
|
133
|
+
*/
|
|
134
|
+
export const privateRemoveBlocks =
|
|
135
|
+
( clientIds, selectPrevious = true, forceRemove = false ) =>
|
|
136
|
+
( { select, dispatch } ) => {
|
|
137
|
+
if ( ! clientIds || ! clientIds.length ) {
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
clientIds = castArray( clientIds );
|
|
142
|
+
const rootClientId = select.getBlockRootClientId( clientIds[ 0 ] );
|
|
143
|
+
const canRemoveBlocks = select.canRemoveBlocks(
|
|
144
|
+
clientIds,
|
|
145
|
+
rootClientId
|
|
146
|
+
);
|
|
147
|
+
|
|
148
|
+
if ( ! canRemoveBlocks ) {
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
// In certain editing contexts, we'd like to prevent accidental removal
|
|
153
|
+
// of important blocks. For example, in the site editor, the Query Loop
|
|
154
|
+
// block is deemed important. In such cases, we'll ask the user for
|
|
155
|
+
// confirmation that they intended to remove such block(s). However,
|
|
156
|
+
// the editor instance is responsible for presenting those confirmation
|
|
157
|
+
// prompts to the user. Any instance opting into removal prompts must
|
|
158
|
+
// register using `toggleRemovalPromptSupport()`.
|
|
159
|
+
//
|
|
160
|
+
// @see https://github.com/WordPress/gutenberg/pull/51145
|
|
161
|
+
if (
|
|
162
|
+
! forceRemove &&
|
|
163
|
+
// FIXME: Without this existence check, the unit tests for
|
|
164
|
+
// `__experimentalDeleteReusableBlock` in
|
|
165
|
+
// `packages/reusable-blocks/src/store/test/actions.js` fail due to
|
|
166
|
+
// the fact that the `registry` object passed to the thunk actions
|
|
167
|
+
// doesn't include this private action. This needs to be
|
|
168
|
+
// investigated to understand whether it's a real smell or if it's
|
|
169
|
+
// because not all store code has been updated to accommodate
|
|
170
|
+
// private selectors.
|
|
171
|
+
select.isRemovalPromptSupported &&
|
|
172
|
+
select.isRemovalPromptSupported()
|
|
173
|
+
) {
|
|
174
|
+
const blockNamesForPrompt = new Set();
|
|
175
|
+
|
|
176
|
+
// Given a list of client IDs of blocks that the user intended to
|
|
177
|
+
// remove, perform a tree search (BFS) to find all block names
|
|
178
|
+
// corresponding to "important" blocks, i.e. blocks that require a
|
|
179
|
+
// removal prompt.
|
|
180
|
+
//
|
|
181
|
+
// @see blockTypePromptMessages
|
|
182
|
+
const queue = [ ...clientIds ];
|
|
183
|
+
while ( queue.length ) {
|
|
184
|
+
const clientId = queue.shift();
|
|
185
|
+
const blockName = select.getBlockName( clientId );
|
|
186
|
+
if ( blockTypePromptMessages[ blockName ] ) {
|
|
187
|
+
blockNamesForPrompt.add( blockName );
|
|
188
|
+
}
|
|
189
|
+
const innerBlocks = select.getBlockOrder( clientId );
|
|
190
|
+
queue.push( ...innerBlocks );
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
// If any such blocks were found, trigger the removal prompt and
|
|
194
|
+
// skip any other steps (thus postponing actual removal).
|
|
195
|
+
if ( blockNamesForPrompt.size ) {
|
|
196
|
+
dispatch(
|
|
197
|
+
displayRemovalPrompt(
|
|
198
|
+
clientIds,
|
|
199
|
+
selectPrevious,
|
|
200
|
+
Array.from( blockNamesForPrompt )
|
|
201
|
+
)
|
|
202
|
+
);
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
if ( selectPrevious ) {
|
|
208
|
+
dispatch.selectPreviousBlock( clientIds[ 0 ], selectPrevious );
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
dispatch( { type: 'REMOVE_BLOCKS', clientIds } );
|
|
212
|
+
|
|
213
|
+
// To avoid a focus loss when removing the last block, assure there is
|
|
214
|
+
// always a default block if the last of the blocks have been removed.
|
|
215
|
+
dispatch( ensureDefaultBlock() );
|
|
216
|
+
};
|
|
217
|
+
|
|
218
|
+
/**
|
|
219
|
+
* Action which will insert a default block insert action if there
|
|
220
|
+
* are no other blocks at the root of the editor. This action should be used
|
|
221
|
+
* in actions which may result in no blocks remaining in the editor (removal,
|
|
222
|
+
* replacement, etc).
|
|
223
|
+
*/
|
|
224
|
+
export const ensureDefaultBlock =
|
|
225
|
+
() =>
|
|
226
|
+
( { select, dispatch } ) => {
|
|
227
|
+
// To avoid a focus loss when removing the last block, assure there is
|
|
228
|
+
// always a default block if the last of the blocks have been removed.
|
|
229
|
+
const count = select.getBlockCount();
|
|
230
|
+
if ( count > 0 ) {
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
// If there's an custom appender, don't insert default block.
|
|
235
|
+
// We have to remember to manually move the focus elsewhere to
|
|
236
|
+
// prevent it from being lost though.
|
|
237
|
+
const { __unstableHasCustomAppender } = select.getSettings();
|
|
238
|
+
if ( __unstableHasCustomAppender ) {
|
|
239
|
+
return;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
dispatch.insertDefaultBlock();
|
|
243
|
+
};
|
|
244
|
+
|
|
245
|
+
/**
|
|
246
|
+
* Returns an action object used in signalling that a block removal prompt must
|
|
247
|
+
* be displayed.
|
|
248
|
+
*
|
|
249
|
+
* Contrast with `toggleRemovalPromptSupport`.
|
|
250
|
+
*
|
|
251
|
+
* @param {string|string[]} clientIds Client IDs of blocks to remove.
|
|
252
|
+
* @param {boolean} selectPrevious True if the previous block
|
|
253
|
+
* or the immediate parent
|
|
254
|
+
* (if no previous block exists)
|
|
255
|
+
* should be selected
|
|
256
|
+
* when a block is removed.
|
|
257
|
+
* @param {string[]} blockNamesForPrompt Names of blocks requiring user
|
|
258
|
+
* @return {Object} Action object.
|
|
259
|
+
*/
|
|
260
|
+
export function displayRemovalPrompt(
|
|
261
|
+
clientIds,
|
|
262
|
+
selectPrevious,
|
|
263
|
+
blockNamesForPrompt
|
|
264
|
+
) {
|
|
265
|
+
return {
|
|
266
|
+
type: 'DISPLAY_REMOVAL_PROMPT',
|
|
267
|
+
clientIds,
|
|
268
|
+
selectPrevious,
|
|
269
|
+
blockNamesForPrompt,
|
|
270
|
+
};
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
/**
|
|
274
|
+
* Returns an action object used in signalling that a block removal prompt must
|
|
275
|
+
* be cleared, either be cause the user has confirmed or canceled the request
|
|
276
|
+
* for removal.
|
|
277
|
+
*
|
|
278
|
+
* @return {Object} Action object.
|
|
279
|
+
*/
|
|
280
|
+
export function clearRemovalPrompt() {
|
|
281
|
+
return {
|
|
282
|
+
type: 'CLEAR_REMOVAL_PROMPT',
|
|
283
|
+
};
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
/**
|
|
287
|
+
* Returns an action object used in signalling that a removal prompt display
|
|
288
|
+
* mechanism is available or unavailable in the current editor.
|
|
289
|
+
*
|
|
290
|
+
* Contrast with `displayRemovalPrompt`.
|
|
291
|
+
*
|
|
292
|
+
* @param {boolean} status Whether a prompt display mechanism exists.
|
|
293
|
+
* @return {Object} Action object.
|
|
294
|
+
*/
|
|
295
|
+
export function toggleRemovalPromptSupport( status = true ) {
|
|
296
|
+
return {
|
|
297
|
+
type: 'TOGGLE_REMOVAL_PROMPT_SUPPORT',
|
|
298
|
+
status,
|
|
299
|
+
};
|
|
300
|
+
}
|
|
@@ -17,6 +17,7 @@ import {
|
|
|
17
17
|
getTemplateLock,
|
|
18
18
|
getBlockName,
|
|
19
19
|
getBlockOrder,
|
|
20
|
+
getBlockParents,
|
|
20
21
|
} from './selectors';
|
|
21
22
|
|
|
22
23
|
/**
|
|
@@ -72,41 +73,31 @@ export function getLastInsertedBlocksClientIds( state ) {
|
|
|
72
73
|
* @return {BlockEditingMode} The block editing mode. One of `'disabled'`,
|
|
73
74
|
* `'contentOnly'`, or `'default'`.
|
|
74
75
|
*/
|
|
75
|
-
export
|
|
76
|
-
( state
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
const parentMode = getBlockEditingMode( state, rootClientId );
|
|
101
|
-
return parentMode === 'contentOnly' ? 'default' : parentMode;
|
|
102
|
-
},
|
|
103
|
-
( state ) => [
|
|
104
|
-
state.blockEditingModes,
|
|
105
|
-
state.blocks.parents,
|
|
106
|
-
state.settings.templateLock,
|
|
107
|
-
state.blockListSettings,
|
|
108
|
-
]
|
|
109
|
-
);
|
|
76
|
+
export function getBlockEditingMode( state, clientId = '' ) {
|
|
77
|
+
if ( state.blockEditingModes.has( clientId ) ) {
|
|
78
|
+
return state.blockEditingModes.get( clientId );
|
|
79
|
+
}
|
|
80
|
+
if ( ! clientId ) {
|
|
81
|
+
return 'default';
|
|
82
|
+
}
|
|
83
|
+
const rootClientId = getBlockRootClientId( state, clientId );
|
|
84
|
+
const templateLock = getTemplateLock( state, rootClientId );
|
|
85
|
+
if ( templateLock === 'contentOnly' ) {
|
|
86
|
+
const name = getBlockName( state, clientId );
|
|
87
|
+
// TODO: Terrible hack! We're calling the global select() function
|
|
88
|
+
// here instead of using createRegistrySelector(). The problem with
|
|
89
|
+
// using createRegistrySelector() is that then the public
|
|
90
|
+
// block-editor selectors (e.g. canInsertBlockTypeUnmemoized) can't
|
|
91
|
+
// call this private block-editor selector due to a bug in
|
|
92
|
+
// @wordpress/data. See
|
|
93
|
+
// https://github.com/WordPress/gutenberg/pull/50985.
|
|
94
|
+
const isContent =
|
|
95
|
+
select( blocksStore ).__experimentalHasContentRoleAttribute( name );
|
|
96
|
+
return isContent ? 'contentOnly' : 'disabled';
|
|
97
|
+
}
|
|
98
|
+
const parentMode = getBlockEditingMode( state, rootClientId );
|
|
99
|
+
return parentMode === 'contentOnly' ? 'default' : parentMode;
|
|
100
|
+
}
|
|
110
101
|
|
|
111
102
|
/**
|
|
112
103
|
* Returns true if the block with the given client ID and all of its descendants
|
|
@@ -135,3 +126,85 @@ export const isBlockSubtreeDisabled = createSelector(
|
|
|
135
126
|
},
|
|
136
127
|
( state ) => [ state.blockEditingModes, state.blocks.parents ]
|
|
137
128
|
);
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* Returns a tree of block objects with only clientID and innerBlocks set.
|
|
132
|
+
* Blocks with a 'disabled' editing mode are not included.
|
|
133
|
+
*
|
|
134
|
+
* @param {Object} state Global application state.
|
|
135
|
+
* @param {?string} rootClientId Optional root client ID of block list.
|
|
136
|
+
*
|
|
137
|
+
* @return {Object[]} Tree of block objects with only clientID and innerBlocks set.
|
|
138
|
+
*/
|
|
139
|
+
export const getListViewClientIdsTree = createSelector(
|
|
140
|
+
( state, rootClientId = '' ) => {
|
|
141
|
+
return getBlockOrder( state, rootClientId ).flatMap( ( clientId ) => {
|
|
142
|
+
if ( getBlockEditingMode( state, clientId ) !== 'disabled' ) {
|
|
143
|
+
return [
|
|
144
|
+
{
|
|
145
|
+
clientId,
|
|
146
|
+
innerBlocks: getListViewClientIdsTree(
|
|
147
|
+
state,
|
|
148
|
+
clientId
|
|
149
|
+
),
|
|
150
|
+
},
|
|
151
|
+
];
|
|
152
|
+
}
|
|
153
|
+
return getListViewClientIdsTree( state, clientId );
|
|
154
|
+
} );
|
|
155
|
+
},
|
|
156
|
+
( state ) => [
|
|
157
|
+
state.blocks.order,
|
|
158
|
+
state.blockEditingModes,
|
|
159
|
+
state.settings.templateLock,
|
|
160
|
+
state.blockListSettings,
|
|
161
|
+
]
|
|
162
|
+
);
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* Returns a list of a given block's ancestors, from top to bottom. Blocks with
|
|
166
|
+
* a 'disabled' editing mode are excluded.
|
|
167
|
+
*
|
|
168
|
+
* @see getBlockParents
|
|
169
|
+
*
|
|
170
|
+
* @param {Object} state Global application state.
|
|
171
|
+
* @param {string} clientId The block client ID.
|
|
172
|
+
* @param {boolean} ascending Order results from bottom to top (true) or top
|
|
173
|
+
* to bottom (false).
|
|
174
|
+
*/
|
|
175
|
+
export const getEnabledBlockParents = createSelector(
|
|
176
|
+
( state, clientId, ascending = false ) => {
|
|
177
|
+
return getBlockParents( state, clientId, ascending ).filter(
|
|
178
|
+
( parent ) => getBlockEditingMode( state, parent ) !== 'disabled'
|
|
179
|
+
);
|
|
180
|
+
},
|
|
181
|
+
( state ) => [
|
|
182
|
+
state.blocks.parents,
|
|
183
|
+
state.blockEditingModes,
|
|
184
|
+
state.settings.templateLock,
|
|
185
|
+
state.blockListSettings,
|
|
186
|
+
]
|
|
187
|
+
);
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* Selector that returns the data needed to display a prompt when certain
|
|
191
|
+
* blocks are removed, or `false` if no such prompt is requested.
|
|
192
|
+
*
|
|
193
|
+
* @param {Object} state Global application state.
|
|
194
|
+
*
|
|
195
|
+
* @return {Object|false} Data for removal prompt display, if any.
|
|
196
|
+
*/
|
|
197
|
+
export function getRemovalPromptData( state ) {
|
|
198
|
+
return state.removalPromptData;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
/**
|
|
202
|
+
* Returns true if removal prompt exists, or false otherwise.
|
|
203
|
+
*
|
|
204
|
+
* @param {Object} state Global application state.
|
|
205
|
+
*
|
|
206
|
+
* @return {boolean} Whether removal prompt exists.
|
|
207
|
+
*/
|
|
208
|
+
export function isRemovalPromptSupported( state ) {
|
|
209
|
+
return state.isRemovalPromptSupported;
|
|
210
|
+
}
|
package/src/store/reducer.js
CHANGED
|
@@ -1469,6 +1469,48 @@ export function isSelectionEnabled( state = true, action ) {
|
|
|
1469
1469
|
return state;
|
|
1470
1470
|
}
|
|
1471
1471
|
|
|
1472
|
+
/**
|
|
1473
|
+
* Reducer returning the data needed to display a prompt when certain blocks
|
|
1474
|
+
* are removed, or `false` if no such prompt is requested.
|
|
1475
|
+
*
|
|
1476
|
+
* @param {boolean} state Current state.
|
|
1477
|
+
* @param {Object} action Dispatched action.
|
|
1478
|
+
*
|
|
1479
|
+
* @return {Object|false} Data for removal prompt display, if any.
|
|
1480
|
+
*/
|
|
1481
|
+
function removalPromptData( state = false, action ) {
|
|
1482
|
+
switch ( action.type ) {
|
|
1483
|
+
case 'DISPLAY_REMOVAL_PROMPT':
|
|
1484
|
+
const { clientIds, selectPrevious, blockNamesForPrompt } = action;
|
|
1485
|
+
return {
|
|
1486
|
+
clientIds,
|
|
1487
|
+
selectPrevious,
|
|
1488
|
+
blockNamesForPrompt,
|
|
1489
|
+
};
|
|
1490
|
+
case 'CLEAR_REMOVAL_PROMPT':
|
|
1491
|
+
return false;
|
|
1492
|
+
}
|
|
1493
|
+
|
|
1494
|
+
return state;
|
|
1495
|
+
}
|
|
1496
|
+
|
|
1497
|
+
/**
|
|
1498
|
+
* Reducer prompt availability state.
|
|
1499
|
+
*
|
|
1500
|
+
* @param {boolean} state Current state.
|
|
1501
|
+
* @param {Object} action Dispatched action.
|
|
1502
|
+
*
|
|
1503
|
+
* @return {boolean} Updated state.
|
|
1504
|
+
*/
|
|
1505
|
+
function isRemovalPromptSupported( state = false, action ) {
|
|
1506
|
+
switch ( action.type ) {
|
|
1507
|
+
case 'TOGGLE_REMOVAL_PROMPT_SUPPORT':
|
|
1508
|
+
return action.status;
|
|
1509
|
+
}
|
|
1510
|
+
|
|
1511
|
+
return state;
|
|
1512
|
+
}
|
|
1513
|
+
|
|
1472
1514
|
/**
|
|
1473
1515
|
* Reducer returning the initial block selection.
|
|
1474
1516
|
*
|
|
@@ -1881,6 +1923,8 @@ const combinedReducers = combineReducers( {
|
|
|
1881
1923
|
temporarilyEditingAsBlocks,
|
|
1882
1924
|
blockVisibility,
|
|
1883
1925
|
blockEditingModes,
|
|
1926
|
+
removalPromptData,
|
|
1927
|
+
isRemovalPromptSupported,
|
|
1884
1928
|
} );
|
|
1885
1929
|
|
|
1886
1930
|
function withAutomaticChangeReset( reducer ) {
|
package/src/store/selectors.js
CHANGED
|
@@ -187,16 +187,27 @@ export function getBlocks( state, rootClientId ) {
|
|
|
187
187
|
* Returns a stripped down block object containing only its client ID,
|
|
188
188
|
* and its inner blocks' client IDs.
|
|
189
189
|
*
|
|
190
|
+
* @deprecated
|
|
191
|
+
*
|
|
190
192
|
* @param {Object} state Editor state.
|
|
191
193
|
* @param {string} clientId Client ID of the block to get.
|
|
192
194
|
*
|
|
193
195
|
* @return {Object} Client IDs of the post blocks.
|
|
194
196
|
*/
|
|
195
197
|
export const __unstableGetClientIdWithClientIdsTree = createSelector(
|
|
196
|
-
( state, clientId ) =>
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
198
|
+
( state, clientId ) => {
|
|
199
|
+
deprecated(
|
|
200
|
+
"wp.data.select( 'core/block-editor' ).__unstableGetClientIdWithClientIdsTree",
|
|
201
|
+
{
|
|
202
|
+
since: '6.3',
|
|
203
|
+
version: '6.5',
|
|
204
|
+
}
|
|
205
|
+
);
|
|
206
|
+
return {
|
|
207
|
+
clientId,
|
|
208
|
+
innerBlocks: __unstableGetClientIdsTree( state, clientId ),
|
|
209
|
+
};
|
|
210
|
+
},
|
|
200
211
|
( state ) => [ state.blocks.order ]
|
|
201
212
|
);
|
|
202
213
|
|
|
@@ -205,16 +216,26 @@ export const __unstableGetClientIdWithClientIdsTree = createSelector(
|
|
|
205
216
|
* given root, consisting of stripped down block objects containing only
|
|
206
217
|
* their client IDs, and their inner blocks' client IDs.
|
|
207
218
|
*
|
|
219
|
+
* @deprecated
|
|
220
|
+
*
|
|
208
221
|
* @param {Object} state Editor state.
|
|
209
222
|
* @param {?string} rootClientId Optional root client ID of block list.
|
|
210
223
|
*
|
|
211
224
|
* @return {Object[]} Client IDs of the post blocks.
|
|
212
225
|
*/
|
|
213
226
|
export const __unstableGetClientIdsTree = createSelector(
|
|
214
|
-
( state, rootClientId = '' ) =>
|
|
215
|
-
|
|
227
|
+
( state, rootClientId = '' ) => {
|
|
228
|
+
deprecated(
|
|
229
|
+
"wp.data.select( 'core/block-editor' ).__unstableGetClientIdsTree",
|
|
230
|
+
{
|
|
231
|
+
since: '6.3',
|
|
232
|
+
version: '6.5',
|
|
233
|
+
}
|
|
234
|
+
);
|
|
235
|
+
return getBlockOrder( state, rootClientId ).map( ( clientId ) =>
|
|
216
236
|
__unstableGetClientIdWithClientIdsTree( state, clientId )
|
|
217
|
-
)
|
|
237
|
+
);
|
|
238
|
+
},
|
|
218
239
|
( state ) => [ state.blocks.order ]
|
|
219
240
|
);
|
|
220
241
|
|
|
@@ -303,10 +324,13 @@ export const __experimentalGetGlobalBlocksByName = createSelector(
|
|
|
303
324
|
if ( ! blockName ) {
|
|
304
325
|
return EMPTY_ARRAY;
|
|
305
326
|
}
|
|
327
|
+
const blockNames = Array.isArray( blockName )
|
|
328
|
+
? blockName
|
|
329
|
+
: [ blockName ];
|
|
306
330
|
const clientIds = getClientIdsWithDescendants( state );
|
|
307
331
|
const foundBlocks = clientIds.filter( ( clientId ) => {
|
|
308
332
|
const block = state.blocks.byClientId.get( clientId );
|
|
309
|
-
return block.name
|
|
333
|
+
return blockNames.includes( block.name );
|
|
310
334
|
} );
|
|
311
335
|
return foundBlocks.length > 0 ? foundBlocks : EMPTY_ARRAY;
|
|
312
336
|
},
|
|
@@ -536,18 +560,10 @@ export const getBlockParents = createSelector(
|
|
|
536
560
|
export const getBlockParentsByBlockName = createSelector(
|
|
537
561
|
( state, clientId, blockName, ascending = false ) => {
|
|
538
562
|
const parents = getBlockParents( state, clientId, ascending );
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
} ) )
|
|
544
|
-
.filter( ( { name } ) => {
|
|
545
|
-
if ( Array.isArray( blockName ) ) {
|
|
546
|
-
return blockName.includes( name );
|
|
547
|
-
}
|
|
548
|
-
return name === blockName;
|
|
549
|
-
} )
|
|
550
|
-
.map( ( { id } ) => id );
|
|
563
|
+
const hasName = Array.isArray( blockName )
|
|
564
|
+
? ( name ) => blockName.includes( name )
|
|
565
|
+
: ( name ) => blockName === name;
|
|
566
|
+
return parents.filter( ( id ) => hasName( getBlockName( state, id ) ) );
|
|
551
567
|
},
|
|
552
568
|
( state ) => [ state.blocks.parents ]
|
|
553
569
|
);
|
|
@@ -1672,16 +1688,14 @@ export function canRemoveBlock( state, clientId, rootClientId = null ) {
|
|
|
1672
1688
|
if ( attributes === null ) {
|
|
1673
1689
|
return true;
|
|
1674
1690
|
}
|
|
1675
|
-
if ( attributes.lock?.remove ) {
|
|
1676
|
-
return
|
|
1691
|
+
if ( attributes.lock?.remove !== undefined ) {
|
|
1692
|
+
return ! attributes.lock.remove;
|
|
1677
1693
|
}
|
|
1678
1694
|
if ( getTemplateLock( state, rootClientId ) ) {
|
|
1679
1695
|
return false;
|
|
1680
1696
|
}
|
|
1681
|
-
|
|
1682
|
-
|
|
1683
|
-
}
|
|
1684
|
-
return true;
|
|
1697
|
+
|
|
1698
|
+
return getBlockEditingMode( state, rootClientId ) !== 'disabled';
|
|
1685
1699
|
}
|
|
1686
1700
|
|
|
1687
1701
|
/**
|
|
@@ -1711,18 +1725,16 @@ export function canRemoveBlocks( state, clientIds, rootClientId = null ) {
|
|
|
1711
1725
|
export function canMoveBlock( state, clientId, rootClientId = null ) {
|
|
1712
1726
|
const attributes = getBlockAttributes( state, clientId );
|
|
1713
1727
|
if ( attributes === null ) {
|
|
1714
|
-
return;
|
|
1728
|
+
return true;
|
|
1715
1729
|
}
|
|
1716
|
-
if ( attributes.lock?.move ) {
|
|
1717
|
-
return
|
|
1730
|
+
if ( attributes.lock?.move !== undefined ) {
|
|
1731
|
+
return ! attributes.lock.move;
|
|
1718
1732
|
}
|
|
1719
1733
|
if ( getTemplateLock( state, rootClientId ) === 'all' ) {
|
|
1720
1734
|
return false;
|
|
1721
1735
|
}
|
|
1722
|
-
|
|
1723
|
-
|
|
1724
|
-
}
|
|
1725
|
-
return true;
|
|
1736
|
+
|
|
1737
|
+
return getBlockEditingMode( state, rootClientId ) !== 'disabled';
|
|
1726
1738
|
}
|
|
1727
1739
|
|
|
1728
1740
|
/**
|
|
@@ -1933,6 +1945,7 @@ const buildBlockTypeItem =
|
|
|
1933
1945
|
*
|
|
1934
1946
|
* @param {Object} state Editor state.
|
|
1935
1947
|
* @param {?string} rootClientId Optional root client ID of block list.
|
|
1948
|
+
* @param {?string} syncStatus Optional sync status to filter pattern blocks by.
|
|
1936
1949
|
*
|
|
1937
1950
|
* @return {WPEditorInserterItem[]} Items that appear in inserter.
|
|
1938
1951
|
*
|
|
@@ -1949,7 +1962,7 @@ const buildBlockTypeItem =
|
|
|
1949
1962
|
* @property {number} frecency Heuristic that combines frequency and recency.
|
|
1950
1963
|
*/
|
|
1951
1964
|
export const getInserterItems = createSelector(
|
|
1952
|
-
( state, rootClientId = null ) => {
|
|
1965
|
+
( state, rootClientId = null, syncStatus ) => {
|
|
1953
1966
|
const buildBlockTypeInserterItem = buildBlockTypeItem( state, {
|
|
1954
1967
|
buildScope: 'inserter',
|
|
1955
1968
|
} );
|
|
@@ -2014,6 +2027,7 @@ export const getInserterItems = createSelector(
|
|
|
2014
2027
|
isDisabled: false,
|
|
2015
2028
|
utility: 1, // Deprecated.
|
|
2016
2029
|
frecency,
|
|
2030
|
+
content: reusableBlock.content.raw,
|
|
2017
2031
|
};
|
|
2018
2032
|
};
|
|
2019
2033
|
|
|
@@ -2028,7 +2042,14 @@ export const getInserterItems = createSelector(
|
|
|
2028
2042
|
'core/block',
|
|
2029
2043
|
rootClientId
|
|
2030
2044
|
)
|
|
2031
|
-
? getReusableBlocks( state )
|
|
2045
|
+
? getReusableBlocks( state )
|
|
2046
|
+
.filter(
|
|
2047
|
+
( reusableBlock ) =>
|
|
2048
|
+
syncStatus === reusableBlock.meta?.sync_status ||
|
|
2049
|
+
( ! syncStatus &&
|
|
2050
|
+
reusableBlock.meta?.sync_status === '' )
|
|
2051
|
+
)
|
|
2052
|
+
.map( buildReusableBlockInserterItem )
|
|
2032
2053
|
: [];
|
|
2033
2054
|
|
|
2034
2055
|
const items = blockTypeInserterItems.reduce( ( accumulator, item ) => {
|
|
@@ -2816,10 +2837,11 @@ export function __unstableGetTemporarilyEditingAsBlocks( state ) {
|
|
|
2816
2837
|
}
|
|
2817
2838
|
|
|
2818
2839
|
export function __unstableHasActiveBlockOverlayActive( state, clientId ) {
|
|
2819
|
-
// Prevent overlay on
|
|
2820
|
-
//
|
|
2821
|
-
// selected.
|
|
2822
|
-
|
|
2840
|
+
// Prevent overlay on blocks with a non-default editing mode. If the mdoe is
|
|
2841
|
+
// 'disabled' then the overlay is redundant since the block can't be
|
|
2842
|
+
// selected. If the mode is 'contentOnly' then the overlay is redundant
|
|
2843
|
+
// since there will be no controls to interact with once selected.
|
|
2844
|
+
if ( getBlockEditingMode( state, clientId ) !== 'default' ) {
|
|
2823
2845
|
return false;
|
|
2824
2846
|
}
|
|
2825
2847
|
|