@wordpress/block-library 9.29.0 → 9.29.1-next.f34ab90e9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/form/deprecated.js +97 -0
- package/build/form/deprecated.js.map +1 -0
- package/build/form/index.js +2 -1
- package/build/form/index.js.map +1 -1
- package/build/form/save.js +0 -1
- package/build/form/save.js.map +1 -1
- package/build/gallery/edit.js +9 -3
- package/build/gallery/edit.js.map +1 -1
- package/build/image/edit.js +0 -5
- package/build/image/edit.js.map +1 -1
- package/build-module/form/deprecated.js +90 -0
- package/build-module/form/deprecated.js.map +1 -0
- package/build-module/form/index.js +2 -1
- package/build-module/form/index.js.map +1 -1
- package/build-module/form/save.js +0 -1
- package/build-module/form/save.js.map +1 -1
- package/build-module/gallery/edit.js +9 -3
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/image/edit.js +0 -5
- package/build-module/image/edit.js.map +1 -1
- package/package.json +35 -35
- package/src/form/block.json +0 -1
- package/src/form/deprecated.js +96 -0
- package/src/form/index.js +2 -0
- package/src/form/save.js +0 -1
- package/src/gallery/edit.js +9 -3
- package/src/image/edit.js +0 -6
|
@@ -73,7 +73,6 @@ export function ImageEdit({
|
|
|
73
73
|
}) {
|
|
74
74
|
const {
|
|
75
75
|
url = '',
|
|
76
|
-
alt,
|
|
77
76
|
caption,
|
|
78
77
|
id,
|
|
79
78
|
width,
|
|
@@ -96,10 +95,6 @@ export function ImageEdit({
|
|
|
96
95
|
width: placeholderWidth
|
|
97
96
|
}] = useResizeObserver();
|
|
98
97
|
const isSmallContainer = placeholderWidth && placeholderWidth < 160;
|
|
99
|
-
const altRef = useRef();
|
|
100
|
-
useEffect(() => {
|
|
101
|
-
altRef.current = alt;
|
|
102
|
-
}, [alt]);
|
|
103
98
|
const captionRef = useRef();
|
|
104
99
|
useEffect(() => {
|
|
105
100
|
captionRef.current = caption;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","isBlobURL","createBlobURL","createBlock","getBlockBindingsSource","Placeholder","useDispatch","useSelect","BlockIcon","useBlockProps","MediaPlaceholder","store","blockEditorStore","__experimentalUseBorderProps","useBorderProps","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","useBlockEditingMode","useEffect","useRef","useState","__","sprintf","image","icon","plugins","pluginsIcon","noticesStore","useResizeObserver","useUploadMediaFromBlobURL","Image","isValidFileType","useMaxWidthObserver","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_CUSTOM","LINK_DESTINATION_MEDIA","LINK_DESTINATION_NONE","ALLOWED_MEDIA_TYPES","DEFAULT_MEDIA_SIZE_SLUG","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","pickRelevantMediaFiles","size","imageProps","Object","fromEntries","entries","filter","key","includes","url","sizes","media_details","source_url","isExternalImage","id","hasSize","_image$sizes$size","_image$media_details$","ImageEdit","attributes","setAttributes","isSelected","isSingleSelected","className","insertBlocksAfter","onReplace","context","clientId","__unstableParentLayout","parentLayout","alt","caption","width","height","sizeSlug","aspectRatio","scale","align","metadata","temporaryURL","setTemporaryURL","blob","containerRef","layoutType","type","default","isMaxWidthContainerWidth","maxWidthObserver","maxContentWidth","placeholderResizeListener","placeholderWidth","isSmallContainer","altRef","current","captionRef","__unstableMarkNextChangeAsNotPersistent","replaceBlock","undefined","getSettings","getBlockRootClientId","getBlockName","canInsertBlockType","blockEditingMode","createErrorNotice","onUploadError","message","src","onSelectImagesList","images","win","ownerDocument","defaultView","every","file","File","files","rootClientId","some","imageBlocks","map","galleryBlock","onSelectImage","media","Array","isArray","title","imageDefaultSize","newSize","mediaAttributes","replace","omittedCaption","restMediaAttributes","additionalAttributes","linkDestination","window","wp","view","settings","defaultProps","link","href","onSelectURL","newURL","allowedTypes","onChange","onError","isExternal","mediaPreview","borderProps","shadowProps","classes","style","keys","length","blockProps","ref","lockUrlControls","lockUrlControlsMessage","select","blockBindingsSource","bindings","source","canUserEditValue","args","label","placeholder","content","withIllustration","instructions","objectFit","children","parentLayoutType","onSelect","accept","handleUpload","value","disableMediaButtons"],"sources":["@wordpress/block-library/src/image/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL, createBlobURL } from '@wordpress/blob';\nimport { createBlock, getBlockBindingsSource } from '@wordpress/blocks';\nimport { Placeholder } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tBlockIcon,\n\tuseBlockProps,\n\tMediaPlaceholder,\n\tstore as blockEditorStore,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { image as icon, plugins as pluginsIcon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useResizeObserver } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { useUploadMediaFromBlobURL } from '../utils/hooks';\nimport Image from './image';\nimport { isValidFileType } from './utils';\nimport { useMaxWidthObserver } from './use-max-width-observer';\n\n/**\n * Module constants\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_CUSTOM,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n\tALLOWED_MEDIA_TYPES,\n\tDEFAULT_MEDIA_SIZE_SLUG,\n} from './constants';\n\nexport const pickRelevantMediaFiles = ( image, size ) => {\n\tconst imageProps = Object.fromEntries(\n\t\tObject.entries( image ?? {} ).filter( ( [ key ] ) =>\n\t\t\t[ 'alt', 'id', 'link', 'caption' ].includes( key )\n\t\t)\n\t);\n\n\timageProps.url =\n\t\timage?.sizes?.[ size ]?.url ||\n\t\timage?.media_details?.sizes?.[ size ]?.source_url ||\n\t\timage.url;\n\treturn imageProps;\n};\n\n/**\n * Is the url for the image hosted externally. An externally hosted image has no\n * id and is not a blob url.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the url an externally hosted url?\n */\nexport const isExternalImage = ( id, url ) => url && ! id && ! isBlobURL( url );\n\n/**\n * Checks if WP generated the specified image size. Size generation is skipped\n * when the image is smaller than the said size.\n *\n * @param {Object} image\n * @param {string} size\n *\n * @return {boolean} Whether or not it has default image size.\n */\nfunction hasSize( image, size ) {\n\treturn (\n\t\t'url' in ( image?.sizes?.[ size ] ?? {} ) ||\n\t\t'source_url' in ( image?.media_details?.sizes?.[ size ] ?? {} )\n\t);\n}\n\nexport function ImageEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected: isSingleSelected,\n\tclassName,\n\tinsertBlocksAfter,\n\tonReplace,\n\tcontext,\n\tclientId,\n\t__unstableParentLayout: parentLayout,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\tcaption,\n\t\tid,\n\t\twidth,\n\t\theight,\n\t\tsizeSlug,\n\t\taspectRatio,\n\t\tscale,\n\t\talign,\n\t\tmetadata,\n\t} = attributes;\n\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\n\tconst containerRef = useRef();\n\t// Only observe the max width from the parent container when the parent layout is not flex nor grid.\n\t// This won't work for them because the container width changes with the image.\n\t// TODO: Find a way to observe the container width for flex and grid layouts.\n\tconst layoutType = parentLayout?.type || parentLayout?.default?.type;\n\tconst isMaxWidthContainerWidth =\n\t\t! layoutType || ( layoutType !== 'flex' && layoutType !== 'grid' );\n\tconst [ maxWidthObserver, maxContentWidth ] = useMaxWidthObserver();\n\n\tconst [ placeholderResizeListener, { width: placeholderWidth } ] =\n\t\tuseResizeObserver();\n\n\tconst isSmallContainer = placeholderWidth && placeholderWidth < 160;\n\n\tconst altRef = useRef();\n\tuseEffect( () => {\n\t\taltRef.current = alt;\n\t}, [ alt ] );\n\n\tconst captionRef = useRef();\n\tuseEffect( () => {\n\t\tcaptionRef.current = caption;\n\t}, [ caption ] );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent, replaceBlock } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tif ( [ 'wide', 'full' ].includes( align ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\taspectRatio: undefined,\n\t\t\t\tscale: undefined,\n\t\t\t} );\n\t\t}\n\t}, [ __unstableMarkNextChangeAsNotPersistent, align, setAttributes ] );\n\n\tconst {\n\t\tgetSettings,\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t\tcanInsertBlockType,\n\t} = useSelect( blockEditorStore );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetAttributes( {\n\t\t\tsrc: undefined,\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t\tblob: undefined,\n\t\t} );\n\t}\n\n\tfunction onSelectImagesList( images ) {\n\t\tconst win = containerRef.current?.ownerDocument.defaultView;\n\n\t\tif ( images.every( ( file ) => file instanceof win.File ) ) {\n\t\t\t/** @type {File[]} */\n\t\t\tconst files = images;\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\tif ( files.some( ( file ) => ! isValidFileType( file ) ) ) {\n\t\t\t\t// Copied from the same notice in the gallery block.\n\t\t\t\tcreateErrorNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'If uploading to a gallery all files need to be image formats'\n\t\t\t\t\t),\n\t\t\t\t\t{ id: 'gallery-upload-invalid-file', type: 'snackbar' }\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst imageBlocks = files\n\t\t\t\t.filter( ( file ) => isValidFileType( file ) )\n\t\t\t\t.map( ( file ) =>\n\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t} )\n\t\t\t\t);\n\n\t\t\tif ( getBlockName( rootClientId ) === 'core/gallery' ) {\n\t\t\t\treplaceBlock( clientId, imageBlocks );\n\t\t\t} else if ( canInsertBlockType( 'core/gallery', rootClientId ) ) {\n\t\t\t\tconst galleryBlock = createBlock(\n\t\t\t\t\t'core/gallery',\n\t\t\t\t\t{},\n\t\t\t\t\timageBlocks\n\t\t\t\t);\n\n\t\t\t\treplaceBlock( clientId, galleryBlock );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction onSelectImage( media ) {\n\t\tif ( Array.isArray( media ) ) {\n\t\t\tonSelectImagesList( media );\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! media || ! media.url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: undefined,\n\t\t\t\talt: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\ttitle: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t\tblob: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\n\t\t\treturn;\n\t\t}\n\n\t\tconst { imageDefaultSize } = getSettings();\n\n\t\t// Try to use the previous selected image size if its available\n\t\t// otherwise try the default image size or fallback to \"full\"\n\t\tlet newSize = DEFAULT_MEDIA_SIZE_SLUG;\n\t\tif ( sizeSlug && hasSize( media, sizeSlug ) ) {\n\t\t\tnewSize = sizeSlug;\n\t\t} else if ( hasSize( media, imageDefaultSize ) ) {\n\t\t\tnewSize = imageDefaultSize;\n\t\t}\n\n\t\tlet mediaAttributes = pickRelevantMediaFiles( media, newSize );\n\n\t\t// Normalize newline characters in caption to <br />\n\t\t// to preserve line breaks in both editor and frontend.\n\t\tif (\n\t\t\ttypeof mediaAttributes.caption === 'string' &&\n\t\t\tmediaAttributes.caption.includes( '\\n' )\n\t\t) {\n\t\t\tmediaAttributes.caption = mediaAttributes.caption.replace(\n\t\t\t\t/\\n/g,\n\t\t\t\t'<br>'\n\t\t\t);\n\t\t}\n\n\t\t// If a caption text was meanwhile written by the user,\n\t\t// make sure the text is not overwritten by empty captions.\n\t\tif ( captionRef.current && ! mediaAttributes.caption ) {\n\t\t\tconst { caption: omittedCaption, ...restMediaAttributes } =\n\t\t\t\tmediaAttributes;\n\t\t\tmediaAttributes = restMediaAttributes;\n\t\t}\n\n\t\tlet additionalAttributes;\n\t\t// Reset the dimension attributes if changing to a different image.\n\t\tif ( ! media.id || media.id !== id ) {\n\t\t\tadditionalAttributes = {\n\t\t\t\tsizeSlug: newSize,\n\t\t\t};\n\t\t}\n\n\t\t// Check if default link setting should be used.\n\t\tlet linkDestination = attributes.linkDestination;\n\t\tif ( ! linkDestination ) {\n\t\t\t// Use the WordPress option to determine the proper default.\n\t\t\t// The constants used in Gutenberg do not match WP options so a little more complicated than ideal.\n\t\t\t// TODO: fix this in a follow up PR, requires updating media-text and ui component.\n\t\t\tswitch (\n\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\tLINK_DESTINATION_NONE\n\t\t\t) {\n\t\t\t\tcase 'file':\n\t\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_MEDIA;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'post':\n\t\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_CUSTOM:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_CUSTOM;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_NONE:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_NONE;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// Check if the image is linked to it's media.\n\t\tlet href;\n\t\tswitch ( linkDestination ) {\n\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\thref = media.url;\n\t\t\t\tbreak;\n\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\thref = media.link;\n\t\t\t\tbreak;\n\t\t}\n\t\tmediaAttributes.href = href;\n\n\t\tsetAttributes( {\n\t\t\tblob: undefined,\n\t\t\t...mediaAttributes,\n\t\t\t...additionalAttributes,\n\t\t\tlinkDestination,\n\t\t} );\n\t\tsetTemporaryURL();\n\t}\n\n\tfunction onSelectURL( newURL ) {\n\t\tif ( newURL !== url ) {\n\t\t\tsetAttributes( {\n\t\t\t\tblob: undefined,\n\t\t\t\turl: newURL,\n\t\t\t\tid: undefined,\n\t\t\t\tsizeSlug: getSettings().imageDefaultSize,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\tonChange: onSelectImage,\n\t\tonError: onUploadError,\n\t} );\n\n\tconst isExternal = isExternalImage( id, url );\n\tconst src = isExternal ? url : undefined;\n\tconst mediaPreview = !! url && (\n\t\t<img\n\t\t\talt={ __( 'Edit image' ) }\n\t\t\ttitle={ __( 'Edit image' ) }\n\t\t\tclassName=\"edit-image-preview\"\n\t\t\tsrc={ url }\n\t\t/>\n\t);\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\n\tconst classes = clsx( className, {\n\t\t'is-transient': !! temporaryURL,\n\t\t'is-resized': !! width || !! height,\n\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t'has-custom-border':\n\t\t\t!! borderProps.className ||\n\t\t\t( borderProps.style &&\n\t\t\t\tObject.keys( borderProps.style ).length > 0 ),\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tref: containerRef,\n\t\tclassName: classes,\n\t} );\n\n\t// Much of this description is duplicated from MediaPlaceholder.\n\tconst { lockUrlControls = false, lockUrlControlsMessage } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isSingleSelected ) {\n\t\t\t\treturn {};\n\t\t\t}\n\n\t\t\tconst blockBindingsSource = getBlockBindingsSource(\n\t\t\t\tmetadata?.bindings?.url?.source\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tlockUrlControls:\n\t\t\t\t\t!! metadata?.bindings?.url &&\n\t\t\t\t\t! blockBindingsSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: metadata?.bindings?.url?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockUrlControlsMessage: blockBindingsSource?.label\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the bindings source. */\n\t\t\t\t\t\t\t__( 'Connected to %s' ),\n\t\t\t\t\t\t\tblockBindingsSource.label\n\t\t\t\t\t )\n\t\t\t\t\t: __( 'Connected to dynamic data' ),\n\t\t\t};\n\t\t},\n\t\t[ context, isSingleSelected, metadata?.bindings?.url ]\n\t);\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ clsx( 'block-editor-media-placeholder', {\n\t\t\t\t\t[ borderProps.className ]:\n\t\t\t\t\t\t!! borderProps.className && ! isSingleSelected,\n\t\t\t\t} ) }\n\t\t\t\ticon={\n\t\t\t\t\t! isSmallContainer &&\n\t\t\t\t\t( lockUrlControls ? pluginsIcon : icon )\n\t\t\t\t}\n\t\t\t\twithIllustration={ ! isSingleSelected || isSmallContainer }\n\t\t\t\tlabel={ ! isSmallContainer && __( 'Image' ) }\n\t\t\t\tinstructions={\n\t\t\t\t\t! lockUrlControls &&\n\t\t\t\t\t! isSmallContainer &&\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Drag and drop an image, upload, or choose from your library.'\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tstyle={ {\n\t\t\t\t\taspectRatio:\n\t\t\t\t\t\t! ( width && height ) && aspectRatio\n\t\t\t\t\t\t\t? aspectRatio\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\twidth: height && aspectRatio ? '100%' : width,\n\t\t\t\t\theight: width && aspectRatio ? '100%' : height,\n\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t...shadowProps.style,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ lockUrlControls &&\n\t\t\t\t\t! isSmallContainer &&\n\t\t\t\t\tlockUrlControlsMessage }\n\n\t\t\t\t{ ! lockUrlControls && ! isSmallContainer && content }\n\t\t\t\t{ placeholderResizeListener }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t<Image\n\t\t\t\t\ttemporaryURL={ temporaryURL }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSingleSelected={ isSingleSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonSelectImage={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonUploadError={ onUploadError }\n\t\t\t\t\tcontext={ context }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t\tparentLayoutType={ layoutType }\n\t\t\t\t\tmaxContentWidth={ maxContentWidth }\n\t\t\t\t/>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\thandleUpload={ ( files ) => files.length === 1 }\n\t\t\t\t\tvalue={ { id, src } }\n\t\t\t\t\tmediaPreview={ mediaPreview }\n\t\t\t\t\tdisableMediaButtons={ temporaryURL || url }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t\t{\n\t\t\t\t// The listener cannot be placed as the first element as it will break the in-between inserter.\n\t\t\t\t// See https://github.com/WordPress/gutenberg/blob/71134165868298fc15e22896d0c28b41b3755ff7/packages/block-editor/src/components/block-list/use-in-between-inserter.js#L120\n\t\t\t\tisSingleSelected && isMaxWidthContainerWidth && maxWidthObserver\n\t\t\t}\n\t\t</>\n\t);\n}\n\nexport default ImageEdit;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","isBlobURL","createBlobURL","createBlock","getBlockBindingsSource","Placeholder","useDispatch","useSelect","BlockIcon","useBlockProps","MediaPlaceholder","store","blockEditorStore","__experimentalUseBorderProps","useBorderProps","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","useBlockEditingMode","useEffect","useRef","useState","__","sprintf","image","icon","plugins","pluginsIcon","noticesStore","useResizeObserver","useUploadMediaFromBlobURL","Image","isValidFileType","useMaxWidthObserver","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_CUSTOM","LINK_DESTINATION_MEDIA","LINK_DESTINATION_NONE","ALLOWED_MEDIA_TYPES","DEFAULT_MEDIA_SIZE_SLUG","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","pickRelevantMediaFiles","size","imageProps","Object","fromEntries","entries","filter","key","includes","url","sizes","media_details","source_url","isExternalImage","id","hasSize","_image$sizes$size","_image$media_details$","ImageEdit","attributes","setAttributes","isSelected","isSingleSelected","className","insertBlocksAfter","onReplace","context","clientId","__unstableParentLayout","parentLayout","caption","width","height","sizeSlug","aspectRatio","scale","align","metadata","temporaryURL","setTemporaryURL","blob","containerRef","layoutType","type","default","isMaxWidthContainerWidth","maxWidthObserver","maxContentWidth","placeholderResizeListener","placeholderWidth","isSmallContainer","captionRef","current","__unstableMarkNextChangeAsNotPersistent","replaceBlock","undefined","getSettings","getBlockRootClientId","getBlockName","canInsertBlockType","blockEditingMode","createErrorNotice","onUploadError","message","src","onSelectImagesList","images","win","ownerDocument","defaultView","every","file","File","files","rootClientId","some","imageBlocks","map","galleryBlock","onSelectImage","media","Array","isArray","alt","title","imageDefaultSize","newSize","mediaAttributes","replace","omittedCaption","restMediaAttributes","additionalAttributes","linkDestination","window","wp","view","settings","defaultProps","link","href","onSelectURL","newURL","allowedTypes","onChange","onError","isExternal","mediaPreview","borderProps","shadowProps","classes","style","keys","length","blockProps","ref","lockUrlControls","lockUrlControlsMessage","select","blockBindingsSource","bindings","source","canUserEditValue","args","label","placeholder","content","withIllustration","instructions","objectFit","children","parentLayoutType","onSelect","accept","handleUpload","value","disableMediaButtons"],"sources":["@wordpress/block-library/src/image/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL, createBlobURL } from '@wordpress/blob';\nimport { createBlock, getBlockBindingsSource } from '@wordpress/blocks';\nimport { Placeholder } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tBlockIcon,\n\tuseBlockProps,\n\tMediaPlaceholder,\n\tstore as blockEditorStore,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { image as icon, plugins as pluginsIcon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useResizeObserver } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { useUploadMediaFromBlobURL } from '../utils/hooks';\nimport Image from './image';\nimport { isValidFileType } from './utils';\nimport { useMaxWidthObserver } from './use-max-width-observer';\n\n/**\n * Module constants\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_CUSTOM,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n\tALLOWED_MEDIA_TYPES,\n\tDEFAULT_MEDIA_SIZE_SLUG,\n} from './constants';\n\nexport const pickRelevantMediaFiles = ( image, size ) => {\n\tconst imageProps = Object.fromEntries(\n\t\tObject.entries( image ?? {} ).filter( ( [ key ] ) =>\n\t\t\t[ 'alt', 'id', 'link', 'caption' ].includes( key )\n\t\t)\n\t);\n\n\timageProps.url =\n\t\timage?.sizes?.[ size ]?.url ||\n\t\timage?.media_details?.sizes?.[ size ]?.source_url ||\n\t\timage.url;\n\treturn imageProps;\n};\n\n/**\n * Is the url for the image hosted externally. An externally hosted image has no\n * id and is not a blob url.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the url an externally hosted url?\n */\nexport const isExternalImage = ( id, url ) => url && ! id && ! isBlobURL( url );\n\n/**\n * Checks if WP generated the specified image size. Size generation is skipped\n * when the image is smaller than the said size.\n *\n * @param {Object} image\n * @param {string} size\n *\n * @return {boolean} Whether or not it has default image size.\n */\nfunction hasSize( image, size ) {\n\treturn (\n\t\t'url' in ( image?.sizes?.[ size ] ?? {} ) ||\n\t\t'source_url' in ( image?.media_details?.sizes?.[ size ] ?? {} )\n\t);\n}\n\nexport function ImageEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected: isSingleSelected,\n\tclassName,\n\tinsertBlocksAfter,\n\tonReplace,\n\tcontext,\n\tclientId,\n\t__unstableParentLayout: parentLayout,\n} ) {\n\tconst {\n\t\turl = '',\n\t\tcaption,\n\t\tid,\n\t\twidth,\n\t\theight,\n\t\tsizeSlug,\n\t\taspectRatio,\n\t\tscale,\n\t\talign,\n\t\tmetadata,\n\t} = attributes;\n\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\n\tconst containerRef = useRef();\n\t// Only observe the max width from the parent container when the parent layout is not flex nor grid.\n\t// This won't work for them because the container width changes with the image.\n\t// TODO: Find a way to observe the container width for flex and grid layouts.\n\tconst layoutType = parentLayout?.type || parentLayout?.default?.type;\n\tconst isMaxWidthContainerWidth =\n\t\t! layoutType || ( layoutType !== 'flex' && layoutType !== 'grid' );\n\tconst [ maxWidthObserver, maxContentWidth ] = useMaxWidthObserver();\n\n\tconst [ placeholderResizeListener, { width: placeholderWidth } ] =\n\t\tuseResizeObserver();\n\n\tconst isSmallContainer = placeholderWidth && placeholderWidth < 160;\n\n\tconst captionRef = useRef();\n\tuseEffect( () => {\n\t\tcaptionRef.current = caption;\n\t}, [ caption ] );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent, replaceBlock } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tif ( [ 'wide', 'full' ].includes( align ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\taspectRatio: undefined,\n\t\t\t\tscale: undefined,\n\t\t\t} );\n\t\t}\n\t}, [ __unstableMarkNextChangeAsNotPersistent, align, setAttributes ] );\n\n\tconst {\n\t\tgetSettings,\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t\tcanInsertBlockType,\n\t} = useSelect( blockEditorStore );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetAttributes( {\n\t\t\tsrc: undefined,\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t\tblob: undefined,\n\t\t} );\n\t}\n\n\tfunction onSelectImagesList( images ) {\n\t\tconst win = containerRef.current?.ownerDocument.defaultView;\n\n\t\tif ( images.every( ( file ) => file instanceof win.File ) ) {\n\t\t\t/** @type {File[]} */\n\t\t\tconst files = images;\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\tif ( files.some( ( file ) => ! isValidFileType( file ) ) ) {\n\t\t\t\t// Copied from the same notice in the gallery block.\n\t\t\t\tcreateErrorNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'If uploading to a gallery all files need to be image formats'\n\t\t\t\t\t),\n\t\t\t\t\t{ id: 'gallery-upload-invalid-file', type: 'snackbar' }\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst imageBlocks = files\n\t\t\t\t.filter( ( file ) => isValidFileType( file ) )\n\t\t\t\t.map( ( file ) =>\n\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t} )\n\t\t\t\t);\n\n\t\t\tif ( getBlockName( rootClientId ) === 'core/gallery' ) {\n\t\t\t\treplaceBlock( clientId, imageBlocks );\n\t\t\t} else if ( canInsertBlockType( 'core/gallery', rootClientId ) ) {\n\t\t\t\tconst galleryBlock = createBlock(\n\t\t\t\t\t'core/gallery',\n\t\t\t\t\t{},\n\t\t\t\t\timageBlocks\n\t\t\t\t);\n\n\t\t\t\treplaceBlock( clientId, galleryBlock );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction onSelectImage( media ) {\n\t\tif ( Array.isArray( media ) ) {\n\t\t\tonSelectImagesList( media );\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! media || ! media.url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: undefined,\n\t\t\t\talt: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\ttitle: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t\tblob: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\n\t\t\treturn;\n\t\t}\n\n\t\tconst { imageDefaultSize } = getSettings();\n\n\t\t// Try to use the previous selected image size if its available\n\t\t// otherwise try the default image size or fallback to \"full\"\n\t\tlet newSize = DEFAULT_MEDIA_SIZE_SLUG;\n\t\tif ( sizeSlug && hasSize( media, sizeSlug ) ) {\n\t\t\tnewSize = sizeSlug;\n\t\t} else if ( hasSize( media, imageDefaultSize ) ) {\n\t\t\tnewSize = imageDefaultSize;\n\t\t}\n\n\t\tlet mediaAttributes = pickRelevantMediaFiles( media, newSize );\n\n\t\t// Normalize newline characters in caption to <br />\n\t\t// to preserve line breaks in both editor and frontend.\n\t\tif (\n\t\t\ttypeof mediaAttributes.caption === 'string' &&\n\t\t\tmediaAttributes.caption.includes( '\\n' )\n\t\t) {\n\t\t\tmediaAttributes.caption = mediaAttributes.caption.replace(\n\t\t\t\t/\\n/g,\n\t\t\t\t'<br>'\n\t\t\t);\n\t\t}\n\n\t\t// If a caption text was meanwhile written by the user,\n\t\t// make sure the text is not overwritten by empty captions.\n\t\tif ( captionRef.current && ! mediaAttributes.caption ) {\n\t\t\tconst { caption: omittedCaption, ...restMediaAttributes } =\n\t\t\t\tmediaAttributes;\n\t\t\tmediaAttributes = restMediaAttributes;\n\t\t}\n\n\t\tlet additionalAttributes;\n\t\t// Reset the dimension attributes if changing to a different image.\n\t\tif ( ! media.id || media.id !== id ) {\n\t\t\tadditionalAttributes = {\n\t\t\t\tsizeSlug: newSize,\n\t\t\t};\n\t\t}\n\n\t\t// Check if default link setting should be used.\n\t\tlet linkDestination = attributes.linkDestination;\n\t\tif ( ! linkDestination ) {\n\t\t\t// Use the WordPress option to determine the proper default.\n\t\t\t// The constants used in Gutenberg do not match WP options so a little more complicated than ideal.\n\t\t\t// TODO: fix this in a follow up PR, requires updating media-text and ui component.\n\t\t\tswitch (\n\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\tLINK_DESTINATION_NONE\n\t\t\t) {\n\t\t\t\tcase 'file':\n\t\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_MEDIA;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'post':\n\t\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_CUSTOM:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_CUSTOM;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_NONE:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_NONE;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// Check if the image is linked to it's media.\n\t\tlet href;\n\t\tswitch ( linkDestination ) {\n\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\thref = media.url;\n\t\t\t\tbreak;\n\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\thref = media.link;\n\t\t\t\tbreak;\n\t\t}\n\t\tmediaAttributes.href = href;\n\n\t\tsetAttributes( {\n\t\t\tblob: undefined,\n\t\t\t...mediaAttributes,\n\t\t\t...additionalAttributes,\n\t\t\tlinkDestination,\n\t\t} );\n\t\tsetTemporaryURL();\n\t}\n\n\tfunction onSelectURL( newURL ) {\n\t\tif ( newURL !== url ) {\n\t\t\tsetAttributes( {\n\t\t\t\tblob: undefined,\n\t\t\t\turl: newURL,\n\t\t\t\tid: undefined,\n\t\t\t\tsizeSlug: getSettings().imageDefaultSize,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\tonChange: onSelectImage,\n\t\tonError: onUploadError,\n\t} );\n\n\tconst isExternal = isExternalImage( id, url );\n\tconst src = isExternal ? url : undefined;\n\tconst mediaPreview = !! url && (\n\t\t<img\n\t\t\talt={ __( 'Edit image' ) }\n\t\t\ttitle={ __( 'Edit image' ) }\n\t\t\tclassName=\"edit-image-preview\"\n\t\t\tsrc={ url }\n\t\t/>\n\t);\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\n\tconst classes = clsx( className, {\n\t\t'is-transient': !! temporaryURL,\n\t\t'is-resized': !! width || !! height,\n\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t'has-custom-border':\n\t\t\t!! borderProps.className ||\n\t\t\t( borderProps.style &&\n\t\t\t\tObject.keys( borderProps.style ).length > 0 ),\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tref: containerRef,\n\t\tclassName: classes,\n\t} );\n\n\t// Much of this description is duplicated from MediaPlaceholder.\n\tconst { lockUrlControls = false, lockUrlControlsMessage } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isSingleSelected ) {\n\t\t\t\treturn {};\n\t\t\t}\n\n\t\t\tconst blockBindingsSource = getBlockBindingsSource(\n\t\t\t\tmetadata?.bindings?.url?.source\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tlockUrlControls:\n\t\t\t\t\t!! metadata?.bindings?.url &&\n\t\t\t\t\t! blockBindingsSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: metadata?.bindings?.url?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockUrlControlsMessage: blockBindingsSource?.label\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the bindings source. */\n\t\t\t\t\t\t\t__( 'Connected to %s' ),\n\t\t\t\t\t\t\tblockBindingsSource.label\n\t\t\t\t\t )\n\t\t\t\t\t: __( 'Connected to dynamic data' ),\n\t\t\t};\n\t\t},\n\t\t[ context, isSingleSelected, metadata?.bindings?.url ]\n\t);\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ clsx( 'block-editor-media-placeholder', {\n\t\t\t\t\t[ borderProps.className ]:\n\t\t\t\t\t\t!! borderProps.className && ! isSingleSelected,\n\t\t\t\t} ) }\n\t\t\t\ticon={\n\t\t\t\t\t! isSmallContainer &&\n\t\t\t\t\t( lockUrlControls ? pluginsIcon : icon )\n\t\t\t\t}\n\t\t\t\twithIllustration={ ! isSingleSelected || isSmallContainer }\n\t\t\t\tlabel={ ! isSmallContainer && __( 'Image' ) }\n\t\t\t\tinstructions={\n\t\t\t\t\t! lockUrlControls &&\n\t\t\t\t\t! isSmallContainer &&\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Drag and drop an image, upload, or choose from your library.'\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tstyle={ {\n\t\t\t\t\taspectRatio:\n\t\t\t\t\t\t! ( width && height ) && aspectRatio\n\t\t\t\t\t\t\t? aspectRatio\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\twidth: height && aspectRatio ? '100%' : width,\n\t\t\t\t\theight: width && aspectRatio ? '100%' : height,\n\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t...shadowProps.style,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ lockUrlControls &&\n\t\t\t\t\t! isSmallContainer &&\n\t\t\t\t\tlockUrlControlsMessage }\n\n\t\t\t\t{ ! lockUrlControls && ! isSmallContainer && content }\n\t\t\t\t{ placeholderResizeListener }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t<Image\n\t\t\t\t\ttemporaryURL={ temporaryURL }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSingleSelected={ isSingleSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonSelectImage={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonUploadError={ onUploadError }\n\t\t\t\t\tcontext={ context }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t\tparentLayoutType={ layoutType }\n\t\t\t\t\tmaxContentWidth={ maxContentWidth }\n\t\t\t\t/>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\thandleUpload={ ( files ) => files.length === 1 }\n\t\t\t\t\tvalue={ { id, src } }\n\t\t\t\t\tmediaPreview={ mediaPreview }\n\t\t\t\t\tdisableMediaButtons={ temporaryURL || url }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t\t{\n\t\t\t\t// The listener cannot be placed as the first element as it will break the in-between inserter.\n\t\t\t\t// See https://github.com/WordPress/gutenberg/blob/71134165868298fc15e22896d0c28b41b3755ff7/packages/block-editor/src/components/block-list/use-in-between-inserter.js#L120\n\t\t\t\tisSingleSelected && isMaxWidthContainerWidth && maxWidthObserver\n\t\t\t}\n\t\t</>\n\t);\n}\n\nexport default ImageEdit;\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/block-library",
|
|
3
|
-
"version": "9.29.0",
|
|
3
|
+
"version": "9.29.1-next.f34ab90e9.0",
|
|
4
4
|
"description": "Block library for the WordPress editor.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -42,39 +42,39 @@
|
|
|
42
42
|
],
|
|
43
43
|
"dependencies": {
|
|
44
44
|
"@babel/runtime": "7.25.7",
|
|
45
|
-
"@wordpress/a11y": "^4.29.0",
|
|
46
|
-
"@wordpress/api-fetch": "^7.29.0",
|
|
47
|
-
"@wordpress/autop": "^4.29.0",
|
|
48
|
-
"@wordpress/blob": "^4.29.0",
|
|
49
|
-
"@wordpress/block-editor": "^15.2.0",
|
|
50
|
-
"@wordpress/blocks": "^15.2.0",
|
|
51
|
-
"@wordpress/components": "^30.2.0",
|
|
52
|
-
"@wordpress/compose": "^7.29.0",
|
|
53
|
-
"@wordpress/core-data": "^7.29.0",
|
|
54
|
-
"@wordpress/data": "^10.29.0",
|
|
55
|
-
"@wordpress/date": "^5.29.0",
|
|
56
|
-
"@wordpress/deprecated": "^4.29.0",
|
|
57
|
-
"@wordpress/dom": "^4.29.0",
|
|
58
|
-
"@wordpress/element": "^6.29.0",
|
|
59
|
-
"@wordpress/escape-html": "^3.29.0",
|
|
60
|
-
"@wordpress/hooks": "^4.29.0",
|
|
61
|
-
"@wordpress/html-entities": "^4.29.0",
|
|
62
|
-
"@wordpress/i18n": "^6.2.0",
|
|
63
|
-
"@wordpress/icons": "^10.29.0",
|
|
64
|
-
"@wordpress/interactivity": "^6.29.0",
|
|
65
|
-
"@wordpress/interactivity-router": "^2.29.0",
|
|
66
|
-
"@wordpress/keyboard-shortcuts": "^5.29.0",
|
|
67
|
-
"@wordpress/keycodes": "^4.29.0",
|
|
68
|
-
"@wordpress/notices": "^5.29.0",
|
|
69
|
-
"@wordpress/patterns": "^2.29.0",
|
|
70
|
-
"@wordpress/primitives": "^4.29.0",
|
|
71
|
-
"@wordpress/private-apis": "^1.29.0",
|
|
72
|
-
"@wordpress/reusable-blocks": "^5.29.0",
|
|
73
|
-
"@wordpress/rich-text": "^7.29.0",
|
|
74
|
-
"@wordpress/server-side-render": "^6.5.0",
|
|
75
|
-
"@wordpress/url": "^4.29.0",
|
|
76
|
-
"@wordpress/viewport": "^6.29.0",
|
|
77
|
-
"@wordpress/wordcount": "^4.29.0",
|
|
45
|
+
"@wordpress/a11y": "^4.29.1-next.f34ab90e9.0",
|
|
46
|
+
"@wordpress/api-fetch": "^7.29.1-next.f34ab90e9.0",
|
|
47
|
+
"@wordpress/autop": "^4.29.1-next.f34ab90e9.0",
|
|
48
|
+
"@wordpress/blob": "^4.29.1-next.f34ab90e9.0",
|
|
49
|
+
"@wordpress/block-editor": "^15.2.1-next.f34ab90e9.0",
|
|
50
|
+
"@wordpress/blocks": "^15.2.1-next.f34ab90e9.0",
|
|
51
|
+
"@wordpress/components": "^30.2.1-next.f34ab90e9.0",
|
|
52
|
+
"@wordpress/compose": "^7.29.1-next.f34ab90e9.0",
|
|
53
|
+
"@wordpress/core-data": "^7.29.1-next.f34ab90e9.0",
|
|
54
|
+
"@wordpress/data": "^10.29.1-next.f34ab90e9.0",
|
|
55
|
+
"@wordpress/date": "^5.29.1-next.f34ab90e9.0",
|
|
56
|
+
"@wordpress/deprecated": "^4.29.1-next.f34ab90e9.0",
|
|
57
|
+
"@wordpress/dom": "^4.29.1-next.f34ab90e9.0",
|
|
58
|
+
"@wordpress/element": "^6.29.1-next.f34ab90e9.0",
|
|
59
|
+
"@wordpress/escape-html": "^3.29.1-next.f34ab90e9.0",
|
|
60
|
+
"@wordpress/hooks": "^4.29.1-next.f34ab90e9.0",
|
|
61
|
+
"@wordpress/html-entities": "^4.29.1-next.f34ab90e9.0",
|
|
62
|
+
"@wordpress/i18n": "^6.2.1-next.f34ab90e9.0",
|
|
63
|
+
"@wordpress/icons": "^10.29.1-next.f34ab90e9.0",
|
|
64
|
+
"@wordpress/interactivity": "^6.29.1-next.f34ab90e9.0",
|
|
65
|
+
"@wordpress/interactivity-router": "^2.29.1-next.f34ab90e9.0",
|
|
66
|
+
"@wordpress/keyboard-shortcuts": "^5.29.1-next.f34ab90e9.0",
|
|
67
|
+
"@wordpress/keycodes": "^4.29.1-next.f34ab90e9.0",
|
|
68
|
+
"@wordpress/notices": "^5.29.1-next.f34ab90e9.0",
|
|
69
|
+
"@wordpress/patterns": "^2.29.1-next.f34ab90e9.0",
|
|
70
|
+
"@wordpress/primitives": "^4.29.1-next.f34ab90e9.0",
|
|
71
|
+
"@wordpress/private-apis": "^1.29.1-next.f34ab90e9.0",
|
|
72
|
+
"@wordpress/reusable-blocks": "^5.29.1-next.f34ab90e9.0",
|
|
73
|
+
"@wordpress/rich-text": "^7.29.1-next.f34ab90e9.0",
|
|
74
|
+
"@wordpress/server-side-render": "^6.5.1-next.f34ab90e9.0",
|
|
75
|
+
"@wordpress/url": "^4.29.1-next.f34ab90e9.0",
|
|
76
|
+
"@wordpress/viewport": "^6.29.1-next.f34ab90e9.0",
|
|
77
|
+
"@wordpress/wordcount": "^4.29.1-next.f34ab90e9.0",
|
|
78
78
|
"change-case": "^4.1.2",
|
|
79
79
|
"clsx": "^2.1.1",
|
|
80
80
|
"colord": "^2.7.0",
|
|
@@ -92,5 +92,5 @@
|
|
|
92
92
|
"publishConfig": {
|
|
93
93
|
"access": "public"
|
|
94
94
|
},
|
|
95
|
-
"gitHead": "
|
|
95
|
+
"gitHead": "91f58004986ec6faf118825f925ac7873d171986"
|
|
96
96
|
}
|
package/src/form/block.json
CHANGED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import {
|
|
5
|
+
InnerBlocks,
|
|
6
|
+
useBlockProps,
|
|
7
|
+
getTypographyClassesAndStyles,
|
|
8
|
+
__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,
|
|
9
|
+
__experimentalGetSpacingClassesAndStyles as getSpacingClassesAndStyles,
|
|
10
|
+
} from '@wordpress/block-editor';
|
|
11
|
+
|
|
12
|
+
const v1 = {
|
|
13
|
+
// The block supports here are deliberately empty despite this
|
|
14
|
+
// deprecated version of the block having adopted block supports.
|
|
15
|
+
// The attributes added by these supports have been manually
|
|
16
|
+
// added to this deprecated version's attributes definition so
|
|
17
|
+
// that the data isn't lost on migration. All this is so that the
|
|
18
|
+
// automatic application of block support classes doesn't occur
|
|
19
|
+
// as this version of the block had a bug that overrode those
|
|
20
|
+
// classes. If those block support classes are applied during the
|
|
21
|
+
// deprecation process, this deprecation doesn't match and won't
|
|
22
|
+
// run.
|
|
23
|
+
// @see https://github.com/WordPress/gutenberg/pull/55755
|
|
24
|
+
supports: {},
|
|
25
|
+
attributes: {
|
|
26
|
+
submissionMethod: {
|
|
27
|
+
type: 'string',
|
|
28
|
+
default: 'email',
|
|
29
|
+
},
|
|
30
|
+
method: {
|
|
31
|
+
type: 'string',
|
|
32
|
+
default: 'post',
|
|
33
|
+
},
|
|
34
|
+
action: {
|
|
35
|
+
type: 'string',
|
|
36
|
+
},
|
|
37
|
+
email: {
|
|
38
|
+
type: 'string',
|
|
39
|
+
},
|
|
40
|
+
// The following attributes have been added to match the block
|
|
41
|
+
// supports at the time of the deprecation. See above for details.
|
|
42
|
+
anchor: {
|
|
43
|
+
type: 'string',
|
|
44
|
+
source: 'attribute',
|
|
45
|
+
attribute: 'id',
|
|
46
|
+
selector: '*',
|
|
47
|
+
},
|
|
48
|
+
backgroundColor: {
|
|
49
|
+
type: 'string',
|
|
50
|
+
},
|
|
51
|
+
textColor: {
|
|
52
|
+
type: 'string',
|
|
53
|
+
},
|
|
54
|
+
gradient: {
|
|
55
|
+
type: 'string',
|
|
56
|
+
},
|
|
57
|
+
style: {
|
|
58
|
+
type: 'object',
|
|
59
|
+
},
|
|
60
|
+
fontFamily: {
|
|
61
|
+
type: 'string',
|
|
62
|
+
},
|
|
63
|
+
fontSize: {
|
|
64
|
+
type: 'string',
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
save( { attributes } ) {
|
|
68
|
+
const { submissionMethod } = attributes;
|
|
69
|
+
const colorProps = getColorClassesAndStyles( attributes );
|
|
70
|
+
const typographyProps = getTypographyClassesAndStyles( attributes );
|
|
71
|
+
const spacingProps = getSpacingClassesAndStyles( attributes );
|
|
72
|
+
const blockProps = useBlockProps.save( {
|
|
73
|
+
// In this deprecated version, the block support is deliberately empty.
|
|
74
|
+
// As a result, the useBlockProps.save() does not output style or id attributes,
|
|
75
|
+
// so we apply them explicitly here.
|
|
76
|
+
style: {
|
|
77
|
+
...colorProps.style,
|
|
78
|
+
...typographyProps.style,
|
|
79
|
+
...spacingProps.style,
|
|
80
|
+
},
|
|
81
|
+
id: attributes.anchor,
|
|
82
|
+
} );
|
|
83
|
+
|
|
84
|
+
return (
|
|
85
|
+
<form
|
|
86
|
+
{ ...blockProps }
|
|
87
|
+
className="wp-block-form"
|
|
88
|
+
encType={ submissionMethod === 'email' ? 'text/plain' : null }
|
|
89
|
+
>
|
|
90
|
+
<InnerBlocks.Content />
|
|
91
|
+
</form>
|
|
92
|
+
);
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
export default [ v1 ];
|
package/src/form/index.js
CHANGED
|
@@ -6,6 +6,7 @@ import edit from './edit';
|
|
|
6
6
|
import metadata from './block.json';
|
|
7
7
|
import save from './save';
|
|
8
8
|
import variations from './variations';
|
|
9
|
+
import deprecated from './deprecated';
|
|
9
10
|
|
|
10
11
|
/**
|
|
11
12
|
* WordPress dependencies
|
|
@@ -19,6 +20,7 @@ export { metadata, name };
|
|
|
19
20
|
export const settings = {
|
|
20
21
|
edit,
|
|
21
22
|
save,
|
|
23
|
+
deprecated,
|
|
22
24
|
variations,
|
|
23
25
|
example: {},
|
|
24
26
|
};
|
package/src/form/save.js
CHANGED
package/src/gallery/edit.js
CHANGED
|
@@ -392,7 +392,9 @@ export default function GalleryEdit( props ) {
|
|
|
392
392
|
lightboxSetting
|
|
393
393
|
);
|
|
394
394
|
} );
|
|
395
|
-
updateBlockAttributes( blocks, changedAttributes,
|
|
395
|
+
updateBlockAttributes( blocks, changedAttributes, {
|
|
396
|
+
uniqueByBlock: true,
|
|
397
|
+
} );
|
|
396
398
|
const linkToText = [ ...linkOptions ].find(
|
|
397
399
|
( linkType ) => linkType.value === value
|
|
398
400
|
);
|
|
@@ -434,7 +436,9 @@ export default function GalleryEdit( props ) {
|
|
|
434
436
|
block.attributes
|
|
435
437
|
);
|
|
436
438
|
} );
|
|
437
|
-
updateBlockAttributes( blocks, changedAttributes,
|
|
439
|
+
updateBlockAttributes( blocks, changedAttributes, {
|
|
440
|
+
uniqueByBlock: true,
|
|
441
|
+
} );
|
|
438
442
|
const noticeText = openInNewTab
|
|
439
443
|
? __( 'All gallery images updated to open in new tab' )
|
|
440
444
|
: __( 'All gallery images updated to not open in new tab' );
|
|
@@ -458,7 +462,9 @@ export default function GalleryEdit( props ) {
|
|
|
458
462
|
newSizeSlug
|
|
459
463
|
);
|
|
460
464
|
} );
|
|
461
|
-
updateBlockAttributes( blocks, changedAttributes,
|
|
465
|
+
updateBlockAttributes( blocks, changedAttributes, {
|
|
466
|
+
uniqueByBlock: true,
|
|
467
|
+
} );
|
|
462
468
|
const imageSize = imageSizeOptions.find(
|
|
463
469
|
( size ) => size.value === newSizeSlug
|
|
464
470
|
);
|
package/src/image/edit.js
CHANGED
|
@@ -99,7 +99,6 @@ export function ImageEdit( {
|
|
|
99
99
|
} ) {
|
|
100
100
|
const {
|
|
101
101
|
url = '',
|
|
102
|
-
alt,
|
|
103
102
|
caption,
|
|
104
103
|
id,
|
|
105
104
|
width,
|
|
@@ -127,11 +126,6 @@ export function ImageEdit( {
|
|
|
127
126
|
|
|
128
127
|
const isSmallContainer = placeholderWidth && placeholderWidth < 160;
|
|
129
128
|
|
|
130
|
-
const altRef = useRef();
|
|
131
|
-
useEffect( () => {
|
|
132
|
-
altRef.current = alt;
|
|
133
|
-
}, [ alt ] );
|
|
134
|
-
|
|
135
129
|
const captionRef = useRef();
|
|
136
130
|
useEffect( () => {
|
|
137
131
|
captionRef.current = caption;
|