@wordpress/block-library 7.1.0 → 7.3.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 (634) hide show
  1. package/CHANGELOG.md +13 -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.native.js +0 -5
  8. package/build/audio/edit.native.js.map +1 -1
  9. package/build/avatar/edit.js +211 -0
  10. package/build/avatar/edit.js.map +1 -0
  11. package/build/avatar/hooks.js +111 -0
  12. package/build/avatar/hooks.js.map +1 -0
  13. package/build/avatar/index.js +83 -0
  14. package/build/avatar/index.js.map +1 -0
  15. package/build/avatar/user-control.js +63 -0
  16. package/build/avatar/user-control.js.map +1 -0
  17. package/build/block/edit.js +2 -1
  18. package/build/block/edit.js.map +1 -1
  19. package/build/column/index.js +3 -1
  20. package/build/column/index.js.map +1 -1
  21. package/build/comment-author-avatar/index.js +4 -3
  22. package/build/comment-author-avatar/index.js.map +1 -1
  23. package/build/comment-author-name/index.js +7 -3
  24. package/build/comment-author-name/index.js.map +1 -1
  25. package/build/comment-content/index.js +1 -1
  26. package/build/comment-date/edit.js +10 -25
  27. package/build/comment-date/edit.js.map +1 -1
  28. package/build/comment-date/index.js +7 -3
  29. package/build/comment-date/index.js.map +1 -1
  30. package/build/comment-edit-link/index.js +5 -1
  31. package/build/comment-edit-link/index.js.map +1 -1
  32. package/build/comment-reply-link/index.js +5 -1
  33. package/build/comment-reply-link/index.js.map +1 -1
  34. package/build/comment-template/edit.js +86 -66
  35. package/build/comment-template/edit.js.map +1 -1
  36. package/build/comment-template/hooks.js +7 -23
  37. package/build/comment-template/hooks.js.map +1 -1
  38. package/build/comment-template/index.js +2 -2
  39. package/build/comments-pagination-next/index.js +2 -2
  40. package/build/comments-pagination-numbers/index.js +1 -1
  41. package/build/comments-pagination-previous/index.js +1 -1
  42. package/build/comments-query-loop/edit/comments-inspector-controls.js +2 -69
  43. package/build/comments-query-loop/edit/comments-inspector-controls.js.map +1 -1
  44. package/build/comments-query-loop/edit.js +22 -1
  45. package/build/comments-query-loop/edit.js.map +1 -1
  46. package/build/comments-query-loop/index.js +1 -23
  47. package/build/comments-query-loop/index.js.map +1 -1
  48. package/build/cover/edit.js +58 -39
  49. package/build/cover/edit.js.map +1 -1
  50. package/build/cover/index.js +5 -0
  51. package/build/cover/index.js.map +1 -1
  52. package/build/cover/save.js +3 -2
  53. package/build/cover/save.js.map +1 -1
  54. package/build/embed/variations.js +2 -2
  55. package/build/embed/variations.js.map +1 -1
  56. package/build/gallery/edit.js +18 -5
  57. package/build/gallery/edit.js.map +1 -1
  58. package/build/gallery/gallery.js +1 -1
  59. package/build/gallery/gallery.js.map +1 -1
  60. package/build/gallery/gap-styles.js +35 -0
  61. package/build/gallery/gap-styles.js.map +1 -0
  62. package/build/gallery/index.js +18 -1
  63. package/build/gallery/index.js.map +1 -1
  64. package/build/group/edit.js +3 -1
  65. package/build/group/edit.js.map +1 -1
  66. package/build/group/index.js +1 -1
  67. package/build/group/variations.js +30 -9
  68. package/build/group/variations.js.map +1 -1
  69. package/build/heading/edit.js +1 -1
  70. package/build/heading/edit.js.map +1 -1
  71. package/build/html/edit.js +3 -2
  72. package/build/html/edit.js.map +1 -1
  73. package/build/image/edit.native.js +8 -10
  74. package/build/image/edit.native.js.map +1 -1
  75. package/build/image/image.js +3 -1
  76. package/build/image/image.js.map +1 -1
  77. package/build/index.js +10 -4
  78. package/build/index.js.map +1 -1
  79. package/build/list/deprecated.js +2 -2
  80. package/build/list/deprecated.js.map +1 -1
  81. package/build/list/index.js +5 -7
  82. package/build/list/index.js.map +1 -1
  83. package/build/list/v2/deprecated.js +117 -0
  84. package/build/list/v2/deprecated.js.map +1 -0
  85. package/build/list/v2/edit.js +188 -0
  86. package/build/list/v2/edit.js.map +1 -0
  87. package/build/list/v2/index.js +36 -0
  88. package/build/list/v2/index.js.map +1 -0
  89. package/build/list/v2/migrate.js +85 -0
  90. package/build/list/v2/migrate.js.map +1 -0
  91. package/build/list/v2/save.js +34 -0
  92. package/build/list/v2/save.js.map +1 -0
  93. package/build/list/v2/transforms.js +121 -0
  94. package/build/list/v2/transforms.js.map +1 -0
  95. package/build/list-item/edit.js +96 -0
  96. package/build/list-item/edit.js.map +1 -0
  97. package/build/list-item/hooks/index.js +32 -0
  98. package/build/list-item/hooks/index.js.map +1 -0
  99. package/build/list-item/hooks/use-enter.js +93 -0
  100. package/build/list-item/hooks/use-enter.js.map +1 -0
  101. package/build/list-item/hooks/use-indent-list-item.js +74 -0
  102. package/build/list-item/hooks/use-indent-list-item.js.map +1 -0
  103. package/build/list-item/hooks/use-outdent-list-item.js +77 -0
  104. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -0
  105. package/build/list-item/index.js +67 -0
  106. package/build/list-item/index.js.map +1 -0
  107. package/build/list-item/save.js +23 -0
  108. package/build/list-item/save.js.map +1 -0
  109. package/build/list-item/utils.js +16 -0
  110. package/build/list-item/utils.js.map +1 -0
  111. package/build/media-text/edit.js +3 -1
  112. package/build/media-text/edit.js.map +1 -1
  113. package/build/media-text/media-container.native.js +1 -16
  114. package/build/media-text/media-container.native.js.map +1 -1
  115. package/build/navigation/edit/index.js +36 -17
  116. package/build/navigation/edit/index.js.map +1 -1
  117. package/build/navigation/edit/navigation-menu-delete-control.js +1 -1
  118. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  119. package/build/navigation/edit/unsaved-inner-blocks.js +34 -7
  120. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  121. package/build/navigation/index.js +9 -1
  122. package/build/navigation/index.js.map +1 -1
  123. package/build/navigation/use-navigation-entities.js +26 -54
  124. package/build/navigation/use-navigation-entities.js.map +1 -1
  125. package/build/navigation/use-navigation-menu.js +1 -0
  126. package/build/navigation/use-navigation-menu.js.map +1 -1
  127. package/build/navigation-link/edit.js +95 -37
  128. package/build/navigation-link/edit.js.map +1 -1
  129. package/build/navigation-link/index.js +1 -1
  130. package/build/navigation-submenu/edit.js +5 -9
  131. package/build/navigation-submenu/edit.js.map +1 -1
  132. package/build/navigation-submenu/index.js +1 -1
  133. package/build/post-comment/edit.js +2 -2
  134. package/build/post-comment/edit.js.map +1 -1
  135. package/build/post-comments-form/edit.js +3 -2
  136. package/build/post-comments-form/edit.js.map +1 -1
  137. package/build/post-date/edit.js +31 -37
  138. package/build/post-date/edit.js.map +1 -1
  139. package/build/post-featured-image/edit.js +2 -1
  140. package/build/post-featured-image/edit.js.map +1 -1
  141. package/build/post-featured-image/index.js +1 -1
  142. package/build/post-template/edit.js +7 -2
  143. package/build/post-template/edit.js.map +1 -1
  144. package/build/post-terms/edit.js +3 -1
  145. package/build/post-terms/edit.js.map +1 -1
  146. package/build/post-terms/variations.js +1 -1
  147. package/build/post-terms/variations.js.map +1 -1
  148. package/build/pullquote/edit.js +5 -3
  149. package/build/pullquote/edit.js.map +1 -1
  150. package/build/query/variations.js +4 -4
  151. package/build/query/variations.js.map +1 -1
  152. package/build/query-no-results/edit.js +28 -0
  153. package/build/query-no-results/edit.js.map +1 -0
  154. package/build/query-no-results/index.js +54 -0
  155. package/build/query-no-results/index.js.map +1 -0
  156. package/build/query-no-results/save.js +18 -0
  157. package/build/query-no-results/save.js.map +1 -0
  158. package/build/query-pagination/edit.js +1 -1
  159. package/build/query-pagination/edit.js.map +1 -1
  160. package/build/query-pagination-numbers/index.js +19 -1
  161. package/build/query-pagination-numbers/index.js.map +1 -1
  162. package/build/quote/index.js +15 -8
  163. package/build/quote/index.js.map +1 -1
  164. package/build/quote/v2/deprecated.js +133 -0
  165. package/build/quote/v2/deprecated.js.map +1 -0
  166. package/build/quote/v2/edit.js +131 -0
  167. package/build/quote/v2/edit.js.map +1 -0
  168. package/build/quote/v2/index.js +49 -0
  169. package/build/quote/v2/index.js.map +1 -0
  170. package/build/quote/v2/save.js +43 -0
  171. package/build/quote/v2/save.js.map +1 -0
  172. package/build/quote/v2/transforms.js +156 -0
  173. package/build/quote/v2/transforms.js.map +1 -0
  174. package/build/read-more/index.js +1 -1
  175. package/build/rss/edit.js +6 -1
  176. package/build/rss/edit.js.map +1 -1
  177. package/build/search/edit.js +2 -3
  178. package/build/search/edit.js.map +1 -1
  179. package/build/separator/deprecated.js +83 -0
  180. package/build/separator/deprecated.js.map +1 -0
  181. package/build/separator/edit.js +31 -23
  182. package/build/separator/edit.js.map +1 -1
  183. package/build/separator/index.js +17 -7
  184. package/build/separator/index.js.map +1 -1
  185. package/build/separator/save.js +18 -13
  186. package/build/separator/save.js.map +1 -1
  187. package/build/separator/use-deprecated-opacity.js +39 -0
  188. package/build/separator/use-deprecated-opacity.js.map +1 -0
  189. package/build/site-logo/edit.js +3 -2
  190. package/build/site-logo/edit.js.map +1 -1
  191. package/build/site-logo/index.js +1 -1
  192. package/build/social-links/edit.js +14 -3
  193. package/build/social-links/edit.js.map +1 -1
  194. package/build/social-links/index.js +2 -1
  195. package/build/social-links/index.js.map +1 -1
  196. package/build/spacer/controls.js +6 -16
  197. package/build/spacer/controls.js.map +1 -1
  198. package/build/spacer/controls.native.js +3 -1
  199. package/build/spacer/controls.native.js.map +1 -1
  200. package/build/spacer/edit.js +4 -5
  201. package/build/spacer/edit.js.map +1 -1
  202. package/build/table/deprecated.js +1 -1
  203. package/build/table/deprecated.js.map +1 -1
  204. package/build/tag-cloud/edit.js +58 -2
  205. package/build/tag-cloud/edit.js.map +1 -1
  206. package/build/tag-cloud/index.js +8 -0
  207. package/build/tag-cloud/index.js.map +1 -1
  208. package/build/template-part/edit/utils/hooks.js +5 -2
  209. package/build/template-part/edit/utils/hooks.js.map +1 -1
  210. package/build-module/archives/edit.js +22 -2
  211. package/build-module/archives/edit.js.map +1 -1
  212. package/build-module/archives/index.js +5 -1
  213. package/build-module/archives/index.js.map +1 -1
  214. package/build-module/audio/edit.native.js +0 -5
  215. package/build-module/audio/edit.native.js.map +1 -1
  216. package/build-module/avatar/edit.js +195 -0
  217. package/build-module/avatar/edit.js.map +1 -0
  218. package/build-module/avatar/hooks.js +99 -0
  219. package/build-module/avatar/hooks.js.map +1 -0
  220. package/build-module/avatar/index.js +70 -0
  221. package/build-module/avatar/index.js.map +1 -0
  222. package/build-module/avatar/user-control.js +52 -0
  223. package/build-module/avatar/user-control.js.map +1 -0
  224. package/build-module/block/edit.js +4 -3
  225. package/build-module/block/edit.js.map +1 -1
  226. package/build-module/column/index.js +3 -1
  227. package/build-module/column/index.js.map +1 -1
  228. package/build-module/comment-author-avatar/index.js +4 -3
  229. package/build-module/comment-author-avatar/index.js.map +1 -1
  230. package/build-module/comment-author-name/index.js +7 -3
  231. package/build-module/comment-author-name/index.js.map +1 -1
  232. package/build-module/comment-content/index.js +1 -1
  233. package/build-module/comment-date/edit.js +13 -30
  234. package/build-module/comment-date/edit.js.map +1 -1
  235. package/build-module/comment-date/index.js +7 -3
  236. package/build-module/comment-date/index.js.map +1 -1
  237. package/build-module/comment-edit-link/index.js +5 -1
  238. package/build-module/comment-edit-link/index.js.map +1 -1
  239. package/build-module/comment-reply-link/index.js +5 -1
  240. package/build-module/comment-reply-link/index.js.map +1 -1
  241. package/build-module/comment-template/edit.js +86 -66
  242. package/build-module/comment-template/edit.js.map +1 -1
  243. package/build-module/comment-template/hooks.js +7 -23
  244. package/build-module/comment-template/hooks.js.map +1 -1
  245. package/build-module/comment-template/index.js +2 -2
  246. package/build-module/comments-pagination-next/index.js +2 -2
  247. package/build-module/comments-pagination-numbers/index.js +1 -1
  248. package/build-module/comments-pagination-previous/index.js +1 -1
  249. package/build-module/comments-query-loop/edit/comments-inspector-controls.js +4 -70
  250. package/build-module/comments-query-loop/edit/comments-inspector-controls.js.map +1 -1
  251. package/build-module/comments-query-loop/edit.js +22 -1
  252. package/build-module/comments-query-loop/edit.js.map +1 -1
  253. package/build-module/comments-query-loop/index.js +1 -23
  254. package/build-module/comments-query-loop/index.js.map +1 -1
  255. package/build-module/cover/edit.js +58 -41
  256. package/build-module/cover/edit.js.map +1 -1
  257. package/build-module/cover/index.js +5 -0
  258. package/build-module/cover/index.js.map +1 -1
  259. package/build-module/cover/save.js +3 -2
  260. package/build-module/cover/save.js.map +1 -1
  261. package/build-module/embed/variations.js +2 -2
  262. package/build-module/embed/variations.js.map +1 -1
  263. package/build-module/gallery/edit.js +17 -5
  264. package/build-module/gallery/edit.js.map +1 -1
  265. package/build-module/gallery/gallery.js +1 -1
  266. package/build-module/gallery/gallery.js.map +1 -1
  267. package/build-module/gallery/gap-styles.js +28 -0
  268. package/build-module/gallery/gap-styles.js.map +1 -0
  269. package/build-module/gallery/index.js +18 -1
  270. package/build-module/gallery/index.js.map +1 -1
  271. package/build-module/group/edit.js +3 -1
  272. package/build-module/group/edit.js.map +1 -1
  273. package/build-module/group/index.js +1 -1
  274. package/build-module/group/variations.js +29 -9
  275. package/build-module/group/variations.js.map +1 -1
  276. package/build-module/heading/edit.js +1 -1
  277. package/build-module/heading/edit.js.map +1 -1
  278. package/build-module/html/edit.js +4 -3
  279. package/build-module/html/edit.js.map +1 -1
  280. package/build-module/image/edit.native.js +8 -10
  281. package/build-module/image/edit.native.js.map +1 -1
  282. package/build-module/image/image.js +3 -1
  283. package/build-module/image/image.js.map +1 -1
  284. package/build-module/index.js +7 -4
  285. package/build-module/index.js.map +1 -1
  286. package/build-module/list/deprecated.js +2 -2
  287. package/build-module/list/deprecated.js.map +1 -1
  288. package/build-module/list/index.js +5 -1
  289. package/build-module/list/index.js.map +1 -1
  290. package/build-module/list/v2/deprecated.js +104 -0
  291. package/build-module/list/v2/deprecated.js.map +1 -0
  292. package/build-module/list/v2/edit.js +168 -0
  293. package/build-module/list/v2/edit.js.map +1 -0
  294. package/build-module/list/v2/index.js +21 -0
  295. package/build-module/list/v2/index.js.map +1 -0
  296. package/build-module/list/v2/migrate.js +77 -0
  297. package/build-module/list/v2/migrate.js.map +1 -0
  298. package/build-module/list/v2/save.js +23 -0
  299. package/build-module/list/v2/save.js.map +1 -0
  300. package/build-module/list/v2/transforms.js +111 -0
  301. package/build-module/list/v2/transforms.js.map +1 -0
  302. package/build-module/list-item/edit.js +83 -0
  303. package/build-module/list-item/edit.js.map +1 -0
  304. package/build-module/list-item/hooks/index.js +4 -0
  305. package/build-module/list-item/hooks/index.js.map +1 -0
  306. package/build-module/list-item/hooks/use-enter.js +77 -0
  307. package/build-module/list-item/hooks/use-enter.js.map +1 -0
  308. package/build-module/list-item/hooks/use-indent-list-item.js +62 -0
  309. package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -0
  310. package/build-module/list-item/hooks/use-outdent-list-item.js +66 -0
  311. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -0
  312. package/build-module/list-item/index.js +53 -0
  313. package/build-module/list-item/index.js.map +1 -0
  314. package/build-module/list-item/save.js +15 -0
  315. package/build-module/list-item/save.js.map +1 -0
  316. package/build-module/list-item/utils.js +8 -0
  317. package/build-module/list-item/utils.js.map +1 -0
  318. package/build-module/media-text/edit.js +3 -1
  319. package/build-module/media-text/edit.js.map +1 -1
  320. package/build-module/media-text/media-container.native.js +1 -14
  321. package/build-module/media-text/media-container.native.js.map +1 -1
  322. package/build-module/navigation/edit/index.js +37 -17
  323. package/build-module/navigation/edit/index.js.map +1 -1
  324. package/build-module/navigation/edit/navigation-menu-delete-control.js +1 -1
  325. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  326. package/build-module/navigation/edit/unsaved-inner-blocks.js +35 -8
  327. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  328. package/build-module/navigation/index.js +9 -1
  329. package/build-module/navigation/index.js.map +1 -1
  330. package/build-module/navigation/use-navigation-entities.js +27 -54
  331. package/build-module/navigation/use-navigation-entities.js.map +1 -1
  332. package/build-module/navigation/use-navigation-menu.js +1 -0
  333. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  334. package/build-module/navigation-link/edit.js +95 -36
  335. package/build-module/navigation-link/edit.js.map +1 -1
  336. package/build-module/navigation-link/index.js +1 -1
  337. package/build-module/navigation-submenu/edit.js +6 -10
  338. package/build-module/navigation-submenu/edit.js.map +1 -1
  339. package/build-module/navigation-submenu/index.js +1 -1
  340. package/build-module/post-comment/edit.js +2 -2
  341. package/build-module/post-comment/edit.js.map +1 -1
  342. package/build-module/post-comments-form/edit.js +3 -2
  343. package/build-module/post-comments-form/edit.js.map +1 -1
  344. package/build-module/post-date/edit.js +32 -43
  345. package/build-module/post-date/edit.js.map +1 -1
  346. package/build-module/post-featured-image/edit.js +2 -1
  347. package/build-module/post-featured-image/edit.js.map +1 -1
  348. package/build-module/post-featured-image/index.js +1 -1
  349. package/build-module/post-template/edit.js +7 -2
  350. package/build-module/post-template/edit.js.map +1 -1
  351. package/build-module/post-terms/edit.js +4 -2
  352. package/build-module/post-terms/edit.js.map +1 -1
  353. package/build-module/post-terms/variations.js +3 -3
  354. package/build-module/post-terms/variations.js.map +1 -1
  355. package/build-module/pullquote/edit.js +6 -3
  356. package/build-module/pullquote/edit.js.map +1 -1
  357. package/build-module/query/variations.js +4 -4
  358. package/build-module/query/variations.js.map +1 -1
  359. package/build-module/query-no-results/edit.js +18 -0
  360. package/build-module/query-no-results/edit.js.map +1 -0
  361. package/build-module/query-no-results/index.js +40 -0
  362. package/build-module/query-no-results/index.js.map +1 -0
  363. package/build-module/query-no-results/save.js +10 -0
  364. package/build-module/query-no-results/save.js.map +1 -0
  365. package/build-module/query-pagination/edit.js +1 -1
  366. package/build-module/query-pagination/edit.js.map +1 -1
  367. package/build-module/query-pagination-numbers/index.js +19 -1
  368. package/build-module/query-pagination-numbers/index.js.map +1 -1
  369. package/build-module/quote/index.js +13 -1
  370. package/build-module/quote/index.js.map +1 -1
  371. package/build-module/quote/v2/deprecated.js +116 -0
  372. package/build-module/quote/v2/deprecated.js.map +1 -0
  373. package/build-module/quote/v2/edit.js +115 -0
  374. package/build-module/quote/v2/edit.js.map +1 -0
  375. package/build-module/quote/v2/index.js +33 -0
  376. package/build-module/quote/v2/index.js.map +1 -0
  377. package/build-module/quote/v2/save.js +30 -0
  378. package/build-module/quote/v2/save.js.map +1 -0
  379. package/build-module/quote/v2/transforms.js +147 -0
  380. package/build-module/quote/v2/transforms.js.map +1 -0
  381. package/build-module/read-more/index.js +1 -1
  382. package/build-module/rss/edit.js +5 -1
  383. package/build-module/rss/edit.js.map +1 -1
  384. package/build-module/search/edit.js +2 -3
  385. package/build-module/search/edit.js.map +1 -1
  386. package/build-module/separator/deprecated.js +70 -0
  387. package/build-module/separator/deprecated.js.map +1 -0
  388. package/build-module/separator/edit.js +31 -22
  389. package/build-module/separator/edit.js.map +1 -1
  390. package/build-module/separator/index.js +16 -7
  391. package/build-module/separator/index.js.map +1 -1
  392. package/build-module/separator/save.js +19 -14
  393. package/build-module/separator/save.js.map +1 -1
  394. package/build-module/separator/use-deprecated-opacity.js +30 -0
  395. package/build-module/separator/use-deprecated-opacity.js.map +1 -0
  396. package/build-module/site-logo/edit.js +3 -2
  397. package/build-module/site-logo/edit.js.map +1 -1
  398. package/build-module/site-logo/index.js +1 -1
  399. package/build-module/social-links/edit.js +15 -4
  400. package/build-module/social-links/edit.js.map +1 -1
  401. package/build-module/social-links/index.js +2 -1
  402. package/build-module/social-links/index.js.map +1 -1
  403. package/build-module/spacer/controls.js +8 -19
  404. package/build-module/spacer/controls.js.map +1 -1
  405. package/build-module/spacer/controls.native.js +2 -1
  406. package/build-module/spacer/controls.native.js.map +1 -1
  407. package/build-module/spacer/edit.js +3 -3
  408. package/build-module/spacer/edit.js.map +1 -1
  409. package/build-module/table/deprecated.js +1 -1
  410. package/build-module/table/deprecated.js.map +1 -1
  411. package/build-module/tag-cloud/edit.js +60 -4
  412. package/build-module/tag-cloud/edit.js.map +1 -1
  413. package/build-module/tag-cloud/index.js +8 -0
  414. package/build-module/tag-cloud/index.js.map +1 -1
  415. package/build-module/template-part/edit/utils/hooks.js +5 -2
  416. package/build-module/template-part/edit/utils/hooks.js.map +1 -1
  417. package/build-style/avatar/editor-rtl.css +83 -0
  418. package/build-style/avatar/editor.css +83 -0
  419. package/build-style/avatar/style-rtl.css +79 -0
  420. package/build-style/avatar/style.css +79 -0
  421. package/build-style/editor-rtl.css +53 -11
  422. package/build-style/editor.css +53 -11
  423. package/build-style/gallery/editor-rtl.css +0 -1
  424. package/build-style/gallery/editor.css +0 -1
  425. package/build-style/gallery/style-rtl.css +102 -169
  426. package/build-style/gallery/style.css +102 -169
  427. package/build-style/group/editor-rtl.css +26 -0
  428. package/build-style/group/editor.css +26 -0
  429. package/build-style/heading/style-rtl.css +0 -8
  430. package/build-style/heading/style.css +0 -8
  431. package/build-style/image/style-rtl.css +2 -0
  432. package/build-style/image/style.css +2 -0
  433. package/build-style/list/style-rtl.css +1 -1
  434. package/build-style/list/style.css +1 -1
  435. package/build-style/navigation/style-rtl.css +11 -9
  436. package/build-style/navigation/style.css +11 -9
  437. package/build-style/navigation-link/editor-rtl.css +13 -0
  438. package/build-style/navigation-link/editor.css +13 -0
  439. package/build-style/navigation-link/style-rtl.css +3 -0
  440. package/build-style/navigation-link/style.css +3 -0
  441. package/build-style/paragraph/style-rtl.css +0 -4
  442. package/build-style/paragraph/style.css +0 -4
  443. package/build-style/pullquote/style-rtl.css +0 -4
  444. package/build-style/pullquote/style.css +0 -4
  445. package/build-style/quote/style-rtl.css +1 -0
  446. package/build-style/quote/style.css +1 -0
  447. package/build-style/reset-rtl.css +1 -1
  448. package/build-style/reset.css +1 -1
  449. package/build-style/separator/editor-rtl.css +3 -0
  450. package/build-style/separator/editor.css +3 -0
  451. package/build-style/separator/theme-rtl.css +7 -1
  452. package/build-style/separator/theme.css +7 -1
  453. package/build-style/site-logo/editor-rtl.css +3 -1
  454. package/build-style/site-logo/editor.css +3 -1
  455. package/build-style/style-rtl.css +124 -195
  456. package/build-style/style.css +124 -195
  457. package/build-style/template-part/editor-rtl.css +0 -9
  458. package/build-style/template-part/editor.css +0 -9
  459. package/build-style/theme-rtl.css +7 -1
  460. package/build-style/theme.css +7 -1
  461. package/package.json +28 -28
  462. package/src/archives/block.json +5 -1
  463. package/src/archives/edit.js +20 -2
  464. package/src/archives/index.php +4 -4
  465. package/src/audio/edit.native.js +0 -5
  466. package/src/avatar/block.json +53 -0
  467. package/src/avatar/edit.js +230 -0
  468. package/src/avatar/editor.scss +9 -0
  469. package/src/avatar/hooks.js +96 -0
  470. package/src/avatar/index.js +18 -0
  471. package/src/avatar/index.php +146 -0
  472. package/src/avatar/style.scss +5 -0
  473. package/src/avatar/user-control.js +56 -0
  474. package/src/block/edit.js +21 -11
  475. package/src/column/block.json +3 -1
  476. package/src/comment-author-avatar/block.json +4 -3
  477. package/src/comment-author-name/block.json +7 -3
  478. package/src/comment-author-name/index.php +3 -0
  479. package/src/comment-content/block.json +1 -1
  480. package/src/comment-date/block.json +7 -3
  481. package/src/comment-date/edit.js +20 -30
  482. package/src/comment-date/index.php +6 -1
  483. package/src/comment-edit-link/block.json +5 -1
  484. package/src/comment-edit-link/index.php +3 -0
  485. package/src/comment-reply-link/block.json +5 -1
  486. package/src/comment-reply-link/index.php +4 -1
  487. package/src/comment-template/block.json +2 -8
  488. package/src/comment-template/edit.js +77 -64
  489. package/src/comment-template/hooks.js +8 -24
  490. package/src/comment-template/index.php +1 -3
  491. package/src/comments-pagination-next/block.json +2 -9
  492. package/src/comments-pagination-numbers/block.json +2 -8
  493. package/src/comments-pagination-previous/block.json +2 -2
  494. package/src/comments-query-loop/block.json +1 -23
  495. package/src/comments-query-loop/edit/comments-inspector-controls.js +2 -83
  496. package/src/comments-query-loop/edit.js +54 -1
  497. package/src/cover/block.json +5 -0
  498. package/src/cover/edit.js +103 -60
  499. package/src/cover/index.php +85 -0
  500. package/src/cover/save.js +18 -14
  501. package/src/editor.scss +1 -0
  502. package/src/embed/variations.js +2 -2
  503. package/src/gallery/block.json +18 -1
  504. package/src/gallery/deprecated.scss +2 -2
  505. package/src/gallery/edit.js +15 -8
  506. package/src/gallery/editor.scss +0 -1
  507. package/src/gallery/gallery.js +8 -7
  508. package/src/gallery/gap-styles.js +26 -0
  509. package/src/gallery/index.php +43 -1
  510. package/src/gallery/style.scss +11 -44
  511. package/src/group/block.json +1 -1
  512. package/src/group/edit.js +4 -1
  513. package/src/group/editor.scss +31 -0
  514. package/src/group/variations.js +21 -4
  515. package/src/heading/edit.js +1 -1
  516. package/src/heading/style.scss +0 -3
  517. package/src/html/edit.js +22 -30
  518. package/src/image/edit.native.js +7 -11
  519. package/src/image/image.js +4 -1
  520. package/src/image/style.scss +3 -0
  521. package/src/index.js +19 -14
  522. package/src/list/deprecated.js +2 -2
  523. package/src/list/index.js +6 -1
  524. package/src/list/style.scss +1 -2
  525. package/src/list/test/migrate.js +159 -0
  526. package/src/list/v2/deprecated.js +89 -0
  527. package/src/list/v2/edit.js +186 -0
  528. package/src/list/v2/index.js +22 -0
  529. package/src/list/v2/migrate.js +87 -0
  530. package/src/list/v2/save.js +18 -0
  531. package/src/list/v2/transforms.js +116 -0
  532. package/src/list-item/block.json +26 -0
  533. package/src/list-item/edit.js +93 -0
  534. package/src/list-item/hooks/index.js +3 -0
  535. package/src/list-item/hooks/use-enter.js +94 -0
  536. package/src/list-item/hooks/use-indent-list-item.js +89 -0
  537. package/src/list-item/hooks/use-outdent-list-item.js +95 -0
  538. package/src/list-item/index.js +27 -0
  539. package/src/list-item/save.js +13 -0
  540. package/src/list-item/utils.js +14 -0
  541. package/src/media-text/edit.js +1 -1
  542. package/src/media-text/media-container.native.js +1 -14
  543. package/src/navigation/block.json +9 -1
  544. package/src/navigation/edit/index.js +50 -14
  545. package/src/navigation/edit/navigation-menu-delete-control.js +1 -1
  546. package/src/navigation/edit/unsaved-inner-blocks.js +57 -8
  547. package/src/navigation/index.php +28 -3
  548. package/src/navigation/style.scss +15 -13
  549. package/src/navigation/use-navigation-entities.js +37 -73
  550. package/src/navigation/use-navigation-menu.js +4 -0
  551. package/src/navigation-link/block.json +1 -0
  552. package/src/navigation-link/edit.js +156 -64
  553. package/src/navigation-link/editor.scss +11 -0
  554. package/src/navigation-link/index.php +8 -0
  555. package/src/navigation-link/style.scss +6 -0
  556. package/src/navigation-submenu/block.json +1 -0
  557. package/src/navigation-submenu/edit.js +7 -9
  558. package/src/paragraph/style.scss +0 -5
  559. package/src/post-author/index.php +0 -1
  560. package/src/post-comment/edit.js +2 -2
  561. package/src/post-comments-form/edit.js +6 -3
  562. package/src/post-date/edit.js +63 -52
  563. package/src/post-date/index.php +1 -1
  564. package/src/post-date/test/edit.js +17 -0
  565. package/src/post-featured-image/block.json +1 -1
  566. package/src/post-featured-image/edit.js +9 -1
  567. package/src/post-featured-image/index.php +2 -1
  568. package/src/post-template/edit.js +7 -1
  569. package/src/post-terms/edit.js +4 -1
  570. package/src/post-terms/variations.js +3 -3
  571. package/src/pullquote/edit.js +4 -3
  572. package/src/pullquote/style.scss +0 -5
  573. package/src/query/variations.js +4 -0
  574. package/src/query-no-results/block.json +20 -0
  575. package/src/query-no-results/edit.js +28 -0
  576. package/src/query-no-results/index.js +20 -0
  577. package/src/query-no-results/index.php +59 -0
  578. package/src/query-no-results/save.js +8 -0
  579. package/src/query-pagination/edit.js +1 -1
  580. package/src/query-pagination/index.php +9 -2
  581. package/src/query-pagination-numbers/block.json +19 -1
  582. package/src/quote/block.json +8 -0
  583. package/src/quote/index.js +6 -1
  584. package/src/quote/style.scss +1 -0
  585. package/src/quote/v2/deprecated.js +107 -0
  586. package/src/quote/v2/edit.js +136 -0
  587. package/src/quote/v2/index.js +36 -0
  588. package/src/quote/v2/save.js +26 -0
  589. package/src/quote/v2/test/migrate.js +92 -0
  590. package/src/quote/v2/transforms.js +155 -0
  591. package/src/read-more/block.json +1 -1
  592. package/src/reset.scss +1 -1
  593. package/src/rss/edit.js +3 -1
  594. package/src/rss/index.php +14 -1
  595. package/src/search/edit.js +1 -2
  596. package/src/separator/block.json +13 -6
  597. package/src/separator/deprecated.js +57 -0
  598. package/src/separator/deprecated.scss +6 -0
  599. package/src/separator/edit.js +36 -14
  600. package/src/separator/editor.scss +6 -0
  601. package/src/separator/index.js +2 -0
  602. package/src/separator/save.js +22 -14
  603. package/src/separator/test/edit.js +113 -0
  604. package/src/separator/theme.scss +7 -1
  605. package/src/separator/use-deprecated-opacity.js +41 -0
  606. package/src/site-logo/block.json +1 -1
  607. package/src/site-logo/edit.js +2 -1
  608. package/src/site-logo/editor.scss +3 -1
  609. package/src/site-logo/index.php +0 -4
  610. package/src/social-link/index.php +1 -2
  611. package/src/social-links/block.json +2 -1
  612. package/src/social-links/edit.js +15 -5
  613. package/src/spacer/controls.js +12 -18
  614. package/src/spacer/controls.native.js +2 -1
  615. package/src/spacer/edit.js +3 -6
  616. package/src/spacer/test/__snapshots__/index.native.js.snap +31 -0
  617. package/src/spacer/test/index.native.js +180 -0
  618. package/src/style.scss +1 -0
  619. package/src/table/deprecated.js +5 -1
  620. package/src/tag-cloud/block.json +8 -0
  621. package/src/tag-cloud/edit.js +82 -2
  622. package/src/tag-cloud/index.php +6 -0
  623. package/src/template-part/edit/utils/hooks.js +6 -1
  624. package/src/template-part/editor.scss +0 -10
  625. package/build/navigation/edit/use-list-view-modal.js +0 -73
  626. package/build/navigation/edit/use-list-view-modal.js.map +0 -1
  627. package/build/separator/separator-settings.js +0 -36
  628. package/build/separator/separator-settings.js.map +0 -1
  629. package/build-module/navigation/edit/use-list-view-modal.js +0 -63
  630. package/build-module/navigation/edit/use-list-view-modal.js.map +0 -1
  631. package/build-module/separator/separator-settings.js +0 -27
  632. package/build-module/separator/separator-settings.js.map +0 -1
  633. package/src/navigation/edit/use-list-view-modal.js +0 -72
  634. package/src/separator/separator-settings.js +0 -24
@@ -20,7 +20,7 @@ import { store as coreStore } from '@wordpress/core-data';
20
20
  import { useCommentQueryArgs, useCommentTree } from './hooks';
21
21
 
22
22
  const TEMPLATE = [
23
- [ 'core/comment-author-avatar' ],
23
+ [ 'core/avatar' ],
24
24
  [ 'core/comment-author-name' ],
25
25
  [ 'core/comment-date' ],
26
26
  [ 'core/comment-content' ],
@@ -31,6 +31,10 @@ const TEMPLATE = [
31
31
  /**
32
32
  * Function that returns a comment structure that will be rendered with default placehoders.
33
33
  *
34
+ * Each comment has a `commentId` property that is always a negative number in
35
+ * case of the placeholders. This is to ensure that the comment does not
36
+ * conflict with the actual (real) comments.
37
+ *
34
38
  * @param {Object} settings Discussion Settings.
35
39
  * @param {number} [settings.perPage] - Comments per page setting or block attribute.
36
40
  * @param {boolean} [settings.threadComments] - Enable threaded (nested) comments setting.
@@ -54,12 +58,13 @@ const getCommentsPlaceholder = ( {
54
58
  perPage <= commentsDepth ? perPage : commentsDepth;
55
59
  if ( ! threadComments || defaultCommentsToShow === 1 ) {
56
60
  // If displaying threaded comments is disabled, we only show one comment
57
- return [ { commentId: null, children: [] } ];
61
+ // A commentId is negative in order to avoid conflicts with the actual comments.
62
+ return [ { commentId: -1, children: [] } ];
58
63
  } else if ( defaultCommentsToShow === 2 ) {
59
64
  return [
60
65
  {
61
- commentId: null,
62
- children: [ { commentId: null, children: [] } ],
66
+ commentId: -1,
67
+ children: [ { commentId: -2, children: [] } ],
63
68
  },
64
69
  ];
65
70
  }
@@ -67,11 +72,11 @@ const getCommentsPlaceholder = ( {
67
72
  // In case that the value is set but larger than 3 we truncate it to 3.
68
73
  return [
69
74
  {
70
- commentId: null,
75
+ commentId: -1,
71
76
  children: [
72
77
  {
73
- commentId: null,
74
- children: [ { commentId: null, children: [] } ],
78
+ commentId: -2,
79
+ children: [ { commentId: -3, children: [] } ],
75
80
  },
76
81
  ],
77
82
  },
@@ -81,29 +86,32 @@ const getCommentsPlaceholder = ( {
81
86
  /**
82
87
  * Component which renders the inner blocks of the Comment Template.
83
88
  *
84
- * @param {Object} props Component props.
85
- * @param {Array} [props.comment] - A comment object.
86
- * @param {Array} [props.activeComment] - The block that is currently active.
87
- * @param {Array} [props.setActiveComment] - The setter for activeComment.
88
- * @param {Array} [props.firstComment] - First comment in the array.
89
- * @param {Array} [props.blocks] - Array of blocks returned from
90
- * getBlocks() in parent .
89
+ * @param {Object} props Component props.
90
+ * @param {Array} [props.comment] - A comment object.
91
+ * @param {Array} [props.activeCommentId] - The ID of the comment that is currently active.
92
+ * @param {Array} [props.setActiveCommentId] - The setter for activeCommentId.
93
+ * @param {Array} [props.firstCommentId] - ID of the first comment in the array.
94
+ * @param {Array} [props.blocks] - Array of blocks returned from
95
+ * getBlocks() in parent .
91
96
  * @return {WPElement} Inner blocks of the Comment Template
92
97
  */
93
98
  function CommentTemplateInnerBlocks( {
94
99
  comment,
95
- activeComment,
96
- setActiveComment,
97
- firstComment,
100
+ activeCommentId,
101
+ setActiveCommentId,
102
+ firstCommentId,
98
103
  blocks,
99
104
  } ) {
100
105
  const { children, ...innerBlocksProps } = useInnerBlocksProps(
101
106
  {},
102
107
  { template: TEMPLATE }
103
108
  );
109
+
104
110
  return (
105
111
  <li { ...innerBlocksProps }>
106
- { comment === ( activeComment || firstComment ) ? children : null }
112
+ { comment.commentId === ( activeCommentId || firstCommentId )
113
+ ? children
114
+ : null }
107
115
 
108
116
  { /* To avoid flicker when switching active block contexts, a preview
109
117
  is ALWAYS rendered and the preview for the active block is hidden.
@@ -114,17 +122,20 @@ function CommentTemplateInnerBlocks( {
114
122
  block. */ }
115
123
  <MemoizedCommentTemplatePreview
116
124
  blocks={ blocks }
117
- comment={ comment }
118
- setActiveComment={ setActiveComment }
119
- isHidden={ comment === ( activeComment || firstComment ) }
125
+ commentId={ comment.commentId }
126
+ setActiveCommentId={ setActiveCommentId }
127
+ isHidden={
128
+ comment.commentId === ( activeCommentId || firstCommentId )
129
+ }
120
130
  />
121
131
 
122
132
  { comment?.children?.length > 0 ? (
123
133
  <CommentsList
124
134
  comments={ comment.children }
125
- activeComment={ activeComment }
126
- setActiveComment={ setActiveComment }
135
+ activeCommentId={ activeCommentId }
136
+ setActiveCommentId={ setActiveCommentId }
127
137
  blocks={ blocks }
138
+ firstCommentId={ firstCommentId }
128
139
  />
129
140
  ) : null }
130
141
  </li>
@@ -133,8 +144,8 @@ function CommentTemplateInnerBlocks( {
133
144
 
134
145
  const CommentTemplatePreview = ( {
135
146
  blocks,
136
- comment,
137
- setActiveComment,
147
+ commentId,
148
+ setActiveCommentId,
138
149
  isHidden,
139
150
  } ) => {
140
151
  const blockPreviewProps = useBlockPreview( {
@@ -142,7 +153,7 @@ const CommentTemplatePreview = ( {
142
153
  } );
143
154
 
144
155
  const handleOnClick = () => {
145
- setActiveComment( comment );
156
+ setActiveCommentId( commentId );
146
157
  };
147
158
 
148
159
  // We have to hide the preview block if the `comment` props points to
@@ -172,35 +183,44 @@ const MemoizedCommentTemplatePreview = memo( CommentTemplatePreview );
172
183
  /**
173
184
  * Component that renders a list of (nested) comments. It is called recursively.
174
185
  *
175
- * @param {Object} props Component props.
176
- * @param {Array} [props.comments] - Array of comment objects.
177
- * @param {Array} [props.blockProps] - Props from parent's `useBlockProps()`.
178
- * @param {Array} [props.activeComment] - The block that is currently active.
179
- * @param {Array} [props.setActiveComment] - The setter for activeComment.
180
- * @param {Array} [props.blocks] - Array of blocks returned from
181
- * getBlocks() in parent .
186
+ * @param {Object} props Component props.
187
+ * @param {Array} [props.comments] - Array of comment objects.
188
+ * @param {Array} [props.blockProps] - Props from parent's `useBlockProps()`.
189
+ * @param {Array} [props.activeCommentId] - The ID of the comment that is currently active.
190
+ * @param {Array} [props.setActiveCommentId] - The setter for activeCommentId.
191
+ * @param {Array} [props.blocks] - Array of blocks returned from getBlocks() in parent.
192
+ * @param {Object} [props.firstCommentId] - The ID of the first comment in the array of
193
+ * comment objects.
182
194
  * @return {WPElement} List of comments.
183
195
  */
184
196
  const CommentsList = ( {
185
197
  comments,
186
198
  blockProps,
187
- activeComment,
188
- setActiveComment,
199
+ activeCommentId,
200
+ setActiveCommentId,
189
201
  blocks,
202
+ firstCommentId,
190
203
  } ) => (
191
204
  <ol { ...blockProps }>
192
205
  { comments &&
193
- comments.map( ( comment, index ) => (
206
+ comments.map( ( { commentId, ...comment }, index ) => (
194
207
  <BlockContextProvider
195
208
  key={ comment.commentId || index }
196
- value={ comment }
209
+ value={ {
210
+ // If the commentId is negative it means that this comment is a
211
+ // "placeholder" and that the block is most likely being used in the
212
+ // site editor. In this case, we have to set the commentId to `null`
213
+ // because otherwise the (non-existent) comment with a negative ID
214
+ // would be reqested from the REST API.
215
+ commentId: commentId < 0 ? null : commentId,
216
+ } }
197
217
  >
198
218
  <CommentTemplateInnerBlocks
199
- comment={ comment }
200
- activeComment={ activeComment }
201
- setActiveComment={ setActiveComment }
219
+ comment={ { commentId, ...comment } }
220
+ activeCommentId={ activeCommentId }
221
+ setActiveCommentId={ setActiveCommentId }
202
222
  blocks={ blocks }
203
- firstComment={ comments[ 0 ] }
223
+ firstCommentId={ firstCommentId }
204
224
  />
205
225
  </BlockContextProvider>
206
226
  ) ) }
@@ -209,29 +229,23 @@ const CommentsList = ( {
209
229
 
210
230
  export default function CommentTemplateEdit( {
211
231
  clientId,
212
- context: {
213
- postId,
214
- 'comments/perPage': perPage,
215
- 'comments/order': order,
216
- 'comments/defaultPage': defaultPage,
217
- 'comments/inherit': inherit,
218
- },
232
+ context: { postId },
219
233
  } ) {
220
234
  const blockProps = useBlockProps();
221
235
 
222
- const [ activeComment, setActiveComment ] = useState();
223
- const { commentOrder, threadCommentsDepth, threadComments } = useSelect(
224
- ( select ) => {
225
- const { getSettings } = select( blockEditorStore );
226
- return getSettings().__experimentalDiscussionSettings;
227
- }
228
- );
236
+ const [ activeCommentId, setActiveCommentId ] = useState();
237
+ const {
238
+ commentOrder,
239
+ threadCommentsDepth,
240
+ threadComments,
241
+ commentsPerPage,
242
+ } = useSelect( ( select ) => {
243
+ const { getSettings } = select( blockEditorStore );
244
+ return getSettings().__experimentalDiscussionSettings;
245
+ } );
229
246
 
230
247
  const commentQuery = useCommentQueryArgs( {
231
248
  postId,
232
- perPage,
233
- defaultPage,
234
- inherit,
235
249
  } );
236
250
 
237
251
  const { topLevelComments, blocks } = useSelect(
@@ -250,12 +264,10 @@ export default function CommentTemplateEdit( {
250
264
  [ clientId, commentQuery ]
251
265
  );
252
266
 
253
- order = inherit || ! order ? commentOrder : order;
254
-
255
267
  // Generate a tree structure of comment IDs.
256
268
  let commentTree = useCommentTree(
257
269
  // Reverse the order of top comments if needed.
258
- order === 'desc' && topLevelComments
270
+ commentOrder === 'desc' && topLevelComments
259
271
  ? [ ...topLevelComments ].reverse()
260
272
  : topLevelComments
261
273
  );
@@ -270,7 +282,7 @@ export default function CommentTemplateEdit( {
270
282
 
271
283
  if ( ! postId ) {
272
284
  commentTree = getCommentsPlaceholder( {
273
- perPage,
285
+ perPage: commentsPerPage,
274
286
  threadComments,
275
287
  threadCommentsDepth,
276
288
  } );
@@ -285,8 +297,9 @@ export default function CommentTemplateEdit( {
285
297
  comments={ commentTree }
286
298
  blockProps={ blockProps }
287
299
  blocks={ blocks }
288
- activeComment={ activeComment }
289
- setActiveComment={ setActiveComment }
300
+ activeCommentId={ activeCommentId }
301
+ setActiveCommentId={ setActiveCommentId }
302
+ firstCommentId={ commentTree[ 0 ]?.commentId }
290
303
  />
291
304
  );
292
305
  }
@@ -11,21 +11,13 @@ import apiFetch from '@wordpress/api-fetch';
11
11
  * Return an object with the query args needed to fetch the default page of
12
12
  * comments.
13
13
  *
14
- * @param {Object} props Hook props.
15
- * @param {number} props.postId ID of the post that contains the comments.
16
- * @param {number} props.perPage The number of comments included per page.
17
- * @param {string} props.defaultPage Page shown by default (newest/oldest).
18
- * @param {boolean} props.inherit Overwrite props with values from WP
19
- * discussion settings.
14
+ * @param {Object} props Hook props.
15
+ * @param {number} props.postId ID of the post that contains the comments.
16
+ * discussion settings.
20
17
  *
21
18
  * @return {Object} Query args to retrieve the comments.
22
19
  */
23
- export const useCommentQueryArgs = ( {
24
- postId,
25
- perPage,
26
- defaultPage,
27
- inherit,
28
- } ) => {
20
+ export const useCommentQueryArgs = ( { postId } ) => {
29
21
  // Initialize the query args that are not going to change.
30
22
  const queryArgs = {
31
23
  status: 'approve',
@@ -36,23 +28,15 @@ export const useCommentQueryArgs = ( {
36
28
  };
37
29
 
38
30
  // Get the Discussion settings that may be needed to query the comments.
39
- const { commentsPerPage, defaultCommentsPage } = useSelect( ( select ) => {
31
+ const {
32
+ commentsPerPage: perPage,
33
+ defaultCommentsPage: defaultPage,
34
+ } = useSelect( ( select ) => {
40
35
  const { getSettings } = select( blockEditorStore );
41
36
  const { __experimentalDiscussionSettings } = getSettings();
42
37
  return __experimentalDiscussionSettings;
43
38
  } );
44
39
 
45
- // Overwrite the received attributes if `inherit` is true.
46
- if ( inherit ) {
47
- perPage = commentsPerPage;
48
- defaultPage = defaultCommentsPage;
49
- }
50
-
51
- // If a block props is not set, use the settings value to generate the
52
- // appropriate query arg.
53
- perPage = perPage || commentsPerPage;
54
- defaultPage = defaultPage || defaultCommentsPage;
55
-
56
40
  // Get the number of the default page.
57
41
  const page = useDefaultPageIndex( {
58
42
  defaultPage,
@@ -68,9 +68,7 @@ function render_block_core_comment_template( $attributes, $content, $block ) {
68
68
  return '';
69
69
  }
70
70
 
71
- $comment_order = empty( $block->context['comments/inherit'] ) && ! empty( $block->context['comments/order'] )
72
- ? $block->context['comments/order']
73
- : get_option( 'comment_order' );
71
+ $comment_order = get_option( 'comment_order' );
74
72
 
75
73
  if ( 'desc' === $comment_order ) {
76
74
  $comments = array_reverse( $comments );
@@ -5,21 +5,14 @@
5
5
  "title": "Next Page",
6
6
  "category": "theme",
7
7
  "parent": [ "core/comments-pagination" ],
8
- "description": "Displays the next comments page link.",
8
+ "description": "Displays the next comment's page link.",
9
9
  "textdomain": "default",
10
10
  "attributes": {
11
11
  "label": {
12
12
  "type": "string"
13
13
  }
14
14
  },
15
- "usesContext": [
16
- "postId",
17
- "comments/perPage",
18
- "comments/order",
19
- "comments/inherit",
20
- "comments/defaultPage",
21
- "comments/paginationArrow"
22
- ],
15
+ "usesContext": [ "postId", "comments/paginationArrow" ],
23
16
  "supports": {
24
17
  "reusable": false,
25
18
  "html": false,
@@ -3,17 +3,11 @@
3
3
  "apiVersion": 2,
4
4
  "name": "core/comments-pagination-numbers",
5
5
  "title": "Page Numbers",
6
- "category": "theme",
6
+ "category": "theme",
7
7
  "parent": [ "core/comments-pagination" ],
8
8
  "description": "Displays a list of page numbers for comments pagination.",
9
9
  "textdomain": "default",
10
- "usesContext": [
11
- "postId",
12
- "comments/perPage",
13
- "comments/order",
14
- "comments/inherit",
15
- "comments/defaultPage"
16
- ],
10
+ "usesContext": [ "postId" ],
17
11
  "supports": {
18
12
  "reusable": false,
19
13
  "html": false
@@ -5,7 +5,7 @@
5
5
  "title": "Previous Page",
6
6
  "category": "theme",
7
7
  "parent": [ "core/comments-pagination" ],
8
- "description": "Displays the previous comments page link.",
8
+ "description": "Displays the previous comment's page link.",
9
9
  "textdomain": "default",
10
10
  "attributes": {
11
11
  "label": {
@@ -35,4 +35,4 @@
35
35
  }
36
36
  }
37
37
  }
38
- }
38
+ }
@@ -4,36 +4,14 @@
4
4
  "name": "core/comments-query-loop",
5
5
  "title": "Comments Query Loop",
6
6
  "category": "theme",
7
- "description": "An advanced block that allows displaying post comments based on different query parameters and visual configurations.",
7
+ "description": "An advanced block that allows displaying post comments using different visual configurations.",
8
8
  "textdomain": "default",
9
9
  "attributes": {
10
- "inherit": {
11
- "type": "boolean",
12
- "default": true
13
- },
14
- "order": {
15
- "type": "string",
16
- "default": null
17
- },
18
- "perPage": {
19
- "type": "number",
20
- "default": null
21
- },
22
10
  "tagName": {
23
11
  "type": "string",
24
12
  "default": "div"
25
- },
26
- "defaultPage": {
27
- "type": "string",
28
- "default": "oldest"
29
13
  }
30
14
  },
31
- "providesContext": {
32
- "comments/perPage": "perPage",
33
- "comments/order": "order",
34
- "comments/defaultPage": "defaultPage",
35
- "comments/inherit": "inherit"
36
- },
37
15
  "supports": {
38
16
  "align": [ "wide", "full" ],
39
17
  "html": false,
@@ -1,97 +1,16 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import {
5
- PanelBody,
6
- SelectControl,
7
- ToggleControl,
8
- __experimentalNumberControl as NumberControl,
9
- } from '@wordpress/components';
4
+ import { SelectControl } from '@wordpress/components';
10
5
  import { __ } from '@wordpress/i18n';
11
6
  import { InspectorControls } from '@wordpress/block-editor';
12
7
 
13
- const orderOptions = [
14
- {
15
- label: __( 'Newest to oldest' ),
16
- value: 'desc',
17
- },
18
- {
19
- label: __( 'Oldest to newest' ),
20
- value: 'asc',
21
- },
22
- ];
23
-
24
- const defaultPageOptions = [
25
- {
26
- label: __( 'Newest' ),
27
- value: 'newest',
28
- },
29
- {
30
- label: __( 'Oldest' ),
31
- value: 'oldest',
32
- },
33
- ];
34
-
35
8
  export default function CommentsInspectorControls( {
36
- attributes: { TagName, perPage, order, inherit, defaultPage },
9
+ attributes: { TagName },
37
10
  setAttributes,
38
11
  } ) {
39
12
  return (
40
13
  <InspectorControls>
41
- <PanelBody title={ __( 'Settings' ) }>
42
- <ToggleControl
43
- label={ __( 'Inherit from Discussion Settings' ) }
44
- checked={ inherit }
45
- onChange={ () => {
46
- setAttributes( {
47
- inherit: ! inherit,
48
- } );
49
- } }
50
- />
51
- { ! inherit && (
52
- <>
53
- <SelectControl
54
- label={ __( 'Order by' ) }
55
- value={ order }
56
- options={ orderOptions }
57
- onChange={ ( value ) => {
58
- setAttributes( {
59
- order: value,
60
- } );
61
- } }
62
- />
63
- <SelectControl
64
- label={ __( 'Default page' ) }
65
- value={ defaultPage }
66
- options={ defaultPageOptions }
67
- onChange={ ( value ) => {
68
- setAttributes( {
69
- defaultPage: value,
70
- } );
71
- } }
72
- />
73
- <NumberControl
74
- __unstableInputWidth="60px"
75
- label={ __( 'Items per Page' ) }
76
- labelPosition="edge"
77
- min={ 1 }
78
- max={ 100 }
79
- onChange={ ( value ) => {
80
- const num = parseInt( value, 10 );
81
- if ( isNaN( num ) || num < 1 || num > 100 ) {
82
- return;
83
- }
84
- setAttributes( {
85
- perPage: num,
86
- } );
87
- } }
88
- step="1"
89
- value={ perPage }
90
- isDragEnabled={ false }
91
- />
92
- </>
93
- ) }
94
- </PanelBody>
95
14
  <InspectorControls __experimentalGroup="advanced">
96
15
  <SelectControl
97
16
  label={ __( 'HTML element' ) }
@@ -9,7 +9,60 @@ import { useBlockProps, useInnerBlocksProps } from '@wordpress/block-editor';
9
9
  import CommentsInspectorControls from './edit/comments-inspector-controls';
10
10
 
11
11
  const TEMPLATE = [
12
- [ 'core/comment-template' ],
12
+ [
13
+ 'core/comment-template',
14
+ {},
15
+ [
16
+ [
17
+ 'core/columns',
18
+ {},
19
+ [
20
+ [
21
+ 'core/column',
22
+ { width: '40px' },
23
+ [
24
+ [
25
+ 'core/avatar',
26
+ {
27
+ size: 40,
28
+ style: {
29
+ border: { radius: '20px' },
30
+ },
31
+ },
32
+ ],
33
+ ],
34
+ ],
35
+ [
36
+ 'core/column',
37
+ {},
38
+ [
39
+ [ 'core/comment-author-name' ],
40
+ [
41
+ 'core/group',
42
+ {
43
+ layout: { type: 'flex' },
44
+ style: {
45
+ spacing: {
46
+ margin: {
47
+ top: '0px',
48
+ bottom: '0px',
49
+ },
50
+ },
51
+ },
52
+ },
53
+ [
54
+ [ 'core/comment-date' ],
55
+ [ 'core/comment-edit-link' ],
56
+ ],
57
+ ],
58
+ [ 'core/comment-content' ],
59
+ [ 'core/comment-reply-link' ],
60
+ ],
61
+ ],
62
+ ],
63
+ ],
64
+ ],
65
+ ],
13
66
  [ 'core/comments-pagination' ],
14
67
  ];
15
68
 
@@ -10,6 +10,10 @@
10
10
  "url": {
11
11
  "type": "string"
12
12
  },
13
+ "useFeaturedImage": {
14
+ "type": "boolean",
15
+ "default": false
16
+ },
13
17
  "id": {
14
18
  "type": "number"
15
19
  },
@@ -72,6 +76,7 @@
72
76
  "enum": [ "all", "insert", false ]
73
77
  }
74
78
  },
79
+ "usesContext": [ "postId", "postType" ],
75
80
  "supports": {
76
81
  "anchor": true,
77
82
  "align": true,