@wordpress/block-library 8.1.0 → 8.3.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 (851) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/LICENSE.md +1 -1
  3. package/babel-plugin.js +1 -1
  4. package/build/archives/edit.js +1 -0
  5. package/build/archives/edit.js.map +1 -1
  6. package/build/archives/index.js +1 -0
  7. package/build/archives/index.js.map +1 -1
  8. package/build/audio/edit.js +2 -0
  9. package/build/audio/edit.js.map +1 -1
  10. package/build/avatar/index.js +1 -0
  11. package/build/avatar/index.js.map +1 -1
  12. package/build/block/edit.js +1 -0
  13. package/build/block/edit.js.map +1 -1
  14. package/build/button/edit.js +2 -1
  15. package/build/button/edit.js.map +1 -1
  16. package/build/button/index.js +1 -0
  17. package/build/button/index.js.map +1 -1
  18. package/build/buttons/edit.js +0 -2
  19. package/build/buttons/edit.js.map +1 -1
  20. package/build/calendar/index.js +1 -0
  21. package/build/calendar/index.js.map +1 -1
  22. package/build/categories/edit.js +3 -3
  23. package/build/categories/edit.js.map +1 -1
  24. package/build/categories/index.js +1 -0
  25. package/build/categories/index.js.map +1 -1
  26. package/build/column/edit.native.js +2 -1
  27. package/build/column/edit.native.js.map +1 -1
  28. package/build/columns/deprecated.js +1 -1
  29. package/build/columns/deprecated.js.map +1 -1
  30. package/build/comment-author-avatar/index.js +1 -0
  31. package/build/comment-author-avatar/index.js.map +1 -1
  32. package/build/comment-author-name/index.js +1 -0
  33. package/build/comment-author-name/index.js.map +1 -1
  34. package/build/comment-content/index.js +1 -0
  35. package/build/comment-content/index.js.map +1 -1
  36. package/build/comment-date/index.js +1 -0
  37. package/build/comment-date/index.js.map +1 -1
  38. package/build/comment-edit-link/index.js +1 -0
  39. package/build/comment-edit-link/index.js.map +1 -1
  40. package/build/comment-reply-link/index.js +1 -0
  41. package/build/comment-reply-link/index.js.map +1 -1
  42. package/build/comment-template/index.js +1 -0
  43. package/build/comment-template/index.js.map +1 -1
  44. package/build/comments/edit/comments-inspector-controls.js +10 -4
  45. package/build/comments/edit/comments-inspector-controls.js.map +1 -1
  46. package/build/comments/index.js +2 -1
  47. package/build/comments/index.js.map +1 -1
  48. package/build/comments-pagination/comments-pagination-arrow-controls.js +1 -0
  49. package/build/comments-pagination/comments-pagination-arrow-controls.js.map +1 -1
  50. package/build/comments-pagination/edit.js +3 -14
  51. package/build/comments-pagination/edit.js.map +1 -1
  52. package/build/comments-pagination/index.js +1 -0
  53. package/build/comments-pagination/index.js.map +1 -1
  54. package/build/comments-pagination-next/index.js +1 -0
  55. package/build/comments-pagination-next/index.js.map +1 -1
  56. package/build/comments-pagination-numbers/index.js +1 -0
  57. package/build/comments-pagination-numbers/index.js.map +1 -1
  58. package/build/comments-pagination-previous/index.js +1 -0
  59. package/build/comments-pagination-previous/index.js.map +1 -1
  60. package/build/cover/deprecated.js +153 -30
  61. package/build/cover/deprecated.js.map +1 -1
  62. package/build/cover/edit/index.js +4 -3
  63. package/build/cover/edit/index.js.map +1 -1
  64. package/build/cover/edit/inspector-controls.js +45 -4
  65. package/build/cover/edit/inspector-controls.js.map +1 -1
  66. package/build/cover/edit.native.js +0 -4
  67. package/build/cover/edit.native.js.map +1 -1
  68. package/build/cover/index.js +4 -0
  69. package/build/cover/index.js.map +1 -1
  70. package/build/cover/save.js +3 -2
  71. package/build/cover/save.js.map +1 -1
  72. package/build/embed/embed-preview.js +1 -0
  73. package/build/embed/embed-preview.js.map +1 -1
  74. package/build/embed/variations.js +1 -1
  75. package/build/embed/variations.js.map +1 -1
  76. package/build/experiments.js +19 -0
  77. package/build/experiments.js.map +1 -0
  78. package/build/file/inspector.js +1 -0
  79. package/build/file/inspector.js.map +1 -1
  80. package/build/gallery/deprecated.js +6 -4
  81. package/build/gallery/deprecated.js.map +1 -1
  82. package/build/gallery/edit.js +50 -7
  83. package/build/gallery/edit.js.map +1 -1
  84. package/build/gallery/gallery.js +9 -34
  85. package/build/gallery/gallery.js.map +1 -1
  86. package/build/gallery/v1/edit.js +7 -5
  87. package/build/gallery/v1/edit.js.map +1 -1
  88. package/build/group/deprecated.js +1 -1
  89. package/build/group/deprecated.js.map +1 -1
  90. package/build/group/edit.js +2 -2
  91. package/build/group/edit.js.map +1 -1
  92. package/build/group/index.js +3 -0
  93. package/build/group/index.js.map +1 -1
  94. package/build/heading/index.js +1 -7
  95. package/build/heading/index.js.map +1 -1
  96. package/build/home-link/index.js +1 -0
  97. package/build/home-link/index.js.map +1 -1
  98. package/build/image/edit.native.js +2 -2
  99. package/build/image/edit.native.js.map +1 -1
  100. package/build/image/image.js +18 -25
  101. package/build/image/image.js.map +1 -1
  102. package/build/latest-comments/index.js +1 -0
  103. package/build/latest-comments/index.js.map +1 -1
  104. package/build/latest-posts/deprecated.js +1 -0
  105. package/build/latest-posts/deprecated.js.map +1 -1
  106. package/build/latest-posts/edit.js +11 -8
  107. package/build/latest-posts/edit.js.map +1 -1
  108. package/build/latest-posts/index.js +1 -0
  109. package/build/latest-posts/index.js.map +1 -1
  110. package/build/list/ordered-list-settings.js +1 -0
  111. package/build/list/ordered-list-settings.js.map +1 -1
  112. package/build/loginout/index.js +1 -0
  113. package/build/loginout/index.js.map +1 -1
  114. package/build/media-text/edit.js +2 -4
  115. package/build/media-text/edit.js.map +1 -1
  116. package/build/missing/edit.native.js +4 -4
  117. package/build/missing/edit.native.js.map +1 -1
  118. package/build/navigation/edit/deleted-navigation-warning.js +31 -0
  119. package/build/navigation/edit/deleted-navigation-warning.js.map +1 -0
  120. package/build/navigation/edit/index.js +25 -14
  121. package/build/navigation/edit/index.js.map +1 -1
  122. package/build/navigation/edit/inner-blocks.js +0 -5
  123. package/build/navigation/edit/inner-blocks.js.map +1 -1
  124. package/build/navigation/edit/manage-menus-button.js +9 -2
  125. package/build/navigation/edit/manage-menus-button.js.map +1 -1
  126. package/build/navigation/edit/menu-inspector-controls.js +54 -35
  127. package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
  128. package/build/navigation/edit/navigation-menu-delete-control.js +0 -1
  129. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  130. package/build/navigation/edit/navigation-menu-name-control.js +1 -0
  131. package/build/navigation/edit/navigation-menu-name-control.js.map +1 -1
  132. package/build/navigation/edit/navigation-menu-selector.js +15 -54
  133. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  134. package/build/navigation/edit/overlay-menu-preview.js +1 -0
  135. package/build/navigation/edit/overlay-menu-preview.js.map +1 -1
  136. package/build/navigation/edit/placeholder/index.js +1 -6
  137. package/build/navigation/edit/placeholder/index.js.map +1 -1
  138. package/build/navigation/index.js +5 -0
  139. package/build/navigation/index.js.map +1 -1
  140. package/build/navigation/leaf-more-menu.js +95 -0
  141. package/build/navigation/leaf-more-menu.js.map +1 -0
  142. package/build/navigation/menu-items-to-blocks.js +0 -2
  143. package/build/navigation/menu-items-to-blocks.js.map +1 -1
  144. package/build/navigation-link/edit.js +23 -11
  145. package/build/navigation-link/edit.js.map +1 -1
  146. package/build/navigation-link/update-attributes.js +3 -3
  147. package/build/navigation-link/update-attributes.js.map +1 -1
  148. package/build/navigation-submenu/edit.js +4 -0
  149. package/build/navigation-submenu/edit.js.map +1 -1
  150. package/build/navigation-submenu/index.js +13 -3
  151. package/build/navigation-submenu/index.js.map +1 -1
  152. package/build/page-list/edit.js +153 -132
  153. package/build/page-list/edit.js.map +1 -1
  154. package/build/page-list/index.js +2 -11
  155. package/build/page-list/index.js.map +1 -1
  156. package/build/page-list/{convert-to-navigation-links.js → use-convert-to-navigation-links.js} +41 -9
  157. package/build/page-list/use-convert-to-navigation-links.js.map +1 -0
  158. package/build/page-list-item/edit.js +4 -2
  159. package/build/page-list-item/edit.js.map +1 -1
  160. package/build/page-list-item/index.js +3 -2
  161. package/build/page-list-item/index.js.map +1 -1
  162. package/build/paragraph/edit.js +1 -1
  163. package/build/paragraph/edit.js.map +1 -1
  164. package/build/paragraph/index.js +1 -7
  165. package/build/paragraph/index.js.map +1 -1
  166. package/build/post-author/edit.js +2 -0
  167. package/build/post-author/edit.js.map +1 -1
  168. package/build/post-author/index.js +1 -0
  169. package/build/post-author/index.js.map +1 -1
  170. package/build/post-author-biography/index.js +1 -0
  171. package/build/post-author-biography/index.js.map +1 -1
  172. package/build/post-author-name/index.js +1 -1
  173. package/build/post-comment/edit.js +1 -0
  174. package/build/post-comment/edit.js.map +1 -1
  175. package/build/post-comments-count/index.js +1 -0
  176. package/build/post-comments-count/index.js.map +1 -1
  177. package/build/post-comments-form/index.js +1 -0
  178. package/build/post-comments-form/index.js.map +1 -1
  179. package/build/post-comments-link/index.js +1 -0
  180. package/build/post-comments-link/index.js.map +1 -1
  181. package/build/post-content/edit.js +1 -20
  182. package/build/post-content/edit.js.map +1 -1
  183. package/build/post-content/index.js +1 -0
  184. package/build/post-content/index.js.map +1 -1
  185. package/build/post-date/index.js +1 -0
  186. package/build/post-date/index.js.map +1 -1
  187. package/build/post-excerpt/edit.js +6 -1
  188. package/build/post-excerpt/edit.js.map +1 -1
  189. package/build/post-excerpt/index.js +1 -0
  190. package/build/post-excerpt/index.js.map +1 -1
  191. package/build/post-featured-image/dimension-controls.js +3 -1
  192. package/build/post-featured-image/dimension-controls.js.map +1 -1
  193. package/build/post-featured-image/edit.js +39 -22
  194. package/build/post-featured-image/edit.js.map +1 -1
  195. package/build/post-featured-image/index.js +1 -0
  196. package/build/post-featured-image/index.js.map +1 -1
  197. package/build/post-featured-image/overlay.js +1 -1
  198. package/build/post-featured-image/overlay.js.map +1 -1
  199. package/build/post-navigation-link/edit.js +1 -0
  200. package/build/post-navigation-link/edit.js.map +1 -1
  201. package/build/post-navigation-link/index.js +1 -0
  202. package/build/post-navigation-link/index.js.map +1 -1
  203. package/build/post-template/edit.js +6 -4
  204. package/build/post-template/edit.js.map +1 -1
  205. package/build/post-template/index.js +1 -0
  206. package/build/post-template/index.js.map +1 -1
  207. package/build/post-terms/edit.js +5 -4
  208. package/build/post-terms/edit.js.map +1 -1
  209. package/build/post-terms/index.js +1 -0
  210. package/build/post-terms/index.js.map +1 -1
  211. package/build/post-title/edit.js +1 -0
  212. package/build/post-title/edit.js.map +1 -1
  213. package/build/post-title/index.js +1 -0
  214. package/build/post-title/index.js.map +1 -1
  215. package/build/query/deprecated.js +90 -1
  216. package/build/query/deprecated.js.map +1 -1
  217. package/build/query/edit/index.js +2 -50
  218. package/build/query/edit/index.js.map +1 -1
  219. package/build/query/edit/inspector-controls/index.js +2 -0
  220. package/build/query/edit/inspector-controls/index.js.map +1 -1
  221. package/build/query/edit/inspector-controls/order-control.js +1 -0
  222. package/build/query/edit/inspector-controls/order-control.js.map +1 -1
  223. package/build/query/edit/inspector-controls/sticky-control.js +1 -0
  224. package/build/query/edit/inspector-controls/sticky-control.js.map +1 -1
  225. package/build/query/edit/pattern-selection-modal.js +88 -0
  226. package/build/query/edit/pattern-selection-modal.js.map +1 -0
  227. package/build/query/edit/query-content.js +11 -25
  228. package/build/query/edit/query-content.js.map +1 -1
  229. package/build/query/edit/query-placeholder.js +2 -2
  230. package/build/query/edit/query-placeholder.js.map +1 -1
  231. package/build/query/edit/query-toolbar.js +6 -11
  232. package/build/query/edit/query-toolbar.js.map +1 -1
  233. package/build/query/index.js +1 -0
  234. package/build/query/index.js.map +1 -1
  235. package/build/query/utils.js +25 -3
  236. package/build/query/utils.js.map +1 -1
  237. package/build/query-no-results/index.js +1 -0
  238. package/build/query-no-results/index.js.map +1 -1
  239. package/build/query-pagination/edit.js +3 -14
  240. package/build/query-pagination/edit.js.map +1 -1
  241. package/build/query-pagination/index.js +1 -0
  242. package/build/query-pagination/index.js.map +1 -1
  243. package/build/query-pagination/query-pagination-arrow-controls.js +1 -0
  244. package/build/query-pagination/query-pagination-arrow-controls.js.map +1 -1
  245. package/build/query-pagination-next/index.js +1 -0
  246. package/build/query-pagination-next/index.js.map +1 -1
  247. package/build/query-pagination-numbers/index.js +1 -0
  248. package/build/query-pagination-numbers/index.js.map +1 -1
  249. package/build/query-pagination-previous/index.js +1 -0
  250. package/build/query-pagination-previous/index.js.map +1 -1
  251. package/build/query-title/index.js +1 -0
  252. package/build/query-title/index.js.map +1 -1
  253. package/build/read-more/index.js +1 -0
  254. package/build/read-more/index.js.map +1 -1
  255. package/build/rss/edit.js +5 -2
  256. package/build/rss/edit.js.map +1 -1
  257. package/build/rss/index.js +1 -0
  258. package/build/rss/index.js.map +1 -1
  259. package/build/search/index.js +1 -0
  260. package/build/search/index.js.map +1 -1
  261. package/build/site-logo/edit.js +9 -13
  262. package/build/site-logo/edit.js.map +1 -1
  263. package/build/site-logo/index.js +1 -0
  264. package/build/site-logo/index.js.map +1 -1
  265. package/build/site-tagline/index.js +1 -0
  266. package/build/site-tagline/index.js.map +1 -1
  267. package/build/site-title/index.js +1 -0
  268. package/build/site-title/index.js.map +1 -1
  269. package/build/social-link/edit.js +5 -2
  270. package/build/social-link/edit.js.map +1 -1
  271. package/build/social-link/index.js +1 -0
  272. package/build/social-link/index.js.map +1 -1
  273. package/build/social-links/edit.js +3 -14
  274. package/build/social-links/edit.js.map +1 -1
  275. package/build/table/edit.js +10 -5
  276. package/build/table/edit.js.map +1 -1
  277. package/build/table/index.js +15 -0
  278. package/build/table/index.js.map +1 -1
  279. package/build/table/save.js +4 -2
  280. package/build/table/save.js.map +1 -1
  281. package/build/table/state.js +1 -1
  282. package/build/table/state.js.map +1 -1
  283. package/build/table/transforms.js +47 -3
  284. package/build/table/transforms.js.map +1 -1
  285. package/build/table/utils.js +26 -0
  286. package/build/table/utils.js.map +1 -0
  287. package/build/tag-cloud/edit.js +4 -9
  288. package/build/tag-cloud/edit.js.map +1 -1
  289. package/build/tag-cloud/index.js +1 -0
  290. package/build/tag-cloud/index.js.map +1 -1
  291. package/build/template-part/edit/advanced-controls.js +14 -2
  292. package/build/template-part/edit/advanced-controls.js.map +1 -1
  293. package/build/template-part/edit/index.js +0 -1
  294. package/build/template-part/edit/index.js.map +1 -1
  295. package/build/template-part/edit/selection-modal.js +3 -3
  296. package/build/template-part/edit/selection-modal.js.map +1 -1
  297. package/build/template-part/edit/title-modal.js +6 -5
  298. package/build/template-part/edit/title-modal.js.map +1 -1
  299. package/build/template-part/edit/utils/hooks.js +2 -2
  300. package/build/template-part/edit/utils/hooks.js.map +1 -1
  301. package/build/template-part/index.js +1 -0
  302. package/build/template-part/index.js.map +1 -1
  303. package/build/term-description/index.js +1 -0
  304. package/build/term-description/index.js.map +1 -1
  305. package/build/utils/init-block.js +1 -1
  306. package/build/utils/init-block.js.map +1 -1
  307. package/build/utils/init-block.native.js +1 -1
  308. package/build/utils/init-block.native.js.map +1 -1
  309. package/build/{template-part/edit/utils/search.js → utils/search-patterns.js} +3 -1
  310. package/build/utils/search-patterns.js.map +1 -0
  311. package/build/video/edit-common-settings.js +6 -5
  312. package/build/video/edit-common-settings.js.map +1 -1
  313. package/build/video/edit.js +1 -0
  314. package/build/video/edit.js.map +1 -1
  315. package/build/video/tracks-editor.js +18 -11
  316. package/build/video/tracks-editor.js.map +1 -1
  317. package/build-module/archives/edit.js +1 -0
  318. package/build-module/archives/edit.js.map +1 -1
  319. package/build-module/archives/index.js +1 -0
  320. package/build-module/archives/index.js.map +1 -1
  321. package/build-module/audio/edit.js +2 -0
  322. package/build-module/audio/edit.js.map +1 -1
  323. package/build-module/avatar/index.js +1 -0
  324. package/build-module/avatar/index.js.map +1 -1
  325. package/build-module/block/edit.js +1 -0
  326. package/build-module/block/edit.js.map +1 -1
  327. package/build-module/button/edit.js +2 -1
  328. package/build-module/button/edit.js.map +1 -1
  329. package/build-module/button/index.js +1 -0
  330. package/build-module/button/index.js.map +1 -1
  331. package/build-module/buttons/edit.js +0 -2
  332. package/build-module/buttons/edit.js.map +1 -1
  333. package/build-module/calendar/index.js +1 -0
  334. package/build-module/calendar/index.js.map +1 -1
  335. package/build-module/categories/edit.js +2 -2
  336. package/build-module/categories/edit.js.map +1 -1
  337. package/build-module/categories/index.js +1 -0
  338. package/build-module/categories/index.js.map +1 -1
  339. package/build-module/column/edit.native.js +2 -1
  340. package/build-module/column/edit.native.js.map +1 -1
  341. package/build-module/columns/deprecated.js +1 -1
  342. package/build-module/columns/deprecated.js.map +1 -1
  343. package/build-module/comment-author-avatar/index.js +1 -0
  344. package/build-module/comment-author-avatar/index.js.map +1 -1
  345. package/build-module/comment-author-name/index.js +1 -0
  346. package/build-module/comment-author-name/index.js.map +1 -1
  347. package/build-module/comment-content/index.js +1 -0
  348. package/build-module/comment-content/index.js.map +1 -1
  349. package/build-module/comment-date/index.js +1 -0
  350. package/build-module/comment-date/index.js.map +1 -1
  351. package/build-module/comment-edit-link/index.js +1 -0
  352. package/build-module/comment-edit-link/index.js.map +1 -1
  353. package/build-module/comment-reply-link/index.js +1 -0
  354. package/build-module/comment-reply-link/index.js.map +1 -1
  355. package/build-module/comment-template/index.js +1 -0
  356. package/build-module/comment-template/index.js.map +1 -1
  357. package/build-module/comments/edit/comments-inspector-controls.js +10 -4
  358. package/build-module/comments/edit/comments-inspector-controls.js.map +1 -1
  359. package/build-module/comments/index.js +2 -1
  360. package/build-module/comments/index.js.map +1 -1
  361. package/build-module/comments-pagination/comments-pagination-arrow-controls.js +1 -0
  362. package/build-module/comments-pagination/comments-pagination-arrow-controls.js.map +1 -1
  363. package/build-module/comments-pagination/edit.js +3 -14
  364. package/build-module/comments-pagination/edit.js.map +1 -1
  365. package/build-module/comments-pagination/index.js +1 -0
  366. package/build-module/comments-pagination/index.js.map +1 -1
  367. package/build-module/comments-pagination-next/index.js +1 -0
  368. package/build-module/comments-pagination-next/index.js.map +1 -1
  369. package/build-module/comments-pagination-numbers/index.js +1 -0
  370. package/build-module/comments-pagination-numbers/index.js.map +1 -1
  371. package/build-module/comments-pagination-previous/index.js +1 -0
  372. package/build-module/comments-pagination-previous/index.js.map +1 -1
  373. package/build-module/cover/deprecated.js +155 -31
  374. package/build-module/cover/deprecated.js.map +1 -1
  375. package/build-module/cover/edit/index.js +4 -3
  376. package/build-module/cover/edit/index.js.map +1 -1
  377. package/build-module/cover/edit/inspector-controls.js +46 -5
  378. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  379. package/build-module/cover/edit.native.js +0 -4
  380. package/build-module/cover/edit.native.js.map +1 -1
  381. package/build-module/cover/index.js +4 -0
  382. package/build-module/cover/index.js.map +1 -1
  383. package/build-module/cover/save.js +3 -2
  384. package/build-module/cover/save.js.map +1 -1
  385. package/build-module/embed/embed-preview.js +1 -0
  386. package/build-module/embed/embed-preview.js.map +1 -1
  387. package/build-module/embed/variations.js +1 -1
  388. package/build-module/embed/variations.js.map +1 -1
  389. package/build-module/experiments.js +9 -0
  390. package/build-module/experiments.js.map +1 -0
  391. package/build-module/file/inspector.js +1 -0
  392. package/build-module/file/inspector.js.map +1 -1
  393. package/build-module/gallery/deprecated.js +6 -3
  394. package/build-module/gallery/deprecated.js.map +1 -1
  395. package/build-module/gallery/edit.js +52 -10
  396. package/build-module/gallery/edit.js.map +1 -1
  397. package/build-module/gallery/gallery.js +10 -35
  398. package/build-module/gallery/gallery.js.map +1 -1
  399. package/build-module/gallery/v1/edit.js +8 -6
  400. package/build-module/gallery/v1/edit.js.map +1 -1
  401. package/build-module/group/deprecated.js +1 -1
  402. package/build-module/group/deprecated.js.map +1 -1
  403. package/build-module/group/edit.js +2 -2
  404. package/build-module/group/edit.js.map +1 -1
  405. package/build-module/group/index.js +3 -0
  406. package/build-module/group/index.js.map +1 -1
  407. package/build-module/heading/index.js +1 -6
  408. package/build-module/heading/index.js.map +1 -1
  409. package/build-module/home-link/index.js +1 -0
  410. package/build-module/home-link/index.js.map +1 -1
  411. package/build-module/image/edit.native.js +2 -2
  412. package/build-module/image/edit.native.js.map +1 -1
  413. package/build-module/image/image.js +20 -27
  414. package/build-module/image/image.js.map +1 -1
  415. package/build-module/latest-comments/index.js +1 -0
  416. package/build-module/latest-comments/index.js.map +1 -1
  417. package/build-module/latest-posts/deprecated.js +1 -0
  418. package/build-module/latest-posts/deprecated.js.map +1 -1
  419. package/build-module/latest-posts/edit.js +12 -9
  420. package/build-module/latest-posts/edit.js.map +1 -1
  421. package/build-module/latest-posts/index.js +1 -0
  422. package/build-module/latest-posts/index.js.map +1 -1
  423. package/build-module/list/ordered-list-settings.js +1 -0
  424. package/build-module/list/ordered-list-settings.js.map +1 -1
  425. package/build-module/loginout/index.js +1 -0
  426. package/build-module/loginout/index.js.map +1 -1
  427. package/build-module/media-text/edit.js +2 -3
  428. package/build-module/media-text/edit.js.map +1 -1
  429. package/build-module/missing/edit.native.js +4 -4
  430. package/build-module/missing/edit.native.js.map +1 -1
  431. package/build-module/navigation/edit/deleted-navigation-warning.js +21 -0
  432. package/build-module/navigation/edit/deleted-navigation-warning.js.map +1 -0
  433. package/build-module/navigation/edit/index.js +24 -14
  434. package/build-module/navigation/edit/index.js.map +1 -1
  435. package/build-module/navigation/edit/inner-blocks.js +0 -5
  436. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  437. package/build-module/navigation/edit/manage-menus-button.js +10 -3
  438. package/build-module/navigation/edit/manage-menus-button.js.map +1 -1
  439. package/build-module/navigation/edit/menu-inspector-controls.js +53 -38
  440. package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
  441. package/build-module/navigation/edit/navigation-menu-delete-control.js +0 -1
  442. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  443. package/build-module/navigation/edit/navigation-menu-name-control.js +1 -0
  444. package/build-module/navigation/edit/navigation-menu-name-control.js.map +1 -1
  445. package/build-module/navigation/edit/navigation-menu-selector.js +17 -56
  446. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  447. package/build-module/navigation/edit/overlay-menu-preview.js +1 -0
  448. package/build-module/navigation/edit/overlay-menu-preview.js.map +1 -1
  449. package/build-module/navigation/edit/placeholder/index.js +1 -6
  450. package/build-module/navigation/edit/placeholder/index.js.map +1 -1
  451. package/build-module/navigation/index.js +5 -0
  452. package/build-module/navigation/index.js.map +1 -1
  453. package/build-module/navigation/leaf-more-menu.js +76 -0
  454. package/build-module/navigation/leaf-more-menu.js.map +1 -0
  455. package/build-module/navigation/menu-items-to-blocks.js +0 -2
  456. package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
  457. package/build-module/navigation-link/edit.js +22 -10
  458. package/build-module/navigation-link/edit.js.map +1 -1
  459. package/build-module/navigation-link/update-attributes.js +3 -3
  460. package/build-module/navigation-link/update-attributes.js.map +1 -1
  461. package/build-module/navigation-submenu/edit.js +4 -0
  462. package/build-module/navigation-submenu/edit.js.map +1 -1
  463. package/build-module/navigation-submenu/index.js +14 -4
  464. package/build-module/navigation-submenu/index.js.map +1 -1
  465. package/build-module/page-list/edit.js +155 -132
  466. package/build-module/page-list/edit.js.map +1 -1
  467. package/build-module/page-list/index.js +3 -12
  468. package/build-module/page-list/index.js.map +1 -1
  469. package/build-module/page-list/{convert-to-navigation-links.js → use-convert-to-navigation-links.js} +37 -7
  470. package/build-module/page-list/use-convert-to-navigation-links.js.map +1 -0
  471. package/build-module/page-list-item/edit.js +3 -2
  472. package/build-module/page-list-item/edit.js.map +1 -1
  473. package/build-module/page-list-item/index.js +3 -2
  474. package/build-module/page-list-item/index.js.map +1 -1
  475. package/build-module/paragraph/edit.js +1 -1
  476. package/build-module/paragraph/edit.js.map +1 -1
  477. package/build-module/paragraph/index.js +1 -6
  478. package/build-module/paragraph/index.js.map +1 -1
  479. package/build-module/post-author/edit.js +2 -0
  480. package/build-module/post-author/edit.js.map +1 -1
  481. package/build-module/post-author/index.js +1 -0
  482. package/build-module/post-author/index.js.map +1 -1
  483. package/build-module/post-author-biography/index.js +1 -0
  484. package/build-module/post-author-biography/index.js.map +1 -1
  485. package/build-module/post-author-name/index.js +1 -1
  486. package/build-module/post-comment/edit.js +1 -0
  487. package/build-module/post-comment/edit.js.map +1 -1
  488. package/build-module/post-comments-count/index.js +1 -0
  489. package/build-module/post-comments-count/index.js.map +1 -1
  490. package/build-module/post-comments-form/index.js +1 -0
  491. package/build-module/post-comments-form/index.js.map +1 -1
  492. package/build-module/post-comments-link/index.js +1 -0
  493. package/build-module/post-comments-link/index.js.map +1 -1
  494. package/build-module/post-content/edit.js +2 -20
  495. package/build-module/post-content/edit.js.map +1 -1
  496. package/build-module/post-content/index.js +1 -0
  497. package/build-module/post-content/index.js.map +1 -1
  498. package/build-module/post-date/index.js +1 -0
  499. package/build-module/post-date/index.js.map +1 -1
  500. package/build-module/post-excerpt/edit.js +6 -1
  501. package/build-module/post-excerpt/edit.js.map +1 -1
  502. package/build-module/post-excerpt/index.js +1 -0
  503. package/build-module/post-excerpt/index.js.map +1 -1
  504. package/build-module/post-featured-image/dimension-controls.js +3 -1
  505. package/build-module/post-featured-image/dimension-controls.js.map +1 -1
  506. package/build-module/post-featured-image/edit.js +39 -22
  507. package/build-module/post-featured-image/edit.js.map +1 -1
  508. package/build-module/post-featured-image/index.js +1 -0
  509. package/build-module/post-featured-image/index.js.map +1 -1
  510. package/build-module/post-featured-image/overlay.js +1 -1
  511. package/build-module/post-featured-image/overlay.js.map +1 -1
  512. package/build-module/post-navigation-link/edit.js +1 -0
  513. package/build-module/post-navigation-link/edit.js.map +1 -1
  514. package/build-module/post-navigation-link/index.js +1 -0
  515. package/build-module/post-navigation-link/index.js.map +1 -1
  516. package/build-module/post-template/edit.js +6 -4
  517. package/build-module/post-template/edit.js.map +1 -1
  518. package/build-module/post-template/index.js +1 -0
  519. package/build-module/post-template/index.js.map +1 -1
  520. package/build-module/post-terms/edit.js +4 -3
  521. package/build-module/post-terms/edit.js.map +1 -1
  522. package/build-module/post-terms/index.js +1 -0
  523. package/build-module/post-terms/index.js.map +1 -1
  524. package/build-module/post-title/edit.js +1 -0
  525. package/build-module/post-title/edit.js.map +1 -1
  526. package/build-module/post-title/index.js +1 -0
  527. package/build-module/post-title/index.js.map +1 -1
  528. package/build-module/query/deprecated.js +87 -1
  529. package/build-module/query/deprecated.js.map +1 -1
  530. package/build-module/query/edit/index.js +4 -50
  531. package/build-module/query/edit/index.js.map +1 -1
  532. package/build-module/query/edit/inspector-controls/index.js +2 -0
  533. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  534. package/build-module/query/edit/inspector-controls/order-control.js +1 -0
  535. package/build-module/query/edit/inspector-controls/order-control.js.map +1 -1
  536. package/build-module/query/edit/inspector-controls/sticky-control.js +1 -0
  537. package/build-module/query/edit/inspector-controls/sticky-control.js.map +1 -1
  538. package/build-module/query/edit/pattern-selection-modal.js +75 -0
  539. package/build-module/query/edit/pattern-selection-modal.js.map +1 -0
  540. package/build-module/query/edit/query-content.js +12 -26
  541. package/build-module/query/edit/query-content.js.map +1 -1
  542. package/build-module/query/edit/query-placeholder.js +2 -2
  543. package/build-module/query/edit/query-placeholder.js.map +1 -1
  544. package/build-module/query/edit/query-toolbar.js +6 -10
  545. package/build-module/query/edit/query-toolbar.js.map +1 -1
  546. package/build-module/query/index.js +1 -0
  547. package/build-module/query/index.js.map +1 -1
  548. package/build-module/query/utils.js +21 -2
  549. package/build-module/query/utils.js.map +1 -1
  550. package/build-module/query-no-results/index.js +1 -0
  551. package/build-module/query-no-results/index.js.map +1 -1
  552. package/build-module/query-pagination/edit.js +3 -14
  553. package/build-module/query-pagination/edit.js.map +1 -1
  554. package/build-module/query-pagination/index.js +1 -0
  555. package/build-module/query-pagination/index.js.map +1 -1
  556. package/build-module/query-pagination/query-pagination-arrow-controls.js +1 -0
  557. package/build-module/query-pagination/query-pagination-arrow-controls.js.map +1 -1
  558. package/build-module/query-pagination-next/index.js +1 -0
  559. package/build-module/query-pagination-next/index.js.map +1 -1
  560. package/build-module/query-pagination-numbers/index.js +1 -0
  561. package/build-module/query-pagination-numbers/index.js.map +1 -1
  562. package/build-module/query-pagination-previous/index.js +1 -0
  563. package/build-module/query-pagination-previous/index.js.map +1 -1
  564. package/build-module/query-title/index.js +1 -0
  565. package/build-module/query-title/index.js.map +1 -1
  566. package/build-module/read-more/index.js +1 -0
  567. package/build-module/read-more/index.js.map +1 -1
  568. package/build-module/rss/edit.js +6 -3
  569. package/build-module/rss/edit.js.map +1 -1
  570. package/build-module/rss/index.js +1 -0
  571. package/build-module/rss/index.js.map +1 -1
  572. package/build-module/search/index.js +1 -0
  573. package/build-module/search/index.js.map +1 -1
  574. package/build-module/site-logo/edit.js +10 -14
  575. package/build-module/site-logo/edit.js.map +1 -1
  576. package/build-module/site-logo/index.js +1 -0
  577. package/build-module/site-logo/index.js.map +1 -1
  578. package/build-module/site-tagline/index.js +1 -0
  579. package/build-module/site-tagline/index.js.map +1 -1
  580. package/build-module/site-title/index.js +1 -0
  581. package/build-module/site-title/index.js.map +1 -1
  582. package/build-module/social-link/edit.js +5 -2
  583. package/build-module/social-link/edit.js.map +1 -1
  584. package/build-module/social-link/index.js +1 -0
  585. package/build-module/social-link/index.js.map +1 -1
  586. package/build-module/social-links/edit.js +3 -14
  587. package/build-module/social-links/edit.js.map +1 -1
  588. package/build-module/table/edit.js +10 -5
  589. package/build-module/table/edit.js.map +1 -1
  590. package/build-module/table/index.js +15 -0
  591. package/build-module/table/index.js.map +1 -1
  592. package/build-module/table/save.js +4 -2
  593. package/build-module/table/save.js.map +1 -1
  594. package/build-module/table/state.js +1 -1
  595. package/build-module/table/state.js.map +1 -1
  596. package/build-module/table/transforms.js +46 -3
  597. package/build-module/table/transforms.js.map +1 -1
  598. package/build-module/table/utils.js +19 -0
  599. package/build-module/table/utils.js.map +1 -0
  600. package/build-module/tag-cloud/edit.js +5 -9
  601. package/build-module/tag-cloud/edit.js.map +1 -1
  602. package/build-module/tag-cloud/index.js +1 -0
  603. package/build-module/tag-cloud/index.js.map +1 -1
  604. package/build-module/template-part/edit/advanced-controls.js +14 -2
  605. package/build-module/template-part/edit/advanced-controls.js.map +1 -1
  606. package/build-module/template-part/edit/index.js +0 -1
  607. package/build-module/template-part/edit/index.js.map +1 -1
  608. package/build-module/template-part/edit/selection-modal.js +1 -1
  609. package/build-module/template-part/edit/selection-modal.js.map +1 -1
  610. package/build-module/template-part/edit/title-modal.js +7 -6
  611. package/build-module/template-part/edit/title-modal.js.map +1 -1
  612. package/build-module/template-part/edit/utils/hooks.js +2 -2
  613. package/build-module/template-part/edit/utils/hooks.js.map +1 -1
  614. package/build-module/template-part/index.js +1 -0
  615. package/build-module/template-part/index.js.map +1 -1
  616. package/build-module/term-description/index.js +1 -0
  617. package/build-module/term-description/index.js.map +1 -1
  618. package/build-module/utils/init-block.js +1 -1
  619. package/build-module/utils/init-block.js.map +1 -1
  620. package/build-module/utils/init-block.native.js +1 -1
  621. package/build-module/utils/init-block.native.js.map +1 -1
  622. package/build-module/{template-part/edit/utils/search.js → utils/search-patterns.js} +3 -5
  623. package/build-module/utils/search-patterns.js.map +1 -0
  624. package/build-module/video/edit-common-settings.js +6 -5
  625. package/build-module/video/edit-common-settings.js.map +1 -1
  626. package/build-module/video/edit.js +1 -0
  627. package/build-module/video/edit.js.map +1 -1
  628. package/build-module/video/tracks-editor.js +19 -12
  629. package/build-module/video/tracks-editor.js.map +1 -1
  630. package/build-style/editor-rtl.css +14 -67
  631. package/build-style/editor.css +14 -67
  632. package/build-style/query/editor-rtl.css +11 -14
  633. package/build-style/query/editor.css +11 -14
  634. package/build-style/rss/editor-rtl.css +3 -16
  635. package/build-style/rss/editor.css +3 -16
  636. package/build-style/table/editor-rtl.css +0 -3
  637. package/build-style/table/editor.css +0 -3
  638. package/build-style/video/editor-rtl.css +0 -34
  639. package/build-style/video/editor.css +0 -34
  640. package/package.json +30 -29
  641. package/src/archives/block.json +1 -0
  642. package/src/archives/edit.js +1 -0
  643. package/src/audio/edit.js +2 -0
  644. package/src/avatar/block.json +1 -0
  645. package/src/block/edit.js +1 -0
  646. package/src/button/block.json +1 -0
  647. package/src/button/edit.js +2 -1
  648. package/src/buttons/edit.js +2 -2
  649. package/src/calendar/block.json +1 -0
  650. package/src/calendar/index.php +3 -1
  651. package/src/categories/block.json +1 -0
  652. package/src/categories/edit.js +2 -2
  653. package/src/column/edit.native.js +6 -1
  654. package/src/columns/deprecated.js +1 -1
  655. package/src/comment-author-avatar/block.json +1 -0
  656. package/src/comment-author-name/block.json +1 -0
  657. package/src/comment-author-name/index.php +6 -3
  658. package/src/comment-content/block.json +1 -0
  659. package/src/comment-content/index.php +6 -3
  660. package/src/comment-date/block.json +1 -0
  661. package/src/comment-date/index.php +1 -1
  662. package/src/comment-edit-link/block.json +1 -0
  663. package/src/comment-edit-link/index.php +6 -3
  664. package/src/comment-reply-link/block.json +1 -0
  665. package/src/comment-reply-link/index.php +6 -3
  666. package/src/comment-template/block.json +1 -0
  667. package/src/comments/block.json +2 -1
  668. package/src/comments/edit/comments-inspector-controls.js +13 -3
  669. package/src/comments-pagination/block.json +1 -0
  670. package/src/comments-pagination/comments-pagination-arrow-controls.js +1 -0
  671. package/src/comments-pagination/edit.js +1 -13
  672. package/src/comments-pagination/index.php +4 -1
  673. package/src/comments-pagination-next/block.json +1 -0
  674. package/src/comments-pagination-numbers/block.json +1 -0
  675. package/src/comments-pagination-previous/block.json +1 -0
  676. package/src/cover/block.json +4 -0
  677. package/src/cover/deprecated.js +173 -6
  678. package/src/cover/edit/index.js +5 -4
  679. package/src/cover/edit/inspector-controls.js +45 -2
  680. package/src/cover/edit.native.js +0 -3
  681. package/src/cover/save.js +3 -2
  682. package/src/embed/embed-preview.js +1 -0
  683. package/src/embed/variations.js +1 -1
  684. package/src/experiments.js +10 -0
  685. package/src/file/inspector.js +1 -0
  686. package/src/gallery/deprecated.js +2 -3
  687. package/src/gallery/edit.js +68 -5
  688. package/src/gallery/gallery.js +27 -43
  689. package/src/gallery/v1/edit.js +10 -9
  690. package/src/group/block.json +3 -0
  691. package/src/group/deprecated.js +3 -1
  692. package/src/group/edit.js +2 -2
  693. package/src/heading/index.js +1 -6
  694. package/src/home-link/block.json +1 -0
  695. package/src/image/edit.native.js +2 -3
  696. package/src/image/image.js +43 -58
  697. package/src/latest-comments/block.json +1 -0
  698. package/src/latest-posts/block.json +1 -0
  699. package/src/latest-posts/edit.js +6 -7
  700. package/src/latest-posts/index.php +9 -10
  701. package/src/list/ordered-list-settings.js +1 -0
  702. package/src/loginout/block.json +1 -0
  703. package/src/media-text/edit.js +3 -7
  704. package/src/missing/edit.native.js +3 -4
  705. package/src/missing/test/edit.native.js +2 -2
  706. package/src/navigation/block.json +2 -0
  707. package/src/navigation/edit/deleted-navigation-warning.js +19 -0
  708. package/src/navigation/edit/index.js +25 -24
  709. package/src/navigation/edit/inner-blocks.js +0 -6
  710. package/src/navigation/edit/manage-menus-button.js +24 -13
  711. package/src/navigation/edit/menu-inspector-controls.js +71 -76
  712. package/src/navigation/edit/navigation-menu-delete-control.js +0 -1
  713. package/src/navigation/edit/navigation-menu-name-control.js +1 -0
  714. package/src/navigation/edit/navigation-menu-selector.js +17 -79
  715. package/src/navigation/edit/overlay-menu-preview.js +1 -0
  716. package/src/navigation/edit/placeholder/index.js +0 -6
  717. package/src/navigation/index.js +3 -0
  718. package/src/navigation/index.php +25 -7
  719. package/src/navigation/leaf-more-menu.js +93 -0
  720. package/src/navigation/menu-items-to-blocks.js +0 -2
  721. package/src/navigation-link/edit.js +34 -14
  722. package/src/navigation-link/index.php +28 -33
  723. package/src/navigation-link/update-attributes.js +1 -1
  724. package/src/navigation-submenu/edit.js +4 -0
  725. package/src/navigation-submenu/index.js +8 -2
  726. package/src/navigation-submenu/index.php +0 -32
  727. package/src/page-list/block.json +1 -0
  728. package/src/page-list/edit.js +196 -161
  729. package/src/page-list/index.js +2 -8
  730. package/src/page-list/index.php +5 -0
  731. package/src/page-list/test/convert-to-links-modal.js +1 -1
  732. package/src/page-list/{convert-to-navigation-links.js → use-convert-to-navigation-links.js} +36 -6
  733. package/src/page-list-item/block.json +2 -1
  734. package/src/page-list-item/edit.js +3 -2
  735. package/src/page-list-item/index.js +1 -1
  736. package/src/paragraph/edit.js +1 -1
  737. package/src/paragraph/index.js +1 -6
  738. package/src/post-author/block.json +1 -0
  739. package/src/post-author/edit.js +2 -0
  740. package/src/post-author/index.php +10 -4
  741. package/src/post-author-biography/block.json +1 -0
  742. package/src/post-author-name/block.json +1 -1
  743. package/src/post-author-name/index.php +9 -4
  744. package/src/post-comment/edit.js +1 -0
  745. package/src/post-comments-count/block.json +1 -0
  746. package/src/post-comments-form/block.json +1 -0
  747. package/src/post-comments-form/index.php +6 -4
  748. package/src/post-comments-link/block.json +1 -0
  749. package/src/post-comments-link/index.php +8 -2
  750. package/src/post-content/block.json +1 -0
  751. package/src/post-content/edit.js +2 -13
  752. package/src/post-date/block.json +1 -0
  753. package/src/post-date/index.php +10 -3
  754. package/src/post-excerpt/block.json +1 -0
  755. package/src/post-excerpt/edit.js +22 -12
  756. package/src/post-excerpt/index.php +6 -3
  757. package/src/post-featured-image/block.json +1 -0
  758. package/src/post-featured-image/dimension-controls.js +3 -1
  759. package/src/post-featured-image/edit.js +46 -27
  760. package/src/post-featured-image/index.php +19 -6
  761. package/src/post-featured-image/overlay.js +1 -1
  762. package/src/post-navigation-link/block.json +1 -0
  763. package/src/post-navigation-link/edit.js +1 -0
  764. package/src/post-template/block.json +1 -0
  765. package/src/post-template/edit.js +4 -3
  766. package/src/post-template/index.php +4 -1
  767. package/src/post-terms/block.json +1 -0
  768. package/src/post-terms/edit.js +4 -3
  769. package/src/post-terms/index.php +6 -3
  770. package/src/post-title/block.json +1 -0
  771. package/src/post-title/edit.js +1 -0
  772. package/src/post-title/index.php +10 -4
  773. package/src/preformatted/test/__snapshots__/edit.native.js.snap +0 -2
  774. package/src/query/block.json +1 -0
  775. package/src/query/deprecated.js +77 -1
  776. package/src/query/edit/index.js +4 -60
  777. package/src/query/edit/inspector-controls/index.js +2 -0
  778. package/src/query/edit/inspector-controls/order-control.js +1 -0
  779. package/src/query/edit/inspector-controls/sticky-control.js +1 -0
  780. package/src/query/edit/pattern-selection-modal.js +86 -0
  781. package/src/query/edit/query-content.js +14 -12
  782. package/src/query/edit/query-placeholder.js +4 -8
  783. package/src/query/edit/query-toolbar.js +6 -16
  784. package/src/query/editor.scss +21 -19
  785. package/src/query/utils.js +22 -8
  786. package/src/query-no-results/block.json +1 -0
  787. package/src/query-no-results/index.php +3 -1
  788. package/src/query-pagination/block.json +1 -0
  789. package/src/query-pagination/edit.js +1 -13
  790. package/src/query-pagination/index.php +2 -0
  791. package/src/query-pagination/query-pagination-arrow-controls.js +1 -0
  792. package/src/query-pagination-next/block.json +1 -0
  793. package/src/query-pagination-numbers/block.json +1 -0
  794. package/src/query-pagination-previous/block.json +1 -0
  795. package/src/query-title/block.json +1 -0
  796. package/src/read-more/block.json +1 -0
  797. package/src/rss/block.json +1 -0
  798. package/src/rss/edit.js +16 -12
  799. package/src/rss/editor.scss +4 -15
  800. package/src/rss/index.php +1 -1
  801. package/src/search/block.json +1 -0
  802. package/src/search/index.php +2 -2
  803. package/src/site-logo/block.json +1 -0
  804. package/src/site-logo/edit.js +9 -16
  805. package/src/site-tagline/block.json +1 -0
  806. package/src/site-title/block.json +1 -0
  807. package/src/site-title/index.php +6 -3
  808. package/src/social-link/block.json +1 -0
  809. package/src/social-link/edit.js +5 -2
  810. package/src/social-links/edit.js +1 -14
  811. package/src/table/block.json +15 -0
  812. package/src/table/edit.js +39 -26
  813. package/src/table/editor.scss +0 -6
  814. package/src/table/save.js +9 -1
  815. package/src/table/state.js +1 -1
  816. package/src/table/test/utils.js +20 -0
  817. package/src/table/transforms.js +65 -2
  818. package/src/table/utils.js +18 -0
  819. package/src/tag-cloud/block.json +1 -0
  820. package/src/tag-cloud/edit.js +13 -15
  821. package/src/template-part/block.json +1 -0
  822. package/src/template-part/edit/advanced-controls.js +26 -1
  823. package/src/template-part/edit/index.js +0 -1
  824. package/src/template-part/edit/selection-modal.js +1 -1
  825. package/src/template-part/edit/title-modal.js +12 -15
  826. package/src/template-part/edit/utils/hooks.js +3 -8
  827. package/src/template-part/index.php +19 -7
  828. package/src/term-description/block.json +1 -0
  829. package/src/term-description/index.php +8 -4
  830. package/src/utils/init-block.js +1 -1
  831. package/src/utils/init-block.native.js +1 -1
  832. package/src/{template-part/edit/utils/search.js → utils/search-patterns.js} +2 -2
  833. package/src/utils/test/search-patterns.js +58 -0
  834. package/src/video/edit-common-settings.js +6 -5
  835. package/src/video/edit.js +1 -0
  836. package/src/video/editor.scss +0 -35
  837. package/src/video/tracks-editor.js +65 -50
  838. package/build/page-list/constants.js +0 -15
  839. package/build/page-list/constants.js.map +0 -1
  840. package/build/page-list/convert-to-links-modal.js +0 -83
  841. package/build/page-list/convert-to-links-modal.js.map +0 -1
  842. package/build/page-list/convert-to-navigation-links.js.map +0 -1
  843. package/build/template-part/edit/utils/search.js.map +0 -1
  844. package/build-module/page-list/constants.js +0 -6
  845. package/build-module/page-list/constants.js.map +0 -1
  846. package/build-module/page-list/convert-to-links-modal.js +0 -68
  847. package/build-module/page-list/convert-to-links-modal.js.map +0 -1
  848. package/build-module/page-list/convert-to-navigation-links.js.map +0 -1
  849. package/build-module/template-part/edit/utils/search.js.map +0 -1
  850. package/src/page-list/constants.js +0 -8
  851. package/src/page-list/convert-to-links-modal.js +0 -70
@@ -31,8 +31,6 @@ var _useNavigationEntities = _interopRequireDefault(require("../use-navigation-e
31
31
  * Internal dependencies
32
32
  */
33
33
  function NavigationMenuSelector(_ref) {
34
- var _window;
35
-
36
34
  let {
37
35
  currentMenuId,
38
36
  onSelectNavigationMenu,
@@ -40,16 +38,12 @@ function NavigationMenuSelector(_ref) {
40
38
  onCreateNew,
41
39
  actionLabel,
42
40
  createNavigationMenuIsSuccess,
43
- createNavigationMenuIsError,
44
- toggleProps = {}
41
+ createNavigationMenuIsError
45
42
  } = _ref;
46
- const isOffCanvasNavigationEditorEnabled = ((_window = window) === null || _window === void 0 ? void 0 : _window.__experimentalEnableOffCanvasNavigationEditor) === true;
47
- /* translators: %s: The name of a menu. */
48
43
 
44
+ /* translators: %s: The name of a menu. */
49
45
  const createActionLabel = (0, _i18n.__)("Create from '%s'");
50
46
  const [selectorLabel, setSelectorLabel] = (0, _element.useState)('');
51
- const [isPressed, setIsPressed] = (0, _element.useState)(false);
52
- const [enableOptions, setEnableOptions] = (0, _element.useState)(false);
53
47
  const [isCreatingMenu, setIsCreatingMenu] = (0, _element.useState)(false);
54
48
  actionLabel = actionLabel || createActionLabel;
55
49
  const {
@@ -63,18 +57,20 @@ function NavigationMenuSelector(_ref) {
63
57
  canSwitchNavigationMenu
64
58
  } = (0, _useNavigationMenu.default)();
65
59
  const [currentTitle] = (0, _coreData.useEntityProp)('postType', 'wp_navigation', 'title');
66
- const shouldEnableMenuSelector = (canSwitchNavigationMenu || canUserCreateNavigationMenu) && hasResolvedNavigationMenus && !isCreatingMenu;
67
60
  const menuChoices = (0, _element.useMemo)(() => {
68
- return (navigationMenus === null || navigationMenus === void 0 ? void 0 : navigationMenus.map(_ref2 => {
61
+ return (navigationMenus === null || navigationMenus === void 0 ? void 0 : navigationMenus.map((_ref2, index) => {
69
62
  let {
70
63
  id,
71
64
  title
72
65
  } = _ref2;
73
- const label = (0, _htmlEntities.decodeEntities)(title.rendered);
66
+ const label = (0, _htmlEntities.decodeEntities)(title.rendered) ||
67
+ /* translators: %s is the index of the menu in the list of menus. */
68
+ (0, _i18n.sprintf)((0, _i18n.__)('(no title %s)'), index + 1);
74
69
 
75
70
  if (id === currentMenuId && !isCreatingMenu) {
76
- setSelectorLabel(currentTitle);
77
- setEnableOptions(shouldEnableMenuSelector);
71
+ setSelectorLabel(
72
+ /* translators: %s is the name of a navigation menu. */
73
+ (0, _i18n.sprintf)((0, _i18n.__)('You are currently editing %s'), label));
78
74
  }
79
75
 
80
76
  return {
@@ -95,53 +91,19 @@ function NavigationMenuSelector(_ref) {
95
91
  if (!hasResolvedNavigationMenus) {
96
92
  setSelectorLabel((0, _i18n.__)('Loading …'));
97
93
  } else if (noMenuSelected || noBlockMenus || menuUnavailable) {
98
- setSelectorLabel((0, _i18n.__)('Select menu'));
99
- setEnableOptions(shouldEnableMenuSelector);
94
+ setSelectorLabel((0, _i18n.__)('Choose a Navigation menu'));
100
95
  }
101
96
 
102
97
  if (isCreatingMenu && (createNavigationMenuIsSuccess || createNavigationMenuIsError)) {
103
98
  setIsCreatingMenu(false);
104
99
  }
105
100
  }, [currentMenuId, hasNavigationMenus, hasResolvedNavigationMenus, createNavigationMenuIsSuccess, isNavigationMenuResolved]);
106
- toggleProps = { ...toggleProps,
107
- className: 'wp-block-navigation__navigation-selector-button',
108
- children: (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_components.VisuallyHidden, {
109
- as: "span"
110
- }, (0, _i18n.__)('Select Menu')), (0, _element.createElement)(_icons.Icon, {
111
- icon: isPressed ? _icons.chevronUp : _icons.chevronDown,
112
- className: "wp-block-navigation__navigation-selector-button__icon"
113
- })),
114
- isBusy: !enableOptions,
115
- disabled: !enableOptions,
116
- __experimentalIsFocusable: true,
117
- onClick: () => {
118
- setIsPressed(!isPressed);
119
- }
120
- };
121
-
122
- if (!hasNavigationMenus && !hasClassicMenus && !isOffCanvasNavigationEditorEnabled) {
123
- return (0, _element.createElement)(_components.Button, {
124
- className: "wp-block-navigation__navigation-selector-button--createnew",
125
- isBusy: !enableOptions,
126
- disabled: !enableOptions,
127
- __experimentalIsFocusable: true,
128
- onClick: () => {
129
- onCreateNew();
130
- setIsCreatingMenu(true);
131
- setSelectorLabel((0, _i18n.__)('Loading …'));
132
- setEnableOptions(false);
133
- }
134
- }, (0, _i18n.__)('Create new menu'));
135
- }
136
-
137
- return (0, _element.createElement)(_components.DropdownMenu, {
138
- className: isOffCanvasNavigationEditorEnabled ? '' : 'wp-block-navigation__navigation-selector',
101
+ const NavigationMenuSelectorDropdown = (0, _element.createElement)(_components.DropdownMenu, {
139
102
  label: selectorLabel,
140
- text: isOffCanvasNavigationEditorEnabled ? '' : selectorLabel,
141
- icon: isOffCanvasNavigationEditorEnabled ? _icons.moreVertical : null,
142
- toggleProps: isOffCanvasNavigationEditorEnabled ? {
103
+ icon: _icons.moreVertical,
104
+ toggleProps: {
143
105
  isSmall: true
144
- } : toggleProps
106
+ }
145
107
  }, _ref3 => {
146
108
  let {
147
109
  onClose
@@ -161,7 +123,6 @@ function NavigationMenuSelector(_ref) {
161
123
  return (0, _element.createElement)(_components.MenuItem, {
162
124
  onClick: () => {
163
125
  setSelectorLabel((0, _i18n.__)('Loading …'));
164
- setEnableOptions(false);
165
126
  onSelectClassicMenu(menu);
166
127
  onClose();
167
128
  },
@@ -176,10 +137,10 @@ function NavigationMenuSelector(_ref) {
176
137
  onCreateNew();
177
138
  setIsCreatingMenu(true);
178
139
  setSelectorLabel((0, _i18n.__)('Loading …'));
179
- setEnableOptions(false);
180
140
  }
181
141
  }, (0, _i18n.__)('Create new menu'))));
182
142
  });
143
+ return NavigationMenuSelectorDropdown;
183
144
  }
184
145
 
185
146
  var _default = NavigationMenuSelector;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/navigation-menu-selector.js"],"names":["NavigationMenuSelector","currentMenuId","onSelectNavigationMenu","onSelectClassicMenu","onCreateNew","actionLabel","createNavigationMenuIsSuccess","createNavigationMenuIsError","toggleProps","isOffCanvasNavigationEditorEnabled","window","__experimentalEnableOffCanvasNavigationEditor","createActionLabel","selectorLabel","setSelectorLabel","isPressed","setIsPressed","enableOptions","setEnableOptions","isCreatingMenu","setIsCreatingMenu","menus","classicMenus","navigationMenus","hasResolvedNavigationMenus","isNavigationMenuResolved","canUserCreateNavigationMenu","canSwitchNavigationMenu","currentTitle","shouldEnableMenuSelector","menuChoices","map","id","title","label","rendered","value","ariaLabel","hasNavigationMenus","length","hasClassicMenus","showNavigationMenus","showClassicMenus","noMenuSelected","noBlockMenus","menuUnavailable","className","children","chevronUp","chevronDown","isBusy","disabled","__experimentalIsFocusable","onClick","moreVertical","isSmall","onClose","menuId","menu","name"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tMenuGroup,\n\tMenuItem,\n\tMenuItemsChoice,\n\tDropdownMenu,\n\tButton,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { useEntityProp } from '@wordpress/core-data';\nimport { Icon, chevronUp, chevronDown, moreVertical } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useEffect, useMemo, useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\n\nfunction NavigationMenuSelector( {\n\tcurrentMenuId,\n\tonSelectNavigationMenu,\n\tonSelectClassicMenu,\n\tonCreateNew,\n\tactionLabel,\n\tcreateNavigationMenuIsSuccess,\n\tcreateNavigationMenuIsError,\n\ttoggleProps = {},\n} ) {\n\tconst isOffCanvasNavigationEditorEnabled =\n\t\twindow?.__experimentalEnableOffCanvasNavigationEditor === true;\n\t/* translators: %s: The name of a menu. */\n\tconst createActionLabel = __( \"Create from '%s'\" );\n\n\tconst [ selectorLabel, setSelectorLabel ] = useState( '' );\n\tconst [ isPressed, setIsPressed ] = useState( false );\n\tconst [ enableOptions, setEnableOptions ] = useState( false );\n\tconst [ isCreatingMenu, setIsCreatingMenu ] = useState( false );\n\n\tactionLabel = actionLabel || createActionLabel;\n\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst {\n\t\tnavigationMenus,\n\t\thasResolvedNavigationMenus,\n\t\tisNavigationMenuResolved,\n\t\tcanUserCreateNavigationMenu,\n\t\tcanSwitchNavigationMenu,\n\t} = useNavigationMenu();\n\n\tconst [ currentTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_navigation',\n\t\t'title'\n\t);\n\n\tconst shouldEnableMenuSelector =\n\t\t( canSwitchNavigationMenu || canUserCreateNavigationMenu ) &&\n\t\thasResolvedNavigationMenus &&\n\t\t! isCreatingMenu;\n\n\tconst menuChoices = useMemo( () => {\n\t\treturn (\n\t\t\tnavigationMenus?.map( ( { id, title } ) => {\n\t\t\t\tconst label = decodeEntities( title.rendered );\n\t\t\t\tif ( id === currentMenuId && ! isCreatingMenu ) {\n\t\t\t\t\tsetSelectorLabel( currentTitle );\n\t\t\t\t\tsetEnableOptions( shouldEnableMenuSelector );\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\tvalue: id,\n\t\t\t\t\tlabel,\n\t\t\t\t\tariaLabel: sprintf( actionLabel, label ),\n\t\t\t\t};\n\t\t\t} ) || []\n\t\t);\n\t}, [\n\t\tcurrentTitle,\n\t\tcurrentMenuId,\n\t\tnavigationMenus,\n\t\tcreateNavigationMenuIsSuccess,\n\t\tisNavigationMenuResolved,\n\t\thasResolvedNavigationMenus,\n\t] );\n\n\tconst hasNavigationMenus = !! navigationMenus?.length;\n\tconst hasClassicMenus = !! classicMenus?.length;\n\tconst showNavigationMenus = !! canSwitchNavigationMenu;\n\tconst showClassicMenus = !! canUserCreateNavigationMenu;\n\n\tconst noMenuSelected = hasNavigationMenus && ! currentMenuId;\n\tconst noBlockMenus = ! hasNavigationMenus && hasResolvedNavigationMenus;\n\tconst menuUnavailable =\n\t\thasResolvedNavigationMenus && currentMenuId === null;\n\n\tuseEffect( () => {\n\t\tif ( ! hasResolvedNavigationMenus ) {\n\t\t\tsetSelectorLabel( __( 'Loading …' ) );\n\t\t} else if ( noMenuSelected || noBlockMenus || menuUnavailable ) {\n\t\t\tsetSelectorLabel( __( 'Select menu' ) );\n\t\t\tsetEnableOptions( shouldEnableMenuSelector );\n\t\t}\n\n\t\tif (\n\t\t\tisCreatingMenu &&\n\t\t\t( createNavigationMenuIsSuccess || createNavigationMenuIsError )\n\t\t) {\n\t\t\tsetIsCreatingMenu( false );\n\t\t}\n\t}, [\n\t\tcurrentMenuId,\n\t\thasNavigationMenus,\n\t\thasResolvedNavigationMenus,\n\t\tcreateNavigationMenuIsSuccess,\n\t\tisNavigationMenuResolved,\n\t] );\n\n\ttoggleProps = {\n\t\t...toggleProps,\n\t\tclassName: 'wp-block-navigation__navigation-selector-button',\n\t\tchildren: (\n\t\t\t<>\n\t\t\t\t<VisuallyHidden as=\"span\">\n\t\t\t\t\t{ __( 'Select Menu' ) }\n\t\t\t\t</VisuallyHidden>\n\t\t\t\t<Icon\n\t\t\t\t\ticon={ isPressed ? chevronUp : chevronDown }\n\t\t\t\t\tclassName=\"wp-block-navigation__navigation-selector-button__icon\"\n\t\t\t\t/>\n\t\t\t</>\n\t\t),\n\t\tisBusy: ! enableOptions,\n\t\tdisabled: ! enableOptions,\n\t\t__experimentalIsFocusable: true,\n\t\tonClick: () => {\n\t\t\tsetIsPressed( ! isPressed );\n\t\t},\n\t};\n\n\tif (\n\t\t! hasNavigationMenus &&\n\t\t! hasClassicMenus &&\n\t\t! isOffCanvasNavigationEditorEnabled\n\t) {\n\t\treturn (\n\t\t\t<Button\n\t\t\t\tclassName=\"wp-block-navigation__navigation-selector-button--createnew\"\n\t\t\t\tisBusy={ ! enableOptions }\n\t\t\t\tdisabled={ ! enableOptions }\n\t\t\t\t__experimentalIsFocusable\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tonCreateNew();\n\t\t\t\t\tsetIsCreatingMenu( true );\n\t\t\t\t\tsetSelectorLabel( __( 'Loading …' ) );\n\t\t\t\t\tsetEnableOptions( false );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ __( 'Create new menu' ) }\n\t\t\t</Button>\n\t\t);\n\t}\n\n\treturn (\n\t\t<DropdownMenu\n\t\t\tclassName={\n\t\t\t\tisOffCanvasNavigationEditorEnabled\n\t\t\t\t\t? ''\n\t\t\t\t\t: 'wp-block-navigation__navigation-selector'\n\t\t\t}\n\t\t\tlabel={ selectorLabel }\n\t\t\ttext={ isOffCanvasNavigationEditorEnabled ? '' : selectorLabel }\n\t\t\ticon={ isOffCanvasNavigationEditorEnabled ? moreVertical : null }\n\t\t\ttoggleProps={\n\t\t\t\tisOffCanvasNavigationEditorEnabled\n\t\t\t\t\t? { isSmall: true }\n\t\t\t\t\t: toggleProps\n\t\t\t}\n\t\t>\n\t\t\t{ ( { onClose } ) => (\n\t\t\t\t<>\n\t\t\t\t\t{ showNavigationMenus && hasNavigationMenus && (\n\t\t\t\t\t\t<MenuGroup label={ __( 'Menus' ) }>\n\t\t\t\t\t\t\t<MenuItemsChoice\n\t\t\t\t\t\t\t\tvalue={ currentMenuId }\n\t\t\t\t\t\t\t\tonSelect={ ( menuId ) => {\n\t\t\t\t\t\t\t\t\tonSelectNavigationMenu( menuId );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tchoices={ menuChoices }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showClassicMenus && hasClassicMenus && (\n\t\t\t\t\t\t<MenuGroup label={ __( 'Import Classic Menus' ) }>\n\t\t\t\t\t\t\t{ classicMenus?.map( ( menu ) => {\n\t\t\t\t\t\t\t\tconst label = decodeEntities( menu.name );\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\tsetSelectorLabel(\n\t\t\t\t\t\t\t\t\t\t\t\t__( 'Loading …' )\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\tsetEnableOptions( false );\n\t\t\t\t\t\t\t\t\t\t\tonSelectClassicMenu( menu );\n\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tkey={ menu.id }\n\t\t\t\t\t\t\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t\t\t\t\t\t\tcreateActionLabel,\n\t\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ canUserCreateNavigationMenu && (\n\t\t\t\t\t\t<MenuGroup label={ __( 'Tools' ) }>\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\tonCreateNew();\n\t\t\t\t\t\t\t\t\tsetIsCreatingMenu( true );\n\t\t\t\t\t\t\t\t\tsetSelectorLabel( __( 'Loading …' ) );\n\t\t\t\t\t\t\t\t\tsetEnableOptions( false );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Create new menu' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t</DropdownMenu>\n\t);\n}\n\nexport default NavigationMenuSelector;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/navigation-menu-selector.js"],"names":["NavigationMenuSelector","currentMenuId","onSelectNavigationMenu","onSelectClassicMenu","onCreateNew","actionLabel","createNavigationMenuIsSuccess","createNavigationMenuIsError","createActionLabel","selectorLabel","setSelectorLabel","isCreatingMenu","setIsCreatingMenu","menus","classicMenus","navigationMenus","hasResolvedNavigationMenus","isNavigationMenuResolved","canUserCreateNavigationMenu","canSwitchNavigationMenu","currentTitle","menuChoices","map","index","id","title","label","rendered","value","ariaLabel","hasNavigationMenus","length","hasClassicMenus","showNavigationMenus","showClassicMenus","noMenuSelected","noBlockMenus","menuUnavailable","NavigationMenuSelectorDropdown","moreVertical","isSmall","onClose","menuId","menu","name"],"mappings":";;;;;;;;;AAaA;;AAVA;;AAMA;;AACA;;AACA;;AACA;;AAMA;;AACA;;AAnBA;AACA;AACA;;AAaA;AACA;AACA;AAIA,SAASA,sBAAT,OAQI;AAAA,MAR6B;AAChCC,IAAAA,aADgC;AAEhCC,IAAAA,sBAFgC;AAGhCC,IAAAA,mBAHgC;AAIhCC,IAAAA,WAJgC;AAKhCC,IAAAA,WALgC;AAMhCC,IAAAA,6BANgC;AAOhCC,IAAAA;AAPgC,GAQ7B;;AACH;AACA,QAAMC,iBAAiB,GAAG,cAAI,kBAAJ,CAA1B;AAEA,QAAM,CAAEC,aAAF,EAAiBC,gBAAjB,IAAsC,uBAAU,EAAV,CAA5C;AACA,QAAM,CAAEC,cAAF,EAAkBC,iBAAlB,IAAwC,uBAAU,KAAV,CAA9C;AAEAP,EAAAA,WAAW,GAAGA,WAAW,IAAIG,iBAA7B;AAEA,QAAM;AAAEK,IAAAA,KAAK,EAAEC;AAAT,MAA0B,qCAAhC;AAEA,QAAM;AACLC,IAAAA,eADK;AAELC,IAAAA,0BAFK;AAGLC,IAAAA,wBAHK;AAILC,IAAAA,2BAJK;AAKLC,IAAAA;AALK,MAMF,iCANJ;AAQA,QAAM,CAAEC,YAAF,IAAmB,6BACxB,UADwB,EAExB,eAFwB,EAGxB,OAHwB,CAAzB;AAMA,QAAMC,WAAW,GAAG,sBAAS,MAAM;AAClC,WACC,CAAAN,eAAe,SAAf,IAAAA,eAAe,WAAf,YAAAA,eAAe,CAAEO,GAAjB,CAAsB,QAAiBC,KAAjB,KAA4B;AAAA,UAA1B;AAAEC,QAAAA,EAAF;AAAMC,QAAAA;AAAN,OAA0B;AACjD,YAAMC,KAAK,GACV,kCAAgBD,KAAK,CAACE,QAAtB;AACA;AACA,yBAAS,cAAI,eAAJ,CAAT,EAAgCJ,KAAK,GAAG,CAAxC,CAHD;;AAKA,UAAKC,EAAE,KAAKvB,aAAP,IAAwB,CAAEU,cAA/B,EAAgD;AAC/CD,QAAAA,gBAAgB;AACf;AACA,2BAAS,cAAI,8BAAJ,CAAT,EAA+CgB,KAA/C,CAFe,CAAhB;AAIA;;AACD,aAAO;AACNE,QAAAA,KAAK,EAAEJ,EADD;AAENE,QAAAA,KAFM;AAGNG,QAAAA,SAAS,EAAE,mBAASxB,WAAT,EAAsBqB,KAAtB;AAHL,OAAP;AAKA,KAjBD,MAiBO,EAlBR;AAoBA,GArBmB,EAqBjB,CACFN,YADE,EAEFnB,aAFE,EAGFc,eAHE,EAIFT,6BAJE,EAKFW,wBALE,EAMFD,0BANE,CArBiB,CAApB;AA8BA,QAAMc,kBAAkB,GAAG,CAAC,EAAEf,eAAF,aAAEA,eAAF,eAAEA,eAAe,CAAEgB,MAAnB,CAA5B;AACA,QAAMC,eAAe,GAAG,CAAC,EAAElB,YAAF,aAAEA,YAAF,eAAEA,YAAY,CAAEiB,MAAhB,CAAzB;AACA,QAAME,mBAAmB,GAAG,CAAC,CAAEd,uBAA/B;AACA,QAAMe,gBAAgB,GAAG,CAAC,CAAEhB,2BAA5B;AAEA,QAAMiB,cAAc,GAAGL,kBAAkB,IAAI,CAAE7B,aAA/C;AACA,QAAMmC,YAAY,GAAG,CAAEN,kBAAF,IAAwBd,0BAA7C;AACA,QAAMqB,eAAe,GACpBrB,0BAA0B,IAAIf,aAAa,KAAK,IADjD;AAGA,0BAAW,MAAM;AAChB,QAAK,CAAEe,0BAAP,EAAoC;AACnCN,MAAAA,gBAAgB,CAAE,cAAI,WAAJ,CAAF,CAAhB;AACA,KAFD,MAEO,IAAKyB,cAAc,IAAIC,YAAlB,IAAkCC,eAAvC,EAAyD;AAC/D3B,MAAAA,gBAAgB,CAAE,cAAI,0BAAJ,CAAF,CAAhB;AACA;;AAED,QACCC,cAAc,KACZL,6BAA6B,IAAIC,2BADrB,CADf,EAGE;AACDK,MAAAA,iBAAiB,CAAE,KAAF,CAAjB;AACA;AACD,GAbD,EAaG,CACFX,aADE,EAEF6B,kBAFE,EAGFd,0BAHE,EAIFV,6BAJE,EAKFW,wBALE,CAbH;AAqBA,QAAMqB,8BAA8B,GACnC,4BAAC,wBAAD;AACC,IAAA,KAAK,EAAG7B,aADT;AAEC,IAAA,IAAI,EAAG8B,mBAFR;AAGC,IAAA,WAAW,EAAG;AAAEC,MAAAA,OAAO,EAAE;AAAX;AAHf,KAKG;AAAA,QAAE;AAAEC,MAAAA;AAAF,KAAF;AAAA,WACD,qDACGR,mBAAmB,IAAIH,kBAAvB,IACD,4BAAC,qBAAD;AAAW,MAAA,KAAK,EAAG,cAAI,OAAJ;AAAnB,OACC,4BAAC,2BAAD;AACC,MAAA,KAAK,EAAG7B,aADT;AAEC,MAAA,QAAQ,EAAKyC,MAAF,IAAc;AACxBxC,QAAAA,sBAAsB,CAAEwC,MAAF,CAAtB;AACA,OAJF;AAKC,MAAA,OAAO,EAAGrB;AALX,MADD,CAFF,EAYGa,gBAAgB,IAAIF,eAApB,IACD,4BAAC,qBAAD;AAAW,MAAA,KAAK,EAAG,cAAI,sBAAJ;AAAnB,OACGlB,YADH,aACGA,YADH,uBACGA,YAAY,CAAEQ,GAAd,CAAqBqB,IAAF,IAAY;AAChC,YAAMjB,KAAK,GAAG,kCAAgBiB,IAAI,CAACC,IAArB,CAAd;AACA,aACC,4BAAC,oBAAD;AACC,QAAA,OAAO,EAAG,MAAM;AACflC,UAAAA,gBAAgB,CACf,cAAI,WAAJ,CADe,CAAhB;AAGAP,UAAAA,mBAAmB,CAAEwC,IAAF,CAAnB;AACAF,UAAAA,OAAO;AACP,SAPF;AAQC,QAAA,GAAG,EAAGE,IAAI,CAACnB,EARZ;AASC,sBAAa,mBACZhB,iBADY,EAEZkB,KAFY;AATd,SAcGA,KAdH,CADD;AAkBA,KApBC,CADH,CAbF,EAsCGR,2BAA2B,IAC5B,4BAAC,qBAAD;AAAW,MAAA,KAAK,EAAG,cAAI,OAAJ;AAAnB,OACC,4BAAC,oBAAD;AACC,MAAA,OAAO,EAAG,MAAM;AACfuB,QAAAA,OAAO;AACPrC,QAAAA,WAAW;AACXQ,QAAAA,iBAAiB,CAAE,IAAF,CAAjB;AACAF,QAAAA,gBAAgB,CAAE,cAAI,WAAJ,CAAF,CAAhB;AACA;AANF,OAQG,cAAI,iBAAJ,CARH,CADD,CAvCF,CADC;AAAA,GALH,CADD;AAgEA,SAAO4B,8BAAP;AACA;;eAEctC,sB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tMenuGroup,\n\tMenuItem,\n\tMenuItemsChoice,\n\tDropdownMenu,\n} from '@wordpress/components';\nimport { useEntityProp } from '@wordpress/core-data';\nimport { moreVertical } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useEffect, useMemo, useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\n\nfunction NavigationMenuSelector( {\n\tcurrentMenuId,\n\tonSelectNavigationMenu,\n\tonSelectClassicMenu,\n\tonCreateNew,\n\tactionLabel,\n\tcreateNavigationMenuIsSuccess,\n\tcreateNavigationMenuIsError,\n} ) {\n\t/* translators: %s: The name of a menu. */\n\tconst createActionLabel = __( \"Create from '%s'\" );\n\n\tconst [ selectorLabel, setSelectorLabel ] = useState( '' );\n\tconst [ isCreatingMenu, setIsCreatingMenu ] = useState( false );\n\n\tactionLabel = actionLabel || createActionLabel;\n\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst {\n\t\tnavigationMenus,\n\t\thasResolvedNavigationMenus,\n\t\tisNavigationMenuResolved,\n\t\tcanUserCreateNavigationMenu,\n\t\tcanSwitchNavigationMenu,\n\t} = useNavigationMenu();\n\n\tconst [ currentTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_navigation',\n\t\t'title'\n\t);\n\n\tconst menuChoices = useMemo( () => {\n\t\treturn (\n\t\t\tnavigationMenus?.map( ( { id, title }, index ) => {\n\t\t\t\tconst label =\n\t\t\t\t\tdecodeEntities( title.rendered ) ||\n\t\t\t\t\t/* translators: %s is the index of the menu in the list of menus. */\n\t\t\t\t\tsprintf( __( '(no title %s)' ), index + 1 );\n\n\t\t\t\tif ( id === currentMenuId && ! isCreatingMenu ) {\n\t\t\t\t\tsetSelectorLabel(\n\t\t\t\t\t\t/* translators: %s is the name of a navigation menu. */\n\t\t\t\t\t\tsprintf( __( 'You are currently editing %s' ), label )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\tvalue: id,\n\t\t\t\t\tlabel,\n\t\t\t\t\tariaLabel: sprintf( actionLabel, label ),\n\t\t\t\t};\n\t\t\t} ) || []\n\t\t);\n\t}, [\n\t\tcurrentTitle,\n\t\tcurrentMenuId,\n\t\tnavigationMenus,\n\t\tcreateNavigationMenuIsSuccess,\n\t\tisNavigationMenuResolved,\n\t\thasResolvedNavigationMenus,\n\t] );\n\n\tconst hasNavigationMenus = !! navigationMenus?.length;\n\tconst hasClassicMenus = !! classicMenus?.length;\n\tconst showNavigationMenus = !! canSwitchNavigationMenu;\n\tconst showClassicMenus = !! canUserCreateNavigationMenu;\n\n\tconst noMenuSelected = hasNavigationMenus && ! currentMenuId;\n\tconst noBlockMenus = ! hasNavigationMenus && hasResolvedNavigationMenus;\n\tconst menuUnavailable =\n\t\thasResolvedNavigationMenus && currentMenuId === null;\n\n\tuseEffect( () => {\n\t\tif ( ! hasResolvedNavigationMenus ) {\n\t\t\tsetSelectorLabel( __( 'Loading …' ) );\n\t\t} else if ( noMenuSelected || noBlockMenus || menuUnavailable ) {\n\t\t\tsetSelectorLabel( __( 'Choose a Navigation menu' ) );\n\t\t}\n\n\t\tif (\n\t\t\tisCreatingMenu &&\n\t\t\t( createNavigationMenuIsSuccess || createNavigationMenuIsError )\n\t\t) {\n\t\t\tsetIsCreatingMenu( false );\n\t\t}\n\t}, [\n\t\tcurrentMenuId,\n\t\thasNavigationMenus,\n\t\thasResolvedNavigationMenus,\n\t\tcreateNavigationMenuIsSuccess,\n\t\tisNavigationMenuResolved,\n\t] );\n\n\tconst NavigationMenuSelectorDropdown = (\n\t\t<DropdownMenu\n\t\t\tlabel={ selectorLabel }\n\t\t\ticon={ moreVertical }\n\t\t\ttoggleProps={ { isSmall: true } }\n\t\t>\n\t\t\t{ ( { onClose } ) => (\n\t\t\t\t<>\n\t\t\t\t\t{ showNavigationMenus && hasNavigationMenus && (\n\t\t\t\t\t\t<MenuGroup label={ __( 'Menus' ) }>\n\t\t\t\t\t\t\t<MenuItemsChoice\n\t\t\t\t\t\t\t\tvalue={ currentMenuId }\n\t\t\t\t\t\t\t\tonSelect={ ( menuId ) => {\n\t\t\t\t\t\t\t\t\tonSelectNavigationMenu( menuId );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tchoices={ menuChoices }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showClassicMenus && hasClassicMenus && (\n\t\t\t\t\t\t<MenuGroup label={ __( 'Import Classic Menus' ) }>\n\t\t\t\t\t\t\t{ classicMenus?.map( ( menu ) => {\n\t\t\t\t\t\t\t\tconst label = decodeEntities( menu.name );\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\tsetSelectorLabel(\n\t\t\t\t\t\t\t\t\t\t\t\t__( 'Loading …' )\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\tonSelectClassicMenu( menu );\n\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tkey={ menu.id }\n\t\t\t\t\t\t\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t\t\t\t\t\t\tcreateActionLabel,\n\t\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ canUserCreateNavigationMenu && (\n\t\t\t\t\t\t<MenuGroup label={ __( 'Tools' ) }>\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\tonCreateNew();\n\t\t\t\t\t\t\t\t\tsetIsCreatingMenu( true );\n\t\t\t\t\t\t\t\t\tsetSelectorLabel( __( 'Loading …' ) );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Create new menu' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t</DropdownMenu>\n\t);\n\n\treturn NavigationMenuSelectorDropdown;\n}\n\nexport default NavigationMenuSelector;\n"]}
@@ -36,6 +36,7 @@ function OverlayMenuPreview(_ref) {
36
36
  }),
37
37
  checked: hasIcon
38
38
  }), (0, _element.createElement)(_components.__experimentalToggleGroupControl, {
39
+ __nextHasNoMarginBottom: true,
39
40
  label: (0, _i18n.__)('Icon'),
40
41
  value: icon,
41
42
  onChange: value => setAttributes({
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/overlay-menu-preview.js"],"names":["OverlayMenuPreview","setAttributes","hasIcon","icon","value"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AAKA;;AAbA;AACA;AACA;;AAQA;AACA;AACA;AAGe,SAASA,kBAAT,OAAgE;AAAA,MAAnC;AAAEC,IAAAA,aAAF;AAAiBC,IAAAA,OAAjB;AAA0BC,IAAAA;AAA1B,GAAmC;AAC9E,SACC,qDACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,kBAAJ,CADT;AAEC,IAAA,IAAI,EAAG,cACN,yEADM,CAFR;AAKC,IAAA,QAAQ,EAAKC,KAAF,IAAaH,aAAa,CAAE;AAAEC,MAAAA,OAAO,EAAEE;AAAX,KAAF,CALtC;AAMC,IAAA,OAAO,EAAGF;AANX,IADD,EAUC,4BAAC,4CAAD;AACC,IAAA,KAAK,EAAG,cAAI,MAAJ,CADT;AAEC,IAAA,KAAK,EAAGC,IAFT;AAGC,IAAA,QAAQ,EAAKC,KAAF,IAAaH,aAAa,CAAE;AAAEE,MAAAA,IAAI,EAAEC;AAAR,KAAF,CAHtC;AAIC,IAAA,OAAO;AAJR,KAMC,4BAAC,kDAAD;AACC,IAAA,KAAK,EAAC,QADP;AAEC,kBAAa,cAAI,QAAJ,CAFd;AAGC,IAAA,KAAK,EAAG,4BAAC,wBAAD;AAAiB,MAAA,IAAI,EAAC;AAAtB;AAHT,IAND,EAWC,4BAAC,kDAAD;AACC,IAAA,KAAK,EAAC,MADP;AAEC,kBAAa,cAAI,MAAJ,CAFd;AAGC,IAAA,KAAK,EAAG,4BAAC,wBAAD;AAAiB,MAAA,IAAI,EAAC;AAAtB;AAHT,IAXD,CAVD,CADD;AA8BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport OverlayMenuIcon from './overlay-menu-icon';\n\nexport default function OverlayMenuPreview( { setAttributes, hasIcon, icon } ) {\n\treturn (\n\t\t<>\n\t\t\t<ToggleControl\n\t\t\t\tlabel={ __( 'Show icon button' ) }\n\t\t\t\thelp={ __(\n\t\t\t\t\t'Configure the visual appearance of the button opening the overlay menu.'\n\t\t\t\t) }\n\t\t\t\tonChange={ ( value ) => setAttributes( { hasIcon: value } ) }\n\t\t\t\tchecked={ hasIcon }\n\t\t\t/>\n\n\t\t\t<ToggleGroupControl\n\t\t\t\tlabel={ __( 'Icon' ) }\n\t\t\t\tvalue={ icon }\n\t\t\t\tonChange={ ( value ) => setAttributes( { icon: value } ) }\n\t\t\t\tisBlock\n\t\t\t>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tvalue=\"handle\"\n\t\t\t\t\taria-label={ __( 'handle' ) }\n\t\t\t\t\tlabel={ <OverlayMenuIcon icon=\"handle\" /> }\n\t\t\t\t/>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tvalue=\"menu\"\n\t\t\t\t\taria-label={ __( 'menu' ) }\n\t\t\t\t\tlabel={ <OverlayMenuIcon icon=\"menu\" /> }\n\t\t\t\t/>\n\t\t\t</ToggleGroupControl>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/overlay-menu-preview.js"],"names":["OverlayMenuPreview","setAttributes","hasIcon","icon","value"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AAKA;;AAbA;AACA;AACA;;AAQA;AACA;AACA;AAGe,SAASA,kBAAT,OAAgE;AAAA,MAAnC;AAAEC,IAAAA,aAAF;AAAiBC,IAAAA,OAAjB;AAA0BC,IAAAA;AAA1B,GAAmC;AAC9E,SACC,qDACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,kBAAJ,CADT;AAEC,IAAA,IAAI,EAAG,cACN,yEADM,CAFR;AAKC,IAAA,QAAQ,EAAKC,KAAF,IAAaH,aAAa,CAAE;AAAEC,MAAAA,OAAO,EAAEE;AAAX,KAAF,CALtC;AAMC,IAAA,OAAO,EAAGF;AANX,IADD,EAUC,4BAAC,4CAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAG,cAAI,MAAJ,CAFT;AAGC,IAAA,KAAK,EAAGC,IAHT;AAIC,IAAA,QAAQ,EAAKC,KAAF,IAAaH,aAAa,CAAE;AAAEE,MAAAA,IAAI,EAAEC;AAAR,KAAF,CAJtC;AAKC,IAAA,OAAO;AALR,KAOC,4BAAC,kDAAD;AACC,IAAA,KAAK,EAAC,QADP;AAEC,kBAAa,cAAI,QAAJ,CAFd;AAGC,IAAA,KAAK,EAAG,4BAAC,wBAAD;AAAiB,MAAA,IAAI,EAAC;AAAtB;AAHT,IAPD,EAYC,4BAAC,kDAAD;AACC,IAAA,KAAK,EAAC,MADP;AAEC,kBAAa,cAAI,MAAJ,CAFd;AAGC,IAAA,KAAK,EAAG,4BAAC,wBAAD;AAAiB,MAAA,IAAI,EAAC;AAAtB;AAHT,IAZD,CAVD,CADD;AA+BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport OverlayMenuIcon from './overlay-menu-icon';\n\nexport default function OverlayMenuPreview( { setAttributes, hasIcon, icon } ) {\n\treturn (\n\t\t<>\n\t\t\t<ToggleControl\n\t\t\t\tlabel={ __( 'Show icon button' ) }\n\t\t\t\thelp={ __(\n\t\t\t\t\t'Configure the visual appearance of the button opening the overlay menu.'\n\t\t\t\t) }\n\t\t\t\tonChange={ ( value ) => setAttributes( { hasIcon: value } ) }\n\t\t\t\tchecked={ hasIcon }\n\t\t\t/>\n\n\t\t\t<ToggleGroupControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Icon' ) }\n\t\t\t\tvalue={ icon }\n\t\t\t\tonChange={ ( value ) => setAttributes( { icon: value } ) }\n\t\t\t\tisBlock\n\t\t\t>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tvalue=\"handle\"\n\t\t\t\t\taria-label={ __( 'handle' ) }\n\t\t\t\t\tlabel={ <OverlayMenuIcon icon=\"handle\" /> }\n\t\t\t\t/>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tvalue=\"menu\"\n\t\t\t\t\taria-label={ __( 'menu' ) }\n\t\t\t\t\tlabel={ <OverlayMenuIcon icon=\"menu\" /> }\n\t\t\t\t/>\n\t\t\t</ToggleGroupControl>\n\t\t</>\n\t);\n}\n"]}
@@ -76,12 +76,7 @@ function NavigationPlaceholder(_ref) {
76
76
  currentMenuId: currentMenuId,
77
77
  clientId: clientId,
78
78
  onSelectNavigationMenu: onSelectNavigationMenu,
79
- onSelectClassicMenu: onSelectClassicMenu,
80
- toggleProps: {
81
- variant: 'tertiary',
82
- iconPosition: 'right',
83
- className: 'wp-block-navigation-placeholder__actions__dropdown'
84
- }
79
+ onSelectClassicMenu: onSelectClassicMenu
85
80
  }), (0, _element.createElement)("hr", null), canUserCreateNavigationMenu && (0, _element.createElement)(_components.Button, {
86
81
  variant: "tertiary",
87
82
  onClick: onCreateEmpty
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/placeholder/index.js"],"names":["NavigationPlaceholder","isSelected","currentMenuId","clientId","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","onSelectNavigationMenu","onSelectClassicMenu","onCreateEmpty","isResolvingMenus","hasResolvedMenus","isResolvingActions","undefined","navigation","variant","iconPosition","className"],"mappings":";;;;;;;;;AAOA;;AAJA;;AACA;;AACA;;AACA;;AAMA;;AACA;;AACA;;AAdA;AACA;AACA;;AAOA;AACA;AACA;AAKe,SAASA,qBAAT,OASX;AAAA,MAT2C;AAC9CC,IAAAA,UAD8C;AAE9CC,IAAAA,aAF8C;AAG9CC,IAAAA,QAH8C;AAI9CC,IAAAA,2BAA2B,GAAG,KAJgB;AAK9CC,IAAAA,sCAL8C;AAM9CC,IAAAA,sBAN8C;AAO9CC,IAAAA,mBAP8C;AAQ9CC,IAAAA;AAR8C,GAS3C;AACH,QAAM;AAAEC,IAAAA,gBAAF;AAAoBC,IAAAA;AAApB,MAAyC,qCAA/C;AAEA,0BAAW,MAAM;AAChB,QAAK,CAAET,UAAP,EAAoB;AACnB;AACA;;AAED,QAAKQ,gBAAL,EAAwB;AACvB,uBAAO,cAAI,yCAAJ,CAAP;AACA;;AAED,QAAKC,gBAAL,EAAwB;AACvB,uBAAO,cAAI,uCAAJ,CAAP;AACA;AACD,GAZD,EAYG,CAAED,gBAAF,EAAoBR,UAApB,CAZH;AAcA,QAAMU,kBAAkB,GACvBF,gBAAgB,IAAIJ,sCADrB;AAGA,SACC,qDACC,4BAAC,uBAAD;AAAa,IAAA,SAAS,EAAC;AAAvB,KAMC,4BAAC,2BAAD;AAAoB,IAAA,SAAS,EAAG,CAAEJ;AAAlC,IAND,EAOC;AACC,mBAAc,CAAEA,UAAF,GAAe,IAAf,GAAsBW,SADrC;AAEC,IAAA,SAAS,EAAC;AAFX,KAIC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,4BAAC,WAAD;AAAM,IAAA,IAAI,EAAGC;AAAb,IADD,OACgC,cAAI,YAAJ,CADhC,CADD,EAKC,uCALD,EAOGF,kBAAkB,IAAI,4BAAC,mBAAD,OAPzB,EASC,4BAAC,+BAAD;AACC,IAAA,aAAa,EAAGT,aADjB;AAEC,IAAA,QAAQ,EAAGC,QAFZ;AAGC,IAAA,sBAAsB,EAAGG,sBAH1B;AAIC,IAAA,mBAAmB,EAAGC,mBAJvB;AAKC,IAAA,WAAW,EAAG;AACbO,MAAAA,OAAO,EAAE,UADI;AAEbC,MAAAA,YAAY,EAAE,OAFD;AAGbC,MAAAA,SAAS,EACR;AAJY;AALf,IATD,EAsBC,uCAtBD,EAwBGZ,2BAA2B,IAC5B,4BAAC,kBAAD;AACC,IAAA,OAAO,EAAC,UADT;AAEC,IAAA,OAAO,EAAGI;AAFX,KAIG,cAAI,aAAJ,CAJH,CAzBF,CAJD,CAPD,CADD,CADD;AAkDA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Placeholder, Button, Spinner } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { navigation, Icon } from '@wordpress/icons';\nimport { speak } from '@wordpress/a11y';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useNavigationEntities from '../../use-navigation-entities';\nimport PlaceholderPreview from './placeholder-preview';\nimport NavigationMenuSelector from '../navigation-menu-selector';\n\nexport default function NavigationPlaceholder( {\n\tisSelected,\n\tcurrentMenuId,\n\tclientId,\n\tcanUserCreateNavigationMenu = false,\n\tisResolvingCanUserCreateNavigationMenu,\n\tonSelectNavigationMenu,\n\tonSelectClassicMenu,\n\tonCreateEmpty,\n} ) {\n\tconst { isResolvingMenus, hasResolvedMenus } = useNavigationEntities();\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isResolvingMenus ) {\n\t\t\tspeak( __( 'Loading Navigation block setup options.' ) );\n\t\t}\n\n\t\tif ( hasResolvedMenus ) {\n\t\t\tspeak( __( 'Navigation block setup options ready.' ) );\n\t\t}\n\t}, [ isResolvingMenus, isSelected ] );\n\n\tconst isResolvingActions =\n\t\tisResolvingMenus && isResolvingCanUserCreateNavigationMenu;\n\n\treturn (\n\t\t<>\n\t\t\t<Placeholder className=\"wp-block-navigation-placeholder\">\n\t\t\t\t{\n\t\t\t\t\t// The <PlaceholderPreview> component is displayed conditionally via CSS depending on\n\t\t\t\t\t// whether the block is selected or not. This is achieved via CSS to avoid\n\t\t\t\t\t// component re-renders\n\t\t\t\t }\n\t\t\t\t<PlaceholderPreview isVisible={ ! isSelected } />\n\t\t\t\t<div\n\t\t\t\t\taria-hidden={ ! isSelected ? true : undefined }\n\t\t\t\t\tclassName=\"wp-block-navigation-placeholder__controls\"\n\t\t\t\t>\n\t\t\t\t\t<div className=\"wp-block-navigation-placeholder__actions\">\n\t\t\t\t\t\t<div className=\"wp-block-navigation-placeholder__actions__indicator\">\n\t\t\t\t\t\t\t<Icon icon={ navigation } /> { __( 'Navigation' ) }\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<hr />\n\n\t\t\t\t\t\t{ isResolvingActions && <Spinner /> }\n\n\t\t\t\t\t\t<NavigationMenuSelector\n\t\t\t\t\t\t\tcurrentMenuId={ currentMenuId }\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\t\tvariant: 'tertiary',\n\t\t\t\t\t\t\t\ticonPosition: 'right',\n\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t'wp-block-navigation-placeholder__actions__dropdown',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t<hr />\n\n\t\t\t\t\t\t{ canUserCreateNavigationMenu && (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\tonClick={ onCreateEmpty }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Start empty' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Placeholder>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/placeholder/index.js"],"names":["NavigationPlaceholder","isSelected","currentMenuId","clientId","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","onSelectNavigationMenu","onSelectClassicMenu","onCreateEmpty","isResolvingMenus","hasResolvedMenus","isResolvingActions","undefined","navigation"],"mappings":";;;;;;;;;AAOA;;AAJA;;AACA;;AACA;;AACA;;AAMA;;AACA;;AACA;;AAdA;AACA;AACA;;AAOA;AACA;AACA;AAKe,SAASA,qBAAT,OASX;AAAA,MAT2C;AAC9CC,IAAAA,UAD8C;AAE9CC,IAAAA,aAF8C;AAG9CC,IAAAA,QAH8C;AAI9CC,IAAAA,2BAA2B,GAAG,KAJgB;AAK9CC,IAAAA,sCAL8C;AAM9CC,IAAAA,sBAN8C;AAO9CC,IAAAA,mBAP8C;AAQ9CC,IAAAA;AAR8C,GAS3C;AACH,QAAM;AAAEC,IAAAA,gBAAF;AAAoBC,IAAAA;AAApB,MAAyC,qCAA/C;AAEA,0BAAW,MAAM;AAChB,QAAK,CAAET,UAAP,EAAoB;AACnB;AACA;;AAED,QAAKQ,gBAAL,EAAwB;AACvB,uBAAO,cAAI,yCAAJ,CAAP;AACA;;AAED,QAAKC,gBAAL,EAAwB;AACvB,uBAAO,cAAI,uCAAJ,CAAP;AACA;AACD,GAZD,EAYG,CAAED,gBAAF,EAAoBR,UAApB,CAZH;AAcA,QAAMU,kBAAkB,GACvBF,gBAAgB,IAAIJ,sCADrB;AAGA,SACC,qDACC,4BAAC,uBAAD;AAAa,IAAA,SAAS,EAAC;AAAvB,KAMC,4BAAC,2BAAD;AAAoB,IAAA,SAAS,EAAG,CAAEJ;AAAlC,IAND,EAOC;AACC,mBAAc,CAAEA,UAAF,GAAe,IAAf,GAAsBW,SADrC;AAEC,IAAA,SAAS,EAAC;AAFX,KAIC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,4BAAC,WAAD;AAAM,IAAA,IAAI,EAAGC;AAAb,IADD,OACgC,cAAI,YAAJ,CADhC,CADD,EAKC,uCALD,EAOGF,kBAAkB,IAAI,4BAAC,mBAAD,OAPzB,EASC,4BAAC,+BAAD;AACC,IAAA,aAAa,EAAGT,aADjB;AAEC,IAAA,QAAQ,EAAGC,QAFZ;AAGC,IAAA,sBAAsB,EAAGG,sBAH1B;AAIC,IAAA,mBAAmB,EAAGC;AAJvB,IATD,EAgBC,uCAhBD,EAkBGH,2BAA2B,IAC5B,4BAAC,kBAAD;AACC,IAAA,OAAO,EAAC,UADT;AAEC,IAAA,OAAO,EAAGI;AAFX,KAIG,cAAI,aAAJ,CAJH,CAnBF,CAJD,CAPD,CADD,CADD;AA4CA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Placeholder, Button, Spinner } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { navigation, Icon } from '@wordpress/icons';\nimport { speak } from '@wordpress/a11y';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useNavigationEntities from '../../use-navigation-entities';\nimport PlaceholderPreview from './placeholder-preview';\nimport NavigationMenuSelector from '../navigation-menu-selector';\n\nexport default function NavigationPlaceholder( {\n\tisSelected,\n\tcurrentMenuId,\n\tclientId,\n\tcanUserCreateNavigationMenu = false,\n\tisResolvingCanUserCreateNavigationMenu,\n\tonSelectNavigationMenu,\n\tonSelectClassicMenu,\n\tonCreateEmpty,\n} ) {\n\tconst { isResolvingMenus, hasResolvedMenus } = useNavigationEntities();\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isResolvingMenus ) {\n\t\t\tspeak( __( 'Loading Navigation block setup options.' ) );\n\t\t}\n\n\t\tif ( hasResolvedMenus ) {\n\t\t\tspeak( __( 'Navigation block setup options ready.' ) );\n\t\t}\n\t}, [ isResolvingMenus, isSelected ] );\n\n\tconst isResolvingActions =\n\t\tisResolvingMenus && isResolvingCanUserCreateNavigationMenu;\n\n\treturn (\n\t\t<>\n\t\t\t<Placeholder className=\"wp-block-navigation-placeholder\">\n\t\t\t\t{\n\t\t\t\t\t// The <PlaceholderPreview> component is displayed conditionally via CSS depending on\n\t\t\t\t\t// whether the block is selected or not. This is achieved via CSS to avoid\n\t\t\t\t\t// component re-renders\n\t\t\t\t }\n\t\t\t\t<PlaceholderPreview isVisible={ ! isSelected } />\n\t\t\t\t<div\n\t\t\t\t\taria-hidden={ ! isSelected ? true : undefined }\n\t\t\t\t\tclassName=\"wp-block-navigation-placeholder__controls\"\n\t\t\t\t>\n\t\t\t\t\t<div className=\"wp-block-navigation-placeholder__actions\">\n\t\t\t\t\t\t<div className=\"wp-block-navigation-placeholder__actions__indicator\">\n\t\t\t\t\t\t\t<Icon icon={ navigation } /> { __( 'Navigation' ) }\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<hr />\n\n\t\t\t\t\t\t{ isResolvingActions && <Spinner /> }\n\n\t\t\t\t\t\t<NavigationMenuSelector\n\t\t\t\t\t\t\tcurrentMenuId={ currentMenuId }\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t<hr />\n\n\t\t\t\t\t\t{ canUserCreateNavigationMenu && (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\tonClick={ onCreateEmpty }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Start empty' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Placeholder>\n\t\t</>\n\t);\n}\n"]}
@@ -120,6 +120,7 @@ const metadata = {
120
120
  },
121
121
  supports: {
122
122
  align: ["wide", "full"],
123
+ anchor: true,
123
124
  html: false,
124
125
  inserter: true,
125
126
  typography: {
@@ -147,6 +148,7 @@ const metadata = {
147
148
  allowSwitching: false,
148
149
  allowInheriting: false,
149
150
  allowVerticalAlignment: false,
151
+ allowSizingOnChildren: true,
150
152
  "default": {
151
153
  type: "flex"
152
154
  }
@@ -173,6 +175,9 @@ exports.name = name;
173
175
  const settings = {
174
176
  icon: _icons.navigation,
175
177
  example: {
178
+ attributes: {
179
+ overlayMenu: 'never'
180
+ },
176
181
  innerBlocks: [{
177
182
  name: 'core/navigation-link',
178
183
  attributes: {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/index.js"],"names":["name","metadata","settings","icon","example","innerBlocks","attributes","label","url","edit","save","deprecated","init"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AAEA;;AACA;;AACA;;AAbA;AACA;AACA;;AAIA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,iBADuB;AAEvBC,EAAAA,OAAO,EAAE;AACRC,IAAAA,WAAW,EAAE,CACZ;AACCL,MAAAA,IAAI,EAAE,sBADP;AAECM,MAAAA,UAAU,EAAE;AACX;AACAC,QAAAA,KAAK,EAAE,cAAI,MAAJ,CAFI;AAGXC,QAAAA,GAAG,EAAE;AAHM;AAFb,KADY,EASZ;AACCR,MAAAA,IAAI,EAAE,sBADP;AAECM,MAAAA,UAAU,EAAE;AACX;AACAC,QAAAA,KAAK,EAAE,cAAI,OAAJ,CAFI;AAGXC,QAAAA,GAAG,EAAE;AAHM;AAFb,KATY,EAiBZ;AACCR,MAAAA,IAAI,EAAE,sBADP;AAECM,MAAAA,UAAU,EAAE;AACX;AACAC,QAAAA,KAAK,EAAE,cAAI,SAAJ,CAFI;AAGXC,QAAAA,GAAG,EAAE;AAHM;AAFb,KAjBY;AADL,GAFc;AA8BvBC,EAAAA,IAAI,EAAJA,aA9BuB;AA+BvBC,EAAAA,IAAI,EAAJA,aA/BuB;AAgCvBC,EAAAA,UAAU,EAAVA;AAhCuB,CAAjB;;;AAmCA,MAAMC,IAAI,GAAG,MAAM,wBAAW;AAAEZ,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAX,CAAnB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { navigation as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport save from './save';\nimport deprecated from './deprecated';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'Home' as in a website's home page.\n\t\t\t\t\tlabel: __( 'Home' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'About' as in a website's about page.\n\t\t\t\t\tlabel: __( 'About' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'Contact' as in a website's contact page.\n\t\t\t\t\tlabel: __( 'Contact' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/index.js"],"names":["name","metadata","settings","icon","example","attributes","overlayMenu","innerBlocks","label","url","edit","save","deprecated","init"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AAEA;;AACA;;AACA;;AAbA;AACA;AACA;;AAIA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,iBADuB;AAEvBC,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,WAAW,EAAE;AADF,KADJ;AAIRC,IAAAA,WAAW,EAAE,CACZ;AACCP,MAAAA,IAAI,EAAE,sBADP;AAECK,MAAAA,UAAU,EAAE;AACX;AACAG,QAAAA,KAAK,EAAE,cAAI,MAAJ,CAFI;AAGXC,QAAAA,GAAG,EAAE;AAHM;AAFb,KADY,EASZ;AACCT,MAAAA,IAAI,EAAE,sBADP;AAECK,MAAAA,UAAU,EAAE;AACX;AACAG,QAAAA,KAAK,EAAE,cAAI,OAAJ,CAFI;AAGXC,QAAAA,GAAG,EAAE;AAHM;AAFb,KATY,EAiBZ;AACCT,MAAAA,IAAI,EAAE,sBADP;AAECK,MAAAA,UAAU,EAAE;AACX;AACAG,QAAAA,KAAK,EAAE,cAAI,SAAJ,CAFI;AAGXC,QAAAA,GAAG,EAAE;AAHM;AAFb,KAjBY;AAJL,GAFc;AAiCvBC,EAAAA,IAAI,EAAJA,aAjCuB;AAkCvBC,EAAAA,IAAI,EAAJA,aAlCuB;AAmCvBC,EAAAA,UAAU,EAAVA;AAnCuB,CAAjB;;;AAsCA,MAAMC,IAAI,GAAG,MAAM,wBAAW;AAAEb,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAX,CAAnB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { navigation as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport save from './save';\nimport deprecated from './deprecated';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\toverlayMenu: 'never',\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'Home' as in a website's home page.\n\t\t\t\t\tlabel: __( 'Home' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'About' as in a website's about page.\n\t\t\t\t\tlabel: __( 'About' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'Contact' as in a website's contact page.\n\t\t\t\t\tlabel: __( 'Contact' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"]}
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.LeafMoreMenu = void 0;
9
+
10
+ var _element = require("@wordpress/element");
11
+
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
+
14
+ var _blocks = require("@wordpress/blocks");
15
+
16
+ var _icons = require("@wordpress/icons");
17
+
18
+ var _components = require("@wordpress/components");
19
+
20
+ var _data = require("@wordpress/data");
21
+
22
+ var _blockEditor = require("@wordpress/block-editor");
23
+
24
+ var _i18n = require("@wordpress/i18n");
25
+
26
+ /**
27
+ * WordPress dependencies
28
+ */
29
+ const POPOVER_PROPS = {
30
+ className: 'block-editor-block-settings-menu__popover',
31
+ position: 'bottom right',
32
+ variant: 'toolbar'
33
+ };
34
+
35
+ const LeafMoreMenu = props => {
36
+ const {
37
+ clientId,
38
+ block
39
+ } = props;
40
+ const {
41
+ insertBlock,
42
+ replaceBlock,
43
+ removeBlocks,
44
+ replaceInnerBlocks
45
+ } = (0, _data.useDispatch)(_blockEditor.store);
46
+ const label = (0, _i18n.sprintf)(
47
+ /* translators: %s: block name */
48
+ (0, _i18n.__)('Remove %s'), (0, _blockEditor.BlockTitle)({
49
+ clientId,
50
+ maximumLength: 25
51
+ }));
52
+ return (0, _element.createElement)(_components.DropdownMenu, (0, _extends2.default)({
53
+ icon: _icons.moreVertical,
54
+ label: (0, _i18n.__)('Options'),
55
+ className: "block-editor-block-settings-menu",
56
+ popoverProps: POPOVER_PROPS,
57
+ noIcons: true
58
+ }, props), _ref => {
59
+ let {
60
+ onClose
61
+ } = _ref;
62
+ return (0, _element.createElement)(_components.MenuGroup, null, (0, _element.createElement)(_components.MenuItem, {
63
+ icon: _icons.addSubmenu,
64
+ onClick: () => {
65
+ const updateSelectionOnInsert = false;
66
+ const newLink = (0, _blocks.createBlock)('core/navigation-link');
67
+
68
+ if (block.name === 'core/navigation-submenu') {
69
+ insertBlock(newLink, block.innerBlocks.length, clientId, updateSelectionOnInsert);
70
+ } else {
71
+ // Convert to a submenu if the block currently isn't one.
72
+ const newSubmenu = (0, _blocks.createBlock)('core/navigation-submenu', block.attributes, block.innerBlocks); // The following must happen as two independent actions.
73
+ // Why? Because the offcanvas editor relies on the getLastInsertedBlocksClientIds
74
+ // selector to determine which block is "active". As the UX needs the newLink to be
75
+ // the "active" block it must be the last block to be inserted.
76
+ // Therefore the Submenu is first created and **then** the newLink is inserted
77
+ // thus ensuring it is the last inserted block.
78
+
79
+ replaceBlock(clientId, newSubmenu);
80
+ replaceInnerBlocks(newSubmenu.clientId, [newLink], updateSelectionOnInsert);
81
+ }
82
+
83
+ onClose();
84
+ }
85
+ }, (0, _i18n.__)('Add submenu item')), (0, _element.createElement)(_components.MenuItem, {
86
+ onClick: () => {
87
+ removeBlocks([clientId], false);
88
+ onClose();
89
+ }
90
+ }, label));
91
+ });
92
+ };
93
+
94
+ exports.LeafMoreMenu = LeafMoreMenu;
95
+ //# sourceMappingURL=leaf-more-menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/leaf-more-menu.js"],"names":["POPOVER_PROPS","className","position","variant","LeafMoreMenu","props","clientId","block","insertBlock","replaceBlock","removeBlocks","replaceInnerBlocks","blockEditorStore","label","maximumLength","moreVertical","onClose","addSubmenu","updateSelectionOnInsert","newLink","name","innerBlocks","length","newSubmenu","attributes"],"mappings":";;;;;;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AACA;;AACA;;AARA;AACA;AACA;AAQA,MAAMA,aAAa,GAAG;AACrBC,EAAAA,SAAS,EAAE,2CADU;AAErBC,EAAAA,QAAQ,EAAE,cAFW;AAGrBC,EAAAA,OAAO,EAAE;AAHY,CAAtB;;AAMO,MAAMC,YAAY,GAAKC,KAAF,IAAa;AACxC,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA;AAAZ,MAAsBF,KAA5B;AAEA,QAAM;AAAEG,IAAAA,WAAF;AAAeC,IAAAA,YAAf;AAA6BC,IAAAA,YAA7B;AAA2CC,IAAAA;AAA3C,MACL,uBAAaC,kBAAb,CADD;AAGA,QAAMC,KAAK,GAAG;AACb;AACA,gBAAI,WAAJ,CAFa,EAGb,6BAAY;AAAEP,IAAAA,QAAF;AAAYQ,IAAAA,aAAa,EAAE;AAA3B,GAAZ,CAHa,CAAd;AAMA,SACC,4BAAC,wBAAD;AACC,IAAA,IAAI,EAAGC,mBADR;AAEC,IAAA,KAAK,EAAG,cAAI,SAAJ,CAFT;AAGC,IAAA,SAAS,EAAC,kCAHX;AAIC,IAAA,YAAY,EAAGf,aAJhB;AAKC,IAAA,OAAO;AALR,KAMMK,KANN,GAQG;AAAA,QAAE;AAAEW,MAAAA;AAAF,KAAF;AAAA,WACD,4BAAC,qBAAD,QACC,4BAAC,oBAAD;AACC,MAAA,IAAI,EAAGC,iBADR;AAEC,MAAA,OAAO,EAAG,MAAM;AACf,cAAMC,uBAAuB,GAAG,KAAhC;AACA,cAAMC,OAAO,GAAG,yBACf,sBADe,CAAhB;;AAGA,YAAKZ,KAAK,CAACa,IAAN,KAAe,yBAApB,EAAgD;AAC/CZ,UAAAA,WAAW,CACVW,OADU,EAEVZ,KAAK,CAACc,WAAN,CAAkBC,MAFR,EAGVhB,QAHU,EAIVY,uBAJU,CAAX;AAMA,SAPD,MAOO;AACN;AACA,gBAAMK,UAAU,GAAG,yBAClB,yBADkB,EAElBhB,KAAK,CAACiB,UAFY,EAGlBjB,KAAK,CAACc,WAHY,CAAnB,CAFM,CAQN;AACA;AACA;AACA;AACA;AACA;;AACAZ,UAAAA,YAAY,CAAEH,QAAF,EAAYiB,UAAZ,CAAZ;AAEAZ,UAAAA,kBAAkB,CACjBY,UAAU,CAACjB,QADM,EAEjB,CAAEa,OAAF,CAFiB,EAGjBD,uBAHiB,CAAlB;AAKA;;AACDF,QAAAA,OAAO;AACP;AArCF,OAuCG,cAAI,kBAAJ,CAvCH,CADD,EA0CC,4BAAC,oBAAD;AACC,MAAA,OAAO,EAAG,MAAM;AACfN,QAAAA,YAAY,CAAE,CAAEJ,QAAF,CAAF,EAAgB,KAAhB,CAAZ;AACAU,QAAAA,OAAO;AACP;AAJF,OAMGH,KANH,CA1CD,CADC;AAAA,GARH,CADD;AAgEA,CA5EM","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { addSubmenu, moreVertical } from '@wordpress/icons';\nimport { DropdownMenu, MenuItem, MenuGroup } from '@wordpress/components';\nimport { useDispatch } from '@wordpress/data';\nimport { store as blockEditorStore, BlockTitle } from '@wordpress/block-editor';\nimport { __, sprintf } from '@wordpress/i18n';\n\nconst POPOVER_PROPS = {\n\tclassName: 'block-editor-block-settings-menu__popover',\n\tposition: 'bottom right',\n\tvariant: 'toolbar',\n};\n\nexport const LeafMoreMenu = ( props ) => {\n\tconst { clientId, block } = props;\n\n\tconst { insertBlock, replaceBlock, removeBlocks, replaceInnerBlocks } =\n\t\tuseDispatch( blockEditorStore );\n\n\tconst label = sprintf(\n\t\t/* translators: %s: block name */\n\t\t__( 'Remove %s' ),\n\t\tBlockTitle( { clientId, maximumLength: 25 } )\n\t);\n\n\treturn (\n\t\t<DropdownMenu\n\t\t\ticon={ moreVertical }\n\t\t\tlabel={ __( 'Options' ) }\n\t\t\tclassName=\"block-editor-block-settings-menu\"\n\t\t\tpopoverProps={ POPOVER_PROPS }\n\t\t\tnoIcons\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ ( { onClose } ) => (\n\t\t\t\t<MenuGroup>\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\ticon={ addSubmenu }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tconst updateSelectionOnInsert = false;\n\t\t\t\t\t\t\tconst newLink = createBlock(\n\t\t\t\t\t\t\t\t'core/navigation-link'\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tif ( block.name === 'core/navigation-submenu' ) {\n\t\t\t\t\t\t\t\tinsertBlock(\n\t\t\t\t\t\t\t\t\tnewLink,\n\t\t\t\t\t\t\t\t\tblock.innerBlocks.length,\n\t\t\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\t\t\tupdateSelectionOnInsert\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t// Convert to a submenu if the block currently isn't one.\n\t\t\t\t\t\t\t\tconst newSubmenu = createBlock(\n\t\t\t\t\t\t\t\t\t'core/navigation-submenu',\n\t\t\t\t\t\t\t\t\tblock.attributes,\n\t\t\t\t\t\t\t\t\tblock.innerBlocks\n\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\t\t// The following must happen as two independent actions.\n\t\t\t\t\t\t\t\t// Why? Because the offcanvas editor relies on the getLastInsertedBlocksClientIds\n\t\t\t\t\t\t\t\t// selector to determine which block is \"active\". As the UX needs the newLink to be\n\t\t\t\t\t\t\t\t// the \"active\" block it must be the last block to be inserted.\n\t\t\t\t\t\t\t\t// Therefore the Submenu is first created and **then** the newLink is inserted\n\t\t\t\t\t\t\t\t// thus ensuring it is the last inserted block.\n\t\t\t\t\t\t\t\treplaceBlock( clientId, newSubmenu );\n\n\t\t\t\t\t\t\t\treplaceInnerBlocks(\n\t\t\t\t\t\t\t\t\tnewSubmenu.clientId,\n\t\t\t\t\t\t\t\t\t[ newLink ],\n\t\t\t\t\t\t\t\t\tupdateSelectionOnInsert\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Add submenu item' ) }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tremoveBlocks( [ clientId ], false );\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ label }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t</MenuGroup>\n\t\t\t) }\n\t\t</DropdownMenu>\n\t);\n};\n"]}
@@ -87,8 +87,6 @@ function mapMenuItemsToBlocks(menuItems) {
87
87
  * For more documentation on the individual fields present on a menu item please see:
88
88
  * https://core.trac.wordpress.org/browser/tags/5.7.1/src/wp-includes/nav-menu.php#L789
89
89
  *
90
- * Changes made here should also be mirrored in packages/edit-navigation/src/store/utils.js.
91
- *
92
90
  * @typedef WPNavMenuItem
93
91
  *
94
92
  * @property {Object} title stores the raw and rendered versions of the title/label for this menu item.
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/menu-items-to-blocks.js"],"names":["menuItemsToBlocks","menuItems","menuTree","createDataTree","blocks","mapMenuItemsToBlocks","level","mapping","sortedItems","sort","a","b","menu_order","innerBlocks","map","menuItem","type","block","content","raw","blockType","children","length","attributes","menuItemToBlockAttributes","nestedBlocks","nestedMapping","id","clientId","title","menuItemTitleField","xfn","classes","attr_title","object","object_id","description","url","menuItemTypeField","target","label","rendered","kind","replace","join","trim","rel","className","opensInNewTab","isTopLevelItem","isTopLevelLink","dataset","relation","hashTable","Object","create","dataTree","data","push"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock, parse } from '@wordpress/blocks';\nimport { applyFilters } from '@wordpress/hooks';\n\n/**\n * Convert a flat menu item structure to a nested blocks structure.\n *\n * @param {Object[]} menuItems An array of menu items.\n *\n * @return {WPBlock[]} An array of blocks.\n */\nexport default function menuItemsToBlocks( menuItems ) {\n\tif ( ! menuItems ) {\n\t\treturn null;\n\t}\n\n\tconst menuTree = createDataTree( menuItems );\n\tconst blocks = mapMenuItemsToBlocks( menuTree );\n\treturn applyFilters(\n\t\t'blocks.navigation.__unstableMenuItemsToBlocks',\n\t\tblocks,\n\t\tmenuItems\n\t);\n}\n\n/**\n * A recursive function that maps menu item nodes to blocks.\n *\n * @param {WPNavMenuItem[]} menuItems An array of WPNavMenuItem items.\n * @param {number} level An integer representing the nesting level.\n * @return {Object} Object containing innerBlocks and mapping.\n */\nfunction mapMenuItemsToBlocks( menuItems, level = 0 ) {\n\tlet mapping = {};\n\n\t// The menuItem should be in menu_order sort order.\n\tconst sortedItems = [ ...menuItems ].sort(\n\t\t( a, b ) => a.menu_order - b.menu_order\n\t);\n\n\tconst innerBlocks = sortedItems.map( ( menuItem ) => {\n\t\tif ( menuItem.type === 'block' ) {\n\t\t\tconst [ block ] = parse( menuItem.content.raw );\n\n\t\t\tif ( ! block ) {\n\t\t\t\treturn createBlock( 'core/freeform', {\n\t\t\t\t\tcontent: menuItem.content,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\treturn block;\n\t\t}\n\n\t\tconst blockType = menuItem.children?.length\n\t\t\t? 'core/navigation-submenu'\n\t\t\t: 'core/navigation-link';\n\n\t\tconst attributes = menuItemToBlockAttributes(\n\t\t\tmenuItem,\n\t\t\tblockType,\n\t\t\tlevel\n\t\t);\n\n\t\t// If there are children recurse to build those nested blocks.\n\t\tconst {\n\t\t\tinnerBlocks: nestedBlocks = [], // alias to avoid shadowing\n\t\t\tmapping: nestedMapping = {}, // alias to avoid shadowing\n\t\t} = menuItem.children?.length\n\t\t\t? mapMenuItemsToBlocks( menuItem.children, level + 1 )\n\t\t\t: {};\n\n\t\t// Update parent mapping with nested mapping.\n\t\tmapping = {\n\t\t\t...mapping,\n\t\t\t...nestedMapping,\n\t\t};\n\n\t\t// Create block with nested \"innerBlocks\".\n\t\tconst block = createBlock( blockType, attributes, nestedBlocks );\n\n\t\t// Create mapping for menuItem -> block.\n\t\tmapping[ menuItem.id ] = block.clientId;\n\n\t\treturn block;\n\t} );\n\n\treturn {\n\t\tinnerBlocks,\n\t\tmapping,\n\t};\n}\n\n/**\n * A WP nav_menu_item object.\n * For more documentation on the individual fields present on a menu item please see:\n * https://core.trac.wordpress.org/browser/tags/5.7.1/src/wp-includes/nav-menu.php#L789\n *\n * Changes made here should also be mirrored in packages/edit-navigation/src/store/utils.js.\n *\n * @typedef WPNavMenuItem\n *\n * @property {Object} title stores the raw and rendered versions of the title/label for this menu item.\n * @property {Array} xfn the XFN relationships expressed in the link of this menu item.\n * @property {Array} classes the HTML class attributes for this menu item.\n * @property {string} attr_title the HTML title attribute for this menu item.\n * @property {string} object The type of object originally represented, such as 'category', 'post', or 'attachment'.\n * @property {string} object_id The DB ID of the original object this menu item represents, e.g. ID for posts and term_id for categories.\n * @property {string} description The description of this menu item.\n * @property {string} url The URL to which this menu item points.\n * @property {string} type The family of objects originally represented, such as 'post_type' or 'taxonomy'.\n * @property {string} target The target attribute of the link element for this menu item.\n */\n\n/**\n * Convert block attributes to menu item.\n *\n * @param {WPNavMenuItem} menuItem the menu item to be converted to block attributes.\n * @param {string} blockType The block type.\n * @param {number} level An integer representing the nesting level.\n * @return {Object} the block attributes converted from the WPNavMenuItem item.\n */\nfunction menuItemToBlockAttributes(\n\t{\n\t\ttitle: menuItemTitleField,\n\t\txfn,\n\t\tclasses,\n\t\t// eslint-disable-next-line camelcase\n\t\tattr_title,\n\t\tobject,\n\t\t// eslint-disable-next-line camelcase\n\t\tobject_id,\n\t\tdescription,\n\t\turl,\n\t\ttype: menuItemTypeField,\n\t\ttarget,\n\t},\n\tblockType,\n\tlevel\n) {\n\t// For historical reasons, the `core/navigation-link` variation type is `tag`\n\t// whereas WP Core expects `post_tag` as the `object` type.\n\t// To avoid writing a block migration we perform a conversion here.\n\t// See also inverse equivalent in `blockAttributesToMenuItem`.\n\tif ( object && object === 'post_tag' ) {\n\t\tobject = 'tag';\n\t}\n\n\treturn {\n\t\tlabel: menuItemTitleField?.rendered || '',\n\t\t...( object?.length && {\n\t\t\ttype: object,\n\t\t} ),\n\t\tkind: menuItemTypeField?.replace( '_', '-' ) || 'custom',\n\t\turl: url || '',\n\t\t...( xfn?.length &&\n\t\t\txfn.join( ' ' ).trim() && {\n\t\t\t\trel: xfn.join( ' ' ).trim(),\n\t\t\t} ),\n\t\t...( classes?.length &&\n\t\t\tclasses.join( ' ' ).trim() && {\n\t\t\t\tclassName: classes.join( ' ' ).trim(),\n\t\t\t} ),\n\t\t/* eslint-disable camelcase */\n\t\t...( attr_title?.length && {\n\t\t\ttitle: attr_title,\n\t\t} ),\n\t\t...( object_id &&\n\t\t\t'custom' !== object && {\n\t\t\t\tid: object_id,\n\t\t\t} ),\n\t\t/* eslint-enable camelcase */\n\t\t...( description?.length && {\n\t\t\tdescription,\n\t\t} ),\n\t\t...( target === '_blank' && {\n\t\t\topensInNewTab: true,\n\t\t} ),\n\t\t...( blockType === 'core/navigation-submenu' && {\n\t\t\tisTopLevelItem: level === 0,\n\t\t} ),\n\t\t...( blockType === 'core/navigation-link' && {\n\t\t\tisTopLevelLink: level === 0,\n\t\t} ),\n\t};\n}\n\n/**\n * Creates a nested, hierarchical tree representation from unstructured data that\n * has an inherent relationship defined between individual items.\n *\n * For example, by default, each element in the dataset should have an `id` and\n * `parent` property where the `parent` property indicates a relationship between\n * the current item and another item with a matching `id` properties.\n *\n * This is useful for building linked lists of data from flat data structures.\n *\n * @param {Array} dataset linked data to be rearranged into a hierarchical tree based on relational fields.\n * @param {string} id the property which uniquely identifies each entry within the array.\n * @param {*} relation the property which identifies how the current item is related to other items in the data (if at all).\n * @return {Array} a nested array of parent/child relationships\n */\nfunction createDataTree( dataset, id = 'id', relation = 'parent' ) {\n\tconst hashTable = Object.create( null );\n\tconst dataTree = [];\n\n\tfor ( const data of dataset ) {\n\t\thashTable[ data[ id ] ] = {\n\t\t\t...data,\n\t\t\tchildren: [],\n\t\t};\n\t\tif ( data[ relation ] ) {\n\t\t\thashTable[ data[ relation ] ] = hashTable[ data[ relation ] ] || {};\n\t\t\thashTable[ data[ relation ] ].children =\n\t\t\t\thashTable[ data[ relation ] ].children || [];\n\t\t\thashTable[ data[ relation ] ].children.push(\n\t\t\t\thashTable[ data[ id ] ]\n\t\t\t);\n\t\t} else {\n\t\t\tdataTree.push( hashTable[ data[ id ] ] );\n\t\t}\n\t}\n\n\treturn dataTree;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/menu-items-to-blocks.js"],"names":["menuItemsToBlocks","menuItems","menuTree","createDataTree","blocks","mapMenuItemsToBlocks","level","mapping","sortedItems","sort","a","b","menu_order","innerBlocks","map","menuItem","type","block","content","raw","blockType","children","length","attributes","menuItemToBlockAttributes","nestedBlocks","nestedMapping","id","clientId","title","menuItemTitleField","xfn","classes","attr_title","object","object_id","description","url","menuItemTypeField","target","label","rendered","kind","replace","join","trim","rel","className","opensInNewTab","isTopLevelItem","isTopLevelLink","dataset","relation","hashTable","Object","create","dataTree","data","push"],"mappings":";;;;;;;AAGA;;AACA;;AAJA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASA,iBAAT,CAA4BC,SAA5B,EAAwC;AACtD,MAAK,CAAEA,SAAP,EAAmB;AAClB,WAAO,IAAP;AACA;;AAED,QAAMC,QAAQ,GAAGC,cAAc,CAAEF,SAAF,CAA/B;AACA,QAAMG,MAAM,GAAGC,oBAAoB,CAAEH,QAAF,CAAnC;AACA,SAAO,yBACN,+CADM,EAENE,MAFM,EAGNH,SAHM,CAAP;AAKA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASI,oBAAT,CAA+BJ,SAA/B,EAAsD;AAAA,MAAZK,KAAY,uEAAJ,CAAI;AACrD,MAAIC,OAAO,GAAG,EAAd,CADqD,CAGrD;;AACA,QAAMC,WAAW,GAAG,CAAE,GAAGP,SAAL,EAAiBQ,IAAjB,CACnB,CAAEC,CAAF,EAAKC,CAAL,KAAYD,CAAC,CAACE,UAAF,GAAeD,CAAC,CAACC,UADV,CAApB;AAIA,QAAMC,WAAW,GAAGL,WAAW,CAACM,GAAZ,CAAmBC,QAAF,IAAgB;AAAA;;AACpD,QAAKA,QAAQ,CAACC,IAAT,KAAkB,OAAvB,EAAiC;AAChC,YAAM,CAAEC,KAAF,IAAY,mBAAOF,QAAQ,CAACG,OAAT,CAAiBC,GAAxB,CAAlB;;AAEA,UAAK,CAAEF,KAAP,EAAe;AACd,eAAO,yBAAa,eAAb,EAA8B;AACpCC,UAAAA,OAAO,EAAEH,QAAQ,CAACG;AADkB,SAA9B,CAAP;AAGA;;AAED,aAAOD,KAAP;AACA;;AAED,UAAMG,SAAS,GAAG,sBAAAL,QAAQ,CAACM,QAAT,kEAAmBC,MAAnB,GACf,yBADe,GAEf,sBAFH;AAIA,UAAMC,UAAU,GAAGC,yBAAyB,CAC3CT,QAD2C,EAE3CK,SAF2C,EAG3Cd,KAH2C,CAA5C,CAjBoD,CAuBpD;;AACA,UAAM;AACLO,MAAAA,WAAW,EAAEY,YAAY,GAAG,EADvB;AAC2B;AAChClB,MAAAA,OAAO,EAAEmB,aAAa,GAAG,EAFpB,CAEwB;;AAFxB,QAGF,uBAAAX,QAAQ,CAACM,QAAT,oEAAmBC,MAAnB,GACDjB,oBAAoB,CAAEU,QAAQ,CAACM,QAAX,EAAqBf,KAAK,GAAG,CAA7B,CADnB,GAED,EALH,CAxBoD,CA+BpD;;AACAC,IAAAA,OAAO,GAAG,EACT,GAAGA,OADM;AAET,SAAGmB;AAFM,KAAV,CAhCoD,CAqCpD;;AACA,UAAMT,KAAK,GAAG,yBAAaG,SAAb,EAAwBG,UAAxB,EAAoCE,YAApC,CAAd,CAtCoD,CAwCpD;;AACAlB,IAAAA,OAAO,CAAEQ,QAAQ,CAACY,EAAX,CAAP,GAAyBV,KAAK,CAACW,QAA/B;AAEA,WAAOX,KAAP;AACA,GA5CmB,CAApB;AA8CA,SAAO;AACNJ,IAAAA,WADM;AAENN,IAAAA;AAFM,GAAP;AAIA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASiB,yBAAT,OAeCJ,SAfD,EAgBCd,KAhBD,EAiBE;AAAA;;AAAA,MAhBD;AACCuB,IAAAA,KAAK,EAAEC,kBADR;AAECC,IAAAA,GAFD;AAGCC,IAAAA,OAHD;AAIC;AACAC,IAAAA,UALD;AAMCC,IAAAA,MAND;AAOC;AACAC,IAAAA,SARD;AASCC,IAAAA,WATD;AAUCC,IAAAA,GAVD;AAWCrB,IAAAA,IAAI,EAAEsB,iBAXP;AAYCC,IAAAA;AAZD,GAgBC;;AACD;AACA;AACA;AACA;AACA,MAAKL,MAAM,IAAIA,MAAM,KAAK,UAA1B,EAAuC;AACtCA,IAAAA,MAAM,GAAG,KAAT;AACA;;AAED,SAAO;AACNM,IAAAA,KAAK,EAAE,CAAAV,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,YAAAA,kBAAkB,CAAEW,QAApB,KAAgC,EADjC;AAEN,QAAK,YAAAP,MAAM,UAAN,0CAAQZ,MAAR,KAAkB;AACtBN,MAAAA,IAAI,EAAEkB;AADgB,KAAvB,CAFM;AAKNQ,IAAAA,IAAI,EAAE,CAAAJ,iBAAiB,SAAjB,IAAAA,iBAAiB,WAAjB,YAAAA,iBAAiB,CAAEK,OAAnB,CAA4B,GAA5B,EAAiC,GAAjC,MAA0C,QAL1C;AAMNN,IAAAA,GAAG,EAAEA,GAAG,IAAI,EANN;AAON,QAAK,CAAAN,GAAG,SAAH,IAAAA,GAAG,WAAH,YAAAA,GAAG,CAAET,MAAL,KACJS,GAAG,CAACa,IAAJ,CAAU,GAAV,EAAgBC,IAAhB,EADI,IACsB;AACzBC,MAAAA,GAAG,EAAEf,GAAG,CAACa,IAAJ,CAAU,GAAV,EAAgBC,IAAhB;AADoB,KAD3B,CAPM;AAWN,QAAK,CAAAb,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAEV,MAAT,KACJU,OAAO,CAACY,IAAR,CAAc,GAAd,EAAoBC,IAApB,EADI,IAC0B;AAC7BE,MAAAA,SAAS,EAAEf,OAAO,CAACY,IAAR,CAAc,GAAd,EAAoBC,IAApB;AADkB,KAD/B,CAXM;;AAeN;AACA,QAAK,CAAAZ,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAEX,MAAZ,KAAsB;AAC1BO,MAAAA,KAAK,EAAEI;AADmB,KAA3B,CAhBM;AAmBN,QAAKE,SAAS,IACb,aAAaD,MADT,IACmB;AACtBP,MAAAA,EAAE,EAAEQ;AADkB,KADxB,CAnBM;;AAuBN;AACA,QAAK,CAAAC,WAAW,SAAX,IAAAA,WAAW,WAAX,YAAAA,WAAW,CAAEd,MAAb,KAAuB;AAC3Bc,MAAAA;AAD2B,KAA5B,CAxBM;AA2BN,QAAKG,MAAM,KAAK,QAAX,IAAuB;AAC3BS,MAAAA,aAAa,EAAE;AADY,KAA5B,CA3BM;AA8BN,QAAK5B,SAAS,KAAK,yBAAd,IAA2C;AAC/C6B,MAAAA,cAAc,EAAE3C,KAAK,KAAK;AADqB,KAAhD,CA9BM;AAiCN,QAAKc,SAAS,KAAK,sBAAd,IAAwC;AAC5C8B,MAAAA,cAAc,EAAE5C,KAAK,KAAK;AADkB,KAA7C;AAjCM,GAAP;AAqCA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASH,cAAT,CAAyBgD,OAAzB,EAAmE;AAAA,MAAjCxB,EAAiC,uEAA5B,IAA4B;AAAA,MAAtByB,QAAsB,uEAAX,QAAW;AAClE,QAAMC,SAAS,GAAGC,MAAM,CAACC,MAAP,CAAe,IAAf,CAAlB;AACA,QAAMC,QAAQ,GAAG,EAAjB;;AAEA,OAAM,MAAMC,IAAZ,IAAoBN,OAApB,EAA8B;AAC7BE,IAAAA,SAAS,CAAEI,IAAI,CAAE9B,EAAF,CAAN,CAAT,GAA0B,EACzB,GAAG8B,IADsB;AAEzBpC,MAAAA,QAAQ,EAAE;AAFe,KAA1B;;AAIA,QAAKoC,IAAI,CAAEL,QAAF,CAAT,EAAwB;AACvBC,MAAAA,SAAS,CAAEI,IAAI,CAAEL,QAAF,CAAN,CAAT,GAAgCC,SAAS,CAAEI,IAAI,CAAEL,QAAF,CAAN,CAAT,IAAiC,EAAjE;AACAC,MAAAA,SAAS,CAAEI,IAAI,CAAEL,QAAF,CAAN,CAAT,CAA8B/B,QAA9B,GACCgC,SAAS,CAAEI,IAAI,CAAEL,QAAF,CAAN,CAAT,CAA8B/B,QAA9B,IAA0C,EAD3C;AAEAgC,MAAAA,SAAS,CAAEI,IAAI,CAAEL,QAAF,CAAN,CAAT,CAA8B/B,QAA9B,CAAuCqC,IAAvC,CACCL,SAAS,CAAEI,IAAI,CAAE9B,EAAF,CAAN,CADV;AAGA,KAPD,MAOO;AACN6B,MAAAA,QAAQ,CAACE,IAAT,CAAeL,SAAS,CAAEI,IAAI,CAAE9B,EAAF,CAAN,CAAxB;AACA;AACD;;AAED,SAAO6B,QAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock, parse } from '@wordpress/blocks';\nimport { applyFilters } from '@wordpress/hooks';\n\n/**\n * Convert a flat menu item structure to a nested blocks structure.\n *\n * @param {Object[]} menuItems An array of menu items.\n *\n * @return {WPBlock[]} An array of blocks.\n */\nexport default function menuItemsToBlocks( menuItems ) {\n\tif ( ! menuItems ) {\n\t\treturn null;\n\t}\n\n\tconst menuTree = createDataTree( menuItems );\n\tconst blocks = mapMenuItemsToBlocks( menuTree );\n\treturn applyFilters(\n\t\t'blocks.navigation.__unstableMenuItemsToBlocks',\n\t\tblocks,\n\t\tmenuItems\n\t);\n}\n\n/**\n * A recursive function that maps menu item nodes to blocks.\n *\n * @param {WPNavMenuItem[]} menuItems An array of WPNavMenuItem items.\n * @param {number} level An integer representing the nesting level.\n * @return {Object} Object containing innerBlocks and mapping.\n */\nfunction mapMenuItemsToBlocks( menuItems, level = 0 ) {\n\tlet mapping = {};\n\n\t// The menuItem should be in menu_order sort order.\n\tconst sortedItems = [ ...menuItems ].sort(\n\t\t( a, b ) => a.menu_order - b.menu_order\n\t);\n\n\tconst innerBlocks = sortedItems.map( ( menuItem ) => {\n\t\tif ( menuItem.type === 'block' ) {\n\t\t\tconst [ block ] = parse( menuItem.content.raw );\n\n\t\t\tif ( ! block ) {\n\t\t\t\treturn createBlock( 'core/freeform', {\n\t\t\t\t\tcontent: menuItem.content,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\treturn block;\n\t\t}\n\n\t\tconst blockType = menuItem.children?.length\n\t\t\t? 'core/navigation-submenu'\n\t\t\t: 'core/navigation-link';\n\n\t\tconst attributes = menuItemToBlockAttributes(\n\t\t\tmenuItem,\n\t\t\tblockType,\n\t\t\tlevel\n\t\t);\n\n\t\t// If there are children recurse to build those nested blocks.\n\t\tconst {\n\t\t\tinnerBlocks: nestedBlocks = [], // alias to avoid shadowing\n\t\t\tmapping: nestedMapping = {}, // alias to avoid shadowing\n\t\t} = menuItem.children?.length\n\t\t\t? mapMenuItemsToBlocks( menuItem.children, level + 1 )\n\t\t\t: {};\n\n\t\t// Update parent mapping with nested mapping.\n\t\tmapping = {\n\t\t\t...mapping,\n\t\t\t...nestedMapping,\n\t\t};\n\n\t\t// Create block with nested \"innerBlocks\".\n\t\tconst block = createBlock( blockType, attributes, nestedBlocks );\n\n\t\t// Create mapping for menuItem -> block.\n\t\tmapping[ menuItem.id ] = block.clientId;\n\n\t\treturn block;\n\t} );\n\n\treturn {\n\t\tinnerBlocks,\n\t\tmapping,\n\t};\n}\n\n/**\n * A WP nav_menu_item object.\n * For more documentation on the individual fields present on a menu item please see:\n * https://core.trac.wordpress.org/browser/tags/5.7.1/src/wp-includes/nav-menu.php#L789\n *\n * @typedef WPNavMenuItem\n *\n * @property {Object} title stores the raw and rendered versions of the title/label for this menu item.\n * @property {Array} xfn the XFN relationships expressed in the link of this menu item.\n * @property {Array} classes the HTML class attributes for this menu item.\n * @property {string} attr_title the HTML title attribute for this menu item.\n * @property {string} object The type of object originally represented, such as 'category', 'post', or 'attachment'.\n * @property {string} object_id The DB ID of the original object this menu item represents, e.g. ID for posts and term_id for categories.\n * @property {string} description The description of this menu item.\n * @property {string} url The URL to which this menu item points.\n * @property {string} type The family of objects originally represented, such as 'post_type' or 'taxonomy'.\n * @property {string} target The target attribute of the link element for this menu item.\n */\n\n/**\n * Convert block attributes to menu item.\n *\n * @param {WPNavMenuItem} menuItem the menu item to be converted to block attributes.\n * @param {string} blockType The block type.\n * @param {number} level An integer representing the nesting level.\n * @return {Object} the block attributes converted from the WPNavMenuItem item.\n */\nfunction menuItemToBlockAttributes(\n\t{\n\t\ttitle: menuItemTitleField,\n\t\txfn,\n\t\tclasses,\n\t\t// eslint-disable-next-line camelcase\n\t\tattr_title,\n\t\tobject,\n\t\t// eslint-disable-next-line camelcase\n\t\tobject_id,\n\t\tdescription,\n\t\turl,\n\t\ttype: menuItemTypeField,\n\t\ttarget,\n\t},\n\tblockType,\n\tlevel\n) {\n\t// For historical reasons, the `core/navigation-link` variation type is `tag`\n\t// whereas WP Core expects `post_tag` as the `object` type.\n\t// To avoid writing a block migration we perform a conversion here.\n\t// See also inverse equivalent in `blockAttributesToMenuItem`.\n\tif ( object && object === 'post_tag' ) {\n\t\tobject = 'tag';\n\t}\n\n\treturn {\n\t\tlabel: menuItemTitleField?.rendered || '',\n\t\t...( object?.length && {\n\t\t\ttype: object,\n\t\t} ),\n\t\tkind: menuItemTypeField?.replace( '_', '-' ) || 'custom',\n\t\turl: url || '',\n\t\t...( xfn?.length &&\n\t\t\txfn.join( ' ' ).trim() && {\n\t\t\t\trel: xfn.join( ' ' ).trim(),\n\t\t\t} ),\n\t\t...( classes?.length &&\n\t\t\tclasses.join( ' ' ).trim() && {\n\t\t\t\tclassName: classes.join( ' ' ).trim(),\n\t\t\t} ),\n\t\t/* eslint-disable camelcase */\n\t\t...( attr_title?.length && {\n\t\t\ttitle: attr_title,\n\t\t} ),\n\t\t...( object_id &&\n\t\t\t'custom' !== object && {\n\t\t\t\tid: object_id,\n\t\t\t} ),\n\t\t/* eslint-enable camelcase */\n\t\t...( description?.length && {\n\t\t\tdescription,\n\t\t} ),\n\t\t...( target === '_blank' && {\n\t\t\topensInNewTab: true,\n\t\t} ),\n\t\t...( blockType === 'core/navigation-submenu' && {\n\t\t\tisTopLevelItem: level === 0,\n\t\t} ),\n\t\t...( blockType === 'core/navigation-link' && {\n\t\t\tisTopLevelLink: level === 0,\n\t\t} ),\n\t};\n}\n\n/**\n * Creates a nested, hierarchical tree representation from unstructured data that\n * has an inherent relationship defined between individual items.\n *\n * For example, by default, each element in the dataset should have an `id` and\n * `parent` property where the `parent` property indicates a relationship between\n * the current item and another item with a matching `id` properties.\n *\n * This is useful for building linked lists of data from flat data structures.\n *\n * @param {Array} dataset linked data to be rearranged into a hierarchical tree based on relational fields.\n * @param {string} id the property which uniquely identifies each entry within the array.\n * @param {*} relation the property which identifies how the current item is related to other items in the data (if at all).\n * @return {Array} a nested array of parent/child relationships\n */\nfunction createDataTree( dataset, id = 'id', relation = 'parent' ) {\n\tconst hashTable = Object.create( null );\n\tconst dataTree = [];\n\n\tfor ( const data of dataset ) {\n\t\thashTable[ data[ id ] ] = {\n\t\t\t...data,\n\t\t\tchildren: [],\n\t\t};\n\t\tif ( data[ relation ] ) {\n\t\t\thashTable[ data[ relation ] ] = hashTable[ data[ relation ] ] || {};\n\t\t\thashTable[ data[ relation ] ].children =\n\t\t\t\thashTable[ data[ relation ] ].children || [];\n\t\t\thashTable[ data[ relation ] ].children.push(\n\t\t\t\thashTable[ data[ id ] ]\n\t\t\t);\n\t\t} else {\n\t\t\tdataTree.push( hashTable[ data[ id ] ] );\n\t\t}\n\t}\n\n\treturn dataTree;\n}\n"]}
@@ -11,8 +11,6 @@ var _element = require("@wordpress/element");
11
11
 
12
12
  var _classnames = _interopRequireDefault(require("classnames"));
13
13
 
14
- var _lodash = require("lodash");
15
-
16
14
  var _blocks = require("@wordpress/blocks");
17
15
 
18
16
  var _data = require("@wordpress/data");
@@ -29,6 +27,8 @@ var _url = require("@wordpress/url");
29
27
 
30
28
  var _dom = require("@wordpress/dom");
31
29
 
30
+ var _htmlEntities = require("@wordpress/html-entities");
31
+
32
32
  var _icons = require("@wordpress/icons");
33
33
 
34
34
  var _coreData = require("@wordpress/core-data");
@@ -375,12 +375,17 @@ function NavigationLinkEdit(_ref) {
375
375
 
376
376
  function removeLink() {
377
377
  // Reset all attributes that comprise the link.
378
+ // It is critical that all attributes are reset
379
+ // to their default values otherwise this may
380
+ // in advertently trigger side effects because
381
+ // the values will have "changed".
378
382
  setAttributes({
379
- url: '',
380
- label: '',
381
- id: '',
382
- kind: '',
383
- type: ''
383
+ url: undefined,
384
+ label: undefined,
385
+ id: undefined,
386
+ kind: undefined,
387
+ type: undefined,
388
+ opensInNewTab: false
384
389
  }); // Close the link editing UI.
385
390
 
386
391
  setIsLinkOpen(false);
@@ -429,7 +434,10 @@ function NavigationLinkEdit(_ref) {
429
434
  const DEFAULT_BLOCK = {
430
435
  name: 'core/navigation-link'
431
436
  };
432
- const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)(blockProps, {
437
+ const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)({ ...blockProps,
438
+ className: 'remove-outline' // Remove the outline from the inner blocks container.
439
+
440
+ }, {
433
441
  allowedBlocks: ALLOWED_BLOCKS,
434
442
  __experimentalDefaultBlock: DEFAULT_BLOCK,
435
443
  __experimentalDirectInsert: true,
@@ -462,6 +470,7 @@ function NavigationLinkEdit(_ref) {
462
470
  }))), (0, _element.createElement)(_blockEditor.InspectorControls, null, (0, _element.createElement)(_components.PanelBody, {
463
471
  title: (0, _i18n.__)('Link settings')
464
472
  }, (0, _element.createElement)(_components.TextControl, {
473
+ __nextHasNoMarginBottom: true,
465
474
  value: label ? (0, _dom.__unstableStripHTML)(label) : '',
466
475
  onChange: labelValue => {
467
476
  setAttributes({
@@ -471,11 +480,12 @@ function NavigationLinkEdit(_ref) {
471
480
  label: (0, _i18n.__)('Label'),
472
481
  autoComplete: "off"
473
482
  }), (0, _element.createElement)(_components.TextControl, {
483
+ __nextHasNoMarginBottom: true,
474
484
  value: url || '',
475
485
  onChange: urlValue => {
476
- setAttributes({
486
+ (0, _updateAttributes.updateAttributes)({
477
487
  url: urlValue
478
- });
488
+ }, setAttributes, attributes);
479
489
  },
480
490
  label: (0, _i18n.__)('URL'),
481
491
  autoComplete: "off"
@@ -490,6 +500,7 @@ function NavigationLinkEdit(_ref) {
490
500
  label: (0, _i18n.__)('Description'),
491
501
  help: (0, _i18n.__)('The description will be displayed in the menu if the current theme supports it.')
492
502
  }), (0, _element.createElement)(_components.TextControl, {
503
+ __nextHasNoMarginBottom: true,
493
504
  value: title || '',
494
505
  onChange: titleValue => {
495
506
  setAttributes({
@@ -499,6 +510,7 @@ function NavigationLinkEdit(_ref) {
499
510
  label: (0, _i18n.__)('Link title'),
500
511
  autoComplete: "off"
501
512
  }), (0, _element.createElement)(_components.TextControl, {
513
+ __nextHasNoMarginBottom: true,
502
514
  value: rel || '',
503
515
  onChange: relValue => {
504
516
  setAttributes({
@@ -554,7 +566,7 @@ function NavigationLinkEdit(_ref) {
554
566
  // Unescape is used here to "recover" the escaped characters
555
567
  // so they display without encoding.
556
568
  // See `updateAttributes` for more details.
557
- `${(0, _lodash.unescape)(label)} ${placeholderText}`.trim()), (0, _element.createElement)("span", {
569
+ `${(0, _htmlEntities.decodeEntities)(label)} ${placeholderText}`.trim()), (0, _element.createElement)("span", {
558
570
  className: "wp-block-navigation-link__missing_text-tooltip"
559
571
  }, tooltipText))))), isLinkOpen && (0, _element.createElement)(_linkUi.LinkUI, {
560
572
  className: "wp-block-navigation-link__inline-link-input",