@wordpress/block-library 6.0.18 → 6.0.19

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.
@@ -117,12 +117,8 @@ function runV2Migration(attributes) {
117
117
  const imageBlocks = attributes.images.map(image => {
118
118
  return getImageBlock(image, attributes.sizeSlug, linkTo);
119
119
  });
120
- return [{
121
- caption: attributes.caption,
122
- columns: attributes.columns,
123
- imageCrop: attributes.imageCrop,
120
+ return [{ ...(0, _lodash.omit)(attributes, ['images', 'ids']),
124
121
  linkTo,
125
- sizeSlug: attributes.sizeSlug,
126
122
  allowResize: false
127
123
  }, imageBlocks];
128
124
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/gallery/deprecated.js"],"names":["DEPRECATED_LINK_DESTINATION_MEDIA","DEPRECATED_LINK_DESTINATION_ATTACHMENT","defaultColumnsNumberV1","attributes","Math","min","images","length","getHrefAndDestination","image","destination","href","source_url","url","linkDestination","LINK_DESTINATION_MEDIA","link","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_NONE","undefined","runV2Migration","linkTo","imageBlocks","map","getImageBlock","sizeSlug","caption","columns","imageCrop","allowResize","id","parseInt","alt","v6","type","default","source","selector","query","attribute","fullUrl","ids","items","minimum","maximum","supports","anchor","align","save","className","useBlockProps","img","RichText","isEmpty","migrate","v5","isEligible","v4","some","parsedId","Number","isInteger","v3","v2","index","v1","alignnone"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { map, some } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { RichText, useBlockProps } from '@wordpress/block-editor';\n\nimport { createBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n} from './constants';\nimport { isGalleryV2Enabled } from './shared';\n\nconst DEPRECATED_LINK_DESTINATION_MEDIA = 'file';\nconst DEPRECATED_LINK_DESTINATION_ATTACHMENT = 'post';\n\n/**\n * Original function to determine default number of columns from a block's\n * attributes.\n *\n * Used in deprecations: v1-6, for versions of the gallery block that didn't use inner blocks.\n *\n * @param {Object} attributes Block attributes.\n * @return {number} Default number of columns for the gallery.\n */\nexport function defaultColumnsNumberV1( attributes ) {\n\treturn Math.min( 3, attributes?.images?.length );\n}\n\n/**\n * Original function to determine new href and linkDestination values for an image block from the\n * supplied Gallery link destination.\n *\n * Used in deprecations: v1-6.\n *\n * @param {Object} image Gallery image.\n * @param {string} destination Gallery's selected link destination.\n * @return {Object} New attributes to assign to image block.\n */\nexport function getHrefAndDestination( image, destination ) {\n\t// Need to determine the URL that the selected destination maps to.\n\t// Gutenberg and WordPress use different constants so the new link\n\t// destination also needs to be tweaked.\n\tswitch ( destination ) {\n\t\tcase DEPRECATED_LINK_DESTINATION_MEDIA:\n\t\t\treturn {\n\t\t\t\thref: image?.source_url || image?.url, // eslint-disable-line camelcase\n\t\t\t\tlinkDestination: LINK_DESTINATION_MEDIA,\n\t\t\t};\n\t\tcase DEPRECATED_LINK_DESTINATION_ATTACHMENT:\n\t\t\treturn {\n\t\t\t\thref: image?.link,\n\t\t\t\tlinkDestination: LINK_DESTINATION_ATTACHMENT,\n\t\t\t};\n\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\treturn {\n\t\t\t\thref: image?.source_url || image?.url, // eslint-disable-line camelcase\n\t\t\t\tlinkDestination: LINK_DESTINATION_MEDIA,\n\t\t\t};\n\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\treturn {\n\t\t\t\thref: image?.link,\n\t\t\t\tlinkDestination: LINK_DESTINATION_ATTACHMENT,\n\t\t\t};\n\t\tcase LINK_DESTINATION_NONE:\n\t\t\treturn {\n\t\t\t\thref: undefined,\n\t\t\t\tlinkDestination: LINK_DESTINATION_NONE,\n\t\t\t};\n\t}\n\n\treturn {};\n}\n\nfunction runV2Migration( attributes ) {\n\tlet linkTo = attributes.linkTo ? attributes.linkTo : 'none';\n\n\tif ( linkTo === 'post' ) {\n\t\tlinkTo = 'attachment';\n\t} else if ( linkTo === 'file' ) {\n\t\tlinkTo = 'media';\n\t}\n\n\tconst imageBlocks = attributes.images.map( ( image ) => {\n\t\treturn getImageBlock( image, attributes.sizeSlug, linkTo );\n\t} );\n\n\treturn [\n\t\t{\n\t\t\tcaption: attributes.caption,\n\t\t\tcolumns: attributes.columns,\n\t\t\timageCrop: attributes.imageCrop,\n\t\t\tlinkTo,\n\t\t\tsizeSlug: attributes.sizeSlug,\n\t\t\tallowResize: false,\n\t\t},\n\t\timageBlocks,\n\t];\n}\n/**\n * Gets an Image block from gallery image data\n *\n * Used to migrate Galleries to nested Image InnerBlocks.\n *\n * @param {Object} image Image properties.\n * @param {string} sizeSlug Gallery sizeSlug attribute.\n * @param {string} linkTo Gallery linkTo attribute.\n * @return {Object} Image block.\n */\nexport function getImageBlock( image, sizeSlug, linkTo ) {\n\treturn createBlock( 'core/image', {\n\t\t...( image.id && { id: parseInt( image.id ) } ),\n\t\turl: image.url,\n\t\talt: image.alt,\n\t\tcaption: image.caption,\n\t\tsizeSlug,\n\t\t...getHrefAndDestination( image, linkTo ),\n\t} );\n}\n\nconst v6 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: '.blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\tfullUrl: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'html',\n\t\t\t\t\tselector: '.blocks-gallery-item__caption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tids: {\n\t\t\ttype: 'array',\n\t\t\titems: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tdefault: [],\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t\tminimum: 1,\n\t\t\tmaximum: 8,\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: '.blocks-gallery-caption',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'large',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\talign: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tcaption,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\t\tconst className = `columns-${ columns } ${\n\t\t\timageCrop ? 'is-cropped' : ''\n\t\t}`;\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save( { className } ) }>\n\t\t\t\t<ul className=\"blocks-gallery-grid\">\n\t\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\t\tlet href;\n\n\t\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\t\tcase DEPRECATED_LINK_DESTINATION_MEDIA:\n\t\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase DEPRECATED_LINK_DESTINATION_ATTACHMENT:\n\t\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst img = (\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\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\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t\t{ href ? (\n\t\t\t\t\t\t\t\t\t\t<a href={ href }>{ img }</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\timg\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! RichText.isEmpty( image.caption ) && (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item__caption\"\n\t\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\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</figure>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</ul>\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tclassName=\"blocks-gallery-caption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\n\t\treturn attributes;\n\t},\n};\nconst v5 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: '.blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\tfullUrl: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'html',\n\t\t\t\t\tselector: '.blocks-gallery-item__caption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tids: {\n\t\t\ttype: 'array',\n\t\t\titems: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tdefault: [],\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t\tminimum: 1,\n\t\t\tmaximum: 8,\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: '.blocks-gallery-caption',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'large',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tisEligible( { linkTo } ) {\n\t\treturn ! linkTo || linkTo === 'attachment' || linkTo === 'media';\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\n\t\tlet linkTo = attributes.linkTo;\n\n\t\tif ( ! attributes.linkTo ) {\n\t\t\tlinkTo = 'none';\n\t\t} else if ( attributes.linkTo === 'attachment' ) {\n\t\t\tlinkTo = 'post';\n\t\t} else if ( attributes.linkTo === 'media' ) {\n\t\t\tlinkTo = 'file';\n\t\t}\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tlinkTo,\n\t\t};\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tcaption,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\n\t\treturn (\n\t\t\t<figure\n\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t}` }\n\t\t\t>\n\t\t\t\t<ul className=\"blocks-gallery-grid\">\n\t\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\t\tlet href;\n\n\t\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst img = (\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\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\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t\t{ href ? (\n\t\t\t\t\t\t\t\t\t\t<a href={ href }>{ img }</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\timg\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! RichText.isEmpty( image.caption ) && (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item__caption\"\n\t\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\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</figure>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</ul>\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tclassName=\"blocks-gallery-caption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\nconst v4 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: '.blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\tfullUrl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'html',\n\t\t\t\t\tselector: '.blocks-gallery-item__caption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tids: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: '.blocks-gallery-caption',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tisEligible( { ids } ) {\n\t\treturn ids && ids.some( ( id ) => typeof id === 'string' );\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tids: map( attributes.ids, ( id ) => {\n\t\t\t\tconst parsedId = parseInt( id, 10 );\n\t\t\t\treturn Number.isInteger( parsedId ) ? parsedId : null;\n\t\t\t} ),\n\t\t};\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tcaption,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\n\t\treturn (\n\t\t\t<figure\n\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t}` }\n\t\t\t>\n\t\t\t\t<ul className=\"blocks-gallery-grid\">\n\t\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\t\tlet href;\n\n\t\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst img = (\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\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\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t\t{ href ? (\n\t\t\t\t\t\t\t\t\t\t<a href={ href }>{ img }</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\timg\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! RichText.isEmpty( image.caption ) && (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item__caption\"\n\t\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\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</figure>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</ul>\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tclassName=\"blocks-gallery-caption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\nconst v3 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'ul.wp-block-gallery .blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\tfullUrl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tsource: 'children',\n\t\t\t\t\tselector: 'figcaption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tids: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\t\treturn (\n\t\t\t<ul\n\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t}` }\n\t\t\t>\n\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\tlet href;\n\n\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst img = (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li\n\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t{ href ? <a href={ href }>{ img }</a> : img }\n\t\t\t\t\t\t\t\t{ image.caption && image.caption.length > 0 && (\n\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\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</figure>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t);\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\t\treturn attributes;\n\t},\n};\nconst v2 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'ul.wp-block-gallery .blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tsource: 'children',\n\t\t\t\t\tselector: 'figcaption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\tisEligible( { images, ids } ) {\n\t\treturn (\n\t\t\timages &&\n\t\t\timages.length > 0 &&\n\t\t\t( ( ! ids && images ) ||\n\t\t\t\t( ids && images && ids.length !== images.length ) ||\n\t\t\t\tsome( images, ( id, index ) => {\n\t\t\t\t\tif ( ! id && ids[ index ] !== null ) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t\treturn parseInt( id, 10 ) !== ids[ index ];\n\t\t\t\t} ) )\n\t\t);\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tids: map( attributes.images, ( { id } ) => {\n\t\t\t\tif ( ! id ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t\treturn parseInt( id, 10 );\n\t\t\t} ),\n\t\t};\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\t\treturn (\n\t\t\t<ul\n\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t}` }\n\t\t\t>\n\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\tlet href;\n\n\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\thref = image.url;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst img = (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li\n\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t{ href ? <a href={ href }>{ img }</a> : img }\n\t\t\t\t\t\t\t\t{ image.caption && image.caption.length > 0 && (\n\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\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</figure>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t);\n\t},\n};\n\nconst v1 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'div.wp-block-gallery figure.blocks-gallery-image img',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\talign,\n\t\t\timageCrop,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\t\tconst className = classnames( `columns-${ columns }`, {\n\t\t\talignnone: align === 'none',\n\t\t\t'is-cropped': imageCrop,\n\t\t} );\n\t\treturn (\n\t\t\t<div className={ className }>\n\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\tlet href;\n\n\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\thref = image.url;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst img = (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<figure\n\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\tclassName=\"blocks-gallery-image\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ href ? <a href={ href }>{ img }</a> : img }\n\t\t\t\t\t\t</figure>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</div>\n\t\t);\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\n\t\treturn attributes;\n\t},\n};\n\nexport default [ v6, v5, v4, v3, v2, v1 ];\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/gallery/deprecated.js"],"names":["DEPRECATED_LINK_DESTINATION_MEDIA","DEPRECATED_LINK_DESTINATION_ATTACHMENT","defaultColumnsNumberV1","attributes","Math","min","images","length","getHrefAndDestination","image","destination","href","source_url","url","linkDestination","LINK_DESTINATION_MEDIA","link","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_NONE","undefined","runV2Migration","linkTo","imageBlocks","map","getImageBlock","sizeSlug","allowResize","id","parseInt","alt","caption","v6","type","default","source","selector","query","attribute","fullUrl","ids","items","columns","minimum","maximum","imageCrop","supports","anchor","align","save","className","useBlockProps","img","RichText","isEmpty","migrate","v5","isEligible","v4","some","parsedId","Number","isInteger","v3","v2","index","v1","alignnone"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { map, some, omit } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { RichText, useBlockProps } from '@wordpress/block-editor';\n\nimport { createBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n} from './constants';\nimport { isGalleryV2Enabled } from './shared';\n\nconst DEPRECATED_LINK_DESTINATION_MEDIA = 'file';\nconst DEPRECATED_LINK_DESTINATION_ATTACHMENT = 'post';\n\n/**\n * Original function to determine default number of columns from a block's\n * attributes.\n *\n * Used in deprecations: v1-6, for versions of the gallery block that didn't use inner blocks.\n *\n * @param {Object} attributes Block attributes.\n * @return {number} Default number of columns for the gallery.\n */\nexport function defaultColumnsNumberV1( attributes ) {\n\treturn Math.min( 3, attributes?.images?.length );\n}\n\n/**\n * Original function to determine new href and linkDestination values for an image block from the\n * supplied Gallery link destination.\n *\n * Used in deprecations: v1-6.\n *\n * @param {Object} image Gallery image.\n * @param {string} destination Gallery's selected link destination.\n * @return {Object} New attributes to assign to image block.\n */\nexport function getHrefAndDestination( image, destination ) {\n\t// Need to determine the URL that the selected destination maps to.\n\t// Gutenberg and WordPress use different constants so the new link\n\t// destination also needs to be tweaked.\n\tswitch ( destination ) {\n\t\tcase DEPRECATED_LINK_DESTINATION_MEDIA:\n\t\t\treturn {\n\t\t\t\thref: image?.source_url || image?.url, // eslint-disable-line camelcase\n\t\t\t\tlinkDestination: LINK_DESTINATION_MEDIA,\n\t\t\t};\n\t\tcase DEPRECATED_LINK_DESTINATION_ATTACHMENT:\n\t\t\treturn {\n\t\t\t\thref: image?.link,\n\t\t\t\tlinkDestination: LINK_DESTINATION_ATTACHMENT,\n\t\t\t};\n\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\treturn {\n\t\t\t\thref: image?.source_url || image?.url, // eslint-disable-line camelcase\n\t\t\t\tlinkDestination: LINK_DESTINATION_MEDIA,\n\t\t\t};\n\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\treturn {\n\t\t\t\thref: image?.link,\n\t\t\t\tlinkDestination: LINK_DESTINATION_ATTACHMENT,\n\t\t\t};\n\t\tcase LINK_DESTINATION_NONE:\n\t\t\treturn {\n\t\t\t\thref: undefined,\n\t\t\t\tlinkDestination: LINK_DESTINATION_NONE,\n\t\t\t};\n\t}\n\n\treturn {};\n}\n\nfunction runV2Migration( attributes ) {\n\tlet linkTo = attributes.linkTo ? attributes.linkTo : 'none';\n\n\tif ( linkTo === 'post' ) {\n\t\tlinkTo = 'attachment';\n\t} else if ( linkTo === 'file' ) {\n\t\tlinkTo = 'media';\n\t}\n\n\tconst imageBlocks = attributes.images.map( ( image ) => {\n\t\treturn getImageBlock( image, attributes.sizeSlug, linkTo );\n\t} );\n\n\treturn [\n\t\t{\n\t\t\t...omit( attributes, [ 'images', 'ids' ] ),\n\t\t\tlinkTo,\n\t\t\tallowResize: false,\n\t\t},\n\t\timageBlocks,\n\t];\n}\n/**\n * Gets an Image block from gallery image data\n *\n * Used to migrate Galleries to nested Image InnerBlocks.\n *\n * @param {Object} image Image properties.\n * @param {string} sizeSlug Gallery sizeSlug attribute.\n * @param {string} linkTo Gallery linkTo attribute.\n * @return {Object} Image block.\n */\nexport function getImageBlock( image, sizeSlug, linkTo ) {\n\treturn createBlock( 'core/image', {\n\t\t...( image.id && { id: parseInt( image.id ) } ),\n\t\turl: image.url,\n\t\talt: image.alt,\n\t\tcaption: image.caption,\n\t\tsizeSlug,\n\t\t...getHrefAndDestination( image, linkTo ),\n\t} );\n}\n\nconst v6 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: '.blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\tfullUrl: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'html',\n\t\t\t\t\tselector: '.blocks-gallery-item__caption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tids: {\n\t\t\ttype: 'array',\n\t\t\titems: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tdefault: [],\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t\tminimum: 1,\n\t\t\tmaximum: 8,\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: '.blocks-gallery-caption',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'large',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\talign: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tcaption,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\t\tconst className = `columns-${ columns } ${\n\t\t\timageCrop ? 'is-cropped' : ''\n\t\t}`;\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save( { className } ) }>\n\t\t\t\t<ul className=\"blocks-gallery-grid\">\n\t\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\t\tlet href;\n\n\t\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\t\tcase DEPRECATED_LINK_DESTINATION_MEDIA:\n\t\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase DEPRECATED_LINK_DESTINATION_ATTACHMENT:\n\t\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst img = (\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\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\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t\t{ href ? (\n\t\t\t\t\t\t\t\t\t\t<a href={ href }>{ img }</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\timg\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! RichText.isEmpty( image.caption ) && (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item__caption\"\n\t\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\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</figure>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</ul>\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tclassName=\"blocks-gallery-caption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\n\t\treturn attributes;\n\t},\n};\nconst v5 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: '.blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\tfullUrl: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'html',\n\t\t\t\t\tselector: '.blocks-gallery-item__caption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tids: {\n\t\t\ttype: 'array',\n\t\t\titems: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\tdefault: [],\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t\tminimum: 1,\n\t\t\tmaximum: 8,\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: '.blocks-gallery-caption',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'large',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tisEligible( { linkTo } ) {\n\t\treturn ! linkTo || linkTo === 'attachment' || linkTo === 'media';\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\n\t\tlet linkTo = attributes.linkTo;\n\n\t\tif ( ! attributes.linkTo ) {\n\t\t\tlinkTo = 'none';\n\t\t} else if ( attributes.linkTo === 'attachment' ) {\n\t\t\tlinkTo = 'post';\n\t\t} else if ( attributes.linkTo === 'media' ) {\n\t\t\tlinkTo = 'file';\n\t\t}\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tlinkTo,\n\t\t};\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tcaption,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\n\t\treturn (\n\t\t\t<figure\n\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t}` }\n\t\t\t>\n\t\t\t\t<ul className=\"blocks-gallery-grid\">\n\t\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\t\tlet href;\n\n\t\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst img = (\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\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\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t\t{ href ? (\n\t\t\t\t\t\t\t\t\t\t<a href={ href }>{ img }</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\timg\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! RichText.isEmpty( image.caption ) && (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item__caption\"\n\t\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\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</figure>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</ul>\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tclassName=\"blocks-gallery-caption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\nconst v4 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: '.blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\tfullUrl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tsource: 'html',\n\t\t\t\t\tselector: '.blocks-gallery-item__caption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tids: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: '.blocks-gallery-caption',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tisEligible( { ids } ) {\n\t\treturn ids && ids.some( ( id ) => typeof id === 'string' );\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tids: map( attributes.ids, ( id ) => {\n\t\t\t\tconst parsedId = parseInt( id, 10 );\n\t\t\t\treturn Number.isInteger( parsedId ) ? parsedId : null;\n\t\t\t} ),\n\t\t};\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tcaption,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\n\t\treturn (\n\t\t\t<figure\n\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t}` }\n\t\t\t>\n\t\t\t\t<ul className=\"blocks-gallery-grid\">\n\t\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\t\tlet href;\n\n\t\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst img = (\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\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\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t\t{ href ? (\n\t\t\t\t\t\t\t\t\t\t<a href={ href }>{ img }</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\timg\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! RichText.isEmpty( image.caption ) && (\n\t\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"blocks-gallery-item__caption\"\n\t\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\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</figure>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</ul>\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tclassName=\"blocks-gallery-caption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\nconst v3 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'ul.wp-block-gallery .blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\tfullUrl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-full-url',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tsource: 'children',\n\t\t\t\t\tselector: 'figcaption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tids: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\t\treturn (\n\t\t\t<ul\n\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t}` }\n\t\t\t>\n\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\tlet href;\n\n\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\thref = image.fullUrl || image.url;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst img = (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\tdata-full-url={ image.fullUrl }\n\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li\n\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t{ href ? <a href={ href }>{ img }</a> : img }\n\t\t\t\t\t\t\t\t{ image.caption && image.caption.length > 0 && (\n\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\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</figure>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t);\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\t\treturn attributes;\n\t},\n};\nconst v2 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'ul.wp-block-gallery .blocks-gallery-item',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t\tlink: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tselector: 'img',\n\t\t\t\t\tattribute: 'data-link',\n\t\t\t\t},\n\t\t\t\tcaption: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tsource: 'children',\n\t\t\t\t\tselector: 'figcaption',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\tisEligible( { images, ids } ) {\n\t\treturn (\n\t\t\timages &&\n\t\t\timages.length > 0 &&\n\t\t\t( ( ! ids && images ) ||\n\t\t\t\t( ids && images && ids.length !== images.length ) ||\n\t\t\t\tsome( images, ( id, index ) => {\n\t\t\t\t\tif ( ! id && ids[ index ] !== null ) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t\treturn parseInt( id, 10 ) !== ids[ index ];\n\t\t\t\t} ) )\n\t\t);\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tids: map( attributes.images, ( { id } ) => {\n\t\t\t\tif ( ! id ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t\treturn parseInt( id, 10 );\n\t\t\t} ),\n\t\t};\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\timageCrop,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\t\treturn (\n\t\t\t<ul\n\t\t\t\tclassName={ `columns-${ columns } ${\n\t\t\t\t\timageCrop ? 'is-cropped' : ''\n\t\t\t\t}` }\n\t\t\t>\n\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\tlet href;\n\n\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\thref = image.url;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst img = (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t\tdata-link={ image.link }\n\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\timage.id ? `wp-image-${ image.id }` : null\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li\n\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\tclassName=\"blocks-gallery-item\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<figure>\n\t\t\t\t\t\t\t\t{ href ? <a href={ href }>{ img }</a> : img }\n\t\t\t\t\t\t\t\t{ image.caption && image.caption.length > 0 && (\n\t\t\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\t\t\t\tvalue={ image.caption }\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</figure>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t);\n\t},\n};\n\nconst v1 = {\n\tattributes: {\n\t\timages: {\n\t\t\ttype: 'array',\n\t\t\tdefault: [],\n\t\t\tsource: 'query',\n\t\t\tselector: 'div.wp-block-gallery figure.blocks-gallery-image img',\n\t\t\tquery: {\n\t\t\t\turl: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tattribute: 'src',\n\t\t\t\t},\n\t\t\t\talt: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tattribute: 'alt',\n\t\t\t\t\tdefault: '',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\tsource: 'attribute',\n\t\t\t\t\tattribute: 'data-id',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tcolumns: {\n\t\t\ttype: 'number',\n\t\t},\n\t\timageCrop: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\tlinkTo: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\timages,\n\t\t\tcolumns = defaultColumnsNumberV1( attributes ),\n\t\t\talign,\n\t\t\timageCrop,\n\t\t\tlinkTo,\n\t\t} = attributes;\n\t\tconst className = classnames( `columns-${ columns }`, {\n\t\t\talignnone: align === 'none',\n\t\t\t'is-cropped': imageCrop,\n\t\t} );\n\t\treturn (\n\t\t\t<div className={ className }>\n\t\t\t\t{ images.map( ( image ) => {\n\t\t\t\t\tlet href;\n\n\t\t\t\t\tswitch ( linkTo ) {\n\t\t\t\t\t\tcase 'media':\n\t\t\t\t\t\t\thref = image.url;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'attachment':\n\t\t\t\t\t\t\thref = image.link;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst img = (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ image.url }\n\t\t\t\t\t\t\talt={ image.alt }\n\t\t\t\t\t\t\tdata-id={ image.id }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<figure\n\t\t\t\t\t\t\tkey={ image.id || image.url }\n\t\t\t\t\t\t\tclassName=\"blocks-gallery-image\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ href ? <a href={ href }>{ img }</a> : img }\n\t\t\t\t\t\t</figure>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</div>\n\t\t);\n\t},\n\tmigrate( attributes ) {\n\t\tif ( isGalleryV2Enabled() ) {\n\t\t\treturn runV2Migration( attributes );\n\t\t}\n\n\t\treturn attributes;\n\t},\n};\n\nexport default [ v6, v5, v4, v3, v2, v1 ];\n"]}
@@ -177,8 +177,8 @@ const SiteLogo = _ref => {
177
177
  const currentWidth = width || defaultWidth;
178
178
  const ratio = naturalWidth / naturalHeight;
179
179
  const currentHeight = currentWidth / ratio;
180
- const minWidth = naturalWidth < naturalHeight ? _constants.MIN_SIZE : _constants.MIN_SIZE * ratio;
181
- const minHeight = naturalHeight < naturalWidth ? _constants.MIN_SIZE : _constants.MIN_SIZE / ratio; // With the current implementation of ResizableBox, an image needs an
180
+ const minWidth = naturalWidth < naturalHeight ? _constants.MIN_SIZE : Math.ceil(_constants.MIN_SIZE * ratio);
181
+ const minHeight = naturalHeight < naturalWidth ? _constants.MIN_SIZE : Math.ceil(_constants.MIN_SIZE / ratio); // With the current implementation of ResizableBox, an image needs an
182
182
  // explicit pixel value for the max-width. In absence of being able to
183
183
  // set the content-width, this max-width is currently dictated by the
184
184
  // vanilla editor style. The following variable adds a buffer to this
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/site-logo/edit.js"],"names":["ALLOWED_MEDIA_TYPES","ACCEPT_MEDIA_STRING","SiteLogo","alt","attributes","align","width","height","isLink","linkTarget","shouldSyncIcon","containerRef","isSelected","setAttributes","setLogo","logoUrl","siteUrl","logoId","iconId","setIcon","canUserEdit","clientWidth","isLargeViewport","isWideAligned","isResizable","naturalWidth","naturalHeight","setNaturalSize","isEditingImage","setIsEditingImage","toggleSelection","blockEditorStore","classes","imageEditing","maxWidth","title","select","getSettings","siteEntities","coreStore","getEditedEntityRecord","onResizeStart","onResizeStop","img","event","target","imgWrapper","preventDefault","imageWidthWithinContainer","exceedMaxWidth","defaultWidth","currentWidth","ratio","currentHeight","minWidth","MIN_SIZE","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","canEditImage","imgEdit","imageAttributes","id","top","right","bottom","left","direction","elt","delta","parseInt","syncSiteIconHelpText","a","newWidth","Math","min","value","undefined","crop","LogoEdit","className","styleClass","setLogoUrl","ref","siteLogoId","url","siteIconId","mediaItemData","isRequestingMediaItem","canUser","getEntityRecord","siteSettings","siteData","_siteLogo","site_logo","_readOnlyLogo","_canUserEdit","_siteLogoId","_siteIconId","site_icon","mediaItem","getMedia","context","_isRequestingMediaItem","hasFinishedResolution","source_url","alt_text","getGlobalBlockCount","editEntityRecord","includes","logoBlockCount","newValue","shouldForceSync","onInitialSelectLogo","media","onSelectLogo","onRemoveLogo","createErrorNotice","noticesStore","onUploadError","message","type","controls","logoImage","isLoading","placeholder","content","placeholderClassName","blockProps","label","open","upload"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { includes, pick } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tcreateInterpolateElement,\n\tuseEffect,\n\tuseState,\n\tuseRef,\n} from '@wordpress/element';\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\tMenuItem,\n\tPanelBody,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tToggleControl,\n\tToolbarButton,\n\tPlaceholder,\n\tButton,\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\t__experimentalImageEditingProvider as ImageEditingProvider,\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 { SVG, Path } from '@wordpress/primitives';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport useClientWidth from '../image/use-client-width';\n\n/**\n * Module constants\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\tcontainerRef,\n\tisSelected,\n\tsetAttributes,\n\tsetLogo,\n\tlogoUrl,\n\tsiteUrl,\n\tlogoId,\n\ticonId,\n\tsetIcon,\n\tcanUserEdit,\n} ) => {\n\tconst clientWidth = useClientWidth( containerRef, [ align ] );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = includes( [ 'wide', 'full' ], 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 classes = classnames( 'custom-logo-link', {\n\t\t'is-transient': isBlobURL( logoUrl ),\n\t} );\n\tconst { imageEditing, maxWidth, title } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst siteEntities = select( coreStore ).getEditedEntityRecord(\n\t\t\t'root',\n\t\t\t'site'\n\t\t);\n\t\treturn {\n\t\t\ttitle: siteEntities.title,\n\t\t\t...pick( getSettings(), [ 'imageEditing', '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<img\n\t\t\tclassName=\"custom-logo\"\n\t\t\tsrc={ logoUrl }\n\t\t\talt={ alt }\n\t\t\tonLoad={ ( event ) => {\n\t\t\t\tsetNaturalSize(\n\t\t\t\t\tpick( event.target, [ 'naturalWidth', 'naturalHeight' ] )\n\t\t\t\t);\n\t\t\t} }\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={ classes }\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\tlet imageWidthWithinContainer;\n\n\tif ( clientWidth && naturalWidth && naturalHeight ) {\n\t\tconst exceedMaxWidth = naturalWidth > clientWidth;\n\t\timageWidthWithinContainer = exceedMaxWidth ? clientWidth : naturalWidth;\n\t}\n\n\tif ( ! isResizable || ! imageWidthWithinContainer ) {\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 = naturalWidth < naturalHeight ? MIN_SIZE : MIN_SIZE * ratio;\n\tconst minHeight =\n\t\tnaturalHeight < naturalWidth ? MIN_SIZE : 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<ImageEditingProvider\n\t\t\t\tid={ logoId }\n\t\t\t\turl={ logoUrl }\n\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\tclientWidth={ clientWidth }\n\t\t\t\tonSaveImage={ ( imageAttributes ) => {\n\t\t\t\t\tsetLogo( imageAttributes.id );\n\t\t\t\t} }\n\t\t\t\tisEditing={ isEditingImage }\n\t\t\t\tonFinishEditing={ () => setIsEditingImage( false ) }\n\t\t\t>\n\t\t\t\t<ImageEditor\n\t\t\t\t\turl={ logoUrl }\n\t\t\t\t\twidth={ currentWidth }\n\t\t\t\t\theight={ currentHeight }\n\t\t\t\t\tclientWidth={ clientWidth }\n\t\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\t/>\n\t\t\t</ImageEditingProvider>\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\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={\n\t\t\t\t\t\tsiteUrl +\n\t\t\t\t\t\t'/wp-admin/customize.php?autofocus[section]=title_tagline'\n\t\t\t\t\t}\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\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\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\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\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\nexport default function LogoEdit( {\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tisSelected,\n} ) {\n\tconst { className: styleClass, width, shouldSyncIcon } = attributes;\n\tconst [ logoUrl, setLogoUrl ] = useState();\n\tconst ref = useRef();\n\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 } = select(\n\t\t\tcoreStore\n\t\t);\n\t\tconst siteSettings = getEditedEntityRecord( 'root', 'site' );\n\t\tconst siteData = getEntityRecord( 'root', '__unstableBase' );\n\t\tconst _siteLogo = siteSettings?.site_logo;\n\t\tconst _readOnlyLogo = siteData?.site_logo;\n\t\tconst _canUserEdit = canUser( 'update', 'settings' );\n\t\tconst _siteLogoId = _canUserEdit ? _siteLogo : _readOnlyLogo;\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?.url,\n\t\t\tmediaItemData: mediaItem && {\n\t\t\t\tid: mediaItem.id,\n\t\t\t\turl: mediaItem.source_url,\n\t\t\t\talt: mediaItem.alt_text,\n\t\t\t},\n\t\t\tisRequestingMediaItem: _isRequestingMediaItem,\n\t\t\tsiteIconId: _siteIconId,\n\t\t};\n\t}, [] );\n\n\tconst { getGlobalBlockCount } = useSelect( blockEditorStore );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tuseEffect( () => {\n\t\t// Cleanup function to discard unsaved changes to the icon and logo when\n\t\t// the block is removed.\n\t\treturn () => {\n\t\t\t// Do nothing if the block is being rendered in the styles preview or the\n\t\t\t// block inserter.\n\t\t\tif (\n\t\t\t\tstyleClass?.includes(\n\t\t\t\t\t'block-editor-block-types-list__site-logo-example'\n\t\t\t\t) ||\n\t\t\t\tstyleClass?.includes(\n\t\t\t\t\t'block-editor-block-styles__block-preview-container'\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst logoBlockCount = getGlobalBlockCount( 'core/site-logo' );\n\n\t\t\t// Only discard unsaved changes if we are removing the last Site Logo block\n\t\t\t// on the page.\n\t\t\tif ( logoBlockCount === 0 ) {\n\t\t\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\t\t\tsite_logo: undefined,\n\t\t\t\t\tsite_icon: undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t};\n\t}, [] );\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\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_icon: newValue,\n\t\t} );\n\n\tlet alt = null;\n\tif ( mediaItemData ) {\n\t\talt = mediaItemData.alt;\n\t\tif ( logoUrl !== mediaItemData.url ) {\n\t\t\tsetLogoUrl( mediaItemData.url );\n\t\t}\n\t}\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\tsetLogo( undefined );\n\t\t\tsetLogoUrl( media.url );\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\tsetLogoUrl( undefined );\n\t\tsetAttributes( { width: undefined } );\n\t};\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message[ 2 ], { type: 'snackbar' } );\n\t};\n\n\tconst controls = canUserEdit && logoUrl && (\n\t\t<BlockControls group=\"other\">\n\t\t\t<MediaReplaceFlow\n\t\t\t\tmediaURL={ logoUrl }\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t\t\tonSelect={ onSelectLogo }\n\t\t\t\tonError={ onUploadError }\n\t\t\t>\n\t\t\t\t<MenuItem onClick={ onRemoveLogo }>{ __( 'Reset' ) }</MenuItem>\n\t\t\t</MediaReplaceFlow>\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\tif ( !! logoUrl ) {\n\t\tlogoImage = (\n\t\t\t<SiteLogo\n\t\t\t\talt={ alt }\n\t\t\t\tattributes={ attributes }\n\t\t\t\tclassName={ className }\n\t\t\t\tcontainerRef={ ref }\n\t\t\t\tisSelected={ isSelected }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tlogoUrl={ logoUrl }\n\t\t\t\tsetLogo={ setLogo }\n\t\t\t\tlogoId={ mediaItemData?.id || siteLogoId }\n\t\t\t\tsiteUrl={ url }\n\t\t\t\tsetIcon={ setIcon }\n\t\t\t\ticonId={ siteIconId }\n\t\t\t\tcanUserEdit={ canUserEdit }\n\t\t\t/>\n\t\t);\n\t}\n\tconst placeholder = ( content ) => {\n\t\tconst placeholderClassName = classnames(\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>\n\t\t\t\t{\n\t\t\t\t\t<SVG\n\t\t\t\t\t\tclassName=\"components-placeholder__illustration\"\n\t\t\t\t\t\tfill=\"none\"\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\tviewBox=\"0 0 60 60\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Path\n\t\t\t\t\t\t\tvectorEffect=\"non-scaling-stroke\"\n\t\t\t\t\t\t\td=\"m61 32.622-13.555-9.137-15.888 9.859a5 5 0 0 1-5.386-.073l-9.095-5.989L1 37.5\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</SVG>\n\t\t\t\t}\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst classes = classnames( className, {\n\t\t'is-default-size': ! width,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tref,\n\t\tclassName: classes,\n\t} );\n\n\tconst label = __( 'Add a site logo' );\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t{ !! logoUrl && logoImage }\n\t\t\t{ ! logoUrl && ! canUserEdit && (\n\t\t\t\t<Placeholder className=\"site-logo_placeholder\">\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{ ! 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\ticon={ upload }\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\t\ttooltipPosition=\"top center\"\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"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/site-logo/edit.js"],"names":["ALLOWED_MEDIA_TYPES","ACCEPT_MEDIA_STRING","SiteLogo","alt","attributes","align","width","height","isLink","linkTarget","shouldSyncIcon","containerRef","isSelected","setAttributes","setLogo","logoUrl","siteUrl","logoId","iconId","setIcon","canUserEdit","clientWidth","isLargeViewport","isWideAligned","isResizable","naturalWidth","naturalHeight","setNaturalSize","isEditingImage","setIsEditingImage","toggleSelection","blockEditorStore","classes","imageEditing","maxWidth","title","select","getSettings","siteEntities","coreStore","getEditedEntityRecord","onResizeStart","onResizeStop","img","event","target","imgWrapper","preventDefault","imageWidthWithinContainer","exceedMaxWidth","defaultWidth","currentWidth","ratio","currentHeight","minWidth","MIN_SIZE","Math","ceil","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","canEditImage","imgEdit","imageAttributes","id","top","right","bottom","left","direction","elt","delta","parseInt","syncSiteIconHelpText","a","newWidth","min","value","undefined","crop","LogoEdit","className","styleClass","setLogoUrl","ref","siteLogoId","url","siteIconId","mediaItemData","isRequestingMediaItem","canUser","getEntityRecord","siteSettings","siteData","_siteLogo","site_logo","_readOnlyLogo","_canUserEdit","_siteLogoId","_siteIconId","site_icon","mediaItem","getMedia","context","_isRequestingMediaItem","hasFinishedResolution","source_url","alt_text","getGlobalBlockCount","editEntityRecord","includes","logoBlockCount","newValue","shouldForceSync","onInitialSelectLogo","media","onSelectLogo","onRemoveLogo","createErrorNotice","noticesStore","onUploadError","message","type","controls","logoImage","isLoading","placeholder","content","placeholderClassName","blockProps","label","open","upload"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { includes, pick } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tcreateInterpolateElement,\n\tuseEffect,\n\tuseState,\n\tuseRef,\n} from '@wordpress/element';\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\tMenuItem,\n\tPanelBody,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tToggleControl,\n\tToolbarButton,\n\tPlaceholder,\n\tButton,\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\t__experimentalImageEditingProvider as ImageEditingProvider,\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 { SVG, Path } from '@wordpress/primitives';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport useClientWidth from '../image/use-client-width';\n\n/**\n * Module constants\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\tcontainerRef,\n\tisSelected,\n\tsetAttributes,\n\tsetLogo,\n\tlogoUrl,\n\tsiteUrl,\n\tlogoId,\n\ticonId,\n\tsetIcon,\n\tcanUserEdit,\n} ) => {\n\tconst clientWidth = useClientWidth( containerRef, [ align ] );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = includes( [ 'wide', 'full' ], 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 classes = classnames( 'custom-logo-link', {\n\t\t'is-transient': isBlobURL( logoUrl ),\n\t} );\n\tconst { imageEditing, maxWidth, title } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst siteEntities = select( coreStore ).getEditedEntityRecord(\n\t\t\t'root',\n\t\t\t'site'\n\t\t);\n\t\treturn {\n\t\t\ttitle: siteEntities.title,\n\t\t\t...pick( getSettings(), [ 'imageEditing', '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<img\n\t\t\tclassName=\"custom-logo\"\n\t\t\tsrc={ logoUrl }\n\t\t\talt={ alt }\n\t\t\tonLoad={ ( event ) => {\n\t\t\t\tsetNaturalSize(\n\t\t\t\t\tpick( event.target, [ 'naturalWidth', 'naturalHeight' ] )\n\t\t\t\t);\n\t\t\t} }\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={ classes }\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\tlet imageWidthWithinContainer;\n\n\tif ( clientWidth && naturalWidth && naturalHeight ) {\n\t\tconst exceedMaxWidth = naturalWidth > clientWidth;\n\t\timageWidthWithinContainer = exceedMaxWidth ? clientWidth : naturalWidth;\n\t}\n\n\tif ( ! isResizable || ! imageWidthWithinContainer ) {\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<ImageEditingProvider\n\t\t\t\tid={ logoId }\n\t\t\t\turl={ logoUrl }\n\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\tclientWidth={ clientWidth }\n\t\t\t\tonSaveImage={ ( imageAttributes ) => {\n\t\t\t\t\tsetLogo( imageAttributes.id );\n\t\t\t\t} }\n\t\t\t\tisEditing={ isEditingImage }\n\t\t\t\tonFinishEditing={ () => setIsEditingImage( false ) }\n\t\t\t>\n\t\t\t\t<ImageEditor\n\t\t\t\t\turl={ logoUrl }\n\t\t\t\t\twidth={ currentWidth }\n\t\t\t\t\theight={ currentHeight }\n\t\t\t\t\tclientWidth={ clientWidth }\n\t\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\t/>\n\t\t\t</ImageEditingProvider>\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\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={\n\t\t\t\t\t\tsiteUrl +\n\t\t\t\t\t\t'/wp-admin/customize.php?autofocus[section]=title_tagline'\n\t\t\t\t\t}\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\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\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\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\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\nexport default function LogoEdit( {\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tisSelected,\n} ) {\n\tconst { className: styleClass, width, shouldSyncIcon } = attributes;\n\tconst [ logoUrl, setLogoUrl ] = useState();\n\tconst ref = useRef();\n\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 } = select(\n\t\t\tcoreStore\n\t\t);\n\t\tconst siteSettings = getEditedEntityRecord( 'root', 'site' );\n\t\tconst siteData = getEntityRecord( 'root', '__unstableBase' );\n\t\tconst _siteLogo = siteSettings?.site_logo;\n\t\tconst _readOnlyLogo = siteData?.site_logo;\n\t\tconst _canUserEdit = canUser( 'update', 'settings' );\n\t\tconst _siteLogoId = _canUserEdit ? _siteLogo : _readOnlyLogo;\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?.url,\n\t\t\tmediaItemData: mediaItem && {\n\t\t\t\tid: mediaItem.id,\n\t\t\t\turl: mediaItem.source_url,\n\t\t\t\talt: mediaItem.alt_text,\n\t\t\t},\n\t\t\tisRequestingMediaItem: _isRequestingMediaItem,\n\t\t\tsiteIconId: _siteIconId,\n\t\t};\n\t}, [] );\n\n\tconst { getGlobalBlockCount } = useSelect( blockEditorStore );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tuseEffect( () => {\n\t\t// Cleanup function to discard unsaved changes to the icon and logo when\n\t\t// the block is removed.\n\t\treturn () => {\n\t\t\t// Do nothing if the block is being rendered in the styles preview or the\n\t\t\t// block inserter.\n\t\t\tif (\n\t\t\t\tstyleClass?.includes(\n\t\t\t\t\t'block-editor-block-types-list__site-logo-example'\n\t\t\t\t) ||\n\t\t\t\tstyleClass?.includes(\n\t\t\t\t\t'block-editor-block-styles__block-preview-container'\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst logoBlockCount = getGlobalBlockCount( 'core/site-logo' );\n\n\t\t\t// Only discard unsaved changes if we are removing the last Site Logo block\n\t\t\t// on the page.\n\t\t\tif ( logoBlockCount === 0 ) {\n\t\t\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\t\t\tsite_logo: undefined,\n\t\t\t\t\tsite_icon: undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t};\n\t}, [] );\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\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_icon: newValue,\n\t\t} );\n\n\tlet alt = null;\n\tif ( mediaItemData ) {\n\t\talt = mediaItemData.alt;\n\t\tif ( logoUrl !== mediaItemData.url ) {\n\t\t\tsetLogoUrl( mediaItemData.url );\n\t\t}\n\t}\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\tsetLogo( undefined );\n\t\t\tsetLogoUrl( media.url );\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\tsetLogoUrl( undefined );\n\t\tsetAttributes( { width: undefined } );\n\t};\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message[ 2 ], { type: 'snackbar' } );\n\t};\n\n\tconst controls = canUserEdit && logoUrl && (\n\t\t<BlockControls group=\"other\">\n\t\t\t<MediaReplaceFlow\n\t\t\t\tmediaURL={ logoUrl }\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t\t\tonSelect={ onSelectLogo }\n\t\t\t\tonError={ onUploadError }\n\t\t\t>\n\t\t\t\t<MenuItem onClick={ onRemoveLogo }>{ __( 'Reset' ) }</MenuItem>\n\t\t\t</MediaReplaceFlow>\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\tif ( !! logoUrl ) {\n\t\tlogoImage = (\n\t\t\t<SiteLogo\n\t\t\t\talt={ alt }\n\t\t\t\tattributes={ attributes }\n\t\t\t\tclassName={ className }\n\t\t\t\tcontainerRef={ ref }\n\t\t\t\tisSelected={ isSelected }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tlogoUrl={ logoUrl }\n\t\t\t\tsetLogo={ setLogo }\n\t\t\t\tlogoId={ mediaItemData?.id || siteLogoId }\n\t\t\t\tsiteUrl={ url }\n\t\t\t\tsetIcon={ setIcon }\n\t\t\t\ticonId={ siteIconId }\n\t\t\t\tcanUserEdit={ canUserEdit }\n\t\t\t/>\n\t\t);\n\t}\n\tconst placeholder = ( content ) => {\n\t\tconst placeholderClassName = classnames(\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>\n\t\t\t\t{\n\t\t\t\t\t<SVG\n\t\t\t\t\t\tclassName=\"components-placeholder__illustration\"\n\t\t\t\t\t\tfill=\"none\"\n\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\tviewBox=\"0 0 60 60\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Path\n\t\t\t\t\t\t\tvectorEffect=\"non-scaling-stroke\"\n\t\t\t\t\t\t\td=\"m61 32.622-13.555-9.137-15.888 9.859a5 5 0 0 1-5.386-.073l-9.095-5.989L1 37.5\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</SVG>\n\t\t\t\t}\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst classes = classnames( className, {\n\t\t'is-default-size': ! width,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tref,\n\t\tclassName: classes,\n\t} );\n\n\tconst label = __( 'Add a site logo' );\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t{ !! logoUrl && logoImage }\n\t\t\t{ ! logoUrl && ! canUserEdit && (\n\t\t\t\t<Placeholder className=\"site-logo_placeholder\">\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{ ! 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\ticon={ upload }\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\t\ttooltipPosition=\"top center\"\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"]}
@@ -4,7 +4,7 @@ import { createElement } from "@wordpress/element";
4
4
  * External dependencies
5
5
  */
6
6
  import classnames from 'classnames';
7
- import { map, some } from 'lodash';
7
+ import { map, some, omit } from 'lodash';
8
8
  /**
9
9
  * WordPress dependencies
10
10
  */
@@ -98,12 +98,8 @@ function runV2Migration(attributes) {
98
98
  const imageBlocks = attributes.images.map(image => {
99
99
  return getImageBlock(image, attributes.sizeSlug, linkTo);
100
100
  });
101
- return [{
102
- caption: attributes.caption,
103
- columns: attributes.columns,
104
- imageCrop: attributes.imageCrop,
101
+ return [{ ...omit(attributes, ['images', 'ids']),
105
102
  linkTo,
106
- sizeSlug: attributes.sizeSlug,
107
103
  allowResize: false
108
104
  }, imageBlocks];
109
105
  }