@wordpress/block-editor 15.23.0 → 16.0.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 +33 -0
- package/build/autocompleters/block.cjs +10 -2
- package/build/autocompleters/block.cjs.map +2 -2
- package/build/components/background-image-control/index.cjs +0 -2
- package/build/components/background-image-control/index.cjs.map +2 -2
- package/build/components/block-canvas/index.cjs +6 -1
- package/build/components/block-canvas/index.cjs.map +2 -2
- package/build/components/block-controls/groups.cjs +3 -1
- package/build/components/block-controls/groups.cjs.map +2 -2
- package/build/components/block-edit/edit.cjs +10 -18
- package/build/components/block-edit/edit.cjs.map +2 -2
- package/build/components/block-inspector/edit-contents.cjs +3 -0
- package/build/components/block-inspector/edit-contents.cjs.map +3 -3
- package/build/components/block-inspector/index.cjs +2 -3
- package/build/components/block-inspector/index.cjs.map +2 -2
- package/build/components/block-list/block-invalid-warning.cjs +8 -19
- package/build/components/block-list/block-invalid-warning.cjs.map +2 -2
- package/build/components/block-list/block.cjs +9 -3
- package/build/components/block-list/block.cjs.map +3 -3
- package/build/components/block-list/index.cjs +1 -3
- package/build/components/block-list/index.cjs.map +2 -2
- package/build/components/block-list/use-block-props/index.cjs +3 -1
- package/build/components/block-list/use-block-props/index.cjs.map +2 -2
- package/build/components/block-list/use-block-props/use-focus-first-element.cjs +9 -4
- package/build/components/block-list/use-block-props/use-focus-first-element.cjs.map +2 -2
- package/build/components/block-list/use-block-props/use-focus-handler.cjs +12 -4
- package/build/components/block-list/use-block-props/use-focus-handler.cjs.map +2 -2
- package/build/components/block-styles/use-styles-for-block.cjs +2 -1
- package/build/components/block-styles/use-styles-for-block.cjs.map +2 -2
- package/build/components/block-title/use-block-display-title.cjs +7 -2
- package/build/components/block-title/use-block-display-title.cjs.map +2 -2
- package/build/components/block-toolbar/block-toolbar-icon.cjs +10 -14
- package/build/components/block-toolbar/block-toolbar-icon.cjs.map +2 -2
- package/build/components/block-toolbar/index.cjs +43 -24
- package/build/components/block-toolbar/index.cjs.map +2 -2
- package/build/components/block-tools/index.cjs +7 -2
- package/build/components/block-tools/index.cjs.map +2 -2
- package/build/components/block-variation-transforms/index.cjs +0 -1
- package/build/components/block-variation-transforms/index.cjs.map +2 -2
- package/build/components/block-visibility/modal.cjs +20 -6
- package/build/components/block-visibility/modal.cjs.map +2 -2
- package/build/components/block-visibility/use-block-visibility.cjs +16 -6
- package/build/components/block-visibility/use-block-visibility.cjs.map +3 -3
- package/build/components/block-visibility/utils.cjs +15 -2
- package/build/components/block-visibility/utils.cjs.map +3 -3
- package/build/components/block-visibility/viewport-menu-item.cjs +7 -1
- package/build/components/block-visibility/viewport-menu-item.cjs.map +2 -2
- package/build/components/block-visibility/viewport-toolbar.cjs +5 -0
- package/build/components/block-visibility/viewport-toolbar.cjs.map +2 -2
- package/build/components/block-visibility/viewport-visibility-info.cjs +5 -1
- package/build/components/block-visibility/viewport-visibility-info.cjs.map +2 -2
- package/build/components/child-layout-control/index.cjs +0 -6
- package/build/components/child-layout-control/index.cjs.map +2 -2
- package/build/components/colors-gradients/control.cjs +5 -5
- package/build/components/colors-gradients/control.cjs.map +2 -2
- package/build/components/date-format-picker/index.cjs +0 -1
- package/build/components/date-format-picker/index.cjs.map +2 -2
- package/build/components/dimensions-tool/aspect-ratio-tool.cjs +1 -2
- package/build/components/dimensions-tool/aspect-ratio-tool.cjs.map +2 -2
- package/build/components/dimensions-tool/scale-tool.cjs +0 -1
- package/build/components/dimensions-tool/scale-tool.cjs.map +2 -2
- package/build/components/dimensions-tool/width-height-tool.cjs +2 -4
- package/build/components/dimensions-tool/width-height-tool.cjs.map +2 -2
- package/build/components/font-appearance-control/index.cjs +6 -25
- package/build/components/font-appearance-control/index.cjs.map +3 -3
- package/build/components/font-family/index.cjs +6 -15
- package/build/components/font-family/index.cjs.map +3 -3
- package/build/components/font-sizes/font-size-picker.cjs +1 -2
- package/build/components/font-sizes/font-size-picker.cjs.map +2 -2
- package/build/components/global-styles/border-panel.cjs +0 -1
- package/build/components/global-styles/border-panel.cjs.map +2 -2
- package/build/components/global-styles/dimensions-panel.cjs +0 -3
- package/build/components/global-styles/dimensions-panel.cjs.map +2 -2
- package/build/components/global-styles/state-control-badges.cjs +39 -3
- package/build/components/global-styles/state-control-badges.cjs.map +2 -2
- package/build/components/global-styles/typography-panel.cjs +4 -11
- package/build/components/global-styles/typography-panel.cjs.map +2 -2
- package/build/components/height-control/index.cjs +0 -2
- package/build/components/height-control/index.cjs.map +2 -2
- package/build/components/html-element-control/index.cjs +0 -1
- package/build/components/html-element-control/index.cjs.map +2 -2
- package/build/components/image-editor/index.cjs +5 -0
- package/build/components/image-editor/index.cjs.map +3 -3
- package/build/components/image-editor/zoom-dropdown.cjs +0 -1
- package/build/components/image-editor/zoom-dropdown.cjs.map +2 -2
- package/build/components/image-size-control/index.cjs +3 -7
- package/build/components/image-size-control/index.cjs.map +2 -2
- package/build/components/inner-content/index.cjs +107 -0
- package/build/components/inner-content/index.cjs.map +7 -0
- package/build/components/inserter/hooks/use-block-types-state.cjs +10 -2
- package/build/components/inserter/hooks/use-block-types-state.cjs.map +2 -2
- package/build/components/inserter/media-tab/hooks.cjs +67 -12
- package/build/components/inserter/media-tab/hooks.cjs.map +2 -2
- package/build/components/inserter/media-tab/media-list.cjs +3 -1
- package/build/components/inserter/media-tab/media-list.cjs.map +2 -2
- package/build/components/inserter/media-tab/media-panel.cjs +287 -28
- package/build/components/inserter/media-tab/media-panel.cjs.map +3 -3
- package/build/components/inserter/media-tab/media-preview.cjs +32 -17
- package/build/components/inserter/media-tab/media-preview.cjs.map +2 -2
- package/build/components/inserter/media-tab/media-tab.cjs +26 -6
- package/build/components/inserter/media-tab/media-tab.cjs.map +2 -2
- package/build/components/inserter/mobile-tab-navigation.cjs +6 -1
- package/build/components/inserter/mobile-tab-navigation.cjs.map +2 -2
- package/build/components/inserter/no-results.cjs +2 -2
- package/build/components/inserter/no-results.cjs.map +2 -2
- package/build/components/inserter/preview-panel.cjs +2 -1
- package/build/components/inserter/preview-panel.cjs.map +2 -2
- package/build/components/inserter-list-item/index.cjs +8 -2
- package/build/components/inserter-list-item/index.cjs.map +2 -2
- package/build/components/keyboard-shortcuts/index.cjs +19 -11
- package/build/components/keyboard-shortcuts/index.cjs.map +2 -2
- package/build/components/letter-spacing-control/index.cjs +0 -24
- package/build/components/letter-spacing-control/index.cjs.map +3 -3
- package/build/components/line-height-control/index.cjs +6 -22
- package/build/components/line-height-control/index.cjs.map +3 -3
- package/build/components/list-view/block-select-button.cjs +90 -84
- package/build/components/list-view/block-select-button.cjs.map +2 -2
- package/build/components/list-view/block.cjs +61 -21
- package/build/components/list-view/block.cjs.map +2 -2
- package/build/components/list-view/expander.cjs +1 -1
- package/build/components/list-view/expander.cjs.map +2 -2
- package/build/components/list-view/use-list-view-client-ids.cjs +2 -2
- package/build/components/list-view/use-list-view-client-ids.cjs.map +2 -2
- package/build/components/media-placeholder/index.cjs +0 -1
- package/build/components/media-placeholder/index.cjs.map +2 -2
- package/build/components/observe-typing/index.cjs +4 -3
- package/build/components/observe-typing/index.cjs.map +2 -2
- package/build/components/preset-input-control/custom-value-controls.cjs +1 -3
- package/build/components/preset-input-control/custom-value-controls.cjs.map +2 -2
- package/build/components/preset-input-control/index.cjs +1 -3
- package/build/components/preset-input-control/index.cjs.map +2 -2
- package/build/components/resolution-tool/index.cjs +1 -2
- package/build/components/resolution-tool/index.cjs.map +2 -2
- package/build/components/rich-text/event-listeners/before-input-rules.cjs +3 -4
- package/build/components/rich-text/event-listeners/before-input-rules.cjs.map +3 -3
- package/build/components/rich-text/event-listeners/delete.cjs +2 -3
- package/build/components/rich-text/event-listeners/delete.cjs.map +3 -3
- package/build/components/rich-text/event-listeners/enter.cjs +3 -2
- package/build/components/rich-text/event-listeners/enter.cjs.map +3 -3
- package/build/components/rich-text/event-listeners/input-events.cjs +3 -3
- package/build/components/rich-text/event-listeners/input-events.cjs.map +3 -3
- package/build/components/rich-text/event-listeners/input-rules.cjs +3 -4
- package/build/components/rich-text/event-listeners/input-rules.cjs.map +3 -3
- package/build/components/rich-text/event-listeners/insert-replacement-text.cjs +3 -3
- package/build/components/rich-text/event-listeners/insert-replacement-text.cjs.map +3 -3
- package/build/components/rich-text/event-listeners/paste-handler.cjs +2 -1
- package/build/components/rich-text/event-listeners/paste-handler.cjs.map +3 -3
- package/build/components/rich-text/event-listeners/remove-browser-shortcuts.cjs +3 -3
- package/build/components/rich-text/event-listeners/remove-browser-shortcuts.cjs.map +3 -3
- package/build/components/rich-text/event-listeners/shortcuts.cjs +3 -3
- package/build/components/rich-text/event-listeners/shortcuts.cjs.map +3 -3
- package/build/components/rich-text/event-listeners/undo-automatic-change.cjs +3 -3
- package/build/components/rich-text/event-listeners/undo-automatic-change.cjs.map +3 -3
- package/build/components/rich-text/index.cjs +66 -17
- package/build/components/rich-text/index.cjs.map +2 -2
- package/build/components/text-alignment-control/index.cjs +0 -1
- package/build/components/text-alignment-control/index.cjs.map +2 -2
- package/build/components/text-decoration-control/index.cjs +0 -1
- package/build/components/text-decoration-control/index.cjs.map +2 -2
- package/build/components/text-indent-control/index.cjs +0 -8
- package/build/components/text-indent-control/index.cjs.map +2 -2
- package/build/components/text-transform-control/index.cjs +0 -1
- package/build/components/text-transform-control/index.cjs.map +2 -2
- package/build/components/typewriter/index.cjs +129 -136
- package/build/components/typewriter/index.cjs.map +3 -3
- package/build/components/use-block-commands/index.cjs +21 -17
- package/build/components/use-block-commands/index.cjs.map +2 -2
- package/build/components/use-block-display-information/index.cjs +10 -8
- package/build/components/use-block-display-information/index.cjs.map +2 -2
- package/build/components/use-on-block-drop/index.cjs +3 -7
- package/build/components/use-on-block-drop/index.cjs.map +2 -2
- package/build/components/writing-flow/index.cjs +12 -1
- package/build/components/writing-flow/index.cjs.map +3 -3
- package/build/components/writing-flow/use-arrow-nav.cjs +18 -5
- package/build/components/writing-flow/use-arrow-nav.cjs.map +2 -2
- package/build/components/writing-flow/use-click-selection.cjs +2 -2
- package/build/components/writing-flow/use-click-selection.cjs.map +2 -2
- package/build/components/writing-flow/use-clipboard-handler.cjs +4 -1
- package/build/components/writing-flow/use-clipboard-handler.cjs.map +2 -2
- package/build/components/writing-flow/use-drag-selection.cjs +3 -8
- package/build/components/writing-flow/use-drag-selection.cjs.map +2 -2
- package/build/components/writing-flow/use-editable-root.cjs +112 -0
- package/build/components/writing-flow/use-editable-root.cjs.map +7 -0
- package/build/components/writing-flow/use-home-end.cjs +64 -0
- package/build/components/writing-flow/use-home-end.cjs.map +7 -0
- package/build/components/writing-flow/use-input.cjs +15 -5
- package/build/components/writing-flow/use-input.cjs.map +2 -2
- package/build/components/writing-flow/use-multi-selection.cjs +2 -2
- package/build/components/writing-flow/use-multi-selection.cjs.map +2 -2
- package/build/components/writing-flow/use-select-all.cjs +14 -2
- package/build/components/writing-flow/use-select-all.cjs.map +2 -2
- package/build/components/writing-flow/use-selection-observer.cjs +126 -20
- package/build/components/writing-flow/use-selection-observer.cjs.map +3 -3
- package/build/components/writing-flow/utils.cjs +39 -2
- package/build/components/writing-flow/utils.cjs.map +2 -2
- package/build/components/writing-mode-control/index.cjs +0 -1
- package/build/components/writing-mode-control/index.cjs.map +2 -2
- package/build/hooks/background.cjs +3 -2
- package/build/hooks/background.cjs.map +2 -2
- package/build/hooks/block-fields/rich-text/index.cjs +2 -3
- package/build/hooks/block-fields/rich-text/index.cjs.map +3 -3
- package/build/hooks/elements.cjs +1 -1
- package/build/hooks/elements.cjs.map +2 -2
- package/build/hooks/font-size.cjs +1 -2
- package/build/hooks/font-size.cjs.map +2 -2
- package/build/hooks/grid-visualizer.cjs +5 -3
- package/build/hooks/grid-visualizer.cjs.map +2 -2
- package/build/hooks/layout-child.cjs +22 -12
- package/build/hooks/layout-child.cjs.map +3 -3
- package/build/hooks/layout.cjs +33 -16
- package/build/hooks/layout.cjs.map +3 -3
- package/build/hooks/position.cjs +36 -16
- package/build/hooks/position.cjs.map +2 -2
- package/build/hooks/states.cjs +29 -12
- package/build/hooks/states.cjs.map +3 -3
- package/build/hooks/style.cjs +31 -9
- package/build/hooks/style.cjs.map +3 -3
- package/build/hooks/text-align.cjs +36 -6
- package/build/hooks/text-align.cjs.map +3 -3
- package/build/hooks/typography.cjs +1 -1
- package/build/hooks/typography.cjs.map +2 -2
- package/build/layouts/constrained.cjs +35 -27
- package/build/layouts/constrained.cjs.map +2 -2
- package/build/layouts/flex.cjs +27 -22
- package/build/layouts/flex.cjs.map +2 -2
- package/build/layouts/grid.cjs +51 -11
- package/build/layouts/grid.cjs.map +2 -2
- package/build/private-apis.cjs +4 -1
- package/build/private-apis.cjs.map +3 -3
- package/build/store/actions.cjs +2 -2
- package/build/store/actions.cjs.map +2 -2
- package/build/store/private-keys.cjs +3 -0
- package/build/store/private-keys.cjs.map +2 -2
- package/build/store/private-selectors.cjs +85 -6
- package/build/store/private-selectors.cjs.map +3 -3
- package/build/store/selectors.cjs +13 -0
- package/build/store/selectors.cjs.map +2 -2
- package/build/utils/block-bindings.cjs +29 -0
- package/build/utils/block-bindings.cjs.map +2 -2
- package/build/utils/dom.cjs +14 -0
- package/build/utils/dom.cjs.map +2 -2
- package/build-module/autocompleters/block.mjs +10 -2
- package/build-module/autocompleters/block.mjs.map +2 -2
- package/build-module/components/background-image-control/index.mjs +0 -2
- package/build-module/components/background-image-control/index.mjs.map +2 -2
- package/build-module/components/block-canvas/index.mjs +7 -2
- package/build-module/components/block-canvas/index.mjs.map +2 -2
- package/build-module/components/block-controls/groups.mjs +3 -1
- package/build-module/components/block-controls/groups.mjs.map +2 -2
- package/build-module/components/block-edit/edit.mjs +11 -18
- package/build-module/components/block-edit/edit.mjs.map +2 -2
- package/build-module/components/block-inspector/edit-contents.mjs +4 -1
- package/build-module/components/block-inspector/edit-contents.mjs.map +2 -2
- package/build-module/components/block-inspector/index.mjs +2 -3
- package/build-module/components/block-inspector/index.mjs.map +2 -2
- package/build-module/components/block-list/block-invalid-warning.mjs +8 -19
- package/build-module/components/block-list/block-invalid-warning.mjs.map +2 -2
- package/build-module/components/block-list/block.mjs +9 -3
- package/build-module/components/block-list/block.mjs.map +3 -3
- package/build-module/components/block-list/index.mjs +1 -3
- package/build-module/components/block-list/index.mjs.map +2 -2
- package/build-module/components/block-list/use-block-props/index.mjs +3 -1
- package/build-module/components/block-list/use-block-props/index.mjs.map +2 -2
- package/build-module/components/block-list/use-block-props/use-focus-first-element.mjs +9 -4
- package/build-module/components/block-list/use-block-props/use-focus-first-element.mjs.map +2 -2
- package/build-module/components/block-list/use-block-props/use-focus-handler.mjs +12 -4
- package/build-module/components/block-list/use-block-props/use-focus-handler.mjs.map +2 -2
- package/build-module/components/block-styles/use-styles-for-block.mjs +2 -1
- package/build-module/components/block-styles/use-styles-for-block.mjs.map +2 -2
- package/build-module/components/block-title/use-block-display-title.mjs +7 -2
- package/build-module/components/block-title/use-block-display-title.mjs.map +2 -2
- package/build-module/components/block-toolbar/block-toolbar-icon.mjs +10 -14
- package/build-module/components/block-toolbar/block-toolbar-icon.mjs.map +2 -2
- package/build-module/components/block-toolbar/index.mjs +43 -24
- package/build-module/components/block-toolbar/index.mjs.map +2 -2
- package/build-module/components/block-tools/index.mjs +7 -2
- package/build-module/components/block-tools/index.mjs.map +2 -2
- package/build-module/components/block-variation-transforms/index.mjs +0 -1
- package/build-module/components/block-variation-transforms/index.mjs.map +2 -2
- package/build-module/components/block-visibility/modal.mjs +22 -10
- package/build-module/components/block-visibility/modal.mjs.map +2 -2
- package/build-module/components/block-visibility/use-block-visibility.mjs +17 -7
- package/build-module/components/block-visibility/use-block-visibility.mjs.map +2 -2
- package/build-module/components/block-visibility/utils.mjs +18 -3
- package/build-module/components/block-visibility/utils.mjs.map +2 -2
- package/build-module/components/block-visibility/viewport-menu-item.mjs +7 -1
- package/build-module/components/block-visibility/viewport-menu-item.mjs.map +2 -2
- package/build-module/components/block-visibility/viewport-toolbar.mjs +5 -0
- package/build-module/components/block-visibility/viewport-toolbar.mjs.map +2 -2
- package/build-module/components/block-visibility/viewport-visibility-info.mjs +5 -1
- package/build-module/components/block-visibility/viewport-visibility-info.mjs.map +2 -2
- package/build-module/components/child-layout-control/index.mjs +0 -6
- package/build-module/components/child-layout-control/index.mjs.map +2 -2
- package/build-module/components/colors-gradients/control.mjs +5 -5
- package/build-module/components/colors-gradients/control.mjs.map +2 -2
- package/build-module/components/date-format-picker/index.mjs +0 -1
- package/build-module/components/date-format-picker/index.mjs.map +2 -2
- package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs +1 -2
- package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs.map +2 -2
- package/build-module/components/dimensions-tool/scale-tool.mjs +0 -1
- package/build-module/components/dimensions-tool/scale-tool.mjs.map +2 -2
- package/build-module/components/dimensions-tool/width-height-tool.mjs +2 -4
- package/build-module/components/dimensions-tool/width-height-tool.mjs.map +2 -2
- package/build-module/components/font-appearance-control/index.mjs +6 -15
- package/build-module/components/font-appearance-control/index.mjs.map +2 -2
- package/build-module/components/font-family/index.mjs +6 -15
- package/build-module/components/font-family/index.mjs.map +2 -2
- package/build-module/components/font-sizes/font-size-picker.mjs +1 -2
- package/build-module/components/font-sizes/font-size-picker.mjs.map +2 -2
- package/build-module/components/global-styles/border-panel.mjs +0 -1
- package/build-module/components/global-styles/border-panel.mjs.map +2 -2
- package/build-module/components/global-styles/dimensions-panel.mjs +0 -3
- package/build-module/components/global-styles/dimensions-panel.mjs.map +2 -2
- package/build-module/components/global-styles/state-control-badges.mjs +41 -5
- package/build-module/components/global-styles/state-control-badges.mjs.map +2 -2
- package/build-module/components/global-styles/typography-panel.mjs +4 -11
- package/build-module/components/global-styles/typography-panel.mjs.map +2 -2
- package/build-module/components/height-control/index.mjs +0 -2
- package/build-module/components/height-control/index.mjs.map +2 -2
- package/build-module/components/html-element-control/index.mjs +0 -1
- package/build-module/components/html-element-control/index.mjs.map +2 -2
- package/build-module/components/image-editor/index.mjs +5 -0
- package/build-module/components/image-editor/index.mjs.map +2 -2
- package/build-module/components/image-editor/zoom-dropdown.mjs +0 -1
- package/build-module/components/image-editor/zoom-dropdown.mjs.map +2 -2
- package/build-module/components/image-size-control/index.mjs +3 -7
- package/build-module/components/image-size-control/index.mjs.map +2 -2
- package/build-module/components/inner-content/index.mjs +82 -0
- package/build-module/components/inner-content/index.mjs.map +7 -0
- package/build-module/components/inserter/hooks/use-block-types-state.mjs +10 -2
- package/build-module/components/inserter/hooks/use-block-types-state.mjs.map +2 -2
- package/build-module/components/inserter/media-tab/hooks.mjs +66 -12
- package/build-module/components/inserter/media-tab/hooks.mjs.map +2 -2
- package/build-module/components/inserter/media-tab/media-list.mjs +3 -1
- package/build-module/components/inserter/media-tab/media-list.mjs.map +2 -2
- package/build-module/components/inserter/media-tab/media-panel.mjs +297 -32
- package/build-module/components/inserter/media-tab/media-panel.mjs.map +2 -2
- package/build-module/components/inserter/media-tab/media-preview.mjs +33 -18
- package/build-module/components/inserter/media-tab/media-preview.mjs.map +2 -2
- package/build-module/components/inserter/media-tab/media-tab.mjs +27 -7
- package/build-module/components/inserter/media-tab/media-tab.mjs.map +2 -2
- package/build-module/components/inserter/mobile-tab-navigation.mjs +6 -1
- package/build-module/components/inserter/mobile-tab-navigation.mjs.map +2 -2
- package/build-module/components/inserter/no-results.mjs +2 -2
- package/build-module/components/inserter/no-results.mjs.map +2 -2
- package/build-module/components/inserter/preview-panel.mjs +2 -1
- package/build-module/components/inserter/preview-panel.mjs.map +2 -2
- package/build-module/components/inserter-list-item/index.mjs +8 -2
- package/build-module/components/inserter-list-item/index.mjs.map +2 -2
- package/build-module/components/keyboard-shortcuts/index.mjs +19 -11
- package/build-module/components/keyboard-shortcuts/index.mjs.map +2 -2
- package/build-module/components/letter-spacing-control/index.mjs +0 -14
- package/build-module/components/letter-spacing-control/index.mjs.map +2 -2
- package/build-module/components/line-height-control/index.mjs +6 -12
- package/build-module/components/line-height-control/index.mjs.map +2 -2
- package/build-module/components/list-view/block-select-button.mjs +90 -84
- package/build-module/components/list-view/block-select-button.mjs.map +2 -2
- package/build-module/components/list-view/block.mjs +61 -21
- package/build-module/components/list-view/block.mjs.map +2 -2
- package/build-module/components/list-view/expander.mjs +1 -1
- package/build-module/components/list-view/expander.mjs.map +2 -2
- package/build-module/components/list-view/use-list-view-client-ids.mjs +2 -2
- package/build-module/components/list-view/use-list-view-client-ids.mjs.map +2 -2
- package/build-module/components/media-placeholder/index.mjs +0 -1
- package/build-module/components/media-placeholder/index.mjs.map +2 -2
- package/build-module/components/observe-typing/index.mjs +4 -3
- package/build-module/components/observe-typing/index.mjs.map +2 -2
- package/build-module/components/preset-input-control/custom-value-controls.mjs +1 -3
- package/build-module/components/preset-input-control/custom-value-controls.mjs.map +2 -2
- package/build-module/components/preset-input-control/index.mjs +1 -3
- package/build-module/components/preset-input-control/index.mjs.map +2 -2
- package/build-module/components/resolution-tool/index.mjs +1 -2
- package/build-module/components/resolution-tool/index.mjs.map +2 -2
- package/build-module/components/rich-text/event-listeners/before-input-rules.mjs +8 -5
- package/build-module/components/rich-text/event-listeners/before-input-rules.mjs.map +2 -2
- package/build-module/components/rich-text/event-listeners/delete.mjs +7 -4
- package/build-module/components/rich-text/event-listeners/delete.mjs.map +2 -2
- package/build-module/components/rich-text/event-listeners/enter.mjs +8 -3
- package/build-module/components/rich-text/event-listeners/enter.mjs.map +2 -2
- package/build-module/components/rich-text/event-listeners/input-events.mjs +3 -3
- package/build-module/components/rich-text/event-listeners/input-events.mjs.map +2 -2
- package/build-module/components/rich-text/event-listeners/input-rules.mjs +8 -5
- package/build-module/components/rich-text/event-listeners/input-rules.mjs.map +2 -2
- package/build-module/components/rich-text/event-listeners/insert-replacement-text.mjs +3 -3
- package/build-module/components/rich-text/event-listeners/insert-replacement-text.mjs.map +2 -2
- package/build-module/components/rich-text/event-listeners/paste-handler.mjs +8 -2
- package/build-module/components/rich-text/event-listeners/paste-handler.mjs.map +2 -2
- package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.mjs +3 -3
- package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.mjs.map +2 -2
- package/build-module/components/rich-text/event-listeners/shortcuts.mjs +3 -3
- package/build-module/components/rich-text/event-listeners/shortcuts.mjs.map +2 -2
- package/build-module/components/rich-text/event-listeners/undo-automatic-change.mjs +3 -3
- package/build-module/components/rich-text/event-listeners/undo-automatic-change.mjs.map +2 -2
- package/build-module/components/rich-text/index.mjs +64 -13
- package/build-module/components/rich-text/index.mjs.map +2 -2
- package/build-module/components/text-alignment-control/index.mjs +0 -1
- package/build-module/components/text-alignment-control/index.mjs.map +2 -2
- package/build-module/components/text-decoration-control/index.mjs +0 -1
- package/build-module/components/text-decoration-control/index.mjs.map +2 -2
- package/build-module/components/text-indent-control/index.mjs +0 -8
- package/build-module/components/text-indent-control/index.mjs.map +2 -2
- package/build-module/components/text-transform-control/index.mjs +0 -1
- package/build-module/components/text-transform-control/index.mjs.map +2 -2
- package/build-module/components/typewriter/index.mjs +129 -136
- package/build-module/components/typewriter/index.mjs.map +2 -2
- package/build-module/components/use-block-commands/index.mjs +21 -17
- package/build-module/components/use-block-commands/index.mjs.map +2 -2
- package/build-module/components/use-block-display-information/index.mjs +10 -8
- package/build-module/components/use-block-display-information/index.mjs.map +2 -2
- package/build-module/components/use-on-block-drop/index.mjs +4 -7
- package/build-module/components/use-on-block-drop/index.mjs.map +2 -2
- package/build-module/components/writing-flow/index.mjs +12 -1
- package/build-module/components/writing-flow/index.mjs.map +2 -2
- package/build-module/components/writing-flow/use-arrow-nav.mjs +19 -6
- package/build-module/components/writing-flow/use-arrow-nav.mjs.map +2 -2
- package/build-module/components/writing-flow/use-click-selection.mjs +2 -2
- package/build-module/components/writing-flow/use-click-selection.mjs.map +2 -2
- package/build-module/components/writing-flow/use-clipboard-handler.mjs +5 -2
- package/build-module/components/writing-flow/use-clipboard-handler.mjs.map +2 -2
- package/build-module/components/writing-flow/use-drag-selection.mjs +1 -6
- package/build-module/components/writing-flow/use-drag-selection.mjs.map +2 -2
- package/build-module/components/writing-flow/use-editable-root.mjs +86 -0
- package/build-module/components/writing-flow/use-editable-root.mjs.map +7 -0
- package/build-module/components/writing-flow/use-home-end.mjs +43 -0
- package/build-module/components/writing-flow/use-home-end.mjs.map +7 -0
- package/build-module/components/writing-flow/use-input.mjs +15 -5
- package/build-module/components/writing-flow/use-input.mjs.map +2 -2
- package/build-module/components/writing-flow/use-multi-selection.mjs +2 -2
- package/build-module/components/writing-flow/use-multi-selection.mjs.map +2 -2
- package/build-module/components/writing-flow/use-select-all.mjs +19 -3
- package/build-module/components/writing-flow/use-select-all.mjs.map +2 -2
- package/build-module/components/writing-flow/use-selection-observer.mjs +128 -19
- package/build-module/components/writing-flow/use-selection-observer.mjs.map +2 -2
- package/build-module/components/writing-flow/utils.mjs +35 -1
- package/build-module/components/writing-flow/utils.mjs.map +2 -2
- package/build-module/components/writing-mode-control/index.mjs +0 -1
- package/build-module/components/writing-mode-control/index.mjs.map +2 -2
- package/build-module/hooks/background.mjs +3 -2
- package/build-module/hooks/background.mjs.map +2 -2
- package/build-module/hooks/block-fields/rich-text/index.mjs +2 -6
- package/build-module/hooks/block-fields/rich-text/index.mjs.map +2 -2
- package/build-module/hooks/elements.mjs +1 -1
- package/build-module/hooks/elements.mjs.map +2 -2
- package/build-module/hooks/font-size.mjs +1 -2
- package/build-module/hooks/font-size.mjs.map +2 -2
- package/build-module/hooks/grid-visualizer.mjs +5 -3
- package/build-module/hooks/grid-visualizer.mjs.map +2 -2
- package/build-module/hooks/layout-child.mjs +22 -12
- package/build-module/hooks/layout-child.mjs.map +2 -2
- package/build-module/hooks/layout.mjs +32 -16
- package/build-module/hooks/layout.mjs.map +2 -2
- package/build-module/hooks/position.mjs +38 -18
- package/build-module/hooks/position.mjs.map +2 -2
- package/build-module/hooks/states.mjs +29 -12
- package/build-module/hooks/states.mjs.map +2 -2
- package/build-module/hooks/style.mjs +40 -11
- package/build-module/hooks/style.mjs.map +2 -2
- package/build-module/hooks/text-align.mjs +39 -10
- package/build-module/hooks/text-align.mjs.map +2 -2
- package/build-module/hooks/typography.mjs +1 -1
- package/build-module/hooks/typography.mjs.map +2 -2
- package/build-module/layouts/constrained.mjs +35 -27
- package/build-module/layouts/constrained.mjs.map +2 -2
- package/build-module/layouts/flex.mjs +27 -22
- package/build-module/layouts/flex.mjs.map +2 -2
- package/build-module/layouts/grid.mjs +52 -11
- package/build-module/layouts/grid.mjs.map +2 -2
- package/build-module/private-apis.mjs +5 -1
- package/build-module/private-apis.mjs.map +2 -2
- package/build-module/store/actions.mjs +3 -3
- package/build-module/store/actions.mjs.map +2 -2
- package/build-module/store/private-keys.mjs +2 -0
- package/build-module/store/private-keys.mjs.map +2 -2
- package/build-module/store/private-selectors.mjs +84 -6
- package/build-module/store/private-selectors.mjs.map +2 -2
- package/build-module/store/selectors.mjs +13 -0
- package/build-module/store/selectors.mjs.map +2 -2
- package/build-module/utils/block-bindings.mjs +28 -0
- package/build-module/utils/block-bindings.mjs.map +2 -2
- package/build-module/utils/dom.mjs +13 -0
- package/build-module/utils/dom.mjs.map +2 -2
- package/build-style/content-rtl.css +15 -14
- package/build-style/content.css +15 -14
- package/build-style/default-editor-styles-rtl.css +1 -1
- package/build-style/default-editor-styles.css +1 -1
- package/build-style/style-rtl.css +144 -47
- package/build-style/style.css +144 -47
- package/build-types/components/block-context/index.d.ts +7 -0
- package/build-types/components/block-context/index.d.ts.map +1 -1
- package/build-types/utils/block-bindings.d.ts +19 -0
- package/build-types/utils/block-bindings.d.ts.map +1 -1
- package/build-types/utils/dom.d.ts +11 -0
- package/build-types/utils/dom.d.ts.map +1 -1
- package/build-types/utils/get-px-from-css-unit.d.ts +2 -2
- package/build-types/utils/get-px-from-css-unit.d.ts.map +1 -1
- package/build-types/utils/pasting.d.ts +1 -1
- package/build-types/utils/pasting.d.ts.map +1 -1
- package/package.json +46 -44
- package/src/autocompleters/block.js +10 -3
- package/src/autocompleters/test/block.js +53 -0
- package/src/components/background-image-control/index.js +0 -2
- package/src/components/block-canvas/index.js +9 -2
- package/src/components/block-card/style.scss +1 -1
- package/src/components/block-controls/groups.js +2 -0
- package/src/components/block-edit/edit.js +13 -31
- package/src/components/block-inspector/edit-contents.js +5 -1
- package/src/components/block-inspector/index.js +3 -2
- package/src/components/block-list/block-invalid-warning.js +8 -19
- package/src/components/block-list/block.js +6 -0
- package/src/components/block-list/index.js +0 -2
- package/src/components/block-list/use-block-props/index.js +2 -0
- package/src/components/block-list/use-block-props/use-focus-first-element.js +23 -4
- package/src/components/block-list/use-block-props/use-focus-handler.js +34 -9
- package/src/components/block-lock/style.scss +1 -1
- package/src/components/block-manager/style.scss +1 -1
- package/src/components/block-navigation/style.scss +1 -1
- package/src/components/block-patterns-list/stories/index.story.jsx +1 -1
- package/src/components/block-quick-navigation/style.scss +1 -3
- package/src/components/block-styles/style.scss +2 -2
- package/src/components/block-styles/use-styles-for-block.js +1 -0
- package/src/components/block-title/use-block-display-title.js +7 -2
- package/src/components/block-toolbar/block-toolbar-icon.js +11 -16
- package/src/components/block-toolbar/index.js +41 -18
- package/src/components/block-toolbar/test/block-toolbar-icon.js +32 -9
- package/src/components/block-tools/index.js +7 -0
- package/src/components/block-types-list/style.scss +0 -1
- package/src/components/block-variation-transforms/index.js +0 -1
- package/src/components/block-visibility/modal.js +24 -10
- package/src/components/block-visibility/style.scss +1 -1
- package/src/components/block-visibility/test/use-block-visibility.js +128 -35
- package/src/components/block-visibility/test/utils.js +11 -0
- package/src/components/block-visibility/use-block-visibility.js +33 -11
- package/src/components/block-visibility/utils.js +31 -6
- package/src/components/block-visibility/viewport-menu-item.js +10 -1
- package/src/components/block-visibility/viewport-toolbar.js +6 -0
- package/src/components/block-visibility/viewport-visibility-info.js +5 -1
- package/src/components/button-block-appender/content.scss +1 -7
- package/src/components/child-layout-control/index.js +0 -6
- package/src/components/color-palette/test/__snapshots__/control.js.snap +13 -108
- package/src/components/colors-gradients/control.js +4 -4
- package/src/components/colors-gradients/style.scss +2 -2
- package/src/components/date-format-picker/index.js +0 -1
- package/src/components/dimensions-tool/aspect-ratio-tool.js +0 -1
- package/src/components/dimensions-tool/scale-tool.js +0 -1
- package/src/components/dimensions-tool/width-height-tool.js +0 -2
- package/src/components/font-appearance-control/index.js +6 -19
- package/src/components/font-family/README.md +0 -9
- package/src/components/font-family/index.js +6 -19
- package/src/components/font-family/stories/index.story.jsx +1 -2
- package/src/components/font-sizes/font-size-picker.js +0 -1
- package/src/components/global-styles/border-panel.js +0 -1
- package/src/components/global-styles/dimensions-panel.js +0 -3
- package/src/components/global-styles/state-control-badges.js +45 -6
- package/src/components/global-styles/style.scss +5 -0
- package/src/components/global-styles/test/state-control-badges.js +65 -0
- package/src/components/global-styles/typography-panel.js +0 -7
- package/src/components/height-control/index.js +0 -2
- package/src/components/html-element-control/index.js +0 -1
- package/src/components/iframe/content.scss +3 -3
- package/src/components/image-editor/index.js +22 -0
- package/src/components/image-editor/zoom-dropdown.js +0 -1
- package/src/components/image-size-control/index.js +0 -4
- package/src/components/inner-content/index.js +119 -0
- package/src/components/inner-content/test/index.js +81 -0
- package/src/components/inserter/hooks/use-block-types-state.js +10 -2
- package/src/components/inserter/media-tab/hooks.js +114 -16
- package/src/components/inserter/media-tab/media-list.js +2 -0
- package/src/components/inserter/media-tab/media-panel.js +354 -19
- package/src/components/inserter/media-tab/media-preview.js +34 -17
- package/src/components/inserter/media-tab/media-tab.js +20 -2
- package/src/components/inserter/media-tab/test/hooks.js +267 -0
- package/src/components/inserter/media-tab/test/media-panel.js +127 -0
- package/src/components/inserter/mobile-tab-navigation.js +6 -1
- package/src/components/inserter/no-results.js +2 -2
- package/src/components/inserter/preview-panel.js +1 -0
- package/src/components/inserter/style.scss +115 -3
- package/src/components/inserter-list-item/index.js +8 -2
- package/src/components/inserter-list-item/style.scss +0 -15
- package/src/components/keyboard-shortcuts/index.js +28 -11
- package/src/components/letter-spacing-control/README.md +0 -8
- package/src/components/letter-spacing-control/index.js +5 -23
- package/src/components/letter-spacing-control/stories/index.story.jsx +0 -12
- package/src/components/line-height-control/README.md +0 -8
- package/src/components/line-height-control/index.js +6 -16
- package/src/components/line-height-control/stories/index.story.jsx +0 -1
- package/src/components/line-height-control/test/index.js +1 -7
- package/src/components/link-control/style.scss +2 -2
- package/src/components/link-control/test/index.js +6 -6
- package/src/components/link-picker/style.scss +1 -2
- package/src/components/link-picker/test/index.js +3 -1
- package/src/components/list-view/block-select-button.js +5 -1
- package/src/components/list-view/block.js +69 -23
- package/src/components/list-view/expander.js +5 -1
- package/src/components/list-view/style.scss +23 -5
- package/src/components/list-view/use-list-view-client-ids.js +2 -2
- package/src/components/media-placeholder/index.js +0 -1
- package/src/components/multi-selection-inspector/style.scss +1 -1
- package/src/components/observe-typing/index.js +9 -4
- package/src/components/preset-input-control/custom-value-controls.js +0 -2
- package/src/components/preset-input-control/index.js +0 -2
- package/src/components/resolution-tool/index.js +0 -1
- package/src/components/responsive-block-control/style.scss +1 -1
- package/src/components/responsive-block-control/test/index.js +1 -5
- package/src/components/rich-text/event-listeners/before-input-rules.js +8 -5
- package/src/components/rich-text/event-listeners/delete.js +7 -4
- package/src/components/rich-text/event-listeners/enter.js +10 -4
- package/src/components/rich-text/event-listeners/input-events.js +4 -3
- package/src/components/rich-text/event-listeners/input-rules.js +8 -5
- package/src/components/rich-text/event-listeners/insert-replacement-text.js +4 -3
- package/src/components/rich-text/event-listeners/paste-handler.js +15 -3
- package/src/components/rich-text/event-listeners/remove-browser-shortcuts.js +4 -3
- package/src/components/rich-text/event-listeners/shortcuts.js +4 -3
- package/src/components/rich-text/event-listeners/undo-automatic-change.js +4 -3
- package/src/components/rich-text/index.js +94 -25
- package/src/components/skip-to-selected-block/style.scss +1 -1
- package/src/components/text-alignment-control/index.js +0 -1
- package/src/components/text-decoration-control/index.js +0 -1
- package/src/components/text-indent-control/index.js +7 -16
- package/src/components/text-transform-control/index.js +0 -1
- package/src/components/typewriter/index.js +228 -224
- package/src/components/use-block-commands/index.js +27 -17
- package/src/components/use-block-display-information/index.js +9 -13
- package/src/components/use-block-display-information/test/index.js +47 -9
- package/src/components/use-on-block-drop/index.js +4 -7
- package/src/components/writing-flow/index.js +15 -1
- package/src/components/writing-flow/use-arrow-nav.js +39 -12
- package/src/components/writing-flow/use-click-selection.js +2 -3
- package/src/components/writing-flow/use-clipboard-handler.js +5 -2
- package/src/components/writing-flow/use-drag-selection.js +1 -14
- package/src/components/writing-flow/use-editable-root.js +182 -0
- package/src/components/writing-flow/use-home-end.js +63 -0
- package/src/components/writing-flow/use-input.js +25 -8
- package/src/components/writing-flow/use-multi-selection.js +2 -3
- package/src/components/writing-flow/use-select-all.js +33 -3
- package/src/components/writing-flow/use-selection-observer.js +197 -38
- package/src/components/writing-flow/utils.js +83 -0
- package/src/components/writing-mode-control/index.js +0 -1
- package/src/hooks/background.js +7 -9
- package/src/hooks/block-fields/link/styles.scss +1 -6
- package/src/hooks/block-fields/media/styles.scss +1 -6
- package/src/hooks/block-fields/rich-text/index.js +6 -9
- package/src/hooks/block-hooks.scss +15 -0
- package/src/hooks/elements.js +0 -1
- package/src/hooks/font-size.js +0 -1
- package/src/hooks/grid-visualizer.js +40 -36
- package/src/hooks/layout-child.js +19 -9
- package/src/hooks/layout.js +53 -35
- package/src/hooks/position.js +44 -23
- package/src/hooks/states.js +36 -13
- package/src/hooks/style.js +67 -17
- package/src/hooks/test/cross-origin-isolation.js +0 -4
- package/src/hooks/test/layout.js +75 -1
- package/src/hooks/test/style.js +29 -0
- package/src/hooks/test/text-align.js +34 -1
- package/src/hooks/text-align.js +41 -10
- package/src/hooks/typography.js +0 -1
- package/src/layouts/constrained.js +56 -29
- package/src/layouts/flex.js +5 -4
- package/src/layouts/grid.js +59 -9
- package/src/layouts/test/constrained.js +91 -0
- package/src/layouts/test/grid.js +71 -0
- package/src/private-apis.js +4 -0
- package/src/store/actions.js +43 -14
- package/src/store/private-keys.js +1 -0
- package/src/store/private-selectors.js +166 -9
- package/src/store/selectors.js +41 -0
- package/src/store/test/actions.js +1 -1
- package/src/store/test/private-selectors.js +533 -0
- package/src/store/test/reducer.js +11 -11
- package/src/store/test/selectors.js +133 -0
- package/src/style.scss +1 -0
- package/src/utils/block-bindings.ts +50 -0
- package/src/utils/dom.ts +33 -0
- package/src/utils/test/block-bindings.js +181 -0
- package/build/components/rich-text/input-event.cjs +0 -50
- package/build/components/rich-text/input-event.cjs.map +0 -7
- package/build/components/rich-text/shortcut.cjs +0 -51
- package/build/components/rich-text/shortcut.cjs.map +0 -7
- package/build-module/components/rich-text/input-event.mjs +0 -25
- package/build-module/components/rich-text/input-event.mjs.map +0 -7
- package/build-module/components/rich-text/shortcut.mjs +0 -26
- package/build-module/components/rich-text/shortcut.mjs.map +0 -7
- package/src/components/rich-text/input-event.js +0 -31
- package/src/components/rich-text/shortcut.js +0 -32
|
@@ -125,8 +125,14 @@ function createBlockCompleter() {
|
|
|
125
125
|
return ! ( /\S/.test( before ) || /\S/.test( after ) );
|
|
126
126
|
},
|
|
127
127
|
getOptionCompletion( inserterItem ) {
|
|
128
|
-
const {
|
|
129
|
-
|
|
128
|
+
const {
|
|
129
|
+
name,
|
|
130
|
+
initialAttributes,
|
|
131
|
+
innerBlocks,
|
|
132
|
+
innerContent,
|
|
133
|
+
syncStatus,
|
|
134
|
+
blocks,
|
|
135
|
+
} = inserterItem;
|
|
130
136
|
|
|
131
137
|
return {
|
|
132
138
|
action: 'replace',
|
|
@@ -140,7 +146,8 @@ function createBlockCompleter() {
|
|
|
140
146
|
initialAttributes,
|
|
141
147
|
createBlocksFromInnerBlocksTemplate(
|
|
142
148
|
innerBlocks
|
|
143
|
-
)
|
|
149
|
+
),
|
|
150
|
+
innerContent
|
|
144
151
|
),
|
|
145
152
|
};
|
|
146
153
|
},
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { registerBlockType, unregisterBlockType } from '@wordpress/blocks';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Internal dependencies
|
|
8
|
+
*/
|
|
9
|
+
import blockCompleter from '../block';
|
|
10
|
+
|
|
11
|
+
describe( 'block autocompleter', () => {
|
|
12
|
+
beforeAll( () => {
|
|
13
|
+
registerBlockType( 'core/html', {
|
|
14
|
+
apiVersion: 3,
|
|
15
|
+
save: () => null,
|
|
16
|
+
category: 'text',
|
|
17
|
+
title: 'Custom HTML',
|
|
18
|
+
} );
|
|
19
|
+
registerBlockType( 'core/paragraph', {
|
|
20
|
+
apiVersion: 3,
|
|
21
|
+
save: ( { attributes } ) => attributes.content || null,
|
|
22
|
+
category: 'text',
|
|
23
|
+
title: 'Paragraph',
|
|
24
|
+
attributes: { content: { type: 'string', source: 'html' } },
|
|
25
|
+
} );
|
|
26
|
+
} );
|
|
27
|
+
|
|
28
|
+
afterAll( () => {
|
|
29
|
+
unregisterBlockType( 'core/html' );
|
|
30
|
+
unregisterBlockType( 'core/paragraph' );
|
|
31
|
+
} );
|
|
32
|
+
|
|
33
|
+
describe( 'getOptionCompletion', () => {
|
|
34
|
+
it( "carries a variation's innerContent onto the inserted block", () => {
|
|
35
|
+
const { action, value } = blockCompleter.getOptionCompletion( {
|
|
36
|
+
name: 'core/html',
|
|
37
|
+
initialAttributes: {},
|
|
38
|
+
innerBlocks: [ [ 'core/paragraph', { content: 'Editable' } ] ],
|
|
39
|
+
innerContent: [ '<div class="card">', null, '</div>' ],
|
|
40
|
+
} );
|
|
41
|
+
|
|
42
|
+
expect( action ).toBe( 'replace' );
|
|
43
|
+
expect( value.name ).toBe( 'core/html' );
|
|
44
|
+
expect( value.innerContent ).toEqual( [
|
|
45
|
+
'<div class="card">',
|
|
46
|
+
null,
|
|
47
|
+
'</div>',
|
|
48
|
+
] );
|
|
49
|
+
expect( value.innerBlocks ).toHaveLength( 1 );
|
|
50
|
+
expect( value.innerBlocks[ 0 ].name ).toBe( 'core/paragraph' );
|
|
51
|
+
} );
|
|
52
|
+
} );
|
|
53
|
+
} );
|
|
@@ -579,7 +579,6 @@ function BackgroundSizeControls( {
|
|
|
579
579
|
onChange={ toggleScrollWithPage }
|
|
580
580
|
/>
|
|
581
581
|
<ToggleGroupControl
|
|
582
|
-
size="__unstable-large"
|
|
583
582
|
label={ __( 'Size' ) }
|
|
584
583
|
value={ currentValueForToggle }
|
|
585
584
|
onChange={ updateBackgroundSize }
|
|
@@ -618,7 +617,6 @@ function BackgroundSizeControls( {
|
|
|
618
617
|
aria-label={ __( 'Background image width' ) }
|
|
619
618
|
onChange={ updateBackgroundSize }
|
|
620
619
|
value={ sizeValue }
|
|
621
|
-
size="__unstable-large"
|
|
622
620
|
__unstableInputWidth="100px"
|
|
623
621
|
min={ 0 }
|
|
624
622
|
placeholder={ __( 'Auto' ) }
|
|
@@ -14,7 +14,7 @@ import BlockTools from '../block-tools';
|
|
|
14
14
|
import EditorStyles from '../editor-styles';
|
|
15
15
|
import Iframe from '../iframe';
|
|
16
16
|
import WritingFlow from '../writing-flow';
|
|
17
|
-
import { useMouseMoveTypingReset } from '../observe-typing';
|
|
17
|
+
import { useMouseMoveTypingReset, useTypingObserver } from '../observe-typing';
|
|
18
18
|
import { useBlockSelectionClearer } from '../block-selection-clearer';
|
|
19
19
|
import { useBlockCommands } from '../use-block-commands';
|
|
20
20
|
import { store as blockEditorStore } from '../../store';
|
|
@@ -60,7 +60,14 @@ export function ExperimentalBlockCanvas( {
|
|
|
60
60
|
const resetTypingRef = useMouseMoveTypingReset();
|
|
61
61
|
const clearerRef = useBlockSelectionClearer();
|
|
62
62
|
const localRef = useRef();
|
|
63
|
-
|
|
63
|
+
// Attached to the same node as the writing flow ref: the iframe body,
|
|
64
|
+
// or the WritingFlow element when the canvas is not iframed.
|
|
65
|
+
const contentRef = useMergeRefs( [
|
|
66
|
+
contentRefProp,
|
|
67
|
+
clearerRef,
|
|
68
|
+
localRef,
|
|
69
|
+
useTypingObserver(),
|
|
70
|
+
] );
|
|
64
71
|
const zoomLevel = useSelect(
|
|
65
72
|
( select ) => unlock( select( blockEditorStore ) ).getZoomLevel(),
|
|
66
73
|
[]
|
|
@@ -8,6 +8,7 @@ const BlockControlsBlock = createSlotFill( 'BlockControlsBlock' );
|
|
|
8
8
|
const BlockControlsInline = createSlotFill( 'BlockFormatControls' );
|
|
9
9
|
const BlockControlsOther = createSlotFill( 'BlockControlsOther' );
|
|
10
10
|
const BlockControlsParent = createSlotFill( 'BlockControlsParent' );
|
|
11
|
+
const BlockControlsStyleState = createSlotFill( 'BlockControlsStyleState' );
|
|
11
12
|
|
|
12
13
|
const groups = {
|
|
13
14
|
default: BlockControlsDefault,
|
|
@@ -15,6 +16,7 @@ const groups = {
|
|
|
15
16
|
inline: BlockControlsInline,
|
|
16
17
|
other: BlockControlsOther,
|
|
17
18
|
parent: BlockControlsParent,
|
|
19
|
+
'style-state': BlockControlsStyleState,
|
|
18
20
|
};
|
|
19
21
|
|
|
20
22
|
export default groups;
|
|
@@ -22,22 +22,13 @@ import { useCallback, useContext, useMemo } from '@wordpress/element';
|
|
|
22
22
|
import BlockContext from '../block-context';
|
|
23
23
|
import isURLLike from '../link-control/is-url-like';
|
|
24
24
|
import {
|
|
25
|
+
getBlockBindingsContext,
|
|
25
26
|
hasPatternOverridesDefaultBinding,
|
|
26
27
|
replacePatternOverridesDefaultBinding,
|
|
27
28
|
} from '../../utils/block-bindings';
|
|
28
29
|
import { unlock } from '../../lock-unlock';
|
|
29
30
|
import { PrivateBlockContext } from '../block-list/private-block-context';
|
|
30
31
|
|
|
31
|
-
/**
|
|
32
|
-
* Default value used for blocks which do not define their own context needs,
|
|
33
|
-
* used to guarantee that a block's `context` prop will always be an object. It
|
|
34
|
-
* is assigned as a constant since it is always expected to be an empty object,
|
|
35
|
-
* and in order to avoid unnecessary React reconciliations of a changing object.
|
|
36
|
-
*
|
|
37
|
-
* @type {{}}
|
|
38
|
-
*/
|
|
39
|
-
const DEFAULT_BLOCK_CONTEXT = {};
|
|
40
|
-
|
|
41
32
|
const Edit = ( props ) => {
|
|
42
33
|
const { name } = props;
|
|
43
34
|
const blockType = getBlockType( name );
|
|
@@ -69,32 +60,23 @@ const EditWithGeneratedProps = ( props ) => {
|
|
|
69
60
|
const { bindableAttributes } = useContext( PrivateBlockContext );
|
|
70
61
|
|
|
71
62
|
const { blockBindings, context, hasPatternOverrides } = useMemo( () => {
|
|
72
|
-
// Assign context values using the block type's declared context needs.
|
|
73
|
-
const computedContext = blockType?.usesContext
|
|
74
|
-
? Object.fromEntries(
|
|
75
|
-
Object.entries( blockContext ).filter( ( [ key ] ) =>
|
|
76
|
-
blockType.usesContext.includes( key )
|
|
77
|
-
)
|
|
78
|
-
)
|
|
79
|
-
: DEFAULT_BLOCK_CONTEXT;
|
|
80
|
-
// Add context requested by Block Bindings sources.
|
|
81
|
-
if ( attributes?.metadata?.bindings ) {
|
|
82
|
-
Object.values( attributes?.metadata?.bindings || {} ).forEach(
|
|
83
|
-
( binding ) => {
|
|
84
|
-
registeredSources[ binding?.source ]?.usesContext?.forEach(
|
|
85
|
-
( key ) => {
|
|
86
|
-
computedContext[ key ] = blockContext[ key ];
|
|
87
|
-
}
|
|
88
|
-
);
|
|
89
|
-
}
|
|
90
|
-
);
|
|
91
|
-
}
|
|
92
63
|
return {
|
|
93
64
|
blockBindings: replacePatternOverridesDefaultBinding(
|
|
94
65
|
attributes?.metadata?.bindings,
|
|
95
66
|
bindableAttributes
|
|
96
67
|
),
|
|
97
|
-
context
|
|
68
|
+
// Assign context values using the block type's declared context
|
|
69
|
+
// needs, plus the context requested by the block's bindings
|
|
70
|
+
// sources.
|
|
71
|
+
context: getBlockBindingsContext(
|
|
72
|
+
blockContext,
|
|
73
|
+
blockType?.usesContext,
|
|
74
|
+
attributes?.metadata?.bindings
|
|
75
|
+
? Object.values( attributes.metadata.bindings ).map(
|
|
76
|
+
( binding ) => registeredSources[ binding?.source ]
|
|
77
|
+
)
|
|
78
|
+
: undefined
|
|
79
|
+
),
|
|
98
80
|
hasPatternOverrides: hasPatternOverridesDefaultBinding(
|
|
99
81
|
attributes?.metadata?.bindings
|
|
100
82
|
),
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Button, __experimentalVStack as VStack } from '@wordpress/components';
|
|
5
5
|
import { __ } from '@wordpress/i18n';
|
|
6
|
-
import { useSelect } from '@wordpress/data';
|
|
6
|
+
import { useSelect, useDispatch } from '@wordpress/data';
|
|
7
7
|
import { isReusableBlock, isTemplatePart } from '@wordpress/blocks';
|
|
8
8
|
|
|
9
9
|
/**
|
|
@@ -59,11 +59,15 @@ function InlineEditButton( {
|
|
|
59
59
|
editContentOnlySection,
|
|
60
60
|
stopEditingContentOnlySection,
|
|
61
61
|
} ) {
|
|
62
|
+
const { selectBlock } = useDispatch( blockEditorStore );
|
|
62
63
|
const handleClick = () => {
|
|
63
64
|
if ( ! editedContentOnlySection ) {
|
|
64
65
|
editContentOnlySection( clientId );
|
|
66
|
+
selectBlock( clientId );
|
|
65
67
|
} else {
|
|
66
68
|
stopEditingContentOnlySection();
|
|
69
|
+
// Keep the selected section pattern or content block selected after exiting.
|
|
70
|
+
selectBlock( clientId );
|
|
67
71
|
}
|
|
68
72
|
};
|
|
69
73
|
|
|
@@ -394,13 +394,14 @@ const BlockInspectorSingleBlock = ( {
|
|
|
394
394
|
selectedBlockStyleState,
|
|
395
395
|
showStateOnCanvas,
|
|
396
396
|
isResponsiveEditing,
|
|
397
|
-
isBlockStyleStateSelected,
|
|
398
397
|
} ) => {
|
|
399
398
|
const listViewRef = useRef( null );
|
|
400
399
|
const hasMultipleTabs = availableTabs?.length > 1;
|
|
401
400
|
const hasPseudoState = hasPseudoBlockStyleState( selectedBlockStyleState );
|
|
402
401
|
const isEditingStyleState =
|
|
403
|
-
|
|
402
|
+
( hasViewportBlockStyleState( selectedBlockStyleState ) &&
|
|
403
|
+
isResponsiveEditing ) ||
|
|
404
|
+
hasPseudoBlockStyleState( selectedBlockStyleState );
|
|
404
405
|
const hasParentChildBlockCards =
|
|
405
406
|
editedContentOnlySection &&
|
|
406
407
|
editedContentOnlySection !== renderedBlockClientId;
|
|
@@ -20,7 +20,7 @@ const blockToBlocks = ( block ) =>
|
|
|
20
20
|
} );
|
|
21
21
|
|
|
22
22
|
export default function BlockInvalidWarning( { clientId } ) {
|
|
23
|
-
const { block, canInsertHTMLBlock
|
|
23
|
+
const { block, canInsertHTMLBlock } = useSelect(
|
|
24
24
|
( select ) => {
|
|
25
25
|
const { canInsertBlockType, getBlock, getBlockRootClientId } =
|
|
26
26
|
select( blockEditorStore );
|
|
@@ -33,10 +33,6 @@ export default function BlockInvalidWarning( { clientId } ) {
|
|
|
33
33
|
'core/html',
|
|
34
34
|
rootClientId
|
|
35
35
|
),
|
|
36
|
-
canInsertClassicBlock: canInsertBlockType(
|
|
37
|
-
'core/freeform',
|
|
38
|
-
rootClientId
|
|
39
|
-
),
|
|
40
36
|
};
|
|
41
37
|
},
|
|
42
38
|
[ clientId ]
|
|
@@ -48,16 +44,13 @@ export default function BlockInvalidWarning( { clientId } ) {
|
|
|
48
44
|
|
|
49
45
|
const convert = useMemo(
|
|
50
46
|
() => ( {
|
|
51
|
-
toClassic() {
|
|
52
|
-
const classicBlock = createBlock( 'core/freeform', {
|
|
53
|
-
content: block.originalContent,
|
|
54
|
-
} );
|
|
55
|
-
return replaceBlock( block.clientId, classicBlock );
|
|
56
|
-
},
|
|
57
47
|
toHTML() {
|
|
58
|
-
const htmlBlock = createBlock(
|
|
59
|
-
|
|
60
|
-
|
|
48
|
+
const htmlBlock = createBlock(
|
|
49
|
+
'core/html',
|
|
50
|
+
{},
|
|
51
|
+
[],
|
|
52
|
+
[ block.originalContent ]
|
|
53
|
+
);
|
|
61
54
|
return replaceBlock( block.clientId, htmlBlock );
|
|
62
55
|
},
|
|
63
56
|
toBlocks() {
|
|
@@ -88,12 +81,8 @@ export default function BlockInvalidWarning( { clientId } ) {
|
|
|
88
81
|
title: __( 'Convert to HTML' ),
|
|
89
82
|
onClick: convert.toHTML,
|
|
90
83
|
},
|
|
91
|
-
canInsertClassicBlock && {
|
|
92
|
-
title: __( 'Convert to Classic Block' ),
|
|
93
|
-
onClick: convert.toClassic,
|
|
94
|
-
},
|
|
95
84
|
].filter( Boolean ),
|
|
96
|
-
[ canInsertHTMLBlock,
|
|
85
|
+
[ canInsertHTMLBlock, convert ]
|
|
97
86
|
);
|
|
98
87
|
|
|
99
88
|
return (
|
|
@@ -622,6 +622,7 @@ function BlockListBlockProvider( props ) {
|
|
|
622
622
|
const blockVisibility = attributes?.metadata?.blockVisibility;
|
|
623
623
|
const deviceType =
|
|
624
624
|
settings?.[ deviceTypeKey ]?.toLowerCase() || 'desktop';
|
|
625
|
+
const viewportSettings = settings?.__experimentalFeatures?.viewport;
|
|
625
626
|
|
|
626
627
|
const hasLightBlockWrapper = blockType?.apiVersion > 1;
|
|
627
628
|
const isMultiSelected = isBlockMultiSelected( clientId );
|
|
@@ -645,6 +646,7 @@ function BlockListBlockProvider( props ) {
|
|
|
645
646
|
bindableAttributes,
|
|
646
647
|
blockVisibility,
|
|
647
648
|
deviceType,
|
|
649
|
+
viewportSettings,
|
|
648
650
|
isMultiSelected,
|
|
649
651
|
blockEditingMode,
|
|
650
652
|
isEditingDisabled: blockEditingMode === 'disabled',
|
|
@@ -736,6 +738,7 @@ function BlockListBlockProvider( props ) {
|
|
|
736
738
|
: false,
|
|
737
739
|
blockVisibility,
|
|
738
740
|
deviceType,
|
|
741
|
+
viewportSettings,
|
|
739
742
|
};
|
|
740
743
|
},
|
|
741
744
|
[ clientId, rootClientId ]
|
|
@@ -753,6 +756,7 @@ function BlockListBlockProvider( props ) {
|
|
|
753
756
|
const { isBlockCurrentlyHidden } = useBlockVisibility( {
|
|
754
757
|
blockVisibility: selectedProps?.blockVisibility,
|
|
755
758
|
deviceType: selectedProps?.deviceType,
|
|
759
|
+
viewportSettings: selectedProps?.viewportSettings,
|
|
756
760
|
view: defaultViewRef.current,
|
|
757
761
|
} );
|
|
758
762
|
|
|
@@ -817,6 +821,7 @@ function BlockListBlockProvider( props ) {
|
|
|
817
821
|
bindableAttributes,
|
|
818
822
|
blockVisibility,
|
|
819
823
|
deviceType,
|
|
824
|
+
viewportSettings,
|
|
820
825
|
} = selectedProps;
|
|
821
826
|
|
|
822
827
|
const privateContext = {
|
|
@@ -856,6 +861,7 @@ function BlockListBlockProvider( props ) {
|
|
|
856
861
|
bindableAttributes,
|
|
857
862
|
blockVisibility,
|
|
858
863
|
deviceType,
|
|
864
|
+
viewportSettings,
|
|
859
865
|
};
|
|
860
866
|
|
|
861
867
|
if (
|
|
@@ -35,7 +35,6 @@ import {
|
|
|
35
35
|
BlockEditContextProvider,
|
|
36
36
|
DEFAULT_BLOCK_EDIT_CONTEXT,
|
|
37
37
|
} from '../block-edit/context';
|
|
38
|
-
import { useTypingObserver } from '../observe-typing';
|
|
39
38
|
import { ZoomOutSeparator } from './zoom-out-separator';
|
|
40
39
|
import { unlock } from '../../lock-unlock';
|
|
41
40
|
|
|
@@ -113,7 +112,6 @@ function Root( { className, ...settings } ) {
|
|
|
113
112
|
ref: useMergeRefs( [
|
|
114
113
|
useBlockSelectionClearer(),
|
|
115
114
|
useInBetweenInserter(),
|
|
116
|
-
useTypingObserver(),
|
|
117
115
|
] ),
|
|
118
116
|
className: clsx( 'is-root-container', className, {
|
|
119
117
|
'is-outline-mode': isOutlineMode,
|
|
@@ -105,6 +105,7 @@ export function useBlockProps( props = {}, { __unstableIsHtml } = {} ) {
|
|
|
105
105
|
canMove,
|
|
106
106
|
blockVisibility,
|
|
107
107
|
deviceType,
|
|
108
|
+
viewportSettings,
|
|
108
109
|
} = useContext( PrivateBlockContext );
|
|
109
110
|
|
|
110
111
|
const defaultViewRef = useRefEffect( ( element ) => {
|
|
@@ -153,6 +154,7 @@ export function useBlockProps( props = {}, { __unstableIsHtml } = {} ) {
|
|
|
153
154
|
const { isBlockCurrentlyHidden } = useBlockVisibility( {
|
|
154
155
|
blockVisibility,
|
|
155
156
|
deviceType,
|
|
157
|
+
viewportSettings,
|
|
156
158
|
view: defaultViewRef.current,
|
|
157
159
|
} );
|
|
158
160
|
|
|
@@ -29,9 +29,8 @@ import { unlock } from '../../../lock-unlock';
|
|
|
29
29
|
*/
|
|
30
30
|
export function useFocusFirstElement( { clientId, initialPosition } ) {
|
|
31
31
|
const ref = useRef();
|
|
32
|
-
const { isBlockSelected, isMultiSelecting, isZoomOut } =
|
|
33
|
-
useSelect( blockEditorStore )
|
|
34
|
-
);
|
|
32
|
+
const { isBlockSelected, isMultiSelecting, isZoomOut, getSelectionStart } =
|
|
33
|
+
unlock( useSelect( blockEditorStore ) );
|
|
35
34
|
|
|
36
35
|
useEffect( () => {
|
|
37
36
|
// Check if the block is still selected at the time this effect runs.
|
|
@@ -87,7 +86,27 @@ export function useFocusFirstElement( { clientId, initialPosition } ) {
|
|
|
87
86
|
return;
|
|
88
87
|
}
|
|
89
88
|
}
|
|
90
|
-
|
|
89
|
+
// Do not place a caret when the target already contains one:
|
|
90
|
+
// while a focused editing host contains the target (the block
|
|
91
|
+
// supports `editableRoot`), the caret can be inside it without the
|
|
92
|
+
// target holding focus. Only a caret the rich text synchronized to
|
|
93
|
+
// the store (offsets present) is deliberate; a leftover one yields
|
|
94
|
+
// to an explicitly requested edge position (initialPosition -1).
|
|
95
|
+
const { activeElement } = ownerDocument;
|
|
96
|
+
const selection = ownerDocument.defaultView.getSelection();
|
|
97
|
+
const { clientId: selectionClientId, offset } = getSelectionStart();
|
|
98
|
+
const hasCaret =
|
|
99
|
+
activeElement?.isContentEditable &&
|
|
100
|
+
activeElement.contains( target ) &&
|
|
101
|
+
!! selection.anchorNode &&
|
|
102
|
+
target.contains( selection.anchorNode );
|
|
103
|
+
const isDeliberate =
|
|
104
|
+
initialPosition === 0 ||
|
|
105
|
+
( offset !== undefined && selectionClientId === clientId );
|
|
106
|
+
|
|
107
|
+
if ( ! ( hasCaret && isDeliberate ) ) {
|
|
108
|
+
placeCaretAtHorizontalEdge( target, isReverse );
|
|
109
|
+
}
|
|
91
110
|
}, [ initialPosition, clientId ] );
|
|
92
111
|
|
|
93
112
|
return ref;
|
|
@@ -12,6 +12,7 @@ import {
|
|
|
12
12
|
*/
|
|
13
13
|
import { isInsideRootBlock } from '../../../utils/dom';
|
|
14
14
|
import { store as blockEditorStore } from '../../../store';
|
|
15
|
+
import { isShiftClickInProgress } from '../../writing-flow/utils';
|
|
15
16
|
import { unlock } from '../../../lock-unlock';
|
|
16
17
|
|
|
17
18
|
const { subscribeDelegatedListener } = unlock( composePrivateApis );
|
|
@@ -22,7 +23,8 @@ const { subscribeDelegatedListener } = unlock( composePrivateApis );
|
|
|
22
23
|
* @param {string} clientId Block client ID.
|
|
23
24
|
*/
|
|
24
25
|
export function useFocusHandler( clientId ) {
|
|
25
|
-
const { isBlockSelected } =
|
|
26
|
+
const { isBlockSelected, isBlockMultiSelected } =
|
|
27
|
+
useSelect( blockEditorStore );
|
|
26
28
|
const { selectBlock, selectionChange } = useDispatch( blockEditorStore );
|
|
27
29
|
|
|
28
30
|
return useRefEffect(
|
|
@@ -36,14 +38,6 @@ export function useFocusHandler( clientId ) {
|
|
|
36
38
|
* @param {FocusEvent} event Focus event.
|
|
37
39
|
*/
|
|
38
40
|
function onFocus( event ) {
|
|
39
|
-
// When the whole editor is editable, let writing flow handle
|
|
40
|
-
// selection.
|
|
41
|
-
if (
|
|
42
|
-
node.parentElement.closest( '[contenteditable="true"]' )
|
|
43
|
-
) {
|
|
44
|
-
return;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
41
|
// Check synchronously because a non-selected block might be
|
|
48
42
|
// getting data through `useSelect` asynchronously.
|
|
49
43
|
if ( isBlockSelected( clientId ) ) {
|
|
@@ -54,12 +48,43 @@ export function useFocusHandler( clientId ) {
|
|
|
54
48
|
return;
|
|
55
49
|
}
|
|
56
50
|
|
|
51
|
+
// Never select on the focus fired by a shift+click: the
|
|
52
|
+
// browser can focus the common editable ancestor of the
|
|
53
|
+
// range (e.g. a group block), and any selection re-render
|
|
54
|
+
// mid gesture destroys the native selection being made. The
|
|
55
|
+
// selection observer builds the multi-selection on mouseup.
|
|
56
|
+
if ( isShiftClickInProgress() ) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
// A block that is part of the current multi-selection must
|
|
61
|
+
// not collapse it. Focus can land on the clicked block after
|
|
62
|
+
// the multi-selection was built: the focus event of a
|
|
63
|
+
// shift+click is not ordered consistently against its
|
|
64
|
+
// mouseup across browsers.
|
|
65
|
+
if ( isBlockMultiSelected( clientId ) ) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
|
|
57
69
|
// If an inner block is focussed, that block is responsible for
|
|
58
70
|
// setting the selected block.
|
|
59
71
|
if ( ! isInsideRootBlock( node, event.target ) ) {
|
|
60
72
|
return;
|
|
61
73
|
}
|
|
62
74
|
|
|
75
|
+
// For editable targets, select without initial caret
|
|
76
|
+
// placement: the caret is inside the target. Placement would
|
|
77
|
+
// move it, and would collapse a native selection in the
|
|
78
|
+
// making, e.g. a shift+click extending the selection across
|
|
79
|
+
// blocks while the wrapper is the editing host. The observer
|
|
80
|
+
// builds the multi-selection from the anchor it recorded at
|
|
81
|
+
// mousedown, so this dispatch overwriting the store anchor
|
|
82
|
+
// is harmless.
|
|
83
|
+
if ( event.target.isContentEditable ) {
|
|
84
|
+
selectBlock( clientId, null );
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
|
|
63
88
|
selectBlock( clientId );
|
|
64
89
|
}
|
|
65
90
|
|
|
@@ -11,7 +11,7 @@ import { ExperimentalBlockEditorProvider } from '../../provider';
|
|
|
11
11
|
import patterns from './fixtures';
|
|
12
12
|
// Reason: Styles are contained in ExperimentalBlockEditorProvider iframe.
|
|
13
13
|
// eslint-disable-next-line @wordpress/no-non-module-stylesheet-imports
|
|
14
|
-
import blockLibraryStyles from '
|
|
14
|
+
import blockLibraryStyles from '@wordpress/block-library/build-style/style.css?raw';
|
|
15
15
|
|
|
16
16
|
const blockEditorSettings = {
|
|
17
17
|
styles: [ { css: blockLibraryStyles } ],
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
|
|
31
31
|
button.components-button.block-editor-block-styles__item {
|
|
32
32
|
color: $gray-900;
|
|
33
|
-
|
|
33
|
+
border-color: $gray-300;
|
|
34
34
|
display: inline-block;
|
|
35
35
|
width: calc(50% - #{$grid-unit-05});
|
|
36
36
|
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
|
|
53
53
|
&:focus,
|
|
54
54
|
&.is-active:focus {
|
|
55
|
-
@include
|
|
55
|
+
@include outset-ring__focus();
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
58
|
|
|
@@ -39,7 +39,7 @@ export default function useBlockDisplayTitle( {
|
|
|
39
39
|
return null;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
const { getBlockName, getBlockAttributes } =
|
|
42
|
+
const { getBlockName, getBlockAttributes, getBlock } =
|
|
43
43
|
select( blockEditorStore );
|
|
44
44
|
const { getBlockType, getActiveBlockVariation } =
|
|
45
45
|
select( blocksStore );
|
|
@@ -57,7 +57,12 @@ export default function useBlockDisplayTitle( {
|
|
|
57
57
|
return label;
|
|
58
58
|
}
|
|
59
59
|
|
|
60
|
-
const match = getActiveBlockVariation(
|
|
60
|
+
const match = getActiveBlockVariation(
|
|
61
|
+
blockName,
|
|
62
|
+
attributes,
|
|
63
|
+
undefined,
|
|
64
|
+
getBlock?.( clientId )?.innerContent
|
|
65
|
+
);
|
|
61
66
|
// Label will fallback to the title if no label is defined for the current label context.
|
|
62
67
|
return match?.title || blockType.title;
|
|
63
68
|
},
|