@wordpress/block-library 8.25.0 → 8.26.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 (235) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/LICENSE.md +1 -1
  3. package/build/audio/edit.js +10 -12
  4. package/build/audio/edit.js.map +1 -1
  5. package/build/block/edit.js +79 -32
  6. package/build/block/edit.js.map +1 -1
  7. package/build/comments-title/deprecated.js +1 -1
  8. package/build/comments-title/index.js +1 -1
  9. package/build/cover/edit/inspector-controls.js +1 -1
  10. package/build/cover/edit/inspector-controls.js.map +1 -1
  11. package/build/embed/util.js +4 -4
  12. package/build/embed/util.js.map +1 -1
  13. package/build/file/edit.js +19 -27
  14. package/build/file/edit.js.map +1 -1
  15. package/build/gallery/edit.js +36 -17
  16. package/build/gallery/edit.js.map +1 -1
  17. package/build/gallery/gallery.js +3 -2
  18. package/build/gallery/gallery.js.map +1 -1
  19. package/build/gallery/index.js +4 -0
  20. package/build/gallery/index.js.map +1 -1
  21. package/build/gallery/transforms.js +4 -68
  22. package/build/gallery/transforms.js.map +1 -1
  23. package/build/group/index.js +5 -1
  24. package/build/group/index.js.map +1 -1
  25. package/build/image/deprecated.js +11 -0
  26. package/build/image/deprecated.js.map +1 -1
  27. package/build/image/edit.native.js +3 -0
  28. package/build/image/edit.native.js.map +1 -1
  29. package/build/image/image.js +22 -21
  30. package/build/image/image.js.map +1 -1
  31. package/build/image/view.js +7 -1
  32. package/build/image/view.js.map +1 -1
  33. package/build/list/edit.js +10 -15
  34. package/build/list/edit.js.map +1 -1
  35. package/build/list-item/edit.js +17 -2
  36. package/build/list-item/edit.js.map +1 -1
  37. package/build/list-item/hooks/use-enter.js +5 -3
  38. package/build/list-item/hooks/use-enter.js.map +1 -1
  39. package/build/list-item/hooks/use-enter.native.js +4 -3
  40. package/build/list-item/hooks/use-enter.native.js.map +1 -1
  41. package/build/list-item/hooks/use-indent-list-item.js +2 -3
  42. package/build/list-item/hooks/use-indent-list-item.js.map +1 -1
  43. package/build/list-item/hooks/use-merge.js +1 -1
  44. package/build/list-item/hooks/use-merge.js.map +1 -1
  45. package/build/list-item/hooks/use-outdent-list-item.js +3 -17
  46. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
  47. package/build/list-item/hooks/use-space.js +8 -4
  48. package/build/list-item/hooks/use-space.js.map +1 -1
  49. package/build/media-text/media-container.native.js +3 -0
  50. package/build/media-text/media-container.native.js.map +1 -1
  51. package/build/navigation/constants.js +3 -1
  52. package/build/navigation/constants.js.map +1 -1
  53. package/build/navigation/edit/index.js +4 -0
  54. package/build/navigation/edit/index.js.map +1 -1
  55. package/build/navigation/view.js +25 -1
  56. package/build/navigation/view.js.map +1 -1
  57. package/build/pattern/edit.js +24 -2
  58. package/build/pattern/edit.js.map +1 -1
  59. package/build/pattern/recursion-detector.js +147 -0
  60. package/build/pattern/recursion-detector.js.map +1 -0
  61. package/build/post-featured-image/edit.js +19 -2
  62. package/build/post-featured-image/edit.js.map +1 -1
  63. package/build/post-featured-image/index.js +4 -0
  64. package/build/post-featured-image/index.js.map +1 -1
  65. package/build/query/edit/inspector-controls/index.js +3 -1
  66. package/build/query/edit/inspector-controls/index.js.map +1 -1
  67. package/build/query-pagination-numbers/index.js +1 -1
  68. package/build/search/edit.js +3 -5
  69. package/build/search/edit.js.map +1 -1
  70. package/build/search/index.js +0 -4
  71. package/build/search/index.js.map +1 -1
  72. package/build/site-logo/edit.js +7 -6
  73. package/build/site-logo/edit.js.map +1 -1
  74. package/build/spacer/edit.native.js +2 -2
  75. package/build/spacer/edit.native.js.map +1 -1
  76. package/build/tag-cloud/edit.js +5 -9
  77. package/build/tag-cloud/edit.js.map +1 -1
  78. package/build/utils/constants.js +16 -0
  79. package/build/utils/constants.js.map +1 -0
  80. package/build/video/edit.js +11 -8
  81. package/build/video/edit.js.map +1 -1
  82. package/build-module/audio/edit.js +10 -12
  83. package/build-module/audio/edit.js.map +1 -1
  84. package/build-module/block/edit.js +83 -36
  85. package/build-module/block/edit.js.map +1 -1
  86. package/build-module/comments-title/deprecated.js +1 -1
  87. package/build-module/comments-title/index.js +1 -1
  88. package/build-module/cover/edit/inspector-controls.js +1 -1
  89. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  90. package/build-module/embed/util.js +4 -4
  91. package/build-module/embed/util.js.map +1 -1
  92. package/build-module/file/edit.js +19 -27
  93. package/build-module/file/edit.js.map +1 -1
  94. package/build-module/gallery/edit.js +36 -17
  95. package/build-module/gallery/edit.js.map +1 -1
  96. package/build-module/gallery/gallery.js +3 -2
  97. package/build-module/gallery/gallery.js.map +1 -1
  98. package/build-module/gallery/index.js +4 -0
  99. package/build-module/gallery/index.js.map +1 -1
  100. package/build-module/gallery/transforms.js +4 -68
  101. package/build-module/gallery/transforms.js.map +1 -1
  102. package/build-module/group/index.js +5 -1
  103. package/build-module/group/index.js.map +1 -1
  104. package/build-module/image/deprecated.js +11 -0
  105. package/build-module/image/deprecated.js.map +1 -1
  106. package/build-module/image/edit.native.js +3 -0
  107. package/build-module/image/edit.native.js.map +1 -1
  108. package/build-module/image/image.js +17 -16
  109. package/build-module/image/image.js.map +1 -1
  110. package/build-module/image/view.js +7 -1
  111. package/build-module/image/view.js.map +1 -1
  112. package/build-module/list/edit.js +10 -15
  113. package/build-module/list/edit.js.map +1 -1
  114. package/build-module/list-item/edit.js +18 -3
  115. package/build-module/list-item/edit.js.map +1 -1
  116. package/build-module/list-item/hooks/use-enter.js +5 -3
  117. package/build-module/list-item/hooks/use-enter.js.map +1 -1
  118. package/build-module/list-item/hooks/use-enter.native.js +4 -3
  119. package/build-module/list-item/hooks/use-enter.native.js.map +1 -1
  120. package/build-module/list-item/hooks/use-indent-list-item.js +2 -3
  121. package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -1
  122. package/build-module/list-item/hooks/use-merge.js +1 -1
  123. package/build-module/list-item/hooks/use-merge.js.map +1 -1
  124. package/build-module/list-item/hooks/use-outdent-list-item.js +3 -17
  125. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
  126. package/build-module/list-item/hooks/use-space.js +8 -4
  127. package/build-module/list-item/hooks/use-space.js.map +1 -1
  128. package/build-module/media-text/media-container.native.js +3 -0
  129. package/build-module/media-text/media-container.native.js.map +1 -1
  130. package/build-module/navigation/constants.js +1 -0
  131. package/build-module/navigation/constants.js.map +1 -1
  132. package/build-module/navigation/edit/index.js +5 -1
  133. package/build-module/navigation/edit/index.js.map +1 -1
  134. package/build-module/navigation/view.js +25 -1
  135. package/build-module/navigation/view.js.map +1 -1
  136. package/build-module/pattern/edit.js +26 -4
  137. package/build-module/pattern/edit.js.map +1 -1
  138. package/build-module/pattern/recursion-detector.js +139 -0
  139. package/build-module/pattern/recursion-detector.js.map +1 -0
  140. package/build-module/post-featured-image/edit.js +19 -2
  141. package/build-module/post-featured-image/edit.js.map +1 -1
  142. package/build-module/post-featured-image/index.js +4 -0
  143. package/build-module/post-featured-image/index.js.map +1 -1
  144. package/build-module/query/edit/inspector-controls/index.js +3 -1
  145. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  146. package/build-module/query-pagination-numbers/index.js +1 -1
  147. package/build-module/search/edit.js +3 -5
  148. package/build-module/search/edit.js.map +1 -1
  149. package/build-module/search/index.js +0 -4
  150. package/build-module/search/index.js.map +1 -1
  151. package/build-module/site-logo/edit.js +7 -6
  152. package/build-module/site-logo/edit.js.map +1 -1
  153. package/build-module/spacer/edit.native.js +2 -2
  154. package/build-module/spacer/edit.native.js.map +1 -1
  155. package/build-module/tag-cloud/edit.js +6 -10
  156. package/build-module/tag-cloud/edit.js.map +1 -1
  157. package/build-module/utils/constants.js +9 -0
  158. package/build-module/utils/constants.js.map +1 -0
  159. package/build-module/video/edit.js +11 -8
  160. package/build-module/video/edit.js.map +1 -1
  161. package/build-style/button/editor-rtl.css +0 -37
  162. package/build-style/button/editor.css +0 -37
  163. package/build-style/button/style-rtl.css +6 -6
  164. package/build-style/button/style.css +6 -6
  165. package/build-style/editor-rtl.css +2 -44
  166. package/build-style/editor.css +2 -44
  167. package/build-style/navigation/editor-rtl.css +2 -4
  168. package/build-style/navigation/editor.css +2 -4
  169. package/build-style/navigation/style-rtl.css +14 -18
  170. package/build-style/navigation/style.css +14 -18
  171. package/build-style/search/style-rtl.css +26 -27
  172. package/build-style/search/style.css +26 -27
  173. package/build-style/style-rtl.css +46 -51
  174. package/build-style/style.css +46 -51
  175. package/build-style/table/editor-rtl.css +0 -3
  176. package/build-style/table/editor.css +0 -3
  177. package/package.json +32 -32
  178. package/src/audio/edit.js +19 -19
  179. package/src/audio/test/__snapshots__/edit.native.js.snap +12 -0
  180. package/src/audio/test/edit.native.js +29 -0
  181. package/src/block/edit.js +114 -60
  182. package/src/button/editor.scss +0 -43
  183. package/src/button/style.scss +6 -6
  184. package/src/comments-title/block.json +1 -1
  185. package/src/cover/edit/inspector-controls.js +1 -1
  186. package/src/embed/util.js +2 -2
  187. package/src/file/edit.js +17 -24
  188. package/src/gallery/block.json +4 -0
  189. package/src/gallery/edit.js +69 -42
  190. package/src/gallery/gallery.js +4 -1
  191. package/src/gallery/index.php +18 -0
  192. package/src/gallery/transforms.js +2 -55
  193. package/src/group/block.json +5 -1
  194. package/src/image/deprecated.js +8 -0
  195. package/src/image/edit.native.js +3 -0
  196. package/src/image/image.js +54 -35
  197. package/src/image/index.php +1 -6
  198. package/src/image/view.js +5 -2
  199. package/src/list/edit.js +27 -35
  200. package/src/list-item/edit.js +18 -2
  201. package/src/list-item/hooks/use-enter.js +63 -62
  202. package/src/list-item/hooks/use-enter.native.js +9 -5
  203. package/src/list-item/hooks/use-indent-list-item.js +43 -53
  204. package/src/list-item/hooks/use-merge.js +1 -1
  205. package/src/list-item/hooks/use-outdent-list-item.js +50 -69
  206. package/src/list-item/hooks/use-space.js +7 -4
  207. package/src/media-text/media-container.native.js +3 -1
  208. package/src/navigation/constants.js +2 -0
  209. package/src/navigation/edit/index.js +11 -1
  210. package/src/navigation/editor.scss +1 -1
  211. package/src/navigation/style.scss +18 -16
  212. package/src/navigation/view.js +29 -3
  213. package/src/paragraph/test/__snapshots__/edit.native.js.snap +12 -0
  214. package/src/paragraph/test/edit.native.js +114 -0
  215. package/src/pattern/edit.js +35 -3
  216. package/src/pattern/index.php +16 -0
  217. package/src/pattern/recursion-detector.js +145 -0
  218. package/src/pattern/test/index.js +74 -0
  219. package/src/post-featured-image/block.json +4 -0
  220. package/src/post-featured-image/edit.js +32 -1
  221. package/src/post-featured-image/index.php +31 -0
  222. package/src/query/edit/inspector-controls/index.js +2 -0
  223. package/src/query-pagination-numbers/block.json +1 -1
  224. package/src/search/block.json +0 -4
  225. package/src/search/edit.js +2 -8
  226. package/src/search/index.php +3 -7
  227. package/src/search/style.scss +27 -29
  228. package/src/site-logo/edit.js +3 -4
  229. package/src/social-link/index.php +1 -1
  230. package/src/spacer/edit.native.js +4 -2
  231. package/src/table/editor.scss +0 -3
  232. package/src/tag-cloud/edit.js +7 -7
  233. package/src/template-part/index.php +6 -0
  234. package/src/utils/constants.js +8 -0
  235. package/src/video/edit.js +29 -27
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","RichText","useBlockProps","__experimentalGetElementClassName","__experimentalGetBorderClassesAndStyles","getBorderClassesAndStyles","v1","attributes","url","type","source","selector","attribute","alt","default","caption","href","id","align","width","height","save","extraImageProps","image","createElement","src","figureStyle","maxWidth","className","style","isEmpty","Content","tagName","value","v2","v3","linkDestination","classes","v4","title","rel","linkClass","sizeSlug","linkTarget","supports","anchor","newRel","undefined","figure","Fragment","target","v5","color","__experimentalDuotone","text","background","__experimentalBorder","radius","__experimentalDefaultControls","__experimentalStyle","spacing","margin","v6","__experimentalRole","aspectRatio","scale","filter","duotone","__experimentalSkipSerialization","borderProps","Object","keys","length","imageClasses","objectFit","v7","migrate","v8","behaviors","lightbox","enabled","newAttributes","isEligible"],"sources":["@wordpress/block-library/src/image/deprecated.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\t__experimentalGetElementClassName,\n\t__experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles,\n} from '@wordpress/block-editor';\n\n/**\n * Deprecation for adding the `wp-image-${id}` class to the image block for\n * responsive images.\n *\n * @see https://github.com/WordPress/gutenberg/pull/4898\n */\nconst v1 = {\n\tattributes: {\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'array',\n\t\t\tsource: 'children',\n\t\t\tselector: 'figcaption',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'href',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t},\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'number',\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst { url, alt, caption, align, href, width, height } = attributes;\n\t\tconst extraImageProps = width || height ? { width, height } : {};\n\t\tconst image = <img src={ url } alt={ alt } { ...extraImageProps } />;\n\n\t\tlet figureStyle = {};\n\n\t\tif ( width ) {\n\t\t\tfigureStyle = { width };\n\t\t} else if ( align === 'left' || align === 'right' ) {\n\t\t\tfigureStyle = { maxWidth: '50%' };\n\t\t}\n\n\t\treturn (\n\t\t\t<figure\n\t\t\t\tclassName={ align ? `align${ align }` : null }\n\t\t\t\tstyle={ figureStyle }\n\t\t\t>\n\t\t\t\t{ href ? <a href={ href }>{ image }</a> : image }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n/**\n * Deprecation for adding the `is-resized` class to the image block to fix\n * captions on resized images.\n *\n * @see https://github.com/WordPress/gutenberg/pull/6496\n */\nconst v2 = {\n\tattributes: {\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'array',\n\t\t\tsource: 'children',\n\t\t\tselector: 'figcaption',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'href',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t},\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'number',\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst { url, alt, caption, align, href, width, height, id } =\n\t\t\tattributes;\n\n\t\tconst image = (\n\t\t\t<img\n\t\t\t\tsrc={ url }\n\t\t\t\talt={ alt }\n\t\t\t\tclassName={ id ? `wp-image-${ id }` : null }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t/>\n\t\t);\n\n\t\treturn (\n\t\t\t<figure className={ align ? `align${ align }` : null }>\n\t\t\t\t{ href ? <a href={ href }>{ image }</a> : image }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n/**\n * Deprecation for image floats including a wrapping div.\n *\n * @see https://github.com/WordPress/gutenberg/pull/7721\n */\nconst v3 = {\n\tattributes: {\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'array',\n\t\t\tsource: 'children',\n\t\t\tselector: 'figcaption',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'href',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t},\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'number',\n\t\t},\n\t\tlinkDestination: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst { url, alt, caption, align, href, width, height, id } =\n\t\t\tattributes;\n\n\t\tconst classes = classnames( {\n\t\t\t[ `align${ align }` ]: align,\n\t\t\t'is-resized': width || height,\n\t\t} );\n\n\t\tconst image = (\n\t\t\t<img\n\t\t\t\tsrc={ url }\n\t\t\t\talt={ alt }\n\t\t\t\tclassName={ id ? `wp-image-${ id }` : null }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t/>\n\t\t);\n\n\t\treturn (\n\t\t\t<figure className={ classes }>\n\t\t\t\t{ href ? <a href={ href }>{ image }</a> : image }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n/**\n * Deprecation for removing the outer div wrapper around aligned images.\n *\n * @see https://github.com/WordPress/gutenberg/pull/38657\n */\nconst v4 = {\n\tattributes: {\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'figcaption',\n\t\t},\n\t\ttitle: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'title',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'href',\n\t\t},\n\t\trel: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'rel',\n\t\t},\n\t\tlinkClass: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'class',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'number',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkDestination: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkTarget: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'target',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\turl,\n\t\t\talt,\n\t\t\tcaption,\n\t\t\talign,\n\t\t\thref,\n\t\t\trel,\n\t\t\tlinkClass,\n\t\t\twidth,\n\t\t\theight,\n\t\t\tid,\n\t\t\tlinkTarget,\n\t\t\tsizeSlug,\n\t\t\ttitle,\n\t\t} = attributes;\n\n\t\tconst newRel = ! rel ? undefined : rel;\n\n\t\tconst classes = classnames( {\n\t\t\t[ `align${ align }` ]: align,\n\t\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t\t'is-resized': width || height,\n\t\t} );\n\n\t\tconst image = (\n\t\t\t<img\n\t\t\t\tsrc={ url }\n\t\t\t\talt={ alt }\n\t\t\t\tclassName={ id ? `wp-image-${ id }` : null }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t\ttitle={ title }\n\t\t\t/>\n\t\t);\n\n\t\tconst figure = (\n\t\t\t<>\n\t\t\t\t{ href ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\tclassName={ linkClass }\n\t\t\t\t\t\thref={ href }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ newRel }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\n\t\tif ( 'left' === align || 'right' === align || 'center' === align ) {\n\t\t\treturn (\n\t\t\t\t<div { ...useBlockProps.save() }>\n\t\t\t\t\t<figure className={ classes }>{ figure }</figure>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save( { className: classes } ) }>\n\t\t\t\t{ figure }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n/**\n * Deprecation for moving existing border radius styles onto the inner img\n * element where new border block support styles must be applied.\n * It will also add a new `.has-custom-border` class for existing blocks\n * with border radii set. This class is required to improve caption position\n * and styling when an image within a gallery has a custom border or\n * rounded corners.\n *\n * @see https://github.com/WordPress/gutenberg/pull/31366\n */\nconst v5 = {\n\tattributes: {\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'figcaption',\n\t\t},\n\t\ttitle: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'title',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'href',\n\t\t},\n\t\trel: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'rel',\n\t\t},\n\t\tlinkClass: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'class',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'number',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkDestination: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkTarget: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'target',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\tcolor: {\n\t\t\t__experimentalDuotone: 'img',\n\t\t\ttext: false,\n\t\t\tbackground: false,\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\tradius: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tradius: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalStyle: {\n\t\t\tspacing: {\n\t\t\t\tmargin: '0 0 1em 0',\n\t\t\t},\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\turl,\n\t\t\talt,\n\t\t\tcaption,\n\t\t\talign,\n\t\t\thref,\n\t\t\trel,\n\t\t\tlinkClass,\n\t\t\twidth,\n\t\t\theight,\n\t\t\tid,\n\t\t\tlinkTarget,\n\t\t\tsizeSlug,\n\t\t\ttitle,\n\t\t} = attributes;\n\n\t\tconst newRel = ! rel ? undefined : rel;\n\n\t\tconst classes = classnames( {\n\t\t\t[ `align${ align }` ]: align,\n\t\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t\t'is-resized': width || height,\n\t\t} );\n\n\t\tconst image = (\n\t\t\t<img\n\t\t\t\tsrc={ url }\n\t\t\t\talt={ alt }\n\t\t\t\tclassName={ id ? `wp-image-${ id }` : null }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t\ttitle={ title }\n\t\t\t/>\n\t\t);\n\n\t\tconst figure = (\n\t\t\t<>\n\t\t\t\t{ href ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\tclassName={ linkClass }\n\t\t\t\t\t\thref={ href }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ newRel }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save( { className: classes } ) }>\n\t\t\t\t{ figure }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n/**\n * Deprecation for adding width and height as style rules on the inner img.\n *\n * @see https://github.com/WordPress/gutenberg/pull/31366\n */\nconst v6 = {\n\tattributes: {\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'figcaption',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\ttitle: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'title',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'href',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\trel: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'rel',\n\t\t},\n\t\tlinkClass: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'class',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'number',\n\t\t},\n\t\taspectRatio: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tscale: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkDestination: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkTarget: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'target',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\tcolor: {\n\t\t\ttext: false,\n\t\t\tbackground: false,\n\t\t},\n\t\tfilter: {\n\t\t\tduotone: true,\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\tcolor: true,\n\t\t\tradius: true,\n\t\t\twidth: true,\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tcolor: true,\n\t\t\t\tradius: true,\n\t\t\t\twidth: true,\n\t\t\t},\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\turl,\n\t\t\talt,\n\t\t\tcaption,\n\t\t\talign,\n\t\t\thref,\n\t\t\trel,\n\t\t\tlinkClass,\n\t\t\twidth,\n\t\t\theight,\n\t\t\taspectRatio,\n\t\t\tscale,\n\t\t\tid,\n\t\t\tlinkTarget,\n\t\t\tsizeSlug,\n\t\t\ttitle,\n\t\t} = attributes;\n\n\t\tconst newRel = ! rel ? undefined : rel;\n\t\tconst borderProps = getBorderClassesAndStyles( attributes );\n\n\t\tconst classes = classnames( {\n\t\t\t[ `align${ align }` ]: align,\n\t\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t\t'is-resized': width || height,\n\t\t\t'has-custom-border':\n\t\t\t\t!! borderProps.className ||\n\t\t\t\t( borderProps.style &&\n\t\t\t\t\tObject.keys( borderProps.style ).length > 0 ),\n\t\t} );\n\n\t\tconst imageClasses = classnames( borderProps.className, {\n\t\t\t[ `wp-image-${ id }` ]: !! id,\n\t\t} );\n\n\t\tconst image = (\n\t\t\t<img\n\t\t\t\tsrc={ url }\n\t\t\t\talt={ alt }\n\t\t\t\tclassName={ imageClasses || undefined }\n\t\t\t\tstyle={ {\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\taspectRatio,\n\t\t\t\t\tobjectFit: scale,\n\t\t\t\t} }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t\ttitle={ title }\n\t\t\t/>\n\t\t);\n\n\t\tconst figure = (\n\t\t\t<>\n\t\t\t\t{ href ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\tclassName={ linkClass }\n\t\t\t\t\t\thref={ href }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ newRel }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\tclassName={ __experimentalGetElementClassName(\n\t\t\t\t\t\t\t'caption'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save( { className: classes } ) }>\n\t\t\t\t{ figure }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n/**\n * Deprecation for converting to string width and height block attributes and\n * removing the width and height img element attributes which are not needed\n * as they get added by the TODO hook.\n *\n * @see https://github.com/WordPress/gutenberg/pull/53274\n */\nconst v7 = {\n\tattributes: {\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'figcaption',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\ttitle: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'title',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'href',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\trel: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'rel',\n\t\t},\n\t\tlinkClass: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'class',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'number',\n\t\t},\n\t\taspectRatio: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tscale: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkDestination: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkTarget: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'target',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\tcolor: {\n\t\t\ttext: false,\n\t\t\tbackground: false,\n\t\t},\n\t\tfilter: {\n\t\t\tduotone: true,\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\tcolor: true,\n\t\t\tradius: true,\n\t\t\twidth: true,\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tcolor: true,\n\t\t\t\tradius: true,\n\t\t\t\twidth: true,\n\t\t\t},\n\t\t},\n\t},\n\tmigrate( { width, height, ...attributes } ) {\n\t\treturn {\n\t\t\t...attributes,\n\t\t\twidth: `${ width }px`,\n\t\t\theight: `${ height }px`,\n\t\t};\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\turl,\n\t\t\talt,\n\t\t\tcaption,\n\t\t\talign,\n\t\t\thref,\n\t\t\trel,\n\t\t\tlinkClass,\n\t\t\twidth,\n\t\t\theight,\n\t\t\taspectRatio,\n\t\t\tscale,\n\t\t\tid,\n\t\t\tlinkTarget,\n\t\t\tsizeSlug,\n\t\t\ttitle,\n\t\t} = attributes;\n\n\t\tconst newRel = ! rel ? undefined : rel;\n\t\tconst borderProps = getBorderClassesAndStyles( attributes );\n\n\t\tconst classes = classnames( {\n\t\t\t[ `align${ align }` ]: align,\n\t\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t\t'is-resized': width || height,\n\t\t\t'has-custom-border':\n\t\t\t\t!! borderProps.className ||\n\t\t\t\t( borderProps.style &&\n\t\t\t\t\tObject.keys( borderProps.style ).length > 0 ),\n\t\t} );\n\n\t\tconst imageClasses = classnames( borderProps.className, {\n\t\t\t[ `wp-image-${ id }` ]: !! id,\n\t\t} );\n\n\t\tconst image = (\n\t\t\t<img\n\t\t\t\tsrc={ url }\n\t\t\t\talt={ alt }\n\t\t\t\tclassName={ imageClasses || undefined }\n\t\t\t\tstyle={ {\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\taspectRatio,\n\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\twidth,\n\t\t\t\t\theight,\n\t\t\t\t} }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t\ttitle={ title }\n\t\t\t/>\n\t\t);\n\n\t\tconst figure = (\n\t\t\t<>\n\t\t\t\t{ href ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\tclassName={ linkClass }\n\t\t\t\t\t\thref={ href }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ newRel }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\tclassName={ __experimentalGetElementClassName(\n\t\t\t\t\t\t\t'caption'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save( { className: classes } ) }>\n\t\t\t\t{ figure }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\nconst v8 = {\n\tattributes: {\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tbehaviors: {\n\t\t\ttype: 'object',\n\t\t},\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'figcaption',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\ttitle: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'title',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'href',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\trel: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'rel',\n\t\t},\n\t\tlinkClass: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'class',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'string',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'string',\n\t\t},\n\t\taspectRatio: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tscale: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkDestination: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkTarget: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'target',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\tcolor: {\n\t\t\ttext: false,\n\t\t\tbackground: false,\n\t\t},\n\t\tfilter: {\n\t\t\tduotone: true,\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\tcolor: true,\n\t\t\tradius: true,\n\t\t\twidth: true,\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tcolor: true,\n\t\t\t\tradius: true,\n\t\t\t\twidth: true,\n\t\t\t},\n\t\t},\n\t},\n\tmigrate( { width, height, ...attributes } ) {\n\t\t// We need to perform a check here because in cases\n\t\t// where attributes are added dynamically to blocks,\n\t\t// block invalidation overrides the isEligible() method\n\t\t// and forces the migration to run, so it's not guaranteed\n\t\t// that `behaviors` or `behaviors.lightbox` will be defined.\n\t\tif ( ! attributes.behaviors?.lightbox ) {\n\t\t\treturn attributes;\n\t\t}\n\t\tconst {\n\t\t\tbehaviors: {\n\t\t\t\tlightbox: { enabled },\n\t\t\t},\n\t\t} = attributes;\n\t\tconst newAttributes = {\n\t\t\t...attributes,\n\t\t\tlightbox: {\n\t\t\t\tenabled,\n\t\t\t},\n\t\t};\n\t\tdelete newAttributes.behaviors;\n\t\treturn newAttributes;\n\t},\n\tisEligible( attributes ) {\n\t\treturn !! attributes.behaviors;\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\turl,\n\t\t\talt,\n\t\t\tcaption,\n\t\t\talign,\n\t\t\thref,\n\t\t\trel,\n\t\t\tlinkClass,\n\t\t\twidth,\n\t\t\theight,\n\t\t\taspectRatio,\n\t\t\tscale,\n\t\t\tid,\n\t\t\tlinkTarget,\n\t\t\tsizeSlug,\n\t\t\ttitle,\n\t\t} = attributes;\n\n\t\tconst newRel = ! rel ? undefined : rel;\n\t\tconst borderProps = getBorderClassesAndStyles( attributes );\n\n\t\tconst classes = classnames( {\n\t\t\t[ `align${ align }` ]: align,\n\t\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t\t'is-resized': width || height,\n\t\t\t'has-custom-border':\n\t\t\t\t!! borderProps.className ||\n\t\t\t\t( borderProps.style &&\n\t\t\t\t\tObject.keys( borderProps.style ).length > 0 ),\n\t\t} );\n\n\t\tconst imageClasses = classnames( borderProps.className, {\n\t\t\t[ `wp-image-${ id }` ]: !! id,\n\t\t} );\n\n\t\tconst image = (\n\t\t\t<img\n\t\t\t\tsrc={ url }\n\t\t\t\talt={ alt }\n\t\t\t\tclassName={ imageClasses || undefined }\n\t\t\t\tstyle={ {\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\taspectRatio,\n\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\twidth,\n\t\t\t\t\theight,\n\t\t\t\t} }\n\t\t\t\ttitle={ title }\n\t\t\t/>\n\t\t);\n\n\t\tconst figure = (\n\t\t\t<>\n\t\t\t\t{ href ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\tclassName={ linkClass }\n\t\t\t\t\t\thref={ href }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ newRel }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\tclassName={ __experimentalGetElementClassName(\n\t\t\t\t\t\t\t'caption'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save( { className: classes } ) }>\n\t\t\t\t{ figure }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\nexport default [ v8, v7, v6, v5, v4, v3, v2, v1 ];\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","RichText","useBlockProps","__experimentalGetElementClassName","__experimentalGetBorderClassesAndStyles","getBorderClassesAndStyles","v1","attributes","url","type","source","selector","attribute","alt","default","caption","href","id","align","width","height","save","extraImageProps","image","createElement","src","figureStyle","maxWidth","className","style","isEmpty","Content","tagName","value","v2","v3","linkDestination","classes","v4","title","rel","linkClass","sizeSlug","linkTarget","supports","anchor","newRel","undefined","figure","Fragment","target","v5","color","__experimentalDuotone","text","background","__experimentalBorder","radius","__experimentalDefaultControls","__experimentalStyle","spacing","margin","v6","__experimentalRole","aspectRatio","scale","filter","duotone","__experimentalSkipSerialization","migrate","borderProps","Object","keys","length","imageClasses","objectFit","v7","v8","behaviors","lightbox","enabled","newAttributes","isEligible"],"sources":["@wordpress/block-library/src/image/deprecated.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\t__experimentalGetElementClassName,\n\t__experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles,\n} from '@wordpress/block-editor';\n\n/**\n * Deprecation for adding the `wp-image-${id}` class to the image block for\n * responsive images.\n *\n * @see https://github.com/WordPress/gutenberg/pull/4898\n */\nconst v1 = {\n\tattributes: {\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'array',\n\t\t\tsource: 'children',\n\t\t\tselector: 'figcaption',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'href',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t},\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'number',\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst { url, alt, caption, align, href, width, height } = attributes;\n\t\tconst extraImageProps = width || height ? { width, height } : {};\n\t\tconst image = <img src={ url } alt={ alt } { ...extraImageProps } />;\n\n\t\tlet figureStyle = {};\n\n\t\tif ( width ) {\n\t\t\tfigureStyle = { width };\n\t\t} else if ( align === 'left' || align === 'right' ) {\n\t\t\tfigureStyle = { maxWidth: '50%' };\n\t\t}\n\n\t\treturn (\n\t\t\t<figure\n\t\t\t\tclassName={ align ? `align${ align }` : null }\n\t\t\t\tstyle={ figureStyle }\n\t\t\t>\n\t\t\t\t{ href ? <a href={ href }>{ image }</a> : image }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n/**\n * Deprecation for adding the `is-resized` class to the image block to fix\n * captions on resized images.\n *\n * @see https://github.com/WordPress/gutenberg/pull/6496\n */\nconst v2 = {\n\tattributes: {\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'array',\n\t\t\tsource: 'children',\n\t\t\tselector: 'figcaption',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'a',\n\t\t\tattribute: 'href',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t},\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'number',\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst { url, alt, caption, align, href, width, height, id } =\n\t\t\tattributes;\n\n\t\tconst image = (\n\t\t\t<img\n\t\t\t\tsrc={ url }\n\t\t\t\talt={ alt }\n\t\t\t\tclassName={ id ? `wp-image-${ id }` : null }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t/>\n\t\t);\n\n\t\treturn (\n\t\t\t<figure className={ align ? `align${ align }` : null }>\n\t\t\t\t{ href ? <a href={ href }>{ image }</a> : image }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n/**\n * Deprecation for image floats including a wrapping div.\n *\n * @see https://github.com/WordPress/gutenberg/pull/7721\n */\nconst v3 = {\n\tattributes: {\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'array',\n\t\t\tsource: 'children',\n\t\t\tselector: 'figcaption',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'href',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t},\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'number',\n\t\t},\n\t\tlinkDestination: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst { url, alt, caption, align, href, width, height, id } =\n\t\t\tattributes;\n\n\t\tconst classes = classnames( {\n\t\t\t[ `align${ align }` ]: align,\n\t\t\t'is-resized': width || height,\n\t\t} );\n\n\t\tconst image = (\n\t\t\t<img\n\t\t\t\tsrc={ url }\n\t\t\t\talt={ alt }\n\t\t\t\tclassName={ id ? `wp-image-${ id }` : null }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t/>\n\t\t);\n\n\t\treturn (\n\t\t\t<figure className={ classes }>\n\t\t\t\t{ href ? <a href={ href }>{ image }</a> : image }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n/**\n * Deprecation for removing the outer div wrapper around aligned images.\n *\n * @see https://github.com/WordPress/gutenberg/pull/38657\n */\nconst v4 = {\n\tattributes: {\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'figcaption',\n\t\t},\n\t\ttitle: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'title',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'href',\n\t\t},\n\t\trel: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'rel',\n\t\t},\n\t\tlinkClass: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'class',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'number',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkDestination: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkTarget: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'target',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\turl,\n\t\t\talt,\n\t\t\tcaption,\n\t\t\talign,\n\t\t\thref,\n\t\t\trel,\n\t\t\tlinkClass,\n\t\t\twidth,\n\t\t\theight,\n\t\t\tid,\n\t\t\tlinkTarget,\n\t\t\tsizeSlug,\n\t\t\ttitle,\n\t\t} = attributes;\n\n\t\tconst newRel = ! rel ? undefined : rel;\n\n\t\tconst classes = classnames( {\n\t\t\t[ `align${ align }` ]: align,\n\t\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t\t'is-resized': width || height,\n\t\t} );\n\n\t\tconst image = (\n\t\t\t<img\n\t\t\t\tsrc={ url }\n\t\t\t\talt={ alt }\n\t\t\t\tclassName={ id ? `wp-image-${ id }` : null }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t\ttitle={ title }\n\t\t\t/>\n\t\t);\n\n\t\tconst figure = (\n\t\t\t<>\n\t\t\t\t{ href ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\tclassName={ linkClass }\n\t\t\t\t\t\thref={ href }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ newRel }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\n\t\tif ( 'left' === align || 'right' === align || 'center' === align ) {\n\t\t\treturn (\n\t\t\t\t<div { ...useBlockProps.save() }>\n\t\t\t\t\t<figure className={ classes }>{ figure }</figure>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save( { className: classes } ) }>\n\t\t\t\t{ figure }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n/**\n * Deprecation for moving existing border radius styles onto the inner img\n * element where new border block support styles must be applied.\n * It will also add a new `.has-custom-border` class for existing blocks\n * with border radii set. This class is required to improve caption position\n * and styling when an image within a gallery has a custom border or\n * rounded corners.\n *\n * @see https://github.com/WordPress/gutenberg/pull/31366\n */\nconst v5 = {\n\tattributes: {\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'figcaption',\n\t\t},\n\t\ttitle: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'title',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'href',\n\t\t},\n\t\trel: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'rel',\n\t\t},\n\t\tlinkClass: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'class',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'number',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkDestination: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkTarget: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'target',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\tcolor: {\n\t\t\t__experimentalDuotone: 'img',\n\t\t\ttext: false,\n\t\t\tbackground: false,\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\tradius: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tradius: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalStyle: {\n\t\t\tspacing: {\n\t\t\t\tmargin: '0 0 1em 0',\n\t\t\t},\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\turl,\n\t\t\talt,\n\t\t\tcaption,\n\t\t\talign,\n\t\t\thref,\n\t\t\trel,\n\t\t\tlinkClass,\n\t\t\twidth,\n\t\t\theight,\n\t\t\tid,\n\t\t\tlinkTarget,\n\t\t\tsizeSlug,\n\t\t\ttitle,\n\t\t} = attributes;\n\n\t\tconst newRel = ! rel ? undefined : rel;\n\n\t\tconst classes = classnames( {\n\t\t\t[ `align${ align }` ]: align,\n\t\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t\t'is-resized': width || height,\n\t\t} );\n\n\t\tconst image = (\n\t\t\t<img\n\t\t\t\tsrc={ url }\n\t\t\t\talt={ alt }\n\t\t\t\tclassName={ id ? `wp-image-${ id }` : null }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t\ttitle={ title }\n\t\t\t/>\n\t\t);\n\n\t\tconst figure = (\n\t\t\t<>\n\t\t\t\t{ href ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\tclassName={ linkClass }\n\t\t\t\t\t\thref={ href }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ newRel }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save( { className: classes } ) }>\n\t\t\t\t{ figure }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n/**\n * Deprecation for adding width and height as style rules on the inner img.\n *\n * @see https://github.com/WordPress/gutenberg/pull/31366\n */\nconst v6 = {\n\tattributes: {\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'figcaption',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\ttitle: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'title',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'href',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\trel: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'rel',\n\t\t},\n\t\tlinkClass: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'class',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'number',\n\t\t},\n\t\taspectRatio: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tscale: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkDestination: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkTarget: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'target',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\tcolor: {\n\t\t\ttext: false,\n\t\t\tbackground: false,\n\t\t},\n\t\tfilter: {\n\t\t\tduotone: true,\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\tcolor: true,\n\t\t\tradius: true,\n\t\t\twidth: true,\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tcolor: true,\n\t\t\t\tradius: true,\n\t\t\t\twidth: true,\n\t\t\t},\n\t\t},\n\t},\n\tmigrate( attributes ) {\n\t\tconst { height, width } = attributes;\n\t\treturn {\n\t\t\t...attributes,\n\t\t\twidth: typeof width === 'number' ? `${ width }px` : width,\n\t\t\theight: typeof height === 'number' ? `${ height }px` : height,\n\t\t};\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\turl,\n\t\t\talt,\n\t\t\tcaption,\n\t\t\talign,\n\t\t\thref,\n\t\t\trel,\n\t\t\tlinkClass,\n\t\t\twidth,\n\t\t\theight,\n\t\t\taspectRatio,\n\t\t\tscale,\n\t\t\tid,\n\t\t\tlinkTarget,\n\t\t\tsizeSlug,\n\t\t\ttitle,\n\t\t} = attributes;\n\n\t\tconst newRel = ! rel ? undefined : rel;\n\t\tconst borderProps = getBorderClassesAndStyles( attributes );\n\n\t\tconst classes = classnames( {\n\t\t\t[ `align${ align }` ]: align,\n\t\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t\t'is-resized': width || height,\n\t\t\t'has-custom-border':\n\t\t\t\t!! borderProps.className ||\n\t\t\t\t( borderProps.style &&\n\t\t\t\t\tObject.keys( borderProps.style ).length > 0 ),\n\t\t} );\n\n\t\tconst imageClasses = classnames( borderProps.className, {\n\t\t\t[ `wp-image-${ id }` ]: !! id,\n\t\t} );\n\n\t\tconst image = (\n\t\t\t<img\n\t\t\t\tsrc={ url }\n\t\t\t\talt={ alt }\n\t\t\t\tclassName={ imageClasses || undefined }\n\t\t\t\tstyle={ {\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\taspectRatio,\n\t\t\t\t\tobjectFit: scale,\n\t\t\t\t} }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t\ttitle={ title }\n\t\t\t/>\n\t\t);\n\n\t\tconst figure = (\n\t\t\t<>\n\t\t\t\t{ href ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\tclassName={ linkClass }\n\t\t\t\t\t\thref={ href }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ newRel }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\tclassName={ __experimentalGetElementClassName(\n\t\t\t\t\t\t\t'caption'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save( { className: classes } ) }>\n\t\t\t\t{ figure }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\n/**\n * Deprecation for converting to string width and height block attributes and\n * removing the width and height img element attributes which are not needed\n * as they get added by the TODO hook.\n *\n * @see https://github.com/WordPress/gutenberg/pull/53274\n */\nconst v7 = {\n\tattributes: {\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'figcaption',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\ttitle: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'title',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'href',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\trel: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'rel',\n\t\t},\n\t\tlinkClass: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'class',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'number',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'number',\n\t\t},\n\t\taspectRatio: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tscale: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkDestination: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkTarget: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'target',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\tcolor: {\n\t\t\ttext: false,\n\t\t\tbackground: false,\n\t\t},\n\t\tfilter: {\n\t\t\tduotone: true,\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\tcolor: true,\n\t\t\tradius: true,\n\t\t\twidth: true,\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tcolor: true,\n\t\t\t\tradius: true,\n\t\t\t\twidth: true,\n\t\t\t},\n\t\t},\n\t},\n\tmigrate( { width, height, ...attributes } ) {\n\t\treturn {\n\t\t\t...attributes,\n\t\t\twidth: `${ width }px`,\n\t\t\theight: `${ height }px`,\n\t\t};\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\turl,\n\t\t\talt,\n\t\t\tcaption,\n\t\t\talign,\n\t\t\thref,\n\t\t\trel,\n\t\t\tlinkClass,\n\t\t\twidth,\n\t\t\theight,\n\t\t\taspectRatio,\n\t\t\tscale,\n\t\t\tid,\n\t\t\tlinkTarget,\n\t\t\tsizeSlug,\n\t\t\ttitle,\n\t\t} = attributes;\n\n\t\tconst newRel = ! rel ? undefined : rel;\n\t\tconst borderProps = getBorderClassesAndStyles( attributes );\n\n\t\tconst classes = classnames( {\n\t\t\t[ `align${ align }` ]: align,\n\t\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t\t'is-resized': width || height,\n\t\t\t'has-custom-border':\n\t\t\t\t!! borderProps.className ||\n\t\t\t\t( borderProps.style &&\n\t\t\t\t\tObject.keys( borderProps.style ).length > 0 ),\n\t\t} );\n\n\t\tconst imageClasses = classnames( borderProps.className, {\n\t\t\t[ `wp-image-${ id }` ]: !! id,\n\t\t} );\n\n\t\tconst image = (\n\t\t\t<img\n\t\t\t\tsrc={ url }\n\t\t\t\talt={ alt }\n\t\t\t\tclassName={ imageClasses || undefined }\n\t\t\t\tstyle={ {\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\taspectRatio,\n\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\twidth,\n\t\t\t\t\theight,\n\t\t\t\t} }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t\ttitle={ title }\n\t\t\t/>\n\t\t);\n\n\t\tconst figure = (\n\t\t\t<>\n\t\t\t\t{ href ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\tclassName={ linkClass }\n\t\t\t\t\t\thref={ href }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ newRel }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\tclassName={ __experimentalGetElementClassName(\n\t\t\t\t\t\t\t'caption'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save( { className: classes } ) }>\n\t\t\t\t{ figure }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\nconst v8 = {\n\tattributes: {\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tbehaviors: {\n\t\t\ttype: 'object',\n\t\t},\n\t\turl: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'src',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\talt: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'alt',\n\t\t\tdefault: '',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\tcaption: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'figcaption',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\ttitle: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'img',\n\t\t\tattribute: 'title',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\thref: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'href',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\trel: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'rel',\n\t\t},\n\t\tlinkClass: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'class',\n\t\t},\n\t\tid: {\n\t\t\ttype: 'number',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\twidth: {\n\t\t\ttype: 'string',\n\t\t},\n\t\theight: {\n\t\t\ttype: 'string',\n\t\t},\n\t\taspectRatio: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tscale: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tsizeSlug: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkDestination: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tlinkTarget: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure > a',\n\t\t\tattribute: 'target',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\tcolor: {\n\t\t\ttext: false,\n\t\t\tbackground: false,\n\t\t},\n\t\tfilter: {\n\t\t\tduotone: true,\n\t\t},\n\t\t__experimentalBorder: {\n\t\t\tcolor: true,\n\t\t\tradius: true,\n\t\t\twidth: true,\n\t\t\t__experimentalSkipSerialization: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tcolor: true,\n\t\t\t\tradius: true,\n\t\t\t\twidth: true,\n\t\t\t},\n\t\t},\n\t},\n\tmigrate( { width, height, ...attributes } ) {\n\t\t// We need to perform a check here because in cases\n\t\t// where attributes are added dynamically to blocks,\n\t\t// block invalidation overrides the isEligible() method\n\t\t// and forces the migration to run, so it's not guaranteed\n\t\t// that `behaviors` or `behaviors.lightbox` will be defined.\n\t\tif ( ! attributes.behaviors?.lightbox ) {\n\t\t\treturn attributes;\n\t\t}\n\t\tconst {\n\t\t\tbehaviors: {\n\t\t\t\tlightbox: { enabled },\n\t\t\t},\n\t\t} = attributes;\n\t\tconst newAttributes = {\n\t\t\t...attributes,\n\t\t\tlightbox: {\n\t\t\t\tenabled,\n\t\t\t},\n\t\t};\n\t\tdelete newAttributes.behaviors;\n\t\treturn newAttributes;\n\t},\n\tisEligible( attributes ) {\n\t\treturn !! attributes.behaviors;\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\turl,\n\t\t\talt,\n\t\t\tcaption,\n\t\t\talign,\n\t\t\thref,\n\t\t\trel,\n\t\t\tlinkClass,\n\t\t\twidth,\n\t\t\theight,\n\t\t\taspectRatio,\n\t\t\tscale,\n\t\t\tid,\n\t\t\tlinkTarget,\n\t\t\tsizeSlug,\n\t\t\ttitle,\n\t\t} = attributes;\n\n\t\tconst newRel = ! rel ? undefined : rel;\n\t\tconst borderProps = getBorderClassesAndStyles( attributes );\n\n\t\tconst classes = classnames( {\n\t\t\t[ `align${ align }` ]: align,\n\t\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t\t'is-resized': width || height,\n\t\t\t'has-custom-border':\n\t\t\t\t!! borderProps.className ||\n\t\t\t\t( borderProps.style &&\n\t\t\t\t\tObject.keys( borderProps.style ).length > 0 ),\n\t\t} );\n\n\t\tconst imageClasses = classnames( borderProps.className, {\n\t\t\t[ `wp-image-${ id }` ]: !! id,\n\t\t} );\n\n\t\tconst image = (\n\t\t\t<img\n\t\t\t\tsrc={ url }\n\t\t\t\talt={ alt }\n\t\t\t\tclassName={ imageClasses || undefined }\n\t\t\t\tstyle={ {\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\taspectRatio,\n\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\twidth,\n\t\t\t\t\theight,\n\t\t\t\t} }\n\t\t\t\ttitle={ title }\n\t\t\t/>\n\t\t);\n\n\t\tconst figure = (\n\t\t\t<>\n\t\t\t\t{ href ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\tclassName={ linkClass }\n\t\t\t\t\t\thref={ href }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\trel={ newRel }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\tclassName={ __experimentalGetElementClassName(\n\t\t\t\t\t\t\t'caption'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\n\t\treturn (\n\t\t\t<figure { ...useBlockProps.save( { className: classes } ) }>\n\t\t\t\t{ figure }\n\t\t\t</figure>\n\t\t);\n\t},\n};\n\nexport default [ v8, v7, v6, v5, v4, v3, v2, v1 ];\n"],"mappings":"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"}
@@ -675,6 +675,7 @@ export class ImageEdit extends Component {
675
675
  }, createElement(View, {
676
676
  style: styles.content
677
677
  }, isSelected && getInspectorControls(), isSelected && getMediaOptions(), !this.state.isCaptionSelected && getToolbarEditButton(openMediaOptions), createElement(MediaUploadProgress, {
678
+ enablePausedUploads: true,
678
679
  coverUrl: url,
679
680
  mediaId: id,
680
681
  onUpdateMediaProgress: this.updateMediaProgress,
@@ -682,6 +683,7 @@ export class ImageEdit extends Component {
682
683
  onFinishMediaUploadWithFailure: this.finishMediaUploadWithFailure,
683
684
  onMediaUploadStateReset: this.mediaUploadStateReset,
684
685
  renderContent: ({
686
+ isUploadPaused,
685
687
  isUploadInProgress,
686
688
  isUploadFailed,
687
689
  retryMessage
@@ -693,6 +695,7 @@ export class ImageEdit extends Component {
693
695
  alt: alt,
694
696
  isSelected: isSelected && !isCaptionSelected,
695
697
  isUploadFailed: isUploadFailed,
698
+ isUploadPaused: isUploadPaused,
696
699
  isUploadInProgress: isUploadInProgress,
697
700
  shouldUseFastImage: shouldUseFastImage,
698
701
  onSelectMediaUploadOption: this.onSelectMediaUploadOption,
@@ -1 +1 @@
1
- {"version":3,"names":["ActivityIndicator","Image","RNImage","TouchableWithoutFeedback","View","useRoute","Component","useEffect","requestMediaImport","mediaUploadSync","requestImageFailedRetryDialog","requestImageUploadCancelDialog","requestImageFullscreenPreview","setFeaturedImage","Icon","PanelBody","ToolbarButton","ToolbarGroup","WIDE_ALIGNMENTS","LinkSettingsNavigation","BottomSheet","BottomSheetTextControl","BottomSheetSelectControl","FooterMessageControl","FooterMessageLink","Badge","BlockCaption","MediaPlaceholder","MediaUpload","MediaUploadProgress","MEDIA_TYPE_IMAGE","BlockControls","InspectorControls","BlockStyles","store","blockEditorStore","blockSettingsScreens","RichText","__","_x","sprintf","getProtocol","hasQueryArg","isURL","doAction","hasAction","compose","withPreferredColorScheme","withSelect","withDispatch","image","placeholderIcon","replace","fullscreen","textColor","coreStore","noticesStore","editPostStore","styles","getUpdatedLinkTargetSettings","LINK_DESTINATION_NONE","LINK_DESTINATION_CUSTOM","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_MEDIA","MEDIA_ID_NO_FEATURED_IMAGE_SET","getUrlForSlug","sizeSlug","undefined","media_details","sizes","source_url","LinkSettings","attributes","isLinkSheetVisible","setMappedAttributes","route","href","url","label","linkDestination","linkTarget","rel","inputValue","newUrl","params","newLinkDestination","link","valueMask","linkSettingsOptions","autoFocus","autoFill","openInNewTab","linkRel","placeholder","createElement","title","isVisible","setAttributes","withBottomSheet","hasPicker","options","showIcon","onLinkCellPressed","navigation","navigate","imageLinkDestinations","imageUrl","attachmentPageUrl","UPLOAD_STATE_IDLE","UPLOAD_STATE_UPLOADING","UPLOAD_STATE_SUCCEEDED","UPLOAD_STATE_FAILED","ImageEdit","constructor","props","state","isCaptionSelected","uploadStatus","replacedFeaturedImage","finishMediaUploadWithSuccess","bind","finishMediaUploadWithFailure","mediaUploadStateReset","onSelectMediaUploadOption","updateMediaProgress","updateImageURL","onSetNewTab","onSetSizeSlug","onImagePressed","onSetFeatured","onFocusCaption","onSelectURL","accessibilityLabelCreator","onSizeChangeValue","componentDidMount","id","console","warn","componentWillUnmount","componentDidUpdate","previousProps","featuredImageId","updatedUrl","previousId","canImageBeFeatured","align","__unstableMarkNextChangeAsNotPersistent","includes","width","height","aspectRatio","scale","getDerivedStateFromProps","isSelected","caption","isEmpty","setState","payload","mediaUrl","mediaServerId","mediaId","value","updatedLinkTarget","media","imageDefaultSize","destination","mediaAttributes","alt","additionalAttributes","newURL","createErrorNotice","isFetchingImage","getSize","onFocus","getPlaceholderIcon","icon","getStylesFromColorScheme","iconPlaceholder","iconPlaceholderDark","showLoadingIndicator","style","image__loading","animating","getWidth","Object","values","alignments","restAttributes","getAltTextSettings","updateAlt","newAlt","initialValue","onChange","footerNote","Fragment","newValue","closeSettingsBottomSheet","getFeaturedButtonPanel","isFeaturedImage","setFeaturedButtonStyle","setFeaturedButton","setFeaturedButtonDark","removeFeaturedButton","Cell","labelStyle","cellContainerStyle","setFeaturedButtonCellContainer","separatorType","onPress","isGif","toLowerCase","render","clientId","context","wasBlockJustInserted","shouldUseFastImage","className","hasImageContext","keys","length","imageSizes","Array","isArray","sizeOptions","filter","slug","map","name","selectedSizeOption","sizeOptionsValid","find","option","getToolbarEditButton","open","onClick","getInspectorControls","panelBody","titleStyle","featuredImagePanelTitle","content","allowedTypes","onSelect","autoOpenMediaUpload","alignToFlex","left","center","right","full","wide","additionalImageProps","resizeMode","imageCrop","imageContainerStyles","fixedHeight","badgeLabelShown","badgeLabelText","getImageComponent","openMediaOptions","getMediaOptions","show","accessible","disabled","coverUrl","onUpdateMediaProgress","onFinishMediaUploadWithSuccess","onFinishMediaUploadWithFailure","onMediaUploadStateReset","renderContent","isUploadInProgress","isUploadFailed","retryMessage","shapeStyle","onBlur","insertBlocksAfter","isReplacingMedia","select","getMedia","getSettings","getEditedPostAttribute","capabilities","isNotFileUrl","shouldGetMedia","dispatch","closeGeneralSidebar"],"sources":["@wordpress/block-library/src/image/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tActivityIndicator,\n\tImage as RNImage,\n\tTouchableWithoutFeedback,\n\tView,\n} from 'react-native';\nimport { useRoute } from '@react-navigation/native';\n\n/**\n * WordPress dependencies\n */\nimport { Component, useEffect } from '@wordpress/element';\nimport {\n\trequestMediaImport,\n\tmediaUploadSync,\n\trequestImageFailedRetryDialog,\n\trequestImageUploadCancelDialog,\n\trequestImageFullscreenPreview,\n\tsetFeaturedImage,\n} from '@wordpress/react-native-bridge';\nimport {\n\tIcon,\n\tPanelBody,\n\tToolbarButton,\n\tToolbarGroup,\n\tImage,\n\tWIDE_ALIGNMENTS,\n\tLinkSettingsNavigation,\n\tBottomSheet,\n\tBottomSheetTextControl,\n\tBottomSheetSelectControl,\n\tFooterMessageControl,\n\tFooterMessageLink,\n\tBadge,\n} from '@wordpress/components';\nimport {\n\tBlockCaption,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadProgress,\n\tMEDIA_TYPE_IMAGE,\n\tBlockControls,\n\tInspectorControls,\n\tBlockStyles,\n\tstore as blockEditorStore,\n\tblockSettingsScreens,\n\tRichText,\n} from '@wordpress/block-editor';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { getProtocol, hasQueryArg, isURL } from '@wordpress/url';\nimport { doAction, hasAction } from '@wordpress/hooks';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport {\n\timage as placeholderIcon,\n\treplace,\n\tfullscreen,\n\ttextColor,\n} from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\n// eslint-disable-next-line no-restricted-imports\nimport { store as editPostStore } from '@wordpress/edit-post';\n\n/**\n * Internal dependencies\n */\nimport styles from './styles.scss';\nimport { getUpdatedLinkTargetSettings } from './utils';\n\nimport {\n\tLINK_DESTINATION_NONE,\n\tLINK_DESTINATION_CUSTOM,\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA,\n\tMEDIA_ID_NO_FEATURED_IMAGE_SET,\n} from './constants';\n\nconst getUrlForSlug = ( image, sizeSlug ) => {\n\tif ( ! sizeSlug ) {\n\t\treturn undefined;\n\t}\n\treturn image?.media_details?.sizes?.[ sizeSlug ]?.source_url;\n};\n\nfunction LinkSettings( {\n\tattributes,\n\timage,\n\tisLinkSheetVisible,\n\tsetMappedAttributes,\n} ) {\n\tconst route = useRoute();\n\tconst { href: url, label, linkDestination, linkTarget, rel } = attributes;\n\n\t// Persist attributes passed from child screen.\n\tuseEffect( () => {\n\t\tconst { inputValue: newUrl } = route.params || {};\n\n\t\tlet newLinkDestination;\n\t\tswitch ( newUrl ) {\n\t\t\tcase attributes.url:\n\t\t\t\tnewLinkDestination = LINK_DESTINATION_MEDIA;\n\t\t\t\tbreak;\n\t\t\tcase image?.link:\n\t\t\t\tnewLinkDestination = LINK_DESTINATION_ATTACHMENT;\n\t\t\t\tbreak;\n\t\t\tcase '':\n\t\t\t\tnewLinkDestination = LINK_DESTINATION_NONE;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tnewLinkDestination = LINK_DESTINATION_CUSTOM;\n\t\t\t\tbreak;\n\t\t}\n\n\t\tsetMappedAttributes( {\n\t\t\turl: newUrl,\n\t\t\tlinkDestination: newLinkDestination,\n\t\t} );\n\t}, [ route.params?.inputValue ] );\n\n\tlet valueMask;\n\tswitch ( linkDestination ) {\n\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\tvalueMask = __( 'Media File' );\n\t\t\tbreak;\n\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\tvalueMask = __( 'Attachment Page' );\n\t\t\tbreak;\n\t\tcase LINK_DESTINATION_CUSTOM:\n\t\t\tvalueMask = __( 'Custom URL' );\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tvalueMask = __( 'None' );\n\t\t\tbreak;\n\t}\n\n\tconst linkSettingsOptions = {\n\t\turl: {\n\t\t\tvalueMask,\n\t\t\tautoFocus: false,\n\t\t\tautoFill: false,\n\t\t},\n\t\topenInNewTab: {\n\t\t\tlabel: __( 'Open in new tab' ),\n\t\t},\n\t\tlinkRel: {\n\t\t\tlabel: __( 'Link Rel' ),\n\t\t\tplaceholder: _x( 'None', 'Link rel attribute value placeholder' ),\n\t\t},\n\t};\n\n\treturn (\n\t\t<PanelBody title={ __( 'Link Settings' ) }>\n\t\t\t<LinkSettingsNavigation\n\t\t\t\tisVisible={ isLinkSheetVisible }\n\t\t\t\turl={ url }\n\t\t\t\trel={ rel }\n\t\t\t\tlabel={ label }\n\t\t\t\tlinkTarget={ linkTarget }\n\t\t\t\tsetAttributes={ setMappedAttributes }\n\t\t\t\twithBottomSheet={ false }\n\t\t\t\thasPicker\n\t\t\t\toptions={ linkSettingsOptions }\n\t\t\t\tshowIcon={ false }\n\t\t\t\tonLinkCellPressed={ ( { navigation } ) => {\n\t\t\t\t\tnavigation.navigate(\n\t\t\t\t\t\tblockSettingsScreens.imageLinkDestinations,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tinputValue: attributes.href,\n\t\t\t\t\t\t\tlinkDestination: attributes.linkDestination,\n\t\t\t\t\t\t\timageUrl: attributes.url,\n\t\t\t\t\t\t\tattachmentPageUrl: image?.link,\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t/>\n\t\t</PanelBody>\n\t);\n}\n\nconst UPLOAD_STATE_IDLE = 0;\nconst UPLOAD_STATE_UPLOADING = 1;\nconst UPLOAD_STATE_SUCCEEDED = 2;\nconst UPLOAD_STATE_FAILED = 3;\n\nexport class ImageEdit extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\n\t\tthis.state = {\n\t\t\tisCaptionSelected: false,\n\t\t\tuploadStatus: UPLOAD_STATE_IDLE,\n\t\t};\n\n\t\tthis.replacedFeaturedImage = false;\n\n\t\tthis.finishMediaUploadWithSuccess =\n\t\t\tthis.finishMediaUploadWithSuccess.bind( this );\n\t\tthis.finishMediaUploadWithFailure =\n\t\t\tthis.finishMediaUploadWithFailure.bind( this );\n\t\tthis.mediaUploadStateReset = this.mediaUploadStateReset.bind( this );\n\t\tthis.onSelectMediaUploadOption =\n\t\t\tthis.onSelectMediaUploadOption.bind( this );\n\t\tthis.updateMediaProgress = this.updateMediaProgress.bind( this );\n\t\tthis.updateImageURL = this.updateImageURL.bind( this );\n\t\tthis.onSetNewTab = this.onSetNewTab.bind( this );\n\t\tthis.onSetSizeSlug = this.onSetSizeSlug.bind( this );\n\t\tthis.onImagePressed = this.onImagePressed.bind( this );\n\t\tthis.onSetFeatured = this.onSetFeatured.bind( this );\n\t\tthis.onFocusCaption = this.onFocusCaption.bind( this );\n\t\tthis.onSelectURL = this.onSelectURL.bind( this );\n\t\tthis.accessibilityLabelCreator =\n\t\t\tthis.accessibilityLabelCreator.bind( this );\n\t\tthis.setMappedAttributes = this.setMappedAttributes.bind( this );\n\t\tthis.onSizeChangeValue = this.onSizeChangeValue.bind( this );\n\t}\n\n\tcomponentDidMount() {\n\t\tconst { attributes, setAttributes } = this.props;\n\t\t// This will warn when we have `id` defined, while `url` is undefined.\n\t\t// This may help track this issue: https://github.com/wordpress-mobile/WordPress-Android/issues/9768\n\t\t// where a cancelled image upload was resulting in a subsequent crash.\n\t\tif ( attributes.id && ! attributes.url ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.warn( 'Attributes has id with no url.' );\n\t\t}\n\n\t\t// Detect any pasted image and start an upload.\n\t\tif (\n\t\t\t! attributes.id &&\n\t\t\tattributes.url &&\n\t\t\tgetProtocol( attributes.url ) === 'file:'\n\t\t) {\n\t\t\trequestMediaImport( attributes.url, ( id, url ) => {\n\t\t\t\tif ( url ) {\n\t\t\t\t\tsetAttributes( { id, url } );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\t// Make sure we mark any temporary images as failed if they failed while\n\t\t// the editor wasn't open.\n\t\tif (\n\t\t\tattributes.id &&\n\t\t\tattributes.url &&\n\t\t\tgetProtocol( attributes.url ) === 'file:'\n\t\t) {\n\t\t\tmediaUploadSync();\n\t\t}\n\t}\n\n\tcomponentWillUnmount() {\n\t\t// This action will only exist if the user pressed the trash button on the block holder.\n\t\tif (\n\t\t\thasAction( 'blocks.onRemoveBlockCheckUpload' ) &&\n\t\t\tthis.state.uploadStatus === UPLOAD_STATE_UPLOADING\n\t\t) {\n\t\t\tdoAction(\n\t\t\t\t'blocks.onRemoveBlockCheckUpload',\n\t\t\t\tthis.props.attributes.id\n\t\t\t);\n\t\t}\n\t}\n\n\tcomponentDidUpdate( previousProps ) {\n\t\tconst { image, attributes, setAttributes, featuredImageId } =\n\t\t\tthis.props;\n\t\tconst { url } = attributes;\n\t\tif ( ! previousProps.image && image ) {\n\t\t\tif ( ! hasQueryArg( url, 'w' ) && attributes?.sizeSlug ) {\n\t\t\t\tconst updatedUrl =\n\t\t\t\t\tgetUrlForSlug( image, attributes.sizeSlug ) ||\n\t\t\t\t\timage.source_url;\n\n\t\t\t\tsetAttributes( { url: updatedUrl } );\n\t\t\t}\n\t\t}\n\n\t\tconst { id } = attributes;\n\t\tconst { id: previousId } = previousProps.attributes;\n\n\t\t// The media changed and the previous media was set as the Featured Image,\n\t\t// we must keep track of the previous media's featured status to act on it\n\t\t// once the new media has a finalized ID.\n\t\tif (\n\t\t\t!! id &&\n\t\t\tid !== previousId &&\n\t\t\t!! featuredImageId &&\n\t\t\tfeaturedImageId === previousId\n\t\t) {\n\t\t\tthis.replacedFeaturedImage = true;\n\t\t}\n\n\t\t// The media changed and now has a finalized ID (e.g. upload completed), we\n\t\t// should attempt to replace the featured image if applicable.\n\t\tif (\n\t\t\tthis.replacedFeaturedImage &&\n\t\t\t!! image &&\n\t\t\tthis.canImageBeFeatured()\n\t\t) {\n\t\t\tthis.replacedFeaturedImage = false;\n\t\t\tsetFeaturedImage( id );\n\t\t}\n\n\t\tconst { align } = attributes;\n\t\tconst { __unstableMarkNextChangeAsNotPersistent } = this.props;\n\n\t\t// Update the attributes if the align is wide or full\n\t\tif ( [ 'wide', 'full' ].includes( align ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\taspectRatio: undefined,\n\t\t\t\tscale: undefined,\n\t\t\t} );\n\t\t}\n\t}\n\n\tstatic getDerivedStateFromProps( props, state ) {\n\t\t// Avoid a UI flicker in the toolbar by insuring that isCaptionSelected\n\t\t// is updated immediately any time the isSelected prop becomes false.\n\t\treturn {\n\t\t\tisCaptionSelected: props.isSelected && state.isCaptionSelected,\n\t\t};\n\t}\n\n\taccessibilityLabelCreator( caption ) {\n\t\t// Checks if caption is empty.\n\t\treturn RichText.isEmpty( caption )\n\t\t\t? /* translators: accessibility text. Empty image caption. */\n\t\t\t 'Image caption. Empty'\n\t\t\t: sprintf(\n\t\t\t\t\t/* translators: accessibility text. %s: image caption. */\n\t\t\t\t\t__( 'Image caption. %s' ),\n\t\t\t\t\tcaption\n\t\t\t );\n\t}\n\n\tonImagePressed() {\n\t\tconst { attributes, image } = this.props;\n\n\t\tif ( this.state.uploadStatus === UPLOAD_STATE_UPLOADING ) {\n\t\t\trequestImageUploadCancelDialog( attributes.id );\n\t\t} else if (\n\t\t\tattributes.id &&\n\t\t\tgetProtocol( attributes.url ) === 'file:'\n\t\t) {\n\t\t\trequestImageFailedRetryDialog( attributes.id );\n\t\t} else if ( ! this.state.isCaptionSelected ) {\n\t\t\trequestImageFullscreenPreview(\n\t\t\t\tattributes.url,\n\t\t\t\timage && image.source_url\n\t\t\t);\n\t\t}\n\n\t\tthis.setState( {\n\t\t\tisCaptionSelected: false,\n\t\t} );\n\t}\n\n\tupdateMediaProgress( payload ) {\n\t\tconst { setAttributes } = this.props;\n\t\tif ( payload.mediaUrl ) {\n\t\t\tsetAttributes( { url: payload.mediaUrl } );\n\t\t}\n\n\t\tif ( this.state.uploadStatus !== UPLOAD_STATE_UPLOADING ) {\n\t\t\tthis.setState( { uploadStatus: UPLOAD_STATE_UPLOADING } );\n\t\t}\n\t}\n\n\tfinishMediaUploadWithSuccess( payload ) {\n\t\tconst { setAttributes } = this.props;\n\n\t\tsetAttributes( { url: payload.mediaUrl, id: payload.mediaServerId } );\n\t\tthis.setState( { uploadStatus: UPLOAD_STATE_SUCCEEDED } );\n\t}\n\n\tfinishMediaUploadWithFailure( payload ) {\n\t\tconst { setAttributes } = this.props;\n\n\t\tsetAttributes( { id: payload.mediaId } );\n\t\tthis.setState( { uploadStatus: UPLOAD_STATE_FAILED } );\n\t}\n\n\tmediaUploadStateReset() {\n\t\tconst { setAttributes } = this.props;\n\n\t\tsetAttributes( { id: null, url: null } );\n\t\tthis.setState( { uploadStatus: UPLOAD_STATE_IDLE } );\n\t}\n\n\tupdateImageURL( url ) {\n\t\tthis.props.setAttributes( {\n\t\t\turl,\n\t\t\twidth: undefined,\n\t\t\theight: undefined,\n\t\t} );\n\t}\n\n\tonSetNewTab( value ) {\n\t\tconst updatedLinkTarget = getUpdatedLinkTargetSettings(\n\t\t\tvalue,\n\t\t\tthis.props.attributes\n\t\t);\n\t\tthis.props.setAttributes( updatedLinkTarget );\n\t}\n\n\tonSetSizeSlug( sizeSlug ) {\n\t\tconst { image, setAttributes } = this.props;\n\n\t\tconst url = getUrlForSlug( image, sizeSlug );\n\t\tif ( ! url ) {\n\t\t\treturn null;\n\t\t}\n\t\tsetAttributes( {\n\t\t\turl,\n\t\t\twidth: undefined,\n\t\t\theight: undefined,\n\t\t\tsizeSlug,\n\t\t} );\n\t}\n\n\tonSelectMediaUploadOption( media ) {\n\t\tconst { imageDefaultSize } = this.props;\n\t\tconst { id, url, destination } = this.props.attributes;\n\t\tconst mediaAttributes = {\n\t\t\tid: media.id,\n\t\t\turl: media.url,\n\t\t\tcaption: media.caption,\n\t\t\talt: media.alt,\n\t\t};\n\n\t\tlet additionalAttributes;\n\t\t// Reset the dimension attributes if changing to a different image.\n\t\tif ( ! media.id || media.id !== id ) {\n\t\t\tadditionalAttributes = {\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\tsizeSlug: imageDefaultSize,\n\t\t\t};\n\t\t} else {\n\t\t\t// Keep the same url when selecting the same file, so \"Image Size\" option is not changed.\n\t\t\tadditionalAttributes = { url };\n\t\t}\n\n\t\tlet href;\n\t\tswitch ( destination ) {\n\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\thref = media.url;\n\t\t\t\tbreak;\n\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\thref = media.link;\n\t\t\t\tbreak;\n\t\t}\n\t\tmediaAttributes.href = href;\n\n\t\tthis.props.setAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\t...additionalAttributes,\n\t\t} );\n\t}\n\n\tonSelectURL( newURL ) {\n\t\tconst { createErrorNotice, imageDefaultSize, setAttributes } =\n\t\t\tthis.props;\n\n\t\tif ( isURL( newURL ) ) {\n\t\t\tthis.setState( {\n\t\t\t\tisFetchingImage: true,\n\t\t\t} );\n\n\t\t\t// Use RN's Image.getSize to determine if URL is a valid image\n\t\t\tRNImage.getSize(\n\t\t\t\tnewURL,\n\t\t\t\t() => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\tid: undefined,\n\t\t\t\t\t\twidth: undefined,\n\t\t\t\t\t\theight: undefined,\n\t\t\t\t\t\tsizeSlug: imageDefaultSize,\n\t\t\t\t\t} );\n\t\t\t\t\tthis.setState( {\n\t\t\t\t\t\tisFetchingImage: false,\n\t\t\t\t\t} );\n\t\t\t\t},\n\t\t\t\t() => {\n\t\t\t\t\tcreateErrorNotice( __( 'Image file not found.' ) );\n\t\t\t\t\tthis.setState( {\n\t\t\t\t\t\tisFetchingImage: false,\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t);\n\t\t} else {\n\t\t\tcreateErrorNotice( __( 'Invalid URL.' ) );\n\t\t}\n\t}\n\n\tonFocusCaption() {\n\t\tif ( this.props.onFocus ) {\n\t\t\tthis.props.onFocus();\n\t\t}\n\t\tif ( ! this.state.isCaptionSelected ) {\n\t\t\tthis.setState( {\n\t\t\t\tisCaptionSelected: true,\n\t\t\t} );\n\t\t}\n\t}\n\n\tgetPlaceholderIcon() {\n\t\treturn (\n\t\t\t<Icon\n\t\t\t\ticon={ placeholderIcon }\n\t\t\t\t{ ...this.props.getStylesFromColorScheme(\n\t\t\t\t\tstyles.iconPlaceholder,\n\t\t\t\t\tstyles.iconPlaceholderDark\n\t\t\t\t) }\n\t\t\t/>\n\t\t);\n\t}\n\n\tshowLoadingIndicator() {\n\t\treturn (\n\t\t\t<View style={ styles.image__loading }>\n\t\t\t\t<ActivityIndicator animating />\n\t\t\t</View>\n\t\t);\n\t}\n\n\tgetWidth() {\n\t\tconst { attributes } = this.props;\n\t\tconst { align, width } = attributes;\n\n\t\treturn Object.values( WIDE_ALIGNMENTS.alignments ).includes( align )\n\t\t\t? '100%'\n\t\t\t: width;\n\t}\n\n\tsetMappedAttributes( { url: href, linkDestination, ...restAttributes } ) {\n\t\tconst { setAttributes } = this.props;\n\t\tif ( ! href && ! linkDestination ) {\n\t\t\tlinkDestination = LINK_DESTINATION_NONE;\n\t\t} else if ( ! linkDestination ) {\n\t\t\tlinkDestination = LINK_DESTINATION_CUSTOM;\n\t\t}\n\n\t\treturn href === undefined || href === this.props.attributes.href\n\t\t\t? setAttributes( restAttributes )\n\t\t\t: setAttributes( {\n\t\t\t\t\t...restAttributes,\n\t\t\t\t\tlinkDestination,\n\t\t\t\t\thref,\n\t\t\t } );\n\t}\n\n\tgetAltTextSettings() {\n\t\tconst {\n\t\t\tattributes: { alt },\n\t\t} = this.props;\n\n\t\tconst updateAlt = ( newAlt ) => {\n\t\t\tthis.props.setAttributes( { alt: newAlt } );\n\t\t};\n\n\t\treturn (\n\t\t\t<BottomSheetTextControl\n\t\t\t\tinitialValue={ alt }\n\t\t\t\tonChange={ updateAlt }\n\t\t\t\tplaceholder={ __( 'Add alt text' ) }\n\t\t\t\tlabel={ __( 'Alt Text' ) }\n\t\t\t\ticon={ textColor }\n\t\t\t\tfooterNote={\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Describe the purpose of the image. Leave empty if decorative.'\n\t\t\t\t\t\t) }{ ' ' }\n\t\t\t\t\t\t<FooterMessageLink\n\t\t\t\t\t\t\thref={\n\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}\n\t\t\t\t\t\t\tvalue={ __( 'What is alt text?' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\n\tonSizeChangeValue( newValue ) {\n\t\tthis.onSetSizeSlug( newValue );\n\t}\n\n\tonSetFeatured( mediaId ) {\n\t\tconst { closeSettingsBottomSheet } = this.props;\n\t\tsetFeaturedImage( mediaId );\n\t\tcloseSettingsBottomSheet();\n\t}\n\n\tgetFeaturedButtonPanel( isFeaturedImage ) {\n\t\tconst { attributes, getStylesFromColorScheme } = this.props;\n\n\t\tconst setFeaturedButtonStyle = getStylesFromColorScheme(\n\t\t\tstyles.setFeaturedButton,\n\t\t\tstyles.setFeaturedButtonDark\n\t\t);\n\n\t\tconst removeFeaturedButton = () => (\n\t\t\t<BottomSheet.Cell\n\t\t\t\tlabel={ __( 'Remove as Featured Image' ) }\n\t\t\t\tlabelStyle={ [\n\t\t\t\t\tsetFeaturedButtonStyle,\n\t\t\t\t\tstyles.removeFeaturedButton,\n\t\t\t\t] }\n\t\t\t\tcellContainerStyle={ styles.setFeaturedButtonCellContainer }\n\t\t\t\tseparatorType={ 'none' }\n\t\t\t\tonPress={ () =>\n\t\t\t\t\tthis.onSetFeatured( MEDIA_ID_NO_FEATURED_IMAGE_SET )\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\n\t\tconst setFeaturedButton = () => (\n\t\t\t<BottomSheet.Cell\n\t\t\t\tlabel={ __( 'Set as Featured Image' ) }\n\t\t\t\tlabelStyle={ setFeaturedButtonStyle }\n\t\t\t\tcellContainerStyle={ styles.setFeaturedButtonCellContainer }\n\t\t\t\tseparatorType={ 'none' }\n\t\t\t\tonPress={ () => this.onSetFeatured( attributes.id ) }\n\t\t\t/>\n\t\t);\n\n\t\treturn isFeaturedImage ? removeFeaturedButton() : setFeaturedButton();\n\t}\n\n\t/**\n\t * Featured images must be set to a successfully uploaded self-hosted image,\n\t * which has an ID.\n\t *\n\t * @return {boolean} Boolean indicating whether or not the current may be set as featured.\n\t */\n\tcanImageBeFeatured() {\n\t\tconst {\n\t\t\tattributes: { id },\n\t\t} = this.props;\n\t\treturn (\n\t\t\ttypeof id !== 'undefined' &&\n\t\t\tthis.state.uploadStatus !== UPLOAD_STATE_UPLOADING &&\n\t\t\tthis.state.uploadStatus !== UPLOAD_STATE_FAILED\n\t\t);\n\t}\n\n\tisGif( url ) {\n\t\treturn url.toLowerCase().includes( '.gif' );\n\t}\n\n\trender() {\n\t\tconst { isCaptionSelected, isFetchingImage } = this.state;\n\t\tconst {\n\t\t\tattributes,\n\t\t\tisSelected,\n\t\t\timage,\n\t\t\tclientId,\n\t\t\timageDefaultSize,\n\t\t\tcontext,\n\t\t\tfeaturedImageId,\n\t\t\twasBlockJustInserted,\n\t\t\tshouldUseFastImage,\n\t\t} = this.props;\n\t\tconst { align, url, alt, id, sizeSlug, className } = attributes;\n\t\tconst hasImageContext = context\n\t\t\t? Object.keys( context ).length > 0\n\t\t\t: false;\n\n\t\tconst imageSizes = Array.isArray( this.props.imageSizes )\n\t\t\t? this.props.imageSizes\n\t\t\t: [];\n\t\t// Only map available image sizes for the user to choose.\n\t\tconst sizeOptions = imageSizes\n\t\t\t.filter( ( { slug } ) => getUrlForSlug( image, slug ) )\n\t\t\t.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\n\t\tlet selectedSizeOption = sizeSlug || imageDefaultSize;\n\t\tlet sizeOptionsValid = sizeOptions.find(\n\t\t\t( option ) => option.value === selectedSizeOption\n\t\t);\n\n\t\tif ( ! sizeOptionsValid ) {\n\t\t\t// Default to 'full' size if the default large size is not available.\n\t\t\tsizeOptionsValid = sizeOptions.find(\n\t\t\t\t( option ) => option.value === 'full'\n\t\t\t);\n\t\t\tselectedSizeOption = 'full';\n\t\t}\n\n\t\tconst canImageBeFeatured = this.canImageBeFeatured();\n\t\tconst isFeaturedImage =\n\t\t\tcanImageBeFeatured && featuredImageId === attributes.id;\n\n\t\tconst getToolbarEditButton = ( open ) => (\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ttitle={ __( 'Edit image' ) }\n\t\t\t\t\t\ticon={ replace }\n\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t/>\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t);\n\n\t\tconst getInspectorControls = () => (\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) } />\n\t\t\t\t<PanelBody style={ styles.panelBody }>\n\t\t\t\t\t<BlockStyles clientId={ clientId } url={ url } />\n\t\t\t\t</PanelBody>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t{ image && sizeOptionsValid && (\n\t\t\t\t\t\t<BottomSheetSelectControl\n\t\t\t\t\t\t\ticon={ fullscreen }\n\t\t\t\t\t\t\tlabel={ __( 'Size' ) }\n\t\t\t\t\t\t\toptions={ sizeOptions }\n\t\t\t\t\t\t\tonChange={ this.onSizeChangeValue }\n\t\t\t\t\t\t\tvalue={ selectedSizeOption }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ this.getAltTextSettings() }\n\t\t\t\t</PanelBody>\n\t\t\t\t<LinkSettings\n\t\t\t\t\tattributes={ this.props.attributes }\n\t\t\t\t\timage={ this.props.image }\n\t\t\t\t\tisLinkSheetVisible={ this.state.isLinkSheetVisible }\n\t\t\t\t\tsetMappedAttributes={ this.setMappedAttributes }\n\t\t\t\t/>\n\t\t\t\t<PanelBody\n\t\t\t\t\ttitle={ __( 'Featured Image' ) }\n\t\t\t\t\ttitleStyle={ styles.featuredImagePanelTitle }\n\t\t\t\t>\n\t\t\t\t\t{ canImageBeFeatured &&\n\t\t\t\t\t\tthis.getFeaturedButtonPanel( isFeaturedImage ) }\n\t\t\t\t\t<FooterMessageControl\n\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t'Changes to featured image will not be affected by the undo/redo buttons.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tcellContainerStyle={\n\t\t\t\t\t\t\tstyles.setFeaturedButtonCellContainer\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t);\n\n\t\tif ( ! url ) {\n\t\t\treturn (\n\t\t\t\t<View style={ styles.content }>\n\t\t\t\t\t{ isFetchingImage && this.showLoadingIndicator() }\n\t\t\t\t\t<MediaPlaceholder\n\t\t\t\t\t\tallowedTypes={ [ MEDIA_TYPE_IMAGE ] }\n\t\t\t\t\t\tonSelect={ this.onSelectMediaUploadOption }\n\t\t\t\t\t\tonSelectURL={ this.onSelectURL }\n\t\t\t\t\t\ticon={ this.getPlaceholderIcon() }\n\t\t\t\t\t\tonFocus={ this.props.onFocus }\n\t\t\t\t\t\tautoOpenMediaUpload={\n\t\t\t\t\t\t\tisSelected && wasBlockJustInserted\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\n\t\tconst alignToFlex = {\n\t\t\tleft: 'flex-start',\n\t\t\tcenter: 'center',\n\t\t\tright: 'flex-end',\n\t\t\tfull: 'center',\n\t\t\twide: 'center',\n\t\t};\n\n\t\tconst additionalImageProps = {\n\t\t\theight: '100%',\n\t\t\tresizeMode: context?.imageCrop ? 'cover' : 'contain',\n\t\t};\n\n\t\tconst imageContainerStyles = [\n\t\t\tcontext?.fixedHeight && styles.fixedHeight,\n\t\t];\n\n\t\tconst isGif = this.isGif( url );\n\t\tconst badgeLabelShown = isFeaturedImage || isGif;\n\t\tlet badgeLabelText = '';\n\t\tif ( isFeaturedImage ) {\n\t\t\tbadgeLabelText = __( 'Featured' );\n\t\t} else if ( isGif ) {\n\t\t\tbadgeLabelText = __( 'GIF' );\n\t\t}\n\n\t\tconst getImageComponent = ( openMediaOptions, getMediaOptions ) => (\n\t\t\t<Badge label={ badgeLabelText } show={ badgeLabelShown }>\n\t\t\t\t<TouchableWithoutFeedback\n\t\t\t\t\taccessible={ ! isSelected }\n\t\t\t\t\tonPress={ this.onImagePressed }\n\t\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\t>\n\t\t\t\t\t<View style={ styles.content }>\n\t\t\t\t\t\t{ isSelected && getInspectorControls() }\n\t\t\t\t\t\t{ isSelected && getMediaOptions() }\n\t\t\t\t\t\t{ ! this.state.isCaptionSelected &&\n\t\t\t\t\t\t\tgetToolbarEditButton( openMediaOptions ) }\n\t\t\t\t\t\t<MediaUploadProgress\n\t\t\t\t\t\t\tcoverUrl={ url }\n\t\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\t\tonUpdateMediaProgress={ this.updateMediaProgress }\n\t\t\t\t\t\t\tonFinishMediaUploadWithSuccess={\n\t\t\t\t\t\t\t\tthis.finishMediaUploadWithSuccess\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonFinishMediaUploadWithFailure={\n\t\t\t\t\t\t\t\tthis.finishMediaUploadWithFailure\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonMediaUploadStateReset={\n\t\t\t\t\t\t\t\tthis.mediaUploadStateReset\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\trenderContent={ ( {\n\t\t\t\t\t\t\t\tisUploadInProgress,\n\t\t\t\t\t\t\t\tisUploadFailed,\n\t\t\t\t\t\t\t\tretryMessage,\n\t\t\t\t\t\t\t} ) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<View style={ imageContainerStyles }>\n\t\t\t\t\t\t\t\t\t\t{ isFetchingImage &&\n\t\t\t\t\t\t\t\t\t\t\tthis.showLoadingIndicator() }\n\t\t\t\t\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\t\t\t\t\talign={\n\t\t\t\t\t\t\t\t\t\t\t\talign && alignToFlex[ align ]\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\t\t\t\t\t\tisSelected={\n\t\t\t\t\t\t\t\t\t\t\t\tisSelected &&\n\t\t\t\t\t\t\t\t\t\t\t\t! isCaptionSelected\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tisUploadFailed={ isUploadFailed }\n\t\t\t\t\t\t\t\t\t\t\tisUploadInProgress={\n\t\t\t\t\t\t\t\t\t\t\t\tisUploadInProgress\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tshouldUseFastImage={\n\t\t\t\t\t\t\t\t\t\t\t\tshouldUseFastImage\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tonSelectMediaUploadOption={\n\t\t\t\t\t\t\t\t\t\t\t\tthis.onSelectMediaUploadOption\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\topenMediaOptions={\n\t\t\t\t\t\t\t\t\t\t\t\topenMediaOptions\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tretryMessage={ retryMessage }\n\t\t\t\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\t\t\t\tshapeStyle={\n\t\t\t\t\t\t\t\t\t\t\t\tstyles[ className ] || className\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\twidth={ this.getWidth() }\n\t\t\t\t\t\t\t\t\t\t\t{ ...( hasImageContext\n\t\t\t\t\t\t\t\t\t\t\t\t? additionalImageProps\n\t\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</View>\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</View>\n\t\t\t\t</TouchableWithoutFeedback>\n\t\t\t\t<BlockCaption\n\t\t\t\t\tclientId={ this.props.clientId }\n\t\t\t\t\tisSelected={ this.state.isCaptionSelected }\n\t\t\t\t\taccessible={ ! this.state.isCaptionSelected }\n\t\t\t\t\taccessibilityLabelCreator={ this.accessibilityLabelCreator }\n\t\t\t\t\tonFocus={ this.onFocusCaption }\n\t\t\t\t\tonBlur={ this.props.onBlur } // Always assign onBlur as props.\n\t\t\t\t\tinsertBlocksAfter={ this.props.insertBlocksAfter }\n\t\t\t\t/>\n\t\t\t</Badge>\n\t\t);\n\n\t\treturn (\n\t\t\t<MediaUpload\n\t\t\t\tallowedTypes={ [ MEDIA_TYPE_IMAGE ] }\n\t\t\t\tisReplacingMedia={ true }\n\t\t\t\tonSelect={ this.onSelectMediaUploadOption }\n\t\t\t\tonSelectURL={ this.onSelectURL }\n\t\t\t\trender={ ( { open, getMediaOptions } ) => {\n\t\t\t\t\treturn getImageComponent( open, getMediaOptions );\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select, props ) => {\n\t\tconst { getMedia } = select( coreStore );\n\t\tconst { getSettings, wasBlockJustInserted } =\n\t\t\tselect( blockEditorStore );\n\t\tconst { getEditedPostAttribute } = select( 'core/editor' );\n\t\tconst {\n\t\t\tattributes: { id, url },\n\t\t\tisSelected,\n\t\t\tclientId,\n\t\t} = props;\n\t\tconst { imageSizes, imageDefaultSize, capabilities } = getSettings();\n\t\tconst isNotFileUrl = id && getProtocol( url ) !== 'file:';\n\t\tconst featuredImageId = getEditedPostAttribute( 'featured_media' );\n\n\t\tconst shouldGetMedia =\n\t\t\t( isSelected && isNotFileUrl ) ||\n\t\t\t// Edge case to update the image after uploading if the block gets unselected\n\t\t\t// Check if it's the original image and not the resized one with queryparams.\n\t\t\t( ! isSelected &&\n\t\t\t\tisNotFileUrl &&\n\t\t\t\turl &&\n\t\t\t\t! hasQueryArg( url, 'w' ) );\n\t\tconst image = shouldGetMedia ? getMedia( id ) : null;\n\n\t\treturn {\n\t\t\timage,\n\t\t\timageSizes,\n\t\t\timageDefaultSize,\n\t\t\tshouldUseFastImage: capabilities?.shouldUseFastImage === true,\n\t\t\tfeaturedImageId,\n\t\t\twasBlockJustInserted: wasBlockJustInserted(\n\t\t\t\tclientId,\n\t\t\t\t'inserter_menu'\n\t\t\t),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { createErrorNotice } = dispatch( noticesStore );\n\t\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\t\tdispatch( blockEditorStore );\n\n\t\treturn {\n\t\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\t\tcreateErrorNotice,\n\t\t\tcloseSettingsBottomSheet() {\n\t\t\t\tdispatch( editPostStore ).closeGeneralSidebar();\n\t\t\t},\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( ImageEdit );\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,iBAAiB,EACjBC,KAAK,IAAIC,OAAO,EAChBC,wBAAwB,EACxBC,IAAI,QACE,cAAc;AACrB,SAASC,QAAQ,QAAQ,0BAA0B;;AAEnD;AACA;AACA;AACA,SAASC,SAAS,EAAEC,SAAS,QAAQ,oBAAoB;AACzD,SACCC,kBAAkB,EAClBC,eAAe,EACfC,6BAA6B,EAC7BC,8BAA8B,EAC9BC,6BAA6B,EAC7BC,gBAAgB,QACV,gCAAgC;AACvC,SACCC,IAAI,EACJC,SAAS,EACTC,aAAa,EACbC,YAAY,EACZhB,KAAK,EACLiB,eAAe,EACfC,sBAAsB,EACtBC,WAAW,EACXC,sBAAsB,EACtBC,wBAAwB,EACxBC,oBAAoB,EACpBC,iBAAiB,EACjBC,KAAK,QACC,uBAAuB;AAC9B,SACCC,YAAY,EACZC,gBAAgB,EAChBC,WAAW,EACXC,mBAAmB,EACnBC,gBAAgB,EAChBC,aAAa,EACbC,iBAAiB,EACjBC,WAAW,EACXC,KAAK,IAAIC,gBAAgB,EACzBC,oBAAoB,EACpBC,QAAQ,QACF,yBAAyB;AAChC,SAASC,EAAE,EAAEC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AACjD,SAASC,WAAW,EAAEC,WAAW,EAAEC,KAAK,QAAQ,gBAAgB;AAChE,SAASC,QAAQ,EAAEC,SAAS,QAAQ,kBAAkB;AACtD,SAASC,OAAO,EAAEC,wBAAwB,QAAQ,oBAAoB;AACtE,SAASC,UAAU,EAAEC,YAAY,QAAQ,iBAAiB;AAC1D,SACCC,KAAK,IAAIC,eAAe,EACxBC,OAAO,EACPC,UAAU,EACVC,SAAS,QACH,kBAAkB;AACzB,SAASpB,KAAK,IAAIqB,SAAS,QAAQ,sBAAsB;AACzD,SAASrB,KAAK,IAAIsB,YAAY,QAAQ,oBAAoB;AAC1D;AACA,SAAStB,KAAK,IAAIuB,aAAa,QAAQ,sBAAsB;;AAE7D;AACA;AACA;AACA,OAAOC,MAAM,MAAM,eAAe;AAClC,SAASC,4BAA4B,QAAQ,SAAS;AAEtD,SACCC,qBAAqB,EACrBC,uBAAuB,EACvBC,2BAA2B,EAC3BC,sBAAsB,EACtBC,8BAA8B,QACxB,aAAa;AAEpB,MAAMC,aAAa,GAAGA,CAAEf,KAAK,EAAEgB,QAAQ,KAAM;EAC5C,IAAK,CAAEA,QAAQ,EAAG;IACjB,OAAOC,SAAS;EACjB;EACA,OAAOjB,KAAK,EAAEkB,aAAa,EAAEC,KAAK,GAAIH,QAAQ,CAAE,EAAEI,UAAU;AAC7D,CAAC;AAED,SAASC,YAAYA,CAAE;EACtBC,UAAU;EACVtB,KAAK;EACLuB,kBAAkB;EAClBC;AACD,CAAC,EAAG;EACH,MAAMC,KAAK,GAAGtE,QAAQ,CAAC,CAAC;EACxB,MAAM;IAAEuE,IAAI,EAAEC,GAAG;IAAEC,KAAK;IAAEC,eAAe;IAAEC,UAAU;IAAEC;EAAI,CAAC,GAAGT,UAAU;;EAEzE;EACAjE,SAAS,CAAE,MAAM;IAChB,MAAM;MAAE2E,UAAU,EAAEC;IAAO,CAAC,GAAGR,KAAK,CAACS,MAAM,IAAI,CAAC,CAAC;IAEjD,IAAIC,kBAAkB;IACtB,QAASF,MAAM;MACd,KAAKX,UAAU,CAACK,GAAG;QAClBQ,kBAAkB,GAAGtB,sBAAsB;QAC3C;MACD,KAAKb,KAAK,EAAEoC,IAAI;QACfD,kBAAkB,GAAGvB,2BAA2B;QAChD;MACD,KAAK,EAAE;QACNuB,kBAAkB,GAAGzB,qBAAqB;QAC1C;MACD;QACCyB,kBAAkB,GAAGxB,uBAAuB;QAC5C;IACF;IAEAa,mBAAmB,CAAE;MACpBG,GAAG,EAAEM,MAAM;MACXJ,eAAe,EAAEM;IAClB,CAAE,CAAC;EACJ,CAAC,EAAE,CAAEV,KAAK,CAACS,MAAM,EAAEF,UAAU,CAAG,CAAC;EAEjC,IAAIK,SAAS;EACb,QAASR,eAAe;IACvB,KAAKhB,sBAAsB;MAC1BwB,SAAS,GAAGjD,EAAE,CAAE,YAAa,CAAC;MAC9B;IACD,KAAKwB,2BAA2B;MAC/ByB,SAAS,GAAGjD,EAAE,CAAE,iBAAkB,CAAC;MACnC;IACD,KAAKuB,uBAAuB;MAC3B0B,SAAS,GAAGjD,EAAE,CAAE,YAAa,CAAC;MAC9B;IACD;MACCiD,SAAS,GAAGjD,EAAE,CAAE,MAAO,CAAC;MACxB;EACF;EAEA,MAAMkD,mBAAmB,GAAG;IAC3BX,GAAG,EAAE;MACJU,SAAS;MACTE,SAAS,EAAE,KAAK;MAChBC,QAAQ,EAAE;IACX,CAAC;IACDC,YAAY,EAAE;MACbb,KAAK,EAAExC,EAAE,CAAE,iBAAkB;IAC9B,CAAC;IACDsD,OAAO,EAAE;MACRd,KAAK,EAAExC,EAAE,CAAE,UAAW,CAAC;MACvBuD,WAAW,EAAEtD,EAAE,CAAE,MAAM,EAAE,sCAAuC;IACjE;EACD,CAAC;EAED,OACCuD,aAAA,CAAC/E,SAAS;IAACgF,KAAK,EAAGzD,EAAE,CAAE,eAAgB;EAAG,GACzCwD,aAAA,CAAC3E,sBAAsB;IACtB6E,SAAS,EAAGvB,kBAAoB;IAChCI,GAAG,EAAGA,GAAK;IACXI,GAAG,EAAGA,GAAK;IACXH,KAAK,EAAGA,KAAO;IACfE,UAAU,EAAGA,UAAY;IACzBiB,aAAa,EAAGvB,mBAAqB;IACrCwB,eAAe,EAAG,KAAO;IACzBC,SAAS;IACTC,OAAO,EAAGZ,mBAAqB;IAC/Ba,QAAQ,EAAG,KAAO;IAClBC,iBAAiB,EAAGA,CAAE;MAAEC;IAAW,CAAC,KAAM;MACzCA,UAAU,CAACC,QAAQ,CAClBpE,oBAAoB,CAACqE,qBAAqB,EAC1C;QACCvB,UAAU,EAAEV,UAAU,CAACI,IAAI;QAC3BG,eAAe,EAAEP,UAAU,CAACO,eAAe;QAC3C2B,QAAQ,EAAElC,UAAU,CAACK,GAAG;QACxB8B,iBAAiB,EAAEzD,KAAK,EAAEoC;MAC3B,CACD,CAAC;IACF;EAAG,CACH,CACS,CAAC;AAEd;AAEA,MAAMsB,iBAAiB,GAAG,CAAC;AAC3B,MAAMC,sBAAsB,GAAG,CAAC;AAChC,MAAMC,sBAAsB,GAAG,CAAC;AAChC,MAAMC,mBAAmB,GAAG,CAAC;AAE7B,OAAO,MAAMC,SAAS,SAAS1G,SAAS,CAAC;EACxC2G,WAAWA,CAAEC,KAAK,EAAG;IACpB,KAAK,CAAEA,KAAM,CAAC;IAEd,IAAI,CAACC,KAAK,GAAG;MACZC,iBAAiB,EAAE,KAAK;MACxBC,YAAY,EAAET;IACf,CAAC;IAED,IAAI,CAACU,qBAAqB,GAAG,KAAK;IAElC,IAAI,CAACC,4BAA4B,GAChC,IAAI,CAACA,4BAA4B,CAACC,IAAI,CAAE,IAAK,CAAC;IAC/C,IAAI,CAACC,4BAA4B,GAChC,IAAI,CAACA,4BAA4B,CAACD,IAAI,CAAE,IAAK,CAAC;IAC/C,IAAI,CAACE,qBAAqB,GAAG,IAAI,CAACA,qBAAqB,CAACF,IAAI,CAAE,IAAK,CAAC;IACpE,IAAI,CAACG,yBAAyB,GAC7B,IAAI,CAACA,yBAAyB,CAACH,IAAI,CAAE,IAAK,CAAC;IAC5C,IAAI,CAACI,mBAAmB,GAAG,IAAI,CAACA,mBAAmB,CAACJ,IAAI,CAAE,IAAK,CAAC;IAChE,IAAI,CAACK,cAAc,GAAG,IAAI,CAACA,cAAc,CAACL,IAAI,CAAE,IAAK,CAAC;IACtD,IAAI,CAACM,WAAW,GAAG,IAAI,CAACA,WAAW,CAACN,IAAI,CAAE,IAAK,CAAC;IAChD,IAAI,CAACO,aAAa,GAAG,IAAI,CAACA,aAAa,CAACP,IAAI,CAAE,IAAK,CAAC;IACpD,IAAI,CAACQ,cAAc,GAAG,IAAI,CAACA,cAAc,CAACR,IAAI,CAAE,IAAK,CAAC;IACtD,IAAI,CAACS,aAAa,GAAG,IAAI,CAACA,aAAa,CAACT,IAAI,CAAE,IAAK,CAAC;IACpD,IAAI,CAACU,cAAc,GAAG,IAAI,CAACA,cAAc,CAACV,IAAI,CAAE,IAAK,CAAC;IACtD,IAAI,CAACW,WAAW,GAAG,IAAI,CAACA,WAAW,CAACX,IAAI,CAAE,IAAK,CAAC;IAChD,IAAI,CAACY,yBAAyB,GAC7B,IAAI,CAACA,yBAAyB,CAACZ,IAAI,CAAE,IAAK,CAAC;IAC5C,IAAI,CAAC9C,mBAAmB,GAAG,IAAI,CAACA,mBAAmB,CAAC8C,IAAI,CAAE,IAAK,CAAC;IAChE,IAAI,CAACa,iBAAiB,GAAG,IAAI,CAACA,iBAAiB,CAACb,IAAI,CAAE,IAAK,CAAC;EAC7D;EAEAc,iBAAiBA,CAAA,EAAG;IACnB,MAAM;MAAE9D,UAAU;MAAEyB;IAAc,CAAC,GAAG,IAAI,CAACiB,KAAK;IAChD;IACA;IACA;IACA,IAAK1C,UAAU,CAAC+D,EAAE,IAAI,CAAE/D,UAAU,CAACK,GAAG,EAAG;MACxC;MACA2D,OAAO,CAACC,IAAI,CAAE,gCAAiC,CAAC;IACjD;;IAEA;IACA,IACC,CAAEjE,UAAU,CAAC+D,EAAE,IACf/D,UAAU,CAACK,GAAG,IACdpC,WAAW,CAAE+B,UAAU,CAACK,GAAI,CAAC,KAAK,OAAO,EACxC;MACDrE,kBAAkB,CAAEgE,UAAU,CAACK,GAAG,EAAE,CAAE0D,EAAE,EAAE1D,GAAG,KAAM;QAClD,IAAKA,GAAG,EAAG;UACVoB,aAAa,CAAE;YAAEsC,EAAE;YAAE1D;UAAI,CAAE,CAAC;QAC7B;MACD,CAAE,CAAC;IACJ;;IAEA;IACA;IACA,IACCL,UAAU,CAAC+D,EAAE,IACb/D,UAAU,CAACK,GAAG,IACdpC,WAAW,CAAE+B,UAAU,CAACK,GAAI,CAAC,KAAK,OAAO,EACxC;MACDpE,eAAe,CAAC,CAAC;IAClB;EACD;EAEAiI,oBAAoBA,CAAA,EAAG;IACtB;IACA,IACC7F,SAAS,CAAE,iCAAkC,CAAC,IAC9C,IAAI,CAACsE,KAAK,CAACE,YAAY,KAAKR,sBAAsB,EACjD;MACDjE,QAAQ,CACP,iCAAiC,EACjC,IAAI,CAACsE,KAAK,CAAC1C,UAAU,CAAC+D,EACvB,CAAC;IACF;EACD;EAEAI,kBAAkBA,CAAEC,aAAa,EAAG;IACnC,MAAM;MAAE1F,KAAK;MAAEsB,UAAU;MAAEyB,aAAa;MAAE4C;IAAgB,CAAC,GAC1D,IAAI,CAAC3B,KAAK;IACX,MAAM;MAAErC;IAAI,CAAC,GAAGL,UAAU;IAC1B,IAAK,CAAEoE,aAAa,CAAC1F,KAAK,IAAIA,KAAK,EAAG;MACrC,IAAK,CAAER,WAAW,CAAEmC,GAAG,EAAE,GAAI,CAAC,IAAIL,UAAU,EAAEN,QAAQ,EAAG;QACxD,MAAM4E,UAAU,GACf7E,aAAa,CAAEf,KAAK,EAAEsB,UAAU,CAACN,QAAS,CAAC,IAC3ChB,KAAK,CAACoB,UAAU;QAEjB2B,aAAa,CAAE;UAAEpB,GAAG,EAAEiE;QAAW,CAAE,CAAC;MACrC;IACD;IAEA,MAAM;MAAEP;IAAG,CAAC,GAAG/D,UAAU;IACzB,MAAM;MAAE+D,EAAE,EAAEQ;IAAW,CAAC,GAAGH,aAAa,CAACpE,UAAU;;IAEnD;IACA;IACA;IACA,IACC,CAAC,CAAE+D,EAAE,IACLA,EAAE,KAAKQ,UAAU,IACjB,CAAC,CAAEF,eAAe,IAClBA,eAAe,KAAKE,UAAU,EAC7B;MACD,IAAI,CAACzB,qBAAqB,GAAG,IAAI;IAClC;;IAEA;IACA;IACA,IACC,IAAI,CAACA,qBAAqB,IAC1B,CAAC,CAAEpE,KAAK,IACR,IAAI,CAAC8F,kBAAkB,CAAC,CAAC,EACxB;MACD,IAAI,CAAC1B,qBAAqB,GAAG,KAAK;MAClCzG,gBAAgB,CAAE0H,EAAG,CAAC;IACvB;IAEA,MAAM;MAAEU;IAAM,CAAC,GAAGzE,UAAU;IAC5B,MAAM;MAAE0E;IAAwC,CAAC,GAAG,IAAI,CAAChC,KAAK;;IAE9D;IACA,IAAK,CAAE,MAAM,EAAE,MAAM,CAAE,CAACiC,QAAQ,CAAEF,KAAM,CAAC,EAAG;MAC3CC,uCAAuC,CAAC,CAAC;MACzCjD,aAAa,CAAE;QACdmD,KAAK,EAAEjF,SAAS;QAChBkF,MAAM,EAAElF,SAAS;QACjBmF,WAAW,EAAEnF,SAAS;QACtBoF,KAAK,EAAEpF;MACR,CAAE,CAAC;IACJ;EACD;EAEA,OAAOqF,wBAAwBA,CAAEtC,KAAK,EAAEC,KAAK,EAAG;IAC/C;IACA;IACA,OAAO;MACNC,iBAAiB,EAAEF,KAAK,CAACuC,UAAU,IAAItC,KAAK,CAACC;IAC9C,CAAC;EACF;EAEAgB,yBAAyBA,CAAEsB,OAAO,EAAG;IACpC;IACA,OAAOrH,QAAQ,CAACsH,OAAO,CAAED,OAAQ,CAAC,GAC/B;IACA,sBAAsB,GACtBlH,OAAO,EACP;IACAF,EAAE,CAAE,mBAAoB,CAAC,EACzBoH,OACA,CAAC;EACL;EAEA1B,cAAcA,CAAA,EAAG;IAChB,MAAM;MAAExD,UAAU;MAAEtB;IAAM,CAAC,GAAG,IAAI,CAACgE,KAAK;IAExC,IAAK,IAAI,CAACC,KAAK,CAACE,YAAY,KAAKR,sBAAsB,EAAG;MACzDlG,8BAA8B,CAAE6D,UAAU,CAAC+D,EAAG,CAAC;IAChD,CAAC,MAAM,IACN/D,UAAU,CAAC+D,EAAE,IACb9F,WAAW,CAAE+B,UAAU,CAACK,GAAI,CAAC,KAAK,OAAO,EACxC;MACDnE,6BAA6B,CAAE8D,UAAU,CAAC+D,EAAG,CAAC;IAC/C,CAAC,MAAM,IAAK,CAAE,IAAI,CAACpB,KAAK,CAACC,iBAAiB,EAAG;MAC5CxG,6BAA6B,CAC5B4D,UAAU,CAACK,GAAG,EACd3B,KAAK,IAAIA,KAAK,CAACoB,UAChB,CAAC;IACF;IAEA,IAAI,CAACsF,QAAQ,CAAE;MACdxC,iBAAiB,EAAE;IACpB,CAAE,CAAC;EACJ;EAEAQ,mBAAmBA,CAAEiC,OAAO,EAAG;IAC9B,MAAM;MAAE5D;IAAc,CAAC,GAAG,IAAI,CAACiB,KAAK;IACpC,IAAK2C,OAAO,CAACC,QAAQ,EAAG;MACvB7D,aAAa,CAAE;QAAEpB,GAAG,EAAEgF,OAAO,CAACC;MAAS,CAAE,CAAC;IAC3C;IAEA,IAAK,IAAI,CAAC3C,KAAK,CAACE,YAAY,KAAKR,sBAAsB,EAAG;MACzD,IAAI,CAAC+C,QAAQ,CAAE;QAAEvC,YAAY,EAAER;MAAuB,CAAE,CAAC;IAC1D;EACD;EAEAU,4BAA4BA,CAAEsC,OAAO,EAAG;IACvC,MAAM;MAAE5D;IAAc,CAAC,GAAG,IAAI,CAACiB,KAAK;IAEpCjB,aAAa,CAAE;MAAEpB,GAAG,EAAEgF,OAAO,CAACC,QAAQ;MAAEvB,EAAE,EAAEsB,OAAO,CAACE;IAAc,CAAE,CAAC;IACrE,IAAI,CAACH,QAAQ,CAAE;MAAEvC,YAAY,EAAEP;IAAuB,CAAE,CAAC;EAC1D;EAEAW,4BAA4BA,CAAEoC,OAAO,EAAG;IACvC,MAAM;MAAE5D;IAAc,CAAC,GAAG,IAAI,CAACiB,KAAK;IAEpCjB,aAAa,CAAE;MAAEsC,EAAE,EAAEsB,OAAO,CAACG;IAAQ,CAAE,CAAC;IACxC,IAAI,CAACJ,QAAQ,CAAE;MAAEvC,YAAY,EAAEN;IAAoB,CAAE,CAAC;EACvD;EAEAW,qBAAqBA,CAAA,EAAG;IACvB,MAAM;MAAEzB;IAAc,CAAC,GAAG,IAAI,CAACiB,KAAK;IAEpCjB,aAAa,CAAE;MAAEsC,EAAE,EAAE,IAAI;MAAE1D,GAAG,EAAE;IAAK,CAAE,CAAC;IACxC,IAAI,CAAC+E,QAAQ,CAAE;MAAEvC,YAAY,EAAET;IAAkB,CAAE,CAAC;EACrD;EAEAiB,cAAcA,CAAEhD,GAAG,EAAG;IACrB,IAAI,CAACqC,KAAK,CAACjB,aAAa,CAAE;MACzBpB,GAAG;MACHuE,KAAK,EAAEjF,SAAS;MAChBkF,MAAM,EAAElF;IACT,CAAE,CAAC;EACJ;EAEA2D,WAAWA,CAAEmC,KAAK,EAAG;IACpB,MAAMC,iBAAiB,GAAGvG,4BAA4B,CACrDsG,KAAK,EACL,IAAI,CAAC/C,KAAK,CAAC1C,UACZ,CAAC;IACD,IAAI,CAAC0C,KAAK,CAACjB,aAAa,CAAEiE,iBAAkB,CAAC;EAC9C;EAEAnC,aAAaA,CAAE7D,QAAQ,EAAG;IACzB,MAAM;MAAEhB,KAAK;MAAE+C;IAAc,CAAC,GAAG,IAAI,CAACiB,KAAK;IAE3C,MAAMrC,GAAG,GAAGZ,aAAa,CAAEf,KAAK,EAAEgB,QAAS,CAAC;IAC5C,IAAK,CAAEW,GAAG,EAAG;MACZ,OAAO,IAAI;IACZ;IACAoB,aAAa,CAAE;MACdpB,GAAG;MACHuE,KAAK,EAAEjF,SAAS;MAChBkF,MAAM,EAAElF,SAAS;MACjBD;IACD,CAAE,CAAC;EACJ;EAEAyD,yBAAyBA,CAAEwC,KAAK,EAAG;IAClC,MAAM;MAAEC;IAAiB,CAAC,GAAG,IAAI,CAAClD,KAAK;IACvC,MAAM;MAAEqB,EAAE;MAAE1D,GAAG;MAAEwF;IAAY,CAAC,GAAG,IAAI,CAACnD,KAAK,CAAC1C,UAAU;IACtD,MAAM8F,eAAe,GAAG;MACvB/B,EAAE,EAAE4B,KAAK,CAAC5B,EAAE;MACZ1D,GAAG,EAAEsF,KAAK,CAACtF,GAAG;MACd6E,OAAO,EAAES,KAAK,CAACT,OAAO;MACtBa,GAAG,EAAEJ,KAAK,CAACI;IACZ,CAAC;IAED,IAAIC,oBAAoB;IACxB;IACA,IAAK,CAAEL,KAAK,CAAC5B,EAAE,IAAI4B,KAAK,CAAC5B,EAAE,KAAKA,EAAE,EAAG;MACpCiC,oBAAoB,GAAG;QACtBpB,KAAK,EAAEjF,SAAS;QAChBkF,MAAM,EAAElF,SAAS;QACjBD,QAAQ,EAAEkG;MACX,CAAC;IACF,CAAC,MAAM;MACN;MACAI,oBAAoB,GAAG;QAAE3F;MAAI,CAAC;IAC/B;IAEA,IAAID,IAAI;IACR,QAASyF,WAAW;MACnB,KAAKtG,sBAAsB;QAC1Ba,IAAI,GAAGuF,KAAK,CAACtF,GAAG;QAChB;MACD,KAAKf,2BAA2B;QAC/Bc,IAAI,GAAGuF,KAAK,CAAC7E,IAAI;QACjB;IACF;IACAgF,eAAe,CAAC1F,IAAI,GAAGA,IAAI;IAE3B,IAAI,CAACsC,KAAK,CAACjB,aAAa,CAAE;MACzB,GAAGqE,eAAe;MAClB,GAAGE;IACJ,CAAE,CAAC;EACJ;EAEArC,WAAWA,CAAEsC,MAAM,EAAG;IACrB,MAAM;MAAEC,iBAAiB;MAAEN,gBAAgB;MAAEnE;IAAc,CAAC,GAC3D,IAAI,CAACiB,KAAK;IAEX,IAAKvE,KAAK,CAAE8H,MAAO,CAAC,EAAG;MACtB,IAAI,CAACb,QAAQ,CAAE;QACde,eAAe,EAAE;MAClB,CAAE,CAAC;;MAEH;MACAzK,OAAO,CAAC0K,OAAO,CACdH,MAAM,EACN,MAAM;QACLxE,aAAa,CAAE;UACdpB,GAAG,EAAE4F,MAAM;UACXlC,EAAE,EAAEpE,SAAS;UACbiF,KAAK,EAAEjF,SAAS;UAChBkF,MAAM,EAAElF,SAAS;UACjBD,QAAQ,EAAEkG;QACX,CAAE,CAAC;QACH,IAAI,CAACR,QAAQ,CAAE;UACde,eAAe,EAAE;QAClB,CAAE,CAAC;MACJ,CAAC,EACD,MAAM;QACLD,iBAAiB,CAAEpI,EAAE,CAAE,uBAAwB,CAAE,CAAC;QAClD,IAAI,CAACsH,QAAQ,CAAE;UACde,eAAe,EAAE;QAClB,CAAE,CAAC;MACJ,CACD,CAAC;IACF,CAAC,MAAM;MACND,iBAAiB,CAAEpI,EAAE,CAAE,cAAe,CAAE,CAAC;IAC1C;EACD;EAEA4F,cAAcA,CAAA,EAAG;IAChB,IAAK,IAAI,CAAChB,KAAK,CAAC2D,OAAO,EAAG;MACzB,IAAI,CAAC3D,KAAK,CAAC2D,OAAO,CAAC,CAAC;IACrB;IACA,IAAK,CAAE,IAAI,CAAC1D,KAAK,CAACC,iBAAiB,EAAG;MACrC,IAAI,CAACwC,QAAQ,CAAE;QACdxC,iBAAiB,EAAE;MACpB,CAAE,CAAC;IACJ;EACD;EAEA0D,kBAAkBA,CAAA,EAAG;IACpB,OACChF,aAAA,CAAChF,IAAI;MACJiK,IAAI,EAAG5H,eAAiB;MAAA,GACnB,IAAI,CAAC+D,KAAK,CAAC8D,wBAAwB,CACvCtH,MAAM,CAACuH,eAAe,EACtBvH,MAAM,CAACwH,mBACR;IAAC,CACD,CAAC;EAEJ;EAEAC,oBAAoBA,CAAA,EAAG;IACtB,OACCrF,aAAA,CAAC1F,IAAI;MAACgL,KAAK,EAAG1H,MAAM,CAAC2H;IAAgB,GACpCvF,aAAA,CAAC9F,iBAAiB;MAACsL,SAAS;IAAA,CAAE,CACzB,CAAC;EAET;EAEAC,QAAQA,CAAA,EAAG;IACV,MAAM;MAAE/G;IAAW,CAAC,GAAG,IAAI,CAAC0C,KAAK;IACjC,MAAM;MAAE+B,KAAK;MAAEG;IAAM,CAAC,GAAG5E,UAAU;IAEnC,OAAOgH,MAAM,CAACC,MAAM,CAAEvK,eAAe,CAACwK,UAAW,CAAC,CAACvC,QAAQ,CAAEF,KAAM,CAAC,GACjE,MAAM,GACNG,KAAK;EACT;EAEA1E,mBAAmBA,CAAE;IAAEG,GAAG,EAAED,IAAI;IAAEG,eAAe;IAAE,GAAG4G;EAAe,CAAC,EAAG;IACxE,MAAM;MAAE1F;IAAc,CAAC,GAAG,IAAI,CAACiB,KAAK;IACpC,IAAK,CAAEtC,IAAI,IAAI,CAAEG,eAAe,EAAG;MAClCA,eAAe,GAAGnB,qBAAqB;IACxC,CAAC,MAAM,IAAK,CAAEmB,eAAe,EAAG;MAC/BA,eAAe,GAAGlB,uBAAuB;IAC1C;IAEA,OAAOe,IAAI,KAAKT,SAAS,IAAIS,IAAI,KAAK,IAAI,CAACsC,KAAK,CAAC1C,UAAU,CAACI,IAAI,GAC7DqB,aAAa,CAAE0F,cAAe,CAAC,GAC/B1F,aAAa,CAAE;MACf,GAAG0F,cAAc;MACjB5G,eAAe;MACfH;IACA,CAAE,CAAC;EACP;EAEAgH,kBAAkBA,CAAA,EAAG;IACpB,MAAM;MACLpH,UAAU,EAAE;QAAE+F;MAAI;IACnB,CAAC,GAAG,IAAI,CAACrD,KAAK;IAEd,MAAM2E,SAAS,GAAKC,MAAM,IAAM;MAC/B,IAAI,CAAC5E,KAAK,CAACjB,aAAa,CAAE;QAAEsE,GAAG,EAAEuB;MAAO,CAAE,CAAC;IAC5C,CAAC;IAED,OACChG,aAAA,CAACzE,sBAAsB;MACtB0K,YAAY,EAAGxB,GAAK;MACpByB,QAAQ,EAAGH,SAAW;MACtBhG,WAAW,EAAGvD,EAAE,CAAE,cAAe,CAAG;MACpCwC,KAAK,EAAGxC,EAAE,CAAE,UAAW,CAAG;MAC1ByI,IAAI,EAAGzH,SAAW;MAClB2I,UAAU,EACTnG,aAAA,CAAAoG,QAAA,QACG5J,EAAE,CACH,+DACD,CAAC,EAAI,GAAG,EACRwD,aAAA,CAACtE,iBAAiB;QACjBoD,IAAI,EACH,wDACA;QACDqF,KAAK,EAAG3H,EAAE,CAAE,mBAAoB;MAAG,CACnC,CACA;IACF,CACD,CAAC;EAEJ;EAEA+F,iBAAiBA,CAAE8D,QAAQ,EAAG;IAC7B,IAAI,CAACpE,aAAa,CAAEoE,QAAS,CAAC;EAC/B;EAEAlE,aAAaA,CAAE+B,OAAO,EAAG;IACxB,MAAM;MAAEoC;IAAyB,CAAC,GAAG,IAAI,CAAClF,KAAK;IAC/CrG,gBAAgB,CAAEmJ,OAAQ,CAAC;IAC3BoC,wBAAwB,CAAC,CAAC;EAC3B;EAEAC,sBAAsBA,CAAEC,eAAe,EAAG;IACzC,MAAM;MAAE9H,UAAU;MAAEwG;IAAyB,CAAC,GAAG,IAAI,CAAC9D,KAAK;IAE3D,MAAMqF,sBAAsB,GAAGvB,wBAAwB,CACtDtH,MAAM,CAAC8I,iBAAiB,EACxB9I,MAAM,CAAC+I,qBACR,CAAC;IAED,MAAMC,oBAAoB,GAAGA,CAAA,KAC5B5G,aAAA,CAAC1E,WAAW,CAACuL,IAAI;MAChB7H,KAAK,EAAGxC,EAAE,CAAE,0BAA2B,CAAG;MAC1CsK,UAAU,EAAG,CACZL,sBAAsB,EACtB7I,MAAM,CAACgJ,oBAAoB,CACzB;MACHG,kBAAkB,EAAGnJ,MAAM,CAACoJ,8BAAgC;MAC5DC,aAAa,EAAG,MAAQ;MACxBC,OAAO,EAAGA,CAAA,KACT,IAAI,CAAC/E,aAAa,CAAEjE,8BAA+B;IACnD,CACD,CACD;IAED,MAAMwI,iBAAiB,GAAGA,CAAA,KACzB1G,aAAA,CAAC1E,WAAW,CAACuL,IAAI;MAChB7H,KAAK,EAAGxC,EAAE,CAAE,uBAAwB,CAAG;MACvCsK,UAAU,EAAGL,sBAAwB;MACrCM,kBAAkB,EAAGnJ,MAAM,CAACoJ,8BAAgC;MAC5DC,aAAa,EAAG,MAAQ;MACxBC,OAAO,EAAGA,CAAA,KAAM,IAAI,CAAC/E,aAAa,CAAEzD,UAAU,CAAC+D,EAAG;IAAG,CACrD,CACD;IAED,OAAO+D,eAAe,GAAGI,oBAAoB,CAAC,CAAC,GAAGF,iBAAiB,CAAC,CAAC;EACtE;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCxD,kBAAkBA,CAAA,EAAG;IACpB,MAAM;MACLxE,UAAU,EAAE;QAAE+D;MAAG;IAClB,CAAC,GAAG,IAAI,CAACrB,KAAK;IACd,OACC,OAAOqB,EAAE,KAAK,WAAW,IACzB,IAAI,CAACpB,KAAK,CAACE,YAAY,KAAKR,sBAAsB,IAClD,IAAI,CAACM,KAAK,CAACE,YAAY,KAAKN,mBAAmB;EAEjD;EAEAkG,KAAKA,CAAEpI,GAAG,EAAG;IACZ,OAAOA,GAAG,CAACqI,WAAW,CAAC,CAAC,CAAC/D,QAAQ,CAAE,MAAO,CAAC;EAC5C;EAEAgE,MAAMA,CAAA,EAAG;IACR,MAAM;MAAE/F,iBAAiB;MAAEuD;IAAgB,CAAC,GAAG,IAAI,CAACxD,KAAK;IACzD,MAAM;MACL3C,UAAU;MACViF,UAAU;MACVvG,KAAK;MACLkK,QAAQ;MACRhD,gBAAgB;MAChBiD,OAAO;MACPxE,eAAe;MACfyE,oBAAoB;MACpBC;IACD,CAAC,GAAG,IAAI,CAACrG,KAAK;IACd,MAAM;MAAE+B,KAAK;MAAEpE,GAAG;MAAE0F,GAAG;MAAEhC,EAAE;MAAErE,QAAQ;MAAEsJ;IAAU,CAAC,GAAGhJ,UAAU;IAC/D,MAAMiJ,eAAe,GAAGJ,OAAO,GAC5B7B,MAAM,CAACkC,IAAI,CAAEL,OAAQ,CAAC,CAACM,MAAM,GAAG,CAAC,GACjC,KAAK;IAER,MAAMC,UAAU,GAAGC,KAAK,CAACC,OAAO,CAAE,IAAI,CAAC5G,KAAK,CAAC0G,UAAW,CAAC,GACtD,IAAI,CAAC1G,KAAK,CAAC0G,UAAU,GACrB,EAAE;IACL;IACA,MAAMG,WAAW,GAAGH,UAAU,CAC5BI,MAAM,CAAE,CAAE;MAAEC;IAAK,CAAC,KAAMhK,aAAa,CAAEf,KAAK,EAAE+K,IAAK,CAAE,CAAC,CACtDC,GAAG,CAAE,CAAE;MAAEC,IAAI;MAAEF;IAAK,CAAC,MAAQ;MAAEhE,KAAK,EAAEgE,IAAI;MAAEnJ,KAAK,EAAEqJ;IAAK,CAAC,CAAG,CAAC;IAE/D,IAAIC,kBAAkB,GAAGlK,QAAQ,IAAIkG,gBAAgB;IACrD,IAAIiE,gBAAgB,GAAGN,WAAW,CAACO,IAAI,CACpCC,MAAM,IAAMA,MAAM,CAACtE,KAAK,KAAKmE,kBAChC,CAAC;IAED,IAAK,CAAEC,gBAAgB,EAAG;MACzB;MACAA,gBAAgB,GAAGN,WAAW,CAACO,IAAI,CAChCC,MAAM,IAAMA,MAAM,CAACtE,KAAK,KAAK,MAChC,CAAC;MACDmE,kBAAkB,GAAG,MAAM;IAC5B;IAEA,MAAMpF,kBAAkB,GAAG,IAAI,CAACA,kBAAkB,CAAC,CAAC;IACpD,MAAMsD,eAAe,GACpBtD,kBAAkB,IAAIH,eAAe,KAAKrE,UAAU,CAAC+D,EAAE;IAExD,MAAMiG,oBAAoB,GAAKC,IAAI,IAClC3I,aAAA,CAAC/D,aAAa,QACb+D,aAAA,CAAC7E,YAAY,QACZ6E,aAAA,CAAC9E,aAAa;MACb+E,KAAK,EAAGzD,EAAE,CAAE,YAAa,CAAG;MAC5ByI,IAAI,EAAG3H,OAAS;MAChBsL,OAAO,EAAGD;IAAM,CAChB,CACY,CACA,CACf;IAED,MAAME,oBAAoB,GAAGA,CAAA,KAC5B7I,aAAA,CAAC9D,iBAAiB,QACjB8D,aAAA,CAAC/E,SAAS;MAACgF,KAAK,EAAGzD,EAAE,CAAE,UAAW;IAAG,CAAE,CAAC,EACxCwD,aAAA,CAAC/E,SAAS;MAACqK,KAAK,EAAG1H,MAAM,CAACkL;IAAW,GACpC9I,aAAA,CAAC7D,WAAW;MAACmL,QAAQ,EAAGA,QAAU;MAACvI,GAAG,EAAGA;IAAK,CAAE,CACtC,CAAC,EACZiB,aAAA,CAAC/E,SAAS,QACPmC,KAAK,IAAImL,gBAAgB,IAC1BvI,aAAA,CAACxE,wBAAwB;MACxByJ,IAAI,EAAG1H,UAAY;MACnByB,KAAK,EAAGxC,EAAE,CAAE,MAAO,CAAG;MACtB8D,OAAO,EAAG2H,WAAa;MACvB/B,QAAQ,EAAG,IAAI,CAAC3D,iBAAmB;MACnC4B,KAAK,EAAGmE;IAAoB,CAC5B,CACD,EACC,IAAI,CAACxC,kBAAkB,CAAC,CAChB,CAAC,EACZ9F,aAAA,CAACvB,YAAY;MACZC,UAAU,EAAG,IAAI,CAAC0C,KAAK,CAAC1C,UAAY;MACpCtB,KAAK,EAAG,IAAI,CAACgE,KAAK,CAAChE,KAAO;MAC1BuB,kBAAkB,EAAG,IAAI,CAAC0C,KAAK,CAAC1C,kBAAoB;MACpDC,mBAAmB,EAAG,IAAI,CAACA;IAAqB,CAChD,CAAC,EACFoB,aAAA,CAAC/E,SAAS;MACTgF,KAAK,EAAGzD,EAAE,CAAE,gBAAiB,CAAG;MAChCuM,UAAU,EAAGnL,MAAM,CAACoL;IAAyB,GAE3C9F,kBAAkB,IACnB,IAAI,CAACqD,sBAAsB,CAAEC,eAAgB,CAAC,EAC/CxG,aAAA,CAACvE,oBAAoB;MACpBuD,KAAK,EAAGxC,EAAE,CACT,0EACD,CAAG;MACHuK,kBAAkB,EACjBnJ,MAAM,CAACoJ;IACP,CACD,CACS,CACO,CACnB;IAED,IAAK,CAAEjI,GAAG,EAAG;MACZ,OACCiB,aAAA,CAAC1F,IAAI;QAACgL,KAAK,EAAG1H,MAAM,CAACqL;MAAS,GAC3BpE,eAAe,IAAI,IAAI,CAACQ,oBAAoB,CAAC,CAAC,EAChDrF,aAAA,CAACnE,gBAAgB;QAChBqN,YAAY,EAAG,CAAElN,gBAAgB,CAAI;QACrCmN,QAAQ,EAAG,IAAI,CAACtH,yBAA2B;QAC3CQ,WAAW,EAAG,IAAI,CAACA,WAAa;QAChC4C,IAAI,EAAG,IAAI,CAACD,kBAAkB,CAAC,CAAG;QAClCD,OAAO,EAAG,IAAI,CAAC3D,KAAK,CAAC2D,OAAS;QAC9BqE,mBAAmB,EAClBzF,UAAU,IAAI6D;MACd,CACD,CACI,CAAC;IAET;IAEA,MAAM6B,WAAW,GAAG;MACnBC,IAAI,EAAE,YAAY;MAClBC,MAAM,EAAE,QAAQ;MAChBC,KAAK,EAAE,UAAU;MACjBC,IAAI,EAAE,QAAQ;MACdC,IAAI,EAAE;IACP,CAAC;IAED,MAAMC,oBAAoB,GAAG;MAC5BpG,MAAM,EAAE,MAAM;MACdqG,UAAU,EAAErC,OAAO,EAAEsC,SAAS,GAAG,OAAO,GAAG;IAC5C,CAAC;IAED,MAAMC,oBAAoB,GAAG,CAC5BvC,OAAO,EAAEwC,WAAW,IAAInM,MAAM,CAACmM,WAAW,CAC1C;IAED,MAAM5C,KAAK,GAAG,IAAI,CAACA,KAAK,CAAEpI,GAAI,CAAC;IAC/B,MAAMiL,eAAe,GAAGxD,eAAe,IAAIW,KAAK;IAChD,IAAI8C,cAAc,GAAG,EAAE;IACvB,IAAKzD,eAAe,EAAG;MACtByD,cAAc,GAAGzN,EAAE,CAAE,UAAW,CAAC;IAClC,CAAC,MAAM,IAAK2K,KAAK,EAAG;MACnB8C,cAAc,GAAGzN,EAAE,CAAE,KAAM,CAAC;IAC7B;IAEA,MAAM0N,iBAAiB,GAAGA,CAAEC,gBAAgB,EAAEC,eAAe,KAC5DpK,aAAA,CAACrE,KAAK;MAACqD,KAAK,EAAGiL,cAAgB;MAACI,IAAI,EAAGL;IAAiB,GACvDhK,aAAA,CAAC3F,wBAAwB;MACxBiQ,UAAU,EAAG,CAAE3G,UAAY;MAC3BuD,OAAO,EAAG,IAAI,CAAChF,cAAgB;MAC/BqI,QAAQ,EAAG,CAAE5G;IAAY,GAEzB3D,aAAA,CAAC1F,IAAI;MAACgL,KAAK,EAAG1H,MAAM,CAACqL;IAAS,GAC3BtF,UAAU,IAAIkF,oBAAoB,CAAC,CAAC,EACpClF,UAAU,IAAIyG,eAAe,CAAC,CAAC,EAC/B,CAAE,IAAI,CAAC/I,KAAK,CAACC,iBAAiB,IAC/BoH,oBAAoB,CAAEyB,gBAAiB,CAAC,EACzCnK,aAAA,CAACjE,mBAAmB;MACnByO,QAAQ,EAAGzL,GAAK;MAChBmF,OAAO,EAAGzB,EAAI;MACdgI,qBAAqB,EAAG,IAAI,CAAC3I,mBAAqB;MAClD4I,8BAA8B,EAC7B,IAAI,CAACjJ,4BACL;MACDkJ,8BAA8B,EAC7B,IAAI,CAAChJ,4BACL;MACDiJ,uBAAuB,EACtB,IAAI,CAAChJ,qBACL;MACDiJ,aAAa,EAAGA,CAAE;QACjBC,kBAAkB;QAClBC,cAAc;QACdC;MACD,CAAC,KAAM;QACN,OACChL,aAAA,CAAC1F,IAAI;UAACgL,KAAK,EAAGwE;QAAsB,GACjCjF,eAAe,IAChB,IAAI,CAACQ,oBAAoB,CAAC,CAAC,EAC5BrF,aAAA,CAAC7F,KAAK;UACLgJ,KAAK,EACJA,KAAK,IAAIkG,WAAW,CAAElG,KAAK,CAC3B;UACDsB,GAAG,EAAGA,GAAK;UACXd,UAAU,EACTA,UAAU,IACV,CAAErC,iBACF;UACDyJ,cAAc,EAAGA,cAAgB;UACjCD,kBAAkB,EACjBA,kBACA;UACDrD,kBAAkB,EACjBA,kBACA;UACD5F,yBAAyB,EACxB,IAAI,CAACA,yBACL;UACDsI,gBAAgB,EACfA,gBACA;UACDa,YAAY,EAAGA,YAAc;UAC7BjM,GAAG,EAAGA,GAAK;UACXkM,UAAU,EACTrN,MAAM,CAAE8J,SAAS,CAAE,IAAIA,SACvB;UACDpE,KAAK,EAAG,IAAI,CAACmC,QAAQ,CAAC,CAAG;UAAA,IAClBkC,eAAe,GACnBgC,oBAAoB,GACpB,CAAC,CAAC;QAAA,CACL,CACI,CAAC;MAET;IAAG,CACH,CACI,CACmB,CAAC,EAC3B3J,aAAA,CAACpE,YAAY;MACZ0L,QAAQ,EAAG,IAAI,CAAClG,KAAK,CAACkG,QAAU;MAChC3D,UAAU,EAAG,IAAI,CAACtC,KAAK,CAACC,iBAAmB;MAC3CgJ,UAAU,EAAG,CAAE,IAAI,CAACjJ,KAAK,CAACC,iBAAmB;MAC7CgB,yBAAyB,EAAG,IAAI,CAACA,yBAA2B;MAC5DyC,OAAO,EAAG,IAAI,CAAC3C,cAAgB;MAC/B8I,MAAM,EAAG,IAAI,CAAC9J,KAAK,CAAC8J,MAAQ,CAAC;MAAA;MAC7BC,iBAAiB,EAAG,IAAI,CAAC/J,KAAK,CAAC+J;IAAmB,CAClD,CACK,CACP;IAED,OACCnL,aAAA,CAAClE,WAAW;MACXoN,YAAY,EAAG,CAAElN,gBAAgB,CAAI;MACrCoP,gBAAgB,EAAG,IAAM;MACzBjC,QAAQ,EAAG,IAAI,CAACtH,yBAA2B;MAC3CQ,WAAW,EAAG,IAAI,CAACA,WAAa;MAChCgF,MAAM,EAAGA,CAAE;QAAEsB,IAAI;QAAEyB;MAAgB,CAAC,KAAM;QACzC,OAAOF,iBAAiB,CAAEvB,IAAI,EAAEyB,eAAgB,CAAC;MAClD;IAAG,CACH,CAAC;EAEJ;AACD;AAEA,eAAepN,OAAO,CAAE,CACvBE,UAAU,CAAE,CAAEmO,MAAM,EAAEjK,KAAK,KAAM;EAChC,MAAM;IAAEkK;EAAS,CAAC,GAAGD,MAAM,CAAE5N,SAAU,CAAC;EACxC,MAAM;IAAE8N,WAAW;IAAE/D;EAAqB,CAAC,GAC1C6D,MAAM,CAAEhP,gBAAiB,CAAC;EAC3B,MAAM;IAAEmP;EAAuB,CAAC,GAAGH,MAAM,CAAE,aAAc,CAAC;EAC1D,MAAM;IACL3M,UAAU,EAAE;MAAE+D,EAAE;MAAE1D;IAAI,CAAC;IACvB4E,UAAU;IACV2D;EACD,CAAC,GAAGlG,KAAK;EACT,MAAM;IAAE0G,UAAU;IAAExD,gBAAgB;IAAEmH;EAAa,CAAC,GAAGF,WAAW,CAAC,CAAC;EACpE,MAAMG,YAAY,GAAGjJ,EAAE,IAAI9F,WAAW,CAAEoC,GAAI,CAAC,KAAK,OAAO;EACzD,MAAMgE,eAAe,GAAGyI,sBAAsB,CAAE,gBAAiB,CAAC;EAElE,MAAMG,cAAc,GACjBhI,UAAU,IAAI+H,YAAY;EAC5B;EACA;EACE,CAAE/H,UAAU,IACb+H,YAAY,IACZ3M,GAAG,IACH,CAAEnC,WAAW,CAAEmC,GAAG,EAAE,GAAI,CAAG;EAC7B,MAAM3B,KAAK,GAAGuO,cAAc,GAAGL,QAAQ,CAAE7I,EAAG,CAAC,GAAG,IAAI;EAEpD,OAAO;IACNrF,KAAK;IACL0K,UAAU;IACVxD,gBAAgB;IAChBmD,kBAAkB,EAAEgE,YAAY,EAAEhE,kBAAkB,KAAK,IAAI;IAC7D1E,eAAe;IACfyE,oBAAoB,EAAEA,oBAAoB,CACzCF,QAAQ,EACR,eACD;EACD,CAAC;AACF,CAAE,CAAC,EACHnK,YAAY,CAAIyO,QAAQ,IAAM;EAC7B,MAAM;IAAEhH;EAAkB,CAAC,GAAGgH,QAAQ,CAAElO,YAAa,CAAC;EACtD,MAAM;IAAE0F;EAAwC,CAAC,GAChDwI,QAAQ,CAAEvP,gBAAiB,CAAC;EAE7B,OAAO;IACN+G,uCAAuC;IACvCwB,iBAAiB;IACjB0B,wBAAwBA,CAAA,EAAG;MAC1BsF,QAAQ,CAAEjO,aAAc,CAAC,CAACkO,mBAAmB,CAAC,CAAC;IAChD;EACD,CAAC;AACF,CAAE,CAAC,EACH5O,wBAAwB,CACvB,CAAC,CAAEiE,SAAU,CAAC"}
1
+ {"version":3,"names":["ActivityIndicator","Image","RNImage","TouchableWithoutFeedback","View","useRoute","Component","useEffect","requestMediaImport","mediaUploadSync","requestImageFailedRetryDialog","requestImageUploadCancelDialog","requestImageFullscreenPreview","setFeaturedImage","Icon","PanelBody","ToolbarButton","ToolbarGroup","WIDE_ALIGNMENTS","LinkSettingsNavigation","BottomSheet","BottomSheetTextControl","BottomSheetSelectControl","FooterMessageControl","FooterMessageLink","Badge","BlockCaption","MediaPlaceholder","MediaUpload","MediaUploadProgress","MEDIA_TYPE_IMAGE","BlockControls","InspectorControls","BlockStyles","store","blockEditorStore","blockSettingsScreens","RichText","__","_x","sprintf","getProtocol","hasQueryArg","isURL","doAction","hasAction","compose","withPreferredColorScheme","withSelect","withDispatch","image","placeholderIcon","replace","fullscreen","textColor","coreStore","noticesStore","editPostStore","styles","getUpdatedLinkTargetSettings","LINK_DESTINATION_NONE","LINK_DESTINATION_CUSTOM","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_MEDIA","MEDIA_ID_NO_FEATURED_IMAGE_SET","getUrlForSlug","sizeSlug","undefined","media_details","sizes","source_url","LinkSettings","attributes","isLinkSheetVisible","setMappedAttributes","route","href","url","label","linkDestination","linkTarget","rel","inputValue","newUrl","params","newLinkDestination","link","valueMask","linkSettingsOptions","autoFocus","autoFill","openInNewTab","linkRel","placeholder","createElement","title","isVisible","setAttributes","withBottomSheet","hasPicker","options","showIcon","onLinkCellPressed","navigation","navigate","imageLinkDestinations","imageUrl","attachmentPageUrl","UPLOAD_STATE_IDLE","UPLOAD_STATE_UPLOADING","UPLOAD_STATE_SUCCEEDED","UPLOAD_STATE_FAILED","ImageEdit","constructor","props","state","isCaptionSelected","uploadStatus","replacedFeaturedImage","finishMediaUploadWithSuccess","bind","finishMediaUploadWithFailure","mediaUploadStateReset","onSelectMediaUploadOption","updateMediaProgress","updateImageURL","onSetNewTab","onSetSizeSlug","onImagePressed","onSetFeatured","onFocusCaption","onSelectURL","accessibilityLabelCreator","onSizeChangeValue","componentDidMount","id","console","warn","componentWillUnmount","componentDidUpdate","previousProps","featuredImageId","updatedUrl","previousId","canImageBeFeatured","align","__unstableMarkNextChangeAsNotPersistent","includes","width","height","aspectRatio","scale","getDerivedStateFromProps","isSelected","caption","isEmpty","setState","payload","mediaUrl","mediaServerId","mediaId","value","updatedLinkTarget","media","imageDefaultSize","destination","mediaAttributes","alt","additionalAttributes","newURL","createErrorNotice","isFetchingImage","getSize","onFocus","getPlaceholderIcon","icon","getStylesFromColorScheme","iconPlaceholder","iconPlaceholderDark","showLoadingIndicator","style","image__loading","animating","getWidth","Object","values","alignments","restAttributes","getAltTextSettings","updateAlt","newAlt","initialValue","onChange","footerNote","Fragment","newValue","closeSettingsBottomSheet","getFeaturedButtonPanel","isFeaturedImage","setFeaturedButtonStyle","setFeaturedButton","setFeaturedButtonDark","removeFeaturedButton","Cell","labelStyle","cellContainerStyle","setFeaturedButtonCellContainer","separatorType","onPress","isGif","toLowerCase","render","clientId","context","wasBlockJustInserted","shouldUseFastImage","className","hasImageContext","keys","length","imageSizes","Array","isArray","sizeOptions","filter","slug","map","name","selectedSizeOption","sizeOptionsValid","find","option","getToolbarEditButton","open","onClick","getInspectorControls","panelBody","titleStyle","featuredImagePanelTitle","content","allowedTypes","onSelect","autoOpenMediaUpload","alignToFlex","left","center","right","full","wide","additionalImageProps","resizeMode","imageCrop","imageContainerStyles","fixedHeight","badgeLabelShown","badgeLabelText","getImageComponent","openMediaOptions","getMediaOptions","show","accessible","disabled","enablePausedUploads","coverUrl","onUpdateMediaProgress","onFinishMediaUploadWithSuccess","onFinishMediaUploadWithFailure","onMediaUploadStateReset","renderContent","isUploadPaused","isUploadInProgress","isUploadFailed","retryMessage","shapeStyle","onBlur","insertBlocksAfter","isReplacingMedia","select","getMedia","getSettings","getEditedPostAttribute","capabilities","isNotFileUrl","shouldGetMedia","dispatch","closeGeneralSidebar"],"sources":["@wordpress/block-library/src/image/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tActivityIndicator,\n\tImage as RNImage,\n\tTouchableWithoutFeedback,\n\tView,\n} from 'react-native';\nimport { useRoute } from '@react-navigation/native';\n\n/**\n * WordPress dependencies\n */\nimport { Component, useEffect } from '@wordpress/element';\nimport {\n\trequestMediaImport,\n\tmediaUploadSync,\n\trequestImageFailedRetryDialog,\n\trequestImageUploadCancelDialog,\n\trequestImageFullscreenPreview,\n\tsetFeaturedImage,\n} from '@wordpress/react-native-bridge';\nimport {\n\tIcon,\n\tPanelBody,\n\tToolbarButton,\n\tToolbarGroup,\n\tImage,\n\tWIDE_ALIGNMENTS,\n\tLinkSettingsNavigation,\n\tBottomSheet,\n\tBottomSheetTextControl,\n\tBottomSheetSelectControl,\n\tFooterMessageControl,\n\tFooterMessageLink,\n\tBadge,\n} from '@wordpress/components';\nimport {\n\tBlockCaption,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadProgress,\n\tMEDIA_TYPE_IMAGE,\n\tBlockControls,\n\tInspectorControls,\n\tBlockStyles,\n\tstore as blockEditorStore,\n\tblockSettingsScreens,\n\tRichText,\n} from '@wordpress/block-editor';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { getProtocol, hasQueryArg, isURL } from '@wordpress/url';\nimport { doAction, hasAction } from '@wordpress/hooks';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport {\n\timage as placeholderIcon,\n\treplace,\n\tfullscreen,\n\ttextColor,\n} from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\n// eslint-disable-next-line no-restricted-imports\nimport { store as editPostStore } from '@wordpress/edit-post';\n\n/**\n * Internal dependencies\n */\nimport styles from './styles.scss';\nimport { getUpdatedLinkTargetSettings } from './utils';\n\nimport {\n\tLINK_DESTINATION_NONE,\n\tLINK_DESTINATION_CUSTOM,\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA,\n\tMEDIA_ID_NO_FEATURED_IMAGE_SET,\n} from './constants';\n\nconst getUrlForSlug = ( image, sizeSlug ) => {\n\tif ( ! sizeSlug ) {\n\t\treturn undefined;\n\t}\n\treturn image?.media_details?.sizes?.[ sizeSlug ]?.source_url;\n};\n\nfunction LinkSettings( {\n\tattributes,\n\timage,\n\tisLinkSheetVisible,\n\tsetMappedAttributes,\n} ) {\n\tconst route = useRoute();\n\tconst { href: url, label, linkDestination, linkTarget, rel } = attributes;\n\n\t// Persist attributes passed from child screen.\n\tuseEffect( () => {\n\t\tconst { inputValue: newUrl } = route.params || {};\n\n\t\tlet newLinkDestination;\n\t\tswitch ( newUrl ) {\n\t\t\tcase attributes.url:\n\t\t\t\tnewLinkDestination = LINK_DESTINATION_MEDIA;\n\t\t\t\tbreak;\n\t\t\tcase image?.link:\n\t\t\t\tnewLinkDestination = LINK_DESTINATION_ATTACHMENT;\n\t\t\t\tbreak;\n\t\t\tcase '':\n\t\t\t\tnewLinkDestination = LINK_DESTINATION_NONE;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tnewLinkDestination = LINK_DESTINATION_CUSTOM;\n\t\t\t\tbreak;\n\t\t}\n\n\t\tsetMappedAttributes( {\n\t\t\turl: newUrl,\n\t\t\tlinkDestination: newLinkDestination,\n\t\t} );\n\t}, [ route.params?.inputValue ] );\n\n\tlet valueMask;\n\tswitch ( linkDestination ) {\n\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\tvalueMask = __( 'Media File' );\n\t\t\tbreak;\n\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\tvalueMask = __( 'Attachment Page' );\n\t\t\tbreak;\n\t\tcase LINK_DESTINATION_CUSTOM:\n\t\t\tvalueMask = __( 'Custom URL' );\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tvalueMask = __( 'None' );\n\t\t\tbreak;\n\t}\n\n\tconst linkSettingsOptions = {\n\t\turl: {\n\t\t\tvalueMask,\n\t\t\tautoFocus: false,\n\t\t\tautoFill: false,\n\t\t},\n\t\topenInNewTab: {\n\t\t\tlabel: __( 'Open in new tab' ),\n\t\t},\n\t\tlinkRel: {\n\t\t\tlabel: __( 'Link Rel' ),\n\t\t\tplaceholder: _x( 'None', 'Link rel attribute value placeholder' ),\n\t\t},\n\t};\n\n\treturn (\n\t\t<PanelBody title={ __( 'Link Settings' ) }>\n\t\t\t<LinkSettingsNavigation\n\t\t\t\tisVisible={ isLinkSheetVisible }\n\t\t\t\turl={ url }\n\t\t\t\trel={ rel }\n\t\t\t\tlabel={ label }\n\t\t\t\tlinkTarget={ linkTarget }\n\t\t\t\tsetAttributes={ setMappedAttributes }\n\t\t\t\twithBottomSheet={ false }\n\t\t\t\thasPicker\n\t\t\t\toptions={ linkSettingsOptions }\n\t\t\t\tshowIcon={ false }\n\t\t\t\tonLinkCellPressed={ ( { navigation } ) => {\n\t\t\t\t\tnavigation.navigate(\n\t\t\t\t\t\tblockSettingsScreens.imageLinkDestinations,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tinputValue: attributes.href,\n\t\t\t\t\t\t\tlinkDestination: attributes.linkDestination,\n\t\t\t\t\t\t\timageUrl: attributes.url,\n\t\t\t\t\t\t\tattachmentPageUrl: image?.link,\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t/>\n\t\t</PanelBody>\n\t);\n}\n\nconst UPLOAD_STATE_IDLE = 0;\nconst UPLOAD_STATE_UPLOADING = 1;\nconst UPLOAD_STATE_SUCCEEDED = 2;\nconst UPLOAD_STATE_FAILED = 3;\n\nexport class ImageEdit extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\n\t\tthis.state = {\n\t\t\tisCaptionSelected: false,\n\t\t\tuploadStatus: UPLOAD_STATE_IDLE,\n\t\t};\n\n\t\tthis.replacedFeaturedImage = false;\n\n\t\tthis.finishMediaUploadWithSuccess =\n\t\t\tthis.finishMediaUploadWithSuccess.bind( this );\n\t\tthis.finishMediaUploadWithFailure =\n\t\t\tthis.finishMediaUploadWithFailure.bind( this );\n\t\tthis.mediaUploadStateReset = this.mediaUploadStateReset.bind( this );\n\t\tthis.onSelectMediaUploadOption =\n\t\t\tthis.onSelectMediaUploadOption.bind( this );\n\t\tthis.updateMediaProgress = this.updateMediaProgress.bind( this );\n\t\tthis.updateImageURL = this.updateImageURL.bind( this );\n\t\tthis.onSetNewTab = this.onSetNewTab.bind( this );\n\t\tthis.onSetSizeSlug = this.onSetSizeSlug.bind( this );\n\t\tthis.onImagePressed = this.onImagePressed.bind( this );\n\t\tthis.onSetFeatured = this.onSetFeatured.bind( this );\n\t\tthis.onFocusCaption = this.onFocusCaption.bind( this );\n\t\tthis.onSelectURL = this.onSelectURL.bind( this );\n\t\tthis.accessibilityLabelCreator =\n\t\t\tthis.accessibilityLabelCreator.bind( this );\n\t\tthis.setMappedAttributes = this.setMappedAttributes.bind( this );\n\t\tthis.onSizeChangeValue = this.onSizeChangeValue.bind( this );\n\t}\n\n\tcomponentDidMount() {\n\t\tconst { attributes, setAttributes } = this.props;\n\t\t// This will warn when we have `id` defined, while `url` is undefined.\n\t\t// This may help track this issue: https://github.com/wordpress-mobile/WordPress-Android/issues/9768\n\t\t// where a cancelled image upload was resulting in a subsequent crash.\n\t\tif ( attributes.id && ! attributes.url ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.warn( 'Attributes has id with no url.' );\n\t\t}\n\n\t\t// Detect any pasted image and start an upload.\n\t\tif (\n\t\t\t! attributes.id &&\n\t\t\tattributes.url &&\n\t\t\tgetProtocol( attributes.url ) === 'file:'\n\t\t) {\n\t\t\trequestMediaImport( attributes.url, ( id, url ) => {\n\t\t\t\tif ( url ) {\n\t\t\t\t\tsetAttributes( { id, url } );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\t// Make sure we mark any temporary images as failed if they failed while\n\t\t// the editor wasn't open.\n\t\tif (\n\t\t\tattributes.id &&\n\t\t\tattributes.url &&\n\t\t\tgetProtocol( attributes.url ) === 'file:'\n\t\t) {\n\t\t\tmediaUploadSync();\n\t\t}\n\t}\n\n\tcomponentWillUnmount() {\n\t\t// This action will only exist if the user pressed the trash button on the block holder.\n\t\tif (\n\t\t\thasAction( 'blocks.onRemoveBlockCheckUpload' ) &&\n\t\t\tthis.state.uploadStatus === UPLOAD_STATE_UPLOADING\n\t\t) {\n\t\t\tdoAction(\n\t\t\t\t'blocks.onRemoveBlockCheckUpload',\n\t\t\t\tthis.props.attributes.id\n\t\t\t);\n\t\t}\n\t}\n\n\tcomponentDidUpdate( previousProps ) {\n\t\tconst { image, attributes, setAttributes, featuredImageId } =\n\t\t\tthis.props;\n\t\tconst { url } = attributes;\n\t\tif ( ! previousProps.image && image ) {\n\t\t\tif ( ! hasQueryArg( url, 'w' ) && attributes?.sizeSlug ) {\n\t\t\t\tconst updatedUrl =\n\t\t\t\t\tgetUrlForSlug( image, attributes.sizeSlug ) ||\n\t\t\t\t\timage.source_url;\n\n\t\t\t\tsetAttributes( { url: updatedUrl } );\n\t\t\t}\n\t\t}\n\n\t\tconst { id } = attributes;\n\t\tconst { id: previousId } = previousProps.attributes;\n\n\t\t// The media changed and the previous media was set as the Featured Image,\n\t\t// we must keep track of the previous media's featured status to act on it\n\t\t// once the new media has a finalized ID.\n\t\tif (\n\t\t\t!! id &&\n\t\t\tid !== previousId &&\n\t\t\t!! featuredImageId &&\n\t\t\tfeaturedImageId === previousId\n\t\t) {\n\t\t\tthis.replacedFeaturedImage = true;\n\t\t}\n\n\t\t// The media changed and now has a finalized ID (e.g. upload completed), we\n\t\t// should attempt to replace the featured image if applicable.\n\t\tif (\n\t\t\tthis.replacedFeaturedImage &&\n\t\t\t!! image &&\n\t\t\tthis.canImageBeFeatured()\n\t\t) {\n\t\t\tthis.replacedFeaturedImage = false;\n\t\t\tsetFeaturedImage( id );\n\t\t}\n\n\t\tconst { align } = attributes;\n\t\tconst { __unstableMarkNextChangeAsNotPersistent } = this.props;\n\n\t\t// Update the attributes if the align is wide or full\n\t\tif ( [ 'wide', 'full' ].includes( align ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\taspectRatio: undefined,\n\t\t\t\tscale: undefined,\n\t\t\t} );\n\t\t}\n\t}\n\n\tstatic getDerivedStateFromProps( props, state ) {\n\t\t// Avoid a UI flicker in the toolbar by insuring that isCaptionSelected\n\t\t// is updated immediately any time the isSelected prop becomes false.\n\t\treturn {\n\t\t\tisCaptionSelected: props.isSelected && state.isCaptionSelected,\n\t\t};\n\t}\n\n\taccessibilityLabelCreator( caption ) {\n\t\t// Checks if caption is empty.\n\t\treturn RichText.isEmpty( caption )\n\t\t\t? /* translators: accessibility text. Empty image caption. */\n\t\t\t 'Image caption. Empty'\n\t\t\t: sprintf(\n\t\t\t\t\t/* translators: accessibility text. %s: image caption. */\n\t\t\t\t\t__( 'Image caption. %s' ),\n\t\t\t\t\tcaption\n\t\t\t );\n\t}\n\n\tonImagePressed() {\n\t\tconst { attributes, image } = this.props;\n\n\t\tif ( this.state.uploadStatus === UPLOAD_STATE_UPLOADING ) {\n\t\t\trequestImageUploadCancelDialog( attributes.id );\n\t\t} else if (\n\t\t\tattributes.id &&\n\t\t\tgetProtocol( attributes.url ) === 'file:'\n\t\t) {\n\t\t\trequestImageFailedRetryDialog( attributes.id );\n\t\t} else if ( ! this.state.isCaptionSelected ) {\n\t\t\trequestImageFullscreenPreview(\n\t\t\t\tattributes.url,\n\t\t\t\timage && image.source_url\n\t\t\t);\n\t\t}\n\n\t\tthis.setState( {\n\t\t\tisCaptionSelected: false,\n\t\t} );\n\t}\n\n\tupdateMediaProgress( payload ) {\n\t\tconst { setAttributes } = this.props;\n\t\tif ( payload.mediaUrl ) {\n\t\t\tsetAttributes( { url: payload.mediaUrl } );\n\t\t}\n\n\t\tif ( this.state.uploadStatus !== UPLOAD_STATE_UPLOADING ) {\n\t\t\tthis.setState( { uploadStatus: UPLOAD_STATE_UPLOADING } );\n\t\t}\n\t}\n\n\tfinishMediaUploadWithSuccess( payload ) {\n\t\tconst { setAttributes } = this.props;\n\n\t\tsetAttributes( { url: payload.mediaUrl, id: payload.mediaServerId } );\n\t\tthis.setState( { uploadStatus: UPLOAD_STATE_SUCCEEDED } );\n\t}\n\n\tfinishMediaUploadWithFailure( payload ) {\n\t\tconst { setAttributes } = this.props;\n\n\t\tsetAttributes( { id: payload.mediaId } );\n\t\tthis.setState( { uploadStatus: UPLOAD_STATE_FAILED } );\n\t}\n\n\tmediaUploadStateReset() {\n\t\tconst { setAttributes } = this.props;\n\n\t\tsetAttributes( { id: null, url: null } );\n\t\tthis.setState( { uploadStatus: UPLOAD_STATE_IDLE } );\n\t}\n\n\tupdateImageURL( url ) {\n\t\tthis.props.setAttributes( {\n\t\t\turl,\n\t\t\twidth: undefined,\n\t\t\theight: undefined,\n\t\t} );\n\t}\n\n\tonSetNewTab( value ) {\n\t\tconst updatedLinkTarget = getUpdatedLinkTargetSettings(\n\t\t\tvalue,\n\t\t\tthis.props.attributes\n\t\t);\n\t\tthis.props.setAttributes( updatedLinkTarget );\n\t}\n\n\tonSetSizeSlug( sizeSlug ) {\n\t\tconst { image, setAttributes } = this.props;\n\n\t\tconst url = getUrlForSlug( image, sizeSlug );\n\t\tif ( ! url ) {\n\t\t\treturn null;\n\t\t}\n\t\tsetAttributes( {\n\t\t\turl,\n\t\t\twidth: undefined,\n\t\t\theight: undefined,\n\t\t\tsizeSlug,\n\t\t} );\n\t}\n\n\tonSelectMediaUploadOption( media ) {\n\t\tconst { imageDefaultSize } = this.props;\n\t\tconst { id, url, destination } = this.props.attributes;\n\t\tconst mediaAttributes = {\n\t\t\tid: media.id,\n\t\t\turl: media.url,\n\t\t\tcaption: media.caption,\n\t\t\talt: media.alt,\n\t\t};\n\n\t\tlet additionalAttributes;\n\t\t// Reset the dimension attributes if changing to a different image.\n\t\tif ( ! media.id || media.id !== id ) {\n\t\t\tadditionalAttributes = {\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\tsizeSlug: imageDefaultSize,\n\t\t\t};\n\t\t} else {\n\t\t\t// Keep the same url when selecting the same file, so \"Image Size\" option is not changed.\n\t\t\tadditionalAttributes = { url };\n\t\t}\n\n\t\tlet href;\n\t\tswitch ( destination ) {\n\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\thref = media.url;\n\t\t\t\tbreak;\n\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\thref = media.link;\n\t\t\t\tbreak;\n\t\t}\n\t\tmediaAttributes.href = href;\n\n\t\tthis.props.setAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\t...additionalAttributes,\n\t\t} );\n\t}\n\n\tonSelectURL( newURL ) {\n\t\tconst { createErrorNotice, imageDefaultSize, setAttributes } =\n\t\t\tthis.props;\n\n\t\tif ( isURL( newURL ) ) {\n\t\t\tthis.setState( {\n\t\t\t\tisFetchingImage: true,\n\t\t\t} );\n\n\t\t\t// Use RN's Image.getSize to determine if URL is a valid image\n\t\t\tRNImage.getSize(\n\t\t\t\tnewURL,\n\t\t\t\t() => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\tid: undefined,\n\t\t\t\t\t\twidth: undefined,\n\t\t\t\t\t\theight: undefined,\n\t\t\t\t\t\tsizeSlug: imageDefaultSize,\n\t\t\t\t\t} );\n\t\t\t\t\tthis.setState( {\n\t\t\t\t\t\tisFetchingImage: false,\n\t\t\t\t\t} );\n\t\t\t\t},\n\t\t\t\t() => {\n\t\t\t\t\tcreateErrorNotice( __( 'Image file not found.' ) );\n\t\t\t\t\tthis.setState( {\n\t\t\t\t\t\tisFetchingImage: false,\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t);\n\t\t} else {\n\t\t\tcreateErrorNotice( __( 'Invalid URL.' ) );\n\t\t}\n\t}\n\n\tonFocusCaption() {\n\t\tif ( this.props.onFocus ) {\n\t\t\tthis.props.onFocus();\n\t\t}\n\t\tif ( ! this.state.isCaptionSelected ) {\n\t\t\tthis.setState( {\n\t\t\t\tisCaptionSelected: true,\n\t\t\t} );\n\t\t}\n\t}\n\n\tgetPlaceholderIcon() {\n\t\treturn (\n\t\t\t<Icon\n\t\t\t\ticon={ placeholderIcon }\n\t\t\t\t{ ...this.props.getStylesFromColorScheme(\n\t\t\t\t\tstyles.iconPlaceholder,\n\t\t\t\t\tstyles.iconPlaceholderDark\n\t\t\t\t) }\n\t\t\t/>\n\t\t);\n\t}\n\n\tshowLoadingIndicator() {\n\t\treturn (\n\t\t\t<View style={ styles.image__loading }>\n\t\t\t\t<ActivityIndicator animating />\n\t\t\t</View>\n\t\t);\n\t}\n\n\tgetWidth() {\n\t\tconst { attributes } = this.props;\n\t\tconst { align, width } = attributes;\n\n\t\treturn Object.values( WIDE_ALIGNMENTS.alignments ).includes( align )\n\t\t\t? '100%'\n\t\t\t: width;\n\t}\n\n\tsetMappedAttributes( { url: href, linkDestination, ...restAttributes } ) {\n\t\tconst { setAttributes } = this.props;\n\t\tif ( ! href && ! linkDestination ) {\n\t\t\tlinkDestination = LINK_DESTINATION_NONE;\n\t\t} else if ( ! linkDestination ) {\n\t\t\tlinkDestination = LINK_DESTINATION_CUSTOM;\n\t\t}\n\n\t\treturn href === undefined || href === this.props.attributes.href\n\t\t\t? setAttributes( restAttributes )\n\t\t\t: setAttributes( {\n\t\t\t\t\t...restAttributes,\n\t\t\t\t\tlinkDestination,\n\t\t\t\t\thref,\n\t\t\t } );\n\t}\n\n\tgetAltTextSettings() {\n\t\tconst {\n\t\t\tattributes: { alt },\n\t\t} = this.props;\n\n\t\tconst updateAlt = ( newAlt ) => {\n\t\t\tthis.props.setAttributes( { alt: newAlt } );\n\t\t};\n\n\t\treturn (\n\t\t\t<BottomSheetTextControl\n\t\t\t\tinitialValue={ alt }\n\t\t\t\tonChange={ updateAlt }\n\t\t\t\tplaceholder={ __( 'Add alt text' ) }\n\t\t\t\tlabel={ __( 'Alt Text' ) }\n\t\t\t\ticon={ textColor }\n\t\t\t\tfooterNote={\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Describe the purpose of the image. Leave empty if decorative.'\n\t\t\t\t\t\t) }{ ' ' }\n\t\t\t\t\t\t<FooterMessageLink\n\t\t\t\t\t\t\thref={\n\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}\n\t\t\t\t\t\t\tvalue={ __( 'What is alt text?' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\n\tonSizeChangeValue( newValue ) {\n\t\tthis.onSetSizeSlug( newValue );\n\t}\n\n\tonSetFeatured( mediaId ) {\n\t\tconst { closeSettingsBottomSheet } = this.props;\n\t\tsetFeaturedImage( mediaId );\n\t\tcloseSettingsBottomSheet();\n\t}\n\n\tgetFeaturedButtonPanel( isFeaturedImage ) {\n\t\tconst { attributes, getStylesFromColorScheme } = this.props;\n\n\t\tconst setFeaturedButtonStyle = getStylesFromColorScheme(\n\t\t\tstyles.setFeaturedButton,\n\t\t\tstyles.setFeaturedButtonDark\n\t\t);\n\n\t\tconst removeFeaturedButton = () => (\n\t\t\t<BottomSheet.Cell\n\t\t\t\tlabel={ __( 'Remove as Featured Image' ) }\n\t\t\t\tlabelStyle={ [\n\t\t\t\t\tsetFeaturedButtonStyle,\n\t\t\t\t\tstyles.removeFeaturedButton,\n\t\t\t\t] }\n\t\t\t\tcellContainerStyle={ styles.setFeaturedButtonCellContainer }\n\t\t\t\tseparatorType={ 'none' }\n\t\t\t\tonPress={ () =>\n\t\t\t\t\tthis.onSetFeatured( MEDIA_ID_NO_FEATURED_IMAGE_SET )\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\n\t\tconst setFeaturedButton = () => (\n\t\t\t<BottomSheet.Cell\n\t\t\t\tlabel={ __( 'Set as Featured Image' ) }\n\t\t\t\tlabelStyle={ setFeaturedButtonStyle }\n\t\t\t\tcellContainerStyle={ styles.setFeaturedButtonCellContainer }\n\t\t\t\tseparatorType={ 'none' }\n\t\t\t\tonPress={ () => this.onSetFeatured( attributes.id ) }\n\t\t\t/>\n\t\t);\n\n\t\treturn isFeaturedImage ? removeFeaturedButton() : setFeaturedButton();\n\t}\n\n\t/**\n\t * Featured images must be set to a successfully uploaded self-hosted image,\n\t * which has an ID.\n\t *\n\t * @return {boolean} Boolean indicating whether or not the current may be set as featured.\n\t */\n\tcanImageBeFeatured() {\n\t\tconst {\n\t\t\tattributes: { id },\n\t\t} = this.props;\n\t\treturn (\n\t\t\ttypeof id !== 'undefined' &&\n\t\t\tthis.state.uploadStatus !== UPLOAD_STATE_UPLOADING &&\n\t\t\tthis.state.uploadStatus !== UPLOAD_STATE_FAILED\n\t\t);\n\t}\n\n\tisGif( url ) {\n\t\treturn url.toLowerCase().includes( '.gif' );\n\t}\n\n\trender() {\n\t\tconst { isCaptionSelected, isFetchingImage } = this.state;\n\t\tconst {\n\t\t\tattributes,\n\t\t\tisSelected,\n\t\t\timage,\n\t\t\tclientId,\n\t\t\timageDefaultSize,\n\t\t\tcontext,\n\t\t\tfeaturedImageId,\n\t\t\twasBlockJustInserted,\n\t\t\tshouldUseFastImage,\n\t\t} = this.props;\n\t\tconst { align, url, alt, id, sizeSlug, className } = attributes;\n\t\tconst hasImageContext = context\n\t\t\t? Object.keys( context ).length > 0\n\t\t\t: false;\n\n\t\tconst imageSizes = Array.isArray( this.props.imageSizes )\n\t\t\t? this.props.imageSizes\n\t\t\t: [];\n\t\t// Only map available image sizes for the user to choose.\n\t\tconst sizeOptions = imageSizes\n\t\t\t.filter( ( { slug } ) => getUrlForSlug( image, slug ) )\n\t\t\t.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\n\t\tlet selectedSizeOption = sizeSlug || imageDefaultSize;\n\t\tlet sizeOptionsValid = sizeOptions.find(\n\t\t\t( option ) => option.value === selectedSizeOption\n\t\t);\n\n\t\tif ( ! sizeOptionsValid ) {\n\t\t\t// Default to 'full' size if the default large size is not available.\n\t\t\tsizeOptionsValid = sizeOptions.find(\n\t\t\t\t( option ) => option.value === 'full'\n\t\t\t);\n\t\t\tselectedSizeOption = 'full';\n\t\t}\n\n\t\tconst canImageBeFeatured = this.canImageBeFeatured();\n\t\tconst isFeaturedImage =\n\t\t\tcanImageBeFeatured && featuredImageId === attributes.id;\n\n\t\tconst getToolbarEditButton = ( open ) => (\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ttitle={ __( 'Edit image' ) }\n\t\t\t\t\t\ticon={ replace }\n\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t/>\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t);\n\n\t\tconst getInspectorControls = () => (\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) } />\n\t\t\t\t<PanelBody style={ styles.panelBody }>\n\t\t\t\t\t<BlockStyles clientId={ clientId } url={ url } />\n\t\t\t\t</PanelBody>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t{ image && sizeOptionsValid && (\n\t\t\t\t\t\t<BottomSheetSelectControl\n\t\t\t\t\t\t\ticon={ fullscreen }\n\t\t\t\t\t\t\tlabel={ __( 'Size' ) }\n\t\t\t\t\t\t\toptions={ sizeOptions }\n\t\t\t\t\t\t\tonChange={ this.onSizeChangeValue }\n\t\t\t\t\t\t\tvalue={ selectedSizeOption }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ this.getAltTextSettings() }\n\t\t\t\t</PanelBody>\n\t\t\t\t<LinkSettings\n\t\t\t\t\tattributes={ this.props.attributes }\n\t\t\t\t\timage={ this.props.image }\n\t\t\t\t\tisLinkSheetVisible={ this.state.isLinkSheetVisible }\n\t\t\t\t\tsetMappedAttributes={ this.setMappedAttributes }\n\t\t\t\t/>\n\t\t\t\t<PanelBody\n\t\t\t\t\ttitle={ __( 'Featured Image' ) }\n\t\t\t\t\ttitleStyle={ styles.featuredImagePanelTitle }\n\t\t\t\t>\n\t\t\t\t\t{ canImageBeFeatured &&\n\t\t\t\t\t\tthis.getFeaturedButtonPanel( isFeaturedImage ) }\n\t\t\t\t\t<FooterMessageControl\n\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t'Changes to featured image will not be affected by the undo/redo buttons.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tcellContainerStyle={\n\t\t\t\t\t\t\tstyles.setFeaturedButtonCellContainer\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t);\n\n\t\tif ( ! url ) {\n\t\t\treturn (\n\t\t\t\t<View style={ styles.content }>\n\t\t\t\t\t{ isFetchingImage && this.showLoadingIndicator() }\n\t\t\t\t\t<MediaPlaceholder\n\t\t\t\t\t\tallowedTypes={ [ MEDIA_TYPE_IMAGE ] }\n\t\t\t\t\t\tonSelect={ this.onSelectMediaUploadOption }\n\t\t\t\t\t\tonSelectURL={ this.onSelectURL }\n\t\t\t\t\t\ticon={ this.getPlaceholderIcon() }\n\t\t\t\t\t\tonFocus={ this.props.onFocus }\n\t\t\t\t\t\tautoOpenMediaUpload={\n\t\t\t\t\t\t\tisSelected && wasBlockJustInserted\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\n\t\tconst alignToFlex = {\n\t\t\tleft: 'flex-start',\n\t\t\tcenter: 'center',\n\t\t\tright: 'flex-end',\n\t\t\tfull: 'center',\n\t\t\twide: 'center',\n\t\t};\n\n\t\tconst additionalImageProps = {\n\t\t\theight: '100%',\n\t\t\tresizeMode: context?.imageCrop ? 'cover' : 'contain',\n\t\t};\n\n\t\tconst imageContainerStyles = [\n\t\t\tcontext?.fixedHeight && styles.fixedHeight,\n\t\t];\n\n\t\tconst isGif = this.isGif( url );\n\t\tconst badgeLabelShown = isFeaturedImage || isGif;\n\t\tlet badgeLabelText = '';\n\t\tif ( isFeaturedImage ) {\n\t\t\tbadgeLabelText = __( 'Featured' );\n\t\t} else if ( isGif ) {\n\t\t\tbadgeLabelText = __( 'GIF' );\n\t\t}\n\n\t\tconst getImageComponent = ( openMediaOptions, getMediaOptions ) => (\n\t\t\t<Badge label={ badgeLabelText } show={ badgeLabelShown }>\n\t\t\t\t<TouchableWithoutFeedback\n\t\t\t\t\taccessible={ ! isSelected }\n\t\t\t\t\tonPress={ this.onImagePressed }\n\t\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\t>\n\t\t\t\t\t<View style={ styles.content }>\n\t\t\t\t\t\t{ isSelected && getInspectorControls() }\n\t\t\t\t\t\t{ isSelected && getMediaOptions() }\n\t\t\t\t\t\t{ ! this.state.isCaptionSelected &&\n\t\t\t\t\t\t\tgetToolbarEditButton( openMediaOptions ) }\n\t\t\t\t\t\t<MediaUploadProgress\n\t\t\t\t\t\t\tenablePausedUploads\n\t\t\t\t\t\t\tcoverUrl={ url }\n\t\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\t\tonUpdateMediaProgress={ this.updateMediaProgress }\n\t\t\t\t\t\t\tonFinishMediaUploadWithSuccess={\n\t\t\t\t\t\t\t\tthis.finishMediaUploadWithSuccess\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonFinishMediaUploadWithFailure={\n\t\t\t\t\t\t\t\tthis.finishMediaUploadWithFailure\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonMediaUploadStateReset={\n\t\t\t\t\t\t\t\tthis.mediaUploadStateReset\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\trenderContent={ ( {\n\t\t\t\t\t\t\t\tisUploadPaused,\n\t\t\t\t\t\t\t\tisUploadInProgress,\n\t\t\t\t\t\t\t\tisUploadFailed,\n\t\t\t\t\t\t\t\tretryMessage,\n\t\t\t\t\t\t\t} ) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<View style={ imageContainerStyles }>\n\t\t\t\t\t\t\t\t\t\t{ isFetchingImage &&\n\t\t\t\t\t\t\t\t\t\t\tthis.showLoadingIndicator() }\n\t\t\t\t\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\t\t\t\t\talign={\n\t\t\t\t\t\t\t\t\t\t\t\talign && alignToFlex[ align ]\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\t\t\t\t\t\tisSelected={\n\t\t\t\t\t\t\t\t\t\t\t\tisSelected &&\n\t\t\t\t\t\t\t\t\t\t\t\t! isCaptionSelected\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tisUploadFailed={ isUploadFailed }\n\t\t\t\t\t\t\t\t\t\t\tisUploadPaused={ isUploadPaused }\n\t\t\t\t\t\t\t\t\t\t\tisUploadInProgress={\n\t\t\t\t\t\t\t\t\t\t\t\tisUploadInProgress\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tshouldUseFastImage={\n\t\t\t\t\t\t\t\t\t\t\t\tshouldUseFastImage\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tonSelectMediaUploadOption={\n\t\t\t\t\t\t\t\t\t\t\t\tthis.onSelectMediaUploadOption\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\topenMediaOptions={\n\t\t\t\t\t\t\t\t\t\t\t\topenMediaOptions\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tretryMessage={ retryMessage }\n\t\t\t\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\t\t\t\tshapeStyle={\n\t\t\t\t\t\t\t\t\t\t\t\tstyles[ className ] || className\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\twidth={ this.getWidth() }\n\t\t\t\t\t\t\t\t\t\t\t{ ...( hasImageContext\n\t\t\t\t\t\t\t\t\t\t\t\t? additionalImageProps\n\t\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</View>\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</View>\n\t\t\t\t</TouchableWithoutFeedback>\n\t\t\t\t<BlockCaption\n\t\t\t\t\tclientId={ this.props.clientId }\n\t\t\t\t\tisSelected={ this.state.isCaptionSelected }\n\t\t\t\t\taccessible={ ! this.state.isCaptionSelected }\n\t\t\t\t\taccessibilityLabelCreator={ this.accessibilityLabelCreator }\n\t\t\t\t\tonFocus={ this.onFocusCaption }\n\t\t\t\t\tonBlur={ this.props.onBlur } // Always assign onBlur as props.\n\t\t\t\t\tinsertBlocksAfter={ this.props.insertBlocksAfter }\n\t\t\t\t/>\n\t\t\t</Badge>\n\t\t);\n\n\t\treturn (\n\t\t\t<MediaUpload\n\t\t\t\tallowedTypes={ [ MEDIA_TYPE_IMAGE ] }\n\t\t\t\tisReplacingMedia={ true }\n\t\t\t\tonSelect={ this.onSelectMediaUploadOption }\n\t\t\t\tonSelectURL={ this.onSelectURL }\n\t\t\t\trender={ ( { open, getMediaOptions } ) => {\n\t\t\t\t\treturn getImageComponent( open, getMediaOptions );\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select, props ) => {\n\t\tconst { getMedia } = select( coreStore );\n\t\tconst { getSettings, wasBlockJustInserted } =\n\t\t\tselect( blockEditorStore );\n\t\tconst { getEditedPostAttribute } = select( 'core/editor' );\n\t\tconst {\n\t\t\tattributes: { id, url },\n\t\t\tisSelected,\n\t\t\tclientId,\n\t\t} = props;\n\t\tconst { imageSizes, imageDefaultSize, capabilities } = getSettings();\n\t\tconst isNotFileUrl = id && getProtocol( url ) !== 'file:';\n\t\tconst featuredImageId = getEditedPostAttribute( 'featured_media' );\n\n\t\tconst shouldGetMedia =\n\t\t\t( isSelected && isNotFileUrl ) ||\n\t\t\t// Edge case to update the image after uploading if the block gets unselected\n\t\t\t// Check if it's the original image and not the resized one with queryparams.\n\t\t\t( ! isSelected &&\n\t\t\t\tisNotFileUrl &&\n\t\t\t\turl &&\n\t\t\t\t! hasQueryArg( url, 'w' ) );\n\t\tconst image = shouldGetMedia ? getMedia( id ) : null;\n\n\t\treturn {\n\t\t\timage,\n\t\t\timageSizes,\n\t\t\timageDefaultSize,\n\t\t\tshouldUseFastImage: capabilities?.shouldUseFastImage === true,\n\t\t\tfeaturedImageId,\n\t\t\twasBlockJustInserted: wasBlockJustInserted(\n\t\t\t\tclientId,\n\t\t\t\t'inserter_menu'\n\t\t\t),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { createErrorNotice } = dispatch( noticesStore );\n\t\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\t\tdispatch( blockEditorStore );\n\n\t\treturn {\n\t\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\t\tcreateErrorNotice,\n\t\t\tcloseSettingsBottomSheet() {\n\t\t\t\tdispatch( editPostStore ).closeGeneralSidebar();\n\t\t\t},\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( ImageEdit );\n"],"mappings":"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"}