@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
|
@@ -6,13 +6,21 @@ import { useDispatch } from '@wordpress/data';
|
|
|
6
6
|
import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
|
|
7
7
|
import { __ } from '@wordpress/i18n';
|
|
8
8
|
|
|
9
|
+
/**
|
|
10
|
+
* Internal dependencies
|
|
11
|
+
*/
|
|
12
|
+
import { useSettings } from '../use-settings';
|
|
13
|
+
|
|
9
14
|
function KeyboardShortcuts() {
|
|
10
15
|
return null;
|
|
11
16
|
}
|
|
12
17
|
|
|
13
18
|
function KeyboardShortcutsRegister() {
|
|
14
19
|
// Registering the shortcuts.
|
|
15
|
-
const { registerShortcut } = useDispatch(
|
|
20
|
+
const { registerShortcut, unregisterShortcut } = useDispatch(
|
|
21
|
+
keyboardShortcutsStore
|
|
22
|
+
);
|
|
23
|
+
const [ blockVisibility ] = useSettings( 'blockVisibility.allowEditing' );
|
|
16
24
|
useEffect( () => {
|
|
17
25
|
registerShortcut( {
|
|
18
26
|
name: 'core/block-editor/copy',
|
|
@@ -208,15 +216,24 @@ function KeyboardShortcutsRegister() {
|
|
|
208
216
|
},
|
|
209
217
|
} );
|
|
210
218
|
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
219
|
+
// Keep the block visibility shortcut in sync with the theme.json
|
|
220
|
+
// setting. The setting resolves asynchronously, so the shortcut may be
|
|
221
|
+
// registered before its value arrives; it must be removed once the
|
|
222
|
+
// value is known to be `false`, otherwise it lingers in the keyboard
|
|
223
|
+
// shortcut help list while doing nothing.
|
|
224
|
+
if ( blockVisibility === false ) {
|
|
225
|
+
unregisterShortcut( 'core/block-editor/toggle-block-visibility' );
|
|
226
|
+
} else {
|
|
227
|
+
registerShortcut( {
|
|
228
|
+
name: 'core/block-editor/toggle-block-visibility',
|
|
229
|
+
category: 'block',
|
|
230
|
+
description: __( 'Show or hide the selected block(s).' ),
|
|
231
|
+
keyCombination: {
|
|
232
|
+
modifier: 'primaryShift',
|
|
233
|
+
character: 'h',
|
|
234
|
+
},
|
|
235
|
+
} );
|
|
236
|
+
}
|
|
220
237
|
|
|
221
238
|
registerShortcut( {
|
|
222
239
|
name: 'core/block-editor/rename',
|
|
@@ -227,7 +244,7 @@ function KeyboardShortcutsRegister() {
|
|
|
227
244
|
character: 'r',
|
|
228
245
|
},
|
|
229
246
|
} );
|
|
230
|
-
}, [ registerShortcut ] );
|
|
247
|
+
}, [ registerShortcut, unregisterShortcut, blockVisibility ] );
|
|
231
248
|
|
|
232
249
|
return null;
|
|
233
250
|
}
|
|
@@ -19,7 +19,6 @@ const MyLetterSpacingControl = () => (
|
|
|
19
19
|
value={ value }
|
|
20
20
|
onChange={ onChange }
|
|
21
21
|
__unstableInputWidth="auto"
|
|
22
|
-
__next40pxDefaultSize
|
|
23
22
|
/>
|
|
24
23
|
);
|
|
25
24
|
```
|
|
@@ -46,13 +45,6 @@ A callback function invoked when the value is changed.
|
|
|
46
45
|
|
|
47
46
|
Input width to pass through to inner UnitControl. Should be a valid CSS value.
|
|
48
47
|
|
|
49
|
-
#### `__next40pxDefaultSize`
|
|
50
|
-
|
|
51
|
-
- **Type:** `boolean`
|
|
52
|
-
- **Default:** `false`
|
|
53
|
-
|
|
54
|
-
Start opting into the larger default height that will become the default size in a future version.
|
|
55
|
-
|
|
56
48
|
## Related components
|
|
57
49
|
|
|
58
50
|
Block Editor components are components that can be used to compose the UI of your block editor. Thus, they can only be used under a [`BlockEditorProvider`](https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/provider/README.md) in the components tree.
|
|
@@ -5,7 +5,6 @@ import {
|
|
|
5
5
|
__experimentalUnitControl as UnitControl,
|
|
6
6
|
__experimentalUseCustomUnits as useCustomUnits,
|
|
7
7
|
} from '@wordpress/components';
|
|
8
|
-
import deprecated from '@wordpress/deprecated';
|
|
9
8
|
import { __ } from '@wordpress/i18n';
|
|
10
9
|
|
|
11
10
|
/**
|
|
@@ -16,16 +15,15 @@ import { useSettings } from '../../components/use-settings';
|
|
|
16
15
|
/**
|
|
17
16
|
* Control for letter-spacing.
|
|
18
17
|
*
|
|
19
|
-
* @param {Object} props
|
|
20
|
-
* @param {boolean} props.__next40pxDefaultSize Start opting into the larger default height that will become the default size in a future version.
|
|
21
|
-
* @param {string} props.value
|
|
22
|
-
* @param {Function} props.onChange
|
|
23
|
-
* @param {string|number|undefined} props.__unstableInputWidth
|
|
18
|
+
* @param {Object} props Component props.
|
|
19
|
+
* @param {boolean} [props.__next40pxDefaultSize] Start opting into the larger default height that will become the default size in a future version.
|
|
20
|
+
* @param {string} props.value Currently selected letter-spacing.
|
|
21
|
+
* @param {Function} props.onChange Handles change in letter-spacing selection.
|
|
22
|
+
* @param {string|number|undefined} props.__unstableInputWidth Input width to pass through to inner UnitControl. Should be a valid CSS value.
|
|
24
23
|
*
|
|
25
24
|
* @return {Element} Letter-spacing control.
|
|
26
25
|
*/
|
|
27
26
|
export default function LetterSpacingControl( {
|
|
28
|
-
__next40pxDefaultSize = false,
|
|
29
27
|
value,
|
|
30
28
|
onChange,
|
|
31
29
|
__unstableInputWidth = '60px',
|
|
@@ -37,24 +35,8 @@ export default function LetterSpacingControl( {
|
|
|
37
35
|
defaultValues: { px: 2, em: 0.2, rem: 0.2 },
|
|
38
36
|
} );
|
|
39
37
|
|
|
40
|
-
if (
|
|
41
|
-
! __next40pxDefaultSize &&
|
|
42
|
-
( otherProps.size === undefined || otherProps.size === 'default' )
|
|
43
|
-
) {
|
|
44
|
-
deprecated(
|
|
45
|
-
`36px default size for wp.blockEditor.__experimentalLetterSpacingControl`,
|
|
46
|
-
{
|
|
47
|
-
since: '6.8',
|
|
48
|
-
version: '7.1',
|
|
49
|
-
hint: 'Set the `__next40pxDefaultSize` prop to true to start opting into the new default size, which will become the default in a future version.',
|
|
50
|
-
}
|
|
51
|
-
);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
38
|
return (
|
|
55
39
|
<UnitControl
|
|
56
|
-
__next40pxDefaultSize={ __next40pxDefaultSize }
|
|
57
|
-
__shouldNotWarnDeprecated36pxSize
|
|
58
40
|
{ ...otherProps }
|
|
59
41
|
label={ __( 'Letter spacing' ) }
|
|
60
42
|
value={ value }
|
|
@@ -46,24 +46,12 @@ const meta = {
|
|
|
46
46
|
defaultValue: { summary: '60px' },
|
|
47
47
|
},
|
|
48
48
|
},
|
|
49
|
-
__next40pxDefaultSize: {
|
|
50
|
-
control: 'boolean',
|
|
51
|
-
description:
|
|
52
|
-
'Start opting into the larger default height that will become the default size in a future version.',
|
|
53
|
-
table: {
|
|
54
|
-
type: { summary: 'boolean' },
|
|
55
|
-
defaultValue: { summary: 'false' },
|
|
56
|
-
},
|
|
57
|
-
},
|
|
58
49
|
},
|
|
59
50
|
};
|
|
60
51
|
|
|
61
52
|
export default meta;
|
|
62
53
|
|
|
63
54
|
export const Default = {
|
|
64
|
-
args: {
|
|
65
|
-
__next40pxDefaultSize: true,
|
|
66
|
-
},
|
|
67
55
|
render: function Template( { onChange, ...args } ) {
|
|
68
56
|
const [ value, setValue ] = useState( '' );
|
|
69
57
|
return (
|
|
@@ -18,7 +18,6 @@ const MyLineHeightControl = () => (
|
|
|
18
18
|
<LineHeightControl
|
|
19
19
|
value={ lineHeight }
|
|
20
20
|
onChange={ onChange }
|
|
21
|
-
__next40pxDefaultSize
|
|
22
21
|
/>
|
|
23
22
|
);
|
|
24
23
|
```
|
|
@@ -37,13 +36,6 @@ The value of the line height.
|
|
|
37
36
|
|
|
38
37
|
A callback function that handles the application of the line height value.
|
|
39
38
|
|
|
40
|
-
#### `__next40pxDefaultSize`
|
|
41
|
-
|
|
42
|
-
- **Type:** `boolean`
|
|
43
|
-
- **Default:** `false`
|
|
44
|
-
|
|
45
|
-
Start opting into the larger default height that will become the default size in a future version.
|
|
46
|
-
|
|
47
39
|
## Related components
|
|
48
40
|
|
|
49
41
|
Block Editor components are components that can be used to compose the UI of your block editor. Thus, they can only be used under a [`BlockEditorProvider`](https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/provider/README.md) in the components tree.
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { __ } from '@wordpress/i18n';
|
|
5
5
|
import { __experimentalNumberControl as NumberControl } from '@wordpress/components';
|
|
6
|
-
import deprecated from '@wordpress/deprecated';
|
|
7
6
|
|
|
8
7
|
/**
|
|
9
8
|
* Internal dependencies
|
|
@@ -17,8 +16,12 @@ import {
|
|
|
17
16
|
} from './utils';
|
|
18
17
|
|
|
19
18
|
const LineHeightControl = ( {
|
|
20
|
-
/**
|
|
21
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Start opting into the larger default height that will become the default size in a future version.
|
|
21
|
+
*
|
|
22
|
+
* @deprecated Default behavior since WordPress 7.1. Prop can be safely removed.
|
|
23
|
+
*/
|
|
24
|
+
__next40pxDefaultSize: _next40pxDefaultSize,
|
|
22
25
|
value: lineHeight,
|
|
23
26
|
onChange,
|
|
24
27
|
__unstableInputWidth = '60px',
|
|
@@ -90,23 +93,10 @@ const LineHeightControl = ( {
|
|
|
90
93
|
onChange( `${ nextValue }` );
|
|
91
94
|
};
|
|
92
95
|
|
|
93
|
-
if (
|
|
94
|
-
! __next40pxDefaultSize &&
|
|
95
|
-
( otherProps.size === undefined || otherProps.size === 'default' )
|
|
96
|
-
) {
|
|
97
|
-
deprecated( `36px default size for wp.blockEditor.LineHeightControl`, {
|
|
98
|
-
since: '6.8',
|
|
99
|
-
version: '7.1',
|
|
100
|
-
hint: 'Set the `__next40pxDefaultSize` prop to true to start opting into the new default size, which will become the default in a future version.',
|
|
101
|
-
} );
|
|
102
|
-
}
|
|
103
|
-
|
|
104
96
|
return (
|
|
105
97
|
<div className="block-editor-line-height-control">
|
|
106
98
|
<NumberControl
|
|
107
99
|
{ ...otherProps }
|
|
108
|
-
__shouldNotWarnDeprecated36pxSize
|
|
109
|
-
__next40pxDefaultSize={ __next40pxDefaultSize }
|
|
110
100
|
__unstableInputWidth={ __unstableInputWidth }
|
|
111
101
|
__unstableStateReducer={ stateReducer }
|
|
112
102
|
onChange={ handleOnChange }
|
|
@@ -19,13 +19,7 @@ const SPIN = STEP * SPIN_FACTOR;
|
|
|
19
19
|
|
|
20
20
|
const ControlledLineHeightControl = () => {
|
|
21
21
|
const [ value, setValue ] = useState();
|
|
22
|
-
return
|
|
23
|
-
<LineHeightControl
|
|
24
|
-
value={ value }
|
|
25
|
-
onChange={ setValue }
|
|
26
|
-
__next40pxDefaultSize
|
|
27
|
-
/>
|
|
28
|
-
);
|
|
22
|
+
return <LineHeightControl value={ value } onChange={ setValue } />;
|
|
29
23
|
};
|
|
30
24
|
|
|
31
25
|
describe( 'LineHeightControl', () => {
|
|
@@ -151,7 +151,7 @@ $block-editor-link-control-number-of-actions: 1;
|
|
|
151
151
|
width: 100%;
|
|
152
152
|
|
|
153
153
|
mark {
|
|
154
|
-
font-weight:
|
|
154
|
+
font-weight: var(--wpds-typography-font-weight-emphasis);
|
|
155
155
|
color: inherit;
|
|
156
156
|
background-color: transparent;
|
|
157
157
|
}
|
|
@@ -227,7 +227,7 @@ $block-editor-link-control-number-of-actions: 1;
|
|
|
227
227
|
}
|
|
228
228
|
|
|
229
229
|
mark {
|
|
230
|
-
font-weight:
|
|
230
|
+
font-weight: var(--wpds-typography-font-weight-emphasis);
|
|
231
231
|
color: inherit;
|
|
232
232
|
background-color: transparent;
|
|
233
233
|
}
|
|
@@ -3278,7 +3278,7 @@ describe( 'URL validation', () => {
|
|
|
3278
3278
|
] )(
|
|
3279
3279
|
'should prevent submission for $description',
|
|
3280
3280
|
async ( { inputUrl } ) => {
|
|
3281
|
-
render(
|
|
3281
|
+
const { container } = render(
|
|
3282
3282
|
<LinkControl
|
|
3283
3283
|
value={ { url: '' } }
|
|
3284
3284
|
forceIsEditingLink
|
|
@@ -3295,7 +3295,7 @@ describe( 'URL validation', () => {
|
|
|
3295
3295
|
// Wait for validation error to appear
|
|
3296
3296
|
await waitFor( () => {
|
|
3297
3297
|
expect(
|
|
3298
|
-
|
|
3298
|
+
within( container ).getByText( 'Please enter a valid URL.' )
|
|
3299
3299
|
).toBeInTheDocument();
|
|
3300
3300
|
} );
|
|
3301
3301
|
|
|
@@ -3407,7 +3407,7 @@ describe( 'URL validation', () => {
|
|
|
3407
3407
|
it( 'should show validation error when clicking Apply button with invalid URL', async () => {
|
|
3408
3408
|
// When editing an existing link, use Apply button
|
|
3409
3409
|
const existingLink = { url: 'https://example.com', title: 'Example' };
|
|
3410
|
-
render(
|
|
3410
|
+
const { container } = render(
|
|
3411
3411
|
<LinkControl
|
|
3412
3412
|
value={ existingLink }
|
|
3413
3413
|
forceIsEditingLink
|
|
@@ -3428,7 +3428,7 @@ describe( 'URL validation', () => {
|
|
|
3428
3428
|
await waitFor(
|
|
3429
3429
|
() => {
|
|
3430
3430
|
expect(
|
|
3431
|
-
|
|
3431
|
+
within( container ).getByText( 'Please enter a valid URL.' )
|
|
3432
3432
|
).toBeVisible();
|
|
3433
3433
|
},
|
|
3434
3434
|
{ timeout: 100 }
|
|
@@ -3441,7 +3441,7 @@ describe( 'URL validation', () => {
|
|
|
3441
3441
|
it( 'should show validation error when pressing Enter to submit with an invalid URL', async () => {
|
|
3442
3442
|
// When editing an existing link, use Apply button
|
|
3443
3443
|
const existingLink = { url: 'https://example.com', title: 'Example' };
|
|
3444
|
-
render(
|
|
3444
|
+
const { container } = render(
|
|
3445
3445
|
<LinkControl
|
|
3446
3446
|
value={ existingLink }
|
|
3447
3447
|
forceIsEditingLink
|
|
@@ -3460,7 +3460,7 @@ describe( 'URL validation', () => {
|
|
|
3460
3460
|
await waitFor(
|
|
3461
3461
|
() => {
|
|
3462
3462
|
expect(
|
|
3463
|
-
|
|
3463
|
+
within( container ).getByText( 'Please enter a valid URL.' )
|
|
3464
3464
|
).toBeVisible();
|
|
3465
3465
|
},
|
|
3466
3466
|
{ timeout: 100 }
|
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
width: 100%;
|
|
11
11
|
height: auto;
|
|
12
12
|
padding: $grid-unit-15;
|
|
13
|
-
box-shadow: inset 0 0 0 1px $gray-600;
|
|
14
13
|
border-color: $gray-600;
|
|
15
14
|
}
|
|
16
15
|
|
|
@@ -51,7 +50,7 @@
|
|
|
51
50
|
|
|
52
51
|
.link-preview-button__title {
|
|
53
52
|
margin-top: $grid-unit-05;
|
|
54
|
-
font-weight:
|
|
53
|
+
font-weight: var(--wpds-typography-font-weight-emphasis);
|
|
55
54
|
color: $gray-900;
|
|
56
55
|
display: block;
|
|
57
56
|
}
|
|
@@ -141,7 +141,9 @@ describe( 'LinkPicker', () => {
|
|
|
141
141
|
);
|
|
142
142
|
|
|
143
143
|
const button = screen.getByRole( 'button' );
|
|
144
|
-
const image = within( button ).getByRole( '
|
|
144
|
+
const image = within( button ).getByRole( 'presentation', {
|
|
145
|
+
hidden: true,
|
|
146
|
+
} );
|
|
145
147
|
|
|
146
148
|
expect( image ).toHaveAttribute(
|
|
147
149
|
'src',
|
|
@@ -46,6 +46,7 @@ function ListViewBlockSelectButton(
|
|
|
46
46
|
isExpanded,
|
|
47
47
|
ariaDescribedBy,
|
|
48
48
|
visibilityLabel,
|
|
49
|
+
isDisabled = false,
|
|
49
50
|
},
|
|
50
51
|
ref
|
|
51
52
|
) {
|
|
@@ -79,6 +80,8 @@ function ListViewBlockSelectButton(
|
|
|
79
80
|
}
|
|
80
81
|
|
|
81
82
|
return (
|
|
83
|
+
// Disabled list view items intentionally omit href so TreeGrid skips them.
|
|
84
|
+
// eslint-disable-next-line jsx-a11y/anchor-is-valid
|
|
82
85
|
<a
|
|
83
86
|
className={ clsx(
|
|
84
87
|
'block-editor-list-view-block-select-button',
|
|
@@ -94,7 +97,8 @@ function ListViewBlockSelectButton(
|
|
|
94
97
|
onDragStart={ onDragStartHandler }
|
|
95
98
|
onDragEnd={ onDragEnd }
|
|
96
99
|
draggable={ draggable }
|
|
97
|
-
href={ `#block-${ clientId }` }
|
|
100
|
+
href={ isDisabled ? undefined : `#block-${ clientId }` }
|
|
101
|
+
aria-disabled={ isDisabled ? true : undefined }
|
|
98
102
|
aria-describedby={ ariaDescribedBy }
|
|
99
103
|
aria-expanded={ isExpanded }
|
|
100
104
|
>
|
|
@@ -98,6 +98,7 @@ function ListViewBlock( {
|
|
|
98
98
|
insertAfterBlock,
|
|
99
99
|
insertBeforeBlock,
|
|
100
100
|
showViewportModal,
|
|
101
|
+
stopEditingContentOnlySection,
|
|
101
102
|
} = unlock( useDispatch( blockEditorStore ) );
|
|
102
103
|
|
|
103
104
|
const debouncedToggleBlockHighlight = useDebounce(
|
|
@@ -125,21 +126,41 @@ function ListViewBlock( {
|
|
|
125
126
|
|
|
126
127
|
const pasteStyles = usePasteStyles();
|
|
127
128
|
|
|
128
|
-
const {
|
|
129
|
+
const {
|
|
130
|
+
block,
|
|
131
|
+
blockName,
|
|
132
|
+
blockEditingMode,
|
|
133
|
+
allowRightClickOverrides,
|
|
134
|
+
editedSection,
|
|
135
|
+
viewportSettings,
|
|
136
|
+
blockVisibilitySetting,
|
|
137
|
+
} = useSelect(
|
|
129
138
|
( select ) => {
|
|
130
|
-
const {
|
|
131
|
-
|
|
132
|
-
|
|
139
|
+
const {
|
|
140
|
+
getBlock,
|
|
141
|
+
getBlockName,
|
|
142
|
+
getBlockEditingMode: getBlockEditingModeForClientId,
|
|
143
|
+
getSettings,
|
|
144
|
+
getEditedContentOnlySection,
|
|
145
|
+
} = unlock( select( blockEditorStore ) );
|
|
146
|
+
const settings = getSettings();
|
|
133
147
|
|
|
134
148
|
return {
|
|
135
149
|
block: getBlock( clientId ),
|
|
136
150
|
blockName: getBlockName( clientId ),
|
|
137
|
-
|
|
138
|
-
|
|
151
|
+
blockEditingMode: getBlockEditingModeForClientId( clientId ),
|
|
152
|
+
allowRightClickOverrides: settings.allowRightClickOverrides,
|
|
153
|
+
editedSection: getEditedContentOnlySection(),
|
|
154
|
+
viewportSettings: settings.__experimentalFeatures?.viewport,
|
|
155
|
+
blockVisibilitySetting:
|
|
156
|
+
settings.__experimentalFeatures?.blockVisibility
|
|
157
|
+
?.allowEditing,
|
|
139
158
|
};
|
|
140
159
|
},
|
|
141
160
|
[ clientId ]
|
|
142
161
|
);
|
|
162
|
+
|
|
163
|
+
const isDisabled = blockEditingMode === 'disabled';
|
|
143
164
|
const { canRename } = useBlockRename( blockName );
|
|
144
165
|
|
|
145
166
|
const showBlockActions =
|
|
@@ -202,6 +223,13 @@ function ListViewBlock( {
|
|
|
202
223
|
return;
|
|
203
224
|
}
|
|
204
225
|
|
|
226
|
+
if ( editedSection && isMatch( 'core/block-editor/unselect', event ) ) {
|
|
227
|
+
event.stopPropagation();
|
|
228
|
+
event.preventDefault();
|
|
229
|
+
stopEditingContentOnlySection();
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
|
|
205
233
|
const isDeleteKey = [ BACKSPACE, DELETE ].includes( event.keyCode );
|
|
206
234
|
|
|
207
235
|
// If multiple blocks are selected, deselect all blocks when the user
|
|
@@ -370,6 +398,9 @@ function ListViewBlock( {
|
|
|
370
398
|
} else if (
|
|
371
399
|
isMatch( 'core/block-editor/toggle-block-visibility', event )
|
|
372
400
|
) {
|
|
401
|
+
if ( blockVisibilitySetting === false ) {
|
|
402
|
+
return;
|
|
403
|
+
}
|
|
373
404
|
event.preventDefault();
|
|
374
405
|
const { blocksToUpdate } = getBlocksToUpdate();
|
|
375
406
|
const blocks = getBlocksByClientId( blocksToUpdate );
|
|
@@ -535,11 +566,13 @@ function ListViewBlock( {
|
|
|
535
566
|
|
|
536
567
|
// Determine label based on where block is hidden (not when/current viewport)
|
|
537
568
|
const blockVisibilityDescription = getBlockVisibilityLabel(
|
|
538
|
-
block?.attributes?.metadata?.blockVisibility
|
|
569
|
+
block?.attributes?.metadata?.blockVisibility,
|
|
570
|
+
viewportSettings
|
|
539
571
|
);
|
|
540
572
|
|
|
541
573
|
const hasSiblings = siblingBlockCount > 0;
|
|
542
|
-
const
|
|
574
|
+
const canShowBlockActions = showBlockActions && ! isDisabled;
|
|
575
|
+
const hasRenderedMovers = showBlockMovers && hasSiblings && ! isDisabled;
|
|
543
576
|
const moverCellClassName = clsx(
|
|
544
577
|
'block-editor-list-view-block__mover-cell',
|
|
545
578
|
{ 'is-visible': isHovered || isSelected }
|
|
@@ -553,7 +586,7 @@ function ListViewBlock( {
|
|
|
553
586
|
let colSpan;
|
|
554
587
|
if ( hasRenderedMovers ) {
|
|
555
588
|
colSpan = 2;
|
|
556
|
-
} else if ( !
|
|
589
|
+
} else if ( ! canShowBlockActions ) {
|
|
557
590
|
colSpan = 3;
|
|
558
591
|
}
|
|
559
592
|
|
|
@@ -566,12 +599,13 @@ function ListViewBlock( {
|
|
|
566
599
|
'is-dragging': isDragged,
|
|
567
600
|
'has-single-cell': ! showBlockActions,
|
|
568
601
|
'is-synced': blockInformation?.isSynced,
|
|
569
|
-
'is-draggable': canMoveBlock,
|
|
602
|
+
'is-draggable': canMoveBlock && ! isDisabled,
|
|
570
603
|
'is-displacement-normal': displacement === 'normal',
|
|
571
604
|
'is-displacement-up': displacement === 'up',
|
|
572
605
|
'is-displacement-down': displacement === 'down',
|
|
573
606
|
'is-after-dragged-blocks': isAfterDraggedBlocks,
|
|
574
607
|
'is-nesting': isNesting,
|
|
608
|
+
'is-disabled': isDisabled,
|
|
575
609
|
} );
|
|
576
610
|
|
|
577
611
|
// Only include all selected blocks if the currently clicked on block
|
|
@@ -582,19 +616,28 @@ function ListViewBlock( {
|
|
|
582
616
|
? selectedClientIds
|
|
583
617
|
: [ clientId ];
|
|
584
618
|
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
619
|
+
const getListViewBlockTabIndex = ( rovingTabIndex ) => {
|
|
620
|
+
if ( isDisabled ) {
|
|
621
|
+
return -1;
|
|
622
|
+
}
|
|
623
|
+
|
|
624
|
+
// Detect if there is a block in the canvas currently being edited and multi-selection is not happening.
|
|
625
|
+
if ( isSelected && selectedClientIds.length === 1 ) {
|
|
626
|
+
return 0;
|
|
627
|
+
}
|
|
628
|
+
|
|
629
|
+
return rovingTabIndex;
|
|
630
|
+
};
|
|
588
631
|
|
|
589
632
|
return (
|
|
590
633
|
<ListViewLeaf
|
|
591
634
|
className={ classes }
|
|
592
635
|
isDragged={ isDragged }
|
|
593
636
|
onKeyDown={ onKeyDown }
|
|
594
|
-
onMouseEnter={ onMouseEnter }
|
|
595
|
-
onMouseLeave={ onMouseLeave }
|
|
596
|
-
onFocus={ onMouseEnter }
|
|
597
|
-
onBlur={ onMouseLeave }
|
|
637
|
+
onMouseEnter={ isDisabled ? undefined : onMouseEnter }
|
|
638
|
+
onMouseLeave={ isDisabled ? undefined : onMouseLeave }
|
|
639
|
+
onFocus={ isDisabled ? undefined : onMouseEnter }
|
|
640
|
+
onBlur={ isDisabled ? undefined : onMouseLeave }
|
|
598
641
|
level={ level }
|
|
599
642
|
position={ position }
|
|
600
643
|
rowCount={ rowCount }
|
|
@@ -615,22 +658,25 @@ function ListViewBlock( {
|
|
|
615
658
|
<ListViewBlockContents
|
|
616
659
|
block={ block }
|
|
617
660
|
onClick={ selectEditorBlock }
|
|
618
|
-
onContextMenu={
|
|
661
|
+
onContextMenu={
|
|
662
|
+
isDisabled ? undefined : onContextMenu
|
|
663
|
+
}
|
|
619
664
|
onMouseDown={ onMouseDown }
|
|
620
|
-
onToggleExpanded={
|
|
665
|
+
onToggleExpanded={
|
|
666
|
+
isDisabled ? undefined : toggleExpanded
|
|
667
|
+
}
|
|
621
668
|
isSelected={ isSelected }
|
|
622
669
|
position={ position }
|
|
623
670
|
siblingBlockCount={ siblingBlockCount }
|
|
624
671
|
level={ level }
|
|
625
672
|
ref={ ref }
|
|
626
|
-
tabIndex={
|
|
627
|
-
currentlyEditingBlockInCanvas ? 0 : tabIndex
|
|
628
|
-
}
|
|
673
|
+
tabIndex={ getListViewBlockTabIndex( tabIndex ) }
|
|
629
674
|
onFocus={ onFocus }
|
|
630
675
|
isExpanded={ canEditBlock ? isExpanded : undefined }
|
|
631
676
|
selectedClientIds={ selectedClientIds }
|
|
632
677
|
ariaDescribedBy={ descriptionId }
|
|
633
678
|
visibilityLabel={ blockVisibilityDescription }
|
|
679
|
+
isDisabled={ isDisabled }
|
|
634
680
|
/>
|
|
635
681
|
<AriaReferencedText id={ descriptionId }>
|
|
636
682
|
{ [
|
|
@@ -676,7 +722,7 @@ function ListViewBlock( {
|
|
|
676
722
|
</>
|
|
677
723
|
) }
|
|
678
724
|
|
|
679
|
-
{
|
|
725
|
+
{ canShowBlockActions && BlockSettingsMenu && (
|
|
680
726
|
<TreeGridCell
|
|
681
727
|
className={ listViewBlockSettingsClassName }
|
|
682
728
|
aria-selected={ !! isSelected }
|
|
@@ -15,7 +15,11 @@ export default function ListViewExpander( { onClick } ) {
|
|
|
15
15
|
// For the current tree grid implementation, please do not try to make this a button.
|
|
16
16
|
<span
|
|
17
17
|
className="block-editor-list-view__expander"
|
|
18
|
-
onClick={
|
|
18
|
+
onClick={
|
|
19
|
+
onClick
|
|
20
|
+
? ( event ) => onClick( event, { forceToggle: true } )
|
|
21
|
+
: undefined
|
|
22
|
+
}
|
|
19
23
|
aria-hidden="true"
|
|
20
24
|
data-testid="list-view-expander"
|
|
21
25
|
>
|
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
box-shadow:
|
|
96
96
|
inset 0 0 0 1px $white,
|
|
97
97
|
0 0 0 var(--wp-admin-border-width-focus)
|
|
98
|
-
var(--
|
|
98
|
+
var(--wpds-color-stroke-focus);
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
101
|
&.is-selected.is-synced .block-editor-list-view-block-contents:focus {
|
|
@@ -272,7 +272,7 @@
|
|
|
272
272
|
border-radius: inherit;
|
|
273
273
|
box-shadow:
|
|
274
274
|
inset 0 0 0 var(--wp-admin-border-width-focus)
|
|
275
|
-
var(--
|
|
275
|
+
var(--wpds-color-stroke-focus);
|
|
276
276
|
z-index: 2;
|
|
277
277
|
pointer-events: none;
|
|
278
278
|
}
|
|
@@ -283,11 +283,10 @@
|
|
|
283
283
|
right: 0;
|
|
284
284
|
}
|
|
285
285
|
|
|
286
|
-
&.is-nesting .block-editor-list-view__menu
|
|
287
|
-
.block-editor-list-view-block__menu:focus {
|
|
286
|
+
&.is-nesting .block-editor-list-view__menu {
|
|
288
287
|
box-shadow:
|
|
289
288
|
inset 0 0 0 var(--wp-admin-border-width-focus)
|
|
290
|
-
var(--
|
|
289
|
+
var(--wpds-color-stroke-focus);
|
|
291
290
|
z-index: 1;
|
|
292
291
|
}
|
|
293
292
|
|
|
@@ -447,6 +446,25 @@
|
|
|
447
446
|
box-shadow: 0 0 0 $radius-small var(--wp-admin-theme-color);
|
|
448
447
|
}
|
|
449
448
|
}
|
|
449
|
+
|
|
450
|
+
&.is-disabled {
|
|
451
|
+
opacity: 0.2;
|
|
452
|
+
@media not ( prefers-reduced-motion ) {
|
|
453
|
+
transition: opacity 0.1s linear;
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
&:hover {
|
|
457
|
+
opacity: 0.2;
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
.block-editor-list-view__expander {
|
|
461
|
+
cursor: default;
|
|
462
|
+
}
|
|
463
|
+
|
|
464
|
+
.block-editor-list-view-block-select-button:hover {
|
|
465
|
+
color: inherit;
|
|
466
|
+
}
|
|
467
|
+
}
|
|
450
468
|
}
|
|
451
469
|
|
|
452
470
|
// First level of indentation is aria-level 2, max indent is 8.
|
|
@@ -16,14 +16,14 @@ export default function useListViewClientIds( { blocks, rootClientId } ) {
|
|
|
16
16
|
const {
|
|
17
17
|
getDraggedBlockClientIds,
|
|
18
18
|
getSelectedBlockClientIds,
|
|
19
|
-
|
|
19
|
+
getListViewClientIdsTree,
|
|
20
20
|
} = unlock( select( blockEditorStore ) );
|
|
21
21
|
|
|
22
22
|
return {
|
|
23
23
|
selectedClientIds: getSelectedBlockClientIds(),
|
|
24
24
|
draggedClientIds: getDraggedBlockClientIds(),
|
|
25
25
|
clientIdsTree:
|
|
26
|
-
blocks ??
|
|
26
|
+
blocks ?? getListViewClientIdsTree( rootClientId ),
|
|
27
27
|
};
|
|
28
28
|
},
|
|
29
29
|
[ blocks, rootClientId ]
|