@wordpress/block-library 7.11.0 → 7.13.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 (817) hide show
  1. package/CHANGELOG.md +9 -1
  2. package/build/archives/edit.js +7 -0
  3. package/build/archives/edit.js.map +1 -1
  4. package/build/archives/index.js +9 -1
  5. package/build/archives/index.js.map +1 -1
  6. package/build/audio/index.js +4 -0
  7. package/build/audio/index.js.map +1 -1
  8. package/build/block/edit.js +4 -2
  9. package/build/block/edit.js.map +1 -1
  10. package/build/block/edit.native.js +4 -2
  11. package/build/block/edit.native.js.map +1 -1
  12. package/build/button/deprecated.js +14 -5
  13. package/build/button/deprecated.js.map +1 -1
  14. package/build/button/index.js +1 -1
  15. package/build/calendar/edit.js +12 -5
  16. package/build/calendar/edit.js.map +1 -1
  17. package/build/categories/edit.js +3 -1
  18. package/build/categories/edit.js.map +1 -1
  19. package/build/categories/index.js +14 -1
  20. package/build/categories/index.js.map +1 -1
  21. package/build/code/index.js +4 -2
  22. package/build/code/index.js.map +1 -1
  23. package/build/column/index.js +13 -0
  24. package/build/column/index.js.map +1 -1
  25. package/build/columns/deprecated.js +16 -5
  26. package/build/columns/deprecated.js.map +1 -1
  27. package/build/columns/edit.js +6 -2
  28. package/build/columns/edit.js.map +1 -1
  29. package/build/columns/edit.native.js +8 -3
  30. package/build/columns/edit.native.js.map +1 -1
  31. package/build/columns/index.js +13 -0
  32. package/build/columns/index.js.map +1 -1
  33. package/build/comment-author-name/index.js +5 -1
  34. package/build/comment-author-name/index.js.map +1 -1
  35. package/build/comment-content/index.js +5 -1
  36. package/build/comment-content/index.js.map +1 -1
  37. package/build/comment-date/index.js +1 -0
  38. package/build/comment-date/index.js.map +1 -1
  39. package/build/comment-edit-link/index.js +5 -1
  40. package/build/comment-edit-link/index.js.map +1 -1
  41. package/build/comment-reply-link/index.js +5 -1
  42. package/build/comment-reply-link/index.js.map +1 -1
  43. package/build/comment-template/index.js +14 -1
  44. package/build/comment-template/index.js.map +1 -1
  45. package/build/comments/index.js +13 -0
  46. package/build/comments/index.js.map +1 -1
  47. package/build/comments-pagination/index.js +13 -0
  48. package/build/comments-pagination/index.js.map +1 -1
  49. package/build/comments-pagination-next/index.js +4 -2
  50. package/build/comments-pagination-next/index.js.map +1 -1
  51. package/build/comments-pagination-numbers/edit.js +5 -1
  52. package/build/comments-pagination-numbers/edit.js.map +1 -1
  53. package/build/comments-pagination-numbers/index.js +14 -1
  54. package/build/comments-pagination-numbers/index.js.map +1 -1
  55. package/build/comments-pagination-previous/index.js +4 -2
  56. package/build/comments-pagination-previous/index.js.map +1 -1
  57. package/build/comments-title/deprecated.js +4 -2
  58. package/build/comments-title/deprecated.js.map +1 -1
  59. package/build/comments-title/index.js +4 -2
  60. package/build/comments-title/index.js.map +1 -1
  61. package/build/cover/deprecated.js +20 -5
  62. package/build/cover/deprecated.js.map +1 -1
  63. package/build/cover/edit/resizable-cover.js +6 -0
  64. package/build/cover/edit/resizable-cover.js.map +1 -1
  65. package/build/cover/index.js +13 -0
  66. package/build/cover/index.js.map +1 -1
  67. package/build/cover/shared.js +1 -1
  68. package/build/cover/shared.js.map +1 -1
  69. package/build/embed/icons.js +1 -1
  70. package/build/embed/icons.js.map +1 -1
  71. package/build/gallery/deprecated.js +6 -1
  72. package/build/gallery/deprecated.js.map +1 -1
  73. package/build/gallery/edit.js +15 -2
  74. package/build/gallery/edit.js.map +1 -1
  75. package/build/gallery/index.js +5 -0
  76. package/build/gallery/index.js.map +1 -1
  77. package/build/gallery/transforms.js +20 -7
  78. package/build/gallery/transforms.js.map +1 -1
  79. package/build/gallery/utils.js +7 -6
  80. package/build/gallery/utils.js.map +1 -1
  81. package/build/group/deprecated.js +108 -12
  82. package/build/group/deprecated.js.map +1 -1
  83. package/build/group/edit.js +23 -1
  84. package/build/group/edit.js.map +1 -1
  85. package/build/group/index.js +10 -2
  86. package/build/group/index.js.map +1 -1
  87. package/build/group/transforms.js +5 -0
  88. package/build/group/transforms.js.map +1 -1
  89. package/build/group/variations.js +8 -8
  90. package/build/group/variations.js.map +1 -1
  91. package/build/heading/deprecated.js +5 -3
  92. package/build/heading/deprecated.js.map +1 -1
  93. package/build/heading/index.js +3 -1
  94. package/build/heading/index.js.map +1 -1
  95. package/build/heading/transforms.js +3 -1
  96. package/build/heading/transforms.js.map +1 -1
  97. package/build/home-link/edit.js +8 -4
  98. package/build/home-link/edit.js.map +1 -1
  99. package/build/image/edit.js +13 -1
  100. package/build/image/edit.js.map +1 -1
  101. package/build/image/index.js +13 -7
  102. package/build/image/index.js.map +1 -1
  103. package/build/index.native.js +23 -7
  104. package/build/index.native.js.map +1 -1
  105. package/build/list/index.js +10 -0
  106. package/build/list/index.js.map +1 -1
  107. package/build/list/v2/edit.js +16 -5
  108. package/build/list/v2/edit.js.map +1 -1
  109. package/build/list/v2/tag-name.js +31 -0
  110. package/build/list/v2/tag-name.js.map +1 -0
  111. package/build/list/v2/tag-name.native.js +32 -0
  112. package/build/list/v2/tag-name.native.js.map +1 -0
  113. package/build/list/v2/transforms.js +1 -11
  114. package/build/list/v2/transforms.js.map +1 -1
  115. package/build/list-item/edit.js +4 -1
  116. package/build/list-item/edit.js.map +1 -1
  117. package/build/list-item/edit.native.js +158 -0
  118. package/build/list-item/edit.native.js.map +1 -0
  119. package/build/list-item/hooks/index.js +8 -0
  120. package/build/list-item/hooks/index.js.map +1 -1
  121. package/build/list-item/hooks/use-copy.js +42 -0
  122. package/build/list-item/hooks/use-copy.js.map +1 -0
  123. package/build/list-item/icons.native.js +53 -0
  124. package/build/list-item/icons.native.js.map +1 -0
  125. package/build/list-item/list-style-type.native.js +139 -0
  126. package/build/list-item/list-style-type.native.js.map +1 -0
  127. package/build/list-item/utils.js +4 -0
  128. package/build/list-item/utils.js.map +1 -1
  129. package/build/media-text/deprecated.js +193 -67
  130. package/build/media-text/deprecated.js.map +1 -1
  131. package/build/media-text/edit.js +2 -1
  132. package/build/media-text/edit.js.map +1 -1
  133. package/build/media-text/index.js +17 -0
  134. package/build/media-text/index.js.map +1 -1
  135. package/build/media-text/media-container.js +1 -1
  136. package/build/media-text/media-container.js.map +1 -1
  137. package/build/navigation/deprecated.js +6 -1
  138. package/build/navigation/deprecated.js.map +1 -1
  139. package/build/navigation/edit/index.js +180 -154
  140. package/build/navigation/edit/index.js.map +1 -1
  141. package/build/navigation/edit/navigation-menu-selector.js +11 -14
  142. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  143. package/build/navigation/edit/placeholder/index.js +4 -2
  144. package/build/navigation/edit/placeholder/index.js.map +1 -1
  145. package/build/navigation/edit/responsive-wrapper.js +13 -3
  146. package/build/navigation/edit/responsive-wrapper.js.map +1 -1
  147. package/build/navigation/edit/unsaved-inner-blocks.js +2 -1
  148. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  149. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -7
  150. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  151. package/build/navigation/edit/use-create-navigation-menu.js +5 -1
  152. package/build/navigation/edit/use-create-navigation-menu.js.map +1 -1
  153. package/build/navigation/edit/use-inner-blocks.js +43 -0
  154. package/build/navigation/edit/use-inner-blocks.js.map +1 -0
  155. package/build/navigation/edit/utils.js +28 -0
  156. package/build/navigation/edit/utils.js.map +1 -0
  157. package/build/navigation/index.js +1 -0
  158. package/build/navigation/index.js.map +1 -1
  159. package/build/navigation/menu-items-to-blocks.js +1 -7
  160. package/build/navigation/menu-items-to-blocks.js.map +1 -1
  161. package/build/navigation/use-navigation-menu.js +15 -10
  162. package/build/navigation/use-navigation-menu.js.map +1 -1
  163. package/build/navigation-link/edit.js +6 -8
  164. package/build/navigation-link/edit.js.map +1 -1
  165. package/build/navigation-submenu/edit.js +4 -6
  166. package/build/navigation-submenu/edit.js.map +1 -1
  167. package/build/page-list/edit.js +7 -3
  168. package/build/page-list/edit.js.map +1 -1
  169. package/build/paragraph/deprecated.js +18 -10
  170. package/build/paragraph/deprecated.js.map +1 -1
  171. package/build/paragraph/edit.js +1 -0
  172. package/build/paragraph/edit.js.map +1 -1
  173. package/build/paragraph/index.js +7 -0
  174. package/build/paragraph/index.js.map +1 -1
  175. package/build/paragraph/transforms.js +7 -0
  176. package/build/paragraph/transforms.js.map +1 -1
  177. package/build/post-author/edit.js +5 -2
  178. package/build/post-author/edit.js.map +1 -1
  179. package/build/post-author/index.js +4 -2
  180. package/build/post-author/index.js.map +1 -1
  181. package/build/post-author-biography/edit.js +7 -1
  182. package/build/post-author-biography/edit.js.map +1 -1
  183. package/build/post-author-biography/index.js +1 -0
  184. package/build/post-author-biography/index.js.map +1 -1
  185. package/build/post-author-name/index.js +5 -1
  186. package/build/post-author-name/index.js.map +1 -1
  187. package/build/post-comments-count/edit.js +11 -1
  188. package/build/post-comments-count/edit.js.map +1 -1
  189. package/build/post-comments-count/index.js +4 -1
  190. package/build/post-comments-count/index.js.map +1 -1
  191. package/build/post-comments-link/index.js +4 -2
  192. package/build/post-comments-link/index.js.map +1 -1
  193. package/build/post-content/edit.js +4 -2
  194. package/build/post-content/edit.js.map +1 -1
  195. package/build/post-date/edit.js +9 -2
  196. package/build/post-date/edit.js.map +1 -1
  197. package/build/post-date/index.js +9 -0
  198. package/build/post-date/index.js.map +1 -1
  199. package/build/post-featured-image/edit.js +43 -14
  200. package/build/post-featured-image/edit.js.map +1 -1
  201. package/build/post-featured-image/index.js +21 -0
  202. package/build/post-featured-image/index.js.map +1 -1
  203. package/build/post-navigation-link/index.js +3 -2
  204. package/build/post-navigation-link/index.js.map +1 -1
  205. package/build/post-template/edit.js +8 -4
  206. package/build/post-template/edit.js.map +1 -1
  207. package/build/post-template/index.js +14 -1
  208. package/build/post-template/index.js.map +1 -1
  209. package/build/post-terms/index.js +5 -3
  210. package/build/post-terms/index.js.map +1 -1
  211. package/build/post-title/index.js +2 -1
  212. package/build/post-title/index.js.map +1 -1
  213. package/build/preformatted/index.js +4 -2
  214. package/build/preformatted/index.js.map +1 -1
  215. package/build/pullquote/deprecated.js +135 -25
  216. package/build/pullquote/deprecated.js.map +1 -1
  217. package/build/pullquote/edit.js +1 -1
  218. package/build/pullquote/edit.js.map +1 -1
  219. package/build/pullquote/edit.native.js +0 -1
  220. package/build/pullquote/edit.native.js.map +1 -1
  221. package/build/pullquote/index.js +13 -6
  222. package/build/pullquote/index.js.map +1 -1
  223. package/build/pullquote/save.js +2 -2
  224. package/build/pullquote/save.js.map +1 -1
  225. package/build/pullquote/transforms.js +14 -33
  226. package/build/pullquote/transforms.js.map +1 -1
  227. package/build/query/deprecated.js +10 -9
  228. package/build/query/deprecated.js.map +1 -1
  229. package/build/query/edit/index.js +19 -8
  230. package/build/query/edit/index.js.map +1 -1
  231. package/build/query/edit/inspector-controls/index.js +42 -9
  232. package/build/query/edit/inspector-controls/index.js.map +1 -1
  233. package/build/query/edit/inspector-controls/taxonomy-controls.js +22 -14
  234. package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  235. package/build/query/edit/query-placeholder.js +6 -1
  236. package/build/query/edit/query-placeholder.js.map +1 -1
  237. package/build/query/utils.js +35 -9
  238. package/build/query/utils.js.map +1 -1
  239. package/build/query-no-results/edit.js +1 -1
  240. package/build/query-no-results/edit.js.map +1 -1
  241. package/build/query-title/edit.js +30 -8
  242. package/build/query-title/edit.js.map +1 -1
  243. package/build/query-title/index.js +11 -2
  244. package/build/query-title/index.js.map +1 -1
  245. package/build/query-title/variations.js +10 -0
  246. package/build/query-title/variations.js.map +1 -1
  247. package/build/quote/deprecated.js +13 -6
  248. package/build/quote/deprecated.js.map +1 -1
  249. package/build/quote/transforms.js +24 -39
  250. package/build/quote/transforms.js.map +1 -1
  251. package/build/separator/deprecated.js +3 -4
  252. package/build/separator/deprecated.js.map +1 -1
  253. package/build/separator/edit.js +1 -1
  254. package/build/separator/edit.js.map +1 -1
  255. package/build/separator/index.js +1 -0
  256. package/build/separator/index.js.map +1 -1
  257. package/build/social-link/icons/reddit.js +1 -1
  258. package/build/social-link/icons/reddit.js.map +1 -1
  259. package/build/social-links/edit.js +44 -9
  260. package/build/social-links/edit.js.map +1 -1
  261. package/build/social-links/index.js +9 -0
  262. package/build/social-links/index.js.map +1 -1
  263. package/build/spacer/index.js +7 -1
  264. package/build/spacer/index.js.map +1 -1
  265. package/build/table/index.js +4 -0
  266. package/build/table/index.js.map +1 -1
  267. package/build/table/state.js +9 -3
  268. package/build/table/state.js.map +1 -1
  269. package/build/table-of-contents/index.js +24 -1
  270. package/build/table-of-contents/index.js.map +1 -1
  271. package/build/tag-cloud/index.js +5 -1
  272. package/build/tag-cloud/index.js.map +1 -1
  273. package/build/template-part/edit/index.js +4 -2
  274. package/build/template-part/edit/index.js.map +1 -1
  275. package/build/template-part/index.js +2 -2
  276. package/build/template-part/index.js.map +1 -1
  277. package/build/term-description/index.js +4 -0
  278. package/build/term-description/index.js.map +1 -1
  279. package/build/text-columns/edit.js +3 -1
  280. package/build/text-columns/edit.js.map +1 -1
  281. package/build/text-columns/save.js +3 -1
  282. package/build/text-columns/save.js.map +1 -1
  283. package/build/verse/index.js +1 -0
  284. package/build/verse/index.js.map +1 -1
  285. package/build/video/index.js +4 -0
  286. package/build/video/index.js.map +1 -1
  287. package/build-module/archives/edit.js +7 -0
  288. package/build-module/archives/edit.js.map +1 -1
  289. package/build-module/archives/index.js +9 -1
  290. package/build-module/archives/index.js.map +1 -1
  291. package/build-module/audio/index.js +4 -0
  292. package/build-module/audio/index.js.map +1 -1
  293. package/build-module/block/edit.js +5 -3
  294. package/build-module/block/edit.js.map +1 -1
  295. package/build-module/block/edit.native.js +5 -3
  296. package/build-module/block/edit.native.js.map +1 -1
  297. package/build-module/button/deprecated.js +14 -4
  298. package/build-module/button/deprecated.js.map +1 -1
  299. package/build-module/button/index.js +1 -1
  300. package/build-module/calendar/edit.js +12 -4
  301. package/build-module/calendar/edit.js.map +1 -1
  302. package/build-module/categories/edit.js +4 -2
  303. package/build-module/categories/edit.js.map +1 -1
  304. package/build-module/categories/index.js +14 -1
  305. package/build-module/categories/index.js.map +1 -1
  306. package/build-module/code/index.js +4 -2
  307. package/build-module/code/index.js.map +1 -1
  308. package/build-module/column/index.js +13 -0
  309. package/build-module/column/index.js.map +1 -1
  310. package/build-module/columns/deprecated.js +16 -4
  311. package/build-module/columns/deprecated.js.map +1 -1
  312. package/build-module/columns/edit.js +7 -3
  313. package/build-module/columns/edit.js.map +1 -1
  314. package/build-module/columns/edit.native.js +9 -4
  315. package/build-module/columns/edit.native.js.map +1 -1
  316. package/build-module/columns/index.js +13 -0
  317. package/build-module/columns/index.js.map +1 -1
  318. package/build-module/comment-author-name/index.js +5 -1
  319. package/build-module/comment-author-name/index.js.map +1 -1
  320. package/build-module/comment-content/index.js +5 -1
  321. package/build-module/comment-content/index.js.map +1 -1
  322. package/build-module/comment-date/index.js +1 -0
  323. package/build-module/comment-date/index.js.map +1 -1
  324. package/build-module/comment-edit-link/index.js +5 -1
  325. package/build-module/comment-edit-link/index.js.map +1 -1
  326. package/build-module/comment-reply-link/index.js +5 -1
  327. package/build-module/comment-reply-link/index.js.map +1 -1
  328. package/build-module/comment-template/index.js +14 -1
  329. package/build-module/comment-template/index.js.map +1 -1
  330. package/build-module/comments/index.js +13 -0
  331. package/build-module/comments/index.js.map +1 -1
  332. package/build-module/comments-pagination/index.js +13 -0
  333. package/build-module/comments-pagination/index.js.map +1 -1
  334. package/build-module/comments-pagination-next/index.js +4 -2
  335. package/build-module/comments-pagination-next/index.js.map +1 -1
  336. package/build-module/comments-pagination-numbers/edit.js +5 -1
  337. package/build-module/comments-pagination-numbers/edit.js.map +1 -1
  338. package/build-module/comments-pagination-numbers/index.js +14 -1
  339. package/build-module/comments-pagination-numbers/index.js.map +1 -1
  340. package/build-module/comments-pagination-previous/index.js +4 -2
  341. package/build-module/comments-pagination-previous/index.js.map +1 -1
  342. package/build-module/comments-title/deprecated.js +4 -2
  343. package/build-module/comments-title/deprecated.js.map +1 -1
  344. package/build-module/comments-title/index.js +4 -2
  345. package/build-module/comments-title/index.js.map +1 -1
  346. package/build-module/cover/deprecated.js +20 -4
  347. package/build-module/cover/deprecated.js.map +1 -1
  348. package/build-module/cover/edit/resizable-cover.js +6 -0
  349. package/build-module/cover/edit/resizable-cover.js.map +1 -1
  350. package/build-module/cover/index.js +13 -0
  351. package/build-module/cover/index.js.map +1 -1
  352. package/build-module/cover/shared.js +1 -1
  353. package/build-module/cover/shared.js.map +1 -1
  354. package/build-module/embed/icons.js +1 -1
  355. package/build-module/embed/icons.js.map +1 -1
  356. package/build-module/gallery/deprecated.js +7 -2
  357. package/build-module/gallery/deprecated.js.map +1 -1
  358. package/build-module/gallery/edit.js +15 -2
  359. package/build-module/gallery/edit.js.map +1 -1
  360. package/build-module/gallery/index.js +5 -0
  361. package/build-module/gallery/index.js.map +1 -1
  362. package/build-module/gallery/transforms.js +20 -7
  363. package/build-module/gallery/transforms.js.map +1 -1
  364. package/build-module/gallery/utils.js +7 -6
  365. package/build-module/gallery/utils.js.map +1 -1
  366. package/build-module/group/deprecated.js +109 -12
  367. package/build-module/group/deprecated.js.map +1 -1
  368. package/build-module/group/edit.js +25 -2
  369. package/build-module/group/edit.js.map +1 -1
  370. package/build-module/group/index.js +10 -2
  371. package/build-module/group/index.js.map +1 -1
  372. package/build-module/group/transforms.js +5 -0
  373. package/build-module/group/transforms.js.map +1 -1
  374. package/build-module/group/variations.js +8 -8
  375. package/build-module/group/variations.js.map +1 -1
  376. package/build-module/heading/deprecated.js +5 -2
  377. package/build-module/heading/deprecated.js.map +1 -1
  378. package/build-module/heading/index.js +3 -1
  379. package/build-module/heading/index.js.map +1 -1
  380. package/build-module/heading/transforms.js +3 -1
  381. package/build-module/heading/transforms.js.map +1 -1
  382. package/build-module/home-link/edit.js +10 -6
  383. package/build-module/home-link/edit.js.map +1 -1
  384. package/build-module/image/edit.js +14 -2
  385. package/build-module/image/edit.js.map +1 -1
  386. package/build-module/image/index.js +13 -7
  387. package/build-module/image/index.js.map +1 -1
  388. package/build-module/index.native.js +22 -6
  389. package/build-module/index.native.js.map +1 -1
  390. package/build-module/list/index.js +5 -1
  391. package/build-module/list/index.js.map +1 -1
  392. package/build-module/list/v2/edit.js +15 -5
  393. package/build-module/list/v2/edit.js.map +1 -1
  394. package/build-module/list/v2/tag-name.js +21 -0
  395. package/build-module/list/v2/tag-name.js.map +1 -0
  396. package/build-module/list/v2/tag-name.native.js +21 -0
  397. package/build-module/list/v2/tag-name.native.js.map +1 -0
  398. package/build-module/list/v2/transforms.js +1 -10
  399. package/build-module/list/v2/transforms.js.map +1 -1
  400. package/build-module/list-item/edit.js +5 -5
  401. package/build-module/list-item/edit.js.map +1 -1
  402. package/build-module/list-item/edit.native.js +141 -0
  403. package/build-module/list-item/edit.native.js.map +1 -0
  404. package/build-module/list-item/hooks/index.js +1 -0
  405. package/build-module/list-item/hooks/index.js.map +1 -1
  406. package/build-module/list-item/hooks/use-copy.js +32 -0
  407. package/build-module/list-item/hooks/use-copy.js.map +1 -0
  408. package/build-module/list-item/icons.native.js +37 -0
  409. package/build-module/list-item/icons.native.js.map +1 -0
  410. package/build-module/list-item/list-style-type.native.js +126 -0
  411. package/build-module/list-item/list-style-type.native.js.map +1 -0
  412. package/build-module/list-item/utils.js +4 -0
  413. package/build-module/list-item/utils.js.map +1 -1
  414. package/build-module/media-text/deprecated.js +195 -67
  415. package/build-module/media-text/deprecated.js.map +1 -1
  416. package/build-module/media-text/edit.js +2 -1
  417. package/build-module/media-text/edit.js.map +1 -1
  418. package/build-module/media-text/index.js +17 -0
  419. package/build-module/media-text/index.js.map +1 -1
  420. package/build-module/media-text/media-container.js +1 -1
  421. package/build-module/media-text/media-container.js.map +1 -1
  422. package/build-module/navigation/deprecated.js +7 -2
  423. package/build-module/navigation/deprecated.js.map +1 -1
  424. package/build-module/navigation/edit/index.js +178 -154
  425. package/build-module/navigation/edit/index.js.map +1 -1
  426. package/build-module/navigation/edit/navigation-menu-selector.js +12 -15
  427. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  428. package/build-module/navigation/edit/placeholder/index.js +4 -2
  429. package/build-module/navigation/edit/placeholder/index.js.map +1 -1
  430. package/build-module/navigation/edit/responsive-wrapper.js +12 -3
  431. package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
  432. package/build-module/navigation/edit/unsaved-inner-blocks.js +2 -1
  433. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  434. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -7
  435. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  436. package/build-module/navigation/edit/use-create-navigation-menu.js +5 -1
  437. package/build-module/navigation/edit/use-create-navigation-menu.js.map +1 -1
  438. package/build-module/navigation/edit/use-inner-blocks.js +33 -0
  439. package/build-module/navigation/edit/use-inner-blocks.js.map +1 -0
  440. package/build-module/navigation/edit/utils.js +21 -0
  441. package/build-module/navigation/edit/utils.js.map +1 -0
  442. package/build-module/navigation/index.js +1 -0
  443. package/build-module/navigation/index.js.map +1 -1
  444. package/build-module/navigation/menu-items-to-blocks.js +1 -6
  445. package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
  446. package/build-module/navigation/use-navigation-menu.js +15 -10
  447. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  448. package/build-module/navigation-link/edit.js +7 -9
  449. package/build-module/navigation-link/edit.js.map +1 -1
  450. package/build-module/navigation-submenu/edit.js +5 -7
  451. package/build-module/navigation-submenu/edit.js.map +1 -1
  452. package/build-module/page-list/edit.js +7 -2
  453. package/build-module/page-list/edit.js.map +1 -1
  454. package/build-module/paragraph/deprecated.js +18 -9
  455. package/build-module/paragraph/deprecated.js.map +1 -1
  456. package/build-module/paragraph/edit.js +1 -0
  457. package/build-module/paragraph/edit.js.map +1 -1
  458. package/build-module/paragraph/index.js +7 -0
  459. package/build-module/paragraph/index.js.map +1 -1
  460. package/build-module/paragraph/transforms.js +7 -0
  461. package/build-module/paragraph/transforms.js.map +1 -1
  462. package/build-module/post-author/edit.js +5 -2
  463. package/build-module/post-author/edit.js.map +1 -1
  464. package/build-module/post-author/index.js +4 -2
  465. package/build-module/post-author/index.js.map +1 -1
  466. package/build-module/post-author-biography/edit.js +6 -1
  467. package/build-module/post-author-biography/edit.js.map +1 -1
  468. package/build-module/post-author-biography/index.js +1 -0
  469. package/build-module/post-author-biography/index.js.map +1 -1
  470. package/build-module/post-author-name/index.js +5 -1
  471. package/build-module/post-author-name/index.js.map +1 -1
  472. package/build-module/post-comments-count/edit.js +10 -1
  473. package/build-module/post-comments-count/edit.js.map +1 -1
  474. package/build-module/post-comments-count/index.js +4 -1
  475. package/build-module/post-comments-count/index.js.map +1 -1
  476. package/build-module/post-comments-link/index.js +4 -2
  477. package/build-module/post-comments-link/index.js.map +1 -1
  478. package/build-module/post-content/edit.js +5 -3
  479. package/build-module/post-content/edit.js.map +1 -1
  480. package/build-module/post-date/edit.js +9 -2
  481. package/build-module/post-date/edit.js.map +1 -1
  482. package/build-module/post-date/index.js +9 -0
  483. package/build-module/post-date/index.js.map +1 -1
  484. package/build-module/post-featured-image/edit.js +45 -16
  485. package/build-module/post-featured-image/edit.js.map +1 -1
  486. package/build-module/post-featured-image/index.js +21 -0
  487. package/build-module/post-featured-image/index.js.map +1 -1
  488. package/build-module/post-navigation-link/index.js +3 -2
  489. package/build-module/post-navigation-link/index.js.map +1 -1
  490. package/build-module/post-template/edit.js +8 -4
  491. package/build-module/post-template/edit.js.map +1 -1
  492. package/build-module/post-template/index.js +14 -1
  493. package/build-module/post-template/index.js.map +1 -1
  494. package/build-module/post-terms/index.js +5 -3
  495. package/build-module/post-terms/index.js.map +1 -1
  496. package/build-module/post-title/index.js +2 -1
  497. package/build-module/post-title/index.js.map +1 -1
  498. package/build-module/preformatted/index.js +4 -2
  499. package/build-module/preformatted/index.js.map +1 -1
  500. package/build-module/pullquote/deprecated.js +134 -25
  501. package/build-module/pullquote/deprecated.js.map +1 -1
  502. package/build-module/pullquote/edit.js +1 -1
  503. package/build-module/pullquote/edit.js.map +1 -1
  504. package/build-module/pullquote/edit.native.js +0 -1
  505. package/build-module/pullquote/edit.native.js.map +1 -1
  506. package/build-module/pullquote/index.js +13 -6
  507. package/build-module/pullquote/index.js.map +1 -1
  508. package/build-module/pullquote/save.js +2 -2
  509. package/build-module/pullquote/save.js.map +1 -1
  510. package/build-module/pullquote/transforms.js +15 -34
  511. package/build-module/pullquote/transforms.js.map +1 -1
  512. package/build-module/query/deprecated.js +10 -8
  513. package/build-module/query/deprecated.js.map +1 -1
  514. package/build-module/query/edit/index.js +23 -12
  515. package/build-module/query/edit/index.js.map +1 -1
  516. package/build-module/query/edit/inspector-controls/index.js +42 -9
  517. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  518. package/build-module/query/edit/inspector-controls/taxonomy-controls.js +17 -12
  519. package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  520. package/build-module/query/edit/query-placeholder.js +6 -1
  521. package/build-module/query/edit/query-placeholder.js.map +1 -1
  522. package/build-module/query/utils.js +32 -7
  523. package/build-module/query/utils.js.map +1 -1
  524. package/build-module/query-no-results/edit.js +1 -1
  525. package/build-module/query-no-results/edit.js.map +1 -1
  526. package/build-module/query-title/edit.js +30 -9
  527. package/build-module/query-title/edit.js.map +1 -1
  528. package/build-module/query-title/index.js +11 -2
  529. package/build-module/query-title/index.js.map +1 -1
  530. package/build-module/query-title/variations.js +10 -0
  531. package/build-module/query-title/variations.js.map +1 -1
  532. package/build-module/quote/deprecated.js +13 -5
  533. package/build-module/quote/deprecated.js.map +1 -1
  534. package/build-module/quote/transforms.js +25 -40
  535. package/build-module/quote/transforms.js.map +1 -1
  536. package/build-module/separator/deprecated.js +3 -3
  537. package/build-module/separator/deprecated.js.map +1 -1
  538. package/build-module/separator/edit.js +1 -1
  539. package/build-module/separator/edit.js.map +1 -1
  540. package/build-module/separator/index.js +1 -0
  541. package/build-module/separator/index.js.map +1 -1
  542. package/build-module/social-link/icons/reddit.js +1 -1
  543. package/build-module/social-link/icons/reddit.js.map +1 -1
  544. package/build-module/social-links/edit.js +46 -12
  545. package/build-module/social-links/edit.js.map +1 -1
  546. package/build-module/social-links/index.js +9 -0
  547. package/build-module/social-links/index.js.map +1 -1
  548. package/build-module/spacer/index.js +7 -1
  549. package/build-module/spacer/index.js.map +1 -1
  550. package/build-module/table/index.js +4 -0
  551. package/build-module/table/index.js.map +1 -1
  552. package/build-module/table/state.js +10 -4
  553. package/build-module/table/state.js.map +1 -1
  554. package/build-module/table-of-contents/index.js +24 -1
  555. package/build-module/table-of-contents/index.js.map +1 -1
  556. package/build-module/tag-cloud/index.js +5 -1
  557. package/build-module/tag-cloud/index.js.map +1 -1
  558. package/build-module/template-part/edit/index.js +5 -3
  559. package/build-module/template-part/edit/index.js.map +1 -1
  560. package/build-module/template-part/index.js +2 -2
  561. package/build-module/template-part/index.js.map +1 -1
  562. package/build-module/term-description/index.js +4 -0
  563. package/build-module/term-description/index.js.map +1 -1
  564. package/build-module/text-columns/edit.js +4 -2
  565. package/build-module/text-columns/edit.js.map +1 -1
  566. package/build-module/text-columns/save.js +4 -2
  567. package/build-module/text-columns/save.js.map +1 -1
  568. package/build-module/verse/index.js +1 -0
  569. package/build-module/verse/index.js.map +1 -1
  570. package/build-module/video/index.js +4 -0
  571. package/build-module/video/index.js.map +1 -1
  572. package/build-style/audio/style-rtl.css +3 -0
  573. package/build-style/audio/style.css +3 -0
  574. package/build-style/button/style-rtl.css +6 -6
  575. package/build-style/button/style.css +6 -6
  576. package/build-style/editor-rtl.css +115 -122
  577. package/build-style/editor.css +115 -122
  578. package/build-style/group/editor-rtl.css +27 -8
  579. package/build-style/group/editor.css +27 -8
  580. package/build-style/image/editor-rtl.css +21 -2
  581. package/build-style/image/editor.css +21 -2
  582. package/build-style/latest-posts/editor-rtl.css +3 -0
  583. package/build-style/latest-posts/editor.css +3 -0
  584. package/build-style/media-text/style-rtl.css +1 -0
  585. package/build-style/media-text/style.css +1 -0
  586. package/build-style/navigation/editor-rtl.css +8 -4
  587. package/build-style/navigation/editor.css +8 -4
  588. package/build-style/navigation/style-rtl.css +17 -19
  589. package/build-style/navigation/style.css +17 -19
  590. package/build-style/paragraph/editor-rtl.css +1 -1
  591. package/build-style/paragraph/editor.css +1 -1
  592. package/build-style/post-date/style-rtl.css +79 -0
  593. package/build-style/post-date/style.css +79 -0
  594. package/build-style/post-featured-image/editor-rtl.css +45 -43
  595. package/build-style/post-featured-image/editor.css +45 -43
  596. package/build-style/post-featured-image/style-rtl.css +1 -0
  597. package/build-style/post-featured-image/style.css +1 -0
  598. package/build-style/post-title/style-rtl.css +1 -0
  599. package/build-style/post-title/style.css +1 -0
  600. package/build-style/pullquote/editor-rtl.css +0 -12
  601. package/build-style/pullquote/editor.css +0 -12
  602. package/build-style/pullquote/style-rtl.css +1 -8
  603. package/build-style/pullquote/style.css +1 -8
  604. package/build-style/query/editor-rtl.css +7 -0
  605. package/build-style/query/editor.css +7 -0
  606. package/build-style/query-pagination/style-rtl.css +6 -0
  607. package/build-style/query-pagination/style.css +6 -0
  608. package/build-style/query-title/style-rtl.css +79 -0
  609. package/build-style/query-title/style.css +79 -0
  610. package/build-style/search/style-rtl.css +2 -0
  611. package/build-style/search/style.css +2 -0
  612. package/build-style/site-logo/editor-rtl.css +3 -52
  613. package/build-style/site-logo/editor.css +3 -52
  614. package/build-style/social-links/style-rtl.css +2 -2
  615. package/build-style/social-links/style.css +2 -2
  616. package/build-style/style-rtl.css +52 -35
  617. package/build-style/style.css +52 -35
  618. package/build-style/tag-cloud/style-rtl.css +1 -0
  619. package/build-style/tag-cloud/style.css +1 -0
  620. package/build-style/video/style-rtl.css +3 -0
  621. package/build-style/video/style.css +3 -0
  622. package/package.json +30 -30
  623. package/src/archives/block.json +9 -1
  624. package/src/archives/edit.js +12 -1
  625. package/src/archives/index.php +5 -3
  626. package/src/audio/block.json +4 -0
  627. package/src/audio/style.scss +2 -0
  628. package/src/audio/test/__snapshots__/edit.native.js.snap +16 -2
  629. package/src/block/edit.js +4 -4
  630. package/src/block/edit.native.js +4 -4
  631. package/src/button/block.json +1 -1
  632. package/src/button/deprecated.js +21 -22
  633. package/src/button/style.scss +6 -6
  634. package/src/calendar/edit.js +11 -4
  635. package/src/calendar/index.php +2 -2
  636. package/src/categories/block.json +14 -1
  637. package/src/categories/edit.js +2 -2
  638. package/src/code/block.json +4 -2
  639. package/src/column/block.json +13 -0
  640. package/src/columns/block.json +13 -0
  641. package/src/columns/deprecated.js +10 -4
  642. package/src/columns/edit.js +7 -3
  643. package/src/columns/edit.native.js +10 -4
  644. package/src/comment-author-name/block.json +5 -1
  645. package/src/comment-content/block.json +5 -1
  646. package/src/comment-date/block.json +1 -0
  647. package/src/comment-edit-link/block.json +5 -1
  648. package/src/comment-reply-link/block.json +5 -1
  649. package/src/comment-template/block.json +14 -1
  650. package/src/comments/block.json +13 -0
  651. package/src/comments/index.php +6 -5
  652. package/src/comments-pagination/block.json +13 -0
  653. package/src/comments-pagination-next/block.json +4 -2
  654. package/src/comments-pagination-numbers/block.json +14 -1
  655. package/src/comments-pagination-numbers/edit.js +12 -3
  656. package/src/comments-pagination-previous/block.json +4 -2
  657. package/src/comments-title/block.json +4 -2
  658. package/src/cover/block.json +13 -0
  659. package/src/cover/deprecated.js +11 -4
  660. package/src/cover/edit/resizable-cover.js +6 -0
  661. package/src/cover/index.php +2 -2
  662. package/src/cover/shared.js +2 -1
  663. package/src/embed/icons.js +1 -1
  664. package/src/file/test/__snapshots__/edit.native.js.snap +32 -4
  665. package/src/gallery/block.json +5 -0
  666. package/src/gallery/deprecated.js +4 -2
  667. package/src/gallery/edit.js +22 -2
  668. package/src/gallery/transforms.js +18 -5
  669. package/src/gallery/utils.js +11 -7
  670. package/src/group/block.json +10 -2
  671. package/src/group/deprecated.js +89 -2
  672. package/src/group/edit.js +15 -2
  673. package/src/group/editor.scss +28 -3
  674. package/src/group/transforms.js +7 -0
  675. package/src/group/variations.js +4 -3
  676. package/src/heading/block.json +3 -1
  677. package/src/heading/deprecated.js +4 -2
  678. package/src/home-link/edit.js +19 -20
  679. package/src/home-link/index.php +8 -17
  680. package/src/image/block.json +13 -7
  681. package/src/image/edit.js +19 -1
  682. package/src/image/editor.scss +39 -3
  683. package/src/image/index.php +1 -1
  684. package/src/image/test/edit.native.js +6 -10
  685. package/src/index.native.js +30 -12
  686. package/src/latest-posts/editor.scss +5 -0
  687. package/src/list/block.json +4 -0
  688. package/src/list/index.js +1 -1
  689. package/src/list/test/__snapshots__/edit.native.js.snap +133 -0
  690. package/src/list/test/edit.native.js +511 -7
  691. package/src/list/v2/edit.js +12 -4
  692. package/src/list/v2/tag-name.js +13 -0
  693. package/src/list/v2/tag-name.native.js +12 -0
  694. package/src/list/v2/transforms.js +1 -9
  695. package/src/list-item/edit.js +3 -2
  696. package/src/list-item/edit.native.js +148 -0
  697. package/src/list-item/hooks/index.js +1 -0
  698. package/src/list-item/hooks/use-copy.js +36 -0
  699. package/src/list-item/icons.native.js +34 -0
  700. package/src/list-item/list-style-type.native.js +146 -0
  701. package/src/list-item/style.native.scss +49 -0
  702. package/src/media-text/block.json +17 -0
  703. package/src/media-text/deprecated.js +564 -417
  704. package/src/media-text/edit.js +1 -0
  705. package/src/media-text/media-container.js +3 -1
  706. package/src/media-text/style.scss +2 -0
  707. package/src/media-text/test/media-container.js +24 -0
  708. package/src/navigation/block.json +1 -0
  709. package/src/navigation/deprecated.js +4 -2
  710. package/src/navigation/edit/index.js +234 -237
  711. package/src/navigation/edit/navigation-menu-selector.js +12 -26
  712. package/src/navigation/edit/placeholder/index.js +4 -2
  713. package/src/navigation/edit/responsive-wrapper.js +24 -3
  714. package/src/navigation/edit/unsaved-inner-blocks.js +3 -1
  715. package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +31 -37
  716. package/src/navigation/edit/use-create-navigation-menu.js +4 -0
  717. package/src/navigation/edit/use-inner-blocks.js +39 -0
  718. package/src/navigation/edit/utils.js +30 -0
  719. package/src/navigation/editor.scss +3 -2
  720. package/src/navigation/index.php +17 -16
  721. package/src/navigation/menu-items-to-blocks.js +3 -6
  722. package/src/navigation/style.scss +13 -22
  723. package/src/navigation/test/use-navigation-menu.js +18 -1
  724. package/src/navigation/use-navigation-menu.js +20 -13
  725. package/src/navigation-link/edit.js +9 -13
  726. package/src/navigation-link/index.php +1 -1
  727. package/src/navigation-submenu/edit.js +9 -13
  728. package/src/navigation-submenu/index.php +1 -1
  729. package/src/page-list/edit.js +6 -2
  730. package/src/page-list/index.php +4 -4
  731. package/src/paragraph/block.json +7 -0
  732. package/src/paragraph/deprecated.js +33 -35
  733. package/src/paragraph/edit.js +1 -0
  734. package/src/paragraph/editor.scss +5 -3
  735. package/src/post-author/block.json +4 -2
  736. package/src/post-author/edit.js +6 -3
  737. package/src/post-author-biography/block.json +1 -0
  738. package/src/post-author-biography/edit.js +4 -1
  739. package/src/post-author-name/block.json +5 -1
  740. package/src/post-comments-count/block.json +4 -1
  741. package/src/post-comments-count/edit.js +10 -2
  742. package/src/post-comments-link/block.json +4 -2
  743. package/src/post-content/edit.js +4 -4
  744. package/src/post-date/block.json +9 -0
  745. package/src/post-date/edit.js +12 -2
  746. package/src/post-date/index.php +10 -2
  747. package/src/post-date/style.scss +4 -0
  748. package/src/post-featured-image/block.json +21 -0
  749. package/src/post-featured-image/edit.js +66 -14
  750. package/src/post-featured-image/editor.scss +44 -53
  751. package/src/post-featured-image/index.php +64 -5
  752. package/src/post-featured-image/style.scss +1 -0
  753. package/src/post-navigation-link/block.json +3 -2
  754. package/src/post-template/block.json +15 -1
  755. package/src/post-template/edit.js +6 -1
  756. package/src/post-template/index.php +7 -4
  757. package/src/post-terms/block.json +5 -3
  758. package/src/post-title/block.json +2 -1
  759. package/src/post-title/index.php +2 -1
  760. package/src/post-title/style.scss +2 -0
  761. package/src/preformatted/block.json +4 -2
  762. package/src/preformatted/test/__snapshots__/edit.native.js.snap +16 -2
  763. package/src/pullquote/block.json +11 -4
  764. package/src/pullquote/deprecated.js +490 -412
  765. package/src/pullquote/edit.js +1 -1
  766. package/src/pullquote/edit.native.js +0 -1
  767. package/src/pullquote/editor.scss +0 -16
  768. package/src/pullquote/index.js +1 -3
  769. package/src/pullquote/save.js +1 -1
  770. package/src/pullquote/style.scss +0 -11
  771. package/src/pullquote/transforms.js +17 -33
  772. package/src/query/deprecated.js +4 -9
  773. package/src/query/edit/index.js +28 -15
  774. package/src/query/edit/inspector-controls/index.js +129 -65
  775. package/src/query/edit/inspector-controls/taxonomy-controls.js +18 -11
  776. package/src/query/edit/query-placeholder.js +17 -2
  777. package/src/query/editor.scss +9 -0
  778. package/src/query/utils.js +29 -7
  779. package/src/query-no-results/edit.js +1 -1
  780. package/src/query-pagination/style.scss +14 -0
  781. package/src/query-title/block.json +11 -2
  782. package/src/query-title/edit.js +51 -7
  783. package/src/query-title/index.php +28 -2
  784. package/src/query-title/style.scss +4 -0
  785. package/src/query-title/variations.js +13 -0
  786. package/src/quote/deprecated.js +6 -5
  787. package/src/quote/transforms.js +6 -24
  788. package/src/search/index.php +1 -1
  789. package/src/search/style.scss +2 -0
  790. package/src/search/test/__snapshots__/edit.native.js.snap +56 -7
  791. package/src/separator/block.json +1 -0
  792. package/src/separator/deprecated.js +2 -3
  793. package/src/separator/edit.js +1 -1
  794. package/src/separator/test/edit.js +5 -3
  795. package/src/site-logo/editor.scss +8 -66
  796. package/src/site-title/index.php +8 -9
  797. package/src/social-link/icons/reddit.js +1 -1
  798. package/src/social-link/index.php +2 -2
  799. package/src/social-link/socials-with-bg.scss +1 -1
  800. package/src/social-link/socials-without-bg.scss +1 -1
  801. package/src/social-links/block.json +9 -0
  802. package/src/social-links/edit.js +48 -19
  803. package/src/spacer/block.json +7 -1
  804. package/src/style.scss +2 -0
  805. package/src/table/block.json +4 -0
  806. package/src/table/state.js +21 -19
  807. package/src/table-of-contents/block.json +24 -1
  808. package/src/tag-cloud/block.json +5 -1
  809. package/src/tag-cloud/style.scss +1 -0
  810. package/src/template-part/edit/index.js +4 -4
  811. package/src/template-part/index.js +3 -2
  812. package/src/term-description/block.json +4 -0
  813. package/src/text-columns/edit.js +2 -2
  814. package/src/text-columns/save.js +2 -2
  815. package/src/verse/block.json +1 -0
  816. package/src/video/block.json +4 -0
  817. package/src/video/style.scss +2 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/image/edit.js"],"names":["classnames","get","has","isEmpty","omit","pick","getBlobByURL","isBlobURL","revokeBlobURL","withNotices","useSelect","BlockAlignmentControl","BlockControls","BlockIcon","MediaPlaceholder","useBlockProps","store","blockEditorStore","__experimentalUseBorderProps","useBorderProps","useEffect","useRef","useState","__","image","icon","Image","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_CUSTOM","LINK_DESTINATION_MEDIA","LINK_DESTINATION_NONE","ALLOWED_MEDIA_TYPES","pickRelevantMediaFiles","size","imageProps","url","isTemporaryImage","id","isExternalImage","hasDefaultSize","defaultSize","ImageEdit","attributes","setAttributes","isSelected","className","noticeUI","insertBlocksAfter","noticeOperations","onReplace","context","clientId","alt","caption","align","width","height","sizeSlug","temporaryURL","setTemporaryURL","altRef","current","captionRef","ref","imageDefaultSize","mediaUpload","select","getSettings","onUploadError","message","removeAllNotices","createErrorNotice","src","undefined","onSelectImage","media","title","mediaAttributes","additionalAttributes","linkDestination","window","wp","view","settings","defaultProps","link","href","onSelectURL","newURL","updateAlignment","nextAlign","extraUpdatedAttributes","includes","isTemp","file","filesList","onFileChange","img","allowedTypes","onError","isExternal","mediaPreview","borderProps","classes","style","blockProps"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AACA,SAASC,GAAT,EAAcC,GAAd,EAAmBC,OAAnB,EAA4BC,IAA5B,EAAkCC,IAAlC,QAA8C,QAA9C;AAEA;AACA;AACA;;AACA,SAASC,YAAT,EAAuBC,SAAvB,EAAkCC,aAAlC,QAAuD,iBAAvD;AACA,SAASC,WAAT,QAA4B,uBAA5B;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SACCC,qBADD,EAECC,aAFD,EAGCC,SAHD,EAICC,gBAJD,EAKCC,aALD,EAMCC,KAAK,IAAIC,gBANV,EAOCC,4BAA4B,IAAIC,cAPjC,QAQO,yBARP;AASA,SAASC,SAAT,EAAoBC,MAApB,EAA4BC,QAA5B,QAA4C,oBAA5C;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,KAAK,IAAIC,IAAlB,QAA8B,kBAA9B;AAEA;AACA;AACA;;AACA,OAAOC,KAAP,MAAkB,SAAlB;AAEA;AACA;AACA;;AACA,SACCC,2BADD,EAECC,uBAFD,EAGCC,sBAHD,EAICC,qBAJD,EAKCC,mBALD,QAMO,aANP;AAQA,OAAO,MAAMC,sBAAsB,GAAG,CAAER,KAAF,EAASS,IAAT,KAAmB;AACxD,QAAMC,UAAU,GAAG7B,IAAI,CAAEmB,KAAF,EAAS,CAAE,KAAF,EAAS,IAAT,EAAe,MAAf,EAAuB,SAAvB,CAAT,CAAvB;AACAU,EAAAA,UAAU,CAACC,GAAX,GACClC,GAAG,CAAEuB,KAAF,EAAS,CAAE,OAAF,EAAWS,IAAX,EAAiB,KAAjB,CAAT,CAAH,IACAhC,GAAG,CAAEuB,KAAF,EAAS,CAAE,eAAF,EAAmB,OAAnB,EAA4BS,IAA5B,EAAkC,YAAlC,CAAT,CADH,IAEAT,KAAK,CAACW,GAHP;AAIA,SAAOD,UAAP;AACA,CAPM;AASP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAME,gBAAgB,GAAG,CAAEC,EAAF,EAAMF,GAAN,KAAe,CAAEE,EAAF,IAAQ9B,SAAS,CAAE4B,GAAF,CAAzD;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,OAAO,MAAMG,eAAe,GAAG,CAAED,EAAF,EAAMF,GAAN,KAAeA,GAAG,IAAI,CAAEE,EAAT,IAAe,CAAE9B,SAAS,CAAE4B,GAAF,CAAjE;AAEP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,SAASI,cAAT,CAAyBf,KAAzB,EAAgCgB,WAAhC,EAA8C;AAC7C,SACCtC,GAAG,CAAEsB,KAAF,EAAS,CAAE,OAAF,EAAWgB,WAAX,EAAwB,KAAxB,CAAT,CAAH,IACAtC,GAAG,CAAEsB,KAAF,EAAS,CAAE,eAAF,EAAmB,OAAnB,EAA4BgB,WAA5B,EAAyC,YAAzC,CAAT,CAFJ;AAIA;;AAED,OAAO,SAASC,SAAT,OAWH;AAAA,MAXuB;AAC1BC,IAAAA,UAD0B;AAE1BC,IAAAA,aAF0B;AAG1BC,IAAAA,UAH0B;AAI1BC,IAAAA,SAJ0B;AAK1BC,IAAAA,QAL0B;AAM1BC,IAAAA,iBAN0B;AAO1BC,IAAAA,gBAP0B;AAQ1BC,IAAAA,SAR0B;AAS1BC,IAAAA,OAT0B;AAU1BC,IAAAA;AAV0B,GAWvB;AACH,QAAM;AACLhB,IAAAA,GAAG,GAAG,EADD;AAELiB,IAAAA,GAFK;AAGLC,IAAAA,OAHK;AAILC,IAAAA,KAJK;AAKLjB,IAAAA,EALK;AAMLkB,IAAAA,KANK;AAOLC,IAAAA,MAPK;AAQLC,IAAAA;AARK,MASFf,UATJ;AAUA,QAAM,CAAEgB,YAAF,EAAgBC,eAAhB,IAAoCrC,QAAQ,EAAlD;AAEA,QAAMsC,MAAM,GAAGvC,MAAM,EAArB;AACAD,EAAAA,SAAS,CAAE,MAAM;AAChBwC,IAAAA,MAAM,CAACC,OAAP,GAAiBT,GAAjB;AACA,GAFQ,EAEN,CAAEA,GAAF,CAFM,CAAT;AAIA,QAAMU,UAAU,GAAGzC,MAAM,EAAzB;AACAD,EAAAA,SAAS,CAAE,MAAM;AAChB0C,IAAAA,UAAU,CAACD,OAAX,GAAqBR,OAArB;AACA,GAFQ,EAEN,CAAEA,OAAF,CAFM,CAAT;AAIA,QAAMU,GAAG,GAAG1C,MAAM,EAAlB;AACA,QAAM;AAAE2C,IAAAA,gBAAF;AAAoBC,IAAAA;AAApB,MAAoCvD,SAAS,CAAIwD,MAAF,IAAc;AAClE,UAAM;AAAEC,MAAAA;AAAF,QAAkBD,MAAM,CAAEjD,gBAAF,CAA9B;AACA,WAAOZ,IAAI,CAAE8D,WAAW,EAAb,EAAiB,CAAE,kBAAF,EAAsB,aAAtB,CAAjB,CAAX;AACA,GAHkD,EAGhD,EAHgD,CAAnD;;AAKA,WAASC,aAAT,CAAwBC,OAAxB,EAAkC;AACjCrB,IAAAA,gBAAgB,CAACsB,gBAAjB;AACAtB,IAAAA,gBAAgB,CAACuB,iBAAjB,CAAoCF,OAApC;AACA1B,IAAAA,aAAa,CAAE;AACd6B,MAAAA,GAAG,EAAEC,SADS;AAEdpC,MAAAA,EAAE,EAAEoC,SAFU;AAGdtC,MAAAA,GAAG,EAAEsC;AAHS,KAAF,CAAb;AAKAd,IAAAA,eAAe,CAAEc,SAAF,CAAf;AACA;;AAED,WAASC,aAAT,CAAwBC,KAAxB,EAAgC;AAAA;;AAC/B,QAAK,CAAEA,KAAF,IAAW,CAAEA,KAAK,CAACxC,GAAxB,EAA8B;AAC7BQ,MAAAA,aAAa,CAAE;AACdR,QAAAA,GAAG,EAAEsC,SADS;AAEdrB,QAAAA,GAAG,EAAEqB,SAFS;AAGdpC,QAAAA,EAAE,EAAEoC,SAHU;AAIdG,QAAAA,KAAK,EAAEH,SAJO;AAKdpB,QAAAA,OAAO,EAAEoB;AALK,OAAF,CAAb;AAQA;AACA;;AAED,QAAKlE,SAAS,CAAEoE,KAAK,CAACxC,GAAR,CAAd,EAA8B;AAC7BwB,MAAAA,eAAe,CAAEgB,KAAK,CAACxC,GAAR,CAAf;AACA;AACA;;AAEDwB,IAAAA,eAAe;AAEf,QAAIkB,eAAe,GAAG7C,sBAAsB,CAAE2C,KAAF,EAASX,gBAAT,CAA5C,CApB+B,CAsB/B;AACA;;AACA,QAAKF,UAAU,CAACD,OAAX,IAAsB,CAAE5D,GAAG,CAAE4E,eAAF,EAAmB,CAAE,SAAF,CAAnB,CAAhC,EAAqE;AACpEA,MAAAA,eAAe,GAAGzE,IAAI,CAAEyE,eAAF,EAAmB,CAAE,SAAF,CAAnB,CAAtB;AACA;;AAED,QAAIC,oBAAJ,CA5B+B,CA6B/B;;AACA,QAAK,CAAEH,KAAK,CAACtC,EAAR,IAAcsC,KAAK,CAACtC,EAAN,KAAaA,EAAhC,EAAqC;AACpCyC,MAAAA,oBAAoB,GAAG;AACtBvB,QAAAA,KAAK,EAAEkB,SADe;AAEtBjB,QAAAA,MAAM,EAAEiB,SAFc;AAGtB;AACA;AACAhB,QAAAA,QAAQ,EAAElB,cAAc,CAAEoC,KAAF,EAASX,gBAAT,CAAd,GACPA,gBADO,GAEP;AAPmB,OAAvB;AASA,KAVD,MAUO;AACN;AACA;AACAc,MAAAA,oBAAoB,GAAG;AAAE3C,QAAAA;AAAF,OAAvB;AACA,KA5C8B,CA8C/B;;;AACA,QAAI4C,eAAe,GAAGrC,UAAU,CAACqC,eAAjC;;AACA,QAAK,CAAEA,eAAP,EAAyB;AACxB;AACA;AACA;AACA,cACC,YAAAC,MAAM,UAAN,wDAAQC,EAAR,8EAAYN,KAAZ,+FAAmBO,IAAnB,0GAAyBC,QAAzB,4GAAmCC,YAAnC,kFAAiDC,IAAjD,KACAvD,qBAFD;AAIC,aAAK,MAAL;AACA,aAAKD,sBAAL;AACCkD,UAAAA,eAAe,GAAGlD,sBAAlB;AACA;;AACD,aAAK,MAAL;AACA,aAAKF,2BAAL;AACCoD,UAAAA,eAAe,GAAGpD,2BAAlB;AACA;;AACD,aAAKC,uBAAL;AACCmD,UAAAA,eAAe,GAAGnD,uBAAlB;AACA;;AACD,aAAKE,qBAAL;AACCiD,UAAAA,eAAe,GAAGjD,qBAAlB;AACA;AAjBF;AAmBA,KAvE8B,CAyE/B;;;AACA,QAAIwD,IAAJ;;AACA,YAASP,eAAT;AACC,WAAKlD,sBAAL;AACCyD,QAAAA,IAAI,GAAGX,KAAK,CAACxC,GAAb;AACA;;AACD,WAAKR,2BAAL;AACC2D,QAAAA,IAAI,GAAGX,KAAK,CAACU,IAAb;AACA;AANF;;AAQAR,IAAAA,eAAe,CAACS,IAAhB,GAAuBA,IAAvB;AAEA3C,IAAAA,aAAa,CAAE,EACd,GAAGkC,eADW;AAEd,SAAGC,oBAFW;AAGdC,MAAAA;AAHc,KAAF,CAAb;AAKA;;AAED,WAASQ,WAAT,CAAsBC,MAAtB,EAA+B;AAC9B,QAAKA,MAAM,KAAKrD,GAAhB,EAAsB;AACrBQ,MAAAA,aAAa,CAAE;AACdR,QAAAA,GAAG,EAAEqD,MADS;AAEdnD,QAAAA,EAAE,EAAEoC,SAFU;AAGdlB,QAAAA,KAAK,EAAEkB,SAHO;AAIdjB,QAAAA,MAAM,EAAEiB,SAJM;AAKdhB,QAAAA,QAAQ,EAAEO;AALI,OAAF,CAAb;AAOA;AACD;;AAED,WAASyB,eAAT,CAA0BC,SAA1B,EAAsC;AACrC,UAAMC,sBAAsB,GAAG,CAAE,MAAF,EAAU,MAAV,EAAmBC,QAAnB,CAA6BF,SAA7B,IAC5B;AAAEnC,MAAAA,KAAK,EAAEkB,SAAT;AAAoBjB,MAAAA,MAAM,EAAEiB;AAA5B,KAD4B,GAE5B,EAFH;AAGA9B,IAAAA,aAAa,CAAE,EACd,GAAGgD,sBADW;AAEdrC,MAAAA,KAAK,EAAEoC;AAFO,KAAF,CAAb;AAIA;;AAED,MAAIG,MAAM,GAAGzD,gBAAgB,CAAEC,EAAF,EAAMF,GAAN,CAA7B,CA1JG,CA4JH;;AACAf,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAK,CAAEyE,MAAP,EAAgB;AACf;AACA;;AAED,UAAMC,IAAI,GAAGxF,YAAY,CAAE6B,GAAF,CAAzB;;AAEA,QAAK2D,IAAL,EAAY;AACX7B,MAAAA,WAAW,CAAE;AACZ8B,QAAAA,SAAS,EAAE,CAAED,IAAF,CADC;AAEZE,QAAAA,YAAY,EAAE,SAAe;AAAA,cAAb,CAAEC,GAAF,CAAa;AAC5BvB,UAAAA,aAAa,CAAEuB,GAAF,CAAb;AACA,SAJW;AAKZC,QAAAA,YAAY,EAAEnE,mBALF;AAMZoE,QAAAA,OAAO,EAAI9B,OAAF,IAAe;AACvBwB,UAAAA,MAAM,GAAG,KAAT;AACAzB,UAAAA,aAAa,CAAEC,OAAF,CAAb;AACA;AATW,OAAF,CAAX;AAWA;AACD,GApBQ,EAoBN,EApBM,CAAT,CA7JG,CAmLH;AACA;;AACAjD,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAKyE,MAAL,EAAc;AACblC,MAAAA,eAAe,CAAExB,GAAF,CAAf;AACA;AACA;;AACD3B,IAAAA,aAAa,CAAEkD,YAAF,CAAb;AACA,GANQ,EAMN,CAAEmC,MAAF,EAAU1D,GAAV,CANM,CAAT;AAQA,QAAMiE,UAAU,GAAG9D,eAAe,CAAED,EAAF,EAAMF,GAAN,CAAlC;AACA,QAAMqC,GAAG,GAAG4B,UAAU,GAAGjE,GAAH,GAASsC,SAA/B;AACA,QAAM4B,YAAY,GAAG,CAAC,CAAElE,GAAH,IACpB;AACC,IAAA,GAAG,EAAGZ,EAAE,CAAE,YAAF,CADT;AAEC,IAAA,KAAK,EAAGA,EAAE,CAAE,YAAF,CAFX;AAGC,IAAA,SAAS,EAAG,oBAHb;AAIC,IAAA,GAAG,EAAGY;AAJP,IADD;AASA,QAAMmE,WAAW,GAAGnF,cAAc,CAAEuB,UAAF,CAAlC;AAEA,QAAM6D,OAAO,GAAGvG,UAAU,CAAE6C,SAAF,EAAa;AACtC,oBAAgBa,YADsB;AAEtC,kBAAc,CAAC,CAAEH,KAAH,IAAY,CAAC,CAAEC,MAFS;AAGtC,KAAG,QAAQC,QAAU,EAArB,GAA0BA,QAHY;AAItC,yBACC,CAAC,CAAE6C,WAAW,CAACzD,SAAf,IAA4B,CAAE1C,OAAO,CAAEmG,WAAW,CAACE,KAAd;AALA,GAAb,CAA1B;AAQA,QAAMC,UAAU,GAAG1F,aAAa,CAAE;AACjCgD,IAAAA,GADiC;AAEjClB,IAAAA,SAAS,EAAE0D;AAFsB,GAAF,CAAhC;AAKA,SACC,wBAAaE,UAAb,EACG,CAAE/C,YAAY,IAAIvB,GAAlB,KACD,cAAC,KAAD;AACC,IAAA,YAAY,EAAGuB,YADhB;AAEC,IAAA,UAAU,EAAGhB,UAFd;AAGC,IAAA,aAAa,EAAGC,aAHjB;AAIC,IAAA,UAAU,EAAGC,UAJd;AAKC,IAAA,iBAAiB,EAAGG,iBALrB;AAMC,IAAA,SAAS,EAAGE,SANb;AAOC,IAAA,aAAa,EAAGyB,aAPjB;AAQC,IAAA,WAAW,EAAGa,WARf;AASC,IAAA,aAAa,EAAGnB,aATjB;AAUC,IAAA,YAAY,EAAGL,GAVhB;AAWC,IAAA,OAAO,EAAGb,OAXX;AAYC,IAAA,QAAQ,EAAGC;AAZZ,IAFF,EAiBG,CAAEhB,GAAF,IACD,cAAC,aAAD;AAAe,IAAA,KAAK,EAAC;AAArB,KACC,cAAC,qBAAD;AACC,IAAA,KAAK,EAAGmB,KADT;AAEC,IAAA,QAAQ,EAAGmC;AAFZ,IADD,CAlBF,EAyBC,cAAC,gBAAD;AACC,IAAA,IAAI,EAAG,cAAC,SAAD;AAAW,MAAA,IAAI,EAAGhE;AAAlB,MADR;AAEC,IAAA,QAAQ,EAAGiD,aAFZ;AAGC,IAAA,WAAW,EAAGa,WAHf;AAIC,IAAA,OAAO,EAAGzC,QAJX;AAKC,IAAA,OAAO,EAAGsB,aALX;AAMC,IAAA,MAAM,EAAC,SANR;AAOC,IAAA,YAAY,EAAGrC,mBAPhB;AAQC,IAAA,KAAK,EAAG;AAAEM,MAAAA,EAAF;AAAMmC,MAAAA;AAAN,KART;AASC,IAAA,YAAY,EAAG6B,YAThB;AAUC,IAAA,mBAAmB,EAAG3C,YAAY,IAAIvB;AAVvC,IAzBD,CADD;AAwCA;AAED,eAAe1B,WAAW,CAAEgC,SAAF,CAA1B","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { get, has, isEmpty, omit, pick } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { getBlobByURL, isBlobURL, revokeBlobURL } from '@wordpress/blob';\nimport { withNotices } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport {\n\tBlockAlignmentControl,\n\tBlockControls,\n\tBlockIcon,\n\tMediaPlaceholder,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalUseBorderProps as useBorderProps,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { image as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport Image from './image';\n\n/**\n * Module constants\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_CUSTOM,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n\tALLOWED_MEDIA_TYPES,\n} from './constants';\n\nexport const pickRelevantMediaFiles = ( image, size ) => {\n\tconst imageProps = pick( image, [ 'alt', 'id', 'link', 'caption' ] );\n\timageProps.url =\n\t\tget( image, [ 'sizes', size, 'url' ] ) ||\n\t\tget( image, [ 'media_details', 'sizes', size, 'source_url' ] ) ||\n\t\timage.url;\n\treturn imageProps;\n};\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily\n * while the image is being uploaded and will not have an id yet allocated.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the URL a Blob URL\n */\nconst isTemporaryImage = ( id, url ) => ! id && isBlobURL( url );\n\n/**\n * Is the url for the image hosted externally. An externally hosted image has no\n * id and is not a blob url.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the url an externally hosted url?\n */\nexport const isExternalImage = ( id, url ) => url && ! id && ! isBlobURL( url );\n\n/**\n * Checks if WP generated default image size. Size generation is skipped\n * when the image is smaller than the said size.\n *\n * @param {Object} image\n * @param {string} defaultSize\n *\n * @return {boolean} Whether or not it has default image size.\n */\nfunction hasDefaultSize( image, defaultSize ) {\n\treturn (\n\t\thas( image, [ 'sizes', defaultSize, 'url' ] ) ||\n\t\thas( image, [ 'media_details', 'sizes', defaultSize, 'source_url' ] )\n\t);\n}\n\nexport function ImageEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tclassName,\n\tnoticeUI,\n\tinsertBlocksAfter,\n\tnoticeOperations,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\tcaption,\n\t\talign,\n\t\tid,\n\t\twidth,\n\t\theight,\n\t\tsizeSlug,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst altRef = useRef();\n\tuseEffect( () => {\n\t\taltRef.current = alt;\n\t}, [ alt ] );\n\n\tconst captionRef = useRef();\n\tuseEffect( () => {\n\t\tcaptionRef.current = caption;\n\t}, [ caption ] );\n\n\tconst ref = useRef();\n\tconst { imageDefaultSize, mediaUpload } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn pick( getSettings(), [ 'imageDefaultSize', 'mediaUpload' ] );\n\t}, [] );\n\n\tfunction onUploadError( message ) {\n\t\tnoticeOperations.removeAllNotices();\n\t\tnoticeOperations.createErrorNotice( message );\n\t\tsetAttributes( {\n\t\t\tsrc: undefined,\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t} );\n\t\tsetTemporaryURL( undefined );\n\t}\n\n\tfunction onSelectImage( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: undefined,\n\t\t\t\talt: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\ttitle: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t} );\n\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\n\t\t\treturn;\n\t\t}\n\n\t\tsetTemporaryURL();\n\n\t\tlet mediaAttributes = pickRelevantMediaFiles( media, imageDefaultSize );\n\n\t\t// If a caption text was meanwhile written by the user,\n\t\t// make sure the text is not overwritten by empty captions.\n\t\tif ( captionRef.current && ! get( mediaAttributes, [ 'caption' ] ) ) {\n\t\t\tmediaAttributes = omit( mediaAttributes, [ 'caption' ] );\n\t\t}\n\n\t\tlet additionalAttributes;\n\t\t// Reset the dimension attributes if changing to a different image.\n\t\tif ( ! media.id || media.id !== id ) {\n\t\t\tadditionalAttributes = {\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\t// Fallback to size \"full\" if there's no default image size.\n\t\t\t\t// It means the image is smaller, and the block will use a full-size URL.\n\t\t\t\tsizeSlug: hasDefaultSize( media, imageDefaultSize )\n\t\t\t\t\t? imageDefaultSize\n\t\t\t\t\t: 'full',\n\t\t\t};\n\t\t} else {\n\t\t\t// Keep the same url when selecting the same file, so \"Image Size\"\n\t\t\t// option is not changed.\n\t\t\tadditionalAttributes = { url };\n\t\t}\n\n\t\t// Check if default link setting should be used.\n\t\tlet linkDestination = attributes.linkDestination;\n\t\tif ( ! linkDestination ) {\n\t\t\t// Use the WordPress option to determine the proper default.\n\t\t\t// The constants used in Gutenberg do not match WP options so a little more complicated than ideal.\n\t\t\t// TODO: fix this in a follow up PR, requires updating media-text and ui component.\n\t\t\tswitch (\n\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\tLINK_DESTINATION_NONE\n\t\t\t) {\n\t\t\t\tcase 'file':\n\t\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_MEDIA;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'post':\n\t\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_CUSTOM:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_CUSTOM;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_NONE:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_NONE;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// Check if the image is linked to it's media.\n\t\tlet href;\n\t\tswitch ( linkDestination ) {\n\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\thref = media.url;\n\t\t\t\tbreak;\n\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\thref = media.link;\n\t\t\t\tbreak;\n\t\t}\n\t\tmediaAttributes.href = href;\n\n\t\tsetAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\t...additionalAttributes,\n\t\t\tlinkDestination,\n\t\t} );\n\t}\n\n\tfunction onSelectURL( newURL ) {\n\t\tif ( newURL !== url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: newURL,\n\t\t\t\tid: undefined,\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\tsizeSlug: imageDefaultSize,\n\t\t\t} );\n\t\t}\n\t}\n\n\tfunction updateAlignment( nextAlign ) {\n\t\tconst extraUpdatedAttributes = [ 'wide', 'full' ].includes( nextAlign )\n\t\t\t? { width: undefined, height: undefined }\n\t\t\t: {};\n\t\tsetAttributes( {\n\t\t\t...extraUpdatedAttributes,\n\t\t\talign: nextAlign,\n\t\t} );\n\t}\n\n\tlet isTemp = isTemporaryImage( id, url );\n\n\t// Upload a temporary image on mount.\n\tuseEffect( () => {\n\t\tif ( ! isTemp ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst file = getBlobByURL( url );\n\n\t\tif ( file ) {\n\t\t\tmediaUpload( {\n\t\t\t\tfilesList: [ file ],\n\t\t\t\tonFileChange: ( [ img ] ) => {\n\t\t\t\t\tonSelectImage( img );\n\t\t\t\t},\n\t\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\t\tonError: ( message ) => {\n\t\t\t\t\tisTemp = false;\n\t\t\t\t\tonUploadError( message );\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\t// If an image is temporary, revoke the Blob url when it is uploaded (and is\n\t// no longer temporary).\n\tuseEffect( () => {\n\t\tif ( isTemp ) {\n\t\t\tsetTemporaryURL( url );\n\t\t\treturn;\n\t\t}\n\t\trevokeBlobURL( temporaryURL );\n\t}, [ isTemp, url ] );\n\n\tconst isExternal = isExternalImage( id, url );\n\tconst src = isExternal ? url : undefined;\n\tconst mediaPreview = !! url && (\n\t\t<img\n\t\t\talt={ __( 'Edit image' ) }\n\t\t\ttitle={ __( 'Edit image' ) }\n\t\t\tclassName={ 'edit-image-preview' }\n\t\t\tsrc={ url }\n\t\t/>\n\t);\n\n\tconst borderProps = useBorderProps( attributes );\n\n\tconst classes = classnames( className, {\n\t\t'is-transient': temporaryURL,\n\t\t'is-resized': !! width || !! height,\n\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t'has-custom-border':\n\t\t\t!! borderProps.className || ! isEmpty( borderProps.style ),\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tref,\n\t\tclassName: classes,\n\t} );\n\n\treturn (\n\t\t<figure { ...blockProps }>\n\t\t\t{ ( temporaryURL || url ) && (\n\t\t\t\t<Image\n\t\t\t\t\ttemporaryURL={ temporaryURL }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonSelectImage={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonUploadError={ onUploadError }\n\t\t\t\t\tcontainerRef={ ref }\n\t\t\t\t\tcontext={ context }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ! url && (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t<BlockAlignmentControl\n\t\t\t\t\t\tvalue={ align }\n\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<MediaPlaceholder\n\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\tnotices={ noticeUI }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tvalue={ { id, src } }\n\t\t\t\tmediaPreview={ mediaPreview }\n\t\t\t\tdisableMediaButtons={ temporaryURL || url }\n\t\t\t/>\n\t\t</figure>\n\t);\n}\n\nexport default withNotices( ImageEdit );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/image/edit.js"],"names":["classnames","get","has","isEmpty","omit","pick","getBlobByURL","isBlobURL","revokeBlobURL","withNotices","Placeholder","useSelect","BlockAlignmentControl","BlockControls","BlockIcon","MediaPlaceholder","useBlockProps","store","blockEditorStore","__experimentalUseBorderProps","useBorderProps","useEffect","useRef","useState","__","image","icon","Image","placeholder","content","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_CUSTOM","LINK_DESTINATION_MEDIA","LINK_DESTINATION_NONE","ALLOWED_MEDIA_TYPES","pickRelevantMediaFiles","size","imageProps","url","isTemporaryImage","id","isExternalImage","hasDefaultSize","defaultSize","ImageEdit","attributes","setAttributes","isSelected","className","noticeUI","insertBlocksAfter","noticeOperations","onReplace","context","clientId","alt","caption","align","width","height","sizeSlug","temporaryURL","setTemporaryURL","altRef","current","captionRef","ref","imageDefaultSize","mediaUpload","select","getSettings","onUploadError","message","removeAllNotices","createErrorNotice","src","undefined","onSelectImage","media","title","mediaAttributes","additionalAttributes","linkDestination","window","wp","view","settings","defaultProps","link","href","onSelectURL","newURL","updateAlignment","nextAlign","extraUpdatedAttributes","includes","isTemp","file","filesList","onFileChange","img","allowedTypes","onError","isExternal","mediaPreview","borderProps","classes","style","blockProps"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AACA,SAASC,GAAT,EAAcC,GAAd,EAAmBC,OAAnB,EAA4BC,IAA5B,EAAkCC,IAAlC,QAA8C,QAA9C;AAEA;AACA;AACA;;AACA,SAASC,YAAT,EAAuBC,SAAvB,EAAkCC,aAAlC,QAAuD,iBAAvD;AACA,SAASC,WAAT,EAAsBC,WAAtB,QAAyC,uBAAzC;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SACCC,qBADD,EAECC,aAFD,EAGCC,SAHD,EAICC,gBAJD,EAKCC,aALD,EAMCC,KAAK,IAAIC,gBANV,EAOCC,4BAA4B,IAAIC,cAPjC,QAQO,yBARP;AASA,SAASC,SAAT,EAAoBC,MAApB,EAA4BC,QAA5B,QAA4C,oBAA5C;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,KAAK,IAAIC,IAAlB,QAA8B,kBAA9B;AAEA;AACA;AACA;;AACA,OAAOC,KAAP,MAAkB,SAAlB,C,CAEA;;AACA,MAAMC,WAAW,GAAKC,OAAF,IAAe;AAClC,SACC,cAAC,WAAD;AACC,IAAA,SAAS,EAAC,gCADX;AAEC,IAAA,gBAAgB,EAAG,IAFpB;AAGC,IAAA,IAAI,EAAGH,IAHR;AAIC,IAAA,KAAK,EAAGF,EAAE,CAAE,OAAF,CAJX;AAKC,IAAA,YAAY,EAAGA,EAAE,CAChB,gFADgB;AALlB,KASGK,OATH,CADD;AAaA,CAdD;AAgBA;AACA;AACA;;;AACA,SACCC,2BADD,EAECC,uBAFD,EAGCC,sBAHD,EAICC,qBAJD,EAKCC,mBALD,QAMO,aANP;AAQA,OAAO,MAAMC,sBAAsB,GAAG,CAAEV,KAAF,EAASW,IAAT,KAAmB;AACxD,QAAMC,UAAU,GAAGhC,IAAI,CAAEoB,KAAF,EAAS,CAAE,KAAF,EAAS,IAAT,EAAe,MAAf,EAAuB,SAAvB,CAAT,CAAvB;AACAY,EAAAA,UAAU,CAACC,GAAX,GACCrC,GAAG,CAAEwB,KAAF,EAAS,CAAE,OAAF,EAAWW,IAAX,EAAiB,KAAjB,CAAT,CAAH,IACAnC,GAAG,CAAEwB,KAAF,EAAS,CAAE,eAAF,EAAmB,OAAnB,EAA4BW,IAA5B,EAAkC,YAAlC,CAAT,CADH,IAEAX,KAAK,CAACa,GAHP;AAIA,SAAOD,UAAP;AACA,CAPM;AASP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAME,gBAAgB,GAAG,CAAEC,EAAF,EAAMF,GAAN,KAAe,CAAEE,EAAF,IAAQjC,SAAS,CAAE+B,GAAF,CAAzD;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,OAAO,MAAMG,eAAe,GAAG,CAAED,EAAF,EAAMF,GAAN,KAAeA,GAAG,IAAI,CAAEE,EAAT,IAAe,CAAEjC,SAAS,CAAE+B,GAAF,CAAjE;AAEP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,SAASI,cAAT,CAAyBjB,KAAzB,EAAgCkB,WAAhC,EAA8C;AAC7C,SACCzC,GAAG,CAAEuB,KAAF,EAAS,CAAE,OAAF,EAAWkB,WAAX,EAAwB,KAAxB,CAAT,CAAH,IACAzC,GAAG,CAAEuB,KAAF,EAAS,CAAE,eAAF,EAAmB,OAAnB,EAA4BkB,WAA5B,EAAyC,YAAzC,CAAT,CAFJ;AAIA;;AAED,OAAO,SAASC,SAAT,OAWH;AAAA,MAXuB;AAC1BC,IAAAA,UAD0B;AAE1BC,IAAAA,aAF0B;AAG1BC,IAAAA,UAH0B;AAI1BC,IAAAA,SAJ0B;AAK1BC,IAAAA,QAL0B;AAM1BC,IAAAA,iBAN0B;AAO1BC,IAAAA,gBAP0B;AAQ1BC,IAAAA,SAR0B;AAS1BC,IAAAA,OAT0B;AAU1BC,IAAAA;AAV0B,GAWvB;AACH,QAAM;AACLhB,IAAAA,GAAG,GAAG,EADD;AAELiB,IAAAA,GAFK;AAGLC,IAAAA,OAHK;AAILC,IAAAA,KAJK;AAKLjB,IAAAA,EALK;AAMLkB,IAAAA,KANK;AAOLC,IAAAA,MAPK;AAQLC,IAAAA;AARK,MASFf,UATJ;AAUA,QAAM,CAAEgB,YAAF,EAAgBC,eAAhB,IAAoCvC,QAAQ,EAAlD;AAEA,QAAMwC,MAAM,GAAGzC,MAAM,EAArB;AACAD,EAAAA,SAAS,CAAE,MAAM;AAChB0C,IAAAA,MAAM,CAACC,OAAP,GAAiBT,GAAjB;AACA,GAFQ,EAEN,CAAEA,GAAF,CAFM,CAAT;AAIA,QAAMU,UAAU,GAAG3C,MAAM,EAAzB;AACAD,EAAAA,SAAS,CAAE,MAAM;AAChB4C,IAAAA,UAAU,CAACD,OAAX,GAAqBR,OAArB;AACA,GAFQ,EAEN,CAAEA,OAAF,CAFM,CAAT;AAIA,QAAMU,GAAG,GAAG5C,MAAM,EAAlB;AACA,QAAM;AAAE6C,IAAAA,gBAAF;AAAoBC,IAAAA;AAApB,MAAoCzD,SAAS,CAAI0D,MAAF,IAAc;AAClE,UAAM;AAAEC,MAAAA;AAAF,QAAkBD,MAAM,CAAEnD,gBAAF,CAA9B;AACA,WAAOb,IAAI,CAAEiE,WAAW,EAAb,EAAiB,CAAE,kBAAF,EAAsB,aAAtB,CAAjB,CAAX;AACA,GAHkD,EAGhD,EAHgD,CAAnD;;AAKA,WAASC,aAAT,CAAwBC,OAAxB,EAAkC;AACjCrB,IAAAA,gBAAgB,CAACsB,gBAAjB;AACAtB,IAAAA,gBAAgB,CAACuB,iBAAjB,CAAoCF,OAApC;AACA1B,IAAAA,aAAa,CAAE;AACd6B,MAAAA,GAAG,EAAEC,SADS;AAEdpC,MAAAA,EAAE,EAAEoC,SAFU;AAGdtC,MAAAA,GAAG,EAAEsC;AAHS,KAAF,CAAb;AAKAd,IAAAA,eAAe,CAAEc,SAAF,CAAf;AACA;;AAED,WAASC,aAAT,CAAwBC,KAAxB,EAAgC;AAAA;;AAC/B,QAAK,CAAEA,KAAF,IAAW,CAAEA,KAAK,CAACxC,GAAxB,EAA8B;AAC7BQ,MAAAA,aAAa,CAAE;AACdR,QAAAA,GAAG,EAAEsC,SADS;AAEdrB,QAAAA,GAAG,EAAEqB,SAFS;AAGdpC,QAAAA,EAAE,EAAEoC,SAHU;AAIdG,QAAAA,KAAK,EAAEH,SAJO;AAKdpB,QAAAA,OAAO,EAAEoB;AALK,OAAF,CAAb;AAQA;AACA;;AAED,QAAKrE,SAAS,CAAEuE,KAAK,CAACxC,GAAR,CAAd,EAA8B;AAC7BwB,MAAAA,eAAe,CAAEgB,KAAK,CAACxC,GAAR,CAAf;AACA;AACA;;AAEDwB,IAAAA,eAAe;AAEf,QAAIkB,eAAe,GAAG7C,sBAAsB,CAAE2C,KAAF,EAASX,gBAAT,CAA5C,CApB+B,CAsB/B;AACA;;AACA,QAAKF,UAAU,CAACD,OAAX,IAAsB,CAAE/D,GAAG,CAAE+E,eAAF,EAAmB,CAAE,SAAF,CAAnB,CAAhC,EAAqE;AACpEA,MAAAA,eAAe,GAAG5E,IAAI,CAAE4E,eAAF,EAAmB,CAAE,SAAF,CAAnB,CAAtB;AACA;;AAED,QAAIC,oBAAJ,CA5B+B,CA6B/B;;AACA,QAAK,CAAEH,KAAK,CAACtC,EAAR,IAAcsC,KAAK,CAACtC,EAAN,KAAaA,EAAhC,EAAqC;AACpCyC,MAAAA,oBAAoB,GAAG;AACtBvB,QAAAA,KAAK,EAAEkB,SADe;AAEtBjB,QAAAA,MAAM,EAAEiB,SAFc;AAGtB;AACA;AACAhB,QAAAA,QAAQ,EAAElB,cAAc,CAAEoC,KAAF,EAASX,gBAAT,CAAd,GACPA,gBADO,GAEP;AAPmB,OAAvB;AASA,KAVD,MAUO;AACN;AACA;AACAc,MAAAA,oBAAoB,GAAG;AAAE3C,QAAAA;AAAF,OAAvB;AACA,KA5C8B,CA8C/B;;;AACA,QAAI4C,eAAe,GAAGrC,UAAU,CAACqC,eAAjC;;AACA,QAAK,CAAEA,eAAP,EAAyB;AACxB;AACA;AACA;AACA,cACC,YAAAC,MAAM,UAAN,wDAAQC,EAAR,8EAAYN,KAAZ,+FAAmBO,IAAnB,0GAAyBC,QAAzB,4GAAmCC,YAAnC,kFAAiDC,IAAjD,KACAvD,qBAFD;AAIC,aAAK,MAAL;AACA,aAAKD,sBAAL;AACCkD,UAAAA,eAAe,GAAGlD,sBAAlB;AACA;;AACD,aAAK,MAAL;AACA,aAAKF,2BAAL;AACCoD,UAAAA,eAAe,GAAGpD,2BAAlB;AACA;;AACD,aAAKC,uBAAL;AACCmD,UAAAA,eAAe,GAAGnD,uBAAlB;AACA;;AACD,aAAKE,qBAAL;AACCiD,UAAAA,eAAe,GAAGjD,qBAAlB;AACA;AAjBF;AAmBA,KAvE8B,CAyE/B;;;AACA,QAAIwD,IAAJ;;AACA,YAASP,eAAT;AACC,WAAKlD,sBAAL;AACCyD,QAAAA,IAAI,GAAGX,KAAK,CAACxC,GAAb;AACA;;AACD,WAAKR,2BAAL;AACC2D,QAAAA,IAAI,GAAGX,KAAK,CAACU,IAAb;AACA;AANF;;AAQAR,IAAAA,eAAe,CAACS,IAAhB,GAAuBA,IAAvB;AAEA3C,IAAAA,aAAa,CAAE,EACd,GAAGkC,eADW;AAEd,SAAGC,oBAFW;AAGdC,MAAAA;AAHc,KAAF,CAAb;AAKA;;AAED,WAASQ,WAAT,CAAsBC,MAAtB,EAA+B;AAC9B,QAAKA,MAAM,KAAKrD,GAAhB,EAAsB;AACrBQ,MAAAA,aAAa,CAAE;AACdR,QAAAA,GAAG,EAAEqD,MADS;AAEdnD,QAAAA,EAAE,EAAEoC,SAFU;AAGdlB,QAAAA,KAAK,EAAEkB,SAHO;AAIdjB,QAAAA,MAAM,EAAEiB,SAJM;AAKdhB,QAAAA,QAAQ,EAAEO;AALI,OAAF,CAAb;AAOA;AACD;;AAED,WAASyB,eAAT,CAA0BC,SAA1B,EAAsC;AACrC,UAAMC,sBAAsB,GAAG,CAAE,MAAF,EAAU,MAAV,EAAmBC,QAAnB,CAA6BF,SAA7B,IAC5B;AAAEnC,MAAAA,KAAK,EAAEkB,SAAT;AAAoBjB,MAAAA,MAAM,EAAEiB;AAA5B,KAD4B,GAE5B,EAFH;AAGA9B,IAAAA,aAAa,CAAE,EACd,GAAGgD,sBADW;AAEdrC,MAAAA,KAAK,EAAEoC;AAFO,KAAF,CAAb;AAIA;;AAED,MAAIG,MAAM,GAAGzD,gBAAgB,CAAEC,EAAF,EAAMF,GAAN,CAA7B,CA1JG,CA4JH;;AACAjB,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAK,CAAE2E,MAAP,EAAgB;AACf;AACA;;AAED,UAAMC,IAAI,GAAG3F,YAAY,CAAEgC,GAAF,CAAzB;;AAEA,QAAK2D,IAAL,EAAY;AACX7B,MAAAA,WAAW,CAAE;AACZ8B,QAAAA,SAAS,EAAE,CAAED,IAAF,CADC;AAEZE,QAAAA,YAAY,EAAE,SAAe;AAAA,cAAb,CAAEC,GAAF,CAAa;AAC5BvB,UAAAA,aAAa,CAAEuB,GAAF,CAAb;AACA,SAJW;AAKZC,QAAAA,YAAY,EAAEnE,mBALF;AAMZoE,QAAAA,OAAO,EAAI9B,OAAF,IAAe;AACvBwB,UAAAA,MAAM,GAAG,KAAT;AACAzB,UAAAA,aAAa,CAAEC,OAAF,CAAb;AACA;AATW,OAAF,CAAX;AAWA;AACD,GApBQ,EAoBN,EApBM,CAAT,CA7JG,CAmLH;AACA;;AACAnD,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAK2E,MAAL,EAAc;AACblC,MAAAA,eAAe,CAAExB,GAAF,CAAf;AACA;AACA;;AACD9B,IAAAA,aAAa,CAAEqD,YAAF,CAAb;AACA,GANQ,EAMN,CAAEmC,MAAF,EAAU1D,GAAV,CANM,CAAT;AAQA,QAAMiE,UAAU,GAAG9D,eAAe,CAAED,EAAF,EAAMF,GAAN,CAAlC;AACA,QAAMqC,GAAG,GAAG4B,UAAU,GAAGjE,GAAH,GAASsC,SAA/B;AACA,QAAM4B,YAAY,GAAG,CAAC,CAAElE,GAAH,IACpB;AACC,IAAA,GAAG,EAAGd,EAAE,CAAE,YAAF,CADT;AAEC,IAAA,KAAK,EAAGA,EAAE,CAAE,YAAF,CAFX;AAGC,IAAA,SAAS,EAAG,oBAHb;AAIC,IAAA,GAAG,EAAGc;AAJP,IADD;AASA,QAAMmE,WAAW,GAAGrF,cAAc,CAAEyB,UAAF,CAAlC;AAEA,QAAM6D,OAAO,GAAG1G,UAAU,CAAEgD,SAAF,EAAa;AACtC,oBAAgBa,YADsB;AAEtC,kBAAc,CAAC,CAAEH,KAAH,IAAY,CAAC,CAAEC,MAFS;AAGtC,KAAG,QAAQC,QAAU,EAArB,GAA0BA,QAHY;AAItC,yBACC,CAAC,CAAE6C,WAAW,CAACzD,SAAf,IAA4B,CAAE7C,OAAO,CAAEsG,WAAW,CAACE,KAAd;AALA,GAAb,CAA1B;AAQA,QAAMC,UAAU,GAAG5F,aAAa,CAAE;AACjCkD,IAAAA,GADiC;AAEjClB,IAAAA,SAAS,EAAE0D;AAFsB,GAAF,CAAhC;AAKA,SACC,wBAAaE,UAAb,EACG,CAAE/C,YAAY,IAAIvB,GAAlB,KACD,cAAC,KAAD;AACC,IAAA,YAAY,EAAGuB,YADhB;AAEC,IAAA,UAAU,EAAGhB,UAFd;AAGC,IAAA,aAAa,EAAGC,aAHjB;AAIC,IAAA,UAAU,EAAGC,UAJd;AAKC,IAAA,iBAAiB,EAAGG,iBALrB;AAMC,IAAA,SAAS,EAAGE,SANb;AAOC,IAAA,aAAa,EAAGyB,aAPjB;AAQC,IAAA,WAAW,EAAGa,WARf;AASC,IAAA,aAAa,EAAGnB,aATjB;AAUC,IAAA,YAAY,EAAGL,GAVhB;AAWC,IAAA,OAAO,EAAGb,OAXX;AAYC,IAAA,QAAQ,EAAGC;AAZZ,IAFF,EAiBG,CAAEhB,GAAF,IACD,cAAC,aAAD;AAAe,IAAA,KAAK,EAAC;AAArB,KACC,cAAC,qBAAD;AACC,IAAA,KAAK,EAAGmB,KADT;AAEC,IAAA,QAAQ,EAAGmC;AAFZ,IADD,CAlBF,EAyBC,cAAC,gBAAD;AACC,IAAA,IAAI,EAAG,cAAC,SAAD;AAAW,MAAA,IAAI,EAAGlE;AAAlB,MADR;AAEC,IAAA,QAAQ,EAAGmD,aAFZ;AAGC,IAAA,WAAW,EAAGa,WAHf;AAIC,IAAA,OAAO,EAAGzC,QAJX;AAKC,IAAA,OAAO,EAAGsB,aALX;AAMC,IAAA,WAAW,EAAG3C,WANf;AAOC,IAAA,MAAM,EAAC,SAPR;AAQC,IAAA,YAAY,EAAGM,mBARhB;AASC,IAAA,KAAK,EAAG;AAAEM,MAAAA,EAAF;AAAMmC,MAAAA;AAAN,KATT;AAUC,IAAA,YAAY,EAAG6B,YAVhB;AAWC,IAAA,mBAAmB,EAAG3C,YAAY,IAAIvB;AAXvC,IAzBD,CADD;AAyCA;AAED,eAAe7B,WAAW,CAAEmC,SAAF,CAA1B","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { get, has, isEmpty, omit, pick } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { getBlobByURL, isBlobURL, revokeBlobURL } from '@wordpress/blob';\nimport { withNotices, Placeholder } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport {\n\tBlockAlignmentControl,\n\tBlockControls,\n\tBlockIcon,\n\tMediaPlaceholder,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalUseBorderProps as useBorderProps,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { image as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport Image from './image';\n\n// Much of this description is duplicated from MediaPlaceholder.\nconst placeholder = ( content ) => {\n\treturn (\n\t\t<Placeholder\n\t\t\tclassName=\"block-editor-media-placeholder\"\n\t\t\twithIllustration={ true }\n\t\t\ticon={ icon }\n\t\t\tlabel={ __( 'Image' ) }\n\t\t\tinstructions={ __(\n\t\t\t\t'Upload an image file, pick one from your media library, or add one with a URL.'\n\t\t\t) }\n\t\t>\n\t\t\t{ content }\n\t\t</Placeholder>\n\t);\n};\n\n/**\n * Module constants\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_CUSTOM,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n\tALLOWED_MEDIA_TYPES,\n} from './constants';\n\nexport const pickRelevantMediaFiles = ( image, size ) => {\n\tconst imageProps = pick( image, [ 'alt', 'id', 'link', 'caption' ] );\n\timageProps.url =\n\t\tget( image, [ 'sizes', size, 'url' ] ) ||\n\t\tget( image, [ 'media_details', 'sizes', size, 'source_url' ] ) ||\n\t\timage.url;\n\treturn imageProps;\n};\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily\n * while the image is being uploaded and will not have an id yet allocated.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the URL a Blob URL\n */\nconst isTemporaryImage = ( id, url ) => ! id && isBlobURL( url );\n\n/**\n * Is the url for the image hosted externally. An externally hosted image has no\n * id and is not a blob url.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the url an externally hosted url?\n */\nexport const isExternalImage = ( id, url ) => url && ! id && ! isBlobURL( url );\n\n/**\n * Checks if WP generated default image size. Size generation is skipped\n * when the image is smaller than the said size.\n *\n * @param {Object} image\n * @param {string} defaultSize\n *\n * @return {boolean} Whether or not it has default image size.\n */\nfunction hasDefaultSize( image, defaultSize ) {\n\treturn (\n\t\thas( image, [ 'sizes', defaultSize, 'url' ] ) ||\n\t\thas( image, [ 'media_details', 'sizes', defaultSize, 'source_url' ] )\n\t);\n}\n\nexport function ImageEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tclassName,\n\tnoticeUI,\n\tinsertBlocksAfter,\n\tnoticeOperations,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\tcaption,\n\t\talign,\n\t\tid,\n\t\twidth,\n\t\theight,\n\t\tsizeSlug,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst altRef = useRef();\n\tuseEffect( () => {\n\t\taltRef.current = alt;\n\t}, [ alt ] );\n\n\tconst captionRef = useRef();\n\tuseEffect( () => {\n\t\tcaptionRef.current = caption;\n\t}, [ caption ] );\n\n\tconst ref = useRef();\n\tconst { imageDefaultSize, mediaUpload } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn pick( getSettings(), [ 'imageDefaultSize', 'mediaUpload' ] );\n\t}, [] );\n\n\tfunction onUploadError( message ) {\n\t\tnoticeOperations.removeAllNotices();\n\t\tnoticeOperations.createErrorNotice( message );\n\t\tsetAttributes( {\n\t\t\tsrc: undefined,\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t} );\n\t\tsetTemporaryURL( undefined );\n\t}\n\n\tfunction onSelectImage( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: undefined,\n\t\t\t\talt: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\ttitle: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t} );\n\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\n\t\t\treturn;\n\t\t}\n\n\t\tsetTemporaryURL();\n\n\t\tlet mediaAttributes = pickRelevantMediaFiles( media, imageDefaultSize );\n\n\t\t// If a caption text was meanwhile written by the user,\n\t\t// make sure the text is not overwritten by empty captions.\n\t\tif ( captionRef.current && ! get( mediaAttributes, [ 'caption' ] ) ) {\n\t\t\tmediaAttributes = omit( mediaAttributes, [ 'caption' ] );\n\t\t}\n\n\t\tlet additionalAttributes;\n\t\t// Reset the dimension attributes if changing to a different image.\n\t\tif ( ! media.id || media.id !== id ) {\n\t\t\tadditionalAttributes = {\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\t// Fallback to size \"full\" if there's no default image size.\n\t\t\t\t// It means the image is smaller, and the block will use a full-size URL.\n\t\t\t\tsizeSlug: hasDefaultSize( media, imageDefaultSize )\n\t\t\t\t\t? imageDefaultSize\n\t\t\t\t\t: 'full',\n\t\t\t};\n\t\t} else {\n\t\t\t// Keep the same url when selecting the same file, so \"Image Size\"\n\t\t\t// option is not changed.\n\t\t\tadditionalAttributes = { url };\n\t\t}\n\n\t\t// Check if default link setting should be used.\n\t\tlet linkDestination = attributes.linkDestination;\n\t\tif ( ! linkDestination ) {\n\t\t\t// Use the WordPress option to determine the proper default.\n\t\t\t// The constants used in Gutenberg do not match WP options so a little more complicated than ideal.\n\t\t\t// TODO: fix this in a follow up PR, requires updating media-text and ui component.\n\t\t\tswitch (\n\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\tLINK_DESTINATION_NONE\n\t\t\t) {\n\t\t\t\tcase 'file':\n\t\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_MEDIA;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'post':\n\t\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_CUSTOM:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_CUSTOM;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_NONE:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_NONE;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// Check if the image is linked to it's media.\n\t\tlet href;\n\t\tswitch ( linkDestination ) {\n\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\thref = media.url;\n\t\t\t\tbreak;\n\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\thref = media.link;\n\t\t\t\tbreak;\n\t\t}\n\t\tmediaAttributes.href = href;\n\n\t\tsetAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\t...additionalAttributes,\n\t\t\tlinkDestination,\n\t\t} );\n\t}\n\n\tfunction onSelectURL( newURL ) {\n\t\tif ( newURL !== url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: newURL,\n\t\t\t\tid: undefined,\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\tsizeSlug: imageDefaultSize,\n\t\t\t} );\n\t\t}\n\t}\n\n\tfunction updateAlignment( nextAlign ) {\n\t\tconst extraUpdatedAttributes = [ 'wide', 'full' ].includes( nextAlign )\n\t\t\t? { width: undefined, height: undefined }\n\t\t\t: {};\n\t\tsetAttributes( {\n\t\t\t...extraUpdatedAttributes,\n\t\t\talign: nextAlign,\n\t\t} );\n\t}\n\n\tlet isTemp = isTemporaryImage( id, url );\n\n\t// Upload a temporary image on mount.\n\tuseEffect( () => {\n\t\tif ( ! isTemp ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst file = getBlobByURL( url );\n\n\t\tif ( file ) {\n\t\t\tmediaUpload( {\n\t\t\t\tfilesList: [ file ],\n\t\t\t\tonFileChange: ( [ img ] ) => {\n\t\t\t\t\tonSelectImage( img );\n\t\t\t\t},\n\t\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\t\tonError: ( message ) => {\n\t\t\t\t\tisTemp = false;\n\t\t\t\t\tonUploadError( message );\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\t// If an image is temporary, revoke the Blob url when it is uploaded (and is\n\t// no longer temporary).\n\tuseEffect( () => {\n\t\tif ( isTemp ) {\n\t\t\tsetTemporaryURL( url );\n\t\t\treturn;\n\t\t}\n\t\trevokeBlobURL( temporaryURL );\n\t}, [ isTemp, url ] );\n\n\tconst isExternal = isExternalImage( id, url );\n\tconst src = isExternal ? url : undefined;\n\tconst mediaPreview = !! url && (\n\t\t<img\n\t\t\talt={ __( 'Edit image' ) }\n\t\t\ttitle={ __( 'Edit image' ) }\n\t\t\tclassName={ 'edit-image-preview' }\n\t\t\tsrc={ url }\n\t\t/>\n\t);\n\n\tconst borderProps = useBorderProps( attributes );\n\n\tconst classes = classnames( className, {\n\t\t'is-transient': temporaryURL,\n\t\t'is-resized': !! width || !! height,\n\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t'has-custom-border':\n\t\t\t!! borderProps.className || ! isEmpty( borderProps.style ),\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tref,\n\t\tclassName: classes,\n\t} );\n\n\treturn (\n\t\t<figure { ...blockProps }>\n\t\t\t{ ( temporaryURL || url ) && (\n\t\t\t\t<Image\n\t\t\t\t\ttemporaryURL={ temporaryURL }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonSelectImage={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonUploadError={ onUploadError }\n\t\t\t\t\tcontainerRef={ ref }\n\t\t\t\t\tcontext={ context }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ! url && (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t<BlockAlignmentControl\n\t\t\t\t\t\tvalue={ align }\n\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<MediaPlaceholder\n\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\tnotices={ noticeUI }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tvalue={ { id, src } }\n\t\t\t\tmediaPreview={ mediaPreview }\n\t\t\t\tdisableMediaButtons={ temporaryURL || url }\n\t\t\t/>\n\t\t</figure>\n\t);\n}\n\nexport default withNotices( ImageEdit );\n"]}
@@ -27,31 +27,36 @@ const metadata = {
27
27
  type: "string",
28
28
  source: "attribute",
29
29
  selector: "img",
30
- attribute: "src"
30
+ attribute: "src",
31
+ __experimentalRole: "content"
31
32
  },
32
33
  alt: {
33
34
  type: "string",
34
35
  source: "attribute",
35
36
  selector: "img",
36
37
  attribute: "alt",
37
- "default": ""
38
+ "default": "",
39
+ __experimentalRole: "content"
38
40
  },
39
41
  caption: {
40
42
  type: "string",
41
43
  source: "html",
42
- selector: "figcaption"
44
+ selector: "figcaption",
45
+ __experimentalRole: "content"
43
46
  },
44
47
  title: {
45
48
  type: "string",
46
49
  source: "attribute",
47
50
  selector: "img",
48
- attribute: "title"
51
+ attribute: "title",
52
+ __experimentalRole: "content"
49
53
  },
50
54
  href: {
51
55
  type: "string",
52
56
  source: "attribute",
53
57
  selector: "figure > a",
54
- attribute: "href"
58
+ attribute: "href",
59
+ __experimentalRole: "content"
55
60
  },
56
61
  rel: {
57
62
  type: "string",
@@ -66,7 +71,8 @@ const metadata = {
66
71
  attribute: "class"
67
72
  },
68
73
  id: {
69
- type: "number"
74
+ type: "number",
75
+ __experimentalRole: "content"
70
76
  },
71
77
  width: {
72
78
  type: "number"
@@ -90,7 +96,7 @@ const metadata = {
90
96
  supports: {
91
97
  anchor: true,
92
98
  color: {
93
- __experimentalDuotone: "img",
99
+ __experimentalDuotone: "img, .components-placeholder",
94
100
  text: false,
95
101
  background: false
96
102
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/image/index.js"],"names":["__","image","icon","deprecated","edit","save","transforms","name","metadata","settings","example","attributes","sizeSlug","url","caption","__experimentalLabel","context","alt","getEditWrapperProps","align"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,KAAK,IAAIC,IAAlB,QAA8B,kBAA9B;AAEA;AACA;AACA;;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,IAAP,MAAiB,QAAjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBP,EAAAA,IADuB;AAEvBQ,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,QAAQ,EAAE,OADC;AAEXC,MAAAA,GAAG,EAAE,8CAFM;AAGX;AACAC,MAAAA,OAAO,EAAEd,EAAE,CAAE,8CAAF;AAJA;AADJ,GAFc;;AAUvBe,EAAAA,mBAAmB,CAAEJ,UAAF,QAA4B;AAAA,QAAd;AAAEK,MAAAA;AAAF,KAAc;;AAC9C,QAAKA,OAAO,KAAK,eAAjB,EAAmC;AAClC,YAAM;AAAEF,QAAAA,OAAF;AAAWG,QAAAA,GAAX;AAAgBJ,QAAAA;AAAhB,UAAwBF,UAA9B;;AAEA,UAAK,CAAEE,GAAP,EAAa;AACZ,eAAOb,EAAE,CAAE,OAAF,CAAT;AACA;;AAED,UAAK,CAAEiB,GAAP,EAAa;AACZ,eAAOH,OAAO,IAAI,EAAlB;AACA,OATiC,CAWlC;AACA;;;AACA,aAAOG,GAAG,IAAKH,OAAO,GAAG,OAAOA,OAAV,GAAoB,EAAhC,CAAV;AACA;AACD,GA1BsB;;AA2BvBI,EAAAA,mBAAmB,CAAEP,UAAF,EAAe;AACjC,WAAO;AACN,oBAAcA,UAAU,CAACQ;AADnB,KAAP;AAGA,GA/BsB;;AAgCvBb,EAAAA,UAhCuB;AAiCvBF,EAAAA,IAjCuB;AAkCvBC,EAAAA,IAlCuB;AAmCvBF,EAAAA;AAnCuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { image as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tsizeSlug: 'large',\n\t\t\turl: 'https://s.w.org/images/core/5.3/MtBlanc1.jpg',\n\t\t\t// translators: Caption accompanying an image of the Mont Blanc, which serves as an example for the Image block.\n\t\t\tcaption: __( 'Mont Blanc appears—still, snowy, and serene.' ),\n\t\t},\n\t},\n\t__experimentalLabel( attributes, { context } ) {\n\t\tif ( context === 'accessibility' ) {\n\t\t\tconst { caption, alt, url } = attributes;\n\n\t\t\tif ( ! url ) {\n\t\t\t\treturn __( 'Empty' );\n\t\t\t}\n\n\t\t\tif ( ! alt ) {\n\t\t\t\treturn caption || '';\n\t\t\t}\n\n\t\t\t// This is intended to be read by a screen reader.\n\t\t\t// A period simply means a pause, no need to translate it.\n\t\t\treturn alt + ( caption ? '. ' + caption : '' );\n\t\t}\n\t},\n\tgetEditWrapperProps( attributes ) {\n\t\treturn {\n\t\t\t'data-align': attributes.align,\n\t\t};\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/image/index.js"],"names":["__","image","icon","deprecated","edit","save","transforms","name","metadata","settings","example","attributes","sizeSlug","url","caption","__experimentalLabel","context","alt","getEditWrapperProps","align"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,KAAK,IAAIC,IAAlB,QAA8B,kBAA9B;AAEA;AACA;AACA;;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,IAAP,MAAiB,QAAjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBP,EAAAA,IADuB;AAEvBQ,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,QAAQ,EAAE,OADC;AAEXC,MAAAA,GAAG,EAAE,8CAFM;AAGX;AACAC,MAAAA,OAAO,EAAEd,EAAE,CAAE,8CAAF;AAJA;AADJ,GAFc;;AAUvBe,EAAAA,mBAAmB,CAAEJ,UAAF,QAA4B;AAAA,QAAd;AAAEK,MAAAA;AAAF,KAAc;;AAC9C,QAAKA,OAAO,KAAK,eAAjB,EAAmC;AAClC,YAAM;AAAEF,QAAAA,OAAF;AAAWG,QAAAA,GAAX;AAAgBJ,QAAAA;AAAhB,UAAwBF,UAA9B;;AAEA,UAAK,CAAEE,GAAP,EAAa;AACZ,eAAOb,EAAE,CAAE,OAAF,CAAT;AACA;;AAED,UAAK,CAAEiB,GAAP,EAAa;AACZ,eAAOH,OAAO,IAAI,EAAlB;AACA,OATiC,CAWlC;AACA;;;AACA,aAAOG,GAAG,IAAKH,OAAO,GAAG,OAAOA,OAAV,GAAoB,EAAhC,CAAV;AACA;AACD,GA1BsB;;AA2BvBI,EAAAA,mBAAmB,CAAEP,UAAF,EAAe;AACjC,WAAO;AACN,oBAAcA,UAAU,CAACQ;AADnB,KAAP;AAGA,GA/BsB;;AAgCvBb,EAAAA,UAhCuB;AAiCvBF,EAAAA,IAjCuB;AAkCvBC,EAAAA,IAlCuB;AAmCvBF,EAAAA;AAnCuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { image as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tsizeSlug: 'large',\n\t\t\turl: 'https://s.w.org/images/core/5.3/MtBlanc1.jpg',\n\t\t\t// translators: Caption accompanying an image of the Mont Blanc, which serves as an example for the Image block.\n\t\t\tcaption: __( 'Mont Blanc appears—still, snowy, and serene.' ),\n\t\t},\n\t},\n\t__experimentalLabel( attributes, { context } ) {\n\t\tif ( context === 'accessibility' ) {\n\t\t\tconst { caption, alt, url } = attributes;\n\n\t\t\tif ( ! url ) {\n\t\t\t\treturn __( 'Empty' );\n\t\t\t}\n\n\t\t\tif ( ! alt ) {\n\t\t\t\treturn caption || '';\n\t\t\t}\n\n\t\t\t// This is intended to be read by a screen reader.\n\t\t\t// A period simply means a pause, no need to translate it.\n\t\t\treturn alt + ( caption ? '. ' + caption : '' );\n\t\t}\n\t},\n\tgetEditWrapperProps( attributes ) {\n\t\treturn {\n\t\t\t'data-align': attributes.align,\n\t\t};\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n"]}
@@ -2,7 +2,6 @@
2
2
  * External dependencies
3
3
  */
4
4
  import { Platform } from 'react-native';
5
- import { sortBy } from 'lodash';
6
5
  /**
7
6
  * WordPress dependencies
8
7
  */
@@ -34,6 +33,7 @@ import * as mediaText from './media-text';
34
33
  import * as latestComments from './latest-comments';
35
34
  import * as latestPosts from './latest-posts';
36
35
  import * as list from './list';
36
+ import * as listItem from './list-item';
37
37
  import * as missing from './missing';
38
38
  import * as more from './more';
39
39
  import * as nextpage from './nextpage';
@@ -59,7 +59,7 @@ import { transformationCategory } from './transformationCategories';
59
59
  const ALLOWED_BLOCKS_GRADIENT_SUPPORT = ['core/button'];
60
60
  export const coreBlocks = [// Common blocks are grouped at the top to prioritize their display
61
61
  // in various contexts — like the inserter and auto-complete components.
62
- paragraph, image, heading, gallery, list, quote, // Register all remaining core blocks.
62
+ paragraph, image, heading, gallery, list, listItem, quote, // Register all remaining core blocks.
63
63
  shortcode, archives, audio, button, calendar, categories, code, columns, column, cover, embed, file, html, mediaText, latestComments, latestPosts, missing, more, nextpage, preformatted, pullquote, rss, search, separator, reusableBlock, spacer, table, tagCloud, textColumns, verse, video, classic, buttons, socialLink, socialLinks].reduce((accumulator, block) => {
64
64
  accumulator[block.name] = block;
65
65
  return accumulator;
@@ -112,7 +112,12 @@ const registerBlockVariations = block => {
112
112
  settings,
113
113
  name
114
114
  } = block;
115
- sortBy(settings.variations, 'title').forEach(v => {
115
+
116
+ if (!settings.variations) {
117
+ return;
118
+ }
119
+
120
+ [...settings.variations].sort((a, b) => a.title.localeCompare(b.title)).forEach(v => {
116
121
  registerBlockType(`${name}-${v.name}`, { ...metadata,
117
122
  name: `${name}-${v.name}`,
118
123
  ...settings,
@@ -128,7 +133,16 @@ const registerBlockVariations = block => {
128
133
  const devOnly = block => !!__DEV__ ? block : null; // eslint-disable-next-line no-unused-vars
129
134
 
130
135
 
131
- const iOSOnly = block => Platform.OS === 'ios' ? block : devOnly(block); // Hide the Classic block and SocialLink block
136
+ const iOSOnly = block => Platform.OS === 'ios' ? block : devOnly(block); // To be removed once List V2 is released on the web editor.
137
+
138
+
139
+ function listCheck(listBlock, blocksFlags) {
140
+ if (blocksFlags !== null && blocksFlags !== void 0 && blocksFlags.__experimentalEnableListBlockV2) {
141
+ listBlock.settings = listBlock === null || listBlock === void 0 ? void 0 : listBlock.settingsV2;
142
+ }
143
+
144
+ return listBlock;
145
+ } // Hide the Classic block and SocialLink block
132
146
 
133
147
 
134
148
  addFilter('blocks.registerBlockType', 'core/react-native-editor', (settings, name) => {
@@ -166,12 +180,14 @@ addFilter('blocks.registerBlockType', 'core/react-native-editor', (settings, nam
166
180
  *
167
181
  * registerCoreBlocks();
168
182
  * ```
183
+ * @param {Object} [blocksFlags] Experimental flags
184
+ *
169
185
  *
170
186
  */
171
187
 
172
- export const registerCoreBlocks = () => {
188
+ export const registerCoreBlocks = blocksFlags => {
173
189
  // When adding new blocks to this list please also consider updating /src/block-support/supported-blocks.json in the Gutenberg-Mobile repo
174
- [paragraph, heading, devOnly(code), missing, more, image, video, nextpage, separator, list, quote, mediaText, preformatted, gallery, columns, column, group, classic, button, spacer, shortcode, buttons, latestPosts, verse, cover, socialLink, socialLinks, pullquote, file, audio, reusableBlock, search, embed].forEach(registerBlock);
190
+ [paragraph, heading, devOnly(code), missing, more, image, video, nextpage, separator, listCheck(list, blocksFlags), listItem, quote, mediaText, preformatted, gallery, columns, column, group, classic, button, spacer, shortcode, buttons, latestPosts, verse, cover, socialLink, socialLinks, pullquote, file, audio, reusableBlock, search, embed].forEach(registerBlock);
175
191
  registerBlockVariations(socialLink);
176
192
  setDefaultBlockName(paragraph.name);
177
193
  setFreeformContentHandlerName(classic.name);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/index.native.js"],"names":["Platform","sortBy","hasBlockSupport","registerBlockType","setDefaultBlockName","setFreeformContentHandlerName","setUnregisteredTypeHandlerName","setGroupingBlockName","addFilter","paragraph","image","heading","quote","gallery","archives","audio","button","calendar","categories","code","columns","column","cover","embed","file","html","mediaText","latestComments","latestPosts","list","missing","more","nextpage","preformatted","pullquote","reusableBlock","rss","search","separator","shortcode","spacer","table","textColumns","verse","video","tagCloud","classic","group","buttons","socialLink","socialLinks","transformationCategory","ALLOWED_BLOCKS_GRADIENT_SUPPORT","coreBlocks","reduce","accumulator","block","name","registerBlock","metadata","settings","supports","includes","color","gradients","registerBlockVariations","variations","forEach","v","icon","title","devOnly","__DEV__","iOSOnly","OS","hiddenBlocks","inserter","transforms","supportedMobileTransforms","registerCoreBlocks","NEW_BLOCK_TYPES"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { Platform } from 'react-native';\nimport { sortBy } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\thasBlockSupport,\n\tregisterBlockType,\n\tsetDefaultBlockName,\n\tsetFreeformContentHandlerName,\n\tsetUnregisteredTypeHandlerName,\n\tsetGroupingBlockName,\n} from '@wordpress/blocks';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport * as paragraph from './paragraph';\nimport * as image from './image';\nimport * as heading from './heading';\nimport * as quote from './quote';\nimport * as gallery from './gallery';\nimport * as archives from './archives';\nimport * as audio from './audio';\nimport * as button from './button';\nimport * as calendar from './calendar';\nimport * as categories from './categories';\nimport * as code from './code';\nimport * as columns from './columns';\nimport * as column from './column';\nimport * as cover from './cover';\nimport * as embed from './embed';\nimport * as file from './file';\nimport * as html from './html';\nimport * as mediaText from './media-text';\nimport * as latestComments from './latest-comments';\nimport * as latestPosts from './latest-posts';\nimport * as list from './list';\nimport * as missing from './missing';\nimport * as more from './more';\nimport * as nextpage from './nextpage';\nimport * as preformatted from './preformatted';\nimport * as pullquote from './pullquote';\nimport * as reusableBlock from './block';\nimport * as rss from './rss';\nimport * as search from './search';\nimport * as separator from './separator';\nimport * as shortcode from './shortcode';\nimport * as spacer from './spacer';\nimport * as table from './table';\nimport * as textColumns from './text-columns';\nimport * as verse from './verse';\nimport * as video from './video';\nimport * as tagCloud from './tag-cloud';\nimport * as classic from './freeform';\nimport * as group from './group';\nimport * as buttons from './buttons';\nimport * as socialLink from './social-link';\nimport * as socialLinks from './social-links';\n\nimport { transformationCategory } from './transformationCategories';\n\nconst ALLOWED_BLOCKS_GRADIENT_SUPPORT = [ 'core/button' ];\n\nexport const coreBlocks = [\n\t// Common blocks are grouped at the top to prioritize their display\n\t// in various contexts — like the inserter and auto-complete components.\n\tparagraph,\n\timage,\n\theading,\n\tgallery,\n\tlist,\n\tquote,\n\n\t// Register all remaining core blocks.\n\tshortcode,\n\tarchives,\n\taudio,\n\tbutton,\n\tcalendar,\n\tcategories,\n\tcode,\n\tcolumns,\n\tcolumn,\n\tcover,\n\tembed,\n\tfile,\n\thtml,\n\tmediaText,\n\tlatestComments,\n\tlatestPosts,\n\tmissing,\n\tmore,\n\tnextpage,\n\tpreformatted,\n\tpullquote,\n\trss,\n\tsearch,\n\tseparator,\n\treusableBlock,\n\tspacer,\n\ttable,\n\ttagCloud,\n\ttextColumns,\n\tverse,\n\tvideo,\n\tclassic,\n\tbuttons,\n\tsocialLink,\n\tsocialLinks,\n].reduce( ( accumulator, block ) => {\n\taccumulator[ block.name ] = block;\n\treturn accumulator;\n}, {} );\n\n/**\n * Function to register an individual block.\n *\n * @param {Object} block The block to be registered.\n *\n */\nexport const registerBlock = ( block ) => {\n\tif ( ! block ) {\n\t\treturn;\n\t}\n\tconst { metadata, settings, name } = block;\n\tconst { supports } = metadata;\n\n\tregisterBlockType(\n\t\t{\n\t\t\tname,\n\t\t\t...metadata,\n\t\t\t// Gradients support only available for blocks listed in ALLOWED_BLOCKS_GRADIENT_SUPPORT.\n\t\t\t...( ! ALLOWED_BLOCKS_GRADIENT_SUPPORT.includes( name ) &&\n\t\t\tsupports?.color?.gradients\n\t\t\t\t? {\n\t\t\t\t\t\tsupports: {\n\t\t\t\t\t\t\t...supports,\n\t\t\t\t\t\t\tcolor: { ...supports.color, gradients: false },\n\t\t\t\t\t\t},\n\t\t\t\t }\n\t\t\t\t: {} ),\n\t\t},\n\t\tsettings\n\t);\n};\n\n/**\n * Function to register a block variations e.g. social icons different types.\n *\n * @param {Object} block The block which variations will be registered.\n *\n */\nconst registerBlockVariations = ( block ) => {\n\tconst { metadata, settings, name } = block;\n\n\tsortBy( settings.variations, 'title' ).forEach( ( v ) => {\n\t\tregisterBlockType( `${ name }-${ v.name }`, {\n\t\t\t...metadata,\n\t\t\tname: `${ name }-${ v.name }`,\n\t\t\t...settings,\n\t\t\ticon: v.icon(),\n\t\t\ttitle: v.title,\n\t\t\tvariations: [],\n\t\t} );\n\t} );\n};\n\n// Only enable code block for development\n// eslint-disable-next-line no-undef\nconst devOnly = ( block ) => ( !! __DEV__ ? block : null );\n\n// eslint-disable-next-line no-unused-vars\nconst iOSOnly = ( block ) =>\n\tPlatform.OS === 'ios' ? block : devOnly( block );\n\n// Hide the Classic block and SocialLink block\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/react-native-editor',\n\t( settings, name ) => {\n\t\tconst hiddenBlocks = [ 'core/freeform', 'core/social-link' ];\n\t\tif (\n\t\t\thiddenBlocks.includes( name ) &&\n\t\t\thasBlockSupport( settings, 'inserter', true )\n\t\t) {\n\t\t\tsettings.supports = {\n\t\t\t\t...settings.supports,\n\t\t\t\tinserter: false,\n\t\t\t};\n\t\t}\n\n\t\treturn settings;\n\t}\n);\n\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/react-native-editor',\n\t( settings, name ) => {\n\t\tif ( ! settings.transforms ) {\n\t\t\treturn settings;\n\t\t}\n\n\t\tif ( ! settings.transforms.supportedMobileTransforms ) {\n\t\t\treturn {\n\t\t\t\t...settings,\n\t\t\t\ttransforms: {\n\t\t\t\t\t...settings.transforms,\n\t\t\t\t\tsupportedMobileTransforms: transformationCategory( name ),\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\n\t\treturn settings;\n\t}\n);\n\n/**\n * Function to register core blocks provided by the block editor.\n *\n * @example\n * ```js\n * import { registerCoreBlocks } from '@wordpress/block-library';\n *\n * registerCoreBlocks();\n * ```\n *\n */\nexport const registerCoreBlocks = () => {\n\t// When adding new blocks to this list please also consider updating /src/block-support/supported-blocks.json in the Gutenberg-Mobile repo\n\t[\n\t\tparagraph,\n\t\theading,\n\t\tdevOnly( code ),\n\t\tmissing,\n\t\tmore,\n\t\timage,\n\t\tvideo,\n\t\tnextpage,\n\t\tseparator,\n\t\tlist,\n\t\tquote,\n\t\tmediaText,\n\t\tpreformatted,\n\t\tgallery,\n\t\tcolumns,\n\t\tcolumn,\n\t\tgroup,\n\t\tclassic,\n\t\tbutton,\n\t\tspacer,\n\t\tshortcode,\n\t\tbuttons,\n\t\tlatestPosts,\n\t\tverse,\n\t\tcover,\n\t\tsocialLink,\n\t\tsocialLinks,\n\t\tpullquote,\n\t\tfile,\n\t\taudio,\n\t\treusableBlock,\n\t\tsearch,\n\t\tembed,\n\t].forEach( registerBlock );\n\n\tregisterBlockVariations( socialLink );\n\tsetDefaultBlockName( paragraph.name );\n\tsetFreeformContentHandlerName( classic.name );\n\tsetUnregisteredTypeHandlerName( missing.name );\n\tif ( group ) {\n\t\tsetGroupingBlockName( group.name );\n\t}\n};\n\n/**\n * Dictates which block types are considered \"new.\" For each of the block types\n * below, if the native host app does not already have an impression count set,\n * an initial count will be set. When a block type's impression count is greater\n * than 0, a \"new\" badge is displayed on the block type within the block\n * inserter.\n *\n * @constant {{ string, number }}\n */\nexport const NEW_BLOCK_TYPES = {\n\t[ embed.name ]: 40,\n\t[ search.name ]: 40,\n\t[ audio.name ]: 40,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/index.native.js"],"names":["Platform","hasBlockSupport","registerBlockType","setDefaultBlockName","setFreeformContentHandlerName","setUnregisteredTypeHandlerName","setGroupingBlockName","addFilter","paragraph","image","heading","quote","gallery","archives","audio","button","calendar","categories","code","columns","column","cover","embed","file","html","mediaText","latestComments","latestPosts","list","listItem","missing","more","nextpage","preformatted","pullquote","reusableBlock","rss","search","separator","shortcode","spacer","table","textColumns","verse","video","tagCloud","classic","group","buttons","socialLink","socialLinks","transformationCategory","ALLOWED_BLOCKS_GRADIENT_SUPPORT","coreBlocks","reduce","accumulator","block","name","registerBlock","metadata","settings","supports","includes","color","gradients","registerBlockVariations","variations","sort","a","b","title","localeCompare","forEach","v","icon","devOnly","__DEV__","iOSOnly","OS","listCheck","listBlock","blocksFlags","__experimentalEnableListBlockV2","settingsV2","hiddenBlocks","inserter","transforms","supportedMobileTransforms","registerCoreBlocks","NEW_BLOCK_TYPES"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { Platform } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\thasBlockSupport,\n\tregisterBlockType,\n\tsetDefaultBlockName,\n\tsetFreeformContentHandlerName,\n\tsetUnregisteredTypeHandlerName,\n\tsetGroupingBlockName,\n} from '@wordpress/blocks';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport * as paragraph from './paragraph';\nimport * as image from './image';\nimport * as heading from './heading';\nimport * as quote from './quote';\nimport * as gallery from './gallery';\nimport * as archives from './archives';\nimport * as audio from './audio';\nimport * as button from './button';\nimport * as calendar from './calendar';\nimport * as categories from './categories';\nimport * as code from './code';\nimport * as columns from './columns';\nimport * as column from './column';\nimport * as cover from './cover';\nimport * as embed from './embed';\nimport * as file from './file';\nimport * as html from './html';\nimport * as mediaText from './media-text';\nimport * as latestComments from './latest-comments';\nimport * as latestPosts from './latest-posts';\nimport * as list from './list';\nimport * as listItem from './list-item';\nimport * as missing from './missing';\nimport * as more from './more';\nimport * as nextpage from './nextpage';\nimport * as preformatted from './preformatted';\nimport * as pullquote from './pullquote';\nimport * as reusableBlock from './block';\nimport * as rss from './rss';\nimport * as search from './search';\nimport * as separator from './separator';\nimport * as shortcode from './shortcode';\nimport * as spacer from './spacer';\nimport * as table from './table';\nimport * as textColumns from './text-columns';\nimport * as verse from './verse';\nimport * as video from './video';\nimport * as tagCloud from './tag-cloud';\nimport * as classic from './freeform';\nimport * as group from './group';\nimport * as buttons from './buttons';\nimport * as socialLink from './social-link';\nimport * as socialLinks from './social-links';\n\nimport { transformationCategory } from './transformationCategories';\n\nconst ALLOWED_BLOCKS_GRADIENT_SUPPORT = [ 'core/button' ];\n\nexport const coreBlocks = [\n\t// Common blocks are grouped at the top to prioritize their display\n\t// in various contexts — like the inserter and auto-complete components.\n\tparagraph,\n\timage,\n\theading,\n\tgallery,\n\tlist,\n\tlistItem,\n\tquote,\n\n\t// Register all remaining core blocks.\n\tshortcode,\n\tarchives,\n\taudio,\n\tbutton,\n\tcalendar,\n\tcategories,\n\tcode,\n\tcolumns,\n\tcolumn,\n\tcover,\n\tembed,\n\tfile,\n\thtml,\n\tmediaText,\n\tlatestComments,\n\tlatestPosts,\n\tmissing,\n\tmore,\n\tnextpage,\n\tpreformatted,\n\tpullquote,\n\trss,\n\tsearch,\n\tseparator,\n\treusableBlock,\n\tspacer,\n\ttable,\n\ttagCloud,\n\ttextColumns,\n\tverse,\n\tvideo,\n\tclassic,\n\tbuttons,\n\tsocialLink,\n\tsocialLinks,\n].reduce( ( accumulator, block ) => {\n\taccumulator[ block.name ] = block;\n\treturn accumulator;\n}, {} );\n\n/**\n * Function to register an individual block.\n *\n * @param {Object} block The block to be registered.\n *\n */\nexport const registerBlock = ( block ) => {\n\tif ( ! block ) {\n\t\treturn;\n\t}\n\tconst { metadata, settings, name } = block;\n\tconst { supports } = metadata;\n\n\tregisterBlockType(\n\t\t{\n\t\t\tname,\n\t\t\t...metadata,\n\t\t\t// Gradients support only available for blocks listed in ALLOWED_BLOCKS_GRADIENT_SUPPORT.\n\t\t\t...( ! ALLOWED_BLOCKS_GRADIENT_SUPPORT.includes( name ) &&\n\t\t\tsupports?.color?.gradients\n\t\t\t\t? {\n\t\t\t\t\t\tsupports: {\n\t\t\t\t\t\t\t...supports,\n\t\t\t\t\t\t\tcolor: { ...supports.color, gradients: false },\n\t\t\t\t\t\t},\n\t\t\t\t }\n\t\t\t\t: {} ),\n\t\t},\n\t\tsettings\n\t);\n};\n\n/**\n * Function to register a block variations e.g. social icons different types.\n *\n * @param {Object} block The block which variations will be registered.\n *\n */\nconst registerBlockVariations = ( block ) => {\n\tconst { metadata, settings, name } = block;\n\n\tif ( ! settings.variations ) {\n\t\treturn;\n\t}\n\n\t[ ...settings.variations ]\n\t\t.sort( ( a, b ) => a.title.localeCompare( b.title ) )\n\t\t.forEach( ( v ) => {\n\t\t\tregisterBlockType( `${ name }-${ v.name }`, {\n\t\t\t\t...metadata,\n\t\t\t\tname: `${ name }-${ v.name }`,\n\t\t\t\t...settings,\n\t\t\t\ticon: v.icon(),\n\t\t\t\ttitle: v.title,\n\t\t\t\tvariations: [],\n\t\t\t} );\n\t\t} );\n};\n\n// Only enable code block for development\n// eslint-disable-next-line no-undef\nconst devOnly = ( block ) => ( !! __DEV__ ? block : null );\n\n// eslint-disable-next-line no-unused-vars\nconst iOSOnly = ( block ) =>\n\tPlatform.OS === 'ios' ? block : devOnly( block );\n\n// To be removed once List V2 is released on the web editor.\nfunction listCheck( listBlock, blocksFlags ) {\n\tif ( blocksFlags?.__experimentalEnableListBlockV2 ) {\n\t\tlistBlock.settings = listBlock?.settingsV2;\n\t}\n\treturn listBlock;\n}\n\n// Hide the Classic block and SocialLink block\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/react-native-editor',\n\t( settings, name ) => {\n\t\tconst hiddenBlocks = [ 'core/freeform', 'core/social-link' ];\n\t\tif (\n\t\t\thiddenBlocks.includes( name ) &&\n\t\t\thasBlockSupport( settings, 'inserter', true )\n\t\t) {\n\t\t\tsettings.supports = {\n\t\t\t\t...settings.supports,\n\t\t\t\tinserter: false,\n\t\t\t};\n\t\t}\n\n\t\treturn settings;\n\t}\n);\n\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/react-native-editor',\n\t( settings, name ) => {\n\t\tif ( ! settings.transforms ) {\n\t\t\treturn settings;\n\t\t}\n\n\t\tif ( ! settings.transforms.supportedMobileTransforms ) {\n\t\t\treturn {\n\t\t\t\t...settings,\n\t\t\t\ttransforms: {\n\t\t\t\t\t...settings.transforms,\n\t\t\t\t\tsupportedMobileTransforms: transformationCategory( name ),\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\n\t\treturn settings;\n\t}\n);\n\n/**\n * Function to register core blocks provided by the block editor.\n *\n * @example\n * ```js\n * import { registerCoreBlocks } from '@wordpress/block-library';\n *\n * registerCoreBlocks();\n * ```\n * @param {Object} [blocksFlags] Experimental flags\n *\n *\n */\nexport const registerCoreBlocks = ( blocksFlags ) => {\n\t// When adding new blocks to this list please also consider updating /src/block-support/supported-blocks.json in the Gutenberg-Mobile repo\n\t[\n\t\tparagraph,\n\t\theading,\n\t\tdevOnly( code ),\n\t\tmissing,\n\t\tmore,\n\t\timage,\n\t\tvideo,\n\t\tnextpage,\n\t\tseparator,\n\t\tlistCheck( list, blocksFlags ),\n\t\tlistItem,\n\t\tquote,\n\t\tmediaText,\n\t\tpreformatted,\n\t\tgallery,\n\t\tcolumns,\n\t\tcolumn,\n\t\tgroup,\n\t\tclassic,\n\t\tbutton,\n\t\tspacer,\n\t\tshortcode,\n\t\tbuttons,\n\t\tlatestPosts,\n\t\tverse,\n\t\tcover,\n\t\tsocialLink,\n\t\tsocialLinks,\n\t\tpullquote,\n\t\tfile,\n\t\taudio,\n\t\treusableBlock,\n\t\tsearch,\n\t\tembed,\n\t].forEach( registerBlock );\n\n\tregisterBlockVariations( socialLink );\n\tsetDefaultBlockName( paragraph.name );\n\tsetFreeformContentHandlerName( classic.name );\n\tsetUnregisteredTypeHandlerName( missing.name );\n\tif ( group ) {\n\t\tsetGroupingBlockName( group.name );\n\t}\n};\n\n/**\n * Dictates which block types are considered \"new.\" For each of the block types\n * below, if the native host app does not already have an impression count set,\n * an initial count will be set. When a block type's impression count is greater\n * than 0, a \"new\" badge is displayed on the block type within the block\n * inserter.\n *\n * @constant {{ string, number }}\n */\nexport const NEW_BLOCK_TYPES = {\n\t[ embed.name ]: 40,\n\t[ search.name ]: 40,\n\t[ audio.name ]: 40,\n};\n"]}
@@ -68,6 +68,10 @@ const metadata = {
68
68
  text: true
69
69
  }
70
70
  },
71
+ spacing: {
72
+ margin: true,
73
+ padding: true
74
+ },
71
75
  __unstablePasteTextInline: true,
72
76
  __experimentalSelector: "ol,ul",
73
77
  __experimentalSlashInserter: true
@@ -81,7 +85,7 @@ import settingsV2 from './v2';
81
85
  const {
82
86
  name
83
87
  } = metadata;
84
- export { metadata, name };
88
+ export { metadata, name, settingsV2 };
85
89
  const settingsV1 = {
86
90
  icon,
87
91
  example: {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/list/index.js"],"names":["list","icon","deprecated","edit","save","transforms","settingsV2","name","metadata","settingsV1","example","attributes","values","merge","attributesToMerge","settings","process","env","IS_GUTENBERG_PLUGIN","window","__experimentalEnableListBlockV2"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,IAAI,IAAIC,IAAjB,QAA6B,kBAA7B;AAEA;AACA;AACA;;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,IAAP,MAAiB,QAAjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,UAAP,MAAuB,MAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,MAAME,UAAU,GAAG;AAClBR,EAAAA,IADkB;AAElBS,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,MAAM,EAAE;AADG;AADJ,GAFS;AAOlBP,EAAAA,UAPkB;;AAQlBQ,EAAAA,KAAK,CAAEF,UAAF,EAAcG,iBAAd,EAAkC;AACtC,UAAM;AAAEF,MAAAA;AAAF,QAAaE,iBAAnB;;AAEA,QAAK,CAAEF,MAAF,IAAYA,MAAM,KAAK,WAA5B,EAA0C;AACzC,aAAOD,UAAP;AACA;;AAED,WAAO,EACN,GAAGA,UADG;AAENC,MAAAA,MAAM,EAAED,UAAU,CAACC,MAAX,GAAoBA;AAFtB,KAAP;AAIA,GAnBiB;;AAoBlBT,EAAAA,IApBkB;AAqBlBC,EAAAA,IArBkB;AAsBlBF,EAAAA;AAtBkB,CAAnB;AAyBA,IAAIa,QAAQ,GAAGN,UAAf;;AACA,IAAKO,OAAO,CAACC,GAAR,CAAYC,mBAAjB,EAAuC;AAAA;;AACtCH,EAAAA,QAAQ,GAAG,WAAAI,MAAM,UAAN,kCAAQC,+BAAR,GACRd,UADQ,GAERG,UAFH;AAGA;;AACD,SAASM,QAAT","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { list as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\nimport settingsV2 from './v2';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nconst settingsV1 = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tvalues: '<li>Alice.</li><li>The White Rabbit.</li><li>The Cheshire Cat.</li><li>The Mad Hatter.</li><li>The Queen of Hearts.</li>',\n\t\t},\n\t},\n\ttransforms,\n\tmerge( attributes, attributesToMerge ) {\n\t\tconst { values } = attributesToMerge;\n\n\t\tif ( ! values || values === '<li></li>' ) {\n\t\t\treturn attributes;\n\t\t}\n\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tvalues: attributes.values + values,\n\t\t};\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nlet settings = settingsV1;\nif ( process.env.IS_GUTENBERG_PLUGIN ) {\n\tsettings = window?.__experimentalEnableListBlockV2\n\t\t? settingsV2\n\t\t: settingsV1;\n}\nexport { settings };\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/list/index.js"],"names":["list","icon","deprecated","edit","save","transforms","settingsV2","name","metadata","settingsV1","example","attributes","values","merge","attributesToMerge","settings","process","env","IS_GUTENBERG_PLUGIN","window","__experimentalEnableListBlockV2"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,IAAI,IAAIC,IAAjB,QAA6B,kBAA7B;AAEA;AACA;AACA;;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,IAAP,MAAiB,QAAjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,UAAP,MAAuB,MAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB,EAAyBD,UAAzB;AAEA,MAAMG,UAAU,GAAG;AAClBR,EAAAA,IADkB;AAElBS,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,MAAM,EAAE;AADG;AADJ,GAFS;AAOlBP,EAAAA,UAPkB;;AAQlBQ,EAAAA,KAAK,CAAEF,UAAF,EAAcG,iBAAd,EAAkC;AACtC,UAAM;AAAEF,MAAAA;AAAF,QAAaE,iBAAnB;;AAEA,QAAK,CAAEF,MAAF,IAAYA,MAAM,KAAK,WAA5B,EAA0C;AACzC,aAAOD,UAAP;AACA;;AAED,WAAO,EACN,GAAGA,UADG;AAENC,MAAAA,MAAM,EAAED,UAAU,CAACC,MAAX,GAAoBA;AAFtB,KAAP;AAIA,GAnBiB;;AAoBlBT,EAAAA,IApBkB;AAqBlBC,EAAAA,IArBkB;AAsBlBF,EAAAA;AAtBkB,CAAnB;AAyBA,IAAIa,QAAQ,GAAGN,UAAf;;AACA,IAAKO,OAAO,CAACC,GAAR,CAAYC,mBAAjB,EAAuC;AAAA;;AACtCH,EAAAA,QAAQ,GAAG,WAAAI,MAAM,UAAN,kCAAQC,+BAAR,GACRd,UADQ,GAERG,UAFH;AAGA;;AACD,SAASM,QAAT","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { list as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\nimport settingsV2 from './v2';\n\nconst { name } = metadata;\n\nexport { metadata, name, settingsV2 };\n\nconst settingsV1 = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tvalues: '<li>Alice.</li><li>The White Rabbit.</li><li>The Cheshire Cat.</li><li>The Mad Hatter.</li><li>The Queen of Hearts.</li>',\n\t\t},\n\t},\n\ttransforms,\n\tmerge( attributes, attributesToMerge ) {\n\t\tconst { values } = attributesToMerge;\n\n\t\tif ( ! values || values === '<li></li>' ) {\n\t\t\treturn attributes;\n\t\t}\n\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tvalues: attributes.values + values,\n\t\t};\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nlet settings = settingsV1;\nif ( process.env.IS_GUTENBERG_PLUGIN ) {\n\tsettings = window?.__experimentalEnableListBlockV2\n\t\t? settingsV2\n\t\t: settingsV1;\n}\nexport { settings };\n"]}
@@ -15,7 +15,7 @@ import { useDispatch, useSelect, useRegistry } from '@wordpress/data';
15
15
  import { isRTL, __ } from '@wordpress/i18n';
16
16
  import { formatListBullets, formatListBulletsRTL, formatListNumbered, formatListNumberedRTL, formatOutdent, formatOutdentRTL } from '@wordpress/icons';
17
17
  import { createBlock } from '@wordpress/blocks';
18
- import { useCallback, useEffect } from '@wordpress/element';
18
+ import { useCallback, useEffect, Platform } from '@wordpress/element';
19
19
  import deprecated from '@wordpress/deprecated';
20
20
  /**
21
21
  * Internal dependencies
@@ -23,7 +23,9 @@ import deprecated from '@wordpress/deprecated';
23
23
 
24
24
  import OrderedListSettings from '../ordered-list-settings';
25
25
  import { migrateToListV2 } from './migrate';
26
+ import TagName from './tag-name';
26
27
  const TEMPLATE = [['core/list-item']];
28
+ const NATIVE_MARGIN_SPACING = 8;
27
29
  /**
28
30
  * At the moment, deprecations don't handle create blocks from attributes
29
31
  * (like when using CPT templates). For this reason, this hook is necessary
@@ -114,13 +116,21 @@ function Edit(_ref2) {
114
116
  let {
115
117
  attributes,
116
118
  setAttributes,
117
- clientId
119
+ clientId,
120
+ style
118
121
  } = _ref2;
119
- const blockProps = useBlockProps();
122
+ const blockProps = useBlockProps({ ...(Platform.isNative && {
123
+ style
124
+ })
125
+ });
120
126
  const innerBlocksProps = useInnerBlocksProps(blockProps, {
121
127
  allowedBlocks: ['core/list-item'],
122
128
  template: TEMPLATE,
123
- templateInsertUpdatesSelection: true
129
+ templateInsertUpdatesSelection: true,
130
+ ...(Platform.isNative && {
131
+ marginVertical: NATIVE_MARGIN_SPACING,
132
+ marginHorizontal: NATIVE_MARGIN_SPACING
133
+ })
124
134
  });
125
135
  useMigrateOnLoad(attributes, clientId);
126
136
  const {
@@ -128,7 +138,6 @@ function Edit(_ref2) {
128
138
  reversed,
129
139
  start
130
140
  } = attributes;
131
- const TagName = ordered ? 'ol' : 'ul';
132
141
  const controls = createElement(BlockControls, {
133
142
  group: "block"
134
143
  }, createElement(ToolbarButton, {
@@ -155,6 +164,7 @@ function Edit(_ref2) {
155
164
  clientId: clientId
156
165
  }));
157
166
  return createElement(Fragment, null, createElement(TagName, _extends({
167
+ ordered: ordered,
158
168
  reversed: reversed,
159
169
  start: start
160
170
  }, innerBlocksProps)), controls, ordered && createElement(OrderedListSettings, {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/list/v2/edit.js"],"names":["last","BlockControls","useBlockProps","useInnerBlocksProps","store","blockEditorStore","ToolbarButton","useDispatch","useSelect","useRegistry","isRTL","__","formatListBullets","formatListBulletsRTL","formatListNumbered","formatListNumberedRTL","formatOutdent","formatOutdentRTL","createBlock","useCallback","useEffect","deprecated","OrderedListSettings","migrateToListV2","TEMPLATE","useMigrateOnLoad","attributes","clientId","registry","updateBlockAttributes","replaceInnerBlocks","values","newAttributes","newInnerBlocks","since","version","alternative","batch","useOutdentList","canOutdent","innerSelect","getBlockRootClientId","getBlock","parentId","name","replaceBlocks","selectionChange","getBlockAttributes","parentBlockId","parentBlockAttributes","newParentBlock","innerBlocks","IndentUI","outdentList","Edit","setAttributes","blockProps","innerBlocksProps","allowedBlocks","template","templateInsertUpdatesSelection","ordered","reversed","start","TagName","controls"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { last } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { ToolbarButton } from '@wordpress/components';\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport {\n\tformatListBullets,\n\tformatListBulletsRTL,\n\tformatListNumbered,\n\tformatListNumberedRTL,\n\tformatOutdent,\n\tformatOutdentRTL,\n} from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useCallback, useEffect } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport OrderedListSettings from '../ordered-list-settings';\nimport { migrateToListV2 } from './migrate';\n\nconst TEMPLATE = [ [ 'core/list-item' ] ];\n\n/**\n * At the moment, deprecations don't handle create blocks from attributes\n * (like when using CPT templates). For this reason, this hook is necessary\n * to avoid breaking templates using the old list block format.\n *\n * @param {Object} attributes Block attributes.\n * @param {string} clientId Block client ID.\n */\nfunction useMigrateOnLoad( attributes, clientId ) {\n\tconst registry = useRegistry();\n\tconst { updateBlockAttributes, replaceInnerBlocks } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\t// As soon as the block is loaded, migrate it to the new version.\n\n\t\tif ( ! attributes.values ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst [ newAttributes, newInnerBlocks ] = migrateToListV2( attributes );\n\n\t\tdeprecated( 'Value attribute on the list block', {\n\t\t\tsince: '6.0',\n\t\t\tversion: '6.5',\n\t\t\talternative: 'inner blocks',\n\t\t} );\n\n\t\tregistry.batch( () => {\n\t\t\tupdateBlockAttributes( clientId, newAttributes );\n\t\t\treplaceInnerBlocks( clientId, newInnerBlocks );\n\t\t} );\n\t}, [ attributes.values ] );\n}\n\nfunction useOutdentList( clientId ) {\n\tconst { canOutdent } = useSelect(\n\t\t( innerSelect ) => {\n\t\t\tconst { getBlockRootClientId, getBlock } =\n\t\t\t\tinnerSelect( blockEditorStore );\n\t\t\tconst parentId = getBlockRootClientId( clientId );\n\t\t\treturn {\n\t\t\t\tcanOutdent:\n\t\t\t\t\t!! parentId &&\n\t\t\t\t\tgetBlock( parentId ).name === 'core/list-item',\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { replaceBlocks, selectionChange } = useDispatch( blockEditorStore );\n\tconst { getBlockRootClientId, getBlockAttributes, getBlock } =\n\t\tuseSelect( blockEditorStore );\n\n\treturn [\n\t\tcanOutdent,\n\t\tuseCallback( () => {\n\t\t\tconst parentBlockId = getBlockRootClientId( clientId );\n\t\t\tconst parentBlockAttributes = getBlockAttributes( parentBlockId );\n\t\t\t// Create a new parent block without the inner blocks.\n\t\t\tconst newParentBlock = createBlock(\n\t\t\t\t'core/list-item',\n\t\t\t\tparentBlockAttributes\n\t\t\t);\n\t\t\tconst { innerBlocks } = getBlock( clientId );\n\t\t\t// Replace the parent block with a new parent block without inner blocks,\n\t\t\t// and make the inner blocks siblings of the parent.\n\t\t\treplaceBlocks(\n\t\t\t\t[ parentBlockId ],\n\t\t\t\t[ newParentBlock, ...innerBlocks ]\n\t\t\t);\n\t\t\t// Select the last child of the list being outdent.\n\t\t\tselectionChange( last( innerBlocks ).clientId );\n\t\t}, [ clientId ] ),\n\t];\n}\n\nfunction IndentUI( { clientId } ) {\n\tconst [ canOutdent, outdentList ] = useOutdentList( clientId );\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={ outdentList }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nfunction Edit( { attributes, setAttributes, clientId } ) {\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: [ 'core/list-item' ],\n\t\ttemplate: TEMPLATE,\n\t\ttemplateInsertUpdatesSelection: true,\n\t} );\n\tuseMigrateOnLoad( attributes, clientId );\n\tconst { ordered, reversed, start } = attributes;\n\tconst TagName = ordered ? 'ol' : 'ul';\n\n\tconst controls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListBulletsRTL : formatListBullets }\n\t\t\t\ttitle={ __( 'Unordered' ) }\n\t\t\t\tdescribedBy={ __( 'Convert to unordered list' ) }\n\t\t\t\tisActive={ ordered === false }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: false } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListNumberedRTL : formatListNumbered }\n\t\t\t\ttitle={ __( 'Ordered' ) }\n\t\t\t\tdescribedBy={ __( 'Convert to ordered list' ) }\n\t\t\t\tisActive={ ordered === true }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: true } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<IndentUI clientId={ clientId } />\n\t\t</BlockControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<TagName\n\t\t\t\treversed={ reversed }\n\t\t\t\tstart={ start }\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t/>\n\t\t\t{ controls }\n\t\t\t{ ordered && (\n\t\t\t\t<OrderedListSettings\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tordered={ ordered }\n\t\t\t\t\treversed={ reversed }\n\t\t\t\t\tstart={ start }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default Edit;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/list/v2/edit.js"],"names":["last","BlockControls","useBlockProps","useInnerBlocksProps","store","blockEditorStore","ToolbarButton","useDispatch","useSelect","useRegistry","isRTL","__","formatListBullets","formatListBulletsRTL","formatListNumbered","formatListNumberedRTL","formatOutdent","formatOutdentRTL","createBlock","useCallback","useEffect","Platform","deprecated","OrderedListSettings","migrateToListV2","TagName","TEMPLATE","NATIVE_MARGIN_SPACING","useMigrateOnLoad","attributes","clientId","registry","updateBlockAttributes","replaceInnerBlocks","values","newAttributes","newInnerBlocks","since","version","alternative","batch","useOutdentList","canOutdent","innerSelect","getBlockRootClientId","getBlock","parentId","name","replaceBlocks","selectionChange","getBlockAttributes","parentBlockId","parentBlockAttributes","newParentBlock","innerBlocks","IndentUI","outdentList","Edit","setAttributes","style","blockProps","isNative","innerBlocksProps","allowedBlocks","template","templateInsertUpdatesSelection","marginVertical","marginHorizontal","ordered","reversed","start","controls"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { last } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { ToolbarButton } from '@wordpress/components';\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport {\n\tformatListBullets,\n\tformatListBulletsRTL,\n\tformatListNumbered,\n\tformatListNumberedRTL,\n\tformatOutdent,\n\tformatOutdentRTL,\n} from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useCallback, useEffect, Platform } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport OrderedListSettings from '../ordered-list-settings';\nimport { migrateToListV2 } from './migrate';\nimport TagName from './tag-name';\n\nconst TEMPLATE = [ [ 'core/list-item' ] ];\nconst NATIVE_MARGIN_SPACING = 8;\n\n/**\n * At the moment, deprecations don't handle create blocks from attributes\n * (like when using CPT templates). For this reason, this hook is necessary\n * to avoid breaking templates using the old list block format.\n *\n * @param {Object} attributes Block attributes.\n * @param {string} clientId Block client ID.\n */\nfunction useMigrateOnLoad( attributes, clientId ) {\n\tconst registry = useRegistry();\n\tconst { updateBlockAttributes, replaceInnerBlocks } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\t// As soon as the block is loaded, migrate it to the new version.\n\n\t\tif ( ! attributes.values ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst [ newAttributes, newInnerBlocks ] = migrateToListV2( attributes );\n\n\t\tdeprecated( 'Value attribute on the list block', {\n\t\t\tsince: '6.0',\n\t\t\tversion: '6.5',\n\t\t\talternative: 'inner blocks',\n\t\t} );\n\n\t\tregistry.batch( () => {\n\t\t\tupdateBlockAttributes( clientId, newAttributes );\n\t\t\treplaceInnerBlocks( clientId, newInnerBlocks );\n\t\t} );\n\t}, [ attributes.values ] );\n}\n\nfunction useOutdentList( clientId ) {\n\tconst { canOutdent } = useSelect(\n\t\t( innerSelect ) => {\n\t\t\tconst { getBlockRootClientId, getBlock } =\n\t\t\t\tinnerSelect( blockEditorStore );\n\t\t\tconst parentId = getBlockRootClientId( clientId );\n\t\t\treturn {\n\t\t\t\tcanOutdent:\n\t\t\t\t\t!! parentId &&\n\t\t\t\t\tgetBlock( parentId ).name === 'core/list-item',\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { replaceBlocks, selectionChange } = useDispatch( blockEditorStore );\n\tconst { getBlockRootClientId, getBlockAttributes, getBlock } =\n\t\tuseSelect( blockEditorStore );\n\n\treturn [\n\t\tcanOutdent,\n\t\tuseCallback( () => {\n\t\t\tconst parentBlockId = getBlockRootClientId( clientId );\n\t\t\tconst parentBlockAttributes = getBlockAttributes( parentBlockId );\n\t\t\t// Create a new parent block without the inner blocks.\n\t\t\tconst newParentBlock = createBlock(\n\t\t\t\t'core/list-item',\n\t\t\t\tparentBlockAttributes\n\t\t\t);\n\t\t\tconst { innerBlocks } = getBlock( clientId );\n\t\t\t// Replace the parent block with a new parent block without inner blocks,\n\t\t\t// and make the inner blocks siblings of the parent.\n\t\t\treplaceBlocks(\n\t\t\t\t[ parentBlockId ],\n\t\t\t\t[ newParentBlock, ...innerBlocks ]\n\t\t\t);\n\t\t\t// Select the last child of the list being outdent.\n\t\t\tselectionChange( last( innerBlocks ).clientId );\n\t\t}, [ clientId ] ),\n\t];\n}\n\nfunction IndentUI( { clientId } ) {\n\tconst [ canOutdent, outdentList ] = useOutdentList( clientId );\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={ outdentList }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nfunction Edit( { attributes, setAttributes, clientId, style } ) {\n\tconst blockProps = useBlockProps( {\n\t\t...( Platform.isNative && { style } ),\n\t} );\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: [ 'core/list-item' ],\n\t\ttemplate: TEMPLATE,\n\t\ttemplateInsertUpdatesSelection: true,\n\t\t...( Platform.isNative && {\n\t\t\tmarginVertical: NATIVE_MARGIN_SPACING,\n\t\t\tmarginHorizontal: NATIVE_MARGIN_SPACING,\n\t\t} ),\n\t} );\n\tuseMigrateOnLoad( attributes, clientId );\n\tconst { ordered, reversed, start } = attributes;\n\n\tconst controls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListBulletsRTL : formatListBullets }\n\t\t\t\ttitle={ __( 'Unordered' ) }\n\t\t\t\tdescribedBy={ __( 'Convert to unordered list' ) }\n\t\t\t\tisActive={ ordered === false }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: false } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListNumberedRTL : formatListNumbered }\n\t\t\t\ttitle={ __( 'Ordered' ) }\n\t\t\t\tdescribedBy={ __( 'Convert to ordered list' ) }\n\t\t\t\tisActive={ ordered === true }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: true } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<IndentUI clientId={ clientId } />\n\t\t</BlockControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<TagName\n\t\t\t\tordered={ ordered }\n\t\t\t\treversed={ reversed }\n\t\t\t\tstart={ start }\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t/>\n\t\t\t{ controls }\n\t\t\t{ ordered && (\n\t\t\t\t<OrderedListSettings\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tordered={ ordered }\n\t\t\t\t\treversed={ reversed }\n\t\t\t\t\tstart={ start }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default Edit;\n"]}
@@ -0,0 +1,21 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { createElement } from "@wordpress/element";
3
+
4
+ /**
5
+ * WordPress dependencies
6
+ */
7
+ import { forwardRef } from '@wordpress/element';
8
+
9
+ function TagName(props, ref) {
10
+ const {
11
+ ordered,
12
+ ...extraProps
13
+ } = props;
14
+ const Tag = ordered ? 'ol' : 'ul';
15
+ return createElement(Tag, _extends({
16
+ ref: ref
17
+ }, extraProps));
18
+ }
19
+
20
+ export default forwardRef(TagName);
21
+ //# sourceMappingURL=tag-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/list/v2/tag-name.js"],"names":["forwardRef","TagName","props","ref","ordered","extraProps","Tag"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,UAAT,QAA2B,oBAA3B;;AAEA,SAASC,OAAT,CAAkBC,KAAlB,EAAyBC,GAAzB,EAA+B;AAC9B,QAAM;AAAEC,IAAAA,OAAF;AAAW,OAAGC;AAAd,MAA6BH,KAAnC;AACA,QAAMI,GAAG,GAAGF,OAAO,GAAG,IAAH,GAAU,IAA7B;AAEA,SAAO,cAAC,GAAD;AAAK,IAAA,GAAG,EAAGD;AAAX,KAAsBE,UAAtB,EAAP;AACA;;AAED,eAAeL,UAAU,CAAEC,OAAF,CAAzB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\n\nfunction TagName( props, ref ) {\n\tconst { ordered, ...extraProps } = props;\n\tconst Tag = ordered ? 'ol' : 'ul';\n\n\treturn <Tag ref={ ref } { ...extraProps } />;\n}\n\nexport default forwardRef( TagName );\n"]}
@@ -0,0 +1,21 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { createElement } from "@wordpress/element";
3
+
4
+ /**
5
+ * WordPress dependencies
6
+ */
7
+ import { forwardRef } from '@wordpress/element';
8
+ import { View } from '@wordpress/primitives';
9
+
10
+ function TagName(props, ref) {
11
+ const {
12
+ start,
13
+ ...extraProps
14
+ } = props;
15
+ return createElement(View, _extends({
16
+ ref: ref
17
+ }, extraProps));
18
+ }
19
+
20
+ export default forwardRef(TagName);
21
+ //# sourceMappingURL=tag-name.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/list/v2/tag-name.native.js"],"names":["forwardRef","View","TagName","props","ref","start","extraProps"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,UAAT,QAA2B,oBAA3B;AACA,SAASC,IAAT,QAAqB,uBAArB;;AAEA,SAASC,OAAT,CAAkBC,KAAlB,EAAyBC,GAAzB,EAA+B;AAC9B,QAAM;AAAEC,IAAAA,KAAF;AAAS,OAAGC;AAAZ,MAA2BH,KAAjC;AACA,SAAO,cAAC,IAAD;AAAM,IAAA,GAAG,EAAGC;AAAZ,KAAuBE,UAAvB,EAAP;AACA;;AAED,eAAeN,UAAU,CAAEE,OAAF,CAAzB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\nimport { View } from '@wordpress/primitives';\n\nfunction TagName( props, ref ) {\n\tconst { start, ...extraProps } = props;\n\treturn <View ref={ ref } { ...extraProps } />;\n}\n\nexport default forwardRef( TagName );\n"]}
@@ -1,15 +1,6 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
-
5
- /**
6
- * External dependencies
7
- */
8
- import { flatMap } from 'lodash';
9
- /**
10
- * WordPress dependencies
11
- */
12
-
13
4
  import { createBlock } from '@wordpress/blocks';
14
5
  import { create, split, toHTMLString } from '@wordpress/rich-text';
15
6
  /**
@@ -42,7 +33,7 @@ function getListContentSchema(_ref) {
42
33
  }
43
34
 
44
35
  function getListContentFlat(blocks) {
45
- return flatMap(blocks, _ref2 => {
36
+ return blocks.flatMap(_ref2 => {
46
37
  let {
47
38
  name,
48
39
  attributes,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/list/v2/transforms.js"],"names":["flatMap","createBlock","create","split","toHTMLString","createListBlockFromDOMElement","getListContentSchema","phrasingContentSchema","listContentSchema","ul","ol","attributes","forEach","tag","children","li","getListContentFlat","blocks","name","innerBlocks","content","transforms","from","type","isMultiBlock","transform","blockAttributes","childBlocks","length","map","value","html","result","anchor","prefix","ordered","selector","schema","args","to","block","_attributes"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\n/**\n * External dependencies\n */\nimport { flatMap } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { create, split, toHTMLString } from '@wordpress/rich-text';\n\n/**\n * Internal dependencies\n */\nimport { createListBlockFromDOMElement } from './migrate';\n\nfunction getListContentSchema( { phrasingContentSchema } ) {\n\tconst listContentSchema = {\n\t\t...phrasingContentSchema,\n\t\tul: {},\n\t\tol: { attributes: [ 'type', 'start', 'reversed' ] },\n\t};\n\n\t// Recursion is needed.\n\t// Possible: ul > li > ul.\n\t// Impossible: ul > ul.\n\t[ 'ul', 'ol' ].forEach( ( tag ) => {\n\t\tlistContentSchema[ tag ].children = {\n\t\t\tli: {\n\t\t\t\tchildren: listContentSchema,\n\t\t\t},\n\t\t};\n\t} );\n\n\treturn listContentSchema;\n}\n\nfunction getListContentFlat( blocks ) {\n\treturn flatMap( blocks, ( { name, attributes, innerBlocks = [] } ) => {\n\t\tif ( name === 'core/list-item' ) {\n\t\t\treturn [ attributes.content, ...getListContentFlat( innerBlocks ) ];\n\t\t}\n\t\treturn getListContentFlat( innerBlocks );\n\t} );\n}\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph', 'core/heading' ],\n\t\t\ttransform: ( blockAttributes ) => {\n\t\t\t\tlet childBlocks = [];\n\t\t\t\tif ( blockAttributes.length > 1 ) {\n\t\t\t\t\tchildBlocks = blockAttributes.map( ( { content } ) => {\n\t\t\t\t\t\treturn createBlock( 'core/list-item', { content } );\n\t\t\t\t\t} );\n\t\t\t\t} else if ( blockAttributes.length === 1 ) {\n\t\t\t\t\tconst value = create( {\n\t\t\t\t\t\thtml: blockAttributes[ 0 ].content,\n\t\t\t\t\t} );\n\t\t\t\t\tchildBlocks = split( value, '\\n' ).map( ( result ) => {\n\t\t\t\t\t\treturn createBlock( 'core/list-item', {\n\t\t\t\t\t\t\tcontent: toHTMLString( { value: result } ),\n\t\t\t\t\t\t} );\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t\treturn createBlock(\n\t\t\t\t\t'core/list',\n\t\t\t\t\t{\n\t\t\t\t\t\tanchor: blockAttributes.anchor,\n\t\t\t\t\t},\n\t\t\t\t\tchildBlocks\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t...[ '*', '-' ].map( ( prefix ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix,\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( 'core/list', {}, [\n\t\t\t\t\tcreateBlock( 'core/list-item', { content } ),\n\t\t\t\t] );\n\t\t\t},\n\t\t} ) ),\n\t\t...[ '1.', '1)' ].map( ( prefix ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix,\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock(\n\t\t\t\t\t'core/list',\n\t\t\t\t\t{\n\t\t\t\t\t\tordered: true,\n\t\t\t\t\t},\n\t\t\t\t\t[ createBlock( 'core/list-item', { content } ) ]\n\t\t\t\t);\n\t\t\t},\n\t\t} ) ),\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tselector: 'ol,ul',\n\t\t\tschema: ( args ) => ( {\n\t\t\t\tol: getListContentSchema( args ).ol,\n\t\t\t\tul: getListContentSchema( args ).ul,\n\t\t\t} ),\n\t\t\ttransform: createListBlockFromDOMElement,\n\t\t},\n\t],\n\tto: [\n\t\t...[ 'core/paragraph', 'core/heading' ].map( ( block ) => ( {\n\t\t\ttype: 'block',\n\t\t\tblocks: [ block ],\n\t\t\ttransform: ( _attributes, childBlocks ) => {\n\t\t\t\treturn getListContentFlat( childBlocks ).map( ( content ) =>\n\t\t\t\t\tcreateBlock( block, {\n\t\t\t\t\t\tcontent,\n\t\t\t\t\t} )\n\t\t\t\t);\n\t\t\t},\n\t\t} ) ),\n\t],\n};\n\nexport default transforms;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/list/v2/transforms.js"],"names":["createBlock","create","split","toHTMLString","createListBlockFromDOMElement","getListContentSchema","phrasingContentSchema","listContentSchema","ul","ol","attributes","forEach","tag","children","li","getListContentFlat","blocks","flatMap","name","innerBlocks","content","transforms","from","type","isMultiBlock","transform","blockAttributes","childBlocks","length","map","value","html","result","anchor","prefix","ordered","selector","schema","args","to","block","_attributes"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { create, split, toHTMLString } from '@wordpress/rich-text';\n\n/**\n * Internal dependencies\n */\nimport { createListBlockFromDOMElement } from './migrate';\n\nfunction getListContentSchema( { phrasingContentSchema } ) {\n\tconst listContentSchema = {\n\t\t...phrasingContentSchema,\n\t\tul: {},\n\t\tol: { attributes: [ 'type', 'start', 'reversed' ] },\n\t};\n\n\t// Recursion is needed.\n\t// Possible: ul > li > ul.\n\t// Impossible: ul > ul.\n\t[ 'ul', 'ol' ].forEach( ( tag ) => {\n\t\tlistContentSchema[ tag ].children = {\n\t\t\tli: {\n\t\t\t\tchildren: listContentSchema,\n\t\t\t},\n\t\t};\n\t} );\n\n\treturn listContentSchema;\n}\n\nfunction getListContentFlat( blocks ) {\n\treturn blocks.flatMap( ( { name, attributes, innerBlocks = [] } ) => {\n\t\tif ( name === 'core/list-item' ) {\n\t\t\treturn [ attributes.content, ...getListContentFlat( innerBlocks ) ];\n\t\t}\n\t\treturn getListContentFlat( innerBlocks );\n\t} );\n}\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph', 'core/heading' ],\n\t\t\ttransform: ( blockAttributes ) => {\n\t\t\t\tlet childBlocks = [];\n\t\t\t\tif ( blockAttributes.length > 1 ) {\n\t\t\t\t\tchildBlocks = blockAttributes.map( ( { content } ) => {\n\t\t\t\t\t\treturn createBlock( 'core/list-item', { content } );\n\t\t\t\t\t} );\n\t\t\t\t} else if ( blockAttributes.length === 1 ) {\n\t\t\t\t\tconst value = create( {\n\t\t\t\t\t\thtml: blockAttributes[ 0 ].content,\n\t\t\t\t\t} );\n\t\t\t\t\tchildBlocks = split( value, '\\n' ).map( ( result ) => {\n\t\t\t\t\t\treturn createBlock( 'core/list-item', {\n\t\t\t\t\t\t\tcontent: toHTMLString( { value: result } ),\n\t\t\t\t\t\t} );\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t\treturn createBlock(\n\t\t\t\t\t'core/list',\n\t\t\t\t\t{\n\t\t\t\t\t\tanchor: blockAttributes.anchor,\n\t\t\t\t\t},\n\t\t\t\t\tchildBlocks\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t...[ '*', '-' ].map( ( prefix ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix,\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( 'core/list', {}, [\n\t\t\t\t\tcreateBlock( 'core/list-item', { content } ),\n\t\t\t\t] );\n\t\t\t},\n\t\t} ) ),\n\t\t...[ '1.', '1)' ].map( ( prefix ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix,\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock(\n\t\t\t\t\t'core/list',\n\t\t\t\t\t{\n\t\t\t\t\t\tordered: true,\n\t\t\t\t\t},\n\t\t\t\t\t[ createBlock( 'core/list-item', { content } ) ]\n\t\t\t\t);\n\t\t\t},\n\t\t} ) ),\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tselector: 'ol,ul',\n\t\t\tschema: ( args ) => ( {\n\t\t\t\tol: getListContentSchema( args ).ol,\n\t\t\t\tul: getListContentSchema( args ).ul,\n\t\t\t} ),\n\t\t\ttransform: createListBlockFromDOMElement,\n\t\t},\n\t],\n\tto: [\n\t\t...[ 'core/paragraph', 'core/heading' ].map( ( block ) => ( {\n\t\t\ttype: 'block',\n\t\t\tblocks: [ block ],\n\t\t\ttransform: ( _attributes, childBlocks ) => {\n\t\t\t\treturn getListContentFlat( childBlocks ).map( ( content ) =>\n\t\t\t\t\tcreateBlock( block, {\n\t\t\t\t\t\tcontent,\n\t\t\t\t\t} )\n\t\t\t\t);\n\t\t\t},\n\t\t} ) ),\n\t],\n};\n\nexport default transforms;\n"]}