@wordpress/block-library 9.8.5 → 9.8.6
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/build/cover/edit/index.js +4 -2
- package/build/cover/edit/index.js.map +1 -1
- package/build-module/cover/edit/index.js +5 -3
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-style/editor-rtl.css +2 -2
- package/build-style/editor.css +2 -2
- package/build-style/group/editor-rtl.css +2 -2
- package/build-style/group/editor.css +2 -2
- package/package.json +10 -10
- package/src/cover/edit/index.js +6 -2
- package/src/group/editor.scss +2 -2
|
@@ -211,6 +211,8 @@ function CoverEdit({
|
|
|
211
211
|
const isUploadingMedia = isTemporaryMedia(id, url);
|
|
212
212
|
const isImageBackground = _shared.IMAGE_BACKGROUND_TYPE === backgroundType;
|
|
213
213
|
const isVideoBackground = _shared.VIDEO_BACKGROUND_TYPE === backgroundType;
|
|
214
|
+
const blockEditingMode = (0, _blockEditor.useBlockEditingMode)();
|
|
215
|
+
const hasNonContentControls = blockEditingMode === 'default';
|
|
214
216
|
const [resizeListener, {
|
|
215
217
|
height,
|
|
216
218
|
width
|
|
@@ -341,7 +343,7 @@ function CoverEdit({
|
|
|
341
343
|
};
|
|
342
344
|
if (!useFeaturedImage && !hasInnerBlocks && !hasBackground) {
|
|
343
345
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
344
|
-
children: [blockControls, inspectorControls, isSelected && /*#__PURE__*/(0, _jsxRuntime.jsx)(_resizableCoverPopover.default, {
|
|
346
|
+
children: [blockControls, inspectorControls, hasNonContentControls && isSelected && /*#__PURE__*/(0, _jsxRuntime.jsx)(_resizableCoverPopover.default, {
|
|
345
347
|
...resizableCoverProps
|
|
346
348
|
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(TagName, {
|
|
347
349
|
...blockProps,
|
|
@@ -435,7 +437,7 @@ function CoverEdit({
|
|
|
435
437
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
436
438
|
...innerBlocksProps
|
|
437
439
|
})]
|
|
438
|
-
}), isSelected && /*#__PURE__*/(0, _jsxRuntime.jsx)(_resizableCoverPopover.default, {
|
|
440
|
+
}), hasNonContentControls && isSelected && /*#__PURE__*/(0, _jsxRuntime.jsx)(_resizableCoverPopover.default, {
|
|
439
441
|
...resizableCoverProps
|
|
440
442
|
})]
|
|
441
443
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_coreData","_element","_components","_compose","_blockEditor","_i18n","_data","_blob","_notices","_shared","_inspectorControls","_blockControls","_coverPlaceholder","_resizableCoverPopover","_colorUtils","_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","featuredImage","useEntityProp","__unstableMarkNextChangeAsNotPersistent","useDispatch","blockEditorStore","media","useSelect","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","onClearMedia","DEFAULT_OVERLAY_COLOR","DEFAULT_BACKGROUND_COLOR","onSetOverlayColor","onUpdateDimRatio","onUploadError","message","isUploadingMedia","isImageBackground","isVideoBackground","VIDEO_BACKGROUND_TYPE","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","dimRatioToClass","class","Placeholder","withIllustration","src","role","autoPlay","muted","loop","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} 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';\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} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\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// Disable reason: Update the block only when the featured image changes.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\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\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 [ 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 ? true : false,\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{ 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\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{ ! 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\t\t\t\t{ isUploadingMedia && <Spinner /> }\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{ 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","_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","featuredImage","useEntityProp","__unstableMarkNextChangeAsNotPersistent","useDispatch","blockEditorStore","media","useSelect","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","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","dimRatioToClass","class","Placeholder","withIllustration","src","role","autoPlay","muted","loop","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';\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} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\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// Disable reason: Update the block only when the featured image changes.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\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\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 ? true : false,\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\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{ ! 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\t\t\t\t{ isUploadingMedia && <Spinner /> }\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":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,YAAA,GAAAL,OAAA;AAUA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAP,OAAA;AACA,IAAAQ,KAAA,GAAAR,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AAKA,IAAAU,OAAA,GAAAV,OAAA;AASA,IAAAW,kBAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,cAAA,GAAAb,sBAAA,CAAAC,OAAA;AACA,IAAAa,iBAAA,GAAAd,sBAAA,CAAAC,OAAA;AACA,IAAAc,sBAAA,GAAAf,sBAAA,CAAAC,OAAA;AACA,IAAAe,WAAA,GAAAf,OAAA;AAKuB,IAAAgB,WAAA,GAAAhB,OAAA;AAhDvB;AACA;AACA;;AAGA;AACA;AACA;;AAoBA;AACA;AACA;;AAqBA,SAASiB,sBAAsBA,CAAEC,UAAU,EAAG;EAC7C,OAAO,CACN,CACC,gBAAgB,EAChB;IACCC,KAAK,EAAE,QAAQ;IACfC,WAAW,EAAE,IAAAC,QAAE,EAAE,cAAe,CAAC;IACjC,GAAGH;EACJ,CAAC,CACD,CACD;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMI,gBAAgB,GAAGA,CAAEC,EAAE,EAAEC,GAAG,KAAM,CAAED,EAAE,IAAI,IAAAE,eAAS,EAAED,GAAI,CAAC;AAEhE,SAASE,SAASA,CAAE;EACnBR,UAAU;EACVS,QAAQ;EACRC,UAAU;EACVC,YAAY;EACZC,aAAa;EACbC,eAAe;EACfC,eAAe;EACfC,OAAO,EAAE;IAAEC,MAAM;IAAEC;EAAS;AAC7B,CAAC,EAAG;EACH,MAAM;IACLC,eAAe;IACfb,EAAE;IACFC,GAAG,EAAEa,WAAW;IAChBC,cAAc,EAAEC,sBAAsB;IACtCC,gBAAgB;IAChBC,QAAQ;IACRC,UAAU;IACVC,WAAW;IACXC,MAAM;IACNC,UAAU;IACVC,SAAS;IACTC,aAAa;IACbC,GAAG;IACHC,aAAa;IACbC,YAAY;IACZC,OAAO,EAAEC,OAAO,GAAG,KAAK;IACxBC;EACD,CAAC,GAAGnC,UAAU;EAEd,MAAM,CAAEoC,aAAa,CAAE,GAAG,IAAAC,uBAAa,EACtC,UAAU,EACVpB,QAAQ,EACR,gBAAgB,EAChBD,MACD,CAAC;EAED,MAAM;IAAEsB;EAAwC,CAAC,GAChD,IAAAC,iBAAW,EAAEC,kBAAiB,CAAC;EAChC,MAAMC,KAAK,GAAG,IAAAC,eAAS,EACpBC,MAAM,IACPP,aAAa,IACbO,MAAM,CAAEC,eAAU,CAAC,CAACC,QAAQ,CAAET,aAAa,EAAE;IAAErB,OAAO,EAAE;EAAO,CAAE,CAAC,EACnE,CAAEqB,aAAa,CAChB,CAAC;EACD,MAAMU,QAAQ,GAAGL,KAAK,EAAEM,UAAU;;EAElC;EACA;EACA;EACA;EACA,IAAAC,kBAAS,EAAE,MAAM;IAChB,CAAE,YAAY;MACb,IAAK,CAAE1B,gBAAgB,EAAG;QACzB;MACD;MAEA,MAAM2B,sBAAsB,GAAG,MAAM,IAAAC,yBAAa,EAAEJ,QAAS,CAAC;MAE9D,IAAIK,eAAe,GAAGxC,YAAY,CAACyC,KAAK;MACxC,IAAK,CAAEjB,kBAAkB,EAAG;QAC3BgB,eAAe,GAAGF,sBAAsB;QACxCX,uCAAuC,CAAC,CAAC;QACzCzB,eAAe,CAAEsC,eAAgB,CAAC;MACnC;MAEA,MAAME,SAAS,GAAG,IAAAC,2BAAe,EAChC/B,QAAQ,EACR4B,eAAe,EACfF,sBACD,CAAC;MACDX,uCAAuC,CAAC,CAAC;MACzC1B,aAAa,CAAE;QACdc,MAAM,EAAE2B,SAAS;QACjBlB,kBAAkB,EAAEA,kBAAkB,IAAI;MAC3C,CAAE,CAAC;IACJ,CAAC,EAAG,CAAC;IACL;IACA;EACD,CAAC,EAAE,CAAEW,QAAQ,CAAG,CAAC;;EAEjB;EACA;EACA;EACA;EACA,MAAMxC,GAAG,GAAGgB,gBAAgB,GACzBwB,QAAQ;EACR;EACA3B,WAAW,EAAEoC,UAAU,CAAE,OAAO,EAAE,GAAI,CAAC;EAC1C,MAAMnC,cAAc,GAAGE,gBAAgB,GACpCkC,6BAAqB,GACrBnC,sBAAsB;EAEzB,MAAM;IAAEoC;EAAkB,CAAC,GAAG,IAAAlB,iBAAW,EAAEmB,cAAa,CAAC;EACzD,MAAM;IAAEC,aAAa;IAAEC;EAAc,CAAC,GAAG,IAAAC,sCAAyB,EAAC,CAAC;EAEpE,MAAMC,aAAa,GAAG,MAAQC,QAAQ,IAAM;IAC3C,MAAMC,eAAe,GAAG,IAAAC,2BAAmB,EAAEF,QAAS,CAAC;IACvD,MAAMG,OAAO,GAAG,CAAEH,QAAQ,EAAEI,IAAI,EAAEJ,QAAQ,EAAEK,UAAU,CAAE,CAACC,QAAQ,CAChEb,6BACD,CAAC;IAED,MAAMP,sBAAsB,GAAG,MAAM,IAAAC,yBAAa,EACjDgB,OAAO,GAAGH,QAAQ,EAAEzD,GAAG,GAAGgE,SAC3B,CAAC;IAED,IAAInB,eAAe,GAAGxC,YAAY,CAACyC,KAAK;IACxC,IAAK,CAAEjB,kBAAkB,EAAG;MAC3BgB,eAAe,GAAGF,sBAAsB;MACxCpC,eAAe,CAAEsC,eAAgB,CAAC;;MAElC;MACAb,uCAAuC,CAAC,CAAC;IAC1C;;IAEA;IACA;IACA;IACA,MAAMiC,WAAW,GAChBpD,WAAW,KAAKmD,SAAS,IAAI/C,QAAQ,KAAK,GAAG,GAAG,EAAE,GAAGA,QAAQ;IAE9D,MAAM8B,SAAS,GAAG,IAAAC,2BAAe,EAChCiB,WAAW,EACXpB,eAAe,EACfF,sBACD,CAAC;IAEDrC,aAAa,CAAE;MACd,GAAGoD,eAAe;MAClBxC,UAAU,EAAE8C,SAAS;MACrBhD,gBAAgB,EAAEgD,SAAS;MAC3B/C,QAAQ,EAAEgD,WAAW;MACrB7C,MAAM,EAAE2B,SAAS;MACjBlB,kBAAkB,EAAEA,kBAAkB,IAAI;IAC3C,CAAE,CAAC;EACJ,CAAC;EAED,MAAMqC,YAAY,GAAGA,CAAA,KAAM;IAC1B,IAAIrB,eAAe,GAAGxC,YAAY,CAACyC,KAAK;IACxC,IAAK,CAAEjB,kBAAkB,EAAG;MAC3BgB,eAAe,GAAGsB,iCAAqB;MACvC5D,eAAe,CAAEyD,SAAU,CAAC;;MAE5B;MACAhC,uCAAuC,CAAC,CAAC;IAC1C;IAEA,MAAMe,SAAS,GAAG,IAAAC,2BAAe,EAChC/B,QAAQ,EACR4B,eAAe,EACfuB,oCACD,CAAC;IAED9D,aAAa,CAAE;MACdN,GAAG,EAAEgE,SAAS;MACdjE,EAAE,EAAEiE,SAAS;MACblD,cAAc,EAAEkD,SAAS;MACzB9C,UAAU,EAAE8C,SAAS;MACrB7C,WAAW,EAAE6C,SAAS;MACtB3C,UAAU,EAAE2C,SAAS;MACrBhD,gBAAgB,EAAEgD,SAAS;MAC3B5C,MAAM,EAAE2B;IACT,CAAE,CAAC;EACJ,CAAC;EAED,MAAMsB,iBAAiB,GAAG,MAAQxB,eAAe,IAAM;IACtD,MAAMF,sBAAsB,GAAG,MAAM,IAAAC,yBAAa,EAAE5C,GAAI,CAAC;IACzD,MAAM+C,SAAS,GAAG,IAAAC,2BAAe,EAChC/B,QAAQ,EACR4B,eAAe,EACfF,sBACD,CAAC;IAEDpC,eAAe,CAAEsC,eAAgB,CAAC;;IAElC;IACAb,uCAAuC,CAAC,CAAC;IAEzC1B,aAAa,CAAE;MACduB,kBAAkB,EAAE,IAAI;MACxBT,MAAM,EAAE2B;IACT,CAAE,CAAC;EACJ,CAAC;EAED,MAAMuB,gBAAgB,GAAG,MAAQL,WAAW,IAAM;IACjD,MAAMtB,sBAAsB,GAAG,MAAM,IAAAC,yBAAa,EAAE5C,GAAI,CAAC;IACzD,MAAM+C,SAAS,GAAG,IAAAC,2BAAe,EAChCiB,WAAW,EACX5D,YAAY,CAACyC,KAAK,EAClBH,sBACD,CAAC;IAEDrC,aAAa,CAAE;MACdW,QAAQ,EAAEgD,WAAW;MACrB7C,MAAM,EAAE2B;IACT,CAAE,CAAC;EACJ,CAAC;EAED,MAAMwB,aAAa,GAAKC,OAAO,IAAM;IACpCrB,iBAAiB,CAAEqB,OAAO,EAAE;MAAEX,IAAI,EAAE;IAAW,CAAE,CAAC;EACnD,CAAC;EAED,MAAMY,gBAAgB,GAAG3E,gBAAgB,CAAEC,EAAE,EAAEC,GAAI,CAAC;EAEpD,MAAM0E,iBAAiB,GAAGxB,6BAAqB,KAAKpC,cAAc;EAClE,MAAM6D,iBAAiB,GAAGC,6BAAqB,KAAK9D,cAAc;EAElE,MAAM+D,gBAAgB,GAAG,IAAAC,gCAAmB,EAAC,CAAC;EAC9C,MAAMC,qBAAqB,GAAGF,gBAAgB,KAAK,SAAS;EAE5D,MAAM,CAAEG,cAAc,EAAE;IAAEC,MAAM;IAAEC;EAAM,CAAC,CAAE,GAAG,IAAAC,0BAAiB,EAAC,CAAC;EACjE,MAAMC,sBAAsB,GAAG,IAAAC,gBAAO,EAAE,MAAM;IAC7C,OAAO;MACNJ,MAAM,EAAE1D,aAAa,KAAK,IAAI,GAAGD,SAAS,GAAG,MAAM;MACnD4D,KAAK,EAAE;IACR,CAAC;EACF,CAAC,EAAE,CAAE5D,SAAS,EAAEC,aAAa,CAAG,CAAC;EAEjC,MAAM+D,iBAAiB,GACtBhE,SAAS,IAAIC,aAAa,GACtB,GAAGD,SAAW,GAAGC,aAAe,EAAC,GAClCD,SAAS;EAEb,MAAMiE,YAAY,GAAG,EAAIpE,WAAW,IAAIE,UAAU,CAAE;EAEpD,MAAMmE,KAAK,GAAG;IACblE,SAAS,EAAEgE,iBAAiB,IAAItB;EACjC,CAAC;EAED,MAAMyB,eAAe,GAAGzF,GAAG,GAAI,OAAOA,GAAK,GAAE,GAAGgE,SAAS;EAEzD,MAAM0B,kBAAkB,GAAG,IAAAC,qBAAa,EAAEzE,UAAW,CAAC;EAEtD,MAAM0E,OAAO,GAAG;IAAEC,eAAe,EAAExF,YAAY,CAACyC;EAAM,CAAC;EACvD,MAAMgD,UAAU,GAAG;IAClBC,cAAc,EACb7E,UAAU,IAAIqE,YAAY,GACvB,IAAAI,qBAAa,EAAEzE,UAAW,CAAC,GAC3B8C;EACL,CAAC;EAED,MAAMgC,aAAa,GAAG,CAAC,EAAIhG,GAAG,IAAIK,YAAY,CAACyC,KAAK,IAAIQ,aAAa,CAAE;EAEvE,MAAM2C,cAAc,GAAG,IAAA7D,eAAS,EAC7BC,MAAM,IACPA,MAAM,CAAEH,kBAAiB,CAAC,CAACgE,QAAQ,CAAE/F,QAAS,CAAC,CAACgG,WAAW,CAACC,MAAM,GAClE,CAAC,EACF,CAAEjG,QAAQ,CACX,CAAC;EAED,MAAMkG,GAAG,GAAG,IAAAC,eAAM,EAAC,CAAC;EACpB,MAAMC,UAAU,GAAG,IAAAC,0BAAa,EAAE;IAAEH;EAAI,CAAE,CAAC;;EAE3C;EACA,MAAM,CAAEI,SAAS,CAAE,GAAG,IAAAC,wBAAW,EAAE,sBAAuB,CAAC;EAC3D,MAAMC,YAAY,GAAGF,SAAS,EAAEL,MAAM,GAAG,CAAC;EAC1C,MAAMQ,mBAAmB,GAAGnH,sBAAsB,CAAE;IACnDoH,QAAQ,EAAEF,YAAY,GAAG,OAAO,GAAG3C;EACpC,CAAE,CAAC;EAEH,MAAM8C,gBAAgB,GAAG,IAAAC,gCAAmB,EAC3C;IACCC,SAAS,EAAE;EACZ,CAAC,EACD;IACC;IACA;IACAC,QAAQ,EAAE,CAAEhB,cAAc,GAAGW,mBAAmB,GAAG5C,SAAS;IAC5DkD,8BAA8B,EAAE,IAAI;IACpCzF,aAAa;IACbC,YAAY;IACZyF,eAAe,EAAEd,GAAG,CAACe;EACtB,CACD,CAAC;EAED,MAAMC,YAAY,GAAG,IAAAf,eAAM,EAAC,CAAC;EAC7B,MAAMgB,eAAe,GAAG;IACvB3C,iBAAiB;IACjBD,iBAAiB;IACjB2C,YAAY;IACZpB,cAAc;IACdjG,GAAG;IACHuF,YAAY;IACZlF;EACD,CAAC;EAED,MAAMkH,sBAAsB,GAAG,MAAAA,CAAA,KAAY;IAC1C,MAAMC,mBAAmB,GAAG,CAAExG,gBAAgB;IAE9C,MAAM2B,sBAAsB,GAAG6E,mBAAmB,GAC/C,MAAM,IAAA5E,yBAAa,EAAEJ,QAAS,CAAC,GAC/B4B,oCAAwB;IAE3B,MAAMvB,eAAe,GAAG,CAAEhB,kBAAkB,GACzCc,sBAAsB,GACtBtC,YAAY,CAACyC,KAAK;IAErB,IAAK,CAAEjB,kBAAkB,EAAG;MAC3B,IAAK2F,mBAAmB,EAAG;QAC1BjH,eAAe,CAAEsC,eAAgB,CAAC;MACnC,CAAC,MAAM;QACNtC,eAAe,CAAEyD,SAAU,CAAC;MAC7B;;MAEA;MACAhC,uCAAuC,CAAC,CAAC;IAC1C;IAEA,MAAMiC,WAAW,GAAGhD,QAAQ,KAAK,GAAG,GAAG,EAAE,GAAGA,QAAQ;IACpD,MAAM8B,SAAS,GAAG,IAAAC,2BAAe,EAChCiB,WAAW,EACXpB,eAAe,EACfF,sBACD,CAAC;IAEDrC,aAAa,CAAE;MACdP,EAAE,EAAEiE,SAAS;MACbhE,GAAG,EAAEgE,SAAS;MACdhD,gBAAgB,EAAEwG,mBAAmB;MACrCvG,QAAQ,EAAEgD,WAAW;MACrBnD,cAAc,EAAEE,gBAAgB,GAC7BkC,6BAAqB,GACrBc,SAAS;MACZ5C,MAAM,EAAE2B;IACT,CAAE,CAAC;EACJ,CAAC;EAED,MAAM0E,aAAa,gBAClB,IAAAjI,WAAA,CAAAkI,GAAA,EAACtI,cAAA,CAAAuI,OAAkB;IAClBjI,UAAU,EAAGA,UAAY;IACzBY,aAAa,EAAGA,aAAe;IAC/BkD,aAAa,EAAGA,aAAe;IAC/B8D,eAAe,EAAGA,eAAiB;IACnCC,sBAAsB,EAAGA,sBAAwB;IACjDrD,YAAY,EAAGA;EAAc,CAC7B,CACD;EAED,MAAM0D,iBAAiB,gBACtB,IAAApI,WAAA,CAAAkI,GAAA,EAACvI,kBAAA,CAAAwI,OAAsB;IACtBjI,UAAU,EAAGA,UAAY;IACzBY,aAAa,EAAGA,aAAe;IAC/BH,QAAQ,EAAGA,QAAU;IACrBI,eAAe,EAAG8D,iBAAmB;IACrCwD,QAAQ,EAAGxB,GAAK;IAChBiB,eAAe,EAAGA,eAAiB;IACnCC,sBAAsB,EAAGA,sBAAwB;IACjDO,cAAc,EAAGxD,gBAAkB;IACnCJ,YAAY,EAAGA;EAAc,CAC7B,CACD;EAED,MAAM6D,mBAAmB,GAAG;IAC3Bf,SAAS,EAAE,uCAAuC;IAClD7G,QAAQ;IACR8E,MAAM;IACN3D,SAAS,EAAEgE,iBAAiB;IAC5B0C,aAAa,EAAEA,CAAA,KAAM;MACpB1H,aAAa,CAAE;QAAEiB,aAAa,EAAE;MAAK,CAAE,CAAC;MACxCf,eAAe,CAAE,KAAM,CAAC;IACzB,CAAC;IACDyH,QAAQ,EAAIC,KAAK,IAAM;MACtB5H,aAAa,CAAE;QAAEgB,SAAS,EAAE4G;MAAM,CAAE,CAAC;IACtC,CAAC;IACDC,YAAY,EAAIC,YAAY,IAAM;MACjC5H,eAAe,CAAE,IAAK,CAAC;MACvBF,aAAa,CAAE;QAAEgB,SAAS,EAAE8G;MAAa,CAAE,CAAC;IAC7C,CAAC;IACD;IACAC,UAAU,EAAE,CAAE3I,UAAU,CAAC8F,KAAK,EAAE8C,UAAU,EAAEC,WAAW,GAAG,IAAI,GAAG,KAAK;IACtEC,IAAI,EAAEpD,sBAAsB;IAC5BF;EACD,CAAC;EAED,IAAK,CAAElE,gBAAgB,IAAI,CAAEiF,cAAc,IAAI,CAAED,aAAa,EAAG;IAChE,oBACC,IAAAxG,WAAA,CAAAiJ,IAAA,EAAAjJ,WAAA,CAAAkJ,QAAA;MAAAC,QAAA,GACGlB,aAAa,EACbG,iBAAiB,EACjB7C,qBAAqB,IAAI3E,UAAU,iBACpC,IAAAZ,WAAA,CAAAkI,GAAA,EAACpI,sBAAA,CAAAqI,OAAqB;QAAA,GAAMI;MAAmB,CAAI,CACnD,eACD,IAAAvI,WAAA,CAAAiJ,IAAA,EAAC7G,OAAO;QAAA,GACF2E,UAAU;QACfS,SAAS,EAAG,IAAA4B,aAAI,EAAE,gBAAgB,EAAErC,UAAU,CAACS,SAAU,CAAG;QAC5DxB,KAAK,EAAG;UACP,GAAGe,UAAU,CAACf,KAAK;UACnBlE,SAAS,EAAEgE,iBAAiB,IAAItB;QACjC,CAAG;QAAA2E,QAAA,GAED3D,cAAc,eAChB,IAAAxF,WAAA,CAAAkI,GAAA,EAACrI,iBAAA,CAAAsI,OAAgB;UAChBnE,aAAa,EAAGA,aAAe;UAC/BqF,OAAO,EAAGtE,aAAe;UACzBgD,sBAAsB,EAAGA,sBAAwB;UAAAoB,QAAA,eAEjD,IAAAnJ,WAAA,CAAAkI,GAAA;YAAKV,SAAS,EAAC,gDAAgD;YAAA2B,QAAA,eAC9D,IAAAnJ,WAAA,CAAAkI,GAAA,EAAC7I,YAAA,CAAAiK,YAAY;cACZC,mBAAmB;cACnBb,KAAK,EAAG7H,YAAY,CAACyC,KAAO;cAC5BkG,QAAQ,EAAG3E,iBAAmB;cAC9B4E,SAAS,EAAG;YAAO,CACnB;UAAC,CACE;QAAC,CACW,CAAC;MAAA,CACX,CAAC;IAAA,CACT,CAAC;EAEL;EAEA,MAAMC,OAAO,GAAG,IAAAN,aAAI,EACnB;IACC,eAAe,EAAExH,MAAM;IACvB,UAAU,EAAE,CAAEA,MAAM;IACpB,cAAc,EAAEqD,gBAAgB;IAChC,cAAc,EAAEtD,WAAW;IAC3B,aAAa,EAAEE,UAAU;IACzB,6BAA6B,EAC5B,CAAE,IAAA8H,+BAAuB,EAAEvI,eAAgB;EAC7C,CAAC,EACD,IAAAwI,4BAAoB,EAAExI,eAAgB,CACvC,CAAC;EAED,MAAMyI,WAAW,GAChBrJ,GAAG,IAAI,CAAEgB,gBAAgB,IAAMA,gBAAgB,IAAI,CAAEhB,GAAK;EAE3D,oBACC,IAAAR,WAAA,CAAAiJ,IAAA,EAAAjJ,WAAA,CAAAkJ,QAAA;IAAAC,QAAA,GACGlB,aAAa,EACbG,iBAAiB,eACnB,IAAApI,WAAA,CAAAiJ,IAAA,EAAC7G,OAAO;MAAA,GACF2E,UAAU;MACfS,SAAS,EAAG,IAAA4B,aAAI,EAAEM,OAAO,EAAE3C,UAAU,CAACS,SAAU,CAAG;MACnDxB,KAAK,EAAG;QAAE,GAAGA,KAAK;QAAE,GAAGe,UAAU,CAACf;MAAM,CAAG;MAC3C,YAAWxF,GAAK;MAAA2I,QAAA,GAEd3D,cAAc,EACdqE,WAAW,iBACZ,IAAA7J,WAAA,CAAAkI,GAAA;QACC,eAAY,MAAM;QAClBV,SAAS,EAAG,IAAA4B,aAAI,EACf,4BAA4B,EAC5B,IAAAU,uBAAe,EAAErI,QAAS,CAAC,EAC3B;UACC,CAAEZ,YAAY,CAACkJ,KAAK,GAAIlJ,YAAY,CAACkJ,KAAK;UAC1C,oBAAoB,EAAEtI,QAAQ,KAAK+C,SAAS;UAC5C;UACA;UACA;UACA,qCAAqC,EACpChE,GAAG,IAAIsD,aAAa,IAAIrC,QAAQ,KAAK,CAAC;UACvC,yBAAyB,EAAEqC,aAAa;UACxC,CAAED,aAAa,GAAIA;QACpB,CACD,CAAG;QACHmC,KAAK,EAAG;UAAEC,eAAe,EAAEnC,aAAa;UAAE,GAAGsC;QAAQ;MAAG,CACxD,CACD,EAEC,CAAE5F,GAAG,IAAIgB,gBAAgB,iBAC1B,IAAAxB,WAAA,CAAAkI,GAAA,EAAC/I,WAAA,CAAA6K,WAAW;QACXxC,SAAS,EAAC,0CAA0C;QACpDyC,gBAAgB;MAAA,CAChB,CACD,EAECzJ,GAAG,IACJ0E,iBAAiB,KACfa,YAAY,gBACb,IAAA/F,WAAA,CAAAkI,GAAA;QACCrB,GAAG,EAAGgB,YAAc;QACpBL,SAAS,EAAC,kCAAkC;QAC5CxF,GAAG,EAAGA,GAAK;QACXkI,GAAG,EAAG1J,GAAK;QACXwF,KAAK,EAAGM;MAAY,CACpB,CAAC,gBAEF,IAAAtG,WAAA,CAAAkI,GAAA;QACCrB,GAAG,EAAGgB,YAAc;QACpBsC,IAAI,EAAGnI,GAAG,GAAG,KAAK,GAAGwC,SAAW;QAChC,cAAaxC,GAAG,GAAGA,GAAG,GAAGwC,SAAW;QACpCgD,SAAS,EAAG,IAAA4B,aAAI,EACfM,OAAO,EACP,kCACD,CAAG;QACH1D,KAAK,EAAG;UAAEC,eAAe;UAAEC;QAAmB;MAAG,CACjD,CACD,CAAE,EACF1F,GAAG,IAAI2E,iBAAiB,iBACzB,IAAAnF,WAAA,CAAAkI,GAAA;QACCrB,GAAG,EAAGgB,YAAc;QACpBL,SAAS,EAAC,kCAAkC;QAC5C4C,QAAQ;QACRC,KAAK;QACLC,IAAI;QACJJ,GAAG,EAAG1J,GAAK;QACXwF,KAAK,EAAGM;MAAY,CACpB,CACD,EACCrB,gBAAgB,iBAAI,IAAAjF,WAAA,CAAAkI,GAAA,EAAC/I,WAAA,CAAAoL,OAAO,IAAE,CAAC,eACjC,IAAAvK,WAAA,CAAAkI,GAAA,EAACrI,iBAAA,CAAAsI,OAAgB;QAChBqC,mBAAmB;QACnBxG,aAAa,EAAGA,aAAe;QAC/BqF,OAAO,EAAGtE,aAAe;QACzBgD,sBAAsB,EAAGA;MAAwB,CACjD,CAAC,eACF,IAAA/H,WAAA,CAAAkI,GAAA;QAAA,GAAUZ;MAAgB,CAAI,CAAC;IAAA,CACvB,CAAC,EACR/B,qBAAqB,IAAI3E,UAAU,iBACpC,IAAAZ,WAAA,CAAAkI,GAAA,EAACpI,sBAAA,CAAAqI,OAAqB;MAAA,GAAMI;IAAmB,CAAI,CACnD;EAAA,CACA,CAAC;AAEL;AAAC,IAAAkC,QAAA,GAAAC,OAAA,CAAAvC,OAAA,GAEc,IAAAwC,gBAAO,EAAE,CACvB,IAAAC,uBAAU,EAAE;EAAE/J,YAAY,EAAE;AAAmB,CAAE,CAAC,CACjD,CAAC,CAAEH,SAAU,CAAC","ignoreList":[]}
|
|
@@ -10,7 +10,7 @@ import { useEntityProp, store as coreStore } from '@wordpress/core-data';
|
|
|
10
10
|
import { useEffect, useMemo, useRef } from '@wordpress/element';
|
|
11
11
|
import { Placeholder, Spinner } from '@wordpress/components';
|
|
12
12
|
import { compose, useResizeObserver } from '@wordpress/compose';
|
|
13
|
-
import { withColors, ColorPalette, useBlockProps, useSettings, useInnerBlocksProps, __experimentalUseGradient, store as blockEditorStore } from '@wordpress/block-editor';
|
|
13
|
+
import { withColors, ColorPalette, useBlockProps, useSettings, useInnerBlocksProps, __experimentalUseGradient, store as blockEditorStore, useBlockEditingMode } from '@wordpress/block-editor';
|
|
14
14
|
import { __ } from '@wordpress/i18n';
|
|
15
15
|
import { useSelect, useDispatch } from '@wordpress/data';
|
|
16
16
|
import { isBlobURL } from '@wordpress/blob';
|
|
@@ -205,6 +205,8 @@ function CoverEdit({
|
|
|
205
205
|
const isUploadingMedia = isTemporaryMedia(id, url);
|
|
206
206
|
const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
|
|
207
207
|
const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
|
|
208
|
+
const blockEditingMode = useBlockEditingMode();
|
|
209
|
+
const hasNonContentControls = blockEditingMode === 'default';
|
|
208
210
|
const [resizeListener, {
|
|
209
211
|
height,
|
|
210
212
|
width
|
|
@@ -335,7 +337,7 @@ function CoverEdit({
|
|
|
335
337
|
};
|
|
336
338
|
if (!useFeaturedImage && !hasInnerBlocks && !hasBackground) {
|
|
337
339
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
338
|
-
children: [blockControls, inspectorControls, isSelected && /*#__PURE__*/_jsx(ResizableCoverPopover, {
|
|
340
|
+
children: [blockControls, inspectorControls, hasNonContentControls && isSelected && /*#__PURE__*/_jsx(ResizableCoverPopover, {
|
|
339
341
|
...resizableCoverProps
|
|
340
342
|
}), /*#__PURE__*/_jsxs(TagName, {
|
|
341
343
|
...blockProps,
|
|
@@ -429,7 +431,7 @@ function CoverEdit({
|
|
|
429
431
|
}), /*#__PURE__*/_jsx("div", {
|
|
430
432
|
...innerBlocksProps
|
|
431
433
|
})]
|
|
432
|
-
}), isSelected && /*#__PURE__*/_jsx(ResizableCoverPopover, {
|
|
434
|
+
}), hasNonContentControls && isSelected && /*#__PURE__*/_jsx(ResizableCoverPopover, {
|
|
433
435
|
...resizableCoverProps
|
|
434
436
|
})]
|
|
435
437
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","useEntityProp","store","coreStore","useEffect","useMemo","useRef","Placeholder","Spinner","compose","useResizeObserver","withColors","ColorPalette","useBlockProps","useSettings","useInnerBlocksProps","__experimentalUseGradient","blockEditorStore","__","useSelect","useDispatch","isBlobURL","noticesStore","attributesFromMedia","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","dimRatioToClass","isContentPositionCenter","getPositionClassName","mediaPosition","CoverInspectorControls","CoverBlockControls","CoverPlaceholder","ResizableCoverPopover","getMediaColor","compositeIsDark","DEFAULT_BACKGROUND_COLOR","DEFAULT_OVERLAY_COLOR","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","getInnerBlocksTemplate","attributes","align","placeholder","isTemporaryMedia","id","url","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","featuredImage","__unstableMarkNextChangeAsNotPersistent","media","select","getMedia","mediaUrl","source_url","averageBackgroundColor","newOverlayColor","color","newIsDark","replaceAll","createErrorNotice","gradientClass","gradientValue","onSelectMedia","newMedia","mediaAttributes","isImage","type","media_type","includes","undefined","newDimRatio","onClearMedia","onSetOverlayColor","onUpdateDimRatio","onUploadError","message","isUploadingMedia","isImageBackground","isVideoBackground","resizeListener","height","width","resizableBoxDimensions","minHeightWithUnit","isImgElement","style","backgroundImage","backgroundPosition","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","hasInnerBlocks","getBlock","innerBlocks","length","ref","blockProps","fontSizes","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","className","template","templateInsertUpdatesSelection","dropZoneElement","current","mediaElement","currentSettings","toggleUseFeaturedImage","newUseFeaturedImage","blockControls","inspectorControls","coverRef","updateDimRatio","resizableCoverProps","onResizeStart","onResize","value","onResizeStop","newMinHeight","showHandle","dimensions","aspectRatio","size","children","onError","disableCustomColors","onChange","clearable","classes","showOverlay","class","withIllustration","src","role","autoPlay","muted","loop","disableMediaButtons"],"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} 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';\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} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\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// Disable reason: Update the block only when the featured image changes.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\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\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 [ 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 ? true : false,\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{ 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\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{ ! 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\t\t\t\t{ isUploadingMedia && <Spinner /> }\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{ 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","useEntityProp","store","coreStore","useEffect","useMemo","useRef","Placeholder","Spinner","compose","useResizeObserver","withColors","ColorPalette","useBlockProps","useSettings","useInnerBlocksProps","__experimentalUseGradient","blockEditorStore","useBlockEditingMode","__","useSelect","useDispatch","isBlobURL","noticesStore","attributesFromMedia","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","dimRatioToClass","isContentPositionCenter","getPositionClassName","mediaPosition","CoverInspectorControls","CoverBlockControls","CoverPlaceholder","ResizableCoverPopover","getMediaColor","compositeIsDark","DEFAULT_BACKGROUND_COLOR","DEFAULT_OVERLAY_COLOR","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","getInnerBlocksTemplate","attributes","align","placeholder","isTemporaryMedia","id","url","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","featuredImage","__unstableMarkNextChangeAsNotPersistent","media","select","getMedia","mediaUrl","source_url","averageBackgroundColor","newOverlayColor","color","newIsDark","replaceAll","createErrorNotice","gradientClass","gradientValue","onSelectMedia","newMedia","mediaAttributes","isImage","type","media_type","includes","undefined","newDimRatio","onClearMedia","onSetOverlayColor","onUpdateDimRatio","onUploadError","message","isUploadingMedia","isImageBackground","isVideoBackground","blockEditingMode","hasNonContentControls","resizeListener","height","width","resizableBoxDimensions","minHeightWithUnit","isImgElement","style","backgroundImage","backgroundPosition","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","hasInnerBlocks","getBlock","innerBlocks","length","ref","blockProps","fontSizes","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","className","template","templateInsertUpdatesSelection","dropZoneElement","current","mediaElement","currentSettings","toggleUseFeaturedImage","newUseFeaturedImage","blockControls","inspectorControls","coverRef","updateDimRatio","resizableCoverProps","onResizeStart","onResize","value","onResizeStop","newMinHeight","showHandle","dimensions","aspectRatio","size","children","onError","disableCustomColors","onChange","clearable","classes","showOverlay","class","withIllustration","src","role","autoPlay","muted","loop","disableMediaButtons"],"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';\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} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\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// Disable reason: Update the block only when the featured image changes.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\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\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 ? true : false,\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\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{ ! 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\t\t\t\t{ isUploadingMedia && <Spinner /> }\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":[]}
|
|
@@ -1164,9 +1164,9 @@ div[data-type="core/freeform"].is-selected .block-library-classic__toolbar {
|
|
|
1164
1164
|
.wp-block-group.is-layout-flex.block-editor-block-list__block > .block-list-appender:only-child::after {
|
|
1165
1165
|
content: "";
|
|
1166
1166
|
display: flex;
|
|
1167
|
-
flex: 1 0
|
|
1167
|
+
flex: 1 0 40px;
|
|
1168
1168
|
pointer-events: none;
|
|
1169
|
-
min-height:
|
|
1169
|
+
min-height: 38px;
|
|
1170
1170
|
border: 1px dashed currentColor;
|
|
1171
1171
|
}
|
|
1172
1172
|
.wp-block-group.is-layout-flex.block-editor-block-list__block > .block-list-appender:only-child .block-editor-inserter,
|
package/build-style/editor.css
CHANGED
|
@@ -1172,9 +1172,9 @@ div[data-type="core/freeform"].is-selected .block-library-classic__toolbar {
|
|
|
1172
1172
|
.wp-block-group.is-layout-flex.block-editor-block-list__block > .block-list-appender:only-child::after {
|
|
1173
1173
|
content: "";
|
|
1174
1174
|
display: flex;
|
|
1175
|
-
flex: 1 0
|
|
1175
|
+
flex: 1 0 40px;
|
|
1176
1176
|
pointer-events: none;
|
|
1177
|
-
min-height:
|
|
1177
|
+
min-height: 38px;
|
|
1178
1178
|
border: 1px dashed currentColor;
|
|
1179
1179
|
}
|
|
1180
1180
|
.wp-block-group.is-layout-flex.block-editor-block-list__block > .block-list-appender:only-child .block-editor-inserter,
|
|
@@ -121,9 +121,9 @@
|
|
|
121
121
|
.wp-block-group.is-layout-flex.block-editor-block-list__block > .block-list-appender:only-child::after {
|
|
122
122
|
content: "";
|
|
123
123
|
display: flex;
|
|
124
|
-
flex: 1 0
|
|
124
|
+
flex: 1 0 40px;
|
|
125
125
|
pointer-events: none;
|
|
126
|
-
min-height:
|
|
126
|
+
min-height: 38px;
|
|
127
127
|
border: 1px dashed currentColor;
|
|
128
128
|
}
|
|
129
129
|
.wp-block-group.is-layout-flex.block-editor-block-list__block > .block-list-appender:only-child .block-editor-inserter,
|
|
@@ -121,9 +121,9 @@
|
|
|
121
121
|
.wp-block-group.is-layout-flex.block-editor-block-list__block > .block-list-appender:only-child::after {
|
|
122
122
|
content: "";
|
|
123
123
|
display: flex;
|
|
124
|
-
flex: 1 0
|
|
124
|
+
flex: 1 0 40px;
|
|
125
125
|
pointer-events: none;
|
|
126
|
-
min-height:
|
|
126
|
+
min-height: 38px;
|
|
127
127
|
border: 1px dashed currentColor;
|
|
128
128
|
}
|
|
129
129
|
.wp-block-group.is-layout-flex.block-editor-block-list__block > .block-list-appender:only-child .block-editor-inserter,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/block-library",
|
|
3
|
-
"version": "9.8.
|
|
3
|
+
"version": "9.8.6",
|
|
4
4
|
"description": "Block library for the WordPress editor.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"@wordpress/api-fetch": "^7.8.2",
|
|
44
44
|
"@wordpress/autop": "^4.8.1",
|
|
45
45
|
"@wordpress/blob": "^4.8.1",
|
|
46
|
-
"@wordpress/block-editor": "^14.3.
|
|
46
|
+
"@wordpress/block-editor": "^14.3.5",
|
|
47
47
|
"@wordpress/blocks": "^13.8.4",
|
|
48
|
-
"@wordpress/components": "^28.8.
|
|
48
|
+
"@wordpress/components": "^28.8.5",
|
|
49
49
|
"@wordpress/compose": "^7.8.3",
|
|
50
|
-
"@wordpress/core-data": "^7.8.
|
|
50
|
+
"@wordpress/core-data": "^7.8.5",
|
|
51
51
|
"@wordpress/data": "^10.8.3",
|
|
52
52
|
"@wordpress/date": "^5.8.2",
|
|
53
53
|
"@wordpress/deprecated": "^4.8.2",
|
|
@@ -58,17 +58,17 @@
|
|
|
58
58
|
"@wordpress/html-entities": "^4.8.1",
|
|
59
59
|
"@wordpress/i18n": "^5.8.2",
|
|
60
60
|
"@wordpress/icons": "^10.8.2",
|
|
61
|
-
"@wordpress/interactivity": "^6.8.
|
|
62
|
-
"@wordpress/interactivity-router": "^2.8.
|
|
61
|
+
"@wordpress/interactivity": "^6.8.3",
|
|
62
|
+
"@wordpress/interactivity-router": "^2.8.4",
|
|
63
63
|
"@wordpress/keyboard-shortcuts": "^5.8.3",
|
|
64
64
|
"@wordpress/keycodes": "^4.8.2",
|
|
65
65
|
"@wordpress/notices": "^5.8.3",
|
|
66
|
-
"@wordpress/patterns": "^2.8.
|
|
66
|
+
"@wordpress/patterns": "^2.8.5",
|
|
67
67
|
"@wordpress/primitives": "^4.8.1",
|
|
68
68
|
"@wordpress/private-apis": "^1.8.1",
|
|
69
|
-
"@wordpress/reusable-blocks": "^5.8.
|
|
69
|
+
"@wordpress/reusable-blocks": "^5.8.5",
|
|
70
70
|
"@wordpress/rich-text": "^7.8.3",
|
|
71
|
-
"@wordpress/server-side-render": "^5.8.
|
|
71
|
+
"@wordpress/server-side-render": "^5.8.5",
|
|
72
72
|
"@wordpress/url": "^4.8.1",
|
|
73
73
|
"@wordpress/viewport": "^6.8.3",
|
|
74
74
|
"@wordpress/wordcount": "^4.8.1",
|
|
@@ -89,5 +89,5 @@
|
|
|
89
89
|
"publishConfig": {
|
|
90
90
|
"access": "public"
|
|
91
91
|
},
|
|
92
|
-
"gitHead": "
|
|
92
|
+
"gitHead": "21b3c2e9abda74edab42455041edc6e82fccc388"
|
|
93
93
|
}
|
package/src/cover/edit/index.js
CHANGED
|
@@ -18,6 +18,7 @@ import {
|
|
|
18
18
|
useInnerBlocksProps,
|
|
19
19
|
__experimentalUseGradient,
|
|
20
20
|
store as blockEditorStore,
|
|
21
|
+
useBlockEditingMode,
|
|
21
22
|
} from '@wordpress/block-editor';
|
|
22
23
|
import { __ } from '@wordpress/i18n';
|
|
23
24
|
import { useSelect, useDispatch } from '@wordpress/data';
|
|
@@ -278,6 +279,9 @@ function CoverEdit( {
|
|
|
278
279
|
const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
|
|
279
280
|
const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
|
|
280
281
|
|
|
282
|
+
const blockEditingMode = useBlockEditingMode();
|
|
283
|
+
const hasNonContentControls = blockEditingMode === 'default';
|
|
284
|
+
|
|
281
285
|
const [ resizeListener, { height, width } ] = useResizeObserver();
|
|
282
286
|
const resizableBoxDimensions = useMemo( () => {
|
|
283
287
|
return {
|
|
@@ -447,7 +451,7 @@ function CoverEdit( {
|
|
|
447
451
|
<>
|
|
448
452
|
{ blockControls }
|
|
449
453
|
{ inspectorControls }
|
|
450
|
-
{ isSelected && (
|
|
454
|
+
{ hasNonContentControls && isSelected && (
|
|
451
455
|
<ResizableCoverPopover { ...resizableCoverProps } />
|
|
452
456
|
) }
|
|
453
457
|
<TagName
|
|
@@ -576,7 +580,7 @@ function CoverEdit( {
|
|
|
576
580
|
/>
|
|
577
581
|
<div { ...innerBlocksProps } />
|
|
578
582
|
</TagName>
|
|
579
|
-
{ isSelected && (
|
|
583
|
+
{ hasNonContentControls && isSelected && (
|
|
580
584
|
<ResizableCoverPopover { ...resizableCoverProps } />
|
|
581
585
|
) }
|
|
582
586
|
</>
|
package/src/group/editor.scss
CHANGED
|
@@ -39,9 +39,9 @@
|
|
|
39
39
|
&::after {
|
|
40
40
|
content: "";
|
|
41
41
|
display: flex;
|
|
42
|
-
flex: 1 0 $
|
|
42
|
+
flex: 1 0 $button-size-next-default-40px;
|
|
43
43
|
pointer-events: none;
|
|
44
|
-
min-height: $
|
|
44
|
+
min-height: $button-size-next-default-40px - $border-width - $border-width;
|
|
45
45
|
border: $border-width dashed currentColor;
|
|
46
46
|
}
|
|
47
47
|
|