@wordpress/block-library 7.2.0 → 7.3.2

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 (469) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +1 -1
  3. package/build/archives/edit.js +21 -1
  4. package/build/archives/edit.js.map +1 -1
  5. package/build/archives/index.js +5 -1
  6. package/build/archives/index.js.map +1 -1
  7. package/build/audio/edit.js +1 -1
  8. package/build/audio/edit.js.map +1 -1
  9. package/build/audio/edit.native.js +0 -5
  10. package/build/audio/edit.native.js.map +1 -1
  11. package/build/avatar/edit.js +17 -11
  12. package/build/avatar/edit.js.map +1 -1
  13. package/build/block/edit.js +2 -1
  14. package/build/block/edit.js.map +1 -1
  15. package/build/column/index.js +1 -0
  16. package/build/column/index.js.map +1 -1
  17. package/build/comment-author-avatar/index.js +3 -3
  18. package/build/comment-author-name/index.js +7 -3
  19. package/build/comment-author-name/index.js.map +1 -1
  20. package/build/comment-content/index.js +1 -1
  21. package/build/comment-date/index.js +7 -3
  22. package/build/comment-date/index.js.map +1 -1
  23. package/build/comment-edit-link/index.js +5 -1
  24. package/build/comment-edit-link/index.js.map +1 -1
  25. package/build/comment-reply-link/index.js +5 -1
  26. package/build/comment-reply-link/index.js.map +1 -1
  27. package/build/comment-template/edit.js +10 -15
  28. package/build/comment-template/edit.js.map +1 -1
  29. package/build/comment-template/hooks.js +10 -24
  30. package/build/comment-template/hooks.js.map +1 -1
  31. package/build/comment-template/index.js +2 -2
  32. package/build/comments-pagination-next/index.js +2 -2
  33. package/build/comments-pagination-numbers/index.js +1 -1
  34. package/build/comments-pagination-previous/index.js +1 -1
  35. package/build/comments-query-loop/edit/comments-inspector-controls.js +2 -69
  36. package/build/comments-query-loop/edit/comments-inspector-controls.js.map +1 -1
  37. package/build/comments-query-loop/edit.js +22 -1
  38. package/build/comments-query-loop/edit.js.map +1 -1
  39. package/build/comments-query-loop/index.js +1 -23
  40. package/build/comments-query-loop/index.js.map +1 -1
  41. package/build/cover/edit.js +35 -6
  42. package/build/cover/edit.js.map +1 -1
  43. package/build/cover/index.js +5 -0
  44. package/build/cover/index.js.map +1 -1
  45. package/build/cover/save.js +3 -2
  46. package/build/cover/save.js.map +1 -1
  47. package/build/cover/transforms.js +33 -32
  48. package/build/cover/transforms.js.map +1 -1
  49. package/build/gallery/gap-styles.js +8 -2
  50. package/build/gallery/gap-styles.js.map +1 -1
  51. package/build/gallery/index.js +1 -0
  52. package/build/gallery/index.js.map +1 -1
  53. package/build/group/edit.js +3 -1
  54. package/build/group/edit.js.map +1 -1
  55. package/build/group/index.js +2 -4
  56. package/build/group/index.js.map +1 -1
  57. package/build/group/variations.js +31 -9
  58. package/build/group/variations.js.map +1 -1
  59. package/build/heading/edit.js +1 -1
  60. package/build/heading/edit.js.map +1 -1
  61. package/build/html/edit.js +3 -2
  62. package/build/html/edit.js.map +1 -1
  63. package/build/image/edit.native.js +8 -10
  64. package/build/image/edit.native.js.map +1 -1
  65. package/build/index.js +4 -4
  66. package/build/index.js.map +1 -1
  67. package/build/list/deprecated.js +2 -2
  68. package/build/list/deprecated.js.map +1 -1
  69. package/build/list/index.js +13 -2
  70. package/build/list/index.js.map +1 -1
  71. package/build/list/v2/deprecated.js +117 -0
  72. package/build/list/v2/deprecated.js.map +1 -0
  73. package/build/list/v2/edit.js +106 -3
  74. package/build/list/v2/edit.js.map +1 -1
  75. package/build/list/v2/index.js +4 -1
  76. package/build/list/v2/index.js.map +1 -1
  77. package/build/list/v2/migrate.js +85 -0
  78. package/build/list/v2/migrate.js.map +1 -0
  79. package/build/list-item/edit.js +59 -10
  80. package/build/list-item/edit.js.map +1 -1
  81. package/build/list-item/hooks/index.js +32 -0
  82. package/build/list-item/hooks/index.js.map +1 -0
  83. package/build/list-item/hooks/use-enter.js +93 -0
  84. package/build/list-item/hooks/use-enter.js.map +1 -0
  85. package/build/list-item/hooks/use-indent-list-item.js +74 -0
  86. package/build/list-item/hooks/use-indent-list-item.js.map +1 -0
  87. package/build/list-item/hooks/use-outdent-list-item.js +77 -0
  88. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -0
  89. package/build/list-item/index.js +1 -1
  90. package/build/list-item/index.js.map +1 -1
  91. package/build/list-item/utils.js +16 -0
  92. package/build/list-item/utils.js.map +1 -0
  93. package/build/media-text/media-container.native.js +1 -16
  94. package/build/media-text/media-container.native.js.map +1 -1
  95. package/build/navigation/edit/index.js +36 -17
  96. package/build/navigation/edit/index.js.map +1 -1
  97. package/build/navigation/edit/navigation-menu-delete-control.js +1 -1
  98. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  99. package/build/navigation/edit/unsaved-inner-blocks.js +34 -7
  100. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  101. package/build/navigation/index.js +9 -1
  102. package/build/navigation/index.js.map +1 -1
  103. package/build/navigation/use-navigation-menu.js +1 -0
  104. package/build/navigation/use-navigation-menu.js.map +1 -1
  105. package/build/navigation-link/edit.js +9 -5
  106. package/build/navigation-link/edit.js.map +1 -1
  107. package/build/navigation-link/index.js +1 -1
  108. package/build/navigation-submenu/edit.js +5 -9
  109. package/build/navigation-submenu/edit.js.map +1 -1
  110. package/build/navigation-submenu/index.js +1 -1
  111. package/build/post-comment/edit.js +2 -2
  112. package/build/post-comment/edit.js.map +1 -1
  113. package/build/post-comments/index.js +4 -3
  114. package/build/post-comments/index.js.map +1 -1
  115. package/build/post-comments-form/edit.js +3 -2
  116. package/build/post-comments-form/edit.js.map +1 -1
  117. package/build/post-featured-image/edit.js +19 -7
  118. package/build/post-featured-image/edit.js.map +1 -1
  119. package/build/post-featured-image/index.js +1 -1
  120. package/build/post-template/edit.js +7 -2
  121. package/build/post-template/edit.js.map +1 -1
  122. package/build/post-terms/edit.js +3 -1
  123. package/build/post-terms/edit.js.map +1 -1
  124. package/build/post-terms/variations.js +1 -1
  125. package/build/post-terms/variations.js.map +1 -1
  126. package/build/query/edit/index.js +84 -22
  127. package/build/query/edit/index.js.map +1 -1
  128. package/build/query/edit/query-placeholder.js +7 -14
  129. package/build/query/edit/query-placeholder.js.map +1 -1
  130. package/build/query/edit/query-toolbar.js +6 -1
  131. package/build/query/edit/query-toolbar.js.map +1 -1
  132. package/build/query-pagination/edit.js +1 -1
  133. package/build/query-pagination/edit.js.map +1 -1
  134. package/build/query-pagination-numbers/index.js +19 -1
  135. package/build/query-pagination-numbers/index.js.map +1 -1
  136. package/build/quote/index.js +20 -2
  137. package/build/quote/index.js.map +1 -1
  138. package/build/quote/v2/deprecated.js +133 -0
  139. package/build/quote/v2/deprecated.js.map +1 -0
  140. package/build/quote/v2/edit.js +131 -0
  141. package/build/quote/v2/edit.js.map +1 -0
  142. package/build/quote/v2/index.js +49 -0
  143. package/build/quote/v2/index.js.map +1 -0
  144. package/build/quote/v2/save.js +43 -0
  145. package/build/quote/v2/save.js.map +1 -0
  146. package/build/quote/v2/transforms.js +156 -0
  147. package/build/quote/v2/transforms.js.map +1 -0
  148. package/build/read-more/index.js +1 -1
  149. package/build/rss/edit.js +6 -1
  150. package/build/rss/edit.js.map +1 -1
  151. package/build/site-logo/edit.js +3 -2
  152. package/build/site-logo/edit.js.map +1 -1
  153. package/build/site-logo/index.js +1 -1
  154. package/build/social-links/index.js +1 -0
  155. package/build/social-links/index.js.map +1 -1
  156. package/build/spacer/controls.native.js +1 -1
  157. package/build/spacer/controls.native.js.map +1 -1
  158. package/build/template-part/edit/utils/hooks.js +5 -2
  159. package/build/template-part/edit/utils/hooks.js.map +1 -1
  160. package/build-module/archives/edit.js +22 -2
  161. package/build-module/archives/edit.js.map +1 -1
  162. package/build-module/archives/index.js +5 -1
  163. package/build-module/archives/index.js.map +1 -1
  164. package/build-module/audio/edit.js +1 -1
  165. package/build-module/audio/edit.js.map +1 -1
  166. package/build-module/audio/edit.native.js +0 -5
  167. package/build-module/audio/edit.native.js.map +1 -1
  168. package/build-module/avatar/edit.js +16 -11
  169. package/build-module/avatar/edit.js.map +1 -1
  170. package/build-module/block/edit.js +4 -3
  171. package/build-module/block/edit.js.map +1 -1
  172. package/build-module/column/index.js +1 -0
  173. package/build-module/column/index.js.map +1 -1
  174. package/build-module/comment-author-avatar/index.js +3 -3
  175. package/build-module/comment-author-name/index.js +7 -3
  176. package/build-module/comment-author-name/index.js.map +1 -1
  177. package/build-module/comment-content/index.js +1 -1
  178. package/build-module/comment-date/index.js +7 -3
  179. package/build-module/comment-date/index.js.map +1 -1
  180. package/build-module/comment-edit-link/index.js +5 -1
  181. package/build-module/comment-edit-link/index.js.map +1 -1
  182. package/build-module/comment-reply-link/index.js +5 -1
  183. package/build-module/comment-reply-link/index.js.map +1 -1
  184. package/build-module/comment-template/edit.js +10 -15
  185. package/build-module/comment-template/edit.js.map +1 -1
  186. package/build-module/comment-template/hooks.js +10 -24
  187. package/build-module/comment-template/hooks.js.map +1 -1
  188. package/build-module/comment-template/index.js +2 -2
  189. package/build-module/comments-pagination-next/index.js +2 -2
  190. package/build-module/comments-pagination-numbers/index.js +1 -1
  191. package/build-module/comments-pagination-previous/index.js +1 -1
  192. package/build-module/comments-query-loop/edit/comments-inspector-controls.js +4 -70
  193. package/build-module/comments-query-loop/edit/comments-inspector-controls.js.map +1 -1
  194. package/build-module/comments-query-loop/edit.js +22 -1
  195. package/build-module/comments-query-loop/edit.js.map +1 -1
  196. package/build-module/comments-query-loop/index.js +1 -23
  197. package/build-module/comments-query-loop/index.js.map +1 -1
  198. package/build-module/cover/edit.js +36 -8
  199. package/build-module/cover/edit.js.map +1 -1
  200. package/build-module/cover/index.js +5 -0
  201. package/build-module/cover/index.js.map +1 -1
  202. package/build-module/cover/save.js +3 -2
  203. package/build-module/cover/save.js.map +1 -1
  204. package/build-module/cover/transforms.js +33 -32
  205. package/build-module/cover/transforms.js.map +1 -1
  206. package/build-module/gallery/gap-styles.js +8 -2
  207. package/build-module/gallery/gap-styles.js.map +1 -1
  208. package/build-module/gallery/index.js +1 -0
  209. package/build-module/gallery/index.js.map +1 -1
  210. package/build-module/group/edit.js +3 -1
  211. package/build-module/group/edit.js.map +1 -1
  212. package/build-module/group/index.js +2 -4
  213. package/build-module/group/index.js.map +1 -1
  214. package/build-module/group/variations.js +30 -9
  215. package/build-module/group/variations.js.map +1 -1
  216. package/build-module/heading/edit.js +1 -1
  217. package/build-module/heading/edit.js.map +1 -1
  218. package/build-module/html/edit.js +4 -3
  219. package/build-module/html/edit.js.map +1 -1
  220. package/build-module/image/edit.native.js +8 -10
  221. package/build-module/image/edit.native.js.map +1 -1
  222. package/build-module/index.js +4 -4
  223. package/build-module/index.js.map +1 -1
  224. package/build-module/list/deprecated.js +2 -2
  225. package/build-module/list/deprecated.js.map +1 -1
  226. package/build-module/list/index.js +9 -3
  227. package/build-module/list/index.js.map +1 -1
  228. package/build-module/list/v2/deprecated.js +104 -0
  229. package/build-module/list/v2/deprecated.js.map +1 -0
  230. package/build-module/list/v2/edit.js +104 -5
  231. package/build-module/list/v2/edit.js.map +1 -1
  232. package/build-module/list/v2/index.js +3 -1
  233. package/build-module/list/v2/index.js.map +1 -1
  234. package/build-module/list/v2/migrate.js +77 -0
  235. package/build-module/list/v2/migrate.js.map +1 -0
  236. package/build-module/list-item/edit.js +59 -13
  237. package/build-module/list-item/edit.js.map +1 -1
  238. package/build-module/list-item/hooks/index.js +4 -0
  239. package/build-module/list-item/hooks/index.js.map +1 -0
  240. package/build-module/list-item/hooks/use-enter.js +77 -0
  241. package/build-module/list-item/hooks/use-enter.js.map +1 -0
  242. package/build-module/list-item/hooks/use-indent-list-item.js +62 -0
  243. package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -0
  244. package/build-module/list-item/hooks/use-outdent-list-item.js +66 -0
  245. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -0
  246. package/build-module/list-item/index.js +1 -1
  247. package/build-module/list-item/index.js.map +1 -1
  248. package/build-module/list-item/utils.js +8 -0
  249. package/build-module/list-item/utils.js.map +1 -0
  250. package/build-module/media-text/media-container.native.js +1 -14
  251. package/build-module/media-text/media-container.native.js.map +1 -1
  252. package/build-module/navigation/edit/index.js +37 -17
  253. package/build-module/navigation/edit/index.js.map +1 -1
  254. package/build-module/navigation/edit/navigation-menu-delete-control.js +1 -1
  255. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  256. package/build-module/navigation/edit/unsaved-inner-blocks.js +35 -8
  257. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  258. package/build-module/navigation/index.js +9 -1
  259. package/build-module/navigation/index.js.map +1 -1
  260. package/build-module/navigation/use-navigation-menu.js +1 -0
  261. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  262. package/build-module/navigation-link/edit.js +9 -5
  263. package/build-module/navigation-link/edit.js.map +1 -1
  264. package/build-module/navigation-link/index.js +1 -1
  265. package/build-module/navigation-submenu/edit.js +6 -10
  266. package/build-module/navigation-submenu/edit.js.map +1 -1
  267. package/build-module/navigation-submenu/index.js +1 -1
  268. package/build-module/post-comment/edit.js +2 -2
  269. package/build-module/post-comment/edit.js.map +1 -1
  270. package/build-module/post-comments/index.js +4 -3
  271. package/build-module/post-comments/index.js.map +1 -1
  272. package/build-module/post-comments-form/edit.js +3 -2
  273. package/build-module/post-comments-form/edit.js.map +1 -1
  274. package/build-module/post-featured-image/edit.js +19 -7
  275. package/build-module/post-featured-image/edit.js.map +1 -1
  276. package/build-module/post-featured-image/index.js +1 -1
  277. package/build-module/post-template/edit.js +7 -2
  278. package/build-module/post-template/edit.js.map +1 -1
  279. package/build-module/post-terms/edit.js +4 -2
  280. package/build-module/post-terms/edit.js.map +1 -1
  281. package/build-module/post-terms/variations.js +3 -3
  282. package/build-module/post-terms/variations.js.map +1 -1
  283. package/build-module/query/edit/index.js +87 -26
  284. package/build-module/query/edit/index.js.map +1 -1
  285. package/build-module/query/edit/query-placeholder.js +8 -15
  286. package/build-module/query/edit/query-placeholder.js.map +1 -1
  287. package/build-module/query/edit/query-toolbar.js +6 -1
  288. package/build-module/query/edit/query-toolbar.js.map +1 -1
  289. package/build-module/query-pagination/edit.js +1 -1
  290. package/build-module/query-pagination/edit.js.map +1 -1
  291. package/build-module/query-pagination-numbers/index.js +19 -1
  292. package/build-module/query-pagination-numbers/index.js.map +1 -1
  293. package/build-module/quote/index.js +19 -1
  294. package/build-module/quote/index.js.map +1 -1
  295. package/build-module/quote/v2/deprecated.js +116 -0
  296. package/build-module/quote/v2/deprecated.js.map +1 -0
  297. package/build-module/quote/v2/edit.js +115 -0
  298. package/build-module/quote/v2/edit.js.map +1 -0
  299. package/build-module/quote/v2/index.js +33 -0
  300. package/build-module/quote/v2/index.js.map +1 -0
  301. package/build-module/quote/v2/save.js +30 -0
  302. package/build-module/quote/v2/save.js.map +1 -0
  303. package/build-module/quote/v2/transforms.js +147 -0
  304. package/build-module/quote/v2/transforms.js.map +1 -0
  305. package/build-module/read-more/index.js +1 -1
  306. package/build-module/rss/edit.js +5 -1
  307. package/build-module/rss/edit.js.map +1 -1
  308. package/build-module/site-logo/edit.js +3 -2
  309. package/build-module/site-logo/edit.js.map +1 -1
  310. package/build-module/site-logo/index.js +1 -1
  311. package/build-module/social-links/index.js +1 -0
  312. package/build-module/social-links/index.js.map +1 -1
  313. package/build-module/spacer/controls.native.js +1 -1
  314. package/build-module/spacer/controls.native.js.map +1 -1
  315. package/build-module/template-part/edit/utils/hooks.js +5 -2
  316. package/build-module/template-part/edit/utils/hooks.js.map +1 -1
  317. package/build-style/avatar/editor-rtl.css +4 -0
  318. package/build-style/avatar/editor.css +4 -0
  319. package/build-style/avatar/style-rtl.css +79 -0
  320. package/build-style/avatar/style.css +79 -0
  321. package/build-style/editor-rtl.css +69 -9
  322. package/build-style/editor.css +69 -9
  323. package/build-style/group/editor-rtl.css +26 -0
  324. package/build-style/group/editor.css +26 -0
  325. package/build-style/heading/style-rtl.css +0 -8
  326. package/build-style/heading/style.css +0 -8
  327. package/build-style/list/style-rtl.css +1 -1
  328. package/build-style/list/style.css +1 -1
  329. package/build-style/navigation/style-rtl.css +11 -9
  330. package/build-style/navigation/style.css +11 -9
  331. package/build-style/navigation-link/style-rtl.css +3 -0
  332. package/build-style/navigation-link/style.css +3 -0
  333. package/build-style/paragraph/style-rtl.css +0 -4
  334. package/build-style/paragraph/style.css +0 -4
  335. package/build-style/query/editor-rtl.css +39 -0
  336. package/build-style/query/editor.css +39 -0
  337. package/build-style/quote/style-rtl.css +1 -0
  338. package/build-style/quote/style.css +1 -0
  339. package/build-style/reset-rtl.css +1 -1
  340. package/build-style/reset.css +1 -1
  341. package/build-style/style-rtl.css +20 -22
  342. package/build-style/style.css +20 -22
  343. package/build-style/template-part/editor-rtl.css +0 -9
  344. package/build-style/template-part/editor.css +0 -9
  345. package/package.json +28 -28
  346. package/src/archives/block.json +5 -1
  347. package/src/archives/edit.js +20 -2
  348. package/src/archives/index.php +4 -4
  349. package/src/audio/edit.js +1 -1
  350. package/src/audio/edit.native.js +0 -5
  351. package/src/avatar/edit.js +21 -13
  352. package/src/avatar/editor.scss +6 -0
  353. package/src/avatar/index.php +2 -2
  354. package/src/avatar/style.scss +5 -0
  355. package/src/block/edit.js +21 -11
  356. package/src/column/block.json +1 -0
  357. package/src/comment-author-avatar/block.json +3 -3
  358. package/src/comment-author-name/block.json +7 -3
  359. package/src/comment-author-name/index.php +3 -0
  360. package/src/comment-content/block.json +1 -1
  361. package/src/comment-date/block.json +7 -3
  362. package/src/comment-date/index.php +6 -1
  363. package/src/comment-edit-link/block.json +5 -1
  364. package/src/comment-edit-link/index.php +3 -0
  365. package/src/comment-reply-link/block.json +5 -1
  366. package/src/comment-reply-link/index.php +4 -1
  367. package/src/comment-template/block.json +2 -8
  368. package/src/comment-template/edit.js +17 -22
  369. package/src/comment-template/hooks.js +10 -25
  370. package/src/comment-template/index.php +15 -5
  371. package/src/comments-pagination-next/block.json +2 -9
  372. package/src/comments-pagination-numbers/block.json +2 -8
  373. package/src/comments-pagination-previous/block.json +2 -2
  374. package/src/comments-query-loop/block.json +1 -23
  375. package/src/comments-query-loop/edit/comments-inspector-controls.js +2 -83
  376. package/src/comments-query-loop/edit.js +54 -1
  377. package/src/cover/block.json +5 -0
  378. package/src/cover/edit.js +77 -29
  379. package/src/cover/index.php +85 -0
  380. package/src/cover/save.js +18 -14
  381. package/src/cover/transforms.js +51 -28
  382. package/src/gallery/block.json +1 -0
  383. package/src/gallery/gap-styles.js +9 -4
  384. package/src/gallery/index.php +7 -6
  385. package/src/group/block.json +2 -4
  386. package/src/group/edit.js +4 -1
  387. package/src/group/editor.scss +31 -0
  388. package/src/group/variations.js +21 -4
  389. package/src/heading/edit.js +1 -1
  390. package/src/heading/style.scss +0 -3
  391. package/src/html/edit.js +22 -30
  392. package/src/image/edit.native.js +7 -11
  393. package/src/index.js +19 -16
  394. package/src/list/deprecated.js +2 -2
  395. package/src/list/index.js +7 -3
  396. package/src/list/style.scss +1 -2
  397. package/src/list/test/migrate.js +159 -0
  398. package/src/list/v2/deprecated.js +89 -0
  399. package/src/list/v2/edit.js +110 -1
  400. package/src/list/v2/index.js +2 -0
  401. package/src/list/v2/migrate.js +87 -0
  402. package/src/list-item/edit.js +69 -23
  403. package/src/list-item/hooks/index.js +3 -0
  404. package/src/list-item/hooks/use-enter.js +94 -0
  405. package/src/list-item/hooks/use-indent-list-item.js +89 -0
  406. package/src/list-item/hooks/use-outdent-list-item.js +95 -0
  407. package/src/list-item/index.js +1 -1
  408. package/src/list-item/utils.js +14 -0
  409. package/src/media-text/media-container.native.js +1 -14
  410. package/src/navigation/block.json +9 -1
  411. package/src/navigation/edit/index.js +50 -14
  412. package/src/navigation/edit/navigation-menu-delete-control.js +1 -1
  413. package/src/navigation/edit/unsaved-inner-blocks.js +57 -8
  414. package/src/navigation/index.php +6 -1
  415. package/src/navigation/style.scss +15 -13
  416. package/src/navigation/use-navigation-menu.js +4 -0
  417. package/src/navigation-link/block.json +1 -0
  418. package/src/navigation-link/edit.js +43 -35
  419. package/src/navigation-link/index.php +8 -0
  420. package/src/navigation-link/style.scss +6 -0
  421. package/src/navigation-submenu/block.json +1 -0
  422. package/src/navigation-submenu/edit.js +7 -9
  423. package/src/paragraph/style.scss +0 -5
  424. package/src/post-author/index.php +0 -1
  425. package/src/post-comment/edit.js +2 -2
  426. package/src/post-comments/block.json +4 -3
  427. package/src/post-comments-form/edit.js +6 -3
  428. package/src/post-comments-form/index.php +12 -4
  429. package/src/post-featured-image/block.json +1 -1
  430. package/src/post-featured-image/edit.js +24 -12
  431. package/src/post-template/edit.js +7 -1
  432. package/src/post-terms/edit.js +4 -1
  433. package/src/post-terms/variations.js +3 -3
  434. package/src/query/edit/index.js +125 -26
  435. package/src/query/edit/query-placeholder.js +3 -13
  436. package/src/query/edit/query-toolbar.js +6 -0
  437. package/src/query/editor.scss +38 -0
  438. package/src/query-pagination/edit.js +1 -1
  439. package/src/query-pagination/index.php +9 -2
  440. package/src/query-pagination-numbers/block.json +19 -1
  441. package/src/quote/block.json +8 -0
  442. package/src/quote/index.js +10 -1
  443. package/src/quote/style.scss +1 -0
  444. package/src/quote/v2/deprecated.js +107 -0
  445. package/src/quote/v2/edit.js +136 -0
  446. package/src/quote/v2/index.js +36 -0
  447. package/src/quote/v2/save.js +26 -0
  448. package/src/quote/v2/test/migrate.js +92 -0
  449. package/src/quote/v2/transforms.js +155 -0
  450. package/src/read-more/block.json +1 -1
  451. package/src/reset.scss +1 -1
  452. package/src/rss/edit.js +3 -1
  453. package/src/rss/index.php +14 -1
  454. package/src/site-logo/block.json +1 -1
  455. package/src/site-logo/edit.js +2 -1
  456. package/src/site-logo/index.php +0 -4
  457. package/src/social-link/index.php +1 -2
  458. package/src/social-links/block.json +1 -0
  459. package/src/spacer/controls.native.js +1 -1
  460. package/src/spacer/test/__snapshots__/index.native.js.snap +31 -0
  461. package/src/spacer/test/index.native.js +180 -0
  462. package/src/style.scss +1 -0
  463. package/src/template-part/edit/utils/hooks.js +6 -1
  464. package/src/template-part/editor.scss +0 -10
  465. package/build/navigation/edit/use-list-view-modal.js +0 -73
  466. package/build/navigation/edit/use-list-view-modal.js.map +0 -1
  467. package/build-module/navigation/edit/use-list-view-modal.js +0 -63
  468. package/build-module/navigation/edit/use-list-view-modal.js.map +0 -1
  469. package/src/navigation/edit/use-list-view-modal.js +0 -72
@@ -38,13 +38,12 @@ import {
38
38
  Button,
39
39
  Spinner,
40
40
  } from '@wordpress/components';
41
- import { __ } from '@wordpress/i18n';
41
+ import { __, sprintf } from '@wordpress/i18n';
42
42
  import { speak } from '@wordpress/a11y';
43
43
 
44
44
  /**
45
45
  * Internal dependencies
46
46
  */
47
- import useListViewModal from './use-list-view-modal';
48
47
  import useNavigationMenu from '../use-navigation-menu';
49
48
  import useNavigationEntities from '../use-navigation-entities';
50
49
  import Placeholder from './placeholder';
@@ -167,6 +166,10 @@ function Navigation( {
167
166
  // the Select Menu dropdown.
168
167
  useNavigationEntities();
169
168
 
169
+ const [ showNavigationMenuDeleteNotice ] = useNavigationNotice( {
170
+ name: 'block-library/core/navigation/delete',
171
+ } );
172
+
170
173
  const [
171
174
  showNavigationMenuCreateNotice,
172
175
  hideNavigationMenuCreateNotice,
@@ -267,6 +270,7 @@ function Navigation( {
267
270
  const [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );
268
271
 
269
272
  const {
273
+ hasResolvedNavigationMenus,
270
274
  isNavigationMenuResolved,
271
275
  isNavigationMenuMissing,
272
276
  navigationMenus,
@@ -280,12 +284,25 @@ function Navigation( {
280
284
  hasResolvedCanUserCreateNavigationMenu,
281
285
  } = useNavigationMenu( ref );
282
286
 
287
+ // Attempt to retrieve and prioritize any existing navigation menu unless
288
+ // a specific ref is allocated or the user is explicitly creating a new menu. The aim is
289
+ // for the block to "just work" from a user perspective using existing data.
290
+ useEffect( () => {
291
+ if (
292
+ isCreatingNavigationMenu ||
293
+ ref ||
294
+ ! navigationMenus?.length ||
295
+ navigationMenus?.length > 1
296
+ ) {
297
+ return;
298
+ }
299
+
300
+ setRef( navigationMenus[ 0 ].id );
301
+ }, [ navigationMenus ] );
302
+
283
303
  const navRef = useRef();
284
- const isDraftNavigationMenu = navigationMenu?.status === 'draft';
285
304
 
286
- const { listViewToolbarButton, listViewModal } = useListViewModal(
287
- clientId
288
- );
305
+ const isDraftNavigationMenu = navigationMenu?.status === 'draft';
289
306
 
290
307
  const {
291
308
  convert,
@@ -310,6 +327,7 @@ function Navigation( {
310
327
  ! ref &&
311
328
  ! isCreatingNavigationMenu &&
312
329
  ! isConvertingClassicMenu &&
330
+ hasResolvedNavigationMenus &&
313
331
  ( ! hasUncontrolledInnerBlocks || isWithinUnassignedArea );
314
332
 
315
333
  const isEntityAvailable =
@@ -322,10 +340,13 @@ function Navigation( {
322
340
  // - there is a ref attribute pointing to a Navigation Post
323
341
  // - the Navigation Post isn't available (hasn't resolved) yet.
324
342
  const isLoading =
343
+ ! hasResolvedNavigationMenus ||
325
344
  isCreatingNavigationMenu ||
326
345
  isConvertingClassicMenu ||
327
346
  !! ( ref && ! isEntityAvailable && ! isConvertingClassicMenu );
328
347
 
348
+ const textDecoration = attributes.style?.typography?.textDecoration;
349
+
329
350
  const blockProps = useBlockProps( {
330
351
  ref: navRef,
331
352
  className: classnames( className, {
@@ -346,6 +367,7 @@ function Navigation( {
346
367
  'background-color',
347
368
  backgroundColor?.slug
348
369
  ) ]: !! backgroundColor?.slug,
370
+ [ `has-text-decoration-${ textDecoration }` ]: textDecoration,
349
371
  } ),
350
372
  style: {
351
373
  color: ! textColor?.slug && textColor?.color,
@@ -534,11 +556,12 @@ function Navigation( {
534
556
  } );
535
557
  }, [ clientId, ref ] );
536
558
 
537
- // If the block has inner blocks, but no menu id, this was an older
538
- // navigation block added before the block used a wp_navigation entity.
539
- // Either this block was saved in the content or inserted by a pattern.
540
- // Consider this 'unsaved'. Offer an uncontrolled version of inner blocks,
541
- // that automatically saves the menu.
559
+ // If the block has inner blocks, but no menu id, then these blocks are either:
560
+ // - inserted via a pattern.
561
+ // - inserted directly via Code View (or otherwise).
562
+ // - from an older version of navigation block added before the block used a wp_navigation entity.
563
+ // Consider this state as 'unsaved' and offer an uncontrolled version of inner blocks,
564
+ // that automatically saves the menu as an entity when changes are made to the inner blocks.
542
565
  const hasUnsavedBlocks = hasUncontrolledInnerBlocks && ! isEntityAvailable;
543
566
  if ( hasUnsavedBlocks ) {
544
567
  return (
@@ -566,6 +589,10 @@ function Navigation( {
566
589
  setHasSavedUnsavedInnerBlocks( true );
567
590
  // Switch to using the wp_navigation entity.
568
591
  setRef( post.id );
592
+
593
+ showNavigationMenuCreateNotice(
594
+ __( `New Navigation Menu created.` )
595
+ );
569
596
  } }
570
597
  />
571
598
  </ResponsiveWrapper>
@@ -646,9 +673,7 @@ function Navigation( {
646
673
  />
647
674
  </ToolbarGroup>
648
675
  ) }
649
- <ToolbarGroup>{ listViewToolbarButton }</ToolbarGroup>
650
676
  </BlockControls>
651
- { listViewModal }
652
677
  <InspectorControls>
653
678
  { hasSubmenuIndicatorSetting && (
654
679
  <PanelBody title={ __( 'Display' ) }>
@@ -794,7 +819,18 @@ function Navigation( {
794
819
  { hasResolvedCanUserDeleteNavigationMenu &&
795
820
  canUserDeleteNavigationMenu && (
796
821
  <NavigationMenuDeleteControl
797
- onDelete={ resetToEmptyBlock }
822
+ onDelete={ ( deletedMenuTitle = '' ) => {
823
+ resetToEmptyBlock();
824
+ showNavigationMenuDeleteNotice(
825
+ sprintf(
826
+ // translators: %s: the name of a menu (e.g. Header navigation).
827
+ __(
828
+ 'Navigation menu %s successfully deleted.'
829
+ ),
830
+ deletedMenuTitle
831
+ )
832
+ );
833
+ } }
798
834
  />
799
835
  ) }
800
836
  </InspectorControls>
@@ -67,7 +67,7 @@ export default function NavigationMenuDeleteControl( { onDelete } ) {
67
67
  id,
68
68
  { force: true }
69
69
  );
70
- onDelete();
70
+ onDelete( title );
71
71
  } }
72
72
  >
73
73
  { __( 'Confirm' ) }
@@ -10,7 +10,7 @@ import { useInnerBlocksProps } from '@wordpress/block-editor';
10
10
  import { Disabled, Spinner } from '@wordpress/components';
11
11
  import { store as coreStore } from '@wordpress/core-data';
12
12
  import { useSelect } from '@wordpress/data';
13
- import { useContext, useEffect, useRef } from '@wordpress/element';
13
+ import { useContext, useEffect, useRef, useMemo } from '@wordpress/element';
14
14
 
15
15
  /**
16
16
  * Internal dependencies
@@ -25,6 +25,22 @@ const DRAFT_MENU_PARAMS = [
25
25
  { status: 'draft', per_page: -1 },
26
26
  ];
27
27
 
28
+ const DEFAULT_BLOCK = {
29
+ name: 'core/navigation-link',
30
+ };
31
+
32
+ const ALLOWED_BLOCKS = [
33
+ 'core/navigation-link',
34
+ 'core/search',
35
+ 'core/social-links',
36
+ 'core/page-list',
37
+ 'core/spacer',
38
+ 'core/home-link',
39
+ 'core/site-title',
40
+ 'core/site-logo',
41
+ 'core/navigation-submenu',
42
+ ];
43
+
28
44
  export default function UnsavedInnerBlocks( {
29
45
  blockProps,
30
46
  blocks,
@@ -33,6 +49,33 @@ export default function UnsavedInnerBlocks( {
33
49
  onSave,
34
50
  hasSelection,
35
51
  } ) {
52
+ const originalBlocks = useRef();
53
+
54
+ useEffect( () => {
55
+ // Initially store the uncontrolled inner blocks for
56
+ // dirty state comparison.
57
+ if ( ! originalBlocks?.current ) {
58
+ originalBlocks.current = blocks;
59
+ }
60
+ }, [ blocks ] );
61
+
62
+ // If the current inner blocks object is different in any way
63
+ // from the original inner blocks from the post content then the
64
+ // user has made changes to the inner blocks. At this point the inner
65
+ // blocks can be considered "dirty".
66
+ const innerBlocksAreDirty = blocks !== originalBlocks.current;
67
+
68
+ const shouldDirectInsert = useMemo(
69
+ () =>
70
+ blocks.every(
71
+ ( { name } ) =>
72
+ name === 'core/navigation-link' ||
73
+ name === 'core/navigation-submenu' ||
74
+ name === 'core/page-list'
75
+ ),
76
+ [ blocks ]
77
+ );
78
+
36
79
  // The block will be disabled in a block preview, use this as a way of
37
80
  // avoiding the side-effects of this component for block previews.
38
81
  const isDisabled = useContext( Disabled.Context );
@@ -40,6 +83,9 @@ export default function UnsavedInnerBlocks( {
40
83
 
41
84
  const innerBlocksProps = useInnerBlocksProps( blockProps, {
42
85
  renderAppender: hasSelection ? undefined : false,
86
+ allowedBlocks: ALLOWED_BLOCKS,
87
+ __experimentalDefaultBlock: DEFAULT_BLOCK,
88
+ __experimentalDirectInsert: shouldDirectInsert,
43
89
  } );
44
90
 
45
91
  const {
@@ -97,7 +143,8 @@ export default function UnsavedInnerBlocks( {
97
143
  savingLock.current ||
98
144
  ! hasResolvedDraftNavigationMenus ||
99
145
  ! hasResolvedNavigationMenus ||
100
- ! hasSelection
146
+ ! hasSelection ||
147
+ ! innerBlocksAreDirty
101
148
  ) {
102
149
  return;
103
150
  }
@@ -118,19 +165,21 @@ export default function UnsavedInnerBlocks( {
118
165
  blocks,
119
166
  ] );
120
167
 
168
+ const Wrapper = isSaving ? Disabled : 'div';
169
+
121
170
  return (
122
- <div className="wp-block-navigation__unsaved-changes">
123
- <Disabled
171
+ <Wrapper className="wp-block-navigation__unsaved-changes">
172
+ <div
124
173
  className={ classnames(
125
174
  'wp-block-navigation__unsaved-changes-overlay',
126
175
  {
127
- 'is-saving': hasSelection,
176
+ 'is-saving': isSaving,
128
177
  }
129
178
  ) }
130
179
  >
131
180
  <div { ...innerBlocksProps } />
132
- </Disabled>
133
- { hasSelection && <Spinner /> }
134
- </div>
181
+ </div>
182
+ { isSaving && <Spinner /> }
183
+ </Wrapper>
135
184
  );
136
185
  }
@@ -486,6 +486,10 @@ function render_block_core_navigation( $attributes, $content, $block ) {
486
486
  $layout_class .= ' no-wrap';
487
487
  }
488
488
 
489
+ // Manually add block support text decoration as CSS class.
490
+ $text_decoration = _wp_array_get( $attributes, array( 'style', 'typography', 'textDecoration' ), null );
491
+ $text_decoration_class = sprintf( 'has-text-decoration-%s', $text_decoration );
492
+
489
493
  $colors = block_core_navigation_build_css_colors( $attributes );
490
494
  $font_sizes = block_core_navigation_build_css_font_sizes( $attributes );
491
495
  $classes = array_merge(
@@ -493,7 +497,8 @@ function render_block_core_navigation( $attributes, $content, $block ) {
493
497
  $font_sizes['css_classes'],
494
498
  $is_responsive_menu ? array( 'is-responsive' ) : array(),
495
499
  $layout_class ? array( $layout_class ) : array(),
496
- $is_fallback ? array( 'is-fallback' ) : array()
500
+ $is_fallback ? array( 'is-fallback' ) : array(),
501
+ $text_decoration ? array( $text_decoration_class ) : array()
497
502
  );
498
503
 
499
504
  $inner_blocks_html = '';
@@ -51,25 +51,27 @@ $navigation-icon-size: 24px;
51
51
  padding: 0;
52
52
  }
53
53
 
54
- // Force links to inherit text decoration applied to navigation block.
55
- // The extra selector adds specificity to ensure it works when user-set.
56
- &[style*="text-decoration"] {
57
- .wp-block-navigation-item,
58
- .wp-block-navigation__submenu-container {
59
- text-decoration: inherit;
54
+ // The following rules provide class based application of user selected text
55
+ // decoration via block supports.
56
+ &.has-text-decoration-underline .wp-block-navigation-item__content {
57
+ text-decoration: underline;
58
+
59
+ &:focus,
60
+ &:active {
61
+ text-decoration: underline;
60
62
  }
63
+ }
61
64
 
62
- a {
63
- text-decoration: inherit;
65
+ &.has-text-decoration-line-through .wp-block-navigation-item__content {
66
+ text-decoration: line-through;
64
67
 
65
- &:focus,
66
- &:active {
67
- text-decoration: inherit;
68
- }
68
+ &:focus,
69
+ &:active {
70
+ text-decoration: line-through;
69
71
  }
70
72
  }
71
73
 
72
- &:not([style*="text-decoration"]) {
74
+ &:where(:not([class*="has-text-decoration"])) {
73
75
  a {
74
76
  text-decoration: none;
75
77
 
@@ -60,6 +60,10 @@ export default function useNavigationMenu( ref ) {
60
60
  ! ref ||
61
61
  ( hasResolvedNavigationMenu && ! rawNavigationMenu ),
62
62
  canSwitchNavigationMenu,
63
+ isResolvingNavigationMenus: isResolving(
64
+ 'getEntityRecords',
65
+ navigationMenuMultipleArgs
66
+ ),
63
67
  hasResolvedNavigationMenus: hasFinishedResolution(
64
68
  'getEntityRecords',
65
69
  navigationMenuMultipleArgs
@@ -52,6 +52,7 @@
52
52
  "fontSize",
53
53
  "customFontSize",
54
54
  "showSubmenuIcon",
55
+ "maxNestingLevel",
55
56
  "style"
56
57
  ],
57
58
  "supports": {
@@ -49,8 +49,6 @@ import { store as coreStore } from '@wordpress/core-data';
49
49
  */
50
50
  import { name } from './block.json';
51
51
 
52
- const MAX_NESTING = 5;
53
-
54
52
  /**
55
53
  * A React hook to determine if it's dragging within the target element.
56
54
  *
@@ -400,6 +398,7 @@ export default function NavigationLinkEdit( {
400
398
  } = attributes;
401
399
 
402
400
  const [ isInvalid, isDraft ] = useIsInvalidLink( kind, type, id );
401
+ const { maxNestingLevel } = context;
403
402
 
404
403
  const link = {
405
404
  url,
@@ -452,7 +451,7 @@ export default function NavigationLinkEdit( {
452
451
  getBlockParentsByBlockName( clientId, [
453
452
  name,
454
453
  'core/navigation-submenu',
455
- ] ).length >= MAX_NESTING,
454
+ ] ).length >= maxNestingLevel,
456
455
  isTopLevelLink:
457
456
  getBlockName( getBlockRootClientId( clientId ) ) ===
458
457
  'core/navigation',
@@ -738,40 +737,49 @@ export default function NavigationLinkEdit( {
738
737
  ) : (
739
738
  <>
740
739
  { ! isInvalid && ! isDraft && (
741
- <RichText
742
- ref={ ref }
743
- identifier="label"
744
- className="wp-block-navigation-item__label"
745
- value={ label }
746
- onChange={ ( labelValue ) =>
747
- setAttributes( {
748
- label: labelValue,
749
- } )
750
- }
751
- onMerge={ mergeBlocks }
752
- onReplace={ onReplace }
753
- __unstableOnSplitAtEnd={ () =>
754
- insertBlocksAfter(
755
- createBlock(
756
- 'core/navigation-link'
740
+ <>
741
+ <RichText
742
+ ref={ ref }
743
+ identifier="label"
744
+ className="wp-block-navigation-item__label"
745
+ value={ label }
746
+ onChange={ ( labelValue ) =>
747
+ setAttributes( {
748
+ label: labelValue,
749
+ } )
750
+ }
751
+ onMerge={ mergeBlocks }
752
+ onReplace={ onReplace }
753
+ __unstableOnSplitAtEnd={ () =>
754
+ insertBlocksAfter(
755
+ createBlock(
756
+ 'core/navigation-link'
757
+ )
757
758
  )
758
- )
759
- }
760
- aria-label={ __( 'Navigation link text' ) }
761
- placeholder={ itemLabelPlaceholder }
762
- withoutInteractiveFormatting
763
- allowedFormats={ [
764
- 'core/bold',
765
- 'core/italic',
766
- 'core/image',
767
- 'core/strikethrough',
768
- ] }
769
- onClick={ () => {
770
- if ( ! url ) {
771
- setIsLinkOpen( true );
772
759
  }
773
- } }
774
- />
760
+ aria-label={ __(
761
+ 'Navigation link text'
762
+ ) }
763
+ placeholder={ itemLabelPlaceholder }
764
+ withoutInteractiveFormatting
765
+ allowedFormats={ [
766
+ 'core/bold',
767
+ 'core/italic',
768
+ 'core/image',
769
+ 'core/strikethrough',
770
+ ] }
771
+ onClick={ () => {
772
+ if ( ! url ) {
773
+ setIsLinkOpen( true );
774
+ }
775
+ } }
776
+ />
777
+ { description && (
778
+ <span className="wp-block-navigation-item__description">
779
+ { description }
780
+ </span>
781
+ ) }
782
+ </>
775
783
  ) }
776
784
  { ( isInvalid || isDraft ) && (
777
785
  <div className="wp-block-navigation-link__placeholder-text wp-block-navigation-link__label">
@@ -197,6 +197,14 @@ function render_block_core_navigation_link( $attributes, $content, $block ) {
197
197
  }
198
198
 
199
199
  $html .= '</span>';
200
+
201
+ // Add description if available.
202
+ if ( ! empty( $attributes['description'] ) ) {
203
+ $html .= '<span class="wp-block-navigation-item__description">';
204
+ $html .= wp_kses_post( $attributes['description'] );
205
+ $html .= '</span>';
206
+ }
207
+
200
208
  $html .= '</a>';
201
209
  // End anchor tag content.
202
210
 
@@ -8,4 +8,10 @@
8
8
  word-break: normal;
9
9
  overflow-wrap: break-word;
10
10
  }
11
+
12
+ // Hide the description by default.
13
+ // If a theme opts-in to show descriptions, they will need to provide styles for them.
14
+ .wp-block-navigation-item__description {
15
+ display: none;
16
+ }
11
17
  }
@@ -52,6 +52,7 @@
52
52
  "fontSize",
53
53
  "customFontSize",
54
54
  "showSubmenuIcon",
55
+ "maxNestingLevel",
55
56
  "openSubmenusOnClick",
56
57
  "style"
57
58
  ],
@@ -2,7 +2,7 @@
2
2
  * External dependencies
3
3
  */
4
4
  import classnames from 'classnames';
5
- import { escape, pull } from 'lodash';
5
+ import { escape, without } from 'lodash';
6
6
 
7
7
  /**
8
8
  * WordPress dependencies
@@ -55,8 +55,6 @@ const DEFAULT_BLOCK = {
55
55
  name: 'core/navigation-link',
56
56
  };
57
57
 
58
- const MAX_NESTING = 5;
59
-
60
58
  /**
61
59
  * A React hook to determine if it's dragging within the target element.
62
60
  *
@@ -293,7 +291,7 @@ export default function NavigationSubmenuEdit( {
293
291
  url,
294
292
  opensInNewTab,
295
293
  };
296
- const { showSubmenuIcon, openSubmenusOnClick } = context;
294
+ const { showSubmenuIcon, maxNestingLevel, openSubmenusOnClick } = context;
297
295
  const { saveEntityRecord } = useDispatch( coreStore );
298
296
 
299
297
  const {
@@ -351,7 +349,7 @@ export default function NavigationSubmenuEdit( {
351
349
  return {
352
350
  isAtMaxNesting:
353
351
  getBlockParentsByBlockName( clientId, name ).length >=
354
- MAX_NESTING,
352
+ maxNestingLevel,
355
353
  isTopLevelItem:
356
354
  getBlockParentsByBlockName( clientId, name ).length === 0,
357
355
  isParentOfSelectedBlock: hasSelectedInnerBlock(
@@ -503,9 +501,9 @@ export default function NavigationSubmenuEdit( {
503
501
  // Always use overlay colors for submenus.
504
502
  const innerBlocksColors = getColors( context, true );
505
503
 
506
- if ( isAtMaxNesting ) {
507
- pull( ALLOWED_BLOCKS, 'core/navigation-submenu' );
508
- }
504
+ const allowedBlocks = isAtMaxNesting
505
+ ? without( ALLOWED_BLOCKS, 'core/navigation-submenu' )
506
+ : ALLOWED_BLOCKS;
509
507
 
510
508
  const innerBlocksProps = useInnerBlocksProps(
511
509
  {
@@ -528,7 +526,7 @@ export default function NavigationSubmenuEdit( {
528
526
  },
529
527
  },
530
528
  {
531
- allowedBlocks: ALLOWED_BLOCKS,
529
+ allowedBlocks,
532
530
  __experimentalDefaultBlock: DEFAULT_BLOCK,
533
531
  __experimentalDirectInsert: true,
534
532
 
@@ -28,11 +28,6 @@
28
28
  font-style: normal;
29
29
  }
30
30
 
31
- p {
32
- // Break long strings of text without spaces so they don't overflow the block.
33
- overflow-wrap: break-word;
34
- }
35
-
36
31
  // Prevent the dropcap from breaking out of the box when a background is applied.
37
32
  p.has-drop-cap.has-background {
38
33
  overflow: hidden;
@@ -30,7 +30,6 @@ function render_block_core_post_author( $attributes, $content, $block ) {
30
30
 
31
31
  $byline = ! empty( $attributes['byline'] ) ? $attributes['byline'] : false;
32
32
  $classes = array_merge(
33
- isset( $attributes['className'] ) ? array( $attributes['className'] ) : array(),
34
33
  isset( $attributes['itemsJustification'] ) ? array( 'items-justified-' . $attributes['itemsJustification'] ) : array(),
35
34
  isset( $attributes['textAlign'] ) ? array( 'has-text-align-' . $attributes['textAlign'] ) : array()
36
35
  );
@@ -8,7 +8,7 @@ import { blockDefault } from '@wordpress/icons';
8
8
  import { useBlockProps, useInnerBlocksProps } from '@wordpress/block-editor';
9
9
 
10
10
  const ALLOWED_BLOCKS = [
11
- 'core/comment-author-avatar',
11
+ 'core/avatar',
12
12
  'core/comment-author-name',
13
13
  'core/comment-content',
14
14
  'core/comment-date',
@@ -16,7 +16,7 @@ const ALLOWED_BLOCKS = [
16
16
  'core/comment-reply-link',
17
17
  ];
18
18
  const TEMPLATE = [
19
- [ 'core/comment-author-avatar' ],
19
+ [ 'core/avatar' ],
20
20
  [ 'core/comment-author-name' ],
21
21
  [ 'core/comment-date' ],
22
22
  [ 'core/comment-content' ],
@@ -2,9 +2,9 @@
2
2
  "$schema": "https://schemas.wp.org/trunk/block.json",
3
3
  "apiVersion": 2,
4
4
  "name": "core/post-comments",
5
- "title": "Post Comments",
5
+ "title": "Post Comments (deprecated)",
6
6
  "category": "theme",
7
- "description": "Display a post's comments.",
7
+ "description": "This block is deprecated. Please use the Comments Query Loop block instead.",
8
8
  "textdomain": "default",
9
9
  "attributes": {
10
10
  "textAlign": {
@@ -33,7 +33,8 @@
33
33
  "background": true,
34
34
  "text": true
35
35
  }
36
- }
36
+ },
37
+ "inserter": false
37
38
  },
38
39
  "style": [
39
40
  "wp-block-post-comments",
@@ -34,6 +34,8 @@ export default function PostCommentsFormEdit( {
34
34
  } ),
35
35
  } );
36
36
 
37
+ const isInSiteEditor = postType === undefined || postId === undefined;
38
+
37
39
  return (
38
40
  <>
39
41
  <BlockControls group="block">
@@ -45,7 +47,7 @@ export default function PostCommentsFormEdit( {
45
47
  />
46
48
  </BlockControls>
47
49
  <div { ...blockProps }>
48
- { ! commentStatus && (
50
+ { ! commentStatus && ! isInSiteEditor && (
49
51
  <Warning>
50
52
  { __(
51
53
  'Post Comments Form block: comments are not enabled for this post type.'
@@ -53,7 +55,7 @@ export default function PostCommentsFormEdit( {
53
55
  </Warning>
54
56
  ) }
55
57
 
56
- { 'open' !== commentStatus && (
58
+ { 'open' !== commentStatus && ! isInSiteEditor && (
57
59
  <Warning>
58
60
  { sprintf(
59
61
  /* translators: 1: Post type (i.e. "post", "page") */
@@ -65,7 +67,8 @@ export default function PostCommentsFormEdit( {
65
67
  </Warning>
66
68
  ) }
67
69
 
68
- { 'open' === commentStatus && __( 'Post Comments Form' ) }
70
+ { ( 'open' === commentStatus || isInSiteEditor ) &&
71
+ __( 'Post Comments Form' ) }
69
72
  </div>
70
73
  </>
71
74
  );