@wordpress/block-editor 15.22.1 → 16.0.1-next.v.202607070741.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +27 -0
- package/build/autocompleters/block.cjs +10 -2
- package/build/autocompleters/block.cjs.map +2 -2
- package/build/components/background-image-control/index.cjs +0 -2
- package/build/components/background-image-control/index.cjs.map +2 -2
- package/build/components/block-inspector/edit-contents.cjs +3 -0
- package/build/components/block-inspector/edit-contents.cjs.map +3 -3
- package/build/components/block-inspector/index.cjs +18 -36
- package/build/components/block-inspector/index.cjs.map +2 -2
- package/build/components/block-list/block-invalid-warning.cjs +8 -19
- package/build/components/block-list/block-invalid-warning.cjs.map +2 -2
- package/build/components/block-styles/use-styles-for-block.cjs +2 -1
- package/build/components/block-styles/use-styles-for-block.cjs.map +2 -2
- package/build/components/block-title/use-block-display-title.cjs +7 -2
- package/build/components/block-title/use-block-display-title.cjs.map +2 -2
- package/build/components/block-toolbar/block-toolbar-icon.cjs +10 -14
- package/build/components/block-toolbar/block-toolbar-icon.cjs.map +2 -2
- package/build/components/block-variation-transforms/index.cjs +0 -1
- package/build/components/block-variation-transforms/index.cjs.map +2 -2
- package/build/components/child-layout-control/index.cjs +0 -2
- package/build/components/child-layout-control/index.cjs.map +2 -2
- package/build/components/colors-gradients/control.cjs +5 -5
- package/build/components/colors-gradients/control.cjs.map +2 -2
- package/build/components/date-format-picker/index.cjs +0 -1
- package/build/components/date-format-picker/index.cjs.map +2 -2
- package/build/components/dimensions-tool/aspect-ratio-tool.cjs +1 -2
- package/build/components/dimensions-tool/aspect-ratio-tool.cjs.map +2 -2
- package/build/components/dimensions-tool/scale-tool.cjs +0 -1
- package/build/components/dimensions-tool/scale-tool.cjs.map +2 -2
- package/build/components/dimensions-tool/width-height-tool.cjs +2 -4
- package/build/components/dimensions-tool/width-height-tool.cjs.map +2 -2
- package/build/components/font-appearance-control/index.cjs +6 -25
- package/build/components/font-appearance-control/index.cjs.map +3 -3
- package/build/components/font-family/index.cjs +6 -15
- package/build/components/font-family/index.cjs.map +3 -3
- package/build/components/font-sizes/font-size-picker.cjs +1 -2
- package/build/components/font-sizes/font-size-picker.cjs.map +2 -2
- package/build/components/global-styles/border-panel.cjs +0 -1
- package/build/components/global-styles/border-panel.cjs.map +2 -2
- package/build/components/global-styles/dimensions-panel.cjs +0 -3
- package/build/components/global-styles/dimensions-panel.cjs.map +2 -2
- package/build/components/global-styles/typography-panel.cjs +4 -10
- package/build/components/global-styles/typography-panel.cjs.map +2 -2
- package/build/components/height-control/index.cjs +0 -2
- package/build/components/height-control/index.cjs.map +2 -2
- package/build/components/html-element-control/index.cjs +0 -1
- package/build/components/html-element-control/index.cjs.map +2 -2
- package/build/components/image-editor/index.cjs +5 -0
- package/build/components/image-editor/index.cjs.map +3 -3
- package/build/components/image-editor/zoom-dropdown.cjs +0 -1
- package/build/components/image-editor/zoom-dropdown.cjs.map +2 -2
- package/build/components/image-size-control/index.cjs +1 -3
- package/build/components/image-size-control/index.cjs.map +2 -2
- package/build/components/inner-content/index.cjs +107 -0
- package/build/components/inner-content/index.cjs.map +7 -0
- package/build/components/inserter/hooks/use-block-types-state.cjs +10 -2
- package/build/components/inserter/hooks/use-block-types-state.cjs.map +2 -2
- package/build/components/inserter/media-tab/hooks.cjs +34 -6
- package/build/components/inserter/media-tab/hooks.cjs.map +2 -2
- package/build/components/inserter/media-tab/media-list.cjs +3 -1
- package/build/components/inserter/media-tab/media-list.cjs.map +2 -2
- package/build/components/inserter/media-tab/media-panel.cjs +224 -27
- package/build/components/inserter/media-tab/media-panel.cjs.map +3 -3
- package/build/components/inserter/media-tab/media-preview.cjs +32 -17
- package/build/components/inserter/media-tab/media-preview.cjs.map +2 -2
- package/build/components/inserter/media-tab/media-tab.cjs +26 -6
- package/build/components/inserter/media-tab/media-tab.cjs.map +2 -2
- package/build/components/inserter/mobile-tab-navigation.cjs +6 -1
- package/build/components/inserter/mobile-tab-navigation.cjs.map +2 -2
- package/build/components/inserter/no-results.cjs +2 -2
- package/build/components/inserter/no-results.cjs.map +2 -2
- package/build/components/inserter/preview-panel.cjs +2 -1
- package/build/components/inserter/preview-panel.cjs.map +2 -2
- package/build/components/inserter-list-item/index.cjs +8 -2
- package/build/components/inserter-list-item/index.cjs.map +2 -2
- package/build/components/letter-spacing-control/index.cjs +0 -24
- package/build/components/letter-spacing-control/index.cjs.map +3 -3
- package/build/components/line-height-control/index.cjs +7 -22
- package/build/components/line-height-control/index.cjs.map +3 -3
- package/build/components/list-view/block-select-button.cjs +90 -84
- package/build/components/list-view/block-select-button.cjs.map +2 -2
- package/build/components/list-view/block.cjs +51 -20
- package/build/components/list-view/block.cjs.map +2 -2
- package/build/components/list-view/expander.cjs +1 -1
- package/build/components/list-view/expander.cjs.map +2 -2
- package/build/components/list-view/use-list-view-client-ids.cjs +2 -2
- package/build/components/list-view/use-list-view-client-ids.cjs.map +2 -2
- package/build/components/observe-typing/index.cjs +4 -3
- package/build/components/observe-typing/index.cjs.map +2 -2
- package/build/components/preset-input-control/custom-value-controls.cjs +1 -3
- package/build/components/preset-input-control/custom-value-controls.cjs.map +2 -2
- package/build/components/preset-input-control/index.cjs +1 -3
- package/build/components/preset-input-control/index.cjs.map +2 -2
- package/build/components/resolution-tool/index.cjs +1 -2
- package/build/components/resolution-tool/index.cjs.map +2 -2
- package/build/components/text-alignment-control/index.cjs +0 -1
- package/build/components/text-alignment-control/index.cjs.map +2 -2
- package/build/components/text-decoration-control/index.cjs +0 -1
- package/build/components/text-decoration-control/index.cjs.map +2 -2
- package/build/components/text-indent-control/index.cjs +0 -8
- package/build/components/text-indent-control/index.cjs.map +2 -2
- package/build/components/text-transform-control/index.cjs +0 -1
- package/build/components/text-transform-control/index.cjs.map +2 -2
- package/build/components/use-block-display-information/index.cjs +10 -8
- package/build/components/use-block-display-information/index.cjs.map +2 -2
- package/build/components/use-on-block-drop/index.cjs +3 -7
- package/build/components/use-on-block-drop/index.cjs.map +2 -2
- package/build/components/use-resize-canvas/index.cjs +16 -53
- package/build/components/use-resize-canvas/index.cjs.map +3 -3
- package/build/components/writing-mode-control/index.cjs +0 -1
- package/build/components/writing-mode-control/index.cjs.map +2 -2
- package/build/hooks/font-size.cjs +1 -2
- package/build/hooks/font-size.cjs.map +2 -2
- package/build/hooks/layout.cjs +5 -3
- package/build/hooks/layout.cjs.map +2 -2
- package/build/hooks/position.cjs +36 -16
- package/build/hooks/position.cjs.map +2 -2
- package/build/hooks/states.cjs +10 -21
- package/build/hooks/states.cjs.map +2 -2
- package/build/layouts/constrained.cjs +21 -21
- package/build/layouts/constrained.cjs.map +2 -2
- package/build/layouts/flex.cjs +0 -3
- package/build/layouts/flex.cjs.map +2 -2
- package/build/layouts/grid.cjs +51 -9
- package/build/layouts/grid.cjs.map +2 -2
- package/build/private-apis.cjs +4 -2
- package/build/private-apis.cjs.map +3 -3
- package/build/store/actions.cjs.map +2 -2
- package/build/store/private-actions.cjs +16 -0
- package/build/store/private-actions.cjs.map +2 -2
- package/build/store/private-keys.cjs +3 -3
- package/build/store/private-keys.cjs.map +2 -2
- package/build/store/private-selectors.cjs +96 -10
- package/build/store/private-selectors.cjs.map +2 -2
- package/build/store/reducer.cjs +19 -3
- package/build/store/reducer.cjs.map +2 -2
- package/build/store/selectors.cjs +13 -0
- package/build/store/selectors.cjs.map +2 -2
- package/build-module/autocompleters/block.mjs +10 -2
- package/build-module/autocompleters/block.mjs.map +2 -2
- package/build-module/components/background-image-control/index.mjs +0 -2
- package/build-module/components/background-image-control/index.mjs.map +2 -2
- package/build-module/components/block-inspector/edit-contents.mjs +4 -1
- package/build-module/components/block-inspector/edit-contents.mjs.map +2 -2
- package/build-module/components/block-inspector/index.mjs +18 -36
- package/build-module/components/block-inspector/index.mjs.map +2 -2
- package/build-module/components/block-list/block-invalid-warning.mjs +8 -19
- package/build-module/components/block-list/block-invalid-warning.mjs.map +2 -2
- package/build-module/components/block-styles/use-styles-for-block.mjs +2 -1
- package/build-module/components/block-styles/use-styles-for-block.mjs.map +2 -2
- package/build-module/components/block-title/use-block-display-title.mjs +7 -2
- package/build-module/components/block-title/use-block-display-title.mjs.map +2 -2
- package/build-module/components/block-toolbar/block-toolbar-icon.mjs +10 -14
- package/build-module/components/block-toolbar/block-toolbar-icon.mjs.map +2 -2
- package/build-module/components/block-variation-transforms/index.mjs +0 -1
- package/build-module/components/block-variation-transforms/index.mjs.map +2 -2
- package/build-module/components/child-layout-control/index.mjs +0 -2
- package/build-module/components/child-layout-control/index.mjs.map +2 -2
- package/build-module/components/colors-gradients/control.mjs +5 -5
- package/build-module/components/colors-gradients/control.mjs.map +2 -2
- package/build-module/components/date-format-picker/index.mjs +0 -1
- package/build-module/components/date-format-picker/index.mjs.map +2 -2
- package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs +1 -2
- package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs.map +2 -2
- package/build-module/components/dimensions-tool/scale-tool.mjs +0 -1
- package/build-module/components/dimensions-tool/scale-tool.mjs.map +2 -2
- package/build-module/components/dimensions-tool/width-height-tool.mjs +2 -4
- package/build-module/components/dimensions-tool/width-height-tool.mjs.map +2 -2
- package/build-module/components/font-appearance-control/index.mjs +6 -15
- package/build-module/components/font-appearance-control/index.mjs.map +2 -2
- package/build-module/components/font-family/index.mjs +6 -15
- package/build-module/components/font-family/index.mjs.map +2 -2
- package/build-module/components/font-sizes/font-size-picker.mjs +1 -2
- package/build-module/components/font-sizes/font-size-picker.mjs.map +2 -2
- package/build-module/components/global-styles/border-panel.mjs +0 -1
- package/build-module/components/global-styles/border-panel.mjs.map +2 -2
- package/build-module/components/global-styles/dimensions-panel.mjs +0 -3
- package/build-module/components/global-styles/dimensions-panel.mjs.map +2 -2
- package/build-module/components/global-styles/typography-panel.mjs +4 -10
- package/build-module/components/global-styles/typography-panel.mjs.map +2 -2
- package/build-module/components/height-control/index.mjs +0 -2
- package/build-module/components/height-control/index.mjs.map +2 -2
- package/build-module/components/html-element-control/index.mjs +0 -1
- package/build-module/components/html-element-control/index.mjs.map +2 -2
- package/build-module/components/image-editor/index.mjs +5 -0
- package/build-module/components/image-editor/index.mjs.map +2 -2
- package/build-module/components/image-editor/zoom-dropdown.mjs +0 -1
- package/build-module/components/image-editor/zoom-dropdown.mjs.map +2 -2
- package/build-module/components/image-size-control/index.mjs +1 -3
- package/build-module/components/image-size-control/index.mjs.map +2 -2
- package/build-module/components/inner-content/index.mjs +82 -0
- package/build-module/components/inner-content/index.mjs.map +7 -0
- package/build-module/components/inserter/hooks/use-block-types-state.mjs +10 -2
- package/build-module/components/inserter/hooks/use-block-types-state.mjs.map +2 -2
- package/build-module/components/inserter/media-tab/hooks.mjs +33 -6
- package/build-module/components/inserter/media-tab/hooks.mjs.map +2 -2
- package/build-module/components/inserter/media-tab/media-list.mjs +3 -1
- package/build-module/components/inserter/media-tab/media-list.mjs.map +2 -2
- package/build-module/components/inserter/media-tab/media-panel.mjs +227 -30
- package/build-module/components/inserter/media-tab/media-panel.mjs.map +2 -2
- package/build-module/components/inserter/media-tab/media-preview.mjs +33 -18
- package/build-module/components/inserter/media-tab/media-preview.mjs.map +2 -2
- package/build-module/components/inserter/media-tab/media-tab.mjs +27 -7
- package/build-module/components/inserter/media-tab/media-tab.mjs.map +2 -2
- package/build-module/components/inserter/mobile-tab-navigation.mjs +6 -1
- package/build-module/components/inserter/mobile-tab-navigation.mjs.map +2 -2
- package/build-module/components/inserter/no-results.mjs +2 -2
- package/build-module/components/inserter/no-results.mjs.map +2 -2
- package/build-module/components/inserter/preview-panel.mjs +2 -1
- package/build-module/components/inserter/preview-panel.mjs.map +2 -2
- package/build-module/components/inserter-list-item/index.mjs +8 -2
- package/build-module/components/inserter-list-item/index.mjs.map +2 -2
- package/build-module/components/letter-spacing-control/index.mjs +0 -14
- package/build-module/components/letter-spacing-control/index.mjs.map +2 -2
- package/build-module/components/line-height-control/index.mjs +7 -12
- package/build-module/components/line-height-control/index.mjs.map +2 -2
- package/build-module/components/list-view/block-select-button.mjs +90 -84
- package/build-module/components/list-view/block-select-button.mjs.map +2 -2
- package/build-module/components/list-view/block.mjs +51 -20
- package/build-module/components/list-view/block.mjs.map +2 -2
- package/build-module/components/list-view/expander.mjs +1 -1
- package/build-module/components/list-view/expander.mjs.map +2 -2
- package/build-module/components/list-view/use-list-view-client-ids.mjs +2 -2
- package/build-module/components/list-view/use-list-view-client-ids.mjs.map +2 -2
- package/build-module/components/observe-typing/index.mjs +4 -3
- package/build-module/components/observe-typing/index.mjs.map +2 -2
- package/build-module/components/preset-input-control/custom-value-controls.mjs +1 -3
- package/build-module/components/preset-input-control/custom-value-controls.mjs.map +2 -2
- package/build-module/components/preset-input-control/index.mjs +1 -3
- package/build-module/components/preset-input-control/index.mjs.map +2 -2
- package/build-module/components/resolution-tool/index.mjs +1 -2
- package/build-module/components/resolution-tool/index.mjs.map +2 -2
- package/build-module/components/text-alignment-control/index.mjs +0 -1
- package/build-module/components/text-alignment-control/index.mjs.map +2 -2
- package/build-module/components/text-decoration-control/index.mjs +0 -1
- package/build-module/components/text-decoration-control/index.mjs.map +2 -2
- package/build-module/components/text-indent-control/index.mjs +0 -8
- package/build-module/components/text-indent-control/index.mjs.map +2 -2
- package/build-module/components/text-transform-control/index.mjs +0 -1
- package/build-module/components/text-transform-control/index.mjs.map +2 -2
- package/build-module/components/use-block-display-information/index.mjs +10 -8
- package/build-module/components/use-block-display-information/index.mjs.map +2 -2
- package/build-module/components/use-on-block-drop/index.mjs +4 -7
- package/build-module/components/use-on-block-drop/index.mjs.map +2 -2
- package/build-module/components/use-resize-canvas/index.mjs +6 -53
- package/build-module/components/use-resize-canvas/index.mjs.map +2 -2
- package/build-module/components/writing-mode-control/index.mjs +0 -1
- package/build-module/components/writing-mode-control/index.mjs.map +2 -2
- package/build-module/hooks/font-size.mjs +1 -2
- package/build-module/hooks/font-size.mjs.map +2 -2
- package/build-module/hooks/layout.mjs +4 -3
- package/build-module/hooks/layout.mjs.map +2 -2
- package/build-module/hooks/position.mjs +38 -18
- package/build-module/hooks/position.mjs.map +2 -2
- package/build-module/hooks/states.mjs +10 -21
- package/build-module/hooks/states.mjs.map +2 -2
- package/build-module/layouts/constrained.mjs +21 -21
- package/build-module/layouts/constrained.mjs.map +2 -2
- package/build-module/layouts/flex.mjs +0 -3
- package/build-module/layouts/flex.mjs.map +2 -2
- package/build-module/layouts/grid.mjs +52 -9
- package/build-module/layouts/grid.mjs.map +2 -2
- package/build-module/private-apis.mjs +5 -3
- package/build-module/private-apis.mjs.map +2 -2
- package/build-module/store/actions.mjs.map +2 -2
- package/build-module/store/private-actions.mjs +14 -0
- package/build-module/store/private-actions.mjs.map +2 -2
- package/build-module/store/private-keys.mjs +2 -2
- package/build-module/store/private-keys.mjs.map +2 -2
- package/build-module/store/private-selectors.mjs +93 -10
- package/build-module/store/private-selectors.mjs.map +2 -2
- package/build-module/store/reducer.mjs +17 -3
- package/build-module/store/reducer.mjs.map +2 -2
- package/build-module/store/selectors.mjs +13 -0
- package/build-module/store/selectors.mjs.map +2 -2
- package/build-style/content-rtl.css +11 -5
- package/build-style/content.css +11 -5
- package/build-style/style-rtl.css +113 -3
- package/build-style/style.css +113 -3
- package/package.json +43 -41
- package/src/autocompleters/block.js +10 -3
- package/src/autocompleters/test/block.js +53 -0
- package/src/components/background-image-control/index.js +0 -2
- package/src/components/block-inspector/edit-contents.js +5 -1
- package/src/components/block-inspector/index.js +25 -44
- package/src/components/block-list/block-invalid-warning.js +8 -19
- package/src/components/block-patterns-list/stories/index.story.jsx +1 -1
- package/src/components/block-styles/use-styles-for-block.js +1 -0
- package/src/components/block-title/use-block-display-title.js +7 -2
- package/src/components/block-toolbar/block-toolbar-icon.js +11 -16
- package/src/components/block-toolbar/test/block-toolbar-icon.js +32 -9
- package/src/components/block-variation-transforms/index.js +0 -1
- package/src/components/child-layout-control/index.js +0 -2
- package/src/components/color-palette/test/__snapshots__/control.js.snap +11 -106
- package/src/components/colors-gradients/control.js +4 -4
- package/src/components/colors-gradients/style.scss +2 -2
- package/src/components/date-format-picker/index.js +0 -1
- package/src/components/dimensions-tool/aspect-ratio-tool.js +0 -1
- package/src/components/dimensions-tool/scale-tool.js +0 -1
- package/src/components/dimensions-tool/width-height-tool.js +0 -2
- package/src/components/font-appearance-control/index.js +6 -19
- package/src/components/font-family/README.md +0 -9
- package/src/components/font-family/index.js +6 -19
- package/src/components/font-family/stories/index.story.jsx +0 -1
- package/src/components/font-sizes/font-size-picker.js +0 -1
- package/src/components/global-styles/border-panel.js +0 -1
- package/src/components/global-styles/dimensions-panel.js +0 -3
- package/src/components/global-styles/typography-panel.js +0 -6
- package/src/components/height-control/index.js +0 -2
- package/src/components/html-element-control/index.js +0 -1
- package/src/components/iframe/content.scss +3 -3
- package/src/components/image-editor/index.js +22 -0
- package/src/components/image-editor/zoom-dropdown.js +0 -1
- package/src/components/image-size-control/index.js +0 -2
- package/src/components/inner-content/index.js +119 -0
- package/src/components/inner-content/test/index.js +81 -0
- package/src/components/inserter/hooks/use-block-types-state.js +10 -2
- package/src/components/inserter/media-tab/hooks.js +59 -9
- package/src/components/inserter/media-tab/media-list.js +2 -0
- package/src/components/inserter/media-tab/media-panel.js +256 -17
- package/src/components/inserter/media-tab/media-preview.js +34 -17
- package/src/components/inserter/media-tab/media-tab.js +20 -2
- package/src/components/inserter/media-tab/test/hooks.js +204 -0
- package/src/components/inserter/mobile-tab-navigation.js +6 -1
- package/src/components/inserter/no-results.js +2 -2
- package/src/components/inserter/preview-panel.js +1 -0
- package/src/components/inserter/style.scss +110 -1
- package/src/components/inserter-list-item/index.js +8 -2
- package/src/components/letter-spacing-control/README.md +0 -8
- package/src/components/letter-spacing-control/index.js +5 -23
- package/src/components/letter-spacing-control/stories/index.story.jsx +0 -12
- package/src/components/line-height-control/README.md +0 -8
- package/src/components/line-height-control/index.js +7 -16
- package/src/components/line-height-control/stories/index.story.jsx +0 -1
- package/src/components/line-height-control/test/index.js +1 -7
- package/src/components/link-picker/test/index.js +3 -1
- package/src/components/list-view/block-select-button.js +5 -1
- package/src/components/list-view/block.js +57 -20
- package/src/components/list-view/expander.js +5 -1
- package/src/components/list-view/style.scss +19 -0
- package/src/components/list-view/use-list-view-client-ids.js +2 -2
- package/src/components/observe-typing/index.js +9 -4
- package/src/components/preset-input-control/custom-value-controls.js +0 -2
- package/src/components/preset-input-control/index.js +0 -2
- package/src/components/resolution-tool/index.js +0 -1
- package/src/components/responsive-block-control/test/index.js +1 -5
- package/src/components/text-alignment-control/index.js +0 -1
- package/src/components/text-decoration-control/index.js +0 -1
- package/src/components/text-indent-control/index.js +7 -16
- package/src/components/text-transform-control/index.js +0 -1
- package/src/components/use-block-display-information/index.js +9 -13
- package/src/components/use-block-display-information/test/index.js +47 -9
- package/src/components/use-on-block-drop/index.js +4 -7
- package/src/components/use-resize-canvas/index.js +10 -71
- package/src/components/writing-mode-control/index.js +0 -1
- package/src/hooks/block-hooks.scss +15 -0
- package/src/hooks/font-size.js +0 -1
- package/src/hooks/layout.js +5 -4
- package/src/hooks/position.js +44 -23
- package/src/hooks/states.js +24 -26
- package/src/hooks/test/cross-origin-isolation.js +0 -4
- package/src/hooks/test/layout.js +75 -1
- package/src/layouts/constrained.js +51 -28
- package/src/layouts/flex.js +0 -3
- package/src/layouts/grid.js +59 -7
- package/src/layouts/test/constrained.js +91 -0
- package/src/layouts/test/grid.js +71 -0
- package/src/private-apis.js +4 -2
- package/src/store/actions.js +1 -0
- package/src/store/private-actions.js +31 -0
- package/src/store/private-keys.js +1 -1
- package/src/store/private-selectors.js +184 -11
- package/src/store/reducer.js +37 -2
- package/src/store/selectors.js +41 -0
- package/src/store/test/private-selectors.js +436 -10
- package/src/store/test/reducer.js +41 -13
- package/src/store/test/selectors.js +133 -0
- package/src/style.scss +1 -0
- package/src/components/use-resize-canvas/README.md +0 -37
|
@@ -1,79 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
4
|
+
import deprecated from '@wordpress/deprecated';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* Previously returned inline styles that sized the editor canvas to emulate a
|
|
8
|
+
* device preview width. Device preview is now handled by the editor's resizable
|
|
9
|
+
* canvas, so this hook is a no-op kept for backward compatibility.
|
|
8
10
|
*
|
|
9
|
-
* @
|
|
10
|
-
*
|
|
11
|
-
* @return {Object} Inline styles to be added to resizable container.
|
|
11
|
+
* @deprecated
|
|
12
12
|
*/
|
|
13
|
-
export default function useResizeCanvas(
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
return;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
const resizeListener = () => updateActualWidth( window.innerWidth );
|
|
22
|
-
window.addEventListener( 'resize', resizeListener );
|
|
23
|
-
|
|
24
|
-
return () => {
|
|
25
|
-
window.removeEventListener( 'resize', resizeListener );
|
|
26
|
-
};
|
|
27
|
-
}, [ deviceType ] );
|
|
28
|
-
|
|
29
|
-
const getCanvasWidth = ( device ) => {
|
|
30
|
-
let deviceWidth;
|
|
31
|
-
|
|
32
|
-
/*
|
|
33
|
-
* Matches the breakpoints in packages/base-styles/_breakpoints.scss,
|
|
34
|
-
* and breakpoints in packages/compose/src/hooks/use-viewport-match/index.js.
|
|
35
|
-
* minus 1 to trigger the media query for device preview.
|
|
36
|
-
*/
|
|
37
|
-
switch ( device ) {
|
|
38
|
-
case 'Tablet':
|
|
39
|
-
deviceWidth = 782 - 1; // preview for useViewportMatch( 'medium', '<' )
|
|
40
|
-
break;
|
|
41
|
-
case 'Mobile':
|
|
42
|
-
deviceWidth = 480 - 1; // preview for useViewportMatch( 'mobile', '<' )
|
|
43
|
-
break;
|
|
44
|
-
default:
|
|
45
|
-
return null;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
return deviceWidth < actualWidth ? deviceWidth : actualWidth;
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
const contentInlineStyles = ( device ) => {
|
|
52
|
-
const height = device === 'Mobile' ? '768px' : '1024px';
|
|
53
|
-
const marginVertical = '40px';
|
|
54
|
-
const marginHorizontal = 'auto';
|
|
55
|
-
|
|
56
|
-
switch ( device ) {
|
|
57
|
-
case 'Tablet':
|
|
58
|
-
case 'Mobile':
|
|
59
|
-
return {
|
|
60
|
-
width: getCanvasWidth( device ),
|
|
61
|
-
// Keeping margin styles separate to avoid warnings
|
|
62
|
-
// when those props get overridden in the iframe component
|
|
63
|
-
marginTop: marginVertical,
|
|
64
|
-
marginBottom: marginVertical,
|
|
65
|
-
marginLeft: marginHorizontal,
|
|
66
|
-
marginRight: marginHorizontal,
|
|
67
|
-
height,
|
|
68
|
-
overflowY: 'auto',
|
|
69
|
-
};
|
|
70
|
-
default:
|
|
71
|
-
return {
|
|
72
|
-
marginLeft: marginHorizontal,
|
|
73
|
-
marginRight: marginHorizontal,
|
|
74
|
-
};
|
|
75
|
-
}
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
return contentInlineStyles( deviceType );
|
|
13
|
+
export default function useResizeCanvas() {
|
|
14
|
+
deprecated( 'wp.blockEditor.useResizeCanvas', {
|
|
15
|
+
since: '7.1',
|
|
16
|
+
hint: 'Device preview is now handled by the editor canvas. This hook no longer does anything.',
|
|
17
|
+
} );
|
|
79
18
|
}
|
|
@@ -40,7 +40,6 @@ export default function WritingModeControl( { className, value, onChange } ) {
|
|
|
40
40
|
return (
|
|
41
41
|
<ToggleGroupControl
|
|
42
42
|
isDeselectable
|
|
43
|
-
__next40pxDefaultSize
|
|
44
43
|
label={ __( 'Orientation' ) }
|
|
45
44
|
className={ clsx( 'block-editor-writing-mode-control', className ) }
|
|
46
45
|
value={ value }
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
@use "@wordpress/base-styles/colors" as *;
|
|
3
3
|
|
|
4
4
|
.block-editor-hooks__block-hooks {
|
|
5
|
+
|
|
5
6
|
/**
|
|
6
7
|
* Un-reverse the flex direction for the toggle's label.
|
|
7
8
|
*/
|
|
@@ -15,3 +16,17 @@
|
|
|
15
16
|
margin-bottom: $grid-unit-20;
|
|
16
17
|
}
|
|
17
18
|
}
|
|
19
|
+
|
|
20
|
+
.block-editor-hooks__position-control-item {
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Try to make items match the width of the anchor, subtract any margin on
|
|
24
|
+
* items to calculate the correct inner width.
|
|
25
|
+
*/
|
|
26
|
+
max-inline-size: max(calc(var(--anchor-width) - (2 * var(--wp-ui-popup-padding))), 223px);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.block-editor-hooks__position-control-item-hint {
|
|
30
|
+
color: var(--wpds-color-foreground-content-neutral-weak);
|
|
31
|
+
margin-block-start: $grid-unit-05;
|
|
32
|
+
}
|
package/src/hooks/font-size.js
CHANGED
package/src/hooks/layout.js
CHANGED
|
@@ -85,7 +85,7 @@ export function getResetLayout( layoutBlockSupport = {}, blockVariation ) {
|
|
|
85
85
|
} );
|
|
86
86
|
}
|
|
87
87
|
|
|
88
|
-
function getLayoutStateOverrides(
|
|
88
|
+
export function getLayoutStateOverrides(
|
|
89
89
|
layout = {},
|
|
90
90
|
baseLayout = {},
|
|
91
91
|
existingLayout = {}
|
|
@@ -98,11 +98,13 @@ function getLayoutStateOverrides(
|
|
|
98
98
|
);
|
|
99
99
|
|
|
100
100
|
Object.entries( layout || {} ).forEach( ( [ key, value ] ) => {
|
|
101
|
+
const baseHasValue = Object.hasOwn( baseLayout || {}, key );
|
|
101
102
|
if (
|
|
102
103
|
! CHILD_LAYOUT_KEYS.includes( key ) &&
|
|
103
104
|
value !== baseLayout?.[ key ]
|
|
104
105
|
) {
|
|
105
|
-
overrides[ key ] =
|
|
106
|
+
overrides[ key ] =
|
|
107
|
+
value === undefined && baseHasValue ? null : value;
|
|
106
108
|
}
|
|
107
109
|
} );
|
|
108
110
|
|
|
@@ -466,7 +468,7 @@ function LayoutPanelPure( {
|
|
|
466
468
|
const nextStateStyle = cleanEmptyObject( {
|
|
467
469
|
...stateStyle,
|
|
468
470
|
layout: getLayoutStateOverrides(
|
|
469
|
-
|
|
471
|
+
newLayout,
|
|
470
472
|
baseLayout,
|
|
471
473
|
stateStyle?.layout
|
|
472
474
|
),
|
|
@@ -593,7 +595,6 @@ export default {
|
|
|
593
595
|
function LayoutTypeSwitcher( { type, onChange } ) {
|
|
594
596
|
return (
|
|
595
597
|
<ToggleGroupControl
|
|
596
|
-
__next40pxDefaultSize
|
|
597
598
|
isBlock
|
|
598
599
|
label={ __( 'Layout type' ) }
|
|
599
600
|
hideLabelFromVision
|
package/src/hooks/position.js
CHANGED
|
@@ -8,10 +8,11 @@ import clsx from 'clsx';
|
|
|
8
8
|
*/
|
|
9
9
|
import { __, _x, sprintf } from '@wordpress/i18n';
|
|
10
10
|
import { getBlockSupport, hasBlockSupport } from '@wordpress/blocks';
|
|
11
|
-
import { BaseControl, CustomSelectControl } from '@wordpress/components';
|
|
12
11
|
import { useInstanceId } from '@wordpress/compose';
|
|
13
12
|
import { useSelect } from '@wordpress/data';
|
|
14
|
-
import { useMemo } from '@wordpress/element';
|
|
13
|
+
import { useId, useMemo } from '@wordpress/element';
|
|
14
|
+
// eslint-disable-next-line @wordpress/use-recommended-components -- Use the portal-based popup to avoid inspector clipping.
|
|
15
|
+
import { SelectControl } from '@wordpress/ui';
|
|
15
16
|
|
|
16
17
|
/**
|
|
17
18
|
* Internal dependencies
|
|
@@ -27,13 +28,13 @@ const POSITION_SUPPORT_KEY = 'position';
|
|
|
27
28
|
const DEFAULT_OPTION = {
|
|
28
29
|
key: 'default',
|
|
29
30
|
value: '',
|
|
30
|
-
|
|
31
|
+
label: __( 'Default' ),
|
|
31
32
|
};
|
|
32
33
|
|
|
33
34
|
const STICKY_OPTION = {
|
|
34
35
|
key: 'sticky',
|
|
35
36
|
value: 'sticky',
|
|
36
|
-
|
|
37
|
+
label: _x( 'Sticky', 'Name for the value of the CSS position property' ),
|
|
37
38
|
hint: __(
|
|
38
39
|
'The block will stick to the top of the window instead of scrolling.'
|
|
39
40
|
),
|
|
@@ -42,7 +43,7 @@ const STICKY_OPTION = {
|
|
|
42
43
|
const FIXED_OPTION = {
|
|
43
44
|
key: 'fixed',
|
|
44
45
|
value: 'fixed',
|
|
45
|
-
|
|
46
|
+
label: _x( 'Fixed', 'Name for the value of the CSS position property' ),
|
|
46
47
|
hint: __( 'The block will not move when the page is scrolled.' ),
|
|
47
48
|
};
|
|
48
49
|
|
|
@@ -262,28 +263,48 @@ export function PositionPanelPure( {
|
|
|
262
263
|
const selectedOption = value
|
|
263
264
|
? options.find( ( option ) => option.value === value ) || DEFAULT_OPTION
|
|
264
265
|
: DEFAULT_OPTION;
|
|
266
|
+
const hintIdPrefix = useId();
|
|
265
267
|
|
|
266
268
|
// Only display position controls if there is at least one option to choose from.
|
|
267
269
|
return options.length > 1 ? (
|
|
268
270
|
<InspectorControls group="position">
|
|
269
|
-
<
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
271
|
+
<SelectControl
|
|
272
|
+
label={ __( 'Position' ) }
|
|
273
|
+
hideLabelFromVision
|
|
274
|
+
description={ stickyHelpText }
|
|
275
|
+
items={ options }
|
|
276
|
+
value={ selectedOption }
|
|
277
|
+
onValueChange={ ( selectedItem ) => {
|
|
278
|
+
onChangeType( selectedItem.value );
|
|
279
|
+
} }
|
|
280
|
+
>
|
|
281
|
+
{ options.map( ( option ) => {
|
|
282
|
+
const hintId = option.hint
|
|
283
|
+
? `${ hintIdPrefix }-${ option.key }`
|
|
284
|
+
: undefined;
|
|
285
|
+
|
|
286
|
+
return (
|
|
287
|
+
<SelectControl.Item
|
|
288
|
+
key={ option.key }
|
|
289
|
+
value={ option }
|
|
290
|
+
label={ option.label }
|
|
291
|
+
className="block-editor-hooks__position-control-item"
|
|
292
|
+
aria-describedby={ hintId }
|
|
293
|
+
>
|
|
294
|
+
<div>{ option.label }</div>
|
|
295
|
+
{ option.hint && (
|
|
296
|
+
<div
|
|
297
|
+
id={ hintId }
|
|
298
|
+
className="block-editor-hooks__position-control-item-hint"
|
|
299
|
+
aria-hidden="true"
|
|
300
|
+
>
|
|
301
|
+
{ option.hint }
|
|
302
|
+
</div>
|
|
303
|
+
) }
|
|
304
|
+
</SelectControl.Item>
|
|
305
|
+
);
|
|
306
|
+
} ) }
|
|
307
|
+
</SelectControl>
|
|
287
308
|
</InspectorControls>
|
|
288
309
|
) : null;
|
|
289
310
|
}
|
package/src/hooks/states.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
|
-
import { getBlockType } from '@wordpress/blocks';
|
|
5
4
|
import { __ } from '@wordpress/i18n';
|
|
6
5
|
|
|
7
6
|
/**
|
|
@@ -23,6 +22,13 @@ export const RESPONSIVE_STATE_LABELS = {
|
|
|
23
22
|
'@mobile': __( 'Mobile' ),
|
|
24
23
|
};
|
|
25
24
|
|
|
25
|
+
const DEVICE_STATE_OPTIONS = Object.entries( RESPONSIVE_STATE_LABELS ).map(
|
|
26
|
+
( [ value, label ] ) => ( {
|
|
27
|
+
value,
|
|
28
|
+
label,
|
|
29
|
+
} )
|
|
30
|
+
);
|
|
31
|
+
|
|
26
32
|
// Keep in sync with WP_Theme_JSON_Gutenberg::VALID_BLOCK_PSEUDO_SELECTORS
|
|
27
33
|
// and packages/global-styles-engine/src/core/render.tsx.
|
|
28
34
|
export const VALID_BLOCK_PSEUDO_STATES = {
|
|
@@ -43,23 +49,11 @@ function getPseudoStateOptions( name ) {
|
|
|
43
49
|
|
|
44
50
|
const DEFAULT_STATE_VALUE = 'default';
|
|
45
51
|
|
|
46
|
-
function getViewportStateOptions( name ) {
|
|
47
|
-
if ( ! getBlockType( name )?.attributes?.style ) {
|
|
48
|
-
return [];
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
return Object.entries( RESPONSIVE_STATE_LABELS ).map(
|
|
52
|
-
( [ value, label ] ) => ( {
|
|
53
|
-
value,
|
|
54
|
-
label,
|
|
55
|
-
} )
|
|
56
|
-
);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
52
|
/**
|
|
60
|
-
* Renders a
|
|
61
|
-
*
|
|
62
|
-
*
|
|
53
|
+
* Renders a pseudo-state selector in the block card header.
|
|
54
|
+
*
|
|
55
|
+
* Viewport states are selected globally via the editor's device preview
|
|
56
|
+
* (Responsive editing), so only pseudo-states are exposed here.
|
|
63
57
|
*
|
|
64
58
|
* @param {Object} props Component props.
|
|
65
59
|
* @param {string} props.name Block name.
|
|
@@ -68,21 +62,17 @@ function getViewportStateOptions( name ) {
|
|
|
68
62
|
* @return {Element|null} State control component, or null if not applicable.
|
|
69
63
|
*/
|
|
70
64
|
export function BlockStatesControl( { name, value, onChange } ) {
|
|
71
|
-
const viewportStateOptions = getViewportStateOptions( name );
|
|
72
65
|
const pseudoStateOptions = getPseudoStateOptions( name );
|
|
73
66
|
const dropdownMenuProps = useToolsPanelDropdownMenuProps();
|
|
74
67
|
|
|
75
|
-
if ( !
|
|
68
|
+
if ( ! pseudoStateOptions.length ) {
|
|
76
69
|
return null;
|
|
77
70
|
}
|
|
78
71
|
|
|
79
72
|
return (
|
|
80
73
|
<StateControl
|
|
81
|
-
viewportStates={ viewportStateOptions }
|
|
82
74
|
pseudoStates={ pseudoStateOptions }
|
|
83
|
-
viewportValue={ value?.viewport ?? DEFAULT_STATE_VALUE }
|
|
84
75
|
pseudoStateValue={ value?.pseudo ?? DEFAULT_STATE_VALUE }
|
|
85
|
-
onChangeViewport={ ( viewport ) => onChange( { viewport } ) }
|
|
86
76
|
onChangePseudoState={ ( pseudo ) => onChange( { pseudo } ) }
|
|
87
77
|
popoverProps={ dropdownMenuProps.popoverProps }
|
|
88
78
|
showText={ false }
|
|
@@ -90,17 +80,25 @@ export function BlockStatesControl( { name, value, onChange } ) {
|
|
|
90
80
|
);
|
|
91
81
|
}
|
|
92
82
|
|
|
93
|
-
|
|
94
|
-
|
|
83
|
+
/**
|
|
84
|
+
* Renders badges for the active style states of a block.
|
|
85
|
+
*
|
|
86
|
+
* @param {Object} props Component props.
|
|
87
|
+
* @param {string} props.name Block name.
|
|
88
|
+
* @param {Object} props.value Currently selected style-state value.
|
|
89
|
+
* @param {boolean} props.isResponsiveEditing Whether Responsive editing is enabled.
|
|
90
|
+
* @return {Element|null} Badges component, or null if there is nothing to show.
|
|
91
|
+
*/
|
|
92
|
+
export function BlockStateBadges( { name, value, isResponsiveEditing } ) {
|
|
95
93
|
const pseudoStateOptions = getPseudoStateOptions( name );
|
|
96
94
|
|
|
97
|
-
if ( !
|
|
95
|
+
if ( ! pseudoStateOptions.length && ! isResponsiveEditing ) {
|
|
98
96
|
return null;
|
|
99
97
|
}
|
|
100
98
|
|
|
101
99
|
return (
|
|
102
100
|
<StateControlBadges
|
|
103
|
-
viewportStates={
|
|
101
|
+
viewportStates={ isResponsiveEditing ? DEVICE_STATE_OPTIONS : [] }
|
|
104
102
|
pseudoStates={ pseudoStateOptions }
|
|
105
103
|
viewportValue={ value?.viewport ?? DEFAULT_STATE_VALUE }
|
|
106
104
|
pseudoStateValue={ value?.pseudo ?? DEFAULT_STATE_VALUE }
|
package/src/hooks/test/layout.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Internal dependencies
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import {
|
|
5
|
+
getLayoutStateOverrides,
|
|
6
|
+
getResetLayout,
|
|
7
|
+
getResponsiveLayoutStyles,
|
|
8
|
+
} from '../layout';
|
|
5
9
|
|
|
6
10
|
describe( 'layout', () => {
|
|
7
11
|
describe( 'getResetLayout()', () => {
|
|
@@ -46,6 +50,28 @@ describe( 'layout', () => {
|
|
|
46
50
|
} );
|
|
47
51
|
} );
|
|
48
52
|
|
|
53
|
+
describe( 'getLayoutStateOverrides()', () => {
|
|
54
|
+
it( 'preserves explicit unsets for layout values inherited from the default state', () => {
|
|
55
|
+
expect(
|
|
56
|
+
getLayoutStateOverrides(
|
|
57
|
+
{ type: 'grid', columnCount: undefined },
|
|
58
|
+
{ type: 'grid', columnCount: 3 }
|
|
59
|
+
)
|
|
60
|
+
).toEqual( {
|
|
61
|
+
columnCount: null,
|
|
62
|
+
} );
|
|
63
|
+
} );
|
|
64
|
+
|
|
65
|
+
it( 'removes undefined layout values that are not inherited from the default state', () => {
|
|
66
|
+
expect(
|
|
67
|
+
getLayoutStateOverrides(
|
|
68
|
+
{ type: 'grid', columnCount: undefined },
|
|
69
|
+
{ type: 'grid' }
|
|
70
|
+
)
|
|
71
|
+
).toBeUndefined();
|
|
72
|
+
} );
|
|
73
|
+
} );
|
|
74
|
+
|
|
49
75
|
describe( 'getResponsiveLayoutStyles()', () => {
|
|
50
76
|
it( 'generates responsive block gap styles for flow layouts', () => {
|
|
51
77
|
expect(
|
|
@@ -135,6 +161,54 @@ describe( 'layout', () => {
|
|
|
135
161
|
);
|
|
136
162
|
} );
|
|
137
163
|
|
|
164
|
+
it( 'generates responsive auto grid columns when column count is unset', () => {
|
|
165
|
+
expect(
|
|
166
|
+
getResponsiveLayoutStyles( {
|
|
167
|
+
attributes: {
|
|
168
|
+
style: {
|
|
169
|
+
'@mobile': {
|
|
170
|
+
layout: {
|
|
171
|
+
columnCount: null,
|
|
172
|
+
},
|
|
173
|
+
},
|
|
174
|
+
},
|
|
175
|
+
},
|
|
176
|
+
blockName: 'core/group',
|
|
177
|
+
selector: '.wp-container-test',
|
|
178
|
+
layout: { type: 'grid', columnCount: 3 },
|
|
179
|
+
hasBlockGapSupport: true,
|
|
180
|
+
} )
|
|
181
|
+
).toBe(
|
|
182
|
+
'@media (width <= 480px){.wp-container-test { grid-template-columns: repeat(auto-fill, minmax(min(12rem, 100%), 1fr)); container-type: inline-size; }}'
|
|
183
|
+
);
|
|
184
|
+
} );
|
|
185
|
+
|
|
186
|
+
it( 'generates responsive constrained size resets when content width is unset', () => {
|
|
187
|
+
const result = getResponsiveLayoutStyles( {
|
|
188
|
+
attributes: {
|
|
189
|
+
style: {
|
|
190
|
+
'@mobile': {
|
|
191
|
+
layout: {
|
|
192
|
+
contentSize: null,
|
|
193
|
+
},
|
|
194
|
+
},
|
|
195
|
+
},
|
|
196
|
+
},
|
|
197
|
+
blockName: 'core/group',
|
|
198
|
+
selector: '.wp-container-test',
|
|
199
|
+
layout: { type: 'constrained', contentSize: '800px' },
|
|
200
|
+
hasBlockGapSupport: true,
|
|
201
|
+
} );
|
|
202
|
+
|
|
203
|
+
expect( result ).toContain( '@media (width <= 480px)' );
|
|
204
|
+
expect( result ).toContain(
|
|
205
|
+
'max-width: var(--wp--style--global--content-size, none);'
|
|
206
|
+
);
|
|
207
|
+
expect( result ).toContain(
|
|
208
|
+
'max-width: var(--wp--style--global--wide-size, none);'
|
|
209
|
+
);
|
|
210
|
+
} );
|
|
211
|
+
|
|
138
212
|
it( 'keeps responsive grid column overrides when block gap is also changed', () => {
|
|
139
213
|
expect(
|
|
140
214
|
getResponsiveLayoutStyles( {
|
|
@@ -30,6 +30,9 @@ import { BlockControls, JustifyContentControl } from '../components';
|
|
|
30
30
|
import { cleanEmptyObject, shouldSkipSerialization } from '../hooks/utils';
|
|
31
31
|
import { LAYOUT_DEFINITIONS } from './definitions';
|
|
32
32
|
|
|
33
|
+
const GLOBAL_CONTENT_SIZE = 'var(--wp--style--global--content-size, none)';
|
|
34
|
+
const GLOBAL_WIDE_SIZE = 'var(--wp--style--global--wide-size, none)';
|
|
35
|
+
|
|
33
36
|
export default {
|
|
34
37
|
name: 'constrained',
|
|
35
38
|
label: __( 'Constrained' ),
|
|
@@ -112,24 +115,25 @@ export default {
|
|
|
112
115
|
panelId={ clientId }
|
|
113
116
|
>
|
|
114
117
|
<UnitControl
|
|
115
|
-
__next40pxDefaultSize
|
|
116
118
|
label={ __( 'Content width' ) }
|
|
117
119
|
labelPosition="top"
|
|
118
|
-
value={
|
|
120
|
+
value={
|
|
121
|
+
contentSize === null
|
|
122
|
+
? ''
|
|
123
|
+
: contentSize || wideSize || ''
|
|
124
|
+
}
|
|
119
125
|
onChange={ ( nextWidth ) => {
|
|
120
126
|
nextWidth =
|
|
121
127
|
0 > parseFloat( nextWidth )
|
|
122
128
|
? '0'
|
|
123
129
|
: nextWidth;
|
|
124
|
-
onChange(
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
nextWidth
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
} )
|
|
132
|
-
);
|
|
130
|
+
onChange( {
|
|
131
|
+
...layout,
|
|
132
|
+
contentSize:
|
|
133
|
+
nextWidth !== ''
|
|
134
|
+
? nextWidth
|
|
135
|
+
: undefined,
|
|
136
|
+
} );
|
|
133
137
|
} }
|
|
134
138
|
units={ units }
|
|
135
139
|
prefix={
|
|
@@ -146,24 +150,25 @@ export default {
|
|
|
146
150
|
panelId={ clientId }
|
|
147
151
|
>
|
|
148
152
|
<UnitControl
|
|
149
|
-
__next40pxDefaultSize
|
|
150
153
|
label={ __( 'Wide width' ) }
|
|
151
154
|
labelPosition="top"
|
|
152
|
-
value={
|
|
155
|
+
value={
|
|
156
|
+
wideSize === null
|
|
157
|
+
? ''
|
|
158
|
+
: wideSize || contentSize || ''
|
|
159
|
+
}
|
|
153
160
|
onChange={ ( nextWidth ) => {
|
|
154
161
|
nextWidth =
|
|
155
162
|
0 > parseFloat( nextWidth )
|
|
156
163
|
? '0'
|
|
157
164
|
: nextWidth;
|
|
158
|
-
onChange(
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
nextWidth
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
} )
|
|
166
|
-
);
|
|
165
|
+
onChange( {
|
|
166
|
+
...layout,
|
|
167
|
+
wideSize:
|
|
168
|
+
nextWidth !== ''
|
|
169
|
+
? nextWidth
|
|
170
|
+
: undefined,
|
|
171
|
+
} );
|
|
167
172
|
} }
|
|
168
173
|
units={ units }
|
|
169
174
|
prefix={
|
|
@@ -188,7 +193,6 @@ export default {
|
|
|
188
193
|
panelId={ clientId }
|
|
189
194
|
>
|
|
190
195
|
<ToggleGroupControl
|
|
191
|
-
__next40pxDefaultSize
|
|
192
196
|
label={ __( 'Justification' ) }
|
|
193
197
|
value={ justifyContent }
|
|
194
198
|
onChange={ onJustificationChange }
|
|
@@ -273,12 +277,30 @@ export default {
|
|
|
273
277
|
|
|
274
278
|
const hasJustificationOverride =
|
|
275
279
|
hasViewportOverrides && hasViewportOverride( 'justifyContent' );
|
|
280
|
+
const hasContentSizeOverride =
|
|
281
|
+
hasViewportOverrides && hasViewportOverride( 'contentSize' );
|
|
282
|
+
const hasWideSizeOverride =
|
|
283
|
+
hasViewportOverrides && hasViewportOverride( 'wideSize' );
|
|
276
284
|
const shouldOutputConstrainedSizes =
|
|
277
285
|
! hasViewportOverrides ||
|
|
278
|
-
|
|
279
|
-
|
|
286
|
+
hasContentSizeOverride ||
|
|
287
|
+
hasWideSizeOverride;
|
|
288
|
+
const isResettingConstrainedSizes =
|
|
289
|
+
hasViewportOverrides &&
|
|
290
|
+
( ( hasContentSizeOverride && ! contentSize ) ||
|
|
291
|
+
( hasWideSizeOverride && ! wideSize ) );
|
|
292
|
+
const contentMaxWidth =
|
|
293
|
+
contentSize ||
|
|
294
|
+
( wideSize && ! hasContentSizeOverride
|
|
295
|
+
? wideSize
|
|
296
|
+
: GLOBAL_CONTENT_SIZE );
|
|
297
|
+
const wideMaxWidth =
|
|
298
|
+
wideSize ||
|
|
299
|
+
( contentSize && ! hasWideSizeOverride
|
|
300
|
+
? contentSize
|
|
301
|
+
: GLOBAL_WIDE_SIZE );
|
|
280
302
|
const constrainedSizeDeclarations = [
|
|
281
|
-
`max-width: ${
|
|
303
|
+
`max-width: ${ contentMaxWidth }`,
|
|
282
304
|
];
|
|
283
305
|
if ( ! hasViewportOverrides || hasJustificationOverride ) {
|
|
284
306
|
constrainedSizeDeclarations.push(
|
|
@@ -287,7 +309,8 @@ export default {
|
|
|
287
309
|
);
|
|
288
310
|
}
|
|
289
311
|
let output =
|
|
290
|
-
shouldOutputConstrainedSizes &&
|
|
312
|
+
shouldOutputConstrainedSizes &&
|
|
313
|
+
( !! contentSize || !! wideSize || isResettingConstrainedSizes )
|
|
291
314
|
? `
|
|
292
315
|
${ appendSelectors(
|
|
293
316
|
selector,
|
|
@@ -296,7 +319,7 @@ export default {
|
|
|
296
319
|
${ constrainedSizeDeclarations.join( '; ' ) };
|
|
297
320
|
}
|
|
298
321
|
${ appendSelectors( selector, '> .alignwide' ) } {
|
|
299
|
-
max-width: ${
|
|
322
|
+
max-width: ${ wideMaxWidth };
|
|
300
323
|
}
|
|
301
324
|
${ appendSelectors( selector, '> .alignfull' ) } {
|
|
302
325
|
max-width: none;
|
package/src/layouts/flex.js
CHANGED
|
@@ -437,7 +437,6 @@ function FlexLayoutVerticalAlignmentControl( {
|
|
|
437
437
|
|
|
438
438
|
return (
|
|
439
439
|
<ToggleGroupControl
|
|
440
|
-
__next40pxDefaultSize
|
|
441
440
|
label={ __( 'Alignment' ) }
|
|
442
441
|
onChange={ onVerticalAlignmentChange }
|
|
443
442
|
value={ verticalAlignment }
|
|
@@ -524,7 +523,6 @@ function FlexLayoutJustifyContentControl( {
|
|
|
524
523
|
|
|
525
524
|
return (
|
|
526
525
|
<ToggleGroupControl
|
|
527
|
-
__next40pxDefaultSize
|
|
528
526
|
label={ __( 'Justification' ) }
|
|
529
527
|
value={ justifyContent }
|
|
530
528
|
onChange={ onJustificationChange }
|
|
@@ -568,7 +566,6 @@ function OrientationControl( { layout, onChange } ) {
|
|
|
568
566
|
} = layout;
|
|
569
567
|
return (
|
|
570
568
|
<ToggleGroupControl
|
|
571
|
-
__next40pxDefaultSize
|
|
572
569
|
className="block-editor-hooks__flex-layout-orientation-controls"
|
|
573
570
|
label={ __( 'Orientation' ) }
|
|
574
571
|
value={ orientation }
|