@wordpress/block-library 8.29.0 → 8.31.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 (527) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/audio/edit.js +7 -17
  3. package/build/audio/edit.js.map +1 -1
  4. package/build/audio/edit.native.js.map +1 -1
  5. package/build/avatar/edit.js.map +1 -1
  6. package/build/block/deprecated.js +71 -11
  7. package/build/block/deprecated.js.map +1 -1
  8. package/build/block/edit.js +65 -31
  9. package/build/block/edit.js.map +1 -1
  10. package/build/button/edit.js +2 -2
  11. package/build/button/edit.js.map +1 -1
  12. package/build/buttons/edit.native.js.map +1 -1
  13. package/build/buttons/transforms.js +16 -2
  14. package/build/buttons/transforms.js.map +1 -1
  15. package/build/code/save.js +3 -1
  16. package/build/code/save.js.map +1 -1
  17. package/build/code/transforms.js +17 -6
  18. package/build/code/transforms.js.map +1 -1
  19. package/build/columns/edit.js +3 -2
  20. package/build/columns/edit.js.map +1 -1
  21. package/build/comment-author-avatar/edit.js +1 -1
  22. package/build/comment-author-avatar/edit.js.map +1 -1
  23. package/build/cover/edit/block-controls.js +14 -3
  24. package/build/cover/edit/block-controls.js.map +1 -1
  25. package/build/cover/edit/index.js +2 -1
  26. package/build/cover/edit/index.js.map +1 -1
  27. package/build/cover/edit/inspector-controls.js.map +1 -1
  28. package/build/cover/edit/resizable-cover-popover.js +0 -6
  29. package/build/cover/edit/resizable-cover-popover.js.map +1 -1
  30. package/build/cover/edit.native.js.map +1 -1
  31. package/build/details/edit.js +1 -0
  32. package/build/details/edit.js.map +1 -1
  33. package/build/file/deprecated.js.map +1 -1
  34. package/build/file/edit.js +8 -13
  35. package/build/file/edit.js.map +1 -1
  36. package/build/file/edit.native.js.map +1 -1
  37. package/build/file/save.js.map +1 -1
  38. package/build/form-input/edit.js +1 -1
  39. package/build/form-input/edit.js.map +1 -1
  40. package/build/gallery/edit.js.map +1 -1
  41. package/build/gallery/gallery.native.js.map +1 -1
  42. package/build/gallery/v1/edit.js.map +1 -1
  43. package/build/gallery/v1/gallery.native.js.map +1 -1
  44. package/build/heading/index.js +4 -3
  45. package/build/heading/index.js.map +1 -1
  46. package/build/heading/transforms.js +17 -4
  47. package/build/heading/transforms.js.map +1 -1
  48. package/build/image/edit.js +8 -4
  49. package/build/image/edit.js.map +1 -1
  50. package/build/image/edit.native.js.map +1 -1
  51. package/build/image/image.js +22 -8
  52. package/build/image/image.js.map +1 -1
  53. package/build/latest-posts/edit.native.js.map +1 -1
  54. package/build/list/ordered-list-settings.js +1 -1
  55. package/build/list/ordered-list-settings.js.map +1 -1
  56. package/build/list-item/edit.js +1 -3
  57. package/build/list-item/edit.js.map +1 -1
  58. package/build/list-item/edit.native.js.map +1 -1
  59. package/build/list-item/hooks/index.js +0 -7
  60. package/build/list-item/hooks/index.js.map +1 -1
  61. package/build/list-item/hooks/use-indent-list-item.js +1 -0
  62. package/build/list-item/hooks/use-indent-list-item.js.map +1 -1
  63. package/build/list-item/hooks/use-outdent-list-item.js +1 -0
  64. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
  65. package/build/list-item/hooks/use-space.js +16 -7
  66. package/build/list-item/hooks/use-space.js.map +1 -1
  67. package/build/list-item/index.js +4 -1
  68. package/build/list-item/index.js.map +1 -1
  69. package/build/media-text/edit.js +33 -9
  70. package/build/media-text/edit.js.map +1 -1
  71. package/build/media-text/index.js +5 -0
  72. package/build/media-text/index.js.map +1 -1
  73. package/build/media-text/media-container.js +30 -11
  74. package/build/media-text/media-container.js.map +1 -1
  75. package/build/media-text/media-container.native.js +1 -1
  76. package/build/media-text/media-container.native.js.map +1 -1
  77. package/build/media-text/save.js +2 -2
  78. package/build/media-text/save.js.map +1 -1
  79. package/build/navigation/edit/index.js +23 -29
  80. package/build/navigation/edit/index.js.map +1 -1
  81. package/build/navigation/edit/navigation-menu-delete-control.js +12 -20
  82. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  83. package/build/navigation/edit/navigation-menu-selector.js +24 -23
  84. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  85. package/build/navigation/edit/placeholder/index.js +4 -4
  86. package/build/navigation/edit/placeholder/index.js.map +1 -1
  87. package/build/navigation/use-navigation-menu.js +15 -12
  88. package/build/navigation/use-navigation-menu.js.map +1 -1
  89. package/build/navigation-link/edit.js +12 -10
  90. package/build/navigation-link/edit.js.map +1 -1
  91. package/build/navigation-link/link-ui.js.map +1 -1
  92. package/build/navigation-submenu/edit.js +4 -0
  93. package/build/navigation-submenu/edit.js.map +1 -1
  94. package/build/paragraph/edit.native.js.map +1 -1
  95. package/build/pattern/edit.js +11 -0
  96. package/build/pattern/edit.js.map +1 -1
  97. package/build/post-author/edit.js +1 -0
  98. package/build/post-author/edit.js.map +1 -1
  99. package/build/post-excerpt/edit.js +1 -0
  100. package/build/post-excerpt/edit.js.map +1 -1
  101. package/build/post-featured-image/dimension-controls.js.map +1 -1
  102. package/build/post-featured-image/edit.js +12 -12
  103. package/build/post-featured-image/edit.js.map +1 -1
  104. package/build/post-featured-image/index.js +6 -0
  105. package/build/post-featured-image/index.js.map +1 -1
  106. package/build/post-navigation-link/edit.js +1 -0
  107. package/build/post-navigation-link/edit.js.map +1 -1
  108. package/build/post-terms/edit.js +2 -0
  109. package/build/post-terms/edit.js.map +1 -1
  110. package/build/post-title/edit.js +2 -2
  111. package/build/post-title/edit.js.map +1 -1
  112. package/build/query/edit/pattern-selection-modal.js.map +1 -1
  113. package/build/query/utils.js +7 -5
  114. package/build/query/utils.js.map +1 -1
  115. package/build/query-pagination-next/edit.js.map +1 -1
  116. package/build/query-pagination-previous/edit.js.map +1 -1
  117. package/build/quote/deprecated.js +111 -12
  118. package/build/quote/deprecated.js.map +1 -1
  119. package/build/quote/edit.js +7 -7
  120. package/build/quote/edit.js.map +1 -1
  121. package/build/quote/index.js +1 -1
  122. package/build/quote/index.js.map +1 -1
  123. package/build/quote/save.js +2 -2
  124. package/build/quote/save.js.map +1 -1
  125. package/build/read-more/edit.js +1 -0
  126. package/build/read-more/edit.js.map +1 -1
  127. package/build/search/edit.js +3 -1
  128. package/build/search/edit.js.map +1 -1
  129. package/build/search/edit.native.js +2 -2
  130. package/build/search/edit.native.js.map +1 -1
  131. package/build/site-logo/edit.js +7 -2
  132. package/build/site-logo/edit.js.map +1 -1
  133. package/build/site-title/{edit/index.js → edit.js} +1 -1
  134. package/build/site-title/edit.js.map +1 -0
  135. package/build/social-link/edit.js +1 -1
  136. package/build/social-link/edit.js.map +1 -1
  137. package/build/social-link/icons/medium.js +1 -1
  138. package/build/social-link/icons/medium.js.map +1 -1
  139. package/build/social-link/icons/reddit.js +1 -1
  140. package/build/social-link/icons/reddit.js.map +1 -1
  141. package/build/social-links/edit.native.js.map +1 -1
  142. package/build/spacer/edit.js.map +1 -1
  143. package/build/table/deprecated.js +285 -175
  144. package/build/table/deprecated.js.map +1 -1
  145. package/build/table/index.js +1 -1
  146. package/build/table-of-contents/edit.js.map +1 -1
  147. package/build/template-part/edit/index.js +53 -1
  148. package/build/template-part/edit/index.js.map +1 -1
  149. package/build/template-part/edit/selection-modal.js +2 -8
  150. package/build/template-part/edit/selection-modal.js.map +1 -1
  151. package/build/template-part/edit/utils/map-template-part-to-block-pattern.js +30 -0
  152. package/build/template-part/edit/utils/map-template-part-to-block-pattern.js.map +1 -0
  153. package/build/utils/caption.js +15 -5
  154. package/build/utils/caption.js.map +1 -1
  155. package/build/utils/get-transformed-metadata.js +57 -0
  156. package/build/utils/get-transformed-metadata.js.map +1 -0
  157. package/build/utils/hooks.js +55 -4
  158. package/build/utils/hooks.js.map +1 -1
  159. package/build/video/edit-common-settings.js.map +1 -1
  160. package/build/video/edit.js +7 -16
  161. package/build/video/edit.js.map +1 -1
  162. package/build/video/edit.native.js +3 -8
  163. package/build/video/edit.native.js.map +1 -1
  164. package/build-module/audio/edit.js +10 -20
  165. package/build-module/audio/edit.js.map +1 -1
  166. package/build-module/audio/edit.native.js.map +1 -1
  167. package/build-module/avatar/edit.js.map +1 -1
  168. package/build-module/block/deprecated.js +71 -11
  169. package/build-module/block/deprecated.js.map +1 -1
  170. package/build-module/block/edit.js +66 -32
  171. package/build-module/block/edit.js.map +1 -1
  172. package/build-module/button/edit.js +3 -3
  173. package/build-module/button/edit.js.map +1 -1
  174. package/build-module/buttons/edit.native.js.map +1 -1
  175. package/build-module/buttons/transforms.js +16 -2
  176. package/build-module/buttons/transforms.js.map +1 -1
  177. package/build-module/code/save.js +3 -1
  178. package/build-module/code/save.js.map +1 -1
  179. package/build-module/code/transforms.js +17 -6
  180. package/build-module/code/transforms.js.map +1 -1
  181. package/build-module/columns/edit.js +3 -2
  182. package/build-module/columns/edit.js.map +1 -1
  183. package/build-module/comment-author-avatar/edit.js +1 -1
  184. package/build-module/comment-author-avatar/edit.js.map +1 -1
  185. package/build-module/cover/edit/block-controls.js +15 -4
  186. package/build-module/cover/edit/block-controls.js.map +1 -1
  187. package/build-module/cover/edit/index.js +2 -1
  188. package/build-module/cover/edit/index.js.map +1 -1
  189. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  190. package/build-module/cover/edit/resizable-cover-popover.js +1 -7
  191. package/build-module/cover/edit/resizable-cover-popover.js.map +1 -1
  192. package/build-module/cover/edit.native.js.map +1 -1
  193. package/build-module/details/edit.js +1 -0
  194. package/build-module/details/edit.js.map +1 -1
  195. package/build-module/file/deprecated.js.map +1 -1
  196. package/build-module/file/edit.js +9 -14
  197. package/build-module/file/edit.js.map +1 -1
  198. package/build-module/file/edit.native.js.map +1 -1
  199. package/build-module/file/save.js.map +1 -1
  200. package/build-module/form-input/edit.js +1 -1
  201. package/build-module/form-input/edit.js.map +1 -1
  202. package/build-module/gallery/edit.js.map +1 -1
  203. package/build-module/gallery/gallery.native.js.map +1 -1
  204. package/build-module/gallery/v1/edit.js.map +1 -1
  205. package/build-module/gallery/v1/gallery.native.js.map +1 -1
  206. package/build-module/heading/index.js +4 -3
  207. package/build-module/heading/index.js.map +1 -1
  208. package/build-module/heading/transforms.js +17 -4
  209. package/build-module/heading/transforms.js.map +1 -1
  210. package/build-module/image/edit.js +9 -5
  211. package/build-module/image/edit.js.map +1 -1
  212. package/build-module/image/edit.native.js.map +1 -1
  213. package/build-module/image/image.js +23 -9
  214. package/build-module/image/image.js.map +1 -1
  215. package/build-module/latest-posts/edit.native.js.map +1 -1
  216. package/build-module/list/ordered-list-settings.js +1 -1
  217. package/build-module/list/ordered-list-settings.js.map +1 -1
  218. package/build-module/list-item/edit.js +2 -4
  219. package/build-module/list-item/edit.js.map +1 -1
  220. package/build-module/list-item/edit.native.js.map +1 -1
  221. package/build-module/list-item/hooks/index.js +0 -1
  222. package/build-module/list-item/hooks/index.js.map +1 -1
  223. package/build-module/list-item/hooks/use-indent-list-item.js +1 -0
  224. package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -1
  225. package/build-module/list-item/hooks/use-outdent-list-item.js +1 -0
  226. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
  227. package/build-module/list-item/hooks/use-space.js +17 -8
  228. package/build-module/list-item/hooks/use-space.js.map +1 -1
  229. package/build-module/list-item/index.js +4 -1
  230. package/build-module/list-item/index.js.map +1 -1
  231. package/build-module/media-text/edit.js +34 -10
  232. package/build-module/media-text/edit.js.map +1 -1
  233. package/build-module/media-text/index.js +5 -0
  234. package/build-module/media-text/index.js.map +1 -1
  235. package/build-module/media-text/media-container.js +31 -12
  236. package/build-module/media-text/media-container.js.map +1 -1
  237. package/build-module/media-text/media-container.native.js +1 -1
  238. package/build-module/media-text/media-container.native.js.map +1 -1
  239. package/build-module/media-text/save.js +2 -2
  240. package/build-module/media-text/save.js.map +1 -1
  241. package/build-module/navigation/edit/index.js +24 -30
  242. package/build-module/navigation/edit/index.js.map +1 -1
  243. package/build-module/navigation/edit/navigation-menu-delete-control.js +15 -23
  244. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  245. package/build-module/navigation/edit/navigation-menu-selector.js +24 -23
  246. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  247. package/build-module/navigation/edit/placeholder/index.js +4 -4
  248. package/build-module/navigation/edit/placeholder/index.js.map +1 -1
  249. package/build-module/navigation/use-navigation-menu.js +15 -12
  250. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  251. package/build-module/navigation-link/edit.js +13 -11
  252. package/build-module/navigation-link/edit.js.map +1 -1
  253. package/build-module/navigation-link/link-ui.js.map +1 -1
  254. package/build-module/navigation-submenu/edit.js +4 -0
  255. package/build-module/navigation-submenu/edit.js.map +1 -1
  256. package/build-module/paragraph/edit.native.js.map +1 -1
  257. package/build-module/pattern/edit.js +11 -0
  258. package/build-module/pattern/edit.js.map +1 -1
  259. package/build-module/post-author/edit.js +1 -0
  260. package/build-module/post-author/edit.js.map +1 -1
  261. package/build-module/post-excerpt/edit.js +1 -0
  262. package/build-module/post-excerpt/edit.js.map +1 -1
  263. package/build-module/post-featured-image/dimension-controls.js.map +1 -1
  264. package/build-module/post-featured-image/edit.js +13 -13
  265. package/build-module/post-featured-image/edit.js.map +1 -1
  266. package/build-module/post-featured-image/index.js +6 -0
  267. package/build-module/post-featured-image/index.js.map +1 -1
  268. package/build-module/post-navigation-link/edit.js +1 -0
  269. package/build-module/post-navigation-link/edit.js.map +1 -1
  270. package/build-module/post-terms/edit.js +2 -0
  271. package/build-module/post-terms/edit.js.map +1 -1
  272. package/build-module/post-title/edit.js +2 -2
  273. package/build-module/post-title/edit.js.map +1 -1
  274. package/build-module/query/edit/pattern-selection-modal.js.map +1 -1
  275. package/build-module/query/utils.js +7 -5
  276. package/build-module/query/utils.js.map +1 -1
  277. package/build-module/query-pagination-next/edit.js.map +1 -1
  278. package/build-module/query-pagination-previous/edit.js.map +1 -1
  279. package/build-module/quote/deprecated.js +112 -13
  280. package/build-module/quote/deprecated.js.map +1 -1
  281. package/build-module/quote/edit.js +7 -7
  282. package/build-module/quote/edit.js.map +1 -1
  283. package/build-module/quote/index.js +1 -1
  284. package/build-module/quote/index.js.map +1 -1
  285. package/build-module/quote/save.js +2 -2
  286. package/build-module/quote/save.js.map +1 -1
  287. package/build-module/read-more/edit.js +1 -0
  288. package/build-module/read-more/edit.js.map +1 -1
  289. package/build-module/search/edit.js +3 -1
  290. package/build-module/search/edit.js.map +1 -1
  291. package/build-module/search/edit.native.js +2 -2
  292. package/build-module/search/edit.native.js.map +1 -1
  293. package/build-module/site-logo/edit.js +7 -2
  294. package/build-module/site-logo/edit.js.map +1 -1
  295. package/build-module/site-title/{edit/index.js → edit.js} +1 -1
  296. package/build-module/site-title/edit.js.map +1 -0
  297. package/build-module/social-link/edit.js +1 -1
  298. package/build-module/social-link/edit.js.map +1 -1
  299. package/build-module/social-link/icons/medium.js +1 -1
  300. package/build-module/social-link/icons/medium.js.map +1 -1
  301. package/build-module/social-link/icons/reddit.js +1 -1
  302. package/build-module/social-link/icons/reddit.js.map +1 -1
  303. package/build-module/social-links/edit.native.js.map +1 -1
  304. package/build-module/spacer/edit.js.map +1 -1
  305. package/build-module/table/deprecated.js +286 -176
  306. package/build-module/table/deprecated.js.map +1 -1
  307. package/build-module/table/index.js +1 -1
  308. package/build-module/table-of-contents/edit.js.map +1 -1
  309. package/build-module/template-part/edit/index.js +57 -5
  310. package/build-module/template-part/edit/index.js.map +1 -1
  311. package/build-module/template-part/edit/selection-modal.js +2 -8
  312. package/build-module/template-part/edit/selection-modal.js.map +1 -1
  313. package/build-module/template-part/edit/utils/map-template-part-to-block-pattern.js +24 -0
  314. package/build-module/template-part/edit/utils/map-template-part-to-block-pattern.js.map +1 -0
  315. package/build-module/utils/caption.js +13 -3
  316. package/build-module/utils/caption.js.map +1 -1
  317. package/build-module/utils/get-transformed-metadata.js +51 -0
  318. package/build-module/utils/get-transformed-metadata.js.map +1 -0
  319. package/build-module/utils/hooks.js +54 -3
  320. package/build-module/utils/hooks.js.map +1 -1
  321. package/build-module/video/edit-common-settings.js.map +1 -1
  322. package/build-module/video/edit.js +10 -19
  323. package/build-module/video/edit.js.map +1 -1
  324. package/build-module/video/edit.native.js +3 -8
  325. package/build-module/video/edit.native.js.map +1 -1
  326. package/build-style/common-rtl.css +1 -0
  327. package/build-style/common.css +1 -0
  328. package/build-style/cover/style-rtl.css +2 -1
  329. package/build-style/cover/style.css +2 -1
  330. package/build-style/editor-rtl.css +11 -2
  331. package/build-style/editor.css +11 -2
  332. package/build-style/file/editor-rtl.css +3 -0
  333. package/build-style/file/editor.css +3 -0
  334. package/build-style/group/editor-rtl.css +1 -1
  335. package/build-style/group/editor.css +1 -1
  336. package/build-style/media-text/editor-rtl.css +7 -1
  337. package/build-style/media-text/editor.css +7 -1
  338. package/build-style/search/style-rtl.css +2 -0
  339. package/build-style/search/style.css +2 -0
  340. package/build-style/social-links/style-rtl.css +2 -2
  341. package/build-style/social-links/style.css +2 -2
  342. package/build-style/style-rtl.css +6 -3
  343. package/build-style/style.css +6 -3
  344. package/package.json +34 -34
  345. package/src/archives/index.php +4 -0
  346. package/src/audio/edit.js +9 -19
  347. package/src/audio/edit.native.js +3 -3
  348. package/src/avatar/edit.js +1 -1
  349. package/src/avatar/index.php +6 -0
  350. package/src/block/deprecated.js +76 -11
  351. package/src/block/edit.js +100 -32
  352. package/src/block/index.php +27 -12
  353. package/src/block/test/edit.native.js +67 -0
  354. package/src/button/edit.js +4 -3
  355. package/src/buttons/edit.native.js +1 -1
  356. package/src/buttons/transforms.js +14 -4
  357. package/src/calendar/index.php +17 -0
  358. package/src/categories/index.php +6 -0
  359. package/src/code/save.js +7 -1
  360. package/src/code/transforms.js +20 -5
  361. package/src/columns/edit.js +3 -2
  362. package/src/comment-author-avatar/edit.js +1 -1
  363. package/src/comment-author-name/index.php +4 -0
  364. package/src/comment-content/index.php +4 -0
  365. package/src/comment-date/index.php +4 -0
  366. package/src/comment-edit-link/index.php +4 -0
  367. package/src/comment-reply-link/index.php +4 -0
  368. package/src/comment-template/index.php +4 -0
  369. package/src/comments/index.php +12 -0
  370. package/src/comments-pagination/index.php +4 -0
  371. package/src/comments-pagination-next/index.php +4 -0
  372. package/src/comments-pagination-numbers/index.php +4 -0
  373. package/src/comments-pagination-previous/index.php +4 -0
  374. package/src/comments-title/index.php +4 -0
  375. package/src/cover/edit/block-controls.js +16 -2
  376. package/src/cover/edit/index.js +6 -3
  377. package/src/cover/edit/inspector-controls.js +1 -1
  378. package/src/cover/edit/resizable-cover-popover.js +1 -6
  379. package/src/cover/edit.native.js +1 -1
  380. package/src/cover/index.php +4 -0
  381. package/src/cover/style.scss +3 -2
  382. package/src/details/edit.js +1 -0
  383. package/src/file/deprecated.js +3 -3
  384. package/src/file/edit.js +10 -15
  385. package/src/file/edit.native.js +4 -4
  386. package/src/file/editor.scss +3 -0
  387. package/src/file/index.php +4 -0
  388. package/src/file/save.js +1 -1
  389. package/src/footnotes/index.php +1 -1
  390. package/src/form-input/edit.js +1 -1
  391. package/src/gallery/edit.js +3 -3
  392. package/src/gallery/gallery.native.js +1 -1
  393. package/src/gallery/index.php +6 -0
  394. package/src/gallery/test/index.native.js +1 -1
  395. package/src/gallery/v1/edit.js +2 -2
  396. package/src/gallery/v1/gallery.native.js +1 -1
  397. package/src/group/editor.scss +1 -1
  398. package/src/heading/index.js +4 -3
  399. package/src/heading/index.php +4 -0
  400. package/src/heading/transforms.js +27 -8
  401. package/src/home-link/index.php +10 -0
  402. package/src/image/edit.js +13 -5
  403. package/src/image/edit.native.js +1 -1
  404. package/src/image/editor.scss +1 -0
  405. package/src/image/image.js +34 -22
  406. package/src/image/index.php +12 -1
  407. package/src/latest-comments/index.php +4 -0
  408. package/src/latest-posts/edit.native.js +1 -1
  409. package/src/latest-posts/index.php +8 -0
  410. package/src/list/ordered-list-settings.js +1 -1
  411. package/src/list-item/edit.js +1 -2
  412. package/src/list-item/edit.native.js +1 -1
  413. package/src/list-item/hooks/index.js +0 -1
  414. package/src/list-item/hooks/use-indent-list-item.js +2 -0
  415. package/src/list-item/hooks/use-outdent-list-item.js +2 -0
  416. package/src/list-item/hooks/use-space.js +16 -9
  417. package/src/list-item/index.js +3 -0
  418. package/src/loginout/index.php +4 -0
  419. package/src/media-text/block.json +5 -0
  420. package/src/media-text/edit.js +70 -19
  421. package/src/media-text/editor.scss +7 -1
  422. package/src/media-text/index.php +70 -0
  423. package/src/media-text/media-container.js +49 -9
  424. package/src/media-text/media-container.native.js +5 -3
  425. package/src/media-text/save.js +2 -2
  426. package/src/media-text/test/edit.native.js +58 -0
  427. package/src/missing/test/edit-integration.native.js +2 -1
  428. package/src/navigation/edit/index.js +68 -72
  429. package/src/navigation/edit/navigation-menu-delete-control.js +22 -49
  430. package/src/navigation/edit/navigation-menu-selector.js +39 -21
  431. package/src/navigation/edit/placeholder/index.js +4 -4
  432. package/src/navigation/edit/test/navigation-menu-selector.js +77 -55
  433. package/src/navigation/index.php +118 -34
  434. package/src/navigation/test/use-navigation-menu.js +21 -21
  435. package/src/navigation/use-navigation-menu.js +23 -9
  436. package/src/navigation-link/edit.js +12 -13
  437. package/src/navigation-link/index.php +14 -0
  438. package/src/navigation-link/link-ui.js +2 -2
  439. package/src/navigation-submenu/edit.js +4 -0
  440. package/src/navigation-submenu/index.php +8 -0
  441. package/src/page-list/index.php +12 -0
  442. package/src/page-list-item/index.php +2 -0
  443. package/src/paragraph/edit.native.js +1 -1
  444. package/src/paragraph/test/edit.native.js +36 -0
  445. package/src/pattern/edit.js +14 -0
  446. package/src/pattern/index.php +2 -0
  447. package/src/post-author/edit.js +1 -0
  448. package/src/post-author/index.php +4 -0
  449. package/src/post-author-biography/index.php +4 -0
  450. package/src/post-author-name/index.php +4 -0
  451. package/src/post-comments-form/index.php +6 -0
  452. package/src/post-content/index.php +4 -0
  453. package/src/post-date/index.php +4 -0
  454. package/src/post-excerpt/edit.js +2 -1
  455. package/src/post-excerpt/index.php +4 -0
  456. package/src/post-featured-image/block.json +6 -0
  457. package/src/post-featured-image/dimension-controls.js +4 -4
  458. package/src/post-featured-image/edit.js +14 -12
  459. package/src/post-featured-image/index.php +15 -0
  460. package/src/post-navigation-link/edit.js +2 -1
  461. package/src/post-navigation-link/index.php +4 -0
  462. package/src/post-template/index.php +6 -0
  463. package/src/post-terms/edit.js +2 -0
  464. package/src/post-terms/index.php +6 -0
  465. package/src/post-title/edit.js +49 -43
  466. package/src/post-title/index.php +2 -0
  467. package/src/query/edit/pattern-selection-modal.js +1 -1
  468. package/src/query/index.php +2 -0
  469. package/src/query/utils.js +6 -4
  470. package/src/query-no-results/index.php +4 -0
  471. package/src/query-pagination/index.php +4 -0
  472. package/src/query-pagination-next/edit.js +1 -1
  473. package/src/query-pagination-next/index.php +4 -0
  474. package/src/query-pagination-numbers/index.php +4 -0
  475. package/src/query-pagination-previous/edit.js +1 -1
  476. package/src/query-pagination-previous/index.php +4 -0
  477. package/src/query-title/index.php +4 -0
  478. package/src/quote/block.json +1 -1
  479. package/src/quote/deprecated.js +110 -15
  480. package/src/quote/edit.js +16 -10
  481. package/src/quote/save.js +2 -2
  482. package/src/quote/test/__snapshots__/transforms.native.js.snap +2 -2
  483. package/src/read-more/edit.js +2 -1
  484. package/src/read-more/index.php +4 -0
  485. package/src/rss/index.php +4 -0
  486. package/src/search/edit.js +3 -1
  487. package/src/search/edit.native.js +6 -6
  488. package/src/search/index.php +20 -2
  489. package/src/search/style.scss +2 -0
  490. package/src/shortcode/index.php +4 -0
  491. package/src/site-logo/edit.js +11 -6
  492. package/src/site-logo/index.php +20 -0
  493. package/src/site-tagline/index.php +4 -0
  494. package/src/site-title/index.php +4 -0
  495. package/src/social-link/edit.js +2 -2
  496. package/src/social-link/icons/medium.js +1 -1
  497. package/src/social-link/icons/reddit.js +1 -1
  498. package/src/social-link/index.php +22 -9
  499. package/src/social-link/socials-with-bg.scss +1 -1
  500. package/src/social-link/socials-without-bg.scss +1 -1
  501. package/src/social-links/edit.native.js +1 -1
  502. package/src/spacer/edit.js +1 -1
  503. package/src/table/block.json +1 -1
  504. package/src/table/deprecated.js +308 -175
  505. package/src/table-of-contents/edit.js +1 -1
  506. package/src/tag-cloud/index.php +4 -0
  507. package/src/template-part/edit/index.js +91 -4
  508. package/src/template-part/edit/selection-modal.js +4 -8
  509. package/src/template-part/edit/utils/map-template-part-to-block-pattern.js +23 -0
  510. package/src/template-part/index.php +10 -0
  511. package/src/term-description/index.php +4 -0
  512. package/src/utils/caption.js +10 -1
  513. package/src/utils/get-transformed-metadata.js +65 -0
  514. package/src/utils/hooks.js +53 -3
  515. package/src/video/edit-common-settings.js +1 -1
  516. package/src/video/edit.js +10 -18
  517. package/src/video/edit.native.js +7 -8
  518. package/src/video/test/edit.native.js +0 -14
  519. package/tsconfig.json +1 -0
  520. package/build/list-item/hooks/use-copy.js +0 -39
  521. package/build/list-item/hooks/use-copy.js.map +0 -1
  522. package/build/site-title/edit/index.js.map +0 -1
  523. package/build-module/list-item/hooks/use-copy.js +0 -32
  524. package/build-module/list-item/hooks/use-copy.js.map +0 -1
  525. package/build-module/site-title/edit/index.js.map +0 -1
  526. package/src/list-item/hooks/use-copy.js +0 -38
  527. /package/src/site-title/{edit/index.js → edit.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["isBlobURL","ExternalLink","ResizableBox","Spinner","TextareaControl","TextControl","ToolbarButton","ToolbarGroup","Dropdown","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalUseCustomUnits","useCustomUnits","useViewportMatch","useSelect","useDispatch","BlockControls","InspectorControls","__experimentalImageURLInputUI","ImageURLInputUI","MediaReplaceFlow","store","blockEditorStore","useSettings","__experimentalImageEditor","ImageEditor","__experimentalUseBorderProps","useBorderProps","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","privateApis","blockEditorPrivateApis","useEffect","useMemo","useState","useRef","__","_x","sprintf","isRTL","DOWN","getFilename","switchToBlockType","crop","overlayText","upload","noticesStore","coreStore","unlock","createUpgradedEmbedBlock","useClientWidth","isExternalImage","Caption","TOOLSPANEL_DROPDOWNMENU_PROPS","MIN_SIZE","ALLOWED_MEDIA_TYPES","evalAspectRatio","DimensionsTool","ResolutionTool","scaleOptions","value","label","help","ImageWrapper","href","children","createElement","onClick","event","preventDefault","style","pointerEvents","cursor","display","Image","temporaryURL","attributes","setAttributes","isSingleSelected","insertBlocksAfter","onReplace","onSelectImage","onSelectURL","onUploadError","containerRef","context","clientId","blockEditingMode","url","alt","align","id","rel","linkClass","linkDestination","title","width","height","aspectRatio","scale","linkTarget","sizeSlug","lightbox","metadata","numericWidth","parseInt","undefined","numericHeight","imageRef","allowResize","getBlock","getSettings","image","select","getMedia","canInsertCover","imageEditing","imageSizes","maxWidth","getBlockRootClientId","canInsertBlockType","rootClientId","settings","replaceBlocks","toggleSelection","createErrorNotice","createSuccessNotice","isLargeViewport","isWideAligned","includes","loadedNaturalWidth","loadedNaturalHeight","setLoadedNaturalSize","isEditingImage","setIsEditingImage","externalBlob","setExternalBlob","clientWidth","hasNonContentControls","isContentOnlyMode","isResizable","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","mediaUpload","window","fetch","then","response","blob","catch","naturalWidth","naturalHeight","current","complete","onResizeStart","onResizeStop","onImageError","embedBlock","onSetHref","props","onSetLightbox","enable","lightboxSetting","enabled","onSetTitle","updateAlt","newAlt","updateImage","newSizeSlug","newUrl","uploadExternal","filesList","onFileChange","img","type","allowedTypes","onError","message","canEditImage","allowCrop","switchToCover","dimensionsUnitsOptions","availableUnits","showLightboxSetting","allowEditing","lightboxChecked","dimensionsControl","onChange","newWidth","newHeight","newScale","newAspectRatio","defaultScale","defaultAspectRatio","unitsOptions","resetAll","sizeControls","dropdownMenuProps","lockUrlControls","lockHrefControls","lockAltControls","lockTitleControls","getBlockBindingsSource","getBlockParentsByBlockName","urlBinding","altBinding","titleBinding","bindings","hasParentPattern","length","urlBindingSource","source","altBindingSource","titleBindingSource","lockAttributesEditing","controls","Fragment","group","onChangeUrl","mediaUrl","mediaLink","link","lightboxEnabled","icon","mediaId","mediaURL","accept","onSelect","popoverProps","position","renderToggle","isOpen","onToggle","onKeyDown","keyCode","renderContent","className","disabled","__nextHasNoMarginBottom","isShownByDefault","hasValue","onDeselect","readOnly","options","filename","defaultedAlt","borderProps","shadowProps","isRounded","src","onLoad","target","ref","objectFit","fallbackClientWidth","onSaveImage","imageAttributes","onFinishEditing","numericRatio","customRatio","naturalRatio","ratio","currentWidth","currentHeight","minWidth","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","size","showHandle","maxHeight","lockAspectRatio","top","right","bottom","left","direction","elt","offsetWidth","String","resizeRatio","isSelected","showToolbarButton"],"sources":["@wordpress/block-library/src/image/image.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tExternalLink,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tTextControl,\n\tToolbarButton,\n\tToolbarGroup,\n\tDropdown,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\t__experimentalImageURLInputUI as ImageURLInputUI,\n\tMediaReplaceFlow,\n\tstore as blockEditorStore,\n\tuseSettings,\n\t__experimentalImageEditor as ImageEditor,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { useEffect, useMemo, useState, useRef } from '@wordpress/element';\nimport { __, _x, sprintf, isRTL } from '@wordpress/i18n';\nimport { DOWN } from '@wordpress/keycodes';\nimport { getFilename } from '@wordpress/url';\nimport { switchToBlockType } from '@wordpress/blocks';\nimport { crop, overlayText, upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport useClientWidth from './use-client-width';\nimport { isExternalImage } from './edit';\nimport { Caption } from '../utils/caption';\n\n/**\n * Module constants\n */\nimport { TOOLSPANEL_DROPDOWNMENU_PROPS } from '../utils/constants';\nimport { MIN_SIZE, ALLOWED_MEDIA_TYPES } from './constants';\nimport { evalAspectRatio } from './utils';\n\nconst { DimensionsTool, ResolutionTool } = unlock( blockEditorPrivateApis );\n\nconst scaleOptions = [\n\t{\n\t\tvalue: 'cover',\n\t\tlabel: _x( 'Cover', 'Scale option for dimensions control' ),\n\t\thelp: __( 'Image covers the space evenly.' ),\n\t},\n\t{\n\t\tvalue: 'contain',\n\t\tlabel: _x( 'Contain', 'Scale option for dimensions control' ),\n\t\thelp: __( 'Image is contained without distortion.' ),\n\t},\n];\n\n// If the image has a href, wrap in an <a /> tag to trigger any inherited link element styles.\nconst ImageWrapper = ( { href, children } ) => {\n\tif ( ! href ) {\n\t\treturn children;\n\t}\n\treturn (\n\t\t<a\n\t\t\thref={ href }\n\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\taria-disabled={ true }\n\t\t\tstyle={ {\n\t\t\t\t// When the Image block is linked,\n\t\t\t\t// it's wrapped with a disabled <a /> tag.\n\t\t\t\t// Restore cursor style so it doesn't appear 'clickable'\n\t\t\t\t// and remove pointer events. Safari needs the display property.\n\t\t\t\tpointerEvents: 'none',\n\t\t\t\tcursor: 'default',\n\t\t\t\tdisplay: 'inline',\n\t\t\t} }\n\t\t>\n\t\t\t{ children }\n\t\t</a>\n\t);\n};\n\nexport default function Image( {\n\ttemporaryURL,\n\tattributes,\n\tsetAttributes,\n\tisSingleSelected,\n\tinsertBlocksAfter,\n\tonReplace,\n\tonSelectImage,\n\tonSelectURL,\n\tonUploadError,\n\tcontainerRef,\n\tcontext,\n\tclientId,\n\tblockEditingMode,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\talign,\n\t\tid,\n\t\thref,\n\t\trel,\n\t\tlinkClass,\n\t\tlinkDestination,\n\t\ttitle,\n\t\twidth,\n\t\theight,\n\t\taspectRatio,\n\t\tscale,\n\t\tlinkTarget,\n\t\tsizeSlug,\n\t\tlightbox,\n\t\tmetadata,\n\t} = attributes;\n\n\t// The only supported unit is px, so we can parseInt to strip the px here.\n\tconst numericWidth = width ? parseInt( width, 10 ) : undefined;\n\tconst numericHeight = height ? parseInt( height, 10 ) : undefined;\n\n\tconst imageRef = useRef();\n\tconst { allowResize = true } = context;\n\tconst { getBlock, getSettings } = useSelect( blockEditorStore );\n\n\tconst image = useSelect(\n\t\t( select ) =>\n\t\t\tid && isSingleSelected\n\t\t\t\t? select( coreStore ).getMedia( id, { context: 'view' } )\n\t\t\t\t: null,\n\t\t[ id, isSingleSelected ]\n\t);\n\n\tconst { canInsertCover, imageEditing, imageSizes, maxWidth } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId, canInsertBlockType } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\tconst settings = getSettings();\n\n\t\t\treturn {\n\t\t\t\timageEditing: settings.imageEditing,\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tmaxWidth: settings.maxWidth,\n\t\t\t\tcanInsertCover: canInsertBlockType(\n\t\t\t\t\t'core/cover',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { replaceBlocks, toggleSelection } = useDispatch( blockEditorStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = [ 'wide', 'full' ].includes( align );\n\tconst [\n\t\t{ loadedNaturalWidth, loadedNaturalHeight },\n\t\tsetLoadedNaturalSize,\n\t] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst [ externalBlob, setExternalBlob ] = useState();\n\tconst clientWidth = useClientWidth( containerRef, [ align ] );\n\tconst hasNonContentControls = blockEditingMode === 'default';\n\tconst isContentOnlyMode = blockEditingMode === 'contentOnly';\n\tconst isResizable =\n\t\tallowResize &&\n\t\thasNonContentControls &&\n\t\t! isWideAligned &&\n\t\tisLargeViewport;\n\tconst imageSizeOptions = imageSizes\n\t\t.filter(\n\t\t\t( { slug } ) => image?.media_details?.sizes?.[ slug ]?.source_url\n\t\t)\n\t\t.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\n\t// If an image is externally hosted, try to fetch the image data. This may\n\t// fail if the image host doesn't allow CORS with the domain. If it works,\n\t// we can enable a button in the toolbar to upload the image.\n\tuseEffect( () => {\n\t\tif (\n\t\t\t! isExternalImage( id, url ) ||\n\t\t\t! isSingleSelected ||\n\t\t\t! getSettings().mediaUpload\n\t\t) {\n\t\t\tsetExternalBlob();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( externalBlob ) return;\n\n\t\twindow\n\t\t\t// Avoid cache, which seems to help avoid CORS problems.\n\t\t\t.fetch( url.includes( '?' ) ? url : url + '?' )\n\t\t\t.then( ( response ) => response.blob() )\n\t\t\t.then( ( blob ) => setExternalBlob( blob ) )\n\t\t\t// Do nothing, cannot upload.\n\t\t\t.catch( () => {} );\n\t}, [ id, url, isSingleSelected, externalBlob ] );\n\n\t// Get naturalWidth and naturalHeight from image ref, and fall back to loaded natural\n\t// width and height. This resolves an issue in Safari where the loaded natural\n\t// width and height is otherwise lost when switching between alignments.\n\t// See: https://github.com/WordPress/gutenberg/pull/37210.\n\tconst { naturalWidth, naturalHeight } = useMemo( () => {\n\t\treturn {\n\t\t\tnaturalWidth:\n\t\t\t\timageRef.current?.naturalWidth ||\n\t\t\t\tloadedNaturalWidth ||\n\t\t\t\tundefined,\n\t\t\tnaturalHeight:\n\t\t\t\timageRef.current?.naturalHeight ||\n\t\t\t\tloadedNaturalHeight ||\n\t\t\t\tundefined,\n\t\t};\n\t}, [\n\t\tloadedNaturalWidth,\n\t\tloadedNaturalHeight,\n\t\timageRef.current?.complete,\n\t] );\n\n\tfunction onResizeStart() {\n\t\ttoggleSelection( false );\n\t}\n\n\tfunction onResizeStop() {\n\t\ttoggleSelection( true );\n\t}\n\n\tfunction onImageError() {\n\t\t// Check if there's an embed block that handles this URL, e.g., instagram URL.\n\t\t// See: https://github.com/WordPress/gutenberg/pull/11472\n\t\tconst embedBlock = createUpgradedEmbedBlock( { attributes: { url } } );\n\n\t\tif ( undefined !== embedBlock ) {\n\t\t\tonReplace( embedBlock );\n\t\t}\n\t}\n\n\tfunction onSetHref( props ) {\n\t\tsetAttributes( props );\n\t}\n\n\tfunction onSetLightbox( enable ) {\n\t\tif ( enable && ! lightboxSetting?.enabled ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: true },\n\t\t\t} );\n\t\t} else if ( ! enable && lightboxSetting?.enabled ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: false },\n\t\t\t} );\n\t\t} else {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: undefined,\n\t\t\t} );\n\t\t}\n\t}\n\n\tfunction onSetTitle( value ) {\n\t\t// This is the HTML title attribute, separate from the media object\n\t\t// title.\n\t\tsetAttributes( { title: value } );\n\t}\n\n\tfunction updateAlt( newAlt ) {\n\t\tsetAttributes( { alt: newAlt } );\n\t}\n\n\tfunction updateImage( newSizeSlug ) {\n\t\tconst newUrl = image?.media_details?.sizes?.[ newSizeSlug ]?.source_url;\n\t\tif ( ! newUrl ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\turl: newUrl,\n\t\t\tsizeSlug: newSizeSlug,\n\t\t} );\n\t}\n\n\tfunction uploadExternal() {\n\t\tconst { mediaUpload } = getSettings();\n\t\tif ( ! mediaUpload ) {\n\t\t\treturn;\n\t\t}\n\t\tmediaUpload( {\n\t\t\tfilesList: [ externalBlob ],\n\t\t\tonFileChange( [ img ] ) {\n\t\t\t\tonSelectImage( img );\n\n\t\t\t\tif ( isBlobURL( img.url ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tsetExternalBlob();\n\t\t\t\tcreateSuccessNotice( __( 'Image uploaded.' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\t},\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tonError( message ) {\n\t\t\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\t\t},\n\t\t} );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSingleSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSingleSelected ] );\n\n\tconst canEditImage = id && naturalWidth && naturalHeight && imageEditing;\n\tconst allowCrop = isSingleSelected && canEditImage && ! isEditingImage;\n\n\tfunction switchToCover() {\n\t\treplaceBlocks(\n\t\t\tclientId,\n\t\t\tswitchToBlockType( getBlock( clientId ), 'core/cover' )\n\t\t);\n\t}\n\n\t// TODO: Can allow more units after figuring out how they should interact\n\t// with the ResizableBox and ImageEditor components. Calculations later on\n\t// for those components are currently assuming px units.\n\tconst dimensionsUnitsOptions = useCustomUnits( {\n\t\tavailableUnits: [ 'px' ],\n\t} );\n\n\tconst [ lightboxSetting ] = useSettings( 'lightbox' );\n\n\tconst showLightboxSetting =\n\t\t!! lightbox || lightboxSetting?.allowEditing === true;\n\n\tconst lightboxChecked =\n\t\t!! lightbox?.enabled || ( ! lightbox && !! lightboxSetting?.enabled );\n\n\tconst dimensionsControl = (\n\t\t<DimensionsTool\n\t\t\tvalue={ { width, height, scale, aspectRatio } }\n\t\t\tonChange={ ( {\n\t\t\t\twidth: newWidth,\n\t\t\t\theight: newHeight,\n\t\t\t\tscale: newScale,\n\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t} ) => {\n\t\t\t\t// Rebuilding the object forces setting `undefined`\n\t\t\t\t// for values that are removed since setAttributes\n\t\t\t\t// doesn't do anything with keys that aren't set.\n\t\t\t\tsetAttributes( {\n\t\t\t\t\t// CSS includes `height: auto`, but we need\n\t\t\t\t\t// `width: auto` to fix the aspect ratio when\n\t\t\t\t\t// only height is set due to the width and\n\t\t\t\t\t// height attributes set via the server.\n\t\t\t\t\twidth: ! newWidth && newHeight ? 'auto' : newWidth,\n\t\t\t\t\theight: newHeight,\n\t\t\t\t\tscale: newScale,\n\t\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tdefaultScale=\"cover\"\n\t\t\tdefaultAspectRatio=\"auto\"\n\t\t\tscaleOptions={ scaleOptions }\n\t\t\tunitsOptions={ dimensionsUnitsOptions }\n\t\t/>\n\t);\n\n\tconst resetAll = () => {\n\t\tsetAttributes( {\n\t\t\talt: undefined,\n\t\t\twidth: undefined,\n\t\t\theight: undefined,\n\t\t\tscale: undefined,\n\t\t\taspectRatio: undefined,\n\t\t\tlightbox: undefined,\n\t\t} );\n\t};\n\n\tconst sizeControls = (\n\t\t<InspectorControls>\n\t\t\t<ToolsPanel\n\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\tresetAll={ resetAll }\n\t\t\t\tdropdownMenuProps={ TOOLSPANEL_DROPDOWNMENU_PROPS }\n\t\t\t>\n\t\t\t\t{ isResizable && dimensionsControl }\n\t\t\t</ToolsPanel>\n\t\t</InspectorControls>\n\t);\n\n\tconst {\n\t\tlockUrlControls = false,\n\t\tlockHrefControls = false,\n\t\tlockAltControls = false,\n\t\tlockTitleControls = false,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isSingleSelected ) {\n\t\t\t\treturn {};\n\t\t\t}\n\n\t\t\tconst { getBlockBindingsSource, getBlockParentsByBlockName } =\n\t\t\t\tunlock( select( blockEditorStore ) );\n\t\t\tconst {\n\t\t\t\turl: urlBinding,\n\t\t\t\talt: altBinding,\n\t\t\t\ttitle: titleBinding,\n\t\t\t} = metadata?.bindings || {};\n\t\t\tconst hasParentPattern =\n\t\t\t\tgetBlockParentsByBlockName( clientId, 'core/block' ).length > 0;\n\t\t\tconst urlBindingSource = getBlockBindingsSource(\n\t\t\t\turlBinding?.source\n\t\t\t);\n\t\t\tconst altBindingSource = getBlockBindingsSource(\n\t\t\t\taltBinding?.source\n\t\t\t);\n\t\t\tconst titleBindingSource = getBlockBindingsSource(\n\t\t\t\ttitleBinding?.source\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tlockUrlControls:\n\t\t\t\t\t!! urlBinding &&\n\t\t\t\t\t( ! urlBindingSource ||\n\t\t\t\t\t\turlBindingSource?.lockAttributesEditing ),\n\t\t\t\tlockHrefControls:\n\t\t\t\t\t// Disable editing the link of the URL if the image is inside a pattern instance.\n\t\t\t\t\t// This is a temporary solution until we support overriding the link on the frontend.\n\t\t\t\t\thasParentPattern,\n\t\t\t\tlockAltControls:\n\t\t\t\t\t!! altBinding &&\n\t\t\t\t\t( ! altBindingSource ||\n\t\t\t\t\t\taltBindingSource?.lockAttributesEditing ),\n\t\t\t\tlockTitleControls:\n\t\t\t\t\t!! titleBinding &&\n\t\t\t\t\t( ! titleBindingSource ||\n\t\t\t\t\t\ttitleBindingSource?.lockAttributesEditing ),\n\t\t\t};\n\t\t},\n\t\t[ clientId, isSingleSelected, metadata?.bindings ]\n\t);\n\n\tconst controls = (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ isSingleSelected &&\n\t\t\t\t\t! isEditingImage &&\n\t\t\t\t\t! lockHrefControls &&\n\t\t\t\t\t! lockUrlControls && (\n\t\t\t\t\t\t<ImageURLInputUI\n\t\t\t\t\t\t\turl={ href || '' }\n\t\t\t\t\t\t\tonChangeUrl={ onSetHref }\n\t\t\t\t\t\t\tlinkDestination={ linkDestination }\n\t\t\t\t\t\t\tmediaUrl={ ( image && image.source_url ) || url }\n\t\t\t\t\t\t\tmediaLink={ image && image.link }\n\t\t\t\t\t\t\tlinkTarget={ linkTarget }\n\t\t\t\t\t\t\tlinkClass={ linkClass }\n\t\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t\t\tshowLightboxSetting={ showLightboxSetting }\n\t\t\t\t\t\t\tlightboxEnabled={ lightboxChecked }\n\t\t\t\t\t\t\tonSetLightbox={ onSetLightbox }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t{ allowCrop && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isSingleSelected && canInsertCover && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ticon={ overlayText }\n\t\t\t\t\t\tlabel={ __( 'Add text over image' ) }\n\t\t\t\t\t\tonClick={ switchToCover }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isSingleSelected && ! isEditingImage && ! lockUrlControls && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ isSingleSelected && externalBlob && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ uploadExternal }\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tlabel={ __( 'Upload to Media Library' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ isContentOnlyMode && (\n\t\t\t\t// Add some extra controls for content attributes when content only mode is active.\n\t\t\t\t// With content only mode active, the inspector is hidden, so users need another way\n\t\t\t\t// to edit these attributes.\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<Dropdown\n\t\t\t\t\t\tpopoverProps={ { position: 'bottom right' } }\n\t\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\t\tif ( ! isOpen && event.keyCode === DOWN ) {\n\t\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ _x(\n\t\t\t\t\t\t\t\t\t'Alt',\n\t\t\t\t\t\t\t\t\t'Alternative text for an image. Block toolbar label, a low character count is preferred.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\tclassName=\"wp-block-image__toolbar_content_textarea\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\tvalue={ alt || '' }\n\t\t\t\t\t\t\t\tonChange={ updateAlt }\n\t\t\t\t\t\t\t\tdisabled={ lockAltControls }\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\tlockAltControls ? (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Connected to a custom field'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image.'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<Dropdown\n\t\t\t\t\t\tpopoverProps={ { position: 'bottom right' } }\n\t\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\t\tif ( ! isOpen && event.keyCode === DOWN ) {\n\t\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Title' ) }\n\t\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tclassName=\"wp-block-image__toolbar_content_textarea\"\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\t\t\t\tonChange={ onSetTitle }\n\t\t\t\t\t\t\t\tdisabled={ lockTitleControls }\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\tlockTitleControls ? (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Connected to a custom field'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Describe the role of this image on the page.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/TR/html52/dom.html#the-title-attribute\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'(Note: many devices and browsers do not display this text.)'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ resetAll }\n\t\t\t\t\tdropdownMenuProps={ TOOLSPANEL_DROPDOWNMENU_PROPS }\n\t\t\t\t>\n\t\t\t\t\t{ isSingleSelected && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t\t\t\thasValue={ () => !! alt }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { alt: undefined } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\tvalue={ alt || '' }\n\t\t\t\t\t\t\t\tonChange={ updateAlt }\n\t\t\t\t\t\t\t\treadOnly={ lockAltControls }\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\tlockAltControls ? (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Connected to a custom field'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image.'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isResizable && dimensionsControl }\n\t\t\t\t\t{ !! imageSizeOptions.length && (\n\t\t\t\t\t\t<ResolutionTool\n\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\tonChange={ updateImage }\n\t\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\tonChange={ onSetTitle }\n\t\t\t\t\treadOnly={ lockTitleControls }\n\t\t\t\t\thelp={\n\t\t\t\t\t\tlockTitleControls ? (\n\t\t\t\t\t\t\t<>{ __( 'Connected to a custom field' ) }</>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Describe the role of this image on the page.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/TR/html52/dom.html#the-title-attribute\">\n\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t'(Note: many devices and browsers do not display this text.)'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst filename = getFilename( url );\n\tlet defaultedAlt;\n\n\tif ( alt ) {\n\t\tdefaultedAlt = alt;\n\t} else if ( filename ) {\n\t\tdefaultedAlt = sprintf(\n\t\t\t/* translators: %s: file name */\n\t\t\t__( 'This image has an empty alt attribute; its file name is %s' ),\n\t\t\tfilename\n\t\t);\n\t} else {\n\t\tdefaultedAlt = __( 'This image has an empty alt attribute' );\n\t}\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\tconst isRounded = attributes.className?.includes( 'is-style-rounded' );\n\n\tlet img = (\n\t\t// Disable reason: Image itself is not meant to be interactive, but\n\t\t// should direct focus to block.\n\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t<>\n\t\t\t<img\n\t\t\t\tsrc={ temporaryURL || url }\n\t\t\t\talt={ defaultedAlt }\n\t\t\t\tonError={ () => onImageError() }\n\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\tsetLoadedNaturalSize( {\n\t\t\t\t\t\tloadedNaturalWidth: event.target?.naturalWidth,\n\t\t\t\t\t\tloadedNaturalHeight: event.target?.naturalHeight,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tref={ imageRef }\n\t\t\t\tclassName={ borderProps.className }\n\t\t\t\tstyle={ {\n\t\t\t\t\twidth:\n\t\t\t\t\t\t( width && height ) || aspectRatio ? '100%' : undefined,\n\t\t\t\t\theight:\n\t\t\t\t\t\t( width && height ) || aspectRatio ? '100%' : undefined,\n\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t...shadowProps.style,\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t{ temporaryURL && <Spinner /> }\n\t\t</>\n\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t);\n\n\t// clientWidth needs to be a number for the image Cropper to work, but sometimes it's 0\n\t// So we try using the imageRef width first and fallback to clientWidth.\n\tconst fallbackClientWidth = imageRef.current?.width || clientWidth;\n\n\tif ( canEditImage && isEditingImage ) {\n\t\timg = (\n\t\t\t<ImageWrapper href={ href }>\n\t\t\t\t<ImageEditor\n\t\t\t\t\tid={ id }\n\t\t\t\t\turl={ url }\n\t\t\t\t\twidth={ numericWidth }\n\t\t\t\t\theight={ numericHeight }\n\t\t\t\t\tclientWidth={ fallbackClientWidth }\n\t\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\t\tonSaveImage={ ( imageAttributes ) =>\n\t\t\t\t\t\tsetAttributes( imageAttributes )\n\t\t\t\t\t}\n\t\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t\t} }\n\t\t\t\t\tborderProps={ isRounded ? undefined : borderProps }\n\t\t\t\t/>\n\t\t\t</ImageWrapper>\n\t\t);\n\t} else if ( ! isResizable ) {\n\t\timg = (\n\t\t\t<div style={ { width, height, aspectRatio } }>\n\t\t\t\t<ImageWrapper href={ href }>{ img }</ImageWrapper>\n\t\t\t</div>\n\t\t);\n\t} else {\n\t\tconst numericRatio = aspectRatio && evalAspectRatio( aspectRatio );\n\t\tconst customRatio = numericWidth / numericHeight;\n\t\tconst naturalRatio = naturalWidth / naturalHeight;\n\t\tconst ratio = numericRatio || customRatio || naturalRatio || 1;\n\t\tconst currentWidth =\n\t\t\t! numericWidth && numericHeight\n\t\t\t\t? numericHeight * ratio\n\t\t\t\t: numericWidth;\n\t\tconst currentHeight =\n\t\t\t! numericHeight && numericWidth\n\t\t\t\t? numericWidth / ratio\n\t\t\t\t: numericHeight;\n\n\t\tconst minWidth =\n\t\t\tnaturalWidth < naturalHeight ? MIN_SIZE : MIN_SIZE * ratio;\n\t\tconst minHeight =\n\t\t\tnaturalHeight < naturalWidth ? MIN_SIZE : MIN_SIZE / ratio;\n\n\t\t// With the current implementation of ResizableBox, an image needs an\n\t\t// explicit pixel value for the max-width. In absence of being able to\n\t\t// set the content-width, this max-width is currently dictated by the\n\t\t// vanilla editor style. The following variable adds a buffer to this\n\t\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t\t// in most cases, allow you to scale the image beyond the width of the\n\t\t// main column, though not infinitely.\n\t\t// @todo It would be good to revisit this once a content-width variable\n\t\t// becomes available.\n\t\tconst maxWidthBuffer = maxWidth * 2.5;\n\n\t\tlet showRightHandle = false;\n\t\tlet showLeftHandle = false;\n\n\t\t/* eslint-disable no-lonely-if */\n\t\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\t\tif ( align === 'center' ) {\n\t\t\t// When the image is centered, show both handles.\n\t\t\tshowRightHandle = true;\n\t\t\tshowLeftHandle = true;\n\t\t} else if ( isRTL() ) {\n\t\t\t// In RTL mode the image is on the right by default.\n\t\t\t// Show the right handle and hide the left handle only when it is\n\t\t\t// aligned left. Otherwise always show the left handle.\n\t\t\tif ( align === 'left' ) {\n\t\t\t\tshowRightHandle = true;\n\t\t\t} else {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t}\n\t\t} else {\n\t\t\t// Show the left handle and hide the right handle only when the\n\t\t\t// image is aligned right. Otherwise always show the right handle.\n\t\t\tif ( align === 'right' ) {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t} else {\n\t\t\t\tshowRightHandle = true;\n\t\t\t}\n\t\t}\n\t\t/* eslint-enable no-lonely-if */\n\t\timg = (\n\t\t\t<ResizableBox\n\t\t\t\tstyle={ {\n\t\t\t\t\tdisplay: 'block',\n\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\taspectRatio:\n\t\t\t\t\t\t! width && ! height && aspectRatio\n\t\t\t\t\t\t\t? aspectRatio\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t} }\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: currentWidth ?? 'auto',\n\t\t\t\t\theight: currentHeight ?? 'auto',\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSingleSelected }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxWidthBuffer }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxWidthBuffer / ratio }\n\t\t\t\tlockAspectRatio={ ratio }\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: showRightHandle,\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: showLeftHandle,\n\t\t\t\t} }\n\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\tonResizeStop={ ( event, direction, elt ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\t// Since the aspect ratio is locked when resizing, we can\n\t\t\t\t\t// use the width of the resized element to calculate the\n\t\t\t\t\t// height in CSS to prevent stretching when the max-width\n\t\t\t\t\t// is reached.\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: `${ elt.offsetWidth }px`,\n\t\t\t\t\t\theight: 'auto',\n\t\t\t\t\t\taspectRatio:\n\t\t\t\t\t\t\tratio === naturalRatio\n\t\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t\t: String( ratio ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tresizeRatio={ align === 'center' ? 2 : 1 }\n\t\t\t>\n\t\t\t\t<ImageWrapper href={ href }>{ img }</ImageWrapper>\n\t\t\t</ResizableBox>\n\t\t);\n\t}\n\n\tif ( ! url && ! temporaryURL ) {\n\t\t// Add all controls if the image attributes are connected.\n\t\treturn metadata?.bindings ? controls : sizeControls;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ /* Hide controls during upload to avoid component remount,\n\t\t\t\twhich causes duplicated image upload. */ }\n\t\t\t{ ! temporaryURL && controls }\n\t\t\t{ img }\n\t\t\t<Caption\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\tlabel={ __( 'Image caption text' ) }\n\t\t\t\tshowToolbarButton={ isSingleSelected && hasNonContentControls }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["isBlobURL","ExternalLink","ResizableBox","Spinner","TextareaControl","TextControl","ToolbarButton","ToolbarGroup","Dropdown","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalUseCustomUnits","useCustomUnits","useViewportMatch","useSelect","useDispatch","BlockControls","InspectorControls","__experimentalImageURLInputUI","ImageURLInputUI","MediaReplaceFlow","store","blockEditorStore","useSettings","__experimentalImageEditor","ImageEditor","__experimentalUseBorderProps","useBorderProps","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","privateApis","blockEditorPrivateApis","useEffect","useMemo","useState","useRef","__","_x","sprintf","isRTL","DOWN","getFilename","switchToBlockType","blocksStore","crop","overlayText","upload","noticesStore","coreStore","unlock","createUpgradedEmbedBlock","useClientWidth","isExternalImage","Caption","TOOLSPANEL_DROPDOWNMENU_PROPS","MIN_SIZE","ALLOWED_MEDIA_TYPES","evalAspectRatio","DimensionsTool","ResolutionTool","scaleOptions","value","label","help","ImageWrapper","href","children","createElement","onClick","event","preventDefault","style","pointerEvents","cursor","display","Image","temporaryURL","attributes","setAttributes","isSingleSelected","insertBlocksAfter","onReplace","onSelectImage","onSelectURL","onUploadError","containerRef","context","clientId","blockEditingMode","url","alt","align","id","rel","linkClass","linkDestination","title","width","height","aspectRatio","scale","linkTarget","sizeSlug","lightbox","metadata","numericWidth","parseInt","undefined","numericHeight","imageRef","allowResize","getBlock","getSettings","image","select","getMedia","canInsertCover","imageEditing","imageSizes","maxWidth","getBlockRootClientId","canInsertBlockType","rootClientId","settings","replaceBlocks","toggleSelection","createErrorNotice","createSuccessNotice","isLargeViewport","isWideAligned","includes","loadedNaturalWidth","loadedNaturalHeight","setLoadedNaturalSize","isEditingImage","setIsEditingImage","externalBlob","setExternalBlob","clientWidth","hasNonContentControls","isContentOnlyMode","isResizable","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","mediaUpload","window","fetch","then","response","blob","catch","naturalWidth","naturalHeight","current","complete","onResizeStart","onResizeStop","onImageError","embedBlock","onSetHref","props","onSetLightbox","enable","lightboxSetting","enabled","onSetTitle","updateAlt","newAlt","updateImage","newSizeSlug","newUrl","uploadExternal","filesList","onFileChange","img","type","allowedTypes","onError","message","canEditImage","allowCrop","switchToCover","dimensionsUnitsOptions","availableUnits","showLightboxSetting","allowEditing","lightboxChecked","dimensionsControl","onChange","newWidth","newHeight","newScale","newAspectRatio","defaultScale","defaultAspectRatio","unitsOptions","resetAll","sizeControls","dropdownMenuProps","lockUrlControls","lockHrefControls","lockAltControls","lockAltControlsMessage","lockTitleControls","lockTitleControlsMessage","lockCaption","getBlockBindingsSource","getBlockParentsByBlockName","urlBinding","altBinding","titleBinding","bindings","hasParentPattern","length","urlBindingSource","source","altBindingSource","titleBindingSource","lockAttributesEditing","controls","Fragment","group","onChangeUrl","mediaUrl","mediaLink","link","lightboxEnabled","icon","mediaId","mediaURL","accept","onSelect","popoverProps","position","renderToggle","isOpen","onToggle","onKeyDown","keyCode","renderContent","className","disabled","__nextHasNoMarginBottom","isShownByDefault","hasValue","onDeselect","readOnly","options","filename","defaultedAlt","borderProps","shadowProps","isRounded","src","onLoad","target","ref","objectFit","fallbackClientWidth","onSaveImage","imageAttributes","onFinishEditing","numericRatio","customRatio","naturalRatio","ratio","currentWidth","currentHeight","minWidth","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","size","showHandle","maxHeight","lockAspectRatio","top","right","bottom","left","direction","elt","offsetWidth","String","resizeRatio","isSelected","showToolbarButton","disableEditing"],"sources":["@wordpress/block-library/src/image/image.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tExternalLink,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tTextControl,\n\tToolbarButton,\n\tToolbarGroup,\n\tDropdown,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\t__experimentalImageURLInputUI as ImageURLInputUI,\n\tMediaReplaceFlow,\n\tstore as blockEditorStore,\n\tuseSettings,\n\t__experimentalImageEditor as ImageEditor,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { useEffect, useMemo, useState, useRef } from '@wordpress/element';\nimport { __, _x, sprintf, isRTL } from '@wordpress/i18n';\nimport { DOWN } from '@wordpress/keycodes';\nimport { getFilename } from '@wordpress/url';\nimport { switchToBlockType, store as blocksStore } from '@wordpress/blocks';\nimport { crop, overlayText, upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport useClientWidth from './use-client-width';\nimport { isExternalImage } from './edit';\nimport { Caption } from '../utils/caption';\n\n/**\n * Module constants\n */\nimport { TOOLSPANEL_DROPDOWNMENU_PROPS } from '../utils/constants';\nimport { MIN_SIZE, ALLOWED_MEDIA_TYPES } from './constants';\nimport { evalAspectRatio } from './utils';\n\nconst { DimensionsTool, ResolutionTool } = unlock( blockEditorPrivateApis );\n\nconst scaleOptions = [\n\t{\n\t\tvalue: 'cover',\n\t\tlabel: _x( 'Cover', 'Scale option for dimensions control' ),\n\t\thelp: __( 'Image covers the space evenly.' ),\n\t},\n\t{\n\t\tvalue: 'contain',\n\t\tlabel: _x( 'Contain', 'Scale option for dimensions control' ),\n\t\thelp: __( 'Image is contained without distortion.' ),\n\t},\n];\n\n// If the image has a href, wrap in an <a /> tag to trigger any inherited link element styles.\nconst ImageWrapper = ( { href, children } ) => {\n\tif ( ! href ) {\n\t\treturn children;\n\t}\n\treturn (\n\t\t<a\n\t\t\thref={ href }\n\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\taria-disabled\n\t\t\tstyle={ {\n\t\t\t\t// When the Image block is linked,\n\t\t\t\t// it's wrapped with a disabled <a /> tag.\n\t\t\t\t// Restore cursor style so it doesn't appear 'clickable'\n\t\t\t\t// and remove pointer events. Safari needs the display property.\n\t\t\t\tpointerEvents: 'none',\n\t\t\t\tcursor: 'default',\n\t\t\t\tdisplay: 'inline',\n\t\t\t} }\n\t\t>\n\t\t\t{ children }\n\t\t</a>\n\t);\n};\n\nexport default function Image( {\n\ttemporaryURL,\n\tattributes,\n\tsetAttributes,\n\tisSingleSelected,\n\tinsertBlocksAfter,\n\tonReplace,\n\tonSelectImage,\n\tonSelectURL,\n\tonUploadError,\n\tcontainerRef,\n\tcontext,\n\tclientId,\n\tblockEditingMode,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\talign,\n\t\tid,\n\t\thref,\n\t\trel,\n\t\tlinkClass,\n\t\tlinkDestination,\n\t\ttitle,\n\t\twidth,\n\t\theight,\n\t\taspectRatio,\n\t\tscale,\n\t\tlinkTarget,\n\t\tsizeSlug,\n\t\tlightbox,\n\t\tmetadata,\n\t} = attributes;\n\n\t// The only supported unit is px, so we can parseInt to strip the px here.\n\tconst numericWidth = width ? parseInt( width, 10 ) : undefined;\n\tconst numericHeight = height ? parseInt( height, 10 ) : undefined;\n\n\tconst imageRef = useRef();\n\tconst { allowResize = true } = context;\n\tconst { getBlock, getSettings } = useSelect( blockEditorStore );\n\n\tconst image = useSelect(\n\t\t( select ) =>\n\t\t\tid && isSingleSelected\n\t\t\t\t? select( coreStore ).getMedia( id, { context: 'view' } )\n\t\t\t\t: null,\n\t\t[ id, isSingleSelected ]\n\t);\n\n\tconst { canInsertCover, imageEditing, imageSizes, maxWidth } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId, canInsertBlockType } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\tconst settings = getSettings();\n\n\t\t\treturn {\n\t\t\t\timageEditing: settings.imageEditing,\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tmaxWidth: settings.maxWidth,\n\t\t\t\tcanInsertCover: canInsertBlockType(\n\t\t\t\t\t'core/cover',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { replaceBlocks, toggleSelection } = useDispatch( blockEditorStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = [ 'wide', 'full' ].includes( align );\n\tconst [\n\t\t{ loadedNaturalWidth, loadedNaturalHeight },\n\t\tsetLoadedNaturalSize,\n\t] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst [ externalBlob, setExternalBlob ] = useState();\n\tconst clientWidth = useClientWidth( containerRef, [ align ] );\n\tconst hasNonContentControls = blockEditingMode === 'default';\n\tconst isContentOnlyMode = blockEditingMode === 'contentOnly';\n\tconst isResizable =\n\t\tallowResize &&\n\t\thasNonContentControls &&\n\t\t! isWideAligned &&\n\t\tisLargeViewport;\n\tconst imageSizeOptions = imageSizes\n\t\t.filter(\n\t\t\t( { slug } ) => image?.media_details?.sizes?.[ slug ]?.source_url\n\t\t)\n\t\t.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\n\t// If an image is externally hosted, try to fetch the image data. This may\n\t// fail if the image host doesn't allow CORS with the domain. If it works,\n\t// we can enable a button in the toolbar to upload the image.\n\tuseEffect( () => {\n\t\tif (\n\t\t\t! isExternalImage( id, url ) ||\n\t\t\t! isSingleSelected ||\n\t\t\t! getSettings().mediaUpload\n\t\t) {\n\t\t\tsetExternalBlob();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( externalBlob ) return;\n\n\t\twindow\n\t\t\t// Avoid cache, which seems to help avoid CORS problems.\n\t\t\t.fetch( url.includes( '?' ) ? url : url + '?' )\n\t\t\t.then( ( response ) => response.blob() )\n\t\t\t.then( ( blob ) => setExternalBlob( blob ) )\n\t\t\t// Do nothing, cannot upload.\n\t\t\t.catch( () => {} );\n\t}, [ id, url, isSingleSelected, externalBlob ] );\n\n\t// Get naturalWidth and naturalHeight from image ref, and fall back to loaded natural\n\t// width and height. This resolves an issue in Safari where the loaded natural\n\t// width and height is otherwise lost when switching between alignments.\n\t// See: https://github.com/WordPress/gutenberg/pull/37210.\n\tconst { naturalWidth, naturalHeight } = useMemo( () => {\n\t\treturn {\n\t\t\tnaturalWidth:\n\t\t\t\timageRef.current?.naturalWidth ||\n\t\t\t\tloadedNaturalWidth ||\n\t\t\t\tundefined,\n\t\t\tnaturalHeight:\n\t\t\t\timageRef.current?.naturalHeight ||\n\t\t\t\tloadedNaturalHeight ||\n\t\t\t\tundefined,\n\t\t};\n\t}, [\n\t\tloadedNaturalWidth,\n\t\tloadedNaturalHeight,\n\t\timageRef.current?.complete,\n\t] );\n\n\tfunction onResizeStart() {\n\t\ttoggleSelection( false );\n\t}\n\n\tfunction onResizeStop() {\n\t\ttoggleSelection( true );\n\t}\n\n\tfunction onImageError() {\n\t\t// Check if there's an embed block that handles this URL, e.g., instagram URL.\n\t\t// See: https://github.com/WordPress/gutenberg/pull/11472\n\t\tconst embedBlock = createUpgradedEmbedBlock( { attributes: { url } } );\n\n\t\tif ( undefined !== embedBlock ) {\n\t\t\tonReplace( embedBlock );\n\t\t}\n\t}\n\n\tfunction onSetHref( props ) {\n\t\tsetAttributes( props );\n\t}\n\n\tfunction onSetLightbox( enable ) {\n\t\tif ( enable && ! lightboxSetting?.enabled ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: true },\n\t\t\t} );\n\t\t} else if ( ! enable && lightboxSetting?.enabled ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: false },\n\t\t\t} );\n\t\t} else {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: undefined,\n\t\t\t} );\n\t\t}\n\t}\n\n\tfunction onSetTitle( value ) {\n\t\t// This is the HTML title attribute, separate from the media object\n\t\t// title.\n\t\tsetAttributes( { title: value } );\n\t}\n\n\tfunction updateAlt( newAlt ) {\n\t\tsetAttributes( { alt: newAlt } );\n\t}\n\n\tfunction updateImage( newSizeSlug ) {\n\t\tconst newUrl = image?.media_details?.sizes?.[ newSizeSlug ]?.source_url;\n\t\tif ( ! newUrl ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\turl: newUrl,\n\t\t\tsizeSlug: newSizeSlug,\n\t\t} );\n\t}\n\n\tfunction uploadExternal() {\n\t\tconst { mediaUpload } = getSettings();\n\t\tif ( ! mediaUpload ) {\n\t\t\treturn;\n\t\t}\n\t\tmediaUpload( {\n\t\t\tfilesList: [ externalBlob ],\n\t\t\tonFileChange( [ img ] ) {\n\t\t\t\tonSelectImage( img );\n\n\t\t\t\tif ( isBlobURL( img.url ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tsetExternalBlob();\n\t\t\t\tcreateSuccessNotice( __( 'Image uploaded.' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\t},\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tonError( message ) {\n\t\t\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\t\t},\n\t\t} );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSingleSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSingleSelected ] );\n\n\tconst canEditImage = id && naturalWidth && naturalHeight && imageEditing;\n\tconst allowCrop = isSingleSelected && canEditImage && ! isEditingImage;\n\n\tfunction switchToCover() {\n\t\treplaceBlocks(\n\t\t\tclientId,\n\t\t\tswitchToBlockType( getBlock( clientId ), 'core/cover' )\n\t\t);\n\t}\n\n\t// TODO: Can allow more units after figuring out how they should interact\n\t// with the ResizableBox and ImageEditor components. Calculations later on\n\t// for those components are currently assuming px units.\n\tconst dimensionsUnitsOptions = useCustomUnits( {\n\t\tavailableUnits: [ 'px' ],\n\t} );\n\n\tconst [ lightboxSetting ] = useSettings( 'lightbox' );\n\n\tconst showLightboxSetting =\n\t\t!! lightbox || lightboxSetting?.allowEditing === true;\n\n\tconst lightboxChecked =\n\t\t!! lightbox?.enabled || ( ! lightbox && !! lightboxSetting?.enabled );\n\n\tconst dimensionsControl = (\n\t\t<DimensionsTool\n\t\t\tvalue={ { width, height, scale, aspectRatio } }\n\t\t\tonChange={ ( {\n\t\t\t\twidth: newWidth,\n\t\t\t\theight: newHeight,\n\t\t\t\tscale: newScale,\n\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t} ) => {\n\t\t\t\t// Rebuilding the object forces setting `undefined`\n\t\t\t\t// for values that are removed since setAttributes\n\t\t\t\t// doesn't do anything with keys that aren't set.\n\t\t\t\tsetAttributes( {\n\t\t\t\t\t// CSS includes `height: auto`, but we need\n\t\t\t\t\t// `width: auto` to fix the aspect ratio when\n\t\t\t\t\t// only height is set due to the width and\n\t\t\t\t\t// height attributes set via the server.\n\t\t\t\t\twidth: ! newWidth && newHeight ? 'auto' : newWidth,\n\t\t\t\t\theight: newHeight,\n\t\t\t\t\tscale: newScale,\n\t\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tdefaultScale=\"cover\"\n\t\t\tdefaultAspectRatio=\"auto\"\n\t\t\tscaleOptions={ scaleOptions }\n\t\t\tunitsOptions={ dimensionsUnitsOptions }\n\t\t/>\n\t);\n\n\tconst resetAll = () => {\n\t\tsetAttributes( {\n\t\t\talt: undefined,\n\t\t\twidth: undefined,\n\t\t\theight: undefined,\n\t\t\tscale: undefined,\n\t\t\taspectRatio: undefined,\n\t\t\tlightbox: undefined,\n\t\t} );\n\t};\n\n\tconst sizeControls = (\n\t\t<InspectorControls>\n\t\t\t<ToolsPanel\n\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\tresetAll={ resetAll }\n\t\t\t\tdropdownMenuProps={ TOOLSPANEL_DROPDOWNMENU_PROPS }\n\t\t\t>\n\t\t\t\t{ isResizable && dimensionsControl }\n\t\t\t</ToolsPanel>\n\t\t</InspectorControls>\n\t);\n\n\tconst {\n\t\tlockUrlControls = false,\n\t\tlockHrefControls = false,\n\t\tlockAltControls = false,\n\t\tlockAltControlsMessage,\n\t\tlockTitleControls = false,\n\t\tlockTitleControlsMessage,\n\t\tlockCaption = false,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isSingleSelected ) {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t\tconst { getBlockBindingsSource } = unlock( select( blocksStore ) );\n\t\t\tconst { getBlockParentsByBlockName } = unlock(\n\t\t\t\tselect( blockEditorStore )\n\t\t\t);\n\t\t\tconst {\n\t\t\t\turl: urlBinding,\n\t\t\t\talt: altBinding,\n\t\t\t\ttitle: titleBinding,\n\t\t\t} = metadata?.bindings || {};\n\t\t\tconst hasParentPattern =\n\t\t\t\tgetBlockParentsByBlockName( clientId, 'core/block' ).length > 0;\n\t\t\tconst urlBindingSource = getBlockBindingsSource(\n\t\t\t\turlBinding?.source\n\t\t\t);\n\t\t\tconst altBindingSource = getBlockBindingsSource(\n\t\t\t\taltBinding?.source\n\t\t\t);\n\t\t\tconst titleBindingSource = getBlockBindingsSource(\n\t\t\t\ttitleBinding?.source\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tlockUrlControls:\n\t\t\t\t\t!! urlBinding &&\n\t\t\t\t\t( ! urlBindingSource ||\n\t\t\t\t\t\turlBindingSource?.lockAttributesEditing ),\n\t\t\t\tlockHrefControls:\n\t\t\t\t\t// Disable editing the link of the URL if the image is inside a pattern instance.\n\t\t\t\t\t// This is a temporary solution until we support overriding the link on the frontend.\n\t\t\t\t\thasParentPattern,\n\t\t\t\tlockCaption:\n\t\t\t\t\t// Disable editing the caption if the image is inside a pattern instance.\n\t\t\t\t\t// This is a temporary solution until we support overriding the caption on the frontend.\n\t\t\t\t\thasParentPattern,\n\t\t\t\tlockAltControls:\n\t\t\t\t\t!! altBinding &&\n\t\t\t\t\t( ! altBindingSource ||\n\t\t\t\t\t\taltBindingSource?.lockAttributesEditing ),\n\t\t\t\tlockAltControlsMessage: altBindingSource?.label\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the bindings source. */\n\t\t\t\t\t\t\t__( 'Connected to %s' ),\n\t\t\t\t\t\t\taltBindingSource.label\n\t\t\t\t\t )\n\t\t\t\t\t: __( 'Connected to dynamic data' ),\n\t\t\t\tlockTitleControls:\n\t\t\t\t\t!! titleBinding &&\n\t\t\t\t\t( ! titleBindingSource ||\n\t\t\t\t\t\ttitleBindingSource?.lockAttributesEditing ),\n\t\t\t\tlockTitleControlsMessage: titleBindingSource?.label\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the bindings source. */\n\t\t\t\t\t\t\t__( 'Connected to %s' ),\n\t\t\t\t\t\t\ttitleBindingSource.label\n\t\t\t\t\t )\n\t\t\t\t\t: __( 'Connected to dynamic data' ),\n\t\t\t};\n\t\t},\n\t\t[ clientId, isSingleSelected, metadata?.bindings ]\n\t);\n\n\tconst controls = (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ isSingleSelected &&\n\t\t\t\t\t! isEditingImage &&\n\t\t\t\t\t! lockHrefControls &&\n\t\t\t\t\t! lockUrlControls && (\n\t\t\t\t\t\t<ImageURLInputUI\n\t\t\t\t\t\t\turl={ href || '' }\n\t\t\t\t\t\t\tonChangeUrl={ onSetHref }\n\t\t\t\t\t\t\tlinkDestination={ linkDestination }\n\t\t\t\t\t\t\tmediaUrl={ ( image && image.source_url ) || url }\n\t\t\t\t\t\t\tmediaLink={ image && image.link }\n\t\t\t\t\t\t\tlinkTarget={ linkTarget }\n\t\t\t\t\t\t\tlinkClass={ linkClass }\n\t\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t\t\tshowLightboxSetting={ showLightboxSetting }\n\t\t\t\t\t\t\tlightboxEnabled={ lightboxChecked }\n\t\t\t\t\t\t\tonSetLightbox={ onSetLightbox }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t{ allowCrop && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isSingleSelected && canInsertCover && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ticon={ overlayText }\n\t\t\t\t\t\tlabel={ __( 'Add text over image' ) }\n\t\t\t\t\t\tonClick={ switchToCover }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isSingleSelected && ! isEditingImage && ! lockUrlControls && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ isSingleSelected && externalBlob && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ uploadExternal }\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tlabel={ __( 'Upload to Media Library' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ isContentOnlyMode && (\n\t\t\t\t// Add some extra controls for content attributes when content only mode is active.\n\t\t\t\t// With content only mode active, the inspector is hidden, so users need another way\n\t\t\t\t// to edit these attributes.\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<Dropdown\n\t\t\t\t\t\tpopoverProps={ { position: 'bottom right' } }\n\t\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\t\tif ( ! isOpen && event.keyCode === DOWN ) {\n\t\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ _x(\n\t\t\t\t\t\t\t\t\t'Alt',\n\t\t\t\t\t\t\t\t\t'Alternative text for an image. Block toolbar label, a low character count is preferred.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\tclassName=\"wp-block-image__toolbar_content_textarea\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\tvalue={ alt || '' }\n\t\t\t\t\t\t\t\tonChange={ updateAlt }\n\t\t\t\t\t\t\t\tdisabled={ lockAltControls }\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\tlockAltControls ? (\n\t\t\t\t\t\t\t\t\t\t<>{ lockAltControlsMessage }</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image.'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<Dropdown\n\t\t\t\t\t\tpopoverProps={ { position: 'bottom right' } }\n\t\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\t\tif ( ! isOpen && event.keyCode === DOWN ) {\n\t\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Title' ) }\n\t\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tclassName=\"wp-block-image__toolbar_content_textarea\"\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\t\t\t\tonChange={ onSetTitle }\n\t\t\t\t\t\t\t\tdisabled={ lockTitleControls }\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\tlockTitleControls ? (\n\t\t\t\t\t\t\t\t\t\t<>{ lockTitleControlsMessage }</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Describe the role of this image on the page.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/TR/html52/dom.html#the-title-attribute\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'(Note: many devices and browsers do not display this text.)'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ resetAll }\n\t\t\t\t\tdropdownMenuProps={ TOOLSPANEL_DROPDOWNMENU_PROPS }\n\t\t\t\t>\n\t\t\t\t\t{ isSingleSelected && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\thasValue={ () => !! alt }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { alt: undefined } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\tvalue={ alt || '' }\n\t\t\t\t\t\t\t\tonChange={ updateAlt }\n\t\t\t\t\t\t\t\treadOnly={ lockAltControls }\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\tlockAltControls ? (\n\t\t\t\t\t\t\t\t\t\t<>{ lockAltControlsMessage }</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image.'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isResizable && dimensionsControl }\n\t\t\t\t\t{ !! imageSizeOptions.length && (\n\t\t\t\t\t\t<ResolutionTool\n\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\tonChange={ updateImage }\n\t\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\tonChange={ onSetTitle }\n\t\t\t\t\treadOnly={ lockTitleControls }\n\t\t\t\t\thelp={\n\t\t\t\t\t\tlockTitleControls ? (\n\t\t\t\t\t\t\t<>{ lockTitleControlsMessage }</>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Describe the role of this image on the page.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/TR/html52/dom.html#the-title-attribute\">\n\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t'(Note: many devices and browsers do not display this text.)'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst filename = getFilename( url );\n\tlet defaultedAlt;\n\n\tif ( alt ) {\n\t\tdefaultedAlt = alt;\n\t} else if ( filename ) {\n\t\tdefaultedAlt = sprintf(\n\t\t\t/* translators: %s: file name */\n\t\t\t__( 'This image has an empty alt attribute; its file name is %s' ),\n\t\t\tfilename\n\t\t);\n\t} else {\n\t\tdefaultedAlt = __( 'This image has an empty alt attribute' );\n\t}\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\tconst isRounded = attributes.className?.includes( 'is-style-rounded' );\n\n\tlet img = (\n\t\t// Disable reason: Image itself is not meant to be interactive, but\n\t\t// should direct focus to block.\n\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t<>\n\t\t\t<img\n\t\t\t\tsrc={ temporaryURL || url }\n\t\t\t\talt={ defaultedAlt }\n\t\t\t\tonError={ () => onImageError() }\n\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\tsetLoadedNaturalSize( {\n\t\t\t\t\t\tloadedNaturalWidth: event.target?.naturalWidth,\n\t\t\t\t\t\tloadedNaturalHeight: event.target?.naturalHeight,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tref={ imageRef }\n\t\t\t\tclassName={ borderProps.className }\n\t\t\t\tstyle={ {\n\t\t\t\t\twidth:\n\t\t\t\t\t\t( width && height ) || aspectRatio ? '100%' : undefined,\n\t\t\t\t\theight:\n\t\t\t\t\t\t( width && height ) || aspectRatio ? '100%' : undefined,\n\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t...shadowProps.style,\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t{ temporaryURL && <Spinner /> }\n\t\t</>\n\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t);\n\n\t// clientWidth needs to be a number for the image Cropper to work, but sometimes it's 0\n\t// So we try using the imageRef width first and fallback to clientWidth.\n\tconst fallbackClientWidth = imageRef.current?.width || clientWidth;\n\n\tif ( canEditImage && isEditingImage ) {\n\t\timg = (\n\t\t\t<ImageWrapper href={ href }>\n\t\t\t\t<ImageEditor\n\t\t\t\t\tid={ id }\n\t\t\t\t\turl={ url }\n\t\t\t\t\twidth={ numericWidth }\n\t\t\t\t\theight={ numericHeight }\n\t\t\t\t\tclientWidth={ fallbackClientWidth }\n\t\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\t\tonSaveImage={ ( imageAttributes ) =>\n\t\t\t\t\t\tsetAttributes( imageAttributes )\n\t\t\t\t\t}\n\t\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t\t} }\n\t\t\t\t\tborderProps={ isRounded ? undefined : borderProps }\n\t\t\t\t/>\n\t\t\t</ImageWrapper>\n\t\t);\n\t} else if ( ! isResizable ) {\n\t\timg = (\n\t\t\t<div style={ { width, height, aspectRatio } }>\n\t\t\t\t<ImageWrapper href={ href }>{ img }</ImageWrapper>\n\t\t\t</div>\n\t\t);\n\t} else {\n\t\tconst numericRatio = aspectRatio && evalAspectRatio( aspectRatio );\n\t\tconst customRatio = numericWidth / numericHeight;\n\t\tconst naturalRatio = naturalWidth / naturalHeight;\n\t\tconst ratio = numericRatio || customRatio || naturalRatio || 1;\n\t\tconst currentWidth =\n\t\t\t! numericWidth && numericHeight\n\t\t\t\t? numericHeight * ratio\n\t\t\t\t: numericWidth;\n\t\tconst currentHeight =\n\t\t\t! numericHeight && numericWidth\n\t\t\t\t? numericWidth / ratio\n\t\t\t\t: numericHeight;\n\n\t\tconst minWidth =\n\t\t\tnaturalWidth < naturalHeight ? MIN_SIZE : MIN_SIZE * ratio;\n\t\tconst minHeight =\n\t\t\tnaturalHeight < naturalWidth ? MIN_SIZE : MIN_SIZE / ratio;\n\n\t\t// With the current implementation of ResizableBox, an image needs an\n\t\t// explicit pixel value for the max-width. In absence of being able to\n\t\t// set the content-width, this max-width is currently dictated by the\n\t\t// vanilla editor style. The following variable adds a buffer to this\n\t\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t\t// in most cases, allow you to scale the image beyond the width of the\n\t\t// main column, though not infinitely.\n\t\t// @todo It would be good to revisit this once a content-width variable\n\t\t// becomes available.\n\t\tconst maxWidthBuffer = maxWidth * 2.5;\n\n\t\tlet showRightHandle = false;\n\t\tlet showLeftHandle = false;\n\n\t\t/* eslint-disable no-lonely-if */\n\t\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\t\tif ( align === 'center' ) {\n\t\t\t// When the image is centered, show both handles.\n\t\t\tshowRightHandle = true;\n\t\t\tshowLeftHandle = true;\n\t\t} else if ( isRTL() ) {\n\t\t\t// In RTL mode the image is on the right by default.\n\t\t\t// Show the right handle and hide the left handle only when it is\n\t\t\t// aligned left. Otherwise always show the left handle.\n\t\t\tif ( align === 'left' ) {\n\t\t\t\tshowRightHandle = true;\n\t\t\t} else {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t}\n\t\t} else {\n\t\t\t// Show the left handle and hide the right handle only when the\n\t\t\t// image is aligned right. Otherwise always show the right handle.\n\t\t\tif ( align === 'right' ) {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t} else {\n\t\t\t\tshowRightHandle = true;\n\t\t\t}\n\t\t}\n\t\t/* eslint-enable no-lonely-if */\n\t\timg = (\n\t\t\t<ResizableBox\n\t\t\t\tstyle={ {\n\t\t\t\t\tdisplay: 'block',\n\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\taspectRatio:\n\t\t\t\t\t\t! width && ! height && aspectRatio\n\t\t\t\t\t\t\t? aspectRatio\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t} }\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: currentWidth ?? 'auto',\n\t\t\t\t\theight: currentHeight ?? 'auto',\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSingleSelected }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxWidthBuffer }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxWidthBuffer / ratio }\n\t\t\t\tlockAspectRatio={ ratio }\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: showRightHandle,\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: showLeftHandle,\n\t\t\t\t} }\n\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\tonResizeStop={ ( event, direction, elt ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\t// Since the aspect ratio is locked when resizing, we can\n\t\t\t\t\t// use the width of the resized element to calculate the\n\t\t\t\t\t// height in CSS to prevent stretching when the max-width\n\t\t\t\t\t// is reached.\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: `${ elt.offsetWidth }px`,\n\t\t\t\t\t\theight: 'auto',\n\t\t\t\t\t\taspectRatio:\n\t\t\t\t\t\t\tratio === naturalRatio\n\t\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t\t: String( ratio ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tresizeRatio={ align === 'center' ? 2 : 1 }\n\t\t\t>\n\t\t\t\t<ImageWrapper href={ href }>{ img }</ImageWrapper>\n\t\t\t</ResizableBox>\n\t\t);\n\t}\n\n\tif ( ! url && ! temporaryURL ) {\n\t\t// Add all controls if the image attributes are connected.\n\t\treturn metadata?.bindings ? controls : sizeControls;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ /* Hide controls during upload to avoid component remount,\n\t\t\t\twhich causes duplicated image upload. */ }\n\t\t\t{ ! temporaryURL && controls }\n\t\t\t{ img }\n\n\t\t\t<Caption\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\tlabel={ __( 'Image caption text' ) }\n\t\t\t\tshowToolbarButton={ isSingleSelected && hasNonContentControls }\n\t\t\t\tdisableEditing={ lockCaption }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["TouchableWithoutFeedback","View","Text","Component","compose","withPreferredColorScheme","withDispatch","withSelect","__","postList","icon","InspectorControls","BlockAlignmentControl","apiFetch","Icon","PanelBody","ToggleControl","RangeControl","QueryControls","store","blocksStore","styles","MIN_EXCERPT_LENGTH","MAX_EXCERPT_LENGTH","LatestPostsEdit","constructor","arguments","state","categoriesList","onSetDisplayPostContent","bind","onSetDisplayPostContentRadio","onSetExcerptLength","onSetDisplayPostDate","onSetDisplayFeaturedImage","onSetFeaturedImageAlign","onSetAddLinkToFeaturedImage","onSetOrder","onSetOrderBy","onSetPostsToShow","onSetCategories","getInspectorControls","componentDidMount","isStillMounted","fetchRequest","path","then","setState","catch","componentWillUnmount","value","setAttributes","props","displayPostContent","displayPostContentRadio","excerptLength","displayPostDate","displayFeaturedImage","addLinkToFeaturedImage","featuredImageAlign","order","orderBy","postsToShow","categories","toString","undefined","attributes","displayExcerptPostContent","createElement","title","label","checked","onChange","min","max","Fragment","controls","isBottomSheetControl","separatorType","numberOfItems","selectedCategoryId","Number","onOrderChange","onOrderByChange","onCategoryChange","__DEV__","onNumberOfItemsChange","render","blockTitle","getStylesFromColorScheme","openGeneralSidebar","isSelected","blockStyle","latestPostBlock","latestPostBlockDark","iconStyle","latestPostBlockIcon","latestPostBlockIconDark","titleStyle","latestPostBlockMessage","latestPostBlockMessageDark","accessible","disabled","onPress","style","latestPostBlockSubtitle","select","name","blockType","getBlockType","dispatch"],"sources":["@wordpress/block-library/src/latest-posts/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { TouchableWithoutFeedback, View, Text } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { postList as icon } from '@wordpress/icons';\nimport {\n\tInspectorControls,\n\tBlockAlignmentControl,\n} from '@wordpress/block-editor';\nimport apiFetch from '@wordpress/api-fetch';\nimport {\n\tIcon,\n\tPanelBody,\n\tToggleControl,\n\tRangeControl,\n\tQueryControls,\n} from '@wordpress/components';\nimport { store as blocksStore } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport { MIN_EXCERPT_LENGTH, MAX_EXCERPT_LENGTH } from './constants';\n\nclass LatestPostsEdit extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.state = {\n\t\t\tcategoriesList: [],\n\t\t};\n\t\tthis.onSetDisplayPostContent =\n\t\t\tthis.onSetDisplayPostContent.bind( this );\n\t\tthis.onSetDisplayPostContentRadio =\n\t\t\tthis.onSetDisplayPostContentRadio.bind( this );\n\t\tthis.onSetExcerptLength = this.onSetExcerptLength.bind( this );\n\t\tthis.onSetDisplayPostDate = this.onSetDisplayPostDate.bind( this );\n\t\tthis.onSetDisplayFeaturedImage =\n\t\t\tthis.onSetDisplayFeaturedImage.bind( this );\n\t\tthis.onSetFeaturedImageAlign =\n\t\t\tthis.onSetFeaturedImageAlign.bind( this );\n\t\tthis.onSetAddLinkToFeaturedImage =\n\t\t\tthis.onSetAddLinkToFeaturedImage.bind( this );\n\t\tthis.onSetOrder = this.onSetOrder.bind( this );\n\t\tthis.onSetOrderBy = this.onSetOrderBy.bind( this );\n\t\tthis.onSetPostsToShow = this.onSetPostsToShow.bind( this );\n\t\tthis.onSetCategories = this.onSetCategories.bind( this );\n\t\tthis.getInspectorControls = this.getInspectorControls.bind( this );\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.isStillMounted = true;\n\t\tthis.fetchRequest = apiFetch( { path: '/wp/v2/categories' } )\n\t\t\t.then( ( categoriesList ) => {\n\t\t\t\tif ( this.isStillMounted ) {\n\t\t\t\t\tthis.setState( {\n\t\t\t\t\t\tcategoriesList,\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.catch( () => {\n\t\t\t\tif ( this.isStillMounted ) {\n\t\t\t\t\tthis.setState( { categoriesList: [] } );\n\t\t\t\t}\n\t\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tthis.isStillMounted = false;\n\t}\n\n\tonSetDisplayPostContent( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { displayPostContent: value } );\n\t}\n\n\tonSetDisplayPostContentRadio( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( {\n\t\t\tdisplayPostContentRadio: value ? 'excerpt' : 'full_post',\n\t\t} );\n\t}\n\n\tonSetExcerptLength( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { excerptLength: value } );\n\t}\n\n\tonSetDisplayPostDate( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { displayPostDate: value } );\n\t}\n\n\tonSetDisplayFeaturedImage( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { displayFeaturedImage: value } );\n\t}\n\n\tonSetAddLinkToFeaturedImage( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { addLinkToFeaturedImage: value } );\n\t}\n\n\tonSetFeaturedImageAlign( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { featuredImageAlign: value } );\n\t}\n\n\tonSetOrder( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { order: value } );\n\t}\n\n\tonSetOrderBy( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { orderBy: value } );\n\t}\n\n\tonSetPostsToShow( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { postsToShow: value } );\n\t}\n\n\tonSetCategories( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( {\n\t\t\tcategories: '' !== value ? value.toString() : undefined,\n\t\t} );\n\t}\n\n\tgetInspectorControls() {\n\t\tconst { attributes } = this.props;\n\t\tconst {\n\t\t\tdisplayPostContent,\n\t\t\tdisplayPostContentRadio,\n\t\t\texcerptLength,\n\t\t\tdisplayPostDate,\n\t\t\tdisplayFeaturedImage,\n\t\t\tfeaturedImageAlign,\n\t\t\taddLinkToFeaturedImage,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tpostsToShow,\n\t\t\tcategories,\n\t\t} = attributes;\n\n\t\tconst { categoriesList } = this.state;\n\t\tconst displayExcerptPostContent = displayPostContentRadio === 'excerpt';\n\n\t\treturn (\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Post content' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Show post content' ) }\n\t\t\t\t\t\tchecked={ displayPostContent }\n\t\t\t\t\t\tonChange={ this.onSetDisplayPostContent }\n\t\t\t\t\t/>\n\t\t\t\t\t{ displayPostContent && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Only show excerpt' ) }\n\t\t\t\t\t\t\tchecked={ displayExcerptPostContent }\n\t\t\t\t\t\t\tonChange={ this.onSetDisplayPostContentRadio }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ displayPostContent && displayExcerptPostContent && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\tlabel={ __( 'Excerpt length (words)' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ this.onSetExcerptLength }\n\t\t\t\t\t\t\tmin={ MIN_EXCERPT_LENGTH }\n\t\t\t\t\t\t\tmax={ MAX_EXCERPT_LENGTH }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\n\t\t\t\t<PanelBody title={ __( 'Post meta' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display post date' ) }\n\t\t\t\t\t\tchecked={ displayPostDate }\n\t\t\t\t\t\tonChange={ this.onSetDisplayPostDate }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\n\t\t\t\t<PanelBody title={ __( 'Featured image' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display featured image' ) }\n\t\t\t\t\t\tchecked={ displayFeaturedImage }\n\t\t\t\t\t\tonChange={ this.onSetDisplayFeaturedImage }\n\t\t\t\t\t/>\n\t\t\t\t\t{ displayFeaturedImage && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<BlockAlignmentControl\n\t\t\t\t\t\t\t\tvalue={ featuredImageAlign }\n\t\t\t\t\t\t\t\tonChange={ this.onSetFeaturedImageAlign }\n\t\t\t\t\t\t\t\tcontrols={ [ 'left', 'center', 'right' ] }\n\t\t\t\t\t\t\t\tisBottomSheetControl={ true }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Add link to featured image' ) }\n\t\t\t\t\t\t\t\tchecked={ addLinkToFeaturedImage }\n\t\t\t\t\t\t\t\tonChange={ this.onSetAddLinkToFeaturedImage }\n\t\t\t\t\t\t\t\tseparatorType={ 'topFullWidth' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\n\t\t\t\t<PanelBody title={ __( 'Sorting and filtering' ) }>\n\t\t\t\t\t<QueryControls\n\t\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\t\tnumberOfItems={ postsToShow }\n\t\t\t\t\t\tcategoriesList={ categoriesList }\n\t\t\t\t\t\tselectedCategoryId={\n\t\t\t\t\t\t\tundefined !== categories ? Number( categories ) : ''\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonOrderChange={ this.onSetOrder }\n\t\t\t\t\t\tonOrderByChange={ this.onSetOrderBy }\n\t\t\t\t\t\tonCategoryChange={\n\t\t\t\t\t\t\t// eslint-disable-next-line no-undef\n\t\t\t\t\t\t\t__DEV__ ? this.onSetCategories : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonNumberOfItemsChange={ this.onSetPostsToShow }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tblockTitle,\n\t\t\tgetStylesFromColorScheme,\n\t\t\topenGeneralSidebar,\n\t\t\tisSelected,\n\t\t} = this.props;\n\n\t\tconst blockStyle = getStylesFromColorScheme(\n\t\t\tstyles.latestPostBlock,\n\t\t\tstyles.latestPostBlockDark\n\t\t);\n\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles.latestPostBlockIcon,\n\t\t\tstyles.latestPostBlockIconDark\n\t\t);\n\n\t\tconst titleStyle = getStylesFromColorScheme(\n\t\t\tstyles.latestPostBlockMessage,\n\t\t\tstyles.latestPostBlockMessageDark\n\t\t);\n\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\taccessible={ ! isSelected }\n\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\tonPress={ openGeneralSidebar }\n\t\t\t>\n\t\t\t\t<View style={ blockStyle }>\n\t\t\t\t\t{ isSelected && this.getInspectorControls() }\n\t\t\t\t\t<Icon icon={ icon } { ...iconStyle } />\n\t\t\t\t\t<Text style={ titleStyle }>{ blockTitle }</Text>\n\t\t\t\t\t<Text style={ styles.latestPostBlockSubtitle }>\n\t\t\t\t\t\t{ __( 'CUSTOMIZE' ) }\n\t\t\t\t\t</Text>\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select, { name } ) => {\n\t\tconst blockType = select( blocksStore ).getBlockType( name );\n\t\treturn {\n\t\t\tblockTitle: blockType?.title || name,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { openGeneralSidebar } = dispatch( 'core/edit-post' );\n\n\t\treturn {\n\t\t\topenGeneralSidebar: () => openGeneralSidebar( 'edit-post/block' ),\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( LatestPostsEdit );\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,wBAAwB,EAAEC,IAAI,EAAEC,IAAI,QAAQ,cAAc;;AAEnE;AACA;AACA;AACA,SAASC,SAAS,QAAQ,oBAAoB;AAC9C,SAASC,OAAO,EAAEC,wBAAwB,QAAQ,oBAAoB;AACtE,SAASC,YAAY,EAAEC,UAAU,QAAQ,iBAAiB;AAC1D,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,QAAQ,IAAIC,IAAI,QAAQ,kBAAkB;AACnD,SACCC,iBAAiB,EACjBC,qBAAqB,QACf,yBAAyB;AAChC,OAAOC,QAAQ,MAAM,sBAAsB;AAC3C,SACCC,IAAI,EACJC,SAAS,EACTC,aAAa,EACbC,YAAY,EACZC,aAAa,QACP,uBAAuB;AAC9B,SAASC,KAAK,IAAIC,WAAW,QAAQ,mBAAmB;;AAExD;AACA;AACA;AACA,OAAOC,MAAM,MAAM,cAAc;AACjC,SAASC,kBAAkB,EAAEC,kBAAkB,QAAQ,aAAa;AAEpE,MAAMC,eAAe,SAASrB,SAAS,CAAC;EACvCsB,WAAWA,CAAA,EAAG;IACb,KAAK,CAAE,GAAGC,SAAU,CAAC;IACrB,IAAI,CAACC,KAAK,GAAG;MACZC,cAAc,EAAE;IACjB,CAAC;IACD,IAAI,CAACC,uBAAuB,GAC3B,IAAI,CAACA,uBAAuB,CAACC,IAAI,CAAE,IAAK,CAAC;IAC1C,IAAI,CAACC,4BAA4B,GAChC,IAAI,CAACA,4BAA4B,CAACD,IAAI,CAAE,IAAK,CAAC;IAC/C,IAAI,CAACE,kBAAkB,GAAG,IAAI,CAACA,kBAAkB,CAACF,IAAI,CAAE,IAAK,CAAC;IAC9D,IAAI,CAACG,oBAAoB,GAAG,IAAI,CAACA,oBAAoB,CAACH,IAAI,CAAE,IAAK,CAAC;IAClE,IAAI,CAACI,yBAAyB,GAC7B,IAAI,CAACA,yBAAyB,CAACJ,IAAI,CAAE,IAAK,CAAC;IAC5C,IAAI,CAACK,uBAAuB,GAC3B,IAAI,CAACA,uBAAuB,CAACL,IAAI,CAAE,IAAK,CAAC;IAC1C,IAAI,CAACM,2BAA2B,GAC/B,IAAI,CAACA,2BAA2B,CAACN,IAAI,CAAE,IAAK,CAAC;IAC9C,IAAI,CAACO,UAAU,GAAG,IAAI,CAACA,UAAU,CAACP,IAAI,CAAE,IAAK,CAAC;IAC9C,IAAI,CAACQ,YAAY,GAAG,IAAI,CAACA,YAAY,CAACR,IAAI,CAAE,IAAK,CAAC;IAClD,IAAI,CAACS,gBAAgB,GAAG,IAAI,CAACA,gBAAgB,CAACT,IAAI,CAAE,IAAK,CAAC;IAC1D,IAAI,CAACU,eAAe,GAAG,IAAI,CAACA,eAAe,CAACV,IAAI,CAAE,IAAK,CAAC;IACxD,IAAI,CAACW,oBAAoB,GAAG,IAAI,CAACA,oBAAoB,CAACX,IAAI,CAAE,IAAK,CAAC;EACnE;EAEAY,iBAAiBA,CAAA,EAAG;IACnB,IAAI,CAACC,cAAc,GAAG,IAAI;IAC1B,IAAI,CAACC,YAAY,GAAG/B,QAAQ,CAAE;MAAEgC,IAAI,EAAE;IAAoB,CAAE,CAAC,CAC3DC,IAAI,CAAIlB,cAAc,IAAM;MAC5B,IAAK,IAAI,CAACe,cAAc,EAAG;QAC1B,IAAI,CAACI,QAAQ,CAAE;UACdnB;QACD,CAAE,CAAC;MACJ;IACD,CAAE,CAAC,CACFoB,KAAK,CAAE,MAAM;MACb,IAAK,IAAI,CAACL,cAAc,EAAG;QAC1B,IAAI,CAACI,QAAQ,CAAE;UAAEnB,cAAc,EAAE;QAAG,CAAE,CAAC;MACxC;IACD,CAAE,CAAC;EACL;EAEAqB,oBAAoBA,CAAA,EAAG;IACtB,IAAI,CAACN,cAAc,GAAG,KAAK;EAC5B;EAEAd,uBAAuBA,CAAEqB,KAAK,EAAG;IAChC,MAAM;MAAEC;IAAc,CAAC,GAAG,IAAI,CAACC,KAAK;IACpCD,aAAa,CAAE;MAAEE,kBAAkB,EAAEH;IAAM,CAAE,CAAC;EAC/C;EAEAnB,4BAA4BA,CAAEmB,KAAK,EAAG;IACrC,MAAM;MAAEC;IAAc,CAAC,GAAG,IAAI,CAACC,KAAK;IACpCD,aAAa,CAAE;MACdG,uBAAuB,EAAEJ,KAAK,GAAG,SAAS,GAAG;IAC9C,CAAE,CAAC;EACJ;EAEAlB,kBAAkBA,CAAEkB,KAAK,EAAG;IAC3B,MAAM;MAAEC;IAAc,CAAC,GAAG,IAAI,CAACC,KAAK;IACpCD,aAAa,CAAE;MAAEI,aAAa,EAAEL;IAAM,CAAE,CAAC;EAC1C;EAEAjB,oBAAoBA,CAAEiB,KAAK,EAAG;IAC7B,MAAM;MAAEC;IAAc,CAAC,GAAG,IAAI,CAACC,KAAK;IACpCD,aAAa,CAAE;MAAEK,eAAe,EAAEN;IAAM,CAAE,CAAC;EAC5C;EAEAhB,yBAAyBA,CAAEgB,KAAK,EAAG;IAClC,MAAM;MAAEC;IAAc,CAAC,GAAG,IAAI,CAACC,KAAK;IACpCD,aAAa,CAAE;MAAEM,oBAAoB,EAAEP;IAAM,CAAE,CAAC;EACjD;EAEAd,2BAA2BA,CAAEc,KAAK,EAAG;IACpC,MAAM;MAAEC;IAAc,CAAC,GAAG,IAAI,CAACC,KAAK;IACpCD,aAAa,CAAE;MAAEO,sBAAsB,EAAER;IAAM,CAAE,CAAC;EACnD;EAEAf,uBAAuBA,CAAEe,KAAK,EAAG;IAChC,MAAM;MAAEC;IAAc,CAAC,GAAG,IAAI,CAACC,KAAK;IACpCD,aAAa,CAAE;MAAEQ,kBAAkB,EAAET;IAAM,CAAE,CAAC;EAC/C;EAEAb,UAAUA,CAAEa,KAAK,EAAG;IACnB,MAAM;MAAEC;IAAc,CAAC,GAAG,IAAI,CAACC,KAAK;IACpCD,aAAa,CAAE;MAAES,KAAK,EAAEV;IAAM,CAAE,CAAC;EAClC;EAEAZ,YAAYA,CAAEY,KAAK,EAAG;IACrB,MAAM;MAAEC;IAAc,CAAC,GAAG,IAAI,CAACC,KAAK;IACpCD,aAAa,CAAE;MAAEU,OAAO,EAAEX;IAAM,CAAE,CAAC;EACpC;EAEAX,gBAAgBA,CAAEW,KAAK,EAAG;IACzB,MAAM;MAAEC;IAAc,CAAC,GAAG,IAAI,CAACC,KAAK;IACpCD,aAAa,CAAE;MAAEW,WAAW,EAAEZ;IAAM,CAAE,CAAC;EACxC;EAEAV,eAAeA,CAAEU,KAAK,EAAG;IACxB,MAAM;MAAEC;IAAc,CAAC,GAAG,IAAI,CAACC,KAAK;IACpCD,aAAa,CAAE;MACdY,UAAU,EAAE,EAAE,KAAKb,KAAK,GAAGA,KAAK,CAACc,QAAQ,CAAC,CAAC,GAAGC;IAC/C,CAAE,CAAC;EACJ;EAEAxB,oBAAoBA,CAAA,EAAG;IACtB,MAAM;MAAEyB;IAAW,CAAC,GAAG,IAAI,CAACd,KAAK;IACjC,MAAM;MACLC,kBAAkB;MAClBC,uBAAuB;MACvBC,aAAa;MACbC,eAAe;MACfC,oBAAoB;MACpBE,kBAAkB;MAClBD,sBAAsB;MACtBE,KAAK;MACLC,OAAO;MACPC,WAAW;MACXC;IACD,CAAC,GAAGG,UAAU;IAEd,MAAM;MAAEtC;IAAe,CAAC,GAAG,IAAI,CAACD,KAAK;IACrC,MAAMwC,yBAAyB,GAAGb,uBAAuB,KAAK,SAAS;IAEvE,OACCc,aAAA,CAACzD,iBAAiB,QACjByD,aAAA,CAACrD,SAAS;MAACsD,KAAK,EAAG7D,EAAE,CAAE,cAAe;IAAG,GACxC4D,aAAA,CAACpD,aAAa;MACbsD,KAAK,EAAG9D,EAAE,CAAE,mBAAoB,CAAG;MACnC+D,OAAO,EAAGlB,kBAAoB;MAC9BmB,QAAQ,EAAG,IAAI,CAAC3C;IAAyB,CACzC,CAAC,EACAwB,kBAAkB,IACnBe,aAAA,CAACpD,aAAa;MACbsD,KAAK,EAAG9D,EAAE,CAAE,mBAAoB,CAAG;MACnC+D,OAAO,EAAGJ,yBAA2B;MACrCK,QAAQ,EAAG,IAAI,CAACzC;IAA8B,CAC9C,CACD,EACCsB,kBAAkB,IAAIc,yBAAyB,IAChDC,aAAA,CAACnD,YAAY;MACZqD,KAAK,EAAG9D,EAAE,CAAE,wBAAyB,CAAG;MACxC0C,KAAK,EAAGK,aAAe;MACvBiB,QAAQ,EAAG,IAAI,CAACxC,kBAAoB;MACpCyC,GAAG,EAAGnD,kBAAoB;MAC1BoD,GAAG,EAAGnD;IAAoB,CAC1B,CAEQ,CAAC,EAEZ6C,aAAA,CAACrD,SAAS;MAACsD,KAAK,EAAG7D,EAAE,CAAE,WAAY;IAAG,GACrC4D,aAAA,CAACpD,aAAa;MACbsD,KAAK,EAAG9D,EAAE,CAAE,mBAAoB,CAAG;MACnC+D,OAAO,EAAGf,eAAiB;MAC3BgB,QAAQ,EAAG,IAAI,CAACvC;IAAsB,CACtC,CACS,CAAC,EAEZmC,aAAA,CAACrD,SAAS;MAACsD,KAAK,EAAG7D,EAAE,CAAE,gBAAiB;IAAG,GAC1C4D,aAAA,CAACpD,aAAa;MACbsD,KAAK,EAAG9D,EAAE,CAAE,wBAAyB,CAAG;MACxC+D,OAAO,EAAGd,oBAAsB;MAChCe,QAAQ,EAAG,IAAI,CAACtC;IAA2B,CAC3C,CAAC,EACAuB,oBAAoB,IACrBW,aAAA,CAAAO,QAAA,QACCP,aAAA,CAACxD,qBAAqB;MACrBsC,KAAK,EAAGS,kBAAoB;MAC5Ba,QAAQ,EAAG,IAAI,CAACrC,uBAAyB;MACzCyC,QAAQ,EAAG,CAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAI;MAC1CC,oBAAoB,EAAG;IAAM,CAC7B,CAAC,EACFT,aAAA,CAACpD,aAAa;MACbsD,KAAK,EAAG9D,EAAE,CAAE,4BAA6B,CAAG;MAC5C+D,OAAO,EAAGb,sBAAwB;MAClCc,QAAQ,EAAG,IAAI,CAACpC,2BAA6B;MAC7C0C,aAAa,EAAG;IAAgB,CAChC,CACA,CAEO,CAAC,EAEZV,aAAA,CAACrD,SAAS;MAACsD,KAAK,EAAG7D,EAAE,CAAE,uBAAwB;IAAG,GACjD4D,aAAA,CAAClD,aAAa;MACN0C,KAAK;MAAEC,OAAO;MACrBkB,aAAa,EAAGjB,WAAa;MAC7BlC,cAAc,EAAGA,cAAgB;MACjCoD,kBAAkB,EACjBf,SAAS,KAAKF,UAAU,GAAGkB,MAAM,CAAElB,UAAW,CAAC,GAAG,EAClD;MACDmB,aAAa,EAAG,IAAI,CAAC7C,UAAY;MACjC8C,eAAe,EAAG,IAAI,CAAC7C,YAAc;MACrC8C,gBAAgB;MACf;MACAC,OAAO,GAAG,IAAI,CAAC7C,eAAe,GAAGyB,SACjC;MACDqB,qBAAqB,EAAG,IAAI,CAAC/C;IAAkB,CAC/C,CACS,CACO,CAAC;EAEtB;EAEAgD,MAAMA,CAAA,EAAG;IACR,MAAM;MACLC,UAAU;MACVC,wBAAwB;MACxBC,kBAAkB;MAClBC;IACD,CAAC,GAAG,IAAI,CAACvC,KAAK;IAEd,MAAMwC,UAAU,GAAGH,wBAAwB,CAC1CpE,MAAM,CAACwE,eAAe,EACtBxE,MAAM,CAACyE,mBACR,CAAC;IAED,MAAMC,SAAS,GAAGN,wBAAwB,CACzCpE,MAAM,CAAC2E,mBAAmB,EAC1B3E,MAAM,CAAC4E,uBACR,CAAC;IAED,MAAMC,UAAU,GAAGT,wBAAwB,CAC1CpE,MAAM,CAAC8E,sBAAsB,EAC7B9E,MAAM,CAAC+E,0BACR,CAAC;IAED,OACChC,aAAA,CAACpE,wBAAwB;MACxBqG,UAAU,EAAG,CAAEV,UAAY;MAC3BW,QAAQ,EAAG,CAAEX,UAAY;MACzBY,OAAO,EAAGb;IAAoB,GAE9BtB,aAAA,CAACnE,IAAI;MAACuG,KAAK,EAAGZ;IAAY,GACvBD,UAAU,IAAI,IAAI,CAAClD,oBAAoB,CAAC,CAAC,EAC3C2B,aAAA,CAACtD,IAAI;MAACJ,IAAI,EAAGA,IAAM;MAAA,GAAMqF;IAAS,CAAI,CAAC,EACvC3B,aAAA,CAAClE,IAAI;MAACsG,KAAK,EAAGN;IAAY,GAAGV,UAAkB,CAAC,EAChDpB,aAAA,CAAClE,IAAI;MAACsG,KAAK,EAAGnF,MAAM,CAACoF;IAAyB,GAC3CjG,EAAE,CAAE,WAAY,CACb,CACD,CACmB,CAAC;EAE7B;AACD;AAEA,eAAeJ,OAAO,CAAE,CACvBG,UAAU,CAAE,CAAEmG,MAAM,EAAE;EAAEC;AAAK,CAAC,KAAM;EACnC,MAAMC,SAAS,GAAGF,MAAM,CAAEtF,WAAY,CAAC,CAACyF,YAAY,CAAEF,IAAK,CAAC;EAC5D,OAAO;IACNnB,UAAU,EAAEoB,SAAS,EAAEvC,KAAK,IAAIsC;EACjC,CAAC;AACF,CAAE,CAAC,EACHrG,YAAY,CAAIwG,QAAQ,IAAM;EAC7B,MAAM;IAAEpB;EAAmB,CAAC,GAAGoB,QAAQ,CAAE,gBAAiB,CAAC;EAE3D,OAAO;IACNpB,kBAAkB,EAAEA,CAAA,KAAMA,kBAAkB,CAAE,iBAAkB;EACjE,CAAC;AACF,CAAE,CAAC,EACHrF,wBAAwB,CACvB,CAAC,CAAEmB,eAAgB,CAAC"}
1
+ {"version":3,"names":["TouchableWithoutFeedback","View","Text","Component","compose","withPreferredColorScheme","withDispatch","withSelect","__","postList","icon","InspectorControls","BlockAlignmentControl","apiFetch","Icon","PanelBody","ToggleControl","RangeControl","QueryControls","store","blocksStore","styles","MIN_EXCERPT_LENGTH","MAX_EXCERPT_LENGTH","LatestPostsEdit","constructor","arguments","state","categoriesList","onSetDisplayPostContent","bind","onSetDisplayPostContentRadio","onSetExcerptLength","onSetDisplayPostDate","onSetDisplayFeaturedImage","onSetFeaturedImageAlign","onSetAddLinkToFeaturedImage","onSetOrder","onSetOrderBy","onSetPostsToShow","onSetCategories","getInspectorControls","componentDidMount","isStillMounted","fetchRequest","path","then","setState","catch","componentWillUnmount","value","setAttributes","props","displayPostContent","displayPostContentRadio","excerptLength","displayPostDate","displayFeaturedImage","addLinkToFeaturedImage","featuredImageAlign","order","orderBy","postsToShow","categories","toString","undefined","attributes","displayExcerptPostContent","createElement","title","label","checked","onChange","min","max","Fragment","controls","isBottomSheetControl","separatorType","numberOfItems","selectedCategoryId","Number","onOrderChange","onOrderByChange","onCategoryChange","__DEV__","onNumberOfItemsChange","render","blockTitle","getStylesFromColorScheme","openGeneralSidebar","isSelected","blockStyle","latestPostBlock","latestPostBlockDark","iconStyle","latestPostBlockIcon","latestPostBlockIconDark","titleStyle","latestPostBlockMessage","latestPostBlockMessageDark","accessible","disabled","onPress","style","latestPostBlockSubtitle","select","name","blockType","getBlockType","dispatch"],"sources":["@wordpress/block-library/src/latest-posts/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { TouchableWithoutFeedback, View, Text } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { postList as icon } from '@wordpress/icons';\nimport {\n\tInspectorControls,\n\tBlockAlignmentControl,\n} from '@wordpress/block-editor';\nimport apiFetch from '@wordpress/api-fetch';\nimport {\n\tIcon,\n\tPanelBody,\n\tToggleControl,\n\tRangeControl,\n\tQueryControls,\n} from '@wordpress/components';\nimport { store as blocksStore } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport { MIN_EXCERPT_LENGTH, MAX_EXCERPT_LENGTH } from './constants';\n\nclass LatestPostsEdit extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.state = {\n\t\t\tcategoriesList: [],\n\t\t};\n\t\tthis.onSetDisplayPostContent =\n\t\t\tthis.onSetDisplayPostContent.bind( this );\n\t\tthis.onSetDisplayPostContentRadio =\n\t\t\tthis.onSetDisplayPostContentRadio.bind( this );\n\t\tthis.onSetExcerptLength = this.onSetExcerptLength.bind( this );\n\t\tthis.onSetDisplayPostDate = this.onSetDisplayPostDate.bind( this );\n\t\tthis.onSetDisplayFeaturedImage =\n\t\t\tthis.onSetDisplayFeaturedImage.bind( this );\n\t\tthis.onSetFeaturedImageAlign =\n\t\t\tthis.onSetFeaturedImageAlign.bind( this );\n\t\tthis.onSetAddLinkToFeaturedImage =\n\t\t\tthis.onSetAddLinkToFeaturedImage.bind( this );\n\t\tthis.onSetOrder = this.onSetOrder.bind( this );\n\t\tthis.onSetOrderBy = this.onSetOrderBy.bind( this );\n\t\tthis.onSetPostsToShow = this.onSetPostsToShow.bind( this );\n\t\tthis.onSetCategories = this.onSetCategories.bind( this );\n\t\tthis.getInspectorControls = this.getInspectorControls.bind( this );\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.isStillMounted = true;\n\t\tthis.fetchRequest = apiFetch( { path: '/wp/v2/categories' } )\n\t\t\t.then( ( categoriesList ) => {\n\t\t\t\tif ( this.isStillMounted ) {\n\t\t\t\t\tthis.setState( {\n\t\t\t\t\t\tcategoriesList,\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.catch( () => {\n\t\t\t\tif ( this.isStillMounted ) {\n\t\t\t\t\tthis.setState( { categoriesList: [] } );\n\t\t\t\t}\n\t\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tthis.isStillMounted = false;\n\t}\n\n\tonSetDisplayPostContent( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { displayPostContent: value } );\n\t}\n\n\tonSetDisplayPostContentRadio( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( {\n\t\t\tdisplayPostContentRadio: value ? 'excerpt' : 'full_post',\n\t\t} );\n\t}\n\n\tonSetExcerptLength( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { excerptLength: value } );\n\t}\n\n\tonSetDisplayPostDate( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { displayPostDate: value } );\n\t}\n\n\tonSetDisplayFeaturedImage( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { displayFeaturedImage: value } );\n\t}\n\n\tonSetAddLinkToFeaturedImage( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { addLinkToFeaturedImage: value } );\n\t}\n\n\tonSetFeaturedImageAlign( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { featuredImageAlign: value } );\n\t}\n\n\tonSetOrder( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { order: value } );\n\t}\n\n\tonSetOrderBy( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { orderBy: value } );\n\t}\n\n\tonSetPostsToShow( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { postsToShow: value } );\n\t}\n\n\tonSetCategories( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( {\n\t\t\tcategories: '' !== value ? value.toString() : undefined,\n\t\t} );\n\t}\n\n\tgetInspectorControls() {\n\t\tconst { attributes } = this.props;\n\t\tconst {\n\t\t\tdisplayPostContent,\n\t\t\tdisplayPostContentRadio,\n\t\t\texcerptLength,\n\t\t\tdisplayPostDate,\n\t\t\tdisplayFeaturedImage,\n\t\t\tfeaturedImageAlign,\n\t\t\taddLinkToFeaturedImage,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tpostsToShow,\n\t\t\tcategories,\n\t\t} = attributes;\n\n\t\tconst { categoriesList } = this.state;\n\t\tconst displayExcerptPostContent = displayPostContentRadio === 'excerpt';\n\n\t\treturn (\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Post content' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Show post content' ) }\n\t\t\t\t\t\tchecked={ displayPostContent }\n\t\t\t\t\t\tonChange={ this.onSetDisplayPostContent }\n\t\t\t\t\t/>\n\t\t\t\t\t{ displayPostContent && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Only show excerpt' ) }\n\t\t\t\t\t\t\tchecked={ displayExcerptPostContent }\n\t\t\t\t\t\t\tonChange={ this.onSetDisplayPostContentRadio }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ displayPostContent && displayExcerptPostContent && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\tlabel={ __( 'Excerpt length (words)' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ this.onSetExcerptLength }\n\t\t\t\t\t\t\tmin={ MIN_EXCERPT_LENGTH }\n\t\t\t\t\t\t\tmax={ MAX_EXCERPT_LENGTH }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\n\t\t\t\t<PanelBody title={ __( 'Post meta' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display post date' ) }\n\t\t\t\t\t\tchecked={ displayPostDate }\n\t\t\t\t\t\tonChange={ this.onSetDisplayPostDate }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\n\t\t\t\t<PanelBody title={ __( 'Featured image' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display featured image' ) }\n\t\t\t\t\t\tchecked={ displayFeaturedImage }\n\t\t\t\t\t\tonChange={ this.onSetDisplayFeaturedImage }\n\t\t\t\t\t/>\n\t\t\t\t\t{ displayFeaturedImage && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<BlockAlignmentControl\n\t\t\t\t\t\t\t\tvalue={ featuredImageAlign }\n\t\t\t\t\t\t\t\tonChange={ this.onSetFeaturedImageAlign }\n\t\t\t\t\t\t\t\tcontrols={ [ 'left', 'center', 'right' ] }\n\t\t\t\t\t\t\t\tisBottomSheetControl\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Add link to featured image' ) }\n\t\t\t\t\t\t\t\tchecked={ addLinkToFeaturedImage }\n\t\t\t\t\t\t\t\tonChange={ this.onSetAddLinkToFeaturedImage }\n\t\t\t\t\t\t\t\tseparatorType={ 'topFullWidth' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\n\t\t\t\t<PanelBody title={ __( 'Sorting and filtering' ) }>\n\t\t\t\t\t<QueryControls\n\t\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\t\tnumberOfItems={ postsToShow }\n\t\t\t\t\t\tcategoriesList={ categoriesList }\n\t\t\t\t\t\tselectedCategoryId={\n\t\t\t\t\t\t\tundefined !== categories ? Number( categories ) : ''\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonOrderChange={ this.onSetOrder }\n\t\t\t\t\t\tonOrderByChange={ this.onSetOrderBy }\n\t\t\t\t\t\tonCategoryChange={\n\t\t\t\t\t\t\t// eslint-disable-next-line no-undef\n\t\t\t\t\t\t\t__DEV__ ? this.onSetCategories : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonNumberOfItemsChange={ this.onSetPostsToShow }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tblockTitle,\n\t\t\tgetStylesFromColorScheme,\n\t\t\topenGeneralSidebar,\n\t\t\tisSelected,\n\t\t} = this.props;\n\n\t\tconst blockStyle = getStylesFromColorScheme(\n\t\t\tstyles.latestPostBlock,\n\t\t\tstyles.latestPostBlockDark\n\t\t);\n\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles.latestPostBlockIcon,\n\t\t\tstyles.latestPostBlockIconDark\n\t\t);\n\n\t\tconst titleStyle = getStylesFromColorScheme(\n\t\t\tstyles.latestPostBlockMessage,\n\t\t\tstyles.latestPostBlockMessageDark\n\t\t);\n\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\taccessible={ ! isSelected }\n\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\tonPress={ openGeneralSidebar }\n\t\t\t>\n\t\t\t\t<View style={ blockStyle }>\n\t\t\t\t\t{ isSelected && this.getInspectorControls() }\n\t\t\t\t\t<Icon icon={ icon } { ...iconStyle } />\n\t\t\t\t\t<Text style={ titleStyle }>{ blockTitle }</Text>\n\t\t\t\t\t<Text style={ styles.latestPostBlockSubtitle }>\n\t\t\t\t\t\t{ __( 'CUSTOMIZE' ) }\n\t\t\t\t\t</Text>\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select, { name } ) => {\n\t\tconst blockType = select( blocksStore ).getBlockType( name );\n\t\treturn {\n\t\t\tblockTitle: blockType?.title || name,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { openGeneralSidebar } = dispatch( 'core/edit-post' );\n\n\t\treturn {\n\t\t\topenGeneralSidebar: () => openGeneralSidebar( 'edit-post/block' ),\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( LatestPostsEdit );\n"],"mappings":"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"}
@@ -11,7 +11,7 @@ const OrderedListSettings = ({
11
11
  start,
12
12
  type
13
13
  }) => createElement(InspectorControls, null, createElement(PanelBody, {
14
- title: __('Ordered list settings')
14
+ title: __('Settings')
15
15
  }, createElement(TextControl, {
16
16
  __nextHasNoMarginBottom: true,
17
17
  label: __('Start value'),
@@ -1 +1 @@
1
- {"version":3,"names":["__","InspectorControls","TextControl","PanelBody","ToggleControl","SelectControl","OrderedListSettings","setAttributes","reversed","start","type","createElement","title","__nextHasNoMarginBottom","label","onChange","value","int","parseInt","isNaN","undefined","Number","isInteger","toString","step","options","newValue","checked"],"sources":["@wordpress/block-library/src/list/ordered-list-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport {\n\tTextControl,\n\tPanelBody,\n\tToggleControl,\n\tSelectControl,\n} from '@wordpress/components';\n\nconst OrderedListSettings = ( { setAttributes, reversed, start, type } ) => (\n\t<InspectorControls>\n\t\t<PanelBody title={ __( 'Ordered list settings' ) }>\n\t\t\t<TextControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Start value' ) }\n\t\t\t\ttype=\"number\"\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tconst int = parseInt( value, 10 );\n\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t// It should be possible to unset the value,\n\t\t\t\t\t\t// e.g. with an empty string.\n\t\t\t\t\t\tstart: isNaN( int ) ? undefined : int,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tvalue={ Number.isInteger( start ) ? start.toString( 10 ) : '' }\n\t\t\t\tstep=\"1\"\n\t\t\t/>\n\t\t\t<SelectControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Numbering style' ) }\n\t\t\t\toptions={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Numbers' ),\n\t\t\t\t\t\tvalue: 'decimal',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Uppercase letters' ),\n\t\t\t\t\t\tvalue: 'upper-alpha',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Lowercase letters' ),\n\t\t\t\t\t\tvalue: 'lower-alpha',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Uppercase Roman numerals' ),\n\t\t\t\t\t\tvalue: 'upper-roman',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Lowercase Roman numerals' ),\n\t\t\t\t\t\tvalue: 'lower-roman',\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t\tvalue={ type }\n\t\t\t\tonChange={ ( newValue ) => setAttributes( { type: newValue } ) }\n\t\t\t/>\n\t\t\t<ToggleControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Reverse list numbering' ) }\n\t\t\t\tchecked={ reversed || false }\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t// Unset the attribute if not reversed.\n\t\t\t\t\t\treversed: value || undefined,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</PanelBody>\n\t</InspectorControls>\n);\n\nexport default OrderedListSettings;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,iBAAiB,QAAQ,yBAAyB;AAC3D,SACCC,WAAW,EACXC,SAAS,EACTC,aAAa,EACbC,aAAa,QACP,uBAAuB;AAE9B,MAAMC,mBAAmB,GAAGA,CAAE;EAAEC,aAAa;EAAEC,QAAQ;EAAEC,KAAK;EAAEC;AAAK,CAAC,KACrEC,aAAA,CAACV,iBAAiB,QACjBU,aAAA,CAACR,SAAS;EAACS,KAAK,EAAGZ,EAAE,CAAE,uBAAwB;AAAG,GACjDW,aAAA,CAACT,WAAW;EACXW,uBAAuB;EACvBC,KAAK,EAAGd,EAAE,CAAE,aAAc,CAAG;EAC7BU,IAAI,EAAC,QAAQ;EACbK,QAAQ,EAAKC,KAAK,IAAM;IACvB,MAAMC,GAAG,GAAGC,QAAQ,CAAEF,KAAK,EAAE,EAAG,CAAC;IAEjCT,aAAa,CAAE;MACd;MACA;MACAE,KAAK,EAAEU,KAAK,CAAEF,GAAI,CAAC,GAAGG,SAAS,GAAGH;IACnC,CAAE,CAAC;EACJ,CAAG;EACHD,KAAK,EAAGK,MAAM,CAACC,SAAS,CAAEb,KAAM,CAAC,GAAGA,KAAK,CAACc,QAAQ,CAAE,EAAG,CAAC,GAAG,EAAI;EAC/DC,IAAI,EAAC;AAAG,CACR,CAAC,EACFb,aAAA,CAACN,aAAa;EACbQ,uBAAuB;EACvBC,KAAK,EAAGd,EAAE,CAAE,iBAAkB,CAAG;EACjCyB,OAAO,EAAG,CACT;IACCX,KAAK,EAAEd,EAAE,CAAE,SAAU,CAAC;IACtBgB,KAAK,EAAE;EACR,CAAC,EACD;IACCF,KAAK,EAAEd,EAAE,CAAE,mBAAoB,CAAC;IAChCgB,KAAK,EAAE;EACR,CAAC,EACD;IACCF,KAAK,EAAEd,EAAE,CAAE,mBAAoB,CAAC;IAChCgB,KAAK,EAAE;EACR,CAAC,EACD;IACCF,KAAK,EAAEd,EAAE,CAAE,0BAA2B,CAAC;IACvCgB,KAAK,EAAE;EACR,CAAC,EACD;IACCF,KAAK,EAAEd,EAAE,CAAE,0BAA2B,CAAC;IACvCgB,KAAK,EAAE;EACR,CAAC,CACC;EACHA,KAAK,EAAGN,IAAM;EACdK,QAAQ,EAAKW,QAAQ,IAAMnB,aAAa,CAAE;IAAEG,IAAI,EAAEgB;EAAS,CAAE;AAAG,CAChE,CAAC,EACFf,aAAA,CAACP,aAAa;EACbS,uBAAuB;EACvBC,KAAK,EAAGd,EAAE,CAAE,wBAAyB,CAAG;EACxC2B,OAAO,EAAGnB,QAAQ,IAAI,KAAO;EAC7BO,QAAQ,EAAKC,KAAK,IAAM;IACvBT,aAAa,CAAE;MACd;MACAC,QAAQ,EAAEQ,KAAK,IAAII;IACpB,CAAE,CAAC;EACJ;AAAG,CACH,CACS,CACO,CACnB;AAED,eAAed,mBAAmB"}
1
+ {"version":3,"names":["__","InspectorControls","TextControl","PanelBody","ToggleControl","SelectControl","OrderedListSettings","setAttributes","reversed","start","type","createElement","title","__nextHasNoMarginBottom","label","onChange","value","int","parseInt","isNaN","undefined","Number","isInteger","toString","step","options","newValue","checked"],"sources":["@wordpress/block-library/src/list/ordered-list-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport {\n\tTextControl,\n\tPanelBody,\n\tToggleControl,\n\tSelectControl,\n} from '@wordpress/components';\n\nconst OrderedListSettings = ( { setAttributes, reversed, start, type } ) => (\n\t<InspectorControls>\n\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t<TextControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Start value' ) }\n\t\t\t\ttype=\"number\"\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tconst int = parseInt( value, 10 );\n\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t// It should be possible to unset the value,\n\t\t\t\t\t\t// e.g. with an empty string.\n\t\t\t\t\t\tstart: isNaN( int ) ? undefined : int,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tvalue={ Number.isInteger( start ) ? start.toString( 10 ) : '' }\n\t\t\t\tstep=\"1\"\n\t\t\t/>\n\t\t\t<SelectControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Numbering style' ) }\n\t\t\t\toptions={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Numbers' ),\n\t\t\t\t\t\tvalue: 'decimal',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Uppercase letters' ),\n\t\t\t\t\t\tvalue: 'upper-alpha',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Lowercase letters' ),\n\t\t\t\t\t\tvalue: 'lower-alpha',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Uppercase Roman numerals' ),\n\t\t\t\t\t\tvalue: 'upper-roman',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Lowercase Roman numerals' ),\n\t\t\t\t\t\tvalue: 'lower-roman',\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t\tvalue={ type }\n\t\t\t\tonChange={ ( newValue ) => setAttributes( { type: newValue } ) }\n\t\t\t/>\n\t\t\t<ToggleControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Reverse list numbering' ) }\n\t\t\t\tchecked={ reversed || false }\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t// Unset the attribute if not reversed.\n\t\t\t\t\t\treversed: value || undefined,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</PanelBody>\n\t</InspectorControls>\n);\n\nexport default OrderedListSettings;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,iBAAiB,QAAQ,yBAAyB;AAC3D,SACCC,WAAW,EACXC,SAAS,EACTC,aAAa,EACbC,aAAa,QACP,uBAAuB;AAE9B,MAAMC,mBAAmB,GAAGA,CAAE;EAAEC,aAAa;EAAEC,QAAQ;EAAEC,KAAK;EAAEC;AAAK,CAAC,KACrEC,aAAA,CAACV,iBAAiB,QACjBU,aAAA,CAACR,SAAS;EAACS,KAAK,EAAGZ,EAAE,CAAE,UAAW;AAAG,GACpCW,aAAA,CAACT,WAAW;EACXW,uBAAuB;EACvBC,KAAK,EAAGd,EAAE,CAAE,aAAc,CAAG;EAC7BU,IAAI,EAAC,QAAQ;EACbK,QAAQ,EAAKC,KAAK,IAAM;IACvB,MAAMC,GAAG,GAAGC,QAAQ,CAAEF,KAAK,EAAE,EAAG,CAAC;IAEjCT,aAAa,CAAE;MACd;MACA;MACAE,KAAK,EAAEU,KAAK,CAAEF,GAAI,CAAC,GAAGG,SAAS,GAAGH;IACnC,CAAE,CAAC;EACJ,CAAG;EACHD,KAAK,EAAGK,MAAM,CAACC,SAAS,CAAEb,KAAM,CAAC,GAAGA,KAAK,CAACc,QAAQ,CAAE,EAAG,CAAC,GAAG,EAAI;EAC/DC,IAAI,EAAC;AAAG,CACR,CAAC,EACFb,aAAA,CAACN,aAAa;EACbQ,uBAAuB;EACvBC,KAAK,EAAGd,EAAE,CAAE,iBAAkB,CAAG;EACjCyB,OAAO,EAAG,CACT;IACCX,KAAK,EAAEd,EAAE,CAAE,SAAU,CAAC;IACtBgB,KAAK,EAAE;EACR,CAAC,EACD;IACCF,KAAK,EAAEd,EAAE,CAAE,mBAAoB,CAAC;IAChCgB,KAAK,EAAE;EACR,CAAC,EACD;IACCF,KAAK,EAAEd,EAAE,CAAE,mBAAoB,CAAC;IAChCgB,KAAK,EAAE;EACR,CAAC,EACD;IACCF,KAAK,EAAEd,EAAE,CAAE,0BAA2B,CAAC;IACvCgB,KAAK,EAAE;EACR,CAAC,EACD;IACCF,KAAK,EAAEd,EAAE,CAAE,0BAA2B,CAAC;IACvCgB,KAAK,EAAE;EACR,CAAC,CACC;EACHA,KAAK,EAAGN,IAAM;EACdK,QAAQ,EAAKW,QAAQ,IAAMnB,aAAa,CAAE;IAAEG,IAAI,EAAEgB;EAAS,CAAE;AAAG,CAChE,CAAC,EACFf,aAAA,CAACP,aAAa;EACbS,uBAAuB;EACvBC,KAAK,EAAGd,EAAE,CAAE,wBAAyB,CAAG;EACxC2B,OAAO,EAAGnB,QAAQ,IAAI,KAAO;EAC7BO,QAAQ,EAAKC,KAAK,IAAM;IACvBT,aAAa,CAAE;MACd;MACAC,QAAQ,EAAEQ,KAAK,IAAII;IACpB,CAAE,CAAC;EACJ;AAAG,CACH,CACS,CACO,CACnB;AAED,eAAed,mBAAmB"}
@@ -12,7 +12,7 @@ import { useSelect } from '@wordpress/data';
12
12
  /**
13
13
  * Internal dependencies
14
14
  */
15
- import { useEnter, useSpace, useIndentListItem, useOutdentListItem, useSplit, useMerge, useCopy } from './hooks';
15
+ import { useEnter, useSpace, useIndentListItem, useOutdentListItem, useSplit, useMerge } from './hooks';
16
16
  import { convertToListItems } from './utils';
17
17
  export function IndentUI({
18
18
  clientId
@@ -58,9 +58,7 @@ export default function ListItemEdit({
58
58
  placeholder,
59
59
  content
60
60
  } = attributes;
61
- const blockProps = useBlockProps({
62
- ref: useCopy(clientId)
63
- });
61
+ const blockProps = useBlockProps();
64
62
  const innerBlocksProps = useInnerBlocksProps(blockProps, {
65
63
  renderAppender: false,
66
64
  __unstableDisableDropZone: true
@@ -1 +1 @@
1
- {"version":3,"names":["RichText","useBlockProps","useInnerBlocksProps","BlockControls","store","blockEditorStore","isRTL","__","ToolbarButton","formatOutdent","formatOutdentRTL","formatIndentRTL","formatIndent","useMergeRefs","useSelect","useEnter","useSpace","useIndentListItem","useOutdentListItem","useSplit","useMerge","useCopy","convertToListItems","IndentUI","clientId","indentListItem","outdentListItem","canIndent","canOutdent","select","getBlockIndex","getBlockRootClientId","getBlockName","createElement","Fragment","icon","title","describedBy","disabled","onClick","isDisabled","ListItemEdit","attributes","setAttributes","onReplace","mergeBlocks","placeholder","content","blockProps","ref","innerBlocksProps","renderAppender","__unstableDisableDropZone","useEnterRef","useSpaceRef","onSplit","onMerge","identifier","tagName","onChange","nextContent","value","blocks","args","undefined","children","group"],"sources":["@wordpress/block-library/src/list-item/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { ToolbarButton } from '@wordpress/components';\nimport {\n\tformatOutdent,\n\tformatOutdentRTL,\n\tformatIndentRTL,\n\tformatIndent,\n} from '@wordpress/icons';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseEnter,\n\tuseSpace,\n\tuseIndentListItem,\n\tuseOutdentListItem,\n\tuseSplit,\n\tuseMerge,\n\tuseCopy,\n} from './hooks';\nimport { convertToListItems } from './utils';\n\nexport function IndentUI( { clientId } ) {\n\tconst indentListItem = useIndentListItem( clientId );\n\tconst outdentListItem = useOutdentListItem();\n\tconst { canIndent, canOutdent } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockIndex, getBlockRootClientId, getBlockName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn {\n\t\t\t\tcanIndent: getBlockIndex( clientId ) > 0,\n\t\t\t\tcanOutdent:\n\t\t\t\t\tgetBlockName(\n\t\t\t\t\t\tgetBlockRootClientId( getBlockRootClientId( clientId ) )\n\t\t\t\t\t) === 'core/list-item',\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatOutdentRTL : formatOutdent }\n\t\t\t\ttitle={ __( 'Outdent' ) }\n\t\t\t\tdescribedBy={ __( 'Outdent list item' ) }\n\t\t\t\tdisabled={ ! canOutdent }\n\t\t\t\tonClick={ () => outdentListItem() }\n\t\t\t/>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatIndentRTL : formatIndent }\n\t\t\t\ttitle={ __( 'Indent' ) }\n\t\t\t\tdescribedBy={ __( 'Indent list item' ) }\n\t\t\t\tisDisabled={ ! canIndent }\n\t\t\t\tonClick={ () => indentListItem() }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport default function ListItemEdit( {\n\tattributes,\n\tsetAttributes,\n\tonReplace,\n\tclientId,\n\tmergeBlocks,\n} ) {\n\tconst { placeholder, content } = attributes;\n\tconst blockProps = useBlockProps( { ref: useCopy( clientId ) } );\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\trenderAppender: false,\n\t\t__unstableDisableDropZone: true,\n\t} );\n\tconst useEnterRef = useEnter( { content, clientId } );\n\tconst useSpaceRef = useSpace( clientId );\n\tconst onSplit = useSplit( clientId );\n\tconst onMerge = useMerge( clientId, mergeBlocks );\n\treturn (\n\t\t<>\n\t\t\t<li { ...innerBlocksProps }>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ useMergeRefs( [ useEnterRef, useSpaceRef ] ) }\n\t\t\t\t\tidentifier=\"content\"\n\t\t\t\t\ttagName=\"div\"\n\t\t\t\t\tonChange={ ( nextContent ) =>\n\t\t\t\t\t\tsetAttributes( { content: nextContent } )\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ content }\n\t\t\t\t\taria-label={ __( 'List text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'List' ) }\n\t\t\t\t\tonSplit={ onSplit }\n\t\t\t\t\tonMerge={ onMerge }\n\t\t\t\t\tonReplace={\n\t\t\t\t\t\tonReplace\n\t\t\t\t\t\t\t? ( blocks, ...args ) => {\n\t\t\t\t\t\t\t\t\tonReplace(\n\t\t\t\t\t\t\t\t\t\tconvertToListItems( blocks ),\n\t\t\t\t\t\t\t\t\t\t...args\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t</li>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<IndentUI clientId={ clientId } />\n\t\t\t</BlockControls>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["RichText","useBlockProps","useInnerBlocksProps","BlockControls","store","blockEditorStore","isRTL","__","ToolbarButton","formatOutdent","formatOutdentRTL","formatIndentRTL","formatIndent","useMergeRefs","useSelect","useEnter","useSpace","useIndentListItem","useOutdentListItem","useSplit","useMerge","convertToListItems","IndentUI","clientId","indentListItem","outdentListItem","canIndent","canOutdent","select","getBlockIndex","getBlockRootClientId","getBlockName","createElement","Fragment","icon","title","describedBy","disabled","onClick","isDisabled","ListItemEdit","attributes","setAttributes","onReplace","mergeBlocks","placeholder","content","blockProps","innerBlocksProps","renderAppender","__unstableDisableDropZone","useEnterRef","useSpaceRef","onSplit","onMerge","ref","identifier","tagName","onChange","nextContent","value","blocks","args","undefined","children","group"],"sources":["@wordpress/block-library/src/list-item/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { ToolbarButton } from '@wordpress/components';\nimport {\n\tformatOutdent,\n\tformatOutdentRTL,\n\tformatIndentRTL,\n\tformatIndent,\n} from '@wordpress/icons';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseEnter,\n\tuseSpace,\n\tuseIndentListItem,\n\tuseOutdentListItem,\n\tuseSplit,\n\tuseMerge,\n} from './hooks';\nimport { convertToListItems } from './utils';\n\nexport function IndentUI( { clientId } ) {\n\tconst indentListItem = useIndentListItem( clientId );\n\tconst outdentListItem = useOutdentListItem();\n\tconst { canIndent, canOutdent } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockIndex, getBlockRootClientId, getBlockName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn {\n\t\t\t\tcanIndent: getBlockIndex( clientId ) > 0,\n\t\t\t\tcanOutdent:\n\t\t\t\t\tgetBlockName(\n\t\t\t\t\t\tgetBlockRootClientId( getBlockRootClientId( clientId ) )\n\t\t\t\t\t) === 'core/list-item',\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatOutdentRTL : formatOutdent }\n\t\t\t\ttitle={ __( 'Outdent' ) }\n\t\t\t\tdescribedBy={ __( 'Outdent list item' ) }\n\t\t\t\tdisabled={ ! canOutdent }\n\t\t\t\tonClick={ () => outdentListItem() }\n\t\t\t/>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatIndentRTL : formatIndent }\n\t\t\t\ttitle={ __( 'Indent' ) }\n\t\t\t\tdescribedBy={ __( 'Indent list item' ) }\n\t\t\t\tisDisabled={ ! canIndent }\n\t\t\t\tonClick={ () => indentListItem() }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport default function ListItemEdit( {\n\tattributes,\n\tsetAttributes,\n\tonReplace,\n\tclientId,\n\tmergeBlocks,\n} ) {\n\tconst { placeholder, content } = attributes;\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\trenderAppender: false,\n\t\t__unstableDisableDropZone: true,\n\t} );\n\tconst useEnterRef = useEnter( { content, clientId } );\n\tconst useSpaceRef = useSpace( clientId );\n\tconst onSplit = useSplit( clientId );\n\tconst onMerge = useMerge( clientId, mergeBlocks );\n\treturn (\n\t\t<>\n\t\t\t<li { ...innerBlocksProps }>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ useMergeRefs( [ useEnterRef, useSpaceRef ] ) }\n\t\t\t\t\tidentifier=\"content\"\n\t\t\t\t\ttagName=\"div\"\n\t\t\t\t\tonChange={ ( nextContent ) =>\n\t\t\t\t\t\tsetAttributes( { content: nextContent } )\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ content }\n\t\t\t\t\taria-label={ __( 'List text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'List' ) }\n\t\t\t\t\tonSplit={ onSplit }\n\t\t\t\t\tonMerge={ onMerge }\n\t\t\t\t\tonReplace={\n\t\t\t\t\t\tonReplace\n\t\t\t\t\t\t\t? ( blocks, ...args ) => {\n\t\t\t\t\t\t\t\t\tonReplace(\n\t\t\t\t\t\t\t\t\t\tconvertToListItems( blocks ),\n\t\t\t\t\t\t\t\t\t\t...args\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t</li>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<IndentUI clientId={ clientId } />\n\t\t\t</BlockControls>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["View","RichText","useBlockProps","useInnerBlocksProps","BlockControls","store","blockEditorStore","__","usePreferredColorSchemeStyle","useSelect","useState","useCallback","useRef","useSplit","useMerge","useEnter","convertToListItems","IndentUI","styles","ListStyleType","OPACITY","ListItemEdit","attributes","setAttributes","onReplace","clientId","style","mergeBlocks","contentWidth","setContentWidth","placeholder","content","blockIndex","hasInnerBlocks","indentationLevel","numberOfListItems","ordered","reversed","start","select","getBlockAttributes","getBlockCount","getBlockIndex","getBlockParentsByBlockName","getBlockRootClientId","currentIdentationLevel","length","currentBlockIndex","blockWithInnerBlocks","rootClientId","blockAttributes","totalListItems","isOrdered","isReversed","startValue","blockProps","innerBlocksProps","renderAppender","defaultPlaceholderFromScheme","currentTextColor","color","baseColors","text","defaultPlaceholderTextColor","defaultPlaceholderTextColorWithOpacity","styleWithPlaceholderOpacity","placeholderColor","preventDefault","onEnter","onSplit","onMerge","onSplitList","value","current","onReplaceList","blocks","args","onLayout","nativeEvent","prevState","width","layout","Math","floor","createElement","identifier","tagName","onChange","nextContent","placeholderTextColor","deleteEnter","containerWidth","group"],"sources":["@wordpress/block-library/src/list-item/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { useState, useCallback, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useSplit, useMerge, useEnter } from './hooks';\nimport { convertToListItems } from './utils';\nimport { IndentUI } from './edit.js';\nimport styles from './style.scss';\nimport ListStyleType from './list-style-type';\n\nconst OPACITY = '9e';\n\nexport default function ListItemEdit( {\n\tattributes,\n\tsetAttributes,\n\tonReplace,\n\tclientId,\n\tstyle,\n\tmergeBlocks,\n} ) {\n\tconst [ contentWidth, setContentWidth ] = useState();\n\tconst { placeholder, content } = attributes;\n\tconst {\n\t\tblockIndex,\n\t\thasInnerBlocks,\n\t\tindentationLevel,\n\t\tnumberOfListItems,\n\t\tordered,\n\t\treversed,\n\t\tstart,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockIndex,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst currentIdentationLevel = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/list-item',\n\t\t\t\ttrue\n\t\t\t).length;\n\t\t\tconst currentBlockIndex = getBlockIndex( clientId );\n\t\t\tconst blockWithInnerBlocks = getBlockCount( clientId ) > 0;\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\tconst blockAttributes = getBlockAttributes( rootClientId );\n\t\t\tconst totalListItems = getBlockCount( rootClientId );\n\t\t\tconst {\n\t\t\t\tordered: isOrdered,\n\t\t\t\treversed: isReversed,\n\t\t\t\tstart: startValue,\n\t\t\t} = blockAttributes || {};\n\n\t\t\treturn {\n\t\t\t\tblockIndex: currentBlockIndex,\n\t\t\t\thasInnerBlocks: blockWithInnerBlocks,\n\t\t\t\tindentationLevel: currentIdentationLevel,\n\t\t\t\tnumberOfListItems: totalListItems,\n\t\t\t\tordered: isOrdered,\n\t\t\t\treversed: isReversed,\n\t\t\t\tstart: startValue,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\t...( hasInnerBlocks && styles[ 'wp-block-list-item__nested-blocks' ] ),\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\trenderAppender: false,\n\t} );\n\n\t// Set default placeholder text color from light/dark scheme or base colors\n\tconst defaultPlaceholderFromScheme = usePreferredColorSchemeStyle(\n\t\tstyles[ 'wp-block-list-item__list-item-placeholder' ],\n\t\tstyles[ 'wp-block-list-item__list-item-placeholder--dark' ]\n\t);\n\n\tconst currentTextColor = style?.color || style?.baseColors?.color?.text;\n\n\tconst defaultPlaceholderTextColor = currentTextColor\n\t\t? currentTextColor\n\t\t: defaultPlaceholderFromScheme?.color;\n\n\t// Add hex opacity to default placeholder text color and style object\n\tconst defaultPlaceholderTextColorWithOpacity =\n\t\tdefaultPlaceholderTextColor + OPACITY;\n\n\tconst styleWithPlaceholderOpacity = {\n\t\t...style,\n\t\t...( style?.color && {\n\t\t\tplaceholderColor: style.color + OPACITY,\n\t\t} ),\n\t};\n\n\tconst preventDefault = useRef( false );\n\tconst { onEnter } = useEnter( { content, clientId }, preventDefault );\n\tconst onSplit = useSplit( clientId );\n\tconst onMerge = useMerge( clientId, mergeBlocks );\n\tconst onSplitList = useCallback(\n\t\t( value ) => {\n\t\t\tif ( ! preventDefault.current ) {\n\t\t\t\treturn onSplit( value );\n\t\t\t}\n\t\t},\n\t\t[ clientId, onSplit ]\n\t);\n\tconst onReplaceList = useCallback(\n\t\t( blocks, ...args ) => {\n\t\t\tif ( ! preventDefault.current ) {\n\t\t\t\tonReplace( convertToListItems( blocks ), ...args );\n\t\t\t}\n\t\t},\n\t\t[ clientId, onReplace, convertToListItems ]\n\t);\n\tconst onLayout = useCallback( ( { nativeEvent } ) => {\n\t\tsetContentWidth( ( prevState ) => {\n\t\t\tconst { width } = nativeEvent.layout;\n\n\t\t\tif ( ! prevState || prevState.width !== width ) {\n\t\t\t\treturn Math.floor( width );\n\t\t\t}\n\t\t\treturn prevState;\n\t\t} );\n\t}, [] );\n\n\treturn (\n\t\t<View style={ styles[ 'wp-block-list-item__list-item-parent' ] }>\n\t\t\t<View style={ styles[ 'wp-block-list-item__list-item' ] }>\n\t\t\t\t<View style={ styles[ 'wp-block-list-item__list-item-icon' ] }>\n\t\t\t\t\t<ListStyleType\n\t\t\t\t\t\tblockIndex={ blockIndex }\n\t\t\t\t\t\tindentationLevel={ indentationLevel }\n\t\t\t\t\t\tnumberOfListItems={ numberOfListItems }\n\t\t\t\t\t\tordered={ ordered }\n\t\t\t\t\t\treversed={ reversed }\n\t\t\t\t\t\tstart={ start }\n\t\t\t\t\t\tstyle={ style }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ styles[ 'wp-block-list-item__list-item-content' ] }\n\t\t\t\t\tonLayout={ onLayout }\n\t\t\t\t>\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"content\"\n\t\t\t\t\t\ttagName=\"p\"\n\t\t\t\t\t\tonChange={ ( nextContent ) =>\n\t\t\t\t\t\t\tsetAttributes( { content: nextContent } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\tplaceholder={ placeholder || __( 'List' ) }\n\t\t\t\t\t\tplaceholderTextColor={\n\t\t\t\t\t\t\tdefaultPlaceholderTextColorWithOpacity\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonSplit={ onSplitList }\n\t\t\t\t\t\tonMerge={ onMerge }\n\t\t\t\t\t\tonReplace={ onReplaceList }\n\t\t\t\t\t\tonEnter={ onEnter }\n\t\t\t\t\t\tstyle={ styleWithPlaceholderOpacity }\n\t\t\t\t\t\tdeleteEnter={ true }\n\t\t\t\t\t\tcontainerWidth={ contentWidth }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t\t<View { ...innerBlocksProps }></View>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<IndentUI clientId={ clientId } />\n\t\t\t</BlockControls>\n\t\t</View>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["View","RichText","useBlockProps","useInnerBlocksProps","BlockControls","store","blockEditorStore","__","usePreferredColorSchemeStyle","useSelect","useState","useCallback","useRef","useSplit","useMerge","useEnter","convertToListItems","IndentUI","styles","ListStyleType","OPACITY","ListItemEdit","attributes","setAttributes","onReplace","clientId","style","mergeBlocks","contentWidth","setContentWidth","placeholder","content","blockIndex","hasInnerBlocks","indentationLevel","numberOfListItems","ordered","reversed","start","select","getBlockAttributes","getBlockCount","getBlockIndex","getBlockParentsByBlockName","getBlockRootClientId","currentIdentationLevel","length","currentBlockIndex","blockWithInnerBlocks","rootClientId","blockAttributes","totalListItems","isOrdered","isReversed","startValue","blockProps","innerBlocksProps","renderAppender","defaultPlaceholderFromScheme","currentTextColor","color","baseColors","text","defaultPlaceholderTextColor","defaultPlaceholderTextColorWithOpacity","styleWithPlaceholderOpacity","placeholderColor","preventDefault","onEnter","onSplit","onMerge","onSplitList","value","current","onReplaceList","blocks","args","onLayout","nativeEvent","prevState","width","layout","Math","floor","createElement","identifier","tagName","onChange","nextContent","placeholderTextColor","deleteEnter","containerWidth","group"],"sources":["@wordpress/block-library/src/list-item/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { useState, useCallback, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useSplit, useMerge, useEnter } from './hooks';\nimport { convertToListItems } from './utils';\nimport { IndentUI } from './edit.js';\nimport styles from './style.scss';\nimport ListStyleType from './list-style-type';\n\nconst OPACITY = '9e';\n\nexport default function ListItemEdit( {\n\tattributes,\n\tsetAttributes,\n\tonReplace,\n\tclientId,\n\tstyle,\n\tmergeBlocks,\n} ) {\n\tconst [ contentWidth, setContentWidth ] = useState();\n\tconst { placeholder, content } = attributes;\n\tconst {\n\t\tblockIndex,\n\t\thasInnerBlocks,\n\t\tindentationLevel,\n\t\tnumberOfListItems,\n\t\tordered,\n\t\treversed,\n\t\tstart,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockIndex,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst currentIdentationLevel = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/list-item',\n\t\t\t\ttrue\n\t\t\t).length;\n\t\t\tconst currentBlockIndex = getBlockIndex( clientId );\n\t\t\tconst blockWithInnerBlocks = getBlockCount( clientId ) > 0;\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\tconst blockAttributes = getBlockAttributes( rootClientId );\n\t\t\tconst totalListItems = getBlockCount( rootClientId );\n\t\t\tconst {\n\t\t\t\tordered: isOrdered,\n\t\t\t\treversed: isReversed,\n\t\t\t\tstart: startValue,\n\t\t\t} = blockAttributes || {};\n\n\t\t\treturn {\n\t\t\t\tblockIndex: currentBlockIndex,\n\t\t\t\thasInnerBlocks: blockWithInnerBlocks,\n\t\t\t\tindentationLevel: currentIdentationLevel,\n\t\t\t\tnumberOfListItems: totalListItems,\n\t\t\t\tordered: isOrdered,\n\t\t\t\treversed: isReversed,\n\t\t\t\tstart: startValue,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\t...( hasInnerBlocks && styles[ 'wp-block-list-item__nested-blocks' ] ),\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\trenderAppender: false,\n\t} );\n\n\t// Set default placeholder text color from light/dark scheme or base colors\n\tconst defaultPlaceholderFromScheme = usePreferredColorSchemeStyle(\n\t\tstyles[ 'wp-block-list-item__list-item-placeholder' ],\n\t\tstyles[ 'wp-block-list-item__list-item-placeholder--dark' ]\n\t);\n\n\tconst currentTextColor = style?.color || style?.baseColors?.color?.text;\n\n\tconst defaultPlaceholderTextColor = currentTextColor\n\t\t? currentTextColor\n\t\t: defaultPlaceholderFromScheme?.color;\n\n\t// Add hex opacity to default placeholder text color and style object\n\tconst defaultPlaceholderTextColorWithOpacity =\n\t\tdefaultPlaceholderTextColor + OPACITY;\n\n\tconst styleWithPlaceholderOpacity = {\n\t\t...style,\n\t\t...( style?.color && {\n\t\t\tplaceholderColor: style.color + OPACITY,\n\t\t} ),\n\t};\n\n\tconst preventDefault = useRef( false );\n\tconst { onEnter } = useEnter( { content, clientId }, preventDefault );\n\tconst onSplit = useSplit( clientId );\n\tconst onMerge = useMerge( clientId, mergeBlocks );\n\tconst onSplitList = useCallback(\n\t\t( value ) => {\n\t\t\tif ( ! preventDefault.current ) {\n\t\t\t\treturn onSplit( value );\n\t\t\t}\n\t\t},\n\t\t[ clientId, onSplit ]\n\t);\n\tconst onReplaceList = useCallback(\n\t\t( blocks, ...args ) => {\n\t\t\tif ( ! preventDefault.current ) {\n\t\t\t\tonReplace( convertToListItems( blocks ), ...args );\n\t\t\t}\n\t\t},\n\t\t[ clientId, onReplace, convertToListItems ]\n\t);\n\tconst onLayout = useCallback( ( { nativeEvent } ) => {\n\t\tsetContentWidth( ( prevState ) => {\n\t\t\tconst { width } = nativeEvent.layout;\n\n\t\t\tif ( ! prevState || prevState.width !== width ) {\n\t\t\t\treturn Math.floor( width );\n\t\t\t}\n\t\t\treturn prevState;\n\t\t} );\n\t}, [] );\n\n\treturn (\n\t\t<View style={ styles[ 'wp-block-list-item__list-item-parent' ] }>\n\t\t\t<View style={ styles[ 'wp-block-list-item__list-item' ] }>\n\t\t\t\t<View style={ styles[ 'wp-block-list-item__list-item-icon' ] }>\n\t\t\t\t\t<ListStyleType\n\t\t\t\t\t\tblockIndex={ blockIndex }\n\t\t\t\t\t\tindentationLevel={ indentationLevel }\n\t\t\t\t\t\tnumberOfListItems={ numberOfListItems }\n\t\t\t\t\t\tordered={ ordered }\n\t\t\t\t\t\treversed={ reversed }\n\t\t\t\t\t\tstart={ start }\n\t\t\t\t\t\tstyle={ style }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ styles[ 'wp-block-list-item__list-item-content' ] }\n\t\t\t\t\tonLayout={ onLayout }\n\t\t\t\t>\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"content\"\n\t\t\t\t\t\ttagName=\"p\"\n\t\t\t\t\t\tonChange={ ( nextContent ) =>\n\t\t\t\t\t\t\tsetAttributes( { content: nextContent } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\tplaceholder={ placeholder || __( 'List' ) }\n\t\t\t\t\t\tplaceholderTextColor={\n\t\t\t\t\t\t\tdefaultPlaceholderTextColorWithOpacity\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonSplit={ onSplitList }\n\t\t\t\t\t\tonMerge={ onMerge }\n\t\t\t\t\t\tonReplace={ onReplaceList }\n\t\t\t\t\t\tonEnter={ onEnter }\n\t\t\t\t\t\tstyle={ styleWithPlaceholderOpacity }\n\t\t\t\t\t\tdeleteEnter\n\t\t\t\t\t\tcontainerWidth={ contentWidth }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t\t<View { ...innerBlocksProps }></View>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<IndentUI clientId={ clientId } />\n\t\t\t</BlockControls>\n\t\t</View>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,IAAI,QAAQ,cAAc;;AAEnC;AACA;AACA;AACA,SACCC,QAAQ,EACRC,aAAa,EACbC,mBAAmB,EACnBC,aAAa,EACbC,KAAK,IAAIC,gBAAgB,QACnB,yBAAyB;AAChC,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,4BAA4B,QAAQ,oBAAoB;AACjE,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,QAAQ,EAAEC,WAAW,EAAEC,MAAM,QAAQ,oBAAoB;;AAElE;AACA;AACA;AACA,SAASC,QAAQ,EAAEC,QAAQ,EAAEC,QAAQ,QAAQ,SAAS;AACtD,SAASC,kBAAkB,QAAQ,SAAS;AAC5C,SAASC,QAAQ,QAAQ,WAAW;AACpC,OAAOC,MAAM,MAAM,cAAc;AACjC,OAAOC,aAAa,MAAM,mBAAmB;AAE7C,MAAMC,OAAO,GAAG,IAAI;AAEpB,eAAe,SAASC,YAAYA,CAAE;EACrCC,UAAU;EACVC,aAAa;EACbC,SAAS;EACTC,QAAQ;EACRC,KAAK;EACLC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,YAAY,EAAEC,eAAe,CAAE,GAAGnB,QAAQ,CAAC,CAAC;EACpD,MAAM;IAAEoB,WAAW;IAAEC;EAAQ,CAAC,GAAGT,UAAU;EAC3C,MAAM;IACLU,UAAU;IACVC,cAAc;IACdC,gBAAgB;IAChBC,iBAAiB;IACjBC,OAAO;IACPC,QAAQ;IACRC;EACD,CAAC,GAAG7B,SAAS,CACV8B,MAAM,IAAM;IACb,MAAM;MACLC,kBAAkB;MAClBC,aAAa;MACbC,aAAa;MACbC,0BAA0B;MAC1BC;IACD,CAAC,GAAGL,MAAM,CAAEjC,gBAAiB,CAAC;IAC9B,MAAMuC,sBAAsB,GAAGF,0BAA0B,CACxDlB,QAAQ,EACR,gBAAgB,EAChB,IACD,CAAC,CAACqB,MAAM;IACR,MAAMC,iBAAiB,GAAGL,aAAa,CAAEjB,QAAS,CAAC;IACnD,MAAMuB,oBAAoB,GAAGP,aAAa,CAAEhB,QAAS,CAAC,GAAG,CAAC;IAC1D,MAAMwB,YAAY,GAAGL,oBAAoB,CAAEnB,QAAS,CAAC;IACrD,MAAMyB,eAAe,GAAGV,kBAAkB,CAAES,YAAa,CAAC;IAC1D,MAAME,cAAc,GAAGV,aAAa,CAAEQ,YAAa,CAAC;IACpD,MAAM;MACLb,OAAO,EAAEgB,SAAS;MAClBf,QAAQ,EAAEgB,UAAU;MACpBf,KAAK,EAAEgB;IACR,CAAC,GAAGJ,eAAe,IAAI,CAAC,CAAC;IAEzB,OAAO;MACNlB,UAAU,EAAEe,iBAAiB;MAC7Bd,cAAc,EAAEe,oBAAoB;MACpCd,gBAAgB,EAAEW,sBAAsB;MACxCV,iBAAiB,EAAEgB,cAAc;MACjCf,OAAO,EAAEgB,SAAS;MAClBf,QAAQ,EAAEgB,UAAU;MACpBf,KAAK,EAAEgB;IACR,CAAC;EACF,CAAC,EACD,CAAE7B,QAAQ,CACX,CAAC;EAED,MAAM8B,UAAU,GAAGrD,aAAa,CAAE;IACjC,IAAK+B,cAAc,IAAIf,MAAM,CAAE,mCAAmC,CAAE;EACrE,CAAE,CAAC;EAEH,MAAMsC,gBAAgB,GAAGrD,mBAAmB,CAAEoD,UAAU,EAAE;IACzDE,cAAc,EAAE;EACjB,CAAE,CAAC;;EAEH;EACA,MAAMC,4BAA4B,GAAGlD,4BAA4B,CAChEU,MAAM,CAAE,2CAA2C,CAAE,EACrDA,MAAM,CAAE,iDAAiD,CAC1D,CAAC;EAED,MAAMyC,gBAAgB,GAAGjC,KAAK,EAAEkC,KAAK,IAAIlC,KAAK,EAAEmC,UAAU,EAAED,KAAK,EAAEE,IAAI;EAEvE,MAAMC,2BAA2B,GAAGJ,gBAAgB,GACjDA,gBAAgB,GAChBD,4BAA4B,EAAEE,KAAK;;EAEtC;EACA,MAAMI,sCAAsC,GAC3CD,2BAA2B,GAAG3C,OAAO;EAEtC,MAAM6C,2BAA2B,GAAG;IACnC,GAAGvC,KAAK;IACR,IAAKA,KAAK,EAAEkC,KAAK,IAAI;MACpBM,gBAAgB,EAAExC,KAAK,CAACkC,KAAK,GAAGxC;IACjC,CAAC;EACF,CAAC;EAED,MAAM+C,cAAc,GAAGvD,MAAM,CAAE,KAAM,CAAC;EACtC,MAAM;IAAEwD;EAAQ,CAAC,GAAGrD,QAAQ,CAAE;IAAEgB,OAAO;IAAEN;EAAS,CAAC,EAAE0C,cAAe,CAAC;EACrE,MAAME,OAAO,GAAGxD,QAAQ,CAAEY,QAAS,CAAC;EACpC,MAAM6C,OAAO,GAAGxD,QAAQ,CAAEW,QAAQ,EAAEE,WAAY,CAAC;EACjD,MAAM4C,WAAW,GAAG5D,WAAW,CAC5B6D,KAAK,IAAM;IACZ,IAAK,CAAEL,cAAc,CAACM,OAAO,EAAG;MAC/B,OAAOJ,OAAO,CAAEG,KAAM,CAAC;IACxB;EACD,CAAC,EACD,CAAE/C,QAAQ,EAAE4C,OAAO,CACpB,CAAC;EACD,MAAMK,aAAa,GAAG/D,WAAW,CAChC,CAAEgE,MAAM,EAAE,GAAGC,IAAI,KAAM;IACtB,IAAK,CAAET,cAAc,CAACM,OAAO,EAAG;MAC/BjD,SAAS,CAAER,kBAAkB,CAAE2D,MAAO,CAAC,EAAE,GAAGC,IAAK,CAAC;IACnD;EACD,CAAC,EACD,CAAEnD,QAAQ,EAAED,SAAS,EAAER,kBAAkB,CAC1C,CAAC;EACD,MAAM6D,QAAQ,GAAGlE,WAAW,CAAE,CAAE;IAAEmE;EAAY,CAAC,KAAM;IACpDjD,eAAe,CAAIkD,SAAS,IAAM;MACjC,MAAM;QAAEC;MAAM,CAAC,GAAGF,WAAW,CAACG,MAAM;MAEpC,IAAK,CAAEF,SAAS,IAAIA,SAAS,CAACC,KAAK,KAAKA,KAAK,EAAG;QAC/C,OAAOE,IAAI,CAACC,KAAK,CAAEH,KAAM,CAAC;MAC3B;MACA,OAAOD,SAAS;IACjB,CAAE,CAAC;EACJ,CAAC,EAAE,EAAG,CAAC;EAEP,OACCK,aAAA,CAACpF,IAAI;IAAC0B,KAAK,EAAGR,MAAM,CAAE,sCAAsC;EAAI,GAC/DkE,aAAA,CAACpF,IAAI;IAAC0B,KAAK,EAAGR,MAAM,CAAE,+BAA+B;EAAI,GACxDkE,aAAA,CAACpF,IAAI;IAAC0B,KAAK,EAAGR,MAAM,CAAE,oCAAoC;EAAI,GAC7DkE,aAAA,CAACjE,aAAa;IACba,UAAU,EAAGA,UAAY;IACzBE,gBAAgB,EAAGA,gBAAkB;IACrCC,iBAAiB,EAAGA,iBAAmB;IACvCC,OAAO,EAAGA,OAAS;IACnBC,QAAQ,EAAGA,QAAU;IACrBC,KAAK,EAAGA,KAAO;IACfZ,KAAK,EAAGA;EAAO,CACf,CACI,CAAC,EACP0D,aAAA,CAACpF,IAAI;IACJ0B,KAAK,EAAGR,MAAM,CAAE,uCAAuC,CAAI;IAC3D2D,QAAQ,EAAGA;EAAU,GAErBO,aAAA,CAACnF,QAAQ;IACRoF,UAAU,EAAC,SAAS;IACpBC,OAAO,EAAC,GAAG;IACXC,QAAQ,EAAKC,WAAW,IACvBjE,aAAa,CAAE;MAAEQ,OAAO,EAAEyD;IAAY,CAAE,CACxC;IACDhB,KAAK,EAAGzC,OAAS;IACjBD,WAAW,EAAGA,WAAW,IAAIvB,EAAE,CAAE,MAAO,CAAG;IAC3CkF,oBAAoB,EACnBzB,sCACA;IACDK,OAAO,EAAGE,WAAa;IACvBD,OAAO,EAAGA,OAAS;IACnB9C,SAAS,EAAGkD,aAAe;IAC3BN,OAAO,EAAGA,OAAS;IACnB1C,KAAK,EAAGuC,2BAA6B;IACrCyB,WAAW;IACXC,cAAc,EAAG/D;EAAc,CAC/B,CACI,CACD,CAAC,EACPwD,aAAA,CAACpF,IAAI;IAAA,GAAMwD;EAAgB,CAAS,CAAC,EACrC4B,aAAA,CAAChF,aAAa;IAACwF,KAAK,EAAC;EAAO,GAC3BR,aAAA,CAACnE,QAAQ;IAACQ,QAAQ,EAAGA;EAAU,CAAE,CACnB,CACV,CAAC;AAET"}
@@ -4,5 +4,4 @@ export { default as useEnter } from './use-enter';
4
4
  export { default as useSpace } from './use-space';
5
5
  export { default as useSplit } from './use-split';
6
6
  export { default as useMerge } from './use-merge';
7
- export { default as useCopy } from './use-copy';
8
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["default","useOutdentListItem","useIndentListItem","useEnter","useSpace","useSplit","useMerge","useCopy"],"sources":["@wordpress/block-library/src/list-item/hooks/index.js"],"sourcesContent":["export { default as useOutdentListItem } from './use-outdent-list-item';\nexport { default as useIndentListItem } from './use-indent-list-item';\nexport { default as useEnter } from './use-enter';\nexport { default as useSpace } from './use-space';\nexport { default as useSplit } from './use-split';\nexport { default as useMerge } from './use-merge';\nexport { default as useCopy } from './use-copy';\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,kBAAkB,QAAQ,yBAAyB;AACvE,SAASD,OAAO,IAAIE,iBAAiB,QAAQ,wBAAwB;AACrE,SAASF,OAAO,IAAIG,QAAQ,QAAQ,aAAa;AACjD,SAASH,OAAO,IAAII,QAAQ,QAAQ,aAAa;AACjD,SAASJ,OAAO,IAAIK,QAAQ,QAAQ,aAAa;AACjD,SAASL,OAAO,IAAIM,QAAQ,QAAQ,aAAa;AACjD,SAASN,OAAO,IAAIO,OAAO,QAAQ,YAAY"}
1
+ {"version":3,"names":["default","useOutdentListItem","useIndentListItem","useEnter","useSpace","useSplit","useMerge"],"sources":["@wordpress/block-library/src/list-item/hooks/index.js"],"sourcesContent":["export { default as useOutdentListItem } from './use-outdent-list-item';\nexport { default as useIndentListItem } from './use-indent-list-item';\nexport { default as useEnter } from './use-enter';\nexport { default as useSpace } from './use-space';\nexport { default as useSplit } from './use-split';\nexport { default as useMerge } from './use-merge';\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,kBAAkB,QAAQ,yBAAyB;AACvE,SAASD,OAAO,IAAIE,iBAAiB,QAAQ,wBAAwB;AACrE,SAASF,OAAO,IAAIG,QAAQ,QAAQ,aAAa;AACjD,SAASH,OAAO,IAAII,QAAQ,QAAQ,aAAa;AACjD,SAASJ,OAAO,IAAIK,QAAQ,QAAQ,aAAa;AACjD,SAASL,OAAO,IAAIM,QAAQ,QAAQ,aAAa"}
@@ -47,6 +47,7 @@ export default function useIndentListItem(clientId) {
47
47
  } else {
48
48
  multiSelect(clonedBlocks[0].clientId, clonedBlocks[clonedBlocks.length - 1].clientId);
49
49
  }
50
+ return true;
50
51
  }, [clientId]);
51
52
  }
52
53
  //# sourceMappingURL=use-indent-list-item.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useSelect","useDispatch","store","blockEditorStore","createBlock","cloneBlock","useIndentListItem","clientId","replaceBlocks","selectionChange","multiSelect","getBlock","getPreviousBlockClientId","getSelectionStart","getSelectionEnd","hasMultiSelection","getMultiSelectedBlockClientIds","_hasMultiSelection","clientIds","clonedBlocks","map","_clientId","previousSiblingId","newListItem","innerBlocks","length","push","selectionStart","selectionEnd","attributeKey","offset"],"sources":["@wordpress/block-library/src/list-item/hooks/use-indent-list-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { createBlock, cloneBlock } from '@wordpress/blocks';\n\nexport default function useIndentListItem( clientId ) {\n\tconst { replaceBlocks, selectionChange, multiSelect } =\n\t\tuseDispatch( blockEditorStore );\n\tconst {\n\t\tgetBlock,\n\t\tgetPreviousBlockClientId,\n\t\tgetSelectionStart,\n\t\tgetSelectionEnd,\n\t\thasMultiSelection,\n\t\tgetMultiSelectedBlockClientIds,\n\t} = useSelect( blockEditorStore );\n\treturn useCallback( () => {\n\t\tconst _hasMultiSelection = hasMultiSelection();\n\t\tconst clientIds = _hasMultiSelection\n\t\t\t? getMultiSelectedBlockClientIds()\n\t\t\t: [ clientId ];\n\t\tconst clonedBlocks = clientIds.map( ( _clientId ) =>\n\t\t\tcloneBlock( getBlock( _clientId ) )\n\t\t);\n\t\tconst previousSiblingId = getPreviousBlockClientId( clientId );\n\t\tconst newListItem = cloneBlock( getBlock( previousSiblingId ) );\n\t\t// If the sibling has no innerBlocks, create a new `list` block.\n\t\tif ( ! newListItem.innerBlocks?.length ) {\n\t\t\tnewListItem.innerBlocks = [ createBlock( 'core/list' ) ];\n\t\t}\n\t\t// A list item usually has one `list`, but it's possible to have\n\t\t// more. So we need to preserve the previous `list` blocks and\n\t\t// merge the new blocks to the last `list`.\n\t\tnewListItem.innerBlocks[\n\t\t\tnewListItem.innerBlocks.length - 1\n\t\t].innerBlocks.push( ...clonedBlocks );\n\n\t\t// We get the selection start/end here, because when\n\t\t// we replace blocks, the selection is updated too.\n\t\tconst selectionStart = getSelectionStart();\n\t\tconst selectionEnd = getSelectionEnd();\n\t\t// Replace the previous sibling of the block being indented and the indented blocks,\n\t\t// with a new block whose attributes are equal to the ones of the previous sibling and\n\t\t// whose descendants are the children of the previous sibling, followed by the indented blocks.\n\t\treplaceBlocks( [ previousSiblingId, ...clientIds ], [ newListItem ] );\n\t\tif ( ! _hasMultiSelection ) {\n\t\t\tselectionChange(\n\t\t\t\tclonedBlocks[ 0 ].clientId,\n\t\t\t\tselectionEnd.attributeKey,\n\t\t\t\tselectionEnd.clientId === selectionStart.clientId\n\t\t\t\t\t? selectionStart.offset\n\t\t\t\t\t: selectionEnd.offset,\n\t\t\t\tselectionEnd.offset\n\t\t\t);\n\t\t} else {\n\t\t\tmultiSelect(\n\t\t\t\tclonedBlocks[ 0 ].clientId,\n\t\t\t\tclonedBlocks[ clonedBlocks.length - 1 ].clientId\n\t\t\t);\n\t\t}\n\t}, [ clientId ] );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,QAAQ,oBAAoB;AAChD,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;AACnE,SAASC,WAAW,EAAEC,UAAU,QAAQ,mBAAmB;AAE3D,eAAe,SAASC,iBAAiBA,CAAEC,QAAQ,EAAG;EACrD,MAAM;IAAEC,aAAa;IAAEC,eAAe;IAAEC;EAAY,CAAC,GACpDT,WAAW,CAAEE,gBAAiB,CAAC;EAChC,MAAM;IACLQ,QAAQ;IACRC,wBAAwB;IACxBC,iBAAiB;IACjBC,eAAe;IACfC,iBAAiB;IACjBC;EACD,CAAC,GAAGhB,SAAS,CAAEG,gBAAiB,CAAC;EACjC,OAAOJ,WAAW,CAAE,MAAM;IACzB,MAAMkB,kBAAkB,GAAGF,iBAAiB,CAAC,CAAC;IAC9C,MAAMG,SAAS,GAAGD,kBAAkB,GACjCD,8BAA8B,CAAC,CAAC,GAChC,CAAET,QAAQ,CAAE;IACf,MAAMY,YAAY,GAAGD,SAAS,CAACE,GAAG,CAAIC,SAAS,IAC9ChB,UAAU,CAAEM,QAAQ,CAAEU,SAAU,CAAE,CACnC,CAAC;IACD,MAAMC,iBAAiB,GAAGV,wBAAwB,CAAEL,QAAS,CAAC;IAC9D,MAAMgB,WAAW,GAAGlB,UAAU,CAAEM,QAAQ,CAAEW,iBAAkB,CAAE,CAAC;IAC/D;IACA,IAAK,CAAEC,WAAW,CAACC,WAAW,EAAEC,MAAM,EAAG;MACxCF,WAAW,CAACC,WAAW,GAAG,CAAEpB,WAAW,CAAE,WAAY,CAAC,CAAE;IACzD;IACA;IACA;IACA;IACAmB,WAAW,CAACC,WAAW,CACtBD,WAAW,CAACC,WAAW,CAACC,MAAM,GAAG,CAAC,CAClC,CAACD,WAAW,CAACE,IAAI,CAAE,GAAGP,YAAa,CAAC;;IAErC;IACA;IACA,MAAMQ,cAAc,GAAGd,iBAAiB,CAAC,CAAC;IAC1C,MAAMe,YAAY,GAAGd,eAAe,CAAC,CAAC;IACtC;IACA;IACA;IACAN,aAAa,CAAE,CAAEc,iBAAiB,EAAE,GAAGJ,SAAS,CAAE,EAAE,CAAEK,WAAW,CAAG,CAAC;IACrE,IAAK,CAAEN,kBAAkB,EAAG;MAC3BR,eAAe,CACdU,YAAY,CAAE,CAAC,CAAE,CAACZ,QAAQ,EAC1BqB,YAAY,CAACC,YAAY,EACzBD,YAAY,CAACrB,QAAQ,KAAKoB,cAAc,CAACpB,QAAQ,GAC9CoB,cAAc,CAACG,MAAM,GACrBF,YAAY,CAACE,MAAM,EACtBF,YAAY,CAACE,MACd,CAAC;IACF,CAAC,MAAM;MACNpB,WAAW,CACVS,YAAY,CAAE,CAAC,CAAE,CAACZ,QAAQ,EAC1BY,YAAY,CAAEA,YAAY,CAACM,MAAM,GAAG,CAAC,CAAE,CAAClB,QACzC,CAAC;IACF;EACD,CAAC,EAAE,CAAEA,QAAQ,CAAG,CAAC;AAClB"}
1
+ {"version":3,"names":["useCallback","useSelect","useDispatch","store","blockEditorStore","createBlock","cloneBlock","useIndentListItem","clientId","replaceBlocks","selectionChange","multiSelect","getBlock","getPreviousBlockClientId","getSelectionStart","getSelectionEnd","hasMultiSelection","getMultiSelectedBlockClientIds","_hasMultiSelection","clientIds","clonedBlocks","map","_clientId","previousSiblingId","newListItem","innerBlocks","length","push","selectionStart","selectionEnd","attributeKey","offset"],"sources":["@wordpress/block-library/src/list-item/hooks/use-indent-list-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { createBlock, cloneBlock } from '@wordpress/blocks';\n\nexport default function useIndentListItem( clientId ) {\n\tconst { replaceBlocks, selectionChange, multiSelect } =\n\t\tuseDispatch( blockEditorStore );\n\tconst {\n\t\tgetBlock,\n\t\tgetPreviousBlockClientId,\n\t\tgetSelectionStart,\n\t\tgetSelectionEnd,\n\t\thasMultiSelection,\n\t\tgetMultiSelectedBlockClientIds,\n\t} = useSelect( blockEditorStore );\n\treturn useCallback( () => {\n\t\tconst _hasMultiSelection = hasMultiSelection();\n\t\tconst clientIds = _hasMultiSelection\n\t\t\t? getMultiSelectedBlockClientIds()\n\t\t\t: [ clientId ];\n\t\tconst clonedBlocks = clientIds.map( ( _clientId ) =>\n\t\t\tcloneBlock( getBlock( _clientId ) )\n\t\t);\n\t\tconst previousSiblingId = getPreviousBlockClientId( clientId );\n\t\tconst newListItem = cloneBlock( getBlock( previousSiblingId ) );\n\t\t// If the sibling has no innerBlocks, create a new `list` block.\n\t\tif ( ! newListItem.innerBlocks?.length ) {\n\t\t\tnewListItem.innerBlocks = [ createBlock( 'core/list' ) ];\n\t\t}\n\t\t// A list item usually has one `list`, but it's possible to have\n\t\t// more. So we need to preserve the previous `list` blocks and\n\t\t// merge the new blocks to the last `list`.\n\t\tnewListItem.innerBlocks[\n\t\t\tnewListItem.innerBlocks.length - 1\n\t\t].innerBlocks.push( ...clonedBlocks );\n\n\t\t// We get the selection start/end here, because when\n\t\t// we replace blocks, the selection is updated too.\n\t\tconst selectionStart = getSelectionStart();\n\t\tconst selectionEnd = getSelectionEnd();\n\t\t// Replace the previous sibling of the block being indented and the indented blocks,\n\t\t// with a new block whose attributes are equal to the ones of the previous sibling and\n\t\t// whose descendants are the children of the previous sibling, followed by the indented blocks.\n\t\treplaceBlocks( [ previousSiblingId, ...clientIds ], [ newListItem ] );\n\t\tif ( ! _hasMultiSelection ) {\n\t\t\tselectionChange(\n\t\t\t\tclonedBlocks[ 0 ].clientId,\n\t\t\t\tselectionEnd.attributeKey,\n\t\t\t\tselectionEnd.clientId === selectionStart.clientId\n\t\t\t\t\t? selectionStart.offset\n\t\t\t\t\t: selectionEnd.offset,\n\t\t\t\tselectionEnd.offset\n\t\t\t);\n\t\t} else {\n\t\t\tmultiSelect(\n\t\t\t\tclonedBlocks[ 0 ].clientId,\n\t\t\t\tclonedBlocks[ clonedBlocks.length - 1 ].clientId\n\t\t\t);\n\t\t}\n\n\t\treturn true;\n\t}, [ clientId ] );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,QAAQ,oBAAoB;AAChD,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;AACnE,SAASC,WAAW,EAAEC,UAAU,QAAQ,mBAAmB;AAE3D,eAAe,SAASC,iBAAiBA,CAAEC,QAAQ,EAAG;EACrD,MAAM;IAAEC,aAAa;IAAEC,eAAe;IAAEC;EAAY,CAAC,GACpDT,WAAW,CAAEE,gBAAiB,CAAC;EAChC,MAAM;IACLQ,QAAQ;IACRC,wBAAwB;IACxBC,iBAAiB;IACjBC,eAAe;IACfC,iBAAiB;IACjBC;EACD,CAAC,GAAGhB,SAAS,CAAEG,gBAAiB,CAAC;EACjC,OAAOJ,WAAW,CAAE,MAAM;IACzB,MAAMkB,kBAAkB,GAAGF,iBAAiB,CAAC,CAAC;IAC9C,MAAMG,SAAS,GAAGD,kBAAkB,GACjCD,8BAA8B,CAAC,CAAC,GAChC,CAAET,QAAQ,CAAE;IACf,MAAMY,YAAY,GAAGD,SAAS,CAACE,GAAG,CAAIC,SAAS,IAC9ChB,UAAU,CAAEM,QAAQ,CAAEU,SAAU,CAAE,CACnC,CAAC;IACD,MAAMC,iBAAiB,GAAGV,wBAAwB,CAAEL,QAAS,CAAC;IAC9D,MAAMgB,WAAW,GAAGlB,UAAU,CAAEM,QAAQ,CAAEW,iBAAkB,CAAE,CAAC;IAC/D;IACA,IAAK,CAAEC,WAAW,CAACC,WAAW,EAAEC,MAAM,EAAG;MACxCF,WAAW,CAACC,WAAW,GAAG,CAAEpB,WAAW,CAAE,WAAY,CAAC,CAAE;IACzD;IACA;IACA;IACA;IACAmB,WAAW,CAACC,WAAW,CACtBD,WAAW,CAACC,WAAW,CAACC,MAAM,GAAG,CAAC,CAClC,CAACD,WAAW,CAACE,IAAI,CAAE,GAAGP,YAAa,CAAC;;IAErC;IACA;IACA,MAAMQ,cAAc,GAAGd,iBAAiB,CAAC,CAAC;IAC1C,MAAMe,YAAY,GAAGd,eAAe,CAAC,CAAC;IACtC;IACA;IACA;IACAN,aAAa,CAAE,CAAEc,iBAAiB,EAAE,GAAGJ,SAAS,CAAE,EAAE,CAAEK,WAAW,CAAG,CAAC;IACrE,IAAK,CAAEN,kBAAkB,EAAG;MAC3BR,eAAe,CACdU,YAAY,CAAE,CAAC,CAAE,CAACZ,QAAQ,EAC1BqB,YAAY,CAACC,YAAY,EACzBD,YAAY,CAACrB,QAAQ,KAAKoB,cAAc,CAACpB,QAAQ,GAC9CoB,cAAc,CAACG,MAAM,GACrBF,YAAY,CAACE,MAAM,EACtBF,YAAY,CAACE,MACd,CAAC;IACF,CAAC,MAAM;MACNpB,WAAW,CACVS,YAAY,CAAE,CAAC,CAAE,CAACZ,QAAQ,EAC1BY,YAAY,CAAEA,YAAY,CAACM,MAAM,GAAG,CAAC,CAAE,CAAClB,QACzC,CAAC;IACF;IAEA,OAAO,IAAI;EACZ,CAAC,EAAE,CAAEA,QAAQ,CAAG,CAAC;AAClB"}