@wordpress/block-editor 14.5.0 → 14.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/README.md +0 -8
- package/build/autocompleters/block.js +13 -5
- package/build/autocompleters/block.js.map +1 -1
- package/build/components/block-canvas/index.js +10 -0
- package/build/components/block-canvas/index.js.map +1 -1
- package/build/components/block-card/index.js +2 -2
- package/build/components/block-card/index.js.map +1 -1
- package/build/components/block-full-height-alignment-control/index.js +1 -1
- package/build/components/block-full-height-alignment-control/index.js.map +1 -1
- package/build/components/block-list/block.js +15 -29
- package/build/components/block-list/block.js.map +1 -1
- package/build/components/block-list/block.native.js +1 -7
- package/build/components/block-list/block.native.js.map +1 -1
- package/build/components/block-list/index.js +5 -5
- package/build/components/block-list/index.js.map +1 -1
- package/build/components/block-list/use-block-props/index.js +1 -2
- package/build/components/block-list/use-block-props/index.js.map +1 -1
- package/build/components/block-list/use-block-props/use-focus-first-element.js +4 -3
- package/build/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
- package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js +3 -6
- package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
- package/build/components/block-list/use-in-between-inserter.js +1 -1
- package/build/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build/components/block-patterns-list/index.js +23 -26
- package/build/components/block-patterns-list/index.js.map +1 -1
- package/build/components/block-patterns-paging/index.js +1 -1
- package/build/components/block-patterns-paging/index.js.map +1 -1
- package/build/components/block-popover/index.js +3 -46
- package/build/components/block-popover/index.js.map +1 -1
- package/build/components/block-preview/async.js +51 -0
- package/build/components/block-preview/async.js.map +1 -0
- package/build/components/block-preview/index.js +6 -3
- package/build/components/block-preview/index.js.map +1 -1
- package/build/components/block-settings-menu/block-settings-dropdown.js +5 -0
- package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build/components/block-settings-menu/index.js +4 -3
- package/build/components/block-settings-menu/index.js.map +1 -1
- package/build/components/block-toolbar/change-design.js +119 -0
- package/build/components/block-toolbar/change-design.js.map +1 -0
- package/build/components/block-toolbar/index.js +19 -7
- package/build/components/block-toolbar/index.js.map +1 -1
- package/build/components/block-tools/index.js +16 -19
- package/build/components/block-tools/index.js.map +1 -1
- package/build/components/block-tools/insertion-point.js +4 -3
- package/build/components/block-tools/insertion-point.js.map +1 -1
- package/build/components/block-tools/use-block-toolbar-popover-props.js +1 -1
- package/build/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
- package/build/components/block-tools/use-show-block-tools.js +7 -10
- package/build/components/block-tools/use-show-block-tools.js.map +1 -1
- package/build/components/block-tools/zoom-out-mode-inserters.js +20 -29
- package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
- package/build/components/block-variation-transforms/index.js +2 -2
- package/build/components/block-variation-transforms/index.js.map +1 -1
- package/build/components/block-vertical-alignment-control/ui.js +6 -10
- package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
- package/build/components/border-radius-control/linked-button.js +7 -10
- package/build/components/border-radius-control/linked-button.js.map +1 -1
- package/build/components/collab/block-comment-icon-slot.js +18 -0
- package/build/components/collab/block-comment-icon-slot.js.map +1 -0
- package/build/components/collab/block-comment-icon-toolbar-slot.js +18 -0
- package/build/components/collab/block-comment-icon-toolbar-slot.js.map +1 -0
- package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +7 -1
- package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
- package/build/components/convert-to-group-buttons/toolbar.js +4 -4
- package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
- package/build/components/global-styles/color-panel.js +1 -4
- package/build/components/global-styles/color-panel.js.map +1 -1
- package/build/components/global-styles/dimensions-panel.js +26 -14
- package/build/components/global-styles/dimensions-panel.js.map +1 -1
- package/build/components/global-styles/use-global-styles-context.native.js +6 -0
- package/build/components/global-styles/use-global-styles-context.native.js.map +1 -1
- package/build/components/iframe/get-compatibility-styles.js +4 -4
- package/build/components/iframe/get-compatibility-styles.js.map +1 -1
- package/build/components/iframe/index.js +33 -22
- package/build/components/iframe/index.js.map +1 -1
- package/build/components/image-size-control/index.js +61 -20
- package/build/components/image-size-control/index.js.map +1 -1
- package/build/components/inner-blocks/index.js +9 -5
- package/build/components/inner-blocks/index.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/pattern-list.js +2 -2
- package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/index.js +1 -2
- package/build/components/inserter/block-patterns-tab/index.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +5 -3
- package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/patterns-filter.js +1 -1
- package/build/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/use-pattern-categories.js +3 -0
- package/build/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/utils.js +5 -1
- package/build/components/inserter/block-patterns-tab/utils.js.map +1 -1
- package/build/components/inserter/category-tabs/index.js +15 -2
- package/build/components/inserter/category-tabs/index.js.map +1 -1
- package/build/components/inserter/hooks/use-block-types-state.js +1 -1
- package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
- package/build/components/inserter/hooks/use-patterns-paging.js +0 -5
- package/build/components/inserter/hooks/use-patterns-paging.js.map +1 -1
- package/build/components/inserter/menu.js +4 -2
- package/build/components/inserter/menu.js.map +1 -1
- package/build/components/inserter/search-results.js +0 -2
- package/build/components/inserter/search-results.js.map +1 -1
- package/build/components/inserter-button/index.native.js +1 -1
- package/build/components/inserter-button/index.native.js.map +1 -1
- package/build/components/inspector-controls-tabs/index.js +0 -2
- package/build/components/inspector-controls-tabs/index.js.map +1 -1
- package/build/components/inspector-controls-tabs/utils.js +3 -6
- package/build/components/inspector-controls-tabs/utils.js.map +1 -1
- package/build/components/link-control/link-preview.js +12 -9
- package/build/components/link-control/link-preview.js.map +1 -1
- package/build/components/list-view/appender.js +4 -3
- package/build/components/list-view/appender.js.map +1 -1
- package/build/components/list-view/branch.js +6 -5
- package/build/components/list-view/branch.js.map +1 -1
- package/build/components/list-view/index.js +1 -2
- package/build/components/list-view/index.js.map +1 -1
- package/build/components/media-placeholder/index.js +4 -4
- package/build/components/media-placeholder/index.js.map +1 -1
- package/build/components/provider/index.js +1 -1
- package/build/components/provider/index.js.map +1 -1
- package/build/components/rich-text/event-listeners/index.js +3 -1
- package/build/components/rich-text/event-listeners/index.js.map +1 -1
- package/build/components/rich-text/index.js +1 -1
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/rich-text/index.native.js +2 -6
- package/build/components/rich-text/index.native.js.map +1 -1
- package/build/components/spacing-sizes-control/index.js +2 -2
- package/build/components/spacing-sizes-control/index.js.map +1 -1
- package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +3 -3
- package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
- package/build/components/spacing-sizes-control/linked-button.js +1 -5
- package/build/components/spacing-sizes-control/linked-button.js.map +1 -1
- package/build/components/tabbed-sidebar/index.js +1 -1
- package/build/components/tabbed-sidebar/index.js.map +1 -1
- package/build/components/tool-selector/index.js +1 -4
- package/build/components/tool-selector/index.js.map +1 -1
- package/build/components/url-input/index.js +4 -2
- package/build/components/url-input/index.js.map +1 -1
- package/build/components/use-block-commands/index.js +6 -7
- package/build/components/use-block-commands/index.js.map +1 -1
- package/build/components/use-block-drop-zone/index.js +5 -5
- package/build/components/use-block-drop-zone/index.js.map +1 -1
- package/build/components/use-block-drop-zone/index.native.js +0 -1
- package/build/components/use-block-drop-zone/index.native.js.map +1 -1
- package/build/components/use-moving-animation/index.js +1 -3
- package/build/components/use-moving-animation/index.js.map +1 -1
- package/build/components/use-settings/index.js +1 -3
- package/build/components/use-settings/index.js.map +1 -1
- package/build/components/writing-flow/index.js +5 -3
- package/build/components/writing-flow/index.js.map +1 -1
- package/build/components/writing-flow/use-tab-nav.js +2 -3
- package/build/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build/hooks/block-bindings.js +19 -8
- package/build/hooks/block-bindings.js.map +1 -1
- package/build/hooks/contrast-checker.js +0 -1
- package/build/hooks/contrast-checker.js.map +1 -1
- package/build/hooks/duotone.js +2 -2
- package/build/hooks/duotone.js.map +1 -1
- package/build/hooks/font-family.js +1 -1
- package/build/hooks/font-family.js.map +1 -1
- package/build/hooks/style.js +4 -1
- package/build/hooks/style.js.map +1 -1
- package/build/hooks/supports.js +6 -6
- package/build/hooks/supports.js.map +1 -1
- package/build/hooks/typography.js +5 -5
- package/build/hooks/typography.js.map +1 -1
- package/build/hooks/use-zoom-out.js +13 -22
- package/build/hooks/use-zoom-out.js.map +1 -1
- package/build/hooks/utils.js +2 -2
- package/build/hooks/utils.js.map +1 -1
- package/build/index.js +0 -7
- package/build/index.js.map +1 -1
- package/build/lock-unlock.js.map +1 -1
- package/build/private-apis.js +6 -3
- package/build/private-apis.js.map +1 -1
- package/build/store/actions.js +2 -33
- package/build/store/actions.js.map +1 -1
- package/build/store/defaults.js +1 -1
- package/build/store/defaults.js.map +1 -1
- package/build/store/private-actions.js +57 -8
- package/build/store/private-actions.js.map +1 -1
- package/build/store/private-selectors.js +10 -22
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/reducer.js +16 -6
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +53 -15
- package/build/store/selectors.js.map +1 -1
- package/build/store/utils.js +5 -4
- package/build/store/utils.js.map +1 -1
- package/build/utils/dom.js +37 -17
- package/build/utils/dom.js.map +1 -1
- package/build/utils/get-font-styles-and-weights.js +1 -1
- package/build/utils/get-font-styles-and-weights.js.map +1 -1
- package/build/utils/transform-styles/index.js +4 -3
- package/build/utils/transform-styles/index.js.map +1 -1
- package/build-module/autocompleters/block.js +14 -6
- package/build-module/autocompleters/block.js.map +1 -1
- package/build-module/components/block-canvas/index.js +11 -1
- package/build-module/components/block-canvas/index.js.map +1 -1
- package/build-module/components/block-card/index.js +3 -3
- package/build-module/components/block-card/index.js.map +1 -1
- package/build-module/components/block-full-height-alignment-control/index.js +1 -1
- package/build-module/components/block-full-height-alignment-control/index.js.map +1 -1
- package/build-module/components/block-list/block.js +16 -28
- package/build-module/components/block-list/block.js.map +1 -1
- package/build-module/components/block-list/block.native.js +1 -7
- package/build-module/components/block-list/block.native.js.map +1 -1
- package/build-module/components/block-list/index.js +5 -5
- package/build-module/components/block-list/index.js.map +1 -1
- package/build-module/components/block-list/use-block-props/index.js +1 -2
- package/build-module/components/block-list/use-block-props/index.js.map +1 -1
- package/build-module/components/block-list/use-block-props/use-focus-first-element.js +4 -3
- package/build-module/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
- package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js +3 -6
- package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
- package/build-module/components/block-list/use-in-between-inserter.js +1 -1
- package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build-module/components/block-patterns-list/index.js +23 -26
- package/build-module/components/block-patterns-list/index.js.map +1 -1
- package/build-module/components/block-patterns-paging/index.js +1 -1
- package/build-module/components/block-patterns-paging/index.js.map +1 -1
- package/build-module/components/block-popover/index.js +4 -47
- package/build-module/components/block-popover/index.js.map +1 -1
- package/build-module/components/block-preview/async.js +44 -0
- package/build-module/components/block-preview/async.js.map +1 -0
- package/build-module/components/block-preview/index.js +6 -3
- package/build-module/components/block-preview/index.js.map +1 -1
- package/build-module/components/block-settings-menu/block-settings-dropdown.js +5 -0
- package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build-module/components/block-settings-menu/index.js +5 -4
- package/build-module/components/block-settings-menu/index.js.map +1 -1
- package/build-module/components/block-toolbar/change-design.js +111 -0
- package/build-module/components/block-toolbar/change-design.js.map +1 -0
- package/build-module/components/block-toolbar/index.js +19 -7
- package/build-module/components/block-toolbar/index.js.map +1 -1
- package/build-module/components/block-tools/index.js +17 -20
- package/build-module/components/block-tools/index.js.map +1 -1
- package/build-module/components/block-tools/insertion-point.js +4 -3
- package/build-module/components/block-tools/insertion-point.js.map +1 -1
- package/build-module/components/block-tools/use-block-toolbar-popover-props.js +2 -2
- package/build-module/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
- package/build-module/components/block-tools/use-show-block-tools.js +7 -10
- package/build-module/components/block-tools/use-show-block-tools.js.map +1 -1
- package/build-module/components/block-tools/zoom-out-mode-inserters.js +20 -29
- package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
- package/build-module/components/block-variation-transforms/index.js +2 -2
- package/build-module/components/block-variation-transforms/index.js.map +1 -1
- package/build-module/components/block-vertical-alignment-control/ui.js +6 -10
- package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
- package/build-module/components/border-radius-control/linked-button.js +8 -11
- package/build-module/components/border-radius-control/linked-button.js.map +1 -1
- package/build-module/components/collab/block-comment-icon-slot.js +11 -0
- package/build-module/components/collab/block-comment-icon-slot.js.map +1 -0
- package/build-module/components/collab/block-comment-icon-toolbar-slot.js +11 -0
- package/build-module/components/collab/block-comment-icon-toolbar-slot.js.map +1 -0
- package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +7 -1
- package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
- package/build-module/components/convert-to-group-buttons/toolbar.js +4 -4
- package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
- package/build-module/components/global-styles/color-panel.js +2 -5
- package/build-module/components/global-styles/color-panel.js.map +1 -1
- package/build-module/components/global-styles/dimensions-panel.js +26 -14
- package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-context.native.js +6 -0
- package/build-module/components/global-styles/use-global-styles-context.native.js.map +1 -1
- package/build-module/components/iframe/get-compatibility-styles.js +4 -4
- package/build-module/components/iframe/get-compatibility-styles.js.map +1 -1
- package/build-module/components/iframe/index.js +33 -22
- package/build-module/components/iframe/index.js.map +1 -1
- package/build-module/components/image-size-control/index.js +62 -21
- package/build-module/components/image-size-control/index.js.map +1 -1
- package/build-module/components/inner-blocks/index.js +9 -5
- package/build-module/components/inner-blocks/index.js.map +1 -1
- package/build-module/components/inserter/block-patterns-explorer/pattern-list.js +2 -2
- package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/index.js +1 -2
- package/build-module/components/inserter/block-patterns-tab/index.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +6 -4
- package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/patterns-filter.js +1 -1
- package/build-module/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js +4 -1
- package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/utils.js +4 -0
- package/build-module/components/inserter/block-patterns-tab/utils.js.map +1 -1
- package/build-module/components/inserter/category-tabs/index.js +15 -2
- package/build-module/components/inserter/category-tabs/index.js.map +1 -1
- package/build-module/components/inserter/hooks/use-block-types-state.js +1 -1
- package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
- package/build-module/components/inserter/hooks/use-patterns-paging.js +1 -6
- package/build-module/components/inserter/hooks/use-patterns-paging.js.map +1 -1
- package/build-module/components/inserter/menu.js +5 -3
- package/build-module/components/inserter/menu.js.map +1 -1
- package/build-module/components/inserter/search-results.js +0 -2
- package/build-module/components/inserter/search-results.js.map +1 -1
- package/build-module/components/inserter-button/index.native.js +1 -1
- package/build-module/components/inserter-button/index.native.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/index.js +0 -2
- package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/utils.js +3 -6
- package/build-module/components/inspector-controls-tabs/utils.js.map +1 -1
- package/build-module/components/link-control/link-preview.js +13 -10
- package/build-module/components/link-control/link-preview.js.map +1 -1
- package/build-module/components/list-view/appender.js +4 -3
- package/build-module/components/list-view/appender.js.map +1 -1
- package/build-module/components/list-view/branch.js +7 -6
- package/build-module/components/list-view/branch.js.map +1 -1
- package/build-module/components/list-view/index.js +1 -2
- package/build-module/components/list-view/index.js.map +1 -1
- package/build-module/components/media-placeholder/index.js +4 -4
- package/build-module/components/media-placeholder/index.js.map +1 -1
- package/build-module/components/provider/index.js +1 -1
- package/build-module/components/provider/index.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/index.js +4 -2
- package/build-module/components/rich-text/event-listeners/index.js.map +1 -1
- package/build-module/components/rich-text/index.js +1 -1
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/rich-text/index.native.js +2 -6
- package/build-module/components/rich-text/index.native.js.map +1 -1
- package/build-module/components/spacing-sizes-control/index.js +3 -3
- package/build-module/components/spacing-sizes-control/index.js.map +1 -1
- package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +4 -4
- package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
- package/build-module/components/spacing-sizes-control/linked-button.js +2 -6
- package/build-module/components/spacing-sizes-control/linked-button.js.map +1 -1
- package/build-module/components/tabbed-sidebar/index.js +1 -1
- package/build-module/components/tabbed-sidebar/index.js.map +1 -1
- package/build-module/components/tool-selector/index.js +1 -4
- package/build-module/components/tool-selector/index.js.map +1 -1
- package/build-module/components/url-input/index.js +4 -2
- package/build-module/components/url-input/index.js.map +1 -1
- package/build-module/components/use-block-commands/index.js +5 -5
- package/build-module/components/use-block-commands/index.js.map +1 -1
- package/build-module/components/use-block-drop-zone/index.js +5 -5
- package/build-module/components/use-block-drop-zone/index.js.map +1 -1
- package/build-module/components/use-block-drop-zone/index.native.js +0 -1
- package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
- package/build-module/components/use-moving-animation/index.js +1 -3
- package/build-module/components/use-moving-animation/index.js.map +1 -1
- package/build-module/components/use-settings/index.js +1 -3
- package/build-module/components/use-settings/index.js.map +1 -1
- package/build-module/components/writing-flow/index.js +5 -3
- package/build-module/components/writing-flow/index.js.map +1 -1
- package/build-module/components/writing-flow/use-tab-nav.js +2 -3
- package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build-module/hooks/block-bindings.js +20 -9
- package/build-module/hooks/block-bindings.js.map +1 -1
- package/build-module/hooks/contrast-checker.js +0 -1
- package/build-module/hooks/contrast-checker.js.map +1 -1
- package/build-module/hooks/duotone.js +2 -2
- package/build-module/hooks/duotone.js.map +1 -1
- package/build-module/hooks/font-family.js +1 -1
- package/build-module/hooks/font-family.js.map +1 -1
- package/build-module/hooks/style.js +4 -1
- package/build-module/hooks/style.js.map +1 -1
- package/build-module/hooks/supports.js +6 -6
- package/build-module/hooks/supports.js.map +1 -1
- package/build-module/hooks/typography.js +5 -5
- package/build-module/hooks/typography.js.map +1 -1
- package/build-module/hooks/use-zoom-out.js +15 -23
- package/build-module/hooks/use-zoom-out.js.map +1 -1
- package/build-module/hooks/utils.js +2 -2
- package/build-module/hooks/utils.js.map +1 -1
- package/build-module/index.js +1 -1
- package/build-module/index.js.map +1 -1
- package/build-module/lock-unlock.js.map +1 -1
- package/build-module/private-apis.js +7 -5
- package/build-module/private-apis.js.map +1 -1
- package/build-module/store/actions.js +2 -33
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/defaults.js +1 -1
- package/build-module/store/defaults.js.map +1 -1
- package/build-module/store/private-actions.js +54 -7
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/private-selectors.js +10 -21
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/reducer.js +16 -6
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +54 -16
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/store/utils.js +3 -3
- package/build-module/store/utils.js.map +1 -1
- package/build-module/utils/dom.js +35 -16
- package/build-module/utils/dom.js.map +1 -1
- package/build-module/utils/get-font-styles-and-weights.js +2 -2
- package/build-module/utils/get-font-styles-and-weights.js.map +1 -1
- package/build-module/utils/transform-styles/index.js +3 -2
- package/build-module/utils/transform-styles/index.js.map +1 -1
- package/build-style/content-rtl.css +16 -10
- package/build-style/content.css +16 -10
- package/build-style/style-rtl.css +47 -25
- package/build-style/style.css +47 -25
- package/build-types/utils/dom.d.ts +7 -9
- package/build-types/utils/dom.d.ts.map +1 -1
- package/package.json +34 -32
- package/src/autocompleters/block.js +16 -7
- package/src/components/block-canvas/index.js +17 -1
- package/src/components/block-canvas/style.scss +3 -1
- package/src/components/block-card/index.js +3 -3
- package/src/components/block-full-height-alignment-control/index.js +1 -1
- package/src/components/block-inspector/style.scss +2 -7
- package/src/components/block-list/block.js +29 -50
- package/src/components/block-list/block.native.js +0 -4
- package/src/components/block-list/content.scss +1 -1
- package/src/components/block-list/index.js +4 -4
- package/src/components/block-list/use-block-props/index.js +0 -2
- package/src/components/block-list/use-block-props/use-focus-first-element.js +5 -3
- package/src/components/block-list/use-block-props/use-selected-block-event-handlers.js +7 -20
- package/src/components/block-list/use-in-between-inserter.js +1 -1
- package/src/components/block-patterns-list/README.md +8 -8
- package/src/components/block-patterns-list/index.js +35 -51
- package/src/components/block-patterns-list/stories/fixtures.js +834 -0
- package/src/components/block-patterns-list/stories/index.story.js +64 -0
- package/src/components/block-patterns-list/style.scss +2 -0
- package/src/components/block-patterns-paging/index.js +1 -1
- package/src/components/block-popover/index.js +4 -66
- package/src/components/block-preview/async.js +43 -0
- package/src/components/block-preview/index.js +8 -3
- package/src/components/block-settings-menu/block-settings-dropdown.js +4 -0
- package/src/components/block-settings-menu/index.js +3 -0
- package/src/components/block-toolbar/change-design.js +127 -0
- package/src/components/block-toolbar/index.js +25 -8
- package/src/components/block-toolbar/style.scss +16 -0
- package/src/components/block-tools/index.js +30 -27
- package/src/components/block-tools/insertion-point.js +4 -3
- package/src/components/block-tools/style.scss +12 -20
- package/src/components/block-tools/use-block-toolbar-popover-props.js +2 -2
- package/src/components/block-tools/use-show-block-tools.js +3 -14
- package/src/components/block-tools/zoom-out-mode-inserters.js +25 -40
- package/src/components/block-variation-transforms/index.js +2 -2
- package/src/components/block-vertical-alignment-control/ui.js +11 -15
- package/src/components/border-radius-control/linked-button.js +9 -11
- package/src/components/collab/block-comment-icon-slot.js +12 -0
- package/src/components/collab/block-comment-icon-toolbar-slot.js +12 -0
- package/src/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +7 -1
- package/src/components/convert-to-group-buttons/toolbar.js +4 -4
- package/src/components/default-block-appender/content.scss +13 -19
- package/src/components/global-styles/color-panel.js +2 -10
- package/src/components/global-styles/dimensions-panel.js +22 -16
- package/src/components/global-styles/test/use-global-styles-context.native.js +1 -0
- package/src/components/global-styles/use-global-styles-context.native.js +6 -0
- package/src/components/iframe/content.scss +4 -9
- package/src/components/iframe/get-compatibility-styles.js +4 -9
- package/src/components/iframe/index.js +48 -34
- package/src/components/iframe/style.scss +2 -3
- package/src/components/image-size-control/index.js +74 -43
- package/src/components/image-size-control/test/index.js +5 -63
- package/src/components/inner-blocks/index.js +12 -6
- package/src/components/inserter/block-patterns-explorer/pattern-list.js +3 -6
- package/src/components/inserter/block-patterns-tab/index.js +0 -1
- package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +10 -4
- package/src/components/inserter/block-patterns-tab/patterns-filter.js +1 -1
- package/src/components/inserter/block-patterns-tab/use-pattern-categories.js +8 -0
- package/src/components/inserter/block-patterns-tab/utils.js +5 -0
- package/src/components/inserter/category-tabs/index.js +16 -2
- package/src/components/inserter/hooks/use-block-types-state.js +6 -1
- package/src/components/inserter/hooks/use-patterns-paging.js +1 -6
- package/src/components/inserter/menu.js +6 -4
- package/src/components/inserter/search-results.js +0 -6
- package/src/components/inserter/style.scss +13 -0
- package/src/components/inserter-button/index.native.js +1 -1
- package/src/components/inspector-controls-tabs/index.js +1 -6
- package/src/components/inspector-controls-tabs/utils.js +0 -3
- package/src/components/link-control/link-preview.js +15 -8
- package/src/components/link-control/test/index.js +63 -24
- package/src/components/list-view/appender.js +5 -6
- package/src/components/list-view/branch.js +8 -6
- package/src/components/list-view/index.js +1 -2
- package/src/components/media-placeholder/index.js +4 -4
- package/src/components/provider/index.js +1 -3
- package/src/components/provider/test/experimental-provider.js +43 -1
- package/src/components/rich-text/event-listeners/index.js +4 -2
- package/src/components/rich-text/index.js +8 -1
- package/src/components/rich-text/index.native.js +0 -2
- package/src/components/spacing-sizes-control/index.js +3 -3
- package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +4 -4
- package/src/components/spacing-sizes-control/linked-button.js +2 -12
- package/src/components/tabbed-sidebar/index.js +1 -1
- package/src/components/tabbed-sidebar/style.scss +1 -1
- package/src/components/tool-selector/index.js +1 -5
- package/src/components/url-input/index.js +4 -5
- package/src/components/use-block-commands/index.js +245 -234
- package/src/components/use-block-drop-zone/index.js +5 -5
- package/src/components/use-block-drop-zone/index.native.js +0 -1
- package/src/components/use-moving-animation/index.js +0 -1
- package/src/components/use-settings/index.js +0 -1
- package/src/components/writing-flow/index.js +5 -3
- package/src/components/writing-flow/use-tab-nav.js +1 -2
- package/src/hooks/block-bindings.js +48 -31
- package/src/hooks/contrast-checker.js +0 -1
- package/src/hooks/duotone.js +2 -2
- package/src/hooks/font-family.js +1 -1
- package/src/hooks/style.js +7 -3
- package/src/hooks/supports.js +6 -6
- package/src/hooks/typography.js +5 -5
- package/src/hooks/use-zoom-out.js +14 -34
- package/src/hooks/utils.js +7 -2
- package/src/index.js +0 -1
- package/src/private-apis.js +6 -3
- package/src/store/actions.js +3 -52
- package/src/store/defaults.js +2 -1
- package/src/store/private-actions.js +71 -8
- package/src/store/private-selectors.js +14 -25
- package/src/store/reducer.js +25 -11
- package/src/store/selectors.js +116 -53
- package/src/store/test/actions.js +41 -0
- package/src/store/test/private-selectors.js +5 -0
- package/src/store/test/reducer.js +23 -0
- package/src/store/utils.js +12 -11
- package/src/utils/dom.js +42 -17
- package/src/utils/get-font-styles-and-weights.js +2 -2
- package/src/utils/test/dom.js +224 -0
- package/src/utils/transform-styles/index.js +3 -2
- package/tsconfig.json +1 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/build/components/block-list/use-block-props/use-zoom-out-mode-exit.js +0 -57
- package/build/components/block-list/use-block-props/use-zoom-out-mode-exit.js.map +0 -1
- package/build/components/block-toolbar/shuffle.js +0 -110
- package/build/components/block-toolbar/shuffle.js.map +0 -1
- package/build/components/block-tools/zoom-out-popover.js +0 -58
- package/build/components/block-tools/zoom-out-popover.js.map +0 -1
- package/build/components/block-tools/zoom-out-toolbar.js +0 -132
- package/build/components/block-tools/zoom-out-toolbar.js.map +0 -1
- package/build/components/block-vertical-alignment-control/icons.js +0 -48
- package/build/components/block-vertical-alignment-control/icons.js.map +0 -1
- package/build-module/components/block-list/use-block-props/use-zoom-out-mode-exit.js +0 -51
- package/build-module/components/block-list/use-block-props/use-zoom-out-mode-exit.js.map +0 -1
- package/build-module/components/block-toolbar/shuffle.js +0 -103
- package/build-module/components/block-toolbar/shuffle.js.map +0 -1
- package/build-module/components/block-tools/zoom-out-popover.js +0 -49
- package/build-module/components/block-tools/zoom-out-popover.js.map +0 -1
- package/build-module/components/block-tools/zoom-out-toolbar.js +0 -124
- package/build-module/components/block-tools/zoom-out-toolbar.js.map +0 -1
- package/build-module/components/block-vertical-alignment-control/icons.js +0 -41
- package/build-module/components/block-vertical-alignment-control/icons.js.map +0 -1
- package/src/components/block-list/use-block-props/use-zoom-out-mode-exit.js +0 -65
- package/src/components/block-toolbar/shuffle.js +0 -111
- package/src/components/block-tools/zoom-out-popover.js +0 -47
- package/src/components/block-tools/zoom-out-toolbar.js +0 -135
- package/src/components/block-vertical-alignment-control/icons.js +0 -34
- /package/src/{lock-unlock.js → lock-unlock.ts} +0 -0
|
@@ -94,7 +94,12 @@ const useBlockTypesState = ( rootClientId, onInsert, isQuick ) => {
|
|
|
94
94
|
destinationClientId
|
|
95
95
|
);
|
|
96
96
|
},
|
|
97
|
-
[
|
|
97
|
+
[
|
|
98
|
+
getClosestAllowedInsertionPoint,
|
|
99
|
+
rootClientId,
|
|
100
|
+
onInsert,
|
|
101
|
+
createErrorNotice,
|
|
102
|
+
]
|
|
98
103
|
);
|
|
99
104
|
|
|
100
105
|
return [ items, categories, collections, onSelectItem ];
|
|
@@ -2,11 +2,10 @@
|
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
4
|
import { useMemo, useState, useEffect } from '@wordpress/element';
|
|
5
|
-
import {
|
|
5
|
+
import { usePrevious } from '@wordpress/compose';
|
|
6
6
|
import { getScrollContainer } from '@wordpress/dom';
|
|
7
7
|
|
|
8
8
|
const PAGE_SIZE = 20;
|
|
9
|
-
const INITIAL_INSERTER_RESULTS = 5;
|
|
10
9
|
|
|
11
10
|
/**
|
|
12
11
|
* Supplies values needed to page the patterns list client side.
|
|
@@ -42,9 +41,6 @@ export default function usePatternsPaging(
|
|
|
42
41
|
pageIndex * PAGE_SIZE + PAGE_SIZE
|
|
43
42
|
);
|
|
44
43
|
}, [ pageIndex, currentCategoryPatterns ] );
|
|
45
|
-
const categoryPatternsAsyncList = useAsyncList( categoryPatterns, {
|
|
46
|
-
step: INITIAL_INSERTER_RESULTS,
|
|
47
|
-
} );
|
|
48
44
|
const numPages = Math.ceil( currentCategoryPatterns.length / PAGE_SIZE );
|
|
49
45
|
const changePage = ( page ) => {
|
|
50
46
|
const scrollContainer = getScrollContainer(
|
|
@@ -68,7 +64,6 @@ export default function usePatternsPaging(
|
|
|
68
64
|
return {
|
|
69
65
|
totalItems,
|
|
70
66
|
categoryPatterns,
|
|
71
|
-
categoryPatternsAsyncList,
|
|
72
67
|
numPages,
|
|
73
68
|
changePage,
|
|
74
69
|
currentPage,
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
} from '@wordpress/element';
|
|
17
17
|
import { VisuallyHidden, SearchControl, Popover } from '@wordpress/components';
|
|
18
18
|
import { __ } from '@wordpress/i18n';
|
|
19
|
-
import { useDebouncedInput } from '@wordpress/compose';
|
|
19
|
+
import { useDebouncedInput, useViewportMatch } from '@wordpress/compose';
|
|
20
20
|
import { useSelect } from '@wordpress/data';
|
|
21
21
|
|
|
22
22
|
/**
|
|
@@ -33,6 +33,7 @@ import useInsertionPoint from './hooks/use-insertion-point';
|
|
|
33
33
|
import { store as blockEditorStore } from '../../store';
|
|
34
34
|
import TabbedSidebar from '../tabbed-sidebar';
|
|
35
35
|
import { useZoomOut } from '../../hooks/use-zoom-out';
|
|
36
|
+
import { unlock } from '../../lock-unlock';
|
|
36
37
|
|
|
37
38
|
const NOOP = () => {};
|
|
38
39
|
function InserterMenu(
|
|
@@ -54,8 +55,7 @@ function InserterMenu(
|
|
|
54
55
|
ref
|
|
55
56
|
) {
|
|
56
57
|
const isZoomOutMode = useSelect(
|
|
57
|
-
( select ) =>
|
|
58
|
-
select( blockEditorStore ).__unstableGetEditorMode() === 'zoom-out',
|
|
58
|
+
( select ) => unlock( select( blockEditorStore ) ).isZoomOut(),
|
|
59
59
|
[]
|
|
60
60
|
);
|
|
61
61
|
const [ filterValue, setFilterValue, delayedFilterValue ] =
|
|
@@ -67,6 +67,8 @@ function InserterMenu(
|
|
|
67
67
|
const [ patternFilter, setPatternFilter ] = useState( 'all' );
|
|
68
68
|
const [ selectedMediaCategory, setSelectedMediaCategory ] =
|
|
69
69
|
useState( null );
|
|
70
|
+
const isLargeViewport = useViewportMatch( 'large' );
|
|
71
|
+
|
|
70
72
|
function getInitialTab() {
|
|
71
73
|
if ( __experimentalInitialTab ) {
|
|
72
74
|
return __experimentalInitialTab;
|
|
@@ -80,7 +82,7 @@ function InserterMenu(
|
|
|
80
82
|
|
|
81
83
|
const shouldUseZoomOut =
|
|
82
84
|
selectedTab === 'patterns' || selectedTab === 'media';
|
|
83
|
-
useZoomOut( shouldUseZoomOut );
|
|
85
|
+
useZoomOut( shouldUseZoomOut && isLargeViewport );
|
|
84
86
|
|
|
85
87
|
const [ destinationRootClientId, onInsertBlocks, onToggleInsertionPoint ] =
|
|
86
88
|
useInsertionPoint( {
|
|
@@ -159,11 +159,6 @@ function InserterSearchResults( {
|
|
|
159
159
|
const currentShownBlockTypes = useAsyncList( filteredBlockTypes, {
|
|
160
160
|
step: INITIAL_INSERTER_RESULTS,
|
|
161
161
|
} );
|
|
162
|
-
const currentShownPatterns = useAsyncList(
|
|
163
|
-
currentShownBlockTypes.length === filteredBlockTypes.length
|
|
164
|
-
? filteredBlockPatterns
|
|
165
|
-
: EMPTY_ARRAY
|
|
166
|
-
);
|
|
167
162
|
|
|
168
163
|
const hasItems =
|
|
169
164
|
filteredBlockTypes.length > 0 || filteredBlockPatterns.length > 0;
|
|
@@ -190,7 +185,6 @@ function InserterSearchResults( {
|
|
|
190
185
|
>
|
|
191
186
|
<div className="block-editor-inserter__quick-inserter-patterns">
|
|
192
187
|
<BlockPatternsList
|
|
193
|
-
shownPatterns={ currentShownPatterns }
|
|
194
188
|
blockPatterns={ filteredBlockPatterns }
|
|
195
189
|
onClickPattern={ onClickPattern }
|
|
196
190
|
onHover={ onHoverPattern }
|
|
@@ -123,6 +123,12 @@ $block-inserter-tabs-height: 44px;
|
|
|
123
123
|
}
|
|
124
124
|
|
|
125
125
|
.block-editor-inserter__panel-header {
|
|
126
|
+
// Use `position: relative` to ensure any absolute positioned child elements are
|
|
127
|
+
// positioned relative to the panel header.
|
|
128
|
+
// This makes the overflow rule of the panel work correctly, particularly when the
|
|
129
|
+
// `VisuallyHidden` component is used within the inserter UI.
|
|
130
|
+
position: relative;
|
|
131
|
+
|
|
126
132
|
display: inline-flex;
|
|
127
133
|
align-items: center;
|
|
128
134
|
padding: $grid-unit-20 $grid-unit-20 0;
|
|
@@ -260,6 +266,13 @@ $block-inserter-tabs-height: 44px;
|
|
|
260
266
|
margin-top: $grid-unit-30;
|
|
261
267
|
}
|
|
262
268
|
|
|
269
|
+
.block-editor-inserter__patterns-filter-help {
|
|
270
|
+
padding: $grid-unit-20;
|
|
271
|
+
border-top: $border-width solid $gray-300;
|
|
272
|
+
color: $gray-700;
|
|
273
|
+
min-width: 280px;
|
|
274
|
+
}
|
|
275
|
+
|
|
263
276
|
.block-editor-inserter__media-list,
|
|
264
277
|
.block-editor-block-patterns-list {
|
|
265
278
|
overflow-y: auto;
|
|
@@ -54,7 +54,7 @@ class MenuItem extends Component {
|
|
|
54
54
|
const accessibilityLabelFormat = blockIsNew
|
|
55
55
|
? // translators: Newly available block name. %s: The localized block name
|
|
56
56
|
__( '%s block, newly available' )
|
|
57
|
-
: // translators: Block name.
|
|
57
|
+
: // translators: %s: Block name e.g. "Image block"
|
|
58
58
|
__( '%s block' );
|
|
59
59
|
const accessibilityLabel = sprintf(
|
|
60
60
|
accessibilityLabelFormat,
|
|
@@ -46,18 +46,13 @@ export default function InspectorControlsTabs( {
|
|
|
46
46
|
<Tabs.TabList>
|
|
47
47
|
{ tabs.map( ( tab ) =>
|
|
48
48
|
showIconLabels ? (
|
|
49
|
-
<Tabs.Tab
|
|
50
|
-
key={ tab.name }
|
|
51
|
-
tabId={ tab.name }
|
|
52
|
-
className={ tab.className }
|
|
53
|
-
>
|
|
49
|
+
<Tabs.Tab key={ tab.name } tabId={ tab.name }>
|
|
54
50
|
{ tab.title }
|
|
55
51
|
</Tabs.Tab>
|
|
56
52
|
) : (
|
|
57
53
|
<Tooltip text={ tab.title } key={ tab.name }>
|
|
58
54
|
<Tabs.Tab
|
|
59
55
|
tabId={ tab.name }
|
|
60
|
-
className={ tab.className }
|
|
61
56
|
aria-label={ tab.title }
|
|
62
57
|
>
|
|
63
58
|
<Icon icon={ tab.icon } />
|
|
@@ -9,7 +9,6 @@ export const TAB_SETTINGS = {
|
|
|
9
9
|
title: __( 'Settings' ),
|
|
10
10
|
value: 'settings',
|
|
11
11
|
icon: cog,
|
|
12
|
-
className: 'block-editor-block-inspector__tab-item',
|
|
13
12
|
};
|
|
14
13
|
|
|
15
14
|
export const TAB_STYLES = {
|
|
@@ -17,7 +16,6 @@ export const TAB_STYLES = {
|
|
|
17
16
|
title: __( 'Styles' ),
|
|
18
17
|
value: 'styles',
|
|
19
18
|
icon: styles,
|
|
20
|
-
className: 'block-editor-block-inspector__tab-item',
|
|
21
19
|
};
|
|
22
20
|
|
|
23
21
|
export const TAB_LIST_VIEW = {
|
|
@@ -25,5 +23,4 @@ export const TAB_LIST_VIEW = {
|
|
|
25
23
|
title: __( 'List View' ),
|
|
26
24
|
value: 'list-view',
|
|
27
25
|
icon: listView,
|
|
28
|
-
className: 'block-editor-block-inspector__tab-item',
|
|
29
26
|
};
|
|
@@ -6,7 +6,7 @@ import clsx from 'clsx';
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
8
8
|
*/
|
|
9
|
-
import { __
|
|
9
|
+
import { __ } from '@wordpress/i18n';
|
|
10
10
|
import {
|
|
11
11
|
Button,
|
|
12
12
|
ExternalLink,
|
|
@@ -96,7 +96,8 @@ export default function LinkPreview( {
|
|
|
96
96
|
|
|
97
97
|
return (
|
|
98
98
|
<div
|
|
99
|
-
|
|
99
|
+
role="group"
|
|
100
|
+
aria-label={ __( 'Manage link' ) }
|
|
100
101
|
className={ clsx( 'block-editor-link-control__search-item', {
|
|
101
102
|
'is-current': true,
|
|
102
103
|
'is-rich': hasRichData,
|
|
@@ -107,7 +108,14 @@ export default function LinkPreview( {
|
|
|
107
108
|
} ) }
|
|
108
109
|
>
|
|
109
110
|
<div className="block-editor-link-control__search-item-top">
|
|
110
|
-
<span
|
|
111
|
+
<span
|
|
112
|
+
className="block-editor-link-control__search-item-header"
|
|
113
|
+
role="figure"
|
|
114
|
+
aria-label={
|
|
115
|
+
/* translators: Accessibility text for the link preview when editing a link. */
|
|
116
|
+
__( 'Link information' )
|
|
117
|
+
}
|
|
118
|
+
>
|
|
111
119
|
<span
|
|
112
120
|
className={ clsx(
|
|
113
121
|
'block-editor-link-control__search-item-icon',
|
|
@@ -149,6 +157,7 @@ export default function LinkPreview( {
|
|
|
149
157
|
label={ __( 'Edit link' ) }
|
|
150
158
|
onClick={ onEditClick }
|
|
151
159
|
size="compact"
|
|
160
|
+
showTooltip={ ! showIconLabels }
|
|
152
161
|
/>
|
|
153
162
|
{ hasUnlinkControl && (
|
|
154
163
|
<Button
|
|
@@ -156,19 +165,17 @@ export default function LinkPreview( {
|
|
|
156
165
|
label={ __( 'Remove link' ) }
|
|
157
166
|
onClick={ onRemove }
|
|
158
167
|
size="compact"
|
|
168
|
+
showTooltip={ ! showIconLabels }
|
|
159
169
|
/>
|
|
160
170
|
) }
|
|
161
171
|
<Button
|
|
162
172
|
icon={ copySmall }
|
|
163
|
-
label={
|
|
164
|
-
// Translators: %s is a placeholder for the link URL and an optional colon, (if a Link URL is present).
|
|
165
|
-
__( 'Copy link%s' ), // Ends up looking like "Copy link: https://example.com".
|
|
166
|
-
isEmptyURL || showIconLabels ? '' : ': ' + value.url
|
|
167
|
-
) }
|
|
173
|
+
label={ __( 'Copy link' ) }
|
|
168
174
|
ref={ ref }
|
|
169
175
|
accessibleWhenDisabled
|
|
170
176
|
disabled={ isEmptyURL }
|
|
171
177
|
size="compact"
|
|
178
|
+
showTooltip={ ! showIconLabels }
|
|
172
179
|
/>
|
|
173
180
|
<ViewerSlot fillProps={ value } />
|
|
174
181
|
</div>
|
|
@@ -373,7 +373,9 @@ describe( 'Basic rendering', () => {
|
|
|
373
373
|
/>
|
|
374
374
|
);
|
|
375
375
|
|
|
376
|
-
const linkPreview = screen.
|
|
376
|
+
const linkPreview = screen.getByRole( 'group', {
|
|
377
|
+
name: 'Manage link',
|
|
378
|
+
} );
|
|
377
379
|
|
|
378
380
|
const isPreviewError = linkPreview.classList.contains( 'is-error' );
|
|
379
381
|
expect( isPreviewError ).toBe( true );
|
|
@@ -834,7 +836,9 @@ describe( 'Manual link entry', () => {
|
|
|
834
836
|
|
|
835
837
|
render( <LinkControlConsumer /> );
|
|
836
838
|
|
|
837
|
-
let linkPreview = screen.
|
|
839
|
+
let linkPreview = screen.getByRole( 'group', {
|
|
840
|
+
name: 'Manage link',
|
|
841
|
+
} );
|
|
838
842
|
|
|
839
843
|
expect( linkPreview ).toBeInTheDocument();
|
|
840
844
|
|
|
@@ -868,7 +872,9 @@ describe( 'Manual link entry', () => {
|
|
|
868
872
|
// Cancel the editing process.
|
|
869
873
|
await user.click( cancelButton );
|
|
870
874
|
|
|
871
|
-
linkPreview = screen.
|
|
875
|
+
linkPreview = screen.getByRole( 'group', {
|
|
876
|
+
name: 'Manage link',
|
|
877
|
+
} );
|
|
872
878
|
|
|
873
879
|
expect( linkPreview ).toBeInTheDocument();
|
|
874
880
|
|
|
@@ -1076,7 +1082,9 @@ describe( 'Default search suggestions', () => {
|
|
|
1076
1082
|
|
|
1077
1083
|
// Click the "Edit/Change" button and check initial suggestions are not
|
|
1078
1084
|
// shown.
|
|
1079
|
-
const currentLinkUI = screen.
|
|
1085
|
+
const currentLinkUI = screen.getByRole( 'group', {
|
|
1086
|
+
name: 'Manage link',
|
|
1087
|
+
} );
|
|
1080
1088
|
const currentLinkBtn = within( currentLinkUI ).getByRole( 'button', {
|
|
1081
1089
|
name: 'Edit link',
|
|
1082
1090
|
} );
|
|
@@ -1230,8 +1238,9 @@ describe( 'Creating Entities (eg: Posts, Pages)', () => {
|
|
|
1230
1238
|
|
|
1231
1239
|
// Check for loading indicator.
|
|
1232
1240
|
const loadingIndicator = screen.getByText( 'Creating…' );
|
|
1233
|
-
const currentLinkLabel =
|
|
1234
|
-
|
|
1241
|
+
const currentLinkLabel = screen.queryByRole( 'group', {
|
|
1242
|
+
name: 'Manage link',
|
|
1243
|
+
} );
|
|
1235
1244
|
|
|
1236
1245
|
expect( currentLinkLabel ).not.toBeInTheDocument();
|
|
1237
1246
|
expect( loadingIndicator ).toBeVisible();
|
|
@@ -1242,8 +1251,9 @@ describe( 'Creating Entities (eg: Posts, Pages)', () => {
|
|
|
1242
1251
|
// Resolve the `createSuggestion` promise.
|
|
1243
1252
|
resolver();
|
|
1244
1253
|
|
|
1245
|
-
const currentLink =
|
|
1246
|
-
|
|
1254
|
+
const currentLink = await screen.findByRole( 'group', {
|
|
1255
|
+
name: 'Manage link',
|
|
1256
|
+
} );
|
|
1247
1257
|
|
|
1248
1258
|
expect( currentLink ).toHaveTextContent( entityNameText );
|
|
1249
1259
|
expect( currentLink ).toHaveTextContent( '/?p=123' );
|
|
@@ -1291,7 +1301,9 @@ describe( 'Creating Entities (eg: Posts, Pages)', () => {
|
|
|
1291
1301
|
|
|
1292
1302
|
await user.click( createButton );
|
|
1293
1303
|
|
|
1294
|
-
const currentLink = screen.
|
|
1304
|
+
const currentLink = screen.getByRole( 'group', {
|
|
1305
|
+
name: 'Manage link',
|
|
1306
|
+
} );
|
|
1295
1307
|
|
|
1296
1308
|
expect( currentLink ).toHaveTextContent( 'Some new page to create' );
|
|
1297
1309
|
expect( currentLink ).toHaveTextContent( '/?p=123' );
|
|
@@ -1350,7 +1362,9 @@ describe( 'Creating Entities (eg: Posts, Pages)', () => {
|
|
|
1350
1362
|
triggerEnter( searchInput );
|
|
1351
1363
|
|
|
1352
1364
|
expect(
|
|
1353
|
-
await screen.
|
|
1365
|
+
await screen.findByRole( 'group', {
|
|
1366
|
+
name: 'Manage link',
|
|
1367
|
+
} )
|
|
1354
1368
|
).toHaveTextContent( entityNameText );
|
|
1355
1369
|
} );
|
|
1356
1370
|
|
|
@@ -1529,7 +1543,9 @@ describe( 'Selecting links', () => {
|
|
|
1529
1543
|
|
|
1530
1544
|
render( <LinkControlConsumer /> );
|
|
1531
1545
|
|
|
1532
|
-
const currentLink = screen.
|
|
1546
|
+
const currentLink = screen.getByRole( 'group', {
|
|
1547
|
+
name: 'Manage link',
|
|
1548
|
+
} );
|
|
1533
1549
|
const currentLinkAnchor = screen.getByRole( 'link', {
|
|
1534
1550
|
name: `${ selectedLink.title } (opens in a new tab)`,
|
|
1535
1551
|
} );
|
|
@@ -1559,7 +1575,9 @@ describe( 'Selecting links', () => {
|
|
|
1559
1575
|
render( <LinkControlConsumer /> );
|
|
1560
1576
|
|
|
1561
1577
|
// Required in order to select the button below.
|
|
1562
|
-
let currentLinkUI = screen.
|
|
1578
|
+
let currentLinkUI = screen.getByRole( 'group', {
|
|
1579
|
+
name: 'Manage link',
|
|
1580
|
+
} );
|
|
1563
1581
|
const currentLinkBtn = within( currentLinkUI ).getByRole( 'button', {
|
|
1564
1582
|
name: 'Edit link',
|
|
1565
1583
|
} );
|
|
@@ -1570,7 +1588,9 @@ describe( 'Selecting links', () => {
|
|
|
1570
1588
|
const searchInput = screen.getByRole( 'combobox', {
|
|
1571
1589
|
name: 'Search or type URL',
|
|
1572
1590
|
} );
|
|
1573
|
-
currentLinkUI = screen.
|
|
1591
|
+
currentLinkUI = screen.queryByRole( 'group', {
|
|
1592
|
+
name: 'Manage link',
|
|
1593
|
+
} );
|
|
1574
1594
|
|
|
1575
1595
|
// We should be back to showing the search input.
|
|
1576
1596
|
expect( searchInput ).toBeVisible();
|
|
@@ -1733,8 +1753,9 @@ describe( 'Selecting links', () => {
|
|
|
1733
1753
|
triggerEnter( searchInput );
|
|
1734
1754
|
|
|
1735
1755
|
// Check that the suggestion selected via is now shown as selected.
|
|
1736
|
-
const currentLink =
|
|
1737
|
-
|
|
1756
|
+
const currentLink = screen.getByRole( 'group', {
|
|
1757
|
+
name: 'Manage link',
|
|
1758
|
+
} );
|
|
1738
1759
|
const currentLinkAnchor = screen.getByRole( 'link', {
|
|
1739
1760
|
name: `${ selectedLink.title } (opens in a new tab)`,
|
|
1740
1761
|
} );
|
|
@@ -2127,7 +2148,9 @@ describe( 'Rich link previews', () => {
|
|
|
2127
2148
|
|
|
2128
2149
|
render( <LinkControl value={ selectedLink } /> );
|
|
2129
2150
|
|
|
2130
|
-
const linkPreview = screen.
|
|
2151
|
+
const linkPreview = screen.getByRole( 'group', {
|
|
2152
|
+
name: 'Manage link',
|
|
2153
|
+
} );
|
|
2131
2154
|
|
|
2132
2155
|
const isRichLinkPreview = linkPreview.classList.contains( 'is-rich' );
|
|
2133
2156
|
|
|
@@ -2148,7 +2171,9 @@ describe( 'Rich link previews', () => {
|
|
|
2148
2171
|
|
|
2149
2172
|
render( <LinkControl value={ selectedLink } hasRichPreviews /> );
|
|
2150
2173
|
|
|
2151
|
-
const linkPreview = screen.
|
|
2174
|
+
const linkPreview = screen.getByRole( 'group', {
|
|
2175
|
+
name: 'Manage link',
|
|
2176
|
+
} );
|
|
2152
2177
|
|
|
2153
2178
|
await waitFor( () => expect( linkPreview ).toHaveClass( 'is-rich' ) );
|
|
2154
2179
|
} );
|
|
@@ -2165,7 +2190,9 @@ describe( 'Rich link previews', () => {
|
|
|
2165
2190
|
|
|
2166
2191
|
render( <LinkControl value={ selectedLink } hasRichPreviews /> );
|
|
2167
2192
|
|
|
2168
|
-
const linkPreview = screen.
|
|
2193
|
+
const linkPreview = screen.getByRole( 'group', {
|
|
2194
|
+
name: 'Manage link',
|
|
2195
|
+
} );
|
|
2169
2196
|
|
|
2170
2197
|
await waitFor( () => expect( linkPreview ).toHaveClass( 'is-rich' ) );
|
|
2171
2198
|
|
|
@@ -2197,7 +2224,9 @@ describe( 'Rich link previews', () => {
|
|
|
2197
2224
|
|
|
2198
2225
|
render( <LinkControl value={ selectedLink } hasRichPreviews /> );
|
|
2199
2226
|
|
|
2200
|
-
const linkPreview = screen.
|
|
2227
|
+
const linkPreview = screen.getByRole( 'group', {
|
|
2228
|
+
name: 'Manage link',
|
|
2229
|
+
} );
|
|
2201
2230
|
|
|
2202
2231
|
await waitFor( () => expect( linkPreview ).toHaveClass( 'is-rich' ) );
|
|
2203
2232
|
|
|
@@ -2221,7 +2250,9 @@ describe( 'Rich link previews', () => {
|
|
|
2221
2250
|
|
|
2222
2251
|
render( <LinkControl value={ selectedLink } hasRichPreviews /> );
|
|
2223
2252
|
|
|
2224
|
-
const linkPreview = screen.
|
|
2253
|
+
const linkPreview = screen.getByRole( 'group', {
|
|
2254
|
+
name: 'Manage link',
|
|
2255
|
+
} );
|
|
2225
2256
|
|
|
2226
2257
|
await waitFor( () => expect( linkPreview ).toHaveClass( 'is-rich' ) );
|
|
2227
2258
|
|
|
@@ -2256,7 +2287,9 @@ describe( 'Rich link previews', () => {
|
|
|
2256
2287
|
|
|
2257
2288
|
render( <LinkControl value={ selectedLink } hasRichPreviews /> );
|
|
2258
2289
|
|
|
2259
|
-
const linkPreview = screen.
|
|
2290
|
+
const linkPreview = screen.getByRole( 'group', {
|
|
2291
|
+
name: 'Manage link',
|
|
2292
|
+
} );
|
|
2260
2293
|
|
|
2261
2294
|
await waitFor( () =>
|
|
2262
2295
|
expect( linkPreview ).toHaveClass( 'is-rich' )
|
|
@@ -2281,7 +2314,9 @@ describe( 'Rich link previews', () => {
|
|
|
2281
2314
|
|
|
2282
2315
|
render( <LinkControl value={ selectedLink } hasRichPreviews /> );
|
|
2283
2316
|
|
|
2284
|
-
const linkPreview = screen.
|
|
2317
|
+
const linkPreview = screen.getByRole( 'group', {
|
|
2318
|
+
name: 'Manage link',
|
|
2319
|
+
} );
|
|
2285
2320
|
|
|
2286
2321
|
expect( linkPreview ).toHaveClass( 'is-fetching' );
|
|
2287
2322
|
|
|
@@ -2300,7 +2335,9 @@ describe( 'Rich link previews', () => {
|
|
|
2300
2335
|
|
|
2301
2336
|
render( <LinkControl value={ selectedLink } hasRichPreviews /> );
|
|
2302
2337
|
|
|
2303
|
-
const linkPreview = screen.
|
|
2338
|
+
const linkPreview = screen.getByRole( 'group', {
|
|
2339
|
+
name: 'Manage link',
|
|
2340
|
+
} );
|
|
2304
2341
|
|
|
2305
2342
|
expect( linkPreview ).toHaveClass( 'is-fetching' );
|
|
2306
2343
|
expect( linkPreview ).not.toHaveClass( 'is-rich' );
|
|
@@ -2313,7 +2350,9 @@ describe( 'Rich link previews', () => {
|
|
|
2313
2350
|
|
|
2314
2351
|
render( <LinkControl value={ selectedLink } hasRichPreviews /> );
|
|
2315
2352
|
|
|
2316
|
-
const linkPreview = screen.
|
|
2353
|
+
const linkPreview = screen.getByRole( 'group', {
|
|
2354
|
+
name: 'Manage link',
|
|
2355
|
+
} );
|
|
2317
2356
|
|
|
2318
2357
|
expect( linkPreview ).toHaveClass( 'is-fetching' );
|
|
2319
2358
|
|
|
@@ -15,6 +15,7 @@ import useBlockDisplayTitle from '../block-title/use-block-display-title';
|
|
|
15
15
|
import { useListViewContext } from './context';
|
|
16
16
|
import Inserter from '../inserter';
|
|
17
17
|
import AriaReferencedText from './aria-referenced-text';
|
|
18
|
+
import { unlock } from '../../lock-unlock';
|
|
18
19
|
|
|
19
20
|
export const Appender = forwardRef(
|
|
20
21
|
( { nestingLevel, blockCount, clientId, ...props }, ref ) => {
|
|
@@ -23,13 +24,11 @@ export const Appender = forwardRef(
|
|
|
23
24
|
const instanceId = useInstanceId( Appender );
|
|
24
25
|
const hideInserter = useSelect(
|
|
25
26
|
( select ) => {
|
|
26
|
-
const { getTemplateLock,
|
|
27
|
-
select( blockEditorStore )
|
|
28
|
-
|
|
29
|
-
return (
|
|
30
|
-
!! getTemplateLock( clientId ) ||
|
|
31
|
-
__unstableGetEditorMode() === 'zoom-out'
|
|
27
|
+
const { getTemplateLock, isZoomOut } = unlock(
|
|
28
|
+
select( blockEditorStore )
|
|
32
29
|
);
|
|
30
|
+
|
|
31
|
+
return !! getTemplateLock( clientId ) || isZoomOut();
|
|
33
32
|
},
|
|
34
33
|
[ clientId ]
|
|
35
34
|
);
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
__experimentalTreeGridRow as TreeGridRow,
|
|
6
6
|
__experimentalTreeGridCell as TreeGridCell,
|
|
7
7
|
} from '@wordpress/components';
|
|
8
|
-
import { memo } from '@wordpress/element';
|
|
8
|
+
import { memo, useRef } from '@wordpress/element';
|
|
9
9
|
import { AsyncModeProvider, useSelect } from '@wordpress/data';
|
|
10
10
|
|
|
11
11
|
/**
|
|
@@ -123,6 +123,8 @@ function ListViewBranch( props ) {
|
|
|
123
123
|
draggedClientIds,
|
|
124
124
|
} = useListViewContext();
|
|
125
125
|
|
|
126
|
+
const nextPositionRef = useRef();
|
|
127
|
+
|
|
126
128
|
if ( ! canParentExpand ) {
|
|
127
129
|
return null;
|
|
128
130
|
}
|
|
@@ -133,7 +135,7 @@ function ListViewBranch( props ) {
|
|
|
133
135
|
const blockCount = filteredBlocks.length;
|
|
134
136
|
// The appender means an extra row in List View, so add 1 to the row count.
|
|
135
137
|
const rowCount = showAppender ? blockCount + 1 : blockCount;
|
|
136
|
-
|
|
138
|
+
nextPositionRef.current = listPosition;
|
|
137
139
|
|
|
138
140
|
return (
|
|
139
141
|
<>
|
|
@@ -141,7 +143,7 @@ function ListViewBranch( props ) {
|
|
|
141
143
|
const { clientId, innerBlocks } = block;
|
|
142
144
|
|
|
143
145
|
if ( index > 0 ) {
|
|
144
|
-
|
|
146
|
+
nextPositionRef.current += countBlocks(
|
|
145
147
|
filteredBlocks[ index - 1 ],
|
|
146
148
|
expandedState,
|
|
147
149
|
draggedClientIds,
|
|
@@ -165,7 +167,7 @@ function ListViewBranch( props ) {
|
|
|
165
167
|
} );
|
|
166
168
|
|
|
167
169
|
const { itemInView } = fixedListWindow;
|
|
168
|
-
const blockInView = itemInView(
|
|
170
|
+
const blockInView = itemInView( nextPositionRef.current );
|
|
169
171
|
|
|
170
172
|
const position = index + 1;
|
|
171
173
|
const updatedPath =
|
|
@@ -218,7 +220,7 @@ function ListViewBranch( props ) {
|
|
|
218
220
|
showBlockMovers={ showBlockMovers }
|
|
219
221
|
path={ updatedPath }
|
|
220
222
|
isExpanded={ isDragged ? false : shouldExpand }
|
|
221
|
-
listPosition={
|
|
223
|
+
listPosition={ nextPositionRef.current }
|
|
222
224
|
selectedClientIds={ selectedClientIds }
|
|
223
225
|
isSyncedBranch={ syncedBranch }
|
|
224
226
|
displacement={ displacement }
|
|
@@ -239,7 +241,7 @@ function ListViewBranch( props ) {
|
|
|
239
241
|
showBlockMovers={ showBlockMovers }
|
|
240
242
|
level={ level + 1 }
|
|
241
243
|
path={ updatedPath }
|
|
242
|
-
listPosition={
|
|
244
|
+
listPosition={ nextPositionRef.current + 1 }
|
|
243
245
|
fixedListWindow={ fixedListWindow }
|
|
244
246
|
isBranchSelected={ isSelectedBranch }
|
|
245
247
|
selectedClientIds={ selectedClientIds }
|
|
@@ -185,8 +185,7 @@ function ListViewComponent(
|
|
|
185
185
|
if ( selectedClientIds?.length ) {
|
|
186
186
|
focusListItem( selectedClientIds[ 0 ], elementRef?.current );
|
|
187
187
|
}
|
|
188
|
-
//
|
|
189
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
188
|
+
// Only focus on the selected item when the list view is mounted.
|
|
190
189
|
}, [] );
|
|
191
190
|
|
|
192
191
|
const expand = useCallback(
|
|
@@ -317,20 +317,20 @@ export function MediaPlaceholder( {
|
|
|
317
317
|
|
|
318
318
|
if ( instructions === undefined && mediaUpload ) {
|
|
319
319
|
instructions = __(
|
|
320
|
-
'
|
|
320
|
+
'Drag and drop an image or video, upload, or choose from your library.'
|
|
321
321
|
);
|
|
322
322
|
|
|
323
323
|
if ( isAudio ) {
|
|
324
324
|
instructions = __(
|
|
325
|
-
'
|
|
325
|
+
'Drag and drop an audio file, upload, or choose from your library.'
|
|
326
326
|
);
|
|
327
327
|
} else if ( isImage ) {
|
|
328
328
|
instructions = __(
|
|
329
|
-
'
|
|
329
|
+
'Drag and drop an image, upload, or choose from your library.'
|
|
330
330
|
);
|
|
331
331
|
} else if ( isVideo ) {
|
|
332
332
|
instructions = __(
|
|
333
|
-
'
|
|
333
|
+
'Drag and drop a video, upload, or choose from your library.'
|
|
334
334
|
);
|
|
335
335
|
}
|
|
336
336
|
}
|
|
@@ -46,9 +46,7 @@ export const ExperimentalBlockEditorProvider = withRegistryProvider(
|
|
|
46
46
|
|
|
47
47
|
return (
|
|
48
48
|
<SlotFillProvider passthrough>
|
|
49
|
-
{ ! settings?.
|
|
50
|
-
<KeyboardShortcuts.Register />
|
|
51
|
-
) }
|
|
49
|
+
{ ! settings?.isPreviewMode && <KeyboardShortcuts.Register /> }
|
|
52
50
|
<BlockRefsProvider>{ children }</BlockRefsProvider>
|
|
53
51
|
</SlotFillProvider>
|
|
54
52
|
);
|