@wordpress/block-library 9.12.1-next.082ed6819.0 → 9.13.1-next.cd6172eb0.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 +2 -0
- package/build/block/edit.js +2 -29
- package/build/block/edit.js.map +1 -1
- package/build/cover/edit/index.js +4 -2
- package/build/cover/edit/index.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +6 -4
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/list-item/hooks/use-merge.js +2 -2
- package/build/list-item/hooks/use-merge.js.map +1 -1
- package/build/navigation/edit/deleted-navigation-warning.js +9 -2
- package/build/navigation/edit/deleted-navigation-warning.js.map +1 -1
- package/build/navigation-submenu/edit.js +3 -0
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/pattern/recursion-detector.js +0 -1
- package/build/pattern/recursion-detector.js.map +1 -1
- package/build/query/edit/index.js +2 -2
- package/build/query/edit/index.js.map +1 -1
- package/build/query/edit/inspector-controls/author-control.js +0 -1
- package/build/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build/query/edit/inspector-controls/parent-control.js +0 -1
- package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js +0 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build/query/edit/{pattern-selection-modal.js → pattern-selection.js} +55 -36
- package/build/query/edit/pattern-selection.js.map +1 -0
- package/build/query/edit/query-content.js +5 -8
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/edit/query-placeholder.js +5 -11
- package/build/query/edit/query-placeholder.js.map +1 -1
- package/build/query/edit/query-toolbar.js +31 -11
- package/build/query/edit/query-toolbar.js.map +1 -1
- package/build/separator/deprecated.js +2 -1
- package/build/separator/deprecated.js.map +1 -1
- package/build/separator/edit.js +29 -4
- package/build/separator/edit.js.map +1 -1
- package/build/separator/index.js +5 -0
- package/build/separator/index.js.map +1 -1
- package/build/separator/save.js +3 -2
- package/build/separator/save.js.map +1 -1
- package/build/social-link/edit.js +35 -1
- package/build/social-link/edit.js.map +1 -1
- package/build/social-link/index.js +4 -2
- package/build/social-link/index.js.map +1 -1
- package/build/template-part/edit/import-controls.js +0 -1
- package/build/template-part/edit/import-controls.js.map +1 -1
- package/build-module/block/edit.js +3 -30
- package/build-module/block/edit.js.map +1 -1
- package/build-module/cover/edit/index.js +4 -2
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +6 -4
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/list-item/hooks/use-merge.js +2 -2
- package/build-module/list-item/hooks/use-merge.js.map +1 -1
- package/build-module/navigation/edit/deleted-navigation-warning.js +10 -3
- package/build-module/navigation/edit/deleted-navigation-warning.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +3 -0
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/pattern/recursion-detector.js +0 -1
- package/build-module/pattern/recursion-detector.js.map +1 -1
- package/build-module/query/edit/index.js +1 -1
- package/build-module/query/edit/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/author-control.js +0 -1
- package/build-module/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/parent-control.js +0 -1
- package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js +0 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build-module/query/edit/{pattern-selection-modal.js → pattern-selection.js} +53 -36
- package/build-module/query/edit/pattern-selection.js.map +1 -0
- package/build-module/query/edit/query-content.js +5 -8
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/edit/query-placeholder.js +6 -12
- package/build-module/query/edit/query-placeholder.js.map +1 -1
- package/build-module/query/edit/query-toolbar.js +31 -13
- package/build-module/query/edit/query-toolbar.js.map +1 -1
- package/build-module/separator/deprecated.js +2 -1
- package/build-module/separator/deprecated.js.map +1 -1
- package/build-module/separator/edit.js +32 -7
- package/build-module/separator/edit.js.map +1 -1
- package/build-module/separator/index.js +5 -0
- package/build-module/separator/index.js.map +1 -1
- package/build-module/separator/save.js +3 -2
- package/build-module/separator/save.js.map +1 -1
- package/build-module/social-link/edit.js +37 -3
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-link/index.js +4 -2
- package/build-module/social-link/index.js.map +1 -1
- package/build-module/template-part/edit/import-controls.js +0 -1
- package/build-module/template-part/edit/import-controls.js.map +1 -1
- package/build-style/comments-pagination/editor-rtl.css +1 -0
- package/build-style/comments-pagination/editor.css +1 -0
- package/build-style/comments-pagination/style-rtl.css +1 -0
- package/build-style/comments-pagination/style.css +1 -0
- package/build-style/editor-rtl.css +35 -0
- package/build-style/editor.css +35 -0
- package/build-style/image/style-rtl.css +3 -2
- package/build-style/image/style.css +3 -2
- package/build-style/pullquote/style-rtl.css +1 -0
- package/build-style/pullquote/style.css +1 -0
- package/build-style/query/editor-rtl.css +30 -0
- package/build-style/query/editor.css +30 -0
- package/build-style/social-link/editor-rtl.css +4 -0
- package/build-style/social-link/editor.css +4 -0
- package/build-style/style-rtl.css +5 -2
- package/build-style/style.css +5 -2
- package/build-types/lock-unlock.d.ts +1 -1
- package/build-types/lock-unlock.d.ts.map +1 -1
- package/package.json +34 -34
- package/src/block/edit.js +6 -51
- package/src/comments-pagination/editor.scss +1 -0
- package/src/comments-pagination/style.scss +1 -0
- package/src/cover/edit/index.js +4 -1
- package/src/cover/edit/inspector-controls.js +10 -3
- package/src/cover/index.php +2 -2
- package/src/image/style.scss +4 -3
- package/src/list-item/hooks/use-merge.js +2 -2
- package/src/missing/test/edit.native.js +0 -1
- package/src/navigation/README.md +1 -0
- package/src/navigation/edit/deleted-navigation-warning.js +11 -2
- package/src/navigation/index.php +9 -35
- package/src/navigation-submenu/edit.js +5 -0
- package/src/navigation-submenu/index.php +17 -1
- package/src/pullquote/style.scss +1 -0
- package/src/query/edit/index.js +1 -1
- package/src/query/edit/{pattern-selection-modal.js → pattern-selection.js} +53 -33
- package/src/query/edit/query-content.js +4 -10
- package/src/query/edit/query-placeholder.js +5 -14
- package/src/query/edit/query-toolbar.js +38 -17
- package/src/query/editor.scss +30 -0
- package/src/search/index.php +3 -3
- package/src/separator/block.json +5 -0
- package/src/separator/deprecated.js +1 -0
- package/src/separator/edit.js +28 -3
- package/src/separator/save.js +2 -2
- package/src/separator/test/edit.js +1 -0
- package/src/social-link/block.json +4 -2
- package/src/social-link/edit.js +40 -0
- package/src/social-link/editor.scss +5 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/build/query/edit/pattern-selection-modal.js.map +0 -1
- package/build-module/query/edit/pattern-selection-modal.js.map +0 -1
package/CHANGELOG.md
CHANGED
package/build/block/edit.js
CHANGED
|
@@ -14,7 +14,6 @@ var _i18n = require("@wordpress/i18n");
|
|
|
14
14
|
var _blockEditor = require("@wordpress/block-editor");
|
|
15
15
|
var _patterns = require("@wordpress/patterns");
|
|
16
16
|
var _blocks = require("@wordpress/blocks");
|
|
17
|
-
var _index = require("./index");
|
|
18
17
|
var _lockUnlock = require("../lock-unlock");
|
|
19
18
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
20
19
|
/**
|
|
@@ -33,7 +32,6 @@ const {
|
|
|
33
32
|
useLayoutClasses
|
|
34
33
|
} = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
|
|
35
34
|
const {
|
|
36
|
-
isOverridableBlock,
|
|
37
35
|
hasOverridableBlocks
|
|
38
36
|
} = (0, _lockUnlock.unlock)(_patterns.privateApis);
|
|
39
37
|
const fullAlignments = ['full', 'wide', 'left', 'right'];
|
|
@@ -61,15 +59,6 @@ const useInferredLayout = (blocks, parentLayout) => {
|
|
|
61
59
|
};
|
|
62
60
|
}, [blocks, parentLayout]);
|
|
63
61
|
};
|
|
64
|
-
function setBlockEditMode(setEditMode, blocks, mode) {
|
|
65
|
-
blocks.forEach(block => {
|
|
66
|
-
const editMode = mode || (isOverridableBlock(block) ? 'contentOnly' : 'disabled');
|
|
67
|
-
setEditMode(block.clientId, editMode);
|
|
68
|
-
setBlockEditMode(setEditMode, block.innerBlocks,
|
|
69
|
-
// Disable editing for nested patterns.
|
|
70
|
-
block.name === _index.name ? 'disabled' : mode);
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
62
|
function RecursionWarning() {
|
|
74
63
|
const blockProps = (0, _blockEditor.useBlockProps)();
|
|
75
64
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
@@ -137,7 +126,6 @@ function ReusableBlockEdit({
|
|
|
137
126
|
content
|
|
138
127
|
},
|
|
139
128
|
__unstableParentLayout: parentLayout,
|
|
140
|
-
clientId: patternClientId,
|
|
141
129
|
setAttributes
|
|
142
130
|
}) {
|
|
143
131
|
const {
|
|
@@ -149,35 +137,21 @@ function ReusableBlockEdit({
|
|
|
149
137
|
});
|
|
150
138
|
const isMissing = hasResolved && !record;
|
|
151
139
|
const {
|
|
152
|
-
setBlockEditingMode,
|
|
153
140
|
__unstableMarkLastChangeAsPersistent
|
|
154
141
|
} = (0, _data.useDispatch)(_blockEditor.store);
|
|
155
142
|
const {
|
|
156
|
-
innerBlocks,
|
|
157
143
|
onNavigateToEntityRecord,
|
|
158
|
-
editingMode,
|
|
159
144
|
hasPatternOverridesSource
|
|
160
145
|
} = (0, _data.useSelect)(select => {
|
|
161
146
|
const {
|
|
162
|
-
|
|
163
|
-
getSettings,
|
|
164
|
-
getBlockEditingMode
|
|
147
|
+
getSettings
|
|
165
148
|
} = select(_blockEditor.store);
|
|
166
149
|
// For editing link to the site editor if the theme and user permissions support it.
|
|
167
150
|
return {
|
|
168
|
-
innerBlocks: getBlocks(patternClientId),
|
|
169
151
|
onNavigateToEntityRecord: getSettings().onNavigateToEntityRecord,
|
|
170
|
-
editingMode: getBlockEditingMode(patternClientId),
|
|
171
152
|
hasPatternOverridesSource: !!(0, _blocks.getBlockBindingsSource)('core/pattern-overrides')
|
|
172
153
|
};
|
|
173
|
-
}, [
|
|
174
|
-
|
|
175
|
-
// Sync the editing mode of the pattern block with the inner blocks.
|
|
176
|
-
(0, _element.useEffect)(() => {
|
|
177
|
-
setBlockEditMode(setBlockEditingMode, innerBlocks,
|
|
178
|
-
// Disable editing if the pattern itself is disabled.
|
|
179
|
-
editingMode === 'disabled' || !hasPatternOverridesSource ? 'disabled' : undefined);
|
|
180
|
-
}, [editingMode, innerBlocks, setBlockEditingMode, hasPatternOverridesSource]);
|
|
154
|
+
}, []);
|
|
181
155
|
const canOverrideBlocks = (0, _element.useMemo)(() => hasPatternOverridesSource && hasOverridableBlocks(blocks), [hasPatternOverridesSource, blocks]);
|
|
182
156
|
const {
|
|
183
157
|
alignment,
|
|
@@ -192,7 +166,6 @@ function ReusableBlockEdit({
|
|
|
192
166
|
})
|
|
193
167
|
});
|
|
194
168
|
const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)(blockProps, {
|
|
195
|
-
templateLock: 'all',
|
|
196
169
|
layout,
|
|
197
170
|
value: blocks,
|
|
198
171
|
onInput: NOOP,
|
package/build/block/edit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_data","_element","_coreData","_components","_i18n","_blockEditor","_patterns","_blocks","_index","_lockUnlock","_jsxRuntime","useLayoutClasses","unlock","blockEditorPrivateApis","isOverridableBlock","hasOverridableBlocks","patternsPrivateApis","fullAlignments","useInferredLayout","blocks","parentLayout","initialInferredAlignmentRef","useRef","useMemo","length","alignment","current","undefined","isConstrained","type","hasFullAlignment","some","block","includes","attributes","align","layout","setBlockEditMode","setEditMode","mode","forEach","editMode","clientId","innerBlocks","name","patternBlockName","RecursionWarning","blockProps","useBlockProps","jsx","children","Warning","__","NOOP","ReusableBlockEditRecursionWrapper","props","ref","hasAlreadyRendered","useHasRecursion","RecursionProvider","uniqueId","ReusableBlockEdit","ReusableBlockControl","recordId","canOverrideBlocks","hasContent","handleEditOriginal","resetContent","canUserEdit","useSelect","select","coreStore","canUser","kind","id","jsxs","Fragment","BlockControls","ToolbarGroup","ToolbarButton","onClick","disabled","content","__unstableParentLayout","patternClientId","setAttributes","record","hasResolved","useEntityRecord","useEntityBlockEditor","isMissing","setBlockEditingMode","__unstableMarkLastChangeAsPersistent","useDispatch","blockEditorStore","onNavigateToEntityRecord","editingMode","hasPatternOverridesSource","getBlocks","getSettings","getBlockEditingMode","getBlockBindingsSource","useEffect","layoutClasses","className","clsx","innerBlocksProps","useInnerBlocksProps","templateLock","value","onInput","onChange","renderAppender","InnerBlocks","ButtonBlockAppender","postId","postType","Placeholder","Spinner"],"sources":["@wordpress/block-library/src/block/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRef, useMemo, useEffect } from '@wordpress/element';\nimport {\n\tuseEntityRecord,\n\tstore as coreStore,\n\tuseEntityBlockEditor,\n} from '@wordpress/core-data';\nimport {\n\tPlaceholder,\n\tSpinner,\n\tToolbarButton,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseInnerBlocksProps,\n\tRecursionProvider,\n\tuseHasRecursion,\n\tuseBlockProps,\n\tWarning,\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n\tBlockControls,\n\tInnerBlocks,\n} from '@wordpress/block-editor';\nimport { privateApis as patternsPrivateApis } from '@wordpress/patterns';\nimport { getBlockBindingsSource } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { name as patternBlockName } from './index';\nimport { unlock } from '../lock-unlock';\n\nconst { useLayoutClasses } = unlock( blockEditorPrivateApis );\nconst { isOverridableBlock, hasOverridableBlocks } =\n\tunlock( patternsPrivateApis );\n\nconst fullAlignments = [ 'full', 'wide', 'left', 'right' ];\n\nconst useInferredLayout = ( blocks, parentLayout ) => {\n\tconst initialInferredAlignmentRef = useRef();\n\n\treturn useMemo( () => {\n\t\t// Exit early if the pattern's blocks haven't loaded yet.\n\t\tif ( ! blocks?.length ) {\n\t\t\treturn {};\n\t\t}\n\n\t\tlet alignment = initialInferredAlignmentRef.current;\n\n\t\t// Only track the initial alignment so that temporarily removed\n\t\t// alignments can be reapplied.\n\t\tif ( alignment === undefined ) {\n\t\t\tconst isConstrained = parentLayout?.type === 'constrained';\n\t\t\tconst hasFullAlignment = blocks.some( ( block ) =>\n\t\t\t\tfullAlignments.includes( block.attributes.align )\n\t\t\t);\n\n\t\t\talignment = isConstrained && hasFullAlignment ? 'full' : null;\n\t\t\tinitialInferredAlignmentRef.current = alignment;\n\t\t}\n\n\t\tconst layout = alignment ? parentLayout : undefined;\n\n\t\treturn { alignment, layout };\n\t}, [ blocks, parentLayout ] );\n};\n\nfunction setBlockEditMode( setEditMode, blocks, mode ) {\n\tblocks.forEach( ( block ) => {\n\t\tconst editMode =\n\t\t\tmode ||\n\t\t\t( isOverridableBlock( block ) ? 'contentOnly' : 'disabled' );\n\t\tsetEditMode( block.clientId, editMode );\n\n\t\tsetBlockEditMode(\n\t\t\tsetEditMode,\n\t\t\tblock.innerBlocks,\n\t\t\t// Disable editing for nested patterns.\n\t\t\tblock.name === patternBlockName ? 'disabled' : mode\n\t\t);\n\t} );\n}\n\nfunction RecursionWarning() {\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<Warning>\n\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t</Warning>\n\t\t</div>\n\t);\n}\n\nconst NOOP = () => {};\n\n// Wrap the main Edit function for the pattern block with a recursion wrapper\n// that allows short-circuiting rendering as early as possible, before any\n// of the other effects in the block edit have run.\nexport default function ReusableBlockEditRecursionWrapper( props ) {\n\tconst { ref } = props.attributes;\n\tconst hasAlreadyRendered = useHasRecursion( ref );\n\n\tif ( hasAlreadyRendered ) {\n\t\treturn <RecursionWarning />;\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ ref }>\n\t\t\t<ReusableBlockEdit { ...props } />\n\t\t</RecursionProvider>\n\t);\n}\n\nfunction ReusableBlockControl( {\n\trecordId,\n\tcanOverrideBlocks,\n\thasContent,\n\thandleEditOriginal,\n\tresetContent,\n} ) {\n\tconst canUserEdit = useSelect(\n\t\t( select ) =>\n\t\t\t!! select( coreStore ).canUser( 'update', {\n\t\t\t\tkind: 'postType',\n\t\t\t\tname: 'wp_block',\n\t\t\t\tid: recordId,\n\t\t\t} ),\n\t\t[ recordId ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ canUserEdit && !! handleEditOriginal && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton onClick={ handleEditOriginal }>\n\t\t\t\t\t\t\t{ __( 'Edit original' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\n\t\t\t{ canOverrideBlocks && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ resetContent }\n\t\t\t\t\t\t\tdisabled={ ! hasContent }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction ReusableBlockEdit( {\n\tname,\n\tattributes: { ref, content },\n\t__unstableParentLayout: parentLayout,\n\tclientId: patternClientId,\n\tsetAttributes,\n} ) {\n\tconst { record, hasResolved } = useEntityRecord(\n\t\t'postType',\n\t\t'wp_block',\n\t\tref\n\t);\n\tconst [ blocks ] = useEntityBlockEditor( 'postType', 'wp_block', {\n\t\tid: ref,\n\t} );\n\tconst isMissing = hasResolved && ! record;\n\n\tconst { setBlockEditingMode, __unstableMarkLastChangeAsPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tconst {\n\t\tinnerBlocks,\n\t\tonNavigateToEntityRecord,\n\t\teditingMode,\n\t\thasPatternOverridesSource,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlocks, getSettings, getBlockEditingMode } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\t// For editing link to the site editor if the theme and user permissions support it.\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( patternClientId ),\n\t\t\t\tonNavigateToEntityRecord:\n\t\t\t\t\tgetSettings().onNavigateToEntityRecord,\n\t\t\t\teditingMode: getBlockEditingMode( patternClientId ),\n\t\t\t\thasPatternOverridesSource: !! getBlockBindingsSource(\n\t\t\t\t\t'core/pattern-overrides'\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ patternClientId ]\n\t);\n\n\t// Sync the editing mode of the pattern block with the inner blocks.\n\tuseEffect( () => {\n\t\tsetBlockEditMode(\n\t\t\tsetBlockEditingMode,\n\t\t\tinnerBlocks,\n\t\t\t// Disable editing if the pattern itself is disabled.\n\t\t\teditingMode === 'disabled' || ! hasPatternOverridesSource\n\t\t\t\t? 'disabled'\n\t\t\t\t: undefined\n\t\t);\n\t}, [\n\t\teditingMode,\n\t\tinnerBlocks,\n\t\tsetBlockEditingMode,\n\t\thasPatternOverridesSource,\n\t] );\n\n\tconst canOverrideBlocks = useMemo(\n\t\t() => hasPatternOverridesSource && hasOverridableBlocks( blocks ),\n\t\t[ hasPatternOverridesSource, blocks ]\n\t);\n\n\tconst { alignment, layout } = useInferredLayout( blocks, parentLayout );\n\tconst layoutClasses = useLayoutClasses( { layout }, name );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx(\n\t\t\t'block-library-block__reusable-block-container',\n\t\t\tlayout && layoutClasses,\n\t\t\t{ [ `align${ alignment }` ]: alignment }\n\t\t),\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplateLock: 'all',\n\t\tlayout,\n\t\tvalue: blocks,\n\t\tonInput: NOOP,\n\t\tonChange: NOOP,\n\t\trenderAppender: blocks?.length\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\tconst handleEditOriginal = () => {\n\t\tonNavigateToEntityRecord( {\n\t\t\tpostId: ref,\n\t\t\tpostType: 'wp_block',\n\t\t} );\n\t};\n\n\tconst resetContent = () => {\n\t\tif ( content ) {\n\t\t\t// Make sure any previous changes are persisted before resetting.\n\t\t\t__unstableMarkLastChangeAsPersistent();\n\t\t\tsetAttributes( { content: undefined } );\n\t\t}\n\t};\n\n\tlet children = null;\n\n\tif ( isMissing ) {\n\t\tchildren = (\n\t\t\t<Warning>\n\t\t\t\t{ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t</Warning>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\tchildren = (\n\t\t\t<Placeholder>\n\t\t\t\t<Spinner />\n\t\t\t</Placeholder>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ hasResolved && ! isMissing && (\n\t\t\t\t<ReusableBlockControl\n\t\t\t\t\trecordId={ ref }\n\t\t\t\t\tcanOverrideBlocks={ canOverrideBlocks }\n\t\t\t\t\thasContent={ !! content }\n\t\t\t\t\thandleEditOriginal={\n\t\t\t\t\t\tonNavigateToEntityRecord\n\t\t\t\t\t\t\t? handleEditOriginal\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tresetContent={ resetContent }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t{ children === null ? (\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t) : (\n\t\t\t\t<div { ...blockProps }>{ children }</div>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AAKA,IAAAI,WAAA,GAAAJ,OAAA;AAMA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AAWA,IAAAO,SAAA,GAAAP,OAAA;AACA,IAAAQ,OAAA,GAAAR,OAAA;AAKA,IAAAS,MAAA,GAAAT,OAAA;AACA,IAAAU,WAAA,GAAAV,OAAA;AAAwC,IAAAW,WAAA,GAAAX,OAAA;AAxCxC;AACA;AACA;;AAGA;AACA;AACA;;AA6BA;AACA;AACA;;AAIA,MAAM;EAAEY;AAAiB,CAAC,GAAG,IAAAC,kBAAM,EAAEC,wBAAuB,CAAC;AAC7D,MAAM;EAAEC,kBAAkB;EAAEC;AAAqB,CAAC,GACjD,IAAAH,kBAAM,EAAEI,qBAAoB,CAAC;AAE9B,MAAMC,cAAc,GAAG,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAE;AAE1D,MAAMC,iBAAiB,GAAGA,CAAEC,MAAM,EAAEC,YAAY,KAAM;EACrD,MAAMC,2BAA2B,GAAG,IAAAC,eAAM,EAAC,CAAC;EAE5C,OAAO,IAAAC,gBAAO,EAAE,MAAM;IACrB;IACA,IAAK,CAAEJ,MAAM,EAAEK,MAAM,EAAG;MACvB,OAAO,CAAC,CAAC;IACV;IAEA,IAAIC,SAAS,GAAGJ,2BAA2B,CAACK,OAAO;;IAEnD;IACA;IACA,IAAKD,SAAS,KAAKE,SAAS,EAAG;MAC9B,MAAMC,aAAa,GAAGR,YAAY,EAAES,IAAI,KAAK,aAAa;MAC1D,MAAMC,gBAAgB,GAAGX,MAAM,CAACY,IAAI,CAAIC,KAAK,IAC5Cf,cAAc,CAACgB,QAAQ,CAAED,KAAK,CAACE,UAAU,CAACC,KAAM,CACjD,CAAC;MAEDV,SAAS,GAAGG,aAAa,IAAIE,gBAAgB,GAAG,MAAM,GAAG,IAAI;MAC7DT,2BAA2B,CAACK,OAAO,GAAGD,SAAS;IAChD;IAEA,MAAMW,MAAM,GAAGX,SAAS,GAAGL,YAAY,GAAGO,SAAS;IAEnD,OAAO;MAAEF,SAAS;MAAEW;IAAO,CAAC;EAC7B,CAAC,EAAE,CAAEjB,MAAM,EAAEC,YAAY,CAAG,CAAC;AAC9B,CAAC;AAED,SAASiB,gBAAgBA,CAAEC,WAAW,EAAEnB,MAAM,EAAEoB,IAAI,EAAG;EACtDpB,MAAM,CAACqB,OAAO,CAAIR,KAAK,IAAM;IAC5B,MAAMS,QAAQ,GACbF,IAAI,KACFzB,kBAAkB,CAAEkB,KAAM,CAAC,GAAG,aAAa,GAAG,UAAU,CAAE;IAC7DM,WAAW,CAAEN,KAAK,CAACU,QAAQ,EAAED,QAAS,CAAC;IAEvCJ,gBAAgB,CACfC,WAAW,EACXN,KAAK,CAACW,WAAW;IACjB;IACAX,KAAK,CAACY,IAAI,KAAKC,WAAgB,GAAG,UAAU,GAAGN,IAChD,CAAC;EACF,CAAE,CAAC;AACJ;AAEA,SAASO,gBAAgBA,CAAA,EAAG;EAC3B,MAAMC,UAAU,GAAG,IAAAC,0BAAa,EAAC,CAAC;EAClC,oBACC,IAAAtC,WAAA,CAAAuC,GAAA;IAAA,GAAUF,UAAU;IAAAG,QAAA,eACnB,IAAAxC,WAAA,CAAAuC,GAAA,EAAC5C,YAAA,CAAA8C,OAAO;MAAAD,QAAA,EACL,IAAAE,QAAE,EAAE,yCAA0C;IAAC,CACzC;EAAC,CACN,CAAC;AAER;AAEA,MAAMC,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;;AAErB;AACA;AACA;AACe,SAASC,iCAAiCA,CAAEC,KAAK,EAAG;EAClE,MAAM;IAAEC;EAAI,CAAC,GAAGD,KAAK,CAACrB,UAAU;EAChC,MAAMuB,kBAAkB,GAAG,IAAAC,4BAAe,EAAEF,GAAI,CAAC;EAEjD,IAAKC,kBAAkB,EAAG;IACzB,oBAAO,IAAA/C,WAAA,CAAAuC,GAAA,EAACH,gBAAgB,IAAE,CAAC;EAC5B;EAEA,oBACC,IAAApC,WAAA,CAAAuC,GAAA,EAAC5C,YAAA,CAAAsD,iBAAiB;IAACC,QAAQ,EAAGJ,GAAK;IAAAN,QAAA,eAClC,IAAAxC,WAAA,CAAAuC,GAAA,EAACY,iBAAiB;MAAA,GAAMN;IAAK,CAAI;EAAC,CAChB,CAAC;AAEtB;AAEA,SAASO,oBAAoBA,CAAE;EAC9BC,QAAQ;EACRC,iBAAiB;EACjBC,UAAU;EACVC,kBAAkB;EAClBC;AACD,CAAC,EAAG;EACH,MAAMC,WAAW,GAAG,IAAAC,eAAS,EAC1BC,MAAM,IACP,CAAC,CAAEA,MAAM,CAAEC,eAAU,CAAC,CAACC,OAAO,CAAE,QAAQ,EAAE;IACzCC,IAAI,EAAE,UAAU;IAChB7B,IAAI,EAAE,UAAU;IAChB8B,EAAE,EAAEX;EACL,CAAE,CAAC,EACJ,CAAEA,QAAQ,CACX,CAAC;EAED,oBACC,IAAArD,WAAA,CAAAiE,IAAA,EAAAjE,WAAA,CAAAkE,QAAA;IAAA1B,QAAA,GACGkB,WAAW,IAAI,CAAC,CAAEF,kBAAkB,iBACrC,IAAAxD,WAAA,CAAAuC,GAAA,EAAC5C,YAAA,CAAAwE,aAAa;MAAA3B,QAAA,eACb,IAAAxC,WAAA,CAAAuC,GAAA,EAAC9C,WAAA,CAAA2E,YAAY;QAAA5B,QAAA,eACZ,IAAAxC,WAAA,CAAAuC,GAAA,EAAC9C,WAAA,CAAA4E,aAAa;UAACC,OAAO,EAAGd,kBAAoB;UAAAhB,QAAA,EAC1C,IAAAE,QAAE,EAAE,eAAgB;QAAC,CACT;MAAC,CACH;IAAC,CACD,CACf,EAECY,iBAAiB,iBAClB,IAAAtD,WAAA,CAAAuC,GAAA,EAAC5C,YAAA,CAAAwE,aAAa;MAAA3B,QAAA,eACb,IAAAxC,WAAA,CAAAuC,GAAA,EAAC9C,WAAA,CAAA2E,YAAY;QAAA5B,QAAA,eACZ,IAAAxC,WAAA,CAAAuC,GAAA,EAAC9C,WAAA,CAAA4E,aAAa;UACbC,OAAO,EAAGb,YAAc;UACxBc,QAAQ,EAAG,CAAEhB,UAAY;UAAAf,QAAA,EAEvB,IAAAE,QAAE,EAAE,OAAQ;QAAC,CACD;MAAC,CACH;IAAC,CACD,CACf;EAAA,CACA,CAAC;AAEL;AAEA,SAASS,iBAAiBA,CAAE;EAC3BjB,IAAI;EACJV,UAAU,EAAE;IAAEsB,GAAG;IAAE0B;EAAQ,CAAC;EAC5BC,sBAAsB,EAAE/D,YAAY;EACpCsB,QAAQ,EAAE0C,eAAe;EACzBC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC,MAAM;IAAEC;EAAY,CAAC,GAAG,IAAAC,yBAAe,EAC9C,UAAU,EACV,UAAU,EACVhC,GACD,CAAC;EACD,MAAM,CAAErC,MAAM,CAAE,GAAG,IAAAsE,8BAAoB,EAAE,UAAU,EAAE,UAAU,EAAE;IAChEf,EAAE,EAAElB;EACL,CAAE,CAAC;EACH,MAAMkC,SAAS,GAAGH,WAAW,IAAI,CAAED,MAAM;EAEzC,MAAM;IAAEK,mBAAmB;IAAEC;EAAqC,CAAC,GAClE,IAAAC,iBAAW,EAAEC,kBAAiB,CAAC;EAEhC,MAAM;IACLnD,WAAW;IACXoD,wBAAwB;IACxBC,WAAW;IACXC;EACD,CAAC,GAAG,IAAA5B,eAAS,EACVC,MAAM,IAAM;IACb,MAAM;MAAE4B,SAAS;MAAEC,WAAW;MAAEC;IAAoB,CAAC,GACpD9B,MAAM,CAAEwB,kBAAiB,CAAC;IAC3B;IACA,OAAO;MACNnD,WAAW,EAAEuD,SAAS,CAAEd,eAAgB,CAAC;MACzCW,wBAAwB,EACvBI,WAAW,CAAC,CAAC,CAACJ,wBAAwB;MACvCC,WAAW,EAAEI,mBAAmB,CAAEhB,eAAgB,CAAC;MACnDa,yBAAyB,EAAE,CAAC,CAAE,IAAAI,8BAAsB,EACnD,wBACD;IACD,CAAC;EACF,CAAC,EACD,CAAEjB,eAAe,CAClB,CAAC;;EAED;EACA,IAAAkB,kBAAS,EAAE,MAAM;IAChBjE,gBAAgB,CACfsD,mBAAmB,EACnBhD,WAAW;IACX;IACAqD,WAAW,KAAK,UAAU,IAAI,CAAEC,yBAAyB,GACtD,UAAU,GACVtE,SACJ,CAAC;EACF,CAAC,EAAE,CACFqE,WAAW,EACXrD,WAAW,EACXgD,mBAAmB,EACnBM,yBAAyB,CACxB,CAAC;EAEH,MAAMjC,iBAAiB,GAAG,IAAAzC,gBAAO,EAChC,MAAM0E,yBAAyB,IAAIlF,oBAAoB,CAAEI,MAAO,CAAC,EACjE,CAAE8E,yBAAyB,EAAE9E,MAAM,CACpC,CAAC;EAED,MAAM;IAAEM,SAAS;IAAEW;EAAO,CAAC,GAAGlB,iBAAiB,CAAEC,MAAM,EAAEC,YAAa,CAAC;EACvE,MAAMmF,aAAa,GAAG5F,gBAAgB,CAAE;IAAEyB;EAAO,CAAC,EAAEQ,IAAK,CAAC;EAE1D,MAAMG,UAAU,GAAG,IAAAC,0BAAa,EAAE;IACjCwD,SAAS,EAAE,IAAAC,aAAI,EACd,+CAA+C,EAC/CrE,MAAM,IAAImE,aAAa,EACvB;MAAE,CAAE,QAAS9E,SAAS,EAAG,GAAIA;IAAU,CACxC;EACD,CAAE,CAAC;EAEH,MAAMiF,gBAAgB,GAAG,IAAAC,gCAAmB,EAAE5D,UAAU,EAAE;IACzD6D,YAAY,EAAE,KAAK;IACnBxE,MAAM;IACNyE,KAAK,EAAE1F,MAAM;IACb2F,OAAO,EAAEzD,IAAI;IACb0D,QAAQ,EAAE1D,IAAI;IACd2D,cAAc,EAAE7F,MAAM,EAAEK,MAAM,GAC3BG,SAAS,GACTsF,wBAAW,CAACC;EAChB,CAAE,CAAC;EAEH,MAAMhD,kBAAkB,GAAGA,CAAA,KAAM;IAChC6B,wBAAwB,CAAE;MACzBoB,MAAM,EAAE3D,GAAG;MACX4D,QAAQ,EAAE;IACX,CAAE,CAAC;EACJ,CAAC;EAED,MAAMjD,YAAY,GAAGA,CAAA,KAAM;IAC1B,IAAKe,OAAO,EAAG;MACd;MACAU,oCAAoC,CAAC,CAAC;MACtCP,aAAa,CAAE;QAAEH,OAAO,EAAEvD;MAAU,CAAE,CAAC;IACxC;EACD,CAAC;EAED,IAAIuB,QAAQ,GAAG,IAAI;EAEnB,IAAKwC,SAAS,EAAG;IAChBxC,QAAQ,gBACP,IAAAxC,WAAA,CAAAuC,GAAA,EAAC5C,YAAA,CAAA8C,OAAO;MAAAD,QAAA,EACL,IAAAE,QAAE,EAAE,2CAA4C;IAAC,CAC3C,CACT;EACF;EAEA,IAAK,CAAEmC,WAAW,EAAG;IACpBrC,QAAQ,gBACP,IAAAxC,WAAA,CAAAuC,GAAA,EAAC9C,WAAA,CAAAkH,WAAW;MAAAnE,QAAA,eACX,IAAAxC,WAAA,CAAAuC,GAAA,EAAC9C,WAAA,CAAAmH,OAAO,IAAE;IAAC,CACC,CACb;EACF;EAEA,oBACC,IAAA5G,WAAA,CAAAiE,IAAA,EAAAjE,WAAA,CAAAkE,QAAA;IAAA1B,QAAA,GACGqC,WAAW,IAAI,CAAEG,SAAS,iBAC3B,IAAAhF,WAAA,CAAAuC,GAAA,EAACa,oBAAoB;MACpBC,QAAQ,EAAGP,GAAK;MAChBQ,iBAAiB,EAAGA,iBAAmB;MACvCC,UAAU,EAAG,CAAC,CAAEiB,OAAS;MACzBhB,kBAAkB,EACjB6B,wBAAwB,GACrB7B,kBAAkB,GAClBvC,SACH;MACDwC,YAAY,EAAGA;IAAc,CAC7B,CACD,EAECjB,QAAQ,KAAK,IAAI,gBAClB,IAAAxC,WAAA,CAAAuC,GAAA;MAAA,GAAUyD;IAAgB,CAAI,CAAC,gBAE/B,IAAAhG,WAAA,CAAAuC,GAAA;MAAA,GAAUF,UAAU;MAAAG,QAAA,EAAKA;IAAQ,CAAO,CACxC;EAAA,CACA,CAAC;AAEL","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_data","_element","_coreData","_components","_i18n","_blockEditor","_patterns","_blocks","_lockUnlock","_jsxRuntime","useLayoutClasses","unlock","blockEditorPrivateApis","hasOverridableBlocks","patternsPrivateApis","fullAlignments","useInferredLayout","blocks","parentLayout","initialInferredAlignmentRef","useRef","useMemo","length","alignment","current","undefined","isConstrained","type","hasFullAlignment","some","block","includes","attributes","align","layout","RecursionWarning","blockProps","useBlockProps","jsx","children","Warning","__","NOOP","ReusableBlockEditRecursionWrapper","props","ref","hasAlreadyRendered","useHasRecursion","RecursionProvider","uniqueId","ReusableBlockEdit","ReusableBlockControl","recordId","canOverrideBlocks","hasContent","handleEditOriginal","resetContent","canUserEdit","useSelect","select","coreStore","canUser","kind","name","id","jsxs","Fragment","BlockControls","ToolbarGroup","ToolbarButton","onClick","disabled","content","__unstableParentLayout","setAttributes","record","hasResolved","useEntityRecord","useEntityBlockEditor","isMissing","__unstableMarkLastChangeAsPersistent","useDispatch","blockEditorStore","onNavigateToEntityRecord","hasPatternOverridesSource","getSettings","getBlockBindingsSource","layoutClasses","className","clsx","innerBlocksProps","useInnerBlocksProps","value","onInput","onChange","renderAppender","InnerBlocks","ButtonBlockAppender","postId","postType","Placeholder","Spinner"],"sources":["@wordpress/block-library/src/block/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRef, useMemo } from '@wordpress/element';\nimport {\n\tuseEntityRecord,\n\tstore as coreStore,\n\tuseEntityBlockEditor,\n} from '@wordpress/core-data';\nimport {\n\tPlaceholder,\n\tSpinner,\n\tToolbarButton,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseInnerBlocksProps,\n\tRecursionProvider,\n\tuseHasRecursion,\n\tuseBlockProps,\n\tWarning,\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n\tBlockControls,\n\tInnerBlocks,\n} from '@wordpress/block-editor';\nimport { privateApis as patternsPrivateApis } from '@wordpress/patterns';\nimport { getBlockBindingsSource } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\n\nconst { useLayoutClasses } = unlock( blockEditorPrivateApis );\nconst { hasOverridableBlocks } = unlock( patternsPrivateApis );\n\nconst fullAlignments = [ 'full', 'wide', 'left', 'right' ];\n\nconst useInferredLayout = ( blocks, parentLayout ) => {\n\tconst initialInferredAlignmentRef = useRef();\n\n\treturn useMemo( () => {\n\t\t// Exit early if the pattern's blocks haven't loaded yet.\n\t\tif ( ! blocks?.length ) {\n\t\t\treturn {};\n\t\t}\n\n\t\tlet alignment = initialInferredAlignmentRef.current;\n\n\t\t// Only track the initial alignment so that temporarily removed\n\t\t// alignments can be reapplied.\n\t\tif ( alignment === undefined ) {\n\t\t\tconst isConstrained = parentLayout?.type === 'constrained';\n\t\t\tconst hasFullAlignment = blocks.some( ( block ) =>\n\t\t\t\tfullAlignments.includes( block.attributes.align )\n\t\t\t);\n\n\t\t\talignment = isConstrained && hasFullAlignment ? 'full' : null;\n\t\t\tinitialInferredAlignmentRef.current = alignment;\n\t\t}\n\n\t\tconst layout = alignment ? parentLayout : undefined;\n\n\t\treturn { alignment, layout };\n\t}, [ blocks, parentLayout ] );\n};\n\nfunction RecursionWarning() {\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<Warning>\n\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t</Warning>\n\t\t</div>\n\t);\n}\n\nconst NOOP = () => {};\n\n// Wrap the main Edit function for the pattern block with a recursion wrapper\n// that allows short-circuiting rendering as early as possible, before any\n// of the other effects in the block edit have run.\nexport default function ReusableBlockEditRecursionWrapper( props ) {\n\tconst { ref } = props.attributes;\n\tconst hasAlreadyRendered = useHasRecursion( ref );\n\n\tif ( hasAlreadyRendered ) {\n\t\treturn <RecursionWarning />;\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ ref }>\n\t\t\t<ReusableBlockEdit { ...props } />\n\t\t</RecursionProvider>\n\t);\n}\n\nfunction ReusableBlockControl( {\n\trecordId,\n\tcanOverrideBlocks,\n\thasContent,\n\thandleEditOriginal,\n\tresetContent,\n} ) {\n\tconst canUserEdit = useSelect(\n\t\t( select ) =>\n\t\t\t!! select( coreStore ).canUser( 'update', {\n\t\t\t\tkind: 'postType',\n\t\t\t\tname: 'wp_block',\n\t\t\t\tid: recordId,\n\t\t\t} ),\n\t\t[ recordId ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ canUserEdit && !! handleEditOriginal && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton onClick={ handleEditOriginal }>\n\t\t\t\t\t\t\t{ __( 'Edit original' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\n\t\t\t{ canOverrideBlocks && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ resetContent }\n\t\t\t\t\t\t\tdisabled={ ! hasContent }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction ReusableBlockEdit( {\n\tname,\n\tattributes: { ref, content },\n\t__unstableParentLayout: parentLayout,\n\tsetAttributes,\n} ) {\n\tconst { record, hasResolved } = useEntityRecord(\n\t\t'postType',\n\t\t'wp_block',\n\t\tref\n\t);\n\tconst [ blocks ] = useEntityBlockEditor( 'postType', 'wp_block', {\n\t\tid: ref,\n\t} );\n\tconst isMissing = hasResolved && ! record;\n\n\tconst { __unstableMarkLastChangeAsPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tconst { onNavigateToEntityRecord, hasPatternOverridesSource } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSettings } = select( blockEditorStore );\n\t\t\t// For editing link to the site editor if the theme and user permissions support it.\n\t\t\treturn {\n\t\t\t\tonNavigateToEntityRecord:\n\t\t\t\t\tgetSettings().onNavigateToEntityRecord,\n\t\t\t\thasPatternOverridesSource: !! getBlockBindingsSource(\n\t\t\t\t\t'core/pattern-overrides'\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst canOverrideBlocks = useMemo(\n\t\t() => hasPatternOverridesSource && hasOverridableBlocks( blocks ),\n\t\t[ hasPatternOverridesSource, blocks ]\n\t);\n\n\tconst { alignment, layout } = useInferredLayout( blocks, parentLayout );\n\tconst layoutClasses = useLayoutClasses( { layout }, name );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx(\n\t\t\t'block-library-block__reusable-block-container',\n\t\t\tlayout && layoutClasses,\n\t\t\t{ [ `align${ alignment }` ]: alignment }\n\t\t),\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tlayout,\n\t\tvalue: blocks,\n\t\tonInput: NOOP,\n\t\tonChange: NOOP,\n\t\trenderAppender: blocks?.length\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\tconst handleEditOriginal = () => {\n\t\tonNavigateToEntityRecord( {\n\t\t\tpostId: ref,\n\t\t\tpostType: 'wp_block',\n\t\t} );\n\t};\n\n\tconst resetContent = () => {\n\t\tif ( content ) {\n\t\t\t// Make sure any previous changes are persisted before resetting.\n\t\t\t__unstableMarkLastChangeAsPersistent();\n\t\t\tsetAttributes( { content: undefined } );\n\t\t}\n\t};\n\n\tlet children = null;\n\n\tif ( isMissing ) {\n\t\tchildren = (\n\t\t\t<Warning>\n\t\t\t\t{ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t</Warning>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\tchildren = (\n\t\t\t<Placeholder>\n\t\t\t\t<Spinner />\n\t\t\t</Placeholder>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ hasResolved && ! isMissing && (\n\t\t\t\t<ReusableBlockControl\n\t\t\t\t\trecordId={ ref }\n\t\t\t\t\tcanOverrideBlocks={ canOverrideBlocks }\n\t\t\t\t\thasContent={ !! content }\n\t\t\t\t\thandleEditOriginal={\n\t\t\t\t\t\tonNavigateToEntityRecord\n\t\t\t\t\t\t\t? handleEditOriginal\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tresetContent={ resetContent }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t{ children === null ? (\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t) : (\n\t\t\t\t<div { ...blockProps }>{ children }</div>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -66,6 +66,7 @@ function CoverEdit({
|
|
|
66
66
|
postType
|
|
67
67
|
}
|
|
68
68
|
}) {
|
|
69
|
+
var _media$media_details$;
|
|
69
70
|
const {
|
|
70
71
|
contentPosition,
|
|
71
72
|
id,
|
|
@@ -96,7 +97,7 @@ function CoverEdit({
|
|
|
96
97
|
const media = (0, _data.useSelect)(select => featuredImage && select(_coreData.store).getMedia(featuredImage, {
|
|
97
98
|
context: 'view'
|
|
98
99
|
}), [featuredImage]);
|
|
99
|
-
const mediaUrl = media?.source_url;
|
|
100
|
+
const mediaUrl = (_media$media_details$ = media?.media_details?.sizes?.[sizeSlug]?.source_url) !== null && _media$media_details$ !== void 0 ? _media$media_details$ : media?.source_url;
|
|
100
101
|
|
|
101
102
|
// User can change the featured image outside of the block, but we still
|
|
102
103
|
// need to update the block when that happens. This effect should only
|
|
@@ -333,7 +334,8 @@ function CoverEdit({
|
|
|
333
334
|
currentSettings: currentSettings,
|
|
334
335
|
toggleUseFeaturedImage: toggleUseFeaturedImage,
|
|
335
336
|
updateDimRatio: onUpdateDimRatio,
|
|
336
|
-
onClearMedia: onClearMedia
|
|
337
|
+
onClearMedia: onClearMedia,
|
|
338
|
+
featuredImage: media
|
|
337
339
|
});
|
|
338
340
|
const resizableCoverProps = {
|
|
339
341
|
className: 'block-library-cover__resize-container',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_coreData","_element","_components","_compose","_blockEditor","_i18n","_data","_blob","_notices","_shared","_inspectorControls","_blockControls","_coverPlaceholder","_resizableCoverPopover","_colorUtils","_constants","_jsxRuntime","getInnerBlocksTemplate","attributes","align","placeholder","__","isTemporaryMedia","id","url","isBlobURL","CoverEdit","clientId","isSelected","overlayColor","setAttributes","setOverlayColor","toggleSelection","context","postId","postType","contentPosition","originalUrl","backgroundType","originalBackgroundType","useFeaturedImage","dimRatio","focalPoint","hasParallax","isDark","isRepeated","minHeight","minHeightUnit","alt","allowedBlocks","templateLock","tagName","TagName","isUserOverlayColor","sizeSlug","featuredImage","useEntityProp","getSettings","useSelect","blockEditorStore","__unstableMarkNextChangeAsNotPersistent","useDispatch","media","select","coreStore","getMedia","mediaUrl","source_url","useEffect","averageBackgroundColor","getMediaColor","newOverlayColor","color","newIsDark","compositeIsDark","replaceAll","IMAGE_BACKGROUND_TYPE","createErrorNotice","noticesStore","gradientClass","gradientValue","__experimentalUseGradient","onSelectMedia","newMedia","mediaAttributes","attributesFromMedia","isImage","type","media_type","includes","undefined","newDimRatio","imageDefaultSize","sizes","media_details","DEFAULT_MEDIA_SIZE_SLUG","onClearMedia","DEFAULT_OVERLAY_COLOR","DEFAULT_BACKGROUND_COLOR","onSetOverlayColor","onUpdateDimRatio","onUploadError","message","isUploadingMedia","isImageBackground","isVideoBackground","VIDEO_BACKGROUND_TYPE","blockEditingMode","useBlockEditingMode","hasNonContentControls","resizeListener","height","width","useResizeObserver","resizableBoxDimensions","useMemo","minHeightWithUnit","isImgElement","style","backgroundImage","backgroundPosition","mediaPosition","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","hasInnerBlocks","getBlock","innerBlocks","length","ref","useRef","blockProps","useBlockProps","fontSizes","useSettings","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","useInnerBlocksProps","className","template","templateInsertUpdatesSelection","dropZoneElement","current","mediaElement","currentSettings","toggleUseFeaturedImage","newUseFeaturedImage","blockControls","jsx","default","inspectorControls","coverRef","updateDimRatio","resizableCoverProps","onResizeStart","onResize","value","onResizeStop","newMinHeight","showHandle","dimensions","aspectRatio","size","jsxs","Fragment","children","clsx","onError","ColorPalette","disableCustomColors","onChange","clearable","classes","isContentPositionCenter","getPositionClassName","showOverlay","Placeholder","withIllustration","src","role","autoPlay","muted","loop","dimRatioToClass","class","Spinner","disableMediaButtons","_default","exports","compose","withColors"],"sources":["@wordpress/block-library/src/cover/edit/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useEffect, useMemo, useRef } from '@wordpress/element';\nimport { Placeholder, Spinner } from '@wordpress/components';\nimport { compose, useResizeObserver } from '@wordpress/compose';\nimport {\n\twithColors,\n\tColorPalette,\n\tuseBlockProps,\n\tuseSettings,\n\tuseInnerBlocksProps,\n\t__experimentalUseGradient,\n\tstore as blockEditorStore,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { isBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport {\n\tattributesFromMedia,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tdimRatioToClass,\n\tisContentPositionCenter,\n\tgetPositionClassName,\n\tmediaPosition,\n} from '../shared';\nimport CoverInspectorControls from './inspector-controls';\nimport CoverBlockControls from './block-controls';\nimport CoverPlaceholder from './cover-placeholder';\nimport ResizableCoverPopover from './resizable-cover-popover';\nimport {\n\tgetMediaColor,\n\tcompositeIsDark,\n\tDEFAULT_BACKGROUND_COLOR,\n\tDEFAULT_OVERLAY_COLOR,\n} from './color-utils';\nimport { DEFAULT_MEDIA_SIZE_SLUG } from '../constants';\n\nfunction getInnerBlocksTemplate( attributes ) {\n\treturn [\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\talign: 'center',\n\t\t\t\tplaceholder: __( 'Write title…' ),\n\t\t\t\t...attributes,\n\t\t\t},\n\t\t],\n\t];\n}\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily while\n * the media (image or video) is being uploaded and will not have an id allocated yet.\n *\n * @param {number} id The id of the media.\n * @param {string} url The url of the media.\n *\n * @return {boolean} Is the URL a Blob URL.\n */\nconst isTemporaryMedia = ( id, url ) => ! id && isBlobURL( url );\n\nfunction CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n\tcontext: { postId, postType },\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\turl: originalUrl,\n\t\tbackgroundType: originalBackgroundType,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t\ttagName: TagName = 'div',\n\t\tisUserOverlayColor,\n\t\tsizeSlug,\n\t} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\tconst { getSettings } = useSelect( blockEditorStore );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst media = useSelect(\n\t\t( select ) =>\n\t\t\tfeaturedImage &&\n\t\t\tselect( coreStore ).getMedia( featuredImage, { context: 'view' } ),\n\t\t[ featuredImage ]\n\t);\n\tconst mediaUrl = media?.source_url;\n\n\t// User can change the featured image outside of the block, but we still\n\t// need to update the block when that happens. This effect should only\n\t// run when the featured image changes in that case. All other cases are\n\t// handled in their respective callbacks.\n\tuseEffect( () => {\n\t\t( async () => {\n\t\t\tif ( ! useFeaturedImage ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst averageBackgroundColor = await getMediaColor( mediaUrl );\n\n\t\t\tlet newOverlayColor = overlayColor.color;\n\t\t\tif ( ! isUserOverlayColor ) {\n\t\t\t\tnewOverlayColor = averageBackgroundColor;\n\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\tsetOverlayColor( newOverlayColor );\n\t\t\t}\n\n\t\t\tconst newIsDark = compositeIsDark(\n\t\t\t\tdimRatio,\n\t\t\t\tnewOverlayColor,\n\t\t\t\taverageBackgroundColor\n\t\t\t);\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tisDark: newIsDark,\n\t\t\t\tisUserOverlayColor: isUserOverlayColor || false,\n\t\t\t} );\n\t\t} )();\n\t\t// Update the block only when the featured image changes.\n\t}, [ mediaUrl ] );\n\n\t// instead of destructuring the attributes\n\t// we define the url and background type\n\t// depending on the value of the useFeaturedImage flag\n\t// to preview in edit the dynamic featured image\n\tconst url = useFeaturedImage\n\t\t? mediaUrl\n\t\t: // Ensure the url is not malformed due to sanitization through `wp_kses`.\n\t\t originalUrl?.replaceAll( '&', '&' );\n\tconst backgroundType = useFeaturedImage\n\t\t? IMAGE_BACKGROUND_TYPE\n\t\t: originalBackgroundType;\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { gradientClass, gradientValue } = __experimentalUseGradient();\n\n\tconst onSelectMedia = async ( newMedia ) => {\n\t\tconst mediaAttributes = attributesFromMedia( newMedia );\n\t\tconst isImage = [ newMedia?.type, newMedia?.media_type ].includes(\n\t\t\tIMAGE_BACKGROUND_TYPE\n\t\t);\n\n\t\tconst averageBackgroundColor = await getMediaColor(\n\t\t\tisImage ? newMedia?.url : undefined\n\t\t);\n\n\t\tlet newOverlayColor = overlayColor.color;\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tnewOverlayColor = averageBackgroundColor;\n\t\t\tsetOverlayColor( newOverlayColor );\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\t// Only set a new dimRatio if there was no previous media selected\n\t\t// to avoid resetting to 50 if it has been explicitly set to 100.\n\t\t// See issue #52835 for context.\n\t\tconst newDimRatio =\n\t\t\toriginalUrl === undefined && dimRatio === 100 ? 50 : dimRatio;\n\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tif ( backgroundType === IMAGE_BACKGROUND_TYPE && mediaAttributes?.id ) {\n\t\t\tconst { imageDefaultSize } = getSettings();\n\n\t\t\t// Try to use the previous selected image size if it's available\n\t\t\t// otherwise try the default image size or fallback to full size.\n\t\t\tif (\n\t\t\t\tsizeSlug &&\n\t\t\t\t( newMedia?.sizes?.[ sizeSlug ] ||\n\t\t\t\t\tnewMedia?.media_details?.sizes?.[ sizeSlug ] )\n\t\t\t) {\n\t\t\t\tmediaAttributes.sizeSlug = sizeSlug;\n\t\t\t\tmediaAttributes.url =\n\t\t\t\t\tnewMedia?.sizes?.[ sizeSlug ]?.url ||\n\t\t\t\t\tnewMedia?.media_details?.sizes?.[ sizeSlug ]?.source_url;\n\t\t\t} else if (\n\t\t\t\tnewMedia?.sizes?.[ imageDefaultSize ] ||\n\t\t\t\tnewMedia?.media_details?.sizes?.[ imageDefaultSize ]\n\t\t\t) {\n\t\t\t\tmediaAttributes.sizeSlug = imageDefaultSize;\n\t\t\t\tmediaAttributes.url =\n\t\t\t\t\tnewMedia?.sizes?.[ imageDefaultSize ]?.url ||\n\t\t\t\t\tnewMedia?.media_details?.sizes?.[ imageDefaultSize ]\n\t\t\t\t\t\t?.source_url;\n\t\t\t} else {\n\t\t\t\tmediaAttributes.sizeSlug = DEFAULT_MEDIA_SIZE_SLUG;\n\t\t\t}\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\tfocalPoint: undefined,\n\t\t\tuseFeaturedImage: undefined,\n\t\t\tdimRatio: newDimRatio,\n\t\t\tisDark: newIsDark,\n\t\t\tisUserOverlayColor: isUserOverlayColor || false,\n\t\t} );\n\t};\n\n\tconst onClearMedia = () => {\n\t\tlet newOverlayColor = overlayColor.color;\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tnewOverlayColor = DEFAULT_OVERLAY_COLOR;\n\t\t\tsetOverlayColor( undefined );\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tdimRatio,\n\t\t\tnewOverlayColor,\n\t\t\tDEFAULT_BACKGROUND_COLOR\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tid: undefined,\n\t\t\tbackgroundType: undefined,\n\t\t\tfocalPoint: undefined,\n\t\t\thasParallax: undefined,\n\t\t\tisRepeated: undefined,\n\t\t\tuseFeaturedImage: undefined,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onSetOverlayColor = async ( newOverlayColor ) => {\n\t\tconst averageBackgroundColor = await getMediaColor( url );\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tdimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetOverlayColor( newOverlayColor );\n\n\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\n\t\tsetAttributes( {\n\t\t\tisUserOverlayColor: true,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onUpdateDimRatio = async ( newDimRatio ) => {\n\t\tconst averageBackgroundColor = await getMediaColor( url );\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\toverlayColor.color,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\tdimRatio: newDimRatio,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t};\n\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\n\n\tconst isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;\n\tconst isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;\n\n\tconst blockEditingMode = useBlockEditingMode();\n\tconst hasNonContentControls = blockEditingMode === 'default';\n\n\tconst [ resizeListener, { height, width } ] = useResizeObserver();\n\tconst resizableBoxDimensions = useMemo( () => {\n\t\treturn {\n\t\t\theight: minHeightUnit === 'px' ? minHeight : 'auto',\n\t\t\twidth: 'auto',\n\t\t};\n\t}, [ minHeight, minHeightUnit ] );\n\n\tconst minHeightWithUnit =\n\t\tminHeight && minHeightUnit\n\t\t\t? `${ minHeight }${ minHeightUnit }`\n\t\t\t: minHeight;\n\n\tconst isImgElement = ! ( hasParallax || isRepeated );\n\n\tconst style = {\n\t\tminHeight: minHeightWithUnit || undefined,\n\t};\n\n\tconst backgroundImage = url ? `url(${ url })` : undefined;\n\n\tconst backgroundPosition = mediaPosition( focalPoint );\n\n\tconst bgStyle = { backgroundColor: overlayColor.color };\n\tconst mediaStyle = {\n\t\tobjectPosition:\n\t\t\tfocalPoint && isImgElement\n\t\t\t\t? mediaPosition( focalPoint )\n\t\t\t\t: undefined,\n\t};\n\n\tconst hasBackground = !! ( url || overlayColor.color || gradientValue );\n\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlock( clientId ).innerBlocks.length >\n\t\t\t0,\n\t\t[ clientId ]\n\t);\n\n\tconst ref = useRef();\n\tconst blockProps = useBlockProps( { ref } );\n\n\t// Check for fontSize support before we pass a fontSize attribute to the innerBlocks.\n\tconst [ fontSizes ] = useSettings( 'typography.fontSizes' );\n\tconst hasFontSizes = fontSizes?.length > 0;\n\tconst innerBlocksTemplate = getInnerBlocksTemplate( {\n\t\tfontSize: hasFontSizes ? 'large' : undefined,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-cover__inner-container',\n\t\t},\n\t\t{\n\t\t\t// Avoid template sync when the `templateLock` value is `all` or `contentOnly`.\n\t\t\t// See: https://github.com/WordPress/gutenberg/pull/45632\n\t\t\ttemplate: ! hasInnerBlocks ? innerBlocksTemplate : undefined,\n\t\t\ttemplateInsertUpdatesSelection: true,\n\t\t\tallowedBlocks,\n\t\t\ttemplateLock,\n\t\t\tdropZoneElement: ref.current,\n\t\t}\n\t);\n\n\tconst mediaElement = useRef();\n\tconst currentSettings = {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\thasInnerBlocks,\n\t\turl,\n\t\tisImgElement,\n\t\toverlayColor,\n\t};\n\n\tconst toggleUseFeaturedImage = async () => {\n\t\tconst newUseFeaturedImage = ! useFeaturedImage;\n\n\t\tconst averageBackgroundColor = newUseFeaturedImage\n\t\t\t? await getMediaColor( mediaUrl )\n\t\t\t: DEFAULT_BACKGROUND_COLOR;\n\n\t\tconst newOverlayColor = ! isUserOverlayColor\n\t\t\t? averageBackgroundColor\n\t\t\t: overlayColor.color;\n\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tif ( newUseFeaturedImage ) {\n\t\t\t\tsetOverlayColor( newOverlayColor );\n\t\t\t} else {\n\t\t\t\tsetOverlayColor( undefined );\n\t\t\t}\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\tconst newDimRatio = dimRatio === 100 ? 50 : dimRatio;\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t\tuseFeaturedImage: newUseFeaturedImage,\n\t\t\tdimRatio: newDimRatio,\n\t\t\tbackgroundType: useFeaturedImage\n\t\t\t\t? IMAGE_BACKGROUND_TYPE\n\t\t\t\t: undefined,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst blockControls = (\n\t\t<CoverBlockControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\tonClearMedia={ onClearMedia }\n\t\t/>\n\t);\n\n\tconst inspectorControls = (\n\t\t<CoverInspectorControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tclientId={ clientId }\n\t\t\tsetOverlayColor={ onSetOverlayColor }\n\t\t\tcoverRef={ ref }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\tupdateDimRatio={ onUpdateDimRatio }\n\t\t\tonClearMedia={ onClearMedia }\n\t\t/>\n\t);\n\n\tconst resizableCoverProps = {\n\t\tclassName: 'block-library-cover__resize-container',\n\t\tclientId,\n\t\theight,\n\t\tminHeight: minHeightWithUnit,\n\t\tonResizeStart: () => {\n\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\ttoggleSelection( false );\n\t\t},\n\t\tonResize: ( value ) => {\n\t\t\tsetAttributes( { minHeight: value } );\n\t\t},\n\t\tonResizeStop: ( newMinHeight ) => {\n\t\t\ttoggleSelection( true );\n\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t},\n\t\t// Hide the resize handle if an aspect ratio is set, as the aspect ratio takes precedence.\n\t\tshowHandle: ! attributes.style?.dimensions?.aspectRatio,\n\t\tsize: resizableBoxDimensions,\n\t\twidth,\n\t};\n\n\tif ( ! useFeaturedImage && ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ blockControls }\n\t\t\t\t{ inspectorControls }\n\t\t\t\t{ hasNonContentControls && isSelected && (\n\t\t\t\t\t<ResizableCoverPopover { ...resizableCoverProps } />\n\t\t\t\t) }\n\t\t\t\t<TagName\n\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\tclassName={ clsx( 'is-placeholder', blockProps.className ) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...blockProps.style,\n\t\t\t\t\t\tminHeight: minHeightWithUnit || undefined,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ resizeListener }\n\t\t\t\t\t<CoverPlaceholder\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"wp-block-cover__placeholder-background-options\">\n\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\tdisableCustomColors\n\t\t\t\t\t\t\t\tvalue={ overlayColor.color }\n\t\t\t\t\t\t\t\tonChange={ onSetOverlayColor }\n\t\t\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</CoverPlaceholder>\n\t\t\t\t</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst classes = clsx(\n\t\t{\n\t\t\t'is-dark-theme': isDark,\n\t\t\t'is-light': ! isDark,\n\t\t\t'is-transient': isUploadingMedia,\n\t\t\t'has-parallax': hasParallax,\n\t\t\t'is-repeated': isRepeated,\n\t\t\t'has-custom-content-position':\n\t\t\t\t! isContentPositionCenter( contentPosition ),\n\t\t},\n\t\tgetPositionClassName( contentPosition )\n\t);\n\n\tconst showOverlay =\n\t\turl || ! useFeaturedImage || ( useFeaturedImage && ! url );\n\n\treturn (\n\t\t<>\n\t\t\t{ blockControls }\n\t\t\t{ inspectorControls }\n\t\t\t<TagName\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ clsx( classes, blockProps.className ) }\n\t\t\t\tstyle={ { ...style, ...blockProps.style } }\n\t\t\t\tdata-url={ url }\n\t\t\t>\n\t\t\t\t{ resizeListener }\n\n\t\t\t\t{ ! url && useFeaturedImage && (\n\t\t\t\t\t<Placeholder\n\t\t\t\t\t\tclassName=\"wp-block-cover__image--placeholder-image\"\n\t\t\t\t\t\twithIllustration\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ url &&\n\t\t\t\t\tisImageBackground &&\n\t\t\t\t\t( isImgElement ? (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\tclassName=\"wp-block-cover__image-background\"\n\t\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\trole={ alt ? 'img' : undefined }\n\t\t\t\t\t\t\taria-label={ alt ? alt : undefined }\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\tclasses,\n\t\t\t\t\t\t\t\t'wp-block-cover__image-background'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tstyle={ { backgroundImage, backgroundPosition } }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t{ url && isVideoBackground && (\n\t\t\t\t\t<video\n\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__video-background\"\n\t\t\t\t\t\tautoPlay\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tloop\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ showOverlay && (\n\t\t\t\t\t<span\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t'wp-block-cover__background',\n\t\t\t\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t[ overlayColor.class ]: overlayColor.class,\n\t\t\t\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\t\t\t\t\t\t\t// For backwards compatibility. Former versions of the Cover Block applied\n\t\t\t\t\t\t\t\t// `.wp-block-cover__gradient-background` in the presence of\n\t\t\t\t\t\t\t\t// media, a gradient and a dim.\n\t\t\t\t\t\t\t\t'wp-block-cover__gradient-background':\n\t\t\t\t\t\t\t\t\turl && gradientValue && dimRatio !== 0,\n\t\t\t\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tstyle={ { backgroundImage: gradientValue, ...bgStyle } }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ isUploadingMedia && <Spinner /> }\n\n\t\t\t\t<CoverPlaceholder\n\t\t\t\t\tdisableMediaButtons\n\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t/>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</TagName>\n\t\t\t{ hasNonContentControls && isSelected && (\n\t\t\t\t<ResizableCoverPopover { ...resizableCoverProps } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default compose( [\n\twithColors( { overlayColor: 'background-color' } ),\n] )( CoverEdit );\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_coreData","_element","_components","_compose","_blockEditor","_i18n","_data","_blob","_notices","_shared","_inspectorControls","_blockControls","_coverPlaceholder","_resizableCoverPopover","_colorUtils","_constants","_jsxRuntime","getInnerBlocksTemplate","attributes","align","placeholder","__","isTemporaryMedia","id","url","isBlobURL","CoverEdit","clientId","isSelected","overlayColor","setAttributes","setOverlayColor","toggleSelection","context","postId","postType","_media$media_details$","contentPosition","originalUrl","backgroundType","originalBackgroundType","useFeaturedImage","dimRatio","focalPoint","hasParallax","isDark","isRepeated","minHeight","minHeightUnit","alt","allowedBlocks","templateLock","tagName","TagName","isUserOverlayColor","sizeSlug","featuredImage","useEntityProp","getSettings","useSelect","blockEditorStore","__unstableMarkNextChangeAsNotPersistent","useDispatch","media","select","coreStore","getMedia","mediaUrl","media_details","sizes","source_url","useEffect","averageBackgroundColor","getMediaColor","newOverlayColor","color","newIsDark","compositeIsDark","replaceAll","IMAGE_BACKGROUND_TYPE","createErrorNotice","noticesStore","gradientClass","gradientValue","__experimentalUseGradient","onSelectMedia","newMedia","mediaAttributes","attributesFromMedia","isImage","type","media_type","includes","undefined","newDimRatio","imageDefaultSize","DEFAULT_MEDIA_SIZE_SLUG","onClearMedia","DEFAULT_OVERLAY_COLOR","DEFAULT_BACKGROUND_COLOR","onSetOverlayColor","onUpdateDimRatio","onUploadError","message","isUploadingMedia","isImageBackground","isVideoBackground","VIDEO_BACKGROUND_TYPE","blockEditingMode","useBlockEditingMode","hasNonContentControls","resizeListener","height","width","useResizeObserver","resizableBoxDimensions","useMemo","minHeightWithUnit","isImgElement","style","backgroundImage","backgroundPosition","mediaPosition","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","hasInnerBlocks","getBlock","innerBlocks","length","ref","useRef","blockProps","useBlockProps","fontSizes","useSettings","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","useInnerBlocksProps","className","template","templateInsertUpdatesSelection","dropZoneElement","current","mediaElement","currentSettings","toggleUseFeaturedImage","newUseFeaturedImage","blockControls","jsx","default","inspectorControls","coverRef","updateDimRatio","resizableCoverProps","onResizeStart","onResize","value","onResizeStop","newMinHeight","showHandle","dimensions","aspectRatio","size","jsxs","Fragment","children","clsx","onError","ColorPalette","disableCustomColors","onChange","clearable","classes","isContentPositionCenter","getPositionClassName","showOverlay","Placeholder","withIllustration","src","role","autoPlay","muted","loop","dimRatioToClass","class","Spinner","disableMediaButtons","_default","exports","compose","withColors"],"sources":["@wordpress/block-library/src/cover/edit/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useEffect, useMemo, useRef } from '@wordpress/element';\nimport { Placeholder, Spinner } from '@wordpress/components';\nimport { compose, useResizeObserver } from '@wordpress/compose';\nimport {\n\twithColors,\n\tColorPalette,\n\tuseBlockProps,\n\tuseSettings,\n\tuseInnerBlocksProps,\n\t__experimentalUseGradient,\n\tstore as blockEditorStore,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { isBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport {\n\tattributesFromMedia,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tdimRatioToClass,\n\tisContentPositionCenter,\n\tgetPositionClassName,\n\tmediaPosition,\n} from '../shared';\nimport CoverInspectorControls from './inspector-controls';\nimport CoverBlockControls from './block-controls';\nimport CoverPlaceholder from './cover-placeholder';\nimport ResizableCoverPopover from './resizable-cover-popover';\nimport {\n\tgetMediaColor,\n\tcompositeIsDark,\n\tDEFAULT_BACKGROUND_COLOR,\n\tDEFAULT_OVERLAY_COLOR,\n} from './color-utils';\nimport { DEFAULT_MEDIA_SIZE_SLUG } from '../constants';\n\nfunction getInnerBlocksTemplate( attributes ) {\n\treturn [\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\talign: 'center',\n\t\t\t\tplaceholder: __( 'Write title…' ),\n\t\t\t\t...attributes,\n\t\t\t},\n\t\t],\n\t];\n}\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily while\n * the media (image or video) is being uploaded and will not have an id allocated yet.\n *\n * @param {number} id The id of the media.\n * @param {string} url The url of the media.\n *\n * @return {boolean} Is the URL a Blob URL.\n */\nconst isTemporaryMedia = ( id, url ) => ! id && isBlobURL( url );\n\nfunction CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n\tcontext: { postId, postType },\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\turl: originalUrl,\n\t\tbackgroundType: originalBackgroundType,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t\ttagName: TagName = 'div',\n\t\tisUserOverlayColor,\n\t\tsizeSlug,\n\t} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\tconst { getSettings } = useSelect( blockEditorStore );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst media = useSelect(\n\t\t( select ) =>\n\t\t\tfeaturedImage &&\n\t\t\tselect( coreStore ).getMedia( featuredImage, { context: 'view' } ),\n\t\t[ featuredImage ]\n\t);\n\tconst mediaUrl =\n\t\tmedia?.media_details?.sizes?.[ sizeSlug ]?.source_url ??\n\t\tmedia?.source_url;\n\n\t// User can change the featured image outside of the block, but we still\n\t// need to update the block when that happens. This effect should only\n\t// run when the featured image changes in that case. All other cases are\n\t// handled in their respective callbacks.\n\tuseEffect( () => {\n\t\t( async () => {\n\t\t\tif ( ! useFeaturedImage ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst averageBackgroundColor = await getMediaColor( mediaUrl );\n\n\t\t\tlet newOverlayColor = overlayColor.color;\n\t\t\tif ( ! isUserOverlayColor ) {\n\t\t\t\tnewOverlayColor = averageBackgroundColor;\n\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\tsetOverlayColor( newOverlayColor );\n\t\t\t}\n\n\t\t\tconst newIsDark = compositeIsDark(\n\t\t\t\tdimRatio,\n\t\t\t\tnewOverlayColor,\n\t\t\t\taverageBackgroundColor\n\t\t\t);\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tisDark: newIsDark,\n\t\t\t\tisUserOverlayColor: isUserOverlayColor || false,\n\t\t\t} );\n\t\t} )();\n\t\t// Update the block only when the featured image changes.\n\t}, [ mediaUrl ] );\n\n\t// instead of destructuring the attributes\n\t// we define the url and background type\n\t// depending on the value of the useFeaturedImage flag\n\t// to preview in edit the dynamic featured image\n\tconst url = useFeaturedImage\n\t\t? mediaUrl\n\t\t: // Ensure the url is not malformed due to sanitization through `wp_kses`.\n\t\t originalUrl?.replaceAll( '&', '&' );\n\tconst backgroundType = useFeaturedImage\n\t\t? IMAGE_BACKGROUND_TYPE\n\t\t: originalBackgroundType;\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { gradientClass, gradientValue } = __experimentalUseGradient();\n\n\tconst onSelectMedia = async ( newMedia ) => {\n\t\tconst mediaAttributes = attributesFromMedia( newMedia );\n\t\tconst isImage = [ newMedia?.type, newMedia?.media_type ].includes(\n\t\t\tIMAGE_BACKGROUND_TYPE\n\t\t);\n\n\t\tconst averageBackgroundColor = await getMediaColor(\n\t\t\tisImage ? newMedia?.url : undefined\n\t\t);\n\n\t\tlet newOverlayColor = overlayColor.color;\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tnewOverlayColor = averageBackgroundColor;\n\t\t\tsetOverlayColor( newOverlayColor );\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\t// Only set a new dimRatio if there was no previous media selected\n\t\t// to avoid resetting to 50 if it has been explicitly set to 100.\n\t\t// See issue #52835 for context.\n\t\tconst newDimRatio =\n\t\t\toriginalUrl === undefined && dimRatio === 100 ? 50 : dimRatio;\n\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tif ( backgroundType === IMAGE_BACKGROUND_TYPE && mediaAttributes?.id ) {\n\t\t\tconst { imageDefaultSize } = getSettings();\n\n\t\t\t// Try to use the previous selected image size if it's available\n\t\t\t// otherwise try the default image size or fallback to full size.\n\t\t\tif (\n\t\t\t\tsizeSlug &&\n\t\t\t\t( newMedia?.sizes?.[ sizeSlug ] ||\n\t\t\t\t\tnewMedia?.media_details?.sizes?.[ sizeSlug ] )\n\t\t\t) {\n\t\t\t\tmediaAttributes.sizeSlug = sizeSlug;\n\t\t\t\tmediaAttributes.url =\n\t\t\t\t\tnewMedia?.sizes?.[ sizeSlug ]?.url ||\n\t\t\t\t\tnewMedia?.media_details?.sizes?.[ sizeSlug ]?.source_url;\n\t\t\t} else if (\n\t\t\t\tnewMedia?.sizes?.[ imageDefaultSize ] ||\n\t\t\t\tnewMedia?.media_details?.sizes?.[ imageDefaultSize ]\n\t\t\t) {\n\t\t\t\tmediaAttributes.sizeSlug = imageDefaultSize;\n\t\t\t\tmediaAttributes.url =\n\t\t\t\t\tnewMedia?.sizes?.[ imageDefaultSize ]?.url ||\n\t\t\t\t\tnewMedia?.media_details?.sizes?.[ imageDefaultSize ]\n\t\t\t\t\t\t?.source_url;\n\t\t\t} else {\n\t\t\t\tmediaAttributes.sizeSlug = DEFAULT_MEDIA_SIZE_SLUG;\n\t\t\t}\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\tfocalPoint: undefined,\n\t\t\tuseFeaturedImage: undefined,\n\t\t\tdimRatio: newDimRatio,\n\t\t\tisDark: newIsDark,\n\t\t\tisUserOverlayColor: isUserOverlayColor || false,\n\t\t} );\n\t};\n\n\tconst onClearMedia = () => {\n\t\tlet newOverlayColor = overlayColor.color;\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tnewOverlayColor = DEFAULT_OVERLAY_COLOR;\n\t\t\tsetOverlayColor( undefined );\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tdimRatio,\n\t\t\tnewOverlayColor,\n\t\t\tDEFAULT_BACKGROUND_COLOR\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tid: undefined,\n\t\t\tbackgroundType: undefined,\n\t\t\tfocalPoint: undefined,\n\t\t\thasParallax: undefined,\n\t\t\tisRepeated: undefined,\n\t\t\tuseFeaturedImage: undefined,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onSetOverlayColor = async ( newOverlayColor ) => {\n\t\tconst averageBackgroundColor = await getMediaColor( url );\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tdimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetOverlayColor( newOverlayColor );\n\n\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\n\t\tsetAttributes( {\n\t\t\tisUserOverlayColor: true,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onUpdateDimRatio = async ( newDimRatio ) => {\n\t\tconst averageBackgroundColor = await getMediaColor( url );\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\toverlayColor.color,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\tdimRatio: newDimRatio,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t};\n\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\n\n\tconst isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;\n\tconst isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;\n\n\tconst blockEditingMode = useBlockEditingMode();\n\tconst hasNonContentControls = blockEditingMode === 'default';\n\n\tconst [ resizeListener, { height, width } ] = useResizeObserver();\n\tconst resizableBoxDimensions = useMemo( () => {\n\t\treturn {\n\t\t\theight: minHeightUnit === 'px' ? minHeight : 'auto',\n\t\t\twidth: 'auto',\n\t\t};\n\t}, [ minHeight, minHeightUnit ] );\n\n\tconst minHeightWithUnit =\n\t\tminHeight && minHeightUnit\n\t\t\t? `${ minHeight }${ minHeightUnit }`\n\t\t\t: minHeight;\n\n\tconst isImgElement = ! ( hasParallax || isRepeated );\n\n\tconst style = {\n\t\tminHeight: minHeightWithUnit || undefined,\n\t};\n\n\tconst backgroundImage = url ? `url(${ url })` : undefined;\n\n\tconst backgroundPosition = mediaPosition( focalPoint );\n\n\tconst bgStyle = { backgroundColor: overlayColor.color };\n\tconst mediaStyle = {\n\t\tobjectPosition:\n\t\t\tfocalPoint && isImgElement\n\t\t\t\t? mediaPosition( focalPoint )\n\t\t\t\t: undefined,\n\t};\n\n\tconst hasBackground = !! ( url || overlayColor.color || gradientValue );\n\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlock( clientId ).innerBlocks.length >\n\t\t\t0,\n\t\t[ clientId ]\n\t);\n\n\tconst ref = useRef();\n\tconst blockProps = useBlockProps( { ref } );\n\n\t// Check for fontSize support before we pass a fontSize attribute to the innerBlocks.\n\tconst [ fontSizes ] = useSettings( 'typography.fontSizes' );\n\tconst hasFontSizes = fontSizes?.length > 0;\n\tconst innerBlocksTemplate = getInnerBlocksTemplate( {\n\t\tfontSize: hasFontSizes ? 'large' : undefined,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-cover__inner-container',\n\t\t},\n\t\t{\n\t\t\t// Avoid template sync when the `templateLock` value is `all` or `contentOnly`.\n\t\t\t// See: https://github.com/WordPress/gutenberg/pull/45632\n\t\t\ttemplate: ! hasInnerBlocks ? innerBlocksTemplate : undefined,\n\t\t\ttemplateInsertUpdatesSelection: true,\n\t\t\tallowedBlocks,\n\t\t\ttemplateLock,\n\t\t\tdropZoneElement: ref.current,\n\t\t}\n\t);\n\n\tconst mediaElement = useRef();\n\tconst currentSettings = {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\thasInnerBlocks,\n\t\turl,\n\t\tisImgElement,\n\t\toverlayColor,\n\t};\n\n\tconst toggleUseFeaturedImage = async () => {\n\t\tconst newUseFeaturedImage = ! useFeaturedImage;\n\n\t\tconst averageBackgroundColor = newUseFeaturedImage\n\t\t\t? await getMediaColor( mediaUrl )\n\t\t\t: DEFAULT_BACKGROUND_COLOR;\n\n\t\tconst newOverlayColor = ! isUserOverlayColor\n\t\t\t? averageBackgroundColor\n\t\t\t: overlayColor.color;\n\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tif ( newUseFeaturedImage ) {\n\t\t\t\tsetOverlayColor( newOverlayColor );\n\t\t\t} else {\n\t\t\t\tsetOverlayColor( undefined );\n\t\t\t}\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\tconst newDimRatio = dimRatio === 100 ? 50 : dimRatio;\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t\tuseFeaturedImage: newUseFeaturedImage,\n\t\t\tdimRatio: newDimRatio,\n\t\t\tbackgroundType: useFeaturedImage\n\t\t\t\t? IMAGE_BACKGROUND_TYPE\n\t\t\t\t: undefined,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst blockControls = (\n\t\t<CoverBlockControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\tonClearMedia={ onClearMedia }\n\t\t/>\n\t);\n\n\tconst inspectorControls = (\n\t\t<CoverInspectorControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tclientId={ clientId }\n\t\t\tsetOverlayColor={ onSetOverlayColor }\n\t\t\tcoverRef={ ref }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\tupdateDimRatio={ onUpdateDimRatio }\n\t\t\tonClearMedia={ onClearMedia }\n\t\t\tfeaturedImage={ media }\n\t\t/>\n\t);\n\n\tconst resizableCoverProps = {\n\t\tclassName: 'block-library-cover__resize-container',\n\t\tclientId,\n\t\theight,\n\t\tminHeight: minHeightWithUnit,\n\t\tonResizeStart: () => {\n\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\ttoggleSelection( false );\n\t\t},\n\t\tonResize: ( value ) => {\n\t\t\tsetAttributes( { minHeight: value } );\n\t\t},\n\t\tonResizeStop: ( newMinHeight ) => {\n\t\t\ttoggleSelection( true );\n\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t},\n\t\t// Hide the resize handle if an aspect ratio is set, as the aspect ratio takes precedence.\n\t\tshowHandle: ! attributes.style?.dimensions?.aspectRatio,\n\t\tsize: resizableBoxDimensions,\n\t\twidth,\n\t};\n\n\tif ( ! useFeaturedImage && ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ blockControls }\n\t\t\t\t{ inspectorControls }\n\t\t\t\t{ hasNonContentControls && isSelected && (\n\t\t\t\t\t<ResizableCoverPopover { ...resizableCoverProps } />\n\t\t\t\t) }\n\t\t\t\t<TagName\n\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\tclassName={ clsx( 'is-placeholder', blockProps.className ) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...blockProps.style,\n\t\t\t\t\t\tminHeight: minHeightWithUnit || undefined,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ resizeListener }\n\t\t\t\t\t<CoverPlaceholder\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"wp-block-cover__placeholder-background-options\">\n\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\tdisableCustomColors\n\t\t\t\t\t\t\t\tvalue={ overlayColor.color }\n\t\t\t\t\t\t\t\tonChange={ onSetOverlayColor }\n\t\t\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</CoverPlaceholder>\n\t\t\t\t</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst classes = clsx(\n\t\t{\n\t\t\t'is-dark-theme': isDark,\n\t\t\t'is-light': ! isDark,\n\t\t\t'is-transient': isUploadingMedia,\n\t\t\t'has-parallax': hasParallax,\n\t\t\t'is-repeated': isRepeated,\n\t\t\t'has-custom-content-position':\n\t\t\t\t! isContentPositionCenter( contentPosition ),\n\t\t},\n\t\tgetPositionClassName( contentPosition )\n\t);\n\n\tconst showOverlay =\n\t\turl || ! useFeaturedImage || ( useFeaturedImage && ! url );\n\n\treturn (\n\t\t<>\n\t\t\t{ blockControls }\n\t\t\t{ inspectorControls }\n\t\t\t<TagName\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ clsx( classes, blockProps.className ) }\n\t\t\t\tstyle={ { ...style, ...blockProps.style } }\n\t\t\t\tdata-url={ url }\n\t\t\t>\n\t\t\t\t{ resizeListener }\n\n\t\t\t\t{ ! url && useFeaturedImage && (\n\t\t\t\t\t<Placeholder\n\t\t\t\t\t\tclassName=\"wp-block-cover__image--placeholder-image\"\n\t\t\t\t\t\twithIllustration\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ url &&\n\t\t\t\t\tisImageBackground &&\n\t\t\t\t\t( isImgElement ? (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\tclassName=\"wp-block-cover__image-background\"\n\t\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\trole={ alt ? 'img' : undefined }\n\t\t\t\t\t\t\taria-label={ alt ? alt : undefined }\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\tclasses,\n\t\t\t\t\t\t\t\t'wp-block-cover__image-background'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tstyle={ { backgroundImage, backgroundPosition } }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t{ url && isVideoBackground && (\n\t\t\t\t\t<video\n\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__video-background\"\n\t\t\t\t\t\tautoPlay\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tloop\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ showOverlay && (\n\t\t\t\t\t<span\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t'wp-block-cover__background',\n\t\t\t\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t[ overlayColor.class ]: overlayColor.class,\n\t\t\t\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\t\t\t\t\t\t\t// For backwards compatibility. Former versions of the Cover Block applied\n\t\t\t\t\t\t\t\t// `.wp-block-cover__gradient-background` in the presence of\n\t\t\t\t\t\t\t\t// media, a gradient and a dim.\n\t\t\t\t\t\t\t\t'wp-block-cover__gradient-background':\n\t\t\t\t\t\t\t\t\turl && gradientValue && dimRatio !== 0,\n\t\t\t\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tstyle={ { backgroundImage: gradientValue, ...bgStyle } }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ isUploadingMedia && <Spinner /> }\n\n\t\t\t\t<CoverPlaceholder\n\t\t\t\t\tdisableMediaButtons\n\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t/>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</TagName>\n\t\t\t{ hasNonContentControls && isSelected && (\n\t\t\t\t<ResizableCoverPopover { ...resizableCoverProps } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default compose( [\n\twithColors( { overlayColor: 'background-color' } ),\n] )( CoverEdit );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -80,7 +80,8 @@ function CoverInspectorControls({
|
|
|
80
80
|
setOverlayColor,
|
|
81
81
|
coverRef,
|
|
82
82
|
currentSettings,
|
|
83
|
-
updateDimRatio
|
|
83
|
+
updateDimRatio,
|
|
84
|
+
featuredImage
|
|
84
85
|
}) {
|
|
85
86
|
const {
|
|
86
87
|
useFeaturedImage,
|
|
@@ -113,8 +114,9 @@ function CoverInspectorControls({
|
|
|
113
114
|
const image = (0, _data.useSelect)(select => id && isImageBackground ? select(_coreData.store).getMedia(id, {
|
|
114
115
|
context: 'view'
|
|
115
116
|
}) : null, [id, isImageBackground]);
|
|
117
|
+
const currentBackgroundImage = useFeaturedImage ? featuredImage : image;
|
|
116
118
|
function updateImage(newSizeSlug) {
|
|
117
|
-
const newUrl =
|
|
119
|
+
const newUrl = currentBackgroundImage?.media_details?.sizes?.[newSizeSlug]?.source_url;
|
|
118
120
|
if (!newUrl) {
|
|
119
121
|
return null;
|
|
120
122
|
}
|
|
@@ -125,7 +127,7 @@ function CoverInspectorControls({
|
|
|
125
127
|
}
|
|
126
128
|
const imageSizeOptions = imageSizes?.filter(({
|
|
127
129
|
slug
|
|
128
|
-
}) =>
|
|
130
|
+
}) => currentBackgroundImage?.media_details?.sizes?.[slug]?.source_url)?.map(({
|
|
129
131
|
name,
|
|
130
132
|
slug
|
|
131
133
|
}) => ({
|
|
@@ -244,7 +246,7 @@ function CoverInspectorControls({
|
|
|
244
246
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("br", {}), (0, _i18n.__)('Leave empty if decorative.')]
|
|
245
247
|
})
|
|
246
248
|
})
|
|
247
|
-
}),
|
|
249
|
+
}), !!imageSizeOptions?.length && /*#__PURE__*/(0, _jsxRuntime.jsx)(ResolutionTool, {
|
|
248
250
|
value: sizeSlug,
|
|
249
251
|
onChange: updateImage,
|
|
250
252
|
options: imageSizeOptions,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_element","require","_components","_compose","_blockEditor","_i18n","_data","_coreData","_shared","_lockUnlock","_hooks","_constants","_jsxRuntime","cleanEmptyObject","ResolutionTool","unlock","blockEditorPrivateApis","CoverHeightInput","onChange","onUnitChange","unit","value","instanceId","useInstanceId","UnitControl","inputId","isPx","availableUnits","useSettings","units","useCustomUnits","defaultValues","px","em","rem","vw","vh","handleOnChange","unprocessedValue","inputValue","parseFloat","undefined","isNaN","computedValue","useMemo","parsedQuantity","parseQuantityAndUnitFromRawValue","join","min","COVER_MIN_HEIGHT","jsx","__experimentalUnitControl","__next40pxDefaultSize","label","__","id","isResetValueOnUnitChange","CoverInspectorControls","attributes","setAttributes","clientId","setOverlayColor","coverRef","currentSettings","updateDimRatio","useFeaturedImage","dimRatio","focalPoint","hasParallax","isRepeated","minHeight","minHeightUnit","alt","tagName","isVideoBackground","isImageBackground","mediaElement","url","overlayColor","sizeSlug","DEFAULT_MEDIA_SIZE_SLUG","gradientValue","setGradient","__experimentalUseGradient","getSettings","useSelect","blockEditorStore","imageSizes","image","select","coreStore","getMedia","context","updateImage","newSizeSlug","newUrl","media_details","sizes","source_url","imageSizeOptions","filter","slug","map","name","toggleParallax","toggleIsRepeated","showFocalPointPicker","imperativeFocalPointPreview","styleOfRef","property","current","style","mediaPosition","colorGradientSettings","useMultipleOriginColorsAndGradients","htmlElementMessages","header","main","section","article","aside","footer","dropdownMenuProps","useToolsPanelDropdownMenuProps","jsxs","Fragment","children","InspectorControls","__experimentalToolsPanel","resetAll","__experimentalToolsPanelItem","isShownByDefault","hasValue","onDeselect","ToggleControl","__nextHasNoMarginBottom","checked","FocalPointPicker","onDragStart","onDrag","newFocalPoint","TextareaControl","newAlt","help","ExternalLink","href","length","options","defaultValue","hasColorsOrGradients","group","__experimentalColorGradientSettingsDropdown","__experimentalIsRenderedInSidebar","settings","colorValue","color","onColorChange","onGradientChange","resetAllFilter","customOverlayColor","gradient","customGradient","clearable","panelId","RangeControl","newDimRatio","max","step","required","className","dimensions","aspectRatio","newMinHeight","nextUnit","SelectControl"],"sources":["@wordpress/block-library/src/cover/edit/inspector-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport {\n\tExternalLink,\n\tFocalPointPicker,\n\tRangeControl,\n\tTextareaControl,\n\tToggleControl,\n\tSelectControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport {\n\tInspectorControls,\n\tuseSettings,\n\tstore as blockEditorStore,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseGradient,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { COVER_MIN_HEIGHT, mediaPosition } from '../shared';\nimport { unlock } from '../../lock-unlock';\nimport { useToolsPanelDropdownMenuProps } from '../../utils/hooks';\nimport { DEFAULT_MEDIA_SIZE_SLUG } from '../constants';\n\nconst { cleanEmptyObject, ResolutionTool } = unlock( blockEditorPrivateApis );\n\nfunction CoverHeightInput( {\n\tonChange,\n\tonUnitChange,\n\tunit = 'px',\n\tvalue = '',\n} ) {\n\tconst instanceId = useInstanceId( UnitControl );\n\tconst inputId = `block-cover-height-input-${ instanceId }`;\n\tconst isPx = unit === 'px';\n\n\tconst [ availableUnits ] = useSettings( 'spacing.units' );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ 'px', 'em', 'rem', 'vw', 'vh' ],\n\t\tdefaultValues: { px: 430, '%': 20, em: 20, rem: 20, vw: 20, vh: 50 },\n\t} );\n\n\tconst handleOnChange = ( unprocessedValue ) => {\n\t\tconst inputValue =\n\t\t\tunprocessedValue !== ''\n\t\t\t\t? parseFloat( unprocessedValue )\n\t\t\t\t: undefined;\n\n\t\tif ( isNaN( inputValue ) && inputValue !== undefined ) {\n\t\t\treturn;\n\t\t}\n\t\tonChange( inputValue );\n\t};\n\n\tconst computedValue = useMemo( () => {\n\t\tconst [ parsedQuantity ] = parseQuantityAndUnitFromRawValue( value );\n\t\treturn [ parsedQuantity, unit ].join( '' );\n\t}, [ unit, value ] );\n\n\tconst min = isPx ? COVER_MIN_HEIGHT : 0;\n\n\treturn (\n\t\t<UnitControl\n\t\t\t__next40pxDefaultSize\n\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\tid={ inputId }\n\t\t\tisResetValueOnUnitChange\n\t\t\tmin={ min }\n\t\t\tonChange={ handleOnChange }\n\t\t\tonUnitChange={ onUnitChange }\n\t\t\tunits={ units }\n\t\t\tvalue={ computedValue }\n\t\t/>\n\t);\n}\nexport default function CoverInspectorControls( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tsetOverlayColor,\n\tcoverRef,\n\tcurrentSettings,\n\tupdateDimRatio,\n} ) {\n\tconst {\n\t\tuseFeaturedImage,\n\t\tid,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\ttagName,\n\t} = attributes;\n\tconst {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\turl,\n\t\toverlayColor,\n\t} = currentSettings;\n\n\tconst sizeSlug = attributes.sizeSlug || DEFAULT_MEDIA_SIZE_SLUG;\n\n\tconst { gradientValue, setGradient } = __experimentalUseGradient();\n\tconst { getSettings } = useSelect( blockEditorStore );\n\n\tconst imageSizes = getSettings()?.imageSizes;\n\n\tconst image = useSelect(\n\t\t( select ) =>\n\t\t\tid && isImageBackground\n\t\t\t\t? select( coreStore ).getMedia( id, { context: 'view' } )\n\t\t\t\t: null,\n\t\t[ id, isImageBackground ]\n\t);\n\n\tfunction updateImage( newSizeSlug ) {\n\t\tconst newUrl = image?.media_details?.sizes?.[ newSizeSlug ]?.source_url;\n\t\tif ( ! newUrl ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\turl: newUrl,\n\t\t\tsizeSlug: newSizeSlug,\n\t\t} );\n\t}\n\n\tconst imageSizeOptions = imageSizes\n\t\t?.filter(\n\t\t\t( { slug } ) => image?.media_details?.sizes?.[ slug ]?.source_url\n\t\t)\n\t\t?.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\n\tconst toggleParallax = () => {\n\t\tsetAttributes( {\n\t\t\thasParallax: ! hasParallax,\n\t\t\t...( ! hasParallax ? { focalPoint: undefined } : {} ),\n\t\t} );\n\t};\n\n\tconst toggleIsRepeated = () => {\n\t\tsetAttributes( {\n\t\t\tisRepeated: ! isRepeated,\n\t\t} );\n\t};\n\n\tconst showFocalPointPicker =\n\t\tisVideoBackground ||\n\t\t( isImageBackground && ( ! hasParallax || isRepeated ) );\n\n\tconst imperativeFocalPointPreview = ( value ) => {\n\t\tconst [ styleOfRef, property ] = mediaElement.current\n\t\t\t? [ mediaElement.current.style, 'objectPosition' ]\n\t\t\t: [ coverRef.current.style, 'backgroundPosition' ];\n\t\tstyleOfRef[ property ] = mediaPosition( value );\n\t};\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\n\tconst htmlElementMessages = {\n\t\theader: __(\n\t\t\t'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'\n\t\t),\n\t\tmain: __(\n\t\t\t'The <main> element should be used for the primary content of your document only.'\n\t\t),\n\t\tsection: __(\n\t\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t\t),\n\t\tarticle: __(\n\t\t\t'The <article> element should represent a self-contained, syndicatable portion of the document.'\n\t\t),\n\t\taside: __(\n\t\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t\t),\n\t\tfooter: __(\n\t\t\t'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'\n\t\t),\n\t};\n\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ !! url && (\n\t\t\t\t\t<ToolsPanel\n\t\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\thasParallax: false,\n\t\t\t\t\t\t\t\tfocalPoint: undefined,\n\t\t\t\t\t\t\t\tisRepeated: false,\n\t\t\t\t\t\t\t\talt: '',\n\t\t\t\t\t\t\t\tsizeSlug: undefined,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isImageBackground && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\t\thasValue={ () => hasParallax }\n\t\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\thasParallax: false,\n\t\t\t\t\t\t\t\t\t\t\tfocalPoint: undefined,\n\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\t\t\t\tchecked={ hasParallax }\n\t\t\t\t\t\t\t\t\t\tonChange={ toggleParallax }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ToolsPanelItem>\n\n\t\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Repeated background' ) }\n\t\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\t\thasValue={ () => isRepeated }\n\t\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tisRepeated: false,\n\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Repeated background' ) }\n\t\t\t\t\t\t\t\t\t\tchecked={ isRepeated }\n\t\t\t\t\t\t\t\t\t\tonChange={ toggleIsRepeated }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showFocalPointPicker && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\tlabel={ __( 'Focal point' ) }\n\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\thasValue={ () => !! focalPoint }\n\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfocalPoint: undefined,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<FocalPointPicker\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Focal point' ) }\n\t\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\t\tvalue={ focalPoint }\n\t\t\t\t\t\t\t\t\tonDragStart={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\t\tonDrag={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\t\tonChange={ ( newFocalPoint ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tfocalPoint: newFocalPoint,\n\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! useFeaturedImage && url && ! isVideoBackground && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\thasValue={ () => !! alt }\n\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { alt: '' } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\t\t\tonChange={ ( newAlt ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { alt: newAlt } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\t\thref={\n\t\t\t\t\t\t\t\t\t\t\t\t\t// translators: Localized tutorial, if one exists. W3C Web Accessibility Initiative link has list of existing translations.\n\t\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'https://www.w3.org/WAI/tutorials/images/decision-tree/'\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image.'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! useFeaturedImage && !! imageSizeOptions?.length && (\n\t\t\t\t\t\t\t<ResolutionTool\n\t\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\t\tonChange={ updateImage }\n\t\t\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\t\t\tdefaultValue={ DEFAULT_MEDIA_SIZE_SLUG }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ToolsPanel>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t{ colorGradientSettings.hasColorsOrGradients && (\n\t\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayColor.color,\n\t\t\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\t\t\tlabel: __( 'Overlay' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayColor,\n\t\t\t\t\t\t\t\tonGradientChange: setGradient,\n\t\t\t\t\t\t\t\tisShownByDefault: true,\n\t\t\t\t\t\t\t\tresetAllFilter: () => ( {\n\t\t\t\t\t\t\t\t\toverlayColor: undefined,\n\t\t\t\t\t\t\t\t\tcustomOverlayColor: undefined,\n\t\t\t\t\t\t\t\t\tgradient: undefined,\n\t\t\t\t\t\t\t\t\tcustomGradient: undefined,\n\t\t\t\t\t\t\t\t} ),\n\t\t\t\t\t\t\t\tclearable: true,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\thasValue={ () => {\n\t\t\t\t\t\t\t// If there's a media background the dimRatio will be\n\t\t\t\t\t\t\t// defaulted to 50 whereas it will be 100 for colors.\n\t\t\t\t\t\t\treturn dimRatio === undefined\n\t\t\t\t\t\t\t\t? false\n\t\t\t\t\t\t\t\t: dimRatio !== ( url ? 50 : 100 );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\t\t\tonDeselect={ () => updateDimRatio( url ? 50 : 100 ) }\n\t\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\t\tdimRatio: url ? 50 : 100,\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\t\t\tonChange={ ( newDimRatio ) =>\n\t\t\t\t\t\t\t\tupdateDimRatio( newDimRatio )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\t\tstep={ 10 }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<InspectorControls group=\"dimensions\">\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\thasValue={ () => !! minHeight }\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<CoverHeightInput\n\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\tattributes?.style?.dimensions?.aspectRatio\n\t\t\t\t\t\t\t\t? ''\n\t\t\t\t\t\t\t\t: minHeight\n\t\t\t\t\t\t}\n\t\t\t\t\t\tunit={ minHeightUnit }\n\t\t\t\t\t\tonChange={ ( newMinHeight ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeight: newMinHeight,\n\t\t\t\t\t\t\t\tstyle: cleanEmptyObject( {\n\t\t\t\t\t\t\t\t\t...attributes?.style,\n\t\t\t\t\t\t\t\t\tdimensions: {\n\t\t\t\t\t\t\t\t\t\t...attributes?.style?.dimensions,\n\t\t\t\t\t\t\t\t\t\taspectRatio: undefined, // Reset aspect ratio when minHeight is set.\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t} ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeightUnit: nextUnit,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ tagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_element","require","_components","_compose","_blockEditor","_i18n","_data","_coreData","_shared","_lockUnlock","_hooks","_constants","_jsxRuntime","cleanEmptyObject","ResolutionTool","unlock","blockEditorPrivateApis","CoverHeightInput","onChange","onUnitChange","unit","value","instanceId","useInstanceId","UnitControl","inputId","isPx","availableUnits","useSettings","units","useCustomUnits","defaultValues","px","em","rem","vw","vh","handleOnChange","unprocessedValue","inputValue","parseFloat","undefined","isNaN","computedValue","useMemo","parsedQuantity","parseQuantityAndUnitFromRawValue","join","min","COVER_MIN_HEIGHT","jsx","__experimentalUnitControl","__next40pxDefaultSize","label","__","id","isResetValueOnUnitChange","CoverInspectorControls","attributes","setAttributes","clientId","setOverlayColor","coverRef","currentSettings","updateDimRatio","featuredImage","useFeaturedImage","dimRatio","focalPoint","hasParallax","isRepeated","minHeight","minHeightUnit","alt","tagName","isVideoBackground","isImageBackground","mediaElement","url","overlayColor","sizeSlug","DEFAULT_MEDIA_SIZE_SLUG","gradientValue","setGradient","__experimentalUseGradient","getSettings","useSelect","blockEditorStore","imageSizes","image","select","coreStore","getMedia","context","currentBackgroundImage","updateImage","newSizeSlug","newUrl","media_details","sizes","source_url","imageSizeOptions","filter","slug","map","name","toggleParallax","toggleIsRepeated","showFocalPointPicker","imperativeFocalPointPreview","styleOfRef","property","current","style","mediaPosition","colorGradientSettings","useMultipleOriginColorsAndGradients","htmlElementMessages","header","main","section","article","aside","footer","dropdownMenuProps","useToolsPanelDropdownMenuProps","jsxs","Fragment","children","InspectorControls","__experimentalToolsPanel","resetAll","__experimentalToolsPanelItem","isShownByDefault","hasValue","onDeselect","ToggleControl","__nextHasNoMarginBottom","checked","FocalPointPicker","onDragStart","onDrag","newFocalPoint","TextareaControl","newAlt","help","ExternalLink","href","length","options","defaultValue","hasColorsOrGradients","group","__experimentalColorGradientSettingsDropdown","__experimentalIsRenderedInSidebar","settings","colorValue","color","onColorChange","onGradientChange","resetAllFilter","customOverlayColor","gradient","customGradient","clearable","panelId","RangeControl","newDimRatio","max","step","required","className","dimensions","aspectRatio","newMinHeight","nextUnit","SelectControl"],"sources":["@wordpress/block-library/src/cover/edit/inspector-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport {\n\tExternalLink,\n\tFocalPointPicker,\n\tRangeControl,\n\tTextareaControl,\n\tToggleControl,\n\tSelectControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport {\n\tInspectorControls,\n\tuseSettings,\n\tstore as blockEditorStore,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseGradient,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { COVER_MIN_HEIGHT, mediaPosition } from '../shared';\nimport { unlock } from '../../lock-unlock';\nimport { useToolsPanelDropdownMenuProps } from '../../utils/hooks';\nimport { DEFAULT_MEDIA_SIZE_SLUG } from '../constants';\n\nconst { cleanEmptyObject, ResolutionTool } = unlock( blockEditorPrivateApis );\n\nfunction CoverHeightInput( {\n\tonChange,\n\tonUnitChange,\n\tunit = 'px',\n\tvalue = '',\n} ) {\n\tconst instanceId = useInstanceId( UnitControl );\n\tconst inputId = `block-cover-height-input-${ instanceId }`;\n\tconst isPx = unit === 'px';\n\n\tconst [ availableUnits ] = useSettings( 'spacing.units' );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ 'px', 'em', 'rem', 'vw', 'vh' ],\n\t\tdefaultValues: { px: 430, '%': 20, em: 20, rem: 20, vw: 20, vh: 50 },\n\t} );\n\n\tconst handleOnChange = ( unprocessedValue ) => {\n\t\tconst inputValue =\n\t\t\tunprocessedValue !== ''\n\t\t\t\t? parseFloat( unprocessedValue )\n\t\t\t\t: undefined;\n\n\t\tif ( isNaN( inputValue ) && inputValue !== undefined ) {\n\t\t\treturn;\n\t\t}\n\t\tonChange( inputValue );\n\t};\n\n\tconst computedValue = useMemo( () => {\n\t\tconst [ parsedQuantity ] = parseQuantityAndUnitFromRawValue( value );\n\t\treturn [ parsedQuantity, unit ].join( '' );\n\t}, [ unit, value ] );\n\n\tconst min = isPx ? COVER_MIN_HEIGHT : 0;\n\n\treturn (\n\t\t<UnitControl\n\t\t\t__next40pxDefaultSize\n\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\tid={ inputId }\n\t\t\tisResetValueOnUnitChange\n\t\t\tmin={ min }\n\t\t\tonChange={ handleOnChange }\n\t\t\tonUnitChange={ onUnitChange }\n\t\t\tunits={ units }\n\t\t\tvalue={ computedValue }\n\t\t/>\n\t);\n}\nexport default function CoverInspectorControls( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tsetOverlayColor,\n\tcoverRef,\n\tcurrentSettings,\n\tupdateDimRatio,\n\tfeaturedImage,\n} ) {\n\tconst {\n\t\tuseFeaturedImage,\n\t\tid,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\ttagName,\n\t} = attributes;\n\tconst {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\turl,\n\t\toverlayColor,\n\t} = currentSettings;\n\n\tconst sizeSlug = attributes.sizeSlug || DEFAULT_MEDIA_SIZE_SLUG;\n\n\tconst { gradientValue, setGradient } = __experimentalUseGradient();\n\tconst { getSettings } = useSelect( blockEditorStore );\n\n\tconst imageSizes = getSettings()?.imageSizes;\n\n\tconst image = useSelect(\n\t\t( select ) =>\n\t\t\tid && isImageBackground\n\t\t\t\t? select( coreStore ).getMedia( id, { context: 'view' } )\n\t\t\t\t: null,\n\t\t[ id, isImageBackground ]\n\t);\n\n\tconst currentBackgroundImage = useFeaturedImage ? featuredImage : image;\n\n\tfunction updateImage( newSizeSlug ) {\n\t\tconst newUrl =\n\t\t\tcurrentBackgroundImage?.media_details?.sizes?.[ newSizeSlug ]\n\t\t\t\t?.source_url;\n\t\tif ( ! newUrl ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\turl: newUrl,\n\t\t\tsizeSlug: newSizeSlug,\n\t\t} );\n\t}\n\n\tconst imageSizeOptions = imageSizes\n\t\t?.filter(\n\t\t\t( { slug } ) =>\n\t\t\t\tcurrentBackgroundImage?.media_details?.sizes?.[ slug ]\n\t\t\t\t\t?.source_url\n\t\t)\n\t\t?.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\n\tconst toggleParallax = () => {\n\t\tsetAttributes( {\n\t\t\thasParallax: ! hasParallax,\n\t\t\t...( ! hasParallax ? { focalPoint: undefined } : {} ),\n\t\t} );\n\t};\n\n\tconst toggleIsRepeated = () => {\n\t\tsetAttributes( {\n\t\t\tisRepeated: ! isRepeated,\n\t\t} );\n\t};\n\n\tconst showFocalPointPicker =\n\t\tisVideoBackground ||\n\t\t( isImageBackground && ( ! hasParallax || isRepeated ) );\n\n\tconst imperativeFocalPointPreview = ( value ) => {\n\t\tconst [ styleOfRef, property ] = mediaElement.current\n\t\t\t? [ mediaElement.current.style, 'objectPosition' ]\n\t\t\t: [ coverRef.current.style, 'backgroundPosition' ];\n\t\tstyleOfRef[ property ] = mediaPosition( value );\n\t};\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\n\tconst htmlElementMessages = {\n\t\theader: __(\n\t\t\t'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'\n\t\t),\n\t\tmain: __(\n\t\t\t'The <main> element should be used for the primary content of your document only.'\n\t\t),\n\t\tsection: __(\n\t\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t\t),\n\t\tarticle: __(\n\t\t\t'The <article> element should represent a self-contained, syndicatable portion of the document.'\n\t\t),\n\t\taside: __(\n\t\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t\t),\n\t\tfooter: __(\n\t\t\t'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'\n\t\t),\n\t};\n\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ !! url && (\n\t\t\t\t\t<ToolsPanel\n\t\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\thasParallax: false,\n\t\t\t\t\t\t\t\tfocalPoint: undefined,\n\t\t\t\t\t\t\t\tisRepeated: false,\n\t\t\t\t\t\t\t\talt: '',\n\t\t\t\t\t\t\t\tsizeSlug: undefined,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isImageBackground && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\t\thasValue={ () => hasParallax }\n\t\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\thasParallax: false,\n\t\t\t\t\t\t\t\t\t\t\tfocalPoint: undefined,\n\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\t\t\t\tchecked={ hasParallax }\n\t\t\t\t\t\t\t\t\t\tonChange={ toggleParallax }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ToolsPanelItem>\n\n\t\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Repeated background' ) }\n\t\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\t\thasValue={ () => isRepeated }\n\t\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tisRepeated: false,\n\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Repeated background' ) }\n\t\t\t\t\t\t\t\t\t\tchecked={ isRepeated }\n\t\t\t\t\t\t\t\t\t\tonChange={ toggleIsRepeated }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showFocalPointPicker && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\tlabel={ __( 'Focal point' ) }\n\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\thasValue={ () => !! focalPoint }\n\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfocalPoint: undefined,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<FocalPointPicker\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Focal point' ) }\n\t\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\t\tvalue={ focalPoint }\n\t\t\t\t\t\t\t\t\tonDragStart={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\t\tonDrag={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\t\tonChange={ ( newFocalPoint ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tfocalPoint: newFocalPoint,\n\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! useFeaturedImage && url && ! isVideoBackground && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\t\thasValue={ () => !! alt }\n\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { alt: '' } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\t\t\tonChange={ ( newAlt ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { alt: newAlt } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\t\thref={\n\t\t\t\t\t\t\t\t\t\t\t\t\t// translators: Localized tutorial, if one exists. W3C Web Accessibility Initiative link has list of existing translations.\n\t\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'https://www.w3.org/WAI/tutorials/images/decision-tree/'\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image.'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ !! imageSizeOptions?.length && (\n\t\t\t\t\t\t\t<ResolutionTool\n\t\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\t\tonChange={ updateImage }\n\t\t\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\t\t\tdefaultValue={ DEFAULT_MEDIA_SIZE_SLUG }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ToolsPanel>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t{ colorGradientSettings.hasColorsOrGradients && (\n\t\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayColor.color,\n\t\t\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\t\t\tlabel: __( 'Overlay' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayColor,\n\t\t\t\t\t\t\t\tonGradientChange: setGradient,\n\t\t\t\t\t\t\t\tisShownByDefault: true,\n\t\t\t\t\t\t\t\tresetAllFilter: () => ( {\n\t\t\t\t\t\t\t\t\toverlayColor: undefined,\n\t\t\t\t\t\t\t\t\tcustomOverlayColor: undefined,\n\t\t\t\t\t\t\t\t\tgradient: undefined,\n\t\t\t\t\t\t\t\t\tcustomGradient: undefined,\n\t\t\t\t\t\t\t\t} ),\n\t\t\t\t\t\t\t\tclearable: true,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\thasValue={ () => {\n\t\t\t\t\t\t\t// If there's a media background the dimRatio will be\n\t\t\t\t\t\t\t// defaulted to 50 whereas it will be 100 for colors.\n\t\t\t\t\t\t\treturn dimRatio === undefined\n\t\t\t\t\t\t\t\t? false\n\t\t\t\t\t\t\t\t: dimRatio !== ( url ? 50 : 100 );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\t\t\tonDeselect={ () => updateDimRatio( url ? 50 : 100 ) }\n\t\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\t\tdimRatio: url ? 50 : 100,\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\t\t\tonChange={ ( newDimRatio ) =>\n\t\t\t\t\t\t\t\tupdateDimRatio( newDimRatio )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\t\tstep={ 10 }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<InspectorControls group=\"dimensions\">\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\thasValue={ () => !! minHeight }\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<CoverHeightInput\n\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\tattributes?.style?.dimensions?.aspectRatio\n\t\t\t\t\t\t\t\t? ''\n\t\t\t\t\t\t\t\t: minHeight\n\t\t\t\t\t\t}\n\t\t\t\t\t\tunit={ minHeightUnit }\n\t\t\t\t\t\tonChange={ ( newMinHeight ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeight: newMinHeight,\n\t\t\t\t\t\t\t\tstyle: cleanEmptyObject( {\n\t\t\t\t\t\t\t\t\t...attributes?.style,\n\t\t\t\t\t\t\t\t\tdimensions: {\n\t\t\t\t\t\t\t\t\t\t...attributes?.style?.dimensions,\n\t\t\t\t\t\t\t\t\t\taspectRatio: undefined, // Reset aspect ratio when minHeight is set.\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t} ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeightUnit: nextUnit,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ tagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -54,7 +54,7 @@ function useMerge(clientId, onMerge) {
|
|
|
54
54
|
* return the next list item of the parent list item if it exists.
|
|
55
55
|
*
|
|
56
56
|
* @param {string} id A list item client ID.
|
|
57
|
-
* @return {string
|
|
57
|
+
* @return {?string} The client ID of the next list item.
|
|
58
58
|
*/
|
|
59
59
|
function _getNextId(id) {
|
|
60
60
|
const next = getNextBlockClientId(id);
|
|
@@ -73,7 +73,7 @@ function useMerge(clientId, onMerge) {
|
|
|
73
73
|
* line, regardless of indentation level.
|
|
74
74
|
*
|
|
75
75
|
* @param {string} id The client ID of the current list item.
|
|
76
|
-
* @return {string
|
|
76
|
+
* @return {?string} The client ID of the next list item.
|
|
77
77
|
*/
|
|
78
78
|
function getNextId(id) {
|
|
79
79
|
const order = getBlockOrder(id);
|