@wordpress/block-library 7.12.0 → 7.13.1-next.957ca95e4c.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 (824) hide show
  1. package/CHANGELOG.md +7 -1
  2. package/build/archives/index.js +5 -1
  3. package/build/archives/index.js.map +1 -1
  4. package/build/audio/index.js +4 -0
  5. package/build/audio/index.js.map +1 -1
  6. package/build/button/deprecated.js +14 -5
  7. package/build/button/deprecated.js.map +1 -1
  8. package/build/button/index.js +1 -1
  9. package/build/categories/edit.js +3 -1
  10. package/build/categories/edit.js.map +1 -1
  11. package/build/categories/index.js +14 -1
  12. package/build/categories/index.js.map +1 -1
  13. package/build/code/index.js +4 -2
  14. package/build/code/index.js.map +1 -1
  15. package/build/column/index.js +13 -0
  16. package/build/column/index.js.map +1 -1
  17. package/build/columns/deprecated.js +16 -5
  18. package/build/columns/deprecated.js.map +1 -1
  19. package/build/columns/edit.js +6 -2
  20. package/build/columns/edit.js.map +1 -1
  21. package/build/columns/edit.native.js +6 -2
  22. package/build/columns/edit.native.js.map +1 -1
  23. package/build/columns/index.js +13 -0
  24. package/build/columns/index.js.map +1 -1
  25. package/build/columns/transforms.js +10 -1
  26. package/build/columns/transforms.js.map +1 -1
  27. package/build/comment-author-name/index.js +5 -1
  28. package/build/comment-author-name/index.js.map +1 -1
  29. package/build/comment-content/index.js +5 -1
  30. package/build/comment-content/index.js.map +1 -1
  31. package/build/comment-date/index.js +1 -0
  32. package/build/comment-date/index.js.map +1 -1
  33. package/build/comment-edit-link/index.js +5 -1
  34. package/build/comment-edit-link/index.js.map +1 -1
  35. package/build/comment-reply-link/index.js +5 -1
  36. package/build/comment-reply-link/index.js.map +1 -1
  37. package/build/comment-template/index.js +14 -1
  38. package/build/comment-template/index.js.map +1 -1
  39. package/build/comments/index.js +13 -0
  40. package/build/comments/index.js.map +1 -1
  41. package/build/comments-pagination/index.js +13 -0
  42. package/build/comments-pagination/index.js.map +1 -1
  43. package/build/comments-pagination-next/index.js +4 -2
  44. package/build/comments-pagination-next/index.js.map +1 -1
  45. package/build/comments-pagination-numbers/edit.js +5 -1
  46. package/build/comments-pagination-numbers/edit.js.map +1 -1
  47. package/build/comments-pagination-numbers/index.js +14 -1
  48. package/build/comments-pagination-numbers/index.js.map +1 -1
  49. package/build/comments-pagination-previous/index.js +4 -2
  50. package/build/comments-pagination-previous/index.js.map +1 -1
  51. package/build/comments-title/deprecated.js +4 -2
  52. package/build/comments-title/deprecated.js.map +1 -1
  53. package/build/comments-title/index.js +4 -2
  54. package/build/comments-title/index.js.map +1 -1
  55. package/build/cover/deprecated.js +20 -5
  56. package/build/cover/deprecated.js.map +1 -1
  57. package/build/cover/edit/block-controls.js +9 -2
  58. package/build/cover/edit/block-controls.js.map +1 -1
  59. package/build/cover/index.js +13 -0
  60. package/build/cover/index.js.map +1 -1
  61. package/build/cover/shared.js +1 -1
  62. package/build/cover/shared.js.map +1 -1
  63. package/build/embed/icons.js +1 -1
  64. package/build/embed/icons.js.map +1 -1
  65. package/build/gallery/deprecated.js +6 -1
  66. package/build/gallery/deprecated.js.map +1 -1
  67. package/build/gallery/edit.js +15 -2
  68. package/build/gallery/edit.js.map +1 -1
  69. package/build/gallery/gap-styles.js +5 -4
  70. package/build/gallery/gap-styles.js.map +1 -1
  71. package/build/gallery/index.js +5 -0
  72. package/build/gallery/index.js.map +1 -1
  73. package/build/gallery/transforms.js +20 -7
  74. package/build/gallery/transforms.js.map +1 -1
  75. package/build/gallery/utils.js +7 -6
  76. package/build/gallery/utils.js.map +1 -1
  77. package/build/group/deprecated.js +108 -12
  78. package/build/group/deprecated.js.map +1 -1
  79. package/build/group/edit.js +23 -1
  80. package/build/group/edit.js.map +1 -1
  81. package/build/group/index.js +10 -2
  82. package/build/group/index.js.map +1 -1
  83. package/build/group/variations.js +8 -8
  84. package/build/group/variations.js.map +1 -1
  85. package/build/heading/deprecated.js +5 -3
  86. package/build/heading/deprecated.js.map +1 -1
  87. package/build/heading/index.js +3 -1
  88. package/build/heading/index.js.map +1 -1
  89. package/build/heading/transforms.js +3 -1
  90. package/build/heading/transforms.js.map +1 -1
  91. package/build/home-link/edit.js +8 -4
  92. package/build/home-link/edit.js.map +1 -1
  93. package/build/home-link/index.js +14 -1
  94. package/build/home-link/index.js.map +1 -1
  95. package/build/image/edit.js +16 -2
  96. package/build/image/edit.js.map +1 -1
  97. package/build/image/index.js +13 -7
  98. package/build/image/index.js.map +1 -1
  99. package/build/image/use-client-width.js +3 -1
  100. package/build/image/use-client-width.js.map +1 -1
  101. package/build/index.js +1 -1
  102. package/build/index.js.map +1 -1
  103. package/build/index.native.js +9 -18
  104. package/build/index.native.js.map +1 -1
  105. package/build/latest-posts/deprecated.js +14 -1
  106. package/build/latest-posts/deprecated.js.map +1 -1
  107. package/build/latest-posts/index.js +14 -1
  108. package/build/latest-posts/index.js.map +1 -1
  109. package/build/list/deprecated.js +84 -1
  110. package/build/list/deprecated.js.map +1 -1
  111. package/build/list/edit.js +153 -134
  112. package/build/list/edit.js.map +1 -1
  113. package/build/list/index.js +33 -34
  114. package/build/list/index.js.map +1 -1
  115. package/build/list/save.js +1 -5
  116. package/build/list/save.js.map +1 -1
  117. package/build/list/{v2/tag-name.js → tag-name.js} +0 -0
  118. package/build/list/tag-name.js.map +1 -0
  119. package/build/list/{v2/tag-name.native.js → tag-name.native.js} +0 -0
  120. package/build/list/tag-name.native.js.map +1 -0
  121. package/build/list/transforms.js +61 -95
  122. package/build/list/transforms.js.map +1 -1
  123. package/build/list/{v2/migrate.js → utils.js} +3 -2
  124. package/build/list/utils.js.map +1 -0
  125. package/build/list-item/edit.js +3 -1
  126. package/build/list-item/edit.js.map +1 -1
  127. package/build/list-item/edit.native.js +21 -3
  128. package/build/list-item/edit.native.js.map +1 -1
  129. package/build/list-item/hooks/index.js +8 -0
  130. package/build/list-item/hooks/index.js.map +1 -1
  131. package/build/list-item/hooks/use-copy.js +44 -0
  132. package/build/list-item/hooks/use-copy.js.map +1 -0
  133. package/build/list-item/hooks/use-merge.js +0 -1
  134. package/build/list-item/hooks/use-merge.js.map +1 -1
  135. package/build/list-item/hooks/use-outdent-list-item.js +0 -1
  136. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
  137. package/build/list-item/hooks/use-space.js +10 -1
  138. package/build/list-item/hooks/use-space.js.map +1 -1
  139. package/build/list-item/index.js +0 -1
  140. package/build/list-item/index.js.map +1 -1
  141. package/build/list-item/list-style-type.native.js +4 -1
  142. package/build/list-item/list-style-type.native.js.map +1 -1
  143. package/build/list-item/utils.js +4 -1
  144. package/build/list-item/utils.js.map +1 -1
  145. package/build/media-text/deprecated.js +5 -1
  146. package/build/media-text/deprecated.js.map +1 -1
  147. package/build/media-text/index.js +17 -0
  148. package/build/media-text/index.js.map +1 -1
  149. package/build/navigation/deprecated.js +6 -1
  150. package/build/navigation/deprecated.js.map +1 -1
  151. package/build/navigation/edit/index.js +125 -41
  152. package/build/navigation/edit/index.js.map +1 -1
  153. package/build/navigation/edit/responsive-wrapper.js +6 -4
  154. package/build/navigation/edit/responsive-wrapper.js.map +1 -1
  155. package/build/navigation/edit/unsaved-inner-blocks.js +6 -16
  156. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  157. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -7
  158. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  159. package/build/navigation/index.js +1 -0
  160. package/build/navigation/index.js.map +1 -1
  161. package/build/navigation/menu-items-to-blocks.js +1 -7
  162. package/build/navigation/menu-items-to-blocks.js.map +1 -1
  163. package/build/navigation/use-navigation-menu.js +8 -7
  164. package/build/navigation/use-navigation-menu.js.map +1 -1
  165. package/build/navigation-link/edit.js +6 -8
  166. package/build/navigation-link/edit.js.map +1 -1
  167. package/build/navigation-submenu/edit.js +4 -6
  168. package/build/navigation-submenu/edit.js.map +1 -1
  169. package/build/page-list/edit.js +7 -3
  170. package/build/page-list/edit.js.map +1 -1
  171. package/build/paragraph/deprecated.js +18 -10
  172. package/build/paragraph/deprecated.js.map +1 -1
  173. package/build/paragraph/edit.js +1 -0
  174. package/build/paragraph/edit.js.map +1 -1
  175. package/build/paragraph/index.js +7 -0
  176. package/build/paragraph/index.js.map +1 -1
  177. package/build/paragraph/transforms.js +7 -0
  178. package/build/paragraph/transforms.js.map +1 -1
  179. package/build/post-author/index.js +4 -2
  180. package/build/post-author/index.js.map +1 -1
  181. package/build/post-author-biography/index.js +1 -0
  182. package/build/post-author-biography/index.js.map +1 -1
  183. package/build/post-author-name/index.js +5 -1
  184. package/build/post-author-name/index.js.map +1 -1
  185. package/build/post-comments-count/edit.js +11 -1
  186. package/build/post-comments-count/edit.js.map +1 -1
  187. package/build/post-comments-count/index.js +4 -1
  188. package/build/post-comments-count/index.js.map +1 -1
  189. package/build/post-comments-link/index.js +4 -2
  190. package/build/post-comments-link/index.js.map +1 -1
  191. package/build/post-date/edit.js +9 -2
  192. package/build/post-date/edit.js.map +1 -1
  193. package/build/post-date/index.js +9 -0
  194. package/build/post-date/index.js.map +1 -1
  195. package/build/post-excerpt/index.js +4 -2
  196. package/build/post-excerpt/index.js.map +1 -1
  197. package/build/post-featured-image/edit.js +27 -12
  198. package/build/post-featured-image/edit.js.map +1 -1
  199. package/build/post-featured-image/index.js +12 -0
  200. package/build/post-featured-image/index.js.map +1 -1
  201. package/build/post-navigation-link/index.js +3 -2
  202. package/build/post-navigation-link/index.js.map +1 -1
  203. package/build/post-template/edit.js +8 -4
  204. package/build/post-template/edit.js.map +1 -1
  205. package/build/post-template/index.js +14 -1
  206. package/build/post-template/index.js.map +1 -1
  207. package/build/post-terms/edit.js +0 -1
  208. package/build/post-terms/edit.js.map +1 -1
  209. package/build/post-terms/index.js +5 -3
  210. package/build/post-terms/index.js.map +1 -1
  211. package/build/post-terms/use-post-terms.js +4 -24
  212. package/build/post-terms/use-post-terms.js.map +1 -1
  213. package/build/post-title/index.js +2 -1
  214. package/build/post-title/index.js.map +1 -1
  215. package/build/preformatted/index.js +4 -2
  216. package/build/preformatted/index.js.map +1 -1
  217. package/build/pullquote/deprecated.js +135 -25
  218. package/build/pullquote/deprecated.js.map +1 -1
  219. package/build/pullquote/edit.js +1 -1
  220. package/build/pullquote/edit.js.map +1 -1
  221. package/build/pullquote/edit.native.js +0 -1
  222. package/build/pullquote/edit.native.js.map +1 -1
  223. package/build/pullquote/index.js +13 -6
  224. package/build/pullquote/index.js.map +1 -1
  225. package/build/pullquote/save.js +2 -2
  226. package/build/pullquote/save.js.map +1 -1
  227. package/build/pullquote/transforms.js +14 -33
  228. package/build/pullquote/transforms.js.map +1 -1
  229. package/build/query/deprecated.js +10 -9
  230. package/build/query/deprecated.js.map +1 -1
  231. package/build/query/edit/index.js +19 -8
  232. package/build/query/edit/index.js.map +1 -1
  233. package/build/query/edit/inspector-controls/taxonomy-controls.js +1 -0
  234. package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  235. package/build/query/edit/query-placeholder.js +6 -1
  236. package/build/query/edit/query-placeholder.js.map +1 -1
  237. package/build/query/utils.js +35 -9
  238. package/build/query/utils.js.map +1 -1
  239. package/build/query-no-results/edit.js +1 -1
  240. package/build/query-no-results/edit.js.map +1 -1
  241. package/build/query-no-results/index.js +13 -0
  242. package/build/query-no-results/index.js.map +1 -1
  243. package/build/query-pagination-numbers/index.js +4 -2
  244. package/build/query-pagination-numbers/index.js.map +1 -1
  245. package/build/query-title/edit.js +10 -1
  246. package/build/query-title/edit.js.map +1 -1
  247. package/build/query-title/index.js +8 -2
  248. package/build/query-title/index.js.map +1 -1
  249. package/build/quote/deprecated.js +13 -6
  250. package/build/quote/deprecated.js.map +1 -1
  251. package/build/quote/index.js +4 -2
  252. package/build/quote/index.js.map +1 -1
  253. package/build/quote/transforms.js +22 -37
  254. package/build/quote/transforms.js.map +1 -1
  255. package/build/separator/deprecated.js +3 -4
  256. package/build/separator/deprecated.js.map +1 -1
  257. package/build/separator/index.js +1 -0
  258. package/build/separator/index.js.map +1 -1
  259. package/build/social-link/icons/reddit.js +1 -1
  260. package/build/social-link/icons/reddit.js.map +1 -1
  261. package/build/social-links/edit.js +43 -9
  262. package/build/social-links/edit.js.map +1 -1
  263. package/build/social-links/index.js +9 -0
  264. package/build/social-links/index.js.map +1 -1
  265. package/build/spacer/index.js +7 -1
  266. package/build/spacer/index.js.map +1 -1
  267. package/build/table/index.js +4 -0
  268. package/build/table/index.js.map +1 -1
  269. package/build/table/state.js +9 -3
  270. package/build/table/state.js.map +1 -1
  271. package/build/table-of-contents/index.js +24 -1
  272. package/build/table-of-contents/index.js.map +1 -1
  273. package/build/tag-cloud/index.js +5 -1
  274. package/build/tag-cloud/index.js.map +1 -1
  275. package/build/template-part/index.js +2 -2
  276. package/build/template-part/index.js.map +1 -1
  277. package/build/term-description/index.js +10 -0
  278. package/build/term-description/index.js.map +1 -1
  279. package/build/text-columns/edit.js +3 -1
  280. package/build/text-columns/edit.js.map +1 -1
  281. package/build/text-columns/save.js +3 -1
  282. package/build/text-columns/save.js.map +1 -1
  283. package/build/verse/index.js +2 -0
  284. package/build/verse/index.js.map +1 -1
  285. package/build/video/index.js +4 -0
  286. package/build/video/index.js.map +1 -1
  287. package/build-module/archives/index.js +5 -1
  288. package/build-module/archives/index.js.map +1 -1
  289. package/build-module/audio/index.js +4 -0
  290. package/build-module/audio/index.js.map +1 -1
  291. package/build-module/button/deprecated.js +14 -4
  292. package/build-module/button/deprecated.js.map +1 -1
  293. package/build-module/button/index.js +1 -1
  294. package/build-module/categories/edit.js +4 -2
  295. package/build-module/categories/edit.js.map +1 -1
  296. package/build-module/categories/index.js +14 -1
  297. package/build-module/categories/index.js.map +1 -1
  298. package/build-module/code/index.js +4 -2
  299. package/build-module/code/index.js.map +1 -1
  300. package/build-module/column/index.js +13 -0
  301. package/build-module/column/index.js.map +1 -1
  302. package/build-module/columns/deprecated.js +16 -4
  303. package/build-module/columns/deprecated.js.map +1 -1
  304. package/build-module/columns/edit.js +7 -3
  305. package/build-module/columns/edit.js.map +1 -1
  306. package/build-module/columns/edit.native.js +7 -3
  307. package/build-module/columns/edit.native.js.map +1 -1
  308. package/build-module/columns/index.js +13 -0
  309. package/build-module/columns/index.js.map +1 -1
  310. package/build-module/columns/transforms.js +10 -1
  311. package/build-module/columns/transforms.js.map +1 -1
  312. package/build-module/comment-author-name/index.js +5 -1
  313. package/build-module/comment-author-name/index.js.map +1 -1
  314. package/build-module/comment-content/index.js +5 -1
  315. package/build-module/comment-content/index.js.map +1 -1
  316. package/build-module/comment-date/index.js +1 -0
  317. package/build-module/comment-date/index.js.map +1 -1
  318. package/build-module/comment-edit-link/index.js +5 -1
  319. package/build-module/comment-edit-link/index.js.map +1 -1
  320. package/build-module/comment-reply-link/index.js +5 -1
  321. package/build-module/comment-reply-link/index.js.map +1 -1
  322. package/build-module/comment-template/index.js +14 -1
  323. package/build-module/comment-template/index.js.map +1 -1
  324. package/build-module/comments/index.js +13 -0
  325. package/build-module/comments/index.js.map +1 -1
  326. package/build-module/comments-pagination/index.js +13 -0
  327. package/build-module/comments-pagination/index.js.map +1 -1
  328. package/build-module/comments-pagination-next/index.js +4 -2
  329. package/build-module/comments-pagination-next/index.js.map +1 -1
  330. package/build-module/comments-pagination-numbers/edit.js +5 -1
  331. package/build-module/comments-pagination-numbers/edit.js.map +1 -1
  332. package/build-module/comments-pagination-numbers/index.js +14 -1
  333. package/build-module/comments-pagination-numbers/index.js.map +1 -1
  334. package/build-module/comments-pagination-previous/index.js +4 -2
  335. package/build-module/comments-pagination-previous/index.js.map +1 -1
  336. package/build-module/comments-title/deprecated.js +4 -2
  337. package/build-module/comments-title/deprecated.js.map +1 -1
  338. package/build-module/comments-title/index.js +4 -2
  339. package/build-module/comments-title/index.js.map +1 -1
  340. package/build-module/cover/deprecated.js +20 -4
  341. package/build-module/cover/deprecated.js.map +1 -1
  342. package/build-module/cover/edit/block-controls.js +10 -3
  343. package/build-module/cover/edit/block-controls.js.map +1 -1
  344. package/build-module/cover/index.js +13 -0
  345. package/build-module/cover/index.js.map +1 -1
  346. package/build-module/cover/shared.js +1 -1
  347. package/build-module/cover/shared.js.map +1 -1
  348. package/build-module/embed/icons.js +1 -1
  349. package/build-module/embed/icons.js.map +1 -1
  350. package/build-module/gallery/deprecated.js +7 -2
  351. package/build-module/gallery/deprecated.js.map +1 -1
  352. package/build-module/gallery/edit.js +15 -2
  353. package/build-module/gallery/edit.js.map +1 -1
  354. package/build-module/gallery/gap-styles.js +6 -5
  355. package/build-module/gallery/gap-styles.js.map +1 -1
  356. package/build-module/gallery/index.js +5 -0
  357. package/build-module/gallery/index.js.map +1 -1
  358. package/build-module/gallery/transforms.js +20 -7
  359. package/build-module/gallery/transforms.js.map +1 -1
  360. package/build-module/gallery/utils.js +7 -6
  361. package/build-module/gallery/utils.js.map +1 -1
  362. package/build-module/group/deprecated.js +109 -12
  363. package/build-module/group/deprecated.js.map +1 -1
  364. package/build-module/group/edit.js +25 -2
  365. package/build-module/group/edit.js.map +1 -1
  366. package/build-module/group/index.js +10 -2
  367. package/build-module/group/index.js.map +1 -1
  368. package/build-module/group/variations.js +8 -8
  369. package/build-module/group/variations.js.map +1 -1
  370. package/build-module/heading/deprecated.js +5 -2
  371. package/build-module/heading/deprecated.js.map +1 -1
  372. package/build-module/heading/index.js +3 -1
  373. package/build-module/heading/index.js.map +1 -1
  374. package/build-module/heading/transforms.js +3 -1
  375. package/build-module/heading/transforms.js.map +1 -1
  376. package/build-module/home-link/edit.js +10 -6
  377. package/build-module/home-link/edit.js.map +1 -1
  378. package/build-module/home-link/index.js +14 -1
  379. package/build-module/home-link/index.js.map +1 -1
  380. package/build-module/image/edit.js +18 -4
  381. package/build-module/image/edit.js.map +1 -1
  382. package/build-module/image/index.js +13 -7
  383. package/build-module/image/index.js.map +1 -1
  384. package/build-module/image/use-client-width.js +3 -1
  385. package/build-module/image/use-client-width.js.map +1 -1
  386. package/build-module/index.js +1 -1
  387. package/build-module/index.js.map +1 -1
  388. package/build-module/index.native.js +9 -17
  389. package/build-module/index.native.js.map +1 -1
  390. package/build-module/latest-posts/deprecated.js +14 -1
  391. package/build-module/latest-posts/deprecated.js.map +1 -1
  392. package/build-module/latest-posts/index.js +14 -1
  393. package/build-module/latest-posts/index.js.map +1 -1
  394. package/build-module/list/deprecated.js +83 -1
  395. package/build-module/list/deprecated.js.map +1 -1
  396. package/build-module/list/edit.js +151 -134
  397. package/build-module/list/edit.js.map +1 -1
  398. package/build-module/list/index.js +33 -29
  399. package/build-module/list/index.js.map +1 -1
  400. package/build-module/list/save.js +2 -6
  401. package/build-module/list/save.js.map +1 -1
  402. package/build-module/list/{v2/tag-name.js → tag-name.js} +0 -0
  403. package/build-module/list/tag-name.js.map +1 -0
  404. package/build-module/list/{v2/tag-name.native.js → tag-name.native.js} +0 -0
  405. package/build-module/list/tag-name.native.js.map +1 -0
  406. package/build-module/list/transforms.js +62 -97
  407. package/build-module/list/transforms.js.map +1 -1
  408. package/build-module/list/{v2/migrate.js → utils.js} +3 -2
  409. package/build-module/list/utils.js.map +1 -0
  410. package/build-module/list-item/edit.js +4 -2
  411. package/build-module/list-item/edit.js.map +1 -1
  412. package/build-module/list-item/edit.native.js +19 -3
  413. package/build-module/list-item/edit.native.js.map +1 -1
  414. package/build-module/list-item/hooks/index.js +1 -0
  415. package/build-module/list-item/hooks/index.js.map +1 -1
  416. package/build-module/list-item/hooks/use-copy.js +34 -0
  417. package/build-module/list-item/hooks/use-copy.js.map +1 -0
  418. package/build-module/list-item/hooks/use-merge.js +0 -1
  419. package/build-module/list-item/hooks/use-merge.js.map +1 -1
  420. package/build-module/list-item/hooks/use-outdent-list-item.js +0 -1
  421. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
  422. package/build-module/list-item/hooks/use-space.js +10 -1
  423. package/build-module/list-item/hooks/use-space.js.map +1 -1
  424. package/build-module/list-item/index.js +0 -1
  425. package/build-module/list-item/index.js.map +1 -1
  426. package/build-module/list-item/list-style-type.native.js +3 -1
  427. package/build-module/list-item/list-style-type.native.js.map +1 -1
  428. package/build-module/list-item/utils.js +4 -1
  429. package/build-module/list-item/utils.js.map +1 -1
  430. package/build-module/media-text/deprecated.js +6 -2
  431. package/build-module/media-text/deprecated.js.map +1 -1
  432. package/build-module/media-text/index.js +17 -0
  433. package/build-module/media-text/index.js.map +1 -1
  434. package/build-module/navigation/deprecated.js +7 -2
  435. package/build-module/navigation/deprecated.js.map +1 -1
  436. package/build-module/navigation/edit/index.js +125 -43
  437. package/build-module/navigation/edit/index.js.map +1 -1
  438. package/build-module/navigation/edit/responsive-wrapper.js +6 -4
  439. package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
  440. package/build-module/navigation/edit/unsaved-inner-blocks.js +7 -16
  441. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  442. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -7
  443. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  444. package/build-module/navigation/index.js +1 -0
  445. package/build-module/navigation/index.js.map +1 -1
  446. package/build-module/navigation/menu-items-to-blocks.js +1 -6
  447. package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
  448. package/build-module/navigation/use-navigation-menu.js +8 -7
  449. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  450. package/build-module/navigation-link/edit.js +7 -9
  451. package/build-module/navigation-link/edit.js.map +1 -1
  452. package/build-module/navigation-submenu/edit.js +5 -7
  453. package/build-module/navigation-submenu/edit.js.map +1 -1
  454. package/build-module/page-list/edit.js +7 -2
  455. package/build-module/page-list/edit.js.map +1 -1
  456. package/build-module/paragraph/deprecated.js +18 -9
  457. package/build-module/paragraph/deprecated.js.map +1 -1
  458. package/build-module/paragraph/edit.js +1 -0
  459. package/build-module/paragraph/edit.js.map +1 -1
  460. package/build-module/paragraph/index.js +7 -0
  461. package/build-module/paragraph/index.js.map +1 -1
  462. package/build-module/paragraph/transforms.js +7 -0
  463. package/build-module/paragraph/transforms.js.map +1 -1
  464. package/build-module/post-author/index.js +4 -2
  465. package/build-module/post-author/index.js.map +1 -1
  466. package/build-module/post-author-biography/index.js +1 -0
  467. package/build-module/post-author-biography/index.js.map +1 -1
  468. package/build-module/post-author-name/index.js +5 -1
  469. package/build-module/post-author-name/index.js.map +1 -1
  470. package/build-module/post-comments-count/edit.js +10 -1
  471. package/build-module/post-comments-count/edit.js.map +1 -1
  472. package/build-module/post-comments-count/index.js +4 -1
  473. package/build-module/post-comments-count/index.js.map +1 -1
  474. package/build-module/post-comments-link/index.js +4 -2
  475. package/build-module/post-comments-link/index.js.map +1 -1
  476. package/build-module/post-date/edit.js +9 -2
  477. package/build-module/post-date/edit.js.map +1 -1
  478. package/build-module/post-date/index.js +9 -0
  479. package/build-module/post-date/index.js.map +1 -1
  480. package/build-module/post-excerpt/index.js +4 -2
  481. package/build-module/post-excerpt/index.js.map +1 -1
  482. package/build-module/post-featured-image/edit.js +28 -13
  483. package/build-module/post-featured-image/edit.js.map +1 -1
  484. package/build-module/post-featured-image/index.js +12 -0
  485. package/build-module/post-featured-image/index.js.map +1 -1
  486. package/build-module/post-navigation-link/index.js +3 -2
  487. package/build-module/post-navigation-link/index.js.map +1 -1
  488. package/build-module/post-template/edit.js +8 -4
  489. package/build-module/post-template/edit.js.map +1 -1
  490. package/build-module/post-template/index.js +14 -1
  491. package/build-module/post-template/index.js.map +1 -1
  492. package/build-module/post-terms/edit.js +0 -1
  493. package/build-module/post-terms/edit.js.map +1 -1
  494. package/build-module/post-terms/index.js +5 -3
  495. package/build-module/post-terms/index.js.map +1 -1
  496. package/build-module/post-terms/use-post-terms.js +5 -25
  497. package/build-module/post-terms/use-post-terms.js.map +1 -1
  498. package/build-module/post-title/index.js +2 -1
  499. package/build-module/post-title/index.js.map +1 -1
  500. package/build-module/preformatted/index.js +4 -2
  501. package/build-module/preformatted/index.js.map +1 -1
  502. package/build-module/pullquote/deprecated.js +134 -25
  503. package/build-module/pullquote/deprecated.js.map +1 -1
  504. package/build-module/pullquote/edit.js +1 -1
  505. package/build-module/pullquote/edit.js.map +1 -1
  506. package/build-module/pullquote/edit.native.js +0 -1
  507. package/build-module/pullquote/edit.native.js.map +1 -1
  508. package/build-module/pullquote/index.js +13 -6
  509. package/build-module/pullquote/index.js.map +1 -1
  510. package/build-module/pullquote/save.js +2 -2
  511. package/build-module/pullquote/save.js.map +1 -1
  512. package/build-module/pullquote/transforms.js +15 -34
  513. package/build-module/pullquote/transforms.js.map +1 -1
  514. package/build-module/query/deprecated.js +10 -8
  515. package/build-module/query/deprecated.js.map +1 -1
  516. package/build-module/query/edit/index.js +23 -12
  517. package/build-module/query/edit/index.js.map +1 -1
  518. package/build-module/query/edit/inspector-controls/taxonomy-controls.js +1 -0
  519. package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  520. package/build-module/query/edit/query-placeholder.js +6 -1
  521. package/build-module/query/edit/query-placeholder.js.map +1 -1
  522. package/build-module/query/utils.js +32 -7
  523. package/build-module/query/utils.js.map +1 -1
  524. package/build-module/query-no-results/edit.js +1 -1
  525. package/build-module/query-no-results/edit.js.map +1 -1
  526. package/build-module/query-no-results/index.js +13 -0
  527. package/build-module/query-no-results/index.js.map +1 -1
  528. package/build-module/query-pagination-numbers/index.js +4 -2
  529. package/build-module/query-pagination-numbers/index.js.map +1 -1
  530. package/build-module/query-title/edit.js +10 -1
  531. package/build-module/query-title/edit.js.map +1 -1
  532. package/build-module/query-title/index.js +8 -2
  533. package/build-module/query-title/index.js.map +1 -1
  534. package/build-module/quote/deprecated.js +13 -5
  535. package/build-module/quote/deprecated.js.map +1 -1
  536. package/build-module/quote/index.js +4 -2
  537. package/build-module/quote/index.js.map +1 -1
  538. package/build-module/quote/transforms.js +23 -38
  539. package/build-module/quote/transforms.js.map +1 -1
  540. package/build-module/separator/deprecated.js +3 -3
  541. package/build-module/separator/deprecated.js.map +1 -1
  542. package/build-module/separator/index.js +1 -0
  543. package/build-module/separator/index.js.map +1 -1
  544. package/build-module/social-link/icons/reddit.js +1 -1
  545. package/build-module/social-link/icons/reddit.js.map +1 -1
  546. package/build-module/social-links/edit.js +45 -12
  547. package/build-module/social-links/edit.js.map +1 -1
  548. package/build-module/social-links/index.js +9 -0
  549. package/build-module/social-links/index.js.map +1 -1
  550. package/build-module/spacer/index.js +7 -1
  551. package/build-module/spacer/index.js.map +1 -1
  552. package/build-module/table/index.js +4 -0
  553. package/build-module/table/index.js.map +1 -1
  554. package/build-module/table/state.js +10 -4
  555. package/build-module/table/state.js.map +1 -1
  556. package/build-module/table-of-contents/index.js +24 -1
  557. package/build-module/table-of-contents/index.js.map +1 -1
  558. package/build-module/tag-cloud/index.js +5 -1
  559. package/build-module/tag-cloud/index.js.map +1 -1
  560. package/build-module/template-part/index.js +2 -2
  561. package/build-module/template-part/index.js.map +1 -1
  562. package/build-module/term-description/index.js +10 -0
  563. package/build-module/term-description/index.js.map +1 -1
  564. package/build-module/text-columns/edit.js +4 -2
  565. package/build-module/text-columns/edit.js.map +1 -1
  566. package/build-module/text-columns/save.js +4 -2
  567. package/build-module/text-columns/save.js.map +1 -1
  568. package/build-module/verse/index.js +2 -0
  569. package/build-module/verse/index.js.map +1 -1
  570. package/build-module/video/index.js +4 -0
  571. package/build-module/video/index.js.map +1 -1
  572. package/build-style/audio/style-rtl.css +3 -0
  573. package/build-style/audio/style.css +3 -0
  574. package/build-style/button/style-rtl.css +7 -10
  575. package/build-style/button/style.css +7 -10
  576. package/build-style/code/editor-rtl.css +79 -0
  577. package/build-style/code/editor.css +79 -0
  578. package/build-style/cover/editor-rtl.css +0 -3
  579. package/build-style/cover/editor.css +0 -3
  580. package/build-style/editor-rtl.css +94 -146
  581. package/build-style/editor.css +94 -146
  582. package/build-style/group/editor-rtl.css +9 -10
  583. package/build-style/group/editor.css +9 -10
  584. package/build-style/image/editor-rtl.css +21 -2
  585. package/build-style/image/editor.css +21 -2
  586. package/build-style/media-text/style-rtl.css +1 -0
  587. package/build-style/media-text/style.css +1 -0
  588. package/build-style/navigation/editor-rtl.css +11 -23
  589. package/build-style/navigation/editor.css +11 -23
  590. package/build-style/navigation/style-rtl.css +10 -3
  591. package/build-style/navigation/style.css +10 -3
  592. package/build-style/paragraph/editor-rtl.css +1 -1
  593. package/build-style/paragraph/editor.css +1 -1
  594. package/build-style/post-date/style-rtl.css +79 -0
  595. package/build-style/post-date/style.css +79 -0
  596. package/build-style/post-featured-image/editor-rtl.css +45 -43
  597. package/build-style/post-featured-image/editor.css +45 -43
  598. package/build-style/post-featured-image/style-rtl.css +1 -0
  599. package/build-style/post-featured-image/style.css +1 -0
  600. package/build-style/post-title/style-rtl.css +1 -0
  601. package/build-style/post-title/style.css +1 -0
  602. package/build-style/pullquote/editor-rtl.css +0 -12
  603. package/build-style/pullquote/editor.css +0 -12
  604. package/build-style/pullquote/style-rtl.css +1 -8
  605. package/build-style/pullquote/style.css +1 -8
  606. package/build-style/query-title/style-rtl.css +79 -0
  607. package/build-style/query-title/style.css +79 -0
  608. package/build-style/site-logo/editor-rtl.css +3 -52
  609. package/build-style/site-logo/editor.css +3 -52
  610. package/build-style/social-links/style-rtl.css +2 -2
  611. package/build-style/social-links/style.css +2 -2
  612. package/build-style/style-rtl.css +37 -23
  613. package/build-style/style.css +37 -23
  614. package/build-style/video/style-rtl.css +3 -0
  615. package/build-style/video/style.css +3 -0
  616. package/package.json +30 -29
  617. package/src/archives/block.json +5 -1
  618. package/src/audio/block.json +4 -0
  619. package/src/audio/style.scss +2 -0
  620. package/src/button/block.json +1 -1
  621. package/src/button/deprecated.js +21 -22
  622. package/src/button/style.scss +7 -14
  623. package/src/calendar/index.php +2 -2
  624. package/src/categories/block.json +14 -1
  625. package/src/categories/edit.js +2 -2
  626. package/src/code/block.json +4 -2
  627. package/src/code/editor.scss +3 -0
  628. package/src/column/block.json +13 -0
  629. package/src/columns/block.json +13 -0
  630. package/src/columns/deprecated.js +10 -4
  631. package/src/columns/edit.js +7 -3
  632. package/src/columns/edit.native.js +7 -3
  633. package/src/columns/transforms.js +17 -3
  634. package/src/comment-author-name/block.json +5 -1
  635. package/src/comment-content/block.json +5 -1
  636. package/src/comment-date/block.json +1 -0
  637. package/src/comment-edit-link/block.json +5 -1
  638. package/src/comment-reply-link/block.json +5 -1
  639. package/src/comment-template/block.json +14 -1
  640. package/src/comments/block.json +13 -0
  641. package/src/comments/index.php +6 -5
  642. package/src/comments-pagination/block.json +13 -0
  643. package/src/comments-pagination-next/block.json +4 -2
  644. package/src/comments-pagination-numbers/block.json +14 -1
  645. package/src/comments-pagination-numbers/edit.js +12 -3
  646. package/src/comments-pagination-previous/block.json +4 -2
  647. package/src/comments-title/block.json +4 -2
  648. package/src/cover/block.json +13 -0
  649. package/src/cover/deprecated.js +11 -4
  650. package/src/cover/edit/block-controls.js +15 -3
  651. package/src/cover/editor.scss +0 -4
  652. package/src/cover/shared.js +2 -1
  653. package/src/editor.scss +1 -0
  654. package/src/embed/icons.js +1 -1
  655. package/src/gallery/block.json +5 -0
  656. package/src/gallery/deprecated.js +4 -2
  657. package/src/gallery/edit.js +22 -2
  658. package/src/gallery/gap-styles.js +10 -6
  659. package/src/gallery/index.php +23 -2
  660. package/src/gallery/transforms.js +18 -5
  661. package/src/gallery/utils.js +11 -7
  662. package/src/group/block.json +10 -2
  663. package/src/group/deprecated.js +89 -2
  664. package/src/group/edit.js +15 -2
  665. package/src/group/editor.scss +4 -6
  666. package/src/group/variations.js +4 -3
  667. package/src/heading/block.json +3 -1
  668. package/src/heading/deprecated.js +4 -2
  669. package/src/home-link/block.json +14 -1
  670. package/src/home-link/edit.js +19 -20
  671. package/src/image/block.json +13 -7
  672. package/src/image/edit.js +22 -4
  673. package/src/image/editor.scss +39 -3
  674. package/src/image/index.php +1 -1
  675. package/src/image/use-client-width.js +1 -1
  676. package/src/index.js +1 -4
  677. package/src/index.native.js +17 -23
  678. package/src/latest-posts/block.json +14 -1
  679. package/src/list/block.json +4 -0
  680. package/src/list/deprecated.js +71 -1
  681. package/src/list/edit.js +146 -133
  682. package/src/list/index.js +25 -24
  683. package/src/list/save.js +3 -4
  684. package/src/list/{v2/tag-name.js → tag-name.js} +0 -0
  685. package/src/list/{v2/tag-name.native.js → tag-name.native.js} +0 -0
  686. package/src/list/test/__snapshots__/edit.native.js.snap +14 -2
  687. package/src/list/test/edit.native.js +0 -154
  688. package/src/list/transforms.js +57 -111
  689. package/src/list/{v2/migrate.js → utils.js} +2 -2
  690. package/src/list-item/block.json +0 -1
  691. package/src/list-item/edit.js +2 -1
  692. package/src/list-item/edit.native.js +32 -2
  693. package/src/list-item/hooks/index.js +1 -0
  694. package/src/list-item/hooks/use-copy.js +38 -0
  695. package/src/list-item/hooks/use-space.js +10 -2
  696. package/src/list-item/list-style-type.native.js +8 -1
  697. package/src/list-item/style.native.scss +12 -0
  698. package/src/media-text/block.json +17 -0
  699. package/src/media-text/deprecated.js +3 -2
  700. package/src/media-text/style.scss +2 -0
  701. package/src/navigation/block.json +1 -0
  702. package/src/navigation/deprecated.js +4 -2
  703. package/src/navigation/edit/index.js +173 -85
  704. package/src/navigation/edit/responsive-wrapper.js +8 -3
  705. package/src/navigation/edit/unsaved-inner-blocks.js +17 -25
  706. package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +31 -37
  707. package/src/navigation/editor.scss +5 -25
  708. package/src/navigation/index.php +24 -24
  709. package/src/navigation/menu-items-to-blocks.js +3 -6
  710. package/src/navigation/style.scss +14 -4
  711. package/src/navigation/test/use-navigation-menu.js +18 -1
  712. package/src/navigation/use-navigation-menu.js +11 -8
  713. package/src/navigation-link/edit.js +9 -13
  714. package/src/navigation-submenu/edit.js +9 -13
  715. package/src/page-list/edit.js +6 -2
  716. package/src/paragraph/block.json +7 -0
  717. package/src/paragraph/deprecated.js +33 -35
  718. package/src/paragraph/edit.js +1 -0
  719. package/src/paragraph/editor.scss +5 -3
  720. package/src/post-author/block.json +4 -2
  721. package/src/post-author-biography/block.json +1 -0
  722. package/src/post-author-name/block.json +5 -1
  723. package/src/post-comments-count/block.json +4 -1
  724. package/src/post-comments-count/edit.js +10 -2
  725. package/src/post-comments-link/block.json +4 -2
  726. package/src/post-date/block.json +9 -0
  727. package/src/post-date/edit.js +12 -2
  728. package/src/post-date/index.php +10 -2
  729. package/src/post-date/style.scss +4 -0
  730. package/src/post-excerpt/block.json +4 -2
  731. package/src/post-featured-image/block.json +12 -0
  732. package/src/post-featured-image/edit.js +43 -13
  733. package/src/post-featured-image/editor.scss +44 -53
  734. package/src/post-featured-image/index.php +61 -4
  735. package/src/post-featured-image/style.scss +1 -0
  736. package/src/post-navigation-link/block.json +3 -2
  737. package/src/post-template/block.json +15 -1
  738. package/src/post-template/edit.js +6 -1
  739. package/src/post-template/index.php +7 -4
  740. package/src/post-terms/block.json +5 -3
  741. package/src/post-terms/edit.js +0 -1
  742. package/src/post-terms/use-post-terms.js +10 -15
  743. package/src/post-title/block.json +2 -1
  744. package/src/post-title/style.scss +2 -0
  745. package/src/preformatted/block.json +4 -2
  746. package/src/pullquote/block.json +11 -4
  747. package/src/pullquote/deprecated.js +490 -412
  748. package/src/pullquote/edit.js +1 -1
  749. package/src/pullquote/edit.native.js +0 -1
  750. package/src/pullquote/editor.scss +0 -16
  751. package/src/pullquote/index.js +1 -3
  752. package/src/pullquote/save.js +1 -1
  753. package/src/pullquote/style.scss +0 -11
  754. package/src/pullquote/transforms.js +17 -33
  755. package/src/query/deprecated.js +4 -9
  756. package/src/query/edit/index.js +28 -15
  757. package/src/query/edit/inspector-controls/taxonomy-controls.js +1 -1
  758. package/src/query/edit/query-placeholder.js +17 -2
  759. package/src/query/utils.js +29 -7
  760. package/src/query-no-results/block.json +13 -0
  761. package/src/query-no-results/edit.js +1 -1
  762. package/src/query-pagination-numbers/block.json +4 -2
  763. package/src/query-title/block.json +8 -2
  764. package/src/query-title/edit.js +19 -2
  765. package/src/query-title/index.php +11 -1
  766. package/src/query-title/style.scss +4 -0
  767. package/src/quote/block.json +4 -2
  768. package/src/quote/deprecated.js +6 -5
  769. package/src/quote/transforms.js +4 -18
  770. package/src/search/index.php +1 -1
  771. package/src/separator/block.json +1 -0
  772. package/src/separator/deprecated.js +2 -3
  773. package/src/site-logo/editor.scss +8 -66
  774. package/src/social-link/icons/reddit.js +1 -1
  775. package/src/social-link/index.php +1 -1
  776. package/src/social-link/socials-with-bg.scss +1 -1
  777. package/src/social-link/socials-without-bg.scss +1 -1
  778. package/src/social-links/block.json +9 -0
  779. package/src/social-links/edit.js +47 -19
  780. package/src/spacer/block.json +7 -1
  781. package/src/style.scss +2 -0
  782. package/src/table/block.json +4 -0
  783. package/src/table/state.js +21 -19
  784. package/src/table-of-contents/block.json +24 -1
  785. package/src/tag-cloud/block.json +5 -1
  786. package/src/template-part/index.js +3 -2
  787. package/src/term-description/block.json +10 -0
  788. package/src/text-columns/edit.js +2 -2
  789. package/src/text-columns/save.js +2 -2
  790. package/src/verse/block.json +2 -0
  791. package/src/video/block.json +4 -0
  792. package/src/video/style.scss +2 -0
  793. package/build/list/v2/deprecated.js +0 -117
  794. package/build/list/v2/deprecated.js.map +0 -1
  795. package/build/list/v2/edit.js +0 -200
  796. package/build/list/v2/edit.js.map +0 -1
  797. package/build/list/v2/index.js +0 -36
  798. package/build/list/v2/index.js.map +0 -1
  799. package/build/list/v2/migrate.js.map +0 -1
  800. package/build/list/v2/save.js +0 -34
  801. package/build/list/v2/save.js.map +0 -1
  802. package/build/list/v2/tag-name.js.map +0 -1
  803. package/build/list/v2/tag-name.native.js.map +0 -1
  804. package/build/list/v2/transforms.js +0 -137
  805. package/build/list/v2/transforms.js.map +0 -1
  806. package/build-module/list/v2/deprecated.js +0 -104
  807. package/build-module/list/v2/deprecated.js.map +0 -1
  808. package/build-module/list/v2/edit.js +0 -179
  809. package/build-module/list/v2/edit.js.map +0 -1
  810. package/build-module/list/v2/index.js +0 -21
  811. package/build-module/list/v2/index.js.map +0 -1
  812. package/build-module/list/v2/migrate.js.map +0 -1
  813. package/build-module/list/v2/save.js +0 -23
  814. package/build-module/list/v2/save.js.map +0 -1
  815. package/build-module/list/v2/tag-name.js.map +0 -1
  816. package/build-module/list/v2/tag-name.native.js.map +0 -1
  817. package/build-module/list/v2/transforms.js +0 -127
  818. package/build-module/list/v2/transforms.js.map +0 -1
  819. package/src/list/test/migrate.js +0 -158
  820. package/src/list/v2/deprecated.js +0 -89
  821. package/src/list/v2/edit.js +0 -192
  822. package/src/list/v2/index.js +0 -22
  823. package/src/list/v2/save.js +0 -18
  824. package/src/list/v2/transforms.js +0 -120
@@ -2,7 +2,7 @@
2
2
  * External dependencies
3
3
  */
4
4
  import classnames from 'classnames';
5
- import { isEmpty, omit } from 'lodash';
5
+ import { isEmpty } from 'lodash';
6
6
 
7
7
  /**
8
8
  * WordPress dependencies
@@ -42,8 +42,9 @@ const migrateCustomColors = ( attributes ) => {
42
42
  background: attributes.customBackgroundColor,
43
43
  },
44
44
  };
45
+ const { customBackgroundColor, ...restAttributes } = attributes;
45
46
  return {
46
- ...omit( attributes, [ 'customBackgroundColor' ] ),
47
+ ...restAttributes,
47
48
  style,
48
49
  };
49
50
  };
@@ -6,6 +6,8 @@
6
6
  display: grid;
7
7
  grid-template-columns: 50% 1fr;
8
8
  grid-template-rows: auto;
9
+ // This block has customizable padding, border-box makes that more predictable.
10
+ box-sizing: border-box;
9
11
 
10
12
  &.has-media-on-the-right {
11
13
  grid-template-columns: 1fr 50%;
@@ -94,6 +94,7 @@
94
94
  "__experimentalFontWeight": true,
95
95
  "__experimentalTextTransform": true,
96
96
  "__experimentalFontFamily": true,
97
+ "__experimentalLetterSpacing": true,
97
98
  "__experimentalTextDecoration": true,
98
99
  "__experimentalSkipSerialization": [ "textDecoration" ],
99
100
  "__experimentalDefaultControls": {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import { mapValues, omit } from 'lodash';
4
+ import { mapValues } from 'lodash';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -552,8 +552,10 @@ const deprecated = [
552
552
  inserter: true,
553
553
  },
554
554
  migrate: compose( migrateIdToRef, ( attributes ) => {
555
+ const { rgbTextColor, rgbBackgroundColor, ...restAttributes } =
556
+ attributes;
555
557
  return {
556
- ...omit( attributes, [ 'rgbTextColor', 'rgbBackgroundColor' ] ),
558
+ ...restAttributes,
557
559
  customTextColor: attributes.textColor
558
560
  ? undefined
559
561
  : attributes.rgbTextColor,
@@ -6,13 +6,7 @@ import classnames from 'classnames';
6
6
  /**
7
7
  * WordPress dependencies
8
8
  */
9
- import {
10
- useState,
11
- useEffect,
12
- useRef,
13
- useCallback,
14
- Platform,
15
- } from '@wordpress/element';
9
+ import { useState, useEffect, useRef, Platform } from '@wordpress/element';
16
10
  import {
17
11
  InspectorControls,
18
12
  BlockControls,
@@ -29,7 +23,7 @@ import {
29
23
  } from '@wordpress/block-editor';
30
24
  import { EntityProvider } from '@wordpress/core-data';
31
25
 
32
- import { useDispatch, useRegistry } from '@wordpress/data';
26
+ import { useDispatch } from '@wordpress/data';
33
27
  import {
34
28
  PanelBody,
35
29
  ToggleControl,
@@ -41,6 +35,8 @@ import {
41
35
  } from '@wordpress/components';
42
36
  import { __, sprintf } from '@wordpress/i18n';
43
37
  import { speak } from '@wordpress/a11y';
38
+ import { createBlock } from '@wordpress/blocks';
39
+ import { close, Icon } from '@wordpress/icons';
44
40
 
45
41
  /**
46
42
  * Internal dependencies
@@ -100,7 +96,6 @@ function Navigation( {
100
96
 
101
97
  const ref = attributes.ref;
102
98
 
103
- const registry = useRegistry();
104
99
  const setRef = ( postId ) => {
105
100
  setAttributes( { ref: postId } );
106
101
  };
@@ -210,19 +205,37 @@ function Navigation( {
210
205
  const navMenuResolvedButMissing =
211
206
  hasResolvedNavigationMenus && isNavigationMenuMissing;
212
207
 
213
- // Attempt to retrieve and prioritize any existing navigation menu unless
214
- // a specific ref is allocated or the user is explicitly creating a new menu. The aim is
215
- // for the block to "just work" from a user perspective using existing data.
208
+ // Attempt to retrieve and prioritize any existing navigation menu unless:
209
+ // - the are uncontrolled inner blocks already present in the block.
210
+ // - the user is creating a new menu.
211
+ // - there are no menus to choose from.
212
+ // This attempts to pick the first menu if there is a single Navigation Post. If more
213
+ // than 1 exists then use the most recent.
214
+ // The aim is for the block to "just work" from a user perspective using existing data.
216
215
  useEffect( () => {
217
216
  if (
217
+ hasUncontrolledInnerBlocks ||
218
218
  isCreatingNavigationMenu ||
219
219
  ref ||
220
- ! navigationMenus?.length ||
221
- navigationMenus?.length > 1
220
+ ! navigationMenus?.length
222
221
  ) {
223
222
  return;
224
223
  }
225
224
 
225
+ navigationMenus.sort( ( menuA, menuB ) => {
226
+ const menuADate = new Date( menuA.date );
227
+ const menuBDate = new Date( menuB.date );
228
+ return menuADate.getTime() < menuBDate.getTime();
229
+ } );
230
+
231
+ /**
232
+ * This fallback displays (both in editor and on front)
233
+ * a list of pages only if no menu (user assigned or
234
+ * automatically picked) is available.
235
+ * The fallback should not request a save (entity dirty state)
236
+ * nor to be undoable, hence why it is marked as non persistent
237
+ */
238
+ __unstableMarkNextChangeAsNotPersistent();
226
239
  setRef( navigationMenus[ 0 ].id );
227
240
  }, [ navigationMenus ] );
228
241
 
@@ -231,10 +244,9 @@ function Navigation( {
231
244
  const isDraftNavigationMenu = navigationMenu?.status === 'draft';
232
245
 
233
246
  const {
234
- convert,
247
+ convert: convertClassicMenu,
235
248
  status: classicMenuConversionStatus,
236
249
  error: classicMenuConversionError,
237
- value: classicMenuConversionResult,
238
250
  } = useConvertClassicToBlockMenu( clientId );
239
251
 
240
252
  const isConvertingClassicMenu =
@@ -255,13 +267,24 @@ function Navigation( {
255
267
  hasResolvedNavigationMenus &&
256
268
  ! hasUncontrolledInnerBlocks;
257
269
 
270
+ if ( isPlaceholder && ! ref ) {
271
+ /**
272
+ * this fallback only displays (both in editor and on front)
273
+ * the list of pages block if no menu is available as a fallback.
274
+ * We don't want the fallback to request a save,
275
+ * nor to be undoable, hence we mark it non persistent.
276
+ */
277
+ __unstableMarkNextChangeAsNotPersistent();
278
+ replaceInnerBlocks( clientId, [ createBlock( 'core/page-list' ) ] );
279
+ }
280
+
258
281
  const isEntityAvailable =
259
282
  ! isNavigationMenuMissing && isNavigationMenuResolved;
260
283
 
261
284
  // "loading" state:
262
285
  // - there is a menu creation process in progress.
263
286
  // - there is a classic menu conversion process in progress.
264
- // OR
287
+ // OR:
265
288
  // - there is a ref attribute pointing to a Navigation Post
266
289
  // - the Navigation Post isn't available (hasn't resolved) yet.
267
290
  const isLoading =
@@ -273,38 +296,30 @@ function Navigation( {
273
296
  const textDecoration = attributes.style?.typography?.textDecoration;
274
297
 
275
298
  const hasBlockOverlay = useBlockOverlayActive( clientId );
276
- const blockProps = useBlockProps(
277
- {
278
- ref: navRef,
279
- className: classnames( className, {
280
- 'items-justified-right': justifyContent === 'right',
281
- 'items-justified-space-between':
282
- justifyContent === 'space-between',
283
- 'items-justified-left': justifyContent === 'left',
284
- 'items-justified-center': justifyContent === 'center',
285
- 'is-vertical': orientation === 'vertical',
286
- 'no-wrap': flexWrap === 'nowrap',
287
- 'is-responsive': 'never' !== overlayMenu,
288
- 'has-text-color': !! textColor.color || !! textColor?.class,
289
- [ getColorClassName( 'color', textColor?.slug ) ]:
290
- !! textColor?.slug,
291
- 'has-background':
292
- !! backgroundColor.color || backgroundColor.class,
293
- [ getColorClassName(
294
- 'background-color',
295
- backgroundColor?.slug
296
- ) ]: !! backgroundColor?.slug,
297
- [ `has-text-decoration-${ textDecoration }` ]: textDecoration,
298
- 'block-editor-block-content-overlay': hasBlockOverlay,
299
- } ),
300
- style: {
301
- color: ! textColor?.slug && textColor?.color,
302
- backgroundColor:
303
- ! backgroundColor?.slug && backgroundColor?.color,
304
- },
299
+ const blockProps = useBlockProps( {
300
+ ref: navRef,
301
+ className: classnames( className, {
302
+ 'items-justified-right': justifyContent === 'right',
303
+ 'items-justified-space-between': justifyContent === 'space-between',
304
+ 'items-justified-left': justifyContent === 'left',
305
+ 'items-justified-center': justifyContent === 'center',
306
+ 'is-vertical': orientation === 'vertical',
307
+ 'no-wrap': flexWrap === 'nowrap',
308
+ 'is-responsive': 'never' !== overlayMenu,
309
+ 'has-text-color': !! textColor.color || !! textColor?.class,
310
+ [ getColorClassName( 'color', textColor?.slug ) ]:
311
+ !! textColor?.slug,
312
+ 'has-background': !! backgroundColor.color || backgroundColor.class,
313
+ [ getColorClassName( 'background-color', backgroundColor?.slug ) ]:
314
+ !! backgroundColor?.slug,
315
+ [ `has-text-decoration-${ textDecoration }` ]: textDecoration,
316
+ 'block-editor-block-content-overlay': hasBlockOverlay,
317
+ } ),
318
+ style: {
319
+ color: ! textColor?.slug && textColor?.color,
320
+ backgroundColor: ! backgroundColor?.slug && backgroundColor?.color,
305
321
  },
306
- { __unstableIsDisabled: hasBlockOverlay }
307
- );
322
+ } );
308
323
 
309
324
  // Turn on contrast checker for web only since it's not supported on mobile yet.
310
325
  const enableContrastChecking = Platform.OS === 'web';
@@ -328,11 +343,7 @@ function Navigation( {
328
343
  speak( __( 'Classic menu importing.' ) );
329
344
  }
330
345
 
331
- if (
332
- classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS &&
333
- classicMenuConversionResult
334
- ) {
335
- handleUpdateMenu( classicMenuConversionResult?.id );
346
+ if ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS ) {
336
347
  showClassicMenuConversionNotice(
337
348
  __( 'Classic menu imported successfully.' )
338
349
  );
@@ -343,11 +354,7 @@ function Navigation( {
343
354
  __( 'Classic menu import failed.' )
344
355
  );
345
356
  }
346
- }, [
347
- classicMenuConversionStatus,
348
- classicMenuConversionResult,
349
- classicMenuConversionError,
350
- ] );
357
+ }, [ classicMenuConversionStatus, classicMenuConversionError ] );
351
358
 
352
359
  // Spacer block needs orientation from context. This is a patch until
353
360
  // https://github.com/WordPress/gutenberg/issues/36197 is addressed.
@@ -441,17 +448,6 @@ function Navigation( {
441
448
  shouldFocusNavigationSelector,
442
449
  ] );
443
450
 
444
- const resetToEmptyBlock = useCallback( () => {
445
- registry.batch( () => {
446
- setAttributes( {
447
- ref: undefined,
448
- } );
449
- if ( ! ref ) {
450
- replaceInnerBlocks( clientId, [] );
451
- }
452
- } );
453
- }, [ clientId, ref ] );
454
-
455
451
  const isResponsive = 'never' !== overlayMenu;
456
452
 
457
453
  const overlayMenuPreviewClasses = classnames(
@@ -470,15 +466,25 @@ function Navigation( {
470
466
  setOverlayMenuPreview( ! overlayMenuPreview );
471
467
  } }
472
468
  >
473
- { hasIcon && <OverlayMenuIcon /> }
474
- { ! hasIcon && <span>{ __( 'Menu' ) }</span> }
469
+ { hasIcon && (
470
+ <>
471
+ <OverlayMenuIcon />
472
+ <Icon icon={ close } />
473
+ </>
474
+ ) }
475
+ { ! hasIcon && (
476
+ <>
477
+ <span>{ __( 'Menu' ) }</span>
478
+ <span>{ __( 'Close' ) }</span>
479
+ </>
480
+ ) }
475
481
  </Button>
476
482
  ) }
477
483
  { overlayMenuPreview && (
478
484
  <ToggleControl
479
485
  label={ __( 'Show icon button' ) }
480
486
  help={ __(
481
- 'Configure the visual appearance of the button opening the overlay menu.'
487
+ 'Configure the visual appearance of the button opening and closing the overlay menu.'
482
488
  ) }
483
489
  onChange={ ( value ) =>
484
490
  setAttributes( { hasIcon: value } )
@@ -600,6 +606,33 @@ function Navigation( {
600
606
  if ( hasUnsavedBlocks ) {
601
607
  return (
602
608
  <TagName { ...blockProps }>
609
+ <BlockControls>
610
+ <ToolbarGroup className="wp-block-navigation__toolbar-menu-selector">
611
+ <NavigationMenuSelector
612
+ ref={ null }
613
+ currentMenuId={ null }
614
+ clientId={ clientId }
615
+ onSelectNavigationMenu={ ( menuId ) => {
616
+ handleUpdateMenu( menuId );
617
+ setShouldFocusNavigationSelector( true );
618
+ } }
619
+ onSelectClassicMenu={ async ( classicMenu ) => {
620
+ const navMenu = await convertClassicMenu(
621
+ classicMenu.id,
622
+ classicMenu.name
623
+ );
624
+ if ( navMenu ) {
625
+ handleUpdateMenu( navMenu.id );
626
+ setShouldFocusNavigationSelector( true );
627
+ }
628
+ } }
629
+ onCreateNew={ () => createNavigationMenu( '', [] ) }
630
+ /* translators: %s: The name of a menu. */
631
+ actionLabel={ __( "Switch to '%s'" ) }
632
+ showManageActions
633
+ />
634
+ </ToolbarGroup>
635
+ </BlockControls>
603
636
  { stylingInspectorControls }
604
637
  <ResponsiveWrapper
605
638
  id={ clientId }
@@ -611,7 +644,6 @@ function Navigation( {
611
644
  overlayTextColor={ overlayTextColor }
612
645
  >
613
646
  <UnsavedInnerBlocks
614
- blockProps={ blockProps }
615
647
  blocks={ uncontrolledInnerBlocks }
616
648
  clientId={ clientId }
617
649
  navigationMenus={ navigationMenus }
@@ -639,16 +671,46 @@ function Navigation( {
639
671
  // TODO - the user should be able to select a new one?
640
672
  if ( ref && isNavigationMenuMissing ) {
641
673
  return (
642
- <div { ...blockProps }>
674
+ <TagName { ...blockProps }>
675
+ <BlockControls>
676
+ <ToolbarGroup className="wp-block-navigation__toolbar-menu-selector">
677
+ <NavigationMenuSelector
678
+ ref={ navigationSelectorRef }
679
+ currentMenuId={ ref }
680
+ clientId={ clientId }
681
+ onSelectNavigationMenu={ ( menuId ) => {
682
+ handleUpdateMenu( menuId );
683
+ setShouldFocusNavigationSelector( true );
684
+ } }
685
+ onSelectClassicMenu={ async ( classicMenu ) => {
686
+ const navMenu = await convertClassicMenu(
687
+ classicMenu.id,
688
+ classicMenu.name
689
+ );
690
+ if ( navMenu ) {
691
+ handleUpdateMenu( navMenu.id );
692
+ setShouldFocusNavigationSelector( true );
693
+ }
694
+ } }
695
+ onCreateNew={ () => createNavigationMenu( '', [] ) }
696
+ /* translators: %s: The name of a menu. */
697
+ actionLabel={ __( "Switch to '%s'" ) }
698
+ showManageActions
699
+ />
700
+ </ToolbarGroup>
701
+ </BlockControls>
643
702
  <Warning>
644
703
  { __(
645
704
  'Navigation menu has been deleted or is unavailable. '
646
705
  ) }
647
- <Button onClick={ resetToEmptyBlock } variant="link">
706
+ <Button
707
+ onClick={ () => createNavigationMenu( '', [] ) }
708
+ variant="link"
709
+ >
648
710
  { __( 'Create a new menu?' ) }
649
711
  </Button>
650
712
  </Warning>
651
- </div>
713
+ </TagName>
652
714
  );
653
715
  }
654
716
 
@@ -666,7 +728,17 @@ function Navigation( {
666
728
  ? CustomPlaceholder
667
729
  : Placeholder;
668
730
 
669
- if ( isPlaceholder ) {
731
+ /**
732
+ * Historically the navigation block has supported custom placeholders.
733
+ * Even though the current UX tries as hard as possible not to
734
+ * end up in a placeholder state, the block continues to support
735
+ * this extensibility point, via a CustomPlaceholder.
736
+ * When CustomPlaceholder is present it becomes the default fallback
737
+ * for an empty navigation block, instead of the default fallbacks.
738
+ *
739
+ */
740
+
741
+ if ( isPlaceholder && CustomPlaceholder ) {
670
742
  return (
671
743
  <TagName { ...blockProps }>
672
744
  <PlaceholderComponent
@@ -681,9 +753,15 @@ function Navigation( {
681
753
  handleUpdateMenu( menuId );
682
754
  setShouldFocusNavigationSelector( true );
683
755
  } }
684
- onSelectClassicMenu={ ( classicMenu ) => {
685
- convert( classicMenu.id, classicMenu.name );
686
- setShouldFocusNavigationSelector( true );
756
+ onSelectClassicMenu={ async ( classicMenu ) => {
757
+ const navMenu = await convertClassicMenu(
758
+ classicMenu.id,
759
+ classicMenu.name
760
+ );
761
+ if ( navMenu ) {
762
+ handleUpdateMenu( navMenu.id );
763
+ setShouldFocusNavigationSelector( true );
764
+ }
687
765
  } }
688
766
  onCreateEmpty={ () => createNavigationMenu( '', [] ) }
689
767
  />
@@ -705,11 +783,21 @@ function Navigation( {
705
783
  handleUpdateMenu( menuId );
706
784
  setShouldFocusNavigationSelector( true );
707
785
  } }
708
- onSelectClassicMenu={ ( classicMenu ) => {
709
- convert( classicMenu.id, classicMenu.name );
710
- setShouldFocusNavigationSelector( true );
786
+ onSelectClassicMenu={ async ( classicMenu ) => {
787
+ const navMenu = await convertClassicMenu(
788
+ classicMenu.id,
789
+ classicMenu.name
790
+ );
791
+ if ( navMenu ) {
792
+ handleUpdateMenu( navMenu.id );
793
+ setShouldFocusNavigationSelector(
794
+ true
795
+ );
796
+ }
711
797
  } }
712
- onCreateNew={ resetToEmptyBlock }
798
+ onCreateNew={ () =>
799
+ createNavigationMenu( '', [] )
800
+ }
713
801
  /* translators: %s: The name of a menu. */
714
802
  actionLabel={ __( "Switch to '%s'" ) }
715
803
  showManageActions
@@ -728,7 +816,7 @@ function Navigation( {
728
816
  canUserDeleteNavigationMenu && (
729
817
  <NavigationMenuDeleteControl
730
818
  onDelete={ ( deletedMenuTitle = '' ) => {
731
- resetToEmptyBlock();
819
+ replaceInnerBlocks( clientId, [] );
732
820
  showNavigationMenuStatusNotice(
733
821
  sprintf(
734
822
  // translators: %s: the name of a menu (e.g. Header navigation).
@@ -79,7 +79,7 @@ export default function ResponsiveWrapper( {
79
79
  { ! isOpen && (
80
80
  <Button
81
81
  aria-haspopup="true"
82
- aria-label={ __( 'Open menu' ) }
82
+ aria-label={ hasIcon && __( 'Open menu' ) }
83
83
  className={ openButtonClasses }
84
84
  onClick={ () => onToggle( true ) }
85
85
  >
@@ -104,10 +104,15 @@ export default function ResponsiveWrapper( {
104
104
  <div { ...dialogProps }>
105
105
  <Button
106
106
  className="wp-block-navigation__responsive-container-close"
107
- aria-label={ __( 'Close menu' ) }
107
+ aria-label={ hasIcon && __( 'Close menu' ) }
108
108
  onClick={ () => onToggle( false ) }
109
109
  >
110
- <Icon icon={ close } />
110
+ { hasIcon && <Icon icon={ close } /> }
111
+ { ! hasIcon && (
112
+ <span className="wp-block-navigation__toggle_button_label">
113
+ { __( 'Close' ) }
114
+ </span>
115
+ ) }
111
116
  </Button>
112
117
  <div
113
118
  className="wp-block-navigation__responsive-container-content"
@@ -1,8 +1,3 @@
1
- /**
2
- * External dependencies
3
- */
4
- import classnames from 'classnames';
5
-
6
1
  /**
7
2
  * WordPress dependencies
8
3
  */
@@ -42,7 +37,6 @@ const ALLOWED_BLOCKS = [
42
37
  ];
43
38
 
44
39
  export default function UnsavedInnerBlocks( {
45
- blockProps,
46
40
  blocks,
47
41
  clientId,
48
42
  hasSavedUnsavedInnerBlocks,
@@ -63,7 +57,9 @@ export default function UnsavedInnerBlocks( {
63
57
  // from the original inner blocks from the post content then the
64
58
  // user has made changes to the inner blocks. At this point the inner
65
59
  // blocks can be considered "dirty".
66
- const innerBlocksAreDirty = blocks !== originalBlocks.current;
60
+ // We also make sure the current innerBlocks had a chance to be set.
61
+ const innerBlocksAreDirty =
62
+ !! originalBlocks.current && blocks !== originalBlocks.current;
67
63
 
68
64
  const shouldDirectInsert = useMemo(
69
65
  () =>
@@ -81,12 +77,17 @@ export default function UnsavedInnerBlocks( {
81
77
  const isDisabled = useContext( Disabled.Context );
82
78
  const savingLock = useRef( false );
83
79
 
84
- const innerBlocksProps = useInnerBlocksProps( blockProps, {
85
- renderAppender: hasSelection ? undefined : false,
86
- allowedBlocks: ALLOWED_BLOCKS,
87
- __experimentalDefaultBlock: DEFAULT_BLOCK,
88
- __experimentalDirectInsert: shouldDirectInsert,
89
- } );
80
+ const innerBlocksProps = useInnerBlocksProps(
81
+ {
82
+ className: 'wp-block-navigation__container',
83
+ },
84
+ {
85
+ renderAppender: hasSelection ? undefined : false,
86
+ allowedBlocks: ALLOWED_BLOCKS,
87
+ __experimentalDefaultBlock: DEFAULT_BLOCK,
88
+ __experimentalDirectInsert: shouldDirectInsert,
89
+ }
90
+ );
90
91
 
91
92
  const { isSaving, draftNavigationMenus, hasResolvedDraftNavigationMenus } =
92
93
  useSelect(
@@ -170,18 +171,9 @@ export default function UnsavedInnerBlocks( {
170
171
  const Wrapper = isSaving ? Disabled : 'div';
171
172
 
172
173
  return (
173
- <Wrapper className="wp-block-navigation__unsaved-changes">
174
- <div
175
- className={ classnames(
176
- 'wp-block-navigation__unsaved-changes-overlay',
177
- {
178
- 'is-saving': isSaving,
179
- }
180
- ) }
181
- >
182
- <div { ...innerBlocksProps } />
183
- </div>
174
+ <>
175
+ <Wrapper { ...innerBlocksProps } />
184
176
  { isSaving && <Spinner /> }
185
- </Wrapper>
177
+ </>
186
178
  );
187
179
  }
@@ -23,7 +23,6 @@ function useConvertClassicToBlockMenu( clientId ) {
23
23
  const registry = useRegistry();
24
24
 
25
25
  const [ status, setStatus ] = useState( CLASSIC_MENU_CONVERSION_IDLE );
26
- const [ value, setValue ] = useState( null );
27
26
  const [ error, setError ] = useState( null );
28
27
 
29
28
  async function convertClassicMenuToBlockMenu( menuId, menuName ) {
@@ -88,47 +87,42 @@ function useConvertClassicToBlockMenu( clientId ) {
88
87
  return navigationMenu;
89
88
  }
90
89
 
91
- const convert = useCallback(
92
- ( menuId, menuName ) => {
93
- if ( ! menuId || ! menuName ) {
94
- setError( 'Unable to convert menu. Missing menu details.' );
90
+ const convert = useCallback( async ( menuId, menuName ) => {
91
+ if ( ! menuId || ! menuName ) {
92
+ setError( 'Unable to convert menu. Missing menu details.' );
93
+ setStatus( CLASSIC_MENU_CONVERSION_ERROR );
94
+ return;
95
+ }
96
+
97
+ setStatus( CLASSIC_MENU_CONVERSION_PENDING );
98
+ setError( null );
99
+
100
+ return await convertClassicMenuToBlockMenu( menuId, menuName )
101
+ .then( ( navigationMenu ) => {
102
+ setStatus( CLASSIC_MENU_CONVERSION_SUCCESS );
103
+ return navigationMenu;
104
+ } )
105
+ .catch( ( err ) => {
106
+ setError( err?.message );
95
107
  setStatus( CLASSIC_MENU_CONVERSION_ERROR );
96
- return;
97
- }
98
-
99
- setStatus( CLASSIC_MENU_CONVERSION_PENDING );
100
- setValue( null );
101
- setError( null );
102
-
103
- convertClassicMenuToBlockMenu( menuId, menuName )
104
- .then( ( navMenu ) => {
105
- setValue( navMenu );
106
- setStatus( CLASSIC_MENU_CONVERSION_SUCCESS );
107
- } )
108
- .catch( ( err ) => {
109
- setError( err?.message );
110
- setStatus( CLASSIC_MENU_CONVERSION_ERROR );
111
-
112
- // Rethrow error for debugging.
113
- throw new Error(
114
- sprintf(
115
- // translators: %s: the name of a menu (e.g. Header navigation).
116
- __( `Unable to create Navigation Menu "%s".` ),
117
- menuName
118
- ),
119
- {
120
- cause: err,
121
- }
122
- );
123
- } );
124
- },
125
- [ clientId ]
126
- );
108
+
109
+ // Rethrow error for debugging.
110
+ throw new Error(
111
+ sprintf(
112
+ // translators: %s: the name of a menu (e.g. Header navigation).
113
+ __( `Unable to create Navigation Menu "%s".` ),
114
+ menuName
115
+ ),
116
+ {
117
+ cause: err,
118
+ }
119
+ );
120
+ } );
121
+ }, [] );
127
122
 
128
123
  return {
129
124
  convert,
130
125
  status,
131
- value,
132
126
  error,
133
127
  };
134
128
  }