@wordpress/block-library 7.4.0 → 7.7.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 (798) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/README.md +3 -2
  3. package/babel-plugin.js +154 -0
  4. package/build/audio/edit.js +4 -16
  5. package/build/audio/edit.js.map +1 -1
  6. package/build/block/edit.js +10 -9
  7. package/build/block/edit.js.map +1 -1
  8. package/build/button/deprecated.js +175 -35
  9. package/build/button/deprecated.js.map +1 -1
  10. package/build/button/edit.js +1 -1
  11. package/build/button/edit.js.map +1 -1
  12. package/build/button/edit.native.js +7 -3
  13. package/build/button/edit.native.js.map +1 -1
  14. package/build/button/index.js +1 -0
  15. package/build/button/index.js.map +1 -1
  16. package/build/button/save.js +1 -1
  17. package/build/button/save.js.map +1 -1
  18. package/build/categories/edit.js +1 -1
  19. package/build/categories/edit.js.map +1 -1
  20. package/build/categories/index.js +1 -1
  21. package/build/columns/index.js +3 -1
  22. package/build/columns/index.js.map +1 -1
  23. package/build/comment-author-avatar/index.js +1 -0
  24. package/build/comment-author-avatar/index.js.map +1 -1
  25. package/build/comment-template/edit.js +1 -3
  26. package/build/comment-template/edit.js.map +1 -1
  27. package/build/{comments-query-loop → comments}/edit/comments-inspector-controls.js +0 -0
  28. package/{build-module/comments-query-loop → build/comments}/edit/comments-inspector-controls.js.map +1 -1
  29. package/build/{comments-query-loop → comments}/edit.js +3 -3
  30. package/build/comments/edit.js.map +1 -0
  31. package/build/{comments-query-loop → comments}/index.js +1 -1
  32. package/build/comments/index.js.map +1 -0
  33. package/build/{comments-query-loop → comments}/save.js +2 -2
  34. package/build/comments/save.js.map +1 -0
  35. package/build/comments-title/deprecated.js +110 -0
  36. package/build/comments-title/deprecated.js.map +1 -0
  37. package/build/comments-title/edit.js +35 -35
  38. package/build/comments-title/edit.js.map +1 -1
  39. package/build/comments-title/index.js +5 -8
  40. package/build/comments-title/index.js.map +1 -1
  41. package/build/cover/controls.native.js +2 -3
  42. package/build/cover/controls.native.js.map +1 -1
  43. package/build/cover/deprecated.js +212 -207
  44. package/build/cover/deprecated.js.map +1 -1
  45. package/build/cover/edit/block-controls.js +115 -0
  46. package/build/cover/edit/block-controls.js.map +1 -0
  47. package/build/cover/edit/cover-placeholder.js +49 -0
  48. package/build/cover/edit/cover-placeholder.js.map +1 -0
  49. package/build/cover/edit/index.js +343 -0
  50. package/build/cover/edit/index.js.map +1 -0
  51. package/build/cover/edit/inspector-controls.js +224 -0
  52. package/build/cover/edit/inspector-controls.js.map +1 -0
  53. package/build/cover/edit/resizable-cover.js +67 -0
  54. package/build/cover/edit/resizable-cover.js.map +1 -0
  55. package/build/cover/edit/use-cover-is-dark.js +81 -0
  56. package/build/cover/edit/use-cover-is-dark.js.map +1 -0
  57. package/build/cover/edit.native.js +36 -16
  58. package/build/cover/edit.native.js.map +1 -1
  59. package/build/cover/focal-point-settings-button.native.js.map +1 -1
  60. package/build/cover/save.js +18 -5
  61. package/build/cover/save.js.map +1 -1
  62. package/build/cover/shared.js +15 -9
  63. package/build/cover/shared.js.map +1 -1
  64. package/build/cover/transforms.js +77 -6
  65. package/build/cover/transforms.js.map +1 -1
  66. package/build/cover/use-cover-is-dark.native.js +60 -0
  67. package/build/cover/use-cover-is-dark.native.js.map +1 -0
  68. package/build/embed/embed-preview.js +1 -1
  69. package/build/embed/embed-preview.js.map +1 -1
  70. package/build/file/edit.js +1 -1
  71. package/build/file/edit.js.map +1 -1
  72. package/build/file/edit.native.js +0 -1
  73. package/build/file/edit.native.js.map +1 -1
  74. package/build/file/save.js +9 -1
  75. package/build/file/save.js.map +1 -1
  76. package/build/gallery/edit.js +2 -1
  77. package/build/gallery/edit.js.map +1 -1
  78. package/build/gallery/gallery.js +1 -1
  79. package/build/gallery/gallery.js.map +1 -1
  80. package/build/gallery/gap-styles.js +14 -4
  81. package/build/gallery/gap-styles.js.map +1 -1
  82. package/build/gallery/index.js +1 -1
  83. package/build/gallery/shared.js +2 -2
  84. package/build/gallery/shared.js.map +1 -1
  85. package/build/gallery/use-get-media.js +2 -1
  86. package/build/gallery/use-get-media.js.map +1 -1
  87. package/build/gallery/use-short-code-transform.js +19 -18
  88. package/build/gallery/use-short-code-transform.js.map +1 -1
  89. package/build/gallery/v1/gallery.js +1 -1
  90. package/build/gallery/v1/gallery.js.map +1 -1
  91. package/build/group/index.js +1 -0
  92. package/build/group/index.js.map +1 -1
  93. package/build/heading/edit.js +6 -2
  94. package/build/heading/edit.js.map +1 -1
  95. package/build/heading/index.js +1 -0
  96. package/build/heading/index.js.map +1 -1
  97. package/build/heading/transforms.js +9 -4
  98. package/build/heading/transforms.js.map +1 -1
  99. package/build/image/edit.js +5 -56
  100. package/build/image/edit.js.map +1 -1
  101. package/build/image/edit.native.js +56 -4
  102. package/build/image/edit.native.js.map +1 -1
  103. package/build/image/image.js +4 -14
  104. package/build/image/image.js.map +1 -1
  105. package/build/index.js +48 -14
  106. package/build/index.js.map +1 -1
  107. package/build/is-block-metadata-experimental.js +18 -0
  108. package/build/is-block-metadata-experimental.js.map +1 -0
  109. package/build/latest-posts/edit.js +30 -4
  110. package/build/latest-posts/edit.js.map +1 -1
  111. package/build/latest-posts/edit.native.js +49 -0
  112. package/build/latest-posts/edit.native.js.map +1 -1
  113. package/build/list/transforms.js +6 -0
  114. package/build/list/transforms.js.map +1 -1
  115. package/build/list/v2/edit.js +2 -1
  116. package/build/list/v2/edit.js.map +1 -1
  117. package/build/list/v2/migrate.js +1 -0
  118. package/build/list/v2/migrate.js.map +1 -1
  119. package/build/list/v2/transforms.js +46 -9
  120. package/build/list/v2/transforms.js.map +1 -1
  121. package/build/list-item/edit.js +7 -9
  122. package/build/list-item/edit.js.map +1 -1
  123. package/build/list-item/hooks/index.js +24 -0
  124. package/build/list-item/hooks/index.js.map +1 -1
  125. package/build/list-item/hooks/use-backspace.js +59 -0
  126. package/build/list-item/hooks/use-backspace.js.map +1 -0
  127. package/build/list-item/hooks/use-enter.js +6 -9
  128. package/build/list-item/hooks/use-enter.js.map +1 -1
  129. package/build/list-item/hooks/use-indent-list-item.js +33 -39
  130. package/build/list-item/hooks/use-indent-list-item.js.map +1 -1
  131. package/build/list-item/hooks/use-space.js +54 -0
  132. package/build/list-item/hooks/use-space.js.map +1 -0
  133. package/build/list-item/hooks/use-split.js +44 -0
  134. package/build/list-item/hooks/use-split.js.map +1 -0
  135. package/build/list-item/index.js +1 -0
  136. package/build/list-item/index.js.map +1 -1
  137. package/build/list-item/utils.js +1 -1
  138. package/build/list-item/utils.js.map +1 -1
  139. package/build/media-text/edit.native.js +2 -1
  140. package/build/media-text/edit.native.js.map +1 -1
  141. package/build/media-text/media-container.native.js +2 -4
  142. package/build/media-text/media-container.native.js.map +1 -1
  143. package/build/media-text/transforms.js +137 -8
  144. package/build/media-text/transforms.js.map +1 -1
  145. package/build/navigation/edit/index.js +91 -109
  146. package/build/navigation/edit/index.js.map +1 -1
  147. package/build/navigation/edit/inner-blocks.js +6 -12
  148. package/build/navigation/edit/inner-blocks.js.map +1 -1
  149. package/build/navigation/index.js +0 -1
  150. package/build/navigation/index.js.map +1 -1
  151. package/build/navigation/use-navigation-entities.js +3 -3
  152. package/build/navigation/use-navigation-entities.js.map +1 -1
  153. package/build/navigation/view-modal.js +25 -0
  154. package/build/navigation/view-modal.js.map +1 -1
  155. package/build/navigation-link/edit.js +60 -35
  156. package/build/navigation-link/edit.js.map +1 -1
  157. package/build/navigation-link/fallback-variations.js +1 -1
  158. package/build/navigation-link/fallback-variations.js.map +1 -1
  159. package/build/navigation-link/hooks.js +1 -1
  160. package/build/navigation-link/hooks.js.map +1 -1
  161. package/build/navigation-submenu/edit.js +14 -14
  162. package/build/navigation-submenu/edit.js.map +1 -1
  163. package/build/page-list/convert-to-links-modal.js +1 -1
  164. package/build/page-list/convert-to-links-modal.js.map +1 -1
  165. package/build/page-list/edit.js +1 -1
  166. package/build/page-list/edit.js.map +1 -1
  167. package/build/paragraph/edit.js +10 -0
  168. package/build/paragraph/edit.js.map +1 -1
  169. package/build/paragraph/use-enter.js +94 -0
  170. package/build/paragraph/use-enter.js.map +1 -0
  171. package/build/post-author/edit.js +1 -1
  172. package/build/post-author/edit.js.map +1 -1
  173. package/build/post-author-name/index.js +4 -0
  174. package/build/post-author-name/index.js.map +1 -1
  175. package/build/post-author-name/transforms.js +41 -0
  176. package/build/post-author-name/transforms.js.map +1 -0
  177. package/build/post-comment/index.js +2 -1
  178. package/build/post-comment/index.js.map +1 -1
  179. package/build/post-comments/edit.js +138 -35
  180. package/build/post-comments/edit.js.map +1 -1
  181. package/build/post-comments/index.js +3 -2
  182. package/build/post-comments/index.js.map +1 -1
  183. package/build/post-comments-count/index.js +1 -0
  184. package/build/post-comments-count/index.js.map +1 -1
  185. package/build/post-comments-form/edit.js +38 -4
  186. package/build/post-comments-form/edit.js.map +1 -1
  187. package/build/post-comments-form/form.js +58 -0
  188. package/build/post-comments-form/form.js.map +1 -0
  189. package/build/post-comments-form/index.js +1 -0
  190. package/build/post-comments-form/index.js.map +1 -1
  191. package/build/post-comments-link/index.js +1 -0
  192. package/build/post-comments-link/index.js.map +1 -1
  193. package/build/post-content/edit.js +1 -1
  194. package/build/post-content/edit.js.map +1 -1
  195. package/build/post-date/edit.js +13 -7
  196. package/build/post-date/edit.js.map +1 -1
  197. package/build/post-excerpt/edit.js +1 -1
  198. package/build/post-excerpt/edit.js.map +1 -1
  199. package/build/post-featured-image/edit.js +1 -1
  200. package/build/post-featured-image/edit.js.map +1 -1
  201. package/build/post-template/edit.js +7 -2
  202. package/build/post-template/edit.js.map +1 -1
  203. package/build/post-terms/edit.js +35 -4
  204. package/build/post-terms/edit.js.map +1 -1
  205. package/build/post-terms/hooks.js +33 -0
  206. package/build/post-terms/hooks.js.map +1 -0
  207. package/build/post-terms/index.js +20 -5
  208. package/build/post-terms/index.js.map +1 -1
  209. package/build/post-title/index.js +1 -1
  210. package/build/post-title/index.js.map +1 -1
  211. package/build/pullquote/edit.js +1 -1
  212. package/build/pullquote/edit.js.map +1 -1
  213. package/build/pullquote/edit.native.js +1 -1
  214. package/build/pullquote/edit.native.js.map +1 -1
  215. package/build/query/edit/inspector-controls/index.js +26 -17
  216. package/build/query/edit/inspector-controls/index.js.map +1 -1
  217. package/build/query/edit/inspector-controls/parent-control.js +148 -0
  218. package/build/query/edit/inspector-controls/parent-control.js.map +1 -0
  219. package/build/query/edit/inspector-controls/sticky-control.js +41 -0
  220. package/build/query/edit/inspector-controls/sticky-control.js.map +1 -0
  221. package/build/query/index.js +2 -1
  222. package/build/query/index.js.map +1 -1
  223. package/build/query/utils.js +28 -2
  224. package/build/query/utils.js.map +1 -1
  225. package/build/query-no-results/edit.js +1 -1
  226. package/build/query-no-results/edit.js.map +1 -1
  227. package/build/query-title/index.js +1 -1
  228. package/build/query-title/index.js.map +1 -1
  229. package/build/query-title/variations.js +1 -1
  230. package/build/query-title/variations.js.map +1 -1
  231. package/build/quote/edit.js +3 -2
  232. package/build/quote/edit.js.map +1 -1
  233. package/build/quote/index.js +1 -0
  234. package/build/quote/index.js.map +1 -1
  235. package/build/quote/v2/edit.js +1 -1
  236. package/build/quote/v2/edit.js.map +1 -1
  237. package/build/search/edit.js +2 -1
  238. package/build/search/edit.js.map +1 -1
  239. package/build/search/index.js +4 -0
  240. package/build/search/index.js.map +1 -1
  241. package/build/separator/index.js +3 -0
  242. package/build/separator/index.js.map +1 -1
  243. package/build/shortcode/edit.native.js +16 -13
  244. package/build/shortcode/edit.native.js.map +1 -1
  245. package/build/site-logo/edit.js +1 -1
  246. package/build/site-logo/edit.js.map +1 -1
  247. package/build/social-links/edit.js +2 -2
  248. package/build/social-links/edit.js.map +1 -1
  249. package/build/table/edit.js +15 -2
  250. package/build/table/edit.js.map +1 -1
  251. package/build/table-of-contents/edit.js +145 -65
  252. package/build/table-of-contents/edit.js.map +1 -1
  253. package/build/table-of-contents/index.js +13 -3
  254. package/build/table-of-contents/index.js.map +1 -1
  255. package/build/table-of-contents/list.js +16 -9
  256. package/build/table-of-contents/list.js.map +1 -1
  257. package/build/table-of-contents/save.js +40 -0
  258. package/build/table-of-contents/save.js.map +1 -0
  259. package/build/table-of-contents/utils.js +11 -77
  260. package/build/table-of-contents/utils.js.map +1 -1
  261. package/build/template-part/edit/index.js +7 -3
  262. package/build/template-part/edit/index.js.map +1 -1
  263. package/build/template-part/edit/inner-blocks.js +3 -8
  264. package/build/template-part/edit/inner-blocks.js.map +1 -1
  265. package/build/video/edit.js +4 -8
  266. package/build/video/edit.js.map +1 -1
  267. package/build-module/audio/edit.js +5 -17
  268. package/build-module/audio/edit.js.map +1 -1
  269. package/build-module/block/edit.js +11 -10
  270. package/build-module/block/edit.js.map +1 -1
  271. package/build-module/button/deprecated.js +175 -35
  272. package/build-module/button/deprecated.js.map +1 -1
  273. package/build-module/button/edit.js +2 -2
  274. package/build-module/button/edit.js.map +1 -1
  275. package/build-module/button/edit.native.js +7 -3
  276. package/build-module/button/edit.native.js.map +1 -1
  277. package/build-module/button/index.js +1 -0
  278. package/build-module/button/index.js.map +1 -1
  279. package/build-module/button/save.js +2 -2
  280. package/build-module/button/save.js.map +1 -1
  281. package/build-module/categories/edit.js +1 -1
  282. package/build-module/categories/edit.js.map +1 -1
  283. package/build-module/categories/index.js +1 -1
  284. package/build-module/columns/index.js +3 -1
  285. package/build-module/columns/index.js.map +1 -1
  286. package/build-module/comment-author-avatar/index.js +1 -0
  287. package/build-module/comment-author-avatar/index.js.map +1 -1
  288. package/build-module/comment-template/edit.js +1 -3
  289. package/build-module/comment-template/edit.js.map +1 -1
  290. package/build-module/{comments-query-loop → comments}/edit/comments-inspector-controls.js +0 -0
  291. package/build-module/comments/edit/comments-inspector-controls.js.map +1 -0
  292. package/build-module/{comments-query-loop → comments}/edit.js +2 -2
  293. package/build-module/comments/edit.js.map +1 -0
  294. package/build-module/{comments-query-loop → comments}/index.js +1 -1
  295. package/build-module/comments/index.js.map +1 -0
  296. package/build-module/{comments-query-loop → comments}/save.js +1 -1
  297. package/build-module/comments/save.js.map +1 -0
  298. package/build-module/comments-title/deprecated.js +102 -0
  299. package/build-module/comments-title/deprecated.js.map +1 -0
  300. package/build-module/comments-title/edit.js +38 -38
  301. package/build-module/comments-title/edit.js.map +1 -1
  302. package/build-module/comments-title/index.js +4 -8
  303. package/build-module/comments-title/index.js.map +1 -1
  304. package/build-module/cover/controls.native.js +2 -3
  305. package/build-module/cover/controls.native.js.map +1 -1
  306. package/build-module/cover/deprecated.js +206 -198
  307. package/build-module/cover/deprecated.js.map +1 -1
  308. package/build-module/cover/edit/block-controls.js +104 -0
  309. package/build-module/cover/edit/block-controls.js.map +1 -0
  310. package/build-module/cover/edit/cover-placeholder.js +38 -0
  311. package/build-module/cover/edit/cover-placeholder.js.map +1 -0
  312. package/build-module/cover/edit/index.js +317 -0
  313. package/build-module/cover/edit/index.js.map +1 -0
  314. package/build-module/cover/edit/inspector-controls.js +215 -0
  315. package/build-module/cover/edit/inspector-controls.js.map +1 -0
  316. package/build-module/cover/edit/resizable-cover.js +55 -0
  317. package/build-module/cover/edit/resizable-cover.js.map +1 -0
  318. package/build-module/cover/edit/use-cover-is-dark.js +70 -0
  319. package/build-module/cover/edit/use-cover-is-dark.js.map +1 -0
  320. package/build-module/cover/edit.native.js +35 -17
  321. package/build-module/cover/edit.native.js.map +1 -1
  322. package/build-module/cover/focal-point-settings-button.native.js.map +1 -1
  323. package/build-module/cover/save.js +19 -6
  324. package/build-module/cover/save.js.map +1 -1
  325. package/build-module/cover/shared.js +11 -5
  326. package/build-module/cover/shared.js.map +1 -1
  327. package/build-module/cover/transforms.js +74 -6
  328. package/build-module/cover/transforms.js.map +1 -1
  329. package/build-module/cover/use-cover-is-dark.native.js +51 -0
  330. package/build-module/cover/use-cover-is-dark.native.js.map +1 -0
  331. package/build-module/embed/embed-preview.js +2 -2
  332. package/build-module/embed/embed-preview.js.map +1 -1
  333. package/build-module/file/edit.js +2 -2
  334. package/build-module/file/edit.js.map +1 -1
  335. package/build-module/file/edit.native.js +0 -1
  336. package/build-module/file/edit.native.js.map +1 -1
  337. package/build-module/file/save.js +7 -2
  338. package/build-module/file/save.js.map +1 -1
  339. package/build-module/gallery/edit.js +2 -1
  340. package/build-module/gallery/edit.js.map +1 -1
  341. package/build-module/gallery/gallery.js +2 -2
  342. package/build-module/gallery/gallery.js.map +1 -1
  343. package/build-module/gallery/gap-styles.js +14 -4
  344. package/build-module/gallery/gap-styles.js.map +1 -1
  345. package/build-module/gallery/index.js +1 -1
  346. package/build-module/gallery/shared.js +2 -2
  347. package/build-module/gallery/shared.js.map +1 -1
  348. package/build-module/gallery/use-get-media.js +2 -1
  349. package/build-module/gallery/use-get-media.js.map +1 -1
  350. package/build-module/gallery/use-short-code-transform.js +19 -18
  351. package/build-module/gallery/use-short-code-transform.js.map +1 -1
  352. package/build-module/gallery/v1/gallery.js +2 -2
  353. package/build-module/gallery/v1/gallery.js.map +1 -1
  354. package/build-module/group/index.js +1 -0
  355. package/build-module/group/index.js.map +1 -1
  356. package/build-module/heading/edit.js +6 -2
  357. package/build-module/heading/edit.js.map +1 -1
  358. package/build-module/heading/index.js +1 -0
  359. package/build-module/heading/index.js.map +1 -1
  360. package/build-module/heading/transforms.js +9 -4
  361. package/build-module/heading/transforms.js.map +1 -1
  362. package/build-module/image/edit.js +4 -52
  363. package/build-module/image/edit.js.map +1 -1
  364. package/build-module/image/edit.native.js +57 -6
  365. package/build-module/image/edit.native.js.map +1 -1
  366. package/build-module/image/image.js +6 -16
  367. package/build-module/image/image.js.map +1 -1
  368. package/build-module/index.js +43 -12
  369. package/build-module/index.js.map +1 -1
  370. package/build-module/is-block-metadata-experimental.js +16 -0
  371. package/build-module/is-block-metadata-experimental.js.map +1 -0
  372. package/build-module/latest-posts/edit.js +29 -5
  373. package/build-module/latest-posts/edit.js.map +1 -1
  374. package/build-module/latest-posts/edit.native.js +51 -2
  375. package/build-module/latest-posts/edit.native.js.map +1 -1
  376. package/build-module/list/transforms.js +6 -0
  377. package/build-module/list/transforms.js.map +1 -1
  378. package/build-module/list/v2/edit.js +2 -1
  379. package/build-module/list/v2/edit.js.map +1 -1
  380. package/build-module/list/v2/migrate.js +1 -3
  381. package/build-module/list/v2/migrate.js.map +1 -1
  382. package/build-module/list/v2/transforms.js +46 -9
  383. package/build-module/list/v2/transforms.js.map +1 -1
  384. package/build-module/list-item/edit.js +8 -9
  385. package/build-module/list-item/edit.js.map +1 -1
  386. package/build-module/list-item/hooks/index.js +3 -0
  387. package/build-module/list-item/hooks/index.js.map +1 -1
  388. package/build-module/list-item/hooks/use-backspace.js +44 -0
  389. package/build-module/list-item/hooks/use-backspace.js.map +1 -0
  390. package/build-module/list-item/hooks/use-enter.js +6 -9
  391. package/build-module/list-item/hooks/use-enter.js.map +1 -1
  392. package/build-module/list-item/hooks/use-indent-list-item.js +33 -38
  393. package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -1
  394. package/build-module/list-item/hooks/use-space.js +40 -0
  395. package/build-module/list-item/hooks/use-space.js.map +1 -0
  396. package/build-module/list-item/hooks/use-split.js +33 -0
  397. package/build-module/list-item/hooks/use-split.js.map +1 -0
  398. package/build-module/list-item/index.js +1 -0
  399. package/build-module/list-item/index.js.map +1 -1
  400. package/build-module/list-item/utils.js +1 -1
  401. package/build-module/list-item/utils.js.map +1 -1
  402. package/build-module/media-text/edit.native.js +2 -1
  403. package/build-module/media-text/edit.native.js.map +1 -1
  404. package/build-module/media-text/media-container.native.js +2 -4
  405. package/build-module/media-text/media-container.native.js.map +1 -1
  406. package/build-module/media-text/transforms.js +137 -8
  407. package/build-module/media-text/transforms.js.map +1 -1
  408. package/build-module/navigation/edit/index.js +93 -110
  409. package/build-module/navigation/edit/index.js.map +1 -1
  410. package/build-module/navigation/edit/inner-blocks.js +7 -13
  411. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  412. package/build-module/navigation/index.js +0 -1
  413. package/build-module/navigation/index.js.map +1 -1
  414. package/build-module/navigation/use-navigation-entities.js +1 -1
  415. package/build-module/navigation/use-navigation-entities.js.map +1 -1
  416. package/build-module/navigation/view-modal.js +24 -0
  417. package/build-module/navigation/view-modal.js.map +1 -1
  418. package/build-module/navigation-link/edit.js +60 -36
  419. package/build-module/navigation-link/edit.js.map +1 -1
  420. package/build-module/navigation-link/fallback-variations.js +1 -1
  421. package/build-module/navigation-link/fallback-variations.js.map +1 -1
  422. package/build-module/navigation-link/hooks.js +2 -2
  423. package/build-module/navigation-link/hooks.js.map +1 -1
  424. package/build-module/navigation-submenu/edit.js +14 -14
  425. package/build-module/navigation-submenu/edit.js.map +1 -1
  426. package/build-module/page-list/convert-to-links-modal.js +1 -1
  427. package/build-module/page-list/convert-to-links-modal.js.map +1 -1
  428. package/build-module/page-list/edit.js +1 -1
  429. package/build-module/page-list/edit.js.map +1 -1
  430. package/build-module/paragraph/edit.js +9 -0
  431. package/build-module/paragraph/edit.js.map +1 -1
  432. package/build-module/paragraph/use-enter.js +81 -0
  433. package/build-module/paragraph/use-enter.js.map +1 -0
  434. package/build-module/post-author/edit.js +1 -1
  435. package/build-module/post-author/edit.js.map +1 -1
  436. package/build-module/post-author-name/index.js +3 -0
  437. package/build-module/post-author-name/index.js.map +1 -1
  438. package/build-module/post-author-name/transforms.js +32 -0
  439. package/build-module/post-author-name/transforms.js.map +1 -0
  440. package/build-module/post-comment/index.js +2 -1
  441. package/build-module/post-comment/index.js.map +1 -1
  442. package/build-module/post-comments/edit.js +139 -37
  443. package/build-module/post-comments/edit.js.map +1 -1
  444. package/build-module/post-comments/index.js +3 -2
  445. package/build-module/post-comments/index.js.map +1 -1
  446. package/build-module/post-comments-count/index.js +1 -0
  447. package/build-module/post-comments-count/index.js.map +1 -1
  448. package/build-module/post-comments-form/edit.js +38 -6
  449. package/build-module/post-comments-form/edit.js.map +1 -1
  450. package/build-module/post-comments-form/form.js +45 -0
  451. package/build-module/post-comments-form/form.js.map +1 -0
  452. package/build-module/post-comments-form/index.js +1 -0
  453. package/build-module/post-comments-form/index.js.map +1 -1
  454. package/build-module/post-comments-link/index.js +1 -0
  455. package/build-module/post-comments-link/index.js.map +1 -1
  456. package/build-module/post-content/edit.js +1 -1
  457. package/build-module/post-content/edit.js.map +1 -1
  458. package/build-module/post-date/edit.js +15 -9
  459. package/build-module/post-date/edit.js.map +1 -1
  460. package/build-module/post-excerpt/edit.js +1 -1
  461. package/build-module/post-excerpt/edit.js.map +1 -1
  462. package/build-module/post-featured-image/edit.js +1 -1
  463. package/build-module/post-featured-image/edit.js.map +1 -1
  464. package/build-module/post-template/edit.js +7 -2
  465. package/build-module/post-template/edit.js.map +1 -1
  466. package/build-module/post-terms/edit.js +35 -6
  467. package/build-module/post-terms/edit.js.map +1 -1
  468. package/build-module/post-terms/hooks.js +25 -0
  469. package/build-module/post-terms/hooks.js.map +1 -0
  470. package/build-module/post-terms/index.js +18 -8
  471. package/build-module/post-terms/index.js.map +1 -1
  472. package/build-module/post-title/index.js +1 -1
  473. package/build-module/post-title/index.js.map +1 -1
  474. package/build-module/pullquote/edit.js +2 -2
  475. package/build-module/pullquote/edit.js.map +1 -1
  476. package/build-module/pullquote/edit.native.js +2 -2
  477. package/build-module/pullquote/edit.native.js.map +1 -1
  478. package/build-module/query/edit/inspector-controls/index.js +24 -17
  479. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  480. package/build-module/query/edit/inspector-controls/parent-control.js +135 -0
  481. package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -0
  482. package/build-module/query/edit/inspector-controls/sticky-control.js +31 -0
  483. package/build-module/query/edit/inspector-controls/sticky-control.js.map +1 -0
  484. package/build-module/query/index.js +2 -1
  485. package/build-module/query/index.js.map +1 -1
  486. package/build-module/query/utils.js +21 -0
  487. package/build-module/query/utils.js.map +1 -1
  488. package/build-module/query-no-results/edit.js +1 -1
  489. package/build-module/query-no-results/edit.js.map +1 -1
  490. package/build-module/query-title/index.js +1 -1
  491. package/build-module/query-title/index.js.map +1 -1
  492. package/build-module/query-title/variations.js +2 -2
  493. package/build-module/query-title/variations.js.map +1 -1
  494. package/build-module/quote/edit.js +4 -3
  495. package/build-module/quote/edit.js.map +1 -1
  496. package/build-module/quote/index.js +1 -0
  497. package/build-module/quote/index.js.map +1 -1
  498. package/build-module/quote/v2/edit.js +2 -2
  499. package/build-module/quote/v2/edit.js.map +1 -1
  500. package/build-module/search/edit.js +3 -2
  501. package/build-module/search/edit.js.map +1 -1
  502. package/build-module/search/index.js +4 -0
  503. package/build-module/search/index.js.map +1 -1
  504. package/build-module/separator/index.js +3 -0
  505. package/build-module/separator/index.js.map +1 -1
  506. package/build-module/shortcode/edit.native.js +17 -13
  507. package/build-module/shortcode/edit.native.js.map +1 -1
  508. package/build-module/site-logo/edit.js +1 -1
  509. package/build-module/site-logo/edit.js.map +1 -1
  510. package/build-module/social-links/edit.js +2 -2
  511. package/build-module/social-links/edit.js.map +1 -1
  512. package/build-module/table/edit.js +17 -4
  513. package/build-module/table/edit.js.map +1 -1
  514. package/build-module/table-of-contents/edit.js +144 -68
  515. package/build-module/table-of-contents/edit.js.map +1 -1
  516. package/build-module/table-of-contents/index.js +12 -3
  517. package/build-module/table-of-contents/index.js.map +1 -1
  518. package/build-module/table-of-contents/list.js +18 -10
  519. package/build-module/table-of-contents/list.js.map +1 -1
  520. package/build-module/table-of-contents/save.js +28 -0
  521. package/build-module/table-of-contents/save.js.map +1 -0
  522. package/build-module/table-of-contents/utils.js +11 -73
  523. package/build-module/table-of-contents/utils.js.map +1 -1
  524. package/build-module/template-part/edit/index.js +8 -4
  525. package/build-module/template-part/edit/index.js.map +1 -1
  526. package/build-module/template-part/edit/inner-blocks.js +4 -9
  527. package/build-module/template-part/edit/inner-blocks.js.map +1 -1
  528. package/build-module/video/edit.js +5 -9
  529. package/build-module/video/edit.js.map +1 -1
  530. package/build-style/comment-content/style-rtl.css +81 -0
  531. package/build-style/comment-content/style.css +81 -0
  532. package/build-style/{comments-query-loop → comments}/editor-rtl.css +0 -0
  533. package/build-style/{comments-query-loop → comments}/editor.css +0 -0
  534. package/build-style/cover/style-rtl.css +32 -27
  535. package/build-style/cover/style.css +32 -27
  536. package/build-style/editor-rtl.css +16 -10
  537. package/build-style/editor.css +16 -10
  538. package/build-style/image/editor-rtl.css +1 -1
  539. package/build-style/image/editor.css +1 -1
  540. package/build-style/latest-posts/style-rtl.css +2 -0
  541. package/build-style/latest-posts/style.css +4 -0
  542. package/build-style/navigation/style-rtl.css +3 -0
  543. package/build-style/navigation/style.css +3 -0
  544. package/build-style/post-comments/editor-rtl.css +79 -0
  545. package/build-style/post-comments/editor.css +79 -0
  546. package/build-style/post-comments/style-rtl.css +27 -3
  547. package/build-style/post-comments/style.css +27 -3
  548. package/build-style/post-comments-form/editor-rtl.css +79 -0
  549. package/build-style/post-comments-form/editor.css +79 -0
  550. package/build-style/post-comments-form/style-rtl.css +1 -3
  551. package/build-style/post-comments-form/style.css +1 -3
  552. package/build-style/separator/editor-rtl.css +1 -0
  553. package/build-style/separator/editor.css +1 -0
  554. package/build-style/site-logo/style-rtl.css +4 -0
  555. package/build-style/site-logo/style.css +4 -0
  556. package/build-style/style-rtl.css +69 -33
  557. package/build-style/style.css +71 -33
  558. package/build-style/video/editor-rtl.css +2 -5
  559. package/build-style/video/editor.css +2 -5
  560. package/build-types/table-of-contents/list.d.ts +12 -0
  561. package/build-types/table-of-contents/list.d.ts.map +1 -0
  562. package/build-types/table-of-contents/utils.d.ts +24 -0
  563. package/build-types/table-of-contents/utils.d.ts.map +1 -0
  564. package/package.json +30 -29
  565. package/src/audio/edit.js +6 -9
  566. package/src/avatar/block.json +0 -1
  567. package/src/avatar/index.php +2 -2
  568. package/src/block/edit.js +39 -42
  569. package/src/block/test/edit.native.js +1 -1
  570. package/src/button/block.json +1 -0
  571. package/src/button/deprecated.js +145 -0
  572. package/src/button/edit.js +3 -1
  573. package/src/button/edit.native.js +6 -3
  574. package/src/button/save.js +3 -1
  575. package/src/buttons/test/__snapshots__/edit.native.js.snap +1 -1
  576. package/src/buttons/test/edit.native.js +1 -1
  577. package/src/categories/block.json +1 -1
  578. package/src/categories/edit.js +1 -1
  579. package/src/columns/block.json +3 -1
  580. package/src/comment-author-avatar/block.json +1 -0
  581. package/src/comment-author-name/index.php +7 -5
  582. package/src/comment-content/index.php +25 -3
  583. package/src/comment-content/style.scss +5 -0
  584. package/src/comment-edit-link/index.php +1 -4
  585. package/src/comment-reply-link/index.php +1 -4
  586. package/src/comment-template/edit.js +1 -5
  587. package/src/comment-template/index.php +4 -0
  588. package/src/{comments-query-loop → comments}/block.json +1 -1
  589. package/src/{comments-query-loop → comments}/edit/comments-inspector-controls.js +0 -0
  590. package/src/{comments-query-loop → comments}/edit.js +2 -1
  591. package/src/{comments-query-loop → comments}/editor.scss +0 -0
  592. package/src/{comments-query-loop → comments}/index.js +0 -0
  593. package/src/{comments-query-loop → comments}/save.js +1 -3
  594. package/src/comments-pagination/index.php +4 -0
  595. package/src/comments-title/block.json +0 -6
  596. package/src/comments-title/deprecated.js +34 -0
  597. package/src/comments-title/edit.js +44 -84
  598. package/src/comments-title/index.js +3 -1
  599. package/src/comments-title/index.php +51 -22
  600. package/src/cover/controls.native.js +1 -2
  601. package/src/cover/deprecated.js +230 -183
  602. package/src/cover/edit/block-controls.js +119 -0
  603. package/src/cover/edit/cover-placeholder.js +39 -0
  604. package/src/cover/edit/index.js +393 -0
  605. package/src/cover/edit/inspector-controls.js +286 -0
  606. package/src/cover/edit/resizable-cover.js +55 -0
  607. package/src/cover/edit/use-cover-is-dark.js +71 -0
  608. package/src/cover/edit.native.js +40 -14
  609. package/src/cover/editor.scss +1 -1
  610. package/src/cover/focal-point-settings-button.native.js +1 -1
  611. package/src/cover/index.php +20 -37
  612. package/src/cover/save.js +26 -13
  613. package/src/cover/shared.js +5 -3
  614. package/src/cover/style.native.scss +4 -0
  615. package/src/cover/style.scss +27 -26
  616. package/src/cover/test/__snapshots__/edit.native.js.snap +6 -6
  617. package/src/cover/test/block-controls.js +62 -0
  618. package/src/cover/test/transforms.js +301 -0
  619. package/src/cover/transforms.js +112 -7
  620. package/src/cover/use-cover-is-dark.native.js +51 -0
  621. package/src/editor.scss +3 -1
  622. package/src/embed/embed-preview.js +4 -2
  623. package/src/file/edit.js +5 -1
  624. package/src/file/edit.native.js +0 -1
  625. package/src/file/save.js +14 -2
  626. package/src/gallery/block.json +1 -1
  627. package/src/gallery/edit.js +2 -1
  628. package/src/gallery/gallery.js +2 -2
  629. package/src/gallery/gap-styles.js +21 -6
  630. package/src/gallery/index.php +23 -12
  631. package/src/gallery/shared.js +3 -2
  632. package/src/gallery/use-get-media.js +2 -1
  633. package/src/gallery/use-short-code-transform.js +19 -16
  634. package/src/gallery/v1/gallery.js +2 -2
  635. package/src/group/block.json +1 -0
  636. package/src/heading/block.json +1 -0
  637. package/src/heading/edit.js +5 -2
  638. package/src/heading/transforms.js +4 -3
  639. package/src/image/edit.js +0 -44
  640. package/src/image/edit.native.js +65 -4
  641. package/src/image/editor.scss +1 -1
  642. package/src/image/image.js +10 -13
  643. package/src/image/styles.native.scss +11 -0
  644. package/src/image/test/edit.native.js +7 -7
  645. package/src/index.js +53 -33
  646. package/src/is-block-metadata-experimental.js +19 -0
  647. package/src/latest-posts/edit.js +27 -2
  648. package/src/latest-posts/edit.native.js +56 -1
  649. package/src/latest-posts/index.php +12 -6
  650. package/src/latest-posts/style.scss +4 -0
  651. package/src/list/transforms.js +7 -0
  652. package/src/list/v2/edit.js +1 -0
  653. package/src/list/v2/migrate.js +1 -1
  654. package/src/list/v2/transforms.js +35 -0
  655. package/src/list-item/block.json +2 -1
  656. package/src/list-item/edit.js +17 -10
  657. package/src/list-item/hooks/index.js +3 -0
  658. package/src/list-item/hooks/use-backspace.js +52 -0
  659. package/src/list-item/hooks/use-enter.js +9 -16
  660. package/src/list-item/hooks/use-indent-list-item.js +50 -63
  661. package/src/list-item/hooks/use-space.js +48 -0
  662. package/src/list-item/hooks/use-split.js +33 -0
  663. package/src/list-item/utils.js +1 -1
  664. package/src/media-text/edit.native.js +3 -1
  665. package/src/media-text/media-container.native.js +2 -4
  666. package/src/media-text/transforms.js +154 -0
  667. package/src/navigation/block.json +0 -1
  668. package/src/navigation/edit/index.js +181 -205
  669. package/src/navigation/edit/inner-blocks.js +6 -15
  670. package/src/navigation/index.php +40 -0
  671. package/src/navigation/style.scss +3 -0
  672. package/src/navigation/use-navigation-entities.js +1 -1
  673. package/src/navigation/view-modal.js +32 -0
  674. package/src/navigation-link/edit.js +75 -48
  675. package/src/navigation-link/fallback-variations.js +1 -1
  676. package/src/navigation-link/hooks.js +2 -2
  677. package/src/navigation-link/test/__snapshots__/hooks.js.snap +4 -4
  678. package/src/navigation-link/test/edit.js +0 -20
  679. package/src/navigation-submenu/edit.js +13 -17
  680. package/src/page-list/convert-to-links-modal.js +1 -1
  681. package/src/page-list/edit.js +1 -4
  682. package/src/paragraph/edit.js +6 -0
  683. package/src/paragraph/use-enter.js +103 -0
  684. package/src/post-author/edit.js +24 -22
  685. package/src/post-author/index.php +4 -3
  686. package/src/post-author-name/block.json +1 -0
  687. package/src/post-author-name/index.js +2 -0
  688. package/src/post-author-name/index.php +1 -1
  689. package/src/post-author-name/transforms.js +25 -0
  690. package/src/post-comment/block.json +2 -1
  691. package/src/post-comments/block.json +3 -2
  692. package/src/post-comments/edit.js +206 -44
  693. package/src/post-comments/editor.scss +3 -0
  694. package/src/post-comments/index.php +3 -1
  695. package/src/post-comments/style.scss +30 -5
  696. package/src/post-comments-count/block.json +1 -0
  697. package/src/post-comments-form/block.json +1 -0
  698. package/src/post-comments-form/edit.js +52 -23
  699. package/src/post-comments-form/editor.scss +3 -0
  700. package/src/post-comments-form/form.js +50 -0
  701. package/src/post-comments-form/index.php +10 -3
  702. package/src/post-comments-form/style.scss +1 -4
  703. package/src/post-comments-link/block.json +1 -0
  704. package/src/post-content/edit.js +15 -1
  705. package/src/post-date/edit.js +4 -3
  706. package/src/post-excerpt/edit.js +14 -1
  707. package/src/post-featured-image/edit.js +1 -1
  708. package/src/post-template/edit.js +5 -0
  709. package/src/post-template/index.php +30 -0
  710. package/src/post-terms/block.json +8 -0
  711. package/src/post-terms/edit.js +47 -1
  712. package/src/post-terms/hooks.js +27 -0
  713. package/src/post-terms/index.js +14 -7
  714. package/src/post-terms/index.php +50 -2
  715. package/src/post-title/index.js +1 -1
  716. package/src/pullquote/edit.js +2 -2
  717. package/src/pullquote/edit.native.js +2 -2
  718. package/src/query/block.json +2 -1
  719. package/src/query/edit/inspector-controls/index.js +25 -11
  720. package/src/query/edit/inspector-controls/parent-control.js +133 -0
  721. package/src/query/edit/inspector-controls/sticky-control.js +25 -0
  722. package/src/query/utils.js +22 -0
  723. package/src/query-no-results/edit.js +1 -1
  724. package/src/query-pagination/index.php +0 -1
  725. package/src/query-title/index.js +1 -1
  726. package/src/query-title/variations.js +2 -2
  727. package/src/quote/block.json +1 -0
  728. package/src/quote/edit.js +5 -2
  729. package/src/quote/v2/edit.js +4 -2
  730. package/src/search/block.json +4 -0
  731. package/src/search/edit.js +4 -1
  732. package/src/search/index.php +29 -16
  733. package/src/separator/block.json +3 -0
  734. package/src/separator/editor.scss +1 -0
  735. package/src/shortcode/edit.native.js +29 -15
  736. package/src/shortcode/style.native.scss +11 -4
  737. package/src/shortcode/test/__snapshots__/edit.native.js.snap +9 -0
  738. package/src/shortcode/test/edit.native.js +58 -40
  739. package/src/site-logo/edit.js +1 -1
  740. package/src/site-logo/style.scss +6 -0
  741. package/src/social-links/edit.js +11 -10
  742. package/src/table/edit.js +19 -4
  743. package/src/table-of-contents/block.json +9 -2
  744. package/src/table-of-contents/edit.js +170 -77
  745. package/src/table-of-contents/index.js +2 -0
  746. package/src/table-of-contents/list.tsx +46 -0
  747. package/src/table-of-contents/save.js +25 -0
  748. package/src/table-of-contents/utils.ts +71 -0
  749. package/src/tag-cloud/block.json +1 -1
  750. package/src/template-part/edit/index.js +25 -15
  751. package/src/template-part/edit/inner-blocks.js +2 -10
  752. package/src/video/edit.js +7 -6
  753. package/src/video/editor.scss +3 -6
  754. package/test/babel-plugin.js +67 -0
  755. package/tsconfig.json +11 -0
  756. package/tsconfig.tsbuildinfo +1 -0
  757. package/build/comments-query-loop/edit/comments-inspector-controls.js.map +0 -1
  758. package/build/comments-query-loop/edit.js.map +0 -1
  759. package/build/comments-query-loop/index.js.map +0 -1
  760. package/build/comments-query-loop/save.js.map +0 -1
  761. package/build/cover/edit.js +0 -665
  762. package/build/cover/edit.js.map +0 -1
  763. package/build/navigation-area/edit.js +0 -110
  764. package/build/navigation-area/edit.js.map +0 -1
  765. package/build/navigation-area/index.js +0 -62
  766. package/build/navigation-area/index.js.map +0 -1
  767. package/build/navigation-area/inner-blocks.js +0 -34
  768. package/build/navigation-area/inner-blocks.js.map +0 -1
  769. package/build/navigation-area/save.js +0 -18
  770. package/build/navigation-area/save.js.map +0 -1
  771. package/build/post-terms/variations.js +0 -37
  772. package/build/post-terms/variations.js.map +0 -1
  773. package/build-module/comments-query-loop/edit.js.map +0 -1
  774. package/build-module/comments-query-loop/index.js.map +0 -1
  775. package/build-module/comments-query-loop/save.js.map +0 -1
  776. package/build-module/cover/edit.js +0 -642
  777. package/build-module/cover/edit.js.map +0 -1
  778. package/build-module/navigation-area/edit.js +0 -94
  779. package/build-module/navigation-area/edit.js.map +0 -1
  780. package/build-module/navigation-area/index.js +0 -48
  781. package/build-module/navigation-area/index.js.map +0 -1
  782. package/build-module/navigation-area/inner-blocks.js +0 -26
  783. package/build-module/navigation-area/inner-blocks.js.map +0 -1
  784. package/build-module/navigation-area/save.js +0 -10
  785. package/build-module/navigation-area/save.js.map +0 -1
  786. package/build-module/post-terms/variations.js +0 -27
  787. package/build-module/post-terms/variations.js.map +0 -1
  788. package/src/cover/edit.js +0 -822
  789. package/src/navigation-area/block.json +0 -23
  790. package/src/navigation-area/edit.js +0 -111
  791. package/src/navigation-area/index.js +0 -26
  792. package/src/navigation-area/index.php +0 -22
  793. package/src/navigation-area/inner-blocks.js +0 -24
  794. package/src/navigation-area/save.js +0 -8
  795. package/src/post-terms/variations.js +0 -28
  796. package/src/table-of-contents/index.php +0 -346
  797. package/src/table-of-contents/list.js +0 -28
  798. package/src/table-of-contents/utils.js +0 -126
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/table-of-contents/utils.js"],"names":["getHeadingsFromHeadingElements","headingElements","map","heading","level","parseInt","tagName","anchor","hasAttribute","id","content","textContent","getHeadingsFromContent","tempPostContentDOM","document","createElement","innerHTML","template","querySelectorAll","remove","linearToNestedHeadingList","headingList","index","nestedHeadingList","forEach","key","undefined","endOfSlice","length","i","push","children","slice"],"mappings":"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","sourcesContent":["/**\n * @typedef WPHeadingData\n *\n * @property {string} anchor The anchor link to the heading, or '' if none.\n * @property {string} content The plain text content of the heading.\n * @property {number} level The heading level.\n */\n\n/**\n * Extracts text, anchor, and level from a list of heading elements.\n *\n * @param {NodeList} headingElements The list of heading elements.\n *\n * @return {WPHeadingData[]} The list of heading parameters.\n */\nexport function getHeadingsFromHeadingElements( headingElements ) {\n\treturn [ ...headingElements ].map( ( heading ) => ( {\n\t\t// A little hacky, but since we know at this point that the tag will\n\t\t// be an H1-H6, we can just grab the 2nd character of the tag name and\n\t\t// convert it to an integer. Should be faster than conditionals.\n\t\tlevel: parseInt( heading.tagName[ 1 ], 10 ),\n\t\tanchor: heading.hasAttribute( 'id' ) ? `#${ heading.id }` : '',\n\t\tcontent: heading.textContent,\n\t} ) );\n}\n\n/**\n * Extracts heading data from the provided content.\n *\n * @param {string} content The content to extract heading data from.\n *\n * @return {WPHeadingData[]} The list of heading parameters.\n */\nexport function getHeadingsFromContent( content ) {\n\t// Create a temporary container to put the post content into, so we can\n\t// use the DOM to find all the headings.\n\tconst tempPostContentDOM = document.createElement( 'div' );\n\ttempPostContentDOM.innerHTML = content;\n\n\t// Remove template elements so that headings inside them aren't counted.\n\t// This is only needed for IE11, which doesn't recognize the element and\n\t// treats it like a div.\n\tfor ( const template of tempPostContentDOM.querySelectorAll(\n\t\t'template'\n\t) ) {\n\t\ttemplate.remove();\n\t}\n\n\tconst headingElements = tempPostContentDOM.querySelectorAll(\n\t\t'h1:not(:empty), h2:not(:empty), h3:not(:empty), h4:not(:empty), h5:not(:empty), h6:not(:empty)'\n\t);\n\n\treturn getHeadingsFromHeadingElements( headingElements );\n}\n\n/**\n * @typedef WPNestedHeadingData\n *\n * @property {WPHeadingData} heading The heading content, anchor,\n * and level.\n * @property {number} index The index of this heading\n * node in the entire nested\n * list of heading data.\n * @property {WPNestedHeadingData[]|null} children The sub-headings of this\n * heading, if any.\n */\n\n/**\n * Takes a flat list of heading parameters and nests them based on each header's\n * immediate parent's level.\n *\n * @param {WPHeadingData[]} headingList The flat list of headings to nest.\n * @param {number} index The current list index.\n *\n * @return {WPNestedHeadingData[]} The nested list of headings.\n */\nexport function linearToNestedHeadingList( headingList, index = 0 ) {\n\tconst nestedHeadingList = [];\n\n\theadingList.forEach( ( heading, key ) => {\n\t\tif ( heading.content === '' ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Make sure we are only working with the same level as the first iteration in our set.\n\t\tif ( heading.level === headingList[ 0 ].level ) {\n\t\t\t// Check that the next iteration will return a value.\n\t\t\t// If it does and the next level is greater than the current level,\n\t\t\t// the next iteration becomes a child of the current iteration.\n\t\t\tif (\n\t\t\t\theadingList[ key + 1 ] !== undefined &&\n\t\t\t\theadingList[ key + 1 ].level > heading.level\n\t\t\t) {\n\t\t\t\t// We need to calculate the last index before the next iteration that has the same level (siblings).\n\t\t\t\t// We then use this last index to slice the array for use in recursion.\n\t\t\t\t// This prevents duplicate nodes.\n\t\t\t\tlet endOfSlice = headingList.length;\n\t\t\t\tfor ( let i = key + 1; i < headingList.length; i++ ) {\n\t\t\t\t\tif ( headingList[ i ].level === heading.level ) {\n\t\t\t\t\t\tendOfSlice = i;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// We found a child node: Push a new node onto the return array with children.\n\t\t\t\tnestedHeadingList.push( {\n\t\t\t\t\theading,\n\t\t\t\t\tindex: index + key,\n\t\t\t\t\tchildren: linearToNestedHeadingList(\n\t\t\t\t\t\theadingList.slice( key + 1, endOfSlice ),\n\t\t\t\t\t\tindex + key + 1\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\t// No child node: Push a new node onto the return array.\n\t\t\t\tnestedHeadingList.push( {\n\t\t\t\t\theading,\n\t\t\t\t\tindex: index + key,\n\t\t\t\t\tchildren: null,\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t} );\n\n\treturn nestedHeadingList;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/table-of-contents/utils.ts"],"names":["linearToNestedHeadingList","headingList","nestedHeadingList","forEach","heading","key","content","level","endOfSlice","length","i","push","children","slice"],"mappings":"AAgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASA,yBAAT,CACNC,WADM,EAEgB;AACtB,QAAMC,iBAAsC,GAAG,EAA/C;AAEAD,EAAAA,WAAW,CAACE,OAAZ,CAAqB,CAAEC,OAAF,EAAWC,GAAX,KAAoB;AACxC,QAAKD,OAAO,CAACE,OAAR,KAAoB,EAAzB,EAA8B;AAC7B;AACA,KAHuC,CAKxC;;;AACA,QAAKF,OAAO,CAACG,KAAR,KAAkBN,WAAW,CAAE,CAAF,CAAX,CAAiBM,KAAxC,EAAgD;AAAA;;AAC/C;AACA;AACA;AACA,UAAK,iBAAAN,WAAW,CAAEI,GAAG,GAAG,CAAR,CAAX,8DAAwBE,KAAxB,IAAgCH,OAAO,CAACG,KAA7C,EAAqD;AACpD;AACA;AACA;AACA,YAAIC,UAAU,GAAGP,WAAW,CAACQ,MAA7B;;AACA,aAAM,IAAIC,CAAC,GAAGL,GAAG,GAAG,CAApB,EAAuBK,CAAC,GAAGT,WAAW,CAACQ,MAAvC,EAA+CC,CAAC,EAAhD,EAAqD;AACpD,cAAKT,WAAW,CAAES,CAAF,CAAX,CAAiBH,KAAjB,KAA2BH,OAAO,CAACG,KAAxC,EAAgD;AAC/CC,YAAAA,UAAU,GAAGE,CAAb;AACA;AACA;AACD,SAVmD,CAYpD;AACA;;;AACAR,QAAAA,iBAAiB,CAACS,IAAlB,CAAwB;AACvBP,UAAAA,OADuB;AAEvBQ,UAAAA,QAAQ,EAAEZ,yBAAyB,CAClCC,WAAW,CAACY,KAAZ,CAAmBR,GAAG,GAAG,CAAzB,EAA4BG,UAA5B,CADkC;AAFZ,SAAxB;AAMA,OApBD,MAoBO;AACN;AACAN,QAAAA,iBAAiB,CAACS,IAAlB,CAAwB;AACvBP,UAAAA,OADuB;AAEvBQ,UAAAA,QAAQ,EAAE;AAFa,SAAxB;AAIA;AACD;AACD,GAtCD;AAwCA,SAAOV,iBAAP;AACA","sourcesContent":["export interface HeadingData {\n\t/** The plain text content of the heading. */\n\tcontent: string;\n\t/** The heading level. */\n\tlevel: number;\n\t/** Link to the heading. */\n\tlink: string;\n}\n\nexport interface NestedHeadingData {\n\t/** The heading content, level, and link. */\n\theading: HeadingData;\n\t/** The sub-headings of this heading, if any. */\n\tchildren: NestedHeadingData[] | null;\n}\n\n/**\n * Takes a flat list of heading parameters and nests them based on each header's\n * immediate parent's level.\n *\n * @param headingList The flat list of headings to nest.\n *\n * @return The nested list of headings.\n */\nexport function linearToNestedHeadingList(\n\theadingList: HeadingData[]\n): NestedHeadingData[] {\n\tconst nestedHeadingList: NestedHeadingData[] = [];\n\n\theadingList.forEach( ( heading, key ) => {\n\t\tif ( heading.content === '' ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Make sure we are only working with the same level as the first iteration in our set.\n\t\tif ( heading.level === headingList[ 0 ].level ) {\n\t\t\t// Check that the next iteration will return a value.\n\t\t\t// If it does and the next level is greater than the current level,\n\t\t\t// the next iteration becomes a child of the current iteration.\n\t\t\tif ( headingList[ key + 1 ]?.level > heading.level ) {\n\t\t\t\t// We must calculate the last index before the next iteration that\n\t\t\t\t// has the same level (siblings). We then use this index to slice\n\t\t\t\t// the array for use in recursion. This prevents duplicate nodes.\n\t\t\t\tlet endOfSlice = headingList.length;\n\t\t\t\tfor ( let i = key + 1; i < headingList.length; i++ ) {\n\t\t\t\t\tif ( headingList[ i ].level === heading.level ) {\n\t\t\t\t\t\tendOfSlice = i;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// We found a child node: Push a new node onto the return array\n\t\t\t\t// with children.\n\t\t\t\tnestedHeadingList.push( {\n\t\t\t\t\theading,\n\t\t\t\t\tchildren: linearToNestedHeadingList(\n\t\t\t\t\t\theadingList.slice( key + 1, endOfSlice )\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\t// No child node: Push a new node onto the return array.\n\t\t\t\tnestedHeadingList.push( {\n\t\t\t\t\theading,\n\t\t\t\t\tchildren: null,\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t} );\n\n\treturn nestedHeadingList;\n}\n"]}
@@ -9,7 +9,7 @@ import { isEmpty } from 'lodash';
9
9
  */
10
10
 
11
11
  import { useSelect } from '@wordpress/data';
12
- import { BlockControls, useBlockProps, __experimentalUseNoRecursiveRenders as useNoRecursiveRenders, Warning, store as blockEditorStore } from '@wordpress/block-editor';
12
+ import { BlockControls, useBlockProps, __experimentalUseNoRecursiveRenders as useNoRecursiveRenders, Warning, store as blockEditorStore, __experimentalUseBlockOverlayActive as useBlockOverlayActive } from '@wordpress/block-editor';
13
13
  import { ToolbarGroup, ToolbarButton, Spinner, Modal } from '@wordpress/components';
14
14
  import { __, sprintf } from '@wordpress/i18n';
15
15
  import { store as coreStore } from '@wordpress/core-data';
@@ -74,7 +74,12 @@ export default function TemplatePartEdit(_ref) {
74
74
  const blockPatterns = useAlternativeBlockPatterns(area, clientId);
75
75
  const hasReplacements = !!templateParts.length || !!blockPatterns.length;
76
76
  const areaObject = useTemplatePartArea(area);
77
- const blockProps = useBlockProps();
77
+ const hasBlockOverlay = useBlockOverlayActive(clientId);
78
+ const blockProps = useBlockProps({
79
+ className: hasBlockOverlay ? 'block-editor-block-content-overlay' : undefined
80
+ }, {
81
+ __unstableIsDisabled: hasBlockOverlay
82
+ });
78
83
  const isPlaceholder = !slug;
79
84
  const isEntityAvailable = !isPlaceholder && !isMissing && isResolved;
80
85
  const TagName = tagName || areaObject.tagName; // We don't want to render a missing state if we have any inner blocks.
@@ -102,12 +107,11 @@ export default function TemplatePartEdit(_ref) {
102
107
  clientId: clientId,
103
108
  setAttributes: setAttributes,
104
109
  onOpenSelectionModal: () => setIsTemplatePartSelectionOpen(true)
105
- })), isEntityAvailable && hasReplacements && createElement(BlockControls, null, createElement(ToolbarGroup, {
110
+ })), isEntityAvailable && hasReplacements && (area === 'header' || area === 'footer') && createElement(BlockControls, null, createElement(ToolbarGroup, {
106
111
  className: "wp-block-template-part__block-control-group"
107
112
  }, createElement(ToolbarButton, {
108
113
  onClick: () => setIsTemplatePartSelectionOpen(true)
109
114
  }, __('Replace')))), isEntityAvailable && createElement(TemplatePartInnerBlocks, {
110
- clientId: clientId,
111
115
  tagName: TagName,
112
116
  blockProps: blockProps,
113
117
  postId: templatePartId,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/index.js"],"names":["isEmpty","useSelect","BlockControls","useBlockProps","__experimentalUseNoRecursiveRenders","useNoRecursiveRenders","Warning","store","blockEditorStore","ToolbarGroup","ToolbarButton","Spinner","Modal","__","sprintf","coreStore","useState","TemplatePartPlaceholder","TemplatePartSelectionModal","TemplatePartAdvancedControls","TemplatePartInnerBlocks","createTemplatePartId","useAlternativeBlockPatterns","useAlternativeTemplateParts","useTemplatePartArea","TemplatePartEdit","attributes","setAttributes","clientId","slug","theme","tagName","layout","templatePartId","hasAlreadyRendered","RecursionProvider","isTemplatePartSelectionOpen","setIsTemplatePartSelectionOpen","isResolved","innerBlocks","isMissing","area","select","getEditedEntityRecord","hasFinishedResolution","getBlocks","getEntityArgs","entityRecord","_area","hasResolvedEntity","templateParts","blockPatterns","hasReplacements","length","areaObject","blockProps","isPlaceholder","isEntityAvailable","TagName","label","toLowerCase"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tuseBlockProps,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n\tWarning,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\tToolbarGroup,\n\tToolbarButton,\n\tSpinner,\n\tModal,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport TemplatePartPlaceholder from './placeholder';\nimport TemplatePartSelectionModal from './selection-modal';\nimport { TemplatePartAdvancedControls } from './advanced-controls';\nimport TemplatePartInnerBlocks from './inner-blocks';\nimport { createTemplatePartId } from './utils/create-template-part-id';\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseTemplatePartArea,\n} from './utils/hooks';\n\nexport default function TemplatePartEdit( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n} ) {\n\tconst { slug, theme, tagName, layout = {} } = attributes;\n\tconst templatePartId = createTemplatePartId( theme, slug );\n\tconst [ hasAlreadyRendered, RecursionProvider ] = useNoRecursiveRenders(\n\t\ttemplatePartId\n\t);\n\tconst [\n\t\tisTemplatePartSelectionOpen,\n\t\tsetIsTemplatePartSelectionOpen,\n\t] = useState( false );\n\n\t// Set the postId block attribute if it did not exist,\n\t// but wait until the inner blocks have loaded to allow\n\t// new edits to trigger this.\n\tconst { isResolved, innerBlocks, isMissing, area } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, hasFinishedResolution } = select(\n\t\t\t\tcoreStore\n\t\t\t);\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\n\t\t\tconst getEntityArgs = [\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\ttemplatePartId,\n\t\t\t];\n\t\t\tconst entityRecord = templatePartId\n\t\t\t\t? getEditedEntityRecord( ...getEntityArgs )\n\t\t\t\t: null;\n\t\t\tconst _area = entityRecord?.area || attributes.area;\n\t\t\tconst hasResolvedEntity = templatePartId\n\t\t\t\t? hasFinishedResolution(\n\t\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\t\tgetEntityArgs\n\t\t\t\t )\n\t\t\t\t: false;\n\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisResolved: hasResolvedEntity,\n\t\t\t\tisMissing: hasResolvedEntity && isEmpty( entityRecord ),\n\t\t\t\tarea: _area,\n\t\t\t};\n\t\t},\n\t\t[ templatePartId, clientId ]\n\t);\n\tconst { templateParts } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\tconst hasReplacements = !! templateParts.length || !! blockPatterns.length;\n\tconst areaObject = useTemplatePartArea( area );\n\tconst blockProps = useBlockProps();\n\tconst isPlaceholder = ! slug;\n\tconst isEntityAvailable = ! isPlaceholder && ! isMissing && isResolved;\n\tconst TagName = tagName || areaObject.tagName;\n\n\t// We don't want to render a missing state if we have any inner blocks.\n\t// A new template part is automatically created if we have any inner blocks but no entity.\n\tif (\n\t\tinnerBlocks.length === 0 &&\n\t\t( ( slug && ! theme ) || ( slug && isMissing ) )\n\t) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %s: Template part slug */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Template part has been deleted or is unavailable: %s'\n\t\t\t\t\t\t),\n\t\t\t\t\t\tslug\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<RecursionProvider>\n\t\t\t<TemplatePartAdvancedControls\n\t\t\t\ttagName={ tagName }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tisEntityAvailable={ isEntityAvailable }\n\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\tdefaultWrapper={ areaObject.tagName }\n\t\t\t/>\n\t\t\t{ isPlaceholder && (\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t<TemplatePartPlaceholder\n\t\t\t\t\t\tarea={ attributes.area }\n\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tonOpenSelectionModal={ () =>\n\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</TagName>\n\t\t\t) }\n\t\t\t{ isEntityAvailable && hasReplacements && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup className=\"wp-block-template-part__block-control-group\">\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Replace' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ isEntityAvailable && (\n\t\t\t\t<TemplatePartInnerBlocks\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\ttagName={ TagName }\n\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\tpostId={ templatePartId }\n\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t\tlayout={ layout }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ! isPlaceholder && ! isResolved && (\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</TagName>\n\t\t\t) }\n\t\t\t{ isTemplatePartSelectionOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\tclassName=\"block-editor-template-part__selection-modal\"\n\t\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t__( 'Choose a %s' ),\n\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t) }\n\t\t\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\t\t\tonRequestClose={ () =>\n\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<TemplatePartSelectionModal\n\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tarea={ area }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tonClose={ () =>\n\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</RecursionProvider>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/index.js"],"names":["isEmpty","useSelect","BlockControls","useBlockProps","__experimentalUseNoRecursiveRenders","useNoRecursiveRenders","Warning","store","blockEditorStore","__experimentalUseBlockOverlayActive","useBlockOverlayActive","ToolbarGroup","ToolbarButton","Spinner","Modal","__","sprintf","coreStore","useState","TemplatePartPlaceholder","TemplatePartSelectionModal","TemplatePartAdvancedControls","TemplatePartInnerBlocks","createTemplatePartId","useAlternativeBlockPatterns","useAlternativeTemplateParts","useTemplatePartArea","TemplatePartEdit","attributes","setAttributes","clientId","slug","theme","tagName","layout","templatePartId","hasAlreadyRendered","RecursionProvider","isTemplatePartSelectionOpen","setIsTemplatePartSelectionOpen","isResolved","innerBlocks","isMissing","area","select","getEditedEntityRecord","hasFinishedResolution","getBlocks","getEntityArgs","entityRecord","_area","hasResolvedEntity","templateParts","blockPatterns","hasReplacements","length","areaObject","hasBlockOverlay","blockProps","className","undefined","__unstableIsDisabled","isPlaceholder","isEntityAvailable","TagName","label","toLowerCase"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,OAAT,QAAwB,QAAxB;AAEA;AACA;AACA;;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SACCC,aADD,EAECC,aAFD,EAGCC,mCAAmC,IAAIC,qBAHxC,EAICC,OAJD,EAKCC,KAAK,IAAIC,gBALV,EAMCC,mCAAmC,IAAIC,qBANxC,QAOO,yBAPP;AAQA,SACCC,YADD,EAECC,aAFD,EAGCC,OAHD,EAICC,KAJD,QAKO,uBALP;AAMA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AACA,SAAST,KAAK,IAAIU,SAAlB,QAAmC,sBAAnC;AACA,SAASC,QAAT,QAAyB,oBAAzB;AAEA;AACA;AACA;;AACA,OAAOC,uBAAP,MAAoC,eAApC;AACA,OAAOC,0BAAP,MAAuC,mBAAvC;AACA,SAASC,4BAAT,QAA6C,qBAA7C;AACA,OAAOC,uBAAP,MAAoC,gBAApC;AACA,SAASC,oBAAT,QAAqC,iCAArC;AACA,SACCC,2BADD,EAECC,2BAFD,EAGCC,mBAHD,QAIO,eAJP;AAMA,eAAe,SAASC,gBAAT,OAIX;AAAA,MAJsC;AACzCC,IAAAA,UADyC;AAEzCC,IAAAA,aAFyC;AAGzCC,IAAAA;AAHyC,GAItC;AACH,QAAM;AAAEC,IAAAA,IAAF;AAAQC,IAAAA,KAAR;AAAeC,IAAAA,OAAf;AAAwBC,IAAAA,MAAM,GAAG;AAAjC,MAAwCN,UAA9C;AACA,QAAMO,cAAc,GAAGZ,oBAAoB,CAAES,KAAF,EAASD,IAAT,CAA3C;AACA,QAAM,CAAEK,kBAAF,EAAsBC,iBAAtB,IAA4ChC,qBAAqB,CACtE8B,cADsE,CAAvE;AAGA,QAAM,CACLG,2BADK,EAELC,8BAFK,IAGFrB,QAAQ,CAAE,KAAF,CAHZ,CANG,CAWH;AACA;AACA;;AACA,QAAM;AAAEsB,IAAAA,UAAF;AAAcC,IAAAA,WAAd;AAA2BC,IAAAA,SAA3B;AAAsCC,IAAAA;AAAtC,MAA+C1C,SAAS,CAC3D2C,MAAF,IAAc;AACb,UAAM;AAAEC,MAAAA,qBAAF;AAAyBC,MAAAA;AAAzB,QAAmDF,MAAM,CAC9D3B,SAD8D,CAA/D;AAGA,UAAM;AAAE8B,MAAAA;AAAF,QAAgBH,MAAM,CAAEpC,gBAAF,CAA5B;AAEA,UAAMwC,aAAa,GAAG,CACrB,UADqB,EAErB,kBAFqB,EAGrBb,cAHqB,CAAtB;AAKA,UAAMc,YAAY,GAAGd,cAAc,GAChCU,qBAAqB,CAAE,GAAGG,aAAL,CADW,GAEhC,IAFH;;AAGA,UAAME,KAAK,GAAG,CAAAD,YAAY,SAAZ,IAAAA,YAAY,WAAZ,YAAAA,YAAY,CAAEN,IAAd,KAAsBf,UAAU,CAACe,IAA/C;;AACA,UAAMQ,iBAAiB,GAAGhB,cAAc,GACrCW,qBAAqB,CACrB,uBADqB,EAErBE,aAFqB,CADgB,GAKrC,KALH;AAOA,WAAO;AACNP,MAAAA,WAAW,EAAEM,SAAS,CAAEjB,QAAF,CADhB;AAENU,MAAAA,UAAU,EAAEW,iBAFN;AAGNT,MAAAA,SAAS,EAAES,iBAAiB,IAAInD,OAAO,CAAEiD,YAAF,CAHjC;AAINN,MAAAA,IAAI,EAAEO;AAJA,KAAP;AAMA,GA7B4D,EA8B7D,CAAEf,cAAF,EAAkBL,QAAlB,CA9B6D,CAA9D;AAgCA,QAAM;AAAEsB,IAAAA;AAAF,MAAoB3B,2BAA2B,CACpDkB,IADoD,EAEpDR,cAFoD,CAArD;AAIA,QAAMkB,aAAa,GAAG7B,2BAA2B,CAAEmB,IAAF,EAAQb,QAAR,CAAjD;AACA,QAAMwB,eAAe,GAAG,CAAC,CAAEF,aAAa,CAACG,MAAjB,IAA2B,CAAC,CAAEF,aAAa,CAACE,MAApE;AACA,QAAMC,UAAU,GAAG9B,mBAAmB,CAAEiB,IAAF,CAAtC;AACA,QAAMc,eAAe,GAAG/C,qBAAqB,CAAEoB,QAAF,CAA7C;AACA,QAAM4B,UAAU,GAAGvD,aAAa,CAC/B;AACCwD,IAAAA,SAAS,EAAEF,eAAe,GACvB,oCADuB,GAEvBG;AAHJ,GAD+B,EAM/B;AAAEC,IAAAA,oBAAoB,EAAEJ;AAAxB,GAN+B,CAAhC;AAQA,QAAMK,aAAa,GAAG,CAAE/B,IAAxB;AACA,QAAMgC,iBAAiB,GAAG,CAAED,aAAF,IAAmB,CAAEpB,SAArB,IAAkCF,UAA5D;AACA,QAAMwB,OAAO,GAAG/B,OAAO,IAAIuB,UAAU,CAACvB,OAAtC,CAhEG,CAkEH;AACA;;AACA,MACCQ,WAAW,CAACc,MAAZ,KAAuB,CAAvB,KACIxB,IAAI,IAAI,CAAEC,KAAZ,IAAyBD,IAAI,IAAIW,SADnC,CADD,EAGE;AACD,WACC,cAAC,OAAD,EAAcgB,UAAd,EACC,cAAC,OAAD,QACG1C,OAAO;AACR;AACAD,IAAAA,EAAE,CACD,sDADC,CAFM,EAKRgB,IALQ,CADV,CADD,CADD;AAaA;;AAED,MAAKgC,iBAAiB,IAAI3B,kBAA1B,EAA+C;AAC9C,WACC,cAAC,OAAD,EAAcsB,UAAd,EACC,cAAC,OAAD,QACG3C,EAAE,CAAE,yCAAF,CADL,CADD,CADD;AAOA;;AAED,SACC,cAAC,iBAAD,QACC,cAAC,4BAAD;AACC,IAAA,OAAO,EAAGkB,OADX;AAEC,IAAA,aAAa,EAAGJ,aAFjB;AAGC,IAAA,iBAAiB,EAAGkC,iBAHrB;AAIC,IAAA,cAAc,EAAG5B,cAJlB;AAKC,IAAA,cAAc,EAAGqB,UAAU,CAACvB;AAL7B,IADD,EAQG6B,aAAa,IACd,cAAC,OAAD,EAAcJ,UAAd,EACC,cAAC,uBAAD;AACC,IAAA,IAAI,EAAG9B,UAAU,CAACe,IADnB;AAEC,IAAA,cAAc,EAAGR,cAFlB;AAGC,IAAA,QAAQ,EAAGL,QAHZ;AAIC,IAAA,aAAa,EAAGD,aAJjB;AAKC,IAAA,oBAAoB,EAAG,MACtBU,8BAA8B,CAAE,IAAF;AANhC,IADD,CATF,EAqBGwB,iBAAiB,IAClBT,eADC,KAECX,IAAI,KAAK,QAAT,IAAqBA,IAAI,KAAK,QAF/B,KAGA,cAAC,aAAD,QACC,cAAC,YAAD;AAAc,IAAA,SAAS,EAAC;AAAxB,KACC,cAAC,aAAD;AACC,IAAA,OAAO,EAAG,MACTJ,8BAA8B,CAAE,IAAF;AAFhC,KAKGxB,EAAE,CAAE,SAAF,CALL,CADD,CADD,CAxBH,EAoCGgD,iBAAiB,IAClB,cAAC,uBAAD;AACC,IAAA,OAAO,EAAGC,OADX;AAEC,IAAA,UAAU,EAAGN,UAFd;AAGC,IAAA,MAAM,EAAGvB,cAHV;AAIC,IAAA,cAAc,EAAGM,WAAW,CAACc,MAAZ,GAAqB,CAJvC;AAKC,IAAA,MAAM,EAAGrB;AALV,IArCF,EA6CG,CAAE4B,aAAF,IAAmB,CAAEtB,UAArB,IACD,cAAC,OAAD,EAAckB,UAAd,EACC,cAAC,OAAD,OADD,CA9CF,EAkDGpB,2BAA2B,IAC5B,cAAC,KAAD;AACC,IAAA,SAAS,EAAC,6CADX;AAEC,IAAA,KAAK,EAAGtB,OAAO,EACd;AACAD,IAAAA,EAAE,CAAE,aAAF,CAFY,EAGdyC,UAAU,CAACS,KAAX,CAAiBC,WAAjB,EAHc,CAFhB;AAOC,IAAA,UAAU,EAAGnD,EAAE,CAAE,QAAF,CAPhB;AAQC,IAAA,cAAc,EAAG,MAChBwB,8BAA8B,CAAE,KAAF;AAThC,KAYC,cAAC,0BAAD;AACC,IAAA,cAAc,EAAGJ,cADlB;AAEC,IAAA,QAAQ,EAAGL,QAFZ;AAGC,IAAA,IAAI,EAAGa,IAHR;AAIC,IAAA,aAAa,EAAGd,aAJjB;AAKC,IAAA,OAAO,EAAG,MACTU,8BAA8B,CAAE,KAAF;AANhC,IAZD,CAnDF,CADD;AA6EA","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tuseBlockProps,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n\tWarning,\n\tstore as blockEditorStore,\n\t__experimentalUseBlockOverlayActive as useBlockOverlayActive,\n} from '@wordpress/block-editor';\nimport {\n\tToolbarGroup,\n\tToolbarButton,\n\tSpinner,\n\tModal,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport TemplatePartPlaceholder from './placeholder';\nimport TemplatePartSelectionModal from './selection-modal';\nimport { TemplatePartAdvancedControls } from './advanced-controls';\nimport TemplatePartInnerBlocks from './inner-blocks';\nimport { createTemplatePartId } from './utils/create-template-part-id';\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseTemplatePartArea,\n} from './utils/hooks';\n\nexport default function TemplatePartEdit( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n} ) {\n\tconst { slug, theme, tagName, layout = {} } = attributes;\n\tconst templatePartId = createTemplatePartId( theme, slug );\n\tconst [ hasAlreadyRendered, RecursionProvider ] = useNoRecursiveRenders(\n\t\ttemplatePartId\n\t);\n\tconst [\n\t\tisTemplatePartSelectionOpen,\n\t\tsetIsTemplatePartSelectionOpen,\n\t] = useState( false );\n\n\t// Set the postId block attribute if it did not exist,\n\t// but wait until the inner blocks have loaded to allow\n\t// new edits to trigger this.\n\tconst { isResolved, innerBlocks, isMissing, area } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, hasFinishedResolution } = select(\n\t\t\t\tcoreStore\n\t\t\t);\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\n\t\t\tconst getEntityArgs = [\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\ttemplatePartId,\n\t\t\t];\n\t\t\tconst entityRecord = templatePartId\n\t\t\t\t? getEditedEntityRecord( ...getEntityArgs )\n\t\t\t\t: null;\n\t\t\tconst _area = entityRecord?.area || attributes.area;\n\t\t\tconst hasResolvedEntity = templatePartId\n\t\t\t\t? hasFinishedResolution(\n\t\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\t\tgetEntityArgs\n\t\t\t\t )\n\t\t\t\t: false;\n\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisResolved: hasResolvedEntity,\n\t\t\t\tisMissing: hasResolvedEntity && isEmpty( entityRecord ),\n\t\t\t\tarea: _area,\n\t\t\t};\n\t\t},\n\t\t[ templatePartId, clientId ]\n\t);\n\tconst { templateParts } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\tconst hasReplacements = !! templateParts.length || !! blockPatterns.length;\n\tconst areaObject = useTemplatePartArea( area );\n\tconst hasBlockOverlay = useBlockOverlayActive( clientId );\n\tconst blockProps = useBlockProps(\n\t\t{\n\t\t\tclassName: hasBlockOverlay\n\t\t\t\t? 'block-editor-block-content-overlay'\n\t\t\t\t: undefined,\n\t\t},\n\t\t{ __unstableIsDisabled: hasBlockOverlay }\n\t);\n\tconst isPlaceholder = ! slug;\n\tconst isEntityAvailable = ! isPlaceholder && ! isMissing && isResolved;\n\tconst TagName = tagName || areaObject.tagName;\n\n\t// We don't want to render a missing state if we have any inner blocks.\n\t// A new template part is automatically created if we have any inner blocks but no entity.\n\tif (\n\t\tinnerBlocks.length === 0 &&\n\t\t( ( slug && ! theme ) || ( slug && isMissing ) )\n\t) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %s: Template part slug */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Template part has been deleted or is unavailable: %s'\n\t\t\t\t\t\t),\n\t\t\t\t\t\tslug\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<RecursionProvider>\n\t\t\t<TemplatePartAdvancedControls\n\t\t\t\ttagName={ tagName }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tisEntityAvailable={ isEntityAvailable }\n\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\tdefaultWrapper={ areaObject.tagName }\n\t\t\t/>\n\t\t\t{ isPlaceholder && (\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t<TemplatePartPlaceholder\n\t\t\t\t\t\tarea={ attributes.area }\n\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tonOpenSelectionModal={ () =>\n\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</TagName>\n\t\t\t) }\n\t\t\t{ isEntityAvailable &&\n\t\t\t\thasReplacements &&\n\t\t\t\t( area === 'header' || area === 'footer' ) && (\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<ToolbarGroup className=\"wp-block-template-part__block-control-group\">\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Replace' ) }\n\t\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t) }\n\t\t\t{ isEntityAvailable && (\n\t\t\t\t<TemplatePartInnerBlocks\n\t\t\t\t\ttagName={ TagName }\n\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\tpostId={ templatePartId }\n\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t\tlayout={ layout }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ! isPlaceholder && ! isResolved && (\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</TagName>\n\t\t\t) }\n\t\t\t{ isTemplatePartSelectionOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\tclassName=\"block-editor-template-part__selection-modal\"\n\t\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t__( 'Choose a %s' ),\n\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t) }\n\t\t\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\t\t\tonRequestClose={ () =>\n\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<TemplatePartSelectionModal\n\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tarea={ area }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tonClose={ () =>\n\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</RecursionProvider>\n\t);\n}\n"]}
@@ -4,16 +4,15 @@ import { createElement } from "@wordpress/element";
4
4
  * WordPress dependencies
5
5
  */
6
6
  import { useEntityBlockEditor } from '@wordpress/core-data';
7
- import { InnerBlocks, useInnerBlocksProps, __experimentalBlockContentOverlay as BlockContentOverlay, useSetting, store as blockEditorStore } from '@wordpress/block-editor';
7
+ import { InnerBlocks, useInnerBlocksProps, useSetting, store as blockEditorStore } from '@wordpress/block-editor';
8
8
  import { useSelect } from '@wordpress/data';
9
9
  export default function TemplatePartInnerBlocks(_ref) {
10
10
  let {
11
11
  postId: id,
12
12
  hasInnerBlocks,
13
13
  layout,
14
- tagName,
15
- blockProps,
16
- clientId
14
+ tagName: TagName,
15
+ blockProps
17
16
  } = _ref;
18
17
  const themeSupportsLayout = useSelect(select => {
19
18
  var _getSettings;
@@ -35,10 +34,6 @@ export default function TemplatePartInnerBlocks(_ref) {
35
34
  renderAppender: hasInnerBlocks ? undefined : InnerBlocks.ButtonBlockAppender,
36
35
  __experimentalLayout: themeSupportsLayout ? usedLayout : undefined
37
36
  });
38
- return createElement(BlockContentOverlay, {
39
- clientId: clientId,
40
- tagName: tagName,
41
- wrapperProps: innerBlocksProps
42
- });
37
+ return createElement(TagName, innerBlocksProps);
43
38
  }
44
39
  //# sourceMappingURL=inner-blocks.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/inner-blocks.js"],"names":["useEntityBlockEditor","InnerBlocks","useInnerBlocksProps","__experimentalBlockContentOverlay","BlockContentOverlay","useSetting","store","blockEditorStore","useSelect","TemplatePartInnerBlocks","postId","id","hasInnerBlocks","layout","tagName","blockProps","clientId","themeSupportsLayout","select","getSettings","supportsLayout","defaultLayout","usedLayout","inherit","blocks","onInput","onChange","innerBlocksProps","value","renderAppender","undefined","ButtonBlockAppender","__experimentalLayout"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,oBAAT,QAAqC,sBAArC;AACA,SACCC,WADD,EAECC,mBAFD,EAGCC,iCAAiC,IAAIC,mBAHtC,EAICC,UAJD,EAKCC,KAAK,IAAIC,gBALV,QAMO,yBANP;AAOA,SAASC,SAAT,QAA0B,iBAA1B;AAEA,eAAe,SAASC,uBAAT,OAOX;AAAA,MAP6C;AAChDC,IAAAA,MAAM,EAAEC,EADwC;AAEhDC,IAAAA,cAFgD;AAGhDC,IAAAA,MAHgD;AAIhDC,IAAAA,OAJgD;AAKhDC,IAAAA,UALgD;AAMhDC,IAAAA;AANgD,GAO7C;AACH,QAAMC,mBAAmB,GAAGT,SAAS,CAAIU,MAAF,IAAc;AAAA;;AACpD,UAAM;AAAEC,MAAAA;AAAF,QAAkBD,MAAM,CAAEX,gBAAF,CAA9B;AACA,2BAAOY,WAAW,EAAlB,iDAAO,aAAeC,cAAtB;AACA,GAHoC,EAGlC,EAHkC,CAArC;AAIA,QAAMC,aAAa,GAAGhB,UAAU,CAAE,QAAF,CAAV,IAA0B,EAAhD;AACA,QAAMiB,UAAU,GAAG,CAAC,CAAET,MAAH,IAAaA,MAAM,CAACU,OAApB,GAA8BF,aAA9B,GAA8CR,MAAjE;AAEA,QAAM,CAAEW,MAAF,EAAUC,OAAV,EAAmBC,QAAnB,IAAgC1B,oBAAoB,CACzD,UADyD,EAEzD,kBAFyD,EAGzD;AAAEW,IAAAA;AAAF,GAHyD,CAA1D;AAMA,QAAMgB,gBAAgB,GAAGzB,mBAAmB,CAAEa,UAAF,EAAc;AACzDa,IAAAA,KAAK,EAAEJ,MADkD;AAEzDC,IAAAA,OAFyD;AAGzDC,IAAAA,QAHyD;AAIzDG,IAAAA,cAAc,EAAEjB,cAAc,GAC3BkB,SAD2B,GAE3B7B,WAAW,CAAC8B,mBAN0C;AAOzDC,IAAAA,oBAAoB,EAAEf,mBAAmB,GAAGK,UAAH,GAAgBQ;AAPA,GAAd,CAA5C;AAUA,SACC,cAAC,mBAAD;AACC,IAAA,QAAQ,EAAGd,QADZ;AAEC,IAAA,OAAO,EAAGF,OAFX;AAGC,IAAA,YAAY,EAAGa;AAHhB,IADD;AAOA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityBlockEditor } from '@wordpress/core-data';\nimport {\n\tInnerBlocks,\n\tuseInnerBlocksProps,\n\t__experimentalBlockContentOverlay as BlockContentOverlay,\n\tuseSetting,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\nexport default function TemplatePartInnerBlocks( {\n\tpostId: id,\n\thasInnerBlocks,\n\tlayout,\n\ttagName,\n\tblockProps,\n\tclientId,\n} ) {\n\tconst themeSupportsLayout = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn getSettings()?.supportsLayout;\n\t}, [] );\n\tconst defaultLayout = useSetting( 'layout' ) || {};\n\tconst usedLayout = !! layout && layout.inherit ? defaultLayout : layout;\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t{ id }\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tvalue: blocks,\n\t\tonInput,\n\t\tonChange,\n\t\trenderAppender: hasInnerBlocks\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t\t__experimentalLayout: themeSupportsLayout ? usedLayout : undefined,\n\t} );\n\n\treturn (\n\t\t<BlockContentOverlay\n\t\t\tclientId={ clientId }\n\t\t\ttagName={ tagName }\n\t\t\twrapperProps={ innerBlocksProps }\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/template-part/edit/inner-blocks.js"],"names":["useEntityBlockEditor","InnerBlocks","useInnerBlocksProps","useSetting","store","blockEditorStore","useSelect","TemplatePartInnerBlocks","postId","id","hasInnerBlocks","layout","tagName","TagName","blockProps","themeSupportsLayout","select","getSettings","supportsLayout","defaultLayout","usedLayout","inherit","blocks","onInput","onChange","innerBlocksProps","value","renderAppender","undefined","ButtonBlockAppender","__experimentalLayout"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,oBAAT,QAAqC,sBAArC;AACA,SACCC,WADD,EAECC,mBAFD,EAGCC,UAHD,EAICC,KAAK,IAAIC,gBAJV,QAKO,yBALP;AAMA,SAASC,SAAT,QAA0B,iBAA1B;AAEA,eAAe,SAASC,uBAAT,OAMX;AAAA,MAN6C;AAChDC,IAAAA,MAAM,EAAEC,EADwC;AAEhDC,IAAAA,cAFgD;AAGhDC,IAAAA,MAHgD;AAIhDC,IAAAA,OAAO,EAAEC,OAJuC;AAKhDC,IAAAA;AALgD,GAM7C;AACH,QAAMC,mBAAmB,GAAGT,SAAS,CAAIU,MAAF,IAAc;AAAA;;AACpD,UAAM;AAAEC,MAAAA;AAAF,QAAkBD,MAAM,CAAEX,gBAAF,CAA9B;AACA,2BAAOY,WAAW,EAAlB,iDAAO,aAAeC,cAAtB;AACA,GAHoC,EAGlC,EAHkC,CAArC;AAIA,QAAMC,aAAa,GAAGhB,UAAU,CAAE,QAAF,CAAV,IAA0B,EAAhD;AACA,QAAMiB,UAAU,GAAG,CAAC,CAAET,MAAH,IAAaA,MAAM,CAACU,OAApB,GAA8BF,aAA9B,GAA8CR,MAAjE;AAEA,QAAM,CAAEW,MAAF,EAAUC,OAAV,EAAmBC,QAAnB,IAAgCxB,oBAAoB,CACzD,UADyD,EAEzD,kBAFyD,EAGzD;AAAES,IAAAA;AAAF,GAHyD,CAA1D;AAMA,QAAMgB,gBAAgB,GAAGvB,mBAAmB,CAAEY,UAAF,EAAc;AACzDY,IAAAA,KAAK,EAAEJ,MADkD;AAEzDC,IAAAA,OAFyD;AAGzDC,IAAAA,QAHyD;AAIzDG,IAAAA,cAAc,EAAEjB,cAAc,GAC3BkB,SAD2B,GAE3B3B,WAAW,CAAC4B,mBAN0C;AAOzDC,IAAAA,oBAAoB,EAAEf,mBAAmB,GAAGK,UAAH,GAAgBQ;AAPA,GAAd,CAA5C;AAUA,SAAO,cAAC,OAAD,EAAcH,gBAAd,CAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityBlockEditor } from '@wordpress/core-data';\nimport {\n\tInnerBlocks,\n\tuseInnerBlocksProps,\n\tuseSetting,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\nexport default function TemplatePartInnerBlocks( {\n\tpostId: id,\n\thasInnerBlocks,\n\tlayout,\n\ttagName: TagName,\n\tblockProps,\n} ) {\n\tconst themeSupportsLayout = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn getSettings()?.supportsLayout;\n\t}, [] );\n\tconst defaultLayout = useSetting( 'layout' ) || {};\n\tconst usedLayout = !! layout && layout.inherit ? defaultLayout : layout;\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t{ id }\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tvalue: blocks,\n\t\tonInput,\n\t\tonChange,\n\t\trenderAppender: hasInnerBlocks\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t\t__experimentalLayout: themeSupportsLayout ? usedLayout : undefined,\n\t} );\n\n\treturn <TagName { ...innerBlocksProps } />;\n}\n"]}
@@ -16,7 +16,7 @@ import { __, sprintf } from '@wordpress/i18n';
16
16
  import { useInstanceId } from '@wordpress/compose';
17
17
  import { useSelect } from '@wordpress/data';
18
18
  import { video as icon } from '@wordpress/icons';
19
- import { createBlock } from '@wordpress/blocks';
19
+ import { createBlock, getDefaultBlockName } from '@wordpress/blocks';
20
20
  /**
21
21
  * Internal dependencies
22
22
  */
@@ -51,7 +51,7 @@ function VideoEdit(_ref) {
51
51
  tracks
52
52
  } = attributes;
53
53
  const isTemporaryVideo = !id && isBlobURL(src);
54
- const mediaUpload = useSelect(select => select(blockEditorStore).getSettings().mediaUpload);
54
+ const mediaUpload = useSelect(select => select(blockEditorStore).getSettings().mediaUpload, []);
55
55
  useEffect(() => {
56
56
  if (!id && isBlobURL(src)) {
57
57
  const file = getBlobByURL(src);
@@ -60,12 +60,8 @@ function VideoEdit(_ref) {
60
60
  mediaUpload({
61
61
  filesList: [file],
62
62
  onFileChange: _ref2 => {
63
- let [{
64
- url
65
- }] = _ref2;
66
- setAttributes({
67
- src: url
68
- });
63
+ let [media] = _ref2;
64
+ return onSelectVideo(media);
69
65
  },
70
66
  onError: message => {
71
67
  noticeOperations.createErrorNotice(message);
@@ -237,7 +233,7 @@ function VideoEdit(_ref) {
237
233
  caption: value
238
234
  }),
239
235
  inlineToolbar: true,
240
- __unstableOnSplitAtEnd: () => insertBlocksAfter(createBlock('core/paragraph'))
236
+ __unstableOnSplitAtEnd: () => insertBlocksAfter(createBlock(getDefaultBlockName()))
241
237
  })));
242
238
  }
243
239
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/video/edit.js"],"names":["classnames","getBlobByURL","isBlobURL","BaseControl","Button","Disabled","PanelBody","Spinner","withNotices","BlockControls","BlockIcon","InspectorControls","MediaPlaceholder","MediaUpload","MediaUploadCheck","MediaReplaceFlow","RichText","useBlockProps","store","blockEditorStore","useRef","useEffect","__","sprintf","useInstanceId","useSelect","video","icon","createBlock","createUpgradedEmbedBlock","VideoCommonSettings","TracksEditor","Tracks","ALLOWED_MEDIA_TYPES","VIDEO_POSTER_ALLOWED_MEDIA_TYPES","VideoEdit","isSelected","noticeUI","attributes","className","setAttributes","insertBlocksAfter","onReplace","noticeOperations","instanceId","videoPlayer","posterImageButton","id","caption","controls","poster","src","tracks","isTemporaryVideo","mediaUpload","select","getSettings","file","filesList","onFileChange","url","onError","message","createErrorNotice","allowedTypes","current","load","onSelectVideo","media","undefined","image","onSelectURL","newSrc","embedBlock","onUploadError","removeAllNotices","classes","blockProps","onSelectPoster","onRemovePoster","focus","videoPosterDescription","newTracks","open","isEmpty","value"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { getBlobByURL, isBlobURL } from '@wordpress/blob';\nimport {\n\tBaseControl,\n\tButton,\n\tDisabled,\n\tPanelBody,\n\tSpinner,\n\twithNotices,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadCheck,\n\tMediaReplaceFlow,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useRef, useEffect } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { video as icon } from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport VideoCommonSettings from './edit-common-settings';\nimport TracksEditor from './tracks-editor';\nimport Tracks from './tracks';\n\nconst ALLOWED_MEDIA_TYPES = [ 'video' ];\nconst VIDEO_POSTER_ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nfunction VideoEdit( {\n\tisSelected,\n\tnoticeUI,\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tonReplace,\n\tnoticeOperations,\n} ) {\n\tconst instanceId = useInstanceId( VideoEdit );\n\tconst videoPlayer = useRef();\n\tconst posterImageButton = useRef();\n\tconst { id, caption, controls, poster, src, tracks } = attributes;\n\tconst isTemporaryVideo = ! id && isBlobURL( src );\n\tconst mediaUpload = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings().mediaUpload\n\t);\n\n\tuseEffect( () => {\n\t\tif ( ! id && isBlobURL( src ) ) {\n\t\t\tconst file = getBlobByURL( src );\n\t\t\tif ( file ) {\n\t\t\t\tmediaUpload( {\n\t\t\t\t\tfilesList: [ file ],\n\t\t\t\t\tonFileChange: ( [ { url } ] ) => {\n\t\t\t\t\t\tsetAttributes( { src: url } );\n\t\t\t\t\t},\n\t\t\t\t\tonError: ( message ) => {\n\t\t\t\t\t\tnoticeOperations.createErrorNotice( message );\n\t\t\t\t\t},\n\t\t\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t// Placeholder may be rendered.\n\t\tif ( videoPlayer.current ) {\n\t\t\tvideoPlayer.current.load();\n\t\t}\n\t}, [ poster ] );\n\n\tfunction onSelectVideo( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\t// In this case there was an error\n\t\t\t// previous attributes should be removed\n\t\t\t// because they may be temporary blob urls.\n\t\t\tsetAttributes( {\n\t\t\t\tsrc: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\tposter: undefined,\n\t\t\t} );\n\t\t\treturn;\n\t\t}\n\n\t\t// Sets the block's attribute and updates the edit component from the\n\t\t// selected media.\n\t\tsetAttributes( {\n\t\t\tsrc: media.url,\n\t\t\tid: media.id,\n\t\t\tposter:\n\t\t\t\tmedia.image?.src !== media.icon ? media.image?.src : undefined,\n\t\t} );\n\t}\n\n\tfunction onSelectURL( newSrc ) {\n\t\tif ( newSrc !== src ) {\n\t\t\t// Check if there's an embed block that handles this URL.\n\t\t\tconst embedBlock = createUpgradedEmbedBlock( {\n\t\t\t\tattributes: { url: newSrc },\n\t\t\t} );\n\t\t\tif ( undefined !== embedBlock ) {\n\t\t\t\tonReplace( embedBlock );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetAttributes( { src: newSrc, id: undefined, poster: undefined } );\n\t\t}\n\t}\n\n\tfunction onUploadError( message ) {\n\t\tnoticeOperations.removeAllNotices();\n\t\tnoticeOperations.createErrorNotice( message );\n\t}\n\n\tconst classes = classnames( className, {\n\t\t'is-transient': isTemporaryVideo,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t} );\n\n\tif ( ! src ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ attributes }\n\t\t\t\t\tnotices={ noticeUI }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tfunction onSelectPoster( image ) {\n\t\tsetAttributes( { poster: image.url } );\n\t}\n\n\tfunction onRemovePoster() {\n\t\tsetAttributes( { poster: undefined } );\n\n\t\t// Move focus back to the Media Upload button.\n\t\tposterImageButton.current.focus();\n\t}\n\n\tconst videoPosterDescription = `video-block__poster-image-description-${ instanceId }`;\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<TracksEditor\n\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\tonChange={ ( newTracks ) => {\n\t\t\t\t\t\tsetAttributes( { tracks: newTracks } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ src }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<VideoCommonSettings\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t<BaseControl className=\"editor-video-poster-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Poster image' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\ttitle={ __( 'Select poster image' ) }\n\t\t\t\t\t\t\t\tonSelect={ onSelectPoster }\n\t\t\t\t\t\t\t\tallowedTypes={\n\t\t\t\t\t\t\t\t\tVIDEO_POSTER_ALLOWED_MEDIA_TYPES\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\tref={ posterImageButton }\n\t\t\t\t\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t\t\t\t\tvideoPosterDescription\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ ! poster\n\t\t\t\t\t\t\t\t\t\t\t? __( 'Select' )\n\t\t\t\t\t\t\t\t\t\t\t: __( 'Replace' ) }\n\t\t\t\t\t\t\t\t\t</Button>\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<p id={ videoPosterDescription } hidden>\n\t\t\t\t\t\t\t\t{ poster\n\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t/* translators: %s: poster image URL. */\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'The current poster image url is %s'\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\tposter\n\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t\t\t'There is no poster image currently selected'\n\t\t\t\t\t\t\t\t\t ) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t{ !! poster && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tonClick={ onRemovePoster }\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Remove' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /*\n\t\t\t\t\tDisable the video tag if the block is not selected\n\t\t\t\t\tso the user clicking on it won't play the\n\t\t\t\t\tvideo when the controls are enabled.\n\t\t\t\t*/ }\n\t\t\t\t<Disabled isDisabled={ ! isSelected }>\n\t\t\t\t\t<video\n\t\t\t\t\t\tcontrols={ controls }\n\t\t\t\t\t\tposter={ poster }\n\t\t\t\t\t\tsrc={ src }\n\t\t\t\t\t\tref={ videoPlayer }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Tracks tracks={ tracks } />\n\t\t\t\t\t</video>\n\t\t\t\t</Disabled>\n\t\t\t\t{ isTemporaryVideo && <Spinner /> }\n\t\t\t\t{ ( ! RichText.isEmpty( caption ) || isSelected ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\taria-label={ __( 'Video caption text' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Add caption' ) }\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { caption: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tinlineToolbar\n\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\tinsertBlocksAfter( createBlock( 'core/paragraph' ) )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n\nexport default withNotices( VideoEdit );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/video/edit.js"],"names":["classnames","getBlobByURL","isBlobURL","BaseControl","Button","Disabled","PanelBody","Spinner","withNotices","BlockControls","BlockIcon","InspectorControls","MediaPlaceholder","MediaUpload","MediaUploadCheck","MediaReplaceFlow","RichText","useBlockProps","store","blockEditorStore","useRef","useEffect","__","sprintf","useInstanceId","useSelect","video","icon","createBlock","getDefaultBlockName","createUpgradedEmbedBlock","VideoCommonSettings","TracksEditor","Tracks","ALLOWED_MEDIA_TYPES","VIDEO_POSTER_ALLOWED_MEDIA_TYPES","VideoEdit","isSelected","noticeUI","attributes","className","setAttributes","insertBlocksAfter","onReplace","noticeOperations","instanceId","videoPlayer","posterImageButton","id","caption","controls","poster","src","tracks","isTemporaryVideo","mediaUpload","select","getSettings","file","filesList","onFileChange","media","onSelectVideo","onError","message","createErrorNotice","allowedTypes","current","load","url","undefined","image","onSelectURL","newSrc","embedBlock","onUploadError","removeAllNotices","classes","blockProps","onSelectPoster","onRemovePoster","focus","videoPosterDescription","newTracks","open","isEmpty","value"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { getBlobByURL, isBlobURL } from '@wordpress/blob';\nimport {\n\tBaseControl,\n\tButton,\n\tDisabled,\n\tPanelBody,\n\tSpinner,\n\twithNotices,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadCheck,\n\tMediaReplaceFlow,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useRef, useEffect } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { video as icon } from '@wordpress/icons';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport VideoCommonSettings from './edit-common-settings';\nimport TracksEditor from './tracks-editor';\nimport Tracks from './tracks';\n\nconst ALLOWED_MEDIA_TYPES = [ 'video' ];\nconst VIDEO_POSTER_ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nfunction VideoEdit( {\n\tisSelected,\n\tnoticeUI,\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tonReplace,\n\tnoticeOperations,\n} ) {\n\tconst instanceId = useInstanceId( VideoEdit );\n\tconst videoPlayer = useRef();\n\tconst posterImageButton = useRef();\n\tconst { id, caption, controls, poster, src, tracks } = attributes;\n\tconst isTemporaryVideo = ! id && isBlobURL( src );\n\tconst mediaUpload = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings().mediaUpload,\n\t\t[]\n\t);\n\n\tuseEffect( () => {\n\t\tif ( ! id && isBlobURL( src ) ) {\n\t\t\tconst file = getBlobByURL( src );\n\t\t\tif ( file ) {\n\t\t\t\tmediaUpload( {\n\t\t\t\t\tfilesList: [ file ],\n\t\t\t\t\tonFileChange: ( [ media ] ) => onSelectVideo( media ),\n\t\t\t\t\tonError: ( message ) => {\n\t\t\t\t\t\tnoticeOperations.createErrorNotice( message );\n\t\t\t\t\t},\n\t\t\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t// Placeholder may be rendered.\n\t\tif ( videoPlayer.current ) {\n\t\t\tvideoPlayer.current.load();\n\t\t}\n\t}, [ poster ] );\n\n\tfunction onSelectVideo( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\t// In this case there was an error\n\t\t\t// previous attributes should be removed\n\t\t\t// because they may be temporary blob urls.\n\t\t\tsetAttributes( {\n\t\t\t\tsrc: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\tposter: undefined,\n\t\t\t} );\n\t\t\treturn;\n\t\t}\n\n\t\t// Sets the block's attribute and updates the edit component from the\n\t\t// selected media.\n\t\tsetAttributes( {\n\t\t\tsrc: media.url,\n\t\t\tid: media.id,\n\t\t\tposter:\n\t\t\t\tmedia.image?.src !== media.icon ? media.image?.src : undefined,\n\t\t} );\n\t}\n\n\tfunction onSelectURL( newSrc ) {\n\t\tif ( newSrc !== src ) {\n\t\t\t// Check if there's an embed block that handles this URL.\n\t\t\tconst embedBlock = createUpgradedEmbedBlock( {\n\t\t\t\tattributes: { url: newSrc },\n\t\t\t} );\n\t\t\tif ( undefined !== embedBlock ) {\n\t\t\t\tonReplace( embedBlock );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetAttributes( { src: newSrc, id: undefined, poster: undefined } );\n\t\t}\n\t}\n\n\tfunction onUploadError( message ) {\n\t\tnoticeOperations.removeAllNotices();\n\t\tnoticeOperations.createErrorNotice( message );\n\t}\n\n\tconst classes = classnames( className, {\n\t\t'is-transient': isTemporaryVideo,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t} );\n\n\tif ( ! src ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ attributes }\n\t\t\t\t\tnotices={ noticeUI }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tfunction onSelectPoster( image ) {\n\t\tsetAttributes( { poster: image.url } );\n\t}\n\n\tfunction onRemovePoster() {\n\t\tsetAttributes( { poster: undefined } );\n\n\t\t// Move focus back to the Media Upload button.\n\t\tposterImageButton.current.focus();\n\t}\n\n\tconst videoPosterDescription = `video-block__poster-image-description-${ instanceId }`;\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<TracksEditor\n\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\tonChange={ ( newTracks ) => {\n\t\t\t\t\t\tsetAttributes( { tracks: newTracks } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ src }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<VideoCommonSettings\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t<BaseControl className=\"editor-video-poster-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Poster image' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\ttitle={ __( 'Select poster image' ) }\n\t\t\t\t\t\t\t\tonSelect={ onSelectPoster }\n\t\t\t\t\t\t\t\tallowedTypes={\n\t\t\t\t\t\t\t\t\tVIDEO_POSTER_ALLOWED_MEDIA_TYPES\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\tref={ posterImageButton }\n\t\t\t\t\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t\t\t\t\tvideoPosterDescription\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ ! poster\n\t\t\t\t\t\t\t\t\t\t\t? __( 'Select' )\n\t\t\t\t\t\t\t\t\t\t\t: __( 'Replace' ) }\n\t\t\t\t\t\t\t\t\t</Button>\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<p id={ videoPosterDescription } hidden>\n\t\t\t\t\t\t\t\t{ poster\n\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t/* translators: %s: poster image URL. */\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'The current poster image url is %s'\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\tposter\n\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t\t\t'There is no poster image currently selected'\n\t\t\t\t\t\t\t\t\t ) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t{ !! poster && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tonClick={ onRemovePoster }\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Remove' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /*\n\t\t\t\t\tDisable the video tag if the block is not selected\n\t\t\t\t\tso the user clicking on it won't play the\n\t\t\t\t\tvideo when the controls are enabled.\n\t\t\t\t*/ }\n\t\t\t\t<Disabled isDisabled={ ! isSelected }>\n\t\t\t\t\t<video\n\t\t\t\t\t\tcontrols={ controls }\n\t\t\t\t\t\tposter={ poster }\n\t\t\t\t\t\tsrc={ src }\n\t\t\t\t\t\tref={ videoPlayer }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Tracks tracks={ tracks } />\n\t\t\t\t\t</video>\n\t\t\t\t</Disabled>\n\t\t\t\t{ isTemporaryVideo && <Spinner /> }\n\t\t\t\t{ ( ! RichText.isEmpty( caption ) || isSelected ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\taria-label={ __( 'Video caption text' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Add caption' ) }\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { caption: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tinlineToolbar\n\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\tcreateBlock( getDefaultBlockName() )\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) }\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n\nexport default withNotices( VideoEdit );\n"]}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Colors
3
+ */
4
+ /**
5
+ * Breakpoints & Media Queries
6
+ */
7
+ /**
8
+ * SCSS Variables.
9
+ *
10
+ * Please use variables from this sheet to ensure consistency across the UI.
11
+ * Don't add to this sheet unless you're pretty sure the value will be reused in many places.
12
+ * For example, don't add rules to this sheet that affect block visuals. It's purely for UI.
13
+ */
14
+ /**
15
+ * Colors
16
+ */
17
+ /**
18
+ * Fonts & basic variables.
19
+ */
20
+ /**
21
+ * Grid System.
22
+ * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/
23
+ */
24
+ /**
25
+ * Dimensions.
26
+ */
27
+ /**
28
+ * Shadows.
29
+ */
30
+ /**
31
+ * Editor widths.
32
+ */
33
+ /**
34
+ * Block & Editor UI.
35
+ */
36
+ /**
37
+ * Block paddings.
38
+ */
39
+ /**
40
+ * React Native specific.
41
+ * These variables do not appear to be used anywhere else.
42
+ */
43
+ /**
44
+ * Converts a hex value into the rgb equivalent.
45
+ *
46
+ * @param {string} hex - the hexadecimal value to convert
47
+ * @return {string} comma separated rgb values
48
+ */
49
+ /**
50
+ * Breakpoint mixins
51
+ */
52
+ /**
53
+ * Long content fade mixin
54
+ *
55
+ * Creates a fading overlay to signify that the content is longer
56
+ * than the space allows.
57
+ */
58
+ /**
59
+ * Focus styles.
60
+ */
61
+ /**
62
+ * Applies editor left position to the selector passed as argument
63
+ */
64
+ /**
65
+ * Styles that are reused verbatim in a few places
66
+ */
67
+ /**
68
+ * Allows users to opt-out of animations via OS-level preferences.
69
+ */
70
+ /**
71
+ * Reset default styles for JavaScript UI based pages.
72
+ * This is a WP-admin agnostic reset
73
+ */
74
+ /**
75
+ * Reset the WP Admin page styles for Gutenberg-like pages.
76
+ */
77
+ .comment-awaiting-moderation {
78
+ display: block;
79
+ font-size: 0.875em;
80
+ line-height: 1.5;
81
+ }
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Colors
3
+ */
4
+ /**
5
+ * Breakpoints & Media Queries
6
+ */
7
+ /**
8
+ * SCSS Variables.
9
+ *
10
+ * Please use variables from this sheet to ensure consistency across the UI.
11
+ * Don't add to this sheet unless you're pretty sure the value will be reused in many places.
12
+ * For example, don't add rules to this sheet that affect block visuals. It's purely for UI.
13
+ */
14
+ /**
15
+ * Colors
16
+ */
17
+ /**
18
+ * Fonts & basic variables.
19
+ */
20
+ /**
21
+ * Grid System.
22
+ * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/
23
+ */
24
+ /**
25
+ * Dimensions.
26
+ */
27
+ /**
28
+ * Shadows.
29
+ */
30
+ /**
31
+ * Editor widths.
32
+ */
33
+ /**
34
+ * Block & Editor UI.
35
+ */
36
+ /**
37
+ * Block paddings.
38
+ */
39
+ /**
40
+ * React Native specific.
41
+ * These variables do not appear to be used anywhere else.
42
+ */
43
+ /**
44
+ * Converts a hex value into the rgb equivalent.
45
+ *
46
+ * @param {string} hex - the hexadecimal value to convert
47
+ * @return {string} comma separated rgb values
48
+ */
49
+ /**
50
+ * Breakpoint mixins
51
+ */
52
+ /**
53
+ * Long content fade mixin
54
+ *
55
+ * Creates a fading overlay to signify that the content is longer
56
+ * than the space allows.
57
+ */
58
+ /**
59
+ * Focus styles.
60
+ */
61
+ /**
62
+ * Applies editor left position to the selector passed as argument
63
+ */
64
+ /**
65
+ * Styles that are reused verbatim in a few places
66
+ */
67
+ /**
68
+ * Allows users to opt-out of animations via OS-level preferences.
69
+ */
70
+ /**
71
+ * Reset default styles for JavaScript UI based pages.
72
+ * This is a WP-admin agnostic reset
73
+ */
74
+ /**
75
+ * Reset the WP Admin page styles for Gutenberg-like pages.
76
+ */
77
+ .comment-awaiting-moderation {
78
+ display: block;
79
+ font-size: 0.875em;
80
+ line-height: 1.5;
81
+ }
@@ -97,27 +97,6 @@
97
97
  * - Issue with alternative fix: https://github.com/WordPress/gutenberg/issues/26545
98
98
  */
99
99
  }
100
- .wp-block-cover-image.has-parallax,
101
- .wp-block-cover.has-parallax {
102
- background-attachment: fixed;
103
- }
104
- @supports (-webkit-overflow-scrolling: touch) {
105
- .wp-block-cover-image.has-parallax,
106
- .wp-block-cover.has-parallax {
107
- background-attachment: scroll;
108
- }
109
- }
110
- @media (prefers-reduced-motion: reduce) {
111
- .wp-block-cover-image.has-parallax,
112
- .wp-block-cover.has-parallax {
113
- background-attachment: scroll;
114
- }
115
- }
116
- .wp-block-cover-image.is-repeated,
117
- .wp-block-cover.is-repeated {
118
- background-repeat: repeat;
119
- background-size: auto;
120
- }
121
100
  .wp-block-cover-image.has-background-dim:not([class*=-background-color]),
122
101
  .wp-block-cover-image .has-background-dim:not([class*=-background-color]),
123
102
  .wp-block-cover.has-background-dim:not([class*=-background-color]),
@@ -293,10 +272,6 @@
293
272
  .wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-100 {
294
273
  opacity: 1;
295
274
  }
296
- .wp-block-cover-image .block-library-cover__padding-visualizer,
297
- .wp-block-cover .block-library-cover__padding-visualizer {
298
- z-index: 2;
299
- }
300
275
  .wp-block-cover-image.alignleft, .wp-block-cover-image.alignright,
301
276
  .wp-block-cover.alignleft,
302
277
  .wp-block-cover.alignright {
@@ -398,9 +373,9 @@
398
373
  margin: 0;
399
374
  width: auto;
400
375
  }
401
- .wp-block-cover-image img.wp-block-cover__image-background,
376
+ .wp-block-cover-image .wp-block-cover__image-background,
402
377
  .wp-block-cover-image video.wp-block-cover__video-background,
403
- .wp-block-cover img.wp-block-cover__image-background,
378
+ .wp-block-cover .wp-block-cover__image-background,
404
379
  .wp-block-cover video.wp-block-cover__video-background {
405
380
  position: absolute;
406
381
  top: 0;
@@ -420,6 +395,36 @@
420
395
  box-shadow: none;
421
396
  }
422
397
 
398
+ .wp-block-cover-image.has-parallax,
399
+ .wp-block-cover.has-parallax,
400
+ .wp-block-cover__image-background.has-parallax,
401
+ video.wp-block-cover__video-background.has-parallax {
402
+ background-attachment: fixed;
403
+ }
404
+ @supports (-webkit-overflow-scrolling: touch) {
405
+ .wp-block-cover-image.has-parallax,
406
+ .wp-block-cover.has-parallax,
407
+ .wp-block-cover__image-background.has-parallax,
408
+ video.wp-block-cover__video-background.has-parallax {
409
+ background-attachment: scroll;
410
+ }
411
+ }
412
+ @media (prefers-reduced-motion: reduce) {
413
+ .wp-block-cover-image.has-parallax,
414
+ .wp-block-cover.has-parallax,
415
+ .wp-block-cover__image-background.has-parallax,
416
+ video.wp-block-cover__video-background.has-parallax {
417
+ background-attachment: scroll;
418
+ }
419
+ }
420
+ .wp-block-cover-image.is-repeated,
421
+ .wp-block-cover.is-repeated,
422
+ .wp-block-cover__image-background.is-repeated,
423
+ video.wp-block-cover__video-background.is-repeated {
424
+ background-repeat: repeat;
425
+ background-size: auto;
426
+ }
427
+
423
428
  .wp-block-cover__video-background {
424
429
  z-index: 0;
425
430
  }