@wordpress/block-library 9.29.1-next.f34ab90e9.0 → 9.30.1-next.6870dfe5b.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/accordion/edit.js +18 -1
  3. package/build/accordion/edit.js.map +1 -1
  4. package/build/accordion/index.js +0 -3
  5. package/build/accordion/index.js.map +1 -1
  6. package/build/accordion-content/edit.js +8 -8
  7. package/build/accordion-content/edit.js.map +1 -1
  8. package/build/accordion-content/index.js +2 -5
  9. package/build/accordion-content/index.js.map +1 -1
  10. package/build/accordion-header/index.js +0 -4
  11. package/build/accordion-header/index.js.map +1 -1
  12. package/build/accordion-panel/edit.js +5 -30
  13. package/build/accordion-panel/edit.js.map +1 -1
  14. package/build/accordion-panel/index.js +2 -5
  15. package/build/accordion-panel/index.js.map +1 -1
  16. package/build/accordion-panel/save.js +3 -29
  17. package/build/accordion-panel/save.js.map +1 -1
  18. package/build/audio/edit.js +3 -1
  19. package/build/audio/edit.js.map +1 -1
  20. package/build/gallery/index.js +2 -1
  21. package/build/gallery/index.js.map +1 -1
  22. package/build/group/variations.js +0 -12
  23. package/build/group/variations.js.map +1 -1
  24. package/build/image/image.js +1 -1
  25. package/build/image/image.js.map +1 -1
  26. package/build/navigation/constants.js +5 -1
  27. package/build/navigation/constants.js.map +1 -1
  28. package/build/navigation/edit/index.js +45 -1
  29. package/build/navigation/edit/index.js.map +1 -1
  30. package/build/navigation/edit/leaf-more-menu.js +0 -1
  31. package/build/navigation/edit/leaf-more-menu.js.map +1 -1
  32. package/build/navigation/edit/menu-inspector-controls.js +40 -5
  33. package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
  34. package/build/navigation-link/block-inserter.js +69 -0
  35. package/build/navigation-link/block-inserter.js.map +1 -0
  36. package/build/navigation-link/dialog-wrapper.js +80 -0
  37. package/build/navigation-link/dialog-wrapper.js.map +1 -0
  38. package/build/navigation-link/link-ui.js +80 -116
  39. package/build/navigation-link/link-ui.js.map +1 -1
  40. package/build/navigation-link/page-creator.js +137 -0
  41. package/build/navigation-link/page-creator.js.map +1 -0
  42. package/build/query/edit/index.js.map +1 -1
  43. package/build/query/edit/query-content.js +7 -6
  44. package/build/query/edit/query-content.js.map +1 -1
  45. package/build/query/edit/query-placeholder.js +30 -9
  46. package/build/query/edit/query-placeholder.js.map +1 -1
  47. package/build/query/edit/query-toolbar.js +4 -2
  48. package/build/query/edit/query-toolbar.js.map +1 -1
  49. package/build/search/edit.js +22 -14
  50. package/build/search/edit.js.map +1 -1
  51. package/build/template-part/edit/placeholder.js +2 -1
  52. package/build/template-part/edit/placeholder.js.map +1 -1
  53. package/build/video/edit.js +3 -1
  54. package/build/video/edit.js.map +1 -1
  55. package/build-module/accordion/edit.js +20 -3
  56. package/build-module/accordion/edit.js.map +1 -1
  57. package/build-module/accordion/index.js +0 -3
  58. package/build-module/accordion/index.js.map +1 -1
  59. package/build-module/accordion-content/edit.js +8 -8
  60. package/build-module/accordion-content/edit.js.map +1 -1
  61. package/build-module/accordion-content/index.js +2 -5
  62. package/build-module/accordion-content/index.js.map +1 -1
  63. package/build-module/accordion-header/index.js +0 -4
  64. package/build-module/accordion-header/index.js.map +1 -1
  65. package/build-module/accordion-panel/edit.js +6 -29
  66. package/build-module/accordion-panel/edit.js.map +1 -1
  67. package/build-module/accordion-panel/index.js +2 -5
  68. package/build-module/accordion-panel/index.js.map +1 -1
  69. package/build-module/accordion-panel/save.js +4 -28
  70. package/build-module/accordion-panel/save.js.map +1 -1
  71. package/build-module/audio/edit.js +4 -2
  72. package/build-module/audio/edit.js.map +1 -1
  73. package/build-module/gallery/index.js +2 -1
  74. package/build-module/gallery/index.js.map +1 -1
  75. package/build-module/group/variations.js +0 -12
  76. package/build-module/group/variations.js.map +1 -1
  77. package/build-module/image/image.js +1 -1
  78. package/build-module/image/image.js.map +1 -1
  79. package/build-module/navigation/constants.js +5 -1
  80. package/build-module/navigation/constants.js.map +1 -1
  81. package/build-module/navigation/edit/index.js +50 -4
  82. package/build-module/navigation/edit/index.js.map +1 -1
  83. package/build-module/navigation/edit/leaf-more-menu.js +0 -1
  84. package/build-module/navigation/edit/leaf-more-menu.js.map +1 -1
  85. package/build-module/navigation/edit/menu-inspector-controls.js +40 -5
  86. package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
  87. package/build-module/navigation-link/block-inserter.js +61 -0
  88. package/build-module/navigation-link/block-inserter.js.map +1 -0
  89. package/build-module/navigation-link/dialog-wrapper.js +75 -0
  90. package/build-module/navigation-link/dialog-wrapper.js.map +1 -0
  91. package/build-module/navigation-link/link-ui.js +85 -121
  92. package/build-module/navigation-link/link-ui.js.map +1 -1
  93. package/build-module/navigation-link/page-creator.js +130 -0
  94. package/build-module/navigation-link/page-creator.js.map +1 -0
  95. package/build-module/query/edit/index.js.map +1 -1
  96. package/build-module/query/edit/query-content.js +8 -7
  97. package/build-module/query/edit/query-content.js.map +1 -1
  98. package/build-module/query/edit/query-placeholder.js +30 -10
  99. package/build-module/query/edit/query-placeholder.js.map +1 -1
  100. package/build-module/query/edit/query-toolbar.js +4 -2
  101. package/build-module/query/edit/query-toolbar.js.map +1 -1
  102. package/build-module/search/edit.js +22 -14
  103. package/build-module/search/edit.js.map +1 -1
  104. package/build-module/template-part/edit/placeholder.js +2 -1
  105. package/build-module/template-part/edit/placeholder.js.map +1 -1
  106. package/build-module/video/edit.js +4 -2
  107. package/build-module/video/edit.js.map +1 -1
  108. package/build-style/accordion/style-rtl.css +8 -18
  109. package/build-style/accordion/style.css +8 -18
  110. package/build-style/editor-rtl.css +18 -0
  111. package/build-style/editor.css +18 -0
  112. package/build-style/form-input/style-rtl.css +4 -3
  113. package/build-style/form-input/style.css +4 -3
  114. package/build-style/navigation-link/editor-rtl.css +14 -0
  115. package/build-style/navigation-link/editor.css +14 -0
  116. package/build-style/navigation-link/style-rtl.css +1 -1
  117. package/build-style/navigation-link/style.css +1 -1
  118. package/build-style/post-comments-form/style-rtl.css +8 -5
  119. package/build-style/post-comments-form/style.css +8 -5
  120. package/build-style/query/editor-rtl.css +4 -0
  121. package/build-style/query/editor.css +4 -0
  122. package/build-style/search/style-rtl.css +11 -12
  123. package/build-style/search/style.css +11 -12
  124. package/build-style/style-rtl.css +32 -40
  125. package/build-style/style.css +32 -40
  126. package/package.json +35 -35
  127. package/src/accordion/block.json +0 -3
  128. package/src/accordion/edit.js +20 -0
  129. package/src/accordion/style.scss +12 -21
  130. package/src/accordion-content/block.json +2 -4
  131. package/src/accordion-content/edit.js +21 -27
  132. package/src/accordion-content/index.js +0 -1
  133. package/src/accordion-header/block.json +0 -3
  134. package/src/accordion-header/index.js +0 -1
  135. package/src/accordion-panel/block.json +2 -4
  136. package/src/accordion-panel/edit.js +11 -51
  137. package/src/accordion-panel/index.js +0 -1
  138. package/src/accordion-panel/save.js +4 -45
  139. package/src/audio/edit.js +6 -1
  140. package/src/cover/test/edit.js +1 -5
  141. package/src/form-input/style.scss +3 -2
  142. package/src/gallery/block.json +2 -1
  143. package/src/gallery/index.php +1 -1
  144. package/src/gallery/test/helpers.native.js +3 -3
  145. package/src/group/variations.js +0 -12
  146. package/src/image/image.js +2 -1
  147. package/src/navigation/constants.js +4 -0
  148. package/src/navigation/edit/index.js +50 -1
  149. package/src/navigation/edit/leaf-more-menu.js +0 -1
  150. package/src/navigation/edit/menu-inspector-controls.js +40 -5
  151. package/src/navigation-link/block-inserter.js +65 -0
  152. package/src/navigation-link/dialog-wrapper.js +74 -0
  153. package/src/navigation-link/editor.scss +17 -0
  154. package/src/navigation-link/link-ui.js +108 -158
  155. package/src/navigation-link/page-creator.js +157 -0
  156. package/src/navigation-link/style.scss +1 -1
  157. package/src/post-comments-form/style.scss +11 -11
  158. package/src/post-date/index.php +2 -1
  159. package/src/query/edit/index.js +1 -0
  160. package/src/query/edit/query-content.js +8 -4
  161. package/src/query/edit/query-placeholder.js +47 -17
  162. package/src/query/edit/query-toolbar.js +10 -2
  163. package/src/query/editor.scss +6 -1
  164. package/src/search/edit.js +44 -13
  165. package/src/search/index.php +16 -2
  166. package/src/search/style.scss +15 -16
  167. package/src/template-part/edit/placeholder.js +2 -1
  168. package/src/video/edit.js +6 -1
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","isBlobURL","Disabled","SelectControl","Spinner","ToggleControl","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","BlockControls","BlockIcon","InspectorControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","__","_x","useDispatch","audio","icon","store","noticesStore","useState","createUpgradedEmbedBlock","useUploadMediaFromBlobURL","useToolsPanelDropdownMenuProps","Caption","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ALLOWED_MEDIA_TYPES","AudioEdit","attributes","className","setAttributes","onReplace","isSelected","isSingleSelected","insertBlocksAfter","id","autoplay","loop","preload","src","temporaryURL","setTemporaryURL","blob","url","allowedTypes","onChange","onSelectAudio","onError","onUploadError","toggleAttribute","attribute","newValue","onSelectURL","newSrc","embedBlock","undefined","createErrorNotice","message","type","getAutoplayHelp","checked","media","caption","classes","blockProps","dropdownMenuProps","children","onSelect","accept","value","group","mediaId","mediaURL","onReset","label","resetAll","isShownByDefault","hasValue","onDeselect","__nextHasNoMarginBottom","help","__next40pxDefaultSize","options","isDisabled","controls","showToolbarButton"],"sources":["@wordpress/block-library/src/audio/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tDisabled,\n\tSelectControl,\n\tSpinner,\n\tToggleControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { __, _x } from '@wordpress/i18n';\nimport { useDispatch } from '@wordpress/data';\nimport { audio as icon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport {\n\tuseUploadMediaFromBlobURL,\n\tuseToolsPanelDropdownMenuProps,\n} from '../utils/hooks';\nimport { Caption } from '../utils/caption';\n\nconst ALLOWED_MEDIA_TYPES = [ 'audio' ];\n\nfunction AudioEdit( {\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tonReplace,\n\tisSelected: isSingleSelected,\n\tinsertBlocksAfter,\n} ) {\n\tconst { id, autoplay, loop, preload, src } = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\tonChange: onSelectAudio,\n\t\tonError: onUploadError,\n\t} );\n\n\tfunction toggleAttribute( attribute ) {\n\t\treturn ( newValue ) => {\n\t\t\tsetAttributes( { [ attribute ]: newValue } );\n\t\t};\n\t}\n\n\tfunction onSelectURL( newSrc ) {\n\t\t// Set the block's src from the edit component's state, and switch off\n\t\t// the editing UI.\n\t\tif ( newSrc !== src ) {\n\t\t\t// Check if there's an embed block that handles this URL.\n\t\t\tconst embedBlock = createUpgradedEmbedBlock( {\n\t\t\t\tattributes: { url: newSrc },\n\t\t\t} );\n\t\t\tif ( undefined !== embedBlock && onReplace ) {\n\t\t\t\tonReplace( embedBlock );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetAttributes( { src: newSrc, id: undefined, blob: undefined } );\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\tfunction getAutoplayHelp( checked ) {\n\t\treturn checked\n\t\t\t? __( 'Autoplay may cause usability issues for some users.' )\n\t\t\t: null;\n\t}\n\n\tfunction onSelectAudio( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\t// In this case there was an error and we should continue in the editing state\n\t\t\t// previous attributes should be removed because they may be temporary blob urls.\n\t\t\tsetAttributes( {\n\t\t\t\tsrc: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t\tblob: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\n\t\t\treturn;\n\t\t}\n\n\t\t// Sets the block's attribute and updates the edit component from the\n\t\t// selected media, then switches off the editing UI.\n\t\tsetAttributes( {\n\t\t\tblob: undefined,\n\t\t\tsrc: media.url,\n\t\t\tid: media.id,\n\t\t\tcaption: media.caption,\n\t\t} );\n\t\tsetTemporaryURL();\n\t}\n\n\tconst classes = clsx( className, {\n\t\t'is-transient': !! temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t} );\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tif ( ! src && ! temporaryURL ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectAudio }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\taccept=\"audio/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ attributes }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ isSingleSelected && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\tmediaURL={ src }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"audio/*\"\n\t\t\t\t\t\tonSelect={ onSelectAudio }\n\t\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\tonReset={ () => onSelectAudio( undefined ) }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tautoplay: false,\n\t\t\t\t\t\t\tloop: false,\n\t\t\t\t\t\t\tpreload: undefined,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => !! autoplay }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tautoplay: false,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\t\t\tonChange={ toggleAttribute( 'autoplay' ) }\n\t\t\t\t\t\t\tchecked={ !! autoplay }\n\t\t\t\t\t\t\thelp={ getAutoplayHelp }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => !! loop }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tloop: false,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\t\t\tonChange={ toggleAttribute( 'loop' ) }\n\t\t\t\t\t\t\tchecked={ !! loop }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => !! preload }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tpreload: undefined,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Preload',\n\t\t\t\t\t\t\t\t'noun; Audio block parameter'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tvalue={ preload || '' }\n\t\t\t\t\t\t\t// `undefined` is required for the preload attribute to be unset.\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tpreload: value || undefined,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t\t{ value: '', label: __( 'Browser default' ) },\n\t\t\t\t\t\t\t\t{ value: 'auto', label: __( 'Auto' ) },\n\t\t\t\t\t\t\t\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: 'none',\n\t\t\t\t\t\t\t\t\tlabel: _x( 'None', 'Preload value' ),\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</ToolsPanelItem>\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /*\n\t\t\t\tDisable the audio tag if the block is not selected\n\t\t\t\tso the user clicking on it won't play the\n\t\t\t\tfile or change the position slider when the controls are enabled.\n\t\t\t\t*/ }\n\t\t\t\t<Disabled isDisabled={ ! isSingleSelected }>\n\t\t\t\t\t<audio controls=\"controls\" src={ src ?? temporaryURL } />\n\t\t\t\t</Disabled>\n\t\t\t\t{ !! temporaryURL && <Spinner /> }\n\t\t\t\t<Caption\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tlabel={ __( 'Audio caption text' ) }\n\t\t\t\t\tshowToolbarButton={ isSingleSelected }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n\nexport default AudioEdit;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","isBlobURL","Disabled","SelectControl","Spinner","ToggleControl","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","BlockControls","BlockIcon","InspectorControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","useBlockEditingMode","__","_x","useDispatch","audio","icon","store","noticesStore","useState","createUpgradedEmbedBlock","useUploadMediaFromBlobURL","useToolsPanelDropdownMenuProps","Caption","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ALLOWED_MEDIA_TYPES","AudioEdit","attributes","className","setAttributes","onReplace","isSelected","isSingleSelected","insertBlocksAfter","id","autoplay","loop","preload","src","temporaryURL","setTemporaryURL","blob","blockEditingMode","hasNonContentControls","url","allowedTypes","onChange","onSelectAudio","onError","onUploadError","toggleAttribute","attribute","newValue","onSelectURL","newSrc","embedBlock","undefined","createErrorNotice","message","type","getAutoplayHelp","checked","media","caption","classes","blockProps","dropdownMenuProps","children","onSelect","accept","value","group","mediaId","mediaURL","onReset","label","resetAll","isShownByDefault","hasValue","onDeselect","__nextHasNoMarginBottom","help","__next40pxDefaultSize","options","isDisabled","controls","showToolbarButton"],"sources":["@wordpress/block-library/src/audio/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tDisabled,\n\tSelectControl,\n\tSpinner,\n\tToggleControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { __, _x } from '@wordpress/i18n';\nimport { useDispatch } from '@wordpress/data';\nimport { audio as icon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport {\n\tuseUploadMediaFromBlobURL,\n\tuseToolsPanelDropdownMenuProps,\n} from '../utils/hooks';\nimport { Caption } from '../utils/caption';\n\nconst ALLOWED_MEDIA_TYPES = [ 'audio' ];\n\nfunction AudioEdit( {\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tonReplace,\n\tisSelected: isSingleSelected,\n\tinsertBlocksAfter,\n} ) {\n\tconst { id, autoplay, loop, preload, src } = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\tconst blockEditingMode = useBlockEditingMode();\n\tconst hasNonContentControls = blockEditingMode === 'default';\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\tonChange: onSelectAudio,\n\t\tonError: onUploadError,\n\t} );\n\n\tfunction toggleAttribute( attribute ) {\n\t\treturn ( newValue ) => {\n\t\t\tsetAttributes( { [ attribute ]: newValue } );\n\t\t};\n\t}\n\n\tfunction onSelectURL( newSrc ) {\n\t\t// Set the block's src from the edit component's state, and switch off\n\t\t// the editing UI.\n\t\tif ( newSrc !== src ) {\n\t\t\t// Check if there's an embed block that handles this URL.\n\t\t\tconst embedBlock = createUpgradedEmbedBlock( {\n\t\t\t\tattributes: { url: newSrc },\n\t\t\t} );\n\t\t\tif ( undefined !== embedBlock && onReplace ) {\n\t\t\t\tonReplace( embedBlock );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetAttributes( { src: newSrc, id: undefined, blob: undefined } );\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\tfunction getAutoplayHelp( checked ) {\n\t\treturn checked\n\t\t\t? __( 'Autoplay may cause usability issues for some users.' )\n\t\t\t: null;\n\t}\n\n\tfunction onSelectAudio( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\t// In this case there was an error and we should continue in the editing state\n\t\t\t// previous attributes should be removed because they may be temporary blob urls.\n\t\t\tsetAttributes( {\n\t\t\t\tsrc: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t\tblob: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\n\t\t\treturn;\n\t\t}\n\n\t\t// Sets the block's attribute and updates the edit component from the\n\t\t// selected media, then switches off the editing UI.\n\t\tsetAttributes( {\n\t\t\tblob: undefined,\n\t\t\tsrc: media.url,\n\t\t\tid: media.id,\n\t\t\tcaption: media.caption,\n\t\t} );\n\t\tsetTemporaryURL();\n\t}\n\n\tconst classes = clsx( className, {\n\t\t'is-transient': !! temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t} );\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tif ( ! src && ! temporaryURL ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectAudio }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\taccept=\"audio/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ attributes }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ isSingleSelected && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\tmediaURL={ src }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"audio/*\"\n\t\t\t\t\t\tonSelect={ onSelectAudio }\n\t\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\tonReset={ () => onSelectAudio( undefined ) }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tautoplay: false,\n\t\t\t\t\t\t\tloop: false,\n\t\t\t\t\t\t\tpreload: undefined,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => !! autoplay }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tautoplay: false,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\t\t\tonChange={ toggleAttribute( 'autoplay' ) }\n\t\t\t\t\t\t\tchecked={ !! autoplay }\n\t\t\t\t\t\t\thelp={ getAutoplayHelp }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => !! loop }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tloop: false,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\t\t\tonChange={ toggleAttribute( 'loop' ) }\n\t\t\t\t\t\t\tchecked={ !! loop }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => !! preload }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tpreload: undefined,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Preload',\n\t\t\t\t\t\t\t\t'noun; Audio block parameter'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tvalue={ preload || '' }\n\t\t\t\t\t\t\t// `undefined` is required for the preload attribute to be unset.\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tpreload: value || undefined,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t\t{ value: '', label: __( 'Browser default' ) },\n\t\t\t\t\t\t\t\t{ value: 'auto', label: __( 'Auto' ) },\n\t\t\t\t\t\t\t\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: 'none',\n\t\t\t\t\t\t\t\t\tlabel: _x( 'None', 'Preload value' ),\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</ToolsPanelItem>\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /*\n\t\t\t\tDisable the audio tag if the block is not selected\n\t\t\t\tso the user clicking on it won't play the\n\t\t\t\tfile or change the position slider when the controls are enabled.\n\t\t\t\t*/ }\n\t\t\t\t<Disabled isDisabled={ ! isSingleSelected }>\n\t\t\t\t\t<audio controls=\"controls\" src={ src ?? temporaryURL } />\n\t\t\t\t</Disabled>\n\t\t\t\t{ !! temporaryURL && <Spinner /> }\n\t\t\t\t<Caption\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tlabel={ __( 'Audio caption text' ) }\n\t\t\t\t\tshowToolbarButton={\n\t\t\t\t\t\tisSingleSelected && hasNonContentControls\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n\nexport default AudioEdit;\n"],"mappings":"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","ignoreList":[]}
@@ -86,7 +86,8 @@ const metadata = {
86
86
  caption: {
87
87
  type: "rich-text",
88
88
  source: "rich-text",
89
- selector: ".blocks-gallery-caption"
89
+ selector: ".blocks-gallery-caption",
90
+ role: "content"
90
91
  },
91
92
  imageCrop: {
92
93
  type: "boolean",
@@ -1 +1 @@
1
- {"version":3,"names":["gallery","icon","initBlock","deprecated","edit","metadata","$schema","apiVersion","name","title","category","allowedBlocks","description","keywords","textdomain","attributes","images","type","source","selector","query","url","attribute","fullUrl","link","alt","id","caption","ids","items","shortCodeTransforms","columns","minimum","maximum","imageCrop","randomOrder","fixedHeight","linkTarget","linkTo","sizeSlug","allowResize","providesContext","supports","anchor","align","__experimentalBorder","radius","color","width","style","__experimentalDefaultControls","html","units","spacing","margin","padding","blockGap","__experimentalSkipSerialization","text","background","gradients","layout","allowSwitching","allowInheriting","allowEditing","interactivity","clientNavigation","editorStyle","save","transforms","settings","example","innerBlocks","init"],"sources":["@wordpress/block-library/src/gallery/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { gallery as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcolumns: 2,\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/image',\n\t\t\t\tattributes: {\n\t\t\t\t\turl: 'https://s.w.org/images/core/5.3/Glacial_lakes%2C_Bhutan.jpg',\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/image',\n\t\t\t\tattributes: {\n\t\t\t\t\turl: 'https://s.w.org/images/core/5.3/Sediment_off_the_Yucatan_Peninsula.jpg',\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["gallery","icon","initBlock","deprecated","edit","metadata","$schema","apiVersion","name","title","category","allowedBlocks","description","keywords","textdomain","attributes","images","type","source","selector","query","url","attribute","fullUrl","link","alt","id","caption","ids","items","shortCodeTransforms","columns","minimum","maximum","role","imageCrop","randomOrder","fixedHeight","linkTarget","linkTo","sizeSlug","allowResize","providesContext","supports","anchor","align","__experimentalBorder","radius","color","width","style","__experimentalDefaultControls","html","units","spacing","margin","padding","blockGap","__experimentalSkipSerialization","text","background","gradients","layout","allowSwitching","allowInheriting","allowEditing","interactivity","clientNavigation","editorStyle","save","transforms","settings","example","innerBlocks","init"],"sources":["@wordpress/block-library/src/gallery/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { gallery as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcolumns: 2,\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/image',\n\t\t\t\tattributes: {\n\t\t\t\t\turl: 'https://s.w.org/images/core/5.3/Glacial_lakes%2C_Bhutan.jpg',\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/image',\n\t\t\t\tattributes: {\n\t\t\t\t\turl: 'https://s.w.org/images/core/5.3/Sediment_off_the_Yucatan_Peninsula.jpg',\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"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","ignoreList":[]}
@@ -7,43 +7,31 @@ const example = {
7
7
  innerBlocks: [{
8
8
  name: 'core/paragraph',
9
9
  attributes: {
10
- customTextColor: '#cf2e2e',
11
- fontSize: 'large',
12
10
  content: __('One.')
13
11
  }
14
12
  }, {
15
13
  name: 'core/paragraph',
16
14
  attributes: {
17
- customTextColor: '#ff6900',
18
- fontSize: 'large',
19
15
  content: __('Two.')
20
16
  }
21
17
  }, {
22
18
  name: 'core/paragraph',
23
19
  attributes: {
24
- customTextColor: '#fcb900',
25
- fontSize: 'large',
26
20
  content: __('Three.')
27
21
  }
28
22
  }, {
29
23
  name: 'core/paragraph',
30
24
  attributes: {
31
- customTextColor: '#00d084',
32
- fontSize: 'large',
33
25
  content: __('Four.')
34
26
  }
35
27
  }, {
36
28
  name: 'core/paragraph',
37
29
  attributes: {
38
- customTextColor: '#0693e3',
39
- fontSize: 'large',
40
30
  content: __('Five.')
41
31
  }
42
32
  }, {
43
33
  name: 'core/paragraph',
44
34
  attributes: {
45
- customTextColor: '#9b51e0',
46
- fontSize: 'large',
47
35
  content: __('Six.')
48
36
  }
49
37
  }]
@@ -1 +1 @@
1
- {"version":3,"names":["__","_x","group","row","stack","grid","example","innerBlocks","name","attributes","customTextColor","fontSize","content","variations","title","description","layout","type","isDefault","scope","isActive","blockAttributes","icon","flexWrap","orientation"],"sources":["@wordpress/block-library/src/group/variations.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { group, row, stack, grid } from '@wordpress/icons';\n\nconst example = {\n\tinnerBlocks: [\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcustomTextColor: '#cf2e2e',\n\t\t\t\tfontSize: 'large',\n\t\t\t\tcontent: __( 'One.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcustomTextColor: '#ff6900',\n\t\t\t\tfontSize: 'large',\n\t\t\t\tcontent: __( 'Two.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcustomTextColor: '#fcb900',\n\t\t\t\tfontSize: 'large',\n\t\t\t\tcontent: __( 'Three.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcustomTextColor: '#00d084',\n\t\t\t\tfontSize: 'large',\n\t\t\t\tcontent: __( 'Four.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcustomTextColor: '#0693e3',\n\t\t\t\tfontSize: 'large',\n\t\t\t\tcontent: __( 'Five.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcustomTextColor: '#9b51e0',\n\t\t\t\tfontSize: 'large',\n\t\t\t\tcontent: __( 'Six.' ),\n\t\t\t},\n\t\t},\n\t],\n};\n\nconst variations = [\n\t{\n\t\tname: 'group',\n\t\ttitle: __( 'Group' ),\n\t\tdescription: __( 'Gather blocks in a container.' ),\n\t\tattributes: { layout: { type: 'constrained' } },\n\t\tisDefault: true,\n\t\tscope: [ 'block', 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\t! blockAttributes.layout ||\n\t\t\t! blockAttributes.layout?.type ||\n\t\t\tblockAttributes.layout?.type === 'default' ||\n\t\t\tblockAttributes.layout?.type === 'constrained',\n\t\ticon: group,\n\t},\n\t{\n\t\tname: 'group-row',\n\t\ttitle: _x( 'Row', 'single horizontal line' ),\n\t\tdescription: __( 'Arrange blocks horizontally.' ),\n\t\tattributes: { layout: { type: 'flex', flexWrap: 'nowrap' } },\n\t\tscope: [ 'block', 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\tblockAttributes.layout?.type === 'flex' &&\n\t\t\t( ! blockAttributes.layout?.orientation ||\n\t\t\t\tblockAttributes.layout?.orientation === 'horizontal' ),\n\t\ticon: row,\n\t\texample,\n\t},\n\t{\n\t\tname: 'group-stack',\n\t\ttitle: __( 'Stack' ),\n\t\tdescription: __( 'Arrange blocks vertically.' ),\n\t\tattributes: { layout: { type: 'flex', orientation: 'vertical' } },\n\t\tscope: [ 'block', 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\tblockAttributes.layout?.type === 'flex' &&\n\t\t\tblockAttributes.layout?.orientation === 'vertical',\n\t\ticon: stack,\n\t\texample,\n\t},\n\t{\n\t\tname: 'group-grid',\n\t\ttitle: __( 'Grid' ),\n\t\tdescription: __( 'Arrange blocks in a grid.' ),\n\t\tattributes: { layout: { type: 'grid' } },\n\t\tscope: [ 'block', 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\tblockAttributes.layout?.type === 'grid',\n\t\ticon: grid,\n\t\texample,\n\t},\n];\n\nexport default variations;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__","_x","group","row","stack","grid","example","innerBlocks","name","attributes","content","variations","title","description","layout","type","isDefault","scope","isActive","blockAttributes","icon","flexWrap","orientation"],"sources":["@wordpress/block-library/src/group/variations.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { group, row, stack, grid } from '@wordpress/icons';\n\nconst example = {\n\tinnerBlocks: [\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcontent: __( 'One.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcontent: __( 'Two.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcontent: __( 'Three.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcontent: __( 'Four.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcontent: __( 'Five.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcontent: __( 'Six.' ),\n\t\t\t},\n\t\t},\n\t],\n};\n\nconst variations = [\n\t{\n\t\tname: 'group',\n\t\ttitle: __( 'Group' ),\n\t\tdescription: __( 'Gather blocks in a container.' ),\n\t\tattributes: { layout: { type: 'constrained' } },\n\t\tisDefault: true,\n\t\tscope: [ 'block', 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\t! blockAttributes.layout ||\n\t\t\t! blockAttributes.layout?.type ||\n\t\t\tblockAttributes.layout?.type === 'default' ||\n\t\t\tblockAttributes.layout?.type === 'constrained',\n\t\ticon: group,\n\t},\n\t{\n\t\tname: 'group-row',\n\t\ttitle: _x( 'Row', 'single horizontal line' ),\n\t\tdescription: __( 'Arrange blocks horizontally.' ),\n\t\tattributes: { layout: { type: 'flex', flexWrap: 'nowrap' } },\n\t\tscope: [ 'block', 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\tblockAttributes.layout?.type === 'flex' &&\n\t\t\t( ! blockAttributes.layout?.orientation ||\n\t\t\t\tblockAttributes.layout?.orientation === 'horizontal' ),\n\t\ticon: row,\n\t\texample,\n\t},\n\t{\n\t\tname: 'group-stack',\n\t\ttitle: __( 'Stack' ),\n\t\tdescription: __( 'Arrange blocks vertically.' ),\n\t\tattributes: { layout: { type: 'flex', orientation: 'vertical' } },\n\t\tscope: [ 'block', 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\tblockAttributes.layout?.type === 'flex' &&\n\t\t\tblockAttributes.layout?.orientation === 'vertical',\n\t\ticon: stack,\n\t\texample,\n\t},\n\t{\n\t\tname: 'group-grid',\n\t\ttitle: __( 'Grid' ),\n\t\tdescription: __( 'Arrange blocks in a grid.' ),\n\t\tattributes: { layout: { type: 'grid' } },\n\t\tscope: [ 'block', 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\tblockAttributes.layout?.type === 'grid',\n\t\ticon: grid,\n\t\texample,\n\t},\n];\n\nexport default variations;\n"],"mappings":"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","ignoreList":[]}
@@ -571,7 +571,7 @@ export default function Image({
571
571
  };
572
572
  }, [arePatternOverridesEnabled, context, isSingleSelected, metadata?.bindings]);
573
573
  const showUrlInput = isSingleSelected && !isEditingImage && !lockHrefControls && !lockUrlControls;
574
- const showCoverControls = isSingleSelected && canInsertCover;
574
+ const showCoverControls = isSingleSelected && canInsertCover && !isContentOnlyMode;
575
575
  const showBlockControls = showUrlInput || allowCrop || showCoverControls;
576
576
  const mediaReplaceFlow = isSingleSelected && !isEditingImage && !lockUrlControls &&
577
577
  /*#__PURE__*/
@@ -1 +1 @@
1
- {"version":3,"names":["isBlobURL","ExternalLink","ResizableBox","Spinner","TextareaControl","TextControl","ToolbarButton","ToolbarGroup","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalUseCustomUnits","useCustomUnits","Placeholder","MenuItem","ToolbarItem","DropdownMenu","Popover","useMergeRefs","useResizeObserver","useViewportMatch","useSelect","useDispatch","BlockControls","InspectorControls","__experimentalImageURLInputUI","ImageURLInputUI","MediaReplaceFlow","store","blockEditorStore","useSettings","__experimentalImageEditor","ImageEditor","__experimentalUseBorderProps","useBorderProps","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","privateApis","blockEditorPrivateApis","BlockSettingsMenuControls","useCallback","useEffect","useMemo","useState","__","_x","sprintf","isRTL","getFilename","getBlockBindingsSource","switchToBlockType","crop","overlayText","upload","chevronDown","noticesStore","coreStore","unlock","createUpgradedEmbedBlock","isExternalImage","Caption","useToolsPanelDropdownMenuProps","MIN_SIZE","ALLOWED_MEDIA_TYPES","SIZED_LAYOUTS","DEFAULT_MEDIA_SIZE_SLUG","evalAspectRatio","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","DimensionsTool","ResolutionTool","scaleOptions","value","label","help","WRITEMODE_POPOVER_PROPS","placement","ImageWrapper","href","children","onClick","event","preventDefault","style","pointerEvents","cursor","display","ContentOnlyControls","attributes","setAttributes","lockAltControls","lockAltControlsMessage","lockTitleControls","lockTitleControlsMessage","popoverAnchor","setPopoverAnchor","isAltDialogOpen","setIsAltDialogOpen","isTitleDialogOpen","setIsTitleDialogOpen","ref","toggleProps","icon","description","popoverProps","onClose","anchor","offset","variant","className","alt","onChange","disabled","__nextHasNoMarginBottom","__next40pxDefaultSize","title","Image","temporaryURL","isSingleSelected","insertBlocksAfter","onReplace","onSelectImage","onSelectURL","onUploadError","context","clientId","blockEditingMode","parentLayoutType","maxContentWidth","url","align","id","rel","linkClass","linkDestination","width","height","aspectRatio","scale","linkTarget","sizeSlug","lightbox","metadata","imageElement","setImageElement","resizeDelta","setResizeDelta","pixelSize","setPixelSize","offsetTop","setOffsetTop","setResizeObserved","entry","box","borderBoxSize","inlineSize","blockSize","target","effectResizeableBoxPlacement","_imageElement$offsetT","setRefs","allowResize","image","select","getEntityRecord","canInsertCover","imageEditing","imageSizes","maxWidth","getBlockRootClientId","canInsertBlockType","getSettings","rootClientId","settings","getBlock","replaceBlocks","toggleSelection","createErrorNotice","createSuccessNotice","editEntityRecord","isLargeViewport","isWideAligned","includes","loadedNaturalWidth","loadedNaturalHeight","setLoadedNaturalSize","isEditingImage","setIsEditingImage","externalBlob","setExternalBlob","hasImageErrored","setHasImageErrored","hasNonContentControls","isContentOnlyMode","isResizable","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","mediaUpload","window","fetch","then","response","blob","catch","naturalWidth","naturalHeight","undefined","complete","onImageError","embedBlock","onImageLoad","onSetHref","props","onSetLightbox","enable","lightboxSetting","enabled","resetLightbox","allowEditing","onSetTitle","updateAlt","newAlt","updateImage","newSizeSlug","newUrl","uploadExternal","filesList","onFileChange","img","type","allowedTypes","onError","message","canEditImage","allowCrop","switchToCover","dimensionsUnitsOptions","availableUnits","showLightboxSetting","lightboxChecked","dropdownMenuProps","dimensionsControl","newAspectRatio","defaultAspectRatio","tools","newWidth","newHeight","newScale","defaultScale","unitsOptions","resetAll","sizeControls","arePatternOverridesEnabled","bindings","__default","source","lockUrlControls","lockHrefControls","lockCaption","urlBinding","altBinding","titleBinding","hasParentPattern","urlBindingSource","altBindingSource","titleBindingSource","canUserEditValue","args","showUrlInput","showCoverControls","showBlockControls","mediaReplaceFlow","group","mediaId","mediaURL","accept","onSelect","onReset","controls","onChangeUrl","mediaUrl","mediaLink","link","lightboxEnabled","isShownByDefault","hasValue","onDeselect","readOnly","length","defaultValue","options","filename","defaultedAlt","borderProps","shadowProps","isRounded","postType","postId","queryId","isDescendentOfQueryLoop","Number","isFinite","withIllustration","src","onLoad","objectFit","onSaveImage","imageAttributes","onFinishEditing","resizableBox","numericRatio","customRatio","naturalRatio","ratio","minWidth","minHeight","maxWidthBuffer","maxResizeWidth","showRightHandle","showLeftHandle","position","inset","size","maxHeight","lockAspectRatio","top","right","bottom","left","onResizeStart","onResize","direction","elt","delta","onResizeStop","current","Math","abs","offsetWidth","String","resizeRatio","setPostFeatureImage","featured_media","featuredImageControl","selectedClientIds","isSelected","showToolbarButton"],"sources":["@wordpress/block-library/src/image/image.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tExternalLink,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tTextControl,\n\tToolbarButton,\n\tToolbarGroup,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\tPlaceholder,\n\tMenuItem,\n\tToolbarItem,\n\tDropdownMenu,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tuseMergeRefs,\n\tuseResizeObserver,\n\tuseViewportMatch,\n} from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\t__experimentalImageURLInputUI as ImageURLInputUI,\n\tMediaReplaceFlow,\n\tstore as blockEditorStore,\n\tuseSettings,\n\t__experimentalImageEditor as ImageEditor,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tprivateApis as blockEditorPrivateApis,\n\tBlockSettingsMenuControls,\n} from '@wordpress/block-editor';\nimport { useCallback, useEffect, useMemo, useState } from '@wordpress/element';\nimport { __, _x, sprintf, isRTL } from '@wordpress/i18n';\nimport { getFilename } from '@wordpress/url';\nimport { getBlockBindingsSource, switchToBlockType } from '@wordpress/blocks';\nimport { crop, overlayText, upload, chevronDown } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport { isExternalImage } from './edit';\nimport { Caption } from '../utils/caption';\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\nimport {\n\tMIN_SIZE,\n\tALLOWED_MEDIA_TYPES,\n\tSIZED_LAYOUTS,\n\tDEFAULT_MEDIA_SIZE_SLUG,\n} from './constants';\nimport { evalAspectRatio } from './utils';\n\nconst { DimensionsTool, ResolutionTool } = unlock( blockEditorPrivateApis );\n\nconst scaleOptions = [\n\t{\n\t\tvalue: 'cover',\n\t\tlabel: _x( 'Cover', 'Scale option for dimensions control' ),\n\t\thelp: __( 'Image covers the space evenly.' ),\n\t},\n\t{\n\t\tvalue: 'contain',\n\t\tlabel: _x( 'Contain', 'Scale option for dimensions control' ),\n\t\thelp: __( 'Image is contained without distortion.' ),\n\t},\n];\n\nconst WRITEMODE_POPOVER_PROPS = {\n\tplacement: 'bottom-start',\n};\n\n// If the image has a href, wrap in an <a /> tag to trigger any inherited link element styles.\nconst ImageWrapper = ( { href, children } ) => {\n\tif ( ! href ) {\n\t\treturn children;\n\t}\n\treturn (\n\t\t<a\n\t\t\thref={ href }\n\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\taria-disabled\n\t\t\tstyle={ {\n\t\t\t\t// When the Image block is linked,\n\t\t\t\t// it's wrapped with a disabled <a /> tag.\n\t\t\t\t// Restore cursor style so it doesn't appear 'clickable'\n\t\t\t\t// and remove pointer events. Safari needs the display property.\n\t\t\t\tpointerEvents: 'none',\n\t\t\t\tcursor: 'default',\n\t\t\t\tdisplay: 'inline',\n\t\t\t} }\n\t\t>\n\t\t\t{ children }\n\t\t</a>\n\t);\n};\n\nfunction ContentOnlyControls( {\n\tattributes,\n\tsetAttributes,\n\tlockAltControls,\n\tlockAltControlsMessage,\n\tlockTitleControls,\n\tlockTitleControlsMessage,\n} ) {\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\tconst [ isAltDialogOpen, setIsAltDialogOpen ] = useState( false );\n\tconst [ isTitleDialogOpen, setIsTitleDialogOpen ] = useState( false );\n\treturn (\n\t\t<>\n\t\t\t<ToolbarItem ref={ setPopoverAnchor }>\n\t\t\t\t{ ( toggleProps ) => (\n\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\ticon={ chevronDown }\n\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\tlabel={ __( 'More' ) }\n\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\t...toggleProps,\n\t\t\t\t\t\t\tdescription: __( 'Displays more controls.' ),\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tpopoverProps={ WRITEMODE_POPOVER_PROPS }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetIsAltDialogOpen( true );\n\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ _x(\n\t\t\t\t\t\t\t\t\t\t'Alternative text',\n\t\t\t\t\t\t\t\t\t\t'Alternative text for an image. Block toolbar label, a low character count is preferred.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetIsTitleDialogOpen( true );\n\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Title text' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</DropdownMenu>\n\t\t\t\t) }\n\t\t\t</ToolbarItem>\n\t\t\t{ isAltDialogOpen && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"bottom-start\"\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tonClose={ () => setIsAltDialogOpen( false ) }\n\t\t\t\t\toffset={ 13 }\n\t\t\t\t\tvariant=\"toolbar\"\n\t\t\t\t>\n\t\t\t\t\t<div className=\"wp-block-image__toolbar_content_textarea__container\">\n\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\tclassName=\"wp-block-image__toolbar_content_textarea\"\n\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\tvalue={ attributes.alt || '' }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { alt: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdisabled={ lockAltControls }\n\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\tlockAltControls ? (\n\t\t\t\t\t\t\t\t\t<>{ lockAltControlsMessage }</>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\thref={\n\t\t\t\t\t\t\t\t\t\t\t\t// translators: Localized tutorial, if one exists. W3C Web Accessibility Initiative link has list of existing translations.\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'https://www.w3.org/WAI/tutorials/images/decision-tree/'\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t{ __( 'Leave empty if decorative.' ) }\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t\t{ isTitleDialogOpen && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"bottom-start\"\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tonClose={ () => setIsTitleDialogOpen( false ) }\n\t\t\t\t\toffset={ 13 }\n\t\t\t\t\tvariant=\"toolbar\"\n\t\t\t\t>\n\t\t\t\t\t<div className=\"wp-block-image__toolbar_content_textarea__container\">\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tclassName=\"wp-block-image__toolbar_content_textarea\"\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\t\t\tvalue={ attributes.title || '' }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\ttitle: value,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdisabled={ lockTitleControls }\n\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\tlockTitleControls ? (\n\t\t\t\t\t\t\t\t\t<>{ lockTitleControlsMessage }</>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'Describe the role of this image on the page.'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/TR/html52/dom.html#the-title-attribute\">\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'(Note: many devices and browsers do not display this text.)'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default function Image( {\n\ttemporaryURL,\n\tattributes,\n\tsetAttributes,\n\tisSingleSelected,\n\tinsertBlocksAfter,\n\tonReplace,\n\tonSelectImage,\n\tonSelectURL,\n\tonUploadError,\n\tcontext,\n\tclientId,\n\tblockEditingMode,\n\tparentLayoutType,\n\tmaxContentWidth,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\talign,\n\t\tid,\n\t\thref,\n\t\trel,\n\t\tlinkClass,\n\t\tlinkDestination,\n\t\ttitle,\n\t\twidth,\n\t\theight,\n\t\taspectRatio,\n\t\tscale,\n\t\tlinkTarget,\n\t\tsizeSlug,\n\t\tlightbox,\n\t\tmetadata,\n\t} = attributes;\n\tconst [ imageElement, setImageElement ] = useState();\n\tconst [ resizeDelta, setResizeDelta ] = useState( null );\n\tconst [ pixelSize, setPixelSize ] = useState( {} );\n\tconst [ offsetTop, setOffsetTop ] = useState( 0 );\n\tconst setResizeObserved = useResizeObserver( ( [ entry ] ) => {\n\t\tif ( ! resizeDelta ) {\n\t\t\tconst [ box ] = entry.borderBoxSize;\n\t\t\tsetPixelSize( { width: box.inlineSize, height: box.blockSize } );\n\t\t}\n\t\t// This is usually 0 unless the image height is less than the line-height.\n\t\tsetOffsetTop( entry.target.offsetTop );\n\t} );\n\tconst effectResizeableBoxPlacement = useCallback( () => {\n\t\tsetOffsetTop( imageElement?.offsetTop ?? 0 );\n\t}, [ imageElement ] );\n\tconst setRefs = useMergeRefs( [ setImageElement, setResizeObserved ] );\n\tconst { allowResize = true } = context;\n\n\tconst image = useSelect(\n\t\t( select ) =>\n\t\t\tid && isSingleSelected\n\t\t\t\t? select( coreStore ).getEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t'attachment',\n\t\t\t\t\t\tid,\n\t\t\t\t\t\t{ context: 'view' }\n\t\t\t\t )\n\t\t\t\t: null,\n\t\t[ id, isSingleSelected ]\n\t);\n\n\tconst { canInsertCover, imageEditing, imageSizes, maxWidth } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId, canInsertBlockType, getSettings } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\tconst settings = getSettings();\n\n\t\t\treturn {\n\t\t\t\timageEditing: settings.imageEditing,\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tmaxWidth: settings.maxWidth,\n\t\t\t\tcanInsertCover: canInsertBlockType(\n\t\t\t\t\t'core/cover',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { getBlock, getSettings } = useSelect( blockEditorStore );\n\n\tconst { replaceBlocks, toggleSelection } = useDispatch( blockEditorStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = [ 'wide', 'full' ].includes( align );\n\tconst [\n\t\t{ loadedNaturalWidth, loadedNaturalHeight },\n\t\tsetLoadedNaturalSize,\n\t] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst [ externalBlob, setExternalBlob ] = useState();\n\tconst [ hasImageErrored, setHasImageErrored ] = useState( false );\n\tconst hasNonContentControls = blockEditingMode === 'default';\n\tconst isContentOnlyMode = blockEditingMode === 'contentOnly';\n\tconst isResizable =\n\t\tallowResize &&\n\t\thasNonContentControls &&\n\t\t! isWideAligned &&\n\t\tisLargeViewport;\n\tconst imageSizeOptions = imageSizes\n\t\t.filter(\n\t\t\t( { slug } ) => image?.media_details?.sizes?.[ slug ]?.source_url\n\t\t)\n\t\t.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\n\t// If an image is externally hosted, try to fetch the image data. This may\n\t// fail if the image host doesn't allow CORS with the domain. If it works,\n\t// we can enable a button in the toolbar to upload the image.\n\tuseEffect( () => {\n\t\tif (\n\t\t\t! isExternalImage( id, url ) ||\n\t\t\t! isSingleSelected ||\n\t\t\t! getSettings().mediaUpload\n\t\t) {\n\t\t\tsetExternalBlob();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( externalBlob ) {\n\t\t\treturn;\n\t\t}\n\n\t\twindow\n\t\t\t// Avoid cache, which seems to help avoid CORS problems.\n\t\t\t.fetch( url.includes( '?' ) ? url : url + '?' )\n\t\t\t.then( ( response ) => response.blob() )\n\t\t\t.then( ( blob ) => setExternalBlob( blob ) )\n\t\t\t// Do nothing, cannot upload.\n\t\t\t.catch( () => {} );\n\t}, [ id, url, isSingleSelected, externalBlob, getSettings ] );\n\n\t// Get naturalWidth and naturalHeight from image, and fall back to loaded natural\n\t// width and height. This resolves an issue in Safari where the loaded natural\n\t// width and height is otherwise lost when switching between alignments.\n\t// See: https://github.com/WordPress/gutenberg/pull/37210.\n\tconst { naturalWidth, naturalHeight } = useMemo( () => {\n\t\treturn {\n\t\t\tnaturalWidth:\n\t\t\t\timageElement?.naturalWidth || loadedNaturalWidth || undefined,\n\t\t\tnaturalHeight:\n\t\t\t\timageElement?.naturalHeight || loadedNaturalHeight || undefined,\n\t\t};\n\t}, [ loadedNaturalWidth, loadedNaturalHeight, imageElement?.complete ] );\n\n\tfunction onImageError() {\n\t\tsetHasImageErrored( true );\n\n\t\t// Check if there's an embed block that handles this URL, e.g., instagram URL.\n\t\t// See: https://github.com/WordPress/gutenberg/pull/11472\n\t\tconst embedBlock = createUpgradedEmbedBlock( { attributes: { url } } );\n\t\tif ( undefined !== embedBlock ) {\n\t\t\tonReplace( embedBlock );\n\t\t}\n\t}\n\n\tfunction onImageLoad( event ) {\n\t\tsetHasImageErrored( false );\n\t\tsetLoadedNaturalSize( {\n\t\t\tloadedNaturalWidth: event.target?.naturalWidth,\n\t\t\tloadedNaturalHeight: event.target?.naturalHeight,\n\t\t} );\n\t}\n\n\tfunction onSetHref( props ) {\n\t\tsetAttributes( props );\n\t}\n\n\tfunction onSetLightbox( enable ) {\n\t\tif ( enable && ! lightboxSetting?.enabled ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: true },\n\t\t\t} );\n\t\t} else if ( ! enable && lightboxSetting?.enabled ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: false },\n\t\t\t} );\n\t\t} else {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: undefined,\n\t\t\t} );\n\t\t}\n\t}\n\n\tfunction resetLightbox() {\n\t\t// When deleting a link from an image while lightbox settings\n\t\t// are enabled by default, we should disable the lightbox,\n\t\t// otherwise the resulting UX looks like a mistake.\n\t\t// See https://github.com/WordPress/gutenberg/pull/59890/files#r1532286123.\n\t\tif ( lightboxSetting?.enabled && lightboxSetting?.allowEditing ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: false },\n\t\t\t} );\n\t\t} else {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: undefined,\n\t\t\t} );\n\t\t}\n\t}\n\n\tfunction onSetTitle( value ) {\n\t\t// This is the HTML title attribute, separate from the media object\n\t\t// title.\n\t\tsetAttributes( { title: value } );\n\t}\n\n\tfunction updateAlt( newAlt ) {\n\t\tsetAttributes( { alt: newAlt } );\n\t}\n\n\tfunction updateImage( newSizeSlug ) {\n\t\tconst newUrl = image?.media_details?.sizes?.[ newSizeSlug ]?.source_url;\n\t\tif ( ! newUrl ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\turl: newUrl,\n\t\t\tsizeSlug: newSizeSlug,\n\t\t} );\n\t}\n\n\tfunction uploadExternal() {\n\t\tconst { mediaUpload } = getSettings();\n\t\tif ( ! mediaUpload ) {\n\t\t\treturn;\n\t\t}\n\t\tmediaUpload( {\n\t\t\tfilesList: [ externalBlob ],\n\t\t\tonFileChange( [ img ] ) {\n\t\t\t\tonSelectImage( img );\n\n\t\t\t\tif ( isBlobURL( img.url ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tsetExternalBlob();\n\t\t\t\tcreateSuccessNotice( __( 'Image uploaded.' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\t},\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tonError( message ) {\n\t\t\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\t\t},\n\t\t} );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSingleSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSingleSelected ] );\n\n\tconst canEditImage = id && naturalWidth && naturalHeight && imageEditing;\n\tconst allowCrop =\n\t\tisSingleSelected &&\n\t\tcanEditImage &&\n\t\t! isEditingImage &&\n\t\t! isContentOnlyMode;\n\n\tfunction switchToCover() {\n\t\treplaceBlocks(\n\t\t\tclientId,\n\t\t\tswitchToBlockType( getBlock( clientId ), 'core/cover' )\n\t\t);\n\t}\n\n\t// TODO: Can allow more units after figuring out how they should interact\n\t// with the ResizableBox and ImageEditor components. Calculations later on\n\t// for those components are currently assuming px units.\n\tconst dimensionsUnitsOptions = useCustomUnits( {\n\t\tavailableUnits: [ 'px' ],\n\t} );\n\n\tconst [ lightboxSetting ] = useSettings( 'lightbox' );\n\n\tconst showLightboxSetting =\n\t\t// If a block-level override is set, we should give users the option to\n\t\t// remove that override, even if the lightbox UI is disabled in the settings.\n\t\t( !! lightbox && lightbox?.enabled !== lightboxSetting?.enabled ) ||\n\t\tlightboxSetting?.allowEditing;\n\n\tconst lightboxChecked =\n\t\t!! lightbox?.enabled || ( ! lightbox && !! lightboxSetting?.enabled );\n\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tconst dimensionsControl =\n\t\tisResizable &&\n\t\t( SIZED_LAYOUTS.includes( parentLayoutType ) ? (\n\t\t\t<DimensionsTool\n\t\t\t\tvalue={ { aspectRatio } }\n\t\t\t\tonChange={ ( { aspectRatio: newAspectRatio } ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t\t\t\tscale: 'cover',\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tdefaultAspectRatio=\"auto\"\n\t\t\t\ttools={ [ 'aspectRatio' ] }\n\t\t\t/>\n\t\t) : (\n\t\t\t<DimensionsTool\n\t\t\t\tvalue={ { width, height, scale, aspectRatio } }\n\t\t\t\tonChange={ ( {\n\t\t\t\t\twidth: newWidth,\n\t\t\t\t\theight: newHeight,\n\t\t\t\t\tscale: newScale,\n\t\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t\t} ) => {\n\t\t\t\t\t// Rebuilding the object forces setting `undefined`\n\t\t\t\t\t// for values that are removed since setAttributes\n\t\t\t\t\t// doesn't do anything with keys that aren't set.\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t// CSS includes `height: auto`, but we need\n\t\t\t\t\t\t// `width: auto` to fix the aspect ratio when\n\t\t\t\t\t\t// only height is set due to the width and\n\t\t\t\t\t\t// height attributes set via the server.\n\t\t\t\t\t\twidth: ! newWidth && newHeight ? 'auto' : newWidth,\n\t\t\t\t\t\theight: newHeight,\n\t\t\t\t\t\tscale: newScale,\n\t\t\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tdefaultScale=\"cover\"\n\t\t\t\tdefaultAspectRatio=\"auto\"\n\t\t\t\tscaleOptions={ scaleOptions }\n\t\t\t\tunitsOptions={ dimensionsUnitsOptions }\n\t\t\t/>\n\t\t) );\n\n\tconst resetAll = () => {\n\t\tsetAttributes( {\n\t\t\talt: undefined,\n\t\t\twidth: undefined,\n\t\t\theight: undefined,\n\t\t\tscale: undefined,\n\t\t\taspectRatio: undefined,\n\t\t\tlightbox: undefined,\n\t\t} );\n\t\tupdateImage( DEFAULT_MEDIA_SIZE_SLUG );\n\t};\n\n\tconst sizeControls = (\n\t\t<InspectorControls>\n\t\t\t<ToolsPanel\n\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\tresetAll={ resetAll }\n\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t>\n\t\t\t\t{ dimensionsControl }\n\t\t\t</ToolsPanel>\n\t\t</InspectorControls>\n\t);\n\n\tconst arePatternOverridesEnabled =\n\t\tmetadata?.bindings?.__default?.source === 'core/pattern-overrides';\n\n\tconst {\n\t\tlockUrlControls = false,\n\t\tlockHrefControls = false,\n\t\tlockAltControls = false,\n\t\tlockAltControlsMessage,\n\t\tlockTitleControls = false,\n\t\tlockTitleControlsMessage,\n\t\tlockCaption = false,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isSingleSelected ) {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t\tconst {\n\t\t\t\turl: urlBinding,\n\t\t\t\talt: altBinding,\n\t\t\t\ttitle: titleBinding,\n\t\t\t} = metadata?.bindings || {};\n\t\t\tconst hasParentPattern = !! context[ 'pattern/overrides' ];\n\t\t\tconst urlBindingSource = getBlockBindingsSource(\n\t\t\t\turlBinding?.source\n\t\t\t);\n\t\t\tconst altBindingSource = getBlockBindingsSource(\n\t\t\t\taltBinding?.source\n\t\t\t);\n\t\t\tconst titleBindingSource = getBlockBindingsSource(\n\t\t\t\ttitleBinding?.source\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tlockUrlControls:\n\t\t\t\t\t!! urlBinding &&\n\t\t\t\t\t! urlBindingSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: urlBinding?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockHrefControls:\n\t\t\t\t\t// Disable editing the link of the URL if the image is inside a pattern instance.\n\t\t\t\t\t// This is a temporary solution until we support overriding the link on the frontend.\n\t\t\t\t\thasParentPattern || arePatternOverridesEnabled,\n\t\t\t\tlockCaption:\n\t\t\t\t\t// Disable editing the caption if the image is inside a pattern instance.\n\t\t\t\t\t// This is a temporary solution until we support overriding the caption on the frontend.\n\t\t\t\t\thasParentPattern,\n\t\t\t\tlockAltControls:\n\t\t\t\t\t!! altBinding &&\n\t\t\t\t\t! altBindingSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: altBinding?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockAltControlsMessage: altBindingSource?.label\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the bindings source. */\n\t\t\t\t\t\t\t__( 'Connected to %s' ),\n\t\t\t\t\t\t\taltBindingSource.label\n\t\t\t\t\t )\n\t\t\t\t\t: __( 'Connected to dynamic data' ),\n\t\t\t\tlockTitleControls:\n\t\t\t\t\t!! titleBinding &&\n\t\t\t\t\t! titleBindingSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: titleBinding?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockTitleControlsMessage: titleBindingSource?.label\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the bindings source. */\n\t\t\t\t\t\t\t__( 'Connected to %s' ),\n\t\t\t\t\t\t\ttitleBindingSource.label\n\t\t\t\t\t )\n\t\t\t\t\t: __( 'Connected to dynamic data' ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tarePatternOverridesEnabled,\n\t\t\tcontext,\n\t\t\tisSingleSelected,\n\t\t\tmetadata?.bindings,\n\t\t]\n\t);\n\n\tconst showUrlInput =\n\t\tisSingleSelected &&\n\t\t! isEditingImage &&\n\t\t! lockHrefControls &&\n\t\t! lockUrlControls;\n\n\tconst showCoverControls = isSingleSelected && canInsertCover;\n\n\tconst showBlockControls = showUrlInput || allowCrop || showCoverControls;\n\n\tconst mediaReplaceFlow = isSingleSelected &&\n\t\t! isEditingImage &&\n\t\t! lockUrlControls && (\n\t\t\t// For contentOnly mode, put this button in its own area so it has borders around it.\n\t\t\t<BlockControls group={ isContentOnlyMode ? 'inline' : 'other' }>\n\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tname={ ! url ? __( 'Add image' ) : __( 'Replace' ) }\n\t\t\t\t\tonReset={ () => onSelectImage( undefined ) }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t);\n\n\tconst controls = (\n\t\t<>\n\t\t\t{ showBlockControls && (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t{ showUrlInput && (\n\t\t\t\t\t\t<ImageURLInputUI\n\t\t\t\t\t\t\turl={ href || '' }\n\t\t\t\t\t\t\tonChangeUrl={ onSetHref }\n\t\t\t\t\t\t\tlinkDestination={ linkDestination }\n\t\t\t\t\t\t\tmediaUrl={ ( image && image.source_url ) || url }\n\t\t\t\t\t\t\tmediaLink={ image && image.link }\n\t\t\t\t\t\t\tlinkTarget={ linkTarget }\n\t\t\t\t\t\t\tlinkClass={ linkClass }\n\t\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t\t\tshowLightboxSetting={ showLightboxSetting }\n\t\t\t\t\t\t\tlightboxEnabled={ lightboxChecked }\n\t\t\t\t\t\t\tonSetLightbox={ onSetLightbox }\n\t\t\t\t\t\t\tresetLightbox={ resetLightbox }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ allowCrop && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showCoverControls && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\ticon={ overlayText }\n\t\t\t\t\t\t\tlabel={ __( 'Add text over image' ) }\n\t\t\t\t\t\t\tonClick={ switchToCover }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ isSingleSelected && externalBlob && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ uploadExternal }\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tlabel={ __( 'Upload to Media Library' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ isContentOnlyMode && (\n\t\t\t\t// Add some extra controls for content attributes when content only mode is active.\n\t\t\t\t// With content only mode active, the inspector is hidden, so users need another way\n\t\t\t\t// to edit these attributes.\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t<ContentOnlyControls\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tlockAltControls={ lockAltControls }\n\t\t\t\t\t\tlockAltControlsMessage={ lockAltControlsMessage }\n\t\t\t\t\t\tlockTitleControls={ lockTitleControls }\n\t\t\t\t\t\tlockTitleControlsMessage={ lockTitleControlsMessage }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ resetAll }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t{ isSingleSelected && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\thasValue={ () => !! alt }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { alt: undefined } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\tvalue={ alt || '' }\n\t\t\t\t\t\t\t\tonChange={ updateAlt }\n\t\t\t\t\t\t\t\treadOnly={ lockAltControls }\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\tlockAltControls ? (\n\t\t\t\t\t\t\t\t\t\t<>{ lockAltControlsMessage }</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\t\thref={\n\t\t\t\t\t\t\t\t\t\t\t\t\t// translators: Localized tutorial, if one exists. W3C Web Accessibility Initiative link has list of existing translations.\n\t\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'https://www.w3.org/WAI/tutorials/images/decision-tree/'\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image.'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ dimensionsControl }\n\t\t\t\t\t{ !! imageSizeOptions.length && (\n\t\t\t\t\t\t<ResolutionTool\n\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\tdefaultValue={ DEFAULT_MEDIA_SIZE_SLUG }\n\t\t\t\t\t\t\tonChange={ updateImage }\n\t\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\tonChange={ onSetTitle }\n\t\t\t\t\treadOnly={ lockTitleControls }\n\t\t\t\t\thelp={\n\t\t\t\t\t\tlockTitleControls ? (\n\t\t\t\t\t\t\t<>{ lockTitleControlsMessage }</>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Describe the role of this image on the page.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/TR/html52/dom.html#the-title-attribute\">\n\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t'(Note: many devices and browsers do not display this text.)'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</ExternalLink>\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</InspectorControls>\n\t\t</>\n\t);\n\n\tconst filename = getFilename( url );\n\tlet defaultedAlt;\n\n\tif ( alt ) {\n\t\tdefaultedAlt = alt;\n\t} else if ( filename ) {\n\t\tdefaultedAlt = sprintf(\n\t\t\t/* translators: %s: file name */\n\t\t\t__( 'This image has an empty alt attribute; its file name is %s' ),\n\t\t\tfilename\n\t\t);\n\t} else {\n\t\tdefaultedAlt = __( 'This image has an empty alt attribute' );\n\t}\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\tconst isRounded = attributes.className?.includes( 'is-style-rounded' );\n\n\tconst { postType, postId, queryId } = context;\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\n\tlet img =\n\t\ttemporaryURL && hasImageErrored ? (\n\t\t\t// Show a placeholder during upload when the blob URL can't be loaded. This can\n\t\t\t// happen when the user uploads a HEIC image in a browser that doesn't support them.\n\t\t\t<Placeholder\n\t\t\t\tclassName=\"wp-block-image__placeholder\"\n\t\t\t\twithIllustration\n\t\t\t>\n\t\t\t\t<Spinner />\n\t\t\t</Placeholder>\n\t\t) : (\n\t\t\t// Disable reason: Image itself is not meant to be interactive, but\n\t\t\t// should direct focus to block.\n\t\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t\t<>\n\t\t\t\t<img\n\t\t\t\t\tsrc={ temporaryURL || url }\n\t\t\t\t\talt={ defaultedAlt }\n\t\t\t\t\tonError={ onImageError }\n\t\t\t\t\tonLoad={ onImageLoad }\n\t\t\t\t\tref={ setRefs }\n\t\t\t\t\tclassName={ borderProps.className }\n\t\t\t\t\twidth={ naturalWidth }\n\t\t\t\t\theight={ naturalHeight }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\taspectRatio,\n\t\t\t\t\t\t...( resizeDelta\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\twidth: pixelSize.width + resizeDelta.width,\n\t\t\t\t\t\t\t\t\theight:\n\t\t\t\t\t\t\t\t\t\tpixelSize.height + resizeDelta.height,\n\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t: { width, height } ),\n\t\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...shadowProps.style,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ temporaryURL && <Spinner /> }\n\t\t\t</>\n\t\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t);\n\n\tif ( canEditImage && isEditingImage ) {\n\t\timg = (\n\t\t\t<ImageWrapper href={ href }>\n\t\t\t\t<ImageEditor\n\t\t\t\t\tid={ id }\n\t\t\t\t\turl={ url }\n\t\t\t\t\t{ ...pixelSize }\n\t\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\t\tonSaveImage={ ( imageAttributes ) =>\n\t\t\t\t\t\tsetAttributes( imageAttributes )\n\t\t\t\t\t}\n\t\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t\t} }\n\t\t\t\t\tborderProps={ isRounded ? undefined : borderProps }\n\t\t\t\t/>\n\t\t\t</ImageWrapper>\n\t\t);\n\t} else {\n\t\timg = <ImageWrapper href={ href }>{ img }</ImageWrapper>;\n\t}\n\n\tlet resizableBox;\n\tif (\n\t\tisResizable &&\n\t\tisSingleSelected &&\n\t\t! isEditingImage &&\n\t\t! SIZED_LAYOUTS.includes( parentLayoutType )\n\t) {\n\t\tconst numericRatio = aspectRatio && evalAspectRatio( aspectRatio );\n\t\tconst customRatio = pixelSize.width / pixelSize.height;\n\t\tconst naturalRatio = naturalWidth / naturalHeight;\n\t\tconst ratio = numericRatio || customRatio || naturalRatio || 1;\n\t\tconst minWidth =\n\t\t\tnaturalWidth < naturalHeight ? MIN_SIZE : MIN_SIZE * ratio;\n\t\tconst minHeight =\n\t\t\tnaturalHeight < naturalWidth ? MIN_SIZE : MIN_SIZE / ratio;\n\n\t\t// With the current implementation of ResizableBox, an image needs an\n\t\t// explicit pixel value for the max-width. In absence of being able to\n\t\t// set the content-width, this max-width is currently dictated by the\n\t\t// vanilla editor style. The following variable adds a buffer to this\n\t\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t\t// in most cases, allow you to scale the image beyond the width of the\n\t\t// main column, though not infinitely.\n\t\t// @todo It would be good to revisit this once a content-width variable\n\t\t// becomes available.\n\t\tconst maxWidthBuffer = maxWidth * 2.5;\n\t\tconst maxResizeWidth = maxContentWidth || maxWidthBuffer;\n\n\t\tlet showRightHandle = false;\n\t\tlet showLeftHandle = false;\n\n\t\t/* eslint-disable no-lonely-if */\n\t\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\t\tif ( align === 'center' ) {\n\t\t\t// When the image is centered, show both handles.\n\t\t\tshowRightHandle = true;\n\t\t\tshowLeftHandle = true;\n\t\t} else if ( isRTL() ) {\n\t\t\t// In RTL mode the image is on the right by default.\n\t\t\t// Show the right handle and hide the left handle only when it is\n\t\t\t// aligned left. Otherwise always show the left handle.\n\t\t\tif ( align === 'left' ) {\n\t\t\t\tshowRightHandle = true;\n\t\t\t} else {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t}\n\t\t} else {\n\t\t\t// Show the left handle and hide the right handle only when the\n\t\t\t// image is aligned right. Otherwise always show the right handle.\n\t\t\tif ( align === 'right' ) {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t} else {\n\t\t\t\tshowRightHandle = true;\n\t\t\t}\n\t\t}\n\t\t/* eslint-enable no-lonely-if */\n\t\tresizableBox = (\n\t\t\t<ResizableBox\n\t\t\t\tref={ effectResizeableBoxPlacement }\n\t\t\t\tstyle={ {\n\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\t// To match the vertical-align: bottom of the img (from style.scss)\n\t\t\t\t\t// syncs the top with the img. This matters when the img height is\n\t\t\t\t\t// less than the line-height.\n\t\t\t\t\tinset: `${ offsetTop }px 0 0 0`,\n\t\t\t\t} }\n\t\t\t\tsize={ pixelSize }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxResizeWidth }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxResizeWidth / ratio }\n\t\t\t\tlockAspectRatio={ ratio }\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={ () => {\n\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t} }\n\t\t\t\tonResize={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tsetResizeDelta( delta );\n\t\t\t\t} }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t\tsetResizeDelta( null );\n\t\t\t\t\tsetPixelSize( ( current ) => ( {\n\t\t\t\t\t\twidth: current.width + delta.width,\n\t\t\t\t\t\theight: current.height + delta.height,\n\t\t\t\t\t} ) );\n\n\t\t\t\t\t// Clear hardcoded width if the resized width is close to the max-content width.\n\t\t\t\t\tif (\n\t\t\t\t\t\tmaxContentWidth &&\n\t\t\t\t\t\t// Only do this if the image is bigger than the container to prevent it from being squished.\n\t\t\t\t\t\t// TODO: Remove this check if the image support setting 100% width.\n\t\t\t\t\t\tnaturalWidth >= maxContentWidth &&\n\t\t\t\t\t\tMath.abs( elt.offsetWidth - maxContentWidth ) < 10\n\t\t\t\t\t) {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\twidth: undefined,\n\t\t\t\t\t\t\theight: undefined,\n\t\t\t\t\t\t} );\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Since the aspect ratio is locked when resizing, we can\n\t\t\t\t\t// use the width of the resized element to calculate the\n\t\t\t\t\t// height in CSS to prevent stretching when the max-width\n\t\t\t\t\t// is reached.\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: `${ elt.offsetWidth }px`,\n\t\t\t\t\t\theight: 'auto',\n\t\t\t\t\t\taspectRatio:\n\t\t\t\t\t\t\tratio === naturalRatio\n\t\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t\t: String( ratio ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tresizeRatio={ align === 'center' ? 2 : 1 }\n\t\t\t/>\n\t\t);\n\t}\n\n\tif ( ! url && ! temporaryURL ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ mediaReplaceFlow }\n\t\t\t\t{ /* Add all controls if the image attributes are connected. */ }\n\t\t\t\t{ metadata?.bindings ? controls : sizeControls }\n\t\t\t</>\n\t\t);\n\t}\n\n\t/**\n\t * Set the post's featured image with the current image.\n\t */\n\tconst setPostFeatureImage = () => {\n\t\teditEntityRecord( 'postType', postType, postId, {\n\t\t\tfeatured_media: id,\n\t\t} );\n\t\tcreateSuccessNotice( __( 'Post featured image updated.' ), {\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\tconst featuredImageControl = (\n\t\t<BlockSettingsMenuControls>\n\t\t\t{ ( { selectedClientIds } ) =>\n\t\t\t\tselectedClientIds.length === 1 &&\n\t\t\t\t! isDescendentOfQueryLoop &&\n\t\t\t\tpostId &&\n\t\t\t\tid &&\n\t\t\t\tclientId === selectedClientIds[ 0 ] && (\n\t\t\t\t\t<MenuItem onClick={ setPostFeatureImage }>\n\t\t\t\t\t\t{ __( 'Set as featured image' ) }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t)\n\t\t\t}\n\t\t</BlockSettingsMenuControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ mediaReplaceFlow }\n\t\t\t{ controls }\n\t\t\t{ featuredImageControl }\n\t\t\t{ img }\n\t\t\t{ resizableBox }\n\n\t\t\t<Caption\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\tlabel={ __( 'Image caption text' ) }\n\t\t\t\tshowToolbarButton={\n\t\t\t\t\tisSingleSelected &&\n\t\t\t\t\thasNonContentControls &&\n\t\t\t\t\t! arePatternOverridesEnabled\n\t\t\t\t}\n\t\t\t\treadOnly={ lockCaption }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["isBlobURL","ExternalLink","ResizableBox","Spinner","TextareaControl","TextControl","ToolbarButton","ToolbarGroup","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalUseCustomUnits","useCustomUnits","Placeholder","MenuItem","ToolbarItem","DropdownMenu","Popover","useMergeRefs","useResizeObserver","useViewportMatch","useSelect","useDispatch","BlockControls","InspectorControls","__experimentalImageURLInputUI","ImageURLInputUI","MediaReplaceFlow","store","blockEditorStore","useSettings","__experimentalImageEditor","ImageEditor","__experimentalUseBorderProps","useBorderProps","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","privateApis","blockEditorPrivateApis","BlockSettingsMenuControls","useCallback","useEffect","useMemo","useState","__","_x","sprintf","isRTL","getFilename","getBlockBindingsSource","switchToBlockType","crop","overlayText","upload","chevronDown","noticesStore","coreStore","unlock","createUpgradedEmbedBlock","isExternalImage","Caption","useToolsPanelDropdownMenuProps","MIN_SIZE","ALLOWED_MEDIA_TYPES","SIZED_LAYOUTS","DEFAULT_MEDIA_SIZE_SLUG","evalAspectRatio","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","DimensionsTool","ResolutionTool","scaleOptions","value","label","help","WRITEMODE_POPOVER_PROPS","placement","ImageWrapper","href","children","onClick","event","preventDefault","style","pointerEvents","cursor","display","ContentOnlyControls","attributes","setAttributes","lockAltControls","lockAltControlsMessage","lockTitleControls","lockTitleControlsMessage","popoverAnchor","setPopoverAnchor","isAltDialogOpen","setIsAltDialogOpen","isTitleDialogOpen","setIsTitleDialogOpen","ref","toggleProps","icon","description","popoverProps","onClose","anchor","offset","variant","className","alt","onChange","disabled","__nextHasNoMarginBottom","__next40pxDefaultSize","title","Image","temporaryURL","isSingleSelected","insertBlocksAfter","onReplace","onSelectImage","onSelectURL","onUploadError","context","clientId","blockEditingMode","parentLayoutType","maxContentWidth","url","align","id","rel","linkClass","linkDestination","width","height","aspectRatio","scale","linkTarget","sizeSlug","lightbox","metadata","imageElement","setImageElement","resizeDelta","setResizeDelta","pixelSize","setPixelSize","offsetTop","setOffsetTop","setResizeObserved","entry","box","borderBoxSize","inlineSize","blockSize","target","effectResizeableBoxPlacement","_imageElement$offsetT","setRefs","allowResize","image","select","getEntityRecord","canInsertCover","imageEditing","imageSizes","maxWidth","getBlockRootClientId","canInsertBlockType","getSettings","rootClientId","settings","getBlock","replaceBlocks","toggleSelection","createErrorNotice","createSuccessNotice","editEntityRecord","isLargeViewport","isWideAligned","includes","loadedNaturalWidth","loadedNaturalHeight","setLoadedNaturalSize","isEditingImage","setIsEditingImage","externalBlob","setExternalBlob","hasImageErrored","setHasImageErrored","hasNonContentControls","isContentOnlyMode","isResizable","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","mediaUpload","window","fetch","then","response","blob","catch","naturalWidth","naturalHeight","undefined","complete","onImageError","embedBlock","onImageLoad","onSetHref","props","onSetLightbox","enable","lightboxSetting","enabled","resetLightbox","allowEditing","onSetTitle","updateAlt","newAlt","updateImage","newSizeSlug","newUrl","uploadExternal","filesList","onFileChange","img","type","allowedTypes","onError","message","canEditImage","allowCrop","switchToCover","dimensionsUnitsOptions","availableUnits","showLightboxSetting","lightboxChecked","dropdownMenuProps","dimensionsControl","newAspectRatio","defaultAspectRatio","tools","newWidth","newHeight","newScale","defaultScale","unitsOptions","resetAll","sizeControls","arePatternOverridesEnabled","bindings","__default","source","lockUrlControls","lockHrefControls","lockCaption","urlBinding","altBinding","titleBinding","hasParentPattern","urlBindingSource","altBindingSource","titleBindingSource","canUserEditValue","args","showUrlInput","showCoverControls","showBlockControls","mediaReplaceFlow","group","mediaId","mediaURL","accept","onSelect","onReset","controls","onChangeUrl","mediaUrl","mediaLink","link","lightboxEnabled","isShownByDefault","hasValue","onDeselect","readOnly","length","defaultValue","options","filename","defaultedAlt","borderProps","shadowProps","isRounded","postType","postId","queryId","isDescendentOfQueryLoop","Number","isFinite","withIllustration","src","onLoad","objectFit","onSaveImage","imageAttributes","onFinishEditing","resizableBox","numericRatio","customRatio","naturalRatio","ratio","minWidth","minHeight","maxWidthBuffer","maxResizeWidth","showRightHandle","showLeftHandle","position","inset","size","maxHeight","lockAspectRatio","top","right","bottom","left","onResizeStart","onResize","direction","elt","delta","onResizeStop","current","Math","abs","offsetWidth","String","resizeRatio","setPostFeatureImage","featured_media","featuredImageControl","selectedClientIds","isSelected","showToolbarButton"],"sources":["@wordpress/block-library/src/image/image.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tExternalLink,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tTextControl,\n\tToolbarButton,\n\tToolbarGroup,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\tPlaceholder,\n\tMenuItem,\n\tToolbarItem,\n\tDropdownMenu,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tuseMergeRefs,\n\tuseResizeObserver,\n\tuseViewportMatch,\n} from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\t__experimentalImageURLInputUI as ImageURLInputUI,\n\tMediaReplaceFlow,\n\tstore as blockEditorStore,\n\tuseSettings,\n\t__experimentalImageEditor as ImageEditor,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tprivateApis as blockEditorPrivateApis,\n\tBlockSettingsMenuControls,\n} from '@wordpress/block-editor';\nimport { useCallback, useEffect, useMemo, useState } from '@wordpress/element';\nimport { __, _x, sprintf, isRTL } from '@wordpress/i18n';\nimport { getFilename } from '@wordpress/url';\nimport { getBlockBindingsSource, switchToBlockType } from '@wordpress/blocks';\nimport { crop, overlayText, upload, chevronDown } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport { isExternalImage } from './edit';\nimport { Caption } from '../utils/caption';\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\nimport {\n\tMIN_SIZE,\n\tALLOWED_MEDIA_TYPES,\n\tSIZED_LAYOUTS,\n\tDEFAULT_MEDIA_SIZE_SLUG,\n} from './constants';\nimport { evalAspectRatio } from './utils';\n\nconst { DimensionsTool, ResolutionTool } = unlock( blockEditorPrivateApis );\n\nconst scaleOptions = [\n\t{\n\t\tvalue: 'cover',\n\t\tlabel: _x( 'Cover', 'Scale option for dimensions control' ),\n\t\thelp: __( 'Image covers the space evenly.' ),\n\t},\n\t{\n\t\tvalue: 'contain',\n\t\tlabel: _x( 'Contain', 'Scale option for dimensions control' ),\n\t\thelp: __( 'Image is contained without distortion.' ),\n\t},\n];\n\nconst WRITEMODE_POPOVER_PROPS = {\n\tplacement: 'bottom-start',\n};\n\n// If the image has a href, wrap in an <a /> tag to trigger any inherited link element styles.\nconst ImageWrapper = ( { href, children } ) => {\n\tif ( ! href ) {\n\t\treturn children;\n\t}\n\treturn (\n\t\t<a\n\t\t\thref={ href }\n\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\taria-disabled\n\t\t\tstyle={ {\n\t\t\t\t// When the Image block is linked,\n\t\t\t\t// it's wrapped with a disabled <a /> tag.\n\t\t\t\t// Restore cursor style so it doesn't appear 'clickable'\n\t\t\t\t// and remove pointer events. Safari needs the display property.\n\t\t\t\tpointerEvents: 'none',\n\t\t\t\tcursor: 'default',\n\t\t\t\tdisplay: 'inline',\n\t\t\t} }\n\t\t>\n\t\t\t{ children }\n\t\t</a>\n\t);\n};\n\nfunction ContentOnlyControls( {\n\tattributes,\n\tsetAttributes,\n\tlockAltControls,\n\tlockAltControlsMessage,\n\tlockTitleControls,\n\tlockTitleControlsMessage,\n} ) {\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\tconst [ isAltDialogOpen, setIsAltDialogOpen ] = useState( false );\n\tconst [ isTitleDialogOpen, setIsTitleDialogOpen ] = useState( false );\n\treturn (\n\t\t<>\n\t\t\t<ToolbarItem ref={ setPopoverAnchor }>\n\t\t\t\t{ ( toggleProps ) => (\n\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\ticon={ chevronDown }\n\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\tlabel={ __( 'More' ) }\n\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\t...toggleProps,\n\t\t\t\t\t\t\tdescription: __( 'Displays more controls.' ),\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tpopoverProps={ WRITEMODE_POPOVER_PROPS }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetIsAltDialogOpen( true );\n\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ _x(\n\t\t\t\t\t\t\t\t\t\t'Alternative text',\n\t\t\t\t\t\t\t\t\t\t'Alternative text for an image. Block toolbar label, a low character count is preferred.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetIsTitleDialogOpen( true );\n\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Title text' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</DropdownMenu>\n\t\t\t\t) }\n\t\t\t</ToolbarItem>\n\t\t\t{ isAltDialogOpen && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"bottom-start\"\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tonClose={ () => setIsAltDialogOpen( false ) }\n\t\t\t\t\toffset={ 13 }\n\t\t\t\t\tvariant=\"toolbar\"\n\t\t\t\t>\n\t\t\t\t\t<div className=\"wp-block-image__toolbar_content_textarea__container\">\n\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\tclassName=\"wp-block-image__toolbar_content_textarea\"\n\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\tvalue={ attributes.alt || '' }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { alt: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdisabled={ lockAltControls }\n\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\tlockAltControls ? (\n\t\t\t\t\t\t\t\t\t<>{ lockAltControlsMessage }</>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\thref={\n\t\t\t\t\t\t\t\t\t\t\t\t// translators: Localized tutorial, if one exists. W3C Web Accessibility Initiative link has list of existing translations.\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'https://www.w3.org/WAI/tutorials/images/decision-tree/'\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t{ __( 'Leave empty if decorative.' ) }\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t\t{ isTitleDialogOpen && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"bottom-start\"\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tonClose={ () => setIsTitleDialogOpen( false ) }\n\t\t\t\t\toffset={ 13 }\n\t\t\t\t\tvariant=\"toolbar\"\n\t\t\t\t>\n\t\t\t\t\t<div className=\"wp-block-image__toolbar_content_textarea__container\">\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tclassName=\"wp-block-image__toolbar_content_textarea\"\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\t\t\tvalue={ attributes.title || '' }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\ttitle: value,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdisabled={ lockTitleControls }\n\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\tlockTitleControls ? (\n\t\t\t\t\t\t\t\t\t<>{ lockTitleControlsMessage }</>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'Describe the role of this image on the page.'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/TR/html52/dom.html#the-title-attribute\">\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'(Note: many devices and browsers do not display this text.)'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default function Image( {\n\ttemporaryURL,\n\tattributes,\n\tsetAttributes,\n\tisSingleSelected,\n\tinsertBlocksAfter,\n\tonReplace,\n\tonSelectImage,\n\tonSelectURL,\n\tonUploadError,\n\tcontext,\n\tclientId,\n\tblockEditingMode,\n\tparentLayoutType,\n\tmaxContentWidth,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\talign,\n\t\tid,\n\t\thref,\n\t\trel,\n\t\tlinkClass,\n\t\tlinkDestination,\n\t\ttitle,\n\t\twidth,\n\t\theight,\n\t\taspectRatio,\n\t\tscale,\n\t\tlinkTarget,\n\t\tsizeSlug,\n\t\tlightbox,\n\t\tmetadata,\n\t} = attributes;\n\tconst [ imageElement, setImageElement ] = useState();\n\tconst [ resizeDelta, setResizeDelta ] = useState( null );\n\tconst [ pixelSize, setPixelSize ] = useState( {} );\n\tconst [ offsetTop, setOffsetTop ] = useState( 0 );\n\tconst setResizeObserved = useResizeObserver( ( [ entry ] ) => {\n\t\tif ( ! resizeDelta ) {\n\t\t\tconst [ box ] = entry.borderBoxSize;\n\t\t\tsetPixelSize( { width: box.inlineSize, height: box.blockSize } );\n\t\t}\n\t\t// This is usually 0 unless the image height is less than the line-height.\n\t\tsetOffsetTop( entry.target.offsetTop );\n\t} );\n\tconst effectResizeableBoxPlacement = useCallback( () => {\n\t\tsetOffsetTop( imageElement?.offsetTop ?? 0 );\n\t}, [ imageElement ] );\n\tconst setRefs = useMergeRefs( [ setImageElement, setResizeObserved ] );\n\tconst { allowResize = true } = context;\n\n\tconst image = useSelect(\n\t\t( select ) =>\n\t\t\tid && isSingleSelected\n\t\t\t\t? select( coreStore ).getEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t'attachment',\n\t\t\t\t\t\tid,\n\t\t\t\t\t\t{ context: 'view' }\n\t\t\t\t )\n\t\t\t\t: null,\n\t\t[ id, isSingleSelected ]\n\t);\n\n\tconst { canInsertCover, imageEditing, imageSizes, maxWidth } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId, canInsertBlockType, getSettings } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\tconst settings = getSettings();\n\n\t\t\treturn {\n\t\t\t\timageEditing: settings.imageEditing,\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tmaxWidth: settings.maxWidth,\n\t\t\t\tcanInsertCover: canInsertBlockType(\n\t\t\t\t\t'core/cover',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { getBlock, getSettings } = useSelect( blockEditorStore );\n\n\tconst { replaceBlocks, toggleSelection } = useDispatch( blockEditorStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = [ 'wide', 'full' ].includes( align );\n\tconst [\n\t\t{ loadedNaturalWidth, loadedNaturalHeight },\n\t\tsetLoadedNaturalSize,\n\t] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst [ externalBlob, setExternalBlob ] = useState();\n\tconst [ hasImageErrored, setHasImageErrored ] = useState( false );\n\tconst hasNonContentControls = blockEditingMode === 'default';\n\tconst isContentOnlyMode = blockEditingMode === 'contentOnly';\n\tconst isResizable =\n\t\tallowResize &&\n\t\thasNonContentControls &&\n\t\t! isWideAligned &&\n\t\tisLargeViewport;\n\tconst imageSizeOptions = imageSizes\n\t\t.filter(\n\t\t\t( { slug } ) => image?.media_details?.sizes?.[ slug ]?.source_url\n\t\t)\n\t\t.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\n\t// If an image is externally hosted, try to fetch the image data. This may\n\t// fail if the image host doesn't allow CORS with the domain. If it works,\n\t// we can enable a button in the toolbar to upload the image.\n\tuseEffect( () => {\n\t\tif (\n\t\t\t! isExternalImage( id, url ) ||\n\t\t\t! isSingleSelected ||\n\t\t\t! getSettings().mediaUpload\n\t\t) {\n\t\t\tsetExternalBlob();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( externalBlob ) {\n\t\t\treturn;\n\t\t}\n\n\t\twindow\n\t\t\t// Avoid cache, which seems to help avoid CORS problems.\n\t\t\t.fetch( url.includes( '?' ) ? url : url + '?' )\n\t\t\t.then( ( response ) => response.blob() )\n\t\t\t.then( ( blob ) => setExternalBlob( blob ) )\n\t\t\t// Do nothing, cannot upload.\n\t\t\t.catch( () => {} );\n\t}, [ id, url, isSingleSelected, externalBlob, getSettings ] );\n\n\t// Get naturalWidth and naturalHeight from image, and fall back to loaded natural\n\t// width and height. This resolves an issue in Safari where the loaded natural\n\t// width and height is otherwise lost when switching between alignments.\n\t// See: https://github.com/WordPress/gutenberg/pull/37210.\n\tconst { naturalWidth, naturalHeight } = useMemo( () => {\n\t\treturn {\n\t\t\tnaturalWidth:\n\t\t\t\timageElement?.naturalWidth || loadedNaturalWidth || undefined,\n\t\t\tnaturalHeight:\n\t\t\t\timageElement?.naturalHeight || loadedNaturalHeight || undefined,\n\t\t};\n\t}, [ loadedNaturalWidth, loadedNaturalHeight, imageElement?.complete ] );\n\n\tfunction onImageError() {\n\t\tsetHasImageErrored( true );\n\n\t\t// Check if there's an embed block that handles this URL, e.g., instagram URL.\n\t\t// See: https://github.com/WordPress/gutenberg/pull/11472\n\t\tconst embedBlock = createUpgradedEmbedBlock( { attributes: { url } } );\n\t\tif ( undefined !== embedBlock ) {\n\t\t\tonReplace( embedBlock );\n\t\t}\n\t}\n\n\tfunction onImageLoad( event ) {\n\t\tsetHasImageErrored( false );\n\t\tsetLoadedNaturalSize( {\n\t\t\tloadedNaturalWidth: event.target?.naturalWidth,\n\t\t\tloadedNaturalHeight: event.target?.naturalHeight,\n\t\t} );\n\t}\n\n\tfunction onSetHref( props ) {\n\t\tsetAttributes( props );\n\t}\n\n\tfunction onSetLightbox( enable ) {\n\t\tif ( enable && ! lightboxSetting?.enabled ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: true },\n\t\t\t} );\n\t\t} else if ( ! enable && lightboxSetting?.enabled ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: false },\n\t\t\t} );\n\t\t} else {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: undefined,\n\t\t\t} );\n\t\t}\n\t}\n\n\tfunction resetLightbox() {\n\t\t// When deleting a link from an image while lightbox settings\n\t\t// are enabled by default, we should disable the lightbox,\n\t\t// otherwise the resulting UX looks like a mistake.\n\t\t// See https://github.com/WordPress/gutenberg/pull/59890/files#r1532286123.\n\t\tif ( lightboxSetting?.enabled && lightboxSetting?.allowEditing ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: false },\n\t\t\t} );\n\t\t} else {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: undefined,\n\t\t\t} );\n\t\t}\n\t}\n\n\tfunction onSetTitle( value ) {\n\t\t// This is the HTML title attribute, separate from the media object\n\t\t// title.\n\t\tsetAttributes( { title: value } );\n\t}\n\n\tfunction updateAlt( newAlt ) {\n\t\tsetAttributes( { alt: newAlt } );\n\t}\n\n\tfunction updateImage( newSizeSlug ) {\n\t\tconst newUrl = image?.media_details?.sizes?.[ newSizeSlug ]?.source_url;\n\t\tif ( ! newUrl ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\turl: newUrl,\n\t\t\tsizeSlug: newSizeSlug,\n\t\t} );\n\t}\n\n\tfunction uploadExternal() {\n\t\tconst { mediaUpload } = getSettings();\n\t\tif ( ! mediaUpload ) {\n\t\t\treturn;\n\t\t}\n\t\tmediaUpload( {\n\t\t\tfilesList: [ externalBlob ],\n\t\t\tonFileChange( [ img ] ) {\n\t\t\t\tonSelectImage( img );\n\n\t\t\t\tif ( isBlobURL( img.url ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tsetExternalBlob();\n\t\t\t\tcreateSuccessNotice( __( 'Image uploaded.' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\t},\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tonError( message ) {\n\t\t\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\t\t},\n\t\t} );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSingleSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSingleSelected ] );\n\n\tconst canEditImage = id && naturalWidth && naturalHeight && imageEditing;\n\tconst allowCrop =\n\t\tisSingleSelected &&\n\t\tcanEditImage &&\n\t\t! isEditingImage &&\n\t\t! isContentOnlyMode;\n\n\tfunction switchToCover() {\n\t\treplaceBlocks(\n\t\t\tclientId,\n\t\t\tswitchToBlockType( getBlock( clientId ), 'core/cover' )\n\t\t);\n\t}\n\n\t// TODO: Can allow more units after figuring out how they should interact\n\t// with the ResizableBox and ImageEditor components. Calculations later on\n\t// for those components are currently assuming px units.\n\tconst dimensionsUnitsOptions = useCustomUnits( {\n\t\tavailableUnits: [ 'px' ],\n\t} );\n\n\tconst [ lightboxSetting ] = useSettings( 'lightbox' );\n\n\tconst showLightboxSetting =\n\t\t// If a block-level override is set, we should give users the option to\n\t\t// remove that override, even if the lightbox UI is disabled in the settings.\n\t\t( !! lightbox && lightbox?.enabled !== lightboxSetting?.enabled ) ||\n\t\tlightboxSetting?.allowEditing;\n\n\tconst lightboxChecked =\n\t\t!! lightbox?.enabled || ( ! lightbox && !! lightboxSetting?.enabled );\n\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tconst dimensionsControl =\n\t\tisResizable &&\n\t\t( SIZED_LAYOUTS.includes( parentLayoutType ) ? (\n\t\t\t<DimensionsTool\n\t\t\t\tvalue={ { aspectRatio } }\n\t\t\t\tonChange={ ( { aspectRatio: newAspectRatio } ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t\t\t\tscale: 'cover',\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tdefaultAspectRatio=\"auto\"\n\t\t\t\ttools={ [ 'aspectRatio' ] }\n\t\t\t/>\n\t\t) : (\n\t\t\t<DimensionsTool\n\t\t\t\tvalue={ { width, height, scale, aspectRatio } }\n\t\t\t\tonChange={ ( {\n\t\t\t\t\twidth: newWidth,\n\t\t\t\t\theight: newHeight,\n\t\t\t\t\tscale: newScale,\n\t\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t\t} ) => {\n\t\t\t\t\t// Rebuilding the object forces setting `undefined`\n\t\t\t\t\t// for values that are removed since setAttributes\n\t\t\t\t\t// doesn't do anything with keys that aren't set.\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t// CSS includes `height: auto`, but we need\n\t\t\t\t\t\t// `width: auto` to fix the aspect ratio when\n\t\t\t\t\t\t// only height is set due to the width and\n\t\t\t\t\t\t// height attributes set via the server.\n\t\t\t\t\t\twidth: ! newWidth && newHeight ? 'auto' : newWidth,\n\t\t\t\t\t\theight: newHeight,\n\t\t\t\t\t\tscale: newScale,\n\t\t\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tdefaultScale=\"cover\"\n\t\t\t\tdefaultAspectRatio=\"auto\"\n\t\t\t\tscaleOptions={ scaleOptions }\n\t\t\t\tunitsOptions={ dimensionsUnitsOptions }\n\t\t\t/>\n\t\t) );\n\n\tconst resetAll = () => {\n\t\tsetAttributes( {\n\t\t\talt: undefined,\n\t\t\twidth: undefined,\n\t\t\theight: undefined,\n\t\t\tscale: undefined,\n\t\t\taspectRatio: undefined,\n\t\t\tlightbox: undefined,\n\t\t} );\n\t\tupdateImage( DEFAULT_MEDIA_SIZE_SLUG );\n\t};\n\n\tconst sizeControls = (\n\t\t<InspectorControls>\n\t\t\t<ToolsPanel\n\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\tresetAll={ resetAll }\n\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t>\n\t\t\t\t{ dimensionsControl }\n\t\t\t</ToolsPanel>\n\t\t</InspectorControls>\n\t);\n\n\tconst arePatternOverridesEnabled =\n\t\tmetadata?.bindings?.__default?.source === 'core/pattern-overrides';\n\n\tconst {\n\t\tlockUrlControls = false,\n\t\tlockHrefControls = false,\n\t\tlockAltControls = false,\n\t\tlockAltControlsMessage,\n\t\tlockTitleControls = false,\n\t\tlockTitleControlsMessage,\n\t\tlockCaption = false,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isSingleSelected ) {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t\tconst {\n\t\t\t\turl: urlBinding,\n\t\t\t\talt: altBinding,\n\t\t\t\ttitle: titleBinding,\n\t\t\t} = metadata?.bindings || {};\n\t\t\tconst hasParentPattern = !! context[ 'pattern/overrides' ];\n\t\t\tconst urlBindingSource = getBlockBindingsSource(\n\t\t\t\turlBinding?.source\n\t\t\t);\n\t\t\tconst altBindingSource = getBlockBindingsSource(\n\t\t\t\taltBinding?.source\n\t\t\t);\n\t\t\tconst titleBindingSource = getBlockBindingsSource(\n\t\t\t\ttitleBinding?.source\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tlockUrlControls:\n\t\t\t\t\t!! urlBinding &&\n\t\t\t\t\t! urlBindingSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: urlBinding?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockHrefControls:\n\t\t\t\t\t// Disable editing the link of the URL if the image is inside a pattern instance.\n\t\t\t\t\t// This is a temporary solution until we support overriding the link on the frontend.\n\t\t\t\t\thasParentPattern || arePatternOverridesEnabled,\n\t\t\t\tlockCaption:\n\t\t\t\t\t// Disable editing the caption if the image is inside a pattern instance.\n\t\t\t\t\t// This is a temporary solution until we support overriding the caption on the frontend.\n\t\t\t\t\thasParentPattern,\n\t\t\t\tlockAltControls:\n\t\t\t\t\t!! altBinding &&\n\t\t\t\t\t! altBindingSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: altBinding?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockAltControlsMessage: altBindingSource?.label\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the bindings source. */\n\t\t\t\t\t\t\t__( 'Connected to %s' ),\n\t\t\t\t\t\t\taltBindingSource.label\n\t\t\t\t\t )\n\t\t\t\t\t: __( 'Connected to dynamic data' ),\n\t\t\t\tlockTitleControls:\n\t\t\t\t\t!! titleBinding &&\n\t\t\t\t\t! titleBindingSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: titleBinding?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockTitleControlsMessage: titleBindingSource?.label\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the bindings source. */\n\t\t\t\t\t\t\t__( 'Connected to %s' ),\n\t\t\t\t\t\t\ttitleBindingSource.label\n\t\t\t\t\t )\n\t\t\t\t\t: __( 'Connected to dynamic data' ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tarePatternOverridesEnabled,\n\t\t\tcontext,\n\t\t\tisSingleSelected,\n\t\t\tmetadata?.bindings,\n\t\t]\n\t);\n\n\tconst showUrlInput =\n\t\tisSingleSelected &&\n\t\t! isEditingImage &&\n\t\t! lockHrefControls &&\n\t\t! lockUrlControls;\n\n\tconst showCoverControls =\n\t\tisSingleSelected && canInsertCover && ! isContentOnlyMode;\n\n\tconst showBlockControls = showUrlInput || allowCrop || showCoverControls;\n\n\tconst mediaReplaceFlow = isSingleSelected &&\n\t\t! isEditingImage &&\n\t\t! lockUrlControls && (\n\t\t\t// For contentOnly mode, put this button in its own area so it has borders around it.\n\t\t\t<BlockControls group={ isContentOnlyMode ? 'inline' : 'other' }>\n\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tname={ ! url ? __( 'Add image' ) : __( 'Replace' ) }\n\t\t\t\t\tonReset={ () => onSelectImage( undefined ) }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t);\n\n\tconst controls = (\n\t\t<>\n\t\t\t{ showBlockControls && (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t{ showUrlInput && (\n\t\t\t\t\t\t<ImageURLInputUI\n\t\t\t\t\t\t\turl={ href || '' }\n\t\t\t\t\t\t\tonChangeUrl={ onSetHref }\n\t\t\t\t\t\t\tlinkDestination={ linkDestination }\n\t\t\t\t\t\t\tmediaUrl={ ( image && image.source_url ) || url }\n\t\t\t\t\t\t\tmediaLink={ image && image.link }\n\t\t\t\t\t\t\tlinkTarget={ linkTarget }\n\t\t\t\t\t\t\tlinkClass={ linkClass }\n\t\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t\t\tshowLightboxSetting={ showLightboxSetting }\n\t\t\t\t\t\t\tlightboxEnabled={ lightboxChecked }\n\t\t\t\t\t\t\tonSetLightbox={ onSetLightbox }\n\t\t\t\t\t\t\tresetLightbox={ resetLightbox }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ allowCrop && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showCoverControls && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\ticon={ overlayText }\n\t\t\t\t\t\t\tlabel={ __( 'Add text over image' ) }\n\t\t\t\t\t\t\tonClick={ switchToCover }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ isSingleSelected && externalBlob && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ uploadExternal }\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tlabel={ __( 'Upload to Media Library' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ isContentOnlyMode && (\n\t\t\t\t// Add some extra controls for content attributes when content only mode is active.\n\t\t\t\t// With content only mode active, the inspector is hidden, so users need another way\n\t\t\t\t// to edit these attributes.\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t<ContentOnlyControls\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tlockAltControls={ lockAltControls }\n\t\t\t\t\t\tlockAltControlsMessage={ lockAltControlsMessage }\n\t\t\t\t\t\tlockTitleControls={ lockTitleControls }\n\t\t\t\t\t\tlockTitleControlsMessage={ lockTitleControlsMessage }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ resetAll }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t{ isSingleSelected && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\thasValue={ () => !! alt }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { alt: undefined } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\tvalue={ alt || '' }\n\t\t\t\t\t\t\t\tonChange={ updateAlt }\n\t\t\t\t\t\t\t\treadOnly={ lockAltControls }\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\tlockAltControls ? (\n\t\t\t\t\t\t\t\t\t\t<>{ lockAltControlsMessage }</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\t\thref={\n\t\t\t\t\t\t\t\t\t\t\t\t\t// translators: Localized tutorial, if one exists. W3C Web Accessibility Initiative link has list of existing translations.\n\t\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'https://www.w3.org/WAI/tutorials/images/decision-tree/'\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image.'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ dimensionsControl }\n\t\t\t\t\t{ !! imageSizeOptions.length && (\n\t\t\t\t\t\t<ResolutionTool\n\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\tdefaultValue={ DEFAULT_MEDIA_SIZE_SLUG }\n\t\t\t\t\t\t\tonChange={ updateImage }\n\t\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\tonChange={ onSetTitle }\n\t\t\t\t\treadOnly={ lockTitleControls }\n\t\t\t\t\thelp={\n\t\t\t\t\t\tlockTitleControls ? (\n\t\t\t\t\t\t\t<>{ lockTitleControlsMessage }</>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Describe the role of this image on the page.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/TR/html52/dom.html#the-title-attribute\">\n\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t'(Note: many devices and browsers do not display this text.)'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</ExternalLink>\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</InspectorControls>\n\t\t</>\n\t);\n\n\tconst filename = getFilename( url );\n\tlet defaultedAlt;\n\n\tif ( alt ) {\n\t\tdefaultedAlt = alt;\n\t} else if ( filename ) {\n\t\tdefaultedAlt = sprintf(\n\t\t\t/* translators: %s: file name */\n\t\t\t__( 'This image has an empty alt attribute; its file name is %s' ),\n\t\t\tfilename\n\t\t);\n\t} else {\n\t\tdefaultedAlt = __( 'This image has an empty alt attribute' );\n\t}\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\tconst isRounded = attributes.className?.includes( 'is-style-rounded' );\n\n\tconst { postType, postId, queryId } = context;\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\n\tlet img =\n\t\ttemporaryURL && hasImageErrored ? (\n\t\t\t// Show a placeholder during upload when the blob URL can't be loaded. This can\n\t\t\t// happen when the user uploads a HEIC image in a browser that doesn't support them.\n\t\t\t<Placeholder\n\t\t\t\tclassName=\"wp-block-image__placeholder\"\n\t\t\t\twithIllustration\n\t\t\t>\n\t\t\t\t<Spinner />\n\t\t\t</Placeholder>\n\t\t) : (\n\t\t\t// Disable reason: Image itself is not meant to be interactive, but\n\t\t\t// should direct focus to block.\n\t\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t\t<>\n\t\t\t\t<img\n\t\t\t\t\tsrc={ temporaryURL || url }\n\t\t\t\t\talt={ defaultedAlt }\n\t\t\t\t\tonError={ onImageError }\n\t\t\t\t\tonLoad={ onImageLoad }\n\t\t\t\t\tref={ setRefs }\n\t\t\t\t\tclassName={ borderProps.className }\n\t\t\t\t\twidth={ naturalWidth }\n\t\t\t\t\theight={ naturalHeight }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\taspectRatio,\n\t\t\t\t\t\t...( resizeDelta\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\twidth: pixelSize.width + resizeDelta.width,\n\t\t\t\t\t\t\t\t\theight:\n\t\t\t\t\t\t\t\t\t\tpixelSize.height + resizeDelta.height,\n\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t: { width, height } ),\n\t\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...shadowProps.style,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ temporaryURL && <Spinner /> }\n\t\t\t</>\n\t\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t);\n\n\tif ( canEditImage && isEditingImage ) {\n\t\timg = (\n\t\t\t<ImageWrapper href={ href }>\n\t\t\t\t<ImageEditor\n\t\t\t\t\tid={ id }\n\t\t\t\t\turl={ url }\n\t\t\t\t\t{ ...pixelSize }\n\t\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\t\tonSaveImage={ ( imageAttributes ) =>\n\t\t\t\t\t\tsetAttributes( imageAttributes )\n\t\t\t\t\t}\n\t\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t\t} }\n\t\t\t\t\tborderProps={ isRounded ? undefined : borderProps }\n\t\t\t\t/>\n\t\t\t</ImageWrapper>\n\t\t);\n\t} else {\n\t\timg = <ImageWrapper href={ href }>{ img }</ImageWrapper>;\n\t}\n\n\tlet resizableBox;\n\tif (\n\t\tisResizable &&\n\t\tisSingleSelected &&\n\t\t! isEditingImage &&\n\t\t! SIZED_LAYOUTS.includes( parentLayoutType )\n\t) {\n\t\tconst numericRatio = aspectRatio && evalAspectRatio( aspectRatio );\n\t\tconst customRatio = pixelSize.width / pixelSize.height;\n\t\tconst naturalRatio = naturalWidth / naturalHeight;\n\t\tconst ratio = numericRatio || customRatio || naturalRatio || 1;\n\t\tconst minWidth =\n\t\t\tnaturalWidth < naturalHeight ? MIN_SIZE : MIN_SIZE * ratio;\n\t\tconst minHeight =\n\t\t\tnaturalHeight < naturalWidth ? MIN_SIZE : MIN_SIZE / ratio;\n\n\t\t// With the current implementation of ResizableBox, an image needs an\n\t\t// explicit pixel value for the max-width. In absence of being able to\n\t\t// set the content-width, this max-width is currently dictated by the\n\t\t// vanilla editor style. The following variable adds a buffer to this\n\t\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t\t// in most cases, allow you to scale the image beyond the width of the\n\t\t// main column, though not infinitely.\n\t\t// @todo It would be good to revisit this once a content-width variable\n\t\t// becomes available.\n\t\tconst maxWidthBuffer = maxWidth * 2.5;\n\t\tconst maxResizeWidth = maxContentWidth || maxWidthBuffer;\n\n\t\tlet showRightHandle = false;\n\t\tlet showLeftHandle = false;\n\n\t\t/* eslint-disable no-lonely-if */\n\t\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\t\tif ( align === 'center' ) {\n\t\t\t// When the image is centered, show both handles.\n\t\t\tshowRightHandle = true;\n\t\t\tshowLeftHandle = true;\n\t\t} else if ( isRTL() ) {\n\t\t\t// In RTL mode the image is on the right by default.\n\t\t\t// Show the right handle and hide the left handle only when it is\n\t\t\t// aligned left. Otherwise always show the left handle.\n\t\t\tif ( align === 'left' ) {\n\t\t\t\tshowRightHandle = true;\n\t\t\t} else {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t}\n\t\t} else {\n\t\t\t// Show the left handle and hide the right handle only when the\n\t\t\t// image is aligned right. Otherwise always show the right handle.\n\t\t\tif ( align === 'right' ) {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t} else {\n\t\t\t\tshowRightHandle = true;\n\t\t\t}\n\t\t}\n\t\t/* eslint-enable no-lonely-if */\n\t\tresizableBox = (\n\t\t\t<ResizableBox\n\t\t\t\tref={ effectResizeableBoxPlacement }\n\t\t\t\tstyle={ {\n\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\t// To match the vertical-align: bottom of the img (from style.scss)\n\t\t\t\t\t// syncs the top with the img. This matters when the img height is\n\t\t\t\t\t// less than the line-height.\n\t\t\t\t\tinset: `${ offsetTop }px 0 0 0`,\n\t\t\t\t} }\n\t\t\t\tsize={ pixelSize }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxResizeWidth }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxResizeWidth / ratio }\n\t\t\t\tlockAspectRatio={ ratio }\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={ () => {\n\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t} }\n\t\t\t\tonResize={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tsetResizeDelta( delta );\n\t\t\t\t} }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t\tsetResizeDelta( null );\n\t\t\t\t\tsetPixelSize( ( current ) => ( {\n\t\t\t\t\t\twidth: current.width + delta.width,\n\t\t\t\t\t\theight: current.height + delta.height,\n\t\t\t\t\t} ) );\n\n\t\t\t\t\t// Clear hardcoded width if the resized width is close to the max-content width.\n\t\t\t\t\tif (\n\t\t\t\t\t\tmaxContentWidth &&\n\t\t\t\t\t\t// Only do this if the image is bigger than the container to prevent it from being squished.\n\t\t\t\t\t\t// TODO: Remove this check if the image support setting 100% width.\n\t\t\t\t\t\tnaturalWidth >= maxContentWidth &&\n\t\t\t\t\t\tMath.abs( elt.offsetWidth - maxContentWidth ) < 10\n\t\t\t\t\t) {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\twidth: undefined,\n\t\t\t\t\t\t\theight: undefined,\n\t\t\t\t\t\t} );\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Since the aspect ratio is locked when resizing, we can\n\t\t\t\t\t// use the width of the resized element to calculate the\n\t\t\t\t\t// height in CSS to prevent stretching when the max-width\n\t\t\t\t\t// is reached.\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: `${ elt.offsetWidth }px`,\n\t\t\t\t\t\theight: 'auto',\n\t\t\t\t\t\taspectRatio:\n\t\t\t\t\t\t\tratio === naturalRatio\n\t\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t\t: String( ratio ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tresizeRatio={ align === 'center' ? 2 : 1 }\n\t\t\t/>\n\t\t);\n\t}\n\n\tif ( ! url && ! temporaryURL ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ mediaReplaceFlow }\n\t\t\t\t{ /* Add all controls if the image attributes are connected. */ }\n\t\t\t\t{ metadata?.bindings ? controls : sizeControls }\n\t\t\t</>\n\t\t);\n\t}\n\n\t/**\n\t * Set the post's featured image with the current image.\n\t */\n\tconst setPostFeatureImage = () => {\n\t\teditEntityRecord( 'postType', postType, postId, {\n\t\t\tfeatured_media: id,\n\t\t} );\n\t\tcreateSuccessNotice( __( 'Post featured image updated.' ), {\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\tconst featuredImageControl = (\n\t\t<BlockSettingsMenuControls>\n\t\t\t{ ( { selectedClientIds } ) =>\n\t\t\t\tselectedClientIds.length === 1 &&\n\t\t\t\t! isDescendentOfQueryLoop &&\n\t\t\t\tpostId &&\n\t\t\t\tid &&\n\t\t\t\tclientId === selectedClientIds[ 0 ] && (\n\t\t\t\t\t<MenuItem onClick={ setPostFeatureImage }>\n\t\t\t\t\t\t{ __( 'Set as featured image' ) }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t)\n\t\t\t}\n\t\t</BlockSettingsMenuControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ mediaReplaceFlow }\n\t\t\t{ controls }\n\t\t\t{ featuredImageControl }\n\t\t\t{ img }\n\t\t\t{ resizableBox }\n\n\t\t\t<Caption\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\tlabel={ __( 'Image caption text' ) }\n\t\t\t\tshowToolbarButton={\n\t\t\t\t\tisSingleSelected &&\n\t\t\t\t\thasNonContentControls &&\n\t\t\t\t\t! arePatternOverridesEnabled\n\t\t\t\t}\n\t\t\t\treadOnly={ lockCaption }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,9 @@
1
1
  export const DEFAULT_BLOCK = {
2
- name: 'core/navigation-link'
2
+ name: 'core/navigation-link',
3
+ attributes: {
4
+ kind: 'post-type',
5
+ type: 'page'
6
+ }
3
7
  };
4
8
  export const PRIORITIZED_INSERTER_BLOCKS = ['core/navigation-link/page', 'core/navigation-link'];
5
9
 
@@ -1 +1 @@
1
- {"version":3,"names":["DEFAULT_BLOCK","name","PRIORITIZED_INSERTER_BLOCKS","PRELOADED_NAVIGATION_MENUS_QUERY","per_page","status","order","orderby","SELECT_NAVIGATION_MENUS_ARGS"],"sources":["@wordpress/block-library/src/navigation/constants.js"],"sourcesContent":["export const DEFAULT_BLOCK = {\n\tname: 'core/navigation-link',\n};\n\nexport const PRIORITIZED_INSERTER_BLOCKS = [\n\t'core/navigation-link/page',\n\t'core/navigation-link',\n];\n\n// These parameters must be kept aligned with those in\n// lib/compat/wordpress-6.3/navigation-block-preloading.php\n// and\n// edit-site/src/components/sidebar-navigation-screen-navigation-menus/constants.js\nexport const PRELOADED_NAVIGATION_MENUS_QUERY = {\n\tper_page: 100,\n\tstatus: [ 'publish', 'draft' ],\n\torder: 'desc',\n\torderby: 'date',\n};\n\nexport const SELECT_NAVIGATION_MENUS_ARGS = [\n\t'postType',\n\t'wp_navigation',\n\tPRELOADED_NAVIGATION_MENUS_QUERY,\n];\n"],"mappings":"AAAA,OAAO,MAAMA,aAAa,GAAG;EAC5BC,IAAI,EAAE;AACP,CAAC;AAED,OAAO,MAAMC,2BAA2B,GAAG,CAC1C,2BAA2B,EAC3B,sBAAsB,CACtB;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,gCAAgC,GAAG;EAC/CC,QAAQ,EAAE,GAAG;EACbC,MAAM,EAAE,CAAE,SAAS,EAAE,OAAO,CAAE;EAC9BC,KAAK,EAAE,MAAM;EACbC,OAAO,EAAE;AACV,CAAC;AAED,OAAO,MAAMC,4BAA4B,GAAG,CAC3C,UAAU,EACV,eAAe,EACfL,gCAAgC,CAChC","ignoreList":[]}
1
+ {"version":3,"names":["DEFAULT_BLOCK","name","attributes","kind","type","PRIORITIZED_INSERTER_BLOCKS","PRELOADED_NAVIGATION_MENUS_QUERY","per_page","status","order","orderby","SELECT_NAVIGATION_MENUS_ARGS"],"sources":["@wordpress/block-library/src/navigation/constants.js"],"sourcesContent":["export const DEFAULT_BLOCK = {\n\tname: 'core/navigation-link',\n\tattributes: {\n\t\tkind: 'post-type',\n\t\ttype: 'page',\n\t},\n};\n\nexport const PRIORITIZED_INSERTER_BLOCKS = [\n\t'core/navigation-link/page',\n\t'core/navigation-link',\n];\n\n// These parameters must be kept aligned with those in\n// lib/compat/wordpress-6.3/navigation-block-preloading.php\n// and\n// edit-site/src/components/sidebar-navigation-screen-navigation-menus/constants.js\nexport const PRELOADED_NAVIGATION_MENUS_QUERY = {\n\tper_page: 100,\n\tstatus: [ 'publish', 'draft' ],\n\torder: 'desc',\n\torderby: 'date',\n};\n\nexport const SELECT_NAVIGATION_MENUS_ARGS = [\n\t'postType',\n\t'wp_navigation',\n\tPRELOADED_NAVIGATION_MENUS_QUERY,\n];\n"],"mappings":"AAAA,OAAO,MAAMA,aAAa,GAAG;EAC5BC,IAAI,EAAE,sBAAsB;EAC5BC,UAAU,EAAE;IACXC,IAAI,EAAE,WAAW;IACjBC,IAAI,EAAE;EACP;AACD,CAAC;AAED,OAAO,MAAMC,2BAA2B,GAAG,CAC1C,2BAA2B,EAC3B,sBAAsB,CACtB;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,gCAAgC,GAAG;EAC/CC,QAAQ,EAAE,GAAG;EACbC,MAAM,EAAE,CAAE,SAAS,EAAE,OAAO,CAAE;EAC9BC,KAAK,EAAE,MAAM;EACbC,OAAO,EAAE;AACV,CAAC;AAED,OAAO,MAAMC,4BAA4B,GAAG,CAC3C,UAAU,EACV,eAAe,EACfL,gCAAgC,CAChC","ignoreList":[]}