@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,11 +32,9 @@ import { unlock } from '../../lock-unlock';
|
|
|
32
32
|
* @type {Array}
|
|
33
33
|
*/
|
|
34
34
|
const EMPTY_ARRAY = [];
|
|
35
|
-
const {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
useCompositeStoreV2: useCompositeStore,
|
|
39
|
-
} = unlock( componentsPrivateApis );
|
|
35
|
+
const { CompositeItemV2: CompositeItem, CompositeV2: Composite } = unlock(
|
|
36
|
+
componentsPrivateApis
|
|
37
|
+
);
|
|
40
38
|
|
|
41
39
|
export function ShadowPopoverContainer( { shadow, onShadowChange, settings } ) {
|
|
42
40
|
const shadows = useShadowPresets( settings );
|
|
@@ -52,6 +50,8 @@ export function ShadowPopoverContainer( { shadow, onShadowChange, settings } ) {
|
|
|
52
50
|
/>
|
|
53
51
|
<div className="block-editor-global-styles__clear-shadow">
|
|
54
52
|
<Button
|
|
53
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
54
|
+
__next40pxDefaultSize={ false }
|
|
55
55
|
variant="tertiary"
|
|
56
56
|
onClick={ () => onShadowChange( undefined ) }
|
|
57
57
|
>
|
|
@@ -64,10 +64,8 @@ export function ShadowPopoverContainer( { shadow, onShadowChange, settings } ) {
|
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
export function ShadowPresets( { presets, activeShadow, onSelect } ) {
|
|
67
|
-
const compositeStore = useCompositeStore();
|
|
68
67
|
return ! presets ? null : (
|
|
69
68
|
<Composite
|
|
70
|
-
store={ compositeStore }
|
|
71
69
|
role="listbox"
|
|
72
70
|
className="block-editor-global-styles__shadow__list"
|
|
73
71
|
aria-label={ __( 'Drop shadows' ) }
|
|
@@ -99,6 +97,8 @@ export function ShadowIndicator( { type, label, isActive, onSelect, shadow } ) {
|
|
|
99
97
|
} ) }
|
|
100
98
|
render={
|
|
101
99
|
<Button
|
|
100
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
101
|
+
__next40pxDefaultSize={ false }
|
|
102
102
|
className={ clsx(
|
|
103
103
|
'block-editor-global-styles__shadow-indicator',
|
|
104
104
|
{
|
|
@@ -151,7 +151,11 @@ function renderShadowToggle() {
|
|
|
151
151
|
};
|
|
152
152
|
|
|
153
153
|
return (
|
|
154
|
-
<Button
|
|
154
|
+
<Button
|
|
155
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
156
|
+
__next40pxDefaultSize={ false }
|
|
157
|
+
{ ...toggleProps }
|
|
158
|
+
>
|
|
155
159
|
<HStack justify="flex-start">
|
|
156
160
|
<Icon
|
|
157
161
|
className="block-editor-global-styles__toggle-icon"
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
.block-editor-global-styles__shadow-indicator {
|
|
40
40
|
color: $gray-800;
|
|
41
41
|
border: $gray-200 $border-width solid;
|
|
42
|
-
border-radius: $radius-
|
|
42
|
+
border-radius: $radius-small;
|
|
43
43
|
cursor: pointer;
|
|
44
44
|
padding: 0;
|
|
45
45
|
|
|
@@ -73,8 +73,8 @@
|
|
|
73
73
|
|
|
74
74
|
|
|
75
75
|
.block-editor-global-styles-background-panel__inspector-media-replace-container {
|
|
76
|
-
border:
|
|
77
|
-
border-radius:
|
|
76
|
+
border: $border-width solid $gray-300;
|
|
77
|
+
border-radius: $radius-small;
|
|
78
78
|
// Full width. ToolsPanel lays out children in a grid.
|
|
79
79
|
grid-column: 1 / -1;
|
|
80
80
|
|
|
@@ -101,8 +101,7 @@
|
|
|
101
101
|
}
|
|
102
102
|
|
|
103
103
|
.block-editor-global-styles-background-panel__image-tools-panel-item {
|
|
104
|
-
border:
|
|
105
|
-
border-radius: 2px;
|
|
104
|
+
border: $border-width solid $gray-300;
|
|
106
105
|
|
|
107
106
|
// Full width. ToolsPanel lays out children in a grid.
|
|
108
107
|
grid-column: 1 / -1;
|
|
@@ -134,6 +133,17 @@
|
|
|
134
133
|
box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);
|
|
135
134
|
}
|
|
136
135
|
}
|
|
136
|
+
|
|
137
|
+
.block-editor-global-styles-background-panel__loading {
|
|
138
|
+
height: 100%;
|
|
139
|
+
position: absolute;
|
|
140
|
+
z-index: 1;
|
|
141
|
+
width: 100%;
|
|
142
|
+
padding: 10px 0 0 0;
|
|
143
|
+
svg {
|
|
144
|
+
margin: 0;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
137
147
|
}
|
|
138
148
|
|
|
139
149
|
.block-editor-global-styles-background-panel__image-preview-content,
|
|
@@ -197,7 +207,7 @@
|
|
|
197
207
|
.components-focal-point-picker-wrapper {
|
|
198
208
|
background-color: $gray-100;
|
|
199
209
|
width: 100%;
|
|
200
|
-
border-radius: $radius-
|
|
210
|
+
border-radius: $radius-small;
|
|
201
211
|
border: $border-width solid $gray-300;
|
|
202
212
|
}
|
|
203
213
|
|
|
@@ -28,7 +28,9 @@ describe( 'typography utils', () => {
|
|
|
28
28
|
preset: {
|
|
29
29
|
size: 0,
|
|
30
30
|
},
|
|
31
|
-
typographySettings:
|
|
31
|
+
typographySettings: {
|
|
32
|
+
fluid: true,
|
|
33
|
+
},
|
|
32
34
|
expected: 0,
|
|
33
35
|
},
|
|
34
36
|
|
|
@@ -37,7 +39,9 @@ describe( 'typography utils', () => {
|
|
|
37
39
|
preset: {
|
|
38
40
|
size: '0',
|
|
39
41
|
},
|
|
40
|
-
typographySettings:
|
|
42
|
+
typographySettings: {
|
|
43
|
+
fluid: true,
|
|
44
|
+
},
|
|
41
45
|
expected: '0',
|
|
42
46
|
},
|
|
43
47
|
|
|
@@ -46,7 +50,9 @@ describe( 'typography utils', () => {
|
|
|
46
50
|
preset: {
|
|
47
51
|
size: null,
|
|
48
52
|
},
|
|
49
|
-
typographySettings:
|
|
53
|
+
typographySettings: {
|
|
54
|
+
fluid: true,
|
|
55
|
+
},
|
|
50
56
|
expected: null,
|
|
51
57
|
},
|
|
52
58
|
|
|
@@ -153,7 +159,6 @@ describe( 'typography utils', () => {
|
|
|
153
159
|
message: 'should return already clamped value',
|
|
154
160
|
preset: {
|
|
155
161
|
size: 'clamp(21px, 1.313rem + ((1vw - 7.68px) * 2.524), 42px)',
|
|
156
|
-
fluid: false,
|
|
157
162
|
},
|
|
158
163
|
settings: {
|
|
159
164
|
typography: {
|
|
@@ -168,7 +173,6 @@ describe( 'typography utils', () => {
|
|
|
168
173
|
message: 'should return value with unsupported unit',
|
|
169
174
|
preset: {
|
|
170
175
|
size: '1000%',
|
|
171
|
-
fluid: false,
|
|
172
176
|
},
|
|
173
177
|
settings: {
|
|
174
178
|
typography: {
|
|
@@ -677,6 +681,38 @@ describe( 'typography utils', () => {
|
|
|
677
681
|
},
|
|
678
682
|
expected: 'clamp(16px, 1rem + ((1vw - 6.4px) * 0.179), 17px)',
|
|
679
683
|
},
|
|
684
|
+
|
|
685
|
+
// Individual preset settings override global settings.
|
|
686
|
+
{
|
|
687
|
+
message:
|
|
688
|
+
'should convert individual preset size to fluid if fluid is disabled in global settings',
|
|
689
|
+
preset: {
|
|
690
|
+
size: '17px',
|
|
691
|
+
fluid: true,
|
|
692
|
+
},
|
|
693
|
+
settings: {
|
|
694
|
+
typography: {},
|
|
695
|
+
},
|
|
696
|
+
expected:
|
|
697
|
+
'clamp(14px, 0.875rem + ((1vw - 3.2px) * 0.234), 17px)',
|
|
698
|
+
},
|
|
699
|
+
{
|
|
700
|
+
message:
|
|
701
|
+
'should use individual preset settings if fluid is disabled in global settings',
|
|
702
|
+
preset: {
|
|
703
|
+
size: '17px',
|
|
704
|
+
fluid: {
|
|
705
|
+
min: '16px',
|
|
706
|
+
max: '26px',
|
|
707
|
+
},
|
|
708
|
+
},
|
|
709
|
+
settings: {
|
|
710
|
+
typography: {
|
|
711
|
+
fluid: false,
|
|
712
|
+
},
|
|
713
|
+
},
|
|
714
|
+
expected: 'clamp(16px, 1rem + ((1vw - 3.2px) * 0.781), 26px)',
|
|
715
|
+
},
|
|
680
716
|
].forEach( ( { message, preset, settings, expected } ) => {
|
|
681
717
|
it( `${ message }`, () => {
|
|
682
718
|
expect( getTypographyFontSizeValue( preset, settings ) ).toBe(
|
|
@@ -1255,6 +1291,61 @@ describe( 'typography utils', () => {
|
|
|
1255
1291
|
nearestFontWeight: '400',
|
|
1256
1292
|
},
|
|
1257
1293
|
},
|
|
1294
|
+
{
|
|
1295
|
+
message:
|
|
1296
|
+
'should return nearest fontStyle and fontWeight for normal/400 when fontFamilyFaces contain numerical fontWeight value',
|
|
1297
|
+
fontFamilyFaces: [
|
|
1298
|
+
{
|
|
1299
|
+
fontFamily: 'IBM Plex Mono',
|
|
1300
|
+
fontStyle: 'normal',
|
|
1301
|
+
fontWeight: 400,
|
|
1302
|
+
src: [
|
|
1303
|
+
'file:./assets/fonts/ibm-plex-mono/IBMPlexMono-Regular.woff2',
|
|
1304
|
+
],
|
|
1305
|
+
},
|
|
1306
|
+
{
|
|
1307
|
+
fontFamily: 'IBM Plex Mono',
|
|
1308
|
+
fontStyle: 'italic',
|
|
1309
|
+
fontWeight: '400',
|
|
1310
|
+
src: [
|
|
1311
|
+
'file:./assets/fonts/ibm-plex-mono/IBMPlexMono-Italic.woff2',
|
|
1312
|
+
],
|
|
1313
|
+
},
|
|
1314
|
+
{
|
|
1315
|
+
fontFamily: 'IBM Plex Mono',
|
|
1316
|
+
fontStyle: 'normal',
|
|
1317
|
+
fontWeight: '700',
|
|
1318
|
+
src: [
|
|
1319
|
+
'file:./assets/fonts/ibm-plex-mono/IBMPlexMono-Bold.woff2',
|
|
1320
|
+
],
|
|
1321
|
+
},
|
|
1322
|
+
],
|
|
1323
|
+
fontStyle: 'normal',
|
|
1324
|
+
fontWeight: '400',
|
|
1325
|
+
expected: {
|
|
1326
|
+
nearestFontStyle: 'normal',
|
|
1327
|
+
nearestFontWeight: '400',
|
|
1328
|
+
},
|
|
1329
|
+
},
|
|
1330
|
+
{
|
|
1331
|
+
message:
|
|
1332
|
+
'should return nearest fontStyle and fontWeight for normal/400 when fontFamilyFaces contain undefined fontWeight value',
|
|
1333
|
+
fontFamilyFaces: [
|
|
1334
|
+
{
|
|
1335
|
+
fontFamily: 'IBM Plex Mono',
|
|
1336
|
+
fontStyle: 'normal',
|
|
1337
|
+
src: [
|
|
1338
|
+
'file:./assets/fonts/ibm-plex-mono/IBMPlexMono-Regular.woff2',
|
|
1339
|
+
],
|
|
1340
|
+
},
|
|
1341
|
+
],
|
|
1342
|
+
fontStyle: 'normal',
|
|
1343
|
+
fontWeight: '400',
|
|
1344
|
+
expected: {
|
|
1345
|
+
nearestFontStyle: 'normal',
|
|
1346
|
+
nearestFontWeight: '700',
|
|
1347
|
+
},
|
|
1348
|
+
},
|
|
1258
1349
|
].forEach(
|
|
1259
1350
|
( {
|
|
1260
1351
|
message,
|
|
@@ -763,7 +763,7 @@ describe( 'global styles renderer', () => {
|
|
|
763
763
|
} );
|
|
764
764
|
|
|
765
765
|
expect( layoutStyles ).toEqual(
|
|
766
|
-
'.is-layout-flow > * { margin-block-start: 0; margin-block-end: 0; }.is-layout-flow > * + * { margin-block-start: 0.5em; margin-block-end: 0; }.is-layout-flex { gap: 0.5em; }:root { --wp--style--block-gap: 0.5em; }.is-layout-flow > .alignleft { float: left; margin-inline-start: 0; margin-inline-end: 2em; }.is-layout-flow > .alignright { float: right; margin-inline-start: 2em; margin-inline-end: 0; }.is-layout-flow > .aligncenter { margin-left: auto !important; margin-right: auto !important; }body .is-layout-flex { display:flex; }.is-layout-flex { flex-wrap: wrap; align-items: center; }.is-layout-flex > * { margin: 0; }'
|
|
766
|
+
':root :where(.is-layout-flow) > * { margin-block-start: 0; margin-block-end: 0; }:root :where(.is-layout-flow) > * + * { margin-block-start: 0.5em; margin-block-end: 0; }:root :where(.is-layout-flex) { gap: 0.5em; }:root { --wp--style--block-gap: 0.5em; }.is-layout-flow > .alignleft { float: left; margin-inline-start: 0; margin-inline-end: 2em; }.is-layout-flow > .alignright { float: right; margin-inline-start: 2em; margin-inline-end: 0; }.is-layout-flow > .aligncenter { margin-left: auto !important; margin-right: auto !important; }body .is-layout-flex { display:flex; }.is-layout-flex { flex-wrap: wrap; align-items: center; }.is-layout-flex > * { margin: 0; }'
|
|
767
767
|
);
|
|
768
768
|
} );
|
|
769
769
|
|
|
@@ -780,7 +780,7 @@ describe( 'global styles renderer', () => {
|
|
|
780
780
|
} );
|
|
781
781
|
|
|
782
782
|
expect( layoutStyles ).toEqual(
|
|
783
|
-
'.is-layout-flow > * { margin-block-start: 0; margin-block-end: 0; }.is-layout-flow > * + * { margin-block-start: 12px; margin-block-end: 0; }.is-layout-flex { gap: 12px; }:root { --wp--style--block-gap: 12px; }.is-layout-flow > .alignleft { float: left; margin-inline-start: 0; margin-inline-end: 2em; }.is-layout-flow > .alignright { float: right; margin-inline-start: 2em; margin-inline-end: 0; }.is-layout-flow > .aligncenter { margin-left: auto !important; margin-right: auto !important; }body .is-layout-flex { display:flex; }.is-layout-flex { flex-wrap: wrap; align-items: center; }.is-layout-flex > * { margin: 0; }'
|
|
783
|
+
':root :where(.is-layout-flow) > * { margin-block-start: 0; margin-block-end: 0; }:root :where(.is-layout-flow) > * + * { margin-block-start: 12px; margin-block-end: 0; }:root :where(.is-layout-flex) { gap: 12px; }:root { --wp--style--block-gap: 12px; }.is-layout-flow > .alignleft { float: left; margin-inline-start: 0; margin-inline-end: 2em; }.is-layout-flow > .alignright { float: right; margin-inline-start: 2em; margin-inline-end: 0; }.is-layout-flow > .aligncenter { margin-left: auto !important; margin-right: auto !important; }body .is-layout-flex { display:flex; }.is-layout-flex { flex-wrap: wrap; align-items: center; }.is-layout-flex > * { margin: 0; }'
|
|
784
784
|
);
|
|
785
785
|
} );
|
|
786
786
|
|
|
@@ -797,7 +797,7 @@ describe( 'global styles renderer', () => {
|
|
|
797
797
|
} );
|
|
798
798
|
|
|
799
799
|
expect( layoutStyles ).toEqual(
|
|
800
|
-
'.wp-block-group-is-layout-flow > * { margin-block-start: 0; margin-block-end: 0; }.wp-block-group-is-layout-flow > * + * { margin-block-start: 12px; margin-block-end: 0; }.wp-block-group-is-layout-flex { gap: 12px; }'
|
|
800
|
+
':root :where(.wp-block-group-is-layout-flow) > * { margin-block-start: 0; margin-block-end: 0; }:root :where(.wp-block-group-is-layout-flow) > * + * { margin-block-start: 12px; margin-block-end: 0; }:root :where(.wp-block-group-is-layout-flex) { gap: 12px; }'
|
|
801
801
|
);
|
|
802
802
|
} );
|
|
803
803
|
|
|
@@ -1008,9 +1008,23 @@ describe( 'global styles renderer', () => {
|
|
|
1008
1008
|
ref: 'styles.elements.h1.typography.letterSpacing',
|
|
1009
1009
|
},
|
|
1010
1010
|
},
|
|
1011
|
+
background: {
|
|
1012
|
+
backgroundImage: {
|
|
1013
|
+
ref: 'styles.background.backgroundImage',
|
|
1014
|
+
},
|
|
1015
|
+
backgroundSize: {
|
|
1016
|
+
ref: 'styles.background.backgroundSize',
|
|
1017
|
+
},
|
|
1018
|
+
},
|
|
1011
1019
|
};
|
|
1012
1020
|
const tree = {
|
|
1013
1021
|
styles: {
|
|
1022
|
+
background: {
|
|
1023
|
+
backgroundImage: {
|
|
1024
|
+
url: 'http://my-image.org/image.gif',
|
|
1025
|
+
},
|
|
1026
|
+
backgroundSize: 'cover',
|
|
1027
|
+
},
|
|
1014
1028
|
elements: {
|
|
1015
1029
|
h1: {
|
|
1016
1030
|
typography: {
|
|
@@ -1026,6 +1040,8 @@ describe( 'global styles renderer', () => {
|
|
|
1026
1040
|
).toEqual( [
|
|
1027
1041
|
'font-size: var(--wp--preset--font-size--xx-large)',
|
|
1028
1042
|
'letter-spacing: 2px',
|
|
1043
|
+
"background-image: url( 'http://my-image.org/image.gif' )",
|
|
1044
|
+
'background-size: cover',
|
|
1029
1045
|
] );
|
|
1030
1046
|
} );
|
|
1031
1047
|
it( 'should set default values for block background styles', () => {
|
|
@@ -1061,7 +1077,7 @@ describe( 'global styles renderer', () => {
|
|
|
1061
1077
|
)
|
|
1062
1078
|
).toEqual( [
|
|
1063
1079
|
"background-image: url( 'https://wordpress.org/assets/image.jpg' )",
|
|
1064
|
-
'background-position:
|
|
1080
|
+
'background-position: 50% 50%',
|
|
1065
1081
|
'background-size: contain',
|
|
1066
1082
|
] );
|
|
1067
1083
|
} );
|
|
@@ -73,6 +73,11 @@ describe( 'editor utils', () => {
|
|
|
73
73
|
dimensions: {
|
|
74
74
|
minHeight: '100px',
|
|
75
75
|
},
|
|
76
|
+
spacing: {
|
|
77
|
+
padding: {
|
|
78
|
+
top: 0,
|
|
79
|
+
},
|
|
80
|
+
},
|
|
76
81
|
},
|
|
77
82
|
},
|
|
78
83
|
},
|
|
@@ -444,6 +449,11 @@ describe( 'editor utils', () => {
|
|
|
444
449
|
{ url: 'file:./assets/image.jpg' },
|
|
445
450
|
themeJson,
|
|
446
451
|
],
|
|
452
|
+
[
|
|
453
|
+
{ ref: 'styles.blocks.core/group.spacing.padding.top' },
|
|
454
|
+
0,
|
|
455
|
+
themeJson,
|
|
456
|
+
],
|
|
447
457
|
[
|
|
448
458
|
{
|
|
449
459
|
ref: 'styles.blocks.core/group.background.backgroundImage',
|
|
@@ -40,6 +40,8 @@ import { getFontStylesAndWeights } from '../../utils/get-font-styles-and-weights
|
|
|
40
40
|
* Returns a font-size value based on a given font-size preset.
|
|
41
41
|
* Takes into account fluid typography parameters and attempts to return a css formula depending on available, valid values.
|
|
42
42
|
*
|
|
43
|
+
* The Core PHP equivalent is wp_get_typography_font_size_value().
|
|
44
|
+
*
|
|
43
45
|
* @param {Preset} preset
|
|
44
46
|
* @param {Object} settings
|
|
45
47
|
* @param {boolean|TypographySettings} settings.typography.fluid Whether fluid typography is enabled, and, optionally, fluid font size options.
|
|
@@ -50,15 +52,25 @@ import { getFontStylesAndWeights } from '../../utils/get-font-styles-and-weights
|
|
|
50
52
|
export function getTypographyFontSizeValue( preset, settings ) {
|
|
51
53
|
const { size: defaultSize } = preset;
|
|
52
54
|
|
|
53
|
-
|
|
55
|
+
/*
|
|
56
|
+
* Catch falsy values and 0/'0'. Fluid calculations cannot be performed on `0`.
|
|
57
|
+
* Also return early when a preset font size explicitly disables fluid typography with `false`.
|
|
58
|
+
*/
|
|
59
|
+
if ( ! defaultSize || '0' === defaultSize || false === preset?.fluid ) {
|
|
54
60
|
return defaultSize;
|
|
55
61
|
}
|
|
62
|
+
|
|
56
63
|
/*
|
|
57
|
-
*
|
|
58
|
-
*
|
|
59
|
-
*
|
|
64
|
+
* Return early when fluid typography is disabled in the settings, and there
|
|
65
|
+
* are no local settings to enable it for the individual preset.
|
|
66
|
+
*
|
|
67
|
+
* If this condition isn't met, either the settings or individual preset settings
|
|
68
|
+
* have enabled fluid typography.
|
|
60
69
|
*/
|
|
61
|
-
if (
|
|
70
|
+
if (
|
|
71
|
+
! isFluidTypographyEnabled( settings?.typography ) &&
|
|
72
|
+
! isFluidTypographyEnabled( preset )
|
|
73
|
+
) {
|
|
62
74
|
return defaultSize;
|
|
63
75
|
}
|
|
64
76
|
|
|
@@ -162,6 +174,10 @@ export function findNearestFontWeight(
|
|
|
162
174
|
availableFontWeights,
|
|
163
175
|
newFontWeightValue
|
|
164
176
|
) {
|
|
177
|
+
newFontWeightValue =
|
|
178
|
+
'number' === typeof newFontWeightValue
|
|
179
|
+
? newFontWeightValue.toString()
|
|
180
|
+
: newFontWeightValue;
|
|
165
181
|
if ( ! newFontWeightValue || typeof newFontWeightValue !== 'string' ) {
|
|
166
182
|
return '';
|
|
167
183
|
}
|
|
@@ -248,7 +264,7 @@ export function findNearestStyleAndWeight(
|
|
|
248
264
|
( { value: fs } ) => fs === fontStyle
|
|
249
265
|
);
|
|
250
266
|
const hasFontWeight = fontWeights?.some(
|
|
251
|
-
( { value: fw } ) => fw === fontWeight
|
|
267
|
+
( { value: fw } ) => fw?.toString() === fontWeight?.toString()
|
|
252
268
|
);
|
|
253
269
|
|
|
254
270
|
if ( ! hasFontStyle ) {
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
} from '@wordpress/blocks';
|
|
11
11
|
import { useSelect } from '@wordpress/data';
|
|
12
12
|
import { useContext, useMemo } from '@wordpress/element';
|
|
13
|
-
import { getCSSRules } from '@wordpress/style-engine';
|
|
13
|
+
import { getCSSRules, getCSSValueFromRawStyle } from '@wordpress/style-engine';
|
|
14
14
|
import { privateApis as componentsPrivateApis } from '@wordpress/components';
|
|
15
15
|
|
|
16
16
|
/**
|
|
@@ -24,7 +24,6 @@ import {
|
|
|
24
24
|
scopeFeatureSelectors,
|
|
25
25
|
appendToSelector,
|
|
26
26
|
getBlockStyleVariationSelector,
|
|
27
|
-
compileStyleValue,
|
|
28
27
|
getResolvedValue,
|
|
29
28
|
} from './utils';
|
|
30
29
|
import { getBlockCSSSelector } from './get-block-css-selector';
|
|
@@ -357,7 +356,7 @@ export function getStylesDeclarations(
|
|
|
357
356
|
? name
|
|
358
357
|
: kebabCase( name );
|
|
359
358
|
declarations.push(
|
|
360
|
-
`${ cssProperty }: ${
|
|
359
|
+
`${ cssProperty }: ${ getCSSValueFromRawStyle(
|
|
361
360
|
getValueFromObjectPath( styleValue, [ prop ] )
|
|
362
361
|
) }`
|
|
363
362
|
);
|
|
@@ -369,7 +368,7 @@ export function getStylesDeclarations(
|
|
|
369
368
|
? key
|
|
370
369
|
: kebabCase( key );
|
|
371
370
|
declarations.push(
|
|
372
|
-
`${ cssProperty }: ${
|
|
371
|
+
`${ cssProperty }: ${ getCSSValueFromRawStyle(
|
|
373
372
|
getValueFromObjectPath( blockStyles, pathToValue )
|
|
374
373
|
) }`
|
|
375
374
|
);
|
|
@@ -538,10 +537,10 @@ export function getLayoutStyles( {
|
|
|
538
537
|
} else {
|
|
539
538
|
combinedSelector =
|
|
540
539
|
selector === ROOT_BLOCK_SELECTOR
|
|
541
|
-
?
|
|
540
|
+
? `:root :where(.${ className })${
|
|
542
541
|
spacingStyle?.selector || ''
|
|
543
542
|
}`
|
|
544
|
-
:
|
|
543
|
+
: `:root :where(${ selector }-${ className })${
|
|
545
544
|
spacingStyle?.selector || ''
|
|
546
545
|
}`;
|
|
547
546
|
}
|
|
@@ -7,6 +7,7 @@ import fastDeepEqual from 'fast-deep-equal/es6';
|
|
|
7
7
|
* WordPress dependencies
|
|
8
8
|
*/
|
|
9
9
|
import { useViewportMatch } from '@wordpress/compose';
|
|
10
|
+
import { getCSSValueFromRawStyle } from '@wordpress/style-engine';
|
|
10
11
|
|
|
11
12
|
/**
|
|
12
13
|
* Internal dependencies
|
|
@@ -305,9 +306,8 @@ function getValueFromCustomVariable( features, blockName, variable, path ) {
|
|
|
305
306
|
*/
|
|
306
307
|
export function getValueFromVariable( features, blockName, variable ) {
|
|
307
308
|
if ( ! variable || typeof variable !== 'string' ) {
|
|
308
|
-
if (
|
|
309
|
-
|
|
310
|
-
variable = getValueFromObjectPath( features, refPath );
|
|
309
|
+
if ( typeof variable?.ref === 'string' ) {
|
|
310
|
+
variable = getValueFromObjectPath( features, variable.ref );
|
|
311
311
|
// Presence of another ref indicates a reference to another dynamic value.
|
|
312
312
|
// Pointing to another dynamic value is not supported.
|
|
313
313
|
if ( ! variable || !! variable?.ref ) {
|
|
@@ -526,34 +526,6 @@ export function getBlockStyleVariationSelector( variation, blockSelector ) {
|
|
|
526
526
|
return result.join( ',' );
|
|
527
527
|
}
|
|
528
528
|
|
|
529
|
-
/**
|
|
530
|
-
* Converts style preset values `var:` to CSS custom var values.
|
|
531
|
-
* TODO: Export and use the style engine util: getCSSVarFromStyleValue().
|
|
532
|
-
*
|
|
533
|
-
* Example:
|
|
534
|
-
*
|
|
535
|
-
* compileStyleValue( 'var:preset|color|primary' ) // returns 'var(--wp--color-primary)'
|
|
536
|
-
*
|
|
537
|
-
* @param {string} uncompiledValue A block style value.
|
|
538
|
-
* @return {string} The compiled, or original value.
|
|
539
|
-
*/
|
|
540
|
-
export function compileStyleValue( uncompiledValue ) {
|
|
541
|
-
const VARIABLE_REFERENCE_PREFIX = 'var:';
|
|
542
|
-
if (
|
|
543
|
-
'string' === typeof uncompiledValue &&
|
|
544
|
-
uncompiledValue?.startsWith?.( VARIABLE_REFERENCE_PREFIX )
|
|
545
|
-
) {
|
|
546
|
-
const VARIABLE_PATH_SEPARATOR_TOKEN_ATTRIBUTE = '|';
|
|
547
|
-
const VARIABLE_PATH_SEPARATOR_TOKEN_STYLE = '--';
|
|
548
|
-
const variable = uncompiledValue
|
|
549
|
-
.slice( VARIABLE_REFERENCE_PREFIX.length )
|
|
550
|
-
.split( VARIABLE_PATH_SEPARATOR_TOKEN_ATTRIBUTE )
|
|
551
|
-
.join( VARIABLE_PATH_SEPARATOR_TOKEN_STYLE );
|
|
552
|
-
return `var(--wp--${ variable })`;
|
|
553
|
-
}
|
|
554
|
-
return uncompiledValue;
|
|
555
|
-
}
|
|
556
|
-
|
|
557
529
|
/**
|
|
558
530
|
* Looks up a theme file URI based on a relative path.
|
|
559
531
|
*
|
|
@@ -589,10 +561,14 @@ export function getResolvedRefValue( ruleValue, tree ) {
|
|
|
589
561
|
return ruleValue;
|
|
590
562
|
}
|
|
591
563
|
|
|
564
|
+
/*
|
|
565
|
+
* Where the rule value is an object with a 'ref' property pointing
|
|
566
|
+
* to a path, this converts that path into the value at that path.
|
|
567
|
+
* For example: { "ref": "style.color.background" } => "#fff".
|
|
568
|
+
*/
|
|
592
569
|
if ( typeof ruleValue !== 'string' && ruleValue?.ref ) {
|
|
593
|
-
const
|
|
594
|
-
|
|
595
|
-
getValueFromObjectPath( tree, refPath )
|
|
570
|
+
const resolvedRuleValue = getCSSValueFromRawStyle(
|
|
571
|
+
getValueFromObjectPath( tree, ruleValue.ref )
|
|
596
572
|
);
|
|
597
573
|
|
|
598
574
|
/*
|
|
@@ -603,7 +579,7 @@ export function getResolvedRefValue( ruleValue, tree ) {
|
|
|
603
579
|
return undefined;
|
|
604
580
|
}
|
|
605
581
|
|
|
606
|
-
if (
|
|
582
|
+
if ( resolvedRuleValue === undefined ) {
|
|
607
583
|
return ruleValue;
|
|
608
584
|
}
|
|
609
585
|
|
|
@@ -6,7 +6,7 @@ import clsx from 'clsx';
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
8
8
|
*/
|
|
9
|
-
import { __ } from '@wordpress/i18n';
|
|
9
|
+
import { __, isRTL } from '@wordpress/i18n';
|
|
10
10
|
import {
|
|
11
11
|
VisuallyHidden,
|
|
12
12
|
ToolbarButton,
|
|
@@ -57,7 +57,7 @@ export function GridItemMovers( {
|
|
|
57
57
|
<ToolbarGroup className="block-editor-grid-item-mover__move-button-container">
|
|
58
58
|
<div className="block-editor-grid-item-mover__move-horizontal-button-container is-left">
|
|
59
59
|
<GridItemMover
|
|
60
|
-
icon={ chevronLeft }
|
|
60
|
+
icon={ isRTL() ? chevronRight : chevronLeft }
|
|
61
61
|
label={ __( 'Move left' ) }
|
|
62
62
|
description={ __( 'Move left' ) }
|
|
63
63
|
isDisabled={ columnStart <= 1 }
|
|
@@ -126,7 +126,7 @@ export function GridItemMovers( {
|
|
|
126
126
|
</div>
|
|
127
127
|
<div className="block-editor-grid-item-mover__move-horizontal-button-container is-right">
|
|
128
128
|
<GridItemMover
|
|
129
|
-
icon={ chevronRight }
|
|
129
|
+
icon={ isRTL() ? chevronLeft : chevronRight }
|
|
130
130
|
label={ __( 'Move right' ) }
|
|
131
131
|
description={ __( 'Move right' ) }
|
|
132
132
|
isDisabled={ columnCount && columnEnd >= columnCount }
|
|
@@ -19,6 +19,7 @@ import { range, GridRect, getGridInfo } from './utils';
|
|
|
19
19
|
import { store as blockEditorStore } from '../../store';
|
|
20
20
|
import { useGetNumberOfBlocksBeforeCell } from './use-get-number-of-blocks-before-cell';
|
|
21
21
|
import ButtonBlockAppender from '../button-block-appender';
|
|
22
|
+
import { unlock } from '../../lock-unlock';
|
|
22
23
|
|
|
23
24
|
export function GridVisualizer( { clientId, contentRef, parentLayout } ) {
|
|
24
25
|
const isDistractionFree = useSelect(
|
|
@@ -118,19 +119,25 @@ const GridVisualizerGrid = forwardRef(
|
|
|
118
119
|
function ManualGridVisualizer( { gridClientId, gridInfo } ) {
|
|
119
120
|
const [ highlightedRect, setHighlightedRect ] = useState( null );
|
|
120
121
|
|
|
121
|
-
const
|
|
122
|
-
( select ) =>
|
|
122
|
+
const gridItemStyles = useSelect(
|
|
123
|
+
( select ) => {
|
|
124
|
+
const { getBlockOrder, getBlockStyles } = unlock(
|
|
125
|
+
select( blockEditorStore )
|
|
126
|
+
);
|
|
127
|
+
const blockOrder = getBlockOrder( gridClientId );
|
|
128
|
+
return getBlockStyles( blockOrder );
|
|
129
|
+
},
|
|
123
130
|
[ gridClientId ]
|
|
124
131
|
);
|
|
125
132
|
const occupiedRects = useMemo( () => {
|
|
126
133
|
const rects = [];
|
|
127
|
-
for ( const
|
|
134
|
+
for ( const style of Object.values( gridItemStyles ) ) {
|
|
128
135
|
const {
|
|
129
136
|
columnStart,
|
|
130
137
|
rowStart,
|
|
131
138
|
columnSpan = 1,
|
|
132
139
|
rowSpan = 1,
|
|
133
|
-
} =
|
|
140
|
+
} = style?.layout ?? {};
|
|
134
141
|
if ( ! columnStart || ! rowStart ) {
|
|
135
142
|
continue;
|
|
136
143
|
}
|
|
@@ -144,7 +151,7 @@ function ManualGridVisualizer( { gridClientId, gridInfo } ) {
|
|
|
144
151
|
);
|
|
145
152
|
}
|
|
146
153
|
return rects;
|
|
147
|
-
}, [
|
|
154
|
+
}, [ gridItemStyles ] );
|
|
148
155
|
|
|
149
156
|
return range( 1, gridInfo.numRows ).map( ( row ) =>
|
|
150
157
|
range( 1, gridInfo.numColumns ).map( ( column ) => {
|
|
@@ -206,8 +213,12 @@ function useGridVisualizerDropZone(
|
|
|
206
213
|
gridInfo,
|
|
207
214
|
setHighlightedRect
|
|
208
215
|
) {
|
|
209
|
-
const {
|
|
210
|
-
|
|
216
|
+
const {
|
|
217
|
+
getBlockAttributes,
|
|
218
|
+
getBlockRootClientId,
|
|
219
|
+
canInsertBlockType,
|
|
220
|
+
getBlockName,
|
|
221
|
+
} = useSelect( blockEditorStore );
|
|
211
222
|
const {
|
|
212
223
|
updateBlockAttributes,
|
|
213
224
|
moveBlocksToPosition,
|
|
@@ -221,6 +232,10 @@ function useGridVisualizerDropZone(
|
|
|
221
232
|
|
|
222
233
|
return useDropZoneWithValidation( {
|
|
223
234
|
validateDrag( srcClientId ) {
|
|
235
|
+
const blockName = getBlockName( srcClientId );
|
|
236
|
+
if ( ! canInsertBlockType( blockName, gridClientId ) ) {
|
|
237
|
+
return false;
|
|
238
|
+
}
|
|
224
239
|
const attributes = getBlockAttributes( srcClientId );
|
|
225
240
|
const rect = new GridRect( {
|
|
226
241
|
columnStart: column,
|