@wordpress/block-library 7.19.0 → 8.1.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 (862) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/build/audio/edit.native.js +1 -3
  3. package/build/audio/edit.native.js.map +1 -1
  4. package/build/audio/index.js +2 -1
  5. package/build/audio/index.js.map +1 -1
  6. package/build/avatar/edit.js +1 -0
  7. package/build/avatar/edit.js.map +1 -1
  8. package/build/avatar/user-control.js +1 -0
  9. package/build/avatar/user-control.js.map +1 -1
  10. package/build/block/edit.js +14 -2
  11. package/build/block/edit.js.map +1 -1
  12. package/build/block/edit.native.js +14 -6
  13. package/build/block/edit.native.js.map +1 -1
  14. package/build/block/index.js +1 -2
  15. package/build/block/index.js.map +1 -1
  16. package/build/button/edit.native.js.map +1 -1
  17. package/build/categories/edit.js +1 -1
  18. package/build/categories/edit.js.map +1 -1
  19. package/build/code/transforms.js +1 -1
  20. package/build/code/transforms.js.map +1 -1
  21. package/build/columns/edit.js +1 -0
  22. package/build/columns/edit.js.map +1 -1
  23. package/build/columns/edit.native.js +13 -30
  24. package/build/columns/edit.native.js.map +1 -1
  25. package/build/comment-author-avatar/edit.js +1 -0
  26. package/build/comment-author-avatar/edit.js.map +1 -1
  27. package/build/cover/edit/inspector-controls.js +3 -1
  28. package/build/cover/edit/inspector-controls.js.map +1 -1
  29. package/build/cover/edit.native.js +24 -16
  30. package/build/cover/edit.native.js.map +1 -1
  31. package/build/embed/embed-controls.native.js +1 -0
  32. package/build/embed/embed-controls.native.js.map +1 -1
  33. package/build/embed/embed-preview.native.js +1 -3
  34. package/build/embed/embed-preview.native.js.map +1 -1
  35. package/build/file/inspector.js +1 -0
  36. package/build/file/inspector.js.map +1 -1
  37. package/build/freeform/edit.js +21 -6
  38. package/build/freeform/edit.js.map +1 -1
  39. package/build/freeform/modal.js +97 -0
  40. package/build/freeform/modal.js.map +1 -0
  41. package/build/gallery/edit.js +38 -15
  42. package/build/gallery/edit.js.map +1 -1
  43. package/build/gallery/gallery.js +2 -16
  44. package/build/gallery/gallery.js.map +1 -1
  45. package/build/gallery/gallery.native.js +1 -3
  46. package/build/gallery/gallery.native.js.map +1 -1
  47. package/build/gallery/shared.js +4 -10
  48. package/build/gallery/shared.js.map +1 -1
  49. package/build/gallery/transforms.js +1 -7
  50. package/build/gallery/transforms.js.map +1 -1
  51. package/build/gallery/use-get-media.js +1 -1
  52. package/build/gallery/use-get-media.js.map +1 -1
  53. package/build/gallery/use-get-media.native.js +3 -1
  54. package/build/gallery/use-get-media.native.js.map +1 -1
  55. package/build/gallery/v1/edit.js +22 -15
  56. package/build/gallery/v1/edit.js.map +1 -1
  57. package/build/gallery/v1/gallery.native.js +1 -3
  58. package/build/gallery/v1/gallery.native.js.map +1 -1
  59. package/build/gallery/v1/shared.js +4 -1
  60. package/build/gallery/v1/shared.js.map +1 -1
  61. package/build/group/edit.js +1 -2
  62. package/build/group/edit.js.map +1 -1
  63. package/build/group/index.js +3 -1
  64. package/build/group/index.js.map +1 -1
  65. package/build/group/placeholder.js +5 -26
  66. package/build/group/placeholder.js.map +1 -1
  67. package/build/heading/deprecated.js +152 -69
  68. package/build/heading/deprecated.js.map +1 -1
  69. package/build/heading/index.js +1 -2
  70. package/build/heading/index.js.map +1 -1
  71. package/build/heading/transforms.js +1 -2
  72. package/build/heading/transforms.js.map +1 -1
  73. package/build/html/index.js +1 -1
  74. package/build/image/edit.js +8 -5
  75. package/build/image/edit.js.map +1 -1
  76. package/build/image/edit.native.js +3 -2
  77. package/build/image/edit.native.js.map +1 -1
  78. package/build/image/image.js +13 -8
  79. package/build/image/image.js.map +1 -1
  80. package/build/index.js +3 -1
  81. package/build/index.js.map +1 -1
  82. package/build/latest-comments/edit.js +1 -0
  83. package/build/latest-comments/edit.js.map +1 -1
  84. package/build/latest-posts/edit.js +2 -0
  85. package/build/latest-posts/edit.js.map +1 -1
  86. package/build/list/transforms.js +1 -9
  87. package/build/list/transforms.js.map +1 -1
  88. package/build/list/utils.js +5 -2
  89. package/build/list/utils.js.map +1 -1
  90. package/build/list-item/index.js +4 -1
  91. package/build/list-item/index.js.map +1 -1
  92. package/build/list-item/transforms.js +22 -0
  93. package/build/list-item/transforms.js.map +1 -0
  94. package/build/list-item/utils.js +77 -1
  95. package/build/list-item/utils.js.map +1 -1
  96. package/build/media-text/edit.js +5 -2
  97. package/build/media-text/edit.js.map +1 -1
  98. package/build/missing/edit.native.js +2 -2
  99. package/build/missing/edit.native.js.map +1 -1
  100. package/build/navigation/edit/are-blocks-dirty.js +52 -0
  101. package/build/navigation/edit/are-blocks-dirty.js.map +1 -0
  102. package/build/navigation/edit/index.js +95 -117
  103. package/build/navigation/edit/index.js.map +1 -1
  104. package/build/navigation/edit/menu-inspector-controls.js +94 -0
  105. package/build/navigation/edit/menu-inspector-controls.js.map +1 -0
  106. package/build/navigation/edit/navigation-menu-selector.js +2 -4
  107. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  108. package/build/navigation/edit/unsaved-inner-blocks.js +11 -7
  109. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  110. package/build/navigation/edit/utils.js +81 -0
  111. package/build/navigation/edit/utils.js.map +1 -1
  112. package/build/navigation/view-modal.js +6 -2
  113. package/build/navigation/view-modal.js.map +1 -1
  114. package/build/navigation-link/edit.js +46 -356
  115. package/build/navigation-link/edit.js.map +1 -1
  116. package/build/navigation-link/link-ui.js +222 -0
  117. package/build/navigation-link/link-ui.js.map +1 -0
  118. package/build/navigation-link/transforms.js +12 -0
  119. package/build/navigation-link/transforms.js.map +1 -1
  120. package/build/navigation-link/update-attributes.js +108 -0
  121. package/build/navigation-link/update-attributes.js.map +1 -0
  122. package/build/navigation-submenu/edit.js +49 -245
  123. package/build/navigation-submenu/edit.js.map +1 -1
  124. package/build/page-list/constants.js +15 -0
  125. package/build/page-list/constants.js.map +1 -0
  126. package/build/page-list/convert-to-links-modal.js +22 -86
  127. package/build/page-list/convert-to-links-modal.js.map +1 -1
  128. package/build/page-list/convert-to-navigation-links.js +76 -0
  129. package/build/page-list/convert-to-navigation-links.js.map +1 -0
  130. package/build/page-list/edit.js +143 -78
  131. package/build/page-list/edit.js.map +1 -1
  132. package/build/page-list/index.js +35 -3
  133. package/build/page-list/index.js.map +1 -1
  134. package/build/page-list-item/edit.js +91 -0
  135. package/build/page-list-item/edit.js.map +1 -0
  136. package/build/page-list-item/index.js +85 -0
  137. package/build/page-list-item/index.js.map +1 -0
  138. package/build/page-list-item/init.js +16 -0
  139. package/build/page-list-item/init.js.map +1 -0
  140. package/build/paragraph/index.js +1 -7
  141. package/build/paragraph/index.js.map +1 -1
  142. package/build/post-author/edit.js +3 -2
  143. package/build/post-author/edit.js.map +1 -1
  144. package/build/post-featured-image/overlay.js +1 -1
  145. package/build/post-featured-image/overlay.js.map +1 -1
  146. package/build/post-template/index.js +8 -0
  147. package/build/post-template/index.js.map +1 -1
  148. package/build/preformatted/transforms.js +3 -1
  149. package/build/preformatted/transforms.js.map +1 -1
  150. package/build/query/deprecated.js +192 -21
  151. package/build/query/deprecated.js.map +1 -1
  152. package/build/query/edit/index.js +2 -1
  153. package/build/query/edit/index.js.map +1 -1
  154. package/build/query/edit/inspector-controls/index.js +11 -5
  155. package/build/query/edit/inspector-controls/index.js.map +1 -1
  156. package/build/query/edit/inspector-controls/taxonomy-controls.js +101 -37
  157. package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  158. package/build/query/edit/query-content.js +2 -3
  159. package/build/query/edit/query-content.js.map +1 -1
  160. package/build/query/edit/query-placeholder.js +16 -27
  161. package/build/query/edit/query-placeholder.js.map +1 -1
  162. package/build/query/index.js +0 -8
  163. package/build/query/index.js.map +1 -1
  164. package/build/query/utils.js +73 -9
  165. package/build/query/utils.js.map +1 -1
  166. package/build/rss/edit.js +3 -0
  167. package/build/rss/edit.js.map +1 -1
  168. package/build/search/edit.js +2 -2
  169. package/build/search/edit.js.map +1 -1
  170. package/build/search/edit.native.js +22 -22
  171. package/build/search/edit.native.js.map +1 -1
  172. package/build/search/index.js +9 -1
  173. package/build/search/index.js.map +1 -1
  174. package/build/site-logo/edit.js +17 -9
  175. package/build/site-logo/edit.js.map +1 -1
  176. package/build/site-logo/index.js +1 -0
  177. package/build/site-logo/index.js.map +1 -1
  178. package/build/site-title/index.js +1 -0
  179. package/build/site-title/index.js.map +1 -1
  180. package/build/social-link/edit.js.map +1 -1
  181. package/build/social-link/social-list.js +4 -12
  182. package/build/social-link/social-list.js.map +1 -1
  183. package/build/social-links/edit.js +0 -1
  184. package/build/social-links/edit.js.map +1 -1
  185. package/build/table/edit.js +3 -1
  186. package/build/table/edit.js.map +1 -1
  187. package/build/table/index.js +17 -1
  188. package/build/table/index.js.map +1 -1
  189. package/build/table/save.js +4 -2
  190. package/build/table/save.js.map +1 -1
  191. package/build/table/state.js +24 -12
  192. package/build/table/state.js.map +1 -1
  193. package/build/table/transforms.js +3 -2
  194. package/build/table/transforms.js.map +1 -1
  195. package/build/table-of-contents/edit.js +3 -3
  196. package/build/table-of-contents/edit.js.map +1 -1
  197. package/build/tag-cloud/edit.js +2 -1
  198. package/build/tag-cloud/edit.js.map +1 -1
  199. package/build/template-part/edit/advanced-controls.js +11 -1
  200. package/build/template-part/edit/advanced-controls.js.map +1 -1
  201. package/build/template-part/edit/import-controls.js +160 -0
  202. package/build/template-part/edit/import-controls.js.map +1 -0
  203. package/build/template-part/edit/index.js +2 -1
  204. package/build/template-part/edit/index.js.map +1 -1
  205. package/build/template-part/edit/selection-modal.js +5 -2
  206. package/build/template-part/edit/selection-modal.js.map +1 -1
  207. package/build/template-part/edit/utils/hooks.js +2 -6
  208. package/build/template-part/edit/utils/hooks.js.map +1 -1
  209. package/build/template-part/edit/utils/transformers.js +48 -0
  210. package/build/template-part/edit/utils/transformers.js.map +1 -0
  211. package/build/text-columns/edit.js +1 -0
  212. package/build/text-columns/edit.js.map +1 -1
  213. package/build/utils/transformation-categories.native.js +1 -1
  214. package/build/utils/transformation-categories.native.js.map +1 -1
  215. package/build/video/edit.js +1 -1
  216. package/build/video/edit.js.map +1 -1
  217. package/build/video/edit.native.js +1 -3
  218. package/build/video/edit.native.js.map +1 -1
  219. package/build-module/audio/edit.native.js +1 -2
  220. package/build-module/audio/edit.native.js.map +1 -1
  221. package/build-module/audio/index.js +2 -1
  222. package/build-module/audio/index.js.map +1 -1
  223. package/build-module/avatar/edit.js +1 -0
  224. package/build-module/avatar/edit.js.map +1 -1
  225. package/build-module/avatar/user-control.js +1 -0
  226. package/build-module/avatar/user-control.js.map +1 -1
  227. package/build-module/block/edit.js +14 -2
  228. package/build-module/block/edit.js.map +1 -1
  229. package/build-module/block/edit.native.js +14 -6
  230. package/build-module/block/edit.native.js.map +1 -1
  231. package/build-module/block/index.js +1 -2
  232. package/build-module/block/index.js.map +1 -1
  233. package/build-module/button/edit.native.js +2 -1
  234. package/build-module/button/edit.native.js.map +1 -1
  235. package/build-module/categories/edit.js +1 -1
  236. package/build-module/categories/edit.js.map +1 -1
  237. package/build-module/code/transforms.js +1 -1
  238. package/build-module/code/transforms.js.map +1 -1
  239. package/build-module/columns/edit.js +1 -0
  240. package/build-module/columns/edit.js.map +1 -1
  241. package/build-module/columns/edit.native.js +13 -29
  242. package/build-module/columns/edit.native.js.map +1 -1
  243. package/build-module/comment-author-avatar/edit.js +1 -0
  244. package/build-module/comment-author-avatar/edit.js.map +1 -1
  245. package/build-module/cover/edit/inspector-controls.js +5 -3
  246. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  247. package/build-module/cover/edit.native.js +22 -14
  248. package/build-module/cover/edit.native.js.map +1 -1
  249. package/build-module/embed/embed-controls.native.js +2 -1
  250. package/build-module/embed/embed-controls.native.js.map +1 -1
  251. package/build-module/embed/embed-preview.native.js +1 -2
  252. package/build-module/embed/embed-preview.native.js.map +1 -1
  253. package/build-module/file/inspector.js +1 -0
  254. package/build-module/file/inspector.js.map +1 -1
  255. package/build-module/freeform/edit.js +22 -8
  256. package/build-module/freeform/edit.js.map +1 -1
  257. package/build-module/freeform/modal.js +90 -0
  258. package/build-module/freeform/modal.js.map +1 -0
  259. package/build-module/gallery/edit.js +39 -15
  260. package/build-module/gallery/edit.js.map +1 -1
  261. package/build-module/gallery/gallery.js +3 -16
  262. package/build-module/gallery/gallery.js.map +1 -1
  263. package/build-module/gallery/gallery.native.js +1 -2
  264. package/build-module/gallery/gallery.native.js.map +1 -1
  265. package/build-module/gallery/shared.js +5 -11
  266. package/build-module/gallery/shared.js.map +1 -1
  267. package/build-module/gallery/transforms.js +1 -6
  268. package/build-module/gallery/transforms.js.map +1 -1
  269. package/build-module/gallery/use-get-media.js +1 -1
  270. package/build-module/gallery/use-get-media.js.map +1 -1
  271. package/build-module/gallery/use-get-media.native.js +3 -1
  272. package/build-module/gallery/use-get-media.native.js.map +1 -1
  273. package/build-module/gallery/v1/edit.js +23 -16
  274. package/build-module/gallery/v1/edit.js.map +1 -1
  275. package/build-module/gallery/v1/gallery.native.js +1 -2
  276. package/build-module/gallery/v1/gallery.native.js.map +1 -1
  277. package/build-module/gallery/v1/shared.js +5 -2
  278. package/build-module/gallery/v1/shared.js.map +1 -1
  279. package/build-module/group/edit.js +1 -3
  280. package/build-module/group/edit.js.map +1 -1
  281. package/build-module/group/index.js +3 -1
  282. package/build-module/group/index.js.map +1 -1
  283. package/build-module/group/placeholder.js +5 -26
  284. package/build-module/group/placeholder.js.map +1 -1
  285. package/build-module/heading/deprecated.js +152 -69
  286. package/build-module/heading/deprecated.js.map +1 -1
  287. package/build-module/heading/index.js +1 -2
  288. package/build-module/heading/index.js.map +1 -1
  289. package/build-module/heading/transforms.js +1 -2
  290. package/build-module/heading/transforms.js.map +1 -1
  291. package/build-module/html/index.js +1 -1
  292. package/build-module/image/edit.js +9 -6
  293. package/build-module/image/edit.js.map +1 -1
  294. package/build-module/image/edit.native.js +2 -1
  295. package/build-module/image/edit.native.js.map +1 -1
  296. package/build-module/image/image.js +14 -9
  297. package/build-module/image/image.js.map +1 -1
  298. package/build-module/index.js +2 -1
  299. package/build-module/index.js.map +1 -1
  300. package/build-module/latest-comments/edit.js +1 -0
  301. package/build-module/latest-comments/edit.js.map +1 -1
  302. package/build-module/latest-posts/edit.js +2 -0
  303. package/build-module/latest-posts/edit.js.map +1 -1
  304. package/build-module/list/transforms.js +1 -9
  305. package/build-module/list/transforms.js.map +1 -1
  306. package/build-module/list/utils.js +5 -2
  307. package/build-module/list/utils.js.map +1 -1
  308. package/build-module/list-item/index.js +3 -1
  309. package/build-module/list-item/index.js.map +1 -1
  310. package/build-module/list-item/transforms.js +13 -0
  311. package/build-module/list-item/transforms.js.map +1 -0
  312. package/build-module/list-item/utils.js +78 -1
  313. package/build-module/list-item/utils.js.map +1 -1
  314. package/build-module/media-text/edit.js +6 -3
  315. package/build-module/media-text/edit.js.map +1 -1
  316. package/build-module/missing/edit.native.js +2 -2
  317. package/build-module/missing/edit.native.js.map +1 -1
  318. package/build-module/navigation/edit/are-blocks-dirty.js +44 -0
  319. package/build-module/navigation/edit/are-blocks-dirty.js.map +1 -0
  320. package/build-module/navigation/edit/index.js +95 -118
  321. package/build-module/navigation/edit/index.js.map +1 -1
  322. package/build-module/navigation/edit/menu-inspector-controls.js +80 -0
  323. package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -0
  324. package/build-module/navigation/edit/navigation-menu-selector.js +2 -4
  325. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  326. package/build-module/navigation/edit/unsaved-inner-blocks.js +9 -6
  327. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  328. package/build-module/navigation/edit/utils.js +75 -0
  329. package/build-module/navigation/edit/utils.js.map +1 -1
  330. package/build-module/navigation/view-modal.js +6 -2
  331. package/build-module/navigation/view-modal.js.map +1 -1
  332. package/build-module/navigation-link/edit.js +49 -357
  333. package/build-module/navigation-link/edit.js.map +1 -1
  334. package/build-module/navigation-link/link-ui.js +206 -0
  335. package/build-module/navigation-link/link-ui.js.map +1 -0
  336. package/build-module/navigation-link/transforms.js +12 -0
  337. package/build-module/navigation-link/transforms.js.map +1 -1
  338. package/build-module/navigation-link/update-attributes.js +97 -0
  339. package/build-module/navigation-link/update-attributes.js.map +1 -0
  340. package/build-module/navigation-submenu/edit.js +52 -246
  341. package/build-module/navigation-submenu/edit.js.map +1 -1
  342. package/build-module/page-list/constants.js +6 -0
  343. package/build-module/page-list/constants.js.map +1 -0
  344. package/build-module/page-list/convert-to-links-modal.js +20 -81
  345. package/build-module/page-list/convert-to-links-modal.js.map +1 -1
  346. package/build-module/page-list/convert-to-navigation-links.js +66 -0
  347. package/build-module/page-list/convert-to-navigation-links.js.map +1 -0
  348. package/build-module/page-list/edit.js +146 -82
  349. package/build-module/page-list/edit.js.map +1 -1
  350. package/build-module/page-list/index.js +36 -4
  351. package/build-module/page-list/index.js.map +1 -1
  352. package/build-module/page-list-item/edit.js +77 -0
  353. package/build-module/page-list-item/edit.js.map +1 -0
  354. package/build-module/page-list-item/index.js +68 -0
  355. package/build-module/page-list-item/index.js.map +1 -0
  356. package/build-module/page-list-item/init.js +6 -0
  357. package/build-module/page-list-item/init.js.map +1 -0
  358. package/build-module/paragraph/index.js +1 -7
  359. package/build-module/paragraph/index.js.map +1 -1
  360. package/build-module/post-author/edit.js +3 -2
  361. package/build-module/post-author/edit.js.map +1 -1
  362. package/build-module/post-featured-image/overlay.js +1 -1
  363. package/build-module/post-featured-image/overlay.js.map +1 -1
  364. package/build-module/post-template/index.js +8 -0
  365. package/build-module/post-template/index.js.map +1 -1
  366. package/build-module/preformatted/transforms.js +3 -1
  367. package/build-module/preformatted/transforms.js.map +1 -1
  368. package/build-module/query/deprecated.js +185 -21
  369. package/build-module/query/deprecated.js.map +1 -1
  370. package/build-module/query/edit/index.js +2 -1
  371. package/build-module/query/edit/index.js.map +1 -1
  372. package/build-module/query/edit/inspector-controls/index.js +11 -5
  373. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  374. package/build-module/query/edit/inspector-controls/taxonomy-controls.js +99 -35
  375. package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
  376. package/build-module/query/edit/query-content.js +1 -1
  377. package/build-module/query/edit/query-content.js.map +1 -1
  378. package/build-module/query/edit/query-placeholder.js +15 -27
  379. package/build-module/query/edit/query-placeholder.js.map +1 -1
  380. package/build-module/query/index.js +0 -8
  381. package/build-module/query/index.js.map +1 -1
  382. package/build-module/query/utils.js +69 -8
  383. package/build-module/query/utils.js.map +1 -1
  384. package/build-module/rss/edit.js +3 -0
  385. package/build-module/rss/edit.js.map +1 -1
  386. package/build-module/search/edit.js +2 -2
  387. package/build-module/search/edit.js.map +1 -1
  388. package/build-module/search/edit.native.js +20 -20
  389. package/build-module/search/edit.native.js.map +1 -1
  390. package/build-module/search/index.js +8 -1
  391. package/build-module/search/index.js.map +1 -1
  392. package/build-module/site-logo/edit.js +17 -8
  393. package/build-module/site-logo/edit.js.map +1 -1
  394. package/build-module/site-logo/index.js +1 -0
  395. package/build-module/site-logo/index.js.map +1 -1
  396. package/build-module/site-title/index.js +1 -0
  397. package/build-module/site-title/index.js.map +1 -1
  398. package/build-module/social-link/edit.js +2 -2
  399. package/build-module/social-link/edit.js.map +1 -1
  400. package/build-module/social-link/social-list.js +2 -11
  401. package/build-module/social-link/social-list.js.map +1 -1
  402. package/build-module/social-links/edit.js +0 -1
  403. package/build-module/social-links/edit.js.map +1 -1
  404. package/build-module/table/edit.js +3 -1
  405. package/build-module/table/edit.js.map +1 -1
  406. package/build-module/table/index.js +17 -1
  407. package/build-module/table/index.js.map +1 -1
  408. package/build-module/table/save.js +4 -2
  409. package/build-module/table/save.js.map +1 -1
  410. package/build-module/table/state.js +25 -13
  411. package/build-module/table/state.js.map +1 -1
  412. package/build-module/table/transforms.js +3 -2
  413. package/build-module/table/transforms.js.map +1 -1
  414. package/build-module/table-of-contents/edit.js +3 -3
  415. package/build-module/table-of-contents/edit.js.map +1 -1
  416. package/build-module/tag-cloud/edit.js +3 -2
  417. package/build-module/tag-cloud/edit.js.map +1 -1
  418. package/build-module/template-part/edit/advanced-controls.js +10 -1
  419. package/build-module/template-part/edit/advanced-controls.js.map +1 -1
  420. package/build-module/template-part/edit/import-controls.js +146 -0
  421. package/build-module/template-part/edit/import-controls.js.map +1 -0
  422. package/build-module/template-part/edit/index.js +2 -1
  423. package/build-module/template-part/edit/index.js.map +1 -1
  424. package/build-module/template-part/edit/selection-modal.js +6 -3
  425. package/build-module/template-part/edit/selection-modal.js.map +1 -1
  426. package/build-module/template-part/edit/utils/hooks.js +3 -7
  427. package/build-module/template-part/edit/utils/hooks.js.map +1 -1
  428. package/build-module/template-part/edit/utils/transformers.js +40 -0
  429. package/build-module/template-part/edit/utils/transformers.js.map +1 -0
  430. package/build-module/text-columns/edit.js +1 -0
  431. package/build-module/text-columns/edit.js.map +1 -1
  432. package/build-module/utils/transformation-categories.native.js +1 -1
  433. package/build-module/utils/transformation-categories.native.js.map +1 -1
  434. package/build-module/video/edit.js +1 -1
  435. package/build-module/video/edit.js.map +1 -1
  436. package/build-module/video/edit.native.js +1 -2
  437. package/build-module/video/edit.native.js.map +1 -1
  438. package/build-style/archives/editor-rtl.css +15 -3
  439. package/build-style/archives/editor.css +15 -3
  440. package/build-style/archives/style-rtl.css +15 -3
  441. package/build-style/archives/style.css +15 -3
  442. package/build-style/audio/editor-rtl.css +15 -3
  443. package/build-style/audio/editor.css +15 -3
  444. package/build-style/audio/style-rtl.css +15 -3
  445. package/build-style/audio/style.css +15 -3
  446. package/build-style/audio/theme-rtl.css +15 -3
  447. package/build-style/audio/theme.css +15 -3
  448. package/build-style/avatar/editor-rtl.css +15 -3
  449. package/build-style/avatar/editor.css +15 -3
  450. package/build-style/avatar/style-rtl.css +15 -3
  451. package/build-style/avatar/style.css +15 -3
  452. package/build-style/block/editor-rtl.css +25 -3
  453. package/build-style/block/editor.css +25 -3
  454. package/build-style/button/editor-rtl.css +15 -3
  455. package/build-style/button/editor.css +15 -3
  456. package/build-style/button/style-rtl.css +15 -3
  457. package/build-style/button/style.css +15 -3
  458. package/build-style/buttons/editor-rtl.css +15 -3
  459. package/build-style/buttons/editor.css +15 -3
  460. package/build-style/buttons/style-rtl.css +15 -3
  461. package/build-style/buttons/style.css +15 -3
  462. package/build-style/calendar/style-rtl.css +15 -3
  463. package/build-style/calendar/style.css +15 -3
  464. package/build-style/categories/editor-rtl.css +15 -3
  465. package/build-style/categories/editor.css +15 -3
  466. package/build-style/categories/style-rtl.css +15 -3
  467. package/build-style/categories/style.css +15 -3
  468. package/build-style/classic-rtl.css +15 -3
  469. package/build-style/classic.css +15 -3
  470. package/build-style/code/editor-rtl.css +15 -3
  471. package/build-style/code/editor.css +15 -3
  472. package/build-style/code/style-rtl.css +15 -3
  473. package/build-style/code/style.css +15 -3
  474. package/build-style/code/theme-rtl.css +15 -3
  475. package/build-style/code/theme.css +15 -3
  476. package/build-style/columns/editor-rtl.css +15 -3
  477. package/build-style/columns/editor.css +15 -3
  478. package/build-style/columns/style-rtl.css +15 -3
  479. package/build-style/columns/style.css +15 -3
  480. package/build-style/comment-author-avatar/editor-rtl.css +15 -3
  481. package/build-style/comment-author-avatar/editor.css +15 -3
  482. package/build-style/comment-content/style-rtl.css +15 -3
  483. package/build-style/comment-content/style.css +15 -3
  484. package/build-style/comment-template/style-rtl.css +15 -3
  485. package/build-style/comment-template/style.css +15 -3
  486. package/build-style/comments/editor-rtl.css +15 -3
  487. package/build-style/comments/editor.css +15 -3
  488. package/build-style/comments/style-rtl.css +15 -3
  489. package/build-style/comments/style.css +15 -3
  490. package/build-style/comments-pagination/editor-rtl.css +15 -3
  491. package/build-style/comments-pagination/editor.css +15 -3
  492. package/build-style/comments-pagination/style-rtl.css +15 -3
  493. package/build-style/comments-pagination/style.css +15 -3
  494. package/build-style/comments-pagination-numbers/editor-rtl.css +15 -3
  495. package/build-style/comments-pagination-numbers/editor.css +15 -3
  496. package/build-style/comments-title/editor-rtl.css +15 -3
  497. package/build-style/comments-title/editor.css +15 -3
  498. package/build-style/common-rtl.css +20 -4
  499. package/build-style/common.css +20 -4
  500. package/build-style/cover/editor-rtl.css +15 -3
  501. package/build-style/cover/editor.css +15 -3
  502. package/build-style/cover/style-rtl.css +17 -4
  503. package/build-style/cover/style.css +17 -4
  504. package/build-style/editor-elements-rtl.css +15 -3
  505. package/build-style/editor-elements.css +15 -3
  506. package/build-style/editor-rtl.css +46 -29
  507. package/build-style/editor.css +46 -29
  508. package/build-style/elements-rtl.css +15 -3
  509. package/build-style/elements.css +15 -3
  510. package/build-style/embed/editor-rtl.css +15 -3
  511. package/build-style/embed/editor.css +15 -3
  512. package/build-style/embed/style-rtl.css +15 -3
  513. package/build-style/embed/style.css +15 -3
  514. package/build-style/embed/theme-rtl.css +15 -3
  515. package/build-style/embed/theme.css +15 -3
  516. package/build-style/file/editor-rtl.css +15 -3
  517. package/build-style/file/editor.css +15 -3
  518. package/build-style/file/style-rtl.css +15 -3
  519. package/build-style/file/style.css +15 -3
  520. package/build-style/freeform/editor-rtl.css +15 -3
  521. package/build-style/freeform/editor.css +15 -3
  522. package/build-style/gallery/editor-rtl.css +16 -4
  523. package/build-style/gallery/editor.css +16 -4
  524. package/build-style/gallery/style-rtl.css +19 -5
  525. package/build-style/gallery/style.css +19 -5
  526. package/build-style/gallery/theme-rtl.css +15 -3
  527. package/build-style/gallery/theme.css +15 -3
  528. package/build-style/group/editor-rtl.css +15 -3
  529. package/build-style/group/editor.css +15 -3
  530. package/build-style/group/style-rtl.css +15 -3
  531. package/build-style/group/style.css +15 -3
  532. package/build-style/group/theme-rtl.css +15 -3
  533. package/build-style/group/theme.css +15 -3
  534. package/build-style/heading/style-rtl.css +15 -3
  535. package/build-style/heading/style.css +15 -3
  536. package/build-style/html/editor-rtl.css +15 -3
  537. package/build-style/html/editor.css +15 -3
  538. package/build-style/image/editor-rtl.css +15 -12
  539. package/build-style/image/editor.css +15 -12
  540. package/build-style/image/style-rtl.css +15 -3
  541. package/build-style/image/style.css +15 -3
  542. package/build-style/image/theme-rtl.css +15 -3
  543. package/build-style/image/theme.css +15 -3
  544. package/build-style/latest-comments/style-rtl.css +15 -3
  545. package/build-style/latest-comments/style.css +15 -3
  546. package/build-style/latest-posts/editor-rtl.css +15 -3
  547. package/build-style/latest-posts/editor.css +15 -3
  548. package/build-style/latest-posts/style-rtl.css +15 -3
  549. package/build-style/latest-posts/style.css +15 -3
  550. package/build-style/list/style-rtl.css +15 -3
  551. package/build-style/list/style.css +15 -3
  552. package/build-style/media-text/editor-rtl.css +15 -3
  553. package/build-style/media-text/editor.css +15 -3
  554. package/build-style/media-text/style-rtl.css +15 -3
  555. package/build-style/media-text/style.css +15 -3
  556. package/build-style/more/editor-rtl.css +15 -3
  557. package/build-style/more/editor.css +15 -3
  558. package/build-style/navigation/editor-rtl.css +15 -9
  559. package/build-style/navigation/editor.css +15 -9
  560. package/build-style/navigation/style-rtl.css +15 -4
  561. package/build-style/navigation/style.css +15 -4
  562. package/build-style/navigation-link/editor-rtl.css +15 -3
  563. package/build-style/navigation-link/editor.css +15 -3
  564. package/build-style/navigation-link/style-rtl.css +15 -3
  565. package/build-style/navigation-link/style.css +15 -3
  566. package/build-style/navigation-submenu/editor-rtl.css +15 -3
  567. package/build-style/navigation-submenu/editor.css +15 -3
  568. package/build-style/nextpage/editor-rtl.css +15 -3
  569. package/build-style/nextpage/editor.css +15 -3
  570. package/build-style/page-list/editor-rtl.css +19 -3
  571. package/build-style/page-list/editor.css +19 -3
  572. package/build-style/page-list/style-rtl.css +15 -3
  573. package/build-style/page-list/style.css +15 -3
  574. package/build-style/paragraph/editor-rtl.css +15 -3
  575. package/build-style/paragraph/editor.css +15 -3
  576. package/build-style/paragraph/style-rtl.css +15 -3
  577. package/build-style/paragraph/style.css +15 -3
  578. package/build-style/post-author/style-rtl.css +15 -3
  579. package/build-style/post-author/style.css +15 -3
  580. package/build-style/post-comments-form/editor-rtl.css +15 -3
  581. package/build-style/post-comments-form/editor.css +15 -3
  582. package/build-style/post-comments-form/style-rtl.css +15 -3
  583. package/build-style/post-comments-form/style.css +15 -3
  584. package/build-style/post-date/style-rtl.css +15 -3
  585. package/build-style/post-date/style.css +15 -3
  586. package/build-style/post-excerpt/editor-rtl.css +15 -3
  587. package/build-style/post-excerpt/editor.css +15 -3
  588. package/build-style/post-excerpt/style-rtl.css +15 -3
  589. package/build-style/post-excerpt/style.css +15 -3
  590. package/build-style/post-featured-image/editor-rtl.css +15 -3
  591. package/build-style/post-featured-image/editor.css +15 -3
  592. package/build-style/post-featured-image/style-rtl.css +15 -3
  593. package/build-style/post-featured-image/style.css +15 -3
  594. package/build-style/post-navigation-link/style-rtl.css +15 -3
  595. package/build-style/post-navigation-link/style.css +15 -3
  596. package/build-style/post-template/editor-rtl.css +15 -3
  597. package/build-style/post-template/editor.css +15 -3
  598. package/build-style/post-template/style-rtl.css +15 -3
  599. package/build-style/post-template/style.css +15 -3
  600. package/build-style/post-terms/style-rtl.css +15 -3
  601. package/build-style/post-terms/style.css +15 -3
  602. package/build-style/post-title/style-rtl.css +15 -3
  603. package/build-style/post-title/style.css +15 -3
  604. package/build-style/preformatted/style-rtl.css +15 -3
  605. package/build-style/preformatted/style.css +15 -3
  606. package/build-style/pullquote/editor-rtl.css +15 -3
  607. package/build-style/pullquote/editor.css +15 -3
  608. package/build-style/pullquote/style-rtl.css +15 -3
  609. package/build-style/pullquote/style.css +15 -3
  610. package/build-style/pullquote/theme-rtl.css +15 -3
  611. package/build-style/pullquote/theme.css +15 -3
  612. package/build-style/query/editor-rtl.css +15 -3
  613. package/build-style/query/editor.css +15 -3
  614. package/build-style/query-pagination/editor-rtl.css +15 -3
  615. package/build-style/query-pagination/editor.css +15 -3
  616. package/build-style/query-pagination/style-rtl.css +15 -3
  617. package/build-style/query-pagination/style.css +15 -3
  618. package/build-style/query-pagination-numbers/editor-rtl.css +15 -3
  619. package/build-style/query-pagination-numbers/editor.css +15 -3
  620. package/build-style/query-title/style-rtl.css +15 -3
  621. package/build-style/query-title/style.css +15 -3
  622. package/build-style/quote/style-rtl.css +15 -3
  623. package/build-style/quote/style.css +15 -3
  624. package/build-style/quote/theme-rtl.css +15 -3
  625. package/build-style/quote/theme.css +15 -3
  626. package/build-style/read-more/style-rtl.css +15 -3
  627. package/build-style/read-more/style.css +15 -3
  628. package/build-style/reset-rtl.css +15 -3
  629. package/build-style/reset.css +15 -3
  630. package/build-style/rss/editor-rtl.css +15 -3
  631. package/build-style/rss/editor.css +15 -3
  632. package/build-style/rss/style-rtl.css +15 -3
  633. package/build-style/rss/style.css +15 -3
  634. package/build-style/search/editor-rtl.css +15 -3
  635. package/build-style/search/editor.css +15 -3
  636. package/build-style/search/style-rtl.css +15 -3
  637. package/build-style/search/style.css +15 -3
  638. package/build-style/search/theme-rtl.css +15 -3
  639. package/build-style/search/theme.css +15 -3
  640. package/build-style/separator/editor-rtl.css +15 -3
  641. package/build-style/separator/editor.css +15 -3
  642. package/build-style/separator/style-rtl.css +15 -3
  643. package/build-style/separator/style.css +15 -3
  644. package/build-style/separator/theme-rtl.css +15 -3
  645. package/build-style/separator/theme.css +15 -3
  646. package/build-style/shortcode/editor-rtl.css +16 -4
  647. package/build-style/shortcode/editor.css +16 -4
  648. package/build-style/site-logo/editor-rtl.css +15 -3
  649. package/build-style/site-logo/editor.css +15 -3
  650. package/build-style/site-logo/style-rtl.css +15 -3
  651. package/build-style/site-logo/style.css +15 -3
  652. package/build-style/site-tagline/editor-rtl.css +15 -3
  653. package/build-style/site-tagline/editor.css +15 -3
  654. package/build-style/site-title/editor-rtl.css +15 -3
  655. package/build-style/site-title/editor.css +15 -3
  656. package/build-style/site-title/style-rtl.css +15 -3
  657. package/build-style/site-title/style.css +15 -3
  658. package/build-style/social-link/editor-rtl.css +15 -3
  659. package/build-style/social-link/editor.css +15 -3
  660. package/build-style/social-links/editor-rtl.css +15 -3
  661. package/build-style/social-links/editor.css +15 -3
  662. package/build-style/social-links/style-rtl.css +15 -3
  663. package/build-style/social-links/style.css +15 -3
  664. package/build-style/spacer/editor-rtl.css +15 -3
  665. package/build-style/spacer/editor.css +15 -3
  666. package/build-style/spacer/style-rtl.css +15 -3
  667. package/build-style/spacer/style.css +15 -3
  668. package/build-style/style-rtl.css +36 -10
  669. package/build-style/style.css +36 -10
  670. package/build-style/table/editor-rtl.css +15 -11
  671. package/build-style/table/editor.css +15 -11
  672. package/build-style/table/style-rtl.css +21 -3
  673. package/build-style/table/style.css +21 -3
  674. package/build-style/table/theme-rtl.css +15 -9
  675. package/build-style/table/theme.css +15 -9
  676. package/build-style/tag-cloud/style-rtl.css +15 -3
  677. package/build-style/tag-cloud/style.css +15 -3
  678. package/build-style/template-part/editor-rtl.css +30 -4
  679. package/build-style/template-part/editor.css +30 -4
  680. package/build-style/template-part/theme-rtl.css +15 -3
  681. package/build-style/template-part/theme.css +15 -3
  682. package/build-style/text-columns/editor-rtl.css +15 -3
  683. package/build-style/text-columns/editor.css +15 -3
  684. package/build-style/text-columns/style-rtl.css +15 -3
  685. package/build-style/text-columns/style.css +15 -3
  686. package/build-style/theme-rtl.css +15 -9
  687. package/build-style/theme.css +15 -9
  688. package/build-style/verse/style-rtl.css +19 -4
  689. package/build-style/verse/style.css +19 -4
  690. package/build-style/video/editor-rtl.css +15 -3
  691. package/build-style/video/editor.css +15 -3
  692. package/build-style/video/style-rtl.css +17 -4
  693. package/build-style/video/style.css +17 -4
  694. package/build-style/video/theme-rtl.css +15 -3
  695. package/build-style/video/theme.css +15 -3
  696. package/package.json +32 -30
  697. package/src/audio/edit.native.js +1 -2
  698. package/src/audio/index.js +1 -0
  699. package/src/avatar/edit.js +1 -0
  700. package/src/avatar/user-control.js +1 -0
  701. package/src/block/block.json +1 -2
  702. package/src/block/edit.js +14 -3
  703. package/src/block/edit.native.js +24 -12
  704. package/src/block/editor.scss +17 -0
  705. package/src/block/index.php +1 -2
  706. package/src/block/test/edit.native.js +28 -32
  707. package/src/button/edit.native.js +1 -0
  708. package/src/buttons/test/edit.native.js +40 -51
  709. package/src/categories/edit.js +1 -1
  710. package/src/code/transforms.js +3 -1
  711. package/src/columns/edit.js +1 -0
  712. package/src/columns/edit.native.js +18 -26
  713. package/src/comment-author-avatar/edit.js +1 -0
  714. package/src/comments/index.php +0 -1
  715. package/src/cover/edit/inspector-controls.js +6 -4
  716. package/src/cover/edit.native.js +32 -19
  717. package/src/cover/test/edit.native.js +73 -126
  718. package/src/embed/embed-controls.native.js +1 -0
  719. package/src/embed/embed-preview.native.js +1 -2
  720. package/src/embed/test/index.native.js +237 -231
  721. package/src/file/inspector.js +1 -0
  722. package/src/file/test/__snapshots__/edit.native.js.snap +2 -6
  723. package/src/freeform/edit.js +48 -29
  724. package/src/freeform/modal.js +111 -0
  725. package/src/gallery/edit.js +32 -7
  726. package/src/gallery/gallery.js +3 -13
  727. package/src/gallery/gallery.native.js +1 -2
  728. package/src/gallery/shared.js +7 -11
  729. package/src/gallery/transforms.js +1 -6
  730. package/src/gallery/use-get-media.js +1 -1
  731. package/src/gallery/use-get-media.native.js +2 -1
  732. package/src/gallery/v1/edit.js +8 -7
  733. package/src/gallery/v1/gallery.native.js +1 -2
  734. package/src/gallery/v1/shared.js +7 -2
  735. package/src/group/block.json +3 -1
  736. package/src/group/edit.js +2 -6
  737. package/src/group/placeholder.js +6 -25
  738. package/src/group/test/__snapshots__/edit.native.js.snap +1 -1
  739. package/src/heading/block.json +1 -2
  740. package/src/heading/deprecated.js +209 -136
  741. package/src/heading/index.php +52 -0
  742. package/src/heading/test/__snapshots__/index.native.js.snap +7 -0
  743. package/src/heading/test/index.native.js +44 -0
  744. package/src/home-link/index.php +1 -1
  745. package/src/html/block.json +1 -1
  746. package/src/image/edit.js +7 -2
  747. package/src/image/edit.native.js +2 -1
  748. package/src/image/editor.scss +0 -11
  749. package/src/image/image.js +14 -8
  750. package/src/image/test/edit.native.js +14 -10
  751. package/src/index.js +2 -0
  752. package/src/latest-comments/edit.js +1 -0
  753. package/src/latest-posts/edit.js +2 -0
  754. package/src/latest-posts/test/__snapshots__/edit.native.js.snap +3 -0
  755. package/src/latest-posts/test/edit.native.js +49 -0
  756. package/src/list/test/edit.native.js +53 -45
  757. package/src/list/transforms.js +0 -11
  758. package/src/list/utils.js +6 -2
  759. package/src/list-item/index.js +2 -0
  760. package/src/list-item/transforms.js +17 -0
  761. package/src/list-item/utils.js +10 -1
  762. package/src/media-text/edit.js +6 -3
  763. package/src/missing/edit.native.js +13 -6
  764. package/src/missing/test/edit-integration.native.js +10 -12
  765. package/src/more/test/__snapshots__/edit.native.js.snap +7 -0
  766. package/src/more/test/edit.native.js +41 -0
  767. package/src/navigation/edit/are-blocks-dirty.js +51 -0
  768. package/src/navigation/edit/index.js +229 -298
  769. package/src/navigation/edit/menu-inspector-controls.js +119 -0
  770. package/src/navigation/edit/navigation-menu-selector.js +6 -7
  771. package/src/navigation/edit/test/are-blocks-dirty.js +121 -0
  772. package/src/navigation/edit/unsaved-inner-blocks.js +12 -7
  773. package/src/navigation/edit/utils.js +82 -0
  774. package/src/navigation/editor.scss +0 -7
  775. package/src/navigation/index.php +89 -10
  776. package/src/navigation/style.scss +0 -1
  777. package/src/navigation/view-modal.js +11 -1
  778. package/src/navigation-link/edit.js +62 -386
  779. package/src/navigation-link/index.php +64 -0
  780. package/src/navigation-link/link-ui.js +213 -0
  781. package/src/navigation-link/test/edit.js +23 -82
  782. package/src/navigation-link/transforms.js +14 -0
  783. package/src/navigation-link/update-attributes.js +99 -0
  784. package/src/navigation-submenu/edit.js +85 -276
  785. package/src/navigation-submenu/index.php +72 -0
  786. package/src/page-list/block.json +24 -2
  787. package/src/page-list/constants.js +8 -0
  788. package/src/page-list/convert-to-links-modal.js +19 -76
  789. package/src/page-list/convert-to-navigation-links.js +60 -0
  790. package/src/page-list/edit.js +187 -118
  791. package/src/page-list/editor.scss +4 -0
  792. package/src/page-list/index.js +8 -2
  793. package/src/page-list/index.php +18 -10
  794. package/src/page-list/test/convert-to-links-modal.js +28 -34
  795. package/src/page-list-item/block.json +51 -0
  796. package/src/page-list-item/edit.js +102 -0
  797. package/src/page-list-item/index.js +24 -0
  798. package/src/page-list-item/init.js +6 -0
  799. package/src/paragraph/index.js +0 -6
  800. package/src/post-author/edit.js +3 -2
  801. package/src/post-content/index.php +1 -2
  802. package/src/post-featured-image/index.php +7 -2
  803. package/src/post-featured-image/overlay.js +1 -1
  804. package/src/post-template/block.json +8 -0
  805. package/src/preformatted/transforms.js +4 -1
  806. package/src/query/block.json +0 -8
  807. package/src/query/deprecated.js +257 -86
  808. package/src/query/edit/index.js +1 -0
  809. package/src/query/edit/inspector-controls/index.js +50 -38
  810. package/src/query/edit/inspector-controls/taxonomy-controls.js +102 -38
  811. package/src/query/edit/query-content.js +2 -1
  812. package/src/query/edit/query-placeholder.js +14 -25
  813. package/src/query/utils.js +59 -1
  814. package/src/rss/edit.js +3 -0
  815. package/src/search/edit.js +2 -2
  816. package/src/search/edit.native.js +31 -27
  817. package/src/search/index.js +5 -1
  818. package/src/separator/test/__snapshots__/edit.native.js.snap +7 -0
  819. package/src/separator/test/edit.native.js +41 -0
  820. package/src/shortcode/test/edit.native.js +15 -18
  821. package/src/site-logo/edit.js +13 -5
  822. package/src/site-logo/index.js +1 -0
  823. package/src/site-title/index.js +1 -0
  824. package/src/social-link/edit.js +3 -3
  825. package/src/social-link/social-list.js +2 -7
  826. package/src/social-link/test/index.native.js +10 -16
  827. package/src/social-links/edit.js +0 -1
  828. package/src/social-links/test/edit.native.js +4 -3
  829. package/src/spacer/test/index.native.js +39 -36
  830. package/src/table/block.json +15 -0
  831. package/src/table/edit.js +2 -1
  832. package/src/table/editor.scss +0 -4
  833. package/src/table/index.js +1 -0
  834. package/src/table/save.js +5 -1
  835. package/src/table/state.js +22 -7
  836. package/src/table/style.scss +8 -0
  837. package/src/table/theme.scss +0 -8
  838. package/src/table/transforms.js +2 -1
  839. package/src/table-of-contents/edit.js +3 -3
  840. package/src/tag-cloud/edit.js +3 -2
  841. package/src/template-part/edit/advanced-controls.js +12 -0
  842. package/src/template-part/edit/import-controls.js +180 -0
  843. package/src/template-part/edit/index.js +1 -0
  844. package/src/template-part/edit/selection-modal.js +4 -3
  845. package/src/template-part/edit/utils/hooks.js +7 -3
  846. package/src/template-part/edit/utils/transformers.js +37 -0
  847. package/src/template-part/editor.scss +20 -2
  848. package/src/template-part/index.php +1 -2
  849. package/src/text-columns/edit.js +1 -0
  850. package/src/utils/transformation-categories.native.js +1 -0
  851. package/src/verse/style.scss +4 -1
  852. package/src/verse/test/__snapshots__/edit.native.js.snap +13 -0
  853. package/src/verse/test/edit.native.js +40 -33
  854. package/src/video/edit.js +1 -1
  855. package/src/video/edit.native.js +1 -2
  856. package/test/babel-plugin.js +35 -35
  857. package/tsconfig.tsbuildinfo +1 -1
  858. package/build/query/constants.js +0 -16
  859. package/build/query/constants.js.map +0 -1
  860. package/build-module/query/constants.js +0 -7
  861. package/build-module/query/constants.js.map +0 -1
  862. package/src/query/constants.js +0 -7
@@ -74,57 +74,47 @@ const migrateTextAlign = attributes => {
74
74
  } : attributes;
75
75
  };
76
76
 
77
- const deprecated = [{
78
- supports: {
79
- align: ['wide', 'full'],
80
- anchor: true,
81
- className: false,
82
- color: {
83
- link: true
84
- },
85
- fontSize: true,
86
- lineHeight: true,
87
- __experimentalSelector: {
88
- 'core/heading/h1': 'h1',
89
- 'core/heading/h2': 'h2',
90
- 'core/heading/h3': 'h3',
91
- 'core/heading/h4': 'h4',
92
- 'core/heading/h5': 'h5',
93
- 'core/heading/h6': 'h6'
77
+ const v1 = {
78
+ supports: blockSupports,
79
+ attributes: { ...blockAttributes,
80
+ customTextColor: {
81
+ type: 'string'
94
82
  },
95
- __unstablePasteTextInline: true
96
- },
97
- attributes: blockAttributes,
98
- isEligible: _ref => {
99
- let {
100
- align
101
- } = _ref;
102
- return TEXT_ALIGN_OPTIONS.includes(align);
83
+ textColor: {
84
+ type: 'string'
85
+ }
103
86
  },
104
- migrate: migrateTextAlign,
87
+ migrate: attributes => migrateCustomColors(migrateTextAlign(attributes)),
105
88
 
106
- save(_ref2) {
89
+ save(_ref) {
107
90
  let {
108
91
  attributes
109
- } = _ref2;
92
+ } = _ref;
110
93
  const {
111
94
  align,
95
+ level,
112
96
  content,
113
- level
97
+ textColor,
98
+ customTextColor
114
99
  } = attributes;
115
- const TagName = 'h' + level;
100
+ const tagName = 'h' + level;
101
+ const textClass = (0, _blockEditor.getColorClassName)('color', textColor);
116
102
  const className = (0, _classnames.default)({
117
- [`has-text-align-${align}`]: align
103
+ [textClass]: textClass
118
104
  });
119
- return (0, _element.createElement)(TagName, _blockEditor.useBlockProps.save({
120
- className
121
- }), (0, _element.createElement)(_blockEditor.RichText.Content, {
105
+ return (0, _element.createElement)(_blockEditor.RichText.Content, {
106
+ className: className ? className : undefined,
107
+ tagName: tagName,
108
+ style: {
109
+ textAlign: align,
110
+ color: textClass ? undefined : customTextColor
111
+ },
122
112
  value: content
123
- }));
113
+ });
124
114
  }
125
115
 
126
- }, {
127
- supports: blockSupports,
116
+ };
117
+ const v2 = {
128
118
  attributes: { ...blockAttributes,
129
119
  customTextColor: {
130
120
  type: 'string'
@@ -135,10 +125,10 @@ const deprecated = [{
135
125
  },
136
126
  migrate: attributes => migrateCustomColors(migrateTextAlign(attributes)),
137
127
 
138
- save(_ref3) {
128
+ save(_ref2) {
139
129
  let {
140
130
  attributes
141
- } = _ref3;
131
+ } = _ref2;
142
132
  const {
143
133
  align,
144
134
  content,
@@ -150,7 +140,6 @@ const deprecated = [{
150
140
  const textClass = (0, _blockEditor.getColorClassName)('color', textColor);
151
141
  const className = (0, _classnames.default)({
152
142
  [textClass]: textClass,
153
- 'has-text-color': textColor || customTextColor,
154
143
  [`has-text-align-${align}`]: align
155
144
  });
156
145
  return (0, _element.createElement)(_blockEditor.RichText.Content, {
@@ -161,9 +150,12 @@ const deprecated = [{
161
150
  },
162
151
  value: content
163
152
  });
164
- }
153
+ },
165
154
 
166
- }, {
155
+ supports: blockSupports
156
+ };
157
+ const v3 = {
158
+ supports: blockSupports,
167
159
  attributes: { ...blockAttributes,
168
160
  customTextColor: {
169
161
  type: 'string'
@@ -174,10 +166,10 @@ const deprecated = [{
174
166
  },
175
167
  migrate: attributes => migrateCustomColors(migrateTextAlign(attributes)),
176
168
 
177
- save(_ref4) {
169
+ save(_ref3) {
178
170
  let {
179
171
  attributes
180
- } = _ref4;
172
+ } = _ref3;
181
173
  const {
182
174
  align,
183
175
  content,
@@ -189,6 +181,7 @@ const deprecated = [{
189
181
  const textClass = (0, _blockEditor.getColorClassName)('color', textColor);
190
182
  const className = (0, _classnames.default)({
191
183
  [textClass]: textClass,
184
+ 'has-text-color': textColor || customTextColor,
192
185
  [`has-text-align-${align}`]: align
193
186
  });
194
187
  return (0, _element.createElement)(_blockEditor.RichText.Content, {
@@ -199,20 +192,37 @@ const deprecated = [{
199
192
  },
200
193
  value: content
201
194
  });
202
- },
195
+ }
203
196
 
204
- supports: blockSupports
205
- }, {
206
- supports: blockSupports,
207
- attributes: { ...blockAttributes,
208
- customTextColor: {
209
- type: 'string'
197
+ };
198
+ const v4 = {
199
+ supports: {
200
+ align: ['wide', 'full'],
201
+ anchor: true,
202
+ className: false,
203
+ color: {
204
+ link: true
210
205
  },
211
- textColor: {
212
- type: 'string'
213
- }
206
+ fontSize: true,
207
+ lineHeight: true,
208
+ __experimentalSelector: {
209
+ 'core/heading/h1': 'h1',
210
+ 'core/heading/h2': 'h2',
211
+ 'core/heading/h3': 'h3',
212
+ 'core/heading/h4': 'h4',
213
+ 'core/heading/h5': 'h5',
214
+ 'core/heading/h6': 'h6'
215
+ },
216
+ __unstablePasteTextInline: true
214
217
  },
215
- migrate: attributes => migrateCustomColors(migrateTextAlign(attributes)),
218
+ attributes: blockAttributes,
219
+ isEligible: _ref4 => {
220
+ let {
221
+ align
222
+ } = _ref4;
223
+ return TEXT_ALIGN_OPTIONS.includes(align);
224
+ },
225
+ migrate: migrateTextAlign,
216
226
 
217
227
  save(_ref5) {
218
228
  let {
@@ -220,28 +230,101 @@ const deprecated = [{
220
230
  } = _ref5;
221
231
  const {
222
232
  align,
223
- level,
224
233
  content,
225
- textColor,
226
- customTextColor
234
+ level
227
235
  } = attributes;
228
- const tagName = 'h' + level;
229
- const textClass = (0, _blockEditor.getColorClassName)('color', textColor);
236
+ const TagName = 'h' + level;
230
237
  const className = (0, _classnames.default)({
231
- [textClass]: textClass
238
+ [`has-text-align-${align}`]: align
232
239
  });
233
- return (0, _element.createElement)(_blockEditor.RichText.Content, {
234
- className: className ? className : undefined,
235
- tagName: tagName,
236
- style: {
237
- textAlign: align,
238
- color: textClass ? undefined : customTextColor
239
- },
240
+ return (0, _element.createElement)(TagName, _blockEditor.useBlockProps.save({
241
+ className
242
+ }), (0, _element.createElement)(_blockEditor.RichText.Content, {
240
243
  value: content
244
+ }));
245
+ }
246
+
247
+ }; // This deprecation covers the serialization of the `wp-block-heading` class
248
+ // into the block's markup after className support was enabled.
249
+
250
+ const v5 = {
251
+ supports: {
252
+ align: ['wide', 'full'],
253
+ anchor: true,
254
+ className: false,
255
+ color: {
256
+ gradients: true,
257
+ link: true,
258
+ __experimentalDefaultControls: {
259
+ background: true,
260
+ text: true
261
+ }
262
+ },
263
+ spacing: {
264
+ margin: true,
265
+ padding: true
266
+ },
267
+ typography: {
268
+ fontSize: true,
269
+ lineHeight: true,
270
+ __experimentalFontFamily: true,
271
+ __experimentalFontStyle: true,
272
+ __experimentalFontWeight: true,
273
+ __experimentalLetterSpacing: true,
274
+ __experimentalTextTransform: true,
275
+ __experimentalTextDecoration: true,
276
+ __experimentalDefaultControls: {
277
+ fontSize: true,
278
+ fontAppearance: true,
279
+ textTransform: true
280
+ }
281
+ },
282
+ __experimentalSelector: 'h1,h2,h3,h4,h5,h6',
283
+ __unstablePasteTextInline: true,
284
+ __experimentalSlashInserter: true
285
+ },
286
+ attributes: {
287
+ textAlign: {
288
+ type: 'string'
289
+ },
290
+ content: {
291
+ type: 'string',
292
+ source: 'html',
293
+ selector: 'h1,h2,h3,h4,h5,h6',
294
+ default: '',
295
+ __experimentalRole: 'content'
296
+ },
297
+ level: {
298
+ type: 'number',
299
+ default: 2
300
+ },
301
+ placeholder: {
302
+ type: 'string'
303
+ }
304
+ },
305
+
306
+ save(_ref6) {
307
+ let {
308
+ attributes
309
+ } = _ref6;
310
+ const {
311
+ textAlign,
312
+ content,
313
+ level
314
+ } = attributes;
315
+ const TagName = 'h' + level;
316
+ const className = (0, _classnames.default)({
317
+ [`has-text-align-${textAlign}`]: textAlign
241
318
  });
319
+ return (0, _element.createElement)(TagName, _blockEditor.useBlockProps.save({
320
+ className
321
+ }), (0, _element.createElement)(_blockEditor.RichText.Content, {
322
+ value: content
323
+ }));
242
324
  }
243
325
 
244
- }];
326
+ };
327
+ const deprecated = [v5, v4, v3, v2, v1];
245
328
  var _default = deprecated;
246
329
  exports.default = _default;
247
330
  //# sourceMappingURL=deprecated.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/heading/deprecated.js"],"names":["blockSupports","className","anchor","blockAttributes","align","type","content","source","selector","default","level","placeholder","migrateCustomColors","attributes","customTextColor","style","color","text","restAttributes","TEXT_ALIGN_OPTIONS","migrateTextAlign","rest","includes","textAlign","deprecated","supports","link","fontSize","lineHeight","__experimentalSelector","__unstablePasteTextInline","isEligible","migrate","save","TagName","useBlockProps","textColor","tagName","textClass","undefined"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tgetColorClassName,\n\tRichText,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\n\nconst blockSupports = {\n\tclassName: false,\n\tanchor: true,\n};\n\nconst blockAttributes = {\n\talign: {\n\t\ttype: 'string',\n\t},\n\tcontent: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\tdefault: '',\n\t},\n\tlevel: {\n\t\ttype: 'number',\n\t\tdefault: 2,\n\t},\n\tplaceholder: {\n\t\ttype: 'string',\n\t},\n};\n\nconst migrateCustomColors = ( attributes ) => {\n\tif ( ! attributes.customTextColor ) {\n\t\treturn attributes;\n\t}\n\tconst style = {\n\t\tcolor: {\n\t\t\ttext: attributes.customTextColor,\n\t\t},\n\t};\n\n\tconst { customTextColor, ...restAttributes } = attributes;\n\n\treturn {\n\t\t...restAttributes,\n\t\tstyle,\n\t};\n};\n\nconst TEXT_ALIGN_OPTIONS = [ 'left', 'right', 'center' ];\n\nconst migrateTextAlign = ( attributes ) => {\n\tconst { align, ...rest } = attributes;\n\treturn TEXT_ALIGN_OPTIONS.includes( align )\n\t\t? { ...rest, textAlign: align }\n\t\t: attributes;\n};\n\nconst deprecated = [\n\t{\n\t\tsupports: {\n\t\t\talign: [ 'wide', 'full' ],\n\t\t\tanchor: true,\n\t\t\tclassName: false,\n\t\t\tcolor: { link: true },\n\t\t\tfontSize: true,\n\t\t\tlineHeight: true,\n\t\t\t__experimentalSelector: {\n\t\t\t\t'core/heading/h1': 'h1',\n\t\t\t\t'core/heading/h2': 'h2',\n\t\t\t\t'core/heading/h3': 'h3',\n\t\t\t\t'core/heading/h4': 'h4',\n\t\t\t\t'core/heading/h5': 'h5',\n\t\t\t\t'core/heading/h6': 'h6',\n\t\t\t},\n\t\t\t__unstablePasteTextInline: true,\n\t\t},\n\t\tattributes: blockAttributes,\n\t\tisEligible: ( { align } ) => TEXT_ALIGN_OPTIONS.includes( align ),\n\t\tmigrate: migrateTextAlign,\n\t\tsave( { attributes } ) {\n\t\t\tconst { align, content, level } = attributes;\n\t\t\tconst TagName = 'h' + level;\n\n\t\t\tconst className = classnames( {\n\t\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t\t} );\n\n\t\t\treturn (\n\t\t\t\t<TagName { ...useBlockProps.save( { className } ) }>\n\t\t\t\t\t<RichText.Content value={ content } />\n\t\t\t\t</TagName>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tsupports: blockSupports,\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tmigrate: ( attributes ) =>\n\t\t\tmigrateCustomColors( migrateTextAlign( attributes ) ),\n\t\tsave( { attributes } ) {\n\t\t\tconst { align, content, customTextColor, level, textColor } =\n\t\t\t\tattributes;\n\t\t\tconst tagName = 'h' + level;\n\n\t\t\tconst textClass = getColorClassName( 'color', textColor );\n\n\t\t\tconst className = classnames( {\n\t\t\t\t[ textClass ]: textClass,\n\t\t\t\t'has-text-color': textColor || customTextColor,\n\t\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t\t} );\n\n\t\t\treturn (\n\t\t\t\t<RichText.Content\n\t\t\t\t\tclassName={ className ? className : undefined }\n\t\t\t\t\ttagName={ tagName }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ content }\n\t\t\t\t/>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tmigrate: ( attributes ) =>\n\t\t\tmigrateCustomColors( migrateTextAlign( attributes ) ),\n\t\tsave( { attributes } ) {\n\t\t\tconst { align, content, customTextColor, level, textColor } =\n\t\t\t\tattributes;\n\t\t\tconst tagName = 'h' + level;\n\n\t\t\tconst textClass = getColorClassName( 'color', textColor );\n\n\t\t\tconst className = classnames( {\n\t\t\t\t[ textClass ]: textClass,\n\t\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t\t} );\n\n\t\t\treturn (\n\t\t\t\t<RichText.Content\n\t\t\t\t\tclassName={ className ? className : undefined }\n\t\t\t\t\ttagName={ tagName }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ content }\n\t\t\t\t/>\n\t\t\t);\n\t\t},\n\t\tsupports: blockSupports,\n\t},\n\t{\n\t\tsupports: blockSupports,\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tmigrate: ( attributes ) =>\n\t\t\tmigrateCustomColors( migrateTextAlign( attributes ) ),\n\t\tsave( { attributes } ) {\n\t\t\tconst { align, level, content, textColor, customTextColor } =\n\t\t\t\tattributes;\n\t\t\tconst tagName = 'h' + level;\n\n\t\t\tconst textClass = getColorClassName( 'color', textColor );\n\n\t\t\tconst className = classnames( {\n\t\t\t\t[ textClass ]: textClass,\n\t\t\t} );\n\n\t\t\treturn (\n\t\t\t\t<RichText.Content\n\t\t\t\t\tclassName={ className ? className : undefined }\n\t\t\t\t\ttagName={ tagName }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\ttextAlign: align,\n\t\t\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ content }\n\t\t\t\t/>\n\t\t\t);\n\t\t},\n\t},\n];\n\nexport default deprecated;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/heading/deprecated.js"],"names":["blockSupports","className","anchor","blockAttributes","align","type","content","source","selector","default","level","placeholder","migrateCustomColors","attributes","customTextColor","style","color","text","restAttributes","TEXT_ALIGN_OPTIONS","migrateTextAlign","rest","includes","textAlign","v1","supports","textColor","migrate","save","tagName","textClass","undefined","v2","v3","v4","link","fontSize","lineHeight","__experimentalSelector","__unstablePasteTextInline","isEligible","TagName","useBlockProps","v5","gradients","__experimentalDefaultControls","background","spacing","margin","padding","typography","__experimentalFontFamily","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalTextTransform","__experimentalTextDecoration","fontAppearance","textTransform","__experimentalSlashInserter","__experimentalRole","deprecated"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tgetColorClassName,\n\tRichText,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\n\nconst blockSupports = {\n\tclassName: false,\n\tanchor: true,\n};\n\nconst blockAttributes = {\n\talign: {\n\t\ttype: 'string',\n\t},\n\tcontent: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\tdefault: '',\n\t},\n\tlevel: {\n\t\ttype: 'number',\n\t\tdefault: 2,\n\t},\n\tplaceholder: {\n\t\ttype: 'string',\n\t},\n};\n\nconst migrateCustomColors = ( attributes ) => {\n\tif ( ! attributes.customTextColor ) {\n\t\treturn attributes;\n\t}\n\tconst style = {\n\t\tcolor: {\n\t\t\ttext: attributes.customTextColor,\n\t\t},\n\t};\n\n\tconst { customTextColor, ...restAttributes } = attributes;\n\n\treturn {\n\t\t...restAttributes,\n\t\tstyle,\n\t};\n};\n\nconst TEXT_ALIGN_OPTIONS = [ 'left', 'right', 'center' ];\n\nconst migrateTextAlign = ( attributes ) => {\n\tconst { align, ...rest } = attributes;\n\treturn TEXT_ALIGN_OPTIONS.includes( align )\n\t\t? { ...rest, textAlign: align }\n\t\t: attributes;\n};\n\nconst v1 = {\n\tsupports: blockSupports,\n\tattributes: {\n\t\t...blockAttributes,\n\t\tcustomTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tmigrate: ( attributes ) =>\n\t\tmigrateCustomColors( migrateTextAlign( attributes ) ),\n\tsave( { attributes } ) {\n\t\tconst { align, level, content, textColor, customTextColor } =\n\t\t\tattributes;\n\t\tconst tagName = 'h' + level;\n\n\t\tconst textClass = getColorClassName( 'color', textColor );\n\n\t\tconst className = classnames( {\n\t\t\t[ textClass ]: textClass,\n\t\t} );\n\n\t\treturn (\n\t\t\t<RichText.Content\n\t\t\t\tclassName={ className ? className : undefined }\n\t\t\t\ttagName={ tagName }\n\t\t\t\tstyle={ {\n\t\t\t\t\ttextAlign: align,\n\t\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t\t} }\n\t\t\t\tvalue={ content }\n\t\t\t/>\n\t\t);\n\t},\n};\nconst v2 = {\n\tattributes: {\n\t\t...blockAttributes,\n\t\tcustomTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tmigrate: ( attributes ) =>\n\t\tmigrateCustomColors( migrateTextAlign( attributes ) ),\n\tsave( { attributes } ) {\n\t\tconst { align, content, customTextColor, level, textColor } =\n\t\t\tattributes;\n\t\tconst tagName = 'h' + level;\n\n\t\tconst textClass = getColorClassName( 'color', textColor );\n\n\t\tconst className = classnames( {\n\t\t\t[ textClass ]: textClass,\n\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t} );\n\n\t\treturn (\n\t\t\t<RichText.Content\n\t\t\t\tclassName={ className ? className : undefined }\n\t\t\t\ttagName={ tagName }\n\t\t\t\tstyle={ {\n\t\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t\t} }\n\t\t\t\tvalue={ content }\n\t\t\t/>\n\t\t);\n\t},\n\tsupports: blockSupports,\n};\nconst v3 = {\n\tsupports: blockSupports,\n\tattributes: {\n\t\t...blockAttributes,\n\t\tcustomTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tmigrate: ( attributes ) =>\n\t\tmigrateCustomColors( migrateTextAlign( attributes ) ),\n\tsave( { attributes } ) {\n\t\tconst { align, content, customTextColor, level, textColor } =\n\t\t\tattributes;\n\t\tconst tagName = 'h' + level;\n\n\t\tconst textClass = getColorClassName( 'color', textColor );\n\n\t\tconst className = classnames( {\n\t\t\t[ textClass ]: textClass,\n\t\t\t'has-text-color': textColor || customTextColor,\n\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t} );\n\n\t\treturn (\n\t\t\t<RichText.Content\n\t\t\t\tclassName={ className ? className : undefined }\n\t\t\t\ttagName={ tagName }\n\t\t\t\tstyle={ {\n\t\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t\t} }\n\t\t\t\tvalue={ content }\n\t\t\t/>\n\t\t);\n\t},\n};\nconst v4 = {\n\tsupports: {\n\t\talign: [ 'wide', 'full' ],\n\t\tanchor: true,\n\t\tclassName: false,\n\t\tcolor: { link: true },\n\t\tfontSize: true,\n\t\tlineHeight: true,\n\t\t__experimentalSelector: {\n\t\t\t'core/heading/h1': 'h1',\n\t\t\t'core/heading/h2': 'h2',\n\t\t\t'core/heading/h3': 'h3',\n\t\t\t'core/heading/h4': 'h4',\n\t\t\t'core/heading/h5': 'h5',\n\t\t\t'core/heading/h6': 'h6',\n\t\t},\n\t\t__unstablePasteTextInline: true,\n\t},\n\tattributes: blockAttributes,\n\tisEligible: ( { align } ) => TEXT_ALIGN_OPTIONS.includes( align ),\n\tmigrate: migrateTextAlign,\n\tsave( { attributes } ) {\n\t\tconst { align, content, level } = attributes;\n\t\tconst TagName = 'h' + level;\n\n\t\tconst className = classnames( {\n\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t} );\n\n\t\treturn (\n\t\t\t<TagName { ...useBlockProps.save( { className } ) }>\n\t\t\t\t<RichText.Content value={ content } />\n\t\t\t</TagName>\n\t\t);\n\t},\n};\n\n// This deprecation covers the serialization of the `wp-block-heading` class\n// into the block's markup after className support was enabled.\nconst v5 = {\n\tsupports: {\n\t\talign: [ 'wide', 'full' ],\n\t\tanchor: true,\n\t\tclassName: false,\n\t\tcolor: {\n\t\t\tgradients: true,\n\t\t\tlink: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tbackground: true,\n\t\t\t\ttext: true,\n\t\t\t},\n\t\t},\n\t\tspacing: {\n\t\t\tmargin: true,\n\t\t\tpadding: true,\n\t\t},\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\tlineHeight: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalFontStyle: true,\n\t\t\t__experimentalFontWeight: true,\n\t\t\t__experimentalLetterSpacing: true,\n\t\t\t__experimentalTextTransform: true,\n\t\t\t__experimentalTextDecoration: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tfontSize: true,\n\t\t\t\tfontAppearance: true,\n\t\t\t\ttextTransform: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalSelector: 'h1,h2,h3,h4,h5,h6',\n\t\t__unstablePasteTextInline: true,\n\t\t__experimentalSlashInserter: true,\n\t},\n\tattributes: {\n\t\ttextAlign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcontent: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\t\tdefault: '',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\tlevel: {\n\t\t\ttype: 'number',\n\t\t\tdefault: 2,\n\t\t},\n\t\tplaceholder: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst { textAlign, content, level } = attributes;\n\t\tconst TagName = 'h' + level;\n\n\t\tconst className = classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} );\n\n\t\treturn (\n\t\t\t<TagName { ...useBlockProps.save( { className } ) }>\n\t\t\t\t<RichText.Content value={ content } />\n\t\t\t</TagName>\n\t\t);\n\t},\n};\n\nconst deprecated = [ v5, v4, v3, v2, v1 ];\n\nexport default deprecated;\n"]}
@@ -65,7 +65,7 @@ const metadata = {
65
65
  supports: {
66
66
  align: ["wide", "full"],
67
67
  anchor: true,
68
- className: false,
68
+ className: true,
69
69
  color: {
70
70
  gradients: true,
71
71
  link: true,
@@ -93,7 +93,6 @@ const metadata = {
93
93
  textTransform: true
94
94
  }
95
95
  },
96
- __experimentalSelector: "h1,h2,h3,h4,h5,h6",
97
96
  __unstablePasteTextInline: true,
98
97
  __experimentalSlashInserter: true
99
98
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/heading/index.js"],"names":["name","metadata","settings","icon","example","attributes","content","level","__experimentalLabel","context","transforms","deprecated","merge","attributesToMerge","edit","save","init"],"mappings":";;;;;;;;;AAGA;;AAKA;;AACA;;AAKA;;AACA;;AACA;;AAEA;;AACA;;AAnBA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,cADuB;AAEvBC,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,OAAO,EAAE,cAAI,gBAAJ,CADE;AAEXC,MAAAA,KAAK,EAAE;AAFI;AADJ,GAFc;;AAQvBC,EAAAA,mBAAmB,CAAEH,UAAF,QAA4B;AAAA,QAAd;AAAEI,MAAAA;AAAF,KAAc;AAC9C,UAAM;AAAEH,MAAAA,OAAF;AAAWC,MAAAA;AAAX,QAAqBF,UAA3B,CAD8C,CAG9C;AACA;;AACA,QAAKI,OAAO,KAAK,WAAZ,IAA2BH,OAAhC,EAA0C;AACzC,aAAOA,OAAP;AACA;;AAED,QAAKG,OAAO,KAAK,eAAjB,EAAmC;AAClC,aAAO,qBAASH,OAAT,IACJ;AACA;AACA,oBAAI,kBAAJ,CAFA,EAGAC,KAHA,CADI,GAMJ;AACA;AACA,oBAAI,kBAAJ,CAFA,EAGAA,KAHA,EAIAD,OAJA,CANH;AAYA;AACD,GA/BsB;;AAgCvBI,EAAAA,UAAU,EAAVA,mBAhCuB;AAiCvBC,EAAAA,UAAU,EAAVA,mBAjCuB;;AAkCvBC,EAAAA,KAAK,CAAEP,UAAF,EAAcQ,iBAAd,EAAkC;AACtC,WAAO;AACNP,MAAAA,OAAO,EACN,CAAED,UAAU,CAACC,OAAX,IAAsB,EAAxB,KACEO,iBAAiB,CAACP,OAAlB,IAA6B,EAD/B;AAFK,KAAP;AAKA,GAxCsB;;AAyCvBQ,EAAAA,IAAI,EAAJA,aAzCuB;AA0CvBC,EAAAA,IAAI,EAAJA;AA1CuB,CAAjB;;;AA6CA,MAAMC,IAAI,GAAG,MAAM,wBAAW;AAAEhB,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAX,CAAnB","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { heading as icon } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcontent: __( 'Code is Poetry' ),\n\t\t\tlevel: 2,\n\t\t},\n\t},\n\t__experimentalLabel( attributes, { context } ) {\n\t\tconst { content, level } = attributes;\n\n\t\t// In the list view, use the block's content as the label.\n\t\t// If the content is empty, fall back to the default label.\n\t\tif ( context === 'list-view' && content ) {\n\t\t\treturn content;\n\t\t}\n\n\t\tif ( context === 'accessibility' ) {\n\t\t\treturn isEmpty( content )\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. %s: heading level. */\n\t\t\t\t\t\t__( 'Level %s. Empty.' ),\n\t\t\t\t\t\tlevel\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. 1: heading level. 2: heading content. */\n\t\t\t\t\t\t__( 'Level %1$s. %2$s' ),\n\t\t\t\t\t\tlevel,\n\t\t\t\t\t\tcontent\n\t\t\t\t );\n\t\t}\n\t},\n\ttransforms,\n\tdeprecated,\n\tmerge( attributes, attributesToMerge ) {\n\t\treturn {\n\t\t\tcontent:\n\t\t\t\t( attributes.content || '' ) +\n\t\t\t\t( attributesToMerge.content || '' ),\n\t\t};\n\t},\n\tedit,\n\tsave,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/heading/index.js"],"names":["name","metadata","settings","icon","example","attributes","content","level","__experimentalLabel","context","transforms","deprecated","merge","attributesToMerge","edit","save","init"],"mappings":";;;;;;;;;AAGA;;AAKA;;AACA;;AAKA;;AACA;;AACA;;AAEA;;AACA;;AAnBA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,cADuB;AAEvBC,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,OAAO,EAAE,cAAI,gBAAJ,CADE;AAEXC,MAAAA,KAAK,EAAE;AAFI;AADJ,GAFc;;AAQvBC,EAAAA,mBAAmB,CAAEH,UAAF,QAA4B;AAAA,QAAd;AAAEI,MAAAA;AAAF,KAAc;AAC9C,UAAM;AAAEH,MAAAA,OAAF;AAAWC,MAAAA;AAAX,QAAqBF,UAA3B,CAD8C,CAG9C;AACA;;AACA,QAAKI,OAAO,KAAK,WAAZ,IAA2BH,OAAhC,EAA0C;AACzC,aAAOA,OAAP;AACA;;AAED,QAAKG,OAAO,KAAK,eAAjB,EAAmC;AAClC,aAAO,qBAASH,OAAT,IACJ;AACA;AACA,oBAAI,kBAAJ,CAFA,EAGAC,KAHA,CADI,GAMJ;AACA;AACA,oBAAI,kBAAJ,CAFA,EAGAA,KAHA,EAIAD,OAJA,CANH;AAYA;AACD,GA/BsB;;AAgCvBI,EAAAA,UAAU,EAAVA,mBAhCuB;AAiCvBC,EAAAA,UAAU,EAAVA,mBAjCuB;;AAkCvBC,EAAAA,KAAK,CAAEP,UAAF,EAAcQ,iBAAd,EAAkC;AACtC,WAAO;AACNP,MAAAA,OAAO,EACN,CAAED,UAAU,CAACC,OAAX,IAAsB,EAAxB,KACEO,iBAAiB,CAACP,OAAlB,IAA6B,EAD/B;AAFK,KAAP;AAKA,GAxCsB;;AAyCvBQ,EAAAA,IAAI,EAAJA,aAzCuB;AA0CvBC,EAAAA,IAAI,EAAJA;AA1CuB,CAAjB;;;AA6CA,MAAMC,IAAI,GAAG,MAAM,wBAAW;AAAEhB,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAX,CAAnB","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { heading as icon } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcontent: __( 'Code is Poetry' ),\n\t\t\tlevel: 2,\n\t\t},\n\t},\n\t__experimentalLabel( attributes, { context } ) {\n\t\tconst { content, level } = attributes;\n\n\t\t// In the list view, use the block's content as the label.\n\t\t// If the content is empty, fall back to the default label.\n\t\tif ( context === 'list-view' && content ) {\n\t\t\treturn content;\n\t\t}\n\n\t\tif ( context === 'accessibility' ) {\n\t\t\treturn isEmpty( content )\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. %s: heading level. */\n\t\t\t\t\t\t__( 'Level %s. Empty.' ),\n\t\t\t\t\t\tlevel\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. 1: heading level. 2: heading content. */\n\t\t\t\t\t\t__( 'Level %1$s. %2$s' ),\n\t\t\t\t\t\tlevel,\n\t\t\t\t\t\tcontent\n\t\t\t\t );\n\t\t}\n\t},\n\ttransforms,\n\tdeprecated,\n\tmerge( attributes, attributesToMerge ) {\n\t\treturn {\n\t\t\tcontent:\n\t\t\t\t( attributes.content || '' ) +\n\t\t\t\t( attributesToMerge.content || '' ),\n\t\t};\n\t},\n\tedit,\n\tsave,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"]}
@@ -49,7 +49,7 @@ const {
49
49
  supports: {
50
50
  align: ["wide", "full"],
51
51
  anchor: true,
52
- className: false,
52
+ className: true,
53
53
  color: {
54
54
  gradients: true,
55
55
  link: true,
@@ -77,7 +77,6 @@ const {
77
77
  textTransform: true
78
78
  }
79
79
  },
80
- __experimentalSelector: "h1,h2,h3,h4,h5,h6",
81
80
  __unstablePasteTextInline: true,
82
81
  __experimentalSlashInserter: true
83
82
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/heading/transforms.js"],"names":["transforms","from","type","isMultiBlock","blocks","transform","attributes","map","content","anchor","align","textAlign","name","selector","schema","phrasingContentSchema","isPaste","children","h1","h2","h3","h4","h5","h6","node","outerHTML","style","level","nodeName","prefix","Array","join","regExp","RegExp","to"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock, getBlockAttributes } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { getLevelFromHeadingNodeName } from './shared';\nimport { name } from './block.json';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, anchor, align: textAlign } ) =>\n\t\t\t\t\tcreateBlock( name, {\n\t\t\t\t\t\tcontent,\n\t\t\t\t\t\tanchor,\n\t\t\t\t\t\ttextAlign,\n\t\t\t\t\t} )\n\t\t\t\t),\n\t\t},\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\t\tschema: ( { phrasingContentSchema, isPaste } ) => {\n\t\t\t\tconst schema = {\n\t\t\t\t\tchildren: phrasingContentSchema,\n\t\t\t\t\tattributes: isPaste ? [] : [ 'style', 'id' ],\n\t\t\t\t};\n\t\t\t\treturn {\n\t\t\t\t\th1: schema,\n\t\t\t\t\th2: schema,\n\t\t\t\t\th3: schema,\n\t\t\t\t\th4: schema,\n\t\t\t\t\th5: schema,\n\t\t\t\t\th6: schema,\n\t\t\t\t};\n\t\t\t},\n\t\t\ttransform( node ) {\n\t\t\t\tconst attributes = getBlockAttributes( name, node.outerHTML );\n\t\t\t\tconst { textAlign } = node.style || {};\n\n\t\t\t\tattributes.level = getLevelFromHeadingNodeName( node.nodeName );\n\n\t\t\t\tif (\n\t\t\t\t\ttextAlign === 'left' ||\n\t\t\t\t\ttextAlign === 'center' ||\n\t\t\t\t\ttextAlign === 'right'\n\t\t\t\t) {\n\t\t\t\t\tattributes.align = textAlign;\n\t\t\t\t}\n\n\t\t\t\treturn createBlock( name, attributes );\n\t\t\t},\n\t\t},\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix: Array( level + 1 ).join( '#' ),\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( name, {\n\t\t\t\t\tlevel,\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t} ) ),\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'enter',\n\t\t\tregExp: new RegExp( `^/(h|H)${ level }$` ),\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( name, {\n\t\t\t\t\tlevel,\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t} ) ),\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, textAlign: align } ) =>\n\t\t\t\t\tcreateBlock( 'core/paragraph', { content, align } )\n\t\t\t\t),\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/heading/transforms.js"],"names":["transforms","from","type","isMultiBlock","blocks","transform","attributes","map","content","anchor","align","textAlign","name","selector","schema","phrasingContentSchema","isPaste","children","h1","h2","h3","h4","h5","h6","node","outerHTML","style","level","nodeName","prefix","Array","join","regExp","RegExp","to"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock, getBlockAttributes } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { getLevelFromHeadingNodeName } from './shared';\nimport { name } from './block.json';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, anchor, align: textAlign } ) =>\n\t\t\t\t\tcreateBlock( name, {\n\t\t\t\t\t\tcontent,\n\t\t\t\t\t\tanchor,\n\t\t\t\t\t\ttextAlign,\n\t\t\t\t\t} )\n\t\t\t\t),\n\t\t},\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\t\tschema: ( { phrasingContentSchema, isPaste } ) => {\n\t\t\t\tconst schema = {\n\t\t\t\t\tchildren: phrasingContentSchema,\n\t\t\t\t\tattributes: isPaste ? [] : [ 'style', 'id' ],\n\t\t\t\t};\n\t\t\t\treturn {\n\t\t\t\t\th1: schema,\n\t\t\t\t\th2: schema,\n\t\t\t\t\th3: schema,\n\t\t\t\t\th4: schema,\n\t\t\t\t\th5: schema,\n\t\t\t\t\th6: schema,\n\t\t\t\t};\n\t\t\t},\n\t\t\ttransform( node ) {\n\t\t\t\tconst attributes = getBlockAttributes( name, node.outerHTML );\n\t\t\t\tconst { textAlign } = node.style || {};\n\n\t\t\t\tattributes.level = getLevelFromHeadingNodeName( node.nodeName );\n\n\t\t\t\tif (\n\t\t\t\t\ttextAlign === 'left' ||\n\t\t\t\t\ttextAlign === 'center' ||\n\t\t\t\t\ttextAlign === 'right'\n\t\t\t\t) {\n\t\t\t\t\tattributes.align = textAlign;\n\t\t\t\t}\n\n\t\t\t\treturn createBlock( name, attributes );\n\t\t\t},\n\t\t},\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix: Array( level + 1 ).join( '#' ),\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( name, {\n\t\t\t\t\tlevel,\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t} ) ),\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'enter',\n\t\t\tregExp: new RegExp( `^/(h|H)${ level }$` ),\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( name, {\n\t\t\t\t\tlevel,\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t} ) ),\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, textAlign: align } ) =>\n\t\t\t\t\tcreateBlock( 'core/paragraph', { content, align } )\n\t\t\t\t),\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
@@ -38,7 +38,7 @@ const metadata = {
38
38
  attributes: {
39
39
  content: {
40
40
  type: "string",
41
- source: "html"
41
+ source: "raw"
42
42
  }
43
43
  },
44
44
  supports: {
@@ -59,7 +59,10 @@ const placeholder = content => {
59
59
 
60
60
 
61
61
  const pickRelevantMediaFiles = (image, size) => {
62
- const imageProps = (0, _lodash.pick)(image, ['alt', 'id', 'link', 'caption']);
62
+ const imageProps = Object.fromEntries(Object.entries(image !== null && image !== void 0 ? image : {}).filter(_ref => {
63
+ let [key] = _ref;
64
+ return ['alt', 'id', 'link', 'caption'].includes(key);
65
+ }));
63
66
  imageProps.url = (0, _lodash.get)(image, ['sizes', size, 'url']) || (0, _lodash.get)(image, ['media_details', 'sizes', size, 'source_url']) || image.url;
64
67
  return imageProps;
65
68
  };
@@ -108,7 +111,7 @@ function hasDefaultSize(image, defaultSize) {
108
111
  return 'url' in ((_image$sizes$defaultS = image === null || image === void 0 ? void 0 : (_image$sizes = image.sizes) === null || _image$sizes === void 0 ? void 0 : _image$sizes[defaultSize]) !== null && _image$sizes$defaultS !== void 0 ? _image$sizes$defaultS : {}) || 'source_url' in ((_image$media_details$ = image === null || image === void 0 ? void 0 : (_image$media_details = image.media_details) === null || _image$media_details === void 0 ? void 0 : (_image$media_details$2 = _image$media_details.sizes) === null || _image$media_details$2 === void 0 ? void 0 : _image$media_details$2[defaultSize]) !== null && _image$media_details$ !== void 0 ? _image$media_details$ : {});
109
112
  }
110
113
 
111
- function ImageEdit(_ref) {
114
+ function ImageEdit(_ref2) {
112
115
  let {
113
116
  attributes,
114
117
  setAttributes,
@@ -118,7 +121,7 @@ function ImageEdit(_ref) {
118
121
  onReplace,
119
122
  context,
120
123
  clientId
121
- } = _ref;
124
+ } = _ref2;
122
125
  const {
123
126
  url = '',
124
127
  alt,
@@ -302,8 +305,8 @@ function ImageEdit(_ref) {
302
305
  if (file) {
303
306
  mediaUpload({
304
307
  filesList: [file],
305
- onFileChange: _ref2 => {
306
- let [img] = _ref2;
308
+ onFileChange: _ref3 => {
309
+ let [img] = _ref3;
307
310
  onSelectImage(img);
308
311
  },
309
312
  allowedTypes: _constants.ALLOWED_MEDIA_TYPES,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/image/edit.js"],"names":["placeholder","content","icon","pickRelevantMediaFiles","image","size","imageProps","url","isTemporaryImage","id","isExternalImage","hasDefaultSize","defaultSize","sizes","media_details","ImageEdit","attributes","setAttributes","isSelected","className","insertBlocksAfter","onReplace","context","clientId","alt","caption","align","width","height","sizeSlug","temporaryURL","setTemporaryURL","altRef","current","captionRef","ref","imageDefaultSize","mediaUpload","isContentLocked","select","getSettings","__unstableGetContentLockingParent","blockEditorStore","settings","createErrorNotice","noticesStore","onUploadError","message","type","src","undefined","onSelectImage","media","title","mediaAttributes","omittedCaption","restMediaAttributes","additionalAttributes","linkDestination","window","wp","view","defaultProps","link","LINK_DESTINATION_NONE","LINK_DESTINATION_MEDIA","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_CUSTOM","href","onSelectURL","newURL","updateAlignment","nextAlign","extraUpdatedAttributes","includes","isTemp","file","filesList","onFileChange","img","allowedTypes","ALLOWED_MEDIA_TYPES","onError","isExternal","mediaPreview","borderProps","classes","style","blockProps"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { get, isEmpty, pick } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { getBlobByURL, isBlobURL, revokeBlobURL } from '@wordpress/blob';\nimport { Placeholder } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tBlockAlignmentControl,\n\tBlockControls,\n\tBlockIcon,\n\tMediaPlaceholder,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalUseBorderProps as useBorderProps,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { image as icon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport Image from './image';\n\n// Much of this description is duplicated from MediaPlaceholder.\nconst placeholder = ( content ) => {\n\treturn (\n\t\t<Placeholder\n\t\t\tclassName=\"block-editor-media-placeholder\"\n\t\t\twithIllustration={ true }\n\t\t\ticon={ icon }\n\t\t\tlabel={ __( 'Image' ) }\n\t\t\tinstructions={ __(\n\t\t\t\t'Upload an image file, pick one from your media library, or add one with a URL.'\n\t\t\t) }\n\t\t>\n\t\t\t{ content }\n\t\t</Placeholder>\n\t);\n};\n\n/**\n * Module constants\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_CUSTOM,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n\tALLOWED_MEDIA_TYPES,\n} from './constants';\n\nexport const pickRelevantMediaFiles = ( image, size ) => {\n\tconst imageProps = pick( image, [ 'alt', 'id', 'link', 'caption' ] );\n\timageProps.url =\n\t\tget( image, [ 'sizes', size, 'url' ] ) ||\n\t\tget( image, [ 'media_details', 'sizes', size, 'source_url' ] ) ||\n\t\timage.url;\n\treturn imageProps;\n};\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily\n * while the image is being uploaded and will not have an id yet allocated.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the URL a Blob URL\n */\nconst isTemporaryImage = ( id, url ) => ! id && isBlobURL( url );\n\n/**\n * Is the url for the image hosted externally. An externally hosted image has no\n * id and is not a blob url.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the url an externally hosted url?\n */\nexport const isExternalImage = ( id, url ) => url && ! id && ! isBlobURL( url );\n\n/**\n * Checks if WP generated default image size. Size generation is skipped\n * when the image is smaller than the said size.\n *\n * @param {Object} image\n * @param {string} defaultSize\n *\n * @return {boolean} Whether or not it has default image size.\n */\nfunction hasDefaultSize( image, defaultSize ) {\n\treturn (\n\t\t'url' in ( image?.sizes?.[ defaultSize ] ?? {} ) ||\n\t\t'source_url' in ( image?.media_details?.sizes?.[ defaultSize ] ?? {} )\n\t);\n}\n\nexport function ImageEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tclassName,\n\tinsertBlocksAfter,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\tcaption,\n\t\talign,\n\t\tid,\n\t\twidth,\n\t\theight,\n\t\tsizeSlug,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst altRef = useRef();\n\tuseEffect( () => {\n\t\taltRef.current = alt;\n\t}, [ alt ] );\n\n\tconst captionRef = useRef();\n\tuseEffect( () => {\n\t\tcaptionRef.current = caption;\n\t}, [ caption ] );\n\n\tconst ref = useRef();\n\tconst { imageDefaultSize, mediaUpload, isContentLocked } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSettings, __unstableGetContentLockingParent } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst settings = getSettings();\n\t\t\treturn {\n\t\t\t\timageDefaultSize: settings.imageDefaultSize,\n\t\t\t\tmediaUpload: settings.mediaUpload,\n\t\t\t\tisContentLocked:\n\t\t\t\t\t!! __unstableGetContentLockingParent( clientId ),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetAttributes( {\n\t\t\tsrc: undefined,\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t} );\n\t\tsetTemporaryURL( undefined );\n\t}\n\n\tfunction onSelectImage( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: undefined,\n\t\t\t\talt: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\ttitle: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t} );\n\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\n\t\t\treturn;\n\t\t}\n\n\t\tsetTemporaryURL();\n\n\t\tlet mediaAttributes = pickRelevantMediaFiles( media, imageDefaultSize );\n\n\t\t// If a caption text was meanwhile written by the user,\n\t\t// make sure the text is not overwritten by empty captions.\n\t\tif ( captionRef.current && ! get( mediaAttributes, [ 'caption' ] ) ) {\n\t\t\tconst { caption: omittedCaption, ...restMediaAttributes } =\n\t\t\t\tmediaAttributes;\n\t\t\tmediaAttributes = restMediaAttributes;\n\t\t}\n\n\t\tlet additionalAttributes;\n\t\t// Reset the dimension attributes if changing to a different image.\n\t\tif ( ! media.id || media.id !== id ) {\n\t\t\tadditionalAttributes = {\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\t// Fallback to size \"full\" if there's no default image size.\n\t\t\t\t// It means the image is smaller, and the block will use a full-size URL.\n\t\t\t\tsizeSlug: hasDefaultSize( media, imageDefaultSize )\n\t\t\t\t\t? imageDefaultSize\n\t\t\t\t\t: 'full',\n\t\t\t};\n\t\t} else {\n\t\t\t// Keep the same url when selecting the same file, so \"Image Size\"\n\t\t\t// option is not changed.\n\t\t\tadditionalAttributes = { url };\n\t\t}\n\n\t\t// Check if default link setting should be used.\n\t\tlet linkDestination = attributes.linkDestination;\n\t\tif ( ! linkDestination ) {\n\t\t\t// Use the WordPress option to determine the proper default.\n\t\t\t// The constants used in Gutenberg do not match WP options so a little more complicated than ideal.\n\t\t\t// TODO: fix this in a follow up PR, requires updating media-text and ui component.\n\t\t\tswitch (\n\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\tLINK_DESTINATION_NONE\n\t\t\t) {\n\t\t\t\tcase 'file':\n\t\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_MEDIA;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'post':\n\t\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_CUSTOM:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_CUSTOM;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_NONE:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_NONE;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// Check if the image is linked to it's media.\n\t\tlet href;\n\t\tswitch ( linkDestination ) {\n\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\thref = media.url;\n\t\t\t\tbreak;\n\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\thref = media.link;\n\t\t\t\tbreak;\n\t\t}\n\t\tmediaAttributes.href = href;\n\n\t\tsetAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\t...additionalAttributes,\n\t\t\tlinkDestination,\n\t\t} );\n\t}\n\n\tfunction onSelectURL( newURL ) {\n\t\tif ( newURL !== url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: newURL,\n\t\t\t\tid: undefined,\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\tsizeSlug: imageDefaultSize,\n\t\t\t} );\n\t\t}\n\t}\n\n\tfunction updateAlignment( nextAlign ) {\n\t\tconst extraUpdatedAttributes = [ 'wide', 'full' ].includes( nextAlign )\n\t\t\t? { width: undefined, height: undefined }\n\t\t\t: {};\n\t\tsetAttributes( {\n\t\t\t...extraUpdatedAttributes,\n\t\t\talign: nextAlign,\n\t\t} );\n\t}\n\n\tlet isTemp = isTemporaryImage( id, url );\n\n\t// Upload a temporary image on mount.\n\tuseEffect( () => {\n\t\tif ( ! isTemp ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst file = getBlobByURL( url );\n\n\t\tif ( file ) {\n\t\t\tmediaUpload( {\n\t\t\t\tfilesList: [ file ],\n\t\t\t\tonFileChange: ( [ img ] ) => {\n\t\t\t\t\tonSelectImage( img );\n\t\t\t\t},\n\t\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\t\tonError: ( message ) => {\n\t\t\t\t\tisTemp = false;\n\t\t\t\t\tonUploadError( message );\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\t// If an image is temporary, revoke the Blob url when it is uploaded (and is\n\t// no longer temporary).\n\tuseEffect( () => {\n\t\tif ( isTemp ) {\n\t\t\tsetTemporaryURL( url );\n\t\t\treturn;\n\t\t}\n\t\trevokeBlobURL( temporaryURL );\n\t}, [ isTemp, url ] );\n\n\tconst isExternal = isExternalImage( id, url );\n\tconst src = isExternal ? url : undefined;\n\tconst mediaPreview = !! url && (\n\t\t<img\n\t\t\talt={ __( 'Edit image' ) }\n\t\t\ttitle={ __( 'Edit image' ) }\n\t\t\tclassName={ 'edit-image-preview' }\n\t\t\tsrc={ url }\n\t\t/>\n\t);\n\n\tconst borderProps = useBorderProps( attributes );\n\n\tconst classes = classnames( className, {\n\t\t'is-transient': temporaryURL,\n\t\t'is-resized': !! width || !! height,\n\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t'has-custom-border':\n\t\t\t!! borderProps.className || ! isEmpty( borderProps.style ),\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tref,\n\t\tclassName: classes,\n\t} );\n\n\treturn (\n\t\t<figure { ...blockProps }>\n\t\t\t{ ( temporaryURL || url ) && (\n\t\t\t\t<Image\n\t\t\t\t\ttemporaryURL={ temporaryURL }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonSelectImage={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonUploadError={ onUploadError }\n\t\t\t\t\tcontainerRef={ ref }\n\t\t\t\t\tcontext={ context }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisContentLocked={ isContentLocked }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ! url && ! isContentLocked && (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t<BlockAlignmentControl\n\t\t\t\t\t\tvalue={ align }\n\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<MediaPlaceholder\n\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tvalue={ { id, src } }\n\t\t\t\tmediaPreview={ mediaPreview }\n\t\t\t\tdisableMediaButtons={ temporaryURL || url }\n\t\t\t/>\n\t\t</figure>\n\t);\n}\n\nexport default ImageEdit;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/image/edit.js"],"names":["placeholder","content","icon","pickRelevantMediaFiles","image","size","imageProps","Object","fromEntries","entries","filter","key","includes","url","isTemporaryImage","id","isExternalImage","hasDefaultSize","defaultSize","sizes","media_details","ImageEdit","attributes","setAttributes","isSelected","className","insertBlocksAfter","onReplace","context","clientId","alt","caption","align","width","height","sizeSlug","temporaryURL","setTemporaryURL","altRef","current","captionRef","ref","imageDefaultSize","mediaUpload","isContentLocked","select","getSettings","__unstableGetContentLockingParent","blockEditorStore","settings","createErrorNotice","noticesStore","onUploadError","message","type","src","undefined","onSelectImage","media","title","mediaAttributes","omittedCaption","restMediaAttributes","additionalAttributes","linkDestination","window","wp","view","defaultProps","link","LINK_DESTINATION_NONE","LINK_DESTINATION_MEDIA","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_CUSTOM","href","onSelectURL","newURL","updateAlignment","nextAlign","extraUpdatedAttributes","isTemp","file","filesList","onFileChange","img","allowedTypes","ALLOWED_MEDIA_TYPES","onError","isExternal","mediaPreview","borderProps","classes","style","blockProps"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { get, isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { getBlobByURL, isBlobURL, revokeBlobURL } from '@wordpress/blob';\nimport { Placeholder } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tBlockAlignmentControl,\n\tBlockControls,\n\tBlockIcon,\n\tMediaPlaceholder,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalUseBorderProps as useBorderProps,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { image as icon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport Image from './image';\n\n// Much of this description is duplicated from MediaPlaceholder.\nconst placeholder = ( content ) => {\n\treturn (\n\t\t<Placeholder\n\t\t\tclassName=\"block-editor-media-placeholder\"\n\t\t\twithIllustration={ true }\n\t\t\ticon={ icon }\n\t\t\tlabel={ __( 'Image' ) }\n\t\t\tinstructions={ __(\n\t\t\t\t'Upload an image file, pick one from your media library, or add one with a URL.'\n\t\t\t) }\n\t\t>\n\t\t\t{ content }\n\t\t</Placeholder>\n\t);\n};\n\n/**\n * Module constants\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_CUSTOM,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n\tALLOWED_MEDIA_TYPES,\n} from './constants';\n\nexport const pickRelevantMediaFiles = ( image, size ) => {\n\tconst imageProps = Object.fromEntries(\n\t\tObject.entries( image ?? {} ).filter( ( [ key ] ) =>\n\t\t\t[ 'alt', 'id', 'link', 'caption' ].includes( key )\n\t\t)\n\t);\n\n\timageProps.url =\n\t\tget( image, [ 'sizes', size, 'url' ] ) ||\n\t\tget( image, [ 'media_details', 'sizes', size, 'source_url' ] ) ||\n\t\timage.url;\n\treturn imageProps;\n};\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily\n * while the image is being uploaded and will not have an id yet allocated.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the URL a Blob URL\n */\nconst isTemporaryImage = ( id, url ) => ! id && isBlobURL( url );\n\n/**\n * Is the url for the image hosted externally. An externally hosted image has no\n * id and is not a blob url.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the url an externally hosted url?\n */\nexport const isExternalImage = ( id, url ) => url && ! id && ! isBlobURL( url );\n\n/**\n * Checks if WP generated default image size. Size generation is skipped\n * when the image is smaller than the said size.\n *\n * @param {Object} image\n * @param {string} defaultSize\n *\n * @return {boolean} Whether or not it has default image size.\n */\nfunction hasDefaultSize( image, defaultSize ) {\n\treturn (\n\t\t'url' in ( image?.sizes?.[ defaultSize ] ?? {} ) ||\n\t\t'source_url' in ( image?.media_details?.sizes?.[ defaultSize ] ?? {} )\n\t);\n}\n\nexport function ImageEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tclassName,\n\tinsertBlocksAfter,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\tcaption,\n\t\talign,\n\t\tid,\n\t\twidth,\n\t\theight,\n\t\tsizeSlug,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst altRef = useRef();\n\tuseEffect( () => {\n\t\taltRef.current = alt;\n\t}, [ alt ] );\n\n\tconst captionRef = useRef();\n\tuseEffect( () => {\n\t\tcaptionRef.current = caption;\n\t}, [ caption ] );\n\n\tconst ref = useRef();\n\tconst { imageDefaultSize, mediaUpload, isContentLocked } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSettings, __unstableGetContentLockingParent } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst settings = getSettings();\n\t\t\treturn {\n\t\t\t\timageDefaultSize: settings.imageDefaultSize,\n\t\t\t\tmediaUpload: settings.mediaUpload,\n\t\t\t\tisContentLocked:\n\t\t\t\t\t!! __unstableGetContentLockingParent( clientId ),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetAttributes( {\n\t\t\tsrc: undefined,\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t} );\n\t\tsetTemporaryURL( undefined );\n\t}\n\n\tfunction onSelectImage( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: undefined,\n\t\t\t\talt: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\ttitle: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t} );\n\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\n\t\t\treturn;\n\t\t}\n\n\t\tsetTemporaryURL();\n\n\t\tlet mediaAttributes = pickRelevantMediaFiles( media, imageDefaultSize );\n\n\t\t// If a caption text was meanwhile written by the user,\n\t\t// make sure the text is not overwritten by empty captions.\n\t\tif ( captionRef.current && ! get( mediaAttributes, [ 'caption' ] ) ) {\n\t\t\tconst { caption: omittedCaption, ...restMediaAttributes } =\n\t\t\t\tmediaAttributes;\n\t\t\tmediaAttributes = restMediaAttributes;\n\t\t}\n\n\t\tlet additionalAttributes;\n\t\t// Reset the dimension attributes if changing to a different image.\n\t\tif ( ! media.id || media.id !== id ) {\n\t\t\tadditionalAttributes = {\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\t// Fallback to size \"full\" if there's no default image size.\n\t\t\t\t// It means the image is smaller, and the block will use a full-size URL.\n\t\t\t\tsizeSlug: hasDefaultSize( media, imageDefaultSize )\n\t\t\t\t\t? imageDefaultSize\n\t\t\t\t\t: 'full',\n\t\t\t};\n\t\t} else {\n\t\t\t// Keep the same url when selecting the same file, so \"Image Size\"\n\t\t\t// option is not changed.\n\t\t\tadditionalAttributes = { url };\n\t\t}\n\n\t\t// Check if default link setting should be used.\n\t\tlet linkDestination = attributes.linkDestination;\n\t\tif ( ! linkDestination ) {\n\t\t\t// Use the WordPress option to determine the proper default.\n\t\t\t// The constants used in Gutenberg do not match WP options so a little more complicated than ideal.\n\t\t\t// TODO: fix this in a follow up PR, requires updating media-text and ui component.\n\t\t\tswitch (\n\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\tLINK_DESTINATION_NONE\n\t\t\t) {\n\t\t\t\tcase 'file':\n\t\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_MEDIA;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'post':\n\t\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_CUSTOM:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_CUSTOM;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_NONE:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_NONE;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// Check if the image is linked to it's media.\n\t\tlet href;\n\t\tswitch ( linkDestination ) {\n\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\thref = media.url;\n\t\t\t\tbreak;\n\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\thref = media.link;\n\t\t\t\tbreak;\n\t\t}\n\t\tmediaAttributes.href = href;\n\n\t\tsetAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\t...additionalAttributes,\n\t\t\tlinkDestination,\n\t\t} );\n\t}\n\n\tfunction onSelectURL( newURL ) {\n\t\tif ( newURL !== url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: newURL,\n\t\t\t\tid: undefined,\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\tsizeSlug: imageDefaultSize,\n\t\t\t} );\n\t\t}\n\t}\n\n\tfunction updateAlignment( nextAlign ) {\n\t\tconst extraUpdatedAttributes = [ 'wide', 'full' ].includes( nextAlign )\n\t\t\t? { width: undefined, height: undefined }\n\t\t\t: {};\n\t\tsetAttributes( {\n\t\t\t...extraUpdatedAttributes,\n\t\t\talign: nextAlign,\n\t\t} );\n\t}\n\n\tlet isTemp = isTemporaryImage( id, url );\n\n\t// Upload a temporary image on mount.\n\tuseEffect( () => {\n\t\tif ( ! isTemp ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst file = getBlobByURL( url );\n\n\t\tif ( file ) {\n\t\t\tmediaUpload( {\n\t\t\t\tfilesList: [ file ],\n\t\t\t\tonFileChange: ( [ img ] ) => {\n\t\t\t\t\tonSelectImage( img );\n\t\t\t\t},\n\t\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\t\tonError: ( message ) => {\n\t\t\t\t\tisTemp = false;\n\t\t\t\t\tonUploadError( message );\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\t// If an image is temporary, revoke the Blob url when it is uploaded (and is\n\t// no longer temporary).\n\tuseEffect( () => {\n\t\tif ( isTemp ) {\n\t\t\tsetTemporaryURL( url );\n\t\t\treturn;\n\t\t}\n\t\trevokeBlobURL( temporaryURL );\n\t}, [ isTemp, url ] );\n\n\tconst isExternal = isExternalImage( id, url );\n\tconst src = isExternal ? url : undefined;\n\tconst mediaPreview = !! url && (\n\t\t<img\n\t\t\talt={ __( 'Edit image' ) }\n\t\t\ttitle={ __( 'Edit image' ) }\n\t\t\tclassName={ 'edit-image-preview' }\n\t\t\tsrc={ url }\n\t\t/>\n\t);\n\n\tconst borderProps = useBorderProps( attributes );\n\n\tconst classes = classnames( className, {\n\t\t'is-transient': temporaryURL,\n\t\t'is-resized': !! width || !! height,\n\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t'has-custom-border':\n\t\t\t!! borderProps.className || ! isEmpty( borderProps.style ),\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tref,\n\t\tclassName: classes,\n\t} );\n\n\treturn (\n\t\t<figure { ...blockProps }>\n\t\t\t{ ( temporaryURL || url ) && (\n\t\t\t\t<Image\n\t\t\t\t\ttemporaryURL={ temporaryURL }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonSelectImage={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonUploadError={ onUploadError }\n\t\t\t\t\tcontainerRef={ ref }\n\t\t\t\t\tcontext={ context }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisContentLocked={ isContentLocked }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ! url && ! isContentLocked && (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t<BlockAlignmentControl\n\t\t\t\t\t\tvalue={ align }\n\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<MediaPlaceholder\n\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tvalue={ { id, src } }\n\t\t\t\tmediaPreview={ mediaPreview }\n\t\t\t\tdisableMediaButtons={ temporaryURL || url }\n\t\t\t/>\n\t\t</figure>\n\t);\n}\n\nexport default ImageEdit;\n"]}
@@ -35,10 +35,10 @@ var _icons = require("@wordpress/icons");
35
35
 
36
36
  var _coreData = require("@wordpress/core-data");
37
37
 
38
- var _editPost = require("@wordpress/edit-post");
39
-
40
38
  var _notices = require("@wordpress/notices");
41
39
 
40
+ var _editPost = require("@wordpress/edit-post");
41
+
42
42
  var _styles = _interopRequireDefault(require("./styles.scss"));
43
43
 
44
44
  var _utils = require("./utils");
@@ -52,6 +52,7 @@ var _constants = require("./constants");
52
52
  /**
53
53
  * WordPress dependencies
54
54
  */
55
+ // eslint-disable-next-line no-restricted-imports
55
56
 
56
57
  /**
57
58
  * Internal dependencies