@wordpress/block-library 7.2.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 (425) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +1 -1
  3. package/build/archives/edit.js +21 -1
  4. package/build/archives/edit.js.map +1 -1
  5. package/build/archives/index.js +5 -1
  6. package/build/archives/index.js.map +1 -1
  7. package/build/audio/edit.native.js +0 -5
  8. package/build/audio/edit.native.js.map +1 -1
  9. package/build/avatar/edit.js +17 -11
  10. package/build/avatar/edit.js.map +1 -1
  11. package/build/block/edit.js +2 -1
  12. package/build/block/edit.js.map +1 -1
  13. package/build/column/index.js +1 -0
  14. package/build/column/index.js.map +1 -1
  15. package/build/comment-author-avatar/index.js +3 -3
  16. package/build/comment-author-name/index.js +7 -3
  17. package/build/comment-author-name/index.js.map +1 -1
  18. package/build/comment-content/index.js +1 -1
  19. package/build/comment-date/index.js +7 -3
  20. package/build/comment-date/index.js.map +1 -1
  21. package/build/comment-edit-link/index.js +5 -1
  22. package/build/comment-edit-link/index.js.map +1 -1
  23. package/build/comment-reply-link/index.js +5 -1
  24. package/build/comment-reply-link/index.js.map +1 -1
  25. package/build/comment-template/edit.js +7 -14
  26. package/build/comment-template/edit.js.map +1 -1
  27. package/build/comment-template/hooks.js +7 -23
  28. package/build/comment-template/hooks.js.map +1 -1
  29. package/build/comment-template/index.js +2 -2
  30. package/build/comments-pagination-next/index.js +2 -2
  31. package/build/comments-pagination-numbers/index.js +1 -1
  32. package/build/comments-pagination-previous/index.js +1 -1
  33. package/build/comments-query-loop/edit/comments-inspector-controls.js +2 -69
  34. package/build/comments-query-loop/edit/comments-inspector-controls.js.map +1 -1
  35. package/build/comments-query-loop/edit.js +22 -1
  36. package/build/comments-query-loop/edit.js.map +1 -1
  37. package/build/comments-query-loop/index.js +1 -23
  38. package/build/comments-query-loop/index.js.map +1 -1
  39. package/build/cover/edit.js +35 -6
  40. package/build/cover/edit.js.map +1 -1
  41. package/build/cover/index.js +5 -0
  42. package/build/cover/index.js.map +1 -1
  43. package/build/cover/save.js +3 -2
  44. package/build/cover/save.js.map +1 -1
  45. package/build/gallery/gap-styles.js +8 -2
  46. package/build/gallery/gap-styles.js.map +1 -1
  47. package/build/gallery/index.js +1 -0
  48. package/build/gallery/index.js.map +1 -1
  49. package/build/group/edit.js +3 -1
  50. package/build/group/edit.js.map +1 -1
  51. package/build/group/index.js +2 -4
  52. package/build/group/index.js.map +1 -1
  53. package/build/group/variations.js +31 -9
  54. package/build/group/variations.js.map +1 -1
  55. package/build/heading/edit.js +1 -1
  56. package/build/heading/edit.js.map +1 -1
  57. package/build/html/edit.js +3 -2
  58. package/build/html/edit.js.map +1 -1
  59. package/build/image/edit.native.js +8 -10
  60. package/build/image/edit.native.js.map +1 -1
  61. package/build/index.js +3 -3
  62. package/build/index.js.map +1 -1
  63. package/build/list/deprecated.js +2 -2
  64. package/build/list/deprecated.js.map +1 -1
  65. package/build/list/v2/deprecated.js +117 -0
  66. package/build/list/v2/deprecated.js.map +1 -0
  67. package/build/list/v2/edit.js +106 -3
  68. package/build/list/v2/edit.js.map +1 -1
  69. package/build/list/v2/index.js +4 -1
  70. package/build/list/v2/index.js.map +1 -1
  71. package/build/list/v2/migrate.js +85 -0
  72. package/build/list/v2/migrate.js.map +1 -0
  73. package/build/list-item/edit.js +59 -10
  74. package/build/list-item/edit.js.map +1 -1
  75. package/build/list-item/hooks/index.js +32 -0
  76. package/build/list-item/hooks/index.js.map +1 -0
  77. package/build/list-item/hooks/use-enter.js +93 -0
  78. package/build/list-item/hooks/use-enter.js.map +1 -0
  79. package/build/list-item/hooks/use-indent-list-item.js +74 -0
  80. package/build/list-item/hooks/use-indent-list-item.js.map +1 -0
  81. package/build/list-item/hooks/use-outdent-list-item.js +77 -0
  82. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -0
  83. package/build/list-item/index.js +1 -1
  84. package/build/list-item/index.js.map +1 -1
  85. package/build/list-item/utils.js +16 -0
  86. package/build/list-item/utils.js.map +1 -0
  87. package/build/media-text/media-container.native.js +1 -16
  88. package/build/media-text/media-container.native.js.map +1 -1
  89. package/build/navigation/edit/index.js +36 -17
  90. package/build/navigation/edit/index.js.map +1 -1
  91. package/build/navigation/edit/navigation-menu-delete-control.js +1 -1
  92. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  93. package/build/navigation/edit/unsaved-inner-blocks.js +34 -7
  94. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  95. package/build/navigation/index.js +9 -1
  96. package/build/navigation/index.js.map +1 -1
  97. package/build/navigation/use-navigation-menu.js +1 -0
  98. package/build/navigation/use-navigation-menu.js.map +1 -1
  99. package/build/navigation-link/edit.js +9 -5
  100. package/build/navigation-link/edit.js.map +1 -1
  101. package/build/navigation-link/index.js +1 -1
  102. package/build/navigation-submenu/edit.js +5 -9
  103. package/build/navigation-submenu/edit.js.map +1 -1
  104. package/build/navigation-submenu/index.js +1 -1
  105. package/build/post-comment/edit.js +2 -2
  106. package/build/post-comment/edit.js.map +1 -1
  107. package/build/post-comments-form/edit.js +3 -2
  108. package/build/post-comments-form/edit.js.map +1 -1
  109. package/build/post-featured-image/index.js +1 -1
  110. package/build/post-template/edit.js +7 -2
  111. package/build/post-template/edit.js.map +1 -1
  112. package/build/post-terms/edit.js +3 -1
  113. package/build/post-terms/edit.js.map +1 -1
  114. package/build/post-terms/variations.js +1 -1
  115. package/build/post-terms/variations.js.map +1 -1
  116. package/build/query-pagination/edit.js +1 -1
  117. package/build/query-pagination/edit.js.map +1 -1
  118. package/build/query-pagination-numbers/index.js +19 -1
  119. package/build/query-pagination-numbers/index.js.map +1 -1
  120. package/build/quote/index.js +15 -8
  121. package/build/quote/index.js.map +1 -1
  122. package/build/quote/v2/deprecated.js +133 -0
  123. package/build/quote/v2/deprecated.js.map +1 -0
  124. package/build/quote/v2/edit.js +131 -0
  125. package/build/quote/v2/edit.js.map +1 -0
  126. package/build/quote/v2/index.js +49 -0
  127. package/build/quote/v2/index.js.map +1 -0
  128. package/build/quote/v2/save.js +43 -0
  129. package/build/quote/v2/save.js.map +1 -0
  130. package/build/quote/v2/transforms.js +156 -0
  131. package/build/quote/v2/transforms.js.map +1 -0
  132. package/build/read-more/index.js +1 -1
  133. package/build/rss/edit.js +6 -1
  134. package/build/rss/edit.js.map +1 -1
  135. package/build/site-logo/edit.js +3 -2
  136. package/build/site-logo/edit.js.map +1 -1
  137. package/build/site-logo/index.js +1 -1
  138. package/build/social-links/index.js +1 -0
  139. package/build/social-links/index.js.map +1 -1
  140. package/build/spacer/controls.native.js +1 -1
  141. package/build/spacer/controls.native.js.map +1 -1
  142. package/build/template-part/edit/utils/hooks.js +5 -2
  143. package/build/template-part/edit/utils/hooks.js.map +1 -1
  144. package/build-module/archives/edit.js +22 -2
  145. package/build-module/archives/edit.js.map +1 -1
  146. package/build-module/archives/index.js +5 -1
  147. package/build-module/archives/index.js.map +1 -1
  148. package/build-module/audio/edit.native.js +0 -5
  149. package/build-module/audio/edit.native.js.map +1 -1
  150. package/build-module/avatar/edit.js +16 -11
  151. package/build-module/avatar/edit.js.map +1 -1
  152. package/build-module/block/edit.js +4 -3
  153. package/build-module/block/edit.js.map +1 -1
  154. package/build-module/column/index.js +1 -0
  155. package/build-module/column/index.js.map +1 -1
  156. package/build-module/comment-author-avatar/index.js +3 -3
  157. package/build-module/comment-author-name/index.js +7 -3
  158. package/build-module/comment-author-name/index.js.map +1 -1
  159. package/build-module/comment-content/index.js +1 -1
  160. package/build-module/comment-date/index.js +7 -3
  161. package/build-module/comment-date/index.js.map +1 -1
  162. package/build-module/comment-edit-link/index.js +5 -1
  163. package/build-module/comment-edit-link/index.js.map +1 -1
  164. package/build-module/comment-reply-link/index.js +5 -1
  165. package/build-module/comment-reply-link/index.js.map +1 -1
  166. package/build-module/comment-template/edit.js +7 -14
  167. package/build-module/comment-template/edit.js.map +1 -1
  168. package/build-module/comment-template/hooks.js +7 -23
  169. package/build-module/comment-template/hooks.js.map +1 -1
  170. package/build-module/comment-template/index.js +2 -2
  171. package/build-module/comments-pagination-next/index.js +2 -2
  172. package/build-module/comments-pagination-numbers/index.js +1 -1
  173. package/build-module/comments-pagination-previous/index.js +1 -1
  174. package/build-module/comments-query-loop/edit/comments-inspector-controls.js +4 -70
  175. package/build-module/comments-query-loop/edit/comments-inspector-controls.js.map +1 -1
  176. package/build-module/comments-query-loop/edit.js +22 -1
  177. package/build-module/comments-query-loop/edit.js.map +1 -1
  178. package/build-module/comments-query-loop/index.js +1 -23
  179. package/build-module/comments-query-loop/index.js.map +1 -1
  180. package/build-module/cover/edit.js +36 -8
  181. package/build-module/cover/edit.js.map +1 -1
  182. package/build-module/cover/index.js +5 -0
  183. package/build-module/cover/index.js.map +1 -1
  184. package/build-module/cover/save.js +3 -2
  185. package/build-module/cover/save.js.map +1 -1
  186. package/build-module/gallery/gap-styles.js +8 -2
  187. package/build-module/gallery/gap-styles.js.map +1 -1
  188. package/build-module/gallery/index.js +1 -0
  189. package/build-module/gallery/index.js.map +1 -1
  190. package/build-module/group/edit.js +3 -1
  191. package/build-module/group/edit.js.map +1 -1
  192. package/build-module/group/index.js +2 -4
  193. package/build-module/group/index.js.map +1 -1
  194. package/build-module/group/variations.js +30 -9
  195. package/build-module/group/variations.js.map +1 -1
  196. package/build-module/heading/edit.js +1 -1
  197. package/build-module/heading/edit.js.map +1 -1
  198. package/build-module/html/edit.js +4 -3
  199. package/build-module/html/edit.js.map +1 -1
  200. package/build-module/image/edit.native.js +8 -10
  201. package/build-module/image/edit.native.js.map +1 -1
  202. package/build-module/index.js +3 -3
  203. package/build-module/index.js.map +1 -1
  204. package/build-module/list/deprecated.js +2 -2
  205. package/build-module/list/deprecated.js.map +1 -1
  206. package/build-module/list/v2/deprecated.js +104 -0
  207. package/build-module/list/v2/deprecated.js.map +1 -0
  208. package/build-module/list/v2/edit.js +104 -5
  209. package/build-module/list/v2/edit.js.map +1 -1
  210. package/build-module/list/v2/index.js +3 -1
  211. package/build-module/list/v2/index.js.map +1 -1
  212. package/build-module/list/v2/migrate.js +77 -0
  213. package/build-module/list/v2/migrate.js.map +1 -0
  214. package/build-module/list-item/edit.js +59 -13
  215. package/build-module/list-item/edit.js.map +1 -1
  216. package/build-module/list-item/hooks/index.js +4 -0
  217. package/build-module/list-item/hooks/index.js.map +1 -0
  218. package/build-module/list-item/hooks/use-enter.js +77 -0
  219. package/build-module/list-item/hooks/use-enter.js.map +1 -0
  220. package/build-module/list-item/hooks/use-indent-list-item.js +62 -0
  221. package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -0
  222. package/build-module/list-item/hooks/use-outdent-list-item.js +66 -0
  223. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -0
  224. package/build-module/list-item/index.js +1 -1
  225. package/build-module/list-item/index.js.map +1 -1
  226. package/build-module/list-item/utils.js +8 -0
  227. package/build-module/list-item/utils.js.map +1 -0
  228. package/build-module/media-text/media-container.native.js +1 -14
  229. package/build-module/media-text/media-container.native.js.map +1 -1
  230. package/build-module/navigation/edit/index.js +37 -17
  231. package/build-module/navigation/edit/index.js.map +1 -1
  232. package/build-module/navigation/edit/navigation-menu-delete-control.js +1 -1
  233. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  234. package/build-module/navigation/edit/unsaved-inner-blocks.js +35 -8
  235. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  236. package/build-module/navigation/index.js +9 -1
  237. package/build-module/navigation/index.js.map +1 -1
  238. package/build-module/navigation/use-navigation-menu.js +1 -0
  239. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  240. package/build-module/navigation-link/edit.js +9 -5
  241. package/build-module/navigation-link/edit.js.map +1 -1
  242. package/build-module/navigation-link/index.js +1 -1
  243. package/build-module/navigation-submenu/edit.js +6 -10
  244. package/build-module/navigation-submenu/edit.js.map +1 -1
  245. package/build-module/navigation-submenu/index.js +1 -1
  246. package/build-module/post-comment/edit.js +2 -2
  247. package/build-module/post-comment/edit.js.map +1 -1
  248. package/build-module/post-comments-form/edit.js +3 -2
  249. package/build-module/post-comments-form/edit.js.map +1 -1
  250. package/build-module/post-featured-image/index.js +1 -1
  251. package/build-module/post-template/edit.js +7 -2
  252. package/build-module/post-template/edit.js.map +1 -1
  253. package/build-module/post-terms/edit.js +4 -2
  254. package/build-module/post-terms/edit.js.map +1 -1
  255. package/build-module/post-terms/variations.js +3 -3
  256. package/build-module/post-terms/variations.js.map +1 -1
  257. package/build-module/query-pagination/edit.js +1 -1
  258. package/build-module/query-pagination/edit.js.map +1 -1
  259. package/build-module/query-pagination-numbers/index.js +19 -1
  260. package/build-module/query-pagination-numbers/index.js.map +1 -1
  261. package/build-module/quote/index.js +13 -1
  262. package/build-module/quote/index.js.map +1 -1
  263. package/build-module/quote/v2/deprecated.js +116 -0
  264. package/build-module/quote/v2/deprecated.js.map +1 -0
  265. package/build-module/quote/v2/edit.js +115 -0
  266. package/build-module/quote/v2/edit.js.map +1 -0
  267. package/build-module/quote/v2/index.js +33 -0
  268. package/build-module/quote/v2/index.js.map +1 -0
  269. package/build-module/quote/v2/save.js +30 -0
  270. package/build-module/quote/v2/save.js.map +1 -0
  271. package/build-module/quote/v2/transforms.js +147 -0
  272. package/build-module/quote/v2/transforms.js.map +1 -0
  273. package/build-module/read-more/index.js +1 -1
  274. package/build-module/rss/edit.js +5 -1
  275. package/build-module/rss/edit.js.map +1 -1
  276. package/build-module/site-logo/edit.js +3 -2
  277. package/build-module/site-logo/edit.js.map +1 -1
  278. package/build-module/site-logo/index.js +1 -1
  279. package/build-module/social-links/index.js +1 -0
  280. package/build-module/social-links/index.js.map +1 -1
  281. package/build-module/spacer/controls.native.js +1 -1
  282. package/build-module/spacer/controls.native.js.map +1 -1
  283. package/build-module/template-part/edit/utils/hooks.js +5 -2
  284. package/build-module/template-part/edit/utils/hooks.js.map +1 -1
  285. package/build-style/avatar/editor-rtl.css +4 -0
  286. package/build-style/avatar/editor.css +4 -0
  287. package/build-style/avatar/style-rtl.css +79 -0
  288. package/build-style/avatar/style.css +79 -0
  289. package/build-style/editor-rtl.css +30 -9
  290. package/build-style/editor.css +30 -9
  291. package/build-style/group/editor-rtl.css +26 -0
  292. package/build-style/group/editor.css +26 -0
  293. package/build-style/heading/style-rtl.css +0 -8
  294. package/build-style/heading/style.css +0 -8
  295. package/build-style/list/style-rtl.css +1 -1
  296. package/build-style/list/style.css +1 -1
  297. package/build-style/navigation/style-rtl.css +11 -9
  298. package/build-style/navigation/style.css +11 -9
  299. package/build-style/navigation-link/style-rtl.css +3 -0
  300. package/build-style/navigation-link/style.css +3 -0
  301. package/build-style/paragraph/style-rtl.css +0 -4
  302. package/build-style/paragraph/style.css +0 -4
  303. package/build-style/quote/style-rtl.css +1 -0
  304. package/build-style/quote/style.css +1 -0
  305. package/build-style/reset-rtl.css +1 -1
  306. package/build-style/reset.css +1 -1
  307. package/build-style/style-rtl.css +20 -22
  308. package/build-style/style.css +20 -22
  309. package/build-style/template-part/editor-rtl.css +0 -9
  310. package/build-style/template-part/editor.css +0 -9
  311. package/package.json +28 -28
  312. package/src/archives/block.json +5 -1
  313. package/src/archives/edit.js +20 -2
  314. package/src/archives/index.php +4 -4
  315. package/src/audio/edit.native.js +0 -5
  316. package/src/avatar/edit.js +21 -13
  317. package/src/avatar/editor.scss +6 -0
  318. package/src/avatar/index.php +2 -2
  319. package/src/avatar/style.scss +5 -0
  320. package/src/block/edit.js +21 -11
  321. package/src/column/block.json +1 -0
  322. package/src/comment-author-avatar/block.json +3 -3
  323. package/src/comment-author-name/block.json +7 -3
  324. package/src/comment-author-name/index.php +3 -0
  325. package/src/comment-content/block.json +1 -1
  326. package/src/comment-date/block.json +7 -3
  327. package/src/comment-date/index.php +6 -1
  328. package/src/comment-edit-link/block.json +5 -1
  329. package/src/comment-edit-link/index.php +3 -0
  330. package/src/comment-reply-link/block.json +5 -1
  331. package/src/comment-reply-link/index.php +4 -1
  332. package/src/comment-template/block.json +2 -8
  333. package/src/comment-template/edit.js +12 -20
  334. package/src/comment-template/hooks.js +8 -24
  335. package/src/comment-template/index.php +1 -3
  336. package/src/comments-pagination-next/block.json +2 -9
  337. package/src/comments-pagination-numbers/block.json +2 -8
  338. package/src/comments-pagination-previous/block.json +2 -2
  339. package/src/comments-query-loop/block.json +1 -23
  340. package/src/comments-query-loop/edit/comments-inspector-controls.js +2 -83
  341. package/src/comments-query-loop/edit.js +54 -1
  342. package/src/cover/block.json +5 -0
  343. package/src/cover/edit.js +77 -29
  344. package/src/cover/index.php +85 -0
  345. package/src/cover/save.js +18 -14
  346. package/src/gallery/block.json +1 -0
  347. package/src/gallery/gap-styles.js +9 -4
  348. package/src/gallery/index.php +7 -6
  349. package/src/group/block.json +2 -4
  350. package/src/group/edit.js +4 -1
  351. package/src/group/editor.scss +31 -0
  352. package/src/group/variations.js +21 -4
  353. package/src/heading/edit.js +1 -1
  354. package/src/heading/style.scss +0 -3
  355. package/src/html/edit.js +22 -30
  356. package/src/image/edit.native.js +7 -11
  357. package/src/index.js +15 -15
  358. package/src/list/deprecated.js +2 -2
  359. package/src/list/style.scss +1 -2
  360. package/src/list/test/migrate.js +159 -0
  361. package/src/list/v2/deprecated.js +89 -0
  362. package/src/list/v2/edit.js +110 -1
  363. package/src/list/v2/index.js +2 -0
  364. package/src/list/v2/migrate.js +87 -0
  365. package/src/list-item/edit.js +69 -23
  366. package/src/list-item/hooks/index.js +3 -0
  367. package/src/list-item/hooks/use-enter.js +94 -0
  368. package/src/list-item/hooks/use-indent-list-item.js +89 -0
  369. package/src/list-item/hooks/use-outdent-list-item.js +95 -0
  370. package/src/list-item/index.js +1 -1
  371. package/src/list-item/utils.js +14 -0
  372. package/src/media-text/media-container.native.js +1 -14
  373. package/src/navigation/block.json +9 -1
  374. package/src/navigation/edit/index.js +50 -14
  375. package/src/navigation/edit/navigation-menu-delete-control.js +1 -1
  376. package/src/navigation/edit/unsaved-inner-blocks.js +57 -8
  377. package/src/navigation/index.php +6 -1
  378. package/src/navigation/style.scss +15 -13
  379. package/src/navigation/use-navigation-menu.js +4 -0
  380. package/src/navigation-link/block.json +1 -0
  381. package/src/navigation-link/edit.js +43 -35
  382. package/src/navigation-link/index.php +8 -0
  383. package/src/navigation-link/style.scss +6 -0
  384. package/src/navigation-submenu/block.json +1 -0
  385. package/src/navigation-submenu/edit.js +7 -9
  386. package/src/paragraph/style.scss +0 -5
  387. package/src/post-author/index.php +0 -1
  388. package/src/post-comment/edit.js +2 -2
  389. package/src/post-comments-form/edit.js +6 -3
  390. package/src/post-featured-image/block.json +1 -1
  391. package/src/post-template/edit.js +7 -1
  392. package/src/post-terms/edit.js +4 -1
  393. package/src/post-terms/variations.js +3 -3
  394. package/src/query-pagination/edit.js +1 -1
  395. package/src/query-pagination/index.php +9 -2
  396. package/src/query-pagination-numbers/block.json +19 -1
  397. package/src/quote/block.json +8 -0
  398. package/src/quote/index.js +6 -1
  399. package/src/quote/style.scss +1 -0
  400. package/src/quote/v2/deprecated.js +107 -0
  401. package/src/quote/v2/edit.js +136 -0
  402. package/src/quote/v2/index.js +36 -0
  403. package/src/quote/v2/save.js +26 -0
  404. package/src/quote/v2/test/migrate.js +92 -0
  405. package/src/quote/v2/transforms.js +155 -0
  406. package/src/read-more/block.json +1 -1
  407. package/src/reset.scss +1 -1
  408. package/src/rss/edit.js +3 -1
  409. package/src/rss/index.php +14 -1
  410. package/src/site-logo/block.json +1 -1
  411. package/src/site-logo/edit.js +2 -1
  412. package/src/site-logo/index.php +0 -4
  413. package/src/social-link/index.php +1 -2
  414. package/src/social-links/block.json +1 -0
  415. package/src/spacer/controls.native.js +1 -1
  416. package/src/spacer/test/__snapshots__/index.native.js.snap +31 -0
  417. package/src/spacer/test/index.native.js +180 -0
  418. package/src/style.scss +1 -0
  419. package/src/template-part/edit/utils/hooks.js +6 -1
  420. package/src/template-part/editor.scss +0 -10
  421. package/build/navigation/edit/use-list-view-modal.js +0 -73
  422. package/build/navigation/edit/use-list-view-modal.js.map +0 -1
  423. package/build-module/navigation/edit/use-list-view-modal.js +0 -63
  424. package/build-module/navigation/edit/use-list-view-modal.js.map +0 -1
  425. package/src/navigation/edit/use-list-view-modal.js +0 -72
package/CHANGELOG.md CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 7.3.0 (2022-04-08)
6
+
5
7
  ## 7.2.0 (2022-03-23)
6
8
 
7
9
  ### Bug Fix
package/README.md CHANGED
@@ -14,7 +14,7 @@ _This package assumes that your code will run in an **ES2015+** environment. If
14
14
 
15
15
  ## Building JavaScript for the browser
16
16
 
17
- If a `view.js` file is present in the block's directory, this file will be built along other assets, making it available to load from the browser.
17
+ If a `view.js` file (or a file prefixed with `view`, e.g. `view-example.js`) is present in the block's directory, this file will be built along other assets, making it available to load from the browser.
18
18
 
19
19
  This enables us to, for instance, load this file when the block is present on the page in two ways:
20
20
 
@@ -27,7 +27,8 @@ function ArchivesEdit(_ref) {
27
27
  } = _ref;
28
28
  const {
29
29
  showPostCounts,
30
- displayAsDropdown
30
+ displayAsDropdown,
31
+ type
31
32
  } = attributes;
32
33
  return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_blockEditor.InspectorControls, null, (0, _element.createElement)(_components.PanelBody, {
33
34
  title: (0, _i18n.__)('Archives settings')
@@ -43,6 +44,25 @@ function ArchivesEdit(_ref) {
43
44
  onChange: () => setAttributes({
44
45
  showPostCounts: !showPostCounts
45
46
  })
47
+ }), (0, _element.createElement)(_components.SelectControl, {
48
+ label: (0, _i18n.__)('Group by:'),
49
+ options: [{
50
+ label: (0, _i18n.__)('Year'),
51
+ value: 'yearly'
52
+ }, {
53
+ label: (0, _i18n.__)('Month'),
54
+ value: 'monthly'
55
+ }, {
56
+ label: (0, _i18n.__)('Week'),
57
+ value: 'weekly'
58
+ }, {
59
+ label: (0, _i18n.__)('Day'),
60
+ value: 'daily'
61
+ }],
62
+ value: type,
63
+ onChange: value => setAttributes({
64
+ type: value
65
+ })
46
66
  }))), (0, _element.createElement)("div", (0, _blockEditor.useBlockProps)(), (0, _element.createElement)(_components.Disabled, null, (0, _element.createElement)(_serverSideRender.default, {
47
67
  block: "core/archives",
48
68
  attributes: attributes
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/archives/edit.js"],"names":["ArchivesEdit","attributes","setAttributes","showPostCounts","displayAsDropdown"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AANA;AACA;AACA;AAMe,SAASA,YAAT,OAAuD;AAAA,MAAhC;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAAgC;AACrE,QAAM;AAAEC,IAAAA,cAAF;AAAkBC,IAAAA;AAAlB,MAAwCH,UAA9C;AAEA,SACC,qDACC,4BAAC,8BAAD,QACC,4BAAC,qBAAD;AAAW,IAAA,KAAK,EAAG,cAAI,mBAAJ;AAAnB,KACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,qBAAJ,CADT;AAEC,IAAA,OAAO,EAAGG,iBAFX;AAGC,IAAA,QAAQ,EAAG,MACVF,aAAa,CAAE;AACdE,MAAAA,iBAAiB,EAAE,CAAEA;AADP,KAAF;AAJf,IADD,EAUC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,kBAAJ,CADT;AAEC,IAAA,OAAO,EAAGD,cAFX;AAGC,IAAA,QAAQ,EAAG,MACVD,aAAa,CAAE;AACdC,MAAAA,cAAc,EAAE,CAAEA;AADJ,KAAF;AAJf,IAVD,CADD,CADD,EAuBC,mCAAU,iCAAV,EACC,4BAAC,oBAAD,QACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAC,eADP;AAEC,IAAA,UAAU,EAAGF;AAFd,IADD,CADD,CAvBD,CADD;AAkCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { PanelBody, ToggleControl, Disabled } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls, useBlockProps } from '@wordpress/block-editor';\nimport ServerSideRender from '@wordpress/server-side-render';\n\nexport default function ArchivesEdit( { attributes, setAttributes } ) {\n\tconst { showPostCounts, displayAsDropdown } = attributes;\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Archives settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display as dropdown' ) }\n\t\t\t\t\t\tchecked={ displayAsDropdown }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayAsDropdown: ! displayAsDropdown,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Show post counts' ) }\n\t\t\t\t\t\tchecked={ showPostCounts }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowPostCounts: ! showPostCounts,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...useBlockProps() }>\n\t\t\t\t<Disabled>\n\t\t\t\t\t<ServerSideRender\n\t\t\t\t\t\tblock=\"core/archives\"\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t</Disabled>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/archives/edit.js"],"names":["ArchivesEdit","attributes","setAttributes","showPostCounts","displayAsDropdown","type","label","value"],"mappings":";;;;;;;;;;;AAGA;;AAMA;;AACA;;AACA;;AAXA;AACA;AACA;AAWe,SAASA,YAAT,OAAuD;AAAA,MAAhC;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAAgC;AACrE,QAAM;AAAEC,IAAAA,cAAF;AAAkBC,IAAAA,iBAAlB;AAAqCC,IAAAA;AAArC,MAA8CJ,UAApD;AAEA,SACC,qDACC,4BAAC,8BAAD,QACC,4BAAC,qBAAD;AAAW,IAAA,KAAK,EAAG,cAAI,mBAAJ;AAAnB,KACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,qBAAJ,CADT;AAEC,IAAA,OAAO,EAAGG,iBAFX;AAGC,IAAA,QAAQ,EAAG,MACVF,aAAa,CAAE;AACdE,MAAAA,iBAAiB,EAAE,CAAEA;AADP,KAAF;AAJf,IADD,EAUC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,kBAAJ,CADT;AAEC,IAAA,OAAO,EAAGD,cAFX;AAGC,IAAA,QAAQ,EAAG,MACVD,aAAa,CAAE;AACdC,MAAAA,cAAc,EAAE,CAAEA;AADJ,KAAF;AAJf,IAVD,EAmBC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,WAAJ,CADT;AAEC,IAAA,OAAO,EAAG,CACT;AAAEG,MAAAA,KAAK,EAAE,cAAI,MAAJ,CAAT;AAAuBC,MAAAA,KAAK,EAAE;AAA9B,KADS,EAET;AAAED,MAAAA,KAAK,EAAE,cAAI,OAAJ,CAAT;AAAwBC,MAAAA,KAAK,EAAE;AAA/B,KAFS,EAGT;AAAED,MAAAA,KAAK,EAAE,cAAI,MAAJ,CAAT;AAAuBC,MAAAA,KAAK,EAAE;AAA9B,KAHS,EAIT;AAAED,MAAAA,KAAK,EAAE,cAAI,KAAJ,CAAT;AAAsBC,MAAAA,KAAK,EAAE;AAA7B,KAJS,CAFX;AAQC,IAAA,KAAK,EAAGF,IART;AASC,IAAA,QAAQ,EAAKE,KAAF,IACVL,aAAa,CAAE;AAAEG,MAAAA,IAAI,EAAEE;AAAR,KAAF;AAVf,IAnBD,CADD,CADD,EAoCC,mCAAU,iCAAV,EACC,4BAAC,oBAAD,QACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAC,eADP;AAEC,IAAA,UAAU,EAAGN;AAFd,IADD,CADD,CApCD,CADD;AA+CA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tPanelBody,\n\tToggleControl,\n\tSelectControl,\n\tDisabled,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls, useBlockProps } from '@wordpress/block-editor';\nimport ServerSideRender from '@wordpress/server-side-render';\n\nexport default function ArchivesEdit( { attributes, setAttributes } ) {\n\tconst { showPostCounts, displayAsDropdown, type } = attributes;\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Archives settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display as dropdown' ) }\n\t\t\t\t\t\tchecked={ displayAsDropdown }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayAsDropdown: ! displayAsDropdown,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Show post counts' ) }\n\t\t\t\t\t\tchecked={ showPostCounts }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowPostCounts: ! showPostCounts,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\tlabel={ __( 'Group by:' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: __( 'Year' ), value: 'yearly' },\n\t\t\t\t\t\t\t{ label: __( 'Month' ), value: 'monthly' },\n\t\t\t\t\t\t\t{ label: __( 'Week' ), value: 'weekly' },\n\t\t\t\t\t\t\t{ label: __( 'Day' ), value: 'daily' },\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ type }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { type: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...useBlockProps() }>\n\t\t\t\t<Disabled>\n\t\t\t\t\t<ServerSideRender\n\t\t\t\t\t\tblock=\"core/archives\"\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t</Disabled>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
@@ -24,7 +24,7 @@ const metadata = {
24
24
  name: "core/archives",
25
25
  title: "Archives",
26
26
  category: "widgets",
27
- description: "Display a monthly archive of your posts.",
27
+ description: "Display a date archive of your posts.",
28
28
  textdomain: "default",
29
29
  attributes: {
30
30
  displayAsDropdown: {
@@ -34,6 +34,10 @@ const metadata = {
34
34
  showPostCounts: {
35
35
  type: "boolean",
36
36
  "default": false
37
+ },
38
+ type: {
39
+ type: "string",
40
+ "default": "monthly"
37
41
  }
38
42
  },
39
43
  supports: {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/archives/index.js"],"names":["name","metadata","settings","icon","example","edit"],"mappings":";;;;;;;;;AAGA;;AAMA;;AATA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,cADuB;AAEvBC,EAAAA,OAAO,EAAE,EAFc;AAGvBC,EAAAA,IAAI,EAAJA;AAHuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { archive as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {},\n\tedit,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/archives/index.js"],"names":["name","metadata","settings","icon","example","edit"],"mappings":";;;;;;;;;AAGA;;AAMA;;AATA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,cADuB;AAEvBC,EAAAA,OAAO,EAAE,EAFc;AAGvBC,EAAAA,IAAI,EAAJA;AAHuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { archive as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {},\n\tedit,\n};\n"]}
@@ -83,10 +83,6 @@ function AudioEdit(_ref) {
83
83
  createErrorNotice
84
84
  } = (0, _data.useDispatch)(_notices.store);
85
85
 
86
- const onError = () => {
87
- createErrorNotice((0, _i18n.__)('Failed to insert audio file.'));
88
- };
89
-
90
86
  function toggleAttribute(attribute) {
91
87
  return newValue => {
92
88
  setAttributes({
@@ -164,7 +160,6 @@ function AudioEdit(_ref) {
164
160
  return (0, _element.createElement)(_blockEditor.MediaUploadProgress, {
165
161
  mediaId: id,
166
162
  onFinishMediaUploadWithSuccess: onFileChange,
167
- onFinishMediaUploadWithFailure: onError,
168
163
  onMediaUploadStateReset: onFileChange,
169
164
  containerStyle: _style.default.progressContainer,
170
165
  progressBarStyle: _style.default.progressBar,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/audio/edit.native.js"],"names":["ALLOWED_MEDIA_TYPES","AudioEdit","attributes","setAttributes","isSelected","insertBlocksAfter","onFocus","onBlur","clientId","id","autoplay","loop","preload","src","isCaptionSelected","setIsCaptionSelected","onFileChange","mediaId","mediaUrl","wasBlockJustInserted","select","blockEditorStore","createErrorNotice","noticesStore","onError","toggleAttribute","attribute","newValue","onSelectURL","newSrc","undefined","onSelectAudio","media","url","onAudioPress","onFocusCaption","icon","getBlockControls","open","replace","getBlockUI","getMediaOptions","styles","progressContainer","progressBar","spinner","isUploadInProgress","isUploadFailed","retryMessage","value","label","caption"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { TouchableWithoutFeedback } from 'react-native';\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { View } from '@wordpress/primitives';\nimport {\n\tPanelBody,\n\tSelectControl,\n\tToggleControl,\n\tToolbarButton,\n\tToolbarGroup,\n\tAudioPlayer,\n} from '@wordpress/components';\nimport {\n\tBlockCaption,\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadProgress,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { audio as icon, replace } from '@wordpress/icons';\nimport { useState } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { isURL } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\nconst ALLOWED_MEDIA_TYPES = [ 'audio' ];\n\nfunction AudioEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tinsertBlocksAfter,\n\tonFocus,\n\tonBlur,\n\tclientId,\n} ) {\n\tconst { id, autoplay, loop, preload, src } = attributes;\n\n\tconst [ isCaptionSelected, setIsCaptionSelected ] = useState( false );\n\n\tconst onFileChange = ( { mediaId, mediaUrl } ) => {\n\t\tsetAttributes( { id: mediaId, src: mediaUrl } );\n\t};\n\n\tconst { wasBlockJustInserted } = useSelect( ( select ) => ( {\n\t\twasBlockJustInserted: select( blockEditorStore ).wasBlockJustInserted(\n\t\t\tclientId,\n\t\t\t'inserter_menu'\n\t\t),\n\t} ) );\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tconst onError = () => {\n\t\tcreateErrorNotice( __( 'Failed to insert audio file.' ) );\n\t};\n\n\tfunction toggleAttribute( attribute ) {\n\t\treturn ( newValue ) => {\n\t\t\tsetAttributes( { [ attribute ]: newValue } );\n\t\t};\n\t}\n\n\tfunction onSelectURL( newSrc ) {\n\t\tif ( newSrc !== src ) {\n\t\t\tif ( isURL( newSrc ) ) {\n\t\t\t\tsetAttributes( { src: newSrc, id: undefined } );\n\t\t\t} else {\n\t\t\t\tcreateErrorNotice( __( 'Invalid URL. Audio file not found.' ) );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction onSelectAudio( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\t// In this case there was an error and we should continue in the editing state\n\t\t\t// previous attributes should be removed because they may be temporary blob urls.\n\t\t\tsetAttributes( { src: undefined, id: undefined } );\n\t\t\treturn;\n\t\t}\n\t\t// Sets the block's attribute and updates the edit component from the\n\t\t// selected media, then switches off the editing UI.\n\t\tsetAttributes( { src: media.url, id: media.id } );\n\t}\n\n\tfunction onAudioPress() {\n\t\tsetIsCaptionSelected( false );\n\t}\n\n\tfunction onFocusCaption() {\n\t\tif ( ! isCaptionSelected ) {\n\t\t\tsetIsCaptionSelected( true );\n\t\t}\n\t}\n\n\tif ( ! src ) {\n\t\treturn (\n\t\t\t<View>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectAudio }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\taccept=\"audio/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ attributes }\n\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\tautoOpenMediaUpload={ isSelected && wasBlockJustInserted }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t}\n\n\tfunction getBlockControls( open ) {\n\t\treturn (\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ttitle={ __( 'Replace audio' ) }\n\t\t\t\t\t\ticon={ replace }\n\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t/>\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t);\n\t}\n\n\tfunction getBlockUI( open, getMediaOptions ) {\n\t\treturn (\n\t\t\t<MediaUploadProgress\n\t\t\t\tmediaId={ id }\n\t\t\t\tonFinishMediaUploadWithSuccess={ onFileChange }\n\t\t\t\tonFinishMediaUploadWithFailure={ onError }\n\t\t\t\tonMediaUploadStateReset={ onFileChange }\n\t\t\t\tcontainerStyle={ styles.progressContainer }\n\t\t\t\tprogressBarStyle={ styles.progressBar }\n\t\t\t\tspinnerStyle={ styles.spinner }\n\t\t\t\trenderContent={ ( {\n\t\t\t\t\tisUploadInProgress,\n\t\t\t\t\tisUploadFailed,\n\t\t\t\t\tretryMessage,\n\t\t\t\t} ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isCaptionSelected &&\n\t\t\t\t\t\t\t\t! isUploadInProgress &&\n\t\t\t\t\t\t\t\tgetBlockControls( open ) }\n\t\t\t\t\t\t\t{ getMediaOptions() }\n\t\t\t\t\t\t\t<AudioPlayer\n\t\t\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\t\t\tisUploadFailed={ isUploadFailed }\n\t\t\t\t\t\t\t\tretryMessage={ retryMessage }\n\t\t\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<TouchableWithoutFeedback\n\t\t\taccessible={ ! isSelected }\n\t\t\tonPress={ onAudioPress }\n\t\t\tdisabled={ ! isSelected }\n\t\t>\n\t\t\t<View>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Audio settings' ) }>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\t\t\tonChange={ toggleAttribute( 'autoplay' ) }\n\t\t\t\t\t\t\tchecked={ autoplay }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Autoplay may cause usability issues for some users.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\t\t\tonChange={ toggleAttribute( 'loop' ) }\n\t\t\t\t\t\t\tchecked={ loop }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Preload',\n\t\t\t\t\t\t\t\t'noun; Audio block parameter'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tvalue={ preload || '' }\n\t\t\t\t\t\t\t// `undefined` is required for the preload attribute to be unset.\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tpreload: value || undefined,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t\t{ value: '', label: __( 'Browser default' ) },\n\t\t\t\t\t\t\t\t{ value: 'auto', label: __( 'Auto' ) },\n\t\t\t\t\t\t\t\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: 'none',\n\t\t\t\t\t\t\t\t\tlabel: _x( 'None', '\"Preload\" value' ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\thideCancelButton={ true }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t\t<MediaUpload\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tisReplacingMedia={ true }\n\t\t\t\t\tonSelect={ onSelectAudio }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\trender={ ( { open, getMediaOptions } ) => {\n\t\t\t\t\t\treturn getBlockUI( open, getMediaOptions );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<BlockCaption\n\t\t\t\t\taccessible={ true }\n\t\t\t\t\taccessibilityLabelCreator={ ( caption ) =>\n\t\t\t\t\t\tisEmpty( caption )\n\t\t\t\t\t\t\t? /* translators: accessibility text. Empty Audio caption. */\n\t\t\t\t\t\t\t __( 'Audio caption. Empty' )\n\t\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: accessibility text. %s: Audio caption. */\n\t\t\t\t\t\t\t\t\t__( 'Audio caption. %s' ),\n\t\t\t\t\t\t\t\t\tcaption\n\t\t\t\t\t\t\t )\n\t\t\t\t\t}\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisSelected={ isCaptionSelected }\n\t\t\t\t\tonFocus={ onFocusCaption }\n\t\t\t\t\tonBlur={ onBlur }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t</TouchableWithoutFeedback>\n\t);\n}\nexport default AudioEdit;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/audio/edit.native.js"],"names":["ALLOWED_MEDIA_TYPES","AudioEdit","attributes","setAttributes","isSelected","insertBlocksAfter","onFocus","onBlur","clientId","id","autoplay","loop","preload","src","isCaptionSelected","setIsCaptionSelected","onFileChange","mediaId","mediaUrl","wasBlockJustInserted","select","blockEditorStore","createErrorNotice","noticesStore","toggleAttribute","attribute","newValue","onSelectURL","newSrc","undefined","onSelectAudio","media","url","onAudioPress","onFocusCaption","icon","getBlockControls","open","replace","getBlockUI","getMediaOptions","styles","progressContainer","progressBar","spinner","isUploadInProgress","isUploadFailed","retryMessage","value","label","caption"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { TouchableWithoutFeedback } from 'react-native';\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { View } from '@wordpress/primitives';\nimport {\n\tPanelBody,\n\tSelectControl,\n\tToggleControl,\n\tToolbarButton,\n\tToolbarGroup,\n\tAudioPlayer,\n} from '@wordpress/components';\nimport {\n\tBlockCaption,\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadProgress,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { audio as icon, replace } from '@wordpress/icons';\nimport { useState } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { isURL } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\nconst ALLOWED_MEDIA_TYPES = [ 'audio' ];\n\nfunction AudioEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tinsertBlocksAfter,\n\tonFocus,\n\tonBlur,\n\tclientId,\n} ) {\n\tconst { id, autoplay, loop, preload, src } = attributes;\n\n\tconst [ isCaptionSelected, setIsCaptionSelected ] = useState( false );\n\n\tconst onFileChange = ( { mediaId, mediaUrl } ) => {\n\t\tsetAttributes( { id: mediaId, src: mediaUrl } );\n\t};\n\n\tconst { wasBlockJustInserted } = useSelect( ( select ) => ( {\n\t\twasBlockJustInserted: select( blockEditorStore ).wasBlockJustInserted(\n\t\t\tclientId,\n\t\t\t'inserter_menu'\n\t\t),\n\t} ) );\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tfunction toggleAttribute( attribute ) {\n\t\treturn ( newValue ) => {\n\t\t\tsetAttributes( { [ attribute ]: newValue } );\n\t\t};\n\t}\n\n\tfunction onSelectURL( newSrc ) {\n\t\tif ( newSrc !== src ) {\n\t\t\tif ( isURL( newSrc ) ) {\n\t\t\t\tsetAttributes( { src: newSrc, id: undefined } );\n\t\t\t} else {\n\t\t\t\tcreateErrorNotice( __( 'Invalid URL. Audio file not found.' ) );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction onSelectAudio( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\t// In this case there was an error and we should continue in the editing state\n\t\t\t// previous attributes should be removed because they may be temporary blob urls.\n\t\t\tsetAttributes( { src: undefined, id: undefined } );\n\t\t\treturn;\n\t\t}\n\t\t// Sets the block's attribute and updates the edit component from the\n\t\t// selected media, then switches off the editing UI.\n\t\tsetAttributes( { src: media.url, id: media.id } );\n\t}\n\n\tfunction onAudioPress() {\n\t\tsetIsCaptionSelected( false );\n\t}\n\n\tfunction onFocusCaption() {\n\t\tif ( ! isCaptionSelected ) {\n\t\t\tsetIsCaptionSelected( true );\n\t\t}\n\t}\n\n\tif ( ! src ) {\n\t\treturn (\n\t\t\t<View>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectAudio }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\taccept=\"audio/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ attributes }\n\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\tautoOpenMediaUpload={ isSelected && wasBlockJustInserted }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t}\n\n\tfunction getBlockControls( open ) {\n\t\treturn (\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ttitle={ __( 'Replace audio' ) }\n\t\t\t\t\t\ticon={ replace }\n\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t/>\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t);\n\t}\n\n\tfunction getBlockUI( open, getMediaOptions ) {\n\t\treturn (\n\t\t\t<MediaUploadProgress\n\t\t\t\tmediaId={ id }\n\t\t\t\tonFinishMediaUploadWithSuccess={ onFileChange }\n\t\t\t\tonMediaUploadStateReset={ onFileChange }\n\t\t\t\tcontainerStyle={ styles.progressContainer }\n\t\t\t\tprogressBarStyle={ styles.progressBar }\n\t\t\t\tspinnerStyle={ styles.spinner }\n\t\t\t\trenderContent={ ( {\n\t\t\t\t\tisUploadInProgress,\n\t\t\t\t\tisUploadFailed,\n\t\t\t\t\tretryMessage,\n\t\t\t\t} ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isCaptionSelected &&\n\t\t\t\t\t\t\t\t! isUploadInProgress &&\n\t\t\t\t\t\t\t\tgetBlockControls( open ) }\n\t\t\t\t\t\t\t{ getMediaOptions() }\n\t\t\t\t\t\t\t<AudioPlayer\n\t\t\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\t\t\tisUploadFailed={ isUploadFailed }\n\t\t\t\t\t\t\t\tretryMessage={ retryMessage }\n\t\t\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<TouchableWithoutFeedback\n\t\t\taccessible={ ! isSelected }\n\t\t\tonPress={ onAudioPress }\n\t\t\tdisabled={ ! isSelected }\n\t\t>\n\t\t\t<View>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Audio settings' ) }>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\t\t\tonChange={ toggleAttribute( 'autoplay' ) }\n\t\t\t\t\t\t\tchecked={ autoplay }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Autoplay may cause usability issues for some users.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\t\t\tonChange={ toggleAttribute( 'loop' ) }\n\t\t\t\t\t\t\tchecked={ loop }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Preload',\n\t\t\t\t\t\t\t\t'noun; Audio block parameter'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tvalue={ preload || '' }\n\t\t\t\t\t\t\t// `undefined` is required for the preload attribute to be unset.\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tpreload: value || undefined,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t\t{ value: '', label: __( 'Browser default' ) },\n\t\t\t\t\t\t\t\t{ value: 'auto', label: __( 'Auto' ) },\n\t\t\t\t\t\t\t\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: 'none',\n\t\t\t\t\t\t\t\t\tlabel: _x( 'None', '\"Preload\" value' ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\thideCancelButton={ true }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t\t<MediaUpload\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tisReplacingMedia={ true }\n\t\t\t\t\tonSelect={ onSelectAudio }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\trender={ ( { open, getMediaOptions } ) => {\n\t\t\t\t\t\treturn getBlockUI( open, getMediaOptions );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<BlockCaption\n\t\t\t\t\taccessible={ true }\n\t\t\t\t\taccessibilityLabelCreator={ ( caption ) =>\n\t\t\t\t\t\tisEmpty( caption )\n\t\t\t\t\t\t\t? /* translators: accessibility text. Empty Audio caption. */\n\t\t\t\t\t\t\t __( 'Audio caption. Empty' )\n\t\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: accessibility text. %s: Audio caption. */\n\t\t\t\t\t\t\t\t\t__( 'Audio caption. %s' ),\n\t\t\t\t\t\t\t\t\tcaption\n\t\t\t\t\t\t\t )\n\t\t\t\t\t}\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisSelected={ isCaptionSelected }\n\t\t\t\t\tonFocus={ onFocusCaption }\n\t\t\t\t\tonBlur={ onBlur }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t</TouchableWithoutFeedback>\n\t);\n}\nexport default AudioEdit;\n"]}
@@ -19,6 +19,8 @@ var _components = require("@wordpress/components");
19
19
 
20
20
  var _i18n = require("@wordpress/i18n");
21
21
 
22
+ var _url = require("@wordpress/url");
23
+
22
24
  var _hooks = require("./hooks");
23
25
 
24
26
  var _userControl = _interopRequireDefault(require("./user-control"));
@@ -42,7 +44,7 @@ const AvatarInspectorControls = _ref => {
42
44
  selectUser
43
45
  } = _ref;
44
46
  return (0, _element.createElement)(_blockEditor.InspectorControls, null, (0, _element.createElement)(_components.PanelBody, {
45
- title: (0, _i18n.__)('Avatar Settings')
47
+ title: (0, _i18n.__)('Settings')
46
48
  }, (0, _element.createElement)(_components.RangeControl, {
47
49
  label: (0, _i18n.__)('Image size'),
48
50
  onChange: newSize => setAttributes({
@@ -52,13 +54,6 @@ const AvatarInspectorControls = _ref => {
52
54
  max: avatar.maxSize,
53
55
  initialPosition: attributes === null || attributes === void 0 ? void 0 : attributes.size,
54
56
  value: attributes === null || attributes === void 0 ? void 0 : attributes.size
55
- }), selectUser && (0, _element.createElement)(_userControl.default, {
56
- value: attributes === null || attributes === void 0 ? void 0 : attributes.userId,
57
- onChange: value => {
58
- setAttributes({
59
- userId: value
60
- });
61
- }
62
57
  }), (0, _element.createElement)(_components.ToggleControl, {
63
58
  label: (0, _i18n.__)('Link to user profile'),
64
59
  onChange: () => setAttributes({
@@ -71,6 +66,13 @@ const AvatarInspectorControls = _ref => {
71
66
  linkTarget: value ? '_blank' : '_self'
72
67
  }),
73
68
  checked: attributes.linkTarget === '_blank'
69
+ }), selectUser && (0, _element.createElement)(_userControl.default, {
70
+ value: attributes === null || attributes === void 0 ? void 0 : attributes.userId,
71
+ onChange: value => {
72
+ setAttributes({
73
+ userId: value
74
+ });
75
+ }
74
76
  })));
75
77
  };
76
78
 
@@ -83,6 +85,9 @@ const ResizableAvatar = _ref2 => {
83
85
  isSelected
84
86
  } = _ref2;
85
87
  const borderProps = (0, _blockEditor.__experimentalUseBorderProps)(attributes);
88
+ const doubledSizedSrc = (0, _url.addQueryArgs)((0, _url.removeQueryArgs)(avatar === null || avatar === void 0 ? void 0 : avatar.src, ['s']), {
89
+ s: (attributes === null || attributes === void 0 ? void 0 : attributes.size) * 2
90
+ });
86
91
  return (0, _element.createElement)("div", blockProps, (0, _element.createElement)(_components.ResizableBox, {
87
92
  size: {
88
93
  width: attributes.size,
@@ -104,7 +109,7 @@ const ResizableAvatar = _ref2 => {
104
109
  minWidth: avatar.minSize,
105
110
  maxWidth: avatar.maxSize
106
111
  }, (0, _element.createElement)("img", (0, _extends2.default)({
107
- src: avatar.src,
112
+ src: doubledSizedSrc,
108
113
  alt: avatar.alt
109
114
  }, borderProps, {
110
115
  className: (0, _classnames.default)('avatar', 'avatar-' + attributes.size, 'photo', 'wp-block-avatar__image', borderProps.className),
@@ -194,9 +199,10 @@ const UserEdit = _ref4 => {
194
199
  };
195
200
 
196
201
  function Edit(props) {
197
- var _props$context;
202
+ var _props$context, _props$context2;
198
203
 
199
- if (props !== null && props !== void 0 && (_props$context = props.context) !== null && _props$context !== void 0 && _props$context.commentId) {
204
+ // Don't show the Comment Edit controls if we have a comment ID set, or if we're in the Site Editor (where it is `null`).
205
+ if (props !== null && props !== void 0 && (_props$context = props.context) !== null && _props$context !== void 0 && _props$context.commentId || (props === null || props === void 0 ? void 0 : (_props$context2 = props.context) === null || _props$context2 === void 0 ? void 0 : _props$context2.commentId) === null) {
200
206
  return (0, _element.createElement)(CommentEdit, props);
201
207
  }
202
208
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/avatar/edit.js"],"names":["AvatarInspectorControls","setAttributes","avatar","attributes","selectUser","newSize","size","minSize","maxSize","userId","value","isLink","linkTarget","ResizableAvatar","blockProps","isSelected","borderProps","width","height","event","direction","elt","delta","parseInt","top","right","bottom","left","src","alt","className","style","CommentEdit","context","commentId","preventDefault","UserEdit","postId","postType","Edit","props"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tRangeControl,\n\tResizableBox,\n\tToggleControl,\n} from '@wordpress/components';\nimport { __, isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { useUserAvatar, useCommentAvatar } from './hooks';\nimport UserControl from './user-control';\n\nconst AvatarInspectorControls = ( {\n\tsetAttributes,\n\tavatar,\n\tattributes,\n\tselectUser,\n} ) => (\n\t<InspectorControls>\n\t\t<PanelBody title={ __( 'Avatar Settings' ) }>\n\t\t\t<RangeControl\n\t\t\t\tlabel={ __( 'Image size' ) }\n\t\t\t\tonChange={ ( newSize ) =>\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\tsize: newSize,\n\t\t\t\t\t} )\n\t\t\t\t}\n\t\t\t\tmin={ avatar.minSize }\n\t\t\t\tmax={ avatar.maxSize }\n\t\t\t\tinitialPosition={ attributes?.size }\n\t\t\t\tvalue={ attributes?.size }\n\t\t\t/>\n\t\t\t{ selectUser && (\n\t\t\t\t<UserControl\n\t\t\t\t\tvalue={ attributes?.userId }\n\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tuserId: value,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<ToggleControl\n\t\t\t\tlabel={ __( 'Link to user profile' ) }\n\t\t\t\tonChange={ () =>\n\t\t\t\t\tsetAttributes( { isLink: ! attributes.isLink } )\n\t\t\t\t}\n\t\t\t\tchecked={ attributes.isLink }\n\t\t\t/>\n\t\t\t{ attributes.isLink && (\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tchecked={ attributes.linkTarget === '_blank' }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</PanelBody>\n\t</InspectorControls>\n);\n\nconst ResizableAvatar = ( {\n\tsetAttributes,\n\tattributes,\n\tavatar,\n\tblockProps,\n\tisSelected,\n} ) => {\n\tconst borderProps = useBorderProps( attributes );\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: attributes.size,\n\t\t\t\t\theight: attributes.size,\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\tsize: parseInt(\n\t\t\t\t\t\t\tattributes.size + ( delta.height || delta.width ),\n\t\t\t\t\t\t\t10\n\t\t\t\t\t\t),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tlockAspectRatio\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: ! isRTL(),\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: isRTL(),\n\t\t\t\t} }\n\t\t\t\tminWidth={ avatar.minSize }\n\t\t\t\tmaxWidth={ avatar.maxSize }\n\t\t\t>\n\t\t\t\t<img\n\t\t\t\t\tsrc={ avatar.src }\n\t\t\t\t\talt={ avatar.alt }\n\t\t\t\t\t{ ...borderProps }\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'avatar',\n\t\t\t\t\t\t'avatar-' + attributes.size,\n\t\t\t\t\t\t'photo',\n\t\t\t\t\t\t'wp-block-avatar__image',\n\t\t\t\t\t\tborderProps.className\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style, // Border radius, width and style.\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</ResizableBox>\n\t\t</div>\n\t);\n};\nconst CommentEdit = ( { attributes, context, setAttributes, isSelected } ) => {\n\tconst { commentId } = context;\n\tconst blockProps = useBlockProps();\n\tconst avatar = useCommentAvatar( { commentId } );\n\treturn (\n\t\t<>\n\t\t\t<AvatarInspectorControls\n\t\t\t\tavatar={ avatar }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tattributes={ attributes }\n\t\t\t\tselectUser={ false }\n\t\t\t/>\n\t\t\t{ attributes.isLink ? (\n\t\t\t\t<a\n\t\t\t\t\thref=\"#avatar-pseudo-link\"\n\t\t\t\t\tclassName=\"wp-block-avatar__link\"\n\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t>\n\t\t\t\t\t<ResizableAvatar\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tavatar={ avatar }\n\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t/>\n\t\t\t\t</a>\n\t\t\t) : (\n\t\t\t\t<ResizableAvatar\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tavatar={ avatar }\n\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nconst UserEdit = ( { attributes, context, setAttributes, isSelected } ) => {\n\tconst { postId, postType } = context;\n\tconst avatar = useUserAvatar( {\n\t\tuserId: attributes?.userId,\n\t\tpostId,\n\t\tpostType,\n\t} );\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<>\n\t\t\t<AvatarInspectorControls\n\t\t\t\tselectUser={ true }\n\t\t\t\tattributes={ attributes }\n\t\t\t\tavatar={ avatar }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t/>\n\t\t\t<div>\n\t\t\t\t{ attributes.isLink ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\thref=\"#avatar-pseudo-link\"\n\t\t\t\t\t\tclassName=\"wp-block-avatar__link\"\n\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ResizableAvatar\n\t\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\t\tavatar={ avatar }\n\t\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\t<ResizableAvatar\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tavatar={ avatar }\n\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n};\n\nexport default function Edit( props ) {\n\tif ( props?.context?.commentId ) {\n\t\treturn <CommentEdit { ...props } />;\n\t}\n\treturn <UserEdit { ...props } />;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/avatar/edit.js"],"names":["AvatarInspectorControls","setAttributes","avatar","attributes","selectUser","newSize","size","minSize","maxSize","isLink","value","linkTarget","userId","ResizableAvatar","blockProps","isSelected","borderProps","doubledSizedSrc","src","s","width","height","event","direction","elt","delta","parseInt","top","right","bottom","left","alt","className","style","CommentEdit","context","commentId","preventDefault","UserEdit","postId","postType","Edit","props"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tRangeControl,\n\tResizableBox,\n\tToggleControl,\n} from '@wordpress/components';\nimport { __, isRTL } from '@wordpress/i18n';\nimport { addQueryArgs, removeQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { useUserAvatar, useCommentAvatar } from './hooks';\nimport UserControl from './user-control';\n\nconst AvatarInspectorControls = ( {\n\tsetAttributes,\n\tavatar,\n\tattributes,\n\tselectUser,\n} ) => (\n\t<InspectorControls>\n\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t<RangeControl\n\t\t\t\tlabel={ __( 'Image size' ) }\n\t\t\t\tonChange={ ( newSize ) =>\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\tsize: newSize,\n\t\t\t\t\t} )\n\t\t\t\t}\n\t\t\t\tmin={ avatar.minSize }\n\t\t\t\tmax={ avatar.maxSize }\n\t\t\t\tinitialPosition={ attributes?.size }\n\t\t\t\tvalue={ attributes?.size }\n\t\t\t/>\n\t\t\t<ToggleControl\n\t\t\t\tlabel={ __( 'Link to user profile' ) }\n\t\t\t\tonChange={ () =>\n\t\t\t\t\tsetAttributes( { isLink: ! attributes.isLink } )\n\t\t\t\t}\n\t\t\t\tchecked={ attributes.isLink }\n\t\t\t/>\n\t\t\t{ attributes.isLink && (\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tchecked={ attributes.linkTarget === '_blank' }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ selectUser && (\n\t\t\t\t<UserControl\n\t\t\t\t\tvalue={ attributes?.userId }\n\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tuserId: value,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</PanelBody>\n\t</InspectorControls>\n);\n\nconst ResizableAvatar = ( {\n\tsetAttributes,\n\tattributes,\n\tavatar,\n\tblockProps,\n\tisSelected,\n} ) => {\n\tconst borderProps = useBorderProps( attributes );\n\tconst doubledSizedSrc = addQueryArgs(\n\t\tremoveQueryArgs( avatar?.src, [ 's' ] ),\n\t\t{\n\t\t\ts: attributes?.size * 2,\n\t\t}\n\t);\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: attributes.size,\n\t\t\t\t\theight: attributes.size,\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\tsize: parseInt(\n\t\t\t\t\t\t\tattributes.size + ( delta.height || delta.width ),\n\t\t\t\t\t\t\t10\n\t\t\t\t\t\t),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tlockAspectRatio\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: ! isRTL(),\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: isRTL(),\n\t\t\t\t} }\n\t\t\t\tminWidth={ avatar.minSize }\n\t\t\t\tmaxWidth={ avatar.maxSize }\n\t\t\t>\n\t\t\t\t<img\n\t\t\t\t\tsrc={ doubledSizedSrc }\n\t\t\t\t\talt={ avatar.alt }\n\t\t\t\t\t{ ...borderProps }\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'avatar',\n\t\t\t\t\t\t'avatar-' + attributes.size,\n\t\t\t\t\t\t'photo',\n\t\t\t\t\t\t'wp-block-avatar__image',\n\t\t\t\t\t\tborderProps.className\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style, // Border radius, width and style.\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</ResizableBox>\n\t\t</div>\n\t);\n};\nconst CommentEdit = ( { attributes, context, setAttributes, isSelected } ) => {\n\tconst { commentId } = context;\n\tconst blockProps = useBlockProps();\n\tconst avatar = useCommentAvatar( { commentId } );\n\treturn (\n\t\t<>\n\t\t\t<AvatarInspectorControls\n\t\t\t\tavatar={ avatar }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tattributes={ attributes }\n\t\t\t\tselectUser={ false }\n\t\t\t/>\n\t\t\t{ attributes.isLink ? (\n\t\t\t\t<a\n\t\t\t\t\thref=\"#avatar-pseudo-link\"\n\t\t\t\t\tclassName=\"wp-block-avatar__link\"\n\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t>\n\t\t\t\t\t<ResizableAvatar\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tavatar={ avatar }\n\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t/>\n\t\t\t\t</a>\n\t\t\t) : (\n\t\t\t\t<ResizableAvatar\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tavatar={ avatar }\n\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nconst UserEdit = ( { attributes, context, setAttributes, isSelected } ) => {\n\tconst { postId, postType } = context;\n\tconst avatar = useUserAvatar( {\n\t\tuserId: attributes?.userId,\n\t\tpostId,\n\t\tpostType,\n\t} );\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<>\n\t\t\t<AvatarInspectorControls\n\t\t\t\tselectUser={ true }\n\t\t\t\tattributes={ attributes }\n\t\t\t\tavatar={ avatar }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t/>\n\t\t\t<div>\n\t\t\t\t{ attributes.isLink ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\thref=\"#avatar-pseudo-link\"\n\t\t\t\t\t\tclassName=\"wp-block-avatar__link\"\n\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ResizableAvatar\n\t\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\t\tavatar={ avatar }\n\t\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\t<ResizableAvatar\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tavatar={ avatar }\n\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n};\n\nexport default function Edit( props ) {\n\t// Don't show the Comment Edit controls if we have a comment ID set, or if we're in the Site Editor (where it is `null`).\n\tif ( props?.context?.commentId || props?.context?.commentId === null ) {\n\t\treturn <CommentEdit { ...props } />;\n\t}\n\treturn <UserEdit { ...props } />;\n}\n"]}
@@ -37,6 +37,7 @@ function ReusableBlockEdit(_ref) {
37
37
  hasResolved
38
38
  } = (0, _coreData.__experimentalUseEntityRecord)('postType', 'wp_block', ref);
39
39
  const isMissing = hasResolved && !record;
40
+ const canRemove = (0, _data.useSelect)(select => select(_blockEditor.store).canRemoveBlock(clientId), [clientId]);
40
41
  const {
41
42
  __experimentalConvertBlockToStatic: convertBlockToStatic
42
43
  } = (0, _data.useDispatch)(_reusableBlocks.store);
@@ -64,7 +65,7 @@ function ReusableBlockEdit(_ref) {
64
65
  return (0, _element.createElement)("div", blockProps, (0, _element.createElement)(_components.Placeholder, null, (0, _element.createElement)(_components.Spinner, null)));
65
66
  }
66
67
 
67
- return (0, _element.createElement)(RecursionProvider, null, (0, _element.createElement)("div", blockProps, (0, _element.createElement)(_blockEditor.BlockControls, null, (0, _element.createElement)(_components.ToolbarGroup, null, (0, _element.createElement)(_components.ToolbarButton, {
68
+ return (0, _element.createElement)(RecursionProvider, null, (0, _element.createElement)("div", blockProps, canRemove && (0, _element.createElement)(_blockEditor.BlockControls, null, (0, _element.createElement)(_components.ToolbarGroup, null, (0, _element.createElement)(_components.ToolbarButton, {
68
69
  onClick: () => convertBlockToStatic(clientId),
69
70
  label: (0, _i18n.__)('Convert to regular blocks'),
70
71
  icon: _icons.ungroup,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/block/edit.js"],"names":["ReusableBlockEdit","attributes","ref","clientId","hasAlreadyRendered","RecursionProvider","record","hasResolved","isMissing","__experimentalConvertBlockToStatic","convertBlockToStatic","reusableBlocksStore","blocks","onInput","onChange","id","title","setTitle","blockProps","innerBlocksProps","value","renderAppender","length","undefined","InnerBlocks","ButtonBlockAppender","ungroup"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AAQA;;AACA;;AAUA;;AACA;;AA7BA;AACA;AACA;AA6Be,SAASA,iBAAT,OAAgE;AAAA,MAApC;AAAEC,IAAAA,UAAU,EAAE;AAAEC,MAAAA;AAAF,KAAd;AAAuBC,IAAAA;AAAvB,GAAoC;AAC9E,QAAM,CAAEC,kBAAF,EAAsBC,iBAAtB,IAA4C,sDACjDH,GADiD,CAAlD;AAGA,QAAM;AAAEI,IAAAA,MAAF;AAAUC,IAAAA;AAAV,MAA0B,6CAC/B,UAD+B,EAE/B,UAF+B,EAG/BL,GAH+B,CAAhC;AAKA,QAAMM,SAAS,GAAGD,WAAW,IAAI,CAAED,MAAnC;AAEA,QAAM;AACLG,IAAAA,kCAAkC,EAAEC;AAD/B,MAEF,uBAAaC,qBAAb,CAFJ;AAIA,QAAM,CAAEC,MAAF,EAAUC,OAAV,EAAmBC,QAAnB,IAAgC,oCACrC,UADqC,EAErC,UAFqC,EAGrC;AAAEC,IAAAA,EAAE,EAAEb;AAAN,GAHqC,CAAtC;AAKA,QAAM,CAAEc,KAAF,EAASC,QAAT,IAAsB,6BAC3B,UAD2B,EAE3B,UAF2B,EAG3B,OAH2B,EAI3Bf,GAJ2B,CAA5B;AAOA,QAAMgB,UAAU,GAAG,iCAAnB;AAEA,QAAMC,gBAAgB,GAAG,sCACxB,EADwB,EAExB;AACCC,IAAAA,KAAK,EAAER,MADR;AAECC,IAAAA,OAFD;AAGCC,IAAAA,QAHD;AAICO,IAAAA,cAAc,EAAET,MAAM,SAAN,IAAAA,MAAM,WAAN,IAAAA,MAAM,CAAEU,MAAR,GACbC,SADa,GAEbC,yBAAYC;AANhB,GAFwB,CAAzB;;AAYA,MAAKrB,kBAAL,EAA0B;AACzB,WACC,mCAAUc,UAAV,EACC,4BAAC,oBAAD,QACG,cAAI,yCAAJ,CADH,CADD,CADD;AAOA;;AAED,MAAKV,SAAL,EAAiB;AAChB,WACC,mCAAUU,UAAV,EACC,4BAAC,oBAAD,QACG,cAAI,2CAAJ,CADH,CADD,CADD;AAOA;;AAED,MAAK,CAAEX,WAAP,EAAqB;AACpB,WACC,mCAAUW,UAAV,EACC,4BAAC,uBAAD,QACC,4BAAC,mBAAD,OADD,CADD,CADD;AAOA;;AAED,SACC,4BAAC,iBAAD,QACC,mCAAUA,UAAV,EACC,4BAAC,0BAAD,QACC,4BAAC,wBAAD,QACC,4BAAC,yBAAD;AACC,IAAA,OAAO,EAAG,MAAMR,oBAAoB,CAAEP,QAAF,CADrC;AAEC,IAAA,KAAK,EAAG,cAAI,2BAAJ,CAFT;AAGC,IAAA,IAAI,EAAGuB,cAHR;AAIC,IAAA,WAAW;AAJZ,IADD,CADD,CADD,EAWC,4BAAC,8BAAD,QACC,4BAAC,qBAAD,QACC,4BAAC,uBAAD;AACC,IAAA,KAAK,EAAG,cAAI,MAAJ,CADT;AAEC,IAAA,KAAK,EAAGV,KAFT;AAGC,IAAA,QAAQ,EAAGC;AAHZ,IADD,CADD,CAXD,EAoBC,4BAAC,8CAAD;AACC,IAAA,QAAQ,EAAGd,QADZ;AAEC,IAAA,YAAY,EAAGgB,gBAFhB;AAGC,IAAA,SAAS,EAAC;AAHX,IApBD,CADD,CADD;AA8BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch } from '@wordpress/data';\nimport {\n\tuseEntityBlockEditor,\n\tuseEntityProp,\n\t__experimentalUseEntityRecord as useEntityRecord,\n} from '@wordpress/core-data';\nimport {\n\tPlaceholder,\n\tSpinner,\n\tToolbarGroup,\n\tToolbarButton,\n\tTextControl,\n\tPanelBody,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseInnerBlocksProps,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n\t__experimentalBlockContentOverlay as BlockContentOverlay,\n\tInnerBlocks,\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tWarning,\n} from '@wordpress/block-editor';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\nimport { ungroup } from '@wordpress/icons';\n\nexport default function ReusableBlockEdit( { attributes: { ref }, clientId } ) {\n\tconst [ hasAlreadyRendered, RecursionProvider ] = useNoRecursiveRenders(\n\t\tref\n\t);\n\tconst { record, hasResolved } = useEntityRecord(\n\t\t'postType',\n\t\t'wp_block',\n\t\tref\n\t);\n\tconst isMissing = hasResolved && ! record;\n\n\tconst {\n\t\t__experimentalConvertBlockToStatic: convertBlockToStatic,\n\t} = useDispatch( reusableBlocksStore );\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_block',\n\t\t{ id: ref }\n\t);\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_block',\n\t\t'title',\n\t\tref\n\t);\n\n\tconst blockProps = useBlockProps();\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{},\n\t\t{\n\t\t\tvalue: blocks,\n\t\t\tonInput,\n\t\t\tonChange,\n\t\t\trenderAppender: blocks?.length\n\t\t\t\t? undefined\n\t\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t\t}\n\t);\n\n\tif ( hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( isMissing ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<RecursionProvider>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ () => convertBlockToStatic( clientId ) }\n\t\t\t\t\t\t\tlabel={ __( 'Convert to regular blocks' ) }\n\t\t\t\t\t\t\ticon={ ungroup }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t\t<BlockContentOverlay\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\twrapperProps={ innerBlocksProps }\n\t\t\t\t\tclassName=\"block-library-block__reusable-block-container\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</RecursionProvider>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/block/edit.js"],"names":["ReusableBlockEdit","attributes","ref","clientId","hasAlreadyRendered","RecursionProvider","record","hasResolved","isMissing","canRemove","select","blockEditorStore","canRemoveBlock","__experimentalConvertBlockToStatic","convertBlockToStatic","reusableBlocksStore","blocks","onInput","onChange","id","title","setTitle","blockProps","innerBlocksProps","value","renderAppender","length","undefined","InnerBlocks","ButtonBlockAppender","ungroup"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AAQA;;AACA;;AAWA;;AACA;;AA9BA;AACA;AACA;AA8Be,SAASA,iBAAT,OAAgE;AAAA,MAApC;AAAEC,IAAAA,UAAU,EAAE;AAAEC,MAAAA;AAAF,KAAd;AAAuBC,IAAAA;AAAvB,GAAoC;AAC9E,QAAM,CAAEC,kBAAF,EAAsBC,iBAAtB,IAA4C,sDACjDH,GADiD,CAAlD;AAGA,QAAM;AAAEI,IAAAA,MAAF;AAAUC,IAAAA;AAAV,MAA0B,6CAC/B,UAD+B,EAE/B,UAF+B,EAG/BL,GAH+B,CAAhC;AAKA,QAAMM,SAAS,GAAGD,WAAW,IAAI,CAAED,MAAnC;AAEA,QAAMG,SAAS,GAAG,qBACfC,MAAF,IAAcA,MAAM,CAAEC,kBAAF,CAAN,CAA2BC,cAA3B,CAA2CT,QAA3C,CADG,EAEjB,CAAEA,QAAF,CAFiB,CAAlB;AAKA,QAAM;AACLU,IAAAA,kCAAkC,EAAEC;AAD/B,MAEF,uBAAaC,qBAAb,CAFJ;AAIA,QAAM,CAAEC,MAAF,EAAUC,OAAV,EAAmBC,QAAnB,IAAgC,oCACrC,UADqC,EAErC,UAFqC,EAGrC;AAAEC,IAAAA,EAAE,EAAEjB;AAAN,GAHqC,CAAtC;AAKA,QAAM,CAAEkB,KAAF,EAASC,QAAT,IAAsB,6BAC3B,UAD2B,EAE3B,UAF2B,EAG3B,OAH2B,EAI3BnB,GAJ2B,CAA5B;AAOA,QAAMoB,UAAU,GAAG,iCAAnB;AAEA,QAAMC,gBAAgB,GAAG,sCACxB,EADwB,EAExB;AACCC,IAAAA,KAAK,EAAER,MADR;AAECC,IAAAA,OAFD;AAGCC,IAAAA,QAHD;AAICO,IAAAA,cAAc,EAAET,MAAM,SAAN,IAAAA,MAAM,WAAN,IAAAA,MAAM,CAAEU,MAAR,GACbC,SADa,GAEbC,yBAAYC;AANhB,GAFwB,CAAzB;;AAYA,MAAKzB,kBAAL,EAA0B;AACzB,WACC,mCAAUkB,UAAV,EACC,4BAAC,oBAAD,QACG,cAAI,yCAAJ,CADH,CADD,CADD;AAOA;;AAED,MAAKd,SAAL,EAAiB;AAChB,WACC,mCAAUc,UAAV,EACC,4BAAC,oBAAD,QACG,cAAI,2CAAJ,CADH,CADD,CADD;AAOA;;AAED,MAAK,CAAEf,WAAP,EAAqB;AACpB,WACC,mCAAUe,UAAV,EACC,4BAAC,uBAAD,QACC,4BAAC,mBAAD,OADD,CADD,CADD;AAOA;;AAED,SACC,4BAAC,iBAAD,QACC,mCAAUA,UAAV,EACGb,SAAS,IACV,4BAAC,0BAAD,QACC,4BAAC,wBAAD,QACC,4BAAC,yBAAD;AACC,IAAA,OAAO,EAAG,MACTK,oBAAoB,CAAEX,QAAF,CAFtB;AAIC,IAAA,KAAK,EAAG,cAAI,2BAAJ,CAJT;AAKC,IAAA,IAAI,EAAG2B,cALR;AAMC,IAAA,WAAW;AANZ,IADD,CADD,CAFF,EAeC,4BAAC,8BAAD,QACC,4BAAC,qBAAD,QACC,4BAAC,uBAAD;AACC,IAAA,KAAK,EAAG,cAAI,MAAJ,CADT;AAEC,IAAA,KAAK,EAAGV,KAFT;AAGC,IAAA,QAAQ,EAAGC;AAHZ,IADD,CADD,CAfD,EAwBC,4BAAC,8CAAD;AACC,IAAA,QAAQ,EAAGlB,QADZ;AAEC,IAAA,YAAY,EAAGoB,gBAFhB;AAGC,IAAA,SAAS,EAAC;AAHX,IAxBD,CADD,CADD;AAkCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tuseEntityBlockEditor,\n\tuseEntityProp,\n\t__experimentalUseEntityRecord as useEntityRecord,\n} from '@wordpress/core-data';\nimport {\n\tPlaceholder,\n\tSpinner,\n\tToolbarGroup,\n\tToolbarButton,\n\tTextControl,\n\tPanelBody,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseInnerBlocksProps,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n\t__experimentalBlockContentOverlay as BlockContentOverlay,\n\tInnerBlocks,\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tWarning,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\nimport { ungroup } from '@wordpress/icons';\n\nexport default function ReusableBlockEdit( { attributes: { ref }, clientId } ) {\n\tconst [ hasAlreadyRendered, RecursionProvider ] = useNoRecursiveRenders(\n\t\tref\n\t);\n\tconst { record, hasResolved } = useEntityRecord(\n\t\t'postType',\n\t\t'wp_block',\n\t\tref\n\t);\n\tconst isMissing = hasResolved && ! record;\n\n\tconst canRemove = useSelect(\n\t\t( select ) => select( blockEditorStore ).canRemoveBlock( clientId ),\n\t\t[ clientId ]\n\t);\n\n\tconst {\n\t\t__experimentalConvertBlockToStatic: convertBlockToStatic,\n\t} = useDispatch( reusableBlocksStore );\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_block',\n\t\t{ id: ref }\n\t);\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_block',\n\t\t'title',\n\t\tref\n\t);\n\n\tconst blockProps = useBlockProps();\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{},\n\t\t{\n\t\t\tvalue: blocks,\n\t\t\tonInput,\n\t\t\tonChange,\n\t\t\trenderAppender: blocks?.length\n\t\t\t\t? undefined\n\t\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t\t}\n\t);\n\n\tif ( hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( isMissing ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<RecursionProvider>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ canRemove && (\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\tconvertBlockToStatic( clientId )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tlabel={ __( 'Convert to regular blocks' ) }\n\t\t\t\t\t\t\t\ticon={ ungroup }\n\t\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t) }\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t\t<BlockContentOverlay\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\twrapperProps={ innerBlocksProps }\n\t\t\t\t\tclassName=\"block-library-block__reusable-block-container\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</RecursionProvider>\n\t);\n}\n"]}
@@ -59,6 +59,7 @@ const metadata = {
59
59
  }
60
60
  },
61
61
  spacing: {
62
+ blockGap: true,
62
63
  padding: true,
63
64
  __experimentalDefaultControls: {
64
65
  padding: true
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/column/index.js"],"names":["name","metadata","settings","icon","edit","save","deprecated"],"mappings":";;;;;;;;;AAGA;;AAKA;;AACA;;AAEA;;AAXA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,aADuB;AAEvBC,EAAAA,IAAI,EAAJA,aAFuB;AAGvBC,EAAAA,IAAI,EAAJA,aAHuB;AAIvBC,EAAAA,UAAU,EAAVA;AAJuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { column as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/column/index.js"],"names":["name","metadata","settings","icon","edit","save","deprecated"],"mappings":";;;;;;;;;AAGA;;AAKA;;AACA;;AAEA;;AAXA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,aADuB;AAEvBC,EAAAA,IAAI,EAAJA,aAFuB;AAGvBC,EAAAA,IAAI,EAAJA,aAHuB;AAIvBC,EAAAA,UAAU,EAAVA;AAJuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { column as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n"]}
@@ -22,10 +22,10 @@ const metadata = {
22
22
  $schema: "https://schemas.wp.org/trunk/block.json",
23
23
  apiVersion: 2,
24
24
  name: "core/comment-author-avatar",
25
- title: "Comment Author Avatar",
25
+ title: "Comment Author Avatar (deprecated)",
26
26
  category: "theme",
27
- parent: ["core/comment-template"],
28
- description: "Add the avatar of this comment's author.",
27
+ ancestor: ["core/comment-template"],
28
+ description: "This block is deprecated. Please use the Avatar block instead.",
29
29
  textdomain: "default",
30
30
  attributes: {
31
31
  width: {
@@ -26,13 +26,13 @@ const metadata = {
26
26
  name: "core/comment-author-name",
27
27
  title: "Comment Author Name",
28
28
  category: "theme",
29
- parent: ["core/comment-template"],
30
- description: "Add the author name of this comment.",
29
+ ancestor: ["core/comment-template"],
30
+ description: "Displays the name of the author of the comment.",
31
31
  textdomain: "default",
32
32
  attributes: {
33
33
  isLink: {
34
34
  type: "boolean",
35
- "default": false
35
+ "default": true
36
36
  },
37
37
  linkTarget: {
38
38
  type: "string",
@@ -40,6 +40,10 @@ const metadata = {
40
40
  },
41
41
  textAlign: {
42
42
  type: "string"
43
+ },
44
+ fontSize: {
45
+ type: "string",
46
+ "default": "small"
43
47
  }
44
48
  },
45
49
  usesContext: ["commentId"],
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/comment-author-name/index.js"],"names":["name","metadata","settings","icon","edit","deprecated"],"mappings":";;;;;;;;;AAGA;;AAMA;;AACA;;AAVA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAGO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,wBADuB;AAEvBC,EAAAA,IAAI,EAAJA,aAFuB;AAGvBC,EAAAA,UAAU,EAAVA;AAHuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { commentAuthorName as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\nimport deprecated from './deprecated';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tdeprecated,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/comment-author-name/index.js"],"names":["name","metadata","settings","icon","edit","deprecated"],"mappings":";;;;;;;;;AAGA;;AAMA;;AACA;;AAVA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAGO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,wBADuB;AAEvBC,EAAAA,IAAI,EAAJA,aAFuB;AAGvBC,EAAAA,UAAU,EAAVA;AAHuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { commentAuthorName as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\nimport deprecated from './deprecated';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tdeprecated,\n};\n"]}
@@ -24,7 +24,7 @@ const metadata = {
24
24
  name: "core/comment-content",
25
25
  title: "Comment Content",
26
26
  category: "theme",
27
- parent: ["core/comment-template"],
27
+ ancestor: ["core/comment-template"],
28
28
  description: "Displays the contents of a comment.",
29
29
  textdomain: "default",
30
30
  usesContext: ["commentId"],
@@ -26,8 +26,8 @@ const metadata = {
26
26
  name: "core/comment-date",
27
27
  title: "Comment Date",
28
28
  category: "theme",
29
- parent: ["core/comment-template"],
30
- description: "Add the date of this comment.",
29
+ ancestor: ["core/comment-template"],
30
+ description: "Displays the date on which the comment was posted.",
31
31
  textdomain: "default",
32
32
  attributes: {
33
33
  format: {
@@ -35,7 +35,11 @@ const metadata = {
35
35
  },
36
36
  isLink: {
37
37
  type: "boolean",
38
- "default": false
38
+ "default": true
39
+ },
40
+ fontSize: {
41
+ type: "string",
42
+ "default": "small"
39
43
  }
40
44
  },
41
45
  usesContext: ["commentId"],
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/comment-date/index.js"],"names":["name","metadata","settings","icon","edit","deprecated"],"mappings":";;;;;;;;;AAGA;;AAMA;;AACA;;AAVA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAGO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,eADuB;AAEvBC,EAAAA,IAAI,EAAJA,aAFuB;AAGvBC,EAAAA,UAAU,EAAVA;AAHuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { postDate as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\nimport deprecated from './deprecated';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tdeprecated,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/comment-date/index.js"],"names":["name","metadata","settings","icon","edit","deprecated"],"mappings":";;;;;;;;;AAGA;;AAMA;;AACA;;AAVA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAGO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,eADuB;AAEvBC,EAAAA,IAAI,EAAJA,aAFuB;AAGvBC,EAAAA,UAAU,EAAVA;AAHuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { postDate as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\nimport deprecated from './deprecated';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tdeprecated,\n};\n"]}
@@ -24,7 +24,7 @@ const metadata = {
24
24
  name: "core/comment-edit-link",
25
25
  title: "Comment Edit Link",
26
26
  category: "theme",
27
- parent: ["core/comment-template"],
27
+ ancestor: ["core/comment-template"],
28
28
  description: "Displays a link to edit the comment in the WordPress Dashboard. This link is only visible to users with the edit comment capability.",
29
29
  textdomain: "default",
30
30
  usesContext: ["commentId"],
@@ -35,6 +35,10 @@ const metadata = {
35
35
  },
36
36
  textAlign: {
37
37
  type: "string"
38
+ },
39
+ fontSize: {
40
+ type: "string",
41
+ "default": "small"
38
42
  }
39
43
  },
40
44
  supports: {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/comment-edit-link/index.js"],"names":["name","metadata","settings","icon","edit"],"mappings":";;;;;;;;;AAGA;;AAMA;;AATA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAGO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,sBADuB;AAEvBC,EAAAA,IAAI,EAAJA;AAFuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { commentEditLink as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/comment-edit-link/index.js"],"names":["name","metadata","settings","icon","edit"],"mappings":";;;;;;;;;AAGA;;AAMA;;AATA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAGO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,sBADuB;AAEvBC,EAAAA,IAAI,EAAJA;AAFuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { commentEditLink as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n};\n"]}
@@ -24,13 +24,17 @@ const metadata = {
24
24
  name: "core/comment-reply-link",
25
25
  title: "Comment Reply Link",
26
26
  category: "theme",
27
- parent: ["core/comment-template"],
27
+ ancestor: ["core/comment-template"],
28
28
  description: "Displays a link to reply to a comment.",
29
29
  textdomain: "default",
30
30
  usesContext: ["commentId"],
31
31
  attributes: {
32
32
  textAlign: {
33
33
  type: "string"
34
+ },
35
+ fontSize: {
36
+ type: "string",
37
+ "default": "small"
34
38
  }
35
39
  },
36
40
  supports: {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/comment-reply-link/index.js"],"names":["name","metadata","settings","edit","icon"],"mappings":";;;;;;;;;AAGA;;AAMA;;AATA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAGO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,aADuB;AAEvBC,EAAAA,IAAI,EAAJA;AAFuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { commentReplyLink as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\ticon,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/comment-reply-link/index.js"],"names":["name","metadata","settings","edit","icon"],"mappings":";;;;;;;;;AAGA;;AAMA;;AATA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAGO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,aADuB;AAEvBC,EAAAA,IAAI,EAAJA;AAFuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { commentReplyLink as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\ticon,\n};\n"]}
@@ -223,11 +223,7 @@ function CommentTemplateEdit(_ref6) {
223
223
  let {
224
224
  clientId,
225
225
  context: {
226
- postId,
227
- 'comments/perPage': perPage,
228
- 'comments/order': order,
229
- 'comments/defaultPage': defaultPage,
230
- 'comments/inherit': inherit
226
+ postId
231
227
  }
232
228
  } = _ref6;
233
229
  const blockProps = (0, _blockEditor.useBlockProps)();
@@ -235,7 +231,8 @@ function CommentTemplateEdit(_ref6) {
235
231
  const {
236
232
  commentOrder,
237
233
  threadCommentsDepth,
238
- threadComments
234
+ threadComments,
235
+ commentsPerPage
239
236
  } = (0, _data.useSelect)(select => {
240
237
  const {
241
238
  getSettings
@@ -243,10 +240,7 @@ function CommentTemplateEdit(_ref6) {
243
240
  return getSettings().__experimentalDiscussionSettings;
244
241
  });
245
242
  const commentQuery = (0, _hooks.useCommentQueryArgs)({
246
- postId,
247
- perPage,
248
- defaultPage,
249
- inherit
243
+ postId
250
244
  });
251
245
  const {
252
246
  topLevelComments,
@@ -263,11 +257,10 @@ function CommentTemplateEdit(_ref6) {
263
257
  topLevelComments: commentQuery ? getEntityRecords('root', 'comment', commentQuery) : null,
264
258
  blocks: getBlocks(clientId)
265
259
  };
266
- }, [clientId, commentQuery]);
267
- order = inherit || !order ? commentOrder : order; // Generate a tree structure of comment IDs.
260
+ }, [clientId, commentQuery]); // Generate a tree structure of comment IDs.
268
261
 
269
262
  let commentTree = (0, _hooks.useCommentTree)( // Reverse the order of top comments if needed.
270
- order === 'desc' && topLevelComments ? [...topLevelComments].reverse() : topLevelComments);
263
+ commentOrder === 'desc' && topLevelComments ? [...topLevelComments].reverse() : topLevelComments);
271
264
 
272
265
  if (!topLevelComments) {
273
266
  return (0, _element.createElement)("p", blockProps, (0, _element.createElement)(_components.Spinner, null));
@@ -275,7 +268,7 @@ function CommentTemplateEdit(_ref6) {
275
268
 
276
269
  if (!postId) {
277
270
  commentTree = getCommentsPlaceholder({
278
- perPage,
271
+ perPage: commentsPerPage,
279
272
  threadComments,
280
273
  threadCommentsDepth
281
274
  });