@wordpress/block-library 8.13.0 → 8.15.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 (549) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/archives/index.js +5 -1
  3. package/build/archives/index.js.map +1 -1
  4. package/build/audio/index.js +5 -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/index.js +1 -1
  9. package/build/block/edit.js +1 -1
  10. package/build/block/edit.js.map +1 -1
  11. package/build/block/edit.native.js +6 -9
  12. package/build/block/edit.native.js.map +1 -1
  13. package/build/block/index.js +2 -1
  14. package/build/block/index.js.map +1 -1
  15. package/build/buttons/edit.js +7 -3
  16. package/build/buttons/edit.js.map +1 -1
  17. package/build/categories/index.js +5 -1
  18. package/build/categories/index.js.map +1 -1
  19. package/build/code/index.js +5 -1
  20. package/build/code/index.js.map +1 -1
  21. package/build/column/edit.native.js +1 -4
  22. package/build/column/edit.native.js.map +1 -1
  23. package/build/column/index.js +1 -0
  24. package/build/column/index.js.map +1 -1
  25. package/build/columns/edit.js +1 -0
  26. package/build/columns/edit.js.map +1 -1
  27. package/build/comment-author-avatar/edit.js +1 -0
  28. package/build/comment-author-avatar/edit.js.map +1 -1
  29. package/build/comments/index.js +1 -0
  30. package/build/comments/index.js.map +1 -1
  31. package/build/cover/deprecated.js +4 -2
  32. package/build/cover/deprecated.js.map +1 -1
  33. package/build/cover/edit/inspector-controls.js +2 -1
  34. package/build/cover/edit/inspector-controls.js.map +1 -1
  35. package/build/cover/index.js +1 -0
  36. package/build/cover/index.js.map +1 -1
  37. package/build/details/index.js +5 -1
  38. package/build/details/index.js.map +1 -1
  39. package/build/embed/embed-placeholder.native.js +37 -13
  40. package/build/embed/embed-placeholder.native.js.map +1 -1
  41. package/build/embed/util.js +9 -8
  42. package/build/embed/util.js.map +1 -1
  43. package/build/file/inspector.js +1 -0
  44. package/build/file/inspector.js.map +1 -1
  45. package/build/file/{interactivity.js → view-interactivity.js} +6 -2
  46. package/build/file/view-interactivity.js.map +1 -0
  47. package/build/footnotes/edit.js +20 -1
  48. package/build/footnotes/edit.js.map +1 -1
  49. package/build/footnotes/format.js +19 -16
  50. package/build/footnotes/format.js.map +1 -1
  51. package/build/footnotes/index.js +0 -1
  52. package/build/footnotes/index.js.map +1 -1
  53. package/build/gallery/edit.js +1 -1
  54. package/build/gallery/edit.js.map +1 -1
  55. package/build/gallery/index.js +3 -1
  56. package/build/gallery/index.js.map +1 -1
  57. package/build/group/index.js +1 -0
  58. package/build/group/index.js.map +1 -1
  59. package/build/heading/index.js +5 -1
  60. package/build/heading/index.js.map +1 -1
  61. package/build/heading/transforms.js +5 -1
  62. package/build/heading/transforms.js.map +1 -1
  63. package/build/image/deprecated.js +453 -175
  64. package/build/image/deprecated.js.map +1 -1
  65. package/build/image/edit.js +0 -4
  66. package/build/image/edit.js.map +1 -1
  67. package/build/image/image.js +96 -43
  68. package/build/image/image.js.map +1 -1
  69. package/build/image/index.js +6 -0
  70. package/build/image/index.js.map +1 -1
  71. package/build/image/save.js +8 -1
  72. package/build/image/save.js.map +1 -1
  73. package/build/image/utils.js +18 -0
  74. package/build/image/utils.js.map +1 -1
  75. package/build/image/{interactivity.js → view-interactivity.js} +86 -44
  76. package/build/image/view-interactivity.js.map +1 -0
  77. package/build/index.js +12 -3
  78. package/build/index.js.map +1 -1
  79. package/build/latest-comments/edit.js +1 -0
  80. package/build/latest-comments/edit.js.map +1 -1
  81. package/build/latest-posts/edit.js +2 -0
  82. package/build/latest-posts/edit.js.map +1 -1
  83. package/build/list/edit.js +4 -4
  84. package/build/list/edit.js.map +1 -1
  85. package/build/list/index.js +5 -1
  86. package/build/list/index.js.map +1 -1
  87. package/build/list-item/utils.js +6 -1
  88. package/build/list-item/utils.js.map +1 -1
  89. package/build/media-text/index.js +1 -0
  90. package/build/media-text/index.js.map +1 -1
  91. package/build/media-text/media-container.native.js +2 -1
  92. package/build/media-text/media-container.native.js.map +1 -1
  93. package/build/missing/edit.js +22 -8
  94. package/build/missing/edit.js.map +1 -1
  95. package/build/missing/edit.native.js +7 -5
  96. package/build/missing/edit.native.js.map +1 -1
  97. package/build/navigation/constants.js +10 -4
  98. package/build/navigation/constants.js.map +1 -1
  99. package/build/navigation/edit/index.js +17 -3
  100. package/build/navigation/edit/index.js.map +1 -1
  101. package/build/navigation/edit/inner-blocks.js +2 -2
  102. package/build/navigation/edit/inner-blocks.js.map +1 -1
  103. package/build/navigation/edit/menu-inspector-controls.js +0 -1
  104. package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
  105. package/build/navigation/edit/unsaved-inner-blocks.js +2 -2
  106. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  107. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +10 -15
  108. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  109. package/build/navigation/use-navigation-menu.js +33 -45
  110. package/build/navigation/use-navigation-menu.js.map +1 -1
  111. package/build/navigation/view-interactivity.js +185 -0
  112. package/build/navigation/view-interactivity.js.map +1 -0
  113. package/build/navigation-link/edit.js +12 -18
  114. package/build/navigation-link/edit.js.map +1 -1
  115. package/build/navigation-link/link-ui.js +12 -2
  116. package/build/navigation-link/link-ui.js.map +1 -1
  117. package/build/navigation-submenu/edit.js +2 -2
  118. package/build/navigation-submenu/edit.js.map +1 -1
  119. package/build/page-list/convert-to-links-modal.js +3 -3
  120. package/build/page-list/convert-to-links-modal.js.map +1 -1
  121. package/build/page-list/edit.js +34 -39
  122. package/build/page-list/edit.js.map +1 -1
  123. package/build/page-list/use-convert-to-navigation-links.js +2 -15
  124. package/build/page-list/use-convert-to-navigation-links.js.map +1 -1
  125. package/build/paragraph/index.js +1 -0
  126. package/build/paragraph/index.js.map +1 -1
  127. package/build/paragraph/transforms.js +1 -0
  128. package/build/paragraph/transforms.js.map +1 -1
  129. package/build/post-comments-form/index.js +1 -0
  130. package/build/post-comments-form/index.js.map +1 -1
  131. package/build/post-navigation-link/index.js +1 -0
  132. package/build/post-navigation-link/index.js.map +1 -1
  133. package/build/post-time-to-read/index.js +5 -1
  134. package/build/post-time-to-read/index.js.map +1 -1
  135. package/build/query-pagination/edit.js +1 -1
  136. package/build/query-pagination/edit.js.map +1 -1
  137. package/build/query-pagination-numbers/index.js +1 -1
  138. package/build/query-title/edit.js +43 -1
  139. package/build/query-title/edit.js.map +1 -1
  140. package/build/quote/index.js +1 -0
  141. package/build/quote/index.js.map +1 -1
  142. package/build/quote/transforms.js +8 -0
  143. package/build/quote/transforms.js.map +1 -1
  144. package/build/rss/edit.js +3 -0
  145. package/build/rss/edit.js.map +1 -1
  146. package/build/search/edit.js +4 -3
  147. package/build/search/edit.js.map +1 -1
  148. package/build/search/index.js +1 -0
  149. package/build/search/index.js.map +1 -1
  150. package/build/site-logo/edit.js +1 -0
  151. package/build/site-logo/edit.js.map +1 -1
  152. package/build/site-logo/index.js +5 -1
  153. package/build/site-logo/index.js.map +1 -1
  154. package/build/site-tagline/icon.js +1 -1
  155. package/build/site-tagline/icon.js.map +1 -1
  156. package/build/site-tagline/index.js +5 -1
  157. package/build/site-tagline/index.js.map +1 -1
  158. package/build/site-title/index.js +5 -1
  159. package/build/site-title/index.js.map +1 -1
  160. package/build/social-links/index.js +3 -1
  161. package/build/social-links/index.js.map +1 -1
  162. package/build/table/index.js +5 -1
  163. package/build/table/index.js.map +1 -1
  164. package/build/tag-cloud/edit.js +1 -0
  165. package/build/tag-cloud/edit.js.map +1 -1
  166. package/build/template-part/edit/index.js +1 -1
  167. package/build/template-part/edit/index.js.map +1 -1
  168. package/build/term-description/index.js +1 -0
  169. package/build/term-description/index.js.map +1 -1
  170. package/build/text-columns/edit.js +1 -0
  171. package/build/text-columns/edit.js.map +1 -1
  172. package/build/verse/index.js +5 -1
  173. package/build/verse/index.js.map +1 -1
  174. package/build/video/deprecated.js +5 -1
  175. package/build/video/deprecated.js.map +1 -1
  176. package/build/video/index.js +5 -1
  177. package/build/video/index.js.map +1 -1
  178. package/build-module/archives/index.js +5 -1
  179. package/build-module/archives/index.js.map +1 -1
  180. package/build-module/audio/index.js +5 -1
  181. package/build-module/audio/index.js.map +1 -1
  182. package/build-module/avatar/edit.js +1 -0
  183. package/build-module/avatar/edit.js.map +1 -1
  184. package/build-module/avatar/index.js +1 -1
  185. package/build-module/block/edit.js +1 -1
  186. package/build-module/block/edit.js.map +1 -1
  187. package/build-module/block/edit.native.js +7 -9
  188. package/build-module/block/edit.native.js.map +1 -1
  189. package/build-module/block/index.js +2 -1
  190. package/build-module/block/index.js.map +1 -1
  191. package/build-module/buttons/edit.js +7 -3
  192. package/build-module/buttons/edit.js.map +1 -1
  193. package/build-module/categories/index.js +5 -1
  194. package/build-module/categories/index.js.map +1 -1
  195. package/build-module/code/index.js +5 -1
  196. package/build-module/code/index.js.map +1 -1
  197. package/build-module/column/edit.native.js +1 -4
  198. package/build-module/column/edit.native.js.map +1 -1
  199. package/build-module/column/index.js +1 -0
  200. package/build-module/column/index.js.map +1 -1
  201. package/build-module/columns/edit.js +1 -0
  202. package/build-module/columns/edit.js.map +1 -1
  203. package/build-module/comment-author-avatar/edit.js +1 -0
  204. package/build-module/comment-author-avatar/edit.js.map +1 -1
  205. package/build-module/comments/index.js +1 -0
  206. package/build-module/comments/index.js.map +1 -1
  207. package/build-module/cover/deprecated.js +4 -2
  208. package/build-module/cover/deprecated.js.map +1 -1
  209. package/build-module/cover/edit/inspector-controls.js +2 -1
  210. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  211. package/build-module/cover/index.js +1 -0
  212. package/build-module/cover/index.js.map +1 -1
  213. package/build-module/details/index.js +5 -1
  214. package/build-module/details/index.js.map +1 -1
  215. package/build-module/embed/embed-placeholder.native.js +37 -14
  216. package/build-module/embed/embed-placeholder.native.js.map +1 -1
  217. package/build-module/embed/util.js +6 -6
  218. package/build-module/embed/util.js.map +1 -1
  219. package/build-module/file/inspector.js +1 -0
  220. package/build-module/file/inspector.js.map +1 -1
  221. package/build-module/file/{interactivity.js → view-interactivity.js} +6 -2
  222. package/build-module/file/view-interactivity.js.map +1 -0
  223. package/build-module/footnotes/edit.js +18 -2
  224. package/build-module/footnotes/edit.js.map +1 -1
  225. package/build-module/footnotes/format.js +19 -16
  226. package/build-module/footnotes/format.js.map +1 -1
  227. package/build-module/footnotes/index.js +0 -1
  228. package/build-module/footnotes/index.js.map +1 -1
  229. package/build-module/gallery/edit.js +1 -1
  230. package/build-module/gallery/edit.js.map +1 -1
  231. package/build-module/gallery/index.js +3 -1
  232. package/build-module/gallery/index.js.map +1 -1
  233. package/build-module/group/index.js +1 -0
  234. package/build-module/group/index.js.map +1 -1
  235. package/build-module/heading/index.js +5 -1
  236. package/build-module/heading/index.js.map +1 -1
  237. package/build-module/heading/transforms.js +5 -1
  238. package/build-module/heading/transforms.js.map +1 -1
  239. package/build-module/image/deprecated.js +454 -176
  240. package/build-module/image/deprecated.js.map +1 -1
  241. package/build-module/image/edit.js +0 -4
  242. package/build-module/image/edit.js.map +1 -1
  243. package/build-module/image/image.js +96 -46
  244. package/build-module/image/image.js.map +1 -1
  245. package/build-module/image/index.js +6 -0
  246. package/build-module/image/index.js.map +1 -1
  247. package/build-module/image/save.js +8 -1
  248. package/build-module/image/save.js.map +1 -1
  249. package/build-module/image/utils.js +16 -0
  250. package/build-module/image/utils.js.map +1 -1
  251. package/build-module/image/{interactivity.js → view-interactivity.js} +86 -44
  252. package/build-module/image/view-interactivity.js.map +1 -0
  253. package/build-module/index.js +12 -3
  254. package/build-module/index.js.map +1 -1
  255. package/build-module/latest-comments/edit.js +1 -0
  256. package/build-module/latest-comments/edit.js.map +1 -1
  257. package/build-module/latest-posts/edit.js +2 -0
  258. package/build-module/latest-posts/edit.js.map +1 -1
  259. package/build-module/list/edit.js +4 -4
  260. package/build-module/list/edit.js.map +1 -1
  261. package/build-module/list/index.js +5 -1
  262. package/build-module/list/index.js.map +1 -1
  263. package/build-module/list-item/utils.js +6 -1
  264. package/build-module/list-item/utils.js.map +1 -1
  265. package/build-module/media-text/index.js +1 -0
  266. package/build-module/media-text/index.js.map +1 -1
  267. package/build-module/media-text/media-container.native.js +2 -1
  268. package/build-module/media-text/media-container.native.js.map +1 -1
  269. package/build-module/missing/edit.js +22 -8
  270. package/build-module/missing/edit.js.map +1 -1
  271. package/build-module/missing/edit.native.js +8 -6
  272. package/build-module/missing/edit.native.js.map +1 -1
  273. package/build-module/navigation/constants.js +8 -3
  274. package/build-module/navigation/constants.js.map +1 -1
  275. package/build-module/navigation/edit/index.js +18 -4
  276. package/build-module/navigation/edit/index.js.map +1 -1
  277. package/build-module/navigation/edit/inner-blocks.js +2 -2
  278. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  279. package/build-module/navigation/edit/menu-inspector-controls.js +0 -1
  280. package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
  281. package/build-module/navigation/edit/unsaved-inner-blocks.js +2 -2
  282. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  283. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +10 -14
  284. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  285. package/build-module/navigation/use-navigation-menu.js +35 -47
  286. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  287. package/build-module/navigation/view-interactivity.js +182 -0
  288. package/build-module/navigation/view-interactivity.js.map +1 -0
  289. package/build-module/navigation-link/edit.js +13 -19
  290. package/build-module/navigation-link/edit.js.map +1 -1
  291. package/build-module/navigation-link/link-ui.js +13 -3
  292. package/build-module/navigation-link/link-ui.js.map +1 -1
  293. package/build-module/navigation-submenu/edit.js +2 -2
  294. package/build-module/navigation-submenu/edit.js.map +1 -1
  295. package/build-module/page-list/convert-to-links-modal.js +3 -3
  296. package/build-module/page-list/convert-to-links-modal.js.map +1 -1
  297. package/build-module/page-list/edit.js +34 -39
  298. package/build-module/page-list/edit.js.map +1 -1
  299. package/build-module/page-list/use-convert-to-navigation-links.js +3 -16
  300. package/build-module/page-list/use-convert-to-navigation-links.js.map +1 -1
  301. package/build-module/paragraph/index.js +1 -0
  302. package/build-module/paragraph/index.js.map +1 -1
  303. package/build-module/paragraph/transforms.js +1 -0
  304. package/build-module/paragraph/transforms.js.map +1 -1
  305. package/build-module/post-comments-form/index.js +1 -0
  306. package/build-module/post-comments-form/index.js.map +1 -1
  307. package/build-module/post-navigation-link/index.js +1 -0
  308. package/build-module/post-navigation-link/index.js.map +1 -1
  309. package/build-module/post-time-to-read/index.js +5 -1
  310. package/build-module/post-time-to-read/index.js.map +1 -1
  311. package/build-module/query-pagination/edit.js +1 -1
  312. package/build-module/query-pagination/edit.js.map +1 -1
  313. package/build-module/query-pagination-numbers/index.js +1 -1
  314. package/build-module/query-title/edit.js +44 -3
  315. package/build-module/query-title/edit.js.map +1 -1
  316. package/build-module/quote/index.js +1 -0
  317. package/build-module/quote/index.js.map +1 -1
  318. package/build-module/quote/transforms.js +8 -0
  319. package/build-module/quote/transforms.js.map +1 -1
  320. package/build-module/rss/edit.js +3 -0
  321. package/build-module/rss/edit.js.map +1 -1
  322. package/build-module/search/edit.js +4 -3
  323. package/build-module/search/edit.js.map +1 -1
  324. package/build-module/search/index.js +1 -0
  325. package/build-module/search/index.js.map +1 -1
  326. package/build-module/site-logo/edit.js +1 -0
  327. package/build-module/site-logo/edit.js.map +1 -1
  328. package/build-module/site-logo/index.js +5 -1
  329. package/build-module/site-logo/index.js.map +1 -1
  330. package/build-module/site-tagline/icon.js +1 -1
  331. package/build-module/site-tagline/icon.js.map +1 -1
  332. package/build-module/site-tagline/index.js +5 -1
  333. package/build-module/site-tagline/index.js.map +1 -1
  334. package/build-module/site-title/index.js +5 -1
  335. package/build-module/site-title/index.js.map +1 -1
  336. package/build-module/social-links/index.js +3 -1
  337. package/build-module/social-links/index.js.map +1 -1
  338. package/build-module/table/index.js +5 -1
  339. package/build-module/table/index.js.map +1 -1
  340. package/build-module/tag-cloud/edit.js +1 -0
  341. package/build-module/tag-cloud/edit.js.map +1 -1
  342. package/build-module/template-part/edit/index.js +1 -1
  343. package/build-module/template-part/edit/index.js.map +1 -1
  344. package/build-module/term-description/index.js +1 -0
  345. package/build-module/term-description/index.js.map +1 -1
  346. package/build-module/text-columns/edit.js +1 -0
  347. package/build-module/text-columns/edit.js.map +1 -1
  348. package/build-module/verse/index.js +5 -1
  349. package/build-module/verse/index.js.map +1 -1
  350. package/build-module/video/deprecated.js +5 -1
  351. package/build-module/video/deprecated.js.map +1 -1
  352. package/build-module/video/index.js +5 -1
  353. package/build-module/video/index.js.map +1 -1
  354. package/build-style/details/style-rtl.css +4 -2
  355. package/build-style/details/style.css +4 -2
  356. package/build-style/footnotes/style-rtl.css +4 -3
  357. package/build-style/footnotes/style.css +4 -3
  358. package/build-style/image/style-rtl.css +16 -2
  359. package/build-style/image/style.css +16 -2
  360. package/build-style/navigation/style-rtl.css +14 -2
  361. package/build-style/navigation/style.css +14 -2
  362. package/build-style/query-pagination/style-rtl.css +4 -2
  363. package/build-style/query-pagination/style.css +4 -2
  364. package/build-style/style-rtl.css +42 -11
  365. package/build-style/style.css +42 -11
  366. package/package.json +33 -37
  367. package/src/archives/block.json +5 -1
  368. package/src/audio/block.json +5 -1
  369. package/src/audio/test/__snapshots__/edit.native.js.snap +58 -33
  370. package/src/avatar/block.json +1 -1
  371. package/src/avatar/edit.js +1 -0
  372. package/src/block/block.json +2 -1
  373. package/src/block/edit.js +2 -2
  374. package/src/block/edit.native.js +8 -12
  375. package/src/block/editor.native.scss +2 -2
  376. package/src/block/test/edit.native.js +4 -4
  377. package/src/buttons/edit.js +4 -4
  378. package/src/categories/block.json +5 -1
  379. package/src/code/block.json +5 -1
  380. package/src/column/block.json +1 -0
  381. package/src/column/edit.native.js +4 -10
  382. package/src/column/editor.native.scss +0 -4
  383. package/src/columns/edit.js +1 -0
  384. package/src/comment-author-avatar/edit.js +1 -0
  385. package/src/comment-template/index.php +5 -2
  386. package/src/comments/block.json +1 -0
  387. package/src/cover/block.json +1 -0
  388. package/src/cover/deprecated.js +2 -0
  389. package/src/cover/edit/inspector-controls.js +1 -0
  390. package/src/details/block.json +5 -1
  391. package/src/embed/embed-placeholder.native.js +80 -47
  392. package/src/embed/styles.native.scss +54 -18
  393. package/src/embed/test/index.native.js +5 -5
  394. package/src/embed/util.js +4 -6
  395. package/src/file/index.php +4 -3
  396. package/src/file/inspector.js +1 -0
  397. package/src/file/test/__snapshots__/edit.native.js.snap +58 -33
  398. package/src/file/{interactivity.js → view-interactivity.js} +4 -1
  399. package/src/footnotes/block.json +0 -1
  400. package/src/footnotes/edit.js +21 -2
  401. package/src/footnotes/format.js +22 -20
  402. package/src/footnotes/index.php +11 -9
  403. package/src/footnotes/style.scss +6 -3
  404. package/src/gallery/block.json +3 -1
  405. package/src/gallery/edit.js +1 -1
  406. package/src/gallery/test/index.native.js +17 -16
  407. package/src/group/block.json +1 -0
  408. package/src/heading/block.json +5 -1
  409. package/src/heading/test/index.native.js +18 -0
  410. package/src/home-link/index.php +15 -2
  411. package/src/image/block.json +6 -0
  412. package/src/image/deprecated.js +597 -320
  413. package/src/image/edit.js +0 -4
  414. package/src/image/image.js +131 -62
  415. package/src/image/index.php +47 -8
  416. package/src/image/save.js +9 -1
  417. package/src/image/style.scss +15 -2
  418. package/src/image/test/edit.native.js +1 -1
  419. package/src/image/utils.js +16 -0
  420. package/src/image/{interactivity.js → view-interactivity.js} +99 -50
  421. package/src/index.js +18 -1
  422. package/src/latest-comments/edit.js +1 -0
  423. package/src/latest-posts/edit.js +2 -0
  424. package/src/latest-posts/index.php +1 -1
  425. package/src/list/block.json +5 -1
  426. package/src/list/edit.js +6 -4
  427. package/src/list/test/edit.native.js +129 -33
  428. package/src/media-text/block.json +1 -0
  429. package/src/media-text/media-container.native.js +1 -0
  430. package/src/missing/edit.js +31 -11
  431. package/src/missing/edit.native.js +12 -10
  432. package/src/missing/style.native.scss +19 -12
  433. package/src/missing/test/__snapshots__/edit.native.js.snap +21 -13
  434. package/src/navigation/constants.js +12 -6
  435. package/src/navigation/edit/index.js +30 -3
  436. package/src/navigation/edit/inner-blocks.js +2 -2
  437. package/src/navigation/edit/menu-inspector-controls.js +0 -1
  438. package/src/navigation/edit/unsaved-inner-blocks.js +2 -2
  439. package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +17 -21
  440. package/src/navigation/index.php +43 -16
  441. package/src/navigation/style.scss +27 -8
  442. package/src/navigation/use-navigation-menu.js +39 -63
  443. package/src/navigation/view-interactivity.js +196 -0
  444. package/src/navigation-link/edit.js +61 -61
  445. package/src/navigation-link/link-ui.js +14 -2
  446. package/src/navigation-submenu/edit.js +2 -2
  447. package/src/navigation-submenu/index.php +2 -12
  448. package/src/page-list/convert-to-links-modal.js +3 -3
  449. package/src/page-list/edit.js +65 -62
  450. package/src/page-list/use-convert-to-navigation-links.js +3 -20
  451. package/src/paragraph/block.json +1 -0
  452. package/src/paragraph/test/__snapshots__/edit.native.js.snap +1 -0
  453. package/src/paragraph/test/edit.native.js +26 -0
  454. package/src/post-comments-form/block.json +1 -0
  455. package/src/post-navigation-link/block.json +1 -0
  456. package/src/post-template/index.php +4 -2
  457. package/src/post-time-to-read/block.json +5 -1
  458. package/src/post-title/index.php +6 -3
  459. package/src/preformatted/test/__snapshots__/edit.native.js.snap +2 -0
  460. package/src/query-pagination/edit.js +17 -14
  461. package/src/query-pagination-numbers/block.json +1 -1
  462. package/src/query-title/edit.js +48 -6
  463. package/src/quote/block.json +1 -0
  464. package/src/quote/test/__snapshots__/transforms.native.js.snap +10 -0
  465. package/src/quote/test/transforms.native.js +5 -1
  466. package/src/quote/transforms.js +13 -0
  467. package/src/rss/edit.js +3 -0
  468. package/src/search/block.json +1 -0
  469. package/src/search/edit.js +4 -3
  470. package/src/search/index.php +22 -4
  471. package/src/search/test/__snapshots__/edit.native.js.snap +7 -0
  472. package/src/site-logo/block.json +5 -1
  473. package/src/site-logo/edit.js +1 -0
  474. package/src/site-tagline/block.json +5 -1
  475. package/src/site-tagline/icon.js +1 -1
  476. package/src/site-title/block.json +5 -1
  477. package/src/social-links/block.json +3 -1
  478. package/src/table/block.json +5 -1
  479. package/src/tag-cloud/edit.js +1 -0
  480. package/src/template-part/edit/index.js +1 -1
  481. package/src/template-part/index.php +9 -15
  482. package/src/term-description/block.json +1 -0
  483. package/src/text-columns/edit.js +1 -0
  484. package/src/verse/block.json +5 -1
  485. package/src/video/block.json +5 -1
  486. package/build/file/interactivity.js.map +0 -1
  487. package/build/gallery/shared-icon.native.js +0 -38
  488. package/build/gallery/shared-icon.native.js.map +0 -1
  489. package/build/heading/heading-level-icon.js +0 -61
  490. package/build/heading/heading-level-icon.js.map +0 -1
  491. package/build/image/interactivity.js.map +0 -1
  492. package/build/navigation/interactivity.js +0 -167
  493. package/build/navigation/interactivity.js.map +0 -1
  494. package/build/utils/interactivity/constants.js +0 -9
  495. package/build/utils/interactivity/constants.js.map +0 -1
  496. package/build/utils/interactivity/directives.js +0 -222
  497. package/build/utils/interactivity/directives.js.map +0 -1
  498. package/build/utils/interactivity/hooks.js +0 -159
  499. package/build/utils/interactivity/hooks.js.map +0 -1
  500. package/build/utils/interactivity/hydration.js +0 -34
  501. package/build/utils/interactivity/hydration.js.map +0 -1
  502. package/build/utils/interactivity/index.js +0 -32
  503. package/build/utils/interactivity/index.js.map +0 -1
  504. package/build/utils/interactivity/portals.js +0 -108
  505. package/build/utils/interactivity/portals.js.map +0 -1
  506. package/build/utils/interactivity/store.js +0 -66
  507. package/build/utils/interactivity/store.js.map +0 -1
  508. package/build/utils/interactivity/utils.js +0 -87
  509. package/build/utils/interactivity/utils.js.map +0 -1
  510. package/build/utils/interactivity/vdom.js +0 -119
  511. package/build/utils/interactivity/vdom.js.map +0 -1
  512. package/build-module/file/interactivity.js.map +0 -1
  513. package/build-module/gallery/shared-icon.native.js +0 -24
  514. package/build-module/gallery/shared-icon.native.js.map +0 -1
  515. package/build-module/heading/heading-level-icon.js +0 -53
  516. package/build-module/heading/heading-level-icon.js.map +0 -1
  517. package/build-module/image/interactivity.js.map +0 -1
  518. package/build-module/navigation/interactivity.js +0 -164
  519. package/build-module/navigation/interactivity.js.map +0 -1
  520. package/build-module/utils/interactivity/constants.js +0 -2
  521. package/build-module/utils/interactivity/constants.js.map +0 -1
  522. package/build-module/utils/interactivity/directives.js +0 -209
  523. package/build-module/utils/interactivity/directives.js.map +0 -1
  524. package/build-module/utils/interactivity/hooks.js +0 -145
  525. package/build-module/utils/interactivity/hooks.js.map +0 -1
  526. package/build-module/utils/interactivity/hydration.js +0 -21
  527. package/build-module/utils/interactivity/hydration.js.map +0 -1
  528. package/build-module/utils/interactivity/index.js +0 -15
  529. package/build-module/utils/interactivity/index.js.map +0 -1
  530. package/build-module/utils/interactivity/portals.js +0 -100
  531. package/build-module/utils/interactivity/portals.js.map +0 -1
  532. package/build-module/utils/interactivity/store.js +0 -55
  533. package/build-module/utils/interactivity/store.js.map +0 -1
  534. package/build-module/utils/interactivity/utils.js +0 -75
  535. package/build-module/utils/interactivity/utils.js.map +0 -1
  536. package/build-module/utils/interactivity/vdom.js +0 -107
  537. package/build-module/utils/interactivity/vdom.js.map +0 -1
  538. package/src/gallery/shared-icon.native.js +0 -23
  539. package/src/heading/heading-level-icon.js +0 -48
  540. package/src/navigation/interactivity.js +0 -169
  541. package/src/utils/interactivity/constants.js +0 -1
  542. package/src/utils/interactivity/directives.js +0 -200
  543. package/src/utils/interactivity/hooks.js +0 -145
  544. package/src/utils/interactivity/hydration.js +0 -22
  545. package/src/utils/interactivity/index.js +0 -15
  546. package/src/utils/interactivity/portals.js +0 -98
  547. package/src/utils/interactivity/store.js +0 -45
  548. package/src/utils/interactivity/utils.js +0 -66
  549. package/src/utils/interactivity/vdom.js +0 -111
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/media-text/media-container.native.js"],"names":["ALLOWED_MEDIA_TYPES","MEDIA_TYPE_IMAGE","MEDIA_TYPE_VIDEO","ICON_TYPE","PLACEHOLDER","RETRY","MediaContainer","Component","constructor","arguments","updateMediaProgress","bind","finishMediaUploadWithSuccess","finishMediaUploadWithFailure","mediaUploadStateReset","onSelectMediaUploadOption","onMediaPressed","state","isUploadInProgress","componentDidMount","mediaId","mediaUrl","props","params","id","url","type","onSelectMedia","media_type","mediaType","isMediaSelected","onMediaSelected","getIcon","iconType","getStylesFromColorScheme","iconStyle","styles","iconRetry","iconRetryVideo","iconRetryVideoDark","SvgIconRetry","iconPlaceholder","iconPlaceholderDark","icon","setState","payload","onMediaUpdate","mediaServerId","renderImage","openMediaOptions","aligmentStyles","focalPoint","imageFill","isSelected","mediaAlt","mediaWidth","shouldStack","isUploadFailed","retryMessage","focalPointValues","IMAGE_DEFAULT_FOCAL_POINT","imageWithFocalPoint","height","imageCropped","mediaImageContainer","renderVideo","showVideo","videoPlaceholderStyles","videoPlaceholder","videoPlaceholderDark","retryVideoTextStyles","uploadFailedText","uploadFailedTextVideo","uploadFailedTextVideoDark","mediaVideo","videoContainer","videoContent","aspectRatio","VIDEO_ASPECT_RATIO","videoPlayer","video","uri","modalIcon","renderContent","mediaElement","renderPlaceholder","title","onFocus","render","onSetOpenPickerRef","coverUrl","open","getMediaOptions","withPreferredColorScheme"],"mappings":";;;;;;;;;;;;;;;AAwBA;;AArBA;;AAKA;;AAMA;;AACA;;AAUA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AAYA;;AA9CA;AACA;AACA;;AAGA;AACA;AACA;;AAuBA;AACA;AACA;;AAIA;AACA;AACA;AACA,MAAMA,mBAAmB,GAAG,CAAEC,6BAAF,EAAoBC,6BAApB,CAA5B;AAEA,MAAMC,SAAS,GAAG;AACjBC,EAAAA,WAAW,EAAE,aADI;AAEjBC,EAAAA,KAAK,EAAE;AAFU,CAAlB;;AAOA,MAAMC,cAAN,SAA6BC,kBAA7B,CAAuC;AACtCC,EAAAA,WAAW,GAAG;AACb,UAAO,GAAGC,SAAV;AACA,SAAKC,mBAAL,GAA2B,KAAKA,mBAAL,CAAyBC,IAAzB,CAA+B,IAA/B,CAA3B;AACA,SAAKC,4BAAL,GACC,KAAKA,4BAAL,CAAkCD,IAAlC,CAAwC,IAAxC,CADD;AAEA,SAAKE,4BAAL,GACC,KAAKA,4BAAL,CAAkCF,IAAlC,CAAwC,IAAxC,CADD;AAEA,SAAKG,qBAAL,GAA6B,KAAKA,qBAAL,CAA2BH,IAA3B,CAAiC,IAAjC,CAA7B;AACA,SAAKI,yBAAL,GACC,KAAKA,yBAAL,CAA+BJ,IAA/B,CAAqC,IAArC,CADD;AAEA,SAAKK,cAAL,GAAsB,KAAKA,cAAL,CAAoBL,IAApB,CAA0B,IAA1B,CAAtB;AAEA,SAAKM,KAAL,GAAa;AACZC,MAAAA,kBAAkB,EAAE;AADR,KAAb;AAGA;;AAEDC,EAAAA,iBAAiB,GAAG;AACnB,UAAM;AAAEC,MAAAA,OAAF;AAAWC,MAAAA;AAAX,QAAwB,KAAKC,KAAnC,CADmB,CAGnB;AACA;;AACA,QAAKF,OAAO,IAAIC,QAAX,IAAuB,sBAAaA,QAAb,MAA4B,OAAxD,EAAkE;AACjE;AACA;AACD;;AAEDN,EAAAA,yBAAyB,CAAEQ,MAAF,EAAW;AACnC,UAAM;AAAEC,MAAAA,EAAF;AAAMC,MAAAA,GAAN;AAAWC,MAAAA;AAAX,QAAoBH,MAA1B;AACA,UAAM;AAAEI,MAAAA;AAAF,QAAoB,KAAKL,KAA/B;AAEAK,IAAAA,aAAa,CAAE;AACdC,MAAAA,UAAU,EAAEF,IADE;AAEdF,MAAAA,EAFc;AAGdC,MAAAA;AAHc,KAAF,CAAb;AAKA;;AAEDT,EAAAA,cAAc,GAAG;AAChB,UAAM;AAAEE,MAAAA;AAAF,QAAyB,KAAKD,KAApC;AACA,UAAM;AACLG,MAAAA,OADK;AAELC,MAAAA,QAFK;AAGLQ,MAAAA,SAHK;AAILC,MAAAA,eAJK;AAKLC,MAAAA;AALK,QAMF,KAAKT,KANT;;AAQA,QAAKJ,kBAAL,EAA0B;AACzB,6DAAgCE,OAAhC;AACA,KAFD,MAEO,IAAKA,OAAO,IAAI,sBAAaC,QAAb,MAA4B,OAA5C,EAAsD;AAC5D,4DAA+BD,OAA/B;AACA,KAFM,MAEA,IAAKS,SAAS,KAAK5B,6BAAd,IAAkC6B,eAAvC,EAAyD;AAC/D,4DAA+BT,QAA/B;AACA,KAFM,MAEA,IAAKQ,SAAS,KAAK5B,6BAAnB,EAAsC;AAC5C8B,MAAAA,eAAe;AACf;AACD;;AAEDC,EAAAA,OAAO,CAAEC,QAAF,EAAa;AACnB,UAAM;AAAEJ,MAAAA,SAAF;AAAaK,MAAAA;AAAb,QAA0C,KAAKZ,KAArD;AACA,QAAIa,SAAJ;;AACA,YAASF,QAAT;AACC,WAAK9B,SAAS,CAACE,KAAf;AACC8B,QAAAA,SAAS,GACRN,SAAS,KAAK5B,6BAAd,GACGmC,eAAOC,SADV,GAEGH,wBAAwB,CACxBE,eAAOE,cADiB,EAExBF,eAAOG,kBAFiB,CAH5B;AAQA,eAAO,4BAAC,gBAAD;AAAM,UAAA,IAAI,EAAGC,kBAAb;AAAA,aAAiCL;AAAjC,UAAP;;AACD,WAAKhC,SAAS,CAACC,WAAf;AACC+B,QAAAA,SAAS,GAAGD,wBAAwB,CACnCE,eAAOK,eAD4B,EAEnCL,eAAOM,mBAF4B,CAApC;AAIA;AAhBF;;AAkBA,WAAO,4BAAC,gBAAD;AAAM,MAAA,IAAI,EAAGC,YAAb;AAAA,SAAyBR;AAAzB,MAAP;AACA;;AAEDzB,EAAAA,mBAAmB,GAAG;AACrB,QAAK,CAAE,KAAKO,KAAL,CAAWC,kBAAlB,EAAuC;AACtC,WAAK0B,QAAL,CAAe;AAAE1B,QAAAA,kBAAkB,EAAE;AAAtB,OAAf;AACA;AACD;;AAEDN,EAAAA,4BAA4B,CAAEiC,OAAF,EAAY;AACvC,UAAM;AAAEC,MAAAA;AAAF,QAAoB,KAAKxB,KAA/B;AAEAwB,IAAAA,aAAa,CAAE;AACdtB,MAAAA,EAAE,EAAEqB,OAAO,CAACE,aADE;AAEdtB,MAAAA,GAAG,EAAEoB,OAAO,CAACxB;AAFC,KAAF,CAAb;AAIA,SAAKuB,QAAL,CAAe;AAAE1B,MAAAA,kBAAkB,EAAE;AAAtB,KAAf;AACA;;AAEDL,EAAAA,4BAA4B,GAAG;AAC9B,SAAK+B,QAAL,CAAe;AAAE1B,MAAAA,kBAAkB,EAAE;AAAtB,KAAf;AACA;;AAEDJ,EAAAA,qBAAqB,GAAG;AACvB,UAAM;AAAEgC,MAAAA;AAAF,QAAoB,KAAKxB,KAA/B;AAEAwB,IAAAA,aAAa,CAAE;AAAEtB,MAAAA,EAAE,EAAE,IAAN;AAAYC,MAAAA,GAAG,EAAE;AAAjB,KAAF,CAAb;AACA,SAAKmB,QAAL,CAAe;AAAE1B,MAAAA,kBAAkB,EAAE;AAAtB,KAAf;AACA;;AAED8B,EAAAA,WAAW,CAAEzB,MAAF,EAAU0B,gBAAV,EAA6B;AACvC,UAAM;AAAE/B,MAAAA;AAAF,QAAyB,KAAKD,KAApC;AACA,UAAM;AACLiC,MAAAA,cADK;AAELC,MAAAA,UAFK;AAGLC,MAAAA,SAHK;AAILtB,MAAAA,eAJK;AAKLuB,MAAAA,UALK;AAMLC,MAAAA,QANK;AAOLjC,MAAAA,QAPK;AAQLkC,MAAAA,UARK;AASLC,MAAAA;AATK,QAUF,KAAKlC,KAVT;AAWA,UAAM;AAAEmC,MAAAA,cAAF;AAAkBC,MAAAA;AAAlB,QAAmCnC,MAAzC;AACA,UAAMoC,gBAAgB,GAAG,CAAER,UAAF,GACtBS,qCADsB,GAEtBT,UAFH;AAIA,WACC,4BAAC,iBAAD;AACC,MAAA,KAAK,EAAG,CACPC,SAAS,IAAIhB,eAAOyB,mBADb,EAEPT,SAAS,IACRI,WADD,IACgB;AACdM,QAAAA,MAAM,EAAE1B,eAAOgB,SAAP,CAAiBU;AADX,OAHT;AADT,OASC,4BAAC,qCAAD;AACC,MAAA,UAAU,EAAG,CAAET,UADhB;AAEC,MAAA,OAAO,EAAG,KAAKrC,cAFhB;AAGC,MAAA,QAAQ,EAAG,CAAEqC;AAHd,OAKC,4BAAC,iBAAD;AACC,MAAA,KAAK,EAAG,CACPD,SAAS,IAAIhB,eAAO2B,YADb,EAEP3B,eAAO4B,mBAFA,EAGP,CAAE9C,kBAAF,IAAwBgC,cAHjB;AADT,OAOC,4BAAC,iBAAD;AACC,MAAA,KAAK,EAAC,QADP;AAEC,MAAA,GAAG,EAAGI,QAFP;AAGC,MAAA,UAAU,EAAGF,SAAS,IAAIO,gBAH3B;AAIC,MAAA,UAAU,EAAG7B,eAJd;AAKC,MAAA,cAAc,EAAG2B,cALlB;AAMC,MAAA,kBAAkB,EAAGvC,kBANtB;AAOC,MAAA,yBAAyB,EACxB,KAAKH,yBARP;AAUC,MAAA,gBAAgB,EAAGkC,gBAVpB;AAWC,MAAA,YAAY,EAAGS,YAXhB;AAYC,MAAA,GAAG,EAAGrC,QAZP;AAaC,MAAA,KAAK,EAAG,CAAEH,kBAAF,IAAwBqC;AAbjC,MAPD,CALD,CATD,CADD;AAyCA;;AAEDU,EAAAA,WAAW,CAAE1C,MAAF,EAAW;AACrB,UAAM;AACL2B,MAAAA,cADK;AAEL7B,MAAAA,QAFK;AAGLgC,MAAAA,UAHK;AAILnB,MAAAA;AAJK,QAKF,KAAKZ,KALT;AAMA,UAAM;AAAEJ,MAAAA;AAAF,QAAyB,KAAKD,KAApC;AACA,UAAM;AAAEwC,MAAAA,cAAF;AAAkBC,MAAAA;AAAlB,QAAmCnC,MAAzC;AACA,UAAM2C,SAAS,GACd,gBAAO7C,QAAP,KAAqB,CAAEH,kBAAvB,IAA6C,CAAEuC,cADhD;AAGA,UAAMU,sBAAsB,GAAGjC,wBAAwB,CACtDE,eAAOgC,gBAD+C,EAEtDhC,eAAOiC,oBAF+C,CAAvD;AAIA,UAAMC,oBAAoB,GAAG,CAC5BlC,eAAOmC,gBADqB,EAE5BrC,wBAAwB,CACvBE,eAAOoC,qBADgB,EAEvBpC,eAAOqC,yBAFgB,CAFI,CAA7B;AAQA,WACC,4BAAC,iBAAD;AAAM,MAAA,KAAK,EAAGrC,eAAOsC;AAArB,OACC,4BAAC,qCAAD;AACC,MAAA,UAAU,EAAG,CAAErB,UADhB;AAEC,MAAA,OAAO,EAAG,KAAKrC,cAFhB;AAGC,MAAA,QAAQ,EAAG,CAAEqC;AAHd,OAKC,4BAAC,iBAAD;AAAM,MAAA,KAAK,EAAG,CAAEjB,eAAOuC,cAAT,EAAyBzB,cAAzB;AAAd,OACC,4BAAC,iBAAD;AACC,MAAA,KAAK,EAAG,CACPd,eAAOwC,YADA,EAEP;AACCC,QAAAA,WAAW,EAAEC;AADd,OAFO;AADT,OAQGZ,SAAS,IACV,4BAAC,iBAAD;AAAM,MAAA,KAAK,EAAG9B,eAAO2C;AAArB,OACC,4BAAC,wBAAD;AACC,MAAA,UAAU,EAAG1B,UADd;AAEC,MAAA,KAAK,EAAGjB,eAAO4C,KAFhB;AAGC,MAAA,MAAM,EAAG;AAAEC,QAAAA,GAAG,EAAE5D;AAAP,OAHV;AAIC,MAAA,MAAM,EAAG;AAJV,MADD,CATF,EAkBG,CAAE6C,SAAF,IACD,4BAAC,iBAAD;AAAM,MAAA,KAAK,EAAGC;AAAd,OACC,4BAAC,iBAAD;AAAM,MAAA,KAAK,EAAG/B,eAAO8C;AAArB,OACGzB,cAAc,GACb,KAAKzB,OAAL,CAAc7B,SAAS,CAACE,KAAxB,CADa,GAEb,KAAK2B,OAAL,CACA7B,SAAS,CAACC,WADV,CAHJ,CADD,EAQGqD,cAAc,IACf,4BAAC,iBAAD;AAAM,MAAA,KAAK,EAAGa;AAAd,OACGZ,YADH,CATF,CAnBF,CADD,CALD,CADD,CADD;AA+CA;;AAEDyB,EAAAA,aAAa,CAAE5D,MAAF,EAAU0B,gBAAV,EAA6B;AACzC,UAAM;AAAEpB,MAAAA;AAAF,QAAgB,KAAKP,KAA3B;AACA,QAAI8D,YAAY,GAAG,IAAnB;;AAEA,YAASvD,SAAT;AACC,WAAK5B,6BAAL;AACCmF,QAAAA,YAAY,GAAG,KAAKpC,WAAL,CAAkBzB,MAAlB,EAA0B0B,gBAA1B,CAAf;AACA;;AACD,WAAK/C,6BAAL;AACCkF,QAAAA,YAAY,GAAG,KAAKnB,WAAL,CAAkB1C,MAAlB,CAAf;AACA;AANF;;AAQA,WAAO6D,YAAP;AACA;;AAEDC,EAAAA,iBAAiB,GAAG;AACnB,WACC,4BAAC,6BAAD;AACC,MAAA,IAAI,EAAG,KAAKrD,OAAL,CAAc7B,SAAS,CAACC,WAAxB,CADR;AAEC,MAAA,MAAM,EAAG;AACRkF,QAAAA,KAAK,EAAE,cAAI,YAAJ;AADC,OAFV;AAKC,MAAA,QAAQ,EAAG,KAAKvE,yBALjB;AAMC,MAAA,YAAY,EAAGf,mBANhB;AAOC,MAAA,OAAO,EAAG,KAAKsB,KAAL,CAAWiE;AAPtB,MADD;AAWA;;AAEDC,EAAAA,MAAM,GAAG;AACR,UAAM;AAAEnE,MAAAA,QAAF;AAAYD,MAAAA,OAAZ;AAAqBS,MAAAA,SAArB;AAAgC4D,MAAAA;AAAhC,QAAuD,KAAKnE,KAAlE;AACA,UAAMoE,QAAQ,GAAG7D,SAAS,KAAK5B,6BAAd,GAAiCoB,QAAjC,GAA4C,IAA7D;;AAEA,QAAKA,QAAL,EAAgB;AACf,aACC,4BAAC,wBAAD;AACC,QAAA,gBAAgB,EAAG,IADpB;AAEC,QAAA,QAAQ,EAAG,KAAKN,yBAFjB;AAGC,QAAA,YAAY,EAAGf,mBAHhB;AAIC,QAAA,KAAK,EAAGoB,OAJT;AAKC,QAAA,MAAM,EAAG,CAAE;AAAEuE,UAAAA,IAAF;AAAQC,UAAAA;AAAR,SAAF,KAAiC;AACzCH,UAAAA,kBAAkB,CAAEE,IAAF,CAAlB;AAEA,iBACC,qDACGC,eAAe,EADlB,EAGC,4BAAC,gCAAD;AACC,YAAA,QAAQ,EAAGF,QADZ;AAEC,YAAA,OAAO,EAAGtE,OAFX;AAGC,YAAA,qBAAqB,EACpB,KAAKV,mBAJP;AAMC,YAAA,8BAA8B,EAC7B,KAAKE,4BAPP;AASC,YAAA,8BAA8B,EAC7B,KAAKC,4BAVP;AAYC,YAAA,uBAAuB,EACtB,KAAKC,qBAbP;AAeC,YAAA,aAAa,EAAKS,MAAF,IAAc;AAC7B,qBAAO,KAAK4D,aAAL,CACN5D,MADM,EAENoE,IAFM,CAAP;AAIA;AApBF,YAHD,CADD;AA4BA;AApCF,QADD;AAwCA;;AACD,WAAO,KAAKN,iBAAL,EAAP;AACA;;AAjUqC;;eAoUxB,sBAAS,CAAEQ,iCAAF,CAAT,EAAyCvF,cAAzC,C","sourcesContent":["/**\n * External dependencies\n */\nimport { View, Text, TouchableWithoutFeedback } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tmediaUploadSync,\n\trequestImageFailedRetryDialog,\n\trequestImageUploadCancelDialog,\n\trequestImageFullscreenPreview,\n} from '@wordpress/react-native-bridge';\nimport { Icon, Image, IMAGE_DEFAULT_FOCAL_POINT } from '@wordpress/components';\nimport {\n\tMEDIA_TYPE_IMAGE,\n\tMEDIA_TYPE_VIDEO,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadProgress,\n\tVIDEO_ASPECT_RATIO,\n\tVideoPlayer,\n} from '@wordpress/block-editor';\nimport { Component } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { isURL, getProtocol } from '@wordpress/url';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { media as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport SvgIconRetry from './icon-retry';\n\n/**\n * Constants\n */\nconst ALLOWED_MEDIA_TYPES = [ MEDIA_TYPE_IMAGE, MEDIA_TYPE_VIDEO ];\n\nconst ICON_TYPE = {\n\tPLACEHOLDER: 'placeholder',\n\tRETRY: 'retry',\n};\n\nexport { imageFillStyles } from './media-container.js';\n\nclass MediaContainer extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.updateMediaProgress = this.updateMediaProgress.bind( this );\n\t\tthis.finishMediaUploadWithSuccess =\n\t\t\tthis.finishMediaUploadWithSuccess.bind( this );\n\t\tthis.finishMediaUploadWithFailure =\n\t\t\tthis.finishMediaUploadWithFailure.bind( this );\n\t\tthis.mediaUploadStateReset = this.mediaUploadStateReset.bind( this );\n\t\tthis.onSelectMediaUploadOption =\n\t\t\tthis.onSelectMediaUploadOption.bind( this );\n\t\tthis.onMediaPressed = this.onMediaPressed.bind( this );\n\n\t\tthis.state = {\n\t\t\tisUploadInProgress: false,\n\t\t};\n\t}\n\n\tcomponentDidMount() {\n\t\tconst { mediaId, mediaUrl } = this.props;\n\n\t\t// Make sure we mark any temporary images as failed if they failed while\n\t\t// the editor wasn't open.\n\t\tif ( mediaId && mediaUrl && getProtocol( mediaUrl ) === 'file:' ) {\n\t\t\tmediaUploadSync();\n\t\t}\n\t}\n\n\tonSelectMediaUploadOption( params ) {\n\t\tconst { id, url, type } = params;\n\t\tconst { onSelectMedia } = this.props;\n\n\t\tonSelectMedia( {\n\t\t\tmedia_type: type,\n\t\t\tid,\n\t\t\turl,\n\t\t} );\n\t}\n\n\tonMediaPressed() {\n\t\tconst { isUploadInProgress } = this.state;\n\t\tconst {\n\t\t\tmediaId,\n\t\t\tmediaUrl,\n\t\t\tmediaType,\n\t\t\tisMediaSelected,\n\t\t\tonMediaSelected,\n\t\t} = this.props;\n\n\t\tif ( isUploadInProgress ) {\n\t\t\trequestImageUploadCancelDialog( mediaId );\n\t\t} else if ( mediaId && getProtocol( mediaUrl ) === 'file:' ) {\n\t\t\trequestImageFailedRetryDialog( mediaId );\n\t\t} else if ( mediaType === MEDIA_TYPE_IMAGE && isMediaSelected ) {\n\t\t\trequestImageFullscreenPreview( mediaUrl );\n\t\t} else if ( mediaType === MEDIA_TYPE_IMAGE ) {\n\t\t\tonMediaSelected();\n\t\t}\n\t}\n\n\tgetIcon( iconType ) {\n\t\tconst { mediaType, getStylesFromColorScheme } = this.props;\n\t\tlet iconStyle;\n\t\tswitch ( iconType ) {\n\t\t\tcase ICON_TYPE.RETRY:\n\t\t\t\ticonStyle =\n\t\t\t\t\tmediaType === MEDIA_TYPE_IMAGE\n\t\t\t\t\t\t? styles.iconRetry\n\t\t\t\t\t\t: getStylesFromColorScheme(\n\t\t\t\t\t\t\t\tstyles.iconRetryVideo,\n\t\t\t\t\t\t\t\tstyles.iconRetryVideoDark\n\t\t\t\t\t\t );\n\n\t\t\t\treturn <Icon icon={ SvgIconRetry } { ...iconStyle } />;\n\t\t\tcase ICON_TYPE.PLACEHOLDER:\n\t\t\t\ticonStyle = getStylesFromColorScheme(\n\t\t\t\t\tstyles.iconPlaceholder,\n\t\t\t\t\tstyles.iconPlaceholderDark\n\t\t\t\t);\n\t\t\t\tbreak;\n\t\t}\n\t\treturn <Icon icon={ icon } { ...iconStyle } />;\n\t}\n\n\tupdateMediaProgress() {\n\t\tif ( ! this.state.isUploadInProgress ) {\n\t\t\tthis.setState( { isUploadInProgress: true } );\n\t\t}\n\t}\n\n\tfinishMediaUploadWithSuccess( payload ) {\n\t\tconst { onMediaUpdate } = this.props;\n\n\t\tonMediaUpdate( {\n\t\t\tid: payload.mediaServerId,\n\t\t\turl: payload.mediaUrl,\n\t\t} );\n\t\tthis.setState( { isUploadInProgress: false } );\n\t}\n\n\tfinishMediaUploadWithFailure() {\n\t\tthis.setState( { isUploadInProgress: false } );\n\t}\n\n\tmediaUploadStateReset() {\n\t\tconst { onMediaUpdate } = this.props;\n\n\t\tonMediaUpdate( { id: null, url: null } );\n\t\tthis.setState( { isUploadInProgress: false } );\n\t}\n\n\trenderImage( params, openMediaOptions ) {\n\t\tconst { isUploadInProgress } = this.state;\n\t\tconst {\n\t\t\taligmentStyles,\n\t\t\tfocalPoint,\n\t\t\timageFill,\n\t\t\tisMediaSelected,\n\t\t\tisSelected,\n\t\t\tmediaAlt,\n\t\t\tmediaUrl,\n\t\t\tmediaWidth,\n\t\t\tshouldStack,\n\t\t} = this.props;\n\t\tconst { isUploadFailed, retryMessage } = params;\n\t\tconst focalPointValues = ! focalPoint\n\t\t\t? IMAGE_DEFAULT_FOCAL_POINT\n\t\t\t: focalPoint;\n\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={ [\n\t\t\t\t\timageFill && styles.imageWithFocalPoint,\n\t\t\t\t\timageFill &&\n\t\t\t\t\t\tshouldStack && {\n\t\t\t\t\t\t\theight: styles.imageFill.height,\n\t\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t>\n\t\t\t\t<TouchableWithoutFeedback\n\t\t\t\t\taccessible={ ! isSelected }\n\t\t\t\t\tonPress={ this.onMediaPressed }\n\t\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\t>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\timageFill && styles.imageCropped,\n\t\t\t\t\t\t\tstyles.mediaImageContainer,\n\t\t\t\t\t\t\t! isUploadInProgress && aligmentStyles,\n\t\t\t\t\t\t] }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\t\talt={ mediaAlt }\n\t\t\t\t\t\t\tfocalPoint={ imageFill && focalPointValues }\n\t\t\t\t\t\t\tisSelected={ isMediaSelected }\n\t\t\t\t\t\t\tisUploadFailed={ isUploadFailed }\n\t\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\t\tonSelectMediaUploadOption={\n\t\t\t\t\t\t\t\tthis.onSelectMediaUploadOption\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\topenMediaOptions={ openMediaOptions }\n\t\t\t\t\t\t\tretryMessage={ retryMessage }\n\t\t\t\t\t\t\turl={ mediaUrl }\n\t\t\t\t\t\t\twidth={ ! isUploadInProgress && mediaWidth }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t</TouchableWithoutFeedback>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderVideo( params ) {\n\t\tconst {\n\t\t\taligmentStyles,\n\t\t\tmediaUrl,\n\t\t\tisSelected,\n\t\t\tgetStylesFromColorScheme,\n\t\t} = this.props;\n\t\tconst { isUploadInProgress } = this.state;\n\t\tconst { isUploadFailed, retryMessage } = params;\n\t\tconst showVideo =\n\t\t\tisURL( mediaUrl ) && ! isUploadInProgress && ! isUploadFailed;\n\n\t\tconst videoPlaceholderStyles = getStylesFromColorScheme(\n\t\t\tstyles.videoPlaceholder,\n\t\t\tstyles.videoPlaceholderDark\n\t\t);\n\t\tconst retryVideoTextStyles = [\n\t\t\tstyles.uploadFailedText,\n\t\t\tgetStylesFromColorScheme(\n\t\t\t\tstyles.uploadFailedTextVideo,\n\t\t\t\tstyles.uploadFailedTextVideoDark\n\t\t\t),\n\t\t];\n\n\t\treturn (\n\t\t\t<View style={ styles.mediaVideo }>\n\t\t\t\t<TouchableWithoutFeedback\n\t\t\t\t\taccessible={ ! isSelected }\n\t\t\t\t\tonPress={ this.onMediaPressed }\n\t\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\t>\n\t\t\t\t\t<View style={ [ styles.videoContainer, aligmentStyles ] }>\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\tstyles.videoContent,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\taspectRatio: VIDEO_ASPECT_RATIO,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ showVideo && (\n\t\t\t\t\t\t\t\t<View style={ styles.videoPlayer }>\n\t\t\t\t\t\t\t\t\t<VideoPlayer\n\t\t\t\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\t\t\t\tstyle={ styles.video }\n\t\t\t\t\t\t\t\t\t\tsource={ { uri: mediaUrl } }\n\t\t\t\t\t\t\t\t\t\tpaused={ true }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ ! showVideo && (\n\t\t\t\t\t\t\t\t<View style={ videoPlaceholderStyles }>\n\t\t\t\t\t\t\t\t\t<View style={ styles.modalIcon }>\n\t\t\t\t\t\t\t\t\t\t{ isUploadFailed\n\t\t\t\t\t\t\t\t\t\t\t? this.getIcon( ICON_TYPE.RETRY )\n\t\t\t\t\t\t\t\t\t\t\t: this.getIcon(\n\t\t\t\t\t\t\t\t\t\t\t\t\tICON_TYPE.PLACEHOLDER\n\t\t\t\t\t\t\t\t\t\t\t ) }\n\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t{ isUploadFailed && (\n\t\t\t\t\t\t\t\t\t\t<Text style={ retryVideoTextStyles }>\n\t\t\t\t\t\t\t\t\t\t\t{ retryMessage }\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t</TouchableWithoutFeedback>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderContent( params, openMediaOptions ) {\n\t\tconst { mediaType } = this.props;\n\t\tlet mediaElement = null;\n\n\t\tswitch ( mediaType ) {\n\t\t\tcase MEDIA_TYPE_IMAGE:\n\t\t\t\tmediaElement = this.renderImage( params, openMediaOptions );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_TYPE_VIDEO:\n\t\t\t\tmediaElement = this.renderVideo( params );\n\t\t\t\tbreak;\n\t\t}\n\t\treturn mediaElement;\n\t}\n\n\trenderPlaceholder() {\n\t\treturn (\n\t\t\t<MediaPlaceholder\n\t\t\t\ticon={ this.getIcon( ICON_TYPE.PLACEHOLDER ) }\n\t\t\t\tlabels={ {\n\t\t\t\t\ttitle: __( 'Media area' ),\n\t\t\t\t} }\n\t\t\t\tonSelect={ this.onSelectMediaUploadOption }\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tonFocus={ this.props.onFocus }\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { mediaUrl, mediaId, mediaType, onSetOpenPickerRef } = this.props;\n\t\tconst coverUrl = mediaType === MEDIA_TYPE_IMAGE ? mediaUrl : null;\n\n\t\tif ( mediaUrl ) {\n\t\t\treturn (\n\t\t\t\t<MediaUpload\n\t\t\t\t\tisReplacingMedia={ true }\n\t\t\t\t\tonSelect={ this.onSelectMediaUploadOption }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ mediaId }\n\t\t\t\t\trender={ ( { open, getMediaOptions } ) => {\n\t\t\t\t\t\tonSetOpenPickerRef( open );\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ getMediaOptions() }\n\n\t\t\t\t\t\t\t\t<MediaUploadProgress\n\t\t\t\t\t\t\t\t\tcoverUrl={ coverUrl }\n\t\t\t\t\t\t\t\t\tmediaId={ mediaId }\n\t\t\t\t\t\t\t\t\tonUpdateMediaProgress={\n\t\t\t\t\t\t\t\t\t\tthis.updateMediaProgress\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonFinishMediaUploadWithSuccess={\n\t\t\t\t\t\t\t\t\t\tthis.finishMediaUploadWithSuccess\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonFinishMediaUploadWithFailure={\n\t\t\t\t\t\t\t\t\t\tthis.finishMediaUploadWithFailure\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonMediaUploadStateReset={\n\t\t\t\t\t\t\t\t\t\tthis.mediaUploadStateReset\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\trenderContent={ ( params ) => {\n\t\t\t\t\t\t\t\t\t\treturn this.renderContent(\n\t\t\t\t\t\t\t\t\t\t\tparams,\n\t\t\t\t\t\t\t\t\t\t\topen\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\t\treturn this.renderPlaceholder();\n\t}\n}\n\nexport default compose( [ withPreferredColorScheme ] )( MediaContainer );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/media-text/media-container.native.js"],"names":["ALLOWED_MEDIA_TYPES","MEDIA_TYPE_IMAGE","MEDIA_TYPE_VIDEO","ICON_TYPE","PLACEHOLDER","RETRY","MediaContainer","Component","constructor","arguments","updateMediaProgress","bind","finishMediaUploadWithSuccess","finishMediaUploadWithFailure","mediaUploadStateReset","onSelectMediaUploadOption","onMediaPressed","state","isUploadInProgress","componentDidMount","mediaId","mediaUrl","props","params","id","url","type","onSelectMedia","media_type","mediaType","isMediaSelected","onMediaSelected","getIcon","iconType","getStylesFromColorScheme","iconStyle","styles","iconRetry","iconRetryVideo","iconRetryVideoDark","SvgIconRetry","iconPlaceholder","iconPlaceholderDark","icon","setState","payload","onMediaUpdate","mediaServerId","renderImage","openMediaOptions","aligmentStyles","focalPoint","imageFill","isSelected","mediaAlt","mediaWidth","shouldStack","isUploadFailed","retryMessage","focalPointValues","IMAGE_DEFAULT_FOCAL_POINT","imageWithFocalPoint","height","imageCropped","mediaImageContainer","renderVideo","showVideo","videoPlaceholderStyles","videoPlaceholder","videoPlaceholderDark","retryVideoTextStyles","uploadFailedText","uploadFailedTextVideo","uploadFailedTextVideoDark","mediaVideo","videoContainer","videoContent","aspectRatio","VIDEO_ASPECT_RATIO","videoPlayer","video","uri","modalIcon","renderContent","mediaElement","renderPlaceholder","title","onFocus","render","onSetOpenPickerRef","coverUrl","open","getMediaOptions","withPreferredColorScheme"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View, Text, TouchableWithoutFeedback } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tmediaUploadSync,\n\trequestImageFailedRetryDialog,\n\trequestImageUploadCancelDialog,\n\trequestImageFullscreenPreview,\n} from '@wordpress/react-native-bridge';\nimport { Icon, Image, IMAGE_DEFAULT_FOCAL_POINT } from '@wordpress/components';\nimport {\n\tMEDIA_TYPE_IMAGE,\n\tMEDIA_TYPE_VIDEO,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadProgress,\n\tVIDEO_ASPECT_RATIO,\n\tVideoPlayer,\n} from '@wordpress/block-editor';\nimport { Component } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { isURL, getProtocol } from '@wordpress/url';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { media as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport SvgIconRetry from './icon-retry';\n\n/**\n * Constants\n */\nconst ALLOWED_MEDIA_TYPES = [ MEDIA_TYPE_IMAGE, MEDIA_TYPE_VIDEO ];\n\nconst ICON_TYPE = {\n\tPLACEHOLDER: 'placeholder',\n\tRETRY: 'retry',\n};\n\nexport { imageFillStyles } from './media-container.js';\n\nclass MediaContainer extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.updateMediaProgress = this.updateMediaProgress.bind( this );\n\t\tthis.finishMediaUploadWithSuccess =\n\t\t\tthis.finishMediaUploadWithSuccess.bind( this );\n\t\tthis.finishMediaUploadWithFailure =\n\t\t\tthis.finishMediaUploadWithFailure.bind( this );\n\t\tthis.mediaUploadStateReset = this.mediaUploadStateReset.bind( this );\n\t\tthis.onSelectMediaUploadOption =\n\t\t\tthis.onSelectMediaUploadOption.bind( this );\n\t\tthis.onMediaPressed = this.onMediaPressed.bind( this );\n\n\t\tthis.state = {\n\t\t\tisUploadInProgress: false,\n\t\t};\n\t}\n\n\tcomponentDidMount() {\n\t\tconst { mediaId, mediaUrl } = this.props;\n\n\t\t// Make sure we mark any temporary images as failed if they failed while\n\t\t// the editor wasn't open.\n\t\tif ( mediaId && mediaUrl && getProtocol( mediaUrl ) === 'file:' ) {\n\t\t\tmediaUploadSync();\n\t\t}\n\t}\n\n\tonSelectMediaUploadOption( params ) {\n\t\tconst { id, url, type } = params;\n\t\tconst { onSelectMedia } = this.props;\n\n\t\tonSelectMedia( {\n\t\t\tmedia_type: type,\n\t\t\tid,\n\t\t\turl,\n\t\t} );\n\t}\n\n\tonMediaPressed() {\n\t\tconst { isUploadInProgress } = this.state;\n\t\tconst {\n\t\t\tmediaId,\n\t\t\tmediaUrl,\n\t\t\tmediaType,\n\t\t\tisMediaSelected,\n\t\t\tonMediaSelected,\n\t\t} = this.props;\n\n\t\tif ( isUploadInProgress ) {\n\t\t\trequestImageUploadCancelDialog( mediaId );\n\t\t} else if ( mediaId && getProtocol( mediaUrl ) === 'file:' ) {\n\t\t\trequestImageFailedRetryDialog( mediaId );\n\t\t} else if ( mediaType === MEDIA_TYPE_IMAGE && isMediaSelected ) {\n\t\t\trequestImageFullscreenPreview( mediaUrl );\n\t\t} else if ( mediaType === MEDIA_TYPE_IMAGE ) {\n\t\t\tonMediaSelected();\n\t\t}\n\t}\n\n\tgetIcon( iconType ) {\n\t\tconst { mediaType, getStylesFromColorScheme } = this.props;\n\t\tlet iconStyle;\n\t\tswitch ( iconType ) {\n\t\t\tcase ICON_TYPE.RETRY:\n\t\t\t\ticonStyle =\n\t\t\t\t\tmediaType === MEDIA_TYPE_IMAGE\n\t\t\t\t\t\t? styles.iconRetry\n\t\t\t\t\t\t: getStylesFromColorScheme(\n\t\t\t\t\t\t\t\tstyles.iconRetryVideo,\n\t\t\t\t\t\t\t\tstyles.iconRetryVideoDark\n\t\t\t\t\t\t );\n\n\t\t\t\treturn <Icon icon={ SvgIconRetry } { ...iconStyle } />;\n\t\t\tcase ICON_TYPE.PLACEHOLDER:\n\t\t\t\ticonStyle = getStylesFromColorScheme(\n\t\t\t\t\tstyles.iconPlaceholder,\n\t\t\t\t\tstyles.iconPlaceholderDark\n\t\t\t\t);\n\t\t\t\tbreak;\n\t\t}\n\t\treturn <Icon icon={ icon } { ...iconStyle } />;\n\t}\n\n\tupdateMediaProgress() {\n\t\tif ( ! this.state.isUploadInProgress ) {\n\t\t\tthis.setState( { isUploadInProgress: true } );\n\t\t}\n\t}\n\n\tfinishMediaUploadWithSuccess( payload ) {\n\t\tconst { onMediaUpdate } = this.props;\n\n\t\tonMediaUpdate( {\n\t\t\tid: payload.mediaServerId,\n\t\t\turl: payload.mediaUrl,\n\t\t} );\n\t\tthis.setState( { isUploadInProgress: false } );\n\t}\n\n\tfinishMediaUploadWithFailure() {\n\t\tthis.setState( { isUploadInProgress: false } );\n\t}\n\n\tmediaUploadStateReset() {\n\t\tconst { onMediaUpdate } = this.props;\n\n\t\tonMediaUpdate( { id: null, url: null } );\n\t\tthis.setState( { isUploadInProgress: false } );\n\t}\n\n\trenderImage( params, openMediaOptions ) {\n\t\tconst { isUploadInProgress } = this.state;\n\t\tconst {\n\t\t\taligmentStyles,\n\t\t\tfocalPoint,\n\t\t\timageFill,\n\t\t\tisMediaSelected,\n\t\t\tisSelected,\n\t\t\tmediaAlt,\n\t\t\tmediaUrl,\n\t\t\tmediaWidth,\n\t\t\tshouldStack,\n\t\t} = this.props;\n\t\tconst { isUploadFailed, retryMessage } = params;\n\t\tconst focalPointValues = ! focalPoint\n\t\t\t? IMAGE_DEFAULT_FOCAL_POINT\n\t\t\t: focalPoint;\n\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={ [\n\t\t\t\t\timageFill && styles.imageWithFocalPoint,\n\t\t\t\t\timageFill &&\n\t\t\t\t\t\tshouldStack && {\n\t\t\t\t\t\t\theight: styles.imageFill.height,\n\t\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t>\n\t\t\t\t<TouchableWithoutFeedback\n\t\t\t\t\taccessible={ ! isSelected }\n\t\t\t\t\tonPress={ this.onMediaPressed }\n\t\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\t>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\timageFill && styles.imageCropped,\n\t\t\t\t\t\t\tstyles.mediaImageContainer,\n\t\t\t\t\t\t\t! isUploadInProgress && aligmentStyles,\n\t\t\t\t\t\t] }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\t\talt={ mediaAlt }\n\t\t\t\t\t\t\tfocalPoint={ imageFill && focalPointValues }\n\t\t\t\t\t\t\tisSelected={ isMediaSelected }\n\t\t\t\t\t\t\tisUploadFailed={ isUploadFailed }\n\t\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\t\tonSelectMediaUploadOption={\n\t\t\t\t\t\t\t\tthis.onSelectMediaUploadOption\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\topenMediaOptions={ openMediaOptions }\n\t\t\t\t\t\t\tretryMessage={ retryMessage }\n\t\t\t\t\t\t\turl={ mediaUrl }\n\t\t\t\t\t\t\twidth={ ! isUploadInProgress && mediaWidth }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t</TouchableWithoutFeedback>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderVideo( params ) {\n\t\tconst {\n\t\t\taligmentStyles,\n\t\t\tmediaUrl,\n\t\t\tisSelected,\n\t\t\tgetStylesFromColorScheme,\n\t\t} = this.props;\n\t\tconst { isUploadInProgress } = this.state;\n\t\tconst { isUploadFailed, retryMessage } = params;\n\t\tconst showVideo =\n\t\t\tisURL( mediaUrl ) && ! isUploadInProgress && ! isUploadFailed;\n\n\t\tconst videoPlaceholderStyles = getStylesFromColorScheme(\n\t\t\tstyles.videoPlaceholder,\n\t\t\tstyles.videoPlaceholderDark\n\t\t);\n\t\tconst retryVideoTextStyles = [\n\t\t\tstyles.uploadFailedText,\n\t\t\tgetStylesFromColorScheme(\n\t\t\t\tstyles.uploadFailedTextVideo,\n\t\t\t\tstyles.uploadFailedTextVideoDark\n\t\t\t),\n\t\t];\n\n\t\treturn (\n\t\t\t<View style={ styles.mediaVideo }>\n\t\t\t\t<TouchableWithoutFeedback\n\t\t\t\t\taccessible={ ! isSelected }\n\t\t\t\t\tonPress={ this.onMediaPressed }\n\t\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\t>\n\t\t\t\t\t<View style={ [ styles.videoContainer, aligmentStyles ] }>\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\tstyles.videoContent,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\taspectRatio: VIDEO_ASPECT_RATIO,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ showVideo && (\n\t\t\t\t\t\t\t\t<View style={ styles.videoPlayer }>\n\t\t\t\t\t\t\t\t\t<VideoPlayer\n\t\t\t\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\t\t\t\tstyle={ styles.video }\n\t\t\t\t\t\t\t\t\t\tsource={ { uri: mediaUrl } }\n\t\t\t\t\t\t\t\t\t\tpaused={ true }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ ! showVideo && (\n\t\t\t\t\t\t\t\t<View style={ videoPlaceholderStyles }>\n\t\t\t\t\t\t\t\t\t<View style={ styles.modalIcon }>\n\t\t\t\t\t\t\t\t\t\t{ isUploadFailed\n\t\t\t\t\t\t\t\t\t\t\t? this.getIcon( ICON_TYPE.RETRY )\n\t\t\t\t\t\t\t\t\t\t\t: this.getIcon(\n\t\t\t\t\t\t\t\t\t\t\t\t\tICON_TYPE.PLACEHOLDER\n\t\t\t\t\t\t\t\t\t\t\t ) }\n\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t{ isUploadFailed && (\n\t\t\t\t\t\t\t\t\t\t<Text style={ retryVideoTextStyles }>\n\t\t\t\t\t\t\t\t\t\t\t{ retryMessage }\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t</TouchableWithoutFeedback>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderContent( params, openMediaOptions ) {\n\t\tconst { mediaType } = this.props;\n\t\tlet mediaElement = null;\n\n\t\tswitch ( mediaType ) {\n\t\t\tcase MEDIA_TYPE_IMAGE:\n\t\t\t\tmediaElement = this.renderImage( params, openMediaOptions );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_TYPE_VIDEO:\n\t\t\t\tmediaElement = this.renderVideo( params );\n\t\t\t\tbreak;\n\t\t}\n\t\treturn mediaElement;\n\t}\n\n\trenderPlaceholder() {\n\t\treturn (\n\t\t\t<MediaPlaceholder\n\t\t\t\ticon={ this.getIcon( ICON_TYPE.PLACEHOLDER ) }\n\t\t\t\tlabels={ {\n\t\t\t\t\ttitle: __( 'Media area' ),\n\t\t\t\t} }\n\t\t\t\tonSelect={ this.onSelectMediaUploadOption }\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tonFocus={ this.props.onFocus }\n\t\t\t\tclassName={ 'no-block-outline' }\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { mediaUrl, mediaId, mediaType, onSetOpenPickerRef } = this.props;\n\t\tconst coverUrl = mediaType === MEDIA_TYPE_IMAGE ? mediaUrl : null;\n\n\t\tif ( mediaUrl ) {\n\t\t\treturn (\n\t\t\t\t<MediaUpload\n\t\t\t\t\tisReplacingMedia={ true }\n\t\t\t\t\tonSelect={ this.onSelectMediaUploadOption }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ mediaId }\n\t\t\t\t\trender={ ( { open, getMediaOptions } ) => {\n\t\t\t\t\t\tonSetOpenPickerRef( open );\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ getMediaOptions() }\n\n\t\t\t\t\t\t\t\t<MediaUploadProgress\n\t\t\t\t\t\t\t\t\tcoverUrl={ coverUrl }\n\t\t\t\t\t\t\t\t\tmediaId={ mediaId }\n\t\t\t\t\t\t\t\t\tonUpdateMediaProgress={\n\t\t\t\t\t\t\t\t\t\tthis.updateMediaProgress\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonFinishMediaUploadWithSuccess={\n\t\t\t\t\t\t\t\t\t\tthis.finishMediaUploadWithSuccess\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonFinishMediaUploadWithFailure={\n\t\t\t\t\t\t\t\t\t\tthis.finishMediaUploadWithFailure\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonMediaUploadStateReset={\n\t\t\t\t\t\t\t\t\t\tthis.mediaUploadStateReset\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\trenderContent={ ( params ) => {\n\t\t\t\t\t\t\t\t\t\treturn this.renderContent(\n\t\t\t\t\t\t\t\t\t\t\tparams,\n\t\t\t\t\t\t\t\t\t\t\topen\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\t\treturn this.renderPlaceholder();\n\t}\n}\n\nexport default compose( [ withPreferredColorScheme ] )( MediaContainer );\n"]}
@@ -32,25 +32,39 @@ function MissingBlockWarning({
32
32
  originalUndelimitedContent
33
33
  } = attributes;
34
34
  const hasContent = !!originalUndelimitedContent;
35
- const hasHTMLBlock = (0, _data.useSelect)(select => {
35
+ const {
36
+ hasFreeformBlock,
37
+ hasHTMLBlock
38
+ } = (0, _data.useSelect)(select => {
36
39
  const {
37
40
  canInsertBlockType,
38
41
  getBlockRootClientId
39
42
  } = select(_blockEditor.store);
40
- return canInsertBlockType('core/html', getBlockRootClientId(clientId));
43
+ return {
44
+ hasFreeformBlock: canInsertBlockType('core/freeform', getBlockRootClientId(clientId)),
45
+ hasHTMLBlock: canInsertBlockType('core/html', getBlockRootClientId(clientId))
46
+ };
41
47
  }, [clientId]);
42
48
  const actions = [];
43
49
  let messageHTML;
50
+ const convertToHtmlButton = (0, _element.createElement)(_components.Button, {
51
+ key: "convert",
52
+ onClick: convertToHTML,
53
+ variant: "primary"
54
+ }, (0, _i18n.__)('Keep as HTML'));
44
55
 
45
- if (hasContent && hasHTMLBlock) {
56
+ if (hasContent && !hasFreeformBlock && !originalName) {
57
+ if (hasHTMLBlock) {
58
+ messageHTML = (0, _i18n.__)('It appears you are trying to use the deprecated Classic block. You can leave this block intact, convert its content to a Custom HTML block, or remove it entirely. Alternatively, you can refresh the page to use the Classic block.');
59
+ actions.push(convertToHtmlButton);
60
+ } else {
61
+ messageHTML = (0, _i18n.__)('It appears you are trying to use the deprecated Classic block. You can leave this block intact, or remove it entirely. Alternatively, you can refresh the page to use the Classic block.');
62
+ }
63
+ } else if (hasContent && hasHTMLBlock) {
46
64
  messageHTML = (0, _i18n.sprintf)(
47
65
  /* translators: %s: block name */
48
66
  (0, _i18n.__)('Your site doesn’t include support for the "%s" block. You can leave this block intact, convert its content to a Custom HTML block, or remove it entirely.'), originalName);
49
- actions.push((0, _element.createElement)(_components.Button, {
50
- key: "convert",
51
- onClick: convertToHTML,
52
- variant: "primary"
53
- }, (0, _i18n.__)('Keep as HTML')));
67
+ actions.push(convertToHtmlButton);
54
68
  } else {
55
69
  messageHTML = (0, _i18n.sprintf)(
56
70
  /* translators: %s: block name */
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/missing/edit.js"],"names":["MissingBlockWarning","attributes","convertToHTML","clientId","originalName","originalUndelimitedContent","hasContent","hasHTMLBlock","select","canInsertBlockType","getBlockRootClientId","blockEditorStore","actions","messageHTML","push","className","MissingEdit","dispatch","replaceBlock","content"],"mappings":";;;;;;;AAIA;;AADA;;AAEA;;AACA;;AACA;;AACA;;AAKA;;AAbA;AACA;AACA;AAaA,SAASA,mBAAT,CAA8B;AAAEC,EAAAA,UAAF;AAAcC,EAAAA,aAAd;AAA6BC,EAAAA;AAA7B,CAA9B,EAAwE;AACvE,QAAM;AAAEC,IAAAA,YAAF;AAAgBC,IAAAA;AAAhB,MAA+CJ,UAArD;AACA,QAAMK,UAAU,GAAG,CAAC,CAAED,0BAAtB;AACA,QAAME,YAAY,GAAG,qBAClBC,MAAF,IAAc;AACb,UAAM;AAAEC,MAAAA,kBAAF;AAAsBC,MAAAA;AAAtB,QACLF,MAAM,CAAEG,kBAAF,CADP;AAGA,WAAOF,kBAAkB,CACxB,WADwB,EAExBC,oBAAoB,CAAEP,QAAF,CAFI,CAAzB;AAIA,GATmB,EAUpB,CAAEA,QAAF,CAVoB,CAArB;AAaA,QAAMS,OAAO,GAAG,EAAhB;AACA,MAAIC,WAAJ;;AACA,MAAKP,UAAU,IAAIC,YAAnB,EAAkC;AACjCM,IAAAA,WAAW,GAAG;AACb;AACA,kBACC,2JADD,CAFa,EAKbT,YALa,CAAd;AAOAQ,IAAAA,OAAO,CAACE,IAAR,CACC,4BAAC,kBAAD;AAAQ,MAAA,GAAG,EAAC,SAAZ;AAAsB,MAAA,OAAO,EAAGZ,aAAhC;AAAgD,MAAA,OAAO,EAAC;AAAxD,OACG,cAAI,cAAJ,CADH,CADD;AAKA,GAbD,MAaO;AACNW,IAAAA,WAAW,GAAG;AACb;AACA,kBACC,8GADD,CAFa,EAKbT,YALa,CAAd;AAOA;;AAED,SACC,wCAAU,gCAAe;AAAEW,MAAAA,SAAS,EAAE;AAAb,KAAf;AAAV,KACC,4BAAC,oBAAD;AAAS,IAAA,OAAO,EAAGH;AAAnB,KAA+BC,WAA/B,CADD,EAEC,4BAAC,gBAAD,QAAW,mBAAUR,0BAAV,CAAX,CAFD,CADD;AAMA;;AAED,MAAMW,WAAW,GAAG,wBAAc,CAAEC,QAAF,EAAY;AAAEd,EAAAA,QAAF;AAAYF,EAAAA;AAAZ,CAAZ,KAA0C;AAC3E,QAAM;AAAEiB,IAAAA;AAAF,MAAmBD,QAAQ,CAAEN,kBAAF,CAAjC;AACA,SAAO;AACNT,IAAAA,aAAa,GAAG;AACfgB,MAAAA,YAAY,CACXf,QADW,EAEX,yBAAa,WAAb,EAA0B;AACzBgB,QAAAA,OAAO,EAAElB,UAAU,CAACI;AADK,OAA1B,CAFW,CAAZ;AAMA;;AARK,GAAP;AAUA,CAZmB,EAYfL,mBAZe,CAApB;eAcegB,W","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { RawHTML } from '@wordpress/element';\nimport { Button } from '@wordpress/components';\nimport { createBlock } from '@wordpress/blocks';\nimport { withDispatch, useSelect } from '@wordpress/data';\nimport {\n\tWarning,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { safeHTML } from '@wordpress/dom';\n\nfunction MissingBlockWarning( { attributes, convertToHTML, clientId } ) {\n\tconst { originalName, originalUndelimitedContent } = attributes;\n\tconst hasContent = !! originalUndelimitedContent;\n\tconst hasHTMLBlock = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canInsertBlockType, getBlockRootClientId } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\treturn canInsertBlockType(\n\t\t\t\t'core/html',\n\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst actions = [];\n\tlet messageHTML;\n\tif ( hasContent && hasHTMLBlock ) {\n\t\tmessageHTML = sprintf(\n\t\t\t/* translators: %s: block name */\n\t\t\t__(\n\t\t\t\t'Your site doesn’t include support for the \"%s\" block. You can leave this block intact, convert its content to a Custom HTML block, or remove it entirely.'\n\t\t\t),\n\t\t\toriginalName\n\t\t);\n\t\tactions.push(\n\t\t\t<Button key=\"convert\" onClick={ convertToHTML } variant=\"primary\">\n\t\t\t\t{ __( 'Keep as HTML' ) }\n\t\t\t</Button>\n\t\t);\n\t} else {\n\t\tmessageHTML = sprintf(\n\t\t\t/* translators: %s: block name */\n\t\t\t__(\n\t\t\t\t'Your site doesn’t include support for the \"%s\" block. You can leave this block intact or remove it entirely.'\n\t\t\t),\n\t\t\toriginalName\n\t\t);\n\t}\n\n\treturn (\n\t\t<div { ...useBlockProps( { className: 'has-warning' } ) }>\n\t\t\t<Warning actions={ actions }>{ messageHTML }</Warning>\n\t\t\t<RawHTML>{ safeHTML( originalUndelimitedContent ) }</RawHTML>\n\t\t</div>\n\t);\n}\n\nconst MissingEdit = withDispatch( ( dispatch, { clientId, attributes } ) => {\n\tconst { replaceBlock } = dispatch( blockEditorStore );\n\treturn {\n\t\tconvertToHTML() {\n\t\t\treplaceBlock(\n\t\t\t\tclientId,\n\t\t\t\tcreateBlock( 'core/html', {\n\t\t\t\t\tcontent: attributes.originalUndelimitedContent,\n\t\t\t\t} )\n\t\t\t);\n\t\t},\n\t};\n} )( MissingBlockWarning );\n\nexport default MissingEdit;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/missing/edit.js"],"names":["MissingBlockWarning","attributes","convertToHTML","clientId","originalName","originalUndelimitedContent","hasContent","hasFreeformBlock","hasHTMLBlock","select","canInsertBlockType","getBlockRootClientId","blockEditorStore","actions","messageHTML","convertToHtmlButton","push","className","MissingEdit","dispatch","replaceBlock","content"],"mappings":";;;;;;;AAIA;;AADA;;AAEA;;AACA;;AACA;;AACA;;AAKA;;AAbA;AACA;AACA;AAaA,SAASA,mBAAT,CAA8B;AAAEC,EAAAA,UAAF;AAAcC,EAAAA,aAAd;AAA6BC,EAAAA;AAA7B,CAA9B,EAAwE;AACvE,QAAM;AAAEC,IAAAA,YAAF;AAAgBC,IAAAA;AAAhB,MAA+CJ,UAArD;AACA,QAAMK,UAAU,GAAG,CAAC,CAAED,0BAAtB;AACA,QAAM;AAAEE,IAAAA,gBAAF;AAAoBC,IAAAA;AAApB,MAAqC,qBACxCC,MAAF,IAAc;AACb,UAAM;AAAEC,MAAAA,kBAAF;AAAsBC,MAAAA;AAAtB,QACLF,MAAM,CAAEG,kBAAF,CADP;AAGA,WAAO;AACNL,MAAAA,gBAAgB,EAAEG,kBAAkB,CACnC,eADmC,EAEnCC,oBAAoB,CAAER,QAAF,CAFe,CAD9B;AAKNK,MAAAA,YAAY,EAAEE,kBAAkB,CAC/B,WAD+B,EAE/BC,oBAAoB,CAAER,QAAF,CAFW;AAL1B,KAAP;AAUA,GAfyC,EAgB1C,CAAEA,QAAF,CAhB0C,CAA3C;AAmBA,QAAMU,OAAO,GAAG,EAAhB;AACA,MAAIC,WAAJ;AAEA,QAAMC,mBAAmB,GACxB,4BAAC,kBAAD;AAAQ,IAAA,GAAG,EAAC,SAAZ;AAAsB,IAAA,OAAO,EAAGb,aAAhC;AAAgD,IAAA,OAAO,EAAC;AAAxD,KACG,cAAI,cAAJ,CADH,CADD;;AAMA,MAAKI,UAAU,IAAI,CAAEC,gBAAhB,IAAoC,CAAEH,YAA3C,EAA0D;AACzD,QAAKI,YAAL,EAAoB;AACnBM,MAAAA,WAAW,GAAG,cACb,sOADa,CAAd;AAGAD,MAAAA,OAAO,CAACG,IAAR,CAAcD,mBAAd;AACA,KALD,MAKO;AACND,MAAAA,WAAW,GAAG,cACb,0LADa,CAAd;AAGA;AACD,GAXD,MAWO,IAAKR,UAAU,IAAIE,YAAnB,EAAkC;AACxCM,IAAAA,WAAW,GAAG;AACb;AACA,kBACC,2JADD,CAFa,EAKbV,YALa,CAAd;AAOAS,IAAAA,OAAO,CAACG,IAAR,CAAcD,mBAAd;AACA,GATM,MASA;AACND,IAAAA,WAAW,GAAG;AACb;AACA,kBACC,8GADD,CAFa,EAKbV,YALa,CAAd;AAOA;;AAED,SACC,wCAAU,gCAAe;AAAEa,MAAAA,SAAS,EAAE;AAAb,KAAf;AAAV,KACC,4BAAC,oBAAD;AAAS,IAAA,OAAO,EAAGJ;AAAnB,KAA+BC,WAA/B,CADD,EAEC,4BAAC,gBAAD,QAAW,mBAAUT,0BAAV,CAAX,CAFD,CADD;AAMA;;AAED,MAAMa,WAAW,GAAG,wBAAc,CAAEC,QAAF,EAAY;AAAEhB,EAAAA,QAAF;AAAYF,EAAAA;AAAZ,CAAZ,KAA0C;AAC3E,QAAM;AAAEmB,IAAAA;AAAF,MAAmBD,QAAQ,CAAEP,kBAAF,CAAjC;AACA,SAAO;AACNV,IAAAA,aAAa,GAAG;AACfkB,MAAAA,YAAY,CACXjB,QADW,EAEX,yBAAa,WAAb,EAA0B;AACzBkB,QAAAA,OAAO,EAAEpB,UAAU,CAACI;AADK,OAA1B,CAFW,CAAZ;AAMA;;AARK,GAAP;AAUA,CAZmB,EAYfL,mBAZe,CAApB;eAcekB,W","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { RawHTML } from '@wordpress/element';\nimport { Button } from '@wordpress/components';\nimport { createBlock } from '@wordpress/blocks';\nimport { withDispatch, useSelect } from '@wordpress/data';\nimport {\n\tWarning,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { safeHTML } from '@wordpress/dom';\n\nfunction MissingBlockWarning( { attributes, convertToHTML, clientId } ) {\n\tconst { originalName, originalUndelimitedContent } = attributes;\n\tconst hasContent = !! originalUndelimitedContent;\n\tconst { hasFreeformBlock, hasHTMLBlock } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canInsertBlockType, getBlockRootClientId } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\thasFreeformBlock: canInsertBlockType(\n\t\t\t\t\t'core/freeform',\n\t\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t\t),\n\t\t\t\thasHTMLBlock: canInsertBlockType(\n\t\t\t\t\t'core/html',\n\t\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst actions = [];\n\tlet messageHTML;\n\n\tconst convertToHtmlButton = (\n\t\t<Button key=\"convert\" onClick={ convertToHTML } variant=\"primary\">\n\t\t\t{ __( 'Keep as HTML' ) }\n\t\t</Button>\n\t);\n\n\tif ( hasContent && ! hasFreeformBlock && ! originalName ) {\n\t\tif ( hasHTMLBlock ) {\n\t\t\tmessageHTML = __(\n\t\t\t\t'It appears you are trying to use the deprecated Classic block. You can leave this block intact, convert its content to a Custom HTML block, or remove it entirely. Alternatively, you can refresh the page to use the Classic block.'\n\t\t\t);\n\t\t\tactions.push( convertToHtmlButton );\n\t\t} else {\n\t\t\tmessageHTML = __(\n\t\t\t\t'It appears you are trying to use the deprecated Classic block. You can leave this block intact, or remove it entirely. Alternatively, you can refresh the page to use the Classic block.'\n\t\t\t);\n\t\t}\n\t} else if ( hasContent && hasHTMLBlock ) {\n\t\tmessageHTML = sprintf(\n\t\t\t/* translators: %s: block name */\n\t\t\t__(\n\t\t\t\t'Your site doesn’t include support for the \"%s\" block. You can leave this block intact, convert its content to a Custom HTML block, or remove it entirely.'\n\t\t\t),\n\t\t\toriginalName\n\t\t);\n\t\tactions.push( convertToHtmlButton );\n\t} else {\n\t\tmessageHTML = sprintf(\n\t\t\t/* translators: %s: block name */\n\t\t\t__(\n\t\t\t\t'Your site doesn’t include support for the \"%s\" block. You can leave this block intact or remove it entirely.'\n\t\t\t),\n\t\t\toriginalName\n\t\t);\n\t}\n\n\treturn (\n\t\t<div { ...useBlockProps( { className: 'has-warning' } ) }>\n\t\t\t<Warning actions={ actions }>{ messageHTML }</Warning>\n\t\t\t<RawHTML>{ safeHTML( originalUndelimitedContent ) }</RawHTML>\n\t\t</div>\n\t);\n}\n\nconst MissingEdit = withDispatch( ( dispatch, { clientId, attributes } ) => {\n\tconst { replaceBlock } = dispatch( blockEditorStore );\n\treturn {\n\t\tconvertToHTML() {\n\t\t\treplaceBlock(\n\t\t\t\tclientId,\n\t\t\t\tcreateBlock( 'core/html', {\n\t\t\t\t\tcontent: attributes.originalUndelimitedContent,\n\t\t\t\t} )\n\t\t\t);\n\t\t},\n\t};\n} )( MissingBlockWarning );\n\nexport default MissingEdit;\n"]}
@@ -91,7 +91,7 @@ class UnsupportedBlockEdit extends _element.Component {
91
91
 
92
92
  renderHelpIcon() {
93
93
  const infoIconStyle = this.props.getStylesFromColorScheme(_style.default.infoIcon, _style.default.infoIconDark);
94
- return (0, _element.createElement)(_reactNative.TouchableHighlight, {
94
+ return (0, _element.createElement)(_reactNative.TouchableOpacity, {
95
95
  onPress: this.onHelpButtonPressed,
96
96
  style: _style.default.helpIconContainer,
97
97
  accessibilityLabel: (0, _i18n.__)('Help button'),
@@ -101,7 +101,7 @@ class UnsupportedBlockEdit extends _element.Component {
101
101
  className: "unsupported-icon-help",
102
102
  label: (0, _i18n.__)('Help icon'),
103
103
  icon: _icons.help,
104
- color: infoIconStyle.color
104
+ fill: infoIconStyle.color
105
105
  }));
106
106
  }
107
107
 
@@ -221,13 +221,15 @@ class UnsupportedBlockEdit extends _element.Component {
221
221
  onPress: this.toggleSheet
222
222
  }, (0, _element.createElement)(_reactNative.View, {
223
223
  style: getStylesFromColorScheme(_style.default.unsupportedBlock, _style.default.unsupportedBlockDark)
224
- }, this.renderHelpIcon(), (0, _element.createElement)(_components.Icon, {
224
+ }, this.renderHelpIcon(), (0, _element.createElement)(_reactNative.View, {
225
+ style: _style.default.unsupportedBlockHeader
226
+ }, (0, _element.createElement)(_components.Icon, {
225
227
  className: iconClassName,
226
228
  icon: icon && icon.src ? icon.src : icon,
227
- color: iconStyle.color
229
+ fill: iconStyle.color
228
230
  }), (0, _element.createElement)(_reactNative.Text, {
229
231
  style: titleStyle
230
- }, title), subtitle, this.renderSheet(title, originalName)));
232
+ }, title)), subtitle, this.renderSheet(title, originalName)));
231
233
  }
232
234
 
233
235
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/missing/edit.native.js"],"names":["UBE_INCOMPATIBLE_BLOCKS","I18N_BLOCK_SCHEMA_TITLE","UnsupportedBlockEdit","Component","constructor","props","state","showHelp","toggleSheet","bind","closeSheet","requestFallback","onHelpButtonPressed","setState","componentWillUnmount","timeout","clearTimeout","getTitle","originalName","attributes","blockType","coreBlocks","title","metadata","textdomain","renderHelpIcon","infoIconStyle","getStylesFromColorScheme","styles","infoIcon","infoIconDark","helpIconContainer","help","color","isSelected","selectBlock","canEnableUnsupportedBlockEditor","isUnsupportedBlockEditorSupported","sendButtonPressMessage","sendFallbackMessage","renderSheet","blockTitle","blockName","clientId","isEditableInUnsupportedBlockEditor","infoTextStyle","infoText","infoTextDark","infoTitleStyle","infoTitle","infoTitleDark","infoDescriptionStyle","infoDescription","infoDescriptionDark","infoSheetIconStyle","infoSheetIcon","infoSheetIconDark","titleFormat","missingBlockDetail","missingBlockActionButton","actionButtonStyle","actionButton","actionButtonDark","setTimeout","content","originalContent","actionButtons","missingBlockAlertActionButton","infoContainer","size","render","preferredColorScheme","titleStyle","unsupportedBlockMessage","unsupportedBlockMessageDark","subTitleStyle","unsupportedBlockSubtitle","unsupportedBlockSubtitleDark","subtitle","icon","settings","plugins","iconStyle","unsupportedBlockIcon","unsupportedBlockIconDark","iconClassName","unsupportedBlock","unsupportedBlockDark","src","select","capabilities","blockEditorStore","getSettings","unsupportedBlockEditor","includes","dispatch","ownProps","withPreferredColorScheme"],"mappings":";;;;;;;;;AAsBA;;AAnBA;;AAUA;;AAKA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AAhCA;AACA;AACA;;AAQA;AACA;AACA;;AAiBA;AACA;AACA;AAGA;AACA,MAAMA,uBAAuB,GAAG,CAAE,YAAF,CAAhC;AACA,MAAMC,uBAAuB,GAAG,aAAhC;;AAEO,MAAMC,oBAAN,SAAmCC,kBAAnC,CAA6C;AACnDC,EAAAA,WAAW,CAAEC,KAAF,EAAU;AACpB,UAAOA,KAAP;AACA,SAAKC,KAAL,GAAa;AAAEC,MAAAA,QAAQ,EAAE;AAAZ,KAAb;AACA,SAAKC,WAAL,GAAmB,KAAKA,WAAL,CAAiBC,IAAjB,CAAuB,IAAvB,CAAnB;AACA,SAAKC,UAAL,GAAkB,KAAKA,UAAL,CAAgBD,IAAhB,CAAsB,IAAtB,CAAlB;AACA,SAAKE,eAAL,GAAuB,KAAKA,eAAL,CAAqBF,IAArB,CAA2B,IAA3B,CAAvB;AACA,SAAKG,mBAAL,GAA2B,KAAKA,mBAAL,CAAyBH,IAAzB,CAA+B,IAA/B,CAA3B;AACA;;AAEDD,EAAAA,WAAW,GAAG;AACb,SAAKK,QAAL,CAAe;AACdN,MAAAA,QAAQ,EAAE,CAAE,KAAKD,KAAL,CAAWC;AADT,KAAf;AAGA;;AAEDG,EAAAA,UAAU,GAAG;AACZ,SAAKG,QAAL,CAAe;AACdN,MAAAA,QAAQ,EAAE;AADI,KAAf;AAGA;;AAEDO,EAAAA,oBAAoB,GAAG;AACtB,QAAK,KAAKC,OAAV,EAAoB;AACnBC,MAAAA,YAAY,CAAE,KAAKD,OAAP,CAAZ;AACA;AACD;;AAEDE,EAAAA,QAAQ,GAAG;AACV,UAAM;AAAEC,MAAAA;AAAF,QAAmB,KAAKb,KAAL,CAAWc,UAApC;AACA,UAAMC,SAAS,GAAGC,yBAAYH,YAAZ,CAAlB;AACA,UAAMI,KAAK,GAAGF,SAAS,EAAEG,QAAX,CAAoBD,KAAlC;AACA,UAAME,UAAU,GAAGJ,SAAS,EAAEG,QAAX,CAAoBC,UAAvC;AAEA,WAAOF,KAAK,IAAIE,UAAT,GACJ;AACA,kBAAIF,KAAJ,EAAWrB,uBAAX,EAAoCuB,UAApC,CAFI,GAGJN,YAHH;AAIA;;AAEDO,EAAAA,cAAc,GAAG;AAChB,UAAMC,aAAa,GAAG,KAAKrB,KAAL,CAAWsB,wBAAX,CACrBC,eAAOC,QADc,EAErBD,eAAOE,YAFc,CAAtB;AAKA,WACC,4BAAC,+BAAD;AACC,MAAA,OAAO,EAAG,KAAKlB,mBADhB;AAEC,MAAA,KAAK,EAAGgB,eAAOG,iBAFhB;AAGC,MAAA,kBAAkB,EAAG,cAAI,aAAJ,CAHtB;AAIC,MAAA,iBAAiB,EAAG,QAJrB;AAKC,MAAA,iBAAiB,EAAG,cAAI,uBAAJ;AALrB,OAOC,4BAAC,gBAAD;AACC,MAAA,SAAS,EAAC,uBADX;AAEC,MAAA,KAAK,EAAG,cAAI,WAAJ,CAFT;AAGC,MAAA,IAAI,EAAGC,WAHR;AAIC,MAAA,KAAK,EAAGN,aAAa,CAACO;AAJvB,MAPD,CADD;AAgBA;;AAEDrB,EAAAA,mBAAmB,GAAG;AACrB,QAAK,CAAE,KAAKP,KAAL,CAAW6B,UAAlB,EAA+B;AAC9B,WAAK7B,KAAL,CAAW8B,WAAX;AACA;;AACD,SAAK3B,WAAL;AACA;;AAEDG,EAAAA,eAAe,GAAG;AACjB,QACC,KAAKN,KAAL,CAAW+B,+BAAX,IACA,KAAK/B,KAAL,CAAWgC,iCAAX,KAAiD,KAFlD,EAGE;AACD,WAAK7B,WAAL;AACA,WAAKK,QAAL,CAAe;AAAEyB,QAAAA,sBAAsB,EAAE;AAA1B,OAAf;AACA,KAND,MAMO;AACN,WAAK9B,WAAL;AACA,WAAKK,QAAL,CAAe;AAAE0B,QAAAA,mBAAmB,EAAE;AAAvB,OAAf;AACA;AACD;;AAEDC,EAAAA,WAAW,CAAEC,UAAF,EAAcC,SAAd,EAA0B;AACpC,UAAM;AACLf,MAAAA,wBADK;AAELR,MAAAA,UAFK;AAGLwB,MAAAA,QAHK;AAILN,MAAAA,iCAJK;AAKLD,MAAAA,+BALK;AAMLQ,MAAAA;AANK,QAOF,KAAKvC,KAPT;AAQA,UAAMwC,aAAa,GAAGlB,wBAAwB,CAC7CC,eAAOkB,QADsC,EAE7ClB,eAAOmB,YAFsC,CAA9C;AAIA,UAAMC,cAAc,GAAGrB,wBAAwB,CAC9CC,eAAOqB,SADuC,EAE9CrB,eAAOsB,aAFuC,CAA/C;AAIA,UAAMC,oBAAoB,GAAGxB,wBAAwB,CACpDC,eAAOwB,eAD6C,EAEpDxB,eAAOyB,mBAF6C,CAArD;AAIA,UAAMC,kBAAkB,GAAG3B,wBAAwB,CAClDC,eAAO2B,aAD2C,EAElD3B,eAAO4B,iBAF2C,CAAnD;AAKA;;AACA,UAAMC,WAAW,GAAG,cAAI,6BAAJ,CAApB;AACA,UAAMR,SAAS,GAAG,mBAASQ,WAAT,EAAsBhB,UAAtB,CAAlB;AACA,UAAMiB,kBAAkB,GAAG,yBAC1B,6BAD0B,EAE1B,cAAI,2DAAJ,CAF0B,EAG1BhB,SAH0B,CAA3B;AAKA,UAAMiB,wBAAwB,GAAG,yBAChC,oCADgC,EAEhC,cAAI,uBAAJ,CAFgC,CAAjC;AAKA,UAAMC,iBAAiB,GAAGjC,wBAAwB,CACjDC,eAAOiC,YAD0C,EAEjDjC,eAAOkC,gBAF0C,CAAlD;AAKA,WACC,4BAAC,uBAAD;AACC,MAAA,SAAS,EAAG,KAAKxD,KAAL,CAAWC,QADxB;AAEC,MAAA,UAAU,MAFX;AAGC,MAAA,OAAO,EAAG,KAAKG,UAHhB;AAIC,MAAA,WAAW,EAAG,MAAM;AACnB,YAAK,KAAKJ,KAAL,CAAWiC,mBAAhB,EAAsC;AACrC;AACA;AACA,eAAKxB,OAAL,GAAegD,UAAU,CAAE,MAAM;AAChC;AACA,kBAAMC,OAAO,GACZtB,SAAS,KAAK,eAAd,GACGvB,UAAU,CAAC6C,OADd,GAEG7C,UAAU,CAAC8C,eAHf;AAIA,oEACCD,OADD,EAECrB,QAFD,EAGCD,SAHD,EAICD,UAJD;AAMA,WAZwB,EAYtB,GAZsB,CAAzB;AAaA,eAAK5B,QAAL,CAAe;AAAE0B,YAAAA,mBAAmB,EAAE;AAAvB,WAAf;AACA,SAjBD,MAiBO,IAAK,KAAKjC,KAAL,CAAWgC,sBAAhB,EAAyC;AAC/C,eAAKvB,OAAL,GAAegD,UAAU,CAAE,MAAM;AAChC,kEACCG,iCAAcC,6BADf;AAGA,WAJwB,EAItB,GAJsB,CAAzB;AAKA,eAAKtD,QAAL,CAAe;AAAEyB,YAAAA,sBAAsB,EAAE;AAA1B,WAAf;AACA;AACD;AA9BF,OAgCC,4BAAC,iBAAD;AAAM,MAAA,KAAK,EAAGV,eAAOwC;AAArB,OACC,4BAAC,gBAAD;AACC,MAAA,IAAI,EAAGpC,WADR;AAEC,MAAA,KAAK,EAAGsB,kBAAkB,CAACrB,KAF5B;AAGC,MAAA,IAAI,EAAGL,eAAO2B,aAAP,CAAqBc;AAH7B,MADD,EAMC,4BAAC,iBAAD;AAAM,MAAA,KAAK,EAAG,CAAExB,aAAF,EAAiBG,cAAjB;AAAd,OACGC,SADH,CAND,EASGL,kCAAkC,IACnCc,kBADC,IAEA,4BAAC,iBAAD;AACC,MAAA,KAAK,EAAG,CACPb,aADO,EAEPM,oBAFO;AADT,OAMGO,kBANH,CAXH,CAhCD,EAqDG,CAAErB,iCAAiC,IACpCD,+BADC,KAEDQ,kCAFC,IAGA,qDACC,4BAAC,uBAAD;AACC,MAAA,KAAK,EAAGe,wBADT;AAEC,MAAA,aAAa,EAAC,cAFf;AAGC,MAAA,OAAO,EAAG,KAAKhD,eAHhB;AAIC,MAAA,UAAU,EAAGiD;AAJd,MADD,EAOC,4BAAC,uBAAD;AACC,MAAA,KAAK,EAAG,cAAI,SAAJ,CADT;AAEC,MAAA,aAAa,EAAC,cAFf;AAGC,MAAA,OAAO,EAAG,KAAKpD,WAHhB;AAIC,MAAA,UAAU,EAAGoD;AAJd,MAPD,CAxDH,CADD;AA0EA;;AAEDU,EAAAA,MAAM,GAAG;AACR,UAAM;AAAEpD,MAAAA;AAAF,QAAmB,KAAKb,KAAL,CAAWc,UAApC;AACA,UAAM;AAAEQ,MAAAA,wBAAF;AAA4B4C,MAAAA;AAA5B,QAAqD,KAAKlE,KAAhE;AACA,UAAMe,SAAS,GAAGC,yBAAYH,YAAZ,CAAlB;AAEA,UAAMI,KAAK,GAAG,KAAKL,QAAL,EAAd;AACA,UAAMuD,UAAU,GAAG7C,wBAAwB,CAC1CC,eAAO6C,uBADmC,EAE1C7C,eAAO8C,2BAFmC,CAA3C;AAKA,UAAMC,aAAa,GAAGhD,wBAAwB,CAC7CC,eAAOgD,wBADsC,EAE7ChD,eAAOiD,4BAFsC,CAA9C;AAIA,UAAMC,QAAQ,GACb,4BAAC,iBAAD;AAAM,MAAA,KAAK,EAAGH;AAAd,OAAgC,cAAI,aAAJ,CAAhC,CADD;AAIA,UAAMI,IAAI,GAAG3D,SAAS,GACnB,iCAAqBA,SAAS,CAAC4D,QAAV,CAAmBD,IAAxC,CADmB,GAEnBE,cAFH;AAGA,UAAMC,SAAS,GAAGvD,wBAAwB,CACzCC,eAAOuD,oBADkC,EAEzCvD,eAAOwD,wBAFkC,CAA1C;AAIA,UAAMC,aAAa,GAAG,qBAAqB,GAArB,GAA2Bd,oBAAjD;AACA,WACC,4BAAC,qCAAD;AACC,MAAA,QAAQ,EAAG,CAAE,KAAKlE,KAAL,CAAW6B,UADzB;AAEC,MAAA,kBAAkB,EAAG,cAAI,aAAJ,CAFtB;AAGC,MAAA,iBAAiB,EAAG,QAHrB;AAIC,MAAA,iBAAiB,EAAG,cAAI,uBAAJ,CAJrB;AAKC,MAAA,OAAO,EAAG,KAAK1B;AALhB,OAOC,4BAAC,iBAAD;AACC,MAAA,KAAK,EAAGmB,wBAAwB,CAC/BC,eAAO0D,gBADwB,EAE/B1D,eAAO2D,oBAFwB;AADjC,OAMG,KAAK9D,cAAL,EANH,EAOC,4BAAC,gBAAD;AACC,MAAA,SAAS,EAAG4D,aADb;AAEC,MAAA,IAAI,EAAGN,IAAI,IAAIA,IAAI,CAACS,GAAb,GAAmBT,IAAI,CAACS,GAAxB,GAA8BT,IAFtC;AAGC,MAAA,KAAK,EAAGG,SAAS,CAACjD;AAHnB,MAPD,EAYC,4BAAC,iBAAD;AAAM,MAAA,KAAK,EAAGuC;AAAd,OAA6BlD,KAA7B,CAZD,EAaGwD,QAbH,EAcG,KAAKtC,WAAL,CAAkBlB,KAAlB,EAAyBJ,YAAzB,CAdH,CAPD,CADD;AA0BA;;AAjQkD;;;;eAoQrC,sBAAS,CACvB,sBAAY,CAAEuE,MAAF,EAAU;AAAEtE,EAAAA;AAAF,CAAV,KAA8B;AACzC,QAAM;AAAEuE,IAAAA;AAAF,MAAmBD,MAAM,CAAEE,kBAAF,CAAN,CAA2BC,WAA3B,EAAzB;AACA,SAAO;AACNvD,IAAAA,iCAAiC,EAChCqD,YAAY,EAAEG,sBAAd,KAAyC,IAFpC;AAGNzD,IAAAA,+BAA+B,EAC9BsD,YAAY,EAAEtD,+BAAd,KAAkD,IAJ7C;AAKNQ,IAAAA,kCAAkC,EACjC,CAAE5C,uBAAuB,CAAC8F,QAAxB,CAAkC3E,UAAU,CAACD,YAA7C;AANG,GAAP;AAQA,CAVD,CADuB,EAYvB,wBAAc,CAAE6E,QAAF,EAAYC,QAAZ,KAA0B;AACvC,QAAM;AAAE7D,IAAAA;AAAF,MAAkB4D,QAAQ,CAAEJ,kBAAF,CAAhC;AACA,SAAO;AACNxD,IAAAA,WAAW,GAAG;AACbA,MAAAA,WAAW,CAAE6D,QAAQ,CAACrD,QAAX,CAAX;AACA;;AAHK,GAAP;AAKA,CAPD,CAZuB,EAoBvBsD,iCApBuB,CAAT,EAqBV/F,oBArBU,C","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tView,\n\tText,\n\tTouchableWithoutFeedback,\n\tTouchableHighlight,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\trequestUnsupportedBlockFallback,\n\tsendActionButtonPressedAction,\n\tactionButtons,\n} from '@wordpress/react-native-bridge';\nimport { BottomSheet, Icon, TextControl } from '@wordpress/components';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { coreBlocks } from '@wordpress/block-library';\nimport { normalizeIconObject } from '@wordpress/blocks';\nimport { Component } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { help, plugins } from '@wordpress/icons';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { applyFilters } from '@wordpress/hooks';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\n// Blocks that can't be edited through the Unsupported block editor identified by their name.\nconst UBE_INCOMPATIBLE_BLOCKS = [ 'core/block' ];\nconst I18N_BLOCK_SCHEMA_TITLE = 'block title';\n\nexport class UnsupportedBlockEdit extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\t\tthis.state = { showHelp: false };\n\t\tthis.toggleSheet = this.toggleSheet.bind( this );\n\t\tthis.closeSheet = this.closeSheet.bind( this );\n\t\tthis.requestFallback = this.requestFallback.bind( this );\n\t\tthis.onHelpButtonPressed = this.onHelpButtonPressed.bind( this );\n\t}\n\n\ttoggleSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: ! this.state.showHelp,\n\t\t} );\n\t}\n\n\tcloseSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: false,\n\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.timeout ) {\n\t\t\tclearTimeout( this.timeout );\n\t\t}\n\t}\n\n\tgetTitle() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst blockType = coreBlocks[ originalName ];\n\t\tconst title = blockType?.metadata.title;\n\t\tconst textdomain = blockType?.metadata.textdomain;\n\n\t\treturn title && textdomain\n\t\t\t? // eslint-disable-next-line @wordpress/i18n-no-variables, @wordpress/i18n-text-domain\n\t\t\t _x( title, I18N_BLOCK_SCHEMA_TITLE, textdomain )\n\t\t\t: originalName;\n\t}\n\n\trenderHelpIcon() {\n\t\tconst infoIconStyle = this.props.getStylesFromColorScheme(\n\t\t\tstyles.infoIcon,\n\t\t\tstyles.infoIconDark\n\t\t);\n\n\t\treturn (\n\t\t\t<TouchableHighlight\n\t\t\t\tonPress={ this.onHelpButtonPressed }\n\t\t\t\tstyle={ styles.helpIconContainer }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t>\n\t\t\t\t<Icon\n\t\t\t\t\tclassName=\"unsupported-icon-help\"\n\t\t\t\t\tlabel={ __( 'Help icon' ) }\n\t\t\t\t\ticon={ help }\n\t\t\t\t\tcolor={ infoIconStyle.color }\n\t\t\t\t/>\n\t\t\t</TouchableHighlight>\n\t\t);\n\t}\n\n\tonHelpButtonPressed() {\n\t\tif ( ! this.props.isSelected ) {\n\t\t\tthis.props.selectBlock();\n\t\t}\n\t\tthis.toggleSheet();\n\t}\n\n\trequestFallback() {\n\t\tif (\n\t\t\tthis.props.canEnableUnsupportedBlockEditor &&\n\t\t\tthis.props.isUnsupportedBlockEditorSupported === false\n\t\t) {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendButtonPressMessage: true } );\n\t\t} else {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendFallbackMessage: true } );\n\t\t}\n\t}\n\n\trenderSheet( blockTitle, blockName ) {\n\t\tconst {\n\t\t\tgetStylesFromColorScheme,\n\t\t\tattributes,\n\t\t\tclientId,\n\t\t\tisUnsupportedBlockEditorSupported,\n\t\t\tcanEnableUnsupportedBlockEditor,\n\t\t\tisEditableInUnsupportedBlockEditor,\n\t\t} = this.props;\n\t\tconst infoTextStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoText,\n\t\t\tstyles.infoTextDark\n\t\t);\n\t\tconst infoTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoTitle,\n\t\t\tstyles.infoTitleDark\n\t\t);\n\t\tconst infoDescriptionStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoDescription,\n\t\t\tstyles.infoDescriptionDark\n\t\t);\n\t\tconst infoSheetIconStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoSheetIcon,\n\t\t\tstyles.infoSheetIconDark\n\t\t);\n\n\t\t/* translators: Missing block alert title. %s: The localized block name */\n\t\tconst titleFormat = __( \"'%s' is not fully-supported\" );\n\t\tconst infoTitle = sprintf( titleFormat, blockTitle );\n\t\tconst missingBlockDetail = applyFilters(\n\t\t\t'native.missing_block_detail',\n\t\t\t__( 'We are working hard to add more blocks with each release.' ),\n\t\t\tblockName\n\t\t);\n\t\tconst missingBlockActionButton = applyFilters(\n\t\t\t'native.missing_block_action_button',\n\t\t\t__( 'Edit using web editor' )\n\t\t);\n\n\t\tconst actionButtonStyle = getStylesFromColorScheme(\n\t\t\tstyles.actionButton,\n\t\t\tstyles.actionButtonDark\n\t\t);\n\n\t\treturn (\n\t\t\t<BottomSheet\n\t\t\t\tisVisible={ this.state.showHelp }\n\t\t\t\thideHeader\n\t\t\t\tonClose={ this.closeSheet }\n\t\t\t\tonModalHide={ () => {\n\t\t\t\t\tif ( this.state.sendFallbackMessage ) {\n\t\t\t\t\t\t// On iOS, onModalHide is called when the controller is still part of the hierarchy.\n\t\t\t\t\t\t// A small delay will ensure that the controller has already been removed.\n\t\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\t\t// For the Classic block, the content is kept in the `content` attribute.\n\t\t\t\t\t\t\tconst content =\n\t\t\t\t\t\t\t\tblockName === 'core/freeform'\n\t\t\t\t\t\t\t\t\t? attributes.content\n\t\t\t\t\t\t\t\t\t: attributes.originalContent;\n\t\t\t\t\t\t\trequestUnsupportedBlockFallback(\n\t\t\t\t\t\t\t\tcontent,\n\t\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\t\tblockTitle\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}, 100 );\n\t\t\t\t\t\tthis.setState( { sendFallbackMessage: false } );\n\t\t\t\t\t} else if ( this.state.sendButtonPressMessage ) {\n\t\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\t\tsendActionButtonPressedAction(\n\t\t\t\t\t\t\t\tactionButtons.missingBlockAlertActionButton\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}, 100 );\n\t\t\t\t\t\tthis.setState( { sendButtonPressMessage: false } );\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<View style={ styles.infoContainer }>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ help }\n\t\t\t\t\t\tcolor={ infoSheetIconStyle.color }\n\t\t\t\t\t\tsize={ styles.infoSheetIcon.size }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ [ infoTextStyle, infoTitleStyle ] }>\n\t\t\t\t\t\t{ infoTitle }\n\t\t\t\t\t</Text>\n\t\t\t\t\t{ isEditableInUnsupportedBlockEditor &&\n\t\t\t\t\t\tmissingBlockDetail && (\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\t\tinfoTextStyle,\n\t\t\t\t\t\t\t\t\tinfoDescriptionStyle,\n\t\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ missingBlockDetail }\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t) }\n\t\t\t\t</View>\n\t\t\t\t{ ( isUnsupportedBlockEditorSupported ||\n\t\t\t\t\tcanEnableUnsupportedBlockEditor ) &&\n\t\t\t\t\tisEditableInUnsupportedBlockEditor && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tlabel={ missingBlockActionButton }\n\t\t\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\t\t\tonPress={ this.requestFallback }\n\t\t\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Dismiss' ) }\n\t\t\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\t\t\tonPress={ this.toggleSheet }\n\t\t\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t</BottomSheet>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst { getStylesFromColorScheme, preferredColorScheme } = this.props;\n\t\tconst blockType = coreBlocks[ originalName ];\n\n\t\tconst title = this.getTitle();\n\t\tconst titleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockMessage,\n\t\t\tstyles.unsupportedBlockMessageDark\n\t\t);\n\n\t\tconst subTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockSubtitle,\n\t\t\tstyles.unsupportedBlockSubtitleDark\n\t\t);\n\t\tconst subtitle = (\n\t\t\t<Text style={ subTitleStyle }>{ __( 'Unsupported' ) }</Text>\n\t\t);\n\n\t\tconst icon = blockType\n\t\t\t? normalizeIconObject( blockType.settings.icon )\n\t\t\t: plugins;\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockIcon,\n\t\t\tstyles.unsupportedBlockIconDark\n\t\t);\n\t\tconst iconClassName = 'unsupported-icon' + '-' + preferredColorScheme;\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tdisabled={ ! this.props.isSelected }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t\tonPress={ this.toggleSheet }\n\t\t\t>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ getStylesFromColorScheme(\n\t\t\t\t\t\tstyles.unsupportedBlock,\n\t\t\t\t\t\tstyles.unsupportedBlockDark\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t{ this.renderHelpIcon() }\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName={ iconClassName }\n\t\t\t\t\t\ticon={ icon && icon.src ? icon.src : icon }\n\t\t\t\t\t\tcolor={ iconStyle.color }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ titleStyle }>{ title }</Text>\n\t\t\t\t\t{ subtitle }\n\t\t\t\t\t{ this.renderSheet( title, originalName ) }\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select, { attributes } ) => {\n\t\tconst { capabilities } = select( blockEditorStore ).getSettings();\n\t\treturn {\n\t\t\tisUnsupportedBlockEditorSupported:\n\t\t\t\tcapabilities?.unsupportedBlockEditor === true,\n\t\t\tcanEnableUnsupportedBlockEditor:\n\t\t\t\tcapabilities?.canEnableUnsupportedBlockEditor === true,\n\t\t\tisEditableInUnsupportedBlockEditor:\n\t\t\t\t! UBE_INCOMPATIBLE_BLOCKS.includes( attributes.originalName ),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, ownProps ) => {\n\t\tconst { selectBlock } = dispatch( blockEditorStore );\n\t\treturn {\n\t\t\tselectBlock() {\n\t\t\t\tselectBlock( ownProps.clientId );\n\t\t\t},\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( UnsupportedBlockEdit );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/missing/edit.native.js"],"names":["UBE_INCOMPATIBLE_BLOCKS","I18N_BLOCK_SCHEMA_TITLE","UnsupportedBlockEdit","Component","constructor","props","state","showHelp","toggleSheet","bind","closeSheet","requestFallback","onHelpButtonPressed","setState","componentWillUnmount","timeout","clearTimeout","getTitle","originalName","attributes","blockType","coreBlocks","title","metadata","textdomain","renderHelpIcon","infoIconStyle","getStylesFromColorScheme","styles","infoIcon","infoIconDark","helpIconContainer","help","color","isSelected","selectBlock","canEnableUnsupportedBlockEditor","isUnsupportedBlockEditorSupported","sendButtonPressMessage","sendFallbackMessage","renderSheet","blockTitle","blockName","clientId","isEditableInUnsupportedBlockEditor","infoTextStyle","infoText","infoTextDark","infoTitleStyle","infoTitle","infoTitleDark","infoDescriptionStyle","infoDescription","infoDescriptionDark","infoSheetIconStyle","infoSheetIcon","infoSheetIconDark","titleFormat","missingBlockDetail","missingBlockActionButton","actionButtonStyle","actionButton","actionButtonDark","setTimeout","content","originalContent","actionButtons","missingBlockAlertActionButton","infoContainer","size","render","preferredColorScheme","titleStyle","unsupportedBlockMessage","unsupportedBlockMessageDark","subTitleStyle","unsupportedBlockSubtitle","unsupportedBlockSubtitleDark","subtitle","icon","settings","plugins","iconStyle","unsupportedBlockIcon","unsupportedBlockIconDark","iconClassName","unsupportedBlock","unsupportedBlockDark","unsupportedBlockHeader","src","select","capabilities","blockEditorStore","getSettings","unsupportedBlockEditor","includes","dispatch","ownProps","withPreferredColorScheme"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tView,\n\tText,\n\tTouchableWithoutFeedback,\n\tTouchableOpacity,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\trequestUnsupportedBlockFallback,\n\tsendActionButtonPressedAction,\n\tactionButtons,\n} from '@wordpress/react-native-bridge';\nimport { BottomSheet, Icon, TextControl } from '@wordpress/components';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { coreBlocks } from '@wordpress/block-library';\nimport { normalizeIconObject } from '@wordpress/blocks';\nimport { Component } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { help, plugins } from '@wordpress/icons';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { applyFilters } from '@wordpress/hooks';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\n// Blocks that can't be edited through the Unsupported block editor identified by their name.\nconst UBE_INCOMPATIBLE_BLOCKS = [ 'core/block' ];\nconst I18N_BLOCK_SCHEMA_TITLE = 'block title';\n\nexport class UnsupportedBlockEdit extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\t\tthis.state = { showHelp: false };\n\t\tthis.toggleSheet = this.toggleSheet.bind( this );\n\t\tthis.closeSheet = this.closeSheet.bind( this );\n\t\tthis.requestFallback = this.requestFallback.bind( this );\n\t\tthis.onHelpButtonPressed = this.onHelpButtonPressed.bind( this );\n\t}\n\n\ttoggleSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: ! this.state.showHelp,\n\t\t} );\n\t}\n\n\tcloseSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: false,\n\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.timeout ) {\n\t\t\tclearTimeout( this.timeout );\n\t\t}\n\t}\n\n\tgetTitle() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst blockType = coreBlocks[ originalName ];\n\t\tconst title = blockType?.metadata.title;\n\t\tconst textdomain = blockType?.metadata.textdomain;\n\n\t\treturn title && textdomain\n\t\t\t? // eslint-disable-next-line @wordpress/i18n-no-variables, @wordpress/i18n-text-domain\n\t\t\t _x( title, I18N_BLOCK_SCHEMA_TITLE, textdomain )\n\t\t\t: originalName;\n\t}\n\n\trenderHelpIcon() {\n\t\tconst infoIconStyle = this.props.getStylesFromColorScheme(\n\t\t\tstyles.infoIcon,\n\t\t\tstyles.infoIconDark\n\t\t);\n\n\t\treturn (\n\t\t\t<TouchableOpacity\n\t\t\t\tonPress={ this.onHelpButtonPressed }\n\t\t\t\tstyle={ styles.helpIconContainer }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t>\n\t\t\t\t<Icon\n\t\t\t\t\tclassName=\"unsupported-icon-help\"\n\t\t\t\t\tlabel={ __( 'Help icon' ) }\n\t\t\t\t\ticon={ help }\n\t\t\t\t\tfill={ infoIconStyle.color }\n\t\t\t\t/>\n\t\t\t</TouchableOpacity>\n\t\t);\n\t}\n\n\tonHelpButtonPressed() {\n\t\tif ( ! this.props.isSelected ) {\n\t\t\tthis.props.selectBlock();\n\t\t}\n\t\tthis.toggleSheet();\n\t}\n\n\trequestFallback() {\n\t\tif (\n\t\t\tthis.props.canEnableUnsupportedBlockEditor &&\n\t\t\tthis.props.isUnsupportedBlockEditorSupported === false\n\t\t) {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendButtonPressMessage: true } );\n\t\t} else {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendFallbackMessage: true } );\n\t\t}\n\t}\n\n\trenderSheet( blockTitle, blockName ) {\n\t\tconst {\n\t\t\tgetStylesFromColorScheme,\n\t\t\tattributes,\n\t\t\tclientId,\n\t\t\tisUnsupportedBlockEditorSupported,\n\t\t\tcanEnableUnsupportedBlockEditor,\n\t\t\tisEditableInUnsupportedBlockEditor,\n\t\t} = this.props;\n\t\tconst infoTextStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoText,\n\t\t\tstyles.infoTextDark\n\t\t);\n\t\tconst infoTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoTitle,\n\t\t\tstyles.infoTitleDark\n\t\t);\n\t\tconst infoDescriptionStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoDescription,\n\t\t\tstyles.infoDescriptionDark\n\t\t);\n\t\tconst infoSheetIconStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoSheetIcon,\n\t\t\tstyles.infoSheetIconDark\n\t\t);\n\n\t\t/* translators: Missing block alert title. %s: The localized block name */\n\t\tconst titleFormat = __( \"'%s' is not fully-supported\" );\n\t\tconst infoTitle = sprintf( titleFormat, blockTitle );\n\t\tconst missingBlockDetail = applyFilters(\n\t\t\t'native.missing_block_detail',\n\t\t\t__( 'We are working hard to add more blocks with each release.' ),\n\t\t\tblockName\n\t\t);\n\t\tconst missingBlockActionButton = applyFilters(\n\t\t\t'native.missing_block_action_button',\n\t\t\t__( 'Edit using web editor' )\n\t\t);\n\n\t\tconst actionButtonStyle = getStylesFromColorScheme(\n\t\t\tstyles.actionButton,\n\t\t\tstyles.actionButtonDark\n\t\t);\n\n\t\treturn (\n\t\t\t<BottomSheet\n\t\t\t\tisVisible={ this.state.showHelp }\n\t\t\t\thideHeader\n\t\t\t\tonClose={ this.closeSheet }\n\t\t\t\tonModalHide={ () => {\n\t\t\t\t\tif ( this.state.sendFallbackMessage ) {\n\t\t\t\t\t\t// On iOS, onModalHide is called when the controller is still part of the hierarchy.\n\t\t\t\t\t\t// A small delay will ensure that the controller has already been removed.\n\t\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\t\t// For the Classic block, the content is kept in the `content` attribute.\n\t\t\t\t\t\t\tconst content =\n\t\t\t\t\t\t\t\tblockName === 'core/freeform'\n\t\t\t\t\t\t\t\t\t? attributes.content\n\t\t\t\t\t\t\t\t\t: attributes.originalContent;\n\t\t\t\t\t\t\trequestUnsupportedBlockFallback(\n\t\t\t\t\t\t\t\tcontent,\n\t\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\t\tblockTitle\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}, 100 );\n\t\t\t\t\t\tthis.setState( { sendFallbackMessage: false } );\n\t\t\t\t\t} else if ( this.state.sendButtonPressMessage ) {\n\t\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\t\tsendActionButtonPressedAction(\n\t\t\t\t\t\t\t\tactionButtons.missingBlockAlertActionButton\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}, 100 );\n\t\t\t\t\t\tthis.setState( { sendButtonPressMessage: false } );\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<View style={ styles.infoContainer }>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ help }\n\t\t\t\t\t\tcolor={ infoSheetIconStyle.color }\n\t\t\t\t\t\tsize={ styles.infoSheetIcon.size }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ [ infoTextStyle, infoTitleStyle ] }>\n\t\t\t\t\t\t{ infoTitle }\n\t\t\t\t\t</Text>\n\t\t\t\t\t{ isEditableInUnsupportedBlockEditor &&\n\t\t\t\t\t\tmissingBlockDetail && (\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\t\tinfoTextStyle,\n\t\t\t\t\t\t\t\t\tinfoDescriptionStyle,\n\t\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ missingBlockDetail }\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t) }\n\t\t\t\t</View>\n\t\t\t\t{ ( isUnsupportedBlockEditorSupported ||\n\t\t\t\t\tcanEnableUnsupportedBlockEditor ) &&\n\t\t\t\t\tisEditableInUnsupportedBlockEditor && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tlabel={ missingBlockActionButton }\n\t\t\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\t\t\tonPress={ this.requestFallback }\n\t\t\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Dismiss' ) }\n\t\t\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\t\t\tonPress={ this.toggleSheet }\n\t\t\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t</BottomSheet>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst { getStylesFromColorScheme, preferredColorScheme } = this.props;\n\t\tconst blockType = coreBlocks[ originalName ];\n\n\t\tconst title = this.getTitle();\n\t\tconst titleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockMessage,\n\t\t\tstyles.unsupportedBlockMessageDark\n\t\t);\n\n\t\tconst subTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockSubtitle,\n\t\t\tstyles.unsupportedBlockSubtitleDark\n\t\t);\n\t\tconst subtitle = (\n\t\t\t<Text style={ subTitleStyle }>{ __( 'Unsupported' ) }</Text>\n\t\t);\n\n\t\tconst icon = blockType\n\t\t\t? normalizeIconObject( blockType.settings.icon )\n\t\t\t: plugins;\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockIcon,\n\t\t\tstyles.unsupportedBlockIconDark\n\t\t);\n\t\tconst iconClassName = 'unsupported-icon' + '-' + preferredColorScheme;\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tdisabled={ ! this.props.isSelected }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t\tonPress={ this.toggleSheet }\n\t\t\t>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ getStylesFromColorScheme(\n\t\t\t\t\t\tstyles.unsupportedBlock,\n\t\t\t\t\t\tstyles.unsupportedBlockDark\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t{ this.renderHelpIcon() }\n\t\t\t\t\t<View style={ styles.unsupportedBlockHeader }>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tclassName={ iconClassName }\n\t\t\t\t\t\t\ticon={ icon && icon.src ? icon.src : icon }\n\t\t\t\t\t\t\tfill={ iconStyle.color }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Text style={ titleStyle }>{ title }</Text>\n\t\t\t\t\t</View>\n\t\t\t\t\t{ subtitle }\n\t\t\t\t\t{ this.renderSheet( title, originalName ) }\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select, { attributes } ) => {\n\t\tconst { capabilities } = select( blockEditorStore ).getSettings();\n\t\treturn {\n\t\t\tisUnsupportedBlockEditorSupported:\n\t\t\t\tcapabilities?.unsupportedBlockEditor === true,\n\t\t\tcanEnableUnsupportedBlockEditor:\n\t\t\t\tcapabilities?.canEnableUnsupportedBlockEditor === true,\n\t\t\tisEditableInUnsupportedBlockEditor:\n\t\t\t\t! UBE_INCOMPATIBLE_BLOCKS.includes( attributes.originalName ),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, ownProps ) => {\n\t\tconst { selectBlock } = dispatch( blockEditorStore );\n\t\treturn {\n\t\t\tselectBlock() {\n\t\t\t\tselectBlock( ownProps.clientId );\n\t\t\t},\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( UnsupportedBlockEdit );\n"]}
@@ -3,20 +3,26 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.SELECT_NAVIGATION_MENUS_ARGS = exports.PRIORITIZED_INSERTER_BLOCKS = exports.DEFAULT_BLOCK = exports.ALLOWED_BLOCKS = void 0;
6
+ exports.SELECT_NAVIGATION_MENUS_ARGS = exports.PRIORITIZED_INSERTER_BLOCKS = exports.PRELOADED_NAVIGATION_MENUS_QUERY = exports.DEFAULT_BLOCK = exports.ALLOWED_BLOCKS = void 0;
7
7
  const DEFAULT_BLOCK = {
8
8
  name: 'core/navigation-link'
9
9
  };
10
10
  exports.DEFAULT_BLOCK = DEFAULT_BLOCK;
11
11
  const ALLOWED_BLOCKS = ['core/navigation-link', 'core/search', 'core/social-links', 'core/page-list', 'core/spacer', 'core/home-link', 'core/site-title', 'core/site-logo', 'core/navigation-submenu', 'core/loginout'];
12
12
  exports.ALLOWED_BLOCKS = ALLOWED_BLOCKS;
13
- const PRIORITIZED_INSERTER_BLOCKS = ['core/navigation-link/page', 'core/navigation-link'];
13
+ const PRIORITIZED_INSERTER_BLOCKS = ['core/navigation-link/page', 'core/navigation-link']; // These parameters must be kept aligned with those in
14
+ // lib/compat/wordpress-6.3/navigation-block-preloading.php
15
+ // and
16
+ // edit-site/src/components/sidebar-navigation-screen-navigation-menus/constants.js
17
+
14
18
  exports.PRIORITIZED_INSERTER_BLOCKS = PRIORITIZED_INSERTER_BLOCKS;
15
- const SELECT_NAVIGATION_MENUS_ARGS = ['postType', 'wp_navigation', {
19
+ const PRELOADED_NAVIGATION_MENUS_QUERY = {
16
20
  per_page: 100,
17
21
  status: ['publish', 'draft'],
18
22
  order: 'desc',
19
23
  orderby: 'date'
20
- }];
24
+ };
25
+ exports.PRELOADED_NAVIGATION_MENUS_QUERY = PRELOADED_NAVIGATION_MENUS_QUERY;
26
+ const SELECT_NAVIGATION_MENUS_ARGS = ['postType', 'wp_navigation', PRELOADED_NAVIGATION_MENUS_QUERY];
21
27
  exports.SELECT_NAVIGATION_MENUS_ARGS = SELECT_NAVIGATION_MENUS_ARGS;
22
28
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/constants.js"],"names":["DEFAULT_BLOCK","name","ALLOWED_BLOCKS","PRIORITIZED_INSERTER_BLOCKS","SELECT_NAVIGATION_MENUS_ARGS","per_page","status","order","orderby"],"mappings":";;;;;;AAAO,MAAMA,aAAa,GAAG;AAC5BC,EAAAA,IAAI,EAAE;AADsB,CAAtB;;AAIA,MAAMC,cAAc,GAAG,CAC7B,sBAD6B,EAE7B,aAF6B,EAG7B,mBAH6B,EAI7B,gBAJ6B,EAK7B,aAL6B,EAM7B,gBAN6B,EAO7B,iBAP6B,EAQ7B,gBAR6B,EAS7B,yBAT6B,EAU7B,eAV6B,CAAvB;;AAaA,MAAMC,2BAA2B,GAAG,CAC1C,2BAD0C,EAE1C,sBAF0C,CAApC;;AAKA,MAAMC,4BAA4B,GAAG,CAC3C,UAD2C,EAE3C,eAF2C,EAG3C;AACCC,EAAAA,QAAQ,EAAE,GADX;AAECC,EAAAA,MAAM,EAAE,CAAE,SAAF,EAAa,OAAb,CAFT;AAGCC,EAAAA,KAAK,EAAE,MAHR;AAICC,EAAAA,OAAO,EAAE;AAJV,CAH2C,CAArC","sourcesContent":["export const DEFAULT_BLOCK = {\n\tname: 'core/navigation-link',\n};\n\nexport const ALLOWED_BLOCKS = [\n\t'core/navigation-link',\n\t'core/search',\n\t'core/social-links',\n\t'core/page-list',\n\t'core/spacer',\n\t'core/home-link',\n\t'core/site-title',\n\t'core/site-logo',\n\t'core/navigation-submenu',\n\t'core/loginout',\n];\n\nexport const PRIORITIZED_INSERTER_BLOCKS = [\n\t'core/navigation-link/page',\n\t'core/navigation-link',\n];\n\nexport const SELECT_NAVIGATION_MENUS_ARGS = [\n\t'postType',\n\t'wp_navigation',\n\t{\n\t\tper_page: 100,\n\t\tstatus: [ 'publish', 'draft' ],\n\t\torder: 'desc',\n\t\torderby: 'date',\n\t},\n];\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/constants.js"],"names":["DEFAULT_BLOCK","name","ALLOWED_BLOCKS","PRIORITIZED_INSERTER_BLOCKS","PRELOADED_NAVIGATION_MENUS_QUERY","per_page","status","order","orderby","SELECT_NAVIGATION_MENUS_ARGS"],"mappings":";;;;;;AAAO,MAAMA,aAAa,GAAG;AAC5BC,EAAAA,IAAI,EAAE;AADsB,CAAtB;;AAIA,MAAMC,cAAc,GAAG,CAC7B,sBAD6B,EAE7B,aAF6B,EAG7B,mBAH6B,EAI7B,gBAJ6B,EAK7B,aAL6B,EAM7B,gBAN6B,EAO7B,iBAP6B,EAQ7B,gBAR6B,EAS7B,yBAT6B,EAU7B,eAV6B,CAAvB;;AAaA,MAAMC,2BAA2B,GAAG,CAC1C,2BAD0C,EAE1C,sBAF0C,CAApC,C,CAKP;AACA;AACA;AACA;;;AACO,MAAMC,gCAAgC,GAAG;AAC/CC,EAAAA,QAAQ,EAAE,GADqC;AAE/CC,EAAAA,MAAM,EAAE,CAAE,SAAF,EAAa,OAAb,CAFuC;AAG/CC,EAAAA,KAAK,EAAE,MAHwC;AAI/CC,EAAAA,OAAO,EAAE;AAJsC,CAAzC;;AAOA,MAAMC,4BAA4B,GAAG,CAC3C,UAD2C,EAE3C,eAF2C,EAG3CL,gCAH2C,CAArC","sourcesContent":["export const DEFAULT_BLOCK = {\n\tname: 'core/navigation-link',\n};\n\nexport const ALLOWED_BLOCKS = [\n\t'core/navigation-link',\n\t'core/search',\n\t'core/social-links',\n\t'core/page-list',\n\t'core/spacer',\n\t'core/home-link',\n\t'core/site-title',\n\t'core/site-logo',\n\t'core/navigation-submenu',\n\t'core/loginout',\n];\n\nexport const PRIORITIZED_INSERTER_BLOCKS = [\n\t'core/navigation-link/page',\n\t'core/navigation-link',\n];\n\n// These parameters must be kept aligned with those in\n// lib/compat/wordpress-6.3/navigation-block-preloading.php\n// and\n// edit-site/src/components/sidebar-navigation-screen-navigation-menus/constants.js\nexport const PRELOADED_NAVIGATION_MENUS_QUERY = {\n\tper_page: 100,\n\tstatus: [ 'publish', 'draft' ],\n\torder: 'desc',\n\torderby: 'date',\n};\n\nexport const SELECT_NAVIGATION_MENUS_ARGS = [\n\t'postType',\n\t'wp_navigation',\n\tPRELOADED_NAVIGATION_MENUS_QUERY,\n];\n"]}
@@ -182,7 +182,7 @@ function Navigation({
182
182
  convert: convertClassicMenu,
183
183
  status: classicMenuConversionStatus,
184
184
  error: classicMenuConversionError
185
- } = (0, _useConvertClassicMenuToBlockMenu.default)(clientId);
185
+ } = (0, _useConvertClassicMenuToBlockMenu.default)(createNavigationMenu);
186
186
  const isConvertingClassicMenu = classicMenuConversionStatus === _useConvertClassicMenuToBlockMenu.CLASSIC_MENU_CONVERSION_PENDING;
187
187
  const handleUpdateMenu = (0, _element.useCallback)((menuId, options = {
188
188
  focusNavigationBlock: false
@@ -206,7 +206,7 @@ function Navigation({
206
206
  const hasUnsavedBlocks = hasUncontrolledInnerBlocks && !isEntityAvailable;
207
207
  const {
208
208
  getNavigationFallbackId
209
- } = (0, _data.useSelect)(_coreData.store);
209
+ } = (0, _lockUnlock.unlock)((0, _data.useSelect)(_coreData.store));
210
210
  const navigationFallbackId = !(ref || hasUnsavedBlocks) ? getNavigationFallbackId() : null;
211
211
  (0, _element.useEffect)(() => {
212
212
  // If:
@@ -360,6 +360,16 @@ function Navigation({
360
360
  const overlayMenuPreviewClasses = (0, _classnames.default)('wp-block-navigation__overlay-menu-preview', {
361
361
  open: overlayMenuPreview
362
362
  });
363
+ const submenuAccessibilityNotice = !showSubmenuIcon && !openSubmenusOnClick ? (0, _i18n.__)('The current menu options offer reduced accessibility for users and are not recommended. Enabling either "Open on Click" or "Show arrow" offers enhanced accessibility by allowing keyboard users to browse submenus selectively.') : '';
364
+ const isFirstRender = (0, _element.useRef)(true); // Don't speak on first render.
365
+
366
+ (0, _element.useEffect)(() => {
367
+ if (!isFirstRender.current && submenuAccessibilityNotice) {
368
+ (0, _a11y.speak)(submenuAccessibilityNotice);
369
+ }
370
+
371
+ isFirstRender.current = false;
372
+ }, [submenuAccessibilityNotice]);
363
373
  const colorGradientSettings = (0, _blockEditor.__experimentalUseMultipleOriginColorsAndGradients)();
364
374
  const stylingInspectorControls = (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_blockEditor.InspectorControls, null, hasSubmenuIndicatorSetting && (0, _element.createElement)(_components.PanelBody, {
365
375
  title: (0, _i18n.__)('Display')
@@ -418,7 +428,11 @@ function Navigation({
418
428
  },
419
429
  disabled: attributes.openSubmenusOnClick,
420
430
  label: (0, _i18n.__)('Show arrow')
421
- })))), colorGradientSettings.hasColorsOrGradients && (0, _element.createElement)(_blockEditor.InspectorControls, {
431
+ }), submenuAccessibilityNotice && (0, _element.createElement)("div", null, (0, _element.createElement)(_components.Notice, {
432
+ spokenMessage: null,
433
+ status: "warning",
434
+ isDismissible: false
435
+ }, submenuAccessibilityNotice))))), colorGradientSettings.hasColorsOrGradients && (0, _element.createElement)(_blockEditor.InspectorControls, {
422
436
  group: "color"
423
437
  }, (0, _element.createElement)(_blockEditor.__experimentalColorGradientSettingsDropdown, {
424
438
  __experimentalIsRenderedInSidebar: true,