@wordpress/block-library 8.34.0 → 8.35.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 (721) hide show
  1. package/CHANGELOG.md +8 -3
  2. package/build/audio/edit.js +2 -2
  3. package/build/audio/edit.js.map +1 -1
  4. package/build/avatar/edit.js +2 -2
  5. package/build/avatar/edit.js.map +1 -1
  6. package/build/block/edit.js +23 -165
  7. package/build/block/edit.js.map +1 -1
  8. package/build/button/deprecated.js +16 -16
  9. package/build/button/deprecated.js.map +1 -1
  10. package/build/button/edit.js +3 -7
  11. package/build/button/edit.js.map +1 -1
  12. package/build/button/index.js +1 -0
  13. package/build/button/index.js.map +1 -1
  14. package/build/button/save.js +3 -3
  15. package/build/button/save.js.map +1 -1
  16. package/build/buttons/deprecated.js +2 -2
  17. package/build/buttons/deprecated.js.map +1 -1
  18. package/build/buttons/edit.js +2 -2
  19. package/build/buttons/edit.js.map +1 -1
  20. package/build/buttons/save.js +2 -2
  21. package/build/buttons/save.js.map +1 -1
  22. package/build/categories/edit.js +2 -2
  23. package/build/categories/edit.js.map +1 -1
  24. package/build/column/deprecated.js +2 -2
  25. package/build/column/deprecated.js.map +1 -1
  26. package/build/column/edit.js +2 -2
  27. package/build/column/edit.js.map +1 -1
  28. package/build/column/save.js +2 -2
  29. package/build/column/save.js.map +1 -1
  30. package/build/columns/deprecated.js +3 -3
  31. package/build/columns/deprecated.js.map +1 -1
  32. package/build/columns/edit.js +2 -2
  33. package/build/columns/edit.js.map +1 -1
  34. package/build/columns/save.js +2 -2
  35. package/build/columns/save.js.map +1 -1
  36. package/build/comment-author-name/edit.js +2 -2
  37. package/build/comment-author-name/edit.js.map +1 -1
  38. package/build/comment-content/edit.js +2 -2
  39. package/build/comment-content/edit.js.map +1 -1
  40. package/build/comment-edit-link/edit.js +2 -2
  41. package/build/comment-edit-link/edit.js.map +1 -1
  42. package/build/comment-reply-link/edit.js +2 -2
  43. package/build/comment-reply-link/edit.js.map +1 -1
  44. package/build/comments/edit/comments-legacy.js +2 -2
  45. package/build/comments/edit/comments-legacy.js.map +1 -1
  46. package/build/comments-title/edit.js +2 -2
  47. package/build/comments-title/edit.js.map +1 -1
  48. package/build/cover/deprecated.js +38 -38
  49. package/build/cover/deprecated.js.map +1 -1
  50. package/build/cover/edit/index.js +6 -6
  51. package/build/cover/edit/index.js.map +1 -1
  52. package/build/cover/edit/resizable-cover-popover.js +2 -2
  53. package/build/cover/edit/resizable-cover-popover.js.map +1 -1
  54. package/build/cover/edit.native.js +2 -2
  55. package/build/cover/edit.native.js.map +1 -1
  56. package/build/cover/save.js +5 -5
  57. package/build/cover/save.js.map +1 -1
  58. package/build/embed/deprecated.js +3 -3
  59. package/build/embed/deprecated.js.map +1 -1
  60. package/build/embed/edit.js +2 -2
  61. package/build/embed/edit.js.map +1 -1
  62. package/build/embed/edit.native.js +2 -2
  63. package/build/embed/edit.native.js.map +1 -1
  64. package/build/embed/embed-preview.js +3 -3
  65. package/build/embed/embed-preview.js.map +1 -1
  66. package/build/embed/embed-preview.native.js +2 -2
  67. package/build/embed/embed-preview.native.js.map +1 -1
  68. package/build/embed/icons.js +7 -1
  69. package/build/embed/icons.js.map +1 -1
  70. package/build/embed/save.js +2 -2
  71. package/build/embed/save.js.map +1 -1
  72. package/build/embed/util.js +10 -8
  73. package/build/embed/util.js.map +1 -1
  74. package/build/embed/variations.js +9 -0
  75. package/build/embed/variations.js.map +1 -1
  76. package/build/file/deprecated.js +2 -2
  77. package/build/file/deprecated.js.map +1 -1
  78. package/build/file/edit.js +3 -3
  79. package/build/file/edit.js.map +1 -1
  80. package/build/file/save.js +2 -2
  81. package/build/file/save.js.map +1 -1
  82. package/build/form-input/deprecated.js +3 -3
  83. package/build/form-input/deprecated.js.map +1 -1
  84. package/build/form-input/edit.js +4 -4
  85. package/build/form-input/edit.js.map +1 -1
  86. package/build/form-input/save.js +3 -3
  87. package/build/form-input/save.js.map +1 -1
  88. package/build/form-submission-notification/edit.js +2 -2
  89. package/build/form-submission-notification/edit.js.map +1 -1
  90. package/build/form-submission-notification/save.js +2 -2
  91. package/build/form-submission-notification/save.js.map +1 -1
  92. package/build/gallery/deprecated.js +3 -3
  93. package/build/gallery/deprecated.js.map +1 -1
  94. package/build/gallery/edit.js +2 -2
  95. package/build/gallery/edit.js.map +1 -1
  96. package/build/gallery/gallery.js +2 -2
  97. package/build/gallery/gallery.js.map +1 -1
  98. package/build/gallery/save.js +3 -3
  99. package/build/gallery/save.js.map +1 -1
  100. package/build/gallery/v1/gallery-image.js +2 -2
  101. package/build/gallery/v1/gallery-image.js.map +1 -1
  102. package/build/gallery/v1/gallery.js +3 -3
  103. package/build/gallery/v1/gallery.js.map +1 -1
  104. package/build/gallery/v1/save.js +3 -3
  105. package/build/gallery/v1/save.js.map +1 -1
  106. package/build/group/deprecated.js +4 -4
  107. package/build/group/deprecated.js.map +1 -1
  108. package/build/heading/deprecated.js +6 -6
  109. package/build/heading/deprecated.js.map +1 -1
  110. package/build/heading/edit.js +2 -19
  111. package/build/heading/edit.js.map +1 -1
  112. package/build/heading/edit.native.js +2 -2
  113. package/build/heading/edit.native.js.map +1 -1
  114. package/build/heading/index.js +1 -0
  115. package/build/heading/index.js.map +1 -1
  116. package/build/heading/save.js +2 -2
  117. package/build/heading/save.js.map +1 -1
  118. package/build/home-link/edit.js +2 -2
  119. package/build/home-link/edit.js.map +1 -1
  120. package/build/html/edit.js +0 -2
  121. package/build/html/edit.js.map +1 -1
  122. package/build/image/deprecated.js +10 -10
  123. package/build/image/deprecated.js.map +1 -1
  124. package/build/image/edit.js +7 -5
  125. package/build/image/edit.js.map +1 -1
  126. package/build/image/image.js +5 -3
  127. package/build/image/image.js.map +1 -1
  128. package/build/image/save.js +3 -3
  129. package/build/image/save.js.map +1 -1
  130. package/build/latest-posts/edit.js +5 -5
  131. package/build/latest-posts/edit.js.map +1 -1
  132. package/build/list/deprecated.js +90 -1
  133. package/build/list/deprecated.js.map +1 -1
  134. package/build/list/index.js +0 -2
  135. package/build/list/index.js.map +1 -1
  136. package/build/list-item/edit.js +1 -8
  137. package/build/list-item/edit.js.map +1 -1
  138. package/build/list-item/index.js +2 -1
  139. package/build/list-item/index.js.map +1 -1
  140. package/build/media-text/deprecated.js +10 -10
  141. package/build/media-text/deprecated.js.map +1 -1
  142. package/build/media-text/edit.js +2 -2
  143. package/build/media-text/edit.js.map +1 -1
  144. package/build/media-text/media-container.js +2 -2
  145. package/build/media-text/media-container.js.map +1 -1
  146. package/build/media-text/save.js +3 -3
  147. package/build/media-text/save.js.map +1 -1
  148. package/build/navigation/edit/index.js +3 -3
  149. package/build/navigation/edit/index.js.map +1 -1
  150. package/build/navigation/edit/responsive-wrapper.js +3 -3
  151. package/build/navigation/edit/responsive-wrapper.js.map +1 -1
  152. package/build/navigation/edit/utils.js +2 -2
  153. package/build/navigation/edit/utils.js.map +1 -1
  154. package/build/navigation-link/edit.js +3 -3
  155. package/build/navigation-link/edit.js.map +1 -1
  156. package/build/navigation-submenu/edit.js +2 -2
  157. package/build/navigation-submenu/edit.js.map +1 -1
  158. package/build/page-list/edit.js +2 -2
  159. package/build/page-list/edit.js.map +1 -1
  160. package/build/page-list-item/edit.js +3 -3
  161. package/build/page-list-item/edit.js.map +1 -1
  162. package/build/paragraph/deprecated.js +6 -6
  163. package/build/paragraph/deprecated.js.map +1 -1
  164. package/build/paragraph/edit.js +2 -18
  165. package/build/paragraph/edit.js.map +1 -1
  166. package/build/paragraph/index.js +1 -0
  167. package/build/paragraph/index.js.map +1 -1
  168. package/build/paragraph/save.js +2 -2
  169. package/build/paragraph/save.js.map +1 -1
  170. package/build/paragraph/transforms.js +1 -0
  171. package/build/paragraph/transforms.js.map +1 -1
  172. package/build/pattern/edit.js +1 -1
  173. package/build/pattern/edit.js.map +1 -1
  174. package/build/post-author/edit.js +2 -2
  175. package/build/post-author/edit.js.map +1 -1
  176. package/build/post-author-biography/edit.js +2 -2
  177. package/build/post-author-biography/edit.js.map +1 -1
  178. package/build/post-author-name/edit.js +2 -2
  179. package/build/post-author-name/edit.js.map +1 -1
  180. package/build/post-comments-count/edit.js +2 -2
  181. package/build/post-comments-count/edit.js.map +1 -1
  182. package/build/post-comments-form/edit.js +2 -2
  183. package/build/post-comments-form/edit.js.map +1 -1
  184. package/build/post-comments-form/form.js +2 -2
  185. package/build/post-comments-form/form.js.map +1 -1
  186. package/build/post-comments-link/edit.js +2 -2
  187. package/build/post-comments-link/edit.js.map +1 -1
  188. package/build/post-date/edit.js +2 -2
  189. package/build/post-date/edit.js.map +1 -1
  190. package/build/post-excerpt/edit.js +3 -3
  191. package/build/post-excerpt/edit.js.map +1 -1
  192. package/build/post-featured-image/dimension-controls.js +20 -28
  193. package/build/post-featured-image/dimension-controls.js.map +1 -1
  194. package/build/post-featured-image/edit.js +3 -3
  195. package/build/post-featured-image/edit.js.map +1 -1
  196. package/build/post-featured-image/overlay.js +2 -2
  197. package/build/post-featured-image/overlay.js.map +1 -1
  198. package/build/post-navigation-link/edit.js +2 -2
  199. package/build/post-navigation-link/edit.js.map +1 -1
  200. package/build/post-template/edit.js +6 -6
  201. package/build/post-template/edit.js.map +1 -1
  202. package/build/post-terms/edit.js +2 -2
  203. package/build/post-terms/edit.js.map +1 -1
  204. package/build/post-time-to-read/edit.js +3 -3
  205. package/build/post-time-to-read/edit.js.map +1 -1
  206. package/build/post-title/edit.js +2 -2
  207. package/build/post-title/edit.js.map +1 -1
  208. package/build/pullquote/deprecated.js +7 -7
  209. package/build/pullquote/deprecated.js.map +1 -1
  210. package/build/pullquote/edit.js +2 -2
  211. package/build/pullquote/edit.js.map +1 -1
  212. package/build/pullquote/save.js +2 -2
  213. package/build/pullquote/save.js.map +1 -1
  214. package/build/query-title/edit.js +2 -2
  215. package/build/query-title/edit.js.map +1 -1
  216. package/build/quote/deprecated.js +3 -3
  217. package/build/quote/deprecated.js.map +1 -1
  218. package/build/quote/edit.js +2 -2
  219. package/build/quote/edit.js.map +1 -1
  220. package/build/quote/save.js +2 -2
  221. package/build/quote/save.js.map +1 -1
  222. package/build/rss/edit.js +8 -6
  223. package/build/rss/edit.js.map +1 -1
  224. package/build/search/edit.js +6 -6
  225. package/build/search/edit.js.map +1 -1
  226. package/build/search/edit.native.js +2 -2
  227. package/build/search/edit.native.js.map +1 -1
  228. package/build/separator/deprecated.js +2 -2
  229. package/build/separator/deprecated.js.map +1 -1
  230. package/build/separator/edit.js +2 -2
  231. package/build/separator/edit.js.map +1 -1
  232. package/build/separator/save.js +2 -2
  233. package/build/separator/save.js.map +1 -1
  234. package/build/shortcode/edit.js +7 -10
  235. package/build/shortcode/edit.js.map +1 -1
  236. package/build/site-logo/edit.js +4 -4
  237. package/build/site-logo/edit.js.map +1 -1
  238. package/build/site-tagline/edit.js +2 -2
  239. package/build/site-tagline/edit.js.map +1 -1
  240. package/build/site-title/edit.js +2 -2
  241. package/build/site-title/edit.js.map +1 -1
  242. package/build/social-link/edit.js +3 -3
  243. package/build/social-link/edit.js.map +1 -1
  244. package/build/social-links/deprecated.js +2 -2
  245. package/build/social-links/deprecated.js.map +1 -1
  246. package/build/social-links/edit.js +2 -2
  247. package/build/social-links/edit.js.map +1 -1
  248. package/build/social-links/save.js +2 -2
  249. package/build/social-links/save.js.map +1 -1
  250. package/build/spacer/edit.js +3 -3
  251. package/build/spacer/edit.js.map +1 -1
  252. package/build/table/deprecated.js +8 -8
  253. package/build/table/deprecated.js.map +1 -1
  254. package/build/table/edit.js +3 -3
  255. package/build/table/edit.js.map +1 -1
  256. package/build/table/save.js +3 -3
  257. package/build/table/save.js.map +1 -1
  258. package/build/term-description/edit.js +2 -2
  259. package/build/term-description/edit.js.map +1 -1
  260. package/build/utils/caption.js +2 -2
  261. package/build/utils/caption.js.map +1 -1
  262. package/build/verse/deprecated.js +2 -2
  263. package/build/verse/deprecated.js.map +1 -1
  264. package/build/verse/edit.js +2 -2
  265. package/build/verse/edit.js.map +1 -1
  266. package/build/verse/save.js +2 -2
  267. package/build/verse/save.js.map +1 -1
  268. package/build/video/edit.js +2 -2
  269. package/build/video/edit.js.map +1 -1
  270. package/build-module/audio/edit.js +2 -2
  271. package/build-module/audio/edit.js.map +1 -1
  272. package/build-module/avatar/edit.js +2 -2
  273. package/build-module/avatar/edit.js.map +1 -1
  274. package/build-module/block/edit.js +27 -169
  275. package/build-module/block/edit.js.map +1 -1
  276. package/build-module/button/deprecated.js +16 -16
  277. package/build-module/button/deprecated.js.map +1 -1
  278. package/build-module/button/edit.js +3 -7
  279. package/build-module/button/edit.js.map +1 -1
  280. package/build-module/button/index.js +1 -0
  281. package/build-module/button/index.js.map +1 -1
  282. package/build-module/button/save.js +3 -3
  283. package/build-module/button/save.js.map +1 -1
  284. package/build-module/buttons/deprecated.js +2 -2
  285. package/build-module/buttons/deprecated.js.map +1 -1
  286. package/build-module/buttons/edit.js +2 -2
  287. package/build-module/buttons/edit.js.map +1 -1
  288. package/build-module/buttons/save.js +2 -2
  289. package/build-module/buttons/save.js.map +1 -1
  290. package/build-module/categories/edit.js +2 -2
  291. package/build-module/categories/edit.js.map +1 -1
  292. package/build-module/column/deprecated.js +2 -2
  293. package/build-module/column/deprecated.js.map +1 -1
  294. package/build-module/column/edit.js +2 -2
  295. package/build-module/column/edit.js.map +1 -1
  296. package/build-module/column/save.js +2 -2
  297. package/build-module/column/save.js.map +1 -1
  298. package/build-module/columns/deprecated.js +3 -3
  299. package/build-module/columns/deprecated.js.map +1 -1
  300. package/build-module/columns/edit.js +2 -2
  301. package/build-module/columns/edit.js.map +1 -1
  302. package/build-module/columns/save.js +2 -2
  303. package/build-module/columns/save.js.map +1 -1
  304. package/build-module/comment-author-name/edit.js +2 -2
  305. package/build-module/comment-author-name/edit.js.map +1 -1
  306. package/build-module/comment-content/edit.js +2 -2
  307. package/build-module/comment-content/edit.js.map +1 -1
  308. package/build-module/comment-edit-link/edit.js +2 -2
  309. package/build-module/comment-edit-link/edit.js.map +1 -1
  310. package/build-module/comment-reply-link/edit.js +2 -2
  311. package/build-module/comment-reply-link/edit.js.map +1 -1
  312. package/build-module/comments/edit/comments-legacy.js +2 -2
  313. package/build-module/comments/edit/comments-legacy.js.map +1 -1
  314. package/build-module/comments-title/edit.js +2 -2
  315. package/build-module/comments-title/edit.js.map +1 -1
  316. package/build-module/cover/deprecated.js +38 -38
  317. package/build-module/cover/deprecated.js.map +1 -1
  318. package/build-module/cover/edit/index.js +6 -6
  319. package/build-module/cover/edit/index.js.map +1 -1
  320. package/build-module/cover/edit/resizable-cover-popover.js +2 -2
  321. package/build-module/cover/edit/resizable-cover-popover.js.map +1 -1
  322. package/build-module/cover/edit.native.js +2 -2
  323. package/build-module/cover/edit.native.js.map +1 -1
  324. package/build-module/cover/save.js +5 -5
  325. package/build-module/cover/save.js.map +1 -1
  326. package/build-module/embed/deprecated.js +3 -3
  327. package/build-module/embed/deprecated.js.map +1 -1
  328. package/build-module/embed/edit.js +2 -2
  329. package/build-module/embed/edit.js.map +1 -1
  330. package/build-module/embed/edit.native.js +2 -2
  331. package/build-module/embed/edit.native.js.map +1 -1
  332. package/build-module/embed/embed-preview.js +3 -3
  333. package/build-module/embed/embed-preview.js.map +1 -1
  334. package/build-module/embed/embed-preview.native.js +2 -2
  335. package/build-module/embed/embed-preview.native.js.map +1 -1
  336. package/build-module/embed/icons.js +6 -0
  337. package/build-module/embed/icons.js.map +1 -1
  338. package/build-module/embed/save.js +2 -2
  339. package/build-module/embed/save.js.map +1 -1
  340. package/build-module/embed/util.js +10 -8
  341. package/build-module/embed/util.js.map +1 -1
  342. package/build-module/embed/variations.js +10 -1
  343. package/build-module/embed/variations.js.map +1 -1
  344. package/build-module/file/deprecated.js +2 -2
  345. package/build-module/file/deprecated.js.map +1 -1
  346. package/build-module/file/edit.js +3 -3
  347. package/build-module/file/edit.js.map +1 -1
  348. package/build-module/file/save.js +2 -2
  349. package/build-module/file/save.js.map +1 -1
  350. package/build-module/form-input/deprecated.js +3 -3
  351. package/build-module/form-input/deprecated.js.map +1 -1
  352. package/build-module/form-input/edit.js +4 -4
  353. package/build-module/form-input/edit.js.map +1 -1
  354. package/build-module/form-input/save.js +3 -3
  355. package/build-module/form-input/save.js.map +1 -1
  356. package/build-module/form-submission-notification/edit.js +2 -2
  357. package/build-module/form-submission-notification/edit.js.map +1 -1
  358. package/build-module/form-submission-notification/save.js +2 -2
  359. package/build-module/form-submission-notification/save.js.map +1 -1
  360. package/build-module/gallery/deprecated.js +3 -3
  361. package/build-module/gallery/deprecated.js.map +1 -1
  362. package/build-module/gallery/edit.js +2 -2
  363. package/build-module/gallery/edit.js.map +1 -1
  364. package/build-module/gallery/gallery.js +2 -2
  365. package/build-module/gallery/gallery.js.map +1 -1
  366. package/build-module/gallery/save.js +3 -3
  367. package/build-module/gallery/save.js.map +1 -1
  368. package/build-module/gallery/v1/gallery-image.js +2 -2
  369. package/build-module/gallery/v1/gallery-image.js.map +1 -1
  370. package/build-module/gallery/v1/gallery.js +3 -3
  371. package/build-module/gallery/v1/gallery.js.map +1 -1
  372. package/build-module/gallery/v1/save.js +3 -3
  373. package/build-module/gallery/v1/save.js.map +1 -1
  374. package/build-module/group/deprecated.js +4 -4
  375. package/build-module/group/deprecated.js.map +1 -1
  376. package/build-module/heading/deprecated.js +6 -6
  377. package/build-module/heading/deprecated.js.map +1 -1
  378. package/build-module/heading/edit.js +2 -19
  379. package/build-module/heading/edit.js.map +1 -1
  380. package/build-module/heading/edit.native.js +2 -2
  381. package/build-module/heading/edit.native.js.map +1 -1
  382. package/build-module/heading/index.js +1 -0
  383. package/build-module/heading/index.js.map +1 -1
  384. package/build-module/heading/save.js +2 -2
  385. package/build-module/heading/save.js.map +1 -1
  386. package/build-module/home-link/edit.js +2 -2
  387. package/build-module/home-link/edit.js.map +1 -1
  388. package/build-module/html/edit.js +0 -2
  389. package/build-module/html/edit.js.map +1 -1
  390. package/build-module/image/deprecated.js +10 -10
  391. package/build-module/image/deprecated.js.map +1 -1
  392. package/build-module/image/edit.js +7 -5
  393. package/build-module/image/edit.js.map +1 -1
  394. package/build-module/image/image.js +5 -3
  395. package/build-module/image/image.js.map +1 -1
  396. package/build-module/image/save.js +3 -3
  397. package/build-module/image/save.js.map +1 -1
  398. package/build-module/latest-posts/edit.js +6 -6
  399. package/build-module/latest-posts/edit.js.map +1 -1
  400. package/build-module/list/deprecated.js +90 -1
  401. package/build-module/list/deprecated.js.map +1 -1
  402. package/build-module/list/index.js +0 -2
  403. package/build-module/list/index.js.map +1 -1
  404. package/build-module/list-item/edit.js +2 -9
  405. package/build-module/list-item/edit.js.map +1 -1
  406. package/build-module/list-item/index.js +2 -1
  407. package/build-module/list-item/index.js.map +1 -1
  408. package/build-module/media-text/deprecated.js +10 -10
  409. package/build-module/media-text/deprecated.js.map +1 -1
  410. package/build-module/media-text/edit.js +2 -2
  411. package/build-module/media-text/edit.js.map +1 -1
  412. package/build-module/media-text/media-container.js +2 -2
  413. package/build-module/media-text/media-container.js.map +1 -1
  414. package/build-module/media-text/save.js +3 -3
  415. package/build-module/media-text/save.js.map +1 -1
  416. package/build-module/navigation/edit/index.js +3 -3
  417. package/build-module/navigation/edit/index.js.map +1 -1
  418. package/build-module/navigation/edit/responsive-wrapper.js +3 -3
  419. package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
  420. package/build-module/navigation/edit/utils.js +2 -2
  421. package/build-module/navigation/edit/utils.js.map +1 -1
  422. package/build-module/navigation-link/edit.js +3 -3
  423. package/build-module/navigation-link/edit.js.map +1 -1
  424. package/build-module/navigation-submenu/edit.js +2 -2
  425. package/build-module/navigation-submenu/edit.js.map +1 -1
  426. package/build-module/page-list/edit.js +2 -2
  427. package/build-module/page-list/edit.js.map +1 -1
  428. package/build-module/page-list-item/edit.js +3 -3
  429. package/build-module/page-list-item/edit.js.map +1 -1
  430. package/build-module/paragraph/deprecated.js +6 -6
  431. package/build-module/paragraph/deprecated.js.map +1 -1
  432. package/build-module/paragraph/edit.js +2 -18
  433. package/build-module/paragraph/edit.js.map +1 -1
  434. package/build-module/paragraph/index.js +1 -0
  435. package/build-module/paragraph/index.js.map +1 -1
  436. package/build-module/paragraph/save.js +2 -2
  437. package/build-module/paragraph/save.js.map +1 -1
  438. package/build-module/paragraph/transforms.js +1 -0
  439. package/build-module/paragraph/transforms.js.map +1 -1
  440. package/build-module/pattern/edit.js +1 -1
  441. package/build-module/pattern/edit.js.map +1 -1
  442. package/build-module/post-author/edit.js +2 -2
  443. package/build-module/post-author/edit.js.map +1 -1
  444. package/build-module/post-author-biography/edit.js +2 -2
  445. package/build-module/post-author-biography/edit.js.map +1 -1
  446. package/build-module/post-author-name/edit.js +2 -2
  447. package/build-module/post-author-name/edit.js.map +1 -1
  448. package/build-module/post-comments-count/edit.js +2 -2
  449. package/build-module/post-comments-count/edit.js.map +1 -1
  450. package/build-module/post-comments-form/edit.js +2 -2
  451. package/build-module/post-comments-form/edit.js.map +1 -1
  452. package/build-module/post-comments-form/form.js +2 -2
  453. package/build-module/post-comments-form/form.js.map +1 -1
  454. package/build-module/post-comments-link/edit.js +2 -2
  455. package/build-module/post-comments-link/edit.js.map +1 -1
  456. package/build-module/post-date/edit.js +2 -2
  457. package/build-module/post-date/edit.js.map +1 -1
  458. package/build-module/post-excerpt/edit.js +3 -3
  459. package/build-module/post-excerpt/edit.js.map +1 -1
  460. package/build-module/post-featured-image/dimension-controls.js +20 -28
  461. package/build-module/post-featured-image/dimension-controls.js.map +1 -1
  462. package/build-module/post-featured-image/edit.js +3 -3
  463. package/build-module/post-featured-image/edit.js.map +1 -1
  464. package/build-module/post-featured-image/overlay.js +2 -2
  465. package/build-module/post-featured-image/overlay.js.map +1 -1
  466. package/build-module/post-navigation-link/edit.js +2 -2
  467. package/build-module/post-navigation-link/edit.js.map +1 -1
  468. package/build-module/post-template/edit.js +7 -7
  469. package/build-module/post-template/edit.js.map +1 -1
  470. package/build-module/post-terms/edit.js +2 -2
  471. package/build-module/post-terms/edit.js.map +1 -1
  472. package/build-module/post-time-to-read/edit.js +3 -3
  473. package/build-module/post-time-to-read/edit.js.map +1 -1
  474. package/build-module/post-title/edit.js +2 -2
  475. package/build-module/post-title/edit.js.map +1 -1
  476. package/build-module/pullquote/deprecated.js +7 -7
  477. package/build-module/pullquote/deprecated.js.map +1 -1
  478. package/build-module/pullquote/edit.js +2 -2
  479. package/build-module/pullquote/edit.js.map +1 -1
  480. package/build-module/pullquote/save.js +2 -2
  481. package/build-module/pullquote/save.js.map +1 -1
  482. package/build-module/query-title/edit.js +2 -2
  483. package/build-module/query-title/edit.js.map +1 -1
  484. package/build-module/quote/deprecated.js +3 -3
  485. package/build-module/quote/deprecated.js.map +1 -1
  486. package/build-module/quote/edit.js +2 -2
  487. package/build-module/quote/edit.js.map +1 -1
  488. package/build-module/quote/save.js +2 -2
  489. package/build-module/quote/save.js.map +1 -1
  490. package/build-module/rss/edit.js +10 -8
  491. package/build-module/rss/edit.js.map +1 -1
  492. package/build-module/search/edit.js +6 -6
  493. package/build-module/search/edit.js.map +1 -1
  494. package/build-module/search/edit.native.js +2 -2
  495. package/build-module/search/edit.native.js.map +1 -1
  496. package/build-module/separator/deprecated.js +2 -2
  497. package/build-module/separator/deprecated.js.map +1 -1
  498. package/build-module/separator/edit.js +2 -2
  499. package/build-module/separator/edit.js.map +1 -1
  500. package/build-module/separator/save.js +2 -2
  501. package/build-module/separator/save.js.map +1 -1
  502. package/build-module/shortcode/edit.js +8 -11
  503. package/build-module/shortcode/edit.js.map +1 -1
  504. package/build-module/site-logo/edit.js +4 -4
  505. package/build-module/site-logo/edit.js.map +1 -1
  506. package/build-module/site-tagline/edit.js +2 -2
  507. package/build-module/site-tagline/edit.js.map +1 -1
  508. package/build-module/site-title/edit.js +2 -2
  509. package/build-module/site-title/edit.js.map +1 -1
  510. package/build-module/social-link/edit.js +3 -3
  511. package/build-module/social-link/edit.js.map +1 -1
  512. package/build-module/social-links/deprecated.js +2 -2
  513. package/build-module/social-links/deprecated.js.map +1 -1
  514. package/build-module/social-links/edit.js +2 -2
  515. package/build-module/social-links/edit.js.map +1 -1
  516. package/build-module/social-links/save.js +2 -2
  517. package/build-module/social-links/save.js.map +1 -1
  518. package/build-module/spacer/edit.js +3 -3
  519. package/build-module/spacer/edit.js.map +1 -1
  520. package/build-module/table/deprecated.js +8 -8
  521. package/build-module/table/deprecated.js.map +1 -1
  522. package/build-module/table/edit.js +3 -3
  523. package/build-module/table/edit.js.map +1 -1
  524. package/build-module/table/save.js +3 -3
  525. package/build-module/table/save.js.map +1 -1
  526. package/build-module/term-description/edit.js +2 -2
  527. package/build-module/term-description/edit.js.map +1 -1
  528. package/build-module/utils/caption.js +2 -2
  529. package/build-module/utils/caption.js.map +1 -1
  530. package/build-module/verse/deprecated.js +2 -2
  531. package/build-module/verse/deprecated.js.map +1 -1
  532. package/build-module/verse/edit.js +2 -2
  533. package/build-module/verse/edit.js.map +1 -1
  534. package/build-module/verse/save.js +2 -2
  535. package/build-module/verse/save.js.map +1 -1
  536. package/build-module/video/edit.js +2 -2
  537. package/build-module/video/edit.js.map +1 -1
  538. package/build-style/block/editor-rtl.css +4 -4
  539. package/build-style/block/editor.css +4 -4
  540. package/build-style/buttons/editor-rtl.css +1 -1
  541. package/build-style/buttons/editor.css +1 -1
  542. package/build-style/buttons/style-rtl.css +1 -1
  543. package/build-style/buttons/style.css +1 -1
  544. package/build-style/common-rtl.css +3 -7
  545. package/build-style/common.css +3 -7
  546. package/build-style/editor-rtl.css +15 -32
  547. package/build-style/editor.css +15 -32
  548. package/build-style/group/editor-rtl.css +2 -1
  549. package/build-style/group/editor.css +2 -1
  550. package/build-style/image/editor-rtl.css +3 -0
  551. package/build-style/image/editor.css +3 -0
  552. package/build-style/image/style-rtl.css +1 -2
  553. package/build-style/image/style.css +1 -2
  554. package/build-style/post-template/style-rtl.css +0 -3
  555. package/build-style/post-template/style.css +0 -3
  556. package/build-style/rss/editor-rtl.css +1 -10
  557. package/build-style/rss/editor.css +1 -10
  558. package/build-style/shortcode/editor-rtl.css +0 -4
  559. package/build-style/shortcode/editor.css +0 -4
  560. package/build-style/style-rtl.css +5 -13
  561. package/build-style/style.css +5 -13
  562. package/build-style/template-part/editor-rtl.css +3 -7
  563. package/build-style/template-part/editor.css +3 -7
  564. package/package.json +36 -36
  565. package/src/audio/edit.js +2 -2
  566. package/src/avatar/edit.js +2 -2
  567. package/src/block/edit.js +30 -245
  568. package/src/block/editor.scss +7 -5
  569. package/src/button/block.json +1 -0
  570. package/src/button/deprecated.js +16 -16
  571. package/src/button/edit.js +3 -9
  572. package/src/button/save.js +3 -3
  573. package/src/buttons/deprecated.js +2 -2
  574. package/src/buttons/edit.js +2 -2
  575. package/src/buttons/editor.scss +1 -3
  576. package/src/buttons/save.js +2 -2
  577. package/src/buttons/style.scss +1 -3
  578. package/src/categories/edit.js +2 -2
  579. package/src/code/theme.native.scss +1 -1
  580. package/src/column/deprecated.js +2 -2
  581. package/src/column/edit.js +2 -2
  582. package/src/column/save.js +2 -2
  583. package/src/columns/deprecated.js +3 -3
  584. package/src/columns/edit.js +2 -2
  585. package/src/columns/save.js +2 -2
  586. package/src/comment-author-name/edit.js +2 -2
  587. package/src/comment-content/edit.js +2 -2
  588. package/src/comment-edit-link/edit.js +2 -2
  589. package/src/comment-reply-link/edit.js +2 -2
  590. package/src/comments/edit/comments-legacy.js +2 -2
  591. package/src/comments-title/edit.js +2 -2
  592. package/src/common.scss +4 -4
  593. package/src/cover/deprecated.js +38 -38
  594. package/src/cover/edit/index.js +6 -9
  595. package/src/cover/edit/resizable-cover-popover.js +2 -2
  596. package/src/cover/edit.native.js +2 -2
  597. package/src/cover/save.js +5 -5
  598. package/src/embed/deprecated.js +3 -3
  599. package/src/embed/edit.js +2 -2
  600. package/src/embed/edit.native.js +2 -2
  601. package/src/embed/embed-preview.js +3 -3
  602. package/src/embed/embed-preview.native.js +2 -2
  603. package/src/embed/icons.js +9 -0
  604. package/src/embed/save.js +2 -2
  605. package/src/embed/util.js +10 -6
  606. package/src/embed/variations.js +9 -0
  607. package/src/file/deprecated.js +2 -2
  608. package/src/file/edit.js +3 -3
  609. package/src/file/save.js +2 -2
  610. package/src/form-input/deprecated.js +3 -3
  611. package/src/form-input/edit.js +4 -4
  612. package/src/form-input/save.js +3 -3
  613. package/src/form-submission-notification/edit.js +2 -2
  614. package/src/form-submission-notification/save.js +4 -7
  615. package/src/gallery/deprecated.js +3 -3
  616. package/src/gallery/edit.js +2 -2
  617. package/src/gallery/gallery.js +2 -2
  618. package/src/gallery/save.js +3 -3
  619. package/src/gallery/test/helpers.native.js +3 -3
  620. package/src/gallery/v1/gallery-image.js +2 -2
  621. package/src/gallery/v1/gallery.js +3 -3
  622. package/src/gallery/v1/save.js +3 -3
  623. package/src/group/deprecated.js +4 -4
  624. package/src/group/editor.scss +2 -1
  625. package/src/heading/block.json +1 -0
  626. package/src/heading/deprecated.js +6 -6
  627. package/src/heading/edit.js +2 -23
  628. package/src/heading/edit.native.js +2 -2
  629. package/src/heading/save.js +2 -2
  630. package/src/heading/test/__snapshots__/transforms.native.js.snap +1 -1
  631. package/src/home-link/edit.js +2 -2
  632. package/src/html/edit.js +0 -2
  633. package/src/image/deprecated.js +10 -10
  634. package/src/image/edit.js +5 -3
  635. package/src/image/editor.scss +13 -7
  636. package/src/image/image.js +5 -2
  637. package/src/image/save.js +3 -3
  638. package/src/image/style.scss +1 -3
  639. package/src/latest-posts/edit.js +6 -6
  640. package/src/latest-posts/index.php +1 -0
  641. package/src/list/block.json +0 -2
  642. package/src/list/deprecated.js +88 -1
  643. package/src/list/index.php +54 -0
  644. package/src/list/test/__snapshots__/edit.native.js.snap +11 -11
  645. package/src/list/test/__snapshots__/transforms.native.js.snap +3 -3
  646. package/src/list/test/edit.native.js +24 -24
  647. package/src/list/test/transforms.native.js +1 -1
  648. package/src/list-item/block.json +2 -1
  649. package/src/list-item/edit.js +0 -15
  650. package/src/media-text/deprecated.js +10 -10
  651. package/src/media-text/edit.js +2 -2
  652. package/src/media-text/media-container.js +2 -2
  653. package/src/media-text/save.js +3 -3
  654. package/src/navigation/edit/index.js +3 -3
  655. package/src/navigation/edit/responsive-wrapper.js +3 -3
  656. package/src/navigation/edit/utils.js +2 -2
  657. package/src/navigation/index.php +52 -1
  658. package/src/navigation-link/edit.js +3 -3
  659. package/src/navigation-submenu/edit.js +2 -2
  660. package/src/page-list/edit.js +2 -2
  661. package/src/page-list-item/edit.js +3 -3
  662. package/src/paragraph/block.json +1 -0
  663. package/src/paragraph/deprecated.js +6 -6
  664. package/src/paragraph/edit.js +2 -23
  665. package/src/paragraph/save.js +2 -2
  666. package/src/paragraph/test/__snapshots__/transforms.native.js.snap +1 -1
  667. package/src/pattern/edit.js +1 -1
  668. package/src/post-author/edit.js +2 -2
  669. package/src/post-author-biography/edit.js +2 -2
  670. package/src/post-author-name/edit.js +2 -2
  671. package/src/post-comments-count/edit.js +2 -2
  672. package/src/post-comments-form/edit.js +2 -2
  673. package/src/post-comments-form/form.js +2 -2
  674. package/src/post-comments-link/edit.js +2 -2
  675. package/src/post-date/edit.js +2 -2
  676. package/src/post-excerpt/edit.js +3 -3
  677. package/src/post-featured-image/dimension-controls.js +30 -36
  678. package/src/post-featured-image/edit.js +3 -3
  679. package/src/post-featured-image/overlay.js +2 -2
  680. package/src/post-navigation-link/edit.js +2 -2
  681. package/src/post-template/edit.js +7 -7
  682. package/src/post-template/style.scss +0 -4
  683. package/src/post-terms/edit.js +2 -2
  684. package/src/post-time-to-read/edit.js +3 -3
  685. package/src/post-title/edit.js +2 -2
  686. package/src/pullquote/deprecated.js +7 -7
  687. package/src/pullquote/edit.js +2 -2
  688. package/src/pullquote/save.js +2 -2
  689. package/src/query-title/edit.js +2 -2
  690. package/src/quote/deprecated.js +3 -3
  691. package/src/quote/edit.js +2 -2
  692. package/src/quote/save.js +2 -2
  693. package/src/rss/edit.js +30 -23
  694. package/src/rss/editor.scss +2 -16
  695. package/src/search/edit.js +6 -6
  696. package/src/search/edit.native.js +2 -2
  697. package/src/separator/deprecated.js +2 -2
  698. package/src/separator/edit.js +2 -2
  699. package/src/separator/save.js +2 -2
  700. package/src/shortcode/edit.js +13 -17
  701. package/src/shortcode/editor.scss +0 -6
  702. package/src/site-logo/edit.js +4 -4
  703. package/src/site-logo/index.php +2 -0
  704. package/src/site-tagline/edit.js +2 -2
  705. package/src/site-title/edit.js +2 -2
  706. package/src/social-link/edit.js +3 -3
  707. package/src/social-links/deprecated.js +2 -2
  708. package/src/social-links/edit.js +2 -2
  709. package/src/social-links/save.js +2 -2
  710. package/src/spacer/edit.js +3 -3
  711. package/src/table/deprecated.js +12 -20
  712. package/src/table/edit.js +3 -3
  713. package/src/table/save.js +3 -3
  714. package/src/template-part/editor.scss +5 -8
  715. package/src/term-description/edit.js +2 -2
  716. package/src/utils/caption.js +2 -2
  717. package/src/verse/deprecated.js +2 -2
  718. package/src/verse/edit.js +2 -2
  719. package/src/verse/save.js +2 -2
  720. package/src/video/edit.js +2 -2
  721. package/tsconfig.tsbuildinfo +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/block-library",
3
- "version": "8.34.0",
3
+ "version": "8.35.0",
4
4
  "description": "Block library for the WordPress editor.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -31,41 +31,41 @@
31
31
  ],
32
32
  "dependencies": {
33
33
  "@babel/runtime": "^7.16.0",
34
- "@wordpress/a11y": "^3.57.0",
35
- "@wordpress/api-fetch": "^6.54.0",
36
- "@wordpress/autop": "^3.57.0",
37
- "@wordpress/blob": "^3.57.0",
38
- "@wordpress/block-editor": "^12.25.0",
39
- "@wordpress/blocks": "^12.34.0",
40
- "@wordpress/components": "^27.5.0",
41
- "@wordpress/compose": "^6.34.0",
42
- "@wordpress/core-data": "^6.34.0",
43
- "@wordpress/data": "^9.27.0",
44
- "@wordpress/date": "^4.57.0",
45
- "@wordpress/deprecated": "^3.57.0",
46
- "@wordpress/dom": "^3.57.0",
47
- "@wordpress/element": "^5.34.0",
48
- "@wordpress/escape-html": "^2.57.0",
49
- "@wordpress/hooks": "^3.57.0",
50
- "@wordpress/html-entities": "^3.57.0",
51
- "@wordpress/i18n": "^4.57.0",
52
- "@wordpress/icons": "^9.48.0",
53
- "@wordpress/interactivity": "^5.6.0",
54
- "@wordpress/interactivity-router": "^1.7.0",
55
- "@wordpress/keyboard-shortcuts": "^4.34.0",
56
- "@wordpress/keycodes": "^3.57.0",
57
- "@wordpress/notices": "^4.25.0",
58
- "@wordpress/patterns": "^1.18.0",
59
- "@wordpress/primitives": "^3.55.0",
60
- "@wordpress/private-apis": "^0.39.0",
61
- "@wordpress/reusable-blocks": "^4.34.0",
62
- "@wordpress/rich-text": "^6.34.0",
63
- "@wordpress/server-side-render": "^4.34.0",
64
- "@wordpress/url": "^3.58.0",
65
- "@wordpress/viewport": "^5.34.0",
66
- "@wordpress/wordcount": "^3.57.0",
34
+ "@wordpress/a11y": "^3.58.0",
35
+ "@wordpress/api-fetch": "^6.55.0",
36
+ "@wordpress/autop": "^3.58.0",
37
+ "@wordpress/blob": "^3.58.0",
38
+ "@wordpress/block-editor": "^12.26.0",
39
+ "@wordpress/blocks": "^12.35.0",
40
+ "@wordpress/components": "^27.6.0",
41
+ "@wordpress/compose": "^6.35.0",
42
+ "@wordpress/core-data": "^6.35.0",
43
+ "@wordpress/data": "^9.28.0",
44
+ "@wordpress/date": "^4.58.0",
45
+ "@wordpress/deprecated": "^3.58.0",
46
+ "@wordpress/dom": "^3.58.0",
47
+ "@wordpress/element": "^5.35.0",
48
+ "@wordpress/escape-html": "^2.58.0",
49
+ "@wordpress/hooks": "^3.58.0",
50
+ "@wordpress/html-entities": "^3.58.0",
51
+ "@wordpress/i18n": "^4.58.0",
52
+ "@wordpress/icons": "^9.49.0",
53
+ "@wordpress/interactivity": "^5.7.0",
54
+ "@wordpress/interactivity-router": "^1.8.0",
55
+ "@wordpress/keyboard-shortcuts": "^4.35.0",
56
+ "@wordpress/keycodes": "^3.58.0",
57
+ "@wordpress/notices": "^4.26.0",
58
+ "@wordpress/patterns": "^1.19.0",
59
+ "@wordpress/primitives": "^3.56.0",
60
+ "@wordpress/private-apis": "^0.40.0",
61
+ "@wordpress/reusable-blocks": "^4.35.0",
62
+ "@wordpress/rich-text": "^6.35.0",
63
+ "@wordpress/server-side-render": "^4.35.0",
64
+ "@wordpress/url": "^3.59.0",
65
+ "@wordpress/viewport": "^5.35.0",
66
+ "@wordpress/wordcount": "^3.58.0",
67
67
  "change-case": "^4.1.2",
68
- "classnames": "^2.3.1",
68
+ "clsx": "^2.1.1",
69
69
  "colord": "^2.7.0",
70
70
  "escape-html": "^1.0.3",
71
71
  "fast-average-color": "^9.1.1",
@@ -81,5 +81,5 @@
81
81
  "publishConfig": {
82
82
  "access": "public"
83
83
  },
84
- "gitHead": "581d8a5580dba8f600b7268d51eb554771ae482c"
84
+ "gitHead": "42f38f287506a6b3ed8ccba839b18ad066821044"
85
85
  }
package/src/audio/edit.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import classnames from 'classnames';
4
+ import clsx from 'clsx';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -107,7 +107,7 @@ function AudioEdit( {
107
107
  } );
108
108
  }
109
109
 
110
- const classes = classnames( className, {
110
+ const classes = clsx( className, {
111
111
  'is-transient': isTemporaryAudio,
112
112
  } );
113
113
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import classnames from 'classnames';
4
+ import clsx from 'clsx';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -124,7 +124,7 @@ const ResizableAvatar = ( {
124
124
  <img
125
125
  src={ doubledSizedSrc }
126
126
  alt={ avatar.alt }
127
- className={ classnames(
127
+ className={ clsx(
128
128
  'avatar',
129
129
  'avatar-' + attributes.size,
130
130
  'photo',
package/src/block/edit.js CHANGED
@@ -1,14 +1,18 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import classnames from 'classnames';
4
+ import clsx from 'clsx';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
8
8
  */
9
- import { useRegistry, useSelect, useDispatch } from '@wordpress/data';
9
+ import { useSelect, useDispatch } from '@wordpress/data';
10
10
  import { useRef, useMemo, useEffect } from '@wordpress/element';
11
- import { useEntityRecord, store as coreStore } from '@wordpress/core-data';
11
+ import {
12
+ useEntityRecord,
13
+ store as coreStore,
14
+ useEntityBlockEditor,
15
+ } from '@wordpress/core-data';
12
16
  import {
13
17
  Placeholder,
14
18
  Spinner,
@@ -20,7 +24,6 @@ import {
20
24
  useInnerBlocksProps,
21
25
  RecursionProvider,
22
26
  useHasRecursion,
23
- InnerBlocks,
24
27
  useBlockProps,
25
28
  Warning,
26
29
  privateApis as blockEditorPrivateApis,
@@ -28,8 +31,7 @@ import {
28
31
  BlockControls,
29
32
  } from '@wordpress/block-editor';
30
33
  import { privateApis as patternsPrivateApis } from '@wordpress/patterns';
31
- import { parse, cloneBlock, store as blocksStore } from '@wordpress/blocks';
32
- import { RichTextData } from '@wordpress/rich-text';
34
+ import { store as blocksStore } from '@wordpress/blocks';
33
35
 
34
36
  /**
35
37
  * Internal dependencies
@@ -42,25 +44,6 @@ const { isOverridableBlock } = unlock( patternsPrivateApis );
42
44
 
43
45
  const fullAlignments = [ 'full', 'wide', 'left', 'right' ];
44
46
 
45
- function getLegacyIdMap( blocks, content, nameCount = {} ) {
46
- let idToClientIdMap = {};
47
- for ( const block of blocks ) {
48
- if ( block?.innerBlocks?.length ) {
49
- idToClientIdMap = {
50
- ...idToClientIdMap,
51
- ...getLegacyIdMap( block.innerBlocks, content, nameCount ),
52
- };
53
- }
54
-
55
- const id = block.attributes.metadata?.id;
56
- const clientId = block.clientId;
57
- if ( id && content?.[ id ] ) {
58
- idToClientIdMap[ clientId ] = id;
59
- }
60
- }
61
- return idToClientIdMap;
62
- }
63
-
64
47
  const useInferredLayout = ( blocks, parentLayout ) => {
65
48
  const initialInferredAlignmentRef = useRef();
66
49
 
@@ -99,112 +82,6 @@ function hasOverridableBlocks( blocks ) {
99
82
  } );
100
83
  }
101
84
 
102
- function getOverridableAttributes( block ) {
103
- return Object.entries( block.attributes.metadata.bindings )
104
- .filter(
105
- ( [ , binding ] ) => binding.source === 'core/pattern-overrides'
106
- )
107
- .map( ( [ attributeKey ] ) => attributeKey );
108
- }
109
-
110
- function applyInitialContentValuesToInnerBlocks(
111
- blocks,
112
- content = {},
113
- defaultValues,
114
- legacyIdMap
115
- ) {
116
- return blocks.map( ( block ) => {
117
- const innerBlocks = applyInitialContentValuesToInnerBlocks(
118
- block.innerBlocks,
119
- content,
120
- defaultValues,
121
- legacyIdMap
122
- );
123
- const metadataName =
124
- legacyIdMap?.[ block.clientId ] ?? block.attributes.metadata?.name;
125
-
126
- if ( ! metadataName || ! isOverridableBlock( block ) ) {
127
- return { ...block, innerBlocks };
128
- }
129
-
130
- const attributes = getOverridableAttributes( block );
131
- const newAttributes = { ...block.attributes };
132
- for ( const attributeKey of attributes ) {
133
- defaultValues[ metadataName ] ??= {};
134
- defaultValues[ metadataName ][ attributeKey ] =
135
- block.attributes[ attributeKey ];
136
-
137
- const contentValues = content[ metadataName ];
138
- if ( contentValues?.[ attributeKey ] !== undefined ) {
139
- newAttributes[ attributeKey ] = contentValues[ attributeKey ];
140
- }
141
- }
142
- return {
143
- ...block,
144
- attributes: newAttributes,
145
- innerBlocks,
146
- };
147
- } );
148
- }
149
-
150
- function isAttributeEqual( attribute1, attribute2 ) {
151
- if (
152
- attribute1 instanceof RichTextData &&
153
- attribute2 instanceof RichTextData
154
- ) {
155
- return attribute1.toString() === attribute2.toString();
156
- }
157
- return attribute1 === attribute2;
158
- }
159
-
160
- function getContentValuesFromInnerBlocks( blocks, defaultValues, legacyIdMap ) {
161
- /** @type {Record<string, { values: Record<string, unknown>}>} */
162
- const content = {};
163
- for ( const block of blocks ) {
164
- if ( block.name === patternBlockName ) {
165
- continue;
166
- }
167
- if ( block.innerBlocks.length ) {
168
- Object.assign(
169
- content,
170
- getContentValuesFromInnerBlocks(
171
- block.innerBlocks,
172
- defaultValues,
173
- legacyIdMap
174
- )
175
- );
176
- }
177
- const metadataName =
178
- legacyIdMap?.[ block.clientId ] ?? block.attributes.metadata?.name;
179
- if ( ! metadataName || ! isOverridableBlock( block ) ) {
180
- continue;
181
- }
182
-
183
- const attributes = getOverridableAttributes( block );
184
-
185
- for ( const attributeKey of attributes ) {
186
- if (
187
- ! isAttributeEqual(
188
- block.attributes[ attributeKey ],
189
- defaultValues?.[ metadataName ]?.[ attributeKey ]
190
- )
191
- ) {
192
- content[ metadataName ] ??= {};
193
- // TODO: We need a way to represent `undefined` in the serialized overrides.
194
- // Also see: https://github.com/WordPress/gutenberg/pull/57249#discussion_r1452987871
195
- content[ metadataName ][ attributeKey ] =
196
- block.attributes[ attributeKey ] === undefined
197
- ? // TODO: We use an empty string to represent undefined for now until
198
- // we support a richer format for overrides and the block binding API.
199
- // Currently only the `linkTarget` attribute of `core/button` is affected.
200
- ''
201
- : block.attributes[ attributeKey ];
202
- }
203
- }
204
- }
205
- return Object.keys( content ).length > 0 ? content : undefined;
206
- }
207
-
208
85
  function setBlockEditMode( setEditMode, blocks, mode ) {
209
86
  blocks.forEach( ( block ) => {
210
87
  const editMode =
@@ -232,6 +109,8 @@ function RecursionWarning() {
232
109
  );
233
110
  }
234
111
 
112
+ const NOOP = () => {};
113
+
235
114
  // Wrap the main Edit function for the pattern block with a recursion wrapper
236
115
  // that allows short-circuiting rendering as early as possible, before any
237
116
  // of the other effects in the block edit have run.
@@ -257,33 +136,22 @@ function ReusableBlockEdit( {
257
136
  clientId: patternClientId,
258
137
  setAttributes,
259
138
  } ) {
260
- const registry = useRegistry();
261
- const { record, editedRecord, hasResolved } = useEntityRecord(
139
+ const { record, hasResolved } = useEntityRecord(
262
140
  'postType',
263
141
  'wp_block',
264
142
  ref
265
143
  );
144
+ const [ blocks ] = useEntityBlockEditor( 'postType', 'wp_block', {
145
+ id: ref,
146
+ } );
266
147
  const isMissing = hasResolved && ! record;
267
148
 
268
- // The value of the `content` attribute, stored in a `ref` to avoid triggering the effect
269
- // that runs `applyInitialContentValuesToInnerBlocks` unnecessarily.
270
- const contentRef = useRef( content );
271
-
272
- // The default content values from the original pattern for overridable attributes.
273
- // Set by the `applyInitialContentValuesToInnerBlocks` function.
274
- const defaultContent = useRef( {} );
275
-
276
- const {
277
- replaceInnerBlocks,
278
- __unstableMarkNextChangeAsNotPersistent,
279
- setBlockEditingMode,
280
- } = useDispatch( blockEditorStore );
281
- const { syncDerivedUpdates } = unlock( useDispatch( blockEditorStore ) );
149
+ const { setBlockEditingMode, __unstableMarkLastChangeAsPersistent } =
150
+ useDispatch( blockEditorStore );
282
151
 
283
152
  const {
284
153
  innerBlocks,
285
154
  userCanEdit,
286
- getBlockEditingMode,
287
155
  onNavigateToEntityRecord,
288
156
  editingMode,
289
157
  hasPatternOverridesSource,
@@ -296,12 +164,11 @@ function ReusableBlockEdit( {
296
164
  getBlockEditingMode: _getBlockEditingMode,
297
165
  } = select( blockEditorStore );
298
166
  const { getBlockBindingsSource } = unlock( select( blocksStore ) );
299
- const blocks = getBlocks( patternClientId );
300
167
  const canEdit = canUser( 'update', 'blocks', ref );
301
168
 
302
169
  // For editing link to the site editor if the theme and user permissions support it.
303
170
  return {
304
- innerBlocks: blocks,
171
+ innerBlocks: getBlocks( patternClientId ),
305
172
  userCanEdit: canEdit,
306
173
  getBlockEditingMode: _getBlockEditingMode,
307
174
  onNavigateToEntityRecord:
@@ -333,115 +200,31 @@ function ReusableBlockEdit( {
333
200
  ] );
334
201
 
335
202
  const canOverrideBlocks = useMemo(
336
- () => hasPatternOverridesSource && hasOverridableBlocks( innerBlocks ),
337
- [ hasPatternOverridesSource, innerBlocks ]
338
- );
339
-
340
- const initialBlocks = useMemo(
341
- () =>
342
- // Clone the blocks to generate new client IDs.
343
- editedRecord.blocks?.map( ( block ) => cloneBlock( block ) ) ??
344
- ( editedRecord.content && typeof editedRecord.content !== 'function'
345
- ? parse( editedRecord.content )
346
- : [] ),
347
- [ editedRecord.blocks, editedRecord.content ]
203
+ () => hasPatternOverridesSource && hasOverridableBlocks( blocks ),
204
+ [ hasPatternOverridesSource, blocks ]
348
205
  );
349
206
 
350
- const legacyIdMap = useRef( {} );
351
-
352
- // Apply the initial overrides from the pattern block to the inner blocks.
353
- useEffect( () => {
354
- // Build a map of clientIds to the old nano id system to provide back compat.
355
- legacyIdMap.current = getLegacyIdMap(
356
- initialBlocks,
357
- contentRef.current
358
- );
359
- defaultContent.current = {};
360
- const originalEditingMode = getBlockEditingMode( patternClientId );
361
- // Replace the contents of the blocks with the overrides.
362
- registry.batch( () => {
363
- setBlockEditingMode( patternClientId, 'default' );
364
- syncDerivedUpdates( () => {
365
- const blocks = hasPatternOverridesSource
366
- ? applyInitialContentValuesToInnerBlocks(
367
- initialBlocks,
368
- contentRef.current,
369
- defaultContent.current,
370
- legacyIdMap.current
371
- )
372
- : initialBlocks;
373
-
374
- replaceInnerBlocks( patternClientId, blocks );
375
- } );
376
- setBlockEditingMode( patternClientId, originalEditingMode );
377
- } );
378
- }, [
379
- hasPatternOverridesSource,
380
- __unstableMarkNextChangeAsNotPersistent,
381
- patternClientId,
382
- initialBlocks,
383
- replaceInnerBlocks,
384
- registry,
385
- getBlockEditingMode,
386
- setBlockEditingMode,
387
- syncDerivedUpdates,
388
- ] );
389
-
390
- const { alignment, layout } = useInferredLayout(
391
- innerBlocks,
392
- parentLayout
393
- );
207
+ const { alignment, layout } = useInferredLayout( blocks, parentLayout );
394
208
  const layoutClasses = useLayoutClasses( { layout }, name );
395
209
 
396
210
  const blockProps = useBlockProps( {
397
- className: classnames(
211
+ className: clsx(
398
212
  'block-library-block__reusable-block-container',
399
213
  layout && layoutClasses,
400
214
  { [ `align${ alignment }` ]: alignment }
401
215
  ),
402
216
  } );
403
217
 
218
+ // Use `blocks` variable until `innerBlocks` is populated, which has the proper clientIds.
404
219
  const innerBlocksProps = useInnerBlocksProps( blockProps, {
405
- templateLock: 'contentOnly',
220
+ templateLock: 'all',
406
221
  layout,
407
- renderAppender: innerBlocks?.length
408
- ? undefined
409
- : InnerBlocks.ButtonBlockAppender,
222
+ value: innerBlocks.length > 0 ? innerBlocks : blocks,
223
+ onInput: NOOP,
224
+ onChange: NOOP,
225
+ renderAppender: blocks?.length ? undefined : blocks.ButtonBlockAppender,
410
226
  } );
411
227
 
412
- // Sync the `content` attribute from the updated blocks to the pattern block.
413
- // `syncDerivedUpdates` is used here to avoid creating an additional undo level.
414
- useEffect( () => {
415
- if ( ! hasPatternOverridesSource ) {
416
- return;
417
- }
418
- const { getBlocks } = registry.select( blockEditorStore );
419
- let prevBlocks = getBlocks( patternClientId );
420
- return registry.subscribe( () => {
421
- const blocks = getBlocks( patternClientId );
422
- if ( blocks !== prevBlocks ) {
423
- prevBlocks = blocks;
424
- syncDerivedUpdates( () => {
425
- const updatedContent = getContentValuesFromInnerBlocks(
426
- blocks,
427
- defaultContent.current,
428
- legacyIdMap.current
429
- );
430
- setAttributes( {
431
- content: updatedContent,
432
- } );
433
- contentRef.current = updatedContent;
434
- } );
435
- }
436
- }, blockEditorStore );
437
- }, [
438
- hasPatternOverridesSource,
439
- syncDerivedUpdates,
440
- patternClientId,
441
- registry,
442
- setAttributes,
443
- ] );
444
-
445
228
  const handleEditOriginal = () => {
446
229
  onNavigateToEntityRecord( {
447
230
  postId: ref,
@@ -451,7 +234,9 @@ function ReusableBlockEdit( {
451
234
 
452
235
  const resetContent = () => {
453
236
  if ( content ) {
454
- replaceInnerBlocks( patternClientId, initialBlocks );
237
+ // Make sure any previous changes are persisted before resetting.
238
+ __unstableMarkLastChangeAsPersistent();
239
+ setAttributes( { content: undefined } );
455
240
  }
456
241
  };
457
242
 
@@ -16,17 +16,19 @@
16
16
  }
17
17
 
18
18
  .edit-post-visual-editor .block-editor-block-list__block:not(.remove-outline).is-reusable {
19
- &.is-highlighted,
20
- &.is-selected {
21
- box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-block-synced-color);
19
+
20
+ &.is-highlighted::after,
21
+ &.is-selected::after {
22
+ outline-color: var(--wp-block-synced-color);
22
23
  }
23
24
 
24
25
  &.block-editor-block-list__block:not([contenteditable]):focus {
25
26
  &::after {
26
- box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-block-synced-color);
27
+ outline-color: var(--wp-block-synced-color);
28
+
27
29
  // Show a light color for dark themes.
28
30
  .is-dark-theme & {
29
- box-shadow: 0 0 0 var(--wp-admin-border-width-focus) $dark-theme-focus;
31
+ outline-color: $dark-theme-focus;
30
32
  }
31
33
  }
32
34
  }
@@ -73,6 +73,7 @@
73
73
  },
74
74
  "supports": {
75
75
  "anchor": true,
76
+ "splitting": true,
76
77
  "align": false,
77
78
  "alignWide": false,
78
79
  "color": {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import classnames from 'classnames';
4
+ import clsx from 'clsx';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -58,7 +58,7 @@ function migrateAlign( attributes ) {
58
58
  const { align, ...otherAttributes } = attributes;
59
59
  return {
60
60
  ...otherAttributes,
61
- className: classnames(
61
+ className: clsx(
62
62
  otherAttributes.className,
63
63
  `align${ attributes.align }`
64
64
  ),
@@ -226,7 +226,7 @@ const v11 = {
226
226
  const borderProps = getBorderClassesAndStyles( attributes );
227
227
  const colorProps = getColorClassesAndStyles( attributes );
228
228
  const spacingProps = getSpacingClassesAndStyles( attributes );
229
- const buttonClasses = classnames(
229
+ const buttonClasses = clsx(
230
230
  'wp-block-button__link',
231
231
  colorProps.className,
232
232
  borderProps.className,
@@ -246,7 +246,7 @@ const v11 = {
246
246
  // if it had already been assigned, for the sake of backward-compatibility.
247
247
  // A title will no longer be assigned for new or updated button block links.
248
248
 
249
- const wrapperClasses = classnames( className, {
249
+ const wrapperClasses = clsx( className, {
250
250
  [ `has-custom-width wp-block-button__width-${ width }` ]: width,
251
251
  [ `has-custom-font-size` ]: fontSize || style?.typography?.fontSize,
252
252
  } );
@@ -352,7 +352,7 @@ const v10 = {
352
352
  const borderProps = getBorderClassesAndStyles( attributes );
353
353
  const colorProps = getColorClassesAndStyles( attributes );
354
354
  const spacingProps = getSpacingClassesAndStyles( attributes );
355
- const buttonClasses = classnames(
355
+ const buttonClasses = clsx(
356
356
  'wp-block-button__link',
357
357
  colorProps.className,
358
358
  borderProps.className,
@@ -372,7 +372,7 @@ const v10 = {
372
372
  // if it had already been assigned, for the sake of backward-compatibility.
373
373
  // A title will no longer be assigned for new or updated button block links.
374
374
 
375
- const wrapperClasses = classnames( className, {
375
+ const wrapperClasses = clsx( className, {
376
376
  [ `has-custom-width wp-block-button__width-${ width }` ]: width,
377
377
  [ `has-custom-font-size` ]: fontSize || style?.typography?.fontSize,
378
378
  } );
@@ -468,7 +468,7 @@ const deprecated = [
468
468
 
469
469
  const borderRadius = style?.border?.radius;
470
470
  const colorProps = getColorClassesAndStyles( attributes );
471
- const buttonClasses = classnames(
471
+ const buttonClasses = clsx(
472
472
  'wp-block-button__link',
473
473
  colorProps.className,
474
474
  {
@@ -484,7 +484,7 @@ const deprecated = [
484
484
  // if it had already been assigned, for the sake of backward-compatibility.
485
485
  // A title will no longer be assigned for new or updated button block links.
486
486
 
487
- const wrapperClasses = classnames( className, {
487
+ const wrapperClasses = clsx( className, {
488
488
  [ `has-custom-width wp-block-button__width-${ width }` ]: width,
489
489
  [ `has-custom-font-size` ]:
490
490
  fontSize || style?.typography?.fontSize,
@@ -558,7 +558,7 @@ const deprecated = [
558
558
  const { borderRadius, linkTarget, rel, text, title, url, width } =
559
559
  attributes;
560
560
  const colorProps = getColorClassesAndStyles( attributes );
561
- const buttonClasses = classnames(
561
+ const buttonClasses = clsx(
562
562
  'wp-block-button__link',
563
563
  colorProps.className,
564
564
  {
@@ -574,7 +574,7 @@ const deprecated = [
574
574
  // if it had already been assigned, for the sake of backward-compatibility.
575
575
  // A title will no longer be assigned for new or updated button block links.
576
576
 
577
- const wrapperClasses = classnames( className, {
577
+ const wrapperClasses = clsx( className, {
578
578
  [ `has-custom-width wp-block-button__width-${ width }` ]: width,
579
579
  } );
580
580
 
@@ -646,7 +646,7 @@ const deprecated = [
646
646
  const { borderRadius, linkTarget, rel, text, title, url, width } =
647
647
  attributes;
648
648
  const colorProps = getColorClassesAndStyles( attributes );
649
- const buttonClasses = classnames(
649
+ const buttonClasses = clsx(
650
650
  'wp-block-button__link',
651
651
  colorProps.className,
652
652
  {
@@ -662,7 +662,7 @@ const deprecated = [
662
662
  // if it had already been assigned, for the sake of backward-compatibility.
663
663
  // A title will no longer be assigned for new or updated button block links.
664
664
 
665
- const wrapperClasses = classnames( className, {
665
+ const wrapperClasses = clsx( className, {
666
666
  [ `has-custom-width wp-block-button__width-${ width }` ]: width,
667
667
  } );
668
668
 
@@ -725,7 +725,7 @@ const deprecated = [
725
725
  save( { attributes } ) {
726
726
  const { borderRadius, linkTarget, rel, text, title, url } =
727
727
  attributes;
728
- const buttonClasses = classnames( 'wp-block-button__link', {
728
+ const buttonClasses = clsx( 'wp-block-button__link', {
729
729
  'no-border-radius': borderRadius === 0,
730
730
  } );
731
731
  const buttonStyle = {
@@ -823,7 +823,7 @@ const deprecated = [
823
823
  getColorClassName( 'background-color', backgroundColor );
824
824
  const gradientClass = __experimentalGetGradientClass( gradient );
825
825
 
826
- const buttonClasses = classnames( 'wp-block-button__link', {
826
+ const buttonClasses = clsx( 'wp-block-button__link', {
827
827
  'has-text-color': textColor || customTextColor,
828
828
  [ textClass ]: textClass,
829
829
  'has-background':
@@ -941,7 +941,7 @@ const deprecated = [
941
941
  backgroundColor
942
942
  );
943
943
 
944
- const buttonClasses = classnames( 'wp-block-button__link', {
944
+ const buttonClasses = clsx( 'wp-block-button__link', {
945
945
  'has-text-color': textColor || customTextColor,
946
946
  [ textClass ]: textClass,
947
947
  'has-background': backgroundColor || customBackgroundColor,
@@ -1009,7 +1009,7 @@ const deprecated = [
1009
1009
  backgroundColor
1010
1010
  );
1011
1011
 
1012
- const buttonClasses = classnames( 'wp-block-button__link', {
1012
+ const buttonClasses = clsx( 'wp-block-button__link', {
1013
1013
  'has-text-color': textColor || customTextColor,
1014
1014
  [ textClass ]: textClass,
1015
1015
  'has-background': backgroundColor || customBackgroundColor,