@wordpress/block-library 6.0.1-next.253d9b6e21.0 → 6.0.3

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 (1583) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/README.md +1 -1
  3. package/build/audio/edit.js +2 -2
  4. package/build/audio/edit.js.map +1 -1
  5. package/build/audio/edit.native.js +2 -2
  6. package/build/audio/edit.native.js.map +1 -1
  7. package/build/block/edit.js +1 -1
  8. package/build/block/edit.js.map +1 -1
  9. package/build/button/deprecated.js +155 -10
  10. package/build/button/deprecated.js.map +1 -1
  11. package/build/button/edit.js +97 -87
  12. package/build/button/edit.js.map +1 -1
  13. package/build/button/edit.native.js +257 -330
  14. package/build/button/edit.native.js.map +1 -1
  15. package/build/button/index.js +8 -2
  16. package/build/button/index.js.map +1 -1
  17. package/build/buttons/deprecated.js +80 -2
  18. package/build/buttons/deprecated.js.map +1 -1
  19. package/build/buttons/edit.js +8 -40
  20. package/build/buttons/edit.js.map +1 -1
  21. package/build/buttons/index.js +17 -14
  22. package/build/buttons/index.js.map +1 -1
  23. package/build/buttons/save.js +4 -20
  24. package/build/buttons/save.js.map +1 -1
  25. package/build/buttons/transforms.js +16 -10
  26. package/build/buttons/transforms.js.map +1 -1
  27. package/build/categories/edit.js +16 -6
  28. package/build/categories/edit.js.map +1 -1
  29. package/build/categories/index.js +4 -0
  30. package/build/categories/index.js.map +1 -1
  31. package/build/code/edit.native.js +8 -5
  32. package/build/code/edit.native.js.map +1 -1
  33. package/build/code/index.js +24 -1
  34. package/build/code/index.js.map +1 -1
  35. package/build/column/edit.js +4 -2
  36. package/build/column/edit.js.map +1 -1
  37. package/build/column/index.js +8 -1
  38. package/build/column/index.js.map +1 -1
  39. package/build/column/save.js +16 -4
  40. package/build/column/save.js.map +1 -1
  41. package/build/columns/edit.js +1 -1
  42. package/build/columns/edit.js.map +1 -1
  43. package/build/columns/edit.native.js +5 -2
  44. package/build/columns/edit.native.js.map +1 -1
  45. package/build/columns/index.js +11 -1
  46. package/build/columns/index.js.map +1 -1
  47. package/build/columns/save.js +7 -2
  48. package/build/columns/save.js.map +1 -1
  49. package/build/comment-author-avatar/edit.js +83 -0
  50. package/build/comment-author-avatar/edit.js.map +1 -0
  51. package/build/{post-comment-date → comment-author-avatar}/index.js +25 -9
  52. package/build/comment-author-avatar/index.js.map +1 -0
  53. package/build/comment-author-name/deprecated.js +69 -0
  54. package/build/comment-author-name/deprecated.js.map +1 -0
  55. package/build/comment-author-name/edit.js +112 -0
  56. package/build/comment-author-name/edit.js.map +1 -0
  57. package/build/comment-author-name/index.js +77 -0
  58. package/build/comment-author-name/index.js.map +1 -0
  59. package/build/comment-content/edit.js +74 -0
  60. package/build/comment-content/edit.js.map +1 -0
  61. package/build/comment-content/index.js +68 -0
  62. package/build/comment-content/index.js.map +1 -0
  63. package/build/comment-date/deprecated.js +68 -0
  64. package/build/comment-date/deprecated.js.map +1 -0
  65. package/build/comment-date/edit.js +95 -0
  66. package/build/comment-date/edit.js.map +1 -0
  67. package/build/comment-date/index.js +72 -0
  68. package/build/comment-date/index.js.map +1 -0
  69. package/build/comment-edit-link/edit.js +61 -0
  70. package/build/comment-edit-link/edit.js.map +1 -0
  71. package/build/comment-edit-link/index.js +67 -0
  72. package/build/comment-edit-link/index.js.map +1 -0
  73. package/build/comment-reply-link/edit.js +63 -0
  74. package/build/comment-reply-link/edit.js.map +1 -0
  75. package/build/comment-reply-link/index.js +63 -0
  76. package/build/comment-reply-link/index.js.map +1 -0
  77. package/build/comment-template/edit.js +82 -0
  78. package/build/comment-template/edit.js.map +1 -0
  79. package/build/{post-comment-content → comment-template}/index.js +13 -8
  80. package/build/comment-template/index.js.map +1 -0
  81. package/build/comment-template/save.js +18 -0
  82. package/build/comment-template/save.js.map +1 -0
  83. package/build/comments-query-loop/edit.js +64 -0
  84. package/build/comments-query-loop/edit.js.map +1 -0
  85. package/build/comments-query-loop/index.js +67 -0
  86. package/build/comments-query-loop/index.js.map +1 -0
  87. package/build/comments-query-loop/save.js +22 -0
  88. package/build/comments-query-loop/save.js.map +1 -0
  89. package/build/comments-query-loop/toolbar.js +54 -0
  90. package/build/comments-query-loop/toolbar.js.map +1 -0
  91. package/build/cover/deprecated.js +177 -44
  92. package/build/cover/deprecated.js.map +1 -1
  93. package/build/cover/edit.js +118 -54
  94. package/build/cover/edit.js.map +1 -1
  95. package/build/cover/edit.native.js +6 -2
  96. package/build/cover/edit.native.js.map +1 -1
  97. package/build/cover/index.js +23 -2
  98. package/build/cover/index.js.map +1 -1
  99. package/build/cover/save.js +19 -15
  100. package/build/cover/save.js.map +1 -1
  101. package/build/cover/shared.js +4 -2
  102. package/build/cover/shared.js.map +1 -1
  103. package/build/cover/transforms.js +4 -0
  104. package/build/cover/transforms.js.map +1 -1
  105. package/build/embed/edit.js +1 -5
  106. package/build/embed/edit.js.map +1 -1
  107. package/build/embed/edit.native.js +88 -29
  108. package/build/embed/edit.native.js.map +1 -1
  109. package/build/embed/embed-bottom-sheet.native.js +21 -21
  110. package/build/embed/embed-bottom-sheet.native.js.map +1 -1
  111. package/build/embed/embed-controls.js +4 -1
  112. package/build/embed/embed-controls.js.map +1 -1
  113. package/build/embed/embed-no-preview.native.js +24 -10
  114. package/build/embed/embed-no-preview.native.js.map +1 -1
  115. package/build/embed/embed-placeholder.native.js +51 -7
  116. package/build/embed/embed-placeholder.native.js.map +1 -1
  117. package/build/embed/embed-preview.native.js +28 -10
  118. package/build/embed/embed-preview.native.js.map +1 -1
  119. package/build/embed/icons.js +16 -1
  120. package/build/embed/icons.js.map +1 -1
  121. package/build/embed/transforms.native.js +3 -1
  122. package/build/embed/transforms.native.js.map +1 -1
  123. package/build/embed/variations.js +20 -10
  124. package/build/embed/variations.js.map +1 -1
  125. package/build/embed/wp-embed-preview.js +44 -56
  126. package/build/embed/wp-embed-preview.js.map +1 -1
  127. package/build/embed/wp-embed-preview.native.js +95 -0
  128. package/build/embed/wp-embed-preview.native.js.map +1 -0
  129. package/build/file/deprecated.js +108 -0
  130. package/build/file/deprecated.js.map +1 -0
  131. package/build/file/edit.js +8 -1
  132. package/build/file/edit.js.map +1 -1
  133. package/build/file/index.js +9 -0
  134. package/build/file/index.js.map +1 -1
  135. package/build/file/inspector.js +1 -1
  136. package/build/file/inspector.js.map +1 -1
  137. package/build/file/save.js +4 -1
  138. package/build/file/save.js.map +1 -1
  139. package/build/file/transforms.js +3 -1
  140. package/build/file/transforms.js.map +1 -1
  141. package/build/freeform/edit.js +16 -4
  142. package/build/freeform/edit.js.map +1 -1
  143. package/build/gallery/constants.js +2 -2
  144. package/build/gallery/constants.js.map +1 -1
  145. package/build/gallery/deprecated.js +17 -8
  146. package/build/gallery/deprecated.js.map +1 -1
  147. package/build/gallery/edit-wrapper.js +63 -0
  148. package/build/gallery/edit-wrapper.js.map +1 -0
  149. package/build/gallery/edit.js +232 -231
  150. package/build/gallery/edit.js.map +1 -1
  151. package/build/gallery/gallery.js +67 -49
  152. package/build/gallery/gallery.js.map +1 -1
  153. package/build/gallery/gallery.native.js +42 -79
  154. package/build/gallery/gallery.native.js.map +1 -1
  155. package/build/gallery/index.js +36 -7
  156. package/build/gallery/index.js.map +1 -1
  157. package/build/gallery/save.js +30 -42
  158. package/build/gallery/save.js.map +1 -1
  159. package/build/gallery/shared.js +2 -2
  160. package/build/gallery/shared.js.map +1 -1
  161. package/build/gallery/transforms.js +211 -12
  162. package/build/gallery/transforms.js.map +1 -1
  163. package/build/gallery/use-get-media.js +52 -0
  164. package/build/gallery/use-get-media.js.map +1 -0
  165. package/build/gallery/use-get-new-images.js +58 -0
  166. package/build/gallery/use-get-new-images.js.map +1 -0
  167. package/build/gallery/use-image-sizes.js +73 -0
  168. package/build/gallery/use-image-sizes.js.map +1 -0
  169. package/build/gallery/use-mobile-warning.js +43 -0
  170. package/build/gallery/use-mobile-warning.js.map +1 -0
  171. package/build/gallery/use-short-code-transform.js +63 -0
  172. package/build/gallery/use-short-code-transform.js.map +1 -0
  173. package/build/gallery/utils.js +51 -0
  174. package/build/gallery/utils.js.map +1 -0
  175. package/build/gallery/v1/constants.js +13 -0
  176. package/build/gallery/v1/constants.js.map +1 -0
  177. package/build/gallery/v1/edit.js +459 -0
  178. package/build/gallery/v1/edit.js.map +1 -0
  179. package/build/gallery/{gallery-button.native.js → v1/gallery-button.native.js} +0 -0
  180. package/build/gallery/v1/gallery-button.native.js.map +1 -0
  181. package/build/gallery/{gallery-image.js → v1/gallery-image.js} +0 -0
  182. package/build/gallery/v1/gallery-image.js.map +1 -0
  183. package/build/gallery/{gallery-image.native.js → v1/gallery-image.native.js} +0 -0
  184. package/build/gallery/v1/gallery-image.native.js.map +1 -0
  185. package/build/gallery/v1/gallery.js +122 -0
  186. package/build/gallery/v1/gallery.js.map +1 -0
  187. package/build/gallery/v1/gallery.native.js +159 -0
  188. package/build/gallery/v1/gallery.native.js.map +1 -0
  189. package/build/gallery/v1/save.js +75 -0
  190. package/build/gallery/v1/save.js.map +1 -0
  191. package/build/gallery/v1/shared.js +26 -0
  192. package/build/gallery/v1/shared.js.map +1 -0
  193. package/build/gallery/{tiles.native.js → v1/tiles.native.js} +2 -1
  194. package/build/gallery/v1/tiles.native.js.map +1 -0
  195. package/build/gallery/v1/update-gallery-modal.js +110 -0
  196. package/build/gallery/v1/update-gallery-modal.js.map +1 -0
  197. package/build/group/edit.js +21 -5
  198. package/build/group/edit.js.map +1 -1
  199. package/build/group/index.js +9 -2
  200. package/build/group/index.js.map +1 -1
  201. package/build/group/save.js +4 -5
  202. package/build/group/save.js.map +1 -1
  203. package/build/group/variations.js +32 -0
  204. package/build/group/variations.js.map +1 -0
  205. package/build/heading/autogenerate-anchors.js +90 -0
  206. package/build/heading/autogenerate-anchors.js.map +1 -0
  207. package/build/heading/edit.js +42 -5
  208. package/build/heading/edit.js.map +1 -1
  209. package/build/heading/heading-level-dropdown.js +11 -37
  210. package/build/heading/heading-level-dropdown.js.map +1 -1
  211. package/build/heading/index.js +14 -2
  212. package/build/heading/index.js.map +1 -1
  213. package/build/heading/transforms.js +14 -2
  214. package/build/heading/transforms.js.map +1 -1
  215. package/build/home-link/edit.js +2 -2
  216. package/build/home-link/edit.js.map +1 -1
  217. package/build/image/edit.js +8 -6
  218. package/build/image/edit.js.map +1 -1
  219. package/build/image/edit.native.js +165 -70
  220. package/build/image/edit.native.js.map +1 -1
  221. package/build/image/image.js +11 -17
  222. package/build/image/image.js.map +1 -1
  223. package/build/image/index.js +1 -0
  224. package/build/image/index.js.map +1 -1
  225. package/build/image/transforms.js +31 -7
  226. package/build/image/transforms.js.map +1 -1
  227. package/build/image/utils.js +23 -0
  228. package/build/image/utils.js.map +1 -1
  229. package/build/index.js +84 -69
  230. package/build/index.js.map +1 -1
  231. package/build/index.native.js +3 -1
  232. package/build/index.native.js.map +1 -1
  233. package/build/latest-comments/edit.js +7 -1
  234. package/build/latest-comments/edit.js.map +1 -1
  235. package/build/latest-posts/edit.native.js +12 -6
  236. package/build/latest-posts/edit.native.js.map +1 -1
  237. package/build/list/deprecated.js +111 -0
  238. package/build/list/deprecated.js.map +1 -0
  239. package/build/list/index.js +15 -3
  240. package/build/list/index.js.map +1 -1
  241. package/build/media-text/edit.js +2 -2
  242. package/build/media-text/edit.js.map +1 -1
  243. package/build/media-text/index.js +2 -0
  244. package/build/media-text/index.js.map +1 -1
  245. package/build/media-text/save.js +3 -3
  246. package/build/media-text/save.js.map +1 -1
  247. package/build/navigation/deprecated.js +340 -23
  248. package/build/navigation/deprecated.js.map +1 -1
  249. package/build/navigation/edit/index.js +372 -0
  250. package/build/navigation/edit/index.js.map +1 -0
  251. package/build/navigation/edit/inner-blocks.js +100 -0
  252. package/build/navigation/edit/inner-blocks.js.map +1 -0
  253. package/build/navigation/edit/navigation-menu-delete-control.js +60 -0
  254. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -0
  255. package/build/navigation/edit/navigation-menu-name-control.js +27 -0
  256. package/build/navigation/edit/navigation-menu-name-control.js.map +1 -0
  257. package/build/navigation/edit/navigation-menu-name-modal.js +54 -0
  258. package/build/navigation/edit/navigation-menu-name-modal.js.map +1 -0
  259. package/build/navigation/edit/navigation-menu-publish-button.js +53 -0
  260. package/build/navigation/edit/navigation-menu-publish-button.js.map +1 -0
  261. package/build/navigation/edit/navigation-menu-selector.js +49 -0
  262. package/build/navigation/edit/navigation-menu-selector.js.map +1 -0
  263. package/build/navigation/edit/placeholder/index.js +207 -0
  264. package/build/navigation/edit/placeholder/index.js.map +1 -0
  265. package/build/navigation/{placeholder-preview.js → edit/placeholder/placeholder-preview.js} +17 -5
  266. package/build/navigation/edit/placeholder/placeholder-preview.js.map +1 -0
  267. package/build/navigation/{responsive-wrapper.js → edit/responsive-wrapper.js} +8 -3
  268. package/build/navigation/edit/responsive-wrapper.js.map +1 -0
  269. package/build/navigation/edit/unsaved-inner-blocks.js +153 -0
  270. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -0
  271. package/build/navigation/edit/use-list-view-modal.js +72 -0
  272. package/build/navigation/edit/use-list-view-modal.js.map +1 -0
  273. package/build/navigation/index.js +27 -10
  274. package/build/navigation/index.js.map +1 -1
  275. package/build/navigation/menu-items-to-blocks.js +6 -5
  276. package/build/navigation/menu-items-to-blocks.js.map +1 -1
  277. package/build/navigation/save.js +10 -1
  278. package/build/navigation/save.js.map +1 -1
  279. package/build/navigation/use-navigation-menu.js +40 -0
  280. package/build/navigation/use-navigation-menu.js.map +1 -0
  281. package/build/navigation/use-template-part-area-label.js +74 -0
  282. package/build/navigation/use-template-part-area-label.js.map +1 -0
  283. package/build/navigation/view.js +53 -1
  284. package/build/navigation/view.js.map +1 -1
  285. package/build/navigation-area/edit.js +97 -0
  286. package/build/navigation-area/edit.js.map +1 -0
  287. package/build/navigation-area/index.js +61 -0
  288. package/build/navigation-area/index.js.map +1 -0
  289. package/build/navigation-area/inner-blocks.js +33 -0
  290. package/build/navigation-area/inner-blocks.js.map +1 -0
  291. package/build/navigation-area/save.js +18 -0
  292. package/build/navigation-area/save.js.map +1 -0
  293. package/build/navigation-link/edit.js +124 -78
  294. package/build/navigation-link/edit.js.map +1 -1
  295. package/build/navigation-link/index.js +6 -2
  296. package/build/navigation-link/index.js.map +1 -1
  297. package/build/navigation-link/transforms.js +87 -0
  298. package/build/navigation-link/transforms.js.map +1 -0
  299. package/build/navigation-submenu/edit.js +651 -0
  300. package/build/navigation-submenu/edit.js.map +1 -0
  301. package/build/navigation-submenu/icons.js +27 -0
  302. package/build/navigation-submenu/icons.js.map +1 -0
  303. package/build/navigation-submenu/index.js +89 -0
  304. package/build/navigation-submenu/index.js.map +1 -0
  305. package/build/navigation-submenu/save.js +18 -0
  306. package/build/navigation-submenu/save.js.map +1 -0
  307. package/build/navigation-submenu/transforms.js +82 -0
  308. package/build/navigation-submenu/transforms.js.map +1 -0
  309. package/build/navigation-submenu/view.js +51 -0
  310. package/build/navigation-submenu/view.js.map +1 -0
  311. package/build/page-list/convert-to-links-modal.js +19 -1
  312. package/build/page-list/convert-to-links-modal.js.map +1 -1
  313. package/build/page-list/edit.js +124 -72
  314. package/build/page-list/edit.js.map +1 -1
  315. package/build/page-list/index.js +2 -27
  316. package/build/page-list/index.js.map +1 -1
  317. package/build/paragraph/edit.native.js +2 -1
  318. package/build/paragraph/edit.native.js.map +1 -1
  319. package/build/paragraph/index.js +8 -1
  320. package/build/paragraph/index.js.map +1 -1
  321. package/build/paragraph/transforms.js +8 -1
  322. package/build/paragraph/transforms.js.map +1 -1
  323. package/build/pattern/edit.js +43 -0
  324. package/build/pattern/edit.js.map +1 -0
  325. package/build/{post-comment-author → pattern}/index.js +11 -10
  326. package/build/pattern/index.js.map +1 -0
  327. package/build/post-author/index.js +14 -2
  328. package/build/post-author/index.js.map +1 -1
  329. package/build/post-comment/edit.js +11 -9
  330. package/build/post-comment/edit.js.map +1 -1
  331. package/build/post-comment/index.js +4 -3
  332. package/build/post-comment/index.js.map +1 -1
  333. package/build/post-comment/save.js +5 -1
  334. package/build/post-comment/save.js.map +1 -1
  335. package/build/post-comments/index.js +8 -1
  336. package/build/post-comments/index.js.map +1 -1
  337. package/build/post-comments-count/index.js +7 -1
  338. package/build/post-comments-count/index.js.map +1 -1
  339. package/build/post-comments-form/index.js +9 -2
  340. package/build/post-comments-form/index.js.map +1 -1
  341. package/build/post-comments-link/index.js +8 -1
  342. package/build/post-comments-link/index.js.map +1 -1
  343. package/build/post-content/edit.js +2 -4
  344. package/build/post-content/edit.js.map +1 -1
  345. package/build/post-date/deprecated.js +71 -0
  346. package/build/post-date/deprecated.js.map +1 -0
  347. package/build/post-date/edit.js +35 -14
  348. package/build/post-date/edit.js.map +1 -1
  349. package/build/post-date/index.js +13 -2
  350. package/build/post-date/index.js.map +1 -1
  351. package/build/post-excerpt/edit.js +3 -2
  352. package/build/post-excerpt/edit.js.map +1 -1
  353. package/build/post-excerpt/index.js +12 -1
  354. package/build/post-excerpt/index.js.map +1 -1
  355. package/build/post-featured-image/dimension-controls.js +24 -10
  356. package/build/post-featured-image/dimension-controls.js.map +1 -1
  357. package/build/post-featured-image/index.js +10 -1
  358. package/build/post-featured-image/index.js.map +1 -1
  359. package/build/post-navigation-link/edit.js +19 -3
  360. package/build/post-navigation-link/edit.js.map +1 -1
  361. package/build/post-navigation-link/index.js +16 -1
  362. package/build/post-navigation-link/index.js.map +1 -1
  363. package/build/post-template/edit.js +8 -4
  364. package/build/post-template/edit.js.map +1 -1
  365. package/build/post-template/index.js +5 -2
  366. package/build/post-template/index.js.map +1 -1
  367. package/build/post-terms/edit.js +5 -7
  368. package/build/post-terms/edit.js.map +1 -1
  369. package/build/post-terms/index.js +8 -1
  370. package/build/post-terms/index.js.map +1 -1
  371. package/build/post-terms/use-post-terms.js +3 -1
  372. package/build/post-terms/use-post-terms.js.map +1 -1
  373. package/build/post-title/deprecated.js +84 -0
  374. package/build/post-title/deprecated.js.map +1 -0
  375. package/build/post-title/edit.js +3 -3
  376. package/build/post-title/edit.js.map +1 -1
  377. package/build/post-title/index.js +17 -2
  378. package/build/post-title/index.js.map +1 -1
  379. package/build/preformatted/edit.js +5 -2
  380. package/build/preformatted/edit.js.map +1 -1
  381. package/build/preformatted/edit.native.js +16 -6
  382. package/build/preformatted/edit.native.js.map +1 -1
  383. package/build/preformatted/index.js +9 -1
  384. package/build/preformatted/index.js.map +1 -1
  385. package/build/pullquote/blockquote.native.js +14 -2
  386. package/build/pullquote/blockquote.native.js.map +1 -1
  387. package/build/pullquote/edit.native.js +124 -0
  388. package/build/pullquote/edit.native.js.map +1 -0
  389. package/build/pullquote/figure.native.js +20 -8
  390. package/build/pullquote/figure.native.js.map +1 -1
  391. package/build/pullquote/index.js +12 -0
  392. package/build/pullquote/index.js.map +1 -1
  393. package/build/query/edit/index.js +4 -2
  394. package/build/query/edit/index.js.map +1 -1
  395. package/build/query/save.js +5 -1
  396. package/build/query/save.js.map +1 -1
  397. package/build/query/variations.js +4 -4
  398. package/build/query/variations.js.map +1 -1
  399. package/build/query-pagination/deprecated.js +24 -0
  400. package/build/query-pagination/deprecated.js.map +1 -0
  401. package/build/query-pagination/edit.js +55 -4
  402. package/build/query-pagination/edit.js.map +1 -1
  403. package/build/query-pagination/index.js +20 -1
  404. package/build/query-pagination/index.js.map +1 -1
  405. package/build/query-pagination/query-pagination-arrow-controls.js +38 -0
  406. package/build/query-pagination/query-pagination-arrow-controls.js.map +1 -0
  407. package/build/query-pagination/save.js +1 -1
  408. package/build/query-pagination/save.js.map +1 -1
  409. package/build/query-pagination-next/edit.js +19 -4
  410. package/build/query-pagination-next/edit.js.map +1 -1
  411. package/build/query-pagination-next/index.js +9 -2
  412. package/build/query-pagination-next/index.js.map +1 -1
  413. package/build/query-pagination-previous/edit.js +19 -4
  414. package/build/query-pagination-previous/edit.js.map +1 -1
  415. package/build/query-pagination-previous/index.js +9 -2
  416. package/build/query-pagination-previous/index.js.map +1 -1
  417. package/build/query-title/deprecated.js +70 -0
  418. package/build/query-title/deprecated.js.map +1 -0
  419. package/build/query-title/index.js +17 -2
  420. package/build/query-title/index.js.map +1 -1
  421. package/build/quote/deprecated.js +9 -0
  422. package/build/quote/deprecated.js.map +1 -1
  423. package/build/quote/index.js +17 -1
  424. package/build/quote/index.js.map +1 -1
  425. package/build/search/edit.js +27 -1
  426. package/build/search/edit.js.map +1 -1
  427. package/build/search/edit.native.js +38 -7
  428. package/build/search/edit.native.js.map +1 -1
  429. package/build/separator/separator-settings.js +1 -0
  430. package/build/separator/separator-settings.js.map +1 -1
  431. package/build/site-logo/edit.js +120 -50
  432. package/build/site-logo/edit.js.map +1 -1
  433. package/build/site-logo/index.js +13 -2
  434. package/build/site-logo/index.js.map +1 -1
  435. package/build/site-tagline/deprecated.js +68 -0
  436. package/build/site-tagline/deprecated.js.map +1 -0
  437. package/build/site-tagline/index.js +11 -2
  438. package/build/site-tagline/index.js.map +1 -1
  439. package/build/site-title/deprecated.js +81 -0
  440. package/build/site-title/deprecated.js.map +1 -0
  441. package/build/site-title/edit/index.js +25 -6
  442. package/build/site-title/edit/index.js.map +1 -1
  443. package/build/site-title/index.js +24 -4
  444. package/build/site-title/index.js.map +1 -1
  445. package/build/social-links/deprecated.js +106 -2
  446. package/build/social-links/deprecated.js.map +1 -1
  447. package/build/social-links/edit.js +17 -20
  448. package/build/social-links/edit.js.map +1 -1
  449. package/build/social-links/index.js +17 -1
  450. package/build/social-links/index.js.map +1 -1
  451. package/build/social-links/save.js +8 -5
  452. package/build/social-links/save.js.map +1 -1
  453. package/build/table/index.js +12 -1
  454. package/build/table/index.js.map +1 -1
  455. package/build/template-part/edit/advanced-controls.js +3 -1
  456. package/build/template-part/edit/advanced-controls.js.map +1 -1
  457. package/build/template-part/edit/index.js +1 -4
  458. package/build/template-part/edit/index.js.map +1 -1
  459. package/build/template-part/edit/inner-blocks.js +1 -1
  460. package/build/template-part/edit/inner-blocks.js.map +1 -1
  461. package/build/template-part/edit/placeholder/index.js +3 -3
  462. package/build/template-part/edit/placeholder/index.js.map +1 -1
  463. package/build/template-part/edit/placeholder/patterns-setup.js +3 -2
  464. package/build/template-part/edit/placeholder/patterns-setup.js.map +1 -1
  465. package/build/template-part/edit/selection/template-part-previews.js +1 -1
  466. package/build/template-part/edit/selection/template-part-previews.js.map +1 -1
  467. package/build/template-part/variations.js +1 -1
  468. package/build/template-part/variations.js.map +1 -1
  469. package/build/term-description/edit.js +1 -1
  470. package/build/term-description/edit.js.map +1 -1
  471. package/build/term-description/index.js +4 -1
  472. package/build/term-description/index.js.map +1 -1
  473. package/build/utils/clean-empty-object.js +31 -0
  474. package/build/utils/clean-empty-object.js.map +1 -0
  475. package/build/utils/migrate-font-family.js +49 -0
  476. package/build/utils/migrate-font-family.js.map +1 -0
  477. package/build/verse/deprecated.js +93 -14
  478. package/build/verse/deprecated.js.map +1 -1
  479. package/build/verse/index.js +10 -1
  480. package/build/verse/index.js.map +1 -1
  481. package/build/video/edit-common-settings.js +1 -1
  482. package/build/video/edit-common-settings.js.map +1 -1
  483. package/build/video/edit.js +10 -5
  484. package/build/video/edit.js.map +1 -1
  485. package/build/video/tracks-editor.js +3 -1
  486. package/build/video/tracks-editor.js.map +1 -1
  487. package/build-module/audio/edit.js +3 -3
  488. package/build-module/audio/edit.js.map +1 -1
  489. package/build-module/audio/edit.native.js +3 -3
  490. package/build-module/audio/edit.native.js.map +1 -1
  491. package/build-module/block/edit.js +1 -1
  492. package/build-module/block/edit.js.map +1 -1
  493. package/build-module/button/deprecated.js +155 -11
  494. package/build-module/button/deprecated.js.map +1 -1
  495. package/build-module/button/edit.js +101 -91
  496. package/build-module/button/edit.js.map +1 -1
  497. package/build-module/button/edit.native.js +260 -332
  498. package/build-module/button/edit.native.js.map +1 -1
  499. package/build-module/button/index.js +8 -2
  500. package/build-module/button/index.js.map +1 -1
  501. package/build-module/buttons/deprecated.js +78 -3
  502. package/build-module/buttons/deprecated.js.map +1 -1
  503. package/build-module/buttons/edit.js +8 -37
  504. package/build-module/buttons/edit.js.map +1 -1
  505. package/build-module/buttons/index.js +17 -13
  506. package/build-module/buttons/index.js.map +1 -1
  507. package/build-module/buttons/save.js +4 -18
  508. package/build-module/buttons/save.js.map +1 -1
  509. package/build-module/buttons/transforms.js +16 -10
  510. package/build-module/buttons/transforms.js.map +1 -1
  511. package/build-module/categories/edit.js +16 -6
  512. package/build-module/categories/edit.js.map +1 -1
  513. package/build-module/categories/index.js +4 -0
  514. package/build-module/categories/index.js.map +1 -1
  515. package/build-module/code/edit.native.js +9 -5
  516. package/build-module/code/edit.native.js.map +1 -1
  517. package/build-module/code/index.js +24 -1
  518. package/build-module/code/index.js.map +1 -1
  519. package/build-module/column/edit.js +4 -2
  520. package/build-module/column/edit.js.map +1 -1
  521. package/build-module/column/index.js +8 -1
  522. package/build-module/column/index.js.map +1 -1
  523. package/build-module/column/save.js +15 -5
  524. package/build-module/column/save.js.map +1 -1
  525. package/build-module/columns/edit.js +1 -1
  526. package/build-module/columns/edit.js.map +1 -1
  527. package/build-module/columns/edit.native.js +6 -3
  528. package/build-module/columns/edit.native.js.map +1 -1
  529. package/build-module/columns/index.js +11 -1
  530. package/build-module/columns/index.js.map +1 -1
  531. package/build-module/columns/save.js +5 -3
  532. package/build-module/columns/save.js.map +1 -1
  533. package/build-module/comment-author-avatar/edit.js +69 -0
  534. package/build-module/comment-author-avatar/edit.js.map +1 -0
  535. package/build-module/comment-author-avatar/index.js +52 -0
  536. package/build-module/comment-author-avatar/index.js.map +1 -0
  537. package/build-module/comment-author-name/deprecated.js +58 -0
  538. package/build-module/comment-author-name/deprecated.js.map +1 -0
  539. package/build-module/comment-author-name/edit.js +97 -0
  540. package/build-module/comment-author-name/edit.js.map +1 -0
  541. package/build-module/comment-author-name/index.js +63 -0
  542. package/build-module/comment-author-name/index.js.map +1 -0
  543. package/build-module/comment-content/edit.js +61 -0
  544. package/build-module/comment-content/edit.js.map +1 -0
  545. package/build-module/comment-content/index.js +55 -0
  546. package/build-module/comment-content/index.js.map +1 -0
  547. package/build-module/comment-date/deprecated.js +57 -0
  548. package/build-module/comment-date/deprecated.js.map +1 -0
  549. package/build-module/comment-date/edit.js +85 -0
  550. package/build-module/comment-date/edit.js.map +1 -0
  551. package/build-module/comment-date/index.js +58 -0
  552. package/build-module/comment-date/index.js.map +1 -0
  553. package/build-module/comment-edit-link/edit.js +48 -0
  554. package/build-module/comment-edit-link/edit.js.map +1 -0
  555. package/build-module/comment-edit-link/index.js +54 -0
  556. package/build-module/comment-edit-link/index.js.map +1 -0
  557. package/build-module/comment-reply-link/edit.js +50 -0
  558. package/build-module/comment-reply-link/edit.js.map +1 -0
  559. package/build-module/comment-reply-link/index.js +50 -0
  560. package/build-module/comment-reply-link/index.js.map +1 -0
  561. package/build-module/comment-template/edit.js +71 -0
  562. package/build-module/comment-template/edit.js.map +1 -0
  563. package/build-module/comment-template/index.js +35 -0
  564. package/build-module/comment-template/index.js.map +1 -0
  565. package/build-module/comment-template/save.js +10 -0
  566. package/build-module/comment-template/save.js.map +1 -0
  567. package/build-module/comments-query-loop/edit.js +50 -0
  568. package/build-module/comments-query-loop/edit.js.map +1 -0
  569. package/build-module/comments-query-loop/index.js +53 -0
  570. package/build-module/comments-query-loop/index.js.map +1 -0
  571. package/build-module/comments-query-loop/save.js +14 -0
  572. package/build-module/comments-query-loop/save.js.map +1 -0
  573. package/build-module/comments-query-loop/toolbar.js +44 -0
  574. package/build-module/comments-query-loop/toolbar.js.map +1 -0
  575. package/build-module/cover/deprecated.js +180 -45
  576. package/build-module/cover/deprecated.js.map +1 -1
  577. package/build-module/cover/edit.js +118 -55
  578. package/build-module/cover/edit.js.map +1 -1
  579. package/build-module/cover/edit.native.js +6 -2
  580. package/build-module/cover/edit.native.js.map +1 -1
  581. package/build-module/cover/index.js +23 -2
  582. package/build-module/cover/index.js.map +1 -1
  583. package/build-module/cover/save.js +20 -16
  584. package/build-module/cover/save.js.map +1 -1
  585. package/build-module/cover/shared.js +4 -2
  586. package/build-module/cover/shared.js.map +1 -1
  587. package/build-module/cover/transforms.js +4 -0
  588. package/build-module/cover/transforms.js.map +1 -1
  589. package/build-module/embed/edit.js +1 -5
  590. package/build-module/embed/edit.js.map +1 -1
  591. package/build-module/embed/edit.native.js +90 -32
  592. package/build-module/embed/edit.native.js.map +1 -1
  593. package/build-module/embed/embed-bottom-sheet.native.js +22 -21
  594. package/build-module/embed/embed-bottom-sheet.native.js.map +1 -1
  595. package/build-module/embed/embed-controls.js +4 -1
  596. package/build-module/embed/embed-controls.js.map +1 -1
  597. package/build-module/embed/embed-no-preview.native.js +24 -11
  598. package/build-module/embed/embed-no-preview.native.js.map +1 -1
  599. package/build-module/embed/embed-placeholder.native.js +51 -8
  600. package/build-module/embed/embed-placeholder.native.js.map +1 -1
  601. package/build-module/embed/embed-preview.native.js +26 -11
  602. package/build-module/embed/embed-preview.native.js.map +1 -1
  603. package/build-module/embed/icons.js +13 -0
  604. package/build-module/embed/icons.js.map +1 -1
  605. package/build-module/embed/transforms.native.js +2 -1
  606. package/build-module/embed/transforms.native.js.map +1 -1
  607. package/build-module/embed/variations.js +21 -11
  608. package/build-module/embed/variations.js.map +1 -1
  609. package/build-module/embed/wp-embed-preview.js +39 -56
  610. package/build-module/embed/wp-embed-preview.js.map +1 -1
  611. package/build-module/embed/wp-embed-preview.native.js +83 -0
  612. package/build-module/embed/wp-embed-preview.native.js.map +1 -0
  613. package/build-module/file/deprecated.js +98 -0
  614. package/build-module/file/deprecated.js.map +1 -0
  615. package/build-module/file/edit.js +8 -1
  616. package/build-module/file/edit.js.map +1 -1
  617. package/build-module/file/index.js +8 -0
  618. package/build-module/file/index.js.map +1 -1
  619. package/build-module/file/inspector.js +1 -1
  620. package/build-module/file/inspector.js.map +1 -1
  621. package/build-module/file/save.js +4 -1
  622. package/build-module/file/save.js.map +1 -1
  623. package/build-module/file/transforms.js +2 -1
  624. package/build-module/file/transforms.js.map +1 -1
  625. package/build-module/freeform/edit.js +16 -5
  626. package/build-module/freeform/edit.js.map +1 -1
  627. package/build-module/gallery/constants.js +2 -2
  628. package/build-module/gallery/constants.js.map +1 -1
  629. package/build-module/gallery/deprecated.js +15 -7
  630. package/build-module/gallery/deprecated.js.map +1 -1
  631. package/build-module/gallery/edit-wrapper.js +50 -0
  632. package/build-module/gallery/edit-wrapper.js.map +1 -0
  633. package/build-module/gallery/edit.js +228 -234
  634. package/build-module/gallery/edit.js.map +1 -1
  635. package/build-module/gallery/gallery.js +70 -51
  636. package/build-module/gallery/gallery.js.map +1 -1
  637. package/build-module/gallery/gallery.native.js +43 -78
  638. package/build-module/gallery/gallery.native.js.map +1 -1
  639. package/build-module/gallery/index.js +35 -6
  640. package/build-module/gallery/index.js.map +1 -1
  641. package/build-module/gallery/save.js +27 -44
  642. package/build-module/gallery/save.js.map +1 -1
  643. package/build-module/gallery/shared.js +2 -2
  644. package/build-module/gallery/shared.js.map +1 -1
  645. package/build-module/gallery/transforms.js +207 -12
  646. package/build-module/gallery/transforms.js.map +1 -1
  647. package/build-module/gallery/use-get-media.js +42 -0
  648. package/build-module/gallery/use-get-media.js.map +1 -0
  649. package/build-module/gallery/use-get-new-images.js +50 -0
  650. package/build-module/gallery/use-get-new-images.js.map +1 -0
  651. package/build-module/gallery/use-image-sizes.js +64 -0
  652. package/build-module/gallery/use-image-sizes.js.map +1 -0
  653. package/build-module/gallery/use-mobile-warning.js +32 -0
  654. package/build-module/gallery/use-mobile-warning.js.map +1 -0
  655. package/build-module/gallery/use-short-code-transform.js +53 -0
  656. package/build-module/gallery/use-short-code-transform.js.map +1 -0
  657. package/build-module/gallery/utils.js +42 -0
  658. package/build-module/gallery/utils.js.map +1 -0
  659. package/build-module/gallery/v1/constants.js +4 -0
  660. package/build-module/gallery/v1/constants.js.map +1 -0
  661. package/build-module/gallery/v1/edit.js +430 -0
  662. package/build-module/gallery/v1/edit.js.map +1 -0
  663. package/build-module/gallery/{gallery-button.native.js → v1/gallery-button.native.js} +0 -0
  664. package/build-module/gallery/v1/gallery-button.native.js.map +1 -0
  665. package/build-module/gallery/{gallery-image.js → v1/gallery-image.js} +0 -0
  666. package/build-module/gallery/v1/gallery-image.js.map +1 -0
  667. package/build-module/gallery/{gallery-image.native.js → v1/gallery-image.native.js} +0 -0
  668. package/build-module/gallery/v1/gallery-image.native.js.map +1 -0
  669. package/build-module/gallery/v1/gallery.js +102 -0
  670. package/build-module/gallery/v1/gallery.js.map +1 -0
  671. package/build-module/gallery/v1/gallery.native.js +136 -0
  672. package/build-module/gallery/v1/gallery.native.js.map +1 -0
  673. package/build-module/gallery/v1/save.js +65 -0
  674. package/build-module/gallery/v1/save.js.map +1 -0
  675. package/build-module/gallery/v1/shared.js +16 -0
  676. package/build-module/gallery/v1/shared.js.map +1 -0
  677. package/build-module/gallery/{tiles.native.js → v1/tiles.native.js} +2 -1
  678. package/build-module/gallery/v1/tiles.native.js.map +1 -0
  679. package/build-module/gallery/v1/update-gallery-modal.js +93 -0
  680. package/build-module/gallery/v1/update-gallery-modal.js.map +1 -0
  681. package/build-module/group/edit.js +21 -6
  682. package/build-module/group/edit.js.map +1 -1
  683. package/build-module/group/index.js +8 -2
  684. package/build-module/group/index.js.map +1 -1
  685. package/build-module/group/save.js +5 -6
  686. package/build-module/group/save.js.map +1 -1
  687. package/build-module/group/variations.js +23 -0
  688. package/build-module/group/variations.js.map +1 -0
  689. package/build-module/heading/autogenerate-anchors.js +77 -0
  690. package/build-module/heading/autogenerate-anchors.js.map +1 -0
  691. package/build-module/heading/edit.js +43 -7
  692. package/build-module/heading/edit.js.map +1 -1
  693. package/build-module/heading/heading-level-dropdown.js +12 -37
  694. package/build-module/heading/heading-level-dropdown.js.map +1 -1
  695. package/build-module/heading/index.js +14 -2
  696. package/build-module/heading/index.js.map +1 -1
  697. package/build-module/heading/transforms.js +14 -2
  698. package/build-module/heading/transforms.js.map +1 -1
  699. package/build-module/home-link/edit.js +2 -2
  700. package/build-module/home-link/edit.js.map +1 -1
  701. package/build-module/image/edit.js +8 -6
  702. package/build-module/image/edit.js.map +1 -1
  703. package/build-module/image/edit.native.js +168 -74
  704. package/build-module/image/edit.native.js.map +1 -1
  705. package/build-module/image/image.js +11 -15
  706. package/build-module/image/image.js.map +1 -1
  707. package/build-module/image/index.js +1 -0
  708. package/build-module/image/index.js.map +1 -1
  709. package/build-module/image/transforms.js +27 -7
  710. package/build-module/image/transforms.js.map +1 -1
  711. package/build-module/image/utils.js +22 -1
  712. package/build-module/image/utils.js.map +1 -1
  713. package/build-module/index.js +59 -52
  714. package/build-module/index.js.map +1 -1
  715. package/build-module/index.native.js +1 -2
  716. package/build-module/index.native.js.map +1 -1
  717. package/build-module/latest-comments/edit.js +7 -1
  718. package/build-module/latest-comments/edit.js.map +1 -1
  719. package/build-module/latest-posts/edit.native.js +12 -6
  720. package/build-module/latest-posts/edit.native.js.map +1 -1
  721. package/build-module/list/deprecated.js +99 -0
  722. package/build-module/list/deprecated.js.map +1 -0
  723. package/build-module/list/index.js +14 -3
  724. package/build-module/list/index.js.map +1 -1
  725. package/build-module/media-text/edit.js +2 -2
  726. package/build-module/media-text/edit.js.map +1 -1
  727. package/build-module/media-text/index.js +2 -0
  728. package/build-module/media-text/index.js.map +1 -1
  729. package/build-module/media-text/save.js +4 -4
  730. package/build-module/media-text/save.js.map +1 -1
  731. package/build-module/navigation/deprecated.js +336 -23
  732. package/build-module/navigation/deprecated.js.map +1 -1
  733. package/build-module/navigation/edit/index.js +346 -0
  734. package/build-module/navigation/edit/index.js.map +1 -0
  735. package/build-module/navigation/edit/inner-blocks.js +87 -0
  736. package/build-module/navigation/edit/inner-blocks.js.map +1 -0
  737. package/build-module/navigation/edit/navigation-menu-delete-control.js +50 -0
  738. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -0
  739. package/build-module/navigation/edit/navigation-menu-name-control.js +17 -0
  740. package/build-module/navigation/edit/navigation-menu-name-control.js.map +1 -0
  741. package/build-module/navigation/edit/navigation-menu-name-modal.js +46 -0
  742. package/build-module/navigation/edit/navigation-menu-name-modal.js.map +1 -0
  743. package/build-module/navigation/edit/navigation-menu-publish-button.js +40 -0
  744. package/build-module/navigation/edit/navigation-menu-publish-button.js.map +1 -0
  745. package/build-module/navigation/edit/navigation-menu-selector.js +36 -0
  746. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -0
  747. package/build-module/navigation/edit/placeholder/index.js +189 -0
  748. package/build-module/navigation/edit/placeholder/index.js.map +1 -0
  749. package/build-module/navigation/{placeholder-preview.js → edit/placeholder/placeholder-preview.js} +14 -5
  750. package/build-module/navigation/edit/placeholder/placeholder-preview.js.map +1 -0
  751. package/build-module/navigation/{responsive-wrapper.js → edit/responsive-wrapper.js} +8 -3
  752. package/build-module/navigation/edit/responsive-wrapper.js.map +1 -0
  753. package/build-module/navigation/edit/unsaved-inner-blocks.js +136 -0
  754. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -0
  755. package/build-module/navigation/edit/use-list-view-modal.js +62 -0
  756. package/build-module/navigation/edit/use-list-view-modal.js.map +1 -0
  757. package/build-module/navigation/index.js +27 -9
  758. package/build-module/navigation/index.js.map +1 -1
  759. package/build-module/navigation/menu-items-to-blocks.js +6 -5
  760. package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
  761. package/build-module/navigation/save.js +10 -1
  762. package/build-module/navigation/save.js.map +1 -1
  763. package/build-module/navigation/use-navigation-menu.js +31 -0
  764. package/build-module/navigation/use-navigation-menu.js.map +1 -0
  765. package/build-module/navigation/use-template-part-area-label.js +63 -0
  766. package/build-module/navigation/use-template-part-area-label.js.map +1 -0
  767. package/build-module/navigation/view.js +53 -2
  768. package/build-module/navigation/view.js.map +1 -1
  769. package/build-module/navigation-area/edit.js +82 -0
  770. package/build-module/navigation-area/edit.js.map +1 -0
  771. package/build-module/navigation-area/index.js +47 -0
  772. package/build-module/navigation-area/index.js.map +1 -0
  773. package/build-module/navigation-area/inner-blocks.js +25 -0
  774. package/build-module/navigation-area/inner-blocks.js.map +1 -0
  775. package/build-module/navigation-area/save.js +10 -0
  776. package/build-module/navigation-area/save.js.map +1 -0
  777. package/build-module/navigation-link/edit.js +128 -81
  778. package/build-module/navigation-link/edit.js.map +1 -1
  779. package/build-module/navigation-link/index.js +5 -2
  780. package/build-module/navigation-link/index.js.map +1 -1
  781. package/build-module/navigation-link/transforms.js +78 -0
  782. package/build-module/navigation-link/transforms.js.map +1 -0
  783. package/build-module/navigation-submenu/edit.js +628 -0
  784. package/build-module/navigation-submenu/edit.js.map +1 -0
  785. package/build-module/navigation-submenu/icons.js +17 -0
  786. package/build-module/navigation-submenu/icons.js.map +1 -0
  787. package/build-module/navigation-submenu/index.js +74 -0
  788. package/build-module/navigation-submenu/index.js.map +1 -0
  789. package/build-module/navigation-submenu/save.js +10 -0
  790. package/build-module/navigation-submenu/save.js.map +1 -0
  791. package/build-module/navigation-submenu/transforms.js +73 -0
  792. package/build-module/navigation-submenu/transforms.js.map +1 -0
  793. package/build-module/navigation-submenu/view.js +49 -0
  794. package/build-module/navigation-submenu/view.js.map +1 -0
  795. package/build-module/page-list/convert-to-links-modal.js +19 -1
  796. package/build-module/page-list/convert-to-links-modal.js.map +1 -1
  797. package/build-module/page-list/edit.js +126 -74
  798. package/build-module/page-list/edit.js.map +1 -1
  799. package/build-module/page-list/index.js +2 -27
  800. package/build-module/page-list/index.js.map +1 -1
  801. package/build-module/paragraph/edit.native.js +2 -1
  802. package/build-module/paragraph/edit.native.js.map +1 -1
  803. package/build-module/paragraph/index.js +8 -1
  804. package/build-module/paragraph/index.js.map +1 -1
  805. package/build-module/paragraph/transforms.js +8 -1
  806. package/build-module/paragraph/transforms.js.map +1 -1
  807. package/build-module/pattern/edit.js +35 -0
  808. package/build-module/pattern/edit.js.map +1 -0
  809. package/build-module/pattern/index.js +29 -0
  810. package/build-module/pattern/index.js.map +1 -0
  811. package/build-module/post-author/index.js +14 -2
  812. package/build-module/post-author/index.js.map +1 -1
  813. package/build-module/post-comment/edit.js +13 -12
  814. package/build-module/post-comment/edit.js.map +1 -1
  815. package/build-module/post-comment/index.js +4 -3
  816. package/build-module/post-comment/index.js.map +1 -1
  817. package/build-module/post-comment/save.js +4 -2
  818. package/build-module/post-comment/save.js.map +1 -1
  819. package/build-module/post-comments/index.js +8 -1
  820. package/build-module/post-comments/index.js.map +1 -1
  821. package/build-module/post-comments-count/index.js +7 -1
  822. package/build-module/post-comments-count/index.js.map +1 -1
  823. package/build-module/post-comments-form/index.js +9 -2
  824. package/build-module/post-comments-form/index.js.map +1 -1
  825. package/build-module/post-comments-link/index.js +8 -1
  826. package/build-module/post-comments-link/index.js.map +1 -1
  827. package/build-module/post-content/edit.js +2 -4
  828. package/build-module/post-content/edit.js.map +1 -1
  829. package/build-module/post-date/deprecated.js +60 -0
  830. package/build-module/post-date/deprecated.js.map +1 -0
  831. package/build-module/post-date/edit.js +36 -16
  832. package/build-module/post-date/edit.js.map +1 -1
  833. package/build-module/post-date/index.js +12 -2
  834. package/build-module/post-date/index.js.map +1 -1
  835. package/build-module/post-excerpt/edit.js +3 -2
  836. package/build-module/post-excerpt/edit.js.map +1 -1
  837. package/build-module/post-excerpt/index.js +12 -1
  838. package/build-module/post-excerpt/index.js.map +1 -1
  839. package/build-module/post-featured-image/dimension-controls.js +22 -11
  840. package/build-module/post-featured-image/dimension-controls.js.map +1 -1
  841. package/build-module/post-featured-image/index.js +10 -1
  842. package/build-module/post-featured-image/index.js.map +1 -1
  843. package/build-module/post-navigation-link/edit.js +19 -3
  844. package/build-module/post-navigation-link/edit.js.map +1 -1
  845. package/build-module/post-navigation-link/index.js +16 -1
  846. package/build-module/post-navigation-link/index.js.map +1 -1
  847. package/build-module/post-template/edit.js +10 -5
  848. package/build-module/post-template/edit.js.map +1 -1
  849. package/build-module/post-template/index.js +6 -3
  850. package/build-module/post-template/index.js.map +1 -1
  851. package/build-module/post-terms/edit.js +6 -8
  852. package/build-module/post-terms/edit.js.map +1 -1
  853. package/build-module/post-terms/index.js +8 -1
  854. package/build-module/post-terms/index.js.map +1 -1
  855. package/build-module/post-terms/use-post-terms.js +3 -1
  856. package/build-module/post-terms/use-post-terms.js.map +1 -1
  857. package/build-module/post-title/deprecated.js +73 -0
  858. package/build-module/post-title/deprecated.js.map +1 -0
  859. package/build-module/post-title/edit.js +3 -3
  860. package/build-module/post-title/edit.js.map +1 -1
  861. package/build-module/post-title/index.js +16 -2
  862. package/build-module/post-title/index.js.map +1 -1
  863. package/build-module/preformatted/edit.js +5 -2
  864. package/build-module/preformatted/edit.js.map +1 -1
  865. package/build-module/preformatted/edit.native.js +17 -6
  866. package/build-module/preformatted/edit.native.js.map +1 -1
  867. package/build-module/preformatted/index.js +9 -1
  868. package/build-module/preformatted/index.js.map +1 -1
  869. package/build-module/pullquote/blockquote.native.js +14 -2
  870. package/build-module/pullquote/blockquote.native.js.map +1 -1
  871. package/build-module/pullquote/edit.native.js +112 -0
  872. package/build-module/pullquote/edit.native.js.map +1 -0
  873. package/build-module/pullquote/figure.native.js +20 -9
  874. package/build-module/pullquote/figure.native.js.map +1 -1
  875. package/build-module/pullquote/index.js +12 -0
  876. package/build-module/pullquote/index.js.map +1 -1
  877. package/build-module/query/edit/index.js +4 -2
  878. package/build-module/query/edit/index.js.map +1 -1
  879. package/build-module/query/save.js +4 -2
  880. package/build-module/query/save.js.map +1 -1
  881. package/build-module/query/variations.js +4 -4
  882. package/build-module/query/variations.js.map +1 -1
  883. package/build-module/query-pagination/deprecated.js +15 -0
  884. package/build-module/query-pagination/deprecated.js.map +1 -0
  885. package/build-module/query-pagination/edit.js +52 -5
  886. package/build-module/query-pagination/edit.js.map +1 -1
  887. package/build-module/query-pagination/index.js +19 -1
  888. package/build-module/query-pagination/index.js.map +1 -1
  889. package/build-module/query-pagination/query-pagination-arrow-controls.js +29 -0
  890. package/build-module/query-pagination/query-pagination-arrow-controls.js.map +1 -0
  891. package/build-module/query-pagination/save.js +2 -2
  892. package/build-module/query-pagination/save.js.map +1 -1
  893. package/build-module/query-pagination-next/edit.js +18 -4
  894. package/build-module/query-pagination-next/edit.js.map +1 -1
  895. package/build-module/query-pagination-next/index.js +9 -2
  896. package/build-module/query-pagination-next/index.js.map +1 -1
  897. package/build-module/query-pagination-previous/edit.js +18 -4
  898. package/build-module/query-pagination-previous/edit.js.map +1 -1
  899. package/build-module/query-pagination-previous/index.js +9 -2
  900. package/build-module/query-pagination-previous/index.js.map +1 -1
  901. package/build-module/query-title/deprecated.js +59 -0
  902. package/build-module/query-title/deprecated.js.map +1 -0
  903. package/build-module/query-title/index.js +16 -2
  904. package/build-module/query-title/index.js.map +1 -1
  905. package/build-module/quote/deprecated.js +9 -0
  906. package/build-module/quote/deprecated.js.map +1 -1
  907. package/build-module/quote/index.js +17 -1
  908. package/build-module/quote/index.js.map +1 -1
  909. package/build-module/search/edit.js +28 -2
  910. package/build-module/search/edit.js.map +1 -1
  911. package/build-module/search/edit.native.js +38 -7
  912. package/build-module/search/edit.native.js.map +1 -1
  913. package/build-module/separator/separator-settings.js +1 -0
  914. package/build-module/separator/separator-settings.js.map +1 -1
  915. package/build-module/site-logo/edit.js +124 -56
  916. package/build-module/site-logo/edit.js.map +1 -1
  917. package/build-module/site-logo/index.js +13 -2
  918. package/build-module/site-logo/index.js.map +1 -1
  919. package/build-module/site-tagline/deprecated.js +57 -0
  920. package/build-module/site-tagline/deprecated.js.map +1 -0
  921. package/build-module/site-tagline/index.js +10 -2
  922. package/build-module/site-tagline/index.js.map +1 -1
  923. package/build-module/site-title/deprecated.js +70 -0
  924. package/build-module/site-title/deprecated.js.map +1 -0
  925. package/build-module/site-title/edit/index.js +25 -7
  926. package/build-module/site-title/edit/index.js.map +1 -1
  927. package/build-module/site-title/index.js +23 -4
  928. package/build-module/site-title/index.js.map +1 -1
  929. package/build-module/social-links/deprecated.js +106 -2
  930. package/build-module/social-links/deprecated.js.map +1 -1
  931. package/build-module/social-links/edit.js +17 -20
  932. package/build-module/social-links/edit.js.map +1 -1
  933. package/build-module/social-links/index.js +17 -1
  934. package/build-module/social-links/index.js.map +1 -1
  935. package/build-module/social-links/save.js +6 -6
  936. package/build-module/social-links/save.js.map +1 -1
  937. package/build-module/table/index.js +12 -1
  938. package/build-module/table/index.js.map +1 -1
  939. package/build-module/template-part/edit/advanced-controls.js +4 -2
  940. package/build-module/template-part/edit/advanced-controls.js.map +1 -1
  941. package/build-module/template-part/edit/index.js +1 -4
  942. package/build-module/template-part/edit/index.js.map +1 -1
  943. package/build-module/template-part/edit/inner-blocks.js +1 -1
  944. package/build-module/template-part/edit/inner-blocks.js.map +1 -1
  945. package/build-module/template-part/edit/placeholder/index.js +3 -3
  946. package/build-module/template-part/edit/placeholder/index.js.map +1 -1
  947. package/build-module/template-part/edit/placeholder/patterns-setup.js +3 -2
  948. package/build-module/template-part/edit/placeholder/patterns-setup.js.map +1 -1
  949. package/build-module/template-part/edit/selection/template-part-previews.js +1 -1
  950. package/build-module/template-part/edit/selection/template-part-previews.js.map +1 -1
  951. package/build-module/template-part/variations.js +2 -2
  952. package/build-module/template-part/variations.js.map +1 -1
  953. package/build-module/term-description/edit.js +1 -1
  954. package/build-module/term-description/edit.js.map +1 -1
  955. package/build-module/term-description/index.js +4 -1
  956. package/build-module/term-description/index.js.map +1 -1
  957. package/build-module/utils/clean-empty-object.js +22 -0
  958. package/build-module/utils/clean-empty-object.js.map +1 -0
  959. package/build-module/utils/migrate-font-family.js +38 -0
  960. package/build-module/utils/migrate-font-family.js.map +1 -0
  961. package/build-module/verse/deprecated.js +90 -15
  962. package/build-module/verse/deprecated.js.map +1 -1
  963. package/build-module/verse/index.js +10 -1
  964. package/build-module/verse/index.js.map +1 -1
  965. package/build-module/video/edit-common-settings.js +2 -2
  966. package/build-module/video/edit-common-settings.js.map +1 -1
  967. package/build-module/video/edit.js +10 -5
  968. package/build-module/video/edit.js.map +1 -1
  969. package/build-module/video/tracks-editor.js +2 -1
  970. package/build-module/video/tracks-editor.js.map +1 -1
  971. package/build-style/button/editor-rtl.css +0 -1
  972. package/build-style/button/editor.css +0 -1
  973. package/build-style/button/style-rtl.css +16 -28
  974. package/build-style/button/style.css +16 -28
  975. package/build-style/buttons/editor-rtl.css +4 -8
  976. package/build-style/buttons/editor.css +4 -8
  977. package/build-style/buttons/style-rtl.css +1 -35
  978. package/build-style/buttons/style.css +1 -48
  979. package/build-style/columns/editor-rtl.css +2 -2
  980. package/build-style/columns/editor.css +2 -2
  981. package/build-style/columns/style-rtl.css +5 -5
  982. package/build-style/columns/style.css +5 -5
  983. package/build-style/common-rtl.css +8 -15
  984. package/build-style/common.css +8 -15
  985. package/build-style/cover/editor-rtl.css +14 -32
  986. package/build-style/cover/editor.css +14 -32
  987. package/build-style/cover/style-rtl.css +28 -40
  988. package/build-style/cover/style.css +28 -40
  989. package/build-style/editor-rtl.css +383 -241
  990. package/build-style/editor.css +383 -241
  991. package/build-style/embed/style-rtl.css +1 -0
  992. package/build-style/embed/style.css +1 -0
  993. package/build-style/gallery/editor-rtl.css +89 -21
  994. package/build-style/gallery/editor.css +89 -21
  995. package/build-style/gallery/style-rtl.css +202 -39
  996. package/build-style/gallery/style.css +202 -39
  997. package/build-style/group/theme-rtl.css +1 -3
  998. package/build-style/group/theme.css +1 -3
  999. package/build-style/heading/style-rtl.css +8 -0
  1000. package/build-style/heading/style.css +8 -0
  1001. package/build-style/html/editor-rtl.css +12 -11
  1002. package/build-style/html/editor.css +12 -11
  1003. package/build-style/image/editor-rtl.css +1 -0
  1004. package/build-style/image/editor.css +1 -0
  1005. package/build-style/image/style-rtl.css +3 -0
  1006. package/build-style/image/style.css +3 -0
  1007. package/build-style/list/style-rtl.css +4 -0
  1008. package/build-style/list/style.css +4 -0
  1009. package/build-style/media-text/style-rtl.css +1 -0
  1010. package/build-style/media-text/style.css +1 -0
  1011. package/build-style/navigation/editor-rtl.css +69 -23
  1012. package/build-style/navigation/editor.css +69 -23
  1013. package/build-style/navigation/style-rtl.css +138 -194
  1014. package/build-style/navigation/style.css +138 -194
  1015. package/build-style/navigation-link/editor-rtl.css +50 -25
  1016. package/build-style/navigation-link/editor.css +50 -25
  1017. package/build-style/navigation-link/style-rtl.css +1 -1
  1018. package/build-style/navigation-link/style.css +1 -1
  1019. package/build-style/{post-author → navigation-submenu}/editor-rtl.css +27 -24
  1020. package/build-style/{post-author → navigation-submenu}/editor.css +27 -24
  1021. package/build-style/{heading/editor.css → navigation-submenu/style-rtl.css} +13 -7
  1022. package/build-style/{heading/editor-rtl.css → navigation-submenu/style.css} +13 -7
  1023. package/build-style/page-list/editor-rtl.css +8 -0
  1024. package/build-style/page-list/editor.css +8 -0
  1025. package/build-style/page-list/style-rtl.css +2 -23
  1026. package/build-style/page-list/style.css +2 -23
  1027. package/build-style/paragraph/style-rtl.css +5 -1
  1028. package/build-style/paragraph/style.css +5 -1
  1029. package/build-style/post-author/style-rtl.css +0 -1
  1030. package/build-style/post-author/style.css +0 -1
  1031. package/build-style/post-comments/style-rtl.css +21 -1
  1032. package/build-style/post-comments/style.css +21 -1
  1033. package/build-style/post-comments-form/style-rtl.css +29 -0
  1034. package/build-style/post-comments-form/style.css +29 -0
  1035. package/build-style/{query-title/editor-rtl.css → post-content/style-rtl.css} +2 -3
  1036. package/build-style/{query-title/editor.css → post-content/style.css} +2 -3
  1037. package/build-style/post-featured-image/editor-rtl.css +5 -9
  1038. package/build-style/post-featured-image/editor.css +5 -9
  1039. package/build-style/post-featured-image/style-rtl.css +1 -0
  1040. package/build-style/post-featured-image/style.css +1 -0
  1041. package/build-style/post-template/style-rtl.css +2 -0
  1042. package/build-style/post-template/style.css +2 -0
  1043. package/build-style/pullquote/style-rtl.css +1 -0
  1044. package/build-style/pullquote/style.css +1 -0
  1045. package/build-style/query-pagination/editor-rtl.css +2 -5
  1046. package/build-style/query-pagination/editor.css +2 -5
  1047. package/build-style/query-pagination/style-rtl.css +17 -6
  1048. package/build-style/query-pagination/style.css +17 -6
  1049. package/build-style/quote/style-rtl.css +3 -0
  1050. package/build-style/quote/style.css +3 -0
  1051. package/build-style/quote/theme-rtl.css +1 -1
  1052. package/build-style/quote/theme.css +1 -1
  1053. package/build-style/reset-rtl.css +2 -6
  1054. package/build-style/reset.css +2 -6
  1055. package/build-style/search/style-rtl.css +18 -6
  1056. package/build-style/search/style.css +18 -6
  1057. package/build-style/separator/style-rtl.css +0 -1
  1058. package/build-style/separator/style.css +0 -1
  1059. package/build-style/site-logo/editor-rtl.css +82 -14
  1060. package/build-style/site-logo/editor.css +82 -14
  1061. package/build-style/site-logo/style-rtl.css +6 -2
  1062. package/build-style/site-logo/style.css +6 -2
  1063. package/build-style/social-link/editor-rtl.css +4 -0
  1064. package/build-style/social-link/editor.css +4 -0
  1065. package/build-style/social-links/editor-rtl.css +4 -0
  1066. package/build-style/social-links/editor.css +4 -0
  1067. package/build-style/social-links/style-rtl.css +7 -6
  1068. package/build-style/social-links/style.css +7 -6
  1069. package/build-style/style-rtl.css +551 -407
  1070. package/build-style/style.css +551 -420
  1071. package/build-style/template-part/editor-rtl.css +0 -7
  1072. package/build-style/template-part/editor.css +0 -7
  1073. package/build-style/theme-rtl.css +2 -12
  1074. package/build-style/theme.css +2 -12
  1075. package/package.json +33 -33
  1076. package/src/audio/edit.js +6 -3
  1077. package/src/audio/edit.native.js +9 -3
  1078. package/src/audio/test/edit.native.js +4 -0
  1079. package/src/block/edit.js +1 -1
  1080. package/src/button/block.json +8 -2
  1081. package/src/button/deprecated.js +149 -4
  1082. package/src/button/edit.js +107 -115
  1083. package/src/button/edit.native.js +320 -364
  1084. package/src/button/editor.scss +0 -1
  1085. package/src/button/style.scss +19 -42
  1086. package/src/buttons/block.json +16 -10
  1087. package/src/buttons/deprecated.js +73 -3
  1088. package/src/buttons/edit.js +8 -48
  1089. package/src/buttons/editor.scss +8 -9
  1090. package/src/buttons/index.js +0 -2
  1091. package/src/buttons/save.js +4 -21
  1092. package/src/buttons/style.scss +1 -51
  1093. package/src/categories/block.json +4 -0
  1094. package/src/categories/edit.js +36 -18
  1095. package/src/categories/index.php +3 -0
  1096. package/src/code/block.json +24 -1
  1097. package/src/code/edit.native.js +12 -14
  1098. package/src/column/block.json +8 -1
  1099. package/src/column/edit.js +8 -2
  1100. package/src/column/save.js +20 -13
  1101. package/src/columns/block.json +9 -1
  1102. package/src/columns/edit.js +1 -1
  1103. package/src/columns/edit.native.js +8 -3
  1104. package/src/columns/editor.scss +2 -2
  1105. package/src/columns/index.js +1 -0
  1106. package/src/columns/save.js +5 -6
  1107. package/src/columns/style.scss +5 -5
  1108. package/src/comment-author-avatar/block.json +34 -0
  1109. package/src/comment-author-avatar/edit.js +96 -0
  1110. package/src/comment-author-avatar/index.js +18 -0
  1111. package/src/comment-author-avatar/index.php +62 -0
  1112. package/src/comment-author-name/block.json +43 -0
  1113. package/src/comment-author-name/deprecated.js +50 -0
  1114. package/src/comment-author-name/edit.js +124 -0
  1115. package/src/comment-author-name/index.js +20 -0
  1116. package/src/comment-author-name/index.php +57 -0
  1117. package/src/comment-content/block.json +37 -0
  1118. package/src/comment-content/edit.js +80 -0
  1119. package/src/{post-comment-content → comment-content}/index.js +1 -1
  1120. package/src/comment-content/index.php +56 -0
  1121. package/src/comment-date/block.json +38 -0
  1122. package/src/comment-date/deprecated.js +49 -0
  1123. package/src/comment-date/edit.js +106 -0
  1124. package/src/{post-comment-date → comment-date}/index.js +2 -0
  1125. package/src/comment-date/index.php +56 -0
  1126. package/src/comment-edit-link/block.json +36 -0
  1127. package/src/comment-edit-link/edit.js +68 -0
  1128. package/src/{post-comment-author → comment-edit-link}/index.js +5 -5
  1129. package/src/comment-edit-link/index.php +58 -0
  1130. package/src/comment-reply-link/block.json +32 -0
  1131. package/src/comment-reply-link/edit.js +59 -0
  1132. package/src/comment-reply-link/index.js +18 -0
  1133. package/src/comment-reply-link/index.php +80 -0
  1134. package/src/comment-template/block.json +15 -0
  1135. package/src/comment-template/edit.js +100 -0
  1136. package/src/comment-template/index.js +20 -0
  1137. package/src/comment-template/index.php +65 -0
  1138. package/src/comment-template/save.js +8 -0
  1139. package/src/comments-query-loop/block.json +33 -0
  1140. package/src/comments-query-loop/edit.js +53 -0
  1141. package/src/comments-query-loop/index.js +20 -0
  1142. package/src/comments-query-loop/save.js +14 -0
  1143. package/src/comments-query-loop/toolbar.js +57 -0
  1144. package/src/common.scss +3 -23
  1145. package/src/cover/block.json +23 -2
  1146. package/src/cover/deprecated.js +707 -537
  1147. package/src/cover/edit.js +152 -74
  1148. package/src/cover/edit.native.js +5 -1
  1149. package/src/cover/editor.scss +20 -38
  1150. package/src/cover/save.js +32 -27
  1151. package/src/cover/shared.js +4 -2
  1152. package/src/cover/style.scss +9 -7
  1153. package/src/cover/transforms.js +4 -2
  1154. package/src/editor.scss +5 -37
  1155. package/src/embed/edit.js +1 -11
  1156. package/src/embed/edit.native.js +126 -41
  1157. package/src/embed/embed-bottom-sheet.native.js +30 -25
  1158. package/src/embed/embed-controls.js +10 -1
  1159. package/src/embed/embed-no-preview.native.js +54 -14
  1160. package/src/embed/embed-placeholder.native.js +58 -9
  1161. package/src/embed/embed-preview.native.js +58 -41
  1162. package/src/embed/icons.js +11 -0
  1163. package/src/embed/style.scss +1 -0
  1164. package/src/embed/styles.native.scss +18 -8
  1165. package/src/embed/test/__snapshots__/index.native.js.snap +181 -0
  1166. package/src/embed/test/index.native.js +991 -0
  1167. package/src/embed/transforms.native.js +2 -0
  1168. package/src/embed/variations.js +21 -8
  1169. package/src/embed/wp-embed-preview.js +41 -62
  1170. package/src/embed/wp-embed-preview.native.js +80 -0
  1171. package/src/file/block.json +6 -0
  1172. package/src/file/deprecated.js +123 -0
  1173. package/src/file/edit.js +6 -0
  1174. package/src/file/index.js +2 -0
  1175. package/src/file/inspector.js +12 -10
  1176. package/src/file/save.js +3 -0
  1177. package/src/file/test/__snapshots__/edit.native.js.snap +10 -3
  1178. package/src/file/test/edit.native.js +4 -0
  1179. package/src/file/transforms.js +3 -1
  1180. package/src/freeform/edit.js +14 -4
  1181. package/src/gallery/block.json +23 -0
  1182. package/src/gallery/constants.js +2 -2
  1183. package/src/gallery/deprecated.js +15 -7
  1184. package/src/gallery/deprecated.scss +132 -0
  1185. package/src/gallery/edit-wrapper.js +47 -0
  1186. package/src/gallery/edit.js +323 -277
  1187. package/src/gallery/editor.scss +105 -22
  1188. package/src/gallery/gallery-styles.native.scss +4 -2
  1189. package/src/gallery/gallery.js +79 -71
  1190. package/src/gallery/gallery.native.js +49 -88
  1191. package/src/gallery/index.js +12 -6
  1192. package/src/gallery/index.php +52 -0
  1193. package/src/gallery/save.js +26 -60
  1194. package/src/gallery/shared.js +2 -2
  1195. package/src/gallery/style.scss +113 -75
  1196. package/src/gallery/transforms.js +212 -11
  1197. package/src/gallery/use-get-media.js +54 -0
  1198. package/src/gallery/use-get-new-images.js +68 -0
  1199. package/src/gallery/use-image-sizes.js +66 -0
  1200. package/src/gallery/use-mobile-warning.js +28 -0
  1201. package/src/gallery/use-short-code-transform.js +52 -0
  1202. package/src/gallery/utils.js +46 -0
  1203. package/src/gallery/v1/constants.js +3 -0
  1204. package/src/gallery/v1/edit.js +509 -0
  1205. package/src/gallery/{gallery-button.native.js → v1/gallery-button.native.js} +0 -0
  1206. package/src/gallery/{gallery-image-style.native.scss → v1/gallery-image-style.native.scss} +0 -0
  1207. package/src/gallery/{gallery-image.js → v1/gallery-image.js} +0 -0
  1208. package/src/gallery/{gallery-image.native.js → v1/gallery-image.native.js} +0 -0
  1209. package/src/gallery/v1/gallery-styles.native.scss +8 -0
  1210. package/src/gallery/v1/gallery.js +119 -0
  1211. package/src/gallery/v1/gallery.native.js +162 -0
  1212. package/src/gallery/v1/save.js +81 -0
  1213. package/src/gallery/v1/shared.js +19 -0
  1214. package/src/gallery/{tiles-styles.native.scss → v1/tiles-styles.native.scss} +0 -0
  1215. package/src/gallery/{tiles.native.js → v1/tiles.native.js} +2 -1
  1216. package/src/gallery/v1/update-gallery-modal.js +97 -0
  1217. package/src/group/block.json +5 -1
  1218. package/src/group/edit.js +32 -8
  1219. package/src/group/index.js +2 -0
  1220. package/src/group/save.js +3 -8
  1221. package/src/group/theme.scss +1 -3
  1222. package/src/group/variations.js +18 -0
  1223. package/src/heading/autogenerate-anchors.js +81 -0
  1224. package/src/heading/block.json +14 -2
  1225. package/src/heading/edit.js +42 -4
  1226. package/src/heading/heading-level-dropdown.js +26 -58
  1227. package/src/heading/style.scss +3 -0
  1228. package/src/home-link/edit.js +2 -2
  1229. package/src/home-link/index.php +4 -2
  1230. package/src/html/editor.scss +16 -10
  1231. package/src/image/block.json +1 -0
  1232. package/src/image/edit.js +9 -7
  1233. package/src/image/edit.native.js +183 -87
  1234. package/src/image/editor.scss +1 -0
  1235. package/src/image/image.js +10 -14
  1236. package/src/image/index.php +42 -0
  1237. package/src/image/style.scss +3 -0
  1238. package/src/image/styles.native.scss +5 -0
  1239. package/src/image/test/edit.native.js +225 -40
  1240. package/src/image/transforms.js +36 -9
  1241. package/src/image/utils.js +17 -1
  1242. package/src/index.js +96 -86
  1243. package/src/index.native.js +1 -1
  1244. package/src/latest-comments/edit.js +4 -0
  1245. package/src/latest-comments/index.php +2 -1
  1246. package/src/latest-posts/edit.native.js +10 -8
  1247. package/src/list/block.json +11 -2
  1248. package/src/list/deprecated.js +79 -0
  1249. package/src/list/index.js +2 -0
  1250. package/src/list/style.scss +8 -3
  1251. package/src/media-text/edit.js +2 -2
  1252. package/src/media-text/index.js +1 -0
  1253. package/src/media-text/save.js +6 -4
  1254. package/src/media-text/style.scss +1 -0
  1255. package/src/navigation/block.json +42 -9
  1256. package/src/navigation/deprecated.js +336 -27
  1257. package/src/navigation/edit/index.js +510 -0
  1258. package/src/navigation/edit/inner-blocks.js +134 -0
  1259. package/src/navigation/edit/navigation-menu-delete-control.js +81 -0
  1260. package/src/navigation/edit/navigation-menu-name-control.js +22 -0
  1261. package/src/navigation/edit/navigation-menu-name-modal.js +69 -0
  1262. package/src/navigation/edit/navigation-menu-publish-button.js +57 -0
  1263. package/src/navigation/edit/navigation-menu-selector.js +42 -0
  1264. package/src/navigation/edit/placeholder/index.js +257 -0
  1265. package/src/navigation/edit/placeholder/placeholder-preview.js +30 -0
  1266. package/src/navigation/{responsive-wrapper.js → edit/responsive-wrapper.js} +7 -1
  1267. package/src/navigation/edit/unsaved-inner-blocks.js +197 -0
  1268. package/src/navigation/edit/use-list-view-modal.js +72 -0
  1269. package/src/navigation/editor.scss +121 -48
  1270. package/src/navigation/index.js +0 -2
  1271. package/src/navigation/index.php +81 -15
  1272. package/src/navigation/menu-items-to-blocks.js +8 -7
  1273. package/src/navigation/save.js +7 -1
  1274. package/src/navigation/style.scss +195 -223
  1275. package/src/navigation/test/menu-items-to-blocks.js +6 -6
  1276. package/src/navigation/use-navigation-menu.js +60 -0
  1277. package/src/navigation/use-template-part-area-label.js +78 -0
  1278. package/src/navigation/view.js +74 -4
  1279. package/src/navigation-area/block.json +27 -0
  1280. package/src/navigation-area/edit.js +105 -0
  1281. package/src/navigation-area/index.js +26 -0
  1282. package/src/navigation-area/index.php +21 -0
  1283. package/src/navigation-area/inner-blocks.js +24 -0
  1284. package/src/navigation-area/save.js +8 -0
  1285. package/src/navigation-link/block.json +2 -1
  1286. package/src/navigation-link/edit.js +154 -96
  1287. package/src/navigation-link/editor.scss +57 -32
  1288. package/src/navigation-link/index.js +2 -0
  1289. package/src/navigation-link/index.php +13 -15
  1290. package/src/navigation-link/style.scss +1 -1
  1291. package/src/navigation-link/transforms.js +97 -0
  1292. package/src/navigation-submenu/block.json +65 -0
  1293. package/src/navigation-submenu/edit.js +662 -0
  1294. package/src/navigation-submenu/editor.scss +42 -0
  1295. package/src/navigation-submenu/icons.js +16 -0
  1296. package/src/navigation-submenu/index.js +29 -0
  1297. package/src/navigation-submenu/index.php +300 -0
  1298. package/src/navigation-submenu/save.js +8 -0
  1299. package/src/navigation-submenu/style.scss +20 -0
  1300. package/src/navigation-submenu/transforms.js +58 -0
  1301. package/src/navigation-submenu/view.js +62 -0
  1302. package/src/page-list/block.json +2 -25
  1303. package/src/page-list/convert-to-links-modal.js +20 -0
  1304. package/src/page-list/edit.js +168 -96
  1305. package/src/page-list/editor.scss +14 -0
  1306. package/src/page-list/index.php +71 -34
  1307. package/src/page-list/style.scss +2 -36
  1308. package/src/page-list/test/convert-to-links-modal.js +6 -6
  1309. package/src/paragraph/block.json +8 -1
  1310. package/src/paragraph/edit.native.js +1 -0
  1311. package/src/paragraph/style.scss +10 -1
  1312. package/src/pattern/block.json +17 -0
  1313. package/src/pattern/edit.js +41 -0
  1314. package/src/pattern/index.js +12 -0
  1315. package/src/pattern/index.php +44 -0
  1316. package/src/post-author/block.json +14 -2
  1317. package/src/post-author/style.scss +0 -1
  1318. package/src/post-comment/block.json +4 -3
  1319. package/src/post-comment/edit.js +23 -13
  1320. package/src/post-comment/save.js +4 -6
  1321. package/src/post-comments/block.json +8 -1
  1322. package/src/post-comments/index.php +12 -3
  1323. package/src/post-comments/style.scss +27 -1
  1324. package/src/post-comments-count/block.json +7 -1
  1325. package/src/post-comments-form/block.json +9 -2
  1326. package/src/post-comments-form/index.php +0 -14
  1327. package/src/post-comments-form/style.scss +47 -7
  1328. package/src/post-comments-link/block.json +8 -1
  1329. package/src/post-content/edit.js +2 -4
  1330. package/src/post-content/style.scss +4 -0
  1331. package/src/post-date/block.json +9 -1
  1332. package/src/post-date/deprecated.js +52 -0
  1333. package/src/post-date/edit.js +37 -23
  1334. package/src/post-date/index.js +2 -0
  1335. package/src/post-excerpt/block.json +12 -1
  1336. package/src/post-excerpt/edit.js +2 -7
  1337. package/src/post-excerpt/index.php +7 -1
  1338. package/src/post-featured-image/block.json +10 -1
  1339. package/src/post-featured-image/dimension-controls.js +43 -35
  1340. package/src/post-featured-image/editor.scss +5 -10
  1341. package/src/post-featured-image/style.scss +1 -0
  1342. package/src/post-navigation-link/block.json +16 -1
  1343. package/src/post-navigation-link/edit.js +29 -2
  1344. package/src/post-navigation-link/index.php +27 -3
  1345. package/src/post-template/block.json +4 -1
  1346. package/src/post-template/edit.js +8 -3
  1347. package/src/post-template/index.js +2 -2
  1348. package/src/post-template/style.scss +2 -0
  1349. package/src/post-terms/block.json +8 -1
  1350. package/src/post-terms/edit.js +5 -18
  1351. package/src/post-terms/use-post-terms.js +1 -1
  1352. package/src/post-title/block.json +13 -1
  1353. package/src/post-title/deprecated.js +65 -0
  1354. package/src/post-title/edit.js +4 -6
  1355. package/src/post-title/index.js +2 -0
  1356. package/src/post-title/index.php +8 -3
  1357. package/src/preformatted/block.json +9 -1
  1358. package/src/preformatted/edit.js +2 -1
  1359. package/src/preformatted/edit.native.js +20 -6
  1360. package/src/preformatted/styles.native.scss +5 -0
  1361. package/src/preformatted/test/__snapshots__/edit.native.js.snap +20 -2
  1362. package/src/pullquote/block.json +12 -0
  1363. package/src/pullquote/blockquote.native.js +12 -2
  1364. package/src/pullquote/edit.native.js +129 -0
  1365. package/src/pullquote/figure.native.js +17 -7
  1366. package/src/pullquote/style.scss +1 -0
  1367. package/src/query/edit/index.js +4 -4
  1368. package/src/query/save.js +4 -6
  1369. package/src/query/variations.js +4 -0
  1370. package/src/query-pagination/block.json +16 -0
  1371. package/src/query-pagination/deprecated.js +19 -0
  1372. package/src/query-pagination/edit.js +59 -4
  1373. package/src/query-pagination/editor.scss +3 -6
  1374. package/src/query-pagination/index.js +2 -0
  1375. package/src/query-pagination/index.php +24 -1
  1376. package/src/query-pagination/query-pagination-arrow-controls.js +44 -0
  1377. package/src/query-pagination/save.js +2 -6
  1378. package/src/query-pagination/style.scss +22 -5
  1379. package/src/query-pagination-next/block.json +9 -2
  1380. package/src/query-pagination-next/edit.js +30 -8
  1381. package/src/query-pagination-next/index.php +5 -1
  1382. package/src/query-pagination-previous/block.json +9 -2
  1383. package/src/query-pagination-previous/edit.js +30 -8
  1384. package/src/query-pagination-previous/index.php +5 -1
  1385. package/src/query-title/block.json +13 -1
  1386. package/src/query-title/deprecated.js +51 -0
  1387. package/src/query-title/index.js +2 -0
  1388. package/src/quote/block.json +15 -1
  1389. package/src/quote/deprecated.js +10 -0
  1390. package/src/quote/style.scss +2 -0
  1391. package/src/quote/theme.scss +1 -0
  1392. package/src/reset.scss +2 -10
  1393. package/src/search/edit.js +29 -0
  1394. package/src/search/edit.native.js +46 -12
  1395. package/src/search/index.php +12 -15
  1396. package/src/search/style.scss +54 -52
  1397. package/src/search/test/__snapshots__/edit.native.js.snap +40 -5
  1398. package/src/search/test/edit.native.js +4 -0
  1399. package/src/separator/separator-settings.js +1 -0
  1400. package/src/separator/style.scss +0 -1
  1401. package/src/site-logo/block.json +13 -2
  1402. package/src/site-logo/edit.js +150 -57
  1403. package/src/site-logo/editor.scss +101 -16
  1404. package/src/site-logo/index.php +30 -0
  1405. package/src/site-logo/style.scss +8 -2
  1406. package/src/site-tagline/block.json +7 -1
  1407. package/src/site-tagline/deprecated.js +49 -0
  1408. package/src/site-tagline/index.js +2 -0
  1409. package/src/site-title/block.json +20 -3
  1410. package/src/site-title/deprecated.js +62 -0
  1411. package/src/site-title/edit/index.js +36 -9
  1412. package/src/site-title/index.js +2 -0
  1413. package/src/site-title/index.php +15 -2
  1414. package/src/social-link/editor.scss +4 -0
  1415. package/src/social-links/block.json +23 -1
  1416. package/src/social-links/deprecated.js +99 -0
  1417. package/src/social-links/edit.js +15 -25
  1418. package/src/social-links/editor.scss +4 -0
  1419. package/src/social-links/save.js +5 -13
  1420. package/src/social-links/style.scss +8 -9
  1421. package/src/style.scss +2 -5
  1422. package/src/table/block.json +12 -1
  1423. package/src/template-part/edit/advanced-controls.js +3 -3
  1424. package/src/template-part/edit/index.js +0 -3
  1425. package/src/template-part/edit/inner-blocks.js +1 -1
  1426. package/src/template-part/edit/placeholder/index.js +5 -3
  1427. package/src/template-part/edit/placeholder/patterns-setup.js +3 -2
  1428. package/src/template-part/edit/selection/template-part-previews.js +3 -1
  1429. package/src/template-part/editor.scss +0 -16
  1430. package/src/template-part/index.php +4 -4
  1431. package/src/template-part/variations.js +2 -2
  1432. package/src/term-description/block.json +4 -1
  1433. package/src/term-description/edit.js +1 -1
  1434. package/src/theme.scss +0 -10
  1435. package/src/utils/clean-empty-object.js +23 -0
  1436. package/src/utils/migrate-font-family.js +37 -0
  1437. package/src/verse/block.json +10 -1
  1438. package/src/verse/deprecated.js +86 -25
  1439. package/src/video/edit-common-settings.js +2 -2
  1440. package/src/video/edit.js +15 -5
  1441. package/src/video/tracks-editor.js +2 -3
  1442. package/build/buttons/variations.js +0 -33
  1443. package/build/buttons/variations.js.map +0 -1
  1444. package/build/embed/embed-controls.native.js +0 -32
  1445. package/build/embed/embed-controls.native.js.map +0 -1
  1446. package/build/embed/variations.native.js +0 -10
  1447. package/build/embed/variations.native.js.map +0 -1
  1448. package/build/gallery/gallery-button.native.js.map +0 -1
  1449. package/build/gallery/gallery-image.js.map +0 -1
  1450. package/build/gallery/gallery-image.native.js.map +0 -1
  1451. package/build/gallery/tiles.native.js.map +0 -1
  1452. package/build/image/image-editing/aspect-ratio-dropdown.js +0 -126
  1453. package/build/image/image-editing/aspect-ratio-dropdown.js.map +0 -1
  1454. package/build/image/image-editing/constants.js +0 -16
  1455. package/build/image/image-editing/constants.js.map +0 -1
  1456. package/build/image/image-editing/context.js +0 -59
  1457. package/build/image/image-editing/context.js.map +0 -1
  1458. package/build/image/image-editing/cropper.js +0 -83
  1459. package/build/image/image-editing/cropper.js.map +0 -1
  1460. package/build/image/image-editing/form-controls.js +0 -36
  1461. package/build/image/image-editing/form-controls.js.map +0 -1
  1462. package/build/image/image-editing/index.js +0 -60
  1463. package/build/image/image-editing/index.js.map +0 -1
  1464. package/build/image/image-editing/rotation-button.js +0 -37
  1465. package/build/image/image-editing/rotation-button.js.map +0 -1
  1466. package/build/image/image-editing/use-save-image.js +0 -84
  1467. package/build/image/image-editing/use-save-image.js.map +0 -1
  1468. package/build/image/image-editing/use-transform-image.js +0 -135
  1469. package/build/image/image-editing/use-transform-image.js.map +0 -1
  1470. package/build/image/image-editing/zoom-dropdown.js +0 -55
  1471. package/build/image/image-editing/zoom-dropdown.js.map +0 -1
  1472. package/build/navigation/block-navigation-list.js +0 -30
  1473. package/build/navigation/block-navigation-list.js.map +0 -1
  1474. package/build/navigation/edit.js +0 -274
  1475. package/build/navigation/edit.js.map +0 -1
  1476. package/build/navigation/placeholder-preview.js.map +0 -1
  1477. package/build/navigation/placeholder.js +0 -129
  1478. package/build/navigation/placeholder.js.map +0 -1
  1479. package/build/navigation/responsive-wrapper.js.map +0 -1
  1480. package/build/navigation/use-block-navigator.js +0 -50
  1481. package/build/navigation/use-block-navigator.js.map +0 -1
  1482. package/build/navigation/variations.js +0 -33
  1483. package/build/navigation/variations.js.map +0 -1
  1484. package/build/post-comment-author/edit.js +0 -51
  1485. package/build/post-comment-author/edit.js.map +0 -1
  1486. package/build/post-comment-author/index.js.map +0 -1
  1487. package/build/post-comment-content/edit.js +0 -33
  1488. package/build/post-comment-content/edit.js.map +0 -1
  1489. package/build/post-comment-content/index.js.map +0 -1
  1490. package/build/post-comment-date/edit.js +0 -62
  1491. package/build/post-comment-date/edit.js.map +0 -1
  1492. package/build/post-comment-date/index.js.map +0 -1
  1493. package/build-module/buttons/variations.js +0 -24
  1494. package/build-module/buttons/variations.js.map +0 -1
  1495. package/build-module/embed/embed-controls.native.js +0 -21
  1496. package/build-module/embed/embed-controls.native.js.map +0 -1
  1497. package/build-module/embed/variations.native.js +0 -3
  1498. package/build-module/embed/variations.native.js.map +0 -1
  1499. package/build-module/gallery/gallery-button.native.js.map +0 -1
  1500. package/build-module/gallery/gallery-image.js.map +0 -1
  1501. package/build-module/gallery/gallery-image.native.js.map +0 -1
  1502. package/build-module/gallery/tiles.native.js.map +0 -1
  1503. package/build-module/image/image-editing/aspect-ratio-dropdown.js +0 -115
  1504. package/build-module/image/image-editing/aspect-ratio-dropdown.js.map +0 -1
  1505. package/build-module/image/image-editing/constants.js +0 -7
  1506. package/build-module/image/image-editing/constants.js.map +0 -1
  1507. package/build-module/image/image-editing/context.js +0 -44
  1508. package/build-module/image/image-editing/context.js.map +0 -1
  1509. package/build-module/image/image-editing/cropper.js +0 -69
  1510. package/build-module/image/image-editing/cropper.js.map +0 -1
  1511. package/build-module/image/image-editing/form-controls.js +0 -26
  1512. package/build-module/image/image-editing/form-controls.js.map +0 -1
  1513. package/build-module/image/image-editing/index.js +0 -37
  1514. package/build-module/image/image-editing/index.js.map +0 -1
  1515. package/build-module/image/image-editing/rotation-button.js +0 -26
  1516. package/build-module/image/image-editing/rotation-button.js.map +0 -1
  1517. package/build-module/image/image-editing/use-save-image.js +0 -70
  1518. package/build-module/image/image-editing/use-save-image.js.map +0 -1
  1519. package/build-module/image/image-editing/use-transform-image.js +0 -127
  1520. package/build-module/image/image-editing/use-transform-image.js.map +0 -1
  1521. package/build-module/image/image-editing/zoom-dropdown.js +0 -43
  1522. package/build-module/image/image-editing/zoom-dropdown.js.map +0 -1
  1523. package/build-module/navigation/block-navigation-list.js +0 -21
  1524. package/build-module/navigation/block-navigation-list.js.map +0 -1
  1525. package/build-module/navigation/edit.js +0 -254
  1526. package/build-module/navigation/edit.js.map +0 -1
  1527. package/build-module/navigation/placeholder-preview.js.map +0 -1
  1528. package/build-module/navigation/placeholder.js +0 -113
  1529. package/build-module/navigation/placeholder.js.map +0 -1
  1530. package/build-module/navigation/responsive-wrapper.js.map +0 -1
  1531. package/build-module/navigation/use-block-navigator.js +0 -38
  1532. package/build-module/navigation/use-block-navigator.js.map +0 -1
  1533. package/build-module/navigation/variations.js +0 -24
  1534. package/build-module/navigation/variations.js.map +0 -1
  1535. package/build-module/post-comment-author/edit.js +0 -40
  1536. package/build-module/post-comment-author/edit.js.map +0 -1
  1537. package/build-module/post-comment-author/index.js +0 -31
  1538. package/build-module/post-comment-author/index.js.map +0 -1
  1539. package/build-module/post-comment-content/edit.js +0 -24
  1540. package/build-module/post-comment-content/edit.js.map +0 -1
  1541. package/build-module/post-comment-content/index.js +0 -31
  1542. package/build-module/post-comment-content/index.js.map +0 -1
  1543. package/build-module/post-comment-date/edit.js +0 -52
  1544. package/build-module/post-comment-date/edit.js.map +0 -1
  1545. package/build-module/post-comment-date/index.js +0 -36
  1546. package/build-module/post-comment-date/index.js.map +0 -1
  1547. package/build-style/post-content/editor-rtl.css +0 -86
  1548. package/build-style/post-content/editor.css +0 -86
  1549. package/build-style/term-description/editor-rtl.css +0 -80
  1550. package/build-style/term-description/editor.css +0 -80
  1551. package/src/buttons/variations.js +0 -24
  1552. package/src/embed/embed-controls.native.js +0 -23
  1553. package/src/embed/variations.native.js +0 -3
  1554. package/src/heading/editor.scss +0 -20
  1555. package/src/image/image-editing/aspect-ratio-dropdown.js +0 -129
  1556. package/src/image/image-editing/constants.js +0 -6
  1557. package/src/image/image-editing/context.js +0 -56
  1558. package/src/image/image-editing/cropper.js +0 -74
  1559. package/src/image/image-editing/form-controls.js +0 -22
  1560. package/src/image/image-editing/index.js +0 -52
  1561. package/src/image/image-editing/rotation-button.js +0 -24
  1562. package/src/image/image-editing/use-save-image.js +0 -97
  1563. package/src/image/image-editing/use-transform-image.js +0 -162
  1564. package/src/image/image-editing/zoom-dropdown.js +0 -40
  1565. package/src/navigation/block-navigation-list.js +0 -29
  1566. package/src/navigation/edit.js +0 -368
  1567. package/src/navigation/placeholder-preview.js +0 -19
  1568. package/src/navigation/placeholder.js +0 -154
  1569. package/src/navigation/use-block-navigator.js +0 -45
  1570. package/src/navigation/variations.js +0 -24
  1571. package/src/post-author/editor.scss +0 -35
  1572. package/src/post-comment-author/block.json +0 -13
  1573. package/src/post-comment-author/edit.js +0 -32
  1574. package/src/post-comment-author/index.php +0 -41
  1575. package/src/post-comment-content/block.json +0 -13
  1576. package/src/post-comment-content/edit.js +0 -24
  1577. package/src/post-comment-content/index.php +0 -39
  1578. package/src/post-comment-date/block.json +0 -18
  1579. package/src/post-comment-date/edit.js +0 -54
  1580. package/src/post-comment-date/index.php +0 -44
  1581. package/src/post-content/editor.scss +0 -11
  1582. package/src/query-title/editor.scss +0 -4
  1583. package/src/term-description/editor.scss +0 -4
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = UnsavedInnerBlocks;
9
+
10
+ var _element = require("@wordpress/element");
11
+
12
+ var _classnames = _interopRequireDefault(require("classnames"));
13
+
14
+ var _blockEditor = require("@wordpress/block-editor");
15
+
16
+ var _blocks = require("@wordpress/blocks");
17
+
18
+ var _components = require("@wordpress/components");
19
+
20
+ var _coreData = require("@wordpress/core-data");
21
+
22
+ var _data = require("@wordpress/data");
23
+
24
+ var _i18n = require("@wordpress/i18n");
25
+
26
+ var _useNavigationMenu = _interopRequireDefault(require("../use-navigation-menu"));
27
+
28
+ var _useTemplatePartAreaLabel = _interopRequireDefault(require("../use-template-part-area-label"));
29
+
30
+ /**
31
+ * External dependencies
32
+ */
33
+
34
+ /**
35
+ * WordPress dependencies
36
+ */
37
+
38
+ /**
39
+ * Internal dependencies
40
+ */
41
+ const NOOP = () => {};
42
+
43
+ const EMPTY_OBJECT = {};
44
+ const DRAFT_MENU_PARAMS = ['postType', 'wp_navigation', {
45
+ status: 'draft',
46
+ per_page: -1
47
+ }];
48
+
49
+ function UnsavedInnerBlocks({
50
+ blockProps,
51
+ blocks,
52
+ clientId,
53
+ hasSavedUnsavedInnerBlocks,
54
+ onSave,
55
+ hasSelection
56
+ }) {
57
+ // The block will be disabled in a block preview, use this as a way of
58
+ // avoiding the side-effects of this component for block previews.
59
+ const isDisabled = (0, _element.useContext)(_components.Disabled.Context);
60
+ const savingLock = (0, _element.useRef)(false);
61
+ const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)(blockProps, {
62
+ renderAppender: hasSelection ? undefined : false,
63
+ // Make the inner blocks 'controlled'. This allows the block to always
64
+ // work with controlled inner blocks, smoothing out the switch to using
65
+ // an entity.
66
+ value: blocks,
67
+ onChange: NOOP,
68
+ onInput: NOOP
69
+ });
70
+ const {
71
+ saveEntityRecord
72
+ } = (0, _data.useDispatch)(_coreData.store);
73
+ const {
74
+ isSaving,
75
+ draftNavigationMenus,
76
+ hasResolvedDraftNavigationMenus
77
+ } = (0, _data.useSelect)(select => {
78
+ if (isDisabled) {
79
+ return EMPTY_OBJECT;
80
+ }
81
+
82
+ const {
83
+ getEntityRecords,
84
+ hasFinishedResolution,
85
+ isSavingEntityRecord
86
+ } = select(_coreData.store);
87
+ return {
88
+ isSaving: isSavingEntityRecord('postType', 'wp_navigation'),
89
+ draftNavigationMenus: getEntityRecords(...DRAFT_MENU_PARAMS),
90
+ hasResolvedDraftNavigationMenus: hasFinishedResolution('getEntityRecords', DRAFT_MENU_PARAMS)
91
+ };
92
+ }, [isDisabled]);
93
+ const {
94
+ hasResolvedNavigationMenus,
95
+ navigationMenus
96
+ } = (0, _useNavigationMenu.default)();
97
+ const createNavigationMenu = (0, _element.useCallback)(async title => {
98
+ const record = {
99
+ title,
100
+ content: (0, _blocks.serialize)(blocks),
101
+ status: 'draft'
102
+ };
103
+ const navigationMenu = await saveEntityRecord('postType', 'wp_navigation', record);
104
+ return navigationMenu;
105
+ }, [blocks, _blocks.serialize, saveEntityRecord]); // Because we can't conditionally call hooks, pass an undefined client id
106
+ // arg to bypass the expensive `useTemplateArea` code. The hook will return
107
+ // early.
108
+
109
+ const area = (0, _useTemplatePartAreaLabel.default)(isDisabled ? undefined : clientId); // Automatically save the uncontrolled blocks.
110
+
111
+ (0, _element.useEffect)(async () => {
112
+ // The block will be disabled when used in a BlockPreview.
113
+ // In this case avoid automatic creation of a wp_navigation post.
114
+ // Otherwise the user will be spammed with lots of menus!
115
+ //
116
+ // Also ensure other navigation menus have loaded so an
117
+ // accurate name can be created.
118
+ //
119
+ // Don't try saving when another save is already
120
+ // in progress.
121
+ //
122
+ // And finally only create the menu when the block is selected,
123
+ // which is an indication they want to start editing.
124
+ if (isDisabled || hasSavedUnsavedInnerBlocks || isSaving || savingLock.current || !hasResolvedDraftNavigationMenus || !hasResolvedNavigationMenus || !hasSelection) {
125
+ return;
126
+ }
127
+
128
+ savingLock.current = true;
129
+ const title = area ? (0, _i18n.sprintf)( // translators: %s: the name of a menu (e.g. Header navigation).
130
+ (0, _i18n.__)('%s navigation'), area) : // translators: 'navigation' as in website navigation.
131
+ (0, _i18n.__)('Navigation'); // Determine how many menus start with the automatic title.
132
+
133
+ const matchingMenuTitleCount = [...draftNavigationMenus, ...navigationMenus].reduce((count, menu) => {
134
+ var _menu$title, _menu$title$raw;
135
+
136
+ return menu !== null && menu !== void 0 && (_menu$title = menu.title) !== null && _menu$title !== void 0 && (_menu$title$raw = _menu$title.raw) !== null && _menu$title$raw !== void 0 && _menu$title$raw.startsWith(title) ? count + 1 : count;
137
+ }, 0); // Append a number to the end of the title if a menu with
138
+ // the same name exists.
139
+
140
+ const titleWithCount = matchingMenuTitleCount > 0 ? `${title} ${matchingMenuTitleCount + 1}` : title;
141
+ const menu = await createNavigationMenu(titleWithCount);
142
+ onSave(menu);
143
+ savingLock.current = false;
144
+ }, [isDisabled, isSaving, hasResolvedDraftNavigationMenus, hasResolvedNavigationMenus, draftNavigationMenus, navigationMenus, hasSelection, createNavigationMenu, area]);
145
+ return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)("nav", blockProps, (0, _element.createElement)("div", {
146
+ className: "wp-block-navigation__unsaved-changes"
147
+ }, (0, _element.createElement)(_components.Disabled, {
148
+ className: (0, _classnames.default)('wp-block-navigation__unsaved-changes-overlay', {
149
+ 'is-saving': hasSelection
150
+ })
151
+ }, (0, _element.createElement)("div", innerBlocksProps)), hasSelection && (0, _element.createElement)(_components.Spinner, null))));
152
+ }
153
+ //# sourceMappingURL=unsaved-inner-blocks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/unsaved-inner-blocks.js"],"names":["NOOP","EMPTY_OBJECT","DRAFT_MENU_PARAMS","status","per_page","UnsavedInnerBlocks","blockProps","blocks","clientId","hasSavedUnsavedInnerBlocks","onSave","hasSelection","isDisabled","Disabled","Context","savingLock","innerBlocksProps","renderAppender","undefined","value","onChange","onInput","saveEntityRecord","coreStore","isSaving","draftNavigationMenus","hasResolvedDraftNavigationMenus","select","getEntityRecords","hasFinishedResolution","isSavingEntityRecord","hasResolvedNavigationMenus","navigationMenus","createNavigationMenu","title","record","content","navigationMenu","serialize","area","current","matchingMenuTitleCount","reduce","count","menu","raw","startsWith","titleWithCount"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useInnerBlocksProps } from '@wordpress/block-editor';\nimport { serialize } from '@wordpress/blocks';\nimport { Disabled, Spinner } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useCallback, useContext, useEffect, useRef } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useTemplatePartAreaLabel from '../use-template-part-area-label';\n\nconst NOOP = () => {};\nconst EMPTY_OBJECT = {};\nconst DRAFT_MENU_PARAMS = [\n\t'postType',\n\t'wp_navigation',\n\t{ status: 'draft', per_page: -1 },\n];\n\nexport default function UnsavedInnerBlocks( {\n\tblockProps,\n\tblocks,\n\tclientId,\n\thasSavedUnsavedInnerBlocks,\n\tonSave,\n\thasSelection,\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\tconst savingLock = useRef( false );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\trenderAppender: hasSelection ? undefined : false,\n\n\t\t// Make the inner blocks 'controlled'. This allows the block to always\n\t\t// work with controlled inner blocks, smoothing out the switch to using\n\t\t// an entity.\n\t\tvalue: blocks,\n\t\tonChange: NOOP,\n\t\tonInput: NOOP,\n\t} );\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\tconst {\n\t\tisSaving,\n\t\tdraftNavigationMenus,\n\t\thasResolvedDraftNavigationMenus,\n\t} = 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 {\n\t\t\t\tgetEntityRecords,\n\t\t\t\thasFinishedResolution,\n\t\t\t\tisSavingEntityRecord,\n\t\t\t} = select( coreStore );\n\n\t\t\treturn {\n\t\t\t\tisSaving: isSavingEntityRecord( 'postType', 'wp_navigation' ),\n\t\t\t\tdraftNavigationMenus: getEntityRecords( ...DRAFT_MENU_PARAMS ),\n\t\t\t\thasResolvedDraftNavigationMenus: hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\tDRAFT_MENU_PARAMS\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ isDisabled ]\n\t);\n\n\tconst { hasResolvedNavigationMenus, navigationMenus } = useNavigationMenu();\n\n\tconst createNavigationMenu = useCallback(\n\t\tasync ( title ) => {\n\t\t\tconst record = {\n\t\t\t\ttitle,\n\t\t\t\tcontent: serialize( blocks ),\n\t\t\t\tstatus: 'draft',\n\t\t\t};\n\n\t\t\tconst navigationMenu = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_navigation',\n\t\t\t\trecord\n\t\t\t);\n\n\t\t\treturn navigationMenu;\n\t\t},\n\t\t[ blocks, serialize, saveEntityRecord ]\n\t);\n\n\t// Because we can't conditionally call hooks, pass an undefined client id\n\t// arg to bypass the expensive `useTemplateArea` code. The hook will return\n\t// early.\n\tconst area = useTemplatePartAreaLabel( isDisabled ? undefined : clientId );\n\n\t// Automatically save the uncontrolled blocks.\n\tuseEffect( async () => {\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\thasSavedUnsavedInnerBlocks ||\n\t\t\tisSaving ||\n\t\t\tsavingLock.current ||\n\t\t\t! hasResolvedDraftNavigationMenus ||\n\t\t\t! hasResolvedNavigationMenus ||\n\t\t\t! hasSelection\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tsavingLock.current = true;\n\t\tconst title = area\n\t\t\t? sprintf(\n\t\t\t\t\t// translators: %s: the name of a menu (e.g. Header navigation).\n\t\t\t\t\t__( '%s navigation' ),\n\t\t\t\t\tarea\n\t\t\t )\n\t\t\t: // translators: 'navigation' as in website navigation.\n\t\t\t __( 'Navigation' );\n\n\t\t// Determine how many menus start with the automatic title.\n\t\tconst matchingMenuTitleCount = [\n\t\t\t...draftNavigationMenus,\n\t\t\t...navigationMenus,\n\t\t].reduce(\n\t\t\t( count, menu ) =>\n\t\t\t\tmenu?.title?.raw?.startsWith( title ) ? count + 1 : count,\n\t\t\t0\n\t\t);\n\n\t\t// Append a number to the end of the title if a menu with\n\t\t// the same name exists.\n\t\tconst titleWithCount =\n\t\t\tmatchingMenuTitleCount > 0\n\t\t\t\t? `${ title } ${ matchingMenuTitleCount + 1 }`\n\t\t\t\t: title;\n\n\t\tconst menu = await createNavigationMenu( titleWithCount );\n\t\tonSave( menu );\n\t\tsavingLock.current = false;\n\t}, [\n\t\tisDisabled,\n\t\tisSaving,\n\t\thasResolvedDraftNavigationMenus,\n\t\thasResolvedNavigationMenus,\n\t\tdraftNavigationMenus,\n\t\tnavigationMenus,\n\t\thasSelection,\n\t\tcreateNavigationMenu,\n\t\tarea,\n\t] );\n\n\treturn (\n\t\t<>\n\t\t\t<nav { ...blockProps }>\n\t\t\t\t<div className=\"wp-block-navigation__unsaved-changes\">\n\t\t\t\t\t<Disabled\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'wp-block-navigation__unsaved-changes-overlay',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'is-saving': hasSelection,\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\t<div { ...innerBlocksProps } />\n\t\t\t\t\t</Disabled>\n\t\t\t\t\t{ hasSelection && <Spinner /> }\n\t\t\t\t</div>\n\t\t\t</nav>\n\t\t</>\n\t);\n}\n"]}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useListViewModal;
7
+
8
+ var _element = require("@wordpress/element");
9
+
10
+ var _blockEditor = require("@wordpress/block-editor");
11
+
12
+ var _components = require("@wordpress/components");
13
+
14
+ var _data = require("@wordpress/data");
15
+
16
+ var _i18n = require("@wordpress/i18n");
17
+
18
+ var _icons = require("@wordpress/icons");
19
+
20
+ /**
21
+ * WordPress dependencies
22
+ */
23
+ function NavigationBlockListView({
24
+ clientId,
25
+ __experimentalFeatures
26
+ }) {
27
+ const blocks = (0, _data.useSelect)(select => select(_blockEditor.store).__unstableGetClientIdsTree(clientId), [clientId]);
28
+ const listViewRef = (0, _element.useRef)();
29
+ const [minHeight, setMinHeight] = (0, _element.useState)(300);
30
+ (0, _element.useEffect)(() => {
31
+ var _listViewRef$current$, _listViewRef$current;
32
+
33
+ setMinHeight((_listViewRef$current$ = listViewRef === null || listViewRef === void 0 ? void 0 : (_listViewRef$current = listViewRef.current) === null || _listViewRef$current === void 0 ? void 0 : _listViewRef$current.clientHeight) !== null && _listViewRef$current$ !== void 0 ? _listViewRef$current$ : 300);
34
+ }, []);
35
+ return (0, _element.createElement)("div", {
36
+ style: {
37
+ minHeight
38
+ }
39
+ }, (0, _element.createElement)(_blockEditor.__experimentalListView, {
40
+ ref: listViewRef,
41
+ blocks: blocks,
42
+ showBlockMovers: true,
43
+ showNestedBlocks: true,
44
+ __experimentalFeatures: __experimentalFeatures
45
+ }));
46
+ }
47
+
48
+ function useListViewModal(clientId, __experimentalFeatures) {
49
+ const [isModalOpen, setIsModalOpen] = (0, _element.useState)(false);
50
+ const listViewToolbarButton = (0, _element.createElement)(_components.ToolbarButton, {
51
+ className: "components-toolbar__control",
52
+ label: (0, _i18n.__)('Open list view'),
53
+ onClick: () => setIsModalOpen(true),
54
+ icon: _icons.listView
55
+ });
56
+ const listViewModal = isModalOpen && (0, _element.createElement)(_components.Modal, {
57
+ title: (0, _i18n.__)('List View'),
58
+ closeLabel: (0, _i18n.__)('Close'),
59
+ onRequestClose: () => {
60
+ setIsModalOpen(false);
61
+ },
62
+ shouldCloseOnClickOutside: false
63
+ }, (0, _element.createElement)(NavigationBlockListView, {
64
+ clientId: clientId,
65
+ __experimentalFeatures: __experimentalFeatures
66
+ }));
67
+ return {
68
+ listViewToolbarButton,
69
+ listViewModal
70
+ };
71
+ }
72
+ //# sourceMappingURL=use-list-view-modal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/use-list-view-modal.js"],"names":["NavigationBlockListView","clientId","__experimentalFeatures","blocks","select","blockEditorStore","__unstableGetClientIdsTree","listViewRef","minHeight","setMinHeight","current","clientHeight","useListViewModal","isModalOpen","setIsModalOpen","listViewToolbarButton","listView","listViewModal"],"mappings":";;;;;;;AASA;;AANA;;AAIA;;AACA;;AAEA;;AACA;;AAXA;AACA;AACA;AAWA,SAASA,uBAAT,CAAkC;AAAEC,EAAAA,QAAF;AAAYC,EAAAA;AAAZ,CAAlC,EAAyE;AACxE,QAAMC,MAAM,GAAG,qBACZC,MAAF,IACCA,MAAM,CAAEC,kBAAF,CAAN,CAA2BC,0BAA3B,CAAuDL,QAAvD,CAFa,EAGd,CAAEA,QAAF,CAHc,CAAf;AAMA,QAAMM,WAAW,GAAG,sBAApB;AACA,QAAM,CAAEC,SAAF,EAAaC,YAAb,IAA8B,uBAAU,GAAV,CAApC;AACA,0BAAW,MAAM;AAAA;;AAChBA,IAAAA,YAAY,0BAAEF,WAAF,aAAEA,WAAF,+CAAEA,WAAW,CAAEG,OAAf,yDAAE,qBAAsBC,YAAxB,yEAAwC,GAAxC,CAAZ;AACA,GAFD,EAEG,EAFH;AAIA,SACC;AAAK,IAAA,KAAK,EAAG;AAAEH,MAAAA;AAAF;AAAb,KACC,4BAAC,mCAAD;AACC,IAAA,GAAG,EAAGD,WADP;AAEC,IAAA,MAAM,EAAGJ,MAFV;AAGC,IAAA,eAAe,MAHhB;AAIC,IAAA,gBAAgB,MAJjB;AAKC,IAAA,sBAAsB,EAAGD;AAL1B,IADD,CADD;AAWA;;AAEc,SAASU,gBAAT,CAA2BX,QAA3B,EAAqCC,sBAArC,EAA8D;AAC5E,QAAM,CAAEW,WAAF,EAAeC,cAAf,IAAkC,uBAAU,KAAV,CAAxC;AAEA,QAAMC,qBAAqB,GAC1B,4BAAC,yBAAD;AACC,IAAA,SAAS,EAAC,6BADX;AAEC,IAAA,KAAK,EAAG,cAAI,gBAAJ,CAFT;AAGC,IAAA,OAAO,EAAG,MAAMD,cAAc,CAAE,IAAF,CAH/B;AAIC,IAAA,IAAI,EAAGE;AAJR,IADD;AASA,QAAMC,aAAa,GAAGJ,WAAW,IAChC,4BAAC,iBAAD;AACC,IAAA,KAAK,EAAG,cAAI,WAAJ,CADT;AAEC,IAAA,UAAU,EAAG,cAAI,OAAJ,CAFd;AAGC,IAAA,cAAc,EAAG,MAAM;AACtBC,MAAAA,cAAc,CAAE,KAAF,CAAd;AACA,KALF;AAMC,IAAA,yBAAyB,EAAG;AAN7B,KAQC,4BAAC,uBAAD;AACC,IAAA,QAAQ,EAAGb,QADZ;AAEC,IAAA,sBAAsB,EAAGC;AAF1B,IARD,CADD;AAgBA,SAAO;AACNa,IAAAA,qBADM;AAENE,IAAAA;AAFM,GAAP;AAIA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalListView as ListView,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { ToolbarButton, Modal } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { useRef, useEffect, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { listView } from '@wordpress/icons';\n\nfunction NavigationBlockListView( { clientId, __experimentalFeatures } ) {\n\tconst blocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).__unstableGetClientIdsTree( clientId ),\n\t\t[ clientId ]\n\t);\n\n\tconst listViewRef = useRef();\n\tconst [ minHeight, setMinHeight ] = useState( 300 );\n\tuseEffect( () => {\n\t\tsetMinHeight( listViewRef?.current?.clientHeight ?? 300 );\n\t}, [] );\n\n\treturn (\n\t\t<div style={ { minHeight } }>\n\t\t\t<ListView\n\t\t\t\tref={ listViewRef }\n\t\t\t\tblocks={ blocks }\n\t\t\t\tshowBlockMovers\n\t\t\t\tshowNestedBlocks\n\t\t\t\t__experimentalFeatures={ __experimentalFeatures }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport default function useListViewModal( clientId, __experimentalFeatures ) {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\n\tconst listViewToolbarButton = (\n\t\t<ToolbarButton\n\t\t\tclassName=\"components-toolbar__control\"\n\t\t\tlabel={ __( 'Open list view' ) }\n\t\t\tonClick={ () => setIsModalOpen( true ) }\n\t\t\ticon={ listView }\n\t\t/>\n\t);\n\n\tconst listViewModal = isModalOpen && (\n\t\t<Modal\n\t\t\ttitle={ __( 'List View' ) }\n\t\t\tcloseLabel={ __( 'Close' ) }\n\t\t\tonRequestClose={ () => {\n\t\t\t\tsetIsModalOpen( false );\n\t\t\t} }\n\t\t\tshouldCloseOnClickOutside={ false }\n\t\t>\n\t\t\t<NavigationBlockListView\n\t\t\t\tclientId={ clientId }\n\t\t\t\t__experimentalFeatures={ __experimentalFeatures }\n\t\t\t/>\n\t\t</Modal>\n\t);\n\n\treturn {\n\t\tlistViewToolbarButton,\n\t\tlistViewModal,\n\t};\n}\n"]}
@@ -17,8 +17,6 @@ var _save = _interopRequireDefault(require("./save"));
17
17
 
18
18
  var _deprecated = _interopRequireDefault(require("./deprecated"));
19
19
 
20
- var _variations = _interopRequireDefault(require("./variations"));
21
-
22
20
  /**
23
21
  * WordPress dependencies
24
22
  */
@@ -35,8 +33,8 @@ const metadata = {
35
33
  keywords: ["menu", "navigation", "links"],
36
34
  textdomain: "default",
37
35
  attributes: {
38
- orientation: {
39
- type: "string"
36
+ navigationMenuId: {
37
+ type: "number"
40
38
  },
41
39
  textColor: {
42
40
  type: "string"
@@ -56,17 +54,18 @@ const metadata = {
56
54
  rgbBackgroundColor: {
57
55
  type: "string"
58
56
  },
59
- itemsJustification: {
60
- type: "string"
61
- },
62
57
  showSubmenuIcon: {
63
58
  type: "boolean",
64
59
  "default": true
65
60
  },
66
- isResponsive: {
61
+ openSubmenusOnClick: {
67
62
  type: "boolean",
68
63
  "default": false
69
64
  },
65
+ overlayMenu: {
66
+ type: "string",
67
+ "default": "mobile"
68
+ },
70
69
  __unstableLocation: {
71
70
  type: "string"
72
71
  },
@@ -83,6 +82,7 @@ const metadata = {
83
82
  type: "string"
84
83
  }
85
84
  },
85
+ usesContext: ["navigationArea"],
86
86
  providesContext: {
87
87
  textColor: "textColor",
88
88
  customTextColor: "customTextColor",
@@ -95,6 +95,7 @@ const metadata = {
95
95
  fontSize: "fontSize",
96
96
  customFontSize: "customFontSize",
97
97
  showSubmenuIcon: "showSubmenuIcon",
98
+ openSubmenusOnClick: "openSubmenusOnClick",
98
99
  style: "style",
99
100
  orientation: "orientation"
100
101
  },
@@ -110,7 +111,24 @@ const metadata = {
110
111
  __experimentalFontWeight: true,
111
112
  __experimentalTextTransform: true,
112
113
  __experimentalFontFamily: true,
113
- __experimentalTextDecoration: true
114
+ __experimentalTextDecoration: true,
115
+ __experimentalDefaultControls: {
116
+ fontSize: true
117
+ }
118
+ },
119
+ spacing: {
120
+ blockGap: true,
121
+ units: ["px", "em", "rem", "vh", "vw"],
122
+ __experimentalDefaultControls: {
123
+ blockGap: true
124
+ }
125
+ },
126
+ __experimentalLayout: {
127
+ allowSwitching: false,
128
+ allowInheriting: false,
129
+ "default": {
130
+ type: "flex"
131
+ }
114
132
  }
115
133
  },
116
134
  viewScript: "file:./view.min.js",
@@ -124,7 +142,6 @@ const {
124
142
  exports.name = name;
125
143
  const settings = {
126
144
  icon: _icons.navigation,
127
- variations: _variations.default,
128
145
  example: {
129
146
  innerBlocks: [{
130
147
  name: 'core/navigation-link',
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/index.js"],"names":["name","metadata","settings","icon","variations","example","innerBlocks","attributes","label","url","edit","save","deprecated"],"mappings":";;;;;;;;;AAGA;;AACA;;AAMA;;AACA;;AACA;;AACA;;AAbA;AACA;AACA;;AAIA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,iBADuB;AAEvBC,EAAAA,UAAU,EAAVA,mBAFuB;AAGvBC,EAAAA,OAAO,EAAE;AACRC,IAAAA,WAAW,EAAE,CACZ;AACCN,MAAAA,IAAI,EAAE,sBADP;AAECO,MAAAA,UAAU,EAAE;AACX;AACAC,QAAAA,KAAK,EAAE,cAAI,MAAJ,CAFI;AAGXC,QAAAA,GAAG,EAAE;AAHM;AAFb,KADY,EASZ;AACCT,MAAAA,IAAI,EAAE,sBADP;AAECO,MAAAA,UAAU,EAAE;AACX;AACAC,QAAAA,KAAK,EAAE,cAAI,OAAJ,CAFI;AAGXC,QAAAA,GAAG,EAAE;AAHM;AAFb,KATY,EAiBZ;AACCT,MAAAA,IAAI,EAAE,sBADP;AAECO,MAAAA,UAAU,EAAE;AACX;AACAC,QAAAA,KAAK,EAAE,cAAI,SAAJ,CAFI;AAGXC,QAAAA,GAAG,EAAE;AAHM;AAFb,KAjBY;AADL,GAHc;AA+BvBC,EAAAA,IAAI,EAAJA,aA/BuB;AAgCvBC,EAAAA,IAAI,EAAJA,aAhCuB;AAiCvBC,EAAAA,UAAU,EAAVA;AAjCuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { navigation as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\nimport save from './save';\nimport deprecated from './deprecated';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tvariations,\n\texample: {\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'Home' as in a website's home page.\n\t\t\t\t\tlabel: __( 'Home' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'About' as in a website's about page.\n\t\t\t\t\tlabel: __( 'About' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'Contact' as in a website's contact page.\n\t\t\t\t\tlabel: __( 'Contact' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/index.js"],"names":["name","metadata","settings","icon","example","innerBlocks","attributes","label","url","edit","save","deprecated"],"mappings":";;;;;;;;;AAGA;;AACA;;AAMA;;AACA;;AACA;;AAZA;AACA;AACA;;AAIA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,iBADuB;AAEvBC,EAAAA,OAAO,EAAE;AACRC,IAAAA,WAAW,EAAE,CACZ;AACCL,MAAAA,IAAI,EAAE,sBADP;AAECM,MAAAA,UAAU,EAAE;AACX;AACAC,QAAAA,KAAK,EAAE,cAAI,MAAJ,CAFI;AAGXC,QAAAA,GAAG,EAAE;AAHM;AAFb,KADY,EASZ;AACCR,MAAAA,IAAI,EAAE,sBADP;AAECM,MAAAA,UAAU,EAAE;AACX;AACAC,QAAAA,KAAK,EAAE,cAAI,OAAJ,CAFI;AAGXC,QAAAA,GAAG,EAAE;AAHM;AAFb,KATY,EAiBZ;AACCR,MAAAA,IAAI,EAAE,sBADP;AAECM,MAAAA,UAAU,EAAE;AACX;AACAC,QAAAA,KAAK,EAAE,cAAI,SAAJ,CAFI;AAGXC,QAAAA,GAAG,EAAE;AAHM;AAFb,KAjBY;AADL,GAFc;AA8BvBC,EAAAA,IAAI,EAAJA,aA9BuB;AA+BvBC,EAAAA,IAAI,EAAJA,aA/BuB;AAgCvBC,EAAAA,UAAU,EAAVA;AAhCuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { navigation as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\nimport save from './save';\nimport deprecated from './deprecated';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'Home' as in a website's home page.\n\t\t\t\t\tlabel: __( 'Home' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'About' as in a website's about page.\n\t\t\t\t\tlabel: __( 'About' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/navigation-link',\n\t\t\t\tattributes: {\n\t\t\t\t\t// translators: 'Contact' as in a website's contact page.\n\t\t\t\t\tlabel: __( 'Contact' ),\n\t\t\t\t\turl: 'https://make.wordpress.org/',\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n};\n"]}
@@ -45,7 +45,7 @@ function mapMenuItemsToBlocks(menuItems) {
45
45
 
46
46
  const sortedItems = (0, _lodash.sortBy)(menuItems, 'menu_order');
47
47
  const innerBlocks = sortedItems.map(menuItem => {
48
- var _menuItem$children;
48
+ var _menuItem$children, _menuItem$children2;
49
49
 
50
50
  if (menuItem.type === 'block') {
51
51
  const [block] = (0, _blocks.parse)(menuItem.content.raw);
@@ -70,9 +70,10 @@ function mapMenuItemsToBlocks(menuItems) {
70
70
 
71
71
  mapping = { ...mapping,
72
72
  ...nestedMapping
73
- }; // Create block with nested "innerBlocks".
73
+ };
74
+ const blockType = (_menuItem$children2 = menuItem.children) !== null && _menuItem$children2 !== void 0 && _menuItem$children2.length ? 'core/navigation-submenu' : 'core/navigation-link'; // Create block with nested "innerBlocks".
74
75
 
75
- const block = (0, _blocks.createBlock)('core/navigation-link', attributes, nestedBlocks); // Create mapping for menuItem -> block
76
+ const block = (0, _blocks.createBlock)(blockType, attributes, nestedBlocks); // Create mapping for menuItem -> block
76
77
 
77
78
  mapping[menuItem.id] = block.clientId;
78
79
  return block;
@@ -188,10 +189,10 @@ function createDataTree(dataset, id = 'id', relation = 'parent') {
188
189
  hashTable[data[id]] = { ...data,
189
190
  children: []
190
191
  };
191
- }
192
192
 
193
- for (const data of dataset) {
194
193
  if (data[relation]) {
194
+ hashTable[data[relation]] = hashTable[data[relation]] || {};
195
+ hashTable[data[relation]].children = hashTable[data[relation]].children || [];
195
196
  hashTable[data[relation]].children.push(hashTable[data[id]]);
196
197
  } else {
197
198
  dataTree.push(hashTable[data[id]]);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/menu-items-to-blocks.js"],"names":["menuItemsToBlocks","menuItems","menuTree","createDataTree","mapMenuItemsToBlocks","mapping","sortedItems","innerBlocks","map","menuItem","type","block","content","raw","attributes","menuItemToBlockAttributes","nestedBlocks","nestedMapping","children","length","id","clientId","title","menuItemTitleField","xfn","classes","attr_title","object","object_id","description","url","menuItemTypeField","target","label","rendered","kind","replace","join","trim","rel","className","opensInNewTab","dataset","relation","hashTable","Object","create","dataTree","data","push"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { sortBy } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock, parse } from '@wordpress/blocks';\n\n/**\n * Convert a flat menu item structure to a nested blocks structure.\n *\n * @param {Object[]} menuItems An array of menu items.\n *\n * @return {WPBlock[]} An array of blocks.\n */\nexport default function menuItemsToBlocks( menuItems ) {\n\tif ( ! menuItems ) {\n\t\treturn null;\n\t}\n\n\tconst menuTree = createDataTree( menuItems );\n\treturn mapMenuItemsToBlocks( menuTree );\n}\n\n/**\n * A recursive function that maps menu item nodes to blocks.\n *\n * @param {WPNavMenuItem[]} menuItems An array of WPNavMenuItem items.\n * @return {Object} Object containing innerBlocks and mapping.\n */\nfunction mapMenuItemsToBlocks( menuItems ) {\n\tlet mapping = {};\n\n\t// The menuItem should be in menu_order sort order.\n\tconst sortedItems = sortBy( menuItems, 'menu_order' );\n\n\tconst innerBlocks = sortedItems.map( ( menuItem ) => {\n\t\tif ( menuItem.type === 'block' ) {\n\t\t\tconst [ block ] = parse( menuItem.content.raw );\n\n\t\t\tif ( ! block ) {\n\t\t\t\treturn createBlock( 'core/freeform', {\n\t\t\t\t\tcontent: menuItem.content,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\treturn block;\n\t\t}\n\n\t\tconst attributes = menuItemToBlockAttributes( menuItem );\n\n\t\t// If there are children recurse to build those nested blocks.\n\t\tconst {\n\t\t\tinnerBlocks: nestedBlocks = [], // alias to avoid shadowing\n\t\t\tmapping: nestedMapping = {}, // alias to avoid shadowing\n\t\t} = menuItem.children?.length\n\t\t\t? mapMenuItemsToBlocks( menuItem.children )\n\t\t\t: {};\n\n\t\t// Update parent mapping with nested mapping.\n\t\tmapping = {\n\t\t\t...mapping,\n\t\t\t...nestedMapping,\n\t\t};\n\n\t\t// Create block with nested \"innerBlocks\".\n\t\tconst block = createBlock(\n\t\t\t'core/navigation-link',\n\t\t\tattributes,\n\t\t\tnestedBlocks\n\t\t);\n\n\t\t// Create mapping for menuItem -> block\n\t\tmapping[ menuItem.id ] = block.clientId;\n\n\t\treturn block;\n\t} );\n\n\treturn {\n\t\tinnerBlocks,\n\t\tmapping,\n\t};\n}\n\n/**\n * A WP nav_menu_item object.\n * For more documentation on the individual fields present on a menu item please see:\n * https://core.trac.wordpress.org/browser/tags/5.7.1/src/wp-includes/nav-menu.php#L789\n *\n * Changes made here should also be mirrored in packages/edit-navigation/src/store/utils.js.\n *\n * @typedef WPNavMenuItem\n *\n * @property {Object} title stores the raw and rendered versions of the title/label for this menu item.\n * @property {Array} xfn the XFN relationships expressed in the link of this menu item.\n * @property {Array} classes the HTML class attributes for this menu item.\n * @property {string} attr_title the HTML title attribute for this menu item.\n * @property {string} object The type of object originally represented, such as 'category', 'post', or 'attachment'.\n * @property {string} object_id The DB ID of the original object this menu item represents, e.g. ID for posts and term_id for categories.\n * @property {string} description The description of this menu item.\n * @property {string} url The URL to which this menu item points.\n * @property {string} type The family of objects originally represented, such as 'post_type' or 'taxonomy'.\n * @property {string} target The target attribute of the link element for this menu item.\n */\n\n/**\n * Convert block attributes to menu item.\n *\n * @param {WPNavMenuItem} menuItem the menu item to be converted to block attributes.\n * @return {Object} the block attributes converted from the WPNavMenuItem item.\n */\nfunction menuItemToBlockAttributes( {\n\ttitle: menuItemTitleField,\n\txfn,\n\tclasses,\n\t// eslint-disable-next-line camelcase\n\tattr_title,\n\tobject,\n\t// eslint-disable-next-line camelcase\n\tobject_id,\n\tdescription,\n\turl,\n\ttype: menuItemTypeField,\n\ttarget,\n} ) {\n\t// For historical reasons, the `core/navigation-link` variation type is `tag`\n\t// whereas WP Core expects `post_tag` as the `object` type.\n\t// To avoid writing a block migration we perform a conversion here.\n\t// See also inverse equivalent in `blockAttributesToMenuItem`.\n\tif ( object && object === 'post_tag' ) {\n\t\tobject = 'tag';\n\t}\n\n\treturn {\n\t\tlabel: menuItemTitleField?.rendered || '',\n\t\t...( object?.length && {\n\t\t\ttype: object,\n\t\t} ),\n\t\tkind: menuItemTypeField?.replace( '_', '-' ) || 'custom',\n\t\turl: url || '',\n\t\t...( xfn?.length &&\n\t\t\txfn.join( ' ' ).trim() && {\n\t\t\t\trel: xfn.join( ' ' ).trim(),\n\t\t\t} ),\n\t\t...( classes?.length &&\n\t\t\tclasses.join( ' ' ).trim() && {\n\t\t\t\tclassName: classes.join( ' ' ).trim(),\n\t\t\t} ),\n\t\t...( attr_title?.length && {\n\t\t\ttitle: attr_title,\n\t\t} ),\n\t\t// eslint-disable-next-line camelcase\n\t\t...( object_id &&\n\t\t\t'custom' !== object && {\n\t\t\t\tid: object_id,\n\t\t\t} ),\n\t\t...( description?.length && {\n\t\t\tdescription,\n\t\t} ),\n\t\t...( target === '_blank' && {\n\t\t\topensInNewTab: true,\n\t\t} ),\n\t};\n}\n\n/**\n * Creates a nested, hierarchical tree representation from unstructured data that\n * has an inherent relationship defined between individual items.\n *\n * For example, by default, each element in the dataset should have an `id` and\n * `parent` property where the `parent` property indicates a relationship between\n * the current item and another item with a matching `id` properties.\n *\n * This is useful for building linked lists of data from flat data structures.\n *\n * @param {Array} dataset linked data to be rearranged into a hierarchical tree based on relational fields.\n * @param {string} id the property which uniquely identifies each entry within the array.\n * @param {*} relation the property which identifies how the current item is related to other items in the data (if at all).\n * @return {Array} a nested array of parent/child relationships\n */\nfunction createDataTree( dataset, id = 'id', relation = 'parent' ) {\n\tconst hashTable = Object.create( null );\n\tconst dataTree = [];\n\n\tfor ( const data of dataset ) {\n\t\thashTable[ data[ id ] ] = {\n\t\t\t...data,\n\t\t\tchildren: [],\n\t\t};\n\t}\n\tfor ( const data of dataset ) {\n\t\tif ( data[ relation ] ) {\n\t\t\thashTable[ data[ relation ] ].children.push(\n\t\t\t\thashTable[ data[ id ] ]\n\t\t\t);\n\t\t} else {\n\t\t\tdataTree.push( hashTable[ data[ id ] ] );\n\t\t}\n\t}\n\n\treturn dataTree;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/menu-items-to-blocks.js"],"names":["menuItemsToBlocks","menuItems","menuTree","createDataTree","mapMenuItemsToBlocks","mapping","sortedItems","innerBlocks","map","menuItem","type","block","content","raw","attributes","menuItemToBlockAttributes","nestedBlocks","nestedMapping","children","length","blockType","id","clientId","title","menuItemTitleField","xfn","classes","attr_title","object","object_id","description","url","menuItemTypeField","target","label","rendered","kind","replace","join","trim","rel","className","opensInNewTab","dataset","relation","hashTable","Object","create","dataTree","data","push"],"mappings":";;;;;;;AAGA;;AAKA;;AARA;AACA;AACA;;AAGA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASA,iBAAT,CAA4BC,SAA5B,EAAwC;AACtD,MAAK,CAAEA,SAAP,EAAmB;AAClB,WAAO,IAAP;AACA;;AAED,QAAMC,QAAQ,GAAGC,cAAc,CAAEF,SAAF,CAA/B;AACA,SAAOG,oBAAoB,CAAEF,QAAF,CAA3B;AACA;AAED;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASE,oBAAT,CAA+BH,SAA/B,EAA2C;AAC1C,MAAII,OAAO,GAAG,EAAd,CAD0C,CAG1C;;AACA,QAAMC,WAAW,GAAG,oBAAQL,SAAR,EAAmB,YAAnB,CAApB;AAEA,QAAMM,WAAW,GAAGD,WAAW,CAACE,GAAZ,CAAmBC,QAAF,IAAgB;AAAA;;AACpD,QAAKA,QAAQ,CAACC,IAAT,KAAkB,OAAvB,EAAiC;AAChC,YAAM,CAAEC,KAAF,IAAY,mBAAOF,QAAQ,CAACG,OAAT,CAAiBC,GAAxB,CAAlB;;AAEA,UAAK,CAAEF,KAAP,EAAe;AACd,eAAO,yBAAa,eAAb,EAA8B;AACpCC,UAAAA,OAAO,EAAEH,QAAQ,CAACG;AADkB,SAA9B,CAAP;AAGA;;AAED,aAAOD,KAAP;AACA;;AAED,UAAMG,UAAU,GAAGC,yBAAyB,CAAEN,QAAF,CAA5C,CAboD,CAepD;;AACA,UAAM;AACLF,MAAAA,WAAW,EAAES,YAAY,GAAG,EADvB;AAC2B;AAChCX,MAAAA,OAAO,EAAEY,aAAa,GAAG,EAFpB,CAEwB;;AAFxB,QAGF,sBAAAR,QAAQ,CAACS,QAAT,kEAAmBC,MAAnB,GACDf,oBAAoB,CAAEK,QAAQ,CAACS,QAAX,CADnB,GAED,EALH,CAhBoD,CAuBpD;;AACAb,IAAAA,OAAO,GAAG,EACT,GAAGA,OADM;AAET,SAAGY;AAFM,KAAV;AAKA,UAAMG,SAAS,GAAG,uBAAAX,QAAQ,CAACS,QAAT,oEAAmBC,MAAnB,GACf,yBADe,GAEf,sBAFH,CA7BoD,CAiCpD;;AACA,UAAMR,KAAK,GAAG,yBAAaS,SAAb,EAAwBN,UAAxB,EAAoCE,YAApC,CAAd,CAlCoD,CAoCpD;;AACAX,IAAAA,OAAO,CAAEI,QAAQ,CAACY,EAAX,CAAP,GAAyBV,KAAK,CAACW,QAA/B;AAEA,WAAOX,KAAP;AACA,GAxCmB,CAApB;AA0CA,SAAO;AACNJ,IAAAA,WADM;AAENF,IAAAA;AAFM,GAAP;AAIA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASU,yBAAT,CAAoC;AACnCQ,EAAAA,KAAK,EAAEC,kBAD4B;AAEnCC,EAAAA,GAFmC;AAGnCC,EAAAA,OAHmC;AAInC;AACAC,EAAAA,UALmC;AAMnCC,EAAAA,MANmC;AAOnC;AACAC,EAAAA,SARmC;AASnCC,EAAAA,WATmC;AAUnCC,EAAAA,GAVmC;AAWnCrB,EAAAA,IAAI,EAAEsB,iBAX6B;AAYnCC,EAAAA;AAZmC,CAApC,EAaI;AAAA;;AACH;AACA;AACA;AACA;AACA,MAAKL,MAAM,IAAIA,MAAM,KAAK,UAA1B,EAAuC;AACtCA,IAAAA,MAAM,GAAG,KAAT;AACA;;AAED,SAAO;AACNM,IAAAA,KAAK,EAAE,CAAAV,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,YAAAA,kBAAkB,CAAEW,QAApB,KAAgC,EADjC;AAEN,QAAK,YAAAP,MAAM,UAAN,0CAAQT,MAAR,KAAkB;AACtBT,MAAAA,IAAI,EAAEkB;AADgB,KAAvB,CAFM;AAKNQ,IAAAA,IAAI,EAAE,CAAAJ,iBAAiB,SAAjB,IAAAA,iBAAiB,WAAjB,YAAAA,iBAAiB,CAAEK,OAAnB,CAA4B,GAA5B,EAAiC,GAAjC,MAA0C,QAL1C;AAMNN,IAAAA,GAAG,EAAEA,GAAG,IAAI,EANN;AAON,QAAK,CAAAN,GAAG,SAAH,IAAAA,GAAG,WAAH,YAAAA,GAAG,CAAEN,MAAL,KACJM,GAAG,CAACa,IAAJ,CAAU,GAAV,EAAgBC,IAAhB,EADI,IACsB;AACzBC,MAAAA,GAAG,EAAEf,GAAG,CAACa,IAAJ,CAAU,GAAV,EAAgBC,IAAhB;AADoB,KAD3B,CAPM;AAWN,QAAK,CAAAb,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAEP,MAAT,KACJO,OAAO,CAACY,IAAR,CAAc,GAAd,EAAoBC,IAApB,EADI,IAC0B;AAC7BE,MAAAA,SAAS,EAAEf,OAAO,CAACY,IAAR,CAAc,GAAd,EAAoBC,IAApB;AADkB,KAD/B,CAXM;AAeN,QAAK,CAAAZ,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAER,MAAZ,KAAsB;AAC1BI,MAAAA,KAAK,EAAEI;AADmB,KAA3B,CAfM;AAkBN;AACA,QAAKE,SAAS,IACb,aAAaD,MADT,IACmB;AACtBP,MAAAA,EAAE,EAAEQ;AADkB,KADxB,CAnBM;AAuBN,QAAK,CAAAC,WAAW,SAAX,IAAAA,WAAW,WAAX,YAAAA,WAAW,CAAEX,MAAb,KAAuB;AAC3BW,MAAAA;AAD2B,KAA5B,CAvBM;AA0BN,QAAKG,MAAM,KAAK,QAAX,IAAuB;AAC3BS,MAAAA,aAAa,EAAE;AADY,KAA5B;AA1BM,GAAP;AA8BA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASvC,cAAT,CAAyBwC,OAAzB,EAAkCtB,EAAE,GAAG,IAAvC,EAA6CuB,QAAQ,GAAG,QAAxD,EAAmE;AAClE,QAAMC,SAAS,GAAGC,MAAM,CAACC,MAAP,CAAe,IAAf,CAAlB;AACA,QAAMC,QAAQ,GAAG,EAAjB;;AAEA,OAAM,MAAMC,IAAZ,IAAoBN,OAApB,EAA8B;AAC7BE,IAAAA,SAAS,CAAEI,IAAI,CAAE5B,EAAF,CAAN,CAAT,GAA0B,EACzB,GAAG4B,IADsB;AAEzB/B,MAAAA,QAAQ,EAAE;AAFe,KAA1B;;AAIA,QAAK+B,IAAI,CAAEL,QAAF,CAAT,EAAwB;AACvBC,MAAAA,SAAS,CAAEI,IAAI,CAAEL,QAAF,CAAN,CAAT,GAAgCC,SAAS,CAAEI,IAAI,CAAEL,QAAF,CAAN,CAAT,IAAiC,EAAjE;AACAC,MAAAA,SAAS,CAAEI,IAAI,CAAEL,QAAF,CAAN,CAAT,CAA8B1B,QAA9B,GACC2B,SAAS,CAAEI,IAAI,CAAEL,QAAF,CAAN,CAAT,CAA8B1B,QAA9B,IAA0C,EAD3C;AAEA2B,MAAAA,SAAS,CAAEI,IAAI,CAAEL,QAAF,CAAN,CAAT,CAA8B1B,QAA9B,CAAuCgC,IAAvC,CACCL,SAAS,CAAEI,IAAI,CAAE5B,EAAF,CAAN,CADV;AAGA,KAPD,MAOO;AACN2B,MAAAA,QAAQ,CAACE,IAAT,CAAeL,SAAS,CAAEI,IAAI,CAAE5B,EAAF,CAAN,CAAxB;AACA;AACD;;AAED,SAAO2B,QAAP;AACA","sourcesContent":["/**\n * External dependencies\n */\nimport { sortBy } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock, parse } from '@wordpress/blocks';\n\n/**\n * Convert a flat menu item structure to a nested blocks structure.\n *\n * @param {Object[]} menuItems An array of menu items.\n *\n * @return {WPBlock[]} An array of blocks.\n */\nexport default function menuItemsToBlocks( menuItems ) {\n\tif ( ! menuItems ) {\n\t\treturn null;\n\t}\n\n\tconst menuTree = createDataTree( menuItems );\n\treturn mapMenuItemsToBlocks( menuTree );\n}\n\n/**\n * A recursive function that maps menu item nodes to blocks.\n *\n * @param {WPNavMenuItem[]} menuItems An array of WPNavMenuItem items.\n * @return {Object} Object containing innerBlocks and mapping.\n */\nfunction mapMenuItemsToBlocks( menuItems ) {\n\tlet mapping = {};\n\n\t// The menuItem should be in menu_order sort order.\n\tconst sortedItems = sortBy( menuItems, 'menu_order' );\n\n\tconst innerBlocks = sortedItems.map( ( menuItem ) => {\n\t\tif ( menuItem.type === 'block' ) {\n\t\t\tconst [ block ] = parse( menuItem.content.raw );\n\n\t\t\tif ( ! block ) {\n\t\t\t\treturn createBlock( 'core/freeform', {\n\t\t\t\t\tcontent: menuItem.content,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\treturn block;\n\t\t}\n\n\t\tconst attributes = menuItemToBlockAttributes( menuItem );\n\n\t\t// If there are children recurse to build those nested blocks.\n\t\tconst {\n\t\t\tinnerBlocks: nestedBlocks = [], // alias to avoid shadowing\n\t\t\tmapping: nestedMapping = {}, // alias to avoid shadowing\n\t\t} = menuItem.children?.length\n\t\t\t? mapMenuItemsToBlocks( menuItem.children )\n\t\t\t: {};\n\n\t\t// Update parent mapping with nested mapping.\n\t\tmapping = {\n\t\t\t...mapping,\n\t\t\t...nestedMapping,\n\t\t};\n\n\t\tconst blockType = menuItem.children?.length\n\t\t\t? 'core/navigation-submenu'\n\t\t\t: 'core/navigation-link';\n\n\t\t// Create block with nested \"innerBlocks\".\n\t\tconst block = createBlock( blockType, attributes, nestedBlocks );\n\n\t\t// Create mapping for menuItem -> block\n\t\tmapping[ menuItem.id ] = block.clientId;\n\n\t\treturn block;\n\t} );\n\n\treturn {\n\t\tinnerBlocks,\n\t\tmapping,\n\t};\n}\n\n/**\n * A WP nav_menu_item object.\n * For more documentation on the individual fields present on a menu item please see:\n * https://core.trac.wordpress.org/browser/tags/5.7.1/src/wp-includes/nav-menu.php#L789\n *\n * Changes made here should also be mirrored in packages/edit-navigation/src/store/utils.js.\n *\n * @typedef WPNavMenuItem\n *\n * @property {Object} title stores the raw and rendered versions of the title/label for this menu item.\n * @property {Array} xfn the XFN relationships expressed in the link of this menu item.\n * @property {Array} classes the HTML class attributes for this menu item.\n * @property {string} attr_title the HTML title attribute for this menu item.\n * @property {string} object The type of object originally represented, such as 'category', 'post', or 'attachment'.\n * @property {string} object_id The DB ID of the original object this menu item represents, e.g. ID for posts and term_id for categories.\n * @property {string} description The description of this menu item.\n * @property {string} url The URL to which this menu item points.\n * @property {string} type The family of objects originally represented, such as 'post_type' or 'taxonomy'.\n * @property {string} target The target attribute of the link element for this menu item.\n */\n\n/**\n * Convert block attributes to menu item.\n *\n * @param {WPNavMenuItem} menuItem the menu item to be converted to block attributes.\n * @return {Object} the block attributes converted from the WPNavMenuItem item.\n */\nfunction menuItemToBlockAttributes( {\n\ttitle: menuItemTitleField,\n\txfn,\n\tclasses,\n\t// eslint-disable-next-line camelcase\n\tattr_title,\n\tobject,\n\t// eslint-disable-next-line camelcase\n\tobject_id,\n\tdescription,\n\turl,\n\ttype: menuItemTypeField,\n\ttarget,\n} ) {\n\t// For historical reasons, the `core/navigation-link` variation type is `tag`\n\t// whereas WP Core expects `post_tag` as the `object` type.\n\t// To avoid writing a block migration we perform a conversion here.\n\t// See also inverse equivalent in `blockAttributesToMenuItem`.\n\tif ( object && object === 'post_tag' ) {\n\t\tobject = 'tag';\n\t}\n\n\treturn {\n\t\tlabel: menuItemTitleField?.rendered || '',\n\t\t...( object?.length && {\n\t\t\ttype: object,\n\t\t} ),\n\t\tkind: menuItemTypeField?.replace( '_', '-' ) || 'custom',\n\t\turl: url || '',\n\t\t...( xfn?.length &&\n\t\t\txfn.join( ' ' ).trim() && {\n\t\t\t\trel: xfn.join( ' ' ).trim(),\n\t\t\t} ),\n\t\t...( classes?.length &&\n\t\t\tclasses.join( ' ' ).trim() && {\n\t\t\t\tclassName: classes.join( ' ' ).trim(),\n\t\t\t} ),\n\t\t...( attr_title?.length && {\n\t\t\ttitle: attr_title,\n\t\t} ),\n\t\t// eslint-disable-next-line camelcase\n\t\t...( object_id &&\n\t\t\t'custom' !== object && {\n\t\t\t\tid: object_id,\n\t\t\t} ),\n\t\t...( description?.length && {\n\t\t\tdescription,\n\t\t} ),\n\t\t...( target === '_blank' && {\n\t\t\topensInNewTab: true,\n\t\t} ),\n\t};\n}\n\n/**\n * Creates a nested, hierarchical tree representation from unstructured data that\n * has an inherent relationship defined between individual items.\n *\n * For example, by default, each element in the dataset should have an `id` and\n * `parent` property where the `parent` property indicates a relationship between\n * the current item and another item with a matching `id` properties.\n *\n * This is useful for building linked lists of data from flat data structures.\n *\n * @param {Array} dataset linked data to be rearranged into a hierarchical tree based on relational fields.\n * @param {string} id the property which uniquely identifies each entry within the array.\n * @param {*} relation the property which identifies how the current item is related to other items in the data (if at all).\n * @return {Array} a nested array of parent/child relationships\n */\nfunction createDataTree( dataset, id = 'id', relation = 'parent' ) {\n\tconst hashTable = Object.create( null );\n\tconst dataTree = [];\n\n\tfor ( const data of dataset ) {\n\t\thashTable[ data[ id ] ] = {\n\t\t\t...data,\n\t\t\tchildren: [],\n\t\t};\n\t\tif ( data[ relation ] ) {\n\t\t\thashTable[ data[ relation ] ] = hashTable[ data[ relation ] ] || {};\n\t\t\thashTable[ data[ relation ] ].children =\n\t\t\t\thashTable[ data[ relation ] ].children || [];\n\t\t\thashTable[ data[ relation ] ].children.push(\n\t\t\t\thashTable[ data[ id ] ]\n\t\t\t);\n\t\t} else {\n\t\t\tdataTree.push( hashTable[ data[ id ] ] );\n\t\t}\n\t}\n\n\treturn dataTree;\n}\n"]}
@@ -12,7 +12,16 @@ var _blockEditor = require("@wordpress/block-editor");
12
12
  /**
13
13
  * WordPress dependencies
14
14
  */
15
- function save() {
15
+ function save({
16
+ attributes
17
+ }) {
18
+ if (attributes.navigationMenuId) {
19
+ // Avoid rendering inner blocks when a navigationMenuId is defined.
20
+ // When this id is defined the inner blocks are loaded from the
21
+ // `wp_navigation` entity rather than the hard-coded block html.
22
+ return;
23
+ }
24
+
16
25
  return (0, _element.createElement)(_blockEditor.InnerBlocks.Content, null);
17
26
  }
18
27
  //# sourceMappingURL=save.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/save.js"],"names":["save"],"mappings":";;;;;;;;;AAGA;;AAHA;AACA;AACA;AAGe,SAASA,IAAT,GAAgB;AAC9B,SAAO,4BAAC,wBAAD,CAAa,OAAb,OAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { InnerBlocks } from '@wordpress/block-editor';\n\nexport default function save() {\n\treturn <InnerBlocks.Content />;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/save.js"],"names":["save","attributes","navigationMenuId"],"mappings":";;;;;;;;;AAGA;;AAHA;AACA;AACA;AAGe,SAASA,IAAT,CAAe;AAAEC,EAAAA;AAAF,CAAf,EAAgC;AAC9C,MAAKA,UAAU,CAACC,gBAAhB,EAAmC;AAClC;AACA;AACA;AACA;AACA;;AACD,SAAO,4BAAC,wBAAD,CAAa,OAAb,OAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { InnerBlocks } from '@wordpress/block-editor';\n\nexport default function save( { attributes } ) {\n\tif ( attributes.navigationMenuId ) {\n\t\t// Avoid rendering inner blocks when a navigationMenuId is defined.\n\t\t// When this id is defined the inner blocks are loaded from the\n\t\t// `wp_navigation` entity rather than the hard-coded block html.\n\t\treturn;\n\t}\n\treturn <InnerBlocks.Content />;\n}\n"]}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useNavigationMenu;
7
+
8
+ var _coreData = require("@wordpress/core-data");
9
+
10
+ var _data = require("@wordpress/data");
11
+
12
+ /**
13
+ * WordPress dependencies
14
+ */
15
+ function useNavigationMenu(navigationMenuId) {
16
+ return (0, _data.useSelect)(select => {
17
+ const {
18
+ getEditedEntityRecord,
19
+ getEntityRecords,
20
+ hasFinishedResolution
21
+ } = select(_coreData.store);
22
+ const navigationMenuSingleArgs = ['postType', 'wp_navigation', navigationMenuId];
23
+ const navigationMenu = navigationMenuId ? getEditedEntityRecord(...navigationMenuSingleArgs) : null;
24
+ const hasResolvedNavigationMenu = navigationMenuId ? hasFinishedResolution('getEditedEntityRecord', navigationMenuSingleArgs) : false;
25
+ const navigationMenuMultipleArgs = ['postType', 'wp_navigation', {
26
+ per_page: -1
27
+ }];
28
+ const navigationMenus = getEntityRecords(...navigationMenuMultipleArgs);
29
+ const canSwitchNavigationMenu = navigationMenuId ? (navigationMenus === null || navigationMenus === void 0 ? void 0 : navigationMenus.length) > 1 : (navigationMenus === null || navigationMenus === void 0 ? void 0 : navigationMenus.length) > 0;
30
+ return {
31
+ isNavigationMenuResolved: hasResolvedNavigationMenu,
32
+ isNavigationMenuMissing: !navigationMenuId || hasResolvedNavigationMenu && !navigationMenu,
33
+ canSwitchNavigationMenu,
34
+ hasResolvedNavigationMenus: hasFinishedResolution('getEntityRecords', navigationMenuMultipleArgs),
35
+ navigationMenu,
36
+ navigationMenus
37
+ };
38
+ }, [navigationMenuId]);
39
+ }
40
+ //# sourceMappingURL=use-navigation-menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/use-navigation-menu.js"],"names":["useNavigationMenu","navigationMenuId","select","getEditedEntityRecord","getEntityRecords","hasFinishedResolution","coreStore","navigationMenuSingleArgs","navigationMenu","hasResolvedNavigationMenu","navigationMenuMultipleArgs","per_page","navigationMenus","canSwitchNavigationMenu","length","isNavigationMenuResolved","isNavigationMenuMissing","hasResolvedNavigationMenus"],"mappings":";;;;;;;AAGA;;AACA;;AAJA;AACA;AACA;AAIe,SAASA,iBAAT,CAA4BC,gBAA5B,EAA+C;AAC7D,SAAO,qBACJC,MAAF,IAAc;AACb,UAAM;AACLC,MAAAA,qBADK;AAELC,MAAAA,gBAFK;AAGLC,MAAAA;AAHK,QAIFH,MAAM,CAAEI,eAAF,CAJV;AAMA,UAAMC,wBAAwB,GAAG,CAChC,UADgC,EAEhC,eAFgC,EAGhCN,gBAHgC,CAAjC;AAKA,UAAMO,cAAc,GAAGP,gBAAgB,GACpCE,qBAAqB,CAAE,GAAGI,wBAAL,CADe,GAEpC,IAFH;AAGA,UAAME,yBAAyB,GAAGR,gBAAgB,GAC/CI,qBAAqB,CACrB,uBADqB,EAErBE,wBAFqB,CAD0B,GAK/C,KALH;AAOA,UAAMG,0BAA0B,GAAG,CAClC,UADkC,EAElC,eAFkC,EAGlC;AAAEC,MAAAA,QAAQ,EAAE,CAAC;AAAb,KAHkC,CAAnC;AAKA,UAAMC,eAAe,GAAGR,gBAAgB,CACvC,GAAGM,0BADoC,CAAxC;AAIA,UAAMG,uBAAuB,GAAGZ,gBAAgB,GAC7C,CAAAW,eAAe,SAAf,IAAAA,eAAe,WAAf,YAAAA,eAAe,CAAEE,MAAjB,IAA0B,CADmB,GAE7C,CAAAF,eAAe,SAAf,IAAAA,eAAe,WAAf,YAAAA,eAAe,CAAEE,MAAjB,IAA0B,CAF7B;AAIA,WAAO;AACNC,MAAAA,wBAAwB,EAAEN,yBADpB;AAENO,MAAAA,uBAAuB,EACtB,CAAEf,gBAAF,IACEQ,yBAAyB,IAAI,CAAED,cAJ5B;AAKNK,MAAAA,uBALM;AAMNI,MAAAA,0BAA0B,EAAEZ,qBAAqB,CAChD,kBADgD,EAEhDK,0BAFgD,CAN3C;AAUNF,MAAAA,cAVM;AAWNI,MAAAA;AAXM,KAAP;AAaA,GAjDK,EAkDN,CAAEX,gBAAF,CAlDM,CAAP;AAoDA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\n\nexport default function useNavigationMenu( navigationMenuId ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetEditedEntityRecord,\n\t\t\t\tgetEntityRecords,\n\t\t\t\thasFinishedResolution,\n\t\t\t} = select( coreStore );\n\n\t\t\tconst navigationMenuSingleArgs = [\n\t\t\t\t'postType',\n\t\t\t\t'wp_navigation',\n\t\t\t\tnavigationMenuId,\n\t\t\t];\n\t\t\tconst navigationMenu = navigationMenuId\n\t\t\t\t? getEditedEntityRecord( ...navigationMenuSingleArgs )\n\t\t\t\t: null;\n\t\t\tconst hasResolvedNavigationMenu = navigationMenuId\n\t\t\t\t? hasFinishedResolution(\n\t\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\t\tnavigationMenuSingleArgs\n\t\t\t\t )\n\t\t\t\t: false;\n\n\t\t\tconst navigationMenuMultipleArgs = [\n\t\t\t\t'postType',\n\t\t\t\t'wp_navigation',\n\t\t\t\t{ per_page: -1 },\n\t\t\t];\n\t\t\tconst navigationMenus = getEntityRecords(\n\t\t\t\t...navigationMenuMultipleArgs\n\t\t\t);\n\n\t\t\tconst canSwitchNavigationMenu = navigationMenuId\n\t\t\t\t? navigationMenus?.length > 1\n\t\t\t\t: navigationMenus?.length > 0;\n\n\t\t\treturn {\n\t\t\t\tisNavigationMenuResolved: hasResolvedNavigationMenu,\n\t\t\t\tisNavigationMenuMissing:\n\t\t\t\t\t! navigationMenuId ||\n\t\t\t\t\t( hasResolvedNavigationMenu && ! navigationMenu ),\n\t\t\t\tcanSwitchNavigationMenu,\n\t\t\t\thasResolvedNavigationMenus: hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\tnavigationMenuMultipleArgs\n\t\t\t\t),\n\t\t\t\tnavigationMenu,\n\t\t\t\tnavigationMenus,\n\t\t\t};\n\t\t},\n\t\t[ navigationMenuId ]\n\t);\n}\n"]}
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useTemplatePartAreaLabel;
7
+
8
+ var _blockEditor = require("@wordpress/block-editor");
9
+
10
+ var _coreData = require("@wordpress/core-data");
11
+
12
+ var _data = require("@wordpress/data");
13
+
14
+ var _createTemplatePartId = require("../template-part/edit/utils/create-template-part-id");
15
+
16
+ /**
17
+ * WordPress dependencies
18
+ */
19
+
20
+ /**
21
+ * Internal dependencies
22
+ */
23
+ // TODO: this util should perhaps be refactored somewhere like core-data.
24
+ function useTemplatePartAreaLabel(clientId) {
25
+ return (0, _data.useSelect)(select => {
26
+ // Use the lack of a clientId as an opportunity to bypass the rest
27
+ // of this hook.
28
+ if (!clientId) {
29
+ return;
30
+ }
31
+
32
+ const {
33
+ getBlock,
34
+ getBlockParentsByBlockName
35
+ } = select(_blockEditor.store);
36
+ const withAscendingResults = true;
37
+ const parentTemplatePartClientIds = getBlockParentsByBlockName(clientId, 'core/template-part', withAscendingResults);
38
+
39
+ if (!(parentTemplatePartClientIds !== null && parentTemplatePartClientIds !== void 0 && parentTemplatePartClientIds.length)) {
40
+ return;
41
+ } // FIXME: @wordpress/block-library should not depend on @wordpress/editor.
42
+ // Blocks can be loaded into a *non-post* block editor.
43
+ // This code is lifted from this file:
44
+ // packages/block-library/src/template-part/edit/advanced-controls.js
45
+ // eslint-disable-next-line @wordpress/data-no-store-string-literals
46
+
47
+
48
+ const definedAreas = select('core/editor').__experimentalGetDefaultTemplatePartAreas();
49
+
50
+ const {
51
+ getEditedEntityRecord
52
+ } = select(_coreData.store);
53
+
54
+ for (const templatePartClientId of parentTemplatePartClientIds) {
55
+ const templatePartBlock = getBlock(templatePartClientId); // The 'area' usually isn't stored on the block, but instead
56
+ // on the entity.
57
+
58
+ const {
59
+ theme,
60
+ slug
61
+ } = templatePartBlock.attributes;
62
+ const templatePartEntityId = (0, _createTemplatePartId.createTemplatePartId)(theme, slug);
63
+ const templatePartEntity = getEditedEntityRecord('postType', 'wp_template_part', templatePartEntityId); // Look up the `label` for the area in the defined areas so
64
+ // that an internationalized label can be used.
65
+
66
+ if (templatePartEntity !== null && templatePartEntity !== void 0 && templatePartEntity.area) {
67
+ var _definedAreas$find;
68
+
69
+ return (_definedAreas$find = definedAreas.find(definedArea => definedArea.area !== 'uncategorized' && definedArea.area === templatePartEntity.area)) === null || _definedAreas$find === void 0 ? void 0 : _definedAreas$find.label;
70
+ }
71
+ }
72
+ }, [clientId]);
73
+ }
74
+ //# sourceMappingURL=use-template-part-area-label.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/use-template-part-area-label.js"],"names":["useTemplatePartAreaLabel","clientId","select","getBlock","getBlockParentsByBlockName","blockEditorStore","withAscendingResults","parentTemplatePartClientIds","length","definedAreas","__experimentalGetDefaultTemplatePartAreas","getEditedEntityRecord","coreStore","templatePartClientId","templatePartBlock","theme","slug","attributes","templatePartEntityId","templatePartEntity","area","find","definedArea","label"],"mappings":";;;;;;;AAGA;;AACA;;AACA;;AAOA;;AAZA;AACA;AACA;;AAKA;AACA;AACA;AAEA;AAGe,SAASA,wBAAT,CAAmCC,QAAnC,EAA8C;AAC5D,SAAO,qBACJC,MAAF,IAAc;AACb;AACA;AACA,QAAK,CAAED,QAAP,EAAkB;AACjB;AACA;;AAED,UAAM;AAAEE,MAAAA,QAAF;AAAYC,MAAAA;AAAZ,QAA2CF,MAAM,CACtDG,kBADsD,CAAvD;AAIA,UAAMC,oBAAoB,GAAG,IAA7B;AACA,UAAMC,2BAA2B,GAAGH,0BAA0B,CAC7DH,QAD6D,EAE7D,oBAF6D,EAG7DK,oBAH6D,CAA9D;;AAMA,QAAK,EAAEC,2BAAF,aAAEA,2BAAF,eAAEA,2BAA2B,CAAEC,MAA/B,CAAL,EAA6C;AAC5C;AACA,KApBY,CAsBb;AACA;AACA;AACA;AACA;;;AACA,UAAMC,YAAY,GAAGP,MAAM,CAC1B,aAD0B,CAAN,CAEnBQ,yCAFmB,EAArB;;AAGA,UAAM;AAAEC,MAAAA;AAAF,QAA4BT,MAAM,CAAEU,eAAF,CAAxC;;AAEA,SAAM,MAAMC,oBAAZ,IAAoCN,2BAApC,EAAkE;AACjE,YAAMO,iBAAiB,GAAGX,QAAQ,CAAEU,oBAAF,CAAlC,CADiE,CAGjE;AACA;;AACA,YAAM;AAAEE,QAAAA,KAAF;AAASC,QAAAA;AAAT,UAAkBF,iBAAiB,CAACG,UAA1C;AACA,YAAMC,oBAAoB,GAAG,gDAC5BH,KAD4B,EAE5BC,IAF4B,CAA7B;AAIA,YAAMG,kBAAkB,GAAGR,qBAAqB,CAC/C,UAD+C,EAE/C,kBAF+C,EAG/CO,oBAH+C,CAAhD,CAViE,CAgBjE;AACA;;AACA,UAAKC,kBAAL,aAAKA,kBAAL,eAAKA,kBAAkB,CAAEC,IAAzB,EAAgC;AAAA;;AAC/B,qCAAOX,YAAY,CAACY,IAAb,CACJC,WAAF,IACCA,WAAW,CAACF,IAAZ,KAAqB,eAArB,IACAE,WAAW,CAACF,IAAZ,KAAqBD,kBAAkB,CAACC,IAHnC,CAAP,uDAAO,mBAIJG,KAJH;AAKA;AACD;AACD,GA3DK,EA4DN,CAAEtB,QAAF,CA5DM,CAAP;AA8DA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\n\n// TODO: this util should perhaps be refactored somewhere like core-data.\nimport { createTemplatePartId } from '../template-part/edit/utils/create-template-part-id';\n\nexport default function useTemplatePartAreaLabel( clientId ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\t// Use the lack of a clientId as an opportunity to bypass the rest\n\t\t\t// of this hook.\n\t\t\tif ( ! clientId ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { getBlock, getBlockParentsByBlockName } = select(\n\t\t\t\tblockEditorStore\n\t\t\t);\n\n\t\t\tconst withAscendingResults = true;\n\t\t\tconst parentTemplatePartClientIds = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/template-part',\n\t\t\t\twithAscendingResults\n\t\t\t);\n\n\t\t\tif ( ! parentTemplatePartClientIds?.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// FIXME: @wordpress/block-library should not depend on @wordpress/editor.\n\t\t\t// Blocks can be loaded into a *non-post* block editor.\n\t\t\t// This code is lifted from this file:\n\t\t\t// packages/block-library/src/template-part/edit/advanced-controls.js\n\t\t\t// eslint-disable-next-line @wordpress/data-no-store-string-literals\n\t\t\tconst definedAreas = select(\n\t\t\t\t'core/editor'\n\t\t\t).__experimentalGetDefaultTemplatePartAreas();\n\t\t\tconst { getEditedEntityRecord } = select( coreStore );\n\n\t\t\tfor ( const templatePartClientId of parentTemplatePartClientIds ) {\n\t\t\t\tconst templatePartBlock = getBlock( templatePartClientId );\n\n\t\t\t\t// The 'area' usually isn't stored on the block, but instead\n\t\t\t\t// on the entity.\n\t\t\t\tconst { theme, slug } = templatePartBlock.attributes;\n\t\t\t\tconst templatePartEntityId = createTemplatePartId(\n\t\t\t\t\ttheme,\n\t\t\t\t\tslug\n\t\t\t\t);\n\t\t\t\tconst templatePartEntity = getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'wp_template_part',\n\t\t\t\t\ttemplatePartEntityId\n\t\t\t\t);\n\n\t\t\t\t// Look up the `label` for the area in the defined areas so\n\t\t\t\t// that an internationalized label can be used.\n\t\t\t\tif ( templatePartEntity?.area ) {\n\t\t\t\t\treturn definedAreas.find(\n\t\t\t\t\t\t( definedArea ) =>\n\t\t\t\t\t\t\tdefinedArea.area !== 'uncategorized' &&\n\t\t\t\t\t\t\tdefinedArea.area === templatePartEntity.area\n\t\t\t\t\t)?.label;\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[ clientId ]\n\t);\n}\n"]}