@wordpress/block-editor 12.12.0 → 12.13.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 +12 -10
- package/README.md +35 -3
- package/build/components/block-alignment-control/use-available-alignments.js +30 -28
- package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
- package/build/components/block-list/block.native.js +4 -4
- package/build/components/block-list/block.native.js.map +1 -1
- package/build/components/block-list/layout.js +2 -3
- package/build/components/block-list/layout.js.map +1 -1
- package/build/components/border-radius-control/index.js +3 -2
- package/build/components/border-radius-control/index.js.map +1 -1
- package/build/components/color-palette/with-color-context.js +6 -6
- package/build/components/color-palette/with-color-context.js.map +1 -1
- package/build/components/colors/with-colors.js +2 -8
- package/build/components/colors/with-colors.js.map +1 -1
- package/build/components/colors-gradients/control.js +6 -7
- package/build/components/colors-gradients/control.js.map +1 -1
- package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +5 -13
- package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
- package/build/components/font-family/index.js +2 -3
- package/build/components/font-family/index.js.map +1 -1
- package/build/components/font-sizes/font-size-picker.js +3 -5
- package/build/components/font-sizes/font-size-picker.js.map +1 -1
- package/build/components/font-sizes/with-font-sizes.js +3 -4
- package/build/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build/components/global-styles/filters-panel.js +7 -8
- package/build/components/global-styles/filters-panel.js.map +1 -1
- package/build/components/global-styles/image-settings-panel.js +2 -2
- package/build/components/global-styles/image-settings-panel.js.map +1 -1
- package/build/components/global-styles/typography-panel.js +1 -1
- package/build/components/global-styles/typography-panel.js.map +1 -1
- package/build/components/gradients/use-gradient.js +2 -5
- package/build/components/gradients/use-gradient.js.map +1 -1
- package/build/components/height-control/index.js +3 -3
- package/build/components/height-control/index.js.map +1 -1
- package/build/components/index.js +9 -2
- package/build/components/index.js.map +1 -1
- package/build/components/index.native.js +9 -2
- package/build/components/index.native.js.map +1 -1
- package/build/components/inner-blocks/index.js +2 -2
- package/build/components/inner-blocks/index.js.map +1 -1
- package/build/components/letter-spacing-control/index.js +3 -3
- package/build/components/letter-spacing-control/index.js.map +1 -1
- package/build/components/link-control/search-item.js +11 -0
- package/build/components/link-control/search-item.js.map +1 -1
- package/build/components/link-control/search-results.js +2 -1
- package/build/components/link-control/search-results.js.map +1 -1
- package/build/components/link-control/use-search-handler.js +10 -5
- package/build/components/link-control/use-search-handler.js.map +1 -1
- package/build/components/resizable-box-popover/index.js +1 -1
- package/build/components/resizable-box-popover/index.js.map +1 -1
- package/build/components/rich-text/index.js +1 -1
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js +6 -3
- package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
- package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +3 -3
- package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
- package/build/components/unit-control/index.js +3 -3
- package/build/components/unit-control/index.js.map +1 -1
- package/build/components/use-block-commands/index.js +6 -1
- package/build/components/use-block-commands/index.js.map +1 -1
- package/build/components/use-settings/index.js +212 -0
- package/build/components/use-settings/index.js.map +1 -0
- package/build/hooks/align.js +51 -35
- package/build/hooks/align.js.map +1 -1
- package/build/hooks/anchor.js +37 -32
- package/build/hooks/anchor.js.map +1 -1
- package/build/hooks/background.js +4 -4
- package/build/hooks/background.js.map +1 -1
- package/build/hooks/color.js +2 -4
- package/build/hooks/color.js.map +1 -1
- package/build/hooks/duotone.js +10 -9
- package/build/hooks/duotone.js.map +1 -1
- package/build/hooks/font-size.js +4 -4
- package/build/hooks/font-size.js.map +1 -1
- package/build/hooks/layout.js +10 -11
- package/build/hooks/layout.js.map +1 -1
- package/build/hooks/line-height.js +3 -3
- package/build/hooks/line-height.js.map +1 -1
- package/build/hooks/position.js +2 -3
- package/build/hooks/position.js.map +1 -1
- package/build/hooks/use-color-props.js +3 -11
- package/build/hooks/use-color-props.js.map +1 -1
- package/build/hooks/utils.js +1 -42
- package/build/hooks/utils.js.map +1 -1
- package/build/layouts/constrained.js +3 -3
- package/build/layouts/constrained.js.map +1 -1
- package/build/utils/object.js +4 -1
- package/build/utils/object.js.map +1 -1
- package/build/utils/transform-styles/index.js +19 -24
- package/build/utils/transform-styles/index.js.map +1 -1
- package/build-module/components/block-alignment-control/use-available-alignments.js +30 -28
- package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
- package/build-module/components/block-list/block.native.js +4 -4
- package/build-module/components/block-list/block.native.js.map +1 -1
- package/build-module/components/block-list/layout.js +2 -2
- package/build-module/components/block-list/layout.js.map +1 -1
- package/build-module/components/border-radius-control/index.js +3 -2
- package/build-module/components/border-radius-control/index.js.map +1 -1
- package/build-module/components/color-palette/with-color-context.js +6 -5
- package/build-module/components/color-palette/with-color-context.js.map +1 -1
- package/build-module/components/colors/with-colors.js +2 -7
- package/build-module/components/colors/with-colors.js.map +1 -1
- package/build-module/components/colors-gradients/control.js +6 -7
- package/build-module/components/colors-gradients/control.js.map +1 -1
- package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +5 -12
- package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
- package/build-module/components/font-family/index.js +2 -2
- package/build-module/components/font-family/index.js.map +1 -1
- package/build-module/components/font-sizes/font-size-picker.js +3 -4
- package/build-module/components/font-sizes/font-size-picker.js.map +1 -1
- package/build-module/components/font-sizes/with-font-sizes.js +3 -3
- package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build-module/components/global-styles/filters-panel.js +7 -8
- package/build-module/components/global-styles/filters-panel.js.map +1 -1
- package/build-module/components/global-styles/image-settings-panel.js +2 -2
- package/build-module/components/global-styles/image-settings-panel.js.map +1 -1
- package/build-module/components/global-styles/typography-panel.js +1 -1
- package/build-module/components/global-styles/typography-panel.js.map +1 -1
- package/build-module/components/gradients/use-gradient.js +2 -4
- package/build-module/components/gradients/use-gradient.js.map +1 -1
- package/build-module/components/height-control/index.js +3 -2
- package/build-module/components/height-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 -1
- package/build-module/components/index.native.js.map +1 -1
- package/build-module/components/inner-blocks/index.js +2 -2
- package/build-module/components/inner-blocks/index.js.map +1 -1
- package/build-module/components/letter-spacing-control/index.js +3 -2
- package/build-module/components/letter-spacing-control/index.js.map +1 -1
- package/build-module/components/link-control/search-item.js +12 -1
- package/build-module/components/link-control/search-item.js.map +1 -1
- package/build-module/components/link-control/search-results.js +2 -1
- package/build-module/components/link-control/search-results.js.map +1 -1
- package/build-module/components/link-control/use-search-handler.js +10 -5
- package/build-module/components/link-control/use-search-handler.js.map +1 -1
- package/build-module/components/resizable-box-popover/index.js +1 -1
- package/build-module/components/resizable-box-popover/index.js.map +1 -1
- package/build-module/components/rich-text/index.js +1 -1
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js +6 -2
- package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
- package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +3 -2
- package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
- package/build-module/components/unit-control/index.js +3 -2
- package/build-module/components/unit-control/index.js.map +1 -1
- package/build-module/components/use-block-commands/index.js +5 -1
- package/build-module/components/use-block-commands/index.js.map +1 -1
- package/build-module/components/use-settings/index.js +203 -0
- package/build-module/components/use-settings/index.js.map +1 -0
- package/build-module/hooks/align.js +51 -35
- package/build-module/hooks/align.js.map +1 -1
- package/build-module/hooks/anchor.js +37 -32
- package/build-module/hooks/anchor.js.map +1 -1
- package/build-module/hooks/background.js +4 -4
- package/build-module/hooks/background.js.map +1 -1
- package/build-module/hooks/color.js +2 -4
- package/build-module/hooks/color.js.map +1 -1
- package/build-module/hooks/duotone.js +11 -10
- package/build-module/hooks/duotone.js.map +1 -1
- package/build-module/hooks/font-size.js +4 -4
- package/build-module/hooks/font-size.js.map +1 -1
- package/build-module/hooks/layout.js +10 -11
- package/build-module/hooks/layout.js.map +1 -1
- package/build-module/hooks/line-height.js +3 -3
- package/build-module/hooks/line-height.js.map +1 -1
- package/build-module/hooks/position.js +2 -3
- package/build-module/hooks/position.js.map +1 -1
- package/build-module/hooks/use-color-props.js +3 -11
- package/build-module/hooks/use-color-props.js.map +1 -1
- package/build-module/hooks/utils.js +2 -43
- package/build-module/hooks/utils.js.map +1 -1
- package/build-module/layouts/constrained.js +3 -2
- package/build-module/layouts/constrained.js.map +1 -1
- package/build-module/utils/object.js +3 -1
- package/build-module/utils/object.js.map +1 -1
- package/build-module/utils/transform-styles/index.js +20 -24
- package/build-module/utils/transform-styles/index.js.map +1 -1
- package/build-style/style-rtl.css +13 -6
- package/build-style/style.css +13 -6
- package/package.json +36 -34
- package/src/components/block-alignment-control/use-available-alignments.js +49 -34
- package/src/components/block-list/block.native.js +4 -4
- package/src/components/block-list/layout.js +2 -2
- package/src/components/block-styles/style.scss +1 -1
- package/src/components/border-radius-control/index.js +3 -2
- package/src/components/color-palette/with-color-context.js +9 -9
- package/src/components/colors/with-colors.js +6 -7
- package/src/components/colors-gradients/control.js +10 -7
- package/src/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +29 -15
- package/src/components/font-family/index.js +2 -2
- package/src/components/font-sizes/font-size-picker.js +6 -4
- package/src/components/font-sizes/with-font-sizes.js +3 -5
- package/src/components/global-styles/filters-panel.js +9 -15
- package/src/components/global-styles/image-settings-panel.js +2 -2
- package/src/components/global-styles/typography-panel.js +1 -1
- package/src/components/gradients/use-gradient.js +10 -4
- package/src/components/height-control/index.js +3 -2
- package/src/components/index.js +1 -1
- package/src/components/index.native.js +1 -1
- package/src/components/inner-blocks/index.js +2 -2
- package/src/components/inserter/style.scss +9 -1
- package/src/components/letter-spacing-control/index.js +3 -2
- package/src/components/link-control/search-item.js +14 -0
- package/src/components/link-control/search-results.js +1 -0
- package/src/components/link-control/use-search-handler.js +22 -15
- package/src/components/resizable-box-popover/index.js +1 -1
- package/src/components/rich-text/index.js +1 -1
- package/src/components/spacing-sizes-control/hooks/use-spacing-sizes.js +7 -5
- package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +3 -2
- package/src/components/unit-control/index.js +3 -8
- package/src/components/use-block-commands/index.js +2 -1
- package/src/components/{use-setting → use-settings}/README.md +9 -10
- package/src/components/use-settings/index.js +272 -0
- package/src/components/{use-setting → use-settings}/test/index.js +47 -5
- package/src/hooks/align.js +79 -54
- package/src/hooks/anchor.js +75 -65
- package/src/hooks/background.js +7 -9
- package/src/hooks/color.js +7 -4
- package/src/hooks/duotone.js +24 -19
- package/src/hooks/font-size.js +4 -4
- package/src/hooks/layout.js +11 -11
- package/src/hooks/line-height.js +3 -3
- package/src/hooks/position.js +5 -3
- package/src/hooks/use-color-props.js +21 -14
- package/src/hooks/utils.js +88 -43
- package/src/layouts/constrained.js +3 -8
- package/src/utils/object.js +4 -1
- package/src/utils/test/__snapshots__/transform-styles.js.snap +103 -0
- package/src/utils/test/transform-styles.js +217 -0
- package/src/utils/transform-styles/index.js +25 -25
- package/build/components/use-setting/index.js +0 -161
- package/build/components/use-setting/index.js.map +0 -1
- package/build/utils/transform-styles/ast/index.js +0 -21
- package/build/utils/transform-styles/ast/index.js.map +0 -1
- package/build/utils/transform-styles/ast/parse.js +0 -660
- package/build/utils/transform-styles/ast/parse.js.map +0 -1
- package/build/utils/transform-styles/ast/stringify/compiler.js +0 -52
- package/build/utils/transform-styles/ast/stringify/compiler.js.map +0 -1
- package/build/utils/transform-styles/ast/stringify/compress.js +0 -178
- package/build/utils/transform-styles/ast/stringify/compress.js.map +0 -1
- package/build/utils/transform-styles/ast/stringify/identity.js +0 -207
- package/build/utils/transform-styles/ast/stringify/identity.js.map +0 -1
- package/build/utils/transform-styles/ast/stringify/index.js +0 -36
- package/build/utils/transform-styles/ast/stringify/index.js.map +0 -1
- package/build/utils/transform-styles/transforms/url-rewrite.js +0 -130
- package/build/utils/transform-styles/transforms/url-rewrite.js.map +0 -1
- package/build/utils/transform-styles/transforms/wrap.js +0 -59
- package/build/utils/transform-styles/transforms/wrap.js.map +0 -1
- package/build/utils/transform-styles/traverse.js +0 -37
- package/build/utils/transform-styles/traverse.js.map +0 -1
- package/build-module/components/use-setting/index.js +0 -154
- package/build-module/components/use-setting/index.js.map +0 -1
- package/build-module/utils/transform-styles/ast/index.js +0 -6
- package/build-module/utils/transform-styles/ast/index.js.map +0 -1
- package/build-module/utils/transform-styles/ast/parse.js +0 -654
- package/build-module/utils/transform-styles/ast/parse.js.map +0 -1
- package/build-module/utils/transform-styles/ast/stringify/compiler.js +0 -49
- package/build-module/utils/transform-styles/ast/stringify/compiler.js.map +0 -1
- package/build-module/utils/transform-styles/ast/stringify/compress.js +0 -176
- package/build-module/utils/transform-styles/ast/stringify/compress.js.map +0 -1
- package/build-module/utils/transform-styles/ast/stringify/identity.js +0 -206
- package/build-module/utils/transform-styles/ast/stringify/identity.js.map +0 -1
- package/build-module/utils/transform-styles/ast/stringify/index.js +0 -29
- package/build-module/utils/transform-styles/ast/stringify/index.js.map +0 -1
- package/build-module/utils/transform-styles/transforms/url-rewrite.js +0 -123
- package/build-module/utils/transform-styles/transforms/url-rewrite.js.map +0 -1
- package/build-module/utils/transform-styles/transforms/wrap.js +0 -52
- package/build-module/utils/transform-styles/transforms/wrap.js.map +0 -1
- package/build-module/utils/transform-styles/traverse.js +0 -28
- package/build-module/utils/transform-styles/traverse.js.map +0 -1
- package/src/components/use-setting/index.js +0 -218
- package/src/utils/transform-styles/ast/index.js +0 -5
- package/src/utils/transform-styles/ast/parse.js +0 -732
- package/src/utils/transform-styles/ast/stringify/compiler.js +0 -50
- package/src/utils/transform-styles/ast/stringify/compress.js +0 -238
- package/src/utils/transform-styles/ast/stringify/identity.js +0 -286
- package/src/utils/transform-styles/ast/stringify/index.js +0 -32
- package/src/utils/transform-styles/test/__snapshots__/traverse.js.snap +0 -7
- package/src/utils/transform-styles/test/traverse.js +0 -24
- package/src/utils/transform-styles/transforms/test/__snapshots__/url-rewrite.js.snap +0 -25
- package/src/utils/transform-styles/transforms/test/__snapshots__/wrap.js.snap +0 -64
- package/src/utils/transform-styles/transforms/test/url-rewrite.js +0 -39
- package/src/utils/transform-styles/transforms/test/wrap.js +0 -95
- package/src/utils/transform-styles/transforms/url-rewrite.js +0 -139
- package/src/utils/transform-styles/transforms/wrap.js +0 -56
- package/src/utils/transform-styles/traverse.js +0 -32
|
@@ -54,13 +54,15 @@ function useMultiOriginColorPresets(
|
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
export function useHasFiltersPanel( settings ) {
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
return hasDuotone;
|
|
57
|
+
return useHasDuotoneControl( settings );
|
|
60
58
|
}
|
|
61
59
|
|
|
62
60
|
function useHasDuotoneControl( settings ) {
|
|
63
|
-
return
|
|
61
|
+
return (
|
|
62
|
+
settings.color.customDuotone ||
|
|
63
|
+
settings.color.defaultDuotone ||
|
|
64
|
+
settings.color.duotone.length > 0
|
|
65
|
+
);
|
|
64
66
|
}
|
|
65
67
|
|
|
66
68
|
function FiltersToolsPanel( {
|
|
@@ -148,11 +150,6 @@ export default function FiltersPanel( {
|
|
|
148
150
|
const hasDuotone = () => !! value?.filter?.duotone;
|
|
149
151
|
const resetDuotone = () => setDuotone( undefined );
|
|
150
152
|
|
|
151
|
-
const disableCustomColors = ! settings?.color?.custom;
|
|
152
|
-
const disableCustomDuotone =
|
|
153
|
-
! settings?.color?.customDuotone ||
|
|
154
|
-
( colorPalette?.length === 0 && disableCustomColors );
|
|
155
|
-
|
|
156
153
|
const resetAllFilter = useCallback( ( previousValue ) => {
|
|
157
154
|
return {
|
|
158
155
|
...previousValue,
|
|
@@ -210,12 +207,9 @@ export default function FiltersPanel( {
|
|
|
210
207
|
<DuotonePicker
|
|
211
208
|
colorPalette={ colorPalette }
|
|
212
209
|
duotonePalette={ duotonePalette }
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
disableCustomDuotone={
|
|
217
|
-
disableCustomDuotone
|
|
218
|
-
}
|
|
210
|
+
// TODO: Re-enable both when custom colors are supported for block-level styles.
|
|
211
|
+
disableCustomColors
|
|
212
|
+
disableCustomDuotone
|
|
219
213
|
value={ duotone }
|
|
220
214
|
onChange={ setDuotone }
|
|
221
215
|
/>
|
|
@@ -54,13 +54,13 @@ export default function ImageSettingsPanel( {
|
|
|
54
54
|
// "RESET" button ONLY when the user has explicitly set a value in the
|
|
55
55
|
// Global Styles.
|
|
56
56
|
hasValue={ () => !! value?.lightbox }
|
|
57
|
-
label={ __( 'Expand on
|
|
57
|
+
label={ __( 'Expand on click' ) }
|
|
58
58
|
onDeselect={ resetLightbox }
|
|
59
59
|
isShownByDefault={ true }
|
|
60
60
|
panelId={ panelId }
|
|
61
61
|
>
|
|
62
62
|
<ToggleControl
|
|
63
|
-
label={ __( 'Expand on
|
|
63
|
+
label={ __( 'Expand on click' ) }
|
|
64
64
|
checked={ lightboxChecked }
|
|
65
65
|
onChange={ onChangeLightbox }
|
|
66
66
|
/>
|
|
@@ -67,7 +67,7 @@ function useHasFontFamilyControl( settings ) {
|
|
|
67
67
|
.concat( fontFamiliesPerOrigin?.theme ?? [] )
|
|
68
68
|
.concat( fontFamiliesPerOrigin?.default ?? [] )
|
|
69
69
|
.sort( ( a, b ) =>
|
|
70
|
-
( a?.name || a?.slug )
|
|
70
|
+
( a?.name || a?.slug )?.localeCompare( b?.name || a?.slug )
|
|
71
71
|
);
|
|
72
72
|
return !! fontFamilies?.length;
|
|
73
73
|
}
|
|
@@ -8,7 +8,7 @@ import { useSelect, useDispatch } from '@wordpress/data';
|
|
|
8
8
|
* Internal dependencies
|
|
9
9
|
*/
|
|
10
10
|
import { useBlockEditContext } from '../block-edit';
|
|
11
|
-
import
|
|
11
|
+
import { useSettings } from '../use-settings';
|
|
12
12
|
import { store as blockEditorStore } from '../../store';
|
|
13
13
|
|
|
14
14
|
export function __experimentalGetGradientClass( gradientSlug ) {
|
|
@@ -60,9 +60,15 @@ export function __experimentalUseGradient( {
|
|
|
60
60
|
} = {} ) {
|
|
61
61
|
const { clientId } = useBlockEditContext();
|
|
62
62
|
|
|
63
|
-
const
|
|
64
|
-
|
|
65
|
-
|
|
63
|
+
const [
|
|
64
|
+
userGradientPalette,
|
|
65
|
+
themeGradientPalette,
|
|
66
|
+
defaultGradientPalette,
|
|
67
|
+
] = useSettings(
|
|
68
|
+
'color.gradients.custom',
|
|
69
|
+
'color.gradients.theme',
|
|
70
|
+
'color.gradients.default'
|
|
71
|
+
);
|
|
66
72
|
const allGradients = useMemo(
|
|
67
73
|
() => [
|
|
68
74
|
...( userGradientPalette || [] ),
|
|
@@ -17,7 +17,7 @@ import { __ } from '@wordpress/i18n';
|
|
|
17
17
|
/**
|
|
18
18
|
* Internal dependencies
|
|
19
19
|
*/
|
|
20
|
-
import
|
|
20
|
+
import { useSettings } from '../use-settings';
|
|
21
21
|
|
|
22
22
|
const RANGE_CONTROL_CUSTOM_SETTINGS = {
|
|
23
23
|
px: { max: 1000, step: 1 },
|
|
@@ -69,8 +69,9 @@ export default function HeightControl( {
|
|
|
69
69
|
} ) {
|
|
70
70
|
const customRangeValue = parseFloat( value );
|
|
71
71
|
|
|
72
|
+
const [ availableUnits ] = useSettings( 'spacing.units' );
|
|
72
73
|
const units = useCustomUnits( {
|
|
73
|
-
availableUnits:
|
|
74
|
+
availableUnits: availableUnits || [
|
|
74
75
|
'%',
|
|
75
76
|
'px',
|
|
76
77
|
'em',
|
package/src/components/index.js
CHANGED
|
@@ -165,7 +165,7 @@ export { useBlockEditingMode } from './block-editing-mode';
|
|
|
165
165
|
*/
|
|
166
166
|
|
|
167
167
|
export { default as BlockEditorProvider } from './provider';
|
|
168
|
-
export {
|
|
168
|
+
export { useSettings, useSetting } from './use-settings';
|
|
169
169
|
export { useBlockCommands } from './use-block-commands';
|
|
170
170
|
|
|
171
171
|
/*
|
|
@@ -59,7 +59,7 @@ export { default as BlockCaption } from './block-caption';
|
|
|
59
59
|
export { default as Caption } from './caption';
|
|
60
60
|
export { default as PanelColorSettings } from './panel-color-settings';
|
|
61
61
|
export { default as __experimentalPanelColorGradientSettings } from './colors-gradients/panel-color-gradient-settings';
|
|
62
|
-
export { default as useSetting } from './use-
|
|
62
|
+
export { useSettings, default as useSetting } from './use-settings';
|
|
63
63
|
export {
|
|
64
64
|
RecursionProvider as __experimentalRecursionProvider,
|
|
65
65
|
useHasRecursion as __experimentalUseHasRecursion,
|
|
@@ -29,7 +29,7 @@ import { useBlockEditContext } from '../block-edit/context';
|
|
|
29
29
|
import useBlockSync from '../provider/use-block-sync';
|
|
30
30
|
import { store as blockEditorStore } from '../../store';
|
|
31
31
|
import useBlockDropZone from '../use-block-drop-zone';
|
|
32
|
-
import
|
|
32
|
+
import { useSettings } from '../use-settings';
|
|
33
33
|
|
|
34
34
|
const EMPTY_OBJECT = {};
|
|
35
35
|
|
|
@@ -98,7 +98,7 @@ function UncontrolledInnerBlocks( props ) {
|
|
|
98
98
|
|
|
99
99
|
const { allowSizingOnChildren = false } = defaultLayoutBlockSupport;
|
|
100
100
|
|
|
101
|
-
const defaultLayout =
|
|
101
|
+
const [ defaultLayout ] = useSettings( 'layout' );
|
|
102
102
|
|
|
103
103
|
const usedLayout = layout || defaultLayoutBlockSupport;
|
|
104
104
|
|
|
@@ -292,6 +292,11 @@ $block-inserter-tabs-height: 44px;
|
|
|
292
292
|
div[role="listitem"]:last-child {
|
|
293
293
|
margin-top: auto;
|
|
294
294
|
}
|
|
295
|
+
|
|
296
|
+
.block-editor-inserter__patterns-category {
|
|
297
|
+
// Account for the icon on the right so that it's visually balanced.
|
|
298
|
+
padding-right: $grid-unit-05;
|
|
299
|
+
}
|
|
295
300
|
}
|
|
296
301
|
|
|
297
302
|
.block-editor-inserter__patterns-category-dialog {
|
|
@@ -533,7 +538,10 @@ $block-inserter-tabs-height: 44px;
|
|
|
533
538
|
margin-top: auto;
|
|
534
539
|
}
|
|
535
540
|
|
|
536
|
-
|
|
541
|
+
.block-editor-inserter__media-tabs__media-category {
|
|
542
|
+
// Account for the icon on the right so that it's visually balanced.
|
|
543
|
+
padding-right: $grid-unit-05;
|
|
544
|
+
|
|
537
545
|
&.is-selected {
|
|
538
546
|
color: var(--wp-admin-theme-color);
|
|
539
547
|
position: relative;
|
|
@@ -10,7 +10,7 @@ import { __ } from '@wordpress/i18n';
|
|
|
10
10
|
/**
|
|
11
11
|
* Internal dependencies
|
|
12
12
|
*/
|
|
13
|
-
import
|
|
13
|
+
import { useSettings } from '../../components/use-settings';
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* Control for letter-spacing.
|
|
@@ -28,8 +28,9 @@ export default function LetterSpacingControl( {
|
|
|
28
28
|
__unstableInputWidth = '60px',
|
|
29
29
|
...otherProps
|
|
30
30
|
} ) {
|
|
31
|
+
const [ availableUnits ] = useSettings( 'spacing.units' );
|
|
31
32
|
const units = useCustomUnits( {
|
|
32
|
-
availableUnits:
|
|
33
|
+
availableUnits: availableUnits || [ 'px', 'em', 'rem' ],
|
|
33
34
|
defaultValues: { px: 2, em: 0.2, rem: 0.2 },
|
|
34
35
|
} );
|
|
35
36
|
return (
|
|
@@ -11,6 +11,8 @@ import {
|
|
|
11
11
|
postList,
|
|
12
12
|
category,
|
|
13
13
|
file,
|
|
14
|
+
home,
|
|
15
|
+
verse,
|
|
14
16
|
} from '@wordpress/icons';
|
|
15
17
|
import { __unstableStripHTML as stripHTML } from '@wordpress/dom';
|
|
16
18
|
import { safeDecodeURI, filterURLForDisplay, getPath } from '@wordpress/url';
|
|
@@ -31,6 +33,14 @@ function SearchItemIcon( { isURL, suggestion } ) {
|
|
|
31
33
|
icon = globe;
|
|
32
34
|
} else if ( suggestion.type in ICONS_MAP ) {
|
|
33
35
|
icon = ICONS_MAP[ suggestion.type ];
|
|
36
|
+
if ( suggestion.type === 'page' ) {
|
|
37
|
+
if ( suggestion.isFrontPage ) {
|
|
38
|
+
icon = home;
|
|
39
|
+
}
|
|
40
|
+
if ( suggestion.isBlogHome ) {
|
|
41
|
+
icon = verse;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
34
44
|
}
|
|
35
45
|
|
|
36
46
|
if ( icon ) {
|
|
@@ -135,6 +145,10 @@ function getVisualTypeName( suggestion ) {
|
|
|
135
145
|
return 'front page';
|
|
136
146
|
}
|
|
137
147
|
|
|
148
|
+
if ( suggestion.isBlogHome ) {
|
|
149
|
+
return 'blog home';
|
|
150
|
+
}
|
|
151
|
+
|
|
138
152
|
// Rename 'post_tag' to 'tag'. Ideally, the API would return the localised CPT or taxonomy label.
|
|
139
153
|
return suggestion.type === 'post_tag' ? 'tag' : suggestion.type;
|
|
140
154
|
}
|
|
@@ -52,7 +52,8 @@ const handleEntitySearch = async (
|
|
|
52
52
|
suggestionsQuery,
|
|
53
53
|
fetchSearchSuggestions,
|
|
54
54
|
withCreateSuggestion,
|
|
55
|
-
pageOnFront
|
|
55
|
+
pageOnFront,
|
|
56
|
+
pageForPosts
|
|
56
57
|
) => {
|
|
57
58
|
const { isInitialSuggestions } = suggestionsQuery;
|
|
58
59
|
|
|
@@ -63,6 +64,9 @@ const handleEntitySearch = async (
|
|
|
63
64
|
if ( Number( result.id ) === pageOnFront ) {
|
|
64
65
|
result.isFrontPage = true;
|
|
65
66
|
return result;
|
|
67
|
+
} else if ( Number( result.id ) === pageForPosts ) {
|
|
68
|
+
result.isBlogHome = true;
|
|
69
|
+
return result;
|
|
66
70
|
}
|
|
67
71
|
|
|
68
72
|
return result;
|
|
@@ -102,18 +106,21 @@ const handleEntitySearch = async (
|
|
|
102
106
|
export default function useSearchHandler(
|
|
103
107
|
suggestionsQuery,
|
|
104
108
|
allowDirectEntry,
|
|
105
|
-
withCreateSuggestion
|
|
106
|
-
withURLSuggestion
|
|
109
|
+
withCreateSuggestion
|
|
107
110
|
) {
|
|
108
|
-
const { fetchSearchSuggestions, pageOnFront } = useSelect(
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
getSettings().
|
|
115
|
-
|
|
116
|
-
|
|
111
|
+
const { fetchSearchSuggestions, pageOnFront, pageForPosts } = useSelect(
|
|
112
|
+
( select ) => {
|
|
113
|
+
const { getSettings } = select( blockEditorStore );
|
|
114
|
+
|
|
115
|
+
return {
|
|
116
|
+
pageOnFront: getSettings().pageOnFront,
|
|
117
|
+
pageForPosts: getSettings().pageForPosts,
|
|
118
|
+
fetchSearchSuggestions:
|
|
119
|
+
getSettings().__experimentalFetchLinkSuggestions,
|
|
120
|
+
};
|
|
121
|
+
},
|
|
122
|
+
[]
|
|
123
|
+
);
|
|
117
124
|
|
|
118
125
|
const directEntryHandler = allowDirectEntry
|
|
119
126
|
? handleDirectEntry
|
|
@@ -128,17 +135,17 @@ export default function useSearchHandler(
|
|
|
128
135
|
{ ...suggestionsQuery, isInitialSuggestions },
|
|
129
136
|
fetchSearchSuggestions,
|
|
130
137
|
withCreateSuggestion,
|
|
131
|
-
|
|
132
|
-
|
|
138
|
+
pageOnFront,
|
|
139
|
+
pageForPosts
|
|
133
140
|
);
|
|
134
141
|
},
|
|
135
142
|
[
|
|
136
143
|
directEntryHandler,
|
|
137
144
|
fetchSearchSuggestions,
|
|
138
145
|
pageOnFront,
|
|
146
|
+
pageForPosts,
|
|
139
147
|
suggestionsQuery,
|
|
140
148
|
withCreateSuggestion,
|
|
141
|
-
withURLSuggestion,
|
|
142
149
|
]
|
|
143
150
|
);
|
|
144
151
|
}
|
|
@@ -141,7 +141,7 @@ export function RichTextWrapper(
|
|
|
141
141
|
};
|
|
142
142
|
};
|
|
143
143
|
// This selector must run on every render so the right selection state is
|
|
144
|
-
//
|
|
144
|
+
// retrieved from the store on merge.
|
|
145
145
|
// To do: fix this somehow.
|
|
146
146
|
const { selectionStart, selectionEnd, isSelected } = useSelect( selector );
|
|
147
147
|
const { getSelectionStart, getSelectionEnd, getBlockRootClientId } =
|
|
@@ -6,13 +6,15 @@ import { __ } from '@wordpress/i18n';
|
|
|
6
6
|
/**
|
|
7
7
|
* Internal dependencies
|
|
8
8
|
*/
|
|
9
|
-
import
|
|
9
|
+
import { useSettings } from '../../use-settings';
|
|
10
10
|
|
|
11
11
|
export default function useSpacingSizes() {
|
|
12
|
-
const spacingSizes = [
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
const spacingSizes = [ { name: 0, slug: '0', size: 0 } ];
|
|
13
|
+
|
|
14
|
+
const [ settingsSizes ] = useSettings( 'spacing.spacingSizes' );
|
|
15
|
+
if ( settingsSizes ) {
|
|
16
|
+
spacingSizes.push( ...settingsSizes );
|
|
17
|
+
}
|
|
16
18
|
|
|
17
19
|
if ( spacingSizes.length > 8 ) {
|
|
18
20
|
spacingSizes.unshift( {
|
|
@@ -20,7 +20,7 @@ import { settings } from '@wordpress/icons';
|
|
|
20
20
|
/**
|
|
21
21
|
* Internal dependencies
|
|
22
22
|
*/
|
|
23
|
-
import
|
|
23
|
+
import { useSettings } from '../../use-settings';
|
|
24
24
|
import { store as blockEditorStore } from '../../../store';
|
|
25
25
|
import {
|
|
26
26
|
ALL_SIDES,
|
|
@@ -102,8 +102,9 @@ export default function SpacingInputControl( {
|
|
|
102
102
|
setShowCustomValueControl( true );
|
|
103
103
|
}
|
|
104
104
|
|
|
105
|
+
const [ availableUnits ] = useSettings( 'spacing.units' );
|
|
105
106
|
const units = useCustomUnits( {
|
|
106
|
-
availableUnits:
|
|
107
|
+
availableUnits: availableUnits || [ 'px', 'em', 'rem' ],
|
|
107
108
|
} );
|
|
108
109
|
|
|
109
110
|
let currentValue = null;
|
|
@@ -9,17 +9,12 @@ import {
|
|
|
9
9
|
/**
|
|
10
10
|
* Internal dependencies
|
|
11
11
|
*/
|
|
12
|
-
import
|
|
12
|
+
import { useSettings } from '../use-settings';
|
|
13
13
|
|
|
14
14
|
export default function UnitControl( { units: unitsProp, ...props } ) {
|
|
15
|
+
const [ availableUnits ] = useSettings( 'spacing.units' );
|
|
15
16
|
const units = useCustomUnits( {
|
|
16
|
-
availableUnits:
|
|
17
|
-
'%',
|
|
18
|
-
'px',
|
|
19
|
-
'em',
|
|
20
|
-
'rem',
|
|
21
|
-
'vw',
|
|
22
|
-
],
|
|
17
|
+
availableUnits: availableUnits || [ '%', 'px', 'em', 'rem', 'vw' ],
|
|
23
18
|
units: unitsProp,
|
|
24
19
|
} );
|
|
25
20
|
|
|
@@ -22,6 +22,7 @@ import {
|
|
|
22
22
|
/**
|
|
23
23
|
* Internal dependencies
|
|
24
24
|
*/
|
|
25
|
+
import BlockIcon from '../block-icon';
|
|
25
26
|
import { store as blockEditorStore } from '../../store';
|
|
26
27
|
|
|
27
28
|
export const useTransformCommands = () => {
|
|
@@ -100,7 +101,7 @@ export const useTransformCommands = () => {
|
|
|
100
101
|
name: 'core/block-editor/transform-to-' + name.replace( '/', '-' ),
|
|
101
102
|
// translators: %s: block title/name.
|
|
102
103
|
label: sprintf( __( 'Transform to %s' ), title ),
|
|
103
|
-
icon: icon
|
|
104
|
+
icon: <BlockIcon icon={ icon } />,
|
|
104
105
|
callback: ( { close } ) => {
|
|
105
106
|
onBlockTransform( name );
|
|
106
107
|
close();
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
## Use
|
|
1
|
+
## Use Settings
|
|
2
2
|
|
|
3
|
-
`
|
|
3
|
+
`useSettings` is a hook that will retrieve the settings for the block instance that's in use.
|
|
4
4
|
|
|
5
|
-
It does the lookup of the
|
|
5
|
+
It does the lookup of the settings in the following order:
|
|
6
6
|
|
|
7
7
|
1. Third parties can provide the settings for the block using the filter `blockEditor.useSetting.before`.
|
|
8
8
|
2. If no third parties have provided this setting, then it looks up in the block instance hierachy starting from the current block and working its way upwards to its ancestors.
|
|
@@ -20,20 +20,19 @@ It does the lookup of the setting in the following order:
|
|
|
20
20
|
This will fetch the default color palette based on the block instance.
|
|
21
21
|
|
|
22
22
|
```jsx
|
|
23
|
-
import {
|
|
23
|
+
import { useSettings } from '@wordpress/block-editor';
|
|
24
24
|
|
|
25
|
-
const defaultColorPalette =
|
|
25
|
+
const [ defaultColorPalette ] = useSettings( 'color.palette.default' );
|
|
26
26
|
```
|
|
27
27
|
|
|
28
28
|
Refer [here](https://github.com/WordPress/gutenberg/blob/HEAD/docs/how-to-guides/curating-the-editor-experience.md?plain=1#L330) in order to understand how the filter mentioned above `blockEditor.useSetting.before` can be used.
|
|
29
29
|
|
|
30
30
|
### Props
|
|
31
31
|
|
|
32
|
-
This hooks accepts the following
|
|
32
|
+
This hooks accepts the following arguments.
|
|
33
33
|
|
|
34
|
-
#### `
|
|
34
|
+
#### `paths`
|
|
35
35
|
|
|
36
|
-
- **Type:** `String
|
|
37
|
-
- **Default:** `undefined`
|
|
36
|
+
- **Type:** `Array<String>`
|
|
38
37
|
|
|
39
|
-
|
|
38
|
+
Array of paths to the settings to be retrieved. E.g., `[ 'typography.fontSizes' ]`
|