@wordpress/block-editor 12.3.0 → 12.3.2
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 +10 -0
- package/README.md +13 -0
- package/build/autocompleters/block.js +5 -3
- package/build/autocompleters/block.js.map +1 -1
- package/build/components/alignment-control/index.js +4 -6
- package/build/components/alignment-control/index.js.map +1 -1
- package/build/components/alignment-control/ui.js +5 -9
- package/build/components/alignment-control/ui.js.map +1 -1
- package/build/components/autocomplete/index.js +2 -4
- package/build/components/autocomplete/index.js.map +1 -1
- package/build/components/block-actions/index.js +4 -0
- package/build/components/block-actions/index.js.map +1 -1
- package/build/components/block-alignment-control/constants.js +1 -5
- package/build/components/block-alignment-control/constants.js.map +1 -1
- package/build/components/block-alignment-control/index.js +4 -6
- package/build/components/block-alignment-control/index.js.map +1 -1
- package/build/components/block-alignment-control/ui.js +3 -4
- package/build/components/block-alignment-control/ui.js.map +1 -1
- package/build/components/block-alignment-control/ui.native.js +3 -3
- package/build/components/block-alignment-control/ui.native.js.map +1 -1
- package/build/components/block-alignment-matrix-control/index.js +0 -1
- package/build/components/block-alignment-matrix-control/index.js.map +1 -1
- package/build/components/block-breadcrumb/index.js +2 -3
- package/build/components/block-breadcrumb/index.js.map +1 -1
- package/build/components/block-controls/fill.js +2 -1
- package/build/components/block-controls/fill.js.map +1 -1
- package/build/components/block-controls/index.js +8 -8
- package/build/components/block-controls/index.js.map +1 -1
- package/build/components/block-controls/slot.js +2 -4
- package/build/components/block-controls/slot.js.map +1 -1
- package/build/components/block-controls/slot.native.js +4 -2
- package/build/components/block-controls/slot.native.js.map +1 -1
- package/build/components/block-edit/edit.js +4 -6
- package/build/components/block-edit/edit.js.map +1 -1
- package/build/components/block-edit/edit.native.js +2 -4
- package/build/components/block-edit/edit.native.js.map +1 -1
- package/build/components/block-edit/index.js +3 -2
- package/build/components/block-edit/index.js.map +1 -1
- package/build/components/block-heading-level-dropdown/heading-level-icon.js +47 -0
- package/build/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -0
- package/build/components/block-heading-level-dropdown/index.js +83 -0
- package/build/components/block-heading-level-dropdown/index.js.map +1 -0
- package/build/components/block-heading-level-dropdown/index.native.js +72 -0
- package/build/components/block-heading-level-dropdown/index.native.js.map +1 -0
- package/build/components/block-icon/index.native.js +6 -7
- package/build/components/block-icon/index.native.js.map +1 -1
- package/build/components/block-info-slot-fill/index.js +4 -2
- package/build/components/block-info-slot-fill/index.js.map +1 -1
- package/build/components/block-inspector/index.js +20 -87
- package/build/components/block-inspector/index.js.map +1 -1
- package/build/components/block-list/block-list-item.native.js +4 -2
- package/build/components/block-list/block-list-item.native.js.map +1 -1
- package/build/components/block-list/block.js +6 -4
- package/build/components/block-list/block.js.map +1 -1
- package/build/components/block-list/block.native.js +1 -0
- package/build/components/block-list/block.native.js.map +1 -1
- package/build/components/block-list/index.js +7 -4
- package/build/components/block-list/index.js.map +1 -1
- package/build/components/block-list/index.native.js +8 -9
- package/build/components/block-list/index.native.js.map +1 -1
- package/build/components/block-list/subdirectory-icon.js +4 -7
- package/build/components/block-list/subdirectory-icon.js.map +1 -1
- package/build/components/block-list/use-in-between-inserter.js +1 -3
- package/build/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build/components/block-list-appender/index.js +21 -19
- package/build/components/block-list-appender/index.js.map +1 -1
- package/build/components/block-lock/toolbar.js +25 -6
- package/build/components/block-lock/toolbar.js.map +1 -1
- package/build/components/block-mobile-toolbar/block-actions-menu.native.js +1 -1
- package/build/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
- package/build/components/block-mover/button.js +12 -12
- package/build/components/block-mover/button.js.map +1 -1
- package/build/components/block-mover/index.js +11 -10
- package/build/components/block-mover/index.js.map +1 -1
- package/build/components/block-navigation/dropdown.js +4 -6
- package/build/components/block-navigation/dropdown.js.map +1 -1
- package/build/components/block-parent-selector/index.js +4 -5
- package/build/components/block-parent-selector/index.js.map +1 -1
- package/build/components/block-pattern-setup/index.js +6 -8
- package/build/components/block-pattern-setup/index.js.map +1 -1
- package/build/components/block-patterns-list/index.js +6 -8
- package/build/components/block-patterns-list/index.js.map +1 -1
- package/build/components/block-popover/inbetween.js +4 -6
- package/build/components/block-popover/inbetween.js.map +1 -1
- package/build/components/block-popover/index.js +4 -6
- package/build/components/block-popover/index.js.map +1 -1
- package/build/components/block-preview/auto.js +2 -4
- package/build/components/block-preview/auto.js.map +1 -1
- package/build/components/block-preview/index.js +7 -7
- package/build/components/block-preview/index.js.map +1 -1
- package/build/components/block-quick-navigation/index.js +83 -0
- package/build/components/block-quick-navigation/index.js.map +1 -0
- package/build/components/block-removal-warning-modal/index.js +90 -0
- package/build/components/block-removal-warning-modal/index.js.map +1 -0
- package/build/components/block-selection-clearer/index.js +4 -7
- package/build/components/block-selection-clearer/index.js.map +1 -1
- package/build/components/block-settings/button.native.js +2 -1
- package/build/components/block-settings/button.native.js.map +1 -1
- package/build/components/block-settings/container.native.js +6 -6
- package/build/components/block-settings/container.native.js.map +1 -1
- package/build/components/block-settings-menu/block-settings-dropdown.js +10 -11
- package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build/components/block-settings-menu/index.js +4 -5
- package/build/components/block-settings-menu/index.js.map +1 -1
- package/build/components/block-settings-menu-controls/index.js +4 -5
- package/build/components/block-settings-menu-controls/index.js.map +1 -1
- package/build/components/block-switcher/index.js +1 -2
- package/build/components/block-switcher/index.js.map +1 -1
- package/build/components/block-switcher/pattern-transformations-menu.js +6 -8
- package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
- package/build/components/block-toolbar/index.js +10 -8
- package/build/components/block-toolbar/index.js.map +1 -1
- package/build/components/block-tools/block-contextual-toolbar.js +4 -5
- package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
- package/build/components/block-tools/block-selection-button.js +4 -5
- package/build/components/block-tools/block-selection-button.js.map +1 -1
- package/build/components/block-tools/index.js +13 -6
- package/build/components/block-tools/index.js.map +1 -1
- package/build/components/block-tools/insertion-point.js +5 -5
- package/build/components/block-tools/insertion-point.js.map +1 -1
- package/build/components/block-tools/selected-block-popover.js +8 -8
- package/build/components/block-tools/selected-block-popover.js.map +1 -1
- package/build/components/block-types-list/index.native.js +4 -6
- package/build/components/block-types-list/index.native.js.map +1 -1
- package/build/components/block-vertical-alignment-control/index.js +4 -6
- package/build/components/block-vertical-alignment-control/index.js.map +1 -1
- package/build/components/block-vertical-alignment-control/ui.js +5 -12
- package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
- package/build/components/border-radius-control/all-input-control.js +2 -6
- package/build/components/border-radius-control/all-input-control.js.map +1 -1
- package/build/components/border-radius-control/input-controls.js +2 -6
- package/build/components/border-radius-control/input-controls.js.map +1 -1
- package/build/components/border-radius-control/linked-button.js +2 -6
- package/build/components/border-radius-control/linked-button.js.map +1 -1
- package/build/components/color-palette/control.js +2 -4
- package/build/components/color-palette/control.js.map +1 -1
- package/build/components/color-palette/with-color-context.js +2 -4
- package/build/components/color-palette/with-color-context.js.map +1 -1
- package/build/components/colors/utils.js +7 -3
- package/build/components/colors/utils.js.map +1 -1
- package/build/components/colors/with-colors.js +11 -16
- package/build/components/colors/with-colors.js.map +1 -1
- package/build/components/colors-gradients/control.js +7 -5
- package/build/components/colors-gradients/control.js.map +1 -1
- package/build/components/colors-gradients/dropdown.js +12 -11
- package/build/components/colors-gradients/dropdown.js.map +1 -1
- package/build/components/colors-gradients/panel-color-gradient-settings.js +7 -5
- package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
- package/build/components/copy-handler/index.js +5 -6
- package/build/components/copy-handler/index.js.map +1 -1
- package/build/components/dimensions-tool/aspect-ratio-tool.js +99 -0
- package/build/components/dimensions-tool/aspect-ratio-tool.js.map +1 -0
- package/build/components/dimensions-tool/index.js +207 -0
- package/build/components/dimensions-tool/index.js.map +1 -0
- package/build/components/dimensions-tool/scale-tool.js +111 -0
- package/build/components/dimensions-tool/scale-tool.js.map +1 -0
- package/build/components/dimensions-tool/width-height-tool.js +125 -0
- package/build/components/dimensions-tool/width-height-tool.js.map +1 -0
- package/build/components/duotone-control/index.js +1 -2
- package/build/components/duotone-control/index.js.map +1 -1
- package/build/components/editable-text/index.js +6 -7
- package/build/components/editable-text/index.js.map +1 -1
- package/build/components/font-appearance-control/index.js +2 -6
- package/build/components/font-appearance-control/index.js.map +1 -1
- package/build/components/font-family/index.js +4 -5
- package/build/components/font-family/index.js.map +1 -1
- package/build/components/font-sizes/font-size-picker.js +2 -4
- package/build/components/font-sizes/font-size-picker.js.map +1 -1
- package/build/components/font-sizes/utils.js +3 -3
- package/build/components/font-sizes/utils.js.map +1 -1
- package/build/components/font-sizes/with-font-sizes.js +7 -7
- package/build/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build/components/global-styles/color-panel.js +15 -16
- package/build/components/global-styles/color-panel.js.map +1 -1
- package/build/components/global-styles/effects-panel.js +2 -1
- package/build/components/global-styles/effects-panel.js.map +1 -1
- package/build/components/global-styles/filters-panel.js +2 -1
- package/build/components/global-styles/filters-panel.js.map +1 -1
- package/build/components/global-styles/index.js +6 -0
- package/build/components/global-styles/index.js.map +1 -1
- package/build/components/global-styles/typography-panel.js +7 -7
- package/build/components/global-styles/typography-panel.js.map +1 -1
- package/build/components/global-styles/use-global-styles-output.js +19 -16
- package/build/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build/components/gradients/with-gradient.js +2 -6
- package/build/components/gradients/with-gradient.js.map +1 -1
- package/build/components/iframe/index.js +5 -7
- package/build/components/iframe/index.js.map +1 -1
- package/build/components/image-editor/aspect-ratio-dropdown.js +1 -1
- package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
- package/build/components/image-editor/constants.js +1 -2
- package/build/components/image-editor/constants.js.map +1 -1
- package/build/components/image-editor/use-save-image.js +1 -2
- package/build/components/image-editor/use-save-image.js.map +1 -1
- package/build/components/image-size-control/index.js +6 -0
- package/build/components/image-size-control/index.js.map +1 -1
- package/build/components/index.js +9 -9
- package/build/components/index.js.map +1 -1
- package/build/components/index.native.js +9 -0
- package/build/components/index.native.js.map +1 -1
- package/build/components/inner-blocks/index.js +9 -8
- package/build/components/inner-blocks/index.js.map +1 -1
- package/build/components/inner-blocks/index.native.js +8 -7
- package/build/components/inner-blocks/index.native.js.map +1 -1
- package/build/components/inner-blocks/use-nested-settings-update.js +24 -30
- package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
- package/build/components/inner-blocks/with-client-id.js +2 -6
- package/build/components/inner-blocks/with-client-id.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/explorer.js +2 -1
- package/build/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
- package/build/components/inserter/block-patterns-tab.js +33 -5
- package/build/components/inserter/block-patterns-tab.js.map +1 -1
- package/build/components/inserter/hooks/use-block-types-state.js +4 -3
- package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
- package/build/components/inserter/hooks/use-insertion-point.js +1 -1
- package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
- package/build/components/inserter/index.js +8 -8
- package/build/components/inserter/index.js.map +1 -1
- package/build/components/inserter/index.native.js +4 -5
- package/build/components/inserter/index.native.js.map +1 -1
- package/build/components/inserter/library.js +1 -1
- package/build/components/inserter/library.js.map +1 -1
- package/build/components/inserter/media-tab/media-list.js +2 -6
- package/build/components/inserter/media-tab/media-list.js.map +1 -1
- package/build/components/inserter/media-tab/media-preview.js +4 -6
- package/build/components/inserter/media-tab/media-preview.js.map +1 -1
- package/build/components/inserter/media-tab/media-tab.js +1 -1
- package/build/components/inserter/media-tab/media-tab.js.map +1 -1
- package/build/components/inserter/reusable-blocks-tab.js +3 -3
- package/build/components/inserter/reusable-blocks-tab.js.map +1 -1
- package/build/components/inserter/tabs.js +3 -3
- package/build/components/inserter/tabs.js.map +1 -1
- package/build/components/inserter-list-item/index.js +4 -5
- package/build/components/inserter-list-item/index.js.map +1 -1
- package/build/components/inserter-listbox/group.js +4 -7
- package/build/components/inserter-listbox/group.js.map +1 -1
- package/build/components/inserter-listbox/item.js +8 -7
- package/build/components/inserter-listbox/item.js.map +1 -1
- package/build/components/inserter-listbox/row.js +4 -5
- package/build/components/inserter-listbox/row.js.map +1 -1
- package/build/components/inspector-controls/block-support-slot-container.js +2 -6
- package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
- package/build/components/inspector-controls/fill.native.js +2 -1
- package/build/components/inspector-controls/fill.native.js.map +1 -1
- package/build/components/inspector-controls/index.js +4 -6
- package/build/components/inspector-controls/index.js.map +1 -1
- package/build/components/inspector-controls/slot.js +4 -6
- package/build/components/inspector-controls/slot.js.map +1 -1
- package/build/components/inspector-controls/slot.native.js +2 -1
- package/build/components/inspector-controls/slot.native.js.map +1 -1
- package/build/components/justify-content-control/index.js +4 -6
- package/build/components/justify-content-control/index.js.map +1 -1
- package/build/components/justify-content-control/ui.js +4 -7
- package/build/components/justify-content-control/ui.js.map +1 -1
- package/build/components/letter-spacing-control/index.js +2 -4
- package/build/components/letter-spacing-control/index.js.map +1 -1
- package/build/components/line-height-control/index.js +2 -4
- package/build/components/line-height-control/index.js.map +1 -1
- package/build/components/link-control/index.js +20 -24
- package/build/components/link-control/index.js.map +1 -1
- package/build/components/link-control/search-create-button.js +2 -4
- package/build/components/link-control/search-create-button.js.map +1 -1
- package/build/components/link-control/search-input.js +7 -5
- package/build/components/link-control/search-input.js.map +1 -1
- package/build/components/link-control/search-item.js +2 -4
- package/build/components/link-control/search-item.js.map +1 -1
- package/build/components/link-control/search-results.js +2 -4
- package/build/components/link-control/search-results.js.map +1 -1
- package/build/components/link-control/settings-drawer.js +2 -3
- package/build/components/link-control/settings-drawer.js.map +1 -1
- package/build/components/list-view/appender.js +4 -6
- package/build/components/list-view/appender.js.map +1 -1
- package/build/components/list-view/aria-referenced-text.js +4 -8
- package/build/components/list-view/aria-referenced-text.js.map +1 -1
- package/build/components/list-view/block-contents.js +4 -5
- package/build/components/list-view/block-contents.js.map +1 -1
- package/build/components/list-view/block-select-button.js +13 -2
- package/build/components/list-view/block-select-button.js.map +1 -1
- package/build/components/list-view/branch.js +9 -8
- package/build/components/list-view/branch.js.map +1 -1
- package/build/components/list-view/drop-indicator.js +62 -11
- package/build/components/list-view/drop-indicator.js.map +1 -1
- package/build/components/list-view/index.js +4 -6
- package/build/components/list-view/index.js.map +1 -1
- package/build/components/list-view/leaf.js +4 -5
- package/build/components/list-view/leaf.js.map +1 -1
- package/build/components/list-view/use-list-view-client-ids.js +2 -22
- package/build/components/list-view/use-list-view-client-ids.js.map +1 -1
- package/build/components/list-view/use-list-view-drop-zone.js +46 -34
- package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
- package/build/components/media-placeholder/index.js +38 -13
- package/build/components/media-placeholder/index.js.map +1 -1
- package/build/components/media-replace-flow/index.js +1 -3
- package/build/components/media-replace-flow/index.js.map +1 -1
- package/build/components/navigable-toolbar/index.js +8 -8
- package/build/components/navigable-toolbar/index.js.map +1 -1
- package/build/components/panel-color-settings/index.js +4 -5
- package/build/components/panel-color-settings/index.js.map +1 -1
- package/build/components/plain-text/index.js +8 -8
- package/build/components/plain-text/index.js.map +1 -1
- package/build/components/plain-text/index.native.js +7 -6
- package/build/components/plain-text/index.native.js.map +1 -1
- package/build/components/preview-options/index.js +5 -4
- package/build/components/preview-options/index.js.map +1 -1
- package/build/components/provider/index.js +2 -4
- package/build/components/provider/index.js.map +1 -1
- package/build/components/provider/use-block-sync.js +21 -0
- package/build/components/provider/use-block-sync.js.map +1 -1
- package/build/components/provider/with-registry-provider.js +8 -10
- package/build/components/provider/with-registry-provider.js.map +1 -1
- package/build/components/publish-date-time-picker/index.js +4 -5
- package/build/components/publish-date-time-picker/index.js.map +1 -1
- package/build/components/resizable-box-popover/index.js +5 -5
- package/build/components/resizable-box-popover/index.js.map +1 -1
- package/build/components/resolution-tool/index.js +55 -0
- package/build/components/resolution-tool/index.js.map +1 -0
- package/build/components/rich-text/content.js +99 -0
- package/build/components/rich-text/content.js.map +1 -0
- package/build/components/rich-text/format-toolbar/index.js +1 -2
- package/build/components/rich-text/format-toolbar/index.js.map +1 -1
- package/build/components/rich-text/index.js +8 -42
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/rich-text/index.native.js +6 -34
- package/build/components/rich-text/index.native.js.map +1 -1
- package/build/components/rich-text/toolbar-button.js +2 -6
- package/build/components/rich-text/toolbar-button.js.map +1 -1
- package/build/components/spacing-sizes-control/index.js +8 -8
- package/build/components/spacing-sizes-control/index.js.map +1 -1
- package/build/components/tool-selector/index.js +2 -6
- package/build/components/tool-selector/index.js.map +1 -1
- package/build/components/unit-control/index.js +4 -5
- package/build/components/unit-control/index.js.map +1 -1
- package/build/components/url-input/index.js +12 -10
- package/build/components/url-input/index.js.map +1 -1
- package/build/components/url-input/index.native.js +4 -7
- package/build/components/url-input/index.native.js.map +1 -1
- package/build/components/url-popover/image-url-input-ui.js +21 -14
- package/build/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build/components/url-popover/index.js +4 -5
- package/build/components/url-popover/index.js.map +1 -1
- package/build/components/url-popover/link-editor.js +4 -5
- package/build/components/url-popover/link-editor.js.map +1 -1
- package/build/components/url-popover/link-viewer.js +4 -5
- package/build/components/url-popover/link-viewer.js.map +1 -1
- package/build/components/use-block-display-information/index.js +30 -2
- package/build/components/use-block-display-information/index.js.map +1 -1
- package/build/components/video-player/index.native.js +2 -4
- package/build/components/video-player/index.native.js.map +1 -1
- package/build/components/warning/index.native.js +4 -5
- package/build/components/warning/index.native.js.map +1 -1
- package/build/components/writing-flow/index.js +2 -4
- package/build/components/writing-flow/index.js.map +1 -1
- package/build/components/writing-flow/use-drag-selection.js +1 -1
- package/build/components/writing-flow/use-drag-selection.js.map +1 -1
- package/build/components/writing-flow/use-tab-nav.js +32 -4
- package/build/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build/hooks/align.js +8 -8
- package/build/hooks/align.js.map +1 -1
- package/build/hooks/anchor.js +4 -2
- package/build/hooks/anchor.js.map +1 -1
- package/build/hooks/behaviors.js +75 -37
- package/build/hooks/behaviors.js.map +1 -1
- package/build/hooks/border.js +4 -5
- package/build/hooks/border.js.map +1 -1
- package/build/hooks/color.js +4 -5
- package/build/hooks/color.js.map +1 -1
- package/build/hooks/content-lock-ui.js +8 -10
- package/build/hooks/content-lock-ui.js.map +1 -1
- package/build/hooks/custom-class-name.js +4 -2
- package/build/hooks/custom-class-name.js.map +1 -1
- package/build/hooks/dimensions.js +7 -7
- package/build/hooks/dimensions.js.map +1 -1
- package/build/hooks/duotone.js +5 -5
- package/build/hooks/duotone.js.map +1 -1
- package/build/hooks/font-family.js +2 -6
- package/build/hooks/font-family.js.map +1 -1
- package/build/hooks/font-size.js +10 -8
- package/build/hooks/font-size.js.map +1 -1
- package/build/hooks/layout.js +30 -28
- package/build/hooks/layout.js.map +1 -1
- package/build/hooks/position.js +24 -16
- package/build/hooks/position.js.map +1 -1
- package/build/hooks/style.js +8 -5
- package/build/hooks/style.js.map +1 -1
- package/build/hooks/supports.js +1 -1
- package/build/hooks/supports.js.map +1 -1
- package/build/hooks/typography.native.js +3 -1
- package/build/hooks/typography.native.js.map +1 -1
- package/build/hooks/use-typography-props.js +10 -17
- package/build/hooks/use-typography-props.js.map +1 -1
- package/build/index.js +0 -14
- package/build/index.js.map +1 -1
- package/build/layouts/constrained.js +3 -1
- package/build/layouts/constrained.js.map +1 -1
- package/build/layouts/definitions.js +154 -0
- package/build/layouts/definitions.js.map +1 -0
- package/build/layouts/flex.js +8 -5
- package/build/layouts/flex.js.map +1 -1
- package/build/layouts/flow.js +3 -1
- package/build/layouts/flow.js.map +1 -1
- package/build/layouts/grid.js +3 -1
- package/build/layouts/grid.js.map +1 -1
- package/build/layouts/utils.js +8 -2
- package/build/layouts/utils.js.map +1 -1
- package/build/private-apis.js +23 -1
- package/build/private-apis.js.map +1 -1
- package/build/store/actions.js +2 -62
- package/build/store/actions.js.map +1 -1
- package/build/store/defaults.js +1 -0
- package/build/store/defaults.js.map +1 -1
- package/build/store/private-actions.js +200 -0
- package/build/store/private-actions.js.map +1 -1
- package/build/store/private-selectors.js +72 -4
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/reducer.js +52 -1
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +42 -42
- package/build/store/selectors.js.map +1 -1
- package/build/utils/object.js +39 -0
- package/build/utils/object.js.map +1 -1
- package/build-module/autocompleters/block.js +5 -3
- package/build-module/autocompleters/block.js.map +1 -1
- package/build-module/components/alignment-control/index.js +4 -5
- package/build-module/components/alignment-control/index.js.map +1 -1
- package/build-module/components/alignment-control/ui.js +5 -6
- package/build-module/components/alignment-control/ui.js.map +1 -1
- package/build-module/components/autocomplete/index.js +2 -3
- package/build-module/components/autocomplete/index.js.map +1 -1
- package/build-module/components/block-actions/index.js +4 -0
- package/build-module/components/block-actions/index.js.map +1 -1
- package/build-module/components/block-alignment-control/constants.js +0 -3
- package/build-module/components/block-alignment-control/constants.js.map +1 -1
- package/build-module/components/block-alignment-control/index.js +4 -5
- package/build-module/components/block-alignment-control/index.js.map +1 -1
- package/build-module/components/block-alignment-control/ui.js +4 -4
- package/build-module/components/block-alignment-control/ui.js.map +1 -1
- package/build-module/components/block-alignment-control/ui.native.js +3 -2
- package/build-module/components/block-alignment-control/ui.native.js.map +1 -1
- package/build-module/components/block-alignment-matrix-control/index.js +0 -1
- package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
- package/build-module/components/block-breadcrumb/index.js +2 -3
- package/build-module/components/block-breadcrumb/index.js.map +1 -1
- package/build-module/components/block-controls/fill.js +2 -1
- package/build-module/components/block-controls/fill.js.map +1 -1
- package/build-module/components/block-controls/index.js +8 -7
- package/build-module/components/block-controls/index.js.map +1 -1
- package/build-module/components/block-controls/slot.js +2 -3
- package/build-module/components/block-controls/slot.js.map +1 -1
- package/build-module/components/block-controls/slot.native.js +4 -2
- package/build-module/components/block-controls/slot.native.js.map +1 -1
- package/build-module/components/block-edit/edit.js +4 -5
- package/build-module/components/block-edit/edit.js.map +1 -1
- package/build-module/components/block-edit/edit.native.js +2 -3
- package/build-module/components/block-edit/edit.native.js.map +1 -1
- package/build-module/components/block-edit/index.js +3 -2
- package/build-module/components/block-edit/index.js.map +1 -1
- package/build-module/components/block-heading-level-dropdown/heading-level-icon.js +39 -0
- package/build-module/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -0
- package/build-module/components/block-heading-level-dropdown/index.js +71 -0
- package/build-module/components/block-heading-level-dropdown/index.js.map +1 -0
- package/build-module/components/block-heading-level-dropdown/index.native.js +60 -0
- package/build-module/components/block-heading-level-dropdown/index.native.js.map +1 -0
- package/build-module/components/block-icon/index.native.js +6 -6
- package/build-module/components/block-icon/index.native.js.map +1 -1
- package/build-module/components/block-info-slot-fill/index.js +4 -2
- package/build-module/components/block-info-slot-fill/index.js.map +1 -1
- package/build-module/components/block-inspector/index.js +20 -88
- package/build-module/components/block-inspector/index.js.map +1 -1
- package/build-module/components/block-list/block-list-item.native.js +4 -2
- package/build-module/components/block-list/block-list-item.native.js.map +1 -1
- package/build-module/components/block-list/block.js +6 -4
- package/build-module/components/block-list/block.js.map +1 -1
- package/build-module/components/block-list/block.native.js +1 -0
- package/build-module/components/block-list/block.native.js.map +1 -1
- package/build-module/components/block-list/index.js +7 -4
- package/build-module/components/block-list/index.js.map +1 -1
- package/build-module/components/block-list/index.native.js +8 -8
- package/build-module/components/block-list/index.native.js.map +1 -1
- package/build-module/components/block-list/subdirectory-icon.js +4 -4
- package/build-module/components/block-list/subdirectory-icon.js.map +1 -1
- package/build-module/components/block-list/use-in-between-inserter.js +1 -3
- package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build-module/components/block-list-appender/index.js +21 -19
- package/build-module/components/block-list-appender/index.js.map +1 -1
- package/build-module/components/block-lock/toolbar.js +25 -7
- package/build-module/components/block-lock/toolbar.js.map +1 -1
- package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js +1 -1
- package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
- package/build-module/components/block-mover/button.js +12 -11
- package/build-module/components/block-mover/button.js.map +1 -1
- package/build-module/components/block-mover/index.js +11 -9
- package/build-module/components/block-mover/index.js.map +1 -1
- package/build-module/components/block-navigation/dropdown.js +4 -5
- package/build-module/components/block-navigation/dropdown.js.map +1 -1
- package/build-module/components/block-parent-selector/index.js +4 -4
- package/build-module/components/block-parent-selector/index.js.map +1 -1
- package/build-module/components/block-pattern-setup/index.js +6 -7
- package/build-module/components/block-pattern-setup/index.js.map +1 -1
- package/build-module/components/block-patterns-list/index.js +6 -7
- package/build-module/components/block-patterns-list/index.js.map +1 -1
- package/build-module/components/block-popover/inbetween.js +4 -5
- package/build-module/components/block-popover/inbetween.js.map +1 -1
- package/build-module/components/block-popover/index.js +4 -5
- package/build-module/components/block-popover/index.js.map +1 -1
- package/build-module/components/block-preview/auto.js +2 -3
- package/build-module/components/block-preview/auto.js.map +1 -1
- package/build-module/components/block-preview/index.js +7 -7
- package/build-module/components/block-preview/index.js.map +1 -1
- package/build-module/components/block-quick-navigation/index.js +69 -0
- package/build-module/components/block-quick-navigation/index.js.map +1 -0
- package/build-module/components/block-removal-warning-modal/index.js +76 -0
- package/build-module/components/block-removal-warning-modal/index.js.map +1 -0
- package/build-module/components/block-selection-clearer/index.js +4 -4
- package/build-module/components/block-selection-clearer/index.js.map +1 -1
- package/build-module/components/block-settings/button.native.js +2 -1
- package/build-module/components/block-settings/button.native.js.map +1 -1
- package/build-module/components/block-settings/container.native.js +6 -5
- package/build-module/components/block-settings/container.native.js.map +1 -1
- package/build-module/components/block-settings-menu/block-settings-dropdown.js +10 -10
- package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build-module/components/block-settings-menu/index.js +4 -4
- package/build-module/components/block-settings-menu/index.js.map +1 -1
- package/build-module/components/block-settings-menu-controls/index.js +4 -4
- package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
- package/build-module/components/block-switcher/index.js +1 -2
- package/build-module/components/block-switcher/index.js.map +1 -1
- package/build-module/components/block-switcher/pattern-transformations-menu.js +6 -7
- package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
- package/build-module/components/block-toolbar/index.js +10 -7
- package/build-module/components/block-toolbar/index.js.map +1 -1
- package/build-module/components/block-tools/block-contextual-toolbar.js +4 -4
- package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
- package/build-module/components/block-tools/block-selection-button.js +4 -4
- package/build-module/components/block-tools/block-selection-button.js.map +1 -1
- package/build-module/components/block-tools/index.js +13 -5
- package/build-module/components/block-tools/index.js.map +1 -1
- package/build-module/components/block-tools/insertion-point.js +5 -4
- package/build-module/components/block-tools/insertion-point.js.map +1 -1
- package/build-module/components/block-tools/selected-block-popover.js +8 -7
- package/build-module/components/block-tools/selected-block-popover.js.map +1 -1
- package/build-module/components/block-types-list/index.native.js +4 -5
- package/build-module/components/block-types-list/index.native.js.map +1 -1
- package/build-module/components/block-vertical-alignment-control/index.js +4 -5
- package/build-module/components/block-vertical-alignment-control/index.js.map +1 -1
- package/build-module/components/block-vertical-alignment-control/ui.js +5 -9
- package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
- package/build-module/components/border-radius-control/all-input-control.js +2 -3
- package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
- package/build-module/components/border-radius-control/input-controls.js +2 -3
- package/build-module/components/border-radius-control/input-controls.js.map +1 -1
- package/build-module/components/border-radius-control/linked-button.js +2 -3
- package/build-module/components/border-radius-control/linked-button.js.map +1 -1
- package/build-module/components/color-palette/control.js +2 -3
- package/build-module/components/color-palette/control.js.map +1 -1
- package/build-module/components/color-palette/with-color-context.js +2 -3
- package/build-module/components/color-palette/with-color-context.js.map +1 -1
- package/build-module/components/colors/utils.js +5 -1
- package/build-module/components/colors/utils.js.map +1 -1
- package/build-module/components/colors/with-colors.js +10 -14
- package/build-module/components/colors/with-colors.js.map +1 -1
- package/build-module/components/colors-gradients/control.js +7 -4
- package/build-module/components/colors-gradients/control.js.map +1 -1
- package/build-module/components/colors-gradients/dropdown.js +12 -10
- package/build-module/components/colors-gradients/dropdown.js.map +1 -1
- package/build-module/components/colors-gradients/panel-color-gradient-settings.js +7 -4
- package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
- package/build-module/components/copy-handler/index.js +5 -6
- package/build-module/components/copy-handler/index.js.map +1 -1
- package/build-module/components/dimensions-tool/aspect-ratio-tool.js +87 -0
- package/build-module/components/dimensions-tool/aspect-ratio-tool.js.map +1 -0
- package/build-module/components/dimensions-tool/index.js +195 -0
- package/build-module/components/dimensions-tool/index.js.map +1 -0
- package/build-module/components/dimensions-tool/scale-tool.js +103 -0
- package/build-module/components/dimensions-tool/scale-tool.js.map +1 -0
- package/build-module/components/dimensions-tool/width-height-tool.js +122 -0
- package/build-module/components/dimensions-tool/width-height-tool.js.map +1 -0
- package/build-module/components/duotone-control/index.js +1 -2
- package/build-module/components/duotone-control/index.js.map +1 -1
- package/build-module/components/editable-text/index.js +6 -6
- package/build-module/components/editable-text/index.js.map +1 -1
- package/build-module/components/font-appearance-control/index.js +2 -3
- package/build-module/components/font-appearance-control/index.js.map +1 -1
- package/build-module/components/font-family/index.js +4 -4
- package/build-module/components/font-family/index.js.map +1 -1
- package/build-module/components/font-sizes/font-size-picker.js +2 -3
- package/build-module/components/font-sizes/font-size-picker.js.map +1 -1
- package/build-module/components/font-sizes/utils.js +2 -2
- package/build-module/components/font-sizes/utils.js.map +1 -1
- package/build-module/components/font-sizes/with-font-sizes.js +7 -6
- package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build-module/components/global-styles/color-panel.js +15 -15
- package/build-module/components/global-styles/color-panel.js.map +1 -1
- package/build-module/components/global-styles/effects-panel.js +2 -1
- package/build-module/components/global-styles/effects-panel.js.map +1 -1
- package/build-module/components/global-styles/filters-panel.js +2 -1
- package/build-module/components/global-styles/filters-panel.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/typography-panel.js +7 -7
- package/build-module/components/global-styles/typography-panel.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js +11 -10
- package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build-module/components/gradients/with-gradient.js +2 -3
- package/build-module/components/gradients/with-gradient.js.map +1 -1
- package/build-module/components/iframe/index.js +5 -6
- package/build-module/components/iframe/index.js.map +1 -1
- package/build-module/components/image-editor/aspect-ratio-dropdown.js +1 -1
- package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
- package/build-module/components/image-editor/constants.js +1 -2
- package/build-module/components/image-editor/constants.js.map +1 -1
- package/build-module/components/image-editor/use-save-image.js +1 -2
- package/build-module/components/image-editor/use-save-image.js.map +1 -1
- package/build-module/components/image-size-control/index.js +5 -0
- package/build-module/components/image-size-control/index.js.map +1 -1
- package/build-module/components/index.js +1 -1
- package/build-module/components/index.js.map +1 -1
- package/build-module/components/index.native.js +1 -0
- package/build-module/components/index.native.js.map +1 -1
- package/build-module/components/inner-blocks/index.js +9 -7
- package/build-module/components/inner-blocks/index.js.map +1 -1
- package/build-module/components/inner-blocks/index.native.js +8 -6
- package/build-module/components/inner-blocks/index.native.js.map +1 -1
- package/build-module/components/inner-blocks/use-nested-settings-update.js +24 -27
- package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
- package/build-module/components/inner-blocks/with-client-id.js +2 -3
- package/build-module/components/inner-blocks/with-client-id.js.map +1 -1
- package/build-module/components/inserter/block-patterns-explorer/explorer.js +2 -1
- package/build-module/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab.js +33 -7
- package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
- package/build-module/components/inserter/hooks/use-block-types-state.js +4 -3
- package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
- package/build-module/components/inserter/hooks/use-insertion-point.js +1 -1
- package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
- package/build-module/components/inserter/index.js +8 -7
- package/build-module/components/inserter/index.js.map +1 -1
- package/build-module/components/inserter/index.native.js +4 -4
- package/build-module/components/inserter/index.native.js.map +1 -1
- package/build-module/components/inserter/library.js +1 -1
- package/build-module/components/inserter/library.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-list.js +2 -3
- package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-preview.js +4 -5
- package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-tab.js +3 -3
- package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
- package/build-module/components/inserter/reusable-blocks-tab.js +3 -3
- package/build-module/components/inserter/reusable-blocks-tab.js.map +1 -1
- package/build-module/components/inserter/tabs.js +3 -3
- package/build-module/components/inserter/tabs.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/group.js +4 -4
- package/build-module/components/inserter-listbox/group.js.map +1 -1
- package/build-module/components/inserter-listbox/item.js +8 -6
- package/build-module/components/inserter-listbox/item.js.map +1 -1
- package/build-module/components/inserter-listbox/row.js +4 -4
- package/build-module/components/inserter-listbox/row.js.map +1 -1
- package/build-module/components/inspector-controls/block-support-slot-container.js +2 -3
- package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
- package/build-module/components/inspector-controls/fill.native.js +2 -1
- package/build-module/components/inspector-controls/fill.native.js.map +1 -1
- package/build-module/components/inspector-controls/index.js +4 -5
- package/build-module/components/inspector-controls/index.js.map +1 -1
- package/build-module/components/inspector-controls/slot.js +4 -5
- package/build-module/components/inspector-controls/slot.js.map +1 -1
- package/build-module/components/inspector-controls/slot.native.js +2 -1
- package/build-module/components/inspector-controls/slot.native.js.map +1 -1
- package/build-module/components/justify-content-control/index.js +4 -5
- package/build-module/components/justify-content-control/index.js.map +1 -1
- package/build-module/components/justify-content-control/ui.js +4 -4
- package/build-module/components/justify-content-control/ui.js.map +1 -1
- package/build-module/components/letter-spacing-control/index.js +2 -3
- package/build-module/components/letter-spacing-control/index.js.map +1 -1
- package/build-module/components/line-height-control/index.js +2 -3
- package/build-module/components/line-height-control/index.js.map +1 -1
- package/build-module/components/link-control/index.js +20 -24
- package/build-module/components/link-control/index.js.map +1 -1
- package/build-module/components/link-control/search-create-button.js +2 -3
- package/build-module/components/link-control/search-create-button.js.map +1 -1
- package/build-module/components/link-control/search-input.js +7 -5
- package/build-module/components/link-control/search-input.js.map +1 -1
- package/build-module/components/link-control/search-item.js +2 -3
- package/build-module/components/link-control/search-item.js.map +1 -1
- package/build-module/components/link-control/search-results.js +2 -3
- package/build-module/components/link-control/search-results.js.map +1 -1
- package/build-module/components/link-control/settings-drawer.js +4 -5
- package/build-module/components/link-control/settings-drawer.js.map +1 -1
- package/build-module/components/list-view/appender.js +4 -5
- package/build-module/components/list-view/appender.js.map +1 -1
- package/build-module/components/list-view/aria-referenced-text.js +4 -5
- package/build-module/components/list-view/aria-referenced-text.js.map +1 -1
- package/build-module/components/list-view/block-contents.js +4 -4
- package/build-module/components/list-view/block-contents.js.map +1 -1
- package/build-module/components/list-view/block-select-button.js +14 -4
- package/build-module/components/list-view/block-select-button.js.map +1 -1
- package/build-module/components/list-view/branch.js +9 -7
- package/build-module/components/list-view/branch.js.map +1 -1
- package/build-module/components/list-view/drop-indicator.js +61 -11
- package/build-module/components/list-view/drop-indicator.js.map +1 -1
- package/build-module/components/list-view/index.js +4 -5
- package/build-module/components/list-view/index.js.map +1 -1
- package/build-module/components/list-view/leaf.js +4 -4
- package/build-module/components/list-view/leaf.js.map +1 -1
- package/build-module/components/list-view/use-list-view-client-ids.js +2 -22
- package/build-module/components/list-view/use-list-view-client-ids.js.map +1 -1
- package/build-module/components/list-view/use-list-view-drop-zone.js +45 -34
- package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
- package/build-module/components/media-placeholder/index.js +38 -13
- package/build-module/components/media-placeholder/index.js.map +1 -1
- package/build-module/components/media-replace-flow/index.js +1 -3
- package/build-module/components/media-replace-flow/index.js.map +1 -1
- package/build-module/components/navigable-toolbar/index.js +8 -7
- package/build-module/components/navigable-toolbar/index.js.map +1 -1
- package/build-module/components/panel-color-settings/index.js +4 -4
- package/build-module/components/panel-color-settings/index.js.map +1 -1
- package/build-module/components/plain-text/index.js +8 -7
- package/build-module/components/plain-text/index.js.map +1 -1
- package/build-module/components/plain-text/index.native.js +7 -5
- package/build-module/components/plain-text/index.native.js.map +1 -1
- package/build-module/components/preview-options/index.js +5 -4
- package/build-module/components/preview-options/index.js.map +1 -1
- package/build-module/components/provider/index.js +2 -3
- package/build-module/components/provider/index.js.map +1 -1
- package/build-module/components/provider/use-block-sync.js +21 -0
- package/build-module/components/provider/use-block-sync.js.map +1 -1
- package/build-module/components/provider/with-registry-provider.js +8 -7
- package/build-module/components/provider/with-registry-provider.js.map +1 -1
- package/build-module/components/publish-date-time-picker/index.js +4 -4
- package/build-module/components/publish-date-time-picker/index.js.map +1 -1
- package/build-module/components/resizable-box-popover/index.js +5 -4
- package/build-module/components/resizable-box-popover/index.js.map +1 -1
- package/build-module/components/resolution-tool/index.js +45 -0
- package/build-module/components/resolution-tool/index.js.map +1 -0
- package/build-module/components/rich-text/content.js +85 -0
- package/build-module/components/rich-text/content.js.map +1 -0
- package/build-module/components/rich-text/format-toolbar/index.js +1 -2
- package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
- package/build-module/components/rich-text/index.js +8 -42
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/rich-text/index.native.js +6 -34
- package/build-module/components/rich-text/index.native.js.map +1 -1
- package/build-module/components/rich-text/toolbar-button.js +2 -3
- package/build-module/components/rich-text/toolbar-button.js.map +1 -1
- package/build-module/components/spacing-sizes-control/index.js +8 -7
- package/build-module/components/spacing-sizes-control/index.js.map +1 -1
- package/build-module/components/tool-selector/index.js +2 -3
- package/build-module/components/tool-selector/index.js.map +1 -1
- package/build-module/components/unit-control/index.js +4 -4
- package/build-module/components/unit-control/index.js.map +1 -1
- package/build-module/components/url-input/index.js +12 -9
- package/build-module/components/url-input/index.js.map +1 -1
- package/build-module/components/url-input/index.native.js +4 -4
- package/build-module/components/url-input/index.native.js.map +1 -1
- package/build-module/components/url-popover/image-url-input-ui.js +22 -15
- package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build-module/components/url-popover/index.js +4 -4
- package/build-module/components/url-popover/index.js.map +1 -1
- package/build-module/components/url-popover/link-editor.js +4 -4
- package/build-module/components/url-popover/link-editor.js.map +1 -1
- package/build-module/components/url-popover/link-viewer.js +4 -4
- package/build-module/components/url-popover/link-viewer.js.map +1 -1
- package/build-module/components/use-block-display-information/index.js +29 -2
- package/build-module/components/use-block-display-information/index.js.map +1 -1
- package/build-module/components/video-player/index.native.js +2 -3
- package/build-module/components/video-player/index.native.js.map +1 -1
- package/build-module/components/warning/index.native.js +4 -4
- package/build-module/components/warning/index.native.js.map +1 -1
- package/build-module/components/writing-flow/index.js +2 -3
- package/build-module/components/writing-flow/index.js.map +1 -1
- package/build-module/components/writing-flow/use-drag-selection.js +1 -1
- package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
- package/build-module/components/writing-flow/use-tab-nav.js +32 -5
- package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build-module/hooks/align.js +8 -7
- package/build-module/hooks/align.js.map +1 -1
- package/build-module/hooks/anchor.js +4 -2
- package/build-module/hooks/anchor.js.map +1 -1
- package/build-module/hooks/behaviors.js +76 -34
- package/build-module/hooks/behaviors.js.map +1 -1
- package/build-module/hooks/border.js +4 -4
- package/build-module/hooks/border.js.map +1 -1
- package/build-module/hooks/color.js +4 -4
- package/build-module/hooks/color.js.map +1 -1
- package/build-module/hooks/content-lock-ui.js +8 -7
- package/build-module/hooks/content-lock-ui.js.map +1 -1
- package/build-module/hooks/custom-class-name.js +4 -2
- package/build-module/hooks/custom-class-name.js.map +1 -1
- package/build-module/hooks/dimensions.js +7 -6
- package/build-module/hooks/dimensions.js.map +1 -1
- package/build-module/hooks/duotone.js +5 -4
- package/build-module/hooks/duotone.js.map +1 -1
- package/build-module/hooks/font-family.js +1 -5
- package/build-module/hooks/font-family.js.map +1 -1
- package/build-module/hooks/font-size.js +10 -9
- package/build-module/hooks/font-size.js.map +1 -1
- package/build-module/hooks/layout.js +26 -24
- package/build-module/hooks/layout.js.map +1 -1
- package/build-module/hooks/position.js +23 -15
- package/build-module/hooks/position.js.map +1 -1
- package/build-module/hooks/style.js +8 -4
- package/build-module/hooks/style.js.map +1 -1
- package/build-module/hooks/supports.js +1 -1
- package/build-module/hooks/supports.js.map +1 -1
- package/build-module/hooks/typography.native.js +3 -1
- package/build-module/hooks/typography.native.js.map +1 -1
- package/build-module/hooks/use-typography-props.js +8 -15
- package/build-module/hooks/use-typography-props.js.map +1 -1
- package/build-module/index.js +1 -1
- package/build-module/index.js.map +1 -1
- package/build-module/layouts/constrained.js +2 -1
- package/build-module/layouts/constrained.js.map +1 -1
- package/build-module/layouts/definitions.js +147 -0
- package/build-module/layouts/definitions.js.map +1 -0
- package/build-module/layouts/flex.js +8 -6
- package/build-module/layouts/flex.js.map +1 -1
- package/build-module/layouts/flow.js +2 -1
- package/build-module/layouts/flow.js.map +1 -1
- package/build-module/layouts/grid.js +2 -1
- package/build-module/layouts/grid.js.map +1 -1
- package/build-module/layouts/utils.js +7 -2
- package/build-module/layouts/utils.js.map +1 -1
- package/build-module/private-apis.js +16 -1
- package/build-module/private-apis.js.map +1 -1
- package/build-module/store/actions.js +2 -62
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/defaults.js +1 -0
- package/build-module/store/defaults.js.map +1 -1
- package/build-module/store/private-actions.js +186 -0
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/private-selectors.js +63 -3
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/reducer.js +52 -1
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +42 -42
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/object.js +37 -1
- package/build-module/utils/object.js.map +1 -1
- package/build-style/style-rtl.css +58 -67
- package/build-style/style.css +58 -67
- package/package.json +32 -31
- package/src/autocompleters/block.js +4 -2
- package/src/components/alignment-control/test/__snapshots__/index.js.snap +6 -6
- package/src/components/alignment-control/ui.js +1 -2
- package/src/components/block-actions/index.js +10 -0
- package/src/components/block-alignment-control/constants.js +0 -4
- package/src/components/block-alignment-control/test/__snapshots__/index.js.snap +5 -5
- package/src/components/block-alignment-control/ui.js +1 -6
- package/src/components/block-alignment-matrix-control/index.js +1 -1
- package/src/components/block-breadcrumb/index.js +2 -6
- package/src/components/block-edit/index.js +3 -5
- package/src/components/block-heading-level-dropdown/README.md +52 -0
- package/src/components/block-heading-level-dropdown/heading-level-icon.js +43 -0
- package/src/components/block-heading-level-dropdown/index.js +77 -0
- package/src/components/block-heading-level-dropdown/index.native.js +63 -0
- package/src/components/block-inspector/index.js +18 -92
- package/src/components/block-inspector/style.scss +0 -5
- package/src/components/block-list/block.native.js +1 -0
- package/src/components/block-list/index.js +1 -1
- package/src/components/block-list/use-in-between-inserter.js +0 -4
- package/src/components/block-list-appender/index.js +29 -22
- package/src/components/block-lock/style.scss +11 -4
- package/src/components/block-lock/toolbar.js +34 -6
- package/src/components/block-mobile-toolbar/block-actions-menu.native.js +1 -1
- package/src/components/block-mobile-toolbar/test/block-actions-menu.native.js +2 -2
- package/src/components/block-mover/test/__snapshots__/index.native.js.snap +3 -3
- package/src/components/block-mover/test/index.native.js +1 -20
- package/src/components/block-preview/index.js +7 -14
- package/src/components/block-quick-navigation/index.js +81 -0
- package/src/components/block-removal-warning-modal/index.js +94 -0
- package/src/components/block-settings-menu/block-settings-dropdown.js +15 -13
- package/src/components/block-switcher/index.js +1 -2
- package/src/components/block-toolbar/index.js +9 -6
- package/src/components/block-toolbar/style.scss +0 -4
- package/src/components/block-tools/index.js +10 -1
- package/src/components/block-tools/style.scss +4 -0
- package/src/components/block-vertical-alignment-control/ui.js +1 -3
- package/src/components/colors/utils.js +5 -1
- package/src/components/colors/with-colors.js +1 -5
- package/src/components/copy-handler/index.js +5 -5
- package/src/components/dimensions-tool/aspect-ratio-tool.js +124 -0
- package/src/components/dimensions-tool/index.js +212 -0
- package/src/components/dimensions-tool/scale-tool.js +124 -0
- package/src/components/dimensions-tool/stories/aspect-ratio-tool.js +52 -0
- package/src/components/dimensions-tool/stories/index.js +54 -0
- package/src/components/dimensions-tool/stories/scale-tool.js +48 -0
- package/src/components/dimensions-tool/stories/width-height-tool.js +54 -0
- package/src/components/dimensions-tool/test/index.js +641 -0
- package/src/components/dimensions-tool/width-height-tool.js +113 -0
- package/src/components/duotone-control/index.js +0 -1
- package/src/components/font-sizes/test/fluid-utils.js +97 -76
- package/src/components/font-sizes/utils.js +2 -2
- package/src/components/global-styles/color-panel.js +3 -3
- package/src/components/global-styles/index.js +1 -0
- package/src/components/global-styles/test/use-global-styles-output.js +14 -9
- package/src/components/global-styles/typography-panel.js +19 -16
- package/src/components/global-styles/use-global-styles-output.js +12 -12
- package/src/components/iframe/index.js +1 -1
- package/src/components/image-editor/aspect-ratio-dropdown.js +1 -1
- package/src/components/image-editor/constants.js +0 -1
- package/src/components/image-editor/use-save-image.js +0 -1
- package/src/components/image-size-control/index.js +6 -0
- package/src/components/index.js +1 -1
- package/src/components/index.native.js +1 -0
- package/src/components/inner-blocks/index.js +4 -2
- package/src/components/inner-blocks/index.native.js +1 -1
- package/src/components/inner-blocks/use-nested-settings-update.js +31 -36
- package/src/components/inserter/block-patterns-tab.js +63 -8
- package/src/components/inserter/hooks/use-block-types-state.js +4 -3
- package/src/components/inserter/hooks/use-insertion-point.js +1 -0
- package/src/components/inserter/library.js +2 -1
- package/src/components/inserter/media-tab/media-tab.js +9 -3
- package/src/components/inserter/reusable-blocks-tab.js +3 -3
- package/src/components/inserter/tabs.js +3 -3
- package/src/components/link-control/index.js +34 -37
- package/src/components/link-control/search-input.js +5 -3
- package/src/components/link-control/settings-drawer.js +6 -5
- package/src/components/link-control/style.scss +33 -55
- package/src/components/link-control/test/index.js +161 -159
- package/src/components/list-view/block-select-button.js +19 -1
- package/src/components/list-view/branch.js +6 -3
- package/src/components/list-view/drop-indicator.js +94 -9
- package/src/components/list-view/style.scss +13 -12
- package/src/components/list-view/test/use-list-view-drop-zone.js +188 -93
- package/src/components/list-view/use-list-view-client-ids.js +3 -20
- package/src/components/list-view/use-list-view-drop-zone.js +97 -54
- package/src/components/media-placeholder/index.js +54 -20
- package/src/components/media-replace-flow/index.js +1 -3
- package/src/components/media-replace-flow/test/index.js +1 -1
- package/src/components/preview-options/index.js +3 -2
- package/src/components/provider/test/experimental-provider.js +9 -6
- package/src/components/provider/test/use-block-sync.js +21 -6
- package/src/components/provider/use-block-sync.js +19 -0
- package/src/components/resolution-tool/index.js +56 -0
- package/src/components/resolution-tool/stories/index.js +48 -0
- package/src/components/rich-text/content.js +85 -0
- package/src/components/rich-text/format-toolbar/index.js +1 -2
- package/src/components/rich-text/index.js +2 -35
- package/src/components/rich-text/index.native.js +3 -33
- package/src/components/url-input/index.js +2 -0
- package/src/components/url-popover/image-url-input-ui.js +15 -15
- package/src/components/url-popover/test/__snapshots__/index.js.snap +3 -3
- package/src/components/use-block-display-information/index.js +26 -0
- package/src/components/writing-flow/use-drag-selection.js +1 -1
- package/src/components/writing-flow/use-tab-nav.js +42 -6
- package/src/hooks/behaviors.js +82 -39
- package/src/hooks/font-family.js +1 -5
- package/src/hooks/font-size.js +12 -17
- package/src/hooks/layout.js +17 -25
- package/src/hooks/position.js +24 -12
- package/src/hooks/supports.js +1 -1
- package/src/hooks/use-typography-props.js +14 -19
- package/src/index.js +0 -2
- package/src/layouts/constrained.js +2 -1
- package/src/layouts/definitions.js +174 -0
- package/src/layouts/flex.js +7 -5
- package/src/layouts/flow.js +2 -1
- package/src/layouts/grid.js +2 -1
- package/src/layouts/test/utils.js +2 -7
- package/src/layouts/utils.js +7 -2
- package/src/private-apis.js +15 -0
- package/src/store/actions.js +7 -56
- package/src/store/defaults.js +1 -0
- package/src/store/private-actions.js +193 -0
- package/src/store/private-selectors.js +108 -35
- package/src/store/reducer.js +44 -0
- package/src/store/selectors.js +61 -39
- package/src/store/test/private-selectors.js +269 -1
- package/src/store/test/selectors.js +18 -17
- package/src/utils/object.js +35 -0
- package/src/utils/test/object.js +96 -1
|
@@ -13,7 +13,8 @@ import { Button, ToggleControl, Flex, FlexItem, __experimentalToggleGroupControl
|
|
|
13
13
|
import { appendSelectors, getBlockGapCSS } from './utils';
|
|
14
14
|
import { getGapCSSValue } from '../hooks/gap';
|
|
15
15
|
import { BlockControls, JustifyContentControl, BlockVerticalAlignmentControl } from '../components';
|
|
16
|
-
import { shouldSkipSerialization } from '../hooks/utils';
|
|
16
|
+
import { shouldSkipSerialization } from '../hooks/utils';
|
|
17
|
+
import { LAYOUT_DEFINITIONS } from './definitions'; // Used with the default, horizontal flex orientation.
|
|
17
18
|
|
|
18
19
|
const justifyContentMap = {
|
|
19
20
|
left: 'flex-start',
|
|
@@ -89,7 +90,7 @@ export default {
|
|
|
89
90
|
style,
|
|
90
91
|
blockName,
|
|
91
92
|
hasBlockGapSupport,
|
|
92
|
-
layoutDefinitions
|
|
93
|
+
layoutDefinitions = LAYOUT_DEFINITIONS
|
|
93
94
|
}) {
|
|
94
95
|
const {
|
|
95
96
|
orientation = 'horizontal'
|
|
@@ -202,6 +203,10 @@ function FlexLayoutVerticalAlignmentControl({
|
|
|
202
203
|
})));
|
|
203
204
|
}
|
|
204
205
|
|
|
206
|
+
const POPOVER_PROPS = {
|
|
207
|
+
placement: 'bottom-start'
|
|
208
|
+
};
|
|
209
|
+
|
|
205
210
|
function FlexLayoutJustifyContentControl({
|
|
206
211
|
layout,
|
|
207
212
|
onChange,
|
|
@@ -231,10 +236,7 @@ function FlexLayoutJustifyContentControl({
|
|
|
231
236
|
allowedControls: allowedControls,
|
|
232
237
|
value: justifyContent,
|
|
233
238
|
onChange: onJustificationChange,
|
|
234
|
-
popoverProps:
|
|
235
|
-
position: 'bottom right',
|
|
236
|
-
variant: 'toolbar'
|
|
237
|
-
}
|
|
239
|
+
popoverProps: POPOVER_PROPS
|
|
238
240
|
});
|
|
239
241
|
}
|
|
240
242
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-editor/src/layouts/flex.js"],"names":["__","justifyLeft","justifyCenter","justifyRight","justifySpaceBetween","justifyStretch","arrowRight","arrowDown","Button","ToggleControl","Flex","FlexItem","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOptionIcon","ToggleGroupControlOptionIcon","appendSelectors","getBlockGapCSS","getGapCSSValue","BlockControls","JustifyContentControl","BlockVerticalAlignmentControl","shouldSkipSerialization","justifyContentMap","left","right","center","alignItemsMap","stretch","verticalAlignmentMap","top","bottom","flexWrapOptions","name","label","inspectorControls","FlexLayoutInspectorControls","layout","onChange","layoutBlockSupport","allowOrientation","toolBarControls","FlexLayoutToolbarControls","allowSwitching","allowVerticalAlignment","getLayoutStyle","selector","style","blockName","hasBlockGapSupport","layoutDefinitions","orientation","blockGapValue","spacing","blockGap","undefined","justifyContent","flexWrap","includes","verticalAlignment","alignItems","output","rules","push","length","join","getOrientation","getAlignments","FlexLayoutVerticalAlignmentControl","isToolbar","defaultVerticalAlignment","onVerticalAlignmentChange","value","verticalAlignmentOptions","map","icon","FlexLayoutJustifyContentControl","onJustificationChange","allowedControls","position","variant","justificationOptions","FlexWrapControl","OrientationControl","newVerticalAlignment","newJustification"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tjustifyLeft,\n\tjustifyCenter,\n\tjustifyRight,\n\tjustifySpaceBetween,\n\tjustifyStretch,\n\tarrowRight,\n\tarrowDown,\n} from '@wordpress/icons';\nimport {\n\tButton,\n\tToggleControl,\n\tFlex,\n\tFlexItem,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOptionIcon as ToggleGroupControlOptionIcon,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { appendSelectors, getBlockGapCSS } from './utils';\nimport { getGapCSSValue } from '../hooks/gap';\nimport {\n\tBlockControls,\n\tJustifyContentControl,\n\tBlockVerticalAlignmentControl,\n} from '../components';\nimport { shouldSkipSerialization } from '../hooks/utils';\n\n// Used with the default, horizontal flex orientation.\nconst justifyContentMap = {\n\tleft: 'flex-start',\n\tright: 'flex-end',\n\tcenter: 'center',\n\t'space-between': 'space-between',\n};\n\n// Used with the vertical (column) flex orientation.\nconst alignItemsMap = {\n\tleft: 'flex-start',\n\tright: 'flex-end',\n\tcenter: 'center',\n\tstretch: 'stretch',\n};\n\nconst verticalAlignmentMap = {\n\ttop: 'flex-start',\n\tcenter: 'center',\n\tbottom: 'flex-end',\n\tstretch: 'stretch',\n\t'space-between': 'space-between',\n};\n\nconst flexWrapOptions = [ 'wrap', 'nowrap' ];\n\nexport default {\n\tname: 'flex',\n\tlabel: __( 'Flex' ),\n\tinspectorControls: function FlexLayoutInspectorControls( {\n\t\tlayout = {},\n\t\tonChange,\n\t\tlayoutBlockSupport = {},\n\t} ) {\n\t\tconst { allowOrientation = true } = layoutBlockSupport;\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<Flex>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<FlexLayoutJustifyContentControl\n\t\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t{ allowOrientation && (\n\t\t\t\t\t\t\t<OrientationControl\n\t\t\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t\t<FlexWrapControl layout={ layout } onChange={ onChange } />\n\t\t\t</>\n\t\t);\n\t},\n\ttoolBarControls: function FlexLayoutToolbarControls( {\n\t\tlayout = {},\n\t\tonChange,\n\t\tlayoutBlockSupport,\n\t} ) {\n\t\tif ( layoutBlockSupport?.allowSwitching ) {\n\t\t\treturn null;\n\t\t}\n\t\tconst { allowVerticalAlignment = true } = layoutBlockSupport;\n\t\treturn (\n\t\t\t<BlockControls group=\"block\" __experimentalShareWithChildBlocks>\n\t\t\t\t<FlexLayoutJustifyContentControl\n\t\t\t\t\tlayout={ layout }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tisToolbar\n\t\t\t\t/>\n\t\t\t\t{ allowVerticalAlignment && (\n\t\t\t\t\t<FlexLayoutVerticalAlignmentControl\n\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\tisToolbar\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t);\n\t},\n\tgetLayoutStyle: function getLayoutStyle( {\n\t\tselector,\n\t\tlayout,\n\t\tstyle,\n\t\tblockName,\n\t\thasBlockGapSupport,\n\t\tlayoutDefinitions,\n\t} ) {\n\t\tconst { orientation = 'horizontal' } = layout;\n\n\t\t// If a block's block.json skips serialization for spacing or spacing.blockGap,\n\t\t// don't apply the user-defined value to the styles.\n\t\tconst blockGapValue =\n\t\t\tstyle?.spacing?.blockGap &&\n\t\t\t! shouldSkipSerialization( blockName, 'spacing', 'blockGap' )\n\t\t\t\t? getGapCSSValue( style?.spacing?.blockGap, '0.5em' )\n\t\t\t\t: undefined;\n\t\tconst justifyContent = justifyContentMap[ layout.justifyContent ];\n\t\tconst flexWrap = flexWrapOptions.includes( layout.flexWrap )\n\t\t\t? layout.flexWrap\n\t\t\t: 'wrap';\n\t\tconst verticalAlignment =\n\t\t\tverticalAlignmentMap[ layout.verticalAlignment ];\n\t\tconst alignItems =\n\t\t\talignItemsMap[ layout.justifyContent ] || alignItemsMap.left;\n\n\t\tlet output = '';\n\t\tconst rules = [];\n\n\t\tif ( flexWrap && flexWrap !== 'wrap' ) {\n\t\t\trules.push( `flex-wrap: ${ flexWrap }` );\n\t\t}\n\n\t\tif ( orientation === 'horizontal' ) {\n\t\t\tif ( verticalAlignment ) {\n\t\t\t\trules.push( `align-items: ${ verticalAlignment }` );\n\t\t\t}\n\t\t\tif ( justifyContent ) {\n\t\t\t\trules.push( `justify-content: ${ justifyContent }` );\n\t\t\t}\n\t\t} else {\n\t\t\tif ( verticalAlignment ) {\n\t\t\t\trules.push( `justify-content: ${ verticalAlignment }` );\n\t\t\t}\n\t\t\trules.push( 'flex-direction: column' );\n\t\t\trules.push( `align-items: ${ alignItems }` );\n\t\t}\n\n\t\tif ( rules.length ) {\n\t\t\toutput = `${ appendSelectors( selector ) } {\n\t\t\t\t${ rules.join( '; ' ) };\n\t\t\t}`;\n\t\t}\n\n\t\t// Output blockGap styles based on rules contained in layout definitions in theme.json.\n\t\tif ( hasBlockGapSupport && blockGapValue ) {\n\t\t\toutput += getBlockGapCSS(\n\t\t\t\tselector,\n\t\t\t\tlayoutDefinitions,\n\t\t\t\t'flex',\n\t\t\t\tblockGapValue\n\t\t\t);\n\t\t}\n\t\treturn output;\n\t},\n\tgetOrientation( layout ) {\n\t\tconst { orientation = 'horizontal' } = layout;\n\t\treturn orientation;\n\t},\n\tgetAlignments() {\n\t\treturn [];\n\t},\n};\n\nfunction FlexLayoutVerticalAlignmentControl( {\n\tlayout,\n\tonChange,\n\tisToolbar = false,\n} ) {\n\tconst { orientation = 'horizontal' } = layout;\n\n\tconst defaultVerticalAlignment =\n\t\torientation === 'horizontal'\n\t\t\t? verticalAlignmentMap.center\n\t\t\t: verticalAlignmentMap.top;\n\n\tconst { verticalAlignment = defaultVerticalAlignment } = layout;\n\n\tconst onVerticalAlignmentChange = ( value ) => {\n\t\tonChange( {\n\t\t\t...layout,\n\t\t\tverticalAlignment: value,\n\t\t} );\n\t};\n\tif ( isToolbar ) {\n\t\treturn (\n\t\t\t<BlockVerticalAlignmentControl\n\t\t\t\tonChange={ onVerticalAlignmentChange }\n\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\tcontrols={\n\t\t\t\t\torientation === 'horizontal'\n\t\t\t\t\t\t? [ 'top', 'center', 'bottom', 'stretch' ]\n\t\t\t\t\t\t: [ 'top', 'center', 'bottom', 'space-between' ]\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\n\tconst verticalAlignmentOptions = [\n\t\t{\n\t\t\tvalue: 'flex-start',\n\t\t\tlabel: __( 'Align items top' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'center',\n\t\t\tlabel: __( 'Align items center' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'flex-end',\n\t\t\tlabel: __( 'Align items bottom' ),\n\t\t},\n\t];\n\n\treturn (\n\t\t<fieldset className=\"block-editor-hooks__flex-layout-vertical-alignment-control\">\n\t\t\t<legend>{ __( 'Vertical alignment' ) }</legend>\n\t\t\t<div>\n\t\t\t\t{ verticalAlignmentOptions.map( ( value, icon, label ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ value }\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\tisPressed={ verticalAlignment === value }\n\t\t\t\t\t\t\tonClick={ () => onVerticalAlignmentChange( value ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</div>\n\t\t</fieldset>\n\t);\n}\n\nfunction FlexLayoutJustifyContentControl( {\n\tlayout,\n\tonChange,\n\tisToolbar = false,\n} ) {\n\tconst { justifyContent = 'left', orientation = 'horizontal' } = layout;\n\tconst onJustificationChange = ( value ) => {\n\t\tonChange( {\n\t\t\t...layout,\n\t\t\tjustifyContent: value,\n\t\t} );\n\t};\n\tconst allowedControls = [ 'left', 'center', 'right' ];\n\tif ( orientation === 'horizontal' ) {\n\t\tallowedControls.push( 'space-between' );\n\t} else {\n\t\tallowedControls.push( 'stretch' );\n\t}\n\tif ( isToolbar ) {\n\t\treturn (\n\t\t\t<JustifyContentControl\n\t\t\t\tallowedControls={ allowedControls }\n\t\t\t\tvalue={ justifyContent }\n\t\t\t\tonChange={ onJustificationChange }\n\t\t\t\tpopoverProps={ {\n\t\t\t\t\tposition: 'bottom right',\n\t\t\t\t\tvariant: 'toolbar',\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t}\n\n\tconst justificationOptions = [\n\t\t{\n\t\t\tvalue: 'left',\n\t\t\ticon: justifyLeft,\n\t\t\tlabel: __( 'Justify items left' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'center',\n\t\t\ticon: justifyCenter,\n\t\t\tlabel: __( 'Justify items center' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'right',\n\t\t\ticon: justifyRight,\n\t\t\tlabel: __( 'Justify items right' ),\n\t\t},\n\t];\n\tif ( orientation === 'horizontal' ) {\n\t\tjustificationOptions.push( {\n\t\t\tvalue: 'space-between',\n\t\t\ticon: justifySpaceBetween,\n\t\t\tlabel: __( 'Space between items' ),\n\t\t} );\n\t} else {\n\t\tjustificationOptions.push( {\n\t\t\tvalue: 'stretch',\n\t\t\ticon: justifyStretch,\n\t\t\tlabel: __( 'Stretch items' ),\n\t\t} );\n\t}\n\n\treturn (\n\t\t<ToggleGroupControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tlabel={ __( 'Justification' ) }\n\t\t\tvalue={ justifyContent }\n\t\t\tonChange={ onJustificationChange }\n\t\t\tclassName=\"block-editor-hooks__flex-layout-justification-controls\"\n\t\t>\n\t\t\t{ justificationOptions.map( ( { value, icon, label } ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\t\t\tkey={ value }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</ToggleGroupControl>\n\t);\n}\n\nfunction FlexWrapControl( { layout, onChange } ) {\n\tconst { flexWrap = 'wrap' } = layout;\n\treturn (\n\t\t<ToggleControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tlabel={ __( 'Allow to wrap to multiple lines' ) }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\tonChange( {\n\t\t\t\t\t...layout,\n\t\t\t\t\tflexWrap: value ? 'wrap' : 'nowrap',\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tchecked={ flexWrap === 'wrap' }\n\t\t/>\n\t);\n}\n\nfunction OrientationControl( { layout, onChange } ) {\n\tconst {\n\t\torientation = 'horizontal',\n\t\tverticalAlignment,\n\t\tjustifyContent,\n\t} = layout;\n\treturn (\n\t\t<ToggleGroupControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tclassName=\"block-editor-hooks__flex-layout-orientation-controls\"\n\t\t\tlabel={ __( 'Orientation' ) }\n\t\t\tvalue={ orientation }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\t// Make sure the vertical alignment and justification are compatible with the new orientation.\n\t\t\t\tlet newVerticalAlignment = verticalAlignment;\n\t\t\t\tlet newJustification = justifyContent;\n\t\t\t\tif ( value === 'horizontal' ) {\n\t\t\t\t\tif ( verticalAlignment === 'space-between' ) {\n\t\t\t\t\t\tnewVerticalAlignment = 'center';\n\t\t\t\t\t}\n\t\t\t\t\tif ( justifyContent === 'stretch' ) {\n\t\t\t\t\t\tnewJustification = 'left';\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif ( verticalAlignment === 'stretch' ) {\n\t\t\t\t\t\tnewVerticalAlignment = 'top';\n\t\t\t\t\t}\n\t\t\t\t\tif ( justifyContent === 'space-between' ) {\n\t\t\t\t\t\tnewJustification = 'left';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn onChange( {\n\t\t\t\t\t...layout,\n\t\t\t\t\torientation: value,\n\t\t\t\t\tverticalAlignment: newVerticalAlignment,\n\t\t\t\t\tjustifyContent: newJustification,\n\t\t\t\t} );\n\t\t\t} }\n\t\t>\n\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\ticon={ arrowRight }\n\t\t\t\tvalue={ 'horizontal' }\n\t\t\t\tlabel={ __( 'Horizontal' ) }\n\t\t\t/>\n\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\ticon={ arrowDown }\n\t\t\t\tvalue={ 'vertical' }\n\t\t\t\tlabel={ __( 'Vertical' ) }\n\t\t\t/>\n\t\t</ToggleGroupControl>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-editor/src/layouts/flex.js"],"names":["__","justifyLeft","justifyCenter","justifyRight","justifySpaceBetween","justifyStretch","arrowRight","arrowDown","Button","ToggleControl","Flex","FlexItem","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOptionIcon","ToggleGroupControlOptionIcon","appendSelectors","getBlockGapCSS","getGapCSSValue","BlockControls","JustifyContentControl","BlockVerticalAlignmentControl","shouldSkipSerialization","LAYOUT_DEFINITIONS","justifyContentMap","left","right","center","alignItemsMap","stretch","verticalAlignmentMap","top","bottom","flexWrapOptions","name","label","inspectorControls","FlexLayoutInspectorControls","layout","onChange","layoutBlockSupport","allowOrientation","toolBarControls","FlexLayoutToolbarControls","allowSwitching","allowVerticalAlignment","getLayoutStyle","selector","style","blockName","hasBlockGapSupport","layoutDefinitions","orientation","blockGapValue","spacing","blockGap","undefined","justifyContent","flexWrap","includes","verticalAlignment","alignItems","output","rules","push","length","join","getOrientation","getAlignments","FlexLayoutVerticalAlignmentControl","isToolbar","defaultVerticalAlignment","onVerticalAlignmentChange","value","verticalAlignmentOptions","map","icon","POPOVER_PROPS","placement","FlexLayoutJustifyContentControl","onJustificationChange","allowedControls","justificationOptions","FlexWrapControl","OrientationControl","newVerticalAlignment","newJustification"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tjustifyLeft,\n\tjustifyCenter,\n\tjustifyRight,\n\tjustifySpaceBetween,\n\tjustifyStretch,\n\tarrowRight,\n\tarrowDown,\n} from '@wordpress/icons';\nimport {\n\tButton,\n\tToggleControl,\n\tFlex,\n\tFlexItem,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOptionIcon as ToggleGroupControlOptionIcon,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { appendSelectors, getBlockGapCSS } from './utils';\nimport { getGapCSSValue } from '../hooks/gap';\nimport {\n\tBlockControls,\n\tJustifyContentControl,\n\tBlockVerticalAlignmentControl,\n} from '../components';\nimport { shouldSkipSerialization } from '../hooks/utils';\nimport { LAYOUT_DEFINITIONS } from './definitions';\n\n// Used with the default, horizontal flex orientation.\nconst justifyContentMap = {\n\tleft: 'flex-start',\n\tright: 'flex-end',\n\tcenter: 'center',\n\t'space-between': 'space-between',\n};\n\n// Used with the vertical (column) flex orientation.\nconst alignItemsMap = {\n\tleft: 'flex-start',\n\tright: 'flex-end',\n\tcenter: 'center',\n\tstretch: 'stretch',\n};\n\nconst verticalAlignmentMap = {\n\ttop: 'flex-start',\n\tcenter: 'center',\n\tbottom: 'flex-end',\n\tstretch: 'stretch',\n\t'space-between': 'space-between',\n};\n\nconst flexWrapOptions = [ 'wrap', 'nowrap' ];\n\nexport default {\n\tname: 'flex',\n\tlabel: __( 'Flex' ),\n\tinspectorControls: function FlexLayoutInspectorControls( {\n\t\tlayout = {},\n\t\tonChange,\n\t\tlayoutBlockSupport = {},\n\t} ) {\n\t\tconst { allowOrientation = true } = layoutBlockSupport;\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<Flex>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<FlexLayoutJustifyContentControl\n\t\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t{ allowOrientation && (\n\t\t\t\t\t\t\t<OrientationControl\n\t\t\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t\t<FlexWrapControl layout={ layout } onChange={ onChange } />\n\t\t\t</>\n\t\t);\n\t},\n\ttoolBarControls: function FlexLayoutToolbarControls( {\n\t\tlayout = {},\n\t\tonChange,\n\t\tlayoutBlockSupport,\n\t} ) {\n\t\tif ( layoutBlockSupport?.allowSwitching ) {\n\t\t\treturn null;\n\t\t}\n\t\tconst { allowVerticalAlignment = true } = layoutBlockSupport;\n\t\treturn (\n\t\t\t<BlockControls group=\"block\" __experimentalShareWithChildBlocks>\n\t\t\t\t<FlexLayoutJustifyContentControl\n\t\t\t\t\tlayout={ layout }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tisToolbar\n\t\t\t\t/>\n\t\t\t\t{ allowVerticalAlignment && (\n\t\t\t\t\t<FlexLayoutVerticalAlignmentControl\n\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\tisToolbar\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t);\n\t},\n\tgetLayoutStyle: function getLayoutStyle( {\n\t\tselector,\n\t\tlayout,\n\t\tstyle,\n\t\tblockName,\n\t\thasBlockGapSupport,\n\t\tlayoutDefinitions = LAYOUT_DEFINITIONS,\n\t} ) {\n\t\tconst { orientation = 'horizontal' } = layout;\n\n\t\t// If a block's block.json skips serialization for spacing or spacing.blockGap,\n\t\t// don't apply the user-defined value to the styles.\n\t\tconst blockGapValue =\n\t\t\tstyle?.spacing?.blockGap &&\n\t\t\t! shouldSkipSerialization( blockName, 'spacing', 'blockGap' )\n\t\t\t\t? getGapCSSValue( style?.spacing?.blockGap, '0.5em' )\n\t\t\t\t: undefined;\n\t\tconst justifyContent = justifyContentMap[ layout.justifyContent ];\n\t\tconst flexWrap = flexWrapOptions.includes( layout.flexWrap )\n\t\t\t? layout.flexWrap\n\t\t\t: 'wrap';\n\t\tconst verticalAlignment =\n\t\t\tverticalAlignmentMap[ layout.verticalAlignment ];\n\t\tconst alignItems =\n\t\t\talignItemsMap[ layout.justifyContent ] || alignItemsMap.left;\n\n\t\tlet output = '';\n\t\tconst rules = [];\n\n\t\tif ( flexWrap && flexWrap !== 'wrap' ) {\n\t\t\trules.push( `flex-wrap: ${ flexWrap }` );\n\t\t}\n\n\t\tif ( orientation === 'horizontal' ) {\n\t\t\tif ( verticalAlignment ) {\n\t\t\t\trules.push( `align-items: ${ verticalAlignment }` );\n\t\t\t}\n\t\t\tif ( justifyContent ) {\n\t\t\t\trules.push( `justify-content: ${ justifyContent }` );\n\t\t\t}\n\t\t} else {\n\t\t\tif ( verticalAlignment ) {\n\t\t\t\trules.push( `justify-content: ${ verticalAlignment }` );\n\t\t\t}\n\t\t\trules.push( 'flex-direction: column' );\n\t\t\trules.push( `align-items: ${ alignItems }` );\n\t\t}\n\n\t\tif ( rules.length ) {\n\t\t\toutput = `${ appendSelectors( selector ) } {\n\t\t\t\t${ rules.join( '; ' ) };\n\t\t\t}`;\n\t\t}\n\n\t\t// Output blockGap styles based on rules contained in layout definitions in theme.json.\n\t\tif ( hasBlockGapSupport && blockGapValue ) {\n\t\t\toutput += getBlockGapCSS(\n\t\t\t\tselector,\n\t\t\t\tlayoutDefinitions,\n\t\t\t\t'flex',\n\t\t\t\tblockGapValue\n\t\t\t);\n\t\t}\n\t\treturn output;\n\t},\n\tgetOrientation( layout ) {\n\t\tconst { orientation = 'horizontal' } = layout;\n\t\treturn orientation;\n\t},\n\tgetAlignments() {\n\t\treturn [];\n\t},\n};\n\nfunction FlexLayoutVerticalAlignmentControl( {\n\tlayout,\n\tonChange,\n\tisToolbar = false,\n} ) {\n\tconst { orientation = 'horizontal' } = layout;\n\n\tconst defaultVerticalAlignment =\n\t\torientation === 'horizontal'\n\t\t\t? verticalAlignmentMap.center\n\t\t\t: verticalAlignmentMap.top;\n\n\tconst { verticalAlignment = defaultVerticalAlignment } = layout;\n\n\tconst onVerticalAlignmentChange = ( value ) => {\n\t\tonChange( {\n\t\t\t...layout,\n\t\t\tverticalAlignment: value,\n\t\t} );\n\t};\n\tif ( isToolbar ) {\n\t\treturn (\n\t\t\t<BlockVerticalAlignmentControl\n\t\t\t\tonChange={ onVerticalAlignmentChange }\n\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\tcontrols={\n\t\t\t\t\torientation === 'horizontal'\n\t\t\t\t\t\t? [ 'top', 'center', 'bottom', 'stretch' ]\n\t\t\t\t\t\t: [ 'top', 'center', 'bottom', 'space-between' ]\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\n\tconst verticalAlignmentOptions = [\n\t\t{\n\t\t\tvalue: 'flex-start',\n\t\t\tlabel: __( 'Align items top' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'center',\n\t\t\tlabel: __( 'Align items center' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'flex-end',\n\t\t\tlabel: __( 'Align items bottom' ),\n\t\t},\n\t];\n\n\treturn (\n\t\t<fieldset className=\"block-editor-hooks__flex-layout-vertical-alignment-control\">\n\t\t\t<legend>{ __( 'Vertical alignment' ) }</legend>\n\t\t\t<div>\n\t\t\t\t{ verticalAlignmentOptions.map( ( value, icon, label ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ value }\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\tisPressed={ verticalAlignment === value }\n\t\t\t\t\t\t\tonClick={ () => onVerticalAlignmentChange( value ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</div>\n\t\t</fieldset>\n\t);\n}\n\nconst POPOVER_PROPS = {\n\tplacement: 'bottom-start',\n};\n\nfunction FlexLayoutJustifyContentControl( {\n\tlayout,\n\tonChange,\n\tisToolbar = false,\n} ) {\n\tconst { justifyContent = 'left', orientation = 'horizontal' } = layout;\n\tconst onJustificationChange = ( value ) => {\n\t\tonChange( {\n\t\t\t...layout,\n\t\t\tjustifyContent: value,\n\t\t} );\n\t};\n\tconst allowedControls = [ 'left', 'center', 'right' ];\n\tif ( orientation === 'horizontal' ) {\n\t\tallowedControls.push( 'space-between' );\n\t} else {\n\t\tallowedControls.push( 'stretch' );\n\t}\n\tif ( isToolbar ) {\n\t\treturn (\n\t\t\t<JustifyContentControl\n\t\t\t\tallowedControls={ allowedControls }\n\t\t\t\tvalue={ justifyContent }\n\t\t\t\tonChange={ onJustificationChange }\n\t\t\t\tpopoverProps={ POPOVER_PROPS }\n\t\t\t/>\n\t\t);\n\t}\n\n\tconst justificationOptions = [\n\t\t{\n\t\t\tvalue: 'left',\n\t\t\ticon: justifyLeft,\n\t\t\tlabel: __( 'Justify items left' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'center',\n\t\t\ticon: justifyCenter,\n\t\t\tlabel: __( 'Justify items center' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'right',\n\t\t\ticon: justifyRight,\n\t\t\tlabel: __( 'Justify items right' ),\n\t\t},\n\t];\n\tif ( orientation === 'horizontal' ) {\n\t\tjustificationOptions.push( {\n\t\t\tvalue: 'space-between',\n\t\t\ticon: justifySpaceBetween,\n\t\t\tlabel: __( 'Space between items' ),\n\t\t} );\n\t} else {\n\t\tjustificationOptions.push( {\n\t\t\tvalue: 'stretch',\n\t\t\ticon: justifyStretch,\n\t\t\tlabel: __( 'Stretch items' ),\n\t\t} );\n\t}\n\n\treturn (\n\t\t<ToggleGroupControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tlabel={ __( 'Justification' ) }\n\t\t\tvalue={ justifyContent }\n\t\t\tonChange={ onJustificationChange }\n\t\t\tclassName=\"block-editor-hooks__flex-layout-justification-controls\"\n\t\t>\n\t\t\t{ justificationOptions.map( ( { value, icon, label } ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\t\t\tkey={ value }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</ToggleGroupControl>\n\t);\n}\n\nfunction FlexWrapControl( { layout, onChange } ) {\n\tconst { flexWrap = 'wrap' } = layout;\n\treturn (\n\t\t<ToggleControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tlabel={ __( 'Allow to wrap to multiple lines' ) }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\tonChange( {\n\t\t\t\t\t...layout,\n\t\t\t\t\tflexWrap: value ? 'wrap' : 'nowrap',\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tchecked={ flexWrap === 'wrap' }\n\t\t/>\n\t);\n}\n\nfunction OrientationControl( { layout, onChange } ) {\n\tconst {\n\t\torientation = 'horizontal',\n\t\tverticalAlignment,\n\t\tjustifyContent,\n\t} = layout;\n\treturn (\n\t\t<ToggleGroupControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tclassName=\"block-editor-hooks__flex-layout-orientation-controls\"\n\t\t\tlabel={ __( 'Orientation' ) }\n\t\t\tvalue={ orientation }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\t// Make sure the vertical alignment and justification are compatible with the new orientation.\n\t\t\t\tlet newVerticalAlignment = verticalAlignment;\n\t\t\t\tlet newJustification = justifyContent;\n\t\t\t\tif ( value === 'horizontal' ) {\n\t\t\t\t\tif ( verticalAlignment === 'space-between' ) {\n\t\t\t\t\t\tnewVerticalAlignment = 'center';\n\t\t\t\t\t}\n\t\t\t\t\tif ( justifyContent === 'stretch' ) {\n\t\t\t\t\t\tnewJustification = 'left';\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif ( verticalAlignment === 'stretch' ) {\n\t\t\t\t\t\tnewVerticalAlignment = 'top';\n\t\t\t\t\t}\n\t\t\t\t\tif ( justifyContent === 'space-between' ) {\n\t\t\t\t\t\tnewJustification = 'left';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn onChange( {\n\t\t\t\t\t...layout,\n\t\t\t\t\torientation: value,\n\t\t\t\t\tverticalAlignment: newVerticalAlignment,\n\t\t\t\t\tjustifyContent: newJustification,\n\t\t\t\t} );\n\t\t\t} }\n\t\t>\n\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\ticon={ arrowRight }\n\t\t\t\tvalue={ 'horizontal' }\n\t\t\t\tlabel={ __( 'Horizontal' ) }\n\t\t\t/>\n\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\ticon={ arrowDown }\n\t\t\t\tvalue={ 'vertical' }\n\t\t\t\tlabel={ __( 'Vertical' ) }\n\t\t\t/>\n\t\t</ToggleGroupControl>\n\t);\n}\n"]}
|
|
@@ -9,6 +9,7 @@ import { __ } from '@wordpress/i18n';
|
|
|
9
9
|
import { getBlockGapCSS, getAlignmentsInfo } from './utils';
|
|
10
10
|
import { getGapCSSValue } from '../hooks/gap';
|
|
11
11
|
import { shouldSkipSerialization } from '../hooks/utils';
|
|
12
|
+
import { LAYOUT_DEFINITIONS } from './definitions';
|
|
12
13
|
export default {
|
|
13
14
|
name: 'default',
|
|
14
15
|
label: __('Flow'),
|
|
@@ -23,7 +24,7 @@ export default {
|
|
|
23
24
|
style,
|
|
24
25
|
blockName,
|
|
25
26
|
hasBlockGapSupport,
|
|
26
|
-
layoutDefinitions
|
|
27
|
+
layoutDefinitions = LAYOUT_DEFINITIONS
|
|
27
28
|
}) {
|
|
28
29
|
const blockGapStyleValue = getGapCSSValue(style?.spacing?.blockGap); // If a block's block.json skips serialization for spacing or
|
|
29
30
|
// spacing.blockGap, don't apply the user-defined value to the styles.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-editor/src/layouts/flow.js"],"names":["__","getBlockGapCSS","getAlignmentsInfo","getGapCSSValue","shouldSkipSerialization","name","label","inspectorControls","DefaultLayoutInspectorControls","toolBarControls","DefaultLayoutToolbarControls","getLayoutStyle","selector","style","blockName","hasBlockGapSupport","layoutDefinitions","blockGapStyleValue","spacing","blockGap","blockGapValue","top","output","getOrientation","getAlignments","layout","isBlockBasedTheme","alignmentInfo","alignments","undefined","includes","unshift","map","alignment","info","contentSize","wideSize","wide","none"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,SAASC,cAAT,EAAyBC,iBAAzB,QAAkD,SAAlD;AACA,SAASC,cAAT,QAA+B,cAA/B;AACA,SAASC,uBAAT,QAAwC,gBAAxC;AAEA,eAAe;AACdC,EAAAA,IAAI,EAAE,SADQ;AAEdC,EAAAA,KAAK,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-editor/src/layouts/flow.js"],"names":["__","getBlockGapCSS","getAlignmentsInfo","getGapCSSValue","shouldSkipSerialization","LAYOUT_DEFINITIONS","name","label","inspectorControls","DefaultLayoutInspectorControls","toolBarControls","DefaultLayoutToolbarControls","getLayoutStyle","selector","style","blockName","hasBlockGapSupport","layoutDefinitions","blockGapStyleValue","spacing","blockGap","blockGapValue","top","output","getOrientation","getAlignments","layout","isBlockBasedTheme","alignmentInfo","alignments","undefined","includes","unshift","map","alignment","info","contentSize","wideSize","wide","none"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { getBlockGapCSS, getAlignmentsInfo } from './utils';\nimport { getGapCSSValue } from '../hooks/gap';\nimport { shouldSkipSerialization } from '../hooks/utils';\nimport { LAYOUT_DEFINITIONS } from './definitions';\n\nexport default {\n\tname: 'default',\n\tlabel: __( 'Flow' ),\n\tinspectorControls: function DefaultLayoutInspectorControls() {\n\t\treturn null;\n\t},\n\ttoolBarControls: function DefaultLayoutToolbarControls() {\n\t\treturn null;\n\t},\n\tgetLayoutStyle: function getLayoutStyle( {\n\t\tselector,\n\t\tstyle,\n\t\tblockName,\n\t\thasBlockGapSupport,\n\t\tlayoutDefinitions = LAYOUT_DEFINITIONS,\n\t} ) {\n\t\tconst blockGapStyleValue = getGapCSSValue( style?.spacing?.blockGap );\n\n\t\t// If a block's block.json skips serialization for spacing or\n\t\t// spacing.blockGap, don't apply the user-defined value to the styles.\n\t\tlet blockGapValue = '';\n\t\tif ( ! shouldSkipSerialization( blockName, 'spacing', 'blockGap' ) ) {\n\t\t\t// If an object is provided only use the 'top' value for this kind of gap.\n\t\t\tif ( blockGapStyleValue?.top ) {\n\t\t\t\tblockGapValue = getGapCSSValue( blockGapStyleValue?.top );\n\t\t\t} else if ( typeof blockGapStyleValue === 'string' ) {\n\t\t\t\tblockGapValue = getGapCSSValue( blockGapStyleValue );\n\t\t\t}\n\t\t}\n\n\t\tlet output = '';\n\n\t\t// Output blockGap styles based on rules contained in layout definitions in theme.json.\n\t\tif ( hasBlockGapSupport && blockGapValue ) {\n\t\t\toutput += getBlockGapCSS(\n\t\t\t\tselector,\n\t\t\t\tlayoutDefinitions,\n\t\t\t\t'default',\n\t\t\t\tblockGapValue\n\t\t\t);\n\t\t}\n\t\treturn output;\n\t},\n\tgetOrientation() {\n\t\treturn 'vertical';\n\t},\n\tgetAlignments( layout, isBlockBasedTheme ) {\n\t\tconst alignmentInfo = getAlignmentsInfo( layout );\n\t\tif ( layout.alignments !== undefined ) {\n\t\t\tif ( ! layout.alignments.includes( 'none' ) ) {\n\t\t\t\tlayout.alignments.unshift( 'none' );\n\t\t\t}\n\t\t\treturn layout.alignments.map( ( alignment ) => ( {\n\t\t\t\tname: alignment,\n\t\t\t\tinfo: alignmentInfo[ alignment ],\n\t\t\t} ) );\n\t\t}\n\n\t\tconst alignments = [\n\t\t\t{ name: 'left' },\n\t\t\t{ name: 'center' },\n\t\t\t{ name: 'right' },\n\t\t];\n\n\t\t// This is for backwards compatibility with hybrid themes.\n\t\tif ( ! isBlockBasedTheme ) {\n\t\t\tconst { contentSize, wideSize } = layout;\n\t\t\tif ( contentSize ) {\n\t\t\t\talignments.unshift( { name: 'full' } );\n\t\t\t}\n\n\t\t\tif ( wideSize ) {\n\t\t\t\talignments.unshift( {\n\t\t\t\t\tname: 'wide',\n\t\t\t\t\tinfo: alignmentInfo.wide,\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\n\t\talignments.unshift( { name: 'none', info: alignmentInfo.none } );\n\n\t\treturn alignments;\n\t},\n};\n"]}
|
|
@@ -12,6 +12,7 @@ import { BaseControl, Flex, FlexItem, RangeControl, __experimentalUnitControl as
|
|
|
12
12
|
import { appendSelectors, getBlockGapCSS } from './utils';
|
|
13
13
|
import { getGapCSSValue } from '../hooks/gap';
|
|
14
14
|
import { shouldSkipSerialization } from '../hooks/utils';
|
|
15
|
+
import { LAYOUT_DEFINITIONS } from './definitions';
|
|
15
16
|
const RANGE_CONTROL_MAX_VALUES = {
|
|
16
17
|
px: 600,
|
|
17
18
|
'%': 100,
|
|
@@ -44,7 +45,7 @@ export default {
|
|
|
44
45
|
style,
|
|
45
46
|
blockName,
|
|
46
47
|
hasBlockGapSupport,
|
|
47
|
-
layoutDefinitions
|
|
48
|
+
layoutDefinitions = LAYOUT_DEFINITIONS
|
|
48
49
|
}) {
|
|
49
50
|
const {
|
|
50
51
|
minimumColumnWidth = '12rem',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-editor/src/layouts/grid.js"],"names":["__","BaseControl","Flex","FlexItem","RangeControl","__experimentalUnitControl","UnitControl","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","appendSelectors","getBlockGapCSS","getGapCSSValue","shouldSkipSerialization","RANGE_CONTROL_MAX_VALUES","px","vw","vh","em","rem","name","label","inspectorControls","GridLayoutInspectorControls","layout","onChange","columnCount","toolBarControls","DefaultLayoutToolbarControls","getLayoutStyle","selector","style","blockName","hasBlockGapSupport","layoutDefinitions","minimumColumnWidth","blockGapValue","spacing","blockGap","undefined","output","rules","push","length","join","getOrientation","getAlignments","GridLayoutMinimumWidthControl","value","quantity","unit","handleSliderChange","next","handleUnitChange","newUnit","newValue","includes","toFixed","Math","round","GridLayoutColumnsControl"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nimport {\n\tBaseControl,\n\tFlex,\n\tFlexItem,\n\tRangeControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { appendSelectors, getBlockGapCSS } from './utils';\nimport { getGapCSSValue } from '../hooks/gap';\nimport { shouldSkipSerialization } from '../hooks/utils';\n\nconst RANGE_CONTROL_MAX_VALUES = {\n\tpx: 600,\n\t'%': 100,\n\tvw: 100,\n\tvh: 100,\n\tem: 38,\n\trem: 38,\n};\n\nexport default {\n\tname: 'grid',\n\tlabel: __( 'Grid' ),\n\tinspectorControls: function GridLayoutInspectorControls( {\n\t\tlayout = {},\n\t\tonChange,\n\t} ) {\n\t\treturn layout?.columnCount ? (\n\t\t\t<GridLayoutColumnsControl layout={ layout } onChange={ onChange } />\n\t\t) : (\n\t\t\t<GridLayoutMinimumWidthControl\n\t\t\t\tlayout={ layout }\n\t\t\t\tonChange={ onChange }\n\t\t\t/>\n\t\t);\n\t},\n\ttoolBarControls: function DefaultLayoutToolbarControls() {\n\t\treturn null;\n\t},\n\tgetLayoutStyle: function getLayoutStyle( {\n\t\tselector,\n\t\tlayout,\n\t\tstyle,\n\t\tblockName,\n\t\thasBlockGapSupport,\n\t\tlayoutDefinitions,\n\t} ) {\n\t\tconst { minimumColumnWidth = '12rem', columnCount = null } = layout;\n\n\t\t// If a block's block.json skips serialization for spacing or spacing.blockGap,\n\t\t// don't apply the user-defined value to the styles.\n\t\tconst blockGapValue =\n\t\t\tstyle?.spacing?.blockGap &&\n\t\t\t! shouldSkipSerialization( blockName, 'spacing', 'blockGap' )\n\t\t\t\t? getGapCSSValue( style?.spacing?.blockGap, '0.5em' )\n\t\t\t\t: undefined;\n\n\t\tlet output = '';\n\t\tconst rules = [];\n\n\t\tif ( columnCount ) {\n\t\t\trules.push(\n\t\t\t\t`grid-template-columns: repeat(${ columnCount }, minmax(0, 1fr))`\n\t\t\t);\n\t\t} else if ( minimumColumnWidth ) {\n\t\t\trules.push(\n\t\t\t\t`grid-template-columns: repeat(auto-fill, minmax(min(${ minimumColumnWidth }, 100%), 1fr))`\n\t\t\t);\n\t\t}\n\n\t\tif ( rules.length ) {\n\t\t\t// Reason to disable: the extra line breaks added by prettier mess with the unit tests.\n\t\t\t// eslint-disable-next-line prettier/prettier\n\t\t\toutput = `${ appendSelectors( selector ) } { ${ rules.join(\n\t\t\t\t'; '\n\t\t\t) }; }`;\n\t\t}\n\n\t\t// Output blockGap styles based on rules contained in layout definitions in theme.json.\n\t\tif ( hasBlockGapSupport && blockGapValue ) {\n\t\t\toutput += getBlockGapCSS(\n\t\t\t\tselector,\n\t\t\t\tlayoutDefinitions,\n\t\t\t\t'grid',\n\t\t\t\tblockGapValue\n\t\t\t);\n\t\t}\n\t\treturn output;\n\t},\n\tgetOrientation() {\n\t\treturn 'horizontal';\n\t},\n\tgetAlignments() {\n\t\treturn [];\n\t},\n};\n\n// Enables setting minimum width of grid items.\nfunction GridLayoutMinimumWidthControl( { layout, onChange } ) {\n\tconst { minimumColumnWidth: value = '12rem' } = layout;\n\tconst [ quantity, unit ] = parseQuantityAndUnitFromRawValue( value );\n\n\tconst handleSliderChange = ( next ) => {\n\t\tonChange( {\n\t\t\t...layout,\n\t\t\tminimumColumnWidth: [ next, unit ].join( '' ),\n\t\t} );\n\t};\n\n\t// Mostly copied from HeightControl.\n\tconst handleUnitChange = ( newUnit ) => {\n\t\t// Attempt to smooth over differences between currentUnit and newUnit.\n\t\t// This should slightly improve the experience of switching between unit types.\n\t\tlet newValue;\n\n\t\tif ( [ 'em', 'rem' ].includes( newUnit ) && unit === 'px' ) {\n\t\t\t// Convert pixel value to an approximate of the new unit, assuming a root size of 16px.\n\t\t\tnewValue = ( quantity / 16 ).toFixed( 2 ) + newUnit;\n\t\t} else if ( [ 'em', 'rem' ].includes( unit ) && newUnit === 'px' ) {\n\t\t\t// Convert to pixel value assuming a root size of 16px.\n\t\t\tnewValue = Math.round( quantity * 16 ) + newUnit;\n\t\t} else if (\n\t\t\t[ 'vh', 'vw', '%' ].includes( newUnit ) &&\n\t\t\tquantity > 100\n\t\t) {\n\t\t\t// When converting to `vh`, `vw`, or `%` units, cap the new value at 100.\n\t\t\tnewValue = 100 + newUnit;\n\t\t}\n\n\t\tonChange( {\n\t\t\t...layout,\n\t\t\tminimumColumnWidth: newValue,\n\t\t} );\n\t};\n\n\treturn (\n\t\t<fieldset>\n\t\t\t<BaseControl.VisualLabel as=\"legend\">\n\t\t\t\t{ __( 'Minimum column width' ) }\n\t\t\t</BaseControl.VisualLabel>\n\t\t\t<Flex gap={ 4 }>\n\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...layout,\n\t\t\t\t\t\t\t\tminimumColumnWidth: newValue,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonUnitChange={ handleUnitChange }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t/>\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tonChange={ handleSliderChange }\n\t\t\t\t\t\tvalue={ quantity }\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tmax={ RANGE_CONTROL_MAX_VALUES[ unit ] || 600 }\n\t\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t/>\n\t\t\t\t</FlexItem>\n\t\t\t</Flex>\n\t\t</fieldset>\n\t);\n}\n\n// Enables setting number of grid columns\nfunction GridLayoutColumnsControl( { layout, onChange } ) {\n\tconst { columnCount = 3 } = layout;\n\n\treturn (\n\t\t<RangeControl\n\t\t\tlabel={ __( 'Columns' ) }\n\t\t\tvalue={ columnCount }\n\t\t\tonChange={ ( value ) =>\n\t\t\t\tonChange( {\n\t\t\t\t\t...layout,\n\t\t\t\t\tcolumnCount: value,\n\t\t\t\t} )\n\t\t\t}\n\t\t\tmin={ 1 }\n\t\t\tmax={ 6 }\n\t\t/>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-editor/src/layouts/grid.js"],"names":["__","BaseControl","Flex","FlexItem","RangeControl","__experimentalUnitControl","UnitControl","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","appendSelectors","getBlockGapCSS","getGapCSSValue","shouldSkipSerialization","LAYOUT_DEFINITIONS","RANGE_CONTROL_MAX_VALUES","px","vw","vh","em","rem","name","label","inspectorControls","GridLayoutInspectorControls","layout","onChange","columnCount","toolBarControls","DefaultLayoutToolbarControls","getLayoutStyle","selector","style","blockName","hasBlockGapSupport","layoutDefinitions","minimumColumnWidth","blockGapValue","spacing","blockGap","undefined","output","rules","push","length","join","getOrientation","getAlignments","GridLayoutMinimumWidthControl","value","quantity","unit","handleSliderChange","next","handleUnitChange","newUnit","newValue","includes","toFixed","Math","round","GridLayoutColumnsControl"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nimport {\n\tBaseControl,\n\tFlex,\n\tFlexItem,\n\tRangeControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { appendSelectors, getBlockGapCSS } from './utils';\nimport { getGapCSSValue } from '../hooks/gap';\nimport { shouldSkipSerialization } from '../hooks/utils';\nimport { LAYOUT_DEFINITIONS } from './definitions';\n\nconst RANGE_CONTROL_MAX_VALUES = {\n\tpx: 600,\n\t'%': 100,\n\tvw: 100,\n\tvh: 100,\n\tem: 38,\n\trem: 38,\n};\n\nexport default {\n\tname: 'grid',\n\tlabel: __( 'Grid' ),\n\tinspectorControls: function GridLayoutInspectorControls( {\n\t\tlayout = {},\n\t\tonChange,\n\t} ) {\n\t\treturn layout?.columnCount ? (\n\t\t\t<GridLayoutColumnsControl layout={ layout } onChange={ onChange } />\n\t\t) : (\n\t\t\t<GridLayoutMinimumWidthControl\n\t\t\t\tlayout={ layout }\n\t\t\t\tonChange={ onChange }\n\t\t\t/>\n\t\t);\n\t},\n\ttoolBarControls: function DefaultLayoutToolbarControls() {\n\t\treturn null;\n\t},\n\tgetLayoutStyle: function getLayoutStyle( {\n\t\tselector,\n\t\tlayout,\n\t\tstyle,\n\t\tblockName,\n\t\thasBlockGapSupport,\n\t\tlayoutDefinitions = LAYOUT_DEFINITIONS,\n\t} ) {\n\t\tconst { minimumColumnWidth = '12rem', columnCount = null } = layout;\n\n\t\t// If a block's block.json skips serialization for spacing or spacing.blockGap,\n\t\t// don't apply the user-defined value to the styles.\n\t\tconst blockGapValue =\n\t\t\tstyle?.spacing?.blockGap &&\n\t\t\t! shouldSkipSerialization( blockName, 'spacing', 'blockGap' )\n\t\t\t\t? getGapCSSValue( style?.spacing?.blockGap, '0.5em' )\n\t\t\t\t: undefined;\n\n\t\tlet output = '';\n\t\tconst rules = [];\n\n\t\tif ( columnCount ) {\n\t\t\trules.push(\n\t\t\t\t`grid-template-columns: repeat(${ columnCount }, minmax(0, 1fr))`\n\t\t\t);\n\t\t} else if ( minimumColumnWidth ) {\n\t\t\trules.push(\n\t\t\t\t`grid-template-columns: repeat(auto-fill, minmax(min(${ minimumColumnWidth }, 100%), 1fr))`\n\t\t\t);\n\t\t}\n\n\t\tif ( rules.length ) {\n\t\t\t// Reason to disable: the extra line breaks added by prettier mess with the unit tests.\n\t\t\t// eslint-disable-next-line prettier/prettier\n\t\t\toutput = `${ appendSelectors( selector ) } { ${ rules.join(\n\t\t\t\t'; '\n\t\t\t) }; }`;\n\t\t}\n\n\t\t// Output blockGap styles based on rules contained in layout definitions in theme.json.\n\t\tif ( hasBlockGapSupport && blockGapValue ) {\n\t\t\toutput += getBlockGapCSS(\n\t\t\t\tselector,\n\t\t\t\tlayoutDefinitions,\n\t\t\t\t'grid',\n\t\t\t\tblockGapValue\n\t\t\t);\n\t\t}\n\t\treturn output;\n\t},\n\tgetOrientation() {\n\t\treturn 'horizontal';\n\t},\n\tgetAlignments() {\n\t\treturn [];\n\t},\n};\n\n// Enables setting minimum width of grid items.\nfunction GridLayoutMinimumWidthControl( { layout, onChange } ) {\n\tconst { minimumColumnWidth: value = '12rem' } = layout;\n\tconst [ quantity, unit ] = parseQuantityAndUnitFromRawValue( value );\n\n\tconst handleSliderChange = ( next ) => {\n\t\tonChange( {\n\t\t\t...layout,\n\t\t\tminimumColumnWidth: [ next, unit ].join( '' ),\n\t\t} );\n\t};\n\n\t// Mostly copied from HeightControl.\n\tconst handleUnitChange = ( newUnit ) => {\n\t\t// Attempt to smooth over differences between currentUnit and newUnit.\n\t\t// This should slightly improve the experience of switching between unit types.\n\t\tlet newValue;\n\n\t\tif ( [ 'em', 'rem' ].includes( newUnit ) && unit === 'px' ) {\n\t\t\t// Convert pixel value to an approximate of the new unit, assuming a root size of 16px.\n\t\t\tnewValue = ( quantity / 16 ).toFixed( 2 ) + newUnit;\n\t\t} else if ( [ 'em', 'rem' ].includes( unit ) && newUnit === 'px' ) {\n\t\t\t// Convert to pixel value assuming a root size of 16px.\n\t\t\tnewValue = Math.round( quantity * 16 ) + newUnit;\n\t\t} else if (\n\t\t\t[ 'vh', 'vw', '%' ].includes( newUnit ) &&\n\t\t\tquantity > 100\n\t\t) {\n\t\t\t// When converting to `vh`, `vw`, or `%` units, cap the new value at 100.\n\t\t\tnewValue = 100 + newUnit;\n\t\t}\n\n\t\tonChange( {\n\t\t\t...layout,\n\t\t\tminimumColumnWidth: newValue,\n\t\t} );\n\t};\n\n\treturn (\n\t\t<fieldset>\n\t\t\t<BaseControl.VisualLabel as=\"legend\">\n\t\t\t\t{ __( 'Minimum column width' ) }\n\t\t\t</BaseControl.VisualLabel>\n\t\t\t<Flex gap={ 4 }>\n\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...layout,\n\t\t\t\t\t\t\t\tminimumColumnWidth: newValue,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonUnitChange={ handleUnitChange }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t/>\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tonChange={ handleSliderChange }\n\t\t\t\t\t\tvalue={ quantity }\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tmax={ RANGE_CONTROL_MAX_VALUES[ unit ] || 600 }\n\t\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t/>\n\t\t\t\t</FlexItem>\n\t\t\t</Flex>\n\t\t</fieldset>\n\t);\n}\n\n// Enables setting number of grid columns\nfunction GridLayoutColumnsControl( { layout, onChange } ) {\n\tconst { columnCount = 3 } = layout;\n\n\treturn (\n\t\t<RangeControl\n\t\t\tlabel={ __( 'Columns' ) }\n\t\t\tvalue={ columnCount }\n\t\t\tonChange={ ( value ) =>\n\t\t\t\tonChange( {\n\t\t\t\t\t...layout,\n\t\t\t\t\tcolumnCount: value,\n\t\t\t\t} )\n\t\t\t}\n\t\t\tmin={ 1 }\n\t\t\tmax={ 6 }\n\t\t/>\n\t);\n}\n"]}
|
|
@@ -2,6 +2,11 @@
|
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
4
|
import { __, sprintf } from '@wordpress/i18n';
|
|
5
|
+
/**
|
|
6
|
+
* Internal dependencies
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import { LAYOUT_DEFINITIONS } from './definitions';
|
|
5
10
|
/**
|
|
6
11
|
* Utility to generate the proper CSS selector for layout styles.
|
|
7
12
|
*
|
|
@@ -25,13 +30,13 @@ export function appendSelectors(selectors, append = '') {
|
|
|
25
30
|
* with the provided `blockGapValue`.
|
|
26
31
|
*
|
|
27
32
|
* @param {string} selector The CSS selector to target for the generated rules.
|
|
28
|
-
* @param {Object} layoutDefinitions Layout definitions object
|
|
33
|
+
* @param {Object} layoutDefinitions Layout definitions object.
|
|
29
34
|
* @param {string} layoutType The layout type (e.g. `default` or `flex`).
|
|
30
35
|
* @param {string} blockGapValue The current blockGap value to be applied.
|
|
31
36
|
* @return {string} The generated CSS rules.
|
|
32
37
|
*/
|
|
33
38
|
|
|
34
|
-
export function getBlockGapCSS(selector, layoutDefinitions, layoutType, blockGapValue) {
|
|
39
|
+
export function getBlockGapCSS(selector, layoutDefinitions = LAYOUT_DEFINITIONS, layoutType, blockGapValue) {
|
|
35
40
|
let output = '';
|
|
36
41
|
|
|
37
42
|
if (layoutDefinitions?.[layoutType]?.spacingStyles?.length && blockGapValue) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-editor/src/layouts/utils.js"],"names":["__","sprintf","appendSelectors","selectors","append","split","map","subselector","join","getBlockGapCSS","selector","layoutDefinitions","layoutType","blockGapValue","output","spacingStyles","length","forEach","gapStyle","trim","Object","entries","rules","cssProperty","value","getAlignmentsInfo","layout","contentSize","wideSize","type","alignmentInfo","sizeRegex","test","none","wide"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,eAAT,CAA0BC,SAA1B,EAAqCC,MAAM,GAAG,EAA9C,EAAmD;AACzD;AACA;AACA;AACA;AACA;AAEA,SAAOD,SAAS,CACdE,KADK,CACE,GADF,EAELC,GAFK,CAGHC,WAAF,IACE,0BAA0BA,WAAa,GACvCH,MAAM,GAAI,IAAIA,MAAQ,EAAhB,GAAoB,EAC1B,EANG,EAQLI,IARK,CAQC,GARD,CAAP;AASA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,cAAT,CACNC,QADM,EAENC,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-editor/src/layouts/utils.js"],"names":["__","sprintf","LAYOUT_DEFINITIONS","appendSelectors","selectors","append","split","map","subselector","join","getBlockGapCSS","selector","layoutDefinitions","layoutType","blockGapValue","output","spacingStyles","length","forEach","gapStyle","trim","Object","entries","rules","cssProperty","value","getAlignmentsInfo","layout","contentSize","wideSize","type","alignmentInfo","sizeRegex","test","none","wide"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AAEA;AACA;AACA;;AACA,SAASC,kBAAT,QAAmC,eAAnC;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,eAAT,CAA0BC,SAA1B,EAAqCC,MAAM,GAAG,EAA9C,EAAmD;AACzD;AACA;AACA;AACA;AACA;AAEA,SAAOD,SAAS,CACdE,KADK,CACE,GADF,EAELC,GAFK,CAGHC,WAAF,IACE,0BAA0BA,WAAa,GACvCH,MAAM,GAAI,IAAIA,MAAQ,EAAhB,GAAoB,EAC1B,EANG,EAQLI,IARK,CAQC,GARD,CAAP;AASA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,cAAT,CACNC,QADM,EAENC,iBAAiB,GAAGV,kBAFd,EAGNW,UAHM,EAINC,aAJM,EAKL;AACD,MAAIC,MAAM,GAAG,EAAb;;AACA,MACCH,iBAAiB,GAAIC,UAAJ,CAAjB,EAAmCG,aAAnC,EAAkDC,MAAlD,IACAH,aAFD,EAGE;AACDF,IAAAA,iBAAiB,CAAEC,UAAF,CAAjB,CAAgCG,aAAhC,CAA8CE,OAA9C,CAAyDC,QAAF,IAAgB;AACtEJ,MAAAA,MAAM,IAAK,GAAGZ,eAAe,CAC5BQ,QAD4B,EAE5BQ,QAAQ,CAACR,QAAT,CAAkBS,IAAlB,EAF4B,CAG1B,KAHH;AAIAL,MAAAA,MAAM,IAAIM,MAAM,CAACC,OAAP,CAAgBH,QAAQ,CAACI,KAAzB,EACRhB,GADQ,CAER,CAAE,CAAEiB,WAAF,EAAeC,KAAf,CAAF,KACE,GAAGD,WAAa,KAAKC,KAAK,GAAGA,KAAH,GAAWX,aAAe,EAH9C,EAKRL,IALQ,CAKF,IALE,CAAV;AAMAM,MAAAA,MAAM,IAAI,KAAV;AACA,KAZD;AAaA;;AACD,SAAOA,MAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASW,iBAAT,CAA4BC,MAA5B,EAAqC;AAC3C,QAAM;AAAEC,IAAAA,WAAF;AAAeC,IAAAA,QAAf;AAAyBC,IAAAA,IAAI,GAAG;AAAhC,MAA8CH,MAApD;AACA,QAAMI,aAAa,GAAG,EAAtB;AACA,QAAMC,SAAS,GAAG,iCAAlB;;AACA,MAAKA,SAAS,CAACC,IAAV,CAAgBL,WAAhB,KAAiCE,IAAI,KAAK,aAA/C,EAA+D;AAC9D;AACAC,IAAAA,aAAa,CAACG,IAAd,GAAqBjC,OAAO,CAAED,EAAE,CAAE,aAAF,CAAJ,EAAuB4B,WAAvB,CAA5B;AACA;;AACD,MAAKI,SAAS,CAACC,IAAV,CAAgBJ,QAAhB,CAAL,EAAkC;AACjC;AACAE,IAAAA,aAAa,CAACI,IAAd,GAAqBlC,OAAO,CAAED,EAAE,CAAE,aAAF,CAAJ,EAAuB6B,QAAvB,CAA5B;AACA;;AACD,SAAOE,aAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { LAYOUT_DEFINITIONS } from './definitions';\n\n/**\n * Utility to generate the proper CSS selector for layout styles.\n *\n * @param {string} selectors CSS selector, also supports multiple comma-separated selectors.\n * @param {string} append The string to append.\n *\n * @return {string} - CSS selector.\n */\nexport function appendSelectors( selectors, append = '' ) {\n\t// Ideally we shouldn't need the `.editor-styles-wrapper` increased specificity here\n\t// The problem though is that we have a `.editor-styles-wrapper p { margin: reset; }` style\n\t// it's used to reset the default margin added by wp-admin to paragraphs\n\t// so we need this to be higher speficity otherwise, it won't be applied to paragraphs inside containers\n\t// When the post editor is fully iframed, this extra classname could be removed.\n\n\treturn selectors\n\t\t.split( ',' )\n\t\t.map(\n\t\t\t( subselector ) =>\n\t\t\t\t`.editor-styles-wrapper ${ subselector }${\n\t\t\t\t\tappend ? ` ${ append }` : ''\n\t\t\t\t}`\n\t\t)\n\t\t.join( ',' );\n}\n\n/**\n * Get generated blockGap CSS rules based on layout definitions provided in theme.json\n * Falsy values in the layout definition's spacingStyles rules will be swapped out\n * with the provided `blockGapValue`.\n *\n * @param {string} selector The CSS selector to target for the generated rules.\n * @param {Object} layoutDefinitions Layout definitions object.\n * @param {string} layoutType The layout type (e.g. `default` or `flex`).\n * @param {string} blockGapValue The current blockGap value to be applied.\n * @return {string} The generated CSS rules.\n */\nexport function getBlockGapCSS(\n\tselector,\n\tlayoutDefinitions = LAYOUT_DEFINITIONS,\n\tlayoutType,\n\tblockGapValue\n) {\n\tlet output = '';\n\tif (\n\t\tlayoutDefinitions?.[ layoutType ]?.spacingStyles?.length &&\n\t\tblockGapValue\n\t) {\n\t\tlayoutDefinitions[ layoutType ].spacingStyles.forEach( ( gapStyle ) => {\n\t\t\toutput += `${ appendSelectors(\n\t\t\t\tselector,\n\t\t\t\tgapStyle.selector.trim()\n\t\t\t) } { `;\n\t\t\toutput += Object.entries( gapStyle.rules )\n\t\t\t\t.map(\n\t\t\t\t\t( [ cssProperty, value ] ) =>\n\t\t\t\t\t\t`${ cssProperty }: ${ value ? value : blockGapValue }`\n\t\t\t\t)\n\t\t\t\t.join( '; ' );\n\t\t\toutput += '; }';\n\t\t} );\n\t}\n\treturn output;\n}\n\n/**\n * Helper method to assign contextual info to clarify\n * alignment settings.\n *\n * Besides checking if `contentSize` and `wideSize` have a\n * value, we now show this information only if their values\n * are not a `css var`. This needs to change when parsing\n * css variables land.\n *\n * @see https://github.com/WordPress/gutenberg/pull/34710#issuecomment-918000752\n *\n * @param {Object} layout The layout object.\n * @return {Object} An object with contextual info per alignment.\n */\nexport function getAlignmentsInfo( layout ) {\n\tconst { contentSize, wideSize, type = 'default' } = layout;\n\tconst alignmentInfo = {};\n\tconst sizeRegex = /^(?!0)\\d+(px|em|rem|vw|vh|%)?$/i;\n\tif ( sizeRegex.test( contentSize ) && type === 'constrained' ) {\n\t\t// translators: %s: container size (i.e. 600px etc)\n\t\talignmentInfo.none = sprintf( __( 'Max %s wide' ), contentSize );\n\t}\n\tif ( sizeRegex.test( wideSize ) ) {\n\t\t// translators: %s: container size (i.e. 600px etc)\n\t\talignmentInfo.wide = sprintf( __( 'Max %s wide' ), wideSize );\n\t}\n\treturn alignmentInfo;\n}\n"]}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import * as globalStyles from './components/global-styles';
|
|
5
5
|
import { ExperimentalBlockEditorProvider } from './components/provider';
|
|
6
6
|
import { lock } from './lock-unlock';
|
|
7
|
+
import { getRichTextValues } from './components/rich-text/content';
|
|
7
8
|
import ResizableBoxPopover from './components/resizable-box-popover';
|
|
8
9
|
import { ComposedPrivateInserter as PrivateInserter } from './components/inserter';
|
|
9
10
|
import { PrivateListView } from './components/list-view';
|
|
@@ -11,6 +12,12 @@ import BlockInfo from './components/block-info-slot-fill';
|
|
|
11
12
|
import { useShouldContextualToolbarShow } from './utils/use-should-contextual-toolbar-show';
|
|
12
13
|
import { cleanEmptyObject } from './hooks/utils';
|
|
13
14
|
import { useBlockEditingMode } from './components/block-editing-mode';
|
|
15
|
+
import BlockQuickNavigation from './components/block-quick-navigation';
|
|
16
|
+
import { LayoutStyle } from './components/block-list/layout';
|
|
17
|
+
import { BlockRemovalWarningModal } from './components/block-removal-warning-modal';
|
|
18
|
+
import { useLayoutClasses, useLayoutStyles } from './hooks';
|
|
19
|
+
import DimensionsTool from './components/dimensions-tool';
|
|
20
|
+
import ResolutionTool from './components/resolution-tool';
|
|
14
21
|
/**
|
|
15
22
|
* Private @wordpress/block-editor APIs.
|
|
16
23
|
*/
|
|
@@ -18,12 +25,20 @@ import { useBlockEditingMode } from './components/block-editing-mode';
|
|
|
18
25
|
export const privateApis = {};
|
|
19
26
|
lock(privateApis, { ...globalStyles,
|
|
20
27
|
ExperimentalBlockEditorProvider,
|
|
28
|
+
getRichTextValues,
|
|
21
29
|
PrivateInserter,
|
|
22
30
|
PrivateListView,
|
|
23
31
|
ResizableBoxPopover,
|
|
24
32
|
BlockInfo,
|
|
25
33
|
useShouldContextualToolbarShow,
|
|
26
34
|
cleanEmptyObject,
|
|
27
|
-
useBlockEditingMode
|
|
35
|
+
useBlockEditingMode,
|
|
36
|
+
BlockQuickNavigation,
|
|
37
|
+
LayoutStyle,
|
|
38
|
+
BlockRemovalWarningModal,
|
|
39
|
+
useLayoutClasses,
|
|
40
|
+
useLayoutStyles,
|
|
41
|
+
DimensionsTool,
|
|
42
|
+
ResolutionTool
|
|
28
43
|
});
|
|
29
44
|
//# sourceMappingURL=private-apis.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-editor/src/private-apis.js"],"names":["globalStyles","ExperimentalBlockEditorProvider","lock","ResizableBoxPopover","ComposedPrivateInserter","PrivateInserter","PrivateListView","BlockInfo","useShouldContextualToolbarShow","cleanEmptyObject","useBlockEditingMode","privateApis"],"mappings":"AAAA;AACA;AACA;AACA,OAAO,KAAKA,YAAZ,MAA8B,4BAA9B;AACA,SAASC,+BAAT,QAAgD,uBAAhD;AACA,SAASC,IAAT,QAAqB,eAArB;AACA,OAAOC,mBAAP,MAAgC,oCAAhC;AACA,SAASC,uBAAuB,IAAIC,eAApC,QAA2D,uBAA3D;AACA,SAASC,eAAT,QAAgC,wBAAhC;AACA,OAAOC,SAAP,MAAsB,mCAAtB;AACA,SAASC,8BAAT,QAA+C,4CAA/C;AACA,SAASC,gBAAT,QAAiC,eAAjC;AACA,SAASC,mBAAT,QAAoC,iCAApC;AAEA;AACA;AACA;;AACA,OAAO,MAAMC,WAAW,GAAG,EAApB;
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-editor/src/private-apis.js"],"names":["globalStyles","ExperimentalBlockEditorProvider","lock","getRichTextValues","ResizableBoxPopover","ComposedPrivateInserter","PrivateInserter","PrivateListView","BlockInfo","useShouldContextualToolbarShow","cleanEmptyObject","useBlockEditingMode","BlockQuickNavigation","LayoutStyle","BlockRemovalWarningModal","useLayoutClasses","useLayoutStyles","DimensionsTool","ResolutionTool","privateApis"],"mappings":"AAAA;AACA;AACA;AACA,OAAO,KAAKA,YAAZ,MAA8B,4BAA9B;AACA,SAASC,+BAAT,QAAgD,uBAAhD;AACA,SAASC,IAAT,QAAqB,eAArB;AACA,SAASC,iBAAT,QAAkC,gCAAlC;AACA,OAAOC,mBAAP,MAAgC,oCAAhC;AACA,SAASC,uBAAuB,IAAIC,eAApC,QAA2D,uBAA3D;AACA,SAASC,eAAT,QAAgC,wBAAhC;AACA,OAAOC,SAAP,MAAsB,mCAAtB;AACA,SAASC,8BAAT,QAA+C,4CAA/C;AACA,SAASC,gBAAT,QAAiC,eAAjC;AACA,SAASC,mBAAT,QAAoC,iCAApC;AACA,OAAOC,oBAAP,MAAiC,qCAAjC;AACA,SAASC,WAAT,QAA4B,gCAA5B;AACA,SAASC,wBAAT,QAAyC,0CAAzC;AACA,SAASC,gBAAT,EAA2BC,eAA3B,QAAkD,SAAlD;AACA,OAAOC,cAAP,MAA2B,8BAA3B;AACA,OAAOC,cAAP,MAA2B,8BAA3B;AAEA;AACA;AACA;;AACA,OAAO,MAAMC,WAAW,GAAG,EAApB;AACPjB,IAAI,CAAEiB,WAAF,EAAe,EAClB,GAAGnB,YADe;AAElBC,EAAAA,+BAFkB;AAGlBE,EAAAA,iBAHkB;AAIlBG,EAAAA,eAJkB;AAKlBC,EAAAA,eALkB;AAMlBH,EAAAA,mBANkB;AAOlBI,EAAAA,SAPkB;AAQlBC,EAAAA,8BARkB;AASlBC,EAAAA,gBATkB;AAUlBC,EAAAA,mBAVkB;AAWlBC,EAAAA,oBAXkB;AAYlBC,EAAAA,WAZkB;AAalBC,EAAAA,wBAbkB;AAclBC,EAAAA,gBAdkB;AAelBC,EAAAA,eAfkB;AAgBlBC,EAAAA,cAhBkB;AAiBlBC,EAAAA;AAjBkB,CAAf,CAAJ","sourcesContent":["/**\n * Internal dependencies\n */\nimport * as globalStyles from './components/global-styles';\nimport { ExperimentalBlockEditorProvider } from './components/provider';\nimport { lock } from './lock-unlock';\nimport { getRichTextValues } from './components/rich-text/content';\nimport ResizableBoxPopover from './components/resizable-box-popover';\nimport { ComposedPrivateInserter as PrivateInserter } from './components/inserter';\nimport { PrivateListView } from './components/list-view';\nimport BlockInfo from './components/block-info-slot-fill';\nimport { useShouldContextualToolbarShow } from './utils/use-should-contextual-toolbar-show';\nimport { cleanEmptyObject } from './hooks/utils';\nimport { useBlockEditingMode } from './components/block-editing-mode';\nimport BlockQuickNavigation from './components/block-quick-navigation';\nimport { LayoutStyle } from './components/block-list/layout';\nimport { BlockRemovalWarningModal } from './components/block-removal-warning-modal';\nimport { useLayoutClasses, useLayoutStyles } from './hooks';\nimport DimensionsTool from './components/dimensions-tool';\nimport ResolutionTool from './components/resolution-tool';\n\n/**\n * Private @wordpress/block-editor APIs.\n */\nexport const privateApis = {};\nlock( privateApis, {\n\t...globalStyles,\n\tExperimentalBlockEditorProvider,\n\tgetRichTextValues,\n\tPrivateInserter,\n\tPrivateListView,\n\tResizableBoxPopover,\n\tBlockInfo,\n\tuseShouldContextualToolbarShow,\n\tcleanEmptyObject,\n\tuseBlockEditingMode,\n\tBlockQuickNavigation,\n\tLayoutStyle,\n\tBlockRemovalWarningModal,\n\tuseLayoutClasses,\n\tuseLayoutStyles,\n\tDimensionsTool,\n\tResolutionTool,\n} );\n"]}
|
|
@@ -12,43 +12,10 @@ import deprecated from '@wordpress/deprecated';
|
|
|
12
12
|
|
|
13
13
|
import { mapRichTextSettings } from './utils';
|
|
14
14
|
import { retrieveSelectedAttribute, START_OF_SELECTED_AREA } from '../utils/selection';
|
|
15
|
-
import { __experimentalUpdateSettings } from './private-actions';
|
|
15
|
+
import { __experimentalUpdateSettings, ensureDefaultBlock, privateRemoveBlocks } from './private-actions';
|
|
16
16
|
/** @typedef {import('../components/use-on-block-drop/types').WPDropOperation} WPDropOperation */
|
|
17
17
|
|
|
18
18
|
const castArray = maybeArray => Array.isArray(maybeArray) ? maybeArray : [maybeArray];
|
|
19
|
-
/**
|
|
20
|
-
* Action which will insert a default block insert action if there
|
|
21
|
-
* are no other blocks at the root of the editor. This action should be used
|
|
22
|
-
* in actions which may result in no blocks remaining in the editor (removal,
|
|
23
|
-
* replacement, etc).
|
|
24
|
-
*/
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
const ensureDefaultBlock = () => ({
|
|
28
|
-
select,
|
|
29
|
-
dispatch
|
|
30
|
-
}) => {
|
|
31
|
-
// To avoid a focus loss when removing the last block, assure there is
|
|
32
|
-
// always a default block if the last of the blocks have been removed.
|
|
33
|
-
const count = select.getBlockCount();
|
|
34
|
-
|
|
35
|
-
if (count > 0) {
|
|
36
|
-
return;
|
|
37
|
-
} // If there's an custom appender, don't insert default block.
|
|
38
|
-
// We have to remember to manually move the focus elsewhere to
|
|
39
|
-
// prevent it from being lost though.
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
const {
|
|
43
|
-
__unstableHasCustomAppender
|
|
44
|
-
} = select.getSettings();
|
|
45
|
-
|
|
46
|
-
if (__unstableHasCustomAppender) {
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
dispatch.insertDefaultBlock();
|
|
51
|
-
};
|
|
52
19
|
/**
|
|
53
20
|
* Action that resets blocks state to the specified array of blocks, taking precedence
|
|
54
21
|
* over any other content reflected as an edit in state.
|
|
@@ -1006,34 +973,7 @@ export const mergeBlocks = (firstBlockClientId, secondBlockClientId) => ({
|
|
|
1006
973
|
* when a block is removed.
|
|
1007
974
|
*/
|
|
1008
975
|
|
|
1009
|
-
export const removeBlocks = (clientIds, selectPrevious = true) => (
|
|
1010
|
-
select,
|
|
1011
|
-
dispatch
|
|
1012
|
-
}) => {
|
|
1013
|
-
if (!clientIds || !clientIds.length) {
|
|
1014
|
-
return;
|
|
1015
|
-
}
|
|
1016
|
-
|
|
1017
|
-
clientIds = castArray(clientIds);
|
|
1018
|
-
const rootClientId = select.getBlockRootClientId(clientIds[0]);
|
|
1019
|
-
const canRemoveBlocks = select.canRemoveBlocks(clientIds, rootClientId);
|
|
1020
|
-
|
|
1021
|
-
if (!canRemoveBlocks) {
|
|
1022
|
-
return;
|
|
1023
|
-
}
|
|
1024
|
-
|
|
1025
|
-
if (selectPrevious) {
|
|
1026
|
-
dispatch.selectPreviousBlock(clientIds[0], selectPrevious);
|
|
1027
|
-
}
|
|
1028
|
-
|
|
1029
|
-
dispatch({
|
|
1030
|
-
type: 'REMOVE_BLOCKS',
|
|
1031
|
-
clientIds
|
|
1032
|
-
}); // To avoid a focus loss when removing the last block, assure there is
|
|
1033
|
-
// always a default block if the last of the blocks have been removed.
|
|
1034
|
-
|
|
1035
|
-
dispatch(ensureDefaultBlock());
|
|
1036
|
-
};
|
|
976
|
+
export const removeBlocks = (clientIds, selectPrevious = true) => privateRemoveBlocks(clientIds, selectPrevious);
|
|
1037
977
|
/**
|
|
1038
978
|
* Returns an action object used in signalling that the block with the
|
|
1039
979
|
* specified client ID is to be removed.
|