@wordpress/block-library 7.2.0 → 7.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (469) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +1 -1
  3. package/build/archives/edit.js +21 -1
  4. package/build/archives/edit.js.map +1 -1
  5. package/build/archives/index.js +5 -1
  6. package/build/archives/index.js.map +1 -1
  7. package/build/audio/edit.js +1 -1
  8. package/build/audio/edit.js.map +1 -1
  9. package/build/audio/edit.native.js +0 -5
  10. package/build/audio/edit.native.js.map +1 -1
  11. package/build/avatar/edit.js +17 -11
  12. package/build/avatar/edit.js.map +1 -1
  13. package/build/block/edit.js +2 -1
  14. package/build/block/edit.js.map +1 -1
  15. package/build/column/index.js +1 -0
  16. package/build/column/index.js.map +1 -1
  17. package/build/comment-author-avatar/index.js +3 -3
  18. package/build/comment-author-name/index.js +7 -3
  19. package/build/comment-author-name/index.js.map +1 -1
  20. package/build/comment-content/index.js +1 -1
  21. package/build/comment-date/index.js +7 -3
  22. package/build/comment-date/index.js.map +1 -1
  23. package/build/comment-edit-link/index.js +5 -1
  24. package/build/comment-edit-link/index.js.map +1 -1
  25. package/build/comment-reply-link/index.js +5 -1
  26. package/build/comment-reply-link/index.js.map +1 -1
  27. package/build/comment-template/edit.js +10 -15
  28. package/build/comment-template/edit.js.map +1 -1
  29. package/build/comment-template/hooks.js +10 -24
  30. package/build/comment-template/hooks.js.map +1 -1
  31. package/build/comment-template/index.js +2 -2
  32. package/build/comments-pagination-next/index.js +2 -2
  33. package/build/comments-pagination-numbers/index.js +1 -1
  34. package/build/comments-pagination-previous/index.js +1 -1
  35. package/build/comments-query-loop/edit/comments-inspector-controls.js +2 -69
  36. package/build/comments-query-loop/edit/comments-inspector-controls.js.map +1 -1
  37. package/build/comments-query-loop/edit.js +22 -1
  38. package/build/comments-query-loop/edit.js.map +1 -1
  39. package/build/comments-query-loop/index.js +1 -23
  40. package/build/comments-query-loop/index.js.map +1 -1
  41. package/build/cover/edit.js +35 -6
  42. package/build/cover/edit.js.map +1 -1
  43. package/build/cover/index.js +5 -0
  44. package/build/cover/index.js.map +1 -1
  45. package/build/cover/save.js +3 -2
  46. package/build/cover/save.js.map +1 -1
  47. package/build/cover/transforms.js +33 -32
  48. package/build/cover/transforms.js.map +1 -1
  49. package/build/gallery/gap-styles.js +8 -2
  50. package/build/gallery/gap-styles.js.map +1 -1
  51. package/build/gallery/index.js +1 -0
  52. package/build/gallery/index.js.map +1 -1
  53. package/build/group/edit.js +3 -1
  54. package/build/group/edit.js.map +1 -1
  55. package/build/group/index.js +2 -4
  56. package/build/group/index.js.map +1 -1
  57. package/build/group/variations.js +31 -9
  58. package/build/group/variations.js.map +1 -1
  59. package/build/heading/edit.js +1 -1
  60. package/build/heading/edit.js.map +1 -1
  61. package/build/html/edit.js +3 -2
  62. package/build/html/edit.js.map +1 -1
  63. package/build/image/edit.native.js +8 -10
  64. package/build/image/edit.native.js.map +1 -1
  65. package/build/index.js +4 -4
  66. package/build/index.js.map +1 -1
  67. package/build/list/deprecated.js +2 -2
  68. package/build/list/deprecated.js.map +1 -1
  69. package/build/list/index.js +13 -2
  70. package/build/list/index.js.map +1 -1
  71. package/build/list/v2/deprecated.js +117 -0
  72. package/build/list/v2/deprecated.js.map +1 -0
  73. package/build/list/v2/edit.js +106 -3
  74. package/build/list/v2/edit.js.map +1 -1
  75. package/build/list/v2/index.js +4 -1
  76. package/build/list/v2/index.js.map +1 -1
  77. package/build/list/v2/migrate.js +85 -0
  78. package/build/list/v2/migrate.js.map +1 -0
  79. package/build/list-item/edit.js +59 -10
  80. package/build/list-item/edit.js.map +1 -1
  81. package/build/list-item/hooks/index.js +32 -0
  82. package/build/list-item/hooks/index.js.map +1 -0
  83. package/build/list-item/hooks/use-enter.js +93 -0
  84. package/build/list-item/hooks/use-enter.js.map +1 -0
  85. package/build/list-item/hooks/use-indent-list-item.js +74 -0
  86. package/build/list-item/hooks/use-indent-list-item.js.map +1 -0
  87. package/build/list-item/hooks/use-outdent-list-item.js +77 -0
  88. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -0
  89. package/build/list-item/index.js +1 -1
  90. package/build/list-item/index.js.map +1 -1
  91. package/build/list-item/utils.js +16 -0
  92. package/build/list-item/utils.js.map +1 -0
  93. package/build/media-text/media-container.native.js +1 -16
  94. package/build/media-text/media-container.native.js.map +1 -1
  95. package/build/navigation/edit/index.js +36 -17
  96. package/build/navigation/edit/index.js.map +1 -1
  97. package/build/navigation/edit/navigation-menu-delete-control.js +1 -1
  98. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  99. package/build/navigation/edit/unsaved-inner-blocks.js +34 -7
  100. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  101. package/build/navigation/index.js +9 -1
  102. package/build/navigation/index.js.map +1 -1
  103. package/build/navigation/use-navigation-menu.js +1 -0
  104. package/build/navigation/use-navigation-menu.js.map +1 -1
  105. package/build/navigation-link/edit.js +9 -5
  106. package/build/navigation-link/edit.js.map +1 -1
  107. package/build/navigation-link/index.js +1 -1
  108. package/build/navigation-submenu/edit.js +5 -9
  109. package/build/navigation-submenu/edit.js.map +1 -1
  110. package/build/navigation-submenu/index.js +1 -1
  111. package/build/post-comment/edit.js +2 -2
  112. package/build/post-comment/edit.js.map +1 -1
  113. package/build/post-comments/index.js +4 -3
  114. package/build/post-comments/index.js.map +1 -1
  115. package/build/post-comments-form/edit.js +3 -2
  116. package/build/post-comments-form/edit.js.map +1 -1
  117. package/build/post-featured-image/edit.js +19 -7
  118. package/build/post-featured-image/edit.js.map +1 -1
  119. package/build/post-featured-image/index.js +1 -1
  120. package/build/post-template/edit.js +7 -2
  121. package/build/post-template/edit.js.map +1 -1
  122. package/build/post-terms/edit.js +3 -1
  123. package/build/post-terms/edit.js.map +1 -1
  124. package/build/post-terms/variations.js +1 -1
  125. package/build/post-terms/variations.js.map +1 -1
  126. package/build/query/edit/index.js +84 -22
  127. package/build/query/edit/index.js.map +1 -1
  128. package/build/query/edit/query-placeholder.js +7 -14
  129. package/build/query/edit/query-placeholder.js.map +1 -1
  130. package/build/query/edit/query-toolbar.js +6 -1
  131. package/build/query/edit/query-toolbar.js.map +1 -1
  132. package/build/query-pagination/edit.js +1 -1
  133. package/build/query-pagination/edit.js.map +1 -1
  134. package/build/query-pagination-numbers/index.js +19 -1
  135. package/build/query-pagination-numbers/index.js.map +1 -1
  136. package/build/quote/index.js +20 -2
  137. package/build/quote/index.js.map +1 -1
  138. package/build/quote/v2/deprecated.js +133 -0
  139. package/build/quote/v2/deprecated.js.map +1 -0
  140. package/build/quote/v2/edit.js +131 -0
  141. package/build/quote/v2/edit.js.map +1 -0
  142. package/build/quote/v2/index.js +49 -0
  143. package/build/quote/v2/index.js.map +1 -0
  144. package/build/quote/v2/save.js +43 -0
  145. package/build/quote/v2/save.js.map +1 -0
  146. package/build/quote/v2/transforms.js +156 -0
  147. package/build/quote/v2/transforms.js.map +1 -0
  148. package/build/read-more/index.js +1 -1
  149. package/build/rss/edit.js +6 -1
  150. package/build/rss/edit.js.map +1 -1
  151. package/build/site-logo/edit.js +3 -2
  152. package/build/site-logo/edit.js.map +1 -1
  153. package/build/site-logo/index.js +1 -1
  154. package/build/social-links/index.js +1 -0
  155. package/build/social-links/index.js.map +1 -1
  156. package/build/spacer/controls.native.js +1 -1
  157. package/build/spacer/controls.native.js.map +1 -1
  158. package/build/template-part/edit/utils/hooks.js +5 -2
  159. package/build/template-part/edit/utils/hooks.js.map +1 -1
  160. package/build-module/archives/edit.js +22 -2
  161. package/build-module/archives/edit.js.map +1 -1
  162. package/build-module/archives/index.js +5 -1
  163. package/build-module/archives/index.js.map +1 -1
  164. package/build-module/audio/edit.js +1 -1
  165. package/build-module/audio/edit.js.map +1 -1
  166. package/build-module/audio/edit.native.js +0 -5
  167. package/build-module/audio/edit.native.js.map +1 -1
  168. package/build-module/avatar/edit.js +16 -11
  169. package/build-module/avatar/edit.js.map +1 -1
  170. package/build-module/block/edit.js +4 -3
  171. package/build-module/block/edit.js.map +1 -1
  172. package/build-module/column/index.js +1 -0
  173. package/build-module/column/index.js.map +1 -1
  174. package/build-module/comment-author-avatar/index.js +3 -3
  175. package/build-module/comment-author-name/index.js +7 -3
  176. package/build-module/comment-author-name/index.js.map +1 -1
  177. package/build-module/comment-content/index.js +1 -1
  178. package/build-module/comment-date/index.js +7 -3
  179. package/build-module/comment-date/index.js.map +1 -1
  180. package/build-module/comment-edit-link/index.js +5 -1
  181. package/build-module/comment-edit-link/index.js.map +1 -1
  182. package/build-module/comment-reply-link/index.js +5 -1
  183. package/build-module/comment-reply-link/index.js.map +1 -1
  184. package/build-module/comment-template/edit.js +10 -15
  185. package/build-module/comment-template/edit.js.map +1 -1
  186. package/build-module/comment-template/hooks.js +10 -24
  187. package/build-module/comment-template/hooks.js.map +1 -1
  188. package/build-module/comment-template/index.js +2 -2
  189. package/build-module/comments-pagination-next/index.js +2 -2
  190. package/build-module/comments-pagination-numbers/index.js +1 -1
  191. package/build-module/comments-pagination-previous/index.js +1 -1
  192. package/build-module/comments-query-loop/edit/comments-inspector-controls.js +4 -70
  193. package/build-module/comments-query-loop/edit/comments-inspector-controls.js.map +1 -1
  194. package/build-module/comments-query-loop/edit.js +22 -1
  195. package/build-module/comments-query-loop/edit.js.map +1 -1
  196. package/build-module/comments-query-loop/index.js +1 -23
  197. package/build-module/comments-query-loop/index.js.map +1 -1
  198. package/build-module/cover/edit.js +36 -8
  199. package/build-module/cover/edit.js.map +1 -1
  200. package/build-module/cover/index.js +5 -0
  201. package/build-module/cover/index.js.map +1 -1
  202. package/build-module/cover/save.js +3 -2
  203. package/build-module/cover/save.js.map +1 -1
  204. package/build-module/cover/transforms.js +33 -32
  205. package/build-module/cover/transforms.js.map +1 -1
  206. package/build-module/gallery/gap-styles.js +8 -2
  207. package/build-module/gallery/gap-styles.js.map +1 -1
  208. package/build-module/gallery/index.js +1 -0
  209. package/build-module/gallery/index.js.map +1 -1
  210. package/build-module/group/edit.js +3 -1
  211. package/build-module/group/edit.js.map +1 -1
  212. package/build-module/group/index.js +2 -4
  213. package/build-module/group/index.js.map +1 -1
  214. package/build-module/group/variations.js +30 -9
  215. package/build-module/group/variations.js.map +1 -1
  216. package/build-module/heading/edit.js +1 -1
  217. package/build-module/heading/edit.js.map +1 -1
  218. package/build-module/html/edit.js +4 -3
  219. package/build-module/html/edit.js.map +1 -1
  220. package/build-module/image/edit.native.js +8 -10
  221. package/build-module/image/edit.native.js.map +1 -1
  222. package/build-module/index.js +4 -4
  223. package/build-module/index.js.map +1 -1
  224. package/build-module/list/deprecated.js +2 -2
  225. package/build-module/list/deprecated.js.map +1 -1
  226. package/build-module/list/index.js +9 -3
  227. package/build-module/list/index.js.map +1 -1
  228. package/build-module/list/v2/deprecated.js +104 -0
  229. package/build-module/list/v2/deprecated.js.map +1 -0
  230. package/build-module/list/v2/edit.js +104 -5
  231. package/build-module/list/v2/edit.js.map +1 -1
  232. package/build-module/list/v2/index.js +3 -1
  233. package/build-module/list/v2/index.js.map +1 -1
  234. package/build-module/list/v2/migrate.js +77 -0
  235. package/build-module/list/v2/migrate.js.map +1 -0
  236. package/build-module/list-item/edit.js +59 -13
  237. package/build-module/list-item/edit.js.map +1 -1
  238. package/build-module/list-item/hooks/index.js +4 -0
  239. package/build-module/list-item/hooks/index.js.map +1 -0
  240. package/build-module/list-item/hooks/use-enter.js +77 -0
  241. package/build-module/list-item/hooks/use-enter.js.map +1 -0
  242. package/build-module/list-item/hooks/use-indent-list-item.js +62 -0
  243. package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -0
  244. package/build-module/list-item/hooks/use-outdent-list-item.js +66 -0
  245. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -0
  246. package/build-module/list-item/index.js +1 -1
  247. package/build-module/list-item/index.js.map +1 -1
  248. package/build-module/list-item/utils.js +8 -0
  249. package/build-module/list-item/utils.js.map +1 -0
  250. package/build-module/media-text/media-container.native.js +1 -14
  251. package/build-module/media-text/media-container.native.js.map +1 -1
  252. package/build-module/navigation/edit/index.js +37 -17
  253. package/build-module/navigation/edit/index.js.map +1 -1
  254. package/build-module/navigation/edit/navigation-menu-delete-control.js +1 -1
  255. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  256. package/build-module/navigation/edit/unsaved-inner-blocks.js +35 -8
  257. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  258. package/build-module/navigation/index.js +9 -1
  259. package/build-module/navigation/index.js.map +1 -1
  260. package/build-module/navigation/use-navigation-menu.js +1 -0
  261. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  262. package/build-module/navigation-link/edit.js +9 -5
  263. package/build-module/navigation-link/edit.js.map +1 -1
  264. package/build-module/navigation-link/index.js +1 -1
  265. package/build-module/navigation-submenu/edit.js +6 -10
  266. package/build-module/navigation-submenu/edit.js.map +1 -1
  267. package/build-module/navigation-submenu/index.js +1 -1
  268. package/build-module/post-comment/edit.js +2 -2
  269. package/build-module/post-comment/edit.js.map +1 -1
  270. package/build-module/post-comments/index.js +4 -3
  271. package/build-module/post-comments/index.js.map +1 -1
  272. package/build-module/post-comments-form/edit.js +3 -2
  273. package/build-module/post-comments-form/edit.js.map +1 -1
  274. package/build-module/post-featured-image/edit.js +19 -7
  275. package/build-module/post-featured-image/edit.js.map +1 -1
  276. package/build-module/post-featured-image/index.js +1 -1
  277. package/build-module/post-template/edit.js +7 -2
  278. package/build-module/post-template/edit.js.map +1 -1
  279. package/build-module/post-terms/edit.js +4 -2
  280. package/build-module/post-terms/edit.js.map +1 -1
  281. package/build-module/post-terms/variations.js +3 -3
  282. package/build-module/post-terms/variations.js.map +1 -1
  283. package/build-module/query/edit/index.js +87 -26
  284. package/build-module/query/edit/index.js.map +1 -1
  285. package/build-module/query/edit/query-placeholder.js +8 -15
  286. package/build-module/query/edit/query-placeholder.js.map +1 -1
  287. package/build-module/query/edit/query-toolbar.js +6 -1
  288. package/build-module/query/edit/query-toolbar.js.map +1 -1
  289. package/build-module/query-pagination/edit.js +1 -1
  290. package/build-module/query-pagination/edit.js.map +1 -1
  291. package/build-module/query-pagination-numbers/index.js +19 -1
  292. package/build-module/query-pagination-numbers/index.js.map +1 -1
  293. package/build-module/quote/index.js +19 -1
  294. package/build-module/quote/index.js.map +1 -1
  295. package/build-module/quote/v2/deprecated.js +116 -0
  296. package/build-module/quote/v2/deprecated.js.map +1 -0
  297. package/build-module/quote/v2/edit.js +115 -0
  298. package/build-module/quote/v2/edit.js.map +1 -0
  299. package/build-module/quote/v2/index.js +33 -0
  300. package/build-module/quote/v2/index.js.map +1 -0
  301. package/build-module/quote/v2/save.js +30 -0
  302. package/build-module/quote/v2/save.js.map +1 -0
  303. package/build-module/quote/v2/transforms.js +147 -0
  304. package/build-module/quote/v2/transforms.js.map +1 -0
  305. package/build-module/read-more/index.js +1 -1
  306. package/build-module/rss/edit.js +5 -1
  307. package/build-module/rss/edit.js.map +1 -1
  308. package/build-module/site-logo/edit.js +3 -2
  309. package/build-module/site-logo/edit.js.map +1 -1
  310. package/build-module/site-logo/index.js +1 -1
  311. package/build-module/social-links/index.js +1 -0
  312. package/build-module/social-links/index.js.map +1 -1
  313. package/build-module/spacer/controls.native.js +1 -1
  314. package/build-module/spacer/controls.native.js.map +1 -1
  315. package/build-module/template-part/edit/utils/hooks.js +5 -2
  316. package/build-module/template-part/edit/utils/hooks.js.map +1 -1
  317. package/build-style/avatar/editor-rtl.css +4 -0
  318. package/build-style/avatar/editor.css +4 -0
  319. package/build-style/avatar/style-rtl.css +79 -0
  320. package/build-style/avatar/style.css +79 -0
  321. package/build-style/editor-rtl.css +69 -9
  322. package/build-style/editor.css +69 -9
  323. package/build-style/group/editor-rtl.css +26 -0
  324. package/build-style/group/editor.css +26 -0
  325. package/build-style/heading/style-rtl.css +0 -8
  326. package/build-style/heading/style.css +0 -8
  327. package/build-style/list/style-rtl.css +1 -1
  328. package/build-style/list/style.css +1 -1
  329. package/build-style/navigation/style-rtl.css +11 -9
  330. package/build-style/navigation/style.css +11 -9
  331. package/build-style/navigation-link/style-rtl.css +3 -0
  332. package/build-style/navigation-link/style.css +3 -0
  333. package/build-style/paragraph/style-rtl.css +0 -4
  334. package/build-style/paragraph/style.css +0 -4
  335. package/build-style/query/editor-rtl.css +39 -0
  336. package/build-style/query/editor.css +39 -0
  337. package/build-style/quote/style-rtl.css +1 -0
  338. package/build-style/quote/style.css +1 -0
  339. package/build-style/reset-rtl.css +1 -1
  340. package/build-style/reset.css +1 -1
  341. package/build-style/style-rtl.css +20 -22
  342. package/build-style/style.css +20 -22
  343. package/build-style/template-part/editor-rtl.css +0 -9
  344. package/build-style/template-part/editor.css +0 -9
  345. package/package.json +28 -28
  346. package/src/archives/block.json +5 -1
  347. package/src/archives/edit.js +20 -2
  348. package/src/archives/index.php +4 -4
  349. package/src/audio/edit.js +1 -1
  350. package/src/audio/edit.native.js +0 -5
  351. package/src/avatar/edit.js +21 -13
  352. package/src/avatar/editor.scss +6 -0
  353. package/src/avatar/index.php +2 -2
  354. package/src/avatar/style.scss +5 -0
  355. package/src/block/edit.js +21 -11
  356. package/src/column/block.json +1 -0
  357. package/src/comment-author-avatar/block.json +3 -3
  358. package/src/comment-author-name/block.json +7 -3
  359. package/src/comment-author-name/index.php +3 -0
  360. package/src/comment-content/block.json +1 -1
  361. package/src/comment-date/block.json +7 -3
  362. package/src/comment-date/index.php +6 -1
  363. package/src/comment-edit-link/block.json +5 -1
  364. package/src/comment-edit-link/index.php +3 -0
  365. package/src/comment-reply-link/block.json +5 -1
  366. package/src/comment-reply-link/index.php +4 -1
  367. package/src/comment-template/block.json +2 -8
  368. package/src/comment-template/edit.js +17 -22
  369. package/src/comment-template/hooks.js +10 -25
  370. package/src/comment-template/index.php +15 -5
  371. package/src/comments-pagination-next/block.json +2 -9
  372. package/src/comments-pagination-numbers/block.json +2 -8
  373. package/src/comments-pagination-previous/block.json +2 -2
  374. package/src/comments-query-loop/block.json +1 -23
  375. package/src/comments-query-loop/edit/comments-inspector-controls.js +2 -83
  376. package/src/comments-query-loop/edit.js +54 -1
  377. package/src/cover/block.json +5 -0
  378. package/src/cover/edit.js +77 -29
  379. package/src/cover/index.php +85 -0
  380. package/src/cover/save.js +18 -14
  381. package/src/cover/transforms.js +51 -28
  382. package/src/gallery/block.json +1 -0
  383. package/src/gallery/gap-styles.js +9 -4
  384. package/src/gallery/index.php +7 -6
  385. package/src/group/block.json +2 -4
  386. package/src/group/edit.js +4 -1
  387. package/src/group/editor.scss +31 -0
  388. package/src/group/variations.js +21 -4
  389. package/src/heading/edit.js +1 -1
  390. package/src/heading/style.scss +0 -3
  391. package/src/html/edit.js +22 -30
  392. package/src/image/edit.native.js +7 -11
  393. package/src/index.js +19 -16
  394. package/src/list/deprecated.js +2 -2
  395. package/src/list/index.js +7 -3
  396. package/src/list/style.scss +1 -2
  397. package/src/list/test/migrate.js +159 -0
  398. package/src/list/v2/deprecated.js +89 -0
  399. package/src/list/v2/edit.js +110 -1
  400. package/src/list/v2/index.js +2 -0
  401. package/src/list/v2/migrate.js +87 -0
  402. package/src/list-item/edit.js +69 -23
  403. package/src/list-item/hooks/index.js +3 -0
  404. package/src/list-item/hooks/use-enter.js +94 -0
  405. package/src/list-item/hooks/use-indent-list-item.js +89 -0
  406. package/src/list-item/hooks/use-outdent-list-item.js +95 -0
  407. package/src/list-item/index.js +1 -1
  408. package/src/list-item/utils.js +14 -0
  409. package/src/media-text/media-container.native.js +1 -14
  410. package/src/navigation/block.json +9 -1
  411. package/src/navigation/edit/index.js +50 -14
  412. package/src/navigation/edit/navigation-menu-delete-control.js +1 -1
  413. package/src/navigation/edit/unsaved-inner-blocks.js +57 -8
  414. package/src/navigation/index.php +6 -1
  415. package/src/navigation/style.scss +15 -13
  416. package/src/navigation/use-navigation-menu.js +4 -0
  417. package/src/navigation-link/block.json +1 -0
  418. package/src/navigation-link/edit.js +43 -35
  419. package/src/navigation-link/index.php +8 -0
  420. package/src/navigation-link/style.scss +6 -0
  421. package/src/navigation-submenu/block.json +1 -0
  422. package/src/navigation-submenu/edit.js +7 -9
  423. package/src/paragraph/style.scss +0 -5
  424. package/src/post-author/index.php +0 -1
  425. package/src/post-comment/edit.js +2 -2
  426. package/src/post-comments/block.json +4 -3
  427. package/src/post-comments-form/edit.js +6 -3
  428. package/src/post-comments-form/index.php +12 -4
  429. package/src/post-featured-image/block.json +1 -1
  430. package/src/post-featured-image/edit.js +24 -12
  431. package/src/post-template/edit.js +7 -1
  432. package/src/post-terms/edit.js +4 -1
  433. package/src/post-terms/variations.js +3 -3
  434. package/src/query/edit/index.js +125 -26
  435. package/src/query/edit/query-placeholder.js +3 -13
  436. package/src/query/edit/query-toolbar.js +6 -0
  437. package/src/query/editor.scss +38 -0
  438. package/src/query-pagination/edit.js +1 -1
  439. package/src/query-pagination/index.php +9 -2
  440. package/src/query-pagination-numbers/block.json +19 -1
  441. package/src/quote/block.json +8 -0
  442. package/src/quote/index.js +10 -1
  443. package/src/quote/style.scss +1 -0
  444. package/src/quote/v2/deprecated.js +107 -0
  445. package/src/quote/v2/edit.js +136 -0
  446. package/src/quote/v2/index.js +36 -0
  447. package/src/quote/v2/save.js +26 -0
  448. package/src/quote/v2/test/migrate.js +92 -0
  449. package/src/quote/v2/transforms.js +155 -0
  450. package/src/read-more/block.json +1 -1
  451. package/src/reset.scss +1 -1
  452. package/src/rss/edit.js +3 -1
  453. package/src/rss/index.php +14 -1
  454. package/src/site-logo/block.json +1 -1
  455. package/src/site-logo/edit.js +2 -1
  456. package/src/site-logo/index.php +0 -4
  457. package/src/social-link/index.php +1 -2
  458. package/src/social-links/block.json +1 -0
  459. package/src/spacer/controls.native.js +1 -1
  460. package/src/spacer/test/__snapshots__/index.native.js.snap +31 -0
  461. package/src/spacer/test/index.native.js +180 -0
  462. package/src/style.scss +1 -0
  463. package/src/template-part/edit/utils/hooks.js +6 -1
  464. package/src/template-part/editor.scss +0 -10
  465. package/build/navigation/edit/use-list-view-modal.js +0 -73
  466. package/build/navigation/edit/use-list-view-modal.js.map +0 -1
  467. package/build-module/navigation/edit/use-list-view-modal.js +0 -63
  468. package/build-module/navigation/edit/use-list-view-modal.js.map +0 -1
  469. package/src/navigation/edit/use-list-view-modal.js +0 -72
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/query/edit/index.js"],"names":["useSelect","useDispatch","cloneBlock","useInstanceId","useEffect","BlockControls","InspectorControls","useBlockProps","useSetting","store","blockEditorStore","useInnerBlocksProps","__experimentalBlockPatternSetup","BlockPatternSetup","SelectControl","__","QueryToolbar","QueryInspectorControls","QueryPlaceholder","DEFAULTS_POSTS_PER_PAGE","getFirstQueryClientIdFromBlocks","TEMPLATE","QueryContent","attributes","setAttributes","queryId","query","displayLayout","tagName","TagName","layout","__unstableMarkNextChangeAsNotPersistent","instanceId","themeSupportsLayout","select","getSettings","supportsLayout","defaultLayout","usedLayout","inherit","blockProps","innerBlocksProps","template","__experimentalLayout","undefined","postsPerPage","newQuery","perPage","Object","keys","length","updateQuery","Number","isFinite","updateDisplayLayout","newDisplayLayout","label","value","QueryPatternSetup","props","clientId","name","blockName","replaceBlock","selectBlock","onBlockPatternSelect","blocks","clonedBlocks","map","block","firstQueryClientId","QueryEdit","hasInnerBlocks","getBlocks","Component"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { cloneBlock } from '@wordpress/blocks';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useEffect } from '@wordpress/element';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tuseSetting,\n\tstore as blockEditorStore,\n\tuseInnerBlocksProps,\n\t__experimentalBlockPatternSetup as BlockPatternSetup,\n} from '@wordpress/block-editor';\nimport { SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport QueryToolbar from './query-toolbar';\nimport QueryInspectorControls from './inspector-controls';\nimport QueryPlaceholder from './query-placeholder';\nimport { DEFAULTS_POSTS_PER_PAGE } from '../constants';\nimport { getFirstQueryClientIdFromBlocks } from '../utils';\n\nconst TEMPLATE = [ [ 'core/post-template' ] ];\nexport function QueryContent( { attributes, setAttributes } ) {\n\tconst {\n\t\tqueryId,\n\t\tquery,\n\t\tdisplayLayout,\n\t\ttagName: TagName = 'div',\n\t\tlayout = {},\n\t} = attributes;\n\tconst { __unstableMarkNextChangeAsNotPersistent } = useDispatch(\n\t\tblockEditorStore\n\t);\n\tconst instanceId = useInstanceId( QueryContent );\n\tconst { themeSupportsLayout } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn { themeSupportsLayout: getSettings()?.supportsLayout };\n\t}, [] );\n\tconst defaultLayout = useSetting( 'layout' ) || {};\n\tconst usedLayout = !! layout && layout.inherit ? defaultLayout : layout;\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t\t__experimentalLayout: themeSupportsLayout ? usedLayout : undefined,\n\t} );\n\tconst { postsPerPage } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\tpostsPerPage:\n\t\t\t\t+getSettings().postsPerPage || DEFAULTS_POSTS_PER_PAGE,\n\t\t};\n\t}, [] );\n\t// There are some effects running where some initialization logic is\n\t// happening and setting some values to some attributes (ex. queryId).\n\t// These updates can cause an `undo trap` where undoing will result in\n\t// resetting again, so we need to mark these changes as not persistent\n\t// with `__unstableMarkNextChangeAsNotPersistent`.\n\n\t// Changes in query property (which is an object) need to be in the same callback,\n\t// because updates are batched after the render and changes in different query properties\n\t// would cause to override previous wanted changes.\n\tuseEffect( () => {\n\t\tconst newQuery = {};\n\t\tif ( ! query.perPage && postsPerPage ) {\n\t\t\tnewQuery.perPage = postsPerPage;\n\t\t}\n\t\tif ( !! Object.keys( newQuery ).length ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tupdateQuery( newQuery );\n\t\t}\n\t}, [ query.perPage ] );\n\t// We need this for multi-query block pagination.\n\t// Query parameters for each block are scoped to their ID.\n\tuseEffect( () => {\n\t\tif ( ! Number.isFinite( queryId ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { queryId: instanceId } );\n\t\t}\n\t}, [ queryId, instanceId ] );\n\tconst updateQuery = ( newQuery ) =>\n\t\tsetAttributes( { query: { ...query, ...newQuery } } );\n\tconst updateDisplayLayout = ( newDisplayLayout ) =>\n\t\tsetAttributes( {\n\t\t\tdisplayLayout: { ...displayLayout, ...newDisplayLayout },\n\t\t} );\n\treturn (\n\t\t<>\n\t\t\t<QueryInspectorControls\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetQuery={ updateQuery }\n\t\t\t\tsetDisplayLayout={ updateDisplayLayout }\n\t\t\t/>\n\t\t\t<BlockControls>\n\t\t\t\t<QueryToolbar\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetQuery={ updateQuery }\n\t\t\t\t\tsetDisplayLayout={ updateDisplayLayout }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls __experimentalGroup=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ TagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<TagName { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n\nfunction QueryPatternSetup( props ) {\n\tconst { clientId, name: blockName } = props;\n\tconst blockProps = useBlockProps();\n\tconst { replaceBlock, selectBlock } = useDispatch( blockEditorStore );\n\tconst onBlockPatternSelect = ( blocks ) => {\n\t\tconst clonedBlocks = blocks.map( ( block ) => cloneBlock( block ) );\n\t\tconst firstQueryClientId = getFirstQueryClientIdFromBlocks(\n\t\t\tclonedBlocks\n\t\t);\n\t\treplaceBlock( clientId, clonedBlocks );\n\t\tif ( firstQueryClientId ) {\n\t\t\tselectBlock( firstQueryClientId );\n\t\t}\n\t};\n\t// `startBlankComponent` is what to render when clicking `Start blank`\n\t// or if no matched patterns are found.\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<BlockPatternSetup\n\t\t\t\tblockName={ blockName }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tstartBlankComponent={ <QueryPlaceholder { ...props } /> }\n\t\t\t\tonBlockPatternSelect={ onBlockPatternSelect }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nconst QueryEdit = ( props ) => {\n\tconst { clientId } = props;\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\t!! select( blockEditorStore ).getBlocks( clientId ).length,\n\t\t[ clientId ]\n\t);\n\tconst Component = hasInnerBlocks ? QueryContent : QueryPatternSetup;\n\treturn <Component { ...props } />;\n};\n\nexport default QueryEdit;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/query/edit/index.js"],"names":["useSelect","useDispatch","store","blocksStore","cloneBlock","useInstanceId","useState","useEffect","BlockControls","InspectorControls","useBlockProps","useSetting","blockEditorStore","useInnerBlocksProps","__experimentalGetMatchingVariation","getMatchingVariation","__experimentalBlockPatternSetup","BlockPatternSetup","Button","SelectControl","Placeholder","Modal","__","QueryToolbar","QueryInspectorControls","QueryPlaceholder","DEFAULTS_POSTS_PER_PAGE","getFirstQueryClientIdFromBlocks","TEMPLATE","QueryContent","attributes","setAttributes","openPatternSelectionModal","queryId","query","displayLayout","tagName","TagName","layout","__unstableMarkNextChangeAsNotPersistent","instanceId","themeSupportsLayout","select","getSettings","supportsLayout","defaultLayout","usedLayout","inherit","blockProps","innerBlocksProps","template","__experimentalLayout","undefined","postsPerPage","newQuery","perPage","Object","keys","length","updateQuery","Number","isFinite","updateDisplayLayout","newDisplayLayout","label","value","QueryPatternSetup","clientId","name","isStartingBlank","setIsStartingBlank","blockType","allVariations","hasPatterns","getBlockVariations","getBlockType","getBlockRootClientId","__experimentalGetPatternsByBlockTypes","rootClientId","matchingVariation","icon","src","title","QueryEdit","props","isPatternSelectionModalOpen","setIsPatternSelectionModalOpen","replaceBlock","selectBlock","hasInnerBlocks","getBlocks","Component","onBlockPatternSelect","blocks","clonedBlocks","map","block","firstQueryClientId"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as blocksStore, cloneBlock } from '@wordpress/blocks';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useState, useEffect } from '@wordpress/element';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tuseSetting,\n\tstore as blockEditorStore,\n\tuseInnerBlocksProps,\n\t__experimentalGetMatchingVariation as getMatchingVariation,\n\t__experimentalBlockPatternSetup as BlockPatternSetup,\n} from '@wordpress/block-editor';\nimport {\n\tButton,\n\tSelectControl,\n\tPlaceholder,\n\tModal,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport QueryToolbar from './query-toolbar';\nimport QueryInspectorControls from './inspector-controls';\nimport QueryPlaceholder from './query-placeholder';\nimport { DEFAULTS_POSTS_PER_PAGE } from '../constants';\nimport { getFirstQueryClientIdFromBlocks } from '../utils';\n\nconst TEMPLATE = [ [ 'core/post-template' ] ];\nexport function QueryContent( {\n\tattributes,\n\tsetAttributes,\n\topenPatternSelectionModal,\n} ) {\n\tconst {\n\t\tqueryId,\n\t\tquery,\n\t\tdisplayLayout,\n\t\ttagName: TagName = 'div',\n\t\tlayout = {},\n\t} = attributes;\n\tconst { __unstableMarkNextChangeAsNotPersistent } = useDispatch(\n\t\tblockEditorStore\n\t);\n\tconst instanceId = useInstanceId( QueryContent );\n\tconst { themeSupportsLayout } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn { themeSupportsLayout: getSettings()?.supportsLayout };\n\t}, [] );\n\tconst defaultLayout = useSetting( 'layout' ) || {};\n\tconst usedLayout = !! layout && layout.inherit ? defaultLayout : layout;\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t\t__experimentalLayout: themeSupportsLayout ? usedLayout : undefined,\n\t} );\n\tconst { postsPerPage } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\tpostsPerPage:\n\t\t\t\t+getSettings().postsPerPage || DEFAULTS_POSTS_PER_PAGE,\n\t\t};\n\t}, [] );\n\t// There are some effects running where some initialization logic is\n\t// happening and setting some values to some attributes (ex. queryId).\n\t// These updates can cause an `undo trap` where undoing will result in\n\t// resetting again, so we need to mark these changes as not persistent\n\t// with `__unstableMarkNextChangeAsNotPersistent`.\n\n\t// Changes in query property (which is an object) need to be in the same callback,\n\t// because updates are batched after the render and changes in different query properties\n\t// would cause to override previous wanted changes.\n\tuseEffect( () => {\n\t\tconst newQuery = {};\n\t\tif ( ! query.perPage && postsPerPage ) {\n\t\t\tnewQuery.perPage = postsPerPage;\n\t\t}\n\t\tif ( !! Object.keys( newQuery ).length ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tupdateQuery( newQuery );\n\t\t}\n\t}, [ query.perPage ] );\n\t// We need this for multi-query block pagination.\n\t// Query parameters for each block are scoped to their ID.\n\tuseEffect( () => {\n\t\tif ( ! Number.isFinite( queryId ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { queryId: instanceId } );\n\t\t}\n\t}, [ queryId, instanceId ] );\n\tconst updateQuery = ( newQuery ) =>\n\t\tsetAttributes( { query: { ...query, ...newQuery } } );\n\tconst updateDisplayLayout = ( newDisplayLayout ) =>\n\t\tsetAttributes( {\n\t\t\tdisplayLayout: { ...displayLayout, ...newDisplayLayout },\n\t\t} );\n\treturn (\n\t\t<>\n\t\t\t<QueryInspectorControls\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetQuery={ updateQuery }\n\t\t\t\tsetDisplayLayout={ updateDisplayLayout }\n\t\t\t/>\n\t\t\t<BlockControls>\n\t\t\t\t<QueryToolbar\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetQuery={ updateQuery }\n\t\t\t\t\tsetDisplayLayout={ updateDisplayLayout }\n\t\t\t\t\topenPatternSelectionModal={ openPatternSelectionModal }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls __experimentalGroup=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ TagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<TagName { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n\nfunction QueryPatternSetup( {\n\tattributes,\n\tclientId,\n\tname,\n\topenPatternSelectionModal,\n\tsetAttributes,\n} ) {\n\tconst [ isStartingBlank, setIsStartingBlank ] = useState( false );\n\tconst blockProps = useBlockProps();\n\n\tconst { blockType, allVariations, hasPatterns } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockVariations, getBlockType } = select( blocksStore );\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\t__experimentalGetPatternsByBlockTypes,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\treturn {\n\t\t\t\tblockType: getBlockType( name ),\n\t\t\t\tallVariations: getBlockVariations( name ),\n\t\t\t\thasPatterns: !! __experimentalGetPatternsByBlockTypes(\n\t\t\t\t\tname,\n\t\t\t\t\trootClientId\n\t\t\t\t).length,\n\t\t\t};\n\t\t},\n\t\t[ name, clientId ]\n\t);\n\n\tconst matchingVariation = getMatchingVariation( attributes, allVariations );\n\tconst icon = matchingVariation?.icon || blockType?.icon?.src;\n\tconst label = matchingVariation?.title || blockType?.title;\n\tif ( isStartingBlank ) {\n\t\treturn (\n\t\t\t<QueryPlaceholder\n\t\t\t\tclientId={ clientId }\n\t\t\t\tname={ name }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t/>\n\t\t);\n\t}\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<Placeholder\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tinstructions={ __(\n\t\t\t\t\t'Choose a pattern for the query loop or start blank.'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ !! hasPatterns && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ openPatternSelectionModal }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Choose' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetIsStartingBlank( true );\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Start blank' ) }\n\t\t\t\t</Button>\n\t\t\t</Placeholder>\n\t\t</div>\n\t);\n}\n\nconst QueryEdit = ( props ) => {\n\tconst { clientId, name } = props;\n\tconst [\n\t\tisPatternSelectionModalOpen,\n\t\tsetIsPatternSelectionModalOpen,\n\t] = useState( false );\n\tconst { replaceBlock, selectBlock } = useDispatch( blockEditorStore );\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\t!! select( blockEditorStore ).getBlocks( clientId ).length,\n\t\t[ clientId ]\n\t);\n\tconst Component = hasInnerBlocks ? QueryContent : QueryPatternSetup;\n\tconst onBlockPatternSelect = ( blocks ) => {\n\t\tconst clonedBlocks = blocks.map( ( block ) => cloneBlock( block ) );\n\t\tconst firstQueryClientId = getFirstQueryClientIdFromBlocks(\n\t\t\tclonedBlocks\n\t\t);\n\t\treplaceBlock( clientId, clonedBlocks );\n\t\tif ( firstQueryClientId ) {\n\t\t\tselectBlock( firstQueryClientId );\n\t\t}\n\t};\n\treturn (\n\t\t<>\n\t\t\t<Component\n\t\t\t\t{ ...props }\n\t\t\t\topenPatternSelectionModal={ () =>\n\t\t\t\t\tsetIsPatternSelectionModalOpen( true )\n\t\t\t\t}\n\t\t\t/>\n\t\t\t{ isPatternSelectionModalOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\tclassName=\"block-editor-query-pattern__selection-modal\"\n\t\t\t\t\ttitle={ __( 'Choose a pattern' ) }\n\t\t\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\t\t\tonRequestClose={ () =>\n\t\t\t\t\t\tsetIsPatternSelectionModalOpen( false )\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<BlockPatternSetup\n\t\t\t\t\t\tblockName={ name }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tonBlockPatternSelect={ onBlockPatternSelect }\n\t\t\t\t\t/>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nexport default QueryEdit;\n"]}
@@ -4,23 +4,20 @@ import { createElement } from "@wordpress/element";
4
4
  * WordPress dependencies
5
5
  */
6
6
  import { useSelect, useDispatch } from '@wordpress/data';
7
- import { useBlockProps, __experimentalBlockVariationPicker, __experimentalGetMatchingVariation as getMatchingVariation, store as blockEditorStore } from '@wordpress/block-editor';
7
+ import { useBlockProps, __experimentalBlockVariationPicker, store as blockEditorStore } from '@wordpress/block-editor';
8
8
  import { createBlocksFromInnerBlocksTemplate, store as blocksStore } from '@wordpress/blocks';
9
9
 
10
- const QueryPlaceholder = _ref => {
11
- var _blockType$icon;
12
-
10
+ function QueryPlaceholder(_ref) {
13
11
  let {
14
12
  clientId,
15
13
  name,
16
- attributes,
17
- setAttributes
14
+ setAttributes,
15
+ icon,
16
+ label
18
17
  } = _ref;
19
18
  const {
20
- blockType,
21
19
  defaultVariation,
22
- scopeVariations,
23
- allVariations
20
+ scopeVariations
24
21
  } = useSelect(select => {
25
22
  const {
26
23
  getBlockVariations,
@@ -30,17 +27,13 @@ const QueryPlaceholder = _ref => {
30
27
  return {
31
28
  blockType: getBlockType(name),
32
29
  defaultVariation: getDefaultBlockVariation(name, 'block'),
33
- scopeVariations: getBlockVariations(name, 'block'),
34
- allVariations: getBlockVariations(name)
30
+ scopeVariations: getBlockVariations(name, 'block')
35
31
  };
36
32
  }, [name]);
37
33
  const {
38
34
  replaceInnerBlocks
39
35
  } = useDispatch(blockEditorStore);
40
36
  const blockProps = useBlockProps();
41
- const matchingVariation = getMatchingVariation(attributes, allVariations);
42
- const icon = (matchingVariation === null || matchingVariation === void 0 ? void 0 : matchingVariation.icon) || (blockType === null || blockType === void 0 ? void 0 : (_blockType$icon = blockType.icon) === null || _blockType$icon === void 0 ? void 0 : _blockType$icon.src);
43
- const label = (matchingVariation === null || matchingVariation === void 0 ? void 0 : matchingVariation.title) || (blockType === null || blockType === void 0 ? void 0 : blockType.title);
44
37
  return createElement("div", blockProps, createElement(__experimentalBlockVariationPicker, {
45
38
  icon: icon,
46
39
  label: label,
@@ -57,7 +50,7 @@ const QueryPlaceholder = _ref => {
57
50
  }
58
51
  }
59
52
  }));
60
- };
53
+ }
61
54
 
62
55
  export default QueryPlaceholder;
63
56
  //# sourceMappingURL=query-placeholder.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/query/edit/query-placeholder.js"],"names":["useSelect","useDispatch","useBlockProps","__experimentalBlockVariationPicker","__experimentalGetMatchingVariation","getMatchingVariation","store","blockEditorStore","createBlocksFromInnerBlocksTemplate","blocksStore","QueryPlaceholder","clientId","name","attributes","setAttributes","blockType","defaultVariation","scopeVariations","allVariations","select","getBlockVariations","getBlockType","getDefaultBlockVariation","replaceInnerBlocks","blockProps","matchingVariation","icon","src","label","title","nextVariation","innerBlocks"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,WAApB,QAAuC,iBAAvC;AACA,SACCC,aADD,EAECC,kCAFD,EAGCC,kCAAkC,IAAIC,oBAHvC,EAICC,KAAK,IAAIC,gBAJV,QAKO,yBALP;AAMA,SACCC,mCADD,EAECF,KAAK,IAAIG,WAFV,QAGO,mBAHP;;AAKA,MAAMC,gBAAgB,GAAG,QAAqD;AAAA;;AAAA,MAAnD;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,IAAZ;AAAkBC,IAAAA,UAAlB;AAA8BC,IAAAA;AAA9B,GAAmD;AAC7E,QAAM;AACLC,IAAAA,SADK;AAELC,IAAAA,gBAFK;AAGLC,IAAAA,eAHK;AAILC,IAAAA;AAJK,MAKFlB,SAAS,CACVmB,MAAF,IAAc;AACb,UAAM;AACLC,MAAAA,kBADK;AAELC,MAAAA,YAFK;AAGLC,MAAAA;AAHK,QAIFH,MAAM,CAAEV,WAAF,CAJV;AAMA,WAAO;AACNM,MAAAA,SAAS,EAAEM,YAAY,CAAET,IAAF,CADjB;AAENI,MAAAA,gBAAgB,EAAEM,wBAAwB,CAAEV,IAAF,EAAQ,OAAR,CAFpC;AAGNK,MAAAA,eAAe,EAAEG,kBAAkB,CAAER,IAAF,EAAQ,OAAR,CAH7B;AAINM,MAAAA,aAAa,EAAEE,kBAAkB,CAAER,IAAF;AAJ3B,KAAP;AAMA,GAdW,EAeZ,CAAEA,IAAF,CAfY,CALb;AAsBA,QAAM;AAAEW,IAAAA;AAAF,MAAyBtB,WAAW,CAAEM,gBAAF,CAA1C;AACA,QAAMiB,UAAU,GAAGtB,aAAa,EAAhC;AACA,QAAMuB,iBAAiB,GAAGpB,oBAAoB,CAAEQ,UAAF,EAAcK,aAAd,CAA9C;AACA,QAAMQ,IAAI,GAAG,CAAAD,iBAAiB,SAAjB,IAAAA,iBAAiB,WAAjB,YAAAA,iBAAiB,CAAEC,IAAnB,MAA2BX,SAA3B,aAA2BA,SAA3B,0CAA2BA,SAAS,CAAEW,IAAtC,oDAA2B,gBAAiBC,GAA5C,CAAb;AACA,QAAMC,KAAK,GAAG,CAAAH,iBAAiB,SAAjB,IAAAA,iBAAiB,WAAjB,YAAAA,iBAAiB,CAAEI,KAAnB,MAA4Bd,SAA5B,aAA4BA,SAA5B,uBAA4BA,SAAS,CAAEc,KAAvC,CAAd;AACA,SACC,qBAAUL,UAAV,EACC,cAAC,kCAAD;AACC,IAAA,IAAI,EAAGE,IADR;AAEC,IAAA,KAAK,EAAGE,KAFT;AAGC,IAAA,UAAU,EAAGX,eAHd;AAIC,IAAA,QAAQ,EAAG,YAAwC;AAAA,UAAtCa,aAAsC,uEAAtBd,gBAAsB;;AAClD,UAAKc,aAAa,CAACjB,UAAnB,EAAgC;AAC/BC,QAAAA,aAAa,CAAEgB,aAAa,CAACjB,UAAhB,CAAb;AACA;;AACD,UAAKiB,aAAa,CAACC,WAAnB,EAAiC;AAChCR,QAAAA,kBAAkB,CACjBZ,QADiB,EAEjBH,mCAAmC,CAClCsB,aAAa,CAACC,WADoB,CAFlB,EAKjB,KALiB,CAAlB;AAOA;AACD;AAjBF,IADD,CADD;AAuBA,CAnDD;;AAqDA,eAAerB,gBAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tuseBlockProps,\n\t__experimentalBlockVariationPicker,\n\t__experimentalGetMatchingVariation as getMatchingVariation,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\tcreateBlocksFromInnerBlocksTemplate,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\n\nconst QueryPlaceholder = ( { clientId, name, attributes, setAttributes } ) => {\n\tconst {\n\t\tblockType,\n\t\tdefaultVariation,\n\t\tscopeVariations,\n\t\tallVariations,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockVariations,\n\t\t\t\tgetBlockType,\n\t\t\t\tgetDefaultBlockVariation,\n\t\t\t} = select( blocksStore );\n\n\t\t\treturn {\n\t\t\t\tblockType: getBlockType( name ),\n\t\t\t\tdefaultVariation: getDefaultBlockVariation( name, 'block' ),\n\t\t\t\tscopeVariations: getBlockVariations( name, 'block' ),\n\t\t\t\tallVariations: getBlockVariations( name ),\n\t\t\t};\n\t\t},\n\t\t[ name ]\n\t);\n\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\tconst blockProps = useBlockProps();\n\tconst matchingVariation = getMatchingVariation( attributes, allVariations );\n\tconst icon = matchingVariation?.icon || blockType?.icon?.src;\n\tconst label = matchingVariation?.title || blockType?.title;\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<__experimentalBlockVariationPicker\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tvariations={ scopeVariations }\n\t\t\t\tonSelect={ ( nextVariation = defaultVariation ) => {\n\t\t\t\t\tif ( nextVariation.attributes ) {\n\t\t\t\t\t\tsetAttributes( nextVariation.attributes );\n\t\t\t\t\t}\n\t\t\t\t\tif ( nextVariation.innerBlocks ) {\n\t\t\t\t\t\treplaceInnerBlocks(\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tcreateBlocksFromInnerBlocksTemplate(\n\t\t\t\t\t\t\t\tnextVariation.innerBlocks\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tfalse\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</div>\n\t);\n};\n\nexport default QueryPlaceholder;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/query/edit/query-placeholder.js"],"names":["useSelect","useDispatch","useBlockProps","__experimentalBlockVariationPicker","store","blockEditorStore","createBlocksFromInnerBlocksTemplate","blocksStore","QueryPlaceholder","clientId","name","setAttributes","icon","label","defaultVariation","scopeVariations","select","getBlockVariations","getBlockType","getDefaultBlockVariation","blockType","replaceInnerBlocks","blockProps","nextVariation","attributes","innerBlocks"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,WAApB,QAAuC,iBAAvC;AACA,SACCC,aADD,EAECC,kCAFD,EAGCC,KAAK,IAAIC,gBAHV,QAIO,yBAJP;AAKA,SACCC,mCADD,EAECF,KAAK,IAAIG,WAFV,QAGO,mBAHP;;AAKA,SAASC,gBAAT,OAA4E;AAAA,MAAjD;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,IAAZ;AAAkBC,IAAAA,aAAlB;AAAiCC,IAAAA,IAAjC;AAAuCC,IAAAA;AAAvC,GAAiD;AAC3E,QAAM;AAAEC,IAAAA,gBAAF;AAAoBC,IAAAA;AAApB,MAAwCf,SAAS,CACpDgB,MAAF,IAAc;AACb,UAAM;AACLC,MAAAA,kBADK;AAELC,MAAAA,YAFK;AAGLC,MAAAA;AAHK,QAIFH,MAAM,CAAET,WAAF,CAJV;AAMA,WAAO;AACNa,MAAAA,SAAS,EAAEF,YAAY,CAAER,IAAF,CADjB;AAENI,MAAAA,gBAAgB,EAAEK,wBAAwB,CAAET,IAAF,EAAQ,OAAR,CAFpC;AAGNK,MAAAA,eAAe,EAAEE,kBAAkB,CAAEP,IAAF,EAAQ,OAAR;AAH7B,KAAP;AAKA,GAbqD,EActD,CAAEA,IAAF,CAdsD,CAAvD;AAgBA,QAAM;AAAEW,IAAAA;AAAF,MAAyBpB,WAAW,CAAEI,gBAAF,CAA1C;AACA,QAAMiB,UAAU,GAAGpB,aAAa,EAAhC;AACA,SACC,qBAAUoB,UAAV,EACC,cAAC,kCAAD;AACC,IAAA,IAAI,EAAGV,IADR;AAEC,IAAA,KAAK,EAAGC,KAFT;AAGC,IAAA,UAAU,EAAGE,eAHd;AAIC,IAAA,QAAQ,EAAG,YAAwC;AAAA,UAAtCQ,aAAsC,uEAAtBT,gBAAsB;;AAClD,UAAKS,aAAa,CAACC,UAAnB,EAAgC;AAC/Bb,QAAAA,aAAa,CAAEY,aAAa,CAACC,UAAhB,CAAb;AACA;;AACD,UAAKD,aAAa,CAACE,WAAnB,EAAiC;AAChCJ,QAAAA,kBAAkB,CACjBZ,QADiB,EAEjBH,mCAAmC,CAClCiB,aAAa,CAACE,WADoB,CAFlB,EAKjB,KALiB,CAAlB;AAOA;AACD;AAjBF,IADD,CADD;AAuBA;;AAED,eAAejB,gBAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tuseBlockProps,\n\t__experimentalBlockVariationPicker,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\tcreateBlocksFromInnerBlocksTemplate,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\n\nfunction QueryPlaceholder( { clientId, name, setAttributes, icon, label } ) {\n\tconst { defaultVariation, scopeVariations } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockVariations,\n\t\t\t\tgetBlockType,\n\t\t\t\tgetDefaultBlockVariation,\n\t\t\t} = select( blocksStore );\n\n\t\t\treturn {\n\t\t\t\tblockType: getBlockType( name ),\n\t\t\t\tdefaultVariation: getDefaultBlockVariation( name, 'block' ),\n\t\t\t\tscopeVariations: getBlockVariations( name, 'block' ),\n\t\t\t};\n\t\t},\n\t\t[ name ]\n\t);\n\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<__experimentalBlockVariationPicker\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tvariations={ scopeVariations }\n\t\t\t\tonSelect={ ( nextVariation = defaultVariation ) => {\n\t\t\t\t\tif ( nextVariation.attributes ) {\n\t\t\t\t\t\tsetAttributes( nextVariation.attributes );\n\t\t\t\t\t}\n\t\t\t\t\tif ( nextVariation.innerBlocks ) {\n\t\t\t\t\t\treplaceInnerBlocks(\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tcreateBlocksFromInnerBlocksTemplate(\n\t\t\t\t\t\t\t\tnextVariation.innerBlocks\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tfalse\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</div>\n\t);\n}\n\nexport default QueryPlaceholder;\n"]}
@@ -14,7 +14,8 @@ export default function QueryToolbar(_ref) {
14
14
  displayLayout
15
15
  },
16
16
  setQuery,
17
- setDisplayLayout
17
+ setDisplayLayout,
18
+ openPatternSelectionModal
18
19
  } = _ref;
19
20
  const maxPageInputId = useInstanceId(QueryToolbar, 'blocks-query-pagination-max-page-input');
20
21
  const displayLayoutControls = [{
@@ -104,6 +105,10 @@ export default function QueryToolbar(_ref) {
104
105
  isDragEnabled: false
105
106
  })))
106
107
  })), createElement(ToolbarGroup, {
108
+ className: "wp-block-template-part__block-control-group"
109
+ }, createElement(ToolbarButton, {
110
+ onClick: openPatternSelectionModal
111
+ }, __('Replace'))), createElement(ToolbarGroup, {
107
112
  controls: displayLayoutControls
108
113
  }));
109
114
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/query/edit/query-toolbar.js"],"names":["ToolbarGroup","Dropdown","ToolbarButton","BaseControl","__experimentalNumberControl","NumberControl","useInstanceId","__","settings","list","grid","QueryToolbar","attributes","query","displayLayout","setQuery","setDisplayLayout","maxPageInputId","displayLayoutControls","icon","title","onClick","type","isActive","columns","inherit","onToggle","value","isNaN","perPage","offset","pages"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tToolbarGroup,\n\tDropdown,\n\tToolbarButton,\n\tBaseControl,\n\t__experimentalNumberControl as NumberControl,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { settings, list, grid } from '@wordpress/icons';\n\nexport default function QueryToolbar( {\n\tattributes: { query, displayLayout },\n\tsetQuery,\n\tsetDisplayLayout,\n} ) {\n\tconst maxPageInputId = useInstanceId(\n\t\tQueryToolbar,\n\t\t'blocks-query-pagination-max-page-input'\n\t);\n\tconst displayLayoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: __( 'List view' ),\n\t\t\tonClick: () => setDisplayLayout( { type: 'list' } ),\n\t\t\tisActive: displayLayout?.type === 'list',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: __( 'Grid view' ),\n\t\t\tonClick: () =>\n\t\t\t\tsetDisplayLayout( {\n\t\t\t\t\ttype: 'flex',\n\t\t\t\t\tcolumns: displayLayout?.columns || 3,\n\t\t\t\t} ),\n\t\t\tisActive: displayLayout?.type === 'flex',\n\t\t},\n\t];\n\treturn (\n\t\t<>\n\t\t\t{ ! query.inherit && (\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<Dropdown\n\t\t\t\t\t\tcontentClassName=\"block-library-query-toolbar__popover\"\n\t\t\t\t\t\trenderToggle={ ( { onToggle } ) => (\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\ticon={ settings }\n\t\t\t\t\t\t\t\tlabel={ __( 'Display settings' ) }\n\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<BaseControl>\n\t\t\t\t\t\t\t\t\t<NumberControl\n\t\t\t\t\t\t\t\t\t\t__unstableInputWidth=\"60px\"\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Items per Page' ) }\n\t\t\t\t\t\t\t\t\t\tlabelPosition=\"edge\"\n\t\t\t\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\tisNaN( value ) ||\n\t\t\t\t\t\t\t\t\t\t\t\tvalue < 1 ||\n\t\t\t\t\t\t\t\t\t\t\t\tvalue > 100\n\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tsetQuery( {\n\t\t\t\t\t\t\t\t\t\t\t\tperPage: value,\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tstep=\"1\"\n\t\t\t\t\t\t\t\t\t\tvalue={ query.perPage }\n\t\t\t\t\t\t\t\t\t\tisDragEnabled={ false }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t\t\t<BaseControl>\n\t\t\t\t\t\t\t\t\t<NumberControl\n\t\t\t\t\t\t\t\t\t\t__unstableInputWidth=\"60px\"\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Offset' ) }\n\t\t\t\t\t\t\t\t\t\tlabelPosition=\"edge\"\n\t\t\t\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\tisNaN( value ) ||\n\t\t\t\t\t\t\t\t\t\t\t\tvalue < 0 ||\n\t\t\t\t\t\t\t\t\t\t\t\tvalue > 100\n\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tsetQuery( { offset: value } );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tstep=\"1\"\n\t\t\t\t\t\t\t\t\t\tvalue={ query.offset }\n\t\t\t\t\t\t\t\t\t\tisDragEnabled={ false }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t\t\t<BaseControl\n\t\t\t\t\t\t\t\t\tid={ maxPageInputId }\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Limit the pages you want to show, even if the query has more results. To show all pages use 0 (zero).'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<NumberControl\n\t\t\t\t\t\t\t\t\t\tid={ maxPageInputId }\n\t\t\t\t\t\t\t\t\t\t__unstableInputWidth=\"60px\"\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Max page to show' ) }\n\t\t\t\t\t\t\t\t\t\tlabelPosition=\"edge\"\n\t\t\t\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tif ( isNaN( value ) || value < 0 ) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tsetQuery( { pages: value } );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tstep=\"1\"\n\t\t\t\t\t\t\t\t\t\tvalue={ query.pages }\n\t\t\t\t\t\t\t\t\t\tisDragEnabled={ false }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</BaseControl>\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</ToolbarGroup>\n\t\t\t) }\n\t\t\t<ToolbarGroup controls={ displayLayoutControls } />\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/query/edit/query-toolbar.js"],"names":["ToolbarGroup","Dropdown","ToolbarButton","BaseControl","__experimentalNumberControl","NumberControl","useInstanceId","__","settings","list","grid","QueryToolbar","attributes","query","displayLayout","setQuery","setDisplayLayout","openPatternSelectionModal","maxPageInputId","displayLayoutControls","icon","title","onClick","type","isActive","columns","inherit","onToggle","value","isNaN","perPage","offset","pages"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tToolbarGroup,\n\tDropdown,\n\tToolbarButton,\n\tBaseControl,\n\t__experimentalNumberControl as NumberControl,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { settings, list, grid } from '@wordpress/icons';\n\nexport default function QueryToolbar( {\n\tattributes: { query, displayLayout },\n\tsetQuery,\n\tsetDisplayLayout,\n\topenPatternSelectionModal,\n} ) {\n\tconst maxPageInputId = useInstanceId(\n\t\tQueryToolbar,\n\t\t'blocks-query-pagination-max-page-input'\n\t);\n\tconst displayLayoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: __( 'List view' ),\n\t\t\tonClick: () => setDisplayLayout( { type: 'list' } ),\n\t\t\tisActive: displayLayout?.type === 'list',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: __( 'Grid view' ),\n\t\t\tonClick: () =>\n\t\t\t\tsetDisplayLayout( {\n\t\t\t\t\ttype: 'flex',\n\t\t\t\t\tcolumns: displayLayout?.columns || 3,\n\t\t\t\t} ),\n\t\t\tisActive: displayLayout?.type === 'flex',\n\t\t},\n\t];\n\treturn (\n\t\t<>\n\t\t\t{ ! query.inherit && (\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<Dropdown\n\t\t\t\t\t\tcontentClassName=\"block-library-query-toolbar__popover\"\n\t\t\t\t\t\trenderToggle={ ( { onToggle } ) => (\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\ticon={ settings }\n\t\t\t\t\t\t\t\tlabel={ __( 'Display settings' ) }\n\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<BaseControl>\n\t\t\t\t\t\t\t\t\t<NumberControl\n\t\t\t\t\t\t\t\t\t\t__unstableInputWidth=\"60px\"\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Items per Page' ) }\n\t\t\t\t\t\t\t\t\t\tlabelPosition=\"edge\"\n\t\t\t\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\tisNaN( value ) ||\n\t\t\t\t\t\t\t\t\t\t\t\tvalue < 1 ||\n\t\t\t\t\t\t\t\t\t\t\t\tvalue > 100\n\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tsetQuery( {\n\t\t\t\t\t\t\t\t\t\t\t\tperPage: value,\n\t\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tstep=\"1\"\n\t\t\t\t\t\t\t\t\t\tvalue={ query.perPage }\n\t\t\t\t\t\t\t\t\t\tisDragEnabled={ false }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t\t\t<BaseControl>\n\t\t\t\t\t\t\t\t\t<NumberControl\n\t\t\t\t\t\t\t\t\t\t__unstableInputWidth=\"60px\"\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Offset' ) }\n\t\t\t\t\t\t\t\t\t\tlabelPosition=\"edge\"\n\t\t\t\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\tisNaN( value ) ||\n\t\t\t\t\t\t\t\t\t\t\t\tvalue < 0 ||\n\t\t\t\t\t\t\t\t\t\t\t\tvalue > 100\n\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tsetQuery( { offset: value } );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tstep=\"1\"\n\t\t\t\t\t\t\t\t\t\tvalue={ query.offset }\n\t\t\t\t\t\t\t\t\t\tisDragEnabled={ false }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t\t\t<BaseControl\n\t\t\t\t\t\t\t\t\tid={ maxPageInputId }\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Limit the pages you want to show, even if the query has more results. To show all pages use 0 (zero).'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<NumberControl\n\t\t\t\t\t\t\t\t\t\tid={ maxPageInputId }\n\t\t\t\t\t\t\t\t\t\t__unstableInputWidth=\"60px\"\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Max page to show' ) }\n\t\t\t\t\t\t\t\t\t\tlabelPosition=\"edge\"\n\t\t\t\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tif ( isNaN( value ) || value < 0 ) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tsetQuery( { pages: value } );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tstep=\"1\"\n\t\t\t\t\t\t\t\t\t\tvalue={ query.pages }\n\t\t\t\t\t\t\t\t\t\tisDragEnabled={ false }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</BaseControl>\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</ToolbarGroup>\n\t\t\t) }\n\t\t\t<ToolbarGroup className=\"wp-block-template-part__block-control-group\">\n\t\t\t\t<ToolbarButton onClick={ openPatternSelectionModal }>\n\t\t\t\t\t{ __( 'Replace' ) }\n\t\t\t\t</ToolbarButton>\n\t\t\t</ToolbarGroup>\n\t\t\t<ToolbarGroup controls={ displayLayoutControls } />\n\t\t</>\n\t);\n}\n"]}
@@ -60,6 +60,6 @@ export default function QueryPaginationEdit(_ref) {
60
60
  paginationArrow: value
61
61
  });
62
62
  }
63
- }))), createElement("div", innerBlocksProps));
63
+ }))), createElement("nav", innerBlocksProps));
64
64
  }
65
65
  //# sourceMappingURL=edit.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/query-pagination/edit.js"],"names":["__","InspectorControls","useBlockProps","useInnerBlocksProps","store","blockEditorStore","useSelect","getBlockSupport","PanelBody","QueryPaginationArrowControls","TEMPLATE","getDefaultBlockLayout","blockTypeOrName","layoutBlockSupportConfig","default","QueryPaginationEdit","attributes","paginationArrow","layout","setAttributes","clientId","name","usedLayout","hasNextPreviousBlocks","select","getBlocks","innerBlocks","find","innerBlock","includes","blockProps","innerBlocksProps","template","allowedBlocks","__experimentalLayout","value"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SACCC,iBADD,EAECC,aAFD,EAGCC,mBAHD,EAICC,KAAK,IAAIC,gBAJV,QAKO,yBALP;AAMA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,eAAT,QAAgC,mBAAhC;AACA,SAASC,SAAT,QAA0B,uBAA1B;AAEA;AACA;AACA;;AACA,SAASC,4BAAT,QAA6C,mCAA7C;AAEA,MAAMC,QAAQ,GAAG,CAChB,CAAE,gCAAF,CADgB,EAEhB,CAAE,+BAAF,CAFgB,EAGhB,CAAE,4BAAF,CAHgB,CAAjB;;AAMA,MAAMC,qBAAqB,GAAKC,eAAF,IAAuB;AACpD,QAAMC,wBAAwB,GAAGN,eAAe,CAC/CK,eAD+C,EAE/C,sBAF+C,CAAhD;AAIA,SAAOC,wBAAP,aAAOA,wBAAP,uBAAOA,wBAAwB,CAAEC,OAAjC;AACA,CAND;;AAQA,eAAe,SAASC,mBAAT,OAKX;AAAA,MALyC;AAC5CC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,eAAF;AAAmBC,MAAAA;AAAnB,KADgC;AAE5CC,IAAAA,aAF4C;AAG5CC,IAAAA,QAH4C;AAI5CC,IAAAA;AAJ4C,GAKzC;AACH,QAAMC,UAAU,GAAGJ,MAAM,IAAIP,qBAAqB,CAAEU,IAAF,CAAlD;AACA,QAAME,qBAAqB,GAAGjB,SAAS,CAAIkB,MAAF,IAAc;AACtD,UAAM;AAAEC,MAAAA;AAAF,QAAgBD,MAAM,CAAEnB,gBAAF,CAA5B;AACA,UAAMqB,WAAW,GAAGD,SAAS,CAAEL,QAAF,CAA7B;AACA;AACF;AACA;AACA;;AACE,WAAOM,WAAP,aAAOA,WAAP,uBAAOA,WAAW,CAAEC,IAAb,CAAqBC,UAAF,IAAkB;AAC3C,aAAO,CACN,4BADM,EAEN,gCAFM,EAGLC,QAHK,CAGKD,UAAU,CAACP,IAHhB,CAAP;AAIA,KALM,CAAP;AAMA,GAbsC,EAapC,EAboC,CAAvC;AAcA,QAAMS,UAAU,GAAG5B,aAAa,EAAhC;AACA,QAAM6B,gBAAgB,GAAG5B,mBAAmB,CAAE2B,UAAF,EAAc;AACzDE,IAAAA,QAAQ,EAAEtB,QAD+C;AAEzDuB,IAAAA,aAAa,EAAE,CACd,gCADc,EAEd,+BAFc,EAGd,4BAHc,CAF0C;AAOzDC,IAAAA,oBAAoB,EAAEZ;AAPmC,GAAd,CAA5C;AASA,SACC,8BACGC,qBAAqB,IACtB,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGvB,EAAE,CAAE,UAAF;AAArB,KACC,cAAC,4BAAD;AACC,IAAA,KAAK,EAAGiB,eADT;AAEC,IAAA,QAAQ,EAAKkB,KAAF,IAAa;AACvBhB,MAAAA,aAAa,CAAE;AAAEF,QAAAA,eAAe,EAAEkB;AAAnB,OAAF,CAAb;AACA;AAJF,IADD,CADD,CAFF,EAaC,qBAAUJ,gBAAV,CAbD,CADD;AAiBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { getBlockSupport } from '@wordpress/blocks';\nimport { PanelBody } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { QueryPaginationArrowControls } from './query-pagination-arrow-controls';\n\nconst TEMPLATE = [\n\t[ 'core/query-pagination-previous' ],\n\t[ 'core/query-pagination-numbers' ],\n\t[ 'core/query-pagination-next' ],\n];\n\nconst getDefaultBlockLayout = ( blockTypeOrName ) => {\n\tconst layoutBlockSupportConfig = getBlockSupport(\n\t\tblockTypeOrName,\n\t\t'__experimentalLayout'\n\t);\n\treturn layoutBlockSupportConfig?.default;\n};\n\nexport default function QueryPaginationEdit( {\n\tattributes: { paginationArrow, layout },\n\tsetAttributes,\n\tclientId,\n\tname,\n} ) {\n\tconst usedLayout = layout || getDefaultBlockLayout( name );\n\tconst hasNextPreviousBlocks = useSelect( ( select ) => {\n\t\tconst { getBlocks } = select( blockEditorStore );\n\t\tconst innerBlocks = getBlocks( clientId );\n\t\t/**\n\t\t * Show the `paginationArrow` control only if a\n\t\t * `QueryPaginationNext/Previous` block exists.\n\t\t */\n\t\treturn innerBlocks?.find( ( innerBlock ) => {\n\t\t\treturn [\n\t\t\t\t'core/query-pagination-next',\n\t\t\t\t'core/query-pagination-previous',\n\t\t\t].includes( innerBlock.name );\n\t\t} );\n\t}, [] );\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t\tallowedBlocks: [\n\t\t\t'core/query-pagination-previous',\n\t\t\t'core/query-pagination-numbers',\n\t\t\t'core/query-pagination-next',\n\t\t],\n\t\t__experimentalLayout: usedLayout,\n\t} );\n\treturn (\n\t\t<>\n\t\t\t{ hasNextPreviousBlocks && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t<QueryPaginationArrowControls\n\t\t\t\t\t\t\tvalue={ paginationArrow }\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { paginationArrow: value } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<div { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/query-pagination/edit.js"],"names":["__","InspectorControls","useBlockProps","useInnerBlocksProps","store","blockEditorStore","useSelect","getBlockSupport","PanelBody","QueryPaginationArrowControls","TEMPLATE","getDefaultBlockLayout","blockTypeOrName","layoutBlockSupportConfig","default","QueryPaginationEdit","attributes","paginationArrow","layout","setAttributes","clientId","name","usedLayout","hasNextPreviousBlocks","select","getBlocks","innerBlocks","find","innerBlock","includes","blockProps","innerBlocksProps","template","allowedBlocks","__experimentalLayout","value"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SACCC,iBADD,EAECC,aAFD,EAGCC,mBAHD,EAICC,KAAK,IAAIC,gBAJV,QAKO,yBALP;AAMA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,eAAT,QAAgC,mBAAhC;AACA,SAASC,SAAT,QAA0B,uBAA1B;AAEA;AACA;AACA;;AACA,SAASC,4BAAT,QAA6C,mCAA7C;AAEA,MAAMC,QAAQ,GAAG,CAChB,CAAE,gCAAF,CADgB,EAEhB,CAAE,+BAAF,CAFgB,EAGhB,CAAE,4BAAF,CAHgB,CAAjB;;AAMA,MAAMC,qBAAqB,GAAKC,eAAF,IAAuB;AACpD,QAAMC,wBAAwB,GAAGN,eAAe,CAC/CK,eAD+C,EAE/C,sBAF+C,CAAhD;AAIA,SAAOC,wBAAP,aAAOA,wBAAP,uBAAOA,wBAAwB,CAAEC,OAAjC;AACA,CAND;;AAQA,eAAe,SAASC,mBAAT,OAKX;AAAA,MALyC;AAC5CC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,eAAF;AAAmBC,MAAAA;AAAnB,KADgC;AAE5CC,IAAAA,aAF4C;AAG5CC,IAAAA,QAH4C;AAI5CC,IAAAA;AAJ4C,GAKzC;AACH,QAAMC,UAAU,GAAGJ,MAAM,IAAIP,qBAAqB,CAAEU,IAAF,CAAlD;AACA,QAAME,qBAAqB,GAAGjB,SAAS,CAAIkB,MAAF,IAAc;AACtD,UAAM;AAAEC,MAAAA;AAAF,QAAgBD,MAAM,CAAEnB,gBAAF,CAA5B;AACA,UAAMqB,WAAW,GAAGD,SAAS,CAAEL,QAAF,CAA7B;AACA;AACF;AACA;AACA;;AACE,WAAOM,WAAP,aAAOA,WAAP,uBAAOA,WAAW,CAAEC,IAAb,CAAqBC,UAAF,IAAkB;AAC3C,aAAO,CACN,4BADM,EAEN,gCAFM,EAGLC,QAHK,CAGKD,UAAU,CAACP,IAHhB,CAAP;AAIA,KALM,CAAP;AAMA,GAbsC,EAapC,EAboC,CAAvC;AAcA,QAAMS,UAAU,GAAG5B,aAAa,EAAhC;AACA,QAAM6B,gBAAgB,GAAG5B,mBAAmB,CAAE2B,UAAF,EAAc;AACzDE,IAAAA,QAAQ,EAAEtB,QAD+C;AAEzDuB,IAAAA,aAAa,EAAE,CACd,gCADc,EAEd,+BAFc,EAGd,4BAHc,CAF0C;AAOzDC,IAAAA,oBAAoB,EAAEZ;AAPmC,GAAd,CAA5C;AASA,SACC,8BACGC,qBAAqB,IACtB,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGvB,EAAE,CAAE,UAAF;AAArB,KACC,cAAC,4BAAD;AACC,IAAA,KAAK,EAAGiB,eADT;AAEC,IAAA,QAAQ,EAAKkB,KAAF,IAAa;AACvBhB,MAAAA,aAAa,CAAE;AAAEF,QAAAA,eAAe,EAAEkB;AAAnB,OAAF,CAAb;AACA;AAJF,IADD,CADD,CAFF,EAaC,qBAAUJ,gBAAV,CAbD,CADD;AAiBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { getBlockSupport } from '@wordpress/blocks';\nimport { PanelBody } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { QueryPaginationArrowControls } from './query-pagination-arrow-controls';\n\nconst TEMPLATE = [\n\t[ 'core/query-pagination-previous' ],\n\t[ 'core/query-pagination-numbers' ],\n\t[ 'core/query-pagination-next' ],\n];\n\nconst getDefaultBlockLayout = ( blockTypeOrName ) => {\n\tconst layoutBlockSupportConfig = getBlockSupport(\n\t\tblockTypeOrName,\n\t\t'__experimentalLayout'\n\t);\n\treturn layoutBlockSupportConfig?.default;\n};\n\nexport default function QueryPaginationEdit( {\n\tattributes: { paginationArrow, layout },\n\tsetAttributes,\n\tclientId,\n\tname,\n} ) {\n\tconst usedLayout = layout || getDefaultBlockLayout( name );\n\tconst hasNextPreviousBlocks = useSelect( ( select ) => {\n\t\tconst { getBlocks } = select( blockEditorStore );\n\t\tconst innerBlocks = getBlocks( clientId );\n\t\t/**\n\t\t * Show the `paginationArrow` control only if a\n\t\t * `QueryPaginationNext/Previous` block exists.\n\t\t */\n\t\treturn innerBlocks?.find( ( innerBlock ) => {\n\t\t\treturn [\n\t\t\t\t'core/query-pagination-next',\n\t\t\t\t'core/query-pagination-previous',\n\t\t\t].includes( innerBlock.name );\n\t\t} );\n\t}, [] );\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t\tallowedBlocks: [\n\t\t\t'core/query-pagination-previous',\n\t\t\t'core/query-pagination-numbers',\n\t\t\t'core/query-pagination-next',\n\t\t],\n\t\t__experimentalLayout: usedLayout,\n\t} );\n\treturn (\n\t\t<>\n\t\t\t{ hasNextPreviousBlocks && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t<QueryPaginationArrowControls\n\t\t\t\t\t\t\tvalue={ paginationArrow }\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { paginationArrow: value } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<nav { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n"]}
@@ -18,7 +18,25 @@ const metadata = {
18
18
  usesContext: ["queryId", "query"],
19
19
  supports: {
20
20
  reusable: false,
21
- html: false
21
+ html: false,
22
+ color: {
23
+ gradients: true,
24
+ text: false,
25
+ __experimentalDefaultControls: {
26
+ background: true
27
+ }
28
+ },
29
+ typography: {
30
+ fontSize: true,
31
+ lineHeight: true,
32
+ __experimentalFontStyle: true,
33
+ __experimentalFontWeight: true,
34
+ __experimentalLetterSpacing: true,
35
+ __experimentalTextTransform: true,
36
+ __experimentalDefaultControls: {
37
+ fontSize: true
38
+ }
39
+ }
22
40
  },
23
41
  editorStyle: "query-pagination-numbers-editor"
24
42
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/query-pagination-numbers/index.js"],"names":["queryPaginationNumbers","icon","edit","name","metadata","settings"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,sBAAsB,IAAIC,IAAnC,QAA+C,kBAA/C;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AACA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBJ,EAAAA,IADuB;AAEvBC,EAAAA;AAFuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { queryPaginationNumbers 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/query-pagination-numbers/index.js"],"names":["queryPaginationNumbers","icon","edit","name","metadata","settings"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,sBAAsB,IAAIC,IAAnC,QAA+C,kBAA/C;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AACA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBJ,EAAAA,IADuB;AAEvBC,EAAAA;AAFuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { queryPaginationNumbers 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"]}
@@ -52,6 +52,14 @@ const metadata = {
52
52
  fontSize: true,
53
53
  fontAppearance: true
54
54
  }
55
+ },
56
+ color: {
57
+ gradients: true,
58
+ link: true,
59
+ __experimentalDefaultControls: {
60
+ background: true,
61
+ text: true
62
+ }
55
63
  }
56
64
  },
57
65
  styles: [{
@@ -67,11 +75,12 @@ const metadata = {
67
75
  };
68
76
  import save from './save';
69
77
  import transforms from './transforms';
78
+ import settingsV2 from './v2';
70
79
  const {
71
80
  name
72
81
  } = metadata;
73
82
  export { metadata, name };
74
- export const settings = {
83
+ export const settingsV1 = {
75
84
  icon,
76
85
  example: {
77
86
  attributes: {
@@ -109,4 +118,13 @@ export const settings = {
109
118
 
110
119
  deprecated
111
120
  };
121
+ let settings = settingsV1;
122
+
123
+ if (process.env.IS_GUTENBERG_PLUGIN) {
124
+ var _window;
125
+
126
+ settings = (_window = window) !== null && _window !== void 0 && _window.__experimentalEnableQuoteBlockV2 ? settingsV2 : settingsV1;
127
+ }
128
+
129
+ export { settings };
112
130
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/quote/index.js"],"names":["__","quote","icon","deprecated","edit","save","transforms","name","metadata","settings","example","attributes","value","citation","merge"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,KAAK,IAAIC,IAAlB,QAA8B,kBAA9B;AAEA;AACA;AACA;;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,IAAP,MAAiB,QAAjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBP,EAAAA,IADuB;AAEvBQ,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,KAAK,EACJ,QAAQZ,EAAE,CAAE,uCAAF,CAAV,GAAwD,MAF9C;AAGXa,MAAAA,QAAQ,EAAE;AAHC;AADJ,GAFc;AASvBP,EAAAA,UATuB;AAUvBF,EAAAA,IAVuB;AAWvBC,EAAAA,IAXuB;;AAYvBS,EAAAA,KAAK,CAAEH,UAAF,QAAoC;AAAA,QAAtB;AAAEC,MAAAA,KAAF;AAASC,MAAAA;AAAT,KAAsB;;AACxC;AACA;AACA,QAAK,CAAEA,QAAP,EAAkB;AACjBA,MAAAA,QAAQ,GAAGF,UAAU,CAACE,QAAtB;AACA;;AAED,QAAK,CAAED,KAAF,IAAWA,KAAK,KAAK,SAA1B,EAAsC;AACrC,aAAO,EACN,GAAGD,UADG;AAENE,QAAAA;AAFM,OAAP;AAIA;;AAED,WAAO,EACN,GAAGF,UADG;AAENC,MAAAA,KAAK,EAAED,UAAU,CAACC,KAAX,GAAmBA,KAFpB;AAGNC,MAAAA;AAHM,KAAP;AAKA,GA/BsB;;AAgCvBV,EAAAA;AAhCuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { quote 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';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tvalue:\n\t\t\t\t'<p>' + __( 'In quoting others, we cite ourselves.' ) + '</p>',\n\t\t\tcitation: 'Julio Cortázar',\n\t\t},\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tmerge( attributes, { value, citation } ) {\n\t\t// Quote citations cannot be merged. Pick the second one unless it's\n\t\t// empty.\n\t\tif ( ! citation ) {\n\t\t\tcitation = attributes.citation;\n\t\t}\n\n\t\tif ( ! value || value === '<p></p>' ) {\n\t\t\treturn {\n\t\t\t\t...attributes,\n\t\t\t\tcitation,\n\t\t\t};\n\t\t}\n\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tvalue: attributes.value + value,\n\t\t\tcitation,\n\t\t};\n\t},\n\tdeprecated,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/quote/index.js"],"names":["__","quote","icon","deprecated","edit","save","transforms","settingsV2","name","metadata","settingsV1","example","attributes","value","citation","merge","settings","process","env","IS_GUTENBERG_PLUGIN","window","__experimentalEnableQuoteBlockV2"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,KAAK,IAAIC,IAAlB,QAA8B,kBAA9B;AAEA;AACA;AACA;;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,IAAP,MAAiB,QAAjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,UAAP,MAAuB,MAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,UAAU,GAAG;AACzBR,EAAAA,IADyB;AAEzBS,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,KAAK,EACJ,QAAQb,EAAE,CAAE,uCAAF,CAAV,GAAwD,MAF9C;AAGXc,MAAAA,QAAQ,EAAE;AAHC;AADJ,GAFgB;AASzBR,EAAAA,UATyB;AAUzBF,EAAAA,IAVyB;AAWzBC,EAAAA,IAXyB;;AAYzBU,EAAAA,KAAK,CAAEH,UAAF,QAAoC;AAAA,QAAtB;AAAEC,MAAAA,KAAF;AAASC,MAAAA;AAAT,KAAsB;;AACxC;AACA;AACA,QAAK,CAAEA,QAAP,EAAkB;AACjBA,MAAAA,QAAQ,GAAGF,UAAU,CAACE,QAAtB;AACA;;AAED,QAAK,CAAED,KAAF,IAAWA,KAAK,KAAK,SAA1B,EAAsC;AACrC,aAAO,EACN,GAAGD,UADG;AAENE,QAAAA;AAFM,OAAP;AAIA;;AAED,WAAO,EACN,GAAGF,UADG;AAENC,MAAAA,KAAK,EAAED,UAAU,CAACC,KAAX,GAAmBA,KAFpB;AAGNC,MAAAA;AAHM,KAAP;AAKA,GA/BwB;;AAgCzBX,EAAAA;AAhCyB,CAAnB;AAmCP,IAAIa,QAAQ,GAAGN,UAAf;;AACA,IAAKO,OAAO,CAACC,GAAR,CAAYC,mBAAjB,EAAuC;AAAA;;AACtCH,EAAAA,QAAQ,GAAG,WAAAI,MAAM,UAAN,kCAAQC,gCAAR,GACRd,UADQ,GAERG,UAFH;AAGA;;AACD,SAASM,QAAT","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { quote 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';\nimport transforms from './transforms';\nimport settingsV2 from './v2';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settingsV1 = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tvalue:\n\t\t\t\t'<p>' + __( 'In quoting others, we cite ourselves.' ) + '</p>',\n\t\t\tcitation: 'Julio Cortázar',\n\t\t},\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tmerge( attributes, { value, citation } ) {\n\t\t// Quote citations cannot be merged. Pick the second one unless it's\n\t\t// empty.\n\t\tif ( ! citation ) {\n\t\t\tcitation = attributes.citation;\n\t\t}\n\n\t\tif ( ! value || value === '<p></p>' ) {\n\t\t\treturn {\n\t\t\t\t...attributes,\n\t\t\t\tcitation,\n\t\t\t};\n\t\t}\n\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tvalue: attributes.value + value,\n\t\t\tcitation,\n\t\t};\n\t},\n\tdeprecated,\n};\n\nlet settings = settingsV1;\nif ( process.env.IS_GUTENBERG_PLUGIN ) {\n\tsettings = window?.__experimentalEnableQuoteBlockV2\n\t\t? settingsV2\n\t\t: settingsV1;\n}\nexport { settings };\n"]}
@@ -0,0 +1,116 @@
1
+ import { createElement } from "@wordpress/element";
2
+
3
+ /**
4
+ * External dependencies
5
+ */
6
+ import classnames from 'classnames';
7
+ import { omit } from 'lodash';
8
+ /**
9
+ * WordPress dependencies
10
+ */
11
+
12
+ import { createBlock, parseWithAttributeSchema } from '@wordpress/blocks';
13
+ import { RichText, useBlockProps } from '@wordpress/block-editor';
14
+ /**
15
+ * Internal dependencies
16
+ */
17
+
18
+ import deprecationsForV1Block from '../deprecated';
19
+ export const migrateToQuoteV2 = attributes => {
20
+ const {
21
+ value
22
+ } = attributes;
23
+ return [{ ...omit(attributes, ['value'])
24
+ }, value ? parseWithAttributeSchema(value, {
25
+ type: 'array',
26
+ source: 'query',
27
+ selector: 'p',
28
+ query: {
29
+ content: {
30
+ type: 'string',
31
+ source: 'html'
32
+ }
33
+ }
34
+ }).map(_ref => {
35
+ let {
36
+ content
37
+ } = _ref;
38
+ return createBlock('core/paragraph', {
39
+ content
40
+ });
41
+ }) : createBlock('core/paragraph')];
42
+ };
43
+ const v3 = {
44
+ attributes: {
45
+ value: {
46
+ type: 'string',
47
+ source: 'html',
48
+ selector: 'blockquote',
49
+ multiline: 'p',
50
+ default: '',
51
+ __experimentalRole: 'content'
52
+ },
53
+ citation: {
54
+ type: 'string',
55
+ source: 'html',
56
+ selector: 'cite',
57
+ default: '',
58
+ __experimentalRole: 'content'
59
+ },
60
+ align: {
61
+ type: 'string'
62
+ }
63
+ },
64
+ supports: {
65
+ anchor: true,
66
+ __experimentalSlashInserter: true,
67
+ typography: {
68
+ fontSize: true,
69
+ lineHeight: true,
70
+ __experimentalFontStyle: true,
71
+ __experimentalFontWeight: true,
72
+ __experimentalLetterSpacing: true,
73
+ __experimentalTextTransform: true,
74
+ __experimentalDefaultControls: {
75
+ fontSize: true,
76
+ fontAppearance: true
77
+ }
78
+ }
79
+ },
80
+
81
+ save(_ref2) {
82
+ let {
83
+ attributes
84
+ } = _ref2;
85
+ const {
86
+ align,
87
+ value,
88
+ citation
89
+ } = attributes;
90
+ const className = classnames({
91
+ [`has-text-align-${align}`]: align
92
+ });
93
+ return createElement("blockquote", useBlockProps.save({
94
+ className
95
+ }), createElement(RichText.Content, {
96
+ multiline: true,
97
+ value: value
98
+ }), !RichText.isEmpty(citation) && createElement(RichText.Content, {
99
+ tagName: "cite",
100
+ value: citation
101
+ }));
102
+ },
103
+
104
+ migrate: migrateToQuoteV2
105
+ };
106
+ /**
107
+ * New deprecations need to be placed first
108
+ * for them to have higher priority.
109
+ *
110
+ * Old deprecations may need to be updated as well.
111
+ *
112
+ * See block-deprecation.md
113
+ */
114
+
115
+ export default [v3, ...deprecationsForV1Block];
116
+ //# sourceMappingURL=deprecated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/quote/v2/deprecated.js"],"names":["classnames","omit","createBlock","parseWithAttributeSchema","RichText","useBlockProps","deprecationsForV1Block","migrateToQuoteV2","attributes","value","type","source","selector","query","content","map","v3","multiline","default","__experimentalRole","citation","align","supports","anchor","__experimentalSlashInserter","typography","fontSize","lineHeight","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalTextTransform","__experimentalDefaultControls","fontAppearance","save","className","isEmpty","migrate"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { omit } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock, parseWithAttributeSchema } from '@wordpress/blocks';\nimport { RichText, useBlockProps } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport deprecationsForV1Block from '../deprecated';\n\nexport const migrateToQuoteV2 = ( attributes ) => {\n\tconst { value } = attributes;\n\n\treturn [\n\t\t{\n\t\t\t...omit( attributes, [ 'value' ] ),\n\t\t},\n\t\tvalue\n\t\t\t? parseWithAttributeSchema( value, {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tsource: 'query',\n\t\t\t\t\tselector: 'p',\n\t\t\t\t\tquery: {\n\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\tsource: 'html',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t } ).map( ( { content } ) =>\n\t\t\t\t\tcreateBlock( 'core/paragraph', { content } )\n\t\t\t )\n\t\t\t: createBlock( 'core/paragraph' ),\n\t];\n};\n\nconst v3 = {\n\tattributes: {\n\t\tvalue: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'blockquote',\n\t\t\tmultiline: 'p',\n\t\t\tdefault: '',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\tcitation: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'cite',\n\t\t\tdefault: '',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tsupports: {\n\t\tanchor: true,\n\t\t__experimentalSlashInserter: true,\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\tlineHeight: true,\n\t\t\t__experimentalFontStyle: true,\n\t\t\t__experimentalFontWeight: true,\n\t\t\t__experimentalLetterSpacing: true,\n\t\t\t__experimentalTextTransform: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tfontSize: true,\n\t\t\t\tfontAppearance: true,\n\t\t\t},\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst { align, value, citation } = attributes;\n\n\t\tconst className = classnames( {\n\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t} );\n\n\t\treturn (\n\t\t\t<blockquote { ...useBlockProps.save( { className } ) }>\n\t\t\t\t<RichText.Content multiline value={ value } />\n\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t\t) }\n\t\t\t</blockquote>\n\t\t);\n\t},\n\tmigrate: migrateToQuoteV2,\n};\n\n/**\n * New deprecations need to be placed first\n * for them to have higher priority.\n *\n * Old deprecations may need to be updated as well.\n *\n * See block-deprecation.md\n */\nexport default [ v3, ...deprecationsForV1Block ];\n"]}
@@ -0,0 +1,115 @@
1
+ import { createElement, Fragment } from "@wordpress/element";
2
+
3
+ /**
4
+ * External dependencies
5
+ */
6
+ import classNames from 'classnames';
7
+ /**
8
+ * WordPress dependencies
9
+ */
10
+
11
+ import { __ } from '@wordpress/i18n';
12
+ import { AlignmentControl, BlockControls, RichText, useBlockProps, useInnerBlocksProps, store as blockEditorStore } from '@wordpress/block-editor';
13
+ import { BlockQuotation } from '@wordpress/components';
14
+ import { useDispatch, useSelect, useRegistry } from '@wordpress/data';
15
+ import { createBlock } from '@wordpress/blocks';
16
+ import { Platform, useEffect } from '@wordpress/element';
17
+ import deprecated from '@wordpress/deprecated';
18
+ /**
19
+ * Internal dependencies
20
+ */
21
+
22
+ import { migrateToQuoteV2 } from './deprecated';
23
+ const isWebPlatform = Platform.OS === 'web';
24
+ const TEMPLATE = [['core/paragraph', {}]];
25
+ /**
26
+ * At the moment, deprecations don't handle create blocks from attributes
27
+ * (like when using CPT templates). For this reason, this hook is necessary
28
+ * to avoid breaking templates using the old quote block format.
29
+ *
30
+ * @param {Object} attributes Block attributes.
31
+ * @param {string} clientId Block client ID.
32
+ */
33
+
34
+ const useMigrateOnLoad = (attributes, clientId) => {
35
+ const registry = useRegistry();
36
+ const {
37
+ updateBlockAttributes,
38
+ replaceInnerBlocks
39
+ } = useDispatch(blockEditorStore);
40
+ useEffect(() => {
41
+ // As soon as the block is loaded, migrate it to the new version.
42
+ if (!attributes.value) {
43
+ // No need to migrate if it doesn't have the value attribute.
44
+ return;
45
+ }
46
+
47
+ const [newAttributes, newInnerBlocks] = migrateToQuoteV2(attributes);
48
+ deprecated('Value attribute on the quote block', {
49
+ since: '6.0',
50
+ version: '6.5',
51
+ alternative: 'inner blocks'
52
+ });
53
+ registry.batch(() => {
54
+ updateBlockAttributes(clientId, newAttributes);
55
+ replaceInnerBlocks(clientId, newInnerBlocks);
56
+ });
57
+ }, [attributes.value]);
58
+ };
59
+
60
+ export default function QuoteEdit(_ref) {
61
+ let {
62
+ attributes,
63
+ setAttributes,
64
+ isSelected,
65
+ insertBlocksAfter,
66
+ clientId,
67
+ className
68
+ } = _ref;
69
+ const {
70
+ citation,
71
+ align
72
+ } = attributes;
73
+ useMigrateOnLoad(attributes, clientId);
74
+ const isAncestorOfSelectedBlock = useSelect(select => select(blockEditorStore).hasSelectedInnerBlock(clientId));
75
+ const hasSelection = isSelected || isAncestorOfSelectedBlock;
76
+ const blockProps = useBlockProps({
77
+ className: classNames(className, {
78
+ [`has-text-align-${align}`]: align
79
+ })
80
+ });
81
+ const innerBlocksProps = useInnerBlocksProps(blockProps, {
82
+ template: TEMPLATE,
83
+ templateInsertUpdatesSelection: true
84
+ });
85
+ return createElement(Fragment, null, createElement(BlockControls, {
86
+ group: "block"
87
+ }, createElement(AlignmentControl, {
88
+ value: align,
89
+ onChange: nextAlign => {
90
+ setAttributes({
91
+ align: nextAlign
92
+ });
93
+ }
94
+ })), createElement(BlockQuotation, innerBlocksProps, innerBlocksProps.children, (!RichText.isEmpty(citation) || hasSelection) && createElement(RichText, {
95
+ identifier: "citation",
96
+ tagName: isWebPlatform ? 'cite' : undefined,
97
+ style: {
98
+ display: 'block'
99
+ },
100
+ value: citation,
101
+ onChange: nextCitation => {
102
+ setAttributes({
103
+ citation: nextCitation
104
+ });
105
+ },
106
+ __unstableMobileNoFocusOnMount: true,
107
+ "aria-label": __('Quote citation'),
108
+ placeholder: // translators: placeholder text used for the
109
+ // citation
110
+ __('Add citation'),
111
+ className: "wp-block-quote__citation",
112
+ __unstableOnSplitAtEnd: () => insertBlocksAfter(createBlock('core/paragraph'))
113
+ })));
114
+ }
115
+ //# sourceMappingURL=edit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/quote/v2/edit.js"],"names":["classNames","__","AlignmentControl","BlockControls","RichText","useBlockProps","useInnerBlocksProps","store","blockEditorStore","BlockQuotation","useDispatch","useSelect","useRegistry","createBlock","Platform","useEffect","deprecated","migrateToQuoteV2","isWebPlatform","OS","TEMPLATE","useMigrateOnLoad","attributes","clientId","registry","updateBlockAttributes","replaceInnerBlocks","value","newAttributes","newInnerBlocks","since","version","alternative","batch","QuoteEdit","setAttributes","isSelected","insertBlocksAfter","className","citation","align","isAncestorOfSelectedBlock","select","hasSelectedInnerBlock","hasSelection","blockProps","innerBlocksProps","template","templateInsertUpdatesSelection","nextAlign","children","isEmpty","undefined","display","nextCitation"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classNames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tRichText,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { BlockQuotation } from '@wordpress/components';\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport { createBlock } from '@wordpress/blocks';\nimport { Platform, useEffect } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport { migrateToQuoteV2 } from './deprecated';\n\nconst isWebPlatform = Platform.OS === 'web';\nconst TEMPLATE = [ [ 'core/paragraph', {} ] ];\n\n/**\n * At the moment, deprecations don't handle create blocks from attributes\n * (like when using CPT templates). For this reason, this hook is necessary\n * to avoid breaking templates using the old quote block format.\n *\n * @param {Object} attributes Block attributes.\n * @param {string} clientId Block client ID.\n */\nconst useMigrateOnLoad = ( attributes, clientId ) => {\n\tconst registry = useRegistry();\n\tconst { updateBlockAttributes, replaceInnerBlocks } = useDispatch(\n\t\tblockEditorStore\n\t);\n\tuseEffect( () => {\n\t\t// As soon as the block is loaded, migrate it to the new version.\n\n\t\tif ( ! attributes.value ) {\n\t\t\t// No need to migrate if it doesn't have the value attribute.\n\t\t\treturn;\n\t\t}\n\n\t\tconst [ newAttributes, newInnerBlocks ] = migrateToQuoteV2(\n\t\t\tattributes\n\t\t);\n\n\t\tdeprecated( 'Value attribute on the quote block', {\n\t\t\tsince: '6.0',\n\t\t\tversion: '6.5',\n\t\t\talternative: 'inner blocks',\n\t\t} );\n\n\t\tregistry.batch( () => {\n\t\t\tupdateBlockAttributes( clientId, newAttributes );\n\t\t\treplaceInnerBlocks( clientId, newInnerBlocks );\n\t\t} );\n\t}, [ attributes.value ] );\n};\n\nexport default function QuoteEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tinsertBlocksAfter,\n\tclientId,\n\tclassName,\n} ) {\n\tconst { citation, align } = attributes;\n\n\tuseMigrateOnLoad( attributes, clientId );\n\n\tconst isAncestorOfSelectedBlock = useSelect( ( select ) =>\n\t\tselect( blockEditorStore ).hasSelectedInnerBlock( clientId )\n\t);\n\tconst hasSelection = isSelected || isAncestorOfSelectedBlock;\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classNames( className, {\n\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t} ),\n\t} );\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t\ttemplateInsertUpdatesSelection: true,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ align }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { align: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<BlockQuotation { ...innerBlocksProps }>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t\t{ ( ! RichText.isEmpty( citation ) || hasSelection ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"citation\"\n\t\t\t\t\t\ttagName={ isWebPlatform ? 'cite' : undefined }\n\t\t\t\t\t\tstyle={ { display: 'block' } }\n\t\t\t\t\t\tvalue={ citation }\n\t\t\t\t\t\tonChange={ ( nextCitation ) => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tcitation: nextCitation,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\t__unstableMobileNoFocusOnMount\n\t\t\t\t\t\taria-label={ __( 'Quote citation' ) }\n\t\t\t\t\t\tplaceholder={\n\t\t\t\t\t\t\t// translators: placeholder text used for the\n\t\t\t\t\t\t\t// citation\n\t\t\t\t\t\t\t__( 'Add citation' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclassName=\"wp-block-quote__citation\"\n\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\tinsertBlocksAfter( createBlock( 'core/paragraph' ) )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockQuotation>\n\t\t</>\n\t);\n}\n"]}