@wordpress/block-library 5.0.1 → 6.0.1

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 (895) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +1 -1
  3. package/build/audio/edit.js +2 -2
  4. package/build/audio/edit.js.map +1 -1
  5. package/build/audio/edit.native.js +2 -2
  6. package/build/audio/edit.native.js.map +1 -1
  7. package/build/button/edit.js +97 -87
  8. package/build/button/edit.js.map +1 -1
  9. package/build/button/edit.native.js +1 -1
  10. package/build/button/edit.native.js.map +1 -1
  11. package/build/button/index.js +4 -1
  12. package/build/button/index.js.map +1 -1
  13. package/build/buttons/edit.js +2 -1
  14. package/build/buttons/edit.js.map +1 -1
  15. package/build/buttons/index.js +2 -1
  16. package/build/buttons/index.js.map +1 -1
  17. package/build/buttons/transforms.js +2 -1
  18. package/build/buttons/transforms.js.map +1 -1
  19. package/build/column/index.js +4 -1
  20. package/build/column/index.js.map +1 -1
  21. package/build/column/save.js +9 -1
  22. package/build/column/save.js.map +1 -1
  23. package/build/columns/edit.native.js +5 -2
  24. package/build/columns/edit.native.js.map +1 -1
  25. package/build/columns/index.js +10 -1
  26. package/build/columns/index.js.map +1 -1
  27. package/build/cover/deprecated.js +0 -27
  28. package/build/cover/deprecated.js.map +1 -1
  29. package/build/cover/edit.js +57 -27
  30. package/build/cover/edit.js.map +1 -1
  31. package/build/cover/index.js +11 -1
  32. package/build/cover/index.js.map +1 -1
  33. package/build/cover/save.js +2 -1
  34. package/build/cover/save.js.map +1 -1
  35. package/build/cover/shared.js +1 -0
  36. package/build/cover/shared.js.map +1 -1
  37. package/build/cover/transforms.js +4 -0
  38. package/build/cover/transforms.js.map +1 -1
  39. package/build/embed/edit.js +1 -5
  40. package/build/embed/edit.js.map +1 -1
  41. package/build/embed/edit.native.js +85 -22
  42. package/build/embed/edit.native.js.map +1 -1
  43. package/build/embed/embed-bottom-sheet.native.js +17 -16
  44. package/build/embed/embed-bottom-sheet.native.js.map +1 -1
  45. package/build/embed/embed-controls.js +4 -1
  46. package/build/embed/embed-controls.js.map +1 -1
  47. package/build/embed/embed-no-preview.native.js +22 -9
  48. package/build/embed/embed-no-preview.native.js.map +1 -1
  49. package/build/embed/embed-placeholder.native.js +51 -7
  50. package/build/embed/embed-placeholder.native.js.map +1 -1
  51. package/build/embed/embed-preview.native.js +28 -10
  52. package/build/embed/embed-preview.native.js.map +1 -1
  53. package/build/embed/variations.js +0 -10
  54. package/build/embed/variations.js.map +1 -1
  55. package/build/embed/wp-embed-preview.js +44 -56
  56. package/build/embed/wp-embed-preview.js.map +1 -1
  57. package/build/embed/wp-embed-preview.native.js +95 -0
  58. package/build/embed/wp-embed-preview.native.js.map +1 -0
  59. package/build/file/deprecated.js +108 -0
  60. package/build/file/deprecated.js.map +1 -0
  61. package/build/file/edit.js +8 -1
  62. package/build/file/edit.js.map +1 -1
  63. package/build/file/index.js +9 -0
  64. package/build/file/index.js.map +1 -1
  65. package/build/file/inspector.js +1 -1
  66. package/build/file/inspector.js.map +1 -1
  67. package/build/file/save.js +4 -1
  68. package/build/file/save.js.map +1 -1
  69. package/build/file/transforms.js +3 -1
  70. package/build/file/transforms.js.map +1 -1
  71. package/build/gallery/constants.js +2 -2
  72. package/build/gallery/constants.js.map +1 -1
  73. package/build/gallery/deprecated.js +17 -8
  74. package/build/gallery/deprecated.js.map +1 -1
  75. package/build/gallery/edit-wrapper.js +63 -0
  76. package/build/gallery/edit-wrapper.js.map +1 -0
  77. package/build/gallery/edit.js +225 -231
  78. package/build/gallery/edit.js.map +1 -1
  79. package/build/gallery/gallery.js +67 -49
  80. package/build/gallery/gallery.js.map +1 -1
  81. package/build/gallery/gallery.native.js +42 -79
  82. package/build/gallery/gallery.native.js.map +1 -1
  83. package/build/gallery/index.js +31 -7
  84. package/build/gallery/index.js.map +1 -1
  85. package/build/gallery/save.js +26 -43
  86. package/build/gallery/save.js.map +1 -1
  87. package/build/gallery/shared.js +9 -2
  88. package/build/gallery/shared.js.map +1 -1
  89. package/build/gallery/transforms.js +211 -12
  90. package/build/gallery/transforms.js.map +1 -1
  91. package/build/gallery/use-get-media.js +58 -0
  92. package/build/gallery/use-get-media.js.map +1 -0
  93. package/build/gallery/use-get-new-images.js +58 -0
  94. package/build/gallery/use-get-new-images.js.map +1 -0
  95. package/build/gallery/use-image-sizes.js +73 -0
  96. package/build/gallery/use-image-sizes.js.map +1 -0
  97. package/build/gallery/use-short-code-transform.js +63 -0
  98. package/build/gallery/use-short-code-transform.js.map +1 -0
  99. package/build/gallery/utils.js +51 -0
  100. package/build/gallery/utils.js.map +1 -0
  101. package/build/gallery/v1/constants.js +13 -0
  102. package/build/gallery/v1/constants.js.map +1 -0
  103. package/build/gallery/v1/edit.js +459 -0
  104. package/build/gallery/v1/edit.js.map +1 -0
  105. package/build/gallery/{gallery-button.native.js → v1/gallery-button.native.js} +0 -0
  106. package/build/gallery/v1/gallery-button.native.js.map +1 -0
  107. package/build/gallery/{gallery-image.js → v1/gallery-image.js} +0 -0
  108. package/build/gallery/v1/gallery-image.js.map +1 -0
  109. package/build/gallery/{gallery-image.native.js → v1/gallery-image.native.js} +0 -0
  110. package/build/gallery/v1/gallery-image.native.js.map +1 -0
  111. package/build/gallery/v1/gallery.js +122 -0
  112. package/build/gallery/v1/gallery.js.map +1 -0
  113. package/build/gallery/v1/gallery.native.js +159 -0
  114. package/build/gallery/v1/gallery.native.js.map +1 -0
  115. package/build/gallery/v1/save.js +75 -0
  116. package/build/gallery/v1/save.js.map +1 -0
  117. package/build/gallery/v1/shared.js +26 -0
  118. package/build/gallery/v1/shared.js.map +1 -0
  119. package/build/gallery/{tiles.native.js → v1/tiles.native.js} +2 -1
  120. package/build/gallery/v1/tiles.native.js.map +1 -0
  121. package/build/gallery/v1/update-gallery-modal.js +110 -0
  122. package/build/gallery/v1/update-gallery-modal.js.map +1 -0
  123. package/build/group/edit.js +21 -5
  124. package/build/group/edit.js.map +1 -1
  125. package/build/group/index.js +8 -2
  126. package/build/group/index.js.map +1 -1
  127. package/build/group/variations.js +31 -0
  128. package/build/group/variations.js.map +1 -0
  129. package/build/heading/heading-level-dropdown.js +11 -37
  130. package/build/heading/heading-level-dropdown.js.map +1 -1
  131. package/build/home-link/edit.js +2 -2
  132. package/build/home-link/edit.js.map +1 -1
  133. package/build/image/edit.js +8 -6
  134. package/build/image/edit.js.map +1 -1
  135. package/build/image/edit.native.js +46 -17
  136. package/build/image/edit.native.js.map +1 -1
  137. package/build/image/image.js +11 -17
  138. package/build/image/image.js.map +1 -1
  139. package/build/image/index.js +1 -0
  140. package/build/image/index.js.map +1 -1
  141. package/build/image/transforms.js +30 -7
  142. package/build/image/transforms.js.map +1 -1
  143. package/build/image/utils.js +23 -0
  144. package/build/image/utils.js.map +1 -1
  145. package/build/index.js +3 -1
  146. package/build/index.js.map +1 -1
  147. package/build/latest-comments/edit.js +7 -1
  148. package/build/latest-comments/edit.js.map +1 -1
  149. package/build/latest-posts/edit.native.js +12 -6
  150. package/build/latest-posts/edit.native.js.map +1 -1
  151. package/build/media-text/edit.js +1 -1
  152. package/build/media-text/edit.js.map +1 -1
  153. package/build/media-text/index.js +2 -0
  154. package/build/media-text/index.js.map +1 -1
  155. package/build/navigation/block-navigation-list.js +14 -3
  156. package/build/navigation/block-navigation-list.js.map +1 -1
  157. package/build/navigation/edit.js +44 -14
  158. package/build/navigation/edit.js.map +1 -1
  159. package/build/navigation/index.js +7 -1
  160. package/build/navigation/index.js.map +1 -1
  161. package/build/navigation/menu-items-to-blocks.js +6 -5
  162. package/build/navigation/menu-items-to-blocks.js.map +1 -1
  163. package/build/navigation/placeholder-preview.js +3 -3
  164. package/build/navigation/placeholder-preview.js.map +1 -1
  165. package/build/navigation/placeholder.js +1 -1
  166. package/build/navigation/placeholder.js.map +1 -1
  167. package/build/navigation/use-block-navigator.js +2 -1
  168. package/build/navigation/use-block-navigator.js.map +1 -1
  169. package/build/navigation/variations.js +2 -3
  170. package/build/navigation/variations.js.map +1 -1
  171. package/build/navigation/view.js +53 -1
  172. package/build/navigation/view.js.map +1 -1
  173. package/build/navigation-link/edit.js +56 -72
  174. package/build/navigation-link/edit.js.map +1 -1
  175. package/build/navigation-link/index.js +6 -2
  176. package/build/navigation-link/index.js.map +1 -1
  177. package/build/navigation-link/transforms.js +83 -0
  178. package/build/navigation-link/transforms.js.map +1 -0
  179. package/build/navigation-submenu/edit.js +651 -0
  180. package/build/navigation-submenu/edit.js.map +1 -0
  181. package/build/navigation-submenu/icons.js +27 -0
  182. package/build/navigation-submenu/icons.js.map +1 -0
  183. package/build/navigation-submenu/index.js +89 -0
  184. package/build/navigation-submenu/index.js.map +1 -0
  185. package/build/navigation-submenu/save.js +18 -0
  186. package/build/navigation-submenu/save.js.map +1 -0
  187. package/build/navigation-submenu/transforms.js +82 -0
  188. package/build/navigation-submenu/transforms.js.map +1 -0
  189. package/build/navigation-submenu/view.js +51 -0
  190. package/build/navigation-submenu/view.js.map +1 -0
  191. package/build/page-list/convert-to-links-modal.js +19 -1
  192. package/build/page-list/convert-to-links-modal.js.map +1 -1
  193. package/build/page-list/edit.js +16 -5
  194. package/build/page-list/edit.js.map +1 -1
  195. package/build/page-list/index.js +10 -1
  196. package/build/page-list/index.js.map +1 -1
  197. package/build/post-author/index.js +2 -1
  198. package/build/post-author/index.js.map +1 -1
  199. package/build/post-comment/edit.js +7 -4
  200. package/build/post-comment/edit.js.map +1 -1
  201. package/build/post-comment-author/edit.js +1 -1
  202. package/build/post-comment-author/edit.js.map +1 -1
  203. package/build/post-comment-content/edit.js +16 -12
  204. package/build/post-comment-content/edit.js.map +1 -1
  205. package/build/post-content/edit.js +1 -3
  206. package/build/post-content/edit.js.map +1 -1
  207. package/build/post-date/edit.js +35 -14
  208. package/build/post-date/edit.js.map +1 -1
  209. package/build/post-date/index.js +2 -1
  210. package/build/post-date/index.js.map +1 -1
  211. package/build/post-excerpt/edit.js +2 -1
  212. package/build/post-excerpt/edit.js.map +1 -1
  213. package/build/post-featured-image/dimension-controls.js +24 -10
  214. package/build/post-featured-image/dimension-controls.js.map +1 -1
  215. package/build/post-featured-image/index.js +5 -0
  216. package/build/post-featured-image/index.js.map +1 -1
  217. package/build/post-navigation-link/edit.js +19 -3
  218. package/build/post-navigation-link/edit.js.map +1 -1
  219. package/build/post-navigation-link/index.js +9 -1
  220. package/build/post-navigation-link/index.js.map +1 -1
  221. package/build/post-template/index.js +5 -2
  222. package/build/post-template/index.js.map +1 -1
  223. package/build/post-terms/edit.js +4 -2
  224. package/build/post-terms/edit.js.map +1 -1
  225. package/build/post-terms/index.js +2 -1
  226. package/build/post-terms/index.js.map +1 -1
  227. package/build/post-title/edit.js +3 -3
  228. package/build/post-title/edit.js.map +1 -1
  229. package/build/post-title/index.js +4 -1
  230. package/build/post-title/index.js.map +1 -1
  231. package/build/query/edit/index.js +3 -1
  232. package/build/query/edit/index.js.map +1 -1
  233. package/build/query/variations.js +4 -4
  234. package/build/query/variations.js.map +1 -1
  235. package/build/query-pagination/deprecated.js +24 -0
  236. package/build/query-pagination/deprecated.js.map +1 -0
  237. package/build/query-pagination/edit.js +54 -3
  238. package/build/query-pagination/edit.js.map +1 -1
  239. package/build/query-pagination/index.js +20 -1
  240. package/build/query-pagination/index.js.map +1 -1
  241. package/build/query-pagination/query-pagination-arrow-controls.js +38 -0
  242. package/build/query-pagination/query-pagination-arrow-controls.js.map +1 -0
  243. package/build/query-pagination/save.js +1 -1
  244. package/build/query-pagination/save.js.map +1 -1
  245. package/build/query-pagination-next/edit.js +19 -4
  246. package/build/query-pagination-next/edit.js.map +1 -1
  247. package/build/query-pagination-next/index.js +1 -1
  248. package/build/query-pagination-previous/edit.js +19 -4
  249. package/build/query-pagination-previous/edit.js.map +1 -1
  250. package/build/query-pagination-previous/index.js +1 -1
  251. package/build/site-logo/edit.js +75 -30
  252. package/build/site-logo/edit.js.map +1 -1
  253. package/build/site-logo/index.js +7 -2
  254. package/build/site-logo/index.js.map +1 -1
  255. package/build/site-tagline/index.js +1 -0
  256. package/build/site-tagline/index.js.map +1 -1
  257. package/build/site-title/edit/index.js +25 -6
  258. package/build/site-title/edit/index.js.map +1 -1
  259. package/build/site-title/index.js +9 -2
  260. package/build/site-title/index.js.map +1 -1
  261. package/build/social-links/deprecated.js +106 -2
  262. package/build/social-links/deprecated.js.map +1 -1
  263. package/build/social-links/edit.js +15 -19
  264. package/build/social-links/edit.js.map +1 -1
  265. package/build/social-links/index.js +16 -1
  266. package/build/social-links/index.js.map +1 -1
  267. package/build/social-links/save.js +1 -3
  268. package/build/social-links/save.js.map +1 -1
  269. package/build/table/index.js +1 -1
  270. package/build/template-part/edit/advanced-controls.js +3 -1
  271. package/build/template-part/edit/advanced-controls.js.map +1 -1
  272. package/build/template-part/edit/index.js +1 -4
  273. package/build/template-part/edit/index.js.map +1 -1
  274. package/build/video/edit-common-settings.js +1 -1
  275. package/build/video/edit-common-settings.js.map +1 -1
  276. package/build/video/edit.js +10 -5
  277. package/build/video/edit.js.map +1 -1
  278. package/build/video/tracks-editor.js +3 -1
  279. package/build/video/tracks-editor.js.map +1 -1
  280. package/build-module/audio/edit.js +3 -3
  281. package/build-module/audio/edit.js.map +1 -1
  282. package/build-module/audio/edit.native.js +3 -3
  283. package/build-module/audio/edit.native.js.map +1 -1
  284. package/build-module/button/edit.js +101 -91
  285. package/build-module/button/edit.js.map +1 -1
  286. package/build-module/button/edit.native.js +2 -2
  287. package/build-module/button/edit.native.js.map +1 -1
  288. package/build-module/button/index.js +4 -1
  289. package/build-module/button/index.js.map +1 -1
  290. package/build-module/buttons/edit.js +2 -1
  291. package/build-module/buttons/edit.js.map +1 -1
  292. package/build-module/buttons/index.js +2 -1
  293. package/build-module/buttons/index.js.map +1 -1
  294. package/build-module/buttons/transforms.js +2 -1
  295. package/build-module/buttons/transforms.js.map +1 -1
  296. package/build-module/column/index.js +4 -1
  297. package/build-module/column/index.js.map +1 -1
  298. package/build-module/column/save.js +9 -1
  299. package/build-module/column/save.js.map +1 -1
  300. package/build-module/columns/edit.native.js +6 -3
  301. package/build-module/columns/edit.native.js.map +1 -1
  302. package/build-module/columns/index.js +10 -1
  303. package/build-module/columns/index.js.map +1 -1
  304. package/build-module/cover/deprecated.js +0 -27
  305. package/build-module/cover/deprecated.js.map +1 -1
  306. package/build-module/cover/edit.js +57 -28
  307. package/build-module/cover/edit.js.map +1 -1
  308. package/build-module/cover/index.js +11 -1
  309. package/build-module/cover/index.js.map +1 -1
  310. package/build-module/cover/save.js +2 -1
  311. package/build-module/cover/save.js.map +1 -1
  312. package/build-module/cover/shared.js +1 -0
  313. package/build-module/cover/shared.js.map +1 -1
  314. package/build-module/cover/transforms.js +4 -0
  315. package/build-module/cover/transforms.js.map +1 -1
  316. package/build-module/embed/edit.js +1 -5
  317. package/build-module/embed/edit.js.map +1 -1
  318. package/build-module/embed/edit.native.js +87 -25
  319. package/build-module/embed/edit.native.js.map +1 -1
  320. package/build-module/embed/embed-bottom-sheet.native.js +18 -16
  321. package/build-module/embed/embed-bottom-sheet.native.js.map +1 -1
  322. package/build-module/embed/embed-controls.js +4 -1
  323. package/build-module/embed/embed-controls.js.map +1 -1
  324. package/build-module/embed/embed-no-preview.native.js +22 -10
  325. package/build-module/embed/embed-no-preview.native.js.map +1 -1
  326. package/build-module/embed/embed-placeholder.native.js +51 -8
  327. package/build-module/embed/embed-placeholder.native.js.map +1 -1
  328. package/build-module/embed/embed-preview.native.js +26 -11
  329. package/build-module/embed/embed-preview.native.js.map +1 -1
  330. package/build-module/embed/variations.js +0 -10
  331. package/build-module/embed/variations.js.map +1 -1
  332. package/build-module/embed/wp-embed-preview.js +39 -56
  333. package/build-module/embed/wp-embed-preview.js.map +1 -1
  334. package/build-module/embed/wp-embed-preview.native.js +83 -0
  335. package/build-module/embed/wp-embed-preview.native.js.map +1 -0
  336. package/build-module/file/deprecated.js +98 -0
  337. package/build-module/file/deprecated.js.map +1 -0
  338. package/build-module/file/edit.js +8 -1
  339. package/build-module/file/edit.js.map +1 -1
  340. package/build-module/file/index.js +8 -0
  341. package/build-module/file/index.js.map +1 -1
  342. package/build-module/file/inspector.js +1 -1
  343. package/build-module/file/inspector.js.map +1 -1
  344. package/build-module/file/save.js +4 -1
  345. package/build-module/file/save.js.map +1 -1
  346. package/build-module/file/transforms.js +2 -1
  347. package/build-module/file/transforms.js.map +1 -1
  348. package/build-module/gallery/constants.js +2 -2
  349. package/build-module/gallery/constants.js.map +1 -1
  350. package/build-module/gallery/deprecated.js +15 -7
  351. package/build-module/gallery/deprecated.js.map +1 -1
  352. package/build-module/gallery/edit-wrapper.js +50 -0
  353. package/build-module/gallery/edit-wrapper.js.map +1 -0
  354. package/build-module/gallery/edit.js +222 -234
  355. package/build-module/gallery/edit.js.map +1 -1
  356. package/build-module/gallery/gallery.js +70 -51
  357. package/build-module/gallery/gallery.js.map +1 -1
  358. package/build-module/gallery/gallery.native.js +43 -78
  359. package/build-module/gallery/gallery.native.js.map +1 -1
  360. package/build-module/gallery/index.js +30 -6
  361. package/build-module/gallery/index.js.map +1 -1
  362. package/build-module/gallery/save.js +24 -43
  363. package/build-module/gallery/save.js.map +1 -1
  364. package/build-module/gallery/shared.js +8 -2
  365. package/build-module/gallery/shared.js.map +1 -1
  366. package/build-module/gallery/transforms.js +207 -12
  367. package/build-module/gallery/transforms.js.map +1 -1
  368. package/build-module/gallery/use-get-media.js +48 -0
  369. package/build-module/gallery/use-get-media.js.map +1 -0
  370. package/build-module/gallery/use-get-new-images.js +50 -0
  371. package/build-module/gallery/use-get-new-images.js.map +1 -0
  372. package/build-module/gallery/use-image-sizes.js +64 -0
  373. package/build-module/gallery/use-image-sizes.js.map +1 -0
  374. package/build-module/gallery/use-short-code-transform.js +53 -0
  375. package/build-module/gallery/use-short-code-transform.js.map +1 -0
  376. package/build-module/gallery/utils.js +42 -0
  377. package/build-module/gallery/utils.js.map +1 -0
  378. package/build-module/gallery/v1/constants.js +4 -0
  379. package/build-module/gallery/v1/constants.js.map +1 -0
  380. package/build-module/gallery/v1/edit.js +430 -0
  381. package/build-module/gallery/v1/edit.js.map +1 -0
  382. package/build-module/gallery/{gallery-button.native.js → v1/gallery-button.native.js} +0 -0
  383. package/build-module/gallery/v1/gallery-button.native.js.map +1 -0
  384. package/build-module/gallery/{gallery-image.js → v1/gallery-image.js} +0 -0
  385. package/build-module/gallery/v1/gallery-image.js.map +1 -0
  386. package/build-module/gallery/{gallery-image.native.js → v1/gallery-image.native.js} +0 -0
  387. package/build-module/gallery/v1/gallery-image.native.js.map +1 -0
  388. package/build-module/gallery/v1/gallery.js +102 -0
  389. package/build-module/gallery/v1/gallery.js.map +1 -0
  390. package/build-module/gallery/v1/gallery.native.js +136 -0
  391. package/build-module/gallery/v1/gallery.native.js.map +1 -0
  392. package/build-module/gallery/v1/save.js +65 -0
  393. package/build-module/gallery/v1/save.js.map +1 -0
  394. package/build-module/gallery/v1/shared.js +16 -0
  395. package/build-module/gallery/v1/shared.js.map +1 -0
  396. package/build-module/gallery/{tiles.native.js → v1/tiles.native.js} +2 -1
  397. package/build-module/gallery/v1/tiles.native.js.map +1 -0
  398. package/build-module/gallery/v1/update-gallery-modal.js +93 -0
  399. package/build-module/gallery/v1/update-gallery-modal.js.map +1 -0
  400. package/build-module/group/edit.js +21 -6
  401. package/build-module/group/edit.js.map +1 -1
  402. package/build-module/group/index.js +7 -2
  403. package/build-module/group/index.js.map +1 -1
  404. package/build-module/group/variations.js +22 -0
  405. package/build-module/group/variations.js.map +1 -0
  406. package/build-module/heading/heading-level-dropdown.js +12 -37
  407. package/build-module/heading/heading-level-dropdown.js.map +1 -1
  408. package/build-module/home-link/edit.js +2 -2
  409. package/build-module/home-link/edit.js.map +1 -1
  410. package/build-module/image/edit.js +8 -6
  411. package/build-module/image/edit.js.map +1 -1
  412. package/build-module/image/edit.native.js +48 -19
  413. package/build-module/image/edit.native.js.map +1 -1
  414. package/build-module/image/image.js +11 -15
  415. package/build-module/image/image.js.map +1 -1
  416. package/build-module/image/index.js +1 -0
  417. package/build-module/image/index.js.map +1 -1
  418. package/build-module/image/transforms.js +26 -7
  419. package/build-module/image/transforms.js.map +1 -1
  420. package/build-module/image/utils.js +22 -1
  421. package/build-module/image/utils.js.map +1 -1
  422. package/build-module/index.js +2 -1
  423. package/build-module/index.js.map +1 -1
  424. package/build-module/latest-comments/edit.js +7 -1
  425. package/build-module/latest-comments/edit.js.map +1 -1
  426. package/build-module/latest-posts/edit.native.js +12 -6
  427. package/build-module/latest-posts/edit.native.js.map +1 -1
  428. package/build-module/media-text/edit.js +1 -1
  429. package/build-module/media-text/edit.js.map +1 -1
  430. package/build-module/media-text/index.js +2 -0
  431. package/build-module/media-text/index.js.map +1 -1
  432. package/build-module/navigation/block-navigation-list.js +15 -3
  433. package/build-module/navigation/block-navigation-list.js.map +1 -1
  434. package/build-module/navigation/edit.js +45 -15
  435. package/build-module/navigation/edit.js.map +1 -1
  436. package/build-module/navigation/index.js +7 -1
  437. package/build-module/navigation/index.js.map +1 -1
  438. package/build-module/navigation/menu-items-to-blocks.js +6 -5
  439. package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
  440. package/build-module/navigation/placeholder-preview.js +3 -3
  441. package/build-module/navigation/placeholder-preview.js.map +1 -1
  442. package/build-module/navigation/placeholder.js +1 -1
  443. package/build-module/navigation/placeholder.js.map +1 -1
  444. package/build-module/navigation/use-block-navigator.js +2 -1
  445. package/build-module/navigation/use-block-navigator.js.map +1 -1
  446. package/build-module/navigation/variations.js +2 -3
  447. package/build-module/navigation/variations.js.map +1 -1
  448. package/build-module/navigation/view.js +53 -2
  449. package/build-module/navigation/view.js.map +1 -1
  450. package/build-module/navigation-link/edit.js +59 -74
  451. package/build-module/navigation-link/edit.js.map +1 -1
  452. package/build-module/navigation-link/index.js +5 -2
  453. package/build-module/navigation-link/index.js.map +1 -1
  454. package/build-module/navigation-link/transforms.js +74 -0
  455. package/build-module/navigation-link/transforms.js.map +1 -0
  456. package/build-module/navigation-submenu/edit.js +628 -0
  457. package/build-module/navigation-submenu/edit.js.map +1 -0
  458. package/build-module/navigation-submenu/icons.js +17 -0
  459. package/build-module/navigation-submenu/icons.js.map +1 -0
  460. package/build-module/navigation-submenu/index.js +74 -0
  461. package/build-module/navigation-submenu/index.js.map +1 -0
  462. package/build-module/navigation-submenu/save.js +10 -0
  463. package/build-module/navigation-submenu/save.js.map +1 -0
  464. package/build-module/navigation-submenu/transforms.js +73 -0
  465. package/build-module/navigation-submenu/transforms.js.map +1 -0
  466. package/build-module/navigation-submenu/view.js +49 -0
  467. package/build-module/navigation-submenu/view.js.map +1 -0
  468. package/build-module/page-list/convert-to-links-modal.js +19 -1
  469. package/build-module/page-list/convert-to-links-modal.js.map +1 -1
  470. package/build-module/page-list/edit.js +16 -5
  471. package/build-module/page-list/edit.js.map +1 -1
  472. package/build-module/page-list/index.js +10 -1
  473. package/build-module/page-list/index.js.map +1 -1
  474. package/build-module/post-author/index.js +2 -1
  475. package/build-module/post-author/index.js.map +1 -1
  476. package/build-module/post-comment/edit.js +8 -6
  477. package/build-module/post-comment/edit.js.map +1 -1
  478. package/build-module/post-comment-author/edit.js +1 -1
  479. package/build-module/post-comment-author/edit.js.map +1 -1
  480. package/build-module/post-comment-content/edit.js +16 -13
  481. package/build-module/post-comment-content/edit.js.map +1 -1
  482. package/build-module/post-content/edit.js +1 -3
  483. package/build-module/post-content/edit.js.map +1 -1
  484. package/build-module/post-date/edit.js +36 -16
  485. package/build-module/post-date/edit.js.map +1 -1
  486. package/build-module/post-date/index.js +2 -1
  487. package/build-module/post-date/index.js.map +1 -1
  488. package/build-module/post-excerpt/edit.js +2 -1
  489. package/build-module/post-excerpt/edit.js.map +1 -1
  490. package/build-module/post-featured-image/dimension-controls.js +22 -11
  491. package/build-module/post-featured-image/dimension-controls.js.map +1 -1
  492. package/build-module/post-featured-image/index.js +5 -0
  493. package/build-module/post-featured-image/index.js.map +1 -1
  494. package/build-module/post-navigation-link/edit.js +19 -3
  495. package/build-module/post-navigation-link/edit.js.map +1 -1
  496. package/build-module/post-navigation-link/index.js +9 -1
  497. package/build-module/post-navigation-link/index.js.map +1 -1
  498. package/build-module/post-template/index.js +6 -3
  499. package/build-module/post-template/index.js.map +1 -1
  500. package/build-module/post-terms/edit.js +5 -3
  501. package/build-module/post-terms/edit.js.map +1 -1
  502. package/build-module/post-terms/index.js +2 -1
  503. package/build-module/post-terms/index.js.map +1 -1
  504. package/build-module/post-title/edit.js +3 -3
  505. package/build-module/post-title/edit.js.map +1 -1
  506. package/build-module/post-title/index.js +4 -1
  507. package/build-module/post-title/index.js.map +1 -1
  508. package/build-module/query/edit/index.js +4 -2
  509. package/build-module/query/edit/index.js.map +1 -1
  510. package/build-module/query/variations.js +4 -4
  511. package/build-module/query/variations.js.map +1 -1
  512. package/build-module/query-pagination/deprecated.js +15 -0
  513. package/build-module/query-pagination/deprecated.js.map +1 -0
  514. package/build-module/query-pagination/edit.js +52 -5
  515. package/build-module/query-pagination/edit.js.map +1 -1
  516. package/build-module/query-pagination/index.js +19 -1
  517. package/build-module/query-pagination/index.js.map +1 -1
  518. package/build-module/query-pagination/query-pagination-arrow-controls.js +29 -0
  519. package/build-module/query-pagination/query-pagination-arrow-controls.js.map +1 -0
  520. package/build-module/query-pagination/save.js +2 -2
  521. package/build-module/query-pagination/save.js.map +1 -1
  522. package/build-module/query-pagination-next/edit.js +18 -4
  523. package/build-module/query-pagination-next/edit.js.map +1 -1
  524. package/build-module/query-pagination-next/index.js +1 -1
  525. package/build-module/query-pagination-previous/edit.js +18 -4
  526. package/build-module/query-pagination-previous/edit.js.map +1 -1
  527. package/build-module/query-pagination-previous/index.js +1 -1
  528. package/build-module/site-logo/edit.js +79 -34
  529. package/build-module/site-logo/edit.js.map +1 -1
  530. package/build-module/site-logo/index.js +7 -2
  531. package/build-module/site-logo/index.js.map +1 -1
  532. package/build-module/site-tagline/index.js +1 -0
  533. package/build-module/site-tagline/index.js.map +1 -1
  534. package/build-module/site-title/edit/index.js +25 -7
  535. package/build-module/site-title/edit/index.js.map +1 -1
  536. package/build-module/site-title/index.js +9 -2
  537. package/build-module/site-title/index.js.map +1 -1
  538. package/build-module/social-links/deprecated.js +106 -2
  539. package/build-module/social-links/deprecated.js.map +1 -1
  540. package/build-module/social-links/edit.js +16 -20
  541. package/build-module/social-links/edit.js.map +1 -1
  542. package/build-module/social-links/index.js +16 -1
  543. package/build-module/social-links/index.js.map +1 -1
  544. package/build-module/social-links/save.js +1 -3
  545. package/build-module/social-links/save.js.map +1 -1
  546. package/build-module/table/index.js +1 -1
  547. package/build-module/template-part/edit/advanced-controls.js +4 -2
  548. package/build-module/template-part/edit/advanced-controls.js.map +1 -1
  549. package/build-module/template-part/edit/index.js +1 -4
  550. package/build-module/template-part/edit/index.js.map +1 -1
  551. package/build-module/video/edit-common-settings.js +2 -2
  552. package/build-module/video/edit-common-settings.js.map +1 -1
  553. package/build-module/video/edit.js +10 -5
  554. package/build-module/video/edit.js.map +1 -1
  555. package/build-module/video/tracks-editor.js +2 -1
  556. package/build-module/video/tracks-editor.js.map +1 -1
  557. package/build-style/button/style-rtl.css +1 -1
  558. package/build-style/button/style.css +1 -1
  559. package/build-style/columns/editor-rtl.css +2 -2
  560. package/build-style/columns/editor.css +2 -2
  561. package/build-style/columns/style-rtl.css +4 -4
  562. package/build-style/columns/style.css +4 -4
  563. package/build-style/common-rtl.css +4 -105
  564. package/build-style/common.css +4 -105
  565. package/build-style/editor-rtl.css +188 -205
  566. package/build-style/editor.css +188 -205
  567. package/build-style/embed/style-rtl.css +1 -0
  568. package/build-style/embed/style.css +1 -0
  569. package/build-style/gallery/editor-rtl.css +89 -21
  570. package/build-style/gallery/editor.css +89 -21
  571. package/build-style/gallery/style-rtl.css +202 -39
  572. package/build-style/gallery/style.css +202 -39
  573. package/build-style/group/theme-rtl.css +1 -3
  574. package/build-style/group/theme.css +1 -3
  575. package/build-style/heading/style-rtl.css +8 -0
  576. package/build-style/heading/style.css +8 -0
  577. package/build-style/html/editor-rtl.css +12 -11
  578. package/build-style/html/editor.css +12 -11
  579. package/build-style/list/style-rtl.css +4 -0
  580. package/build-style/list/style.css +4 -0
  581. package/build-style/navigation/editor-rtl.css +12 -7
  582. package/build-style/navigation/editor.css +12 -7
  583. package/build-style/navigation/style-rtl.css +140 -134
  584. package/build-style/navigation/style.css +140 -134
  585. package/build-style/navigation-link/editor-rtl.css +22 -13
  586. package/build-style/navigation-link/editor.css +22 -13
  587. package/build-style/{post-content → navigation-submenu}/editor-rtl.css +29 -8
  588. package/build-style/{post-content → navigation-submenu}/editor.css +29 -8
  589. package/build-style/{heading/editor.css → navigation-submenu/style-rtl.css} +13 -7
  590. package/build-style/{heading/editor-rtl.css → navigation-submenu/style.css} +13 -7
  591. package/build-style/page-list/editor-rtl.css +8 -0
  592. package/build-style/page-list/editor.css +8 -0
  593. package/build-style/page-list/style-rtl.css +2 -8
  594. package/build-style/page-list/style.css +2 -8
  595. package/build-style/paragraph/style-rtl.css +5 -1
  596. package/build-style/paragraph/style.css +5 -1
  597. package/build-style/post-featured-image/editor-rtl.css +4 -8
  598. package/build-style/post-featured-image/editor.css +4 -8
  599. package/build-style/post-featured-image/style-rtl.css +1 -0
  600. package/build-style/post-featured-image/style.css +1 -0
  601. package/build-style/post-template/style-rtl.css +2 -0
  602. package/build-style/post-template/style.css +2 -0
  603. package/build-style/pullquote/style-rtl.css +1 -0
  604. package/build-style/pullquote/style.css +1 -0
  605. package/build-style/query-pagination/editor-rtl.css +2 -5
  606. package/build-style/query-pagination/editor.css +2 -5
  607. package/build-style/query-pagination/style-rtl.css +17 -6
  608. package/build-style/query-pagination/style.css +17 -6
  609. package/build-style/quote/style-rtl.css +3 -0
  610. package/build-style/quote/style.css +3 -0
  611. package/build-style/reset-rtl.css +2 -1
  612. package/build-style/reset.css +2 -1
  613. package/build-style/social-links/style-rtl.css +0 -5
  614. package/build-style/social-links/style.css +0 -5
  615. package/build-style/style-rtl.css +415 -307
  616. package/build-style/style.css +415 -307
  617. package/build-style/theme-rtl.css +1 -11
  618. package/build-style/theme.css +1 -11
  619. package/package.json +30 -31
  620. package/src/audio/edit.js +6 -3
  621. package/src/audio/edit.native.js +9 -3
  622. package/src/button/block.json +4 -1
  623. package/src/button/edit.js +107 -115
  624. package/src/button/edit.native.js +5 -2
  625. package/src/button/style.scss +1 -1
  626. package/src/buttons/block.json +2 -1
  627. package/src/buttons/edit.js +1 -1
  628. package/src/column/block.json +4 -1
  629. package/src/column/save.js +11 -1
  630. package/src/columns/block.json +8 -1
  631. package/src/columns/edit.native.js +8 -3
  632. package/src/columns/editor.scss +2 -2
  633. package/src/columns/index.js +1 -0
  634. package/src/columns/style.scss +4 -4
  635. package/src/common.scss +3 -9
  636. package/src/cover/block.json +11 -1
  637. package/src/cover/deprecated.js +0 -27
  638. package/src/cover/edit.js +82 -32
  639. package/src/cover/save.js +2 -1
  640. package/src/cover/shared.js +1 -0
  641. package/src/cover/transforms.js +4 -2
  642. package/src/editor.scss +4 -20
  643. package/src/embed/edit.js +1 -11
  644. package/src/embed/edit.native.js +120 -32
  645. package/src/embed/embed-bottom-sheet.native.js +26 -20
  646. package/src/embed/embed-controls.js +10 -1
  647. package/src/embed/embed-no-preview.native.js +53 -14
  648. package/src/embed/embed-placeholder.native.js +58 -9
  649. package/src/embed/embed-preview.native.js +58 -41
  650. package/src/embed/style.scss +1 -0
  651. package/src/embed/styles.native.scss +18 -8
  652. package/src/embed/variations.js +0 -8
  653. package/src/embed/wp-embed-preview.js +41 -62
  654. package/src/embed/wp-embed-preview.native.js +80 -0
  655. package/src/file/block.json +6 -0
  656. package/src/file/deprecated.js +123 -0
  657. package/src/file/edit.js +6 -0
  658. package/src/file/index.js +2 -0
  659. package/src/file/inspector.js +12 -10
  660. package/src/file/save.js +3 -0
  661. package/src/file/test/__snapshots__/edit.native.js.snap +4 -0
  662. package/src/file/transforms.js +3 -1
  663. package/src/gallery/block.json +18 -0
  664. package/src/gallery/constants.js +2 -2
  665. package/src/gallery/deprecated.js +15 -7
  666. package/src/gallery/deprecated.scss +132 -0
  667. package/src/gallery/edit-wrapper.js +47 -0
  668. package/src/gallery/edit.js +317 -276
  669. package/src/gallery/editor.scss +106 -22
  670. package/src/gallery/gallery-styles.native.scss +4 -2
  671. package/src/gallery/gallery.js +82 -71
  672. package/src/gallery/gallery.native.js +49 -85
  673. package/src/gallery/index.js +12 -6
  674. package/src/gallery/save.js +20 -60
  675. package/src/gallery/shared.js +9 -2
  676. package/src/gallery/style.scss +113 -75
  677. package/src/gallery/transforms.js +212 -11
  678. package/src/gallery/use-get-media.js +59 -0
  679. package/src/gallery/use-get-new-images.js +68 -0
  680. package/src/gallery/use-image-sizes.js +66 -0
  681. package/src/gallery/use-short-code-transform.js +52 -0
  682. package/src/gallery/utils.js +46 -0
  683. package/src/gallery/v1/constants.js +3 -0
  684. package/src/gallery/v1/edit.js +509 -0
  685. package/src/gallery/{gallery-button.native.js → v1/gallery-button.native.js} +0 -0
  686. package/src/gallery/{gallery-image-style.native.scss → v1/gallery-image-style.native.scss} +0 -0
  687. package/src/gallery/{gallery-image.js → v1/gallery-image.js} +0 -0
  688. package/src/gallery/{gallery-image.native.js → v1/gallery-image.native.js} +0 -0
  689. package/src/gallery/v1/gallery-styles.native.scss +8 -0
  690. package/src/gallery/v1/gallery.js +119 -0
  691. package/src/gallery/v1/gallery.native.js +162 -0
  692. package/src/gallery/v1/save.js +81 -0
  693. package/src/gallery/v1/shared.js +19 -0
  694. package/src/gallery/{tiles-styles.native.scss → v1/tiles-styles.native.scss} +0 -0
  695. package/src/gallery/{tiles.native.js → v1/tiles.native.js} +2 -1
  696. package/src/gallery/v1/update-gallery-modal.js +97 -0
  697. package/src/group/block.json +4 -1
  698. package/src/group/edit.js +31 -7
  699. package/src/group/index.js +2 -0
  700. package/src/group/theme.scss +1 -3
  701. package/src/group/variations.js +18 -0
  702. package/src/heading/heading-level-dropdown.js +26 -58
  703. package/src/heading/style.scss +3 -0
  704. package/src/home-link/edit.js +2 -2
  705. package/src/home-link/index.php +2 -2
  706. package/src/html/editor.scss +16 -10
  707. package/src/image/block.json +1 -0
  708. package/src/image/edit.js +9 -7
  709. package/src/image/edit.native.js +75 -35
  710. package/src/image/image.js +10 -14
  711. package/src/image/styles.native.scss +5 -0
  712. package/src/image/transforms.js +32 -9
  713. package/src/image/utils.js +17 -1
  714. package/src/index.js +2 -0
  715. package/src/latest-comments/edit.js +4 -0
  716. package/src/latest-comments/index.php +2 -1
  717. package/src/latest-posts/edit.native.js +10 -8
  718. package/src/list/style.scss +8 -3
  719. package/src/media-text/edit.js +1 -1
  720. package/src/media-text/index.js +1 -0
  721. package/src/navigation/block-navigation-list.js +16 -7
  722. package/src/navigation/block.json +7 -1
  723. package/src/navigation/edit.js +60 -17
  724. package/src/navigation/editor.scss +38 -19
  725. package/src/navigation/index.php +12 -4
  726. package/src/navigation/menu-items-to-blocks.js +8 -7
  727. package/src/navigation/placeholder-preview.js +3 -3
  728. package/src/navigation/placeholder.js +1 -1
  729. package/src/navigation/style.scss +191 -145
  730. package/src/navigation/test/menu-items-to-blocks.js +6 -6
  731. package/src/navigation/use-block-navigator.js +1 -0
  732. package/src/navigation/variations.js +2 -3
  733. package/src/navigation/view.js +74 -4
  734. package/src/navigation-link/block.json +2 -1
  735. package/src/navigation-link/edit.js +63 -90
  736. package/src/navigation-link/editor.scss +30 -15
  737. package/src/navigation-link/index.js +2 -0
  738. package/src/navigation-link/index.php +8 -8
  739. package/src/navigation-link/transforms.js +93 -0
  740. package/src/navigation-submenu/block.json +65 -0
  741. package/src/navigation-submenu/edit.js +662 -0
  742. package/src/navigation-submenu/editor.scss +42 -0
  743. package/src/navigation-submenu/icons.js +16 -0
  744. package/src/navigation-submenu/index.js +29 -0
  745. package/src/navigation-submenu/index.php +299 -0
  746. package/src/navigation-submenu/save.js +8 -0
  747. package/src/navigation-submenu/style.scss +20 -0
  748. package/src/navigation-submenu/transforms.js +58 -0
  749. package/src/navigation-submenu/view.js +62 -0
  750. package/src/page-list/block.json +11 -1
  751. package/src/page-list/convert-to-links-modal.js +20 -0
  752. package/src/page-list/edit.js +18 -4
  753. package/src/page-list/editor.scss +14 -0
  754. package/src/page-list/index.php +48 -12
  755. package/src/page-list/style.scss +2 -14
  756. package/src/page-list/test/convert-to-links-modal.js +6 -6
  757. package/src/paragraph/style.scss +10 -1
  758. package/src/post-author/block.json +2 -1
  759. package/src/post-comment/edit.js +14 -7
  760. package/src/post-comment-author/edit.js +13 -10
  761. package/src/post-comment-content/edit.js +17 -9
  762. package/src/post-comment-content/index.php +6 -3
  763. package/src/post-content/edit.js +1 -3
  764. package/src/post-date/block.json +2 -1
  765. package/src/post-date/edit.js +36 -22
  766. package/src/post-excerpt/edit.js +1 -0
  767. package/src/post-featured-image/block.json +5 -0
  768. package/src/post-featured-image/dimension-controls.js +43 -35
  769. package/src/post-featured-image/editor.scss +4 -9
  770. package/src/post-featured-image/style.scss +1 -0
  771. package/src/post-navigation-link/block.json +9 -1
  772. package/src/post-navigation-link/edit.js +29 -2
  773. package/src/post-navigation-link/index.php +28 -3
  774. package/src/post-template/block.json +4 -1
  775. package/src/post-template/index.js +2 -2
  776. package/src/post-template/index.php +11 -0
  777. package/src/post-template/style.scss +2 -0
  778. package/src/post-terms/block.json +2 -1
  779. package/src/post-terms/edit.js +4 -5
  780. package/src/post-title/block.json +4 -1
  781. package/src/post-title/edit.js +4 -6
  782. package/src/post-title/index.php +1 -1
  783. package/src/pullquote/style.scss +1 -0
  784. package/src/query/edit/index.js +3 -3
  785. package/src/query/variations.js +4 -0
  786. package/src/query-pagination/block.json +16 -0
  787. package/src/query-pagination/deprecated.js +19 -0
  788. package/src/query-pagination/edit.js +58 -3
  789. package/src/query-pagination/editor.scss +3 -6
  790. package/src/query-pagination/index.js +2 -0
  791. package/src/query-pagination/index.php +24 -1
  792. package/src/query-pagination/query-pagination-arrow-controls.js +44 -0
  793. package/src/query-pagination/save.js +2 -6
  794. package/src/query-pagination/style.scss +22 -5
  795. package/src/query-pagination-next/block.json +1 -1
  796. package/src/query-pagination-next/edit.js +30 -8
  797. package/src/query-pagination-next/index.php +5 -1
  798. package/src/query-pagination-previous/block.json +1 -1
  799. package/src/query-pagination-previous/edit.js +30 -8
  800. package/src/query-pagination-previous/index.php +5 -1
  801. package/src/quote/style.scss +2 -0
  802. package/src/reset.scss +2 -1
  803. package/src/search/index.php +12 -15
  804. package/src/search/test/__snapshots__/edit.native.js.snap +7 -0
  805. package/src/site-logo/block.json +7 -2
  806. package/src/site-logo/edit.js +98 -30
  807. package/src/site-logo/index.php +31 -2
  808. package/src/site-tagline/block.json +1 -0
  809. package/src/site-title/block.json +9 -2
  810. package/src/site-title/edit/index.js +36 -9
  811. package/src/site-title/index.php +12 -2
  812. package/src/social-links/block.json +22 -1
  813. package/src/social-links/deprecated.js +99 -0
  814. package/src/social-links/edit.js +13 -24
  815. package/src/social-links/save.js +1 -7
  816. package/src/social-links/style.scss +0 -8
  817. package/src/style.scss +1 -5
  818. package/src/table/block.json +1 -1
  819. package/src/template-part/edit/advanced-controls.js +3 -3
  820. package/src/template-part/edit/index.js +0 -3
  821. package/src/template-part/index.php +1 -1
  822. package/src/theme.scss +0 -10
  823. package/src/video/edit-common-settings.js +2 -2
  824. package/src/video/edit.js +15 -5
  825. package/src/video/tracks-editor.js +2 -3
  826. package/build/embed/embed-controls.native.js +0 -32
  827. package/build/embed/embed-controls.native.js.map +0 -1
  828. package/build/embed/variations.native.js +0 -10
  829. package/build/embed/variations.native.js.map +0 -1
  830. package/build/gallery/gallery-button.native.js.map +0 -1
  831. package/build/gallery/gallery-image.js.map +0 -1
  832. package/build/gallery/gallery-image.native.js.map +0 -1
  833. package/build/gallery/tiles.native.js.map +0 -1
  834. package/build/image/image-editing/aspect-ratio-dropdown.js +0 -126
  835. package/build/image/image-editing/aspect-ratio-dropdown.js.map +0 -1
  836. package/build/image/image-editing/constants.js +0 -16
  837. package/build/image/image-editing/constants.js.map +0 -1
  838. package/build/image/image-editing/context.js +0 -59
  839. package/build/image/image-editing/context.js.map +0 -1
  840. package/build/image/image-editing/cropper.js +0 -83
  841. package/build/image/image-editing/cropper.js.map +0 -1
  842. package/build/image/image-editing/form-controls.js +0 -36
  843. package/build/image/image-editing/form-controls.js.map +0 -1
  844. package/build/image/image-editing/index.js +0 -60
  845. package/build/image/image-editing/index.js.map +0 -1
  846. package/build/image/image-editing/rotation-button.js +0 -37
  847. package/build/image/image-editing/rotation-button.js.map +0 -1
  848. package/build/image/image-editing/use-save-image.js +0 -84
  849. package/build/image/image-editing/use-save-image.js.map +0 -1
  850. package/build/image/image-editing/use-transform-image.js +0 -135
  851. package/build/image/image-editing/use-transform-image.js.map +0 -1
  852. package/build/image/image-editing/zoom-dropdown.js +0 -55
  853. package/build/image/image-editing/zoom-dropdown.js.map +0 -1
  854. package/build-module/embed/embed-controls.native.js +0 -21
  855. package/build-module/embed/embed-controls.native.js.map +0 -1
  856. package/build-module/embed/variations.native.js +0 -3
  857. package/build-module/embed/variations.native.js.map +0 -1
  858. package/build-module/gallery/gallery-button.native.js.map +0 -1
  859. package/build-module/gallery/gallery-image.js.map +0 -1
  860. package/build-module/gallery/gallery-image.native.js.map +0 -1
  861. package/build-module/gallery/tiles.native.js.map +0 -1
  862. package/build-module/image/image-editing/aspect-ratio-dropdown.js +0 -115
  863. package/build-module/image/image-editing/aspect-ratio-dropdown.js.map +0 -1
  864. package/build-module/image/image-editing/constants.js +0 -7
  865. package/build-module/image/image-editing/constants.js.map +0 -1
  866. package/build-module/image/image-editing/context.js +0 -44
  867. package/build-module/image/image-editing/context.js.map +0 -1
  868. package/build-module/image/image-editing/cropper.js +0 -69
  869. package/build-module/image/image-editing/cropper.js.map +0 -1
  870. package/build-module/image/image-editing/form-controls.js +0 -26
  871. package/build-module/image/image-editing/form-controls.js.map +0 -1
  872. package/build-module/image/image-editing/index.js +0 -37
  873. package/build-module/image/image-editing/index.js.map +0 -1
  874. package/build-module/image/image-editing/rotation-button.js +0 -26
  875. package/build-module/image/image-editing/rotation-button.js.map +0 -1
  876. package/build-module/image/image-editing/use-save-image.js +0 -70
  877. package/build-module/image/image-editing/use-save-image.js.map +0 -1
  878. package/build-module/image/image-editing/use-transform-image.js +0 -127
  879. package/build-module/image/image-editing/use-transform-image.js.map +0 -1
  880. package/build-module/image/image-editing/zoom-dropdown.js +0 -43
  881. package/build-module/image/image-editing/zoom-dropdown.js.map +0 -1
  882. package/src/embed/embed-controls.native.js +0 -23
  883. package/src/embed/variations.native.js +0 -3
  884. package/src/heading/editor.scss +0 -20
  885. package/src/image/image-editing/aspect-ratio-dropdown.js +0 -129
  886. package/src/image/image-editing/constants.js +0 -6
  887. package/src/image/image-editing/context.js +0 -56
  888. package/src/image/image-editing/cropper.js +0 -74
  889. package/src/image/image-editing/form-controls.js +0 -22
  890. package/src/image/image-editing/index.js +0 -52
  891. package/src/image/image-editing/rotation-button.js +0 -24
  892. package/src/image/image-editing/use-save-image.js +0 -97
  893. package/src/image/image-editing/use-transform-image.js +0 -162
  894. package/src/image/image-editing/zoom-dropdown.js +0 -40
  895. package/src/post-content/editor.scss +0 -11
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/group/index.js"],"names":["__","createBlock","group","icon","deprecated","edit","save","name","metadata","settings","example","attributes","style","color","text","background","innerBlocks","customTextColor","fontSize","content","transforms","from","type","isMultiBlock","blocks","__experimentalConvert","length","alignments","widestAlignment","reduce","accumulator","block","align","indexOf","undefined","groupInnerBlocks","map"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,WAAT,QAA4B,mBAA5B;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;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBN,EAAAA,IADuB;AAEvBO,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,KAAK,EAAE;AACNC,QAAAA,KAAK,EAAE;AACNC,UAAAA,IAAI,EAAE,SADA;AAENC,UAAAA,UAAU,EAAE;AAFN;AADD;AADI,KADJ;AASRC,IAAAA,WAAW,EAAE,CACZ;AACCT,MAAAA,IAAI,EAAE,gBADP;AAECI,MAAAA,UAAU,EAAE;AACXM,QAAAA,eAAe,EAAE,SADN;AAEXC,QAAAA,QAAQ,EAAE,OAFC;AAGXC,QAAAA,OAAO,EAAEnB,EAAE,CAAE,MAAF;AAHA;AAFb,KADY,EASZ;AACCO,MAAAA,IAAI,EAAE,gBADP;AAECI,MAAAA,UAAU,EAAE;AACXM,QAAAA,eAAe,EAAE,SADN;AAEXC,QAAAA,QAAQ,EAAE,OAFC;AAGXC,QAAAA,OAAO,EAAEnB,EAAE,CAAE,MAAF;AAHA;AAFb,KATY,EAiBZ;AACCO,MAAAA,IAAI,EAAE,gBADP;AAECI,MAAAA,UAAU,EAAE;AACXM,QAAAA,eAAe,EAAE,SADN;AAEXC,QAAAA,QAAQ,EAAE,OAFC;AAGXC,QAAAA,OAAO,EAAEnB,EAAE,CAAE,QAAF;AAHA;AAFb,KAjBY,EAyBZ;AACCO,MAAAA,IAAI,EAAE,gBADP;AAECI,MAAAA,UAAU,EAAE;AACXM,QAAAA,eAAe,EAAE,SADN;AAEXC,QAAAA,QAAQ,EAAE,OAFC;AAGXC,QAAAA,OAAO,EAAEnB,EAAE,CAAE,OAAF;AAHA;AAFb,KAzBY,EAiCZ;AACCO,MAAAA,IAAI,EAAE,gBADP;AAECI,MAAAA,UAAU,EAAE;AACXM,QAAAA,eAAe,EAAE,SADN;AAEXC,QAAAA,QAAQ,EAAE,OAFC;AAGXC,QAAAA,OAAO,EAAEnB,EAAE,CAAE,OAAF;AAHA;AAFb,KAjCY,EAyCZ;AACCO,MAAAA,IAAI,EAAE,gBADP;AAECI,MAAAA,UAAU,EAAE;AACXM,QAAAA,eAAe,EAAE,SADN;AAEXC,QAAAA,QAAQ,EAAE,OAFC;AAGXC,QAAAA,OAAO,EAAEnB,EAAE,CAAE,MAAF;AAHA;AAFb,KAzCY;AATL,GAFc;AA8DvBoB,EAAAA,UAAU,EAAE;AACXC,IAAAA,IAAI,EAAE,CACL;AACCC,MAAAA,IAAI,EAAE,OADP;AAECC,MAAAA,YAAY,EAAE,IAFf;AAGCC,MAAAA,MAAM,EAAE,CAAE,GAAF,CAHT;;AAICC,MAAAA,qBAAqB,CAAED,MAAF,EAAW;AAC/B;AACA,YACCA,MAAM,CAACE,MAAP,KAAkB,CAAlB,IACAF,MAAM,CAAE,CAAF,CAAN,CAAYjB,IAAZ,KAAqB,YAFtB,EAGE;AACD;AACA;;AAED,cAAMoB,UAAU,GAAG,CAAE,MAAF,EAAU,MAAV,CAAnB,CAT+B,CAW/B;;AACA,cAAMC,eAAe,GAAGJ,MAAM,CAACK,MAAP,CACvB,CAAEC,WAAF,EAAeC,KAAf,KAA0B;AACzB,gBAAM;AAAEC,YAAAA;AAAF,cAAYD,KAAK,CAACpB,UAAxB;AACA,iBAAOgB,UAAU,CAACM,OAAX,CAAoBD,KAApB,IACNL,UAAU,CAACM,OAAX,CAAoBH,WAApB,CADM,GAEJE,KAFI,GAGJF,WAHH;AAIA,SAPsB,EAQvBI,SARuB,CAAxB,CAZ+B,CAuB/B;AACA;AACA;AACA;AACA;;AACA,cAAMC,gBAAgB,GAAGX,MAAM,CAACY,GAAP,CAAcL,KAAF,IAAa;AACjD,iBAAO9B,WAAW,CACjB8B,KAAK,CAACxB,IADW,EAEjBwB,KAAK,CAACpB,UAFW,EAGjBoB,KAAK,CAACf,WAHW,CAAlB;AAKA,SANwB,CAAzB;AAQA,eAAOf,WAAW,CACjB,YADiB,EAEjB;AACC+B,UAAAA,KAAK,EAAEJ;AADR,SAFiB,EAKjBO,gBALiB,CAAlB;AAOA;;AA/CF,KADK;AADK,GA9DW;AAmHvB9B,EAAAA,IAnHuB;AAoHvBC,EAAAA,IApHuB;AAqHvBF,EAAAA;AArHuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { createBlock } from '@wordpress/blocks';\nimport { group 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';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tstyle: {\n\t\t\t\tcolor: {\n\t\t\t\t\ttext: '#000000',\n\t\t\t\t\tbackground: '#ffffff',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#cf2e2e',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'One.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#ff6900',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Two.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#fcb900',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Three.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#00d084',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Four.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#0693e3',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Five.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#9b51e0',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Six.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\ttransforms: {\n\t\tfrom: [\n\t\t\t{\n\t\t\t\ttype: 'block',\n\t\t\t\tisMultiBlock: true,\n\t\t\t\tblocks: [ '*' ],\n\t\t\t\t__experimentalConvert( blocks ) {\n\t\t\t\t\t// Avoid transforming a single `core/group` Block\n\t\t\t\t\tif (\n\t\t\t\t\t\tblocks.length === 1 &&\n\t\t\t\t\t\tblocks[ 0 ].name === 'core/group'\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst alignments = [ 'wide', 'full' ];\n\n\t\t\t\t\t// Determine the widest setting of all the blocks to be grouped\n\t\t\t\t\tconst widestAlignment = blocks.reduce(\n\t\t\t\t\t\t( accumulator, block ) => {\n\t\t\t\t\t\t\tconst { align } = block.attributes;\n\t\t\t\t\t\t\treturn alignments.indexOf( align ) >\n\t\t\t\t\t\t\t\talignments.indexOf( accumulator )\n\t\t\t\t\t\t\t\t? align\n\t\t\t\t\t\t\t\t: accumulator;\n\t\t\t\t\t\t},\n\t\t\t\t\t\tundefined\n\t\t\t\t\t);\n\n\t\t\t\t\t// Clone the Blocks to be Grouped\n\t\t\t\t\t// Failing to create new block references causes the original blocks\n\t\t\t\t\t// to be replaced in the switchToBlockType call thereby meaning they\n\t\t\t\t\t// are removed both from their original location and within the\n\t\t\t\t\t// new group block.\n\t\t\t\t\tconst groupInnerBlocks = blocks.map( ( block ) => {\n\t\t\t\t\t\treturn createBlock(\n\t\t\t\t\t\t\tblock.name,\n\t\t\t\t\t\t\tblock.attributes,\n\t\t\t\t\t\t\tblock.innerBlocks\n\t\t\t\t\t\t);\n\t\t\t\t\t} );\n\n\t\t\t\t\treturn createBlock(\n\t\t\t\t\t\t'core/group',\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\talign: widestAlignment,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tgroupInnerBlocks\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/group/index.js"],"names":["__","createBlock","group","icon","deprecated","edit","save","variations","name","metadata","settings","example","attributes","style","color","text","background","innerBlocks","customTextColor","fontSize","content","transforms","from","type","isMultiBlock","blocks","__experimentalConvert","length","alignments","widestAlignment","reduce","accumulator","block","align","indexOf","undefined","groupInnerBlocks","map"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { createBlock } from '@wordpress/blocks';\nimport { group 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 variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tstyle: {\n\t\t\t\tcolor: {\n\t\t\t\t\ttext: '#000000',\n\t\t\t\t\tbackground: '#ffffff',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#cf2e2e',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'One.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#ff6900',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Two.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#fcb900',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Three.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#00d084',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Four.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#0693e3',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Five.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#9b51e0',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Six.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\ttransforms: {\n\t\tfrom: [\n\t\t\t{\n\t\t\t\ttype: 'block',\n\t\t\t\tisMultiBlock: true,\n\t\t\t\tblocks: [ '*' ],\n\t\t\t\t__experimentalConvert( blocks ) {\n\t\t\t\t\t// Avoid transforming a single `core/group` Block\n\t\t\t\t\tif (\n\t\t\t\t\t\tblocks.length === 1 &&\n\t\t\t\t\t\tblocks[ 0 ].name === 'core/group'\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst alignments = [ 'wide', 'full' ];\n\n\t\t\t\t\t// Determine the widest setting of all the blocks to be grouped\n\t\t\t\t\tconst widestAlignment = blocks.reduce(\n\t\t\t\t\t\t( accumulator, block ) => {\n\t\t\t\t\t\t\tconst { align } = block.attributes;\n\t\t\t\t\t\t\treturn alignments.indexOf( align ) >\n\t\t\t\t\t\t\t\talignments.indexOf( accumulator )\n\t\t\t\t\t\t\t\t? align\n\t\t\t\t\t\t\t\t: accumulator;\n\t\t\t\t\t\t},\n\t\t\t\t\t\tundefined\n\t\t\t\t\t);\n\n\t\t\t\t\t// Clone the Blocks to be Grouped\n\t\t\t\t\t// Failing to create new block references causes the original blocks\n\t\t\t\t\t// to be replaced in the switchToBlockType call thereby meaning they\n\t\t\t\t\t// are removed both from their original location and within the\n\t\t\t\t\t// new group block.\n\t\t\t\t\tconst groupInnerBlocks = blocks.map( ( block ) => {\n\t\t\t\t\t\treturn createBlock(\n\t\t\t\t\t\t\tblock.name,\n\t\t\t\t\t\t\tblock.attributes,\n\t\t\t\t\t\t\tblock.innerBlocks\n\t\t\t\t\t\t);\n\t\t\t\t\t} );\n\n\t\t\t\t\treturn createBlock(\n\t\t\t\t\t\t'core/group',\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\talign: widestAlignment,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tgroupInnerBlocks\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n\tvariations,\n};\n"]}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { __ } from '@wordpress/i18n';
5
+ const variations = [{
6
+ name: 'group-row',
7
+ title: __('Row'),
8
+ description: __('Blocks shown in a row.'),
9
+ attributes: {
10
+ layout: {
11
+ type: 'flex'
12
+ }
13
+ },
14
+ scope: ['inserter'],
15
+ isActive: blockAttributes => {
16
+ var _blockAttributes$layo;
17
+
18
+ return ((_blockAttributes$layo = blockAttributes.layout) === null || _blockAttributes$layo === void 0 ? void 0 : _blockAttributes$layo.type) === 'flex';
19
+ }
20
+ }];
21
+ export default variations;
22
+ //# sourceMappingURL=variations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/group/variations.js"],"names":["__","variations","name","title","description","attributes","layout","type","scope","isActive","blockAttributes"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AAEA,MAAMC,UAAU,GAAG,CAClB;AACCC,EAAAA,IAAI,EAAE,WADP;AAECC,EAAAA,KAAK,EAAEH,EAAE,CAAE,KAAF,CAFV;AAGCI,EAAAA,WAAW,EAAEJ,EAAE,CAAE,wBAAF,CAHhB;AAICK,EAAAA,UAAU,EAAE;AAAEC,IAAAA,MAAM,EAAE;AAAEC,MAAAA,IAAI,EAAE;AAAR;AAAV,GAJb;AAKCC,EAAAA,KAAK,EAAE,CAAE,UAAF,CALR;AAMCC,EAAAA,QAAQ,EAAIC,eAAF;AAAA;;AAAA,WACT,0BAAAA,eAAe,CAACJ,MAAhB,gFAAwBC,IAAxB,MAAiC,MADxB;AAAA;AANX,CADkB,CAAnB;AAYA,eAAeN,UAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nconst variations = [\n\t{\n\t\tname: 'group-row',\n\t\ttitle: __( 'Row' ),\n\t\tdescription: __( 'Blocks shown in a row.' ),\n\t\tattributes: { layout: { type: 'flex' } },\n\t\tscope: [ 'inserter' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\tblockAttributes.layout?.type === 'flex',\n\t},\n];\n\nexport default variations;\n"]}
@@ -3,9 +3,8 @@ import { createElement } from "@wordpress/element";
3
3
  /**
4
4
  * WordPress dependencies
5
5
  */
6
- import { Dropdown, Toolbar, ToolbarButton, ToolbarGroup } from '@wordpress/components';
6
+ import { ToolbarDropdownMenu } from '@wordpress/components';
7
7
  import { __, sprintf } from '@wordpress/i18n';
8
- import { DOWN } from '@wordpress/keycodes';
9
8
  /**
10
9
  * Internal dependencies
11
10
  */
@@ -13,8 +12,7 @@ import { DOWN } from '@wordpress/keycodes';
13
12
  import HeadingLevelIcon from './heading-level-icon';
14
13
  const HEADING_LEVELS = [1, 2, 3, 4, 5, 6];
15
14
  const POPOVER_PROPS = {
16
- className: 'block-library-heading-level-dropdown',
17
- isAlternate: true
15
+ className: 'block-library-heading-level-dropdown'
18
16
  };
19
17
  /** @typedef {import('@wordpress/element').WPComponent} WPComponent */
20
18
 
@@ -40,44 +38,21 @@ export default function HeadingLevelDropdown({
40
38
  selectedLevel,
41
39
  onChange
42
40
  }) {
43
- return createElement(Dropdown, {
41
+ return createElement(ToolbarDropdownMenu, {
44
42
  popoverProps: POPOVER_PROPS,
45
- renderToggle: ({
46
- onToggle,
47
- isOpen
48
- }) => {
49
- const openOnArrowDown = event => {
50
- if (!isOpen && event.keyCode === DOWN) {
51
- event.preventDefault();
52
- onToggle();
53
- }
54
- };
55
-
56
- return createElement(ToolbarButton, {
57
- "aria-expanded": isOpen,
58
- "aria-haspopup": "true",
59
- icon: createElement(HeadingLevelIcon, {
60
- level: selectedLevel
61
- }),
62
- label: __('Change heading level'),
63
- onClick: onToggle,
64
- onKeyDown: openOnArrowDown,
65
- showTooltip: true
66
- });
67
- },
68
- renderContent: () => createElement(Toolbar, {
69
- className: "block-library-heading-level-toolbar",
70
- label: __('Change heading level')
71
- }, createElement(ToolbarGroup, {
72
- isCollapsed: false,
73
- controls: HEADING_LEVELS.map(targetLevel => {
43
+ icon: createElement(HeadingLevelIcon, {
44
+ level: selectedLevel
45
+ }),
46
+ label: __('Change heading level'),
47
+ controls: HEADING_LEVELS.map(targetLevel => {
48
+ {
74
49
  const isActive = targetLevel === selectedLevel;
75
50
  return {
76
51
  icon: createElement(HeadingLevelIcon, {
77
52
  level: targetLevel,
78
53
  isPressed: isActive
79
54
  }),
80
- title: sprintf( // translators: %s: heading level e.g: "1", "2", "3"
55
+ label: sprintf( // translators: %s: heading level e.g: "1", "2", "3"
81
56
  __('Heading %d'), targetLevel),
82
57
  isActive,
83
58
 
@@ -86,8 +61,8 @@ export default function HeadingLevelDropdown({
86
61
  }
87
62
 
88
63
  };
89
- })
90
- }))
64
+ }
65
+ })
91
66
  });
92
67
  }
93
68
  //# sourceMappingURL=heading-level-dropdown.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/heading/heading-level-dropdown.js"],"names":["Dropdown","Toolbar","ToolbarButton","ToolbarGroup","__","sprintf","DOWN","HeadingLevelIcon","HEADING_LEVELS","POPOVER_PROPS","className","isAlternate","HeadingLevelDropdown","selectedLevel","onChange","onToggle","isOpen","openOnArrowDown","event","keyCode","preventDefault","map","targetLevel","isActive","icon","title","onClick"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,QADD,EAECC,OAFD,EAGCC,aAHD,EAICC,YAJD,QAKO,uBALP;AAMA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AACA,SAASC,IAAT,QAAqB,qBAArB;AAEA;AACA;AACA;;AACA,OAAOC,gBAAP,MAA6B,sBAA7B;AAEA,MAAMC,cAAc,GAAG,CAAE,CAAF,EAAK,CAAL,EAAQ,CAAR,EAAW,CAAX,EAAc,CAAd,EAAiB,CAAjB,CAAvB;AAEA,MAAMC,aAAa,GAAG;AACrBC,EAAAA,SAAS,EAAE,sCADU;AAErBC,EAAAA,WAAW,EAAE;AAFQ,CAAtB;AAKA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,eAAe,SAASC,oBAAT,CAA+B;AAAEC,EAAAA,aAAF;AAAiBC,EAAAA;AAAjB,CAA/B,EAA6D;AAC3E,SACC,cAAC,QAAD;AACC,IAAA,YAAY,EAAGL,aADhB;AAEC,IAAA,YAAY,EAAG,CAAE;AAAEM,MAAAA,QAAF;AAAYC,MAAAA;AAAZ,KAAF,KAA4B;AAC1C,YAAMC,eAAe,GAAKC,KAAF,IAAa;AACpC,YAAK,CAAEF,MAAF,IAAYE,KAAK,CAACC,OAAN,KAAkBb,IAAnC,EAA0C;AACzCY,UAAAA,KAAK,CAACE,cAAN;AACAL,UAAAA,QAAQ;AACR;AACD,OALD;;AAOA,aACC,cAAC,aAAD;AACC,yBAAgBC,MADjB;AAEC,yBAAc,MAFf;AAGC,QAAA,IAAI,EAAG,cAAC,gBAAD;AAAkB,UAAA,KAAK,EAAGH;AAA1B,UAHR;AAIC,QAAA,KAAK,EAAGT,EAAE,CAAE,sBAAF,CAJX;AAKC,QAAA,OAAO,EAAGW,QALX;AAMC,QAAA,SAAS,EAAGE,eANb;AAOC,QAAA,WAAW;AAPZ,QADD;AAWA,KArBF;AAsBC,IAAA,aAAa,EAAG,MACf,cAAC,OAAD;AACC,MAAA,SAAS,EAAC,qCADX;AAEC,MAAA,KAAK,EAAGb,EAAE,CAAE,sBAAF;AAFX,OAIC,cAAC,YAAD;AACC,MAAA,WAAW,EAAG,KADf;AAEC,MAAA,QAAQ,EAAGI,cAAc,CAACa,GAAf,CAAsBC,WAAF,IAAmB;AACjD,cAAMC,QAAQ,GAAGD,WAAW,KAAKT,aAAjC;AACA,eAAO;AACNW,UAAAA,IAAI,EACH,cAAC,gBAAD;AACC,YAAA,KAAK,EAAGF,WADT;AAEC,YAAA,SAAS,EAAGC;AAFb,YAFK;AAONE,UAAAA,KAAK,EAAEpB,OAAO,EACb;AACAD,UAAAA,EAAE,CAAE,YAAF,CAFW,EAGbkB,WAHa,CAPR;AAYNC,UAAAA,QAZM;;AAaNG,UAAAA,OAAO,GAAG;AACTZ,YAAAA,QAAQ,CAAEQ,WAAF,CAAR;AACA;;AAfK,SAAP;AAiBA,OAnBU;AAFZ,MAJD;AAvBF,IADD;AAuDA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tDropdown,\n\tToolbar,\n\tToolbarButton,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { DOWN } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport HeadingLevelIcon from './heading-level-icon';\n\nconst HEADING_LEVELS = [ 1, 2, 3, 4, 5, 6 ];\n\nconst POPOVER_PROPS = {\n\tclassName: 'block-library-heading-level-dropdown',\n\tisAlternate: true,\n};\n\n/** @typedef {import('@wordpress/element').WPComponent} WPComponent */\n\n/**\n * HeadingLevelDropdown props.\n *\n * @typedef WPHeadingLevelDropdownProps\n *\n * @property {number} selectedLevel The chosen heading level.\n * @property {(newValue:number)=>any} onChange Callback to run when\n * toolbar value is changed.\n */\n\n/**\n * Dropdown for selecting a heading level (1 through 6).\n *\n * @param {WPHeadingLevelDropdownProps} props Component props.\n *\n * @return {WPComponent} The toolbar.\n */\nexport default function HeadingLevelDropdown( { selectedLevel, onChange } ) {\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ POPOVER_PROPS }\n\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\tconst openOnArrowDown = ( event ) => {\n\t\t\t\t\tif ( ! isOpen && event.keyCode === DOWN ) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tonToggle();\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\ticon={ <HeadingLevelIcon level={ selectedLevel } /> }\n\t\t\t\t\t\tlabel={ __( 'Change heading level' ) }\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\tonKeyDown={ openOnArrowDown }\n\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => (\n\t\t\t\t<Toolbar\n\t\t\t\t\tclassName=\"block-library-heading-level-toolbar\"\n\t\t\t\t\tlabel={ __( 'Change heading level' ) }\n\t\t\t\t>\n\t\t\t\t\t<ToolbarGroup\n\t\t\t\t\t\tisCollapsed={ false }\n\t\t\t\t\t\tcontrols={ HEADING_LEVELS.map( ( targetLevel ) => {\n\t\t\t\t\t\t\tconst isActive = targetLevel === selectedLevel;\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\ticon: (\n\t\t\t\t\t\t\t\t\t<HeadingLevelIcon\n\t\t\t\t\t\t\t\t\t\tlevel={ targetLevel }\n\t\t\t\t\t\t\t\t\t\tisPressed={ isActive }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\ttitle: sprintf(\n\t\t\t\t\t\t\t\t\t// translators: %s: heading level e.g: \"1\", \"2\", \"3\"\n\t\t\t\t\t\t\t\t\t__( 'Heading %d' ),\n\t\t\t\t\t\t\t\t\ttargetLevel\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\tisActive,\n\t\t\t\t\t\t\t\tonClick() {\n\t\t\t\t\t\t\t\t\tonChange( targetLevel );\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t/>\n\t\t\t\t</Toolbar>\n\t\t\t) }\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/heading/heading-level-dropdown.js"],"names":["ToolbarDropdownMenu","__","sprintf","HeadingLevelIcon","HEADING_LEVELS","POPOVER_PROPS","className","HeadingLevelDropdown","selectedLevel","onChange","map","targetLevel","isActive","icon","label","onClick"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,mBAAT,QAAoC,uBAApC;AACA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AAEA;AACA;AACA;;AACA,OAAOC,gBAAP,MAA6B,sBAA7B;AAEA,MAAMC,cAAc,GAAG,CAAE,CAAF,EAAK,CAAL,EAAQ,CAAR,EAAW,CAAX,EAAc,CAAd,EAAiB,CAAjB,CAAvB;AAEA,MAAMC,aAAa,GAAG;AACrBC,EAAAA,SAAS,EAAE;AADU,CAAtB;AAIA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,eAAe,SAASC,oBAAT,CAA+B;AAAEC,EAAAA,aAAF;AAAiBC,EAAAA;AAAjB,CAA/B,EAA6D;AAC3E,SACC,cAAC,mBAAD;AACC,IAAA,YAAY,EAAGJ,aADhB;AAEC,IAAA,IAAI,EAAG,cAAC,gBAAD;AAAkB,MAAA,KAAK,EAAGG;AAA1B,MAFR;AAGC,IAAA,KAAK,EAAGP,EAAE,CAAE,sBAAF,CAHX;AAIC,IAAA,QAAQ,EAAGG,cAAc,CAACM,GAAf,CAAsBC,WAAF,IAAmB;AACjD;AACC,cAAMC,QAAQ,GAAGD,WAAW,KAAKH,aAAjC;AAEA,eAAO;AACNK,UAAAA,IAAI,EACH,cAAC,gBAAD;AACC,YAAA,KAAK,EAAGF,WADT;AAEC,YAAA,SAAS,EAAGC;AAFb,YAFK;AAONE,UAAAA,KAAK,EAAEZ,OAAO,EACb;AACAD,UAAAA,EAAE,CAAE,YAAF,CAFW,EAGbU,WAHa,CAPR;AAYNC,UAAAA,QAZM;;AAaNG,UAAAA,OAAO,GAAG;AACTN,YAAAA,QAAQ,CAAEE,WAAF,CAAR;AACA;;AAfK,SAAP;AAiBA;AACD,KAtBU;AAJZ,IADD;AA8BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { ToolbarDropdownMenu } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport HeadingLevelIcon from './heading-level-icon';\n\nconst HEADING_LEVELS = [ 1, 2, 3, 4, 5, 6 ];\n\nconst POPOVER_PROPS = {\n\tclassName: 'block-library-heading-level-dropdown',\n};\n\n/** @typedef {import('@wordpress/element').WPComponent} WPComponent */\n\n/**\n * HeadingLevelDropdown props.\n *\n * @typedef WPHeadingLevelDropdownProps\n *\n * @property {number} selectedLevel The chosen heading level.\n * @property {(newValue:number)=>any} onChange Callback to run when\n * toolbar value is changed.\n */\n\n/**\n * Dropdown for selecting a heading level (1 through 6).\n *\n * @param {WPHeadingLevelDropdownProps} props Component props.\n *\n * @return {WPComponent} The toolbar.\n */\nexport default function HeadingLevelDropdown( { selectedLevel, onChange } ) {\n\treturn (\n\t\t<ToolbarDropdownMenu\n\t\t\tpopoverProps={ POPOVER_PROPS }\n\t\t\ticon={ <HeadingLevelIcon level={ selectedLevel } /> }\n\t\t\tlabel={ __( 'Change heading level' ) }\n\t\t\tcontrols={ HEADING_LEVELS.map( ( targetLevel ) => {\n\t\t\t\t{\n\t\t\t\t\tconst isActive = targetLevel === selectedLevel;\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\ticon: (\n\t\t\t\t\t\t\t<HeadingLevelIcon\n\t\t\t\t\t\t\t\tlevel={ targetLevel }\n\t\t\t\t\t\t\t\tisPressed={ isActive }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t),\n\t\t\t\t\t\tlabel: sprintf(\n\t\t\t\t\t\t\t// translators: %s: heading level e.g: \"1\", \"2\", \"3\"\n\t\t\t\t\t\t\t__( 'Heading %d' ),\n\t\t\t\t\t\t\ttargetLevel\n\t\t\t\t\t\t),\n\t\t\t\t\t\tisActive,\n\t\t\t\t\t\tonClick() {\n\t\t\t\t\t\t\tonChange( targetLevel );\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t} ) }\n\t\t/>\n\t);\n}\n"]}
@@ -43,7 +43,7 @@ export default function HomeEdit({
43
43
  style
44
44
  } = context;
45
45
  const blockProps = useBlockProps({
46
- className: classnames({
46
+ className: classnames('wp-block-navigation-item', {
47
47
  'has-text-color': !!textColor || !!(style !== null && style !== void 0 && (_style$color = style.color) !== null && _style$color !== void 0 && _style$color.text),
48
48
  [`has-${textColor}-color`]: !!textColor,
49
49
  'has-background': !!backgroundColor || !!(style !== null && style !== void 0 && (_style$color2 = style.color) !== null && _style$color2 !== void 0 && _style$color2.background),
@@ -65,7 +65,7 @@ export default function HomeEdit({
65
65
  }
66
66
  }, [clientId, label]);
67
67
  return createElement(Fragment, null, createElement("div", blockProps, createElement("a", {
68
- className: "wp-block-home-link__content",
68
+ className: "wp-block-home-link__content wp-block-navigation-item__content",
69
69
  href: homeUrl,
70
70
  onClick: preventDefault
71
71
  }, createElement(RichText, {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/home-link/edit.js"],"names":["classnames","RichText","useBlockProps","__","useSelect","store","coreStore","useEffect","preventDefault","event","HomeEdit","attributes","setAttributes","context","clientId","homeUrl","select","getUnstableBase","home","textColor","backgroundColor","style","blockProps","className","color","text","background","label","undefined","labelValue"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,QAAT,EAAmBC,aAAnB,QAAwC,yBAAxC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AACA,SAASC,SAAT,QAA0B,oBAA1B;;AAEA,MAAMC,cAAc,GAAKC,KAAF,IAAaA,KAAK,CAACD,cAAN,EAApC;;AAEA,eAAe,SAASE,QAAT,CAAmB;AACjCC,EAAAA,UADiC;AAEjCC,EAAAA,aAFiC;AAGjCC,EAAAA,OAHiC;AAIjCC,EAAAA;AAJiC,CAAnB,EAKX;AAAA;;AACH,QAAM;AAAEC,IAAAA;AAAF,MAAcX,SAAS,CAC1BY,MAAF,IAAc;AAAA;;AACb,UAAM;AACLC,MAAAA,eADK,CACY;;AADZ,QAEFD,MAAM,CAAEV,SAAF,CAFV;AAGA,WAAO;AACNS,MAAAA,OAAO,sBAAEE,eAAe,EAAjB,qDAAE,iBAAmBC;AADtB,KAAP;AAGA,GAR2B,EAS5B,CAAEJ,QAAF,CAT4B,CAA7B;AAYA,QAAM;AAAEK,IAAAA,SAAF;AAAaC,IAAAA,eAAb;AAA8BC,IAAAA;AAA9B,MAAwCR,OAA9C;AACA,QAAMS,UAAU,GAAGpB,aAAa,CAAE;AACjCqB,IAAAA,SAAS,EAAEvB,UAAU,CAAE;AACtB,wBAAkB,CAAC,CAAEmB,SAAH,IAAgB,CAAC,EAAEE,KAAF,aAAEA,KAAF,+BAAEA,KAAK,CAAEG,KAAT,yCAAE,aAAcC,IAAhB,CADb;AAEtB,OAAG,OAAON,SAAW,QAArB,GAAgC,CAAC,CAAEA,SAFb;AAGtB,wBAAkB,CAAC,CAAEC,eAAH,IAAsB,CAAC,EAAEC,KAAF,aAAEA,KAAF,gCAAEA,KAAK,CAAEG,KAAT,0CAAE,cAAcE,UAAhB,CAHnB;AAItB,OAAG,OAAON,eAAiB,mBAA3B,GAAiD,CAAC,CAAEA;AAJ9B,KAAF,CADY;AAOjCC,IAAAA,KAAK,EAAE;AACNG,MAAAA,KAAK,EAAEH,KAAF,aAAEA,KAAF,wCAAEA,KAAK,CAAEG,KAAT,kDAAE,cAAcC,IADf;AAENL,MAAAA,eAAe,EAAEC,KAAF,aAAEA,KAAF,wCAAEA,KAAK,CAAEG,KAAT,kDAAE,cAAcE;AAFzB;AAP0B,GAAF,CAAhC;AAaA,QAAM;AAAEC,IAAAA;AAAF,MAAYhB,UAAlB;AAEAJ,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAKoB,KAAK,KAAKC,SAAf,EAA2B;AAC1BhB,MAAAA,aAAa,CAAE;AAAEe,QAAAA,KAAK,EAAExB,EAAE,CAAE,MAAF;AAAX,OAAF,CAAb;AACA;AACD,GAJQ,EAIN,CAAEW,QAAF,EAAYa,KAAZ,CAJM,CAAT;AAMA,SACC,8BACC,qBAAUL,UAAV,EACC;AACC,IAAA,SAAS,EAAC,6BADX;AAEC,IAAA,IAAI,EAAGP,OAFR;AAGC,IAAA,OAAO,EAAGP;AAHX,KAKC,cAAC,QAAD;AACC,IAAA,UAAU,EAAC,OADZ;AAEC,IAAA,SAAS,EAAC,2BAFX;AAGC,IAAA,KAAK,EAAGmB,KAHT;AAIC,IAAA,QAAQ,EAAKE,UAAF,IAAkB;AAC5BjB,MAAAA,aAAa,CAAE;AAAEe,QAAAA,KAAK,EAAEE;AAAT,OAAF,CAAb;AACA,KANF;AAOC,kBAAa1B,EAAE,CAAE,gBAAF,CAPhB;AAQC,IAAA,WAAW,EAAGA,EAAE,CAAE,eAAF,CARjB;AASC,IAAA,4BAA4B,MAT7B;AAUC,IAAA,cAAc,EAAG,CAChB,WADgB,EAEhB,aAFgB,EAGhB,YAHgB,EAIhB,oBAJgB;AAVlB,IALD,CADD,CADD,CADD;AA6BA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { RichText, useBlockProps } from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useEffect } from '@wordpress/element';\n\nconst preventDefault = ( event ) => event.preventDefault();\n\nexport default function HomeEdit( {\n\tattributes,\n\tsetAttributes,\n\tcontext,\n\tclientId,\n} ) {\n\tconst { homeUrl } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetUnstableBase, //site index\n\t\t\t} = select( coreStore );\n\t\t\treturn {\n\t\t\t\thomeUrl: getUnstableBase()?.home,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { textColor, backgroundColor, style } = context;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'has-text-color': !! textColor || !! style?.color?.text,\n\t\t\t[ `has-${ textColor }-color` ]: !! textColor,\n\t\t\t'has-background': !! backgroundColor || !! style?.color?.background,\n\t\t\t[ `has-${ backgroundColor }-background-color` ]: !! backgroundColor,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: style?.color?.text,\n\t\t\tbackgroundColor: style?.color?.background,\n\t\t},\n\t} );\n\n\tconst { label } = attributes;\n\n\tuseEffect( () => {\n\t\tif ( label === undefined ) {\n\t\t\tsetAttributes( { label: __( 'Home' ) } );\n\t\t}\n\t}, [ clientId, label ] );\n\n\treturn (\n\t\t<>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<a\n\t\t\t\t\tclassName=\"wp-block-home-link__content\"\n\t\t\t\t\thref={ homeUrl }\n\t\t\t\t\tonClick={ preventDefault }\n\t\t\t\t>\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\t\tclassName=\"wp-block-home-link__label\"\n\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\tonChange={ ( labelValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { label: labelValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\taria-label={ __( 'Home link text' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Add home link' ) }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tallowedFormats={ [\n\t\t\t\t\t\t\t'core/bold',\n\t\t\t\t\t\t\t'core/italic',\n\t\t\t\t\t\t\t'core/image',\n\t\t\t\t\t\t\t'core/strikethrough',\n\t\t\t\t\t\t] }\n\t\t\t\t\t/>\n\t\t\t\t</a>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/home-link/edit.js"],"names":["classnames","RichText","useBlockProps","__","useSelect","store","coreStore","useEffect","preventDefault","event","HomeEdit","attributes","setAttributes","context","clientId","homeUrl","select","getUnstableBase","home","textColor","backgroundColor","style","blockProps","className","color","text","background","label","undefined","labelValue"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { RichText, useBlockProps } from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useEffect } from '@wordpress/element';\n\nconst preventDefault = ( event ) => event.preventDefault();\n\nexport default function HomeEdit( {\n\tattributes,\n\tsetAttributes,\n\tcontext,\n\tclientId,\n} ) {\n\tconst { homeUrl } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetUnstableBase, //site index\n\t\t\t} = select( coreStore );\n\t\t\treturn {\n\t\t\t\thomeUrl: getUnstableBase()?.home,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { textColor, backgroundColor, style } = context;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( 'wp-block-navigation-item', {\n\t\t\t'has-text-color': !! textColor || !! style?.color?.text,\n\t\t\t[ `has-${ textColor }-color` ]: !! textColor,\n\t\t\t'has-background': !! backgroundColor || !! style?.color?.background,\n\t\t\t[ `has-${ backgroundColor }-background-color` ]: !! backgroundColor,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: style?.color?.text,\n\t\t\tbackgroundColor: style?.color?.background,\n\t\t},\n\t} );\n\n\tconst { label } = attributes;\n\n\tuseEffect( () => {\n\t\tif ( label === undefined ) {\n\t\t\tsetAttributes( { label: __( 'Home' ) } );\n\t\t}\n\t}, [ clientId, label ] );\n\n\treturn (\n\t\t<>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<a\n\t\t\t\t\tclassName=\"wp-block-home-link__content wp-block-navigation-item__content\"\n\t\t\t\t\thref={ homeUrl }\n\t\t\t\t\tonClick={ preventDefault }\n\t\t\t\t>\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\t\tclassName=\"wp-block-home-link__label\"\n\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\tonChange={ ( labelValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { label: labelValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\taria-label={ __( 'Home link text' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Add home link' ) }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tallowedFormats={ [\n\t\t\t\t\t\t\t'core/bold',\n\t\t\t\t\t\t\t'core/italic',\n\t\t\t\t\t\t\t'core/image',\n\t\t\t\t\t\t\t'core/strikethrough',\n\t\t\t\t\t\t] }\n\t\t\t\t\t/>\n\t\t\t\t</a>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
@@ -79,6 +79,7 @@ export function ImageEdit({
79
79
  insertBlocksAfter,
80
80
  noticeOperations,
81
81
  onReplace,
82
+ context,
82
83
  clientId
83
84
  }) {
84
85
  const {
@@ -231,7 +232,7 @@ export function ImageEdit({
231
232
  });
232
233
  }
233
234
 
234
- const isTemp = isTemporaryImage(id, url); // Upload a temporary image on mount.
235
+ let isTemp = isTemporaryImage(id, url); // Upload a temporary image on mount.
235
236
 
236
237
  useEffect(() => {
237
238
  if (!isTemp) {
@@ -248,6 +249,7 @@ export function ImageEdit({
248
249
  },
249
250
  allowedTypes: ALLOWED_MEDIA_TYPES,
250
251
  onError: message => {
252
+ isTemp = false;
251
253
  noticeOperations.createErrorNotice(message);
252
254
  setAttributes({
253
255
  src: undefined,
@@ -261,14 +263,13 @@ export function ImageEdit({
261
263
  // no longer temporary).
262
264
 
263
265
  useEffect(() => {
264
- if (!temporaryURL) {
266
+ if (isTemp) {
267
+ setTemporaryURL(url);
265
268
  return;
266
269
  }
267
270
 
268
- return () => {
269
- revokeBlobURL(temporaryURL);
270
- };
271
- }, [temporaryURL]);
271
+ revokeBlobURL(temporaryURL);
272
+ }, [isTemp, url]);
272
273
  const isExternal = isExternalImage(id, url);
273
274
  const src = isExternal ? url : undefined;
274
275
  const mediaPreview = !!url && createElement("img", {
@@ -297,6 +298,7 @@ export function ImageEdit({
297
298
  onSelectURL: onSelectURL,
298
299
  onUploadError: onUploadError,
299
300
  containerRef: ref,
301
+ context: context,
300
302
  clientId: clientId
301
303
  }), !url && createElement(BlockControls, {
302
304
  group: "block"
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/image/edit.js"],"names":["classnames","get","has","omit","pick","getBlobByURL","isBlobURL","revokeBlobURL","withNotices","useSelect","BlockAlignmentControl","BlockControls","BlockIcon","MediaPlaceholder","useBlockProps","store","blockEditorStore","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","clientId","alt","caption","align","width","height","sizeSlug","temporaryURL","setTemporaryURL","altRef","current","captionRef","ref","imageDefaultSize","mediaUpload","select","getSettings","onUploadError","message","removeAllNotices","createErrorNotice","onSelectImage","media","undefined","title","mediaAttributes","additionalAttributes","linkDestination","wp","view","settings","defaultProps","link","href","onSelectURL","newURL","updateAlignment","nextAlign","extraUpdatedAttributes","includes","isTemp","file","filesList","onFileChange","img","allowedTypes","onError","src","isExternal","mediaPreview","classes","blockProps"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { get, has, 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} from '@wordpress/block-editor';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { image as icon } from '@wordpress/icons';\n\n/* global wp */\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\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}\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\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\twp?.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\tconst 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\tnoticeOperations.createErrorNotice( message );\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\tsrc: undefined,\n\t\t\t\t\t\tid: undefined,\n\t\t\t\t\t\turl: undefined,\n\t\t\t\t\t} );\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 ( ! temporaryURL ) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn () => {\n\t\t\trevokeBlobURL( temporaryURL );\n\t\t};\n\t}, [ temporaryURL ] );\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 classes = classnames( className, {\n\t\t'is-transient': temporaryURL,\n\t\t'is-resized': !! width || !! height,\n\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\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\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","omit","pick","getBlobByURL","isBlobURL","revokeBlobURL","withNotices","useSelect","BlockAlignmentControl","BlockControls","BlockIcon","MediaPlaceholder","useBlockProps","store","blockEditorStore","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","onSelectImage","media","undefined","title","mediaAttributes","additionalAttributes","linkDestination","wp","view","settings","defaultProps","link","href","onSelectURL","newURL","updateAlignment","nextAlign","extraUpdatedAttributes","includes","isTemp","file","filesList","onFileChange","img","allowedTypes","onError","src","isExternal","mediaPreview","classes","blockProps"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { get, has, 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} from '@wordpress/block-editor';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { image as icon } from '@wordpress/icons';\n\n/* global wp */\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}\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\twp?.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\tnoticeOperations.createErrorNotice( message );\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\tsrc: undefined,\n\t\t\t\t\t\tid: undefined,\n\t\t\t\t\t\turl: undefined,\n\t\t\t\t\t} );\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 classes = classnames( className, {\n\t\t'is-transient': temporaryURL,\n\t\t'is-resized': !! width || !! height,\n\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\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"]}
@@ -13,7 +13,7 @@ import { Component } from '@wordpress/element';
13
13
  import { requestMediaImport, mediaUploadSync, requestImageFailedRetryDialog, requestImageUploadCancelDialog, requestImageFullscreenPreview, setFeaturedImage } from '@wordpress/react-native-bridge';
14
14
  import { Icon, PanelBody, ToolbarButton, ToolbarGroup, Image, WIDE_ALIGNMENTS, LinkSettingsNavigation, BottomSheet, BottomSheetTextControl, BottomSheetSelectControl, FooterMessageControl, FooterMessageLink, Badge } from '@wordpress/components';
15
15
  import { BlockCaption, MediaPlaceholder, MediaUpload, MediaUploadProgress, MEDIA_TYPE_IMAGE, BlockControls, InspectorControls, BlockAlignmentToolbar, BlockStyles, store as blockEditorStore } from '@wordpress/block-editor';
16
- import { __, sprintf } from '@wordpress/i18n';
16
+ import { __, _x, sprintf } from '@wordpress/i18n';
17
17
  import { getProtocol, hasQueryArg } from '@wordpress/url';
18
18
  import { doAction, hasAction } from '@wordpress/hooks';
19
19
  import { compose, withPreferredColorScheme } from '@wordpress/compose';
@@ -27,7 +27,7 @@ import { store as editPostStore } from '@wordpress/edit-post';
27
27
 
28
28
  import styles from './styles.scss';
29
29
  import { getUpdatedLinkTargetSettings } from './utils';
30
- import { LINK_DESTINATION_CUSTOM, MEDIA_ID_NO_FEATURED_IMAGE_SET } from './constants';
30
+ import { LINK_DESTINATION_CUSTOM, LINK_DESTINATION_ATTACHMENT, LINK_DESTINATION_MEDIA, MEDIA_ID_NO_FEATURED_IMAGE_SET } from './constants';
31
31
 
32
32
  const getUrlForSlug = (image, sizeSlug) => {
33
33
  var _image$media_details, _image$media_details$, _image$media_details$2;
@@ -73,7 +73,7 @@ export class ImageEdit extends Component {
73
73
  },
74
74
  linkRel: {
75
75
  label: __('Link Rel'),
76
- placeholder: __('None')
76
+ placeholder: _x('None', 'Link rel attribute value placeholder')
77
77
  }
78
78
  };
79
79
  }
@@ -118,13 +118,15 @@ export class ImageEdit extends Component {
118
118
  }
119
119
 
120
120
  componentDidUpdate(previousProps) {
121
- if (!previousProps.image && this.props.image) {
122
- const {
123
- image,
124
- attributes
125
- } = this.props;
121
+ const {
122
+ image,
123
+ attributes,
124
+ setAttributes
125
+ } = this.props;
126
+
127
+ if (!previousProps.image && image) {
126
128
  const url = getUrlForSlug(image, attributes === null || attributes === void 0 ? void 0 : attributes.sizeSlug) || image.source_url;
127
- this.props.setAttributes({
129
+ setAttributes({
128
130
  url
129
131
  });
130
132
  }
@@ -254,7 +256,8 @@ export class ImageEdit extends Component {
254
256
 
255
257
  onSetSizeSlug(sizeSlug) {
256
258
  const {
257
- image
259
+ image,
260
+ setAttributes
258
261
  } = this.props;
259
262
  const url = getUrlForSlug(image, sizeSlug);
260
263
 
@@ -262,7 +265,7 @@ export class ImageEdit extends Component {
262
265
  return null;
263
266
  }
264
267
 
265
- this.props.setAttributes({
268
+ setAttributes({
266
269
  url,
267
270
  width: undefined,
268
271
  height: undefined,
@@ -272,12 +275,13 @@ export class ImageEdit extends Component {
272
275
 
273
276
  onSelectMediaUploadOption(media) {
274
277
  const {
275
- attributes: {
276
- id,
277
- url
278
- },
279
278
  imageDefaultSize
280
279
  } = this.props;
280
+ const {
281
+ id,
282
+ url,
283
+ destination
284
+ } = this.props.attributes;
281
285
  const mediaAttributes = {
282
286
  id: media.id,
283
287
  url: media.url,
@@ -298,6 +302,19 @@ export class ImageEdit extends Component {
298
302
  };
299
303
  }
300
304
 
305
+ let href;
306
+
307
+ switch (destination) {
308
+ case LINK_DESTINATION_MEDIA:
309
+ href = media.url;
310
+ break;
311
+
312
+ case LINK_DESTINATION_ATTACHMENT:
313
+ href = media.link;
314
+ break;
315
+ }
316
+
317
+ mediaAttributes.href = href;
301
318
  this.props.setAttributes({ ...mediaAttributes,
302
319
  ...additionalAttributes
303
320
  });
@@ -339,8 +356,11 @@ export class ImageEdit extends Component {
339
356
  const {
340
357
  setAttributes
341
358
  } = this.props;
342
- return href === undefined ? setAttributes(restAttributes) : setAttributes({ ...restAttributes,
343
- href
359
+ return href === undefined ? setAttributes({ ...restAttributes,
360
+ linkDestination: LINK_DESTINATION_CUSTOM
361
+ }) : setAttributes({ ...restAttributes,
362
+ href,
363
+ linkDestination: LINK_DESTINATION_CUSTOM
344
364
  });
345
365
  }
346
366
 
@@ -446,6 +466,7 @@ export class ImageEdit extends Component {
446
466
  image,
447
467
  clientId,
448
468
  imageDefaultSize,
469
+ context,
449
470
  featuredImageId,
450
471
  wasBlockJustInserted
451
472
  } = this.props;
@@ -457,6 +478,7 @@ export class ImageEdit extends Component {
457
478
  sizeSlug,
458
479
  className
459
480
  } = attributes;
481
+ const hasImageContext = context ? Object.keys(context).length > 0 : false;
460
482
  const imageSizes = Array.isArray(this.props.imageSizes) ? this.props.imageSizes : []; // Only map available image sizes for the user to choose.
461
483
 
462
484
  const sizeOptions = imageSizes.filter(({
@@ -535,6 +557,11 @@ export class ImageEdit extends Component {
535
557
  full: 'center',
536
558
  wide: 'center'
537
559
  };
560
+ const additionalImageProps = {
561
+ height: '100%',
562
+ resizeMode: context !== null && context !== void 0 && context.imageCrop ? 'cover' : 'contain'
563
+ };
564
+ const imageContainerStyles = [hasImageContext && styles.fixedHeight];
538
565
 
539
566
  const getImageComponent = (openMediaOptions, getMediaOptions) => createElement(Badge, {
540
567
  label: __('Featured'),
@@ -558,7 +585,9 @@ export class ImageEdit extends Component {
558
585
  isUploadFailed,
559
586
  retryMessage
560
587
  }) => {
561
- return createElement(Image, {
588
+ return createElement(View, {
589
+ style: imageContainerStyles
590
+ }, createElement(Image, _extends({
562
591
  align: align && alignToFlex[align],
563
592
  alt: alt,
564
593
  isSelected: isSelected && !isCaptionSelected,
@@ -570,7 +599,7 @@ export class ImageEdit extends Component {
570
599
  url: url,
571
600
  shapeStyle: styles[className],
572
601
  width: this.getWidth()
573
- });
602
+ }, hasImageContext ? additionalImageProps : {})));
574
603
  }
575
604
  }))), createElement(BlockCaption, {
576
605
  clientId: this.props.clientId,