@wordpress/block-library 8.13.0 → 8.15.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 (549) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/archives/index.js +5 -1
  3. package/build/archives/index.js.map +1 -1
  4. package/build/audio/index.js +5 -1
  5. package/build/audio/index.js.map +1 -1
  6. package/build/avatar/edit.js +1 -0
  7. package/build/avatar/edit.js.map +1 -1
  8. package/build/avatar/index.js +1 -1
  9. package/build/block/edit.js +1 -1
  10. package/build/block/edit.js.map +1 -1
  11. package/build/block/edit.native.js +6 -9
  12. package/build/block/edit.native.js.map +1 -1
  13. package/build/block/index.js +2 -1
  14. package/build/block/index.js.map +1 -1
  15. package/build/buttons/edit.js +7 -3
  16. package/build/buttons/edit.js.map +1 -1
  17. package/build/categories/index.js +5 -1
  18. package/build/categories/index.js.map +1 -1
  19. package/build/code/index.js +5 -1
  20. package/build/code/index.js.map +1 -1
  21. package/build/column/edit.native.js +1 -4
  22. package/build/column/edit.native.js.map +1 -1
  23. package/build/column/index.js +1 -0
  24. package/build/column/index.js.map +1 -1
  25. package/build/columns/edit.js +1 -0
  26. package/build/columns/edit.js.map +1 -1
  27. package/build/comment-author-avatar/edit.js +1 -0
  28. package/build/comment-author-avatar/edit.js.map +1 -1
  29. package/build/comments/index.js +1 -0
  30. package/build/comments/index.js.map +1 -1
  31. package/build/cover/deprecated.js +4 -2
  32. package/build/cover/deprecated.js.map +1 -1
  33. package/build/cover/edit/inspector-controls.js +2 -1
  34. package/build/cover/edit/inspector-controls.js.map +1 -1
  35. package/build/cover/index.js +1 -0
  36. package/build/cover/index.js.map +1 -1
  37. package/build/details/index.js +5 -1
  38. package/build/details/index.js.map +1 -1
  39. package/build/embed/embed-placeholder.native.js +37 -13
  40. package/build/embed/embed-placeholder.native.js.map +1 -1
  41. package/build/embed/util.js +9 -8
  42. package/build/embed/util.js.map +1 -1
  43. package/build/file/inspector.js +1 -0
  44. package/build/file/inspector.js.map +1 -1
  45. package/build/file/{interactivity.js → view-interactivity.js} +6 -2
  46. package/build/file/view-interactivity.js.map +1 -0
  47. package/build/footnotes/edit.js +20 -1
  48. package/build/footnotes/edit.js.map +1 -1
  49. package/build/footnotes/format.js +19 -16
  50. package/build/footnotes/format.js.map +1 -1
  51. package/build/footnotes/index.js +0 -1
  52. package/build/footnotes/index.js.map +1 -1
  53. package/build/gallery/edit.js +1 -1
  54. package/build/gallery/edit.js.map +1 -1
  55. package/build/gallery/index.js +3 -1
  56. package/build/gallery/index.js.map +1 -1
  57. package/build/group/index.js +1 -0
  58. package/build/group/index.js.map +1 -1
  59. package/build/heading/index.js +5 -1
  60. package/build/heading/index.js.map +1 -1
  61. package/build/heading/transforms.js +5 -1
  62. package/build/heading/transforms.js.map +1 -1
  63. package/build/image/deprecated.js +453 -175
  64. package/build/image/deprecated.js.map +1 -1
  65. package/build/image/edit.js +0 -4
  66. package/build/image/edit.js.map +1 -1
  67. package/build/image/image.js +96 -43
  68. package/build/image/image.js.map +1 -1
  69. package/build/image/index.js +6 -0
  70. package/build/image/index.js.map +1 -1
  71. package/build/image/save.js +8 -1
  72. package/build/image/save.js.map +1 -1
  73. package/build/image/utils.js +18 -0
  74. package/build/image/utils.js.map +1 -1
  75. package/build/image/{interactivity.js → view-interactivity.js} +86 -44
  76. package/build/image/view-interactivity.js.map +1 -0
  77. package/build/index.js +12 -3
  78. package/build/index.js.map +1 -1
  79. package/build/latest-comments/edit.js +1 -0
  80. package/build/latest-comments/edit.js.map +1 -1
  81. package/build/latest-posts/edit.js +2 -0
  82. package/build/latest-posts/edit.js.map +1 -1
  83. package/build/list/edit.js +4 -4
  84. package/build/list/edit.js.map +1 -1
  85. package/build/list/index.js +5 -1
  86. package/build/list/index.js.map +1 -1
  87. package/build/list-item/utils.js +6 -1
  88. package/build/list-item/utils.js.map +1 -1
  89. package/build/media-text/index.js +1 -0
  90. package/build/media-text/index.js.map +1 -1
  91. package/build/media-text/media-container.native.js +2 -1
  92. package/build/media-text/media-container.native.js.map +1 -1
  93. package/build/missing/edit.js +22 -8
  94. package/build/missing/edit.js.map +1 -1
  95. package/build/missing/edit.native.js +7 -5
  96. package/build/missing/edit.native.js.map +1 -1
  97. package/build/navigation/constants.js +10 -4
  98. package/build/navigation/constants.js.map +1 -1
  99. package/build/navigation/edit/index.js +17 -3
  100. package/build/navigation/edit/index.js.map +1 -1
  101. package/build/navigation/edit/inner-blocks.js +2 -2
  102. package/build/navigation/edit/inner-blocks.js.map +1 -1
  103. package/build/navigation/edit/menu-inspector-controls.js +0 -1
  104. package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
  105. package/build/navigation/edit/unsaved-inner-blocks.js +2 -2
  106. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  107. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +10 -15
  108. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  109. package/build/navigation/use-navigation-menu.js +33 -45
  110. package/build/navigation/use-navigation-menu.js.map +1 -1
  111. package/build/navigation/view-interactivity.js +185 -0
  112. package/build/navigation/view-interactivity.js.map +1 -0
  113. package/build/navigation-link/edit.js +12 -18
  114. package/build/navigation-link/edit.js.map +1 -1
  115. package/build/navigation-link/link-ui.js +12 -2
  116. package/build/navigation-link/link-ui.js.map +1 -1
  117. package/build/navigation-submenu/edit.js +2 -2
  118. package/build/navigation-submenu/edit.js.map +1 -1
  119. package/build/page-list/convert-to-links-modal.js +3 -3
  120. package/build/page-list/convert-to-links-modal.js.map +1 -1
  121. package/build/page-list/edit.js +34 -39
  122. package/build/page-list/edit.js.map +1 -1
  123. package/build/page-list/use-convert-to-navigation-links.js +2 -15
  124. package/build/page-list/use-convert-to-navigation-links.js.map +1 -1
  125. package/build/paragraph/index.js +1 -0
  126. package/build/paragraph/index.js.map +1 -1
  127. package/build/paragraph/transforms.js +1 -0
  128. package/build/paragraph/transforms.js.map +1 -1
  129. package/build/post-comments-form/index.js +1 -0
  130. package/build/post-comments-form/index.js.map +1 -1
  131. package/build/post-navigation-link/index.js +1 -0
  132. package/build/post-navigation-link/index.js.map +1 -1
  133. package/build/post-time-to-read/index.js +5 -1
  134. package/build/post-time-to-read/index.js.map +1 -1
  135. package/build/query-pagination/edit.js +1 -1
  136. package/build/query-pagination/edit.js.map +1 -1
  137. package/build/query-pagination-numbers/index.js +1 -1
  138. package/build/query-title/edit.js +43 -1
  139. package/build/query-title/edit.js.map +1 -1
  140. package/build/quote/index.js +1 -0
  141. package/build/quote/index.js.map +1 -1
  142. package/build/quote/transforms.js +8 -0
  143. package/build/quote/transforms.js.map +1 -1
  144. package/build/rss/edit.js +3 -0
  145. package/build/rss/edit.js.map +1 -1
  146. package/build/search/edit.js +4 -3
  147. package/build/search/edit.js.map +1 -1
  148. package/build/search/index.js +1 -0
  149. package/build/search/index.js.map +1 -1
  150. package/build/site-logo/edit.js +1 -0
  151. package/build/site-logo/edit.js.map +1 -1
  152. package/build/site-logo/index.js +5 -1
  153. package/build/site-logo/index.js.map +1 -1
  154. package/build/site-tagline/icon.js +1 -1
  155. package/build/site-tagline/icon.js.map +1 -1
  156. package/build/site-tagline/index.js +5 -1
  157. package/build/site-tagline/index.js.map +1 -1
  158. package/build/site-title/index.js +5 -1
  159. package/build/site-title/index.js.map +1 -1
  160. package/build/social-links/index.js +3 -1
  161. package/build/social-links/index.js.map +1 -1
  162. package/build/table/index.js +5 -1
  163. package/build/table/index.js.map +1 -1
  164. package/build/tag-cloud/edit.js +1 -0
  165. package/build/tag-cloud/edit.js.map +1 -1
  166. package/build/template-part/edit/index.js +1 -1
  167. package/build/template-part/edit/index.js.map +1 -1
  168. package/build/term-description/index.js +1 -0
  169. package/build/term-description/index.js.map +1 -1
  170. package/build/text-columns/edit.js +1 -0
  171. package/build/text-columns/edit.js.map +1 -1
  172. package/build/verse/index.js +5 -1
  173. package/build/verse/index.js.map +1 -1
  174. package/build/video/deprecated.js +5 -1
  175. package/build/video/deprecated.js.map +1 -1
  176. package/build/video/index.js +5 -1
  177. package/build/video/index.js.map +1 -1
  178. package/build-module/archives/index.js +5 -1
  179. package/build-module/archives/index.js.map +1 -1
  180. package/build-module/audio/index.js +5 -1
  181. package/build-module/audio/index.js.map +1 -1
  182. package/build-module/avatar/edit.js +1 -0
  183. package/build-module/avatar/edit.js.map +1 -1
  184. package/build-module/avatar/index.js +1 -1
  185. package/build-module/block/edit.js +1 -1
  186. package/build-module/block/edit.js.map +1 -1
  187. package/build-module/block/edit.native.js +7 -9
  188. package/build-module/block/edit.native.js.map +1 -1
  189. package/build-module/block/index.js +2 -1
  190. package/build-module/block/index.js.map +1 -1
  191. package/build-module/buttons/edit.js +7 -3
  192. package/build-module/buttons/edit.js.map +1 -1
  193. package/build-module/categories/index.js +5 -1
  194. package/build-module/categories/index.js.map +1 -1
  195. package/build-module/code/index.js +5 -1
  196. package/build-module/code/index.js.map +1 -1
  197. package/build-module/column/edit.native.js +1 -4
  198. package/build-module/column/edit.native.js.map +1 -1
  199. package/build-module/column/index.js +1 -0
  200. package/build-module/column/index.js.map +1 -1
  201. package/build-module/columns/edit.js +1 -0
  202. package/build-module/columns/edit.js.map +1 -1
  203. package/build-module/comment-author-avatar/edit.js +1 -0
  204. package/build-module/comment-author-avatar/edit.js.map +1 -1
  205. package/build-module/comments/index.js +1 -0
  206. package/build-module/comments/index.js.map +1 -1
  207. package/build-module/cover/deprecated.js +4 -2
  208. package/build-module/cover/deprecated.js.map +1 -1
  209. package/build-module/cover/edit/inspector-controls.js +2 -1
  210. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  211. package/build-module/cover/index.js +1 -0
  212. package/build-module/cover/index.js.map +1 -1
  213. package/build-module/details/index.js +5 -1
  214. package/build-module/details/index.js.map +1 -1
  215. package/build-module/embed/embed-placeholder.native.js +37 -14
  216. package/build-module/embed/embed-placeholder.native.js.map +1 -1
  217. package/build-module/embed/util.js +6 -6
  218. package/build-module/embed/util.js.map +1 -1
  219. package/build-module/file/inspector.js +1 -0
  220. package/build-module/file/inspector.js.map +1 -1
  221. package/build-module/file/{interactivity.js → view-interactivity.js} +6 -2
  222. package/build-module/file/view-interactivity.js.map +1 -0
  223. package/build-module/footnotes/edit.js +18 -2
  224. package/build-module/footnotes/edit.js.map +1 -1
  225. package/build-module/footnotes/format.js +19 -16
  226. package/build-module/footnotes/format.js.map +1 -1
  227. package/build-module/footnotes/index.js +0 -1
  228. package/build-module/footnotes/index.js.map +1 -1
  229. package/build-module/gallery/edit.js +1 -1
  230. package/build-module/gallery/edit.js.map +1 -1
  231. package/build-module/gallery/index.js +3 -1
  232. package/build-module/gallery/index.js.map +1 -1
  233. package/build-module/group/index.js +1 -0
  234. package/build-module/group/index.js.map +1 -1
  235. package/build-module/heading/index.js +5 -1
  236. package/build-module/heading/index.js.map +1 -1
  237. package/build-module/heading/transforms.js +5 -1
  238. package/build-module/heading/transforms.js.map +1 -1
  239. package/build-module/image/deprecated.js +454 -176
  240. package/build-module/image/deprecated.js.map +1 -1
  241. package/build-module/image/edit.js +0 -4
  242. package/build-module/image/edit.js.map +1 -1
  243. package/build-module/image/image.js +96 -46
  244. package/build-module/image/image.js.map +1 -1
  245. package/build-module/image/index.js +6 -0
  246. package/build-module/image/index.js.map +1 -1
  247. package/build-module/image/save.js +8 -1
  248. package/build-module/image/save.js.map +1 -1
  249. package/build-module/image/utils.js +16 -0
  250. package/build-module/image/utils.js.map +1 -1
  251. package/build-module/image/{interactivity.js → view-interactivity.js} +86 -44
  252. package/build-module/image/view-interactivity.js.map +1 -0
  253. package/build-module/index.js +12 -3
  254. package/build-module/index.js.map +1 -1
  255. package/build-module/latest-comments/edit.js +1 -0
  256. package/build-module/latest-comments/edit.js.map +1 -1
  257. package/build-module/latest-posts/edit.js +2 -0
  258. package/build-module/latest-posts/edit.js.map +1 -1
  259. package/build-module/list/edit.js +4 -4
  260. package/build-module/list/edit.js.map +1 -1
  261. package/build-module/list/index.js +5 -1
  262. package/build-module/list/index.js.map +1 -1
  263. package/build-module/list-item/utils.js +6 -1
  264. package/build-module/list-item/utils.js.map +1 -1
  265. package/build-module/media-text/index.js +1 -0
  266. package/build-module/media-text/index.js.map +1 -1
  267. package/build-module/media-text/media-container.native.js +2 -1
  268. package/build-module/media-text/media-container.native.js.map +1 -1
  269. package/build-module/missing/edit.js +22 -8
  270. package/build-module/missing/edit.js.map +1 -1
  271. package/build-module/missing/edit.native.js +8 -6
  272. package/build-module/missing/edit.native.js.map +1 -1
  273. package/build-module/navigation/constants.js +8 -3
  274. package/build-module/navigation/constants.js.map +1 -1
  275. package/build-module/navigation/edit/index.js +18 -4
  276. package/build-module/navigation/edit/index.js.map +1 -1
  277. package/build-module/navigation/edit/inner-blocks.js +2 -2
  278. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  279. package/build-module/navigation/edit/menu-inspector-controls.js +0 -1
  280. package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
  281. package/build-module/navigation/edit/unsaved-inner-blocks.js +2 -2
  282. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  283. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +10 -14
  284. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  285. package/build-module/navigation/use-navigation-menu.js +35 -47
  286. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  287. package/build-module/navigation/view-interactivity.js +182 -0
  288. package/build-module/navigation/view-interactivity.js.map +1 -0
  289. package/build-module/navigation-link/edit.js +13 -19
  290. package/build-module/navigation-link/edit.js.map +1 -1
  291. package/build-module/navigation-link/link-ui.js +13 -3
  292. package/build-module/navigation-link/link-ui.js.map +1 -1
  293. package/build-module/navigation-submenu/edit.js +2 -2
  294. package/build-module/navigation-submenu/edit.js.map +1 -1
  295. package/build-module/page-list/convert-to-links-modal.js +3 -3
  296. package/build-module/page-list/convert-to-links-modal.js.map +1 -1
  297. package/build-module/page-list/edit.js +34 -39
  298. package/build-module/page-list/edit.js.map +1 -1
  299. package/build-module/page-list/use-convert-to-navigation-links.js +3 -16
  300. package/build-module/page-list/use-convert-to-navigation-links.js.map +1 -1
  301. package/build-module/paragraph/index.js +1 -0
  302. package/build-module/paragraph/index.js.map +1 -1
  303. package/build-module/paragraph/transforms.js +1 -0
  304. package/build-module/paragraph/transforms.js.map +1 -1
  305. package/build-module/post-comments-form/index.js +1 -0
  306. package/build-module/post-comments-form/index.js.map +1 -1
  307. package/build-module/post-navigation-link/index.js +1 -0
  308. package/build-module/post-navigation-link/index.js.map +1 -1
  309. package/build-module/post-time-to-read/index.js +5 -1
  310. package/build-module/post-time-to-read/index.js.map +1 -1
  311. package/build-module/query-pagination/edit.js +1 -1
  312. package/build-module/query-pagination/edit.js.map +1 -1
  313. package/build-module/query-pagination-numbers/index.js +1 -1
  314. package/build-module/query-title/edit.js +44 -3
  315. package/build-module/query-title/edit.js.map +1 -1
  316. package/build-module/quote/index.js +1 -0
  317. package/build-module/quote/index.js.map +1 -1
  318. package/build-module/quote/transforms.js +8 -0
  319. package/build-module/quote/transforms.js.map +1 -1
  320. package/build-module/rss/edit.js +3 -0
  321. package/build-module/rss/edit.js.map +1 -1
  322. package/build-module/search/edit.js +4 -3
  323. package/build-module/search/edit.js.map +1 -1
  324. package/build-module/search/index.js +1 -0
  325. package/build-module/search/index.js.map +1 -1
  326. package/build-module/site-logo/edit.js +1 -0
  327. package/build-module/site-logo/edit.js.map +1 -1
  328. package/build-module/site-logo/index.js +5 -1
  329. package/build-module/site-logo/index.js.map +1 -1
  330. package/build-module/site-tagline/icon.js +1 -1
  331. package/build-module/site-tagline/icon.js.map +1 -1
  332. package/build-module/site-tagline/index.js +5 -1
  333. package/build-module/site-tagline/index.js.map +1 -1
  334. package/build-module/site-title/index.js +5 -1
  335. package/build-module/site-title/index.js.map +1 -1
  336. package/build-module/social-links/index.js +3 -1
  337. package/build-module/social-links/index.js.map +1 -1
  338. package/build-module/table/index.js +5 -1
  339. package/build-module/table/index.js.map +1 -1
  340. package/build-module/tag-cloud/edit.js +1 -0
  341. package/build-module/tag-cloud/edit.js.map +1 -1
  342. package/build-module/template-part/edit/index.js +1 -1
  343. package/build-module/template-part/edit/index.js.map +1 -1
  344. package/build-module/term-description/index.js +1 -0
  345. package/build-module/term-description/index.js.map +1 -1
  346. package/build-module/text-columns/edit.js +1 -0
  347. package/build-module/text-columns/edit.js.map +1 -1
  348. package/build-module/verse/index.js +5 -1
  349. package/build-module/verse/index.js.map +1 -1
  350. package/build-module/video/deprecated.js +5 -1
  351. package/build-module/video/deprecated.js.map +1 -1
  352. package/build-module/video/index.js +5 -1
  353. package/build-module/video/index.js.map +1 -1
  354. package/build-style/details/style-rtl.css +4 -2
  355. package/build-style/details/style.css +4 -2
  356. package/build-style/footnotes/style-rtl.css +4 -3
  357. package/build-style/footnotes/style.css +4 -3
  358. package/build-style/image/style-rtl.css +16 -2
  359. package/build-style/image/style.css +16 -2
  360. package/build-style/navigation/style-rtl.css +14 -2
  361. package/build-style/navigation/style.css +14 -2
  362. package/build-style/query-pagination/style-rtl.css +4 -2
  363. package/build-style/query-pagination/style.css +4 -2
  364. package/build-style/style-rtl.css +42 -11
  365. package/build-style/style.css +42 -11
  366. package/package.json +33 -37
  367. package/src/archives/block.json +5 -1
  368. package/src/audio/block.json +5 -1
  369. package/src/audio/test/__snapshots__/edit.native.js.snap +58 -33
  370. package/src/avatar/block.json +1 -1
  371. package/src/avatar/edit.js +1 -0
  372. package/src/block/block.json +2 -1
  373. package/src/block/edit.js +2 -2
  374. package/src/block/edit.native.js +8 -12
  375. package/src/block/editor.native.scss +2 -2
  376. package/src/block/test/edit.native.js +4 -4
  377. package/src/buttons/edit.js +4 -4
  378. package/src/categories/block.json +5 -1
  379. package/src/code/block.json +5 -1
  380. package/src/column/block.json +1 -0
  381. package/src/column/edit.native.js +4 -10
  382. package/src/column/editor.native.scss +0 -4
  383. package/src/columns/edit.js +1 -0
  384. package/src/comment-author-avatar/edit.js +1 -0
  385. package/src/comment-template/index.php +5 -2
  386. package/src/comments/block.json +1 -0
  387. package/src/cover/block.json +1 -0
  388. package/src/cover/deprecated.js +2 -0
  389. package/src/cover/edit/inspector-controls.js +1 -0
  390. package/src/details/block.json +5 -1
  391. package/src/embed/embed-placeholder.native.js +80 -47
  392. package/src/embed/styles.native.scss +54 -18
  393. package/src/embed/test/index.native.js +5 -5
  394. package/src/embed/util.js +4 -6
  395. package/src/file/index.php +4 -3
  396. package/src/file/inspector.js +1 -0
  397. package/src/file/test/__snapshots__/edit.native.js.snap +58 -33
  398. package/src/file/{interactivity.js → view-interactivity.js} +4 -1
  399. package/src/footnotes/block.json +0 -1
  400. package/src/footnotes/edit.js +21 -2
  401. package/src/footnotes/format.js +22 -20
  402. package/src/footnotes/index.php +11 -9
  403. package/src/footnotes/style.scss +6 -3
  404. package/src/gallery/block.json +3 -1
  405. package/src/gallery/edit.js +1 -1
  406. package/src/gallery/test/index.native.js +17 -16
  407. package/src/group/block.json +1 -0
  408. package/src/heading/block.json +5 -1
  409. package/src/heading/test/index.native.js +18 -0
  410. package/src/home-link/index.php +15 -2
  411. package/src/image/block.json +6 -0
  412. package/src/image/deprecated.js +597 -320
  413. package/src/image/edit.js +0 -4
  414. package/src/image/image.js +131 -62
  415. package/src/image/index.php +47 -8
  416. package/src/image/save.js +9 -1
  417. package/src/image/style.scss +15 -2
  418. package/src/image/test/edit.native.js +1 -1
  419. package/src/image/utils.js +16 -0
  420. package/src/image/{interactivity.js → view-interactivity.js} +99 -50
  421. package/src/index.js +18 -1
  422. package/src/latest-comments/edit.js +1 -0
  423. package/src/latest-posts/edit.js +2 -0
  424. package/src/latest-posts/index.php +1 -1
  425. package/src/list/block.json +5 -1
  426. package/src/list/edit.js +6 -4
  427. package/src/list/test/edit.native.js +129 -33
  428. package/src/media-text/block.json +1 -0
  429. package/src/media-text/media-container.native.js +1 -0
  430. package/src/missing/edit.js +31 -11
  431. package/src/missing/edit.native.js +12 -10
  432. package/src/missing/style.native.scss +19 -12
  433. package/src/missing/test/__snapshots__/edit.native.js.snap +21 -13
  434. package/src/navigation/constants.js +12 -6
  435. package/src/navigation/edit/index.js +30 -3
  436. package/src/navigation/edit/inner-blocks.js +2 -2
  437. package/src/navigation/edit/menu-inspector-controls.js +0 -1
  438. package/src/navigation/edit/unsaved-inner-blocks.js +2 -2
  439. package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +17 -21
  440. package/src/navigation/index.php +43 -16
  441. package/src/navigation/style.scss +27 -8
  442. package/src/navigation/use-navigation-menu.js +39 -63
  443. package/src/navigation/view-interactivity.js +196 -0
  444. package/src/navigation-link/edit.js +61 -61
  445. package/src/navigation-link/link-ui.js +14 -2
  446. package/src/navigation-submenu/edit.js +2 -2
  447. package/src/navigation-submenu/index.php +2 -12
  448. package/src/page-list/convert-to-links-modal.js +3 -3
  449. package/src/page-list/edit.js +65 -62
  450. package/src/page-list/use-convert-to-navigation-links.js +3 -20
  451. package/src/paragraph/block.json +1 -0
  452. package/src/paragraph/test/__snapshots__/edit.native.js.snap +1 -0
  453. package/src/paragraph/test/edit.native.js +26 -0
  454. package/src/post-comments-form/block.json +1 -0
  455. package/src/post-navigation-link/block.json +1 -0
  456. package/src/post-template/index.php +4 -2
  457. package/src/post-time-to-read/block.json +5 -1
  458. package/src/post-title/index.php +6 -3
  459. package/src/preformatted/test/__snapshots__/edit.native.js.snap +2 -0
  460. package/src/query-pagination/edit.js +17 -14
  461. package/src/query-pagination-numbers/block.json +1 -1
  462. package/src/query-title/edit.js +48 -6
  463. package/src/quote/block.json +1 -0
  464. package/src/quote/test/__snapshots__/transforms.native.js.snap +10 -0
  465. package/src/quote/test/transforms.native.js +5 -1
  466. package/src/quote/transforms.js +13 -0
  467. package/src/rss/edit.js +3 -0
  468. package/src/search/block.json +1 -0
  469. package/src/search/edit.js +4 -3
  470. package/src/search/index.php +22 -4
  471. package/src/search/test/__snapshots__/edit.native.js.snap +7 -0
  472. package/src/site-logo/block.json +5 -1
  473. package/src/site-logo/edit.js +1 -0
  474. package/src/site-tagline/block.json +5 -1
  475. package/src/site-tagline/icon.js +1 -1
  476. package/src/site-title/block.json +5 -1
  477. package/src/social-links/block.json +3 -1
  478. package/src/table/block.json +5 -1
  479. package/src/tag-cloud/edit.js +1 -0
  480. package/src/template-part/edit/index.js +1 -1
  481. package/src/template-part/index.php +9 -15
  482. package/src/term-description/block.json +1 -0
  483. package/src/text-columns/edit.js +1 -0
  484. package/src/verse/block.json +5 -1
  485. package/src/video/block.json +5 -1
  486. package/build/file/interactivity.js.map +0 -1
  487. package/build/gallery/shared-icon.native.js +0 -38
  488. package/build/gallery/shared-icon.native.js.map +0 -1
  489. package/build/heading/heading-level-icon.js +0 -61
  490. package/build/heading/heading-level-icon.js.map +0 -1
  491. package/build/image/interactivity.js.map +0 -1
  492. package/build/navigation/interactivity.js +0 -167
  493. package/build/navigation/interactivity.js.map +0 -1
  494. package/build/utils/interactivity/constants.js +0 -9
  495. package/build/utils/interactivity/constants.js.map +0 -1
  496. package/build/utils/interactivity/directives.js +0 -222
  497. package/build/utils/interactivity/directives.js.map +0 -1
  498. package/build/utils/interactivity/hooks.js +0 -159
  499. package/build/utils/interactivity/hooks.js.map +0 -1
  500. package/build/utils/interactivity/hydration.js +0 -34
  501. package/build/utils/interactivity/hydration.js.map +0 -1
  502. package/build/utils/interactivity/index.js +0 -32
  503. package/build/utils/interactivity/index.js.map +0 -1
  504. package/build/utils/interactivity/portals.js +0 -108
  505. package/build/utils/interactivity/portals.js.map +0 -1
  506. package/build/utils/interactivity/store.js +0 -66
  507. package/build/utils/interactivity/store.js.map +0 -1
  508. package/build/utils/interactivity/utils.js +0 -87
  509. package/build/utils/interactivity/utils.js.map +0 -1
  510. package/build/utils/interactivity/vdom.js +0 -119
  511. package/build/utils/interactivity/vdom.js.map +0 -1
  512. package/build-module/file/interactivity.js.map +0 -1
  513. package/build-module/gallery/shared-icon.native.js +0 -24
  514. package/build-module/gallery/shared-icon.native.js.map +0 -1
  515. package/build-module/heading/heading-level-icon.js +0 -53
  516. package/build-module/heading/heading-level-icon.js.map +0 -1
  517. package/build-module/image/interactivity.js.map +0 -1
  518. package/build-module/navigation/interactivity.js +0 -164
  519. package/build-module/navigation/interactivity.js.map +0 -1
  520. package/build-module/utils/interactivity/constants.js +0 -2
  521. package/build-module/utils/interactivity/constants.js.map +0 -1
  522. package/build-module/utils/interactivity/directives.js +0 -209
  523. package/build-module/utils/interactivity/directives.js.map +0 -1
  524. package/build-module/utils/interactivity/hooks.js +0 -145
  525. package/build-module/utils/interactivity/hooks.js.map +0 -1
  526. package/build-module/utils/interactivity/hydration.js +0 -21
  527. package/build-module/utils/interactivity/hydration.js.map +0 -1
  528. package/build-module/utils/interactivity/index.js +0 -15
  529. package/build-module/utils/interactivity/index.js.map +0 -1
  530. package/build-module/utils/interactivity/portals.js +0 -100
  531. package/build-module/utils/interactivity/portals.js.map +0 -1
  532. package/build-module/utils/interactivity/store.js +0 -55
  533. package/build-module/utils/interactivity/store.js.map +0 -1
  534. package/build-module/utils/interactivity/utils.js +0 -75
  535. package/build-module/utils/interactivity/utils.js.map +0 -1
  536. package/build-module/utils/interactivity/vdom.js +0 -107
  537. package/build-module/utils/interactivity/vdom.js.map +0 -1
  538. package/src/gallery/shared-icon.native.js +0 -23
  539. package/src/heading/heading-level-icon.js +0 -48
  540. package/src/navigation/interactivity.js +0 -169
  541. package/src/utils/interactivity/constants.js +0 -1
  542. package/src/utils/interactivity/directives.js +0 -200
  543. package/src/utils/interactivity/hooks.js +0 -145
  544. package/src/utils/interactivity/hydration.js +0 -22
  545. package/src/utils/interactivity/index.js +0 -15
  546. package/src/utils/interactivity/portals.js +0 -98
  547. package/src/utils/interactivity/store.js +0 -45
  548. package/src/utils/interactivity/utils.js +0 -66
  549. package/src/utils/interactivity/vdom.js +0 -111
@@ -94,6 +94,7 @@ exports[`File block renders file error state without crashing 1`] = `
94
94
  onStartShouldSetResponder={[Function]}
95
95
  placeholder="File name"
96
96
  placeholderTextColor="gray"
97
+ selectionColor="black"
97
98
  style={
98
99
  {
99
100
  "backgroundColor": undefined,
@@ -322,6 +323,7 @@ exports[`File block renders file without crashing 1`] = `
322
323
  onStartShouldSetResponder={[Function]}
323
324
  placeholder="File name"
324
325
  placeholderTextColor="gray"
326
+ selectionColor="black"
325
327
  style={
326
328
  {
327
329
  "backgroundColor": undefined,
@@ -439,22 +441,13 @@ exports[`File block renders placeholder without crashing 1`] = `
439
441
  }
440
442
  >
441
443
  <View
442
- accessibilityHint="Double tap to select"
443
- accessibilityLabel="File block. Empty"
444
- accessibilityRole="button"
445
- accessible={true}
446
- focusable={true}
447
- onClick={[Function]}
448
- onResponderGrant={[Function]}
449
- onResponderMove={[Function]}
450
- onResponderRelease={[Function]}
451
- onResponderTerminate={[Function]}
452
- onResponderTerminationRequest={[Function]}
453
- onStartShouldSetResponder={[Function]}
454
444
  style={
455
445
  [
456
446
  [
457
- undefined,
447
+ [
448
+ undefined,
449
+ false,
450
+ ],
458
451
  undefined,
459
452
  undefined,
460
453
  ],
@@ -462,33 +455,65 @@ exports[`File block renders placeholder without crashing 1`] = `
462
455
  ]
463
456
  }
464
457
  >
458
+ <View>
459
+ <View
460
+ style={
461
+ {
462
+ "fill": "black",
463
+ }
464
+ }
465
+ >
466
+ <View
467
+ style={{}}
468
+ >
469
+ <Svg
470
+ fill="black"
471
+ height={24}
472
+ style={{}}
473
+ viewBox="0 0 24 24"
474
+ width={24}
475
+ xmlns="http://www.w3.org/2000/svg"
476
+ >
477
+ Path
478
+ </Svg>
479
+ </View>
480
+ </View>
481
+ <Text>
482
+ File
483
+ </Text>
484
+ </View>
465
485
  <View
486
+ accessibilityHint="Double tap to select"
487
+ accessibilityLabel="File block. Empty"
488
+ accessibilityRole="button"
489
+ accessible={true}
490
+ collapsable={false}
491
+ focusable={true}
492
+ hitSlop={
493
+ {
494
+ "bottom": 22,
495
+ "left": 22,
496
+ "right": 22,
497
+ "top": 22,
498
+ }
499
+ }
500
+ onClick={[Function]}
501
+ onResponderGrant={[Function]}
502
+ onResponderMove={[Function]}
503
+ onResponderRelease={[Function]}
504
+ onResponderTerminate={[Function]}
505
+ onResponderTerminationRequest={[Function]}
506
+ onStartShouldSetResponder={[Function]}
466
507
  style={
467
508
  {
468
- "fill": "gray",
509
+ "opacity": 1,
469
510
  }
470
511
  }
471
512
  >
472
- <View
473
- style={{}}
474
- >
475
- <Svg
476
- height={24}
477
- style={{}}
478
- viewBox="0 0 24 24"
479
- width={24}
480
- xmlns="http://www.w3.org/2000/svg"
481
- >
482
- Path
483
- </Svg>
484
- </View>
513
+ <Text>
514
+ Choose a file
515
+ </Text>
485
516
  </View>
486
- <Text>
487
- File
488
- </Text>
489
- <Text>
490
- CHOOSE A FILE
491
- </Text>
492
517
  </View>
493
518
  </View>
494
519
  `;
@@ -1,7 +1,10 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { store } from '@wordpress/interactivity';
1
5
  /**
2
6
  * Internal dependencies
3
7
  */
4
- import { store } from '../utils/interactivity';
5
8
  import { browserSupportsPdfs as hasPdfPreview } from './utils';
6
9
 
7
10
  store( {
@@ -11,7 +11,6 @@
11
11
  "supports": {
12
12
  "html": false,
13
13
  "multiple": false,
14
- "inserter": false,
15
14
  "reusable": false
16
15
  },
17
16
  "style": "wp-block-footnotes"
@@ -1,8 +1,11 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import { RichText, useBlockProps } from '@wordpress/block-editor';
4
+ import { BlockIcon, RichText, useBlockProps } from '@wordpress/block-editor';
5
5
  import { useEntityProp } from '@wordpress/core-data';
6
+ import { __ } from '@wordpress/i18n';
7
+ import { Placeholder } from '@wordpress/components';
8
+ import { formatListNumbered as icon } from '@wordpress/icons';
6
9
 
7
10
  export default function FootnotesEdit( { context: { postType, postId } } ) {
8
11
  const [ meta, updateMeta ] = useEntityProp(
@@ -12,8 +15,24 @@ export default function FootnotesEdit( { context: { postType, postId } } ) {
12
15
  postId
13
16
  );
14
17
  const footnotes = meta?.footnotes ? JSON.parse( meta.footnotes ) : [];
18
+ const blockProps = useBlockProps();
19
+
20
+ if ( ! footnotes.length ) {
21
+ return (
22
+ <div { ...blockProps }>
23
+ <Placeholder
24
+ icon={ <BlockIcon icon={ icon } /> }
25
+ label={ __( 'Footnotes' ) }
26
+ instructions={ __(
27
+ 'Footnotes found in blocks within this document will be displayed here.'
28
+ ) }
29
+ />
30
+ </div>
31
+ );
32
+ }
33
+
15
34
  return (
16
- <ol { ...useBlockProps() }>
35
+ <ol { ...blockProps }>
17
36
  { footnotes.map( ( { id, content } ) => (
18
37
  <li key={ id }>
19
38
  <RichText
@@ -24,11 +24,9 @@ import { name } from './block.json';
24
24
  export const formatName = 'core/footnote';
25
25
  export const format = {
26
26
  title: __( 'Footnote' ),
27
- tagName: 'a',
27
+ tagName: 'sup',
28
28
  className: 'fn',
29
29
  attributes: {
30
- id: 'id',
31
- href: 'href',
32
30
  'data-fn': 'data-fn',
33
31
  },
34
32
  contentEditable: false,
@@ -42,26 +40,30 @@ export const format = {
42
40
  } = useSelect( blockEditorStore );
43
41
  const { selectionChange, insertBlock } =
44
42
  useDispatch( blockEditorStore );
43
+
45
44
  function onClick() {
46
45
  registry.batch( () => {
47
- const id = createId();
48
- const newValue = insertObject(
49
- value,
50
- {
51
- type: formatName,
52
- attributes: {
53
- href: '#' + id,
54
- id: `${ id }-link`,
55
- 'data-fn': id,
46
+ let id;
47
+ if ( isObjectActive ) {
48
+ const object = value.replacements[ value.start ];
49
+ id = object?.attributes?.[ 'data-fn' ];
50
+ } else {
51
+ id = createId();
52
+ const newValue = insertObject(
53
+ value,
54
+ {
55
+ type: formatName,
56
+ attributes: {
57
+ 'data-fn': id,
58
+ },
59
+ innerHTML: `<a href="#${ id }" id="${ id }-link">*</a>`,
56
60
  },
57
- innerHTML: '*',
58
- },
59
- value.end,
60
- value.end
61
- );
62
- newValue.start = newValue.end - 1;
63
-
64
- onChange( newValue );
61
+ value.end,
62
+ value.end
63
+ );
64
+ newValue.start = newValue.end - 1;
65
+ onChange( newValue );
66
+ }
65
67
 
66
68
  // BFS search to find the first footnote block.
67
69
  let fnBlock = null;
@@ -59,15 +59,17 @@ function render_block_core_footnotes( $attributes, $content, $block ) {
59
59
  * Registers the `core/footnotes` block on the server.
60
60
  */
61
61
  function register_block_core_footnotes() {
62
- register_post_meta(
63
- 'post',
64
- 'footnotes',
65
- array(
66
- 'show_in_rest' => true,
67
- 'single' => true,
68
- 'type' => 'string',
69
- )
70
- );
62
+ foreach ( array( 'post', 'page' ) as $post_type ) {
63
+ register_post_meta(
64
+ $post_type,
65
+ 'footnotes',
66
+ array(
67
+ 'show_in_rest' => true,
68
+ 'single' => true,
69
+ 'type' => 'string',
70
+ )
71
+ );
72
+ }
71
73
  register_block_type_from_metadata(
72
74
  __DIR__ . '/footnotes',
73
75
  array(
@@ -1,17 +1,20 @@
1
+ // These styles are for backwards compatibility with the old footnotes anchors.
2
+ // Can be removed in the future.
1
3
  .editor-styles-wrapper,
2
4
  .entry-content {
3
5
  counter-reset: footnotes;
4
6
  }
5
7
 
6
- .fn {
8
+ a[data-fn].fn {
7
9
  vertical-align: super;
8
10
  font-size: smaller;
9
11
  counter-increment: footnotes;
10
- display: inline-block;
12
+ display: inline-flex;
13
+ text-decoration: none;
11
14
  text-indent: -9999999px;
12
15
  }
13
16
 
14
- .fn::after {
17
+ a[data-fn].fn::after {
15
18
  content: "[" counter(footnotes) "]";
16
19
  text-indent: 0;
17
20
  float: left;
@@ -115,7 +115,9 @@
115
115
  "blockGap": [ "horizontal", "vertical" ],
116
116
  "__experimentalSkipSerialization": [ "blockGap" ],
117
117
  "__experimentalDefaultControls": {
118
- "blockGap": true
118
+ "blockGap": true,
119
+ "margin": false,
120
+ "padding": false
119
121
  }
120
122
  },
121
123
  "color": {
@@ -562,7 +562,7 @@ function GalleryEdit( props ) {
562
562
  max={ Math.min( MAX_COLUMNS, images.length ) }
563
563
  { ...MOBILE_CONTROL_PROPS_RANGE_CONTROL }
564
564
  required
565
- size="__unstable-large"
565
+ __next40pxDefaultSize
566
566
  />
567
567
  ) }
568
568
  <ToggleControl
@@ -134,7 +134,7 @@ describe( 'Gallery block', () => {
134
134
  // Tap on Gallery block
135
135
  const block = await getBlock( screen, 'Gallery' );
136
136
  fireEvent.press( block );
137
- fireEvent.press( within( block ).getByText( 'ADD MEDIA' ) );
137
+ fireEvent.press( within( block ).getByText( 'Add media' ) );
138
138
 
139
139
  // Observe that media options picker is displayed
140
140
  /* eslint-disable jest/no-conditional-expect */
@@ -161,7 +161,7 @@ describe( 'Gallery block', () => {
161
161
 
162
162
  // This case is disabled until the issue (https://github.com/WordPress/gutenberg/issues/38444)
163
163
  // is addressed.
164
- it.skip( 'block remains selected after dimissing the media options picker', async () => {
164
+ it.skip( 'block remains selected after dismissing the media options picker', async () => {
165
165
  // Initialize with an empty gallery
166
166
  const { getByLabelText, getByText, getByTestId } =
167
167
  await initializeEditor( {
@@ -169,13 +169,13 @@ describe( 'Gallery block', () => {
169
169
  } );
170
170
 
171
171
  // Tap on Gallery block
172
- fireEvent.press( getByText( 'ADD MEDIA' ) );
172
+ fireEvent.press( getByText( 'Add media' ) );
173
173
 
174
174
  // Observe that media options picker is displayed
175
175
  expect( getByText( 'Choose images' ) ).toBeVisible();
176
176
  expect( getByText( 'WordPress Media Library' ) ).toBeVisible();
177
177
 
178
- // Dimiss the picker
178
+ // Dismiss the picker
179
179
  if ( Platform.isIOS ) {
180
180
  fireEvent.press( getByText( 'Cancel' ) );
181
181
  } else {
@@ -283,7 +283,7 @@ describe( 'Gallery block', () => {
283
283
  const { selectOption } = setupPicker( screen, MEDIA_OPTIONS );
284
284
 
285
285
  // Upload images from device
286
- fireEvent.press( getByText( 'ADD MEDIA' ) );
286
+ fireEvent.press( getByText( 'Add media' ) );
287
287
  selectOption( 'Choose from device' );
288
288
  expectMediaPickerCall( 'DEVICE_MEDIA_LIBRARY', [ 'image' ], true );
289
289
 
@@ -321,7 +321,7 @@ describe( 'Gallery block', () => {
321
321
  const { galleryBlock, getByText } = await initializeWithGalleryBlock();
322
322
 
323
323
  // Upload images from device
324
- fireEvent.press( getByText( 'ADD MEDIA' ) );
324
+ fireEvent.press( getByText( 'Add media' ) );
325
325
  fireEvent.press( getByText( 'Choose from device' ) );
326
326
  expectMediaPickerCall( 'DEVICE_MEDIA_LIBRARY', [ 'image' ], true );
327
327
 
@@ -375,7 +375,7 @@ describe( 'Gallery block', () => {
375
375
  const { galleryBlock, getByText } = await initializeWithGalleryBlock();
376
376
 
377
377
  // Take a photo
378
- fireEvent.press( getByText( 'ADD MEDIA' ) );
378
+ fireEvent.press( getByText( 'Add media' ) );
379
379
  fireEvent.press( getByText( 'Take a Photo' ) );
380
380
  expectMediaPickerCall( 'DEVICE_CAMERA', [ 'image' ], true );
381
381
 
@@ -429,7 +429,7 @@ describe( 'Gallery block', () => {
429
429
  );
430
430
 
431
431
  // Upload images from free photo library
432
- fireEvent.press( getByText( 'ADD MEDIA' ) );
432
+ fireEvent.press( getByText( 'Add media' ) );
433
433
  fireEvent.press( getByText( 'Free Photo Library' ) );
434
434
  expectMediaPickerCall( 'stock-photo-library', [ 'image' ], true );
435
435
 
@@ -469,7 +469,7 @@ describe( 'Gallery block', () => {
469
469
  const { galleryBlock, getByText } = await initializeWithGalleryBlock();
470
470
 
471
471
  // Upload images from device
472
- fireEvent.press( getByText( 'ADD MEDIA' ) );
472
+ fireEvent.press( getByText( 'Add media' ) );
473
473
  fireEvent.press( getByText( 'Choose from device' ) );
474
474
  expectMediaPickerCall( 'DEVICE_MEDIA_LIBRARY', [ 'image' ], true );
475
475
 
@@ -511,10 +511,11 @@ describe( 'Gallery block', () => {
511
511
  // Reference: https://github.com/wordpress-mobile/test-cases/blob/trunk/test-cases/gutenberg/gallery.md#tc010
512
512
  it( 'rearranges gallery items', async () => {
513
513
  // Initialize with a gallery that contains three items
514
- const { galleryBlock } = await initializeWithGalleryBlock( {
515
- numberOfItems: 3,
516
- media,
517
- } );
514
+ const { getByLabelText, galleryBlock } =
515
+ await initializeWithGalleryBlock( {
516
+ numberOfItems: 3,
517
+ media,
518
+ } );
518
519
 
519
520
  // Rearrange items (final disposition will be: Image 3 - Image 1 - Image 2)
520
521
  const galleryItem1 = getGalleryItem( galleryBlock, 1 );
@@ -523,7 +524,7 @@ describe( 'Gallery block', () => {
523
524
  fireEvent.press( galleryItem3 );
524
525
  await act( () =>
525
526
  fireEvent.press(
526
- within( galleryItem3 ).getByLabelText(
527
+ getByLabelText(
527
528
  /Move block left from position 3 to position 2/
528
529
  )
529
530
  )
@@ -532,7 +533,7 @@ describe( 'Gallery block', () => {
532
533
  fireEvent.press( galleryItem1 );
533
534
  await act( () =>
534
535
  fireEvent.press(
535
- within( galleryItem1 ).getByLabelText(
536
+ getByLabelText(
536
537
  /Move block right from position 1 to position 2/
537
538
  )
538
539
  )
@@ -568,7 +569,7 @@ describe( 'Gallery block', () => {
568
569
  );
569
570
 
570
571
  // Upload images from other apps
571
- fireEvent.press( getByText( 'ADD MEDIA' ) );
572
+ fireEvent.press( getByText( 'Add media' ) );
572
573
  fireEvent.press( getByText( 'Other Apps' ) );
573
574
  expectMediaPickerCall( 'other-files', [ 'image' ], true );
574
575
 
@@ -29,6 +29,7 @@
29
29
  "html": false,
30
30
  "color": {
31
31
  "gradients": true,
32
+ "heading": true,
32
33
  "link": true,
33
34
  "__experimentalDefaultControls": {
34
35
  "background": true,
@@ -40,7 +40,11 @@
40
40
  },
41
41
  "spacing": {
42
42
  "margin": true,
43
- "padding": true
43
+ "padding": true,
44
+ "__experimentalDefaultControls": {
45
+ "margin": false,
46
+ "padding": false
47
+ }
44
48
  },
45
49
  "typography": {
46
50
  "fontSize": true,
@@ -112,4 +112,22 @@ describe( 'Heading block', () => {
112
112
  // Assert
113
113
  expect( getEditorHtml() ).toMatchSnapshot();
114
114
  } );
115
+
116
+ it( 'change level dropdown displays active selection', async () => {
117
+ // Arrange
118
+ const screen = await initializeEditor();
119
+ await addBlock( screen, 'Heading' );
120
+ const headingBlock = await getBlock( screen, 'Heading' );
121
+
122
+ // Act
123
+ fireEvent.press( headingBlock );
124
+ fireEvent.press( screen.getByLabelText( 'Change level' ) );
125
+
126
+ // Assert
127
+ expect(
128
+ within( screen.getByLabelText( 'Heading 2' ) ).getByTestId(
129
+ 'bottom-sheet-cell-selected-icon'
130
+ )
131
+ ).toBeVisible();
132
+ } );
115
133
  } );
@@ -98,8 +98,15 @@ function block_core_home_link_build_li_wrapper_attributes( $context ) {
98
98
  $colors['css_classes'],
99
99
  $font_sizes['css_classes']
100
100
  );
101
- $classes[] = 'wp-block-navigation-item';
102
101
  $style_attribute = ( $colors['inline_styles'] . $font_sizes['inline_styles'] );
102
+ $classes[] = 'wp-block-navigation-item';
103
+
104
+ if ( is_front_page() ) {
105
+ $classes[] = 'current-menu-item';
106
+ } elseif ( is_home() && ( (int) get_option( 'page_for_posts' ) !== get_queried_object_id() ) ) {
107
+ // Edge case where the Reading settings has a posts page set but not a static homepage.
108
+ $classes[] = 'current-menu-item';
109
+ }
103
110
 
104
111
  $wrapper_attributes = get_block_wrapper_attributes(
105
112
  array(
@@ -124,8 +131,14 @@ function render_block_core_home_link( $attributes, $content, $block ) {
124
131
  if ( empty( $attributes['label'] ) ) {
125
132
  return '';
126
133
  }
134
+ $aria_current = '';
127
135
 
128
- $aria_current = is_home() || ( is_front_page() && 'page' === get_option( 'show_on_front' ) ) ? ' aria-current="page"' : '';
136
+ if ( is_front_page() ) {
137
+ $aria_current = ' aria-current="page"';
138
+ } elseif ( is_home() && ( (int) get_option( 'page_for_posts' ) !== get_queried_object_id() ) ) {
139
+ // Edge case where the Reading settings has a posts page set but not a static homepage.
140
+ $aria_current = ' aria-current="page"';
141
+ }
129
142
 
130
143
  return sprintf(
131
144
  '<li %1$s><a class="wp-block-home-link__content wp-block-navigation-item__content" href="%2$s" rel="home"%3$s>%4$s</a></li>',
@@ -69,6 +69,12 @@
69
69
  "height": {
70
70
  "type": "number"
71
71
  },
72
+ "aspectRatio": {
73
+ "type": "string"
74
+ },
75
+ "scale": {
76
+ "type": "string"
77
+ },
72
78
  "sizeSlug": {
73
79
  "type": "string"
74
80
  },