@wordpress/block-library 8.12.0 → 8.12.2

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 (1318) hide show
  1. package/build/archives/edit.js +2 -1
  2. package/build/archives/edit.js.map +1 -1
  3. package/build/archives/index.js +0 -1
  4. package/build/archives/index.js.map +1 -1
  5. package/build/audio/edit.js +4 -2
  6. package/build/audio/edit.js.map +1 -1
  7. package/build/audio/save.js +2 -1
  8. package/build/audio/save.js.map +1 -1
  9. package/build/avatar/edit.js +6 -3
  10. package/build/avatar/edit.js.map +1 -1
  11. package/build/avatar/index.js +1 -2
  12. package/build/avatar/index.js.map +1 -1
  13. package/build/block/edit.js +8 -4
  14. package/build/block/edit.js.map +1 -1
  15. package/build/block/index.js +1 -1
  16. package/build/button/deprecated.js +20 -15
  17. package/build/button/deprecated.js.map +1 -1
  18. package/build/button/edit.js +2 -4
  19. package/build/button/edit.js.map +1 -1
  20. package/build/button/save.js +4 -3
  21. package/build/button/save.js.map +1 -1
  22. package/build/buttons/deprecated.js +6 -5
  23. package/build/buttons/deprecated.js.map +1 -1
  24. package/build/buttons/edit.js +7 -2
  25. package/build/buttons/edit.js.map +1 -1
  26. package/build/buttons/edit.native.js +6 -6
  27. package/build/buttons/edit.native.js.map +1 -1
  28. package/build/buttons/index.js +1 -1
  29. package/build/buttons/save.js +2 -1
  30. package/build/buttons/save.js.map +1 -1
  31. package/build/buttons/transforms.js +1 -1
  32. package/build/calendar/edit.js +4 -2
  33. package/build/calendar/edit.js.map +1 -1
  34. package/build/calendar/index.js +0 -1
  35. package/build/calendar/index.js.map +1 -1
  36. package/build/categories/edit.js +2 -1
  37. package/build/categories/edit.js.map +1 -1
  38. package/build/categories/index.js +0 -1
  39. package/build/categories/index.js.map +1 -1
  40. package/build/code/edit.js +2 -1
  41. package/build/code/edit.js.map +1 -1
  42. package/build/code/save.js +2 -1
  43. package/build/code/save.js.map +1 -1
  44. package/build/column/edit.js +2 -1
  45. package/build/column/edit.js.map +1 -1
  46. package/build/column/edit.native.js +2 -1
  47. package/build/column/edit.native.js.map +1 -1
  48. package/build/column/index.js +1 -1
  49. package/build/column/save.js +2 -1
  50. package/build/column/save.js.map +1 -1
  51. package/build/columns/edit.js +6 -3
  52. package/build/columns/edit.js.map +1 -1
  53. package/build/columns/edit.native.js +4 -5
  54. package/build/columns/edit.native.js.map +1 -1
  55. package/build/columns/index.js +1 -1
  56. package/build/columns/save.js +2 -1
  57. package/build/columns/save.js.map +1 -1
  58. package/build/comment-author-avatar/edit.js +6 -8
  59. package/build/comment-author-avatar/edit.js.map +1 -1
  60. package/build/comment-author-avatar/index.js +0 -1
  61. package/build/comment-author-avatar/index.js.map +1 -1
  62. package/build/comment-author-name/edit.js +2 -1
  63. package/build/comment-author-name/edit.js.map +1 -1
  64. package/build/comment-author-name/index.js +0 -1
  65. package/build/comment-author-name/index.js.map +1 -1
  66. package/build/comment-content/edit.js +4 -2
  67. package/build/comment-content/edit.js.map +1 -1
  68. package/build/comment-content/index.js +0 -1
  69. package/build/comment-content/index.js.map +1 -1
  70. package/build/comment-date/edit.js +2 -1
  71. package/build/comment-date/edit.js.map +1 -1
  72. package/build/comment-date/index.js +0 -1
  73. package/build/comment-date/index.js.map +1 -1
  74. package/build/comment-edit-link/edit.js +2 -1
  75. package/build/comment-edit-link/edit.js.map +1 -1
  76. package/build/comment-edit-link/index.js +0 -1
  77. package/build/comment-edit-link/index.js.map +1 -1
  78. package/build/comment-reply-link/edit.js +2 -1
  79. package/build/comment-reply-link/edit.js.map +1 -1
  80. package/build/comment-reply-link/index.js +0 -1
  81. package/build/comment-reply-link/index.js.map +1 -1
  82. package/build/comment-template/edit.js +10 -10
  83. package/build/comment-template/edit.js.map +1 -1
  84. package/build/comment-template/index.js +0 -1
  85. package/build/comment-template/index.js.map +1 -1
  86. package/build/comments/deprecated.js +2 -1
  87. package/build/comments/deprecated.js.map +1 -1
  88. package/build/comments/edit/comments-legacy.js +2 -1
  89. package/build/comments/edit/comments-legacy.js.map +1 -1
  90. package/build/comments/edit/index.js +4 -2
  91. package/build/comments/edit/index.js.map +1 -1
  92. package/build/comments/index.js +0 -1
  93. package/build/comments/index.js.map +1 -1
  94. package/build/comments/save.js +2 -1
  95. package/build/comments/save.js.map +1 -1
  96. package/build/comments-pagination/edit.js +2 -1
  97. package/build/comments-pagination/edit.js.map +1 -1
  98. package/build/comments-pagination/index.js +1 -2
  99. package/build/comments-pagination/index.js.map +1 -1
  100. package/build/comments-pagination-next/edit.js +4 -7
  101. package/build/comments-pagination-next/edit.js.map +1 -1
  102. package/build/comments-pagination-next/index.js +0 -1
  103. package/build/comments-pagination-next/index.js.map +1 -1
  104. package/build/comments-pagination-numbers/edit.js +2 -1
  105. package/build/comments-pagination-numbers/edit.js.map +1 -1
  106. package/build/comments-pagination-numbers/index.js +0 -1
  107. package/build/comments-pagination-numbers/index.js.map +1 -1
  108. package/build/comments-pagination-previous/edit.js +4 -7
  109. package/build/comments-pagination-previous/edit.js.map +1 -1
  110. package/build/comments-pagination-previous/index.js +0 -1
  111. package/build/comments-pagination-previous/index.js.map +1 -1
  112. package/build/comments-title/edit.js +4 -9
  113. package/build/comments-title/edit.js.map +1 -1
  114. package/build/cover/deprecated.js +46 -36
  115. package/build/cover/deprecated.js.map +1 -1
  116. package/build/cover/edit/index.js +8 -7
  117. package/build/cover/edit/index.js.map +1 -1
  118. package/build/cover/edit/inspector-controls.js +4 -7
  119. package/build/cover/edit/inspector-controls.js.map +1 -1
  120. package/build/cover/edit/resizable-cover-popover.js +6 -7
  121. package/build/cover/edit/resizable-cover-popover.js.map +1 -1
  122. package/build/cover/edit.native.js +12 -11
  123. package/build/cover/edit.native.js.map +1 -1
  124. package/build/cover/index.js +1 -1
  125. package/build/cover/save.js +9 -7
  126. package/build/cover/save.js.map +1 -1
  127. package/build/cover/transforms.js +2 -2
  128. package/build/cover/transforms.js.map +1 -1
  129. package/build/details/edit.js +3 -7
  130. package/build/details/edit.js.map +1 -1
  131. package/build/details/index.js +1 -1
  132. package/build/details/init.js +16 -0
  133. package/build/details/init.js.map +1 -0
  134. package/build/details/save.js +2 -6
  135. package/build/details/save.js.map +1 -1
  136. package/build/embed/deprecated.js +4 -3
  137. package/build/embed/deprecated.js.map +1 -1
  138. package/build/embed/edit.js +6 -3
  139. package/build/embed/edit.js.map +1 -1
  140. package/build/embed/edit.native.js +6 -3
  141. package/build/embed/edit.native.js.map +1 -1
  142. package/build/embed/save.js +4 -3
  143. package/build/embed/save.js.map +1 -1
  144. package/build/embed/wp-embed-preview.js +4 -7
  145. package/build/embed/wp-embed-preview.js.map +1 -1
  146. package/build/embed/wp-embed-preview.native.js +4 -7
  147. package/build/embed/wp-embed-preview.native.js.map +1 -1
  148. package/build/file/deprecated.js +6 -3
  149. package/build/file/deprecated.js.map +1 -1
  150. package/build/file/edit.js +4 -2
  151. package/build/file/edit.js.map +1 -1
  152. package/build/file/index.js +1 -1
  153. package/build/file/save.js +2 -1
  154. package/build/file/save.js.map +1 -1
  155. package/build/file/view.js +9 -0
  156. package/build/file/view.js.map +1 -0
  157. package/build/footnotes/edit.js +57 -0
  158. package/build/footnotes/edit.js.map +1 -0
  159. package/build/footnotes/format.js +142 -0
  160. package/build/footnotes/format.js.map +1 -0
  161. package/build/footnotes/index.js +67 -0
  162. package/build/footnotes/index.js.map +1 -0
  163. package/build/freeform/edit.js +6 -3
  164. package/build/freeform/edit.js.map +1 -1
  165. package/build/freeform/edit.native.js +2 -4
  166. package/build/freeform/edit.native.js.map +1 -1
  167. package/build/freeform/modal.js +2 -1
  168. package/build/freeform/modal.js.map +1 -1
  169. package/build/gallery/deprecated.js +6 -4
  170. package/build/gallery/deprecated.js.map +1 -1
  171. package/build/gallery/edit-wrapper.js +4 -2
  172. package/build/gallery/edit-wrapper.js.map +1 -1
  173. package/build/gallery/edit.js +16 -13
  174. package/build/gallery/edit.js.map +1 -1
  175. package/build/gallery/gallery.js +2 -4
  176. package/build/gallery/gallery.js.map +1 -1
  177. package/build/gallery/gallery.native.js +3 -2
  178. package/build/gallery/gallery.native.js.map +1 -1
  179. package/build/gallery/index.js +1 -1
  180. package/build/gallery/save.js +2 -1
  181. package/build/gallery/save.js.map +1 -1
  182. package/build/gallery/shared-icon.native.js +4 -5
  183. package/build/gallery/shared-icon.native.js.map +1 -1
  184. package/build/gallery/v1/edit.js +8 -9
  185. package/build/gallery/v1/edit.js.map +1 -1
  186. package/build/gallery/v1/gallery.js +7 -7
  187. package/build/gallery/v1/gallery.js.map +1 -1
  188. package/build/gallery/v1/save.js +4 -3
  189. package/build/gallery/v1/save.js.map +1 -1
  190. package/build/group/deprecated.js +5 -3
  191. package/build/group/deprecated.js.map +1 -1
  192. package/build/group/edit.js +4 -1
  193. package/build/group/edit.js.map +1 -1
  194. package/build/group/index.js +1 -1
  195. package/build/group/placeholder.js +2 -1
  196. package/build/group/placeholder.js.map +1 -1
  197. package/build/group/save.js +2 -1
  198. package/build/group/save.js.map +1 -1
  199. package/build/heading/deprecated.js +8 -6
  200. package/build/heading/deprecated.js.map +1 -1
  201. package/build/heading/edit.js +9 -11
  202. package/build/heading/edit.js.map +1 -1
  203. package/build/heading/save.js +4 -3
  204. package/build/heading/save.js.map +1 -1
  205. package/build/home-link/edit.js +2 -1
  206. package/build/home-link/edit.js.map +1 -1
  207. package/build/home-link/index.js +0 -1
  208. package/build/home-link/index.js.map +1 -1
  209. package/build/html/edit.js +4 -3
  210. package/build/html/edit.js.map +1 -1
  211. package/build/image/deprecated.js +14 -12
  212. package/build/image/deprecated.js.map +1 -1
  213. package/build/image/edit.js +4 -7
  214. package/build/image/edit.js.map +1 -1
  215. package/build/image/edit.native.js +8 -8
  216. package/build/image/edit.native.js.map +1 -1
  217. package/build/image/image.js +109 -49
  218. package/build/image/image.js.map +1 -1
  219. package/build/image/index.js +6 -0
  220. package/build/image/index.js.map +1 -1
  221. package/build/image/interactivity.js +119 -6
  222. package/build/image/interactivity.js.map +1 -1
  223. package/build/image/save.js +10 -4
  224. package/build/image/save.js.map +1 -1
  225. package/build/image/utils.js +18 -0
  226. package/build/image/utils.js.map +1 -1
  227. package/build/index.js +3 -1
  228. package/build/index.js.map +1 -1
  229. package/build/latest-comments/edit.js +2 -1
  230. package/build/latest-comments/edit.js.map +1 -1
  231. package/build/latest-comments/index.js +0 -1
  232. package/build/latest-comments/index.js.map +1 -1
  233. package/build/latest-posts/deprecated.js +0 -1
  234. package/build/latest-posts/deprecated.js.map +1 -1
  235. package/build/latest-posts/edit.js +14 -7
  236. package/build/latest-posts/edit.js.map +1 -1
  237. package/build/latest-posts/edit.native.js +4 -5
  238. package/build/latest-posts/edit.native.js.map +1 -1
  239. package/build/latest-posts/index.js +0 -1
  240. package/build/latest-posts/index.js.map +1 -1
  241. package/build/list/deprecated.js +12 -10
  242. package/build/list/deprecated.js.map +1 -1
  243. package/build/list/edit.js +4 -5
  244. package/build/list/edit.js.map +1 -1
  245. package/build/list/ordered-list-settings.js +25 -1
  246. package/build/list/ordered-list-settings.js.map +1 -1
  247. package/build/list/save.js +6 -5
  248. package/build/list/save.js.map +1 -1
  249. package/build/list/tag-name.js +4 -7
  250. package/build/list/tag-name.js.map +1 -1
  251. package/build/list/tag-name.native.js +4 -7
  252. package/build/list/tag-name.native.js.map +1 -1
  253. package/build/list-item/edit.js +2 -1
  254. package/build/list-item/edit.js.map +1 -1
  255. package/build/list-item/edit.native.js +2 -1
  256. package/build/list-item/edit.native.js.map +1 -1
  257. package/build/list-item/save.js +2 -1
  258. package/build/list-item/save.js.map +1 -1
  259. package/build/{private-apis.js → lock-unlock.js} +1 -1
  260. package/build/lock-unlock.js.map +1 -0
  261. package/build/loginout/edit.js +4 -3
  262. package/build/loginout/edit.js.map +1 -1
  263. package/build/loginout/index.js +0 -1
  264. package/build/loginout/index.js.map +1 -1
  265. package/build/media-text/deprecated.js +43 -33
  266. package/build/media-text/deprecated.js.map +1 -1
  267. package/build/media-text/edit.js +7 -4
  268. package/build/media-text/edit.js.map +1 -1
  269. package/build/media-text/media-container.js +8 -7
  270. package/build/media-text/media-container.js.map +1 -1
  271. package/build/media-text/media-container.native.js +8 -8
  272. package/build/media-text/media-container.native.js.map +1 -1
  273. package/build/media-text/save.js +17 -13
  274. package/build/media-text/save.js.map +1 -1
  275. package/build/missing/edit.js +4 -3
  276. package/build/missing/edit.js.map +1 -1
  277. package/build/more/edit.js +2 -1
  278. package/build/more/edit.js.map +1 -1
  279. package/build/navigation/constants.js +8 -1
  280. package/build/navigation/constants.js.map +1 -1
  281. package/build/navigation/deprecated.js +1 -1
  282. package/build/navigation/deprecated.js.map +1 -1
  283. package/build/navigation/edit/index.js +35 -21
  284. package/build/navigation/edit/index.js.map +1 -1
  285. package/build/navigation/edit/inner-blocks.js +2 -1
  286. package/build/navigation/edit/inner-blocks.js.map +1 -1
  287. package/build/navigation/edit/leaf-more-menu.js +5 -9
  288. package/build/navigation/edit/leaf-more-menu.js.map +1 -1
  289. package/build/navigation/edit/menu-inspector-controls.js +12 -16
  290. package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
  291. package/build/navigation/edit/navigation-menu-selector.js +15 -7
  292. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  293. package/build/navigation/edit/responsive-wrapper.js +2 -1
  294. package/build/navigation/edit/responsive-wrapper.js.map +1 -1
  295. package/build/navigation/edit/unsaved-inner-blocks.js +3 -5
  296. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  297. package/build/navigation/index.js +2 -3
  298. package/build/navigation/index.js.map +1 -1
  299. package/build/navigation/use-navigation-menu.js +9 -7
  300. package/build/navigation/use-navigation-menu.js.map +1 -1
  301. package/build/navigation/view-modal.js +64 -0
  302. package/build/navigation/view-modal.js.map +1 -0
  303. package/build/navigation/view.js +61 -0
  304. package/build/navigation/view.js.map +1 -0
  305. package/build/navigation-link/edit.js +4 -2
  306. package/build/navigation-link/edit.js.map +1 -1
  307. package/build/navigation-submenu/edit.js +4 -2
  308. package/build/navigation-submenu/edit.js.map +1 -1
  309. package/build/nextpage/edit.js +2 -1
  310. package/build/nextpage/edit.js.map +1 -1
  311. package/build/page-list/edit.js +12 -6
  312. package/build/page-list/edit.js.map +1 -1
  313. package/build/page-list/index.js +0 -1
  314. package/build/page-list/index.js.map +1 -1
  315. package/build/page-list-item/edit.js +2 -1
  316. package/build/page-list-item/edit.js.map +1 -1
  317. package/build/paragraph/deprecated.js +5 -4
  318. package/build/paragraph/deprecated.js.map +1 -1
  319. package/build/paragraph/edit.js +4 -6
  320. package/build/paragraph/edit.js.map +1 -1
  321. package/build/paragraph/save.js +5 -4
  322. package/build/paragraph/save.js.map +1 -1
  323. package/build/pattern/edit.js +7 -32
  324. package/build/pattern/edit.js.map +1 -1
  325. package/build/pattern/index.js +3 -11
  326. package/build/pattern/index.js.map +1 -1
  327. package/build/post-author/edit.js +4 -2
  328. package/build/post-author/edit.js.map +1 -1
  329. package/build/post-author/index.js +0 -1
  330. package/build/post-author/index.js.map +1 -1
  331. package/build/post-author-biography/edit.js +2 -4
  332. package/build/post-author-biography/edit.js.map +1 -1
  333. package/build/post-author-biography/index.js +0 -1
  334. package/build/post-author-biography/index.js.map +1 -1
  335. package/build/post-author-name/edit.js +2 -1
  336. package/build/post-author-name/edit.js.map +1 -1
  337. package/build/post-author-name/index.js +0 -1
  338. package/build/post-author-name/index.js.map +1 -1
  339. package/build/post-comment/edit.js +4 -2
  340. package/build/post-comment/edit.js.map +1 -1
  341. package/build/post-comment/save.js +2 -1
  342. package/build/post-comment/save.js.map +1 -1
  343. package/build/post-comments-count/edit.js +2 -4
  344. package/build/post-comments-count/edit.js.map +1 -1
  345. package/build/post-comments-count/index.js +0 -1
  346. package/build/post-comments-count/index.js.map +1 -1
  347. package/build/post-comments-form/edit.js +2 -1
  348. package/build/post-comments-form/edit.js.map +1 -1
  349. package/build/post-comments-form/index.js +0 -1
  350. package/build/post-comments-form/index.js.map +1 -1
  351. package/build/post-comments-link/edit.js +2 -1
  352. package/build/post-comments-link/edit.js.map +1 -1
  353. package/build/post-comments-link/index.js +0 -1
  354. package/build/post-comments-link/index.js.map +1 -1
  355. package/build/post-content/edit.js +11 -10
  356. package/build/post-content/edit.js.map +1 -1
  357. package/build/post-content/index.js +1 -2
  358. package/build/post-content/index.js.map +1 -1
  359. package/build/post-date/edit.js +2 -1
  360. package/build/post-date/edit.js.map +1 -1
  361. package/build/post-date/index.js +0 -1
  362. package/build/post-date/index.js.map +1 -1
  363. package/build/post-excerpt/edit.js +6 -3
  364. package/build/post-excerpt/edit.js.map +1 -1
  365. package/build/post-excerpt/index.js +0 -1
  366. package/build/post-excerpt/index.js.map +1 -1
  367. package/build/post-featured-image/edit.js +4 -2
  368. package/build/post-featured-image/edit.js.map +1 -1
  369. package/build/post-featured-image/index.js +0 -1
  370. package/build/post-featured-image/index.js.map +1 -1
  371. package/build/post-featured-image/overlay.js +4 -5
  372. package/build/post-featured-image/overlay.js.map +1 -1
  373. package/build/post-navigation-link/edit.js +2 -1
  374. package/build/post-navigation-link/edit.js.map +1 -1
  375. package/build/post-navigation-link/index.js +0 -1
  376. package/build/post-navigation-link/index.js.map +1 -1
  377. package/build/post-template/edit.js +14 -9
  378. package/build/post-template/edit.js.map +1 -1
  379. package/build/post-template/index.js +1 -2
  380. package/build/post-template/index.js.map +1 -1
  381. package/build/post-terms/edit.js +4 -8
  382. package/build/post-terms/edit.js.map +1 -1
  383. package/build/post-terms/hooks.js +9 -5
  384. package/build/post-terms/hooks.js.map +1 -1
  385. package/build/post-terms/index.js +0 -1
  386. package/build/post-terms/index.js.map +1 -1
  387. package/build/post-time-to-read/edit.js +2 -1
  388. package/build/post-time-to-read/edit.js.map +1 -1
  389. package/build/post-time-to-read/init.js +16 -0
  390. package/build/post-time-to-read/init.js.map +1 -0
  391. package/build/post-title/edit.js +16 -16
  392. package/build/post-title/edit.js.map +1 -1
  393. package/build/post-title/index.js +0 -1
  394. package/build/post-title/index.js.map +1 -1
  395. package/build/preformatted/edit.js +4 -8
  396. package/build/preformatted/edit.js.map +1 -1
  397. package/build/preformatted/edit.native.js +2 -1
  398. package/build/preformatted/edit.native.js.map +1 -1
  399. package/build/preformatted/save.js +2 -1
  400. package/build/preformatted/save.js.map +1 -1
  401. package/build/pullquote/deprecated.js +10 -8
  402. package/build/pullquote/deprecated.js.map +1 -1
  403. package/build/pullquote/edit.js +2 -1
  404. package/build/pullquote/edit.js.map +1 -1
  405. package/build/pullquote/edit.native.js +2 -1
  406. package/build/pullquote/edit.native.js.map +1 -1
  407. package/build/pullquote/save.js +5 -4
  408. package/build/pullquote/save.js.map +1 -1
  409. package/build/query/deprecated.js +16 -10
  410. package/build/query/deprecated.js.map +1 -1
  411. package/build/query/edit/index.js +2 -4
  412. package/build/query/edit/index.js.map +1 -1
  413. package/build/query/edit/inspector-controls/index.js +4 -3
  414. package/build/query/edit/inspector-controls/index.js.map +1 -1
  415. package/build/query/edit/query-content.js +20 -6
  416. package/build/query/edit/query-content.js.map +1 -1
  417. package/build/query/edit/query-placeholder.js +4 -2
  418. package/build/query/edit/query-placeholder.js.map +1 -1
  419. package/build/query/index.js +1 -2
  420. package/build/query/index.js.map +1 -1
  421. package/build/query/save.js +2 -1
  422. package/build/query/save.js.map +1 -1
  423. package/build/query/utils.js +1 -2
  424. package/build/query/utils.js.map +1 -1
  425. package/build/query-no-results/edit.js +2 -1
  426. package/build/query-no-results/edit.js.map +1 -1
  427. package/build/query-no-results/index.js +0 -1
  428. package/build/query-no-results/index.js.map +1 -1
  429. package/build/query-pagination/deprecated.js +2 -1
  430. package/build/query-pagination/deprecated.js.map +1 -1
  431. package/build/query-pagination/edit.js +2 -1
  432. package/build/query-pagination/edit.js.map +1 -1
  433. package/build/query-pagination/index.js +1 -2
  434. package/build/query-pagination/index.js.map +1 -1
  435. package/build/query-pagination-next/edit.js +4 -7
  436. package/build/query-pagination-next/edit.js.map +1 -1
  437. package/build/query-pagination-next/index.js +0 -1
  438. package/build/query-pagination-next/index.js.map +1 -1
  439. package/build/query-pagination-numbers/edit.js +2 -1
  440. package/build/query-pagination-numbers/edit.js.map +1 -1
  441. package/build/query-pagination-numbers/index.js +1 -2
  442. package/build/query-pagination-numbers/index.js.map +1 -1
  443. package/build/query-pagination-previous/edit.js +4 -7
  444. package/build/query-pagination-previous/edit.js.map +1 -1
  445. package/build/query-pagination-previous/index.js +0 -1
  446. package/build/query-pagination-previous/index.js.map +1 -1
  447. package/build/query-title/edit.js +8 -11
  448. package/build/query-title/edit.js.map +1 -1
  449. package/build/query-title/index.js +0 -1
  450. package/build/query-title/index.js.map +1 -1
  451. package/build/quote/deprecated.js +4 -3
  452. package/build/quote/deprecated.js.map +1 -1
  453. package/build/quote/edit.js +7 -7
  454. package/build/quote/edit.js.map +1 -1
  455. package/build/quote/save.js +4 -3
  456. package/build/quote/save.js.map +1 -1
  457. package/build/read-more/edit.js +4 -7
  458. package/build/read-more/edit.js.map +1 -1
  459. package/build/read-more/index.js +0 -1
  460. package/build/read-more/index.js.map +1 -1
  461. package/build/rss/edit.js +4 -2
  462. package/build/rss/edit.js.map +1 -1
  463. package/build/rss/index.js +0 -1
  464. package/build/rss/index.js.map +1 -1
  465. package/build/search/edit.js +4 -3
  466. package/build/search/edit.js.map +1 -1
  467. package/build/search/edit.native.js +6 -8
  468. package/build/search/edit.native.js.map +1 -1
  469. package/build/search/index.js +0 -1
  470. package/build/search/index.js.map +1 -1
  471. package/build/separator/deprecated.js +5 -4
  472. package/build/separator/deprecated.js.map +1 -1
  473. package/build/separator/edit.js +5 -4
  474. package/build/separator/edit.js.map +1 -1
  475. package/build/separator/save.js +5 -4
  476. package/build/separator/save.js.map +1 -1
  477. package/build/shortcode/edit.js +4 -3
  478. package/build/shortcode/edit.js.map +1 -1
  479. package/build/site-logo/edit.js +10 -10
  480. package/build/site-logo/edit.js.map +1 -1
  481. package/build/site-logo/index.js +0 -1
  482. package/build/site-logo/index.js.map +1 -1
  483. package/build/site-tagline/edit.js +5 -5
  484. package/build/site-tagline/edit.js.map +1 -1
  485. package/build/site-tagline/icon.js +1 -4
  486. package/build/site-tagline/icon.js.map +1 -1
  487. package/build/site-tagline/index.js +0 -1
  488. package/build/site-tagline/index.js.map +1 -1
  489. package/build/site-title/edit/index.js +8 -9
  490. package/build/site-title/edit/index.js.map +1 -1
  491. package/build/site-title/index.js +0 -1
  492. package/build/site-title/index.js.map +1 -1
  493. package/build/social-link/edit.js +2 -1
  494. package/build/social-link/edit.js.map +1 -1
  495. package/build/social-link/index.js +0 -1
  496. package/build/social-link/index.js.map +1 -1
  497. package/build/social-links/deprecated.js +5 -4
  498. package/build/social-links/deprecated.js.map +1 -1
  499. package/build/social-links/edit.js +6 -6
  500. package/build/social-links/edit.js.map +1 -1
  501. package/build/social-links/index.js +1 -1
  502. package/build/social-links/save.js +2 -1
  503. package/build/social-links/save.js.map +1 -1
  504. package/build/spacer/deprecated.js +8 -7
  505. package/build/spacer/deprecated.js.map +1 -1
  506. package/build/spacer/edit.js +10 -10
  507. package/build/spacer/edit.js.map +1 -1
  508. package/build/spacer/edit.native.js +4 -5
  509. package/build/spacer/edit.native.js.map +1 -1
  510. package/build/spacer/save.js +21 -11
  511. package/build/spacer/save.js.map +1 -1
  512. package/build/spacer/save.native.js +8 -7
  513. package/build/spacer/save.native.js.map +1 -1
  514. package/build/table/deprecated.js +4 -2
  515. package/build/table/deprecated.js.map +1 -1
  516. package/build/table/edit.js +6 -4
  517. package/build/table/edit.js.map +1 -1
  518. package/build/table/save.js +2 -1
  519. package/build/table/save.js.map +1 -1
  520. package/build/table-of-contents/edit.js +4 -2
  521. package/build/table-of-contents/edit.js.map +1 -1
  522. package/build/table-of-contents/save.js +2 -1
  523. package/build/table-of-contents/save.js.map +1 -1
  524. package/build/tag-cloud/edit.js +2 -1
  525. package/build/tag-cloud/edit.js.map +1 -1
  526. package/build/tag-cloud/index.js +0 -1
  527. package/build/tag-cloud/index.js.map +1 -1
  528. package/build/template-part/edit/index.js +8 -4
  529. package/build/template-part/edit/index.js.map +1 -1
  530. package/build/template-part/edit/inner-blocks.js +3 -2
  531. package/build/template-part/edit/inner-blocks.js.map +1 -1
  532. package/build/template-part/index.js +0 -1
  533. package/build/template-part/index.js.map +1 -1
  534. package/build/term-description/edit.js +2 -1
  535. package/build/term-description/edit.js.map +1 -1
  536. package/build/term-description/index.js +0 -1
  537. package/build/term-description/index.js.map +1 -1
  538. package/build/text-columns/edit.js +4 -3
  539. package/build/text-columns/edit.js.map +1 -1
  540. package/build/text-columns/save.js +4 -3
  541. package/build/text-columns/save.js.map +1 -1
  542. package/build/utils/interactivity/directives.js +4 -7
  543. package/build/utils/interactivity/directives.js.map +1 -1
  544. package/build/utils/interactivity/index.js +1 -3
  545. package/build/utils/interactivity/index.js.map +1 -1
  546. package/build/utils/migrate-font-family.js +2 -2
  547. package/build/utils/migrate-font-family.js.map +1 -1
  548. package/build/verse/deprecated.js +4 -3
  549. package/build/verse/deprecated.js.map +1 -1
  550. package/build/verse/edit.js +4 -6
  551. package/build/verse/edit.js.map +1 -1
  552. package/build/verse/save.js +4 -3
  553. package/build/verse/save.js.map +1 -1
  554. package/build/video/deprecated.js +2 -1
  555. package/build/video/deprecated.js.map +1 -1
  556. package/build/video/edit.js +4 -2
  557. package/build/video/edit.js.map +1 -1
  558. package/build/video/edit.native.js +8 -8
  559. package/build/video/edit.native.js.map +1 -1
  560. package/build/video/save.js +2 -1
  561. package/build/video/save.js.map +1 -1
  562. package/build/video/tracks.js +4 -7
  563. package/build/video/tracks.js.map +1 -1
  564. package/build-module/archives/edit.js +2 -1
  565. package/build-module/archives/edit.js.map +1 -1
  566. package/build-module/archives/index.js +0 -1
  567. package/build-module/archives/index.js.map +1 -1
  568. package/build-module/audio/edit.js +4 -2
  569. package/build-module/audio/edit.js.map +1 -1
  570. package/build-module/audio/save.js +2 -1
  571. package/build-module/audio/save.js.map +1 -1
  572. package/build-module/avatar/edit.js +6 -3
  573. package/build-module/avatar/edit.js.map +1 -1
  574. package/build-module/avatar/index.js +1 -2
  575. package/build-module/avatar/index.js.map +1 -1
  576. package/build-module/block/edit.js +8 -4
  577. package/build-module/block/edit.js.map +1 -1
  578. package/build-module/block/index.js +1 -1
  579. package/build-module/button/deprecated.js +20 -15
  580. package/build-module/button/deprecated.js.map +1 -1
  581. package/build-module/button/edit.js +2 -3
  582. package/build-module/button/edit.js.map +1 -1
  583. package/build-module/button/save.js +4 -3
  584. package/build-module/button/save.js.map +1 -1
  585. package/build-module/buttons/deprecated.js +6 -5
  586. package/build-module/buttons/deprecated.js.map +1 -1
  587. package/build-module/buttons/edit.js +7 -2
  588. package/build-module/buttons/edit.js.map +1 -1
  589. package/build-module/buttons/edit.native.js +6 -6
  590. package/build-module/buttons/edit.native.js.map +1 -1
  591. package/build-module/buttons/index.js +1 -1
  592. package/build-module/buttons/save.js +2 -1
  593. package/build-module/buttons/save.js.map +1 -1
  594. package/build-module/buttons/transforms.js +1 -1
  595. package/build-module/calendar/edit.js +4 -2
  596. package/build-module/calendar/edit.js.map +1 -1
  597. package/build-module/calendar/index.js +0 -1
  598. package/build-module/calendar/index.js.map +1 -1
  599. package/build-module/categories/edit.js +2 -1
  600. package/build-module/categories/edit.js.map +1 -1
  601. package/build-module/categories/index.js +0 -1
  602. package/build-module/categories/index.js.map +1 -1
  603. package/build-module/code/edit.js +2 -1
  604. package/build-module/code/edit.js.map +1 -1
  605. package/build-module/code/save.js +2 -1
  606. package/build-module/code/save.js.map +1 -1
  607. package/build-module/column/edit.js +2 -1
  608. package/build-module/column/edit.js.map +1 -1
  609. package/build-module/column/edit.native.js +2 -1
  610. package/build-module/column/edit.native.js.map +1 -1
  611. package/build-module/column/index.js +1 -1
  612. package/build-module/column/save.js +2 -1
  613. package/build-module/column/save.js.map +1 -1
  614. package/build-module/columns/edit.js +6 -3
  615. package/build-module/columns/edit.js.map +1 -1
  616. package/build-module/columns/edit.native.js +4 -4
  617. package/build-module/columns/edit.native.js.map +1 -1
  618. package/build-module/columns/index.js +1 -1
  619. package/build-module/columns/save.js +2 -1
  620. package/build-module/columns/save.js.map +1 -1
  621. package/build-module/comment-author-avatar/edit.js +6 -5
  622. package/build-module/comment-author-avatar/edit.js.map +1 -1
  623. package/build-module/comment-author-avatar/index.js +0 -1
  624. package/build-module/comment-author-avatar/index.js.map +1 -1
  625. package/build-module/comment-author-name/edit.js +2 -1
  626. package/build-module/comment-author-name/edit.js.map +1 -1
  627. package/build-module/comment-author-name/index.js +0 -1
  628. package/build-module/comment-author-name/index.js.map +1 -1
  629. package/build-module/comment-content/edit.js +4 -2
  630. package/build-module/comment-content/edit.js.map +1 -1
  631. package/build-module/comment-content/index.js +0 -1
  632. package/build-module/comment-content/index.js.map +1 -1
  633. package/build-module/comment-date/edit.js +2 -1
  634. package/build-module/comment-date/edit.js.map +1 -1
  635. package/build-module/comment-date/index.js +0 -1
  636. package/build-module/comment-date/index.js.map +1 -1
  637. package/build-module/comment-edit-link/edit.js +2 -1
  638. package/build-module/comment-edit-link/edit.js.map +1 -1
  639. package/build-module/comment-edit-link/index.js +0 -1
  640. package/build-module/comment-edit-link/index.js.map +1 -1
  641. package/build-module/comment-reply-link/edit.js +2 -1
  642. package/build-module/comment-reply-link/edit.js.map +1 -1
  643. package/build-module/comment-reply-link/index.js +0 -1
  644. package/build-module/comment-reply-link/index.js.map +1 -1
  645. package/build-module/comment-template/edit.js +10 -7
  646. package/build-module/comment-template/edit.js.map +1 -1
  647. package/build-module/comment-template/index.js +0 -1
  648. package/build-module/comment-template/index.js.map +1 -1
  649. package/build-module/comments/deprecated.js +2 -1
  650. package/build-module/comments/deprecated.js.map +1 -1
  651. package/build-module/comments/edit/comments-legacy.js +2 -1
  652. package/build-module/comments/edit/comments-legacy.js.map +1 -1
  653. package/build-module/comments/edit/index.js +4 -2
  654. package/build-module/comments/edit/index.js.map +1 -1
  655. package/build-module/comments/index.js +0 -1
  656. package/build-module/comments/index.js.map +1 -1
  657. package/build-module/comments/save.js +2 -1
  658. package/build-module/comments/save.js.map +1 -1
  659. package/build-module/comments-pagination/edit.js +2 -1
  660. package/build-module/comments-pagination/edit.js.map +1 -1
  661. package/build-module/comments-pagination/index.js +1 -2
  662. package/build-module/comments-pagination/index.js.map +1 -1
  663. package/build-module/comments-pagination-next/edit.js +4 -4
  664. package/build-module/comments-pagination-next/edit.js.map +1 -1
  665. package/build-module/comments-pagination-next/index.js +0 -1
  666. package/build-module/comments-pagination-next/index.js.map +1 -1
  667. package/build-module/comments-pagination-numbers/edit.js +2 -1
  668. package/build-module/comments-pagination-numbers/edit.js.map +1 -1
  669. package/build-module/comments-pagination-numbers/index.js +0 -1
  670. package/build-module/comments-pagination-numbers/index.js.map +1 -1
  671. package/build-module/comments-pagination-previous/edit.js +4 -4
  672. package/build-module/comments-pagination-previous/edit.js.map +1 -1
  673. package/build-module/comments-pagination-previous/index.js +0 -1
  674. package/build-module/comments-pagination-previous/index.js.map +1 -1
  675. package/build-module/comments-title/edit.js +4 -8
  676. package/build-module/comments-title/edit.js.map +1 -1
  677. package/build-module/cover/deprecated.js +46 -36
  678. package/build-module/cover/deprecated.js.map +1 -1
  679. package/build-module/cover/edit/index.js +8 -6
  680. package/build-module/cover/edit/index.js.map +1 -1
  681. package/build-module/cover/edit/inspector-controls.js +4 -4
  682. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  683. package/build-module/cover/edit/resizable-cover-popover.js +5 -5
  684. package/build-module/cover/edit/resizable-cover-popover.js.map +1 -1
  685. package/build-module/cover/edit.native.js +12 -10
  686. package/build-module/cover/edit.native.js.map +1 -1
  687. package/build-module/cover/index.js +1 -1
  688. package/build-module/cover/save.js +9 -7
  689. package/build-module/cover/save.js.map +1 -1
  690. package/build-module/cover/transforms.js +1 -1
  691. package/build-module/cover/transforms.js.map +1 -1
  692. package/build-module/details/edit.js +3 -4
  693. package/build-module/details/edit.js.map +1 -1
  694. package/build-module/details/index.js +1 -1
  695. package/build-module/details/init.js +6 -0
  696. package/build-module/details/init.js.map +1 -0
  697. package/build-module/details/save.js +2 -3
  698. package/build-module/details/save.js.map +1 -1
  699. package/build-module/embed/deprecated.js +4 -3
  700. package/build-module/embed/deprecated.js.map +1 -1
  701. package/build-module/embed/edit.js +6 -3
  702. package/build-module/embed/edit.js.map +1 -1
  703. package/build-module/embed/edit.native.js +6 -3
  704. package/build-module/embed/edit.native.js.map +1 -1
  705. package/build-module/embed/save.js +4 -3
  706. package/build-module/embed/save.js.map +1 -1
  707. package/build-module/embed/wp-embed-preview.js +4 -4
  708. package/build-module/embed/wp-embed-preview.js.map +1 -1
  709. package/build-module/embed/wp-embed-preview.native.js +4 -4
  710. package/build-module/embed/wp-embed-preview.native.js.map +1 -1
  711. package/build-module/file/deprecated.js +6 -3
  712. package/build-module/file/deprecated.js.map +1 -1
  713. package/build-module/file/edit.js +4 -2
  714. package/build-module/file/edit.js.map +1 -1
  715. package/build-module/file/index.js +1 -1
  716. package/build-module/file/save.js +2 -1
  717. package/build-module/file/save.js.map +1 -1
  718. package/build-module/file/view.js +6 -0
  719. package/build-module/file/view.js.map +1 -0
  720. package/build-module/footnotes/edit.js +48 -0
  721. package/build-module/footnotes/edit.js.map +1 -0
  722. package/build-module/footnotes/format.js +126 -0
  723. package/build-module/footnotes/format.js.map +1 -0
  724. package/build-module/footnotes/index.js +48 -0
  725. package/build-module/footnotes/index.js.map +1 -0
  726. package/build-module/freeform/edit.js +6 -3
  727. package/build-module/freeform/edit.js.map +1 -1
  728. package/build-module/freeform/edit.native.js +2 -3
  729. package/build-module/freeform/edit.native.js.map +1 -1
  730. package/build-module/freeform/modal.js +2 -1
  731. package/build-module/freeform/modal.js.map +1 -1
  732. package/build-module/gallery/deprecated.js +6 -4
  733. package/build-module/gallery/deprecated.js.map +1 -1
  734. package/build-module/gallery/edit-wrapper.js +4 -2
  735. package/build-module/gallery/edit-wrapper.js.map +1 -1
  736. package/build-module/gallery/edit.js +16 -12
  737. package/build-module/gallery/edit.js.map +1 -1
  738. package/build-module/gallery/gallery.js +2 -3
  739. package/build-module/gallery/gallery.js.map +1 -1
  740. package/build-module/gallery/gallery.native.js +3 -2
  741. package/build-module/gallery/gallery.native.js.map +1 -1
  742. package/build-module/gallery/index.js +1 -1
  743. package/build-module/gallery/save.js +2 -1
  744. package/build-module/gallery/save.js.map +1 -1
  745. package/build-module/gallery/shared-icon.native.js +4 -4
  746. package/build-module/gallery/shared-icon.native.js.map +1 -1
  747. package/build-module/gallery/v1/edit.js +8 -8
  748. package/build-module/gallery/v1/edit.js.map +1 -1
  749. package/build-module/gallery/v1/gallery.js +7 -6
  750. package/build-module/gallery/v1/gallery.js.map +1 -1
  751. package/build-module/gallery/v1/save.js +4 -3
  752. package/build-module/gallery/v1/save.js.map +1 -1
  753. package/build-module/group/deprecated.js +5 -3
  754. package/build-module/group/deprecated.js.map +1 -1
  755. package/build-module/group/edit.js +4 -1
  756. package/build-module/group/edit.js.map +1 -1
  757. package/build-module/group/index.js +1 -1
  758. package/build-module/group/placeholder.js +2 -1
  759. package/build-module/group/placeholder.js.map +1 -1
  760. package/build-module/group/save.js +2 -1
  761. package/build-module/group/save.js.map +1 -1
  762. package/build-module/heading/deprecated.js +8 -6
  763. package/build-module/heading/deprecated.js.map +1 -1
  764. package/build-module/heading/edit.js +9 -9
  765. package/build-module/heading/edit.js.map +1 -1
  766. package/build-module/heading/save.js +4 -3
  767. package/build-module/heading/save.js.map +1 -1
  768. package/build-module/home-link/edit.js +2 -1
  769. package/build-module/home-link/edit.js.map +1 -1
  770. package/build-module/home-link/index.js +0 -1
  771. package/build-module/home-link/index.js.map +1 -1
  772. package/build-module/html/edit.js +4 -3
  773. package/build-module/html/edit.js.map +1 -1
  774. package/build-module/image/deprecated.js +14 -11
  775. package/build-module/image/deprecated.js.map +1 -1
  776. package/build-module/image/edit.js +3 -6
  777. package/build-module/image/edit.js.map +1 -1
  778. package/build-module/image/edit.native.js +8 -7
  779. package/build-module/image/edit.native.js.map +1 -1
  780. package/build-module/image/image.js +109 -52
  781. package/build-module/image/image.js.map +1 -1
  782. package/build-module/image/index.js +6 -0
  783. package/build-module/image/index.js.map +1 -1
  784. package/build-module/image/interactivity.js +119 -6
  785. package/build-module/image/interactivity.js.map +1 -1
  786. package/build-module/image/save.js +10 -4
  787. package/build-module/image/save.js.map +1 -1
  788. package/build-module/image/utils.js +16 -0
  789. package/build-module/image/utils.js.map +1 -1
  790. package/build-module/index.js +2 -1
  791. package/build-module/index.js.map +1 -1
  792. package/build-module/latest-comments/edit.js +2 -1
  793. package/build-module/latest-comments/edit.js.map +1 -1
  794. package/build-module/latest-comments/index.js +0 -1
  795. package/build-module/latest-comments/index.js.map +1 -1
  796. package/build-module/latest-posts/deprecated.js +0 -1
  797. package/build-module/latest-posts/deprecated.js.map +1 -1
  798. package/build-module/latest-posts/edit.js +15 -7
  799. package/build-module/latest-posts/edit.js.map +1 -1
  800. package/build-module/latest-posts/edit.native.js +4 -4
  801. package/build-module/latest-posts/edit.native.js.map +1 -1
  802. package/build-module/latest-posts/index.js +0 -1
  803. package/build-module/latest-posts/index.js.map +1 -1
  804. package/build-module/list/deprecated.js +12 -10
  805. package/build-module/list/deprecated.js.map +1 -1
  806. package/build-module/list/edit.js +4 -4
  807. package/build-module/list/edit.js.map +1 -1
  808. package/build-module/list/ordered-list-settings.js +26 -2
  809. package/build-module/list/ordered-list-settings.js.map +1 -1
  810. package/build-module/list/save.js +6 -5
  811. package/build-module/list/save.js.map +1 -1
  812. package/build-module/list/tag-name.js +4 -4
  813. package/build-module/list/tag-name.js.map +1 -1
  814. package/build-module/list/tag-name.native.js +4 -4
  815. package/build-module/list/tag-name.native.js.map +1 -1
  816. package/build-module/list-item/edit.js +2 -1
  817. package/build-module/list-item/edit.js.map +1 -1
  818. package/build-module/list-item/edit.native.js +2 -1
  819. package/build-module/list-item/edit.native.js.map +1 -1
  820. package/build-module/list-item/save.js +2 -1
  821. package/build-module/list-item/save.js.map +1 -1
  822. package/build-module/{private-apis.js → lock-unlock.js} +1 -1
  823. package/build-module/lock-unlock.js.map +1 -0
  824. package/build-module/loginout/edit.js +4 -3
  825. package/build-module/loginout/edit.js.map +1 -1
  826. package/build-module/loginout/index.js +0 -1
  827. package/build-module/loginout/index.js.map +1 -1
  828. package/build-module/media-text/deprecated.js +43 -33
  829. package/build-module/media-text/deprecated.js.map +1 -1
  830. package/build-module/media-text/edit.js +6 -3
  831. package/build-module/media-text/edit.js.map +1 -1
  832. package/build-module/media-text/media-container.js +8 -6
  833. package/build-module/media-text/media-container.js.map +1 -1
  834. package/build-module/media-text/media-container.native.js +8 -7
  835. package/build-module/media-text/media-container.native.js.map +1 -1
  836. package/build-module/media-text/save.js +17 -13
  837. package/build-module/media-text/save.js.map +1 -1
  838. package/build-module/missing/edit.js +4 -3
  839. package/build-module/missing/edit.js.map +1 -1
  840. package/build-module/more/edit.js +2 -1
  841. package/build-module/more/edit.js.map +1 -1
  842. package/build-module/navigation/constants.js +6 -0
  843. package/build-module/navigation/constants.js.map +1 -1
  844. package/build-module/navigation/deprecated.js +1 -1
  845. package/build-module/navigation/deprecated.js.map +1 -1
  846. package/build-module/navigation/edit/index.js +34 -21
  847. package/build-module/navigation/edit/index.js.map +1 -1
  848. package/build-module/navigation/edit/inner-blocks.js +2 -1
  849. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  850. package/build-module/navigation/edit/leaf-more-menu.js +5 -6
  851. package/build-module/navigation/edit/leaf-more-menu.js.map +1 -1
  852. package/build-module/navigation/edit/menu-inspector-controls.js +12 -16
  853. package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
  854. package/build-module/navigation/edit/navigation-menu-selector.js +15 -7
  855. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  856. package/build-module/navigation/edit/responsive-wrapper.js +2 -1
  857. package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
  858. package/build-module/navigation/edit/unsaved-inner-blocks.js +4 -6
  859. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  860. package/build-module/navigation/index.js +2 -3
  861. package/build-module/navigation/index.js.map +1 -1
  862. package/build-module/navigation/use-navigation-menu.js +8 -7
  863. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  864. package/build-module/navigation/view-modal.js +58 -0
  865. package/build-module/navigation/view-modal.js.map +1 -0
  866. package/build-module/navigation/view.js +59 -0
  867. package/build-module/navigation/view.js.map +1 -0
  868. package/build-module/navigation-link/edit.js +4 -2
  869. package/build-module/navigation-link/edit.js.map +1 -1
  870. package/build-module/navigation-submenu/edit.js +4 -2
  871. package/build-module/navigation-submenu/edit.js.map +1 -1
  872. package/build-module/nextpage/edit.js +2 -1
  873. package/build-module/nextpage/edit.js.map +1 -1
  874. package/build-module/page-list/edit.js +12 -6
  875. package/build-module/page-list/edit.js.map +1 -1
  876. package/build-module/page-list/index.js +0 -1
  877. package/build-module/page-list/index.js.map +1 -1
  878. package/build-module/page-list-item/edit.js +2 -1
  879. package/build-module/page-list-item/edit.js.map +1 -1
  880. package/build-module/paragraph/deprecated.js +5 -4
  881. package/build-module/paragraph/deprecated.js.map +1 -1
  882. package/build-module/paragraph/edit.js +4 -5
  883. package/build-module/paragraph/edit.js.map +1 -1
  884. package/build-module/paragraph/save.js +5 -4
  885. package/build-module/paragraph/save.js.map +1 -1
  886. package/build-module/pattern/edit.js +8 -33
  887. package/build-module/pattern/edit.js.map +1 -1
  888. package/build-module/pattern/index.js +4 -11
  889. package/build-module/pattern/index.js.map +1 -1
  890. package/build-module/post-author/edit.js +4 -2
  891. package/build-module/post-author/edit.js.map +1 -1
  892. package/build-module/post-author/index.js +0 -1
  893. package/build-module/post-author/index.js.map +1 -1
  894. package/build-module/post-author-biography/edit.js +2 -3
  895. package/build-module/post-author-biography/edit.js.map +1 -1
  896. package/build-module/post-author-biography/index.js +0 -1
  897. package/build-module/post-author-biography/index.js.map +1 -1
  898. package/build-module/post-author-name/edit.js +2 -1
  899. package/build-module/post-author-name/edit.js.map +1 -1
  900. package/build-module/post-author-name/index.js +0 -1
  901. package/build-module/post-author-name/index.js.map +1 -1
  902. package/build-module/post-comment/edit.js +4 -2
  903. package/build-module/post-comment/edit.js.map +1 -1
  904. package/build-module/post-comment/save.js +2 -1
  905. package/build-module/post-comment/save.js.map +1 -1
  906. package/build-module/post-comments-count/edit.js +2 -3
  907. package/build-module/post-comments-count/edit.js.map +1 -1
  908. package/build-module/post-comments-count/index.js +0 -1
  909. package/build-module/post-comments-count/index.js.map +1 -1
  910. package/build-module/post-comments-form/edit.js +2 -1
  911. package/build-module/post-comments-form/edit.js.map +1 -1
  912. package/build-module/post-comments-form/index.js +0 -1
  913. package/build-module/post-comments-form/index.js.map +1 -1
  914. package/build-module/post-comments-link/edit.js +2 -1
  915. package/build-module/post-comments-link/edit.js.map +1 -1
  916. package/build-module/post-comments-link/index.js +0 -1
  917. package/build-module/post-comments-link/index.js.map +1 -1
  918. package/build-module/post-content/edit.js +11 -7
  919. package/build-module/post-content/edit.js.map +1 -1
  920. package/build-module/post-content/index.js +1 -2
  921. package/build-module/post-content/index.js.map +1 -1
  922. package/build-module/post-date/edit.js +2 -1
  923. package/build-module/post-date/edit.js.map +1 -1
  924. package/build-module/post-date/index.js +0 -1
  925. package/build-module/post-date/index.js.map +1 -1
  926. package/build-module/post-excerpt/edit.js +6 -3
  927. package/build-module/post-excerpt/edit.js.map +1 -1
  928. package/build-module/post-excerpt/index.js +0 -1
  929. package/build-module/post-excerpt/index.js.map +1 -1
  930. package/build-module/post-featured-image/edit.js +4 -2
  931. package/build-module/post-featured-image/edit.js.map +1 -1
  932. package/build-module/post-featured-image/index.js +0 -1
  933. package/build-module/post-featured-image/index.js.map +1 -1
  934. package/build-module/post-featured-image/overlay.js +4 -4
  935. package/build-module/post-featured-image/overlay.js.map +1 -1
  936. package/build-module/post-navigation-link/edit.js +2 -1
  937. package/build-module/post-navigation-link/edit.js.map +1 -1
  938. package/build-module/post-navigation-link/index.js +0 -1
  939. package/build-module/post-navigation-link/index.js.map +1 -1
  940. package/build-module/post-template/edit.js +14 -8
  941. package/build-module/post-template/edit.js.map +1 -1
  942. package/build-module/post-template/index.js +1 -2
  943. package/build-module/post-template/index.js.map +1 -1
  944. package/build-module/post-terms/edit.js +4 -8
  945. package/build-module/post-terms/edit.js.map +1 -1
  946. package/build-module/post-terms/hooks.js +9 -5
  947. package/build-module/post-terms/hooks.js.map +1 -1
  948. package/build-module/post-terms/index.js +0 -1
  949. package/build-module/post-terms/index.js.map +1 -1
  950. package/build-module/post-time-to-read/edit.js +2 -1
  951. package/build-module/post-time-to-read/edit.js.map +1 -1
  952. package/build-module/post-time-to-read/init.js +6 -0
  953. package/build-module/post-time-to-read/init.js.map +1 -0
  954. package/build-module/post-title/edit.js +15 -13
  955. package/build-module/post-title/edit.js.map +1 -1
  956. package/build-module/post-title/index.js +0 -1
  957. package/build-module/post-title/index.js.map +1 -1
  958. package/build-module/preformatted/edit.js +4 -5
  959. package/build-module/preformatted/edit.js.map +1 -1
  960. package/build-module/preformatted/edit.native.js +2 -1
  961. package/build-module/preformatted/edit.native.js.map +1 -1
  962. package/build-module/preformatted/save.js +2 -1
  963. package/build-module/preformatted/save.js.map +1 -1
  964. package/build-module/pullquote/deprecated.js +10 -8
  965. package/build-module/pullquote/deprecated.js.map +1 -1
  966. package/build-module/pullquote/edit.js +2 -1
  967. package/build-module/pullquote/edit.js.map +1 -1
  968. package/build-module/pullquote/edit.native.js +2 -1
  969. package/build-module/pullquote/edit.native.js.map +1 -1
  970. package/build-module/pullquote/save.js +5 -4
  971. package/build-module/pullquote/save.js.map +1 -1
  972. package/build-module/query/deprecated.js +15 -9
  973. package/build-module/query/deprecated.js.map +1 -1
  974. package/build-module/query/edit/index.js +2 -3
  975. package/build-module/query/edit/index.js.map +1 -1
  976. package/build-module/query/edit/inspector-controls/index.js +3 -2
  977. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  978. package/build-module/query/edit/query-content.js +19 -6
  979. package/build-module/query/edit/query-content.js.map +1 -1
  980. package/build-module/query/edit/query-placeholder.js +4 -2
  981. package/build-module/query/edit/query-placeholder.js.map +1 -1
  982. package/build-module/query/index.js +1 -2
  983. package/build-module/query/index.js.map +1 -1
  984. package/build-module/query/save.js +2 -1
  985. package/build-module/query/save.js.map +1 -1
  986. package/build-module/query/utils.js +1 -2
  987. package/build-module/query/utils.js.map +1 -1
  988. package/build-module/query-no-results/edit.js +2 -1
  989. package/build-module/query-no-results/edit.js.map +1 -1
  990. package/build-module/query-no-results/index.js +0 -1
  991. package/build-module/query-no-results/index.js.map +1 -1
  992. package/build-module/query-pagination/deprecated.js +2 -1
  993. package/build-module/query-pagination/deprecated.js.map +1 -1
  994. package/build-module/query-pagination/edit.js +2 -1
  995. package/build-module/query-pagination/edit.js.map +1 -1
  996. package/build-module/query-pagination/index.js +1 -2
  997. package/build-module/query-pagination/index.js.map +1 -1
  998. package/build-module/query-pagination-next/edit.js +4 -4
  999. package/build-module/query-pagination-next/edit.js.map +1 -1
  1000. package/build-module/query-pagination-next/index.js +0 -1
  1001. package/build-module/query-pagination-next/index.js.map +1 -1
  1002. package/build-module/query-pagination-numbers/edit.js +2 -1
  1003. package/build-module/query-pagination-numbers/edit.js.map +1 -1
  1004. package/build-module/query-pagination-numbers/index.js +1 -2
  1005. package/build-module/query-pagination-numbers/index.js.map +1 -1
  1006. package/build-module/query-pagination-previous/edit.js +4 -4
  1007. package/build-module/query-pagination-previous/edit.js.map +1 -1
  1008. package/build-module/query-pagination-previous/index.js +0 -1
  1009. package/build-module/query-pagination-previous/index.js.map +1 -1
  1010. package/build-module/query-title/edit.js +8 -10
  1011. package/build-module/query-title/edit.js.map +1 -1
  1012. package/build-module/query-title/index.js +0 -1
  1013. package/build-module/query-title/index.js.map +1 -1
  1014. package/build-module/quote/deprecated.js +4 -3
  1015. package/build-module/quote/deprecated.js.map +1 -1
  1016. package/build-module/quote/edit.js +7 -6
  1017. package/build-module/quote/edit.js.map +1 -1
  1018. package/build-module/quote/save.js +4 -3
  1019. package/build-module/quote/save.js.map +1 -1
  1020. package/build-module/read-more/edit.js +4 -4
  1021. package/build-module/read-more/edit.js.map +1 -1
  1022. package/build-module/read-more/index.js +0 -1
  1023. package/build-module/read-more/index.js.map +1 -1
  1024. package/build-module/rss/edit.js +4 -2
  1025. package/build-module/rss/edit.js.map +1 -1
  1026. package/build-module/rss/index.js +0 -1
  1027. package/build-module/rss/index.js.map +1 -1
  1028. package/build-module/search/edit.js +4 -3
  1029. package/build-module/search/edit.js.map +1 -1
  1030. package/build-module/search/edit.native.js +6 -7
  1031. package/build-module/search/edit.native.js.map +1 -1
  1032. package/build-module/search/index.js +0 -1
  1033. package/build-module/search/index.js.map +1 -1
  1034. package/build-module/separator/deprecated.js +5 -4
  1035. package/build-module/separator/deprecated.js.map +1 -1
  1036. package/build-module/separator/edit.js +5 -4
  1037. package/build-module/separator/edit.js.map +1 -1
  1038. package/build-module/separator/save.js +5 -4
  1039. package/build-module/separator/save.js.map +1 -1
  1040. package/build-module/shortcode/edit.js +4 -3
  1041. package/build-module/shortcode/edit.js.map +1 -1
  1042. package/build-module/site-logo/edit.js +10 -9
  1043. package/build-module/site-logo/edit.js.map +1 -1
  1044. package/build-module/site-logo/index.js +0 -1
  1045. package/build-module/site-logo/index.js.map +1 -1
  1046. package/build-module/site-tagline/edit.js +5 -4
  1047. package/build-module/site-tagline/edit.js.map +1 -1
  1048. package/build-module/site-tagline/icon.js +1 -4
  1049. package/build-module/site-tagline/icon.js.map +1 -1
  1050. package/build-module/site-tagline/index.js +0 -1
  1051. package/build-module/site-tagline/index.js.map +1 -1
  1052. package/build-module/site-title/edit/index.js +9 -10
  1053. package/build-module/site-title/edit/index.js.map +1 -1
  1054. package/build-module/site-title/index.js +0 -1
  1055. package/build-module/site-title/index.js.map +1 -1
  1056. package/build-module/social-link/edit.js +2 -1
  1057. package/build-module/social-link/edit.js.map +1 -1
  1058. package/build-module/social-link/index.js +0 -1
  1059. package/build-module/social-link/index.js.map +1 -1
  1060. package/build-module/social-links/deprecated.js +5 -4
  1061. package/build-module/social-links/deprecated.js.map +1 -1
  1062. package/build-module/social-links/edit.js +6 -5
  1063. package/build-module/social-links/edit.js.map +1 -1
  1064. package/build-module/social-links/index.js +1 -1
  1065. package/build-module/social-links/save.js +2 -1
  1066. package/build-module/social-links/save.js.map +1 -1
  1067. package/build-module/spacer/deprecated.js +8 -7
  1068. package/build-module/spacer/deprecated.js.map +1 -1
  1069. package/build-module/spacer/edit.js +10 -9
  1070. package/build-module/spacer/edit.js.map +1 -1
  1071. package/build-module/spacer/edit.native.js +4 -4
  1072. package/build-module/spacer/edit.native.js.map +1 -1
  1073. package/build-module/spacer/save.js +21 -11
  1074. package/build-module/spacer/save.js.map +1 -1
  1075. package/build-module/spacer/save.native.js +8 -7
  1076. package/build-module/spacer/save.native.js.map +1 -1
  1077. package/build-module/table/deprecated.js +4 -2
  1078. package/build-module/table/deprecated.js.map +1 -1
  1079. package/build-module/table/edit.js +6 -4
  1080. package/build-module/table/edit.js.map +1 -1
  1081. package/build-module/table/save.js +2 -1
  1082. package/build-module/table/save.js.map +1 -1
  1083. package/build-module/table-of-contents/edit.js +4 -2
  1084. package/build-module/table-of-contents/edit.js.map +1 -1
  1085. package/build-module/table-of-contents/save.js +2 -1
  1086. package/build-module/table-of-contents/save.js.map +1 -1
  1087. package/build-module/tag-cloud/edit.js +2 -1
  1088. package/build-module/tag-cloud/edit.js.map +1 -1
  1089. package/build-module/tag-cloud/index.js +0 -1
  1090. package/build-module/tag-cloud/index.js.map +1 -1
  1091. package/build-module/template-part/edit/index.js +8 -4
  1092. package/build-module/template-part/edit/index.js.map +1 -1
  1093. package/build-module/template-part/edit/inner-blocks.js +3 -2
  1094. package/build-module/template-part/edit/inner-blocks.js.map +1 -1
  1095. package/build-module/template-part/index.js +0 -1
  1096. package/build-module/template-part/index.js.map +1 -1
  1097. package/build-module/term-description/edit.js +2 -1
  1098. package/build-module/term-description/edit.js.map +1 -1
  1099. package/build-module/term-description/index.js +0 -1
  1100. package/build-module/term-description/index.js.map +1 -1
  1101. package/build-module/text-columns/edit.js +4 -3
  1102. package/build-module/text-columns/edit.js.map +1 -1
  1103. package/build-module/text-columns/save.js +4 -3
  1104. package/build-module/text-columns/save.js.map +1 -1
  1105. package/build-module/utils/interactivity/directives.js +4 -4
  1106. package/build-module/utils/interactivity/directives.js.map +1 -1
  1107. package/build-module/utils/interactivity/index.js +1 -3
  1108. package/build-module/utils/interactivity/index.js.map +1 -1
  1109. package/build-module/utils/migrate-font-family.js +1 -1
  1110. package/build-module/utils/migrate-font-family.js.map +1 -1
  1111. package/build-module/verse/deprecated.js +4 -3
  1112. package/build-module/verse/deprecated.js.map +1 -1
  1113. package/build-module/verse/edit.js +4 -5
  1114. package/build-module/verse/edit.js.map +1 -1
  1115. package/build-module/verse/save.js +4 -3
  1116. package/build-module/verse/save.js.map +1 -1
  1117. package/build-module/video/deprecated.js +2 -1
  1118. package/build-module/video/deprecated.js.map +1 -1
  1119. package/build-module/video/edit.js +4 -2
  1120. package/build-module/video/edit.js.map +1 -1
  1121. package/build-module/video/edit.native.js +8 -7
  1122. package/build-module/video/edit.native.js.map +1 -1
  1123. package/build-module/video/save.js +2 -1
  1124. package/build-module/video/save.js.map +1 -1
  1125. package/build-module/video/tracks.js +4 -4
  1126. package/build-module/video/tracks.js.map +1 -1
  1127. package/build-style/avatar/style-rtl.css +1 -0
  1128. package/build-style/avatar/style.css +1 -0
  1129. package/build-style/editor-rtl.css +0 -17
  1130. package/build-style/editor.css +0 -17
  1131. package/build-style/footnotes/style-rtl.css +106 -0
  1132. package/build-style/footnotes/style.css +106 -0
  1133. package/build-style/image/style-rtl.css +71 -11
  1134. package/build-style/image/style.css +71 -11
  1135. package/build-style/navigation/editor-rtl.css +0 -17
  1136. package/build-style/navigation/editor.css +0 -17
  1137. package/build-style/style-rtl.css +91 -12
  1138. package/build-style/style.css +91 -12
  1139. package/package.json +33 -32
  1140. package/src/archives/block.json +0 -1
  1141. package/src/avatar/block.json +1 -2
  1142. package/src/avatar/style.scss +1 -0
  1143. package/src/block/block.json +1 -1
  1144. package/src/block/edit.js +1 -0
  1145. package/src/block/test/__snapshots__/transforms.native.js.snap +2 -2
  1146. package/src/block/test/edit.native.js +5 -7
  1147. package/src/block/test/transforms.native.js +1 -1
  1148. package/src/buttons/block.json +1 -1
  1149. package/src/buttons/edit.js +2 -2
  1150. package/src/buttons/edit.native.js +7 -6
  1151. package/src/buttons/test/__snapshots__/edit.native.js.snap +6 -0
  1152. package/src/buttons/test/edit.native.js +30 -2
  1153. package/src/calendar/block.json +0 -1
  1154. package/src/categories/block.json +0 -1
  1155. package/src/column/block.json +1 -1
  1156. package/src/columns/block.json +1 -1
  1157. package/src/columns/test/edit.native.js +36 -32
  1158. package/src/comment-author-avatar/block.json +0 -1
  1159. package/src/comment-author-name/block.json +0 -1
  1160. package/src/comment-content/block.json +0 -1
  1161. package/src/comment-date/block.json +0 -1
  1162. package/src/comment-edit-link/block.json +0 -1
  1163. package/src/comment-reply-link/block.json +0 -1
  1164. package/src/comment-template/block.json +0 -1
  1165. package/src/comments/block.json +0 -1
  1166. package/src/comments-pagination/block.json +1 -2
  1167. package/src/comments-pagination-next/block.json +0 -1
  1168. package/src/comments-pagination-numbers/block.json +0 -1
  1169. package/src/comments-pagination-previous/block.json +0 -1
  1170. package/src/comments-title/edit.js +2 -6
  1171. package/src/cover/block.json +1 -1
  1172. package/src/cover/edit/resizable-cover-popover.js +1 -1
  1173. package/src/cover/test/edit.native.js +45 -31
  1174. package/src/cover/transforms.js +1 -1
  1175. package/src/details/block.json +1 -1
  1176. package/src/details/edit.js +12 -9
  1177. package/src/details/init.js +6 -0
  1178. package/src/embed/test/index.native.js +38 -44
  1179. package/src/file/block.json +1 -1
  1180. package/src/file/index.php +18 -1
  1181. package/src/file/view.js +9 -0
  1182. package/src/footnotes/block.json +18 -0
  1183. package/src/footnotes/edit.js +52 -0
  1184. package/src/footnotes/format.js +112 -0
  1185. package/src/footnotes/index.js +29 -0
  1186. package/src/footnotes/index.php +78 -0
  1187. package/src/footnotes/style.scss +18 -0
  1188. package/src/gallery/block.json +1 -1
  1189. package/src/gallery/edit.js +4 -1
  1190. package/src/gallery/gallery.native.js +1 -1
  1191. package/src/gallery/test/__snapshots__/index.native.js.snap +6 -0
  1192. package/src/gallery/test/index.native.js +23 -1
  1193. package/src/group/block.json +1 -1
  1194. package/src/group/deprecated.js +1 -1
  1195. package/src/group/test/edit.native.js +2 -4
  1196. package/src/heading/edit.js +2 -2
  1197. package/src/home-link/block.json +0 -1
  1198. package/src/image/block.json +6 -0
  1199. package/src/image/edit.js +1 -5
  1200. package/src/image/image.js +152 -72
  1201. package/src/image/interactivity.js +155 -13
  1202. package/src/image/save.js +7 -1
  1203. package/src/image/style.scss +79 -9
  1204. package/src/image/test/edit.native.js +3 -13
  1205. package/src/image/utils.js +16 -0
  1206. package/src/index.js +2 -0
  1207. package/src/latest-comments/block.json +0 -1
  1208. package/src/latest-posts/block.json +0 -1
  1209. package/src/latest-posts/edit.js +17 -9
  1210. package/src/latest-posts/index.php +8 -0
  1211. package/src/list/ordered-list-settings.js +20 -2
  1212. package/src/list/test/edit.native.js +5 -0
  1213. package/src/loginout/block.json +0 -1
  1214. package/src/media-text/edit.js +1 -1
  1215. package/src/navigation/block.json +2 -3
  1216. package/src/navigation/constants.js +11 -0
  1217. package/src/navigation/deprecated.js +1 -1
  1218. package/src/navigation/edit/index.js +15 -6
  1219. package/src/navigation/edit/leaf-more-menu.js +1 -2
  1220. package/src/navigation/edit/menu-inspector-controls.js +24 -26
  1221. package/src/navigation/edit/navigation-menu-selector.js +17 -7
  1222. package/src/navigation/edit/unsaved-inner-blocks.js +6 -6
  1223. package/src/navigation/editor.scss +0 -24
  1224. package/src/navigation/index.php +85 -70
  1225. package/src/navigation/test/use-navigation-menu.js +15 -3
  1226. package/src/navigation/use-navigation-menu.js +11 -8
  1227. package/src/navigation/view-modal.js +78 -0
  1228. package/src/navigation/view.js +74 -0
  1229. package/src/page-list/block.json +0 -1
  1230. package/src/paragraph/test/__snapshots__/edit.native.js.snap +39 -0
  1231. package/src/paragraph/test/edit.native.js +3 -3
  1232. package/src/pattern/block.json +1 -5
  1233. package/src/pattern/edit.js +14 -40
  1234. package/src/pattern/index.js +4 -5
  1235. package/src/pattern/index.php +1 -13
  1236. package/src/post-author/block.json +0 -1
  1237. package/src/post-author/edit.js +3 -3
  1238. package/src/post-author-biography/block.json +0 -1
  1239. package/src/post-author-name/block.json +0 -1
  1240. package/src/post-comments-count/block.json +0 -1
  1241. package/src/post-comments-form/block.json +0 -1
  1242. package/src/post-comments-link/block.json +0 -1
  1243. package/src/post-content/block.json +1 -2
  1244. package/src/post-date/block.json +0 -1
  1245. package/src/post-excerpt/block.json +0 -1
  1246. package/src/post-featured-image/block.json +0 -1
  1247. package/src/post-navigation-link/block.json +0 -1
  1248. package/src/post-template/block.json +1 -2
  1249. package/src/post-template/edit.js +4 -1
  1250. package/src/post-template/index.php +5 -0
  1251. package/src/post-terms/block.json +0 -1
  1252. package/src/post-terms/edit.js +8 -7
  1253. package/src/post-terms/hooks.js +3 -3
  1254. package/src/post-time-to-read/init.js +6 -0
  1255. package/src/post-title/block.json +0 -1
  1256. package/src/post-title/edit.js +4 -4
  1257. package/src/post-title/index.php +1 -1
  1258. package/src/preformatted/test/edit.native.js +1 -13
  1259. package/src/query/block.json +1 -2
  1260. package/src/query/deprecated.js +7 -5
  1261. package/src/query/edit/inspector-controls/index.js +1 -1
  1262. package/src/query/edit/query-content.js +13 -4
  1263. package/src/query-no-results/block.json +0 -1
  1264. package/src/query-pagination/block.json +1 -2
  1265. package/src/query-pagination-next/block.json +0 -1
  1266. package/src/query-pagination-numbers/block.json +1 -2
  1267. package/src/query-pagination-previous/block.json +0 -1
  1268. package/src/query-title/block.json +0 -1
  1269. package/src/query-title/edit.js +2 -6
  1270. package/src/read-more/block.json +0 -1
  1271. package/src/rss/block.json +0 -1
  1272. package/src/search/block.json +0 -1
  1273. package/src/search/edit.js +3 -3
  1274. package/src/site-logo/block.json +0 -1
  1275. package/src/site-tagline/block.json +0 -1
  1276. package/src/site-tagline/icon.js +1 -2
  1277. package/src/site-title/block.json +0 -1
  1278. package/src/site-title/edit/index.js +5 -6
  1279. package/src/social-link/block.json +0 -1
  1280. package/src/social-links/block.json +1 -1
  1281. package/src/spacer/save.js +7 -2
  1282. package/src/spacer/test/index.native.js +33 -29
  1283. package/src/style.scss +1 -0
  1284. package/src/tag-cloud/block.json +0 -1
  1285. package/src/template-part/block.json +0 -1
  1286. package/src/template-part/edit/inner-blocks.js +1 -1
  1287. package/src/template-part/index.php +18 -11
  1288. package/src/term-description/block.json +0 -1
  1289. package/src/utils/interactivity/index.js +0 -2
  1290. package/src/utils/migrate-font-family.js +1 -1
  1291. package/build/heading/heading-level-dropdown.js +0 -81
  1292. package/build/heading/heading-level-dropdown.js.map +0 -1
  1293. package/build/heading/heading-level-dropdown.native.js +0 -72
  1294. package/build/heading/heading-level-dropdown.native.js.map +0 -1
  1295. package/build/pattern/v1/edit.js +0 -56
  1296. package/build/pattern/v1/edit.js.map +0 -1
  1297. package/build/private-apis.js.map +0 -1
  1298. package/build/site-title/edit/level-icon.js +0 -40
  1299. package/build/site-title/edit/level-icon.js.map +0 -1
  1300. package/build/site-title/edit/level-toolbar.js +0 -51
  1301. package/build/site-title/edit/level-toolbar.js.map +0 -1
  1302. package/build-module/heading/heading-level-dropdown.js +0 -69
  1303. package/build-module/heading/heading-level-dropdown.js.map +0 -1
  1304. package/build-module/heading/heading-level-dropdown.native.js +0 -60
  1305. package/build-module/heading/heading-level-dropdown.native.js.map +0 -1
  1306. package/build-module/pattern/v1/edit.js +0 -47
  1307. package/build-module/pattern/v1/edit.js.map +0 -1
  1308. package/build-module/private-apis.js.map +0 -1
  1309. package/build-module/site-title/edit/level-icon.js +0 -31
  1310. package/build-module/site-title/edit/level-icon.js.map +0 -1
  1311. package/build-module/site-title/edit/level-toolbar.js +0 -39
  1312. package/build-module/site-title/edit/level-toolbar.js.map +0 -1
  1313. package/src/heading/heading-level-dropdown.js +0 -69
  1314. package/src/heading/heading-level-dropdown.native.js +0 -63
  1315. package/src/pattern/v1/edit.js +0 -57
  1316. package/src/site-title/edit/level-icon.js +0 -28
  1317. package/src/site-title/edit/level-toolbar.js +0 -34
  1318. /package/src/{private-apis.js → lock-unlock.js} +0 -0
@@ -71,7 +71,8 @@ export default function ResponsiveWrapper({
71
71
  }, createElement("div", {
72
72
  className: "wp-block-navigation__responsive-close",
73
73
  tabIndex: "-1"
74
- }, createElement("div", dialogProps, createElement(Button, {
74
+ }, createElement("div", { ...dialogProps
75
+ }, createElement(Button, {
75
76
  className: "wp-block-navigation__responsive-container-close",
76
77
  "aria-label": hasIcon && __('Close menu'),
77
78
  onClick: () => onToggle(false)
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/responsive-wrapper.js"],"names":["classnames","close","Icon","Button","__","getColorClassName","OverlayMenuIcon","ResponsiveWrapper","children","id","isOpen","isResponsive","onToggle","isHiddenByDefault","overlayBackgroundColor","overlayTextColor","hasIcon","icon","responsiveContainerClasses","color","class","slug","styles","backgroundColor","openButtonClasses","modalId","dialogProps","className","role"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,KAAT,EAAgBC,IAAhB,QAA4B,kBAA5B;AACA,SAASC,MAAT,QAAuB,uBAAvB;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,iBAAT,QAAkC,yBAAlC;AAEA;AACA;AACA;;AACA,OAAOC,eAAP,MAA4B,qBAA5B;AAEA,eAAe,SAASC,iBAAT,CAA4B;AAC1CC,EAAAA,QAD0C;AAE1CC,EAAAA,EAF0C;AAG1CC,EAAAA,MAH0C;AAI1CC,EAAAA,YAJ0C;AAK1CC,EAAAA,QAL0C;AAM1CC,EAAAA,iBAN0C;AAO1CC,EAAAA,sBAP0C;AAQ1CC,EAAAA,gBAR0C;AAS1CC,EAAAA,OAT0C;AAU1CC,EAAAA;AAV0C,CAA5B,EAWX;AACH,MAAK,CAAEN,YAAP,EAAsB;AACrB,WAAOH,QAAP;AACA;;AAED,QAAMU,0BAA0B,GAAGlB,UAAU,CAC5C,2CAD4C,EAE5C;AACC,sBACC,CAAC,CAAEe,gBAAgB,CAACI,KAApB,IAA6B,CAAC,CAAEJ,gBAAgB,EAAEK,KAFpD;AAGC,KAAEf,iBAAiB,CAAE,OAAF,EAAWU,gBAAgB,EAAEM,IAA7B,CAAnB,GACC,CAAC,CAAEN,gBAAgB,EAAEM,IAJvB;AAKC,sBACC,CAAC,CAAEP,sBAAsB,CAACK,KAA1B,IACAL,sBAAsB,EAAEM,KAP1B;AAQC,KAAEf,iBAAiB,CAClB,kBADkB,EAElBS,sBAAsB,EAAEO,IAFN,CAAnB,GAGK,CAAC,CAAEP,sBAAsB,EAAEO,IAXjC;AAYC,oBAAgBX,MAZjB;AAaC,yBAAqBG;AAbtB,GAF4C,CAA7C;AAmBA,QAAMS,MAAM,GAAG;AACdH,IAAAA,KAAK,EAAE,CAAEJ,gBAAgB,EAAEM,IAApB,IAA4BN,gBAAgB,EAAEI,KADvC;AAEdI,IAAAA,eAAe,EACd,CAAET,sBAAsB,EAAEO,IAA1B,IACAP,sBAAsB,EAAEK,KADxB,IAEAL,sBAAsB,CAACK;AALV,GAAf;AAQA,QAAMK,iBAAiB,GAAGxB,UAAU,CACnC,gDADmC,EAEnC;AAAE,oBAAgBa;AAAlB,GAFmC,CAApC;AAKA,QAAMY,OAAO,GAAI,GAAGhB,EAAI,QAAxB;AAEA,QAAMiB,WAAW,GAAG;AACnBC,IAAAA,SAAS,EAAE,wCADQ;AAEnB,QAAKjB,MAAM,IAAI;AACdkB,MAAAA,IAAI,EAAE,QADQ;AAEd,oBAAc,IAFA;AAGd,oBAAcxB,EAAE,CAAE,MAAF;AAHF,KAAf;AAFmB,GAApB;AASA,SACC,8BACG,CAAEM,MAAF,IACD,cAAC,MAAD;AACC,qBAAc,MADf;AAEC,kBAAaM,OAAO,IAAIZ,EAAE,CAAE,WAAF,CAF3B;AAGC,IAAA,SAAS,EAAGoB,iBAHb;AAIC,IAAA,OAAO,EAAG,MAAMZ,QAAQ,CAAE,IAAF;AAJzB,KAMGI,OAAO,IAAI,cAAC,eAAD;AAAiB,IAAA,IAAI,EAAGC;AAAxB,IANd,EAOG,CAAED,OAAF,IAAaZ,EAAE,CAAE,MAAF,CAPlB,CAFF,EAaC;AACC,IAAA,SAAS,EAAGc,0BADb;AAEC,IAAA,KAAK,EAAGI,MAFT;AAGC,IAAA,EAAE,EAAGG;AAHN,KAKC;AACC,IAAA,SAAS,EAAC,uCADX;AAEC,IAAA,QAAQ,EAAC;AAFV,KAIC,qBAAUC,WAAV,EACC,cAAC,MAAD;AACC,IAAA,SAAS,EAAC,iDADX;AAEC,kBAAaV,OAAO,IAAIZ,EAAE,CAAE,YAAF,CAF3B;AAGC,IAAA,OAAO,EAAG,MAAMQ,QAAQ,CAAE,KAAF;AAHzB,KAKGI,OAAO,IAAI,cAAC,IAAD;AAAM,IAAA,IAAI,EAAGf;AAAb,IALd,EAMG,CAAEe,OAAF,IAAaZ,EAAE,CAAE,OAAF,CANlB,CADD,EASC;AACC,IAAA,SAAS,EAAC,mDADX;AAEC,IAAA,EAAE,EAAI,GAAGqB,OAAS;AAFnB,KAIGjB,QAJH,CATD,CAJD,CALD,CAbD,CADD;AA2CA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { close, Icon } from '@wordpress/icons';\nimport { Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { getColorClassName } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport OverlayMenuIcon from './overlay-menu-icon';\n\nexport default function ResponsiveWrapper( {\n\tchildren,\n\tid,\n\tisOpen,\n\tisResponsive,\n\tonToggle,\n\tisHiddenByDefault,\n\toverlayBackgroundColor,\n\toverlayTextColor,\n\thasIcon,\n\ticon,\n} ) {\n\tif ( ! isResponsive ) {\n\t\treturn children;\n\t}\n\n\tconst responsiveContainerClasses = classnames(\n\t\t'wp-block-navigation__responsive-container',\n\t\t{\n\t\t\t'has-text-color':\n\t\t\t\t!! overlayTextColor.color || !! overlayTextColor?.class,\n\t\t\t[ getColorClassName( 'color', overlayTextColor?.slug ) ]:\n\t\t\t\t!! overlayTextColor?.slug,\n\t\t\t'has-background':\n\t\t\t\t!! overlayBackgroundColor.color ||\n\t\t\t\toverlayBackgroundColor?.class,\n\t\t\t[ getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\toverlayBackgroundColor?.slug\n\t\t\t) ]: !! overlayBackgroundColor?.slug,\n\t\t\t'is-menu-open': isOpen,\n\t\t\t'hidden-by-default': isHiddenByDefault,\n\t\t}\n\t);\n\n\tconst styles = {\n\t\tcolor: ! overlayTextColor?.slug && overlayTextColor?.color,\n\t\tbackgroundColor:\n\t\t\t! overlayBackgroundColor?.slug &&\n\t\t\toverlayBackgroundColor?.color &&\n\t\t\toverlayBackgroundColor.color,\n\t};\n\n\tconst openButtonClasses = classnames(\n\t\t'wp-block-navigation__responsive-container-open',\n\t\t{ 'always-shown': isHiddenByDefault }\n\t);\n\n\tconst modalId = `${ id }-modal`;\n\n\tconst dialogProps = {\n\t\tclassName: 'wp-block-navigation__responsive-dialog',\n\t\t...( isOpen && {\n\t\t\trole: 'dialog',\n\t\t\t'aria-modal': true,\n\t\t\t'aria-label': __( 'Menu' ),\n\t\t} ),\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t{ ! isOpen && (\n\t\t\t\t<Button\n\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\taria-label={ hasIcon && __( 'Open menu' ) }\n\t\t\t\t\tclassName={ openButtonClasses }\n\t\t\t\t\tonClick={ () => onToggle( true ) }\n\t\t\t\t>\n\t\t\t\t\t{ hasIcon && <OverlayMenuIcon icon={ icon } /> }\n\t\t\t\t\t{ ! hasIcon && __( 'Menu' ) }\n\t\t\t\t</Button>\n\t\t\t) }\n\n\t\t\t<div\n\t\t\t\tclassName={ responsiveContainerClasses }\n\t\t\t\tstyle={ styles }\n\t\t\t\tid={ modalId }\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"wp-block-navigation__responsive-close\"\n\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t>\n\t\t\t\t\t<div { ...dialogProps }>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation__responsive-container-close\"\n\t\t\t\t\t\t\taria-label={ hasIcon && __( 'Close menu' ) }\n\t\t\t\t\t\t\tonClick={ () => onToggle( false ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ hasIcon && <Icon icon={ close } /> }\n\t\t\t\t\t\t\t{ ! hasIcon && __( 'Close' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation__responsive-container-content\"\n\t\t\t\t\t\t\tid={ `${ modalId }-content` }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/responsive-wrapper.js"],"names":["classnames","close","Icon","Button","__","getColorClassName","OverlayMenuIcon","ResponsiveWrapper","children","id","isOpen","isResponsive","onToggle","isHiddenByDefault","overlayBackgroundColor","overlayTextColor","hasIcon","icon","responsiveContainerClasses","color","class","slug","styles","backgroundColor","openButtonClasses","modalId","dialogProps","className","role"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { close, Icon } from '@wordpress/icons';\nimport { Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { getColorClassName } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport OverlayMenuIcon from './overlay-menu-icon';\n\nexport default function ResponsiveWrapper( {\n\tchildren,\n\tid,\n\tisOpen,\n\tisResponsive,\n\tonToggle,\n\tisHiddenByDefault,\n\toverlayBackgroundColor,\n\toverlayTextColor,\n\thasIcon,\n\ticon,\n} ) {\n\tif ( ! isResponsive ) {\n\t\treturn children;\n\t}\n\n\tconst responsiveContainerClasses = classnames(\n\t\t'wp-block-navigation__responsive-container',\n\t\t{\n\t\t\t'has-text-color':\n\t\t\t\t!! overlayTextColor.color || !! overlayTextColor?.class,\n\t\t\t[ getColorClassName( 'color', overlayTextColor?.slug ) ]:\n\t\t\t\t!! overlayTextColor?.slug,\n\t\t\t'has-background':\n\t\t\t\t!! overlayBackgroundColor.color ||\n\t\t\t\toverlayBackgroundColor?.class,\n\t\t\t[ getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\toverlayBackgroundColor?.slug\n\t\t\t) ]: !! overlayBackgroundColor?.slug,\n\t\t\t'is-menu-open': isOpen,\n\t\t\t'hidden-by-default': isHiddenByDefault,\n\t\t}\n\t);\n\n\tconst styles = {\n\t\tcolor: ! overlayTextColor?.slug && overlayTextColor?.color,\n\t\tbackgroundColor:\n\t\t\t! overlayBackgroundColor?.slug &&\n\t\t\toverlayBackgroundColor?.color &&\n\t\t\toverlayBackgroundColor.color,\n\t};\n\n\tconst openButtonClasses = classnames(\n\t\t'wp-block-navigation__responsive-container-open',\n\t\t{ 'always-shown': isHiddenByDefault }\n\t);\n\n\tconst modalId = `${ id }-modal`;\n\n\tconst dialogProps = {\n\t\tclassName: 'wp-block-navigation__responsive-dialog',\n\t\t...( isOpen && {\n\t\t\trole: 'dialog',\n\t\t\t'aria-modal': true,\n\t\t\t'aria-label': __( 'Menu' ),\n\t\t} ),\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t{ ! isOpen && (\n\t\t\t\t<Button\n\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\taria-label={ hasIcon && __( 'Open menu' ) }\n\t\t\t\t\tclassName={ openButtonClasses }\n\t\t\t\t\tonClick={ () => onToggle( true ) }\n\t\t\t\t>\n\t\t\t\t\t{ hasIcon && <OverlayMenuIcon icon={ icon } /> }\n\t\t\t\t\t{ ! hasIcon && __( 'Menu' ) }\n\t\t\t\t</Button>\n\t\t\t) }\n\n\t\t\t<div\n\t\t\t\tclassName={ responsiveContainerClasses }\n\t\t\t\tstyle={ styles }\n\t\t\t\tid={ modalId }\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"wp-block-navigation__responsive-close\"\n\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t>\n\t\t\t\t\t<div { ...dialogProps }>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation__responsive-container-close\"\n\t\t\t\t\t\t\taria-label={ hasIcon && __( 'Close menu' ) }\n\t\t\t\t\t\t\tonClick={ () => onToggle( false ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ hasIcon && <Icon icon={ close } /> }\n\t\t\t\t\t\t\t{ ! hasIcon && __( 'Close' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation__responsive-container-content\"\n\t\t\t\t\t\t\tid={ `${ modalId }-content` }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
@@ -13,7 +13,7 @@ import { useContext, useEffect, useRef, useMemo } from '@wordpress/element';
13
13
  */
14
14
 
15
15
  import { areBlocksDirty } from './are-blocks-dirty';
16
- import { DEFAULT_BLOCK, ALLOWED_BLOCKS } from '../constants';
16
+ import { DEFAULT_BLOCK, ALLOWED_BLOCKS, SELECT_NAVIGATION_MENUS_ARGS } from '../constants';
17
17
  const EMPTY_OBJECT = {};
18
18
  export default function UnsavedInnerBlocks({
19
19
  blocks,
@@ -64,10 +64,7 @@ export default function UnsavedInnerBlocks({
64
64
  } = select(coreStore);
65
65
  return {
66
66
  isSaving: isSavingEntityRecord('postType', 'wp_navigation'),
67
- hasResolvedAllNavigationMenus: hasFinishedResolution('getEntityRecords', ['postType', 'wp_navigation', {
68
- per_page: -1,
69
- status: ['publish', 'draft']
70
- }])
67
+ hasResolvedAllNavigationMenus: hasFinishedResolution('getEntityRecords', SELECT_NAVIGATION_MENUS_ARGS)
71
68
  };
72
69
  }, [isDisabled]); // Automatically save the uncontrolled blocks.
73
70
 
@@ -91,6 +88,7 @@ export default function UnsavedInnerBlocks({
91
88
  createNavigationMenu(null, blocks);
92
89
  }, [blocks, createNavigationMenu, isDisabled, isSaving, hasResolvedAllNavigationMenus, innerBlocksAreDirty, hasSelection]);
93
90
  const Wrapper = isSaving ? Disabled : 'div';
94
- return createElement(Wrapper, innerBlocksProps);
91
+ return createElement(Wrapper, { ...innerBlocksProps
92
+ });
95
93
  }
96
94
  //# sourceMappingURL=unsaved-inner-blocks.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/unsaved-inner-blocks.js"],"names":["useInnerBlocksProps","Disabled","store","coreStore","useSelect","useContext","useEffect","useRef","useMemo","areBlocksDirty","DEFAULT_BLOCK","ALLOWED_BLOCKS","EMPTY_OBJECT","UnsavedInnerBlocks","blocks","createNavigationMenu","hasSelection","originalBlocks","current","innerBlocksAreDirty","shouldDirectInsert","every","name","isDisabled","Context","innerBlocksProps","className","renderAppender","undefined","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","isSaving","hasResolvedAllNavigationMenus","select","hasFinishedResolution","isSavingEntityRecord","per_page","status","Wrapper"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,mBAAT,QAAoC,yBAApC;AACA,SAASC,QAAT,QAAyB,uBAAzB;AACA,SAASC,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,UAAT,EAAqBC,SAArB,EAAgCC,MAAhC,EAAwCC,OAAxC,QAAuD,oBAAvD;AAEA;AACA;AACA;;AACA,SAASC,cAAT,QAA+B,oBAA/B;AACA,SAASC,aAAT,EAAwBC,cAAxB,QAA8C,cAA9C;AAEA,MAAMC,YAAY,GAAG,EAArB;AAEA,eAAe,SAASC,kBAAT,CAA6B;AAC3CC,EAAAA,MAD2C;AAE3CC,EAAAA,oBAF2C;AAG3CC,EAAAA;AAH2C,CAA7B,EAIX;AACH,QAAMC,cAAc,GAAGV,MAAM,EAA7B;AAEAD,EAAAA,SAAS,CAAE,MAAM;AAChB;AACA;AACA,QAAK,CAAEW,cAAc,EAAEC,OAAvB,EAAiC;AAChCD,MAAAA,cAAc,CAACC,OAAf,GAAyBJ,MAAzB;AACA;AACD,GANQ,EAMN,CAAEA,MAAF,CANM,CAAT,CAHG,CAWH;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,QAAMK,mBAAmB,GAAGV,cAAc,CACzCQ,cAAc,EAAEC,OADyB,EAEzCJ,MAFyC,CAA1C;AAKA,QAAMM,kBAAkB,GAAGZ,OAAO,CACjC,MACCM,MAAM,CAACO,KAAP,CACC,CAAE;AAAEC,IAAAA;AAAF,GAAF,KACCA,IAAI,KAAK,sBAAT,IACAA,IAAI,KAAK,yBADT,IAEAA,IAAI,KAAK,gBAJX,CAFgC,EAQjC,CAAER,MAAF,CARiC,CAAlC,CAvBG,CAkCH;AACA;;AACA,QAAMS,UAAU,GAAGlB,UAAU,CAAEJ,QAAQ,CAACuB,OAAX,CAA7B;AAEA,QAAMC,gBAAgB,GAAGzB,mBAAmB,CAC3C;AACC0B,IAAAA,SAAS,EAAE;AADZ,GAD2C,EAI3C;AACCC,IAAAA,cAAc,EAAEX,YAAY,GAAGY,SAAH,GAAe,KAD5C;AAECC,IAAAA,aAAa,EAAElB,cAFhB;AAGCmB,IAAAA,0BAA0B,EAAEpB,aAH7B;AAICqB,IAAAA,0BAA0B,EAAEX;AAJ7B,GAJ2C,CAA5C;AAYA,QAAM;AAAEY,IAAAA,QAAF;AAAYC,IAAAA;AAAZ,MAA8C7B,SAAS,CAC1D8B,MAAF,IAAc;AACb,QAAKX,UAAL,EAAkB;AACjB,aAAOX,YAAP;AACA;;AAED,UAAM;AAAEuB,MAAAA,qBAAF;AAAyBC,MAAAA;AAAzB,QACLF,MAAM,CAAE/B,SAAF,CADP;AAGA,WAAO;AACN6B,MAAAA,QAAQ,EAAEI,oBAAoB,CAAE,UAAF,EAAc,eAAd,CADxB;AAENH,MAAAA,6BAA6B,EAAEE,qBAAqB,CACnD,kBADmD,EAEnD,CACC,UADD,EAEC,eAFD,EAGC;AAAEE,QAAAA,QAAQ,EAAE,CAAC,CAAb;AAAgBC,QAAAA,MAAM,EAAE,CAAE,SAAF,EAAa,OAAb;AAAxB,OAHD,CAFmD;AAF9C,KAAP;AAWA,GApB2D,EAqB5D,CAAEf,UAAF,CArB4D,CAA7D,CAlDG,CA0EH;;AACAjB,EAAAA,SAAS,CAAE,MAAM;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QACCiB,UAAU,IACVS,QADA,IAEA,CAAEC,6BAFF,IAGA,CAAEjB,YAHF,IAIA,CAAEG,mBALH,EAME;AACD;AACA;;AAEDJ,IAAAA,oBAAoB,CAAE,IAAF,EAAQD,MAAR,CAApB;AACA,GAxBQ,EAwBN,CACFA,MADE,EAEFC,oBAFE,EAGFQ,UAHE,EAIFS,QAJE,EAKFC,6BALE,EAMFd,mBANE,EAOFH,YAPE,CAxBM,CAAT;AAkCA,QAAMuB,OAAO,GAAGP,QAAQ,GAAG/B,QAAH,GAAc,KAAtC;AAEA,SAAO,cAAC,OAAD,EAAcwB,gBAAd,CAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useInnerBlocksProps } from '@wordpress/block-editor';\nimport { Disabled } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useContext, useEffect, useRef, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { areBlocksDirty } from './are-blocks-dirty';\nimport { DEFAULT_BLOCK, ALLOWED_BLOCKS } from '../constants';\n\nconst EMPTY_OBJECT = {};\n\nexport default function UnsavedInnerBlocks( {\n\tblocks,\n\tcreateNavigationMenu,\n\thasSelection,\n} ) {\n\tconst originalBlocks = useRef();\n\n\tuseEffect( () => {\n\t\t// Initially store the uncontrolled inner blocks for\n\t\t// dirty state comparison.\n\t\tif ( ! originalBlocks?.current ) {\n\t\t\toriginalBlocks.current = blocks;\n\t\t}\n\t}, [ blocks ] );\n\n\t// If the current inner blocks are different from the original inner blocks\n\t// from the post content then the user has made changes to the inner blocks.\n\t// At this point the inner blocks can be considered \"dirty\".\n\t// Note: referential equality is not sufficient for comparison as the inner blocks\n\t// of the page list are controlled and may be updated async due to syncing with\n\t// entity records. As a result we need to perform a deep equality check skipping\n\t// the page list's inner blocks.\n\tconst innerBlocksAreDirty = areBlocksDirty(\n\t\toriginalBlocks?.current,\n\t\tblocks\n\t);\n\n\tconst shouldDirectInsert = useMemo(\n\t\t() =>\n\t\t\tblocks.every(\n\t\t\t\t( { name } ) =>\n\t\t\t\t\tname === 'core/navigation-link' ||\n\t\t\t\t\tname === 'core/navigation-submenu' ||\n\t\t\t\t\tname === 'core/page-list'\n\t\t\t),\n\t\t[ blocks ]\n\t);\n\n\t// The block will be disabled in a block preview, use this as a way of\n\t// avoiding the side-effects of this component for block previews.\n\tconst isDisabled = useContext( Disabled.Context );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-navigation__container',\n\t\t},\n\t\t{\n\t\t\trenderAppender: hasSelection ? undefined : false,\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t\t__experimentalDirectInsert: shouldDirectInsert,\n\t\t}\n\t);\n\n\tconst { isSaving, hasResolvedAllNavigationMenus } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( isDisabled ) {\n\t\t\t\treturn EMPTY_OBJECT;\n\t\t\t}\n\n\t\t\tconst { hasFinishedResolution, isSavingEntityRecord } =\n\t\t\t\tselect( coreStore );\n\n\t\t\treturn {\n\t\t\t\tisSaving: isSavingEntityRecord( 'postType', 'wp_navigation' ),\n\t\t\t\thasResolvedAllNavigationMenus: hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\t[\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t'wp_navigation',\n\t\t\t\t\t\t{ per_page: -1, status: [ 'publish', 'draft' ] },\n\t\t\t\t\t]\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ isDisabled ]\n\t);\n\n\t// Automatically save the uncontrolled blocks.\n\tuseEffect( () => {\n\t\t// The block will be disabled when used in a BlockPreview.\n\t\t// In this case avoid automatic creation of a wp_navigation post.\n\t\t// Otherwise the user will be spammed with lots of menus!\n\t\t//\n\t\t// Also ensure other navigation menus have loaded so an\n\t\t// accurate name can be created.\n\t\t//\n\t\t// Don't try saving when another save is already\n\t\t// in progress.\n\t\t//\n\t\t// And finally only create the menu when the block is selected,\n\t\t// which is an indication they want to start editing.\n\t\tif (\n\t\t\tisDisabled ||\n\t\t\tisSaving ||\n\t\t\t! hasResolvedAllNavigationMenus ||\n\t\t\t! hasSelection ||\n\t\t\t! innerBlocksAreDirty\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tcreateNavigationMenu( null, blocks );\n\t}, [\n\t\tblocks,\n\t\tcreateNavigationMenu,\n\t\tisDisabled,\n\t\tisSaving,\n\t\thasResolvedAllNavigationMenus,\n\t\tinnerBlocksAreDirty,\n\t\thasSelection,\n\t] );\n\n\tconst Wrapper = isSaving ? Disabled : 'div';\n\n\treturn <Wrapper { ...innerBlocksProps } />;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/unsaved-inner-blocks.js"],"names":["useInnerBlocksProps","Disabled","store","coreStore","useSelect","useContext","useEffect","useRef","useMemo","areBlocksDirty","DEFAULT_BLOCK","ALLOWED_BLOCKS","SELECT_NAVIGATION_MENUS_ARGS","EMPTY_OBJECT","UnsavedInnerBlocks","blocks","createNavigationMenu","hasSelection","originalBlocks","current","innerBlocksAreDirty","shouldDirectInsert","every","name","isDisabled","Context","innerBlocksProps","className","renderAppender","undefined","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","isSaving","hasResolvedAllNavigationMenus","select","hasFinishedResolution","isSavingEntityRecord","Wrapper"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useInnerBlocksProps } from '@wordpress/block-editor';\nimport { Disabled } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useContext, useEffect, useRef, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { areBlocksDirty } from './are-blocks-dirty';\nimport {\n\tDEFAULT_BLOCK,\n\tALLOWED_BLOCKS,\n\tSELECT_NAVIGATION_MENUS_ARGS,\n} from '../constants';\n\nconst EMPTY_OBJECT = {};\n\nexport default function UnsavedInnerBlocks( {\n\tblocks,\n\tcreateNavigationMenu,\n\thasSelection,\n} ) {\n\tconst originalBlocks = useRef();\n\n\tuseEffect( () => {\n\t\t// Initially store the uncontrolled inner blocks for\n\t\t// dirty state comparison.\n\t\tif ( ! originalBlocks?.current ) {\n\t\t\toriginalBlocks.current = blocks;\n\t\t}\n\t}, [ blocks ] );\n\n\t// If the current inner blocks are different from the original inner blocks\n\t// from the post content then the user has made changes to the inner blocks.\n\t// At this point the inner blocks can be considered \"dirty\".\n\t// Note: referential equality is not sufficient for comparison as the inner blocks\n\t// of the page list are controlled and may be updated async due to syncing with\n\t// entity records. As a result we need to perform a deep equality check skipping\n\t// the page list's inner blocks.\n\tconst innerBlocksAreDirty = areBlocksDirty(\n\t\toriginalBlocks?.current,\n\t\tblocks\n\t);\n\n\tconst shouldDirectInsert = useMemo(\n\t\t() =>\n\t\t\tblocks.every(\n\t\t\t\t( { name } ) =>\n\t\t\t\t\tname === 'core/navigation-link' ||\n\t\t\t\t\tname === 'core/navigation-submenu' ||\n\t\t\t\t\tname === 'core/page-list'\n\t\t\t),\n\t\t[ blocks ]\n\t);\n\n\t// The block will be disabled in a block preview, use this as a way of\n\t// avoiding the side-effects of this component for block previews.\n\tconst isDisabled = useContext( Disabled.Context );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-navigation__container',\n\t\t},\n\t\t{\n\t\t\trenderAppender: hasSelection ? undefined : false,\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t\t__experimentalDirectInsert: shouldDirectInsert,\n\t\t}\n\t);\n\n\tconst { isSaving, hasResolvedAllNavigationMenus } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( isDisabled ) {\n\t\t\t\treturn EMPTY_OBJECT;\n\t\t\t}\n\n\t\t\tconst { hasFinishedResolution, isSavingEntityRecord } =\n\t\t\t\tselect( coreStore );\n\n\t\t\treturn {\n\t\t\t\tisSaving: isSavingEntityRecord( 'postType', 'wp_navigation' ),\n\t\t\t\thasResolvedAllNavigationMenus: hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\tSELECT_NAVIGATION_MENUS_ARGS\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ isDisabled ]\n\t);\n\n\t// Automatically save the uncontrolled blocks.\n\tuseEffect( () => {\n\t\t// The block will be disabled when used in a BlockPreview.\n\t\t// In this case avoid automatic creation of a wp_navigation post.\n\t\t// Otherwise the user will be spammed with lots of menus!\n\t\t//\n\t\t// Also ensure other navigation menus have loaded so an\n\t\t// accurate name can be created.\n\t\t//\n\t\t// Don't try saving when another save is already\n\t\t// in progress.\n\t\t//\n\t\t// And finally only create the menu when the block is selected,\n\t\t// which is an indication they want to start editing.\n\t\tif (\n\t\t\tisDisabled ||\n\t\t\tisSaving ||\n\t\t\t! hasResolvedAllNavigationMenus ||\n\t\t\t! hasSelection ||\n\t\t\t! innerBlocksAreDirty\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tcreateNavigationMenu( null, blocks );\n\t}, [\n\t\tblocks,\n\t\tcreateNavigationMenu,\n\t\tisDisabled,\n\t\tisSaving,\n\t\thasResolvedAllNavigationMenus,\n\t\tinnerBlocksAreDirty,\n\t\thasSelection,\n\t] );\n\n\tconst Wrapper = isSaving ? Disabled : 'div';\n\n\treturn <Wrapper { ...innerBlocksProps } />;\n}\n"]}
@@ -101,7 +101,6 @@ const metadata = {
101
101
  },
102
102
  supports: {
103
103
  align: ["wide", "full"],
104
- anchor: true,
105
104
  html: false,
106
105
  inserter: true,
107
106
  typography: {
@@ -125,7 +124,7 @@ const metadata = {
125
124
  blockGap: true
126
125
  }
127
126
  },
128
- __experimentalLayout: {
127
+ layout: {
129
128
  allowSwitching: false,
130
129
  allowInheriting: false,
131
130
  allowVerticalAlignment: false,
@@ -144,7 +143,7 @@ const metadata = {
144
143
  }
145
144
  }
146
145
  },
147
- viewScript: "file:./interactivity.min.js",
146
+ viewScript: ["file:./view.min.js", "file:./view-modal.min.js"],
148
147
  editorStyle: "wp-block-navigation-editor",
149
148
  style: "wp-block-navigation"
150
149
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/index.js"],"names":["__","navigation","icon","initBlock","edit","save","deprecated","name","metadata","settings","example","attributes","overlayMenu","innerBlocks","label","url","init"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,UAAU,IAAIC,IAAvB,QAAmC,kBAAnC;AAEA;AACA;AACA;;AACA,OAAOC,SAAP,MAAsB,qBAAtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBP,EAAAA,IADuB;AAEvBQ,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,WAAW,EAAE;AADF,KADJ;AAIRC,IAAAA,WAAW,EAAE,CACZ;AACCN,MAAAA,IAAI,EAAE,sBADP;AAECI,MAAAA,UAAU,EAAE;AACX;AACAG,QAAAA,KAAK,EAAEd,EAAE,CAAE,MAAF,CAFE;AAGXe,QAAAA,GAAG,EAAE;AAHM;AAFb,KADY,EASZ;AACCR,MAAAA,IAAI,EAAE,sBADP;AAECI,MAAAA,UAAU,EAAE;AACX;AACAG,QAAAA,KAAK,EAAEd,EAAE,CAAE,OAAF,CAFE;AAGXe,QAAAA,GAAG,EAAE;AAHM;AAFb,KATY,EAiBZ;AACCR,MAAAA,IAAI,EAAE,sBADP;AAECI,MAAAA,UAAU,EAAE;AACX;AACAG,QAAAA,KAAK,EAAEd,EAAE,CAAE,SAAF,CAFE;AAGXe,QAAAA,GAAG,EAAE;AAHM;AAFb,KAjBY;AAJL,GAFc;AAiCvBX,EAAAA,IAjCuB;AAkCvBC,EAAAA,IAlCuB;AAmCvBC,EAAAA;AAnCuB,CAAjB;AAsCP,OAAO,MAAMU,IAAI,GAAG,MAAMb,SAAS,CAAE;AAAEI,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAF,CAA5B","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"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/index.js"],"names":["__","navigation","icon","initBlock","edit","save","deprecated","name","metadata","settings","example","attributes","overlayMenu","innerBlocks","label","url","init"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,UAAU,IAAIC,IAAvB,QAAmC,kBAAnC;AAEA;AACA;AACA;;AACA,OAAOC,SAAP,MAAsB,qBAAtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBP,EAAAA,IADuB;AAEvBQ,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,WAAW,EAAE;AADF,KADJ;AAIRC,IAAAA,WAAW,EAAE,CACZ;AACCN,MAAAA,IAAI,EAAE,sBADP;AAECI,MAAAA,UAAU,EAAE;AACX;AACAG,QAAAA,KAAK,EAAEd,EAAE,CAAE,MAAF,CAFE;AAGXe,QAAAA,GAAG,EAAE;AAHM;AAFb,KADY,EASZ;AACCR,MAAAA,IAAI,EAAE,sBADP;AAECI,MAAAA,UAAU,EAAE;AACX;AACAG,QAAAA,KAAK,EAAEd,EAAE,CAAE,OAAF,CAFE;AAGXe,QAAAA,GAAG,EAAE;AAHM;AAFb,KATY,EAiBZ;AACCR,MAAAA,IAAI,EAAE,sBADP;AAECI,MAAAA,UAAU,EAAE;AACX;AACAG,QAAAA,KAAK,EAAEd,EAAE,CAAE,SAAF,CAFE;AAGXe,QAAAA,GAAG,EAAE;AAHM;AAFb,KAjBY;AAJL,GAFc;AAiCvBX,EAAAA,IAjCuB;AAkCvBC,EAAAA,IAlCuB;AAmCvBC,EAAAA;AAnCuB,CAAjB;AAsCP,OAAO,MAAMU,IAAI,GAAG,MAAMb,SAAS,CAAE;AAAEI,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAF,CAA5B","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"]}
@@ -3,6 +3,11 @@
3
3
  */
4
4
  import { store as coreStore, useResourcePermissions } from '@wordpress/core-data';
5
5
  import { useSelect } from '@wordpress/data';
6
+ /**
7
+ * Internal dependencies
8
+ */
9
+
10
+ import { SELECT_NAVIGATION_MENUS_ARGS } from './constants';
6
11
  export default function useNavigationMenu(ref) {
7
12
  const permissions = useResourcePermissions('navigation', ref);
8
13
  return useSelect(select => {
@@ -48,14 +53,10 @@ function selectNavigationMenus(select) {
48
53
  hasFinishedResolution,
49
54
  isResolving
50
55
  } = select(coreStore);
51
- const args = ['postType', 'wp_navigation', {
52
- per_page: -1,
53
- status: ['publish', 'draft']
54
- }];
55
56
  return {
56
- navigationMenus: getEntityRecords(...args),
57
- isResolvingNavigationMenus: isResolving('getEntityRecords', args),
58
- hasResolvedNavigationMenus: hasFinishedResolution('getEntityRecords', args)
57
+ navigationMenus: getEntityRecords(...SELECT_NAVIGATION_MENUS_ARGS),
58
+ isResolvingNavigationMenus: isResolving('getEntityRecords', SELECT_NAVIGATION_MENUS_ARGS),
59
+ hasResolvedNavigationMenus: hasFinishedResolution('getEntityRecords', SELECT_NAVIGATION_MENUS_ARGS)
59
60
  };
60
61
  }
61
62
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/use-navigation-menu.js"],"names":["store","coreStore","useResourcePermissions","useSelect","useNavigationMenu","ref","permissions","select","canCreate","canUpdate","canDelete","isResolving","hasResolved","navigationMenus","isResolvingNavigationMenus","hasResolvedNavigationMenus","selectNavigationMenus","navigationMenu","isNavigationMenuResolved","isNavigationMenuMissing","selectExistingMenu","canSwitchNavigationMenu","length","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","undefined","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","getEntityRecords","hasFinishedResolution","args","per_page","status","getEntityRecord","getEditedEntityRecord","editedNavigationMenu","hasResolvedNavigationMenu","isNavigationMenuPublishedOrDraft"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,KAAK,IAAIC,SADV,EAECC,sBAFD,QAGO,sBAHP;AAIA,SAASC,SAAT,QAA0B,iBAA1B;AAEA,eAAe,SAASC,iBAAT,CAA4BC,GAA5B,EAAkC;AAChD,QAAMC,WAAW,GAAGJ,sBAAsB,CAAE,YAAF,EAAgBG,GAAhB,CAA1C;AAEA,SAAOF,SAAS,CACbI,MAAF,IAAc;AACb,UAAM;AACLC,MAAAA,SADK;AAELC,MAAAA,SAFK;AAGLC,MAAAA,SAHK;AAILC,MAAAA,WAJK;AAKLC,MAAAA;AALK,QAMFN,WANJ;AAQA,UAAM;AACLO,MAAAA,eADK;AAELC,MAAAA,0BAFK;AAGLC,MAAAA;AAHK,QAIFC,qBAAqB,CAAET,MAAF,CAJzB;AAMA,UAAM;AACLU,MAAAA,cADK;AAELC,MAAAA,wBAFK;AAGLC,MAAAA;AAHK,QAIFC,kBAAkB,CAAEb,MAAF,EAAUF,GAAV,CAJtB;AAMA,WAAO;AACNQ,MAAAA,eADM;AAENC,MAAAA,0BAFM;AAGNC,MAAAA,0BAHM;AAKNE,MAAAA,cALM;AAMNC,MAAAA,wBANM;AAONC,MAAAA,uBAPM;AASNE,MAAAA,uBAAuB,EAAEhB,GAAG,GACzBQ,eAAe,EAAES,MAAjB,GAA0B,CADD,GAEzBT,eAAe,EAAES,MAAjB,GAA0B,CAXvB;AAaNC,MAAAA,2BAA2B,EAAEf,SAbvB;AAcNgB,MAAAA,sCAAsC,EAAEb,WAdlC;AAeNc,MAAAA,sCAAsC,EAAEb,WAflC;AAiBNc,MAAAA,2BAA2B,EAAEjB,SAjBvB;AAkBNkB,MAAAA,sCAAsC,EAAEtB,GAAG,GACxCO,WADwC,GAExCgB,SApBG;AAsBNC,MAAAA,2BAA2B,EAAEnB,SAtBvB;AAuBNoB,MAAAA,sCAAsC,EAAEzB,GAAG,GACxCO,WADwC,GAExCgB;AAzBG,KAAP;AA2BA,GAjDc,EAkDf,CAAEvB,GAAF,EAAOC,WAAP,CAlDe,CAAhB;AAoDA;;AAED,SAASU,qBAAT,CAAgCT,MAAhC,EAAyC;AACxC,QAAM;AAAEwB,IAAAA,gBAAF;AAAoBC,IAAAA,qBAApB;AAA2CrB,IAAAA;AAA3C,MACLJ,MAAM,CAAEN,SAAF,CADP;AAGA,QAAMgC,IAAI,GAAG,CACZ,UADY,EAEZ,eAFY,EAGZ;AAAEC,IAAAA,QAAQ,EAAE,CAAC,CAAb;AAAgBC,IAAAA,MAAM,EAAE,CAAE,SAAF,EAAa,OAAb;AAAxB,GAHY,CAAb;AAKA,SAAO;AACNtB,IAAAA,eAAe,EAAEkB,gBAAgB,CAAE,GAAGE,IAAL,CAD3B;AAENnB,IAAAA,0BAA0B,EAAEH,WAAW,CAAE,kBAAF,EAAsBsB,IAAtB,CAFjC;AAGNlB,IAAAA,0BAA0B,EAAEiB,qBAAqB,CAChD,kBADgD,EAEhDC,IAFgD;AAH3C,GAAP;AAQA;;AAED,SAASb,kBAAT,CAA6Bb,MAA7B,EAAqCF,GAArC,EAA2C;AAC1C,MAAK,CAAEA,GAAP,EAAa;AACZ,WAAO;AACNa,MAAAA,wBAAwB,EAAE,KADpB;AAENC,MAAAA,uBAAuB,EAAE;AAFnB,KAAP;AAIA;;AAED,QAAM;AAAEiB,IAAAA,eAAF;AAAmBC,IAAAA,qBAAnB;AAA0CL,IAAAA;AAA1C,MACLzB,MAAM,CAAEN,SAAF,CADP;AAGA,QAAMgC,IAAI,GAAG,CAAE,UAAF,EAAc,eAAd,EAA+B5B,GAA/B,CAAb;AACA,QAAMY,cAAc,GAAGmB,eAAe,CAAE,GAAGH,IAAL,CAAtC;AACA,QAAMK,oBAAoB,GAAGD,qBAAqB,CAAE,GAAGJ,IAAL,CAAlD;AACA,QAAMM,yBAAyB,GAAGP,qBAAqB,CACtD,uBADsD,EAEtDC,IAFsD,CAAvD,CAd0C,CAmB1C;AACA;AACA;AACA;;AACA,QAAMO,gCAAgC,GACrCF,oBAAoB,CAACH,MAArB,KAAgC,SAAhC,IACAG,oBAAoB,CAACH,MAArB,KAAgC,OAFjC;AAIA,SAAO;AACNjB,IAAAA,wBAAwB,EAAEqB,yBADpB;AAENpB,IAAAA,uBAAuB,EACtBoB,yBAAyB,KACvB,CAAEtB,cAAF,IAAoB,CAAEuB,gCADC,CAHpB;AAMN;AACA;AACAvB,IAAAA,cAAc,EAAEuB,gCAAgC,GAC7CF,oBAD6C,GAE7C;AAVG,GAAP;AAYA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tstore as coreStore,\n\tuseResourcePermissions,\n} from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\n\nexport default function useNavigationMenu( ref ) {\n\tconst permissions = useResourcePermissions( 'navigation', ref );\n\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tcanCreate,\n\t\t\t\tcanUpdate,\n\t\t\t\tcanDelete,\n\t\t\t\tisResolving,\n\t\t\t\thasResolved,\n\t\t\t} = permissions;\n\n\t\t\tconst {\n\t\t\t\tnavigationMenus,\n\t\t\t\tisResolvingNavigationMenus,\n\t\t\t\thasResolvedNavigationMenus,\n\t\t\t} = selectNavigationMenus( select );\n\n\t\t\tconst {\n\t\t\t\tnavigationMenu,\n\t\t\t\tisNavigationMenuResolved,\n\t\t\t\tisNavigationMenuMissing,\n\t\t\t} = selectExistingMenu( select, ref );\n\n\t\t\treturn {\n\t\t\t\tnavigationMenus,\n\t\t\t\tisResolvingNavigationMenus,\n\t\t\t\thasResolvedNavigationMenus,\n\n\t\t\t\tnavigationMenu,\n\t\t\t\tisNavigationMenuResolved,\n\t\t\t\tisNavigationMenuMissing,\n\n\t\t\t\tcanSwitchNavigationMenu: ref\n\t\t\t\t\t? navigationMenus?.length > 1\n\t\t\t\t\t: navigationMenus?.length > 0,\n\n\t\t\t\tcanUserCreateNavigationMenu: canCreate,\n\t\t\t\tisResolvingCanUserCreateNavigationMenu: isResolving,\n\t\t\t\thasResolvedCanUserCreateNavigationMenu: hasResolved,\n\n\t\t\t\tcanUserUpdateNavigationMenu: canUpdate,\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu: ref\n\t\t\t\t\t? hasResolved\n\t\t\t\t\t: undefined,\n\n\t\t\t\tcanUserDeleteNavigationMenu: canDelete,\n\t\t\t\thasResolvedCanUserDeleteNavigationMenu: ref\n\t\t\t\t\t? hasResolved\n\t\t\t\t\t: undefined,\n\t\t\t};\n\t\t},\n\t\t[ ref, permissions ]\n\t);\n}\n\nfunction selectNavigationMenus( select ) {\n\tconst { getEntityRecords, hasFinishedResolution, isResolving } =\n\t\tselect( coreStore );\n\n\tconst args = [\n\t\t'postType',\n\t\t'wp_navigation',\n\t\t{ per_page: -1, status: [ 'publish', 'draft' ] },\n\t];\n\treturn {\n\t\tnavigationMenus: getEntityRecords( ...args ),\n\t\tisResolvingNavigationMenus: isResolving( 'getEntityRecords', args ),\n\t\thasResolvedNavigationMenus: hasFinishedResolution(\n\t\t\t'getEntityRecords',\n\t\t\targs\n\t\t),\n\t};\n}\n\nfunction selectExistingMenu( select, ref ) {\n\tif ( ! ref ) {\n\t\treturn {\n\t\t\tisNavigationMenuResolved: false,\n\t\t\tisNavigationMenuMissing: true,\n\t\t};\n\t}\n\n\tconst { getEntityRecord, getEditedEntityRecord, hasFinishedResolution } =\n\t\tselect( coreStore );\n\n\tconst args = [ 'postType', 'wp_navigation', ref ];\n\tconst navigationMenu = getEntityRecord( ...args );\n\tconst editedNavigationMenu = getEditedEntityRecord( ...args );\n\tconst hasResolvedNavigationMenu = hasFinishedResolution(\n\t\t'getEditedEntityRecord',\n\t\targs\n\t);\n\n\t// Only published Navigation posts are considered valid.\n\t// Draft Navigation posts are valid only on the editor,\n\t// requiring a post update to publish to show in frontend.\n\t// To achieve that, index.php must reflect this validation only for published.\n\tconst isNavigationMenuPublishedOrDraft =\n\t\teditedNavigationMenu.status === 'publish' ||\n\t\teditedNavigationMenu.status === 'draft';\n\n\treturn {\n\t\tisNavigationMenuResolved: hasResolvedNavigationMenu,\n\t\tisNavigationMenuMissing:\n\t\t\thasResolvedNavigationMenu &&\n\t\t\t( ! navigationMenu || ! isNavigationMenuPublishedOrDraft ),\n\n\t\t// getEditedEntityRecord will return the post regardless of status.\n\t\t// Therefore if the found post is not published then we should ignore it.\n\t\tnavigationMenu: isNavigationMenuPublishedOrDraft\n\t\t\t? editedNavigationMenu\n\t\t\t: null,\n\t};\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/use-navigation-menu.js"],"names":["store","coreStore","useResourcePermissions","useSelect","SELECT_NAVIGATION_MENUS_ARGS","useNavigationMenu","ref","permissions","select","canCreate","canUpdate","canDelete","isResolving","hasResolved","navigationMenus","isResolvingNavigationMenus","hasResolvedNavigationMenus","selectNavigationMenus","navigationMenu","isNavigationMenuResolved","isNavigationMenuMissing","selectExistingMenu","canSwitchNavigationMenu","length","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","undefined","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","getEntityRecords","hasFinishedResolution","getEntityRecord","getEditedEntityRecord","args","editedNavigationMenu","hasResolvedNavigationMenu","isNavigationMenuPublishedOrDraft","status"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,KAAK,IAAIC,SADV,EAECC,sBAFD,QAGO,sBAHP;AAIA,SAASC,SAAT,QAA0B,iBAA1B;AAEA;AACA;AACA;;AACA,SAASC,4BAAT,QAA6C,aAA7C;AAEA,eAAe,SAASC,iBAAT,CAA4BC,GAA5B,EAAkC;AAChD,QAAMC,WAAW,GAAGL,sBAAsB,CAAE,YAAF,EAAgBI,GAAhB,CAA1C;AAEA,SAAOH,SAAS,CACbK,MAAF,IAAc;AACb,UAAM;AACLC,MAAAA,SADK;AAELC,MAAAA,SAFK;AAGLC,MAAAA,SAHK;AAILC,MAAAA,WAJK;AAKLC,MAAAA;AALK,QAMFN,WANJ;AAQA,UAAM;AACLO,MAAAA,eADK;AAELC,MAAAA,0BAFK;AAGLC,MAAAA;AAHK,QAIFC,qBAAqB,CAAET,MAAF,CAJzB;AAMA,UAAM;AACLU,MAAAA,cADK;AAELC,MAAAA,wBAFK;AAGLC,MAAAA;AAHK,QAIFC,kBAAkB,CAAEb,MAAF,EAAUF,GAAV,CAJtB;AAMA,WAAO;AACNQ,MAAAA,eADM;AAENC,MAAAA,0BAFM;AAGNC,MAAAA,0BAHM;AAKNE,MAAAA,cALM;AAMNC,MAAAA,wBANM;AAONC,MAAAA,uBAPM;AASNE,MAAAA,uBAAuB,EAAEhB,GAAG,GACzBQ,eAAe,EAAES,MAAjB,GAA0B,CADD,GAEzBT,eAAe,EAAES,MAAjB,GAA0B,CAXvB;AAaNC,MAAAA,2BAA2B,EAAEf,SAbvB;AAcNgB,MAAAA,sCAAsC,EAAEb,WAdlC;AAeNc,MAAAA,sCAAsC,EAAEb,WAflC;AAiBNc,MAAAA,2BAA2B,EAAEjB,SAjBvB;AAkBNkB,MAAAA,sCAAsC,EAAEtB,GAAG,GACxCO,WADwC,GAExCgB,SApBG;AAsBNC,MAAAA,2BAA2B,EAAEnB,SAtBvB;AAuBNoB,MAAAA,sCAAsC,EAAEzB,GAAG,GACxCO,WADwC,GAExCgB;AAzBG,KAAP;AA2BA,GAjDc,EAkDf,CAAEvB,GAAF,EAAOC,WAAP,CAlDe,CAAhB;AAoDA;;AAED,SAASU,qBAAT,CAAgCT,MAAhC,EAAyC;AACxC,QAAM;AAAEwB,IAAAA,gBAAF;AAAoBC,IAAAA,qBAApB;AAA2CrB,IAAAA;AAA3C,MACLJ,MAAM,CAAEP,SAAF,CADP;AAGA,SAAO;AACNa,IAAAA,eAAe,EAAEkB,gBAAgB,CAAE,GAAG5B,4BAAL,CAD3B;AAENW,IAAAA,0BAA0B,EAAEH,WAAW,CACtC,kBADsC,EAEtCR,4BAFsC,CAFjC;AAMNY,IAAAA,0BAA0B,EAAEiB,qBAAqB,CAChD,kBADgD,EAEhD7B,4BAFgD;AAN3C,GAAP;AAWA;;AAED,SAASiB,kBAAT,CAA6Bb,MAA7B,EAAqCF,GAArC,EAA2C;AAC1C,MAAK,CAAEA,GAAP,EAAa;AACZ,WAAO;AACNa,MAAAA,wBAAwB,EAAE,KADpB;AAENC,MAAAA,uBAAuB,EAAE;AAFnB,KAAP;AAIA;;AAED,QAAM;AAAEc,IAAAA,eAAF;AAAmBC,IAAAA,qBAAnB;AAA0CF,IAAAA;AAA1C,MACLzB,MAAM,CAAEP,SAAF,CADP;AAGA,QAAMmC,IAAI,GAAG,CAAE,UAAF,EAAc,eAAd,EAA+B9B,GAA/B,CAAb;AACA,QAAMY,cAAc,GAAGgB,eAAe,CAAE,GAAGE,IAAL,CAAtC;AACA,QAAMC,oBAAoB,GAAGF,qBAAqB,CAAE,GAAGC,IAAL,CAAlD;AACA,QAAME,yBAAyB,GAAGL,qBAAqB,CACtD,uBADsD,EAEtDG,IAFsD,CAAvD,CAd0C,CAmB1C;AACA;AACA;AACA;;AACA,QAAMG,gCAAgC,GACrCF,oBAAoB,CAACG,MAArB,KAAgC,SAAhC,IACAH,oBAAoB,CAACG,MAArB,KAAgC,OAFjC;AAIA,SAAO;AACNrB,IAAAA,wBAAwB,EAAEmB,yBADpB;AAENlB,IAAAA,uBAAuB,EACtBkB,yBAAyB,KACvB,CAAEpB,cAAF,IAAoB,CAAEqB,gCADC,CAHpB;AAMN;AACA;AACArB,IAAAA,cAAc,EAAEqB,gCAAgC,GAC7CF,oBAD6C,GAE7C;AAVG,GAAP;AAYA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tstore as coreStore,\n\tuseResourcePermissions,\n} from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { SELECT_NAVIGATION_MENUS_ARGS } from './constants';\n\nexport default function useNavigationMenu( ref ) {\n\tconst permissions = useResourcePermissions( 'navigation', ref );\n\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tcanCreate,\n\t\t\t\tcanUpdate,\n\t\t\t\tcanDelete,\n\t\t\t\tisResolving,\n\t\t\t\thasResolved,\n\t\t\t} = permissions;\n\n\t\t\tconst {\n\t\t\t\tnavigationMenus,\n\t\t\t\tisResolvingNavigationMenus,\n\t\t\t\thasResolvedNavigationMenus,\n\t\t\t} = selectNavigationMenus( select );\n\n\t\t\tconst {\n\t\t\t\tnavigationMenu,\n\t\t\t\tisNavigationMenuResolved,\n\t\t\t\tisNavigationMenuMissing,\n\t\t\t} = selectExistingMenu( select, ref );\n\n\t\t\treturn {\n\t\t\t\tnavigationMenus,\n\t\t\t\tisResolvingNavigationMenus,\n\t\t\t\thasResolvedNavigationMenus,\n\n\t\t\t\tnavigationMenu,\n\t\t\t\tisNavigationMenuResolved,\n\t\t\t\tisNavigationMenuMissing,\n\n\t\t\t\tcanSwitchNavigationMenu: ref\n\t\t\t\t\t? navigationMenus?.length > 1\n\t\t\t\t\t: navigationMenus?.length > 0,\n\n\t\t\t\tcanUserCreateNavigationMenu: canCreate,\n\t\t\t\tisResolvingCanUserCreateNavigationMenu: isResolving,\n\t\t\t\thasResolvedCanUserCreateNavigationMenu: hasResolved,\n\n\t\t\t\tcanUserUpdateNavigationMenu: canUpdate,\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu: ref\n\t\t\t\t\t? hasResolved\n\t\t\t\t\t: undefined,\n\n\t\t\t\tcanUserDeleteNavigationMenu: canDelete,\n\t\t\t\thasResolvedCanUserDeleteNavigationMenu: ref\n\t\t\t\t\t? hasResolved\n\t\t\t\t\t: undefined,\n\t\t\t};\n\t\t},\n\t\t[ ref, permissions ]\n\t);\n}\n\nfunction selectNavigationMenus( select ) {\n\tconst { getEntityRecords, hasFinishedResolution, isResolving } =\n\t\tselect( coreStore );\n\n\treturn {\n\t\tnavigationMenus: getEntityRecords( ...SELECT_NAVIGATION_MENUS_ARGS ),\n\t\tisResolvingNavigationMenus: isResolving(\n\t\t\t'getEntityRecords',\n\t\t\tSELECT_NAVIGATION_MENUS_ARGS\n\t\t),\n\t\thasResolvedNavigationMenus: hasFinishedResolution(\n\t\t\t'getEntityRecords',\n\t\t\tSELECT_NAVIGATION_MENUS_ARGS\n\t\t),\n\t};\n}\n\nfunction selectExistingMenu( select, ref ) {\n\tif ( ! ref ) {\n\t\treturn {\n\t\t\tisNavigationMenuResolved: false,\n\t\t\tisNavigationMenuMissing: true,\n\t\t};\n\t}\n\n\tconst { getEntityRecord, getEditedEntityRecord, hasFinishedResolution } =\n\t\tselect( coreStore );\n\n\tconst args = [ 'postType', 'wp_navigation', ref ];\n\tconst navigationMenu = getEntityRecord( ...args );\n\tconst editedNavigationMenu = getEditedEntityRecord( ...args );\n\tconst hasResolvedNavigationMenu = hasFinishedResolution(\n\t\t'getEditedEntityRecord',\n\t\targs\n\t);\n\n\t// Only published Navigation posts are considered valid.\n\t// Draft Navigation posts are valid only on the editor,\n\t// requiring a post update to publish to show in frontend.\n\t// To achieve that, index.php must reflect this validation only for published.\n\tconst isNavigationMenuPublishedOrDraft =\n\t\teditedNavigationMenu.status === 'publish' ||\n\t\teditedNavigationMenu.status === 'draft';\n\n\treturn {\n\t\tisNavigationMenuResolved: hasResolvedNavigationMenu,\n\t\tisNavigationMenuMissing:\n\t\t\thasResolvedNavigationMenu &&\n\t\t\t( ! navigationMenu || ! isNavigationMenuPublishedOrDraft ),\n\n\t\t// getEditedEntityRecord will return the post regardless of status.\n\t\t// Therefore if the found post is not published then we should ignore it.\n\t\tnavigationMenu: isNavigationMenuPublishedOrDraft\n\t\t\t? editedNavigationMenu\n\t\t\t: null,\n\t};\n}\n"]}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * External dependencies
3
+ */
4
+ import MicroModal from 'micromodal'; // Responsive navigation toggle.
5
+
6
+ function navigationToggleModal(modal) {
7
+ const dialogContainer = modal.querySelector(`.wp-block-navigation__responsive-dialog`);
8
+ const isHidden = 'true' === modal.getAttribute('aria-hidden');
9
+ modal.classList.toggle('has-modal-open', !isHidden);
10
+ dialogContainer.toggleAttribute('aria-modal', !isHidden);
11
+
12
+ if (isHidden) {
13
+ dialogContainer.removeAttribute('role');
14
+ dialogContainer.removeAttribute('aria-modal');
15
+ } else {
16
+ dialogContainer.setAttribute('role', 'dialog');
17
+ dialogContainer.setAttribute('aria-modal', 'true');
18
+ } // Add a class to indicate the modal is open.
19
+
20
+
21
+ const htmlElement = document.documentElement;
22
+ htmlElement.classList.toggle('has-modal-open');
23
+ }
24
+
25
+ function isLinkToAnchorOnCurrentPage(node) {
26
+ return node.hash && node.protocol === window.location.protocol && node.host === window.location.host && node.pathname === window.location.pathname && node.search === window.location.search;
27
+ }
28
+
29
+ window.addEventListener('load', () => {
30
+ MicroModal.init({
31
+ onShow: navigationToggleModal,
32
+ onClose: navigationToggleModal,
33
+ openClass: 'is-menu-open'
34
+ }); // Close modal automatically on clicking anchor links inside modal.
35
+
36
+ const navigationLinks = document.querySelectorAll('.wp-block-navigation-item__content');
37
+ navigationLinks.forEach(function (link) {
38
+ // Ignore non-anchor links and anchor links which open on a new tab.
39
+ if (!isLinkToAnchorOnCurrentPage(link) || link.attributes?.target === '_blank') {
40
+ return;
41
+ } // Find the specific parent modal for this link
42
+ // since .close() won't work without an ID if there are
43
+ // multiple navigation menus in a post/page.
44
+
45
+
46
+ const modal = link.closest('.wp-block-navigation__responsive-container');
47
+ const modalId = modal?.getAttribute('id');
48
+ link.addEventListener('click', () => {
49
+ // check if modal exists and is open before trying to close it
50
+ // otherwise Micromodal will toggle the `has-modal-open` class
51
+ // on the html tag which prevents scrolling
52
+ if (modalId && modal.classList.contains('has-modal-open')) {
53
+ MicroModal.close(modalId);
54
+ }
55
+ });
56
+ });
57
+ });
58
+ //# sourceMappingURL=view-modal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/view-modal.js"],"names":["MicroModal","navigationToggleModal","modal","dialogContainer","querySelector","isHidden","getAttribute","classList","toggle","toggleAttribute","removeAttribute","setAttribute","htmlElement","document","documentElement","isLinkToAnchorOnCurrentPage","node","hash","protocol","window","location","host","pathname","search","addEventListener","init","onShow","onClose","openClass","navigationLinks","querySelectorAll","forEach","link","attributes","target","closest","modalId","contains","close"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB,C,CAEA;;AACA,SAASC,qBAAT,CAAgCC,KAAhC,EAAwC;AACvC,QAAMC,eAAe,GAAGD,KAAK,CAACE,aAAN,CACtB,yCADsB,CAAxB;AAIA,QAAMC,QAAQ,GAAG,WAAWH,KAAK,CAACI,YAAN,CAAoB,aAApB,CAA5B;AAEAJ,EAAAA,KAAK,CAACK,SAAN,CAAgBC,MAAhB,CAAwB,gBAAxB,EAA0C,CAAEH,QAA5C;AACAF,EAAAA,eAAe,CAACM,eAAhB,CAAiC,YAAjC,EAA+C,CAAEJ,QAAjD;;AAEA,MAAKA,QAAL,EAAgB;AACfF,IAAAA,eAAe,CAACO,eAAhB,CAAiC,MAAjC;AACAP,IAAAA,eAAe,CAACO,eAAhB,CAAiC,YAAjC;AACA,GAHD,MAGO;AACNP,IAAAA,eAAe,CAACQ,YAAhB,CAA8B,MAA9B,EAAsC,QAAtC;AACAR,IAAAA,eAAe,CAACQ,YAAhB,CAA8B,YAA9B,EAA4C,MAA5C;AACA,GAhBsC,CAkBvC;;;AACA,QAAMC,WAAW,GAAGC,QAAQ,CAACC,eAA7B;AACAF,EAAAA,WAAW,CAACL,SAAZ,CAAsBC,MAAtB,CAA8B,gBAA9B;AACA;;AAED,SAASO,2BAAT,CAAsCC,IAAtC,EAA6C;AAC5C,SACCA,IAAI,CAACC,IAAL,IACAD,IAAI,CAACE,QAAL,KAAkBC,MAAM,CAACC,QAAP,CAAgBF,QADlC,IAEAF,IAAI,CAACK,IAAL,KAAcF,MAAM,CAACC,QAAP,CAAgBC,IAF9B,IAGAL,IAAI,CAACM,QAAL,KAAkBH,MAAM,CAACC,QAAP,CAAgBE,QAHlC,IAIAN,IAAI,CAACO,MAAL,KAAgBJ,MAAM,CAACC,QAAP,CAAgBG,MALjC;AAOA;;AAEDJ,MAAM,CAACK,gBAAP,CAAyB,MAAzB,EAAiC,MAAM;AACtCxB,EAAAA,UAAU,CAACyB,IAAX,CAAiB;AAChBC,IAAAA,MAAM,EAAEzB,qBADQ;AAEhB0B,IAAAA,OAAO,EAAE1B,qBAFO;AAGhB2B,IAAAA,SAAS,EAAE;AAHK,GAAjB,EADsC,CAOtC;;AACA,QAAMC,eAAe,GAAGhB,QAAQ,CAACiB,gBAAT,CACvB,oCADuB,CAAxB;AAIAD,EAAAA,eAAe,CAACE,OAAhB,CAAyB,UAAWC,IAAX,EAAkB;AAC1C;AACA,QACC,CAAEjB,2BAA2B,CAAEiB,IAAF,CAA7B,IACAA,IAAI,CAACC,UAAL,EAAiBC,MAAjB,KAA4B,QAF7B,EAGE;AACD;AACA,KAPyC,CAS1C;AACA;AACA;;;AACA,UAAMhC,KAAK,GAAG8B,IAAI,CAACG,OAAL,CACb,4CADa,CAAd;AAGA,UAAMC,OAAO,GAAGlC,KAAK,EAAEI,YAAP,CAAqB,IAArB,CAAhB;AAEA0B,IAAAA,IAAI,CAACR,gBAAL,CAAuB,OAAvB,EAAgC,MAAM;AACrC;AACA;AACA;AACA,UAAKY,OAAO,IAAIlC,KAAK,CAACK,SAAN,CAAgB8B,QAAhB,CAA0B,gBAA1B,CAAhB,EAA+D;AAC9DrC,QAAAA,UAAU,CAACsC,KAAX,CAAkBF,OAAlB;AACA;AACD,KAPD;AAQA,GAzBD;AA0BA,CAtCD","sourcesContent":["/**\n * External dependencies\n */\nimport MicroModal from 'micromodal';\n\n// Responsive navigation toggle.\nfunction navigationToggleModal( modal ) {\n\tconst dialogContainer = modal.querySelector(\n\t\t`.wp-block-navigation__responsive-dialog`\n\t);\n\n\tconst isHidden = 'true' === modal.getAttribute( 'aria-hidden' );\n\n\tmodal.classList.toggle( 'has-modal-open', ! isHidden );\n\tdialogContainer.toggleAttribute( 'aria-modal', ! isHidden );\n\n\tif ( isHidden ) {\n\t\tdialogContainer.removeAttribute( 'role' );\n\t\tdialogContainer.removeAttribute( 'aria-modal' );\n\t} else {\n\t\tdialogContainer.setAttribute( 'role', 'dialog' );\n\t\tdialogContainer.setAttribute( 'aria-modal', 'true' );\n\t}\n\n\t// Add a class to indicate the modal is open.\n\tconst htmlElement = document.documentElement;\n\thtmlElement.classList.toggle( 'has-modal-open' );\n}\n\nfunction isLinkToAnchorOnCurrentPage( node ) {\n\treturn (\n\t\tnode.hash &&\n\t\tnode.protocol === window.location.protocol &&\n\t\tnode.host === window.location.host &&\n\t\tnode.pathname === window.location.pathname &&\n\t\tnode.search === window.location.search\n\t);\n}\n\nwindow.addEventListener( 'load', () => {\n\tMicroModal.init( {\n\t\tonShow: navigationToggleModal,\n\t\tonClose: navigationToggleModal,\n\t\topenClass: 'is-menu-open',\n\t} );\n\n\t// Close modal automatically on clicking anchor links inside modal.\n\tconst navigationLinks = document.querySelectorAll(\n\t\t'.wp-block-navigation-item__content'\n\t);\n\n\tnavigationLinks.forEach( function ( link ) {\n\t\t// Ignore non-anchor links and anchor links which open on a new tab.\n\t\tif (\n\t\t\t! isLinkToAnchorOnCurrentPage( link ) ||\n\t\t\tlink.attributes?.target === '_blank'\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Find the specific parent modal for this link\n\t\t// since .close() won't work without an ID if there are\n\t\t// multiple navigation menus in a post/page.\n\t\tconst modal = link.closest(\n\t\t\t'.wp-block-navigation__responsive-container'\n\t\t);\n\t\tconst modalId = modal?.getAttribute( 'id' );\n\n\t\tlink.addEventListener( 'click', () => {\n\t\t\t// check if modal exists and is open before trying to close it\n\t\t\t// otherwise Micromodal will toggle the `has-modal-open` class\n\t\t\t// on the html tag which prevents scrolling\n\t\t\tif ( modalId && modal.classList.contains( 'has-modal-open' ) ) {\n\t\t\t\tMicroModal.close( modalId );\n\t\t\t}\n\t\t} );\n\t} );\n} );\n"]}
@@ -0,0 +1,59 @@
1
+ // Open on click functionality.
2
+ function closeSubmenus(element) {
3
+ element.querySelectorAll('[aria-expanded="true"]').forEach(function (toggle) {
4
+ toggle.setAttribute('aria-expanded', 'false');
5
+ });
6
+ }
7
+
8
+ function toggleSubmenuOnClick(event) {
9
+ const buttonToggle = event.target.closest('[aria-expanded]');
10
+ const isSubmenuOpen = buttonToggle.getAttribute('aria-expanded');
11
+
12
+ if (isSubmenuOpen === 'true') {
13
+ closeSubmenus(buttonToggle.closest('.wp-block-navigation-item'));
14
+ } else {
15
+ // Close all sibling submenus.
16
+ const parentElement = buttonToggle.closest('.wp-block-navigation-item');
17
+ const navigationParent = buttonToggle.closest('.wp-block-navigation__submenu-container, .wp-block-navigation__container, .wp-block-page-list');
18
+ navigationParent.querySelectorAll('.wp-block-navigation-item').forEach(function (child) {
19
+ if (child !== parentElement) {
20
+ closeSubmenus(child);
21
+ }
22
+ }); // Open submenu.
23
+
24
+ buttonToggle.setAttribute('aria-expanded', 'true');
25
+ }
26
+ } // Necessary for some themes such as TT1 Blocks, where
27
+ // scripts could be loaded before the body.
28
+
29
+
30
+ window.addEventListener('load', () => {
31
+ const submenuButtons = document.querySelectorAll('.wp-block-navigation-submenu__toggle');
32
+ submenuButtons.forEach(function (button) {
33
+ button.addEventListener('click', toggleSubmenuOnClick);
34
+ }); // Close on click outside.
35
+
36
+ document.addEventListener('click', function (event) {
37
+ const navigationBlocks = document.querySelectorAll('.wp-block-navigation');
38
+ navigationBlocks.forEach(function (block) {
39
+ if (!block.contains(event.target)) {
40
+ closeSubmenus(block);
41
+ }
42
+ });
43
+ }); // Close on focus outside or escape key.
44
+
45
+ document.addEventListener('keyup', function (event) {
46
+ const submenuBlocks = document.querySelectorAll('.wp-block-navigation-item.has-child');
47
+ submenuBlocks.forEach(function (block) {
48
+ if (!block.contains(event.target)) {
49
+ closeSubmenus(block);
50
+ } else if (event.key === 'Escape') {
51
+ const toggle = block.querySelector('[aria-expanded="true"]');
52
+ closeSubmenus(block); // Focus the submenu trigger so focus does not get trapped in the closed submenu.
53
+
54
+ toggle?.focus();
55
+ }
56
+ });
57
+ });
58
+ });
59
+ //# sourceMappingURL=view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/view.js"],"names":["closeSubmenus","element","querySelectorAll","forEach","toggle","setAttribute","toggleSubmenuOnClick","event","buttonToggle","target","closest","isSubmenuOpen","getAttribute","parentElement","navigationParent","child","window","addEventListener","submenuButtons","document","button","navigationBlocks","block","contains","submenuBlocks","key","querySelector","focus"],"mappings":"AAAA;AACA,SAASA,aAAT,CAAwBC,OAAxB,EAAkC;AACjCA,EAAAA,OAAO,CACLC,gBADF,CACoB,wBADpB,EAEEC,OAFF,CAEW,UAAWC,MAAX,EAAoB;AAC7BA,IAAAA,MAAM,CAACC,YAAP,CAAqB,eAArB,EAAsC,OAAtC;AACA,GAJF;AAKA;;AAED,SAASC,oBAAT,CAA+BC,KAA/B,EAAuC;AACtC,QAAMC,YAAY,GAAGD,KAAK,CAACE,MAAN,CAAaC,OAAb,CAAsB,iBAAtB,CAArB;AACA,QAAMC,aAAa,GAAGH,YAAY,CAACI,YAAb,CAA2B,eAA3B,CAAtB;;AAEA,MAAKD,aAAa,KAAK,MAAvB,EAAgC;AAC/BX,IAAAA,aAAa,CAAEQ,YAAY,CAACE,OAAb,CAAsB,2BAAtB,CAAF,CAAb;AACA,GAFD,MAEO;AACN;AACA,UAAMG,aAAa,GAAGL,YAAY,CAACE,OAAb,CACrB,2BADqB,CAAtB;AAGA,UAAMI,gBAAgB,GAAGN,YAAY,CAACE,OAAb,CACxB,+FADwB,CAAzB;AAGAI,IAAAA,gBAAgB,CACdZ,gBADF,CACoB,2BADpB,EAEEC,OAFF,CAEW,UAAWY,KAAX,EAAmB;AAC5B,UAAKA,KAAK,KAAKF,aAAf,EAA+B;AAC9Bb,QAAAA,aAAa,CAAEe,KAAF,CAAb;AACA;AACD,KANF,EARM,CAeN;;AACAP,IAAAA,YAAY,CAACH,YAAb,CAA2B,eAA3B,EAA4C,MAA5C;AACA;AACD,C,CAED;AACA;;;AACAW,MAAM,CAACC,gBAAP,CAAyB,MAAzB,EAAiC,MAAM;AACtC,QAAMC,cAAc,GAAGC,QAAQ,CAACjB,gBAAT,CACtB,sCADsB,CAAvB;AAIAgB,EAAAA,cAAc,CAACf,OAAf,CAAwB,UAAWiB,MAAX,EAAoB;AAC3CA,IAAAA,MAAM,CAACH,gBAAP,CAAyB,OAAzB,EAAkCX,oBAAlC;AACA,GAFD,EALsC,CAStC;;AACAa,EAAAA,QAAQ,CAACF,gBAAT,CAA2B,OAA3B,EAAoC,UAAWV,KAAX,EAAmB;AACtD,UAAMc,gBAAgB,GAAGF,QAAQ,CAACjB,gBAAT,CACxB,sBADwB,CAAzB;AAGAmB,IAAAA,gBAAgB,CAAClB,OAAjB,CAA0B,UAAWmB,KAAX,EAAmB;AAC5C,UAAK,CAAEA,KAAK,CAACC,QAAN,CAAgBhB,KAAK,CAACE,MAAtB,CAAP,EAAwC;AACvCT,QAAAA,aAAa,CAAEsB,KAAF,CAAb;AACA;AACD,KAJD;AAKA,GATD,EAVsC,CAoBtC;;AACAH,EAAAA,QAAQ,CAACF,gBAAT,CAA2B,OAA3B,EAAoC,UAAWV,KAAX,EAAmB;AACtD,UAAMiB,aAAa,GAAGL,QAAQ,CAACjB,gBAAT,CACrB,qCADqB,CAAtB;AAGAsB,IAAAA,aAAa,CAACrB,OAAd,CAAuB,UAAWmB,KAAX,EAAmB;AACzC,UAAK,CAAEA,KAAK,CAACC,QAAN,CAAgBhB,KAAK,CAACE,MAAtB,CAAP,EAAwC;AACvCT,QAAAA,aAAa,CAAEsB,KAAF,CAAb;AACA,OAFD,MAEO,IAAKf,KAAK,CAACkB,GAAN,KAAc,QAAnB,EAA8B;AACpC,cAAMrB,MAAM,GAAGkB,KAAK,CAACI,aAAN,CAAqB,wBAArB,CAAf;AACA1B,QAAAA,aAAa,CAAEsB,KAAF,CAAb,CAFoC,CAGpC;;AACAlB,QAAAA,MAAM,EAAEuB,KAAR;AACA;AACD,KATD;AAUA,GAdD;AAeA,CApCD","sourcesContent":["// Open on click functionality.\nfunction closeSubmenus( element ) {\n\telement\n\t\t.querySelectorAll( '[aria-expanded=\"true\"]' )\n\t\t.forEach( function ( toggle ) {\n\t\t\ttoggle.setAttribute( 'aria-expanded', 'false' );\n\t\t} );\n}\n\nfunction toggleSubmenuOnClick( event ) {\n\tconst buttonToggle = event.target.closest( '[aria-expanded]' );\n\tconst isSubmenuOpen = buttonToggle.getAttribute( 'aria-expanded' );\n\n\tif ( isSubmenuOpen === 'true' ) {\n\t\tcloseSubmenus( buttonToggle.closest( '.wp-block-navigation-item' ) );\n\t} else {\n\t\t// Close all sibling submenus.\n\t\tconst parentElement = buttonToggle.closest(\n\t\t\t'.wp-block-navigation-item'\n\t\t);\n\t\tconst navigationParent = buttonToggle.closest(\n\t\t\t'.wp-block-navigation__submenu-container, .wp-block-navigation__container, .wp-block-page-list'\n\t\t);\n\t\tnavigationParent\n\t\t\t.querySelectorAll( '.wp-block-navigation-item' )\n\t\t\t.forEach( function ( child ) {\n\t\t\t\tif ( child !== parentElement ) {\n\t\t\t\t\tcloseSubmenus( child );\n\t\t\t\t}\n\t\t\t} );\n\t\t// Open submenu.\n\t\tbuttonToggle.setAttribute( 'aria-expanded', 'true' );\n\t}\n}\n\n// Necessary for some themes such as TT1 Blocks, where\n// scripts could be loaded before the body.\nwindow.addEventListener( 'load', () => {\n\tconst submenuButtons = document.querySelectorAll(\n\t\t'.wp-block-navigation-submenu__toggle'\n\t);\n\n\tsubmenuButtons.forEach( function ( button ) {\n\t\tbutton.addEventListener( 'click', toggleSubmenuOnClick );\n\t} );\n\n\t// Close on click outside.\n\tdocument.addEventListener( 'click', function ( event ) {\n\t\tconst navigationBlocks = document.querySelectorAll(\n\t\t\t'.wp-block-navigation'\n\t\t);\n\t\tnavigationBlocks.forEach( function ( block ) {\n\t\t\tif ( ! block.contains( event.target ) ) {\n\t\t\t\tcloseSubmenus( block );\n\t\t\t}\n\t\t} );\n\t} );\n\t// Close on focus outside or escape key.\n\tdocument.addEventListener( 'keyup', function ( event ) {\n\t\tconst submenuBlocks = document.querySelectorAll(\n\t\t\t'.wp-block-navigation-item.has-child'\n\t\t);\n\t\tsubmenuBlocks.forEach( function ( block ) {\n\t\t\tif ( ! block.contains( event.target ) ) {\n\t\t\t\tcloseSubmenus( block );\n\t\t\t} else if ( event.key === 'Escape' ) {\n\t\t\t\tconst toggle = block.querySelector( '[aria-expanded=\"true\"]' );\n\t\t\t\tcloseSubmenus( block );\n\t\t\t\t// Focus the submenu trigger so focus does not get trapped in the closed submenu.\n\t\t\t\ttoggle?.focus();\n\t\t\t}\n\t\t} );\n\t} );\n} );\n"]}
@@ -489,7 +489,8 @@ export default function NavigationLinkEdit({
489
489
  label: __('Rel attribute'),
490
490
  autoComplete: "off",
491
491
  help: __('The relationship of the linked URL as space-separated link types.')
492
- }))), createElement("div", blockProps, createElement("a", {
492
+ }))), createElement("div", { ...blockProps
493
+ }, createElement("a", {
493
494
  className: classes
494
495
  }, !url ? createElement("div", {
495
496
  className: "wp-block-navigation-link__placeholder-text"
@@ -545,6 +546,7 @@ export default function NavigationLinkEdit({
545
546
  onChange: updatedValue => {
546
547
  updateAttributes(updatedValue, setAttributes, attributes);
547
548
  }
548
- })), createElement("div", innerBlocksProps)));
549
+ })), createElement("div", { ...innerBlocksProps
550
+ })));
549
551
  }
550
552
  //# sourceMappingURL=edit.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation-link/edit.js"],"names":["classnames","createBlock","useSelect","useDispatch","PanelBody","TextControl","TextareaControl","ToolbarButton","Tooltip","ToolbarGroup","displayShortcut","isKeyboardEvent","ENTER","__","BlockControls","InspectorControls","RichText","useBlockProps","store","blockEditorStore","getColorClassName","useInnerBlocksProps","isURL","prependHTTP","useState","useEffect","useRef","placeCaretAtHorizontalEdge","__unstableStripHTML","stripHTML","decodeEntities","link","linkIcon","addSubmenu","coreStore","useResourcePermissions","useMergeRefs","LinkUI","updateAttributes","getColors","useIsDraggingWithin","elementRef","isDraggingWithin","setIsDraggingWithin","ownerDocument","current","handleDragStart","event","handleDragEnter","handleDragEnd","contains","target","addEventListener","removeEventListener","useIsInvalidLink","kind","type","id","isPostType","hasId","Number","isInteger","postStatus","select","getEntityRecord","status","isInvalid","isDraft","getMissingText","missingText","NavigationLinkEdit","attributes","isSelected","setAttributes","insertBlocksAfter","mergeBlocks","onReplace","context","clientId","label","url","description","rel","title","maxNestingLevel","replaceBlock","__unstableMarkNextChangeAsNotPersistent","isLinkOpen","setIsLinkOpen","popoverAnchor","setPopoverAnchor","listItemRef","itemLabelPlaceholder","ref","pagesPermissions","postsPermissions","innerBlocks","isAtMaxNesting","isTopLevelLink","isParentOfSelectedBlock","hasChildren","getBlocks","getBlockCount","getBlockName","getBlockRootClientId","hasSelectedInnerBlock","getBlockParentsByBlockName","name","length","transformToSubmenu","newSubmenu","test","selectLabelText","focus","defaultView","selection","getSelection","range","createRange","selectNodeContents","removeAllRanges","addRange","removeLink","undefined","opensInNewTab","userCanCreate","canCreate","textColor","customTextColor","backgroundColor","customBackgroundColor","onKeyDown","primary","keyCode","blockProps","className","style","color","ALLOWED_BLOCKS","DEFAULT_BLOCK","innerBlocksProps","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","renderAppender","onClick","classes","placeholderText","tooltipText","labelValue","urlValue","descriptionValue","titleValue","relValue","trim","updatedValue"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tTextControl,\n\tTextareaControl,\n\tToolbarButton,\n\tTooltip,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { displayShortcut, isKeyboardEvent, ENTER } from '@wordpress/keycodes';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tgetColorClassName,\n\tuseInnerBlocksProps,\n} from '@wordpress/block-editor';\nimport { isURL, prependHTTP } from '@wordpress/url';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport {\n\tplaceCaretAtHorizontalEdge,\n\t__unstableStripHTML as stripHTML,\n} from '@wordpress/dom';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { link as linkIcon, addSubmenu } from '@wordpress/icons';\nimport {\n\tstore as coreStore,\n\tuseResourcePermissions,\n} from '@wordpress/core-data';\nimport { useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { name } from './block.json';\nimport { LinkUI } from './link-ui';\nimport { updateAttributes } from './update-attributes';\nimport { getColors } from '../navigation/edit/utils';\n\n/**\n * A React hook to determine if it's dragging within the target element.\n *\n * @typedef {import('@wordpress/element').RefObject} RefObject\n *\n * @param {RefObject<HTMLElement>} elementRef The target elementRef object.\n *\n * @return {boolean} Is dragging within the target element.\n */\nconst useIsDraggingWithin = ( elementRef ) => {\n\tconst [ isDraggingWithin, setIsDraggingWithin ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst { ownerDocument } = elementRef.current;\n\n\t\tfunction handleDragStart( event ) {\n\t\t\t// Check the first time when the dragging starts.\n\t\t\thandleDragEnter( event );\n\t\t}\n\n\t\t// Set to false whenever the user cancel the drag event by either releasing the mouse or press Escape.\n\t\tfunction handleDragEnd() {\n\t\t\tsetIsDraggingWithin( false );\n\t\t}\n\n\t\tfunction handleDragEnter( event ) {\n\t\t\t// Check if the current target is inside the item element.\n\t\t\tif ( elementRef.current.contains( event.target ) ) {\n\t\t\t\tsetIsDraggingWithin( true );\n\t\t\t} else {\n\t\t\t\tsetIsDraggingWithin( false );\n\t\t\t}\n\t\t}\n\n\t\t// Bind these events to the document to catch all drag events.\n\t\t// Ideally, we can also use `event.relatedTarget`, but sadly that\n\t\t// doesn't work in Safari.\n\t\townerDocument.addEventListener( 'dragstart', handleDragStart );\n\t\townerDocument.addEventListener( 'dragend', handleDragEnd );\n\t\townerDocument.addEventListener( 'dragenter', handleDragEnter );\n\n\t\treturn () => {\n\t\t\townerDocument.removeEventListener( 'dragstart', handleDragStart );\n\t\t\townerDocument.removeEventListener( 'dragend', handleDragEnd );\n\t\t\townerDocument.removeEventListener( 'dragenter', handleDragEnter );\n\t\t};\n\t}, [] );\n\n\treturn isDraggingWithin;\n};\n\nconst useIsInvalidLink = ( kind, type, id ) => {\n\tconst isPostType =\n\t\tkind === 'post-type' || type === 'post' || type === 'page';\n\tconst hasId = Number.isInteger( id );\n\tconst postStatus = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isPostType ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\treturn getEntityRecord( 'postType', type, id )?.status;\n\t\t},\n\t\t[ isPostType, type, id ]\n\t);\n\n\t// Check Navigation Link validity if:\n\t// 1. Link is 'post-type'.\n\t// 2. It has an id.\n\t// 3. It's neither null, nor undefined, as valid items might be either of those while loading.\n\t// If those conditions are met, check if\n\t// 1. The post status is published.\n\t// 2. The Navigation Link item has no label.\n\t// If either of those is true, invalidate.\n\tconst isInvalid =\n\t\tisPostType && hasId && postStatus && 'trash' === postStatus;\n\tconst isDraft = 'draft' === postStatus;\n\n\treturn [ isInvalid, isDraft ];\n};\n\nfunction getMissingText( type ) {\n\tlet missingText = '';\n\n\tswitch ( type ) {\n\t\tcase 'post':\n\t\t\t/* translators: label for missing post in navigation link block */\n\t\t\tmissingText = __( 'Select post' );\n\t\t\tbreak;\n\t\tcase 'page':\n\t\t\t/* translators: label for missing page in navigation link block */\n\t\t\tmissingText = __( 'Select page' );\n\t\t\tbreak;\n\t\tcase 'category':\n\t\t\t/* translators: label for missing category in navigation link block */\n\t\t\tmissingText = __( 'Select category' );\n\t\t\tbreak;\n\t\tcase 'tag':\n\t\t\t/* translators: label for missing tag in navigation link block */\n\t\t\tmissingText = __( 'Select tag' );\n\t\t\tbreak;\n\t\tdefault:\n\t\t\t/* translators: label for missing values in navigation link block */\n\t\t\tmissingText = __( 'Add link' );\n\t}\n\n\treturn missingText;\n}\n\nexport default function NavigationLinkEdit( {\n\tattributes,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tmergeBlocks,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst { id, label, type, url, description, rel, title, kind } = attributes;\n\n\tconst [ isInvalid, isDraft ] = useIsInvalidLink( kind, type, id );\n\tconst { maxNestingLevel } = context;\n\n\tconst { replaceBlock, __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst [ isLinkOpen, setIsLinkOpen ] = useState( false );\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\tconst listItemRef = useRef( null );\n\tconst isDraggingWithin = useIsDraggingWithin( listItemRef );\n\tconst itemLabelPlaceholder = __( 'Add label…' );\n\tconst ref = useRef();\n\n\tconst pagesPermissions = useResourcePermissions( 'pages' );\n\tconst postsPermissions = useResourcePermissions( 'posts' );\n\n\tconst {\n\t\tinnerBlocks,\n\t\tisAtMaxNesting,\n\t\tisTopLevelLink,\n\t\tisParentOfSelectedBlock,\n\t\thasChildren,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlocks,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisAtMaxNesting:\n\t\t\t\t\tgetBlockParentsByBlockName( clientId, [\n\t\t\t\t\t\tname,\n\t\t\t\t\t\t'core/navigation-submenu',\n\t\t\t\t\t] ).length >= maxNestingLevel,\n\t\t\t\tisTopLevelLink:\n\t\t\t\t\tgetBlockName( getBlockRootClientId( clientId ) ) ===\n\t\t\t\t\t'core/navigation',\n\t\t\t\tisParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\ttrue\n\t\t\t\t),\n\t\t\t\thasChildren: !! getBlockCount( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\t/**\n\t * Transform to submenu block.\n\t */\n\tfunction transformToSubmenu() {\n\t\tconst newSubmenu = createBlock(\n\t\t\t'core/navigation-submenu',\n\t\t\tattributes,\n\t\t\tinnerBlocks.length > 0\n\t\t\t\t? innerBlocks\n\t\t\t\t: [ createBlock( 'core/navigation-link' ) ]\n\t\t);\n\t\treplaceBlock( clientId, newSubmenu );\n\t}\n\n\tuseEffect( () => {\n\t\t// Show the LinkControl on mount if the URL is empty\n\t\t// ( When adding a new menu item)\n\t\t// This can't be done in the useState call because it conflicts\n\t\t// with the autofocus behavior of the BlockListBlock component.\n\t\tif ( ! url ) {\n\t\t\tsetIsLinkOpen( true );\n\t\t}\n\t}, [ url ] );\n\n\tuseEffect( () => {\n\t\t// If block has inner blocks, transform to Submenu.\n\t\tif ( hasChildren ) {\n\t\t\t// This side-effect should not create an undo level as those should\n\t\t\t// only be created via user interactions.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\ttransformToSubmenu();\n\t\t}\n\t}, [ hasChildren ] );\n\n\t/**\n\t * The hook shouldn't be necessary but due to a focus loss happening\n\t * when selecting a suggestion in the link popover, we force close on block unselection.\n\t */\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsLinkOpen( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// If the LinkControl popover is open and the URL has changed, close the LinkControl and focus the label text.\n\tuseEffect( () => {\n\t\tif ( isLinkOpen && url ) {\n\t\t\t// Does this look like a URL and have something TLD-ish?\n\t\t\tif (\n\t\t\t\tisURL( prependHTTP( label ) ) &&\n\t\t\t\t/^.+\\.[a-z]+/.test( label )\n\t\t\t) {\n\t\t\t\t// Focus and select the label text.\n\t\t\t\tselectLabelText();\n\t\t\t} else {\n\t\t\t\t// Focus it (but do not select).\n\t\t\t\tplaceCaretAtHorizontalEdge( ref.current, true );\n\t\t\t}\n\t\t}\n\t}, [ url ] );\n\n\t/**\n\t * Focus the Link label text and select it.\n\t */\n\tfunction selectLabelText() {\n\t\tref.current.focus();\n\t\tconst { ownerDocument } = ref.current;\n\t\tconst { defaultView } = ownerDocument;\n\t\tconst selection = defaultView.getSelection();\n\t\tconst range = ownerDocument.createRange();\n\t\t// Get the range of the current ref contents so we can add this range to the selection.\n\t\trange.selectNodeContents( ref.current );\n\t\tselection.removeAllRanges();\n\t\tselection.addRange( range );\n\t}\n\n\t/**\n\t * Removes the current link if set.\n\t */\n\tfunction removeLink() {\n\t\t// Reset all attributes that comprise the link.\n\t\t// It is critical that all attributes are reset\n\t\t// to their default values otherwise this may\n\t\t// in advertently trigger side effects because\n\t\t// the values will have \"changed\".\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlabel: undefined,\n\t\t\tid: undefined,\n\t\t\tkind: undefined,\n\t\t\ttype: undefined,\n\t\t\topensInNewTab: false,\n\t\t} );\n\n\t\t// Close the link editing UI.\n\t\tsetIsLinkOpen( false );\n\t}\n\n\tlet userCanCreate = false;\n\tif ( ! type || type === 'page' ) {\n\t\tuserCanCreate = pagesPermissions.canCreate;\n\t} else if ( type === 'post' ) {\n\t\tuserCanCreate = postsPermissions.canCreate;\n\t}\n\n\tconst {\n\t\ttextColor,\n\t\tcustomTextColor,\n\t\tbackgroundColor,\n\t\tcustomBackgroundColor,\n\t} = getColors( context, ! isTopLevelLink );\n\n\tfunction onKeyDown( event ) {\n\t\tif (\n\t\t\tisKeyboardEvent.primary( event, 'k' ) ||\n\t\t\t( ( ! url || isDraft || isInvalid ) && event.keyCode === ENTER )\n\t\t) {\n\t\t\tsetIsLinkOpen( true );\n\t\t}\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, listItemRef ] ),\n\t\tclassName: classnames( 'wp-block-navigation-item', {\n\t\t\t'is-editing': isSelected || isParentOfSelectedBlock,\n\t\t\t'is-dragging-within': isDraggingWithin,\n\t\t\t'has-link': !! url,\n\t\t\t'has-child': hasChildren,\n\t\t\t'has-text-color': !! textColor || !! customTextColor,\n\t\t\t[ getColorClassName( 'color', textColor ) ]: !! textColor,\n\t\t\t'has-background': !! backgroundColor || customBackgroundColor,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor ) ]:\n\t\t\t\t!! backgroundColor,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor && customTextColor,\n\t\t\tbackgroundColor: ! backgroundColor && customBackgroundColor,\n\t\t},\n\t\tonKeyDown,\n\t} );\n\n\tconst ALLOWED_BLOCKS = [\n\t\t'core/navigation-link',\n\t\t'core/navigation-submenu',\n\t\t'core/page-list',\n\t];\n\tconst DEFAULT_BLOCK = {\n\t\tname: 'core/navigation-link',\n\t};\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\t...blockProps,\n\t\t\tclassName: 'remove-outline', // Remove the outline from the inner blocks container.\n\t\t},\n\t\t{\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t\t__experimentalDirectInsert: true,\n\t\t\trenderAppender: false,\n\t\t}\n\t);\n\n\tif ( ! url || isInvalid || isDraft ) {\n\t\tblockProps.onClick = () => setIsLinkOpen( true );\n\t}\n\n\tconst classes = classnames( 'wp-block-navigation-item__content', {\n\t\t'wp-block-navigation-link__placeholder': ! url || isInvalid || isDraft,\n\t} );\n\n\tconst missingText = getMissingText( type );\n\t/* translators: Whether the navigation link is Invalid or a Draft. */\n\tconst placeholderText = `(${\n\t\tisInvalid ? __( 'Invalid' ) : __( 'Draft' )\n\t})`;\n\tconst tooltipText =\n\t\tisInvalid || isDraft\n\t\t\t? __( 'This item has been deleted, or is a draft' )\n\t\t\t: __( 'This item is missing a link' );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkIcon }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ () => setIsLinkOpen( true ) }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! isAtMaxNesting && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tname=\"submenu\"\n\t\t\t\t\t\t\ticon={ addSubmenu }\n\t\t\t\t\t\t\ttitle={ __( 'Add submenu' ) }\n\t\t\t\t\t\t\tonClick={ transformToSubmenu }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t\t{ /* Warning, this duplicated in packages/block-library/src/navigation-submenu/edit.js */ }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ label ? stripHTML( label ) : '' }\n\t\t\t\t\t\tonChange={ ( labelValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { label: labelValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Label' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ url || '' }\n\t\t\t\t\t\tonChange={ ( urlValue ) => {\n\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t{ url: urlValue },\n\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\tattributes\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'URL' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t/>\n\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ description || '' }\n\t\t\t\t\t\tonChange={ ( descriptionValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { description: descriptionValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Description' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The description will be displayed in the menu if the current theme supports it.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\t\tonChange={ ( titleValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { title: titleValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Additional information to help clarify the purpose of the link.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( relValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { rel: relValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Rel attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The relationship of the linked URL as space-separated link types.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ /* eslint-disable jsx-a11y/anchor-is-valid */ }\n\t\t\t\t<a className={ classes }>\n\t\t\t\t\t{ /* eslint-enable */ }\n\t\t\t\t\t{ ! url ? (\n\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text\">\n\t\t\t\t\t\t\t<Tooltip position=\"top center\" text={ tooltipText }>\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<span>{ missingText }</span>\n\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-link__missing_text-tooltip\">\n\t\t\t\t\t\t\t\t\t\t{ tooltipText }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isInvalid && ! isDraft && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-navigation-item__label\"\n\t\t\t\t\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( labelValue ) =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: labelValue,\n\t\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\t\t\t\t\tcreateBlock(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'core/navigation-link'\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tplaceholder={ itemLabelPlaceholder }\n\t\t\t\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\t\t\t\tallowedFormats={ [\n\t\t\t\t\t\t\t\t\t\t\t'core/bold',\n\t\t\t\t\t\t\t\t\t\t\t'core/italic',\n\t\t\t\t\t\t\t\t\t\t\t'core/image',\n\t\t\t\t\t\t\t\t\t\t\t'core/strikethrough',\n\t\t\t\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\tif ( ! url ) {\n\t\t\t\t\t\t\t\t\t\t\t\tsetIsLinkOpen( true );\n\t\t\t\t\t\t\t\t\t\t\t}\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{ description && (\n\t\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-item__description\">\n\t\t\t\t\t\t\t\t\t\t\t{ description }\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t) }\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{ ( isInvalid || isDraft ) && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text wp-block-navigation-link__label\">\n\t\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\t\t\ttext={ tooltipText }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Some attributes are stored in an escaped form. It's a legacy issue.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Ideally they would be stored in a raw, unescaped form.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Unescape is used here to \"recover\" the escaped characters\n\t\t\t\t\t\t\t\t\t\t\t\t\t// so they display without encoding.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// See `updateAttributes` for more details.\n\t\t\t\t\t\t\t\t\t\t\t\t\t`${ decodeEntities(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t\t\t\t\t) } ${ placeholderText }`.trim()\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-link__missing_text-tooltip\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ tooltipText }\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isLinkOpen && (\n\t\t\t\t\t\t<LinkUI\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-link__inline-link-input\"\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tlink={ attributes }\n\t\t\t\t\t\t\tonClose={ () => setIsLinkOpen( false ) }\n\t\t\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\t\t\thasCreateSuggestion={ userCanCreate }\n\t\t\t\t\t\t\tonRemove={ removeLink }\n\t\t\t\t\t\t\tonChange={ ( updatedValue ) => {\n\t\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t\tupdatedValue,\n\t\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\t\tattributes\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</a>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation-link/edit.js"],"names":["classnames","createBlock","useSelect","useDispatch","PanelBody","TextControl","TextareaControl","ToolbarButton","Tooltip","ToolbarGroup","displayShortcut","isKeyboardEvent","ENTER","__","BlockControls","InspectorControls","RichText","useBlockProps","store","blockEditorStore","getColorClassName","useInnerBlocksProps","isURL","prependHTTP","useState","useEffect","useRef","placeCaretAtHorizontalEdge","__unstableStripHTML","stripHTML","decodeEntities","link","linkIcon","addSubmenu","coreStore","useResourcePermissions","useMergeRefs","LinkUI","updateAttributes","getColors","useIsDraggingWithin","elementRef","isDraggingWithin","setIsDraggingWithin","ownerDocument","current","handleDragStart","event","handleDragEnter","handleDragEnd","contains","target","addEventListener","removeEventListener","useIsInvalidLink","kind","type","id","isPostType","hasId","Number","isInteger","postStatus","select","getEntityRecord","status","isInvalid","isDraft","getMissingText","missingText","NavigationLinkEdit","attributes","isSelected","setAttributes","insertBlocksAfter","mergeBlocks","onReplace","context","clientId","label","url","description","rel","title","maxNestingLevel","replaceBlock","__unstableMarkNextChangeAsNotPersistent","isLinkOpen","setIsLinkOpen","popoverAnchor","setPopoverAnchor","listItemRef","itemLabelPlaceholder","ref","pagesPermissions","postsPermissions","innerBlocks","isAtMaxNesting","isTopLevelLink","isParentOfSelectedBlock","hasChildren","getBlocks","getBlockCount","getBlockName","getBlockRootClientId","hasSelectedInnerBlock","getBlockParentsByBlockName","name","length","transformToSubmenu","newSubmenu","test","selectLabelText","focus","defaultView","selection","getSelection","range","createRange","selectNodeContents","removeAllRanges","addRange","removeLink","undefined","opensInNewTab","userCanCreate","canCreate","textColor","customTextColor","backgroundColor","customBackgroundColor","onKeyDown","primary","keyCode","blockProps","className","style","color","ALLOWED_BLOCKS","DEFAULT_BLOCK","innerBlocksProps","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","renderAppender","onClick","classes","placeholderText","tooltipText","labelValue","urlValue","descriptionValue","titleValue","relValue","trim","updatedValue"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tTextControl,\n\tTextareaControl,\n\tToolbarButton,\n\tTooltip,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { displayShortcut, isKeyboardEvent, ENTER } from '@wordpress/keycodes';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tgetColorClassName,\n\tuseInnerBlocksProps,\n} from '@wordpress/block-editor';\nimport { isURL, prependHTTP } from '@wordpress/url';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport {\n\tplaceCaretAtHorizontalEdge,\n\t__unstableStripHTML as stripHTML,\n} from '@wordpress/dom';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { link as linkIcon, addSubmenu } from '@wordpress/icons';\nimport {\n\tstore as coreStore,\n\tuseResourcePermissions,\n} from '@wordpress/core-data';\nimport { useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { name } from './block.json';\nimport { LinkUI } from './link-ui';\nimport { updateAttributes } from './update-attributes';\nimport { getColors } from '../navigation/edit/utils';\n\n/**\n * A React hook to determine if it's dragging within the target element.\n *\n * @typedef {import('@wordpress/element').RefObject} RefObject\n *\n * @param {RefObject<HTMLElement>} elementRef The target elementRef object.\n *\n * @return {boolean} Is dragging within the target element.\n */\nconst useIsDraggingWithin = ( elementRef ) => {\n\tconst [ isDraggingWithin, setIsDraggingWithin ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst { ownerDocument } = elementRef.current;\n\n\t\tfunction handleDragStart( event ) {\n\t\t\t// Check the first time when the dragging starts.\n\t\t\thandleDragEnter( event );\n\t\t}\n\n\t\t// Set to false whenever the user cancel the drag event by either releasing the mouse or press Escape.\n\t\tfunction handleDragEnd() {\n\t\t\tsetIsDraggingWithin( false );\n\t\t}\n\n\t\tfunction handleDragEnter( event ) {\n\t\t\t// Check if the current target is inside the item element.\n\t\t\tif ( elementRef.current.contains( event.target ) ) {\n\t\t\t\tsetIsDraggingWithin( true );\n\t\t\t} else {\n\t\t\t\tsetIsDraggingWithin( false );\n\t\t\t}\n\t\t}\n\n\t\t// Bind these events to the document to catch all drag events.\n\t\t// Ideally, we can also use `event.relatedTarget`, but sadly that\n\t\t// doesn't work in Safari.\n\t\townerDocument.addEventListener( 'dragstart', handleDragStart );\n\t\townerDocument.addEventListener( 'dragend', handleDragEnd );\n\t\townerDocument.addEventListener( 'dragenter', handleDragEnter );\n\n\t\treturn () => {\n\t\t\townerDocument.removeEventListener( 'dragstart', handleDragStart );\n\t\t\townerDocument.removeEventListener( 'dragend', handleDragEnd );\n\t\t\townerDocument.removeEventListener( 'dragenter', handleDragEnter );\n\t\t};\n\t}, [] );\n\n\treturn isDraggingWithin;\n};\n\nconst useIsInvalidLink = ( kind, type, id ) => {\n\tconst isPostType =\n\t\tkind === 'post-type' || type === 'post' || type === 'page';\n\tconst hasId = Number.isInteger( id );\n\tconst postStatus = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isPostType ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\treturn getEntityRecord( 'postType', type, id )?.status;\n\t\t},\n\t\t[ isPostType, type, id ]\n\t);\n\n\t// Check Navigation Link validity if:\n\t// 1. Link is 'post-type'.\n\t// 2. It has an id.\n\t// 3. It's neither null, nor undefined, as valid items might be either of those while loading.\n\t// If those conditions are met, check if\n\t// 1. The post status is published.\n\t// 2. The Navigation Link item has no label.\n\t// If either of those is true, invalidate.\n\tconst isInvalid =\n\t\tisPostType && hasId && postStatus && 'trash' === postStatus;\n\tconst isDraft = 'draft' === postStatus;\n\n\treturn [ isInvalid, isDraft ];\n};\n\nfunction getMissingText( type ) {\n\tlet missingText = '';\n\n\tswitch ( type ) {\n\t\tcase 'post':\n\t\t\t/* translators: label for missing post in navigation link block */\n\t\t\tmissingText = __( 'Select post' );\n\t\t\tbreak;\n\t\tcase 'page':\n\t\t\t/* translators: label for missing page in navigation link block */\n\t\t\tmissingText = __( 'Select page' );\n\t\t\tbreak;\n\t\tcase 'category':\n\t\t\t/* translators: label for missing category in navigation link block */\n\t\t\tmissingText = __( 'Select category' );\n\t\t\tbreak;\n\t\tcase 'tag':\n\t\t\t/* translators: label for missing tag in navigation link block */\n\t\t\tmissingText = __( 'Select tag' );\n\t\t\tbreak;\n\t\tdefault:\n\t\t\t/* translators: label for missing values in navigation link block */\n\t\t\tmissingText = __( 'Add link' );\n\t}\n\n\treturn missingText;\n}\n\nexport default function NavigationLinkEdit( {\n\tattributes,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tmergeBlocks,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst { id, label, type, url, description, rel, title, kind } = attributes;\n\n\tconst [ isInvalid, isDraft ] = useIsInvalidLink( kind, type, id );\n\tconst { maxNestingLevel } = context;\n\n\tconst { replaceBlock, __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst [ isLinkOpen, setIsLinkOpen ] = useState( false );\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\tconst listItemRef = useRef( null );\n\tconst isDraggingWithin = useIsDraggingWithin( listItemRef );\n\tconst itemLabelPlaceholder = __( 'Add label…' );\n\tconst ref = useRef();\n\n\tconst pagesPermissions = useResourcePermissions( 'pages' );\n\tconst postsPermissions = useResourcePermissions( 'posts' );\n\n\tconst {\n\t\tinnerBlocks,\n\t\tisAtMaxNesting,\n\t\tisTopLevelLink,\n\t\tisParentOfSelectedBlock,\n\t\thasChildren,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlocks,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisAtMaxNesting:\n\t\t\t\t\tgetBlockParentsByBlockName( clientId, [\n\t\t\t\t\t\tname,\n\t\t\t\t\t\t'core/navigation-submenu',\n\t\t\t\t\t] ).length >= maxNestingLevel,\n\t\t\t\tisTopLevelLink:\n\t\t\t\t\tgetBlockName( getBlockRootClientId( clientId ) ) ===\n\t\t\t\t\t'core/navigation',\n\t\t\t\tisParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\ttrue\n\t\t\t\t),\n\t\t\t\thasChildren: !! getBlockCount( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\t/**\n\t * Transform to submenu block.\n\t */\n\tfunction transformToSubmenu() {\n\t\tconst newSubmenu = createBlock(\n\t\t\t'core/navigation-submenu',\n\t\t\tattributes,\n\t\t\tinnerBlocks.length > 0\n\t\t\t\t? innerBlocks\n\t\t\t\t: [ createBlock( 'core/navigation-link' ) ]\n\t\t);\n\t\treplaceBlock( clientId, newSubmenu );\n\t}\n\n\tuseEffect( () => {\n\t\t// Show the LinkControl on mount if the URL is empty\n\t\t// ( When adding a new menu item)\n\t\t// This can't be done in the useState call because it conflicts\n\t\t// with the autofocus behavior of the BlockListBlock component.\n\t\tif ( ! url ) {\n\t\t\tsetIsLinkOpen( true );\n\t\t}\n\t}, [ url ] );\n\n\tuseEffect( () => {\n\t\t// If block has inner blocks, transform to Submenu.\n\t\tif ( hasChildren ) {\n\t\t\t// This side-effect should not create an undo level as those should\n\t\t\t// only be created via user interactions.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\ttransformToSubmenu();\n\t\t}\n\t}, [ hasChildren ] );\n\n\t/**\n\t * The hook shouldn't be necessary but due to a focus loss happening\n\t * when selecting a suggestion in the link popover, we force close on block unselection.\n\t */\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsLinkOpen( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// If the LinkControl popover is open and the URL has changed, close the LinkControl and focus the label text.\n\tuseEffect( () => {\n\t\tif ( isLinkOpen && url ) {\n\t\t\t// Does this look like a URL and have something TLD-ish?\n\t\t\tif (\n\t\t\t\tisURL( prependHTTP( label ) ) &&\n\t\t\t\t/^.+\\.[a-z]+/.test( label )\n\t\t\t) {\n\t\t\t\t// Focus and select the label text.\n\t\t\t\tselectLabelText();\n\t\t\t} else {\n\t\t\t\t// Focus it (but do not select).\n\t\t\t\tplaceCaretAtHorizontalEdge( ref.current, true );\n\t\t\t}\n\t\t}\n\t}, [ url ] );\n\n\t/**\n\t * Focus the Link label text and select it.\n\t */\n\tfunction selectLabelText() {\n\t\tref.current.focus();\n\t\tconst { ownerDocument } = ref.current;\n\t\tconst { defaultView } = ownerDocument;\n\t\tconst selection = defaultView.getSelection();\n\t\tconst range = ownerDocument.createRange();\n\t\t// Get the range of the current ref contents so we can add this range to the selection.\n\t\trange.selectNodeContents( ref.current );\n\t\tselection.removeAllRanges();\n\t\tselection.addRange( range );\n\t}\n\n\t/**\n\t * Removes the current link if set.\n\t */\n\tfunction removeLink() {\n\t\t// Reset all attributes that comprise the link.\n\t\t// It is critical that all attributes are reset\n\t\t// to their default values otherwise this may\n\t\t// in advertently trigger side effects because\n\t\t// the values will have \"changed\".\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlabel: undefined,\n\t\t\tid: undefined,\n\t\t\tkind: undefined,\n\t\t\ttype: undefined,\n\t\t\topensInNewTab: false,\n\t\t} );\n\n\t\t// Close the link editing UI.\n\t\tsetIsLinkOpen( false );\n\t}\n\n\tlet userCanCreate = false;\n\tif ( ! type || type === 'page' ) {\n\t\tuserCanCreate = pagesPermissions.canCreate;\n\t} else if ( type === 'post' ) {\n\t\tuserCanCreate = postsPermissions.canCreate;\n\t}\n\n\tconst {\n\t\ttextColor,\n\t\tcustomTextColor,\n\t\tbackgroundColor,\n\t\tcustomBackgroundColor,\n\t} = getColors( context, ! isTopLevelLink );\n\n\tfunction onKeyDown( event ) {\n\t\tif (\n\t\t\tisKeyboardEvent.primary( event, 'k' ) ||\n\t\t\t( ( ! url || isDraft || isInvalid ) && event.keyCode === ENTER )\n\t\t) {\n\t\t\tsetIsLinkOpen( true );\n\t\t}\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, listItemRef ] ),\n\t\tclassName: classnames( 'wp-block-navigation-item', {\n\t\t\t'is-editing': isSelected || isParentOfSelectedBlock,\n\t\t\t'is-dragging-within': isDraggingWithin,\n\t\t\t'has-link': !! url,\n\t\t\t'has-child': hasChildren,\n\t\t\t'has-text-color': !! textColor || !! customTextColor,\n\t\t\t[ getColorClassName( 'color', textColor ) ]: !! textColor,\n\t\t\t'has-background': !! backgroundColor || customBackgroundColor,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor ) ]:\n\t\t\t\t!! backgroundColor,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor && customTextColor,\n\t\t\tbackgroundColor: ! backgroundColor && customBackgroundColor,\n\t\t},\n\t\tonKeyDown,\n\t} );\n\n\tconst ALLOWED_BLOCKS = [\n\t\t'core/navigation-link',\n\t\t'core/navigation-submenu',\n\t\t'core/page-list',\n\t];\n\tconst DEFAULT_BLOCK = {\n\t\tname: 'core/navigation-link',\n\t};\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\t...blockProps,\n\t\t\tclassName: 'remove-outline', // Remove the outline from the inner blocks container.\n\t\t},\n\t\t{\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t\t__experimentalDirectInsert: true,\n\t\t\trenderAppender: false,\n\t\t}\n\t);\n\n\tif ( ! url || isInvalid || isDraft ) {\n\t\tblockProps.onClick = () => setIsLinkOpen( true );\n\t}\n\n\tconst classes = classnames( 'wp-block-navigation-item__content', {\n\t\t'wp-block-navigation-link__placeholder': ! url || isInvalid || isDraft,\n\t} );\n\n\tconst missingText = getMissingText( type );\n\t/* translators: Whether the navigation link is Invalid or a Draft. */\n\tconst placeholderText = `(${\n\t\tisInvalid ? __( 'Invalid' ) : __( 'Draft' )\n\t})`;\n\tconst tooltipText =\n\t\tisInvalid || isDraft\n\t\t\t? __( 'This item has been deleted, or is a draft' )\n\t\t\t: __( 'This item is missing a link' );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkIcon }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ () => setIsLinkOpen( true ) }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! isAtMaxNesting && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tname=\"submenu\"\n\t\t\t\t\t\t\ticon={ addSubmenu }\n\t\t\t\t\t\t\ttitle={ __( 'Add submenu' ) }\n\t\t\t\t\t\t\tonClick={ transformToSubmenu }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t\t{ /* Warning, this duplicated in packages/block-library/src/navigation-submenu/edit.js */ }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ label ? stripHTML( label ) : '' }\n\t\t\t\t\t\tonChange={ ( labelValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { label: labelValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Label' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ url || '' }\n\t\t\t\t\t\tonChange={ ( urlValue ) => {\n\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t{ url: urlValue },\n\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\tattributes\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'URL' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t/>\n\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ description || '' }\n\t\t\t\t\t\tonChange={ ( descriptionValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { description: descriptionValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Description' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The description will be displayed in the menu if the current theme supports it.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\t\tonChange={ ( titleValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { title: titleValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Additional information to help clarify the purpose of the link.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( relValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { rel: relValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Rel attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The relationship of the linked URL as space-separated link types.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ /* eslint-disable jsx-a11y/anchor-is-valid */ }\n\t\t\t\t<a className={ classes }>\n\t\t\t\t\t{ /* eslint-enable */ }\n\t\t\t\t\t{ ! url ? (\n\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text\">\n\t\t\t\t\t\t\t<Tooltip position=\"top center\" text={ tooltipText }>\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<span>{ missingText }</span>\n\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-link__missing_text-tooltip\">\n\t\t\t\t\t\t\t\t\t\t{ tooltipText }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isInvalid && ! isDraft && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-navigation-item__label\"\n\t\t\t\t\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( labelValue ) =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: labelValue,\n\t\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\t\t\t\t\tcreateBlock(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'core/navigation-link'\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tplaceholder={ itemLabelPlaceholder }\n\t\t\t\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\t\t\t\tallowedFormats={ [\n\t\t\t\t\t\t\t\t\t\t\t'core/bold',\n\t\t\t\t\t\t\t\t\t\t\t'core/italic',\n\t\t\t\t\t\t\t\t\t\t\t'core/image',\n\t\t\t\t\t\t\t\t\t\t\t'core/strikethrough',\n\t\t\t\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\tif ( ! url ) {\n\t\t\t\t\t\t\t\t\t\t\t\tsetIsLinkOpen( true );\n\t\t\t\t\t\t\t\t\t\t\t}\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{ description && (\n\t\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-item__description\">\n\t\t\t\t\t\t\t\t\t\t\t{ description }\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t) }\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{ ( isInvalid || isDraft ) && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text wp-block-navigation-link__label\">\n\t\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\t\t\ttext={ tooltipText }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Some attributes are stored in an escaped form. It's a legacy issue.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Ideally they would be stored in a raw, unescaped form.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Unescape is used here to \"recover\" the escaped characters\n\t\t\t\t\t\t\t\t\t\t\t\t\t// so they display without encoding.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// See `updateAttributes` for more details.\n\t\t\t\t\t\t\t\t\t\t\t\t\t`${ decodeEntities(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t\t\t\t\t) } ${ placeholderText }`.trim()\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-link__missing_text-tooltip\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ tooltipText }\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isLinkOpen && (\n\t\t\t\t\t\t<LinkUI\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-link__inline-link-input\"\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tlink={ attributes }\n\t\t\t\t\t\t\tonClose={ () => setIsLinkOpen( false ) }\n\t\t\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\t\t\thasCreateSuggestion={ userCanCreate }\n\t\t\t\t\t\t\tonRemove={ removeLink }\n\t\t\t\t\t\t\tonChange={ ( updatedValue ) => {\n\t\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t\tupdatedValue,\n\t\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\t\tattributes\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</a>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
@@ -426,7 +426,8 @@ export default function NavigationSubmenuEdit({
426
426
  label: __('Rel attribute'),
427
427
  autoComplete: "off",
428
428
  help: __('The relationship of the linked URL as space-separated link types.')
429
- }))), createElement("div", blockProps, createElement(ParentElement, {
429
+ }))), createElement("div", { ...blockProps
430
+ }, createElement(ParentElement, {
430
431
  className: "wp-block-navigation-item__content"
431
432
  }, createElement(RichText, {
432
433
  ref: ref,
@@ -465,6 +466,7 @@ export default function NavigationSubmenuEdit({
465
466
  }
466
467
  })), (showSubmenuIcon || openSubmenusOnClick) && createElement("span", {
467
468
  className: "wp-block-navigation__submenu-icon"
468
- }, createElement(ItemSubmenuIcon, null)), createElement("div", innerBlocksProps)));
469
+ }, createElement(ItemSubmenuIcon, null)), createElement("div", { ...innerBlocksProps
470
+ })));
469
471
  }
470
472
  //# sourceMappingURL=edit.js.map