@wordpress/block-editor 14.4.0 → 14.6.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 +4 -0
- package/README.md +4 -8
- package/build/autocompleters/block.js +13 -5
- package/build/autocompleters/block.js.map +1 -1
- package/build/components/background-image-control/index.js +1 -1
- package/build/components/background-image-control/index.js.map +1 -1
- package/build/components/block-canvas/index.js +10 -0
- package/build/components/block-canvas/index.js.map +1 -1
- package/build/components/block-card/index.js +2 -2
- package/build/components/block-card/index.js.map +1 -1
- package/build/components/block-controls/slot.js.map +1 -1
- package/build/components/block-controls/slot.native.js.map +1 -1
- package/build/components/block-draggable/draggable-chip.js +1 -1
- package/build/components/block-draggable/draggable-chip.js.map +1 -1
- package/build/components/block-full-height-alignment-control/index.js +1 -1
- package/build/components/block-full-height-alignment-control/index.js.map +1 -1
- package/build/components/block-list/block-invalid-warning.native.js +1 -1
- package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
- package/build/components/block-list/block-list-item.native.js.map +1 -1
- package/build/components/block-list/block.js +1 -1
- package/build/components/block-list/block.js.map +1 -1
- package/build/components/block-list/block.native.js +1 -7
- package/build/components/block-list/block.native.js.map +1 -1
- package/build/components/block-list/index.js +6 -5
- 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 +1 -2
- package/build/components/block-list/use-block-props/index.js.map +1 -1
- package/build/components/block-list/use-block-props/use-focus-first-element.js +4 -3
- package/build/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
- package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js +11 -6
- 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 +1 -1
- package/build/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build/components/block-list/zoom-out-separator.js +10 -7
- package/build/components/block-list/zoom-out-separator.js.map +1 -1
- package/build/components/block-lock/modal.js +1 -1
- package/build/components/block-lock/modal.js.map +1 -1
- package/build/components/block-mover/button.js.map +1 -1
- package/build/components/block-parent-selector/index.js +1 -1
- package/build/components/block-parent-selector/index.js.map +1 -1
- package/build/components/block-pattern-setup/index.js.map +1 -1
- package/build/components/block-patterns-list/index.js.map +1 -1
- package/build/components/block-patterns-paging/index.js +1 -1
- package/build/components/block-patterns-paging/index.js.map +1 -1
- package/build/components/block-popover/index.js +1 -1
- package/build/components/block-popover/index.js.map +1 -1
- package/build/components/block-preview/auto.js +1 -4
- package/build/components/block-preview/auto.js.map +1 -1
- package/build/components/block-preview/index.js +2 -2
- package/build/components/block-preview/index.js.map +1 -1
- package/build/components/block-rename/modal.js +2 -2
- package/build/components/block-rename/modal.js.map +1 -1
- package/build/components/block-settings-menu/block-parent-selector-menu-item.js +1 -1
- package/build/components/block-settings-menu/block-parent-selector-menu-item.js.map +1 -1
- package/build/components/block-settings-menu/block-settings-dropdown.js +5 -0
- package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build/components/block-settings-menu/index.js +4 -3
- package/build/components/block-settings-menu/index.js.map +1 -1
- package/build/components/block-switcher/block-transformations-menu.native.js +1 -1
- package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
- package/build/components/block-switcher/index.js +2 -1
- package/build/components/block-switcher/index.js.map +1 -1
- package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
- package/build/components/block-switcher/use-transformed-patterns.js +1 -0
- package/build/components/block-switcher/use-transformed-patterns.js.map +1 -1
- package/build/components/block-switcher/utils.js +1 -0
- package/build/components/block-switcher/utils.js.map +1 -1
- package/build/components/block-toolbar/change-design.js +122 -0
- package/build/components/block-toolbar/change-design.js.map +1 -0
- package/build/components/block-toolbar/index.js +19 -7
- package/build/components/block-toolbar/index.js.map +1 -1
- package/build/components/block-tools/index.js +4 -17
- package/build/components/block-tools/index.js.map +1 -1
- package/build/components/block-tools/insertion-point.js +4 -3
- package/build/components/block-tools/insertion-point.js.map +1 -1
- package/build/components/block-tools/use-show-block-tools.js +4 -6
- package/build/components/block-tools/use-show-block-tools.js.map +1 -1
- package/build/components/block-tools/zoom-out-mode-inserters.js +20 -29
- package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
- package/build/components/block-types-list/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 +3 -2
- package/build/components/block-variation-transforms/index.js.map +1 -1
- package/build/components/block-vertical-alignment-control/ui.js +6 -10
- package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
- package/build/components/border-radius-control/index.js.map +1 -1
- package/build/components/border-radius-control/linked-button.js +7 -10
- package/build/components/border-radius-control/linked-button.js.map +1 -1
- package/build/components/border-radius-control/utils.js.map +1 -1
- package/build/components/button-block-appender/index.js.map +1 -1
- package/build/components/collab/block-comment-icon-slot.js +18 -0
- package/build/components/collab/block-comment-icon-slot.js.map +1 -0
- package/build/components/collab/block-comment-icon-toolbar-slot.js +18 -0
- package/build/components/collab/block-comment-icon-toolbar-slot.js.map +1 -0
- package/build/components/color-style-selector/index.js.map +1 -1
- package/build/components/colors/utils.js.map +1 -1
- package/build/components/colors/with-colors.js.map +1 -1
- package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
- package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +7 -1
- package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
- package/build/components/convert-to-group-buttons/toolbar.js +4 -4
- package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
- package/build/components/date-format-picker/index.js +1 -0
- package/build/components/date-format-picker/index.js.map +1 -1
- package/build/components/duotone/utils.js.map +1 -1
- package/build/components/duotone-control/index.js.map +1 -1
- package/build/components/font-sizes/fluid-utils.js.map +1 -1
- package/build/components/font-sizes/utils.js.map +1 -1
- package/build/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build/components/global-styles/border-panel.js.map +1 -1
- package/build/components/global-styles/color-panel.js +1 -4
- package/build/components/global-styles/color-panel.js.map +1 -1
- package/build/components/global-styles/filters-panel.js.map +1 -1
- package/build/components/global-styles/get-block-css-selector.js.map +1 -1
- package/build/components/global-styles/get-global-styles-changes.js +2 -1
- package/build/components/global-styles/get-global-styles-changes.js.map +1 -1
- package/build/components/global-styles/hooks.js.map +1 -1
- package/build/components/global-styles/typography-panel.js.map +1 -1
- package/build/components/global-styles/use-global-styles-context.native.js +6 -0
- package/build/components/global-styles/use-global-styles-context.native.js.map +1 -1
- package/build/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build/components/global-styles/utils.js.map +1 -1
- package/build/components/gradients/use-gradient.js.map +1 -1
- package/build/components/grid/grid-item-movers.js.map +1 -1
- package/build/components/grid/grid-visualizer.js.map +1 -1
- package/build/components/iframe/index.js +46 -11
- package/build/components/iframe/index.js.map +1 -1
- package/build/components/image-editor/use-save-image.js +1 -1
- package/build/components/image-editor/use-save-image.js.map +1 -1
- package/build/components/image-size-control/index.js +61 -20
- package/build/components/image-size-control/index.js.map +1 -1
- package/build/components/inner-blocks/index.js +9 -5
- package/build/components/inner-blocks/index.js.map +1 -1
- package/build/components/inner-blocks/use-nested-settings-update.js +15 -8
- package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +1 -1
- package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/pattern-list.js +2 -2
- package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +2 -2
- package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/patterns-filter.js +1 -1
- package/build/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/use-pattern-categories.js +1 -1
- package/build/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
- package/build/components/inserter/block-types-tab.native.js.map +1 -1
- package/build/components/inserter/category-tabs/index.js +16 -12
- package/build/components/inserter/category-tabs/index.js.map +1 -1
- package/build/components/inserter/hooks/use-block-types-state.js +1 -1
- package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
- package/build/components/inserter/hooks/use-patterns-state.js +1 -1
- package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
- package/build/components/inserter/media-tab/media-panel.js.map +1 -1
- package/build/components/inserter/media-tab/media-preview.js +1 -1
- package/build/components/inserter/media-tab/media-preview.js.map +1 -1
- package/build/components/inserter/media-tab/media-tab.js.map +1 -1
- package/build/components/inserter/media-tab/utils.js.map +1 -1
- package/build/components/inserter/menu.js +8 -3
- package/build/components/inserter/menu.js.map +1 -1
- package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
- package/build/components/inserter/preview-panel.js.map +1 -1
- package/build/components/inserter/quick-inserter.js +1 -1
- package/build/components/inserter/quick-inserter.js.map +1 -1
- package/build/components/inserter/search-results.js +1 -1
- package/build/components/inserter/search-results.js.map +1 -1
- package/build/components/inserter/tabs.native.js.map +1 -1
- package/build/components/inserter-button/index.native.js +1 -1
- package/build/components/inserter-button/index.native.js.map +1 -1
- package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
- package/build/components/inspector-controls/fill.js.map +1 -1
- package/build/components/inspector-controls/fill.native.js.map +1 -1
- package/build/components/inspector-controls/slot.js.map +1 -1
- package/build/components/inspector-controls/slot.native.js.map +1 -1
- package/build/components/inspector-controls-tabs/index.js +0 -2
- package/build/components/inspector-controls-tabs/index.js.map +1 -1
- package/build/components/inspector-controls-tabs/utils.js +3 -6
- package/build/components/inspector-controls-tabs/utils.js.map +1 -1
- package/build/components/line-height-control/index.js.map +1 -1
- package/build/components/link-control/is-url-like.js.map +1 -1
- package/build/components/link-control/link-preview.js +12 -9
- package/build/components/link-control/link-preview.js.map +1 -1
- package/build/components/link-control/search-create-button.js +1 -1
- package/build/components/link-control/search-create-button.js.map +1 -1
- package/build/components/link-control/search-input.js +3 -5
- package/build/components/link-control/search-input.js.map +1 -1
- package/build/components/link-control/search-results.js +5 -15
- package/build/components/link-control/search-results.js.map +1 -1
- package/build/components/link-control/settings-drawer.js.map +1 -1
- package/build/components/link-control/use-rich-url-data.js.map +1 -1
- package/build/components/list-view/appender.js +5 -4
- package/build/components/list-view/appender.js.map +1 -1
- package/build/components/list-view/block-select-button.js.map +1 -1
- package/build/components/list-view/block.js.map +1 -1
- package/build/components/list-view/branch.js +6 -5
- package/build/components/list-view/branch.js.map +1 -1
- package/build/components/list-view/drop-indicator.js.map +1 -1
- package/build/components/list-view/index.js +1 -2
- package/build/components/list-view/index.js.map +1 -1
- package/build/components/list-view/use-block-selection.js +2 -2
- package/build/components/list-view/use-block-selection.js.map +1 -1
- package/build/components/list-view/utils.js +1 -1
- package/build/components/list-view/utils.js.map +1 -1
- package/build/components/media-placeholder/index.native.js +1 -1
- package/build/components/media-placeholder/index.native.js.map +1 -1
- package/build/components/media-replace-flow/index.js.map +1 -1
- package/build/components/multi-selection-inspector/index.js +2 -2
- package/build/components/multi-selection-inspector/index.js.map +1 -1
- package/build/components/observe-typing/index.js +1 -0
- package/build/components/observe-typing/index.js.map +1 -1
- package/build/components/provider/index.js +1 -1
- package/build/components/provider/index.js.map +1 -1
- package/build/components/recursion-provider/index.js +1 -0
- package/build/components/recursion-provider/index.js.map +1 -1
- package/build/components/responsive-block-control/index.js +3 -3
- package/build/components/responsive-block-control/index.js.map +1 -1
- package/build/components/responsive-block-control/label.js +1 -1
- package/build/components/responsive-block-control/label.js.map +1 -1
- package/build/components/rich-text/content.js.map +1 -1
- package/build/components/rich-text/event-listeners/index.js +3 -1
- package/build/components/rich-text/event-listeners/index.js.map +1 -1
- package/build/components/rich-text/file-paste-handler.native.js.map +1 -1
- package/build/components/rich-text/format-toolbar/index.js.map +1 -1
- package/build/components/rich-text/format-toolbar/index.native.js.map +1 -1
- package/build/components/rich-text/index.js +3 -2
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/rich-text/index.native.js +2 -6
- package/build/components/rich-text/index.native.js.map +1 -1
- package/build/components/rich-text/multiline.js.map +1 -1
- package/build/components/rich-text/native/get-format-colors.native.js.map +1 -1
- package/build/components/rich-text/native/index.native.js.map +1 -1
- package/build/components/rich-text/native/use-format-types.js +1 -0
- package/build/components/rich-text/native/use-format-types.js.map +1 -1
- package/build/components/rich-text/toolbar-button.js.map +1 -1
- package/build/components/rich-text/use-format-types.js +1 -0
- package/build/components/rich-text/use-format-types.js.map +1 -1
- package/build/components/spacing-sizes-control/index.js +2 -2
- package/build/components/spacing-sizes-control/index.js.map +1 -1
- package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
- package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
- package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +3 -3
- package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
- package/build/components/spacing-sizes-control/linked-button.js +1 -5
- package/build/components/spacing-sizes-control/linked-button.js.map +1 -1
- package/build/components/spacing-sizes-control/utils.js +1 -0
- package/build/components/spacing-sizes-control/utils.js.map +1 -1
- package/build/components/tool-selector/index.js +8 -5
- package/build/components/tool-selector/index.js.map +1 -1
- package/build/components/typewriter/index.js +1 -0
- package/build/components/typewriter/index.js.map +1 -1
- package/build/components/unsupported-block-details/index.native.js.map +1 -1
- package/build/components/url-input/index.js +1 -1
- package/build/components/url-input/index.js.map +1 -1
- package/build/components/use-block-commands/index.js +1 -1
- package/build/components/use-block-commands/index.js.map +1 -1
- package/build/components/use-block-drop-zone/index.js +5 -5
- package/build/components/use-block-drop-zone/index.js.map +1 -1
- package/build/components/use-block-drop-zone/index.native.js +0 -1
- package/build/components/use-block-drop-zone/index.native.js.map +1 -1
- package/build/components/use-flash-editable-blocks/index.js.map +1 -1
- package/build/components/use-moving-animation/index.js +1 -3
- package/build/components/use-moving-animation/index.js.map +1 -1
- package/build/components/use-resize-canvas/index.js +1 -2
- package/build/components/use-resize-canvas/index.js.map +1 -1
- package/build/components/use-settings/index.js +1 -3
- package/build/components/use-settings/index.js.map +1 -1
- package/build/components/writing-flow/index.js +5 -3
- package/build/components/writing-flow/index.js.map +1 -1
- package/build/components/writing-flow/use-tab-nav.js +20 -5
- package/build/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build/hooks/align.js.map +1 -1
- package/build/hooks/block-bindings.js +19 -8
- package/build/hooks/block-bindings.js.map +1 -1
- package/build/hooks/block-hooks.js +1 -1
- package/build/hooks/block-hooks.js.map +1 -1
- package/build/hooks/block-style-variation.js.map +1 -1
- package/build/hooks/contrast-checker.js +0 -1
- package/build/hooks/contrast-checker.js.map +1 -1
- package/build/hooks/duotone.js +2 -2
- 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/generated-class-name.js +1 -0
- package/build/hooks/generated-class-name.js.map +1 -1
- package/build/hooks/grid-visualizer.js +13 -11
- package/build/hooks/grid-visualizer.js.map +1 -1
- package/build/hooks/layout-child.js +41 -3
- package/build/hooks/layout-child.js.map +1 -1
- package/build/hooks/layout.js.map +1 -1
- package/build/hooks/position.js +1 -1
- package/build/hooks/position.js.map +1 -1
- package/build/hooks/spacing-visualizer.js.map +1 -1
- package/build/hooks/style.js +4 -1
- package/build/hooks/style.js.map +1 -1
- package/build/hooks/text-align.js.map +1 -1
- package/build/hooks/use-typography-props.js.map +1 -1
- package/build/hooks/use-zoom-out.js +17 -18
- package/build/hooks/use-zoom-out.js.map +1 -1
- package/build/index.js +0 -7
- package/build/index.js.map +1 -1
- package/build/layouts/constrained.js.map +1 -1
- package/build/layouts/flex.js.map +1 -1
- package/build/layouts/grid.js.map +1 -1
- package/build/layouts/utils.js.map +1 -1
- package/build/private-apis.js +6 -1
- package/build/private-apis.js.map +1 -1
- package/build/store/actions.js +6 -38
- package/build/store/actions.js.map +1 -1
- package/build/store/defaults.js +1 -1
- package/build/store/defaults.js.map +1 -1
- package/build/store/private-actions.js +57 -8
- package/build/store/private-actions.js.map +1 -1
- package/build/store/private-selectors.js +9 -21
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/reducer.js +18 -24
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +66 -22
- package/build/store/selectors.js.map +1 -1
- package/build/utils/block-bindings.js +9 -6
- package/build/utils/block-bindings.js.map +1 -1
- package/build/utils/dom.js +16 -1
- package/build/utils/dom.js.map +1 -1
- package/build/utils/get-font-styles-and-weights.js +2 -2
- package/build/utils/get-font-styles-and-weights.js.map +1 -1
- package/build/utils/object.js +1 -0
- package/build/utils/object.js.map +1 -1
- package/build/utils/pasting.js.map +1 -1
- package/build/utils/transform-styles/index.js +4 -3
- package/build/utils/transform-styles/index.js.map +1 -1
- package/build-module/autocompleters/block.js +15 -9
- package/build-module/autocompleters/block.js.map +1 -1
- package/build-module/autocompleters/link.js +1 -3
- package/build-module/autocompleters/link.js.map +1 -1
- package/build-module/components/audio-player/index.native.js +1 -2
- package/build-module/components/audio-player/index.native.js.map +1 -1
- package/build-module/components/background-image-control/index.js +2 -3
- package/build-module/components/background-image-control/index.js.map +1 -1
- package/build-module/components/block-alignment-control/ui.js +1 -2
- package/build-module/components/block-alignment-control/ui.js.map +1 -1
- package/build-module/components/block-breadcrumb/index.js +1 -2
- package/build-module/components/block-breadcrumb/index.js.map +1 -1
- package/build-module/components/block-canvas/index.js +12 -3
- package/build-module/components/block-canvas/index.js.map +1 -1
- package/build-module/components/block-card/index.js +4 -5
- package/build-module/components/block-card/index.js.map +1 -1
- package/build-module/components/block-compare/block-view.js +1 -2
- package/build-module/components/block-compare/block-view.js.map +1 -1
- package/build-module/components/block-compare/index.js +1 -2
- package/build-module/components/block-compare/index.js.map +1 -1
- package/build-module/components/block-controls/fill.js +1 -3
- package/build-module/components/block-controls/fill.js.map +1 -1
- package/build-module/components/block-controls/slot.js.map +1 -1
- package/build-module/components/block-controls/slot.native.js.map +1 -1
- package/build-module/components/block-draggable/draggable-chip.js +2 -3
- package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
- package/build-module/components/block-draggable/draggable-chip.native.js +1 -2
- package/build-module/components/block-draggable/draggable-chip.native.js.map +1 -1
- package/build-module/components/block-draggable/index.native.js +1 -3
- package/build-module/components/block-draggable/index.native.js.map +1 -1
- package/build-module/components/block-edit/index.js +1 -2
- package/build-module/components/block-edit/index.js.map +1 -1
- package/build-module/components/block-edit/multiple-usage-warning.js +1 -2
- package/build-module/components/block-edit/multiple-usage-warning.js.map +1 -1
- package/build-module/components/block-full-height-alignment-control/index.js +1 -1
- package/build-module/components/block-full-height-alignment-control/index.js.map +1 -1
- package/build-module/components/block-inspector/index.js +1 -3
- package/build-module/components/block-inspector/index.js.map +1 -1
- package/build-module/components/block-list/block-crash-warning.js +1 -1
- package/build-module/components/block-list/block-crash-warning.js.map +1 -1
- package/build-module/components/block-list/block-crash-warning.native.js +1 -1
- package/build-module/components/block-list/block-crash-warning.native.js.map +1 -1
- package/build-module/components/block-list/block-invalid-warning.js +1 -3
- package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
- package/build-module/components/block-list/block-invalid-warning.native.js +1 -1
- package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
- package/build-module/components/block-list/block-list-item.native.js +1 -2
- 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 +1 -2
- package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
- package/build-module/components/block-list/block.js +2 -4
- package/build-module/components/block-list/block.js.map +1 -1
- package/build-module/components/block-list/block.native.js +2 -9
- package/build-module/components/block-list/block.native.js.map +1 -1
- package/build-module/components/block-list/index.js +7 -7
- package/build-module/components/block-list/index.js.map +1 -1
- package/build-module/components/block-list/index.native.js +1 -3
- package/build-module/components/block-list/index.native.js.map +1 -1
- package/build-module/components/block-list/insertion-point.native.js +1 -2
- package/build-module/components/block-list/insertion-point.native.js.map +1 -1
- package/build-module/components/block-list/use-block-props/index.js +1 -2
- package/build-module/components/block-list/use-block-props/index.js.map +1 -1
- package/build-module/components/block-list/use-block-props/use-focus-first-element.js +4 -3
- package/build-module/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
- package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js +11 -6
- 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 +1 -1
- package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build-module/components/block-list/zoom-out-separator.js +10 -7
- package/build-module/components/block-list/zoom-out-separator.js.map +1 -1
- package/build-module/components/block-lock/menu-item.js +1 -3
- package/build-module/components/block-lock/menu-item.js.map +1 -1
- package/build-module/components/block-lock/modal.js +2 -3
- package/build-module/components/block-lock/modal.js.map +1 -1
- package/build-module/components/block-lock/toolbar.js +1 -3
- package/build-module/components/block-lock/toolbar.js.map +1 -1
- package/build-module/components/block-media-update-progress/index.native.js +1 -2
- package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
- package/build-module/components/block-mover/button.js +1 -3
- package/build-module/components/block-mover/button.js.map +1 -1
- package/build-module/components/block-mover/index.js +1 -2
- package/build-module/components/block-mover/index.js.map +1 -1
- package/build-module/components/block-mover/index.native.js +1 -2
- package/build-module/components/block-mover/index.native.js.map +1 -1
- package/build-module/components/block-navigation/dropdown.js +1 -2
- package/build-module/components/block-navigation/dropdown.js.map +1 -1
- package/build-module/components/block-parent-selector/index.js +1 -1
- package/build-module/components/block-parent-selector/index.js.map +1 -1
- package/build-module/components/block-pattern-setup/index.js +1 -3
- package/build-module/components/block-pattern-setup/index.js.map +1 -1
- package/build-module/components/block-pattern-setup/setup-toolbar.js +1 -2
- package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
- package/build-module/components/block-patterns-list/index.js +1 -3
- package/build-module/components/block-patterns-list/index.js.map +1 -1
- package/build-module/components/block-patterns-paging/index.js +2 -3
- package/build-module/components/block-patterns-paging/index.js.map +1 -1
- package/build-module/components/block-popover/index.js +1 -1
- package/build-module/components/block-popover/index.js.map +1 -1
- package/build-module/components/block-preview/auto.js +2 -7
- package/build-module/components/block-preview/auto.js.map +1 -1
- package/build-module/components/block-preview/index.js +3 -4
- package/build-module/components/block-preview/index.js.map +1 -1
- package/build-module/components/block-quick-navigation/index.js +1 -2
- package/build-module/components/block-quick-navigation/index.js.map +1 -1
- package/build-module/components/block-removal-warning-modal/index.js +1 -2
- package/build-module/components/block-removal-warning-modal/index.js.map +1 -1
- package/build-module/components/block-rename/modal.js +3 -4
- package/build-module/components/block-rename/modal.js.map +1 -1
- package/build-module/components/block-rename/rename-control.js +1 -3
- package/build-module/components/block-rename/rename-control.js.map +1 -1
- package/build-module/components/block-settings/container.native.js +1 -3
- package/build-module/components/block-settings/container.native.js.map +1 -1
- package/build-module/components/block-settings-menu/block-parent-selector-menu-item.js +1 -1
- package/build-module/components/block-settings-menu/block-parent-selector-menu-item.js.map +1 -1
- package/build-module/components/block-settings-menu/block-settings-dropdown.js +6 -3
- package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build-module/components/block-settings-menu/index.js +5 -4
- package/build-module/components/block-settings-menu/index.js.map +1 -1
- package/build-module/components/block-settings-menu-controls/index.js +1 -2
- package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
- package/build-module/components/block-styles/index.js +1 -2
- package/build-module/components/block-styles/index.js.map +1 -1
- package/build-module/components/block-styles/menu-items.js +1 -2
- package/build-module/components/block-styles/menu-items.js.map +1 -1
- package/build-module/components/block-styles/preview.native.js +1 -2
- package/build-module/components/block-styles/preview.native.js.map +1 -1
- package/build-module/components/block-switcher/block-transformations-menu.js +1 -3
- package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
- package/build-module/components/block-switcher/block-transformations-menu.native.js +1 -1
- package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
- package/build-module/components/block-switcher/block-variation-transformations.js +1 -3
- package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -1
- package/build-module/components/block-switcher/index.js +3 -4
- package/build-module/components/block-switcher/index.js.map +1 -1
- package/build-module/components/block-switcher/pattern-transformations-menu.js +1 -2
- package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
- package/build-module/components/block-switcher/preview-block-popover.js +1 -2
- package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
- package/build-module/components/block-switcher/use-transformed-patterns.js +1 -0
- package/build-module/components/block-switcher/use-transformed-patterns.js.map +1 -1
- package/build-module/components/block-switcher/utils.js +1 -0
- package/build-module/components/block-switcher/utils.js.map +1 -1
- package/build-module/components/block-toolbar/block-toolbar-menu.native.js +1 -2
- package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
- package/build-module/components/block-toolbar/change-design.js +114 -0
- package/build-module/components/block-toolbar/change-design.js.map +1 -0
- package/build-module/components/block-toolbar/index.js +20 -10
- package/build-module/components/block-toolbar/index.js.map +1 -1
- package/build-module/components/block-toolbar/index.native.js +1 -3
- package/build-module/components/block-toolbar/index.native.js.map +1 -1
- package/build-module/components/block-tools/index.js +5 -19
- package/build-module/components/block-tools/index.js.map +1 -1
- package/build-module/components/block-tools/insertion-point.js +5 -5
- package/build-module/components/block-tools/insertion-point.js.map +1 -1
- package/build-module/components/block-tools/use-show-block-tools.js +4 -6
- package/build-module/components/block-tools/use-show-block-tools.js.map +1 -1
- package/build-module/components/block-tools/zoom-out-mode-inserters.js +20 -29
- package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
- package/build-module/components/block-types-list/index.js +1 -2
- package/build-module/components/block-types-list/index.js.map +1 -1
- package/build-module/components/block-types-list/index.native.js +1 -2
- package/build-module/components/block-types-list/index.native.js.map +1 -1
- package/build-module/components/block-variation-picker/index.js +1 -2
- package/build-module/components/block-variation-picker/index.js.map +1 -1
- package/build-module/components/block-variation-picker/index.native.js +1 -2
- package/build-module/components/block-variation-picker/index.native.js.map +1 -1
- package/build-module/components/block-variation-transforms/index.js +4 -4
- package/build-module/components/block-variation-transforms/index.js.map +1 -1
- package/build-module/components/block-vertical-alignment-control/ui.js +6 -10
- package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
- package/build-module/components/border-radius-control/index.js +1 -3
- package/build-module/components/border-radius-control/index.js.map +1 -1
- package/build-module/components/border-radius-control/linked-button.js +8 -11
- package/build-module/components/border-radius-control/linked-button.js.map +1 -1
- package/build-module/components/border-radius-control/utils.js.map +1 -1
- package/build-module/components/button-block-appender/index.js.map +1 -1
- package/build-module/components/button-block-appender/index.native.js +1 -2
- package/build-module/components/button-block-appender/index.native.js.map +1 -1
- package/build-module/components/child-layout-control/index.js +1 -3
- package/build-module/components/child-layout-control/index.js.map +1 -1
- package/build-module/components/collab/block-comment-icon-slot.js +11 -0
- package/build-module/components/collab/block-comment-icon-slot.js.map +1 -0
- package/build-module/components/collab/block-comment-icon-toolbar-slot.js +11 -0
- package/build-module/components/collab/block-comment-icon-toolbar-slot.js.map +1 -0
- package/build-module/components/color-style-selector/index.js.map +1 -1
- package/build-module/components/colors/utils.js.map +1 -1
- package/build-module/components/colors/with-colors.js.map +1 -1
- package/build-module/components/colors-gradients/control.js +1 -2
- package/build-module/components/colors-gradients/control.js.map +1 -1
- package/build-module/components/colors-gradients/dropdown.js +1 -3
- package/build-module/components/colors-gradients/dropdown.js.map +1 -1
- package/build-module/components/colors-gradients/panel-color-gradient-settings.js +1 -3
- package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
- package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +1 -3
- package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
- package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +7 -1
- package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
- package/build-module/components/contrast-checker/index.native.js +1 -2
- package/build-module/components/contrast-checker/index.native.js.map +1 -1
- package/build-module/components/convert-to-group-buttons/index.js +1 -3
- package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
- package/build-module/components/convert-to-group-buttons/toolbar.js +5 -6
- package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
- package/build-module/components/date-format-picker/index.js +2 -2
- package/build-module/components/date-format-picker/index.js.map +1 -1
- package/build-module/components/default-block-appender/index.js +1 -2
- package/build-module/components/default-block-appender/index.js.map +1 -1
- package/build-module/components/dimensions-tool/index.js +1 -3
- package/build-module/components/dimensions-tool/index.js.map +1 -1
- package/build-module/components/dimensions-tool/width-height-tool.js +1 -3
- package/build-module/components/dimensions-tool/width-height-tool.js.map +1 -1
- package/build-module/components/duotone/utils.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/editor-styles/index.js +1 -3
- package/build-module/components/editor-styles/index.js.map +1 -1
- package/build-module/components/floating-toolbar/index.native.js +1 -2
- package/build-module/components/floating-toolbar/index.native.js.map +1 -1
- package/build-module/components/floating-toolbar/nav-up-icon.js +1 -2
- package/build-module/components/floating-toolbar/nav-up-icon.js.map +1 -1
- package/build-module/components/font-sizes/fluid-utils.js.map +1 -1
- package/build-module/components/font-sizes/utils.js.map +1 -1
- package/build-module/components/font-sizes/with-font-sizes.js +2 -2
- package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build-module/components/global-styles/advanced-panel.js +1 -2
- package/build-module/components/global-styles/advanced-panel.js.map +1 -1
- package/build-module/components/global-styles/border-panel.js +1 -2
- package/build-module/components/global-styles/border-panel.js.map +1 -1
- package/build-module/components/global-styles/color-panel.js +3 -7
- package/build-module/components/global-styles/color-panel.js.map +1 -1
- package/build-module/components/global-styles/dimensions-panel.js +1 -2
- package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
- package/build-module/components/global-styles/filters-panel.js +1 -2
- package/build-module/components/global-styles/filters-panel.js.map +1 -1
- package/build-module/components/global-styles/get-block-css-selector.js.map +1 -1
- package/build-module/components/global-styles/get-global-styles-changes.js +2 -1
- package/build-module/components/global-styles/get-global-styles-changes.js.map +1 -1
- package/build-module/components/global-styles/hooks.js.map +1 -1
- package/build-module/components/global-styles/image-settings-panel.js +1 -2
- package/build-module/components/global-styles/image-settings-panel.js.map +1 -1
- package/build-module/components/global-styles/shadow-panel-components.js +1 -2
- package/build-module/components/global-styles/shadow-panel-components.js.map +1 -1
- package/build-module/components/global-styles/typography-panel.js +1 -2
- package/build-module/components/global-styles/typography-panel.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-context.native.js +6 -0
- package/build-module/components/global-styles/use-global-styles-context.native.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build-module/components/global-styles/utils.js.map +1 -1
- package/build-module/components/gradients/use-gradient.js.map +1 -1
- package/build-module/components/grid/grid-item-movers.js +1 -3
- package/build-module/components/grid/grid-item-movers.js.map +1 -1
- package/build-module/components/grid/grid-visualizer.js.map +1 -1
- package/build-module/components/height-control/index.js +1 -2
- package/build-module/components/height-control/index.js.map +1 -1
- package/build-module/components/iframe/index.js +47 -14
- package/build-module/components/iframe/index.js.map +1 -1
- package/build-module/components/image-editor/aspect-ratio-dropdown.js +1 -3
- package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
- package/build-module/components/image-editor/cropper.js +1 -3
- package/build-module/components/image-editor/cropper.js.map +1 -1
- package/build-module/components/image-editor/form-controls.js +1 -3
- package/build-module/components/image-editor/form-controls.js.map +1 -1
- package/build-module/components/image-editor/index.js +1 -2
- package/build-module/components/image-editor/index.js.map +1 -1
- package/build-module/components/image-editor/use-save-image.js +1 -1
- package/build-module/components/image-editor/use-save-image.js.map +1 -1
- package/build-module/components/image-link-destinations/index.native.js +1 -3
- package/build-module/components/image-link-destinations/index.native.js.map +1 -1
- package/build-module/components/image-size-control/index.js +63 -24
- package/build-module/components/image-size-control/index.js.map +1 -1
- package/build-module/components/inner-blocks/index.js +9 -5
- package/build-module/components/inner-blocks/index.js.map +1 -1
- package/build-module/components/inner-blocks/use-nested-settings-update.js +16 -9
- package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
- package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js +1 -2
- package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
- package/build-module/components/inserter/block-patterns-explorer/index.js +1 -2
- package/build-module/components/inserter/block-patterns-explorer/index.js.map +1 -1
- package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +2 -3
- package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
- package/build-module/components/inserter/block-patterns-explorer/pattern-list.js +3 -5
- package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/index.js +1 -3
- package/build-module/components/inserter/block-patterns-tab/index.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +3 -5
- package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/patterns-filter.js +2 -4
- package/build-module/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js +1 -1
- package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
- package/build-module/components/inserter/block-types-tab.js +1 -3
- package/build-module/components/inserter/block-types-tab.js.map +1 -1
- package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
- package/build-module/components/inserter/category-tabs/index.js +18 -15
- package/build-module/components/inserter/category-tabs/index.js.map +1 -1
- package/build-module/components/inserter/hooks/use-block-types-state.js +1 -1
- package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
- package/build-module/components/inserter/hooks/use-patterns-state.js +1 -1
- package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
- package/build-module/components/inserter/index.native.js +1 -3
- package/build-module/components/inserter/index.native.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-panel.js +1 -2
- package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-preview.js +2 -4
- package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-tab.js +1 -3
- package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
- package/build-module/components/inserter/media-tab/utils.js.map +1 -1
- package/build-module/components/inserter/menu.js +10 -7
- package/build-module/components/inserter/menu.js.map +1 -1
- package/build-module/components/inserter/menu.native.js +1 -3
- package/build-module/components/inserter/menu.native.js.map +1 -1
- package/build-module/components/inserter/mobile-tab-navigation.js +1 -2
- package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
- package/build-module/components/inserter/no-results.js +1 -2
- package/build-module/components/inserter/no-results.js.map +1 -1
- package/build-module/components/inserter/no-results.native.js +1 -2
- package/build-module/components/inserter/no-results.native.js.map +1 -1
- package/build-module/components/inserter/panel.js +1 -3
- package/build-module/components/inserter/panel.js.map +1 -1
- package/build-module/components/inserter/preview-panel.js +1 -2
- package/build-module/components/inserter/preview-panel.js.map +1 -1
- package/build-module/components/inserter/quick-inserter.js +2 -3
- package/build-module/components/inserter/quick-inserter.js.map +1 -1
- package/build-module/components/inserter/search-results.js +2 -3
- package/build-module/components/inserter/search-results.js.map +1 -1
- package/build-module/components/inserter/tabs.native.js.map +1 -1
- package/build-module/components/inserter-button/index.native.js +2 -3
- package/build-module/components/inserter-button/index.native.js.map +1 -1
- package/build-module/components/inserter-list-item/index.js +1 -2
- package/build-module/components/inserter-list-item/index.js.map +1 -1
- package/build-module/components/inserter-listbox/index.js +1 -2
- package/build-module/components/inserter-listbox/index.js.map +1 -1
- package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
- package/build-module/components/inspector-controls/fill.js.map +1 -1
- package/build-module/components/inspector-controls/fill.native.js +1 -3
- package/build-module/components/inspector-controls/fill.native.js.map +1 -1
- package/build-module/components/inspector-controls/slot.js.map +1 -1
- package/build-module/components/inspector-controls/slot.native.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/index.js +1 -4
- package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/settings-tab.js +1 -3
- package/build-module/components/inspector-controls-tabs/settings-tab.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/styles-tab.js +1 -3
- package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/utils.js +3 -6
- package/build-module/components/inspector-controls-tabs/utils.js.map +1 -1
- package/build-module/components/inspector-popover-header/index.js +1 -2
- package/build-module/components/inspector-popover-header/index.js.map +1 -1
- package/build-module/components/line-height-control/index.js.map +1 -1
- package/build-module/components/link-control/index.js +1 -3
- package/build-module/components/link-control/index.js.map +1 -1
- package/build-module/components/link-control/is-url-like.js.map +1 -1
- package/build-module/components/link-control/link-preview.js +14 -13
- package/build-module/components/link-control/link-preview.js.map +1 -1
- package/build-module/components/link-control/search-create-button.js +1 -1
- package/build-module/components/link-control/search-create-button.js.map +1 -1
- package/build-module/components/link-control/search-input.js +4 -7
- package/build-module/components/link-control/search-input.js.map +1 -1
- package/build-module/components/link-control/search-results.js +6 -17
- package/build-module/components/link-control/search-results.js.map +1 -1
- package/build-module/components/link-control/settings-drawer.js +1 -3
- package/build-module/components/link-control/settings-drawer.js.map +1 -1
- package/build-module/components/link-control/settings.js +1 -2
- package/build-module/components/link-control/settings.js.map +1 -1
- package/build-module/components/link-control/use-rich-url-data.js.map +1 -1
- package/build-module/components/list-view/appender.js +6 -6
- package/build-module/components/list-view/appender.js.map +1 -1
- package/build-module/components/list-view/block-contents.js +1 -3
- package/build-module/components/list-view/block-contents.js.map +1 -1
- package/build-module/components/list-view/block-select-button.js +1 -2
- package/build-module/components/list-view/block-select-button.js.map +1 -1
- package/build-module/components/list-view/block.js +1 -3
- package/build-module/components/list-view/block.js.map +1 -1
- package/build-module/components/list-view/branch.js +8 -9
- package/build-module/components/list-view/branch.js.map +1 -1
- package/build-module/components/list-view/drop-indicator.js +1 -2
- package/build-module/components/list-view/drop-indicator.js.map +1 -1
- package/build-module/components/list-view/index.js +2 -4
- package/build-module/components/list-view/index.js.map +1 -1
- package/build-module/components/list-view/use-block-selection.js +2 -2
- package/build-module/components/list-view/use-block-selection.js.map +1 -1
- package/build-module/components/list-view/utils.js +1 -1
- package/build-module/components/list-view/utils.js.map +1 -1
- package/build-module/components/media-placeholder/index.js +1 -3
- package/build-module/components/media-placeholder/index.js.map +1 -1
- package/build-module/components/media-placeholder/index.native.js +2 -4
- package/build-module/components/media-placeholder/index.native.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/media-upload/index.native.js +1 -3
- package/build-module/components/media-upload/index.native.js.map +1 -1
- package/build-module/components/media-upload-progress/index.native.js +1 -2
- package/build-module/components/media-upload-progress/index.native.js.map +1 -1
- package/build-module/components/multi-selection-inspector/index.js +3 -4
- package/build-module/components/multi-selection-inspector/index.js.map +1 -1
- package/build-module/components/observe-typing/index.js +1 -0
- package/build-module/components/observe-typing/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/publish-date-time-picker/index.js +1 -2
- package/build-module/components/publish-date-time-picker/index.js.map +1 -1
- package/build-module/components/recursion-provider/index.js +1 -0
- package/build-module/components/recursion-provider/index.js.map +1 -1
- package/build-module/components/responsive-block-control/index.js +4 -5
- package/build-module/components/responsive-block-control/index.js.map +1 -1
- package/build-module/components/responsive-block-control/label.js +2 -4
- package/build-module/components/responsive-block-control/label.js.map +1 -1
- package/build-module/components/rich-text/content.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/before-input-rules.js +2 -2
- package/build-module/components/rich-text/event-listeners/before-input-rules.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/delete.js +2 -2
- package/build-module/components/rich-text/event-listeners/delete.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/enter.js +2 -2
- package/build-module/components/rich-text/event-listeners/enter.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/firefox-compat.js +2 -2
- package/build-module/components/rich-text/event-listeners/firefox-compat.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/index.js +4 -2
- package/build-module/components/rich-text/event-listeners/index.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/input-events.js +2 -2
- package/build-module/components/rich-text/event-listeners/input-events.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/input-rules.js +2 -2
- package/build-module/components/rich-text/event-listeners/input-rules.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/insert-replacement-text.js +2 -2
- package/build-module/components/rich-text/event-listeners/insert-replacement-text.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/paste-handler.js +2 -2
- package/build-module/components/rich-text/event-listeners/paste-handler.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.js +2 -2
- package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/shortcuts.js +2 -2
- package/build-module/components/rich-text/event-listeners/shortcuts.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/undo-automatic-change.js +2 -2
- package/build-module/components/rich-text/event-listeners/undo-automatic-change.js.map +1 -1
- package/build-module/components/rich-text/file-paste-handler.native.js.map +1 -1
- package/build-module/components/rich-text/format-toolbar/index.js +1 -3
- package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
- package/build-module/components/rich-text/format-toolbar/index.native.js +1 -3
- package/build-module/components/rich-text/format-toolbar/index.native.js.map +1 -1
- package/build-module/components/rich-text/index.js +4 -5
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/rich-text/index.native.js +3 -9
- package/build-module/components/rich-text/index.native.js.map +1 -1
- package/build-module/components/rich-text/multiline.js.map +1 -1
- package/build-module/components/rich-text/native/get-format-colors.native.js.map +1 -1
- package/build-module/components/rich-text/native/index.js +1 -1
- package/build-module/components/rich-text/native/index.js.map +1 -1
- package/build-module/components/rich-text/native/index.native.js +1 -3
- package/build-module/components/rich-text/native/index.native.js.map +1 -1
- package/build-module/components/rich-text/native/toolbar-button-with-options.native.js +1 -3
- package/build-module/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
- package/build-module/components/rich-text/native/use-format-types.js +1 -0
- package/build-module/components/rich-text/native/use-format-types.js.map +1 -1
- package/build-module/components/rich-text/toolbar-button.js.map +1 -1
- package/build-module/components/rich-text/use-format-types.js +1 -0
- package/build-module/components/rich-text/use-format-types.js.map +1 -1
- package/build-module/components/spacing-sizes-control/index.js +4 -5
- package/build-module/components/spacing-sizes-control/index.js.map +1 -1
- package/build-module/components/spacing-sizes-control/input-controls/axial.js +1 -2
- package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
- package/build-module/components/spacing-sizes-control/input-controls/separated.js +1 -2
- package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
- package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +5 -7
- package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
- package/build-module/components/spacing-sizes-control/linked-button.js +2 -6
- package/build-module/components/spacing-sizes-control/linked-button.js.map +1 -1
- package/build-module/components/spacing-sizes-control/utils.js +1 -0
- package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
- package/build-module/components/tabbed-sidebar/index.js +1 -2
- package/build-module/components/tabbed-sidebar/index.js.map +1 -1
- package/build-module/components/tool-selector/index.js +9 -8
- package/build-module/components/tool-selector/index.js.map +1 -1
- package/build-module/components/typewriter/index.js +1 -0
- package/build-module/components/typewriter/index.js.map +1 -1
- package/build-module/components/unsupported-block-details/index.native.js +1 -2
- package/build-module/components/unsupported-block-details/index.native.js.map +1 -1
- package/build-module/components/url-input/button.js +1 -2
- package/build-module/components/url-input/button.js.map +1 -1
- package/build-module/components/url-input/index.js +2 -4
- package/build-module/components/url-input/index.js.map +1 -1
- package/build-module/components/url-popover/image-url-input-ui.js +1 -3
- package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build-module/components/url-popover/index.js +1 -2
- package/build-module/components/url-popover/index.js.map +1 -1
- package/build-module/components/url-popover/link-editor.js +1 -2
- package/build-module/components/url-popover/link-editor.js.map +1 -1
- package/build-module/components/url-popover/link-viewer.js +1 -2
- package/build-module/components/url-popover/link-viewer.js.map +1 -1
- package/build-module/components/use-block-commands/index.js +1 -1
- package/build-module/components/use-block-commands/index.js.map +1 -1
- package/build-module/components/use-block-drop-zone/index.js +5 -5
- package/build-module/components/use-block-drop-zone/index.js.map +1 -1
- package/build-module/components/use-block-drop-zone/index.native.js +0 -1
- package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
- package/build-module/components/use-flash-editable-blocks/index.js.map +1 -1
- package/build-module/components/use-moving-animation/index.js +1 -3
- package/build-module/components/use-moving-animation/index.js.map +1 -1
- package/build-module/components/use-resize-canvas/index.js +1 -2
- package/build-module/components/use-resize-canvas/index.js.map +1 -1
- package/build-module/components/use-settings/index.js +1 -3
- package/build-module/components/use-settings/index.js.map +1 -1
- package/build-module/components/video-player/index.native.js +1 -2
- package/build-module/components/video-player/index.native.js.map +1 -1
- package/build-module/components/warning/index.js +1 -2
- package/build-module/components/warning/index.js.map +1 -1
- package/build-module/components/warning/index.native.js +1 -2
- package/build-module/components/warning/index.native.js.map +1 -1
- package/build-module/components/writing-flow/index.js +6 -6
- package/build-module/components/writing-flow/index.js.map +1 -1
- package/build-module/components/writing-flow/use-tab-nav.js +20 -5
- package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build-module/hooks/align.js.map +1 -1
- package/build-module/hooks/anchor.js +1 -3
- package/build-module/hooks/anchor.js.map +1 -1
- package/build-module/hooks/block-bindings.js +21 -12
- package/build-module/hooks/block-bindings.js.map +1 -1
- package/build-module/hooks/block-hooks.js +2 -3
- package/build-module/hooks/block-hooks.js.map +1 -1
- package/build-module/hooks/block-style-variation.js +1 -2
- package/build-module/hooks/block-style-variation.js.map +1 -1
- package/build-module/hooks/contrast-checker.js +0 -1
- package/build-module/hooks/contrast-checker.js.map +1 -1
- package/build-module/hooks/dimensions.js +1 -3
- package/build-module/hooks/dimensions.js.map +1 -1
- package/build-module/hooks/duotone.js +3 -5
- 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/generated-class-name.js +1 -0
- package/build-module/hooks/generated-class-name.js.map +1 -1
- package/build-module/hooks/grid-visualizer.js +14 -14
- package/build-module/hooks/grid-visualizer.js.map +1 -1
- package/build-module/hooks/layout-child.js +42 -6
- package/build-module/hooks/layout-child.js.map +1 -1
- package/build-module/hooks/layout.js +1 -3
- package/build-module/hooks/layout.js.map +1 -1
- package/build-module/hooks/position.js +1 -1
- package/build-module/hooks/position.js.map +1 -1
- package/build-module/hooks/spacing-visualizer.js.map +1 -1
- package/build-module/hooks/style.js +5 -4
- package/build-module/hooks/style.js.map +1 -1
- package/build-module/hooks/text-align.js.map +1 -1
- package/build-module/hooks/typography.native.js +1 -2
- package/build-module/hooks/typography.native.js.map +1 -1
- package/build-module/hooks/use-bindings-attributes.js +1 -2
- package/build-module/hooks/use-bindings-attributes.js.map +1 -1
- package/build-module/hooks/use-typography-props.js.map +1 -1
- package/build-module/hooks/use-zoom-out.js +18 -19
- package/build-module/hooks/use-zoom-out.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 +1 -3
- package/build-module/layouts/constrained.js.map +1 -1
- package/build-module/layouts/flex.js +1 -3
- package/build-module/layouts/flex.js.map +1 -1
- package/build-module/layouts/grid.js +1 -3
- package/build-module/layouts/grid.js.map +1 -1
- package/build-module/layouts/utils.js.map +1 -1
- package/build-module/private-apis.js +7 -3
- package/build-module/private-apis.js.map +1 -1
- package/build-module/store/actions.js +6 -38
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/defaults.js +1 -1
- package/build-module/store/defaults.js.map +1 -1
- package/build-module/store/private-actions.js +54 -7
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/private-selectors.js +9 -20
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/reducer.js +17 -22
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +66 -20
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/block-bindings.js +9 -6
- package/build-module/utils/block-bindings.js.map +1 -1
- package/build-module/utils/dom.js +16 -1
- package/build-module/utils/dom.js.map +1 -1
- package/build-module/utils/get-font-styles-and-weights.js +3 -3
- package/build-module/utils/get-font-styles-and-weights.js.map +1 -1
- package/build-module/utils/get-px-from-css-unit.js +1 -1
- package/build-module/utils/get-px-from-css-unit.js.map +1 -1
- package/build-module/utils/object.js +1 -0
- package/build-module/utils/object.js.map +1 -1
- package/build-module/utils/pasting.js.map +1 -1
- package/build-module/utils/transform-styles/index.js +3 -2
- package/build-module/utils/transform-styles/index.js.map +1 -1
- package/build-style/content-rtl.css +19 -27
- package/build-style/content.css +19 -27
- package/build-style/style-rtl.css +47 -54
- package/build-style/style.css +47 -54
- package/build-types/utils/dom.d.ts.map +1 -1
- package/package.json +34 -33
- package/src/autocompleters/block.js +16 -7
- package/src/components/block-canvas/index.js +17 -1
- package/src/components/block-canvas/style.scss +1 -0
- package/src/components/block-card/index.js +3 -3
- package/src/components/block-full-height-alignment-control/index.js +1 -1
- package/src/components/block-inspector/style.scss +0 -6
- package/src/components/block-list/block.js +1 -2
- package/src/components/block-list/block.native.js +0 -4
- package/src/components/block-list/content.scss +4 -3
- package/src/components/block-list/index.js +4 -4
- package/src/components/block-list/use-block-props/index.js +0 -2
- package/src/components/block-list/use-block-props/use-focus-first-element.js +5 -3
- package/src/components/block-list/use-block-props/use-selected-block-event-handlers.js +12 -4
- package/src/components/block-list/use-in-between-inserter.js +1 -1
- package/src/components/block-list/zoom-out-separator.js +8 -6
- package/src/components/block-patterns-list/stories/fixtures.js +834 -0
- package/src/components/block-patterns-list/stories/index.story.js +81 -0
- package/src/components/block-patterns-list/style.scss +2 -0
- package/src/components/block-patterns-paging/index.js +1 -1
- package/src/components/block-popover/index.js +2 -2
- package/src/components/block-preview/auto.js +1 -4
- package/src/components/block-preview/index.js +2 -2
- package/src/components/block-settings-menu/block-settings-dropdown.js +4 -0
- package/src/components/block-settings-menu/index.js +3 -0
- package/src/components/block-toolbar/change-design.js +133 -0
- package/src/components/block-toolbar/index.js +25 -8
- package/src/components/block-toolbar/style.scss +16 -0
- package/src/components/block-tools/index.js +4 -28
- package/src/components/block-tools/insertion-point.js +4 -3
- package/src/components/block-tools/style.scss +0 -20
- package/src/components/block-tools/use-show-block-tools.js +2 -8
- package/src/components/block-tools/zoom-out-mode-inserters.js +25 -40
- package/src/components/block-variation-transforms/index.js +2 -2
- package/src/components/block-vertical-alignment-control/ui.js +11 -15
- package/src/components/border-radius-control/linked-button.js +9 -11
- package/src/components/collab/block-comment-icon-slot.js +12 -0
- package/src/components/collab/block-comment-icon-toolbar-slot.js +12 -0
- package/src/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +7 -1
- package/src/components/convert-to-group-buttons/toolbar.js +4 -4
- package/src/components/global-styles/color-panel.js +2 -10
- package/src/components/global-styles/test/use-global-styles-context.native.js +1 -0
- package/src/components/global-styles/use-global-styles-context.native.js +6 -0
- package/src/components/iframe/content.scss +22 -32
- package/src/components/iframe/index.js +62 -15
- package/src/components/iframe/style.scss +17 -0
- package/src/components/image-size-control/index.js +74 -43
- package/src/components/image-size-control/test/index.js +5 -63
- package/src/components/inner-blocks/index.js +12 -6
- package/src/components/inner-blocks/use-nested-settings-update.js +16 -10
- package/src/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +1 -1
- package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +2 -3
- package/src/components/inserter/block-patterns-tab/patterns-filter.js +1 -1
- package/src/components/inserter/category-tabs/index.js +17 -13
- package/src/components/inserter/menu.js +12 -5
- package/src/components/inserter/quick-inserter.js +1 -1
- package/src/components/inserter/style.scss +14 -41
- package/src/components/inserter-button/index.native.js +1 -1
- package/src/components/inspector-controls-tabs/index.js +1 -6
- package/src/components/inspector-controls-tabs/utils.js +0 -3
- package/src/components/link-control/link-preview.js +15 -8
- package/src/components/link-control/search-input.js +4 -5
- package/src/components/link-control/search-results.js +2 -13
- package/src/components/link-control/test/index.js +147 -70
- package/src/components/list-view/appender.js +5 -6
- package/src/components/list-view/branch.js +8 -6
- package/src/components/list-view/index.js +1 -2
- package/src/components/media-replace-flow/test/index.js +1 -1
- package/src/components/provider/index.js +1 -3
- package/src/components/provider/test/experimental-provider.js +43 -1
- package/src/components/responsive-block-control/style.scss +0 -1
- package/src/components/rich-text/event-listeners/index.js +4 -2
- package/src/components/rich-text/index.native.js +0 -2
- package/src/components/rich-text/style.scss +5 -0
- package/src/components/spacing-sizes-control/index.js +3 -3
- package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +4 -4
- package/src/components/spacing-sizes-control/linked-button.js +2 -12
- package/src/components/tool-selector/index.js +6 -5
- package/src/components/url-input/index.js +1 -1
- package/src/components/use-block-commands/index.js +1 -1
- package/src/components/use-block-drop-zone/index.js +5 -5
- package/src/components/use-block-drop-zone/index.native.js +0 -1
- package/src/components/use-moving-animation/index.js +0 -1
- package/src/components/use-resize-canvas/index.js +1 -3
- package/src/components/use-settings/index.js +0 -1
- package/src/components/writing-flow/index.js +5 -3
- package/src/components/writing-flow/use-tab-nav.js +27 -4
- package/src/hooks/block-bindings.js +48 -31
- package/src/hooks/contrast-checker.js +0 -1
- package/src/hooks/duotone.js +2 -2
- package/src/hooks/grid-visualizer.js +23 -9
- package/src/hooks/layout-child.js +48 -3
- package/src/hooks/style.js +7 -3
- package/src/hooks/use-zoom-out.js +20 -24
- package/src/index.js +0 -1
- package/src/private-apis.js +6 -1
- package/src/store/actions.js +5 -53
- package/src/store/defaults.js +2 -1
- package/src/store/private-actions.js +71 -8
- package/src/store/private-selectors.js +9 -19
- package/src/store/reducer.js +25 -28
- package/src/store/selectors.js +82 -20
- package/src/store/test/actions.js +41 -0
- package/src/store/test/private-selectors.js +7 -1
- package/src/store/test/reducer.js +23 -0
- package/src/store/test/selectors.js +13 -2
- package/src/style.scss +1 -0
- package/src/utils/block-bindings.js +9 -6
- package/src/utils/dom.js +22 -2
- package/src/utils/get-font-styles-and-weights.js +2 -2
- package/src/utils/test/use-block-bindings-utils.js +174 -0
- package/src/utils/transform-styles/index.js +3 -2
- package/tsconfig.tsbuildinfo +1 -1
- package/build/components/block-list/use-block-props/use-zoom-out-mode-exit.js +0 -57
- package/build/components/block-list/use-block-props/use-zoom-out-mode-exit.js.map +0 -1
- package/build/components/block-toolbar/shuffle.js +0 -110
- package/build/components/block-toolbar/shuffle.js.map +0 -1
- package/build/components/block-tools/zoom-out-popover.js +0 -57
- package/build/components/block-tools/zoom-out-popover.js.map +0 -1
- package/build/components/block-tools/zoom-out-toolbar.js +0 -149
- package/build/components/block-tools/zoom-out-toolbar.js.map +0 -1
- package/build/components/block-vertical-alignment-control/icons.js +0 -48
- package/build/components/block-vertical-alignment-control/icons.js.map +0 -1
- package/build-module/components/block-list/use-block-props/use-zoom-out-mode-exit.js +0 -51
- package/build-module/components/block-list/use-block-props/use-zoom-out-mode-exit.js.map +0 -1
- package/build-module/components/block-toolbar/shuffle.js +0 -103
- package/build-module/components/block-toolbar/shuffle.js.map +0 -1
- package/build-module/components/block-tools/zoom-out-popover.js +0 -48
- package/build-module/components/block-tools/zoom-out-popover.js.map +0 -1
- package/build-module/components/block-tools/zoom-out-toolbar.js +0 -142
- package/build-module/components/block-tools/zoom-out-toolbar.js.map +0 -1
- package/build-module/components/block-vertical-alignment-control/icons.js +0 -41
- package/build-module/components/block-vertical-alignment-control/icons.js.map +0 -1
- package/src/components/block-list/use-block-props/use-zoom-out-mode-exit.js +0 -65
- package/src/components/block-toolbar/shuffle.js +0 -111
- package/src/components/block-tools/zoom-out-popover.js +0 -46
- package/src/components/block-tools/zoom-out-toolbar.js +0 -156
- package/src/components/block-vertical-alignment-control/icons.js +0 -34
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","_x","Button","Modal","useState","useCallback","useMemo","createBlock","rawHandler","useDispatch","useSelect","Warning","BlockCompare","store","blockEditorStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","blockToBlocks","block","HTML","originalContent","BlockInvalidWarning","clientId","canInsertHTMLBlock","canInsertClassicBlock","select","canInsertBlockType","getBlock","getBlockRootClientId","rootClientId","replaceBlock","compare","setCompare","onCompareClose","convert","toClassic","classicBlock","content","toHTML","htmlBlock","toBlocks","newBlocks","toRecoveredBlock","recoveredBlock","name","attributes","innerBlocks","secondaryActions","title","onClick","filter","Boolean","children","actions","__next40pxDefaultSize","variant","onRequestClose","className","onKeep","onConvert","convertor","convertButtonText"],"sources":["@wordpress/block-editor/src/components/block-list/block-invalid-warning.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { Button, Modal } from '@wordpress/components';\nimport { useState, useCallback, useMemo } from '@wordpress/element';\nimport { createBlock, rawHandler } from '@wordpress/blocks';\nimport { useDispatch, useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport Warning from '../warning';\nimport BlockCompare from '../block-compare';\nimport { store as blockEditorStore } from '../../store';\n\nconst blockToBlocks = ( block ) =>\n\trawHandler( {\n\t\tHTML: block.originalContent,\n\t} );\n\nexport default function BlockInvalidWarning( { clientId } ) {\n\tconst { block, canInsertHTMLBlock, canInsertClassicBlock } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canInsertBlockType, getBlock, getBlockRootClientId } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\treturn {\n\t\t\t\tblock: getBlock( clientId ),\n\t\t\t\tcanInsertHTMLBlock: canInsertBlockType(\n\t\t\t\t\t'core/html',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanInsertClassicBlock: canInsertBlockType(\n\t\t\t\t\t'core/freeform',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { replaceBlock } = useDispatch( blockEditorStore );\n\n\tconst [ compare, setCompare ] = useState( false );\n\tconst onCompareClose = useCallback( () => setCompare( false ), [] );\n\n\tconst convert = useMemo(\n\t\t() => ( {\n\t\t\ttoClassic() {\n\t\t\t\tconst classicBlock = createBlock( 'core/freeform', {\n\t\t\t\t\tcontent: block.originalContent,\n\t\t\t\t} );\n\t\t\t\treturn replaceBlock( block.clientId, classicBlock );\n\t\t\t},\n\t\t\ttoHTML() {\n\t\t\t\tconst htmlBlock = createBlock( 'core/html', {\n\t\t\t\t\tcontent: block.originalContent,\n\t\t\t\t} );\n\t\t\t\treturn replaceBlock( block.clientId, htmlBlock );\n\t\t\t},\n\t\t\ttoBlocks() {\n\t\t\t\tconst newBlocks = blockToBlocks( block );\n\t\t\t\treturn replaceBlock( block.clientId, newBlocks );\n\t\t\t},\n\t\t\ttoRecoveredBlock() {\n\t\t\t\tconst recoveredBlock = createBlock(\n\t\t\t\t\tblock.name,\n\t\t\t\t\tblock.attributes,\n\t\t\t\t\tblock.innerBlocks\n\t\t\t\t);\n\t\t\t\treturn replaceBlock( block.clientId, recoveredBlock );\n\t\t\t},\n\t\t} ),\n\t\t[ block, replaceBlock ]\n\t);\n\n\tconst secondaryActions = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t{\n\t\t\t\t\t// translators: Button to fix block content\n\t\t\t\t\ttitle: _x( 'Resolve', 'imperative verb' ),\n\t\t\t\t\tonClick: () => setCompare( true ),\n\t\t\t\t},\n\t\t\t\tcanInsertHTMLBlock && {\n\t\t\t\t\ttitle: __( 'Convert to HTML' ),\n\t\t\t\t\tonClick: convert.toHTML,\n\t\t\t\t},\n\t\t\t\tcanInsertClassicBlock && {\n\t\t\t\t\ttitle: __( 'Convert to Classic Block' ),\n\t\t\t\t\tonClick: convert.toClassic,\n\t\t\t\t},\n\t\t\t].filter( Boolean ),\n\t\t[ canInsertHTMLBlock, canInsertClassicBlock, convert ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<Warning\n\t\t\t\tactions={ [\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tkey=\"recover\"\n\t\t\t\t\t\tonClick={ convert.toRecoveredBlock }\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Attempt recovery' ) }\n\t\t\t\t\t</Button>,\n\t\t\t\t] }\n\t\t\t\tsecondaryActions={ secondaryActions }\n\t\t\t>\n\t\t\t\t{ __( 'Block contains unexpected or invalid content.' ) }\n\t\t\t</Warning>\n\t\t\t{ compare && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={\n\t\t\t\t\t\t// translators: Dialog title to fix block content\n\t\t\t\t\t\t__( 'Resolve Block' )\n\t\t\t\t\t}\n\t\t\t\t\tonRequestClose={ onCompareClose }\n\t\t\t\t\tclassName=\"block-editor-block-compare\"\n\t\t\t\t>\n\t\t\t\t\t<BlockCompare\n\t\t\t\t\t\tblock={ block }\n\t\t\t\t\t\tonKeep={ convert.toHTML }\n\t\t\t\t\t\tonConvert={ convert.toBlocks }\n\t\t\t\t\t\tconvertor={ blockToBlocks }\n\t\t\t\t\t\tconvertButtonText={ __( 'Convert to Blocks' ) }\n\t\t\t\t\t/>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,EAAEC,EAAE,QAAQ,iBAAiB;AACxC,SAASC,MAAM,EAAEC,KAAK,QAAQ,uBAAuB;AACrD,SAASC,QAAQ,EAAEC,WAAW,EAAEC,OAAO,QAAQ,oBAAoB;AACnE,SAASC,WAAW,EAAEC,UAAU,QAAQ,mBAAmB;AAC3D,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;;AAExD;AACA;AACA;AACA,OAAOC,OAAO,MAAM,YAAY;AAChC,OAAOC,YAAY,MAAM,kBAAkB;AAC3C,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA
|
|
1
|
+
{"version":3,"names":["__","_x","Button","Modal","useState","useCallback","useMemo","createBlock","rawHandler","useDispatch","useSelect","Warning","BlockCompare","store","blockEditorStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","blockToBlocks","block","HTML","originalContent","BlockInvalidWarning","clientId","canInsertHTMLBlock","canInsertClassicBlock","select","canInsertBlockType","getBlock","getBlockRootClientId","rootClientId","replaceBlock","compare","setCompare","onCompareClose","convert","toClassic","classicBlock","content","toHTML","htmlBlock","toBlocks","newBlocks","toRecoveredBlock","recoveredBlock","name","attributes","innerBlocks","secondaryActions","title","onClick","filter","Boolean","children","actions","__next40pxDefaultSize","variant","onRequestClose","className","onKeep","onConvert","convertor","convertButtonText"],"sources":["@wordpress/block-editor/src/components/block-list/block-invalid-warning.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { Button, Modal } from '@wordpress/components';\nimport { useState, useCallback, useMemo } from '@wordpress/element';\nimport { createBlock, rawHandler } from '@wordpress/blocks';\nimport { useDispatch, useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport Warning from '../warning';\nimport BlockCompare from '../block-compare';\nimport { store as blockEditorStore } from '../../store';\n\nconst blockToBlocks = ( block ) =>\n\trawHandler( {\n\t\tHTML: block.originalContent,\n\t} );\n\nexport default function BlockInvalidWarning( { clientId } ) {\n\tconst { block, canInsertHTMLBlock, canInsertClassicBlock } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canInsertBlockType, getBlock, getBlockRootClientId } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\treturn {\n\t\t\t\tblock: getBlock( clientId ),\n\t\t\t\tcanInsertHTMLBlock: canInsertBlockType(\n\t\t\t\t\t'core/html',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanInsertClassicBlock: canInsertBlockType(\n\t\t\t\t\t'core/freeform',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { replaceBlock } = useDispatch( blockEditorStore );\n\n\tconst [ compare, setCompare ] = useState( false );\n\tconst onCompareClose = useCallback( () => setCompare( false ), [] );\n\n\tconst convert = useMemo(\n\t\t() => ( {\n\t\t\ttoClassic() {\n\t\t\t\tconst classicBlock = createBlock( 'core/freeform', {\n\t\t\t\t\tcontent: block.originalContent,\n\t\t\t\t} );\n\t\t\t\treturn replaceBlock( block.clientId, classicBlock );\n\t\t\t},\n\t\t\ttoHTML() {\n\t\t\t\tconst htmlBlock = createBlock( 'core/html', {\n\t\t\t\t\tcontent: block.originalContent,\n\t\t\t\t} );\n\t\t\t\treturn replaceBlock( block.clientId, htmlBlock );\n\t\t\t},\n\t\t\ttoBlocks() {\n\t\t\t\tconst newBlocks = blockToBlocks( block );\n\t\t\t\treturn replaceBlock( block.clientId, newBlocks );\n\t\t\t},\n\t\t\ttoRecoveredBlock() {\n\t\t\t\tconst recoveredBlock = createBlock(\n\t\t\t\t\tblock.name,\n\t\t\t\t\tblock.attributes,\n\t\t\t\t\tblock.innerBlocks\n\t\t\t\t);\n\t\t\t\treturn replaceBlock( block.clientId, recoveredBlock );\n\t\t\t},\n\t\t} ),\n\t\t[ block, replaceBlock ]\n\t);\n\n\tconst secondaryActions = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t{\n\t\t\t\t\t// translators: Button to fix block content\n\t\t\t\t\ttitle: _x( 'Resolve', 'imperative verb' ),\n\t\t\t\t\tonClick: () => setCompare( true ),\n\t\t\t\t},\n\t\t\t\tcanInsertHTMLBlock && {\n\t\t\t\t\ttitle: __( 'Convert to HTML' ),\n\t\t\t\t\tonClick: convert.toHTML,\n\t\t\t\t},\n\t\t\t\tcanInsertClassicBlock && {\n\t\t\t\t\ttitle: __( 'Convert to Classic Block' ),\n\t\t\t\t\tonClick: convert.toClassic,\n\t\t\t\t},\n\t\t\t].filter( Boolean ),\n\t\t[ canInsertHTMLBlock, canInsertClassicBlock, convert ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<Warning\n\t\t\t\tactions={ [\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tkey=\"recover\"\n\t\t\t\t\t\tonClick={ convert.toRecoveredBlock }\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Attempt recovery' ) }\n\t\t\t\t\t</Button>,\n\t\t\t\t] }\n\t\t\t\tsecondaryActions={ secondaryActions }\n\t\t\t>\n\t\t\t\t{ __( 'Block contains unexpected or invalid content.' ) }\n\t\t\t</Warning>\n\t\t\t{ compare && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={\n\t\t\t\t\t\t// translators: Dialog title to fix block content\n\t\t\t\t\t\t__( 'Resolve Block' )\n\t\t\t\t\t}\n\t\t\t\t\tonRequestClose={ onCompareClose }\n\t\t\t\t\tclassName=\"block-editor-block-compare\"\n\t\t\t\t>\n\t\t\t\t\t<BlockCompare\n\t\t\t\t\t\tblock={ block }\n\t\t\t\t\t\tonKeep={ convert.toHTML }\n\t\t\t\t\t\tonConvert={ convert.toBlocks }\n\t\t\t\t\t\tconvertor={ blockToBlocks }\n\t\t\t\t\t\tconvertButtonText={ __( 'Convert to Blocks' ) }\n\t\t\t\t\t/>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -41,7 +41,7 @@ export default function BlockInvalidWarning({
|
|
|
41
41
|
blockTitle,
|
|
42
42
|
icon
|
|
43
43
|
} = useSelect(selector, [clientId]);
|
|
44
|
-
const accessibilityLabel = sprintf(
|
|
44
|
+
const accessibilityLabel = sprintf(/* translators: accessibility text for blocks with invalid content. %d: localized block title */
|
|
45
45
|
__('%s block. This block has invalid content'), blockTitle);
|
|
46
46
|
const {
|
|
47
47
|
replaceBlock
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TouchableWithoutFeedback","__","sprintf","useSelect","useDispatch","createBlock","getBlockType","Warning","store","blockEditorStore","jsx","_jsx","BlockInvalidWarning","clientId","selector","select","getBlock","block","name","blockType","title","blockIcon","icon","blockTitle","accessibilityLabel","replaceBlock","recoverBlock","attributes","innerBlocks","attemptBlockRecovery","onPress","accessible","accessibilityRole","children","message"],"sources":["@wordpress/block-editor/src/components/block-list/block-invalid-warning.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { TouchableWithoutFeedback } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { createBlock, getBlockType } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport Warning from '../warning';\nimport { store as blockEditorStore } from '../../store';\n\nexport default function BlockInvalidWarning( { clientId } ) {\n\tconst selector = ( select ) => {\n\t\tconst { getBlock } = select( blockEditorStore );\n\t\tconst block = getBlock( clientId );\n\t\tconst { name } = block || {};\n\n\t\tconst blockType = getBlockType( name || 'core/missing' );\n\t\tconst title = blockType?.title;\n\t\tconst blockIcon = blockType?.icon;\n\n\t\treturn {\n\t\t\tblock,\n\t\t\tblockTitle: title,\n\t\t\ticon: blockIcon,\n\t\t};\n\t};\n\n\tconst { block, blockTitle, icon } = useSelect( selector, [ clientId ] );\n\n\tconst accessibilityLabel = sprintf(\n\t\t/* translators: accessibility text for blocks with invalid content. %d: localized block title */\n\t\t__( '%s block. This block has invalid content' ),\n\t\tblockTitle\n\t);\n\n\tconst { replaceBlock } = useDispatch( blockEditorStore );\n\n\tconst recoverBlock = ( { name, attributes, innerBlocks } ) =>\n\t\tcreateBlock( name, attributes, innerBlocks );\n\n\tconst attemptBlockRecovery = () => {\n\t\treplaceBlock( block.clientId, recoverBlock( block ) );\n\t};\n\n\treturn (\n\t\t<TouchableWithoutFeedback\n\t\t\tonPress={ attemptBlockRecovery }\n\t\t\taccessible\n\t\t\taccessibilityRole=\"button\"\n\t\t>\n\t\t\t<Warning\n\t\t\t\ttitle={ blockTitle }\n\t\t\t\t// eslint-disable-next-line @wordpress/i18n-no-collapsible-whitespace\n\t\t\t\tmessage={ __(\n\t\t\t\t\t'Problem displaying block. \\nTap to attempt block recovery.'\n\t\t\t\t) }\n\t\t\t\ticon={ icon }\n\t\t\t\taccessibilityLabel={ accessibilityLabel }\n\t\t\t/>\n\t\t</TouchableWithoutFeedback>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,wBAAwB,QAAQ,cAAc;;AAEvD;AACA;AACA;AACA,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,WAAW,EAAEC,YAAY,QAAQ,mBAAmB;;AAE7D;AACA;AACA;AACA,OAAOC,OAAO,MAAM,YAAY;AAChC,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAExD,eAAe,SAASC,mBAAmBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EAC3D,MAAMC,QAAQ,GAAKC,MAAM,IAAM;IAC9B,MAAM;MAAEC;IAAS,CAAC,GAAGD,MAAM,CAAEN,gBAAiB,CAAC;IAC/C,MAAMQ,KAAK,GAAGD,QAAQ,CAAEH,QAAS,CAAC;IAClC,MAAM;MAAEK;IAAK,CAAC,GAAGD,KAAK,IAAI,CAAC,CAAC;IAE5B,MAAME,SAAS,GAAGb,YAAY,CAAEY,IAAI,IAAI,cAAe,CAAC;IACxD,MAAME,KAAK,GAAGD,SAAS,EAAEC,KAAK;IAC9B,MAAMC,SAAS,GAAGF,SAAS,EAAEG,IAAI;IAEjC,OAAO;MACNL,KAAK;MACLM,UAAU,EAAEH,KAAK;MACjBE,IAAI,EAAED;IACP,CAAC;EACF,CAAC;EAED,MAAM;IAAEJ,KAAK;IAAEM,UAAU;IAAED;EAAK,CAAC,GAAGnB,SAAS,CAAEW,QAAQ,EAAE,CAAED,QAAQ,CAAG,CAAC;EAEvE,MAAMW,kBAAkB,GAAGtB,OAAO,
|
|
1
|
+
{"version":3,"names":["TouchableWithoutFeedback","__","sprintf","useSelect","useDispatch","createBlock","getBlockType","Warning","store","blockEditorStore","jsx","_jsx","BlockInvalidWarning","clientId","selector","select","getBlock","block","name","blockType","title","blockIcon","icon","blockTitle","accessibilityLabel","replaceBlock","recoverBlock","attributes","innerBlocks","attemptBlockRecovery","onPress","accessible","accessibilityRole","children","message"],"sources":["@wordpress/block-editor/src/components/block-list/block-invalid-warning.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { TouchableWithoutFeedback } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { createBlock, getBlockType } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport Warning from '../warning';\nimport { store as blockEditorStore } from '../../store';\n\nexport default function BlockInvalidWarning( { clientId } ) {\n\tconst selector = ( select ) => {\n\t\tconst { getBlock } = select( blockEditorStore );\n\t\tconst block = getBlock( clientId );\n\t\tconst { name } = block || {};\n\n\t\tconst blockType = getBlockType( name || 'core/missing' );\n\t\tconst title = blockType?.title;\n\t\tconst blockIcon = blockType?.icon;\n\n\t\treturn {\n\t\t\tblock,\n\t\t\tblockTitle: title,\n\t\t\ticon: blockIcon,\n\t\t};\n\t};\n\n\tconst { block, blockTitle, icon } = useSelect( selector, [ clientId ] );\n\n\tconst accessibilityLabel = sprintf(\n\t\t/* translators: accessibility text for blocks with invalid content. %d: localized block title */\n\t\t__( '%s block. This block has invalid content' ),\n\t\tblockTitle\n\t);\n\n\tconst { replaceBlock } = useDispatch( blockEditorStore );\n\n\tconst recoverBlock = ( { name, attributes, innerBlocks } ) =>\n\t\tcreateBlock( name, attributes, innerBlocks );\n\n\tconst attemptBlockRecovery = () => {\n\t\treplaceBlock( block.clientId, recoverBlock( block ) );\n\t};\n\n\treturn (\n\t\t<TouchableWithoutFeedback\n\t\t\tonPress={ attemptBlockRecovery }\n\t\t\taccessible\n\t\t\taccessibilityRole=\"button\"\n\t\t>\n\t\t\t<Warning\n\t\t\t\ttitle={ blockTitle }\n\t\t\t\t// eslint-disable-next-line @wordpress/i18n-no-collapsible-whitespace\n\t\t\t\tmessage={ __(\n\t\t\t\t\t'Problem displaying block. \\nTap to attempt block recovery.'\n\t\t\t\t) }\n\t\t\t\ticon={ icon }\n\t\t\t\taccessibilityLabel={ accessibilityLabel }\n\t\t\t/>\n\t\t</TouchableWithoutFeedback>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,wBAAwB,QAAQ,cAAc;;AAEvD;AACA;AACA;AACA,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,WAAW,EAAEC,YAAY,QAAQ,mBAAmB;;AAE7D;AACA;AACA;AACA,OAAOC,OAAO,MAAM,YAAY;AAChC,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAExD,eAAe,SAASC,mBAAmBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EAC3D,MAAMC,QAAQ,GAAKC,MAAM,IAAM;IAC9B,MAAM;MAAEC;IAAS,CAAC,GAAGD,MAAM,CAAEN,gBAAiB,CAAC;IAC/C,MAAMQ,KAAK,GAAGD,QAAQ,CAAEH,QAAS,CAAC;IAClC,MAAM;MAAEK;IAAK,CAAC,GAAGD,KAAK,IAAI,CAAC,CAAC;IAE5B,MAAME,SAAS,GAAGb,YAAY,CAAEY,IAAI,IAAI,cAAe,CAAC;IACxD,MAAME,KAAK,GAAGD,SAAS,EAAEC,KAAK;IAC9B,MAAMC,SAAS,GAAGF,SAAS,EAAEG,IAAI;IAEjC,OAAO;MACNL,KAAK;MACLM,UAAU,EAAEH,KAAK;MACjBE,IAAI,EAAED;IACP,CAAC;EACF,CAAC;EAED,MAAM;IAAEJ,KAAK;IAAEM,UAAU;IAAED;EAAK,CAAC,GAAGnB,SAAS,CAAEW,QAAQ,EAAE,CAAED,QAAQ,CAAG,CAAC;EAEvE,MAAMW,kBAAkB,GAAGtB,OAAO,CACjC;EACAD,EAAE,CAAE,0CAA2C,CAAC,EAChDsB,UACD,CAAC;EAED,MAAM;IAAEE;EAAa,CAAC,GAAGrB,WAAW,CAAEK,gBAAiB,CAAC;EAExD,MAAMiB,YAAY,GAAGA,CAAE;IAAER,IAAI;IAAES,UAAU;IAAEC;EAAY,CAAC,KACvDvB,WAAW,CAAEa,IAAI,EAAES,UAAU,EAAEC,WAAY,CAAC;EAE7C,MAAMC,oBAAoB,GAAGA,CAAA,KAAM;IAClCJ,YAAY,CAAER,KAAK,CAACJ,QAAQ,EAAEa,YAAY,CAAET,KAAM,CAAE,CAAC;EACtD,CAAC;EAED,oBACCN,IAAA,CAACX,wBAAwB;IACxB8B,OAAO,EAAGD,oBAAsB;IAChCE,UAAU;IACVC,iBAAiB,EAAC,QAAQ;IAAAC,QAAA,eAE1BtB,IAAA,CAACJ,OAAO;MACPa,KAAK,EAAGG;MACR;MAAA;MACAW,OAAO,EAAGjC,EAAE,CACX,4DACD,CAAG;MACHqB,IAAI,EAAGA,IAAM;MACbE,kBAAkB,EAAGA;IAAoB,CACzC;EAAC,CACuB,CAAC;AAE7B","ignoreList":[]}
|
|
@@ -37,8 +37,7 @@ import { useEditorWrapperStyles } from '../../hooks/use-editor-wrapper-styles';
|
|
|
37
37
|
*
|
|
38
38
|
* @return {Component} The rendered block list item content.
|
|
39
39
|
*/
|
|
40
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
41
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
40
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
42
41
|
function BlockListItemContent({
|
|
43
42
|
blockWidth,
|
|
44
43
|
clientId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["View","useSelect","Block","Grid","BlockInsertionPoint","store","blockEditorStore","useEditorWrapperStyles","jsx","_jsx","jsxs","_jsxs","BlockListItemContent","blockWidth","clientId","contentResizeMode","contentStyle","index","isStackedHorizontally","marginHorizontal","marginVertical","onAddBlock","onDeleteBlock","parentWidth","rootClientId","shouldShowInnerBlockAppender","blockAlignment","blockName","hasParents","parentBlockAlignment","parentBlockName","shouldShowInsertionPointAfter","shouldShowInsertionPointBefore","select","getBlockAttributes","getBlockInsertionPoint","getBlockName","getBlockOrder","isBlockInsertionPointVisible","blockClientIds","insertionPoint","insertionPointVisibleInCurrentRoot","isListEmpty","length","isInsertionPointBeforeBlock","isInsertionPointAtEnd","isBlockLastInList","showInsertionPointBefore","showInsertionPointAfter","blockHasParents","name","parentName","align","textAlign","parentBlockAlign","wrapperStyles","margin","shouldShowBlockInsertionPointAfter","style","children","testID","BlockListItem","props","isGridItem","numOfColumns","tileCount","tileIndex","restProps","maxWidth"],"sources":["@wordpress/block-editor/src/components/block-list/block-list-item.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport Block from './block';\nimport Grid from './grid-item';\nimport BlockInsertionPoint from './insertion-point';\nimport { store as blockEditorStore } from '../../store';\nimport { useEditorWrapperStyles } from '../../hooks/use-editor-wrapper-styles';\n\n/**\n * BlockListItemContent component. Renders a block with an optional insertion point.\n *\n * @param {Object} props Component properties.\n * @param {number} props.blockWidth The width of the block.\n * @param {string} props.clientId The block client ID.\n * @param {string} props.contentResizeMode The content resize mode, e.g \"stretch\".\n * @param {Object} props.contentStyle Styles for the block content\n * @param {Object} props.index Block item index\n * @param {boolean} props.isStackedHorizontally Whether the block is stacked horizontally.\n * @param {number} props.marginHorizontal The horizontal margin.\n * @param {number} props.marginVertical The vertical margin.\n * @param {Function} props.onAddBlock On add block callback.\n * @param {Function} props.onDeleteBlock On delete block callback.\n * @param {number} props.parentWidth The width of the parent block.\n * @param {string} props.rootClientId The root client ID.\n * @param {Function} props.shouldShowInnerBlockAppender Whether to show the inner block appender.\n *\n * @return {Component} The rendered block list item content.\n */\nfunction BlockListItemContent( {\n\tblockWidth,\n\tclientId,\n\tcontentResizeMode,\n\tcontentStyle,\n\tindex,\n\tisStackedHorizontally,\n\tmarginHorizontal,\n\tmarginVertical,\n\tonAddBlock,\n\tonDeleteBlock,\n\tparentWidth,\n\trootClientId,\n\tshouldShowInnerBlockAppender,\n} ) {\n\tconst {\n\t\tblockAlignment,\n\t\tblockName,\n\t\thasParents,\n\t\tparentBlockAlignment,\n\t\tparentBlockName,\n\t\tshouldShowInsertionPointAfter,\n\t\tshouldShowInsertionPointBefore,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tgetBlockInsertionPoint,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tisBlockInsertionPointVisible,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst blockClientIds = getBlockOrder( rootClientId );\n\t\t\tconst insertionPoint = getBlockInsertionPoint();\n\n\t\t\tconst insertionPointVisibleInCurrentRoot =\n\t\t\t\t! isStackedHorizontally &&\n\t\t\t\tisBlockInsertionPointVisible() &&\n\t\t\t\tinsertionPoint.rootClientId === rootClientId;\n\n\t\t\tconst isListEmpty = blockClientIds.length === 0;\n\t\t\tconst isInsertionPointBeforeBlock =\n\t\t\t\tblockClientIds[ insertionPoint.index ] === clientId;\n\t\t\tconst isInsertionPointAtEnd =\n\t\t\t\tblockClientIds.length === insertionPoint.index;\n\t\t\tconst isBlockLastInList =\n\t\t\t\tblockClientIds[ insertionPoint.index - 1 ] === clientId;\n\n\t\t\tconst showInsertionPointBefore =\n\t\t\t\tinsertionPointVisibleInCurrentRoot &&\n\t\t\t\t( isListEmpty || isInsertionPointBeforeBlock );\n\n\t\t\tconst showInsertionPointAfter =\n\t\t\t\tinsertionPointVisibleInCurrentRoot &&\n\t\t\t\tisInsertionPointAtEnd &&\n\t\t\t\tisBlockLastInList;\n\n\t\t\tconst blockHasParents = !! rootClientId;\n\t\t\tconst name = getBlockName( clientId );\n\t\t\tconst parentName = getBlockName( rootClientId );\n\t\t\tconst { align } = getBlockAttributes( clientId ) || {};\n\t\t\tconst { textAlign: parentBlockAlign } =\n\t\t\t\tgetBlockAttributes( rootClientId ) || {};\n\n\t\t\treturn {\n\t\t\t\tblockAlignment: align,\n\t\t\t\tblockName: name,\n\t\t\t\thasParents: blockHasParents,\n\t\t\t\tparentBlockAlignment: parentBlockAlign,\n\t\t\t\tparentBlockName: parentName,\n\t\t\t\tshouldShowInsertionPointAfter: showInsertionPointAfter,\n\t\t\t\tshouldShowInsertionPointBefore: showInsertionPointBefore,\n\t\t\t};\n\t\t},\n\t\t[ isStackedHorizontally, rootClientId, clientId ]\n\t);\n\n\tconst [ wrapperStyles, margin ] = useEditorWrapperStyles( {\n\t\talign: blockAlignment,\n\t\tblockName,\n\t\tblockWidth,\n\t\tcontentResizeMode,\n\t\thasParents,\n\t\tmarginHorizontal,\n\t\tparentBlockAlignment,\n\t\tparentBlockName,\n\t\tparentWidth,\n\t} );\n\n\tconst shouldShowBlockInsertionPointAfter =\n\t\t! shouldShowInnerBlockAppender() && shouldShowInsertionPointAfter;\n\n\treturn (\n\t\t<View style={ wrapperStyles }>\n\t\t\t{ shouldShowInsertionPointBefore && (\n\t\t\t\t<BlockInsertionPoint\n\t\t\t\t\ttestID={ `block-insertion-point-before-row-${ index + 1 }` }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<Block\n\t\t\t\tblockWidth={ blockWidth }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tcontentStyle={ contentStyle }\n\t\t\t\tisStackedHorizontally={ isStackedHorizontally }\n\t\t\t\tmarginHorizontal={ margin }\n\t\t\t\tmarginVertical={ marginVertical }\n\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\tparentBlockAlignment={ parentBlockAlignment }\n\t\t\t\tonDeleteBlock={ onDeleteBlock }\n\t\t\t\tparentWidth={ parentWidth }\n\t\t\t\trootClientId={ rootClientId }\n\t\t\t/>\n\t\t\t{ shouldShowBlockInsertionPointAfter && (\n\t\t\t\t<BlockInsertionPoint\n\t\t\t\t\ttestID={ `block-insertion-point-after-row-${ index + 1 }` }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</View>\n\t);\n}\n\n/**\n * BlockListItem component. Renders a block list item either as a grid item or as a standalone item.\n *\n * @param {Object} props Component properties.\n * @param {boolean} props.isGridItem Whether the block is a grid item.\n * @param {number} props.numOfColumns The number of columns for grid layout.\n * @param {number} props.parentWidth The width of the parent block.\n * @param {number} props.tileCount The total number of tiles in the grid.\n * @param {number} props.tileIndex The index of the current tile in the grid.\n * @param {number} props.blockWidth The width of the block.\n * @param {string} props.clientId The block client ID.\n * @param {string} props.contentResizeMode The content resize mode, e.g \"stretch\".\n * @param {Object} props.contentStyle Styles for the block content\n * @param {Object} props.index Block item index\n * @param {boolean} props.isStackedHorizontally Whether the block is stacked horizontally.\n * @param {number} props.marginHorizontal The horizontal margin.\n * @param {number} props.marginVertical The vertical margin.\n * @param {Function} props.onAddBlock On add block callback.\n * @param {Function} props.onDeleteBlock On delete block callback.\n * @param {string} props.rootClientId The root client ID.\n * @param {Function} props.shouldShowInnerBlockAppender Whether to show the inner block appender.\n *\n * @return {Component|null} The rendered block list item or null if the block width is not provided.\n */\nfunction BlockListItem( props ) {\n\tconst { isGridItem, numOfColumns, tileCount, tileIndex, ...restProps } =\n\t\tprops;\n\n\tif ( ! props?.blockWidth ) {\n\t\treturn null;\n\t}\n\n\tif ( isGridItem ) {\n\t\treturn (\n\t\t\t<Grid\n\t\t\t\tmaxWidth={ props?.parentWidth }\n\t\t\t\tnumOfColumns={ numOfColumns }\n\t\t\t\ttileCount={ tileCount }\n\t\t\t\tindex={ tileIndex }\n\t\t\t>\n\t\t\t\t<BlockListItemContent { ...restProps } />\n\t\t\t</Grid>\n\t\t);\n\t}\n\n\treturn <BlockListItemContent { ...restProps } />;\n}\n\nexport default BlockListItem;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["View","useSelect","Block","Grid","BlockInsertionPoint","store","blockEditorStore","useEditorWrapperStyles","jsx","_jsx","jsxs","_jsxs","BlockListItemContent","blockWidth","clientId","contentResizeMode","contentStyle","index","isStackedHorizontally","marginHorizontal","marginVertical","onAddBlock","onDeleteBlock","parentWidth","rootClientId","shouldShowInnerBlockAppender","blockAlignment","blockName","hasParents","parentBlockAlignment","parentBlockName","shouldShowInsertionPointAfter","shouldShowInsertionPointBefore","select","getBlockAttributes","getBlockInsertionPoint","getBlockName","getBlockOrder","isBlockInsertionPointVisible","blockClientIds","insertionPoint","insertionPointVisibleInCurrentRoot","isListEmpty","length","isInsertionPointBeforeBlock","isInsertionPointAtEnd","isBlockLastInList","showInsertionPointBefore","showInsertionPointAfter","blockHasParents","name","parentName","align","textAlign","parentBlockAlign","wrapperStyles","margin","shouldShowBlockInsertionPointAfter","style","children","testID","BlockListItem","props","isGridItem","numOfColumns","tileCount","tileIndex","restProps","maxWidth"],"sources":["@wordpress/block-editor/src/components/block-list/block-list-item.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport Block from './block';\nimport Grid from './grid-item';\nimport BlockInsertionPoint from './insertion-point';\nimport { store as blockEditorStore } from '../../store';\nimport { useEditorWrapperStyles } from '../../hooks/use-editor-wrapper-styles';\n\n/**\n * BlockListItemContent component. Renders a block with an optional insertion point.\n *\n * @param {Object} props Component properties.\n * @param {number} props.blockWidth The width of the block.\n * @param {string} props.clientId The block client ID.\n * @param {string} props.contentResizeMode The content resize mode, e.g \"stretch\".\n * @param {Object} props.contentStyle Styles for the block content\n * @param {Object} props.index Block item index\n * @param {boolean} props.isStackedHorizontally Whether the block is stacked horizontally.\n * @param {number} props.marginHorizontal The horizontal margin.\n * @param {number} props.marginVertical The vertical margin.\n * @param {Function} props.onAddBlock On add block callback.\n * @param {Function} props.onDeleteBlock On delete block callback.\n * @param {number} props.parentWidth The width of the parent block.\n * @param {string} props.rootClientId The root client ID.\n * @param {Function} props.shouldShowInnerBlockAppender Whether to show the inner block appender.\n *\n * @return {Component} The rendered block list item content.\n */\nfunction BlockListItemContent( {\n\tblockWidth,\n\tclientId,\n\tcontentResizeMode,\n\tcontentStyle,\n\tindex,\n\tisStackedHorizontally,\n\tmarginHorizontal,\n\tmarginVertical,\n\tonAddBlock,\n\tonDeleteBlock,\n\tparentWidth,\n\trootClientId,\n\tshouldShowInnerBlockAppender,\n} ) {\n\tconst {\n\t\tblockAlignment,\n\t\tblockName,\n\t\thasParents,\n\t\tparentBlockAlignment,\n\t\tparentBlockName,\n\t\tshouldShowInsertionPointAfter,\n\t\tshouldShowInsertionPointBefore,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tgetBlockInsertionPoint,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tisBlockInsertionPointVisible,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst blockClientIds = getBlockOrder( rootClientId );\n\t\t\tconst insertionPoint = getBlockInsertionPoint();\n\n\t\t\tconst insertionPointVisibleInCurrentRoot =\n\t\t\t\t! isStackedHorizontally &&\n\t\t\t\tisBlockInsertionPointVisible() &&\n\t\t\t\tinsertionPoint.rootClientId === rootClientId;\n\n\t\t\tconst isListEmpty = blockClientIds.length === 0;\n\t\t\tconst isInsertionPointBeforeBlock =\n\t\t\t\tblockClientIds[ insertionPoint.index ] === clientId;\n\t\t\tconst isInsertionPointAtEnd =\n\t\t\t\tblockClientIds.length === insertionPoint.index;\n\t\t\tconst isBlockLastInList =\n\t\t\t\tblockClientIds[ insertionPoint.index - 1 ] === clientId;\n\n\t\t\tconst showInsertionPointBefore =\n\t\t\t\tinsertionPointVisibleInCurrentRoot &&\n\t\t\t\t( isListEmpty || isInsertionPointBeforeBlock );\n\n\t\t\tconst showInsertionPointAfter =\n\t\t\t\tinsertionPointVisibleInCurrentRoot &&\n\t\t\t\tisInsertionPointAtEnd &&\n\t\t\t\tisBlockLastInList;\n\n\t\t\tconst blockHasParents = !! rootClientId;\n\t\t\tconst name = getBlockName( clientId );\n\t\t\tconst parentName = getBlockName( rootClientId );\n\t\t\tconst { align } = getBlockAttributes( clientId ) || {};\n\t\t\tconst { textAlign: parentBlockAlign } =\n\t\t\t\tgetBlockAttributes( rootClientId ) || {};\n\n\t\t\treturn {\n\t\t\t\tblockAlignment: align,\n\t\t\t\tblockName: name,\n\t\t\t\thasParents: blockHasParents,\n\t\t\t\tparentBlockAlignment: parentBlockAlign,\n\t\t\t\tparentBlockName: parentName,\n\t\t\t\tshouldShowInsertionPointAfter: showInsertionPointAfter,\n\t\t\t\tshouldShowInsertionPointBefore: showInsertionPointBefore,\n\t\t\t};\n\t\t},\n\t\t[ isStackedHorizontally, rootClientId, clientId ]\n\t);\n\n\tconst [ wrapperStyles, margin ] = useEditorWrapperStyles( {\n\t\talign: blockAlignment,\n\t\tblockName,\n\t\tblockWidth,\n\t\tcontentResizeMode,\n\t\thasParents,\n\t\tmarginHorizontal,\n\t\tparentBlockAlignment,\n\t\tparentBlockName,\n\t\tparentWidth,\n\t} );\n\n\tconst shouldShowBlockInsertionPointAfter =\n\t\t! shouldShowInnerBlockAppender() && shouldShowInsertionPointAfter;\n\n\treturn (\n\t\t<View style={ wrapperStyles }>\n\t\t\t{ shouldShowInsertionPointBefore && (\n\t\t\t\t<BlockInsertionPoint\n\t\t\t\t\ttestID={ `block-insertion-point-before-row-${ index + 1 }` }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<Block\n\t\t\t\tblockWidth={ blockWidth }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tcontentStyle={ contentStyle }\n\t\t\t\tisStackedHorizontally={ isStackedHorizontally }\n\t\t\t\tmarginHorizontal={ margin }\n\t\t\t\tmarginVertical={ marginVertical }\n\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\tparentBlockAlignment={ parentBlockAlignment }\n\t\t\t\tonDeleteBlock={ onDeleteBlock }\n\t\t\t\tparentWidth={ parentWidth }\n\t\t\t\trootClientId={ rootClientId }\n\t\t\t/>\n\t\t\t{ shouldShowBlockInsertionPointAfter && (\n\t\t\t\t<BlockInsertionPoint\n\t\t\t\t\ttestID={ `block-insertion-point-after-row-${ index + 1 }` }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</View>\n\t);\n}\n\n/**\n * BlockListItem component. Renders a block list item either as a grid item or as a standalone item.\n *\n * @param {Object} props Component properties.\n * @param {boolean} props.isGridItem Whether the block is a grid item.\n * @param {number} props.numOfColumns The number of columns for grid layout.\n * @param {number} props.parentWidth The width of the parent block.\n * @param {number} props.tileCount The total number of tiles in the grid.\n * @param {number} props.tileIndex The index of the current tile in the grid.\n * @param {number} props.blockWidth The width of the block.\n * @param {string} props.clientId The block client ID.\n * @param {string} props.contentResizeMode The content resize mode, e.g \"stretch\".\n * @param {Object} props.contentStyle Styles for the block content\n * @param {Object} props.index Block item index\n * @param {boolean} props.isStackedHorizontally Whether the block is stacked horizontally.\n * @param {number} props.marginHorizontal The horizontal margin.\n * @param {number} props.marginVertical The vertical margin.\n * @param {Function} props.onAddBlock On add block callback.\n * @param {Function} props.onDeleteBlock On delete block callback.\n * @param {string} props.rootClientId The root client ID.\n * @param {Function} props.shouldShowInnerBlockAppender Whether to show the inner block appender.\n *\n * @return {Component|null} The rendered block list item or null if the block width is not provided.\n */\nfunction BlockListItem( props ) {\n\tconst { isGridItem, numOfColumns, tileCount, tileIndex, ...restProps } =\n\t\tprops;\n\n\tif ( ! props?.blockWidth ) {\n\t\treturn null;\n\t}\n\n\tif ( isGridItem ) {\n\t\treturn (\n\t\t\t<Grid\n\t\t\t\tmaxWidth={ props?.parentWidth }\n\t\t\t\tnumOfColumns={ numOfColumns }\n\t\t\t\ttileCount={ tileCount }\n\t\t\t\tindex={ tileIndex }\n\t\t\t>\n\t\t\t\t<BlockListItemContent { ...restProps } />\n\t\t\t</Grid>\n\t\t);\n\t}\n\n\treturn <BlockListItemContent { ...restProps } />;\n}\n\nexport default BlockListItem;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,IAAI,QAAQ,cAAc;;AAEnC;AACA;AACA;AACA,SAASC,SAAS,QAAQ,iBAAiB;;AAE3C;AACA;AACA;AACA,OAAOC,KAAK,MAAM,SAAS;AAC3B,OAAOC,IAAI,MAAM,aAAa;AAC9B,OAAOC,mBAAmB,MAAM,mBAAmB;AACnD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AACvD,SAASC,sBAAsB,QAAQ,uCAAuC;;AAE9E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAnBA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAoBA,SAASC,oBAAoBA,CAAE;EAC9BC,UAAU;EACVC,QAAQ;EACRC,iBAAiB;EACjBC,YAAY;EACZC,KAAK;EACLC,qBAAqB;EACrBC,gBAAgB;EAChBC,cAAc;EACdC,UAAU;EACVC,aAAa;EACbC,WAAW;EACXC,YAAY;EACZC;AACD,CAAC,EAAG;EACH,MAAM;IACLC,cAAc;IACdC,SAAS;IACTC,UAAU;IACVC,oBAAoB;IACpBC,eAAe;IACfC,6BAA6B;IAC7BC;EACD,CAAC,GAAG/B,SAAS,CACVgC,MAAM,IAAM;IACb,MAAM;MACLC,kBAAkB;MAClBC,sBAAsB;MACtBC,YAAY;MACZC,aAAa;MACbC;IACD,CAAC,GAAGL,MAAM,CAAE3B,gBAAiB,CAAC;IAC9B,MAAMiC,cAAc,GAAGF,aAAa,CAAEb,YAAa,CAAC;IACpD,MAAMgB,cAAc,GAAGL,sBAAsB,CAAC,CAAC;IAE/C,MAAMM,kCAAkC,GACvC,CAAEvB,qBAAqB,IACvBoB,4BAA4B,CAAC,CAAC,IAC9BE,cAAc,CAAChB,YAAY,KAAKA,YAAY;IAE7C,MAAMkB,WAAW,GAAGH,cAAc,CAACI,MAAM,KAAK,CAAC;IAC/C,MAAMC,2BAA2B,GAChCL,cAAc,CAAEC,cAAc,CAACvB,KAAK,CAAE,KAAKH,QAAQ;IACpD,MAAM+B,qBAAqB,GAC1BN,cAAc,CAACI,MAAM,KAAKH,cAAc,CAACvB,KAAK;IAC/C,MAAM6B,iBAAiB,GACtBP,cAAc,CAAEC,cAAc,CAACvB,KAAK,GAAG,CAAC,CAAE,KAAKH,QAAQ;IAExD,MAAMiC,wBAAwB,GAC7BN,kCAAkC,KAChCC,WAAW,IAAIE,2BAA2B,CAAE;IAE/C,MAAMI,uBAAuB,GAC5BP,kCAAkC,IAClCI,qBAAqB,IACrBC,iBAAiB;IAElB,MAAMG,eAAe,GAAG,CAAC,CAAEzB,YAAY;IACvC,MAAM0B,IAAI,GAAGd,YAAY,CAAEtB,QAAS,CAAC;IACrC,MAAMqC,UAAU,GAAGf,YAAY,CAAEZ,YAAa,CAAC;IAC/C,MAAM;MAAE4B;IAAM,CAAC,GAAGlB,kBAAkB,CAAEpB,QAAS,CAAC,IAAI,CAAC,CAAC;IACtD,MAAM;MAAEuC,SAAS,EAAEC;IAAiB,CAAC,GACpCpB,kBAAkB,CAAEV,YAAa,CAAC,IAAI,CAAC,CAAC;IAEzC,OAAO;MACNE,cAAc,EAAE0B,KAAK;MACrBzB,SAAS,EAAEuB,IAAI;MACftB,UAAU,EAAEqB,eAAe;MAC3BpB,oBAAoB,EAAEyB,gBAAgB;MACtCxB,eAAe,EAAEqB,UAAU;MAC3BpB,6BAA6B,EAAEiB,uBAAuB;MACtDhB,8BAA8B,EAAEe;IACjC,CAAC;EACF,CAAC,EACD,CAAE7B,qBAAqB,EAAEM,YAAY,EAAEV,QAAQ,CAChD,CAAC;EAED,MAAM,CAAEyC,aAAa,EAAEC,MAAM,CAAE,GAAGjD,sBAAsB,CAAE;IACzD6C,KAAK,EAAE1B,cAAc;IACrBC,SAAS;IACTd,UAAU;IACVE,iBAAiB;IACjBa,UAAU;IACVT,gBAAgB;IAChBU,oBAAoB;IACpBC,eAAe;IACfP;EACD,CAAE,CAAC;EAEH,MAAMkC,kCAAkC,GACvC,CAAEhC,4BAA4B,CAAC,CAAC,IAAIM,6BAA6B;EAElE,oBACCpB,KAAA,CAACX,IAAI;IAAC0D,KAAK,EAAGH,aAAe;IAAAI,QAAA,GAC1B3B,8BAA8B,iBAC/BvB,IAAA,CAACL,mBAAmB;MACnBwD,MAAM,EAAG,oCAAqC3C,KAAK,GAAG,CAAC;IAAK,CAC5D,CACD,eACDR,IAAA,CAACP,KAAK;MACLW,UAAU,EAAGA,UAAY;MACzBC,QAAQ,EAAGA,QAAU;MACrBE,YAAY,EAAGA,YAAc;MAC7BE,qBAAqB,EAAGA,qBAAuB;MAC/CC,gBAAgB,EAAGqC,MAAQ;MAC3BpC,cAAc,EAAGA,cAAgB;MACjCC,UAAU,EAAGA,UAAY;MACzBQ,oBAAoB,EAAGA,oBAAsB;MAC7CP,aAAa,EAAGA,aAAe;MAC/BC,WAAW,EAAGA,WAAa;MAC3BC,YAAY,EAAGA;IAAc,CAC7B,CAAC,EACAiC,kCAAkC,iBACnChD,IAAA,CAACL,mBAAmB;MACnBwD,MAAM,EAAG,mCAAoC3C,KAAK,GAAG,CAAC;IAAK,CAC3D,CACD;EAAA,CACI,CAAC;AAET;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS4C,aAAaA,CAAEC,KAAK,EAAG;EAC/B,MAAM;IAAEC,UAAU;IAAEC,YAAY;IAAEC,SAAS;IAAEC,SAAS;IAAE,GAAGC;EAAU,CAAC,GACrEL,KAAK;EAEN,IAAK,CAAEA,KAAK,EAAEjD,UAAU,EAAG;IAC1B,OAAO,IAAI;EACZ;EAEA,IAAKkD,UAAU,EAAG;IACjB,oBACCtD,IAAA,CAACN,IAAI;MACJiE,QAAQ,EAAGN,KAAK,EAAEvC,WAAa;MAC/ByC,YAAY,EAAGA,YAAc;MAC7BC,SAAS,EAAGA,SAAW;MACvBhD,KAAK,EAAGiD,SAAW;MAAAP,QAAA,eAEnBlD,IAAA,CAACG,oBAAoB;QAAA,GAAMuD;MAAS,CAAI;IAAC,CACpC,CAAC;EAET;EAEA,oBAAO1D,IAAA,CAACG,oBAAoB;IAAA,GAAMuD;EAAS,CAAI,CAAC;AACjD;AAEA,eAAeN,aAAa","ignoreList":[]}
|
|
@@ -20,8 +20,7 @@ import useBlockDisplayInformation from '../use-block-display-information';
|
|
|
20
20
|
import SubdirectorSVG from './subdirectory-icon';
|
|
21
21
|
import { store as blockEditorStore } from '../../store';
|
|
22
22
|
import styles from './block-selection-button.scss';
|
|
23
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
24
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
23
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
25
24
|
const BlockSelectionButton = ({
|
|
26
25
|
clientId,
|
|
27
26
|
rootClientId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Icon","withSelect","compose","getBlockType","BlockIcon","View","Text","TouchableOpacity","BlockTitle","useBlockDisplayInformation","SubdirectorSVG","store","blockEditorStore","styles","jsx","_jsx","jsxs","_jsxs","BlockSelectionButton","clientId","rootClientId","rootBlockIcon","isRTL","blockInformation","style","selectionButtonContainer","densedPaddingLeft","children","button","onPress","disabled","size","icon","src","fill","color","arrow","maxFontSizeMultiplier","ellipsizeMode","numberOfLines","selectionButtonTitle","maximumLength","select","getBlockRootClientId","getBlockName","getSettings","rootBlockName","rootBlockType"],"sources":["@wordpress/block-editor/src/components/block-list/block-selection-button.native.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Icon } from '@wordpress/components';\nimport { withSelect } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { getBlockType } from '@wordpress/blocks';\nimport { BlockIcon } from '@wordpress/block-editor';\n\n/**\n * External dependencies\n */\nimport { View, Text, TouchableOpacity } from 'react-native';\n\n/**\n * Internal dependencies\n */\nimport BlockTitle from '../block-title';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport SubdirectorSVG from './subdirectory-icon';\nimport { store as blockEditorStore } from '../../store';\nimport styles from './block-selection-button.scss';\n\nconst BlockSelectionButton = ( {\n\tclientId,\n\trootClientId,\n\trootBlockIcon,\n\tisRTL,\n} ) => {\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\treturn (\n\t\t<View\n\t\t\tstyle={ [\n\t\t\t\tstyles.selectionButtonContainer,\n\t\t\t\trootClientId && styles.densedPaddingLeft,\n\t\t\t] }\n\t\t>\n\t\t\t<TouchableOpacity\n\t\t\t\tstyle={ styles.button }\n\t\t\t\tonPress={ () => {\n\t\t\t\t\t/* Open BottomSheet with markup. */\n\t\t\t\t} }\n\t\t\t\tdisabled /* Disable temporarily since onPress function is empty. */\n\t\t\t>\n\t\t\t\t{ rootClientId &&\n\t\t\t\t\trootBlockIcon && [\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tkey=\"parent-icon\"\n\t\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\t\ticon={ rootBlockIcon.src }\n\t\t\t\t\t\t\tfill={ styles.icon.color }\n\t\t\t\t\t\t/>,\n\t\t\t\t\t\t<View key=\"subdirectory-icon\" style={ styles.arrow }>\n\t\t\t\t\t\t\t<SubdirectorSVG\n\t\t\t\t\t\t\t\tfill={ styles.arrow.color }\n\t\t\t\t\t\t\t\tisRTL={ isRTL }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>,\n\t\t\t\t\t] }\n\t\t\t\t{ blockInformation?.icon && (\n\t\t\t\t\t<BlockIcon\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\ticon={ blockInformation.icon }\n\t\t\t\t\t\tfill={ styles.icon.color }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<Text\n\t\t\t\t\tmaxFontSizeMultiplier={ 1.25 }\n\t\t\t\t\tellipsizeMode=\"tail\"\n\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\tstyle={ styles.selectionButtonTitle }\n\t\t\t\t>\n\t\t\t\t\t<BlockTitle clientId={ clientId } maximumLength={ 35 } />\n\t\t\t\t</Text>\n\t\t\t</TouchableOpacity>\n\t\t</View>\n\t);\n};\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst { getBlockRootClientId, getBlockName, getSettings } =\n\t\t\tselect( blockEditorStore );\n\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\tif ( ! rootClientId ) {\n\t\t\treturn { clientId };\n\t\t}\n\t\tconst rootBlockName = getBlockName( rootClientId );\n\t\tconst rootBlockType = getBlockType( rootBlockName );\n\t\tconst rootBlockIcon = rootBlockType ? rootBlockType.icon : {};\n\n\t\treturn {\n\t\t\tclientId,\n\t\t\trootClientId,\n\t\t\trootBlockIcon,\n\t\t\tisRTL: getSettings().isRTL,\n\t\t};\n\t} ),\n] )( BlockSelectionButton );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,IAAI,QAAQ,uBAAuB;AAC5C,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,YAAY,QAAQ,mBAAmB;AAChD,SAASC,SAAS,QAAQ,yBAAyB;;AAEnD;AACA;AACA;AACA,SAASC,IAAI,EAAEC,IAAI,EAAEC,gBAAgB,QAAQ,cAAc;;AAE3D;AACA;AACA;AACA,OAAOC,UAAU,MAAM,gBAAgB;AACvC,OAAOC,0BAA0B,MAAM,kCAAkC;AACzE,OAAOC,cAAc,MAAM,qBAAqB;AAChD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AACvD,OAAOC,MAAM,MAAM,+BAA+B;AAAC,SAAAC,GAAA,IAAAC,IAAA
|
|
1
|
+
{"version":3,"names":["Icon","withSelect","compose","getBlockType","BlockIcon","View","Text","TouchableOpacity","BlockTitle","useBlockDisplayInformation","SubdirectorSVG","store","blockEditorStore","styles","jsx","_jsx","jsxs","_jsxs","BlockSelectionButton","clientId","rootClientId","rootBlockIcon","isRTL","blockInformation","style","selectionButtonContainer","densedPaddingLeft","children","button","onPress","disabled","size","icon","src","fill","color","arrow","maxFontSizeMultiplier","ellipsizeMode","numberOfLines","selectionButtonTitle","maximumLength","select","getBlockRootClientId","getBlockName","getSettings","rootBlockName","rootBlockType"],"sources":["@wordpress/block-editor/src/components/block-list/block-selection-button.native.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Icon } from '@wordpress/components';\nimport { withSelect } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { getBlockType } from '@wordpress/blocks';\nimport { BlockIcon } from '@wordpress/block-editor';\n\n/**\n * External dependencies\n */\nimport { View, Text, TouchableOpacity } from 'react-native';\n\n/**\n * Internal dependencies\n */\nimport BlockTitle from '../block-title';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport SubdirectorSVG from './subdirectory-icon';\nimport { store as blockEditorStore } from '../../store';\nimport styles from './block-selection-button.scss';\n\nconst BlockSelectionButton = ( {\n\tclientId,\n\trootClientId,\n\trootBlockIcon,\n\tisRTL,\n} ) => {\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\treturn (\n\t\t<View\n\t\t\tstyle={ [\n\t\t\t\tstyles.selectionButtonContainer,\n\t\t\t\trootClientId && styles.densedPaddingLeft,\n\t\t\t] }\n\t\t>\n\t\t\t<TouchableOpacity\n\t\t\t\tstyle={ styles.button }\n\t\t\t\tonPress={ () => {\n\t\t\t\t\t/* Open BottomSheet with markup. */\n\t\t\t\t} }\n\t\t\t\tdisabled /* Disable temporarily since onPress function is empty. */\n\t\t\t>\n\t\t\t\t{ rootClientId &&\n\t\t\t\t\trootBlockIcon && [\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tkey=\"parent-icon\"\n\t\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\t\ticon={ rootBlockIcon.src }\n\t\t\t\t\t\t\tfill={ styles.icon.color }\n\t\t\t\t\t\t/>,\n\t\t\t\t\t\t<View key=\"subdirectory-icon\" style={ styles.arrow }>\n\t\t\t\t\t\t\t<SubdirectorSVG\n\t\t\t\t\t\t\t\tfill={ styles.arrow.color }\n\t\t\t\t\t\t\t\tisRTL={ isRTL }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>,\n\t\t\t\t\t] }\n\t\t\t\t{ blockInformation?.icon && (\n\t\t\t\t\t<BlockIcon\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\ticon={ blockInformation.icon }\n\t\t\t\t\t\tfill={ styles.icon.color }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<Text\n\t\t\t\t\tmaxFontSizeMultiplier={ 1.25 }\n\t\t\t\t\tellipsizeMode=\"tail\"\n\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\tstyle={ styles.selectionButtonTitle }\n\t\t\t\t>\n\t\t\t\t\t<BlockTitle clientId={ clientId } maximumLength={ 35 } />\n\t\t\t\t</Text>\n\t\t\t</TouchableOpacity>\n\t\t</View>\n\t);\n};\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst { getBlockRootClientId, getBlockName, getSettings } =\n\t\t\tselect( blockEditorStore );\n\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\tif ( ! rootClientId ) {\n\t\t\treturn { clientId };\n\t\t}\n\t\tconst rootBlockName = getBlockName( rootClientId );\n\t\tconst rootBlockType = getBlockType( rootBlockName );\n\t\tconst rootBlockIcon = rootBlockType ? rootBlockType.icon : {};\n\n\t\treturn {\n\t\t\tclientId,\n\t\t\trootClientId,\n\t\t\trootBlockIcon,\n\t\t\tisRTL: getSettings().isRTL,\n\t\t};\n\t} ),\n] )( BlockSelectionButton );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -26,9 +26,7 @@ import { store as blockEditorStore } from '../../store';
|
|
|
26
26
|
import { useLayout } from './layout';
|
|
27
27
|
import { PrivateBlockContext } from './private-block-context';
|
|
28
28
|
import { unlock } from '../../lock-unlock';
|
|
29
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
30
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
31
|
-
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
29
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
32
30
|
const {
|
|
33
31
|
isUnmodifiedBlockContent
|
|
34
32
|
} = unlock(blocksPrivateApis);
|
|
@@ -494,7 +492,7 @@ function BlockListBlockProvider(props) {
|
|
|
494
492
|
const blockType = getBlockType(blockName);
|
|
495
493
|
const {
|
|
496
494
|
supportsLayout,
|
|
497
|
-
|
|
495
|
+
isPreviewMode
|
|
498
496
|
} = getSettings();
|
|
499
497
|
const hasLightBlockWrapper = blockType?.apiVersion > 1;
|
|
500
498
|
const previewContext = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","memo","useCallback","RawHTML","useContext","useMemo","getBlockType","getSaveContent","isUnmodifiedDefaultBlock","serializeRawBlock","switchToBlockType","getDefaultBlockName","isUnmodifiedBlock","isReusableBlock","getBlockDefaultClassName","hasBlockSupport","store","blocksStore","privateApis","blocksPrivateApis","withFilters","withDispatch","useDispatch","useSelect","compose","safeHTML","BlockEdit","BlockInvalidWarning","BlockCrashWarning","BlockCrashBoundary","BlockHtml","useBlockProps","blockEditorStore","useLayout","PrivateBlockContext","unlock","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","isUnmodifiedBlockContent","mergeWrapperProps","propsA","propsB","newProps","hasOwnProperty","className","style","Block","children","isHtml","props","__unstableIsHtml","BlockListBlock","block","__unstableBlockSource","mode","isLocked","canRemove","clientId","isSelected","isSelectionEnabled","__unstableLayoutClassNames","layoutClassNames","name","isValid","attributes","wrapperProps","setAttributes","onReplace","onInsertBlocksAfter","onMerge","toggleSelection","_wrapperProps","mayDisplayControls","mayDisplayParentControls","themeSupportsLayout","context","removeBlock","onRemove","parentLayout","blockEdit","insertBlocksAfter","undefined","mergeBlocks","__unstableParentLayout","Object","keys","length","blockEditingMode","isPreviewMode","blockType","getEditWrapperProps","isAligned","isSticky","includes","saveContent","display","apiVersion","dataAlign","restWrapperProps","updatedWrapperProps","Provider","value","fallback","applyWithDispatch","dispatch","ownProps","registry","updateBlockAttributes","insertBlocks","replaceBlocks","__unstableMarkLastChangeAsPersistent","moveBlocksToPosition","selectBlock","newAttributes","getMultiSelectedBlockClientIds","select","multiSelectedBlockClientIds","clientIds","onInsertBlocks","blocks","index","rootClientId","getBlockIndex","forward","getPreviousBlockClientId","getNextBlockClientId","getBlock","getBlockAttributes","getBlockName","getBlockOrder","getBlockRootClientId","canInsertBlockType","switchToDefaultOrRemove","defaultBlockName","replacement","nextBlockClientId","batch","moveFirstItemUp","_clientId","changeSelection","targetRootClientId","blockOrder","firstClientId","firstBlock","isFirstBlockContentUnmodified","canTransformToDefaultBlock","every","canLiftAndTransformToDefaultBlock","nextRootClientId","rootAttributes","previousRootAttributes","key","previousBlockClientId","previousRootClientId","indexToSelect","initialPosition","replacementBlocks","Array","isArray","selectionEnabled","BlockListBlockProvider","selectedProps","isBlockSelected","getBlockMode","getTemplateLock","isSectionBlock","_isSectionBlock","getBlockWithoutAttributes","canRemoveBlock","canMoveBlock","getSettings","getTemporarilyEditingAsBlocks","getBlockEditingMode","isFirstMultiSelectedBlock","hasSelectedInnerBlock","getBlocksByName","isBlockMultiSelected","isBlockSubtreeDisabled","isBlockHighlighted","__unstableIsFullySelected","__unstableSelectionHasUnmergeableBlock","isBlockBeingDragged","isDragging","__unstableHasActiveBlockOverlayActive","getSelectedBlocksInitialCaretPosition","blockWithoutAttributes","_hasBlockSupport","getActiveBlockVariation","blockName","supportsLayout","__unstableIsPreviewMode","hasLightBlockWrapper","previewContext","isReusable","defaultClassName","blockTitle","title","_isSelected","canMove","match","isMultiSelected","checkDeep","isAncestorOfSelectedBlock","multiple","blocksWithSameName","isInvalid","isTemporarilyEditingAsBlocks","id","blockApiVersion","isSubtreeDisabled","hasOverlay","isHighlighted","isPartiallySelected","hasChildSelected","isEditingDisabled","hasEditableOutline","originalBlockClientId","privateContext"],"sources":["@wordpress/block-editor/src/components/block-list/block.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tmemo,\n\tuseCallback,\n\tRawHTML,\n\tuseContext,\n\tuseMemo,\n} from '@wordpress/element';\nimport {\n\tgetBlockType,\n\tgetSaveContent,\n\tisUnmodifiedDefaultBlock,\n\tserializeRawBlock,\n\tswitchToBlockType,\n\tgetDefaultBlockName,\n\tisUnmodifiedBlock,\n\tisReusableBlock,\n\tgetBlockDefaultClassName,\n\thasBlockSupport,\n\tstore as blocksStore,\n\tprivateApis as blocksPrivateApis,\n} from '@wordpress/blocks';\nimport { withFilters } from '@wordpress/components';\nimport { withDispatch, useDispatch, useSelect } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { safeHTML } from '@wordpress/dom';\n\n/**\n * Internal dependencies\n */\nimport BlockEdit from '../block-edit';\nimport BlockInvalidWarning from './block-invalid-warning';\nimport BlockCrashWarning from './block-crash-warning';\nimport BlockCrashBoundary from './block-crash-boundary';\nimport BlockHtml from './block-html';\nimport { useBlockProps } from './use-block-props';\nimport { store as blockEditorStore } from '../../store';\nimport { useLayout } from './layout';\nimport { PrivateBlockContext } from './private-block-context';\n\nimport { unlock } from '../../lock-unlock';\n\nconst { isUnmodifiedBlockContent } = unlock( blocksPrivateApis );\n\n/**\n * Merges wrapper props with special handling for classNames and styles.\n *\n * @param {Object} propsA\n * @param {Object} propsB\n *\n * @return {Object} Merged props.\n */\nfunction mergeWrapperProps( propsA, propsB ) {\n\tconst newProps = {\n\t\t...propsA,\n\t\t...propsB,\n\t};\n\n\t// May be set to undefined, so check if the property is set!\n\tif (\n\t\tpropsA?.hasOwnProperty( 'className' ) &&\n\t\tpropsB?.hasOwnProperty( 'className' )\n\t) {\n\t\tnewProps.className = clsx( propsA.className, propsB.className );\n\t}\n\n\tif (\n\t\tpropsA?.hasOwnProperty( 'style' ) &&\n\t\tpropsB?.hasOwnProperty( 'style' )\n\t) {\n\t\tnewProps.style = { ...propsA.style, ...propsB.style };\n\t}\n\n\treturn newProps;\n}\n\nfunction Block( { children, isHtml, ...props } ) {\n\treturn (\n\t\t<div { ...useBlockProps( props, { __unstableIsHtml: isHtml } ) }>\n\t\t\t{ children }\n\t\t</div>\n\t);\n}\n\nfunction BlockListBlock( {\n\tblock: { __unstableBlockSource },\n\tmode,\n\tisLocked,\n\tcanRemove,\n\tclientId,\n\tisSelected,\n\tisSelectionEnabled,\n\tclassName,\n\t__unstableLayoutClassNames: layoutClassNames,\n\tname,\n\tisValid,\n\tattributes,\n\twrapperProps,\n\tsetAttributes,\n\tonReplace,\n\tonInsertBlocksAfter,\n\tonMerge,\n\ttoggleSelection,\n} ) {\n\tconst {\n\t\tmayDisplayControls,\n\t\tmayDisplayParentControls,\n\t\tthemeSupportsLayout,\n\t\t...context\n\t} = useContext( PrivateBlockContext );\n\tconst { removeBlock } = useDispatch( blockEditorStore );\n\tconst onRemove = useCallback(\n\t\t() => removeBlock( clientId ),\n\t\t[ clientId, removeBlock ]\n\t);\n\n\tconst parentLayout = useLayout() || {};\n\n\t// We wrap the BlockEdit component in a div that hides it when editing in\n\t// HTML mode. This allows us to render all of the ancillary pieces\n\t// (InspectorControls, etc.) which are inside `BlockEdit` but not\n\t// `BlockHTML`, even in HTML mode.\n\tlet blockEdit = (\n\t\t<BlockEdit\n\t\t\tname={ name }\n\t\t\tisSelected={ isSelected }\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tinsertBlocksAfter={ isLocked ? undefined : onInsertBlocksAfter }\n\t\t\tonReplace={ canRemove ? onReplace : undefined }\n\t\t\tonRemove={ canRemove ? onRemove : undefined }\n\t\t\tmergeBlocks={ canRemove ? onMerge : undefined }\n\t\t\tclientId={ clientId }\n\t\t\tisSelectionEnabled={ isSelectionEnabled }\n\t\t\ttoggleSelection={ toggleSelection }\n\t\t\t__unstableLayoutClassNames={ layoutClassNames }\n\t\t\t__unstableParentLayout={\n\t\t\t\tObject.keys( parentLayout ).length ? parentLayout : undefined\n\t\t\t}\n\t\t\tmayDisplayControls={ mayDisplayControls }\n\t\t\tmayDisplayParentControls={ mayDisplayParentControls }\n\t\t\tblockEditingMode={ context.blockEditingMode }\n\t\t\tisPreviewMode={ context.isPreviewMode }\n\t\t/>\n\t);\n\n\tconst blockType = getBlockType( name );\n\n\t// Determine whether the block has props to apply to the wrapper.\n\tif ( blockType?.getEditWrapperProps ) {\n\t\twrapperProps = mergeWrapperProps(\n\t\t\twrapperProps,\n\t\t\tblockType.getEditWrapperProps( attributes )\n\t\t);\n\t}\n\n\tconst isAligned =\n\t\twrapperProps &&\n\t\t!! wrapperProps[ 'data-align' ] &&\n\t\t! themeSupportsLayout;\n\n\t// Support for sticky position in classic themes with alignment wrappers.\n\n\tconst isSticky = className?.includes( 'is-position-sticky' );\n\n\t// For aligned blocks, provide a wrapper element so the block can be\n\t// positioned relative to the block column.\n\t// This is only kept for classic themes that don't support layout\n\t// Historically we used to rely on extra divs and data-align to\n\t// provide the alignments styles in the editor.\n\t// Due to the differences between frontend and backend, we migrated\n\t// to the layout feature, and we're now aligning the markup of frontend\n\t// and backend.\n\tif ( isAligned ) {\n\t\tblockEdit = (\n\t\t\t<div\n\t\t\t\tclassName={ clsx( 'wp-block', isSticky && className ) }\n\t\t\t\tdata-align={ wrapperProps[ 'data-align' ] }\n\t\t\t>\n\t\t\t\t{ blockEdit }\n\t\t\t</div>\n\t\t);\n\t}\n\n\tlet block;\n\n\tif ( ! isValid ) {\n\t\tconst saveContent = __unstableBlockSource\n\t\t\t? serializeRawBlock( __unstableBlockSource )\n\t\t\t: getSaveContent( blockType, attributes );\n\n\t\tblock = (\n\t\t\t<Block className=\"has-warning\">\n\t\t\t\t<BlockInvalidWarning clientId={ clientId } />\n\t\t\t\t<RawHTML>{ safeHTML( saveContent ) }</RawHTML>\n\t\t\t</Block>\n\t\t);\n\t} else if ( mode === 'html' ) {\n\t\t// Render blockEdit so the inspector controls don't disappear.\n\t\t// See #8969.\n\t\tblock = (\n\t\t\t<>\n\t\t\t\t<div style={ { display: 'none' } }>{ blockEdit }</div>\n\t\t\t\t<Block isHtml>\n\t\t\t\t\t<BlockHtml clientId={ clientId } />\n\t\t\t\t</Block>\n\t\t\t</>\n\t\t);\n\t} else if ( blockType?.apiVersion > 1 ) {\n\t\tblock = blockEdit;\n\t} else {\n\t\tblock = <Block>{ blockEdit }</Block>;\n\t}\n\n\tconst { 'data-align': dataAlign, ...restWrapperProps } = wrapperProps ?? {};\n\tconst updatedWrapperProps = {\n\t\t...restWrapperProps,\n\t\tclassName: clsx(\n\t\t\trestWrapperProps.className,\n\t\t\tdataAlign && themeSupportsLayout && `align${ dataAlign }`,\n\t\t\t! ( dataAlign && isSticky ) && className\n\t\t),\n\t};\n\n\t// We set a new context with the adjusted and filtered wrapperProps (through\n\t// `editor.BlockListBlock`), which the `BlockListBlockProvider` did not have\n\t// access to.\n\t// Note that the context value doesn't have to be memoized in this case\n\t// because when it changes, this component will be re-rendered anyway, and\n\t// none of the consumers (BlockListBlock and useBlockProps) are memoized or\n\t// \"pure\". This is different from the public BlockEditContext, where\n\t// consumers might be memoized or \"pure\".\n\treturn (\n\t\t<PrivateBlockContext.Provider\n\t\t\tvalue={ {\n\t\t\t\twrapperProps: updatedWrapperProps,\n\t\t\t\tisAligned,\n\t\t\t\t...context,\n\t\t\t} }\n\t\t>\n\t\t\t<BlockCrashBoundary\n\t\t\t\tfallback={\n\t\t\t\t\t<Block className=\"has-warning\">\n\t\t\t\t\t\t<BlockCrashWarning />\n\t\t\t\t\t</Block>\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{ block }\n\t\t\t</BlockCrashBoundary>\n\t\t</PrivateBlockContext.Provider>\n\t);\n}\n\nconst applyWithDispatch = withDispatch( ( dispatch, ownProps, registry ) => {\n\tconst {\n\t\tupdateBlockAttributes,\n\t\tinsertBlocks,\n\t\tmergeBlocks,\n\t\treplaceBlocks,\n\t\ttoggleSelection,\n\t\t__unstableMarkLastChangeAsPersistent,\n\t\tmoveBlocksToPosition,\n\t\tremoveBlock,\n\t\tselectBlock,\n\t} = dispatch( blockEditorStore );\n\n\t// Do not add new properties here, use `useDispatch` instead to avoid\n\t// leaking new props to the public API (editor.BlockListBlock filter).\n\treturn {\n\t\tsetAttributes( newAttributes ) {\n\t\t\tconst { getMultiSelectedBlockClientIds } =\n\t\t\t\tregistry.select( blockEditorStore );\n\t\t\tconst multiSelectedBlockClientIds =\n\t\t\t\tgetMultiSelectedBlockClientIds();\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst clientIds = multiSelectedBlockClientIds.length\n\t\t\t\t? multiSelectedBlockClientIds\n\t\t\t\t: [ clientId ];\n\n\t\t\tupdateBlockAttributes( clientIds, newAttributes );\n\t\t},\n\t\tonInsertBlocks( blocks, index ) {\n\t\t\tconst { rootClientId } = ownProps;\n\t\t\tinsertBlocks( blocks, index, rootClientId );\n\t\t},\n\t\tonInsertBlocksAfter( blocks ) {\n\t\t\tconst { clientId, rootClientId } = ownProps;\n\t\t\tconst { getBlockIndex } = registry.select( blockEditorStore );\n\t\t\tconst index = getBlockIndex( clientId );\n\t\t\tinsertBlocks( blocks, index + 1, rootClientId );\n\t\t},\n\t\tonMerge( forward ) {\n\t\t\tconst { clientId, rootClientId } = ownProps;\n\t\t\tconst {\n\t\t\t\tgetPreviousBlockClientId,\n\t\t\t\tgetNextBlockClientId,\n\t\t\t\tgetBlock,\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tgetBlockIndex,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tcanInsertBlockType,\n\t\t\t} = registry.select( blockEditorStore );\n\n\t\t\tfunction switchToDefaultOrRemove() {\n\t\t\t\tconst block = getBlock( clientId );\n\t\t\t\tconst defaultBlockName = getDefaultBlockName();\n\t\t\t\tif ( getBlockName( clientId ) !== defaultBlockName ) {\n\t\t\t\t\tconst replacement = switchToBlockType(\n\t\t\t\t\t\tblock,\n\t\t\t\t\t\tdefaultBlockName\n\t\t\t\t\t);\n\t\t\t\t\tif ( replacement && replacement.length ) {\n\t\t\t\t\t\treplaceBlocks( clientId, replacement );\n\t\t\t\t\t}\n\t\t\t\t} else if ( isUnmodifiedDefaultBlock( block ) ) {\n\t\t\t\t\tconst nextBlockClientId = getNextBlockClientId( clientId );\n\t\t\t\t\tif ( nextBlockClientId ) {\n\t\t\t\t\t\tregistry.batch( () => {\n\t\t\t\t\t\t\tremoveBlock( clientId );\n\t\t\t\t\t\t\tselectBlock( nextBlockClientId );\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Moves the block with clientId up one level. If the block type\n\t\t\t * cannot be inserted at the new location, it will be attempted to\n\t\t\t * convert to the default block type.\n\t\t\t *\n\t\t\t * @param {string} _clientId The block to move.\n\t\t\t * @param {boolean} changeSelection Whether to change the selection\n\t\t\t * to the moved block.\n\t\t\t */\n\t\t\tfunction moveFirstItemUp( _clientId, changeSelection = true ) {\n\t\t\t\tconst targetRootClientId = getBlockRootClientId( _clientId );\n\t\t\t\tconst blockOrder = getBlockOrder( _clientId );\n\t\t\t\tconst [ firstClientId ] = blockOrder;\n\n\t\t\t\tif (\n\t\t\t\t\tblockOrder.length === 1 &&\n\t\t\t\t\tisUnmodifiedBlock( getBlock( firstClientId ) )\n\t\t\t\t) {\n\t\t\t\t\tremoveBlock( _clientId );\n\t\t\t\t} else {\n\t\t\t\t\tregistry.batch( () => {\n\t\t\t\t\t\tconst firstBlock = getBlock( firstClientId );\n\t\t\t\t\t\tconst isFirstBlockContentUnmodified =\n\t\t\t\t\t\t\tisUnmodifiedBlockContent( firstBlock );\n\t\t\t\t\t\tconst defaultBlockName = getDefaultBlockName();\n\t\t\t\t\t\tconst replacement = switchToBlockType(\n\t\t\t\t\t\t\tfirstBlock,\n\t\t\t\t\t\t\tdefaultBlockName\n\t\t\t\t\t\t);\n\t\t\t\t\t\tconst canTransformToDefaultBlock =\n\t\t\t\t\t\t\t!! replacement?.length &&\n\t\t\t\t\t\t\treplacement.every( ( block ) =>\n\t\t\t\t\t\t\t\tcanInsertBlockType( block.name, _clientId )\n\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tisFirstBlockContentUnmodified &&\n\t\t\t\t\t\t\tcanTransformToDefaultBlock\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t// Step 1: If the block is empty and can be transformed to the default block type.\n\t\t\t\t\t\t\treplaceBlocks(\n\t\t\t\t\t\t\t\tfirstClientId,\n\t\t\t\t\t\t\t\treplacement,\n\t\t\t\t\t\t\t\tchangeSelection\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else if (\n\t\t\t\t\t\t\tisFirstBlockContentUnmodified &&\n\t\t\t\t\t\t\tfirstBlock.name === defaultBlockName\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t// Step 2: If the block is empty and is already the default block type.\n\t\t\t\t\t\t\tremoveBlock( firstClientId );\n\t\t\t\t\t\t\tconst nextBlockClientId =\n\t\t\t\t\t\t\t\tgetNextBlockClientId( clientId );\n\t\t\t\t\t\t\tif ( nextBlockClientId ) {\n\t\t\t\t\t\t\t\tselectBlock( nextBlockClientId );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else if (\n\t\t\t\t\t\t\tcanInsertBlockType(\n\t\t\t\t\t\t\t\tfirstBlock.name,\n\t\t\t\t\t\t\t\ttargetRootClientId\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t// Step 3: If the block can be moved up.\n\t\t\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\t\t\t[ firstClientId ],\n\t\t\t\t\t\t\t\t_clientId,\n\t\t\t\t\t\t\t\ttargetRootClientId,\n\t\t\t\t\t\t\t\tgetBlockIndex( _clientId )\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst canLiftAndTransformToDefaultBlock =\n\t\t\t\t\t\t\t\t!! replacement?.length &&\n\t\t\t\t\t\t\t\treplacement.every( ( block ) =>\n\t\t\t\t\t\t\t\t\tcanInsertBlockType(\n\t\t\t\t\t\t\t\t\t\tblock.name,\n\t\t\t\t\t\t\t\t\t\ttargetRootClientId\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\tif ( canLiftAndTransformToDefaultBlock ) {\n\t\t\t\t\t\t\t\t// Step 4: If the block can be transformed to the default block type and moved up.\n\t\t\t\t\t\t\t\tinsertBlocks(\n\t\t\t\t\t\t\t\t\treplacement,\n\t\t\t\t\t\t\t\t\tgetBlockIndex( _clientId ),\n\t\t\t\t\t\t\t\t\ttargetRootClientId,\n\t\t\t\t\t\t\t\t\tchangeSelection\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tremoveBlock( firstClientId, false );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t// Step 5: Continue the default behavior.\n\t\t\t\t\t\t\t\tswitchToDefaultOrRemove();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t! getBlockOrder( _clientId ).length &&\n\t\t\t\t\t\t\tisUnmodifiedBlock( getBlock( _clientId ) )\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tremoveBlock( _clientId, false );\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// For `Delete` or forward merge, we should do the exact same thing\n\t\t\t// as `Backspace`, but from the other block.\n\t\t\tif ( forward ) {\n\t\t\t\tif ( rootClientId ) {\n\t\t\t\t\tconst nextRootClientId =\n\t\t\t\t\t\tgetNextBlockClientId( rootClientId );\n\n\t\t\t\t\tif ( nextRootClientId ) {\n\t\t\t\t\t\t// If there is a block that follows with the same parent\n\t\t\t\t\t\t// block name and the same attributes, merge the inner\n\t\t\t\t\t\t// blocks.\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tgetBlockName( rootClientId ) ===\n\t\t\t\t\t\t\tgetBlockName( nextRootClientId )\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tconst rootAttributes =\n\t\t\t\t\t\t\t\tgetBlockAttributes( rootClientId );\n\t\t\t\t\t\t\tconst previousRootAttributes =\n\t\t\t\t\t\t\t\tgetBlockAttributes( nextRootClientId );\n\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\tObject.keys( rootAttributes ).every(\n\t\t\t\t\t\t\t\t\t( key ) =>\n\t\t\t\t\t\t\t\t\t\trootAttributes[ key ] ===\n\t\t\t\t\t\t\t\t\t\tpreviousRootAttributes[ key ]\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\tregistry.batch( () => {\n\t\t\t\t\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\t\t\t\t\tgetBlockOrder( nextRootClientId ),\n\t\t\t\t\t\t\t\t\t\tnextRootClientId,\n\t\t\t\t\t\t\t\t\t\trootClientId\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\tremoveBlock( nextRootClientId, false );\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tmergeBlocks( rootClientId, nextRootClientId );\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst nextBlockClientId = getNextBlockClientId( clientId );\n\n\t\t\t\tif ( ! nextBlockClientId ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( getBlockOrder( nextBlockClientId ).length ) {\n\t\t\t\t\tmoveFirstItemUp( nextBlockClientId, false );\n\t\t\t\t} else {\n\t\t\t\t\tmergeBlocks( clientId, nextBlockClientId );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst previousBlockClientId =\n\t\t\t\t\tgetPreviousBlockClientId( clientId );\n\n\t\t\t\tif ( previousBlockClientId ) {\n\t\t\t\t\tmergeBlocks( previousBlockClientId, clientId );\n\t\t\t\t} else if ( rootClientId ) {\n\t\t\t\t\tconst previousRootClientId =\n\t\t\t\t\t\tgetPreviousBlockClientId( rootClientId );\n\n\t\t\t\t\t// If there is a preceding block with the same parent block\n\t\t\t\t\t// name and the same attributes, merge the inner blocks.\n\t\t\t\t\tif (\n\t\t\t\t\t\tpreviousRootClientId &&\n\t\t\t\t\t\tgetBlockName( rootClientId ) ===\n\t\t\t\t\t\t\tgetBlockName( previousRootClientId )\n\t\t\t\t\t) {\n\t\t\t\t\t\tconst rootAttributes =\n\t\t\t\t\t\t\tgetBlockAttributes( rootClientId );\n\t\t\t\t\t\tconst previousRootAttributes =\n\t\t\t\t\t\t\tgetBlockAttributes( previousRootClientId );\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tObject.keys( rootAttributes ).every(\n\t\t\t\t\t\t\t\t( key ) =>\n\t\t\t\t\t\t\t\t\trootAttributes[ key ] ===\n\t\t\t\t\t\t\t\t\tpreviousRootAttributes[ key ]\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tregistry.batch( () => {\n\t\t\t\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\t\t\t\tgetBlockOrder( rootClientId ),\n\t\t\t\t\t\t\t\t\trootClientId,\n\t\t\t\t\t\t\t\t\tpreviousRootClientId\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tremoveBlock( rootClientId, false );\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tmoveFirstItemUp( rootClientId );\n\t\t\t\t} else {\n\t\t\t\t\tswitchToDefaultOrRemove();\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tonReplace( blocks, indexToSelect, initialPosition ) {\n\t\t\tif (\n\t\t\t\tblocks.length &&\n\t\t\t\t! isUnmodifiedDefaultBlock( blocks[ blocks.length - 1 ] )\n\t\t\t) {\n\t\t\t\t__unstableMarkLastChangeAsPersistent();\n\t\t\t}\n\t\t\t//Unsynced patterns are nested in an array so we need to flatten them.\n\t\t\tconst replacementBlocks =\n\t\t\t\tblocks?.length === 1 && Array.isArray( blocks[ 0 ] )\n\t\t\t\t\t? blocks[ 0 ]\n\t\t\t\t\t: blocks;\n\t\t\treplaceBlocks(\n\t\t\t\t[ ownProps.clientId ],\n\t\t\t\treplacementBlocks,\n\t\t\t\tindexToSelect,\n\t\t\t\tinitialPosition\n\t\t\t);\n\t\t},\n\t\ttoggleSelection( selectionEnabled ) {\n\t\t\ttoggleSelection( selectionEnabled );\n\t\t},\n\t};\n} );\n\n// This component is used by the BlockListBlockProvider component below. It will\n// add the props necessary for the `editor.BlockListBlock` filters.\nBlockListBlock = compose(\n\tapplyWithDispatch,\n\twithFilters( 'editor.BlockListBlock' )\n)( BlockListBlock );\n\n// This component provides all the information we need through a single store\n// subscription (useSelect mapping). Only the necessary props are passed down\n// to the BlockListBlock component, which is a filtered component, so these\n// props are public API. To avoid adding to the public API, we use a private\n// context to pass the rest of the information to the filtered BlockListBlock\n// component, and useBlockProps.\nfunction BlockListBlockProvider( props ) {\n\tconst { clientId, rootClientId } = props;\n\tconst selectedProps = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tisBlockSelected,\n\t\t\t\tgetBlockMode,\n\t\t\t\tisSelectionEnabled,\n\t\t\t\tgetTemplateLock,\n\t\t\t\tisSectionBlock: _isSectionBlock,\n\t\t\t\tgetBlockWithoutAttributes,\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tcanRemoveBlock,\n\t\t\t\tcanMoveBlock,\n\n\t\t\t\tgetSettings,\n\t\t\t\tgetTemporarilyEditingAsBlocks,\n\t\t\t\tgetBlockEditingMode,\n\t\t\t\tgetBlockName,\n\t\t\t\tisFirstMultiSelectedBlock,\n\t\t\t\tgetMultiSelectedBlockClientIds,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetBlocksByName,\n\n\t\t\t\tgetBlockIndex,\n\t\t\t\tisBlockMultiSelected,\n\t\t\t\tisBlockSubtreeDisabled,\n\t\t\t\tisBlockHighlighted,\n\t\t\t\t__unstableIsFullySelected,\n\t\t\t\t__unstableSelectionHasUnmergeableBlock,\n\t\t\t\tisBlockBeingDragged,\n\t\t\t\tisDragging,\n\t\t\t\t__unstableHasActiveBlockOverlayActive,\n\t\t\t\tgetSelectedBlocksInitialCaretPosition,\n\t\t\t} = unlock( select( blockEditorStore ) );\n\t\t\tconst blockWithoutAttributes =\n\t\t\t\tgetBlockWithoutAttributes( clientId );\n\n\t\t\t// This is a temporary fix.\n\t\t\t// This function should never be called when a block is not\n\t\t\t// present in the state. It happens now because the order in\n\t\t\t// withSelect rendering is not correct.\n\t\t\tif ( ! blockWithoutAttributes ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst {\n\t\t\t\thasBlockSupport: _hasBlockSupport,\n\t\t\t\tgetActiveBlockVariation,\n\t\t\t} = select( blocksStore );\n\t\t\tconst attributes = getBlockAttributes( clientId );\n\t\t\tconst { name: blockName, isValid } = blockWithoutAttributes;\n\t\t\tconst blockType = getBlockType( blockName );\n\t\t\tconst { supportsLayout, __unstableIsPreviewMode: isPreviewMode } =\n\t\t\t\tgetSettings();\n\t\t\tconst hasLightBlockWrapper = blockType?.apiVersion > 1;\n\t\t\tconst previewContext = {\n\t\t\t\tisPreviewMode,\n\t\t\t\tblockWithoutAttributes,\n\t\t\t\tname: blockName,\n\t\t\t\tattributes,\n\t\t\t\tisValid,\n\t\t\t\tthemeSupportsLayout: supportsLayout,\n\t\t\t\tindex: getBlockIndex( clientId ),\n\t\t\t\tisReusable: isReusableBlock( blockType ),\n\t\t\t\tclassName: hasLightBlockWrapper\n\t\t\t\t\t? attributes.className\n\t\t\t\t\t: undefined,\n\t\t\t\tdefaultClassName: hasLightBlockWrapper\n\t\t\t\t\t? getBlockDefaultClassName( blockName )\n\t\t\t\t\t: undefined,\n\t\t\t\tblockTitle: blockType?.title,\n\t\t\t};\n\n\t\t\t// When in preview mode, we can avoid a lot of selection and\n\t\t\t// editing related selectors.\n\t\t\tif ( isPreviewMode ) {\n\t\t\t\treturn previewContext;\n\t\t\t}\n\n\t\t\tconst _isSelected = isBlockSelected( clientId );\n\t\t\tconst canRemove = canRemoveBlock( clientId );\n\t\t\tconst canMove = canMoveBlock( clientId );\n\t\t\tconst match = getActiveBlockVariation( blockName, attributes );\n\t\t\tconst isMultiSelected = isBlockMultiSelected( clientId );\n\t\t\tconst checkDeep = true;\n\t\t\tconst isAncestorOfSelectedBlock = hasSelectedInnerBlock(\n\t\t\t\tclientId,\n\t\t\t\tcheckDeep\n\t\t\t);\n\t\t\tconst blockEditingMode = getBlockEditingMode( clientId );\n\n\t\t\tconst multiple = hasBlockSupport( blockName, 'multiple', true );\n\n\t\t\t// For block types with `multiple` support, there is no \"original\n\t\t\t// block\" to be found in the content, as the block itself is valid.\n\t\t\tconst blocksWithSameName = multiple\n\t\t\t\t? []\n\t\t\t\t: getBlocksByName( blockName );\n\t\t\tconst isInvalid =\n\t\t\t\tblocksWithSameName.length &&\n\t\t\t\tblocksWithSameName[ 0 ] !== clientId;\n\n\t\t\treturn {\n\t\t\t\t...previewContext,\n\t\t\t\tmode: getBlockMode( clientId ),\n\t\t\t\tisSelectionEnabled: isSelectionEnabled(),\n\t\t\t\tisLocked: !! getTemplateLock( rootClientId ),\n\t\t\t\tisSectionBlock: _isSectionBlock( clientId ),\n\t\t\t\tcanRemove,\n\t\t\t\tcanMove,\n\t\t\t\tisSelected: _isSelected,\n\t\t\t\tisTemporarilyEditingAsBlocks:\n\t\t\t\t\tgetTemporarilyEditingAsBlocks() === clientId,\n\t\t\t\tblockEditingMode,\n\t\t\t\tmayDisplayControls:\n\t\t\t\t\t_isSelected ||\n\t\t\t\t\t( isFirstMultiSelectedBlock( clientId ) &&\n\t\t\t\t\t\tgetMultiSelectedBlockClientIds().every(\n\t\t\t\t\t\t\t( id ) => getBlockName( id ) === blockName\n\t\t\t\t\t\t) ),\n\t\t\t\tmayDisplayParentControls:\n\t\t\t\t\t_hasBlockSupport(\n\t\t\t\t\t\tgetBlockName( clientId ),\n\t\t\t\t\t\t'__experimentalExposeControlsToChildren',\n\t\t\t\t\t\tfalse\n\t\t\t\t\t) && hasSelectedInnerBlock( clientId ),\n\t\t\t\tblockApiVersion: blockType?.apiVersion || 1,\n\t\t\t\tblockTitle: match?.title || blockType?.title,\n\t\t\t\tisSubtreeDisabled:\n\t\t\t\t\tblockEditingMode === 'disabled' &&\n\t\t\t\t\tisBlockSubtreeDisabled( clientId ),\n\t\t\t\thasOverlay:\n\t\t\t\t\t__unstableHasActiveBlockOverlayActive( clientId ) &&\n\t\t\t\t\t! isDragging(),\n\t\t\t\tinitialPosition: _isSelected\n\t\t\t\t\t? getSelectedBlocksInitialCaretPosition()\n\t\t\t\t\t: undefined,\n\t\t\t\tisHighlighted: isBlockHighlighted( clientId ),\n\t\t\t\tisMultiSelected,\n\t\t\t\tisPartiallySelected:\n\t\t\t\t\tisMultiSelected &&\n\t\t\t\t\t! __unstableIsFullySelected() &&\n\t\t\t\t\t! __unstableSelectionHasUnmergeableBlock(),\n\t\t\t\tisDragging: isBlockBeingDragged( clientId ),\n\t\t\t\thasChildSelected: isAncestorOfSelectedBlock,\n\t\t\t\tisEditingDisabled: blockEditingMode === 'disabled',\n\t\t\t\thasEditableOutline:\n\t\t\t\t\tblockEditingMode !== 'disabled' &&\n\t\t\t\t\tgetBlockEditingMode( rootClientId ) === 'disabled',\n\t\t\t\toriginalBlockClientId: isInvalid\n\t\t\t\t\t? blocksWithSameName[ 0 ]\n\t\t\t\t\t: false,\n\t\t\t};\n\t\t},\n\t\t[ clientId, rootClientId ]\n\t);\n\n\tconst {\n\t\tisPreviewMode,\n\t\t// Fill values that end up as a public API and may not be defined in\n\t\t// preview mode.\n\t\tmode = 'visual',\n\t\tisSelectionEnabled = false,\n\t\tisLocked = false,\n\t\tcanRemove = false,\n\t\tcanMove = false,\n\t\tblockWithoutAttributes,\n\t\tname,\n\t\tattributes,\n\t\tisValid,\n\t\tisSelected = false,\n\t\tthemeSupportsLayout,\n\t\tisTemporarilyEditingAsBlocks,\n\t\tblockEditingMode,\n\t\tmayDisplayControls,\n\t\tmayDisplayParentControls,\n\t\tindex,\n\t\tblockApiVersion,\n\t\tblockTitle,\n\t\tisSubtreeDisabled,\n\t\thasOverlay,\n\t\tinitialPosition,\n\t\tisHighlighted,\n\t\tisMultiSelected,\n\t\tisPartiallySelected,\n\t\tisReusable,\n\t\tisDragging,\n\t\thasChildSelected,\n\t\tisSectionBlock,\n\t\tisEditingDisabled,\n\t\thasEditableOutline,\n\t\tclassName,\n\t\tdefaultClassName,\n\t\toriginalBlockClientId,\n\t} = selectedProps;\n\n\t// Users of the editor.BlockListBlock filter used to be able to\n\t// access the block prop.\n\t// Ideally these blocks would rely on the clientId prop only.\n\t// This is kept for backward compatibility reasons.\n\tconst block = useMemo(\n\t\t() => ( { ...blockWithoutAttributes, attributes } ),\n\t\t[ blockWithoutAttributes, attributes ]\n\t);\n\n\t// Block is sometimes not mounted at the right time, causing it be\n\t// undefined see issue for more info\n\t// https://github.com/WordPress/gutenberg/issues/17013\n\tif ( ! selectedProps ) {\n\t\treturn null;\n\t}\n\n\tconst privateContext = {\n\t\tisPreviewMode,\n\t\tclientId,\n\t\tclassName,\n\t\tindex,\n\t\tmode,\n\t\tname,\n\t\tblockApiVersion,\n\t\tblockTitle,\n\t\tisSelected,\n\t\tisSubtreeDisabled,\n\t\thasOverlay,\n\t\tinitialPosition,\n\t\tblockEditingMode,\n\t\tisHighlighted,\n\t\tisMultiSelected,\n\t\tisPartiallySelected,\n\t\tisReusable,\n\t\tisDragging,\n\t\thasChildSelected,\n\t\tisSectionBlock,\n\t\tisEditingDisabled,\n\t\thasEditableOutline,\n\t\tisTemporarilyEditingAsBlocks,\n\t\tdefaultClassName,\n\t\tmayDisplayControls,\n\t\tmayDisplayParentControls,\n\t\toriginalBlockClientId,\n\t\tthemeSupportsLayout,\n\t};\n\n\t// Here we separate between the props passed to BlockListBlock and any other\n\t// information we selected for internal use. BlockListBlock is a filtered\n\t// component and thus ALL the props are PUBLIC API.\n\n\t// Note that the context value doesn't have to be memoized in this case\n\t// because when it changes, this component will be re-rendered anyway, and\n\t// none of the consumers (BlockListBlock and useBlockProps) are memoized or\n\t// \"pure\". This is different from the public BlockEditContext, where\n\t// consumers might be memoized or \"pure\".\n\treturn (\n\t\t<PrivateBlockContext.Provider value={ privateContext }>\n\t\t\t<BlockListBlock\n\t\t\t\t{ ...props }\n\t\t\t\t// WARNING: all the following props are public API (through the\n\t\t\t\t// editor.BlockListBlock filter) and normally nothing new should\n\t\t\t\t// be added to it.\n\t\t\t\t{ ...{\n\t\t\t\t\tmode,\n\t\t\t\t\tisSelectionEnabled,\n\t\t\t\t\tisLocked,\n\t\t\t\t\tcanRemove,\n\t\t\t\t\tcanMove,\n\t\t\t\t\t// Users of the editor.BlockListBlock filter used to be able\n\t\t\t\t\t// to access the block prop. Ideally these blocks would rely\n\t\t\t\t\t// on the clientId prop only. This is kept for backward\n\t\t\t\t\t// compatibility reasons.\n\t\t\t\t\tblock,\n\t\t\t\t\tname,\n\t\t\t\t\tattributes,\n\t\t\t\t\tisValid,\n\t\t\t\t\tisSelected,\n\t\t\t\t} }\n\t\t\t/>\n\t\t</PrivateBlockContext.Provider>\n\t);\n}\n\nexport default memo( BlockListBlockProvider );\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","memo","useCallback","RawHTML","useContext","useMemo","getBlockType","getSaveContent","isUnmodifiedDefaultBlock","serializeRawBlock","switchToBlockType","getDefaultBlockName","isUnmodifiedBlock","isReusableBlock","getBlockDefaultClassName","hasBlockSupport","store","blocksStore","privateApis","blocksPrivateApis","withFilters","withDispatch","useDispatch","useSelect","compose","safeHTML","BlockEdit","BlockInvalidWarning","BlockCrashWarning","BlockCrashBoundary","BlockHtml","useBlockProps","blockEditorStore","useLayout","PrivateBlockContext","unlock","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","isUnmodifiedBlockContent","mergeWrapperProps","propsA","propsB","newProps","hasOwnProperty","className","style","Block","children","isHtml","props","__unstableIsHtml","BlockListBlock","block","__unstableBlockSource","mode","isLocked","canRemove","clientId","isSelected","isSelectionEnabled","__unstableLayoutClassNames","layoutClassNames","name","isValid","attributes","wrapperProps","setAttributes","onReplace","onInsertBlocksAfter","onMerge","toggleSelection","_wrapperProps","mayDisplayControls","mayDisplayParentControls","themeSupportsLayout","context","removeBlock","onRemove","parentLayout","blockEdit","insertBlocksAfter","undefined","mergeBlocks","__unstableParentLayout","Object","keys","length","blockEditingMode","isPreviewMode","blockType","getEditWrapperProps","isAligned","isSticky","includes","saveContent","display","apiVersion","dataAlign","restWrapperProps","updatedWrapperProps","Provider","value","fallback","applyWithDispatch","dispatch","ownProps","registry","updateBlockAttributes","insertBlocks","replaceBlocks","__unstableMarkLastChangeAsPersistent","moveBlocksToPosition","selectBlock","newAttributes","getMultiSelectedBlockClientIds","select","multiSelectedBlockClientIds","clientIds","onInsertBlocks","blocks","index","rootClientId","getBlockIndex","forward","getPreviousBlockClientId","getNextBlockClientId","getBlock","getBlockAttributes","getBlockName","getBlockOrder","getBlockRootClientId","canInsertBlockType","switchToDefaultOrRemove","defaultBlockName","replacement","nextBlockClientId","batch","moveFirstItemUp","_clientId","changeSelection","targetRootClientId","blockOrder","firstClientId","firstBlock","isFirstBlockContentUnmodified","canTransformToDefaultBlock","every","canLiftAndTransformToDefaultBlock","nextRootClientId","rootAttributes","previousRootAttributes","key","previousBlockClientId","previousRootClientId","indexToSelect","initialPosition","replacementBlocks","Array","isArray","selectionEnabled","BlockListBlockProvider","selectedProps","isBlockSelected","getBlockMode","getTemplateLock","isSectionBlock","_isSectionBlock","getBlockWithoutAttributes","canRemoveBlock","canMoveBlock","getSettings","getTemporarilyEditingAsBlocks","getBlockEditingMode","isFirstMultiSelectedBlock","hasSelectedInnerBlock","getBlocksByName","isBlockMultiSelected","isBlockSubtreeDisabled","isBlockHighlighted","__unstableIsFullySelected","__unstableSelectionHasUnmergeableBlock","isBlockBeingDragged","isDragging","__unstableHasActiveBlockOverlayActive","getSelectedBlocksInitialCaretPosition","blockWithoutAttributes","_hasBlockSupport","getActiveBlockVariation","blockName","supportsLayout","hasLightBlockWrapper","previewContext","isReusable","defaultClassName","blockTitle","title","_isSelected","canMove","match","isMultiSelected","checkDeep","isAncestorOfSelectedBlock","multiple","blocksWithSameName","isInvalid","isTemporarilyEditingAsBlocks","id","blockApiVersion","isSubtreeDisabled","hasOverlay","isHighlighted","isPartiallySelected","hasChildSelected","isEditingDisabled","hasEditableOutline","originalBlockClientId","privateContext"],"sources":["@wordpress/block-editor/src/components/block-list/block.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tmemo,\n\tuseCallback,\n\tRawHTML,\n\tuseContext,\n\tuseMemo,\n} from '@wordpress/element';\nimport {\n\tgetBlockType,\n\tgetSaveContent,\n\tisUnmodifiedDefaultBlock,\n\tserializeRawBlock,\n\tswitchToBlockType,\n\tgetDefaultBlockName,\n\tisUnmodifiedBlock,\n\tisReusableBlock,\n\tgetBlockDefaultClassName,\n\thasBlockSupport,\n\tstore as blocksStore,\n\tprivateApis as blocksPrivateApis,\n} from '@wordpress/blocks';\nimport { withFilters } from '@wordpress/components';\nimport { withDispatch, useDispatch, useSelect } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { safeHTML } from '@wordpress/dom';\n\n/**\n * Internal dependencies\n */\nimport BlockEdit from '../block-edit';\nimport BlockInvalidWarning from './block-invalid-warning';\nimport BlockCrashWarning from './block-crash-warning';\nimport BlockCrashBoundary from './block-crash-boundary';\nimport BlockHtml from './block-html';\nimport { useBlockProps } from './use-block-props';\nimport { store as blockEditorStore } from '../../store';\nimport { useLayout } from './layout';\nimport { PrivateBlockContext } from './private-block-context';\n\nimport { unlock } from '../../lock-unlock';\n\nconst { isUnmodifiedBlockContent } = unlock( blocksPrivateApis );\n\n/**\n * Merges wrapper props with special handling for classNames and styles.\n *\n * @param {Object} propsA\n * @param {Object} propsB\n *\n * @return {Object} Merged props.\n */\nfunction mergeWrapperProps( propsA, propsB ) {\n\tconst newProps = {\n\t\t...propsA,\n\t\t...propsB,\n\t};\n\n\t// May be set to undefined, so check if the property is set!\n\tif (\n\t\tpropsA?.hasOwnProperty( 'className' ) &&\n\t\tpropsB?.hasOwnProperty( 'className' )\n\t) {\n\t\tnewProps.className = clsx( propsA.className, propsB.className );\n\t}\n\n\tif (\n\t\tpropsA?.hasOwnProperty( 'style' ) &&\n\t\tpropsB?.hasOwnProperty( 'style' )\n\t) {\n\t\tnewProps.style = { ...propsA.style, ...propsB.style };\n\t}\n\n\treturn newProps;\n}\n\nfunction Block( { children, isHtml, ...props } ) {\n\treturn (\n\t\t<div { ...useBlockProps( props, { __unstableIsHtml: isHtml } ) }>\n\t\t\t{ children }\n\t\t</div>\n\t);\n}\n\nfunction BlockListBlock( {\n\tblock: { __unstableBlockSource },\n\tmode,\n\tisLocked,\n\tcanRemove,\n\tclientId,\n\tisSelected,\n\tisSelectionEnabled,\n\tclassName,\n\t__unstableLayoutClassNames: layoutClassNames,\n\tname,\n\tisValid,\n\tattributes,\n\twrapperProps,\n\tsetAttributes,\n\tonReplace,\n\tonInsertBlocksAfter,\n\tonMerge,\n\ttoggleSelection,\n} ) {\n\tconst {\n\t\tmayDisplayControls,\n\t\tmayDisplayParentControls,\n\t\tthemeSupportsLayout,\n\t\t...context\n\t} = useContext( PrivateBlockContext );\n\tconst { removeBlock } = useDispatch( blockEditorStore );\n\tconst onRemove = useCallback(\n\t\t() => removeBlock( clientId ),\n\t\t[ clientId, removeBlock ]\n\t);\n\n\tconst parentLayout = useLayout() || {};\n\n\t// We wrap the BlockEdit component in a div that hides it when editing in\n\t// HTML mode. This allows us to render all of the ancillary pieces\n\t// (InspectorControls, etc.) which are inside `BlockEdit` but not\n\t// `BlockHTML`, even in HTML mode.\n\tlet blockEdit = (\n\t\t<BlockEdit\n\t\t\tname={ name }\n\t\t\tisSelected={ isSelected }\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tinsertBlocksAfter={ isLocked ? undefined : onInsertBlocksAfter }\n\t\t\tonReplace={ canRemove ? onReplace : undefined }\n\t\t\tonRemove={ canRemove ? onRemove : undefined }\n\t\t\tmergeBlocks={ canRemove ? onMerge : undefined }\n\t\t\tclientId={ clientId }\n\t\t\tisSelectionEnabled={ isSelectionEnabled }\n\t\t\ttoggleSelection={ toggleSelection }\n\t\t\t__unstableLayoutClassNames={ layoutClassNames }\n\t\t\t__unstableParentLayout={\n\t\t\t\tObject.keys( parentLayout ).length ? parentLayout : undefined\n\t\t\t}\n\t\t\tmayDisplayControls={ mayDisplayControls }\n\t\t\tmayDisplayParentControls={ mayDisplayParentControls }\n\t\t\tblockEditingMode={ context.blockEditingMode }\n\t\t\tisPreviewMode={ context.isPreviewMode }\n\t\t/>\n\t);\n\n\tconst blockType = getBlockType( name );\n\n\t// Determine whether the block has props to apply to the wrapper.\n\tif ( blockType?.getEditWrapperProps ) {\n\t\twrapperProps = mergeWrapperProps(\n\t\t\twrapperProps,\n\t\t\tblockType.getEditWrapperProps( attributes )\n\t\t);\n\t}\n\n\tconst isAligned =\n\t\twrapperProps &&\n\t\t!! wrapperProps[ 'data-align' ] &&\n\t\t! themeSupportsLayout;\n\n\t// Support for sticky position in classic themes with alignment wrappers.\n\n\tconst isSticky = className?.includes( 'is-position-sticky' );\n\n\t// For aligned blocks, provide a wrapper element so the block can be\n\t// positioned relative to the block column.\n\t// This is only kept for classic themes that don't support layout\n\t// Historically we used to rely on extra divs and data-align to\n\t// provide the alignments styles in the editor.\n\t// Due to the differences between frontend and backend, we migrated\n\t// to the layout feature, and we're now aligning the markup of frontend\n\t// and backend.\n\tif ( isAligned ) {\n\t\tblockEdit = (\n\t\t\t<div\n\t\t\t\tclassName={ clsx( 'wp-block', isSticky && className ) }\n\t\t\t\tdata-align={ wrapperProps[ 'data-align' ] }\n\t\t\t>\n\t\t\t\t{ blockEdit }\n\t\t\t</div>\n\t\t);\n\t}\n\n\tlet block;\n\n\tif ( ! isValid ) {\n\t\tconst saveContent = __unstableBlockSource\n\t\t\t? serializeRawBlock( __unstableBlockSource )\n\t\t\t: getSaveContent( blockType, attributes );\n\n\t\tblock = (\n\t\t\t<Block className=\"has-warning\">\n\t\t\t\t<BlockInvalidWarning clientId={ clientId } />\n\t\t\t\t<RawHTML>{ safeHTML( saveContent ) }</RawHTML>\n\t\t\t</Block>\n\t\t);\n\t} else if ( mode === 'html' ) {\n\t\t// Render blockEdit so the inspector controls don't disappear.\n\t\t// See #8969.\n\t\tblock = (\n\t\t\t<>\n\t\t\t\t<div style={ { display: 'none' } }>{ blockEdit }</div>\n\t\t\t\t<Block isHtml>\n\t\t\t\t\t<BlockHtml clientId={ clientId } />\n\t\t\t\t</Block>\n\t\t\t</>\n\t\t);\n\t} else if ( blockType?.apiVersion > 1 ) {\n\t\tblock = blockEdit;\n\t} else {\n\t\tblock = <Block>{ blockEdit }</Block>;\n\t}\n\n\tconst { 'data-align': dataAlign, ...restWrapperProps } = wrapperProps ?? {};\n\tconst updatedWrapperProps = {\n\t\t...restWrapperProps,\n\t\tclassName: clsx(\n\t\t\trestWrapperProps.className,\n\t\t\tdataAlign && themeSupportsLayout && `align${ dataAlign }`,\n\t\t\t! ( dataAlign && isSticky ) && className\n\t\t),\n\t};\n\n\t// We set a new context with the adjusted and filtered wrapperProps (through\n\t// `editor.BlockListBlock`), which the `BlockListBlockProvider` did not have\n\t// access to.\n\t// Note that the context value doesn't have to be memoized in this case\n\t// because when it changes, this component will be re-rendered anyway, and\n\t// none of the consumers (BlockListBlock and useBlockProps) are memoized or\n\t// \"pure\". This is different from the public BlockEditContext, where\n\t// consumers might be memoized or \"pure\".\n\treturn (\n\t\t<PrivateBlockContext.Provider\n\t\t\tvalue={ {\n\t\t\t\twrapperProps: updatedWrapperProps,\n\t\t\t\tisAligned,\n\t\t\t\t...context,\n\t\t\t} }\n\t\t>\n\t\t\t<BlockCrashBoundary\n\t\t\t\tfallback={\n\t\t\t\t\t<Block className=\"has-warning\">\n\t\t\t\t\t\t<BlockCrashWarning />\n\t\t\t\t\t</Block>\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{ block }\n\t\t\t</BlockCrashBoundary>\n\t\t</PrivateBlockContext.Provider>\n\t);\n}\n\nconst applyWithDispatch = withDispatch( ( dispatch, ownProps, registry ) => {\n\tconst {\n\t\tupdateBlockAttributes,\n\t\tinsertBlocks,\n\t\tmergeBlocks,\n\t\treplaceBlocks,\n\t\ttoggleSelection,\n\t\t__unstableMarkLastChangeAsPersistent,\n\t\tmoveBlocksToPosition,\n\t\tremoveBlock,\n\t\tselectBlock,\n\t} = dispatch( blockEditorStore );\n\n\t// Do not add new properties here, use `useDispatch` instead to avoid\n\t// leaking new props to the public API (editor.BlockListBlock filter).\n\treturn {\n\t\tsetAttributes( newAttributes ) {\n\t\t\tconst { getMultiSelectedBlockClientIds } =\n\t\t\t\tregistry.select( blockEditorStore );\n\t\t\tconst multiSelectedBlockClientIds =\n\t\t\t\tgetMultiSelectedBlockClientIds();\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst clientIds = multiSelectedBlockClientIds.length\n\t\t\t\t? multiSelectedBlockClientIds\n\t\t\t\t: [ clientId ];\n\n\t\t\tupdateBlockAttributes( clientIds, newAttributes );\n\t\t},\n\t\tonInsertBlocks( blocks, index ) {\n\t\t\tconst { rootClientId } = ownProps;\n\t\t\tinsertBlocks( blocks, index, rootClientId );\n\t\t},\n\t\tonInsertBlocksAfter( blocks ) {\n\t\t\tconst { clientId, rootClientId } = ownProps;\n\t\t\tconst { getBlockIndex } = registry.select( blockEditorStore );\n\t\t\tconst index = getBlockIndex( clientId );\n\t\t\tinsertBlocks( blocks, index + 1, rootClientId );\n\t\t},\n\t\tonMerge( forward ) {\n\t\t\tconst { clientId, rootClientId } = ownProps;\n\t\t\tconst {\n\t\t\t\tgetPreviousBlockClientId,\n\t\t\t\tgetNextBlockClientId,\n\t\t\t\tgetBlock,\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tgetBlockIndex,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tcanInsertBlockType,\n\t\t\t} = registry.select( blockEditorStore );\n\n\t\t\tfunction switchToDefaultOrRemove() {\n\t\t\t\tconst block = getBlock( clientId );\n\t\t\t\tconst defaultBlockName = getDefaultBlockName();\n\t\t\t\tif ( getBlockName( clientId ) !== defaultBlockName ) {\n\t\t\t\t\tconst replacement = switchToBlockType(\n\t\t\t\t\t\tblock,\n\t\t\t\t\t\tdefaultBlockName\n\t\t\t\t\t);\n\t\t\t\t\tif ( replacement && replacement.length ) {\n\t\t\t\t\t\treplaceBlocks( clientId, replacement );\n\t\t\t\t\t}\n\t\t\t\t} else if ( isUnmodifiedDefaultBlock( block ) ) {\n\t\t\t\t\tconst nextBlockClientId = getNextBlockClientId( clientId );\n\t\t\t\t\tif ( nextBlockClientId ) {\n\t\t\t\t\t\tregistry.batch( () => {\n\t\t\t\t\t\t\tremoveBlock( clientId );\n\t\t\t\t\t\t\tselectBlock( nextBlockClientId );\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Moves the block with clientId up one level. If the block type\n\t\t\t * cannot be inserted at the new location, it will be attempted to\n\t\t\t * convert to the default block type.\n\t\t\t *\n\t\t\t * @param {string} _clientId The block to move.\n\t\t\t * @param {boolean} changeSelection Whether to change the selection\n\t\t\t * to the moved block.\n\t\t\t */\n\t\t\tfunction moveFirstItemUp( _clientId, changeSelection = true ) {\n\t\t\t\tconst targetRootClientId = getBlockRootClientId( _clientId );\n\t\t\t\tconst blockOrder = getBlockOrder( _clientId );\n\t\t\t\tconst [ firstClientId ] = blockOrder;\n\n\t\t\t\tif (\n\t\t\t\t\tblockOrder.length === 1 &&\n\t\t\t\t\tisUnmodifiedBlock( getBlock( firstClientId ) )\n\t\t\t\t) {\n\t\t\t\t\tremoveBlock( _clientId );\n\t\t\t\t} else {\n\t\t\t\t\tregistry.batch( () => {\n\t\t\t\t\t\tconst firstBlock = getBlock( firstClientId );\n\t\t\t\t\t\tconst isFirstBlockContentUnmodified =\n\t\t\t\t\t\t\tisUnmodifiedBlockContent( firstBlock );\n\t\t\t\t\t\tconst defaultBlockName = getDefaultBlockName();\n\t\t\t\t\t\tconst replacement = switchToBlockType(\n\t\t\t\t\t\t\tfirstBlock,\n\t\t\t\t\t\t\tdefaultBlockName\n\t\t\t\t\t\t);\n\t\t\t\t\t\tconst canTransformToDefaultBlock =\n\t\t\t\t\t\t\t!! replacement?.length &&\n\t\t\t\t\t\t\treplacement.every( ( block ) =>\n\t\t\t\t\t\t\t\tcanInsertBlockType( block.name, _clientId )\n\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tisFirstBlockContentUnmodified &&\n\t\t\t\t\t\t\tcanTransformToDefaultBlock\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t// Step 1: If the block is empty and can be transformed to the default block type.\n\t\t\t\t\t\t\treplaceBlocks(\n\t\t\t\t\t\t\t\tfirstClientId,\n\t\t\t\t\t\t\t\treplacement,\n\t\t\t\t\t\t\t\tchangeSelection\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else if (\n\t\t\t\t\t\t\tisFirstBlockContentUnmodified &&\n\t\t\t\t\t\t\tfirstBlock.name === defaultBlockName\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t// Step 2: If the block is empty and is already the default block type.\n\t\t\t\t\t\t\tremoveBlock( firstClientId );\n\t\t\t\t\t\t\tconst nextBlockClientId =\n\t\t\t\t\t\t\t\tgetNextBlockClientId( clientId );\n\t\t\t\t\t\t\tif ( nextBlockClientId ) {\n\t\t\t\t\t\t\t\tselectBlock( nextBlockClientId );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else if (\n\t\t\t\t\t\t\tcanInsertBlockType(\n\t\t\t\t\t\t\t\tfirstBlock.name,\n\t\t\t\t\t\t\t\ttargetRootClientId\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t// Step 3: If the block can be moved up.\n\t\t\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\t\t\t[ firstClientId ],\n\t\t\t\t\t\t\t\t_clientId,\n\t\t\t\t\t\t\t\ttargetRootClientId,\n\t\t\t\t\t\t\t\tgetBlockIndex( _clientId )\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst canLiftAndTransformToDefaultBlock =\n\t\t\t\t\t\t\t\t!! replacement?.length &&\n\t\t\t\t\t\t\t\treplacement.every( ( block ) =>\n\t\t\t\t\t\t\t\t\tcanInsertBlockType(\n\t\t\t\t\t\t\t\t\t\tblock.name,\n\t\t\t\t\t\t\t\t\t\ttargetRootClientId\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\tif ( canLiftAndTransformToDefaultBlock ) {\n\t\t\t\t\t\t\t\t// Step 4: If the block can be transformed to the default block type and moved up.\n\t\t\t\t\t\t\t\tinsertBlocks(\n\t\t\t\t\t\t\t\t\treplacement,\n\t\t\t\t\t\t\t\t\tgetBlockIndex( _clientId ),\n\t\t\t\t\t\t\t\t\ttargetRootClientId,\n\t\t\t\t\t\t\t\t\tchangeSelection\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tremoveBlock( firstClientId, false );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t// Step 5: Continue the default behavior.\n\t\t\t\t\t\t\t\tswitchToDefaultOrRemove();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t! getBlockOrder( _clientId ).length &&\n\t\t\t\t\t\t\tisUnmodifiedBlock( getBlock( _clientId ) )\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tremoveBlock( _clientId, false );\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// For `Delete` or forward merge, we should do the exact same thing\n\t\t\t// as `Backspace`, but from the other block.\n\t\t\tif ( forward ) {\n\t\t\t\tif ( rootClientId ) {\n\t\t\t\t\tconst nextRootClientId =\n\t\t\t\t\t\tgetNextBlockClientId( rootClientId );\n\n\t\t\t\t\tif ( nextRootClientId ) {\n\t\t\t\t\t\t// If there is a block that follows with the same parent\n\t\t\t\t\t\t// block name and the same attributes, merge the inner\n\t\t\t\t\t\t// blocks.\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tgetBlockName( rootClientId ) ===\n\t\t\t\t\t\t\tgetBlockName( nextRootClientId )\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tconst rootAttributes =\n\t\t\t\t\t\t\t\tgetBlockAttributes( rootClientId );\n\t\t\t\t\t\t\tconst previousRootAttributes =\n\t\t\t\t\t\t\t\tgetBlockAttributes( nextRootClientId );\n\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\tObject.keys( rootAttributes ).every(\n\t\t\t\t\t\t\t\t\t( key ) =>\n\t\t\t\t\t\t\t\t\t\trootAttributes[ key ] ===\n\t\t\t\t\t\t\t\t\t\tpreviousRootAttributes[ key ]\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\tregistry.batch( () => {\n\t\t\t\t\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\t\t\t\t\tgetBlockOrder( nextRootClientId ),\n\t\t\t\t\t\t\t\t\t\tnextRootClientId,\n\t\t\t\t\t\t\t\t\t\trootClientId\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\tremoveBlock( nextRootClientId, false );\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tmergeBlocks( rootClientId, nextRootClientId );\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst nextBlockClientId = getNextBlockClientId( clientId );\n\n\t\t\t\tif ( ! nextBlockClientId ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( getBlockOrder( nextBlockClientId ).length ) {\n\t\t\t\t\tmoveFirstItemUp( nextBlockClientId, false );\n\t\t\t\t} else {\n\t\t\t\t\tmergeBlocks( clientId, nextBlockClientId );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst previousBlockClientId =\n\t\t\t\t\tgetPreviousBlockClientId( clientId );\n\n\t\t\t\tif ( previousBlockClientId ) {\n\t\t\t\t\tmergeBlocks( previousBlockClientId, clientId );\n\t\t\t\t} else if ( rootClientId ) {\n\t\t\t\t\tconst previousRootClientId =\n\t\t\t\t\t\tgetPreviousBlockClientId( rootClientId );\n\n\t\t\t\t\t// If there is a preceding block with the same parent block\n\t\t\t\t\t// name and the same attributes, merge the inner blocks.\n\t\t\t\t\tif (\n\t\t\t\t\t\tpreviousRootClientId &&\n\t\t\t\t\t\tgetBlockName( rootClientId ) ===\n\t\t\t\t\t\t\tgetBlockName( previousRootClientId )\n\t\t\t\t\t) {\n\t\t\t\t\t\tconst rootAttributes =\n\t\t\t\t\t\t\tgetBlockAttributes( rootClientId );\n\t\t\t\t\t\tconst previousRootAttributes =\n\t\t\t\t\t\t\tgetBlockAttributes( previousRootClientId );\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tObject.keys( rootAttributes ).every(\n\t\t\t\t\t\t\t\t( key ) =>\n\t\t\t\t\t\t\t\t\trootAttributes[ key ] ===\n\t\t\t\t\t\t\t\t\tpreviousRootAttributes[ key ]\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tregistry.batch( () => {\n\t\t\t\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\t\t\t\tgetBlockOrder( rootClientId ),\n\t\t\t\t\t\t\t\t\trootClientId,\n\t\t\t\t\t\t\t\t\tpreviousRootClientId\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tremoveBlock( rootClientId, false );\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tmoveFirstItemUp( rootClientId );\n\t\t\t\t} else {\n\t\t\t\t\tswitchToDefaultOrRemove();\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tonReplace( blocks, indexToSelect, initialPosition ) {\n\t\t\tif (\n\t\t\t\tblocks.length &&\n\t\t\t\t! isUnmodifiedDefaultBlock( blocks[ blocks.length - 1 ] )\n\t\t\t) {\n\t\t\t\t__unstableMarkLastChangeAsPersistent();\n\t\t\t}\n\t\t\t//Unsynced patterns are nested in an array so we need to flatten them.\n\t\t\tconst replacementBlocks =\n\t\t\t\tblocks?.length === 1 && Array.isArray( blocks[ 0 ] )\n\t\t\t\t\t? blocks[ 0 ]\n\t\t\t\t\t: blocks;\n\t\t\treplaceBlocks(\n\t\t\t\t[ ownProps.clientId ],\n\t\t\t\treplacementBlocks,\n\t\t\t\tindexToSelect,\n\t\t\t\tinitialPosition\n\t\t\t);\n\t\t},\n\t\ttoggleSelection( selectionEnabled ) {\n\t\t\ttoggleSelection( selectionEnabled );\n\t\t},\n\t};\n} );\n\n// This component is used by the BlockListBlockProvider component below. It will\n// add the props necessary for the `editor.BlockListBlock` filters.\nBlockListBlock = compose(\n\tapplyWithDispatch,\n\twithFilters( 'editor.BlockListBlock' )\n)( BlockListBlock );\n\n// This component provides all the information we need through a single store\n// subscription (useSelect mapping). Only the necessary props are passed down\n// to the BlockListBlock component, which is a filtered component, so these\n// props are public API. To avoid adding to the public API, we use a private\n// context to pass the rest of the information to the filtered BlockListBlock\n// component, and useBlockProps.\nfunction BlockListBlockProvider( props ) {\n\tconst { clientId, rootClientId } = props;\n\tconst selectedProps = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tisBlockSelected,\n\t\t\t\tgetBlockMode,\n\t\t\t\tisSelectionEnabled,\n\t\t\t\tgetTemplateLock,\n\t\t\t\tisSectionBlock: _isSectionBlock,\n\t\t\t\tgetBlockWithoutAttributes,\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tcanRemoveBlock,\n\t\t\t\tcanMoveBlock,\n\n\t\t\t\tgetSettings,\n\t\t\t\tgetTemporarilyEditingAsBlocks,\n\t\t\t\tgetBlockEditingMode,\n\t\t\t\tgetBlockName,\n\t\t\t\tisFirstMultiSelectedBlock,\n\t\t\t\tgetMultiSelectedBlockClientIds,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetBlocksByName,\n\n\t\t\t\tgetBlockIndex,\n\t\t\t\tisBlockMultiSelected,\n\t\t\t\tisBlockSubtreeDisabled,\n\t\t\t\tisBlockHighlighted,\n\t\t\t\t__unstableIsFullySelected,\n\t\t\t\t__unstableSelectionHasUnmergeableBlock,\n\t\t\t\tisBlockBeingDragged,\n\t\t\t\tisDragging,\n\t\t\t\t__unstableHasActiveBlockOverlayActive,\n\t\t\t\tgetSelectedBlocksInitialCaretPosition,\n\t\t\t} = unlock( select( blockEditorStore ) );\n\t\t\tconst blockWithoutAttributes =\n\t\t\t\tgetBlockWithoutAttributes( clientId );\n\n\t\t\t// This is a temporary fix.\n\t\t\t// This function should never be called when a block is not\n\t\t\t// present in the state. It happens now because the order in\n\t\t\t// withSelect rendering is not correct.\n\t\t\tif ( ! blockWithoutAttributes ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst {\n\t\t\t\thasBlockSupport: _hasBlockSupport,\n\t\t\t\tgetActiveBlockVariation,\n\t\t\t} = select( blocksStore );\n\t\t\tconst attributes = getBlockAttributes( clientId );\n\t\t\tconst { name: blockName, isValid } = blockWithoutAttributes;\n\t\t\tconst blockType = getBlockType( blockName );\n\t\t\tconst { supportsLayout, isPreviewMode } = getSettings();\n\t\t\tconst hasLightBlockWrapper = blockType?.apiVersion > 1;\n\t\t\tconst previewContext = {\n\t\t\t\tisPreviewMode,\n\t\t\t\tblockWithoutAttributes,\n\t\t\t\tname: blockName,\n\t\t\t\tattributes,\n\t\t\t\tisValid,\n\t\t\t\tthemeSupportsLayout: supportsLayout,\n\t\t\t\tindex: getBlockIndex( clientId ),\n\t\t\t\tisReusable: isReusableBlock( blockType ),\n\t\t\t\tclassName: hasLightBlockWrapper\n\t\t\t\t\t? attributes.className\n\t\t\t\t\t: undefined,\n\t\t\t\tdefaultClassName: hasLightBlockWrapper\n\t\t\t\t\t? getBlockDefaultClassName( blockName )\n\t\t\t\t\t: undefined,\n\t\t\t\tblockTitle: blockType?.title,\n\t\t\t};\n\n\t\t\t// When in preview mode, we can avoid a lot of selection and\n\t\t\t// editing related selectors.\n\t\t\tif ( isPreviewMode ) {\n\t\t\t\treturn previewContext;\n\t\t\t}\n\n\t\t\tconst _isSelected = isBlockSelected( clientId );\n\t\t\tconst canRemove = canRemoveBlock( clientId );\n\t\t\tconst canMove = canMoveBlock( clientId );\n\t\t\tconst match = getActiveBlockVariation( blockName, attributes );\n\t\t\tconst isMultiSelected = isBlockMultiSelected( clientId );\n\t\t\tconst checkDeep = true;\n\t\t\tconst isAncestorOfSelectedBlock = hasSelectedInnerBlock(\n\t\t\t\tclientId,\n\t\t\t\tcheckDeep\n\t\t\t);\n\t\t\tconst blockEditingMode = getBlockEditingMode( clientId );\n\n\t\t\tconst multiple = hasBlockSupport( blockName, 'multiple', true );\n\n\t\t\t// For block types with `multiple` support, there is no \"original\n\t\t\t// block\" to be found in the content, as the block itself is valid.\n\t\t\tconst blocksWithSameName = multiple\n\t\t\t\t? []\n\t\t\t\t: getBlocksByName( blockName );\n\t\t\tconst isInvalid =\n\t\t\t\tblocksWithSameName.length &&\n\t\t\t\tblocksWithSameName[ 0 ] !== clientId;\n\n\t\t\treturn {\n\t\t\t\t...previewContext,\n\t\t\t\tmode: getBlockMode( clientId ),\n\t\t\t\tisSelectionEnabled: isSelectionEnabled(),\n\t\t\t\tisLocked: !! getTemplateLock( rootClientId ),\n\t\t\t\tisSectionBlock: _isSectionBlock( clientId ),\n\t\t\t\tcanRemove,\n\t\t\t\tcanMove,\n\t\t\t\tisSelected: _isSelected,\n\t\t\t\tisTemporarilyEditingAsBlocks:\n\t\t\t\t\tgetTemporarilyEditingAsBlocks() === clientId,\n\t\t\t\tblockEditingMode,\n\t\t\t\tmayDisplayControls:\n\t\t\t\t\t_isSelected ||\n\t\t\t\t\t( isFirstMultiSelectedBlock( clientId ) &&\n\t\t\t\t\t\tgetMultiSelectedBlockClientIds().every(\n\t\t\t\t\t\t\t( id ) => getBlockName( id ) === blockName\n\t\t\t\t\t\t) ),\n\t\t\t\tmayDisplayParentControls:\n\t\t\t\t\t_hasBlockSupport(\n\t\t\t\t\t\tgetBlockName( clientId ),\n\t\t\t\t\t\t'__experimentalExposeControlsToChildren',\n\t\t\t\t\t\tfalse\n\t\t\t\t\t) && hasSelectedInnerBlock( clientId ),\n\t\t\t\tblockApiVersion: blockType?.apiVersion || 1,\n\t\t\t\tblockTitle: match?.title || blockType?.title,\n\t\t\t\tisSubtreeDisabled:\n\t\t\t\t\tblockEditingMode === 'disabled' &&\n\t\t\t\t\tisBlockSubtreeDisabled( clientId ),\n\t\t\t\thasOverlay:\n\t\t\t\t\t__unstableHasActiveBlockOverlayActive( clientId ) &&\n\t\t\t\t\t! isDragging(),\n\t\t\t\tinitialPosition: _isSelected\n\t\t\t\t\t? getSelectedBlocksInitialCaretPosition()\n\t\t\t\t\t: undefined,\n\t\t\t\tisHighlighted: isBlockHighlighted( clientId ),\n\t\t\t\tisMultiSelected,\n\t\t\t\tisPartiallySelected:\n\t\t\t\t\tisMultiSelected &&\n\t\t\t\t\t! __unstableIsFullySelected() &&\n\t\t\t\t\t! __unstableSelectionHasUnmergeableBlock(),\n\t\t\t\tisDragging: isBlockBeingDragged( clientId ),\n\t\t\t\thasChildSelected: isAncestorOfSelectedBlock,\n\t\t\t\tisEditingDisabled: blockEditingMode === 'disabled',\n\t\t\t\thasEditableOutline:\n\t\t\t\t\tblockEditingMode !== 'disabled' &&\n\t\t\t\t\tgetBlockEditingMode( rootClientId ) === 'disabled',\n\t\t\t\toriginalBlockClientId: isInvalid\n\t\t\t\t\t? blocksWithSameName[ 0 ]\n\t\t\t\t\t: false,\n\t\t\t};\n\t\t},\n\t\t[ clientId, rootClientId ]\n\t);\n\n\tconst {\n\t\tisPreviewMode,\n\t\t// Fill values that end up as a public API and may not be defined in\n\t\t// preview mode.\n\t\tmode = 'visual',\n\t\tisSelectionEnabled = false,\n\t\tisLocked = false,\n\t\tcanRemove = false,\n\t\tcanMove = false,\n\t\tblockWithoutAttributes,\n\t\tname,\n\t\tattributes,\n\t\tisValid,\n\t\tisSelected = false,\n\t\tthemeSupportsLayout,\n\t\tisTemporarilyEditingAsBlocks,\n\t\tblockEditingMode,\n\t\tmayDisplayControls,\n\t\tmayDisplayParentControls,\n\t\tindex,\n\t\tblockApiVersion,\n\t\tblockTitle,\n\t\tisSubtreeDisabled,\n\t\thasOverlay,\n\t\tinitialPosition,\n\t\tisHighlighted,\n\t\tisMultiSelected,\n\t\tisPartiallySelected,\n\t\tisReusable,\n\t\tisDragging,\n\t\thasChildSelected,\n\t\tisSectionBlock,\n\t\tisEditingDisabled,\n\t\thasEditableOutline,\n\t\tclassName,\n\t\tdefaultClassName,\n\t\toriginalBlockClientId,\n\t} = selectedProps;\n\n\t// Users of the editor.BlockListBlock filter used to be able to\n\t// access the block prop.\n\t// Ideally these blocks would rely on the clientId prop only.\n\t// This is kept for backward compatibility reasons.\n\tconst block = useMemo(\n\t\t() => ( { ...blockWithoutAttributes, attributes } ),\n\t\t[ blockWithoutAttributes, attributes ]\n\t);\n\n\t// Block is sometimes not mounted at the right time, causing it be\n\t// undefined see issue for more info\n\t// https://github.com/WordPress/gutenberg/issues/17013\n\tif ( ! selectedProps ) {\n\t\treturn null;\n\t}\n\n\tconst privateContext = {\n\t\tisPreviewMode,\n\t\tclientId,\n\t\tclassName,\n\t\tindex,\n\t\tmode,\n\t\tname,\n\t\tblockApiVersion,\n\t\tblockTitle,\n\t\tisSelected,\n\t\tisSubtreeDisabled,\n\t\thasOverlay,\n\t\tinitialPosition,\n\t\tblockEditingMode,\n\t\tisHighlighted,\n\t\tisMultiSelected,\n\t\tisPartiallySelected,\n\t\tisReusable,\n\t\tisDragging,\n\t\thasChildSelected,\n\t\tisSectionBlock,\n\t\tisEditingDisabled,\n\t\thasEditableOutline,\n\t\tisTemporarilyEditingAsBlocks,\n\t\tdefaultClassName,\n\t\tmayDisplayControls,\n\t\tmayDisplayParentControls,\n\t\toriginalBlockClientId,\n\t\tthemeSupportsLayout,\n\t};\n\n\t// Here we separate between the props passed to BlockListBlock and any other\n\t// information we selected for internal use. BlockListBlock is a filtered\n\t// component and thus ALL the props are PUBLIC API.\n\n\t// Note that the context value doesn't have to be memoized in this case\n\t// because when it changes, this component will be re-rendered anyway, and\n\t// none of the consumers (BlockListBlock and useBlockProps) are memoized or\n\t// \"pure\". This is different from the public BlockEditContext, where\n\t// consumers might be memoized or \"pure\".\n\treturn (\n\t\t<PrivateBlockContext.Provider value={ privateContext }>\n\t\t\t<BlockListBlock\n\t\t\t\t{ ...props }\n\t\t\t\t// WARNING: all the following props are public API (through the\n\t\t\t\t// editor.BlockListBlock filter) and normally nothing new should\n\t\t\t\t// be added to it.\n\t\t\t\t{ ...{\n\t\t\t\t\tmode,\n\t\t\t\t\tisSelectionEnabled,\n\t\t\t\t\tisLocked,\n\t\t\t\t\tcanRemove,\n\t\t\t\t\tcanMove,\n\t\t\t\t\t// Users of the editor.BlockListBlock filter used to be able\n\t\t\t\t\t// to access the block prop. Ideally these blocks would rely\n\t\t\t\t\t// on the clientId prop only. This is kept for backward\n\t\t\t\t\t// compatibility reasons.\n\t\t\t\t\tblock,\n\t\t\t\t\tname,\n\t\t\t\t\tattributes,\n\t\t\t\t\tisValid,\n\t\t\t\t\tisSelected,\n\t\t\t\t} }\n\t\t\t/>\n\t\t</PrivateBlockContext.Provider>\n\t);\n}\n\nexport default memo( BlockListBlockProvider );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -28,8 +28,7 @@ import { unlock } from '../../lock-unlock';
|
|
|
28
28
|
import BlockCrashBoundary from './block-crash-boundary';
|
|
29
29
|
import BlockCrashWarning from './block-crash-warning';
|
|
30
30
|
import { getMergedGlobalStyles, GlobalStylesContext, useGlobalStyles, useMobileGlobalStylesColors } from '../global-styles/use-global-styles-context';
|
|
31
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
32
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
31
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
33
32
|
const EMPTY_ARRAY = [];
|
|
34
33
|
|
|
35
34
|
/**
|
|
@@ -244,7 +243,6 @@ function BlockListBlock({
|
|
|
244
243
|
// Inherited styles merged with block level styles.
|
|
245
244
|
const mergedStyle = useMemo(() => {
|
|
246
245
|
return getMergedGlobalStyles(baseGlobalStyles, globalStyle, wrapperProps?.style, attributes, defaultColors, name, fontSizes || EMPTY_ARRAY);
|
|
247
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
248
246
|
}, [
|
|
249
247
|
// It is crucial to keep the dependencies array minimal to prevent unnecessary calls that could negatively impact performance.
|
|
250
248
|
// JSON.stringify is used for the following purposes:
|
|
@@ -253,12 +251,7 @@ function BlockListBlock({
|
|
|
253
251
|
// 2. To filter the attributes object, ensuring that only the relevant attributes (included in
|
|
254
252
|
// GlobalStylesContext.BLOCK_STYLE_ATTRIBUTES) are considered as dependencies. This reduces the likelihood of
|
|
255
253
|
// unnecessary useMemo calls when other, unrelated attributes change.
|
|
256
|
-
|
|
257
|
-
JSON.stringify(globalStyle),
|
|
258
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
259
|
-
JSON.stringify(wrapperProps?.style),
|
|
260
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
261
|
-
JSON.stringify(Object.fromEntries(Object.entries(attributes !== null && attributes !== void 0 ? attributes : {}).filter(([key]) => GlobalStylesContext.BLOCK_STYLE_ATTRIBUTES.includes(key))))]);
|
|
254
|
+
JSON.stringify(globalStyle), JSON.stringify(wrapperProps?.style), JSON.stringify(Object.fromEntries(Object.entries(attributes !== null && attributes !== void 0 ? attributes : {}).filter(([key]) => GlobalStylesContext.BLOCK_STYLE_ATTRIBUTES.includes(key))))]);
|
|
262
255
|
const isFocused = isSelected || isDescendentBlockSelected;
|
|
263
256
|
const isTouchable = isSelected || isDescendantOfParentSelected || isParentSelected || !rootClientId;
|
|
264
257
|
const accessibilityLabel = getAccessibleBlockLabel(blockType, attributes, order + 1);
|