@wordpress/block-library 6.1.0 → 7.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 (494) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/README.md +7 -1
  3. package/build/audio/edit.js +1 -1
  4. package/build/audio/edit.js.map +1 -1
  5. package/build/button/index.js +5 -1
  6. package/build/button/index.js.map +1 -1
  7. package/build/calendar/index.js +4 -1
  8. package/build/calendar/index.js.map +1 -1
  9. package/build/calendar/transforms.js +27 -0
  10. package/build/calendar/transforms.js.map +1 -0
  11. package/build/code/index.js +5 -1
  12. package/build/code/index.js.map +1 -1
  13. package/build/code/transforms.js +1 -1
  14. package/build/code/transforms.js.map +1 -1
  15. package/build/column/index.js +5 -1
  16. package/build/column/index.js.map +1 -1
  17. package/build/columns/index.js +5 -1
  18. package/build/columns/index.js.map +1 -1
  19. package/build/comment-author-avatar/index.js +4 -1
  20. package/build/comment-author-avatar/index.js.map +1 -1
  21. package/build/comment-author-name/index.js +6 -1
  22. package/build/comment-author-name/index.js.map +1 -1
  23. package/build/comment-content/index.js +5 -1
  24. package/build/comment-content/index.js.map +1 -1
  25. package/build/comment-date/index.js +6 -1
  26. package/build/comment-date/index.js.map +1 -1
  27. package/build/comment-edit-link/index.js +5 -1
  28. package/build/comment-edit-link/index.js.map +1 -1
  29. package/build/comment-reply-link/index.js +5 -1
  30. package/build/comment-reply-link/index.js.map +1 -1
  31. package/build/comment-template/edit.js +49 -11
  32. package/build/comment-template/edit.js.map +1 -1
  33. package/build/comments-pagination/index.js +6 -1
  34. package/build/comments-pagination/index.js.map +1 -1
  35. package/build/comments-pagination-next/index.js +4 -1
  36. package/build/comments-pagination-next/index.js.map +1 -1
  37. package/build/comments-pagination-previous/index.js +4 -1
  38. package/build/comments-pagination-previous/index.js.map +1 -1
  39. package/build/comments-query-loop/index.js +6 -1
  40. package/build/comments-query-loop/index.js.map +1 -1
  41. package/build/cover/deprecated.js +181 -15
  42. package/build/cover/deprecated.js.map +1 -1
  43. package/build/cover/edit.js +7 -4
  44. package/build/cover/edit.js.map +1 -1
  45. package/build/cover/save.js +8 -3
  46. package/build/cover/save.js.map +1 -1
  47. package/build/gallery/constants.js +5 -1
  48. package/build/gallery/constants.js.map +1 -1
  49. package/build/gallery/edit.js +26 -14
  50. package/build/gallery/edit.js.map +1 -1
  51. package/build/gallery/shared.js +1 -1
  52. package/build/gallery/shared.js.map +1 -1
  53. package/build/gallery/transforms.js +8 -2
  54. package/build/gallery/transforms.js.map +1 -1
  55. package/build/gallery/utils.js +4 -3
  56. package/build/gallery/utils.js.map +1 -1
  57. package/build/group/index.js +5 -1
  58. package/build/group/index.js.map +1 -1
  59. package/build/group/variations.js +18 -3
  60. package/build/group/variations.js.map +1 -1
  61. package/build/heading/index.js +5 -1
  62. package/build/heading/index.js.map +1 -1
  63. package/build/heading/transforms.js +7 -5
  64. package/build/heading/transforms.js.map +1 -1
  65. package/build/image/edit.native.js +55 -15
  66. package/build/image/edit.native.js.map +1 -1
  67. package/build/index.js +7 -3
  68. package/build/index.js.map +1 -1
  69. package/build/latest-posts/edit.js +46 -57
  70. package/build/latest-posts/edit.js.map +1 -1
  71. package/build/list/index.js +5 -1
  72. package/build/list/index.js.map +1 -1
  73. package/build/media-text/index.js +5 -1
  74. package/build/media-text/index.js.map +1 -1
  75. package/build/navigation/edit/existing-menus-options.js +62 -0
  76. package/build/navigation/edit/existing-menus-options.js.map +1 -0
  77. package/build/navigation/edit/index.js +4 -5
  78. package/build/navigation/edit/index.js.map +1 -1
  79. package/build/navigation/edit/inner-blocks.js +7 -3
  80. package/build/navigation/edit/inner-blocks.js.map +1 -1
  81. package/build/navigation/edit/navigation-menu-selector.js +25 -33
  82. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  83. package/build/navigation/edit/overlay-menu-icon.js +0 -1
  84. package/build/navigation/edit/overlay-menu-icon.js.map +1 -1
  85. package/build/navigation/edit/placeholder/index.js +26 -71
  86. package/build/navigation/edit/placeholder/index.js.map +1 -1
  87. package/build/navigation/edit/placeholder/placeholder-preview.js +8 -12
  88. package/build/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
  89. package/build/paragraph/index.js +5 -1
  90. package/build/paragraph/index.js.map +1 -1
  91. package/build/paragraph/transforms.js +5 -1
  92. package/build/paragraph/transforms.js.map +1 -1
  93. package/build/post-author/index.js +5 -1
  94. package/build/post-author/index.js.map +1 -1
  95. package/build/post-author-biography/edit.js +76 -0
  96. package/build/post-author-biography/edit.js.map +1 -0
  97. package/build/post-author-biography/index.js +68 -0
  98. package/build/post-author-biography/index.js.map +1 -0
  99. package/build/post-author-name/index.js +6 -1
  100. package/build/post-author-name/index.js.map +1 -1
  101. package/build/post-comments/index.js +5 -1
  102. package/build/post-comments/index.js.map +1 -1
  103. package/build/post-comments-count/index.js +5 -1
  104. package/build/post-comments-count/index.js.map +1 -1
  105. package/build/post-comments-form/index.js +5 -1
  106. package/build/post-comments-form/index.js.map +1 -1
  107. package/build/post-comments-link/index.js +5 -1
  108. package/build/post-comments-link/index.js.map +1 -1
  109. package/build/post-content/edit.js +9 -3
  110. package/build/post-content/edit.js.map +1 -1
  111. package/build/post-date/index.js +6 -1
  112. package/build/post-date/index.js.map +1 -1
  113. package/build/post-excerpt/index.js +6 -1
  114. package/build/post-excerpt/index.js.map +1 -1
  115. package/build/post-terms/index.js +9 -1
  116. package/build/post-terms/index.js.map +1 -1
  117. package/build/post-title/edit.js +10 -7
  118. package/build/post-title/edit.js.map +1 -1
  119. package/build/post-title/index.js +6 -1
  120. package/build/post-title/index.js.map +1 -1
  121. package/build/preformatted/index.js +5 -1
  122. package/build/preformatted/index.js.map +1 -1
  123. package/build/pullquote/index.js +5 -1
  124. package/build/pullquote/index.js.map +1 -1
  125. package/build/query/index.js +5 -1
  126. package/build/query/index.js.map +1 -1
  127. package/build/query-pagination/index.js +6 -1
  128. package/build/query-pagination/index.js.map +1 -1
  129. package/build/query-pagination-next/index.js +4 -1
  130. package/build/query-pagination-next/index.js.map +1 -1
  131. package/build/query-pagination-previous/index.js +4 -1
  132. package/build/query-pagination-previous/index.js.map +1 -1
  133. package/build/query-title/index.js +8 -1
  134. package/build/query-title/index.js.map +1 -1
  135. package/build/quote/index.js +1 -5
  136. package/build/quote/index.js.map +1 -1
  137. package/build/read-more/edit.js +55 -0
  138. package/build/read-more/edit.js.map +1 -0
  139. package/build/read-more/index.js +87 -0
  140. package/build/read-more/index.js.map +1 -0
  141. package/build/search/edit.js +1 -1
  142. package/build/search/edit.js.map +1 -1
  143. package/build/search/index.js +5 -1
  144. package/build/search/index.js.map +1 -1
  145. package/build/site-logo/edit.js +4 -8
  146. package/build/site-logo/edit.js.map +1 -1
  147. package/build/site-tagline/edit.js +7 -2
  148. package/build/site-tagline/edit.js.map +1 -1
  149. package/build/site-tagline/index.js +5 -1
  150. package/build/site-tagline/index.js.map +1 -1
  151. package/build/site-title/index.js +6 -1
  152. package/build/site-title/index.js.map +1 -1
  153. package/build/social-link/edit.js +8 -1
  154. package/build/social-link/edit.js.map +1 -1
  155. package/build/social-link/index.js +1 -1
  156. package/build/social-links/edit.js +7 -2
  157. package/build/social-links/edit.js.map +1 -1
  158. package/build/social-links/index.js +5 -0
  159. package/build/social-links/index.js.map +1 -1
  160. package/build/social-links/save.js +2 -0
  161. package/build/social-links/save.js.map +1 -1
  162. package/build/table/index.js +5 -1
  163. package/build/table/index.js.map +1 -1
  164. package/build/tag-cloud/index.js +12 -1
  165. package/build/tag-cloud/index.js.map +1 -1
  166. package/build/tag-cloud/transforms.js +27 -0
  167. package/build/tag-cloud/transforms.js.map +1 -0
  168. package/build/term-description/index.js +5 -1
  169. package/build/term-description/index.js.map +1 -1
  170. package/build/verse/index.js +5 -1
  171. package/build/verse/index.js.map +1 -1
  172. package/build-module/audio/edit.js +1 -1
  173. package/build-module/audio/edit.js.map +1 -1
  174. package/build-module/button/index.js +5 -1
  175. package/build-module/button/index.js.map +1 -1
  176. package/build-module/calendar/index.js +3 -1
  177. package/build-module/calendar/index.js.map +1 -1
  178. package/build-module/calendar/transforms.js +18 -0
  179. package/build-module/calendar/transforms.js.map +1 -0
  180. package/build-module/code/index.js +5 -1
  181. package/build-module/code/index.js.map +1 -1
  182. package/build-module/code/transforms.js +1 -1
  183. package/build-module/code/transforms.js.map +1 -1
  184. package/build-module/column/index.js +5 -1
  185. package/build-module/column/index.js.map +1 -1
  186. package/build-module/columns/index.js +5 -1
  187. package/build-module/columns/index.js.map +1 -1
  188. package/build-module/comment-author-avatar/index.js +4 -1
  189. package/build-module/comment-author-avatar/index.js.map +1 -1
  190. package/build-module/comment-author-name/index.js +6 -1
  191. package/build-module/comment-author-name/index.js.map +1 -1
  192. package/build-module/comment-content/index.js +5 -1
  193. package/build-module/comment-content/index.js.map +1 -1
  194. package/build-module/comment-date/index.js +6 -1
  195. package/build-module/comment-date/index.js.map +1 -1
  196. package/build-module/comment-edit-link/index.js +5 -1
  197. package/build-module/comment-edit-link/index.js.map +1 -1
  198. package/build-module/comment-reply-link/index.js +5 -1
  199. package/build-module/comment-reply-link/index.js.map +1 -1
  200. package/build-module/comment-template/edit.js +48 -13
  201. package/build-module/comment-template/edit.js.map +1 -1
  202. package/build-module/comments-pagination/index.js +6 -1
  203. package/build-module/comments-pagination/index.js.map +1 -1
  204. package/build-module/comments-pagination-next/index.js +4 -1
  205. package/build-module/comments-pagination-next/index.js.map +1 -1
  206. package/build-module/comments-pagination-previous/index.js +4 -1
  207. package/build-module/comments-pagination-previous/index.js.map +1 -1
  208. package/build-module/comments-query-loop/index.js +6 -1
  209. package/build-module/comments-query-loop/index.js.map +1 -1
  210. package/build-module/cover/deprecated.js +185 -17
  211. package/build-module/cover/deprecated.js.map +1 -1
  212. package/build-module/cover/edit.js +7 -4
  213. package/build-module/cover/edit.js.map +1 -1
  214. package/build-module/cover/save.js +8 -3
  215. package/build-module/cover/save.js.map +1 -1
  216. package/build-module/gallery/constants.js +2 -0
  217. package/build-module/gallery/constants.js.map +1 -1
  218. package/build-module/gallery/edit.js +25 -14
  219. package/build-module/gallery/edit.js.map +1 -1
  220. package/build-module/gallery/shared.js +1 -1
  221. package/build-module/gallery/shared.js.map +1 -1
  222. package/build-module/gallery/transforms.js +8 -2
  223. package/build-module/gallery/transforms.js.map +1 -1
  224. package/build-module/gallery/utils.js +5 -4
  225. package/build-module/gallery/utils.js.map +1 -1
  226. package/build-module/group/index.js +5 -1
  227. package/build-module/group/index.js.map +1 -1
  228. package/build-module/group/variations.js +18 -3
  229. package/build-module/group/variations.js.map +1 -1
  230. package/build-module/heading/index.js +5 -1
  231. package/build-module/heading/index.js.map +1 -1
  232. package/build-module/heading/transforms.js +7 -5
  233. package/build-module/heading/transforms.js.map +1 -1
  234. package/build-module/image/edit.native.js +54 -15
  235. package/build-module/image/edit.native.js.map +1 -1
  236. package/build-module/index.js +5 -3
  237. package/build-module/index.js.map +1 -1
  238. package/build-module/latest-posts/edit.js +47 -58
  239. package/build-module/latest-posts/edit.js.map +1 -1
  240. package/build-module/list/index.js +5 -1
  241. package/build-module/list/index.js.map +1 -1
  242. package/build-module/media-text/index.js +5 -1
  243. package/build-module/media-text/index.js.map +1 -1
  244. package/build-module/navigation/edit/existing-menus-options.js +53 -0
  245. package/build-module/navigation/edit/existing-menus-options.js.map +1 -0
  246. package/build-module/navigation/edit/index.js +4 -5
  247. package/build-module/navigation/edit/index.js.map +1 -1
  248. package/build-module/navigation/edit/inner-blocks.js +8 -4
  249. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  250. package/build-module/navigation/edit/navigation-menu-selector.js +26 -33
  251. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  252. package/build-module/navigation/edit/overlay-menu-icon.js +0 -1
  253. package/build-module/navigation/edit/overlay-menu-icon.js.map +1 -1
  254. package/build-module/navigation/edit/placeholder/index.js +26 -71
  255. package/build-module/navigation/edit/placeholder/index.js.map +1 -1
  256. package/build-module/navigation/edit/placeholder/placeholder-preview.js +8 -13
  257. package/build-module/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
  258. package/build-module/paragraph/index.js +5 -1
  259. package/build-module/paragraph/index.js.map +1 -1
  260. package/build-module/paragraph/transforms.js +5 -1
  261. package/build-module/paragraph/transforms.js.map +1 -1
  262. package/build-module/post-author/index.js +5 -1
  263. package/build-module/post-author/index.js.map +1 -1
  264. package/build-module/post-author-biography/edit.js +64 -0
  265. package/build-module/post-author-biography/edit.js.map +1 -0
  266. package/build-module/post-author-biography/index.js +59 -0
  267. package/build-module/post-author-biography/index.js.map +1 -0
  268. package/build-module/post-author-name/index.js +6 -1
  269. package/build-module/post-author-name/index.js.map +1 -1
  270. package/build-module/post-comments/index.js +5 -1
  271. package/build-module/post-comments/index.js.map +1 -1
  272. package/build-module/post-comments-count/index.js +5 -1
  273. package/build-module/post-comments-count/index.js.map +1 -1
  274. package/build-module/post-comments-form/index.js +5 -1
  275. package/build-module/post-comments-form/index.js.map +1 -1
  276. package/build-module/post-comments-link/index.js +5 -1
  277. package/build-module/post-comments-link/index.js.map +1 -1
  278. package/build-module/post-content/edit.js +6 -4
  279. package/build-module/post-content/edit.js.map +1 -1
  280. package/build-module/post-date/index.js +6 -1
  281. package/build-module/post-date/index.js.map +1 -1
  282. package/build-module/post-excerpt/index.js +6 -1
  283. package/build-module/post-excerpt/index.js.map +1 -1
  284. package/build-module/post-terms/index.js +12 -1
  285. package/build-module/post-terms/index.js.map +1 -1
  286. package/build-module/post-title/edit.js +10 -8
  287. package/build-module/post-title/edit.js.map +1 -1
  288. package/build-module/post-title/index.js +6 -1
  289. package/build-module/post-title/index.js.map +1 -1
  290. package/build-module/preformatted/index.js +5 -1
  291. package/build-module/preformatted/index.js.map +1 -1
  292. package/build-module/pullquote/index.js +5 -1
  293. package/build-module/pullquote/index.js.map +1 -1
  294. package/build-module/query/index.js +5 -1
  295. package/build-module/query/index.js.map +1 -1
  296. package/build-module/query-pagination/index.js +6 -1
  297. package/build-module/query-pagination/index.js.map +1 -1
  298. package/build-module/query-pagination-next/index.js +4 -1
  299. package/build-module/query-pagination-next/index.js.map +1 -1
  300. package/build-module/query-pagination-previous/index.js +4 -1
  301. package/build-module/query-pagination-previous/index.js.map +1 -1
  302. package/build-module/query-title/index.js +11 -1
  303. package/build-module/query-title/index.js.map +1 -1
  304. package/build-module/quote/index.js +1 -5
  305. package/build-module/quote/index.js.map +1 -1
  306. package/build-module/read-more/edit.js +41 -0
  307. package/build-module/read-more/edit.js.map +1 -0
  308. package/build-module/read-more/index.js +74 -0
  309. package/build-module/read-more/index.js.map +1 -0
  310. package/build-module/search/edit.js +1 -1
  311. package/build-module/search/edit.js.map +1 -1
  312. package/build-module/search/index.js +5 -1
  313. package/build-module/search/index.js.map +1 -1
  314. package/build-module/site-logo/edit.js +4 -8
  315. package/build-module/site-logo/edit.js.map +1 -1
  316. package/build-module/site-tagline/edit.js +6 -2
  317. package/build-module/site-tagline/edit.js.map +1 -1
  318. package/build-module/site-tagline/index.js +5 -1
  319. package/build-module/site-tagline/index.js.map +1 -1
  320. package/build-module/site-title/index.js +6 -1
  321. package/build-module/site-title/index.js.map +1 -1
  322. package/build-module/social-link/edit.js +8 -1
  323. package/build-module/social-link/edit.js.map +1 -1
  324. package/build-module/social-link/index.js +1 -1
  325. package/build-module/social-links/edit.js +7 -2
  326. package/build-module/social-links/edit.js.map +1 -1
  327. package/build-module/social-links/index.js +5 -0
  328. package/build-module/social-links/index.js.map +1 -1
  329. package/build-module/social-links/save.js +2 -0
  330. package/build-module/social-links/save.js.map +1 -1
  331. package/build-module/table/index.js +5 -1
  332. package/build-module/table/index.js.map +1 -1
  333. package/build-module/tag-cloud/index.js +11 -1
  334. package/build-module/tag-cloud/index.js.map +1 -1
  335. package/build-module/tag-cloud/transforms.js +18 -0
  336. package/build-module/tag-cloud/transforms.js.map +1 -0
  337. package/build-module/term-description/index.js +5 -1
  338. package/build-module/term-description/index.js.map +1 -1
  339. package/build-module/verse/index.js +5 -1
  340. package/build-module/verse/index.js.map +1 -1
  341. package/build-style/common-rtl.css +8 -0
  342. package/build-style/common.css +8 -0
  343. package/build-style/cover/style-rtl.css +115 -11
  344. package/build-style/cover/style.css +115 -11
  345. package/build-style/editor-rtl.css +77 -67
  346. package/build-style/editor.css +77 -67
  347. package/build-style/gallery/style-rtl.css +2 -1
  348. package/build-style/gallery/style.css +2 -1
  349. package/build-style/image/style-rtl.css +0 -2
  350. package/build-style/image/style.css +0 -2
  351. package/build-style/navigation/editor-rtl.css +77 -67
  352. package/build-style/navigation/editor.css +77 -67
  353. package/build-style/quote/style-rtl.css +5 -5
  354. package/build-style/quote/style.css +5 -5
  355. package/build-style/read-more/style-rtl.css +87 -0
  356. package/build-style/read-more/style.css +87 -0
  357. package/build-style/separator/style-rtl.css +0 -3
  358. package/build-style/separator/style.css +0 -3
  359. package/build-style/social-links/style-rtl.css +7 -1
  360. package/build-style/social-links/style.css +7 -1
  361. package/build-style/style-rtl.css +149 -23
  362. package/build-style/style.css +149 -23
  363. package/package.json +28 -30
  364. package/src/audio/edit.js +1 -1
  365. package/src/block/test/edit.native.js +7 -3
  366. package/src/button/block.json +5 -1
  367. package/src/buttons/test/edit.native.js +2 -2
  368. package/src/calendar/index.js +2 -0
  369. package/src/calendar/transforms.js +23 -0
  370. package/src/code/block.json +5 -1
  371. package/src/code/transforms.js +1 -1
  372. package/src/column/block.json +5 -1
  373. package/src/columns/block.json +5 -1
  374. package/src/comment-author-avatar/block.json +4 -1
  375. package/src/comment-author-name/block.json +6 -1
  376. package/src/comment-content/block.json +5 -1
  377. package/src/comment-date/block.json +6 -1
  378. package/src/comment-date/index.php +1 -1
  379. package/src/comment-edit-link/block.json +5 -1
  380. package/src/comment-reply-link/block.json +5 -1
  381. package/src/comment-template/edit.js +59 -14
  382. package/src/comments-pagination/block.json +6 -1
  383. package/src/comments-pagination-next/block.json +4 -1
  384. package/src/comments-pagination-previous/block.json +4 -1
  385. package/src/comments-query-loop/block.json +6 -1
  386. package/src/common.scss +9 -0
  387. package/src/cover/deprecated.js +211 -1
  388. package/src/cover/edit.js +8 -4
  389. package/src/cover/save.js +10 -4
  390. package/src/cover/style.scss +20 -2
  391. package/src/cover/test/__snapshots__/edit.native.js.snap +4 -4
  392. package/src/cover/test/edit.native.js +8 -4
  393. package/src/embed/test/index.native.js +6 -6
  394. package/src/gallery/constants.js +2 -0
  395. package/src/gallery/edit.js +31 -13
  396. package/src/gallery/shared.js +1 -1
  397. package/src/gallery/style.scss +4 -1
  398. package/src/gallery/test/__snapshots__/index.native.js.snap +7 -0
  399. package/src/gallery/test/index.native.js +128 -0
  400. package/src/gallery/transforms.js +7 -1
  401. package/src/gallery/utils.js +7 -3
  402. package/src/group/block.json +5 -1
  403. package/src/group/variations.js +11 -1
  404. package/src/heading/block.json +5 -1
  405. package/src/heading/transforms.js +2 -5
  406. package/src/image/edit.native.js +65 -15
  407. package/src/image/index.php +1 -1
  408. package/src/image/style.scss +0 -2
  409. package/src/image/test/edit.native.js +157 -8
  410. package/src/index.js +35 -31
  411. package/src/latest-comments/index.php +4 -4
  412. package/src/latest-posts/edit.js +51 -63
  413. package/src/latest-posts/index.php +3 -3
  414. package/src/list/block.json +5 -1
  415. package/src/media-text/block.json +5 -1
  416. package/src/missing/test/edit-integration.native.js +2 -2
  417. package/src/navigation/edit/existing-menus-options.js +70 -0
  418. package/src/navigation/edit/index.js +4 -3
  419. package/src/navigation/edit/inner-blocks.js +16 -3
  420. package/src/navigation/edit/navigation-menu-selector.js +38 -62
  421. package/src/navigation/edit/overlay-menu-icon.js +0 -1
  422. package/src/navigation/edit/placeholder/index.js +39 -108
  423. package/src/navigation/edit/placeholder/placeholder-preview.js +8 -10
  424. package/src/navigation/editor.scss +119 -100
  425. package/src/navigation/index.php +3 -3
  426. package/src/navigation-link/index.php +1 -1
  427. package/src/navigation-submenu/index.php +1 -1
  428. package/src/page-list/index.php +5 -5
  429. package/src/paragraph/block.json +5 -1
  430. package/src/post-author/block.json +5 -1
  431. package/src/post-author-biography/block.json +41 -0
  432. package/src/post-author-biography/edit.js +63 -0
  433. package/src/post-author-biography/index.js +18 -0
  434. package/src/post-author-biography/index.php +48 -0
  435. package/src/post-author-name/block.json +6 -1
  436. package/src/post-comments/block.json +5 -1
  437. package/src/post-comments-count/block.json +5 -1
  438. package/src/post-comments-form/block.json +5 -1
  439. package/src/post-comments-link/block.json +5 -1
  440. package/src/post-comments-link/index.php +2 -2
  441. package/src/post-content/edit.js +4 -4
  442. package/src/post-date/block.json +6 -1
  443. package/src/post-date/index.php +1 -1
  444. package/src/post-excerpt/block.json +6 -1
  445. package/src/post-excerpt/index.php +1 -1
  446. package/src/post-terms/block.json +6 -1
  447. package/src/post-terms/index.js +6 -0
  448. package/src/post-title/block.json +6 -1
  449. package/src/post-title/edit.js +8 -7
  450. package/src/post-title/index.php +1 -1
  451. package/src/preformatted/block.json +5 -1
  452. package/src/pullquote/block.json +5 -1
  453. package/src/query/block.json +5 -1
  454. package/src/query-pagination/block.json +6 -1
  455. package/src/query-pagination-next/block.json +4 -1
  456. package/src/query-pagination-next/index.php +2 -2
  457. package/src/query-pagination-previous/block.json +4 -1
  458. package/src/query-pagination-previous/index.php +2 -2
  459. package/src/query-title/block.json +5 -1
  460. package/src/query-title/index.js +6 -0
  461. package/src/quote/block.json +1 -2
  462. package/src/quote/index.js +0 -1
  463. package/src/quote/style.scss +3 -3
  464. package/src/quote/theme.scss +1 -1
  465. package/src/read-more/block.json +56 -0
  466. package/src/read-more/edit.js +50 -0
  467. package/src/read-more/index.js +18 -0
  468. package/src/read-more/index.php +45 -0
  469. package/src/read-more/style.scss +12 -0
  470. package/src/search/block.json +5 -1
  471. package/src/search/edit.js +2 -1
  472. package/src/search/index.php +5 -3
  473. package/src/separator/style.scss +0 -5
  474. package/src/site-logo/edit.js +4 -8
  475. package/src/site-tagline/block.json +5 -1
  476. package/src/site-tagline/edit.js +10 -1
  477. package/src/site-tagline/index.php +1 -1
  478. package/src/site-title/block.json +6 -1
  479. package/src/site-title/index.php +2 -2
  480. package/src/social-link/block.json +1 -0
  481. package/src/social-link/edit.js +14 -2
  482. package/src/social-link/index.php +55 -52
  483. package/src/social-links/block.json +5 -0
  484. package/src/social-links/edit.js +8 -1
  485. package/src/social-links/save.js +7 -1
  486. package/src/social-links/style.scss +8 -1
  487. package/src/style.scss +1 -0
  488. package/src/table/block.json +5 -1
  489. package/src/tag-cloud/block.json +4 -0
  490. package/src/tag-cloud/index.js +2 -0
  491. package/src/tag-cloud/index.php +0 -9
  492. package/src/tag-cloud/transforms.js +23 -0
  493. package/src/term-description/block.json +5 -1
  494. package/src/verse/block.json +5 -1
@@ -330,7 +330,10 @@ const transforms = {
330
330
  url,
331
331
  alt,
332
332
  caption,
333
- imageSizeSlug
333
+ sizeSlug: imageSizeSlug,
334
+ linkDestination,
335
+ href,
336
+ linkTarget
334
337
  }
335
338
  } = _ref14;
336
339
  return createBlock('core/image', {
@@ -339,7 +342,10 @@ const transforms = {
339
342
  alt,
340
343
  caption,
341
344
  sizeSlug: imageSizeSlug,
342
- align
345
+ align,
346
+ linkDestination,
347
+ href,
348
+ linkTarget
343
349
  });
344
350
  });
345
351
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/gallery/transforms.js"],"names":["filter","every","toString","createBlock","createBlobURL","addFilter","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_NONE","LINK_DESTINATION_MEDIA","DEPRECATED_LINK_DESTINATION_ATTACHMENT","DEPRECATED_LINK_DESTINATION_MEDIA","pickRelevantMediaFiles","isGalleryV2Enabled","parseShortcodeIds","ids","split","map","id","parseInt","updateThirdPartyTransformToGallery","block","name","attributes","images","length","innerBlocks","url","alt","sizeSlug","linkDestination","updateThirdPartyTransformFromGallery","toBlock","fromBlocks","from","Array","isArray","galleryBlock","find","transformedBlock","includes","transforms","type","isMultiBlock","blocks","transform","align","undefined","validImages","image","caption","tag","shortcode","named","shortCodeTransforms","columns","linkTo","link","isMatch","priority","files","file","indexOf","to","imageSizeSlug","index"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { filter, every, toString } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { createBlobURL } from '@wordpress/blob';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_NONE,\n\tLINK_DESTINATION_MEDIA,\n} from './constants';\nimport {\n\tLINK_DESTINATION_ATTACHMENT as DEPRECATED_LINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA as DEPRECATED_LINK_DESTINATION_MEDIA,\n} from './v1/constants';\nimport { pickRelevantMediaFiles, isGalleryV2Enabled } from './shared';\n\nconst parseShortcodeIds = ( ids ) => {\n\tif ( ! ids ) {\n\t\treturn [];\n\t}\n\n\treturn ids.split( ',' ).map( ( id ) => parseInt( id, 10 ) );\n};\n\n/**\n * Third party block plugins don't have an easy way to detect if the\n * innerBlocks version of the Gallery is running when they run a\n * 3rdPartyBlock -> GalleryBlock transform so this tranform filter\n * will handle this. Once the innerBlocks version is the default\n * in a core release, this could be deprecated and removed after\n * plugin authors have been given time to update transforms.\n *\n * @typedef {Object} Attributes\n * @typedef {Object} Block\n * @property {Attributes} attributes The attributes of the block.\n * @param {Block} block The transformed block.\n * @return {Block} The transformed block.\n */\nfunction updateThirdPartyTransformToGallery( block ) {\n\tif (\n\t\tisGalleryV2Enabled() &&\n\t\tblock.name === 'core/gallery' &&\n\t\tblock.attributes?.images.length > 0\n\t) {\n\t\tconst innerBlocks = block.attributes.images.map(\n\t\t\t( { url, id, alt } ) => {\n\t\t\t\treturn createBlock( 'core/image', {\n\t\t\t\t\turl,\n\t\t\t\t\tid: id ? parseInt( id, 10 ) : null,\n\t\t\t\t\talt,\n\t\t\t\t\tsizeSlug: block.attributes.sizeSlug,\n\t\t\t\t\tlinkDestination: block.attributes.linkDestination,\n\t\t\t\t} );\n\t\t\t}\n\t\t);\n\n\t\tdelete block.attributes.ids;\n\t\tdelete block.attributes.images;\n\t\tblock.innerBlocks = innerBlocks;\n\t}\n\n\treturn block;\n}\naddFilter(\n\t'blocks.switchToBlockType.transformedBlock',\n\t'core/gallery/update-third-party-transform-to',\n\tupdateThirdPartyTransformToGallery\n);\n\n/**\n * Third party block plugins don't have an easy way to detect if the\n * innerBlocks version of the Gallery is running when they run a\n * GalleryBlock -> 3rdPartyBlock transform so this transform filter\n * will handle this. Once the innerBlocks version is the default\n * in a core release, this could be deprecated and removed after\n * plugin authors have been given time to update transforms.\n *\n * @typedef {Object} Attributes\n * @typedef {Object} Block\n * @property {Attributes} attributes The attributes of the block.\n * @param {Block} toBlock The block to transform to.\n * @param {Block[]} fromBlocks The blocks to transform from.\n * @return {Block} The transformed block.\n */\nfunction updateThirdPartyTransformFromGallery( toBlock, fromBlocks ) {\n\tconst from = Array.isArray( fromBlocks ) ? fromBlocks : [ fromBlocks ];\n\tconst galleryBlock = from.find(\n\t\t( transformedBlock ) =>\n\t\t\ttransformedBlock.name === 'core/gallery' &&\n\t\t\ttransformedBlock.innerBlocks.length > 0 &&\n\t\t\t! transformedBlock.attributes.images?.length > 0 &&\n\t\t\t! toBlock.name.includes( 'core/' )\n\t);\n\n\tif ( galleryBlock ) {\n\t\tconst images = galleryBlock.innerBlocks.map(\n\t\t\t( { attributes: { url, id, alt } } ) => ( {\n\t\t\t\turl,\n\t\t\t\tid: id ? parseInt( id, 10 ) : null,\n\t\t\t\talt,\n\t\t\t} )\n\t\t);\n\t\tconst ids = images.map( ( { id } ) => id );\n\t\tgalleryBlock.attributes.images = images;\n\t\tgalleryBlock.attributes.ids = ids;\n\t}\n\n\treturn toBlock;\n}\naddFilter(\n\t'blocks.switchToBlockType.transformedBlock',\n\t'core/gallery/update-third-party-transform-from',\n\tupdateThirdPartyTransformFromGallery\n);\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/image' ],\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\t// Init the align and size from the first item which may be either the placeholder or an image.\n\t\t\t\tlet { align, sizeSlug } = attributes[ 0 ];\n\t\t\t\t// Loop through all the images and check if they have the same align and size.\n\t\t\t\talign = every( attributes, [ 'align', align ] )\n\t\t\t\t\t? align\n\t\t\t\t\t: undefined;\n\t\t\t\tsizeSlug = every( attributes, [ 'sizeSlug', sizeSlug ] )\n\t\t\t\t\t? sizeSlug\n\t\t\t\t\t: undefined;\n\n\t\t\t\tconst validImages = filter( attributes, ( { url } ) => url );\n\n\t\t\t\tif ( isGalleryV2Enabled() ) {\n\t\t\t\t\tconst innerBlocks = validImages.map( ( image ) => {\n\t\t\t\t\t\treturn createBlock( 'core/image', image );\n\t\t\t\t\t} );\n\n\t\t\t\t\treturn createBlock(\n\t\t\t\t\t\t'core/gallery',\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\talign,\n\t\t\t\t\t\t\tsizeSlug,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tinnerBlocks\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\treturn createBlock( 'core/gallery', {\n\t\t\t\t\timages: validImages.map(\n\t\t\t\t\t\t( { id, url, alt, caption } ) => ( {\n\t\t\t\t\t\t\tid: toString( id ),\n\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\tcaption,\n\t\t\t\t\t\t} )\n\t\t\t\t\t),\n\t\t\t\t\tids: validImages.map( ( { id } ) => parseInt( id, 10 ) ),\n\t\t\t\t\talign,\n\t\t\t\t\tsizeSlug,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'shortcode',\n\t\t\ttag: 'gallery',\n\n\t\t\tattributes: {\n\t\t\t\timages: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tshortcode: ( { named: { ids } } ) => {\n\t\t\t\t\t\tif ( ! isGalleryV2Enabled() ) {\n\t\t\t\t\t\t\treturn parseShortcodeIds( ids ).map( ( id ) => ( {\n\t\t\t\t\t\t\t\tid: toString( id ),\n\t\t\t\t\t\t\t} ) );\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tids: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tshortcode: ( { named: { ids } } ) => {\n\t\t\t\t\t\tif ( ! isGalleryV2Enabled() ) {\n\t\t\t\t\t\t\treturn parseShortcodeIds( ids );\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tshortCodeTransforms: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tshortcode: ( { named: { ids } } ) => {\n\t\t\t\t\t\tif ( isGalleryV2Enabled() ) {\n\t\t\t\t\t\t\treturn parseShortcodeIds( ids ).map( ( id ) => ( {\n\t\t\t\t\t\t\t\tid: parseInt( id ),\n\t\t\t\t\t\t\t} ) );\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tcolumns: {\n\t\t\t\t\ttype: 'number',\n\t\t\t\t\tshortcode: ( { named: { columns = '3' } } ) => {\n\t\t\t\t\t\treturn parseInt( columns, 10 );\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tlinkTo: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tshortcode: ( { named: { link } } ) => {\n\t\t\t\t\t\tif ( ! isGalleryV2Enabled() ) {\n\t\t\t\t\t\t\tswitch ( link ) {\n\t\t\t\t\t\t\t\tcase 'post':\n\t\t\t\t\t\t\t\t\treturn DEPRECATED_LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\t\t\t\tcase 'file':\n\t\t\t\t\t\t\t\t\treturn DEPRECATED_LINK_DESTINATION_MEDIA;\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\treturn DEPRECATED_LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tswitch ( link ) {\n\t\t\t\t\t\t\tcase 'post':\n\t\t\t\t\t\t\t\treturn LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\t\t\tcase 'file':\n\t\t\t\t\t\t\t\treturn LINK_DESTINATION_MEDIA;\n\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\treturn LINK_DESTINATION_NONE;\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\tisMatch( { named } ) {\n\t\t\t\treturn undefined !== named.ids;\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\t// When created by drag and dropping multiple files on an insertion point. Because multiple\n\t\t\t// files must not be transformed to a gallery when dropped within a gallery there is another transform\n\t\t\t// within the image block to handle that case. Therefore this transform has to have priority 1\n\t\t\t// set so that it overrrides the image block transformation when mulitple images are dropped outside\n\t\t\t// of a gallery block.\n\t\t\ttype: 'files',\n\t\t\tpriority: 1,\n\t\t\tisMatch( files ) {\n\t\t\t\treturn (\n\t\t\t\t\tfiles.length !== 1 &&\n\t\t\t\t\tevery(\n\t\t\t\t\t\tfiles,\n\t\t\t\t\t\t( file ) => file.type.indexOf( 'image/' ) === 0\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t},\n\t\t\ttransform( files ) {\n\t\t\t\tif ( isGalleryV2Enabled() ) {\n\t\t\t\t\tconst innerBlocks = files.map( ( file ) =>\n\t\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\t\turl: createBlobURL( file ),\n\t\t\t\t\t\t} )\n\t\t\t\t\t);\n\n\t\t\t\t\treturn createBlock( 'core/gallery', {}, innerBlocks );\n\t\t\t\t}\n\t\t\t\tconst block = createBlock( 'core/gallery', {\n\t\t\t\t\timages: files.map( ( file ) =>\n\t\t\t\t\t\tpickRelevantMediaFiles( {\n\t\t\t\t\t\t\turl: createBlobURL( file ),\n\t\t\t\t\t\t} )\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t\treturn block;\n\t\t\t},\n\t\t},\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/image' ],\n\t\t\ttransform: ( { align, images, ids, sizeSlug }, innerBlocks ) => {\n\t\t\t\tif ( isGalleryV2Enabled() ) {\n\t\t\t\t\tif ( innerBlocks.length > 0 ) {\n\t\t\t\t\t\treturn innerBlocks.map(\n\t\t\t\t\t\t\t( {\n\t\t\t\t\t\t\t\tattributes: {\n\t\t\t\t\t\t\t\t\tid,\n\t\t\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\t\t\tcaption,\n\t\t\t\t\t\t\t\t\timageSizeSlug,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t} ) =>\n\t\t\t\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\t\t\t\tid,\n\t\t\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\t\t\tcaption,\n\t\t\t\t\t\t\t\t\tsizeSlug: imageSizeSlug,\n\t\t\t\t\t\t\t\t\talign,\n\t\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\treturn createBlock( 'core/image', { align } );\n\t\t\t\t}\n\t\t\t\tif ( images.length > 0 ) {\n\t\t\t\t\treturn images.map( ( { url, alt, caption }, index ) =>\n\t\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\t\tid: ids[ index ],\n\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\tcaption,\n\t\t\t\t\t\t\talign,\n\t\t\t\t\t\t\tsizeSlug,\n\t\t\t\t\t\t} )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn createBlock( 'core/image', { align } );\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/gallery/transforms.js"],"names":["filter","every","toString","createBlock","createBlobURL","addFilter","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_NONE","LINK_DESTINATION_MEDIA","DEPRECATED_LINK_DESTINATION_ATTACHMENT","DEPRECATED_LINK_DESTINATION_MEDIA","pickRelevantMediaFiles","isGalleryV2Enabled","parseShortcodeIds","ids","split","map","id","parseInt","updateThirdPartyTransformToGallery","block","name","attributes","images","length","innerBlocks","url","alt","sizeSlug","linkDestination","updateThirdPartyTransformFromGallery","toBlock","fromBlocks","from","Array","isArray","galleryBlock","find","transformedBlock","includes","transforms","type","isMultiBlock","blocks","transform","align","undefined","validImages","image","caption","tag","shortcode","named","shortCodeTransforms","columns","linkTo","link","isMatch","priority","files","file","indexOf","to","imageSizeSlug","href","linkTarget","index"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { filter, every, toString } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { createBlobURL } from '@wordpress/blob';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_NONE,\n\tLINK_DESTINATION_MEDIA,\n} from './constants';\nimport {\n\tLINK_DESTINATION_ATTACHMENT as DEPRECATED_LINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA as DEPRECATED_LINK_DESTINATION_MEDIA,\n} from './v1/constants';\nimport { pickRelevantMediaFiles, isGalleryV2Enabled } from './shared';\n\nconst parseShortcodeIds = ( ids ) => {\n\tif ( ! ids ) {\n\t\treturn [];\n\t}\n\n\treturn ids.split( ',' ).map( ( id ) => parseInt( id, 10 ) );\n};\n\n/**\n * Third party block plugins don't have an easy way to detect if the\n * innerBlocks version of the Gallery is running when they run a\n * 3rdPartyBlock -> GalleryBlock transform so this tranform filter\n * will handle this. Once the innerBlocks version is the default\n * in a core release, this could be deprecated and removed after\n * plugin authors have been given time to update transforms.\n *\n * @typedef {Object} Attributes\n * @typedef {Object} Block\n * @property {Attributes} attributes The attributes of the block.\n * @param {Block} block The transformed block.\n * @return {Block} The transformed block.\n */\nfunction updateThirdPartyTransformToGallery( block ) {\n\tif (\n\t\tisGalleryV2Enabled() &&\n\t\tblock.name === 'core/gallery' &&\n\t\tblock.attributes?.images.length > 0\n\t) {\n\t\tconst innerBlocks = block.attributes.images.map(\n\t\t\t( { url, id, alt } ) => {\n\t\t\t\treturn createBlock( 'core/image', {\n\t\t\t\t\turl,\n\t\t\t\t\tid: id ? parseInt( id, 10 ) : null,\n\t\t\t\t\talt,\n\t\t\t\t\tsizeSlug: block.attributes.sizeSlug,\n\t\t\t\t\tlinkDestination: block.attributes.linkDestination,\n\t\t\t\t} );\n\t\t\t}\n\t\t);\n\n\t\tdelete block.attributes.ids;\n\t\tdelete block.attributes.images;\n\t\tblock.innerBlocks = innerBlocks;\n\t}\n\n\treturn block;\n}\naddFilter(\n\t'blocks.switchToBlockType.transformedBlock',\n\t'core/gallery/update-third-party-transform-to',\n\tupdateThirdPartyTransformToGallery\n);\n\n/**\n * Third party block plugins don't have an easy way to detect if the\n * innerBlocks version of the Gallery is running when they run a\n * GalleryBlock -> 3rdPartyBlock transform so this transform filter\n * will handle this. Once the innerBlocks version is the default\n * in a core release, this could be deprecated and removed after\n * plugin authors have been given time to update transforms.\n *\n * @typedef {Object} Attributes\n * @typedef {Object} Block\n * @property {Attributes} attributes The attributes of the block.\n * @param {Block} toBlock The block to transform to.\n * @param {Block[]} fromBlocks The blocks to transform from.\n * @return {Block} The transformed block.\n */\nfunction updateThirdPartyTransformFromGallery( toBlock, fromBlocks ) {\n\tconst from = Array.isArray( fromBlocks ) ? fromBlocks : [ fromBlocks ];\n\tconst galleryBlock = from.find(\n\t\t( transformedBlock ) =>\n\t\t\ttransformedBlock.name === 'core/gallery' &&\n\t\t\ttransformedBlock.innerBlocks.length > 0 &&\n\t\t\t! transformedBlock.attributes.images?.length > 0 &&\n\t\t\t! toBlock.name.includes( 'core/' )\n\t);\n\n\tif ( galleryBlock ) {\n\t\tconst images = galleryBlock.innerBlocks.map(\n\t\t\t( { attributes: { url, id, alt } } ) => ( {\n\t\t\t\turl,\n\t\t\t\tid: id ? parseInt( id, 10 ) : null,\n\t\t\t\talt,\n\t\t\t} )\n\t\t);\n\t\tconst ids = images.map( ( { id } ) => id );\n\t\tgalleryBlock.attributes.images = images;\n\t\tgalleryBlock.attributes.ids = ids;\n\t}\n\n\treturn toBlock;\n}\naddFilter(\n\t'blocks.switchToBlockType.transformedBlock',\n\t'core/gallery/update-third-party-transform-from',\n\tupdateThirdPartyTransformFromGallery\n);\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/image' ],\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\t// Init the align and size from the first item which may be either the placeholder or an image.\n\t\t\t\tlet { align, sizeSlug } = attributes[ 0 ];\n\t\t\t\t// Loop through all the images and check if they have the same align and size.\n\t\t\t\talign = every( attributes, [ 'align', align ] )\n\t\t\t\t\t? align\n\t\t\t\t\t: undefined;\n\t\t\t\tsizeSlug = every( attributes, [ 'sizeSlug', sizeSlug ] )\n\t\t\t\t\t? sizeSlug\n\t\t\t\t\t: undefined;\n\n\t\t\t\tconst validImages = filter( attributes, ( { url } ) => url );\n\n\t\t\t\tif ( isGalleryV2Enabled() ) {\n\t\t\t\t\tconst innerBlocks = validImages.map( ( image ) => {\n\t\t\t\t\t\treturn createBlock( 'core/image', image );\n\t\t\t\t\t} );\n\n\t\t\t\t\treturn createBlock(\n\t\t\t\t\t\t'core/gallery',\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\talign,\n\t\t\t\t\t\t\tsizeSlug,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tinnerBlocks\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\treturn createBlock( 'core/gallery', {\n\t\t\t\t\timages: validImages.map(\n\t\t\t\t\t\t( { id, url, alt, caption } ) => ( {\n\t\t\t\t\t\t\tid: toString( id ),\n\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\tcaption,\n\t\t\t\t\t\t} )\n\t\t\t\t\t),\n\t\t\t\t\tids: validImages.map( ( { id } ) => parseInt( id, 10 ) ),\n\t\t\t\t\talign,\n\t\t\t\t\tsizeSlug,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'shortcode',\n\t\t\ttag: 'gallery',\n\n\t\t\tattributes: {\n\t\t\t\timages: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tshortcode: ( { named: { ids } } ) => {\n\t\t\t\t\t\tif ( ! isGalleryV2Enabled() ) {\n\t\t\t\t\t\t\treturn parseShortcodeIds( ids ).map( ( id ) => ( {\n\t\t\t\t\t\t\t\tid: toString( id ),\n\t\t\t\t\t\t\t} ) );\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tids: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tshortcode: ( { named: { ids } } ) => {\n\t\t\t\t\t\tif ( ! isGalleryV2Enabled() ) {\n\t\t\t\t\t\t\treturn parseShortcodeIds( ids );\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tshortCodeTransforms: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tshortcode: ( { named: { ids } } ) => {\n\t\t\t\t\t\tif ( isGalleryV2Enabled() ) {\n\t\t\t\t\t\t\treturn parseShortcodeIds( ids ).map( ( id ) => ( {\n\t\t\t\t\t\t\t\tid: parseInt( id ),\n\t\t\t\t\t\t\t} ) );\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tcolumns: {\n\t\t\t\t\ttype: 'number',\n\t\t\t\t\tshortcode: ( { named: { columns = '3' } } ) => {\n\t\t\t\t\t\treturn parseInt( columns, 10 );\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tlinkTo: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tshortcode: ( { named: { link } } ) => {\n\t\t\t\t\t\tif ( ! isGalleryV2Enabled() ) {\n\t\t\t\t\t\t\tswitch ( link ) {\n\t\t\t\t\t\t\t\tcase 'post':\n\t\t\t\t\t\t\t\t\treturn DEPRECATED_LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\t\t\t\tcase 'file':\n\t\t\t\t\t\t\t\t\treturn DEPRECATED_LINK_DESTINATION_MEDIA;\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\treturn DEPRECATED_LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tswitch ( link ) {\n\t\t\t\t\t\t\tcase 'post':\n\t\t\t\t\t\t\t\treturn LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\t\t\tcase 'file':\n\t\t\t\t\t\t\t\treturn LINK_DESTINATION_MEDIA;\n\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\treturn LINK_DESTINATION_NONE;\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\tisMatch( { named } ) {\n\t\t\t\treturn undefined !== named.ids;\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\t// When created by drag and dropping multiple files on an insertion point. Because multiple\n\t\t\t// files must not be transformed to a gallery when dropped within a gallery there is another transform\n\t\t\t// within the image block to handle that case. Therefore this transform has to have priority 1\n\t\t\t// set so that it overrrides the image block transformation when mulitple images are dropped outside\n\t\t\t// of a gallery block.\n\t\t\ttype: 'files',\n\t\t\tpriority: 1,\n\t\t\tisMatch( files ) {\n\t\t\t\treturn (\n\t\t\t\t\tfiles.length !== 1 &&\n\t\t\t\t\tevery(\n\t\t\t\t\t\tfiles,\n\t\t\t\t\t\t( file ) => file.type.indexOf( 'image/' ) === 0\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t},\n\t\t\ttransform( files ) {\n\t\t\t\tif ( isGalleryV2Enabled() ) {\n\t\t\t\t\tconst innerBlocks = files.map( ( file ) =>\n\t\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\t\turl: createBlobURL( file ),\n\t\t\t\t\t\t} )\n\t\t\t\t\t);\n\n\t\t\t\t\treturn createBlock( 'core/gallery', {}, innerBlocks );\n\t\t\t\t}\n\t\t\t\tconst block = createBlock( 'core/gallery', {\n\t\t\t\t\timages: files.map( ( file ) =>\n\t\t\t\t\t\tpickRelevantMediaFiles( {\n\t\t\t\t\t\t\turl: createBlobURL( file ),\n\t\t\t\t\t\t} )\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t\treturn block;\n\t\t\t},\n\t\t},\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/image' ],\n\t\t\ttransform: ( { align, images, ids, sizeSlug }, innerBlocks ) => {\n\t\t\t\tif ( isGalleryV2Enabled() ) {\n\t\t\t\t\tif ( innerBlocks.length > 0 ) {\n\t\t\t\t\t\treturn innerBlocks.map(\n\t\t\t\t\t\t\t( {\n\t\t\t\t\t\t\t\tattributes: {\n\t\t\t\t\t\t\t\t\tid,\n\t\t\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\t\t\tcaption,\n\t\t\t\t\t\t\t\t\tsizeSlug: imageSizeSlug,\n\t\t\t\t\t\t\t\t\tlinkDestination,\n\t\t\t\t\t\t\t\t\thref,\n\t\t\t\t\t\t\t\t\tlinkTarget,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t} ) =>\n\t\t\t\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\t\t\t\tid,\n\t\t\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\t\t\tcaption,\n\t\t\t\t\t\t\t\t\tsizeSlug: imageSizeSlug,\n\t\t\t\t\t\t\t\t\talign,\n\t\t\t\t\t\t\t\t\tlinkDestination,\n\t\t\t\t\t\t\t\t\thref,\n\t\t\t\t\t\t\t\t\tlinkTarget,\n\t\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\treturn createBlock( 'core/image', { align } );\n\t\t\t\t}\n\t\t\t\tif ( images.length > 0 ) {\n\t\t\t\t\treturn images.map( ( { url, alt, caption }, index ) =>\n\t\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\t\tid: ids[ index ],\n\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\tcaption,\n\t\t\t\t\t\t\talign,\n\t\t\t\t\t\t\tsizeSlug,\n\t\t\t\t\t\t} )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn createBlock( 'core/image', { align } );\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Internal dependencies
3
3
  */
4
- import { LINK_DESTINATION_ATTACHMENT, LINK_DESTINATION_MEDIA, LINK_DESTINATION_NONE } from './constants';
4
+ import { LINK_DESTINATION_ATTACHMENT, LINK_DESTINATION_MEDIA, LINK_DESTINATION_NONE, LINK_DESTINATION_MEDIA_WP_CORE, LINK_DESTINATION_ATTACHMENT_WP_CORE } from './constants';
5
5
  import { LINK_DESTINATION_ATTACHMENT as IMAGE_LINK_DESTINATION_ATTACHMENT, LINK_DESTINATION_MEDIA as IMAGE_LINK_DESTINATION_MEDIA, LINK_DESTINATION_NONE as IMAGE_LINK_DESTINATION_NONE } from '../image/constants';
6
6
  /**
7
7
  * Determines new href and linkDestination values for an image block from the
@@ -13,10 +13,10 @@ import { LINK_DESTINATION_ATTACHMENT as IMAGE_LINK_DESTINATION_ATTACHMENT, LINK_
13
13
  */
14
14
 
15
15
  export function getHrefAndDestination(image, destination) {
16
- // Need to determine the URL that the selected destination maps to.
17
- // Gutenberg and WordPress use different constants so the new link
18
- // destination also needs to be tweaked.
16
+ // Gutenberg and WordPress use different constants so if image_default_link_type
17
+ // option is set we need to map from the WP Core values.
19
18
  switch (destination) {
19
+ case LINK_DESTINATION_MEDIA_WP_CORE:
20
20
  case LINK_DESTINATION_MEDIA:
21
21
  return {
22
22
  href: (image === null || image === void 0 ? void 0 : image.source_url) || (image === null || image === void 0 ? void 0 : image.url),
@@ -24,6 +24,7 @@ export function getHrefAndDestination(image, destination) {
24
24
  linkDestination: IMAGE_LINK_DESTINATION_MEDIA
25
25
  };
26
26
 
27
+ case LINK_DESTINATION_ATTACHMENT_WP_CORE:
27
28
  case LINK_DESTINATION_ATTACHMENT:
28
29
  return {
29
30
  href: image === null || image === void 0 ? void 0 : image.link,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/gallery/utils.js"],"names":["LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_MEDIA","LINK_DESTINATION_NONE","IMAGE_LINK_DESTINATION_ATTACHMENT","IMAGE_LINK_DESTINATION_MEDIA","IMAGE_LINK_DESTINATION_NONE","getHrefAndDestination","image","destination","href","source_url","url","linkDestination","link","undefined"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,2BADD,EAECC,sBAFD,EAGCC,qBAHD,QAIO,aAJP;AAKA,SACCF,2BAA2B,IAAIG,iCADhC,EAECF,sBAAsB,IAAIG,4BAF3B,EAGCF,qBAAqB,IAAIG,2BAH1B,QAIO,oBAJP;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,qBAAT,CAAgCC,KAAhC,EAAuCC,WAAvC,EAAqD;AAC3D;AACA;AACA;AACA,UAASA,WAAT;AACC,SAAKP,sBAAL;AACC,aAAO;AACNQ,QAAAA,IAAI,EAAE,CAAAF,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEG,UAAP,MAAqBH,KAArB,aAAqBA,KAArB,uBAAqBA,KAAK,CAAEI,GAA5B,CADA;AACiC;AACvCC,QAAAA,eAAe,EAAER;AAFX,OAAP;;AAID,SAAKJ,2BAAL;AACC,aAAO;AACNS,QAAAA,IAAI,EAAEF,KAAF,aAAEA,KAAF,uBAAEA,KAAK,CAAEM,IADP;AAEND,QAAAA,eAAe,EAAET;AAFX,OAAP;;AAID,SAAKD,qBAAL;AACC,aAAO;AACNO,QAAAA,IAAI,EAAEK,SADA;AAENF,QAAAA,eAAe,EAAEP;AAFX,OAAP;AAZF;;AAkBA,SAAO,EAAP;AACA","sourcesContent":["/**\n * Internal dependencies\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n} from './constants';\nimport {\n\tLINK_DESTINATION_ATTACHMENT as IMAGE_LINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA as IMAGE_LINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE as IMAGE_LINK_DESTINATION_NONE,\n} from '../image/constants';\n\n/**\n * Determines new href and linkDestination values for an image block from the\n * supplied Gallery link destination.\n *\n * @param {Object} image Gallery image.\n * @param {string} destination Gallery's selected link destination.\n * @return {Object} New attributes to assign to image block.\n */\nexport function getHrefAndDestination( image, destination ) {\n\t// Need to determine the URL that the selected destination maps to.\n\t// Gutenberg and WordPress use different constants so the new link\n\t// destination also needs to be tweaked.\n\tswitch ( destination ) {\n\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\treturn {\n\t\t\t\thref: image?.source_url || image?.url, // eslint-disable-line camelcase\n\t\t\t\tlinkDestination: IMAGE_LINK_DESTINATION_MEDIA,\n\t\t\t};\n\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\treturn {\n\t\t\t\thref: image?.link,\n\t\t\t\tlinkDestination: IMAGE_LINK_DESTINATION_ATTACHMENT,\n\t\t\t};\n\t\tcase LINK_DESTINATION_NONE:\n\t\t\treturn {\n\t\t\t\thref: undefined,\n\t\t\t\tlinkDestination: IMAGE_LINK_DESTINATION_NONE,\n\t\t\t};\n\t}\n\n\treturn {};\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/gallery/utils.js"],"names":["LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_MEDIA","LINK_DESTINATION_NONE","LINK_DESTINATION_MEDIA_WP_CORE","LINK_DESTINATION_ATTACHMENT_WP_CORE","IMAGE_LINK_DESTINATION_ATTACHMENT","IMAGE_LINK_DESTINATION_MEDIA","IMAGE_LINK_DESTINATION_NONE","getHrefAndDestination","image","destination","href","source_url","url","linkDestination","link","undefined"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,2BADD,EAECC,sBAFD,EAGCC,qBAHD,EAICC,8BAJD,EAKCC,mCALD,QAMO,aANP;AAOA,SACCJ,2BAA2B,IAAIK,iCADhC,EAECJ,sBAAsB,IAAIK,4BAF3B,EAGCJ,qBAAqB,IAAIK,2BAH1B,QAIO,oBAJP;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,qBAAT,CAAgCC,KAAhC,EAAuCC,WAAvC,EAAqD;AAC3D;AACA;AAEA,UAASA,WAAT;AACC,SAAKP,8BAAL;AACA,SAAKF,sBAAL;AACC,aAAO;AACNU,QAAAA,IAAI,EAAE,CAAAF,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEG,UAAP,MAAqBH,KAArB,aAAqBA,KAArB,uBAAqBA,KAAK,CAAEI,GAA5B,CADA;AACiC;AACvCC,QAAAA,eAAe,EAAER;AAFX,OAAP;;AAID,SAAKF,mCAAL;AACA,SAAKJ,2BAAL;AACC,aAAO;AACNW,QAAAA,IAAI,EAAEF,KAAF,aAAEA,KAAF,uBAAEA,KAAK,CAAEM,IADP;AAEND,QAAAA,eAAe,EAAET;AAFX,OAAP;;AAID,SAAKH,qBAAL;AACC,aAAO;AACNS,QAAAA,IAAI,EAAEK,SADA;AAENF,QAAAA,eAAe,EAAEP;AAFX,OAAP;AAdF;;AAoBA,SAAO,EAAP;AACA","sourcesContent":["/**\n * Internal dependencies\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n\tLINK_DESTINATION_MEDIA_WP_CORE,\n\tLINK_DESTINATION_ATTACHMENT_WP_CORE,\n} from './constants';\nimport {\n\tLINK_DESTINATION_ATTACHMENT as IMAGE_LINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA as IMAGE_LINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE as IMAGE_LINK_DESTINATION_NONE,\n} from '../image/constants';\n\n/**\n * Determines new href and linkDestination values for an image block from the\n * supplied Gallery link destination.\n *\n * @param {Object} image Gallery image.\n * @param {string} destination Gallery's selected link destination.\n * @return {Object} New attributes to assign to image block.\n */\nexport function getHrefAndDestination( image, destination ) {\n\t// Gutenberg and WordPress use different constants so if image_default_link_type\n\t// option is set we need to map from the WP Core values.\n\n\tswitch ( destination ) {\n\t\tcase LINK_DESTINATION_MEDIA_WP_CORE:\n\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\treturn {\n\t\t\t\thref: image?.source_url || image?.url, // eslint-disable-line camelcase\n\t\t\t\tlinkDestination: IMAGE_LINK_DESTINATION_MEDIA,\n\t\t\t};\n\t\tcase LINK_DESTINATION_ATTACHMENT_WP_CORE:\n\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\treturn {\n\t\t\t\thref: image?.link,\n\t\t\t\tlinkDestination: IMAGE_LINK_DESTINATION_ATTACHMENT,\n\t\t\t};\n\t\tcase LINK_DESTINATION_NONE:\n\t\t\treturn {\n\t\t\t\thref: undefined,\n\t\t\t\tlinkDestination: IMAGE_LINK_DESTINATION_NONE,\n\t\t\t};\n\t}\n\n\treturn {};\n}\n"]}
@@ -35,7 +35,11 @@ const metadata = {
35
35
  html: false,
36
36
  color: {
37
37
  gradients: true,
38
- link: true
38
+ link: true,
39
+ __experimentalDefaultControls: {
40
+ background: true,
41
+ text: true
42
+ }
39
43
  },
40
44
  spacing: {
41
45
  padding: true,
@@ -1 +1 @@
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"]}
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"]}
@@ -3,6 +3,21 @@
3
3
  */
4
4
  import { __ } from '@wordpress/i18n';
5
5
  const variations = [{
6
+ name: 'group',
7
+ title: __('Group'),
8
+ description: __('Blocks shown in a column.'),
9
+ attributes: {
10
+ layout: {
11
+ type: 'default'
12
+ }
13
+ },
14
+ scope: ['transform'],
15
+ isActive: blockAttributes => {
16
+ var _blockAttributes$layo;
17
+
18
+ return !blockAttributes.layout || ((_blockAttributes$layo = blockAttributes.layout) === null || _blockAttributes$layo === void 0 ? void 0 : _blockAttributes$layo.type) === 'default';
19
+ }
20
+ }, {
6
21
  name: 'group-row',
7
22
  title: __('Row'),
8
23
  description: __('Blocks shown in a row.'),
@@ -12,11 +27,11 @@ const variations = [{
12
27
  allowOrientation: false
13
28
  }
14
29
  },
15
- scope: ['inserter'],
30
+ scope: ['inserter', 'transform'],
16
31
  isActive: blockAttributes => {
17
- var _blockAttributes$layo;
32
+ var _blockAttributes$layo2;
18
33
 
19
- return ((_blockAttributes$layo = blockAttributes.layout) === null || _blockAttributes$layo === void 0 ? void 0 : _blockAttributes$layo.type) === 'flex';
34
+ return ((_blockAttributes$layo2 = blockAttributes.layout) === null || _blockAttributes$layo2 === void 0 ? void 0 : _blockAttributes$layo2.type) === 'flex';
20
35
  }
21
36
  }];
22
37
  export default variations;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/group/variations.js"],"names":["__","variations","name","title","description","attributes","layout","type","allowOrientation","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,MAAR;AAAgBC,MAAAA,gBAAgB,EAAE;AAAlC;AAAV,GAJb;AAKCC,EAAAA,KAAK,EAAE,CAAE,UAAF,CALR;AAMCC,EAAAA,QAAQ,EAAIC,eAAF;AAAA;;AAAA,WACT,0BAAAA,eAAe,CAACL,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', allowOrientation: false } },\n\t\tscope: [ 'inserter' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\tblockAttributes.layout?.type === 'flex',\n\t},\n];\n\nexport default variations;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/group/variations.js"],"names":["__","variations","name","title","description","attributes","layout","type","scope","isActive","blockAttributes","allowOrientation"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AAEA,MAAMC,UAAU,GAAG,CAClB;AACCC,EAAAA,IAAI,EAAE,OADP;AAECC,EAAAA,KAAK,EAAEH,EAAE,CAAE,OAAF,CAFV;AAGCI,EAAAA,WAAW,EAAEJ,EAAE,CAAE,2BAAF,CAHhB;AAICK,EAAAA,UAAU,EAAE;AAAEC,IAAAA,MAAM,EAAE;AAAEC,MAAAA,IAAI,EAAE;AAAR;AAAV,GAJb;AAKCC,EAAAA,KAAK,EAAE,CAAE,WAAF,CALR;AAMCC,EAAAA,QAAQ,EAAIC,eAAF;AAAA;;AAAA,WACT,CAAEA,eAAe,CAACJ,MAAlB,IACA,0BAAAI,eAAe,CAACJ,MAAhB,gFAAwBC,IAAxB,MAAiC,SAFxB;AAAA;AANX,CADkB,EAWlB;AACCL,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,MAAR;AAAgBI,MAAAA,gBAAgB,EAAE;AAAlC;AAAV,GAJb;AAKCH,EAAAA,KAAK,EAAE,CAAE,UAAF,EAAc,WAAd,CALR;AAMCC,EAAAA,QAAQ,EAAIC,eAAF;AAAA;;AAAA,WACT,2BAAAA,eAAe,CAACJ,MAAhB,kFAAwBC,IAAxB,MAAiC,MADxB;AAAA;AANX,CAXkB,CAAnB;AAsBA,eAAeN,UAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nconst variations = [\n\t{\n\t\tname: 'group',\n\t\ttitle: __( 'Group' ),\n\t\tdescription: __( 'Blocks shown in a column.' ),\n\t\tattributes: { layout: { type: 'default' } },\n\t\tscope: [ 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\t! blockAttributes.layout ||\n\t\t\tblockAttributes.layout?.type === 'default',\n\t},\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', allowOrientation: false } },\n\t\tscope: [ 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\tblockAttributes.layout?.type === 'flex',\n\t},\n];\n\nexport default variations;\n"]}
@@ -47,7 +47,11 @@ const metadata = {
47
47
  anchor: true,
48
48
  className: false,
49
49
  color: {
50
- link: true
50
+ link: true,
51
+ __experimentalDefaultControls: {
52
+ background: true,
53
+ text: true
54
+ }
51
55
  },
52
56
  spacing: {
53
57
  margin: true
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/heading/index.js"],"names":["isEmpty","heading","icon","__","sprintf","deprecated","edit","save","transforms","name","metadata","settings","example","attributes","content","level","__experimentalLabel","context","merge","attributesToMerge"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAT,QAAwB,QAAxB;AAEA;AACA;AACA;;AACA,SAASC,OAAO,IAAIC,IAApB,QAAgC,kBAAhC;AACA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AAEA;AACA;AACA;;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,IAAP,MAAiB,QAAjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBT,EAAAA,IADuB;AAEvBU,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,OAAO,EAAEX,EAAE,CAAE,gBAAF,CADA;AAEXY,MAAAA,KAAK,EAAE;AAFI;AADJ,GAFc;;AAQvBC,EAAAA,mBAAmB,CAAEH,UAAF,QAA4B;AAAA,QAAd;AAAEI,MAAAA;AAAF,KAAc;;AAC9C,QAAKA,OAAO,KAAK,eAAjB,EAAmC;AAClC,YAAM;AAAEH,QAAAA,OAAF;AAAWC,QAAAA;AAAX,UAAqBF,UAA3B;AAEA,aAAOb,OAAO,CAAEc,OAAF,CAAP,GACJV,OAAO;AACP;AACAD,MAAAA,EAAE,CAAE,kBAAF,CAFK,EAGPY,KAHO,CADH,GAMJX,OAAO;AACP;AACAD,MAAAA,EAAE,CAAE,kBAAF,CAFK,EAGPY,KAHO,EAIPD,OAJO,CANV;AAYA;AACD,GAzBsB;;AA0BvBN,EAAAA,UA1BuB;AA2BvBH,EAAAA,UA3BuB;;AA4BvBa,EAAAA,KAAK,CAAEL,UAAF,EAAcM,iBAAd,EAAkC;AACtC,WAAO;AACNL,MAAAA,OAAO,EACN,CAAED,UAAU,CAACC,OAAX,IAAsB,EAAxB,KACEK,iBAAiB,CAACL,OAAlB,IAA6B,EAD/B;AAFK,KAAP;AAKA,GAlCsB;;AAmCvBR,EAAAA,IAnCuB;AAoCvBC,EAAAA;AApCuB,CAAjB","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { heading as icon } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcontent: __( 'Code is Poetry' ),\n\t\t\tlevel: 2,\n\t\t},\n\t},\n\t__experimentalLabel( attributes, { context } ) {\n\t\tif ( context === 'accessibility' ) {\n\t\t\tconst { content, level } = attributes;\n\n\t\t\treturn isEmpty( content )\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. %s: heading level. */\n\t\t\t\t\t\t__( 'Level %s. Empty.' ),\n\t\t\t\t\t\tlevel\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. 1: heading level. 2: heading content. */\n\t\t\t\t\t\t__( 'Level %1$s. %2$s' ),\n\t\t\t\t\t\tlevel,\n\t\t\t\t\t\tcontent\n\t\t\t\t );\n\t\t}\n\t},\n\ttransforms,\n\tdeprecated,\n\tmerge( attributes, attributesToMerge ) {\n\t\treturn {\n\t\t\tcontent:\n\t\t\t\t( attributes.content || '' ) +\n\t\t\t\t( attributesToMerge.content || '' ),\n\t\t};\n\t},\n\tedit,\n\tsave,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/heading/index.js"],"names":["isEmpty","heading","icon","__","sprintf","deprecated","edit","save","transforms","name","metadata","settings","example","attributes","content","level","__experimentalLabel","context","merge","attributesToMerge"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAT,QAAwB,QAAxB;AAEA;AACA;AACA;;AACA,SAASC,OAAO,IAAIC,IAApB,QAAgC,kBAAhC;AACA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AAEA;AACA;AACA;;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,IAAP,MAAiB,QAAjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBT,EAAAA,IADuB;AAEvBU,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,OAAO,EAAEX,EAAE,CAAE,gBAAF,CADA;AAEXY,MAAAA,KAAK,EAAE;AAFI;AADJ,GAFc;;AAQvBC,EAAAA,mBAAmB,CAAEH,UAAF,QAA4B;AAAA,QAAd;AAAEI,MAAAA;AAAF,KAAc;;AAC9C,QAAKA,OAAO,KAAK,eAAjB,EAAmC;AAClC,YAAM;AAAEH,QAAAA,OAAF;AAAWC,QAAAA;AAAX,UAAqBF,UAA3B;AAEA,aAAOb,OAAO,CAAEc,OAAF,CAAP,GACJV,OAAO;AACP;AACAD,MAAAA,EAAE,CAAE,kBAAF,CAFK,EAGPY,KAHO,CADH,GAMJX,OAAO;AACP;AACAD,MAAAA,EAAE,CAAE,kBAAF,CAFK,EAGPY,KAHO,EAIPD,OAJO,CANV;AAYA;AACD,GAzBsB;;AA0BvBN,EAAAA,UA1BuB;AA2BvBH,EAAAA,UA3BuB;;AA4BvBa,EAAAA,KAAK,CAAEL,UAAF,EAAcM,iBAAd,EAAkC;AACtC,WAAO;AACNL,MAAAA,OAAO,EACN,CAAED,UAAU,CAACC,OAAX,IAAsB,EAAxB,KACEK,iBAAiB,CAACL,OAAlB,IAA6B,EAD/B;AAFK,KAAP;AAKA,GAlCsB;;AAmCvBR,EAAAA,IAnCuB;AAoCvBC,EAAAA;AApCuB,CAAjB","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { heading as icon } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcontent: __( 'Code is Poetry' ),\n\t\t\tlevel: 2,\n\t\t},\n\t},\n\t__experimentalLabel( attributes, { context } ) {\n\t\tif ( context === 'accessibility' ) {\n\t\t\tconst { content, level } = attributes;\n\n\t\t\treturn isEmpty( content )\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. %s: heading level. */\n\t\t\t\t\t\t__( 'Level %s. Empty.' ),\n\t\t\t\t\t\tlevel\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. 1: heading level. 2: heading content. */\n\t\t\t\t\t\t__( 'Level %1$s. %2$s' ),\n\t\t\t\t\t\tlevel,\n\t\t\t\t\t\tcontent\n\t\t\t\t );\n\t\t}\n\t},\n\ttransforms,\n\tdeprecated,\n\tmerge( attributes, attributesToMerge ) {\n\t\treturn {\n\t\t\tcontent:\n\t\t\t\t( attributes.content || '' ) +\n\t\t\t\t( attributesToMerge.content || '' ),\n\t\t};\n\t},\n\tedit,\n\tsave,\n};\n"]}
@@ -42,7 +42,11 @@ const {
42
42
  anchor: true,
43
43
  className: false,
44
44
  color: {
45
- link: true
45
+ link: true,
46
+ __experimentalDefaultControls: {
47
+ background: true,
48
+ text: true
49
+ }
46
50
  },
47
51
  spacing: {
48
52
  margin: true
@@ -147,12 +151,10 @@ const transforms = {
147
151
  blocks: ['core/paragraph'],
148
152
  transform: attributes => attributes.map(_ref3 => {
149
153
  let {
150
- content,
151
- anchor
154
+ content
152
155
  } = _ref3;
153
156
  return createBlock('core/paragraph', {
154
- content,
155
- anchor
157
+ content
156
158
  });
157
159
  })
158
160
  }]
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/heading/transforms.js"],"names":["createBlock","getBlockAttributes","getLevelFromHeadingNodeName","transforms","from","type","isMultiBlock","blocks","transform","attributes","map","content","anchor","name","selector","schema","phrasingContentSchema","isPaste","children","h1","h2","h3","h4","h5","h6","node","outerHTML","textAlign","style","level","nodeName","align","prefix","Array","join","regExp","RegExp","to"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock, getBlockAttributes } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { getLevelFromHeadingNodeName } from './shared';\nimport { name } from './block.json';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, anchor } ) =>\n\t\t\t\t\tcreateBlock( name, {\n\t\t\t\t\t\tcontent,\n\t\t\t\t\t\tanchor,\n\t\t\t\t\t} )\n\t\t\t\t),\n\t\t},\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\t\tschema: ( { phrasingContentSchema, isPaste } ) => {\n\t\t\t\tconst schema = {\n\t\t\t\t\tchildren: phrasingContentSchema,\n\t\t\t\t\tattributes: isPaste ? [] : [ 'style', 'id' ],\n\t\t\t\t};\n\t\t\t\treturn {\n\t\t\t\t\th1: schema,\n\t\t\t\t\th2: schema,\n\t\t\t\t\th3: schema,\n\t\t\t\t\th4: schema,\n\t\t\t\t\th5: schema,\n\t\t\t\t\th6: schema,\n\t\t\t\t};\n\t\t\t},\n\t\t\ttransform( node ) {\n\t\t\t\tconst attributes = getBlockAttributes( name, node.outerHTML );\n\t\t\t\tconst { textAlign } = node.style || {};\n\n\t\t\t\tattributes.level = getLevelFromHeadingNodeName( node.nodeName );\n\n\t\t\t\tif (\n\t\t\t\t\ttextAlign === 'left' ||\n\t\t\t\t\ttextAlign === 'center' ||\n\t\t\t\t\ttextAlign === 'right'\n\t\t\t\t) {\n\t\t\t\t\tattributes.align = textAlign;\n\t\t\t\t}\n\n\t\t\t\treturn createBlock( name, attributes );\n\t\t\t},\n\t\t},\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix: Array( level + 1 ).join( '#' ),\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( name, {\n\t\t\t\t\tlevel,\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t} ) ),\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'enter',\n\t\t\tregExp: new RegExp( `^/(h|H)${ level }$` ),\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( name, {\n\t\t\t\t\tlevel,\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t} ) ),\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, anchor } ) =>\n\t\t\t\t\tcreateBlock( 'core/paragraph', {\n\t\t\t\t\t\tcontent,\n\t\t\t\t\t\tanchor,\n\t\t\t\t\t} )\n\t\t\t\t),\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/heading/transforms.js"],"names":["createBlock","getBlockAttributes","getLevelFromHeadingNodeName","transforms","from","type","isMultiBlock","blocks","transform","attributes","map","content","anchor","name","selector","schema","phrasingContentSchema","isPaste","children","h1","h2","h3","h4","h5","h6","node","outerHTML","textAlign","style","level","nodeName","align","prefix","Array","join","regExp","RegExp","to"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock, getBlockAttributes } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { getLevelFromHeadingNodeName } from './shared';\nimport { name } from './block.json';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, anchor } ) =>\n\t\t\t\t\tcreateBlock( name, {\n\t\t\t\t\t\tcontent,\n\t\t\t\t\t\tanchor,\n\t\t\t\t\t} )\n\t\t\t\t),\n\t\t},\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\t\tschema: ( { phrasingContentSchema, isPaste } ) => {\n\t\t\t\tconst schema = {\n\t\t\t\t\tchildren: phrasingContentSchema,\n\t\t\t\t\tattributes: isPaste ? [] : [ 'style', 'id' ],\n\t\t\t\t};\n\t\t\t\treturn {\n\t\t\t\t\th1: schema,\n\t\t\t\t\th2: schema,\n\t\t\t\t\th3: schema,\n\t\t\t\t\th4: schema,\n\t\t\t\t\th5: schema,\n\t\t\t\t\th6: schema,\n\t\t\t\t};\n\t\t\t},\n\t\t\ttransform( node ) {\n\t\t\t\tconst attributes = getBlockAttributes( name, node.outerHTML );\n\t\t\t\tconst { textAlign } = node.style || {};\n\n\t\t\t\tattributes.level = getLevelFromHeadingNodeName( node.nodeName );\n\n\t\t\t\tif (\n\t\t\t\t\ttextAlign === 'left' ||\n\t\t\t\t\ttextAlign === 'center' ||\n\t\t\t\t\ttextAlign === 'right'\n\t\t\t\t) {\n\t\t\t\t\tattributes.align = textAlign;\n\t\t\t\t}\n\n\t\t\t\treturn createBlock( name, attributes );\n\t\t\t},\n\t\t},\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix: Array( level + 1 ).join( '#' ),\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( name, {\n\t\t\t\t\tlevel,\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t} ) ),\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'enter',\n\t\t\tregExp: new RegExp( `^/(h|H)${ level }$` ),\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( name, {\n\t\t\t\t\tlevel,\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t} ) ),\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content } ) =>\n\t\t\t\t\tcreateBlock( 'core/paragraph', { content } )\n\t\t\t\t),\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
@@ -148,12 +148,18 @@ function LinkSettings(_ref) {
148
148
  }));
149
149
  }
150
150
 
151
+ const UPLOAD_STATE_IDLE = 0;
152
+ const UPLOAD_STATE_UPLOADING = 1;
153
+ const UPLOAD_STATE_SUCCEEDED = 2;
154
+ const UPLOAD_STATE_FAILED = 3;
151
155
  export class ImageEdit extends Component {
152
156
  constructor(props) {
153
157
  super(props);
154
158
  this.state = {
155
- isCaptionSelected: false
159
+ isCaptionSelected: false,
160
+ uploadStatus: UPLOAD_STATE_IDLE
156
161
  };
162
+ this.replacedFeaturedImage = false;
157
163
  this.finishMediaUploadWithSuccess = this.finishMediaUploadWithSuccess.bind(this);
158
164
  this.finishMediaUploadWithFailure = this.finishMediaUploadWithFailure.bind(this);
159
165
  this.mediaUploadStateReset = this.mediaUploadStateReset.bind(this);
@@ -205,7 +211,7 @@ export class ImageEdit extends Component {
205
211
 
206
212
  componentWillUnmount() {
207
213
  // this action will only exist if the user pressed the trash button on the block holder
208
- if (hasAction('blocks.onRemoveBlockCheckUpload') && this.state.isUploadInProgress) {
214
+ if (hasAction('blocks.onRemoveBlockCheckUpload') && this.state.uploadStatus === UPLOAD_STATE_UPLOADING) {
209
215
  doAction('blocks.onRemoveBlockCheckUpload', this.props.attributes.id);
210
216
  }
211
217
  }
@@ -214,7 +220,8 @@ export class ImageEdit extends Component {
214
220
  const {
215
221
  image,
216
222
  attributes,
217
- setAttributes
223
+ setAttributes,
224
+ featuredImageId
218
225
  } = this.props;
219
226
 
220
227
  if (!previousProps.image && image) {
@@ -223,6 +230,26 @@ export class ImageEdit extends Component {
223
230
  url
224
231
  });
225
232
  }
233
+
234
+ const {
235
+ id
236
+ } = attributes;
237
+ const {
238
+ id: previousId
239
+ } = previousProps.attributes; // The media changed and the previous media was set as the Featured Image,
240
+ // we must keep track of the previous media's featured status to act on it
241
+ // once the new media has a finalized ID.
242
+
243
+ if (!!id && id !== previousId && !!featuredImageId && featuredImageId === previousId) {
244
+ this.replacedFeaturedImage = true;
245
+ } // The media changed and now has a finalized ID (e.g. upload completed), we
246
+ // should attempt to replace the featured image if applicable.
247
+
248
+
249
+ if (this.replacedFeaturedImage && !!image && this.canImageBeFeatured()) {
250
+ this.replacedFeaturedImage = false;
251
+ setFeaturedImage(id);
252
+ }
226
253
  }
227
254
 
228
255
  static getDerivedStateFromProps(props, state) {
@@ -248,7 +275,7 @@ export class ImageEdit extends Component {
248
275
  image
249
276
  } = this.props;
250
277
 
251
- if (this.state.isUploadInProgress) {
278
+ if (this.state.uploadStatus === UPLOAD_STATE_UPLOADING) {
252
279
  requestImageUploadCancelDialog(attributes.id);
253
280
  } else if (attributes.id && getProtocol(attributes.url) === 'file:') {
254
281
  requestImageFailedRetryDialog(attributes.id);
@@ -272,9 +299,9 @@ export class ImageEdit extends Component {
272
299
  });
273
300
  }
274
301
 
275
- if (!this.state.isUploadInProgress) {
302
+ if (this.state.uploadStatus !== UPLOAD_STATE_UPLOADING) {
276
303
  this.setState({
277
- isUploadInProgress: true
304
+ uploadStatus: UPLOAD_STATE_UPLOADING
278
305
  });
279
306
  }
280
307
  }
@@ -288,7 +315,7 @@ export class ImageEdit extends Component {
288
315
  id: payload.mediaServerId
289
316
  });
290
317
  this.setState({
291
- isUploadInProgress: false
318
+ uploadStatus: UPLOAD_STATE_SUCCEEDED
292
319
  });
293
320
  }
294
321
 
@@ -300,7 +327,7 @@ export class ImageEdit extends Component {
300
327
  id: payload.mediaId
301
328
  });
302
329
  this.setState({
303
- isUploadInProgress: false
330
+ uploadStatus: UPLOAD_STATE_FAILED
304
331
  });
305
332
  }
306
333
 
@@ -313,7 +340,7 @@ export class ImageEdit extends Component {
313
340
  url: null
314
341
  });
315
342
  this.setState({
316
- isUploadInProgress: false
343
+ uploadStatus: UPLOAD_STATE_IDLE
317
344
  });
318
345
  }
319
346
 
@@ -520,6 +547,22 @@ export class ImageEdit extends Component {
520
547
 
521
548
  return isFeaturedImage ? removeFeaturedButton() : setFeaturedButton();
522
549
  }
550
+ /**
551
+ * Featured images must be set to a successfully uploaded self-hosted image,
552
+ * which has an ID.
553
+ *
554
+ * @return {boolean} Boolean indicating whether or not the current may be set as featured.
555
+ */
556
+
557
+
558
+ canImageBeFeatured() {
559
+ const {
560
+ attributes: {
561
+ id
562
+ }
563
+ } = this.props;
564
+ return typeof id !== 'undefined' && this.state.uploadStatus !== UPLOAD_STATE_UPLOADING && this.state.uploadStatus !== UPLOAD_STATE_FAILED;
565
+ }
523
566
 
524
567
  render() {
525
568
  const {
@@ -568,13 +611,9 @@ export class ImageEdit extends Component {
568
611
  // Default to 'full' size if the default large size is not available.
569
612
  sizeOptionsValid = sizeOptions.find(option => option.value === 'full');
570
613
  selectedSizeOption = 'full';
571
- } // By default, it's only possible to set images that have been uploaded to a site's library as featured.
572
- // The 'canImageBeFeatured' check filters out images that haven't been uploaded based on the following:
573
- // - Images that are embedded in a post but are uploaded elsewhere have an id of 'undefined'.
574
- // - Image that are uploading or have failed to upload are given a temporary negative ID.
575
-
614
+ }
576
615
 
577
- const canImageBeFeatured = typeof attributes.id !== 'undefined' && attributes.id > 0;
616
+ const canImageBeFeatured = this.canImageBeFeatured();
578
617
  const isFeaturedImage = canImageBeFeatured && featuredImageId === attributes.id;
579
618
 
580
619
  const getToolbarEditButton = open => createElement(BlockControls, null, createElement(ToolbarGroup, null, createElement(ToolbarButton, {