@wordpress/edit-site 4.11.0 → 4.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 +4 -0
- package/build/components/add-new-template/add-custom-template-modal.js +4 -2
- package/build/components/add-new-template/add-custom-template-modal.js.map +1 -1
- package/build/components/add-new-template/new-template.js +29 -4
- package/build/components/add-new-template/new-template.js.map +1 -1
- package/build/components/add-new-template/utils.js +152 -28
- package/build/components/add-new-template/utils.js.map +1 -1
- package/build/components/block-editor/resizable-editor.js +26 -12
- package/build/components/block-editor/resizable-editor.js.map +1 -1
- package/build/components/global-styles/border-panel.js +3 -3
- package/build/components/global-styles/border-panel.js.map +1 -1
- package/build/components/global-styles/dimensions-panel.js +98 -8
- package/build/components/global-styles/dimensions-panel.js.map +1 -1
- package/build/components/global-styles/hooks.js +4 -4
- package/build/components/global-styles/hooks.js.map +1 -1
- package/build/components/global-styles/screen-color-palette.js +1 -1
- package/build/components/global-styles/screen-color-palette.js.map +1 -1
- package/build/components/global-styles/screen-colors.js +51 -7
- package/build/components/global-styles/screen-colors.js.map +1 -1
- package/build/components/global-styles/screen-heading-color.js +157 -0
- package/build/components/global-styles/screen-heading-color.js.map +1 -0
- package/build/components/global-styles/screen-typography-element.js +4 -0
- package/build/components/global-styles/screen-typography-element.js.map +1 -1
- package/build/components/global-styles/screen-typography.js +5 -0
- package/build/components/global-styles/screen-typography.js.map +1 -1
- package/build/components/global-styles/typography-panel.js +82 -14
- package/build/components/global-styles/typography-panel.js.map +1 -1
- package/build/components/global-styles/typography-utils.js +217 -0
- package/build/components/global-styles/typography-utils.js.map +1 -0
- package/build/components/global-styles/ui.js +11 -0
- package/build/components/global-styles/ui.js.map +1 -1
- package/build/components/global-styles/use-global-styles-output.js +102 -49
- package/build/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build/components/global-styles/utils.js +54 -5
- package/build/components/global-styles/utils.js.map +1 -1
- package/build/components/header/document-actions/index.js +1 -0
- package/build/components/header/document-actions/index.js.map +1 -1
- package/build/components/header/index.js +20 -6
- package/build/components/header/index.js.map +1 -1
- package/build/components/header/mode-switcher/index.js +0 -4
- package/build/components/header/mode-switcher/index.js.map +1 -1
- package/build/components/header/more-menu/index.js +13 -3
- package/build/components/header/more-menu/index.js.map +1 -1
- package/build/components/header/undo-redo/redo.js +2 -1
- package/build/components/header/undo-redo/redo.js.map +1 -1
- package/build/components/list/actions/index.js +1 -1
- package/build/components/list/actions/index.js.map +1 -1
- package/build/components/save-button/index.js +2 -3
- package/build/components/save-button/index.js.map +1 -1
- package/build/components/sidebar/default-sidebar.js +11 -1
- package/build/components/sidebar/default-sidebar.js.map +1 -1
- package/build/components/sidebar/navigation-menu-sidebar/navigation-menu.js +2 -2
- package/build/components/sidebar/navigation-menu-sidebar/navigation-menu.js.map +1 -1
- package/build/components/sidebar/plugin-sidebar/index.js +11 -1
- package/build/components/sidebar/plugin-sidebar/index.js.map +1 -1
- package/build/components/sidebar/template-card/template-actions.js +1 -1
- package/build/components/sidebar/template-card/template-actions.js.map +1 -1
- package/build/components/template-details/edit-template-title.js +1 -1
- package/build/components/template-details/edit-template-title.js.map +1 -1
- package/build/components/template-details/index.js +19 -9
- package/build/components/template-details/index.js.map +1 -1
- package/build/components/template-details/template-areas.js +1 -1
- package/build/components/template-details/template-areas.js.map +1 -1
- package/build/components/template-details/template-part-area-selector.js +47 -0
- package/build/components/template-details/template-part-area-selector.js.map +1 -0
- package/build/components/template-part-converter/convert-to-template-part.js +4 -1
- package/build/components/template-part-converter/convert-to-template-part.js.map +1 -1
- package/build/index.js +1 -1
- package/build/index.js.map +1 -1
- package/build-module/components/add-new-template/add-custom-template-modal.js +4 -2
- package/build-module/components/add-new-template/add-custom-template-modal.js.map +1 -1
- package/build-module/components/add-new-template/new-template.js +29 -6
- package/build-module/components/add-new-template/new-template.js.map +1 -1
- package/build-module/components/add-new-template/utils.js +147 -26
- package/build-module/components/add-new-template/utils.js.map +1 -1
- package/build-module/components/block-editor/resizable-editor.js +26 -12
- package/build-module/components/block-editor/resizable-editor.js.map +1 -1
- package/build-module/components/global-styles/border-panel.js +3 -3
- package/build-module/components/global-styles/border-panel.js.map +1 -1
- package/build-module/components/global-styles/dimensions-panel.js +96 -9
- package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
- package/build-module/components/global-styles/hooks.js +4 -4
- package/build-module/components/global-styles/hooks.js.map +1 -1
- package/build-module/components/global-styles/screen-color-palette.js +1 -1
- package/build-module/components/global-styles/screen-color-palette.js.map +1 -1
- package/build-module/components/global-styles/screen-colors.js +51 -7
- package/build-module/components/global-styles/screen-colors.js.map +1 -1
- package/build-module/components/global-styles/screen-heading-color.js +143 -0
- package/build-module/components/global-styles/screen-heading-color.js.map +1 -0
- package/build-module/components/global-styles/screen-typography-element.js +4 -0
- package/build-module/components/global-styles/screen-typography-element.js.map +1 -1
- package/build-module/components/global-styles/screen-typography.js +5 -0
- package/build-module/components/global-styles/screen-typography.js.map +1 -1
- package/build-module/components/global-styles/typography-panel.js +83 -15
- package/build-module/components/global-styles/typography-panel.js.map +1 -1
- package/build-module/components/global-styles/typography-utils.js +204 -0
- package/build-module/components/global-styles/typography-utils.js.map +1 -0
- package/build-module/components/global-styles/ui.js +10 -0
- package/build-module/components/global-styles/ui.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js +102 -53
- package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build-module/components/global-styles/utils.js +53 -5
- package/build-module/components/global-styles/utils.js.map +1 -1
- package/build-module/components/header/document-actions/index.js +1 -0
- package/build-module/components/header/document-actions/index.js.map +1 -1
- package/build-module/components/header/index.js +22 -8
- package/build-module/components/header/index.js.map +1 -1
- package/build-module/components/header/mode-switcher/index.js +0 -4
- package/build-module/components/header/mode-switcher/index.js.map +1 -1
- package/build-module/components/header/more-menu/index.js +13 -3
- package/build-module/components/header/more-menu/index.js.map +1 -1
- package/build-module/components/header/undo-redo/redo.js +3 -2
- package/build-module/components/header/undo-redo/redo.js.map +1 -1
- package/build-module/components/list/actions/index.js +1 -1
- package/build-module/components/list/actions/index.js.map +1 -1
- package/build-module/components/save-button/index.js +3 -4
- package/build-module/components/save-button/index.js.map +1 -1
- package/build-module/components/sidebar/default-sidebar.js +9 -1
- package/build-module/components/sidebar/default-sidebar.js.map +1 -1
- package/build-module/components/sidebar/navigation-menu-sidebar/navigation-menu.js +3 -3
- package/build-module/components/sidebar/navigation-menu-sidebar/navigation-menu.js.map +1 -1
- package/build-module/components/sidebar/plugin-sidebar/index.js +9 -1
- package/build-module/components/sidebar/plugin-sidebar/index.js.map +1 -1
- package/build-module/components/sidebar/template-card/template-actions.js +1 -1
- package/build-module/components/sidebar/template-card/template-actions.js.map +1 -1
- package/build-module/components/template-details/edit-template-title.js +1 -1
- package/build-module/components/template-details/edit-template-title.js.map +1 -1
- package/build-module/components/template-details/index.js +19 -10
- package/build-module/components/template-details/index.js.map +1 -1
- package/build-module/components/template-details/template-areas.js +1 -1
- package/build-module/components/template-details/template-areas.js.map +1 -1
- package/build-module/components/template-details/template-part-area-selector.js +35 -0
- package/build-module/components/template-details/template-part-area-selector.js.map +1 -0
- package/build-module/components/template-part-converter/convert-to-template-part.js +3 -1
- package/build-module/components/template-part-converter/convert-to-template-part.js.map +1 -1
- package/build-module/index.js +1 -1
- package/build-module/index.js.map +1 -1
- package/build-style/style-rtl.css +15 -8
- package/build-style/style.css +15 -8
- package/package.json +29 -29
- package/src/components/add-new-template/add-custom-template-modal.js +12 -3
- package/src/components/add-new-template/new-template.js +53 -24
- package/src/components/add-new-template/utils.js +145 -16
- package/src/components/block-editor/resizable-editor.js +28 -18
- package/src/components/editor/style.scss +1 -0
- package/src/components/global-styles/border-panel.js +3 -3
- package/src/components/global-styles/dimensions-panel.js +139 -33
- package/src/components/global-styles/hooks.js +4 -3
- package/src/components/global-styles/screen-color-palette.js +1 -1
- package/src/components/global-styles/screen-colors.js +46 -4
- package/src/components/global-styles/screen-heading-color.js +201 -0
- package/src/components/global-styles/screen-typography-element.js +4 -0
- package/src/components/global-styles/screen-typography.js +6 -0
- package/src/components/global-styles/style.scss +14 -6
- package/src/components/global-styles/test/typography-utils.js +130 -0
- package/src/components/global-styles/test/use-global-styles-output.js +79 -3
- package/src/components/global-styles/test/utils.js +68 -8
- package/src/components/global-styles/typography-panel.js +119 -48
- package/src/components/global-styles/typography-utils.js +228 -0
- package/src/components/global-styles/ui.js +13 -0
- package/src/components/global-styles/use-global-styles-output.js +119 -61
- package/src/components/global-styles/utils.js +39 -4
- package/src/components/header/document-actions/index.js +3 -0
- package/src/components/header/index.js +32 -4
- package/src/components/header/mode-switcher/index.js +0 -3
- package/src/components/header/more-menu/index.js +7 -2
- package/src/components/header/undo-redo/redo.js +6 -2
- package/src/components/list/actions/index.js +3 -1
- package/src/components/save-button/index.js +10 -13
- package/src/components/sidebar/default-sidebar.js +12 -0
- package/src/components/sidebar/navigation-menu-sidebar/navigation-menu.js +1 -5
- package/src/components/sidebar/plugin-sidebar/index.js +12 -0
- package/src/components/sidebar/template-card/template-actions.js +3 -1
- package/src/components/template-details/edit-template-title.js +7 -3
- package/src/components/template-details/index.js +23 -8
- package/src/components/template-details/style.scss +0 -5
- package/src/components/template-details/template-areas.js +3 -1
- package/src/components/template-details/template-part-area-selector.js +38 -0
- package/src/components/template-part-converter/convert-to-template-part.js +3 -1
- package/src/index.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/dimensions-panel.js"],"names":["AXIAL_SIDES","useHasDimensionsPanel","name","hasContentSize","useHasContentSize","hasWideSize","useHasWideSize","hasPadding","useHasPadding","hasMargin","useHasMargin","hasGap","useHasGap","supports","settings","includes","filterValuesBySides","values","sides","filteredValues","forEach","side","top","bottom","left","right","splitStyleValue","value","useContentSizeProps","contentSizeValue","setContentSizeValue","userSetContentSizeValue","hasUserSetContentSizeValue","resetContentSizeValue","useWideSizeProps","wideSizeValue","setWideSizeValue","userSetWideSizeValue","hasUserSetWideSizeValue","resetWideSizeValue","usePaddingProps","rawPadding","setRawPadding","paddingValues","paddingSides","isAxialPadding","some","setPaddingValues","newPaddingValues","padding","resetPaddingValue","hasPaddingValue","Object","keys","length","useMarginProps","rawMargin","setRawMargin","marginValues","marginSides","isAxialMargin","setMarginValues","newMarginValues","margin","resetMarginValue","hasMarginValue","useBlockGapProps","gapValue","setGapValue","resetGapValue","undefined","hasGapValue","DimensionsPanel","showContentSizeControl","showWideSizeControl","showPaddingControl","showMarginControl","showGapControl","units","availableUnits","resetAll","nextContentSize","positionCenter","nextWideSize","stretchWide"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalBoxControl as BoxControl,\n\t__experimentalHStack as HStack,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalView as View,\n} from '@wordpress/components';\nimport { __experimentalUseCustomSides as useCustomSides } from '@wordpress/block-editor';\nimport { Icon, positionCenter, stretchWide } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { getSupportedGlobalStylesPanels, useSetting, useStyle } from './hooks';\n\nconst AXIAL_SIDES = [ 'horizontal', 'vertical' ];\n\nexport function useHasDimensionsPanel( name ) {\n\tconst hasContentSize = useHasContentSize( name );\n\tconst hasWideSize = useHasWideSize( name );\n\tconst hasPadding = useHasPadding( name );\n\tconst hasMargin = useHasMargin( name );\n\tconst hasGap = useHasGap( name );\n\n\treturn hasContentSize || hasWideSize || hasPadding || hasMargin || hasGap;\n}\n\nfunction useHasContentSize( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'layout.contentSize', name );\n\n\treturn settings && supports.includes( 'contentSize' );\n}\n\nfunction useHasWideSize( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'layout.wideSize', name );\n\n\treturn settings && supports.includes( 'wideSize' );\n}\n\nfunction useHasPadding( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'spacing.padding', name );\n\n\treturn settings && supports.includes( 'padding' );\n}\n\nfunction useHasMargin( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'spacing.margin', name );\n\n\treturn settings && supports.includes( 'margin' );\n}\n\nfunction useHasGap( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'spacing.blockGap', name );\n\n\treturn settings && supports.includes( 'blockGap' );\n}\n\nfunction filterValuesBySides( values, sides ) {\n\tif ( ! sides ) {\n\t\t// If no custom side configuration all sides are opted into by default.\n\t\treturn values;\n\t}\n\n\t// Only include sides opted into within filtered values.\n\tconst filteredValues = {};\n\tsides.forEach( ( side ) => {\n\t\tif ( side === 'vertical' ) {\n\t\t\tfilteredValues.top = values.top;\n\t\t\tfilteredValues.bottom = values.bottom;\n\t\t}\n\t\tif ( side === 'horizontal' ) {\n\t\t\tfilteredValues.left = values.left;\n\t\t\tfilteredValues.right = values.right;\n\t\t}\n\t\tfilteredValues[ side ] = values[ side ];\n\t} );\n\n\treturn filteredValues;\n}\n\nfunction splitStyleValue( value ) {\n\t// Check for shorthand value ( a string value ).\n\tif ( value && typeof value === 'string' ) {\n\t\t// Convert to value for individual sides for BoxControl.\n\t\treturn {\n\t\t\ttop: value,\n\t\t\tright: value,\n\t\t\tbottom: value,\n\t\t\tleft: value,\n\t\t};\n\t}\n\n\treturn value;\n}\n\n// Props for managing `layout.contentSize`.\nfunction useContentSizeProps( name ) {\n\tconst [ contentSizeValue, setContentSizeValue ] = useSetting(\n\t\t'layout.contentSize',\n\t\tname\n\t);\n\tconst [ userSetContentSizeValue ] = useSetting(\n\t\t'layout.contentSize',\n\t\tname,\n\t\t'user'\n\t);\n\tconst hasUserSetContentSizeValue = () => !! userSetContentSizeValue;\n\tconst resetContentSizeValue = () => setContentSizeValue( '' );\n\treturn {\n\t\tcontentSizeValue,\n\t\tsetContentSizeValue,\n\t\thasUserSetContentSizeValue,\n\t\tresetContentSizeValue,\n\t};\n}\n\n// Props for managing `layout.wideSize`.\nfunction useWideSizeProps( name ) {\n\tconst [ wideSizeValue, setWideSizeValue ] = useSetting(\n\t\t'layout.wideSize',\n\t\tname\n\t);\n\tconst [ userSetWideSizeValue ] = useSetting(\n\t\t'layout.wideSize',\n\t\tname,\n\t\t'user'\n\t);\n\tconst hasUserSetWideSizeValue = () => !! userSetWideSizeValue;\n\tconst resetWideSizeValue = () => setWideSizeValue( '' );\n\treturn {\n\t\twideSizeValue,\n\t\tsetWideSizeValue,\n\t\thasUserSetWideSizeValue,\n\t\tresetWideSizeValue,\n\t};\n}\n\n// Props for managing `spacing.padding`.\nfunction usePaddingProps( name ) {\n\tconst [ rawPadding, setRawPadding ] = useStyle( 'spacing.padding', name );\n\tconst paddingValues = splitStyleValue( rawPadding );\n\tconst paddingSides = useCustomSides( name, 'padding' );\n\tconst isAxialPadding =\n\t\tpaddingSides &&\n\t\tpaddingSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\n\tconst setPaddingValues = ( newPaddingValues ) => {\n\t\tconst padding = filterValuesBySides( newPaddingValues, paddingSides );\n\t\tsetRawPadding( padding );\n\t};\n\tconst resetPaddingValue = () => setPaddingValues( {} );\n\tconst hasPaddingValue = () =>\n\t\t!! paddingValues && Object.keys( paddingValues ).length;\n\n\treturn {\n\t\tpaddingValues,\n\t\tpaddingSides,\n\t\tisAxialPadding,\n\t\tsetPaddingValues,\n\t\tresetPaddingValue,\n\t\thasPaddingValue,\n\t};\n}\n\n// Props for managing `spacing.margin`.\nfunction useMarginProps( name ) {\n\tconst [ rawMargin, setRawMargin ] = useStyle( 'spacing.margin', name );\n\tconst marginValues = splitStyleValue( rawMargin );\n\tconst marginSides = useCustomSides( name, 'margin' );\n\tconst isAxialMargin =\n\t\tmarginSides &&\n\t\tmarginSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\n\tconst setMarginValues = ( newMarginValues ) => {\n\t\tconst margin = filterValuesBySides( newMarginValues, marginSides );\n\t\tsetRawMargin( margin );\n\t};\n\tconst resetMarginValue = () => setMarginValues( {} );\n\tconst hasMarginValue = () =>\n\t\t!! marginValues && Object.keys( marginValues ).length;\n\n\treturn {\n\t\tmarginValues,\n\t\tmarginSides,\n\t\tisAxialMargin,\n\t\tsetMarginValues,\n\t\tresetMarginValue,\n\t\thasMarginValue,\n\t};\n}\n\n// Props for managing `spacing.blockGap`.\nfunction useBlockGapProps( name ) {\n\tconst [ gapValue, setGapValue ] = useStyle( 'spacing.blockGap', name );\n\tconst resetGapValue = () => setGapValue( undefined );\n\tconst hasGapValue = () => !! gapValue;\n\treturn {\n\t\tgapValue,\n\t\tsetGapValue,\n\t\tresetGapValue,\n\t\thasGapValue,\n\t};\n}\n\nexport default function DimensionsPanel( { name } ) {\n\tconst showContentSizeControl = useHasContentSize( name );\n\tconst showWideSizeControl = useHasWideSize( name );\n\tconst showPaddingControl = useHasPadding( name );\n\tconst showMarginControl = useHasMargin( name );\n\tconst showGapControl = useHasGap( name );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units', name )[ 0 ] || [\n\t\t\t'%',\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t],\n\t} );\n\n\t// Props for managing `layout.contentSize`.\n\tconst {\n\t\tcontentSizeValue,\n\t\tsetContentSizeValue,\n\t\thasUserSetContentSizeValue,\n\t\tresetContentSizeValue,\n\t} = useContentSizeProps( name );\n\n\t// Props for managing `layout.wideSize`.\n\tconst {\n\t\twideSizeValue,\n\t\tsetWideSizeValue,\n\t\thasUserSetWideSizeValue,\n\t\tresetWideSizeValue,\n\t} = useWideSizeProps( name );\n\n\t// Props for managing `spacing.padding`.\n\tconst {\n\t\tpaddingValues,\n\t\tpaddingSides,\n\t\tisAxialPadding,\n\t\tsetPaddingValues,\n\t\tresetPaddingValue,\n\t\thasPaddingValue,\n\t} = usePaddingProps( name );\n\n\t// Props for managing `spacing.margin`.\n\tconst {\n\t\tmarginValues,\n\t\tmarginSides,\n\t\tisAxialMargin,\n\t\tsetMarginValues,\n\t\tresetMarginValue,\n\t\thasMarginValue,\n\t} = useMarginProps( name );\n\n\t// Props for managing `spacing.blockGap`.\n\tconst { gapValue, setGapValue, resetGapValue, hasGapValue } =\n\t\tuseBlockGapProps( name );\n\n\tconst resetAll = () => {\n\t\tresetPaddingValue();\n\t\tresetMarginValue();\n\t\tresetGapValue();\n\t\tresetContentSizeValue();\n\t\tresetWideSizeValue();\n\t};\n\n\treturn (\n\t\t<ToolsPanel label={ __( 'Dimensions' ) } resetAll={ resetAll }>\n\t\t\t{ ( showContentSizeControl || showWideSizeControl ) && (\n\t\t\t\t<span className=\"span-columns\">\n\t\t\t\t\t{ __( 'Set the width of the main content area.' ) }\n\t\t\t\t</span>\n\t\t\t) }\n\t\t\t{ showContentSizeControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ __( 'Content size' ) }\n\t\t\t\t\thasValue={ hasUserSetContentSizeValue }\n\t\t\t\t\tonDeselect={ resetContentSizeValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t>\n\t\t\t\t\t<HStack alignment=\"flex-end\" justify=\"flex-start\">\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tlabel={ __( 'Content' ) }\n\t\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\t\t__unstableInputWidth=\"80px\"\n\t\t\t\t\t\t\tvalue={ contentSizeValue || '' }\n\t\t\t\t\t\t\tonChange={ ( nextContentSize ) => {\n\t\t\t\t\t\t\t\tsetContentSizeValue( nextContentSize );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<View>\n\t\t\t\t\t\t\t<Icon icon={ positionCenter } />\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</HStack>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showWideSizeControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ __( 'Wide size' ) }\n\t\t\t\t\thasValue={ hasUserSetWideSizeValue }\n\t\t\t\t\tonDeselect={ resetWideSizeValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t>\n\t\t\t\t\t<HStack alignment=\"flex-end\" justify=\"flex-start\">\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tlabel={ __( 'Wide' ) }\n\t\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\t\t__unstableInputWidth=\"80px\"\n\t\t\t\t\t\t\tvalue={ wideSizeValue || '' }\n\t\t\t\t\t\t\tonChange={ ( nextWideSize ) => {\n\t\t\t\t\t\t\t\tsetWideSizeValue( nextWideSize );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<View>\n\t\t\t\t\t\t\t<Icon icon={ stretchWide } />\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</HStack>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showPaddingControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasPaddingValue }\n\t\t\t\t\tlabel={ __( 'Padding' ) }\n\t\t\t\t\tonDeselect={ resetPaddingValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t>\n\t\t\t\t\t<BoxControl\n\t\t\t\t\t\tvalues={ paddingValues }\n\t\t\t\t\t\tonChange={ setPaddingValues }\n\t\t\t\t\t\tlabel={ __( 'Padding' ) }\n\t\t\t\t\t\tsides={ paddingSides }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\tsplitOnAxis={ isAxialPadding }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showMarginControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasMarginValue }\n\t\t\t\t\tlabel={ __( 'Margin' ) }\n\t\t\t\t\tonDeselect={ resetMarginValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t>\n\t\t\t\t\t<BoxControl\n\t\t\t\t\t\tvalues={ marginValues }\n\t\t\t\t\t\tonChange={ setMarginValues }\n\t\t\t\t\t\tlabel={ __( 'Margin' ) }\n\t\t\t\t\t\tsides={ marginSides }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\tsplitOnAxis={ isAxialMargin }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showGapControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasGapValue }\n\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\tonDeselect={ resetGapValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\t\t__unstableInputWidth=\"80px\"\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tonChange={ setGapValue }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tvalue={ gapValue }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</ToolsPanel>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/dimensions-panel.js"],"names":["AXIAL_SIDES","useHasDimensionsPanel","name","hasContentSize","useHasContentSize","hasWideSize","useHasWideSize","hasPadding","useHasPadding","hasMargin","useHasMargin","hasGap","useHasGap","supports","settings","includes","useHasSpacingPresets","length","filterValuesBySides","values","sides","filteredValues","forEach","side","top","bottom","left","right","splitStyleValue","value","splitGapValue","useContentSizeProps","contentSizeValue","setContentSizeValue","userSetContentSizeValue","hasUserSetContentSizeValue","resetContentSizeValue","useWideSizeProps","wideSizeValue","setWideSizeValue","userSetWideSizeValue","hasUserSetWideSizeValue","resetWideSizeValue","usePaddingProps","rawPadding","setRawPadding","paddingValues","paddingSides","isAxialPadding","some","setPaddingValues","newPaddingValues","padding","resetPaddingValue","userSetPaddingValue","hasPaddingValue","useMarginProps","rawMargin","setRawMargin","marginValues","marginSides","isAxialMargin","setMarginValues","newMarginValues","margin","resetMarginValue","hasMarginValue","Object","keys","useBlockGapProps","gapValue","setGapValue","gapValues","setGapValues","nextBoxGapValue","gapSides","isAxialGap","resetGapValue","undefined","userSetGapValue","hasGapValue","DimensionsPanel","showContentSizeControl","showWideSizeControl","showPaddingControl","showMarginControl","showGapControl","showSpacingPresetsControl","units","availableUnits","resetAll","nextContentSize","positionCenter","nextWideSize","stretchWide"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalBoxControl as BoxControl,\n\t__experimentalHStack as HStack,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalView as View,\n} from '@wordpress/components';\nimport {\n\t__experimentalUseCustomSides as useCustomSides,\n\t__experimentalSpacingSizesControl as SpacingSizesControl,\n} from '@wordpress/block-editor';\nimport { Icon, positionCenter, stretchWide } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { getSupportedGlobalStylesPanels, useSetting, useStyle } from './hooks';\n\nconst AXIAL_SIDES = [ 'horizontal', 'vertical' ];\n\nexport function useHasDimensionsPanel( name ) {\n\tconst hasContentSize = useHasContentSize( name );\n\tconst hasWideSize = useHasWideSize( name );\n\tconst hasPadding = useHasPadding( name );\n\tconst hasMargin = useHasMargin( name );\n\tconst hasGap = useHasGap( name );\n\n\treturn hasContentSize || hasWideSize || hasPadding || hasMargin || hasGap;\n}\n\nfunction useHasContentSize( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'layout.contentSize', name );\n\n\treturn settings && supports.includes( 'contentSize' );\n}\n\nfunction useHasWideSize( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'layout.wideSize', name );\n\n\treturn settings && supports.includes( 'wideSize' );\n}\n\nfunction useHasPadding( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'spacing.padding', name );\n\n\treturn settings && supports.includes( 'padding' );\n}\n\nfunction useHasMargin( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'spacing.margin', name );\n\n\treturn settings && supports.includes( 'margin' );\n}\n\nfunction useHasGap( name ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ settings ] = useSetting( 'spacing.blockGap', name );\n\n\treturn settings && supports.includes( 'blockGap' );\n}\n\nfunction useHasSpacingPresets() {\n\tconst [ settings ] = useSetting( 'spacing.spacingSizes' );\n\n\treturn settings && settings.length > 0;\n}\n\nfunction filterValuesBySides( values, sides ) {\n\tif ( ! sides ) {\n\t\t// If no custom side configuration all sides are opted into by default.\n\t\treturn values;\n\t}\n\n\t// Only include sides opted into within filtered values.\n\tconst filteredValues = {};\n\tsides.forEach( ( side ) => {\n\t\tif ( side === 'vertical' ) {\n\t\t\tfilteredValues.top = values.top;\n\t\t\tfilteredValues.bottom = values.bottom;\n\t\t}\n\t\tif ( side === 'horizontal' ) {\n\t\t\tfilteredValues.left = values.left;\n\t\t\tfilteredValues.right = values.right;\n\t\t}\n\t\tfilteredValues[ side ] = values[ side ];\n\t} );\n\n\treturn filteredValues;\n}\n\nfunction splitStyleValue( value ) {\n\t// Check for shorthand value (a string value).\n\tif ( value && typeof value === 'string' ) {\n\t\t// Convert to value for individual sides for BoxControl.\n\t\treturn {\n\t\t\ttop: value,\n\t\t\tright: value,\n\t\t\tbottom: value,\n\t\t\tleft: value,\n\t\t};\n\t}\n\n\treturn value;\n}\n\nfunction splitGapValue( value ) {\n\t// Check for shorthand value (a string value).\n\tif ( value && typeof value === 'string' ) {\n\t\t// Convert to value for individual sides for BoxControl.\n\t\treturn {\n\t\t\ttop: value,\n\t\t\tright: value,\n\t\t\tbottom: value,\n\t\t\tleft: value,\n\t\t};\n\t}\n\n\treturn {\n\t\t...value,\n\t\tright: value?.left,\n\t\tbottom: value?.top,\n\t};\n}\n\n// Props for managing `layout.contentSize`.\nfunction useContentSizeProps( name ) {\n\tconst [ contentSizeValue, setContentSizeValue ] = useSetting(\n\t\t'layout.contentSize',\n\t\tname\n\t);\n\tconst [ userSetContentSizeValue ] = useSetting(\n\t\t'layout.contentSize',\n\t\tname,\n\t\t'user'\n\t);\n\tconst hasUserSetContentSizeValue = () => !! userSetContentSizeValue;\n\tconst resetContentSizeValue = () => setContentSizeValue( '' );\n\treturn {\n\t\tcontentSizeValue,\n\t\tsetContentSizeValue,\n\t\thasUserSetContentSizeValue,\n\t\tresetContentSizeValue,\n\t};\n}\n\n// Props for managing `layout.wideSize`.\nfunction useWideSizeProps( name ) {\n\tconst [ wideSizeValue, setWideSizeValue ] = useSetting(\n\t\t'layout.wideSize',\n\t\tname\n\t);\n\tconst [ userSetWideSizeValue ] = useSetting(\n\t\t'layout.wideSize',\n\t\tname,\n\t\t'user'\n\t);\n\tconst hasUserSetWideSizeValue = () => !! userSetWideSizeValue;\n\tconst resetWideSizeValue = () => setWideSizeValue( '' );\n\treturn {\n\t\twideSizeValue,\n\t\tsetWideSizeValue,\n\t\thasUserSetWideSizeValue,\n\t\tresetWideSizeValue,\n\t};\n}\n\n// Props for managing `spacing.padding`.\nfunction usePaddingProps( name ) {\n\tconst [ rawPadding, setRawPadding ] = useStyle( 'spacing.padding', name );\n\tconst paddingValues = splitStyleValue( rawPadding );\n\tconst paddingSides = useCustomSides( name, 'padding' );\n\tconst isAxialPadding =\n\t\tpaddingSides &&\n\t\tpaddingSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\n\tconst setPaddingValues = ( newPaddingValues ) => {\n\t\tconst padding = filterValuesBySides( newPaddingValues, paddingSides );\n\t\tsetRawPadding( padding );\n\t};\n\tconst resetPaddingValue = () => setPaddingValues( {} );\n\tconst [ userSetPaddingValue ] = useStyle( 'spacing.padding', name, 'user' );\n\t// The `hasPaddingValue` check does not need a parsed value, as `userSetPaddingValue` will be `undefined` if not set.\n\tconst hasPaddingValue = () => !! userSetPaddingValue;\n\n\treturn {\n\t\tpaddingValues,\n\t\tpaddingSides,\n\t\tisAxialPadding,\n\t\tsetPaddingValues,\n\t\tresetPaddingValue,\n\t\thasPaddingValue,\n\t};\n}\n\n// Props for managing `spacing.margin`.\nfunction useMarginProps( name ) {\n\tconst [ rawMargin, setRawMargin ] = useStyle( 'spacing.margin', name );\n\tconst marginValues = splitStyleValue( rawMargin );\n\tconst marginSides = useCustomSides( name, 'margin' );\n\tconst isAxialMargin =\n\t\tmarginSides &&\n\t\tmarginSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\n\tconst setMarginValues = ( newMarginValues ) => {\n\t\tconst margin = filterValuesBySides( newMarginValues, marginSides );\n\t\tsetRawMargin( margin );\n\t};\n\tconst resetMarginValue = () => setMarginValues( {} );\n\tconst hasMarginValue = () =>\n\t\t!! marginValues && Object.keys( marginValues ).length;\n\n\treturn {\n\t\tmarginValues,\n\t\tmarginSides,\n\t\tisAxialMargin,\n\t\tsetMarginValues,\n\t\tresetMarginValue,\n\t\thasMarginValue,\n\t};\n}\n\n// Props for managing `spacing.blockGap`.\nfunction useBlockGapProps( name ) {\n\tconst [ gapValue, setGapValue ] = useStyle( 'spacing.blockGap', name );\n\tconst gapValues = splitGapValue( gapValue );\n\tconst setGapValues = ( nextBoxGapValue ) => {\n\t\tif ( ! nextBoxGapValue ) {\n\t\t\tsetGapValue( null );\n\t\t}\n\t\tsetGapValue( {\n\t\t\ttop: nextBoxGapValue?.top,\n\t\t\tleft: nextBoxGapValue?.left,\n\t\t} );\n\t};\n\tconst gapSides = useCustomSides( name, 'blockGap' );\n\tconst isAxialGap =\n\t\tgapSides && gapSides.some( ( side ) => AXIAL_SIDES.includes( side ) );\n\tconst resetGapValue = () => setGapValue( undefined );\n\tconst [ userSetGapValue ] = useStyle( 'spacing.blockGap', name, 'user' );\n\tconst hasGapValue = () => !! userSetGapValue;\n\treturn {\n\t\tgapValue,\n\t\tgapValues,\n\t\tgapSides,\n\t\tisAxialGap,\n\t\tsetGapValue,\n\t\tsetGapValues,\n\t\tresetGapValue,\n\t\thasGapValue,\n\t};\n}\n\nexport default function DimensionsPanel( { name } ) {\n\tconst showContentSizeControl = useHasContentSize( name );\n\tconst showWideSizeControl = useHasWideSize( name );\n\tconst showPaddingControl = useHasPadding( name );\n\tconst showMarginControl = useHasMargin( name );\n\tconst showGapControl = useHasGap( name );\n\tconst showSpacingPresetsControl = useHasSpacingPresets();\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units', name )[ 0 ] || [\n\t\t\t'%',\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t],\n\t} );\n\n\t// Props for managing `layout.contentSize`.\n\tconst {\n\t\tcontentSizeValue,\n\t\tsetContentSizeValue,\n\t\thasUserSetContentSizeValue,\n\t\tresetContentSizeValue,\n\t} = useContentSizeProps( name );\n\n\t// Props for managing `layout.wideSize`.\n\tconst {\n\t\twideSizeValue,\n\t\tsetWideSizeValue,\n\t\thasUserSetWideSizeValue,\n\t\tresetWideSizeValue,\n\t} = useWideSizeProps( name );\n\n\t// Props for managing `spacing.padding`.\n\tconst {\n\t\tpaddingValues,\n\t\tpaddingSides,\n\t\tisAxialPadding,\n\t\tsetPaddingValues,\n\t\tresetPaddingValue,\n\t\thasPaddingValue,\n\t} = usePaddingProps( name );\n\n\t// Props for managing `spacing.margin`.\n\tconst {\n\t\tmarginValues,\n\t\tmarginSides,\n\t\tisAxialMargin,\n\t\tsetMarginValues,\n\t\tresetMarginValue,\n\t\thasMarginValue,\n\t} = useMarginProps( name );\n\n\t// Props for managing `spacing.blockGap`.\n\tconst {\n\t\tgapValue,\n\t\tgapValues,\n\t\tgapSides,\n\t\tisAxialGap,\n\t\tsetGapValue,\n\t\tsetGapValues,\n\t\tresetGapValue,\n\t\thasGapValue,\n\t} = useBlockGapProps( name );\n\n\tconst resetAll = () => {\n\t\tresetPaddingValue();\n\t\tresetMarginValue();\n\t\tresetGapValue();\n\t\tresetContentSizeValue();\n\t\tresetWideSizeValue();\n\t};\n\n\treturn (\n\t\t<ToolsPanel label={ __( 'Dimensions' ) } resetAll={ resetAll }>\n\t\t\t{ ( showContentSizeControl || showWideSizeControl ) && (\n\t\t\t\t<span className=\"span-columns\">\n\t\t\t\t\t{ __( 'Set the width of the main content area.' ) }\n\t\t\t\t</span>\n\t\t\t) }\n\t\t\t{ showContentSizeControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ __( 'Content size' ) }\n\t\t\t\t\thasValue={ hasUserSetContentSizeValue }\n\t\t\t\t\tonDeselect={ resetContentSizeValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t>\n\t\t\t\t\t<HStack alignment=\"flex-end\" justify=\"flex-start\">\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tlabel={ __( 'Content' ) }\n\t\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\t\t__unstableInputWidth=\"80px\"\n\t\t\t\t\t\t\tvalue={ contentSizeValue || '' }\n\t\t\t\t\t\t\tonChange={ ( nextContentSize ) => {\n\t\t\t\t\t\t\t\tsetContentSizeValue( nextContentSize );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<View>\n\t\t\t\t\t\t\t<Icon icon={ positionCenter } />\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</HStack>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showWideSizeControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ __( 'Wide size' ) }\n\t\t\t\t\thasValue={ hasUserSetWideSizeValue }\n\t\t\t\t\tonDeselect={ resetWideSizeValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t>\n\t\t\t\t\t<HStack alignment=\"flex-end\" justify=\"flex-start\">\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tlabel={ __( 'Wide' ) }\n\t\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\t\t__unstableInputWidth=\"80px\"\n\t\t\t\t\t\t\tvalue={ wideSizeValue || '' }\n\t\t\t\t\t\t\tonChange={ ( nextWideSize ) => {\n\t\t\t\t\t\t\t\tsetWideSizeValue( nextWideSize );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<View>\n\t\t\t\t\t\t\t<Icon icon={ stretchWide } />\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</HStack>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showPaddingControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasPaddingValue }\n\t\t\t\t\tlabel={ __( 'Padding' ) }\n\t\t\t\t\tonDeselect={ resetPaddingValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t\tclassName={ classnames( {\n\t\t\t\t\t\t'tools-panel-item-spacing': showSpacingPresetsControl,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t{ ! showSpacingPresetsControl && (\n\t\t\t\t\t\t<BoxControl\n\t\t\t\t\t\t\tvalues={ paddingValues }\n\t\t\t\t\t\t\tonChange={ setPaddingValues }\n\t\t\t\t\t\t\tlabel={ __( 'Padding' ) }\n\t\t\t\t\t\t\tsides={ paddingSides }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\tsplitOnAxis={ isAxialPadding }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showSpacingPresetsControl && (\n\t\t\t\t\t\t<SpacingSizesControl\n\t\t\t\t\t\t\tvalues={ paddingValues }\n\t\t\t\t\t\t\tonChange={ setPaddingValues }\n\t\t\t\t\t\t\tlabel={ __( 'Padding' ) }\n\t\t\t\t\t\t\tsides={ paddingSides }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\tsplitOnAxis={ isAxialPadding }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showMarginControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasMarginValue }\n\t\t\t\t\tlabel={ __( 'Margin' ) }\n\t\t\t\t\tonDeselect={ resetMarginValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t\tclassName={ classnames( {\n\t\t\t\t\t\t'tools-panel-item-spacing': showSpacingPresetsControl,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t{ ! showSpacingPresetsControl && (\n\t\t\t\t\t\t<BoxControl\n\t\t\t\t\t\t\tvalues={ marginValues }\n\t\t\t\t\t\t\tonChange={ setMarginValues }\n\t\t\t\t\t\t\tlabel={ __( 'Margin' ) }\n\t\t\t\t\t\t\tsides={ marginSides }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\tsplitOnAxis={ isAxialMargin }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showSpacingPresetsControl && (\n\t\t\t\t\t\t<SpacingSizesControl\n\t\t\t\t\t\t\tvalues={ marginValues }\n\t\t\t\t\t\t\tonChange={ setMarginValues }\n\t\t\t\t\t\t\tlabel={ __( 'Margin' ) }\n\t\t\t\t\t\t\tsides={ marginSides }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\tsplitOnAxis={ isAxialMargin }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showGapControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasGapValue }\n\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\tonDeselect={ resetGapValue }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t>\n\t\t\t\t\t{ isAxialGap ? (\n\t\t\t\t\t\t<BoxControl\n\t\t\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\tonChange={ setGapValues }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tsides={ gapSides }\n\t\t\t\t\t\t\tvalues={ gapValues }\n\t\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\t\tsplitOnAxis={ isAxialGap }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tlabel={ __( 'Block spacing' ) }\n\t\t\t\t\t\t\t__unstableInputWidth=\"80px\"\n\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\tonChange={ setGapValue }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t\tvalue={ gapValue }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</ToolsPanel>\n\t);\n}\n"]}
|
|
@@ -136,15 +136,15 @@ function useStyle(path, blockName) {
|
|
|
136
136
|
|
|
137
137
|
switch (source) {
|
|
138
138
|
case 'all':
|
|
139
|
-
result = (0, _utils.getValueFromVariable)(mergedConfig
|
|
139
|
+
result = (0, _utils.getValueFromVariable)(mergedConfig, blockName, (_get = (0, _lodash.get)(userConfig, finalPath)) !== null && _get !== void 0 ? _get : (0, _lodash.get)(baseConfig, finalPath));
|
|
140
140
|
break;
|
|
141
141
|
|
|
142
142
|
case 'user':
|
|
143
|
-
result = (0, _utils.getValueFromVariable)(mergedConfig
|
|
143
|
+
result = (0, _utils.getValueFromVariable)(mergedConfig, blockName, (0, _lodash.get)(userConfig, finalPath));
|
|
144
144
|
break;
|
|
145
145
|
|
|
146
146
|
case 'base':
|
|
147
|
-
result = (0, _utils.getValueFromVariable)(baseConfig
|
|
147
|
+
result = (0, _utils.getValueFromVariable)(baseConfig, blockName, (0, _lodash.get)(baseConfig, finalPath));
|
|
148
148
|
break;
|
|
149
149
|
|
|
150
150
|
default:
|
|
@@ -154,7 +154,7 @@ function useStyle(path, blockName) {
|
|
|
154
154
|
return [result, setStyle];
|
|
155
155
|
}
|
|
156
156
|
|
|
157
|
-
const ROOT_BLOCK_SUPPORTS = ['background', 'backgroundColor', 'color', 'linkColor', 'buttonColor', 'fontFamily', 'fontSize', 'fontStyle', 'fontWeight', 'lineHeight', 'textDecoration', 'textTransform', 'padding', 'contentSize', 'wideSize'];
|
|
157
|
+
const ROOT_BLOCK_SUPPORTS = ['background', 'backgroundColor', 'color', 'linkColor', 'buttonColor', 'fontFamily', 'fontSize', 'fontStyle', 'fontWeight', 'lineHeight', 'textDecoration', 'textTransform', 'padding', 'contentSize', 'wideSize', 'blockGap'];
|
|
158
158
|
|
|
159
159
|
function getSupportedGlobalStylesPanels(name) {
|
|
160
160
|
var _blockType$supports, _blockType$supports$s, _blockType$supports2, _blockType$supports2$, _blockType$supports3, _blockType$supports3$, _blockType$supports3$2, _blockType$supports3$3;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/hooks.js"],"names":["EMPTY_CONFIG","settings","styles","useGlobalStylesReset","user","config","setUserConfig","GlobalStylesContext","canReset","useSetting","path","blockName","source","merged","mergedConfig","base","baseConfig","userConfig","fullPath","setSetting","newValue","currentConfig","newUserConfig","pathToSet","PATHS_WITH_MERGE","getSettingValueForContext","name","currentPath","getSettingValue","configToUse","result","custom","theme","default","resultWithFallback","useStyle","finalPath","setStyle","ROOT_BLOCK_SUPPORTS","getSupportedGlobalStylesPanels","blockType","supportKeys","supports","spacing","blockGap","__experimentalSkipSerialization","some","spacingType","push","Object","keys","STYLE_PROPERTY","forEach","styleName","support","requiresOptOut","useColorsPerOrigin","customColors","themeColors","defaultColors","shouldDisplayDefaultColors","length","colors","useGradientsPerOrigin","customGradients","themeGradients","defaultGradients","shouldDisplayDefaultGradients","gradients"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get, cloneDeep, set, isEqual, has } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { _x } from '@wordpress/i18n';\nimport { useContext, useCallback, useMemo } from '@wordpress/element';\nimport {\n\tgetBlockType,\n\t__EXPERIMENTAL_PATHS_WITH_MERGE as PATHS_WITH_MERGE,\n\t__EXPERIMENTAL_STYLE_PROPERTY as STYLE_PROPERTY,\n} from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { getValueFromVariable, getPresetVariableFromValue } from './utils';\nimport { GlobalStylesContext } from './context';\n\nconst EMPTY_CONFIG = { settings: {}, styles: {} };\n\nexport const useGlobalStylesReset = () => {\n\tconst { user: config, setUserConfig } = useContext( GlobalStylesContext );\n\tconst canReset = !! config && ! isEqual( config, EMPTY_CONFIG );\n\treturn [\n\t\tcanReset,\n\t\tuseCallback(\n\t\t\t() => setUserConfig( () => EMPTY_CONFIG ),\n\t\t\t[ setUserConfig ]\n\t\t),\n\t];\n};\n\nexport function useSetting( path, blockName, source = 'all' ) {\n\tconst {\n\t\tmerged: mergedConfig,\n\t\tbase: baseConfig,\n\t\tuser: userConfig,\n\t\tsetUserConfig,\n\t} = useContext( GlobalStylesContext );\n\n\tconst fullPath = ! blockName\n\t\t? `settings.${ path }`\n\t\t: `settings.blocks.${ blockName }.${ path }`;\n\n\tconst setSetting = ( newValue ) => {\n\t\tsetUserConfig( ( currentConfig ) => {\n\t\t\tconst newUserConfig = cloneDeep( currentConfig );\n\t\t\tconst pathToSet = PATHS_WITH_MERGE[ path ]\n\t\t\t\t? fullPath + '.custom'\n\t\t\t\t: fullPath;\n\t\t\tset( newUserConfig, pathToSet, newValue );\n\n\t\t\treturn newUserConfig;\n\t\t} );\n\t};\n\n\tconst getSettingValueForContext = ( name ) => {\n\t\tconst currentPath = ! name\n\t\t\t? `settings.${ path }`\n\t\t\t: `settings.blocks.${ name }.${ path }`;\n\n\t\tconst getSettingValue = ( configToUse ) => {\n\t\t\tconst result = get( configToUse, currentPath );\n\t\t\tif ( PATHS_WITH_MERGE[ path ] ) {\n\t\t\t\treturn result?.custom ?? result?.theme ?? result?.default;\n\t\t\t}\n\t\t\treturn result;\n\t\t};\n\n\t\tlet result;\n\t\tswitch ( source ) {\n\t\t\tcase 'all':\n\t\t\t\tresult = getSettingValue( mergedConfig );\n\t\t\t\tbreak;\n\t\t\tcase 'user':\n\t\t\t\tresult = getSettingValue( userConfig );\n\t\t\t\tbreak;\n\t\t\tcase 'base':\n\t\t\t\tresult = getSettingValue( baseConfig );\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthrow 'Unsupported source';\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t// Unlike styles settings get inherited from top level settings.\n\tconst resultWithFallback =\n\t\tgetSettingValueForContext( blockName ) ?? getSettingValueForContext();\n\n\treturn [ resultWithFallback, setSetting ];\n}\n\nexport function useStyle( path, blockName, source = 'all' ) {\n\tconst {\n\t\tmerged: mergedConfig,\n\t\tbase: baseConfig,\n\t\tuser: userConfig,\n\t\tsetUserConfig,\n\t} = useContext( GlobalStylesContext );\n\tconst finalPath = ! blockName\n\t\t? `styles.${ path }`\n\t\t: `styles.blocks.${ blockName }.${ path }`;\n\n\tconst setStyle = ( newValue ) => {\n\t\tsetUserConfig( ( currentConfig ) => {\n\t\t\tconst newUserConfig = cloneDeep( currentConfig );\n\t\t\tset(\n\t\t\t\tnewUserConfig,\n\t\t\t\tfinalPath,\n\t\t\t\tgetPresetVariableFromValue(\n\t\t\t\t\tmergedConfig.settings,\n\t\t\t\t\tblockName,\n\t\t\t\t\tpath,\n\t\t\t\t\tnewValue\n\t\t\t\t)\n\t\t\t);\n\t\t\treturn newUserConfig;\n\t\t} );\n\t};\n\n\tlet result;\n\tswitch ( source ) {\n\t\tcase 'all':\n\t\t\tresult = getValueFromVariable(\n\t\t\t\tmergedConfig.settings,\n\t\t\t\tblockName,\n\t\t\t\tget( userConfig, finalPath ) ?? get( baseConfig, finalPath )\n\t\t\t);\n\t\t\tbreak;\n\t\tcase 'user':\n\t\t\tresult = getValueFromVariable(\n\t\t\t\tmergedConfig.settings,\n\t\t\t\tblockName,\n\t\t\t\tget( userConfig, finalPath )\n\t\t\t);\n\t\t\tbreak;\n\t\tcase 'base':\n\t\t\tresult = getValueFromVariable(\n\t\t\t\tbaseConfig.settings,\n\t\t\t\tblockName,\n\t\t\t\tget( baseConfig, finalPath )\n\t\t\t);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tthrow 'Unsupported source';\n\t}\n\n\treturn [ result, setStyle ];\n}\n\nconst ROOT_BLOCK_SUPPORTS = [\n\t'background',\n\t'backgroundColor',\n\t'color',\n\t'linkColor',\n\t'buttonColor',\n\t'fontFamily',\n\t'fontSize',\n\t'fontStyle',\n\t'fontWeight',\n\t'lineHeight',\n\t'textDecoration',\n\t'textTransform',\n\t'padding',\n\t'contentSize',\n\t'wideSize',\n];\n\nexport function getSupportedGlobalStylesPanels( name ) {\n\tif ( ! name ) {\n\t\treturn ROOT_BLOCK_SUPPORTS;\n\t}\n\n\tconst blockType = getBlockType( name );\n\n\tif ( ! blockType ) {\n\t\treturn [];\n\t}\n\n\tconst supportKeys = [];\n\n\t// Check for blockGap support.\n\t// Block spacing support doesn't map directly to a single style property, so needs to be handled separately.\n\t// Also, only allow `blockGap` support if serialization has not been skipped, to be sure global spacing can be applied.\n\tif (\n\t\tblockType?.supports?.spacing?.blockGap &&\n\t\tblockType?.supports?.spacing?.__experimentalSkipSerialization !==\n\t\t\ttrue &&\n\t\t! blockType?.supports?.spacing?.__experimentalSkipSerialization?.some?.(\n\t\t\t( spacingType ) => spacingType === 'blockGap'\n\t\t)\n\t) {\n\t\tsupportKeys.push( 'blockGap' );\n\t}\n\n\tObject.keys( STYLE_PROPERTY ).forEach( ( styleName ) => {\n\t\tif ( ! STYLE_PROPERTY[ styleName ].support ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Opting out means that, for certain support keys like background color,\n\t\t// blocks have to explicitly set the support value false. If the key is\n\t\t// unset, we still enable it.\n\t\tif ( STYLE_PROPERTY[ styleName ].requiresOptOut ) {\n\t\t\tif (\n\t\t\t\thas(\n\t\t\t\t\tblockType.supports,\n\t\t\t\t\tSTYLE_PROPERTY[ styleName ].support[ 0 ]\n\t\t\t\t) &&\n\t\t\t\tget(\n\t\t\t\t\tblockType.supports,\n\t\t\t\t\tSTYLE_PROPERTY[ styleName ].support\n\t\t\t\t) !== false\n\t\t\t) {\n\t\t\t\treturn supportKeys.push( styleName );\n\t\t\t}\n\t\t}\n\n\t\tif (\n\t\t\tget(\n\t\t\t\tblockType.supports,\n\t\t\t\tSTYLE_PROPERTY[ styleName ].support,\n\t\t\t\tfalse\n\t\t\t)\n\t\t) {\n\t\t\treturn supportKeys.push( styleName );\n\t\t}\n\t} );\n\n\treturn supportKeys;\n}\n\nexport function useColorsPerOrigin( name ) {\n\tconst [ customColors ] = useSetting( 'color.palette.custom', name );\n\tconst [ themeColors ] = useSetting( 'color.palette.theme', name );\n\tconst [ defaultColors ] = useSetting( 'color.palette.default', name );\n\tconst [ shouldDisplayDefaultColors ] = useSetting( 'color.defaultPalette' );\n\n\treturn useMemo( () => {\n\t\tconst result = [];\n\t\tif ( themeColors && themeColors.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Theme',\n\t\t\t\t\t'Indicates this palette comes from the theme.'\n\t\t\t\t),\n\t\t\t\tcolors: themeColors,\n\t\t\t} );\n\t\t}\n\t\tif (\n\t\t\tshouldDisplayDefaultColors &&\n\t\t\tdefaultColors &&\n\t\t\tdefaultColors.length\n\t\t) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Default',\n\t\t\t\t\t'Indicates this palette comes from WordPress.'\n\t\t\t\t),\n\t\t\t\tcolors: defaultColors,\n\t\t\t} );\n\t\t}\n\t\tif ( customColors && customColors.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Custom',\n\t\t\t\t\t'Indicates this palette is created by the user.'\n\t\t\t\t),\n\t\t\t\tcolors: customColors,\n\t\t\t} );\n\t\t}\n\t\treturn result;\n\t}, [ customColors, themeColors, defaultColors ] );\n}\n\nexport function useGradientsPerOrigin( name ) {\n\tconst [ customGradients ] = useSetting( 'color.gradients.custom', name );\n\tconst [ themeGradients ] = useSetting( 'color.gradients.theme', name );\n\tconst [ defaultGradients ] = useSetting( 'color.gradients.default', name );\n\tconst [ shouldDisplayDefaultGradients ] = useSetting(\n\t\t'color.defaultGradients'\n\t);\n\n\treturn useMemo( () => {\n\t\tconst result = [];\n\t\tif ( themeGradients && themeGradients.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Theme',\n\t\t\t\t\t'Indicates this palette comes from the theme.'\n\t\t\t\t),\n\t\t\t\tgradients: themeGradients,\n\t\t\t} );\n\t\t}\n\t\tif (\n\t\t\tshouldDisplayDefaultGradients &&\n\t\t\tdefaultGradients &&\n\t\t\tdefaultGradients.length\n\t\t) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Default',\n\t\t\t\t\t'Indicates this palette comes from WordPress.'\n\t\t\t\t),\n\t\t\t\tgradients: defaultGradients,\n\t\t\t} );\n\t\t}\n\t\tif ( customGradients && customGradients.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Custom',\n\t\t\t\t\t'Indicates this palette is created by the user.'\n\t\t\t\t),\n\t\t\t\tgradients: customGradients,\n\t\t\t} );\n\t\t}\n\t\treturn result;\n\t}, [ customGradients, themeGradients, defaultGradients ] );\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/hooks.js"],"names":["EMPTY_CONFIG","settings","styles","useGlobalStylesReset","user","config","setUserConfig","GlobalStylesContext","canReset","useSetting","path","blockName","source","merged","mergedConfig","base","baseConfig","userConfig","fullPath","setSetting","newValue","currentConfig","newUserConfig","pathToSet","PATHS_WITH_MERGE","getSettingValueForContext","name","currentPath","getSettingValue","configToUse","result","custom","theme","default","resultWithFallback","useStyle","finalPath","setStyle","ROOT_BLOCK_SUPPORTS","getSupportedGlobalStylesPanels","blockType","supportKeys","supports","spacing","blockGap","__experimentalSkipSerialization","some","spacingType","push","Object","keys","STYLE_PROPERTY","forEach","styleName","support","requiresOptOut","useColorsPerOrigin","customColors","themeColors","defaultColors","shouldDisplayDefaultColors","length","colors","useGradientsPerOrigin","customGradients","themeGradients","defaultGradients","shouldDisplayDefaultGradients","gradients"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get, cloneDeep, set, isEqual, has } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { _x } from '@wordpress/i18n';\nimport { useContext, useCallback, useMemo } from '@wordpress/element';\nimport {\n\tgetBlockType,\n\t__EXPERIMENTAL_PATHS_WITH_MERGE as PATHS_WITH_MERGE,\n\t__EXPERIMENTAL_STYLE_PROPERTY as STYLE_PROPERTY,\n} from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { getValueFromVariable, getPresetVariableFromValue } from './utils';\nimport { GlobalStylesContext } from './context';\n\nconst EMPTY_CONFIG = { settings: {}, styles: {} };\n\nexport const useGlobalStylesReset = () => {\n\tconst { user: config, setUserConfig } = useContext( GlobalStylesContext );\n\tconst canReset = !! config && ! isEqual( config, EMPTY_CONFIG );\n\treturn [\n\t\tcanReset,\n\t\tuseCallback(\n\t\t\t() => setUserConfig( () => EMPTY_CONFIG ),\n\t\t\t[ setUserConfig ]\n\t\t),\n\t];\n};\n\nexport function useSetting( path, blockName, source = 'all' ) {\n\tconst {\n\t\tmerged: mergedConfig,\n\t\tbase: baseConfig,\n\t\tuser: userConfig,\n\t\tsetUserConfig,\n\t} = useContext( GlobalStylesContext );\n\n\tconst fullPath = ! blockName\n\t\t? `settings.${ path }`\n\t\t: `settings.blocks.${ blockName }.${ path }`;\n\n\tconst setSetting = ( newValue ) => {\n\t\tsetUserConfig( ( currentConfig ) => {\n\t\t\tconst newUserConfig = cloneDeep( currentConfig );\n\t\t\tconst pathToSet = PATHS_WITH_MERGE[ path ]\n\t\t\t\t? fullPath + '.custom'\n\t\t\t\t: fullPath;\n\t\t\tset( newUserConfig, pathToSet, newValue );\n\n\t\t\treturn newUserConfig;\n\t\t} );\n\t};\n\n\tconst getSettingValueForContext = ( name ) => {\n\t\tconst currentPath = ! name\n\t\t\t? `settings.${ path }`\n\t\t\t: `settings.blocks.${ name }.${ path }`;\n\n\t\tconst getSettingValue = ( configToUse ) => {\n\t\t\tconst result = get( configToUse, currentPath );\n\t\t\tif ( PATHS_WITH_MERGE[ path ] ) {\n\t\t\t\treturn result?.custom ?? result?.theme ?? result?.default;\n\t\t\t}\n\t\t\treturn result;\n\t\t};\n\n\t\tlet result;\n\t\tswitch ( source ) {\n\t\t\tcase 'all':\n\t\t\t\tresult = getSettingValue( mergedConfig );\n\t\t\t\tbreak;\n\t\t\tcase 'user':\n\t\t\t\tresult = getSettingValue( userConfig );\n\t\t\t\tbreak;\n\t\t\tcase 'base':\n\t\t\t\tresult = getSettingValue( baseConfig );\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthrow 'Unsupported source';\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t// Unlike styles settings get inherited from top level settings.\n\tconst resultWithFallback =\n\t\tgetSettingValueForContext( blockName ) ?? getSettingValueForContext();\n\n\treturn [ resultWithFallback, setSetting ];\n}\n\nexport function useStyle( path, blockName, source = 'all' ) {\n\tconst {\n\t\tmerged: mergedConfig,\n\t\tbase: baseConfig,\n\t\tuser: userConfig,\n\t\tsetUserConfig,\n\t} = useContext( GlobalStylesContext );\n\tconst finalPath = ! blockName\n\t\t? `styles.${ path }`\n\t\t: `styles.blocks.${ blockName }.${ path }`;\n\n\tconst setStyle = ( newValue ) => {\n\t\tsetUserConfig( ( currentConfig ) => {\n\t\t\tconst newUserConfig = cloneDeep( currentConfig );\n\t\t\tset(\n\t\t\t\tnewUserConfig,\n\t\t\t\tfinalPath,\n\t\t\t\tgetPresetVariableFromValue(\n\t\t\t\t\tmergedConfig.settings,\n\t\t\t\t\tblockName,\n\t\t\t\t\tpath,\n\t\t\t\t\tnewValue\n\t\t\t\t)\n\t\t\t);\n\t\t\treturn newUserConfig;\n\t\t} );\n\t};\n\n\tlet result;\n\tswitch ( source ) {\n\t\tcase 'all':\n\t\t\tresult = getValueFromVariable(\n\t\t\t\tmergedConfig,\n\t\t\t\tblockName,\n\t\t\t\tget( userConfig, finalPath ) ?? get( baseConfig, finalPath )\n\t\t\t);\n\t\t\tbreak;\n\t\tcase 'user':\n\t\t\tresult = getValueFromVariable(\n\t\t\t\tmergedConfig,\n\t\t\t\tblockName,\n\t\t\t\tget( userConfig, finalPath )\n\t\t\t);\n\t\t\tbreak;\n\t\tcase 'base':\n\t\t\tresult = getValueFromVariable(\n\t\t\t\tbaseConfig,\n\t\t\t\tblockName,\n\t\t\t\tget( baseConfig, finalPath )\n\t\t\t);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tthrow 'Unsupported source';\n\t}\n\n\treturn [ result, setStyle ];\n}\n\nconst ROOT_BLOCK_SUPPORTS = [\n\t'background',\n\t'backgroundColor',\n\t'color',\n\t'linkColor',\n\t'buttonColor',\n\t'fontFamily',\n\t'fontSize',\n\t'fontStyle',\n\t'fontWeight',\n\t'lineHeight',\n\t'textDecoration',\n\t'textTransform',\n\t'padding',\n\t'contentSize',\n\t'wideSize',\n\t'blockGap',\n];\n\nexport function getSupportedGlobalStylesPanels( name ) {\n\tif ( ! name ) {\n\t\treturn ROOT_BLOCK_SUPPORTS;\n\t}\n\n\tconst blockType = getBlockType( name );\n\n\tif ( ! blockType ) {\n\t\treturn [];\n\t}\n\n\tconst supportKeys = [];\n\n\t// Check for blockGap support.\n\t// Block spacing support doesn't map directly to a single style property, so needs to be handled separately.\n\t// Also, only allow `blockGap` support if serialization has not been skipped, to be sure global spacing can be applied.\n\tif (\n\t\tblockType?.supports?.spacing?.blockGap &&\n\t\tblockType?.supports?.spacing?.__experimentalSkipSerialization !==\n\t\t\ttrue &&\n\t\t! blockType?.supports?.spacing?.__experimentalSkipSerialization?.some?.(\n\t\t\t( spacingType ) => spacingType === 'blockGap'\n\t\t)\n\t) {\n\t\tsupportKeys.push( 'blockGap' );\n\t}\n\n\tObject.keys( STYLE_PROPERTY ).forEach( ( styleName ) => {\n\t\tif ( ! STYLE_PROPERTY[ styleName ].support ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Opting out means that, for certain support keys like background color,\n\t\t// blocks have to explicitly set the support value false. If the key is\n\t\t// unset, we still enable it.\n\t\tif ( STYLE_PROPERTY[ styleName ].requiresOptOut ) {\n\t\t\tif (\n\t\t\t\thas(\n\t\t\t\t\tblockType.supports,\n\t\t\t\t\tSTYLE_PROPERTY[ styleName ].support[ 0 ]\n\t\t\t\t) &&\n\t\t\t\tget(\n\t\t\t\t\tblockType.supports,\n\t\t\t\t\tSTYLE_PROPERTY[ styleName ].support\n\t\t\t\t) !== false\n\t\t\t) {\n\t\t\t\treturn supportKeys.push( styleName );\n\t\t\t}\n\t\t}\n\n\t\tif (\n\t\t\tget(\n\t\t\t\tblockType.supports,\n\t\t\t\tSTYLE_PROPERTY[ styleName ].support,\n\t\t\t\tfalse\n\t\t\t)\n\t\t) {\n\t\t\treturn supportKeys.push( styleName );\n\t\t}\n\t} );\n\n\treturn supportKeys;\n}\n\nexport function useColorsPerOrigin( name ) {\n\tconst [ customColors ] = useSetting( 'color.palette.custom', name );\n\tconst [ themeColors ] = useSetting( 'color.palette.theme', name );\n\tconst [ defaultColors ] = useSetting( 'color.palette.default', name );\n\tconst [ shouldDisplayDefaultColors ] = useSetting( 'color.defaultPalette' );\n\n\treturn useMemo( () => {\n\t\tconst result = [];\n\t\tif ( themeColors && themeColors.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Theme',\n\t\t\t\t\t'Indicates this palette comes from the theme.'\n\t\t\t\t),\n\t\t\t\tcolors: themeColors,\n\t\t\t} );\n\t\t}\n\t\tif (\n\t\t\tshouldDisplayDefaultColors &&\n\t\t\tdefaultColors &&\n\t\t\tdefaultColors.length\n\t\t) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Default',\n\t\t\t\t\t'Indicates this palette comes from WordPress.'\n\t\t\t\t),\n\t\t\t\tcolors: defaultColors,\n\t\t\t} );\n\t\t}\n\t\tif ( customColors && customColors.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Custom',\n\t\t\t\t\t'Indicates this palette is created by the user.'\n\t\t\t\t),\n\t\t\t\tcolors: customColors,\n\t\t\t} );\n\t\t}\n\t\treturn result;\n\t}, [ customColors, themeColors, defaultColors ] );\n}\n\nexport function useGradientsPerOrigin( name ) {\n\tconst [ customGradients ] = useSetting( 'color.gradients.custom', name );\n\tconst [ themeGradients ] = useSetting( 'color.gradients.theme', name );\n\tconst [ defaultGradients ] = useSetting( 'color.gradients.default', name );\n\tconst [ shouldDisplayDefaultGradients ] = useSetting(\n\t\t'color.defaultGradients'\n\t);\n\n\treturn useMemo( () => {\n\t\tconst result = [];\n\t\tif ( themeGradients && themeGradients.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Theme',\n\t\t\t\t\t'Indicates this palette comes from the theme.'\n\t\t\t\t),\n\t\t\t\tgradients: themeGradients,\n\t\t\t} );\n\t\t}\n\t\tif (\n\t\t\tshouldDisplayDefaultGradients &&\n\t\t\tdefaultGradients &&\n\t\t\tdefaultGradients.length\n\t\t) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Default',\n\t\t\t\t\t'Indicates this palette comes from WordPress.'\n\t\t\t\t),\n\t\t\t\tgradients: defaultGradients,\n\t\t\t} );\n\t\t}\n\t\tif ( customGradients && customGradients.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Custom',\n\t\t\t\t\t'Indicates this palette is created by the user.'\n\t\t\t\t),\n\t\t\t\tgradients: customGradients,\n\t\t\t} );\n\t\t}\n\t\treturn result;\n\t}, [ customGradients, themeGradients, defaultGradients ] );\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/screen-color-palette.js"],"names":["ScreenColorPalette","name","title","value","tab"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AACA;;AAXA;AACA;AACA;;AAIA;AACA;AACA;AAKA,SAASA,kBAAT,OAAwC;AAAA,MAAX;AAAEC,IAAAA;AAAF,GAAW;AACvC,SACC,qDACC,4BAAC,eAAD;AACC,IAAA,KAAK,EAAG,cAAI,SAAJ,CADT;AAEC,IAAA,WAAW,EAAG,cACb,yIADa;AAFf,IADD,EAOC,4BAAC,oBAAD;AACC,IAAA,IAAI,EAAG,CACN;AACCA,MAAAA,IAAI,EAAE,OADP;AAECC,MAAAA,KAAK,EAAE,
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/screen-color-palette.js"],"names":["ScreenColorPalette","name","title","value","tab"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AACA;;AAXA;AACA;AACA;;AAIA;AACA;AACA;AAKA,SAASA,kBAAT,OAAwC;AAAA,MAAX;AAAEC,IAAAA;AAAF,GAAW;AACvC,SACC,qDACC,4BAAC,eAAD;AACC,IAAA,KAAK,EAAG,cAAI,SAAJ,CADT;AAEC,IAAA,WAAW,EAAG,cACb,yIADa;AAFf,IADD,EAOC,4BAAC,oBAAD;AACC,IAAA,IAAI,EAAG,CACN;AACCA,MAAAA,IAAI,EAAE,OADP;AAECC,MAAAA,KAAK,EAAE,OAFR;AAGCC,MAAAA,KAAK,EAAE;AAHR,KADM,EAMN;AACCF,MAAAA,IAAI,EAAE,UADP;AAECC,MAAAA,KAAK,EAAE,UAFR;AAGCC,MAAAA,KAAK,EAAE;AAHR,KANM;AADR,KAcKC,GAAF,IACD,qDACGA,GAAG,CAACD,KAAJ,KAAc,OAAd,IACD,4BAAC,0BAAD;AAAmB,IAAA,IAAI,EAAGF;AAA1B,IAFF,EAIGG,GAAG,CAACD,KAAJ,KAAc,UAAd,IACD,4BAAC,8BAAD;AAAsB,IAAA,IAAI,EAAGF;AAA7B,IALF,CAfF,CAPD,CADD;AAmCA;;eAEcD,kB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { TabPanel } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport ColorPalettePanel from './color-palette-panel';\nimport GradientPalettePanel from './gradients-palette-panel';\nimport ScreenHeader from './header';\n\nfunction ScreenColorPalette( { name } ) {\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'Palette' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Palettes are used to provide default color options for blocks and various design tools. Here you can edit the colors with their labels.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t<TabPanel\n\t\t\t\ttabs={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tname: 'solid',\n\t\t\t\t\t\ttitle: 'Solid',\n\t\t\t\t\t\tvalue: 'solid',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tname: 'gradient',\n\t\t\t\t\t\ttitle: 'Gradient',\n\t\t\t\t\t\tvalue: 'gradient',\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t>\n\t\t\t\t{ ( tab ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ tab.value === 'solid' && (\n\t\t\t\t\t\t\t<ColorPalettePanel name={ name } />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ tab.value === 'gradient' && (\n\t\t\t\t\t\t\t<GradientPalettePanel name={ name } />\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</TabPanel>\n\t\t</>\n\t);\n}\n\nexport default ScreenColorPalette;\n"]}
|
|
@@ -56,7 +56,9 @@ function BackgroundColorItem(_ref) {
|
|
|
56
56
|
}, (0, _element.createElement)(_components.ColorIndicator, {
|
|
57
57
|
colorValue: gradientValue !== null && gradientValue !== void 0 ? gradientValue : backgroundColor,
|
|
58
58
|
"data-testid": "background-color-indicator"
|
|
59
|
-
})), (0, _element.createElement)(_components.FlexItem,
|
|
59
|
+
})), (0, _element.createElement)(_components.FlexItem, {
|
|
60
|
+
className: "edit-site-global-styles__color-label"
|
|
61
|
+
}, (0, _i18n.__)('Background'))));
|
|
60
62
|
}
|
|
61
63
|
|
|
62
64
|
function TextColorItem(_ref2) {
|
|
@@ -82,7 +84,9 @@ function TextColorItem(_ref2) {
|
|
|
82
84
|
}, (0, _element.createElement)(_components.ColorIndicator, {
|
|
83
85
|
colorValue: color,
|
|
84
86
|
"data-testid": "text-color-indicator"
|
|
85
|
-
})), (0, _element.createElement)(_components.FlexItem,
|
|
87
|
+
})), (0, _element.createElement)(_components.FlexItem, {
|
|
88
|
+
className: "edit-site-global-styles__color-label"
|
|
89
|
+
}, (0, _i18n.__)('Text'))));
|
|
86
90
|
}
|
|
87
91
|
|
|
88
92
|
function LinkColorItem(_ref3) {
|
|
@@ -115,15 +119,50 @@ function LinkColorItem(_ref3) {
|
|
|
115
119
|
expanded: false
|
|
116
120
|
}, (0, _element.createElement)(_components.ColorIndicator, {
|
|
117
121
|
colorValue: colorHover
|
|
118
|
-
}))), (0, _element.createElement)(_components.FlexItem,
|
|
122
|
+
}))), (0, _element.createElement)(_components.FlexItem, {
|
|
123
|
+
className: "edit-site-global-styles__color-label"
|
|
124
|
+
}, (0, _i18n.__)('Links'))));
|
|
119
125
|
}
|
|
120
126
|
|
|
121
|
-
function
|
|
127
|
+
function HeadingColorItem(_ref4) {
|
|
122
128
|
let {
|
|
123
129
|
name,
|
|
124
130
|
parentMenu
|
|
125
131
|
} = _ref4;
|
|
126
132
|
const supports = (0, _hooks.getSupportedGlobalStylesPanels)(name);
|
|
133
|
+
const hasSupport = supports.includes('color');
|
|
134
|
+
const [color] = (0, _hooks.useStyle)('elements.heading.color.text', name);
|
|
135
|
+
const [bgColor] = (0, _hooks.useStyle)('elements.heading.color.background', name);
|
|
136
|
+
|
|
137
|
+
if (!hasSupport) {
|
|
138
|
+
return null;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
return (0, _element.createElement)(_navigationButton.NavigationButtonAsItem, {
|
|
142
|
+
path: parentMenu + '/colors/heading',
|
|
143
|
+
"aria-label": (0, _i18n.__)('Colors heading styles')
|
|
144
|
+
}, (0, _element.createElement)(_components.__experimentalHStack, {
|
|
145
|
+
justify: "flex-start"
|
|
146
|
+
}, (0, _element.createElement)(_components.__experimentalZStack, {
|
|
147
|
+
isLayered: false,
|
|
148
|
+
offset: -8
|
|
149
|
+
}, (0, _element.createElement)(_colorIndicatorWrapper.default, {
|
|
150
|
+
expanded: false
|
|
151
|
+
}, (0, _element.createElement)(_components.ColorIndicator, {
|
|
152
|
+
colorValue: bgColor
|
|
153
|
+
})), (0, _element.createElement)(_colorIndicatorWrapper.default, {
|
|
154
|
+
expanded: false
|
|
155
|
+
}, (0, _element.createElement)(_components.ColorIndicator, {
|
|
156
|
+
colorValue: color
|
|
157
|
+
}))), (0, _element.createElement)(_components.FlexItem, null, (0, _i18n.__)('Headings'))));
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
function ButtonColorItem(_ref5) {
|
|
161
|
+
let {
|
|
162
|
+
name,
|
|
163
|
+
parentMenu
|
|
164
|
+
} = _ref5;
|
|
165
|
+
const supports = (0, _hooks.getSupportedGlobalStylesPanels)(name);
|
|
127
166
|
const hasSupport = supports.includes('buttonColor');
|
|
128
167
|
const [color] = (0, _hooks.useStyle)('elements.button.color.text', name);
|
|
129
168
|
const [bgColor] = (0, _hooks.useStyle)('elements.button.color.background', name);
|
|
@@ -147,13 +186,15 @@ function ButtonColorItem(_ref4) {
|
|
|
147
186
|
expanded: false
|
|
148
187
|
}, (0, _element.createElement)(_components.ColorIndicator, {
|
|
149
188
|
colorValue: color
|
|
150
|
-
}))), (0, _element.createElement)(_components.FlexItem,
|
|
189
|
+
}))), (0, _element.createElement)(_components.FlexItem, {
|
|
190
|
+
className: "edit-site-global-styles__color-label"
|
|
191
|
+
}, (0, _i18n.__)('Buttons'))));
|
|
151
192
|
}
|
|
152
193
|
|
|
153
|
-
function ScreenColors(
|
|
194
|
+
function ScreenColors(_ref6) {
|
|
154
195
|
let {
|
|
155
196
|
name
|
|
156
|
-
} =
|
|
197
|
+
} = _ref6;
|
|
157
198
|
const parentMenu = name === undefined ? '' : '/blocks/' + name;
|
|
158
199
|
return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_header.default, {
|
|
159
200
|
title: (0, _i18n.__)('Colors'),
|
|
@@ -178,6 +219,9 @@ function ScreenColors(_ref5) {
|
|
|
178
219
|
}), (0, _element.createElement)(LinkColorItem, {
|
|
179
220
|
name: name,
|
|
180
221
|
parentMenu: parentMenu
|
|
222
|
+
}), (0, _element.createElement)(HeadingColorItem, {
|
|
223
|
+
name: name,
|
|
224
|
+
parentMenu: parentMenu
|
|
181
225
|
}), (0, _element.createElement)(ButtonColorItem, {
|
|
182
226
|
name: name,
|
|
183
227
|
parentMenu: parentMenu
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/screen-colors.js"],"names":["BackgroundColorItem","name","parentMenu","supports","hasSupport","includes","backgroundColor","gradientValue","TextColorItem","color","LinkColorItem","colorHover","ButtonColorItem","bgColor","ScreenColors","undefined"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalZStack as ZStack,\n\tFlexItem,\n\tColorIndicator,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from './header';\nimport Palette from './palette';\nimport { NavigationButtonAsItem } from './navigation-button';\nimport { getSupportedGlobalStylesPanels, useStyle } from './hooks';\nimport Subtitle from './subtitle';\nimport ColorIndicatorWrapper from './color-indicator-wrapper';\n\nfunction BackgroundColorItem( { name, parentMenu } ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst hasSupport =\n\t\tsupports.includes( 'backgroundColor' ) ||\n\t\tsupports.includes( 'background' );\n\tconst [ backgroundColor ] = useStyle( 'color.background', name );\n\tconst [ gradientValue ] = useStyle( 'color.gradient', name );\n\n\tif ( ! hasSupport ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<NavigationButtonAsItem\n\t\t\tpath={ parentMenu + '/colors/background' }\n\t\t\taria-label={ __( 'Colors background styles' ) }\n\t\t>\n\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t<ColorIndicatorWrapper expanded={ false }>\n\t\t\t\t\t<ColorIndicator\n\t\t\t\t\t\tcolorValue={ gradientValue ?? backgroundColor }\n\t\t\t\t\t\tdata-testid=\"background-color-indicator\"\n\t\t\t\t\t/>\n\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t<FlexItem>{ __( 'Background' ) }</FlexItem>\n\t\t\t</HStack>\n\t\t</NavigationButtonAsItem>\n\t);\n}\n\nfunction TextColorItem( { name, parentMenu } ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst hasSupport = supports.includes( 'color' );\n\tconst [ color ] = useStyle( 'color.text', name );\n\n\tif ( ! hasSupport ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<NavigationButtonAsItem\n\t\t\tpath={ parentMenu + '/colors/text' }\n\t\t\taria-label={ __( 'Colors text styles' ) }\n\t\t>\n\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t<ColorIndicatorWrapper expanded={ false }>\n\t\t\t\t\t<ColorIndicator\n\t\t\t\t\t\tcolorValue={ color }\n\t\t\t\t\t\tdata-testid=\"text-color-indicator\"\n\t\t\t\t\t/>\n\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t<FlexItem>{ __( 'Text' ) }</FlexItem>\n\t\t\t</HStack>\n\t\t</NavigationButtonAsItem>\n\t);\n}\n\nfunction LinkColorItem( { name, parentMenu } ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst hasSupport = supports.includes( 'linkColor' );\n\tconst [ color ] = useStyle( 'elements.link.color.text', name );\n\tconst [ colorHover ] = useStyle( 'elements.link.:hover.color.text', name );\n\n\tif ( ! hasSupport ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<NavigationButtonAsItem\n\t\t\tpath={ parentMenu + '/colors/link' }\n\t\t\taria-label={ __( 'Colors link styles' ) }\n\t\t>\n\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t\t\t<ColorIndicatorWrapper expanded={ false }>\n\t\t\t\t\t\t<ColorIndicator colorValue={ color } />\n\t\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t\t<ColorIndicatorWrapper expanded={ false }>\n\t\t\t\t\t\t<ColorIndicator colorValue={ colorHover } />\n\t\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t</ZStack>\n\t\t\t\t<FlexItem>{ __( 'Links' ) }</FlexItem>\n\t\t\t</HStack>\n\t\t</NavigationButtonAsItem>\n\t);\n}\n\nfunction ButtonColorItem( { name, parentMenu } ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst hasSupport = supports.includes( 'buttonColor' );\n\tconst [ color ] = useStyle( 'elements.button.color.text', name );\n\tconst [ bgColor ] = useStyle( 'elements.button.color.background', name );\n\n\tif ( ! hasSupport ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<NavigationButtonAsItem path={ parentMenu + '/colors/button' }>\n\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t\t\t<ColorIndicatorWrapper expanded={ false }>\n\t\t\t\t\t\t<ColorIndicator colorValue={ bgColor } />\n\t\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t\t<ColorIndicatorWrapper expanded={ false }>\n\t\t\t\t\t\t<ColorIndicator colorValue={ color } />\n\t\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t</ZStack>\n\t\t\t\t<FlexItem>{ __( 'Buttons' ) }</FlexItem>\n\t\t\t</HStack>\n\t\t</NavigationButtonAsItem>\n\t);\n}\n\nfunction ScreenColors( { name } ) {\n\tconst parentMenu = name === undefined ? '' : '/blocks/' + name;\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'Colors' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Manage palettes and the default color of different global elements on the site.'\n\t\t\t\t) }\n\t\t\t/>\n\n\t\t\t<div className=\"edit-site-global-styles-screen-colors\">\n\t\t\t\t<VStack spacing={ 10 }>\n\t\t\t\t\t<Palette name={ name } />\n\n\t\t\t\t\t<VStack spacing={ 3 }>\n\t\t\t\t\t\t<Subtitle>{ __( 'Elements' ) }</Subtitle>\n\t\t\t\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t\t\t\t<BackgroundColorItem\n\t\t\t\t\t\t\t\tname={ name }\n\t\t\t\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TextColorItem\n\t\t\t\t\t\t\t\tname={ name }\n\t\t\t\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<LinkColorItem\n\t\t\t\t\t\t\t\tname={ name }\n\t\t\t\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ButtonColorItem\n\t\t\t\t\t\t\t\tname={ name }\n\t\t\t\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t</VStack>\n\t\t\t\t</VStack>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default ScreenColors;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/screen-colors.js"],"names":["BackgroundColorItem","name","parentMenu","supports","hasSupport","includes","backgroundColor","gradientValue","TextColorItem","color","LinkColorItem","colorHover","HeadingColorItem","bgColor","ButtonColorItem","ScreenColors","undefined"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalZStack as ZStack,\n\tFlexItem,\n\tColorIndicator,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from './header';\nimport Palette from './palette';\nimport { NavigationButtonAsItem } from './navigation-button';\nimport { getSupportedGlobalStylesPanels, useStyle } from './hooks';\nimport Subtitle from './subtitle';\nimport ColorIndicatorWrapper from './color-indicator-wrapper';\n\nfunction BackgroundColorItem( { name, parentMenu } ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst hasSupport =\n\t\tsupports.includes( 'backgroundColor' ) ||\n\t\tsupports.includes( 'background' );\n\tconst [ backgroundColor ] = useStyle( 'color.background', name );\n\tconst [ gradientValue ] = useStyle( 'color.gradient', name );\n\n\tif ( ! hasSupport ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<NavigationButtonAsItem\n\t\t\tpath={ parentMenu + '/colors/background' }\n\t\t\taria-label={ __( 'Colors background styles' ) }\n\t\t>\n\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t<ColorIndicatorWrapper expanded={ false }>\n\t\t\t\t\t<ColorIndicator\n\t\t\t\t\t\tcolorValue={ gradientValue ?? backgroundColor }\n\t\t\t\t\t\tdata-testid=\"background-color-indicator\"\n\t\t\t\t\t/>\n\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t<FlexItem className=\"edit-site-global-styles__color-label\">\n\t\t\t\t\t{ __( 'Background' ) }\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</NavigationButtonAsItem>\n\t);\n}\n\nfunction TextColorItem( { name, parentMenu } ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst hasSupport = supports.includes( 'color' );\n\tconst [ color ] = useStyle( 'color.text', name );\n\n\tif ( ! hasSupport ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<NavigationButtonAsItem\n\t\t\tpath={ parentMenu + '/colors/text' }\n\t\t\taria-label={ __( 'Colors text styles' ) }\n\t\t>\n\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t<ColorIndicatorWrapper expanded={ false }>\n\t\t\t\t\t<ColorIndicator\n\t\t\t\t\t\tcolorValue={ color }\n\t\t\t\t\t\tdata-testid=\"text-color-indicator\"\n\t\t\t\t\t/>\n\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t<FlexItem className=\"edit-site-global-styles__color-label\">\n\t\t\t\t\t{ __( 'Text' ) }\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</NavigationButtonAsItem>\n\t);\n}\n\nfunction LinkColorItem( { name, parentMenu } ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst hasSupport = supports.includes( 'linkColor' );\n\tconst [ color ] = useStyle( 'elements.link.color.text', name );\n\tconst [ colorHover ] = useStyle( 'elements.link.:hover.color.text', name );\n\n\tif ( ! hasSupport ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<NavigationButtonAsItem\n\t\t\tpath={ parentMenu + '/colors/link' }\n\t\t\taria-label={ __( 'Colors link styles' ) }\n\t\t>\n\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t\t\t<ColorIndicatorWrapper expanded={ false }>\n\t\t\t\t\t\t<ColorIndicator colorValue={ color } />\n\t\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t\t<ColorIndicatorWrapper expanded={ false }>\n\t\t\t\t\t\t<ColorIndicator colorValue={ colorHover } />\n\t\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t</ZStack>\n\t\t\t\t<FlexItem className=\"edit-site-global-styles__color-label\">\n\t\t\t\t\t{ __( 'Links' ) }\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</NavigationButtonAsItem>\n\t);\n}\n\nfunction HeadingColorItem( { name, parentMenu } ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst hasSupport = supports.includes( 'color' );\n\tconst [ color ] = useStyle( 'elements.heading.color.text', name );\n\tconst [ bgColor ] = useStyle( 'elements.heading.color.background', name );\n\n\tif ( ! hasSupport ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<NavigationButtonAsItem\n\t\t\tpath={ parentMenu + '/colors/heading' }\n\t\t\taria-label={ __( 'Colors heading styles' ) }\n\t\t>\n\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t\t\t<ColorIndicatorWrapper expanded={ false }>\n\t\t\t\t\t\t<ColorIndicator colorValue={ bgColor } />\n\t\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t\t<ColorIndicatorWrapper expanded={ false }>\n\t\t\t\t\t\t<ColorIndicator colorValue={ color } />\n\t\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t</ZStack>\n\t\t\t\t<FlexItem>{ __( 'Headings' ) }</FlexItem>\n\t\t\t</HStack>\n\t\t</NavigationButtonAsItem>\n\t);\n}\n\nfunction ButtonColorItem( { name, parentMenu } ) {\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst hasSupport = supports.includes( 'buttonColor' );\n\tconst [ color ] = useStyle( 'elements.button.color.text', name );\n\tconst [ bgColor ] = useStyle( 'elements.button.color.background', name );\n\n\tif ( ! hasSupport ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<NavigationButtonAsItem path={ parentMenu + '/colors/button' }>\n\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t\t\t<ColorIndicatorWrapper expanded={ false }>\n\t\t\t\t\t\t<ColorIndicator colorValue={ bgColor } />\n\t\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t\t<ColorIndicatorWrapper expanded={ false }>\n\t\t\t\t\t\t<ColorIndicator colorValue={ color } />\n\t\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t</ZStack>\n\t\t\t\t<FlexItem className=\"edit-site-global-styles__color-label\">\n\t\t\t\t\t{ __( 'Buttons' ) }\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</NavigationButtonAsItem>\n\t);\n}\n\nfunction ScreenColors( { name } ) {\n\tconst parentMenu = name === undefined ? '' : '/blocks/' + name;\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'Colors' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Manage palettes and the default color of different global elements on the site.'\n\t\t\t\t) }\n\t\t\t/>\n\n\t\t\t<div className=\"edit-site-global-styles-screen-colors\">\n\t\t\t\t<VStack spacing={ 10 }>\n\t\t\t\t\t<Palette name={ name } />\n\n\t\t\t\t\t<VStack spacing={ 3 }>\n\t\t\t\t\t\t<Subtitle>{ __( 'Elements' ) }</Subtitle>\n\t\t\t\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t\t\t\t<BackgroundColorItem\n\t\t\t\t\t\t\t\tname={ name }\n\t\t\t\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TextColorItem\n\t\t\t\t\t\t\t\tname={ name }\n\t\t\t\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<LinkColorItem\n\t\t\t\t\t\t\t\tname={ name }\n\t\t\t\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<HeadingColorItem\n\t\t\t\t\t\t\t\tname={ name }\n\t\t\t\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ButtonColorItem\n\t\t\t\t\t\t\t\tname={ name }\n\t\t\t\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t</VStack>\n\t\t\t\t</VStack>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default ScreenColors;\n"]}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var _element = require("@wordpress/element");
|
|
11
|
+
|
|
12
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
|
+
|
|
14
|
+
var _i18n = require("@wordpress/i18n");
|
|
15
|
+
|
|
16
|
+
var _components = require("@wordpress/components");
|
|
17
|
+
|
|
18
|
+
var _blockEditor = require("@wordpress/block-editor");
|
|
19
|
+
|
|
20
|
+
var _header = _interopRequireDefault(require("./header"));
|
|
21
|
+
|
|
22
|
+
var _hooks = require("./hooks");
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* WordPress dependencies
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Internal dependencies
|
|
30
|
+
*/
|
|
31
|
+
function ScreenHeadingColor(_ref) {
|
|
32
|
+
let {
|
|
33
|
+
name
|
|
34
|
+
} = _ref;
|
|
35
|
+
const [selectedLevel, setCurrentTab] = (0, _element.useState)('heading');
|
|
36
|
+
const supports = (0, _hooks.getSupportedGlobalStylesPanels)(name);
|
|
37
|
+
const [solids] = (0, _hooks.useSetting)('color.palette', name);
|
|
38
|
+
const [gradients] = (0, _hooks.useSetting)('color.gradients', name);
|
|
39
|
+
const [areCustomSolidsEnabled] = (0, _hooks.useSetting)('color.custom', name);
|
|
40
|
+
const [areCustomGradientsEnabled] = (0, _hooks.useSetting)('color.customGradient', name);
|
|
41
|
+
const [isTextEnabled] = (0, _hooks.useSetting)('color.text', name);
|
|
42
|
+
const [isBackgroundEnabled] = (0, _hooks.useSetting)('color.background', name);
|
|
43
|
+
const colorsPerOrigin = (0, _hooks.useColorsPerOrigin)(name);
|
|
44
|
+
const gradientsPerOrigin = (0, _hooks.useGradientsPerOrigin)(name);
|
|
45
|
+
const hasTextColor = supports.includes('color') && isTextEnabled && (solids.length > 0 || areCustomSolidsEnabled);
|
|
46
|
+
const hasBackgroundColor = supports.includes('backgroundColor') && isBackgroundEnabled && (solids.length > 0 || areCustomSolidsEnabled);
|
|
47
|
+
const hasGradientColor = supports.includes('background') && (gradients.length > 0 || areCustomGradientsEnabled);
|
|
48
|
+
const [color, setColor] = (0, _hooks.useStyle)('elements.' + selectedLevel + '.color.text', name);
|
|
49
|
+
const [userColor] = (0, _hooks.useStyle)('elements.' + selectedLevel + '.color.text', name, 'user');
|
|
50
|
+
const [backgroundColor, setBackgroundColor] = (0, _hooks.useStyle)('elements.' + selectedLevel + '.color.background', name);
|
|
51
|
+
const [userBackgroundColor] = (0, _hooks.useStyle)('elements.' + selectedLevel + '.color.background', name, 'user');
|
|
52
|
+
const [gradient, setGradient] = (0, _hooks.useStyle)('elements.' + selectedLevel + '.color.gradient', name);
|
|
53
|
+
const [userGradient] = (0, _hooks.useStyle)('elements.' + selectedLevel + '.color.gradient', name, 'user');
|
|
54
|
+
|
|
55
|
+
if (!hasTextColor && !hasBackgroundColor && !hasGradientColor) {
|
|
56
|
+
return null;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
let backgroundSettings = {};
|
|
60
|
+
|
|
61
|
+
if (hasBackgroundColor) {
|
|
62
|
+
backgroundSettings = {
|
|
63
|
+
colorValue: backgroundColor,
|
|
64
|
+
onColorChange: setBackgroundColor
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
if (backgroundColor) {
|
|
68
|
+
backgroundSettings.clearable = backgroundColor === userBackgroundColor;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
let gradientSettings = {};
|
|
73
|
+
|
|
74
|
+
if (hasGradientColor) {
|
|
75
|
+
gradientSettings = {
|
|
76
|
+
gradientValue: gradient,
|
|
77
|
+
onGradientChange: setGradient
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
if (gradient) {
|
|
81
|
+
gradientSettings.clearable = gradient === userGradient;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
const controlProps = { ...backgroundSettings,
|
|
86
|
+
...gradientSettings
|
|
87
|
+
};
|
|
88
|
+
return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_header.default, {
|
|
89
|
+
title: (0, _i18n.__)('Headings'),
|
|
90
|
+
description: (0, _i18n.__)('Set the default color used for headings across the site.')
|
|
91
|
+
}), (0, _element.createElement)("div", {
|
|
92
|
+
className: "edit-site-global-styles-screen-heading-color"
|
|
93
|
+
}, (0, _element.createElement)("h4", null, (0, _i18n.__)('Select heading level')), (0, _element.createElement)(_components.__experimentalToggleGroupControl, {
|
|
94
|
+
label: (0, _i18n.__)('Select heading level'),
|
|
95
|
+
hideLabelFromVision: true,
|
|
96
|
+
value: selectedLevel,
|
|
97
|
+
onChange: setCurrentTab,
|
|
98
|
+
isBlock: true
|
|
99
|
+
}, (0, _element.createElement)(_components.__experimentalToggleGroupControlOption, {
|
|
100
|
+
value: "heading"
|
|
101
|
+
/* translators: 'All' refers to selecting all heading levels
|
|
102
|
+
and applying the same style to h1-h6. */
|
|
103
|
+
,
|
|
104
|
+
label: (0, _i18n.__)('All')
|
|
105
|
+
}), (0, _element.createElement)(_components.__experimentalToggleGroupControlOption, {
|
|
106
|
+
value: "h1",
|
|
107
|
+
label: (0, _i18n.__)('H1')
|
|
108
|
+
}), (0, _element.createElement)(_components.__experimentalToggleGroupControlOption, {
|
|
109
|
+
value: "h2",
|
|
110
|
+
label: (0, _i18n.__)('H2')
|
|
111
|
+
}), (0, _element.createElement)(_components.__experimentalToggleGroupControlOption, {
|
|
112
|
+
value: "h3",
|
|
113
|
+
label: (0, _i18n.__)('H3')
|
|
114
|
+
}), (0, _element.createElement)(_components.__experimentalToggleGroupControlOption, {
|
|
115
|
+
value: "h4",
|
|
116
|
+
label: (0, _i18n.__)('H4')
|
|
117
|
+
}), (0, _element.createElement)(_components.__experimentalToggleGroupControlOption, {
|
|
118
|
+
value: "h5",
|
|
119
|
+
label: (0, _i18n.__)('H5')
|
|
120
|
+
}), (0, _element.createElement)(_components.__experimentalToggleGroupControlOption, {
|
|
121
|
+
value: "h6",
|
|
122
|
+
label: (0, _i18n.__)('H6')
|
|
123
|
+
}))), hasTextColor && (0, _element.createElement)("div", {
|
|
124
|
+
className: "edit-site-global-styles-screen-heading-color"
|
|
125
|
+
}, (0, _element.createElement)("h4", null, selectedLevel === 'heading' ? (0, _i18n.__)('Text color for all heading levels') : (0, _i18n.sprintf)(
|
|
126
|
+
/* translators: %s: heading level (h1-h6) */
|
|
127
|
+
(0, _i18n.__)('Text color for %s'), selectedLevel.toUpperCase())), (0, _element.createElement)(_blockEditor.__experimentalColorGradientControl, {
|
|
128
|
+
className: "edit-site-screen-heading-text-color__control",
|
|
129
|
+
colors: colorsPerOrigin,
|
|
130
|
+
disableCustomColors: !areCustomSolidsEnabled,
|
|
131
|
+
__experimentalHasMultipleOrigins: true,
|
|
132
|
+
showTitle: false,
|
|
133
|
+
enableAlpha: true,
|
|
134
|
+
__experimentalIsRenderedInSidebar: true,
|
|
135
|
+
colorValue: color,
|
|
136
|
+
onColorChange: setColor,
|
|
137
|
+
clearable: color === userColor
|
|
138
|
+
})), hasBackgroundColor && (0, _element.createElement)("div", {
|
|
139
|
+
className: "edit-site-global-styles-screen-heading-color"
|
|
140
|
+
}, (0, _element.createElement)("h4", null, selectedLevel === 'heading' ? (0, _i18n.__)('Background color for all heading levels') : (0, _i18n.sprintf)(
|
|
141
|
+
/* translators: %s: heading level (h1-h6) */
|
|
142
|
+
(0, _i18n.__)('Background color for %s'), selectedLevel.toUpperCase())), (0, _element.createElement)(_blockEditor.__experimentalColorGradientControl, (0, _extends2.default)({
|
|
143
|
+
className: "edit-site-screen-heading-background-color__control",
|
|
144
|
+
colors: colorsPerOrigin,
|
|
145
|
+
gradients: gradientsPerOrigin,
|
|
146
|
+
disableCustomColors: !areCustomSolidsEnabled,
|
|
147
|
+
disableCustomGradients: !areCustomGradientsEnabled,
|
|
148
|
+
__experimentalHasMultipleOrigins: true,
|
|
149
|
+
showTitle: false,
|
|
150
|
+
enableAlpha: true,
|
|
151
|
+
__experimentalIsRenderedInSidebar: true
|
|
152
|
+
}, controlProps))));
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
var _default = ScreenHeadingColor;
|
|
156
|
+
exports.default = _default;
|
|
157
|
+
//# sourceMappingURL=screen-heading-color.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/screen-heading-color.js"],"names":["ScreenHeadingColor","name","selectedLevel","setCurrentTab","supports","solids","gradients","areCustomSolidsEnabled","areCustomGradientsEnabled","isTextEnabled","isBackgroundEnabled","colorsPerOrigin","gradientsPerOrigin","hasTextColor","includes","length","hasBackgroundColor","hasGradientColor","color","setColor","userColor","backgroundColor","setBackgroundColor","userBackgroundColor","gradient","setGradient","userGradient","backgroundSettings","colorValue","onColorChange","clearable","gradientSettings","gradientValue","onGradientChange","controlProps","toUpperCase"],"mappings":";;;;;;;;;AASA;;;;AANA;;AACA;;AAIA;;AAMA;;AACA;;AAfA;AACA;AACA;;AASA;AACA;AACA;AAUA,SAASA,kBAAT,OAAwC;AAAA,MAAX;AAAEC,IAAAA;AAAF,GAAW;AACvC,QAAM,CAAEC,aAAF,EAAiBC,aAAjB,IAAmC,uBAAU,SAAV,CAAzC;AAEA,QAAMC,QAAQ,GAAG,2CAAgCH,IAAhC,CAAjB;AACA,QAAM,CAAEI,MAAF,IAAa,uBAAY,eAAZ,EAA6BJ,IAA7B,CAAnB;AACA,QAAM,CAAEK,SAAF,IAAgB,uBAAY,iBAAZ,EAA+BL,IAA/B,CAAtB;AACA,QAAM,CAAEM,sBAAF,IAA6B,uBAAY,cAAZ,EAA4BN,IAA5B,CAAnC;AACA,QAAM,CAAEO,yBAAF,IAAgC,uBACrC,sBADqC,EAErCP,IAFqC,CAAtC;AAIA,QAAM,CAAEQ,aAAF,IAAoB,uBAAY,YAAZ,EAA0BR,IAA1B,CAA1B;AACA,QAAM,CAAES,mBAAF,IAA0B,uBAAY,kBAAZ,EAAgCT,IAAhC,CAAhC;AAEA,QAAMU,eAAe,GAAG,+BAAoBV,IAApB,CAAxB;AACA,QAAMW,kBAAkB,GAAG,kCAAuBX,IAAvB,CAA3B;AAEA,QAAMY,YAAY,GACjBT,QAAQ,CAACU,QAAT,CAAmB,OAAnB,KACAL,aADA,KAEEJ,MAAM,CAACU,MAAP,GAAgB,CAAhB,IAAqBR,sBAFvB,CADD;AAKA,QAAMS,kBAAkB,GACvBZ,QAAQ,CAACU,QAAT,CAAmB,iBAAnB,KACAJ,mBADA,KAEEL,MAAM,CAACU,MAAP,GAAgB,CAAhB,IAAqBR,sBAFvB,CADD;AAIA,QAAMU,gBAAgB,GACrBb,QAAQ,CAACU,QAAT,CAAmB,YAAnB,MACER,SAAS,CAACS,MAAV,GAAmB,CAAnB,IAAwBP,yBAD1B,CADD;AAIA,QAAM,CAAEU,KAAF,EAASC,QAAT,IAAsB,qBAC3B,cAAcjB,aAAd,GAA8B,aADH,EAE3BD,IAF2B,CAA5B;AAIA,QAAM,CAAEmB,SAAF,IAAgB,qBACrB,cAAclB,aAAd,GAA8B,aADT,EAErBD,IAFqB,EAGrB,MAHqB,CAAtB;AAMA,QAAM,CAAEoB,eAAF,EAAmBC,kBAAnB,IAA0C,qBAC/C,cAAcpB,aAAd,GAA8B,mBADiB,EAE/CD,IAF+C,CAAhD;AAIA,QAAM,CAAEsB,mBAAF,IAA0B,qBAC/B,cAAcrB,aAAd,GAA8B,mBADC,EAE/BD,IAF+B,EAG/B,MAH+B,CAAhC;AAKA,QAAM,CAAEuB,QAAF,EAAYC,WAAZ,IAA4B,qBACjC,cAAcvB,aAAd,GAA8B,iBADG,EAEjCD,IAFiC,CAAlC;AAIA,QAAM,CAAEyB,YAAF,IAAmB,qBACxB,cAAcxB,aAAd,GAA8B,iBADN,EAExBD,IAFwB,EAGxB,MAHwB,CAAzB;;AAMA,MAAK,CAAEY,YAAF,IAAkB,CAAEG,kBAApB,IAA0C,CAAEC,gBAAjD,EAAoE;AACnE,WAAO,IAAP;AACA;;AAED,MAAIU,kBAAkB,GAAG,EAAzB;;AACA,MAAKX,kBAAL,EAA0B;AACzBW,IAAAA,kBAAkB,GAAG;AACpBC,MAAAA,UAAU,EAAEP,eADQ;AAEpBQ,MAAAA,aAAa,EAAEP;AAFK,KAArB;;AAIA,QAAKD,eAAL,EAAuB;AACtBM,MAAAA,kBAAkB,CAACG,SAAnB,GACCT,eAAe,KAAKE,mBADrB;AAEA;AACD;;AAED,MAAIQ,gBAAgB,GAAG,EAAvB;;AACA,MAAKd,gBAAL,EAAwB;AACvBc,IAAAA,gBAAgB,GAAG;AAClBC,MAAAA,aAAa,EAAER,QADG;AAElBS,MAAAA,gBAAgB,EAAER;AAFA,KAAnB;;AAIA,QAAKD,QAAL,EAAgB;AACfO,MAAAA,gBAAgB,CAACD,SAAjB,GAA6BN,QAAQ,KAAKE,YAA1C;AACA;AACD;;AAED,QAAMQ,YAAY,GAAG,EACpB,GAAGP,kBADiB;AAEpB,OAAGI;AAFiB,GAArB;AAKA,SACC,qDACC,4BAAC,eAAD;AACC,IAAA,KAAK,EAAG,cAAI,UAAJ,CADT;AAEC,IAAA,WAAW,EAAG,cACb,0DADa;AAFf,IADD,EAOC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,wCAAM,cAAI,sBAAJ,CAAN,CADD,EAGC,4BAAC,4CAAD;AACC,IAAA,KAAK,EAAG,cAAI,sBAAJ,CADT;AAEC,IAAA,mBAAmB,EAAG,IAFvB;AAGC,IAAA,KAAK,EAAG7B,aAHT;AAIC,IAAA,QAAQ,EAAGC,aAJZ;AAKC,IAAA,OAAO;AALR,KAOC,4BAAC,kDAAD;AACC,IAAA,KAAK,EAAC;AACN;AACN;AAHK;AAIC,IAAA,KAAK,EAAG,cAAI,KAAJ;AAJT,IAPD,EAaC,4BAAC,kDAAD;AAA0B,IAAA,KAAK,EAAC,IAAhC;AAAqC,IAAA,KAAK,EAAG,cAAI,IAAJ;AAA7C,IAbD,EAcC,4BAAC,kDAAD;AAA0B,IAAA,KAAK,EAAC,IAAhC;AAAqC,IAAA,KAAK,EAAG,cAAI,IAAJ;AAA7C,IAdD,EAeC,4BAAC,kDAAD;AAA0B,IAAA,KAAK,EAAC,IAAhC;AAAqC,IAAA,KAAK,EAAG,cAAI,IAAJ;AAA7C,IAfD,EAgBC,4BAAC,kDAAD;AAA0B,IAAA,KAAK,EAAC,IAAhC;AAAqC,IAAA,KAAK,EAAG,cAAI,IAAJ;AAA7C,IAhBD,EAiBC,4BAAC,kDAAD;AAA0B,IAAA,KAAK,EAAC,IAAhC;AAAqC,IAAA,KAAK,EAAG,cAAI,IAAJ;AAA7C,IAjBD,EAkBC,4BAAC,kDAAD;AAA0B,IAAA,KAAK,EAAC,IAAhC;AAAqC,IAAA,KAAK,EAAG,cAAI,IAAJ;AAA7C,IAlBD,CAHD,CAPD,EA+BGU,YAAY,IACb;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,wCACGX,aAAa,KAAK,SAAlB,GACC,cAAI,mCAAJ,CADD,GAEC;AACA;AACA,gBAAI,mBAAJ,CAFA,EAGAA,aAAa,CAACiC,WAAd,EAHA,CAHJ,CADD,EAUC,4BAAC,+CAAD;AACC,IAAA,SAAS,EAAC,8CADX;AAEC,IAAA,MAAM,EAAGxB,eAFV;AAGC,IAAA,mBAAmB,EAAG,CAAEJ,sBAHzB;AAIC,IAAA,gCAAgC,MAJjC;AAKC,IAAA,SAAS,EAAG,KALb;AAMC,IAAA,WAAW,MANZ;AAOC,IAAA,iCAAiC,MAPlC;AAQC,IAAA,UAAU,EAAGW,KARd;AASC,IAAA,aAAa,EAAGC,QATjB;AAUC,IAAA,SAAS,EAAGD,KAAK,KAAKE;AAVvB,IAVD,CAhCF,EAwDGJ,kBAAkB,IACnB;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,wCACGd,aAAa,KAAK,SAAlB,GACC,cAAI,yCAAJ,CADD,GAEC;AACA;AACA,gBAAI,yBAAJ,CAFA,EAGAA,aAAa,CAACiC,WAAd,EAHA,CAHJ,CADD,EAUC,4BAAC,+CAAD;AACC,IAAA,SAAS,EAAC,oDADX;AAEC,IAAA,MAAM,EAAGxB,eAFV;AAGC,IAAA,SAAS,EAAGC,kBAHb;AAIC,IAAA,mBAAmB,EAAG,CAAEL,sBAJzB;AAKC,IAAA,sBAAsB,EAAG,CAAEC,yBAL5B;AAMC,IAAA,gCAAgC,MANjC;AAOC,IAAA,SAAS,EAAG,KAPb;AAQC,IAAA,WAAW,MARZ;AASC,IAAA,iCAAiC;AATlC,KAUM0B,YAVN,EAVD,CAzDF,CADD;AAoFA;;eAEclC,kB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { sprintf, __ } from '@wordpress/i18n';\nimport {\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n} from '@wordpress/components';\nimport { __experimentalColorGradientControl as ColorGradientControl } from '@wordpress/block-editor';\nimport { useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from './header';\nimport {\n\tgetSupportedGlobalStylesPanels,\n\tuseSetting,\n\tuseStyle,\n\tuseColorsPerOrigin,\n\tuseGradientsPerOrigin,\n} from './hooks';\n\nfunction ScreenHeadingColor( { name } ) {\n\tconst [ selectedLevel, setCurrentTab ] = useState( 'heading' );\n\n\tconst supports = getSupportedGlobalStylesPanels( name );\n\tconst [ solids ] = useSetting( 'color.palette', name );\n\tconst [ gradients ] = useSetting( 'color.gradients', name );\n\tconst [ areCustomSolidsEnabled ] = useSetting( 'color.custom', name );\n\tconst [ areCustomGradientsEnabled ] = useSetting(\n\t\t'color.customGradient',\n\t\tname\n\t);\n\tconst [ isTextEnabled ] = useSetting( 'color.text', name );\n\tconst [ isBackgroundEnabled ] = useSetting( 'color.background', name );\n\n\tconst colorsPerOrigin = useColorsPerOrigin( name );\n\tconst gradientsPerOrigin = useGradientsPerOrigin( name );\n\n\tconst hasTextColor =\n\t\tsupports.includes( 'color' ) &&\n\t\tisTextEnabled &&\n\t\t( solids.length > 0 || areCustomSolidsEnabled );\n\n\tconst hasBackgroundColor =\n\t\tsupports.includes( 'backgroundColor' ) &&\n\t\tisBackgroundEnabled &&\n\t\t( solids.length > 0 || areCustomSolidsEnabled );\n\tconst hasGradientColor =\n\t\tsupports.includes( 'background' ) &&\n\t\t( gradients.length > 0 || areCustomGradientsEnabled );\n\n\tconst [ color, setColor ] = useStyle(\n\t\t'elements.' + selectedLevel + '.color.text',\n\t\tname\n\t);\n\tconst [ userColor ] = useStyle(\n\t\t'elements.' + selectedLevel + '.color.text',\n\t\tname,\n\t\t'user'\n\t);\n\n\tconst [ backgroundColor, setBackgroundColor ] = useStyle(\n\t\t'elements.' + selectedLevel + '.color.background',\n\t\tname\n\t);\n\tconst [ userBackgroundColor ] = useStyle(\n\t\t'elements.' + selectedLevel + '.color.background',\n\t\tname,\n\t\t'user'\n\t);\n\tconst [ gradient, setGradient ] = useStyle(\n\t\t'elements.' + selectedLevel + '.color.gradient',\n\t\tname\n\t);\n\tconst [ userGradient ] = useStyle(\n\t\t'elements.' + selectedLevel + '.color.gradient',\n\t\tname,\n\t\t'user'\n\t);\n\n\tif ( ! hasTextColor && ! hasBackgroundColor && ! hasGradientColor ) {\n\t\treturn null;\n\t}\n\n\tlet backgroundSettings = {};\n\tif ( hasBackgroundColor ) {\n\t\tbackgroundSettings = {\n\t\t\tcolorValue: backgroundColor,\n\t\t\tonColorChange: setBackgroundColor,\n\t\t};\n\t\tif ( backgroundColor ) {\n\t\t\tbackgroundSettings.clearable =\n\t\t\t\tbackgroundColor === userBackgroundColor;\n\t\t}\n\t}\n\n\tlet gradientSettings = {};\n\tif ( hasGradientColor ) {\n\t\tgradientSettings = {\n\t\t\tgradientValue: gradient,\n\t\t\tonGradientChange: setGradient,\n\t\t};\n\t\tif ( gradient ) {\n\t\t\tgradientSettings.clearable = gradient === userGradient;\n\t\t}\n\t}\n\n\tconst controlProps = {\n\t\t...backgroundSettings,\n\t\t...gradientSettings,\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'Headings' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Set the default color used for headings across the site.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t<div className=\"edit-site-global-styles-screen-heading-color\">\n\t\t\t\t<h4>{ __( 'Select heading level' ) }</h4>\n\n\t\t\t\t<ToggleGroupControl\n\t\t\t\t\tlabel={ __( 'Select heading level' ) }\n\t\t\t\t\thideLabelFromVision={ true }\n\t\t\t\t\tvalue={ selectedLevel }\n\t\t\t\t\tonChange={ setCurrentTab }\n\t\t\t\t\tisBlock\n\t\t\t\t>\n\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\tvalue=\"heading\"\n\t\t\t\t\t\t/* translators: 'All' refers to selecting all heading levels \n\t\t\t\t\t\tand applying the same style to h1-h6. */\n\t\t\t\t\t\tlabel={ __( 'All' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleGroupControlOption value=\"h1\" label={ __( 'H1' ) } />\n\t\t\t\t\t<ToggleGroupControlOption value=\"h2\" label={ __( 'H2' ) } />\n\t\t\t\t\t<ToggleGroupControlOption value=\"h3\" label={ __( 'H3' ) } />\n\t\t\t\t\t<ToggleGroupControlOption value=\"h4\" label={ __( 'H4' ) } />\n\t\t\t\t\t<ToggleGroupControlOption value=\"h5\" label={ __( 'H5' ) } />\n\t\t\t\t\t<ToggleGroupControlOption value=\"h6\" label={ __( 'H6' ) } />\n\t\t\t\t</ToggleGroupControl>\n\t\t\t</div>\n\t\t\t{ hasTextColor && (\n\t\t\t\t<div className=\"edit-site-global-styles-screen-heading-color\">\n\t\t\t\t\t<h4>\n\t\t\t\t\t\t{ selectedLevel === 'heading'\n\t\t\t\t\t\t\t? __( 'Text color for all heading levels' )\n\t\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %s: heading level (h1-h6) */\n\t\t\t\t\t\t\t\t\t__( 'Text color for %s' ),\n\t\t\t\t\t\t\t\t\tselectedLevel.toUpperCase()\n\t\t\t\t\t\t\t ) }\n\t\t\t\t\t</h4>\n\t\t\t\t\t<ColorGradientControl\n\t\t\t\t\t\tclassName=\"edit-site-screen-heading-text-color__control\"\n\t\t\t\t\t\tcolors={ colorsPerOrigin }\n\t\t\t\t\t\tdisableCustomColors={ ! areCustomSolidsEnabled }\n\t\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t\tshowTitle={ false }\n\t\t\t\t\t\tenableAlpha\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tcolorValue={ color }\n\t\t\t\t\t\tonColorChange={ setColor }\n\t\t\t\t\t\tclearable={ color === userColor }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ hasBackgroundColor && (\n\t\t\t\t<div className=\"edit-site-global-styles-screen-heading-color\">\n\t\t\t\t\t<h4>\n\t\t\t\t\t\t{ selectedLevel === 'heading'\n\t\t\t\t\t\t\t? __( 'Background color for all heading levels' )\n\t\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %s: heading level (h1-h6) */\n\t\t\t\t\t\t\t\t\t__( 'Background color for %s' ),\n\t\t\t\t\t\t\t\t\tselectedLevel.toUpperCase()\n\t\t\t\t\t\t\t ) }\n\t\t\t\t\t</h4>\n\t\t\t\t\t<ColorGradientControl\n\t\t\t\t\t\tclassName=\"edit-site-screen-heading-background-color__control\"\n\t\t\t\t\t\tcolors={ colorsPerOrigin }\n\t\t\t\t\t\tgradients={ gradientsPerOrigin }\n\t\t\t\t\t\tdisableCustomColors={ ! areCustomSolidsEnabled }\n\t\t\t\t\t\tdisableCustomGradients={ ! areCustomGradientsEnabled }\n\t\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t\tshowTitle={ false }\n\t\t\t\t\t\tenableAlpha\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t{ ...controlProps }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default ScreenHeadingColor;\n"]}
|