@wordpress/block-library 9.2.0 → 9.4.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 (623) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/audio/edit.js +20 -8
  3. package/build/audio/edit.js.map +1 -1
  4. package/build/audio/index.js +4 -0
  5. package/build/audio/index.js.map +1 -1
  6. package/build/audio/transforms.js +1 -1
  7. package/build/audio/transforms.js.map +1 -1
  8. package/build/block/edit.js +38 -24
  9. package/build/block/edit.js.map +1 -1
  10. package/build/block/index.js +5 -1
  11. package/build/block/index.js.map +1 -1
  12. package/build/button/edit.js +1 -1
  13. package/build/button/edit.js.map +1 -1
  14. package/build/buttons/index.js +26 -0
  15. package/build/buttons/index.js.map +1 -1
  16. package/build/categories/edit.js +20 -3
  17. package/build/categories/edit.js.map +1 -1
  18. package/build/categories/index.js +8 -0
  19. package/build/categories/index.js.map +1 -1
  20. package/build/columns/index.js +2 -2
  21. package/build/columns/index.js.map +1 -1
  22. package/build/cover/edit/inspector-controls.js +2 -1
  23. package/build/cover/edit/inspector-controls.js.map +1 -1
  24. package/build/embed/embed-preview.js +4 -4
  25. package/build/embed/embed-preview.js.map +1 -1
  26. package/build/embed/variations.js +39 -34
  27. package/build/embed/variations.js.map +1 -1
  28. package/build/file/edit.js +14 -6
  29. package/build/file/edit.js.map +1 -1
  30. package/build/file/index.js +4 -0
  31. package/build/file/index.js.map +1 -1
  32. package/build/file/transforms.js +2 -3
  33. package/build/file/transforms.js.map +1 -1
  34. package/build/footnotes/index.js +1 -1
  35. package/build/footnotes/index.js.map +1 -1
  36. package/build/form-input/edit.js +2 -0
  37. package/build/form-input/edit.js.map +1 -1
  38. package/build/gallery/deprecated.js +6 -54
  39. package/build/gallery/deprecated.js.map +1 -1
  40. package/build/gallery/edit.js +9 -8
  41. package/build/gallery/edit.js.map +1 -1
  42. package/build/gallery/index.js +12 -2
  43. package/build/gallery/index.js.map +1 -1
  44. package/build/gallery/save.js +0 -11
  45. package/build/gallery/save.js.map +1 -1
  46. package/build/gallery/shared.js +0 -27
  47. package/build/gallery/shared.js.map +1 -1
  48. package/build/gallery/transforms.js +29 -80
  49. package/build/gallery/transforms.js.map +1 -1
  50. package/build/group/deprecated.js +2 -5
  51. package/build/group/deprecated.js.map +1 -1
  52. package/build/group/index.js +1 -0
  53. package/build/group/index.js.map +1 -1
  54. package/build/group/placeholder.js +5 -0
  55. package/build/group/placeholder.js.map +1 -1
  56. package/build/heading/index.js +14 -1
  57. package/build/heading/index.js.map +1 -1
  58. package/build/image/edit.js +14 -22
  59. package/build/image/edit.js.map +1 -1
  60. package/build/image/image.js +54 -28
  61. package/build/image/image.js.map +1 -1
  62. package/build/image/index.js +7 -0
  63. package/build/image/index.js.map +1 -1
  64. package/build/image/transforms.js +1 -1
  65. package/build/image/transforms.js.map +1 -1
  66. package/build/image/view.js +65 -49
  67. package/build/image/view.js.map +1 -1
  68. package/build/latest-comments/index.js +9 -0
  69. package/build/latest-comments/index.js.map +1 -1
  70. package/build/list/edit.js +3 -3
  71. package/build/list/edit.js.map +1 -1
  72. package/build/list-item/edit.js +3 -3
  73. package/build/list-item/edit.js.map +1 -1
  74. package/build/list-item/hooks/index.js +0 -7
  75. package/build/list-item/hooks/index.js.map +1 -1
  76. package/build/list-item/hooks/use-merge.js +8 -1
  77. package/build/list-item/hooks/use-merge.js.map +1 -1
  78. package/build/list-item/index.js +11 -1
  79. package/build/list-item/index.js.map +1 -1
  80. package/build/loginout/index.js +3 -0
  81. package/build/loginout/index.js.map +1 -1
  82. package/build/media-text/edit.js +3 -2
  83. package/build/media-text/edit.js.map +1 -1
  84. package/build/media-text/index.js +12 -0
  85. package/build/media-text/index.js.map +1 -1
  86. package/build/navigation/edit/navigation-menu-delete-control.js +1 -0
  87. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  88. package/build/navigation/use-navigation-menu.js +5 -1
  89. package/build/navigation/use-navigation-menu.js.map +1 -1
  90. package/build/navigation-link/link-ui.js +13 -17
  91. package/build/navigation-link/link-ui.js.map +1 -1
  92. package/build/navigation-submenu/edit.js +1 -12
  93. package/build/navigation-submenu/edit.js.map +1 -1
  94. package/build/page-list/convert-to-links-modal.js +1 -1
  95. package/build/page-list/convert-to-links-modal.js.map +1 -1
  96. package/build/page-list/edit.js +2 -1
  97. package/build/page-list/edit.js.map +1 -1
  98. package/build/page-list-item/edit.js +4 -1
  99. package/build/page-list-item/edit.js.map +1 -1
  100. package/build/paragraph/index.js +6 -0
  101. package/build/paragraph/index.js.map +1 -1
  102. package/build/paragraph/transforms.js +6 -0
  103. package/build/paragraph/transforms.js.map +1 -1
  104. package/build/post-author/index.js +8 -0
  105. package/build/post-author/index.js.map +1 -1
  106. package/build/post-author-biography/index.js +3 -0
  107. package/build/post-author-biography/index.js.map +1 -1
  108. package/build/post-author-name/index.js +3 -0
  109. package/build/post-author-name/index.js.map +1 -1
  110. package/build/post-content/index.js +3 -0
  111. package/build/post-content/index.js.map +1 -1
  112. package/build/post-date/edit.js +3 -1
  113. package/build/post-date/edit.js.map +1 -1
  114. package/build/post-date/index.js +3 -0
  115. package/build/post-date/index.js.map +1 -1
  116. package/build/post-excerpt/edit.js +1 -0
  117. package/build/post-excerpt/edit.js.map +1 -1
  118. package/build/post-excerpt/index.js +3 -0
  119. package/build/post-excerpt/index.js.map +1 -1
  120. package/build/post-featured-image/index.js +3 -0
  121. package/build/post-featured-image/index.js.map +1 -1
  122. package/build/post-terms/index.js +3 -0
  123. package/build/post-terms/index.js.map +1 -1
  124. package/build/post-title/edit.js +5 -1
  125. package/build/post-title/edit.js.map +1 -1
  126. package/build/post-title/index.js +3 -0
  127. package/build/post-title/index.js.map +1 -1
  128. package/build/query/edit/inspector-controls/author-control.js +3 -1
  129. package/build/query/edit/inspector-controls/author-control.js.map +1 -1
  130. package/build/query/edit/inspector-controls/index.js +27 -8
  131. package/build/query/edit/inspector-controls/index.js.map +1 -1
  132. package/build/query/edit/inspector-controls/order-control.js +1 -0
  133. package/build/query/edit/inspector-controls/order-control.js.map +1 -1
  134. package/build/query/edit/inspector-controls/parent-control.js +2 -1
  135. package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
  136. package/build/query/edit/inspector-controls/sticky-control.js +1 -0
  137. package/build/query/edit/inspector-controls/sticky-control.js.map +1 -1
  138. package/build/query/edit/inspector-controls/taxonomy-controls.js +5 -2
  139. package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  140. package/build/query/edit/query-content.js +11 -2
  141. package/build/query/edit/query-content.js.map +1 -1
  142. package/build/query/edit/query-placeholder.js +1 -14
  143. package/build/query/edit/query-placeholder.js.map +1 -1
  144. package/build/query/edit/query-toolbar.js +54 -61
  145. package/build/query/edit/query-toolbar.js.map +1 -1
  146. package/build/query/index.js +34 -0
  147. package/build/query/index.js.map +1 -1
  148. package/build/query/utils.js +5 -1
  149. package/build/query/utils.js.map +1 -1
  150. package/build/query/variations.js +9 -55
  151. package/build/query/variations.js.map +1 -1
  152. package/build/query-pagination-numbers/edit.js +1 -0
  153. package/build/query-pagination-numbers/edit.js.map +1 -1
  154. package/build/query-title/edit.js +11 -19
  155. package/build/query-title/edit.js.map +1 -1
  156. package/build/query-title/use-archive-label.js +95 -0
  157. package/build/query-title/use-archive-label.js.map +1 -0
  158. package/build/quote/index.js +15 -1
  159. package/build/quote/index.js.map +1 -1
  160. package/build/search/index.js +3 -0
  161. package/build/search/index.js.map +1 -1
  162. package/build/site-logo/edit.js +4 -1
  163. package/build/site-logo/edit.js.map +1 -1
  164. package/build/site-tagline/edit.js +5 -2
  165. package/build/site-tagline/edit.js.map +1 -1
  166. package/build/site-tagline/index.js +6 -1
  167. package/build/site-tagline/index.js.map +1 -1
  168. package/build/site-title/edit.js +4 -1
  169. package/build/site-title/edit.js.map +1 -1
  170. package/build/site-title/index.js +6 -1
  171. package/build/site-title/index.js.map +1 -1
  172. package/build/social-link/edit.js +27 -7
  173. package/build/social-link/edit.js.map +1 -1
  174. package/build/social-link/icons/soundcloud.js +1 -1
  175. package/build/social-link/icons/soundcloud.js.map +1 -1
  176. package/build/social-links/index.js +12 -0
  177. package/build/social-links/index.js.map +1 -1
  178. package/build/table/edit.js +8 -17
  179. package/build/table/edit.js.map +1 -1
  180. package/build/tag-cloud/edit.js +4 -1
  181. package/build/tag-cloud/edit.js.map +1 -1
  182. package/build/template-part/edit/index.js +5 -3
  183. package/build/template-part/edit/index.js.map +1 -1
  184. package/build/template-part/edit/inner-blocks.js +8 -3
  185. package/build/template-part/edit/inner-blocks.js.map +1 -1
  186. package/build/template-part/edit/placeholder.js +23 -3
  187. package/build/template-part/edit/placeholder.js.map +1 -1
  188. package/build/template-part/edit/title-modal.js +21 -9
  189. package/build/template-part/edit/title-modal.js.map +1 -1
  190. package/build/term-description/index.js +12 -0
  191. package/build/term-description/index.js.map +1 -1
  192. package/build/utils/hooks.js +17 -1
  193. package/build/utils/hooks.js.map +1 -1
  194. package/build/video/deprecated.js +4 -0
  195. package/build/video/deprecated.js.map +1 -1
  196. package/build/video/edit.js +17 -7
  197. package/build/video/edit.js.map +1 -1
  198. package/build/video/index.js +4 -0
  199. package/build/video/index.js.map +1 -1
  200. package/build/video/transforms.js +1 -1
  201. package/build/video/transforms.js.map +1 -1
  202. package/build-module/audio/edit.js +20 -8
  203. package/build-module/audio/edit.js.map +1 -1
  204. package/build-module/audio/index.js +4 -0
  205. package/build-module/audio/index.js.map +1 -1
  206. package/build-module/audio/transforms.js +1 -1
  207. package/build-module/audio/transforms.js.map +1 -1
  208. package/build-module/block/edit.js +38 -24
  209. package/build-module/block/edit.js.map +1 -1
  210. package/build-module/block/index.js +5 -1
  211. package/build-module/block/index.js.map +1 -1
  212. package/build-module/button/edit.js +1 -1
  213. package/build-module/button/edit.js.map +1 -1
  214. package/build-module/buttons/index.js +26 -0
  215. package/build-module/buttons/index.js.map +1 -1
  216. package/build-module/categories/edit.js +21 -4
  217. package/build-module/categories/edit.js.map +1 -1
  218. package/build-module/categories/index.js +8 -0
  219. package/build-module/categories/index.js.map +1 -1
  220. package/build-module/columns/index.js +2 -2
  221. package/build-module/columns/index.js.map +1 -1
  222. package/build-module/cover/edit/inspector-controls.js +2 -1
  223. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  224. package/build-module/embed/embed-preview.js +4 -4
  225. package/build-module/embed/embed-preview.js.map +1 -1
  226. package/build-module/embed/variations.js +40 -35
  227. package/build-module/embed/variations.js.map +1 -1
  228. package/build-module/file/edit.js +15 -7
  229. package/build-module/file/edit.js.map +1 -1
  230. package/build-module/file/index.js +4 -0
  231. package/build-module/file/index.js.map +1 -1
  232. package/build-module/file/transforms.js +2 -3
  233. package/build-module/file/transforms.js.map +1 -1
  234. package/build-module/footnotes/index.js +1 -1
  235. package/build-module/footnotes/index.js.map +1 -1
  236. package/build-module/form-input/edit.js +2 -0
  237. package/build-module/form-input/edit.js.map +1 -1
  238. package/build-module/gallery/deprecated.js +6 -54
  239. package/build-module/gallery/deprecated.js.map +1 -1
  240. package/build-module/gallery/edit.js +10 -9
  241. package/build-module/gallery/edit.js.map +1 -1
  242. package/build-module/gallery/index.js +11 -1
  243. package/build-module/gallery/index.js.map +1 -1
  244. package/build-module/gallery/save.js +0 -11
  245. package/build-module/gallery/save.js.map +1 -1
  246. package/build-module/gallery/shared.js +0 -25
  247. package/build-module/gallery/shared.js.map +1 -1
  248. package/build-module/gallery/transforms.js +29 -80
  249. package/build-module/gallery/transforms.js.map +1 -1
  250. package/build-module/group/deprecated.js +2 -5
  251. package/build-module/group/deprecated.js.map +1 -1
  252. package/build-module/group/index.js +1 -0
  253. package/build-module/group/index.js.map +1 -1
  254. package/build-module/group/placeholder.js +5 -0
  255. package/build-module/group/placeholder.js.map +1 -1
  256. package/build-module/heading/index.js +14 -1
  257. package/build-module/heading/index.js.map +1 -1
  258. package/build-module/image/edit.js +13 -21
  259. package/build-module/image/edit.js.map +1 -1
  260. package/build-module/image/image.js +50 -24
  261. package/build-module/image/image.js.map +1 -1
  262. package/build-module/image/index.js +7 -0
  263. package/build-module/image/index.js.map +1 -1
  264. package/build-module/image/transforms.js +1 -1
  265. package/build-module/image/transforms.js.map +1 -1
  266. package/build-module/image/view.js +65 -49
  267. package/build-module/image/view.js.map +1 -1
  268. package/build-module/latest-comments/index.js +9 -0
  269. package/build-module/latest-comments/index.js.map +1 -1
  270. package/build-module/list/edit.js +3 -3
  271. package/build-module/list/edit.js.map +1 -1
  272. package/build-module/list-item/edit.js +3 -3
  273. package/build-module/list-item/edit.js.map +1 -1
  274. package/build-module/list-item/hooks/index.js +0 -1
  275. package/build-module/list-item/hooks/index.js.map +1 -1
  276. package/build-module/list-item/hooks/use-merge.js +8 -1
  277. package/build-module/list-item/hooks/use-merge.js.map +1 -1
  278. package/build-module/list-item/index.js +11 -1
  279. package/build-module/list-item/index.js.map +1 -1
  280. package/build-module/loginout/index.js +3 -0
  281. package/build-module/loginout/index.js.map +1 -1
  282. package/build-module/media-text/edit.js +3 -2
  283. package/build-module/media-text/edit.js.map +1 -1
  284. package/build-module/media-text/index.js +12 -0
  285. package/build-module/media-text/index.js.map +1 -1
  286. package/build-module/navigation/edit/navigation-menu-delete-control.js +1 -0
  287. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  288. package/build-module/navigation/use-navigation-menu.js +5 -1
  289. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  290. package/build-module/navigation-link/link-ui.js +13 -17
  291. package/build-module/navigation-link/link-ui.js.map +1 -1
  292. package/build-module/navigation-submenu/edit.js +1 -12
  293. package/build-module/navigation-submenu/edit.js.map +1 -1
  294. package/build-module/page-list/convert-to-links-modal.js +1 -1
  295. package/build-module/page-list/convert-to-links-modal.js.map +1 -1
  296. package/build-module/page-list/edit.js +2 -1
  297. package/build-module/page-list/edit.js.map +1 -1
  298. package/build-module/page-list-item/edit.js +4 -1
  299. package/build-module/page-list-item/edit.js.map +1 -1
  300. package/build-module/paragraph/index.js +6 -0
  301. package/build-module/paragraph/index.js.map +1 -1
  302. package/build-module/paragraph/transforms.js +6 -0
  303. package/build-module/paragraph/transforms.js.map +1 -1
  304. package/build-module/post-author/index.js +8 -0
  305. package/build-module/post-author/index.js.map +1 -1
  306. package/build-module/post-author-biography/index.js +3 -0
  307. package/build-module/post-author-biography/index.js.map +1 -1
  308. package/build-module/post-author-name/index.js +3 -0
  309. package/build-module/post-author-name/index.js.map +1 -1
  310. package/build-module/post-content/index.js +3 -0
  311. package/build-module/post-content/index.js.map +1 -1
  312. package/build-module/post-date/edit.js +4 -2
  313. package/build-module/post-date/edit.js.map +1 -1
  314. package/build-module/post-date/index.js +3 -0
  315. package/build-module/post-date/index.js.map +1 -1
  316. package/build-module/post-excerpt/edit.js +1 -0
  317. package/build-module/post-excerpt/edit.js.map +1 -1
  318. package/build-module/post-excerpt/index.js +3 -0
  319. package/build-module/post-excerpt/index.js.map +1 -1
  320. package/build-module/post-featured-image/index.js +3 -0
  321. package/build-module/post-featured-image/index.js.map +1 -1
  322. package/build-module/post-terms/index.js +3 -0
  323. package/build-module/post-terms/index.js.map +1 -1
  324. package/build-module/post-title/edit.js +5 -1
  325. package/build-module/post-title/edit.js.map +1 -1
  326. package/build-module/post-title/index.js +3 -0
  327. package/build-module/post-title/index.js.map +1 -1
  328. package/build-module/query/edit/inspector-controls/author-control.js +3 -1
  329. package/build-module/query/edit/inspector-controls/author-control.js.map +1 -1
  330. package/build-module/query/edit/inspector-controls/index.js +28 -9
  331. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  332. package/build-module/query/edit/inspector-controls/order-control.js +1 -0
  333. package/build-module/query/edit/inspector-controls/order-control.js.map +1 -1
  334. package/build-module/query/edit/inspector-controls/parent-control.js +2 -1
  335. package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -1
  336. package/build-module/query/edit/inspector-controls/sticky-control.js +1 -0
  337. package/build-module/query/edit/inspector-controls/sticky-control.js.map +1 -1
  338. package/build-module/query/edit/inspector-controls/taxonomy-controls.js +6 -4
  339. package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  340. package/build-module/query/edit/query-content.js +11 -2
  341. package/build-module/query/edit/query-content.js.map +1 -1
  342. package/build-module/query/edit/query-placeholder.js +1 -14
  343. package/build-module/query/edit/query-placeholder.js.map +1 -1
  344. package/build-module/query/edit/query-toolbar.js +55 -62
  345. package/build-module/query/edit/query-toolbar.js.map +1 -1
  346. package/build-module/query/index.js +34 -0
  347. package/build-module/query/index.js.map +1 -1
  348. package/build-module/query/utils.js +5 -1
  349. package/build-module/query/utils.js.map +1 -1
  350. package/build-module/query/variations.js +4 -50
  351. package/build-module/query/variations.js.map +1 -1
  352. package/build-module/query-pagination-numbers/edit.js +1 -0
  353. package/build-module/query-pagination-numbers/edit.js.map +1 -1
  354. package/build-module/query-title/edit.js +12 -20
  355. package/build-module/query-title/edit.js.map +1 -1
  356. package/build-module/query-title/use-archive-label.js +88 -0
  357. package/build-module/query-title/use-archive-label.js.map +1 -0
  358. package/build-module/quote/index.js +15 -1
  359. package/build-module/quote/index.js.map +1 -1
  360. package/build-module/search/index.js +3 -0
  361. package/build-module/search/index.js.map +1 -1
  362. package/build-module/site-logo/edit.js +4 -1
  363. package/build-module/site-logo/edit.js.map +1 -1
  364. package/build-module/site-tagline/edit.js +5 -2
  365. package/build-module/site-tagline/edit.js.map +1 -1
  366. package/build-module/site-tagline/index.js +6 -1
  367. package/build-module/site-tagline/index.js.map +1 -1
  368. package/build-module/site-title/edit.js +4 -1
  369. package/build-module/site-title/edit.js.map +1 -1
  370. package/build-module/site-title/index.js +6 -1
  371. package/build-module/site-title/index.js.map +1 -1
  372. package/build-module/social-link/edit.js +28 -8
  373. package/build-module/social-link/edit.js.map +1 -1
  374. package/build-module/social-link/icons/soundcloud.js +1 -1
  375. package/build-module/social-link/icons/soundcloud.js.map +1 -1
  376. package/build-module/social-links/index.js +12 -0
  377. package/build-module/social-links/index.js.map +1 -1
  378. package/build-module/table/edit.js +9 -18
  379. package/build-module/table/edit.js.map +1 -1
  380. package/build-module/tag-cloud/edit.js +4 -1
  381. package/build-module/tag-cloud/edit.js.map +1 -1
  382. package/build-module/template-part/edit/index.js +5 -3
  383. package/build-module/template-part/edit/index.js.map +1 -1
  384. package/build-module/template-part/edit/inner-blocks.js +8 -3
  385. package/build-module/template-part/edit/inner-blocks.js.map +1 -1
  386. package/build-module/template-part/edit/placeholder.js +23 -3
  387. package/build-module/template-part/edit/placeholder.js.map +1 -1
  388. package/build-module/template-part/edit/title-modal.js +21 -9
  389. package/build-module/template-part/edit/title-modal.js.map +1 -1
  390. package/build-module/term-description/index.js +12 -0
  391. package/build-module/term-description/index.js.map +1 -1
  392. package/build-module/utils/hooks.js +16 -1
  393. package/build-module/utils/hooks.js.map +1 -1
  394. package/build-module/video/deprecated.js +4 -0
  395. package/build-module/video/deprecated.js.map +1 -1
  396. package/build-module/video/edit.js +18 -8
  397. package/build-module/video/edit.js.map +1 -1
  398. package/build-module/video/index.js +4 -0
  399. package/build-module/video/index.js.map +1 -1
  400. package/build-module/video/transforms.js +1 -1
  401. package/build-module/video/transforms.js.map +1 -1
  402. package/build-style/categories/editor-rtl.css +4 -0
  403. package/build-style/categories/editor.css +4 -0
  404. package/build-style/categories/style-rtl.css +4 -0
  405. package/build-style/categories/style.css +4 -0
  406. package/build-style/editor-rtl.css +16 -12
  407. package/build-style/editor.css +16 -12
  408. package/build-style/image/editor-rtl.css +8 -4
  409. package/build-style/image/editor.css +8 -4
  410. package/build-style/image/style-rtl.css +19 -0
  411. package/build-style/image/style.css +19 -0
  412. package/build-style/list/style-rtl.css +1 -1
  413. package/build-style/list/style.css +1 -1
  414. package/build-style/navigation/style-rtl.css +1 -4
  415. package/build-style/navigation/style.css +1 -4
  416. package/build-style/post-comments-form/style-rtl.css +12 -11
  417. package/build-style/post-comments-form/style.css +12 -11
  418. package/build-style/query/editor-rtl.css +3 -7
  419. package/build-style/query/editor.css +3 -7
  420. package/build-style/search/editor-rtl.css +1 -1
  421. package/build-style/search/editor.css +1 -1
  422. package/build-style/social-links/style-rtl.css +93 -93
  423. package/build-style/social-links/style.css +93 -93
  424. package/build-style/style-rtl.css +131 -109
  425. package/build-style/style.css +131 -109
  426. package/build-style/term-description/style-rtl.css +1 -0
  427. package/build-style/term-description/style.css +1 -0
  428. package/package.json +35 -35
  429. package/src/audio/block.json +4 -0
  430. package/src/audio/edit.js +19 -7
  431. package/src/audio/transforms.js +1 -1
  432. package/src/block/block.json +5 -1
  433. package/src/block/edit.js +58 -28
  434. package/src/block/test/edit.native.js +6 -2
  435. package/src/button/edit.js +1 -1
  436. package/src/button/index.php +14 -1
  437. package/src/buttons/block.json +20 -0
  438. package/src/buttons/index.js +6 -0
  439. package/src/categories/block.json +8 -0
  440. package/src/categories/edit.js +32 -4
  441. package/src/categories/editor.scss +4 -0
  442. package/src/categories/index.php +4 -1
  443. package/src/categories/style.scss +4 -0
  444. package/src/columns/index.js +1 -1
  445. package/src/cover/edit/inspector-controls.js +1 -0
  446. package/src/embed/embed-preview.js +4 -6
  447. package/src/embed/test/__snapshots__/index.native.js.snap +8 -8
  448. package/src/embed/test/index.js +1 -1
  449. package/src/embed/test/index.native.js +24 -23
  450. package/src/embed/variations.js +43 -35
  451. package/src/file/block.json +4 -0
  452. package/src/file/edit.js +19 -6
  453. package/src/file/transforms.js +1 -2
  454. package/src/footnotes/index.js +1 -2
  455. package/src/form-input/edit.js +2 -0
  456. package/src/gallery/block.json +10 -0
  457. package/src/gallery/deprecated.js +6 -55
  458. package/src/gallery/edit.js +13 -10
  459. package/src/gallery/gallery-styles.native.scss +0 -2
  460. package/src/gallery/index.js +1 -1
  461. package/src/gallery/save.js +0 -10
  462. package/src/gallery/shared.js +0 -28
  463. package/src/gallery/transforms.js +56 -99
  464. package/src/group/block.json +1 -0
  465. package/src/group/deprecated.js +3 -7
  466. package/src/group/placeholder.js +7 -0
  467. package/src/heading/block.json +12 -0
  468. package/src/heading/index.js +1 -0
  469. package/src/image/block.json +7 -0
  470. package/src/image/edit.js +11 -20
  471. package/src/image/editor.scss +6 -1
  472. package/src/image/image.js +91 -49
  473. package/src/image/index.php +58 -20
  474. package/src/image/style.scss +22 -0
  475. package/src/image/test/edit.native.js +1 -0
  476. package/src/image/transforms.js +1 -1
  477. package/src/image/view.js +69 -49
  478. package/src/latest-comments/block.json +9 -0
  479. package/src/list/edit.js +3 -3
  480. package/src/list/style.scss +1 -1
  481. package/src/list-item/block.json +11 -1
  482. package/src/list-item/edit.js +3 -3
  483. package/src/list-item/hooks/index.js +0 -1
  484. package/src/list-item/hooks/use-merge.js +19 -5
  485. package/src/loginout/block.json +3 -0
  486. package/src/media-text/block.json +12 -0
  487. package/src/media-text/edit.js +3 -2
  488. package/src/navigation/edit/navigation-menu-delete-control.js +1 -0
  489. package/src/navigation/index.php +1 -1
  490. package/src/navigation/style.scss +4 -9
  491. package/src/navigation/test/use-navigation-menu.js +54 -15
  492. package/src/navigation/use-navigation-menu.js +5 -1
  493. package/src/navigation-link/link-ui.js +8 -14
  494. package/src/navigation-submenu/edit.js +2 -14
  495. package/src/page-list/convert-to-links-modal.js +1 -1
  496. package/src/page-list/edit.js +2 -1
  497. package/src/page-list-item/edit.js +4 -4
  498. package/src/paragraph/block.json +6 -0
  499. package/src/post-author/index.js +8 -0
  500. package/src/post-author-biography/block.json +3 -0
  501. package/src/post-author-name/block.json +3 -0
  502. package/src/post-comments-form/style.scss +16 -13
  503. package/src/post-content/block.json +3 -0
  504. package/src/post-date/block.json +3 -0
  505. package/src/post-date/edit.js +5 -1
  506. package/src/post-date/index.php +8 -2
  507. package/src/post-excerpt/block.json +3 -0
  508. package/src/post-excerpt/edit.js +1 -0
  509. package/src/post-featured-image/block.json +3 -0
  510. package/src/post-terms/block.json +3 -0
  511. package/src/post-title/block.json +3 -0
  512. package/src/post-title/edit.js +5 -5
  513. package/src/query/edit/inspector-controls/author-control.js +2 -0
  514. package/src/query/edit/inspector-controls/index.js +44 -16
  515. package/src/query/edit/inspector-controls/order-control.js +1 -0
  516. package/src/query/edit/inspector-controls/parent-control.js +1 -0
  517. package/src/query/edit/inspector-controls/sticky-control.js +1 -0
  518. package/src/query/edit/inspector-controls/taxonomy-controls.js +8 -3
  519. package/src/query/edit/query-content.js +17 -3
  520. package/src/query/edit/query-placeholder.js +1 -21
  521. package/src/query/edit/query-toolbar.js +60 -72
  522. package/src/query/editor.scss +4 -9
  523. package/src/query/index.js +40 -0
  524. package/src/query/utils.js +4 -0
  525. package/src/query/variations.js +4 -46
  526. package/src/query-pagination-numbers/edit.js +1 -0
  527. package/src/query-title/edit.js +10 -17
  528. package/src/query-title/use-archive-label.js +99 -0
  529. package/src/quote/block.json +15 -1
  530. package/src/search/block.json +3 -0
  531. package/src/search/editor.scss +1 -1
  532. package/src/site-logo/edit.js +4 -1
  533. package/src/site-tagline/block.json +6 -1
  534. package/src/site-tagline/edit.js +5 -2
  535. package/src/site-title/edit.js +4 -1
  536. package/src/site-title/index.js +6 -1
  537. package/src/social-link/edit.js +29 -3
  538. package/src/social-link/icons/soundcloud.js +1 -1
  539. package/src/social-link/socials-with-bg.scss +1 -1
  540. package/src/social-link/socials-without-bg.scss +1 -1
  541. package/src/social-links/block.json +12 -0
  542. package/src/social-links/style.scss +2 -2
  543. package/src/table/edit.js +11 -24
  544. package/src/tag-cloud/edit.js +7 -1
  545. package/src/template-part/edit/index.js +5 -3
  546. package/src/template-part/edit/inner-blocks.js +8 -5
  547. package/src/template-part/edit/placeholder.js +31 -6
  548. package/src/template-part/edit/title-modal.js +19 -5
  549. package/src/term-description/block.json +12 -0
  550. package/src/term-description/style.scss +2 -0
  551. package/src/utils/hooks.js +19 -2
  552. package/src/video/block.json +4 -0
  553. package/src/video/edit.js +23 -8
  554. package/src/video/transforms.js +1 -1
  555. package/tsconfig.tsbuildinfo +1 -1
  556. package/build/gallery/edit-wrapper.js +0 -37
  557. package/build/gallery/edit-wrapper.js.map +0 -1
  558. package/build/gallery/v1/constants.js +0 -10
  559. package/build/gallery/v1/constants.js.map +0 -1
  560. package/build/gallery/v1/edit.js +0 -399
  561. package/build/gallery/v1/edit.js.map +0 -1
  562. package/build/gallery/v1/gallery-button.native.js +0 -55
  563. package/build/gallery/v1/gallery-button.native.js.map +0 -1
  564. package/build/gallery/v1/gallery-image.js +0 -285
  565. package/build/gallery/v1/gallery-image.js.map +0 -1
  566. package/build/gallery/v1/gallery-image.native.js +0 -297
  567. package/build/gallery/v1/gallery-image.native.js.map +0 -1
  568. package/build/gallery/v1/gallery.js +0 -112
  569. package/build/gallery/v1/gallery.js.map +0 -1
  570. package/build/gallery/v1/gallery.native.js +0 -139
  571. package/build/gallery/v1/gallery.native.js.map +0 -1
  572. package/build/gallery/v1/save.js +0 -81
  573. package/build/gallery/v1/save.js.map +0 -1
  574. package/build/gallery/v1/shared.js +0 -17
  575. package/build/gallery/v1/shared.js.map +0 -1
  576. package/build/gallery/v1/tiles.native.js +0 -83
  577. package/build/gallery/v1/tiles.native.js.map +0 -1
  578. package/build/list-item/hooks/use-split.js +0 -39
  579. package/build/list-item/hooks/use-split.js.map +0 -1
  580. package/build/utils/constants.js +0 -15
  581. package/build/utils/constants.js.map +0 -1
  582. package/build-module/gallery/edit-wrapper.js +0 -31
  583. package/build-module/gallery/edit-wrapper.js.map +0 -1
  584. package/build-module/gallery/v1/constants.js +0 -4
  585. package/build-module/gallery/v1/constants.js.map +0 -1
  586. package/build-module/gallery/v1/edit.js +0 -393
  587. package/build-module/gallery/v1/edit.js.map +0 -1
  588. package/build-module/gallery/v1/gallery-button.native.js +0 -46
  589. package/build-module/gallery/v1/gallery-button.native.js.map +0 -1
  590. package/build-module/gallery/v1/gallery-image.js +0 -279
  591. package/build-module/gallery/v1/gallery-image.js.map +0 -1
  592. package/build-module/gallery/v1/gallery-image.native.js +0 -291
  593. package/build-module/gallery/v1/gallery-image.native.js.map +0 -1
  594. package/build-module/gallery/v1/gallery.js +0 -104
  595. package/build-module/gallery/v1/gallery.js.map +0 -1
  596. package/build-module/gallery/v1/gallery.native.js +0 -131
  597. package/build-module/gallery/v1/gallery.native.js.map +0 -1
  598. package/build-module/gallery/v1/save.js +0 -74
  599. package/build-module/gallery/v1/save.js.map +0 -1
  600. package/build-module/gallery/v1/shared.js +0 -10
  601. package/build-module/gallery/v1/shared.js.map +0 -1
  602. package/build-module/gallery/v1/tiles.native.js +0 -75
  603. package/build-module/gallery/v1/tiles.native.js.map +0 -1
  604. package/build-module/list-item/hooks/use-split.js +0 -32
  605. package/build-module/list-item/hooks/use-split.js.map +0 -1
  606. package/build-module/utils/constants.js +0 -9
  607. package/build-module/utils/constants.js.map +0 -1
  608. package/src/gallery/edit-wrapper.js +0 -27
  609. package/src/gallery/v1/constants.js +0 -3
  610. package/src/gallery/v1/edit.js +0 -450
  611. package/src/gallery/v1/gallery-button.native.js +0 -47
  612. package/src/gallery/v1/gallery-image-style.native.scss +0 -109
  613. package/src/gallery/v1/gallery-image.js +0 -293
  614. package/src/gallery/v1/gallery-image.native.js +0 -348
  615. package/src/gallery/v1/gallery-styles.native.scss +0 -8
  616. package/src/gallery/v1/gallery.js +0 -125
  617. package/src/gallery/v1/gallery.native.js +0 -162
  618. package/src/gallery/v1/save.js +0 -98
  619. package/src/gallery/v1/shared.js +0 -19
  620. package/src/gallery/v1/tiles-styles.native.scss +0 -11
  621. package/src/gallery/v1/tiles.native.js +0 -79
  622. package/src/list-item/hooks/use-split.js +0 -33
  623. package/src/utils/constants.js +0 -8
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","AlignmentControl","BlockControls","InspectorControls","useBlockProps","Warning","HeadingLevelDropdown","store","blockEditorStore","ToggleControl","PanelBody","__","sprintf","useSelect","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SUPPORTED_TYPES","QueryTitleEdit","attributes","type","level","textAlign","showPrefix","showSearchTerm","setAttributes","archiveTypeTitle","archiveNameLabel","select","getSettings","__experimentalArchiveTitleNameLabel","__experimentalArchiveTitleTypeLabel","TagName","blockProps","className","includes","children","titleElement","title","__nextHasNoMarginBottom","label","onChange","checked","group","value","newLevel","nextAlign"],"sources":["@wordpress/block-library/src/query-title/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tWarning,\n\tHeadingLevelDropdown,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { ToggleControl, PanelBody } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\n\nconst SUPPORTED_TYPES = [ 'archive', 'search' ];\n\nexport default function QueryTitleEdit( {\n\tattributes: { type, level, textAlign, showPrefix, showSearchTerm },\n\tsetAttributes,\n} ) {\n\tconst { archiveTypeTitle, archiveNameLabel } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst {\n\t\t\t__experimentalArchiveTitleNameLabel,\n\t\t\t__experimentalArchiveTitleTypeLabel,\n\t\t} = getSettings();\n\t\treturn {\n\t\t\tarchiveTypeTitle: __experimentalArchiveTitleTypeLabel,\n\t\t\tarchiveNameLabel: __experimentalArchiveTitleNameLabel,\n\t\t};\n\t} );\n\n\tconst TagName = `h${ level }`;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( 'wp-block-query-title__placeholder', {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tif ( ! SUPPORTED_TYPES.includes( type ) ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>{ __( 'Provided type is not supported.' ) }</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tlet titleElement;\n\tif ( type === 'archive' ) {\n\t\tlet title;\n\t\tif ( archiveTypeTitle ) {\n\t\t\tif ( showPrefix ) {\n\t\t\t\tif ( archiveNameLabel ) {\n\t\t\t\t\ttitle = sprintf(\n\t\t\t\t\t\t/* translators: 1: Archive type title e.g: \"Category\", 2: Label of the archive e.g: \"Shoes\" */\n\t\t\t\t\t\t__( '%1$s: %2$s' ),\n\t\t\t\t\t\tarchiveTypeTitle,\n\t\t\t\t\t\tarchiveNameLabel\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\ttitle = sprintf(\n\t\t\t\t\t\t/* translators: %s: Archive type title e.g: \"Category\", \"Tag\"... */\n\t\t\t\t\t\t__( '%s: Name' ),\n\t\t\t\t\t\tarchiveTypeTitle\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else if ( archiveNameLabel ) {\n\t\t\t\ttitle = archiveNameLabel;\n\t\t\t} else {\n\t\t\t\ttitle = sprintf(\n\t\t\t\t\t/* translators: %s: Archive type title e.g: \"Category\", \"Tag\"... */\n\t\t\t\t\t__( '%s name' ),\n\t\t\t\t\tarchiveTypeTitle\n\t\t\t\t);\n\t\t\t}\n\t\t} else {\n\t\t\ttitle = showPrefix\n\t\t\t\t? __( 'Archive type: Name' )\n\t\t\t\t: __( 'Archive title' );\n\t\t}\n\n\t\ttitleElement = (\n\t\t\t<>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Show archive type in title' ) }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { showPrefix: ! showPrefix } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchecked={ showPrefix }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t\t<TagName { ...blockProps }>{ title }</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\tif ( type === 'search' ) {\n\t\ttitleElement = (\n\t\t\t<>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Show search term in title' ) }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tshowSearchTerm: ! showSearchTerm,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchecked={ showSearchTerm }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t{ showSearchTerm\n\t\t\t\t\t\t? __( 'Search results for: “search term”' )\n\t\t\t\t\t\t: __( 'Search results' ) }\n\t\t\t\t</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<HeadingLevelDropdown\n\t\t\t\t\tvalue={ level }\n\t\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t{ titleElement }\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;AACA,SACCC,gBAAgB,EAChBC,aAAa,EACbC,iBAAiB,EACjBC,aAAa,EACbC,OAAO,EACPC,oBAAoB,EACpBC,KAAK,IAAIC,gBAAgB,QACnB,yBAAyB;AAChC,SAASC,aAAa,EAAEC,SAAS,QAAQ,uBAAuB;AAChE,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,SAAS,QAAQ,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAE5C,MAAMC,eAAe,GAAG,CAAE,SAAS,EAAE,QAAQ,CAAE;AAE/C,eAAe,SAASC,cAAcA,CAAE;EACvCC,UAAU,EAAE;IAAEC,IAAI;IAAEC,KAAK;IAAEC,SAAS;IAAEC,UAAU;IAAEC;EAAe,CAAC;EAClEC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC,gBAAgB;IAAEC;EAAiB,CAAC,GAAGjB,SAAS,CAAIkB,MAAM,IAAM;IACvE,MAAM;MAAEC;IAAY,CAAC,GAAGD,MAAM,CAAEvB,gBAAiB,CAAC;IAClD,MAAM;MACLyB,mCAAmC;MACnCC;IACD,CAAC,GAAGF,WAAW,CAAC,CAAC;IACjB,OAAO;MACNH,gBAAgB,EAAEK,mCAAmC;MACrDJ,gBAAgB,EAAEG;IACnB,CAAC;EACF,CAAE,CAAC;EAEH,MAAME,OAAO,GAAI,IAAIX,KAAO,EAAC;EAC7B,MAAMY,UAAU,GAAGhC,aAAa,CAAE;IACjCiC,SAAS,EAAErC,IAAI,CAAE,mCAAmC,EAAE;MACrD,CAAG,kBAAkByB,SAAW,EAAC,GAAIA;IACtC,CAAE;EACH,CAAE,CAAC;EAEH,IAAK,CAAEL,eAAe,CAACkB,QAAQ,CAAEf,IAAK,CAAC,EAAG;IACzC,oBACCR,IAAA;MAAA,GAAUqB,UAAU;MAAAG,QAAA,eACnBxB,IAAA,CAACV,OAAO;QAAAkC,QAAA,EAAG5B,EAAE,CAAE,iCAAkC;MAAC,CAAW;IAAC,CAC1D,CAAC;EAER;EAEA,IAAI6B,YAAY;EAChB,IAAKjB,IAAI,KAAK,SAAS,EAAG;IACzB,IAAIkB,KAAK;IACT,IAAKZ,gBAAgB,EAAG;MACvB,IAAKH,UAAU,EAAG;QACjB,IAAKI,gBAAgB,EAAG;UACvBW,KAAK,GAAG7B,OAAO,EACd;UACAD,EAAE,CAAE,YAAa,CAAC,EAClBkB,gBAAgB,EAChBC,gBACD,CAAC;QACF,CAAC,MAAM;UACNW,KAAK,GAAG7B,OAAO,EACd;UACAD,EAAE,CAAE,UAAW,CAAC,EAChBkB,gBACD,CAAC;QACF;MACD,CAAC,MAAM,IAAKC,gBAAgB,EAAG;QAC9BW,KAAK,GAAGX,gBAAgB;MACzB,CAAC,MAAM;QACNW,KAAK,GAAG7B,OAAO,EACd;QACAD,EAAE,CAAE,SAAU,CAAC,EACfkB,gBACD,CAAC;MACF;IACD,CAAC,MAAM;MACNY,KAAK,GAAGf,UAAU,GACff,EAAE,CAAE,oBAAqB,CAAC,GAC1BA,EAAE,CAAE,eAAgB,CAAC;IACzB;IAEA6B,YAAY,gBACXrB,KAAA,CAAAF,SAAA;MAAAsB,QAAA,gBACCxB,IAAA,CAACZ,iBAAiB;QAAAoC,QAAA,eACjBxB,IAAA,CAACL,SAAS;UAAC+B,KAAK,EAAG9B,EAAE,CAAE,UAAW,CAAG;UAAA4B,QAAA,eACpCxB,IAAA,CAACN,aAAa;YACbiC,uBAAuB;YACvBC,KAAK,EAAGhC,EAAE,CAAE,4BAA6B,CAAG;YAC5CiC,QAAQ,EAAGA,CAAA,KACVhB,aAAa,CAAE;cAAEF,UAAU,EAAE,CAAEA;YAAW,CAAE,CAC5C;YACDmB,OAAO,EAAGnB;UAAY,CACtB;QAAC,CACQ;MAAC,CACM,CAAC,eACpBX,IAAA,CAACoB,OAAO;QAAA,GAAMC,UAAU;QAAAG,QAAA,EAAKE;MAAK,CAAW,CAAC;IAAA,CAC7C,CACF;EACF;EAEA,IAAKlB,IAAI,KAAK,QAAQ,EAAG;IACxBiB,YAAY,gBACXrB,KAAA,CAAAF,SAAA;MAAAsB,QAAA,gBACCxB,IAAA,CAACZ,iBAAiB;QAAAoC,QAAA,eACjBxB,IAAA,CAACL,SAAS;UAAC+B,KAAK,EAAG9B,EAAE,CAAE,UAAW,CAAG;UAAA4B,QAAA,eACpCxB,IAAA,CAACN,aAAa;YACbiC,uBAAuB;YACvBC,KAAK,EAAGhC,EAAE,CAAE,2BAA4B,CAAG;YAC3CiC,QAAQ,EAAGA,CAAA,KACVhB,aAAa,CAAE;cACdD,cAAc,EAAE,CAAEA;YACnB,CAAE,CACF;YACDkB,OAAO,EAAGlB;UAAgB,CAC1B;QAAC,CACQ;MAAC,CACM,CAAC,eAEpBZ,IAAA,CAACoB,OAAO;QAAA,GAAMC,UAAU;QAAAG,QAAA,EACrBZ,cAAc,GACbhB,EAAE,CAAE,mCAAoC,CAAC,GACzCA,EAAE,CAAE,gBAAiB;MAAC,CACjB,CAAC;IAAA,CACT,CACF;EACF;EAEA,oBACCQ,KAAA,CAAAF,SAAA;IAAAsB,QAAA,gBACCpB,KAAA,CAACjB,aAAa;MAAC4C,KAAK,EAAC,OAAO;MAAAP,QAAA,gBAC3BxB,IAAA,CAACT,oBAAoB;QACpByC,KAAK,EAAGvB,KAAO;QACfoB,QAAQ,EAAKI,QAAQ,IACpBpB,aAAa,CAAE;UAAEJ,KAAK,EAAEwB;QAAS,CAAE;MACnC,CACD,CAAC,eACFjC,IAAA,CAACd,gBAAgB;QAChB8C,KAAK,EAAGtB,SAAW;QACnBmB,QAAQ,EAAKK,SAAS,IAAM;UAC3BrB,aAAa,CAAE;YAAEH,SAAS,EAAEwB;UAAU,CAAE,CAAC;QAC1C;MAAG,CACH,CAAC;IAAA,CACY,CAAC,EACdT,YAAY;EAAA,CACb,CAAC;AAEL","ignoreList":[]}
1
+ {"version":3,"names":["clsx","AlignmentControl","BlockControls","InspectorControls","useBlockProps","Warning","HeadingLevelDropdown","ToggleControl","PanelBody","__","sprintf","useArchiveLabel","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SUPPORTED_TYPES","QueryTitleEdit","attributes","type","level","textAlign","showPrefix","showSearchTerm","setAttributes","archiveTypeLabel","archiveNameLabel","TagName","blockProps","className","includes","children","titleElement","title","__nextHasNoMarginBottom","label","onChange","checked","group","value","newLevel","nextAlign"],"sources":["@wordpress/block-library/src/query-title/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tWarning,\n\tHeadingLevelDropdown,\n} from '@wordpress/block-editor';\nimport { ToggleControl, PanelBody } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { useArchiveLabel } from './use-archive-label';\n\nconst SUPPORTED_TYPES = [ 'archive', 'search' ];\n\nexport default function QueryTitleEdit( {\n\tattributes: { type, level, textAlign, showPrefix, showSearchTerm },\n\tsetAttributes,\n} ) {\n\tconst { archiveTypeLabel, archiveNameLabel } = useArchiveLabel();\n\n\tconst TagName = `h${ level }`;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( 'wp-block-query-title__placeholder', {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tif ( ! SUPPORTED_TYPES.includes( type ) ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>{ __( 'Provided type is not supported.' ) }</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tlet titleElement;\n\tif ( type === 'archive' ) {\n\t\tlet title;\n\t\tif ( archiveTypeLabel ) {\n\t\t\tif ( showPrefix ) {\n\t\t\t\tif ( archiveNameLabel ) {\n\t\t\t\t\ttitle = sprintf(\n\t\t\t\t\t\t/* translators: 1: Archive type title e.g: \"Category\", 2: Label of the archive e.g: \"Shoes\" */\n\t\t\t\t\t\t__( '%1$s: %2$s' ),\n\t\t\t\t\t\tarchiveTypeLabel,\n\t\t\t\t\t\tarchiveNameLabel\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\ttitle = sprintf(\n\t\t\t\t\t\t/* translators: %s: Archive type title e.g: \"Category\", \"Tag\"... */\n\t\t\t\t\t\t__( '%s: Name' ),\n\t\t\t\t\t\tarchiveTypeLabel\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else if ( archiveNameLabel ) {\n\t\t\t\ttitle = archiveNameLabel;\n\t\t\t} else {\n\t\t\t\ttitle = sprintf(\n\t\t\t\t\t/* translators: %s: Archive type title e.g: \"Category\", \"Tag\"... */\n\t\t\t\t\t__( '%s name' ),\n\t\t\t\t\tarchiveTypeLabel\n\t\t\t\t);\n\t\t\t}\n\t\t} else {\n\t\t\ttitle = showPrefix\n\t\t\t\t? __( 'Archive type: Name' )\n\t\t\t\t: __( 'Archive title' );\n\t\t}\n\n\t\ttitleElement = (\n\t\t\t<>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Show archive type in title' ) }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { showPrefix: ! showPrefix } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchecked={ showPrefix }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t\t<TagName { ...blockProps }>{ title }</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\tif ( type === 'search' ) {\n\t\ttitleElement = (\n\t\t\t<>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Show search term in title' ) }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tshowSearchTerm: ! showSearchTerm,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchecked={ showSearchTerm }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t{ showSearchTerm\n\t\t\t\t\t\t? __( 'Search results for: “search term”' )\n\t\t\t\t\t\t: __( 'Search results' ) }\n\t\t\t\t</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<HeadingLevelDropdown\n\t\t\t\t\tvalue={ level }\n\t\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t{ titleElement }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { store as coreStore } from '@wordpress/core-data';
5
+ import { useSelect } from '@wordpress/data';
6
+ export function useArchiveLabel() {
7
+ const templateSlug = useSelect(select => {
8
+ // @wordpress/block-library should not depend on @wordpress/editor.
9
+ // Blocks can be loaded into a *non-post* block editor, so to avoid
10
+ // declaring @wordpress/editor as a dependency, we must access its
11
+ // store by string.
12
+ // The solution here is to split WP specific blocks from generic blocks.
13
+ // eslint-disable-next-line @wordpress/data-no-store-string-literals
14
+ const {
15
+ getCurrentPostId,
16
+ getCurrentPostType,
17
+ getCurrentTemplateId
18
+ } = select('core/editor');
19
+ const currentPostType = getCurrentPostType();
20
+ const templateId = getCurrentTemplateId() || (currentPostType === 'wp_template' ? getCurrentPostId() : null);
21
+ return templateId ? select(coreStore).getEditedEntityRecord('postType', 'wp_template', templateId)?.slug : null;
22
+ }, []);
23
+ const taxonomyMatches = templateSlug?.match(/^(category|tag|taxonomy-([^-]+))$|^(((category|tag)|taxonomy-([^-]+))-(.+))$/);
24
+ let taxonomy;
25
+ let term;
26
+ let isAuthor = false;
27
+ let authorSlug;
28
+ if (taxonomyMatches) {
29
+ // If is for a all taxonomies of a type
30
+ if (taxonomyMatches[1]) {
31
+ taxonomy = taxonomyMatches[2] ? taxonomyMatches[2] : taxonomyMatches[1];
32
+ }
33
+ // If is for a all taxonomies of a type
34
+ else if (taxonomyMatches[3]) {
35
+ taxonomy = taxonomyMatches[6] ? taxonomyMatches[6] : taxonomyMatches[4];
36
+ term = taxonomyMatches[7];
37
+ }
38
+ taxonomy = taxonomy === 'tag' ? 'post_tag' : taxonomy;
39
+
40
+ //getTaxonomy( 'category' );
41
+ //wp.data.select('core').getEntityRecords( 'taxonomy', 'category', {slug: 'newcat'} );
42
+ } else {
43
+ const authorMatches = templateSlug?.match(/^(author)$|^author-(.+)$/);
44
+ if (authorMatches) {
45
+ isAuthor = true;
46
+ if (authorMatches[2]) {
47
+ authorSlug = authorMatches[2];
48
+ }
49
+ }
50
+ }
51
+ return useSelect(select => {
52
+ const {
53
+ getEntityRecords,
54
+ getTaxonomy,
55
+ getAuthors
56
+ } = select(coreStore);
57
+ let archiveTypeLabel;
58
+ let archiveNameLabel;
59
+ if (taxonomy) {
60
+ archiveTypeLabel = getTaxonomy(taxonomy)?.labels?.singular_name;
61
+ }
62
+ if (term) {
63
+ const records = getEntityRecords('taxonomy', taxonomy, {
64
+ slug: term,
65
+ per_page: 1
66
+ });
67
+ if (records && records[0]) {
68
+ archiveNameLabel = records[0].name;
69
+ }
70
+ }
71
+ if (isAuthor) {
72
+ archiveTypeLabel = 'Author';
73
+ if (authorSlug) {
74
+ const authorRecords = getAuthors({
75
+ slug: authorSlug
76
+ });
77
+ if (authorRecords && authorRecords[0]) {
78
+ archiveNameLabel = authorRecords[0].name;
79
+ }
80
+ }
81
+ }
82
+ return {
83
+ archiveTypeLabel,
84
+ archiveNameLabel
85
+ };
86
+ }, [authorSlug, isAuthor, taxonomy, term]);
87
+ }
88
+ //# sourceMappingURL=use-archive-label.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["store","coreStore","useSelect","useArchiveLabel","templateSlug","select","getCurrentPostId","getCurrentPostType","getCurrentTemplateId","currentPostType","templateId","getEditedEntityRecord","slug","taxonomyMatches","match","taxonomy","term","isAuthor","authorSlug","authorMatches","getEntityRecords","getTaxonomy","getAuthors","archiveTypeLabel","archiveNameLabel","labels","singular_name","records","per_page","name","authorRecords"],"sources":["@wordpress/block-library/src/query-title/use-archive-label.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\n\nexport function useArchiveLabel() {\n\tconst templateSlug = useSelect( ( select ) => {\n\t\t// @wordpress/block-library should not depend on @wordpress/editor.\n\t\t// Blocks can be loaded into a *non-post* block editor, so to avoid\n\t\t// declaring @wordpress/editor as a dependency, we must access its\n\t\t// store by string.\n\t\t// The solution here is to split WP specific blocks from generic blocks.\n\t\t// eslint-disable-next-line @wordpress/data-no-store-string-literals\n\t\tconst { getCurrentPostId, getCurrentPostType, getCurrentTemplateId } =\n\t\t\tselect( 'core/editor' );\n\t\tconst currentPostType = getCurrentPostType();\n\t\tconst templateId =\n\t\t\tgetCurrentTemplateId() ||\n\t\t\t( currentPostType === 'wp_template' ? getCurrentPostId() : null );\n\n\t\treturn templateId\n\t\t\t? select( coreStore ).getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'wp_template',\n\t\t\t\t\ttemplateId\n\t\t\t )?.slug\n\t\t\t: null;\n\t}, [] );\n\tconst taxonomyMatches = templateSlug?.match(\n\t\t/^(category|tag|taxonomy-([^-]+))$|^(((category|tag)|taxonomy-([^-]+))-(.+))$/\n\t);\n\tlet taxonomy;\n\tlet term;\n\tlet isAuthor = false;\n\tlet authorSlug;\n\tif ( taxonomyMatches ) {\n\t\t// If is for a all taxonomies of a type\n\t\tif ( taxonomyMatches[ 1 ] ) {\n\t\t\ttaxonomy = taxonomyMatches[ 2 ]\n\t\t\t\t? taxonomyMatches[ 2 ]\n\t\t\t\t: taxonomyMatches[ 1 ];\n\t\t}\n\t\t// If is for a all taxonomies of a type\n\t\telse if ( taxonomyMatches[ 3 ] ) {\n\t\t\ttaxonomy = taxonomyMatches[ 6 ]\n\t\t\t\t? taxonomyMatches[ 6 ]\n\t\t\t\t: taxonomyMatches[ 4 ];\n\t\t\tterm = taxonomyMatches[ 7 ];\n\t\t}\n\t\ttaxonomy = taxonomy === 'tag' ? 'post_tag' : taxonomy;\n\n\t\t//getTaxonomy( 'category' );\n\t\t//wp.data.select('core').getEntityRecords( 'taxonomy', 'category', {slug: 'newcat'} );\n\t} else {\n\t\tconst authorMatches = templateSlug?.match( /^(author)$|^author-(.+)$/ );\n\t\tif ( authorMatches ) {\n\t\t\tisAuthor = true;\n\t\t\tif ( authorMatches[ 2 ] ) {\n\t\t\t\tauthorSlug = authorMatches[ 2 ];\n\t\t\t}\n\t\t}\n\t}\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomy, getAuthors } =\n\t\t\t\tselect( coreStore );\n\t\t\tlet archiveTypeLabel;\n\t\t\tlet archiveNameLabel;\n\t\t\tif ( taxonomy ) {\n\t\t\t\tarchiveTypeLabel =\n\t\t\t\t\tgetTaxonomy( taxonomy )?.labels?.singular_name;\n\t\t\t}\n\t\t\tif ( term ) {\n\t\t\t\tconst records = getEntityRecords( 'taxonomy', taxonomy, {\n\t\t\t\t\tslug: term,\n\t\t\t\t\tper_page: 1,\n\t\t\t\t} );\n\t\t\t\tif ( records && records[ 0 ] ) {\n\t\t\t\t\tarchiveNameLabel = records[ 0 ].name;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( isAuthor ) {\n\t\t\t\tarchiveTypeLabel = 'Author';\n\t\t\t\tif ( authorSlug ) {\n\t\t\t\t\tconst authorRecords = getAuthors( { slug: authorSlug } );\n\t\t\t\t\tif ( authorRecords && authorRecords[ 0 ] ) {\n\t\t\t\t\t\tarchiveNameLabel = authorRecords[ 0 ].name;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tarchiveTypeLabel,\n\t\t\t\tarchiveNameLabel,\n\t\t\t};\n\t\t},\n\t\t[ authorSlug, isAuthor, taxonomy, term ]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,SAAS,QAAQ,iBAAiB;AAE3C,OAAO,SAASC,eAAeA,CAAA,EAAG;EACjC,MAAMC,YAAY,GAAGF,SAAS,CAAIG,MAAM,IAAM;IAC7C;IACA;IACA;IACA;IACA;IACA;IACA,MAAM;MAAEC,gBAAgB;MAAEC,kBAAkB;MAAEC;IAAqB,CAAC,GACnEH,MAAM,CAAE,aAAc,CAAC;IACxB,MAAMI,eAAe,GAAGF,kBAAkB,CAAC,CAAC;IAC5C,MAAMG,UAAU,GACfF,oBAAoB,CAAC,CAAC,KACpBC,eAAe,KAAK,aAAa,GAAGH,gBAAgB,CAAC,CAAC,GAAG,IAAI,CAAE;IAElE,OAAOI,UAAU,GACdL,MAAM,CAAEJ,SAAU,CAAC,CAACU,qBAAqB,CACzC,UAAU,EACV,aAAa,EACbD,UACA,CAAC,EAAEE,IAAI,GACP,IAAI;EACR,CAAC,EAAE,EAAG,CAAC;EACP,MAAMC,eAAe,GAAGT,YAAY,EAAEU,KAAK,CAC1C,8EACD,CAAC;EACD,IAAIC,QAAQ;EACZ,IAAIC,IAAI;EACR,IAAIC,QAAQ,GAAG,KAAK;EACpB,IAAIC,UAAU;EACd,IAAKL,eAAe,EAAG;IACtB;IACA,IAAKA,eAAe,CAAE,CAAC,CAAE,EAAG;MAC3BE,QAAQ,GAAGF,eAAe,CAAE,CAAC,CAAE,GAC5BA,eAAe,CAAE,CAAC,CAAE,GACpBA,eAAe,CAAE,CAAC,CAAE;IACxB;IACA;IAAA,KACK,IAAKA,eAAe,CAAE,CAAC,CAAE,EAAG;MAChCE,QAAQ,GAAGF,eAAe,CAAE,CAAC,CAAE,GAC5BA,eAAe,CAAE,CAAC,CAAE,GACpBA,eAAe,CAAE,CAAC,CAAE;MACvBG,IAAI,GAAGH,eAAe,CAAE,CAAC,CAAE;IAC5B;IACAE,QAAQ,GAAGA,QAAQ,KAAK,KAAK,GAAG,UAAU,GAAGA,QAAQ;;IAErD;IACA;EACD,CAAC,MAAM;IACN,MAAMI,aAAa,GAAGf,YAAY,EAAEU,KAAK,CAAE,0BAA2B,CAAC;IACvE,IAAKK,aAAa,EAAG;MACpBF,QAAQ,GAAG,IAAI;MACf,IAAKE,aAAa,CAAE,CAAC,CAAE,EAAG;QACzBD,UAAU,GAAGC,aAAa,CAAE,CAAC,CAAE;MAChC;IACD;EACD;EACA,OAAOjB,SAAS,CACbG,MAAM,IAAM;IACb,MAAM;MAAEe,gBAAgB;MAAEC,WAAW;MAAEC;IAAW,CAAC,GAClDjB,MAAM,CAAEJ,SAAU,CAAC;IACpB,IAAIsB,gBAAgB;IACpB,IAAIC,gBAAgB;IACpB,IAAKT,QAAQ,EAAG;MACfQ,gBAAgB,GACfF,WAAW,CAAEN,QAAS,CAAC,EAAEU,MAAM,EAAEC,aAAa;IAChD;IACA,IAAKV,IAAI,EAAG;MACX,MAAMW,OAAO,GAAGP,gBAAgB,CAAE,UAAU,EAAEL,QAAQ,EAAE;QACvDH,IAAI,EAAEI,IAAI;QACVY,QAAQ,EAAE;MACX,CAAE,CAAC;MACH,IAAKD,OAAO,IAAIA,OAAO,CAAE,CAAC,CAAE,EAAG;QAC9BH,gBAAgB,GAAGG,OAAO,CAAE,CAAC,CAAE,CAACE,IAAI;MACrC;IACD;IACA,IAAKZ,QAAQ,EAAG;MACfM,gBAAgB,GAAG,QAAQ;MAC3B,IAAKL,UAAU,EAAG;QACjB,MAAMY,aAAa,GAAGR,UAAU,CAAE;UAAEV,IAAI,EAAEM;QAAW,CAAE,CAAC;QACxD,IAAKY,aAAa,IAAIA,aAAa,CAAE,CAAC,CAAE,EAAG;UAC1CN,gBAAgB,GAAGM,aAAa,CAAE,CAAC,CAAE,CAACD,IAAI;QAC3C;MACD;IACD;IACA,OAAO;MACNN,gBAAgB;MAChBC;IACD,CAAC;EACF,CAAC,EACD,CAAEN,UAAU,EAAED,QAAQ,EAAEF,QAAQ,EAAEC,IAAI,CACvC,CAAC;AACF","ignoreList":[]}
@@ -48,6 +48,18 @@ const metadata = {
48
48
  backgroundImage: true
49
49
  }
50
50
  },
51
+ __experimentalBorder: {
52
+ color: true,
53
+ radius: true,
54
+ style: true,
55
+ width: true,
56
+ __experimentalDefaultControls: {
57
+ color: true,
58
+ radius: true,
59
+ style: true,
60
+ width: true
61
+ }
62
+ },
51
63
  dimensions: {
52
64
  minHeight: true,
53
65
  __experimentalDefaultControls: {
@@ -82,7 +94,9 @@ const metadata = {
82
94
  allowEditing: false
83
95
  },
84
96
  spacing: {
85
- blockGap: true
97
+ blockGap: true,
98
+ padding: true,
99
+ margin: true
86
100
  },
87
101
  interactivity: {
88
102
  clientNavigation: true
@@ -1 +1 @@
1
- {"version":3,"names":["__","quote","icon","initBlock","deprecated","edit","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","value","type","source","selector","multiline","__experimentalRole","citation","textAlign","supports","anchor","html","background","backgroundImage","backgroundSize","__experimentalDefaultControls","dimensions","minHeight","__experimentalOnEnter","__experimentalOnMerge","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","color","gradients","heading","link","text","layout","allowEditing","spacing","blockGap","interactivity","clientNavigation","styles","label","isDefault","editorStyle","style","save","transforms","settings","example","innerBlocks","content","init"],"sources":["@wordpress/block-library/src/quote/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { quote as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcitation: 'Julio Cortázar',\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcontent: __( 'In quoting others, we cite ourselves.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,KAAK,IAAIC,IAAI,QAAQ,kBAAkB;;AAEhD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAC3C,OAAOC,UAAU,MAAM,cAAc;AACrC,OAAOC,IAAI,MAAM,QAAQ;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,KAAA;MAAAC,IAAA;MAAAC,MAAA;MAAAC,QAAA;MAAAC,SAAA;MAAA;MAAAC,kBAAA;IAAA;IAAAC,QAAA;MAAAL,IAAA;MAAAC,MAAA;MAAAC,QAAA;MAAAE,kBAAA;IAAA;IAAAE,SAAA;MAAAN,IAAA;IAAA;EAAA;EAAAO,QAAA;IAAAC,MAAA;IAAAC,IAAA;IAAAC,UAAA;MAAAC,eAAA;MAAAC,cAAA;MAAAC,6BAAA;QAAAF,eAAA;MAAA;IAAA;IAAAG,UAAA;MAAAC,SAAA;MAAAF,6BAAA;QAAAE,SAAA;MAAA;IAAA;IAAAC,qBAAA;IAAAC,qBAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAb,6BAAA;QAAAM,QAAA;MAAA;IAAA;IAAAQ,KAAA;MAAAC,SAAA;MAAAC,OAAA;MAAAC,IAAA;MAAAjB,6BAAA;QAAAH,UAAA;QAAAqB,IAAA;MAAA;IAAA;IAAAC,MAAA;MAAAC,YAAA;IAAA;IAAAC,OAAA;MAAAC,QAAA;IAAA;IAAAC,aAAA;MAAAC,gBAAA;IAAA;EAAA;EAAAC,MAAA;IAAA9C,IAAA;IAAA+C,KAAA;IAAAC,SAAA;EAAA;IAAAhD,IAAA;IAAA+C,KAAA;EAAA;EAAAE,WAAA;EAAAC,KAAA;AAAA;AAE1B,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAM;EAAEpD;AAAK,CAAC,GAAGH,QAAQ;AAEzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAMqD,QAAQ,GAAG;EACvB5D,IAAI;EACJ6D,OAAO,EAAE;IACRhD,UAAU,EAAE;MACXO,QAAQ,EAAE;IACX,CAAC;IACD0C,WAAW,EAAE,CACZ;MACCvD,IAAI,EAAE,gBAAgB;MACtBM,UAAU,EAAE;QACXkD,OAAO,EAAEjE,EAAE,CAAE,uCAAwC;MACtD;IACD,CAAC;EAEH,CAAC;EACD6D,UAAU;EACVxD,IAAI;EACJuD,IAAI;EACJxD;AACD,CAAC;AAED,OAAO,MAAM8D,IAAI,GAAGA,CAAA,KAAM/D,SAAS,CAAE;EAAEM,IAAI;EAAEH,QAAQ;EAAEwD;AAAS,CAAE,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["__","quote","icon","initBlock","deprecated","edit","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","value","type","source","selector","multiline","__experimentalRole","citation","textAlign","supports","anchor","html","background","backgroundImage","backgroundSize","__experimentalDefaultControls","__experimentalBorder","color","radius","style","width","dimensions","minHeight","__experimentalOnEnter","__experimentalOnMerge","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","gradients","heading","link","text","layout","allowEditing","spacing","blockGap","padding","margin","interactivity","clientNavigation","styles","label","isDefault","editorStyle","save","transforms","settings","example","innerBlocks","content","init"],"sources":["@wordpress/block-library/src/quote/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { quote as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcitation: 'Julio Cortázar',\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcontent: __( 'In quoting others, we cite ourselves.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,KAAK,IAAIC,IAAI,QAAQ,kBAAkB;;AAEhD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAC3C,OAAOC,UAAU,MAAM,cAAc;AACrC,OAAOC,IAAI,MAAM,QAAQ;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,KAAA;MAAAC,IAAA;MAAAC,MAAA;MAAAC,QAAA;MAAAC,SAAA;MAAA;MAAAC,kBAAA;IAAA;IAAAC,QAAA;MAAAL,IAAA;MAAAC,MAAA;MAAAC,QAAA;MAAAE,kBAAA;IAAA;IAAAE,SAAA;MAAAN,IAAA;IAAA;EAAA;EAAAO,QAAA;IAAAC,MAAA;IAAAC,IAAA;IAAAC,UAAA;MAAAC,eAAA;MAAAC,cAAA;MAAAC,6BAAA;QAAAF,eAAA;MAAA;IAAA;IAAAG,oBAAA;MAAAC,KAAA;MAAAC,MAAA;MAAAC,KAAA;MAAAC,KAAA;MAAAL,6BAAA;QAAAE,KAAA;QAAAC,MAAA;QAAAC,KAAA;QAAAC,KAAA;MAAA;IAAA;IAAAC,UAAA;MAAAC,SAAA;MAAAP,6BAAA;QAAAO,SAAA;MAAA;IAAA;IAAAC,qBAAA;IAAAC,qBAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAlB,6BAAA;QAAAW,QAAA;MAAA;IAAA;IAAAT,KAAA;MAAAiB,SAAA;MAAAC,OAAA;MAAAC,IAAA;MAAArB,6BAAA;QAAAH,UAAA;QAAAyB,IAAA;MAAA;IAAA;IAAAC,MAAA;MAAAC,YAAA;IAAA;IAAAC,OAAA;MAAAC,QAAA;MAAAC,OAAA;MAAAC,MAAA;IAAA;IAAAC,aAAA;MAAAC,gBAAA;IAAA;EAAA;EAAAC,MAAA;IAAApD,IAAA;IAAAqD,KAAA;IAAAC,SAAA;EAAA;IAAAtD,IAAA;IAAAqD,KAAA;EAAA;EAAAE,WAAA;EAAA9B,KAAA;AAAA;AAE1B,OAAO+B,IAAI,MAAM,QAAQ;AACzB,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAM;EAAEzD;AAAK,CAAC,GAAGH,QAAQ;AAEzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAM0D,QAAQ,GAAG;EACvBjE,IAAI;EACJkE,OAAO,EAAE;IACRrD,UAAU,EAAE;MACXO,QAAQ,EAAE;IACX,CAAC;IACD+C,WAAW,EAAE,CACZ;MACC5D,IAAI,EAAE,gBAAgB;MACtBM,UAAU,EAAE;QACXuD,OAAO,EAAEtE,EAAE,CAAE,uCAAwC;MACtD;IACD,CAAC;EAEH,CAAC;EACDkE,UAAU;EACV7D,IAAI;EACJ4D,IAAI;EACJ7D;AACD,CAAC;AAED,OAAO,MAAMmE,IAAI,GAAGA,CAAA,KAAMpE,SAAS,CAAE;EAAEM,IAAI;EAAEH,QAAQ;EAAE6D;AAAS,CAAE,CAAC","ignoreList":[]}
@@ -95,6 +95,9 @@ const metadata = {
95
95
  width: true
96
96
  }
97
97
  },
98
+ spacing: {
99
+ margin: true
100
+ },
98
101
  html: false
99
102
  },
100
103
  editorStyle: "wp-block-search-editor",
@@ -1 +1 @@
1
- {"version":3,"names":["__","search","icon","initBlock","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","label","type","__experimentalRole","showLabel","placeholder","width","widthUnit","buttonText","buttonPosition","buttonUseIcon","query","isSearchFieldHidden","supports","align","color","gradients","__experimentalSkipSerialization","__experimentalDefaultControls","background","text","interactivity","typography","__experimentalSelector","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","__experimentalBorder","radius","html","editorStyle","style","edit","variations","settings","example","viewportWidth","init"],"sources":["@wordpress/block-library/src/search/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { search as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: { buttonText: __( 'Search' ), label: __( 'Search' ) },\n\t\tviewportWidth: 400,\n\t},\n\tvariations,\n\tedit,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,MAAM,IAAIC,IAAI,QAAQ,kBAAkB;;AAEjD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,KAAA;MAAAC,IAAA;MAAAC,kBAAA;IAAA;IAAAC,SAAA;MAAAF,IAAA;MAAA;IAAA;IAAAG,WAAA;MAAAH,IAAA;MAAA;MAAAC,kBAAA;IAAA;IAAAG,KAAA;MAAAJ,IAAA;IAAA;IAAAK,SAAA;MAAAL,IAAA;IAAA;IAAAM,UAAA;MAAAN,IAAA;MAAAC,kBAAA;IAAA;IAAAM,cAAA;MAAAP,IAAA;MAAA;IAAA;IAAAQ,aAAA;MAAAR,IAAA;MAAA;IAAA;IAAAS,KAAA;MAAAT,IAAA;MAAA;IAAA;IAAAU,mBAAA;MAAAV,IAAA;MAAA;IAAA;EAAA;EAAAW,QAAA;IAAAC,KAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,+BAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;MAAA;IAAA;IAAAC,aAAA;IAAAC,UAAA;MAAAL,+BAAA;MAAAM,sBAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAb,6BAAA;QAAAM,QAAA;MAAA;IAAA;IAAAQ,oBAAA;MAAAjB,KAAA;MAAAkB,MAAA;MAAA3B,KAAA;MAAAW,+BAAA;MAAAC,6BAAA;QAAAH,KAAA;QAAAkB,MAAA;QAAA3B,KAAA;MAAA;IAAA;IAAA4B,IAAA;EAAA;EAAAC,WAAA;EAAAC,KAAA;AAAA;AAE5C,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAM;EAAE5C;AAAK,CAAC,GAAGH,QAAQ;AAEzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAM6C,QAAQ,GAAG;EACvBlD,IAAI;EACJmD,OAAO,EAAE;IACRxC,UAAU,EAAE;MAAEQ,UAAU,EAAErB,EAAE,CAAE,QAAS,CAAC;MAAEc,KAAK,EAAEd,EAAE,CAAE,QAAS;IAAE,CAAC;IACjEsD,aAAa,EAAE;EAChB,CAAC;EACDH,UAAU;EACVD;AACD,CAAC;AAED,OAAO,MAAMK,IAAI,GAAGA,CAAA,KAAMpD,SAAS,CAAE;EAAEI,IAAI;EAAEH,QAAQ;EAAEgD;AAAS,CAAE,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["__","search","icon","initBlock","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","label","type","__experimentalRole","showLabel","placeholder","width","widthUnit","buttonText","buttonPosition","buttonUseIcon","query","isSearchFieldHidden","supports","align","color","gradients","__experimentalSkipSerialization","__experimentalDefaultControls","background","text","interactivity","typography","__experimentalSelector","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","__experimentalBorder","radius","spacing","margin","html","editorStyle","style","edit","variations","settings","example","viewportWidth","init"],"sources":["@wordpress/block-library/src/search/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { search as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: { buttonText: __( 'Search' ), label: __( 'Search' ) },\n\t\tviewportWidth: 400,\n\t},\n\tvariations,\n\tedit,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,MAAM,IAAIC,IAAI,QAAQ,kBAAkB;;AAEjD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,KAAA;MAAAC,IAAA;MAAAC,kBAAA;IAAA;IAAAC,SAAA;MAAAF,IAAA;MAAA;IAAA;IAAAG,WAAA;MAAAH,IAAA;MAAA;MAAAC,kBAAA;IAAA;IAAAG,KAAA;MAAAJ,IAAA;IAAA;IAAAK,SAAA;MAAAL,IAAA;IAAA;IAAAM,UAAA;MAAAN,IAAA;MAAAC,kBAAA;IAAA;IAAAM,cAAA;MAAAP,IAAA;MAAA;IAAA;IAAAQ,aAAA;MAAAR,IAAA;MAAA;IAAA;IAAAS,KAAA;MAAAT,IAAA;MAAA;IAAA;IAAAU,mBAAA;MAAAV,IAAA;MAAA;IAAA;EAAA;EAAAW,QAAA;IAAAC,KAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,+BAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;MAAA;IAAA;IAAAC,aAAA;IAAAC,UAAA;MAAAL,+BAAA;MAAAM,sBAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAb,6BAAA;QAAAM,QAAA;MAAA;IAAA;IAAAQ,oBAAA;MAAAjB,KAAA;MAAAkB,MAAA;MAAA3B,KAAA;MAAAW,+BAAA;MAAAC,6BAAA;QAAAH,KAAA;QAAAkB,MAAA;QAAA3B,KAAA;MAAA;IAAA;IAAA4B,OAAA;MAAAC,MAAA;IAAA;IAAAC,IAAA;EAAA;EAAAC,WAAA;EAAAC,KAAA;AAAA;AAE5C,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAM;EAAE9C;AAAK,CAAC,GAAGH,QAAQ;AAEzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAM+C,QAAQ,GAAG;EACvBpD,IAAI;EACJqD,OAAO,EAAE;IACR1C,UAAU,EAAE;MAAEQ,UAAU,EAAErB,EAAE,CAAE,QAAS,CAAC;MAAEc,KAAK,EAAEd,EAAE,CAAE,QAAS;IAAE,CAAC;IACjEwD,aAAa,EAAE;EAChB,CAAC;EACDH,UAAU;EACVD;AACD,CAAC;AAED,OAAO,MAAMK,IAAI,GAAGA,CAAA,KAAMtD,SAAS,CAAE;EAAEI,IAAI;EAAEH,QAAQ;EAAEkD;AAAS,CAAE,CAAC","ignoreList":[]}
@@ -364,7 +364,10 @@ export default function LogoEdit({
364
364
  getEntityRecord,
365
365
  getEditedEntityRecord
366
366
  } = select(coreStore);
367
- const _canUserEdit = canUser('update', 'settings');
367
+ const _canUserEdit = canUser('update', {
368
+ kind: 'root',
369
+ name: 'site'
370
+ });
368
371
  const siteSettings = _canUserEdit ? getEditedEntityRecord('root', 'site') : undefined;
369
372
  const siteData = getEntityRecord('root', '__unstableBase');
370
373
  const _siteLogoId = _canUserEdit ? siteSettings?.site_logo : siteData?.site_logo;
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","isBlobURL","createInterpolateElement","useEffect","useState","__","isRTL","MenuItem","PanelBody","RangeControl","ResizableBox","Spinner","ToggleControl","ToolbarButton","Placeholder","Button","DropZone","FlexItem","__experimentalItemGroup","ItemGroup","__experimentalHStack","HStack","__experimentalTruncate","Truncate","useViewportMatch","BlockControls","InspectorControls","MediaPlaceholder","MediaUpload","MediaUploadCheck","MediaReplaceFlow","useBlockProps","store","blockEditorStore","__experimentalImageEditor","ImageEditor","useSelect","useDispatch","coreStore","crop","upload","noticesStore","MIN_SIZE","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALLOWED_MEDIA_TYPES","ACCEPT_MEDIA_STRING","SiteLogo","alt","attributes","align","width","height","isLink","linkTarget","shouldSyncIcon","isSelected","setAttributes","setLogo","logoUrl","siteUrl","logoId","iconId","setIcon","canUserEdit","isLargeViewport","isWideAligned","includes","isResizable","naturalWidth","naturalHeight","setNaturalSize","isEditingImage","setIsEditingImage","toggleSelection","imageEditing","maxWidth","title","select","settings","getSettings","siteEntities","getEntityRecord","name","onResizeStart","onResizeStop","img","children","className","src","onLoad","event","target","imgWrapper","href","rel","onClick","preventDefault","style","defaultWidth","currentWidth","ratio","currentHeight","minWidth","Math","ceil","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","canEditImage","imgEdit","id","url","onSaveImage","imageAttributes","onFinishEditing","size","showHandle","maxHeight","lockAspectRatio","enable","top","right","bottom","left","direction","elt","delta","parseInt","shouldUseNewUrl","window","__experimentalUseCustomizerSiteLogoUrl","siteIconSettingsUrl","syncSiteIconHelpText","a","__nextHasNoMarginBottom","__next40pxDefaultSize","label","onChange","newWidth","min","max","initialPosition","value","disabled","checked","undefined","help","group","icon","SiteLogoReplaceFlow","onRemoveLogo","mediaReplaceProps","allowedTypes","accept","InspectorLogoPreview","mediaItemData","itemGroupProps","alt_text","source_url","slug","logoSlug","media_details","logoMediaDetails","logoLabel","sizes","full","file","as","justify","numberOfLines","LogoEdit","siteLogoId","siteIconId","isRequestingMediaItem","canUser","getEditedEntityRecord","_canUserEdit","siteSettings","siteData","_siteLogoId","site_logo","_siteIconId","site_icon","mediaItem","getMedia","context","_isRequestingMediaItem","hasFinishedResolution","home","temporaryURL","setTemporaryURL","editEntityRecord","newValue","shouldForceSync","onInitialSelectLogo","media","onSelectLogo","createErrorNotice","onUploadError","message","type","onFilesDrop","filesList","mediaUpload","onFileChange","image","onError","mediaReplaceFlowProps","mediaURL","onSelect","controls","logoImage","isLoading","placeholder","content","placeholderClassName","preview","withIllustration","classes","blockProps","mediaInspectorPanel","isBordered","popoverProps","render","open","variant","mediaLibraryButton","showTooltip","tooltipPosition"],"sources":["@wordpress/block-library/src/site-logo/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tcreateInterpolateElement,\n\tuseEffect,\n\tuseState,\n} from '@wordpress/element';\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\tMenuItem,\n\tPanelBody,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tToggleControl,\n\tToolbarButton,\n\tPlaceholder,\n\tButton,\n\tDropZone,\n\tFlexItem,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalTruncate as Truncate,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadCheck,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalImageEditor as ImageEditor,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { crop, upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { MIN_SIZE } from '../image/constants';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\nconst ACCEPT_MEDIA_STRING = 'image/*';\n\nconst SiteLogo = ( {\n\talt,\n\tattributes: { align, width, height, isLink, linkTarget, shouldSyncIcon },\n\tisSelected,\n\tsetAttributes,\n\tsetLogo,\n\tlogoUrl,\n\tsiteUrl,\n\tlogoId,\n\ticonId,\n\tsetIcon,\n\tcanUserEdit,\n} ) => {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = [ 'wide', 'full' ].includes( align );\n\tconst isResizable = ! isWideAligned && isLargeViewport;\n\tconst [ { naturalWidth, naturalHeight }, setNaturalSize ] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst { toggleSelection } = useDispatch( blockEditorStore );\n\tconst { imageEditing, maxWidth, title } = useSelect( ( select ) => {\n\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\tconst siteEntities = select( coreStore ).getEntityRecord(\n\t\t\t'root',\n\t\t\t'__unstableBase'\n\t\t);\n\t\treturn {\n\t\t\ttitle: siteEntities?.name,\n\t\t\timageEditing: settings.imageEditing,\n\t\t\tmaxWidth: settings.maxWidth,\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t// Turn the `Use as site icon` toggle off if it is on but the logo and icon have\n\t\t// fallen out of sync. This can happen if the toggle is saved in the `on` position,\n\t\t// but changes are later made to the site icon in the Customizer.\n\t\tif ( shouldSyncIcon && logoId !== iconId ) {\n\t\t\tsetAttributes( { shouldSyncIcon: false } );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\tfunction onResizeStart() {\n\t\ttoggleSelection( false );\n\t}\n\n\tfunction onResizeStop() {\n\t\ttoggleSelection( true );\n\t}\n\n\tconst img = (\n\t\t<>\n\t\t\t<img\n\t\t\t\tclassName=\"custom-logo\"\n\t\t\t\tsrc={ logoUrl }\n\t\t\t\talt={ alt }\n\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\tsetNaturalSize( {\n\t\t\t\t\t\tnaturalWidth: event.target.naturalWidth,\n\t\t\t\t\t\tnaturalHeight: event.target.naturalHeight,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t{ isBlobURL( logoUrl ) && <Spinner /> }\n\t\t</>\n\t);\n\n\tlet imgWrapper = img;\n\n\t// Disable reason: Image itself is not meant to be interactive, but\n\t// should direct focus to block.\n\tif ( isLink ) {\n\t\timgWrapper = (\n\t\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t\t<a\n\t\t\t\thref={ siteUrl }\n\t\t\t\tclassName=\"custom-logo-link\"\n\t\t\t\trel=\"home\"\n\t\t\t\ttitle={ title }\n\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t>\n\t\t\t\t{ img }\n\t\t\t</a>\n\t\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t);\n\t}\n\n\tif ( ! isResizable || ! naturalWidth || ! naturalHeight ) {\n\t\treturn <div style={ { width, height } }>{ imgWrapper }</div>;\n\t}\n\n\t// Set the default width to a responsible size.\n\t// Note that this width is also set in the attached frontend CSS file.\n\tconst defaultWidth = 120;\n\n\tconst currentWidth = width || defaultWidth;\n\tconst ratio = naturalWidth / naturalHeight;\n\tconst currentHeight = currentWidth / ratio;\n\tconst minWidth =\n\t\tnaturalWidth < naturalHeight ? MIN_SIZE : Math.ceil( MIN_SIZE * ratio );\n\tconst minHeight =\n\t\tnaturalHeight < naturalWidth ? MIN_SIZE : Math.ceil( MIN_SIZE / ratio );\n\n\t// With the current implementation of ResizableBox, an image needs an\n\t// explicit pixel value for the max-width. In absence of being able to\n\t// set the content-width, this max-width is currently dictated by the\n\t// vanilla editor style. The following variable adds a buffer to this\n\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t// in most cases, allow you to scale the image beyond the width of the\n\t// main column, though not infinitely.\n\t// @todo It would be good to revisit this once a content-width variable\n\t// becomes available.\n\tconst maxWidthBuffer = maxWidth * 2.5;\n\n\tlet showRightHandle = false;\n\tlet showLeftHandle = false;\n\n\t/* eslint-disable no-lonely-if */\n\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\tif ( align === 'center' ) {\n\t\t// When the image is centered, show both handles.\n\t\tshowRightHandle = true;\n\t\tshowLeftHandle = true;\n\t} else if ( isRTL() ) {\n\t\t// In RTL mode the image is on the right by default.\n\t\t// Show the right handle and hide the left handle only when it is\n\t\t// aligned left. Otherwise always show the left handle.\n\t\tif ( align === 'left' ) {\n\t\t\tshowRightHandle = true;\n\t\t} else {\n\t\t\tshowLeftHandle = true;\n\t\t}\n\t} else {\n\t\t// Show the left handle and hide the right handle only when the\n\t\t// image is aligned right. Otherwise always show the right handle.\n\t\tif ( align === 'right' ) {\n\t\t\tshowLeftHandle = true;\n\t\t} else {\n\t\t\tshowRightHandle = true;\n\t\t}\n\t}\n\t/* eslint-enable no-lonely-if */\n\n\tconst canEditImage =\n\t\tlogoId && naturalWidth && naturalHeight && imageEditing;\n\n\tconst imgEdit =\n\t\tcanEditImage && isEditingImage ? (\n\t\t\t<ImageEditor\n\t\t\t\tid={ logoId }\n\t\t\t\turl={ logoUrl }\n\t\t\t\twidth={ currentWidth }\n\t\t\t\theight={ currentHeight }\n\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\tonSaveImage={ ( imageAttributes ) => {\n\t\t\t\t\tsetLogo( imageAttributes.id );\n\t\t\t\t} }\n\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t} }\n\t\t\t/>\n\t\t) : (\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: currentWidth,\n\t\t\t\t\theight: currentHeight,\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxWidthBuffer }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxWidthBuffer / ratio }\n\t\t\t\tlockAspectRatio\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: showRightHandle,\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: showLeftHandle,\n\t\t\t\t} }\n\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( currentWidth + delta.width, 10 ),\n\t\t\t\t\t\theight: parseInt( currentHeight + delta.height, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ imgWrapper }\n\t\t\t</ResizableBox>\n\t\t);\n\n\t// Support the previous location for the Site Icon settings. To be removed\n\t// when the required WP core version for Gutenberg is >= 6.5.0.\n\tconst shouldUseNewUrl = ! window?.__experimentalUseCustomizerSiteLogoUrl;\n\n\tconst siteIconSettingsUrl = shouldUseNewUrl\n\t\t? siteUrl + '/wp-admin/options-general.php'\n\t\t: siteUrl + '/wp-admin/customize.php?autofocus[section]=title_tagline';\n\n\tconst syncSiteIconHelpText = createInterpolateElement(\n\t\t__(\n\t\t\t'Site Icons are what you see in browser tabs, bookmark bars, and within the WordPress mobile apps. To use a custom icon that is different from your site logo, use the <a>Site Icon settings</a>.'\n\t\t),\n\t\t{\n\t\t\ta: (\n\t\t\t\t// eslint-disable-next-line jsx-a11y/anchor-has-content\n\t\t\t\t<a\n\t\t\t\t\thref={ siteIconSettingsUrl }\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t/>\n\t\t\t),\n\t\t}\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Image width' ) }\n\t\t\t\t\t\tonChange={ ( newWidth ) =>\n\t\t\t\t\t\t\tsetAttributes( { width: newWidth } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ minWidth }\n\t\t\t\t\t\tmax={ maxWidthBuffer }\n\t\t\t\t\t\tinitialPosition={ Math.min(\n\t\t\t\t\t\t\tdefaultWidth,\n\t\t\t\t\t\t\tmaxWidthBuffer\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\t\tdisabled={ ! isResizable }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link image to home' ) }\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\t{ isLink && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canUserEdit && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Use as Site Icon' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( { shouldSyncIcon: value } );\n\t\t\t\t\t\t\t\t\tsetIcon( value ? logoId : undefined );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tchecked={ !! shouldSyncIcon }\n\t\t\t\t\t\t\t\thelp={ syncSiteIconHelpText }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ canEditImage && ! isEditingImage && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ imgEdit }\n\t\t</>\n\t);\n};\n\n// This is a light wrapper around MediaReplaceFlow because the block has two\n// different MediaReplaceFlows, one for the inspector and one for the toolbar.\nfunction SiteLogoReplaceFlow( { onRemoveLogo, ...mediaReplaceProps } ) {\n\treturn (\n\t\t<MediaReplaceFlow\n\t\t\t{ ...mediaReplaceProps }\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t>\n\t\t\t<MenuItem onClick={ onRemoveLogo }>{ __( 'Reset' ) }</MenuItem>\n\t\t</MediaReplaceFlow>\n\t);\n}\n\nconst InspectorLogoPreview = ( { mediaItemData = {}, itemGroupProps } ) => {\n\tconst {\n\t\talt_text: alt,\n\t\tsource_url: logoUrl,\n\t\tslug: logoSlug,\n\t\tmedia_details: logoMediaDetails,\n\t} = mediaItemData;\n\tconst logoLabel = logoMediaDetails?.sizes?.full?.file || logoSlug;\n\treturn (\n\t\t<ItemGroup { ...itemGroupProps } as=\"span\">\n\t\t\t<HStack justify=\"flex-start\" as=\"span\">\n\t\t\t\t<img src={ logoUrl } alt={ alt } />\n\t\t\t\t<FlexItem as=\"span\">\n\t\t\t\t\t<Truncate\n\t\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\t\tclassName=\"block-library-site-logo__inspector-media-replace-title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ logoLabel }\n\t\t\t\t\t</Truncate>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</ItemGroup>\n\t);\n};\n\nexport default function LogoEdit( {\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tisSelected,\n} ) {\n\tconst { width, shouldSyncIcon } = attributes;\n\n\tconst {\n\t\tsiteLogoId,\n\t\tcanUserEdit,\n\t\turl,\n\t\tsiteIconId,\n\t\tmediaItemData,\n\t\tisRequestingMediaItem,\n\t} = useSelect( ( select ) => {\n\t\tconst { canUser, getEntityRecord, getEditedEntityRecord } =\n\t\t\tselect( coreStore );\n\t\tconst _canUserEdit = canUser( 'update', 'settings' );\n\t\tconst siteSettings = _canUserEdit\n\t\t\t? getEditedEntityRecord( 'root', 'site' )\n\t\t\t: undefined;\n\t\tconst siteData = getEntityRecord( 'root', '__unstableBase' );\n\t\tconst _siteLogoId = _canUserEdit\n\t\t\t? siteSettings?.site_logo\n\t\t\t: siteData?.site_logo;\n\t\tconst _siteIconId = siteSettings?.site_icon;\n\t\tconst mediaItem =\n\t\t\t_siteLogoId &&\n\t\t\tselect( coreStore ).getMedia( _siteLogoId, {\n\t\t\t\tcontext: 'view',\n\t\t\t} );\n\t\tconst _isRequestingMediaItem =\n\t\t\t_siteLogoId &&\n\t\t\t! select( coreStore ).hasFinishedResolution( 'getMedia', [\n\t\t\t\t_siteLogoId,\n\t\t\t\t{ context: 'view' },\n\t\t\t] );\n\n\t\treturn {\n\t\t\tsiteLogoId: _siteLogoId,\n\t\t\tcanUserEdit: _canUserEdit,\n\t\t\turl: siteData?.home,\n\t\t\tmediaItemData: mediaItem,\n\t\t\tisRequestingMediaItem: _isRequestingMediaItem,\n\t\t\tsiteIconId: _siteIconId,\n\t\t};\n\t}, [] );\n\tconst { getSettings } = useSelect( blockEditorStore );\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst setLogo = ( newValue, shouldForceSync = false ) => {\n\t\t// `shouldForceSync` is used to force syncing when the attribute\n\t\t// may not have updated yet.\n\t\tif ( shouldSyncIcon || shouldForceSync ) {\n\t\t\tsetIcon( newValue );\n\t\t}\n\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_logo: newValue,\n\t\t} );\n\t};\n\n\tconst setIcon = ( newValue ) =>\n\t\t// The new value needs to be `null` to reset the Site Icon.\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_icon: newValue ?? null,\n\t\t} );\n\n\tconst { alt_text: alt, source_url: logoUrl } = mediaItemData ?? {};\n\n\tconst onInitialSelectLogo = ( media ) => {\n\t\t// Initialize the syncSiteIcon toggle. If we currently have no Site logo and no\n\t\t// site icon, automatically sync the logo to the icon.\n\t\tif ( shouldSyncIcon === undefined ) {\n\t\t\tconst shouldForceSync = ! siteIconId;\n\t\t\tsetAttributes( { shouldSyncIcon: shouldForceSync } );\n\n\t\t\t// Because we cannot rely on the `shouldSyncIcon` attribute to have updated by\n\t\t\t// the time `setLogo` is called, pass an argument to force the syncing.\n\t\t\tonSelectLogo( media, shouldForceSync );\n\t\t\treturn;\n\t\t}\n\n\t\tonSelectLogo( media );\n\t};\n\n\tconst onSelectLogo = ( media, shouldForceSync = false ) => {\n\t\tif ( ! media ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! media.id && media.url ) {\n\t\t\t// This is a temporary blob image.\n\t\t\tsetTemporaryURL( media.url );\n\t\t\tsetLogo( undefined );\n\t\t\treturn;\n\t\t}\n\n\t\tsetLogo( media.id, shouldForceSync );\n\t};\n\n\tconst onRemoveLogo = () => {\n\t\tsetLogo( null );\n\t\tsetAttributes( { width: undefined } );\n\t};\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst onFilesDrop = ( filesList ) => {\n\t\tgetSettings().mediaUpload( {\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tfilesList,\n\t\t\tonFileChange( [ image ] ) {\n\t\t\t\tif ( isBlobURL( image?.url ) ) {\n\t\t\t\t\tsetTemporaryURL( image.url );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tonInitialSelectLogo( image );\n\t\t\t},\n\t\t\tonError: onUploadError,\n\t\t} );\n\t};\n\n\tconst mediaReplaceFlowProps = {\n\t\tmediaURL: logoUrl,\n\t\tonSelect: onSelectLogo,\n\t\tonError: onUploadError,\n\t\tonRemoveLogo,\n\t};\n\tconst controls = canUserEdit && logoUrl && ! temporaryURL && (\n\t\t<BlockControls group=\"other\">\n\t\t\t<SiteLogoReplaceFlow { ...mediaReplaceFlowProps } />\n\t\t</BlockControls>\n\t);\n\n\tlet logoImage;\n\tconst isLoading = siteLogoId === undefined || isRequestingMediaItem;\n\tif ( isLoading ) {\n\t\tlogoImage = <Spinner />;\n\t}\n\n\t// Reset temporary url when logoUrl is available.\n\tuseEffect( () => {\n\t\tif ( logoUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ logoUrl, temporaryURL ] );\n\n\tif ( !! logoUrl || !! temporaryURL ) {\n\t\tlogoImage = (\n\t\t\t<>\n\t\t\t\t<SiteLogo\n\t\t\t\t\talt={ alt }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tclassName={ className }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tlogoUrl={ temporaryURL || logoUrl }\n\t\t\t\t\tsetLogo={ setLogo }\n\t\t\t\t\tlogoId={ mediaItemData?.id || siteLogoId }\n\t\t\t\t\tsiteUrl={ url }\n\t\t\t\t\tsetIcon={ setIcon }\n\t\t\t\t\ticonId={ siteIconId }\n\t\t\t\t\tcanUserEdit={ canUserEdit }\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t}\n\tconst placeholder = ( content ) => {\n\t\tconst placeholderClassName = clsx(\n\t\t\t'block-editor-media-placeholder',\n\t\t\tclassName\n\t\t);\n\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ placeholderClassName }\n\t\t\t\tpreview={ logoImage }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\twidth,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst classes = clsx( className, {\n\t\t'is-default-size': ! width,\n\t\t'is-transient': temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( { className: classes } );\n\n\tconst label = __( 'Add a site logo' );\n\n\tconst mediaInspectorPanel = ( canUserEdit || logoUrl ) && (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Media' ) }>\n\t\t\t\t<div className=\"block-library-site-logo__inspector-media-replace-container\">\n\t\t\t\t\t{ ! canUserEdit && !! logoUrl && (\n\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\tmediaItemData={ mediaItemData }\n\t\t\t\t\t\t\titemGroupProps={ {\n\t\t\t\t\t\t\t\tisBordered: true,\n\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t'block-library-site-logo__inspector-readonly-logo-preview',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canUserEdit && !! logoUrl && (\n\t\t\t\t\t\t<SiteLogoReplaceFlow\n\t\t\t\t\t\t\t{ ...mediaReplaceFlowProps }\n\t\t\t\t\t\t\tname={\n\t\t\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\t\t\tmediaItemData={ mediaItemData }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tpopoverProps={ {} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canUserEdit && ! logoUrl && (\n\t\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\tonSelect={ onInitialSelectLogo }\n\t\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t<div className=\"block-library-site-logo__inspector-upload-container\">\n\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ isLoading ? (\n\t\t\t\t\t\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t__( 'Add media' )\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t\t<DropZone onFilesDrop={ onFilesDrop } />\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t{ mediaInspectorPanel }\n\t\t\t{ ( !! logoUrl || !! temporaryURL ) && logoImage }\n\t\t\t{ ! temporaryURL && ! logoUrl && ! canUserEdit && (\n\t\t\t\t<Placeholder className=\"site-logo_placeholder\">\n\t\t\t\t\t{ !! isLoading && (\n\t\t\t\t\t\t<span className=\"components-placeholder__preview\">\n\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t) }\n\t\t\t{ ! temporaryURL && ! logoUrl && canUserEdit && (\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\tonSelect={ onInitialSelectLogo }\n\t\t\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\t\ttooltipPosition=\"top center\"\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t\t} }\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</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","isBlobURL","createInterpolateElement","useEffect","useState","__","isRTL","MenuItem","PanelBody","RangeControl","ResizableBox","Spinner","ToggleControl","ToolbarButton","Placeholder","Button","DropZone","FlexItem","__experimentalItemGroup","ItemGroup","__experimentalHStack","HStack","__experimentalTruncate","Truncate","useViewportMatch","BlockControls","InspectorControls","MediaPlaceholder","MediaUpload","MediaUploadCheck","MediaReplaceFlow","useBlockProps","store","blockEditorStore","__experimentalImageEditor","ImageEditor","useSelect","useDispatch","coreStore","crop","upload","noticesStore","MIN_SIZE","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALLOWED_MEDIA_TYPES","ACCEPT_MEDIA_STRING","SiteLogo","alt","attributes","align","width","height","isLink","linkTarget","shouldSyncIcon","isSelected","setAttributes","setLogo","logoUrl","siteUrl","logoId","iconId","setIcon","canUserEdit","isLargeViewport","isWideAligned","includes","isResizable","naturalWidth","naturalHeight","setNaturalSize","isEditingImage","setIsEditingImage","toggleSelection","imageEditing","maxWidth","title","select","settings","getSettings","siteEntities","getEntityRecord","name","onResizeStart","onResizeStop","img","children","className","src","onLoad","event","target","imgWrapper","href","rel","onClick","preventDefault","style","defaultWidth","currentWidth","ratio","currentHeight","minWidth","Math","ceil","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","canEditImage","imgEdit","id","url","onSaveImage","imageAttributes","onFinishEditing","size","showHandle","maxHeight","lockAspectRatio","enable","top","right","bottom","left","direction","elt","delta","parseInt","shouldUseNewUrl","window","__experimentalUseCustomizerSiteLogoUrl","siteIconSettingsUrl","syncSiteIconHelpText","a","__nextHasNoMarginBottom","__next40pxDefaultSize","label","onChange","newWidth","min","max","initialPosition","value","disabled","checked","undefined","help","group","icon","SiteLogoReplaceFlow","onRemoveLogo","mediaReplaceProps","allowedTypes","accept","InspectorLogoPreview","mediaItemData","itemGroupProps","alt_text","source_url","slug","logoSlug","media_details","logoMediaDetails","logoLabel","sizes","full","file","as","justify","numberOfLines","LogoEdit","siteLogoId","siteIconId","isRequestingMediaItem","canUser","getEditedEntityRecord","_canUserEdit","kind","siteSettings","siteData","_siteLogoId","site_logo","_siteIconId","site_icon","mediaItem","getMedia","context","_isRequestingMediaItem","hasFinishedResolution","home","temporaryURL","setTemporaryURL","editEntityRecord","newValue","shouldForceSync","onInitialSelectLogo","media","onSelectLogo","createErrorNotice","onUploadError","message","type","onFilesDrop","filesList","mediaUpload","onFileChange","image","onError","mediaReplaceFlowProps","mediaURL","onSelect","controls","logoImage","isLoading","placeholder","content","placeholderClassName","preview","withIllustration","classes","blockProps","mediaInspectorPanel","isBordered","popoverProps","render","open","variant","mediaLibraryButton","showTooltip","tooltipPosition"],"sources":["@wordpress/block-library/src/site-logo/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tcreateInterpolateElement,\n\tuseEffect,\n\tuseState,\n} from '@wordpress/element';\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\tMenuItem,\n\tPanelBody,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tToggleControl,\n\tToolbarButton,\n\tPlaceholder,\n\tButton,\n\tDropZone,\n\tFlexItem,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalTruncate as Truncate,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadCheck,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalImageEditor as ImageEditor,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { crop, upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { MIN_SIZE } from '../image/constants';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\nconst ACCEPT_MEDIA_STRING = 'image/*';\n\nconst SiteLogo = ( {\n\talt,\n\tattributes: { align, width, height, isLink, linkTarget, shouldSyncIcon },\n\tisSelected,\n\tsetAttributes,\n\tsetLogo,\n\tlogoUrl,\n\tsiteUrl,\n\tlogoId,\n\ticonId,\n\tsetIcon,\n\tcanUserEdit,\n} ) => {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = [ 'wide', 'full' ].includes( align );\n\tconst isResizable = ! isWideAligned && isLargeViewport;\n\tconst [ { naturalWidth, naturalHeight }, setNaturalSize ] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst { toggleSelection } = useDispatch( blockEditorStore );\n\tconst { imageEditing, maxWidth, title } = useSelect( ( select ) => {\n\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\tconst siteEntities = select( coreStore ).getEntityRecord(\n\t\t\t'root',\n\t\t\t'__unstableBase'\n\t\t);\n\t\treturn {\n\t\t\ttitle: siteEntities?.name,\n\t\t\timageEditing: settings.imageEditing,\n\t\t\tmaxWidth: settings.maxWidth,\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t// Turn the `Use as site icon` toggle off if it is on but the logo and icon have\n\t\t// fallen out of sync. This can happen if the toggle is saved in the `on` position,\n\t\t// but changes are later made to the site icon in the Customizer.\n\t\tif ( shouldSyncIcon && logoId !== iconId ) {\n\t\t\tsetAttributes( { shouldSyncIcon: false } );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\tfunction onResizeStart() {\n\t\ttoggleSelection( false );\n\t}\n\n\tfunction onResizeStop() {\n\t\ttoggleSelection( true );\n\t}\n\n\tconst img = (\n\t\t<>\n\t\t\t<img\n\t\t\t\tclassName=\"custom-logo\"\n\t\t\t\tsrc={ logoUrl }\n\t\t\t\talt={ alt }\n\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\tsetNaturalSize( {\n\t\t\t\t\t\tnaturalWidth: event.target.naturalWidth,\n\t\t\t\t\t\tnaturalHeight: event.target.naturalHeight,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t{ isBlobURL( logoUrl ) && <Spinner /> }\n\t\t</>\n\t);\n\n\tlet imgWrapper = img;\n\n\t// Disable reason: Image itself is not meant to be interactive, but\n\t// should direct focus to block.\n\tif ( isLink ) {\n\t\timgWrapper = (\n\t\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t\t<a\n\t\t\t\thref={ siteUrl }\n\t\t\t\tclassName=\"custom-logo-link\"\n\t\t\t\trel=\"home\"\n\t\t\t\ttitle={ title }\n\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t>\n\t\t\t\t{ img }\n\t\t\t</a>\n\t\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t);\n\t}\n\n\tif ( ! isResizable || ! naturalWidth || ! naturalHeight ) {\n\t\treturn <div style={ { width, height } }>{ imgWrapper }</div>;\n\t}\n\n\t// Set the default width to a responsible size.\n\t// Note that this width is also set in the attached frontend CSS file.\n\tconst defaultWidth = 120;\n\n\tconst currentWidth = width || defaultWidth;\n\tconst ratio = naturalWidth / naturalHeight;\n\tconst currentHeight = currentWidth / ratio;\n\tconst minWidth =\n\t\tnaturalWidth < naturalHeight ? MIN_SIZE : Math.ceil( MIN_SIZE * ratio );\n\tconst minHeight =\n\t\tnaturalHeight < naturalWidth ? MIN_SIZE : Math.ceil( MIN_SIZE / ratio );\n\n\t// With the current implementation of ResizableBox, an image needs an\n\t// explicit pixel value for the max-width. In absence of being able to\n\t// set the content-width, this max-width is currently dictated by the\n\t// vanilla editor style. The following variable adds a buffer to this\n\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t// in most cases, allow you to scale the image beyond the width of the\n\t// main column, though not infinitely.\n\t// @todo It would be good to revisit this once a content-width variable\n\t// becomes available.\n\tconst maxWidthBuffer = maxWidth * 2.5;\n\n\tlet showRightHandle = false;\n\tlet showLeftHandle = false;\n\n\t/* eslint-disable no-lonely-if */\n\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\tif ( align === 'center' ) {\n\t\t// When the image is centered, show both handles.\n\t\tshowRightHandle = true;\n\t\tshowLeftHandle = true;\n\t} else if ( isRTL() ) {\n\t\t// In RTL mode the image is on the right by default.\n\t\t// Show the right handle and hide the left handle only when it is\n\t\t// aligned left. Otherwise always show the left handle.\n\t\tif ( align === 'left' ) {\n\t\t\tshowRightHandle = true;\n\t\t} else {\n\t\t\tshowLeftHandle = true;\n\t\t}\n\t} else {\n\t\t// Show the left handle and hide the right handle only when the\n\t\t// image is aligned right. Otherwise always show the right handle.\n\t\tif ( align === 'right' ) {\n\t\t\tshowLeftHandle = true;\n\t\t} else {\n\t\t\tshowRightHandle = true;\n\t\t}\n\t}\n\t/* eslint-enable no-lonely-if */\n\n\tconst canEditImage =\n\t\tlogoId && naturalWidth && naturalHeight && imageEditing;\n\n\tconst imgEdit =\n\t\tcanEditImage && isEditingImage ? (\n\t\t\t<ImageEditor\n\t\t\t\tid={ logoId }\n\t\t\t\turl={ logoUrl }\n\t\t\t\twidth={ currentWidth }\n\t\t\t\theight={ currentHeight }\n\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\tonSaveImage={ ( imageAttributes ) => {\n\t\t\t\t\tsetLogo( imageAttributes.id );\n\t\t\t\t} }\n\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t} }\n\t\t\t/>\n\t\t) : (\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: currentWidth,\n\t\t\t\t\theight: currentHeight,\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxWidthBuffer }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxWidthBuffer / ratio }\n\t\t\t\tlockAspectRatio\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: showRightHandle,\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: showLeftHandle,\n\t\t\t\t} }\n\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( currentWidth + delta.width, 10 ),\n\t\t\t\t\t\theight: parseInt( currentHeight + delta.height, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ imgWrapper }\n\t\t\t</ResizableBox>\n\t\t);\n\n\t// Support the previous location for the Site Icon settings. To be removed\n\t// when the required WP core version for Gutenberg is >= 6.5.0.\n\tconst shouldUseNewUrl = ! window?.__experimentalUseCustomizerSiteLogoUrl;\n\n\tconst siteIconSettingsUrl = shouldUseNewUrl\n\t\t? siteUrl + '/wp-admin/options-general.php'\n\t\t: siteUrl + '/wp-admin/customize.php?autofocus[section]=title_tagline';\n\n\tconst syncSiteIconHelpText = createInterpolateElement(\n\t\t__(\n\t\t\t'Site Icons are what you see in browser tabs, bookmark bars, and within the WordPress mobile apps. To use a custom icon that is different from your site logo, use the <a>Site Icon settings</a>.'\n\t\t),\n\t\t{\n\t\t\ta: (\n\t\t\t\t// eslint-disable-next-line jsx-a11y/anchor-has-content\n\t\t\t\t<a\n\t\t\t\t\thref={ siteIconSettingsUrl }\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t/>\n\t\t\t),\n\t\t}\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Image width' ) }\n\t\t\t\t\t\tonChange={ ( newWidth ) =>\n\t\t\t\t\t\t\tsetAttributes( { width: newWidth } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ minWidth }\n\t\t\t\t\t\tmax={ maxWidthBuffer }\n\t\t\t\t\t\tinitialPosition={ Math.min(\n\t\t\t\t\t\t\tdefaultWidth,\n\t\t\t\t\t\t\tmaxWidthBuffer\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\t\tdisabled={ ! isResizable }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link image to home' ) }\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\t{ isLink && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canUserEdit && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Use as Site Icon' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( { shouldSyncIcon: value } );\n\t\t\t\t\t\t\t\t\tsetIcon( value ? logoId : undefined );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tchecked={ !! shouldSyncIcon }\n\t\t\t\t\t\t\t\thelp={ syncSiteIconHelpText }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ canEditImage && ! isEditingImage && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ imgEdit }\n\t\t</>\n\t);\n};\n\n// This is a light wrapper around MediaReplaceFlow because the block has two\n// different MediaReplaceFlows, one for the inspector and one for the toolbar.\nfunction SiteLogoReplaceFlow( { onRemoveLogo, ...mediaReplaceProps } ) {\n\treturn (\n\t\t<MediaReplaceFlow\n\t\t\t{ ...mediaReplaceProps }\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t>\n\t\t\t<MenuItem onClick={ onRemoveLogo }>{ __( 'Reset' ) }</MenuItem>\n\t\t</MediaReplaceFlow>\n\t);\n}\n\nconst InspectorLogoPreview = ( { mediaItemData = {}, itemGroupProps } ) => {\n\tconst {\n\t\talt_text: alt,\n\t\tsource_url: logoUrl,\n\t\tslug: logoSlug,\n\t\tmedia_details: logoMediaDetails,\n\t} = mediaItemData;\n\tconst logoLabel = logoMediaDetails?.sizes?.full?.file || logoSlug;\n\treturn (\n\t\t<ItemGroup { ...itemGroupProps } as=\"span\">\n\t\t\t<HStack justify=\"flex-start\" as=\"span\">\n\t\t\t\t<img src={ logoUrl } alt={ alt } />\n\t\t\t\t<FlexItem as=\"span\">\n\t\t\t\t\t<Truncate\n\t\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\t\tclassName=\"block-library-site-logo__inspector-media-replace-title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ logoLabel }\n\t\t\t\t\t</Truncate>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</ItemGroup>\n\t);\n};\n\nexport default function LogoEdit( {\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tisSelected,\n} ) {\n\tconst { width, shouldSyncIcon } = attributes;\n\n\tconst {\n\t\tsiteLogoId,\n\t\tcanUserEdit,\n\t\turl,\n\t\tsiteIconId,\n\t\tmediaItemData,\n\t\tisRequestingMediaItem,\n\t} = useSelect( ( select ) => {\n\t\tconst { canUser, getEntityRecord, getEditedEntityRecord } =\n\t\t\tselect( coreStore );\n\t\tconst _canUserEdit = canUser( 'update', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} );\n\t\tconst siteSettings = _canUserEdit\n\t\t\t? getEditedEntityRecord( 'root', 'site' )\n\t\t\t: undefined;\n\t\tconst siteData = getEntityRecord( 'root', '__unstableBase' );\n\t\tconst _siteLogoId = _canUserEdit\n\t\t\t? siteSettings?.site_logo\n\t\t\t: siteData?.site_logo;\n\t\tconst _siteIconId = siteSettings?.site_icon;\n\t\tconst mediaItem =\n\t\t\t_siteLogoId &&\n\t\t\tselect( coreStore ).getMedia( _siteLogoId, {\n\t\t\t\tcontext: 'view',\n\t\t\t} );\n\t\tconst _isRequestingMediaItem =\n\t\t\t_siteLogoId &&\n\t\t\t! select( coreStore ).hasFinishedResolution( 'getMedia', [\n\t\t\t\t_siteLogoId,\n\t\t\t\t{ context: 'view' },\n\t\t\t] );\n\n\t\treturn {\n\t\t\tsiteLogoId: _siteLogoId,\n\t\t\tcanUserEdit: _canUserEdit,\n\t\t\turl: siteData?.home,\n\t\t\tmediaItemData: mediaItem,\n\t\t\tisRequestingMediaItem: _isRequestingMediaItem,\n\t\t\tsiteIconId: _siteIconId,\n\t\t};\n\t}, [] );\n\tconst { getSettings } = useSelect( blockEditorStore );\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst setLogo = ( newValue, shouldForceSync = false ) => {\n\t\t// `shouldForceSync` is used to force syncing when the attribute\n\t\t// may not have updated yet.\n\t\tif ( shouldSyncIcon || shouldForceSync ) {\n\t\t\tsetIcon( newValue );\n\t\t}\n\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_logo: newValue,\n\t\t} );\n\t};\n\n\tconst setIcon = ( newValue ) =>\n\t\t// The new value needs to be `null` to reset the Site Icon.\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_icon: newValue ?? null,\n\t\t} );\n\n\tconst { alt_text: alt, source_url: logoUrl } = mediaItemData ?? {};\n\n\tconst onInitialSelectLogo = ( media ) => {\n\t\t// Initialize the syncSiteIcon toggle. If we currently have no Site logo and no\n\t\t// site icon, automatically sync the logo to the icon.\n\t\tif ( shouldSyncIcon === undefined ) {\n\t\t\tconst shouldForceSync = ! siteIconId;\n\t\t\tsetAttributes( { shouldSyncIcon: shouldForceSync } );\n\n\t\t\t// Because we cannot rely on the `shouldSyncIcon` attribute to have updated by\n\t\t\t// the time `setLogo` is called, pass an argument to force the syncing.\n\t\t\tonSelectLogo( media, shouldForceSync );\n\t\t\treturn;\n\t\t}\n\n\t\tonSelectLogo( media );\n\t};\n\n\tconst onSelectLogo = ( media, shouldForceSync = false ) => {\n\t\tif ( ! media ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! media.id && media.url ) {\n\t\t\t// This is a temporary blob image.\n\t\t\tsetTemporaryURL( media.url );\n\t\t\tsetLogo( undefined );\n\t\t\treturn;\n\t\t}\n\n\t\tsetLogo( media.id, shouldForceSync );\n\t};\n\n\tconst onRemoveLogo = () => {\n\t\tsetLogo( null );\n\t\tsetAttributes( { width: undefined } );\n\t};\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst onFilesDrop = ( filesList ) => {\n\t\tgetSettings().mediaUpload( {\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tfilesList,\n\t\t\tonFileChange( [ image ] ) {\n\t\t\t\tif ( isBlobURL( image?.url ) ) {\n\t\t\t\t\tsetTemporaryURL( image.url );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tonInitialSelectLogo( image );\n\t\t\t},\n\t\t\tonError: onUploadError,\n\t\t} );\n\t};\n\n\tconst mediaReplaceFlowProps = {\n\t\tmediaURL: logoUrl,\n\t\tonSelect: onSelectLogo,\n\t\tonError: onUploadError,\n\t\tonRemoveLogo,\n\t};\n\tconst controls = canUserEdit && logoUrl && ! temporaryURL && (\n\t\t<BlockControls group=\"other\">\n\t\t\t<SiteLogoReplaceFlow { ...mediaReplaceFlowProps } />\n\t\t</BlockControls>\n\t);\n\n\tlet logoImage;\n\tconst isLoading = siteLogoId === undefined || isRequestingMediaItem;\n\tif ( isLoading ) {\n\t\tlogoImage = <Spinner />;\n\t}\n\n\t// Reset temporary url when logoUrl is available.\n\tuseEffect( () => {\n\t\tif ( logoUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ logoUrl, temporaryURL ] );\n\n\tif ( !! logoUrl || !! temporaryURL ) {\n\t\tlogoImage = (\n\t\t\t<>\n\t\t\t\t<SiteLogo\n\t\t\t\t\talt={ alt }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tclassName={ className }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tlogoUrl={ temporaryURL || logoUrl }\n\t\t\t\t\tsetLogo={ setLogo }\n\t\t\t\t\tlogoId={ mediaItemData?.id || siteLogoId }\n\t\t\t\t\tsiteUrl={ url }\n\t\t\t\t\tsetIcon={ setIcon }\n\t\t\t\t\ticonId={ siteIconId }\n\t\t\t\t\tcanUserEdit={ canUserEdit }\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t}\n\tconst placeholder = ( content ) => {\n\t\tconst placeholderClassName = clsx(\n\t\t\t'block-editor-media-placeholder',\n\t\t\tclassName\n\t\t);\n\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ placeholderClassName }\n\t\t\t\tpreview={ logoImage }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\twidth,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst classes = clsx( className, {\n\t\t'is-default-size': ! width,\n\t\t'is-transient': temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( { className: classes } );\n\n\tconst label = __( 'Add a site logo' );\n\n\tconst mediaInspectorPanel = ( canUserEdit || logoUrl ) && (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Media' ) }>\n\t\t\t\t<div className=\"block-library-site-logo__inspector-media-replace-container\">\n\t\t\t\t\t{ ! canUserEdit && !! logoUrl && (\n\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\tmediaItemData={ mediaItemData }\n\t\t\t\t\t\t\titemGroupProps={ {\n\t\t\t\t\t\t\t\tisBordered: true,\n\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t'block-library-site-logo__inspector-readonly-logo-preview',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canUserEdit && !! logoUrl && (\n\t\t\t\t\t\t<SiteLogoReplaceFlow\n\t\t\t\t\t\t\t{ ...mediaReplaceFlowProps }\n\t\t\t\t\t\t\tname={\n\t\t\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\t\t\tmediaItemData={ mediaItemData }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tpopoverProps={ {} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canUserEdit && ! logoUrl && (\n\t\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\tonSelect={ onInitialSelectLogo }\n\t\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t<div className=\"block-library-site-logo__inspector-upload-container\">\n\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ isLoading ? (\n\t\t\t\t\t\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t__( 'Add media' )\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t\t<DropZone onFilesDrop={ onFilesDrop } />\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t{ mediaInspectorPanel }\n\t\t\t{ ( !! logoUrl || !! temporaryURL ) && logoImage }\n\t\t\t{ ! temporaryURL && ! logoUrl && ! canUserEdit && (\n\t\t\t\t<Placeholder className=\"site-logo_placeholder\">\n\t\t\t\t\t{ !! isLoading && (\n\t\t\t\t\t\t<span className=\"components-placeholder__preview\">\n\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t) }\n\t\t\t{ ! temporaryURL && ! logoUrl && canUserEdit && (\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\tonSelect={ onInitialSelectLogo }\n\t\t\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\t\ttooltipPosition=\"top center\"\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t\t} }\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</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -33,11 +33,14 @@ export default function SiteTaglineEdit({
33
33
  getEntityRecord,
34
34
  getEditedEntityRecord
35
35
  } = select(coreStore);
36
- const canEdit = canUser('update', 'settings');
36
+ const canEdit = canUser('update', {
37
+ kind: 'root',
38
+ name: 'site'
39
+ });
37
40
  const settings = canEdit ? getEditedEntityRecord('root', 'site') : {};
38
41
  const readOnlySettings = getEntityRecord('root', '__unstableBase');
39
42
  return {
40
- canUserEdit: canUser('update', 'settings'),
43
+ canUserEdit: canEdit,
41
44
  tagline: canEdit ? settings?.description : readOnlySettings?.description
42
45
  };
43
46
  }, []);
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","useDispatch","useSelect","store","coreStore","AlignmentControl","useBlockProps","BlockControls","HeadingLevelDropdown","RichText","__","createBlock","getDefaultBlockName","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","HEADING_LEVELS","SiteTaglineEdit","attributes","setAttributes","insertBlocksAfter","textAlign","level","canUserEdit","tagline","select","canUser","getEntityRecord","getEditedEntityRecord","canEdit","settings","readOnlySettings","description","TagName","editEntityRecord","setTagline","newTagline","undefined","blockProps","className","siteTaglineContent","allowedFormats","onChange","placeholder","tagName","value","disableLineBreaks","__unstableOnSplitAtEnd","children","group","options","newLevel","newAlign"],"sources":["@wordpress/block-library/src/site-tagline/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tAlignmentControl,\n\tuseBlockProps,\n\tBlockControls,\n\tHeadingLevelDropdown,\n\tRichText,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\n\nconst HEADING_LEVELS = [ 0, 1, 2, 3, 4, 5, 6 ];\n\nexport default function SiteTaglineEdit( {\n\tattributes,\n\tsetAttributes,\n\tinsertBlocksAfter,\n} ) {\n\tconst { textAlign, level } = attributes;\n\tconst { canUserEdit, tagline } = useSelect( ( select ) => {\n\t\tconst { canUser, getEntityRecord, getEditedEntityRecord } =\n\t\t\tselect( coreStore );\n\t\tconst canEdit = canUser( 'update', 'settings' );\n\t\tconst settings = canEdit ? getEditedEntityRecord( 'root', 'site' ) : {};\n\t\tconst readOnlySettings = getEntityRecord( 'root', '__unstableBase' );\n\n\t\treturn {\n\t\t\tcanUserEdit: canUser( 'update', 'settings' ),\n\t\t\ttagline: canEdit\n\t\t\t\t? settings?.description\n\t\t\t\t: readOnlySettings?.description,\n\t\t};\n\t}, [] );\n\n\tconst TagName = level === 0 ? 'p' : `h${ level }`;\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tfunction setTagline( newTagline ) {\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tdescription: newTagline,\n\t\t} );\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t'wp-block-site-tagline__placeholder': ! canUserEdit && ! tagline,\n\t\t} ),\n\t} );\n\tconst siteTaglineContent = canUserEdit ? (\n\t\t<RichText\n\t\t\tallowedFormats={ [] }\n\t\t\tonChange={ setTagline }\n\t\t\taria-label={ __( 'Site tagline text' ) }\n\t\t\tplaceholder={ __( 'Write site tagline…' ) }\n\t\t\ttagName={ TagName }\n\t\t\tvalue={ tagline }\n\t\t\tdisableLineBreaks\n\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\tinsertBlocksAfter( createBlock( getDefaultBlockName() ) )\n\t\t\t}\n\t\t\t{ ...blockProps }\n\t\t/>\n\t) : (\n\t\t<TagName { ...blockProps }>\n\t\t\t{ tagline || __( 'Site Tagline placeholder' ) }\n\t\t</TagName>\n\t);\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<HeadingLevelDropdown\n\t\t\t\t\toptions={ HEADING_LEVELS }\n\t\t\t\t\tvalue={ level }\n\t\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tonChange={ ( newAlign ) =>\n\t\t\t\t\t\tsetAttributes( { textAlign: newAlign } )\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t{ siteTaglineContent }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","useDispatch","useSelect","store","coreStore","AlignmentControl","useBlockProps","BlockControls","HeadingLevelDropdown","RichText","__","createBlock","getDefaultBlockName","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","HEADING_LEVELS","SiteTaglineEdit","attributes","setAttributes","insertBlocksAfter","textAlign","level","canUserEdit","tagline","select","canUser","getEntityRecord","getEditedEntityRecord","canEdit","kind","name","settings","readOnlySettings","description","TagName","editEntityRecord","setTagline","newTagline","undefined","blockProps","className","siteTaglineContent","allowedFormats","onChange","placeholder","tagName","value","disableLineBreaks","__unstableOnSplitAtEnd","children","group","options","newLevel","newAlign"],"sources":["@wordpress/block-library/src/site-tagline/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tAlignmentControl,\n\tuseBlockProps,\n\tBlockControls,\n\tHeadingLevelDropdown,\n\tRichText,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\n\nconst HEADING_LEVELS = [ 0, 1, 2, 3, 4, 5, 6 ];\n\nexport default function SiteTaglineEdit( {\n\tattributes,\n\tsetAttributes,\n\tinsertBlocksAfter,\n} ) {\n\tconst { textAlign, level } = attributes;\n\tconst { canUserEdit, tagline } = useSelect( ( select ) => {\n\t\tconst { canUser, getEntityRecord, getEditedEntityRecord } =\n\t\t\tselect( coreStore );\n\t\tconst canEdit = canUser( 'update', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} );\n\t\tconst settings = canEdit ? getEditedEntityRecord( 'root', 'site' ) : {};\n\t\tconst readOnlySettings = getEntityRecord( 'root', '__unstableBase' );\n\n\t\treturn {\n\t\t\tcanUserEdit: canEdit,\n\t\t\ttagline: canEdit\n\t\t\t\t? settings?.description\n\t\t\t\t: readOnlySettings?.description,\n\t\t};\n\t}, [] );\n\n\tconst TagName = level === 0 ? 'p' : `h${ level }`;\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tfunction setTagline( newTagline ) {\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tdescription: newTagline,\n\t\t} );\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t'wp-block-site-tagline__placeholder': ! canUserEdit && ! tagline,\n\t\t} ),\n\t} );\n\tconst siteTaglineContent = canUserEdit ? (\n\t\t<RichText\n\t\t\tallowedFormats={ [] }\n\t\t\tonChange={ setTagline }\n\t\t\taria-label={ __( 'Site tagline text' ) }\n\t\t\tplaceholder={ __( 'Write site tagline…' ) }\n\t\t\ttagName={ TagName }\n\t\t\tvalue={ tagline }\n\t\t\tdisableLineBreaks\n\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\tinsertBlocksAfter( createBlock( getDefaultBlockName() ) )\n\t\t\t}\n\t\t\t{ ...blockProps }\n\t\t/>\n\t) : (\n\t\t<TagName { ...blockProps }>\n\t\t\t{ tagline || __( 'Site Tagline placeholder' ) }\n\t\t</TagName>\n\t);\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<HeadingLevelDropdown\n\t\t\t\t\toptions={ HEADING_LEVELS }\n\t\t\t\t\tvalue={ level }\n\t\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tonChange={ ( newAlign ) =>\n\t\t\t\t\t\tsetAttributes( { textAlign: newAlign } )\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t{ siteTaglineContent }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -20,7 +20,12 @@ const metadata = {
20
20
  "default": 0
21
21
  }
22
22
  },
23
- example: {},
23
+ example: {
24
+ viewportWidth: 350,
25
+ attributes: {
26
+ textAlign: "center"
27
+ }
28
+ },
24
29
  supports: {
25
30
  align: ["wide", "full"],
26
31
  html: false,
@@ -1 +1 @@
1
- {"version":3,"names":["initBlock","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","textAlign","type","level","example","supports","align","html","color","gradients","__experimentalDefaultControls","background","text","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalTextTransform","__experimentalTextDecoration","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalWritingMode","interactivity","clientNavigation","editorStyle","edit","icon","deprecated","settings","init"],"sources":["@wordpress/block-library/src/site-tagline/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport icon from './icon';\nimport deprecated from './deprecated';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,SAAS,MAAM,qBAAqB;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,SAAA;MAAAC,IAAA;IAAA;IAAAC,KAAA;MAAAD,IAAA;MAAA;IAAA;EAAA;EAAAE,OAAA;EAAAC,QAAA;IAAAC,KAAA;IAAAC,IAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;MAAA;IAAA;IAAAC,OAAA;MAAAC,MAAA;MAAAC,OAAA;MAAAL,6BAAA;QAAAI,MAAA;QAAAC,OAAA;MAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,uBAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,yBAAA;MAAAf,6BAAA;QAAAO,QAAA;MAAA;IAAA;IAAAS,aAAA;MAAAC,gBAAA;IAAA;EAAA;EAAAC,WAAA;AAAA;AAE5C,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAM;EAAErC;AAAK,CAAC,GAAGH,QAAQ;AACzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAMsC,QAAQ,GAAG;EACvBF,IAAI;EACJD,IAAI;EACJE;AACD,CAAC;AAED,OAAO,MAAME,IAAI,GAAGA,CAAA,KAAM3C,SAAS,CAAE;EAAEI,IAAI;EAAEH,QAAQ;EAAEyC;AAAS,CAAE,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["initBlock","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","textAlign","type","level","example","viewportWidth","supports","align","html","color","gradients","__experimentalDefaultControls","background","text","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalTextTransform","__experimentalTextDecoration","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalWritingMode","interactivity","clientNavigation","editorStyle","edit","icon","deprecated","settings","init"],"sources":["@wordpress/block-library/src/site-tagline/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport icon from './icon';\nimport deprecated from './deprecated';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,SAAS,MAAM,qBAAqB;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,SAAA;MAAAC,IAAA;IAAA;IAAAC,KAAA;MAAAD,IAAA;MAAA;IAAA;EAAA;EAAAE,OAAA;IAAAC,aAAA;IAAAL,UAAA;MAAAC,SAAA;IAAA;EAAA;EAAAK,QAAA;IAAAC,KAAA;IAAAC,IAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;MAAA;IAAA;IAAAC,OAAA;MAAAC,MAAA;MAAAC,OAAA;MAAAL,6BAAA;QAAAI,MAAA;QAAAC,OAAA;MAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,uBAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,yBAAA;MAAAf,6BAAA;QAAAO,QAAA;MAAA;IAAA;IAAAS,aAAA;MAAAC,gBAAA;IAAA;EAAA;EAAAC,WAAA;AAAA;AAE5C,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAM;EAAEtC;AAAK,CAAC,GAAGH,QAAQ;AACzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAMuC,QAAQ,GAAG;EACvBF,IAAI;EACJD,IAAI;EACJE;AACD,CAAC;AAED,OAAO,MAAME,IAAI,GAAGA,CAAA,KAAM5C,SAAS,CAAE;EAAEI,IAAI;EAAEH,QAAQ;EAAE0C;AAAS,CAAE,CAAC","ignoreList":[]}
@@ -37,7 +37,10 @@ export default function SiteTitleEdit({
37
37
  getEntityRecord,
38
38
  getEditedEntityRecord
39
39
  } = select(coreStore);
40
- const canEdit = canUser('update', 'settings');
40
+ const canEdit = canUser('update', {
41
+ kind: 'root',
42
+ name: 'site'
43
+ });
41
44
  const settings = canEdit ? getEditedEntityRecord('root', 'site') : {};
42
45
  const readOnlySettings = getEntityRecord('root', '__unstableBase');
43
46
  return {