@wordpress/block-library 7.0.2 → 7.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (447) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/audio/edit.js +4 -4
  3. package/build/audio/edit.js.map +1 -1
  4. package/build/audio/edit.native.js +4 -4
  5. package/build/audio/edit.native.js.map +1 -1
  6. package/build/audio/transforms.js +1 -1
  7. package/build/audio/transforms.js.map +1 -1
  8. package/build/block/edit.js +3 -9
  9. package/build/block/edit.js.map +1 -1
  10. package/build/button/edit.js +3 -2
  11. package/build/button/edit.js.map +1 -1
  12. package/build/button/edit.native.js +2 -2
  13. package/build/button/edit.native.js.map +1 -1
  14. package/build/buttons/transforms.js +8 -8
  15. package/build/buttons/transforms.js.map +1 -1
  16. package/build/categories/edit.js +15 -26
  17. package/build/categories/edit.js.map +1 -1
  18. package/build/code/index.js +0 -1
  19. package/build/code/index.js.map +1 -1
  20. package/build/columns/columnCalculations.native.js +1 -1
  21. package/build/columns/columnCalculations.native.js.map +1 -1
  22. package/build/columns/edit.js +1 -1
  23. package/build/columns/edit.js.map +1 -1
  24. package/build/columns/edit.native.js +3 -3
  25. package/build/columns/edit.native.js.map +1 -1
  26. package/build/cover/controls.native.js +5 -5
  27. package/build/cover/controls.native.js.map +1 -1
  28. package/build/cover/deprecated.js +188 -17
  29. package/build/cover/deprecated.js.map +1 -1
  30. package/build/cover/edit.js +8 -11
  31. package/build/cover/edit.js.map +1 -1
  32. package/build/cover/edit.native.js +8 -8
  33. package/build/cover/edit.native.js.map +1 -1
  34. package/build/cover/overlay-color-settings.native.js +3 -3
  35. package/build/cover/overlay-color-settings.native.js.map +1 -1
  36. package/build/cover/save.js +1 -1
  37. package/build/cover/save.js.map +1 -1
  38. package/build/cover/shared.js +2 -2
  39. package/build/cover/shared.js.map +1 -1
  40. package/build/embed/edit.js +1 -1
  41. package/build/embed/edit.js.map +1 -1
  42. package/build/embed/edit.native.js +1 -1
  43. package/build/embed/edit.native.js.map +1 -1
  44. package/build/embed/util.js +2 -2
  45. package/build/embed/util.js.map +1 -1
  46. package/build/embed/variations.js +1 -1
  47. package/build/embed/variations.js.map +1 -1
  48. package/build/file/edit.js +20 -17
  49. package/build/file/edit.js.map +1 -1
  50. package/build/file/edit.native.js +1 -1
  51. package/build/file/edit.native.js.map +1 -1
  52. package/build/file/save.js +7 -3
  53. package/build/file/save.js.map +1 -1
  54. package/build/freeform/edit.js +2 -2
  55. package/build/freeform/edit.js.map +1 -1
  56. package/build/gallery/edit.js +1 -1
  57. package/build/gallery/edit.js.map +1 -1
  58. package/build/gallery/gallery.native.js +1 -1
  59. package/build/gallery/gallery.native.js.map +1 -1
  60. package/build/gallery/v1/edit.js +3 -3
  61. package/build/gallery/v1/edit.js.map +1 -1
  62. package/build/gallery/v1/gallery-image.native.js +3 -3
  63. package/build/gallery/v1/gallery-image.native.js.map +1 -1
  64. package/build/gallery/v1/gallery.native.js +2 -2
  65. package/build/gallery/v1/gallery.native.js.map +1 -1
  66. package/build/group/index.js +3 -37
  67. package/build/group/index.js.map +1 -1
  68. package/build/group/transforms.js +45 -0
  69. package/build/group/transforms.js.map +1 -0
  70. package/build/home-link/edit.js +1 -1
  71. package/build/home-link/edit.js.map +1 -1
  72. package/build/image/edit.js +7 -6
  73. package/build/image/edit.js.map +1 -1
  74. package/build/image/edit.native.js +25 -10
  75. package/build/image/edit.native.js.map +1 -1
  76. package/build/image/transforms.js +1 -1
  77. package/build/image/transforms.js.map +1 -1
  78. package/build/index.js +3 -4
  79. package/build/index.js.map +1 -1
  80. package/build/index.native.js +2 -2
  81. package/build/index.native.js.map +1 -1
  82. package/build/media-text/edit.js +21 -2
  83. package/build/media-text/edit.js.map +1 -1
  84. package/build/media-text/edit.native.js +2 -2
  85. package/build/media-text/edit.native.js.map +1 -1
  86. package/build/media-text/media-container.native.js +1 -1
  87. package/build/media-text/media-container.native.js.map +1 -1
  88. package/build/missing/edit.native.js +1 -1
  89. package/build/missing/edit.native.js.map +1 -1
  90. package/build/more/transforms.js +2 -2
  91. package/build/more/transforms.js.map +1 -1
  92. package/build/navigation/edit/index.js +134 -60
  93. package/build/navigation/edit/index.js.map +1 -1
  94. package/build/navigation/edit/inner-blocks.js +8 -3
  95. package/build/navigation/edit/inner-blocks.js.map +1 -1
  96. package/build/navigation/edit/navigation-menu-selector.js +66 -53
  97. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  98. package/build/navigation/edit/placeholder/index.js +31 -46
  99. package/build/navigation/edit/placeholder/index.js.map +1 -1
  100. package/build/navigation/edit/placeholder/placeholder-preview.js +3 -12
  101. package/build/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
  102. package/build/navigation/edit/unsaved-inner-blocks.js +3 -1
  103. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  104. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +120 -0
  105. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -0
  106. package/build/navigation/edit/use-create-navigation-menu.js +53 -4
  107. package/build/navigation/edit/use-create-navigation-menu.js.map +1 -1
  108. package/build/navigation/edit/use-navigation-notice.js +3 -3
  109. package/build/navigation/edit/use-navigation-notice.js.map +1 -1
  110. package/build/navigation/menu-items-to-blocks.js +1 -1
  111. package/build/navigation/menu-items-to-blocks.js.map +1 -1
  112. package/build/navigation/use-navigation-entities.js +25 -49
  113. package/build/navigation/use-navigation-entities.js.map +1 -1
  114. package/build/navigation/use-navigation-menu.js +2 -0
  115. package/build/navigation/use-navigation-menu.js.map +1 -1
  116. package/build/navigation-link/fallback-variations.js +1 -1
  117. package/build/navigation-link/fallback-variations.js.map +1 -1
  118. package/build/navigation-link/hooks.js +2 -2
  119. package/build/navigation-link/hooks.js.map +1 -1
  120. package/build/navigation-submenu/edit.js +2 -2
  121. package/build/navigation-submenu/edit.js.map +1 -1
  122. package/build/page-list/convert-to-links-modal.js +13 -23
  123. package/build/page-list/convert-to-links-modal.js.map +1 -1
  124. package/build/page-list/edit.js +8 -22
  125. package/build/page-list/edit.js.map +1 -1
  126. package/build/post-author-name/edit.js +2 -1
  127. package/build/post-author-name/edit.js.map +1 -1
  128. package/build/post-comments-form/edit.js +3 -1
  129. package/build/post-comments-form/edit.js.map +1 -1
  130. package/build/post-excerpt/edit.js +7 -4
  131. package/build/post-excerpt/edit.js.map +1 -1
  132. package/build/post-terms/edit.js +3 -1
  133. package/build/post-terms/edit.js.map +1 -1
  134. package/build/query-title/edit.js +0 -1
  135. package/build/query-title/edit.js.map +1 -1
  136. package/build/search/edit.js +4 -1
  137. package/build/search/edit.js.map +1 -1
  138. package/build/search/edit.native.js +1 -1
  139. package/build/search/edit.native.js.map +1 -1
  140. package/build/separator/save.js +4 -4
  141. package/build/separator/save.js.map +1 -1
  142. package/build/separator/separator-settings.native.js +1 -1
  143. package/build/separator/separator-settings.native.js.map +1 -1
  144. package/build/site-logo/edit.js +1 -1
  145. package/build/site-logo/edit.js.map +1 -1
  146. package/build/social-link/edit.native.js +11 -3
  147. package/build/social-link/edit.native.js.map +1 -1
  148. package/build/spacer/controls.js +5 -5
  149. package/build/spacer/controls.js.map +1 -1
  150. package/build/spacer/controls.native.js +5 -5
  151. package/build/spacer/controls.native.js.map +1 -1
  152. package/build/table/edit.js +2 -2
  153. package/build/table/edit.js.map +1 -1
  154. package/build/video/edit.js +4 -4
  155. package/build/video/edit.js.map +1 -1
  156. package/build/video/edit.native.js +3 -3
  157. package/build/video/edit.native.js.map +1 -1
  158. package/build-module/audio/edit.js +4 -4
  159. package/build-module/audio/edit.js.map +1 -1
  160. package/build-module/audio/edit.native.js +4 -4
  161. package/build-module/audio/edit.native.js.map +1 -1
  162. package/build-module/audio/transforms.js +1 -1
  163. package/build-module/audio/transforms.js.map +1 -1
  164. package/build-module/block/edit.js +5 -11
  165. package/build-module/block/edit.js.map +1 -1
  166. package/build-module/button/edit.js +3 -2
  167. package/build-module/button/edit.js.map +1 -1
  168. package/build-module/button/edit.native.js +2 -2
  169. package/build-module/button/edit.native.js.map +1 -1
  170. package/build-module/buttons/transforms.js +8 -8
  171. package/build-module/buttons/transforms.js.map +1 -1
  172. package/build-module/categories/edit.js +15 -25
  173. package/build-module/categories/edit.js.map +1 -1
  174. package/build-module/code/index.js +0 -1
  175. package/build-module/code/index.js.map +1 -1
  176. package/build-module/columns/columnCalculations.native.js +1 -1
  177. package/build-module/columns/columnCalculations.native.js.map +1 -1
  178. package/build-module/columns/edit.js +1 -1
  179. package/build-module/columns/edit.js.map +1 -1
  180. package/build-module/columns/edit.native.js +3 -3
  181. package/build-module/columns/edit.native.js.map +1 -1
  182. package/build-module/cover/controls.native.js +5 -5
  183. package/build-module/cover/controls.native.js.map +1 -1
  184. package/build-module/cover/deprecated.js +190 -17
  185. package/build-module/cover/deprecated.js.map +1 -1
  186. package/build-module/cover/edit.js +8 -11
  187. package/build-module/cover/edit.js.map +1 -1
  188. package/build-module/cover/edit.native.js +8 -8
  189. package/build-module/cover/edit.native.js.map +1 -1
  190. package/build-module/cover/overlay-color-settings.native.js +3 -3
  191. package/build-module/cover/overlay-color-settings.native.js.map +1 -1
  192. package/build-module/cover/save.js +1 -1
  193. package/build-module/cover/save.js.map +1 -1
  194. package/build-module/cover/shared.js +2 -2
  195. package/build-module/cover/shared.js.map +1 -1
  196. package/build-module/embed/edit.js +1 -1
  197. package/build-module/embed/edit.js.map +1 -1
  198. package/build-module/embed/edit.native.js +1 -1
  199. package/build-module/embed/edit.native.js.map +1 -1
  200. package/build-module/embed/util.js +2 -2
  201. package/build-module/embed/util.js.map +1 -1
  202. package/build-module/embed/variations.js +1 -1
  203. package/build-module/embed/variations.js.map +1 -1
  204. package/build-module/file/edit.js +21 -18
  205. package/build-module/file/edit.js.map +1 -1
  206. package/build-module/file/edit.native.js +1 -1
  207. package/build-module/file/edit.native.js.map +1 -1
  208. package/build-module/file/save.js +7 -3
  209. package/build-module/file/save.js.map +1 -1
  210. package/build-module/freeform/edit.js +2 -2
  211. package/build-module/freeform/edit.js.map +1 -1
  212. package/build-module/gallery/edit.js +1 -1
  213. package/build-module/gallery/edit.js.map +1 -1
  214. package/build-module/gallery/gallery.native.js +1 -1
  215. package/build-module/gallery/gallery.native.js.map +1 -1
  216. package/build-module/gallery/v1/edit.js +3 -3
  217. package/build-module/gallery/v1/edit.js.map +1 -1
  218. package/build-module/gallery/v1/gallery-image.native.js +3 -3
  219. package/build-module/gallery/v1/gallery-image.native.js.map +1 -1
  220. package/build-module/gallery/v1/gallery.native.js +2 -2
  221. package/build-module/gallery/v1/gallery.native.js.map +1 -1
  222. package/build-module/group/index.js +2 -36
  223. package/build-module/group/index.js.map +1 -1
  224. package/build-module/group/transforms.js +36 -0
  225. package/build-module/group/transforms.js.map +1 -0
  226. package/build-module/home-link/edit.js +1 -1
  227. package/build-module/home-link/edit.js.map +1 -1
  228. package/build-module/image/edit.js +7 -6
  229. package/build-module/image/edit.js.map +1 -1
  230. package/build-module/image/edit.native.js +25 -10
  231. package/build-module/image/edit.native.js.map +1 -1
  232. package/build-module/image/transforms.js +1 -1
  233. package/build-module/image/transforms.js.map +1 -1
  234. package/build-module/index.js +4 -5
  235. package/build-module/index.js.map +1 -1
  236. package/build-module/index.native.js +2 -2
  237. package/build-module/index.native.js.map +1 -1
  238. package/build-module/media-text/edit.js +20 -2
  239. package/build-module/media-text/edit.js.map +1 -1
  240. package/build-module/media-text/edit.native.js +2 -2
  241. package/build-module/media-text/edit.native.js.map +1 -1
  242. package/build-module/media-text/media-container.native.js +1 -1
  243. package/build-module/media-text/media-container.native.js.map +1 -1
  244. package/build-module/missing/edit.native.js +1 -1
  245. package/build-module/missing/edit.native.js.map +1 -1
  246. package/build-module/more/transforms.js +2 -2
  247. package/build-module/more/transforms.js.map +1 -1
  248. package/build-module/navigation/edit/index.js +128 -60
  249. package/build-module/navigation/edit/index.js.map +1 -1
  250. package/build-module/navigation/edit/inner-blocks.js +8 -3
  251. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  252. package/build-module/navigation/edit/navigation-menu-selector.js +66 -50
  253. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  254. package/build-module/navigation/edit/placeholder/index.js +32 -45
  255. package/build-module/navigation/edit/placeholder/index.js.map +1 -1
  256. package/build-module/navigation/edit/placeholder/placeholder-preview.js +3 -9
  257. package/build-module/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
  258. package/build-module/navigation/edit/unsaved-inner-blocks.js +3 -1
  259. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  260. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +100 -0
  261. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -0
  262. package/build-module/navigation/edit/use-create-navigation-menu.js +48 -5
  263. package/build-module/navigation/edit/use-create-navigation-menu.js.map +1 -1
  264. package/build-module/navigation/edit/use-navigation-notice.js +3 -3
  265. package/build-module/navigation/edit/use-navigation-notice.js.map +1 -1
  266. package/build-module/navigation/menu-items-to-blocks.js +1 -1
  267. package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
  268. package/build-module/navigation/use-navigation-entities.js +26 -50
  269. package/build-module/navigation/use-navigation-entities.js.map +1 -1
  270. package/build-module/navigation/use-navigation-menu.js +2 -0
  271. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  272. package/build-module/navigation-link/fallback-variations.js +1 -1
  273. package/build-module/navigation-link/fallback-variations.js.map +1 -1
  274. package/build-module/navigation-link/hooks.js +2 -2
  275. package/build-module/navigation-link/hooks.js.map +1 -1
  276. package/build-module/navigation-submenu/edit.js +2 -2
  277. package/build-module/navigation-submenu/edit.js.map +1 -1
  278. package/build-module/page-list/convert-to-links-modal.js +15 -25
  279. package/build-module/page-list/convert-to-links-modal.js.map +1 -1
  280. package/build-module/page-list/edit.js +9 -23
  281. package/build-module/page-list/edit.js.map +1 -1
  282. package/build-module/post-author-name/edit.js +2 -1
  283. package/build-module/post-author-name/edit.js.map +1 -1
  284. package/build-module/post-comments-form/edit.js +4 -2
  285. package/build-module/post-comments-form/edit.js.map +1 -1
  286. package/build-module/post-excerpt/edit.js +9 -6
  287. package/build-module/post-excerpt/edit.js.map +1 -1
  288. package/build-module/post-terms/edit.js +2 -1
  289. package/build-module/post-terms/edit.js.map +1 -1
  290. package/build-module/query-title/edit.js +0 -1
  291. package/build-module/query-title/edit.js.map +1 -1
  292. package/build-module/search/edit.js +3 -1
  293. package/build-module/search/edit.js.map +1 -1
  294. package/build-module/search/edit.native.js +1 -1
  295. package/build-module/search/edit.native.js.map +1 -1
  296. package/build-module/separator/save.js +4 -4
  297. package/build-module/separator/save.js.map +1 -1
  298. package/build-module/separator/separator-settings.native.js +1 -1
  299. package/build-module/separator/separator-settings.native.js.map +1 -1
  300. package/build-module/site-logo/edit.js +1 -1
  301. package/build-module/site-logo/edit.js.map +1 -1
  302. package/build-module/social-link/edit.native.js +11 -3
  303. package/build-module/social-link/edit.native.js.map +1 -1
  304. package/build-module/spacer/controls.js +5 -5
  305. package/build-module/spacer/controls.js.map +1 -1
  306. package/build-module/spacer/controls.native.js +5 -5
  307. package/build-module/spacer/controls.native.js.map +1 -1
  308. package/build-module/table/edit.js +2 -2
  309. package/build-module/table/edit.js.map +1 -1
  310. package/build-module/video/edit.js +4 -4
  311. package/build-module/video/edit.js.map +1 -1
  312. package/build-module/video/edit.native.js +3 -3
  313. package/build-module/video/edit.native.js.map +1 -1
  314. package/build-style/button/editor-rtl.css +0 -3
  315. package/build-style/button/editor.css +0 -3
  316. package/build-style/code/style-rtl.css +2 -1
  317. package/build-style/code/style.css +2 -1
  318. package/build-style/code/theme-rtl.css +0 -3
  319. package/build-style/code/theme.css +0 -3
  320. package/build-style/common-rtl.css +1 -1
  321. package/build-style/common.css +1 -1
  322. package/build-style/cover/style-rtl.css +1 -5
  323. package/build-style/cover/style.css +1 -5
  324. package/build-style/editor-rtl.css +16 -3
  325. package/build-style/editor.css +16 -3
  326. package/build-style/image/style-rtl.css +2 -1
  327. package/build-style/image/style.css +2 -1
  328. package/build-style/navigation/editor-rtl.css +16 -0
  329. package/build-style/navigation/editor.css +16 -0
  330. package/build-style/style-rtl.css +12 -10
  331. package/build-style/style.css +12 -10
  332. package/build-style/tag-cloud/style-rtl.css +6 -2
  333. package/build-style/tag-cloud/style.css +6 -2
  334. package/build-style/theme-rtl.css +0 -3
  335. package/build-style/theme.css +0 -3
  336. package/package.json +32 -28
  337. package/src/audio/edit.js +4 -4
  338. package/src/audio/edit.native.js +4 -4
  339. package/src/audio/transforms.js +1 -1
  340. package/src/block/edit.js +7 -22
  341. package/src/block/test/edit.native.js +9 -9
  342. package/src/button/edit.js +2 -1
  343. package/src/button/edit.native.js +2 -2
  344. package/src/button/editor.scss +0 -5
  345. package/src/buttons/test/edit.native.js +3 -3
  346. package/src/buttons/transforms.js +8 -8
  347. package/src/categories/edit.js +12 -22
  348. package/src/code/block.json +0 -1
  349. package/src/code/style.scss +4 -2
  350. package/src/code/theme.scss +0 -3
  351. package/src/columns/columnCalculations.native.js +1 -1
  352. package/src/columns/edit.js +1 -1
  353. package/src/columns/edit.native.js +3 -3
  354. package/src/comments-pagination-numbers/index.php +1 -1
  355. package/src/common.scss +1 -1
  356. package/src/cover/controls.native.js +1 -1
  357. package/src/cover/deprecated.js +214 -1
  358. package/src/cover/edit.js +6 -8
  359. package/src/cover/edit.native.js +8 -8
  360. package/src/cover/overlay-color-settings.native.js +3 -3
  361. package/src/cover/save.js +4 -3
  362. package/src/cover/shared.js +2 -2
  363. package/src/cover/style.scss +1 -3
  364. package/src/cover/test/edit.native.js +39 -39
  365. package/src/embed/edit.js +1 -1
  366. package/src/embed/edit.native.js +1 -1
  367. package/src/embed/test/index.native.js +105 -105
  368. package/src/embed/util.js +2 -2
  369. package/src/embed/variations.js +1 -1
  370. package/src/file/edit.js +19 -17
  371. package/src/file/edit.native.js +1 -1
  372. package/src/file/save.js +9 -3
  373. package/src/file/style.native.scss +1 -0
  374. package/src/freeform/edit.js +2 -2
  375. package/src/gallery/edit.js +1 -1
  376. package/src/gallery/gallery.native.js +1 -1
  377. package/src/gallery/test/__snapshots__/index.native.js.snap +164 -0
  378. package/src/gallery/test/helpers.native.js +293 -0
  379. package/src/gallery/test/index.native.js +583 -65
  380. package/src/gallery/v1/edit.js +3 -4
  381. package/src/gallery/v1/gallery-image.native.js +3 -3
  382. package/src/gallery/v1/gallery.native.js +2 -2
  383. package/src/group/index.js +2 -54
  384. package/src/group/transforms.js +52 -0
  385. package/src/home-link/edit.js +1 -1
  386. package/src/image/edit.js +7 -6
  387. package/src/image/edit.native.js +25 -8
  388. package/src/image/style.scss +2 -1
  389. package/src/image/test/edit.native.js +1 -1
  390. package/src/image/transforms.js +1 -1
  391. package/src/index.js +2 -3
  392. package/src/index.native.js +2 -2
  393. package/src/media-text/edit.js +20 -2
  394. package/src/media-text/edit.native.js +2 -2
  395. package/src/media-text/media-container.native.js +1 -1
  396. package/src/media-text/style.native.scss +1 -0
  397. package/src/missing/edit.native.js +1 -1
  398. package/src/missing/test/edit-integration.native.js +4 -4
  399. package/src/missing/test/edit.native.js +2 -2
  400. package/src/more/transforms.js +2 -2
  401. package/src/navigation/edit/index.js +194 -69
  402. package/src/navigation/edit/inner-blocks.js +11 -4
  403. package/src/navigation/edit/navigation-menu-selector.js +97 -79
  404. package/src/navigation/edit/placeholder/index.js +61 -84
  405. package/src/navigation/edit/placeholder/placeholder-preview.js +3 -10
  406. package/src/navigation/edit/unsaved-inner-blocks.js +3 -1
  407. package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +137 -0
  408. package/src/navigation/edit/use-create-navigation-menu.js +59 -8
  409. package/src/navigation/edit/use-navigation-notice.js +3 -3
  410. package/src/navigation/editor.scss +23 -1
  411. package/src/navigation/menu-items-to-blocks.js +1 -1
  412. package/src/navigation/test/menu-items-to-blocks.js +1 -1
  413. package/src/navigation/use-navigation-entities.js +26 -60
  414. package/src/navigation/use-navigation-menu.js +5 -0
  415. package/src/navigation-link/fallback-variations.js +1 -1
  416. package/src/navigation-link/hooks.js +2 -2
  417. package/src/navigation-link/test/edit.js +5 -5
  418. package/src/navigation-submenu/edit.js +2 -2
  419. package/src/page-list/convert-to-links-modal.js +17 -31
  420. package/src/page-list/edit.js +14 -23
  421. package/src/post-author-name/edit.js +1 -0
  422. package/src/post-author-name/index.php +1 -1
  423. package/src/post-comments-form/edit.js +7 -3
  424. package/src/post-excerpt/edit.js +9 -12
  425. package/src/post-terms/edit.js +2 -1
  426. package/src/query-title/edit.js +0 -1
  427. package/src/search/edit.js +6 -0
  428. package/src/search/edit.native.js +1 -1
  429. package/src/search/index.php +3 -2
  430. package/src/search/test/edit.native.js +0 -1
  431. package/src/separator/save.js +4 -4
  432. package/src/separator/separator-settings.native.js +1 -1
  433. package/src/site-logo/edit.js +1 -1
  434. package/src/social-link/edit.native.js +17 -8
  435. package/src/social-link/test/index.native.js +138 -0
  436. package/src/spacer/controls.js +1 -1
  437. package/src/spacer/controls.native.js +1 -1
  438. package/src/table/edit.js +2 -2
  439. package/src/tag-cloud/style.scss +12 -7
  440. package/src/video/edit.js +4 -4
  441. package/src/video/edit.native.js +3 -3
  442. package/src/video/style.native.scss +1 -0
  443. package/build/navigation/use-convert-classic-menu.js +0 -59
  444. package/build/navigation/use-convert-classic-menu.js.map +0 -1
  445. package/build-module/navigation/use-convert-classic-menu.js +0 -47
  446. package/build-module/navigation/use-convert-classic-menu.js.map +0 -1
  447. package/src/navigation/use-convert-classic-menu.js +0 -58
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/missing/edit.native.js"],"names":["UBE_INCOMPATIBLE_BLOCKS","I18N_BLOCK_SCHEMA_TITLE","UnsupportedBlockEdit","Component","constructor","props","state","showHelp","toggleSheet","bind","closeSheet","requestFallback","onHelpButtonPressed","setState","componentWillUnmount","timeout","clearTimeout","getTitle","originalName","attributes","blockType","coreBlocks","title","metadata","textdomain","renderHelpIcon","infoIconStyle","getStylesFromColorScheme","styles","infoIcon","infoIconDark","helpIconContainer","help","color","isSelected","selectBlock","canEnableUnsupportedBlockEditor","isUnsupportedBlockEditorSupported","sendButtonPressMessage","sendFallbackMessage","renderSheet","blockTitle","blockName","clientId","isEditableInUnsupportedBlockEditor","infoTextStyle","infoText","infoTextDark","infoTitleStyle","infoTitle","infoTitleDark","infoDescriptionStyle","infoDescription","infoDescriptionDark","infoSheetIconStyle","infoSheetIcon","infoSheetIconDark","titleFormat","missingBlockDetail","missingBlockActionButton","actionButtonStyle","actionButton","actionButtonDark","setTimeout","content","originalContent","actionButtons","missingBlockAlertActionButton","infoContainer","size","render","preferredColorScheme","titleStyle","unsupportedBlockMessage","unsupportedBlockMessageDark","subTitleStyle","unsupportedBlockSubtitle","unsupportedBlockSubtitleDark","subtitle","icon","settings","plugins","iconStyle","unsupportedBlockIcon","unsupportedBlockIconDark","iconClassName","unsupportedBlock","unsupportedBlockDark","src","select","getSettings","blockEditorStore","unsupportedBlockEditor","includes","dispatch","ownProps","withPreferredColorScheme"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tView,\n\tText,\n\tTouchableWithoutFeedback,\n\tTouchableHighlight,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\trequestUnsupportedBlockFallback,\n\tsendActionButtonPressedAction,\n\tactionButtons,\n} from '@wordpress/react-native-bridge';\nimport { BottomSheet, Icon, TextControl } from '@wordpress/components';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { coreBlocks } from '@wordpress/block-library';\nimport { normalizeIconObject } from '@wordpress/blocks';\nimport { Component } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { help, plugins } from '@wordpress/icons';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { applyFilters } from '@wordpress/hooks';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\n// Blocks that can't be edited through the Unsupported block editor identified by their name.\nconst UBE_INCOMPATIBLE_BLOCKS = [ 'core/block' ];\nconst I18N_BLOCK_SCHEMA_TITLE = 'block title';\n\nexport class UnsupportedBlockEdit extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\t\tthis.state = { showHelp: false };\n\t\tthis.toggleSheet = this.toggleSheet.bind( this );\n\t\tthis.closeSheet = this.closeSheet.bind( this );\n\t\tthis.requestFallback = this.requestFallback.bind( this );\n\t\tthis.onHelpButtonPressed = this.onHelpButtonPressed.bind( this );\n\t}\n\n\ttoggleSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: ! this.state.showHelp,\n\t\t} );\n\t}\n\n\tcloseSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: false,\n\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.timeout ) {\n\t\t\tclearTimeout( this.timeout );\n\t\t}\n\t}\n\n\tgetTitle() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst blockType = coreBlocks[ originalName ];\n\t\tconst title = blockType?.metadata.title;\n\t\tconst textdomain = blockType?.metadata.textdomain;\n\n\t\treturn title && textdomain\n\t\t\t? // eslint-disable-next-line @wordpress/i18n-no-variables, @wordpress/i18n-text-domain\n\t\t\t _x( title, I18N_BLOCK_SCHEMA_TITLE, textdomain )\n\t\t\t: originalName;\n\t}\n\n\trenderHelpIcon() {\n\t\tconst infoIconStyle = this.props.getStylesFromColorScheme(\n\t\t\tstyles.infoIcon,\n\t\t\tstyles.infoIconDark\n\t\t);\n\n\t\treturn (\n\t\t\t<TouchableHighlight\n\t\t\t\tonPress={ this.onHelpButtonPressed }\n\t\t\t\tstyle={ styles.helpIconContainer }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t>\n\t\t\t\t<Icon\n\t\t\t\t\tclassName=\"unsupported-icon-help\"\n\t\t\t\t\tlabel={ __( 'Help icon' ) }\n\t\t\t\t\ticon={ help }\n\t\t\t\t\tcolor={ infoIconStyle.color }\n\t\t\t\t/>\n\t\t\t</TouchableHighlight>\n\t\t);\n\t}\n\n\tonHelpButtonPressed() {\n\t\tif ( ! this.props.isSelected ) {\n\t\t\tthis.props.selectBlock();\n\t\t}\n\t\tthis.toggleSheet();\n\t}\n\n\trequestFallback() {\n\t\tif (\n\t\t\tthis.props.canEnableUnsupportedBlockEditor &&\n\t\t\tthis.props.isUnsupportedBlockEditorSupported === false\n\t\t) {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendButtonPressMessage: true } );\n\t\t} else {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendFallbackMessage: true } );\n\t\t}\n\t}\n\n\trenderSheet( blockTitle, blockName ) {\n\t\tconst {\n\t\t\tgetStylesFromColorScheme,\n\t\t\tattributes,\n\t\t\tclientId,\n\t\t\tisUnsupportedBlockEditorSupported,\n\t\t\tcanEnableUnsupportedBlockEditor,\n\t\t\tisEditableInUnsupportedBlockEditor,\n\t\t} = this.props;\n\t\tconst infoTextStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoText,\n\t\t\tstyles.infoTextDark\n\t\t);\n\t\tconst infoTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoTitle,\n\t\t\tstyles.infoTitleDark\n\t\t);\n\t\tconst infoDescriptionStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoDescription,\n\t\t\tstyles.infoDescriptionDark\n\t\t);\n\t\tconst infoSheetIconStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoSheetIcon,\n\t\t\tstyles.infoSheetIconDark\n\t\t);\n\n\t\t/* translators: Missing block alert title. %s: The localized block name */\n\t\tconst titleFormat = __( \"'%s' is not fully-supported\" );\n\t\tconst infoTitle = sprintf( titleFormat, blockTitle );\n\t\tconst missingBlockDetail = applyFilters(\n\t\t\t'native.missing_block_detail',\n\t\t\t__( 'We are working hard to add more blocks with each release.' )\n\t\t);\n\t\tconst missingBlockActionButton = applyFilters(\n\t\t\t'native.missing_block_action_button',\n\t\t\t__( 'Edit using web editor' )\n\t\t);\n\n\t\tconst actionButtonStyle = getStylesFromColorScheme(\n\t\t\tstyles.actionButton,\n\t\t\tstyles.actionButtonDark\n\t\t);\n\n\t\treturn (\n\t\t\t<BottomSheet\n\t\t\t\tisVisible={ this.state.showHelp }\n\t\t\t\thideHeader\n\t\t\t\tonClose={ this.closeSheet }\n\t\t\t\tonModalHide={ () => {\n\t\t\t\t\tif ( this.state.sendFallbackMessage ) {\n\t\t\t\t\t\t// On iOS, onModalHide is called when the controller is still part of the hierarchy.\n\t\t\t\t\t\t// A small delay will ensure that the controller has already been removed.\n\t\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\t\t// for the Classic block, the content is kept in the `content` attribute\n\t\t\t\t\t\t\tconst content =\n\t\t\t\t\t\t\t\tblockName === 'core/freeform'\n\t\t\t\t\t\t\t\t\t? attributes.content\n\t\t\t\t\t\t\t\t\t: attributes.originalContent;\n\t\t\t\t\t\t\trequestUnsupportedBlockFallback(\n\t\t\t\t\t\t\t\tcontent,\n\t\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\t\tblockTitle\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}, 100 );\n\t\t\t\t\t\tthis.setState( { sendFallbackMessage: false } );\n\t\t\t\t\t} else if ( this.state.sendButtonPressMessage ) {\n\t\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\t\tsendActionButtonPressedAction(\n\t\t\t\t\t\t\t\tactionButtons.missingBlockAlertActionButton\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}, 100 );\n\t\t\t\t\t\tthis.setState( { sendButtonPressMessage: false } );\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<View style={ styles.infoContainer }>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ help }\n\t\t\t\t\t\tcolor={ infoSheetIconStyle.color }\n\t\t\t\t\t\tsize={ styles.infoSheetIcon.size }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ [ infoTextStyle, infoTitleStyle ] }>\n\t\t\t\t\t\t{ infoTitle }\n\t\t\t\t\t</Text>\n\t\t\t\t\t{ isEditableInUnsupportedBlockEditor && (\n\t\t\t\t\t\t<Text style={ [ infoTextStyle, infoDescriptionStyle ] }>\n\t\t\t\t\t\t\t{ missingBlockDetail }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t) }\n\t\t\t\t</View>\n\t\t\t\t{ ( isUnsupportedBlockEditorSupported ||\n\t\t\t\t\tcanEnableUnsupportedBlockEditor ) &&\n\t\t\t\t\tisEditableInUnsupportedBlockEditor && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tlabel={ missingBlockActionButton }\n\t\t\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\t\t\tonPress={ this.requestFallback }\n\t\t\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Dismiss' ) }\n\t\t\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\t\t\tonPress={ this.toggleSheet }\n\t\t\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t</BottomSheet>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst { getStylesFromColorScheme, preferredColorScheme } = this.props;\n\t\tconst blockType = coreBlocks[ originalName ];\n\n\t\tconst title = this.getTitle();\n\t\tconst titleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockMessage,\n\t\t\tstyles.unsupportedBlockMessageDark\n\t\t);\n\n\t\tconst subTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockSubtitle,\n\t\t\tstyles.unsupportedBlockSubtitleDark\n\t\t);\n\t\tconst subtitle = (\n\t\t\t<Text style={ subTitleStyle }>{ __( 'Unsupported' ) }</Text>\n\t\t);\n\n\t\tconst icon = blockType\n\t\t\t? normalizeIconObject( blockType.settings.icon )\n\t\t\t: plugins;\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockIcon,\n\t\t\tstyles.unsupportedBlockIconDark\n\t\t);\n\t\tconst iconClassName = 'unsupported-icon' + '-' + preferredColorScheme;\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tdisabled={ ! this.props.isSelected }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t\tonPress={ this.toggleSheet }\n\t\t\t>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ getStylesFromColorScheme(\n\t\t\t\t\t\tstyles.unsupportedBlock,\n\t\t\t\t\t\tstyles.unsupportedBlockDark\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t{ this.renderHelpIcon() }\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName={ iconClassName }\n\t\t\t\t\t\ticon={ icon && icon.src ? icon.src : icon }\n\t\t\t\t\t\tcolor={ iconStyle.color }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ titleStyle }>{ title }</Text>\n\t\t\t\t\t{ subtitle }\n\t\t\t\t\t{ this.renderSheet( title, originalName ) }\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select, { attributes } ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\tisUnsupportedBlockEditorSupported:\n\t\t\t\tgetSettings( 'capabilities' ).unsupportedBlockEditor === true,\n\t\t\tcanEnableUnsupportedBlockEditor:\n\t\t\t\tgetSettings( 'capabilities' )\n\t\t\t\t\t.canEnableUnsupportedBlockEditor === true,\n\t\t\tisEditableInUnsupportedBlockEditor: ! UBE_INCOMPATIBLE_BLOCKS.includes(\n\t\t\t\tattributes.originalName\n\t\t\t),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, ownProps ) => {\n\t\tconst { selectBlock } = dispatch( blockEditorStore );\n\t\treturn {\n\t\t\tselectBlock() {\n\t\t\t\tselectBlock( ownProps.clientId );\n\t\t\t},\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( UnsupportedBlockEdit );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/missing/edit.native.js"],"names":["UBE_INCOMPATIBLE_BLOCKS","I18N_BLOCK_SCHEMA_TITLE","UnsupportedBlockEdit","Component","constructor","props","state","showHelp","toggleSheet","bind","closeSheet","requestFallback","onHelpButtonPressed","setState","componentWillUnmount","timeout","clearTimeout","getTitle","originalName","attributes","blockType","coreBlocks","title","metadata","textdomain","renderHelpIcon","infoIconStyle","getStylesFromColorScheme","styles","infoIcon","infoIconDark","helpIconContainer","help","color","isSelected","selectBlock","canEnableUnsupportedBlockEditor","isUnsupportedBlockEditorSupported","sendButtonPressMessage","sendFallbackMessage","renderSheet","blockTitle","blockName","clientId","isEditableInUnsupportedBlockEditor","infoTextStyle","infoText","infoTextDark","infoTitleStyle","infoTitle","infoTitleDark","infoDescriptionStyle","infoDescription","infoDescriptionDark","infoSheetIconStyle","infoSheetIcon","infoSheetIconDark","titleFormat","missingBlockDetail","missingBlockActionButton","actionButtonStyle","actionButton","actionButtonDark","setTimeout","content","originalContent","actionButtons","missingBlockAlertActionButton","infoContainer","size","render","preferredColorScheme","titleStyle","unsupportedBlockMessage","unsupportedBlockMessageDark","subTitleStyle","unsupportedBlockSubtitle","unsupportedBlockSubtitleDark","subtitle","icon","settings","plugins","iconStyle","unsupportedBlockIcon","unsupportedBlockIconDark","iconClassName","unsupportedBlock","unsupportedBlockDark","src","select","getSettings","blockEditorStore","unsupportedBlockEditor","includes","dispatch","ownProps","withPreferredColorScheme"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tView,\n\tText,\n\tTouchableWithoutFeedback,\n\tTouchableHighlight,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\trequestUnsupportedBlockFallback,\n\tsendActionButtonPressedAction,\n\tactionButtons,\n} from '@wordpress/react-native-bridge';\nimport { BottomSheet, Icon, TextControl } from '@wordpress/components';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { coreBlocks } from '@wordpress/block-library';\nimport { normalizeIconObject } from '@wordpress/blocks';\nimport { Component } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { help, plugins } from '@wordpress/icons';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { applyFilters } from '@wordpress/hooks';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\n// Blocks that can't be edited through the Unsupported block editor identified by their name.\nconst UBE_INCOMPATIBLE_BLOCKS = [ 'core/block' ];\nconst I18N_BLOCK_SCHEMA_TITLE = 'block title';\n\nexport class UnsupportedBlockEdit extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\t\tthis.state = { showHelp: false };\n\t\tthis.toggleSheet = this.toggleSheet.bind( this );\n\t\tthis.closeSheet = this.closeSheet.bind( this );\n\t\tthis.requestFallback = this.requestFallback.bind( this );\n\t\tthis.onHelpButtonPressed = this.onHelpButtonPressed.bind( this );\n\t}\n\n\ttoggleSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: ! this.state.showHelp,\n\t\t} );\n\t}\n\n\tcloseSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: false,\n\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.timeout ) {\n\t\t\tclearTimeout( this.timeout );\n\t\t}\n\t}\n\n\tgetTitle() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst blockType = coreBlocks[ originalName ];\n\t\tconst title = blockType?.metadata.title;\n\t\tconst textdomain = blockType?.metadata.textdomain;\n\n\t\treturn title && textdomain\n\t\t\t? // eslint-disable-next-line @wordpress/i18n-no-variables, @wordpress/i18n-text-domain\n\t\t\t _x( title, I18N_BLOCK_SCHEMA_TITLE, textdomain )\n\t\t\t: originalName;\n\t}\n\n\trenderHelpIcon() {\n\t\tconst infoIconStyle = this.props.getStylesFromColorScheme(\n\t\t\tstyles.infoIcon,\n\t\t\tstyles.infoIconDark\n\t\t);\n\n\t\treturn (\n\t\t\t<TouchableHighlight\n\t\t\t\tonPress={ this.onHelpButtonPressed }\n\t\t\t\tstyle={ styles.helpIconContainer }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t>\n\t\t\t\t<Icon\n\t\t\t\t\tclassName=\"unsupported-icon-help\"\n\t\t\t\t\tlabel={ __( 'Help icon' ) }\n\t\t\t\t\ticon={ help }\n\t\t\t\t\tcolor={ infoIconStyle.color }\n\t\t\t\t/>\n\t\t\t</TouchableHighlight>\n\t\t);\n\t}\n\n\tonHelpButtonPressed() {\n\t\tif ( ! this.props.isSelected ) {\n\t\t\tthis.props.selectBlock();\n\t\t}\n\t\tthis.toggleSheet();\n\t}\n\n\trequestFallback() {\n\t\tif (\n\t\t\tthis.props.canEnableUnsupportedBlockEditor &&\n\t\t\tthis.props.isUnsupportedBlockEditorSupported === false\n\t\t) {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendButtonPressMessage: true } );\n\t\t} else {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendFallbackMessage: true } );\n\t\t}\n\t}\n\n\trenderSheet( blockTitle, blockName ) {\n\t\tconst {\n\t\t\tgetStylesFromColorScheme,\n\t\t\tattributes,\n\t\t\tclientId,\n\t\t\tisUnsupportedBlockEditorSupported,\n\t\t\tcanEnableUnsupportedBlockEditor,\n\t\t\tisEditableInUnsupportedBlockEditor,\n\t\t} = this.props;\n\t\tconst infoTextStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoText,\n\t\t\tstyles.infoTextDark\n\t\t);\n\t\tconst infoTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoTitle,\n\t\t\tstyles.infoTitleDark\n\t\t);\n\t\tconst infoDescriptionStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoDescription,\n\t\t\tstyles.infoDescriptionDark\n\t\t);\n\t\tconst infoSheetIconStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoSheetIcon,\n\t\t\tstyles.infoSheetIconDark\n\t\t);\n\n\t\t/* translators: Missing block alert title. %s: The localized block name */\n\t\tconst titleFormat = __( \"'%s' is not fully-supported\" );\n\t\tconst infoTitle = sprintf( titleFormat, blockTitle );\n\t\tconst missingBlockDetail = applyFilters(\n\t\t\t'native.missing_block_detail',\n\t\t\t__( 'We are working hard to add more blocks with each release.' )\n\t\t);\n\t\tconst missingBlockActionButton = applyFilters(\n\t\t\t'native.missing_block_action_button',\n\t\t\t__( 'Edit using web editor' )\n\t\t);\n\n\t\tconst actionButtonStyle = getStylesFromColorScheme(\n\t\t\tstyles.actionButton,\n\t\t\tstyles.actionButtonDark\n\t\t);\n\n\t\treturn (\n\t\t\t<BottomSheet\n\t\t\t\tisVisible={ this.state.showHelp }\n\t\t\t\thideHeader\n\t\t\t\tonClose={ this.closeSheet }\n\t\t\t\tonModalHide={ () => {\n\t\t\t\t\tif ( this.state.sendFallbackMessage ) {\n\t\t\t\t\t\t// On iOS, onModalHide is called when the controller is still part of the hierarchy.\n\t\t\t\t\t\t// A small delay will ensure that the controller has already been removed.\n\t\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\t\t// For the Classic block, the content is kept in the `content` attribute.\n\t\t\t\t\t\t\tconst content =\n\t\t\t\t\t\t\t\tblockName === 'core/freeform'\n\t\t\t\t\t\t\t\t\t? attributes.content\n\t\t\t\t\t\t\t\t\t: attributes.originalContent;\n\t\t\t\t\t\t\trequestUnsupportedBlockFallback(\n\t\t\t\t\t\t\t\tcontent,\n\t\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\t\tblockTitle\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}, 100 );\n\t\t\t\t\t\tthis.setState( { sendFallbackMessage: false } );\n\t\t\t\t\t} else if ( this.state.sendButtonPressMessage ) {\n\t\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\t\tsendActionButtonPressedAction(\n\t\t\t\t\t\t\t\tactionButtons.missingBlockAlertActionButton\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}, 100 );\n\t\t\t\t\t\tthis.setState( { sendButtonPressMessage: false } );\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<View style={ styles.infoContainer }>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ help }\n\t\t\t\t\t\tcolor={ infoSheetIconStyle.color }\n\t\t\t\t\t\tsize={ styles.infoSheetIcon.size }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ [ infoTextStyle, infoTitleStyle ] }>\n\t\t\t\t\t\t{ infoTitle }\n\t\t\t\t\t</Text>\n\t\t\t\t\t{ isEditableInUnsupportedBlockEditor && (\n\t\t\t\t\t\t<Text style={ [ infoTextStyle, infoDescriptionStyle ] }>\n\t\t\t\t\t\t\t{ missingBlockDetail }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t) }\n\t\t\t\t</View>\n\t\t\t\t{ ( isUnsupportedBlockEditorSupported ||\n\t\t\t\t\tcanEnableUnsupportedBlockEditor ) &&\n\t\t\t\t\tisEditableInUnsupportedBlockEditor && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tlabel={ missingBlockActionButton }\n\t\t\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\t\t\tonPress={ this.requestFallback }\n\t\t\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Dismiss' ) }\n\t\t\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\t\t\tonPress={ this.toggleSheet }\n\t\t\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t</BottomSheet>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst { getStylesFromColorScheme, preferredColorScheme } = this.props;\n\t\tconst blockType = coreBlocks[ originalName ];\n\n\t\tconst title = this.getTitle();\n\t\tconst titleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockMessage,\n\t\t\tstyles.unsupportedBlockMessageDark\n\t\t);\n\n\t\tconst subTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockSubtitle,\n\t\t\tstyles.unsupportedBlockSubtitleDark\n\t\t);\n\t\tconst subtitle = (\n\t\t\t<Text style={ subTitleStyle }>{ __( 'Unsupported' ) }</Text>\n\t\t);\n\n\t\tconst icon = blockType\n\t\t\t? normalizeIconObject( blockType.settings.icon )\n\t\t\t: plugins;\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockIcon,\n\t\t\tstyles.unsupportedBlockIconDark\n\t\t);\n\t\tconst iconClassName = 'unsupported-icon' + '-' + preferredColorScheme;\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tdisabled={ ! this.props.isSelected }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t\tonPress={ this.toggleSheet }\n\t\t\t>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ getStylesFromColorScheme(\n\t\t\t\t\t\tstyles.unsupportedBlock,\n\t\t\t\t\t\tstyles.unsupportedBlockDark\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t{ this.renderHelpIcon() }\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName={ iconClassName }\n\t\t\t\t\t\ticon={ icon && icon.src ? icon.src : icon }\n\t\t\t\t\t\tcolor={ iconStyle.color }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ titleStyle }>{ title }</Text>\n\t\t\t\t\t{ subtitle }\n\t\t\t\t\t{ this.renderSheet( title, originalName ) }\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select, { attributes } ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\tisUnsupportedBlockEditorSupported:\n\t\t\t\tgetSettings( 'capabilities' ).unsupportedBlockEditor === true,\n\t\t\tcanEnableUnsupportedBlockEditor:\n\t\t\t\tgetSettings( 'capabilities' )\n\t\t\t\t\t.canEnableUnsupportedBlockEditor === true,\n\t\t\tisEditableInUnsupportedBlockEditor: ! UBE_INCOMPATIBLE_BLOCKS.includes(\n\t\t\t\tattributes.originalName\n\t\t\t),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, ownProps ) => {\n\t\tconst { selectBlock } = dispatch( blockEditorStore );\n\t\treturn {\n\t\t\tselectBlock() {\n\t\t\t\tselectBlock( ownProps.clientId );\n\t\t\t},\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( UnsupportedBlockEdit );\n"]}
@@ -25,11 +25,11 @@ const transforms = {
25
25
  customText,
26
26
  noTeaser
27
27
  } = node.dataset;
28
- const attrs = {}; // Don't copy unless defined and not an empty string
28
+ const attrs = {}; // Don't copy unless defined and not an empty string.
29
29
 
30
30
  if (customText) {
31
31
  attrs.customText = customText;
32
- } // Special handling for boolean
32
+ } // Special handling for boolean.
33
33
 
34
34
 
35
35
  if (noTeaser === '') {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/more/transforms.js"],"names":["transforms","from","type","schema","attributes","isMatch","node","dataset","block","transform","customText","noTeaser","attrs"],"mappings":";;;;;;;AAGA;;AAHA;AACA;AACA;AAGA,MAAMA,UAAU,GAAG;AAClBC,EAAAA,IAAI,EAAE,CACL;AACCC,IAAAA,IAAI,EAAE,KADP;AAECC,IAAAA,MAAM,EAAE;AACP,kBAAY;AAAEC,QAAAA,UAAU,EAAE,CAAE,YAAF;AAAd;AADL,KAFT;AAKCC,IAAAA,OAAO,EAAIC,IAAF,IACRA,IAAI,CAACC,OAAL,IAAgBD,IAAI,CAACC,OAAL,CAAaC,KAAb,KAAuB,WANzC;;AAOCC,IAAAA,SAAS,CAAEH,IAAF,EAAS;AACjB,YAAM;AAAEI,QAAAA,UAAF;AAAcC,QAAAA;AAAd,UAA2BL,IAAI,CAACC,OAAtC;AACA,YAAMK,KAAK,GAAG,EAAd,CAFiB,CAGjB;;AACA,UAAKF,UAAL,EAAkB;AACjBE,QAAAA,KAAK,CAACF,UAAN,GAAmBA,UAAnB;AACA,OANgB,CAOjB;;;AACA,UAAKC,QAAQ,KAAK,EAAlB,EAAuB;AACtBC,QAAAA,KAAK,CAACD,QAAN,GAAiB,IAAjB;AACA;;AACD,aAAO,yBAAa,WAAb,EAA0BC,KAA1B,CAAP;AACA;;AAnBF,GADK;AADY,CAAnB;eA0BeZ,U","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tschema: {\n\t\t\t\t'wp-block': { attributes: [ 'data-block' ] },\n\t\t\t},\n\t\t\tisMatch: ( node ) =>\n\t\t\t\tnode.dataset && node.dataset.block === 'core/more',\n\t\t\ttransform( node ) {\n\t\t\t\tconst { customText, noTeaser } = node.dataset;\n\t\t\t\tconst attrs = {};\n\t\t\t\t// Don't copy unless defined and not an empty string\n\t\t\t\tif ( customText ) {\n\t\t\t\t\tattrs.customText = customText;\n\t\t\t\t}\n\t\t\t\t// Special handling for boolean\n\t\t\t\tif ( noTeaser === '' ) {\n\t\t\t\t\tattrs.noTeaser = true;\n\t\t\t\t}\n\t\t\t\treturn createBlock( 'core/more', attrs );\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/more/transforms.js"],"names":["transforms","from","type","schema","attributes","isMatch","node","dataset","block","transform","customText","noTeaser","attrs"],"mappings":";;;;;;;AAGA;;AAHA;AACA;AACA;AAGA,MAAMA,UAAU,GAAG;AAClBC,EAAAA,IAAI,EAAE,CACL;AACCC,IAAAA,IAAI,EAAE,KADP;AAECC,IAAAA,MAAM,EAAE;AACP,kBAAY;AAAEC,QAAAA,UAAU,EAAE,CAAE,YAAF;AAAd;AADL,KAFT;AAKCC,IAAAA,OAAO,EAAIC,IAAF,IACRA,IAAI,CAACC,OAAL,IAAgBD,IAAI,CAACC,OAAL,CAAaC,KAAb,KAAuB,WANzC;;AAOCC,IAAAA,SAAS,CAAEH,IAAF,EAAS;AACjB,YAAM;AAAEI,QAAAA,UAAF;AAAcC,QAAAA;AAAd,UAA2BL,IAAI,CAACC,OAAtC;AACA,YAAMK,KAAK,GAAG,EAAd,CAFiB,CAGjB;;AACA,UAAKF,UAAL,EAAkB;AACjBE,QAAAA,KAAK,CAACF,UAAN,GAAmBA,UAAnB;AACA,OANgB,CAOjB;;;AACA,UAAKC,QAAQ,KAAK,EAAlB,EAAuB;AACtBC,QAAAA,KAAK,CAACD,QAAN,GAAiB,IAAjB;AACA;;AACD,aAAO,yBAAa,WAAb,EAA0BC,KAA1B,CAAP;AACA;;AAnBF,GADK;AADY,CAAnB;eA0BeZ,U","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tschema: {\n\t\t\t\t'wp-block': { attributes: [ 'data-block' ] },\n\t\t\t},\n\t\t\tisMatch: ( node ) =>\n\t\t\t\tnode.dataset && node.dataset.block === 'core/more',\n\t\t\ttransform( node ) {\n\t\t\t\tconst { customText, noTeaser } = node.dataset;\n\t\t\t\tconst attrs = {};\n\t\t\t\t// Don't copy unless defined and not an empty string.\n\t\t\t\tif ( customText ) {\n\t\t\t\t\tattrs.customText = customText;\n\t\t\t\t}\n\t\t\t\t// Special handling for boolean.\n\t\t\t\tif ( noTeaser === '' ) {\n\t\t\t\t\tattrs.noTeaser = true;\n\t\t\t\t}\n\t\t\t\treturn createBlock( 'core/more', attrs );\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
@@ -23,6 +23,8 @@ var _components = require("@wordpress/components");
23
23
 
24
24
  var _i18n = require("@wordpress/i18n");
25
25
 
26
+ var _a11y = require("@wordpress/a11y");
27
+
26
28
  var _useListViewModal = _interopRequireDefault(require("./use-list-view-modal"));
27
29
 
28
30
  var _useNavigationMenu = _interopRequireDefault(require("../use-navigation-menu"));
@@ -31,8 +33,6 @@ var _useNavigationEntities = _interopRequireDefault(require("../use-navigation-e
31
33
 
32
34
  var _placeholder = _interopRequireDefault(require("./placeholder"));
33
35
 
34
- var _placeholderPreview = _interopRequireDefault(require("./placeholder/placeholder-preview"));
35
-
36
36
  var _responsiveWrapper = _interopRequireDefault(require("./responsive-wrapper"));
37
37
 
38
38
  var _innerBlocks = _interopRequireDefault(require("./inner-blocks"));
@@ -49,6 +49,14 @@ var _useNavigationNotice = _interopRequireDefault(require("./use-navigation-noti
49
49
 
50
50
  var _overlayMenuIcon = _interopRequireDefault(require("./overlay-menu-icon"));
51
51
 
52
+ var _useConvertClassicMenuToBlockMenu = _interopRequireWildcard(require("./use-convert-classic-menu-to-block-menu"));
53
+
54
+ var _useCreateNavigationMenu = _interopRequireWildcard(require("./use-create-navigation-menu"));
55
+
56
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
57
+
58
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
59
+
52
60
  /**
53
61
  * External dependencies
54
62
  */
@@ -143,6 +151,33 @@ function Navigation(_ref) {
143
151
  // the Select Menu dropdown.
144
152
 
145
153
  (0, _useNavigationEntities.default)();
154
+ const [showNavigationMenuCreateNotice, hideNavigationMenuCreateNotice] = (0, _useNavigationNotice.default)({
155
+ name: 'block-library/core/navigation/create'
156
+ });
157
+ const {
158
+ create: createNavigationMenu,
159
+ status: createNavigationMenuStatus,
160
+ error: createNavigationMenuError,
161
+ value: createNavigationMenuPost
162
+ } = (0, _useCreateNavigationMenu.default)(clientId);
163
+ const isCreatingNavigationMenu = createNavigationMenuStatus === _useCreateNavigationMenu.CREATE_NAVIGATION_MENU_PENDING;
164
+ (0, _element.useEffect)(() => {
165
+ hideNavigationMenuCreateNotice();
166
+
167
+ if (createNavigationMenuStatus === _useCreateNavigationMenu.CREATE_NAVIGATION_MENU_PENDING) {
168
+ (0, _a11y.speak)((0, _i18n.__)(`Creating Navigation Menu.`));
169
+ }
170
+
171
+ if (createNavigationMenuStatus === _useCreateNavigationMenu.CREATE_NAVIGATION_MENU_SUCCESS) {
172
+ setRef(createNavigationMenuPost.id);
173
+ selectBlock(clientId);
174
+ showNavigationMenuCreateNotice((0, _i18n.__)(`Navigation Menu successfully created.`));
175
+ }
176
+
177
+ if (createNavigationMenuStatus === _useCreateNavigationMenu.CREATE_NAVIGATION_MENU_ERROR) {
178
+ showNavigationMenuCreateNotice((0, _i18n.__)('Failed to create Navigation Menu.'));
179
+ }
180
+ }, [createNavigationMenu, createNavigationMenuStatus, createNavigationMenuError, createNavigationMenuPost]);
146
181
  const {
147
182
  hasUncontrolledInnerBlocks,
148
183
  uncontrolledInnerBlocks,
@@ -160,7 +195,7 @@ function Navigation(_ref) {
160
195
 
161
196
  const _uncontrolledInnerBlocks = getBlock(clientId).innerBlocks;
162
197
 
163
- const _hasUncontrolledInnerBlocks = _uncontrolledInnerBlocks === null || _uncontrolledInnerBlocks === void 0 ? void 0 : _uncontrolledInnerBlocks.length;
198
+ const _hasUncontrolledInnerBlocks = !!(_uncontrolledInnerBlocks !== null && _uncontrolledInnerBlocks !== void 0 && _uncontrolledInnerBlocks.length);
164
199
 
165
200
  const _controlledInnerBlocks = _hasUncontrolledInnerBlocks ? EMPTY_ARRAY : getBlocks(clientId);
166
201
 
@@ -179,14 +214,11 @@ function Navigation(_ref) {
179
214
  } = (0, _data.useDispatch)(_blockEditor.store);
180
215
  const [hasSavedUnsavedInnerBlocks, setHasSavedUnsavedInnerBlocks] = (0, _element.useState)(false);
181
216
  const isWithinUnassignedArea = !!navigationArea && !ref;
182
- const [isPlaceholderShown, setIsPlaceholderShown] = (0, _element.useState)(!hasUncontrolledInnerBlocks || isWithinUnassignedArea);
183
217
  const [isResponsiveMenuOpen, setResponsiveMenuVisibility] = (0, _element.useState)(false);
184
218
  const [overlayMenuPreview, setOverlayMenuPreview] = (0, _element.useState)(false);
185
219
  const {
186
220
  isNavigationMenuResolved,
187
221
  isNavigationMenuMissing,
188
- canSwitchNavigationMenu,
189
- hasResolvedNavigationMenus,
190
222
  navigationMenus,
191
223
  navigationMenu,
192
224
  canUserUpdateNavigationMenu,
@@ -194,6 +226,7 @@ function Navigation(_ref) {
194
226
  canUserDeleteNavigationMenu,
195
227
  hasResolvedCanUserDeleteNavigationMenu,
196
228
  canUserCreateNavigationMenu,
229
+ isResolvingCanUserCreateNavigationMenu,
197
230
  hasResolvedCanUserCreateNavigationMenu
198
231
  } = (0, _useNavigationMenu.default)(ref);
199
232
  const navRef = (0, _element.useRef)();
@@ -202,7 +235,30 @@ function Navigation(_ref) {
202
235
  listViewToolbarButton,
203
236
  listViewModal
204
237
  } = (0, _useListViewModal.default)(clientId);
205
- const isEntityAvailable = !isNavigationMenuMissing && isNavigationMenuResolved;
238
+ const {
239
+ convert,
240
+ status: classicMenuConversionStatus,
241
+ error: classicMenuConversionError,
242
+ value: classicMenuConversionResult
243
+ } = (0, _useConvertClassicMenuToBlockMenu.default)(clientId);
244
+ const isConvertingClassicMenu = classicMenuConversionStatus === _useConvertClassicMenuToBlockMenu.CLASSIC_MENU_CONVERSION_PENDING; // The standard HTML5 tag for the block wrapper.
245
+
246
+ const TagName = 'nav'; // "placeholder" shown if:
247
+ // - there is no ref attribute pointing to a Navigation Post.
248
+ // - there is no classic menu conversion process in progress.
249
+ // - there is no menu creation process in progress.
250
+ // - there are no uncontrolled blocks.
251
+ // - (legacy) there is a Navigation Area without a ref attribute pointing to a Navigation Post.
252
+
253
+ const isPlaceholder = !ref && !isCreatingNavigationMenu && !isConvertingClassicMenu && (!hasUncontrolledInnerBlocks || isWithinUnassignedArea);
254
+ const isEntityAvailable = !isNavigationMenuMissing && isNavigationMenuResolved; // "loading" state:
255
+ // - there is a menu creation process in progress.
256
+ // - there is a classic menu conversion process in progress.
257
+ // OR
258
+ // - there is a ref attribute pointing to a Navigation Post
259
+ // - the Navigation Post isn't available (hasn't resolved) yet.
260
+
261
+ const isLoading = isCreatingNavigationMenu || isConvertingClassicMenu || !!(ref && !isEntityAvailable && !isConvertingClassicMenu);
206
262
  const blockProps = (0, _blockEditor.useBlockProps)({
207
263
  ref: navRef,
208
264
  className: (0, _classnames.default)(className, {
@@ -238,7 +294,32 @@ function Navigation(_ref) {
238
294
  const [detectedBackgroundColor, setDetectedBackgroundColor] = (0, _element.useState)();
239
295
  const [detectedColor, setDetectedColor] = (0, _element.useState)();
240
296
  const [detectedOverlayBackgroundColor, setDetectedOverlayBackgroundColor] = (0, _element.useState)();
241
- const [detectedOverlayColor, setDetectedOverlayColor] = (0, _element.useState)(); // Spacer block needs orientation from context. This is a patch until
297
+ const [detectedOverlayColor, setDetectedOverlayColor] = (0, _element.useState)();
298
+ const [showClassicMenuConversionErrorNotice, hideClassicMenuConversionErrorNotice] = (0, _useNavigationNotice.default)({
299
+ name: 'block-library/core/navigation/classic-menu-conversion/error'
300
+ });
301
+
302
+ function handleUpdateMenu(menuId) {
303
+ setRef(menuId);
304
+ selectBlock(clientId);
305
+ }
306
+
307
+ (0, _element.useEffect)(() => {
308
+ if (classicMenuConversionStatus === _useConvertClassicMenuToBlockMenu.CLASSIC_MENU_CONVERSION_PENDING) {
309
+ (0, _a11y.speak)((0, _i18n.__)('Classic menu importing.'));
310
+ }
311
+
312
+ if (classicMenuConversionStatus === _useConvertClassicMenuToBlockMenu.CLASSIC_MENU_CONVERSION_SUCCESS && classicMenuConversionResult) {
313
+ handleUpdateMenu(classicMenuConversionResult === null || classicMenuConversionResult === void 0 ? void 0 : classicMenuConversionResult.id);
314
+ hideClassicMenuConversionErrorNotice();
315
+ (0, _a11y.speak)((0, _i18n.__)('Classic menu imported successfully.'));
316
+ }
317
+
318
+ if (classicMenuConversionStatus === _useConvertClassicMenuToBlockMenu.CLASSIC_MENU_CONVERSION_ERROR) {
319
+ showClassicMenuConversionErrorNotice(classicMenuConversionError);
320
+ (0, _a11y.speak)((0, _i18n.__)('Classic menu import failed.'));
321
+ }
322
+ }, [classicMenuConversionStatus, classicMenuConversionResult, classicMenuConversionError]); // Spacer block needs orientation from context. This is a patch until
242
323
  // https://github.com/WordPress/gutenberg/issues/36197 is addressed.
243
324
 
244
325
  (0, _element.useEffect)(() => {
@@ -263,11 +344,7 @@ function Navigation(_ref) {
263
344
  if (subMenuElement) {
264
345
  detectColors(subMenuElement, setDetectedOverlayColor, setDetectedOverlayBackgroundColor);
265
346
  }
266
- }); // Hide the placeholder if an navigation menu entity has loaded.
267
-
268
- (0, _element.useEffect)(() => {
269
- setIsPlaceholderShown(!isEntityAvailable);
270
- }, [isEntityAvailable]);
347
+ });
271
348
  const [showCantEditNotice, hideCantEditNotice] = (0, _useNavigationNotice.default)({
272
349
  name: 'block-library/core/navigation/permissions/update',
273
350
  message: (0, _i18n.__)('You do not have permission to edit this Menu. Any changes made will not be saved.')
@@ -292,7 +369,20 @@ function Navigation(_ref) {
292
369
  }
293
370
  }
294
371
  }, [isSelected, isInnerBlockSelected, canUserUpdateNavigationMenu, hasResolvedCanUserUpdateNavigationMenu, canUserCreateNavigationMenu, hasResolvedCanUserCreateNavigationMenu, ref]);
295
- const startWithEmptyMenu = (0, _element.useCallback)(() => {
372
+ const handleSelectNavigation = (0, _element.useCallback)(navPostOrClassicMenu => {
373
+ if (!navPostOrClassicMenu) {
374
+ return;
375
+ }
376
+
377
+ const isClassicMenu = navPostOrClassicMenu.hasOwnProperty('auto_add');
378
+
379
+ if (isClassicMenu) {
380
+ convert(navPostOrClassicMenu.id, navPostOrClassicMenu.name);
381
+ } else {
382
+ handleUpdateMenu(navPostOrClassicMenu.id);
383
+ }
384
+ }, [convert, handleUpdateMenu]);
385
+ const resetToEmptyBlock = (0, _element.useCallback)(() => {
296
386
  registry.batch(() => {
297
387
  if (navigationArea) {
298
388
  setAreaMenu(0);
@@ -305,8 +395,6 @@ function Navigation(_ref) {
305
395
  if (!ref) {
306
396
  replaceInnerBlocks(clientId, []);
307
397
  }
308
-
309
- setIsPlaceholderShown(true);
310
398
  });
311
399
  }, [clientId, ref]); // If the block has inner blocks, but no menu id, this was an older
312
400
  // navigation block added before the block used a wp_navigation entity.
@@ -317,7 +405,7 @@ function Navigation(_ref) {
317
405
  const hasUnsavedBlocks = hasUncontrolledInnerBlocks && !isEntityAvailable;
318
406
 
319
407
  if (hasUnsavedBlocks) {
320
- return (0, _element.createElement)("nav", blockProps, (0, _element.createElement)(_responsiveWrapper.default, {
408
+ return (0, _element.createElement)(TagName, blockProps, (0, _element.createElement)(_responsiveWrapper.default, {
321
409
  id: clientId,
322
410
  onToggle: setResponsiveMenuVisibility,
323
411
  isOpen: isResponsiveMenuOpen,
@@ -345,7 +433,7 @@ function Navigation(_ref) {
345
433
 
346
434
  if (ref && isNavigationMenuMissing) {
347
435
  return (0, _element.createElement)("div", blockProps, (0, _element.createElement)(_blockEditor.Warning, null, (0, _i18n.__)('Navigation menu has been deleted or is unavailable. '), (0, _element.createElement)(_components.Button, {
348
- onClick: startWithEmptyMenu,
436
+ onClick: resetToEmptyBlock,
349
437
  variant: "link"
350
438
  }, (0, _i18n.__)('Create a new menu?'))));
351
439
  }
@@ -359,33 +447,34 @@ function Navigation(_ref) {
359
447
  const overlayMenuPreviewClasses = (0, _classnames.default)('wp-block-navigation__overlay-menu-preview', {
360
448
  open: overlayMenuPreview
361
449
  });
450
+
451
+ if (isPlaceholder) {
452
+ return (0, _element.createElement)(TagName, blockProps, (0, _element.createElement)(PlaceholderComponent, {
453
+ isSelected: isSelected,
454
+ currentMenuId: ref,
455
+ clientId: clientId,
456
+ canUserCreateNavigationMenu: canUserCreateNavigationMenu,
457
+ isResolvingCanUserCreateNavigationMenu: isResolvingCanUserCreateNavigationMenu,
458
+ onFinish: handleSelectNavigation,
459
+ onCreateEmpty: () => createNavigationMenu('', [])
460
+ }));
461
+ }
462
+
362
463
  return (0, _element.createElement)(_coreData.EntityProvider, {
363
464
  kind: "postType",
364
465
  type: "wp_navigation",
365
466
  id: ref
366
- }, (0, _element.createElement)(RecursionProvider, null, (0, _element.createElement)(_blockEditor.BlockControls, null, !isDraftNavigationMenu && isEntityAvailable && (0, _element.createElement)(_components.ToolbarGroup, null, (0, _element.createElement)(_components.ToolbarDropdownMenu, {
367
- label: (0, _i18n.__)('Select Menu'),
368
- text: (0, _i18n.__)('Select Menu'),
369
- icon: null
370
- }, _ref2 => {
371
- let {
372
- onClose
373
- } = _ref2;
374
- return (0, _element.createElement)(_navigationMenuSelector.default, {
375
- clientId: clientId,
376
- onSelect: _ref3 => {
377
- let {
378
- id
379
- } = _ref3;
380
- setRef(id);
381
- onClose();
382
- },
383
- onCreateNew: startWithEmptyMenu
384
- /* translators: %s: The name of a menu. */
385
- ,
386
- actionLabel: (0, _i18n.__)("Switch to '%s'"),
387
- showManageActions: true
388
- });
467
+ }, (0, _element.createElement)(RecursionProvider, null, (0, _element.createElement)(_blockEditor.BlockControls, null, !isDraftNavigationMenu && isEntityAvailable && (0, _element.createElement)(_components.ToolbarGroup, {
468
+ className: "wp-block-navigation__toolbar-menu-selector"
469
+ }, (0, _element.createElement)(_navigationMenuSelector.default, {
470
+ currentMenuId: ref,
471
+ clientId: clientId,
472
+ onSelect: handleSelectNavigation,
473
+ onCreateNew: resetToEmptyBlock
474
+ /* translators: %s: The name of a menu. */
475
+ ,
476
+ actionLabel: (0, _i18n.__)("Switch to '%s'"),
477
+ showManageActions: true
389
478
  })), (0, _element.createElement)(_components.ToolbarGroup, null, listViewToolbarButton)), listViewModal, (0, _element.createElement)(_blockEditor.InspectorControls, null, hasSubmenuIndicatorSetting && (0, _element.createElement)(_components.PanelBody, {
390
479
  title: (0, _i18n.__)('Display')
391
480
  }, isResponsive && (0, _element.createElement)(_components.Button, {
@@ -470,24 +559,10 @@ function Navigation(_ref) {
470
559
  })))), isEntityAvailable && (0, _element.createElement)(_blockEditor.InspectorControls, {
471
560
  __experimentalGroup: "advanced"
472
561
  }, hasResolvedCanUserUpdateNavigationMenu && canUserUpdateNavigationMenu && (0, _element.createElement)(_navigationMenuNameControl.default, null), hasResolvedCanUserDeleteNavigationMenu && canUserDeleteNavigationMenu && (0, _element.createElement)(_navigationMenuDeleteControl.default, {
473
- onDelete: startWithEmptyMenu
474
- })), (0, _element.createElement)("nav", blockProps, isPlaceholderShown && (0, _element.createElement)(PlaceholderComponent, {
475
- onFinish: post => {
476
- setIsPlaceholderShown(false);
477
-
478
- if (post) {
479
- setRef(post.id);
480
- }
481
-
482
- selectBlock(clientId);
483
- },
484
- canSwitchNavigationMenu: canSwitchNavigationMenu,
485
- hasResolvedNavigationMenus: hasResolvedNavigationMenus,
486
- clientId: clientId,
487
- canUserCreateNavigationMenu: canUserCreateNavigationMenu
488
- }), !hasResolvedCanUserCreateNavigationMenu || !isEntityAvailable && !isPlaceholderShown && (0, _element.createElement)(_placeholderPreview.default, {
489
- isLoading: true
490
- }), !isPlaceholderShown && (0, _element.createElement)(_responsiveWrapper.default, {
562
+ onDelete: resetToEmptyBlock
563
+ })), isLoading && (0, _element.createElement)(TagName, blockProps, (0, _element.createElement)(_components.Spinner, {
564
+ className: "wp-block-navigation__loading-indicator"
565
+ })), !isLoading && (0, _element.createElement)(TagName, blockProps, (0, _element.createElement)(_responsiveWrapper.default, {
491
566
  id: clientId,
492
567
  onToggle: setResponsiveMenuVisibility,
493
568
  label: (0, _i18n.__)('Menu'),
@@ -498,7 +573,6 @@ function Navigation(_ref) {
498
573
  classNames: overlayClassnames,
499
574
  styles: overlayStyles
500
575
  }, isEntityAvailable && (0, _element.createElement)(_innerBlocks.default, {
501
- isVisible: !isPlaceholderShown,
502
576
  clientId: clientId,
503
577
  hasCustomPlaceholder: !!CustomPlaceholder,
504
578
  orientation: orientation