@wordpress/block-library 11.0.0 → 11.1.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 (811) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/README.md +7 -7
  3. package/build/accordion/block.json +4 -1
  4. package/build/accordion-item/block.json +7 -1
  5. package/build/accordion-panel/block.json +9 -1
  6. package/build/archives/block.json +9 -0
  7. package/build/archives/edit.cjs.map +3 -3
  8. package/build/audio/block.json +8 -0
  9. package/build/audio/edit.cjs.map +3 -3
  10. package/build/avatar/hooks.cjs.map +2 -2
  11. package/build/breadcrumbs/block.json +3 -0
  12. package/build/breadcrumbs/edit.cjs.map +3 -3
  13. package/build/button/edit.cjs.map +2 -2
  14. package/build/buttons/block.json +9 -0
  15. package/build/categories/block.json +12 -1
  16. package/build/categories/edit.cjs.map +3 -3
  17. package/build/code/block.json +10 -0
  18. package/build/code/save.cjs.map +2 -2
  19. package/build/column/block.json +9 -0
  20. package/build/columns/block.json +9 -0
  21. package/build/comment-author-name/block.json +3 -0
  22. package/build/comment-content/block.json +5 -0
  23. package/build/comment-date/block.json +3 -0
  24. package/build/comment-edit-link/block.json +3 -0
  25. package/build/comment-reply-link/block.json +3 -0
  26. package/build/comment-template/hooks.cjs.map +2 -2
  27. package/build/comments/block.json +10 -0
  28. package/build/comments-pagination/block.json +3 -0
  29. package/build/comments-pagination-next/block.json +3 -0
  30. package/build/comments-pagination-numbers/block.json +3 -0
  31. package/build/comments-pagination-previous/block.json +6 -0
  32. package/build/comments-title/block.json +3 -0
  33. package/build/cover/edit/index.cjs +4 -1
  34. package/build/cover/edit/index.cjs.map +2 -2
  35. package/build/cover/edit/inspector-controls.cjs +52 -13
  36. package/build/cover/edit/inspector-controls.cjs.map +2 -2
  37. package/build/cover/transforms.cjs.map +2 -2
  38. package/build/details/block.json +12 -0
  39. package/build/details/index.cjs.map +2 -2
  40. package/build/embed/embed-controls.cjs.map +2 -2
  41. package/build/file/block.json +9 -0
  42. package/build/file/deprecated.cjs.map +2 -2
  43. package/build/file/edit.cjs.map +2 -2
  44. package/build/file/inspector.cjs.map +3 -3
  45. package/build/file/save.cjs.map +2 -2
  46. package/build/footnotes/block.json +10 -0
  47. package/build/footnotes/edit.cjs.map +2 -2
  48. package/build/gallery/block.json +9 -0
  49. package/build/gallery/dynamic-gallery.cjs.map +3 -3
  50. package/build/gallery/edit.cjs +65 -39
  51. package/build/gallery/edit.cjs.map +3 -3
  52. package/build/gallery/{flex-styles.cjs → gallery-styles.cjs} +31 -32
  53. package/build/gallery/gallery-styles.cjs.map +7 -0
  54. package/build/gallery/responsive-styles.cjs +27 -5
  55. package/build/gallery/responsive-styles.cjs.map +2 -2
  56. package/build/group/block.json +1 -0
  57. package/build/heading/block.json +11 -0
  58. package/build/heading/index.cjs.map +2 -2
  59. package/build/home-link/block.json +18 -0
  60. package/build/home-link/edit.cjs.map +3 -3
  61. package/build/html/modal.cjs +3 -6
  62. package/build/html/modal.cjs.map +2 -2
  63. package/build/image/edit.cjs.map +2 -2
  64. package/build/image/image.cjs +10 -8
  65. package/build/image/image.cjs.map +3 -3
  66. package/build/image/use-open-image-media-editor-modal.cjs +20 -0
  67. package/build/image/use-open-image-media-editor-modal.cjs.map +2 -2
  68. package/build/index.cjs.map +2 -2
  69. package/build/latest-comments/block.json +10 -0
  70. package/build/latest-comments/edit.cjs.map +3 -3
  71. package/build/latest-posts/block.json +10 -0
  72. package/build/latest-posts/edit.cjs.map +2 -2
  73. package/build/list/ordered-list-settings.cjs.map +3 -3
  74. package/build/list-item/hooks/use-enter.cjs.map +2 -2
  75. package/build/loginout/block.json +10 -0
  76. package/build/math/block.json +12 -0
  77. package/build/math/deprecated.cjs +29 -12
  78. package/build/math/deprecated.cjs.map +2 -2
  79. package/build/math/edit.cjs +67 -46
  80. package/build/math/edit.cjs.map +2 -2
  81. package/build/math/save.cjs +2 -2
  82. package/build/math/save.cjs.map +2 -2
  83. package/build/media-text/block.json +1 -0
  84. package/build/media-text/constants.cjs +3 -0
  85. package/build/media-text/constants.cjs.map +2 -2
  86. package/build/media-text/deprecated.cjs.map +2 -2
  87. package/build/media-text/edit.cjs +40 -0
  88. package/build/media-text/edit.cjs.map +3 -3
  89. package/build/media-text/image-fill.cjs.map +2 -2
  90. package/build/media-text/media-container.cjs +3 -3
  91. package/build/media-text/media-container.cjs.map +2 -2
  92. package/build/navigation/edit/index.cjs +1 -4
  93. package/build/navigation/edit/index.cjs.map +2 -2
  94. package/build/navigation/edit/menu-inspector-controls.cjs.map +2 -2
  95. package/build/navigation/edit/overlay-template-part-selector.cjs.map +3 -3
  96. package/build/navigation/edit/responsive-wrapper.cjs.map +2 -2
  97. package/build/navigation/edit/use-generate-default-navigation-title.cjs.map +2 -2
  98. package/build/navigation/view.cjs +2 -2
  99. package/build/navigation/view.cjs.map +2 -2
  100. package/build/navigation-link/edit.cjs.map +2 -2
  101. package/build/navigation-link/link-ui/page-creator.cjs.map +3 -3
  102. package/build/navigation-link/shared/controls.cjs.map +3 -3
  103. package/build/navigation-link/shared/invalid-draft-display.cjs.map +2 -2
  104. package/build/navigation-link/shared/use-link-preview.cjs +13 -13
  105. package/build/navigation-link/shared/use-link-preview.cjs.map +2 -2
  106. package/build/navigation-overlay-close/block.json +7 -0
  107. package/build/navigation-submenu/block.json +6 -0
  108. package/build/navigation-submenu/edit.cjs +9 -1
  109. package/build/navigation-submenu/edit.cjs.map +3 -3
  110. package/build/page-list/block.json +10 -0
  111. package/build/paragraph/block.json +1 -0
  112. package/build/paragraph/edit.cjs +1 -2
  113. package/build/paragraph/edit.cjs.map +2 -2
  114. package/build/paragraph/index.cjs +6 -0
  115. package/build/paragraph/index.cjs.map +3 -3
  116. package/build/playlist/block.json +1 -0
  117. package/build/playlist/edit.cjs +2 -1
  118. package/build/playlist/edit.cjs.map +3 -3
  119. package/build/post-author/edit.cjs.map +3 -3
  120. package/build/post-author-biography/block.json +4 -0
  121. package/build/post-author-name/block.json +5 -0
  122. package/build/post-author-name/edit.cjs.map +2 -2
  123. package/build/post-comments-count/block.json +3 -0
  124. package/build/post-comments-form/block.json +10 -0
  125. package/build/post-content/block.json +3 -0
  126. package/build/post-date/block.json +3 -0
  127. package/build/post-date/edit.cjs.map +2 -2
  128. package/build/post-excerpt/block.json +6 -0
  129. package/build/post-excerpt/edit.cjs.map +2 -2
  130. package/build/post-featured-image/edit.cjs +11 -9
  131. package/build/post-featured-image/edit.cjs.map +2 -2
  132. package/build/post-navigation-link/block.json +30 -0
  133. package/build/post-navigation-link/edit.cjs +13 -2
  134. package/build/post-navigation-link/edit.cjs.map +3 -3
  135. package/build/post-template/block.json +13 -1
  136. package/build/post-terms/block.json +6 -0
  137. package/build/post-time-to-read/block.json +6 -0
  138. package/build/post-time-to-read/edit.cjs.map +2 -2
  139. package/build/post-title/block.json +10 -0
  140. package/build/preformatted/block.json +7 -0
  141. package/build/pullquote/block.json +1 -0
  142. package/build/pullquote/deprecated.cjs.map +2 -2
  143. package/build/query/deprecated.cjs.map +2 -2
  144. package/build/query/edit/inspector-controls/index.cjs.map +3 -3
  145. package/build/query/edit/inspector-controls/order-control.cjs.map +3 -3
  146. package/build/query/edit/inspector-controls/sticky-control.cjs.map +3 -3
  147. package/build/query/view.cjs.map +2 -2
  148. package/build/query-no-results/block.json +10 -2
  149. package/build/query-pagination/block.json +3 -0
  150. package/build/query-pagination-next/block.json +3 -0
  151. package/build/query-pagination-numbers/block.json +3 -0
  152. package/build/query-pagination-previous/block.json +3 -0
  153. package/build/query-title/block.json +3 -0
  154. package/build/query-title/use-archive-label.cjs.map +2 -2
  155. package/build/query-total/block.json +6 -0
  156. package/build/quote/block.json +1 -0
  157. package/build/quote/deprecated.cjs.map +2 -2
  158. package/build/quote/transforms.cjs.map +2 -2
  159. package/build/read-more/block.json +6 -0
  160. package/build/rss/block.json +6 -0
  161. package/build/search/edit.cjs.map +3 -3
  162. package/build/separator/edit.cjs.map +3 -3
  163. package/build/site-tagline/block.json +8 -1
  164. package/build/site-title/block.json +7 -1
  165. package/build/social-links/block.json +3 -0
  166. package/build/social-links/edit.cjs +2 -3
  167. package/build/social-links/edit.cjs.map +3 -3
  168. package/build/tab-panel/block.json +25 -0
  169. package/build/tab-panel/controls.cjs.map +3 -3
  170. package/build/tab-panels/block.json +18 -1
  171. package/build/table/state.cjs.map +2 -2
  172. package/build/table-of-contents/block.json +7 -0
  173. package/build/table-of-contents/edit.cjs.map +3 -3
  174. package/build/table-of-contents/utils.cjs.map +2 -2
  175. package/build/tabs/block.json +24 -1
  176. package/build/tabs/use-tab-actions.cjs.map +2 -2
  177. package/build/tag-cloud/block.json +19 -0
  178. package/build/tag-cloud/edit.cjs.map +3 -3
  179. package/build/template-part/edit/advanced-controls.cjs.map +3 -3
  180. package/build/template-part/edit/import-controls.cjs.map +3 -3
  181. package/build/template-part/edit/index.cjs.map +2 -2
  182. package/build/template-part/edit/inner-blocks.cjs.map +2 -2
  183. package/build/template-part/edit/placeholder.cjs.map +2 -2
  184. package/build/template-part/edit/selection-modal.cjs.map +1 -1
  185. package/build/term-count/block.json +7 -0
  186. package/build/term-count/use-term-count.cjs.map +2 -2
  187. package/build/term-description/block.json +9 -0
  188. package/build/term-description/use-term-description.cjs.map +2 -2
  189. package/build/term-name/block.json +10 -0
  190. package/build/term-name/use-term-name.cjs.map +2 -2
  191. package/build/term-template/block.json +10 -1
  192. package/build/terms-query/edit/inspector-controls/index.cjs.map +2 -2
  193. package/build/terms-query/edit/inspector-controls/inherit-control.cjs.map +2 -2
  194. package/build/terms-query/edit/inspector-controls/order-control.cjs.map +3 -3
  195. package/build/terms-query/edit/inspector-controls/taxonomy-control.cjs.map +3 -3
  196. package/build/utils/hooks.cjs.map +2 -2
  197. package/build/utils/media-control.cjs +5 -1
  198. package/build/utils/media-control.cjs.map +2 -2
  199. package/build/utils/poster-image.cjs.map +2 -2
  200. package/build/utils/search-patterns.cjs +7 -43
  201. package/build/utils/search-patterns.cjs.map +3 -3
  202. package/build/utils/style-state.cjs +4 -6
  203. package/build/utils/style-state.cjs.map +2 -2
  204. package/build/verse/block.json +1 -0
  205. package/build/video/block.json +6 -0
  206. package/build/video/edit-common-settings.cjs.map +3 -3
  207. package/build/video/edit.cjs +23 -15
  208. package/build/video/edit.cjs.map +3 -3
  209. package/build/video/index.cjs +0 -2
  210. package/build/video/index.cjs.map +3 -3
  211. package/build/video/save.cjs +5 -1
  212. package/build/video/save.cjs.map +3 -3
  213. package/build/video/tracks-editor.cjs.map +3 -3
  214. package/build-module/accordion/block.json +4 -1
  215. package/build-module/accordion-item/block.json +7 -1
  216. package/build-module/accordion-panel/block.json +9 -1
  217. package/build-module/archives/block.json +9 -0
  218. package/build-module/archives/edit.mjs +2 -2
  219. package/build-module/archives/edit.mjs.map +2 -2
  220. package/build-module/audio/block.json +8 -0
  221. package/build-module/audio/edit.mjs +2 -2
  222. package/build-module/audio/edit.mjs.map +2 -2
  223. package/build-module/avatar/hooks.mjs.map +2 -2
  224. package/build-module/breadcrumbs/block.json +3 -0
  225. package/build-module/breadcrumbs/edit.mjs +3 -3
  226. package/build-module/breadcrumbs/edit.mjs.map +2 -2
  227. package/build-module/button/edit.mjs.map +2 -2
  228. package/build-module/buttons/block.json +9 -0
  229. package/build-module/categories/block.json +12 -1
  230. package/build-module/categories/edit.mjs +2 -2
  231. package/build-module/categories/edit.mjs.map +2 -2
  232. package/build-module/code/block.json +10 -0
  233. package/build-module/code/save.mjs.map +2 -2
  234. package/build-module/column/block.json +9 -0
  235. package/build-module/columns/block.json +9 -0
  236. package/build-module/comment-author-name/block.json +3 -0
  237. package/build-module/comment-content/block.json +5 -0
  238. package/build-module/comment-date/block.json +3 -0
  239. package/build-module/comment-edit-link/block.json +3 -0
  240. package/build-module/comment-reply-link/block.json +3 -0
  241. package/build-module/comment-template/hooks.mjs.map +2 -2
  242. package/build-module/comments/block.json +10 -0
  243. package/build-module/comments-pagination/block.json +3 -0
  244. package/build-module/comments-pagination-next/block.json +3 -0
  245. package/build-module/comments-pagination-numbers/block.json +3 -0
  246. package/build-module/comments-pagination-previous/block.json +6 -0
  247. package/build-module/comments-title/block.json +3 -0
  248. package/build-module/cover/edit/index.mjs +4 -1
  249. package/build-module/cover/edit/index.mjs.map +2 -2
  250. package/build-module/cover/edit/inspector-controls.mjs +57 -14
  251. package/build-module/cover/edit/inspector-controls.mjs.map +2 -2
  252. package/build-module/cover/transforms.mjs.map +2 -2
  253. package/build-module/details/block.json +12 -0
  254. package/build-module/details/index.mjs.map +2 -2
  255. package/build-module/embed/embed-controls.mjs.map +2 -2
  256. package/build-module/file/block.json +9 -0
  257. package/build-module/file/deprecated.mjs.map +2 -2
  258. package/build-module/file/edit.mjs.map +2 -2
  259. package/build-module/file/inspector.mjs +2 -2
  260. package/build-module/file/inspector.mjs.map +2 -2
  261. package/build-module/file/save.mjs.map +2 -2
  262. package/build-module/footnotes/block.json +10 -0
  263. package/build-module/footnotes/edit.mjs.map +2 -2
  264. package/build-module/gallery/block.json +9 -0
  265. package/build-module/gallery/dynamic-gallery.mjs +2 -2
  266. package/build-module/gallery/dynamic-gallery.mjs.map +2 -2
  267. package/build-module/gallery/edit.mjs +68 -42
  268. package/build-module/gallery/edit.mjs.map +2 -2
  269. package/build-module/gallery/{flex-styles.mjs → gallery-styles.mjs} +29 -30
  270. package/build-module/gallery/gallery-styles.mjs.map +7 -0
  271. package/build-module/gallery/responsive-styles.mjs +25 -4
  272. package/build-module/gallery/responsive-styles.mjs.map +2 -2
  273. package/build-module/group/block.json +1 -0
  274. package/build-module/heading/block.json +11 -0
  275. package/build-module/heading/index.mjs.map +2 -2
  276. package/build-module/home-link/block.json +18 -0
  277. package/build-module/home-link/edit.mjs +2 -2
  278. package/build-module/home-link/edit.mjs.map +2 -2
  279. package/build-module/html/modal.mjs +3 -6
  280. package/build-module/html/modal.mjs.map +2 -2
  281. package/build-module/image/edit.mjs.map +2 -2
  282. package/build-module/image/image.mjs +12 -10
  283. package/build-module/image/image.mjs.map +2 -2
  284. package/build-module/image/use-open-image-media-editor-modal.mjs +20 -0
  285. package/build-module/image/use-open-image-media-editor-modal.mjs.map +2 -2
  286. package/build-module/index.mjs.map +2 -2
  287. package/build-module/latest-comments/block.json +10 -0
  288. package/build-module/latest-comments/edit.mjs +2 -2
  289. package/build-module/latest-comments/edit.mjs.map +2 -2
  290. package/build-module/latest-posts/block.json +10 -0
  291. package/build-module/latest-posts/edit.mjs.map +2 -2
  292. package/build-module/list/ordered-list-settings.mjs +2 -2
  293. package/build-module/list/ordered-list-settings.mjs.map +2 -2
  294. package/build-module/list-item/hooks/use-enter.mjs.map +2 -2
  295. package/build-module/loginout/block.json +10 -0
  296. package/build-module/math/block.json +12 -0
  297. package/build-module/math/deprecated.mjs +29 -12
  298. package/build-module/math/deprecated.mjs.map +2 -2
  299. package/build-module/math/edit.mjs +68 -47
  300. package/build-module/math/edit.mjs.map +2 -2
  301. package/build-module/math/save.mjs +2 -2
  302. package/build-module/math/save.mjs.map +2 -2
  303. package/build-module/media-text/block.json +1 -0
  304. package/build-module/media-text/constants.mjs +2 -0
  305. package/build-module/media-text/constants.mjs.map +2 -2
  306. package/build-module/media-text/deprecated.mjs.map +2 -2
  307. package/build-module/media-text/edit.mjs +42 -1
  308. package/build-module/media-text/edit.mjs.map +2 -2
  309. package/build-module/media-text/image-fill.mjs.map +2 -2
  310. package/build-module/media-text/media-container.mjs +1 -1
  311. package/build-module/media-text/media-container.mjs.map +2 -2
  312. package/build-module/navigation/edit/index.mjs +1 -4
  313. package/build-module/navigation/edit/index.mjs.map +2 -2
  314. package/build-module/navigation/edit/menu-inspector-controls.mjs.map +2 -2
  315. package/build-module/navigation/edit/overlay-template-part-selector.mjs +2 -2
  316. package/build-module/navigation/edit/overlay-template-part-selector.mjs.map +2 -2
  317. package/build-module/navigation/edit/responsive-wrapper.mjs.map +2 -2
  318. package/build-module/navigation/edit/use-generate-default-navigation-title.mjs.map +2 -2
  319. package/build-module/navigation/view.mjs +2 -2
  320. package/build-module/navigation/view.mjs.map +2 -2
  321. package/build-module/navigation-link/edit.mjs.map +2 -2
  322. package/build-module/navigation-link/link-ui/page-creator.mjs +2 -2
  323. package/build-module/navigation-link/link-ui/page-creator.mjs.map +2 -2
  324. package/build-module/navigation-link/shared/controls.mjs +2 -2
  325. package/build-module/navigation-link/shared/controls.mjs.map +2 -2
  326. package/build-module/navigation-link/shared/invalid-draft-display.mjs.map +2 -2
  327. package/build-module/navigation-link/shared/use-link-preview.mjs +13 -13
  328. package/build-module/navigation-link/shared/use-link-preview.mjs.map +2 -2
  329. package/build-module/navigation-overlay-close/block.json +7 -0
  330. package/build-module/navigation-submenu/block.json +6 -0
  331. package/build-module/navigation-submenu/edit.mjs +11 -2
  332. package/build-module/navigation-submenu/edit.mjs.map +2 -2
  333. package/build-module/page-list/block.json +10 -0
  334. package/build-module/paragraph/block.json +1 -0
  335. package/build-module/paragraph/edit.mjs +1 -2
  336. package/build-module/paragraph/edit.mjs.map +2 -2
  337. package/build-module/paragraph/index.mjs +6 -0
  338. package/build-module/paragraph/index.mjs.map +2 -2
  339. package/build-module/playlist/block.json +1 -0
  340. package/build-module/playlist/edit.mjs +5 -4
  341. package/build-module/playlist/edit.mjs.map +2 -2
  342. package/build-module/post-author/edit.mjs +2 -2
  343. package/build-module/post-author/edit.mjs.map +2 -2
  344. package/build-module/post-author-biography/block.json +4 -0
  345. package/build-module/post-author-name/block.json +5 -0
  346. package/build-module/post-author-name/edit.mjs.map +2 -2
  347. package/build-module/post-comments-count/block.json +3 -0
  348. package/build-module/post-comments-form/block.json +10 -0
  349. package/build-module/post-content/block.json +3 -0
  350. package/build-module/post-date/block.json +3 -0
  351. package/build-module/post-date/edit.mjs.map +2 -2
  352. package/build-module/post-excerpt/block.json +6 -0
  353. package/build-module/post-excerpt/edit.mjs.map +2 -2
  354. package/build-module/post-featured-image/edit.mjs +11 -9
  355. package/build-module/post-featured-image/edit.mjs.map +2 -2
  356. package/build-module/post-navigation-link/block.json +30 -0
  357. package/build-module/post-navigation-link/edit.mjs +19 -5
  358. package/build-module/post-navigation-link/edit.mjs.map +2 -2
  359. package/build-module/post-template/block.json +13 -1
  360. package/build-module/post-terms/block.json +6 -0
  361. package/build-module/post-time-to-read/block.json +6 -0
  362. package/build-module/post-time-to-read/edit.mjs.map +2 -2
  363. package/build-module/post-title/block.json +10 -0
  364. package/build-module/preformatted/block.json +7 -0
  365. package/build-module/pullquote/block.json +1 -0
  366. package/build-module/pullquote/deprecated.mjs.map +2 -2
  367. package/build-module/query/deprecated.mjs.map +2 -2
  368. package/build-module/query/edit/inspector-controls/index.mjs +2 -2
  369. package/build-module/query/edit/inspector-controls/index.mjs.map +2 -2
  370. package/build-module/query/edit/inspector-controls/order-control.mjs +2 -2
  371. package/build-module/query/edit/inspector-controls/order-control.mjs.map +2 -2
  372. package/build-module/query/edit/inspector-controls/sticky-control.mjs +2 -2
  373. package/build-module/query/edit/inspector-controls/sticky-control.mjs.map +2 -2
  374. package/build-module/query/view.mjs.map +2 -2
  375. package/build-module/query-no-results/block.json +10 -2
  376. package/build-module/query-pagination/block.json +3 -0
  377. package/build-module/query-pagination-next/block.json +3 -0
  378. package/build-module/query-pagination-numbers/block.json +3 -0
  379. package/build-module/query-pagination-previous/block.json +3 -0
  380. package/build-module/query-title/block.json +3 -0
  381. package/build-module/query-title/use-archive-label.mjs.map +2 -2
  382. package/build-module/query-total/block.json +6 -0
  383. package/build-module/quote/block.json +1 -0
  384. package/build-module/quote/deprecated.mjs.map +2 -2
  385. package/build-module/quote/transforms.mjs.map +2 -2
  386. package/build-module/read-more/block.json +6 -0
  387. package/build-module/rss/block.json +6 -0
  388. package/build-module/search/edit.mjs +3 -3
  389. package/build-module/search/edit.mjs.map +2 -2
  390. package/build-module/separator/edit.mjs +5 -2
  391. package/build-module/separator/edit.mjs.map +2 -2
  392. package/build-module/site-tagline/block.json +8 -1
  393. package/build-module/site-title/block.json +7 -1
  394. package/build-module/social-links/block.json +3 -0
  395. package/build-module/social-links/edit.mjs +4 -5
  396. package/build-module/social-links/edit.mjs.map +2 -2
  397. package/build-module/tab-panel/block.json +25 -0
  398. package/build-module/tab-panel/controls.mjs +2 -2
  399. package/build-module/tab-panel/controls.mjs.map +2 -2
  400. package/build-module/tab-panels/block.json +18 -1
  401. package/build-module/table/state.mjs.map +2 -2
  402. package/build-module/table-of-contents/block.json +7 -0
  403. package/build-module/table-of-contents/edit.mjs +2 -2
  404. package/build-module/table-of-contents/edit.mjs.map +2 -2
  405. package/build-module/table-of-contents/utils.mjs.map +2 -2
  406. package/build-module/tabs/block.json +24 -1
  407. package/build-module/tabs/use-tab-actions.mjs.map +2 -2
  408. package/build-module/tag-cloud/block.json +19 -0
  409. package/build-module/tag-cloud/edit.mjs +2 -2
  410. package/build-module/tag-cloud/edit.mjs.map +2 -2
  411. package/build-module/template-part/edit/advanced-controls.mjs +5 -2
  412. package/build-module/template-part/edit/advanced-controls.mjs.map +2 -2
  413. package/build-module/template-part/edit/import-controls.mjs +2 -2
  414. package/build-module/template-part/edit/import-controls.mjs.map +2 -2
  415. package/build-module/template-part/edit/index.mjs.map +2 -2
  416. package/build-module/template-part/edit/inner-blocks.mjs.map +2 -2
  417. package/build-module/template-part/edit/placeholder.mjs.map +2 -2
  418. package/build-module/template-part/edit/selection-modal.mjs.map +1 -1
  419. package/build-module/term-count/block.json +7 -0
  420. package/build-module/term-count/use-term-count.mjs.map +2 -2
  421. package/build-module/term-description/block.json +9 -0
  422. package/build-module/term-description/use-term-description.mjs.map +2 -2
  423. package/build-module/term-name/block.json +10 -0
  424. package/build-module/term-name/use-term-name.mjs.map +2 -2
  425. package/build-module/term-template/block.json +10 -1
  426. package/build-module/terms-query/edit/inspector-controls/index.mjs.map +2 -2
  427. package/build-module/terms-query/edit/inspector-controls/inherit-control.mjs.map +2 -2
  428. package/build-module/terms-query/edit/inspector-controls/order-control.mjs +2 -2
  429. package/build-module/terms-query/edit/inspector-controls/order-control.mjs.map +2 -2
  430. package/build-module/terms-query/edit/inspector-controls/taxonomy-control.mjs +2 -2
  431. package/build-module/terms-query/edit/inspector-controls/taxonomy-control.mjs.map +2 -2
  432. package/build-module/utils/hooks.mjs.map +2 -2
  433. package/build-module/utils/media-control.mjs +5 -1
  434. package/build-module/utils/media-control.mjs.map +2 -2
  435. package/build-module/utils/poster-image.mjs.map +2 -2
  436. package/build-module/utils/search-patterns.mjs +7 -32
  437. package/build-module/utils/search-patterns.mjs.map +2 -2
  438. package/build-module/utils/style-state.mjs +6 -4
  439. package/build-module/utils/style-state.mjs.map +2 -2
  440. package/build-module/verse/block.json +1 -0
  441. package/build-module/video/block.json +6 -0
  442. package/build-module/video/edit-common-settings.mjs +2 -2
  443. package/build-module/video/edit-common-settings.mjs.map +2 -2
  444. package/build-module/video/edit.mjs +25 -16
  445. package/build-module/video/edit.mjs.map +2 -2
  446. package/build-module/video/index.mjs +0 -2
  447. package/build-module/video/index.mjs.map +2 -2
  448. package/build-module/video/save.mjs +7 -2
  449. package/build-module/video/save.mjs.map +2 -2
  450. package/build-module/video/tracks-editor.mjs +2 -2
  451. package/build-module/video/tracks-editor.mjs.map +2 -2
  452. package/build-style/button/style-rtl.css +2 -1
  453. package/build-style/button/style.css +2 -1
  454. package/build-style/columns/style-rtl.css +1 -1
  455. package/build-style/columns/style.css +1 -1
  456. package/build-style/comments/editor-rtl.css +1 -1
  457. package/build-style/comments/editor.css +1 -1
  458. package/build-style/comments/style-rtl.css +1 -1
  459. package/build-style/comments/style.css +1 -1
  460. package/build-style/common-rtl.css +1 -1
  461. package/build-style/common.css +1 -1
  462. package/build-style/cover/style-rtl.css +6 -0
  463. package/build-style/cover/style.css +6 -0
  464. package/build-style/editor-rtl.css +21 -7
  465. package/build-style/editor.css +21 -7
  466. package/build-style/embed/editor-rtl.css +2 -1
  467. package/build-style/embed/editor.css +2 -1
  468. package/build-style/gallery/style-rtl.css +1 -2
  469. package/build-style/gallery/style.css +1 -2
  470. package/build-style/image/editor-rtl.css +6 -0
  471. package/build-style/image/editor.css +6 -0
  472. package/build-style/image/style-rtl.css +6 -9
  473. package/build-style/image/style.css +6 -9
  474. package/build-style/math/editor-rtl.css +5 -0
  475. package/build-style/math/editor.css +5 -0
  476. package/build-style/navigation/editor-rtl.css +1 -0
  477. package/build-style/navigation/editor.css +1 -0
  478. package/build-style/navigation/style-rtl.css +19 -4
  479. package/build-style/navigation/style.css +19 -4
  480. package/build-style/navigation-link/editor-rtl.css +3 -1
  481. package/build-style/navigation-link/editor.css +3 -1
  482. package/build-style/navigation-overlay-close/style-rtl.css +1 -1
  483. package/build-style/navigation-overlay-close/style.css +1 -1
  484. package/build-style/navigation-submenu/editor-rtl.css +3 -1
  485. package/build-style/navigation-submenu/editor.css +3 -1
  486. package/build-style/post-navigation-link/style-rtl.css +3 -0
  487. package/build-style/post-navigation-link/style.css +3 -0
  488. package/build-style/post-title/style-rtl.css +2 -2
  489. package/build-style/post-title/style.css +2 -2
  490. package/build-style/query-pagination/editor-rtl.css +0 -3
  491. package/build-style/query-pagination/editor.css +0 -3
  492. package/build-style/search/theme-rtl.css +1 -1
  493. package/build-style/search/theme.css +1 -1
  494. package/build-style/style-rtl.css +47 -23
  495. package/build-style/style.css +47 -23
  496. package/build-style/tab-panel/style-rtl.css +2 -0
  497. package/build-style/tab-panel/style.css +2 -0
  498. package/build-style/theme-rtl.css +1 -1
  499. package/build-style/theme.css +1 -1
  500. package/build-style/verse/style-rtl.css +2 -1
  501. package/build-style/verse/style.css +2 -1
  502. package/package.json +42 -43
  503. package/src/accordion/README.md +3 -0
  504. package/src/accordion/block.json +4 -1
  505. package/src/accordion-item/README.md +5 -0
  506. package/src/accordion-item/block.json +7 -1
  507. package/src/accordion-panel/README.md +7 -0
  508. package/src/accordion-panel/block.json +9 -1
  509. package/src/archives/README.md +4 -0
  510. package/src/archives/block.json +9 -0
  511. package/src/archives/edit.jsx +2 -2
  512. package/src/audio/README.md +4 -0
  513. package/src/audio/block.json +8 -0
  514. package/src/audio/edit.jsx +2 -2
  515. package/src/avatar/hooks.js +2 -2
  516. package/src/breadcrumbs/README.md +2 -0
  517. package/src/breadcrumbs/block.json +3 -0
  518. package/src/breadcrumbs/edit.jsx +3 -3
  519. package/src/breadcrumbs/index.php +1 -1
  520. package/src/button/edit.jsx +1 -1
  521. package/src/button/style.scss +2 -2
  522. package/src/buttons/README.md +4 -0
  523. package/src/buttons/block.json +9 -0
  524. package/src/calendar/index.php +1 -1
  525. package/src/categories/README.md +6 -0
  526. package/src/categories/block.json +12 -1
  527. package/src/categories/edit.jsx +2 -2
  528. package/src/code/README.md +5 -0
  529. package/src/code/block.json +10 -0
  530. package/src/code/save.jsx +1 -1
  531. package/src/column/README.md +4 -0
  532. package/src/column/block.json +9 -0
  533. package/src/columns/README.md +4 -0
  534. package/src/columns/block.json +9 -0
  535. package/src/columns/style.scss +2 -3
  536. package/src/comment-author-name/README.md +2 -0
  537. package/src/comment-author-name/block.json +3 -0
  538. package/src/comment-content/README.md +4 -0
  539. package/src/comment-content/block.json +5 -0
  540. package/src/comment-date/README.md +2 -0
  541. package/src/comment-date/block.json +3 -0
  542. package/src/comment-edit-link/README.md +2 -0
  543. package/src/comment-edit-link/block.json +3 -0
  544. package/src/comment-reply-link/README.md +2 -0
  545. package/src/comment-reply-link/block.json +3 -0
  546. package/src/comment-template/hooks.js +1 -1
  547. package/src/comments/README.md +5 -0
  548. package/src/comments/block.json +10 -0
  549. package/src/comments/style.scss +1 -1
  550. package/src/comments-pagination/README.md +2 -0
  551. package/src/comments-pagination/block.json +3 -0
  552. package/src/comments-pagination-next/README.md +2 -0
  553. package/src/comments-pagination-next/block.json +3 -0
  554. package/src/comments-pagination-numbers/README.md +2 -0
  555. package/src/comments-pagination-numbers/block.json +3 -0
  556. package/src/comments-pagination-previous/README.md +2 -0
  557. package/src/comments-pagination-previous/block.json +6 -0
  558. package/src/comments-title/README.md +2 -0
  559. package/src/comments-title/block.json +3 -0
  560. package/src/common.scss +1 -2
  561. package/src/cover/edit/index.jsx +5 -2
  562. package/src/cover/edit/inspector-controls.jsx +66 -15
  563. package/src/cover/style.scss +10 -0
  564. package/src/cover/test/{edit.jsdom.test.js → edit.browser.test.js} +122 -147
  565. package/src/cover/transforms.js +3 -3
  566. package/src/details/README.md +7 -0
  567. package/src/details/block.json +12 -0
  568. package/src/details/index.js +1 -1
  569. package/src/embed/editor.scss +2 -2
  570. package/src/embed/embed-controls.jsx +2 -2
  571. package/src/file/README.md +4 -0
  572. package/src/file/block.json +9 -0
  573. package/src/file/deprecated.jsx +3 -3
  574. package/src/file/edit.jsx +5 -3
  575. package/src/file/inspector.jsx +3 -3
  576. package/src/file/save.jsx +2 -2
  577. package/src/footnotes/README.md +5 -0
  578. package/src/footnotes/block.json +10 -0
  579. package/src/footnotes/edit.jsx +1 -1
  580. package/src/gallery/README.md +4 -0
  581. package/src/gallery/block.json +9 -0
  582. package/src/gallery/dynamic-gallery.jsx +4 -4
  583. package/src/gallery/edit.jsx +122 -70
  584. package/src/gallery/gallery-styles.js +117 -0
  585. package/src/gallery/index.php +181 -67
  586. package/src/gallery/responsive-styles.js +59 -5
  587. package/src/gallery/test/edit.jsdom.test.js +71 -3
  588. package/src/gallery/test/responsive-styles.js +59 -5
  589. package/src/group/README.md +1 -0
  590. package/src/group/block.json +1 -0
  591. package/src/heading/README.md +6 -0
  592. package/src/heading/block.json +11 -0
  593. package/src/heading/index.js +2 -2
  594. package/src/home-link/README.md +5 -0
  595. package/src/home-link/block.json +18 -0
  596. package/src/home-link/edit.jsx +2 -2
  597. package/src/html/modal.jsx +0 -3
  598. package/src/icon/index.php +9 -0
  599. package/src/image/edit.jsx +1 -1
  600. package/src/image/editor.scss +8 -0
  601. package/src/image/image.jsx +20 -18
  602. package/src/image/index.php +10 -4
  603. package/src/image/style.scss +1 -0
  604. package/src/image/test/use-open-image-media-editor-modal.jsdom.test.js +140 -1
  605. package/src/image/use-open-image-media-editor-modal.js +37 -0
  606. package/src/index.jsx +1 -1
  607. package/src/latest-comments/README.md +5 -0
  608. package/src/latest-comments/block.json +10 -0
  609. package/src/latest-comments/edit.jsx +2 -2
  610. package/src/latest-posts/README.md +5 -0
  611. package/src/latest-posts/block.json +10 -0
  612. package/src/latest-posts/edit.jsx +1 -1
  613. package/src/list/ordered-list-settings.jsx +2 -2
  614. package/src/list-item/hooks/use-enter.js +1 -1
  615. package/src/loginout/README.md +5 -0
  616. package/src/loginout/block.json +10 -0
  617. package/src/math/README.md +7 -2
  618. package/src/math/block.json +12 -0
  619. package/src/math/deprecated.jsx +38 -12
  620. package/src/math/edit.jsx +49 -20
  621. package/src/math/editor.scss +5 -0
  622. package/src/math/save.jsx +20 -4
  623. package/src/media-text/README.md +1 -0
  624. package/src/media-text/block.json +1 -0
  625. package/src/media-text/constants.js +1 -0
  626. package/src/media-text/deprecated.jsx +3 -3
  627. package/src/media-text/edit.jsx +48 -3
  628. package/src/media-text/image-fill.js +2 -2
  629. package/src/media-text/media-container.jsx +1 -1
  630. package/src/navigation/edit/index.jsx +3 -5
  631. package/src/navigation/edit/menu-inspector-controls.jsx +2 -2
  632. package/src/navigation/edit/overlay-template-part-selector.jsx +3 -3
  633. package/src/navigation/edit/responsive-wrapper.jsx +1 -1
  634. package/src/navigation/edit/use-generate-default-navigation-title.js +2 -2
  635. package/src/navigation/editor.scss +1 -0
  636. package/src/navigation/index.php +12 -0
  637. package/src/navigation/style.scss +41 -5
  638. package/src/navigation/test/use-navigation-menu.jsdom.test.js +6 -28
  639. package/src/navigation/test/view.jsdom.test.js +23 -0
  640. package/src/navigation/view.js +9 -6
  641. package/src/navigation-link/edit.jsx +1 -1
  642. package/src/navigation-link/editor.scss +6 -1
  643. package/src/navigation-link/link-ui/page-creator.jsx +2 -2
  644. package/src/navigation-link/shared/controls.jsx +2 -2
  645. package/src/navigation-link/shared/invalid-draft-display.jsx +2 -2
  646. package/src/navigation-link/shared/test/use-link-preview.jsdom.test.js +22 -22
  647. package/src/navigation-link/shared/use-link-preview.js +15 -14
  648. package/src/navigation-link/test/__snapshots__/hooks.jsdom.test.js.snap +41 -11
  649. package/src/navigation-overlay-close/README.md +1 -0
  650. package/src/navigation-overlay-close/block.json +7 -0
  651. package/src/navigation-overlay-close/style.scss +1 -1
  652. package/src/navigation-submenu/README.md +7 -0
  653. package/src/navigation-submenu/block.json +6 -0
  654. package/src/navigation-submenu/edit.jsx +12 -2
  655. package/src/navigation-submenu/editor.scss +6 -1
  656. package/src/navigation-submenu/index.php +11 -0
  657. package/src/page-list/README.md +5 -0
  658. package/src/page-list/block.json +10 -0
  659. package/src/paragraph/README.md +1 -0
  660. package/src/paragraph/block.json +1 -0
  661. package/src/paragraph/edit.jsx +2 -4
  662. package/src/paragraph/index.js +7 -0
  663. package/src/pattern/index.php +2 -2
  664. package/src/playlist/README.md +1 -0
  665. package/src/playlist/block.json +1 -0
  666. package/src/playlist/edit.jsx +6 -4
  667. package/src/playlist-track/test/edit.jsdom.test.jsx +2 -3
  668. package/src/post-author/edit.jsx +2 -2
  669. package/src/post-author-biography/README.md +3 -0
  670. package/src/post-author-biography/block.json +4 -0
  671. package/src/post-author-name/README.md +4 -0
  672. package/src/post-author-name/block.json +5 -0
  673. package/src/post-author-name/edit.jsx +1 -1
  674. package/src/post-comments-count/README.md +2 -0
  675. package/src/post-comments-count/block.json +3 -0
  676. package/src/post-comments-form/README.md +5 -0
  677. package/src/post-comments-form/block.json +10 -0
  678. package/src/post-content/README.md +3 -0
  679. package/src/post-content/block.json +3 -0
  680. package/src/post-date/README.md +2 -0
  681. package/src/post-date/block.json +3 -0
  682. package/src/post-date/edit.jsx +2 -2
  683. package/src/post-excerpt/README.md +5 -0
  684. package/src/post-excerpt/block.json +6 -0
  685. package/src/post-excerpt/edit.jsx +1 -1
  686. package/src/post-featured-image/edit.jsx +13 -11
  687. package/src/post-navigation-link/README.md +12 -0
  688. package/src/post-navigation-link/block.json +30 -0
  689. package/src/post-navigation-link/edit.jsx +27 -6
  690. package/src/post-navigation-link/index.php +94 -5
  691. package/src/post-navigation-link/style.scss +2 -0
  692. package/src/post-template/README.md +7 -0
  693. package/src/post-template/block.json +13 -1
  694. package/src/post-terms/README.md +5 -0
  695. package/src/post-terms/block.json +6 -0
  696. package/src/post-time-to-read/README.md +5 -0
  697. package/src/post-time-to-read/block.json +6 -0
  698. package/src/post-time-to-read/edit.jsx +2 -2
  699. package/src/post-title/README.md +5 -0
  700. package/src/post-title/block.json +10 -0
  701. package/src/post-title/style.scss +2 -3
  702. package/src/preformatted/README.md +6 -0
  703. package/src/preformatted/block.json +7 -0
  704. package/src/pullquote/README.md +1 -0
  705. package/src/pullquote/block.json +1 -0
  706. package/src/pullquote/deprecated.jsx +1 -1
  707. package/src/query/deprecated.jsx +1 -1
  708. package/src/query/edit/inspector-controls/index.jsx +4 -4
  709. package/src/query/edit/inspector-controls/order-control.jsx +2 -2
  710. package/src/query/edit/inspector-controls/sticky-control.jsx +2 -2
  711. package/src/query/view.js +6 -9
  712. package/src/query-no-results/README.md +7 -0
  713. package/src/query-no-results/block.json +10 -2
  714. package/src/query-pagination/README.md +2 -0
  715. package/src/query-pagination/block.json +3 -0
  716. package/src/query-pagination/editor.scss +0 -3
  717. package/src/query-pagination-next/README.md +2 -0
  718. package/src/query-pagination-next/block.json +3 -0
  719. package/src/query-pagination-numbers/README.md +2 -0
  720. package/src/query-pagination-numbers/block.json +3 -0
  721. package/src/query-pagination-previous/README.md +2 -0
  722. package/src/query-pagination-previous/block.json +3 -0
  723. package/src/query-title/README.md +2 -0
  724. package/src/query-title/block.json +3 -0
  725. package/src/query-title/use-archive-label.js +1 -1
  726. package/src/query-total/README.md +5 -0
  727. package/src/query-total/block.json +6 -0
  728. package/src/quote/README.md +1 -0
  729. package/src/quote/block.json +1 -0
  730. package/src/quote/deprecated.jsx +2 -2
  731. package/src/quote/transforms.js +3 -3
  732. package/src/read-more/README.md +5 -0
  733. package/src/read-more/block.json +6 -0
  734. package/src/rss/README.md +5 -0
  735. package/src/rss/block.json +6 -0
  736. package/src/search/edit.jsx +6 -6
  737. package/src/search/theme.scss +1 -1
  738. package/src/separator/edit.jsx +7 -4
  739. package/src/site-tagline/README.md +6 -0
  740. package/src/site-tagline/block.json +8 -1
  741. package/src/site-title/README.md +5 -0
  742. package/src/site-title/block.json +7 -1
  743. package/src/social-links/README.md +2 -0
  744. package/src/social-links/block.json +3 -0
  745. package/src/social-links/edit.jsx +4 -5
  746. package/src/tab-panel/README.md +9 -0
  747. package/src/tab-panel/block.json +25 -0
  748. package/src/tab-panel/controls.jsx +2 -2
  749. package/src/tab-panel/style.scss +5 -2
  750. package/src/tab-panels/README.md +7 -0
  751. package/src/tab-panels/block.json +18 -1
  752. package/src/table/state.js +1 -1
  753. package/src/table-of-contents/README.md +6 -0
  754. package/src/table-of-contents/block.json +7 -0
  755. package/src/table-of-contents/edit.jsx +6 -6
  756. package/src/table-of-contents/utils.ts +2 -2
  757. package/src/tabs/README.md +9 -0
  758. package/src/tabs/block.json +24 -1
  759. package/src/tabs/use-tab-actions.js +1 -1
  760. package/src/tag-cloud/README.md +9 -0
  761. package/src/tag-cloud/block.json +19 -0
  762. package/src/tag-cloud/edit.jsx +2 -2
  763. package/src/template-part/edit/advanced-controls.jsx +5 -2
  764. package/src/template-part/edit/import-controls.jsx +2 -2
  765. package/src/template-part/edit/index.jsx +2 -2
  766. package/src/template-part/edit/inner-blocks.jsx +1 -1
  767. package/src/template-part/edit/placeholder.jsx +2 -2
  768. package/src/template-part/edit/selection-modal.jsx +1 -1
  769. package/src/term-count/README.md +6 -0
  770. package/src/term-count/block.json +7 -0
  771. package/src/term-count/use-term-count.js +1 -1
  772. package/src/term-description/README.md +5 -0
  773. package/src/term-description/block.json +9 -0
  774. package/src/term-description/use-term-description.js +1 -1
  775. package/src/term-name/README.md +5 -0
  776. package/src/term-name/block.json +10 -0
  777. package/src/term-name/index.php +1 -1
  778. package/src/term-name/use-term-name.js +1 -1
  779. package/src/term-template/README.md +5 -0
  780. package/src/term-template/block.json +10 -1
  781. package/src/terms-query/edit/inspector-controls/index.jsx +2 -2
  782. package/src/terms-query/edit/inspector-controls/inherit-control.jsx +1 -1
  783. package/src/terms-query/edit/inspector-controls/order-control.jsx +2 -2
  784. package/src/terms-query/edit/inspector-controls/taxonomy-control.jsx +2 -2
  785. package/src/utils/hooks.js +1 -1
  786. package/src/utils/media-control.jsx +16 -10
  787. package/src/utils/poster-image.jsx +2 -2
  788. package/src/utils/search-patterns.js +9 -53
  789. package/src/utils/style-state.js +6 -4
  790. package/src/utils/test/{search-patterns.js → search-patterns.jsdom.test.js} +1 -22
  791. package/src/utils/test/waveform-player.jsdom.test.jsx +36 -38
  792. package/src/utils/test/{waveform-utils.jsdom.test.js → waveform-utils.browser.test.js} +64 -44
  793. package/src/verse/README.md +1 -0
  794. package/src/verse/block.json +1 -0
  795. package/src/verse/style.scss +2 -2
  796. package/src/video/README.md +7 -0
  797. package/src/video/block.json +6 -0
  798. package/src/video/edit-common-settings.jsx +3 -3
  799. package/src/video/edit.jsx +56 -51
  800. package/src/video/index.js +0 -2
  801. package/src/video/save.jsx +10 -1
  802. package/src/video/tracks-editor.jsx +2 -2
  803. package/build/gallery/flex-styles.cjs.map +0 -7
  804. package/build/video/variations.cjs +0 -75
  805. package/build/video/variations.cjs.map +0 -7
  806. package/build-module/gallery/flex-styles.mjs.map +0 -7
  807. package/build-module/video/variations.mjs +0 -50
  808. package/build-module/video/variations.mjs.map +0 -7
  809. package/src/gallery/flex-styles.js +0 -99
  810. package/src/video/test/variations.js +0 -63
  811. package/src/video/variations.js +0 -62
@@ -1,7 +1,7 @@
1
1
  import { __ } from '@wordpress/i18n';
2
2
  import {
3
3
  RangeControl,
4
- SelectControl,
4
+ SelectControl as WCSelectControl,
5
5
  ToggleControl,
6
6
  __experimentalToolsPanel as ToolsPanel,
7
7
  __experimentalToolsPanelItem as ToolsPanelItem,
@@ -57,7 +57,7 @@ export default function FileBlockInspector( {
57
57
  displayPreview
58
58
  ? __(
59
59
  "Note: Most phone and tablet browsers won't display embedded PDFs."
60
- )
60
+ )
61
61
  : null
62
62
  }
63
63
  checked={ !! displayPreview }
@@ -101,7 +101,7 @@ export default function FileBlockInspector( {
101
101
  hasValue={ () => textLinkHref !== href }
102
102
  onDeselect={ () => changeLinkDestinationOption( href ) }
103
103
  >
104
- <SelectControl
104
+ <WCSelectControl
105
105
  label={ __( 'Link to' ) }
106
106
  value={ textLinkHref }
107
107
  options={ linkDestinationOptions }
package/src/file/save.jsx CHANGED
@@ -21,8 +21,8 @@ export default function save( { attributes } ) {
21
21
  const pdfEmbedLabel = RichText.isEmpty( fileName )
22
22
  ? 'PDF embed'
23
23
  : // To do: use toPlainText, but we need ensure it's RichTextData. See
24
- // https://github.com/WordPress/gutenberg/pull/56710.
25
- fileName.toString();
24
+ // https://github.com/WordPress/gutenberg/pull/56710.
25
+ fileName.toString();
26
26
 
27
27
  const hasFilename = ! RichText.isEmpty( fileName );
28
28
 
@@ -20,6 +20,10 @@ _This block has no custom attributes._
20
20
  _Defined via the [`supports`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/) property in block.json._
21
21
 
22
22
  - [`anchor`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#anchor): `true`
23
+ - [`background`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#background):
24
+ - `backgroundImage`: `true`
25
+ - `backgroundSize`: `true`
26
+ - `gradient`: `true`
23
27
  - [`color`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#color):
24
28
  - [`background`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#color-background): `true`
25
29
  - [`link`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#color-link): `true`
@@ -28,6 +32,7 @@ _Defined via the [`supports`](https://developer.wordpress.org/block-editor/refer
28
32
  - [`multiple`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#multiple): `false`
29
33
  - [`reusable`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#reusable): `false`
30
34
  - [`inserter`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#inserter): `false`
35
+ - [`shadow`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#shadow): `true`
31
36
  - [`spacing`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#spacing):
32
37
  - `margin`: `true`
33
38
  - `padding`: `true`
@@ -10,6 +10,15 @@
10
10
  "usesContext": [ "postId", "postType" ],
11
11
  "supports": {
12
12
  "anchor": true,
13
+ "background": {
14
+ "backgroundImage": true,
15
+ "backgroundSize": true,
16
+ "gradient": true,
17
+ "__experimentalDefaultControls": {
18
+ "backgroundImage": true,
19
+ "gradient": true
20
+ }
21
+ },
13
22
  "__experimentalBorder": {
14
23
  "radius": true,
15
24
  "color": true,
@@ -35,6 +44,7 @@
35
44
  "multiple": false,
36
45
  "reusable": false,
37
46
  "inserter": false,
47
+ "shadow": true,
38
48
  "spacing": {
39
49
  "margin": true,
40
50
  "padding": true,
@@ -90,7 +90,7 @@ export default function FootnotesEdit( { context: { postType, postId } } ) {
90
90
  ? {
91
91
  content: nextFootnote,
92
92
  id,
93
- }
93
+ }
94
94
  : footnote;
95
95
  } )
96
96
  ),
@@ -42,6 +42,10 @@ _Defined via the [`supports`](https://developer.wordpress.org/block-editor/refer
42
42
 
43
43
  - [`anchor`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#anchor): `true`
44
44
  - [`align`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#align): `true`
45
+ - [`background`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#background):
46
+ - `backgroundImage`: `true`
47
+ - `backgroundSize`: `true`
48
+ - `gradient`: `true`
45
49
  - [`html`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#html): `false`
46
50
  - `units`: `"px"`, `"em"`, `"rem"`, `"vh"`, `"vw"`
47
51
  - [`spacing`](https://developer.wordpress.org/block-editor/reference-guides/block-api/block-supports/#spacing):
@@ -127,6 +127,15 @@
127
127
  "supports": {
128
128
  "anchor": true,
129
129
  "align": true,
130
+ "background": {
131
+ "backgroundImage": true,
132
+ "backgroundSize": true,
133
+ "gradient": true,
134
+ "__experimentalDefaultControls": {
135
+ "backgroundImage": true,
136
+ "gradient": true
137
+ }
138
+ },
130
139
  "__experimentalBorder": {
131
140
  "radius": true,
132
141
  "color": true,
@@ -5,7 +5,7 @@ import {
5
5
  Notice,
6
6
  PanelBody,
7
7
  Placeholder,
8
- SelectControl,
8
+ SelectControl as WCSelectControl,
9
9
  Spinner,
10
10
  ToolbarButton,
11
11
  __experimentalToolsPanel as ToolsPanel,
@@ -56,7 +56,7 @@ const ORDER_OPTIONS = [
56
56
  */
57
57
  function OrderControl( { orderby, order, onChange } ) {
58
58
  return (
59
- <SelectControl
59
+ <WCSelectControl
60
60
  label={ __( 'Order by' ) }
61
61
  value={ `${ orderby }/${ order }` }
62
62
  options={ ORDER_OPTIONS }
@@ -386,8 +386,8 @@ export function GalleryDynamicView( {
386
386
  // source wording comes from the source descriptor.
387
387
  const emptyInstructions = isResolvingDynamic
388
388
  ? __( 'Loading images…' )
389
- : sourceDescriptor?.emptyMessage ??
390
- __( 'Dynamic images will appear here.' );
389
+ : ( sourceDescriptor?.emptyMessage ??
390
+ __( 'Dynamic images will appear here.' ) );
391
391
 
392
392
  return (
393
393
  <>
@@ -1,6 +1,6 @@
1
1
  import clsx from 'clsx';
2
2
  import {
3
- SelectControl,
3
+ SelectControl as WCSelectControl,
4
4
  ToggleControl,
5
5
  RangeControl,
6
6
  MenuGroup,
@@ -61,11 +61,10 @@ import {
61
61
  import useImageSizes from './use-image-sizes';
62
62
  import useGetNewImages from './use-get-new-images';
63
63
  import useGetMedia from './use-get-media';
64
- import GalleryFlexStyles from './flex-styles';
64
+ import GalleryStyles from './gallery-styles';
65
65
  import useDynamicGallery from './use-dynamic-gallery';
66
66
  import { GallerySourcePanel, GalleryDynamicView } from './dynamic-gallery';
67
67
  import { getDynamicSource, ATTACHED_MEDIA } from './dynamic-source';
68
- import { unlock } from '../lock-unlock';
69
68
  import {
70
69
  getViewportGalleryStyle,
71
70
  getUpdatedGalleryStyle,
@@ -156,7 +155,7 @@ export default function GalleryEdit( props ) {
156
155
  const linkOptions = ! lightboxSetting?.allowEditing
157
156
  ? LINK_OPTIONS.filter(
158
157
  ( option ) => option.value !== LINK_DESTINATION_LIGHTBOX
159
- )
158
+ )
160
159
  : LINK_OPTIONS;
161
160
 
162
161
  const {
@@ -238,7 +237,7 @@ export default function GalleryEdit( props ) {
238
237
  getSettings: _getSettings,
239
238
  getBlock: _getBlock,
240
239
  getSelectedBlockStyleState,
241
- } = unlock( select( blockEditorStore ) );
240
+ } = select( blockEditorStore );
242
241
  const multiSelectedClientIds = getMultiSelectedBlockClientIds();
243
242
 
244
243
  return {
@@ -264,10 +263,14 @@ export default function GalleryEdit( props ) {
264
263
  ? getViewportGalleryStyle(
265
264
  attributes.style,
266
265
  selectedStyleState.viewport
267
- )
266
+ )
268
267
  : {};
269
268
  const baseColumns = isValidGalleryColumns( columns ) ? columns : undefined;
270
269
  const baseImageCrop = typeof imageCrop === 'boolean' ? imageCrop : true;
270
+ // Normalized so a Gallery with no aspect ratio and one explicitly set to
271
+ // Original compare equal, and a viewport override matching either is
272
+ // dropped rather than stored.
273
+ const baseAspectRatio = aspectRatio || 'auto';
271
274
  const hasViewportColumns =
272
275
  isViewportStyleState &&
273
276
  Object.hasOwn( viewportStyle, 'columns' ) &&
@@ -276,12 +279,20 @@ export default function GalleryEdit( props ) {
276
279
  isViewportStyleState &&
277
280
  Object.hasOwn( viewportStyle, 'imageCrop' ) &&
278
281
  typeof viewportStyle.imageCrop === 'boolean';
282
+ const hasViewportAspectRatio =
283
+ isViewportStyleState &&
284
+ Object.hasOwn( viewportStyle, 'aspectRatio' ) &&
285
+ typeof viewportStyle.aspectRatio === 'string' &&
286
+ !! viewportStyle.aspectRatio;
279
287
  const activeColumns = hasViewportColumns
280
288
  ? viewportStyle.columns
281
289
  : baseColumns;
282
290
  const activeImageCrop = hasViewportImageCrop
283
291
  ? viewportStyle.imageCrop
284
292
  : baseImageCrop;
293
+ const activeAspectRatio = hasViewportAspectRatio
294
+ ? viewportStyle.aspectRatio
295
+ : baseAspectRatio;
285
296
 
286
297
  const images = useMemo(
287
298
  () =>
@@ -429,6 +440,7 @@ export default function GalleryEdit( props ) {
429
440
  : image.caption?.raw,
430
441
  alt: imageAttributes.alt || image.alt_text,
431
442
  aspectRatio: aspectRatio === 'auto' ? undefined : aspectRatio,
443
+ scale: aspectRatio && aspectRatio !== 'auto' ? 'cover' : undefined,
432
444
  };
433
445
  }
434
446
 
@@ -456,7 +468,7 @@ export default function GalleryEdit( props ) {
456
468
  }
457
469
 
458
470
  return file;
459
- } )
471
+ } )
460
472
  : selectedImages;
461
473
 
462
474
  if ( ! imageArray.every( isValidFileType ) ) {
@@ -485,8 +497,9 @@ export default function GalleryEdit( props ) {
485
497
  // once the new image blocks are merged in with existing.
486
498
  const newOrderMap = processedImages.reduce(
487
499
  ( result, image, index ) => (
488
- ( result[ image.id ] = index ), result
489
- ),
500
+ ( result[ image.id ] = index ),
501
+ result
502
+ ),
490
503
  {}
491
504
  );
492
505
 
@@ -495,7 +508,7 @@ export default function GalleryEdit( props ) {
495
508
  processedImages.find(
496
509
  ( img ) => img.id === block.attributes.id
497
510
  )
498
- )
511
+ )
499
512
  : innerBlockImages;
500
513
 
501
514
  const newImageList = processedImages.filter(
@@ -574,7 +587,7 @@ export default function GalleryEdit( props ) {
574
587
  );
575
588
  }
576
589
 
577
- function setGalleryFlexSettings( settings ) {
590
+ function setGallerySettings( settings ) {
578
591
  if ( ! isViewportStyleState ) {
579
592
  setAttributes( settings );
580
593
  return;
@@ -587,6 +600,7 @@ export default function GalleryEdit( props ) {
587
600
  baseSettings: {
588
601
  columns: baseColumns,
589
602
  imageCrop: baseImageCrop,
603
+ aspectRatio: baseAspectRatio,
590
604
  },
591
605
  settings,
592
606
  } ),
@@ -594,11 +608,11 @@ export default function GalleryEdit( props ) {
594
608
  }
595
609
 
596
610
  function setColumnsNumber( value ) {
597
- setGalleryFlexSettings( { columns: value } );
611
+ setGallerySettings( { columns: value } );
598
612
  }
599
613
 
600
614
  function toggleImageCrop() {
601
- setGalleryFlexSettings( { imageCrop: ! activeImageCrop } );
615
+ setGallerySettings( { imageCrop: ! activeImageCrop } );
602
616
  }
603
617
 
604
618
  function toggleRandomOrder() {
@@ -663,37 +677,63 @@ export default function GalleryEdit( props ) {
663
677
  );
664
678
  }
665
679
 
680
+ /**
681
+ * Sets the Gallery's aspect ratio.
682
+ *
683
+ * The base value is added to the img element as an inline
684
+ * style. A viewport value is instead rendered
685
+ * from the Gallery's responsive CSS, which overrides that inline style.
686
+ *
687
+ * @param {string|undefined} value Aspect ratio to set. In a viewport state
688
+ * `'auto'` is an override that cancels the
689
+ * base ratio, while `undefined` removes the
690
+ * override so the base value applies again.
691
+ */
666
692
  function setAspectRatio( value ) {
667
- setAttributes( { aspectRatio: value } );
668
-
669
- // Update all inner image blocks with the new aspect ratio
670
- const changedAttributes = {};
671
- const blocks = [];
672
-
673
- getBlock( clientId ).innerBlocks.forEach( ( block ) => {
674
- blocks.push( block.clientId );
675
- changedAttributes[ block.clientId ] = {
676
- aspectRatio: value === 'auto' ? undefined : value,
677
- };
678
- } );
693
+ if ( isViewportStyleState ) {
694
+ setGallerySettings( { aspectRatio: value } );
695
+ } else {
696
+ const cleanValue = ! value || value === 'auto' ? undefined : value;
697
+ setAttributes( { aspectRatio: value ?? 'auto' } );
698
+
699
+ // Update all inner image blocks with the new aspect ratio
700
+ const changedAttributes = {};
701
+ const blocks = [];
702
+
703
+ getBlock( clientId ).innerBlocks.forEach( ( block ) => {
704
+ blocks.push( block.clientId );
705
+ changedAttributes[ block.clientId ] = {
706
+ aspectRatio: cleanValue,
707
+ scale: cleanValue ? 'cover' : undefined,
708
+ };
709
+ } );
679
710
 
680
- updateBlockAttributes( blocks, changedAttributes, true );
711
+ updateBlockAttributes( blocks, changedAttributes, true );
712
+ }
681
713
 
714
+ const noticeValue = value ?? baseAspectRatio;
682
715
  const aspectRatioText = aspectRatioOptions.find(
683
- ( option ) => option.value === value
716
+ ( option ) => option.value === noticeValue
684
717
  );
718
+ const noticeText = isViewportStyleState
719
+ ? sprintf(
720
+ /* translators: 1: viewport name, 2: aspect ratio setting */
721
+ __(
722
+ 'Gallery images in the %1$s viewport updated to aspect ratio: %2$s'
723
+ ),
724
+ selectedStyleState.viewport.replace( '@', '' ),
725
+ aspectRatioText?.label || noticeValue
726
+ )
727
+ : sprintf(
728
+ /* translators: %s: aspect ratio setting */
729
+ __( 'All gallery images updated to aspect ratio: %s' ),
730
+ aspectRatioText?.label || noticeValue
731
+ );
685
732
 
686
- createSuccessNotice(
687
- sprintf(
688
- /* translators: %s: aspect ratio setting */
689
- __( 'All gallery images updated to aspect ratio: %s' ),
690
- aspectRatioText?.label || value
691
- ),
692
- {
693
- id: 'gallery-attributes-aspectRatio',
694
- type: 'snackbar',
695
- }
696
- );
733
+ createSuccessNotice( noticeText, {
734
+ id: 'gallery-attributes-aspectRatio',
735
+ type: 'snackbar',
736
+ } );
697
737
  }
698
738
 
699
739
  useEffect( () => {
@@ -805,12 +845,16 @@ export default function GalleryEdit( props ) {
805
845
  }
806
846
 
807
847
  const hasLinkTo = linkTo && linkTo !== 'none';
848
+ // Columns and crop to fit are Flex-only, so a Gallery in another layout has
849
+ // viewport settings to show only when aspect ratios are available. Without
850
+ // this the viewport Settings panel would render empty.
851
+ const hasViewportSettings = isFlexLayout || aspectRatioOptions.length > 1;
808
852
 
809
853
  return (
810
854
  <>
811
855
  <InspectorControls
812
856
  group={
813
- isViewportStyleState && isFlexLayout
857
+ isViewportStyleState && hasViewportSettings
814
858
  ? 'viewport'
815
859
  : 'default'
816
860
  }
@@ -826,9 +870,10 @@ export default function GalleryEdit( props ) {
826
870
  label={ __( 'Settings' ) }
827
871
  resetAll={ () => {
828
872
  if ( isViewportStyleState ) {
829
- setGalleryFlexSettings( {
873
+ setGallerySettings( {
830
874
  columns: undefined,
831
875
  imageCrop: undefined,
876
+ aspectRatio: undefined,
832
877
  } );
833
878
  return;
834
879
  }
@@ -862,7 +907,7 @@ export default function GalleryEdit( props ) {
862
907
  isViewportStyleState
863
908
  ? hasViewportColumns
864
909
  : !! activeColumns &&
865
- activeColumns !== displayedImageCount
910
+ activeColumns !== displayedImageCount
866
911
  }
867
912
  onDeselect={ () => setColumnsNumber( undefined ) }
868
913
  >
@@ -873,7 +918,7 @@ export default function GalleryEdit( props ) {
873
918
  ? activeColumns
874
919
  : defaultColumnsNumber(
875
920
  displayedImageCount
876
- )
921
+ )
877
922
  }
878
923
  onChange={ setColumnsNumber }
879
924
  min={ 1 }
@@ -897,7 +942,7 @@ export default function GalleryEdit( props ) {
897
942
  updateImagesSize( DEFAULT_MEDIA_SIZE_SLUG )
898
943
  }
899
944
  >
900
- <SelectControl
945
+ <WCSelectControl
901
946
  label={ __( 'Resolution' ) }
902
947
  help={ __(
903
948
  'Select the size of the source images.'
@@ -919,7 +964,7 @@ export default function GalleryEdit( props ) {
919
964
  : ! activeImageCrop
920
965
  }
921
966
  onDeselect={ () =>
922
- setGalleryFlexSettings( {
967
+ setGallerySettings( {
923
968
  imageCrop: isViewportStyleState
924
969
  ? undefined
925
970
  : true,
@@ -963,27 +1008,35 @@ export default function GalleryEdit( props ) {
963
1008
  />
964
1009
  </ToolsPanelItem>
965
1010
  ) }
966
- { ! isViewportStyleState &&
967
- aspectRatioOptions.length > 1 && (
968
- <ToolsPanelItem
969
- hasValue={ () =>
970
- !! aspectRatio && aspectRatio !== 'auto'
971
- }
1011
+ { aspectRatioOptions.length > 1 && (
1012
+ <ToolsPanelItem
1013
+ hasValue={ () =>
1014
+ isViewportStyleState
1015
+ ? hasViewportAspectRatio
1016
+ : activeAspectRatio !== 'auto'
1017
+ }
1018
+ label={ __( 'Aspect ratio' ) }
1019
+ onDeselect={ () =>
1020
+ // In a viewport state this clears the override
1021
+ // so the base ratio applies again, rather than
1022
+ // overriding it with Original.
1023
+ setAspectRatio(
1024
+ isViewportStyleState ? undefined : 'auto'
1025
+ )
1026
+ }
1027
+ isShownByDefault
1028
+ >
1029
+ <WCSelectControl
972
1030
  label={ __( 'Aspect ratio' ) }
973
- onDeselect={ () => setAspectRatio( 'auto' ) }
974
- isShownByDefault
975
- >
976
- <SelectControl
977
- label={ __( 'Aspect ratio' ) }
978
- help={ __(
979
- 'Set a consistent aspect ratio for all images in the gallery.'
980
- ) }
981
- value={ aspectRatio }
982
- options={ aspectRatioOptions }
983
- onChange={ setAspectRatio }
984
- />
985
- </ToolsPanelItem>
986
- ) }
1031
+ help={ __(
1032
+ 'Set a consistent aspect ratio for all images in the gallery.'
1033
+ ) }
1034
+ value={ activeAspectRatio }
1035
+ options={ aspectRatioOptions }
1036
+ onChange={ setAspectRatio }
1037
+ />
1038
+ </ToolsPanelItem>
1039
+ ) }
987
1040
  { ! isViewportStyleState &&
988
1041
  lightboxSetting?.allowEditing &&
989
1042
  hasLightboxImages && (
@@ -1077,12 +1130,11 @@ export default function GalleryEdit( props ) {
1077
1130
  />
1078
1131
  </BlockControls>
1079
1132
  ) }
1080
- { isFlexLayout && (
1081
- <GalleryFlexStyles
1082
- style={ attributes.style }
1083
- clientId={ clientId }
1084
- />
1085
- ) }
1133
+ <GalleryStyles
1134
+ style={ attributes.style }
1135
+ clientId={ clientId }
1136
+ isFlexLayout={ isFlexLayout }
1137
+ />
1086
1138
  </>
1087
1139
  { isDynamic ? (
1088
1140
  <GalleryDynamicView
@@ -0,0 +1,117 @@
1
+ import {
2
+ __experimentalGetGapCSSValue as getGapCSSValue,
3
+ privateApis as blockEditorPrivateApis,
4
+ store as blockEditorStore,
5
+ useStyleOverride,
6
+ useSettings,
7
+ } from '@wordpress/block-editor';
8
+ import { useSelect } from '@wordpress/data';
9
+ import { privateApis as globalStylesEnginePrivateApis } from '@wordpress/global-styles-engine';
10
+ import { unlock } from '../lock-unlock';
11
+ import { getGalleryResponsiveCSS } from './responsive-styles';
12
+
13
+ const { getResponsiveMediaQueries } = unlock( globalStylesEnginePrivateApis );
14
+ const { globalStylesDataKey } = unlock( blockEditorPrivateApis );
15
+ const GALLERY_BLOCK_NAME = 'core/gallery';
16
+
17
+ // --gallery-block--gutter-size is deprecated. --wp--style--gallery-gap-default should be used by themes that want to set a default
18
+ // gap on the gallery.
19
+ const FALLBACK_VALUE = `var( --wp--style--gallery-gap-default, var( --gallery-block--gutter-size, var( --wp--style--block-gap, 0.5em ) ) )`;
20
+
21
+ function getGalleryGapCustomPropertyStyle( selector, blockGap ) {
22
+ let column = FALLBACK_VALUE;
23
+ if ( blockGap ) {
24
+ column =
25
+ typeof blockGap === 'string'
26
+ ? getGapCSSValue( blockGap ) || FALLBACK_VALUE
27
+ : getGapCSSValue( blockGap?.left ) || FALLBACK_VALUE;
28
+ }
29
+
30
+ // The unstable gallery gap calculation requires a real value (such as `0px`) and not `0`.
31
+ return `${ selector } {
32
+ --wp--style--unstable-gallery-gap: ${ column === '0' ? '0px' : column }
33
+ }`;
34
+ }
35
+
36
+ function getBlockGapValue( style ) {
37
+ if ( ! Object.hasOwn( style?.spacing || {}, 'blockGap' ) ) {
38
+ return undefined;
39
+ }
40
+
41
+ return style.spacing.blockGap;
42
+ }
43
+
44
+ /**
45
+ * Renders the Gallery's instance styles: the gap custom property the Flex
46
+ * layout's column widths are calculated from, and the Gallery's responsive
47
+ * viewport CSS.
48
+ *
49
+ * @param {Object} props
50
+ * @param {Object} props.style Gallery block style attribute.
51
+ * @param {string} props.clientId Gallery block client ID.
52
+ * @param {boolean} props.isFlexLayout Whether the Gallery uses the Flex layout.
53
+ */
54
+ export default function GalleryStyles( { style, clientId, isFlexLayout } ) {
55
+ const selector = `.wp-block-gallery-${ clientId }`;
56
+ const [ viewportSettings ] = useSettings( 'viewport' );
57
+ const globalStyles = useSelect(
58
+ ( select ) =>
59
+ select( blockEditorStore ).getSettings()?.[ globalStylesDataKey ],
60
+ []
61
+ );
62
+ const responsiveMediaQueries =
63
+ getResponsiveMediaQueries( viewportSettings );
64
+ let css = '';
65
+
66
+ // The gap custom property only drives the Flex layout's column width
67
+ // calculations, so it is not emitted for the other Gallery layouts.
68
+ if ( isFlexLayout ) {
69
+ const globalGalleryStyles =
70
+ globalStyles?.blocks?.[ GALLERY_BLOCK_NAME ] || {};
71
+ const styleBlockGap = getBlockGapValue( style );
72
+ const globalGalleryBlockGap =
73
+ globalGalleryStyles?.spacing?.blockGap ?? FALLBACK_VALUE;
74
+ // Prefer the block's own gap value, then Gallery global styles. Missing
75
+ // values fall back to the Gallery blockGap default.
76
+ const blockGap =
77
+ styleBlockGap === undefined ? globalGalleryBlockGap : styleBlockGap;
78
+ css += getGalleryGapCustomPropertyStyle( selector, blockGap );
79
+
80
+ Object.entries( responsiveMediaQueries ).forEach(
81
+ ( [ viewport, mediaQuery ] ) => {
82
+ const styleViewportBlockGap = getBlockGapValue(
83
+ style?.[ viewport ]
84
+ );
85
+ // Viewport-specific block values win. Gallery global viewport values
86
+ // only apply when the block has no base gap, so they do not override an instance value.
87
+ const globalViewportBlockGap =
88
+ styleBlockGap === undefined
89
+ ? globalGalleryStyles?.[ viewport ]?.spacing?.blockGap
90
+ : undefined;
91
+ const viewportBlockGap =
92
+ styleViewportBlockGap === undefined
93
+ ? globalViewportBlockGap
94
+ : styleViewportBlockGap;
95
+ if (
96
+ viewportBlockGap === undefined ||
97
+ viewportBlockGap === null
98
+ ) {
99
+ return;
100
+ }
101
+
102
+ css += `${ mediaQuery }{${ getGalleryGapCustomPropertyStyle(
103
+ selector,
104
+ viewportBlockGap
105
+ ) }}`;
106
+ }
107
+ );
108
+ }
109
+
110
+ // The column and crop rules are scoped to the Flex layout, so they are
111
+ // inert in the other layouts and this can run for every Gallery.
112
+ css += getGalleryResponsiveCSS( selector, style, responsiveMediaQueries );
113
+
114
+ useStyleOverride( { css } );
115
+
116
+ return null;
117
+ }