@wordpress/block-editor 14.0.0 → 14.2.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 +10 -24
- package/build/autocompleters/block.js +1 -1
- package/build/autocompleters/block.js.map +1 -1
- package/build/components/block-alignment-matrix-control/index.js +2 -2
- package/build/components/block-alignment-matrix-control/index.js.map +1 -1
- package/build/components/block-breadcrumb/index.js +8 -2
- package/build/components/block-breadcrumb/index.js.map +1 -1
- package/build/components/block-canvas/index.js +8 -1
- package/build/components/block-canvas/index.js.map +1 -1
- package/build/components/block-compare/block-view.js +4 -1
- package/build/components/block-compare/block-view.js.map +1 -1
- package/build/components/block-draggable/index.js +4 -4
- package/build/components/block-draggable/index.js.map +1 -1
- package/build/components/block-draggable/use-scroll-when-dragging.js +25 -25
- package/build/components/block-draggable/use-scroll-when-dragging.js.map +1 -1
- package/build/components/block-edit/multiple-usage-warning.js +8 -2
- package/build/components/block-edit/multiple-usage-warning.js.map +1 -1
- package/build/components/block-inspector/index.js +27 -9
- package/build/components/block-inspector/index.js.map +1 -1
- package/build/components/block-list/block-invalid-warning.js +6 -3
- package/build/components/block-list/block-invalid-warning.js.map +1 -1
- package/build/components/block-list/block.js +5 -1
- package/build/components/block-list/block.js.map +1 -1
- package/build/components/block-list/use-block-props/index.js +7 -3
- 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 +1 -0
- 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-zoom-out-mode-exit.js +46 -0
- package/build/components/block-list/use-block-props/use-zoom-out-mode-exit.js.map +1 -0
- package/build/components/block-list/use-in-between-inserter.js +11 -4
- package/build/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build/components/block-lock/toolbar.js +3 -3
- package/build/components/block-lock/toolbar.js.map +1 -1
- package/build/components/block-mover/button.js +4 -1
- package/build/components/block-mover/button.js.map +1 -1
- package/build/components/block-mover/index.js +4 -1
- package/build/components/block-mover/index.js.map +1 -1
- package/build/components/block-navigation/dropdown.js +4 -1
- package/build/components/block-navigation/dropdown.js.map +1 -1
- package/build/components/block-pattern-setup/index.js +1 -4
- package/build/components/block-pattern-setup/index.js.map +1 -1
- package/build/components/block-pattern-setup/setup-toolbar.js +22 -7
- package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
- package/build/components/block-patterns-list/index.js +11 -14
- package/build/components/block-patterns-list/index.js.map +1 -1
- package/build/components/block-patterns-paging/index.js +12 -3
- package/build/components/block-patterns-paging/index.js.map +1 -1
- package/build/components/block-popover/index.js +2 -15
- package/build/components/block-popover/index.js.map +1 -1
- package/build/components/block-quick-navigation/index.js +4 -1
- package/build/components/block-quick-navigation/index.js.map +1 -1
- package/build/components/block-settings-menu/block-mode-toggle.js +28 -34
- package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
- package/build/components/block-settings-menu-controls/index.js +4 -0
- package/build/components/block-settings-menu-controls/index.js.map +1 -1
- package/build/components/block-switcher/index.js +22 -17
- package/build/components/block-switcher/index.js.map +1 -1
- package/build/components/block-switcher/pattern-transformations-menu.js +1 -4
- package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
- package/build/components/block-toolbar/index.js +12 -11
- package/build/components/block-toolbar/index.js.map +1 -1
- package/build/components/block-toolbar/shuffle.js +6 -2
- package/build/components/block-toolbar/shuffle.js.map +1 -1
- package/build/components/block-tools/block-selection-button.js +8 -2
- package/build/components/block-tools/block-selection-button.js.map +1 -1
- package/build/components/block-tools/block-toolbar-popover.js +10 -6
- package/build/components/block-tools/block-toolbar-popover.js.map +1 -1
- package/build/components/block-tools/insertion-point.js +14 -3
- package/build/components/block-tools/insertion-point.js.map +1 -1
- package/build/components/block-tools/use-block-toolbar-popover-props.js +2 -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 +2 -1
- package/build/components/block-tools/use-show-block-tools.js.map +1 -1
- package/build/components/block-tools/zoom-out-mode-inserters.js +4 -5
- package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
- package/build/components/block-tools/zoom-out-popover.js +3 -4
- package/build/components/block-tools/zoom-out-popover.js.map +1 -1
- package/build/components/block-tools/zoom-out-toolbar.js +14 -5
- package/build/components/block-tools/zoom-out-toolbar.js.map +1 -1
- package/build/components/block-variation-picker/index.js +4 -1
- package/build/components/block-variation-picker/index.js.map +1 -1
- package/build/components/block-variation-transforms/index.js +4 -1
- package/build/components/block-variation-transforms/index.js.map +1 -1
- package/build/components/border-radius-control/index.js +1 -0
- package/build/components/border-radius-control/index.js.map +1 -1
- package/build/components/button-block-appender/index.js +14 -3
- package/build/components/button-block-appender/index.js.map +1 -1
- package/build/components/colors-gradients/dropdown.js +4 -1
- package/build/components/colors-gradients/dropdown.js.map +1 -1
- package/build/components/content-lock/index.js +13 -0
- package/build/components/content-lock/index.js.map +1 -0
- package/build/components/content-lock/modify-content-lock-menu-item.js +64 -0
- package/build/components/content-lock/modify-content-lock-menu-item.js.map +1 -0
- package/build/components/convert-to-group-buttons/index.js +1 -1
- package/build/components/convert-to-group-buttons/index.js.map +1 -1
- package/build/components/date-format-picker/index.js +2 -0
- package/build/components/date-format-picker/index.js.map +1 -1
- package/build/components/editor-styles/index.js +4 -3
- package/build/components/editor-styles/index.js.map +1 -1
- package/build/components/font-appearance-control/index.js +3 -0
- package/build/components/font-appearance-control/index.js.map +1 -1
- package/build/components/font-family/index.js +3 -0
- package/build/components/font-family/index.js.map +1 -1
- package/build/components/global-styles/background-panel.js +118 -50
- package/build/components/global-styles/background-panel.js.map +1 -1
- package/build/components/global-styles/color-panel.js +8 -5
- package/build/components/global-styles/color-panel.js.map +1 -1
- package/build/components/global-styles/color-panel.native.js +1 -1
- package/build/components/global-styles/color-panel.native.js.map +1 -1
- package/build/components/global-styles/dimensions-panel.js +34 -37
- package/build/components/global-styles/dimensions-panel.js.map +1 -1
- package/build/components/global-styles/filters-panel.js +4 -1
- package/build/components/global-styles/filters-panel.js.map +1 -1
- package/build/components/global-styles/get-global-styles-changes.js +3 -1
- package/build/components/global-styles/get-global-styles-changes.js.map +1 -1
- package/build/components/global-styles/hooks.js +0 -7
- package/build/components/global-styles/hooks.js.map +1 -1
- package/build/components/global-styles/index.js +0 -6
- package/build/components/global-styles/index.js.map +1 -1
- package/build/components/global-styles/shadow-panel-components.js +13 -7
- package/build/components/global-styles/shadow-panel-components.js.map +1 -1
- package/build/components/global-styles/typography-utils.js +17 -6
- package/build/components/global-styles/typography-utils.js.map +1 -1
- package/build/components/global-styles/use-global-styles-output.js +3 -3
- package/build/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build/components/global-styles/utils.js +11 -29
- package/build/components/global-styles/utils.js.map +1 -1
- package/build/components/grid/grid-item-movers.js +2 -2
- package/build/components/grid/grid-item-movers.js.map +1 -1
- package/build/components/grid/grid-visualizer.js +20 -5
- package/build/components/grid/grid-visualizer.js.map +1 -1
- package/build/components/height-control/index.js +1 -0
- package/build/components/height-control/index.js.map +1 -1
- package/build/components/iframe/index.js +8 -6
- package/build/components/iframe/index.js.map +1 -1
- package/build/components/image-editor/zoom-dropdown.js +11 -7
- package/build/components/image-editor/zoom-dropdown.js.map +1 -1
- package/build/components/inner-blocks/button-block-appender.js +8 -8
- package/build/components/inner-blocks/button-block-appender.js.map +1 -1
- package/build/components/inner-blocks/default-block-appender.js +7 -25
- package/build/components/inner-blocks/default-block-appender.js.map +1 -1
- package/build/components/inner-blocks/index.js +8 -12
- package/build/components/inner-blocks/index.js.map +1 -1
- package/build/components/inner-blocks/use-inner-block-template-sync.js +3 -3
- package/build/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +4 -1
- package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/index.js +4 -1
- package/build/components/inserter/block-patterns-tab/index.js.map +1 -1
- package/build/components/inserter/media-tab/hooks.js +3 -3
- package/build/components/inserter/media-tab/hooks.js.map +1 -1
- package/build/components/inserter/media-tab/media-list.js +1 -4
- package/build/components/inserter/media-tab/media-list.js.map +1 -1
- package/build/components/inserter/media-tab/media-preview.js +8 -2
- package/build/components/inserter/media-tab/media-preview.js.map +1 -1
- package/build/components/inserter/media-tab/media-tab.js +4 -1
- package/build/components/inserter/media-tab/media-tab.js.map +1 -1
- package/build/components/inserter/menu.js +14 -13
- package/build/components/inserter/menu.js.map +1 -1
- package/build/components/inserter/quick-inserter.js +8 -1
- package/build/components/inserter/quick-inserter.js.map +1 -1
- package/build/components/inserter-list-item/index.js +4 -4
- package/build/components/inserter-list-item/index.js.map +1 -1
- package/build/components/inserter-listbox/index.js +3 -7
- package/build/components/inserter-listbox/index.js.map +1 -1
- package/build/components/inserter-listbox/item.js +4 -1
- package/build/components/inserter-listbox/item.js.map +1 -1
- package/build/components/inspector-controls/groups.js +2 -0
- package/build/components/inspector-controls/groups.js.map +1 -1
- package/build/components/inspector-controls-tabs/index.js +4 -1
- package/build/components/inspector-controls-tabs/index.js.map +1 -1
- package/build/components/inspector-controls-tabs/settings-tab.js +3 -1
- package/build/components/inspector-controls-tabs/settings-tab.js.map +1 -1
- package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js +2 -1
- package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
- package/build/components/inspector-popover-header/index.js +8 -2
- package/build/components/inspector-popover-header/index.js.map +1 -1
- package/build/components/letter-spacing-control/index.js +7 -4
- package/build/components/letter-spacing-control/index.js.map +1 -1
- package/build/components/line-height-control/index.js +3 -0
- package/build/components/line-height-control/index.js.map +1 -1
- package/build/components/link-control/index.js +19 -10
- package/build/components/link-control/index.js.map +1 -1
- package/build/components/link-control/settings-drawer.js +4 -1
- package/build/components/link-control/settings-drawer.js.map +1 -1
- package/build/components/list-view/block-select-button.js +4 -1
- package/build/components/list-view/block-select-button.js.map +1 -1
- package/build/components/media-placeholder/index.js +36 -10
- package/build/components/media-placeholder/index.js.map +1 -1
- package/build/components/media-replace-flow/index.js +8 -1
- package/build/components/media-replace-flow/index.js.map +1 -1
- package/build/components/media-upload/index.native.js +4 -1
- package/build/components/media-upload/index.native.js.map +1 -1
- package/build/components/multi-selection-inspector/index.js +12 -12
- package/build/components/multi-selection-inspector/index.js.map +1 -1
- package/build/components/provider/use-block-sync.js +19 -19
- package/build/components/provider/use-block-sync.js.map +1 -1
- package/build/components/rich-text/event-listeners/paste-handler.js +12 -1
- package/build/components/rich-text/event-listeners/paste-handler.js.map +1 -1
- package/build/components/rich-text/index.js +38 -30
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/rich-text/use-mark-persistent.js +5 -5
- package/build/components/rich-text/use-mark-persistent.js.map +1 -1
- package/build/components/skip-to-selected-block/index.js +4 -1
- package/build/components/skip-to-selected-block/index.js.map +1 -1
- package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +4 -2
- package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
- package/build/components/text-alignment-control/index.js +13 -8
- package/build/components/text-alignment-control/index.js.map +1 -1
- package/build/components/text-decoration-control/index.js +13 -8
- package/build/components/text-decoration-control/index.js.map +1 -1
- package/build/components/text-transform-control/index.js +13 -8
- package/build/components/text-transform-control/index.js.map +1 -1
- package/build/components/tool-selector/index.js +4 -1
- package/build/components/tool-selector/index.js.map +1 -1
- package/build/components/url-input/button.js +12 -3
- package/build/components/url-input/button.js.map +1 -1
- package/build/components/url-input/index.js +4 -1
- package/build/components/url-input/index.js.map +1 -1
- package/build/components/url-popover/image-url-input-ui.js +2 -0
- package/build/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build/components/use-block-drop-zone/index.js +12 -2
- package/build/components/use-block-drop-zone/index.js.map +1 -1
- package/build/components/writing-flow/index.js +2 -1
- package/build/components/writing-flow/index.js.map +1 -1
- package/build/components/writing-flow/use-arrow-nav.js +4 -1
- package/build/components/writing-flow/use-arrow-nav.js.map +1 -1
- package/build/components/writing-flow/use-event-redirect.js +66 -0
- package/build/components/writing-flow/use-event-redirect.js.map +1 -0
- package/build/components/writing-flow/use-input.js +31 -1
- package/build/components/writing-flow/use-input.js.map +1 -1
- package/build/components/writing-flow/use-select-all.js +14 -1
- package/build/components/writing-flow/use-select-all.js.map +1 -1
- package/build/components/writing-flow/use-selection-observer.js +20 -6
- package/build/components/writing-flow/use-selection-observer.js.map +1 -1
- package/build/components/writing-flow/use-tab-nav.js +4 -4
- package/build/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build/components/writing-flow/utils.js +27 -0
- package/build/components/writing-flow/utils.js.map +1 -1
- package/build/components/writing-mode-control/index.js +13 -8
- package/build/components/writing-mode-control/index.js.map +1 -1
- package/build/hooks/background.js +19 -23
- package/build/hooks/background.js.map +1 -1
- package/build/hooks/block-bindings.js +64 -103
- package/build/hooks/block-bindings.js.map +1 -1
- package/build/hooks/content-lock-ui.js +8 -26
- package/build/hooks/content-lock-ui.js.map +1 -1
- package/build/hooks/duotone.js +0 -4
- package/build/hooks/duotone.js.map +1 -1
- package/build/hooks/layout.js +4 -1
- package/build/hooks/layout.js.map +1 -1
- package/build/hooks/spacing-visualizer.js +3 -3
- package/build/hooks/spacing-visualizer.js.map +1 -1
- package/build/hooks/style.js +1 -5
- package/build/hooks/style.js.map +1 -1
- package/build/hooks/use-bindings-attributes.js +19 -20
- package/build/hooks/use-bindings-attributes.js.map +1 -1
- package/build/hooks/use-zoom-out.js +7 -7
- package/build/hooks/use-zoom-out.js.map +1 -1
- package/build/layouts/constrained.js +42 -41
- package/build/layouts/constrained.js.map +1 -1
- package/build/layouts/flex.js +6 -1
- package/build/layouts/flex.js.map +1 -1
- package/build/layouts/grid.js +3 -0
- package/build/layouts/grid.js.map +1 -1
- package/build/layouts/utils.js +1 -7
- package/build/layouts/utils.js.map +1 -1
- package/build/private-apis.js +4 -1
- package/build/private-apis.js.map +1 -1
- package/build/store/actions.js +2 -7
- package/build/store/actions.js.map +1 -1
- package/build/store/private-actions.js +1 -0
- package/build/store/private-actions.js.map +1 -1
- package/build/store/private-keys.js +2 -1
- package/build/store/private-keys.js.map +1 -1
- package/build/store/private-selectors.js +39 -11
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/reducer.js +2 -0
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +19 -43
- package/build/store/selectors.js.map +1 -1
- package/build/store/utils.js +48 -0
- package/build/store/utils.js.map +1 -1
- package/build/utils/block-bindings.js +117 -0
- package/build/utils/block-bindings.js.map +1 -0
- package/build/utils/dom.js +101 -0
- package/build/utils/dom.js.map +1 -1
- package/build/utils/get-font-styles-and-weights.js +4 -4
- package/build/utils/get-font-styles-and-weights.js.map +1 -1
- package/build/utils/transform-styles/index.js +120 -16
- package/build/utils/transform-styles/index.js.map +1 -1
- package/build-module/autocompleters/block.js +1 -1
- package/build-module/autocompleters/block.js.map +1 -1
- package/build-module/components/block-alignment-matrix-control/index.js +1 -1
- package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
- package/build-module/components/block-breadcrumb/index.js +8 -2
- package/build-module/components/block-breadcrumb/index.js.map +1 -1
- package/build-module/components/block-canvas/index.js +9 -1
- package/build-module/components/block-canvas/index.js.map +1 -1
- package/build-module/components/block-compare/block-view.js +4 -1
- package/build-module/components/block-compare/block-view.js.map +1 -1
- package/build-module/components/block-draggable/index.js +4 -4
- package/build-module/components/block-draggable/index.js.map +1 -1
- package/build-module/components/block-draggable/use-scroll-when-dragging.js +25 -25
- package/build-module/components/block-draggable/use-scroll-when-dragging.js.map +1 -1
- package/build-module/components/block-edit/multiple-usage-warning.js +8 -2
- package/build-module/components/block-edit/multiple-usage-warning.js.map +1 -1
- package/build-module/components/block-inspector/index.js +27 -9
- package/build-module/components/block-inspector/index.js.map +1 -1
- package/build-module/components/block-list/block-invalid-warning.js +6 -3
- package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
- package/build-module/components/block-list/block.js +5 -1
- package/build-module/components/block-list/block.js.map +1 -1
- package/build-module/components/block-list/use-block-props/index.js +7 -3
- 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 +1 -0
- 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-zoom-out-mode-exit.js +40 -0
- package/build-module/components/block-list/use-block-props/use-zoom-out-mode-exit.js.map +1 -0
- package/build-module/components/block-list/use-in-between-inserter.js +11 -4
- package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build-module/components/block-lock/toolbar.js +3 -3
- package/build-module/components/block-lock/toolbar.js.map +1 -1
- package/build-module/components/block-mover/button.js +4 -1
- package/build-module/components/block-mover/button.js.map +1 -1
- package/build-module/components/block-mover/index.js +4 -1
- package/build-module/components/block-mover/index.js.map +1 -1
- package/build-module/components/block-navigation/dropdown.js +4 -1
- package/build-module/components/block-navigation/dropdown.js.map +1 -1
- package/build-module/components/block-pattern-setup/index.js +1 -4
- package/build-module/components/block-pattern-setup/index.js.map +1 -1
- package/build-module/components/block-pattern-setup/setup-toolbar.js +23 -8
- package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
- package/build-module/components/block-patterns-list/index.js +11 -14
- package/build-module/components/block-patterns-list/index.js.map +1 -1
- package/build-module/components/block-patterns-paging/index.js +12 -3
- package/build-module/components/block-patterns-paging/index.js.map +1 -1
- package/build-module/components/block-popover/index.js +2 -15
- package/build-module/components/block-popover/index.js.map +1 -1
- package/build-module/components/block-quick-navigation/index.js +4 -1
- package/build-module/components/block-quick-navigation/index.js.map +1 -1
- package/build-module/components/block-settings-menu/block-mode-toggle.js +29 -34
- package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
- package/build-module/components/block-settings-menu-controls/index.js +4 -0
- package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
- package/build-module/components/block-switcher/index.js +22 -17
- package/build-module/components/block-switcher/index.js.map +1 -1
- package/build-module/components/block-switcher/pattern-transformations-menu.js +1 -4
- package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
- package/build-module/components/block-toolbar/index.js +12 -11
- package/build-module/components/block-toolbar/index.js.map +1 -1
- package/build-module/components/block-toolbar/shuffle.js +6 -2
- package/build-module/components/block-toolbar/shuffle.js.map +1 -1
- package/build-module/components/block-tools/block-selection-button.js +8 -2
- package/build-module/components/block-tools/block-selection-button.js.map +1 -1
- package/build-module/components/block-tools/block-toolbar-popover.js +10 -6
- package/build-module/components/block-tools/block-toolbar-popover.js.map +1 -1
- package/build-module/components/block-tools/insertion-point.js +14 -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 -1
- 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 +2 -1
- 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 +4 -5
- package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
- package/build-module/components/block-tools/zoom-out-popover.js +3 -4
- package/build-module/components/block-tools/zoom-out-popover.js.map +1 -1
- package/build-module/components/block-tools/zoom-out-toolbar.js +15 -6
- package/build-module/components/block-tools/zoom-out-toolbar.js.map +1 -1
- package/build-module/components/block-variation-picker/index.js +4 -1
- package/build-module/components/block-variation-picker/index.js.map +1 -1
- package/build-module/components/block-variation-transforms/index.js +4 -1
- package/build-module/components/block-variation-transforms/index.js.map +1 -1
- package/build-module/components/border-radius-control/index.js +1 -0
- package/build-module/components/border-radius-control/index.js.map +1 -1
- package/build-module/components/button-block-appender/index.js +15 -4
- package/build-module/components/button-block-appender/index.js.map +1 -1
- package/build-module/components/colors-gradients/dropdown.js +4 -1
- package/build-module/components/colors-gradients/dropdown.js.map +1 -1
- package/build-module/components/content-lock/index.js +2 -0
- package/build-module/components/content-lock/index.js.map +1 -0
- package/build-module/components/content-lock/modify-content-lock-menu-item.js +57 -0
- package/build-module/components/content-lock/modify-content-lock-menu-item.js.map +1 -0
- package/build-module/components/convert-to-group-buttons/index.js +1 -1
- package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
- package/build-module/components/date-format-picker/index.js +2 -0
- package/build-module/components/date-format-picker/index.js.map +1 -1
- package/build-module/components/editor-styles/index.js +4 -3
- package/build-module/components/editor-styles/index.js.map +1 -1
- package/build-module/components/font-appearance-control/index.js +3 -0
- package/build-module/components/font-appearance-control/index.js.map +1 -1
- package/build-module/components/font-family/index.js +3 -0
- package/build-module/components/font-family/index.js.map +1 -1
- package/build-module/components/global-styles/background-panel.js +121 -53
- package/build-module/components/global-styles/background-panel.js.map +1 -1
- package/build-module/components/global-styles/color-panel.js +7 -4
- package/build-module/components/global-styles/color-panel.js.map +1 -1
- package/build-module/components/global-styles/color-panel.native.js +2 -2
- package/build-module/components/global-styles/color-panel.native.js.map +1 -1
- package/build-module/components/global-styles/dimensions-panel.js +36 -39
- package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
- package/build-module/components/global-styles/filters-panel.js +4 -1
- package/build-module/components/global-styles/filters-panel.js.map +1 -1
- package/build-module/components/global-styles/get-global-styles-changes.js +3 -1
- package/build-module/components/global-styles/get-global-styles-changes.js.map +1 -1
- package/build-module/components/global-styles/hooks.js +0 -6
- package/build-module/components/global-styles/hooks.js.map +1 -1
- package/build-module/components/global-styles/index.js +1 -1
- package/build-module/components/global-styles/index.js.map +1 -1
- package/build-module/components/global-styles/shadow-panel-components.js +13 -7
- package/build-module/components/global-styles/shadow-panel-components.js.map +1 -1
- package/build-module/components/global-styles/typography-utils.js +17 -6
- package/build-module/components/global-styles/typography-utils.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js +5 -5
- package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build-module/components/global-styles/utils.js +11 -28
- package/build-module/components/global-styles/utils.js.map +1 -1
- package/build-module/components/grid/grid-item-movers.js +3 -3
- package/build-module/components/grid/grid-item-movers.js.map +1 -1
- package/build-module/components/grid/grid-visualizer.js +20 -5
- package/build-module/components/grid/grid-visualizer.js.map +1 -1
- package/build-module/components/height-control/index.js +1 -0
- package/build-module/components/height-control/index.js.map +1 -1
- package/build-module/components/iframe/index.js +8 -6
- package/build-module/components/iframe/index.js.map +1 -1
- package/build-module/components/image-editor/zoom-dropdown.js +12 -8
- package/build-module/components/image-editor/zoom-dropdown.js.map +1 -1
- package/build-module/components/inner-blocks/button-block-appender.js +7 -6
- package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
- package/build-module/components/inner-blocks/default-block-appender.js +6 -23
- package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
- package/build-module/components/inner-blocks/index.js +8 -12
- package/build-module/components/inner-blocks/index.js.map +1 -1
- package/build-module/components/inner-blocks/use-inner-block-template-sync.js +3 -3
- package/build-module/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
- package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +4 -1
- package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/index.js +4 -1
- package/build-module/components/inserter/block-patterns-tab/index.js.map +1 -1
- package/build-module/components/inserter/media-tab/hooks.js +3 -3
- package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-list.js +1 -4
- package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-preview.js +8 -2
- package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-tab.js +4 -1
- package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
- package/build-module/components/inserter/menu.js +14 -13
- package/build-module/components/inserter/menu.js.map +1 -1
- package/build-module/components/inserter/quick-inserter.js +9 -2
- package/build-module/components/inserter/quick-inserter.js.map +1 -1
- package/build-module/components/inserter-list-item/index.js +4 -4
- package/build-module/components/inserter-list-item/index.js.map +1 -1
- package/build-module/components/inserter-listbox/index.js +3 -7
- package/build-module/components/inserter-listbox/index.js.map +1 -1
- package/build-module/components/inserter-listbox/item.js +4 -1
- package/build-module/components/inserter-listbox/item.js.map +1 -1
- package/build-module/components/inspector-controls/groups.js +2 -0
- package/build-module/components/inspector-controls/groups.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/index.js +4 -1
- package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/settings-tab.js +3 -1
- package/build-module/components/inspector-controls-tabs/settings-tab.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js +2 -1
- package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
- package/build-module/components/inspector-popover-header/index.js +8 -2
- package/build-module/components/inspector-popover-header/index.js.map +1 -1
- package/build-module/components/letter-spacing-control/index.js +7 -4
- package/build-module/components/letter-spacing-control/index.js.map +1 -1
- package/build-module/components/line-height-control/index.js +3 -0
- package/build-module/components/line-height-control/index.js.map +1 -1
- package/build-module/components/link-control/index.js +19 -10
- package/build-module/components/link-control/index.js.map +1 -1
- package/build-module/components/link-control/settings-drawer.js +4 -1
- package/build-module/components/link-control/settings-drawer.js.map +1 -1
- package/build-module/components/list-view/block-select-button.js +4 -1
- package/build-module/components/list-view/block-select-button.js.map +1 -1
- package/build-module/components/media-placeholder/index.js +36 -10
- package/build-module/components/media-placeholder/index.js.map +1 -1
- package/build-module/components/media-replace-flow/index.js +8 -1
- package/build-module/components/media-replace-flow/index.js.map +1 -1
- package/build-module/components/media-upload/index.native.js +4 -1
- package/build-module/components/media-upload/index.native.js.map +1 -1
- package/build-module/components/multi-selection-inspector/index.js +12 -12
- package/build-module/components/multi-selection-inspector/index.js.map +1 -1
- package/build-module/components/provider/use-block-sync.js +19 -19
- package/build-module/components/provider/use-block-sync.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/paste-handler.js +12 -1
- package/build-module/components/rich-text/event-listeners/paste-handler.js.map +1 -1
- package/build-module/components/rich-text/index.js +39 -31
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/rich-text/use-mark-persistent.js +5 -5
- package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
- package/build-module/components/skip-to-selected-block/index.js +4 -1
- package/build-module/components/skip-to-selected-block/index.js.map +1 -1
- package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +4 -2
- package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
- package/build-module/components/text-alignment-control/index.js +13 -8
- package/build-module/components/text-alignment-control/index.js.map +1 -1
- package/build-module/components/text-decoration-control/index.js +13 -8
- package/build-module/components/text-decoration-control/index.js.map +1 -1
- package/build-module/components/text-transform-control/index.js +13 -8
- package/build-module/components/text-transform-control/index.js.map +1 -1
- package/build-module/components/tool-selector/index.js +4 -1
- package/build-module/components/tool-selector/index.js.map +1 -1
- package/build-module/components/url-input/button.js +12 -3
- package/build-module/components/url-input/button.js.map +1 -1
- package/build-module/components/url-input/index.js +4 -1
- package/build-module/components/url-input/index.js.map +1 -1
- package/build-module/components/url-popover/image-url-input-ui.js +2 -0
- package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build-module/components/use-block-drop-zone/index.js +12 -2
- package/build-module/components/use-block-drop-zone/index.js.map +1 -1
- package/build-module/components/writing-flow/index.js +2 -1
- package/build-module/components/writing-flow/index.js.map +1 -1
- package/build-module/components/writing-flow/use-arrow-nav.js +4 -1
- package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
- package/build-module/components/writing-flow/use-event-redirect.js +60 -0
- package/build-module/components/writing-flow/use-event-redirect.js.map +1 -0
- package/build-module/components/writing-flow/use-input.js +31 -1
- package/build-module/components/writing-flow/use-input.js.map +1 -1
- package/build-module/components/writing-flow/use-select-all.js +14 -1
- package/build-module/components/writing-flow/use-select-all.js.map +1 -1
- package/build-module/components/writing-flow/use-selection-observer.js +16 -2
- package/build-module/components/writing-flow/use-selection-observer.js.map +1 -1
- package/build-module/components/writing-flow/use-tab-nav.js +4 -4
- package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build-module/components/writing-flow/utils.js +26 -0
- package/build-module/components/writing-flow/utils.js.map +1 -1
- package/build-module/components/writing-mode-control/index.js +13 -8
- package/build-module/components/writing-mode-control/index.js.map +1 -1
- package/build-module/hooks/background.js +19 -23
- package/build-module/hooks/background.js.map +1 -1
- package/build-module/hooks/block-bindings.js +66 -105
- package/build-module/hooks/block-bindings.js.map +1 -1
- package/build-module/hooks/content-lock-ui.js +10 -30
- package/build-module/hooks/content-lock-ui.js.map +1 -1
- package/build-module/hooks/duotone.js +0 -4
- package/build-module/hooks/duotone.js.map +1 -1
- package/build-module/hooks/layout.js +4 -1
- package/build-module/hooks/layout.js.map +1 -1
- package/build-module/hooks/spacing-visualizer.js +3 -3
- package/build-module/hooks/spacing-visualizer.js.map +1 -1
- package/build-module/hooks/style.js +1 -5
- package/build-module/hooks/style.js.map +1 -1
- package/build-module/hooks/use-bindings-attributes.js +19 -20
- package/build-module/hooks/use-bindings-attributes.js.map +1 -1
- package/build-module/hooks/use-zoom-out.js +7 -7
- package/build-module/hooks/use-zoom-out.js.map +1 -1
- package/build-module/layouts/constrained.js +44 -43
- package/build-module/layouts/constrained.js.map +1 -1
- package/build-module/layouts/flex.js +6 -1
- package/build-module/layouts/flex.js.map +1 -1
- package/build-module/layouts/grid.js +3 -0
- package/build-module/layouts/grid.js.map +1 -1
- package/build-module/layouts/utils.js +1 -7
- package/build-module/layouts/utils.js.map +1 -1
- package/build-module/private-apis.js +5 -2
- package/build-module/private-apis.js.map +1 -1
- package/build-module/store/actions.js +2 -7
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/private-actions.js +1 -0
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/private-keys.js +1 -0
- package/build-module/store/private-keys.js.map +1 -1
- package/build-module/store/private-selectors.js +36 -12
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/reducer.js +2 -0
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +22 -46
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/store/utils.js +46 -0
- package/build-module/store/utils.js.map +1 -1
- package/build-module/utils/block-bindings.js +110 -0
- package/build-module/utils/block-bindings.js.map +1 -0
- package/build-module/utils/dom.js +99 -0
- package/build-module/utils/dom.js.map +1 -1
- package/build-module/utils/get-font-styles-and-weights.js +4 -4
- package/build-module/utils/get-font-styles-and-weights.js.map +1 -1
- package/build-module/utils/transform-styles/index.js +120 -16
- package/build-module/utils/transform-styles/index.js.map +1 -1
- package/build-style/content-rtl.css +9 -25
- package/build-style/content.css +9 -25
- package/build-style/default-editor-styles-rtl.css +2 -2
- package/build-style/default-editor-styles.css +2 -2
- package/build-style/style-rtl.css +53 -76
- package/build-style/style.css +53 -76
- package/build-types/utils/dom.d.ts +25 -0
- package/build-types/utils/dom.d.ts.map +1 -1
- package/package.json +34 -32
- package/src/autocompleters/block.js +2 -1
- package/src/components/block-alignment-matrix-control/index.js +1 -1
- package/src/components/block-breadcrumb/index.js +4 -0
- package/src/components/block-breadcrumb/style.scss +1 -1
- package/src/components/block-canvas/index.js +9 -1
- package/src/components/block-compare/block-view.js +7 -1
- package/src/components/block-draggable/content.scss +1 -1
- package/src/components/block-draggable/index.js +4 -4
- package/src/components/block-draggable/style.scss +1 -1
- package/src/components/block-draggable/use-scroll-when-dragging.js +25 -25
- package/src/components/block-edit/multiple-usage-warning.js +4 -0
- package/src/components/block-inspector/index.js +22 -6
- package/src/components/block-list/block-invalid-warning.js +4 -2
- package/src/components/block-list/block.js +6 -2
- package/src/components/block-list/content.scss +7 -16
- package/src/components/block-list/use-block-props/index.js +5 -2
- package/src/components/block-list/use-block-props/use-focus-first-element.js +1 -0
- package/src/components/block-list/use-block-props/use-zoom-out-mode-exit.js +44 -0
- package/src/components/block-list/use-in-between-inserter.js +17 -5
- package/src/components/block-lock/style.scss +1 -1
- package/src/components/block-lock/toolbar.js +3 -3
- package/src/components/block-mover/button.js +2 -0
- package/src/components/block-mover/index.js +2 -0
- package/src/components/block-mover/style.scss +1 -1
- package/src/components/block-navigation/dropdown.js +2 -0
- package/src/components/block-pattern-setup/index.js +3 -7
- package/src/components/block-pattern-setup/setup-toolbar.js +17 -4
- package/src/components/block-pattern-setup/style.scss +2 -2
- package/src/components/block-patterns-list/index.js +15 -13
- package/src/components/block-patterns-list/style.scss +2 -2
- package/src/components/block-patterns-paging/index.js +6 -0
- package/src/components/block-popover/index.js +7 -28
- package/src/components/block-popover/style.scss +1 -1
- package/src/components/block-quick-navigation/index.js +2 -0
- package/src/components/block-settings-menu/block-mode-toggle.js +28 -31
- package/src/components/block-settings-menu/test/block-mode-toggle.js +26 -23
- package/src/components/block-settings-menu-controls/index.js +7 -1
- package/src/components/block-switcher/index.js +26 -20
- package/src/components/block-switcher/pattern-transformations-menu.js +3 -7
- package/src/components/block-switcher/style.scss +5 -6
- package/src/components/block-toolbar/index.js +17 -8
- package/src/components/block-toolbar/shuffle.js +9 -7
- package/src/components/block-tools/block-selection-button.js +4 -0
- package/src/components/block-tools/block-toolbar-popover.js +10 -6
- package/src/components/block-tools/insertion-point.js +11 -0
- package/src/components/block-tools/style.scss +4 -5
- package/src/components/block-tools/use-block-toolbar-popover-props.js +2 -1
- package/src/components/block-tools/use-show-block-tools.js +4 -1
- package/src/components/block-tools/zoom-out-mode-inserters.js +5 -2
- package/src/components/block-tools/zoom-out-popover.js +3 -7
- package/src/components/block-tools/zoom-out-toolbar.js +20 -6
- package/src/components/block-variation-picker/README.md +2 -2
- package/src/components/block-variation-picker/index.js +6 -1
- package/src/components/block-variation-transforms/index.js +2 -0
- package/src/components/block-variation-transforms/style.scss +2 -2
- package/src/components/border-radius-control/index.js +1 -0
- package/src/components/border-radius-control/style.scss +0 -10
- package/src/components/button-block-appender/content.scss +0 -1
- package/src/components/button-block-appender/index.js +14 -3
- package/src/components/color-palette/test/control.js +15 -2
- package/src/components/colors-gradients/dropdown.js +5 -1
- package/src/components/colors-gradients/style.scss +4 -4
- package/src/components/content-lock/index.js +1 -0
- package/src/components/content-lock/modify-content-lock-menu-item.js +58 -0
- package/src/components/convert-to-group-buttons/index.js +1 -1
- package/src/components/date-format-picker/index.js +2 -0
- package/src/components/default-block-appender/content.scss +0 -1
- package/src/components/editor-styles/index.js +4 -3
- package/src/components/font-appearance-control/index.js +3 -0
- package/src/components/font-family/README.md +11 -2
- package/src/components/font-family/index.js +3 -0
- package/src/components/global-styles/background-panel.js +135 -64
- package/src/components/global-styles/color-panel.js +8 -4
- package/src/components/global-styles/color-panel.native.js +2 -2
- package/src/components/global-styles/dimensions-panel.js +40 -40
- package/src/components/global-styles/filters-panel.js +5 -1
- package/src/components/global-styles/get-global-styles-changes.js +4 -1
- package/src/components/global-styles/hooks.js +0 -5
- package/src/components/global-styles/index.js +0 -1
- package/src/components/global-styles/shadow-panel-components.js +12 -8
- package/src/components/global-styles/style.scss +16 -6
- package/src/components/global-styles/test/typography-utils.js +96 -5
- package/src/components/global-styles/test/use-global-styles-output.js +20 -4
- package/src/components/global-styles/test/utils.js +10 -0
- package/src/components/global-styles/typography-utils.js +22 -6
- package/src/components/global-styles/use-global-styles-output.js +5 -6
- package/src/components/global-styles/utils.js +11 -35
- package/src/components/grid/grid-item-movers.js +3 -3
- package/src/components/grid/grid-visualizer.js +22 -7
- package/src/components/grid/style.scss +1 -1
- package/src/components/height-control/index.js +1 -0
- package/src/components/iframe/index.js +8 -6
- package/src/components/image-editor/zoom-dropdown.js +17 -9
- package/src/components/inner-blocks/button-block-appender.js +5 -7
- package/src/components/inner-blocks/default-block-appender.js +4 -23
- package/src/components/inner-blocks/index.js +11 -10
- package/src/components/inner-blocks/use-inner-block-template-sync.js +3 -3
- package/src/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +2 -0
- package/src/components/inserter/block-patterns-tab/index.js +2 -0
- package/src/components/inserter/media-tab/hooks.js +3 -3
- package/src/components/inserter/media-tab/media-list.js +1 -4
- package/src/components/inserter/media-tab/media-preview.js +12 -2
- package/src/components/inserter/media-tab/media-tab.js +2 -0
- package/src/components/inserter/menu.js +13 -22
- package/src/components/inserter/quick-inserter.js +6 -1
- package/src/components/inserter/style.scss +7 -9
- package/src/components/inserter-list-item/index.js +4 -4
- package/src/components/inserter-list-item/style.scss +2 -3
- package/src/components/inserter-listbox/index.js +2 -8
- package/src/components/inserter-listbox/item.js +9 -1
- package/src/components/inspector-controls/groups.js +2 -0
- package/src/components/inspector-controls-tabs/index.js +2 -0
- package/src/components/inspector-controls-tabs/settings-tab.js +1 -0
- package/src/components/inspector-controls-tabs/use-inspector-controls-tabs.js +5 -2
- package/src/components/inspector-popover-header/index.js +4 -0
- package/src/components/letter-spacing-control/README.md +8 -1
- package/src/components/letter-spacing-control/index.js +7 -4
- package/src/components/line-height-control/README.md +7 -0
- package/src/components/line-height-control/index.js +3 -0
- package/src/components/link-control/index.js +17 -8
- package/src/components/link-control/settings-drawer.js +2 -0
- package/src/components/link-control/style.scss +2 -4
- package/src/components/list-view/block-select-button.js +2 -0
- package/src/components/list-view/style.scss +14 -16
- package/src/components/media-placeholder/index.js +26 -7
- package/src/components/media-replace-flow/index.js +12 -1
- package/src/components/media-upload/README.md +2 -0
- package/src/components/media-upload/index.native.js +2 -0
- package/src/components/multi-selection-inspector/index.js +8 -9
- package/src/components/provider/use-block-sync.js +20 -20
- package/src/components/responsive-block-control/README.md +3 -26
- package/src/components/responsive-block-control/test/index.js +1 -0
- package/src/components/rich-text/content.scss +1 -1
- package/src/components/rich-text/event-listeners/paste-handler.js +6 -1
- package/src/components/rich-text/index.js +54 -41
- package/src/components/rich-text/style.scss +1 -1
- package/src/components/rich-text/use-mark-persistent.js +5 -5
- package/src/components/skip-to-selected-block/index.js +2 -0
- package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +8 -4
- package/src/components/spacing-sizes-control/style.scss +17 -16
- package/src/components/text-alignment-control/index.js +20 -8
- package/src/components/text-decoration-control/index.js +20 -8
- package/src/components/text-decoration-control/stories/index.story.js +0 -4
- package/src/components/text-transform-control/index.js +20 -8
- package/src/components/text-transform-control/stories/index.story.js +0 -4
- package/src/components/tool-selector/index.js +2 -0
- package/src/components/url-input/button.js +6 -0
- package/src/components/url-input/index.js +2 -0
- package/src/components/url-input/style.scss +2 -2
- package/src/components/url-popover/image-url-input-ui.js +2 -0
- package/src/components/url-popover/stories/index.story.js +7 -1
- package/src/components/use-block-drop-zone/index.js +21 -3
- package/src/components/warning/content.scss +3 -10
- package/src/components/writing-flow/index.js +2 -0
- package/src/components/writing-flow/use-arrow-nav.js +9 -2
- package/src/components/writing-flow/use-event-redirect.js +72 -0
- package/src/components/writing-flow/use-input.js +36 -1
- package/src/components/writing-flow/use-select-all.js +18 -1
- package/src/components/writing-flow/use-selection-observer.js +23 -3
- package/src/components/writing-flow/use-tab-nav.js +4 -4
- package/src/components/writing-flow/utils.js +30 -0
- package/src/components/writing-mode-control/index.js +20 -8
- package/src/hooks/background.js +21 -27
- package/src/hooks/block-bindings.js +64 -122
- package/src/hooks/block-bindings.scss +2 -10
- package/src/hooks/content-lock-ui.js +11 -36
- package/src/hooks/duotone.js +0 -4
- package/src/hooks/layout.js +2 -0
- package/src/hooks/layout.scss +3 -11
- package/src/hooks/spacing-visualizer.js +3 -3
- package/src/hooks/style.js +1 -4
- package/src/hooks/test/background.js +60 -0
- package/src/hooks/use-bindings-attributes.js +23 -24
- package/src/hooks/use-zoom-out.js +7 -7
- package/src/layouts/constrained.js +51 -47
- package/src/layouts/flex.js +4 -0
- package/src/layouts/grid.js +3 -0
- package/src/layouts/test/grid.js +2 -2
- package/src/layouts/test/utils.js +6 -8
- package/src/layouts/utils.js +1 -9
- package/src/private-apis.js +4 -0
- package/src/store/actions.js +4 -6
- package/src/store/private-actions.js +1 -0
- package/src/store/private-keys.js +1 -0
- package/src/store/private-selectors.js +44 -7
- package/src/store/reducer.js +2 -0
- package/src/store/selectors.js +32 -51
- package/src/store/test/private-selectors.js +89 -0
- package/src/store/utils.js +50 -0
- package/src/style.scss +0 -1
- package/src/utils/block-bindings.js +97 -0
- package/src/utils/dom.js +117 -0
- package/src/utils/get-font-styles-and-weights.js +12 -4
- package/src/utils/test/get-font-styles-and-weights.js +148 -0
- package/src/utils/test/transform-styles.js +284 -26
- package/src/utils/transform-styles/index.js +132 -21
- package/tsconfig.json +1 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/build/components/global-styles/theme-file-uri-utils.js +0 -21
- package/build/components/global-styles/theme-file-uri-utils.js.map +0 -1
- package/build/components/inner-blocks/with-client-id.js +0 -28
- package/build/components/inner-blocks/with-client-id.js.map +0 -1
- package/build/components/segmented-text-control/index.js +0 -63
- package/build/components/segmented-text-control/index.js.map +0 -1
- package/build-module/components/global-styles/theme-file-uri-utils.js +0 -15
- package/build-module/components/global-styles/theme-file-uri-utils.js.map +0 -1
- package/build-module/components/inner-blocks/with-client-id.js +0 -21
- package/build-module/components/inner-blocks/with-client-id.js.map +0 -1
- package/build-module/components/segmented-text-control/index.js +0 -58
- package/build-module/components/segmented-text-control/index.js.map +0 -1
- package/src/components/global-styles/test/theme-file-uri-utils.js +0 -41
- package/src/components/global-styles/theme-file-uri-utils.js +0 -18
- package/src/components/inner-blocks/with-client-id.js +0 -19
- package/src/components/segmented-text-control/index.js +0 -63
- package/src/components/segmented-text-control/style.scss +0 -15
- package/src/utils/test/__snapshots__/transform-styles.js.snap +0 -109
|
@@ -32,6 +32,7 @@ function getShowTabs( blockName, tabSettings = {} ) {
|
|
|
32
32
|
export default function useInspectorControlsTabs( blockName ) {
|
|
33
33
|
const tabs = [];
|
|
34
34
|
const {
|
|
35
|
+
bindings: bindingsGroup,
|
|
35
36
|
border: borderGroup,
|
|
36
37
|
color: colorGroup,
|
|
37
38
|
default: defaultGroup,
|
|
@@ -64,8 +65,10 @@ export default function useInspectorControlsTabs( blockName ) {
|
|
|
64
65
|
// (i.e. both list view and styles), check only the default and position
|
|
65
66
|
// InspectorControls slots. If we have multiple tabs, we'll need to check
|
|
66
67
|
// the advanced controls slot as well to ensure they are rendered.
|
|
67
|
-
const advancedFills =
|
|
68
|
-
useSlotFills( InspectorAdvancedControls.slotName ) || []
|
|
68
|
+
const advancedFills = [
|
|
69
|
+
...( useSlotFills( InspectorAdvancedControls.slotName ) || [] ),
|
|
70
|
+
...( useSlotFills( bindingsGroup.Slot.__unstableName ) || [] ),
|
|
71
|
+
];
|
|
69
72
|
|
|
70
73
|
const settingsFills = [
|
|
71
74
|
...( useSlotFills( defaultGroup.Slot.__unstableName ) || [] ),
|
|
@@ -31,6 +31,8 @@ export default function InspectorPopoverHeader( {
|
|
|
31
31
|
<Spacer />
|
|
32
32
|
{ actions.map( ( { label, icon, onClick } ) => (
|
|
33
33
|
<Button
|
|
34
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
35
|
+
__next40pxDefaultSize={ false }
|
|
34
36
|
key={ label }
|
|
35
37
|
className="block-editor-inspector-popover-header__action"
|
|
36
38
|
label={ label }
|
|
@@ -43,6 +45,8 @@ export default function InspectorPopoverHeader( {
|
|
|
43
45
|
) ) }
|
|
44
46
|
{ onClose && (
|
|
45
47
|
<Button
|
|
48
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
49
|
+
__next40pxDefaultSize={ false }
|
|
46
50
|
className="block-editor-inspector-popover-header__action"
|
|
47
51
|
label={ __( 'Close' ) }
|
|
48
52
|
icon={ closeSmall }
|
|
@@ -38,13 +38,20 @@ The current value of the letter spacing setting.
|
|
|
38
38
|
|
|
39
39
|
A callback function invoked when the value is changed.
|
|
40
40
|
|
|
41
|
-
### `
|
|
41
|
+
### `__unstableInputWidth`
|
|
42
42
|
|
|
43
43
|
- **Type:** `string|number|undefined`
|
|
44
44
|
- **Default:** `undefined`
|
|
45
45
|
|
|
46
46
|
Input width to pass through to inner UnitControl. Should be a valid CSS value.
|
|
47
47
|
|
|
48
|
+
#### `__next40pxDefaultSize`
|
|
49
|
+
|
|
50
|
+
- **Type:** `boolean`
|
|
51
|
+
- **Default:** `false`
|
|
52
|
+
|
|
53
|
+
Start opting into the larger default height that will become the default size in a future version.
|
|
54
|
+
|
|
48
55
|
## Related components
|
|
49
56
|
|
|
50
57
|
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.
|
|
@@ -15,14 +15,16 @@ import { useSettings } from '../../components/use-settings';
|
|
|
15
15
|
/**
|
|
16
16
|
* Control for letter-spacing.
|
|
17
17
|
*
|
|
18
|
-
* @param {Object} props
|
|
19
|
-
* @param {
|
|
20
|
-
* @param {
|
|
21
|
-
* @param {
|
|
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.
|
|
22
23
|
*
|
|
23
24
|
* @return {Element} Letter-spacing control.
|
|
24
25
|
*/
|
|
25
26
|
export default function LetterSpacingControl( {
|
|
27
|
+
__next40pxDefaultSize = false,
|
|
26
28
|
value,
|
|
27
29
|
onChange,
|
|
28
30
|
__unstableInputWidth = '60px',
|
|
@@ -35,6 +37,7 @@ export default function LetterSpacingControl( {
|
|
|
35
37
|
} );
|
|
36
38
|
return (
|
|
37
39
|
<UnitControl
|
|
40
|
+
__next40pxDefaultSize={ __next40pxDefaultSize }
|
|
38
41
|
{ ...otherProps }
|
|
39
42
|
label={ __( 'Letter spacing' ) }
|
|
40
43
|
value={ value }
|
|
@@ -36,6 +36,13 @@ The value of the line height.
|
|
|
36
36
|
|
|
37
37
|
A callback function that handles the application of the line height value.
|
|
38
38
|
|
|
39
|
+
#### `__next40pxDefaultSize`
|
|
40
|
+
|
|
41
|
+
- **Type:** `boolean`
|
|
42
|
+
- **Default:** `false`
|
|
43
|
+
|
|
44
|
+
Start opting into the larger default height that will become the default size in a future version.
|
|
45
|
+
|
|
39
46
|
## Related components
|
|
40
47
|
|
|
41
48
|
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.
|
|
@@ -16,6 +16,8 @@ import {
|
|
|
16
16
|
} from './utils';
|
|
17
17
|
|
|
18
18
|
const LineHeightControl = ( {
|
|
19
|
+
/** Start opting into the larger default height that will become the default size in a future version. */
|
|
20
|
+
__next40pxDefaultSize = false,
|
|
19
21
|
value: lineHeight,
|
|
20
22
|
onChange,
|
|
21
23
|
__unstableInputWidth = '60px',
|
|
@@ -91,6 +93,7 @@ const LineHeightControl = ( {
|
|
|
91
93
|
<div className="block-editor-line-height-control">
|
|
92
94
|
<NumberControl
|
|
93
95
|
{ ...otherProps }
|
|
96
|
+
__next40pxDefaultSize={ __next40pxDefaultSize }
|
|
94
97
|
__unstableInputWidth={ __unstableInputWidth }
|
|
95
98
|
__unstableStateReducer={ stateReducer }
|
|
96
99
|
onChange={ handleOnChange }
|
|
@@ -180,10 +180,10 @@ function LinkControl( {
|
|
|
180
180
|
// Therefore a local state is used as a fallback.
|
|
181
181
|
const isSettingsOpen = advancedSettingsPreference || settingsOpen;
|
|
182
182
|
|
|
183
|
-
const
|
|
183
|
+
const isMountingRef = useRef( true );
|
|
184
184
|
const wrapperNode = useRef();
|
|
185
185
|
const textInputRef = useRef();
|
|
186
|
-
const
|
|
186
|
+
const isEndingEditWithFocusRef = useRef( false );
|
|
187
187
|
|
|
188
188
|
const settingsKeys = settings.map( ( { id } ) => id );
|
|
189
189
|
|
|
@@ -219,7 +219,7 @@ function LinkControl( {
|
|
|
219
219
|
// We don't auto focus into the Link UI on mount
|
|
220
220
|
// because otherwise using the keyboard to select text
|
|
221
221
|
// *within* the link format is not possible.
|
|
222
|
-
if (
|
|
222
|
+
if ( isMountingRef.current ) {
|
|
223
223
|
return;
|
|
224
224
|
}
|
|
225
225
|
|
|
@@ -234,16 +234,16 @@ function LinkControl( {
|
|
|
234
234
|
|
|
235
235
|
nextFocusTarget.focus();
|
|
236
236
|
|
|
237
|
-
|
|
237
|
+
isEndingEditWithFocusRef.current = false;
|
|
238
238
|
}, [ isEditingLink, isCreatingPage ] );
|
|
239
239
|
|
|
240
240
|
// The component mounting reference is maintained separately
|
|
241
241
|
// to correctly reset values in `StrictMode`.
|
|
242
242
|
useEffect( () => {
|
|
243
|
-
|
|
243
|
+
isMountingRef.current = false;
|
|
244
244
|
|
|
245
245
|
return () => {
|
|
246
|
-
|
|
246
|
+
isMountingRef.current = true;
|
|
247
247
|
};
|
|
248
248
|
}, [] );
|
|
249
249
|
|
|
@@ -254,7 +254,7 @@ function LinkControl( {
|
|
|
254
254
|
* the next render, if focus was within the wrapper when editing finished.
|
|
255
255
|
*/
|
|
256
256
|
const stopEditing = () => {
|
|
257
|
-
|
|
257
|
+
isEndingEditWithFocusRef.current = !! wrapperNode.current?.contains(
|
|
258
258
|
wrapperNode.current.ownerDocument.activeElement
|
|
259
259
|
);
|
|
260
260
|
|
|
@@ -408,6 +408,8 @@ function LinkControl( {
|
|
|
408
408
|
{ ! showActions && (
|
|
409
409
|
<div className="block-editor-link-control__search-enter">
|
|
410
410
|
<Button
|
|
411
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
412
|
+
__next40pxDefaultSize={ false }
|
|
411
413
|
onClick={ isDisabled ? noop : handleSubmit }
|
|
412
414
|
label={ __( 'Submit' ) }
|
|
413
415
|
icon={ keyboardReturn }
|
|
@@ -467,10 +469,17 @@ function LinkControl( {
|
|
|
467
469
|
justify="right"
|
|
468
470
|
className="block-editor-link-control__search-actions"
|
|
469
471
|
>
|
|
470
|
-
<Button
|
|
472
|
+
<Button
|
|
473
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
474
|
+
__next40pxDefaultSize={ false }
|
|
475
|
+
variant="tertiary"
|
|
476
|
+
onClick={ handleCancel }
|
|
477
|
+
>
|
|
471
478
|
{ __( 'Cancel' ) }
|
|
472
479
|
</Button>
|
|
473
480
|
<Button
|
|
481
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
482
|
+
__next40pxDefaultSize={ false }
|
|
474
483
|
variant="primary"
|
|
475
484
|
onClick={ isDisabled ? noop : handleSubmit }
|
|
476
485
|
className="block-editor-link-control__search-submit"
|
|
@@ -25,6 +25,8 @@ function LinkSettingsDrawer( { children, settingsOpen, setSettingsOpen } ) {
|
|
|
25
25
|
return (
|
|
26
26
|
<>
|
|
27
27
|
<Button
|
|
28
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
29
|
+
__next40pxDefaultSize={ false }
|
|
28
30
|
className="block-editor-link-control__drawer-toggle"
|
|
29
31
|
aria-expanded={ settingsOpen }
|
|
30
32
|
onClick={ () => setSettingsOpen( ! settingsOpen ) }
|
|
@@ -77,8 +77,7 @@ $block-editor-link-control-number-of-actions: 1;
|
|
|
77
77
|
&.block-editor-url-input input[type="text"].block-editor-url-input__input {
|
|
78
78
|
@include input-control;
|
|
79
79
|
display: block;
|
|
80
|
-
border:
|
|
81
|
-
border-radius: $radius-block-ui;
|
|
80
|
+
border: $border-width solid $gray-600;
|
|
82
81
|
height: $button-size-next-default-40px; // components do not properly support unstable-large yet.
|
|
83
82
|
margin: 0;
|
|
84
83
|
padding: $grid-unit-10 $button-size-next-default-40px $grid-unit-10 $grid-unit-20;
|
|
@@ -230,7 +229,7 @@ $block-editor-link-control-number-of-actions: 1;
|
|
|
230
229
|
background-color: $gray-100;
|
|
231
230
|
width: $grid-unit-40;
|
|
232
231
|
height: $grid-unit-40;
|
|
233
|
-
border-radius: $radius-
|
|
232
|
+
border-radius: $radius-small;
|
|
234
233
|
}
|
|
235
234
|
|
|
236
235
|
.block-editor-link-control__search-item-icon {
|
|
@@ -252,7 +251,6 @@ $block-editor-link-control-number-of-actions: 1;
|
|
|
252
251
|
}
|
|
253
252
|
|
|
254
253
|
.block-editor-link-control__search-item-title {
|
|
255
|
-
border-radius: $radius-block-ui;
|
|
256
254
|
line-height: 1.1;
|
|
257
255
|
|
|
258
256
|
|
|
@@ -101,16 +101,16 @@
|
|
|
101
101
|
|
|
102
102
|
// Border radius for corners of the selected item.
|
|
103
103
|
&.is-first-selected td:first-child {
|
|
104
|
-
border-top-left-radius: $radius-
|
|
104
|
+
border-top-left-radius: $radius-small;
|
|
105
105
|
}
|
|
106
106
|
&.is-first-selected td:last-child {
|
|
107
|
-
border-top-right-radius: $radius-
|
|
107
|
+
border-top-right-radius: $radius-small;
|
|
108
108
|
}
|
|
109
109
|
&.is-last-selected td:first-child {
|
|
110
|
-
border-bottom-left-radius: $radius-
|
|
110
|
+
border-bottom-left-radius: $radius-small;
|
|
111
111
|
}
|
|
112
112
|
&.is-last-selected td:last-child {
|
|
113
|
-
border-bottom-right-radius: $radius-
|
|
113
|
+
border-bottom-right-radius: $radius-small;
|
|
114
114
|
}
|
|
115
115
|
&.is-branch-selected:not(.is-selected):not(.is-synced-branch) {
|
|
116
116
|
background: rgba(var(--wp-admin-theme-color--rgb), 0.04);
|
|
@@ -119,23 +119,23 @@
|
|
|
119
119
|
background: rgba(var(--wp-block-synced-color--rgb), 0.04);
|
|
120
120
|
}
|
|
121
121
|
&.is-branch-selected.is-first-selected td:first-child {
|
|
122
|
-
border-top-left-radius: $radius-
|
|
122
|
+
border-top-left-radius: $radius-small;
|
|
123
123
|
}
|
|
124
124
|
&.is-branch-selected.is-first-selected td:last-child {
|
|
125
|
-
border-top-right-radius: $radius-
|
|
125
|
+
border-top-right-radius: $radius-small;
|
|
126
126
|
}
|
|
127
127
|
&[data-expanded="false"] {
|
|
128
128
|
&.is-branch-selected.is-first-selected td:first-child {
|
|
129
|
-
border-top-left-radius: $radius-
|
|
129
|
+
border-top-left-radius: $radius-small;
|
|
130
130
|
}
|
|
131
131
|
&.is-branch-selected.is-first-selected td:last-child {
|
|
132
|
-
border-top-right-radius: $radius-
|
|
132
|
+
border-top-right-radius: $radius-small;
|
|
133
133
|
}
|
|
134
134
|
&.is-branch-selected.is-last-selected td:first-child {
|
|
135
|
-
border-bottom-left-radius: $radius-
|
|
135
|
+
border-bottom-left-radius: $radius-small;
|
|
136
136
|
}
|
|
137
137
|
&.is-branch-selected.is-last-selected td:last-child {
|
|
138
|
-
border-bottom-right-radius: $radius-
|
|
138
|
+
border-bottom-right-radius: $radius-small;
|
|
139
139
|
}
|
|
140
140
|
}
|
|
141
141
|
&.is-branch-selected:not(.is-selected) td {
|
|
@@ -214,7 +214,6 @@
|
|
|
214
214
|
height: $grid-unit-40;
|
|
215
215
|
padding: ($grid-unit-15 * 0.5) $grid-unit-05 ($grid-unit-15 * 0.5) 0;
|
|
216
216
|
text-align: left;
|
|
217
|
-
border-radius: $radius-block-ui;
|
|
218
217
|
position: relative;
|
|
219
218
|
white-space: nowrap;
|
|
220
219
|
|
|
@@ -406,7 +405,7 @@
|
|
|
406
405
|
right: 0;
|
|
407
406
|
transform: translateY(-50%);
|
|
408
407
|
background: rgba($black, 0.1);
|
|
409
|
-
border-radius: $radius-
|
|
408
|
+
border-radius: $radius-x-small;
|
|
410
409
|
padding: 2px 6px;
|
|
411
410
|
max-width: 100%;
|
|
412
411
|
box-sizing: border-box;
|
|
@@ -429,10 +428,10 @@
|
|
|
429
428
|
background-size: cover;
|
|
430
429
|
width: 18px;
|
|
431
430
|
height: 18px;
|
|
432
|
-
border-radius: $radius-
|
|
431
|
+
border-radius: $radius-x-small;
|
|
433
432
|
|
|
434
433
|
&:not(:only-child) {
|
|
435
|
-
box-shadow: 0 0 0 $radius-
|
|
434
|
+
box-shadow: 0 0 0 $radius-small $white;
|
|
436
435
|
}
|
|
437
436
|
|
|
438
437
|
&:not(:first-child) {
|
|
@@ -442,7 +441,7 @@
|
|
|
442
441
|
|
|
443
442
|
&.is-selected .block-editor-list-view-block-select-button__image {
|
|
444
443
|
&:not(:only-child) {
|
|
445
|
-
box-shadow: 0 0 0 $radius-
|
|
444
|
+
box-shadow: 0 0 0 $radius-small var(--wp-admin-theme-color);
|
|
446
445
|
}
|
|
447
446
|
}
|
|
448
447
|
}
|
|
@@ -553,7 +552,6 @@ svg {
|
|
|
553
552
|
background-color: #1e1e1e;
|
|
554
553
|
color: #fff;
|
|
555
554
|
margin: $grid-unit-10 0 0 24px;
|
|
556
|
-
border-radius: 2px;
|
|
557
555
|
height: 24px;
|
|
558
556
|
min-width: 24px;
|
|
559
557
|
padding: 0;
|
|
@@ -51,6 +51,8 @@ const InsertFromURLPopover = ( {
|
|
|
51
51
|
value={ src }
|
|
52
52
|
/>
|
|
53
53
|
<Button
|
|
54
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
55
|
+
__next40pxDefaultSize={ false }
|
|
54
56
|
className="block-editor-media-placeholder__url-input-submit-button"
|
|
55
57
|
icon={ keyboardReturn }
|
|
56
58
|
label={ __( 'Apply' ) }
|
|
@@ -85,6 +87,8 @@ const URLSelectionUI = ( { src, onChangeSrc, onSelectURL } ) => {
|
|
|
85
87
|
return (
|
|
86
88
|
<div className="block-editor-media-placeholder__url-input-container">
|
|
87
89
|
<Button
|
|
90
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
91
|
+
__next40pxDefaultSize={ false }
|
|
88
92
|
className="block-editor-media-placeholder__button"
|
|
89
93
|
onClick={ openURLInput }
|
|
90
94
|
isPressed={ isURLInputVisible }
|
|
@@ -382,6 +386,8 @@ export function MediaPlaceholder( {
|
|
|
382
386
|
return (
|
|
383
387
|
onCancel && (
|
|
384
388
|
<Button
|
|
389
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
390
|
+
__next40pxDefaultSize={ false }
|
|
385
391
|
className="block-editor-media-placeholder__cancel-button"
|
|
386
392
|
title={ __( 'Cancel' ) }
|
|
387
393
|
variant="link"
|
|
@@ -410,6 +416,8 @@ export function MediaPlaceholder( {
|
|
|
410
416
|
onToggleFeaturedImage && (
|
|
411
417
|
<div className="block-editor-media-placeholder__url-input-container">
|
|
412
418
|
<Button
|
|
419
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
420
|
+
__next40pxDefaultSize={ false }
|
|
413
421
|
className="block-editor-media-placeholder__button"
|
|
414
422
|
onClick={ onToggleFeaturedImage }
|
|
415
423
|
variant="secondary"
|
|
@@ -425,6 +433,8 @@ export function MediaPlaceholder( {
|
|
|
425
433
|
const defaultButton = ( { open } ) => {
|
|
426
434
|
return (
|
|
427
435
|
<Button
|
|
436
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
437
|
+
__next40pxDefaultSize={ false }
|
|
428
438
|
variant="secondary"
|
|
429
439
|
onClick={ () => {
|
|
430
440
|
open();
|
|
@@ -464,6 +474,8 @@ export function MediaPlaceholder( {
|
|
|
464
474
|
const content = (
|
|
465
475
|
<>
|
|
466
476
|
<Button
|
|
477
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
478
|
+
__next40pxDefaultSize={ false }
|
|
467
479
|
variant="primary"
|
|
468
480
|
className={ clsx(
|
|
469
481
|
'block-editor-media-placeholder__button',
|
|
@@ -491,17 +503,24 @@ export function MediaPlaceholder( {
|
|
|
491
503
|
<>
|
|
492
504
|
{ renderDropZone() }
|
|
493
505
|
<FormFileUpload
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
506
|
+
render={ ( { openFileDialog } ) => (
|
|
507
|
+
<Button
|
|
508
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
509
|
+
__next40pxDefaultSize={ false }
|
|
510
|
+
onClick={ openFileDialog }
|
|
511
|
+
variant="primary"
|
|
512
|
+
className={ clsx(
|
|
513
|
+
'block-editor-media-placeholder__button',
|
|
514
|
+
'block-editor-media-placeholder__upload-button'
|
|
515
|
+
) }
|
|
516
|
+
>
|
|
517
|
+
{ __( 'Upload' ) }
|
|
518
|
+
</Button>
|
|
498
519
|
) }
|
|
499
520
|
onChange={ onUpload }
|
|
500
521
|
accept={ accept }
|
|
501
522
|
multiple={ !! multiple }
|
|
502
|
-
|
|
503
|
-
{ __( 'Upload' ) }
|
|
504
|
-
</FormFileUpload>
|
|
523
|
+
/>
|
|
505
524
|
{ uploadMediaLibraryButton }
|
|
506
525
|
{ renderUrlSelectionUI() }
|
|
507
526
|
{ renderFeaturedImageToggle() }
|
|
@@ -48,6 +48,7 @@ const MediaReplaceFlow = ( {
|
|
|
48
48
|
onError,
|
|
49
49
|
onSelect,
|
|
50
50
|
onSelectURL,
|
|
51
|
+
onReset,
|
|
51
52
|
onToggleFeaturedImage,
|
|
52
53
|
useFeaturedImage,
|
|
53
54
|
onFilesUpload = noop,
|
|
@@ -75,7 +76,7 @@ const MediaReplaceFlow = ( {
|
|
|
75
76
|
}
|
|
76
77
|
// We need to set a timeout for showing the notice
|
|
77
78
|
// so that VoiceOver and possibly other screen readers
|
|
78
|
-
// can announce the error
|
|
79
|
+
// can announce the error after the toolbar button
|
|
79
80
|
// regains focus once the upload dialog closes.
|
|
80
81
|
// Otherwise VO simply skips over the notice and announces
|
|
81
82
|
// the focused element and the open menu.
|
|
@@ -202,6 +203,16 @@ const MediaReplaceFlow = ( {
|
|
|
202
203
|
{ __( 'Use featured image' ) }
|
|
203
204
|
</MenuItem>
|
|
204
205
|
) }
|
|
206
|
+
{ mediaURL && onReset && (
|
|
207
|
+
<MenuItem
|
|
208
|
+
onClick={ () => {
|
|
209
|
+
onReset();
|
|
210
|
+
onClose();
|
|
211
|
+
} }
|
|
212
|
+
>
|
|
213
|
+
{ __( 'Reset' ) }
|
|
214
|
+
</MenuItem>
|
|
215
|
+
) }
|
|
205
216
|
{ typeof children === 'function'
|
|
206
217
|
? children( { onClose } )
|
|
207
218
|
: children }
|
|
@@ -105,6 +105,8 @@ Callback called when the media modal is closed after media is selected.
|
|
|
105
105
|
|
|
106
106
|
This is called subsequent to `onClose` when media is selected. The selected media are passed as an argument.
|
|
107
107
|
|
|
108
|
+
The `image.sizes.full` resolution does always exist. Other defined sizes are only available when the image is larger and thus could be scaled down.
|
|
109
|
+
|
|
108
110
|
- Type: `Function`
|
|
109
111
|
- Required: Yes
|
|
110
112
|
- Platform: Web | Mobile
|
|
@@ -327,6 +327,8 @@ function URLInput( props ) {
|
|
|
327
327
|
>
|
|
328
328
|
<PanelBody style={ styles[ 'media-upload__link-input' ] }>
|
|
329
329
|
<TextControl
|
|
330
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
331
|
+
__next40pxDefaultSize={ false }
|
|
330
332
|
// eslint-disable-next-line jsx-a11y/no-autofocus
|
|
331
333
|
autoFocus
|
|
332
334
|
autoCapitalize="none"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
4
|
import { sprintf, _n } from '@wordpress/i18n';
|
|
5
|
-
import {
|
|
5
|
+
import { useSelect } from '@wordpress/data';
|
|
6
6
|
import { serialize } from '@wordpress/blocks';
|
|
7
7
|
import { count as wordCount } from '@wordpress/wordcount';
|
|
8
8
|
import { copy } from '@wordpress/icons';
|
|
@@ -13,7 +13,13 @@ import { copy } from '@wordpress/icons';
|
|
|
13
13
|
import BlockIcon from '../block-icon';
|
|
14
14
|
import { store as blockEditorStore } from '../../store';
|
|
15
15
|
|
|
16
|
-
function MultiSelectionInspector(
|
|
16
|
+
export default function MultiSelectionInspector() {
|
|
17
|
+
const { blocks } = useSelect( ( select ) => {
|
|
18
|
+
const { getMultiSelectedBlocks } = select( blockEditorStore );
|
|
19
|
+
return {
|
|
20
|
+
blocks: getMultiSelectedBlocks(),
|
|
21
|
+
};
|
|
22
|
+
}, [] );
|
|
17
23
|
const words = wordCount( serialize( blocks ), 'words' );
|
|
18
24
|
|
|
19
25
|
return (
|
|
@@ -38,10 +44,3 @@ function MultiSelectionInspector( { blocks } ) {
|
|
|
38
44
|
</div>
|
|
39
45
|
);
|
|
40
46
|
}
|
|
41
|
-
|
|
42
|
-
export default withSelect( ( select ) => {
|
|
43
|
-
const { getMultiSelectedBlocks } = select( blockEditorStore );
|
|
44
|
-
return {
|
|
45
|
-
blocks: getMultiSelectedBlocks(),
|
|
46
|
-
};
|
|
47
|
-
} )( MultiSelectionInspector );
|
|
@@ -91,8 +91,8 @@ export default function useBlockSync( {
|
|
|
91
91
|
[ clientId ]
|
|
92
92
|
);
|
|
93
93
|
|
|
94
|
-
const
|
|
95
|
-
const
|
|
94
|
+
const pendingChangesRef = useRef( { incoming: null, outgoing: [] } );
|
|
95
|
+
const subscribedRef = useRef( false );
|
|
96
96
|
|
|
97
97
|
const setControlledBlocks = () => {
|
|
98
98
|
if ( ! controlledBlocks ) {
|
|
@@ -113,15 +113,15 @@ export default function useBlockSync( {
|
|
|
113
113
|
const storeBlocks = controlledBlocks.map( ( block ) =>
|
|
114
114
|
cloneBlock( block )
|
|
115
115
|
);
|
|
116
|
-
if (
|
|
117
|
-
|
|
116
|
+
if ( subscribedRef.current ) {
|
|
117
|
+
pendingChangesRef.current.incoming = storeBlocks;
|
|
118
118
|
}
|
|
119
119
|
__unstableMarkNextChangeAsNotPersistent();
|
|
120
120
|
replaceInnerBlocks( clientId, storeBlocks );
|
|
121
121
|
} );
|
|
122
122
|
} else {
|
|
123
|
-
if (
|
|
124
|
-
|
|
123
|
+
if ( subscribedRef.current ) {
|
|
124
|
+
pendingChangesRef.current.incoming = controlledBlocks;
|
|
125
125
|
}
|
|
126
126
|
resetBlocks( controlledBlocks );
|
|
127
127
|
}
|
|
@@ -153,7 +153,7 @@ export default function useBlockSync( {
|
|
|
153
153
|
|
|
154
154
|
// Determine if blocks need to be reset when they change.
|
|
155
155
|
useEffect( () => {
|
|
156
|
-
if (
|
|
156
|
+
if ( pendingChangesRef.current.outgoing.includes( controlledBlocks ) ) {
|
|
157
157
|
// Skip block reset if the value matches expected outbound sync
|
|
158
158
|
// triggered by this component by a preceding change detection.
|
|
159
159
|
// Only skip if the value matches expectation, since a reset should
|
|
@@ -161,18 +161,18 @@ export default function useBlockSync( {
|
|
|
161
161
|
// to allow that the consumer may apply modifications to reflect
|
|
162
162
|
// back on the editor.
|
|
163
163
|
if (
|
|
164
|
-
|
|
165
|
-
|
|
164
|
+
pendingChangesRef.current.outgoing[
|
|
165
|
+
pendingChangesRef.current.outgoing.length - 1
|
|
166
166
|
] === controlledBlocks
|
|
167
167
|
) {
|
|
168
|
-
|
|
168
|
+
pendingChangesRef.current.outgoing = [];
|
|
169
169
|
}
|
|
170
170
|
} else if ( getBlocks( clientId ) !== controlledBlocks ) {
|
|
171
171
|
// Reset changing value in all other cases than the sync described
|
|
172
172
|
// above. Since this can be reached in an update following an out-
|
|
173
173
|
// bound sync, unset the outbound value to avoid considering it in
|
|
174
174
|
// subsequent renders.
|
|
175
|
-
|
|
175
|
+
pendingChangesRef.current.outgoing = [];
|
|
176
176
|
setControlledBlocks();
|
|
177
177
|
|
|
178
178
|
if ( controlledSelection ) {
|
|
@@ -185,19 +185,19 @@ export default function useBlockSync( {
|
|
|
185
185
|
}
|
|
186
186
|
}, [ controlledBlocks, clientId ] );
|
|
187
187
|
|
|
188
|
-
const
|
|
188
|
+
const isMountedRef = useRef( false );
|
|
189
189
|
|
|
190
190
|
useEffect( () => {
|
|
191
191
|
// On mount, controlled blocks are already set in the effect above.
|
|
192
|
-
if ( !
|
|
193
|
-
|
|
192
|
+
if ( ! isMountedRef.current ) {
|
|
193
|
+
isMountedRef.current = true;
|
|
194
194
|
return;
|
|
195
195
|
}
|
|
196
196
|
|
|
197
197
|
// When the block becomes uncontrolled, it means its inner state has been reset
|
|
198
198
|
// we need to take the blocks again from the external value property.
|
|
199
199
|
if ( ! isControlled ) {
|
|
200
|
-
|
|
200
|
+
pendingChangesRef.current.outgoing = [];
|
|
201
201
|
setControlledBlocks();
|
|
202
202
|
}
|
|
203
203
|
}, [ isControlled ] );
|
|
@@ -214,7 +214,7 @@ export default function useBlockSync( {
|
|
|
214
214
|
let isPersistent = isLastBlockChangePersistent();
|
|
215
215
|
let previousAreBlocksDifferent = false;
|
|
216
216
|
|
|
217
|
-
|
|
217
|
+
subscribedRef.current = true;
|
|
218
218
|
const unsubscribe = registry.subscribe( () => {
|
|
219
219
|
// Sometimes, when changing block lists, lingering subscriptions
|
|
220
220
|
// might trigger before they are cleaned up. If the block for which
|
|
@@ -243,10 +243,10 @@ export default function useBlockSync( {
|
|
|
243
243
|
blocks = newBlocks;
|
|
244
244
|
if (
|
|
245
245
|
areBlocksDifferent &&
|
|
246
|
-
(
|
|
246
|
+
( pendingChangesRef.current.incoming ||
|
|
247
247
|
__unstableIsLastBlockChangeIgnored() )
|
|
248
248
|
) {
|
|
249
|
-
|
|
249
|
+
pendingChangesRef.current.incoming = null;
|
|
250
250
|
isPersistent = newIsPersistent;
|
|
251
251
|
return;
|
|
252
252
|
}
|
|
@@ -266,7 +266,7 @@ export default function useBlockSync( {
|
|
|
266
266
|
// We need to be aware that it was caused by an outgoing change
|
|
267
267
|
// so that we do not treat it as an incoming change later on,
|
|
268
268
|
// which would cause a block reset.
|
|
269
|
-
|
|
269
|
+
pendingChangesRef.current.outgoing.push( blocks );
|
|
270
270
|
|
|
271
271
|
// Inform the controlling entity that changes have been made to
|
|
272
272
|
// the block-editor store they should be aware about.
|
|
@@ -286,7 +286,7 @@ export default function useBlockSync( {
|
|
|
286
286
|
}, blockEditorStore );
|
|
287
287
|
|
|
288
288
|
return () => {
|
|
289
|
-
|
|
289
|
+
subscribedRef.current = false;
|
|
290
290
|
unsubscribe();
|
|
291
291
|
};
|
|
292
292
|
}, [ registry, clientId ] );
|