@wordpress/block-library 9.18.0 → 9.19.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/build/cover/edit/index.js +3 -1
- package/build/cover/edit/index.js.map +1 -1
- package/build/form/edit.js +4 -2
- package/build/form/edit.js.map +1 -1
- package/build/image/view.js +4 -4
- package/build/image/view.js.map +1 -1
- package/build/latest-posts/edit.js +2 -1
- package/build/latest-posts/edit.js.map +1 -1
- package/build/navigation/use-template-part-area-label.js +7 -6
- package/build/navigation/use-template-part-area-label.js.map +1 -1
- package/build/navigation/view.js +2 -2
- package/build/navigation/view.js.map +1 -1
- package/build/navigation-link/edit.js +2 -1
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-submenu/edit.js +2 -1
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/post-author/edit.js +1 -1
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author-name/edit.js +2 -2
- package/build/post-author-name/edit.js.map +1 -1
- package/build/post-comments-count/index.js +8 -1
- package/build/post-comments-count/index.js.map +1 -1
- package/build/post-navigation-link/edit.js +1 -1
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +2 -0
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/order-control.js +3 -2
- package/build/query/edit/inspector-controls/order-control.js.map +1 -1
- package/build/query/utils.js +45 -0
- package/build/query/utils.js.map +1 -1
- package/build/query/view.js +2 -2
- package/build/query/view.js.map +1 -1
- package/build/query-total/index.js +2 -2
- package/build/query-total/index.js.map +1 -1
- package/build/search/view.js +2 -2
- package/build/search/view.js.map +1 -1
- package/build/site-logo/edit.js +2 -5
- package/build/site-logo/edit.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js +1 -1
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/template-part/edit/utils/hooks.js +1 -1
- package/build/template-part/edit/utils/hooks.js.map +1 -1
- package/build/video/edit-common-settings.js +10 -3
- package/build/video/edit-common-settings.js.map +1 -1
- package/build-module/cover/edit/index.js +3 -1
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/form/edit.js +4 -2
- package/build-module/form/edit.js.map +1 -1
- package/build-module/image/view.js +5 -5
- package/build-module/image/view.js.map +1 -1
- package/build-module/latest-posts/edit.js +2 -1
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/navigation/use-template-part-area-label.js +7 -6
- package/build-module/navigation/use-template-part-area-label.js.map +1 -1
- package/build-module/navigation/view.js +3 -3
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/navigation-link/edit.js +2 -1
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +2 -1
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/post-author/edit.js +1 -1
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author-name/edit.js +2 -2
- package/build-module/post-author-name/edit.js.map +1 -1
- package/build-module/post-comments-count/index.js +8 -1
- package/build-module/post-comments-count/index.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +1 -1
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +3 -1
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/order-control.js +3 -2
- package/build-module/query/edit/inspector-controls/order-control.js.map +1 -1
- package/build-module/query/utils.js +44 -0
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query/view.js +3 -3
- package/build-module/query/view.js.map +1 -1
- package/build-module/query-total/index.js +2 -2
- package/build-module/query-total/index.js.map +1 -1
- package/build-module/search/view.js +3 -3
- package/build-module/search/view.js.map +1 -1
- package/build-module/site-logo/edit.js +2 -5
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/template-part/edit/advanced-controls.js +1 -1
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/template-part/edit/utils/hooks.js +1 -1
- package/build-module/template-part/edit/utils/hooks.js.map +1 -1
- package/build-module/video/edit-common-settings.js +10 -3
- package/build-module/video/edit-common-settings.js.map +1 -1
- package/build-style/editor-rtl.css +6 -9
- package/build-style/editor.css +6 -9
- package/build-style/navigation-link/editor-rtl.css +5 -9
- package/build-style/navigation-link/editor.css +5 -9
- package/build-style/post-comments-count/style-rtl.css +103 -0
- package/build-style/post-comments-count/style.css +103 -0
- package/build-style/pullquote/style-rtl.css +4 -0
- package/build-style/pullquote/style.css +4 -0
- package/build-style/social-link/editor-rtl.css +1 -0
- package/build-style/social-link/editor.css +1 -0
- package/build-style/style-rtl.css +8 -0
- package/build-style/style.css +8 -0
- package/package.json +35 -35
- package/src/cover/edit/index.js +2 -0
- package/src/cover/test/edit.js +6 -6
- package/src/form/edit.js +2 -0
- package/src/image/view.js +10 -5
- package/src/latest-posts/edit.js +1 -0
- package/src/navigation/use-template-part-area-label.js +6 -6
- package/src/navigation/view.js +8 -3
- package/src/navigation-link/edit.js +1 -0
- package/src/navigation-link/editor.scss +3 -24
- package/src/navigation-submenu/edit.js +1 -0
- package/src/post-author/edit.js +1 -1
- package/src/post-author-name/edit.js +4 -4
- package/src/post-comments-count/block.json +8 -1
- package/src/post-comments-count/style.scss +4 -0
- package/src/post-navigation-link/edit.js +1 -1
- package/src/pullquote/style.scss +4 -0
- package/src/query/edit/inspector-controls/index.js +3 -1
- package/src/query/edit/inspector-controls/order-control.js +9 -3
- package/src/query/utils.js +58 -0
- package/src/query/view.js +8 -3
- package/src/query-total/block.json +2 -2
- package/src/query-total/index.php +4 -2
- package/src/search/view.js +8 -3
- package/src/site-logo/edit.js +1 -5
- package/src/site-title/index.php +1 -1
- package/src/social-link/editor.scss +1 -0
- package/src/style.scss +1 -0
- package/src/template-part/edit/advanced-controls.js +1 -1
- package/src/template-part/edit/utils/hooks.js +1 -1
- package/src/template-part/index.php +3 -1
- package/src/video/edit-common-settings.js +11 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_blob","_element","_i18n","_components","_compose","_blockEditor","_data","_coreData","_icons","_notices","_constants","_jsxRuntime","ALLOWED_MEDIA_TYPES","ACCEPT_MEDIA_STRING","SiteLogo","alt","attributes","align","width","height","isLink","linkTarget","shouldSyncIcon","isSelected","setAttributes","setLogo","logoUrl","siteUrl","logoId","iconId","setIcon","canUserEdit","isLargeViewport","useViewportMatch","isWideAligned","includes","isResizable","naturalWidth","naturalHeight","setNaturalSize","useState","isEditingImage","setIsEditingImage","toggleSelection","useDispatch","blockEditorStore","imageEditing","maxWidth","title","useSelect","select","settings","getSettings","siteEntities","coreStore","getEntityRecord","name","useEffect","onResizeStart","onResizeStop","img","jsxs","Fragment","children","jsx","className","src","onLoad","event","target","isBlobURL","Spinner","imgWrapper","href","rel","onClick","preventDefault","style","defaultWidth","currentWidth","ratio","currentHeight","minWidth","MIN_SIZE","Math","ceil","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","isRTL","canEditImage","imgEdit","__experimentalImageEditor","id","url","onSaveImage","imageAttributes","onFinishEditing","ResizableBox","size","showHandle","maxHeight","lockAspectRatio","enable","top","right","bottom","left","direction","elt","delta","parseInt","shouldUseNewUrl","window","__experimentalUseCustomizerSiteLogoUrl","siteIconSettingsUrl","syncSiteIconHelpText","createInterpolateElement","__","a","InspectorControls","PanelBody","RangeControl","__nextHasNoMarginBottom","__next40pxDefaultSize","label","onChange","newWidth","min","max","initialPosition","value","disabled","ToggleControl","checked","undefined","help","BlockControls","group","ToolbarButton","icon","crop","SiteLogoReplaceFlow","mediaURL","mediaReplaceProps","MediaReplaceFlow","allowedTypes","accept","InspectorLogoPreview","media","itemGroupProps","alt_text","source_url","slug","logoSlug","media_details","logoMediaDetails","logoLabel","sizes","full","file","__experimentalItemGroup","as","__experimentalHStack","justify","FlexItem","__experimentalTruncate","numberOfLines","LogoEdit","siteLogoId","siteIconId","mediaItemData","isRequestingMediaItem","canUser","getEditedEntityRecord","_canUserEdit","kind","siteSettings","siteData","_siteLogoId","site_logo","_siteIconId","site_icon","mediaItem","getMedia","context","_isRequestingMediaItem","hasFinishedResolution","home","temporaryURL","setTemporaryURL","editEntityRecord","newValue","shouldForceSync","onInitialSelectLogo","onSelectLogo","onRemoveLogo","createErrorNotice","noticesStore","onUploadError","message","type","onFilesDrop","filesList","length","mediaUpload","onFileChange","image","onError","mediaReplaceFlowProps","onSelect","onReset","controls","logoImage","isLoading","DropZone","placeholder","content","placeholderClassName","clsx","Placeholder","preview","withIllustration","classes","blockProps","useBlockProps","mediaInspectorPanel","isBordered","renderToggle","props","Button","MediaPlaceholder","mediaLibraryButton","open","upload","variant","showTooltip","tooltipPosition"],"sources":["@wordpress/block-library/src/site-logo/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tcreateInterpolateElement,\n\tuseEffect,\n\tuseState,\n} from '@wordpress/element';\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tToggleControl,\n\tToolbarButton,\n\tPlaceholder,\n\tButton,\n\tDropZone,\n\tFlexItem,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalTruncate as Truncate,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalImageEditor as ImageEditor,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { crop, upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { MIN_SIZE } from '../image/constants';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\nconst ACCEPT_MEDIA_STRING = 'image/*';\n\nconst SiteLogo = ( {\n\talt,\n\tattributes: { align, width, height, isLink, linkTarget, shouldSyncIcon },\n\tisSelected,\n\tsetAttributes,\n\tsetLogo,\n\tlogoUrl,\n\tsiteUrl,\n\tlogoId,\n\ticonId,\n\tsetIcon,\n\tcanUserEdit,\n} ) => {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = [ 'wide', 'full' ].includes( align );\n\tconst isResizable = ! isWideAligned && isLargeViewport;\n\tconst [ { naturalWidth, naturalHeight }, setNaturalSize ] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst { toggleSelection } = useDispatch( blockEditorStore );\n\tconst { imageEditing, maxWidth, title } = useSelect( ( select ) => {\n\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\tconst siteEntities = select( coreStore ).getEntityRecord(\n\t\t\t'root',\n\t\t\t'__unstableBase'\n\t\t);\n\t\treturn {\n\t\t\ttitle: siteEntities?.name,\n\t\t\timageEditing: settings.imageEditing,\n\t\t\tmaxWidth: settings.maxWidth,\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t// Turn the `Use as site icon` toggle off if it is on but the logo and icon have\n\t\t// fallen out of sync. This can happen if the toggle is saved in the `on` position,\n\t\t// but changes are later made to the site icon in the Customizer.\n\t\tif ( shouldSyncIcon && logoId !== iconId ) {\n\t\t\tsetAttributes( { shouldSyncIcon: false } );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\tfunction onResizeStart() {\n\t\ttoggleSelection( false );\n\t}\n\n\tfunction onResizeStop() {\n\t\ttoggleSelection( true );\n\t}\n\n\tconst img = (\n\t\t<>\n\t\t\t<img\n\t\t\t\tclassName=\"custom-logo\"\n\t\t\t\tsrc={ logoUrl }\n\t\t\t\talt={ alt }\n\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\tsetNaturalSize( {\n\t\t\t\t\t\tnaturalWidth: event.target.naturalWidth,\n\t\t\t\t\t\tnaturalHeight: event.target.naturalHeight,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t{ isBlobURL( logoUrl ) && <Spinner /> }\n\t\t</>\n\t);\n\n\tlet imgWrapper = img;\n\n\t// Disable reason: Image itself is not meant to be interactive, but\n\t// should direct focus to block.\n\tif ( isLink ) {\n\t\timgWrapper = (\n\t\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t\t<a\n\t\t\t\thref={ siteUrl }\n\t\t\t\tclassName=\"custom-logo-link\"\n\t\t\t\trel=\"home\"\n\t\t\t\ttitle={ title }\n\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t>\n\t\t\t\t{ img }\n\t\t\t</a>\n\t\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t);\n\t}\n\n\tif ( ! isResizable || ! naturalWidth || ! naturalHeight ) {\n\t\treturn <div style={ { width, height } }>{ imgWrapper }</div>;\n\t}\n\n\t// Set the default width to a responsible size.\n\t// Note that this width is also set in the attached frontend CSS file.\n\tconst defaultWidth = 120;\n\n\tconst currentWidth = width || defaultWidth;\n\tconst ratio = naturalWidth / naturalHeight;\n\tconst currentHeight = currentWidth / ratio;\n\tconst minWidth =\n\t\tnaturalWidth < naturalHeight ? MIN_SIZE : Math.ceil( MIN_SIZE * ratio );\n\tconst minHeight =\n\t\tnaturalHeight < naturalWidth ? MIN_SIZE : Math.ceil( MIN_SIZE / ratio );\n\n\t// With the current implementation of ResizableBox, an image needs an\n\t// explicit pixel value for the max-width. In absence of being able to\n\t// set the content-width, this max-width is currently dictated by the\n\t// vanilla editor style. The following variable adds a buffer to this\n\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t// in most cases, allow you to scale the image beyond the width of the\n\t// main column, though not infinitely.\n\t// @todo It would be good to revisit this once a content-width variable\n\t// becomes available.\n\tconst maxWidthBuffer = maxWidth * 2.5;\n\n\tlet showRightHandle = false;\n\tlet showLeftHandle = false;\n\n\t/* eslint-disable no-lonely-if */\n\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\tif ( align === 'center' ) {\n\t\t// When the image is centered, show both handles.\n\t\tshowRightHandle = true;\n\t\tshowLeftHandle = true;\n\t} else if ( isRTL() ) {\n\t\t// In RTL mode the image is on the right by default.\n\t\t// Show the right handle and hide the left handle only when it is\n\t\t// aligned left. Otherwise always show the left handle.\n\t\tif ( align === 'left' ) {\n\t\t\tshowRightHandle = true;\n\t\t} else {\n\t\t\tshowLeftHandle = true;\n\t\t}\n\t} else {\n\t\t// Show the left handle and hide the right handle only when the\n\t\t// image is aligned right. Otherwise always show the right handle.\n\t\tif ( align === 'right' ) {\n\t\t\tshowLeftHandle = true;\n\t\t} else {\n\t\t\tshowRightHandle = true;\n\t\t}\n\t}\n\t/* eslint-enable no-lonely-if */\n\n\tconst canEditImage =\n\t\tlogoId && naturalWidth && naturalHeight && imageEditing;\n\n\tconst imgEdit =\n\t\tcanEditImage && isEditingImage ? (\n\t\t\t<ImageEditor\n\t\t\t\tid={ logoId }\n\t\t\t\turl={ logoUrl }\n\t\t\t\twidth={ currentWidth }\n\t\t\t\theight={ currentHeight }\n\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\tonSaveImage={ ( imageAttributes ) => {\n\t\t\t\t\tsetLogo( imageAttributes.id );\n\t\t\t\t} }\n\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t} }\n\t\t\t/>\n\t\t) : (\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: currentWidth,\n\t\t\t\t\theight: currentHeight,\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxWidthBuffer }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxWidthBuffer / ratio }\n\t\t\t\tlockAspectRatio\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: showRightHandle,\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: showLeftHandle,\n\t\t\t\t} }\n\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( currentWidth + delta.width, 10 ),\n\t\t\t\t\t\theight: parseInt( currentHeight + delta.height, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ imgWrapper }\n\t\t\t</ResizableBox>\n\t\t);\n\n\t// Support the previous location for the Site Icon settings. To be removed\n\t// when the required WP core version for Gutenberg is >= 6.5.0.\n\tconst shouldUseNewUrl = ! window?.__experimentalUseCustomizerSiteLogoUrl;\n\n\tconst siteIconSettingsUrl = shouldUseNewUrl\n\t\t? siteUrl + '/wp-admin/options-general.php'\n\t\t: siteUrl + '/wp-admin/customize.php?autofocus[section]=title_tagline';\n\n\tconst syncSiteIconHelpText = createInterpolateElement(\n\t\t__(\n\t\t\t'Site Icons are what you see in browser tabs, bookmark bars, and within the WordPress mobile apps. To use a custom icon that is different from your site logo, use the <a>Site Icon settings</a>.'\n\t\t),\n\t\t{\n\t\t\ta: (\n\t\t\t\t// eslint-disable-next-line jsx-a11y/anchor-has-content\n\t\t\t\t<a\n\t\t\t\t\thref={ siteIconSettingsUrl }\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t/>\n\t\t\t),\n\t\t}\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Image width' ) }\n\t\t\t\t\t\tonChange={ ( newWidth ) =>\n\t\t\t\t\t\t\tsetAttributes( { width: newWidth } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ minWidth }\n\t\t\t\t\t\tmax={ maxWidthBuffer }\n\t\t\t\t\t\tinitialPosition={ Math.min(\n\t\t\t\t\t\t\tdefaultWidth,\n\t\t\t\t\t\t\tmaxWidthBuffer\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\t\tdisabled={ ! isResizable }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link image to home' ) }\n\t\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canUserEdit && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Use as Site Icon' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( { shouldSyncIcon: value } );\n\t\t\t\t\t\t\t\t\tsetIcon( value ? logoId : undefined );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tchecked={ !! shouldSyncIcon }\n\t\t\t\t\t\t\t\thelp={ syncSiteIconHelpText }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ canEditImage && ! isEditingImage && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ imgEdit }\n\t\t</>\n\t);\n};\n\n// This is a light wrapper around MediaReplaceFlow because the block has two\n// different MediaReplaceFlows, one for the inspector and one for the toolbar.\nfunction SiteLogoReplaceFlow( { mediaURL, ...mediaReplaceProps } ) {\n\treturn (\n\t\t<MediaReplaceFlow\n\t\t\t{ ...mediaReplaceProps }\n\t\t\tmediaURL={ mediaURL }\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t/>\n\t);\n}\n\nconst InspectorLogoPreview = ( { media, itemGroupProps } ) => {\n\tconst {\n\t\talt_text: alt,\n\t\tsource_url: logoUrl,\n\t\tslug: logoSlug,\n\t\tmedia_details: logoMediaDetails,\n\t} = media ?? {};\n\tconst logoLabel = logoMediaDetails?.sizes?.full?.file || logoSlug;\n\treturn (\n\t\t<ItemGroup { ...itemGroupProps } as=\"span\">\n\t\t\t<HStack justify=\"flex-start\" as=\"span\">\n\t\t\t\t<img src={ logoUrl } alt={ alt } />\n\t\t\t\t<FlexItem as=\"span\">\n\t\t\t\t\t<Truncate\n\t\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\t\tclassName=\"block-library-site-logo__inspector-media-replace-title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ logoLabel }\n\t\t\t\t\t</Truncate>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</ItemGroup>\n\t);\n};\n\nexport default function LogoEdit( {\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tisSelected,\n} ) {\n\tconst { width, shouldSyncIcon } = attributes;\n\tconst {\n\t\tsiteLogoId,\n\t\tcanUserEdit,\n\t\turl,\n\t\tsiteIconId,\n\t\tmediaItemData,\n\t\tisRequestingMediaItem,\n\t} = useSelect( ( select ) => {\n\t\tconst { canUser, getEntityRecord, getEditedEntityRecord } =\n\t\t\tselect( coreStore );\n\t\tconst _canUserEdit = canUser( 'update', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} );\n\t\tconst siteSettings = _canUserEdit\n\t\t\t? getEditedEntityRecord( 'root', 'site' )\n\t\t\t: undefined;\n\t\tconst siteData = getEntityRecord( 'root', '__unstableBase' );\n\t\tconst _siteLogoId = _canUserEdit\n\t\t\t? siteSettings?.site_logo\n\t\t\t: siteData?.site_logo;\n\t\tconst _siteIconId = siteSettings?.site_icon;\n\t\tconst mediaItem =\n\t\t\t_siteLogoId &&\n\t\t\tselect( coreStore ).getMedia( _siteLogoId, {\n\t\t\t\tcontext: 'view',\n\t\t\t} );\n\t\tconst _isRequestingMediaItem =\n\t\t\t!! _siteLogoId &&\n\t\t\t! select( coreStore ).hasFinishedResolution( 'getMedia', [\n\t\t\t\t_siteLogoId,\n\t\t\t\t{ context: 'view' },\n\t\t\t] );\n\n\t\treturn {\n\t\t\tsiteLogoId: _siteLogoId,\n\t\t\tcanUserEdit: _canUserEdit,\n\t\t\turl: siteData?.home,\n\t\t\tmediaItemData: mediaItem,\n\t\t\tisRequestingMediaItem: _isRequestingMediaItem,\n\t\t\tsiteIconId: _siteIconId,\n\t\t};\n\t}, [] );\n\tconst { getSettings } = useSelect( blockEditorStore );\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst setLogo = ( newValue, shouldForceSync = false ) => {\n\t\t// `shouldForceSync` is used to force syncing when the attribute\n\t\t// may not have updated yet.\n\t\tif ( shouldSyncIcon || shouldForceSync ) {\n\t\t\tsetIcon( newValue );\n\t\t}\n\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_logo: newValue,\n\t\t} );\n\t};\n\n\tconst setIcon = ( newValue ) =>\n\t\t// The new value needs to be `null` to reset the Site Icon.\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_icon: newValue ?? null,\n\t\t} );\n\n\tconst { alt_text: alt, source_url: logoUrl } = mediaItemData ?? {};\n\n\tconst onInitialSelectLogo = ( media ) => {\n\t\t// Initialize the syncSiteIcon toggle. If we currently have no Site logo and no\n\t\t// site icon, automatically sync the logo to the icon.\n\t\tif ( shouldSyncIcon === undefined ) {\n\t\t\tconst shouldForceSync = ! siteIconId;\n\t\t\tsetAttributes( { shouldSyncIcon: shouldForceSync } );\n\n\t\t\t// Because we cannot rely on the `shouldSyncIcon` attribute to have updated by\n\t\t\t// the time `setLogo` is called, pass an argument to force the syncing.\n\t\t\tonSelectLogo( media, shouldForceSync );\n\t\t\treturn;\n\t\t}\n\n\t\tonSelectLogo( media );\n\t};\n\n\tconst onSelectLogo = ( media, shouldForceSync = false ) => {\n\t\tif ( ! media ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! media.id && media.url ) {\n\t\t\t// This is a temporary blob image.\n\t\t\tsetTemporaryURL( media.url );\n\t\t\tsetLogo( undefined );\n\t\t\treturn;\n\t\t}\n\n\t\tsetLogo( media.id, shouldForceSync );\n\t};\n\n\tconst onRemoveLogo = () => {\n\t\tsetLogo( null );\n\t\tsetAttributes( { width: undefined } );\n\t};\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst onFilesDrop = ( filesList ) => {\n\t\tif ( filesList?.length > 1 ) {\n\t\t\tonUploadError( __( 'Only one image can be used as a site logo.' ) );\n\t\t\treturn;\n\t\t}\n\n\t\tgetSettings().mediaUpload( {\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tfilesList,\n\t\t\tonFileChange( [ image ] ) {\n\t\t\t\tif ( isBlobURL( image?.url ) ) {\n\t\t\t\t\tsetTemporaryURL( image.url );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tonInitialSelectLogo( image );\n\t\t\t},\n\t\t\tonError: onUploadError,\n\t\t} );\n\t};\n\n\tconst mediaReplaceFlowProps = {\n\t\tmediaURL: logoUrl,\n\t\tname: ! logoUrl ? __( 'Choose logo' ) : __( 'Replace' ),\n\t\tonSelect: onSelectLogo,\n\t\tonError: onUploadError,\n\t\tonReset: onRemoveLogo,\n\t};\n\tconst controls = canUserEdit && (\n\t\t<BlockControls group=\"other\">\n\t\t\t<SiteLogoReplaceFlow { ...mediaReplaceFlowProps } />\n\t\t</BlockControls>\n\t);\n\n\tlet logoImage;\n\tconst isLoading = siteLogoId === undefined || isRequestingMediaItem;\n\tif ( isLoading ) {\n\t\tlogoImage = <Spinner />;\n\t}\n\n\t// Reset temporary url when logoUrl is available.\n\tuseEffect( () => {\n\t\tif ( logoUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ logoUrl, temporaryURL ] );\n\n\tif ( !! logoUrl || !! temporaryURL ) {\n\t\tlogoImage = (\n\t\t\t<>\n\t\t\t\t<SiteLogo\n\t\t\t\t\talt={ alt }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tclassName={ className }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tlogoUrl={ temporaryURL || logoUrl }\n\t\t\t\t\tsetLogo={ setLogo }\n\t\t\t\t\tlogoId={ mediaItemData?.id || siteLogoId }\n\t\t\t\t\tsiteUrl={ url }\n\t\t\t\t\tsetIcon={ setIcon }\n\t\t\t\t\ticonId={ siteIconId }\n\t\t\t\t\tcanUserEdit={ canUserEdit }\n\t\t\t\t/>\n\t\t\t\t{ canUserEdit && <DropZone onFilesDrop={ onFilesDrop } /> }\n\t\t\t</>\n\t\t);\n\t}\n\tconst placeholder = ( content ) => {\n\t\tconst placeholderClassName = clsx(\n\t\t\t'block-editor-media-placeholder',\n\t\t\tclassName\n\t\t);\n\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ placeholderClassName }\n\t\t\t\tpreview={ logoImage }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\twidth,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst classes = clsx( className, {\n\t\t'is-default-size': ! width,\n\t\t'is-transient': temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( { className: classes } );\n\n\tconst mediaInspectorPanel = ( canUserEdit || logoUrl ) && (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Media' ) }>\n\t\t\t\t<div className=\"block-library-site-logo__inspector-media-replace-container\">\n\t\t\t\t\t{ ! canUserEdit ? (\n\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\tmedia={ mediaItemData }\n\t\t\t\t\t\t\titemGroupProps={ {\n\t\t\t\t\t\t\t\tisBordered: true,\n\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t'block-library-site-logo__inspector-readonly-logo-preview',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<SiteLogoReplaceFlow\n\t\t\t\t\t\t\t\t{ ...mediaReplaceFlowProps }\n\t\t\t\t\t\t\t\tname={\n\t\t\t\t\t\t\t\t\t!! logoUrl ? (\n\t\t\t\t\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\t\t\t\t\tmedia={ mediaItemData }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t__( 'Choose logo' )\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\trenderToggle={ ( props ) => (\n\t\t\t\t\t\t\t\t\t<Button { ...props } __next40pxDefaultSize>\n\t\t\t\t\t\t\t\t\t\t{ temporaryURL ? (\n\t\t\t\t\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\tprops.children\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<DropZone onFilesDrop={ onFilesDrop } />\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t{ mediaInspectorPanel }\n\t\t\t{ ( !! logoUrl || !! temporaryURL ) && logoImage }\n\t\t\t{ ( isLoading ||\n\t\t\t\t( ! temporaryURL && ! logoUrl && ! canUserEdit ) ) && (\n\t\t\t\t<Placeholder className=\"site-logo_placeholder\" withIllustration>\n\t\t\t\t\t{ isLoading && (\n\t\t\t\t\t\t<span className=\"components-placeholder__preview\">\n\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t) }\n\t\t\t{ ! isLoading && ! temporaryURL && ! logoUrl && canUserEdit && (\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\tonSelect={ onInitialSelectLogo }\n\t\t\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Choose logo' ) }\n\t\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\t\ttooltipPosition=\"middle right\"\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_blob","_element","_i18n","_components","_compose","_blockEditor","_data","_coreData","_icons","_notices","_constants","_jsxRuntime","ALLOWED_MEDIA_TYPES","ACCEPT_MEDIA_STRING","SiteLogo","alt","attributes","align","width","height","isLink","linkTarget","shouldSyncIcon","isSelected","setAttributes","setLogo","logoUrl","siteUrl","logoId","iconId","setIcon","canUserEdit","isLargeViewport","useViewportMatch","isWideAligned","includes","isResizable","naturalWidth","naturalHeight","setNaturalSize","useState","isEditingImage","setIsEditingImage","toggleSelection","useDispatch","blockEditorStore","imageEditing","maxWidth","title","useSelect","select","settings","getSettings","siteEntities","coreStore","getEntityRecord","name","useEffect","onResizeStart","onResizeStop","img","jsxs","Fragment","children","jsx","className","src","onLoad","event","target","isBlobURL","Spinner","imgWrapper","href","rel","onClick","preventDefault","style","defaultWidth","currentWidth","ratio","currentHeight","minWidth","MIN_SIZE","Math","ceil","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","isRTL","canEditImage","imgEdit","__experimentalImageEditor","id","url","onSaveImage","imageAttributes","onFinishEditing","ResizableBox","size","showHandle","maxHeight","lockAspectRatio","enable","top","right","bottom","left","direction","elt","delta","parseInt","shouldUseNewUrl","window","__experimentalUseCustomizerSiteLogoUrl","siteIconSettingsUrl","syncSiteIconHelpText","createInterpolateElement","__","a","InspectorControls","PanelBody","RangeControl","__nextHasNoMarginBottom","__next40pxDefaultSize","label","onChange","newWidth","min","max","initialPosition","value","disabled","ToggleControl","checked","undefined","help","BlockControls","group","ToolbarButton","icon","crop","SiteLogoReplaceFlow","mediaURL","mediaReplaceProps","MediaReplaceFlow","allowedTypes","accept","InspectorLogoPreview","media","itemGroupProps","alt_text","source_url","slug","logoSlug","media_details","logoMediaDetails","logoLabel","sizes","full","file","__experimentalItemGroup","as","__experimentalHStack","justify","FlexItem","__experimentalTruncate","numberOfLines","LogoEdit","siteLogoId","siteIconId","mediaItemData","isRequestingMediaItem","canUser","getEditedEntityRecord","_canUserEdit","kind","siteSettings","siteData","_siteLogoId","site_logo","_siteIconId","site_icon","mediaItem","getMedia","context","_isRequestingMediaItem","hasFinishedResolution","home","temporaryURL","setTemporaryURL","editEntityRecord","newValue","shouldForceSync","onInitialSelectLogo","onSelectLogo","onRemoveLogo","createErrorNotice","noticesStore","onUploadError","message","type","onFilesDrop","filesList","mediaUpload","onFileChange","image","onError","multiple","mediaReplaceFlowProps","onSelect","onReset","controls","logoImage","isLoading","DropZone","placeholder","content","placeholderClassName","clsx","Placeholder","preview","withIllustration","classes","blockProps","useBlockProps","mediaInspectorPanel","isBordered","renderToggle","props","Button","MediaPlaceholder","mediaLibraryButton","open","upload","variant","showTooltip","tooltipPosition"],"sources":["@wordpress/block-library/src/site-logo/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tcreateInterpolateElement,\n\tuseEffect,\n\tuseState,\n} from '@wordpress/element';\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tToggleControl,\n\tToolbarButton,\n\tPlaceholder,\n\tButton,\n\tDropZone,\n\tFlexItem,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalTruncate as Truncate,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalImageEditor as ImageEditor,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { crop, upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { MIN_SIZE } from '../image/constants';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\nconst ACCEPT_MEDIA_STRING = 'image/*';\n\nconst SiteLogo = ( {\n\talt,\n\tattributes: { align, width, height, isLink, linkTarget, shouldSyncIcon },\n\tisSelected,\n\tsetAttributes,\n\tsetLogo,\n\tlogoUrl,\n\tsiteUrl,\n\tlogoId,\n\ticonId,\n\tsetIcon,\n\tcanUserEdit,\n} ) => {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = [ 'wide', 'full' ].includes( align );\n\tconst isResizable = ! isWideAligned && isLargeViewport;\n\tconst [ { naturalWidth, naturalHeight }, setNaturalSize ] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst { toggleSelection } = useDispatch( blockEditorStore );\n\tconst { imageEditing, maxWidth, title } = useSelect( ( select ) => {\n\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\tconst siteEntities = select( coreStore ).getEntityRecord(\n\t\t\t'root',\n\t\t\t'__unstableBase'\n\t\t);\n\t\treturn {\n\t\t\ttitle: siteEntities?.name,\n\t\t\timageEditing: settings.imageEditing,\n\t\t\tmaxWidth: settings.maxWidth,\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t// Turn the `Use as site icon` toggle off if it is on but the logo and icon have\n\t\t// fallen out of sync. This can happen if the toggle is saved in the `on` position,\n\t\t// but changes are later made to the site icon in the Customizer.\n\t\tif ( shouldSyncIcon && logoId !== iconId ) {\n\t\t\tsetAttributes( { shouldSyncIcon: false } );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\tfunction onResizeStart() {\n\t\ttoggleSelection( false );\n\t}\n\n\tfunction onResizeStop() {\n\t\ttoggleSelection( true );\n\t}\n\n\tconst img = (\n\t\t<>\n\t\t\t<img\n\t\t\t\tclassName=\"custom-logo\"\n\t\t\t\tsrc={ logoUrl }\n\t\t\t\talt={ alt }\n\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\tsetNaturalSize( {\n\t\t\t\t\t\tnaturalWidth: event.target.naturalWidth,\n\t\t\t\t\t\tnaturalHeight: event.target.naturalHeight,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t{ isBlobURL( logoUrl ) && <Spinner /> }\n\t\t</>\n\t);\n\n\tlet imgWrapper = img;\n\n\t// Disable reason: Image itself is not meant to be interactive, but\n\t// should direct focus to block.\n\tif ( isLink ) {\n\t\timgWrapper = (\n\t\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t\t<a\n\t\t\t\thref={ siteUrl }\n\t\t\t\tclassName=\"custom-logo-link\"\n\t\t\t\trel=\"home\"\n\t\t\t\ttitle={ title }\n\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t>\n\t\t\t\t{ img }\n\t\t\t</a>\n\t\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t);\n\t}\n\n\tif ( ! isResizable || ! naturalWidth || ! naturalHeight ) {\n\t\treturn <div style={ { width, height } }>{ imgWrapper }</div>;\n\t}\n\n\t// Set the default width to a responsible size.\n\t// Note that this width is also set in the attached frontend CSS file.\n\tconst defaultWidth = 120;\n\n\tconst currentWidth = width || defaultWidth;\n\tconst ratio = naturalWidth / naturalHeight;\n\tconst currentHeight = currentWidth / ratio;\n\tconst minWidth =\n\t\tnaturalWidth < naturalHeight ? MIN_SIZE : Math.ceil( MIN_SIZE * ratio );\n\tconst minHeight =\n\t\tnaturalHeight < naturalWidth ? MIN_SIZE : Math.ceil( MIN_SIZE / ratio );\n\n\t// With the current implementation of ResizableBox, an image needs an\n\t// explicit pixel value for the max-width. In absence of being able to\n\t// set the content-width, this max-width is currently dictated by the\n\t// vanilla editor style. The following variable adds a buffer to this\n\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t// in most cases, allow you to scale the image beyond the width of the\n\t// main column, though not infinitely.\n\t// @todo It would be good to revisit this once a content-width variable\n\t// becomes available.\n\tconst maxWidthBuffer = maxWidth * 2.5;\n\n\tlet showRightHandle = false;\n\tlet showLeftHandle = false;\n\n\t/* eslint-disable no-lonely-if */\n\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\tif ( align === 'center' ) {\n\t\t// When the image is centered, show both handles.\n\t\tshowRightHandle = true;\n\t\tshowLeftHandle = true;\n\t} else if ( isRTL() ) {\n\t\t// In RTL mode the image is on the right by default.\n\t\t// Show the right handle and hide the left handle only when it is\n\t\t// aligned left. Otherwise always show the left handle.\n\t\tif ( align === 'left' ) {\n\t\t\tshowRightHandle = true;\n\t\t} else {\n\t\t\tshowLeftHandle = true;\n\t\t}\n\t} else {\n\t\t// Show the left handle and hide the right handle only when the\n\t\t// image is aligned right. Otherwise always show the right handle.\n\t\tif ( align === 'right' ) {\n\t\t\tshowLeftHandle = true;\n\t\t} else {\n\t\t\tshowRightHandle = true;\n\t\t}\n\t}\n\t/* eslint-enable no-lonely-if */\n\n\tconst canEditImage =\n\t\tlogoId && naturalWidth && naturalHeight && imageEditing;\n\n\tconst imgEdit =\n\t\tcanEditImage && isEditingImage ? (\n\t\t\t<ImageEditor\n\t\t\t\tid={ logoId }\n\t\t\t\turl={ logoUrl }\n\t\t\t\twidth={ currentWidth }\n\t\t\t\theight={ currentHeight }\n\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\tonSaveImage={ ( imageAttributes ) => {\n\t\t\t\t\tsetLogo( imageAttributes.id );\n\t\t\t\t} }\n\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t} }\n\t\t\t/>\n\t\t) : (\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: currentWidth,\n\t\t\t\t\theight: currentHeight,\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxWidthBuffer }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxWidthBuffer / ratio }\n\t\t\t\tlockAspectRatio\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: showRightHandle,\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: showLeftHandle,\n\t\t\t\t} }\n\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( currentWidth + delta.width, 10 ),\n\t\t\t\t\t\theight: parseInt( currentHeight + delta.height, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ imgWrapper }\n\t\t\t</ResizableBox>\n\t\t);\n\n\t// Support the previous location for the Site Icon settings. To be removed\n\t// when the required WP core version for Gutenberg is >= 6.5.0.\n\tconst shouldUseNewUrl = ! window?.__experimentalUseCustomizerSiteLogoUrl;\n\n\tconst siteIconSettingsUrl = shouldUseNewUrl\n\t\t? siteUrl + '/wp-admin/options-general.php'\n\t\t: siteUrl + '/wp-admin/customize.php?autofocus[section]=title_tagline';\n\n\tconst syncSiteIconHelpText = createInterpolateElement(\n\t\t__(\n\t\t\t'Site Icons are what you see in browser tabs, bookmark bars, and within the WordPress mobile apps. To use a custom icon that is different from your site logo, use the <a>Site Icon settings</a>.'\n\t\t),\n\t\t{\n\t\t\ta: (\n\t\t\t\t// eslint-disable-next-line jsx-a11y/anchor-has-content\n\t\t\t\t<a\n\t\t\t\t\thref={ siteIconSettingsUrl }\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t/>\n\t\t\t),\n\t\t}\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Image width' ) }\n\t\t\t\t\t\tonChange={ ( newWidth ) =>\n\t\t\t\t\t\t\tsetAttributes( { width: newWidth } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ minWidth }\n\t\t\t\t\t\tmax={ maxWidthBuffer }\n\t\t\t\t\t\tinitialPosition={ Math.min(\n\t\t\t\t\t\t\tdefaultWidth,\n\t\t\t\t\t\t\tmaxWidthBuffer\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\t\tdisabled={ ! isResizable }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link image to home' ) }\n\t\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canUserEdit && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Use as Site Icon' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( { shouldSyncIcon: value } );\n\t\t\t\t\t\t\t\t\tsetIcon( value ? logoId : undefined );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tchecked={ !! shouldSyncIcon }\n\t\t\t\t\t\t\t\thelp={ syncSiteIconHelpText }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ canEditImage && ! isEditingImage && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ imgEdit }\n\t\t</>\n\t);\n};\n\n// This is a light wrapper around MediaReplaceFlow because the block has two\n// different MediaReplaceFlows, one for the inspector and one for the toolbar.\nfunction SiteLogoReplaceFlow( { mediaURL, ...mediaReplaceProps } ) {\n\treturn (\n\t\t<MediaReplaceFlow\n\t\t\t{ ...mediaReplaceProps }\n\t\t\tmediaURL={ mediaURL }\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t/>\n\t);\n}\n\nconst InspectorLogoPreview = ( { media, itemGroupProps } ) => {\n\tconst {\n\t\talt_text: alt,\n\t\tsource_url: logoUrl,\n\t\tslug: logoSlug,\n\t\tmedia_details: logoMediaDetails,\n\t} = media ?? {};\n\tconst logoLabel = logoMediaDetails?.sizes?.full?.file || logoSlug;\n\treturn (\n\t\t<ItemGroup { ...itemGroupProps } as=\"span\">\n\t\t\t<HStack justify=\"flex-start\" as=\"span\">\n\t\t\t\t<img src={ logoUrl } alt={ alt } />\n\t\t\t\t<FlexItem as=\"span\">\n\t\t\t\t\t<Truncate\n\t\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\t\tclassName=\"block-library-site-logo__inspector-media-replace-title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ logoLabel }\n\t\t\t\t\t</Truncate>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</ItemGroup>\n\t);\n};\n\nexport default function LogoEdit( {\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tisSelected,\n} ) {\n\tconst { width, shouldSyncIcon } = attributes;\n\tconst {\n\t\tsiteLogoId,\n\t\tcanUserEdit,\n\t\turl,\n\t\tsiteIconId,\n\t\tmediaItemData,\n\t\tisRequestingMediaItem,\n\t} = useSelect( ( select ) => {\n\t\tconst { canUser, getEntityRecord, getEditedEntityRecord } =\n\t\t\tselect( coreStore );\n\t\tconst _canUserEdit = canUser( 'update', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} );\n\t\tconst siteSettings = _canUserEdit\n\t\t\t? getEditedEntityRecord( 'root', 'site' )\n\t\t\t: undefined;\n\t\tconst siteData = getEntityRecord( 'root', '__unstableBase' );\n\t\tconst _siteLogoId = _canUserEdit\n\t\t\t? siteSettings?.site_logo\n\t\t\t: siteData?.site_logo;\n\t\tconst _siteIconId = siteSettings?.site_icon;\n\t\tconst mediaItem =\n\t\t\t_siteLogoId &&\n\t\t\tselect( coreStore ).getMedia( _siteLogoId, {\n\t\t\t\tcontext: 'view',\n\t\t\t} );\n\t\tconst _isRequestingMediaItem =\n\t\t\t!! _siteLogoId &&\n\t\t\t! select( coreStore ).hasFinishedResolution( 'getMedia', [\n\t\t\t\t_siteLogoId,\n\t\t\t\t{ context: 'view' },\n\t\t\t] );\n\n\t\treturn {\n\t\t\tsiteLogoId: _siteLogoId,\n\t\t\tcanUserEdit: _canUserEdit,\n\t\t\turl: siteData?.home,\n\t\t\tmediaItemData: mediaItem,\n\t\t\tisRequestingMediaItem: _isRequestingMediaItem,\n\t\t\tsiteIconId: _siteIconId,\n\t\t};\n\t}, [] );\n\tconst { getSettings } = useSelect( blockEditorStore );\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst setLogo = ( newValue, shouldForceSync = false ) => {\n\t\t// `shouldForceSync` is used to force syncing when the attribute\n\t\t// may not have updated yet.\n\t\tif ( shouldSyncIcon || shouldForceSync ) {\n\t\t\tsetIcon( newValue );\n\t\t}\n\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_logo: newValue,\n\t\t} );\n\t};\n\n\tconst setIcon = ( newValue ) =>\n\t\t// The new value needs to be `null` to reset the Site Icon.\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_icon: newValue ?? null,\n\t\t} );\n\n\tconst { alt_text: alt, source_url: logoUrl } = mediaItemData ?? {};\n\n\tconst onInitialSelectLogo = ( media ) => {\n\t\t// Initialize the syncSiteIcon toggle. If we currently have no Site logo and no\n\t\t// site icon, automatically sync the logo to the icon.\n\t\tif ( shouldSyncIcon === undefined ) {\n\t\t\tconst shouldForceSync = ! siteIconId;\n\t\t\tsetAttributes( { shouldSyncIcon: shouldForceSync } );\n\n\t\t\t// Because we cannot rely on the `shouldSyncIcon` attribute to have updated by\n\t\t\t// the time `setLogo` is called, pass an argument to force the syncing.\n\t\t\tonSelectLogo( media, shouldForceSync );\n\t\t\treturn;\n\t\t}\n\n\t\tonSelectLogo( media );\n\t};\n\n\tconst onSelectLogo = ( media, shouldForceSync = false ) => {\n\t\tif ( ! media ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! media.id && media.url ) {\n\t\t\t// This is a temporary blob image.\n\t\t\tsetTemporaryURL( media.url );\n\t\t\tsetLogo( undefined );\n\t\t\treturn;\n\t\t}\n\n\t\tsetLogo( media.id, shouldForceSync );\n\t};\n\n\tconst onRemoveLogo = () => {\n\t\tsetLogo( null );\n\t\tsetAttributes( { width: undefined } );\n\t};\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst onFilesDrop = ( filesList ) => {\n\t\tgetSettings().mediaUpload( {\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tfilesList,\n\t\t\tonFileChange( [ image ] ) {\n\t\t\t\tif ( isBlobURL( image?.url ) ) {\n\t\t\t\t\tsetTemporaryURL( image.url );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tonInitialSelectLogo( image );\n\t\t\t},\n\t\t\tonError: onUploadError,\n\t\t\tmultiple: false,\n\t\t} );\n\t};\n\n\tconst mediaReplaceFlowProps = {\n\t\tmediaURL: logoUrl,\n\t\tname: ! logoUrl ? __( 'Choose logo' ) : __( 'Replace' ),\n\t\tonSelect: onSelectLogo,\n\t\tonError: onUploadError,\n\t\tonReset: onRemoveLogo,\n\t};\n\tconst controls = canUserEdit && (\n\t\t<BlockControls group=\"other\">\n\t\t\t<SiteLogoReplaceFlow { ...mediaReplaceFlowProps } />\n\t\t</BlockControls>\n\t);\n\n\tlet logoImage;\n\tconst isLoading = siteLogoId === undefined || isRequestingMediaItem;\n\tif ( isLoading ) {\n\t\tlogoImage = <Spinner />;\n\t}\n\n\t// Reset temporary url when logoUrl is available.\n\tuseEffect( () => {\n\t\tif ( logoUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ logoUrl, temporaryURL ] );\n\n\tif ( !! logoUrl || !! temporaryURL ) {\n\t\tlogoImage = (\n\t\t\t<>\n\t\t\t\t<SiteLogo\n\t\t\t\t\talt={ alt }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tclassName={ className }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tlogoUrl={ temporaryURL || logoUrl }\n\t\t\t\t\tsetLogo={ setLogo }\n\t\t\t\t\tlogoId={ mediaItemData?.id || siteLogoId }\n\t\t\t\t\tsiteUrl={ url }\n\t\t\t\t\tsetIcon={ setIcon }\n\t\t\t\t\ticonId={ siteIconId }\n\t\t\t\t\tcanUserEdit={ canUserEdit }\n\t\t\t\t/>\n\t\t\t\t{ canUserEdit && <DropZone onFilesDrop={ onFilesDrop } /> }\n\t\t\t</>\n\t\t);\n\t}\n\tconst placeholder = ( content ) => {\n\t\tconst placeholderClassName = clsx(\n\t\t\t'block-editor-media-placeholder',\n\t\t\tclassName\n\t\t);\n\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ placeholderClassName }\n\t\t\t\tpreview={ logoImage }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\twidth,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst classes = clsx( className, {\n\t\t'is-default-size': ! width,\n\t\t'is-transient': temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( { className: classes } );\n\n\tconst mediaInspectorPanel = ( canUserEdit || logoUrl ) && (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Media' ) }>\n\t\t\t\t<div className=\"block-library-site-logo__inspector-media-replace-container\">\n\t\t\t\t\t{ ! canUserEdit ? (\n\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\tmedia={ mediaItemData }\n\t\t\t\t\t\t\titemGroupProps={ {\n\t\t\t\t\t\t\t\tisBordered: true,\n\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t'block-library-site-logo__inspector-readonly-logo-preview',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<SiteLogoReplaceFlow\n\t\t\t\t\t\t\t\t{ ...mediaReplaceFlowProps }\n\t\t\t\t\t\t\t\tname={\n\t\t\t\t\t\t\t\t\t!! logoUrl ? (\n\t\t\t\t\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\t\t\t\t\tmedia={ mediaItemData }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t__( 'Choose logo' )\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\trenderToggle={ ( props ) => (\n\t\t\t\t\t\t\t\t\t<Button { ...props } __next40pxDefaultSize>\n\t\t\t\t\t\t\t\t\t\t{ temporaryURL ? (\n\t\t\t\t\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\tprops.children\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<DropZone onFilesDrop={ onFilesDrop } />\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t{ mediaInspectorPanel }\n\t\t\t{ ( !! logoUrl || !! temporaryURL ) && logoImage }\n\t\t\t{ ( isLoading ||\n\t\t\t\t( ! temporaryURL && ! logoUrl && ! canUserEdit ) ) && (\n\t\t\t\t<Placeholder className=\"site-logo_placeholder\" withIllustration>\n\t\t\t\t\t{ isLoading && (\n\t\t\t\t\t\t<span className=\"components-placeholder__preview\">\n\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t) }\n\t\t\t{ ! isLoading && ! temporaryURL && ! logoUrl && canUserEdit && (\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\tonSelect={ onInitialSelectLogo }\n\t\t\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Choose logo' ) }\n\t\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\t\ttooltipPosition=\"middle right\"\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -29,7 +29,7 @@ function TemplatePartAdvancedControls({
|
|
|
29
29
|
}) {
|
|
30
30
|
const [area, setArea] = (0, _coreData.useEntityProp)('postType', 'wp_template_part', 'area', templatePartId);
|
|
31
31
|
const [title, setTitle] = (0, _coreData.useEntityProp)('postType', 'wp_template_part', 'title', templatePartId);
|
|
32
|
-
const defaultTemplatePartAreas = (0, _data.useSelect)(select => select(_coreData.store).
|
|
32
|
+
const defaultTemplatePartAreas = (0, _data.useSelect)(select => select(_coreData.store).getCurrentTheme()?.default_template_part_areas || [], []);
|
|
33
33
|
const areaOptions = defaultTemplatePartAreas.map(({
|
|
34
34
|
label,
|
|
35
35
|
area: _area
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_coreData","require","_components","_i18n","_data","_importControls","_messages","_jsxRuntime","TemplatePartAdvancedControls","tagName","setAttributes","isEntityAvailable","templatePartId","defaultWrapper","hasInnerBlocks","area","setArea","useEntityProp","title","setTitle","defaultTemplatePartAreas","useSelect","select","coreStore","
|
|
1
|
+
{"version":3,"names":["_coreData","require","_components","_i18n","_data","_importControls","_messages","_jsxRuntime","TemplatePartAdvancedControls","tagName","setAttributes","isEntityAvailable","templatePartId","defaultWrapper","hasInnerBlocks","area","setArea","useEntityProp","title","setTitle","defaultTemplatePartAreas","useSelect","select","coreStore","getCurrentTheme","default_template_part_areas","areaOptions","map","label","_area","value","jsxs","Fragment","children","jsx","TextControl","__next40pxDefaultSize","__nextHasNoMarginBottom","__","onChange","onFocus","event","target","SelectControl","labelPosition","options","sprintf","help","htmlElementMessages","TemplatePartImportControls"],"sources":["@wordpress/block-library/src/template-part/edit/advanced-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { SelectControl, TextControl } from '@wordpress/components';\nimport { sprintf, __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { TemplatePartImportControls } from './import-controls';\nimport { htmlElementMessages } from '../../utils/messages';\n\nexport function TemplatePartAdvancedControls( {\n\ttagName,\n\tsetAttributes,\n\tisEntityAvailable,\n\ttemplatePartId,\n\tdefaultWrapper,\n\thasInnerBlocks,\n} ) {\n\tconst [ area, setArea ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'area',\n\t\ttemplatePartId\n\t);\n\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'title',\n\t\ttemplatePartId\n\t);\n\n\tconst defaultTemplatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getCurrentTheme()\n\t\t\t\t?.default_template_part_areas || [],\n\t\t[]\n\t);\n\n\tconst areaOptions = defaultTemplatePartAreas.map(\n\t\t( { label, area: _area } ) => ( {\n\t\t\tlabel,\n\t\t\tvalue: _area,\n\t\t} )\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ isEntityAvailable && (\n\t\t\t\t<>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Title' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\tsetTitle( value );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonFocus={ ( event ) => event.target.select() }\n\t\t\t\t\t/>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\toptions={ areaOptions }\n\t\t\t\t\t\tvalue={ area }\n\t\t\t\t\t\tonChange={ setArea }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<SelectControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\toptions={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: sprintf(\n\t\t\t\t\t\t\t/* translators: %s: HTML tag based on area. */\n\t\t\t\t\t\t\t__( 'Default based on area (%s)' ),\n\t\t\t\t\t\t\t`<${ defaultWrapper }>`\n\t\t\t\t\t\t),\n\t\t\t\t\t\tvalue: '',\n\t\t\t\t\t},\n\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t\t{ label: '<div>', value: 'div' },\n\t\t\t\t] }\n\t\t\t\tvalue={ tagName || '' }\n\t\t\t\tonChange={ ( value ) => setAttributes( { tagName: value } ) }\n\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t/>\n\t\t\t{ ! hasInnerBlocks && (\n\t\t\t\t<TemplatePartImportControls\n\t\t\t\t\tarea={ area }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -123,7 +123,7 @@ function useCreateTemplatePartFromBlocks(area, setAttributes) {
|
|
|
123
123
|
function useTemplatePartArea(area) {
|
|
124
124
|
return (0, _data.useSelect)(select => {
|
|
125
125
|
var _selectedArea$area_ta;
|
|
126
|
-
const definedAreas = select(_coreData.store).
|
|
126
|
+
const definedAreas = select(_coreData.store).getCurrentTheme()?.default_template_part_areas || [];
|
|
127
127
|
const selectedArea = definedAreas.find(definedArea => definedArea.area === area);
|
|
128
128
|
const defaultArea = definedAreas.find(definedArea => definedArea.area === 'uncategorized');
|
|
129
129
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_changeCase","require","_data","_coreData","_blockEditor","_element","_blocks","_i18n","_createTemplatePartId","useAlternativeTemplateParts","area","excludedId","templateParts","isResolving","useSelect","select","getEntityRecords","_isResolving","coreStore","query","per_page","filteredTemplateParts","useMemo","filter","templatePart","createTemplatePartId","theme","slug","useAlternativeBlockPatterns","clientId","blockNameWithArea","getBlockRootClientId","getPatternsByBlockTypes","blockEditorStore","rootClientId","useCreateTemplatePartFromBlocks","setAttributes","saveEntityRecord","useDispatch","blocks","title","__","cleanSlug","kebabCase","replace","record","content","serialize","undefined","useTemplatePartArea","_selectedArea$area_ta","definedAreas","
|
|
1
|
+
{"version":3,"names":["_changeCase","require","_data","_coreData","_blockEditor","_element","_blocks","_i18n","_createTemplatePartId","useAlternativeTemplateParts","area","excludedId","templateParts","isResolving","useSelect","select","getEntityRecords","_isResolving","coreStore","query","per_page","filteredTemplateParts","useMemo","filter","templatePart","createTemplatePartId","theme","slug","useAlternativeBlockPatterns","clientId","blockNameWithArea","getBlockRootClientId","getPatternsByBlockTypes","blockEditorStore","rootClientId","useCreateTemplatePartFromBlocks","setAttributes","saveEntityRecord","useDispatch","blocks","title","__","cleanSlug","kebabCase","replace","record","content","serialize","undefined","useTemplatePartArea","_selectedArea$area_ta","definedAreas","getCurrentTheme","default_template_part_areas","selectedArea","find","definedArea","defaultArea","icon","label","tagName","area_tag"],"sources":["@wordpress/block-library/src/template-part/edit/utils/hooks.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { paramCase as kebabCase } from 'change-case';\n\n/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { useMemo } from '@wordpress/element';\nimport { serialize } from '@wordpress/blocks';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { createTemplatePartId } from './create-template-part-id';\n\n/**\n * Retrieves the available template parts for the given area.\n *\n * @param {string} area Template part area.\n * @param {string} excludedId Template part ID to exclude.\n *\n * @return {{ templateParts: Array, isResolving: boolean }} array of template parts.\n */\nexport function useAlternativeTemplateParts( area, excludedId ) {\n\tconst { templateParts, isResolving } = useSelect( ( select ) => {\n\t\tconst { getEntityRecords, isResolving: _isResolving } =\n\t\t\tselect( coreStore );\n\t\tconst query = { per_page: -1 };\n\t\treturn {\n\t\t\ttemplateParts: getEntityRecords(\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\tquery\n\t\t\t),\n\t\t\tisResolving: _isResolving( 'getEntityRecords', [\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\tquery,\n\t\t\t] ),\n\t\t};\n\t}, [] );\n\n\tconst filteredTemplateParts = useMemo( () => {\n\t\tif ( ! templateParts ) {\n\t\t\treturn [];\n\t\t}\n\t\treturn (\n\t\t\ttemplateParts.filter(\n\t\t\t\t( templatePart ) =>\n\t\t\t\t\tcreateTemplatePartId(\n\t\t\t\t\t\ttemplatePart.theme,\n\t\t\t\t\t\ttemplatePart.slug\n\t\t\t\t\t) !== excludedId &&\n\t\t\t\t\t( ! area ||\n\t\t\t\t\t\t'uncategorized' === area ||\n\t\t\t\t\t\ttemplatePart.area === area )\n\t\t\t) || []\n\t\t);\n\t}, [ templateParts, area, excludedId ] );\n\n\treturn {\n\t\ttemplateParts: filteredTemplateParts,\n\t\tisResolving,\n\t};\n}\n\n/**\n * Retrieves the available block patterns for the given area.\n *\n * @param {string} area Template part area.\n * @param {string} clientId Block Client ID. (The container of the block can impact allowed blocks).\n *\n * @return {Array} array of block patterns.\n */\nexport function useAlternativeBlockPatterns( area, clientId ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst blockNameWithArea = area\n\t\t\t\t? `core/template-part/${ area }`\n\t\t\t\t: 'core/template-part';\n\t\t\tconst { getBlockRootClientId, getPatternsByBlockTypes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\treturn getPatternsByBlockTypes( blockNameWithArea, rootClientId );\n\t\t},\n\t\t[ area, clientId ]\n\t);\n}\n\nexport function useCreateTemplatePartFromBlocks( area, setAttributes ) {\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\treturn async ( blocks = [], title = __( 'Untitled Template Part' ) ) => {\n\t\t// Currently template parts only allow latin chars.\n\t\t// Fallback slug will receive suffix by default.\n\t\tconst cleanSlug =\n\t\t\tkebabCase( title ).replace( /[^\\w-]+/g, '' ) || 'wp-custom-part';\n\n\t\t// If we have `area` set from block attributes, means an exposed\n\t\t// block variation was inserted. So add this prop to the template\n\t\t// part entity on creation. Afterwards remove `area` value from\n\t\t// block attributes.\n\t\tconst record = {\n\t\t\ttitle,\n\t\t\tslug: cleanSlug,\n\t\t\tcontent: serialize( blocks ),\n\t\t\t// `area` is filterable on the server and defaults to `UNCATEGORIZED`\n\t\t\t// if provided value is not allowed.\n\t\t\tarea,\n\t\t};\n\t\tconst templatePart = await saveEntityRecord(\n\t\t\t'postType',\n\t\t\t'wp_template_part',\n\t\t\trecord\n\t\t);\n\t\tsetAttributes( {\n\t\t\tslug: templatePart.slug,\n\t\t\ttheme: templatePart.theme,\n\t\t\tarea: undefined,\n\t\t} );\n\t};\n}\n\n/**\n * Retrieves the template part area object.\n *\n * @param {string} area Template part area identifier.\n *\n * @return {{icon: Object, label: string, tagName: string}} Template Part area.\n */\nexport function useTemplatePartArea( area ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst definedAreas =\n\t\t\t\tselect( coreStore ).getCurrentTheme()\n\t\t\t\t\t?.default_template_part_areas || [];\n\n\t\t\tconst selectedArea = definedAreas.find(\n\t\t\t\t( definedArea ) => definedArea.area === area\n\t\t\t);\n\t\t\tconst defaultArea = definedAreas.find(\n\t\t\t\t( definedArea ) => definedArea.area === 'uncategorized'\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\ticon: selectedArea?.icon || defaultArea?.icon,\n\t\t\t\tlabel: selectedArea?.label || __( 'Template Part' ),\n\t\t\t\ttagName: selectedArea?.area_tag ?? 'div',\n\t\t\t};\n\t\t},\n\t\t[ area ]\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -45,7 +45,11 @@ const VideoSettings = ({
|
|
|
45
45
|
const toggleAttribute = attribute => {
|
|
46
46
|
return newValue => {
|
|
47
47
|
setAttributes({
|
|
48
|
-
[attribute]: newValue
|
|
48
|
+
[attribute]: newValue,
|
|
49
|
+
// Set muted when autoplay changes
|
|
50
|
+
...(attribute === 'autoplay' && {
|
|
51
|
+
muted: newValue
|
|
52
|
+
})
|
|
49
53
|
});
|
|
50
54
|
};
|
|
51
55
|
};
|
|
@@ -69,7 +73,8 @@ const VideoSettings = ({
|
|
|
69
73
|
hasValue: () => !!autoplay,
|
|
70
74
|
onDeselect: () => {
|
|
71
75
|
setAttributes({
|
|
72
|
-
autoplay: false
|
|
76
|
+
autoplay: false,
|
|
77
|
+
muted: false
|
|
73
78
|
});
|
|
74
79
|
},
|
|
75
80
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToggleControl, {
|
|
@@ -107,7 +112,9 @@ const VideoSettings = ({
|
|
|
107
112
|
__nextHasNoMarginBottom: true,
|
|
108
113
|
label: (0, _i18n.__)('Muted'),
|
|
109
114
|
onChange: toggleFactory.muted,
|
|
110
|
-
checked: !!muted
|
|
115
|
+
checked: !!muted,
|
|
116
|
+
disabled: autoplay,
|
|
117
|
+
help: autoplay ? (0, _i18n.__)('Muted because of Autoplay.') : null
|
|
111
118
|
})
|
|
112
119
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalToolsPanelItem, {
|
|
113
120
|
label: (0, _i18n.__)('Playback controls'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_components","_element","_jsxRuntime","options","value","label","__","_x","VideoSettings","setAttributes","attributes","autoplay","controls","loop","muted","playsInline","preload","autoPlayHelpText","getAutoplayHelp","Platform","select","web","useCallback","checked","native","toggleFactory","useMemo","toggleAttribute","attribute","newValue","onChangePreload","jsxs","Fragment","children","jsx","__experimentalToolsPanelItem","isShownByDefault","hasValue","onDeselect","ToggleControl","__nextHasNoMarginBottom","onChange","help","SelectControl","__next40pxDefaultSize","hideCancelButton","_default","exports","default"],"sources":["@wordpress/block-library/src/video/edit-common-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tToggleControl,\n\tSelectControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useMemo, useCallback, Platform } from '@wordpress/element';\n\nconst options = [\n\t{ value: 'auto', label: __( 'Auto' ) },\n\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t{ value: 'none', label: _x( 'None', 'Preload value' ) },\n];\n\nconst VideoSettings = ( { setAttributes, attributes } ) => {\n\tconst { autoplay, controls, loop, muted, playsInline, preload } =\n\t\tattributes;\n\n\tconst autoPlayHelpText = __(\n\t\t'Autoplay may cause usability issues for some users.'\n\t);\n\tconst getAutoplayHelp = Platform.select( {\n\t\tweb: useCallback( ( checked ) => {\n\t\t\treturn checked ? autoPlayHelpText : null;\n\t\t}, [] ),\n\t\tnative: autoPlayHelpText,\n\t} );\n\n\tconst toggleFactory = useMemo( () => {\n\t\tconst toggleAttribute = ( attribute ) => {\n\t\t\treturn ( newValue ) => {\n\t\t\t\tsetAttributes( { [ attribute ]: newValue } );\n\t\t\t};\n\t\t};\n\n\t\treturn {\n\t\t\tautoplay: toggleAttribute( 'autoplay' ),\n\t\t\tloop: toggleAttribute( 'loop' ),\n\t\t\tmuted: toggleAttribute( 'muted' ),\n\t\t\tcontrols: toggleAttribute( 'controls' ),\n\t\t\tplaysInline: toggleAttribute( 'playsInline' ),\n\t\t};\n\t}, [] );\n\n\tconst onChangePreload = useCallback( ( value ) => {\n\t\tsetAttributes( { preload: value } );\n\t}, [] );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! autoplay }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { autoplay: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\tonChange={ toggleFactory.autoplay }\n\t\t\t\t\tchecked={ !! autoplay }\n\t\t\t\t\thelp={ getAutoplayHelp }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! loop }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { loop: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\tonChange={ toggleFactory.loop }\n\t\t\t\t\tchecked={ !! loop }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! muted }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { muted: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\t\tonChange={ toggleFactory.muted }\n\t\t\t\t\tchecked={ !! muted }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => ! controls }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { controls: true } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\t\tonChange={ toggleFactory.controls }\n\t\t\t\t\tchecked={ !! controls }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! playsInline }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { playsInline: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/* translators: Setting to play videos within the webpage on mobile browsers rather than opening in a fullscreen player. */\n\t\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\t\tonChange={ toggleFactory.playsInline }\n\t\t\t\t\tchecked={ !! playsInline }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'When enabled, videos will play directly within the webpage on mobile browsers, instead of opening in a fullscreen player.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => preload !== 'metadata' }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { preload: 'metadata' } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\t\tvalue={ preload }\n\t\t\t\t\tonChange={ onChangePreload }\n\t\t\t\t\toptions={ options }\n\t\t\t\t\thideCancelButton\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t</>\n\t);\n};\n\nexport default VideoSettings;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_i18n","require","_components","_element","_jsxRuntime","options","value","label","__","_x","VideoSettings","setAttributes","attributes","autoplay","controls","loop","muted","playsInline","preload","autoPlayHelpText","getAutoplayHelp","Platform","select","web","useCallback","checked","native","toggleFactory","useMemo","toggleAttribute","attribute","newValue","onChangePreload","jsxs","Fragment","children","jsx","__experimentalToolsPanelItem","isShownByDefault","hasValue","onDeselect","ToggleControl","__nextHasNoMarginBottom","onChange","help","disabled","SelectControl","__next40pxDefaultSize","hideCancelButton","_default","exports","default"],"sources":["@wordpress/block-library/src/video/edit-common-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tToggleControl,\n\tSelectControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useMemo, useCallback, Platform } from '@wordpress/element';\n\nconst options = [\n\t{ value: 'auto', label: __( 'Auto' ) },\n\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t{ value: 'none', label: _x( 'None', 'Preload value' ) },\n];\n\nconst VideoSettings = ( { setAttributes, attributes } ) => {\n\tconst { autoplay, controls, loop, muted, playsInline, preload } =\n\t\tattributes;\n\n\tconst autoPlayHelpText = __(\n\t\t'Autoplay may cause usability issues for some users.'\n\t);\n\n\tconst getAutoplayHelp = Platform.select( {\n\t\tweb: useCallback( ( checked ) => {\n\t\t\treturn checked ? autoPlayHelpText : null;\n\t\t}, [] ),\n\t\tnative: autoPlayHelpText,\n\t} );\n\n\tconst toggleFactory = useMemo( () => {\n\t\tconst toggleAttribute = ( attribute ) => {\n\t\t\treturn ( newValue ) => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\t[ attribute ]: newValue,\n\t\t\t\t\t// Set muted when autoplay changes\n\t\t\t\t\t...( attribute === 'autoplay' && { muted: newValue } ),\n\t\t\t\t} );\n\t\t\t};\n\t\t};\n\n\t\treturn {\n\t\t\tautoplay: toggleAttribute( 'autoplay' ),\n\t\t\tloop: toggleAttribute( 'loop' ),\n\t\t\tmuted: toggleAttribute( 'muted' ),\n\t\t\tcontrols: toggleAttribute( 'controls' ),\n\t\t\tplaysInline: toggleAttribute( 'playsInline' ),\n\t\t};\n\t}, [] );\n\n\tconst onChangePreload = useCallback( ( value ) => {\n\t\tsetAttributes( { preload: value } );\n\t}, [] );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! autoplay }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { autoplay: false, muted: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\tonChange={ toggleFactory.autoplay }\n\t\t\t\t\tchecked={ !! autoplay }\n\t\t\t\t\thelp={ getAutoplayHelp }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! loop }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { loop: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\tonChange={ toggleFactory.loop }\n\t\t\t\t\tchecked={ !! loop }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! muted }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { muted: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\t\tonChange={ toggleFactory.muted }\n\t\t\t\t\tchecked={ !! muted }\n\t\t\t\t\tdisabled={ autoplay }\n\t\t\t\t\thelp={\n\t\t\t\t\t\tautoplay ? __( 'Muted because of Autoplay.' ) : null\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => ! controls }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { controls: true } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\t\tonChange={ toggleFactory.controls }\n\t\t\t\t\tchecked={ !! controls }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! playsInline }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { playsInline: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/* translators: Setting to play videos within the webpage on mobile browsers rather than opening in a fullscreen player. */\n\t\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\t\tonChange={ toggleFactory.playsInline }\n\t\t\t\t\tchecked={ !! playsInline }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'When enabled, videos will play directly within the webpage on mobile browsers, instead of opening in a fullscreen player.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => preload !== 'metadata' }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { preload: 'metadata' } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\t\tvalue={ preload }\n\t\t\t\t\tonChange={ onChangePreload }\n\t\t\t\t\toptions={ options }\n\t\t\t\t\thideCancelButton\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t</>\n\t);\n};\n\nexport default VideoSettings;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
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","DEFAULT_MEDIA_SIZE_SLUG","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","getInnerBlocksTemplate","attributes","align","placeholder","isTemporaryMedia","id","url","CoverEdit","clientId","isSelected","overlayColor","setAttributes","setOverlayColor","toggleSelection","context","postId","postType","_media$media_details$","contentPosition","originalUrl","backgroundType","originalBackgroundType","useFeaturedImage","dimRatio","focalPoint","hasParallax","isDark","isRepeated","minHeight","minHeightUnit","alt","allowedBlocks","templateLock","tagName","TagName","isUserOverlayColor","sizeSlug","featuredImage","getSettings","__unstableMarkNextChangeAsNotPersistent","media","select","getMedia","undefined","mediaUrl","media_details","sizes","source_url","averageBackgroundColor","newOverlayColor","color","newIsDark","replaceAll","createErrorNotice","gradientClass","gradientValue","onSelectMedia","newMedia","mediaAttributes","isImage","type","media_type","includes","newDimRatio","imageDefaultSize","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","withIllustration","src","role","autoPlay","muted","loop","class","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';\nimport { DEFAULT_MEDIA_SIZE_SLUG } from '../constants';\n\nfunction getInnerBlocksTemplate( attributes ) {\n\treturn [\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\talign: 'center',\n\t\t\t\tplaceholder: __( 'Write title…' ),\n\t\t\t\t...attributes,\n\t\t\t},\n\t\t],\n\t];\n}\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily while\n * the media (image or video) is being uploaded and will not have an id allocated yet.\n *\n * @param {number} id The id of the media.\n * @param {string} url The url of the media.\n *\n * @return {boolean} Is the URL a Blob URL.\n */\nconst isTemporaryMedia = ( id, url ) => ! id && isBlobURL( url );\n\nfunction CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n\tcontext: { postId, postType },\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\turl: originalUrl,\n\t\tbackgroundType: originalBackgroundType,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t\ttagName: TagName = 'div',\n\t\tisUserOverlayColor,\n\t\tsizeSlug,\n\t} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\tconst { getSettings } = useSelect( blockEditorStore );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst { media } = useSelect(\n\t\t( select ) => {\n\t\t\treturn {\n\t\t\t\tmedia:\n\t\t\t\t\tfeaturedImage && useFeaturedImage\n\t\t\t\t\t\t? select( coreStore ).getMedia( featuredImage, {\n\t\t\t\t\t\t\t\tcontext: 'view',\n\t\t\t\t\t\t } )\n\t\t\t\t\t\t: undefined,\n\t\t\t};\n\t\t},\n\t\t[ featuredImage, useFeaturedImage ]\n\t);\n\tconst mediaUrl =\n\t\tmedia?.media_details?.sizes?.[ sizeSlug ]?.source_url ??\n\t\tmedia?.source_url;\n\n\t// User can change the featured image outside of the block, but we still\n\t// need to update the block when that happens. This effect should only\n\t// run when the featured image changes in that case. All other cases are\n\t// handled in their respective callbacks.\n\tuseEffect( () => {\n\t\t( async () => {\n\t\t\tif ( ! useFeaturedImage ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst averageBackgroundColor = await getMediaColor( mediaUrl );\n\n\t\t\tlet newOverlayColor = overlayColor.color;\n\t\t\tif ( ! isUserOverlayColor ) {\n\t\t\t\tnewOverlayColor = averageBackgroundColor;\n\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\tsetOverlayColor( newOverlayColor );\n\t\t\t}\n\n\t\t\tconst newIsDark = compositeIsDark(\n\t\t\t\tdimRatio,\n\t\t\t\tnewOverlayColor,\n\t\t\t\taverageBackgroundColor\n\t\t\t);\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tisDark: newIsDark,\n\t\t\t\tisUserOverlayColor: isUserOverlayColor || false,\n\t\t\t} );\n\t\t} )();\n\t\t// Update the block only when the featured image changes.\n\t}, [ mediaUrl ] );\n\n\t// instead of destructuring the attributes\n\t// we define the url and background type\n\t// depending on the value of the useFeaturedImage flag\n\t// to preview in edit the dynamic featured image\n\tconst url = useFeaturedImage\n\t\t? mediaUrl\n\t\t: // Ensure the url is not malformed due to sanitization through `wp_kses`.\n\t\t originalUrl?.replaceAll( '&', '&' );\n\tconst backgroundType = useFeaturedImage\n\t\t? IMAGE_BACKGROUND_TYPE\n\t\t: originalBackgroundType;\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { gradientClass, gradientValue } = __experimentalUseGradient();\n\n\tconst onSelectMedia = async ( newMedia ) => {\n\t\tconst mediaAttributes = attributesFromMedia( newMedia );\n\t\tconst isImage = [ newMedia?.type, newMedia?.media_type ].includes(\n\t\t\tIMAGE_BACKGROUND_TYPE\n\t\t);\n\n\t\tconst averageBackgroundColor = await getMediaColor(\n\t\t\tisImage ? newMedia?.url : undefined\n\t\t);\n\n\t\tlet newOverlayColor = overlayColor.color;\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tnewOverlayColor = averageBackgroundColor;\n\t\t\tsetOverlayColor( newOverlayColor );\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\t// Only set a new dimRatio if there was no previous media selected\n\t\t// to avoid resetting to 50 if it has been explicitly set to 100.\n\t\t// See issue #52835 for context.\n\t\tconst newDimRatio =\n\t\t\toriginalUrl === undefined && dimRatio === 100 ? 50 : dimRatio;\n\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tif ( backgroundType === IMAGE_BACKGROUND_TYPE && mediaAttributes?.id ) {\n\t\t\tconst { imageDefaultSize } = getSettings();\n\n\t\t\t// Try to use the previous selected image size if it's available\n\t\t\t// otherwise try the default image size or fallback to full size.\n\t\t\tif (\n\t\t\t\tsizeSlug &&\n\t\t\t\t( newMedia?.sizes?.[ sizeSlug ] ||\n\t\t\t\t\tnewMedia?.media_details?.sizes?.[ sizeSlug ] )\n\t\t\t) {\n\t\t\t\tmediaAttributes.sizeSlug = sizeSlug;\n\t\t\t\tmediaAttributes.url =\n\t\t\t\t\tnewMedia?.sizes?.[ sizeSlug ]?.url ||\n\t\t\t\t\tnewMedia?.media_details?.sizes?.[ sizeSlug ]?.source_url;\n\t\t\t} else if (\n\t\t\t\tnewMedia?.sizes?.[ imageDefaultSize ] ||\n\t\t\t\tnewMedia?.media_details?.sizes?.[ imageDefaultSize ]\n\t\t\t) {\n\t\t\t\tmediaAttributes.sizeSlug = imageDefaultSize;\n\t\t\t\tmediaAttributes.url =\n\t\t\t\t\tnewMedia?.sizes?.[ imageDefaultSize ]?.url ||\n\t\t\t\t\tnewMedia?.media_details?.sizes?.[ imageDefaultSize ]\n\t\t\t\t\t\t?.source_url;\n\t\t\t} else {\n\t\t\t\tmediaAttributes.sizeSlug = DEFAULT_MEDIA_SIZE_SLUG;\n\t\t\t}\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\tfocalPoint: undefined,\n\t\t\tuseFeaturedImage: undefined,\n\t\t\tdimRatio: newDimRatio,\n\t\t\tisDark: newIsDark,\n\t\t\tisUserOverlayColor: isUserOverlayColor || false,\n\t\t} );\n\t};\n\n\tconst onClearMedia = () => {\n\t\tlet newOverlayColor = overlayColor.color;\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tnewOverlayColor = DEFAULT_OVERLAY_COLOR;\n\t\t\tsetOverlayColor( undefined );\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tdimRatio,\n\t\t\tnewOverlayColor,\n\t\t\tDEFAULT_BACKGROUND_COLOR\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tid: undefined,\n\t\t\tbackgroundType: undefined,\n\t\t\tfocalPoint: undefined,\n\t\t\thasParallax: undefined,\n\t\t\tisRepeated: undefined,\n\t\t\tuseFeaturedImage: undefined,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onSetOverlayColor = async ( newOverlayColor ) => {\n\t\tconst averageBackgroundColor = await getMediaColor( url );\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tdimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetOverlayColor( newOverlayColor );\n\n\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\n\t\tsetAttributes( {\n\t\t\tisUserOverlayColor: true,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onUpdateDimRatio = async ( newDimRatio ) => {\n\t\tconst averageBackgroundColor = await getMediaColor( url );\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\toverlayColor.color,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\tdimRatio: newDimRatio,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t};\n\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\n\n\tconst isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;\n\tconst isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;\n\n\tconst blockEditingMode = useBlockEditingMode();\n\tconst hasNonContentControls = blockEditingMode === 'default';\n\n\tconst [ resizeListener, { height, width } ] = useResizeObserver();\n\tconst resizableBoxDimensions = useMemo( () => {\n\t\treturn {\n\t\t\theight: minHeightUnit === 'px' ? minHeight : 'auto',\n\t\t\twidth: 'auto',\n\t\t};\n\t}, [ minHeight, minHeightUnit ] );\n\n\tconst minHeightWithUnit =\n\t\tminHeight && minHeightUnit\n\t\t\t? `${ minHeight }${ minHeightUnit }`\n\t\t\t: minHeight;\n\n\tconst isImgElement = ! ( hasParallax || isRepeated );\n\n\tconst style = {\n\t\tminHeight: minHeightWithUnit || undefined,\n\t};\n\n\tconst backgroundImage = url ? `url(${ url })` : undefined;\n\n\tconst backgroundPosition = mediaPosition( focalPoint );\n\n\tconst bgStyle = { backgroundColor: overlayColor.color };\n\tconst mediaStyle = {\n\t\tobjectPosition:\n\t\t\tfocalPoint && isImgElement\n\t\t\t\t? mediaPosition( focalPoint )\n\t\t\t\t: undefined,\n\t};\n\n\tconst hasBackground = !! ( url || overlayColor.color || gradientValue );\n\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlock( clientId ).innerBlocks.length >\n\t\t\t0,\n\t\t[ clientId ]\n\t);\n\n\tconst ref = useRef();\n\tconst blockProps = useBlockProps( { ref } );\n\n\t// Check for fontSize support before we pass a fontSize attribute to the innerBlocks.\n\tconst [ fontSizes ] = useSettings( 'typography.fontSizes' );\n\tconst hasFontSizes = fontSizes?.length > 0;\n\tconst innerBlocksTemplate = getInnerBlocksTemplate( {\n\t\tfontSize: hasFontSizes ? 'large' : undefined,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-cover__inner-container',\n\t\t},\n\t\t{\n\t\t\t// Avoid template sync when the `templateLock` value is `all` or `contentOnly`.\n\t\t\t// See: https://github.com/WordPress/gutenberg/pull/45632\n\t\t\ttemplate: ! hasInnerBlocks ? innerBlocksTemplate : undefined,\n\t\t\ttemplateInsertUpdatesSelection: true,\n\t\t\tallowedBlocks,\n\t\t\ttemplateLock,\n\t\t\tdropZoneElement: ref.current,\n\t\t}\n\t);\n\n\tconst mediaElement = useRef();\n\tconst currentSettings = {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\thasInnerBlocks,\n\t\turl,\n\t\tisImgElement,\n\t\toverlayColor,\n\t};\n\n\tconst toggleUseFeaturedImage = async () => {\n\t\tconst newUseFeaturedImage = ! useFeaturedImage;\n\n\t\tconst averageBackgroundColor = newUseFeaturedImage\n\t\t\t? await getMediaColor( mediaUrl )\n\t\t\t: DEFAULT_BACKGROUND_COLOR;\n\n\t\tconst newOverlayColor = ! isUserOverlayColor\n\t\t\t? averageBackgroundColor\n\t\t\t: overlayColor.color;\n\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tif ( newUseFeaturedImage ) {\n\t\t\t\tsetOverlayColor( newOverlayColor );\n\t\t\t} else {\n\t\t\t\tsetOverlayColor( undefined );\n\t\t\t}\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\tconst newDimRatio = dimRatio === 100 ? 50 : dimRatio;\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t\tuseFeaturedImage: newUseFeaturedImage,\n\t\t\tdimRatio: newDimRatio,\n\t\t\tbackgroundType: useFeaturedImage\n\t\t\t\t? IMAGE_BACKGROUND_TYPE\n\t\t\t\t: undefined,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst blockControls = (\n\t\t<CoverBlockControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\tonClearMedia={ onClearMedia }\n\t\t/>\n\t);\n\n\tconst inspectorControls = (\n\t\t<CoverInspectorControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tclientId={ clientId }\n\t\t\tsetOverlayColor={ onSetOverlayColor }\n\t\t\tcoverRef={ ref }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\tupdateDimRatio={ onUpdateDimRatio }\n\t\t\tonClearMedia={ onClearMedia }\n\t\t\tfeaturedImage={ media }\n\t\t/>\n\t);\n\n\tconst resizableCoverProps = {\n\t\tclassName: 'block-library-cover__resize-container',\n\t\tclientId,\n\t\theight,\n\t\tminHeight: minHeightWithUnit,\n\t\tonResizeStart: () => {\n\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\ttoggleSelection( false );\n\t\t},\n\t\tonResize: ( value ) => {\n\t\t\tsetAttributes( { minHeight: value } );\n\t\t},\n\t\tonResizeStop: ( newMinHeight ) => {\n\t\t\ttoggleSelection( true );\n\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t},\n\t\t// Hide the resize handle if an aspect ratio is set, as the aspect ratio takes precedence.\n\t\tshowHandle: ! attributes.style?.dimensions?.aspectRatio,\n\t\tsize: resizableBoxDimensions,\n\t\twidth,\n\t};\n\n\tif ( ! useFeaturedImage && ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ blockControls }\n\t\t\t\t{ inspectorControls }\n\t\t\t\t{ hasNonContentControls && isSelected && (\n\t\t\t\t\t<ResizableCoverPopover { ...resizableCoverProps } />\n\t\t\t\t) }\n\t\t\t\t<TagName\n\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\tclassName={ clsx( 'is-placeholder', blockProps.className ) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...blockProps.style,\n\t\t\t\t\t\tminHeight: minHeightWithUnit || undefined,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ resizeListener }\n\t\t\t\t\t<CoverPlaceholder\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"wp-block-cover__placeholder-background-options\">\n\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\tdisableCustomColors\n\t\t\t\t\t\t\t\tvalue={ overlayColor.color }\n\t\t\t\t\t\t\t\tonChange={ onSetOverlayColor }\n\t\t\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</CoverPlaceholder>\n\t\t\t\t</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst classes = clsx(\n\t\t{\n\t\t\t'is-dark-theme': isDark,\n\t\t\t'is-light': ! isDark,\n\t\t\t'is-transient': isUploadingMedia,\n\t\t\t'has-parallax': hasParallax,\n\t\t\t'is-repeated': isRepeated,\n\t\t\t'has-custom-content-position':\n\t\t\t\t! isContentPositionCenter( contentPosition ),\n\t\t},\n\t\tgetPositionClassName( contentPosition )\n\t);\n\n\tconst showOverlay =\n\t\turl || ! useFeaturedImage || ( useFeaturedImage && ! url );\n\n\treturn (\n\t\t<>\n\t\t\t{ blockControls }\n\t\t\t{ inspectorControls }\n\t\t\t<TagName\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ clsx( classes, blockProps.className ) }\n\t\t\t\tstyle={ { ...style, ...blockProps.style } }\n\t\t\t\tdata-url={ url }\n\t\t\t>\n\t\t\t\t{ resizeListener }\n\n\t\t\t\t{ ! url && useFeaturedImage && (\n\t\t\t\t\t<Placeholder\n\t\t\t\t\t\tclassName=\"wp-block-cover__image--placeholder-image\"\n\t\t\t\t\t\twithIllustration\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ url &&\n\t\t\t\t\tisImageBackground &&\n\t\t\t\t\t( isImgElement ? (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\tclassName=\"wp-block-cover__image-background\"\n\t\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\trole={ alt ? 'img' : undefined }\n\t\t\t\t\t\t\taria-label={ alt ? alt : undefined }\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\tclasses,\n\t\t\t\t\t\t\t\t'wp-block-cover__image-background'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tstyle={ { backgroundImage, backgroundPosition } }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t{ url && isVideoBackground && (\n\t\t\t\t\t<video\n\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__video-background\"\n\t\t\t\t\t\tautoPlay\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tloop\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ showOverlay && (\n\t\t\t\t\t<span\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t'wp-block-cover__background',\n\t\t\t\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t[ overlayColor.class ]: overlayColor.class,\n\t\t\t\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\t\t\t\t\t\t\t// For backwards compatibility. Former versions of the Cover Block applied\n\t\t\t\t\t\t\t\t// `.wp-block-cover__gradient-background` in the presence of\n\t\t\t\t\t\t\t\t// media, a gradient and a dim.\n\t\t\t\t\t\t\t\t'wp-block-cover__gradient-background':\n\t\t\t\t\t\t\t\t\turl && gradientValue && dimRatio !== 0,\n\t\t\t\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tstyle={ { backgroundImage: gradientValue, ...bgStyle } }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ isUploadingMedia && <Spinner /> }\n\n\t\t\t\t<CoverPlaceholder\n\t\t\t\t\tdisableMediaButtons\n\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t/>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</TagName>\n\t\t\t{ hasNonContentControls && isSelected && (\n\t\t\t\t<ResizableCoverPopover { ...resizableCoverProps } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default compose( [\n\twithColors( { overlayColor: 'background-color' } ),\n] )( CoverEdit );\n"],"mappings":"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","ignoreList":[]}
|
|
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","DEFAULT_MEDIA_SIZE_SLUG","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","getInnerBlocksTemplate","attributes","align","placeholder","isTemporaryMedia","id","url","CoverEdit","clientId","isSelected","overlayColor","setAttributes","setOverlayColor","toggleSelection","context","postId","postType","_media$media_details$","contentPosition","originalUrl","backgroundType","originalBackgroundType","useFeaturedImage","dimRatio","focalPoint","hasParallax","isDark","isRepeated","minHeight","minHeightUnit","alt","allowedBlocks","templateLock","tagName","TagName","isUserOverlayColor","sizeSlug","featuredImage","getSettings","__unstableMarkNextChangeAsNotPersistent","media","select","getMedia","undefined","mediaUrl","media_details","sizes","source_url","averageBackgroundColor","newOverlayColor","color","newIsDark","replaceAll","createErrorNotice","gradientClass","gradientValue","onSelectMedia","newMedia","mediaAttributes","isImage","type","media_type","includes","newDimRatio","imageDefaultSize","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","asButtons","classes","showOverlay","withIllustration","src","role","autoPlay","muted","loop","class","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';\nimport { DEFAULT_MEDIA_SIZE_SLUG } from '../constants';\n\nfunction getInnerBlocksTemplate( attributes ) {\n\treturn [\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\talign: 'center',\n\t\t\t\tplaceholder: __( 'Write title…' ),\n\t\t\t\t...attributes,\n\t\t\t},\n\t\t],\n\t];\n}\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily while\n * the media (image or video) is being uploaded and will not have an id allocated yet.\n *\n * @param {number} id The id of the media.\n * @param {string} url The url of the media.\n *\n * @return {boolean} Is the URL a Blob URL.\n */\nconst isTemporaryMedia = ( id, url ) => ! id && isBlobURL( url );\n\nfunction CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n\tcontext: { postId, postType },\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\turl: originalUrl,\n\t\tbackgroundType: originalBackgroundType,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t\ttagName: TagName = 'div',\n\t\tisUserOverlayColor,\n\t\tsizeSlug,\n\t} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\tconst { getSettings } = useSelect( blockEditorStore );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst { media } = useSelect(\n\t\t( select ) => {\n\t\t\treturn {\n\t\t\t\tmedia:\n\t\t\t\t\tfeaturedImage && useFeaturedImage\n\t\t\t\t\t\t? select( coreStore ).getMedia( featuredImage, {\n\t\t\t\t\t\t\t\tcontext: 'view',\n\t\t\t\t\t\t } )\n\t\t\t\t\t\t: undefined,\n\t\t\t};\n\t\t},\n\t\t[ featuredImage, useFeaturedImage ]\n\t);\n\tconst mediaUrl =\n\t\tmedia?.media_details?.sizes?.[ sizeSlug ]?.source_url ??\n\t\tmedia?.source_url;\n\n\t// User can change the featured image outside of the block, but we still\n\t// need to update the block when that happens. This effect should only\n\t// run when the featured image changes in that case. All other cases are\n\t// handled in their respective callbacks.\n\tuseEffect( () => {\n\t\t( async () => {\n\t\t\tif ( ! useFeaturedImage ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst averageBackgroundColor = await getMediaColor( mediaUrl );\n\n\t\t\tlet newOverlayColor = overlayColor.color;\n\t\t\tif ( ! isUserOverlayColor ) {\n\t\t\t\tnewOverlayColor = averageBackgroundColor;\n\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\tsetOverlayColor( newOverlayColor );\n\t\t\t}\n\n\t\t\tconst newIsDark = compositeIsDark(\n\t\t\t\tdimRatio,\n\t\t\t\tnewOverlayColor,\n\t\t\t\taverageBackgroundColor\n\t\t\t);\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tisDark: newIsDark,\n\t\t\t\tisUserOverlayColor: isUserOverlayColor || false,\n\t\t\t} );\n\t\t} )();\n\t\t// Update the block only when the featured image changes.\n\t}, [ mediaUrl ] );\n\n\t// instead of destructuring the attributes\n\t// we define the url and background type\n\t// depending on the value of the useFeaturedImage flag\n\t// to preview in edit the dynamic featured image\n\tconst url = useFeaturedImage\n\t\t? mediaUrl\n\t\t: // Ensure the url is not malformed due to sanitization through `wp_kses`.\n\t\t originalUrl?.replaceAll( '&', '&' );\n\tconst backgroundType = useFeaturedImage\n\t\t? IMAGE_BACKGROUND_TYPE\n\t\t: originalBackgroundType;\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { gradientClass, gradientValue } = __experimentalUseGradient();\n\n\tconst onSelectMedia = async ( newMedia ) => {\n\t\tconst mediaAttributes = attributesFromMedia( newMedia );\n\t\tconst isImage = [ newMedia?.type, newMedia?.media_type ].includes(\n\t\t\tIMAGE_BACKGROUND_TYPE\n\t\t);\n\n\t\tconst averageBackgroundColor = await getMediaColor(\n\t\t\tisImage ? newMedia?.url : undefined\n\t\t);\n\n\t\tlet newOverlayColor = overlayColor.color;\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tnewOverlayColor = averageBackgroundColor;\n\t\t\tsetOverlayColor( newOverlayColor );\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\t// Only set a new dimRatio if there was no previous media selected\n\t\t// to avoid resetting to 50 if it has been explicitly set to 100.\n\t\t// See issue #52835 for context.\n\t\tconst newDimRatio =\n\t\t\toriginalUrl === undefined && dimRatio === 100 ? 50 : dimRatio;\n\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tif ( backgroundType === IMAGE_BACKGROUND_TYPE && mediaAttributes?.id ) {\n\t\t\tconst { imageDefaultSize } = getSettings();\n\n\t\t\t// Try to use the previous selected image size if it's available\n\t\t\t// otherwise try the default image size or fallback to full size.\n\t\t\tif (\n\t\t\t\tsizeSlug &&\n\t\t\t\t( newMedia?.sizes?.[ sizeSlug ] ||\n\t\t\t\t\tnewMedia?.media_details?.sizes?.[ sizeSlug ] )\n\t\t\t) {\n\t\t\t\tmediaAttributes.sizeSlug = sizeSlug;\n\t\t\t\tmediaAttributes.url =\n\t\t\t\t\tnewMedia?.sizes?.[ sizeSlug ]?.url ||\n\t\t\t\t\tnewMedia?.media_details?.sizes?.[ sizeSlug ]?.source_url;\n\t\t\t} else if (\n\t\t\t\tnewMedia?.sizes?.[ imageDefaultSize ] ||\n\t\t\t\tnewMedia?.media_details?.sizes?.[ imageDefaultSize ]\n\t\t\t) {\n\t\t\t\tmediaAttributes.sizeSlug = imageDefaultSize;\n\t\t\t\tmediaAttributes.url =\n\t\t\t\t\tnewMedia?.sizes?.[ imageDefaultSize ]?.url ||\n\t\t\t\t\tnewMedia?.media_details?.sizes?.[ imageDefaultSize ]\n\t\t\t\t\t\t?.source_url;\n\t\t\t} else {\n\t\t\t\tmediaAttributes.sizeSlug = DEFAULT_MEDIA_SIZE_SLUG;\n\t\t\t}\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\tfocalPoint: undefined,\n\t\t\tuseFeaturedImage: undefined,\n\t\t\tdimRatio: newDimRatio,\n\t\t\tisDark: newIsDark,\n\t\t\tisUserOverlayColor: isUserOverlayColor || false,\n\t\t} );\n\t};\n\n\tconst onClearMedia = () => {\n\t\tlet newOverlayColor = overlayColor.color;\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tnewOverlayColor = DEFAULT_OVERLAY_COLOR;\n\t\t\tsetOverlayColor( undefined );\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tdimRatio,\n\t\t\tnewOverlayColor,\n\t\t\tDEFAULT_BACKGROUND_COLOR\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tid: undefined,\n\t\t\tbackgroundType: undefined,\n\t\t\tfocalPoint: undefined,\n\t\t\thasParallax: undefined,\n\t\t\tisRepeated: undefined,\n\t\t\tuseFeaturedImage: undefined,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onSetOverlayColor = async ( newOverlayColor ) => {\n\t\tconst averageBackgroundColor = await getMediaColor( url );\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tdimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetOverlayColor( newOverlayColor );\n\n\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\n\t\tsetAttributes( {\n\t\t\tisUserOverlayColor: true,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onUpdateDimRatio = async ( newDimRatio ) => {\n\t\tconst averageBackgroundColor = await getMediaColor( url );\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\toverlayColor.color,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\tdimRatio: newDimRatio,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t};\n\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\n\n\tconst isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;\n\tconst isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;\n\n\tconst blockEditingMode = useBlockEditingMode();\n\tconst hasNonContentControls = blockEditingMode === 'default';\n\n\tconst [ resizeListener, { height, width } ] = useResizeObserver();\n\tconst resizableBoxDimensions = useMemo( () => {\n\t\treturn {\n\t\t\theight: minHeightUnit === 'px' ? minHeight : 'auto',\n\t\t\twidth: 'auto',\n\t\t};\n\t}, [ minHeight, minHeightUnit ] );\n\n\tconst minHeightWithUnit =\n\t\tminHeight && minHeightUnit\n\t\t\t? `${ minHeight }${ minHeightUnit }`\n\t\t\t: minHeight;\n\n\tconst isImgElement = ! ( hasParallax || isRepeated );\n\n\tconst style = {\n\t\tminHeight: minHeightWithUnit || undefined,\n\t};\n\n\tconst backgroundImage = url ? `url(${ url })` : undefined;\n\n\tconst backgroundPosition = mediaPosition( focalPoint );\n\n\tconst bgStyle = { backgroundColor: overlayColor.color };\n\tconst mediaStyle = {\n\t\tobjectPosition:\n\t\t\tfocalPoint && isImgElement\n\t\t\t\t? mediaPosition( focalPoint )\n\t\t\t\t: undefined,\n\t};\n\n\tconst hasBackground = !! ( url || overlayColor.color || gradientValue );\n\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlock( clientId ).innerBlocks.length >\n\t\t\t0,\n\t\t[ clientId ]\n\t);\n\n\tconst ref = useRef();\n\tconst blockProps = useBlockProps( { ref } );\n\n\t// Check for fontSize support before we pass a fontSize attribute to the innerBlocks.\n\tconst [ fontSizes ] = useSettings( 'typography.fontSizes' );\n\tconst hasFontSizes = fontSizes?.length > 0;\n\tconst innerBlocksTemplate = getInnerBlocksTemplate( {\n\t\tfontSize: hasFontSizes ? 'large' : undefined,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-cover__inner-container',\n\t\t},\n\t\t{\n\t\t\t// Avoid template sync when the `templateLock` value is `all` or `contentOnly`.\n\t\t\t// See: https://github.com/WordPress/gutenberg/pull/45632\n\t\t\ttemplate: ! hasInnerBlocks ? innerBlocksTemplate : undefined,\n\t\t\ttemplateInsertUpdatesSelection: true,\n\t\t\tallowedBlocks,\n\t\t\ttemplateLock,\n\t\t\tdropZoneElement: ref.current,\n\t\t}\n\t);\n\n\tconst mediaElement = useRef();\n\tconst currentSettings = {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\thasInnerBlocks,\n\t\turl,\n\t\tisImgElement,\n\t\toverlayColor,\n\t};\n\n\tconst toggleUseFeaturedImage = async () => {\n\t\tconst newUseFeaturedImage = ! useFeaturedImage;\n\n\t\tconst averageBackgroundColor = newUseFeaturedImage\n\t\t\t? await getMediaColor( mediaUrl )\n\t\t\t: DEFAULT_BACKGROUND_COLOR;\n\n\t\tconst newOverlayColor = ! isUserOverlayColor\n\t\t\t? averageBackgroundColor\n\t\t\t: overlayColor.color;\n\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tif ( newUseFeaturedImage ) {\n\t\t\t\tsetOverlayColor( newOverlayColor );\n\t\t\t} else {\n\t\t\t\tsetOverlayColor( undefined );\n\t\t\t}\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\tconst newDimRatio = dimRatio === 100 ? 50 : dimRatio;\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t\tuseFeaturedImage: newUseFeaturedImage,\n\t\t\tdimRatio: newDimRatio,\n\t\t\tbackgroundType: useFeaturedImage\n\t\t\t\t? IMAGE_BACKGROUND_TYPE\n\t\t\t\t: undefined,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst blockControls = (\n\t\t<CoverBlockControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\tonClearMedia={ onClearMedia }\n\t\t/>\n\t);\n\n\tconst inspectorControls = (\n\t\t<CoverInspectorControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tclientId={ clientId }\n\t\t\tsetOverlayColor={ onSetOverlayColor }\n\t\t\tcoverRef={ ref }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\tupdateDimRatio={ onUpdateDimRatio }\n\t\t\tonClearMedia={ onClearMedia }\n\t\t\tfeaturedImage={ media }\n\t\t/>\n\t);\n\n\tconst resizableCoverProps = {\n\t\tclassName: 'block-library-cover__resize-container',\n\t\tclientId,\n\t\theight,\n\t\tminHeight: minHeightWithUnit,\n\t\tonResizeStart: () => {\n\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\ttoggleSelection( false );\n\t\t},\n\t\tonResize: ( value ) => {\n\t\t\tsetAttributes( { minHeight: value } );\n\t\t},\n\t\tonResizeStop: ( newMinHeight ) => {\n\t\t\ttoggleSelection( true );\n\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t},\n\t\t// Hide the resize handle if an aspect ratio is set, as the aspect ratio takes precedence.\n\t\tshowHandle: ! attributes.style?.dimensions?.aspectRatio,\n\t\tsize: resizableBoxDimensions,\n\t\twidth,\n\t};\n\n\tif ( ! useFeaturedImage && ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ blockControls }\n\t\t\t\t{ inspectorControls }\n\t\t\t\t{ hasNonContentControls && isSelected && (\n\t\t\t\t\t<ResizableCoverPopover { ...resizableCoverProps } />\n\t\t\t\t) }\n\t\t\t\t<TagName\n\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\tclassName={ clsx( 'is-placeholder', blockProps.className ) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...blockProps.style,\n\t\t\t\t\t\tminHeight: minHeightWithUnit || undefined,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ resizeListener }\n\t\t\t\t\t<CoverPlaceholder\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"wp-block-cover__placeholder-background-options\">\n\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\tdisableCustomColors\n\t\t\t\t\t\t\t\tvalue={ overlayColor.color }\n\t\t\t\t\t\t\t\tonChange={ onSetOverlayColor }\n\t\t\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\t\t\tasButtons\n\t\t\t\t\t\t\t\taria-label={ __( 'Overlay color' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</CoverPlaceholder>\n\t\t\t\t</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst classes = clsx(\n\t\t{\n\t\t\t'is-dark-theme': isDark,\n\t\t\t'is-light': ! isDark,\n\t\t\t'is-transient': isUploadingMedia,\n\t\t\t'has-parallax': hasParallax,\n\t\t\t'is-repeated': isRepeated,\n\t\t\t'has-custom-content-position':\n\t\t\t\t! isContentPositionCenter( contentPosition ),\n\t\t},\n\t\tgetPositionClassName( contentPosition )\n\t);\n\n\tconst showOverlay =\n\t\turl || ! useFeaturedImage || ( useFeaturedImage && ! url );\n\n\treturn (\n\t\t<>\n\t\t\t{ blockControls }\n\t\t\t{ inspectorControls }\n\t\t\t<TagName\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ clsx( classes, blockProps.className ) }\n\t\t\t\tstyle={ { ...style, ...blockProps.style } }\n\t\t\t\tdata-url={ url }\n\t\t\t>\n\t\t\t\t{ resizeListener }\n\n\t\t\t\t{ ! url && useFeaturedImage && (\n\t\t\t\t\t<Placeholder\n\t\t\t\t\t\tclassName=\"wp-block-cover__image--placeholder-image\"\n\t\t\t\t\t\twithIllustration\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ url &&\n\t\t\t\t\tisImageBackground &&\n\t\t\t\t\t( isImgElement ? (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\tclassName=\"wp-block-cover__image-background\"\n\t\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\trole={ alt ? 'img' : undefined }\n\t\t\t\t\t\t\taria-label={ alt ? alt : undefined }\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\tclasses,\n\t\t\t\t\t\t\t\t'wp-block-cover__image-background'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tstyle={ { backgroundImage, backgroundPosition } }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t{ url && isVideoBackground && (\n\t\t\t\t\t<video\n\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__video-background\"\n\t\t\t\t\t\tautoPlay\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tloop\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ showOverlay && (\n\t\t\t\t\t<span\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t'wp-block-cover__background',\n\t\t\t\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t[ overlayColor.class ]: overlayColor.class,\n\t\t\t\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\t\t\t\t\t\t\t// For backwards compatibility. Former versions of the Cover Block applied\n\t\t\t\t\t\t\t\t// `.wp-block-cover__gradient-background` in the presence of\n\t\t\t\t\t\t\t\t// media, a gradient and a dim.\n\t\t\t\t\t\t\t\t'wp-block-cover__gradient-background':\n\t\t\t\t\t\t\t\t\turl && gradientValue && dimRatio !== 0,\n\t\t\t\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tstyle={ { backgroundImage: gradientValue, ...bgStyle } }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ isUploadingMedia && <Spinner /> }\n\n\t\t\t\t<CoverPlaceholder\n\t\t\t\t\tdisableMediaButtons\n\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t/>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</TagName>\n\t\t\t{ hasNonContentControls && isSelected && (\n\t\t\t\t<ResizableCoverPopover { ...resizableCoverProps } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default compose( [\n\twithColors( { overlayColor: 'background-color' } ),\n] )( CoverEdit );\n"],"mappings":"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","ignoreList":[]}
|