@wordpress/block-library 7.7.0 → 7.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (489) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/audio/index.js +6 -1
  3. package/build/audio/index.js.map +1 -1
  4. package/build/avatar/hooks.js +2 -2
  5. package/build/avatar/hooks.js.map +1 -1
  6. package/build/block/edit.js.map +1 -1
  7. package/build/block/edit.native.js.map +1 -1
  8. package/build/button/deprecated.js.map +1 -1
  9. package/build/button/edit.js.map +1 -1
  10. package/build/button/edit.native.js.map +1 -1
  11. package/build/button/index.js +24 -1
  12. package/build/button/index.js.map +1 -1
  13. package/build/button/save.js.map +1 -1
  14. package/build/buttons/deprecated.js.map +1 -1
  15. package/build/buttons/edit.js.map +1 -1
  16. package/build/buttons/edit.native.js.map +1 -1
  17. package/build/column/deprecated.js.map +1 -1
  18. package/build/column/edit.js.map +1 -1
  19. package/build/column/edit.native.js.map +1 -1
  20. package/build/columns/deprecated.js.map +1 -1
  21. package/build/columns/edit.js +1 -1
  22. package/build/columns/edit.js.map +1 -1
  23. package/build/columns/edit.native.js +1 -1
  24. package/build/columns/edit.native.js.map +1 -1
  25. package/build/columns/index.js.map +1 -1
  26. package/build/columns/utils.js +1 -1
  27. package/build/columns/utils.js.map +1 -1
  28. package/build/comment-author-name/edit.js +4 -2
  29. package/build/comment-author-name/edit.js.map +1 -1
  30. package/build/comment-date/edit.js +1 -1
  31. package/build/comment-date/edit.js.map +1 -1
  32. package/build/comments-title/edit.js +1 -1
  33. package/build/comments-title/edit.js.map +1 -1
  34. package/build/cover/controls.native.js.map +1 -1
  35. package/build/cover/deprecated.js.map +1 -1
  36. package/build/cover/edit/block-controls.js +3 -10
  37. package/build/cover/edit/block-controls.js.map +1 -1
  38. package/build/cover/edit/index.js +21 -28
  39. package/build/cover/edit/index.js.map +1 -1
  40. package/build/cover/edit/inspector-controls.js +34 -6
  41. package/build/cover/edit/inspector-controls.js.map +1 -1
  42. package/build/cover/edit.native.js.map +1 -1
  43. package/build/cover/save.js.map +1 -1
  44. package/build/cover/transforms.js.map +1 -1
  45. package/build/embed/deprecated.js +6 -1
  46. package/build/embed/deprecated.js.map +1 -1
  47. package/build/embed/edit.js.map +1 -1
  48. package/build/embed/edit.native.js.map +1 -1
  49. package/build/embed/embed-controls.native.js.map +1 -1
  50. package/build/embed/index.js +6 -1
  51. package/build/embed/index.js.map +1 -1
  52. package/build/embed/transforms.js +6 -1
  53. package/build/embed/transforms.js.map +1 -1
  54. package/build/embed/util.js +6 -1
  55. package/build/embed/util.js.map +1 -1
  56. package/build/file/edit.js.map +1 -1
  57. package/build/file/edit.native.js.map +1 -1
  58. package/build/file/index.js.map +1 -1
  59. package/build/gallery/edit.js +1 -1
  60. package/build/gallery/edit.js.map +1 -1
  61. package/build/gallery/gallery.native.js.map +1 -1
  62. package/build/gallery/index.js.map +1 -1
  63. package/build/gallery/shared.js +27 -10
  64. package/build/gallery/shared.js.map +1 -1
  65. package/build/gallery/v1/edit.js.map +1 -1
  66. package/build/gallery/v1/gallery-image.js.map +1 -1
  67. package/build/gallery/v1/gallery-image.native.js.map +1 -1
  68. package/build/heading/autogenerate-anchors.js +7 -2
  69. package/build/heading/autogenerate-anchors.js.map +1 -1
  70. package/build/heading/deprecated.js.map +1 -1
  71. package/build/heading/edit.js.map +1 -1
  72. package/build/image/deprecated.js.map +1 -1
  73. package/build/image/edit.native.js.map +1 -1
  74. package/build/image/image.js.map +1 -1
  75. package/build/image/index.js +5 -0
  76. package/build/image/index.js.map +1 -1
  77. package/build/image/transforms.js.map +1 -1
  78. package/build/image/utils.js +2 -1
  79. package/build/image/utils.js.map +1 -1
  80. package/build/index.js +1 -1
  81. package/build/index.js.map +1 -1
  82. package/build/latest-comments/edit.js.map +1 -1
  83. package/build/latest-posts/edit.js +1 -1
  84. package/build/latest-posts/edit.js.map +1 -1
  85. package/build/latest-posts/edit.native.js.map +1 -1
  86. package/build/list/index.js.map +1 -1
  87. package/build/list/v2/edit.js.map +1 -1
  88. package/build/list-item/hooks/use-backspace.js.map +1 -1
  89. package/build/list-item/hooks/use-enter.js.map +1 -1
  90. package/build/list-item/hooks/use-indent-list-item.js.map +1 -1
  91. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
  92. package/build/list-item/hooks/use-space.js.map +1 -1
  93. package/build/media-text/deprecated.js +5 -3
  94. package/build/media-text/deprecated.js.map +1 -1
  95. package/build/media-text/edit.native.js.map +1 -1
  96. package/build/media-text/media-container.js +3 -3
  97. package/build/media-text/media-container.js.map +1 -1
  98. package/build/media-text/media-container.native.js.map +1 -1
  99. package/build/media-text/save.js +3 -1
  100. package/build/media-text/save.js.map +1 -1
  101. package/build/missing/edit.native.js.map +1 -1
  102. package/build/navigation/deprecated.js.map +1 -1
  103. package/build/navigation/edit/index.js.map +1 -1
  104. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  105. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  106. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  107. package/build/navigation/use-navigation-entities.js.map +1 -1
  108. package/build/navigation/use-navigation-menu.js +130 -38
  109. package/build/navigation/use-navigation-menu.js.map +1 -1
  110. package/build/navigation/use-template-part-area-label.js +4 -1
  111. package/build/navigation/use-template-part-area-label.js.map +1 -1
  112. package/build/navigation-link/edit.js +14 -8
  113. package/build/navigation-link/edit.js.map +1 -1
  114. package/build/navigation-submenu/edit.js.map +1 -1
  115. package/build/page-list/convert-to-links-modal.js.map +1 -1
  116. package/build/page-list/edit.js.map +1 -1
  117. package/build/paragraph/deprecated.js +1 -1
  118. package/build/paragraph/deprecated.js.map +1 -1
  119. package/build/pattern/edit.js.map +1 -1
  120. package/build/post-author/edit.js.map +1 -1
  121. package/build/post-content/edit.js.map +1 -1
  122. package/build/post-featured-image/edit.js +10 -24
  123. package/build/post-featured-image/edit.js.map +1 -1
  124. package/build/post-navigation-link/index.js +4 -0
  125. package/build/post-navigation-link/index.js.map +1 -1
  126. package/build/pullquote/deprecated.js.map +1 -1
  127. package/build/query/edit/index.js +5 -1
  128. package/build/query/edit/index.js.map +1 -1
  129. package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
  130. package/build/query/edit/query-toolbar.js +16 -2
  131. package/build/query/edit/query-toolbar.js.map +1 -1
  132. package/build/quote/v2/edit.js.map +1 -1
  133. package/build/search/edit.js.map +1 -1
  134. package/build/search/edit.native.js.map +1 -1
  135. package/build/separator/use-deprecated-opacity.js.map +1 -1
  136. package/build/shortcode/edit.native.js.map +1 -1
  137. package/build/site-logo/edit.js +3 -12
  138. package/build/site-logo/edit.js.map +1 -1
  139. package/build/social-links/deprecated.js.map +1 -1
  140. package/build/social-links/edit.native.js.map +1 -1
  141. package/build/spacer/controls.js.map +1 -1
  142. package/build/table/deprecated.js.map +1 -1
  143. package/build/table/index.js +6 -1
  144. package/build/table/index.js.map +1 -1
  145. package/build/table/state.js.map +1 -1
  146. package/build/table-of-contents/edit.js.map +1 -1
  147. package/build/tag-cloud/edit.js.map +1 -1
  148. package/build/template-part/edit/advanced-controls.js +4 -1
  149. package/build/template-part/edit/advanced-controls.js.map +1 -1
  150. package/build/template-part/edit/index.js.map +1 -1
  151. package/build/template-part/edit/utils/hooks.js +4 -1
  152. package/build/template-part/edit/utils/hooks.js.map +1 -1
  153. package/build/transformationCategories.native.js.map +1 -1
  154. package/build/video/edit-common-settings.js.map +1 -1
  155. package/build/video/edit.native.js +43 -0
  156. package/build/video/edit.native.js.map +1 -1
  157. package/build/video/index.js +6 -1
  158. package/build/video/index.js.map +1 -1
  159. package/build-module/audio/index.js +6 -1
  160. package/build-module/audio/index.js.map +1 -1
  161. package/build-module/avatar/hooks.js +2 -2
  162. package/build-module/avatar/hooks.js.map +1 -1
  163. package/build-module/block/edit.js.map +1 -1
  164. package/build-module/block/edit.native.js.map +1 -1
  165. package/build-module/button/deprecated.js.map +1 -1
  166. package/build-module/button/edit.js.map +1 -1
  167. package/build-module/button/edit.native.js.map +1 -1
  168. package/build-module/button/index.js +24 -1
  169. package/build-module/button/index.js.map +1 -1
  170. package/build-module/button/save.js.map +1 -1
  171. package/build-module/buttons/deprecated.js.map +1 -1
  172. package/build-module/buttons/edit.js.map +1 -1
  173. package/build-module/buttons/edit.native.js.map +1 -1
  174. package/build-module/column/deprecated.js.map +1 -1
  175. package/build-module/column/edit.js.map +1 -1
  176. package/build-module/column/edit.native.js.map +1 -1
  177. package/build-module/columns/deprecated.js.map +1 -1
  178. package/build-module/columns/edit.js +2 -2
  179. package/build-module/columns/edit.js.map +1 -1
  180. package/build-module/columns/edit.native.js +2 -2
  181. package/build-module/columns/edit.native.js.map +1 -1
  182. package/build-module/columns/index.js.map +1 -1
  183. package/build-module/columns/utils.js +2 -2
  184. package/build-module/columns/utils.js.map +1 -1
  185. package/build-module/comment-author-name/edit.js +4 -2
  186. package/build-module/comment-author-name/edit.js.map +1 -1
  187. package/build-module/comment-date/edit.js +1 -1
  188. package/build-module/comment-date/edit.js.map +1 -1
  189. package/build-module/comments-title/edit.js +1 -1
  190. package/build-module/comments-title/edit.js.map +1 -1
  191. package/build-module/cover/controls.native.js.map +1 -1
  192. package/build-module/cover/deprecated.js.map +1 -1
  193. package/build-module/cover/edit/block-controls.js +3 -8
  194. package/build-module/cover/edit/block-controls.js.map +1 -1
  195. package/build-module/cover/edit/index.js +22 -29
  196. package/build-module/cover/edit/index.js.map +1 -1
  197. package/build-module/cover/edit/inspector-controls.js +32 -7
  198. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  199. package/build-module/cover/edit.native.js.map +1 -1
  200. package/build-module/cover/save.js.map +1 -1
  201. package/build-module/cover/transforms.js.map +1 -1
  202. package/build-module/embed/deprecated.js +6 -1
  203. package/build-module/embed/deprecated.js.map +1 -1
  204. package/build-module/embed/edit.js.map +1 -1
  205. package/build-module/embed/edit.native.js.map +1 -1
  206. package/build-module/embed/embed-controls.native.js.map +1 -1
  207. package/build-module/embed/index.js +6 -1
  208. package/build-module/embed/index.js.map +1 -1
  209. package/build-module/embed/transforms.js +6 -1
  210. package/build-module/embed/transforms.js.map +1 -1
  211. package/build-module/embed/util.js +6 -1
  212. package/build-module/embed/util.js.map +1 -1
  213. package/build-module/file/edit.js.map +1 -1
  214. package/build-module/file/edit.native.js.map +1 -1
  215. package/build-module/file/index.js.map +1 -1
  216. package/build-module/gallery/edit.js +2 -2
  217. package/build-module/gallery/edit.js.map +1 -1
  218. package/build-module/gallery/gallery.native.js.map +1 -1
  219. package/build-module/gallery/index.js.map +1 -1
  220. package/build-module/gallery/shared.js +25 -8
  221. package/build-module/gallery/shared.js.map +1 -1
  222. package/build-module/gallery/v1/edit.js.map +1 -1
  223. package/build-module/gallery/v1/gallery-image.js.map +1 -1
  224. package/build-module/gallery/v1/gallery-image.native.js.map +1 -1
  225. package/build-module/heading/autogenerate-anchors.js +5 -2
  226. package/build-module/heading/autogenerate-anchors.js.map +1 -1
  227. package/build-module/heading/deprecated.js.map +1 -1
  228. package/build-module/heading/edit.js.map +1 -1
  229. package/build-module/image/deprecated.js.map +1 -1
  230. package/build-module/image/edit.native.js.map +1 -1
  231. package/build-module/image/image.js.map +1 -1
  232. package/build-module/image/index.js +5 -0
  233. package/build-module/image/index.js.map +1 -1
  234. package/build-module/image/transforms.js.map +1 -1
  235. package/build-module/image/utils.js +2 -2
  236. package/build-module/image/utils.js.map +1 -1
  237. package/build-module/index.js +1 -1
  238. package/build-module/index.js.map +1 -1
  239. package/build-module/latest-comments/edit.js.map +1 -1
  240. package/build-module/latest-posts/edit.js +2 -2
  241. package/build-module/latest-posts/edit.js.map +1 -1
  242. package/build-module/latest-posts/edit.native.js.map +1 -1
  243. package/build-module/list/index.js.map +1 -1
  244. package/build-module/list/v2/edit.js.map +1 -1
  245. package/build-module/list-item/hooks/use-backspace.js.map +1 -1
  246. package/build-module/list-item/hooks/use-enter.js.map +1 -1
  247. package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -1
  248. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
  249. package/build-module/list-item/hooks/use-space.js.map +1 -1
  250. package/build-module/media-text/deprecated.js +3 -1
  251. package/build-module/media-text/deprecated.js.map +1 -1
  252. package/build-module/media-text/edit.native.js.map +1 -1
  253. package/build-module/media-text/media-container.js +3 -1
  254. package/build-module/media-text/media-container.js.map +1 -1
  255. package/build-module/media-text/media-container.native.js.map +1 -1
  256. package/build-module/media-text/save.js +4 -1
  257. package/build-module/media-text/save.js.map +1 -1
  258. package/build-module/missing/edit.native.js.map +1 -1
  259. package/build-module/navigation/deprecated.js.map +1 -1
  260. package/build-module/navigation/edit/index.js.map +1 -1
  261. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  262. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  263. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  264. package/build-module/navigation/use-navigation-entities.js.map +1 -1
  265. package/build-module/navigation/use-navigation-menu.js +130 -38
  266. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  267. package/build-module/navigation/use-template-part-area-label.js +4 -1
  268. package/build-module/navigation/use-template-part-area-label.js.map +1 -1
  269. package/build-module/navigation-link/edit.js +14 -8
  270. package/build-module/navigation-link/edit.js.map +1 -1
  271. package/build-module/navigation-submenu/edit.js.map +1 -1
  272. package/build-module/page-list/convert-to-links-modal.js.map +1 -1
  273. package/build-module/page-list/edit.js.map +1 -1
  274. package/build-module/paragraph/deprecated.js +2 -2
  275. package/build-module/paragraph/deprecated.js.map +1 -1
  276. package/build-module/pattern/edit.js.map +1 -1
  277. package/build-module/post-author/edit.js.map +1 -1
  278. package/build-module/post-content/edit.js.map +1 -1
  279. package/build-module/post-featured-image/edit.js +10 -23
  280. package/build-module/post-featured-image/edit.js.map +1 -1
  281. package/build-module/post-navigation-link/index.js +4 -0
  282. package/build-module/post-navigation-link/index.js.map +1 -1
  283. package/build-module/pullquote/deprecated.js.map +1 -1
  284. package/build-module/query/edit/index.js +5 -1
  285. package/build-module/query/edit/index.js.map +1 -1
  286. package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -1
  287. package/build-module/query/edit/query-toolbar.js +14 -2
  288. package/build-module/query/edit/query-toolbar.js.map +1 -1
  289. package/build-module/quote/v2/edit.js.map +1 -1
  290. package/build-module/search/edit.js.map +1 -1
  291. package/build-module/search/edit.native.js.map +1 -1
  292. package/build-module/separator/use-deprecated-opacity.js.map +1 -1
  293. package/build-module/shortcode/edit.native.js.map +1 -1
  294. package/build-module/site-logo/edit.js +3 -11
  295. package/build-module/site-logo/edit.js.map +1 -1
  296. package/build-module/social-links/deprecated.js.map +1 -1
  297. package/build-module/social-links/edit.native.js.map +1 -1
  298. package/build-module/spacer/controls.js.map +1 -1
  299. package/build-module/table/deprecated.js.map +1 -1
  300. package/build-module/table/index.js +6 -1
  301. package/build-module/table/index.js.map +1 -1
  302. package/build-module/table/state.js.map +1 -1
  303. package/build-module/table-of-contents/edit.js.map +1 -1
  304. package/build-module/tag-cloud/edit.js.map +1 -1
  305. package/build-module/template-part/edit/advanced-controls.js +4 -1
  306. package/build-module/template-part/edit/advanced-controls.js.map +1 -1
  307. package/build-module/template-part/edit/index.js.map +1 -1
  308. package/build-module/template-part/edit/utils/hooks.js +4 -1
  309. package/build-module/template-part/edit/utils/hooks.js.map +1 -1
  310. package/build-module/transformationCategories.native.js.map +1 -1
  311. package/build-module/video/edit-common-settings.js.map +1 -1
  312. package/build-module/video/edit.native.js +42 -1
  313. package/build-module/video/edit.native.js.map +1 -1
  314. package/build-module/video/index.js +6 -1
  315. package/build-module/video/index.js.map +1 -1
  316. package/build-style/audio/style-rtl.css +0 -3
  317. package/build-style/audio/style.css +0 -3
  318. package/build-style/button/style-rtl.css +0 -5
  319. package/build-style/button/style.css +0 -5
  320. package/build-style/common-rtl.css +1 -3
  321. package/build-style/common.css +1 -3
  322. package/build-style/cover/editor-rtl.css +11 -0
  323. package/build-style/cover/editor.css +11 -0
  324. package/build-style/cover/style-rtl.css +1 -2
  325. package/build-style/cover/style.css +1 -2
  326. package/build-style/editor-rtl.css +11 -39
  327. package/build-style/editor.css +11 -39
  328. package/build-style/embed/style-rtl.css +0 -1
  329. package/build-style/embed/style.css +0 -1
  330. package/build-style/file/style-rtl.css +9 -7
  331. package/build-style/file/style.css +9 -7
  332. package/build-style/gallery/style-rtl.css +2 -4
  333. package/build-style/gallery/style.css +2 -4
  334. package/build-style/image/style-rtl.css +0 -3
  335. package/build-style/image/style.css +0 -3
  336. package/build-style/post-featured-image/editor-rtl.css +0 -27
  337. package/build-style/post-featured-image/editor.css +0 -27
  338. package/build-style/search/style-rtl.css +4 -4
  339. package/build-style/search/style.css +4 -4
  340. package/build-style/site-logo/editor-rtl.css +0 -12
  341. package/build-style/site-logo/editor.css +0 -12
  342. package/build-style/style-rtl.css +18 -38
  343. package/build-style/style.css +18 -38
  344. package/build-style/table/style-rtl.css +0 -1
  345. package/build-style/table/style.css +0 -1
  346. package/build-style/video/style-rtl.css +1 -5
  347. package/build-style/video/style.css +1 -5
  348. package/package.json +30 -29
  349. package/src/audio/block.json +6 -1
  350. package/src/audio/index.js +1 -2
  351. package/src/audio/style.scss +0 -2
  352. package/src/avatar/hooks.js +9 -6
  353. package/src/block/edit.js +4 -6
  354. package/src/block/edit.native.js +12 -16
  355. package/src/block/test/edit.native.js +5 -8
  356. package/src/button/block.json +24 -1
  357. package/src/button/deprecated.js +10 -46
  358. package/src/button/edit.js +4 -10
  359. package/src/button/edit.native.js +2 -3
  360. package/src/button/save.js +2 -10
  361. package/src/button/style.scss +0 -5
  362. package/src/buttons/deprecated.js +4 -6
  363. package/src/buttons/edit.js +3 -3
  364. package/src/buttons/edit.native.js +7 -11
  365. package/src/column/deprecated.js +2 -1
  366. package/src/column/edit.js +2 -3
  367. package/src/column/edit.native.js +2 -2
  368. package/src/columns/deprecated.js +4 -2
  369. package/src/columns/edit.js +6 -7
  370. package/src/columns/edit.native.js +12 -16
  371. package/src/columns/index.js +1 -2
  372. package/src/columns/utils.js +5 -3
  373. package/src/comment-author-name/edit.js +2 -2
  374. package/src/comment-date/edit.js +1 -1
  375. package/src/comments-title/edit.js +1 -1
  376. package/src/comments-title/index.php +1 -1
  377. package/src/cover/controls.native.js +2 -4
  378. package/src/cover/deprecated.js +10 -15
  379. package/src/cover/edit/block-controls.js +11 -20
  380. package/src/cover/edit/index.js +58 -55
  381. package/src/cover/edit/inspector-controls.js +38 -7
  382. package/src/cover/edit.native.js +8 -13
  383. package/src/cover/editor.scss +13 -0
  384. package/src/cover/save.js +2 -3
  385. package/src/cover/test/edit.native.js +4 -7
  386. package/src/cover/transforms.js +2 -7
  387. package/src/embed/block.json +6 -1
  388. package/src/embed/edit.js +38 -40
  389. package/src/embed/edit.native.js +46 -49
  390. package/src/embed/embed-controls.native.js +2 -3
  391. package/src/embed/style.scss +0 -1
  392. package/src/embed/test/index.native.js +24 -50
  393. package/src/file/edit.js +2 -4
  394. package/src/file/edit.native.js +14 -25
  395. package/src/file/index.js +1 -2
  396. package/src/file/style.scss +15 -14
  397. package/src/gallery/edit.js +8 -6
  398. package/src/gallery/gallery.native.js +2 -4
  399. package/src/gallery/index.js +2 -4
  400. package/src/gallery/shared.js +22 -9
  401. package/src/gallery/test/index.native.js +18 -34
  402. package/src/gallery/v1/edit.js +15 -20
  403. package/src/gallery/v1/gallery-image.js +6 -11
  404. package/src/gallery/v1/gallery-image.native.js +8 -17
  405. package/src/heading/autogenerate-anchors.js +8 -5
  406. package/src/heading/deprecated.js +6 -21
  407. package/src/heading/edit.js +2 -3
  408. package/src/image/block.json +5 -0
  409. package/src/image/deprecated.js +6 -29
  410. package/src/image/edit.native.js +14 -26
  411. package/src/image/image.js +31 -38
  412. package/src/image/style.scss +0 -2
  413. package/src/image/transforms.js +4 -3
  414. package/src/image/utils.js +2 -2
  415. package/src/index.js +1 -1
  416. package/src/latest-comments/edit.js +2 -6
  417. package/src/latest-posts/edit.js +6 -7
  418. package/src/latest-posts/edit.native.js +10 -15
  419. package/src/list/index.js +1 -2
  420. package/src/list/test/migrate.js +1 -2
  421. package/src/list/v2/edit.js +6 -9
  422. package/src/list-item/hooks/use-backspace.js +2 -3
  423. package/src/list-item/hooks/use-enter.js +2 -3
  424. package/src/list-item/hooks/use-indent-list-item.js +2 -3
  425. package/src/list-item/hooks/use-outdent-list-item.js +2 -3
  426. package/src/list-item/hooks/use-space.js +2 -3
  427. package/src/media-text/deprecated.js +6 -3
  428. package/src/media-text/edit.native.js +2 -5
  429. package/src/media-text/media-container.js +1 -1
  430. package/src/media-text/media-container.native.js +6 -9
  431. package/src/media-text/save.js +2 -1
  432. package/src/missing/edit.native.js +2 -3
  433. package/src/missing/test/edit-integration.native.js +2 -3
  434. package/src/missing/test/edit.native.js +6 -9
  435. package/src/navigation/deprecated.js +2 -5
  436. package/src/navigation/edit/index.js +24 -36
  437. package/src/navigation/edit/navigation-menu-delete-control.js +2 -3
  438. package/src/navigation/edit/unsaved-inner-blocks.js +31 -30
  439. package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +2 -3
  440. package/src/navigation/test/use-navigation-menu.js +236 -0
  441. package/src/navigation/use-navigation-entities.js +11 -13
  442. package/src/navigation/use-navigation-menu.js +152 -82
  443. package/src/navigation/use-template-part-area-label.js +8 -7
  444. package/src/navigation-link/edit.js +24 -20
  445. package/src/navigation-link/test/edit.js +2 -4
  446. package/src/navigation-submenu/edit.js +10 -20
  447. package/src/page-list/convert-to-links-modal.js +51 -54
  448. package/src/page-list/edit.js +6 -6
  449. package/src/page-list/test/convert-to-links-modal.js +6 -12
  450. package/src/paragraph/deprecated.js +2 -2
  451. package/src/pattern/edit.js +2 -4
  452. package/src/post-author/edit.js +2 -3
  453. package/src/post-content/edit.js +2 -3
  454. package/src/post-featured-image/edit.js +14 -30
  455. package/src/post-featured-image/editor.scss +0 -29
  456. package/src/post-navigation-link/block.json +4 -0
  457. package/src/pullquote/deprecated.js +2 -1
  458. package/src/query/edit/index.js +10 -10
  459. package/src/query/edit/inspector-controls/parent-control.js +2 -3
  460. package/src/query/edit/query-toolbar.js +25 -5
  461. package/src/quote/v2/edit.js +4 -6
  462. package/src/quote/v2/test/migrate.js +1 -2
  463. package/src/search/edit.js +6 -12
  464. package/src/search/edit.native.js +4 -6
  465. package/src/search/style.scss +2 -1
  466. package/src/separator/use-deprecated-opacity.js +2 -4
  467. package/src/shortcode/edit.native.js +4 -3
  468. package/src/shortcode/test/edit.native.js +2 -5
  469. package/src/site-logo/edit.js +3 -17
  470. package/src/site-logo/editor.scss +0 -14
  471. package/src/social-links/deprecated.js +4 -2
  472. package/src/social-links/edit.native.js +3 -5
  473. package/src/spacer/controls.js +2 -3
  474. package/src/spacer/test/index.native.js +10 -21
  475. package/src/table/block.json +6 -1
  476. package/src/table/deprecated.js +4 -8
  477. package/src/table/state.js +2 -4
  478. package/src/table/style.scss +0 -1
  479. package/src/table-of-contents/edit.js +6 -10
  480. package/src/tag-cloud/edit.js +4 -7
  481. package/src/template-part/edit/advanced-controls.js +4 -4
  482. package/src/template-part/edit/index.js +6 -10
  483. package/src/template-part/edit/utils/hooks.js +8 -7
  484. package/src/transformationCategories.native.js +3 -3
  485. package/src/video/block.json +6 -1
  486. package/src/video/edit-common-settings.js +2 -8
  487. package/src/video/edit.native.js +38 -16
  488. package/src/video/index.js +1 -2
  489. package/src/video/style.scss +0 -2
@@ -9,27 +9,20 @@ import { MenuItem, ToggleControl, PanelBody, Placeholder, Button } from '@wordpr
9
9
  import { InspectorControls, BlockControls, MediaPlaceholder, MediaReplaceFlow, useBlockProps, store as blockEditorStore } from '@wordpress/block-editor';
10
10
  import { __, sprintf } from '@wordpress/i18n';
11
11
  import { upload } from '@wordpress/icons';
12
- import { SVG, Path } from '@wordpress/primitives';
13
12
  import { store as noticesStore } from '@wordpress/notices';
14
13
  /**
15
14
  * Internal dependencies
16
15
  */
17
16
 
18
17
  import DimensionControls from './dimension-controls';
19
- const placeholderIllustration = createElement(SVG, {
20
- className: "components-placeholder__illustration",
21
- fill: "none",
22
- xmlns: "http://www.w3.org/2000/svg",
23
- viewBox: "0 0 60 60",
24
- preserveAspectRatio: "none"
25
- }, createElement(Path, {
26
- vectorEffect: "non-scaling-stroke",
27
- d: "M60 60 0 0"
28
- }));
29
18
  const ALLOWED_MEDIA_TYPES = ['image'];
30
- const placeholderChip = createElement("div", {
31
- className: "wp-block-post-featured-image__placeholder"
32
- }, placeholderIllustration);
19
+
20
+ const placeholder = content => {
21
+ return createElement(Placeholder, {
22
+ className: "block-editor-media-placeholder",
23
+ withIllustration: true
24
+ }, content);
25
+ };
33
26
 
34
27
  function getMediaSourceUrlBySizeSlug(media, slug) {
35
28
  var _media$media_details, _media$media_details$, _media$media_details$2;
@@ -98,12 +91,6 @@ function PostFeaturedImageDisplay(_ref) {
98
91
  }
99
92
  });
100
93
 
101
- const placeholder = content => {
102
- return createElement(Placeholder, {
103
- className: "block-editor-media-placeholder"
104
- }, placeholderIllustration, content);
105
- };
106
-
107
94
  const onSelectImage = value => {
108
95
  if (value !== null && value !== void 0 && value.id) {
109
96
  setFeaturedImage(value.id);
@@ -138,7 +125,7 @@ function PostFeaturedImageDisplay(_ref) {
138
125
  let image;
139
126
 
140
127
  if (!featuredImage && isDescendentOfQueryLoop) {
141
- return createElement(Fragment, null, controls, createElement("div", blockProps, placeholderChip));
128
+ return createElement(Fragment, null, controls, createElement("div", blockProps, placeholder()));
142
129
  }
143
130
 
144
131
  const label = __('Add a featured image');
@@ -168,7 +155,7 @@ function PostFeaturedImageDisplay(_ref) {
168
155
  });
169
156
  } else {
170
157
  // We have a Featured image so show a Placeholder if is loading.
171
- image = !media ? placeholderChip : createElement("img", {
158
+ image = !media ? placeholder() : createElement("img", {
172
159
  src: mediaUrl,
173
160
  alt: media.alt_text ? sprintf( // translators: %s: The image's alt text.
174
161
  __('Featured image: %s'), media.alt_text) : __('Featured image'),
@@ -199,7 +186,7 @@ export default function PostFeaturedImageEdit(props) {
199
186
  const blockProps = useBlockProps();
200
187
 
201
188
  if (!((_props$context = props.context) !== null && _props$context !== void 0 && _props$context.postId)) {
202
- return createElement("div", blockProps, placeholderChip);
189
+ return createElement("div", blockProps, placeholder());
203
190
  }
204
191
 
205
192
  return createElement(PostFeaturedImageDisplay, props);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/post-featured-image/edit.js"],"names":["useEntityProp","store","coreStore","useSelect","useDispatch","MenuItem","ToggleControl","PanelBody","Placeholder","Button","InspectorControls","BlockControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","blockEditorStore","__","sprintf","upload","SVG","Path","noticesStore","DimensionControls","placeholderIllustration","ALLOWED_MEDIA_TYPES","placeholderChip","getMediaSourceUrlBySizeSlug","media","slug","media_details","sizes","source_url","PostFeaturedImageDisplay","clientId","attributes","setAttributes","context","postId","postType","postTypeSlug","queryId","isDescendentOfQueryLoop","Number","isFinite","isLink","height","width","scale","sizeSlug","featuredImage","setFeaturedImage","select","getMedia","getPostType","mediaUrl","imageSizes","getSettings","imageSizeOptions","filter","map","name","value","label","blockProps","style","placeholder","content","onSelectImage","id","createErrorNotice","onUploadError","message","type","controls","labels","singular_name","toLowerCase","image","open","alt_text","objectFit","PostFeaturedImageEdit","props"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tMenuItem,\n\tToggleControl,\n\tPanelBody,\n\tPlaceholder,\n\tButton,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { upload } from '@wordpress/icons';\nimport { SVG, Path } from '@wordpress/primitives';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport DimensionControls from './dimension-controls';\n\nconst placeholderIllustration = (\n\t<SVG\n\t\tclassName=\"components-placeholder__illustration\"\n\t\tfill=\"none\"\n\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\tviewBox=\"0 0 60 60\"\n\t\tpreserveAspectRatio=\"none\"\n\t>\n\t\t<Path vectorEffect=\"non-scaling-stroke\" d=\"M60 60 0 0\" />\n\t</SVG>\n);\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\nconst placeholderChip = (\n\t<div className=\"wp-block-post-featured-image__placeholder\">\n\t\t{ placeholderIllustration }\n\t</div>\n);\n\nfunction getMediaSourceUrlBySizeSlug( media, slug ) {\n\treturn (\n\t\tmedia?.media_details?.sizes?.[ slug ]?.source_url || media?.source_url\n\t);\n}\n\nfunction PostFeaturedImageDisplay( {\n\tclientId,\n\tattributes,\n\tsetAttributes,\n\tcontext: { postId, postType: postTypeSlug, queryId },\n} ) {\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\tconst { isLink, height, width, scale, sizeSlug } = attributes;\n\tconst [ featuredImage, setFeaturedImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\tconst { media, postType } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getMedia, getPostType } = select( coreStore );\n\t\t\treturn {\n\t\t\t\tmedia:\n\t\t\t\t\tfeaturedImage &&\n\t\t\t\t\tgetMedia( featuredImage, {\n\t\t\t\t\t\tcontext: 'view',\n\t\t\t\t\t} ),\n\t\t\t\tpostType: postTypeSlug && getPostType( postTypeSlug ),\n\t\t\t};\n\t\t},\n\t\t[ featuredImage, postTypeSlug ]\n\t);\n\tconst mediaUrl = getMediaSourceUrlBySizeSlug( media, sizeSlug );\n\n\tconst imageSizes = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings().imageSizes,\n\t\t[]\n\t);\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => {\n\t\t\treturn media?.media_details?.sizes?.[ slug ]?.source_url;\n\t\t} )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\n\tconst blockProps = useBlockProps( {\n\t\tstyle: { width, height },\n\t} );\n\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder className=\"block-editor-media-placeholder\">\n\t\t\t\t{ placeholderIllustration }\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst onSelectImage = ( value ) => {\n\t\tif ( value?.id ) {\n\t\t\tsetFeaturedImage( value.id );\n\t\t}\n\t};\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t};\n\n\tconst controls = (\n\t\t<>\n\t\t\t<DimensionControls\n\t\t\t\tclientId={ clientId }\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t/>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Link settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\tpostType?.labels.singular_name\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"post\".\n\t\t\t\t\t\t\t\t\t\t__( 'Link to %s' ),\n\t\t\t\t\t\t\t\t\t\tpostType.labels.singular_name.toLowerCase()\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Link to post' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\tlet image;\n\tif ( ! featuredImage && isDescendentOfQueryLoop ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<div { ...blockProps }>{ placeholderChip }</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst label = __( 'Add a featured image' );\n\n\tif ( ! featuredImage ) {\n\t\timage = (\n\t\t\t<MediaPlaceholder\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\ttooltipPosition=\"top center\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t} else {\n\t\t// We have a Featured image so show a Placeholder if is loading.\n\t\timage = ! media ? (\n\t\t\tplaceholderChip\n\t\t) : (\n\t\t\t<img\n\t\t\t\tsrc={ mediaUrl }\n\t\t\t\talt={\n\t\t\t\t\tmedia.alt_text\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t// translators: %s: The image's alt text.\n\t\t\t\t\t\t\t\t__( 'Featured image: %s' ),\n\t\t\t\t\t\t\t\tmedia.alt_text\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'Featured image' )\n\t\t\t\t}\n\t\t\t\tstyle={ { height, objectFit: height && scale } }\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ controls }\n\t\t\t{ !! media && ! isDescendentOfQueryLoop && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ featuredImage }\n\t\t\t\t\t\tmediaURL={ mediaUrl }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t>\n\t\t\t\t\t\t<MenuItem onClick={ () => setFeaturedImage( 0 ) }>\n\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t</MediaReplaceFlow>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<figure { ...blockProps }>{ image }</figure>\n\t\t</>\n\t);\n}\n\nexport default function PostFeaturedImageEdit( props ) {\n\tconst blockProps = useBlockProps();\n\tif ( ! props.context?.postId ) {\n\t\treturn <div { ...blockProps }>{ placeholderChip }</div>;\n\t}\n\treturn <PostFeaturedImageDisplay { ...props } />;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/post-featured-image/edit.js"],"names":["useEntityProp","store","coreStore","useSelect","useDispatch","MenuItem","ToggleControl","PanelBody","Placeholder","Button","InspectorControls","BlockControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","blockEditorStore","__","sprintf","upload","noticesStore","DimensionControls","ALLOWED_MEDIA_TYPES","placeholder","content","getMediaSourceUrlBySizeSlug","media","slug","media_details","sizes","source_url","PostFeaturedImageDisplay","clientId","attributes","setAttributes","context","postId","postType","postTypeSlug","queryId","isDescendentOfQueryLoop","Number","isFinite","isLink","height","width","scale","sizeSlug","featuredImage","setFeaturedImage","select","getMedia","getPostType","mediaUrl","imageSizes","getSettings","imageSizeOptions","filter","map","name","value","label","blockProps","style","onSelectImage","id","createErrorNotice","onUploadError","message","type","controls","labels","singular_name","toLowerCase","image","open","alt_text","objectFit","PostFeaturedImageEdit","props"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tMenuItem,\n\tToggleControl,\n\tPanelBody,\n\tPlaceholder,\n\tButton,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport DimensionControls from './dimension-controls';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nconst placeholder = ( content ) => {\n\treturn (\n\t\t<Placeholder\n\t\t\tclassName=\"block-editor-media-placeholder\"\n\t\t\twithIllustration={ true }\n\t\t>\n\t\t\t{ content }\n\t\t</Placeholder>\n\t);\n};\n\nfunction getMediaSourceUrlBySizeSlug( media, slug ) {\n\treturn (\n\t\tmedia?.media_details?.sizes?.[ slug ]?.source_url || media?.source_url\n\t);\n}\n\nfunction PostFeaturedImageDisplay( {\n\tclientId,\n\tattributes,\n\tsetAttributes,\n\tcontext: { postId, postType: postTypeSlug, queryId },\n} ) {\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\tconst { isLink, height, width, scale, sizeSlug } = attributes;\n\tconst [ featuredImage, setFeaturedImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\tconst { media, postType } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getMedia, getPostType } = select( coreStore );\n\t\t\treturn {\n\t\t\t\tmedia:\n\t\t\t\t\tfeaturedImage &&\n\t\t\t\t\tgetMedia( featuredImage, {\n\t\t\t\t\t\tcontext: 'view',\n\t\t\t\t\t} ),\n\t\t\t\tpostType: postTypeSlug && getPostType( postTypeSlug ),\n\t\t\t};\n\t\t},\n\t\t[ featuredImage, postTypeSlug ]\n\t);\n\tconst mediaUrl = getMediaSourceUrlBySizeSlug( media, sizeSlug );\n\n\tconst imageSizes = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings().imageSizes,\n\t\t[]\n\t);\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => {\n\t\t\treturn media?.media_details?.sizes?.[ slug ]?.source_url;\n\t\t} )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\n\tconst blockProps = useBlockProps( {\n\t\tstyle: { width, height },\n\t} );\n\n\tconst onSelectImage = ( value ) => {\n\t\tif ( value?.id ) {\n\t\t\tsetFeaturedImage( value.id );\n\t\t}\n\t};\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t};\n\n\tconst controls = (\n\t\t<>\n\t\t\t<DimensionControls\n\t\t\t\tclientId={ clientId }\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t/>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Link settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\tpostType?.labels.singular_name\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"post\".\n\t\t\t\t\t\t\t\t\t\t__( 'Link to %s' ),\n\t\t\t\t\t\t\t\t\t\tpostType.labels.singular_name.toLowerCase()\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Link to post' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\tlet image;\n\tif ( ! featuredImage && isDescendentOfQueryLoop ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<div { ...blockProps }>{ placeholder() }</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst label = __( 'Add a featured image' );\n\n\tif ( ! featuredImage ) {\n\t\timage = (\n\t\t\t<MediaPlaceholder\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\ttooltipPosition=\"top center\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t} else {\n\t\t// We have a Featured image so show a Placeholder if is loading.\n\t\timage = ! media ? (\n\t\t\tplaceholder()\n\t\t) : (\n\t\t\t<img\n\t\t\t\tsrc={ mediaUrl }\n\t\t\t\talt={\n\t\t\t\t\tmedia.alt_text\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t// translators: %s: The image's alt text.\n\t\t\t\t\t\t\t\t__( 'Featured image: %s' ),\n\t\t\t\t\t\t\t\tmedia.alt_text\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'Featured image' )\n\t\t\t\t}\n\t\t\t\tstyle={ { height, objectFit: height && scale } }\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ controls }\n\t\t\t{ !! media && ! isDescendentOfQueryLoop && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ featuredImage }\n\t\t\t\t\t\tmediaURL={ mediaUrl }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t>\n\t\t\t\t\t\t<MenuItem onClick={ () => setFeaturedImage( 0 ) }>\n\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t</MediaReplaceFlow>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<figure { ...blockProps }>{ image }</figure>\n\t\t</>\n\t);\n}\n\nexport default function PostFeaturedImageEdit( props ) {\n\tconst blockProps = useBlockProps();\n\tif ( ! props.context?.postId ) {\n\t\treturn <div { ...blockProps }>{ placeholder() }</div>;\n\t}\n\treturn <PostFeaturedImageDisplay { ...props } />;\n}\n"]}
@@ -32,9 +32,13 @@ const metadata = {
32
32
  supports: {
33
33
  reusable: false,
34
34
  html: false,
35
+ color: {
36
+ link: true
37
+ },
35
38
  typography: {
36
39
  fontSize: true,
37
40
  lineHeight: true,
41
+ __experimentalFontFamily: true,
38
42
  __experimentalFontStyle: true,
39
43
  __experimentalFontWeight: true,
40
44
  __experimentalLetterSpacing: true,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/post-navigation-link/index.js"],"names":["edit","variations","name","metadata","settings"],"mappings":"AAAA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOA,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;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 * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\nimport variations from './variations';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tvariations,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/post-navigation-link/index.js"],"names":["edit","variations","name","metadata","settings"],"mappings":"AAAA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOA,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;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 * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\nimport variations from './variations';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tvariations,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/pullquote/deprecated.js"],"names":["classnames","get","includes","getColorClassName","getColorObjectByAttributeValues","RichText","store","blockEditorStore","useBlockProps","select","SOLID_COLOR_CLASS","blockAttributes","value","type","source","selector","multiline","citation","default","mainColor","customMainColor","textColor","customTextColor","parseBorderColor","styleString","matches","match","deprecated","attributes","save","className","isSolidColorStyle","figureClasses","figureStyles","backgroundClass","backgroundColor","undefined","borderColor","blockquoteTextColorClass","blockquoteClasses","blockquoteStyles","color","style","isEmpty","migrate","border","background","text","textAlign","figureStyle","attribute","figureClass","colors","getSettings","colorObject","blockquoteStyle","align"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { get, includes } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tgetColorClassName,\n\tgetColorObjectByAttributeValues,\n\tRichText,\n\tstore as blockEditorStore,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { select } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { SOLID_COLOR_CLASS } from './shared';\n\nconst blockAttributes = {\n\tvalue: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'blockquote',\n\t\tmultiline: 'p',\n\t},\n\tcitation: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'cite',\n\t\tdefault: '',\n\t},\n\tmainColor: {\n\t\ttype: 'string',\n\t},\n\tcustomMainColor: {\n\t\ttype: 'string',\n\t},\n\ttextColor: {\n\t\ttype: 'string',\n\t},\n\tcustomTextColor: {\n\t\ttype: 'string',\n\t},\n};\n\nfunction parseBorderColor( styleString ) {\n\tif ( ! styleString ) {\n\t\treturn;\n\t}\n\tconst matches = styleString.match( /border-color:([^;]+)[;]?/ );\n\tif ( matches && matches[ 1 ] ) {\n\t\treturn matches[ 1 ];\n\t}\n}\n\n// TODO: this is ripe for a bit of a clean up according to the example in https://developer.wordpress.org/block-editor/reference-guides/block-api/block-deprecation/#example\nconst deprecated = [\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\tmainColor,\n\t\t\t\tcustomMainColor,\n\t\t\t\tcustomTextColor,\n\t\t\t\ttextColor,\n\t\t\t\tvalue,\n\t\t\t\tcitation,\n\t\t\t\tclassName,\n\t\t\t} = attributes;\n\n\t\t\tconst isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );\n\n\t\t\tlet figureClasses, figureStyles;\n\n\t\t\t// Is solid color style\n\t\t\tif ( isSolidColorStyle ) {\n\t\t\t\tconst backgroundClass = getColorClassName(\n\t\t\t\t\t'background-color',\n\t\t\t\t\tmainColor\n\t\t\t\t);\n\n\t\t\t\tfigureClasses = classnames( {\n\t\t\t\t\t'has-background': backgroundClass || customMainColor,\n\t\t\t\t\t[ backgroundClass ]: backgroundClass,\n\t\t\t\t} );\n\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tbackgroundColor: backgroundClass\n\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t: customMainColor,\n\t\t\t\t};\n\t\t\t\t// Is normal style and a custom color is being used ( we can set a style directly with its value)\n\t\t\t} else if ( customMainColor ) {\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tborderColor: customMainColor,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconst blockquoteTextColorClass = getColorClassName(\n\t\t\t\t'color',\n\t\t\t\ttextColor\n\t\t\t);\n\t\t\tconst blockquoteClasses = classnames( {\n\t\t\t\t'has-text-color': textColor || customTextColor,\n\t\t\t\t[ blockquoteTextColorClass ]: blockquoteTextColorClass,\n\t\t\t} );\n\n\t\t\tconst blockquoteStyles = blockquoteTextColorClass\n\t\t\t\t? undefined\n\t\t\t\t: { color: customTextColor };\n\n\t\t\treturn (\n\t\t\t\t<figure\n\t\t\t\t\t{ ...useBlockProps.save( {\n\t\t\t\t\t\tclassName: figureClasses,\n\t\t\t\t\t\tstyle: figureStyles,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<blockquote\n\t\t\t\t\t\tclassName={ blockquoteClasses }\n\t\t\t\t\t\tstyle={ blockquoteStyles }\n\t\t\t\t\t>\n\t\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\ttagName=\"cite\"\n\t\t\t\t\t\t\t\tvalue={ citation }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</blockquote>\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t\tmigrate( {\n\t\t\tclassName,\n\t\t\tmainColor,\n\t\t\tcustomMainColor,\n\t\t\tcustomTextColor,\n\t\t\t...attributes\n\t\t} ) {\n\t\t\tconst isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );\n\t\t\tlet style;\n\n\t\t\tif ( customMainColor ) {\n\t\t\t\tif ( ! isSolidColorStyle ) {\n\t\t\t\t\t// Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.\n\t\t\t\t\tstyle = {\n\t\t\t\t\t\tborder: {\n\t\t\t\t\t\t\tcolor: customMainColor,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t} else {\n\t\t\t\t\t// Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.\n\t\t\t\t\tstyle = {\n\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\tbackground: customMainColor,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.\n\t\t\tif ( customTextColor && style ) {\n\t\t\t\tstyle.color = {\n\t\t\t\t\t...style.color,\n\t\t\t\t\ttext: customTextColor,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tclassName,\n\t\t\t\tbackgroundColor: isSolidColorStyle ? mainColor : undefined,\n\t\t\t\tborderColor: isSolidColorStyle ? undefined : mainColor,\n\t\t\t\ttextAlign: isSolidColorStyle ? 'left' : undefined,\n\t\t\t\tstyle,\n\t\t\t\t...attributes,\n\t\t\t};\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\t// figureStyle is an attribute that never existed.\n\t\t\t// We are using it as a way to access the styles previously applied to the figure.\n\t\t\tfigureStyle: {\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'figure',\n\t\t\t\tattribute: 'style',\n\t\t\t},\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\tmainColor,\n\t\t\t\tcustomMainColor,\n\t\t\t\ttextColor,\n\t\t\t\tcustomTextColor,\n\t\t\t\tvalue,\n\t\t\t\tcitation,\n\t\t\t\tclassName,\n\t\t\t\tfigureStyle,\n\t\t\t} = attributes;\n\n\t\t\tconst isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );\n\n\t\t\tlet figureClasses, figureStyles;\n\n\t\t\t// Is solid color style\n\t\t\tif ( isSolidColorStyle ) {\n\t\t\t\tconst backgroundClass = getColorClassName(\n\t\t\t\t\t'background-color',\n\t\t\t\t\tmainColor\n\t\t\t\t);\n\n\t\t\t\tfigureClasses = classnames( {\n\t\t\t\t\t'has-background': backgroundClass || customMainColor,\n\t\t\t\t\t[ backgroundClass ]: backgroundClass,\n\t\t\t\t} );\n\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tbackgroundColor: backgroundClass\n\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t: customMainColor,\n\t\t\t\t};\n\t\t\t\t// Is normal style and a custom color is being used ( we can set a style directly with its value)\n\t\t\t} else if ( customMainColor ) {\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tborderColor: customMainColor,\n\t\t\t\t};\n\t\t\t\t// If normal style and a named color are being used, we need to retrieve the color value to set the style,\n\t\t\t\t// as there is no expectation that themes create classes that set border colors.\n\t\t\t} else if ( mainColor ) {\n\t\t\t\t// Previously here we queried the color settings to know the color value\n\t\t\t\t// of a named color. This made the save function impure and the block was refactored,\n\t\t\t\t// because meanwhile a change in the editor made it impossible to query color settings in the save function.\n\t\t\t\t// Here instead of querying the color settings to know the color value, we retrieve the value\n\t\t\t\t// directly from the style previously serialized.\n\t\t\t\tconst borderColor = parseBorderColor( figureStyle );\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tborderColor,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconst blockquoteTextColorClass = getColorClassName(\n\t\t\t\t'color',\n\t\t\t\ttextColor\n\t\t\t);\n\t\t\tconst blockquoteClasses =\n\t\t\t\t( textColor || customTextColor ) &&\n\t\t\t\tclassnames( 'has-text-color', {\n\t\t\t\t\t[ blockquoteTextColorClass ]: blockquoteTextColorClass,\n\t\t\t\t} );\n\n\t\t\tconst blockquoteStyles = blockquoteTextColorClass\n\t\t\t\t? undefined\n\t\t\t\t: { color: customTextColor };\n\n\t\t\treturn (\n\t\t\t\t<figure className={ figureClasses } style={ figureStyles }>\n\t\t\t\t\t<blockquote\n\t\t\t\t\t\tclassName={ blockquoteClasses }\n\t\t\t\t\t\tstyle={ blockquoteStyles }\n\t\t\t\t\t>\n\t\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\ttagName=\"cite\"\n\t\t\t\t\t\t\t\tvalue={ citation }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</blockquote>\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t\tmigrate( {\n\t\t\tclassName,\n\t\t\tfigureStyle,\n\t\t\tmainColor,\n\t\t\tcustomMainColor,\n\t\t\tcustomTextColor,\n\t\t\t...attributes\n\t\t} ) {\n\t\t\tconst isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );\n\t\t\tlet style;\n\n\t\t\tif ( customMainColor ) {\n\t\t\t\tif ( ! isSolidColorStyle ) {\n\t\t\t\t\t// Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.\n\t\t\t\t\tstyle = {\n\t\t\t\t\t\tborder: {\n\t\t\t\t\t\t\tcolor: customMainColor,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t} else {\n\t\t\t\t\t// Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.\n\t\t\t\t\tstyle = {\n\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\tbackground: customMainColor,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.\n\t\t\tif ( customTextColor && style ) {\n\t\t\t\tstyle.color = {\n\t\t\t\t\t...style.color,\n\t\t\t\t\ttext: customTextColor,\n\t\t\t\t};\n\t\t\t}\n\t\t\t// If is the default style, and a main color is set,\n\t\t\t// migrate the main color value into a custom border color.\n\t\t\t// The custom border color value is retrieved by parsing the figure styles.\n\t\t\tif ( ! isSolidColorStyle && mainColor && figureStyle ) {\n\t\t\t\tconst borderColor = parseBorderColor( figureStyle );\n\t\t\t\tif ( borderColor ) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t// Block supports: Set style.border.color if a deprecated block has `mainColor`, inline border CSS and is not a solid color style.\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\tborder: {\n\t\t\t\t\t\t\t\tcolor: borderColor,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tclassName,\n\t\t\t\tbackgroundColor: isSolidColorStyle ? mainColor : undefined,\n\t\t\t\tborderColor: isSolidColorStyle ? undefined : mainColor,\n\t\t\t\ttextAlign: isSolidColorStyle ? 'left' : undefined,\n\t\t\t\tstyle,\n\t\t\t\t...attributes,\n\t\t\t};\n\t\t},\n\t},\n\t{\n\t\tattributes: blockAttributes,\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\tmainColor,\n\t\t\t\tcustomMainColor,\n\t\t\t\ttextColor,\n\t\t\t\tcustomTextColor,\n\t\t\t\tvalue,\n\t\t\t\tcitation,\n\t\t\t\tclassName,\n\t\t\t} = attributes;\n\t\t\tconst isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );\n\n\t\t\tlet figureClass, figureStyles;\n\t\t\t// Is solid color style\n\t\t\tif ( isSolidColorStyle ) {\n\t\t\t\tfigureClass = getColorClassName(\n\t\t\t\t\t'background-color',\n\t\t\t\t\tmainColor\n\t\t\t\t);\n\t\t\t\tif ( ! figureClass ) {\n\t\t\t\t\tfigureStyles = {\n\t\t\t\t\t\tbackgroundColor: customMainColor,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\t// Is normal style and a custom color is being used ( we can set a style directly with its value)\n\t\t\t} else if ( customMainColor ) {\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tborderColor: customMainColor,\n\t\t\t\t};\n\t\t\t\t// Is normal style and a named color is being used, we need to retrieve the color value to set the style,\n\t\t\t\t// as there is no expectation that themes create classes that set border colors.\n\t\t\t} else if ( mainColor ) {\n\t\t\t\tconst colors = get(\n\t\t\t\t\tselect( blockEditorStore ).getSettings(),\n\t\t\t\t\t[ 'colors' ],\n\t\t\t\t\t[]\n\t\t\t\t);\n\t\t\t\tconst colorObject = getColorObjectByAttributeValues(\n\t\t\t\t\tcolors,\n\t\t\t\t\tmainColor\n\t\t\t\t);\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tborderColor: colorObject.color,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconst blockquoteTextColorClass = getColorClassName(\n\t\t\t\t'color',\n\t\t\t\ttextColor\n\t\t\t);\n\t\t\tconst blockquoteClasses =\n\t\t\t\ttextColor || customTextColor\n\t\t\t\t\t? classnames( 'has-text-color', {\n\t\t\t\t\t\t\t[ blockquoteTextColorClass ]: blockquoteTextColorClass,\n\t\t\t\t\t } )\n\t\t\t\t\t: undefined;\n\t\t\tconst blockquoteStyle = blockquoteTextColorClass\n\t\t\t\t? undefined\n\t\t\t\t: { color: customTextColor };\n\t\t\treturn (\n\t\t\t\t<figure className={ figureClass } style={ figureStyles }>\n\t\t\t\t\t<blockquote\n\t\t\t\t\t\tclassName={ blockquoteClasses }\n\t\t\t\t\t\tstyle={ blockquoteStyle }\n\t\t\t\t\t>\n\t\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\ttagName=\"cite\"\n\t\t\t\t\t\t\t\tvalue={ citation }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</blockquote>\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t\tmigrate( {\n\t\t\tclassName,\n\t\t\tmainColor,\n\t\t\tcustomMainColor,\n\t\t\tcustomTextColor,\n\t\t\t...attributes\n\t\t} ) {\n\t\t\tconst isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );\n\t\t\tlet style = {};\n\n\t\t\tif ( customMainColor ) {\n\t\t\t\tif ( ! isSolidColorStyle ) {\n\t\t\t\t\t// Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.\n\t\t\t\t\tstyle = {\n\t\t\t\t\t\tborder: {\n\t\t\t\t\t\t\tcolor: customMainColor,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t} else {\n\t\t\t\t\t// Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.\n\t\t\t\t\tstyle = {\n\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\tbackground: customMainColor,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.\n\t\t\tif ( customTextColor && style ) {\n\t\t\t\tstyle.color = {\n\t\t\t\t\t...style.color,\n\t\t\t\t\ttext: customTextColor,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tclassName,\n\t\t\t\tbackgroundColor: isSolidColorStyle ? mainColor : undefined,\n\t\t\t\tborderColor: isSolidColorStyle ? undefined : mainColor,\n\t\t\t\ttextAlign: isSolidColorStyle ? 'left' : undefined,\n\t\t\t\tstyle,\n\t\t\t\t...attributes,\n\t\t\t};\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst { value, citation } = attributes;\n\t\t\treturn (\n\t\t\t\t<blockquote>\n\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t\t\t) }\n\t\t\t\t</blockquote>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tcitation: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'html',\n\t\t\t\tselector: 'footer',\n\t\t\t},\n\t\t\talign: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t},\n\n\t\tsave( { attributes } ) {\n\t\t\tconst { value, citation, align } = attributes;\n\n\t\t\treturn (\n\t\t\t\t<blockquote className={ `align${ align }` }>\n\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t<RichText.Content tagName=\"footer\" value={ citation } />\n\t\t\t\t\t) }\n\t\t\t\t</blockquote>\n\t\t\t);\n\t\t},\n\t},\n];\n\nexport default deprecated;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/pullquote/deprecated.js"],"names":["classnames","get","includes","getColorClassName","getColorObjectByAttributeValues","RichText","store","blockEditorStore","useBlockProps","select","SOLID_COLOR_CLASS","blockAttributes","value","type","source","selector","multiline","citation","default","mainColor","customMainColor","textColor","customTextColor","parseBorderColor","styleString","matches","match","deprecated","attributes","save","className","isSolidColorStyle","figureClasses","figureStyles","backgroundClass","backgroundColor","undefined","borderColor","blockquoteTextColorClass","blockquoteClasses","blockquoteStyles","color","style","isEmpty","migrate","border","background","text","textAlign","figureStyle","attribute","figureClass","colors","getSettings","colorObject","blockquoteStyle","align"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { get, includes } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tgetColorClassName,\n\tgetColorObjectByAttributeValues,\n\tRichText,\n\tstore as blockEditorStore,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { select } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { SOLID_COLOR_CLASS } from './shared';\n\nconst blockAttributes = {\n\tvalue: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'blockquote',\n\t\tmultiline: 'p',\n\t},\n\tcitation: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'cite',\n\t\tdefault: '',\n\t},\n\tmainColor: {\n\t\ttype: 'string',\n\t},\n\tcustomMainColor: {\n\t\ttype: 'string',\n\t},\n\ttextColor: {\n\t\ttype: 'string',\n\t},\n\tcustomTextColor: {\n\t\ttype: 'string',\n\t},\n};\n\nfunction parseBorderColor( styleString ) {\n\tif ( ! styleString ) {\n\t\treturn;\n\t}\n\tconst matches = styleString.match( /border-color:([^;]+)[;]?/ );\n\tif ( matches && matches[ 1 ] ) {\n\t\treturn matches[ 1 ];\n\t}\n}\n\n// TODO: this is ripe for a bit of a clean up according to the example in https://developer.wordpress.org/block-editor/reference-guides/block-api/block-deprecation/#example\nconst deprecated = [\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\tmainColor,\n\t\t\t\tcustomMainColor,\n\t\t\t\tcustomTextColor,\n\t\t\t\ttextColor,\n\t\t\t\tvalue,\n\t\t\t\tcitation,\n\t\t\t\tclassName,\n\t\t\t} = attributes;\n\n\t\t\tconst isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );\n\n\t\t\tlet figureClasses, figureStyles;\n\n\t\t\t// Is solid color style\n\t\t\tif ( isSolidColorStyle ) {\n\t\t\t\tconst backgroundClass = getColorClassName(\n\t\t\t\t\t'background-color',\n\t\t\t\t\tmainColor\n\t\t\t\t);\n\n\t\t\t\tfigureClasses = classnames( {\n\t\t\t\t\t'has-background': backgroundClass || customMainColor,\n\t\t\t\t\t[ backgroundClass ]: backgroundClass,\n\t\t\t\t} );\n\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tbackgroundColor: backgroundClass\n\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t: customMainColor,\n\t\t\t\t};\n\t\t\t\t// Is normal style and a custom color is being used ( we can set a style directly with its value)\n\t\t\t} else if ( customMainColor ) {\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tborderColor: customMainColor,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconst blockquoteTextColorClass = getColorClassName(\n\t\t\t\t'color',\n\t\t\t\ttextColor\n\t\t\t);\n\t\t\tconst blockquoteClasses = classnames( {\n\t\t\t\t'has-text-color': textColor || customTextColor,\n\t\t\t\t[ blockquoteTextColorClass ]: blockquoteTextColorClass,\n\t\t\t} );\n\n\t\t\tconst blockquoteStyles = blockquoteTextColorClass\n\t\t\t\t? undefined\n\t\t\t\t: { color: customTextColor };\n\n\t\t\treturn (\n\t\t\t\t<figure\n\t\t\t\t\t{ ...useBlockProps.save( {\n\t\t\t\t\t\tclassName: figureClasses,\n\t\t\t\t\t\tstyle: figureStyles,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<blockquote\n\t\t\t\t\t\tclassName={ blockquoteClasses }\n\t\t\t\t\t\tstyle={ blockquoteStyles }\n\t\t\t\t\t>\n\t\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\ttagName=\"cite\"\n\t\t\t\t\t\t\t\tvalue={ citation }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</blockquote>\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t\tmigrate( {\n\t\t\tclassName,\n\t\t\tmainColor,\n\t\t\tcustomMainColor,\n\t\t\tcustomTextColor,\n\t\t\t...attributes\n\t\t} ) {\n\t\t\tconst isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );\n\t\t\tlet style;\n\n\t\t\tif ( customMainColor ) {\n\t\t\t\tif ( ! isSolidColorStyle ) {\n\t\t\t\t\t// Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.\n\t\t\t\t\tstyle = {\n\t\t\t\t\t\tborder: {\n\t\t\t\t\t\t\tcolor: customMainColor,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t} else {\n\t\t\t\t\t// Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.\n\t\t\t\t\tstyle = {\n\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\tbackground: customMainColor,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.\n\t\t\tif ( customTextColor && style ) {\n\t\t\t\tstyle.color = {\n\t\t\t\t\t...style.color,\n\t\t\t\t\ttext: customTextColor,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tclassName,\n\t\t\t\tbackgroundColor: isSolidColorStyle ? mainColor : undefined,\n\t\t\t\tborderColor: isSolidColorStyle ? undefined : mainColor,\n\t\t\t\ttextAlign: isSolidColorStyle ? 'left' : undefined,\n\t\t\t\tstyle,\n\t\t\t\t...attributes,\n\t\t\t};\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\t// figureStyle is an attribute that never existed.\n\t\t\t// We are using it as a way to access the styles previously applied to the figure.\n\t\t\tfigureStyle: {\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'figure',\n\t\t\t\tattribute: 'style',\n\t\t\t},\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\tmainColor,\n\t\t\t\tcustomMainColor,\n\t\t\t\ttextColor,\n\t\t\t\tcustomTextColor,\n\t\t\t\tvalue,\n\t\t\t\tcitation,\n\t\t\t\tclassName,\n\t\t\t\tfigureStyle,\n\t\t\t} = attributes;\n\n\t\t\tconst isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );\n\n\t\t\tlet figureClasses, figureStyles;\n\n\t\t\t// Is solid color style\n\t\t\tif ( isSolidColorStyle ) {\n\t\t\t\tconst backgroundClass = getColorClassName(\n\t\t\t\t\t'background-color',\n\t\t\t\t\tmainColor\n\t\t\t\t);\n\n\t\t\t\tfigureClasses = classnames( {\n\t\t\t\t\t'has-background': backgroundClass || customMainColor,\n\t\t\t\t\t[ backgroundClass ]: backgroundClass,\n\t\t\t\t} );\n\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tbackgroundColor: backgroundClass\n\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t: customMainColor,\n\t\t\t\t};\n\t\t\t\t// Is normal style and a custom color is being used ( we can set a style directly with its value)\n\t\t\t} else if ( customMainColor ) {\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tborderColor: customMainColor,\n\t\t\t\t};\n\t\t\t\t// If normal style and a named color are being used, we need to retrieve the color value to set the style,\n\t\t\t\t// as there is no expectation that themes create classes that set border colors.\n\t\t\t} else if ( mainColor ) {\n\t\t\t\t// Previously here we queried the color settings to know the color value\n\t\t\t\t// of a named color. This made the save function impure and the block was refactored,\n\t\t\t\t// because meanwhile a change in the editor made it impossible to query color settings in the save function.\n\t\t\t\t// Here instead of querying the color settings to know the color value, we retrieve the value\n\t\t\t\t// directly from the style previously serialized.\n\t\t\t\tconst borderColor = parseBorderColor( figureStyle );\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tborderColor,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconst blockquoteTextColorClass = getColorClassName(\n\t\t\t\t'color',\n\t\t\t\ttextColor\n\t\t\t);\n\t\t\tconst blockquoteClasses =\n\t\t\t\t( textColor || customTextColor ) &&\n\t\t\t\tclassnames( 'has-text-color', {\n\t\t\t\t\t[ blockquoteTextColorClass ]: blockquoteTextColorClass,\n\t\t\t\t} );\n\n\t\t\tconst blockquoteStyles = blockquoteTextColorClass\n\t\t\t\t? undefined\n\t\t\t\t: { color: customTextColor };\n\n\t\t\treturn (\n\t\t\t\t<figure className={ figureClasses } style={ figureStyles }>\n\t\t\t\t\t<blockquote\n\t\t\t\t\t\tclassName={ blockquoteClasses }\n\t\t\t\t\t\tstyle={ blockquoteStyles }\n\t\t\t\t\t>\n\t\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\ttagName=\"cite\"\n\t\t\t\t\t\t\t\tvalue={ citation }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</blockquote>\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t\tmigrate( {\n\t\t\tclassName,\n\t\t\tfigureStyle,\n\t\t\tmainColor,\n\t\t\tcustomMainColor,\n\t\t\tcustomTextColor,\n\t\t\t...attributes\n\t\t} ) {\n\t\t\tconst isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );\n\t\t\tlet style;\n\n\t\t\tif ( customMainColor ) {\n\t\t\t\tif ( ! isSolidColorStyle ) {\n\t\t\t\t\t// Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.\n\t\t\t\t\tstyle = {\n\t\t\t\t\t\tborder: {\n\t\t\t\t\t\t\tcolor: customMainColor,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t} else {\n\t\t\t\t\t// Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.\n\t\t\t\t\tstyle = {\n\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\tbackground: customMainColor,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.\n\t\t\tif ( customTextColor && style ) {\n\t\t\t\tstyle.color = {\n\t\t\t\t\t...style.color,\n\t\t\t\t\ttext: customTextColor,\n\t\t\t\t};\n\t\t\t}\n\t\t\t// If is the default style, and a main color is set,\n\t\t\t// migrate the main color value into a custom border color.\n\t\t\t// The custom border color value is retrieved by parsing the figure styles.\n\t\t\tif ( ! isSolidColorStyle && mainColor && figureStyle ) {\n\t\t\t\tconst borderColor = parseBorderColor( figureStyle );\n\t\t\t\tif ( borderColor ) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t// Block supports: Set style.border.color if a deprecated block has `mainColor`, inline border CSS and is not a solid color style.\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\tborder: {\n\t\t\t\t\t\t\t\tcolor: borderColor,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tclassName,\n\t\t\t\tbackgroundColor: isSolidColorStyle ? mainColor : undefined,\n\t\t\t\tborderColor: isSolidColorStyle ? undefined : mainColor,\n\t\t\t\ttextAlign: isSolidColorStyle ? 'left' : undefined,\n\t\t\t\tstyle,\n\t\t\t\t...attributes,\n\t\t\t};\n\t\t},\n\t},\n\t{\n\t\tattributes: blockAttributes,\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\tmainColor,\n\t\t\t\tcustomMainColor,\n\t\t\t\ttextColor,\n\t\t\t\tcustomTextColor,\n\t\t\t\tvalue,\n\t\t\t\tcitation,\n\t\t\t\tclassName,\n\t\t\t} = attributes;\n\t\t\tconst isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );\n\n\t\t\tlet figureClass, figureStyles;\n\t\t\t// Is solid color style\n\t\t\tif ( isSolidColorStyle ) {\n\t\t\t\tfigureClass = getColorClassName(\n\t\t\t\t\t'background-color',\n\t\t\t\t\tmainColor\n\t\t\t\t);\n\t\t\t\tif ( ! figureClass ) {\n\t\t\t\t\tfigureStyles = {\n\t\t\t\t\t\tbackgroundColor: customMainColor,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\t// Is normal style and a custom color is being used ( we can set a style directly with its value)\n\t\t\t} else if ( customMainColor ) {\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tborderColor: customMainColor,\n\t\t\t\t};\n\t\t\t\t// Is normal style and a named color is being used, we need to retrieve the color value to set the style,\n\t\t\t\t// as there is no expectation that themes create classes that set border colors.\n\t\t\t} else if ( mainColor ) {\n\t\t\t\tconst colors = get(\n\t\t\t\t\tselect( blockEditorStore ).getSettings(),\n\t\t\t\t\t[ 'colors' ],\n\t\t\t\t\t[]\n\t\t\t\t);\n\t\t\t\tconst colorObject = getColorObjectByAttributeValues(\n\t\t\t\t\tcolors,\n\t\t\t\t\tmainColor\n\t\t\t\t);\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tborderColor: colorObject.color,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconst blockquoteTextColorClass = getColorClassName(\n\t\t\t\t'color',\n\t\t\t\ttextColor\n\t\t\t);\n\t\t\tconst blockquoteClasses =\n\t\t\t\ttextColor || customTextColor\n\t\t\t\t\t? classnames( 'has-text-color', {\n\t\t\t\t\t\t\t[ blockquoteTextColorClass ]:\n\t\t\t\t\t\t\t\tblockquoteTextColorClass,\n\t\t\t\t\t } )\n\t\t\t\t\t: undefined;\n\t\t\tconst blockquoteStyle = blockquoteTextColorClass\n\t\t\t\t? undefined\n\t\t\t\t: { color: customTextColor };\n\t\t\treturn (\n\t\t\t\t<figure className={ figureClass } style={ figureStyles }>\n\t\t\t\t\t<blockquote\n\t\t\t\t\t\tclassName={ blockquoteClasses }\n\t\t\t\t\t\tstyle={ blockquoteStyle }\n\t\t\t\t\t>\n\t\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\t\ttagName=\"cite\"\n\t\t\t\t\t\t\t\tvalue={ citation }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</blockquote>\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t\tmigrate( {\n\t\t\tclassName,\n\t\t\tmainColor,\n\t\t\tcustomMainColor,\n\t\t\tcustomTextColor,\n\t\t\t...attributes\n\t\t} ) {\n\t\t\tconst isSolidColorStyle = includes( className, SOLID_COLOR_CLASS );\n\t\t\tlet style = {};\n\n\t\t\tif ( customMainColor ) {\n\t\t\t\tif ( ! isSolidColorStyle ) {\n\t\t\t\t\t// Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.\n\t\t\t\t\tstyle = {\n\t\t\t\t\t\tborder: {\n\t\t\t\t\t\t\tcolor: customMainColor,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t} else {\n\t\t\t\t\t// Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.\n\t\t\t\t\tstyle = {\n\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\tbackground: customMainColor,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.\n\t\t\tif ( customTextColor && style ) {\n\t\t\t\tstyle.color = {\n\t\t\t\t\t...style.color,\n\t\t\t\t\ttext: customTextColor,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tclassName,\n\t\t\t\tbackgroundColor: isSolidColorStyle ? mainColor : undefined,\n\t\t\t\tborderColor: isSolidColorStyle ? undefined : mainColor,\n\t\t\t\ttextAlign: isSolidColorStyle ? 'left' : undefined,\n\t\t\t\tstyle,\n\t\t\t\t...attributes,\n\t\t\t};\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t},\n\t\tsave( { attributes } ) {\n\t\t\tconst { value, citation } = attributes;\n\t\t\treturn (\n\t\t\t\t<blockquote>\n\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t\t\t) }\n\t\t\t\t</blockquote>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tcitation: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'html',\n\t\t\t\tselector: 'footer',\n\t\t\t},\n\t\t\talign: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'none',\n\t\t\t},\n\t\t},\n\n\t\tsave( { attributes } ) {\n\t\t\tconst { value, citation, align } = attributes;\n\n\t\t\treturn (\n\t\t\t\t<blockquote className={ `align${ align }` }>\n\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t<RichText.Content tagName=\"footer\" value={ citation } />\n\t\t\t\t\t) }\n\t\t\t\t</blockquote>\n\t\t\t);\n\t\t},\n\t},\n];\n\nexport default deprecated;\n"]}
@@ -25,7 +25,9 @@ export function QueryContent(_ref) {
25
25
  let {
26
26
  attributes,
27
27
  setAttributes,
28
- openPatternSelectionModal
28
+ openPatternSelectionModal,
29
+ name,
30
+ clientId
29
31
  } = _ref;
30
32
  const {
31
33
  queryId,
@@ -117,6 +119,8 @@ export function QueryContent(_ref) {
117
119
  setQuery: updateQuery,
118
120
  setDisplayLayout: updateDisplayLayout
119
121
  }), createElement(BlockControls, null, createElement(QueryToolbar, {
122
+ name: name,
123
+ clientId: clientId,
120
124
  attributes: attributes,
121
125
  setQuery: updateQuery,
122
126
  setDisplayLayout: updateDisplayLayout,
@@ -1 +1 @@
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"]}
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","name","clientId","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","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\tname,\n\tclientId,\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 } =\n\t\tuseDispatch( blockEditorStore );\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\tname={ name }\n\t\t\t\t\tclientId={ clientId }\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 [ isPatternSelectionModalOpen, setIsPatternSelectionModalOpen ] =\n\t\tuseState( 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 =\n\t\t\tgetFirstQueryClientIdFromBlocks( clonedBlocks );\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"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/query/edit/inspector-controls/parent-control.js"],"names":["__","FormTokenField","useSelect","store","coreStore","useState","useEffect","useMemo","useDebounce","getEntitiesInfo","mapToIHasNameAndId","EMPTY_ARRAY","BASE_QUERY","order","_fields","context","ParentControl","parents","postType","onChange","search","setSearch","value","setValue","suggestions","setSuggestions","debouncedSearch","searchResults","searchHasResolved","select","getEntityRecords","hasFinishedResolution","selectorArgs","orderby","exclude","per_page","currentParents","length","include","currentParentsInfo","sanitizedValue","reduce","accumulator","id","entity","mapById","push","name","entitiesInfo","names","getIdByValue","entitiesMappedByName","onParentChange","newValue","ids","Array","from","mapByName","add","Set"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { FormTokenField } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState, useEffect, useMemo } from '@wordpress/element';\nimport { useDebounce } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { getEntitiesInfo, mapToIHasNameAndId } from '../../utils';\n\nconst EMPTY_ARRAY = [];\nconst BASE_QUERY = {\n\torder: 'asc',\n\t_fields: 'id,title',\n\tcontext: 'view',\n};\n\nfunction ParentControl( { parents, postType, onChange } ) {\n\tconst [ search, setSearch ] = useState( '' );\n\tconst [ value, setValue ] = useState( EMPTY_ARRAY );\n\tconst [ suggestions, setSuggestions ] = useState( EMPTY_ARRAY );\n\tconst debouncedSearch = useDebounce( setSearch, 250 );\n\tconst { searchResults, searchHasResolved } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! search ) {\n\t\t\t\treturn { searchResults: EMPTY_ARRAY, searchHasResolved: true };\n\t\t\t}\n\t\t\tconst { getEntityRecords, hasFinishedResolution } = select(\n\t\t\t\tcoreStore\n\t\t\t);\n\t\t\tconst selectorArgs = [\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\t{\n\t\t\t\t\t...BASE_QUERY,\n\t\t\t\t\tsearch,\n\t\t\t\t\torderby: 'relevance',\n\t\t\t\t\texclude: parents,\n\t\t\t\t\tper_page: 20,\n\t\t\t\t},\n\t\t\t];\n\t\t\treturn {\n\t\t\t\tsearchResults: getEntityRecords( ...selectorArgs ),\n\t\t\t\tsearchHasResolved: hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\tselectorArgs\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ search, parents ]\n\t);\n\tconst currentParents = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! parents?.length ) return EMPTY_ARRAY;\n\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\treturn getEntityRecords( 'postType', postType, {\n\t\t\t\t...BASE_QUERY,\n\t\t\t\tinclude: parents,\n\t\t\t\tper_page: parents.length,\n\t\t\t} );\n\t\t},\n\t\t[ parents ]\n\t);\n\t// Update the `value` state only after the selectors are resolved\n\t// to avoid emptying the input when we're changing parents.\n\tuseEffect( () => {\n\t\tif ( ! parents?.length ) {\n\t\t\tsetValue( EMPTY_ARRAY );\n\t\t}\n\t\tif ( ! currentParents?.length ) return;\n\t\tconst currentParentsInfo = getEntitiesInfo(\n\t\t\tmapToIHasNameAndId( currentParents, 'title.rendered' )\n\t\t);\n\t\t// Returns only the existing entity ids. This prevents the component\n\t\t// from crashing in the editor, when non existing ids are provided.\n\t\tconst sanitizedValue = parents.reduce( ( accumulator, id ) => {\n\t\t\tconst entity = currentParentsInfo.mapById[ id ];\n\t\t\tif ( entity ) {\n\t\t\t\taccumulator.push( {\n\t\t\t\t\tid,\n\t\t\t\t\tvalue: entity.name,\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t}, [] );\n\t\tsetValue( sanitizedValue );\n\t}, [ parents, currentParents ] );\n\n\tconst entitiesInfo = useMemo( () => {\n\t\tif ( ! searchResults?.length ) return EMPTY_ARRAY;\n\t\treturn getEntitiesInfo(\n\t\t\tmapToIHasNameAndId( searchResults, 'title.rendered' )\n\t\t);\n\t}, [ searchResults ] );\n\t// Update suggestions only when the query has resolved.\n\tuseEffect( () => {\n\t\tif ( ! searchHasResolved ) return;\n\t\tsetSuggestions( entitiesInfo.names );\n\t}, [ entitiesInfo.names, searchHasResolved ] );\n\n\tconst getIdByValue = ( entitiesMappedByName, entity ) => {\n\t\tconst id = entity?.id || entitiesMappedByName?.[ entity ]?.id;\n\t\tif ( id ) return id;\n\t};\n\tconst onParentChange = ( newValue ) => {\n\t\tconst ids = Array.from(\n\t\t\tnewValue.reduce( ( accumulator, entity ) => {\n\t\t\t\t// Verify that new values point to existing entities.\n\t\t\t\tconst id = getIdByValue( entitiesInfo.mapByName, entity );\n\t\t\t\tif ( id ) accumulator.add( id );\n\t\t\t\treturn accumulator;\n\t\t\t}, new Set() )\n\t\t);\n\t\tsetSuggestions( EMPTY_ARRAY );\n\t\tonChange( { parents: ids } );\n\t};\n\treturn (\n\t\t<FormTokenField\n\t\t\tlabel={ __( 'Parents' ) }\n\t\t\tvalue={ value }\n\t\t\tonInputChange={ debouncedSearch }\n\t\t\tsuggestions={ suggestions }\n\t\t\tonChange={ onParentChange }\n\t\t/>\n\t);\n}\n\nexport default ParentControl;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/query/edit/inspector-controls/parent-control.js"],"names":["__","FormTokenField","useSelect","store","coreStore","useState","useEffect","useMemo","useDebounce","getEntitiesInfo","mapToIHasNameAndId","EMPTY_ARRAY","BASE_QUERY","order","_fields","context","ParentControl","parents","postType","onChange","search","setSearch","value","setValue","suggestions","setSuggestions","debouncedSearch","searchResults","searchHasResolved","select","getEntityRecords","hasFinishedResolution","selectorArgs","orderby","exclude","per_page","currentParents","length","include","currentParentsInfo","sanitizedValue","reduce","accumulator","id","entity","mapById","push","name","entitiesInfo","names","getIdByValue","entitiesMappedByName","onParentChange","newValue","ids","Array","from","mapByName","add","Set"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { FormTokenField } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState, useEffect, useMemo } from '@wordpress/element';\nimport { useDebounce } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { getEntitiesInfo, mapToIHasNameAndId } from '../../utils';\n\nconst EMPTY_ARRAY = [];\nconst BASE_QUERY = {\n\torder: 'asc',\n\t_fields: 'id,title',\n\tcontext: 'view',\n};\n\nfunction ParentControl( { parents, postType, onChange } ) {\n\tconst [ search, setSearch ] = useState( '' );\n\tconst [ value, setValue ] = useState( EMPTY_ARRAY );\n\tconst [ suggestions, setSuggestions ] = useState( EMPTY_ARRAY );\n\tconst debouncedSearch = useDebounce( setSearch, 250 );\n\tconst { searchResults, searchHasResolved } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! search ) {\n\t\t\t\treturn { searchResults: EMPTY_ARRAY, searchHasResolved: true };\n\t\t\t}\n\t\t\tconst { getEntityRecords, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst selectorArgs = [\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\t{\n\t\t\t\t\t...BASE_QUERY,\n\t\t\t\t\tsearch,\n\t\t\t\t\torderby: 'relevance',\n\t\t\t\t\texclude: parents,\n\t\t\t\t\tper_page: 20,\n\t\t\t\t},\n\t\t\t];\n\t\t\treturn {\n\t\t\t\tsearchResults: getEntityRecords( ...selectorArgs ),\n\t\t\t\tsearchHasResolved: hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\tselectorArgs\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ search, parents ]\n\t);\n\tconst currentParents = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! parents?.length ) return EMPTY_ARRAY;\n\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\treturn getEntityRecords( 'postType', postType, {\n\t\t\t\t...BASE_QUERY,\n\t\t\t\tinclude: parents,\n\t\t\t\tper_page: parents.length,\n\t\t\t} );\n\t\t},\n\t\t[ parents ]\n\t);\n\t// Update the `value` state only after the selectors are resolved\n\t// to avoid emptying the input when we're changing parents.\n\tuseEffect( () => {\n\t\tif ( ! parents?.length ) {\n\t\t\tsetValue( EMPTY_ARRAY );\n\t\t}\n\t\tif ( ! currentParents?.length ) return;\n\t\tconst currentParentsInfo = getEntitiesInfo(\n\t\t\tmapToIHasNameAndId( currentParents, 'title.rendered' )\n\t\t);\n\t\t// Returns only the existing entity ids. This prevents the component\n\t\t// from crashing in the editor, when non existing ids are provided.\n\t\tconst sanitizedValue = parents.reduce( ( accumulator, id ) => {\n\t\t\tconst entity = currentParentsInfo.mapById[ id ];\n\t\t\tif ( entity ) {\n\t\t\t\taccumulator.push( {\n\t\t\t\t\tid,\n\t\t\t\t\tvalue: entity.name,\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t}, [] );\n\t\tsetValue( sanitizedValue );\n\t}, [ parents, currentParents ] );\n\n\tconst entitiesInfo = useMemo( () => {\n\t\tif ( ! searchResults?.length ) return EMPTY_ARRAY;\n\t\treturn getEntitiesInfo(\n\t\t\tmapToIHasNameAndId( searchResults, 'title.rendered' )\n\t\t);\n\t}, [ searchResults ] );\n\t// Update suggestions only when the query has resolved.\n\tuseEffect( () => {\n\t\tif ( ! searchHasResolved ) return;\n\t\tsetSuggestions( entitiesInfo.names );\n\t}, [ entitiesInfo.names, searchHasResolved ] );\n\n\tconst getIdByValue = ( entitiesMappedByName, entity ) => {\n\t\tconst id = entity?.id || entitiesMappedByName?.[ entity ]?.id;\n\t\tif ( id ) return id;\n\t};\n\tconst onParentChange = ( newValue ) => {\n\t\tconst ids = Array.from(\n\t\t\tnewValue.reduce( ( accumulator, entity ) => {\n\t\t\t\t// Verify that new values point to existing entities.\n\t\t\t\tconst id = getIdByValue( entitiesInfo.mapByName, entity );\n\t\t\t\tif ( id ) accumulator.add( id );\n\t\t\t\treturn accumulator;\n\t\t\t}, new Set() )\n\t\t);\n\t\tsetSuggestions( EMPTY_ARRAY );\n\t\tonChange( { parents: ids } );\n\t};\n\treturn (\n\t\t<FormTokenField\n\t\t\tlabel={ __( 'Parents' ) }\n\t\t\tvalue={ value }\n\t\t\tonInputChange={ debouncedSearch }\n\t\t\tsuggestions={ suggestions }\n\t\t\tonChange={ onParentChange }\n\t\t/>\n\t);\n}\n\nexport default ParentControl;\n"]}
@@ -7,6 +7,8 @@ import { ToolbarGroup, Dropdown, ToolbarButton, BaseControl, __experimentalNumbe
7
7
  import { useInstanceId } from '@wordpress/compose';
8
8
  import { __ } from '@wordpress/i18n';
9
9
  import { settings, list, grid } from '@wordpress/icons';
10
+ import { useSelect } from '@wordpress/data';
11
+ import { store as blockEditorStore } from '@wordpress/block-editor';
10
12
  export default function QueryToolbar(_ref) {
11
13
  let {
12
14
  attributes: {
@@ -15,8 +17,18 @@ export default function QueryToolbar(_ref) {
15
17
  },
16
18
  setQuery,
17
19
  setDisplayLayout,
18
- openPatternSelectionModal
20
+ openPatternSelectionModal,
21
+ name,
22
+ clientId
19
23
  } = _ref;
24
+ const hasPatterns = useSelect(select => {
25
+ const {
26
+ getBlockRootClientId,
27
+ __experimentalGetPatternsByBlockTypes
28
+ } = select(blockEditorStore);
29
+ const rootClientId = getBlockRootClientId(clientId);
30
+ return !!__experimentalGetPatternsByBlockTypes(name, rootClientId).length;
31
+ }, [name, clientId]);
20
32
  const maxPageInputId = useInstanceId(QueryToolbar, 'blocks-query-pagination-max-page-input');
21
33
  const displayLayoutControls = [{
22
34
  icon: list,
@@ -104,7 +116,7 @@ export default function QueryToolbar(_ref) {
104
116
  value: query.pages,
105
117
  isDragEnabled: false
106
118
  })))
107
- })), createElement(ToolbarGroup, {
119
+ })), hasPatterns && createElement(ToolbarGroup, {
108
120
  className: "wp-block-template-part__block-control-group"
109
121
  }, createElement(ToolbarButton, {
110
122
  onClick: openPatternSelectionModal
@@ -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","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"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/query/edit/query-toolbar.js"],"names":["ToolbarGroup","Dropdown","ToolbarButton","BaseControl","__experimentalNumberControl","NumberControl","useInstanceId","__","settings","list","grid","useSelect","store","blockEditorStore","QueryToolbar","attributes","query","displayLayout","setQuery","setDisplayLayout","openPatternSelectionModal","name","clientId","hasPatterns","select","getBlockRootClientId","__experimentalGetPatternsByBlockTypes","rootClientId","length","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';\nimport { useSelect } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\nexport default function QueryToolbar( {\n\tattributes: { query, displayLayout },\n\tsetQuery,\n\tsetDisplayLayout,\n\topenPatternSelectionModal,\n\tname,\n\tclientId,\n} ) {\n\tconst hasPatterns = useSelect(\n\t\t( select ) => {\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\t\t\treturn !! __experimentalGetPatternsByBlockTypes(\n\t\t\t\tname,\n\t\t\t\trootClientId\n\t\t\t).length;\n\t\t},\n\t\t[ name, clientId ]\n\t);\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{ hasPatterns && (\n\t\t\t\t<ToolbarGroup className=\"wp-block-template-part__block-control-group\">\n\t\t\t\t\t<ToolbarButton onClick={ openPatternSelectionModal }>\n\t\t\t\t\t\t{ __( 'Replace' ) }\n\t\t\t\t\t</ToolbarButton>\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 +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","getDefaultBlockName","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","style","citation","align","isAncestorOfSelectedBlock","select","hasSelectedInnerBlock","hasSelection","blockProps","innerBlocksProps","template","templateInsertUpdatesSelection","nextAlign","children","isEmpty","undefined","display","nextCitation","textAlign"],"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, getDefaultBlockName } 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\tstyle,\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\t...( ! isWebPlatform && { style } ),\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(\n\t\t\t\t\t\t\t\tcreateBlock( getDefaultBlockName() )\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t\t{ ...( ! isWebPlatform ? { textAlign: align } : {} ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockQuotation>\n\t\t</>\n\t);\n}\n"]}
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","getDefaultBlockName","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","style","citation","align","isAncestorOfSelectedBlock","select","hasSelectedInnerBlock","hasSelection","blockProps","innerBlocksProps","template","templateInsertUpdatesSelection","nextAlign","children","isEmpty","undefined","display","nextCitation","textAlign"],"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, getDefaultBlockName } 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 } =\n\t\tuseDispatch( blockEditorStore );\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 ] =\n\t\t\tmigrateToQuoteV2( attributes );\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\tstyle,\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\t...( ! isWebPlatform && { style } ),\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(\n\t\t\t\t\t\t\t\tcreateBlock( getDefaultBlockName() )\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t\t{ ...( ! isWebPlatform ? { textAlign: align } : {} ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockQuotation>\n\t\t</>\n\t);\n}\n"]}