@wordpress/block-library 7.10.0 → 7.12.2-next.d6164808d3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1048) hide show
  1. package/CHANGELOG.md +11 -1
  2. package/build/archives/edit.js +7 -0
  3. package/build/archives/edit.js.map +1 -1
  4. package/build/archives/index.js +9 -1
  5. package/build/archives/index.js.map +1 -1
  6. package/build/audio/index.js +4 -0
  7. package/build/audio/index.js.map +1 -1
  8. package/build/block/edit.js +4 -2
  9. package/build/block/edit.js.map +1 -1
  10. package/build/block/edit.native.js +4 -2
  11. package/build/block/edit.native.js.map +1 -1
  12. package/build/button/deprecated.js +14 -5
  13. package/build/button/deprecated.js.map +1 -1
  14. package/build/button/edit.js +2 -1
  15. package/build/button/edit.js.map +1 -1
  16. package/build/button/index.js +1 -1
  17. package/build/buttons/edit.js +1 -1
  18. package/build/buttons/edit.js.map +1 -1
  19. package/build/calendar/edit.js +12 -5
  20. package/build/calendar/edit.js.map +1 -1
  21. package/build/categories/edit.js +3 -1
  22. package/build/categories/edit.js.map +1 -1
  23. package/build/categories/index.js +14 -1
  24. package/build/categories/index.js.map +1 -1
  25. package/build/code/index.js +4 -2
  26. package/build/code/index.js.map +1 -1
  27. package/build/column/index.js +13 -0
  28. package/build/column/index.js.map +1 -1
  29. package/build/columns/deprecated.js +16 -5
  30. package/build/columns/deprecated.js.map +1 -1
  31. package/build/columns/edit.js +6 -2
  32. package/build/columns/edit.js.map +1 -1
  33. package/build/columns/edit.native.js +9 -4
  34. package/build/columns/edit.native.js.map +1 -1
  35. package/build/columns/index.js +13 -0
  36. package/build/columns/index.js.map +1 -1
  37. package/build/comment-author-name/index.js +5 -1
  38. package/build/comment-author-name/index.js.map +1 -1
  39. package/build/comment-content/index.js +5 -1
  40. package/build/comment-content/index.js.map +1 -1
  41. package/build/comment-date/index.js +1 -0
  42. package/build/comment-date/index.js.map +1 -1
  43. package/build/comment-edit-link/index.js +5 -1
  44. package/build/comment-edit-link/index.js.map +1 -1
  45. package/build/comment-reply-link/index.js +5 -1
  46. package/build/comment-reply-link/index.js.map +1 -1
  47. package/build/comment-template/index.js +14 -1
  48. package/build/comment-template/index.js.map +1 -1
  49. package/build/comments/edit/comments-legacy.js +73 -0
  50. package/build/comments/edit/comments-legacy.js.map +1 -0
  51. package/build/comments/{edit.js → edit/index.js} +17 -38
  52. package/build/comments/edit/index.js.map +1 -0
  53. package/build/comments/edit/placeholder.js +117 -0
  54. package/build/comments/edit/placeholder.js.map +1 -0
  55. package/build/comments/edit/template.js +39 -0
  56. package/build/comments/edit/template.js.map +1 -0
  57. package/build/comments/index.js +19 -1
  58. package/build/comments/index.js.map +1 -1
  59. package/build/comments/save.js +12 -4
  60. package/build/comments/save.js.map +1 -1
  61. package/build/comments-pagination/index.js +13 -0
  62. package/build/comments-pagination/index.js.map +1 -1
  63. package/build/comments-pagination-next/index.js +4 -2
  64. package/build/comments-pagination-next/index.js.map +1 -1
  65. package/build/comments-pagination-numbers/edit.js +5 -1
  66. package/build/comments-pagination-numbers/edit.js.map +1 -1
  67. package/build/comments-pagination-numbers/index.js +14 -1
  68. package/build/comments-pagination-numbers/index.js.map +1 -1
  69. package/build/comments-pagination-previous/index.js +4 -2
  70. package/build/comments-pagination-previous/index.js.map +1 -1
  71. package/build/comments-title/deprecated.js +4 -2
  72. package/build/comments-title/deprecated.js.map +1 -1
  73. package/build/comments-title/index.js +4 -2
  74. package/build/comments-title/index.js.map +1 -1
  75. package/build/cover/deprecated.js +20 -5
  76. package/build/cover/deprecated.js.map +1 -1
  77. package/build/cover/edit/resizable-cover.js +6 -0
  78. package/build/cover/edit/resizable-cover.js.map +1 -1
  79. package/build/cover/index.js +13 -0
  80. package/build/cover/index.js.map +1 -1
  81. package/build/cover/shared.js +1 -1
  82. package/build/cover/shared.js.map +1 -1
  83. package/build/cover/transforms.js +3 -2
  84. package/build/cover/transforms.js.map +1 -1
  85. package/build/embed/embed-placeholder.native.js +1 -3
  86. package/build/embed/embed-placeholder.native.js.map +1 -1
  87. package/build/embed/icons.js +1 -1
  88. package/build/embed/icons.js.map +1 -1
  89. package/build/gallery/deprecated.js +6 -1
  90. package/build/gallery/deprecated.js.map +1 -1
  91. package/build/gallery/edit.js +17 -4
  92. package/build/gallery/edit.js.map +1 -1
  93. package/build/gallery/index.js +5 -0
  94. package/build/gallery/index.js.map +1 -1
  95. package/build/gallery/transforms.js +20 -7
  96. package/build/gallery/transforms.js.map +1 -1
  97. package/build/gallery/use-get-media.native.js +59 -0
  98. package/build/gallery/use-get-media.native.js.map +1 -0
  99. package/build/gallery/utils.js +7 -6
  100. package/build/gallery/utils.js.map +1 -1
  101. package/build/group/deprecated.js +108 -12
  102. package/build/group/deprecated.js.map +1 -1
  103. package/build/group/edit.js +23 -1
  104. package/build/group/edit.js.map +1 -1
  105. package/build/group/index.js +11 -2
  106. package/build/group/index.js.map +1 -1
  107. package/build/group/transforms.js +5 -0
  108. package/build/group/transforms.js.map +1 -1
  109. package/build/group/variations.js +9 -9
  110. package/build/group/variations.js.map +1 -1
  111. package/build/heading/deprecated.js +5 -3
  112. package/build/heading/deprecated.js.map +1 -1
  113. package/build/heading/index.js +3 -1
  114. package/build/heading/index.js.map +1 -1
  115. package/build/heading/transforms.js +3 -1
  116. package/build/heading/transforms.js.map +1 -1
  117. package/build/home-link/edit.js +8 -4
  118. package/build/home-link/edit.js.map +1 -1
  119. package/build/image/deprecated.js +77 -9
  120. package/build/image/deprecated.js.map +1 -1
  121. package/build/image/edit.js +16 -2
  122. package/build/image/edit.js.map +1 -1
  123. package/build/image/edit.native.js +18 -8
  124. package/build/image/edit.native.js.map +1 -1
  125. package/build/image/image.js +27 -20
  126. package/build/image/image.js.map +1 -1
  127. package/build/image/index.js +20 -8
  128. package/build/image/index.js.map +1 -1
  129. package/build/image/save.js +8 -2
  130. package/build/image/save.js.map +1 -1
  131. package/build/index.js +1 -3
  132. package/build/index.js.map +1 -1
  133. package/build/index.native.js +16 -10
  134. package/build/index.native.js.map +1 -1
  135. package/build/list/index.js +6 -0
  136. package/build/list/index.js.map +1 -1
  137. package/build/list/transforms.js +4 -63
  138. package/build/list/transforms.js.map +1 -1
  139. package/build/list/v2/edit.js +16 -5
  140. package/build/list/v2/edit.js.map +1 -1
  141. package/build/list/v2/tag-name.js +31 -0
  142. package/build/list/v2/tag-name.js.map +1 -0
  143. package/build/list/v2/tag-name.native.js +32 -0
  144. package/build/list/v2/tag-name.native.js.map +1 -0
  145. package/build/list/v2/transforms.js +1 -38
  146. package/build/list/v2/transforms.js.map +1 -1
  147. package/build/list-item/edit.js +18 -10
  148. package/build/list-item/edit.js.map +1 -1
  149. package/build/list-item/edit.native.js +158 -0
  150. package/build/list-item/edit.native.js.map +1 -0
  151. package/build/list-item/hooks/index.js +12 -4
  152. package/build/list-item/hooks/index.js.map +1 -1
  153. package/build/list-item/hooks/use-copy.js +42 -0
  154. package/build/list-item/hooks/use-copy.js.map +1 -0
  155. package/build/list-item/hooks/use-merge.js +174 -0
  156. package/build/list-item/hooks/use-merge.js.map +1 -0
  157. package/build/list-item/hooks/use-outdent-list-item.js +86 -50
  158. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
  159. package/build/list-item/icons.native.js +53 -0
  160. package/build/list-item/icons.native.js.map +1 -0
  161. package/build/list-item/list-style-type.native.js +139 -0
  162. package/build/list-item/list-style-type.native.js.map +1 -0
  163. package/build/list-item/utils.js +125 -1
  164. package/build/list-item/utils.js.map +1 -1
  165. package/build/media-text/deprecated.js +270 -17
  166. package/build/media-text/deprecated.js.map +1 -1
  167. package/build/media-text/edit.js +4 -3
  168. package/build/media-text/edit.js.map +1 -1
  169. package/build/media-text/index.js +13 -0
  170. package/build/media-text/index.js.map +1 -1
  171. package/build/media-text/media-container.js +1 -1
  172. package/build/media-text/media-container.js.map +1 -1
  173. package/build/media-text/save.js +13 -0
  174. package/build/media-text/save.js.map +1 -1
  175. package/build/more/save.js +1 -7
  176. package/build/more/save.js.map +1 -1
  177. package/build/navigation/deprecated.js +6 -1
  178. package/build/navigation/deprecated.js.map +1 -1
  179. package/build/navigation/edit/index.js +180 -154
  180. package/build/navigation/edit/index.js.map +1 -1
  181. package/build/navigation/edit/navigation-menu-selector.js +11 -14
  182. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  183. package/build/navigation/edit/placeholder/index.js +4 -2
  184. package/build/navigation/edit/placeholder/index.js.map +1 -1
  185. package/build/navigation/edit/responsive-wrapper.js +13 -3
  186. package/build/navigation/edit/responsive-wrapper.js.map +1 -1
  187. package/build/navigation/edit/unsaved-inner-blocks.js +2 -1
  188. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  189. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -7
  190. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  191. package/build/navigation/edit/use-create-navigation-menu.js +5 -1
  192. package/build/navigation/edit/use-create-navigation-menu.js.map +1 -1
  193. package/build/navigation/edit/use-inner-blocks.js +43 -0
  194. package/build/navigation/edit/use-inner-blocks.js.map +1 -0
  195. package/build/navigation/edit/utils.js +28 -0
  196. package/build/navigation/edit/utils.js.map +1 -0
  197. package/build/navigation/menu-items-to-blocks.js +1 -7
  198. package/build/navigation/menu-items-to-blocks.js.map +1 -1
  199. package/build/navigation/use-navigation-menu.js +15 -10
  200. package/build/navigation/use-navigation-menu.js.map +1 -1
  201. package/build/navigation-link/edit.js +11 -12
  202. package/build/navigation-link/edit.js.map +1 -1
  203. package/build/navigation-submenu/edit.js +6 -7
  204. package/build/navigation-submenu/edit.js.map +1 -1
  205. package/build/page-list/edit.js +15 -4
  206. package/build/page-list/edit.js.map +1 -1
  207. package/build/paragraph/deprecated.js +18 -10
  208. package/build/paragraph/deprecated.js.map +1 -1
  209. package/build/paragraph/edit.js +8 -11
  210. package/build/paragraph/edit.js.map +1 -1
  211. package/build/paragraph/index.js +5 -0
  212. package/build/paragraph/index.js.map +1 -1
  213. package/build/paragraph/transforms.js +5 -0
  214. package/build/paragraph/transforms.js.map +1 -1
  215. package/build/post-author/edit.js +5 -2
  216. package/build/post-author/edit.js.map +1 -1
  217. package/build/post-author/index.js +4 -2
  218. package/build/post-author/index.js.map +1 -1
  219. package/build/post-author-biography/edit.js +7 -1
  220. package/build/post-author-biography/edit.js.map +1 -1
  221. package/build/post-author-biography/index.js +1 -0
  222. package/build/post-author-biography/index.js.map +1 -1
  223. package/build/post-author-name/index.js +5 -1
  224. package/build/post-author-name/index.js.map +1 -1
  225. package/build/post-comments-count/edit.js +11 -1
  226. package/build/post-comments-count/edit.js.map +1 -1
  227. package/build/post-comments-count/index.js +4 -1
  228. package/build/post-comments-count/index.js.map +1 -1
  229. package/build/post-comments-form/edit.js +4 -45
  230. package/build/post-comments-form/edit.js.map +1 -1
  231. package/build/post-comments-form/form.js +47 -3
  232. package/build/post-comments-form/form.js.map +1 -1
  233. package/build/post-comments-link/index.js +4 -2
  234. package/build/post-comments-link/index.js.map +1 -1
  235. package/build/post-content/edit.js +4 -2
  236. package/build/post-content/edit.js.map +1 -1
  237. package/build/post-date/edit.js +9 -2
  238. package/build/post-date/edit.js.map +1 -1
  239. package/build/post-date/index.js +9 -0
  240. package/build/post-date/index.js.map +1 -1
  241. package/build/post-featured-image/edit.js +43 -14
  242. package/build/post-featured-image/edit.js.map +1 -1
  243. package/build/post-featured-image/index.js +21 -0
  244. package/build/post-featured-image/index.js.map +1 -1
  245. package/build/post-navigation-link/index.js +3 -2
  246. package/build/post-navigation-link/index.js.map +1 -1
  247. package/build/post-template/edit.js +8 -4
  248. package/build/post-template/edit.js.map +1 -1
  249. package/build/post-template/index.js +14 -1
  250. package/build/post-template/index.js.map +1 -1
  251. package/build/post-terms/edit.js +3 -2
  252. package/build/post-terms/edit.js.map +1 -1
  253. package/build/post-terms/index.js +5 -3
  254. package/build/post-terms/index.js.map +1 -1
  255. package/build/post-title/index.js +2 -1
  256. package/build/post-title/index.js.map +1 -1
  257. package/build/preformatted/index.js +4 -2
  258. package/build/preformatted/index.js.map +1 -1
  259. package/build/pullquote/deprecated.js +135 -25
  260. package/build/pullquote/deprecated.js.map +1 -1
  261. package/build/pullquote/edit.js +1 -1
  262. package/build/pullquote/edit.js.map +1 -1
  263. package/build/pullquote/edit.native.js +0 -1
  264. package/build/pullquote/edit.native.js.map +1 -1
  265. package/build/pullquote/index.js +13 -6
  266. package/build/pullquote/index.js.map +1 -1
  267. package/build/pullquote/save.js +2 -2
  268. package/build/pullquote/save.js.map +1 -1
  269. package/build/pullquote/transforms.js +14 -33
  270. package/build/pullquote/transforms.js.map +1 -1
  271. package/build/query/deprecated.js +10 -9
  272. package/build/query/deprecated.js.map +1 -1
  273. package/build/query/edit/index.js +19 -8
  274. package/build/query/edit/index.js.map +1 -1
  275. package/build/query/edit/inspector-controls/index.js +42 -9
  276. package/build/query/edit/inspector-controls/index.js.map +1 -1
  277. package/build/query/edit/inspector-controls/taxonomy-controls.js +22 -14
  278. package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  279. package/build/query/edit/query-placeholder.js +6 -1
  280. package/build/query/edit/query-placeholder.js.map +1 -1
  281. package/build/query/utils.js +35 -9
  282. package/build/query/utils.js.map +1 -1
  283. package/build/query-no-results/edit.js +2 -2
  284. package/build/query-no-results/edit.js.map +1 -1
  285. package/build/query-pagination-next/edit.js +2 -1
  286. package/build/query-pagination-next/edit.js.map +1 -1
  287. package/build/query-pagination-previous/edit.js +2 -1
  288. package/build/query-pagination-previous/edit.js.map +1 -1
  289. package/build/query-title/edit.js +30 -8
  290. package/build/query-title/edit.js.map +1 -1
  291. package/build/query-title/index.js +11 -2
  292. package/build/query-title/index.js.map +1 -1
  293. package/build/query-title/variations.js +10 -0
  294. package/build/query-title/variations.js.map +1 -1
  295. package/build/quote/deprecated.js +176 -37
  296. package/build/quote/deprecated.js.map +1 -1
  297. package/build/quote/edit.js +76 -39
  298. package/build/quote/edit.js.map +1 -1
  299. package/build/quote/index.js +9 -45
  300. package/build/quote/index.js.map +1 -1
  301. package/build/quote/save.js +1 -5
  302. package/build/quote/save.js.map +1 -1
  303. package/build/quote/transforms.js +96 -159
  304. package/build/quote/transforms.js.map +1 -1
  305. package/build/separator/deprecated.js +3 -4
  306. package/build/separator/deprecated.js.map +1 -1
  307. package/build/separator/edit.js +1 -1
  308. package/build/separator/edit.js.map +1 -1
  309. package/build/separator/index.js +1 -0
  310. package/build/separator/index.js.map +1 -1
  311. package/build/social-link/icons/index.js +13 -0
  312. package/build/social-link/icons/index.js.map +1 -1
  313. package/build/social-link/icons/reddit.js +1 -1
  314. package/build/social-link/icons/reddit.js.map +1 -1
  315. package/build/social-link/icons/whatsapp.js +25 -0
  316. package/build/social-link/icons/whatsapp.js.map +1 -0
  317. package/build/social-link/variations.js +7 -0
  318. package/build/social-link/variations.js.map +1 -1
  319. package/build/social-links/edit.js +3 -1
  320. package/build/social-links/edit.js.map +1 -1
  321. package/build/spacer/index.js +7 -1
  322. package/build/spacer/index.js.map +1 -1
  323. package/build/table/index.js +4 -0
  324. package/build/table/index.js.map +1 -1
  325. package/build/table/state.js +9 -3
  326. package/build/table/state.js.map +1 -1
  327. package/build/table-of-contents/index.js +11 -1
  328. package/build/table-of-contents/index.js.map +1 -1
  329. package/build/tag-cloud/index.js +5 -1
  330. package/build/tag-cloud/index.js.map +1 -1
  331. package/build/template-part/edit/index.js +21 -10
  332. package/build/template-part/edit/index.js.map +1 -1
  333. package/build/template-part/edit/selection-modal.js +33 -13
  334. package/build/template-part/edit/selection-modal.js.map +1 -1
  335. package/build/template-part/edit/utils/search.js +94 -0
  336. package/build/template-part/edit/utils/search.js.map +1 -0
  337. package/build/template-part/index.js +2 -2
  338. package/build/template-part/index.js.map +1 -1
  339. package/build/term-description/index.js +4 -0
  340. package/build/term-description/index.js.map +1 -1
  341. package/build/text-columns/edit.js +3 -1
  342. package/build/text-columns/edit.js.map +1 -1
  343. package/build/text-columns/save.js +3 -1
  344. package/build/text-columns/save.js.map +1 -1
  345. package/build/verse/index.js +1 -0
  346. package/build/verse/index.js.map +1 -1
  347. package/build/video/index.js +4 -0
  348. package/build/video/index.js.map +1 -1
  349. package/build-module/archives/edit.js +7 -0
  350. package/build-module/archives/edit.js.map +1 -1
  351. package/build-module/archives/index.js +9 -1
  352. package/build-module/archives/index.js.map +1 -1
  353. package/build-module/audio/index.js +4 -0
  354. package/build-module/audio/index.js.map +1 -1
  355. package/build-module/block/edit.js +5 -3
  356. package/build-module/block/edit.js.map +1 -1
  357. package/build-module/block/edit.native.js +5 -3
  358. package/build-module/block/edit.native.js.map +1 -1
  359. package/build-module/button/deprecated.js +14 -4
  360. package/build-module/button/deprecated.js.map +1 -1
  361. package/build-module/button/edit.js +2 -1
  362. package/build-module/button/edit.js.map +1 -1
  363. package/build-module/button/index.js +1 -1
  364. package/build-module/buttons/edit.js +2 -2
  365. package/build-module/buttons/edit.js.map +1 -1
  366. package/build-module/calendar/edit.js +12 -4
  367. package/build-module/calendar/edit.js.map +1 -1
  368. package/build-module/categories/edit.js +4 -2
  369. package/build-module/categories/edit.js.map +1 -1
  370. package/build-module/categories/index.js +14 -1
  371. package/build-module/categories/index.js.map +1 -1
  372. package/build-module/code/index.js +4 -2
  373. package/build-module/code/index.js.map +1 -1
  374. package/build-module/column/index.js +13 -0
  375. package/build-module/column/index.js.map +1 -1
  376. package/build-module/columns/deprecated.js +16 -4
  377. package/build-module/columns/deprecated.js.map +1 -1
  378. package/build-module/columns/edit.js +7 -3
  379. package/build-module/columns/edit.js.map +1 -1
  380. package/build-module/columns/edit.native.js +10 -5
  381. package/build-module/columns/edit.native.js.map +1 -1
  382. package/build-module/columns/index.js +13 -0
  383. package/build-module/columns/index.js.map +1 -1
  384. package/build-module/comment-author-name/index.js +5 -1
  385. package/build-module/comment-author-name/index.js.map +1 -1
  386. package/build-module/comment-content/index.js +5 -1
  387. package/build-module/comment-content/index.js.map +1 -1
  388. package/build-module/comment-date/index.js +1 -0
  389. package/build-module/comment-date/index.js.map +1 -1
  390. package/build-module/comment-edit-link/index.js +5 -1
  391. package/build-module/comment-edit-link/index.js.map +1 -1
  392. package/build-module/comment-reply-link/index.js +5 -1
  393. package/build-module/comment-reply-link/index.js.map +1 -1
  394. package/build-module/comment-template/index.js +14 -1
  395. package/build-module/comment-template/index.js.map +1 -1
  396. package/build-module/comments/edit/comments-legacy.js +59 -0
  397. package/build-module/comments/edit/comments-legacy.js.map +1 -0
  398. package/build-module/comments/edit/index.js +37 -0
  399. package/build-module/comments/edit/index.js.map +1 -0
  400. package/build-module/comments/edit/placeholder.js +102 -0
  401. package/build-module/comments/edit/placeholder.js.map +1 -0
  402. package/build-module/comments/edit/template.js +32 -0
  403. package/build-module/comments/edit/template.js.map +1 -0
  404. package/build-module/comments/index.js +19 -1
  405. package/build-module/comments/index.js.map +1 -1
  406. package/build-module/comments/save.js +9 -4
  407. package/build-module/comments/save.js.map +1 -1
  408. package/build-module/comments-pagination/index.js +13 -0
  409. package/build-module/comments-pagination/index.js.map +1 -1
  410. package/build-module/comments-pagination-next/index.js +4 -2
  411. package/build-module/comments-pagination-next/index.js.map +1 -1
  412. package/build-module/comments-pagination-numbers/edit.js +5 -1
  413. package/build-module/comments-pagination-numbers/edit.js.map +1 -1
  414. package/build-module/comments-pagination-numbers/index.js +14 -1
  415. package/build-module/comments-pagination-numbers/index.js.map +1 -1
  416. package/build-module/comments-pagination-previous/index.js +4 -2
  417. package/build-module/comments-pagination-previous/index.js.map +1 -1
  418. package/build-module/comments-title/deprecated.js +4 -2
  419. package/build-module/comments-title/deprecated.js.map +1 -1
  420. package/build-module/comments-title/index.js +4 -2
  421. package/build-module/comments-title/index.js.map +1 -1
  422. package/build-module/cover/deprecated.js +20 -4
  423. package/build-module/cover/deprecated.js.map +1 -1
  424. package/build-module/cover/edit/resizable-cover.js +6 -0
  425. package/build-module/cover/edit/resizable-cover.js.map +1 -1
  426. package/build-module/cover/index.js +13 -0
  427. package/build-module/cover/index.js.map +1 -1
  428. package/build-module/cover/shared.js +1 -1
  429. package/build-module/cover/shared.js.map +1 -1
  430. package/build-module/cover/transforms.js +3 -2
  431. package/build-module/cover/transforms.js.map +1 -1
  432. package/build-module/embed/embed-placeholder.native.js +1 -2
  433. package/build-module/embed/embed-placeholder.native.js.map +1 -1
  434. package/build-module/embed/icons.js +1 -1
  435. package/build-module/embed/icons.js.map +1 -1
  436. package/build-module/gallery/deprecated.js +7 -2
  437. package/build-module/gallery/deprecated.js.map +1 -1
  438. package/build-module/gallery/edit.js +17 -4
  439. package/build-module/gallery/edit.js.map +1 -1
  440. package/build-module/gallery/index.js +5 -0
  441. package/build-module/gallery/index.js.map +1 -1
  442. package/build-module/gallery/transforms.js +20 -7
  443. package/build-module/gallery/transforms.js.map +1 -1
  444. package/build-module/gallery/use-get-media.native.js +50 -0
  445. package/build-module/gallery/use-get-media.native.js.map +1 -0
  446. package/build-module/gallery/utils.js +7 -6
  447. package/build-module/gallery/utils.js.map +1 -1
  448. package/build-module/group/deprecated.js +109 -12
  449. package/build-module/group/deprecated.js.map +1 -1
  450. package/build-module/group/edit.js +25 -2
  451. package/build-module/group/edit.js.map +1 -1
  452. package/build-module/group/index.js +11 -2
  453. package/build-module/group/index.js.map +1 -1
  454. package/build-module/group/transforms.js +5 -0
  455. package/build-module/group/transforms.js.map +1 -1
  456. package/build-module/group/variations.js +10 -10
  457. package/build-module/group/variations.js.map +1 -1
  458. package/build-module/heading/deprecated.js +5 -2
  459. package/build-module/heading/deprecated.js.map +1 -1
  460. package/build-module/heading/index.js +3 -1
  461. package/build-module/heading/index.js.map +1 -1
  462. package/build-module/heading/transforms.js +3 -1
  463. package/build-module/heading/transforms.js.map +1 -1
  464. package/build-module/home-link/edit.js +10 -6
  465. package/build-module/home-link/edit.js.map +1 -1
  466. package/build-module/image/deprecated.js +77 -9
  467. package/build-module/image/deprecated.js.map +1 -1
  468. package/build-module/image/edit.js +19 -5
  469. package/build-module/image/edit.js.map +1 -1
  470. package/build-module/image/edit.native.js +18 -8
  471. package/build-module/image/edit.native.js.map +1 -1
  472. package/build-module/image/image.js +29 -22
  473. package/build-module/image/image.js.map +1 -1
  474. package/build-module/image/index.js +20 -8
  475. package/build-module/image/index.js.map +1 -1
  476. package/build-module/image/save.js +9 -3
  477. package/build-module/image/save.js.map +1 -1
  478. package/build-module/index.js +1 -2
  479. package/build-module/index.js.map +1 -1
  480. package/build-module/index.native.js +15 -9
  481. package/build-module/index.native.js.map +1 -1
  482. package/build-module/list/index.js +1 -1
  483. package/build-module/list/index.js.map +1 -1
  484. package/build-module/list/transforms.js +4 -63
  485. package/build-module/list/transforms.js.map +1 -1
  486. package/build-module/list/v2/edit.js +15 -5
  487. package/build-module/list/v2/edit.js.map +1 -1
  488. package/build-module/list/v2/tag-name.js +21 -0
  489. package/build-module/list/v2/tag-name.js.map +1 -0
  490. package/build-module/list/v2/tag-name.native.js +21 -0
  491. package/build-module/list/v2/tag-name.native.js.map +1 -0
  492. package/build-module/list/v2/transforms.js +3 -39
  493. package/build-module/list/v2/transforms.js.map +1 -1
  494. package/build-module/list-item/edit.js +18 -14
  495. package/build-module/list-item/edit.js.map +1 -1
  496. package/build-module/list-item/edit.native.js +141 -0
  497. package/build-module/list-item/edit.native.js.map +1 -0
  498. package/build-module/list-item/hooks/index.js +2 -1
  499. package/build-module/list-item/hooks/index.js.map +1 -1
  500. package/build-module/list-item/hooks/use-copy.js +32 -0
  501. package/build-module/list-item/hooks/use-copy.js.map +1 -0
  502. package/build-module/list-item/hooks/use-merge.js +160 -0
  503. package/build-module/list-item/hooks/use-merge.js.map +1 -0
  504. package/build-module/list-item/hooks/use-outdent-list-item.js +82 -46
  505. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
  506. package/build-module/list-item/icons.native.js +37 -0
  507. package/build-module/list-item/icons.native.js.map +1 -0
  508. package/build-module/list-item/list-style-type.native.js +126 -0
  509. package/build-module/list-item/list-style-type.native.js.map +1 -0
  510. package/build-module/list-item/utils.js +123 -2
  511. package/build-module/list-item/utils.js.map +1 -1
  512. package/build-module/media-text/deprecated.js +273 -19
  513. package/build-module/media-text/deprecated.js.map +1 -1
  514. package/build-module/media-text/edit.js +4 -3
  515. package/build-module/media-text/edit.js.map +1 -1
  516. package/build-module/media-text/index.js +13 -0
  517. package/build-module/media-text/index.js.map +1 -1
  518. package/build-module/media-text/media-container.js +1 -1
  519. package/build-module/media-text/media-container.js.map +1 -1
  520. package/build-module/media-text/save.js +13 -0
  521. package/build-module/media-text/save.js.map +1 -1
  522. package/build-module/more/save.js +1 -6
  523. package/build-module/more/save.js.map +1 -1
  524. package/build-module/navigation/deprecated.js +7 -2
  525. package/build-module/navigation/deprecated.js.map +1 -1
  526. package/build-module/navigation/edit/index.js +178 -154
  527. package/build-module/navigation/edit/index.js.map +1 -1
  528. package/build-module/navigation/edit/navigation-menu-selector.js +12 -15
  529. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  530. package/build-module/navigation/edit/placeholder/index.js +4 -2
  531. package/build-module/navigation/edit/placeholder/index.js.map +1 -1
  532. package/build-module/navigation/edit/responsive-wrapper.js +12 -3
  533. package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
  534. package/build-module/navigation/edit/unsaved-inner-blocks.js +2 -1
  535. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  536. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -7
  537. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  538. package/build-module/navigation/edit/use-create-navigation-menu.js +5 -1
  539. package/build-module/navigation/edit/use-create-navigation-menu.js.map +1 -1
  540. package/build-module/navigation/edit/use-inner-blocks.js +33 -0
  541. package/build-module/navigation/edit/use-inner-blocks.js.map +1 -0
  542. package/build-module/navigation/edit/utils.js +21 -0
  543. package/build-module/navigation/edit/utils.js.map +1 -0
  544. package/build-module/navigation/menu-items-to-blocks.js +1 -6
  545. package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
  546. package/build-module/navigation/use-navigation-menu.js +15 -10
  547. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  548. package/build-module/navigation-link/edit.js +12 -13
  549. package/build-module/navigation-link/edit.js.map +1 -1
  550. package/build-module/navigation-submenu/edit.js +7 -8
  551. package/build-module/navigation-submenu/edit.js.map +1 -1
  552. package/build-module/page-list/edit.js +15 -3
  553. package/build-module/page-list/edit.js.map +1 -1
  554. package/build-module/paragraph/deprecated.js +18 -9
  555. package/build-module/paragraph/deprecated.js.map +1 -1
  556. package/build-module/paragraph/edit.js +9 -12
  557. package/build-module/paragraph/edit.js.map +1 -1
  558. package/build-module/paragraph/index.js +5 -0
  559. package/build-module/paragraph/index.js.map +1 -1
  560. package/build-module/paragraph/transforms.js +5 -0
  561. package/build-module/paragraph/transforms.js.map +1 -1
  562. package/build-module/post-author/edit.js +5 -2
  563. package/build-module/post-author/edit.js.map +1 -1
  564. package/build-module/post-author/index.js +4 -2
  565. package/build-module/post-author/index.js.map +1 -1
  566. package/build-module/post-author-biography/edit.js +6 -1
  567. package/build-module/post-author-biography/edit.js.map +1 -1
  568. package/build-module/post-author-biography/index.js +1 -0
  569. package/build-module/post-author-biography/index.js.map +1 -1
  570. package/build-module/post-author-name/index.js +5 -1
  571. package/build-module/post-author-name/index.js.map +1 -1
  572. package/build-module/post-comments-count/edit.js +10 -1
  573. package/build-module/post-comments-count/edit.js.map +1 -1
  574. package/build-module/post-comments-count/index.js +4 -1
  575. package/build-module/post-comments-count/index.js.map +1 -1
  576. package/build-module/post-comments-form/edit.js +5 -42
  577. package/build-module/post-comments-form/edit.js.map +1 -1
  578. package/build-module/post-comments-form/form.js +46 -5
  579. package/build-module/post-comments-form/form.js.map +1 -1
  580. package/build-module/post-comments-link/index.js +4 -2
  581. package/build-module/post-comments-link/index.js.map +1 -1
  582. package/build-module/post-content/edit.js +5 -3
  583. package/build-module/post-content/edit.js.map +1 -1
  584. package/build-module/post-date/edit.js +9 -2
  585. package/build-module/post-date/edit.js.map +1 -1
  586. package/build-module/post-date/index.js +9 -0
  587. package/build-module/post-date/index.js.map +1 -1
  588. package/build-module/post-featured-image/edit.js +45 -16
  589. package/build-module/post-featured-image/edit.js.map +1 -1
  590. package/build-module/post-featured-image/index.js +21 -0
  591. package/build-module/post-featured-image/index.js.map +1 -1
  592. package/build-module/post-navigation-link/index.js +3 -2
  593. package/build-module/post-navigation-link/index.js.map +1 -1
  594. package/build-module/post-template/edit.js +8 -4
  595. package/build-module/post-template/edit.js.map +1 -1
  596. package/build-module/post-template/index.js +14 -1
  597. package/build-module/post-template/index.js.map +1 -1
  598. package/build-module/post-terms/edit.js +3 -2
  599. package/build-module/post-terms/edit.js.map +1 -1
  600. package/build-module/post-terms/index.js +5 -3
  601. package/build-module/post-terms/index.js.map +1 -1
  602. package/build-module/post-title/index.js +2 -1
  603. package/build-module/post-title/index.js.map +1 -1
  604. package/build-module/preformatted/index.js +4 -2
  605. package/build-module/preformatted/index.js.map +1 -1
  606. package/build-module/pullquote/deprecated.js +134 -25
  607. package/build-module/pullquote/deprecated.js.map +1 -1
  608. package/build-module/pullquote/edit.js +1 -1
  609. package/build-module/pullquote/edit.js.map +1 -1
  610. package/build-module/pullquote/edit.native.js +0 -1
  611. package/build-module/pullquote/edit.native.js.map +1 -1
  612. package/build-module/pullquote/index.js +13 -6
  613. package/build-module/pullquote/index.js.map +1 -1
  614. package/build-module/pullquote/save.js +2 -2
  615. package/build-module/pullquote/save.js.map +1 -1
  616. package/build-module/pullquote/transforms.js +15 -34
  617. package/build-module/pullquote/transforms.js.map +1 -1
  618. package/build-module/query/deprecated.js +10 -8
  619. package/build-module/query/deprecated.js.map +1 -1
  620. package/build-module/query/edit/index.js +23 -12
  621. package/build-module/query/edit/index.js.map +1 -1
  622. package/build-module/query/edit/inspector-controls/index.js +42 -9
  623. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  624. package/build-module/query/edit/inspector-controls/taxonomy-controls.js +17 -12
  625. package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  626. package/build-module/query/edit/query-placeholder.js +6 -1
  627. package/build-module/query/edit/query-placeholder.js.map +1 -1
  628. package/build-module/query/utils.js +32 -7
  629. package/build-module/query/utils.js.map +1 -1
  630. package/build-module/query-no-results/edit.js +3 -3
  631. package/build-module/query-no-results/edit.js.map +1 -1
  632. package/build-module/query-pagination-next/edit.js +2 -1
  633. package/build-module/query-pagination-next/edit.js.map +1 -1
  634. package/build-module/query-pagination-previous/edit.js +2 -1
  635. package/build-module/query-pagination-previous/edit.js.map +1 -1
  636. package/build-module/query-title/edit.js +30 -9
  637. package/build-module/query-title/edit.js.map +1 -1
  638. package/build-module/query-title/index.js +11 -2
  639. package/build-module/query-title/index.js.map +1 -1
  640. package/build-module/query-title/variations.js +10 -0
  641. package/build-module/query-title/variations.js.map +1 -1
  642. package/build-module/quote/deprecated.js +171 -37
  643. package/build-module/quote/deprecated.js.map +1 -1
  644. package/build-module/quote/edit.js +77 -43
  645. package/build-module/quote/edit.js.map +1 -1
  646. package/build-module/quote/index.js +9 -39
  647. package/build-module/quote/index.js.map +1 -1
  648. package/build-module/quote/save.js +4 -8
  649. package/build-module/quote/save.js.map +1 -1
  650. package/build-module/quote/transforms.js +96 -158
  651. package/build-module/quote/transforms.js.map +1 -1
  652. package/build-module/separator/deprecated.js +3 -3
  653. package/build-module/separator/deprecated.js.map +1 -1
  654. package/build-module/separator/edit.js +1 -1
  655. package/build-module/separator/edit.js.map +1 -1
  656. package/build-module/separator/index.js +1 -0
  657. package/build-module/separator/index.js.map +1 -1
  658. package/build-module/social-link/icons/index.js +1 -0
  659. package/build-module/social-link/icons/index.js.map +1 -1
  660. package/build-module/social-link/icons/reddit.js +1 -1
  661. package/build-module/social-link/icons/reddit.js.map +1 -1
  662. package/build-module/social-link/icons/whatsapp.js +15 -0
  663. package/build-module/social-link/icons/whatsapp.js.map +1 -0
  664. package/build-module/social-link/variations.js +8 -1
  665. package/build-module/social-link/variations.js.map +1 -1
  666. package/build-module/social-links/edit.js +3 -1
  667. package/build-module/social-links/edit.js.map +1 -1
  668. package/build-module/spacer/index.js +7 -1
  669. package/build-module/spacer/index.js.map +1 -1
  670. package/build-module/table/index.js +4 -0
  671. package/build-module/table/index.js.map +1 -1
  672. package/build-module/table/state.js +10 -4
  673. package/build-module/table/state.js.map +1 -1
  674. package/build-module/table-of-contents/index.js +11 -1
  675. package/build-module/table-of-contents/index.js.map +1 -1
  676. package/build-module/tag-cloud/index.js +5 -1
  677. package/build-module/tag-cloud/index.js.map +1 -1
  678. package/build-module/template-part/edit/index.js +24 -13
  679. package/build-module/template-part/edit/index.js.map +1 -1
  680. package/build-module/template-part/edit/selection-modal.js +33 -15
  681. package/build-module/template-part/edit/selection-modal.js.map +1 -1
  682. package/build-module/template-part/edit/utils/search.js +84 -0
  683. package/build-module/template-part/edit/utils/search.js.map +1 -0
  684. package/build-module/template-part/index.js +2 -2
  685. package/build-module/template-part/index.js.map +1 -1
  686. package/build-module/term-description/index.js +4 -0
  687. package/build-module/term-description/index.js.map +1 -1
  688. package/build-module/text-columns/edit.js +4 -2
  689. package/build-module/text-columns/edit.js.map +1 -1
  690. package/build-module/text-columns/save.js +4 -2
  691. package/build-module/text-columns/save.js.map +1 -1
  692. package/build-module/verse/index.js +1 -0
  693. package/build-module/verse/index.js.map +1 -1
  694. package/build-module/video/index.js +4 -0
  695. package/build-module/video/index.js.map +1 -1
  696. package/build-style/audio/style-rtl.css +3 -0
  697. package/build-style/audio/style.css +3 -0
  698. package/build-style/button/style-rtl.css +7 -7
  699. package/build-style/button/style.css +7 -7
  700. package/build-style/comments/editor-rtl.css +122 -0
  701. package/build-style/comments/editor.css +122 -0
  702. package/build-style/{post-comments → comments}/style-rtl.css +1 -0
  703. package/build-style/{post-comments → comments}/style.css +1 -0
  704. package/build-style/common-rtl.css +7 -0
  705. package/build-style/common.css +7 -0
  706. package/build-style/cover/style-rtl.css +2 -2
  707. package/build-style/cover/style.css +2 -2
  708. package/build-style/editor-elements-rtl.css +85 -0
  709. package/build-style/editor-elements.css +85 -0
  710. package/build-style/editor-rtl.css +266 -132
  711. package/build-style/editor.css +266 -132
  712. package/build-style/gallery/style-rtl.css +7 -2
  713. package/build-style/gallery/style.css +7 -2
  714. package/build-style/group/editor-rtl.css +27 -8
  715. package/build-style/group/editor.css +27 -8
  716. package/build-style/image/editor-rtl.css +25 -5
  717. package/build-style/image/editor.css +25 -5
  718. package/build-style/image/style-rtl.css +33 -3
  719. package/build-style/image/style.css +33 -3
  720. package/build-style/latest-posts/editor-rtl.css +3 -0
  721. package/build-style/latest-posts/editor.css +3 -0
  722. package/build-style/navigation/editor-rtl.css +8 -4
  723. package/build-style/navigation/editor.css +8 -4
  724. package/build-style/navigation/style-rtl.css +17 -19
  725. package/build-style/navigation/style.css +17 -19
  726. package/build-style/paragraph/editor-rtl.css +1 -1
  727. package/build-style/paragraph/editor.css +1 -1
  728. package/build-style/post-comments-form/style-rtl.css +0 -1
  729. package/build-style/post-comments-form/style.css +0 -1
  730. package/build-style/{post-comments/editor-rtl.css → post-date/style-rtl.css} +2 -2
  731. package/build-style/{post-comments/editor.css → post-date/style.css} +2 -2
  732. package/build-style/post-featured-image/editor-rtl.css +45 -43
  733. package/build-style/post-featured-image/editor.css +45 -43
  734. package/build-style/post-featured-image/style-rtl.css +1 -0
  735. package/build-style/post-featured-image/style.css +1 -0
  736. package/build-style/post-title/style-rtl.css +1 -0
  737. package/build-style/post-title/style.css +1 -0
  738. package/build-style/pullquote/editor-rtl.css +0 -12
  739. package/build-style/pullquote/editor.css +0 -12
  740. package/build-style/pullquote/style-rtl.css +1 -8
  741. package/build-style/pullquote/style.css +1 -8
  742. package/build-style/query/editor-rtl.css +7 -0
  743. package/build-style/query/editor.css +7 -0
  744. package/build-style/query-pagination/style-rtl.css +6 -0
  745. package/build-style/query-pagination/style.css +6 -0
  746. package/build-style/query-title/style-rtl.css +79 -0
  747. package/build-style/query-title/style.css +79 -0
  748. package/build-style/search/style-rtl.css +2 -0
  749. package/build-style/search/style.css +2 -0
  750. package/build-style/site-logo/editor-rtl.css +3 -52
  751. package/build-style/site-logo/editor.css +3 -52
  752. package/build-style/social-link/editor-rtl.css +1 -0
  753. package/build-style/social-link/editor.css +1 -0
  754. package/build-style/social-links/style-rtl.css +10 -2
  755. package/build-style/social-links/style.css +10 -2
  756. package/build-style/style-rtl.css +221 -162
  757. package/build-style/style.css +221 -162
  758. package/build-style/tag-cloud/style-rtl.css +1 -0
  759. package/build-style/tag-cloud/style.css +1 -0
  760. package/build-style/template-part/editor-rtl.css +14 -3
  761. package/build-style/template-part/editor.css +14 -3
  762. package/build-style/video/style-rtl.css +3 -0
  763. package/build-style/video/style.css +3 -0
  764. package/package.json +30 -30
  765. package/src/archives/block.json +9 -1
  766. package/src/archives/edit.js +12 -1
  767. package/src/archives/index.php +5 -3
  768. package/src/audio/block.json +4 -0
  769. package/src/audio/style.scss +2 -0
  770. package/src/audio/test/__snapshots__/edit.native.js.snap +16 -2
  771. package/src/block/edit.js +4 -4
  772. package/src/block/edit.native.js +4 -4
  773. package/src/button/block.json +1 -1
  774. package/src/button/deprecated.js +21 -22
  775. package/src/button/edit.js +1 -0
  776. package/src/button/style.scss +9 -7
  777. package/src/buttons/edit.js +1 -5
  778. package/src/calendar/edit.js +11 -4
  779. package/src/calendar/index.php +2 -2
  780. package/src/categories/block.json +14 -1
  781. package/src/categories/edit.js +2 -2
  782. package/src/code/block.json +4 -2
  783. package/src/column/block.json +13 -0
  784. package/src/columns/block.json +13 -0
  785. package/src/columns/deprecated.js +10 -4
  786. package/src/columns/edit.js +7 -3
  787. package/src/columns/edit.native.js +11 -5
  788. package/src/comment-author-name/block.json +5 -1
  789. package/src/comment-content/block.json +5 -1
  790. package/src/comment-date/block.json +1 -0
  791. package/src/comment-edit-link/block.json +5 -1
  792. package/src/comment-reply-link/block.json +5 -1
  793. package/src/comment-template/block.json +14 -1
  794. package/src/comments/block.json +19 -1
  795. package/src/comments/edit/comments-legacy.js +71 -0
  796. package/src/comments/edit/index.js +35 -0
  797. package/src/comments/edit/placeholder.js +124 -0
  798. package/src/comments/{edit.js → edit/template.js} +1 -28
  799. package/src/comments/editor.scss +9 -0
  800. package/src/comments/index.php +220 -0
  801. package/src/comments/save.js +8 -7
  802. package/src/{post-comments → comments}/style.scss +7 -0
  803. package/src/comments-pagination/block.json +13 -0
  804. package/src/comments-pagination-next/block.json +4 -2
  805. package/src/comments-pagination-numbers/block.json +14 -1
  806. package/src/comments-pagination-numbers/edit.js +12 -3
  807. package/src/comments-pagination-previous/block.json +4 -2
  808. package/src/comments-title/block.json +4 -2
  809. package/src/common.scss +2 -0
  810. package/src/cover/block.json +13 -0
  811. package/src/cover/deprecated.js +11 -4
  812. package/src/cover/edit/resizable-cover.js +6 -0
  813. package/src/cover/index.php +2 -2
  814. package/src/cover/shared.js +2 -1
  815. package/src/cover/style.scss +2 -2
  816. package/src/cover/transforms.js +2 -2
  817. package/src/editor-elements.scss +10 -0
  818. package/src/editor.scss +2 -1
  819. package/src/embed/embed-placeholder.native.js +2 -3
  820. package/src/embed/icons.js +1 -1
  821. package/src/file/test/__snapshots__/edit.native.js.snap +32 -4
  822. package/src/gallery/block.json +5 -0
  823. package/src/gallery/deprecated.js +4 -2
  824. package/src/gallery/edit.js +26 -4
  825. package/src/gallery/style.scss +10 -1
  826. package/src/gallery/transforms.js +18 -5
  827. package/src/gallery/use-get-media.native.js +44 -0
  828. package/src/gallery/utils.js +11 -7
  829. package/src/group/block.json +11 -2
  830. package/src/group/deprecated.js +89 -2
  831. package/src/group/edit.js +15 -2
  832. package/src/group/editor.scss +28 -3
  833. package/src/group/transforms.js +7 -0
  834. package/src/group/variations.js +6 -5
  835. package/src/heading/block.json +3 -1
  836. package/src/heading/deprecated.js +4 -2
  837. package/src/home-link/edit.js +19 -20
  838. package/src/home-link/index.php +8 -17
  839. package/src/image/block.json +20 -8
  840. package/src/image/deprecated.js +86 -0
  841. package/src/image/edit.js +25 -2
  842. package/src/image/edit.native.js +18 -7
  843. package/src/image/editor.scss +48 -7
  844. package/src/image/image.js +26 -16
  845. package/src/image/index.php +1 -1
  846. package/src/image/save.js +10 -1
  847. package/src/image/style.scss +39 -3
  848. package/src/image/test/edit.native.js +6 -10
  849. package/src/index.js +0 -2
  850. package/src/index.native.js +26 -17
  851. package/src/latest-posts/editor.scss +5 -0
  852. package/src/list/index.js +1 -1
  853. package/src/list/test/__snapshots__/edit.native.js.snap +133 -0
  854. package/src/list/test/edit.native.js +511 -7
  855. package/src/list/transforms.js +0 -47
  856. package/src/list/v2/edit.js +12 -4
  857. package/src/list/v2/tag-name.js +13 -0
  858. package/src/list/v2/tag-name.native.js +12 -0
  859. package/src/list/v2/transforms.js +3 -49
  860. package/src/list-item/edit.js +13 -14
  861. package/src/list-item/edit.native.js +148 -0
  862. package/src/list-item/hooks/index.js +2 -1
  863. package/src/list-item/hooks/use-copy.js +36 -0
  864. package/src/list-item/hooks/use-merge.js +141 -0
  865. package/src/list-item/hooks/use-outdent-list-item.js +72 -74
  866. package/src/list-item/icons.native.js +34 -0
  867. package/src/list-item/list-style-type.native.js +146 -0
  868. package/src/list-item/style.native.scss +49 -0
  869. package/src/list-item/utils.js +27 -3
  870. package/src/media-text/block.json +13 -0
  871. package/src/media-text/deprecated.js +584 -290
  872. package/src/media-text/edit.js +3 -1
  873. package/src/media-text/media-container.js +3 -1
  874. package/src/media-text/save.js +18 -0
  875. package/src/media-text/test/media-container.js +24 -0
  876. package/src/more/save.js +3 -6
  877. package/src/navigation/deprecated.js +4 -2
  878. package/src/navigation/edit/index.js +234 -237
  879. package/src/navigation/edit/navigation-menu-selector.js +12 -26
  880. package/src/navigation/edit/placeholder/index.js +4 -2
  881. package/src/navigation/edit/responsive-wrapper.js +24 -3
  882. package/src/navigation/edit/unsaved-inner-blocks.js +3 -1
  883. package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +31 -37
  884. package/src/navigation/edit/use-create-navigation-menu.js +4 -0
  885. package/src/navigation/edit/use-inner-blocks.js +39 -0
  886. package/src/navigation/edit/utils.js +30 -0
  887. package/src/navigation/editor.scss +3 -2
  888. package/src/navigation/index.php +17 -16
  889. package/src/navigation/menu-items-to-blocks.js +3 -6
  890. package/src/navigation/style.scss +13 -22
  891. package/src/navigation/use-navigation-menu.js +20 -13
  892. package/src/navigation-link/edit.js +13 -16
  893. package/src/navigation-link/index.php +1 -1
  894. package/src/navigation-submenu/edit.js +10 -13
  895. package/src/navigation-submenu/index.php +1 -1
  896. package/src/page-list/edit.js +15 -2
  897. package/src/page-list/index.php +4 -4
  898. package/src/paragraph/block.json +5 -0
  899. package/src/paragraph/deprecated.js +33 -35
  900. package/src/paragraph/edit.js +9 -14
  901. package/src/paragraph/editor.scss +5 -3
  902. package/src/post-author/block.json +4 -2
  903. package/src/post-author/edit.js +6 -3
  904. package/src/post-author-biography/block.json +1 -0
  905. package/src/post-author-biography/edit.js +4 -1
  906. package/src/post-author-name/block.json +5 -1
  907. package/src/post-comments-count/block.json +4 -1
  908. package/src/post-comments-count/edit.js +10 -2
  909. package/src/post-comments-form/edit.js +2 -71
  910. package/src/post-comments-form/form.js +80 -5
  911. package/src/post-comments-form/index.php +1 -1
  912. package/src/post-comments-form/style.scss +0 -1
  913. package/src/post-comments-link/block.json +4 -2
  914. package/src/post-content/edit.js +4 -4
  915. package/src/post-date/block.json +9 -0
  916. package/src/post-date/edit.js +12 -2
  917. package/src/post-date/index.php +10 -2
  918. package/src/post-date/style.scss +4 -0
  919. package/src/post-featured-image/block.json +21 -0
  920. package/src/post-featured-image/edit.js +66 -14
  921. package/src/post-featured-image/editor.scss +44 -53
  922. package/src/post-featured-image/index.php +64 -5
  923. package/src/post-featured-image/style.scss +1 -0
  924. package/src/post-navigation-link/block.json +3 -2
  925. package/src/post-template/block.json +15 -1
  926. package/src/post-template/edit.js +6 -1
  927. package/src/post-template/index.php +7 -4
  928. package/src/post-terms/block.json +5 -3
  929. package/src/post-terms/edit.js +3 -2
  930. package/src/post-title/block.json +2 -1
  931. package/src/post-title/index.php +2 -1
  932. package/src/post-title/style.scss +2 -0
  933. package/src/preformatted/block.json +4 -2
  934. package/src/preformatted/test/__snapshots__/edit.native.js.snap +16 -2
  935. package/src/pullquote/block.json +11 -4
  936. package/src/pullquote/deprecated.js +490 -412
  937. package/src/pullquote/edit.js +1 -1
  938. package/src/pullquote/edit.native.js +0 -1
  939. package/src/pullquote/editor.scss +0 -16
  940. package/src/pullquote/index.js +1 -3
  941. package/src/pullquote/save.js +1 -1
  942. package/src/pullquote/style.scss +0 -11
  943. package/src/pullquote/transforms.js +17 -33
  944. package/src/query/deprecated.js +4 -9
  945. package/src/query/edit/index.js +28 -15
  946. package/src/query/edit/inspector-controls/index.js +129 -65
  947. package/src/query/edit/inspector-controls/taxonomy-controls.js +18 -11
  948. package/src/query/edit/query-placeholder.js +17 -2
  949. package/src/query/editor.scss +9 -0
  950. package/src/query/utils.js +29 -7
  951. package/src/query-no-results/edit.js +3 -6
  952. package/src/query-pagination/style.scss +14 -0
  953. package/src/query-pagination-next/edit.js +1 -0
  954. package/src/query-pagination-previous/edit.js +1 -0
  955. package/src/query-title/block.json +11 -2
  956. package/src/query-title/edit.js +51 -7
  957. package/src/query-title/index.php +28 -2
  958. package/src/query-title/style.scss +4 -0
  959. package/src/query-title/variations.js +13 -0
  960. package/src/quote/deprecated.js +215 -100
  961. package/src/quote/edit.js +77 -52
  962. package/src/quote/index.js +10 -33
  963. package/src/quote/save.js +5 -5
  964. package/src/quote/{v2/test → test}/migrate.js +2 -7
  965. package/src/quote/transforms.js +98 -146
  966. package/src/search/index.php +1 -1
  967. package/src/search/style.scss +2 -0
  968. package/src/search/test/__snapshots__/edit.native.js.snap +56 -7
  969. package/src/separator/block.json +1 -0
  970. package/src/separator/deprecated.js +2 -3
  971. package/src/separator/edit.js +1 -1
  972. package/src/separator/test/edit.js +5 -3
  973. package/src/site-logo/editor.scss +8 -66
  974. package/src/site-title/index.php +8 -9
  975. package/src/social-link/editor.scss +3 -0
  976. package/src/social-link/icons/index.js +1 -0
  977. package/src/social-link/icons/reddit.js +1 -1
  978. package/src/social-link/icons/whatsapp.js +10 -0
  979. package/src/social-link/index.php +6 -2
  980. package/src/social-link/socials-with-bg.scss +6 -1
  981. package/src/social-link/socials-without-bg.scss +6 -1
  982. package/src/social-link/variations.js +7 -0
  983. package/src/social-links/edit.js +2 -0
  984. package/src/spacer/block.json +7 -1
  985. package/src/style.scss +3 -2
  986. package/src/table/block.json +4 -0
  987. package/src/table/state.js +21 -19
  988. package/src/table-of-contents/block.json +11 -1
  989. package/src/tag-cloud/block.json +5 -1
  990. package/src/tag-cloud/style.scss +1 -0
  991. package/src/template-part/edit/index.js +40 -27
  992. package/src/template-part/edit/selection-modal.js +68 -40
  993. package/src/template-part/edit/utils/search.js +76 -0
  994. package/src/template-part/editor.scss +21 -9
  995. package/src/template-part/index.js +3 -2
  996. package/src/template-part/index.php +56 -2
  997. package/src/term-description/block.json +4 -0
  998. package/src/text-columns/edit.js +2 -2
  999. package/src/text-columns/save.js +2 -2
  1000. package/src/verse/block.json +1 -0
  1001. package/src/video/block.json +4 -0
  1002. package/src/video/style.scss +2 -0
  1003. package/build/comments/edit.js.map +0 -1
  1004. package/build/list-item/hooks/use-backspace.js +0 -59
  1005. package/build/list-item/hooks/use-backspace.js.map +0 -1
  1006. package/build/post-comments/edit.js +0 -184
  1007. package/build/post-comments/edit.js.map +0 -1
  1008. package/build/post-comments/index.js +0 -72
  1009. package/build/post-comments/index.js.map +0 -1
  1010. package/build/quote/v2/deprecated.js +0 -133
  1011. package/build/quote/v2/deprecated.js.map +0 -1
  1012. package/build/quote/v2/edit.js +0 -139
  1013. package/build/quote/v2/edit.js.map +0 -1
  1014. package/build/quote/v2/index.js +0 -49
  1015. package/build/quote/v2/index.js.map +0 -1
  1016. package/build/quote/v2/save.js +0 -43
  1017. package/build/quote/v2/save.js.map +0 -1
  1018. package/build/quote/v2/transforms.js +0 -156
  1019. package/build/quote/v2/transforms.js.map +0 -1
  1020. package/build-module/comments/edit.js +0 -59
  1021. package/build-module/comments/edit.js.map +0 -1
  1022. package/build-module/list-item/hooks/use-backspace.js +0 -44
  1023. package/build-module/list-item/hooks/use-backspace.js.map +0 -1
  1024. package/build-module/post-comments/edit.js +0 -171
  1025. package/build-module/post-comments/edit.js.map +0 -1
  1026. package/build-module/post-comments/index.js +0 -59
  1027. package/build-module/post-comments/index.js.map +0 -1
  1028. package/build-module/quote/v2/deprecated.js +0 -116
  1029. package/build-module/quote/v2/deprecated.js.map +0 -1
  1030. package/build-module/quote/v2/edit.js +0 -122
  1031. package/build-module/quote/v2/edit.js.map +0 -1
  1032. package/build-module/quote/v2/index.js +0 -33
  1033. package/build-module/quote/v2/index.js.map +0 -1
  1034. package/build-module/quote/v2/save.js +0 -30
  1035. package/build-module/quote/v2/save.js.map +0 -1
  1036. package/build-module/quote/v2/transforms.js +0 -147
  1037. package/build-module/quote/v2/transforms.js.map +0 -1
  1038. package/src/list-item/hooks/use-backspace.js +0 -51
  1039. package/src/post-comments/block.json +0 -45
  1040. package/src/post-comments/edit.js +0 -247
  1041. package/src/post-comments/editor.scss +0 -3
  1042. package/src/post-comments/index.js +0 -18
  1043. package/src/post-comments/index.php +0 -87
  1044. package/src/quote/v2/deprecated.js +0 -107
  1045. package/src/quote/v2/edit.js +0 -139
  1046. package/src/quote/v2/index.js +0 -36
  1047. package/src/quote/v2/save.js +0 -26
  1048. package/src/quote/v2/transforms.js +0 -155
@@ -15,6 +15,12 @@ import {
15
15
  useBlockProps,
16
16
  } from '@wordpress/block-editor';
17
17
  import { select } from '@wordpress/data';
18
+ import {
19
+ create,
20
+ replace,
21
+ toHTMLString,
22
+ __UNSTABLE_LINE_SEPARATOR,
23
+ } from '@wordpress/rich-text';
18
24
 
19
25
  /**
20
26
  * Internal dependencies
@@ -58,458 +64,530 @@ function parseBorderColor( styleString ) {
58
64
  }
59
65
  }
60
66
 
61
- // TODO: this is ripe for a bit of a clean up according to the example in https://developer.wordpress.org/block-editor/reference-guides/block-api/block-deprecation/#example
62
- const deprecated = [
63
- {
64
- attributes: {
65
- ...blockAttributes,
66
- },
67
- save( { attributes } ) {
68
- const {
69
- mainColor,
70
- customMainColor,
71
- customTextColor,
72
- textColor,
73
- value,
74
- citation,
75
- className,
76
- } = attributes;
77
-
78
- const isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );
79
-
80
- let figureClasses, figureStyles;
81
-
82
- // Is solid color style
83
- if ( isSolidColorStyle ) {
84
- const backgroundClass = getColorClassName(
85
- 'background-color',
86
- mainColor
87
- );
88
-
89
- figureClasses = classnames( {
90
- 'has-background': backgroundClass || customMainColor,
91
- [ backgroundClass ]: backgroundClass,
92
- } );
93
-
94
- figureStyles = {
95
- backgroundColor: backgroundClass
96
- ? undefined
97
- : customMainColor,
98
- };
99
- // Is normal style and a custom color is being used ( we can set a style directly with its value)
100
- } else if ( customMainColor ) {
101
- figureStyles = {
102
- borderColor: customMainColor,
103
- };
104
- }
67
+ function multilineToInline( value ) {
68
+ return toHTMLString( {
69
+ value: replace(
70
+ create( { html: value, multilineTag: 'p' } ),
71
+ new RegExp( __UNSTABLE_LINE_SEPARATOR, 'g' ),
72
+ '\n'
73
+ ),
74
+ } );
75
+ }
105
76
 
106
- const blockquoteTextColorClass = getColorClassName(
107
- 'color',
108
- textColor
109
- );
110
- const blockquoteClasses = classnames( {
111
- 'has-text-color': textColor || customTextColor,
112
- [ blockquoteTextColorClass ]: blockquoteTextColorClass,
113
- } );
77
+ const v5 = {
78
+ attributes: {
79
+ value: {
80
+ type: 'string',
81
+ source: 'html',
82
+ selector: 'blockquote',
83
+ multiline: 'p',
84
+ __experimentalRole: 'content',
85
+ },
86
+ citation: {
87
+ type: 'string',
88
+ source: 'html',
89
+ selector: 'cite',
90
+ default: '',
91
+ __experimentalRole: 'content',
92
+ },
93
+ textAlign: {
94
+ type: 'string',
95
+ },
96
+ },
97
+ save( { attributes } ) {
98
+ const { textAlign, citation, value } = attributes;
99
+ const shouldShowCitation = ! RichText.isEmpty( citation );
100
+
101
+ return (
102
+ <figure
103
+ { ...useBlockProps.save( {
104
+ className: classnames( {
105
+ [ `has-text-align-${ textAlign }` ]: textAlign,
106
+ } ),
107
+ } ) }
108
+ >
109
+ <blockquote>
110
+ <RichText.Content value={ value } multiline />
111
+ { shouldShowCitation && (
112
+ <RichText.Content tagName="cite" value={ citation } />
113
+ ) }
114
+ </blockquote>
115
+ </figure>
116
+ );
117
+ },
118
+ migrate( { value, ...attributes } ) {
119
+ return {
120
+ value: multilineToInline( value ),
121
+ ...attributes,
122
+ };
123
+ },
124
+ };
114
125
 
115
- const blockquoteStyles = blockquoteTextColorClass
116
- ? undefined
117
- : { color: customTextColor };
126
+ // TODO: this is ripe for a bit of a clean up according to the example in https://developer.wordpress.org/block-editor/reference-guides/block-api/block-deprecation/#example
118
127
 
119
- return (
120
- <figure
121
- { ...useBlockProps.save( {
122
- className: figureClasses,
123
- style: figureStyles,
124
- } ) }
125
- >
126
- <blockquote
127
- className={ blockquoteClasses }
128
- style={ blockquoteStyles }
129
- >
130
- <RichText.Content value={ value } multiline />
131
- { ! RichText.isEmpty( citation ) && (
132
- <RichText.Content
133
- tagName="cite"
134
- value={ citation }
135
- />
136
- ) }
137
- </blockquote>
138
- </figure>
139
- );
140
- },
141
- migrate( {
142
- className,
128
+ const v4 = {
129
+ attributes: {
130
+ ...blockAttributes,
131
+ },
132
+ save( { attributes } ) {
133
+ const {
143
134
  mainColor,
144
135
  customMainColor,
145
136
  customTextColor,
146
- ...attributes
147
- } ) {
148
- const isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );
149
- let style;
150
-
151
- if ( customMainColor ) {
152
- if ( ! isSolidColorStyle ) {
153
- // Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.
154
- style = {
155
- border: {
156
- color: customMainColor,
157
- },
158
- };
159
- } else {
160
- // Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.
161
- style = {
162
- color: {
163
- background: customMainColor,
164
- },
165
- };
166
- }
167
- }
137
+ textColor,
138
+ value,
139
+ citation,
140
+ className,
141
+ } = attributes;
168
142
 
169
- // Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.
170
- if ( customTextColor && style ) {
171
- style.color = {
172
- ...style.color,
173
- text: customTextColor,
174
- };
175
- }
143
+ const isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );
144
+
145
+ let figureClasses, figureStyles;
176
146
 
177
- return {
178
- className,
179
- backgroundColor: isSolidColorStyle ? mainColor : undefined,
180
- borderColor: isSolidColorStyle ? undefined : mainColor,
181
- textAlign: isSolidColorStyle ? 'left' : undefined,
182
- style,
183
- ...attributes,
147
+ // Is solid color style
148
+ if ( isSolidColorStyle ) {
149
+ const backgroundClass = getColorClassName(
150
+ 'background-color',
151
+ mainColor
152
+ );
153
+
154
+ figureClasses = classnames( {
155
+ 'has-background': backgroundClass || customMainColor,
156
+ [ backgroundClass ]: backgroundClass,
157
+ } );
158
+
159
+ figureStyles = {
160
+ backgroundColor: backgroundClass ? undefined : customMainColor,
184
161
  };
185
- },
162
+ // Is normal style and a custom color is being used ( we can set a style directly with its value)
163
+ } else if ( customMainColor ) {
164
+ figureStyles = {
165
+ borderColor: customMainColor,
166
+ };
167
+ }
168
+
169
+ const blockquoteTextColorClass = getColorClassName(
170
+ 'color',
171
+ textColor
172
+ );
173
+ const blockquoteClasses = classnames( {
174
+ 'has-text-color': textColor || customTextColor,
175
+ [ blockquoteTextColorClass ]: blockquoteTextColorClass,
176
+ } );
177
+
178
+ const blockquoteStyles = blockquoteTextColorClass
179
+ ? undefined
180
+ : { color: customTextColor };
181
+
182
+ return (
183
+ <figure
184
+ { ...useBlockProps.save( {
185
+ className: figureClasses,
186
+ style: figureStyles,
187
+ } ) }
188
+ >
189
+ <blockquote
190
+ className={ blockquoteClasses }
191
+ style={ blockquoteStyles }
192
+ >
193
+ <RichText.Content value={ value } multiline />
194
+ { ! RichText.isEmpty( citation ) && (
195
+ <RichText.Content tagName="cite" value={ citation } />
196
+ ) }
197
+ </blockquote>
198
+ </figure>
199
+ );
186
200
  },
187
- {
188
- attributes: {
189
- ...blockAttributes,
190
- // figureStyle is an attribute that never existed.
191
- // We are using it as a way to access the styles previously applied to the figure.
192
- figureStyle: {
193
- source: 'attribute',
194
- selector: 'figure',
195
- attribute: 'style',
196
- },
197
- },
198
- save( { attributes } ) {
199
- const {
200
- mainColor,
201
- customMainColor,
202
- textColor,
203
- customTextColor,
204
- value,
205
- citation,
206
- className,
207
- figureStyle,
208
- } = attributes;
209
-
210
- const isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );
211
-
212
- let figureClasses, figureStyles;
213
-
214
- // Is solid color style
215
- if ( isSolidColorStyle ) {
216
- const backgroundClass = getColorClassName(
217
- 'background-color',
218
- mainColor
219
- );
220
-
221
- figureClasses = classnames( {
222
- 'has-background': backgroundClass || customMainColor,
223
- [ backgroundClass ]: backgroundClass,
224
- } );
225
-
226
- figureStyles = {
227
- backgroundColor: backgroundClass
228
- ? undefined
229
- : customMainColor,
201
+ migrate( {
202
+ value,
203
+ className,
204
+ mainColor,
205
+ customMainColor,
206
+ customTextColor,
207
+ ...attributes
208
+ } ) {
209
+ const isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );
210
+ let style;
211
+
212
+ if ( customMainColor ) {
213
+ if ( ! isSolidColorStyle ) {
214
+ // Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.
215
+ style = {
216
+ border: {
217
+ color: customMainColor,
218
+ },
230
219
  };
231
- // Is normal style and a custom color is being used ( we can set a style directly with its value)
232
- } else if ( customMainColor ) {
233
- figureStyles = {
234
- borderColor: customMainColor,
235
- };
236
- // If normal style and a named color are being used, we need to retrieve the color value to set the style,
237
- // as there is no expectation that themes create classes that set border colors.
238
- } else if ( mainColor ) {
239
- // Previously here we queried the color settings to know the color value
240
- // of a named color. This made the save function impure and the block was refactored,
241
- // because meanwhile a change in the editor made it impossible to query color settings in the save function.
242
- // Here instead of querying the color settings to know the color value, we retrieve the value
243
- // directly from the style previously serialized.
244
- const borderColor = parseBorderColor( figureStyle );
245
- figureStyles = {
246
- borderColor,
220
+ } else {
221
+ // Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.
222
+ style = {
223
+ color: {
224
+ background: customMainColor,
225
+ },
247
226
  };
248
227
  }
228
+ }
249
229
 
250
- const blockquoteTextColorClass = getColorClassName(
251
- 'color',
252
- textColor
253
- );
254
- const blockquoteClasses =
255
- ( textColor || customTextColor ) &&
256
- classnames( 'has-text-color', {
257
- [ blockquoteTextColorClass ]: blockquoteTextColorClass,
258
- } );
259
-
260
- const blockquoteStyles = blockquoteTextColorClass
261
- ? undefined
262
- : { color: customTextColor };
263
-
264
- return (
265
- <figure className={ figureClasses } style={ figureStyles }>
266
- <blockquote
267
- className={ blockquoteClasses }
268
- style={ blockquoteStyles }
269
- >
270
- <RichText.Content value={ value } multiline />
271
- { ! RichText.isEmpty( citation ) && (
272
- <RichText.Content
273
- tagName="cite"
274
- value={ citation }
275
- />
276
- ) }
277
- </blockquote>
278
- </figure>
279
- );
280
- },
281
- migrate( {
230
+ // Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.
231
+ if ( customTextColor && style ) {
232
+ style.color = {
233
+ ...style.color,
234
+ text: customTextColor,
235
+ };
236
+ }
237
+
238
+ return {
239
+ value: multilineToInline( value ),
282
240
  className,
283
- figureStyle,
241
+ backgroundColor: isSolidColorStyle ? mainColor : undefined,
242
+ borderColor: isSolidColorStyle ? undefined : mainColor,
243
+ textAlign: isSolidColorStyle ? 'left' : undefined,
244
+ style,
245
+ ...attributes,
246
+ };
247
+ },
248
+ };
249
+
250
+ const v3 = {
251
+ attributes: {
252
+ ...blockAttributes,
253
+ // figureStyle is an attribute that never existed.
254
+ // We are using it as a way to access the styles previously applied to the figure.
255
+ figureStyle: {
256
+ source: 'attribute',
257
+ selector: 'figure',
258
+ attribute: 'style',
259
+ },
260
+ },
261
+ save( { attributes } ) {
262
+ const {
284
263
  mainColor,
285
264
  customMainColor,
265
+ textColor,
286
266
  customTextColor,
287
- ...attributes
288
- } ) {
289
- const isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );
290
- let style;
291
-
292
- if ( customMainColor ) {
293
- if ( ! isSolidColorStyle ) {
294
- // Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.
295
- style = {
296
- border: {
297
- color: customMainColor,
298
- },
299
- };
300
- } else {
301
- // Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.
302
- style = {
303
- color: {
304
- background: customMainColor,
305
- },
306
- };
307
- }
308
- }
267
+ value,
268
+ citation,
269
+ className,
270
+ figureStyle,
271
+ } = attributes;
309
272
 
310
- // Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.
311
- if ( customTextColor && style ) {
312
- style.color = {
313
- ...style.color,
314
- text: customTextColor,
315
- };
316
- }
317
- // If is the default style, and a main color is set,
318
- // migrate the main color value into a custom border color.
319
- // The custom border color value is retrieved by parsing the figure styles.
320
- if ( ! isSolidColorStyle && mainColor && figureStyle ) {
321
- const borderColor = parseBorderColor( figureStyle );
322
- if ( borderColor ) {
323
- return {
324
- ...attributes,
325
- className,
326
- // Block supports: Set style.border.color if a deprecated block has `mainColor`, inline border CSS and is not a solid color style.
327
- style: {
328
- border: {
329
- color: borderColor,
330
- },
331
- },
332
- };
333
- }
334
- }
335
- return {
336
- className,
337
- backgroundColor: isSolidColorStyle ? mainColor : undefined,
338
- borderColor: isSolidColorStyle ? undefined : mainColor,
339
- textAlign: isSolidColorStyle ? 'left' : undefined,
340
- style,
341
- ...attributes,
273
+ const isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );
274
+
275
+ let figureClasses, figureStyles;
276
+
277
+ // Is solid color style
278
+ if ( isSolidColorStyle ) {
279
+ const backgroundClass = getColorClassName(
280
+ 'background-color',
281
+ mainColor
282
+ );
283
+
284
+ figureClasses = classnames( {
285
+ 'has-background': backgroundClass || customMainColor,
286
+ [ backgroundClass ]: backgroundClass,
287
+ } );
288
+
289
+ figureStyles = {
290
+ backgroundColor: backgroundClass ? undefined : customMainColor,
342
291
  };
343
- },
292
+ // Is normal style and a custom color is being used ( we can set a style directly with its value)
293
+ } else if ( customMainColor ) {
294
+ figureStyles = {
295
+ borderColor: customMainColor,
296
+ };
297
+ // If normal style and a named color are being used, we need to retrieve the color value to set the style,
298
+ // as there is no expectation that themes create classes that set border colors.
299
+ } else if ( mainColor ) {
300
+ // Previously here we queried the color settings to know the color value
301
+ // of a named color. This made the save function impure and the block was refactored,
302
+ // because meanwhile a change in the editor made it impossible to query color settings in the save function.
303
+ // Here instead of querying the color settings to know the color value, we retrieve the value
304
+ // directly from the style previously serialized.
305
+ const borderColor = parseBorderColor( figureStyle );
306
+ figureStyles = {
307
+ borderColor,
308
+ };
309
+ }
310
+
311
+ const blockquoteTextColorClass = getColorClassName(
312
+ 'color',
313
+ textColor
314
+ );
315
+ const blockquoteClasses =
316
+ ( textColor || customTextColor ) &&
317
+ classnames( 'has-text-color', {
318
+ [ blockquoteTextColorClass ]: blockquoteTextColorClass,
319
+ } );
320
+
321
+ const blockquoteStyles = blockquoteTextColorClass
322
+ ? undefined
323
+ : { color: customTextColor };
324
+
325
+ return (
326
+ <figure className={ figureClasses } style={ figureStyles }>
327
+ <blockquote
328
+ className={ blockquoteClasses }
329
+ style={ blockquoteStyles }
330
+ >
331
+ <RichText.Content value={ value } multiline />
332
+ { ! RichText.isEmpty( citation ) && (
333
+ <RichText.Content tagName="cite" value={ citation } />
334
+ ) }
335
+ </blockquote>
336
+ </figure>
337
+ );
344
338
  },
345
- {
346
- attributes: blockAttributes,
347
- save( { attributes } ) {
348
- const {
349
- mainColor,
350
- customMainColor,
351
- textColor,
352
- customTextColor,
353
- value,
354
- citation,
355
- className,
356
- } = attributes;
357
- const isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );
358
-
359
- let figureClass, figureStyles;
360
- // Is solid color style
361
- if ( isSolidColorStyle ) {
362
- figureClass = getColorClassName(
363
- 'background-color',
364
- mainColor
365
- );
366
- if ( ! figureClass ) {
367
- figureStyles = {
368
- backgroundColor: customMainColor,
369
- };
370
- }
371
- // Is normal style and a custom color is being used ( we can set a style directly with its value)
372
- } else if ( customMainColor ) {
373
- figureStyles = {
374
- borderColor: customMainColor,
339
+ migrate( {
340
+ value,
341
+ className,
342
+ figureStyle,
343
+ mainColor,
344
+ customMainColor,
345
+ customTextColor,
346
+ ...attributes
347
+ } ) {
348
+ const isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );
349
+ let style;
350
+
351
+ if ( customMainColor ) {
352
+ if ( ! isSolidColorStyle ) {
353
+ // Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.
354
+ style = {
355
+ border: {
356
+ color: customMainColor,
357
+ },
375
358
  };
376
- // Is normal style and a named color is being used, we need to retrieve the color value to set the style,
377
- // as there is no expectation that themes create classes that set border colors.
378
- } else if ( mainColor ) {
379
- const colors = get(
380
- select( blockEditorStore ).getSettings(),
381
- [ 'colors' ],
382
- []
383
- );
384
- const colorObject = getColorObjectByAttributeValues(
385
- colors,
386
- mainColor
387
- );
388
- figureStyles = {
389
- borderColor: colorObject.color,
359
+ } else {
360
+ // Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.
361
+ style = {
362
+ color: {
363
+ background: customMainColor,
364
+ },
390
365
  };
391
366
  }
367
+ }
392
368
 
393
- const blockquoteTextColorClass = getColorClassName(
394
- 'color',
395
- textColor
396
- );
397
- const blockquoteClasses =
398
- textColor || customTextColor
399
- ? classnames( 'has-text-color', {
400
- [ blockquoteTextColorClass ]:
401
- blockquoteTextColorClass,
402
- } )
403
- : undefined;
404
- const blockquoteStyle = blockquoteTextColorClass
405
- ? undefined
406
- : { color: customTextColor };
407
- return (
408
- <figure className={ figureClass } style={ figureStyles }>
409
- <blockquote
410
- className={ blockquoteClasses }
411
- style={ blockquoteStyle }
412
- >
413
- <RichText.Content value={ value } multiline />
414
- { ! RichText.isEmpty( citation ) && (
415
- <RichText.Content
416
- tagName="cite"
417
- value={ citation }
418
- />
419
- ) }
420
- </blockquote>
421
- </figure>
422
- );
423
- },
424
- migrate( {
425
- className,
426
- mainColor,
427
- customMainColor,
428
- customTextColor,
429
- ...attributes
430
- } ) {
431
- const isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );
432
- let style = {};
433
-
434
- if ( customMainColor ) {
435
- if ( ! isSolidColorStyle ) {
436
- // Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.
437
- style = {
369
+ // Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.
370
+ if ( customTextColor && style ) {
371
+ style.color = {
372
+ ...style.color,
373
+ text: customTextColor,
374
+ };
375
+ }
376
+ // If is the default style, and a main color is set,
377
+ // migrate the main color value into a custom border color.
378
+ // The custom border color value is retrieved by parsing the figure styles.
379
+ if ( ! isSolidColorStyle && mainColor && figureStyle ) {
380
+ const borderColor = parseBorderColor( figureStyle );
381
+ if ( borderColor ) {
382
+ return {
383
+ value: multilineToInline( value ),
384
+ ...attributes,
385
+ className,
386
+ // Block supports: Set style.border.color if a deprecated block has `mainColor`, inline border CSS and is not a solid color style.
387
+ style: {
438
388
  border: {
439
- color: customMainColor,
389
+ color: borderColor,
440
390
  },
441
- };
442
- } else {
443
- // Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.
444
- style = {
445
- color: {
446
- background: customMainColor,
447
- },
448
- };
449
- }
391
+ },
392
+ };
450
393
  }
394
+ }
395
+ return {
396
+ value: multilineToInline( value ),
397
+ className,
398
+ backgroundColor: isSolidColorStyle ? mainColor : undefined,
399
+ borderColor: isSolidColorStyle ? undefined : mainColor,
400
+ textAlign: isSolidColorStyle ? 'left' : undefined,
401
+ style,
402
+ ...attributes,
403
+ };
404
+ },
405
+ };
451
406
 
452
- // Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.
453
- if ( customTextColor && style ) {
454
- style.color = {
455
- ...style.color,
456
- text: customTextColor,
407
+ const v2 = {
408
+ attributes: blockAttributes,
409
+ save( { attributes } ) {
410
+ const {
411
+ mainColor,
412
+ customMainColor,
413
+ textColor,
414
+ customTextColor,
415
+ value,
416
+ citation,
417
+ className,
418
+ } = attributes;
419
+ const isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );
420
+
421
+ let figureClass, figureStyles;
422
+ // Is solid color style
423
+ if ( isSolidColorStyle ) {
424
+ figureClass = getColorClassName( 'background-color', mainColor );
425
+ if ( ! figureClass ) {
426
+ figureStyles = {
427
+ backgroundColor: customMainColor,
457
428
  };
458
429
  }
459
-
460
- return {
461
- className,
462
- backgroundColor: isSolidColorStyle ? mainColor : undefined,
463
- borderColor: isSolidColorStyle ? undefined : mainColor,
464
- textAlign: isSolidColorStyle ? 'left' : undefined,
465
- style,
466
- ...attributes,
430
+ // Is normal style and a custom color is being used ( we can set a style directly with its value)
431
+ } else if ( customMainColor ) {
432
+ figureStyles = {
433
+ borderColor: customMainColor,
467
434
  };
468
- },
469
- },
470
- {
471
- attributes: {
472
- ...blockAttributes,
473
- },
474
- save( { attributes } ) {
475
- const { value, citation } = attributes;
476
- return (
477
- <blockquote>
435
+ // Is normal style and a named color is being used, we need to retrieve the color value to set the style,
436
+ // as there is no expectation that themes create classes that set border colors.
437
+ } else if ( mainColor ) {
438
+ const colors = get(
439
+ select( blockEditorStore ).getSettings(),
440
+ [ 'colors' ],
441
+ []
442
+ );
443
+ const colorObject = getColorObjectByAttributeValues(
444
+ colors,
445
+ mainColor
446
+ );
447
+ figureStyles = {
448
+ borderColor: colorObject.color,
449
+ };
450
+ }
451
+
452
+ const blockquoteTextColorClass = getColorClassName(
453
+ 'color',
454
+ textColor
455
+ );
456
+ const blockquoteClasses =
457
+ textColor || customTextColor
458
+ ? classnames( 'has-text-color', {
459
+ [ blockquoteTextColorClass ]: blockquoteTextColorClass,
460
+ } )
461
+ : undefined;
462
+ const blockquoteStyle = blockquoteTextColorClass
463
+ ? undefined
464
+ : { color: customTextColor };
465
+ return (
466
+ <figure className={ figureClass } style={ figureStyles }>
467
+ <blockquote
468
+ className={ blockquoteClasses }
469
+ style={ blockquoteStyle }
470
+ >
478
471
  <RichText.Content value={ value } multiline />
479
472
  { ! RichText.isEmpty( citation ) && (
480
473
  <RichText.Content tagName="cite" value={ citation } />
481
474
  ) }
482
475
  </blockquote>
483
- );
484
- },
476
+ </figure>
477
+ );
485
478
  },
486
- {
487
- attributes: {
488
- ...blockAttributes,
489
- citation: {
490
- type: 'string',
491
- source: 'html',
492
- selector: 'footer',
493
- },
494
- align: {
495
- type: 'string',
496
- default: 'none',
497
- },
498
- },
479
+ migrate( {
480
+ value,
481
+ className,
482
+ mainColor,
483
+ customMainColor,
484
+ customTextColor,
485
+ ...attributes
486
+ } ) {
487
+ const isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );
488
+ let style = {};
489
+
490
+ if ( customMainColor ) {
491
+ if ( ! isSolidColorStyle ) {
492
+ // Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.
493
+ style = {
494
+ border: {
495
+ color: customMainColor,
496
+ },
497
+ };
498
+ } else {
499
+ // Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.
500
+ style = {
501
+ color: {
502
+ background: customMainColor,
503
+ },
504
+ };
505
+ }
506
+ }
499
507
 
500
- save( { attributes } ) {
501
- const { value, citation, align } = attributes;
508
+ // Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.
509
+ if ( customTextColor && style ) {
510
+ style.color = {
511
+ ...style.color,
512
+ text: customTextColor,
513
+ };
514
+ }
502
515
 
503
- return (
504
- <blockquote className={ `align${ align }` }>
505
- <RichText.Content value={ value } multiline />
506
- { ! RichText.isEmpty( citation ) && (
507
- <RichText.Content tagName="footer" value={ citation } />
508
- ) }
509
- </blockquote>
510
- );
516
+ return {
517
+ value: multilineToInline( value ),
518
+ className,
519
+ backgroundColor: isSolidColorStyle ? mainColor : undefined,
520
+ borderColor: isSolidColorStyle ? undefined : mainColor,
521
+ textAlign: isSolidColorStyle ? 'left' : undefined,
522
+ style,
523
+ ...attributes,
524
+ };
525
+ },
526
+ };
527
+
528
+ const v1 = {
529
+ attributes: {
530
+ ...blockAttributes,
531
+ },
532
+ save( { attributes } ) {
533
+ const { value, citation } = attributes;
534
+ return (
535
+ <blockquote>
536
+ <RichText.Content value={ value } multiline />
537
+ { ! RichText.isEmpty( citation ) && (
538
+ <RichText.Content tagName="cite" value={ citation } />
539
+ ) }
540
+ </blockquote>
541
+ );
542
+ },
543
+ migrate( { value, ...attributes } ) {
544
+ return {
545
+ value: multilineToInline( value ),
546
+ ...attributes,
547
+ };
548
+ },
549
+ };
550
+
551
+ const v0 = {
552
+ attributes: {
553
+ ...blockAttributes,
554
+ citation: {
555
+ type: 'string',
556
+ source: 'html',
557
+ selector: 'footer',
558
+ },
559
+ align: {
560
+ type: 'string',
561
+ default: 'none',
511
562
  },
512
563
  },
513
- ];
514
564
 
515
- export default deprecated;
565
+ save( { attributes } ) {
566
+ const { value, citation, align } = attributes;
567
+
568
+ return (
569
+ <blockquote className={ `align${ align }` }>
570
+ <RichText.Content value={ value } multiline />
571
+ { ! RichText.isEmpty( citation ) && (
572
+ <RichText.Content tagName="footer" value={ citation } />
573
+ ) }
574
+ </blockquote>
575
+ );
576
+ },
577
+ migrate( { value, ...attributes } ) {
578
+ return {
579
+ value: multilineToInline( value ),
580
+ ...attributes,
581
+ };
582
+ },
583
+ };
584
+
585
+ /**
586
+ * New deprecations need to be placed first
587
+ * for them to have higher priority.
588
+ *
589
+ * Old deprecations may need to be updated as well.
590
+ *
591
+ * See block-deprecation.md
592
+ */
593
+ export default [ v5, v4, v3, v2, v1, v0 ];