@wordpress/block-library 9.16.0 → 9.18.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 (660) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/archives/edit.js +2 -2
  3. package/build/archives/edit.js.map +1 -1
  4. package/build/archives/index.js +9 -0
  5. package/build/archives/index.js.map +1 -1
  6. package/build/avatar/user-control.js +0 -1
  7. package/build/avatar/user-control.js.map +1 -1
  8. package/build/block/deprecated.js +0 -1
  9. package/build/block/deprecated.js.map +1 -1
  10. package/build/block/edit.js +0 -1
  11. package/build/block/edit.js.map +1 -1
  12. package/build/button/deprecated.js +0 -1
  13. package/build/button/deprecated.js.map +1 -1
  14. package/build/buttons/transforms.js +0 -1
  15. package/build/buttons/transforms.js.map +1 -1
  16. package/build/categories/edit.js +115 -38
  17. package/build/categories/edit.js.map +1 -1
  18. package/build/categories/index.js +9 -0
  19. package/build/categories/index.js.map +1 -1
  20. package/build/column/column-preview.native.js +0 -1
  21. package/build/column/column-preview.native.js.map +1 -1
  22. package/build/columns/columnCalculations.native.js +0 -1
  23. package/build/columns/columnCalculations.native.js.map +1 -1
  24. package/build/columns/deprecated.js +0 -1
  25. package/build/columns/deprecated.js.map +1 -1
  26. package/build/columns/edit.js +0 -1
  27. package/build/columns/edit.js.map +1 -1
  28. package/build/columns/edit.native.js +0 -1
  29. package/build/columns/edit.native.js.map +1 -1
  30. package/build/columns/transforms.js +0 -1
  31. package/build/columns/transforms.js.map +1 -1
  32. package/build/columns/utils.js +0 -1
  33. package/build/columns/utils.js.map +1 -1
  34. package/build/comment-template/edit.js +0 -1
  35. package/build/comment-template/edit.js.map +1 -1
  36. package/build/comment-template/hooks.js +0 -1
  37. package/build/comment-template/hooks.js.map +1 -1
  38. package/build/comment-template/util.js +0 -1
  39. package/build/comment-template/util.js.map +1 -1
  40. package/build/comments/edit/comments-inspector-controls.js +6 -5
  41. package/build/comments/edit/comments-inspector-controls.js.map +1 -1
  42. package/build/comments-pagination/index.js +5 -0
  43. package/build/comments-pagination/index.js.map +1 -1
  44. package/build/cover/edit/inspector-controls.js +2 -9
  45. package/build/cover/edit/inspector-controls.js.map +1 -1
  46. package/build/details/edit.js +16 -2
  47. package/build/details/edit.js.map +1 -1
  48. package/build/details/index.js +9 -0
  49. package/build/details/index.js.map +1 -1
  50. package/build/details/save.js +2 -0
  51. package/build/details/save.js.map +1 -1
  52. package/build/details/transforms.js +0 -1
  53. package/build/details/transforms.js.map +1 -1
  54. package/build/embed/embed-placeholder.native.js +0 -1
  55. package/build/embed/embed-placeholder.native.js.map +1 -1
  56. package/build/embed/transforms.js +5 -2
  57. package/build/embed/transforms.js.map +1 -1
  58. package/build/embed/util.js +0 -1
  59. package/build/embed/util.js.map +1 -1
  60. package/build/embed/variations.js +0 -1
  61. package/build/embed/variations.js.map +1 -1
  62. package/build/embed/wp-embed-preview.js +0 -1
  63. package/build/embed/wp-embed-preview.js.map +1 -1
  64. package/build/file/transforms.js +0 -1
  65. package/build/file/transforms.js.map +1 -1
  66. package/build/footnotes/edit.js +0 -1
  67. package/build/footnotes/edit.js.map +1 -1
  68. package/build/form/variations.js +1 -1
  69. package/build/form/variations.js.map +1 -1
  70. package/build/freeform/modal.js +0 -1
  71. package/build/freeform/modal.js.map +1 -1
  72. package/build/gallery/deprecated.js +0 -1
  73. package/build/gallery/deprecated.js.map +1 -1
  74. package/build/gallery/edit.js +0 -1
  75. package/build/gallery/edit.js.map +1 -1
  76. package/build/gallery/shared.js +0 -1
  77. package/build/gallery/shared.js.map +1 -1
  78. package/build/gallery/transforms.js +0 -1
  79. package/build/gallery/transforms.js.map +1 -1
  80. package/build/gallery/use-get-media.js +0 -1
  81. package/build/gallery/use-get-media.js.map +1 -1
  82. package/build/gallery/use-get-media.native.js +0 -1
  83. package/build/gallery/use-get-media.native.js.map +1 -1
  84. package/build/gallery/use-get-new-images.js +0 -1
  85. package/build/gallery/use-get-new-images.js.map +1 -1
  86. package/build/gallery/use-image-sizes.js +0 -1
  87. package/build/gallery/use-image-sizes.js.map +1 -1
  88. package/build/group/edit.js +2 -9
  89. package/build/group/edit.js.map +1 -1
  90. package/build/group/placeholder.js +0 -1
  91. package/build/group/placeholder.js.map +1 -1
  92. package/build/group/transforms.js +0 -1
  93. package/build/group/transforms.js.map +1 -1
  94. package/build/heading/transforms.js +0 -1
  95. package/build/heading/transforms.js.map +1 -1
  96. package/build/home-link/edit.js +1 -2
  97. package/build/home-link/edit.js.map +1 -1
  98. package/build/html/preview.js +0 -1
  99. package/build/html/preview.js.map +1 -1
  100. package/build/image/edit.js +0 -1
  101. package/build/image/edit.js.map +1 -1
  102. package/build/image/edit.native.js +0 -1
  103. package/build/image/edit.native.js.map +1 -1
  104. package/build/image/image.js +0 -1
  105. package/build/image/image.js.map +1 -1
  106. package/build/image/transforms.js +0 -1
  107. package/build/image/transforms.js.map +1 -1
  108. package/build/image/utils.js +0 -1
  109. package/build/image/utils.js.map +1 -1
  110. package/build/index.native.js +0 -1
  111. package/build/index.native.js.map +1 -1
  112. package/build/latest-comments/edit.js +73 -26
  113. package/build/latest-comments/edit.js.map +1 -1
  114. package/build/latest-posts/constants.js +2 -1
  115. package/build/latest-posts/constants.js.map +1 -1
  116. package/build/latest-posts/edit.js +91 -39
  117. package/build/latest-posts/edit.js.map +1 -1
  118. package/build/list/transforms.js +0 -1
  119. package/build/list/transforms.js.map +1 -1
  120. package/build/list/utils.js +0 -1
  121. package/build/list/utils.js.map +1 -1
  122. package/build/list-item/hooks/use-indent-list-item.js +0 -1
  123. package/build/list-item/hooks/use-indent-list-item.js.map +1 -1
  124. package/build/list-item/index.js +1 -1
  125. package/build/list-item/transforms.js +0 -1
  126. package/build/list-item/transforms.js.map +1 -1
  127. package/build/media-text/edit.js +0 -1
  128. package/build/media-text/edit.js.map +1 -1
  129. package/build/more/save.js +0 -1
  130. package/build/more/save.js.map +1 -1
  131. package/build/navigation/deprecated.js +0 -1
  132. package/build/navigation/deprecated.js.map +1 -1
  133. package/build/navigation/edit/index.js +0 -1
  134. package/build/navigation/edit/index.js.map +1 -1
  135. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -4
  136. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  137. package/build/navigation/edit/use-generate-default-navigation-title.js +4 -5
  138. package/build/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
  139. package/build/navigation/menu-items-to-blocks.js +0 -1
  140. package/build/navigation/menu-items-to-blocks.js.map +1 -1
  141. package/build/navigation/use-template-part-area-label.js +0 -1
  142. package/build/navigation/use-template-part-area-label.js.map +1 -1
  143. package/build/navigation/view.js +0 -1
  144. package/build/navigation/view.js.map +1 -1
  145. package/build/navigation-link/edit.js +14 -19
  146. package/build/navigation-link/edit.js.map +1 -1
  147. package/build/navigation-link/hooks.js +0 -1
  148. package/build/navigation-link/hooks.js.map +1 -1
  149. package/build/navigation-submenu/index.js +7 -0
  150. package/build/navigation-submenu/index.js.map +1 -1
  151. package/build/page-list/edit.js +1 -2
  152. package/build/page-list/edit.js.map +1 -1
  153. package/build/page-list/use-convert-to-navigation-links.js +0 -1
  154. package/build/page-list/use-convert-to-navigation-links.js.map +1 -1
  155. package/build/paragraph/edit.js +4 -14
  156. package/build/paragraph/edit.js.map +1 -1
  157. package/build/pattern/edit.js +0 -1
  158. package/build/pattern/edit.js.map +1 -1
  159. package/build/pattern/index.js +1 -1
  160. package/build/post-author/edit.js +0 -1
  161. package/build/post-author/edit.js.map +1 -1
  162. package/build/post-content/index.js +1 -0
  163. package/build/post-content/index.js.map +1 -1
  164. package/build/post-date/edit.js +1 -1
  165. package/build/post-date/edit.js.map +1 -1
  166. package/build/post-featured-image/dimension-controls.js +2 -39
  167. package/build/post-featured-image/dimension-controls.js.map +1 -1
  168. package/build/post-featured-image/edit.js +45 -9
  169. package/build/post-featured-image/edit.js.map +1 -1
  170. package/build/post-navigation-link/edit.js +0 -1
  171. package/build/post-navigation-link/edit.js.map +1 -1
  172. package/build/post-navigation-link/variations.js +2 -3
  173. package/build/post-navigation-link/variations.js.map +1 -1
  174. package/build/post-template/edit.js +14 -7
  175. package/build/post-template/edit.js.map +1 -1
  176. package/build/post-terms/edit.js +1 -1
  177. package/build/post-terms/edit.js.map +1 -1
  178. package/build/post-terms/hooks.js +0 -1
  179. package/build/post-terms/hooks.js.map +1 -1
  180. package/build/post-time-to-read/index.js +1 -1
  181. package/build/pullquote/blockquote.native.js +0 -1
  182. package/build/pullquote/blockquote.native.js.map +1 -1
  183. package/build/pullquote/transforms.js +0 -1
  184. package/build/pullquote/transforms.js.map +1 -1
  185. package/build/query/deprecated.js +0 -1
  186. package/build/query/deprecated.js.map +1 -1
  187. package/build/query/edit/inspector-controls/author-control.js +0 -1
  188. package/build/query/edit/inspector-controls/author-control.js.map +1 -1
  189. package/build/query/edit/inspector-controls/format-controls.js +0 -1
  190. package/build/query/edit/inspector-controls/format-controls.js.map +1 -1
  191. package/build/query/edit/inspector-controls/index.js +0 -1
  192. package/build/query/edit/inspector-controls/index.js.map +1 -1
  193. package/build/query/edit/inspector-controls/parent-control.js +0 -1
  194. package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
  195. package/build/query/edit/inspector-controls/sticky-control.js +3 -0
  196. package/build/query/edit/inspector-controls/sticky-control.js.map +1 -1
  197. package/build/query/edit/inspector-controls/taxonomy-controls.js +0 -1
  198. package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  199. package/build/query/edit/query-content.js +2 -6
  200. package/build/query/edit/query-content.js.map +1 -1
  201. package/build/query/utils.js +0 -1
  202. package/build/query/utils.js.map +1 -1
  203. package/build/query-no-results/index.js +1 -1
  204. package/build/query-pagination-numbers/edit.js +1 -1
  205. package/build/query-pagination-numbers/edit.js.map +1 -1
  206. package/build/query-title/edit.js +1 -0
  207. package/build/query-title/edit.js.map +1 -1
  208. package/build/query-title/variations.js +0 -1
  209. package/build/query-title/variations.js.map +1 -1
  210. package/build/quote/deprecated.js +0 -1
  211. package/build/quote/deprecated.js.map +1 -1
  212. package/build/quote/transforms.js +0 -1
  213. package/build/quote/transforms.js.map +1 -1
  214. package/build/read-more/edit.js +25 -7
  215. package/build/read-more/edit.js.map +1 -1
  216. package/build/rss/edit.js +15 -1
  217. package/build/rss/edit.js.map +1 -1
  218. package/build/rss/index.js +14 -0
  219. package/build/rss/index.js.map +1 -1
  220. package/build/search/edit.js +67 -49
  221. package/build/search/edit.js.map +1 -1
  222. package/build/separator/edit.js +2 -4
  223. package/build/separator/edit.js.map +1 -1
  224. package/build/social-link/icons/discord.js +23 -0
  225. package/build/social-link/icons/discord.js.map +1 -0
  226. package/build/social-link/icons/index.js +11 -0
  227. package/build/social-link/icons/index.js.map +1 -1
  228. package/build/social-link/social-list.js +0 -1
  229. package/build/social-link/social-list.js.map +1 -1
  230. package/build/social-link/variations.js +7 -1
  231. package/build/social-link/variations.js.map +1 -1
  232. package/build/social-links/edit.js +0 -1
  233. package/build/social-links/edit.js.map +1 -1
  234. package/build/social-links/edit.native.js +0 -1
  235. package/build/social-links/edit.native.js.map +1 -1
  236. package/build/spacer/controls.js +13 -10
  237. package/build/spacer/controls.js.map +1 -1
  238. package/build/spacer/edit.js +23 -21
  239. package/build/spacer/edit.js.map +1 -1
  240. package/build/table/deprecated.js +0 -1
  241. package/build/table/deprecated.js.map +1 -1
  242. package/build/table/edit.js +0 -1
  243. package/build/table/edit.js.map +1 -1
  244. package/build/table/save.js +0 -1
  245. package/build/table/save.js.map +1 -1
  246. package/build/table/state.js +0 -1
  247. package/build/table/state.js.map +1 -1
  248. package/build/table/transforms.js +0 -1
  249. package/build/table/transforms.js.map +1 -1
  250. package/build/table-of-contents/list.js +0 -1
  251. package/build/table-of-contents/list.js.map +1 -1
  252. package/build/table-of-contents/utils.js +0 -1
  253. package/build/table-of-contents/utils.js.map +1 -1
  254. package/build/tag-cloud/edit.js +0 -1
  255. package/build/tag-cloud/edit.js.map +1 -1
  256. package/build/template-part/edit/advanced-controls.js +2 -10
  257. package/build/template-part/edit/advanced-controls.js.map +1 -1
  258. package/build/template-part/edit/import-controls.js +0 -1
  259. package/build/template-part/edit/import-controls.js.map +1 -1
  260. package/build/template-part/edit/selection-modal.js +0 -1
  261. package/build/template-part/edit/selection-modal.js.map +1 -1
  262. package/build/template-part/edit/utils/hooks.js +0 -1
  263. package/build/template-part/edit/utils/hooks.js.map +1 -1
  264. package/build/template-part/edit/utils/transformers.js +0 -1
  265. package/build/template-part/edit/utils/transformers.js.map +1 -1
  266. package/build/template-part/variations.js +0 -1
  267. package/build/template-part/variations.js.map +1 -1
  268. package/build/text-columns/edit.js +0 -1
  269. package/build/text-columns/edit.js.map +1 -1
  270. package/build/text-columns/save.js +0 -1
  271. package/build/text-columns/save.js.map +1 -1
  272. package/build/text-columns/transforms.js +0 -1
  273. package/build/text-columns/transforms.js.map +1 -1
  274. package/build/utils/get-transformed-metadata.js +0 -1
  275. package/build/utils/get-transformed-metadata.js.map +1 -1
  276. package/build/utils/messages.js +22 -0
  277. package/build/utils/messages.js.map +1 -0
  278. package/build/utils/search-patterns.js +0 -1
  279. package/build/utils/search-patterns.js.map +1 -1
  280. package/build/utils/transformation-categories.native.js +0 -1
  281. package/build/utils/transformation-categories.native.js.map +1 -1
  282. package/build/video/edit-common-settings.js +1 -1
  283. package/build/video/edit-common-settings.js.map +1 -1
  284. package/build/video/tracks-editor.js +0 -1
  285. package/build/video/tracks-editor.js.map +1 -1
  286. package/build/video/tracks.js +0 -1
  287. package/build/video/tracks.js.map +1 -1
  288. package/build-module/archives/edit.js +2 -2
  289. package/build-module/archives/edit.js.map +1 -1
  290. package/build-module/archives/index.js +9 -0
  291. package/build-module/archives/index.js.map +1 -1
  292. package/build-module/avatar/user-control.js +0 -1
  293. package/build-module/avatar/user-control.js.map +1 -1
  294. package/build-module/block/deprecated.js +0 -1
  295. package/build-module/block/deprecated.js.map +1 -1
  296. package/build-module/block/edit.js +0 -1
  297. package/build-module/block/edit.js.map +1 -1
  298. package/build-module/button/deprecated.js +0 -1
  299. package/build-module/button/deprecated.js.map +1 -1
  300. package/build-module/buttons/transforms.js +0 -1
  301. package/build-module/buttons/transforms.js.map +1 -1
  302. package/build-module/categories/edit.js +116 -39
  303. package/build-module/categories/edit.js.map +1 -1
  304. package/build-module/categories/index.js +9 -0
  305. package/build-module/categories/index.js.map +1 -1
  306. package/build-module/column/column-preview.native.js +0 -1
  307. package/build-module/column/column-preview.native.js.map +1 -1
  308. package/build-module/columns/columnCalculations.native.js +0 -1
  309. package/build-module/columns/columnCalculations.native.js.map +1 -1
  310. package/build-module/columns/deprecated.js +0 -1
  311. package/build-module/columns/deprecated.js.map +1 -1
  312. package/build-module/columns/edit.js +0 -1
  313. package/build-module/columns/edit.js.map +1 -1
  314. package/build-module/columns/edit.native.js +0 -1
  315. package/build-module/columns/edit.native.js.map +1 -1
  316. package/build-module/columns/transforms.js +0 -1
  317. package/build-module/columns/transforms.js.map +1 -1
  318. package/build-module/columns/utils.js +0 -1
  319. package/build-module/columns/utils.js.map +1 -1
  320. package/build-module/comment-template/edit.js +0 -1
  321. package/build-module/comment-template/edit.js.map +1 -1
  322. package/build-module/comment-template/hooks.js +0 -1
  323. package/build-module/comment-template/hooks.js.map +1 -1
  324. package/build-module/comment-template/util.js +0 -1
  325. package/build-module/comment-template/util.js.map +1 -1
  326. package/build-module/comments/edit/comments-inspector-controls.js +5 -4
  327. package/build-module/comments/edit/comments-inspector-controls.js.map +1 -1
  328. package/build-module/comments-pagination/index.js +5 -0
  329. package/build-module/comments-pagination/index.js.map +1 -1
  330. package/build-module/cover/edit/inspector-controls.js +1 -8
  331. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  332. package/build-module/details/edit.js +17 -3
  333. package/build-module/details/edit.js.map +1 -1
  334. package/build-module/details/index.js +9 -0
  335. package/build-module/details/index.js.map +1 -1
  336. package/build-module/details/save.js +2 -0
  337. package/build-module/details/save.js.map +1 -1
  338. package/build-module/details/transforms.js +0 -1
  339. package/build-module/details/transforms.js.map +1 -1
  340. package/build-module/embed/embed-placeholder.native.js +0 -1
  341. package/build-module/embed/embed-placeholder.native.js.map +1 -1
  342. package/build-module/embed/transforms.js +5 -2
  343. package/build-module/embed/transforms.js.map +1 -1
  344. package/build-module/embed/util.js +0 -1
  345. package/build-module/embed/util.js.map +1 -1
  346. package/build-module/embed/variations.js +0 -1
  347. package/build-module/embed/variations.js.map +1 -1
  348. package/build-module/embed/wp-embed-preview.js +0 -1
  349. package/build-module/embed/wp-embed-preview.js.map +1 -1
  350. package/build-module/file/transforms.js +0 -1
  351. package/build-module/file/transforms.js.map +1 -1
  352. package/build-module/footnotes/edit.js +0 -1
  353. package/build-module/footnotes/edit.js.map +1 -1
  354. package/build-module/form/variations.js +1 -1
  355. package/build-module/form/variations.js.map +1 -1
  356. package/build-module/freeform/modal.js +0 -1
  357. package/build-module/freeform/modal.js.map +1 -1
  358. package/build-module/gallery/deprecated.js +0 -1
  359. package/build-module/gallery/deprecated.js.map +1 -1
  360. package/build-module/gallery/edit.js +0 -1
  361. package/build-module/gallery/edit.js.map +1 -1
  362. package/build-module/gallery/shared.js +0 -1
  363. package/build-module/gallery/shared.js.map +1 -1
  364. package/build-module/gallery/transforms.js +0 -1
  365. package/build-module/gallery/transforms.js.map +1 -1
  366. package/build-module/gallery/use-get-media.js +0 -1
  367. package/build-module/gallery/use-get-media.js.map +1 -1
  368. package/build-module/gallery/use-get-media.native.js +0 -1
  369. package/build-module/gallery/use-get-media.native.js.map +1 -1
  370. package/build-module/gallery/use-get-new-images.js +0 -1
  371. package/build-module/gallery/use-get-new-images.js.map +1 -1
  372. package/build-module/gallery/use-image-sizes.js +0 -1
  373. package/build-module/gallery/use-image-sizes.js.map +1 -1
  374. package/build-module/group/edit.js +1 -8
  375. package/build-module/group/edit.js.map +1 -1
  376. package/build-module/group/placeholder.js +0 -1
  377. package/build-module/group/placeholder.js.map +1 -1
  378. package/build-module/group/transforms.js +0 -1
  379. package/build-module/group/transforms.js.map +1 -1
  380. package/build-module/heading/transforms.js +0 -1
  381. package/build-module/heading/transforms.js.map +1 -1
  382. package/build-module/home-link/edit.js +1 -2
  383. package/build-module/home-link/edit.js.map +1 -1
  384. package/build-module/html/preview.js +0 -1
  385. package/build-module/html/preview.js.map +1 -1
  386. package/build-module/image/edit.js +0 -1
  387. package/build-module/image/edit.js.map +1 -1
  388. package/build-module/image/edit.native.js +0 -1
  389. package/build-module/image/edit.native.js.map +1 -1
  390. package/build-module/image/image.js +0 -1
  391. package/build-module/image/image.js.map +1 -1
  392. package/build-module/image/transforms.js +0 -1
  393. package/build-module/image/transforms.js.map +1 -1
  394. package/build-module/image/utils.js +0 -1
  395. package/build-module/image/utils.js.map +1 -1
  396. package/build-module/index.native.js +0 -1
  397. package/build-module/index.native.js.map +1 -1
  398. package/build-module/latest-comments/edit.js +74 -27
  399. package/build-module/latest-comments/edit.js.map +1 -1
  400. package/build-module/latest-posts/constants.js +1 -0
  401. package/build-module/latest-posts/constants.js.map +1 -1
  402. package/build-module/latest-posts/edit.js +93 -41
  403. package/build-module/latest-posts/edit.js.map +1 -1
  404. package/build-module/list/transforms.js +0 -1
  405. package/build-module/list/transforms.js.map +1 -1
  406. package/build-module/list/utils.js +0 -1
  407. package/build-module/list/utils.js.map +1 -1
  408. package/build-module/list-item/hooks/use-indent-list-item.js +0 -1
  409. package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -1
  410. package/build-module/list-item/index.js +1 -1
  411. package/build-module/list-item/transforms.js +0 -1
  412. package/build-module/list-item/transforms.js.map +1 -1
  413. package/build-module/media-text/edit.js +0 -1
  414. package/build-module/media-text/edit.js.map +1 -1
  415. package/build-module/more/save.js +0 -1
  416. package/build-module/more/save.js.map +1 -1
  417. package/build-module/navigation/deprecated.js +0 -1
  418. package/build-module/navigation/deprecated.js.map +1 -1
  419. package/build-module/navigation/edit/index.js +0 -1
  420. package/build-module/navigation/edit/index.js.map +1 -1
  421. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -4
  422. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  423. package/build-module/navigation/edit/use-generate-default-navigation-title.js +4 -5
  424. package/build-module/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
  425. package/build-module/navigation/menu-items-to-blocks.js +0 -1
  426. package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
  427. package/build-module/navigation/use-template-part-area-label.js +0 -1
  428. package/build-module/navigation/use-template-part-area-label.js.map +1 -1
  429. package/build-module/navigation/view.js +0 -1
  430. package/build-module/navigation/view.js.map +1 -1
  431. package/build-module/navigation-link/edit.js +15 -20
  432. package/build-module/navigation-link/edit.js.map +1 -1
  433. package/build-module/navigation-link/hooks.js +0 -1
  434. package/build-module/navigation-link/hooks.js.map +1 -1
  435. package/build-module/navigation-submenu/index.js +7 -0
  436. package/build-module/navigation-submenu/index.js.map +1 -1
  437. package/build-module/page-list/edit.js +1 -2
  438. package/build-module/page-list/edit.js.map +1 -1
  439. package/build-module/page-list/use-convert-to-navigation-links.js +0 -1
  440. package/build-module/page-list/use-convert-to-navigation-links.js.map +1 -1
  441. package/build-module/paragraph/edit.js +5 -15
  442. package/build-module/paragraph/edit.js.map +1 -1
  443. package/build-module/pattern/edit.js +0 -1
  444. package/build-module/pattern/edit.js.map +1 -1
  445. package/build-module/pattern/index.js +1 -1
  446. package/build-module/post-author/edit.js +0 -1
  447. package/build-module/post-author/edit.js.map +1 -1
  448. package/build-module/post-content/index.js +1 -0
  449. package/build-module/post-content/index.js.map +1 -1
  450. package/build-module/post-date/edit.js +1 -1
  451. package/build-module/post-date/edit.js.map +1 -1
  452. package/build-module/post-featured-image/dimension-controls.js +3 -40
  453. package/build-module/post-featured-image/dimension-controls.js.map +1 -1
  454. package/build-module/post-featured-image/edit.js +46 -10
  455. package/build-module/post-featured-image/edit.js.map +1 -1
  456. package/build-module/post-navigation-link/edit.js +0 -1
  457. package/build-module/post-navigation-link/edit.js.map +1 -1
  458. package/build-module/post-navigation-link/variations.js +2 -3
  459. package/build-module/post-navigation-link/variations.js.map +1 -1
  460. package/build-module/post-template/edit.js +14 -7
  461. package/build-module/post-template/edit.js.map +1 -1
  462. package/build-module/post-terms/edit.js +1 -1
  463. package/build-module/post-terms/edit.js.map +1 -1
  464. package/build-module/post-terms/hooks.js +0 -1
  465. package/build-module/post-terms/hooks.js.map +1 -1
  466. package/build-module/post-time-to-read/index.js +1 -1
  467. package/build-module/pullquote/blockquote.native.js +0 -1
  468. package/build-module/pullquote/blockquote.native.js.map +1 -1
  469. package/build-module/pullquote/transforms.js +0 -1
  470. package/build-module/pullquote/transforms.js.map +1 -1
  471. package/build-module/query/deprecated.js +0 -1
  472. package/build-module/query/deprecated.js.map +1 -1
  473. package/build-module/query/edit/inspector-controls/author-control.js +0 -1
  474. package/build-module/query/edit/inspector-controls/author-control.js.map +1 -1
  475. package/build-module/query/edit/inspector-controls/format-controls.js +0 -1
  476. package/build-module/query/edit/inspector-controls/format-controls.js.map +1 -1
  477. package/build-module/query/edit/inspector-controls/index.js +0 -1
  478. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  479. package/build-module/query/edit/inspector-controls/parent-control.js +0 -1
  480. package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -1
  481. package/build-module/query/edit/inspector-controls/sticky-control.js +3 -0
  482. package/build-module/query/edit/inspector-controls/sticky-control.js.map +1 -1
  483. package/build-module/query/edit/inspector-controls/taxonomy-controls.js +0 -1
  484. package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  485. package/build-module/query/edit/query-content.js +1 -5
  486. package/build-module/query/edit/query-content.js.map +1 -1
  487. package/build-module/query/utils.js +0 -1
  488. package/build-module/query/utils.js.map +1 -1
  489. package/build-module/query-no-results/index.js +1 -1
  490. package/build-module/query-pagination-numbers/edit.js +1 -1
  491. package/build-module/query-pagination-numbers/edit.js.map +1 -1
  492. package/build-module/query-title/edit.js +1 -0
  493. package/build-module/query-title/edit.js.map +1 -1
  494. package/build-module/query-title/variations.js +0 -1
  495. package/build-module/query-title/variations.js.map +1 -1
  496. package/build-module/quote/deprecated.js +0 -1
  497. package/build-module/quote/deprecated.js.map +1 -1
  498. package/build-module/quote/transforms.js +0 -1
  499. package/build-module/quote/transforms.js.map +1 -1
  500. package/build-module/read-more/edit.js +26 -8
  501. package/build-module/read-more/edit.js.map +1 -1
  502. package/build-module/rss/edit.js +15 -1
  503. package/build-module/rss/edit.js.map +1 -1
  504. package/build-module/rss/index.js +14 -0
  505. package/build-module/rss/index.js.map +1 -1
  506. package/build-module/search/edit.js +68 -50
  507. package/build-module/search/edit.js.map +1 -1
  508. package/build-module/separator/edit.js +1 -3
  509. package/build-module/separator/edit.js.map +1 -1
  510. package/build-module/social-link/icons/discord.js +15 -0
  511. package/build-module/social-link/icons/discord.js.map +1 -0
  512. package/build-module/social-link/icons/index.js +1 -0
  513. package/build-module/social-link/icons/index.js.map +1 -1
  514. package/build-module/social-link/social-list.js +0 -1
  515. package/build-module/social-link/social-list.js.map +1 -1
  516. package/build-module/social-link/variations.js +8 -2
  517. package/build-module/social-link/variations.js.map +1 -1
  518. package/build-module/social-links/edit.js +0 -1
  519. package/build-module/social-links/edit.js.map +1 -1
  520. package/build-module/social-links/edit.native.js +0 -1
  521. package/build-module/social-links/edit.native.js.map +1 -1
  522. package/build-module/spacer/controls.js +13 -10
  523. package/build-module/spacer/controls.js.map +1 -1
  524. package/build-module/spacer/edit.js +24 -22
  525. package/build-module/spacer/edit.js.map +1 -1
  526. package/build-module/table/deprecated.js +0 -1
  527. package/build-module/table/deprecated.js.map +1 -1
  528. package/build-module/table/edit.js +0 -1
  529. package/build-module/table/edit.js.map +1 -1
  530. package/build-module/table/save.js +0 -1
  531. package/build-module/table/save.js.map +1 -1
  532. package/build-module/table/state.js +0 -1
  533. package/build-module/table/state.js.map +1 -1
  534. package/build-module/table/transforms.js +0 -1
  535. package/build-module/table/transforms.js.map +1 -1
  536. package/build-module/table-of-contents/list.js +0 -1
  537. package/build-module/table-of-contents/list.js.map +1 -1
  538. package/build-module/table-of-contents/utils.js +0 -1
  539. package/build-module/table-of-contents/utils.js.map +1 -1
  540. package/build-module/tag-cloud/edit.js +0 -1
  541. package/build-module/tag-cloud/edit.js.map +1 -1
  542. package/build-module/template-part/edit/advanced-controls.js +1 -9
  543. package/build-module/template-part/edit/advanced-controls.js.map +1 -1
  544. package/build-module/template-part/edit/import-controls.js +0 -1
  545. package/build-module/template-part/edit/import-controls.js.map +1 -1
  546. package/build-module/template-part/edit/selection-modal.js +0 -1
  547. package/build-module/template-part/edit/selection-modal.js.map +1 -1
  548. package/build-module/template-part/edit/utils/hooks.js +0 -1
  549. package/build-module/template-part/edit/utils/hooks.js.map +1 -1
  550. package/build-module/template-part/edit/utils/transformers.js +0 -1
  551. package/build-module/template-part/edit/utils/transformers.js.map +1 -1
  552. package/build-module/template-part/variations.js +0 -1
  553. package/build-module/template-part/variations.js.map +1 -1
  554. package/build-module/text-columns/edit.js +0 -1
  555. package/build-module/text-columns/edit.js.map +1 -1
  556. package/build-module/text-columns/save.js +0 -1
  557. package/build-module/text-columns/save.js.map +1 -1
  558. package/build-module/text-columns/transforms.js +0 -1
  559. package/build-module/text-columns/transforms.js.map +1 -1
  560. package/build-module/utils/get-transformed-metadata.js +0 -1
  561. package/build-module/utils/get-transformed-metadata.js.map +1 -1
  562. package/build-module/utils/messages.js +15 -0
  563. package/build-module/utils/messages.js.map +1 -0
  564. package/build-module/utils/search-patterns.js +0 -1
  565. package/build-module/utils/search-patterns.js.map +1 -1
  566. package/build-module/utils/transformation-categories.native.js +0 -1
  567. package/build-module/utils/transformation-categories.native.js.map +1 -1
  568. package/build-module/video/edit-common-settings.js +1 -1
  569. package/build-module/video/edit-common-settings.js.map +1 -1
  570. package/build-module/video/tracks-editor.js +0 -1
  571. package/build-module/video/tracks-editor.js.map +1 -1
  572. package/build-module/video/tracks.js +0 -1
  573. package/build-module/video/tracks.js.map +1 -1
  574. package/build-style/editor-rtl.css +17 -51
  575. package/build-style/editor.css +17 -51
  576. package/build-style/gallery/editor-rtl.css +0 -44
  577. package/build-style/gallery/editor.css +0 -44
  578. package/build-style/navigation-link/editor-rtl.css +3 -0
  579. package/build-style/navigation-link/editor.css +3 -0
  580. package/build-style/paragraph/editor-rtl.css +4 -0
  581. package/build-style/paragraph/editor.css +4 -0
  582. package/build-style/post-featured-image/editor-rtl.css +1 -1
  583. package/build-style/post-featured-image/editor.css +1 -1
  584. package/build-style/rss/editor-rtl.css +6 -0
  585. package/build-style/rss/editor.css +6 -0
  586. package/build-style/rss/style-rtl.css +6 -8
  587. package/build-style/rss/style.css +6 -8
  588. package/build-style/social-links/editor-rtl.css +3 -6
  589. package/build-style/social-links/editor.css +3 -6
  590. package/build-style/social-links/style-rtl.css +7 -0
  591. package/build-style/social-links/style.css +7 -0
  592. package/build-style/style-rtl.css +13 -8
  593. package/build-style/style.css +13 -8
  594. package/package.json +35 -35
  595. package/src/archives/block.json +9 -0
  596. package/src/archives/edit.js +2 -2
  597. package/src/block/index.php +1 -18
  598. package/src/categories/block.json +9 -0
  599. package/src/categories/edit.js +133 -45
  600. package/src/comments/edit/comments-inspector-controls.js +5 -8
  601. package/src/comments-pagination/block.json +5 -0
  602. package/src/cover/edit/inspector-controls.js +1 -21
  603. package/src/details/block.json +9 -0
  604. package/src/details/edit.js +18 -2
  605. package/src/details/save.js +6 -2
  606. package/src/embed/transforms.js +3 -1
  607. package/src/form/variations.js +1 -1
  608. package/src/gallery/editor.scss +0 -56
  609. package/src/group/edit.js +1 -20
  610. package/src/home-link/edit.js +0 -6
  611. package/src/latest-comments/edit.js +93 -33
  612. package/src/latest-posts/constants.js +1 -0
  613. package/src/latest-posts/edit.js +119 -44
  614. package/src/list/test/edit.native.js +9 -9
  615. package/src/list-item/block.json +1 -1
  616. package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -4
  617. package/src/navigation/edit/use-generate-default-navigation-title.js +4 -4
  618. package/src/navigation/index.php +11 -69
  619. package/src/navigation-link/edit.js +25 -29
  620. package/src/navigation-link/editor.scss +27 -18
  621. package/src/navigation-submenu/index.js +7 -0
  622. package/src/navigation-submenu/index.php +21 -4
  623. package/src/page-list/edit.js +52 -50
  624. package/src/paragraph/edit.js +3 -18
  625. package/src/paragraph/editor.scss +7 -0
  626. package/src/pattern/block.json +1 -1
  627. package/src/post-content/block.json +1 -0
  628. package/src/post-content/index.php +0 -23
  629. package/src/post-date/edit.js +1 -3
  630. package/src/post-featured-image/dimension-controls.js +2 -43
  631. package/src/post-featured-image/edit.js +41 -18
  632. package/src/post-featured-image/editor.scss +2 -2
  633. package/src/post-navigation-link/variations.js +2 -2
  634. package/src/post-template/edit.js +15 -6
  635. package/src/post-terms/edit.js +1 -0
  636. package/src/post-time-to-read/block.json +1 -1
  637. package/src/query/edit/inspector-controls/sticky-control.js +1 -0
  638. package/src/query/edit/query-content.js +1 -11
  639. package/src/query-no-results/block.json +1 -1
  640. package/src/query-pagination-numbers/edit.js +1 -1
  641. package/src/query-title/edit.js +1 -0
  642. package/src/read-more/edit.js +35 -11
  643. package/src/rss/block.json +14 -0
  644. package/src/rss/edit.js +14 -1
  645. package/src/rss/editor.scss +7 -0
  646. package/src/rss/style.scss +6 -8
  647. package/src/search/edit.js +99 -74
  648. package/src/separator/edit.js +1 -6
  649. package/src/social-link/icons/discord.js +10 -0
  650. package/src/social-link/icons/index.js +1 -0
  651. package/src/social-link/index.php +4 -0
  652. package/src/social-link/socials-with-bg.scss +5 -0
  653. package/src/social-link/socials-without-bg.scss +4 -0
  654. package/src/social-link/variations.js +7 -0
  655. package/src/social-links/editor.scss +4 -1
  656. package/src/spacer/controls.js +10 -9
  657. package/src/spacer/edit.js +25 -23
  658. package/src/template-part/edit/advanced-controls.js +1 -21
  659. package/src/utils/messages.js +31 -0
  660. package/src/video/edit-common-settings.js +1 -1
@@ -36,6 +36,7 @@ import { COVER_MIN_HEIGHT, mediaPosition } from '../shared';
36
36
  import { unlock } from '../../lock-unlock';
37
37
  import { useToolsPanelDropdownMenuProps } from '../../utils/hooks';
38
38
  import { DEFAULT_MEDIA_SIZE_SLUG } from '../constants';
39
+ import { htmlElementMessages } from '../../utils/messages';
39
40
 
40
41
  const { cleanEmptyObject, ResolutionTool } = unlock( blockEditorPrivateApis );
41
42
 
@@ -183,27 +184,6 @@ export default function CoverInspectorControls( {
183
184
 
184
185
  const colorGradientSettings = useMultipleOriginColorsAndGradients();
185
186
 
186
- const htmlElementMessages = {
187
- header: __(
188
- 'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'
189
- ),
190
- main: __(
191
- 'The <main> element should be used for the primary content of your document only.'
192
- ),
193
- section: __(
194
- "The <section> element should represent a standalone portion of the document that can't be better represented by another element."
195
- ),
196
- article: __(
197
- 'The <article> element should represent a self-contained, syndicatable portion of the document.'
198
- ),
199
- aside: __(
200
- "The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content."
201
- ),
202
- footer: __(
203
- 'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'
204
- ),
205
- };
206
-
207
187
  const dropdownMenuProps = useToolsPanelDropdownMenuProps();
208
188
 
209
189
  return (
@@ -17,8 +17,17 @@
17
17
  "source": "rich-text",
18
18
  "selector": "summary"
19
19
  },
20
+ "name": {
21
+ "type": "string",
22
+ "source": "attribute",
23
+ "attribute": "name",
24
+ "selector": ".wp-block-details"
25
+ },
20
26
  "allowedBlocks": {
21
27
  "type": "array"
28
+ },
29
+ "placeholder": {
30
+ "type": "string"
22
31
  }
23
32
  },
24
33
  "supports": {
@@ -8,6 +8,7 @@ import {
8
8
  InspectorControls,
9
9
  } from '@wordpress/block-editor';
10
10
  import {
11
+ TextControl,
11
12
  ToggleControl,
12
13
  __experimentalToolsPanel as ToolsPanel,
13
14
  __experimentalToolsPanelItem as ToolsPanelItem,
@@ -30,7 +31,8 @@ const TEMPLATE = [
30
31
  ];
31
32
 
32
33
  function DetailsEdit( { attributes, setAttributes } ) {
33
- const { showContent, summary, allowedBlocks } = attributes;
34
+ const { name, showContent, summary, allowedBlocks, placeholder } =
35
+ attributes;
34
36
  const blockProps = useBlockProps();
35
37
  const innerBlocksProps = useInnerBlocksProps( blockProps, {
36
38
  template: TEMPLATE,
@@ -75,6 +77,20 @@ function DetailsEdit( { attributes, setAttributes } ) {
75
77
  </ToolsPanelItem>
76
78
  </ToolsPanel>
77
79
  </InspectorControls>
80
+ <InspectorControls group="advanced">
81
+ <TextControl
82
+ __next40pxDefaultSize
83
+ __nextHasNoMarginBottom
84
+ label={ __( 'Name attribute' ) }
85
+ value={ name || '' }
86
+ onChange={ ( newName ) =>
87
+ setAttributes( { name: newName } )
88
+ }
89
+ help={ __(
90
+ 'Enables multiple Details blocks with the same name attribute to be connected, with only one open at a time.'
91
+ ) }
92
+ />
93
+ </InspectorControls>
78
94
  <details { ...innerBlocksProps } open={ isOpen }>
79
95
  <summary
80
96
  onClick={ ( event ) => {
@@ -85,7 +101,7 @@ function DetailsEdit( { attributes, setAttributes } ) {
85
101
  <RichText
86
102
  identifier="summary"
87
103
  aria-label={ __( 'Write summary' ) }
88
- placeholder={ __( 'Write summary…' ) }
104
+ placeholder={ placeholder || __( 'Write summary…' ) }
89
105
  allowedFormats={ [] }
90
106
  withoutInteractiveFormatting
91
107
  value={ summary }
@@ -4,12 +4,16 @@
4
4
  import { RichText, useBlockProps, InnerBlocks } from '@wordpress/block-editor';
5
5
 
6
6
  export default function save( { attributes } ) {
7
- const { showContent } = attributes;
7
+ const { name, showContent } = attributes;
8
8
  const summary = attributes.summary ? attributes.summary : 'Details';
9
9
  const blockProps = useBlockProps.save();
10
10
 
11
11
  return (
12
- <details { ...blockProps } open={ showContent }>
12
+ <details
13
+ { ...blockProps }
14
+ name={ name || undefined }
15
+ open={ showContent }
16
+ >
13
17
  <summary>
14
18
  <RichText.Content value={ summary } />
15
19
  </summary>
@@ -7,6 +7,7 @@ import { createBlock } from '@wordpress/blocks';
7
7
  * Internal dependencies
8
8
  */
9
9
  import metadata from './block.json';
10
+ import { removeAspectRatioClasses } from './util';
10
11
 
11
12
  const { name: EMBED_BLOCK } = metadata;
12
13
 
@@ -33,13 +34,14 @@ const transforms = {
33
34
  type: 'block',
34
35
  blocks: [ 'core/paragraph' ],
35
36
  isMatch: ( { url } ) => !! url,
36
- transform: ( { url, caption } ) => {
37
+ transform: ( { url, caption, className } ) => {
37
38
  let value = `<a href="${ url }">${ url }</a>`;
38
39
  if ( caption?.trim() ) {
39
40
  value += `<br />${ caption }`;
40
41
  }
41
42
  return createBlock( 'core/paragraph', {
42
43
  content: value,
44
+ className: removeAspectRatioClasses( className ),
43
45
  } );
44
46
  },
45
47
  },
@@ -61,7 +61,7 @@ const variations = [
61
61
  },
62
62
  {
63
63
  name: 'wp-privacy-form',
64
- title: __( 'Experimental privacy request form' ),
64
+ title: __( 'Experimental Privacy Request Form' ),
65
65
  keywords: [ 'GDPR' ],
66
66
  description: __( 'A form to request data exports and/or deletion.' ),
67
67
  attributes: {
@@ -117,10 +117,6 @@
117
117
  opacity: 0.3;
118
118
  }
119
119
 
120
- .is-selected .block-library-gallery-item__inline-menu {
121
- display: inline-flex;
122
- }
123
-
124
120
  .block-editor-media-placeholder {
125
121
  margin: 0;
126
122
  height: 100%;
@@ -131,58 +127,6 @@
131
127
  }
132
128
  }
133
129
 
134
- .block-library-gallery-item__inline-menu {
135
- display: none;
136
- position: absolute;
137
- top: -2px;
138
- margin: $grid-unit-10;
139
- z-index: z-index(".block-library-gallery-item__inline-menu");
140
- border-radius: $radius-small;
141
- background: $white;
142
- border: $border-width solid $gray-900;
143
-
144
- @media not (prefers-reduced-motion) {
145
- transition: box-shadow 0.2s ease-out;
146
- }
147
-
148
- &:hover {
149
- box-shadow: $elevation-x-small;
150
- }
151
-
152
- @include break-small() {
153
- // Use smaller buttons to fit when there are many columns.
154
- .columns-7 &,
155
- .columns-8 & {
156
- padding: $grid-unit-05 * 0.5;
157
- }
158
- }
159
-
160
- .components-button.has-icon {
161
- &:not(:focus) {
162
- border: none;
163
- box-shadow: none;
164
- }
165
-
166
- @include break-small() {
167
- // Use smaller buttons to fit when there are many columns.
168
- .columns-7 &,
169
- .columns-8 & {
170
- padding: 0;
171
- width: inherit;
172
- height: inherit;
173
- }
174
- }
175
- }
176
-
177
- &.is-left {
178
- left: -2px;
179
- }
180
-
181
- &.is-right {
182
- right: -2px;
183
- }
184
- }
185
-
186
130
  .wp-block-gallery ul.blocks-gallery-grid {
187
131
  padding: 0;
188
132
  // Some themes give all <ul> default margin instead of padding.
package/src/group/edit.js CHANGED
@@ -18,6 +18,7 @@ import { View } from '@wordpress/primitives';
18
18
  * Internal dependencies
19
19
  */
20
20
  import GroupPlaceHolder, { useShouldShowPlaceHolder } from './placeholder';
21
+ import { htmlElementMessages } from '../utils/messages';
21
22
 
22
23
  /**
23
24
  * Render inspector controls for the Group block.
@@ -29,26 +30,6 @@ import GroupPlaceHolder, { useShouldShowPlaceHolder } from './placeholder';
29
30
  * @return {JSX.Element} The control group.
30
31
  */
31
32
  function GroupEditControls( { tagName, onSelectTagName } ) {
32
- const htmlElementMessages = {
33
- header: __(
34
- 'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'
35
- ),
36
- main: __(
37
- 'The <main> element should be used for the primary content of your document only.'
38
- ),
39
- section: __(
40
- "The <section> element should represent a standalone portion of the document that can't be better represented by another element."
41
- ),
42
- article: __(
43
- 'The <article> element should represent a self-contained, syndicatable portion of the document.'
44
- ),
45
- aside: __(
46
- "The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content."
47
- ),
48
- footer: __(
49
- 'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'
50
- ),
51
- };
52
33
  return (
53
34
  <InspectorControls group="advanced">
54
35
  <SelectControl
@@ -51,12 +51,6 @@ export default function HomeEdit( { attributes, setAttributes, context } ) {
51
51
  aria-label={ __( 'Home link text' ) }
52
52
  placeholder={ __( 'Add home link' ) }
53
53
  withoutInteractiveFormatting
54
- allowedFormats={ [
55
- 'core/bold',
56
- 'core/italic',
57
- 'core/image',
58
- 'core/strikethrough',
59
- ] }
60
54
  />
61
55
  </a>
62
56
  </div>
@@ -4,13 +4,19 @@
4
4
  import { InspectorControls, useBlockProps } from '@wordpress/block-editor';
5
5
  import {
6
6
  Disabled,
7
- PanelBody,
8
7
  RangeControl,
9
8
  ToggleControl,
9
+ __experimentalToolsPanel as ToolsPanel,
10
+ __experimentalToolsPanelItem as ToolsPanelItem,
10
11
  } from '@wordpress/components';
11
12
  import ServerSideRender from '@wordpress/server-side-render';
12
13
  import { __ } from '@wordpress/i18n';
13
14
 
15
+ /**
16
+ * Internal dependencies
17
+ */
18
+ import { useToolsPanelDropdownMenuProps } from '../utils/hooks';
19
+
14
20
  /**
15
21
  * Minimum number of comments a user can show using this block.
16
22
  *
@@ -36,49 +42,103 @@ export default function LatestComments( { attributes, setAttributes } ) {
36
42
  },
37
43
  };
38
44
 
45
+ const dropdownMenuProps = useToolsPanelDropdownMenuProps();
46
+
39
47
  return (
40
48
  <div { ...useBlockProps() }>
41
49
  <InspectorControls>
42
- <PanelBody title={ __( 'Settings' ) }>
43
- <ToggleControl
44
- __nextHasNoMarginBottom
50
+ <ToolsPanel
51
+ label={ __( 'Settings' ) }
52
+ resetAll={ () => {
53
+ setAttributes( {
54
+ commentsToShow: 5,
55
+ displayAvatar: true,
56
+ displayDate: true,
57
+ displayExcerpt: true,
58
+ } );
59
+ } }
60
+ dropdownMenuProps={ dropdownMenuProps }
61
+ >
62
+ <ToolsPanelItem
63
+ hasValue={ () => ! displayAvatar }
45
64
  label={ __( 'Display avatar' ) }
46
- checked={ displayAvatar }
47
- onChange={ () =>
48
- setAttributes( { displayAvatar: ! displayAvatar } )
65
+ onDeselect={ () =>
66
+ setAttributes( { displayAvatar: true } )
49
67
  }
50
- />
51
- <ToggleControl
52
- __nextHasNoMarginBottom
68
+ isShownByDefault
69
+ >
70
+ <ToggleControl
71
+ __nextHasNoMarginBottom
72
+ label={ __( 'Display avatar' ) }
73
+ checked={ displayAvatar }
74
+ onChange={ () =>
75
+ setAttributes( {
76
+ displayAvatar: ! displayAvatar,
77
+ } )
78
+ }
79
+ />
80
+ </ToolsPanelItem>
81
+
82
+ <ToolsPanelItem
83
+ hasValue={ () => ! displayDate }
53
84
  label={ __( 'Display date' ) }
54
- checked={ displayDate }
55
- onChange={ () =>
56
- setAttributes( { displayDate: ! displayDate } )
85
+ onDeselect={ () =>
86
+ setAttributes( { displayDate: true } )
57
87
  }
58
- />
59
- <ToggleControl
60
- __nextHasNoMarginBottom
88
+ isShownByDefault
89
+ >
90
+ <ToggleControl
91
+ __nextHasNoMarginBottom
92
+ label={ __( 'Display date' ) }
93
+ checked={ displayDate }
94
+ onChange={ () =>
95
+ setAttributes( { displayDate: ! displayDate } )
96
+ }
97
+ />
98
+ </ToolsPanelItem>
99
+
100
+ <ToolsPanelItem
101
+ hasValue={ () => ! displayExcerpt }
61
102
  label={ __( 'Display excerpt' ) }
62
- checked={ displayExcerpt }
63
- onChange={ () =>
64
- setAttributes( {
65
- displayExcerpt: ! displayExcerpt,
66
- } )
103
+ onDeselect={ () =>
104
+ setAttributes( { displayExcerpt: true } )
67
105
  }
68
- />
69
- <RangeControl
70
- __nextHasNoMarginBottom
71
- __next40pxDefaultSize
106
+ isShownByDefault
107
+ >
108
+ <ToggleControl
109
+ __nextHasNoMarginBottom
110
+ label={ __( 'Display excerpt' ) }
111
+ checked={ displayExcerpt }
112
+ onChange={ () =>
113
+ setAttributes( {
114
+ displayExcerpt: ! displayExcerpt,
115
+ } )
116
+ }
117
+ />
118
+ </ToolsPanelItem>
119
+
120
+ <ToolsPanelItem
121
+ hasValue={ () => commentsToShow !== 5 }
72
122
  label={ __( 'Number of comments' ) }
73
- value={ commentsToShow }
74
- onChange={ ( value ) =>
75
- setAttributes( { commentsToShow: value } )
123
+ onDeselect={ () =>
124
+ setAttributes( { commentsToShow: 5 } )
76
125
  }
77
- min={ MIN_COMMENTS }
78
- max={ MAX_COMMENTS }
79
- required
80
- />
81
- </PanelBody>
126
+ isShownByDefault
127
+ >
128
+ <RangeControl
129
+ __nextHasNoMarginBottom
130
+ __next40pxDefaultSize
131
+ label={ __( 'Number of comments' ) }
132
+ value={ commentsToShow }
133
+ onChange={ ( value ) =>
134
+ setAttributes( { commentsToShow: value } )
135
+ }
136
+ min={ MIN_COMMENTS }
137
+ max={ MAX_COMMENTS }
138
+ required
139
+ />
140
+ </ToolsPanelItem>
141
+ </ToolsPanel>
82
142
  </InspectorControls>
83
143
  <Disabled>
84
144
  <ServerSideRender
@@ -1,3 +1,4 @@
1
1
  export const MIN_EXCERPT_LENGTH = 10;
2
2
  export const MAX_EXCERPT_LENGTH = 100;
3
3
  export const MAX_POSTS_COLUMNS = 6;
4
+ export const DEFAULT_EXCERPT_LENGTH = 55;
@@ -17,6 +17,8 @@ import {
17
17
  ToolbarGroup,
18
18
  __experimentalToggleGroupControl as ToggleGroupControl,
19
19
  __experimentalToggleGroupControlOptionIcon as ToggleGroupControlOptionIcon,
20
+ __experimentalToolsPanel as ToolsPanel,
21
+ __experimentalToolsPanelItem as ToolsPanelItem,
20
22
  } from '@wordpress/components';
21
23
  import { __, _x, sprintf } from '@wordpress/i18n';
22
24
  import { dateI18n, format, getSettings } from '@wordpress/date';
@@ -49,7 +51,9 @@ import {
49
51
  MIN_EXCERPT_LENGTH,
50
52
  MAX_EXCERPT_LENGTH,
51
53
  MAX_POSTS_COLUMNS,
54
+ DEFAULT_EXCERPT_LENGTH,
52
55
  } from './constants';
56
+ import { useToolsPanelDropdownMenuProps } from '../utils/hooks';
53
57
 
54
58
  /**
55
59
  * Module Constants
@@ -77,6 +81,8 @@ function getFeaturedImageDetails( post, size ) {
77
81
 
78
82
  export default function LatestPostsEdit( { attributes, setAttributes } ) {
79
83
  const instanceId = useInstanceId( LatestPostsEdit );
84
+ const dropdownMenuProps = useToolsPanelDropdownMenuProps();
85
+
80
86
  const {
81
87
  postsToShow,
82
88
  order,
@@ -227,68 +233,137 @@ export default function LatestPostsEdit( { attributes, setAttributes } ) {
227
233
  const hasPosts = !! latestPosts?.length;
228
234
  const inspectorControls = (
229
235
  <InspectorControls>
230
- <PanelBody title={ __( 'Post content' ) }>
231
- <ToggleControl
232
- __nextHasNoMarginBottom
236
+ <ToolsPanel
237
+ label={ __( 'Post content' ) }
238
+ resetAll={ () =>
239
+ setAttributes( {
240
+ displayPostContent: false,
241
+ displayPostContentRadio: 'excerpt',
242
+ excerptLength: DEFAULT_EXCERPT_LENGTH,
243
+ } )
244
+ }
245
+ dropdownMenuProps={ dropdownMenuProps }
246
+ >
247
+ <ToolsPanelItem
248
+ hasValue={ () => !! displayPostContent }
233
249
  label={ __( 'Post content' ) }
234
- checked={ displayPostContent }
235
- onChange={ ( value ) =>
236
- setAttributes( { displayPostContent: value } )
250
+ onDeselect={ () =>
251
+ setAttributes( { displayPostContent: false } )
237
252
  }
238
- />
253
+ isShownByDefault
254
+ >
255
+ <ToggleControl
256
+ __nextHasNoMarginBottom
257
+ label={ __( 'Post content' ) }
258
+ checked={ displayPostContent }
259
+ onChange={ ( value ) =>
260
+ setAttributes( { displayPostContent: value } )
261
+ }
262
+ />
263
+ </ToolsPanelItem>
239
264
  { displayPostContent && (
240
- <RadioControl
265
+ <ToolsPanelItem
266
+ hasValue={ () => displayPostContentRadio !== 'excerpt' }
241
267
  label={ __( 'Show' ) }
242
- selected={ displayPostContentRadio }
243
- options={ [
244
- { label: __( 'Excerpt' ), value: 'excerpt' },
245
- {
246
- label: __( 'Full post' ),
247
- value: 'full_post',
248
- },
249
- ] }
250
- onChange={ ( value ) =>
268
+ onDeselect={ () =>
251
269
  setAttributes( {
252
- displayPostContentRadio: value,
270
+ displayPostContentRadio: 'excerpt',
253
271
  } )
254
272
  }
255
- />
273
+ isShownByDefault
274
+ >
275
+ <RadioControl
276
+ label={ __( 'Show' ) }
277
+ selected={ displayPostContentRadio }
278
+ options={ [
279
+ { label: __( 'Excerpt' ), value: 'excerpt' },
280
+ {
281
+ label: __( 'Full post' ),
282
+ value: 'full_post',
283
+ },
284
+ ] }
285
+ onChange={ ( value ) =>
286
+ setAttributes( {
287
+ displayPostContentRadio: value,
288
+ } )
289
+ }
290
+ />
291
+ </ToolsPanelItem>
256
292
  ) }
257
293
  { displayPostContent &&
258
294
  displayPostContentRadio === 'excerpt' && (
259
- <RangeControl
260
- __nextHasNoMarginBottom
261
- __next40pxDefaultSize
295
+ <ToolsPanelItem
296
+ hasValue={ () =>
297
+ excerptLength !== DEFAULT_EXCERPT_LENGTH
298
+ }
262
299
  label={ __( 'Max number of words' ) }
263
- value={ excerptLength }
264
- onChange={ ( value ) =>
265
- setAttributes( { excerptLength: value } )
300
+ onDeselect={ () =>
301
+ setAttributes( {
302
+ excerptLength: DEFAULT_EXCERPT_LENGTH,
303
+ } )
266
304
  }
267
- min={ MIN_EXCERPT_LENGTH }
268
- max={ MAX_EXCERPT_LENGTH }
269
- />
305
+ isShownByDefault
306
+ >
307
+ <RangeControl
308
+ __nextHasNoMarginBottom
309
+ __next40pxDefaultSize
310
+ label={ __( 'Max number of words' ) }
311
+ value={ excerptLength }
312
+ onChange={ ( value ) =>
313
+ setAttributes( { excerptLength: value } )
314
+ }
315
+ min={ MIN_EXCERPT_LENGTH }
316
+ max={ MAX_EXCERPT_LENGTH }
317
+ />
318
+ </ToolsPanelItem>
270
319
  ) }
271
- </PanelBody>
320
+ </ToolsPanel>
272
321
 
273
- <PanelBody title={ __( 'Post meta' ) }>
274
- <ToggleControl
275
- __nextHasNoMarginBottom
322
+ <ToolsPanel
323
+ label={ __( 'Post meta' ) }
324
+ resetAll={ () =>
325
+ setAttributes( {
326
+ displayAuthor: false,
327
+ displayPostDate: false,
328
+ } )
329
+ }
330
+ dropdownMenuProps={ dropdownMenuProps }
331
+ >
332
+ <ToolsPanelItem
333
+ hasValue={ () => !! displayAuthor }
276
334
  label={ __( 'Display author name' ) }
277
- checked={ displayAuthor }
278
- onChange={ ( value ) =>
279
- setAttributes( { displayAuthor: value } )
335
+ onDeselect={ () =>
336
+ setAttributes( { displayAuthor: false } )
280
337
  }
281
- />
282
- <ToggleControl
283
- __nextHasNoMarginBottom
338
+ isShownByDefault
339
+ >
340
+ <ToggleControl
341
+ __nextHasNoMarginBottom
342
+ label={ __( 'Display author name' ) }
343
+ checked={ displayAuthor }
344
+ onChange={ ( value ) =>
345
+ setAttributes( { displayAuthor: value } )
346
+ }
347
+ />
348
+ </ToolsPanelItem>
349
+ <ToolsPanelItem
350
+ hasValue={ () => !! displayPostDate }
284
351
  label={ __( 'Display post date' ) }
285
- checked={ displayPostDate }
286
- onChange={ ( value ) =>
287
- setAttributes( { displayPostDate: value } )
352
+ onDeselect={ () =>
353
+ setAttributes( { displayPostDate: false } )
288
354
  }
289
- />
290
- </PanelBody>
291
-
355
+ isShownByDefault
356
+ >
357
+ <ToggleControl
358
+ __nextHasNoMarginBottom
359
+ label={ __( 'Display post date' ) }
360
+ checked={ displayPostDate }
361
+ onChange={ ( value ) =>
362
+ setAttributes( { displayPostDate: value } )
363
+ }
364
+ />
365
+ </ToolsPanelItem>
366
+ </ToolsPanel>
292
367
  <PanelBody title={ __( 'Featured image' ) }>
293
368
  <ToggleControl
294
369
  __nextHasNoMarginBottom