@wordpress/block-library 8.11.0 → 8.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1872) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/archives/edit.js +4 -5
  3. package/build/archives/edit.js.map +1 -1
  4. package/build/archives/index.js +1 -1
  5. package/build/audio/deprecated.js +3 -4
  6. package/build/audio/deprecated.js.map +1 -1
  7. package/build/audio/edit.js +9 -13
  8. package/build/audio/edit.js.map +1 -1
  9. package/build/audio/edit.native.js +22 -26
  10. package/build/audio/edit.native.js.map +1 -1
  11. package/build/audio/index.js +1 -1
  12. package/build/audio/save.js +3 -4
  13. package/build/audio/save.js.map +1 -1
  14. package/build/audio/transforms.js +25 -29
  15. package/build/audio/transforms.js.map +1 -1
  16. package/build/avatar/edit.js +62 -70
  17. package/build/avatar/edit.js.map +1 -1
  18. package/build/avatar/hooks.js +12 -16
  19. package/build/avatar/hooks.js.map +1 -1
  20. package/build/avatar/index.js +1 -1
  21. package/build/avatar/user-control.js +4 -5
  22. package/build/avatar/user-control.js.map +1 -1
  23. package/build/block/edit-title.native.js +4 -5
  24. package/build/block/edit-title.native.js.map +1 -1
  25. package/build/block/edit.js +7 -8
  26. package/build/block/edit.js.map +1 -1
  27. package/build/block/edit.native.js +7 -8
  28. package/build/block/edit.native.js.map +1 -1
  29. package/build/block/index.js +1 -1
  30. package/build/button/color-background.native.js +5 -6
  31. package/build/button/color-background.native.js.map +1 -1
  32. package/build/button/deprecated.js +55 -80
  33. package/build/button/deprecated.js.map +1 -1
  34. package/build/button/edit.js +12 -23
  35. package/build/button/edit.js.map +1 -1
  36. package/build/button/edit.native.js +38 -41
  37. package/build/button/edit.native.js.map +1 -1
  38. package/build/button/index.js +6 -9
  39. package/build/button/index.js.map +1 -1
  40. package/build/button/save.js +6 -9
  41. package/build/button/save.js.map +1 -1
  42. package/build/buttons/deprecated.js +13 -18
  43. package/build/buttons/deprecated.js.map +1 -1
  44. package/build/buttons/edit.js +6 -11
  45. package/build/buttons/edit.js.map +1 -1
  46. package/build/buttons/edit.native.js +13 -16
  47. package/build/buttons/edit.native.js.map +1 -1
  48. package/build/buttons/index.js +1 -1
  49. package/build/buttons/save.js +5 -8
  50. package/build/buttons/save.js.map +1 -1
  51. package/build/buttons/transforms.js +2 -2
  52. package/build/buttons/transforms.js.map +1 -1
  53. package/build/calendar/edit.js +4 -5
  54. package/build/calendar/edit.js.map +1 -1
  55. package/build/calendar/index.js +1 -1
  56. package/build/categories/edit.js +19 -23
  57. package/build/categories/edit.js.map +1 -1
  58. package/build/categories/index.js +1 -1
  59. package/build/code/edit.js +5 -6
  60. package/build/code/edit.js.map +1 -1
  61. package/build/code/edit.native.js +1 -1
  62. package/build/code/edit.native.js.map +1 -1
  63. package/build/code/index.js +1 -1
  64. package/build/code/save.js +3 -4
  65. package/build/code/save.js.map +1 -1
  66. package/build/code/transforms.js +6 -8
  67. package/build/code/transforms.js.map +1 -1
  68. package/build/column/column-preview.native.js +9 -11
  69. package/build/column/column-preview.native.js.map +1 -1
  70. package/build/column/deprecated.js +6 -8
  71. package/build/column/deprecated.js.map +1 -1
  72. package/build/column/edit.js +10 -11
  73. package/build/column/edit.js.map +1 -1
  74. package/build/column/edit.native.js +18 -23
  75. package/build/column/edit.native.js.map +1 -1
  76. package/build/column/index.js +1 -1
  77. package/build/column/save.js +4 -5
  78. package/build/column/save.js.map +1 -1
  79. package/build/columns/columnCalculations.native.js +13 -8
  80. package/build/columns/columnCalculations.native.js.map +1 -1
  81. package/build/columns/deprecated.js +9 -12
  82. package/build/columns/deprecated.js.map +1 -1
  83. package/build/columns/edit.js +15 -21
  84. package/build/columns/edit.js.map +1 -1
  85. package/build/columns/edit.native.js +12 -15
  86. package/build/columns/edit.native.js.map +1 -1
  87. package/build/columns/index.js +1 -1
  88. package/build/columns/save.js +3 -4
  89. package/build/columns/save.js.map +1 -1
  90. package/build/columns/transforms.js +11 -16
  91. package/build/columns/transforms.js.map +1 -1
  92. package/build/columns/utils.js +6 -13
  93. package/build/columns/utils.js.map +1 -1
  94. package/build/comment-author-avatar/edit.js +8 -9
  95. package/build/comment-author-avatar/edit.js.map +1 -1
  96. package/build/comment-author-avatar/index.js +1 -1
  97. package/build/comment-author-name/deprecated.js +4 -7
  98. package/build/comment-author-name/deprecated.js.map +1 -1
  99. package/build/comment-author-name/edit.js +13 -14
  100. package/build/comment-author-name/edit.js.map +1 -1
  101. package/build/comment-author-name/index.js +1 -1
  102. package/build/comment-content/edit.js +9 -10
  103. package/build/comment-content/edit.js.map +1 -1
  104. package/build/comment-content/index.js +1 -1
  105. package/build/comment-date/deprecated.js +4 -7
  106. package/build/comment-date/deprecated.js.map +1 -1
  107. package/build/comment-date/edit.js +10 -11
  108. package/build/comment-date/edit.js.map +1 -1
  109. package/build/comment-date/index.js +1 -1
  110. package/build/comment-edit-link/edit.js +7 -8
  111. package/build/comment-edit-link/edit.js.map +1 -1
  112. package/build/comment-edit-link/index.js +1 -1
  113. package/build/comment-reply-link/edit.js +6 -7
  114. package/build/comment-reply-link/edit.js.map +1 -1
  115. package/build/comment-reply-link/index.js +1 -1
  116. package/build/comment-template/edit.js +58 -72
  117. package/build/comment-template/edit.js.map +1 -1
  118. package/build/comment-template/hooks.js +14 -17
  119. package/build/comment-template/hooks.js.map +1 -1
  120. package/build/comment-template/index.js +1 -1
  121. package/build/comment-template/util.js +1 -3
  122. package/build/comment-template/util.js.map +1 -1
  123. package/build/comments/deprecated.js +8 -10
  124. package/build/comments/deprecated.js.map +1 -1
  125. package/build/comments/edit/comments-inspector-controls.js +6 -7
  126. package/build/comments/edit/comments-inspector-controls.js.map +1 -1
  127. package/build/comments/edit/comments-legacy.js +8 -9
  128. package/build/comments/edit/comments-legacy.js.map +1 -1
  129. package/build/comments/edit/placeholder.js +4 -5
  130. package/build/comments/edit/placeholder.js.map +1 -1
  131. package/build/comments/index.js +1 -1
  132. package/build/comments/save.js +6 -8
  133. package/build/comments/save.js.map +1 -1
  134. package/build/comments-pagination/comments-pagination-arrow-controls.js +4 -5
  135. package/build/comments-pagination/comments-pagination-arrow-controls.js.map +1 -1
  136. package/build/comments-pagination/edit.js +9 -10
  137. package/build/comments-pagination/edit.js.map +1 -1
  138. package/build/comments-pagination/index.js +1 -1
  139. package/build/comments-pagination-next/edit.js +9 -10
  140. package/build/comments-pagination-next/edit.js.map +1 -1
  141. package/build/comments-pagination-next/index.js +1 -1
  142. package/build/comments-pagination-numbers/edit.js +11 -14
  143. package/build/comments-pagination-numbers/edit.js.map +1 -1
  144. package/build/comments-pagination-numbers/index.js +1 -1
  145. package/build/comments-pagination-previous/edit.js +9 -10
  146. package/build/comments-pagination-previous/edit.js.map +1 -1
  147. package/build/comments-pagination-previous/index.js +1 -1
  148. package/build/comments-title/deprecated.js +5 -8
  149. package/build/comments-title/deprecated.js.map +1 -1
  150. package/build/comments-title/edit.js +13 -14
  151. package/build/comments-title/edit.js.map +1 -1
  152. package/build/comments-title/index.js +1 -1
  153. package/build/cover/controls.native.js +92 -101
  154. package/build/cover/controls.native.js.map +1 -1
  155. package/build/cover/deprecated.js +33 -44
  156. package/build/cover/deprecated.js.map +1 -1
  157. package/build/cover/edit/block-controls.js +7 -8
  158. package/build/cover/edit/block-controls.js.map +1 -1
  159. package/build/cover/edit/cover-placeholder.js +8 -9
  160. package/build/cover/edit/cover-placeholder.js.map +1 -1
  161. package/build/cover/edit/index.js +16 -19
  162. package/build/cover/edit/index.js.map +1 -1
  163. package/build/cover/edit/inspector-controls.js +14 -16
  164. package/build/cover/edit/inspector-controls.js.map +1 -1
  165. package/build/cover/edit/resizable-cover-popover.js +12 -13
  166. package/build/cover/edit/resizable-cover-popover.js.map +1 -1
  167. package/build/cover/edit/use-cover-is-dark.js +1 -3
  168. package/build/cover/edit/use-cover-is-dark.js.map +1 -1
  169. package/build/cover/edit.native.js +122 -145
  170. package/build/cover/edit.native.js.map +1 -1
  171. package/build/cover/focal-point-settings-button.native.js +6 -7
  172. package/build/cover/focal-point-settings-button.native.js.map +1 -1
  173. package/build/cover/index.js +1 -1
  174. package/build/cover/overlay-color-settings.native.js +8 -9
  175. package/build/cover/overlay-color-settings.native.js.map +1 -1
  176. package/build/cover/save.js +3 -4
  177. package/build/cover/save.js.map +1 -1
  178. package/build/cover/shared.js +5 -6
  179. package/build/cover/shared.js.map +1 -1
  180. package/build/cover/transforms.js +115 -145
  181. package/build/cover/transforms.js.map +1 -1
  182. package/build/cover/use-cover-is-dark.native.js +1 -5
  183. package/build/cover/use-cover-is-dark.native.js.map +1 -1
  184. package/build/details/edit.js +5 -6
  185. package/build/details/edit.js.map +1 -1
  186. package/build/details/index.js +1 -2
  187. package/build/details/index.js.map +1 -1
  188. package/build/details/save.js +3 -4
  189. package/build/details/save.js.map +1 -1
  190. package/build/embed/deprecated.js +12 -15
  191. package/build/embed/deprecated.js.map +1 -1
  192. package/build/embed/edit.js +4 -6
  193. package/build/embed/edit.js.map +1 -1
  194. package/build/embed/edit.native.js +4 -4
  195. package/build/embed/edit.native.js.map +1 -1
  196. package/build/embed/embed-controls.js +22 -25
  197. package/build/embed/embed-controls.js.map +1 -1
  198. package/build/embed/embed-controls.native.js +9 -10
  199. package/build/embed/embed-controls.native.js.map +1 -1
  200. package/build/embed/embed-link-settings.native.js +9 -10
  201. package/build/embed/embed-link-settings.native.js.map +1 -1
  202. package/build/embed/embed-no-preview.native.js +8 -9
  203. package/build/embed/embed-no-preview.native.js.map +1 -1
  204. package/build/embed/embed-placeholder.js +10 -11
  205. package/build/embed/embed-placeholder.js.map +1 -1
  206. package/build/embed/embed-placeholder.native.js +11 -14
  207. package/build/embed/embed-placeholder.native.js.map +1 -1
  208. package/build/embed/embed-preview.native.js +16 -17
  209. package/build/embed/embed-preview.native.js.map +1 -1
  210. package/build/embed/index.js +1 -1
  211. package/build/embed/save.js +3 -4
  212. package/build/embed/save.js.map +1 -1
  213. package/build/embed/transforms.js +10 -18
  214. package/build/embed/transforms.js.map +1 -1
  215. package/build/embed/util.js +20 -51
  216. package/build/embed/util.js.map +1 -1
  217. package/build/embed/wp-embed-preview.js +14 -18
  218. package/build/embed/wp-embed-preview.js.map +1 -1
  219. package/build/embed/wp-embed-preview.native.js +4 -5
  220. package/build/embed/wp-embed-preview.native.js.map +1 -1
  221. package/build/file/deprecated.js +9 -12
  222. package/build/file/deprecated.js.map +1 -1
  223. package/build/file/edit.js +11 -16
  224. package/build/file/edit.js.map +1 -1
  225. package/build/file/edit.native.js +20 -25
  226. package/build/file/edit.native.js.map +1 -1
  227. package/build/file/index.js +2 -2
  228. package/build/file/inspector.js +12 -13
  229. package/build/file/inspector.js.map +1 -1
  230. package/build/file/save.js +3 -4
  231. package/build/file/save.js.map +1 -1
  232. package/build/file/transforms.js +9 -15
  233. package/build/file/transforms.js.map +1 -1
  234. package/build/freeform/convert-to-blocks-button.js +3 -4
  235. package/build/freeform/convert-to-blocks-button.js.map +1 -1
  236. package/build/freeform/edit.js +10 -13
  237. package/build/freeform/edit.js.map +1 -1
  238. package/build/freeform/index.js +2 -2
  239. package/build/freeform/modal.js +3 -4
  240. package/build/freeform/modal.js.map +1 -1
  241. package/build/freeform/save.js +3 -4
  242. package/build/freeform/save.js.map +1 -1
  243. package/build/gallery/deprecated.js +40 -54
  244. package/build/gallery/deprecated.js.map +1 -1
  245. package/build/gallery/edit.js +25 -53
  246. package/build/gallery/edit.js.map +1 -1
  247. package/build/gallery/gap-styles.js +6 -7
  248. package/build/gallery/gap-styles.js.map +1 -1
  249. package/build/gallery/index.js +1 -1
  250. package/build/gallery/save.js +3 -5
  251. package/build/gallery/save.js.map +1 -1
  252. package/build/gallery/shared-icon.native.js +3 -4
  253. package/build/gallery/shared-icon.native.js.map +1 -1
  254. package/build/gallery/shared.js +4 -10
  255. package/build/gallery/shared.js.map +1 -1
  256. package/build/gallery/transforms.js +103 -142
  257. package/build/gallery/transforms.js.map +1 -1
  258. package/build/gallery/use-get-media.native.js +8 -15
  259. package/build/gallery/use-get-media.native.js.map +1 -1
  260. package/build/gallery/use-get-new-images.js +2 -2
  261. package/build/gallery/use-get-new-images.js.map +1 -1
  262. package/build/gallery/use-image-sizes.js +11 -19
  263. package/build/gallery/use-image-sizes.js.map +1 -1
  264. package/build/gallery/utils.js +2 -2
  265. package/build/gallery/utils.js.map +1 -1
  266. package/build/gallery/v1/edit.js +30 -60
  267. package/build/gallery/v1/edit.js.map +1 -1
  268. package/build/gallery/v1/gallery.js +4 -5
  269. package/build/gallery/v1/gallery.js.map +1 -1
  270. package/build/gallery/v1/save.js +4 -5
  271. package/build/gallery/v1/save.js.map +1 -1
  272. package/build/gallery/v1/shared.js +4 -10
  273. package/build/gallery/v1/shared.js.map +1 -1
  274. package/build/group/deprecated.js +20 -28
  275. package/build/group/deprecated.js.map +1 -1
  276. package/build/group/edit.js +14 -18
  277. package/build/group/edit.js.map +1 -1
  278. package/build/group/edit.native.js +14 -18
  279. package/build/group/edit.native.js.map +1 -1
  280. package/build/group/index.js +1 -1
  281. package/build/group/placeholder.js +16 -19
  282. package/build/group/placeholder.js.map +1 -1
  283. package/build/group/save.js +5 -6
  284. package/build/group/save.js.map +1 -1
  285. package/build/group/variations.js +8 -23
  286. package/build/group/variations.js.map +1 -1
  287. package/build/heading/deprecated.js +18 -26
  288. package/build/heading/deprecated.js.map +1 -1
  289. package/build/heading/edit.js +8 -9
  290. package/build/heading/edit.js.map +1 -1
  291. package/build/heading/heading-level-dropdown.js +4 -5
  292. package/build/heading/heading-level-dropdown.js.map +1 -1
  293. package/build/heading/heading-level-dropdown.native.js +4 -6
  294. package/build/heading/heading-level-dropdown.native.js.map +1 -1
  295. package/build/heading/heading-level-icon.js +4 -5
  296. package/build/heading/heading-level-icon.js.map +1 -1
  297. package/build/heading/index.js +4 -5
  298. package/build/heading/index.js.map +1 -1
  299. package/build/heading/save.js +3 -4
  300. package/build/heading/save.js.map +1 -1
  301. package/build/heading/transforms.js +21 -28
  302. package/build/heading/transforms.js.map +1 -1
  303. package/build/home-link/edit.js +10 -15
  304. package/build/home-link/edit.js.map +1 -1
  305. package/build/home-link/index.js +1 -1
  306. package/build/html/edit.js +5 -6
  307. package/build/html/edit.js.map +1 -1
  308. package/build/html/index.js +1 -1
  309. package/build/html/preview.js +5 -8
  310. package/build/html/preview.js.map +1 -1
  311. package/build/html/save.js +3 -4
  312. package/build/html/save.js.map +1 -1
  313. package/build/html/transforms.js +3 -4
  314. package/build/html/transforms.js.map +1 -1
  315. package/build/image/deprecated.js +15 -20
  316. package/build/image/deprecated.js.map +1 -1
  317. package/build/image/edit.js +16 -25
  318. package/build/image/edit.js.map +1 -1
  319. package/build/image/edit.native.js +40 -55
  320. package/build/image/edit.native.js.map +1 -1
  321. package/build/image/image.js +32 -50
  322. package/build/image/image.js.map +1 -1
  323. package/build/image/index.js +7 -9
  324. package/build/image/index.js.map +1 -1
  325. package/build/image/interactivity.js +24 -27
  326. package/build/image/interactivity.js.map +1 -1
  327. package/build/image/save.js +3 -4
  328. package/build/image/save.js.map +1 -1
  329. package/build/image/transforms.js +36 -46
  330. package/build/image/transforms.js.map +1 -1
  331. package/build/image/use-client-width.js +1 -3
  332. package/build/image/use-client-width.js.map +1 -1
  333. package/build/image/utils.js +4 -7
  334. package/build/image/utils.js.map +1 -1
  335. package/build/index.js +20 -44
  336. package/build/index.js.map +1 -1
  337. package/build/index.native.js +3 -6
  338. package/build/index.native.js.map +1 -1
  339. package/build/latest-comments/edit.js +5 -6
  340. package/build/latest-comments/edit.js.map +1 -1
  341. package/build/latest-comments/index.js +1 -1
  342. package/build/latest-posts/deprecated.js +4 -7
  343. package/build/latest-posts/deprecated.js.map +1 -1
  344. package/build/latest-posts/edit.js +24 -34
  345. package/build/latest-posts/edit.js.map +1 -1
  346. package/build/latest-posts/edit.native.js +4 -5
  347. package/build/latest-posts/edit.native.js.map +1 -1
  348. package/build/latest-posts/index.js +1 -1
  349. package/build/list/deprecated.js +10 -15
  350. package/build/list/deprecated.js.map +1 -1
  351. package/build/list/edit.js +9 -11
  352. package/build/list/edit.js.map +1 -1
  353. package/build/list/index.js +1 -1
  354. package/build/list/ordered-list-settings.js +31 -34
  355. package/build/list/ordered-list-settings.js.map +1 -1
  356. package/build/list/save.js +3 -4
  357. package/build/list/save.js.map +1 -1
  358. package/build/list/transforms.js +11 -15
  359. package/build/list/transforms.js.map +1 -1
  360. package/build/list/utils.js +1 -1
  361. package/build/list/utils.js.map +1 -1
  362. package/build/list-item/edit.js +11 -17
  363. package/build/list-item/edit.js.map +1 -1
  364. package/build/list-item/edit.native.js +15 -23
  365. package/build/list-item/edit.native.js.map +1 -1
  366. package/build/list-item/hooks/use-enter.js +1 -3
  367. package/build/list-item/hooks/use-enter.js.map +1 -1
  368. package/build/list-item/hooks/use-enter.native.js +1 -3
  369. package/build/list-item/hooks/use-enter.native.js.map +1 -1
  370. package/build/list-item/hooks/use-indent-list-item.js +1 -3
  371. package/build/list-item/hooks/use-indent-list-item.js.map +1 -1
  372. package/build/list-item/hooks/use-merge.js +1 -1
  373. package/build/list-item/hooks/use-outdent-list-item.js +2 -4
  374. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
  375. package/build/list-item/index.js +1 -1
  376. package/build/list-item/list-style-type.native.js +29 -34
  377. package/build/list-item/list-style-type.native.js.map +1 -1
  378. package/build/list-item/save.js +3 -4
  379. package/build/list-item/save.js.map +1 -1
  380. package/build/list-item/transforms.js +1 -4
  381. package/build/list-item/transforms.js.map +1 -1
  382. package/build/list-item/utils.js +4 -4
  383. package/build/list-item/utils.js.map +1 -1
  384. package/build/loginout/edit.js +4 -5
  385. package/build/loginout/edit.js.map +1 -1
  386. package/build/loginout/index.js +1 -1
  387. package/build/media-text/deprecated.js +22 -31
  388. package/build/media-text/deprecated.js.map +1 -1
  389. package/build/media-text/edit.js +25 -39
  390. package/build/media-text/edit.js.map +1 -1
  391. package/build/media-text/edit.native.js +9 -13
  392. package/build/media-text/edit.native.js.map +1 -1
  393. package/build/media-text/index.js +1 -1
  394. package/build/media-text/media-container.js +15 -18
  395. package/build/media-text/media-container.js.map +1 -1
  396. package/build/media-text/media-container.native.js +4 -5
  397. package/build/media-text/media-container.native.js.map +1 -1
  398. package/build/media-text/save.js +3 -4
  399. package/build/media-text/save.js.map +1 -1
  400. package/build/media-text/transforms.js +73 -91
  401. package/build/media-text/transforms.js.map +1 -1
  402. package/build/missing/edit.js +9 -11
  403. package/build/missing/edit.js.map +1 -1
  404. package/build/missing/edit.native.js +7 -8
  405. package/build/missing/edit.native.js.map +1 -1
  406. package/build/missing/index.js +4 -6
  407. package/build/missing/index.js.map +1 -1
  408. package/build/missing/save.js +3 -4
  409. package/build/missing/save.js.map +1 -1
  410. package/build/more/edit.js +11 -15
  411. package/build/more/edit.js.map +1 -1
  412. package/build/more/edit.native.js +4 -10
  413. package/build/more/edit.native.js.map +1 -1
  414. package/build/more/index.js +4 -6
  415. package/build/more/index.js.map +1 -1
  416. package/build/more/save.js +6 -7
  417. package/build/more/save.js.map +1 -1
  418. package/build/navigation/deprecated.js +16 -27
  419. package/build/navigation/deprecated.js.map +1 -1
  420. package/build/navigation/edit/are-blocks-dirty.js +1 -1
  421. package/build/navigation/edit/are-blocks-dirty.js.map +1 -1
  422. package/build/navigation/edit/deleted-navigation-warning.js +3 -4
  423. package/build/navigation/edit/deleted-navigation-warning.js.map +1 -1
  424. package/build/navigation/edit/index.js +33 -40
  425. package/build/navigation/edit/index.js.map +1 -1
  426. package/build/navigation/edit/inner-blocks.js +10 -14
  427. package/build/navigation/edit/inner-blocks.js.map +1 -1
  428. package/build/navigation/edit/leaf-more-menu.js +34 -38
  429. package/build/navigation/edit/leaf-more-menu.js.map +1 -1
  430. package/build/navigation/edit/manage-menus-button.js +5 -6
  431. package/build/navigation/edit/manage-menus-button.js.map +1 -1
  432. package/build/navigation/edit/menu-inspector-controls.js +47 -43
  433. package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
  434. package/build/navigation/edit/navigation-menu-delete-control.js +3 -4
  435. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  436. package/build/navigation/edit/navigation-menu-selector.js +50 -56
  437. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  438. package/build/navigation/edit/overlay-menu-icon.js +3 -5
  439. package/build/navigation/edit/overlay-menu-icon.js.map +1 -1
  440. package/build/navigation/edit/overlay-menu-preview.js +5 -6
  441. package/build/navigation/edit/overlay-menu-preview.js.map +1 -1
  442. package/build/navigation/edit/placeholder/index.js +10 -11
  443. package/build/navigation/edit/placeholder/index.js.map +1 -1
  444. package/build/navigation/edit/placeholder/placeholder-preview.js +3 -4
  445. package/build/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
  446. package/build/navigation/edit/responsive-wrapper.js +18 -20
  447. package/build/navigation/edit/responsive-wrapper.js.map +1 -1
  448. package/build/navigation/edit/unsaved-inner-blocks.js +10 -14
  449. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  450. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +2 -3
  451. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  452. package/build/navigation/edit/use-create-navigation-menu.js +3 -7
  453. package/build/navigation/edit/use-create-navigation-menu.js.map +1 -1
  454. package/build/navigation/edit/use-generate-default-navigation-title.js +1 -5
  455. package/build/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
  456. package/build/navigation/edit/use-inner-blocks.js +1 -1
  457. package/build/navigation/edit/use-inner-blocks.js.map +1 -1
  458. package/build/navigation/edit/use-navigation-notice.js +4 -5
  459. package/build/navigation/edit/use-navigation-notice.js.map +1 -1
  460. package/build/navigation/edit/utils.js +2 -4
  461. package/build/navigation/edit/utils.js.map +1 -1
  462. package/build/navigation/index.js +2 -2
  463. package/build/navigation/interactivity.js +97 -87
  464. package/build/navigation/interactivity.js.map +1 -1
  465. package/build/navigation/menu-items-to-blocks.js +25 -34
  466. package/build/navigation/menu-items-to-blocks.js.map +1 -1
  467. package/build/navigation/save.js +3 -5
  468. package/build/navigation/save.js.map +1 -1
  469. package/build/navigation/use-navigation-entities.js +2 -2
  470. package/build/navigation/use-navigation-entities.js.map +1 -1
  471. package/build/navigation/use-navigation-menu.js +1 -1
  472. package/build/navigation/use-navigation-menu.js.map +1 -1
  473. package/build/navigation/use-template-part-area-label.js +3 -5
  474. package/build/navigation/use-template-part-area-label.js.map +1 -1
  475. package/build/navigation-link/edit.js +14 -21
  476. package/build/navigation-link/edit.js.map +1 -1
  477. package/build/navigation-link/hooks.js +1 -1
  478. package/build/navigation-link/hooks.js.map +1 -1
  479. package/build/navigation-link/index.js +11 -16
  480. package/build/navigation-link/index.js.map +1 -1
  481. package/build/navigation-link/link-ui.js +9 -8
  482. package/build/navigation-link/link-ui.js.map +1 -1
  483. package/build/navigation-link/update-attributes.js +1 -4
  484. package/build/navigation-link/update-attributes.js.map +1 -1
  485. package/build/navigation-submenu/edit.js +13 -16
  486. package/build/navigation-submenu/edit.js.map +1 -1
  487. package/build/navigation-submenu/index.js +7 -12
  488. package/build/navigation-submenu/index.js.map +1 -1
  489. package/build/navigation-submenu/transforms.js +6 -30
  490. package/build/navigation-submenu/transforms.js.map +1 -1
  491. package/build/nextpage/edit.native.js +9 -10
  492. package/build/nextpage/edit.native.js.map +1 -1
  493. package/build/nextpage/index.js +1 -1
  494. package/build/page-list/convert-to-links-modal.js +5 -6
  495. package/build/page-list/convert-to-links-modal.js.map +1 -1
  496. package/build/page-list/edit.js +23 -35
  497. package/build/page-list/edit.js.map +1 -1
  498. package/build/page-list/index.js +1 -1
  499. package/build/page-list/use-convert-to-navigation-links.js +16 -21
  500. package/build/page-list/use-convert-to-navigation-links.js.map +1 -1
  501. package/build/page-list-item/edit.js +5 -6
  502. package/build/page-list-item/edit.js.map +1 -1
  503. package/build/page-list-item/index.js +4 -7
  504. package/build/page-list-item/index.js.map +1 -1
  505. package/build/paragraph/deprecated.js +18 -24
  506. package/build/paragraph/deprecated.js.map +1 -1
  507. package/build/paragraph/edit.js +12 -14
  508. package/build/paragraph/edit.js.map +1 -1
  509. package/build/paragraph/edit.native.js +13 -16
  510. package/build/paragraph/edit.native.js.map +1 -1
  511. package/build/paragraph/index.js +4 -6
  512. package/build/paragraph/index.js.map +1 -1
  513. package/build/paragraph/save.js +3 -4
  514. package/build/paragraph/save.js.map +1 -1
  515. package/build/paragraph/transforms.js +10 -13
  516. package/build/paragraph/transforms.js.map +1 -1
  517. package/build/pattern/edit.js +8 -11
  518. package/build/pattern/edit.js.map +1 -1
  519. package/build/pattern/index.js +5 -4
  520. package/build/pattern/index.js.map +1 -1
  521. package/build/pattern/v1/edit.js +6 -7
  522. package/build/pattern/v1/edit.js.map +1 -1
  523. package/build/post-author/edit.js +19 -23
  524. package/build/post-author/edit.js.map +1 -1
  525. package/build/post-author/index.js +1 -1
  526. package/build/post-author-biography/edit.js +12 -15
  527. package/build/post-author-biography/edit.js.map +1 -1
  528. package/build/post-author-biography/index.js +1 -1
  529. package/build/post-author-name/edit.js +14 -17
  530. package/build/post-author-name/edit.js.map +1 -1
  531. package/build/post-author-name/index.js +1 -1
  532. package/build/post-author-name/transforms.js +10 -16
  533. package/build/post-author-name/transforms.js.map +1 -1
  534. package/build/post-comment/edit.js +6 -7
  535. package/build/post-comment/edit.js.map +1 -1
  536. package/build/post-comment/index.js +1 -1
  537. package/build/post-comments-count/edit.js +6 -9
  538. package/build/post-comments-count/edit.js.map +1 -1
  539. package/build/post-comments-count/index.js +1 -1
  540. package/build/post-comments-form/edit.js +5 -6
  541. package/build/post-comments-form/edit.js.map +1 -1
  542. package/build/post-comments-form/form.js +5 -10
  543. package/build/post-comments-form/form.js.map +1 -1
  544. package/build/post-comments-form/index.js +1 -1
  545. package/build/post-comments-link/edit.js +5 -6
  546. package/build/post-comments-link/edit.js.map +1 -1
  547. package/build/post-comments-link/index.js +1 -1
  548. package/build/post-content/edit.js +27 -23
  549. package/build/post-content/edit.js.map +1 -1
  550. package/build/post-content/index.js +1 -1
  551. package/build/post-date/deprecated.js +4 -7
  552. package/build/post-date/deprecated.js.map +1 -1
  553. package/build/post-date/edit.js +27 -33
  554. package/build/post-date/edit.js.map +1 -1
  555. package/build/post-date/index.js +1 -1
  556. package/build/post-excerpt/edit.js +21 -24
  557. package/build/post-excerpt/edit.js.map +1 -1
  558. package/build/post-excerpt/index.js +3 -3
  559. package/build/post-featured-image/dimension-controls.js +12 -13
  560. package/build/post-featured-image/dimension-controls.js.map +1 -1
  561. package/build/post-featured-image/edit.js +27 -37
  562. package/build/post-featured-image/edit.js.map +1 -1
  563. package/build/post-featured-image/index.js +1 -1
  564. package/build/post-featured-image/overlay.js +7 -8
  565. package/build/post-featured-image/overlay.js.map +1 -1
  566. package/build/post-navigation-link/edit.js +11 -12
  567. package/build/post-navigation-link/edit.js.map +1 -1
  568. package/build/post-navigation-link/index.js +1 -1
  569. package/build/post-template/edit.js +97 -83
  570. package/build/post-template/edit.js.map +1 -1
  571. package/build/post-template/index.js +10 -4
  572. package/build/post-template/index.js.map +1 -1
  573. package/build/post-terms/edit.js +10 -15
  574. package/build/post-terms/edit.js.map +1 -1
  575. package/build/post-terms/index.js +1 -1
  576. package/build/post-terms/use-post-terms.js +7 -12
  577. package/build/post-terms/use-post-terms.js.map +1 -1
  578. package/build/post-time-to-read/edit.js +5 -6
  579. package/build/post-time-to-read/edit.js.map +1 -1
  580. package/build/post-time-to-read/index.js +1 -1
  581. package/build/post-title/deprecated.js +4 -7
  582. package/build/post-title/deprecated.js.map +1 -1
  583. package/build/post-title/edit.js +27 -21
  584. package/build/post-title/edit.js.map +1 -1
  585. package/build/post-title/index.js +2 -2
  586. package/build/preformatted/edit.js +7 -8
  587. package/build/preformatted/edit.js.map +1 -1
  588. package/build/preformatted/edit.native.js +5 -7
  589. package/build/preformatted/edit.native.js.map +1 -1
  590. package/build/preformatted/index.js +1 -1
  591. package/build/preformatted/save.js +3 -4
  592. package/build/preformatted/save.js.map +1 -1
  593. package/build/preformatted/transforms.js +14 -20
  594. package/build/preformatted/transforms.js.map +1 -1
  595. package/build/pullquote/deprecated.js +61 -73
  596. package/build/pullquote/deprecated.js.map +1 -1
  597. package/build/pullquote/edit.js +6 -7
  598. package/build/pullquote/edit.js.map +1 -1
  599. package/build/pullquote/edit.native.js +13 -21
  600. package/build/pullquote/edit.native.js.map +1 -1
  601. package/build/pullquote/figure.native.js +5 -6
  602. package/build/pullquote/figure.native.js.map +1 -1
  603. package/build/pullquote/index.js +1 -1
  604. package/build/pullquote/save.js +3 -4
  605. package/build/pullquote/save.js.map +1 -1
  606. package/build/pullquote/transforms.js +17 -24
  607. package/build/pullquote/transforms.js.map +1 -1
  608. package/build/query/deprecated.js +197 -79
  609. package/build/query/deprecated.js.map +1 -1
  610. package/build/query/edit/inspector-controls/author-control.js +5 -8
  611. package/build/query/edit/inspector-controls/author-control.js.map +1 -1
  612. package/build/query/edit/inspector-controls/create-new-post-link.js +6 -7
  613. package/build/query/edit/inspector-controls/create-new-post-link.js.map +1 -1
  614. package/build/query/edit/inspector-controls/index.js +4 -6
  615. package/build/query/edit/inspector-controls/index.js.map +1 -1
  616. package/build/query/edit/inspector-controls/order-control.js +5 -6
  617. package/build/query/edit/inspector-controls/order-control.js.map +1 -1
  618. package/build/query/edit/inspector-controls/parent-control.js +10 -13
  619. package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
  620. package/build/query/edit/inspector-controls/sticky-control.js +4 -5
  621. package/build/query/edit/inspector-controls/sticky-control.js.map +1 -1
  622. package/build/query/edit/inspector-controls/taxonomy-controls.js +15 -19
  623. package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  624. package/build/query/edit/pattern-selection-modal.js +5 -6
  625. package/build/query/edit/pattern-selection-modal.js.map +1 -1
  626. package/build/query/edit/query-content.js +7 -9
  627. package/build/query/edit/query-content.js.map +1 -1
  628. package/build/query/edit/query-placeholder.js +16 -20
  629. package/build/query/edit/query-placeholder.js.map +1 -1
  630. package/build/query/edit/query-toolbar.js +17 -41
  631. package/build/query/edit/query-toolbar.js.map +1 -1
  632. package/build/query/index.js +1 -7
  633. package/build/query/index.js.map +1 -1
  634. package/build/query/save.js +5 -7
  635. package/build/query/save.js.map +1 -1
  636. package/build/query/utils.js +24 -60
  637. package/build/query/utils.js.map +1 -1
  638. package/build/query-no-results/index.js +1 -1
  639. package/build/query-pagination/edit.js +28 -11
  640. package/build/query-pagination/edit.js.map +1 -1
  641. package/build/query-pagination/index.js +7 -2
  642. package/build/query-pagination/index.js.map +1 -1
  643. package/build/query-pagination/query-pagination-arrow-controls.js +4 -5
  644. package/build/query-pagination/query-pagination-arrow-controls.js.map +1 -1
  645. package/build/query-pagination/query-pagination-label-control.js +29 -0
  646. package/build/query-pagination/query-pagination-label-control.js.map +1 -0
  647. package/build/query-pagination-next/edit.js +11 -11
  648. package/build/query-pagination-next/edit.js.map +1 -1
  649. package/build/query-pagination-next/index.js +2 -2
  650. package/build/query-pagination-numbers/edit.js +3 -7
  651. package/build/query-pagination-numbers/edit.js.map +1 -1
  652. package/build/query-pagination-numbers/index.js +1 -1
  653. package/build/query-pagination-previous/edit.js +11 -11
  654. package/build/query-pagination-previous/edit.js.map +1 -1
  655. package/build/query-pagination-previous/index.js +2 -2
  656. package/build/query-title/deprecated.js +4 -7
  657. package/build/query-title/deprecated.js.map +1 -1
  658. package/build/query-title/edit.js +10 -11
  659. package/build/query-title/edit.js.map +1 -1
  660. package/build/query-title/index.js +1 -1
  661. package/build/quote/deprecated.js +17 -24
  662. package/build/quote/deprecated.js.map +1 -1
  663. package/build/quote/edit.js +8 -9
  664. package/build/quote/edit.js.map +1 -1
  665. package/build/quote/index.js +1 -1
  666. package/build/quote/save.js +3 -4
  667. package/build/quote/save.js.map +1 -1
  668. package/build/quote/transforms.js +37 -57
  669. package/build/quote/transforms.js.map +1 -1
  670. package/build/read-more/edit.js +8 -9
  671. package/build/read-more/edit.js.map +1 -1
  672. package/build/read-more/index.js +1 -1
  673. package/build/rss/edit.js +4 -5
  674. package/build/rss/edit.js.map +1 -1
  675. package/build/rss/index.js +1 -1
  676. package/build/search/edit.js +74 -32
  677. package/build/search/edit.js.map +1 -1
  678. package/build/search/edit.native.js +39 -35
  679. package/build/search/edit.native.js.map +1 -1
  680. package/build/search/index.js +9 -1
  681. package/build/search/index.js.map +1 -1
  682. package/build/search/view.js +67 -0
  683. package/build/search/view.js.map +1 -0
  684. package/build/separator/deprecated.js +3 -4
  685. package/build/separator/deprecated.js.map +1 -1
  686. package/build/separator/edit.js +6 -9
  687. package/build/separator/edit.js.map +1 -1
  688. package/build/separator/index.js +1 -1
  689. package/build/separator/save.js +5 -8
  690. package/build/separator/save.js.map +1 -1
  691. package/build/shortcode/edit.js +4 -5
  692. package/build/shortcode/edit.js.map +1 -1
  693. package/build/shortcode/index.js +2 -2
  694. package/build/shortcode/save.js +3 -4
  695. package/build/shortcode/save.js.map +1 -1
  696. package/build/shortcode/transforms.js +3 -4
  697. package/build/shortcode/transforms.js.map +1 -1
  698. package/build/site-logo/edit.js +58 -74
  699. package/build/site-logo/edit.js.map +1 -1
  700. package/build/site-logo/index.js +1 -1
  701. package/build/site-logo/transforms.js +4 -5
  702. package/build/site-logo/transforms.js.map +1 -1
  703. package/build/site-tagline/deprecated.js +4 -7
  704. package/build/site-tagline/deprecated.js.map +1 -1
  705. package/build/site-tagline/edit.js +6 -7
  706. package/build/site-tagline/edit.js.map +1 -1
  707. package/build/site-tagline/index.js +1 -1
  708. package/build/site-title/deprecated.js +4 -7
  709. package/build/site-title/deprecated.js.map +1 -1
  710. package/build/site-title/edit/index.js +6 -7
  711. package/build/site-title/edit/index.js.map +1 -1
  712. package/build/site-title/edit/level-icon.js +4 -5
  713. package/build/site-title/edit/level-icon.js.map +1 -1
  714. package/build/site-title/edit/level-toolbar.js +4 -5
  715. package/build/site-title/edit/level-toolbar.js.map +1 -1
  716. package/build/site-title/index.js +1 -1
  717. package/build/site-title/transforms.js +4 -5
  718. package/build/site-title/transforms.js.map +1 -1
  719. package/build/social-link/edit.js +19 -17
  720. package/build/social-link/edit.js.map +1 -1
  721. package/build/social-link/edit.native.js +11 -13
  722. package/build/social-link/edit.native.js.map +1 -1
  723. package/build/social-link/index.js +2 -2
  724. package/build/social-links/deprecated.js +2 -4
  725. package/build/social-links/deprecated.js.map +1 -1
  726. package/build/social-links/edit.js +36 -42
  727. package/build/social-links/edit.js.map +1 -1
  728. package/build/social-links/edit.native.js +18 -25
  729. package/build/social-links/edit.native.js.map +1 -1
  730. package/build/social-links/index.js +3 -1
  731. package/build/social-links/index.js.map +1 -1
  732. package/build/spacer/controls.js +18 -21
  733. package/build/spacer/controls.js.map +1 -1
  734. package/build/spacer/controls.native.js +7 -8
  735. package/build/spacer/controls.native.js.map +1 -1
  736. package/build/spacer/deprecated.js +3 -4
  737. package/build/spacer/deprecated.js.map +1 -1
  738. package/build/spacer/edit.js +20 -23
  739. package/build/spacer/edit.js.map +1 -1
  740. package/build/spacer/edit.native.js +7 -8
  741. package/build/spacer/edit.native.js.map +1 -1
  742. package/build/spacer/index.js +1 -1
  743. package/build/spacer/save.js +6 -7
  744. package/build/spacer/save.js.map +1 -1
  745. package/build/spacer/save.native.js +6 -7
  746. package/build/spacer/save.native.js.map +1 -1
  747. package/build/table/deprecated.js +79 -102
  748. package/build/table/deprecated.js.map +1 -1
  749. package/build/table/edit.js +45 -59
  750. package/build/table/edit.js.map +1 -1
  751. package/build/table/index.js +1 -1
  752. package/build/table/save.js +33 -40
  753. package/build/table/save.js.map +1 -1
  754. package/build/table/state.js +32 -59
  755. package/build/table/state.js.map +1 -1
  756. package/build/table/transforms.js +17 -20
  757. package/build/table/transforms.js.map +1 -1
  758. package/build/table-of-contents/edit.js +9 -10
  759. package/build/table-of-contents/edit.js.map +1 -1
  760. package/build/table-of-contents/index.js +1 -1
  761. package/build/table-of-contents/list.js +3 -4
  762. package/build/table-of-contents/list.js.map +1 -1
  763. package/build/table-of-contents/save.js +5 -7
  764. package/build/table-of-contents/save.js.map +1 -1
  765. package/build/table-of-contents/utils.js +1 -3
  766. package/build/table-of-contents/utils.js.map +1 -1
  767. package/build/tag-cloud/edit.js +6 -8
  768. package/build/tag-cloud/edit.js.map +1 -1
  769. package/build/tag-cloud/index.js +1 -1
  770. package/build/template-part/edit/advanced-controls.js +15 -19
  771. package/build/template-part/edit/advanced-controls.js.map +1 -1
  772. package/build/template-part/edit/import-controls.js +7 -11
  773. package/build/template-part/edit/import-controls.js.map +1 -1
  774. package/build/template-part/edit/index.js +7 -8
  775. package/build/template-part/edit/index.js.map +1 -1
  776. package/build/template-part/edit/inner-blocks.js +8 -11
  777. package/build/template-part/edit/inner-blocks.js.map +1 -1
  778. package/build/template-part/edit/placeholder.js +7 -8
  779. package/build/template-part/edit/placeholder.js.map +1 -1
  780. package/build/template-part/edit/selection-modal.js +8 -11
  781. package/build/template-part/edit/selection-modal.js.map +1 -1
  782. package/build/template-part/edit/title-modal.js +5 -6
  783. package/build/template-part/edit/title-modal.js.map +1 -1
  784. package/build/template-part/edit/utils/hooks.js +4 -6
  785. package/build/template-part/edit/utils/hooks.js.map +1 -1
  786. package/build/template-part/edit/utils/transformers.js +3 -6
  787. package/build/template-part/edit/utils/transformers.js.map +1 -1
  788. package/build/template-part/index.js +11 -19
  789. package/build/template-part/index.js.map +1 -1
  790. package/build/template-part/variations.js +2 -2
  791. package/build/template-part/variations.js.map +1 -1
  792. package/build/term-description/edit.js +5 -6
  793. package/build/term-description/edit.js.map +1 -1
  794. package/build/term-description/index.js +1 -1
  795. package/build/text-columns/edit.js +5 -8
  796. package/build/text-columns/edit.js.map +1 -1
  797. package/build/text-columns/index.js +1 -1
  798. package/build/text-columns/save.js +10 -15
  799. package/build/text-columns/save.js.map +1 -1
  800. package/build/text-columns/transforms.js +14 -20
  801. package/build/text-columns/transforms.js.map +1 -1
  802. package/build/utils/init-block.native.js +1 -3
  803. package/build/utils/init-block.native.js.map +1 -1
  804. package/build/utils/interactivity/constants.js +1 -1
  805. package/build/utils/interactivity/constants.js.map +1 -1
  806. package/build/utils/interactivity/directives.js +75 -86
  807. package/build/utils/interactivity/directives.js.map +1 -1
  808. package/build/utils/interactivity/hooks.js +29 -46
  809. package/build/utils/interactivity/hooks.js.map +1 -1
  810. package/build/utils/interactivity/hydration.js +1 -1
  811. package/build/utils/interactivity/hydration.js.map +1 -1
  812. package/build/utils/interactivity/store.js +4 -5
  813. package/build/utils/interactivity/store.js.map +1 -1
  814. package/build/utils/interactivity/vdom.js +14 -4
  815. package/build/utils/interactivity/vdom.js.map +1 -1
  816. package/build/utils/migrate-font-family.js +1 -3
  817. package/build/utils/migrate-font-family.js.map +1 -1
  818. package/build/utils/search-patterns.js +5 -19
  819. package/build/utils/search-patterns.js.map +1 -1
  820. package/build/utils/transformation-categories.native.js +1 -4
  821. package/build/utils/transformation-categories.native.js.map +1 -1
  822. package/build/verse/deprecated.js +10 -15
  823. package/build/verse/deprecated.js.map +1 -1
  824. package/build/verse/edit.js +7 -8
  825. package/build/verse/edit.js.map +1 -1
  826. package/build/verse/index.js +1 -1
  827. package/build/verse/save.js +3 -4
  828. package/build/verse/save.js.map +1 -1
  829. package/build/video/deprecated.js +4 -5
  830. package/build/video/deprecated.js.map +1 -1
  831. package/build/video/edit-common-settings.js +4 -5
  832. package/build/video/edit-common-settings.js.map +1 -1
  833. package/build/video/edit.js +18 -27
  834. package/build/video/edit.js.map +1 -1
  835. package/build/video/edit.native.js +18 -24
  836. package/build/video/edit.native.js.map +1 -1
  837. package/build/video/index.js +1 -1
  838. package/build/video/save.js +3 -4
  839. package/build/video/save.js.map +1 -1
  840. package/build/video/tracks-editor.js +39 -51
  841. package/build/video/tracks-editor.js.map +1 -1
  842. package/build/video/tracks.js +3 -4
  843. package/build/video/tracks.js.map +1 -1
  844. package/build/video/transforms.js +30 -35
  845. package/build/video/transforms.js.map +1 -1
  846. package/build-module/archives/edit.js +4 -5
  847. package/build-module/archives/edit.js.map +1 -1
  848. package/build-module/archives/index.js +1 -1
  849. package/build-module/audio/deprecated.js +3 -4
  850. package/build-module/audio/deprecated.js.map +1 -1
  851. package/build-module/audio/edit.js +9 -13
  852. package/build-module/audio/edit.js.map +1 -1
  853. package/build-module/audio/edit.native.js +22 -26
  854. package/build-module/audio/edit.native.js.map +1 -1
  855. package/build-module/audio/index.js +1 -1
  856. package/build-module/audio/save.js +3 -4
  857. package/build-module/audio/save.js.map +1 -1
  858. package/build-module/audio/transforms.js +25 -29
  859. package/build-module/audio/transforms.js.map +1 -1
  860. package/build-module/avatar/edit.js +61 -69
  861. package/build-module/avatar/edit.js.map +1 -1
  862. package/build-module/avatar/hooks.js +12 -16
  863. package/build-module/avatar/hooks.js.map +1 -1
  864. package/build-module/avatar/index.js +1 -1
  865. package/build-module/avatar/user-control.js +4 -5
  866. package/build-module/avatar/user-control.js.map +1 -1
  867. package/build-module/block/edit-title.native.js +4 -5
  868. package/build-module/block/edit-title.native.js.map +1 -1
  869. package/build-module/block/edit.js +7 -8
  870. package/build-module/block/edit.js.map +1 -1
  871. package/build-module/block/edit.native.js +7 -8
  872. package/build-module/block/edit.native.js.map +1 -1
  873. package/build-module/block/index.js +1 -1
  874. package/build-module/button/color-background.native.js +5 -6
  875. package/build-module/button/color-background.native.js.map +1 -1
  876. package/build-module/button/deprecated.js +55 -80
  877. package/build-module/button/deprecated.js.map +1 -1
  878. package/build-module/button/edit.js +12 -23
  879. package/build-module/button/edit.js.map +1 -1
  880. package/build-module/button/edit.native.js +26 -41
  881. package/build-module/button/edit.native.js.map +1 -1
  882. package/build-module/button/index.js +6 -9
  883. package/build-module/button/index.js.map +1 -1
  884. package/build-module/button/save.js +6 -9
  885. package/build-module/button/save.js.map +1 -1
  886. package/build-module/buttons/deprecated.js +13 -18
  887. package/build-module/buttons/deprecated.js.map +1 -1
  888. package/build-module/buttons/edit.js +6 -11
  889. package/build-module/buttons/edit.js.map +1 -1
  890. package/build-module/buttons/edit.native.js +13 -16
  891. package/build-module/buttons/edit.native.js.map +1 -1
  892. package/build-module/buttons/index.js +1 -1
  893. package/build-module/buttons/save.js +5 -8
  894. package/build-module/buttons/save.js.map +1 -1
  895. package/build-module/buttons/transforms.js +2 -2
  896. package/build-module/buttons/transforms.js.map +1 -1
  897. package/build-module/calendar/edit.js +4 -5
  898. package/build-module/calendar/edit.js.map +1 -1
  899. package/build-module/calendar/index.js +1 -1
  900. package/build-module/categories/edit.js +19 -23
  901. package/build-module/categories/edit.js.map +1 -1
  902. package/build-module/categories/index.js +1 -1
  903. package/build-module/code/edit.js +5 -6
  904. package/build-module/code/edit.js.map +1 -1
  905. package/build-module/code/edit.native.js +1 -1
  906. package/build-module/code/edit.native.js.map +1 -1
  907. package/build-module/code/index.js +1 -1
  908. package/build-module/code/save.js +3 -4
  909. package/build-module/code/save.js.map +1 -1
  910. package/build-module/code/transforms.js +6 -8
  911. package/build-module/code/transforms.js.map +1 -1
  912. package/build-module/column/column-preview.native.js +9 -11
  913. package/build-module/column/column-preview.native.js.map +1 -1
  914. package/build-module/column/deprecated.js +6 -8
  915. package/build-module/column/deprecated.js.map +1 -1
  916. package/build-module/column/edit.js +10 -11
  917. package/build-module/column/edit.js.map +1 -1
  918. package/build-module/column/edit.native.js +18 -23
  919. package/build-module/column/edit.native.js.map +1 -1
  920. package/build-module/column/index.js +1 -1
  921. package/build-module/column/save.js +4 -5
  922. package/build-module/column/save.js.map +1 -1
  923. package/build-module/columns/columnCalculations.native.js +6 -9
  924. package/build-module/columns/columnCalculations.native.js.map +1 -1
  925. package/build-module/columns/deprecated.js +9 -12
  926. package/build-module/columns/deprecated.js.map +1 -1
  927. package/build-module/columns/edit.js +15 -21
  928. package/build-module/columns/edit.js.map +1 -1
  929. package/build-module/columns/edit.native.js +12 -15
  930. package/build-module/columns/edit.native.js.map +1 -1
  931. package/build-module/columns/index.js +1 -1
  932. package/build-module/columns/save.js +3 -4
  933. package/build-module/columns/save.js.map +1 -1
  934. package/build-module/columns/transforms.js +11 -16
  935. package/build-module/columns/transforms.js.map +1 -1
  936. package/build-module/columns/utils.js +6 -13
  937. package/build-module/columns/utils.js.map +1 -1
  938. package/build-module/comment-author-avatar/edit.js +8 -9
  939. package/build-module/comment-author-avatar/edit.js.map +1 -1
  940. package/build-module/comment-author-avatar/index.js +1 -1
  941. package/build-module/comment-author-name/deprecated.js +4 -7
  942. package/build-module/comment-author-name/deprecated.js.map +1 -1
  943. package/build-module/comment-author-name/edit.js +13 -14
  944. package/build-module/comment-author-name/edit.js.map +1 -1
  945. package/build-module/comment-author-name/index.js +1 -1
  946. package/build-module/comment-content/edit.js +9 -10
  947. package/build-module/comment-content/edit.js.map +1 -1
  948. package/build-module/comment-content/index.js +1 -1
  949. package/build-module/comment-date/deprecated.js +4 -7
  950. package/build-module/comment-date/deprecated.js.map +1 -1
  951. package/build-module/comment-date/edit.js +10 -11
  952. package/build-module/comment-date/edit.js.map +1 -1
  953. package/build-module/comment-date/index.js +1 -1
  954. package/build-module/comment-edit-link/edit.js +7 -8
  955. package/build-module/comment-edit-link/edit.js.map +1 -1
  956. package/build-module/comment-edit-link/index.js +1 -1
  957. package/build-module/comment-reply-link/edit.js +6 -7
  958. package/build-module/comment-reply-link/edit.js.map +1 -1
  959. package/build-module/comment-reply-link/index.js +1 -1
  960. package/build-module/comment-template/edit.js +57 -71
  961. package/build-module/comment-template/edit.js.map +1 -1
  962. package/build-module/comment-template/hooks.js +14 -17
  963. package/build-module/comment-template/hooks.js.map +1 -1
  964. package/build-module/comment-template/index.js +1 -1
  965. package/build-module/comment-template/util.js +1 -3
  966. package/build-module/comment-template/util.js.map +1 -1
  967. package/build-module/comments/deprecated.js +8 -9
  968. package/build-module/comments/deprecated.js.map +1 -1
  969. package/build-module/comments/edit/comments-inspector-controls.js +6 -7
  970. package/build-module/comments/edit/comments-inspector-controls.js.map +1 -1
  971. package/build-module/comments/edit/comments-legacy.js +8 -9
  972. package/build-module/comments/edit/comments-legacy.js.map +1 -1
  973. package/build-module/comments/edit/placeholder.js +4 -5
  974. package/build-module/comments/edit/placeholder.js.map +1 -1
  975. package/build-module/comments/index.js +1 -1
  976. package/build-module/comments/save.js +6 -7
  977. package/build-module/comments/save.js.map +1 -1
  978. package/build-module/comments-pagination/comments-pagination-arrow-controls.js +4 -5
  979. package/build-module/comments-pagination/comments-pagination-arrow-controls.js.map +1 -1
  980. package/build-module/comments-pagination/edit.js +9 -10
  981. package/build-module/comments-pagination/edit.js.map +1 -1
  982. package/build-module/comments-pagination/index.js +1 -1
  983. package/build-module/comments-pagination-next/edit.js +9 -10
  984. package/build-module/comments-pagination-next/edit.js.map +1 -1
  985. package/build-module/comments-pagination-next/index.js +1 -1
  986. package/build-module/comments-pagination-numbers/edit.js +11 -14
  987. package/build-module/comments-pagination-numbers/edit.js.map +1 -1
  988. package/build-module/comments-pagination-numbers/index.js +1 -1
  989. package/build-module/comments-pagination-previous/edit.js +9 -10
  990. package/build-module/comments-pagination-previous/edit.js.map +1 -1
  991. package/build-module/comments-pagination-previous/index.js +1 -1
  992. package/build-module/comments-title/deprecated.js +5 -8
  993. package/build-module/comments-title/deprecated.js.map +1 -1
  994. package/build-module/comments-title/edit.js +13 -14
  995. package/build-module/comments-title/edit.js.map +1 -1
  996. package/build-module/comments-title/index.js +1 -1
  997. package/build-module/cover/controls.native.js +92 -101
  998. package/build-module/cover/controls.native.js.map +1 -1
  999. package/build-module/cover/deprecated.js +33 -44
  1000. package/build-module/cover/deprecated.js.map +1 -1
  1001. package/build-module/cover/edit/block-controls.js +7 -8
  1002. package/build-module/cover/edit/block-controls.js.map +1 -1
  1003. package/build-module/cover/edit/cover-placeholder.js +8 -9
  1004. package/build-module/cover/edit/cover-placeholder.js.map +1 -1
  1005. package/build-module/cover/edit/index.js +16 -19
  1006. package/build-module/cover/edit/index.js.map +1 -1
  1007. package/build-module/cover/edit/inspector-controls.js +14 -16
  1008. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  1009. package/build-module/cover/edit/resizable-cover-popover.js +12 -13
  1010. package/build-module/cover/edit/resizable-cover-popover.js.map +1 -1
  1011. package/build-module/cover/edit/use-cover-is-dark.js +1 -3
  1012. package/build-module/cover/edit/use-cover-is-dark.js.map +1 -1
  1013. package/build-module/cover/edit.native.js +122 -145
  1014. package/build-module/cover/edit.native.js.map +1 -1
  1015. package/build-module/cover/focal-point-settings-button.native.js +6 -7
  1016. package/build-module/cover/focal-point-settings-button.native.js.map +1 -1
  1017. package/build-module/cover/index.js +1 -1
  1018. package/build-module/cover/overlay-color-settings.native.js +8 -9
  1019. package/build-module/cover/overlay-color-settings.native.js.map +1 -1
  1020. package/build-module/cover/save.js +3 -4
  1021. package/build-module/cover/save.js.map +1 -1
  1022. package/build-module/cover/shared.js +5 -6
  1023. package/build-module/cover/shared.js.map +1 -1
  1024. package/build-module/cover/transforms.js +115 -145
  1025. package/build-module/cover/transforms.js.map +1 -1
  1026. package/build-module/cover/use-cover-is-dark.native.js +1 -5
  1027. package/build-module/cover/use-cover-is-dark.native.js.map +1 -1
  1028. package/build-module/details/edit.js +5 -6
  1029. package/build-module/details/edit.js.map +1 -1
  1030. package/build-module/details/index.js +1 -2
  1031. package/build-module/details/index.js.map +1 -1
  1032. package/build-module/details/save.js +3 -4
  1033. package/build-module/details/save.js.map +1 -1
  1034. package/build-module/embed/deprecated.js +12 -15
  1035. package/build-module/embed/deprecated.js.map +1 -1
  1036. package/build-module/embed/edit.js +4 -6
  1037. package/build-module/embed/edit.js.map +1 -1
  1038. package/build-module/embed/edit.native.js +4 -4
  1039. package/build-module/embed/edit.native.js.map +1 -1
  1040. package/build-module/embed/embed-controls.js +22 -25
  1041. package/build-module/embed/embed-controls.js.map +1 -1
  1042. package/build-module/embed/embed-controls.native.js +9 -10
  1043. package/build-module/embed/embed-controls.native.js.map +1 -1
  1044. package/build-module/embed/embed-link-settings.native.js +9 -10
  1045. package/build-module/embed/embed-link-settings.native.js.map +1 -1
  1046. package/build-module/embed/embed-no-preview.native.js +8 -9
  1047. package/build-module/embed/embed-no-preview.native.js.map +1 -1
  1048. package/build-module/embed/embed-placeholder.js +10 -11
  1049. package/build-module/embed/embed-placeholder.js.map +1 -1
  1050. package/build-module/embed/embed-placeholder.native.js +11 -14
  1051. package/build-module/embed/embed-placeholder.native.js.map +1 -1
  1052. package/build-module/embed/embed-preview.native.js +16 -17
  1053. package/build-module/embed/embed-preview.native.js.map +1 -1
  1054. package/build-module/embed/index.js +1 -1
  1055. package/build-module/embed/save.js +3 -4
  1056. package/build-module/embed/save.js.map +1 -1
  1057. package/build-module/embed/transforms.js +10 -18
  1058. package/build-module/embed/transforms.js.map +1 -1
  1059. package/build-module/embed/util.js +20 -51
  1060. package/build-module/embed/util.js.map +1 -1
  1061. package/build-module/embed/wp-embed-preview.js +14 -18
  1062. package/build-module/embed/wp-embed-preview.js.map +1 -1
  1063. package/build-module/embed/wp-embed-preview.native.js +4 -5
  1064. package/build-module/embed/wp-embed-preview.native.js.map +1 -1
  1065. package/build-module/file/deprecated.js +9 -12
  1066. package/build-module/file/deprecated.js.map +1 -1
  1067. package/build-module/file/edit.js +11 -16
  1068. package/build-module/file/edit.js.map +1 -1
  1069. package/build-module/file/edit.native.js +20 -25
  1070. package/build-module/file/edit.native.js.map +1 -1
  1071. package/build-module/file/index.js +2 -2
  1072. package/build-module/file/inspector.js +12 -13
  1073. package/build-module/file/inspector.js.map +1 -1
  1074. package/build-module/file/save.js +3 -4
  1075. package/build-module/file/save.js.map +1 -1
  1076. package/build-module/file/transforms.js +9 -15
  1077. package/build-module/file/transforms.js.map +1 -1
  1078. package/build-module/freeform/convert-to-blocks-button.js +3 -4
  1079. package/build-module/freeform/convert-to-blocks-button.js.map +1 -1
  1080. package/build-module/freeform/edit.js +10 -13
  1081. package/build-module/freeform/edit.js.map +1 -1
  1082. package/build-module/freeform/index.js +2 -2
  1083. package/build-module/freeform/modal.js +3 -4
  1084. package/build-module/freeform/modal.js.map +1 -1
  1085. package/build-module/freeform/save.js +3 -4
  1086. package/build-module/freeform/save.js.map +1 -1
  1087. package/build-module/gallery/deprecated.js +40 -54
  1088. package/build-module/gallery/deprecated.js.map +1 -1
  1089. package/build-module/gallery/edit.js +25 -53
  1090. package/build-module/gallery/edit.js.map +1 -1
  1091. package/build-module/gallery/gap-styles.js +6 -7
  1092. package/build-module/gallery/gap-styles.js.map +1 -1
  1093. package/build-module/gallery/index.js +1 -1
  1094. package/build-module/gallery/save.js +3 -5
  1095. package/build-module/gallery/save.js.map +1 -1
  1096. package/build-module/gallery/shared-icon.native.js +3 -4
  1097. package/build-module/gallery/shared-icon.native.js.map +1 -1
  1098. package/build-module/gallery/shared.js +4 -10
  1099. package/build-module/gallery/shared.js.map +1 -1
  1100. package/build-module/gallery/transforms.js +103 -142
  1101. package/build-module/gallery/transforms.js.map +1 -1
  1102. package/build-module/gallery/use-get-media.native.js +8 -15
  1103. package/build-module/gallery/use-get-media.native.js.map +1 -1
  1104. package/build-module/gallery/use-get-new-images.js +2 -2
  1105. package/build-module/gallery/use-get-new-images.js.map +1 -1
  1106. package/build-module/gallery/use-image-sizes.js +11 -19
  1107. package/build-module/gallery/use-image-sizes.js.map +1 -1
  1108. package/build-module/gallery/utils.js +2 -2
  1109. package/build-module/gallery/utils.js.map +1 -1
  1110. package/build-module/gallery/v1/edit.js +30 -60
  1111. package/build-module/gallery/v1/edit.js.map +1 -1
  1112. package/build-module/gallery/v1/gallery.js +4 -5
  1113. package/build-module/gallery/v1/gallery.js.map +1 -1
  1114. package/build-module/gallery/v1/save.js +4 -5
  1115. package/build-module/gallery/v1/save.js.map +1 -1
  1116. package/build-module/gallery/v1/shared.js +4 -10
  1117. package/build-module/gallery/v1/shared.js.map +1 -1
  1118. package/build-module/group/deprecated.js +20 -28
  1119. package/build-module/group/deprecated.js.map +1 -1
  1120. package/build-module/group/edit.js +14 -18
  1121. package/build-module/group/edit.js.map +1 -1
  1122. package/build-module/group/edit.native.js +14 -18
  1123. package/build-module/group/edit.native.js.map +1 -1
  1124. package/build-module/group/index.js +1 -1
  1125. package/build-module/group/placeholder.js +16 -19
  1126. package/build-module/group/placeholder.js.map +1 -1
  1127. package/build-module/group/save.js +5 -6
  1128. package/build-module/group/save.js.map +1 -1
  1129. package/build-module/group/variations.js +5 -23
  1130. package/build-module/group/variations.js.map +1 -1
  1131. package/build-module/heading/deprecated.js +18 -26
  1132. package/build-module/heading/deprecated.js.map +1 -1
  1133. package/build-module/heading/edit.js +8 -9
  1134. package/build-module/heading/edit.js.map +1 -1
  1135. package/build-module/heading/heading-level-dropdown.js +4 -5
  1136. package/build-module/heading/heading-level-dropdown.js.map +1 -1
  1137. package/build-module/heading/heading-level-dropdown.native.js +4 -6
  1138. package/build-module/heading/heading-level-dropdown.native.js.map +1 -1
  1139. package/build-module/heading/heading-level-icon.js +4 -5
  1140. package/build-module/heading/heading-level-icon.js.map +1 -1
  1141. package/build-module/heading/index.js +4 -5
  1142. package/build-module/heading/index.js.map +1 -1
  1143. package/build-module/heading/save.js +3 -4
  1144. package/build-module/heading/save.js.map +1 -1
  1145. package/build-module/heading/transforms.js +21 -28
  1146. package/build-module/heading/transforms.js.map +1 -1
  1147. package/build-module/home-link/edit.js +10 -15
  1148. package/build-module/home-link/edit.js.map +1 -1
  1149. package/build-module/home-link/index.js +1 -1
  1150. package/build-module/html/edit.js +5 -6
  1151. package/build-module/html/edit.js.map +1 -1
  1152. package/build-module/html/index.js +1 -1
  1153. package/build-module/html/preview.js +5 -8
  1154. package/build-module/html/preview.js.map +1 -1
  1155. package/build-module/html/save.js +3 -4
  1156. package/build-module/html/save.js.map +1 -1
  1157. package/build-module/html/transforms.js +3 -4
  1158. package/build-module/html/transforms.js.map +1 -1
  1159. package/build-module/image/deprecated.js +15 -20
  1160. package/build-module/image/deprecated.js.map +1 -1
  1161. package/build-module/image/edit.js +16 -25
  1162. package/build-module/image/edit.js.map +1 -1
  1163. package/build-module/image/edit.native.js +40 -55
  1164. package/build-module/image/edit.native.js.map +1 -1
  1165. package/build-module/image/image.js +32 -50
  1166. package/build-module/image/image.js.map +1 -1
  1167. package/build-module/image/index.js +7 -9
  1168. package/build-module/image/index.js.map +1 -1
  1169. package/build-module/image/interactivity.js +24 -27
  1170. package/build-module/image/interactivity.js.map +1 -1
  1171. package/build-module/image/save.js +3 -4
  1172. package/build-module/image/save.js.map +1 -1
  1173. package/build-module/image/transforms.js +36 -46
  1174. package/build-module/image/transforms.js.map +1 -1
  1175. package/build-module/image/use-client-width.js +1 -3
  1176. package/build-module/image/use-client-width.js.map +1 -1
  1177. package/build-module/image/utils.js +4 -7
  1178. package/build-module/image/utils.js.map +1 -1
  1179. package/build-module/index.js +20 -44
  1180. package/build-module/index.js.map +1 -1
  1181. package/build-module/index.native.js +3 -6
  1182. package/build-module/index.native.js.map +1 -1
  1183. package/build-module/latest-comments/edit.js +5 -6
  1184. package/build-module/latest-comments/edit.js.map +1 -1
  1185. package/build-module/latest-comments/index.js +1 -1
  1186. package/build-module/latest-posts/deprecated.js +4 -7
  1187. package/build-module/latest-posts/deprecated.js.map +1 -1
  1188. package/build-module/latest-posts/edit.js +24 -34
  1189. package/build-module/latest-posts/edit.js.map +1 -1
  1190. package/build-module/latest-posts/edit.native.js +4 -5
  1191. package/build-module/latest-posts/edit.native.js.map +1 -1
  1192. package/build-module/latest-posts/index.js +1 -1
  1193. package/build-module/list/deprecated.js +10 -15
  1194. package/build-module/list/deprecated.js.map +1 -1
  1195. package/build-module/list/edit.js +9 -11
  1196. package/build-module/list/edit.js.map +1 -1
  1197. package/build-module/list/index.js +1 -1
  1198. package/build-module/list/ordered-list-settings.js +31 -34
  1199. package/build-module/list/ordered-list-settings.js.map +1 -1
  1200. package/build-module/list/save.js +3 -4
  1201. package/build-module/list/save.js.map +1 -1
  1202. package/build-module/list/transforms.js +11 -15
  1203. package/build-module/list/transforms.js.map +1 -1
  1204. package/build-module/list/utils.js +1 -1
  1205. package/build-module/list/utils.js.map +1 -1
  1206. package/build-module/list-item/edit.js +11 -17
  1207. package/build-module/list-item/edit.js.map +1 -1
  1208. package/build-module/list-item/edit.native.js +15 -23
  1209. package/build-module/list-item/edit.native.js.map +1 -1
  1210. package/build-module/list-item/hooks/use-enter.js +1 -3
  1211. package/build-module/list-item/hooks/use-enter.js.map +1 -1
  1212. package/build-module/list-item/hooks/use-enter.native.js +1 -3
  1213. package/build-module/list-item/hooks/use-enter.native.js.map +1 -1
  1214. package/build-module/list-item/hooks/use-indent-list-item.js +1 -3
  1215. package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -1
  1216. package/build-module/list-item/hooks/use-merge.js +1 -1
  1217. package/build-module/list-item/hooks/use-outdent-list-item.js +2 -4
  1218. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
  1219. package/build-module/list-item/index.js +1 -1
  1220. package/build-module/list-item/list-style-type.native.js +29 -34
  1221. package/build-module/list-item/list-style-type.native.js.map +1 -1
  1222. package/build-module/list-item/save.js +3 -4
  1223. package/build-module/list-item/save.js.map +1 -1
  1224. package/build-module/list-item/transforms.js +1 -4
  1225. package/build-module/list-item/transforms.js.map +1 -1
  1226. package/build-module/list-item/utils.js +4 -4
  1227. package/build-module/list-item/utils.js.map +1 -1
  1228. package/build-module/loginout/edit.js +4 -5
  1229. package/build-module/loginout/edit.js.map +1 -1
  1230. package/build-module/loginout/index.js +1 -1
  1231. package/build-module/media-text/deprecated.js +22 -31
  1232. package/build-module/media-text/deprecated.js.map +1 -1
  1233. package/build-module/media-text/edit.js +25 -39
  1234. package/build-module/media-text/edit.js.map +1 -1
  1235. package/build-module/media-text/edit.native.js +9 -13
  1236. package/build-module/media-text/edit.native.js.map +1 -1
  1237. package/build-module/media-text/index.js +1 -1
  1238. package/build-module/media-text/media-container.js +15 -18
  1239. package/build-module/media-text/media-container.js.map +1 -1
  1240. package/build-module/media-text/media-container.native.js +4 -5
  1241. package/build-module/media-text/media-container.native.js.map +1 -1
  1242. package/build-module/media-text/save.js +3 -4
  1243. package/build-module/media-text/save.js.map +1 -1
  1244. package/build-module/media-text/transforms.js +73 -91
  1245. package/build-module/media-text/transforms.js.map +1 -1
  1246. package/build-module/missing/edit.js +9 -11
  1247. package/build-module/missing/edit.js.map +1 -1
  1248. package/build-module/missing/edit.native.js +7 -8
  1249. package/build-module/missing/edit.native.js.map +1 -1
  1250. package/build-module/missing/index.js +4 -6
  1251. package/build-module/missing/index.js.map +1 -1
  1252. package/build-module/missing/save.js +3 -4
  1253. package/build-module/missing/save.js.map +1 -1
  1254. package/build-module/more/edit.js +11 -15
  1255. package/build-module/more/edit.js.map +1 -1
  1256. package/build-module/more/edit.native.js +3 -8
  1257. package/build-module/more/edit.native.js.map +1 -1
  1258. package/build-module/more/index.js +4 -6
  1259. package/build-module/more/index.js.map +1 -1
  1260. package/build-module/more/save.js +6 -7
  1261. package/build-module/more/save.js.map +1 -1
  1262. package/build-module/navigation/deprecated.js +16 -27
  1263. package/build-module/navigation/deprecated.js.map +1 -1
  1264. package/build-module/navigation/edit/are-blocks-dirty.js +1 -1
  1265. package/build-module/navigation/edit/are-blocks-dirty.js.map +1 -1
  1266. package/build-module/navigation/edit/deleted-navigation-warning.js +3 -4
  1267. package/build-module/navigation/edit/deleted-navigation-warning.js.map +1 -1
  1268. package/build-module/navigation/edit/index.js +33 -40
  1269. package/build-module/navigation/edit/index.js.map +1 -1
  1270. package/build-module/navigation/edit/inner-blocks.js +10 -14
  1271. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  1272. package/build-module/navigation/edit/leaf-more-menu.js +34 -38
  1273. package/build-module/navigation/edit/leaf-more-menu.js.map +1 -1
  1274. package/build-module/navigation/edit/manage-menus-button.js +5 -6
  1275. package/build-module/navigation/edit/manage-menus-button.js.map +1 -1
  1276. package/build-module/navigation/edit/menu-inspector-controls.js +46 -42
  1277. package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
  1278. package/build-module/navigation/edit/navigation-menu-delete-control.js +3 -4
  1279. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  1280. package/build-module/navigation/edit/navigation-menu-selector.js +50 -56
  1281. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  1282. package/build-module/navigation/edit/overlay-menu-icon.js +3 -5
  1283. package/build-module/navigation/edit/overlay-menu-icon.js.map +1 -1
  1284. package/build-module/navigation/edit/overlay-menu-preview.js +5 -6
  1285. package/build-module/navigation/edit/overlay-menu-preview.js.map +1 -1
  1286. package/build-module/navigation/edit/placeholder/index.js +10 -11
  1287. package/build-module/navigation/edit/placeholder/index.js.map +1 -1
  1288. package/build-module/navigation/edit/placeholder/placeholder-preview.js +3 -4
  1289. package/build-module/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
  1290. package/build-module/navigation/edit/responsive-wrapper.js +18 -20
  1291. package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
  1292. package/build-module/navigation/edit/unsaved-inner-blocks.js +10 -14
  1293. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  1294. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +2 -3
  1295. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  1296. package/build-module/navigation/edit/use-create-navigation-menu.js +3 -7
  1297. package/build-module/navigation/edit/use-create-navigation-menu.js.map +1 -1
  1298. package/build-module/navigation/edit/use-generate-default-navigation-title.js +1 -5
  1299. package/build-module/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
  1300. package/build-module/navigation/edit/use-inner-blocks.js +1 -1
  1301. package/build-module/navigation/edit/use-inner-blocks.js.map +1 -1
  1302. package/build-module/navigation/edit/use-navigation-notice.js +4 -5
  1303. package/build-module/navigation/edit/use-navigation-notice.js.map +1 -1
  1304. package/build-module/navigation/edit/utils.js +2 -4
  1305. package/build-module/navigation/edit/utils.js.map +1 -1
  1306. package/build-module/navigation/index.js +2 -2
  1307. package/build-module/navigation/interactivity.js +97 -87
  1308. package/build-module/navigation/interactivity.js.map +1 -1
  1309. package/build-module/navigation/menu-items-to-blocks.js +25 -34
  1310. package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
  1311. package/build-module/navigation/save.js +3 -5
  1312. package/build-module/navigation/save.js.map +1 -1
  1313. package/build-module/navigation/use-navigation-entities.js +2 -2
  1314. package/build-module/navigation/use-navigation-entities.js.map +1 -1
  1315. package/build-module/navigation/use-navigation-menu.js +1 -1
  1316. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  1317. package/build-module/navigation/use-template-part-area-label.js +3 -5
  1318. package/build-module/navigation/use-template-part-area-label.js.map +1 -1
  1319. package/build-module/navigation-link/edit.js +15 -22
  1320. package/build-module/navigation-link/edit.js.map +1 -1
  1321. package/build-module/navigation-link/hooks.js +2 -2
  1322. package/build-module/navigation-link/hooks.js.map +1 -1
  1323. package/build-module/navigation-link/index.js +11 -16
  1324. package/build-module/navigation-link/index.js.map +1 -1
  1325. package/build-module/navigation-link/link-ui.js +10 -9
  1326. package/build-module/navigation-link/link-ui.js.map +1 -1
  1327. package/build-module/navigation-link/update-attributes.js +1 -4
  1328. package/build-module/navigation-link/update-attributes.js.map +1 -1
  1329. package/build-module/navigation-submenu/edit.js +13 -16
  1330. package/build-module/navigation-submenu/edit.js.map +1 -1
  1331. package/build-module/navigation-submenu/index.js +7 -12
  1332. package/build-module/navigation-submenu/index.js.map +1 -1
  1333. package/build-module/navigation-submenu/transforms.js +6 -30
  1334. package/build-module/navigation-submenu/transforms.js.map +1 -1
  1335. package/build-module/nextpage/edit.native.js +8 -9
  1336. package/build-module/nextpage/edit.native.js.map +1 -1
  1337. package/build-module/nextpage/index.js +1 -1
  1338. package/build-module/page-list/convert-to-links-modal.js +5 -6
  1339. package/build-module/page-list/convert-to-links-modal.js.map +1 -1
  1340. package/build-module/page-list/edit.js +23 -35
  1341. package/build-module/page-list/edit.js.map +1 -1
  1342. package/build-module/page-list/index.js +1 -1
  1343. package/build-module/page-list/use-convert-to-navigation-links.js +16 -21
  1344. package/build-module/page-list/use-convert-to-navigation-links.js.map +1 -1
  1345. package/build-module/page-list-item/edit.js +5 -6
  1346. package/build-module/page-list-item/edit.js.map +1 -1
  1347. package/build-module/page-list-item/index.js +4 -7
  1348. package/build-module/page-list-item/index.js.map +1 -1
  1349. package/build-module/paragraph/deprecated.js +18 -24
  1350. package/build-module/paragraph/deprecated.js.map +1 -1
  1351. package/build-module/paragraph/edit.js +12 -14
  1352. package/build-module/paragraph/edit.js.map +1 -1
  1353. package/build-module/paragraph/edit.native.js +13 -16
  1354. package/build-module/paragraph/edit.native.js.map +1 -1
  1355. package/build-module/paragraph/index.js +4 -6
  1356. package/build-module/paragraph/index.js.map +1 -1
  1357. package/build-module/paragraph/save.js +3 -4
  1358. package/build-module/paragraph/save.js.map +1 -1
  1359. package/build-module/paragraph/transforms.js +10 -13
  1360. package/build-module/paragraph/transforms.js.map +1 -1
  1361. package/build-module/pattern/edit.js +8 -11
  1362. package/build-module/pattern/edit.js.map +1 -1
  1363. package/build-module/pattern/index.js +2 -4
  1364. package/build-module/pattern/index.js.map +1 -1
  1365. package/build-module/pattern/v1/edit.js +6 -7
  1366. package/build-module/pattern/v1/edit.js.map +1 -1
  1367. package/build-module/post-author/edit.js +19 -23
  1368. package/build-module/post-author/edit.js.map +1 -1
  1369. package/build-module/post-author/index.js +1 -1
  1370. package/build-module/post-author-biography/edit.js +12 -15
  1371. package/build-module/post-author-biography/edit.js.map +1 -1
  1372. package/build-module/post-author-biography/index.js +1 -1
  1373. package/build-module/post-author-name/edit.js +14 -17
  1374. package/build-module/post-author-name/edit.js.map +1 -1
  1375. package/build-module/post-author-name/index.js +1 -1
  1376. package/build-module/post-author-name/transforms.js +10 -16
  1377. package/build-module/post-author-name/transforms.js.map +1 -1
  1378. package/build-module/post-comment/edit.js +6 -7
  1379. package/build-module/post-comment/edit.js.map +1 -1
  1380. package/build-module/post-comment/index.js +1 -1
  1381. package/build-module/post-comments-count/edit.js +6 -9
  1382. package/build-module/post-comments-count/edit.js.map +1 -1
  1383. package/build-module/post-comments-count/index.js +1 -1
  1384. package/build-module/post-comments-form/edit.js +5 -6
  1385. package/build-module/post-comments-form/edit.js.map +1 -1
  1386. package/build-module/post-comments-form/form.js +5 -10
  1387. package/build-module/post-comments-form/form.js.map +1 -1
  1388. package/build-module/post-comments-form/index.js +1 -1
  1389. package/build-module/post-comments-link/edit.js +5 -6
  1390. package/build-module/post-comments-link/edit.js.map +1 -1
  1391. package/build-module/post-comments-link/index.js +1 -1
  1392. package/build-module/post-content/edit.js +27 -24
  1393. package/build-module/post-content/edit.js.map +1 -1
  1394. package/build-module/post-content/index.js +1 -1
  1395. package/build-module/post-date/deprecated.js +4 -7
  1396. package/build-module/post-date/deprecated.js.map +1 -1
  1397. package/build-module/post-date/edit.js +27 -33
  1398. package/build-module/post-date/edit.js.map +1 -1
  1399. package/build-module/post-date/index.js +1 -1
  1400. package/build-module/post-excerpt/edit.js +21 -24
  1401. package/build-module/post-excerpt/edit.js.map +1 -1
  1402. package/build-module/post-excerpt/index.js +3 -3
  1403. package/build-module/post-featured-image/dimension-controls.js +12 -13
  1404. package/build-module/post-featured-image/dimension-controls.js.map +1 -1
  1405. package/build-module/post-featured-image/edit.js +27 -37
  1406. package/build-module/post-featured-image/edit.js.map +1 -1
  1407. package/build-module/post-featured-image/index.js +1 -1
  1408. package/build-module/post-featured-image/overlay.js +7 -8
  1409. package/build-module/post-featured-image/overlay.js.map +1 -1
  1410. package/build-module/post-navigation-link/edit.js +11 -12
  1411. package/build-module/post-navigation-link/edit.js.map +1 -1
  1412. package/build-module/post-navigation-link/index.js +1 -1
  1413. package/build-module/post-template/edit.js +99 -86
  1414. package/build-module/post-template/edit.js.map +1 -1
  1415. package/build-module/post-template/index.js +10 -4
  1416. package/build-module/post-template/index.js.map +1 -1
  1417. package/build-module/post-terms/edit.js +10 -15
  1418. package/build-module/post-terms/edit.js.map +1 -1
  1419. package/build-module/post-terms/index.js +1 -1
  1420. package/build-module/post-terms/use-post-terms.js +7 -12
  1421. package/build-module/post-terms/use-post-terms.js.map +1 -1
  1422. package/build-module/post-time-to-read/edit.js +5 -6
  1423. package/build-module/post-time-to-read/edit.js.map +1 -1
  1424. package/build-module/post-time-to-read/index.js +1 -1
  1425. package/build-module/post-title/deprecated.js +4 -7
  1426. package/build-module/post-title/deprecated.js.map +1 -1
  1427. package/build-module/post-title/edit.js +26 -22
  1428. package/build-module/post-title/edit.js.map +1 -1
  1429. package/build-module/post-title/index.js +2 -2
  1430. package/build-module/preformatted/edit.js +7 -8
  1431. package/build-module/preformatted/edit.js.map +1 -1
  1432. package/build-module/preformatted/edit.native.js +5 -7
  1433. package/build-module/preformatted/edit.native.js.map +1 -1
  1434. package/build-module/preformatted/index.js +1 -1
  1435. package/build-module/preformatted/save.js +3 -4
  1436. package/build-module/preformatted/save.js.map +1 -1
  1437. package/build-module/preformatted/transforms.js +14 -20
  1438. package/build-module/preformatted/transforms.js.map +1 -1
  1439. package/build-module/pullquote/deprecated.js +61 -73
  1440. package/build-module/pullquote/deprecated.js.map +1 -1
  1441. package/build-module/pullquote/edit.js +6 -7
  1442. package/build-module/pullquote/edit.js.map +1 -1
  1443. package/build-module/pullquote/edit.native.js +13 -21
  1444. package/build-module/pullquote/edit.native.js.map +1 -1
  1445. package/build-module/pullquote/figure.native.js +5 -6
  1446. package/build-module/pullquote/figure.native.js.map +1 -1
  1447. package/build-module/pullquote/index.js +1 -1
  1448. package/build-module/pullquote/save.js +3 -4
  1449. package/build-module/pullquote/save.js.map +1 -1
  1450. package/build-module/pullquote/transforms.js +17 -24
  1451. package/build-module/pullquote/transforms.js.map +1 -1
  1452. package/build-module/query/deprecated.js +195 -76
  1453. package/build-module/query/deprecated.js.map +1 -1
  1454. package/build-module/query/edit/inspector-controls/author-control.js +5 -8
  1455. package/build-module/query/edit/inspector-controls/author-control.js.map +1 -1
  1456. package/build-module/query/edit/inspector-controls/create-new-post-link.js +6 -7
  1457. package/build-module/query/edit/inspector-controls/create-new-post-link.js.map +1 -1
  1458. package/build-module/query/edit/inspector-controls/index.js +4 -6
  1459. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  1460. package/build-module/query/edit/inspector-controls/order-control.js +5 -6
  1461. package/build-module/query/edit/inspector-controls/order-control.js.map +1 -1
  1462. package/build-module/query/edit/inspector-controls/parent-control.js +10 -13
  1463. package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -1
  1464. package/build-module/query/edit/inspector-controls/sticky-control.js +4 -5
  1465. package/build-module/query/edit/inspector-controls/sticky-control.js.map +1 -1
  1466. package/build-module/query/edit/inspector-controls/taxonomy-controls.js +15 -19
  1467. package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  1468. package/build-module/query/edit/pattern-selection-modal.js +5 -6
  1469. package/build-module/query/edit/pattern-selection-modal.js.map +1 -1
  1470. package/build-module/query/edit/query-content.js +7 -9
  1471. package/build-module/query/edit/query-content.js.map +1 -1
  1472. package/build-module/query/edit/query-placeholder.js +16 -20
  1473. package/build-module/query/edit/query-placeholder.js.map +1 -1
  1474. package/build-module/query/edit/query-toolbar.js +18 -42
  1475. package/build-module/query/edit/query-toolbar.js.map +1 -1
  1476. package/build-module/query/index.js +1 -7
  1477. package/build-module/query/index.js.map +1 -1
  1478. package/build-module/query/save.js +5 -6
  1479. package/build-module/query/save.js.map +1 -1
  1480. package/build-module/query/utils.js +24 -60
  1481. package/build-module/query/utils.js.map +1 -1
  1482. package/build-module/query-no-results/index.js +1 -1
  1483. package/build-module/query-pagination/edit.js +28 -11
  1484. package/build-module/query-pagination/edit.js.map +1 -1
  1485. package/build-module/query-pagination/index.js +7 -2
  1486. package/build-module/query-pagination/index.js.map +1 -1
  1487. package/build-module/query-pagination/query-pagination-arrow-controls.js +4 -5
  1488. package/build-module/query-pagination/query-pagination-arrow-controls.js.map +1 -1
  1489. package/build-module/query-pagination/query-pagination-label-control.js +20 -0
  1490. package/build-module/query-pagination/query-pagination-label-control.js.map +1 -0
  1491. package/build-module/query-pagination-next/edit.js +11 -11
  1492. package/build-module/query-pagination-next/edit.js.map +1 -1
  1493. package/build-module/query-pagination-next/index.js +2 -2
  1494. package/build-module/query-pagination-numbers/edit.js +3 -7
  1495. package/build-module/query-pagination-numbers/edit.js.map +1 -1
  1496. package/build-module/query-pagination-numbers/index.js +1 -1
  1497. package/build-module/query-pagination-previous/edit.js +11 -11
  1498. package/build-module/query-pagination-previous/edit.js.map +1 -1
  1499. package/build-module/query-pagination-previous/index.js +2 -2
  1500. package/build-module/query-title/deprecated.js +4 -7
  1501. package/build-module/query-title/deprecated.js.map +1 -1
  1502. package/build-module/query-title/edit.js +10 -11
  1503. package/build-module/query-title/edit.js.map +1 -1
  1504. package/build-module/query-title/index.js +1 -1
  1505. package/build-module/quote/deprecated.js +17 -24
  1506. package/build-module/quote/deprecated.js.map +1 -1
  1507. package/build-module/quote/edit.js +8 -9
  1508. package/build-module/quote/edit.js.map +1 -1
  1509. package/build-module/quote/index.js +1 -1
  1510. package/build-module/quote/save.js +3 -4
  1511. package/build-module/quote/save.js.map +1 -1
  1512. package/build-module/quote/transforms.js +37 -57
  1513. package/build-module/quote/transforms.js.map +1 -1
  1514. package/build-module/read-more/edit.js +8 -9
  1515. package/build-module/read-more/edit.js.map +1 -1
  1516. package/build-module/read-more/index.js +1 -1
  1517. package/build-module/rss/edit.js +4 -5
  1518. package/build-module/rss/edit.js.map +1 -1
  1519. package/build-module/rss/index.js +1 -1
  1520. package/build-module/search/edit.js +74 -32
  1521. package/build-module/search/edit.js.map +1 -1
  1522. package/build-module/search/edit.native.js +28 -37
  1523. package/build-module/search/edit.native.js.map +1 -1
  1524. package/build-module/search/index.js +9 -1
  1525. package/build-module/search/index.js.map +1 -1
  1526. package/build-module/search/view.js +65 -0
  1527. package/build-module/search/view.js.map +1 -0
  1528. package/build-module/separator/deprecated.js +3 -4
  1529. package/build-module/separator/deprecated.js.map +1 -1
  1530. package/build-module/separator/edit.js +6 -9
  1531. package/build-module/separator/edit.js.map +1 -1
  1532. package/build-module/separator/index.js +1 -1
  1533. package/build-module/separator/save.js +5 -8
  1534. package/build-module/separator/save.js.map +1 -1
  1535. package/build-module/shortcode/edit.js +4 -5
  1536. package/build-module/shortcode/edit.js.map +1 -1
  1537. package/build-module/shortcode/index.js +2 -2
  1538. package/build-module/shortcode/save.js +3 -4
  1539. package/build-module/shortcode/save.js.map +1 -1
  1540. package/build-module/shortcode/transforms.js +3 -4
  1541. package/build-module/shortcode/transforms.js.map +1 -1
  1542. package/build-module/site-logo/edit.js +58 -74
  1543. package/build-module/site-logo/edit.js.map +1 -1
  1544. package/build-module/site-logo/index.js +1 -1
  1545. package/build-module/site-logo/transforms.js +4 -5
  1546. package/build-module/site-logo/transforms.js.map +1 -1
  1547. package/build-module/site-tagline/deprecated.js +4 -7
  1548. package/build-module/site-tagline/deprecated.js.map +1 -1
  1549. package/build-module/site-tagline/edit.js +6 -7
  1550. package/build-module/site-tagline/edit.js.map +1 -1
  1551. package/build-module/site-tagline/index.js +1 -1
  1552. package/build-module/site-title/deprecated.js +4 -7
  1553. package/build-module/site-title/deprecated.js.map +1 -1
  1554. package/build-module/site-title/edit/index.js +6 -7
  1555. package/build-module/site-title/edit/index.js.map +1 -1
  1556. package/build-module/site-title/edit/level-icon.js +4 -5
  1557. package/build-module/site-title/edit/level-icon.js.map +1 -1
  1558. package/build-module/site-title/edit/level-toolbar.js +4 -5
  1559. package/build-module/site-title/edit/level-toolbar.js.map +1 -1
  1560. package/build-module/site-title/index.js +1 -1
  1561. package/build-module/site-title/transforms.js +4 -5
  1562. package/build-module/site-title/transforms.js.map +1 -1
  1563. package/build-module/social-link/edit.js +19 -17
  1564. package/build-module/social-link/edit.js.map +1 -1
  1565. package/build-module/social-link/edit.native.js +11 -13
  1566. package/build-module/social-link/edit.native.js.map +1 -1
  1567. package/build-module/social-link/index.js +2 -2
  1568. package/build-module/social-links/deprecated.js +2 -4
  1569. package/build-module/social-links/deprecated.js.map +1 -1
  1570. package/build-module/social-links/edit.js +36 -42
  1571. package/build-module/social-links/edit.js.map +1 -1
  1572. package/build-module/social-links/edit.native.js +18 -25
  1573. package/build-module/social-links/edit.native.js.map +1 -1
  1574. package/build-module/social-links/index.js +3 -1
  1575. package/build-module/social-links/index.js.map +1 -1
  1576. package/build-module/spacer/controls.js +18 -21
  1577. package/build-module/spacer/controls.js.map +1 -1
  1578. package/build-module/spacer/controls.native.js +7 -8
  1579. package/build-module/spacer/controls.native.js.map +1 -1
  1580. package/build-module/spacer/deprecated.js +3 -4
  1581. package/build-module/spacer/deprecated.js.map +1 -1
  1582. package/build-module/spacer/edit.js +20 -23
  1583. package/build-module/spacer/edit.js.map +1 -1
  1584. package/build-module/spacer/edit.native.js +7 -8
  1585. package/build-module/spacer/edit.native.js.map +1 -1
  1586. package/build-module/spacer/index.js +1 -1
  1587. package/build-module/spacer/save.js +6 -7
  1588. package/build-module/spacer/save.js.map +1 -1
  1589. package/build-module/spacer/save.native.js +6 -7
  1590. package/build-module/spacer/save.native.js.map +1 -1
  1591. package/build-module/table/deprecated.js +79 -102
  1592. package/build-module/table/deprecated.js.map +1 -1
  1593. package/build-module/table/edit.js +45 -59
  1594. package/build-module/table/edit.js.map +1 -1
  1595. package/build-module/table/index.js +1 -1
  1596. package/build-module/table/save.js +33 -40
  1597. package/build-module/table/save.js.map +1 -1
  1598. package/build-module/table/state.js +32 -59
  1599. package/build-module/table/state.js.map +1 -1
  1600. package/build-module/table/transforms.js +17 -20
  1601. package/build-module/table/transforms.js.map +1 -1
  1602. package/build-module/table-of-contents/edit.js +9 -10
  1603. package/build-module/table-of-contents/edit.js.map +1 -1
  1604. package/build-module/table-of-contents/index.js +1 -1
  1605. package/build-module/table-of-contents/list.js +3 -4
  1606. package/build-module/table-of-contents/list.js.map +1 -1
  1607. package/build-module/table-of-contents/save.js +5 -7
  1608. package/build-module/table-of-contents/save.js.map +1 -1
  1609. package/build-module/table-of-contents/utils.js +1 -3
  1610. package/build-module/table-of-contents/utils.js.map +1 -1
  1611. package/build-module/tag-cloud/edit.js +6 -8
  1612. package/build-module/tag-cloud/edit.js.map +1 -1
  1613. package/build-module/tag-cloud/index.js +1 -1
  1614. package/build-module/template-part/edit/advanced-controls.js +15 -19
  1615. package/build-module/template-part/edit/advanced-controls.js.map +1 -1
  1616. package/build-module/template-part/edit/import-controls.js +7 -11
  1617. package/build-module/template-part/edit/import-controls.js.map +1 -1
  1618. package/build-module/template-part/edit/index.js +7 -8
  1619. package/build-module/template-part/edit/index.js.map +1 -1
  1620. package/build-module/template-part/edit/inner-blocks.js +8 -11
  1621. package/build-module/template-part/edit/inner-blocks.js.map +1 -1
  1622. package/build-module/template-part/edit/placeholder.js +7 -8
  1623. package/build-module/template-part/edit/placeholder.js.map +1 -1
  1624. package/build-module/template-part/edit/selection-modal.js +8 -11
  1625. package/build-module/template-part/edit/selection-modal.js.map +1 -1
  1626. package/build-module/template-part/edit/title-modal.js +5 -6
  1627. package/build-module/template-part/edit/title-modal.js.map +1 -1
  1628. package/build-module/template-part/edit/utils/hooks.js +4 -6
  1629. package/build-module/template-part/edit/utils/hooks.js.map +1 -1
  1630. package/build-module/template-part/edit/utils/transformers.js +3 -6
  1631. package/build-module/template-part/edit/utils/transformers.js.map +1 -1
  1632. package/build-module/template-part/index.js +11 -19
  1633. package/build-module/template-part/index.js.map +1 -1
  1634. package/build-module/template-part/variations.js +2 -2
  1635. package/build-module/template-part/variations.js.map +1 -1
  1636. package/build-module/term-description/edit.js +5 -6
  1637. package/build-module/term-description/edit.js.map +1 -1
  1638. package/build-module/term-description/index.js +1 -1
  1639. package/build-module/text-columns/edit.js +5 -8
  1640. package/build-module/text-columns/edit.js.map +1 -1
  1641. package/build-module/text-columns/index.js +1 -1
  1642. package/build-module/text-columns/save.js +10 -15
  1643. package/build-module/text-columns/save.js.map +1 -1
  1644. package/build-module/text-columns/transforms.js +14 -20
  1645. package/build-module/text-columns/transforms.js.map +1 -1
  1646. package/build-module/utils/init-block.native.js +1 -3
  1647. package/build-module/utils/init-block.native.js.map +1 -1
  1648. package/build-module/utils/interactivity/constants.js +1 -1
  1649. package/build-module/utils/interactivity/constants.js.map +1 -1
  1650. package/build-module/utils/interactivity/directives.js +70 -81
  1651. package/build-module/utils/interactivity/directives.js.map +1 -1
  1652. package/build-module/utils/interactivity/hooks.js +29 -46
  1653. package/build-module/utils/interactivity/hooks.js.map +1 -1
  1654. package/build-module/utils/interactivity/hydration.js +1 -1
  1655. package/build-module/utils/interactivity/hydration.js.map +1 -1
  1656. package/build-module/utils/interactivity/store.js +4 -5
  1657. package/build-module/utils/interactivity/store.js.map +1 -1
  1658. package/build-module/utils/interactivity/vdom.js +14 -4
  1659. package/build-module/utils/interactivity/vdom.js.map +1 -1
  1660. package/build-module/utils/migrate-font-family.js +1 -3
  1661. package/build-module/utils/migrate-font-family.js.map +1 -1
  1662. package/build-module/utils/search-patterns.js +5 -19
  1663. package/build-module/utils/search-patterns.js.map +1 -1
  1664. package/build-module/utils/transformation-categories.native.js +1 -4
  1665. package/build-module/utils/transformation-categories.native.js.map +1 -1
  1666. package/build-module/verse/deprecated.js +10 -15
  1667. package/build-module/verse/deprecated.js.map +1 -1
  1668. package/build-module/verse/edit.js +7 -8
  1669. package/build-module/verse/edit.js.map +1 -1
  1670. package/build-module/verse/index.js +1 -1
  1671. package/build-module/verse/save.js +3 -4
  1672. package/build-module/verse/save.js.map +1 -1
  1673. package/build-module/video/deprecated.js +4 -5
  1674. package/build-module/video/deprecated.js.map +1 -1
  1675. package/build-module/video/edit-common-settings.js +4 -5
  1676. package/build-module/video/edit-common-settings.js.map +1 -1
  1677. package/build-module/video/edit.js +18 -27
  1678. package/build-module/video/edit.js.map +1 -1
  1679. package/build-module/video/edit.native.js +18 -24
  1680. package/build-module/video/edit.native.js.map +1 -1
  1681. package/build-module/video/index.js +1 -1
  1682. package/build-module/video/save.js +3 -4
  1683. package/build-module/video/save.js.map +1 -1
  1684. package/build-module/video/tracks-editor.js +39 -51
  1685. package/build-module/video/tracks-editor.js.map +1 -1
  1686. package/build-module/video/tracks.js +3 -4
  1687. package/build-module/video/tracks.js.map +1 -1
  1688. package/build-module/video/transforms.js +30 -35
  1689. package/build-module/video/transforms.js.map +1 -1
  1690. package/build-style/editor-rtl.css +8 -8
  1691. package/build-style/editor.css +8 -8
  1692. package/build-style/image/style-rtl.css +17 -7
  1693. package/build-style/image/style.css +17 -7
  1694. package/build-style/navigation/editor-rtl.css +8 -8
  1695. package/build-style/navigation/editor.css +8 -8
  1696. package/build-style/post-template/style-rtl.css +6 -0
  1697. package/build-style/post-template/style.css +6 -0
  1698. package/build-style/search/style-rtl.css +30 -0
  1699. package/build-style/search/style.css +30 -0
  1700. package/build-style/social-links/style-rtl.css +4 -0
  1701. package/build-style/social-links/style.css +4 -0
  1702. package/build-style/style-rtl.css +66 -7
  1703. package/build-style/style.css +66 -7
  1704. package/build-style/term-description/style-rtl.css +97 -0
  1705. package/build-style/term-description/style.css +97 -0
  1706. package/package.json +31 -31
  1707. package/src/archives/block.json +1 -1
  1708. package/src/audio/block.json +1 -1
  1709. package/src/avatar/block.json +1 -1
  1710. package/src/block/block.json +1 -1
  1711. package/src/button/block.json +1 -1
  1712. package/src/buttons/block.json +1 -1
  1713. package/src/calendar/block.json +1 -1
  1714. package/src/categories/block.json +1 -1
  1715. package/src/code/block.json +1 -1
  1716. package/src/column/block.json +1 -1
  1717. package/src/columns/block.json +1 -1
  1718. package/src/columns/test/__snapshots__/edit.native.js.snap +72 -0
  1719. package/src/columns/test/edit.native.js +25 -0
  1720. package/src/comment-author-avatar/block.json +1 -1
  1721. package/src/comment-author-name/block.json +1 -1
  1722. package/src/comment-content/block.json +1 -1
  1723. package/src/comment-date/block.json +1 -1
  1724. package/src/comment-edit-link/block.json +1 -1
  1725. package/src/comment-reply-link/block.json +1 -1
  1726. package/src/comment-template/block.json +1 -1
  1727. package/src/comment-template/index.php +13 -1
  1728. package/src/comments/block.json +1 -1
  1729. package/src/comments/deprecated.js +1 -1
  1730. package/src/comments-pagination/block.json +1 -1
  1731. package/src/comments-pagination-next/block.json +1 -1
  1732. package/src/comments-pagination-next/index.php +1 -1
  1733. package/src/comments-pagination-numbers/block.json +1 -1
  1734. package/src/comments-pagination-previous/block.json +1 -1
  1735. package/src/comments-pagination-previous/index.php +1 -1
  1736. package/src/comments-title/block.json +1 -1
  1737. package/src/cover/block.json +1 -1
  1738. package/src/details/block.json +1 -2
  1739. package/src/embed/block.json +1 -1
  1740. package/src/file/block.json +2 -2
  1741. package/src/file/index.php +30 -7
  1742. package/src/freeform/block.json +2 -2
  1743. package/src/gallery/block.json +1 -1
  1744. package/src/gallery/v1/save.js +1 -1
  1745. package/src/group/block.json +1 -1
  1746. package/src/heading/block.json +1 -1
  1747. package/src/home-link/block.json +1 -1
  1748. package/src/html/block.json +1 -1
  1749. package/src/image/block.json +4 -4
  1750. package/src/image/index.php +0 -72
  1751. package/src/image/interactivity.js +5 -0
  1752. package/src/image/style.scss +19 -7
  1753. package/src/index.js +1 -3
  1754. package/src/latest-comments/block.json +1 -1
  1755. package/src/latest-posts/block.json +1 -1
  1756. package/src/list/block.json +1 -1
  1757. package/src/list-item/block.json +1 -1
  1758. package/src/loginout/block.json +1 -1
  1759. package/src/media-text/block.json +1 -1
  1760. package/src/missing/block.json +1 -1
  1761. package/src/more/block.json +1 -1
  1762. package/src/more/edit.native.js +8 -15
  1763. package/src/navigation/block.json +2 -2
  1764. package/src/navigation/edit/menu-inspector-controls.js +43 -50
  1765. package/src/navigation/editor.scss +14 -12
  1766. package/src/navigation/index.php +169 -33
  1767. package/src/navigation/interactivity.js +75 -57
  1768. package/src/navigation-link/block.json +1 -1
  1769. package/src/navigation-link/edit.js +1 -9
  1770. package/src/navigation-link/hooks.js +2 -2
  1771. package/src/navigation-link/link-ui.js +12 -6
  1772. package/src/navigation-link/test/__snapshots__/hooks.js.snap +2 -2
  1773. package/src/navigation-submenu/block.json +1 -1
  1774. package/src/nextpage/block.json +1 -1
  1775. package/src/nextpage/edit.native.js +2 -2
  1776. package/src/page-list/block.json +1 -1
  1777. package/src/page-list-item/block.json +1 -1
  1778. package/src/page-list-item/index.php +14 -0
  1779. package/src/paragraph/block.json +1 -1
  1780. package/src/pattern/block.json +1 -1
  1781. package/src/post-author/block.json +1 -1
  1782. package/src/post-author-biography/block.json +1 -1
  1783. package/src/post-author-name/block.json +1 -1
  1784. package/src/post-comment/block.json +1 -1
  1785. package/src/post-comments-count/block.json +1 -1
  1786. package/src/post-comments-form/block.json +1 -1
  1787. package/src/post-comments-link/block.json +1 -1
  1788. package/src/post-content/block.json +1 -1
  1789. package/src/post-content/edit.js +22 -2
  1790. package/src/post-date/block.json +1 -1
  1791. package/src/post-excerpt/block.json +3 -3
  1792. package/src/post-excerpt/edit.js +5 -14
  1793. package/src/post-excerpt/index.php +2 -2
  1794. package/src/post-featured-image/block.json +1 -1
  1795. package/src/post-navigation-link/block.json +1 -1
  1796. package/src/post-template/block.json +10 -4
  1797. package/src/post-template/edit.js +66 -32
  1798. package/src/post-template/index.php +10 -9
  1799. package/src/post-template/style.scss +8 -1
  1800. package/src/post-terms/block.json +1 -1
  1801. package/src/post-time-to-read/block.json +1 -1
  1802. package/src/post-title/block.json +2 -2
  1803. package/src/post-title/edit.js +22 -17
  1804. package/src/preformatted/block.json +1 -1
  1805. package/src/pullquote/block.json +1 -1
  1806. package/src/query/block.json +1 -7
  1807. package/src/query/deprecated.js +167 -22
  1808. package/src/query/edit/inspector-controls/index.js +4 -2
  1809. package/src/query/edit/query-content.js +0 -1
  1810. package/src/query/edit/query-toolbar.js +3 -22
  1811. package/src/query-no-results/block.json +1 -1
  1812. package/src/query-pagination/block.json +7 -2
  1813. package/src/query-pagination/edit.js +18 -2
  1814. package/src/query-pagination/query-pagination-label-control.js +19 -0
  1815. package/src/query-pagination-next/block.json +2 -2
  1816. package/src/query-pagination-next/edit.js +13 -11
  1817. package/src/query-pagination-next/index.php +7 -2
  1818. package/src/query-pagination-numbers/block.json +1 -1
  1819. package/src/query-pagination-previous/block.json +2 -2
  1820. package/src/query-pagination-previous/edit.js +13 -11
  1821. package/src/query-pagination-previous/index.php +7 -2
  1822. package/src/query-title/block.json +1 -1
  1823. package/src/quote/block.json +1 -1
  1824. package/src/read-more/block.json +1 -1
  1825. package/src/rss/block.json +1 -1
  1826. package/src/search/block.json +9 -1
  1827. package/src/search/edit.js +61 -3
  1828. package/src/search/index.php +50 -51
  1829. package/src/search/style.scss +39 -0
  1830. package/src/search/view.js +68 -0
  1831. package/src/separator/block.json +1 -1
  1832. package/src/shortcode/block.json +2 -2
  1833. package/src/site-logo/block.json +1 -1
  1834. package/src/site-logo/index.php +1 -1
  1835. package/src/site-tagline/block.json +1 -1
  1836. package/src/site-title/block.json +1 -1
  1837. package/src/social-link/block.json +3 -1
  1838. package/src/social-link/edit.js +10 -1
  1839. package/src/social-link/index.php +22 -1
  1840. package/src/social-links/block.json +3 -1
  1841. package/src/social-links/style.scss +10 -0
  1842. package/src/spacer/block.json +1 -1
  1843. package/src/spacer/controls.js +1 -0
  1844. package/src/style.scss +1 -0
  1845. package/src/table/block.json +1 -1
  1846. package/src/table-of-contents/block.json +1 -1
  1847. package/src/tag-cloud/block.json +1 -1
  1848. package/src/template-part/block.json +1 -1
  1849. package/src/term-description/block.json +1 -1
  1850. package/src/term-description/style.scss +11 -0
  1851. package/src/text-columns/block.json +1 -1
  1852. package/src/utils/interactivity/constants.js +1 -1
  1853. package/src/utils/interactivity/directives.js +5 -5
  1854. package/src/utils/interactivity/hydration.js +1 -1
  1855. package/src/utils/interactivity/vdom.js +21 -4
  1856. package/src/verse/block.json +1 -1
  1857. package/src/video/block.json +1 -1
  1858. package/build/file/view.js +0 -9
  1859. package/build/file/view.js.map +0 -1
  1860. package/build/navigation/view-modal.js +0 -66
  1861. package/build/navigation/view-modal.js.map +0 -1
  1862. package/build/navigation/view.js +0 -61
  1863. package/build/navigation/view.js.map +0 -1
  1864. package/build-module/file/view.js +0 -6
  1865. package/build-module/file/view.js.map +0 -1
  1866. package/build-module/navigation/view-modal.js +0 -60
  1867. package/build-module/navigation/view-modal.js.map +0 -1
  1868. package/build-module/navigation/view.js +0 -59
  1869. package/build-module/navigation/view.js.map +0 -1
  1870. package/src/file/view.js +0 -9
  1871. package/src/navigation/view-modal.js +0 -78
  1872. package/src/navigation/view.js +0 -74
@@ -1 +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,QACLF,MAAM,CAAEG,kBAAF,CADP;AAGA,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,KAnBY,CAqBb;AACA;AACA;AACA;;AACA;;;AACA,UAAMC,YAAY,GACjBP,MAAM,CACL,aADK,CAAN,CAEEQ,yCAFF,EADD;AAIA;;;AACA,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,GA5DK,EA6DN,CAAEtB,QAAF,CA7DM,CAAP;AA+DA","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 } =\n\t\t\t\tselect( blockEditorStore );\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 @wordpress/data-no-store-string-literals */\n\t\t\tconst definedAreas =\n\t\t\t\tselect(\n\t\t\t\t\t'core/editor'\n\t\t\t\t).__experimentalGetDefaultTemplatePartAreas();\n\t\t\t/* eslint-enable @wordpress/data-no-store-string-literals */\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"]}
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,QACLF,MAAM,CAAEG,kBAAF,CADP;AAGA,UAAMC,oBAAoB,GAAG,IAA7B;AACA,UAAMC,2BAA2B,GAAGH,0BAA0B,CAC7DH,QAD6D,EAE7D,oBAF6D,EAG7DK,oBAH6D,CAA9D;;AAMA,QAAK,CAAEC,2BAA2B,EAAEC,MAApC,EAA6C;AAC5C;AACA,KAnBY,CAqBb;AACA;AACA;AACA;;AACA;;;AACA,UAAMC,YAAY,GACjBP,MAAM,CACL,aADK,CAAN,CAEEQ,yCAFF,EADD;AAIA;;;AACA,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,kBAAkB,EAAEC,IAAzB,EAAgC;AAC/B,eAAOX,YAAY,CAACY,IAAb,CACJC,WAAF,IACCA,WAAW,CAACF,IAAZ,KAAqB,eAArB,IACAE,WAAW,CAACF,IAAZ,KAAqBD,kBAAkB,CAACC,IAHnC,GAIJG,KAJH;AAKA;AACD;AACD,GA5DK,EA6DN,CAAEtB,QAAF,CA7DM,CAAP;AA+DA","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 } =\n\t\t\t\tselect( blockEditorStore );\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 @wordpress/data-no-store-string-literals */\n\t\t\tconst definedAreas =\n\t\t\t\tselect(\n\t\t\t\t\t'core/editor'\n\t\t\t\t).__experimentalGetDefaultTemplatePartAreas();\n\t\t\t/* eslint-enable @wordpress/data-no-store-string-literals */\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"]}
@@ -56,7 +56,7 @@ const {
56
56
  name: name
57
57
  } = {
58
58
  $schema: "https://schemas.wp.org/trunk/block.json",
59
- apiVersion: 2,
59
+ apiVersion: 3,
60
60
  name: "core/navigation-link",
61
61
  title: "Custom Link",
62
62
  category: "design",
@@ -173,8 +173,6 @@ const useIsInvalidLink = (kind, type, id) => {
173
173
  const isPostType = kind === 'post-type' || type === 'post' || type === 'page';
174
174
  const hasId = Number.isInteger(id);
175
175
  const postStatus = (0, _data.useSelect)(select => {
176
- var _getEntityRecord;
177
-
178
176
  if (!isPostType) {
179
177
  return null;
180
178
  }
@@ -182,7 +180,7 @@ const useIsInvalidLink = (kind, type, id) => {
182
180
  const {
183
181
  getEntityRecord
184
182
  } = select(_coreData.store);
185
- return (_getEntityRecord = getEntityRecord('postType', type, id)) === null || _getEntityRecord === void 0 ? void 0 : _getEntityRecord.status;
183
+ return getEntityRecord('postType', type, id)?.status;
186
184
  }, [isPostType, type, id]); // Check Navigation Link validity if:
187
185
  // 1. Link is 'post-type'.
188
186
  // 2. It has an id.
@@ -229,17 +227,16 @@ function getMissingText(type) {
229
227
  return missingText;
230
228
  }
231
229
 
232
- function NavigationLinkEdit(_ref) {
233
- let {
234
- attributes,
235
- isSelected,
236
- setAttributes,
237
- insertBlocksAfter,
238
- mergeBlocks,
239
- onReplace,
240
- context,
241
- clientId
242
- } = _ref;
230
+ function NavigationLinkEdit({
231
+ attributes,
232
+ isSelected,
233
+ setAttributes,
234
+ insertBlocksAfter,
235
+ mergeBlocks,
236
+ onReplace,
237
+ context,
238
+ clientId
239
+ }) {
243
240
  const {
244
241
  id,
245
242
  label,
@@ -400,7 +397,7 @@ function NavigationLinkEdit(_ref) {
400
397
  } = (0, _utils.getColors)(context, !isTopLevelLink);
401
398
 
402
399
  function onKeyDown(event) {
403
- if (_keycodes.isKeyboardEvent.primary(event, 'k') || !url && event.keyCode === _keycodes.ENTER) {
400
+ if (_keycodes.isKeyboardEvent.primary(event, 'k') || (!url || isDraft || isInvalid) && event.keyCode === _keycodes.ENTER) {
404
401
  setIsLinkOpen(true);
405
402
  }
406
403
  }
@@ -547,11 +544,7 @@ function NavigationLinkEdit(_ref) {
547
544
  className: "wp-block-navigation-item__description"
548
545
  }, description)), (isInvalid || isDraft) && (0, _element.createElement)("div", {
549
546
  className: "wp-block-navigation-link__placeholder-text wp-block-navigation-link__label"
550
- }, (0, _element.createElement)(_components.KeyboardShortcuts, {
551
- shortcuts: {
552
- enter: () => isSelected && setIsLinkOpen(true)
553
- }
554
- }), (0, _element.createElement)(_components.Tooltip, {
547
+ }, (0, _element.createElement)(_components.Tooltip, {
555
548
  position: "top center",
556
549
  text: tooltipText
557
550
  }, (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)("span", {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation-link/edit.js"],"names":["useIsDraggingWithin","elementRef","isDraggingWithin","setIsDraggingWithin","ownerDocument","current","handleDragStart","event","handleDragEnter","handleDragEnd","contains","target","addEventListener","removeEventListener","useIsInvalidLink","kind","type","id","isPostType","hasId","Number","isInteger","postStatus","select","getEntityRecord","coreStore","status","isInvalid","isDraft","getMissingText","missingText","NavigationLinkEdit","attributes","isSelected","setAttributes","insertBlocksAfter","mergeBlocks","onReplace","context","clientId","label","url","description","rel","title","maxNestingLevel","replaceBlock","__unstableMarkNextChangeAsNotPersistent","blockEditorStore","isLinkOpen","setIsLinkOpen","popoverAnchor","setPopoverAnchor","listItemRef","itemLabelPlaceholder","ref","pagesPermissions","postsPermissions","innerBlocks","isAtMaxNesting","isTopLevelLink","isParentOfSelectedBlock","hasChildren","getBlocks","getBlockCount","getBlockName","getBlockRootClientId","hasSelectedInnerBlock","getBlockParentsByBlockName","name","length","transformToSubmenu","newSubmenu","test","selectLabelText","focus","defaultView","selection","getSelection","range","createRange","selectNodeContents","removeAllRanges","addRange","removeLink","undefined","opensInNewTab","userCanCreate","canCreate","textColor","customTextColor","backgroundColor","customBackgroundColor","onKeyDown","isKeyboardEvent","primary","keyCode","ENTER","blockProps","className","style","color","ALLOWED_BLOCKS","DEFAULT_BLOCK","innerBlocksProps","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","renderAppender","onClick","classes","placeholderText","tooltipText","linkIcon","displayShortcut","addSubmenu","labelValue","urlValue","descriptionValue","titleValue","relValue","enter","trim","updatedValue"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tTextControl,\n\tTextareaControl,\n\tToolbarButton,\n\tTooltip,\n\tToolbarGroup,\n\tKeyboardShortcuts,\n} from '@wordpress/components';\nimport { displayShortcut, isKeyboardEvent, ENTER } from '@wordpress/keycodes';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tgetColorClassName,\n\tuseInnerBlocksProps,\n} from '@wordpress/block-editor';\nimport { isURL, prependHTTP } from '@wordpress/url';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport {\n\tplaceCaretAtHorizontalEdge,\n\t__unstableStripHTML as stripHTML,\n} from '@wordpress/dom';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { link as linkIcon, addSubmenu } from '@wordpress/icons';\nimport {\n\tstore as coreStore,\n\tuseResourcePermissions,\n} from '@wordpress/core-data';\nimport { useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { name } from './block.json';\nimport { LinkUI } from './link-ui';\nimport { updateAttributes } from './update-attributes';\nimport { getColors } from '../navigation/edit/utils';\n\n/**\n * A React hook to determine if it's dragging within the target element.\n *\n * @typedef {import('@wordpress/element').RefObject} RefObject\n *\n * @param {RefObject<HTMLElement>} elementRef The target elementRef object.\n *\n * @return {boolean} Is dragging within the target element.\n */\nconst useIsDraggingWithin = ( elementRef ) => {\n\tconst [ isDraggingWithin, setIsDraggingWithin ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst { ownerDocument } = elementRef.current;\n\n\t\tfunction handleDragStart( event ) {\n\t\t\t// Check the first time when the dragging starts.\n\t\t\thandleDragEnter( event );\n\t\t}\n\n\t\t// Set to false whenever the user cancel the drag event by either releasing the mouse or press Escape.\n\t\tfunction handleDragEnd() {\n\t\t\tsetIsDraggingWithin( false );\n\t\t}\n\n\t\tfunction handleDragEnter( event ) {\n\t\t\t// Check if the current target is inside the item element.\n\t\t\tif ( elementRef.current.contains( event.target ) ) {\n\t\t\t\tsetIsDraggingWithin( true );\n\t\t\t} else {\n\t\t\t\tsetIsDraggingWithin( false );\n\t\t\t}\n\t\t}\n\n\t\t// Bind these events to the document to catch all drag events.\n\t\t// Ideally, we can also use `event.relatedTarget`, but sadly that\n\t\t// doesn't work in Safari.\n\t\townerDocument.addEventListener( 'dragstart', handleDragStart );\n\t\townerDocument.addEventListener( 'dragend', handleDragEnd );\n\t\townerDocument.addEventListener( 'dragenter', handleDragEnter );\n\n\t\treturn () => {\n\t\t\townerDocument.removeEventListener( 'dragstart', handleDragStart );\n\t\t\townerDocument.removeEventListener( 'dragend', handleDragEnd );\n\t\t\townerDocument.removeEventListener( 'dragenter', handleDragEnter );\n\t\t};\n\t}, [] );\n\n\treturn isDraggingWithin;\n};\n\nconst useIsInvalidLink = ( kind, type, id ) => {\n\tconst isPostType =\n\t\tkind === 'post-type' || type === 'post' || type === 'page';\n\tconst hasId = Number.isInteger( id );\n\tconst postStatus = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isPostType ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\treturn getEntityRecord( 'postType', type, id )?.status;\n\t\t},\n\t\t[ isPostType, type, id ]\n\t);\n\n\t// Check Navigation Link validity if:\n\t// 1. Link is 'post-type'.\n\t// 2. It has an id.\n\t// 3. It's neither null, nor undefined, as valid items might be either of those while loading.\n\t// If those conditions are met, check if\n\t// 1. The post status is published.\n\t// 2. The Navigation Link item has no label.\n\t// If either of those is true, invalidate.\n\tconst isInvalid =\n\t\tisPostType && hasId && postStatus && 'trash' === postStatus;\n\tconst isDraft = 'draft' === postStatus;\n\n\treturn [ isInvalid, isDraft ];\n};\n\nfunction getMissingText( type ) {\n\tlet missingText = '';\n\n\tswitch ( type ) {\n\t\tcase 'post':\n\t\t\t/* translators: label for missing post in navigation link block */\n\t\t\tmissingText = __( 'Select post' );\n\t\t\tbreak;\n\t\tcase 'page':\n\t\t\t/* translators: label for missing page in navigation link block */\n\t\t\tmissingText = __( 'Select page' );\n\t\t\tbreak;\n\t\tcase 'category':\n\t\t\t/* translators: label for missing category in navigation link block */\n\t\t\tmissingText = __( 'Select category' );\n\t\t\tbreak;\n\t\tcase 'tag':\n\t\t\t/* translators: label for missing tag in navigation link block */\n\t\t\tmissingText = __( 'Select tag' );\n\t\t\tbreak;\n\t\tdefault:\n\t\t\t/* translators: label for missing values in navigation link block */\n\t\t\tmissingText = __( 'Add link' );\n\t}\n\n\treturn missingText;\n}\n\nexport default function NavigationLinkEdit( {\n\tattributes,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tmergeBlocks,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst { id, label, type, url, description, rel, title, kind } = attributes;\n\n\tconst [ isInvalid, isDraft ] = useIsInvalidLink( kind, type, id );\n\tconst { maxNestingLevel } = context;\n\n\tconst { replaceBlock, __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst [ isLinkOpen, setIsLinkOpen ] = useState( false );\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\tconst listItemRef = useRef( null );\n\tconst isDraggingWithin = useIsDraggingWithin( listItemRef );\n\tconst itemLabelPlaceholder = __( 'Add label…' );\n\tconst ref = useRef();\n\n\tconst pagesPermissions = useResourcePermissions( 'pages' );\n\tconst postsPermissions = useResourcePermissions( 'posts' );\n\n\tconst {\n\t\tinnerBlocks,\n\t\tisAtMaxNesting,\n\t\tisTopLevelLink,\n\t\tisParentOfSelectedBlock,\n\t\thasChildren,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlocks,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisAtMaxNesting:\n\t\t\t\t\tgetBlockParentsByBlockName( clientId, [\n\t\t\t\t\t\tname,\n\t\t\t\t\t\t'core/navigation-submenu',\n\t\t\t\t\t] ).length >= maxNestingLevel,\n\t\t\t\tisTopLevelLink:\n\t\t\t\t\tgetBlockName( getBlockRootClientId( clientId ) ) ===\n\t\t\t\t\t'core/navigation',\n\t\t\t\tisParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\ttrue\n\t\t\t\t),\n\t\t\t\thasChildren: !! getBlockCount( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\t/**\n\t * Transform to submenu block.\n\t */\n\tfunction transformToSubmenu() {\n\t\tconst newSubmenu = createBlock(\n\t\t\t'core/navigation-submenu',\n\t\t\tattributes,\n\t\t\tinnerBlocks.length > 0\n\t\t\t\t? innerBlocks\n\t\t\t\t: [ createBlock( 'core/navigation-link' ) ]\n\t\t);\n\t\treplaceBlock( clientId, newSubmenu );\n\t}\n\n\tuseEffect( () => {\n\t\t// Show the LinkControl on mount if the URL is empty\n\t\t// ( When adding a new menu item)\n\t\t// This can't be done in the useState call because it conflicts\n\t\t// with the autofocus behavior of the BlockListBlock component.\n\t\tif ( ! url ) {\n\t\t\tsetIsLinkOpen( true );\n\t\t}\n\t}, [ url ] );\n\n\tuseEffect( () => {\n\t\t// If block has inner blocks, transform to Submenu.\n\t\tif ( hasChildren ) {\n\t\t\t// This side-effect should not create an undo level as those should\n\t\t\t// only be created via user interactions.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\ttransformToSubmenu();\n\t\t}\n\t}, [ hasChildren ] );\n\n\t/**\n\t * The hook shouldn't be necessary but due to a focus loss happening\n\t * when selecting a suggestion in the link popover, we force close on block unselection.\n\t */\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsLinkOpen( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// If the LinkControl popover is open and the URL has changed, close the LinkControl and focus the label text.\n\tuseEffect( () => {\n\t\tif ( isLinkOpen && url ) {\n\t\t\t// Does this look like a URL and have something TLD-ish?\n\t\t\tif (\n\t\t\t\tisURL( prependHTTP( label ) ) &&\n\t\t\t\t/^.+\\.[a-z]+/.test( label )\n\t\t\t) {\n\t\t\t\t// Focus and select the label text.\n\t\t\t\tselectLabelText();\n\t\t\t} else {\n\t\t\t\t// Focus it (but do not select).\n\t\t\t\tplaceCaretAtHorizontalEdge( ref.current, true );\n\t\t\t}\n\t\t}\n\t}, [ url ] );\n\n\t/**\n\t * Focus the Link label text and select it.\n\t */\n\tfunction selectLabelText() {\n\t\tref.current.focus();\n\t\tconst { ownerDocument } = ref.current;\n\t\tconst { defaultView } = ownerDocument;\n\t\tconst selection = defaultView.getSelection();\n\t\tconst range = ownerDocument.createRange();\n\t\t// Get the range of the current ref contents so we can add this range to the selection.\n\t\trange.selectNodeContents( ref.current );\n\t\tselection.removeAllRanges();\n\t\tselection.addRange( range );\n\t}\n\n\t/**\n\t * Removes the current link if set.\n\t */\n\tfunction removeLink() {\n\t\t// Reset all attributes that comprise the link.\n\t\t// It is critical that all attributes are reset\n\t\t// to their default values otherwise this may\n\t\t// in advertently trigger side effects because\n\t\t// the values will have \"changed\".\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlabel: undefined,\n\t\t\tid: undefined,\n\t\t\tkind: undefined,\n\t\t\ttype: undefined,\n\t\t\topensInNewTab: false,\n\t\t} );\n\n\t\t// Close the link editing UI.\n\t\tsetIsLinkOpen( false );\n\t}\n\n\tlet userCanCreate = false;\n\tif ( ! type || type === 'page' ) {\n\t\tuserCanCreate = pagesPermissions.canCreate;\n\t} else if ( type === 'post' ) {\n\t\tuserCanCreate = postsPermissions.canCreate;\n\t}\n\n\tconst {\n\t\ttextColor,\n\t\tcustomTextColor,\n\t\tbackgroundColor,\n\t\tcustomBackgroundColor,\n\t} = getColors( context, ! isTopLevelLink );\n\n\tfunction onKeyDown( event ) {\n\t\tif (\n\t\t\tisKeyboardEvent.primary( event, 'k' ) ||\n\t\t\t( ! url && event.keyCode === ENTER )\n\t\t) {\n\t\t\tsetIsLinkOpen( true );\n\t\t}\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, listItemRef ] ),\n\t\tclassName: classnames( 'wp-block-navigation-item', {\n\t\t\t'is-editing': isSelected || isParentOfSelectedBlock,\n\t\t\t'is-dragging-within': isDraggingWithin,\n\t\t\t'has-link': !! url,\n\t\t\t'has-child': hasChildren,\n\t\t\t'has-text-color': !! textColor || !! customTextColor,\n\t\t\t[ getColorClassName( 'color', textColor ) ]: !! textColor,\n\t\t\t'has-background': !! backgroundColor || customBackgroundColor,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor ) ]:\n\t\t\t\t!! backgroundColor,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor && customTextColor,\n\t\t\tbackgroundColor: ! backgroundColor && customBackgroundColor,\n\t\t},\n\t\tonKeyDown,\n\t} );\n\n\tconst ALLOWED_BLOCKS = [\n\t\t'core/navigation-link',\n\t\t'core/navigation-submenu',\n\t\t'core/page-list',\n\t];\n\tconst DEFAULT_BLOCK = {\n\t\tname: 'core/navigation-link',\n\t};\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\t...blockProps,\n\t\t\tclassName: 'remove-outline', // Remove the outline from the inner blocks container.\n\t\t},\n\t\t{\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t\t__experimentalDirectInsert: true,\n\t\t\trenderAppender: false,\n\t\t}\n\t);\n\n\tif ( ! url || isInvalid || isDraft ) {\n\t\tblockProps.onClick = () => setIsLinkOpen( true );\n\t}\n\n\tconst classes = classnames( 'wp-block-navigation-item__content', {\n\t\t'wp-block-navigation-link__placeholder': ! url || isInvalid || isDraft,\n\t} );\n\n\tconst missingText = getMissingText( type );\n\t/* translators: Whether the navigation link is Invalid or a Draft. */\n\tconst placeholderText = `(${\n\t\tisInvalid ? __( 'Invalid' ) : __( 'Draft' )\n\t})`;\n\tconst tooltipText =\n\t\tisInvalid || isDraft\n\t\t\t? __( 'This item has been deleted, or is a draft' )\n\t\t\t: __( 'This item is missing a link' );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkIcon }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ () => setIsLinkOpen( true ) }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! isAtMaxNesting && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tname=\"submenu\"\n\t\t\t\t\t\t\ticon={ addSubmenu }\n\t\t\t\t\t\t\ttitle={ __( 'Add submenu' ) }\n\t\t\t\t\t\t\tonClick={ transformToSubmenu }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t\t{ /* Warning, this duplicated in packages/block-library/src/navigation-submenu/edit.js */ }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ label ? stripHTML( label ) : '' }\n\t\t\t\t\t\tonChange={ ( labelValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { label: labelValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Label' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ url || '' }\n\t\t\t\t\t\tonChange={ ( urlValue ) => {\n\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t{ url: urlValue },\n\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\tattributes\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'URL' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t/>\n\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ description || '' }\n\t\t\t\t\t\tonChange={ ( descriptionValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { description: descriptionValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Description' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The description will be displayed in the menu if the current theme supports it.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\t\tonChange={ ( titleValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { title: titleValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Additional information to help clarify the purpose of the link.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( relValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { rel: relValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Rel attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The relationship of the linked URL as space-separated link types.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ /* eslint-disable jsx-a11y/anchor-is-valid */ }\n\t\t\t\t<a className={ classes }>\n\t\t\t\t\t{ /* eslint-enable */ }\n\t\t\t\t\t{ ! url ? (\n\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text\">\n\t\t\t\t\t\t\t<Tooltip position=\"top center\" text={ tooltipText }>\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<span>{ missingText }</span>\n\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-link__missing_text-tooltip\">\n\t\t\t\t\t\t\t\t\t\t{ tooltipText }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isInvalid && ! isDraft && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-navigation-item__label\"\n\t\t\t\t\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( labelValue ) =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: labelValue,\n\t\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\t\t\t\t\tcreateBlock(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'core/navigation-link'\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tplaceholder={ itemLabelPlaceholder }\n\t\t\t\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\t\t\t\tallowedFormats={ [\n\t\t\t\t\t\t\t\t\t\t\t'core/bold',\n\t\t\t\t\t\t\t\t\t\t\t'core/italic',\n\t\t\t\t\t\t\t\t\t\t\t'core/image',\n\t\t\t\t\t\t\t\t\t\t\t'core/strikethrough',\n\t\t\t\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\tif ( ! url ) {\n\t\t\t\t\t\t\t\t\t\t\t\tsetIsLinkOpen( true );\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{ description && (\n\t\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-item__description\">\n\t\t\t\t\t\t\t\t\t\t\t{ description }\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ ( isInvalid || isDraft ) && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text wp-block-navigation-link__label\">\n\t\t\t\t\t\t\t\t\t<KeyboardShortcuts\n\t\t\t\t\t\t\t\t\t\tshortcuts={ {\n\t\t\t\t\t\t\t\t\t\t\tenter: () =>\n\t\t\t\t\t\t\t\t\t\t\t\tisSelected &&\n\t\t\t\t\t\t\t\t\t\t\t\tsetIsLinkOpen( true ),\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\t\t\ttext={ tooltipText }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Some attributes are stored in an escaped form. It's a legacy issue.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Ideally they would be stored in a raw, unescaped form.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Unescape is used here to \"recover\" the escaped characters\n\t\t\t\t\t\t\t\t\t\t\t\t\t// so they display without encoding.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// See `updateAttributes` for more details.\n\t\t\t\t\t\t\t\t\t\t\t\t\t`${ decodeEntities(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t\t\t\t\t) } ${ placeholderText }`.trim()\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-link__missing_text-tooltip\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ tooltipText }\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isLinkOpen && (\n\t\t\t\t\t\t<LinkUI\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-link__inline-link-input\"\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tlink={ attributes }\n\t\t\t\t\t\t\tonClose={ () => setIsLinkOpen( false ) }\n\t\t\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\t\t\thasCreateSuggestion={ userCanCreate }\n\t\t\t\t\t\t\tonRemove={ removeLink }\n\t\t\t\t\t\t\tonChange={ ( updatedValue ) => {\n\t\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t\tupdatedValue,\n\t\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\t\tattributes\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</a>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation-link/edit.js"],"names":["useIsDraggingWithin","elementRef","isDraggingWithin","setIsDraggingWithin","ownerDocument","current","handleDragStart","event","handleDragEnter","handleDragEnd","contains","target","addEventListener","removeEventListener","useIsInvalidLink","kind","type","id","isPostType","hasId","Number","isInteger","postStatus","select","getEntityRecord","coreStore","status","isInvalid","isDraft","getMissingText","missingText","NavigationLinkEdit","attributes","isSelected","setAttributes","insertBlocksAfter","mergeBlocks","onReplace","context","clientId","label","url","description","rel","title","maxNestingLevel","replaceBlock","__unstableMarkNextChangeAsNotPersistent","blockEditorStore","isLinkOpen","setIsLinkOpen","popoverAnchor","setPopoverAnchor","listItemRef","itemLabelPlaceholder","ref","pagesPermissions","postsPermissions","innerBlocks","isAtMaxNesting","isTopLevelLink","isParentOfSelectedBlock","hasChildren","getBlocks","getBlockCount","getBlockName","getBlockRootClientId","hasSelectedInnerBlock","getBlockParentsByBlockName","name","length","transformToSubmenu","newSubmenu","test","selectLabelText","focus","defaultView","selection","getSelection","range","createRange","selectNodeContents","removeAllRanges","addRange","removeLink","undefined","opensInNewTab","userCanCreate","canCreate","textColor","customTextColor","backgroundColor","customBackgroundColor","onKeyDown","isKeyboardEvent","primary","keyCode","ENTER","blockProps","className","style","color","ALLOWED_BLOCKS","DEFAULT_BLOCK","innerBlocksProps","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","renderAppender","onClick","classes","placeholderText","tooltipText","linkIcon","displayShortcut","addSubmenu","labelValue","urlValue","descriptionValue","titleValue","relValue","trim","updatedValue"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tTextControl,\n\tTextareaControl,\n\tToolbarButton,\n\tTooltip,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { displayShortcut, isKeyboardEvent, ENTER } from '@wordpress/keycodes';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tgetColorClassName,\n\tuseInnerBlocksProps,\n} from '@wordpress/block-editor';\nimport { isURL, prependHTTP } from '@wordpress/url';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport {\n\tplaceCaretAtHorizontalEdge,\n\t__unstableStripHTML as stripHTML,\n} from '@wordpress/dom';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { link as linkIcon, addSubmenu } from '@wordpress/icons';\nimport {\n\tstore as coreStore,\n\tuseResourcePermissions,\n} from '@wordpress/core-data';\nimport { useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { name } from './block.json';\nimport { LinkUI } from './link-ui';\nimport { updateAttributes } from './update-attributes';\nimport { getColors } from '../navigation/edit/utils';\n\n/**\n * A React hook to determine if it's dragging within the target element.\n *\n * @typedef {import('@wordpress/element').RefObject} RefObject\n *\n * @param {RefObject<HTMLElement>} elementRef The target elementRef object.\n *\n * @return {boolean} Is dragging within the target element.\n */\nconst useIsDraggingWithin = ( elementRef ) => {\n\tconst [ isDraggingWithin, setIsDraggingWithin ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst { ownerDocument } = elementRef.current;\n\n\t\tfunction handleDragStart( event ) {\n\t\t\t// Check the first time when the dragging starts.\n\t\t\thandleDragEnter( event );\n\t\t}\n\n\t\t// Set to false whenever the user cancel the drag event by either releasing the mouse or press Escape.\n\t\tfunction handleDragEnd() {\n\t\t\tsetIsDraggingWithin( false );\n\t\t}\n\n\t\tfunction handleDragEnter( event ) {\n\t\t\t// Check if the current target is inside the item element.\n\t\t\tif ( elementRef.current.contains( event.target ) ) {\n\t\t\t\tsetIsDraggingWithin( true );\n\t\t\t} else {\n\t\t\t\tsetIsDraggingWithin( false );\n\t\t\t}\n\t\t}\n\n\t\t// Bind these events to the document to catch all drag events.\n\t\t// Ideally, we can also use `event.relatedTarget`, but sadly that\n\t\t// doesn't work in Safari.\n\t\townerDocument.addEventListener( 'dragstart', handleDragStart );\n\t\townerDocument.addEventListener( 'dragend', handleDragEnd );\n\t\townerDocument.addEventListener( 'dragenter', handleDragEnter );\n\n\t\treturn () => {\n\t\t\townerDocument.removeEventListener( 'dragstart', handleDragStart );\n\t\t\townerDocument.removeEventListener( 'dragend', handleDragEnd );\n\t\t\townerDocument.removeEventListener( 'dragenter', handleDragEnter );\n\t\t};\n\t}, [] );\n\n\treturn isDraggingWithin;\n};\n\nconst useIsInvalidLink = ( kind, type, id ) => {\n\tconst isPostType =\n\t\tkind === 'post-type' || type === 'post' || type === 'page';\n\tconst hasId = Number.isInteger( id );\n\tconst postStatus = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isPostType ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\treturn getEntityRecord( 'postType', type, id )?.status;\n\t\t},\n\t\t[ isPostType, type, id ]\n\t);\n\n\t// Check Navigation Link validity if:\n\t// 1. Link is 'post-type'.\n\t// 2. It has an id.\n\t// 3. It's neither null, nor undefined, as valid items might be either of those while loading.\n\t// If those conditions are met, check if\n\t// 1. The post status is published.\n\t// 2. The Navigation Link item has no label.\n\t// If either of those is true, invalidate.\n\tconst isInvalid =\n\t\tisPostType && hasId && postStatus && 'trash' === postStatus;\n\tconst isDraft = 'draft' === postStatus;\n\n\treturn [ isInvalid, isDraft ];\n};\n\nfunction getMissingText( type ) {\n\tlet missingText = '';\n\n\tswitch ( type ) {\n\t\tcase 'post':\n\t\t\t/* translators: label for missing post in navigation link block */\n\t\t\tmissingText = __( 'Select post' );\n\t\t\tbreak;\n\t\tcase 'page':\n\t\t\t/* translators: label for missing page in navigation link block */\n\t\t\tmissingText = __( 'Select page' );\n\t\t\tbreak;\n\t\tcase 'category':\n\t\t\t/* translators: label for missing category in navigation link block */\n\t\t\tmissingText = __( 'Select category' );\n\t\t\tbreak;\n\t\tcase 'tag':\n\t\t\t/* translators: label for missing tag in navigation link block */\n\t\t\tmissingText = __( 'Select tag' );\n\t\t\tbreak;\n\t\tdefault:\n\t\t\t/* translators: label for missing values in navigation link block */\n\t\t\tmissingText = __( 'Add link' );\n\t}\n\n\treturn missingText;\n}\n\nexport default function NavigationLinkEdit( {\n\tattributes,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tmergeBlocks,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst { id, label, type, url, description, rel, title, kind } = attributes;\n\n\tconst [ isInvalid, isDraft ] = useIsInvalidLink( kind, type, id );\n\tconst { maxNestingLevel } = context;\n\n\tconst { replaceBlock, __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst [ isLinkOpen, setIsLinkOpen ] = useState( false );\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\tconst listItemRef = useRef( null );\n\tconst isDraggingWithin = useIsDraggingWithin( listItemRef );\n\tconst itemLabelPlaceholder = __( 'Add label…' );\n\tconst ref = useRef();\n\n\tconst pagesPermissions = useResourcePermissions( 'pages' );\n\tconst postsPermissions = useResourcePermissions( 'posts' );\n\n\tconst {\n\t\tinnerBlocks,\n\t\tisAtMaxNesting,\n\t\tisTopLevelLink,\n\t\tisParentOfSelectedBlock,\n\t\thasChildren,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlocks,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisAtMaxNesting:\n\t\t\t\t\tgetBlockParentsByBlockName( clientId, [\n\t\t\t\t\t\tname,\n\t\t\t\t\t\t'core/navigation-submenu',\n\t\t\t\t\t] ).length >= maxNestingLevel,\n\t\t\t\tisTopLevelLink:\n\t\t\t\t\tgetBlockName( getBlockRootClientId( clientId ) ) ===\n\t\t\t\t\t'core/navigation',\n\t\t\t\tisParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\ttrue\n\t\t\t\t),\n\t\t\t\thasChildren: !! getBlockCount( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\t/**\n\t * Transform to submenu block.\n\t */\n\tfunction transformToSubmenu() {\n\t\tconst newSubmenu = createBlock(\n\t\t\t'core/navigation-submenu',\n\t\t\tattributes,\n\t\t\tinnerBlocks.length > 0\n\t\t\t\t? innerBlocks\n\t\t\t\t: [ createBlock( 'core/navigation-link' ) ]\n\t\t);\n\t\treplaceBlock( clientId, newSubmenu );\n\t}\n\n\tuseEffect( () => {\n\t\t// Show the LinkControl on mount if the URL is empty\n\t\t// ( When adding a new menu item)\n\t\t// This can't be done in the useState call because it conflicts\n\t\t// with the autofocus behavior of the BlockListBlock component.\n\t\tif ( ! url ) {\n\t\t\tsetIsLinkOpen( true );\n\t\t}\n\t}, [ url ] );\n\n\tuseEffect( () => {\n\t\t// If block has inner blocks, transform to Submenu.\n\t\tif ( hasChildren ) {\n\t\t\t// This side-effect should not create an undo level as those should\n\t\t\t// only be created via user interactions.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\ttransformToSubmenu();\n\t\t}\n\t}, [ hasChildren ] );\n\n\t/**\n\t * The hook shouldn't be necessary but due to a focus loss happening\n\t * when selecting a suggestion in the link popover, we force close on block unselection.\n\t */\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsLinkOpen( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// If the LinkControl popover is open and the URL has changed, close the LinkControl and focus the label text.\n\tuseEffect( () => {\n\t\tif ( isLinkOpen && url ) {\n\t\t\t// Does this look like a URL and have something TLD-ish?\n\t\t\tif (\n\t\t\t\tisURL( prependHTTP( label ) ) &&\n\t\t\t\t/^.+\\.[a-z]+/.test( label )\n\t\t\t) {\n\t\t\t\t// Focus and select the label text.\n\t\t\t\tselectLabelText();\n\t\t\t} else {\n\t\t\t\t// Focus it (but do not select).\n\t\t\t\tplaceCaretAtHorizontalEdge( ref.current, true );\n\t\t\t}\n\t\t}\n\t}, [ url ] );\n\n\t/**\n\t * Focus the Link label text and select it.\n\t */\n\tfunction selectLabelText() {\n\t\tref.current.focus();\n\t\tconst { ownerDocument } = ref.current;\n\t\tconst { defaultView } = ownerDocument;\n\t\tconst selection = defaultView.getSelection();\n\t\tconst range = ownerDocument.createRange();\n\t\t// Get the range of the current ref contents so we can add this range to the selection.\n\t\trange.selectNodeContents( ref.current );\n\t\tselection.removeAllRanges();\n\t\tselection.addRange( range );\n\t}\n\n\t/**\n\t * Removes the current link if set.\n\t */\n\tfunction removeLink() {\n\t\t// Reset all attributes that comprise the link.\n\t\t// It is critical that all attributes are reset\n\t\t// to their default values otherwise this may\n\t\t// in advertently trigger side effects because\n\t\t// the values will have \"changed\".\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlabel: undefined,\n\t\t\tid: undefined,\n\t\t\tkind: undefined,\n\t\t\ttype: undefined,\n\t\t\topensInNewTab: false,\n\t\t} );\n\n\t\t// Close the link editing UI.\n\t\tsetIsLinkOpen( false );\n\t}\n\n\tlet userCanCreate = false;\n\tif ( ! type || type === 'page' ) {\n\t\tuserCanCreate = pagesPermissions.canCreate;\n\t} else if ( type === 'post' ) {\n\t\tuserCanCreate = postsPermissions.canCreate;\n\t}\n\n\tconst {\n\t\ttextColor,\n\t\tcustomTextColor,\n\t\tbackgroundColor,\n\t\tcustomBackgroundColor,\n\t} = getColors( context, ! isTopLevelLink );\n\n\tfunction onKeyDown( event ) {\n\t\tif (\n\t\t\tisKeyboardEvent.primary( event, 'k' ) ||\n\t\t\t( ( ! url || isDraft || isInvalid ) && event.keyCode === ENTER )\n\t\t) {\n\t\t\tsetIsLinkOpen( true );\n\t\t}\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, listItemRef ] ),\n\t\tclassName: classnames( 'wp-block-navigation-item', {\n\t\t\t'is-editing': isSelected || isParentOfSelectedBlock,\n\t\t\t'is-dragging-within': isDraggingWithin,\n\t\t\t'has-link': !! url,\n\t\t\t'has-child': hasChildren,\n\t\t\t'has-text-color': !! textColor || !! customTextColor,\n\t\t\t[ getColorClassName( 'color', textColor ) ]: !! textColor,\n\t\t\t'has-background': !! backgroundColor || customBackgroundColor,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor ) ]:\n\t\t\t\t!! backgroundColor,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor && customTextColor,\n\t\t\tbackgroundColor: ! backgroundColor && customBackgroundColor,\n\t\t},\n\t\tonKeyDown,\n\t} );\n\n\tconst ALLOWED_BLOCKS = [\n\t\t'core/navigation-link',\n\t\t'core/navigation-submenu',\n\t\t'core/page-list',\n\t];\n\tconst DEFAULT_BLOCK = {\n\t\tname: 'core/navigation-link',\n\t};\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\t...blockProps,\n\t\t\tclassName: 'remove-outline', // Remove the outline from the inner blocks container.\n\t\t},\n\t\t{\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t\t__experimentalDirectInsert: true,\n\t\t\trenderAppender: false,\n\t\t}\n\t);\n\n\tif ( ! url || isInvalid || isDraft ) {\n\t\tblockProps.onClick = () => setIsLinkOpen( true );\n\t}\n\n\tconst classes = classnames( 'wp-block-navigation-item__content', {\n\t\t'wp-block-navigation-link__placeholder': ! url || isInvalid || isDraft,\n\t} );\n\n\tconst missingText = getMissingText( type );\n\t/* translators: Whether the navigation link is Invalid or a Draft. */\n\tconst placeholderText = `(${\n\t\tisInvalid ? __( 'Invalid' ) : __( 'Draft' )\n\t})`;\n\tconst tooltipText =\n\t\tisInvalid || isDraft\n\t\t\t? __( 'This item has been deleted, or is a draft' )\n\t\t\t: __( 'This item is missing a link' );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkIcon }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ () => setIsLinkOpen( true ) }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! isAtMaxNesting && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tname=\"submenu\"\n\t\t\t\t\t\t\ticon={ addSubmenu }\n\t\t\t\t\t\t\ttitle={ __( 'Add submenu' ) }\n\t\t\t\t\t\t\tonClick={ transformToSubmenu }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t\t{ /* Warning, this duplicated in packages/block-library/src/navigation-submenu/edit.js */ }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ label ? stripHTML( label ) : '' }\n\t\t\t\t\t\tonChange={ ( labelValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { label: labelValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Label' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ url || '' }\n\t\t\t\t\t\tonChange={ ( urlValue ) => {\n\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t{ url: urlValue },\n\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\tattributes\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'URL' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t/>\n\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ description || '' }\n\t\t\t\t\t\tonChange={ ( descriptionValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { description: descriptionValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Description' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The description will be displayed in the menu if the current theme supports it.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\t\tonChange={ ( titleValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { title: titleValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Additional information to help clarify the purpose of the link.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( relValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { rel: relValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Rel attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The relationship of the linked URL as space-separated link types.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ /* eslint-disable jsx-a11y/anchor-is-valid */ }\n\t\t\t\t<a className={ classes }>\n\t\t\t\t\t{ /* eslint-enable */ }\n\t\t\t\t\t{ ! url ? (\n\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text\">\n\t\t\t\t\t\t\t<Tooltip position=\"top center\" text={ tooltipText }>\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<span>{ missingText }</span>\n\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-link__missing_text-tooltip\">\n\t\t\t\t\t\t\t\t\t\t{ tooltipText }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isInvalid && ! isDraft && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-navigation-item__label\"\n\t\t\t\t\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( labelValue ) =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: labelValue,\n\t\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\t\t\t\t\tcreateBlock(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'core/navigation-link'\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tplaceholder={ itemLabelPlaceholder }\n\t\t\t\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\t\t\t\tallowedFormats={ [\n\t\t\t\t\t\t\t\t\t\t\t'core/bold',\n\t\t\t\t\t\t\t\t\t\t\t'core/italic',\n\t\t\t\t\t\t\t\t\t\t\t'core/image',\n\t\t\t\t\t\t\t\t\t\t\t'core/strikethrough',\n\t\t\t\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\tif ( ! url ) {\n\t\t\t\t\t\t\t\t\t\t\t\tsetIsLinkOpen( true );\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{ description && (\n\t\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-item__description\">\n\t\t\t\t\t\t\t\t\t\t\t{ description }\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ ( isInvalid || isDraft ) && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text wp-block-navigation-link__label\">\n\t\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\t\t\ttext={ tooltipText }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Some attributes are stored in an escaped form. It's a legacy issue.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Ideally they would be stored in a raw, unescaped form.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// Unescape is used here to \"recover\" the escaped characters\n\t\t\t\t\t\t\t\t\t\t\t\t\t// so they display without encoding.\n\t\t\t\t\t\t\t\t\t\t\t\t\t// See `updateAttributes` for more details.\n\t\t\t\t\t\t\t\t\t\t\t\t\t`${ decodeEntities(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t\t\t\t\t) } ${ placeholderText }`.trim()\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-link__missing_text-tooltip\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ tooltipText }\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isLinkOpen && (\n\t\t\t\t\t\t<LinkUI\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-link__inline-link-input\"\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tlink={ attributes }\n\t\t\t\t\t\t\tonClose={ () => setIsLinkOpen( false ) }\n\t\t\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\t\t\thasCreateSuggestion={ userCanCreate }\n\t\t\t\t\t\t\tonRemove={ removeLink }\n\t\t\t\t\t\t\tonChange={ ( updatedValue ) => {\n\t\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t\tupdatedValue,\n\t\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\t\tattributes\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</a>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
@@ -13,7 +13,7 @@ var _icons = require("@wordpress/icons");
13
13
  function getIcon(variationName) {
14
14
  switch (variationName) {
15
15
  case 'post':
16
- return _icons.postContent;
16
+ return _icons.postList;
17
17
 
18
18
  case 'page':
19
19
  return _icons.page;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation-link/hooks.js"],"names":["getIcon","variationName","postContent","page","tag","category","customPostType","enhanceNavigationLinkVariations","settings","name","variations","isActive","blockAttributes","variationAttributes","type","map","variation","icon"],"mappings":";;;;;;;AAGA;;AAHA;AACA;AACA;AASA,SAASA,OAAT,CAAkBC,aAAlB,EAAkC;AACjC,UAASA,aAAT;AACC,SAAK,MAAL;AACC,aAAOC,kBAAP;;AACD,SAAK,MAAL;AACC,aAAOC,WAAP;;AACD,SAAK,KAAL;AACC,aAAOC,UAAP;;AACD,SAAK,UAAL;AACC,aAAOC,eAAP;;AACD;AACC,aAAOC,qBAAP;AAVF;AAYA;;AAEM,SAASC,+BAAT,CAA0CC,QAA1C,EAAoDC,IAApD,EAA2D;AACjE,MAAKA,IAAI,KAAK,sBAAd,EAAuC;AACtC,WAAOD,QAAP;AACA,GAHgE,CAKjE;;;AACA,MAAKA,QAAQ,CAACE,UAAd,EAA2B;AAC1B,UAAMC,QAAQ,GAAG,CAAEC,eAAF,EAAmBC,mBAAnB,KAA4C;AAC5D,aAAOD,eAAe,CAACE,IAAhB,KAAyBD,mBAAmB,CAACC,IAApD;AACA,KAFD;;AAGA,UAAMJ,UAAU,GAAGF,QAAQ,CAACE,UAAT,CAAoBK,GAApB,CAA2BC,SAAF,IAAiB;AAC5D,aAAO,EACN,GAAGA,SADG;AAEN,YAAK,CAAEA,SAAS,CAACC,IAAZ,IAAoB;AACxBA,UAAAA,IAAI,EAAEjB,OAAO,CAAEgB,SAAS,CAACP,IAAZ;AADW,SAAzB,CAFM;AAKN,YAAK,CAAEO,SAAS,CAACL,QAAZ,IAAwB;AAC5BA,UAAAA;AAD4B,SAA7B;AALM,OAAP;AASA,KAVkB,CAAnB;AAWA,WAAO,EACN,GAAGH,QADG;AAENE,MAAAA;AAFM,KAAP;AAIA;;AACD,SAAOF,QAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tcategory,\n\tpage,\n\tpostContent,\n\ttag,\n\tcustomPostType,\n} from '@wordpress/icons';\n\nfunction getIcon( variationName ) {\n\tswitch ( variationName ) {\n\t\tcase 'post':\n\t\t\treturn postContent;\n\t\tcase 'page':\n\t\t\treturn page;\n\t\tcase 'tag':\n\t\t\treturn tag;\n\t\tcase 'category':\n\t\t\treturn category;\n\t\tdefault:\n\t\t\treturn customPostType;\n\t}\n}\n\nexport function enhanceNavigationLinkVariations( settings, name ) {\n\tif ( name !== 'core/navigation-link' ) {\n\t\treturn settings;\n\t}\n\n\t// Otherwise decorate server passed variations with an icon and isActive function.\n\tif ( settings.variations ) {\n\t\tconst isActive = ( blockAttributes, variationAttributes ) => {\n\t\t\treturn blockAttributes.type === variationAttributes.type;\n\t\t};\n\t\tconst variations = settings.variations.map( ( variation ) => {\n\t\t\treturn {\n\t\t\t\t...variation,\n\t\t\t\t...( ! variation.icon && {\n\t\t\t\t\ticon: getIcon( variation.name ),\n\t\t\t\t} ),\n\t\t\t\t...( ! variation.isActive && {\n\t\t\t\t\tisActive,\n\t\t\t\t} ),\n\t\t\t};\n\t\t} );\n\t\treturn {\n\t\t\t...settings,\n\t\t\tvariations,\n\t\t};\n\t}\n\treturn settings;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation-link/hooks.js"],"names":["getIcon","variationName","postList","page","tag","category","customPostType","enhanceNavigationLinkVariations","settings","name","variations","isActive","blockAttributes","variationAttributes","type","map","variation","icon"],"mappings":";;;;;;;AAGA;;AAHA;AACA;AACA;AASA,SAASA,OAAT,CAAkBC,aAAlB,EAAkC;AACjC,UAASA,aAAT;AACC,SAAK,MAAL;AACC,aAAOC,eAAP;;AACD,SAAK,MAAL;AACC,aAAOC,WAAP;;AACD,SAAK,KAAL;AACC,aAAOC,UAAP;;AACD,SAAK,UAAL;AACC,aAAOC,eAAP;;AACD;AACC,aAAOC,qBAAP;AAVF;AAYA;;AAEM,SAASC,+BAAT,CAA0CC,QAA1C,EAAoDC,IAApD,EAA2D;AACjE,MAAKA,IAAI,KAAK,sBAAd,EAAuC;AACtC,WAAOD,QAAP;AACA,GAHgE,CAKjE;;;AACA,MAAKA,QAAQ,CAACE,UAAd,EAA2B;AAC1B,UAAMC,QAAQ,GAAG,CAAEC,eAAF,EAAmBC,mBAAnB,KAA4C;AAC5D,aAAOD,eAAe,CAACE,IAAhB,KAAyBD,mBAAmB,CAACC,IAApD;AACA,KAFD;;AAGA,UAAMJ,UAAU,GAAGF,QAAQ,CAACE,UAAT,CAAoBK,GAApB,CAA2BC,SAAF,IAAiB;AAC5D,aAAO,EACN,GAAGA,SADG;AAEN,YAAK,CAAEA,SAAS,CAACC,IAAZ,IAAoB;AACxBA,UAAAA,IAAI,EAAEjB,OAAO,CAAEgB,SAAS,CAACP,IAAZ;AADW,SAAzB,CAFM;AAKN,YAAK,CAAEO,SAAS,CAACL,QAAZ,IAAwB;AAC5BA,UAAAA;AAD4B,SAA7B;AALM,OAAP;AASA,KAVkB,CAAnB;AAWA,WAAO,EACN,GAAGH,QADG;AAENE,MAAAA;AAFM,KAAP;AAIA;;AACD,SAAOF,QAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tcategory,\n\tpage,\n\tpostList,\n\ttag,\n\tcustomPostType,\n} from '@wordpress/icons';\n\nfunction getIcon( variationName ) {\n\tswitch ( variationName ) {\n\t\tcase 'post':\n\t\t\treturn postList;\n\t\tcase 'page':\n\t\t\treturn page;\n\t\tcase 'tag':\n\t\t\treturn tag;\n\t\tcase 'category':\n\t\t\treturn category;\n\t\tdefault:\n\t\t\treturn customPostType;\n\t}\n}\n\nexport function enhanceNavigationLinkVariations( settings, name ) {\n\tif ( name !== 'core/navigation-link' ) {\n\t\treturn settings;\n\t}\n\n\t// Otherwise decorate server passed variations with an icon and isActive function.\n\tif ( settings.variations ) {\n\t\tconst isActive = ( blockAttributes, variationAttributes ) => {\n\t\t\treturn blockAttributes.type === variationAttributes.type;\n\t\t};\n\t\tconst variations = settings.variations.map( ( variation ) => {\n\t\t\treturn {\n\t\t\t\t...variation,\n\t\t\t\t...( ! variation.icon && {\n\t\t\t\t\ticon: getIcon( variation.name ),\n\t\t\t\t} ),\n\t\t\t\t...( ! variation.isActive && {\n\t\t\t\t\tisActive,\n\t\t\t\t} ),\n\t\t\t};\n\t\t} );\n\t\treturn {\n\t\t\t...settings,\n\t\t\tvariations,\n\t\t};\n\t}\n\treturn settings;\n}\n"]}
@@ -36,7 +36,7 @@ var _transforms = _interopRequireDefault(require("./transforms"));
36
36
  */
37
37
  const metadata = {
38
38
  $schema: "https://schemas.wp.org/trunk/block.json",
39
- apiVersion: 2,
39
+ apiVersion: 3,
40
40
  name: "core/navigation-link",
41
41
  title: "Custom Link",
42
42
  category: "design",
@@ -105,17 +105,13 @@ const {
105
105
  exports.name = name;
106
106
  const settings = {
107
107
  icon: _icons.customLink,
108
- __experimentalLabel: _ref => {
109
- let {
110
- label
111
- } = _ref;
112
- return label;
113
- },
108
+ __experimentalLabel: ({
109
+ label
110
+ }) => label,
114
111
 
115
- merge(leftAttributes, _ref2) {
116
- let {
117
- label: rightLabel = ''
118
- } = _ref2;
112
+ merge(leftAttributes, {
113
+ label: rightLabel = ''
114
+ }) {
119
115
  return { ...leftAttributes,
120
116
  label: leftAttributes.label + rightLabel
121
117
  };
@@ -159,11 +155,10 @@ const settings = {
159
155
  }
160
156
  },
161
157
 
162
- migrate(_ref3) {
163
- let {
164
- nofollow,
165
- ...rest
166
- } = _ref3;
158
+ migrate({
159
+ nofollow,
160
+ ...rest
161
+ }) {
167
162
  return {
168
163
  rel: nofollow ? 'nofollow' : '',
169
164
  ...rest
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation-link/index.js"],"names":["name","metadata","settings","icon","linkIcon","__experimentalLabel","label","merge","leftAttributes","rightLabel","edit","save","example","attributes","url","deprecated","isEligible","nofollow","type","description","id","opensInNewTab","default","migrate","rest","rel","transforms","init","enhanceNavigationLinkVariations"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AAKA;;AAEA;;AACA;;AACA;;AACA;;AAhBA;AACA;AACA;;AAMA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAEC,iBADiB;AAGvBC,EAAAA,mBAAmB,EAAE;AAAA,QAAE;AAAEC,MAAAA;AAAF,KAAF;AAAA,WAAiBA,KAAjB;AAAA,GAHE;;AAKvBC,EAAAA,KAAK,CAAEC,cAAF,SAA+C;AAAA,QAA7B;AAAEF,MAAAA,KAAK,EAAEG,UAAU,GAAG;AAAtB,KAA6B;AACnD,WAAO,EACN,GAAGD,cADG;AAENF,MAAAA,KAAK,EAAEE,cAAc,CAACF,KAAf,GAAuBG;AAFxB,KAAP;AAIA,GAVsB;;AAYvBC,EAAAA,IAAI,EAAJA,aAZuB;AAcvBC,EAAAA,IAAI,EAAJA,aAduB;AAgBvBC,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXP,MAAAA,KAAK,EAAE,cAAI,cAAJ,EAAoB,iCAApB,CADI;AAEXQ,MAAAA,GAAG,EAAE;AAFM;AADJ,GAhBc;AAuBvBC,EAAAA,UAAU,EAAE,CACX;AACCC,IAAAA,UAAU,CAAEH,UAAF,EAAe;AACxB,aAAOA,UAAU,CAACI,QAAlB;AACA,KAHF;;AAKCJ,IAAAA,UAAU,EAAE;AACXP,MAAAA,KAAK,EAAE;AACNY,QAAAA,IAAI,EAAE;AADA,OADI;AAIXA,MAAAA,IAAI,EAAE;AACLA,QAAAA,IAAI,EAAE;AADD,OAJK;AAOXD,MAAAA,QAAQ,EAAE;AACTC,QAAAA,IAAI,EAAE;AADG,OAPC;AAUXC,MAAAA,WAAW,EAAE;AACZD,QAAAA,IAAI,EAAE;AADM,OAVF;AAaXE,MAAAA,EAAE,EAAE;AACHF,QAAAA,IAAI,EAAE;AADH,OAbO;AAgBXG,MAAAA,aAAa,EAAE;AACdH,QAAAA,IAAI,EAAE,SADQ;AAEdI,QAAAA,OAAO,EAAE;AAFK,OAhBJ;AAoBXR,MAAAA,GAAG,EAAE;AACJI,QAAAA,IAAI,EAAE;AADF;AApBM,KALb;;AA8BCK,IAAAA,OAAO,QAA0B;AAAA,UAAxB;AAAEN,QAAAA,QAAF;AAAY,WAAGO;AAAf,OAAwB;AAChC,aAAO;AACNC,QAAAA,GAAG,EAAER,QAAQ,GAAG,UAAH,GAAgB,EADvB;AAEN,WAAGO;AAFG,OAAP;AAIA,KAnCF;;AAqCCb,IAAAA,IAAI,GAAG;AACN,aAAO,4BAAC,wBAAD,CAAa,OAAb,OAAP;AACA;;AAvCF,GADW,CAvBW;AAkEvBe,EAAAA,UAAU,EAAVA;AAlEuB,CAAjB;;;AAqEA,MAAMC,IAAI,GAAG,MAAM;AACzB,wBACC,0BADD,EAEC,sBAFD,EAGCC,uCAHD;AAMA,SAAO,wBAAW;AAAE5B,IAAAA,IAAF;AAAQC,IAAAA,QAAR;AAAkBC,IAAAA;AAAlB,GAAX,CAAP;AACA,CARM","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { _x } from '@wordpress/i18n';\nimport { customLink as linkIcon } from '@wordpress/icons';\nimport { InnerBlocks } from '@wordpress/block-editor';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport save from './save';\nimport { enhanceNavigationLinkVariations } from './hooks';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon: linkIcon,\n\n\t__experimentalLabel: ( { label } ) => label,\n\n\tmerge( leftAttributes, { label: rightLabel = '' } ) {\n\t\treturn {\n\t\t\t...leftAttributes,\n\t\t\tlabel: leftAttributes.label + rightLabel,\n\t\t};\n\t},\n\n\tedit,\n\n\tsave,\n\n\texample: {\n\t\tattributes: {\n\t\t\tlabel: _x( 'Example Link', 'navigation link preview example' ),\n\t\t\turl: 'https://example.com',\n\t\t},\n\t},\n\n\tdeprecated: [\n\t\t{\n\t\t\tisEligible( attributes ) {\n\t\t\t\treturn attributes.nofollow;\n\t\t\t},\n\n\t\t\tattributes: {\n\t\t\t\tlabel: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t},\n\t\t\t\ttype: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t},\n\t\t\t\tnofollow: {\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t},\n\t\t\t\tdescription: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'number',\n\t\t\t\t},\n\t\t\t\topensInNewTab: {\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\tdefault: false,\n\t\t\t\t},\n\t\t\t\turl: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t},\n\t\t\t},\n\n\t\t\tmigrate( { nofollow, ...rest } ) {\n\t\t\t\treturn {\n\t\t\t\t\trel: nofollow ? 'nofollow' : '',\n\t\t\t\t\t...rest,\n\t\t\t\t};\n\t\t\t},\n\n\t\t\tsave() {\n\t\t\t\treturn <InnerBlocks.Content />;\n\t\t\t},\n\t\t},\n\t],\n\ttransforms,\n};\n\nexport const init = () => {\n\taddFilter(\n\t\t'blocks.registerBlockType',\n\t\t'core/navigation-link',\n\t\tenhanceNavigationLinkVariations\n\t);\n\n\treturn initBlock( { name, metadata, settings } );\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation-link/index.js"],"names":["name","metadata","settings","icon","linkIcon","__experimentalLabel","label","merge","leftAttributes","rightLabel","edit","save","example","attributes","url","deprecated","isEligible","nofollow","type","description","id","opensInNewTab","default","migrate","rest","rel","transforms","init","enhanceNavigationLinkVariations"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AAKA;;AAEA;;AACA;;AACA;;AACA;;AAhBA;AACA;AACA;;AAMA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAEC,iBADiB;AAGvBC,EAAAA,mBAAmB,EAAE,CAAE;AAAEC,IAAAA;AAAF,GAAF,KAAiBA,KAHf;;AAKvBC,EAAAA,KAAK,CAAEC,cAAF,EAAkB;AAAEF,IAAAA,KAAK,EAAEG,UAAU,GAAG;AAAtB,GAAlB,EAA+C;AACnD,WAAO,EACN,GAAGD,cADG;AAENF,MAAAA,KAAK,EAAEE,cAAc,CAACF,KAAf,GAAuBG;AAFxB,KAAP;AAIA,GAVsB;;AAYvBC,EAAAA,IAAI,EAAJA,aAZuB;AAcvBC,EAAAA,IAAI,EAAJA,aAduB;AAgBvBC,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXP,MAAAA,KAAK,EAAE,cAAI,cAAJ,EAAoB,iCAApB,CADI;AAEXQ,MAAAA,GAAG,EAAE;AAFM;AADJ,GAhBc;AAuBvBC,EAAAA,UAAU,EAAE,CACX;AACCC,IAAAA,UAAU,CAAEH,UAAF,EAAe;AACxB,aAAOA,UAAU,CAACI,QAAlB;AACA,KAHF;;AAKCJ,IAAAA,UAAU,EAAE;AACXP,MAAAA,KAAK,EAAE;AACNY,QAAAA,IAAI,EAAE;AADA,OADI;AAIXA,MAAAA,IAAI,EAAE;AACLA,QAAAA,IAAI,EAAE;AADD,OAJK;AAOXD,MAAAA,QAAQ,EAAE;AACTC,QAAAA,IAAI,EAAE;AADG,OAPC;AAUXC,MAAAA,WAAW,EAAE;AACZD,QAAAA,IAAI,EAAE;AADM,OAVF;AAaXE,MAAAA,EAAE,EAAE;AACHF,QAAAA,IAAI,EAAE;AADH,OAbO;AAgBXG,MAAAA,aAAa,EAAE;AACdH,QAAAA,IAAI,EAAE,SADQ;AAEdI,QAAAA,OAAO,EAAE;AAFK,OAhBJ;AAoBXR,MAAAA,GAAG,EAAE;AACJI,QAAAA,IAAI,EAAE;AADF;AApBM,KALb;;AA8BCK,IAAAA,OAAO,CAAE;AAAEN,MAAAA,QAAF;AAAY,SAAGO;AAAf,KAAF,EAA0B;AAChC,aAAO;AACNC,QAAAA,GAAG,EAAER,QAAQ,GAAG,UAAH,GAAgB,EADvB;AAEN,WAAGO;AAFG,OAAP;AAIA,KAnCF;;AAqCCb,IAAAA,IAAI,GAAG;AACN,aAAO,4BAAC,wBAAD,CAAa,OAAb,OAAP;AACA;;AAvCF,GADW,CAvBW;AAkEvBe,EAAAA,UAAU,EAAVA;AAlEuB,CAAjB;;;AAqEA,MAAMC,IAAI,GAAG,MAAM;AACzB,wBACC,0BADD,EAEC,sBAFD,EAGCC,uCAHD;AAMA,SAAO,wBAAW;AAAE5B,IAAAA,IAAF;AAAQC,IAAAA,QAAR;AAAkBC,IAAAA;AAAlB,GAAX,CAAP;AACA,CARM","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { _x } from '@wordpress/i18n';\nimport { customLink as linkIcon } from '@wordpress/icons';\nimport { InnerBlocks } from '@wordpress/block-editor';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport save from './save';\nimport { enhanceNavigationLinkVariations } from './hooks';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon: linkIcon,\n\n\t__experimentalLabel: ( { label } ) => label,\n\n\tmerge( leftAttributes, { label: rightLabel = '' } ) {\n\t\treturn {\n\t\t\t...leftAttributes,\n\t\t\tlabel: leftAttributes.label + rightLabel,\n\t\t};\n\t},\n\n\tedit,\n\n\tsave,\n\n\texample: {\n\t\tattributes: {\n\t\t\tlabel: _x( 'Example Link', 'navigation link preview example' ),\n\t\t\turl: 'https://example.com',\n\t\t},\n\t},\n\n\tdeprecated: [\n\t\t{\n\t\t\tisEligible( attributes ) {\n\t\t\t\treturn attributes.nofollow;\n\t\t\t},\n\n\t\t\tattributes: {\n\t\t\t\tlabel: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t},\n\t\t\t\ttype: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t},\n\t\t\t\tnofollow: {\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t},\n\t\t\t\tdescription: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\ttype: 'number',\n\t\t\t\t},\n\t\t\t\topensInNewTab: {\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\tdefault: false,\n\t\t\t\t},\n\t\t\t\turl: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t},\n\t\t\t},\n\n\t\t\tmigrate( { nofollow, ...rest } ) {\n\t\t\t\treturn {\n\t\t\t\t\trel: nofollow ? 'nofollow' : '',\n\t\t\t\t\t...rest,\n\t\t\t\t};\n\t\t\t},\n\n\t\t\tsave() {\n\t\t\t\treturn <InnerBlocks.Content />;\n\t\t\t},\n\t\t},\n\t],\n\ttransforms,\n};\n\nexport const init = () => {\n\taddFilter(\n\t\t'blocks.registerBlockType',\n\t\t'core/navigation-link',\n\t\tenhanceNavigationLinkVariations\n\t);\n\n\treturn initBlock( { name, metadata, settings } );\n};\n"]}
@@ -88,10 +88,9 @@ function getSuggestionsQuery(type, kind) {
88
88
  */
89
89
 
90
90
 
91
- function LinkControlTransforms(_ref) {
92
- let {
93
- clientId
94
- } = _ref;
91
+ function LinkControlTransforms({
92
+ clientId
93
+ }) {
95
94
  const {
96
95
  getBlock,
97
96
  blockTransforms
@@ -114,7 +113,7 @@ function LinkControlTransforms(_ref) {
114
113
  return featuredBlocks.includes(item.name);
115
114
  });
116
115
 
117
- if (!(transforms !== null && transforms !== void 0 && transforms.length)) {
116
+ if (!transforms?.length) {
118
117
  return null;
119
118
  }
120
119
 
@@ -175,12 +174,14 @@ function LinkUI(props) {
175
174
  opensInNewTab,
176
175
  type,
177
176
  kind
178
- } = props.link;
179
- const link = {
177
+ } = props.link; // Memoize link value to avoid overriding the LinkControl's internal state.
178
+ // This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/50976#issuecomment-1568226407.
179
+
180
+ const link = (0, _element.useMemo)(() => ({
180
181
  url,
181
182
  opensInNewTab,
182
183
  title: label && (0, _dom.__unstableStripHTML)(label)
183
- };
184
+ }), [label, opensInNewTab, url]);
184
185
  return (0, _element.createElement)(_components.Popover, {
185
186
  placement: "bottom",
186
187
  onClose: props.onClose,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation-link/link-ui.js"],"names":["getSuggestionsQuery","type","kind","subtype","LinkControlTransforms","clientId","getBlock","blockTransforms","select","_getBlock","getBlockRootClientId","getBlockTransformItems","blockEditorStore","replaceBlock","featuredBlocks","transforms","filter","item","includes","name","length","map","index","icon","title","LinkUI","props","saveEntityRecord","coreStore","handleCreate","pageTitle","postType","link","page","status","id","rendered","url","label","opensInNewTab","onClose","anchor","className","hasCreateSuggestion","searchTerm","format","mark","onChange","onRemove","onCancel"],"mappings":";;;;;;;;AAWA;;AARA;;AACA;;AACA;;AACA;;AAMA;;AACA;;AACA;;AACA;;AAfA;AACA;AACA;;AAeA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,mBAAT,CAA8BC,IAA9B,EAAoCC,IAApC,EAA2C;AACjD,UAASD,IAAT;AACC,SAAK,MAAL;AACA,SAAK,MAAL;AACC,aAAO;AAAEA,QAAAA,IAAI,EAAE,MAAR;AAAgBE,QAAAA,OAAO,EAAEF;AAAzB,OAAP;;AACD,SAAK,UAAL;AACC,aAAO;AAAEA,QAAAA,IAAI,EAAE,MAAR;AAAgBE,QAAAA,OAAO,EAAE;AAAzB,OAAP;;AACD,SAAK,KAAL;AACC,aAAO;AAAEF,QAAAA,IAAI,EAAE,MAAR;AAAgBE,QAAAA,OAAO,EAAE;AAAzB,OAAP;;AACD,SAAK,aAAL;AACC,aAAO;AAAEF,QAAAA,IAAI,EAAE;AAAR,OAAP;;AACD;AACC,UAAKC,IAAI,KAAK,UAAd,EAA2B;AAC1B,eAAO;AAAED,UAAAA,IAAI,EAAE,MAAR;AAAgBE,UAAAA,OAAO,EAAEF;AAAzB,SAAP;AACA;;AACD,UAAKC,IAAI,KAAK,WAAd,EAA4B;AAC3B,eAAO;AAAED,UAAAA,IAAI,EAAE,MAAR;AAAgBE,UAAAA,OAAO,EAAEF;AAAzB,SAAP;AACA;;AACD,aAAO,EAAP;AAjBF;AAmBA;AAED;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASG,qBAAT,OAA+C;AAAA,MAAf;AAAEC,IAAAA;AAAF,GAAe;AAC9C,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA;AAAZ,MAAgC,qBACnCC,MAAF,IAAc;AACb,UAAM;AACLF,MAAAA,QAAQ,EAAEG,SADL;AAELC,MAAAA,oBAFK;AAGLC,MAAAA;AAHK,QAIFH,MAAM,CAAEI,kBAAF,CAJV;AAMA,WAAO;AACNN,MAAAA,QAAQ,EAAEG,SADJ;AAENF,MAAAA,eAAe,EAAEI,sBAAsB,CACtCF,SAAS,CAAEJ,QAAF,CAD6B,EAEtCK,oBAAoB,CAAEL,QAAF,CAFkB;AAFjC,KAAP;AAOA,GAfoC,EAgBrC,CAAEA,QAAF,CAhBqC,CAAtC;AAmBA,QAAM;AAAEQ,IAAAA;AAAF,MAAmB,uBAAaD,kBAAb,CAAzB;AAEA,QAAME,cAAc,GAAG,CACtB,gBADsB,EAEtB,gBAFsB,EAGtB,mBAHsB,EAItB,aAJsB,CAAvB;AAOA,QAAMC,UAAU,GAAGR,eAAe,CAACS,MAAhB,CAA0BC,IAAF,IAAY;AACtD,WAAOH,cAAc,CAACI,QAAf,CAAyBD,IAAI,CAACE,IAA9B,CAAP;AACA,GAFkB,CAAnB;;AAIA,MAAK,EAAEJ,UAAF,aAAEA,UAAF,eAAEA,UAAU,CAAEK,MAAd,CAAL,EAA4B;AAC3B,WAAO,IAAP;AACA;;AAED,MAAK,CAAEf,QAAP,EAAkB;AACjB,WAAO,IAAP;AACA;;AAED,SACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC;AAAI,IAAA,SAAS,EAAC;AAAd,KACG,cAAI,WAAJ,CADH,CADD,EAIC;AAAK,IAAA,SAAS,EAAC;AAAf,KACGU,UAAU,CAACM,GAAX,CAAgB,CAAEJ,IAAF,EAAQK,KAAR,KAAmB;AACpC,WACC,4BAAC,kBAAD;AACC,MAAA,GAAG,EAAI,aAAaA,KAAO,EAD5B;AAEC,MAAA,OAAO,EAAG,MACTT,YAAY,CACXR,QADW,EAEX,+BACCC,QAAQ,CAAED,QAAF,CADT,EAECY,IAAI,CAACE,IAFN,CAFW,CAHd;AAWC,MAAA,SAAS,EAAC;AAXX,OAaC,4BAAC,sBAAD;AAAW,MAAA,IAAI,EAAGF,IAAI,CAACM;AAAvB,MAbD,EAcGN,IAAI,CAACO,KAdR,CADD;AAkBA,GAnBC,CADH,CAJD,CADD;AA6BA;;AAEM,SAASC,MAAT,CAAiBC,KAAjB,EAAyB;AAC/B,QAAM;AAAEC,IAAAA;AAAF,MAAuB,uBAAaC,eAAb,CAA7B;;AAEA,iBAAeC,YAAf,CAA6BC,SAA7B,EAAyC;AACxC,UAAMC,QAAQ,GAAGL,KAAK,CAACM,IAAN,CAAW/B,IAAX,IAAmB,MAApC;AAEA,UAAMgC,IAAI,GAAG,MAAMN,gBAAgB,CAAE,UAAF,EAAcI,QAAd,EAAwB;AAC1DP,MAAAA,KAAK,EAAEM,SADmD;AAE1DI,MAAAA,MAAM,EAAE;AAFkD,KAAxB,CAAnC;AAKA,WAAO;AACNC,MAAAA,EAAE,EAAEF,IAAI,CAACE,EADH;AAENlC,MAAAA,IAAI,EAAE8B,QAFA;AAGN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAP,MAAAA,KAAK,EAAE,kCAAgBS,IAAI,CAACT,KAAL,CAAWY,QAA3B,CAbD;AAcNC,MAAAA,GAAG,EAAEJ,IAAI,CAACD,IAdJ;AAeN9B,MAAAA,IAAI,EAAE;AAfA,KAAP;AAiBA;;AAED,QAAM;AAAEoC,IAAAA,KAAF;AAASD,IAAAA,GAAT;AAAcE,IAAAA,aAAd;AAA6BtC,IAAAA,IAA7B;AAAmCC,IAAAA;AAAnC,MAA4CwB,KAAK,CAACM,IAAxD;AACA,QAAMA,IAAI,GAAG;AACZK,IAAAA,GADY;AAEZE,IAAAA,aAFY;AAGZf,IAAAA,KAAK,EAAEc,KAAK,IAAI,8BAAWA,KAAX;AAHJ,GAAb;AAMA,SACC,4BAAC,mBAAD;AACC,IAAA,SAAS,EAAC,QADX;AAEC,IAAA,OAAO,EAAGZ,KAAK,CAACc,OAFjB;AAGC,IAAA,MAAM,EAAGd,KAAK,CAACe,MAHhB;AAIC,IAAA,KAAK;AAJN,KAMC,4BAAC,sCAAD;AACC,IAAA,cAAc,MADf;AAEC,IAAA,eAAe,MAFhB;AAGC,IAAA,SAAS,EAAGf,KAAK,CAACgB,SAHnB;AAIC,IAAA,KAAK,EAAGV,IAJT;AAKC,IAAA,sBAAsB,EAAG,IAL1B;AAMC,IAAA,oBAAoB,EAAGN,KAAK,CAACiB,mBAN9B;AAOC,IAAA,gBAAgB,EAAGd,YAPpB;AAQC,IAAA,0BAA0B,EAAKe,UAAF,IAAkB;AAC9C,UAAIC,MAAJ;;AAEA,UAAK5C,IAAI,KAAK,MAAd,EAAuB;AACtB;AACA4C,QAAAA,MAAM,GAAG,cAAI,oCAAJ,CAAT;AACA,OAHD,MAGO;AACN;AACAA,QAAAA,MAAM,GAAG,cAAI,oCAAJ,CAAT;AACA;;AAED,aAAO,uCACN,mBAASA,MAAT,EAAiBD,UAAjB,CADM,EAEN;AACCE,QAAAA,IAAI,EAAE;AADP,OAFM,CAAP;AAMA,KAzBF;AA0BC,IAAA,aAAa,EAAG,CAAC,CAAE7C,IA1BpB;AA2BC,IAAA,eAAe,EAAG,CAAC,CAAEA,IA3BtB;AA4BC,IAAA,gBAAgB,EAAGD,mBAAmB,CAAEC,IAAF,EAAQC,IAAR,CA5BvC;AA6BC,IAAA,QAAQ,EAAGwB,KAAK,CAACqB,QA7BlB;AA8BC,IAAA,QAAQ,EAAGrB,KAAK,CAACsB,QA9BlB;AA+BC,IAAA,QAAQ,EAAGtB,KAAK,CAACuB,QA/BlB;AAgCC,IAAA,mBAAmB,EAClB,CAAEZ,GAAF,GACG,MACA,4BAAC,qBAAD;AACC,MAAA,QAAQ,EAAGX,KAAK,CAACrB;AADlB,MAFH,GAMG;AAvCL,IAND,CADD;AAmDA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport { Popover, Button } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalLinkControl as LinkControl,\n\tBlockIcon,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { createInterpolateElement } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { switchToBlockType } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Given the Link block's type attribute, return the query params to give to\n * /wp/v2/search.\n *\n * @param {string} type Link block's type attribute.\n * @param {string} kind Link block's entity of kind (post-type|taxonomy)\n * @return {{ type?: string, subtype?: string }} Search query params.\n */\nexport function getSuggestionsQuery( type, kind ) {\n\tswitch ( type ) {\n\t\tcase 'post':\n\t\tcase 'page':\n\t\t\treturn { type: 'post', subtype: type };\n\t\tcase 'category':\n\t\t\treturn { type: 'term', subtype: 'category' };\n\t\tcase 'tag':\n\t\t\treturn { type: 'term', subtype: 'post_tag' };\n\t\tcase 'post_format':\n\t\t\treturn { type: 'post-format' };\n\t\tdefault:\n\t\t\tif ( kind === 'taxonomy' ) {\n\t\t\t\treturn { type: 'term', subtype: type };\n\t\t\t}\n\t\t\tif ( kind === 'post-type' ) {\n\t\t\t\treturn { type: 'post', subtype: type };\n\t\t\t}\n\t\t\treturn {};\n\t}\n}\n\n/**\n * Add transforms to Link Control\n *\n * @param {Object} props Component props.\n * @param {string} props.clientId Block client ID.\n */\nfunction LinkControlTransforms( { clientId } ) {\n\tconst { getBlock, blockTransforms } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlock: _getBlock,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetBlockTransformItems,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\tgetBlock: _getBlock,\n\t\t\t\tblockTransforms: getBlockTransformItems(\n\t\t\t\t\t_getBlock( clientId ),\n\t\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { replaceBlock } = useDispatch( blockEditorStore );\n\n\tconst featuredBlocks = [\n\t\t'core/page-list',\n\t\t'core/site-logo',\n\t\t'core/social-links',\n\t\t'core/search',\n\t];\n\n\tconst transforms = blockTransforms.filter( ( item ) => {\n\t\treturn featuredBlocks.includes( item.name );\n\t} );\n\n\tif ( ! transforms?.length ) {\n\t\treturn null;\n\t}\n\n\tif ( ! clientId ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div className=\"link-control-transform\">\n\t\t\t<h3 className=\"link-control-transform__subheading\">\n\t\t\t\t{ __( 'Transform' ) }\n\t\t\t</h3>\n\t\t\t<div className=\"link-control-transform__items\">\n\t\t\t\t{ transforms.map( ( item, index ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ `transform-${ index }` }\n\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\treplaceBlock(\n\t\t\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\t\t\tswitchToBlockType(\n\t\t\t\t\t\t\t\t\t\tgetBlock( clientId ),\n\t\t\t\t\t\t\t\t\t\titem.name\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclassName=\"link-control-transform__item\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockIcon icon={ item.icon } />\n\t\t\t\t\t\t\t{ item.title }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nexport function LinkUI( props ) {\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\tasync function handleCreate( pageTitle ) {\n\t\tconst postType = props.link.type || 'page';\n\n\t\tconst page = await saveEntityRecord( 'postType', postType, {\n\t\t\ttitle: pageTitle,\n\t\t\tstatus: 'draft',\n\t\t} );\n\n\t\treturn {\n\t\t\tid: page.id,\n\t\t\ttype: postType,\n\t\t\t// Make `title` property consistent with that in `fetchLinkSuggestions` where the `rendered` title (containing HTML entities)\n\t\t\t// is also being decoded. By being consistent in both locations we avoid having to branch in the rendering output code.\n\t\t\t// Ideally in the future we will update both APIs to utilise the \"raw\" form of the title which is better suited to edit contexts.\n\t\t\t// e.g.\n\t\t\t// - title.raw = \"Yes & No\"\n\t\t\t// - title.rendered = \"Yes &#038; No\"\n\t\t\t// - decodeEntities( title.rendered ) = \"Yes & No\"\n\t\t\t// See:\n\t\t\t// - https://github.com/WordPress/gutenberg/pull/41063\n\t\t\t// - https://github.com/WordPress/gutenberg/blob/a1e1fdc0e6278457e9f4fc0b31ac6d2095f5450b/packages/core-data/src/fetch/__experimental-fetch-link-suggestions.js#L212-L218\n\t\t\ttitle: decodeEntities( page.title.rendered ),\n\t\t\turl: page.link,\n\t\t\tkind: 'post-type',\n\t\t};\n\t}\n\n\tconst { label, url, opensInNewTab, type, kind } = props.link;\n\tconst link = {\n\t\turl,\n\t\topensInNewTab,\n\t\ttitle: label && stripHTML( label ),\n\t};\n\n\treturn (\n\t\t<Popover\n\t\t\tplacement=\"bottom\"\n\t\t\tonClose={ props.onClose }\n\t\t\tanchor={ props.anchor }\n\t\t\tshift\n\t\t>\n\t\t\t<LinkControl\n\t\t\t\thasTextControl\n\t\t\t\thasRichPreviews\n\t\t\t\tclassName={ props.className }\n\t\t\t\tvalue={ link }\n\t\t\t\tshowInitialSuggestions={ true }\n\t\t\t\twithCreateSuggestion={ props.hasCreateSuggestion }\n\t\t\t\tcreateSuggestion={ handleCreate }\n\t\t\t\tcreateSuggestionButtonText={ ( searchTerm ) => {\n\t\t\t\t\tlet format;\n\n\t\t\t\t\tif ( type === 'post' ) {\n\t\t\t\t\t\t/* translators: %s: search term. */\n\t\t\t\t\t\tformat = __( 'Create draft post: <mark>%s</mark>' );\n\t\t\t\t\t} else {\n\t\t\t\t\t\t/* translators: %s: search term. */\n\t\t\t\t\t\tformat = __( 'Create draft page: <mark>%s</mark>' );\n\t\t\t\t\t}\n\n\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\tsprintf( format, searchTerm ),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tmark: <mark />,\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t\tnoDirectEntry={ !! type }\n\t\t\t\tnoURLSuggestion={ !! type }\n\t\t\t\tsuggestionsQuery={ getSuggestionsQuery( type, kind ) }\n\t\t\t\tonChange={ props.onChange }\n\t\t\t\tonRemove={ props.onRemove }\n\t\t\t\tonCancel={ props.onCancel }\n\t\t\t\trenderControlBottom={\n\t\t\t\t\t! url\n\t\t\t\t\t\t? () => (\n\t\t\t\t\t\t\t\t<LinkControlTransforms\n\t\t\t\t\t\t\t\t\tclientId={ props.clientId }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: null\n\t\t\t\t}\n\t\t\t/>\n\t\t</Popover>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation-link/link-ui.js"],"names":["getSuggestionsQuery","type","kind","subtype","LinkControlTransforms","clientId","getBlock","blockTransforms","select","_getBlock","getBlockRootClientId","getBlockTransformItems","blockEditorStore","replaceBlock","featuredBlocks","transforms","filter","item","includes","name","length","map","index","icon","title","LinkUI","props","saveEntityRecord","coreStore","handleCreate","pageTitle","postType","link","page","status","id","rendered","url","label","opensInNewTab","onClose","anchor","className","hasCreateSuggestion","searchTerm","format","mark","onChange","onRemove","onCancel"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport { Popover, Button } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalLinkControl as LinkControl,\n\tBlockIcon,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { createInterpolateElement, useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { switchToBlockType } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Given the Link block's type attribute, return the query params to give to\n * /wp/v2/search.\n *\n * @param {string} type Link block's type attribute.\n * @param {string} kind Link block's entity of kind (post-type|taxonomy)\n * @return {{ type?: string, subtype?: string }} Search query params.\n */\nexport function getSuggestionsQuery( type, kind ) {\n\tswitch ( type ) {\n\t\tcase 'post':\n\t\tcase 'page':\n\t\t\treturn { type: 'post', subtype: type };\n\t\tcase 'category':\n\t\t\treturn { type: 'term', subtype: 'category' };\n\t\tcase 'tag':\n\t\t\treturn { type: 'term', subtype: 'post_tag' };\n\t\tcase 'post_format':\n\t\t\treturn { type: 'post-format' };\n\t\tdefault:\n\t\t\tif ( kind === 'taxonomy' ) {\n\t\t\t\treturn { type: 'term', subtype: type };\n\t\t\t}\n\t\t\tif ( kind === 'post-type' ) {\n\t\t\t\treturn { type: 'post', subtype: type };\n\t\t\t}\n\t\t\treturn {};\n\t}\n}\n\n/**\n * Add transforms to Link Control\n *\n * @param {Object} props Component props.\n * @param {string} props.clientId Block client ID.\n */\nfunction LinkControlTransforms( { clientId } ) {\n\tconst { getBlock, blockTransforms } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlock: _getBlock,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetBlockTransformItems,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\tgetBlock: _getBlock,\n\t\t\t\tblockTransforms: getBlockTransformItems(\n\t\t\t\t\t_getBlock( clientId ),\n\t\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { replaceBlock } = useDispatch( blockEditorStore );\n\n\tconst featuredBlocks = [\n\t\t'core/page-list',\n\t\t'core/site-logo',\n\t\t'core/social-links',\n\t\t'core/search',\n\t];\n\n\tconst transforms = blockTransforms.filter( ( item ) => {\n\t\treturn featuredBlocks.includes( item.name );\n\t} );\n\n\tif ( ! transforms?.length ) {\n\t\treturn null;\n\t}\n\n\tif ( ! clientId ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div className=\"link-control-transform\">\n\t\t\t<h3 className=\"link-control-transform__subheading\">\n\t\t\t\t{ __( 'Transform' ) }\n\t\t\t</h3>\n\t\t\t<div className=\"link-control-transform__items\">\n\t\t\t\t{ transforms.map( ( item, index ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ `transform-${ index }` }\n\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\treplaceBlock(\n\t\t\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\t\t\tswitchToBlockType(\n\t\t\t\t\t\t\t\t\t\tgetBlock( clientId ),\n\t\t\t\t\t\t\t\t\t\titem.name\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclassName=\"link-control-transform__item\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockIcon icon={ item.icon } />\n\t\t\t\t\t\t\t{ item.title }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nexport function LinkUI( props ) {\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\tasync function handleCreate( pageTitle ) {\n\t\tconst postType = props.link.type || 'page';\n\n\t\tconst page = await saveEntityRecord( 'postType', postType, {\n\t\t\ttitle: pageTitle,\n\t\t\tstatus: 'draft',\n\t\t} );\n\n\t\treturn {\n\t\t\tid: page.id,\n\t\t\ttype: postType,\n\t\t\t// Make `title` property consistent with that in `fetchLinkSuggestions` where the `rendered` title (containing HTML entities)\n\t\t\t// is also being decoded. By being consistent in both locations we avoid having to branch in the rendering output code.\n\t\t\t// Ideally in the future we will update both APIs to utilise the \"raw\" form of the title which is better suited to edit contexts.\n\t\t\t// e.g.\n\t\t\t// - title.raw = \"Yes & No\"\n\t\t\t// - title.rendered = \"Yes &#038; No\"\n\t\t\t// - decodeEntities( title.rendered ) = \"Yes & No\"\n\t\t\t// See:\n\t\t\t// - https://github.com/WordPress/gutenberg/pull/41063\n\t\t\t// - https://github.com/WordPress/gutenberg/blob/a1e1fdc0e6278457e9f4fc0b31ac6d2095f5450b/packages/core-data/src/fetch/__experimental-fetch-link-suggestions.js#L212-L218\n\t\t\ttitle: decodeEntities( page.title.rendered ),\n\t\t\turl: page.link,\n\t\t\tkind: 'post-type',\n\t\t};\n\t}\n\n\tconst { label, url, opensInNewTab, type, kind } = props.link;\n\n\t// Memoize link value to avoid overriding the LinkControl's internal state.\n\t// This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/50976#issuecomment-1568226407.\n\tconst link = useMemo(\n\t\t() => ( {\n\t\t\turl,\n\t\t\topensInNewTab,\n\t\t\ttitle: label && stripHTML( label ),\n\t\t} ),\n\t\t[ label, opensInNewTab, url ]\n\t);\n\n\treturn (\n\t\t<Popover\n\t\t\tplacement=\"bottom\"\n\t\t\tonClose={ props.onClose }\n\t\t\tanchor={ props.anchor }\n\t\t\tshift\n\t\t>\n\t\t\t<LinkControl\n\t\t\t\thasTextControl\n\t\t\t\thasRichPreviews\n\t\t\t\tclassName={ props.className }\n\t\t\t\tvalue={ link }\n\t\t\t\tshowInitialSuggestions={ true }\n\t\t\t\twithCreateSuggestion={ props.hasCreateSuggestion }\n\t\t\t\tcreateSuggestion={ handleCreate }\n\t\t\t\tcreateSuggestionButtonText={ ( searchTerm ) => {\n\t\t\t\t\tlet format;\n\n\t\t\t\t\tif ( type === 'post' ) {\n\t\t\t\t\t\t/* translators: %s: search term. */\n\t\t\t\t\t\tformat = __( 'Create draft post: <mark>%s</mark>' );\n\t\t\t\t\t} else {\n\t\t\t\t\t\t/* translators: %s: search term. */\n\t\t\t\t\t\tformat = __( 'Create draft page: <mark>%s</mark>' );\n\t\t\t\t\t}\n\n\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\tsprintf( format, searchTerm ),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tmark: <mark />,\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t\tnoDirectEntry={ !! type }\n\t\t\t\tnoURLSuggestion={ !! type }\n\t\t\t\tsuggestionsQuery={ getSuggestionsQuery( type, kind ) }\n\t\t\t\tonChange={ props.onChange }\n\t\t\t\tonRemove={ props.onRemove }\n\t\t\t\tonCancel={ props.onCancel }\n\t\t\t\trenderControlBottom={\n\t\t\t\t\t! url\n\t\t\t\t\t\t? () => (\n\t\t\t\t\t\t\t\t<LinkControlTransforms\n\t\t\t\t\t\t\t\t\tclientId={ props.clientId }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: null\n\t\t\t\t}\n\t\t\t/>\n\t\t</Popover>\n\t);\n}\n"]}
@@ -40,10 +40,7 @@ var _url = require("@wordpress/url");
40
40
  * @param {WPNavigationLinkBlockAttributes} blockAttributes Current block attributes.
41
41
  *
42
42
  */
43
- const updateAttributes = function () {
44
- let updatedValue = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
45
- let setAttributes = arguments.length > 1 ? arguments[1] : undefined;
46
- let blockAttributes = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
43
+ const updateAttributes = (updatedValue = {}, setAttributes, blockAttributes = {}) => {
47
44
  const {
48
45
  label: originalLabel = '',
49
46
  kind: originalKind = '',
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation-link/update-attributes.js"],"names":["updateAttributes","updatedValue","setAttributes","blockAttributes","label","originalLabel","kind","originalKind","type","originalType","title","newLabel","url","newUrl","opensInNewTab","id","newKind","newType","newLabelWithoutHttp","replace","newUrlWithoutHttp","useNewLabel","isBuiltInType","indexOf","isCustomLink","encodeURI","undefined","Number","isInteger"],"mappings":";;;;;;;AAGA;;AACA;;AAJA;AACA;AACA;;AAIA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEO,MAAMA,gBAAgB,GAAG,YAI3B;AAAA,MAHJC,YAGI,uEAHW,EAGX;AAAA,MAFJC,aAEI;AAAA,MADJC,eACI,uEADc,EACd;AACJ,QAAM;AACLC,IAAAA,KAAK,EAAEC,aAAa,GAAG,EADlB;AAELC,IAAAA,IAAI,EAAEC,YAAY,GAAG,EAFhB;AAGLC,IAAAA,IAAI,EAAEC,YAAY,GAAG;AAHhB,MAIFN,eAJJ;AAMA,QAAM;AACLO,IAAAA,KAAK,EAAEC,QAAQ,GAAG,EADb;AACiB;AACtBC,IAAAA,GAAG,EAAEC,MAAM,GAAG,EAFT;AAGLC,IAAAA,aAHK;AAILC,IAAAA,EAJK;AAKLT,IAAAA,IAAI,EAAEU,OAAO,GAAGT,YALX;AAMLC,IAAAA,IAAI,EAAES,OAAO,GAAGR;AANX,MAOFR,YAPJ;AASA,QAAMiB,mBAAmB,GAAGP,QAAQ,CAACQ,OAAT,CAAkB,iBAAlB,EAAqC,EAArC,CAA5B;AACA,QAAMC,iBAAiB,GAAGP,MAAM,CAACM,OAAP,CAAgB,iBAAhB,EAAmC,EAAnC,CAA1B;AAEA,QAAME,WAAW,GAChBV,QAAQ,IACRA,QAAQ,KAAKN,aADb,IAEA;AACA;AACA;AACA;AACA;AACA;AACAa,EAAAA,mBAAmB,KAAKE,iBATzB,CAnBI,CA8BJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,QAAMhB,KAAK,GAAGiB,WAAW,GACtB,4BAAYV,QAAZ,CADsB,GAEtBN,aAAa,IAAI,4BAAYe,iBAAZ,CAFpB,CAvCI,CA2CJ;;AACA,QAAMZ,IAAI,GAAGS,OAAO,KAAK,UAAZ,GAAyB,KAAzB,GAAiCA,OAAO,CAACE,OAAR,CAAiB,GAAjB,EAAsB,GAAtB,CAA9C;AAEA,QAAMG,aAAa,GAClB,CAAE,MAAF,EAAU,MAAV,EAAkB,KAAlB,EAAyB,UAAzB,EAAsCC,OAAtC,CAA+Cf,IAA/C,IAAwD,CAAC,CAD1D;AAGA,QAAMgB,YAAY,GACf,CAAER,OAAF,IAAa,CAAEM,aAAjB,IAAoCN,OAAO,KAAK,QADjD;AAEA,QAAMV,IAAI,GAAGkB,YAAY,GAAG,QAAH,GAAcR,OAAvC;AAEAd,EAAAA,aAAa,CAAE,EACd;AACA,QAAKW,MAAM,IAAI;AAAED,MAAAA,GAAG,EAAEa,SAAS,CAAE,wBAAeZ,MAAf,CAAF;AAAhB,KAAf,CAFc;AAGd,QAAKT,KAAK,IAAI;AAAEA,MAAAA;AAAF,KAAd,CAHc;AAId,QAAKsB,SAAS,KAAKZ,aAAd,IAA+B;AAAEA,MAAAA;AAAF,KAApC,CAJc;AAKd,QAAKC,EAAE,IAAIY,MAAM,CAACC,SAAP,CAAkBb,EAAlB,CAAN,IAAgC;AAAEA,MAAAA;AAAF,KAArC,CALc;AAMd,QAAKT,IAAI,IAAI;AAAEA,MAAAA;AAAF,KAAb,CANc;AAOd,QAAKE,IAAI,IAAIA,IAAI,KAAK,KAAjB,IAA0B;AAAEA,MAAAA;AAAF,KAA/B;AAPc,GAAF,CAAb;AASA,CAlEM","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { escapeHTML } from '@wordpress/escape-html';\nimport { safeDecodeURI } from '@wordpress/url';\n\n/**\n * @typedef {'post-type'|'custom'|'taxonomy'|'post-type-archive'} WPNavigationLinkKind\n */\n/**\n * Navigation Link Block Attributes\n *\n * @typedef {Object} WPNavigationLinkBlockAttributes\n *\n * @property {string} [label] Link text.\n * @property {WPNavigationLinkKind} [kind] Kind is used to differentiate between term and post ids to check post draft status.\n * @property {string} [type] The type such as post, page, tag, category and other custom types.\n * @property {string} [rel] The relationship of the linked URL.\n * @property {number} [id] A post or term id.\n * @property {boolean} [opensInNewTab] Sets link target to _blank when true.\n * @property {string} [url] Link href.\n * @property {string} [title] Link title attribute.\n */\n/**\n * Link Control onChange handler that updates block attributes when a setting is changed.\n *\n * @param {Object} updatedValue New block attributes to update.\n * @param {Function} setAttributes Block attribute update function.\n * @param {WPNavigationLinkBlockAttributes} blockAttributes Current block attributes.\n *\n */\n\nexport const updateAttributes = (\n\tupdatedValue = {},\n\tsetAttributes,\n\tblockAttributes = {}\n) => {\n\tconst {\n\t\tlabel: originalLabel = '',\n\t\tkind: originalKind = '',\n\t\ttype: originalType = '',\n\t} = blockAttributes;\n\n\tconst {\n\t\ttitle: newLabel = '', // the title of any provided Post.\n\t\turl: newUrl = '',\n\t\topensInNewTab,\n\t\tid,\n\t\tkind: newKind = originalKind,\n\t\ttype: newType = originalType,\n\t} = updatedValue;\n\n\tconst newLabelWithoutHttp = newLabel.replace( /http(s?):\\/\\//gi, '' );\n\tconst newUrlWithoutHttp = newUrl.replace( /http(s?):\\/\\//gi, '' );\n\n\tconst useNewLabel =\n\t\tnewLabel &&\n\t\tnewLabel !== originalLabel &&\n\t\t// LinkControl without the title field relies\n\t\t// on the check below. Specifically, it assumes that\n\t\t// the URL is the same as a title.\n\t\t// This logic a) looks suspicious and b) should really\n\t\t// live in the LinkControl and not here. It's a great\n\t\t// candidate for future refactoring.\n\t\tnewLabelWithoutHttp !== newUrlWithoutHttp;\n\n\t// Unfortunately this causes the escaping model to be inverted.\n\t// The escaped content is stored in the block attributes (and ultimately in the database),\n\t// and then the raw data is \"recovered\" when outputting into the DOM.\n\t// It would be preferable to store the **raw** data in the block attributes and escape it in JS.\n\t// Why? Because there isn't one way to escape data. Depending on the context, you need to do\n\t// different transforms. It doesn't make sense to me to choose one of them for the purposes of storage.\n\t// See also:\n\t// - https://github.com/WordPress/gutenberg/pull/41063\n\t// - https://github.com/WordPress/gutenberg/pull/18617.\n\tconst label = useNewLabel\n\t\t? escapeHTML( newLabel )\n\t\t: originalLabel || escapeHTML( newUrlWithoutHttp );\n\n\t// In https://github.com/WordPress/gutenberg/pull/24670 we decided to use \"tag\" in favor of \"post_tag\"\n\tconst type = newType === 'post_tag' ? 'tag' : newType.replace( '-', '_' );\n\n\tconst isBuiltInType =\n\t\t[ 'post', 'page', 'tag', 'category' ].indexOf( type ) > -1;\n\n\tconst isCustomLink =\n\t\t( ! newKind && ! isBuiltInType ) || newKind === 'custom';\n\tconst kind = isCustomLink ? 'custom' : newKind;\n\n\tsetAttributes( {\n\t\t// Passed `url` may already be encoded. To prevent double encoding, decodeURI is executed to revert to the original string.\n\t\t...( newUrl && { url: encodeURI( safeDecodeURI( newUrl ) ) } ),\n\t\t...( label && { label } ),\n\t\t...( undefined !== opensInNewTab && { opensInNewTab } ),\n\t\t...( id && Number.isInteger( id ) && { id } ),\n\t\t...( kind && { kind } ),\n\t\t...( type && type !== 'URL' && { type } ),\n\t} );\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation-link/update-attributes.js"],"names":["updateAttributes","updatedValue","setAttributes","blockAttributes","label","originalLabel","kind","originalKind","type","originalType","title","newLabel","url","newUrl","opensInNewTab","id","newKind","newType","newLabelWithoutHttp","replace","newUrlWithoutHttp","useNewLabel","isBuiltInType","indexOf","isCustomLink","encodeURI","undefined","Number","isInteger"],"mappings":";;;;;;;AAGA;;AACA;;AAJA;AACA;AACA;;AAIA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEO,MAAMA,gBAAgB,GAAG,CAC/BC,YAAY,GAAG,EADgB,EAE/BC,aAF+B,EAG/BC,eAAe,GAAG,EAHa,KAI3B;AACJ,QAAM;AACLC,IAAAA,KAAK,EAAEC,aAAa,GAAG,EADlB;AAELC,IAAAA,IAAI,EAAEC,YAAY,GAAG,EAFhB;AAGLC,IAAAA,IAAI,EAAEC,YAAY,GAAG;AAHhB,MAIFN,eAJJ;AAMA,QAAM;AACLO,IAAAA,KAAK,EAAEC,QAAQ,GAAG,EADb;AACiB;AACtBC,IAAAA,GAAG,EAAEC,MAAM,GAAG,EAFT;AAGLC,IAAAA,aAHK;AAILC,IAAAA,EAJK;AAKLT,IAAAA,IAAI,EAAEU,OAAO,GAAGT,YALX;AAMLC,IAAAA,IAAI,EAAES,OAAO,GAAGR;AANX,MAOFR,YAPJ;AASA,QAAMiB,mBAAmB,GAAGP,QAAQ,CAACQ,OAAT,CAAkB,iBAAlB,EAAqC,EAArC,CAA5B;AACA,QAAMC,iBAAiB,GAAGP,MAAM,CAACM,OAAP,CAAgB,iBAAhB,EAAmC,EAAnC,CAA1B;AAEA,QAAME,WAAW,GAChBV,QAAQ,IACRA,QAAQ,KAAKN,aADb,IAEA;AACA;AACA;AACA;AACA;AACA;AACAa,EAAAA,mBAAmB,KAAKE,iBATzB,CAnBI,CA8BJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,QAAMhB,KAAK,GAAGiB,WAAW,GACtB,4BAAYV,QAAZ,CADsB,GAEtBN,aAAa,IAAI,4BAAYe,iBAAZ,CAFpB,CAvCI,CA2CJ;;AACA,QAAMZ,IAAI,GAAGS,OAAO,KAAK,UAAZ,GAAyB,KAAzB,GAAiCA,OAAO,CAACE,OAAR,CAAiB,GAAjB,EAAsB,GAAtB,CAA9C;AAEA,QAAMG,aAAa,GAClB,CAAE,MAAF,EAAU,MAAV,EAAkB,KAAlB,EAAyB,UAAzB,EAAsCC,OAAtC,CAA+Cf,IAA/C,IAAwD,CAAC,CAD1D;AAGA,QAAMgB,YAAY,GACf,CAAER,OAAF,IAAa,CAAEM,aAAjB,IAAoCN,OAAO,KAAK,QADjD;AAEA,QAAMV,IAAI,GAAGkB,YAAY,GAAG,QAAH,GAAcR,OAAvC;AAEAd,EAAAA,aAAa,CAAE,EACd;AACA,QAAKW,MAAM,IAAI;AAAED,MAAAA,GAAG,EAAEa,SAAS,CAAE,wBAAeZ,MAAf,CAAF;AAAhB,KAAf,CAFc;AAGd,QAAKT,KAAK,IAAI;AAAEA,MAAAA;AAAF,KAAd,CAHc;AAId,QAAKsB,SAAS,KAAKZ,aAAd,IAA+B;AAAEA,MAAAA;AAAF,KAApC,CAJc;AAKd,QAAKC,EAAE,IAAIY,MAAM,CAACC,SAAP,CAAkBb,EAAlB,CAAN,IAAgC;AAAEA,MAAAA;AAAF,KAArC,CALc;AAMd,QAAKT,IAAI,IAAI;AAAEA,MAAAA;AAAF,KAAb,CANc;AAOd,QAAKE,IAAI,IAAIA,IAAI,KAAK,KAAjB,IAA0B;AAAEA,MAAAA;AAAF,KAA/B;AAPc,GAAF,CAAb;AASA,CAlEM","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { escapeHTML } from '@wordpress/escape-html';\nimport { safeDecodeURI } from '@wordpress/url';\n\n/**\n * @typedef {'post-type'|'custom'|'taxonomy'|'post-type-archive'} WPNavigationLinkKind\n */\n/**\n * Navigation Link Block Attributes\n *\n * @typedef {Object} WPNavigationLinkBlockAttributes\n *\n * @property {string} [label] Link text.\n * @property {WPNavigationLinkKind} [kind] Kind is used to differentiate between term and post ids to check post draft status.\n * @property {string} [type] The type such as post, page, tag, category and other custom types.\n * @property {string} [rel] The relationship of the linked URL.\n * @property {number} [id] A post or term id.\n * @property {boolean} [opensInNewTab] Sets link target to _blank when true.\n * @property {string} [url] Link href.\n * @property {string} [title] Link title attribute.\n */\n/**\n * Link Control onChange handler that updates block attributes when a setting is changed.\n *\n * @param {Object} updatedValue New block attributes to update.\n * @param {Function} setAttributes Block attribute update function.\n * @param {WPNavigationLinkBlockAttributes} blockAttributes Current block attributes.\n *\n */\n\nexport const updateAttributes = (\n\tupdatedValue = {},\n\tsetAttributes,\n\tblockAttributes = {}\n) => {\n\tconst {\n\t\tlabel: originalLabel = '',\n\t\tkind: originalKind = '',\n\t\ttype: originalType = '',\n\t} = blockAttributes;\n\n\tconst {\n\t\ttitle: newLabel = '', // the title of any provided Post.\n\t\turl: newUrl = '',\n\t\topensInNewTab,\n\t\tid,\n\t\tkind: newKind = originalKind,\n\t\ttype: newType = originalType,\n\t} = updatedValue;\n\n\tconst newLabelWithoutHttp = newLabel.replace( /http(s?):\\/\\//gi, '' );\n\tconst newUrlWithoutHttp = newUrl.replace( /http(s?):\\/\\//gi, '' );\n\n\tconst useNewLabel =\n\t\tnewLabel &&\n\t\tnewLabel !== originalLabel &&\n\t\t// LinkControl without the title field relies\n\t\t// on the check below. Specifically, it assumes that\n\t\t// the URL is the same as a title.\n\t\t// This logic a) looks suspicious and b) should really\n\t\t// live in the LinkControl and not here. It's a great\n\t\t// candidate for future refactoring.\n\t\tnewLabelWithoutHttp !== newUrlWithoutHttp;\n\n\t// Unfortunately this causes the escaping model to be inverted.\n\t// The escaped content is stored in the block attributes (and ultimately in the database),\n\t// and then the raw data is \"recovered\" when outputting into the DOM.\n\t// It would be preferable to store the **raw** data in the block attributes and escape it in JS.\n\t// Why? Because there isn't one way to escape data. Depending on the context, you need to do\n\t// different transforms. It doesn't make sense to me to choose one of them for the purposes of storage.\n\t// See also:\n\t// - https://github.com/WordPress/gutenberg/pull/41063\n\t// - https://github.com/WordPress/gutenberg/pull/18617.\n\tconst label = useNewLabel\n\t\t? escapeHTML( newLabel )\n\t\t: originalLabel || escapeHTML( newUrlWithoutHttp );\n\n\t// In https://github.com/WordPress/gutenberg/pull/24670 we decided to use \"tag\" in favor of \"post_tag\"\n\tconst type = newType === 'post_tag' ? 'tag' : newType.replace( '-', '_' );\n\n\tconst isBuiltInType =\n\t\t[ 'post', 'page', 'tag', 'category' ].indexOf( type ) > -1;\n\n\tconst isCustomLink =\n\t\t( ! newKind && ! isBuiltInType ) || newKind === 'custom';\n\tconst kind = isCustomLink ? 'custom' : newKind;\n\n\tsetAttributes( {\n\t\t// Passed `url` may already be encoded. To prevent double encoding, decodeURI is executed to revert to the original string.\n\t\t...( newUrl && { url: encodeURI( safeDecodeURI( newUrl ) ) } ),\n\t\t...( label && { label } ),\n\t\t...( undefined !== opensInNewTab && { opensInNewTab } ),\n\t\t...( id && Number.isInteger( id ) && { id } ),\n\t\t...( kind && { kind } ),\n\t\t...( type && type !== 'URL' && { type } ),\n\t} );\n};\n"]}
@@ -58,7 +58,7 @@ const {
58
58
  name: name
59
59
  } = {
60
60
  $schema: "https://schemas.wp.org/trunk/block.json",
61
- apiVersion: 2,
61
+ apiVersion: 3,
62
62
  name: "core/navigation-submenu",
63
63
  title: "Submenu",
64
64
  category: "design",
@@ -180,16 +180,15 @@ const useIsDraggingWithin = elementRef => {
180
180
  */
181
181
 
182
182
 
183
- function NavigationSubmenuEdit(_ref) {
184
- let {
185
- attributes,
186
- isSelected,
187
- setAttributes,
188
- mergeBlocks,
189
- onReplace,
190
- context,
191
- clientId
192
- } = _ref;
183
+ function NavigationSubmenuEdit({
184
+ attributes,
185
+ isSelected,
186
+ setAttributes,
187
+ mergeBlocks,
188
+ onReplace,
189
+ context,
190
+ clientId
191
+ }) {
193
192
  const {
194
193
  label,
195
194
  type,
@@ -242,11 +241,9 @@ function NavigationSubmenuEdit(_ref) {
242
241
  // is a link block in a "placeholder" state with no label then
243
242
  // we can consider as an "empty" link.
244
243
 
245
- if ((selectedBlockChildren === null || selectedBlockChildren === void 0 ? void 0 : selectedBlockChildren.length) === 1) {
246
- var _singleBlock$attribut;
247
-
244
+ if (selectedBlockChildren?.length === 1) {
248
245
  const singleBlock = getBlock(selectedBlockChildren[0]);
249
- _onlyDescendantIsEmptyLink = (singleBlock === null || singleBlock === void 0 ? void 0 : singleBlock.name) === 'core/navigation-link' && !(singleBlock !== null && singleBlock !== void 0 && (_singleBlock$attribut = singleBlock.attributes) !== null && _singleBlock$attribut !== void 0 && _singleBlock$attribut.label);
246
+ _onlyDescendantIsEmptyLink = singleBlock?.name === 'core/navigation-link' && !singleBlock?.attributes?.label;
250
247
  }
251
248
 
252
249
  return {
@@ -255,7 +252,7 @@ function NavigationSubmenuEdit(_ref) {
255
252
  isParentOfSelectedBlock: hasSelectedInnerBlock(clientId, true),
256
253
  isImmediateParentOfSelectedBlock: hasSelectedInnerBlock(clientId, false),
257
254
  hasChildren: !!getBlockCount(clientId),
258
- selectedBlockHasChildren: !!(selectedBlockChildren !== null && selectedBlockChildren !== void 0 && selectedBlockChildren.length),
255
+ selectedBlockHasChildren: !!selectedBlockChildren?.length,
259
256
  onlyDescendantIsEmptyLink: _onlyDescendantIsEmptyLink
260
257
  };
261
258
  }, [clientId]);