@wordpress/block-library 8.14.0 → 8.16.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 (365) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/avatar/edit.js +1 -0
  3. package/build/avatar/edit.js.map +1 -1
  4. package/build/avatar/index.js +3 -0
  5. package/build/avatar/index.js.map +1 -1
  6. package/build/block/edit.js +2 -30
  7. package/build/block/edit.js.map +1 -1
  8. package/build/block/index.js +2 -1
  9. package/build/block/index.js.map +1 -1
  10. package/build/buttons/edit.js +2 -2
  11. package/build/buttons/edit.js.map +1 -1
  12. package/build/column/edit.native.js +1 -4
  13. package/build/column/edit.native.js.map +1 -1
  14. package/build/columns/edit.js +1 -0
  15. package/build/columns/edit.js.map +1 -1
  16. package/build/comment-author-avatar/edit.js +1 -0
  17. package/build/comment-author-avatar/edit.js.map +1 -1
  18. package/build/cover/deprecated.js +4 -2
  19. package/build/cover/deprecated.js.map +1 -1
  20. package/build/cover/index.js +2 -1
  21. package/build/cover/index.js.map +1 -1
  22. package/build/embed/embed-placeholder.native.js +37 -13
  23. package/build/embed/embed-placeholder.native.js.map +1 -1
  24. package/build/file/index.js +1 -2
  25. package/build/file/index.js.map +1 -1
  26. package/build/file/inspector.js +1 -0
  27. package/build/file/inspector.js.map +1 -1
  28. package/build/file/view-interactivity.js +23 -0
  29. package/build/file/view-interactivity.js.map +1 -0
  30. package/build/file/view.js +1 -15
  31. package/build/file/view.js.map +1 -1
  32. package/build/footnotes/edit.js +31 -1
  33. package/build/footnotes/edit.js.map +1 -1
  34. package/build/footnotes/format.js +119 -23
  35. package/build/footnotes/format.js.map +1 -1
  36. package/build/footnotes/index.js +45 -4
  37. package/build/footnotes/index.js.map +1 -1
  38. package/build/gallery/edit.js +8 -6
  39. package/build/gallery/edit.js.map +1 -1
  40. package/build/image/deprecated.js +106 -2
  41. package/build/image/deprecated.js.map +1 -1
  42. package/build/image/image.js +2 -2
  43. package/build/image/image.js.map +1 -1
  44. package/build/image/index.js +2 -1
  45. package/build/image/index.js.map +1 -1
  46. package/build/index.js +3 -1
  47. package/build/index.js.map +1 -1
  48. package/build/latest-comments/edit.js +1 -0
  49. package/build/latest-comments/edit.js.map +1 -1
  50. package/build/latest-posts/edit.js +2 -0
  51. package/build/latest-posts/edit.js.map +1 -1
  52. package/build/list/edit.js +4 -4
  53. package/build/list/edit.js.map +1 -1
  54. package/build/list-item/hooks/use-merge.js +10 -1
  55. package/build/list-item/hooks/use-merge.js.map +1 -1
  56. package/build/media-text/media-container.native.js +2 -1
  57. package/build/media-text/media-container.native.js.map +1 -1
  58. package/build/missing/edit.native.js +7 -5
  59. package/build/missing/edit.native.js.map +1 -1
  60. package/build/navigation/constants.js +10 -4
  61. package/build/navigation/constants.js.map +1 -1
  62. package/build/navigation/edit/index.js +16 -2
  63. package/build/navigation/edit/index.js.map +1 -1
  64. package/build/navigation/edit/inner-blocks.js +2 -2
  65. package/build/navigation/edit/inner-blocks.js.map +1 -1
  66. package/build/navigation/edit/menu-inspector-controls.js +1 -1
  67. package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
  68. package/build/navigation/edit/navigation-menu-selector.js +4 -4
  69. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  70. package/build/navigation/edit/unsaved-inner-blocks.js +2 -2
  71. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  72. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +10 -15
  73. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  74. package/build/navigation/index.js +2 -3
  75. package/build/navigation/index.js.map +1 -1
  76. package/build/navigation/use-navigation-menu.js +33 -45
  77. package/build/navigation/use-navigation-menu.js.map +1 -1
  78. package/build/navigation/view-interactivity.js +185 -0
  79. package/build/navigation/view-interactivity.js.map +1 -0
  80. package/build/navigation/view-modal.js +125 -0
  81. package/build/navigation/view-modal.js.map +1 -0
  82. package/build/navigation/view.js +71 -163
  83. package/build/navigation/view.js.map +1 -1
  84. package/build/navigation-link/edit.js +12 -7
  85. package/build/navigation-link/edit.js.map +1 -1
  86. package/build/navigation-submenu/edit.js +2 -2
  87. package/build/navigation-submenu/edit.js.map +1 -1
  88. package/build/pattern/edit.js +28 -4
  89. package/build/pattern/edit.js.map +1 -1
  90. package/build/preformatted/index.js +4 -0
  91. package/build/preformatted/index.js.map +1 -1
  92. package/build/query-pagination/edit.js +1 -1
  93. package/build/query-pagination/edit.js.map +1 -1
  94. package/build/query-title/edit.js +43 -1
  95. package/build/query-title/edit.js.map +1 -1
  96. package/build/quote/transforms.js +8 -0
  97. package/build/quote/transforms.js.map +1 -1
  98. package/build/rss/edit.js +3 -0
  99. package/build/rss/edit.js.map +1 -1
  100. package/build/search/edit.js +4 -3
  101. package/build/search/edit.js.map +1 -1
  102. package/build/search/index.js +1 -0
  103. package/build/search/index.js.map +1 -1
  104. package/build/search/view.js +166 -62
  105. package/build/search/view.js.map +1 -1
  106. package/build/site-logo/edit.js +1 -0
  107. package/build/site-logo/edit.js.map +1 -1
  108. package/build/social-link/icons/index.js +13 -0
  109. package/build/social-link/icons/index.js.map +1 -1
  110. package/build/social-link/icons/threads.js +25 -0
  111. package/build/social-link/icons/threads.js.map +1 -0
  112. package/build/social-link/variations.js +7 -0
  113. package/build/social-link/variations.js.map +1 -1
  114. package/build/tag-cloud/edit.js +1 -0
  115. package/build/tag-cloud/edit.js.map +1 -1
  116. package/build/template-part/edit/import-controls.js +1 -1
  117. package/build/template-part/edit/import-controls.js.map +1 -1
  118. package/build/template-part/edit/index.js +1 -1
  119. package/build/template-part/edit/index.js.map +1 -1
  120. package/build/text-columns/edit.js +1 -0
  121. package/build/text-columns/edit.js.map +1 -1
  122. package/build-module/avatar/edit.js +1 -0
  123. package/build-module/avatar/edit.js.map +1 -1
  124. package/build-module/avatar/index.js +3 -0
  125. package/build-module/avatar/index.js.map +1 -1
  126. package/build-module/block/edit.js +4 -29
  127. package/build-module/block/edit.js.map +1 -1
  128. package/build-module/block/index.js +2 -1
  129. package/build-module/block/index.js.map +1 -1
  130. package/build-module/buttons/edit.js +2 -2
  131. package/build-module/buttons/edit.js.map +1 -1
  132. package/build-module/column/edit.native.js +1 -4
  133. package/build-module/column/edit.native.js.map +1 -1
  134. package/build-module/columns/edit.js +1 -0
  135. package/build-module/columns/edit.js.map +1 -1
  136. package/build-module/comment-author-avatar/edit.js +1 -0
  137. package/build-module/comment-author-avatar/edit.js.map +1 -1
  138. package/build-module/cover/deprecated.js +4 -2
  139. package/build-module/cover/deprecated.js.map +1 -1
  140. package/build-module/cover/index.js +2 -1
  141. package/build-module/cover/index.js.map +1 -1
  142. package/build-module/embed/embed-placeholder.native.js +37 -14
  143. package/build-module/embed/embed-placeholder.native.js.map +1 -1
  144. package/build-module/file/index.js +1 -2
  145. package/build-module/file/index.js.map +1 -1
  146. package/build-module/file/inspector.js +1 -0
  147. package/build-module/file/inspector.js.map +1 -1
  148. package/build-module/file/view-interactivity.js +19 -0
  149. package/build-module/file/view-interactivity.js.map +1 -0
  150. package/build-module/file/view.js +2 -15
  151. package/build-module/file/view.js.map +1 -1
  152. package/build-module/footnotes/edit.js +29 -2
  153. package/build-module/footnotes/edit.js.map +1 -1
  154. package/build-module/footnotes/format.js +120 -25
  155. package/build-module/footnotes/format.js.map +1 -1
  156. package/build-module/footnotes/index.js +45 -4
  157. package/build-module/footnotes/index.js.map +1 -1
  158. package/build-module/gallery/edit.js +8 -6
  159. package/build-module/gallery/edit.js.map +1 -1
  160. package/build-module/image/deprecated.js +107 -3
  161. package/build-module/image/deprecated.js.map +1 -1
  162. package/build-module/image/image.js +2 -2
  163. package/build-module/image/image.js.map +1 -1
  164. package/build-module/image/index.js +2 -1
  165. package/build-module/image/index.js.map +1 -1
  166. package/build-module/index.js +3 -1
  167. package/build-module/index.js.map +1 -1
  168. package/build-module/latest-comments/edit.js +1 -0
  169. package/build-module/latest-comments/edit.js.map +1 -1
  170. package/build-module/latest-posts/edit.js +2 -0
  171. package/build-module/latest-posts/edit.js.map +1 -1
  172. package/build-module/list/edit.js +4 -4
  173. package/build-module/list/edit.js.map +1 -1
  174. package/build-module/list-item/hooks/use-merge.js +10 -1
  175. package/build-module/list-item/hooks/use-merge.js.map +1 -1
  176. package/build-module/media-text/media-container.native.js +2 -1
  177. package/build-module/media-text/media-container.native.js.map +1 -1
  178. package/build-module/missing/edit.native.js +8 -6
  179. package/build-module/missing/edit.native.js.map +1 -1
  180. package/build-module/navigation/constants.js +8 -3
  181. package/build-module/navigation/constants.js.map +1 -1
  182. package/build-module/navigation/edit/index.js +17 -3
  183. package/build-module/navigation/edit/index.js.map +1 -1
  184. package/build-module/navigation/edit/inner-blocks.js +2 -2
  185. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  186. package/build-module/navigation/edit/menu-inspector-controls.js +1 -1
  187. package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
  188. package/build-module/navigation/edit/navigation-menu-selector.js +4 -4
  189. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  190. package/build-module/navigation/edit/unsaved-inner-blocks.js +2 -2
  191. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  192. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +10 -14
  193. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  194. package/build-module/navigation/index.js +2 -3
  195. package/build-module/navigation/index.js.map +1 -1
  196. package/build-module/navigation/use-navigation-menu.js +35 -47
  197. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  198. package/build-module/navigation/view-interactivity.js +182 -0
  199. package/build-module/navigation/view-interactivity.js.map +1 -0
  200. package/build-module/navigation/view-modal.js +120 -0
  201. package/build-module/navigation/view-modal.js.map +1 -0
  202. package/build-module/navigation/view.js +72 -163
  203. package/build-module/navigation/view.js.map +1 -1
  204. package/build-module/navigation-link/edit.js +12 -7
  205. package/build-module/navigation-link/edit.js.map +1 -1
  206. package/build-module/navigation-submenu/edit.js +2 -2
  207. package/build-module/navigation-submenu/edit.js.map +1 -1
  208. package/build-module/pattern/edit.js +27 -4
  209. package/build-module/pattern/edit.js.map +1 -1
  210. package/build-module/preformatted/index.js +4 -0
  211. package/build-module/preformatted/index.js.map +1 -1
  212. package/build-module/query-pagination/edit.js +1 -1
  213. package/build-module/query-pagination/edit.js.map +1 -1
  214. package/build-module/query-title/edit.js +44 -3
  215. package/build-module/query-title/edit.js.map +1 -1
  216. package/build-module/quote/transforms.js +8 -0
  217. package/build-module/quote/transforms.js.map +1 -1
  218. package/build-module/rss/edit.js +3 -0
  219. package/build-module/rss/edit.js.map +1 -1
  220. package/build-module/search/edit.js +4 -3
  221. package/build-module/search/edit.js.map +1 -1
  222. package/build-module/search/index.js +1 -0
  223. package/build-module/search/index.js.map +1 -1
  224. package/build-module/search/view.js +166 -62
  225. package/build-module/search/view.js.map +1 -1
  226. package/build-module/site-logo/edit.js +1 -0
  227. package/build-module/site-logo/edit.js.map +1 -1
  228. package/build-module/social-link/icons/index.js +1 -0
  229. package/build-module/social-link/icons/index.js.map +1 -1
  230. package/build-module/social-link/icons/threads.js +15 -0
  231. package/build-module/social-link/icons/threads.js.map +1 -0
  232. package/build-module/social-link/variations.js +8 -1
  233. package/build-module/social-link/variations.js.map +1 -1
  234. package/build-module/tag-cloud/edit.js +1 -0
  235. package/build-module/tag-cloud/edit.js.map +1 -1
  236. package/build-module/template-part/edit/import-controls.js +2 -2
  237. package/build-module/template-part/edit/import-controls.js.map +1 -1
  238. package/build-module/template-part/edit/index.js +1 -1
  239. package/build-module/template-part/edit/index.js.map +1 -1
  240. package/build-module/text-columns/edit.js +1 -0
  241. package/build-module/text-columns/edit.js.map +1 -1
  242. package/build-style/details/style-rtl.css +4 -2
  243. package/build-style/details/style.css +4 -2
  244. package/build-style/footnotes/style-rtl.css +4 -3
  245. package/build-style/footnotes/style.css +4 -3
  246. package/build-style/navigation/style-rtl.css +14 -2
  247. package/build-style/navigation/style.css +14 -2
  248. package/build-style/preformatted/style-rtl.css +2 -1
  249. package/build-style/preformatted/style.css +2 -1
  250. package/build-style/query-pagination/style-rtl.css +4 -2
  251. package/build-style/query-pagination/style.css +4 -2
  252. package/build-style/social-links/style-rtl.css +7 -0
  253. package/build-style/social-links/style.css +7 -0
  254. package/build-style/style-rtl.css +36 -10
  255. package/build-style/style.css +36 -10
  256. package/build-style/video/style-rtl.css +1 -0
  257. package/build-style/video/style.css +1 -0
  258. package/package.json +33 -32
  259. package/src/audio/test/__snapshots__/edit.native.js.snap +118 -33
  260. package/src/avatar/block.json +3 -0
  261. package/src/avatar/edit.js +1 -0
  262. package/src/block/block.json +2 -1
  263. package/src/block/edit.js +1 -39
  264. package/src/block/editor.native.scss +2 -2
  265. package/src/buttons/edit.js +2 -2
  266. package/src/buttons/test/edit.native.js +4 -0
  267. package/src/column/edit.native.js +4 -10
  268. package/src/column/editor.native.scss +0 -4
  269. package/src/columns/edit.js +1 -0
  270. package/src/columns/test/edit.native.js +5 -0
  271. package/src/comment-author-avatar/edit.js +1 -0
  272. package/src/comment-template/index.php +7 -2
  273. package/src/cover/block.json +2 -1
  274. package/src/cover/deprecated.js +2 -0
  275. package/src/cover/test/edit.native.js +8 -0
  276. package/src/embed/embed-placeholder.native.js +80 -47
  277. package/src/embed/styles.native.scss +54 -18
  278. package/src/embed/test/index.native.js +13 -5
  279. package/src/file/block.json +1 -2
  280. package/src/file/index.php +20 -2
  281. package/src/file/inspector.js +1 -0
  282. package/src/file/test/__snapshots__/edit.native.js.snap +119 -33
  283. package/src/file/view-interactivity.js +18 -0
  284. package/src/file/view.js +5 -14
  285. package/src/footnotes/block.json +44 -2
  286. package/src/footnotes/edit.js +33 -2
  287. package/src/footnotes/format.js +90 -25
  288. package/src/footnotes/index.js +0 -1
  289. package/src/footnotes/index.php +207 -0
  290. package/src/footnotes/style.scss +6 -3
  291. package/src/gallery/edit.js +42 -38
  292. package/src/gallery/test/index.native.js +31 -18
  293. package/src/heading/test/index.native.js +4 -0
  294. package/src/home-link/index.php +15 -2
  295. package/src/image/block.json +2 -1
  296. package/src/image/deprecated.js +109 -3
  297. package/src/image/image.js +2 -2
  298. package/src/image/index.php +45 -8
  299. package/src/image/test/edit.native.js +1 -2
  300. package/src/index.js +5 -1
  301. package/src/latest-comments/edit.js +1 -0
  302. package/src/latest-posts/edit.js +2 -0
  303. package/src/list/edit.js +6 -4
  304. package/src/list/test/edit.native.js +134 -33
  305. package/src/list-item/hooks/use-merge.js +12 -5
  306. package/src/media-text/media-container.native.js +1 -0
  307. package/src/missing/edit.native.js +12 -10
  308. package/src/missing/style.native.scss +19 -12
  309. package/src/missing/test/__snapshots__/edit.native.js.snap +42 -13
  310. package/src/navigation/block.json +2 -3
  311. package/src/navigation/constants.js +12 -6
  312. package/src/navigation/edit/index.js +29 -1
  313. package/src/navigation/edit/inner-blocks.js +2 -2
  314. package/src/navigation/edit/menu-inspector-controls.js +1 -1
  315. package/src/navigation/edit/navigation-menu-selector.js +8 -4
  316. package/src/navigation/edit/unsaved-inner-blocks.js +2 -2
  317. package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +17 -21
  318. package/src/navigation/index.php +50 -18
  319. package/src/navigation/style.scss +27 -8
  320. package/src/navigation/use-navigation-menu.js +39 -63
  321. package/src/navigation/view-interactivity.js +196 -0
  322. package/src/navigation/view-modal.js +127 -0
  323. package/src/navigation/view.js +96 -185
  324. package/src/navigation-link/edit.js +61 -47
  325. package/src/navigation-submenu/edit.js +2 -2
  326. package/src/paragraph/test/__snapshots__/edit.native.js.snap +1 -0
  327. package/src/paragraph/test/edit.native.js +81 -35
  328. package/src/pattern/edit.js +21 -0
  329. package/src/pattern/index.php +13 -1
  330. package/src/post-template/index.php +6 -2
  331. package/src/post-title/index.php +8 -3
  332. package/src/preformatted/block.json +4 -0
  333. package/src/preformatted/style.scss +4 -1
  334. package/src/preformatted/test/__snapshots__/edit.native.js.snap +2 -0
  335. package/src/pullquote/test/edit.native.js +12 -4
  336. package/src/query-pagination/edit.js +17 -14
  337. package/src/query-title/edit.js +48 -6
  338. package/src/quote/test/__snapshots__/transforms.native.js.snap +10 -0
  339. package/src/quote/test/edit.native.js +12 -4
  340. package/src/quote/test/transforms.native.js +5 -1
  341. package/src/quote/transforms.js +13 -0
  342. package/src/rss/edit.js +3 -0
  343. package/src/search/block.json +1 -0
  344. package/src/search/edit.js +4 -3
  345. package/src/search/index.php +26 -4
  346. package/src/search/test/__snapshots__/edit.native.js.snap +70 -0
  347. package/src/search/view.js +171 -67
  348. package/src/site-logo/edit.js +1 -0
  349. package/src/social-link/icons/index.js +1 -0
  350. package/src/social-link/icons/threads.js +10 -0
  351. package/src/social-link/index.php +4 -0
  352. package/src/social-link/socials-with-bg.scss +5 -0
  353. package/src/social-link/socials-without-bg.scss +4 -0
  354. package/src/social-link/variations.js +7 -0
  355. package/src/tag-cloud/edit.js +1 -0
  356. package/src/template-part/edit/import-controls.js +2 -2
  357. package/src/template-part/edit/index.js +1 -1
  358. package/src/template-part/index.php +7 -16
  359. package/src/text-columns/edit.js +1 -0
  360. package/src/video/style.scss +1 -0
  361. package/build/gallery/shared-icon.native.js +0 -38
  362. package/build/gallery/shared-icon.native.js.map +0 -1
  363. package/build-module/gallery/shared-icon.native.js +0 -24
  364. package/build-module/gallery/shared-icon.native.js.map +0 -1
  365. package/src/gallery/shared-icon.native.js +0 -23
@@ -165,10 +165,10 @@ export default function Edit({
165
165
  type: type,
166
166
  ...innerBlocksProps
167
167
  }), controls, ordered && createElement(OrderedListSettings, {
168
- setAttributes: setAttributes,
169
- ordered: ordered,
170
- reversed: reversed,
171
- start: start
168
+ setAttributes,
169
+ reversed,
170
+ start,
171
+ type
172
172
  }));
173
173
  }
174
174
  //# sourceMappingURL=edit.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/list/edit.js"],"names":["BlockControls","useBlockProps","useInnerBlocksProps","store","blockEditorStore","ToolbarButton","useDispatch","useSelect","useRegistry","isRTL","__","formatListBullets","formatListBulletsRTL","formatListNumbered","formatListNumberedRTL","formatOutdent","formatOutdentRTL","createBlock","useCallback","useEffect","Platform","deprecated","OrderedListSettings","migrateToListV2","TagName","TEMPLATE","NATIVE_MARGIN_SPACING","useMigrateOnLoad","attributes","clientId","registry","updateBlockAttributes","replaceInnerBlocks","values","newAttributes","newInnerBlocks","since","version","alternative","batch","useOutdentList","canOutdent","innerSelect","getBlockRootClientId","getBlock","parentId","name","replaceBlocks","selectionChange","getBlockAttributes","parentBlockId","parentBlockAttributes","newParentBlock","innerBlocks","length","IndentUI","outdentList","Edit","setAttributes","style","blockProps","isNative","innerBlocksProps","allowedBlocks","template","templateLock","templateInsertUpdatesSelection","marginVertical","marginHorizontal","renderAppender","ordered","type","reversed","start","controls"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { ToolbarButton } from '@wordpress/components';\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport {\n\tformatListBullets,\n\tformatListBulletsRTL,\n\tformatListNumbered,\n\tformatListNumberedRTL,\n\tformatOutdent,\n\tformatOutdentRTL,\n} from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useCallback, useEffect, Platform } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport OrderedListSettings from './ordered-list-settings';\nimport { migrateToListV2 } from './utils';\nimport TagName from './tag-name';\n\nconst TEMPLATE = [ [ 'core/list-item' ] ];\nconst NATIVE_MARGIN_SPACING = 8;\n\n/**\n * At the moment, deprecations don't handle create blocks from attributes\n * (like when using CPT templates). For this reason, this hook is necessary\n * to avoid breaking templates using the old list block format.\n *\n * @param {Object} attributes Block attributes.\n * @param {string} clientId Block client ID.\n */\nfunction useMigrateOnLoad( attributes, clientId ) {\n\tconst registry = useRegistry();\n\tconst { updateBlockAttributes, replaceInnerBlocks } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\t// As soon as the block is loaded, migrate it to the new version.\n\n\t\tif ( ! attributes.values ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst [ newAttributes, newInnerBlocks ] = migrateToListV2( attributes );\n\n\t\tdeprecated( 'Value attribute on the list block', {\n\t\t\tsince: '6.0',\n\t\t\tversion: '6.5',\n\t\t\talternative: 'inner blocks',\n\t\t} );\n\n\t\tregistry.batch( () => {\n\t\t\tupdateBlockAttributes( clientId, newAttributes );\n\t\t\treplaceInnerBlocks( clientId, newInnerBlocks );\n\t\t} );\n\t}, [ attributes.values ] );\n}\n\nfunction useOutdentList( clientId ) {\n\tconst { canOutdent } = useSelect(\n\t\t( innerSelect ) => {\n\t\t\tconst { getBlockRootClientId, getBlock } =\n\t\t\t\tinnerSelect( blockEditorStore );\n\t\t\tconst parentId = getBlockRootClientId( clientId );\n\t\t\treturn {\n\t\t\t\tcanOutdent:\n\t\t\t\t\t!! parentId &&\n\t\t\t\t\tgetBlock( parentId ).name === 'core/list-item',\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { replaceBlocks, selectionChange } = useDispatch( blockEditorStore );\n\tconst { getBlockRootClientId, getBlockAttributes, getBlock } =\n\t\tuseSelect( blockEditorStore );\n\n\treturn [\n\t\tcanOutdent,\n\t\tuseCallback( () => {\n\t\t\tconst parentBlockId = getBlockRootClientId( clientId );\n\t\t\tconst parentBlockAttributes = getBlockAttributes( parentBlockId );\n\t\t\t// Create a new parent block without the inner blocks.\n\t\t\tconst newParentBlock = createBlock(\n\t\t\t\t'core/list-item',\n\t\t\t\tparentBlockAttributes\n\t\t\t);\n\t\t\tconst { innerBlocks } = getBlock( clientId );\n\t\t\t// Replace the parent block with a new parent block without inner blocks,\n\t\t\t// and make the inner blocks siblings of the parent.\n\t\t\treplaceBlocks(\n\t\t\t\t[ parentBlockId ],\n\t\t\t\t[ newParentBlock, ...innerBlocks ]\n\t\t\t);\n\t\t\t// Select the last child of the list being outdent.\n\t\t\tselectionChange( innerBlocks[ innerBlocks.length - 1 ].clientId );\n\t\t}, [ clientId ] ),\n\t];\n}\n\nfunction IndentUI( { clientId } ) {\n\tconst [ canOutdent, outdentList ] = useOutdentList( clientId );\n\treturn (\n\t\t<>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatOutdentRTL : formatOutdent }\n\t\t\t\ttitle={ __( 'Outdent' ) }\n\t\t\t\tdescribedBy={ __( 'Outdent list item' ) }\n\t\t\t\tdisabled={ ! canOutdent }\n\t\t\t\tonClick={ outdentList }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport default function Edit( { attributes, setAttributes, clientId, style } ) {\n\tconst blockProps = useBlockProps( {\n\t\t...( Platform.isNative && { style } ),\n\t} );\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: [ 'core/list-item' ],\n\t\ttemplate: TEMPLATE,\n\t\ttemplateLock: false,\n\t\ttemplateInsertUpdatesSelection: true,\n\t\t...( Platform.isNative && {\n\t\t\tmarginVertical: NATIVE_MARGIN_SPACING,\n\t\t\tmarginHorizontal: NATIVE_MARGIN_SPACING,\n\t\t\trenderAppender: false,\n\t\t} ),\n\t} );\n\tuseMigrateOnLoad( attributes, clientId );\n\tconst { ordered, type, reversed, start } = attributes;\n\n\tconst controls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListBulletsRTL : formatListBullets }\n\t\t\t\ttitle={ __( 'Unordered' ) }\n\t\t\t\tdescribedBy={ __( 'Convert to unordered list' ) }\n\t\t\t\tisActive={ ordered === false }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: false } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListNumberedRTL : formatListNumbered }\n\t\t\t\ttitle={ __( 'Ordered' ) }\n\t\t\t\tdescribedBy={ __( 'Convert to ordered list' ) }\n\t\t\t\tisActive={ ordered === true }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: true } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<IndentUI clientId={ clientId } />\n\t\t</BlockControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<TagName\n\t\t\t\tordered={ ordered }\n\t\t\t\treversed={ reversed }\n\t\t\t\tstart={ start }\n\t\t\t\ttype={ type }\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t/>\n\t\t\t{ controls }\n\t\t\t{ ordered && (\n\t\t\t\t<OrderedListSettings\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tordered={ ordered }\n\t\t\t\t\treversed={ reversed }\n\t\t\t\t\tstart={ start }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/list/edit.js"],"names":["BlockControls","useBlockProps","useInnerBlocksProps","store","blockEditorStore","ToolbarButton","useDispatch","useSelect","useRegistry","isRTL","__","formatListBullets","formatListBulletsRTL","formatListNumbered","formatListNumberedRTL","formatOutdent","formatOutdentRTL","createBlock","useCallback","useEffect","Platform","deprecated","OrderedListSettings","migrateToListV2","TagName","TEMPLATE","NATIVE_MARGIN_SPACING","useMigrateOnLoad","attributes","clientId","registry","updateBlockAttributes","replaceInnerBlocks","values","newAttributes","newInnerBlocks","since","version","alternative","batch","useOutdentList","canOutdent","innerSelect","getBlockRootClientId","getBlock","parentId","name","replaceBlocks","selectionChange","getBlockAttributes","parentBlockId","parentBlockAttributes","newParentBlock","innerBlocks","length","IndentUI","outdentList","Edit","setAttributes","style","blockProps","isNative","innerBlocksProps","allowedBlocks","template","templateLock","templateInsertUpdatesSelection","marginVertical","marginHorizontal","renderAppender","ordered","type","reversed","start","controls"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { ToolbarButton } from '@wordpress/components';\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport {\n\tformatListBullets,\n\tformatListBulletsRTL,\n\tformatListNumbered,\n\tformatListNumberedRTL,\n\tformatOutdent,\n\tformatOutdentRTL,\n} from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useCallback, useEffect, Platform } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport OrderedListSettings from './ordered-list-settings';\nimport { migrateToListV2 } from './utils';\nimport TagName from './tag-name';\n\nconst TEMPLATE = [ [ 'core/list-item' ] ];\nconst NATIVE_MARGIN_SPACING = 8;\n\n/**\n * At the moment, deprecations don't handle create blocks from attributes\n * (like when using CPT templates). For this reason, this hook is necessary\n * to avoid breaking templates using the old list block format.\n *\n * @param {Object} attributes Block attributes.\n * @param {string} clientId Block client ID.\n */\nfunction useMigrateOnLoad( attributes, clientId ) {\n\tconst registry = useRegistry();\n\tconst { updateBlockAttributes, replaceInnerBlocks } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\t// As soon as the block is loaded, migrate it to the new version.\n\n\t\tif ( ! attributes.values ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst [ newAttributes, newInnerBlocks ] = migrateToListV2( attributes );\n\n\t\tdeprecated( 'Value attribute on the list block', {\n\t\t\tsince: '6.0',\n\t\t\tversion: '6.5',\n\t\t\talternative: 'inner blocks',\n\t\t} );\n\n\t\tregistry.batch( () => {\n\t\t\tupdateBlockAttributes( clientId, newAttributes );\n\t\t\treplaceInnerBlocks( clientId, newInnerBlocks );\n\t\t} );\n\t}, [ attributes.values ] );\n}\n\nfunction useOutdentList( clientId ) {\n\tconst { canOutdent } = useSelect(\n\t\t( innerSelect ) => {\n\t\t\tconst { getBlockRootClientId, getBlock } =\n\t\t\t\tinnerSelect( blockEditorStore );\n\t\t\tconst parentId = getBlockRootClientId( clientId );\n\t\t\treturn {\n\t\t\t\tcanOutdent:\n\t\t\t\t\t!! parentId &&\n\t\t\t\t\tgetBlock( parentId ).name === 'core/list-item',\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { replaceBlocks, selectionChange } = useDispatch( blockEditorStore );\n\tconst { getBlockRootClientId, getBlockAttributes, getBlock } =\n\t\tuseSelect( blockEditorStore );\n\n\treturn [\n\t\tcanOutdent,\n\t\tuseCallback( () => {\n\t\t\tconst parentBlockId = getBlockRootClientId( clientId );\n\t\t\tconst parentBlockAttributes = getBlockAttributes( parentBlockId );\n\t\t\t// Create a new parent block without the inner blocks.\n\t\t\tconst newParentBlock = createBlock(\n\t\t\t\t'core/list-item',\n\t\t\t\tparentBlockAttributes\n\t\t\t);\n\t\t\tconst { innerBlocks } = getBlock( clientId );\n\t\t\t// Replace the parent block with a new parent block without inner blocks,\n\t\t\t// and make the inner blocks siblings of the parent.\n\t\t\treplaceBlocks(\n\t\t\t\t[ parentBlockId ],\n\t\t\t\t[ newParentBlock, ...innerBlocks ]\n\t\t\t);\n\t\t\t// Select the last child of the list being outdent.\n\t\t\tselectionChange( innerBlocks[ innerBlocks.length - 1 ].clientId );\n\t\t}, [ clientId ] ),\n\t];\n}\n\nfunction IndentUI( { clientId } ) {\n\tconst [ canOutdent, outdentList ] = useOutdentList( clientId );\n\treturn (\n\t\t<>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatOutdentRTL : formatOutdent }\n\t\t\t\ttitle={ __( 'Outdent' ) }\n\t\t\t\tdescribedBy={ __( 'Outdent list item' ) }\n\t\t\t\tdisabled={ ! canOutdent }\n\t\t\t\tonClick={ outdentList }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport default function Edit( { attributes, setAttributes, clientId, style } ) {\n\tconst blockProps = useBlockProps( {\n\t\t...( Platform.isNative && { style } ),\n\t} );\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: [ 'core/list-item' ],\n\t\ttemplate: TEMPLATE,\n\t\ttemplateLock: false,\n\t\ttemplateInsertUpdatesSelection: true,\n\t\t...( Platform.isNative && {\n\t\t\tmarginVertical: NATIVE_MARGIN_SPACING,\n\t\t\tmarginHorizontal: NATIVE_MARGIN_SPACING,\n\t\t\trenderAppender: false,\n\t\t} ),\n\t} );\n\tuseMigrateOnLoad( attributes, clientId );\n\tconst { ordered, type, reversed, start } = attributes;\n\n\tconst controls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListBulletsRTL : formatListBullets }\n\t\t\t\ttitle={ __( 'Unordered' ) }\n\t\t\t\tdescribedBy={ __( 'Convert to unordered list' ) }\n\t\t\t\tisActive={ ordered === false }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: false } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListNumberedRTL : formatListNumbered }\n\t\t\t\ttitle={ __( 'Ordered' ) }\n\t\t\t\tdescribedBy={ __( 'Convert to ordered list' ) }\n\t\t\t\tisActive={ ordered === true }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: true } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<IndentUI clientId={ clientId } />\n\t\t</BlockControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<TagName\n\t\t\t\tordered={ ordered }\n\t\t\t\treversed={ reversed }\n\t\t\t\tstart={ start }\n\t\t\t\ttype={ type }\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t/>\n\t\t\t{ controls }\n\t\t\t{ ordered && (\n\t\t\t\t<OrderedListSettings\n\t\t\t\t\t{ ...{\n\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\treversed,\n\t\t\t\t\t\tstart,\n\t\t\t\t\t\ttype,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
@@ -145,7 +145,16 @@ export default function useMerge(clientId, onMerge) {
145
145
  } else if (previousBlockClientId) {
146
146
  const trailingId = getTrailingId(previousBlockClientId);
147
147
  registry.batch(() => {
148
- moveBlocksToPosition(getBlockOrder(clientId), clientId, previousBlockClientId);
148
+ // When merging a list item with a previous trailing list
149
+ // item, we also need to move any nested list items. First,
150
+ // check if there's a listed list. If there's a nested list,
151
+ // append its nested list items to the trailing list.
152
+ const [nestedListClientId] = getBlockOrder(clientId);
153
+
154
+ if (nestedListClientId) {
155
+ moveBlocksToPosition(getBlockOrder(nestedListClientId), nestedListClientId, getBlockRootClientId(trailingId));
156
+ }
157
+
149
158
  mergeBlocks(trailingId, clientId);
150
159
  });
151
160
  } else {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-merge.js"],"names":["useRegistry","useDispatch","useSelect","store","blockEditorStore","useOutdentListItem","useMerge","clientId","onMerge","registry","getPreviousBlockClientId","getNextBlockClientId","getBlockOrder","getBlockRootClientId","getBlockName","mergeBlocks","moveBlocksToPosition","outdentListItem","getTrailingId","id","order","length","getParentListItemId","listId","parentListItemId","listItemName","_getNextId","next","getNextId","forward","nextBlockClientId","batch","previousBlockClientId","trailingId"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRegistry, useDispatch, useSelect } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport useOutdentListItem from './use-outdent-list-item';\n\nimport { name as listItemName } from '../block.json';\n\nexport default function useMerge( clientId, onMerge ) {\n\tconst registry = useRegistry();\n\tconst {\n\t\tgetPreviousBlockClientId,\n\t\tgetNextBlockClientId,\n\t\tgetBlockOrder,\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t} = useSelect( blockEditorStore );\n\tconst { mergeBlocks, moveBlocksToPosition } =\n\t\tuseDispatch( blockEditorStore );\n\tconst [ , outdentListItem ] = useOutdentListItem( clientId );\n\n\tfunction getTrailingId( id ) {\n\t\tconst order = getBlockOrder( id );\n\n\t\tif ( ! order.length ) {\n\t\t\treturn id;\n\t\t}\n\n\t\treturn getTrailingId( order[ order.length - 1 ] );\n\t}\n\n\tfunction getParentListItemId( id ) {\n\t\tconst listId = getBlockRootClientId( id );\n\t\tconst parentListItemId = getBlockRootClientId( listId );\n\t\tif ( ! parentListItemId ) return;\n\t\tif ( getBlockName( parentListItemId ) !== listItemName ) return;\n\t\treturn parentListItemId;\n\t}\n\n\t/**\n\t * Return the next list item with respect to the given list item. If none,\n\t * return the next list item of the parent list item if it exists.\n\t *\n\t * @param {string} id A list item client ID.\n\t * @return {string?} The client ID of the next list item.\n\t */\n\tfunction _getNextId( id ) {\n\t\tconst next = getNextBlockClientId( id );\n\t\tif ( next ) return next;\n\t\tconst parentListItemId = getParentListItemId( id );\n\t\tif ( ! parentListItemId ) return;\n\t\treturn _getNextId( parentListItemId );\n\t}\n\n\t/**\n\t * Given a client ID, return the client ID of the list item on the next\n\t * line, regardless of indentation level.\n\t *\n\t * @param {string} id The client ID of the current list item.\n\t * @return {string?} The client ID of the next list item.\n\t */\n\tfunction getNextId( id ) {\n\t\tconst order = getBlockOrder( id );\n\n\t\t// If the list item does not have a nested list, return the next list\n\t\t// item.\n\t\tif ( ! order.length ) {\n\t\t\treturn _getNextId( id );\n\t\t}\n\n\t\t// Get the first list item in the nested list.\n\t\treturn getBlockOrder( order[ 0 ] )[ 0 ];\n\t}\n\n\treturn ( forward ) => {\n\t\tif ( forward ) {\n\t\t\tconst nextBlockClientId = getNextId( clientId );\n\n\t\t\tif ( ! nextBlockClientId ) {\n\t\t\t\tonMerge( forward );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( getParentListItemId( nextBlockClientId ) ) {\n\t\t\t\toutdentListItem( nextBlockClientId );\n\t\t\t} else {\n\t\t\t\tregistry.batch( () => {\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tgetBlockOrder( nextBlockClientId ),\n\t\t\t\t\t\tnextBlockClientId,\n\t\t\t\t\t\tgetPreviousBlockClientId( nextBlockClientId )\n\t\t\t\t\t);\n\t\t\t\t\tmergeBlocks( clientId, nextBlockClientId );\n\t\t\t\t} );\n\t\t\t}\n\t\t} else {\n\t\t\t// Merging is only done from the top level. For lowel levels, the\n\t\t\t// list item is outdented instead.\n\t\t\tconst previousBlockClientId = getPreviousBlockClientId( clientId );\n\t\t\tif ( getParentListItemId( clientId ) ) {\n\t\t\t\toutdentListItem( clientId );\n\t\t\t} else if ( previousBlockClientId ) {\n\t\t\t\tconst trailingId = getTrailingId( previousBlockClientId );\n\t\t\t\tregistry.batch( () => {\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tgetBlockOrder( clientId ),\n\t\t\t\t\t\tclientId,\n\t\t\t\t\t\tpreviousBlockClientId\n\t\t\t\t\t);\n\t\t\t\t\tmergeBlocks( trailingId, clientId );\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tonMerge( forward );\n\t\t\t}\n\t\t}\n\t};\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-merge.js"],"names":["useRegistry","useDispatch","useSelect","store","blockEditorStore","useOutdentListItem","useMerge","clientId","onMerge","registry","getPreviousBlockClientId","getNextBlockClientId","getBlockOrder","getBlockRootClientId","getBlockName","mergeBlocks","moveBlocksToPosition","outdentListItem","getTrailingId","id","order","length","getParentListItemId","listId","parentListItemId","listItemName","_getNextId","next","getNextId","forward","nextBlockClientId","batch","previousBlockClientId","trailingId","nestedListClientId"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRegistry, useDispatch, useSelect } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport useOutdentListItem from './use-outdent-list-item';\n\nimport { name as listItemName } from '../block.json';\n\nexport default function useMerge( clientId, onMerge ) {\n\tconst registry = useRegistry();\n\tconst {\n\t\tgetPreviousBlockClientId,\n\t\tgetNextBlockClientId,\n\t\tgetBlockOrder,\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t} = useSelect( blockEditorStore );\n\tconst { mergeBlocks, moveBlocksToPosition } =\n\t\tuseDispatch( blockEditorStore );\n\tconst [ , outdentListItem ] = useOutdentListItem( clientId );\n\n\tfunction getTrailingId( id ) {\n\t\tconst order = getBlockOrder( id );\n\n\t\tif ( ! order.length ) {\n\t\t\treturn id;\n\t\t}\n\n\t\treturn getTrailingId( order[ order.length - 1 ] );\n\t}\n\n\tfunction getParentListItemId( id ) {\n\t\tconst listId = getBlockRootClientId( id );\n\t\tconst parentListItemId = getBlockRootClientId( listId );\n\t\tif ( ! parentListItemId ) return;\n\t\tif ( getBlockName( parentListItemId ) !== listItemName ) return;\n\t\treturn parentListItemId;\n\t}\n\n\t/**\n\t * Return the next list item with respect to the given list item. If none,\n\t * return the next list item of the parent list item if it exists.\n\t *\n\t * @param {string} id A list item client ID.\n\t * @return {string?} The client ID of the next list item.\n\t */\n\tfunction _getNextId( id ) {\n\t\tconst next = getNextBlockClientId( id );\n\t\tif ( next ) return next;\n\t\tconst parentListItemId = getParentListItemId( id );\n\t\tif ( ! parentListItemId ) return;\n\t\treturn _getNextId( parentListItemId );\n\t}\n\n\t/**\n\t * Given a client ID, return the client ID of the list item on the next\n\t * line, regardless of indentation level.\n\t *\n\t * @param {string} id The client ID of the current list item.\n\t * @return {string?} The client ID of the next list item.\n\t */\n\tfunction getNextId( id ) {\n\t\tconst order = getBlockOrder( id );\n\n\t\t// If the list item does not have a nested list, return the next list\n\t\t// item.\n\t\tif ( ! order.length ) {\n\t\t\treturn _getNextId( id );\n\t\t}\n\n\t\t// Get the first list item in the nested list.\n\t\treturn getBlockOrder( order[ 0 ] )[ 0 ];\n\t}\n\n\treturn ( forward ) => {\n\t\tif ( forward ) {\n\t\t\tconst nextBlockClientId = getNextId( clientId );\n\n\t\t\tif ( ! nextBlockClientId ) {\n\t\t\t\tonMerge( forward );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( getParentListItemId( nextBlockClientId ) ) {\n\t\t\t\toutdentListItem( nextBlockClientId );\n\t\t\t} else {\n\t\t\t\tregistry.batch( () => {\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tgetBlockOrder( nextBlockClientId ),\n\t\t\t\t\t\tnextBlockClientId,\n\t\t\t\t\t\tgetPreviousBlockClientId( nextBlockClientId )\n\t\t\t\t\t);\n\t\t\t\t\tmergeBlocks( clientId, nextBlockClientId );\n\t\t\t\t} );\n\t\t\t}\n\t\t} else {\n\t\t\t// Merging is only done from the top level. For lowel levels, the\n\t\t\t// list item is outdented instead.\n\t\t\tconst previousBlockClientId = getPreviousBlockClientId( clientId );\n\t\t\tif ( getParentListItemId( clientId ) ) {\n\t\t\t\toutdentListItem( clientId );\n\t\t\t} else if ( previousBlockClientId ) {\n\t\t\t\tconst trailingId = getTrailingId( previousBlockClientId );\n\t\t\t\tregistry.batch( () => {\n\t\t\t\t\t// When merging a list item with a previous trailing list\n\t\t\t\t\t// item, we also need to move any nested list items. First,\n\t\t\t\t\t// check if there's a listed list. If there's a nested list,\n\t\t\t\t\t// append its nested list items to the trailing list.\n\t\t\t\t\tconst [ nestedListClientId ] = getBlockOrder( clientId );\n\t\t\t\t\tif ( nestedListClientId ) {\n\t\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\t\tgetBlockOrder( nestedListClientId ),\n\t\t\t\t\t\t\tnestedListClientId,\n\t\t\t\t\t\t\tgetBlockRootClientId( trailingId )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tmergeBlocks( trailingId, clientId );\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tonMerge( forward );\n\t\t\t}\n\t\t}\n\t};\n}\n"]}
@@ -283,7 +283,8 @@ class MediaContainer extends Component {
283
283
  },
284
284
  onSelect: this.onSelectMediaUploadOption,
285
285
  allowedTypes: ALLOWED_MEDIA_TYPES,
286
- onFocus: this.props.onFocus
286
+ onFocus: this.props.onFocus,
287
+ className: 'no-block-outline'
287
288
  });
288
289
  }
289
290
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/media-text/media-container.native.js"],"names":["View","Text","TouchableWithoutFeedback","mediaUploadSync","requestImageFailedRetryDialog","requestImageUploadCancelDialog","requestImageFullscreenPreview","Icon","Image","IMAGE_DEFAULT_FOCAL_POINT","MEDIA_TYPE_IMAGE","MEDIA_TYPE_VIDEO","MediaPlaceholder","MediaUpload","MediaUploadProgress","VIDEO_ASPECT_RATIO","VideoPlayer","Component","__","isURL","getProtocol","compose","withPreferredColorScheme","media","icon","styles","SvgIconRetry","ALLOWED_MEDIA_TYPES","ICON_TYPE","PLACEHOLDER","RETRY","imageFillStyles","MediaContainer","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","iconRetry","iconRetryVideo","iconRetryVideoDark","iconPlaceholder","iconPlaceholderDark","setState","payload","onMediaUpdate","mediaServerId","renderImage","openMediaOptions","aligmentStyles","focalPoint","imageFill","isSelected","mediaAlt","mediaWidth","shouldStack","isUploadFailed","retryMessage","focalPointValues","imageWithFocalPoint","height","imageCropped","mediaImageContainer","renderVideo","showVideo","videoPlaceholderStyles","videoPlaceholder","videoPlaceholderDark","retryVideoTextStyles","uploadFailedText","uploadFailedTextVideo","uploadFailedTextVideoDark","mediaVideo","videoContainer","videoContent","aspectRatio","videoPlayer","video","uri","modalIcon","renderContent","mediaElement","renderPlaceholder","title","onFocus","render","onSetOpenPickerRef","coverUrl","open","getMediaOptions"],"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/>\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":["View","Text","TouchableWithoutFeedback","mediaUploadSync","requestImageFailedRetryDialog","requestImageUploadCancelDialog","requestImageFullscreenPreview","Icon","Image","IMAGE_DEFAULT_FOCAL_POINT","MEDIA_TYPE_IMAGE","MEDIA_TYPE_VIDEO","MediaPlaceholder","MediaUpload","MediaUploadProgress","VIDEO_ASPECT_RATIO","VideoPlayer","Component","__","isURL","getProtocol","compose","withPreferredColorScheme","media","icon","styles","SvgIconRetry","ALLOWED_MEDIA_TYPES","ICON_TYPE","PLACEHOLDER","RETRY","imageFillStyles","MediaContainer","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","iconRetry","iconRetryVideo","iconRetryVideoDark","iconPlaceholder","iconPlaceholderDark","setState","payload","onMediaUpdate","mediaServerId","renderImage","openMediaOptions","aligmentStyles","focalPoint","imageFill","isSelected","mediaAlt","mediaWidth","shouldStack","isUploadFailed","retryMessage","focalPointValues","imageWithFocalPoint","height","imageCropped","mediaImageContainer","renderVideo","showVideo","videoPlaceholderStyles","videoPlaceholder","videoPlaceholderDark","retryVideoTextStyles","uploadFailedText","uploadFailedTextVideo","uploadFailedTextVideoDark","mediaVideo","videoContainer","videoContent","aspectRatio","videoPlayer","video","uri","modalIcon","renderContent","mediaElement","renderPlaceholder","title","onFocus","render","onSetOpenPickerRef","coverUrl","open","getMediaOptions"],"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"]}
@@ -3,7 +3,7 @@ import { createElement, Fragment } from "@wordpress/element";
3
3
  /**
4
4
  * External dependencies
5
5
  */
6
- import { View, Text, TouchableWithoutFeedback, TouchableHighlight } from 'react-native';
6
+ import { View, Text, TouchableWithoutFeedback, TouchableOpacity } from 'react-native';
7
7
  /**
8
8
  * WordPress dependencies
9
9
  */
@@ -70,7 +70,7 @@ export class UnsupportedBlockEdit extends Component {
70
70
 
71
71
  renderHelpIcon() {
72
72
  const infoIconStyle = this.props.getStylesFromColorScheme(styles.infoIcon, styles.infoIconDark);
73
- return createElement(TouchableHighlight, {
73
+ return createElement(TouchableOpacity, {
74
74
  onPress: this.onHelpButtonPressed,
75
75
  style: styles.helpIconContainer,
76
76
  accessibilityLabel: __('Help button'),
@@ -80,7 +80,7 @@ export class UnsupportedBlockEdit extends Component {
80
80
  className: "unsupported-icon-help",
81
81
  label: __('Help icon'),
82
82
  icon: help,
83
- color: infoIconStyle.color
83
+ fill: infoIconStyle.color
84
84
  }));
85
85
  }
86
86
 
@@ -201,13 +201,15 @@ export class UnsupportedBlockEdit extends Component {
201
201
  onPress: this.toggleSheet
202
202
  }, createElement(View, {
203
203
  style: getStylesFromColorScheme(styles.unsupportedBlock, styles.unsupportedBlockDark)
204
- }, this.renderHelpIcon(), createElement(Icon, {
204
+ }, this.renderHelpIcon(), createElement(View, {
205
+ style: styles.unsupportedBlockHeader
206
+ }, createElement(Icon, {
205
207
  className: iconClassName,
206
208
  icon: icon && icon.src ? icon.src : icon,
207
- color: iconStyle.color
209
+ fill: iconStyle.color
208
210
  }), createElement(Text, {
209
211
  style: titleStyle
210
- }, title), subtitle, this.renderSheet(title, originalName)));
212
+ }, title)), subtitle, this.renderSheet(title, originalName)));
211
213
  }
212
214
 
213
215
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/missing/edit.native.js"],"names":["View","Text","TouchableWithoutFeedback","TouchableHighlight","requestUnsupportedBlockFallback","sendActionButtonPressedAction","actionButtons","BottomSheet","Icon","TextControl","compose","withPreferredColorScheme","coreBlocks","normalizeIconObject","Component","__","_x","sprintf","help","plugins","withSelect","withDispatch","applyFilters","store","blockEditorStore","styles","UBE_INCOMPATIBLE_BLOCKS","I18N_BLOCK_SCHEMA_TITLE","UnsupportedBlockEdit","constructor","props","state","showHelp","toggleSheet","bind","closeSheet","requestFallback","onHelpButtonPressed","setState","componentWillUnmount","timeout","clearTimeout","getTitle","originalName","attributes","blockType","title","metadata","textdomain","renderHelpIcon","infoIconStyle","getStylesFromColorScheme","infoIcon","infoIconDark","helpIconContainer","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","missingBlockAlertActionButton","infoContainer","size","render","preferredColorScheme","titleStyle","unsupportedBlockMessage","unsupportedBlockMessageDark","subTitleStyle","unsupportedBlockSubtitle","unsupportedBlockSubtitleDark","subtitle","icon","settings","iconStyle","unsupportedBlockIcon","unsupportedBlockIconDark","iconClassName","unsupportedBlock","unsupportedBlockDark","src","select","capabilities","getSettings","unsupportedBlockEditor","includes","dispatch","ownProps"],"mappings":"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","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":["View","Text","TouchableWithoutFeedback","TouchableOpacity","requestUnsupportedBlockFallback","sendActionButtonPressedAction","actionButtons","BottomSheet","Icon","TextControl","compose","withPreferredColorScheme","coreBlocks","normalizeIconObject","Component","__","_x","sprintf","help","plugins","withSelect","withDispatch","applyFilters","store","blockEditorStore","styles","UBE_INCOMPATIBLE_BLOCKS","I18N_BLOCK_SCHEMA_TITLE","UnsupportedBlockEdit","constructor","props","state","showHelp","toggleSheet","bind","closeSheet","requestFallback","onHelpButtonPressed","setState","componentWillUnmount","timeout","clearTimeout","getTitle","originalName","attributes","blockType","title","metadata","textdomain","renderHelpIcon","infoIconStyle","getStylesFromColorScheme","infoIcon","infoIconDark","helpIconContainer","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","missingBlockAlertActionButton","infoContainer","size","render","preferredColorScheme","titleStyle","unsupportedBlockMessage","unsupportedBlockMessageDark","subTitleStyle","unsupportedBlockSubtitle","unsupportedBlockSubtitleDark","subtitle","icon","settings","iconStyle","unsupportedBlockIcon","unsupportedBlockIconDark","iconClassName","unsupportedBlock","unsupportedBlockDark","unsupportedBlockHeader","src","select","capabilities","getSettings","unsupportedBlockEditor","includes","dispatch","ownProps"],"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"]}
@@ -2,11 +2,16 @@ export const DEFAULT_BLOCK = {
2
2
  name: 'core/navigation-link'
3
3
  };
4
4
  export 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'];
5
- export const PRIORITIZED_INSERTER_BLOCKS = ['core/navigation-link/page', 'core/navigation-link'];
6
- export const SELECT_NAVIGATION_MENUS_ARGS = ['postType', 'wp_navigation', {
5
+ export const PRIORITIZED_INSERTER_BLOCKS = ['core/navigation-link/page', 'core/navigation-link']; // These parameters must be kept aligned with those in
6
+ // lib/compat/wordpress-6.3/navigation-block-preloading.php
7
+ // and
8
+ // edit-site/src/components/sidebar-navigation-screen-navigation-menus/constants.js
9
+
10
+ export const PRELOADED_NAVIGATION_MENUS_QUERY = {
7
11
  per_page: 100,
8
12
  status: ['publish', 'draft'],
9
13
  order: 'desc',
10
14
  orderby: 'date'
11
- }];
15
+ };
16
+ export const SELECT_NAVIGATION_MENUS_ARGS = ['postType', 'wp_navigation', PRELOADED_NAVIGATION_MENUS_QUERY];
12
17
  //# 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":"AAAA,OAAO,MAAMA,aAAa,GAAG;AAC5BC,EAAAA,IAAI,EAAE;AADsB,CAAtB;AAIP,OAAO,MAAMC,cAAc,GAAG,CAC7B,sBAD6B,EAE7B,aAF6B,EAG7B,mBAH6B,EAI7B,gBAJ6B,EAK7B,aAL6B,EAM7B,gBAN6B,EAO7B,iBAP6B,EAQ7B,gBAR6B,EAS7B,yBAT6B,EAU7B,eAV6B,CAAvB;AAaP,OAAO,MAAMC,2BAA2B,GAAG,CAC1C,2BAD0C,EAE1C,sBAF0C,CAApC;AAKP,OAAO,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":"AAAA,OAAO,MAAMA,aAAa,GAAG;AAC5BC,EAAAA,IAAI,EAAE;AADsB,CAAtB;AAIP,OAAO,MAAMC,cAAc,GAAG,CAC7B,sBAD6B,EAE7B,aAF6B,EAG7B,mBAH6B,EAI7B,gBAJ6B,EAK7B,aAL6B,EAM7B,gBAN6B,EAO7B,iBAP6B,EAQ7B,gBAR6B,EAS7B,yBAT6B,EAU7B,eAV6B,CAAvB;AAaP,OAAO,MAAMC,2BAA2B,GAAG,CAC1C,2BAD0C,EAE1C,sBAF0C,CAApC,C,CAKP;AACA;AACA;AACA;;AACA,OAAO,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;AAOP,OAAO,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"]}
@@ -12,7 +12,7 @@ import { useCallback, useState, useEffect, useRef, Platform } from '@wordpress/e
12
12
  import { InspectorControls, useBlockProps, __experimentalRecursionProvider as RecursionProvider, __experimentalUseHasRecursion as useHasRecursion, store as blockEditorStore, withColors, ContrastChecker, getColorClassName, Warning, __experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown, __experimentalUseBlockOverlayActive as useBlockOverlayActive, __experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients, privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
13
13
  import { EntityProvider, store as coreStore } from '@wordpress/core-data';
14
14
  import { useDispatch, useSelect } from '@wordpress/data';
15
- import { PanelBody, ToggleControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, Button, Spinner } from '@wordpress/components';
15
+ import { PanelBody, ToggleControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, Button, Spinner, Notice } from '@wordpress/components';
16
16
  import { __, sprintf } from '@wordpress/i18n';
17
17
  import { speak } from '@wordpress/a11y';
18
18
  import { close, Icon } from '@wordpress/icons';
@@ -143,7 +143,7 @@ function Navigation({
143
143
  convert: convertClassicMenu,
144
144
  status: classicMenuConversionStatus,
145
145
  error: classicMenuConversionError
146
- } = useConvertClassicToBlockMenu(clientId);
146
+ } = useConvertClassicToBlockMenu(createNavigationMenu);
147
147
  const isConvertingClassicMenu = classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;
148
148
  const handleUpdateMenu = useCallback((menuId, options = {
149
149
  focusNavigationBlock: false
@@ -321,6 +321,16 @@ function Navigation({
321
321
  const overlayMenuPreviewClasses = classnames('wp-block-navigation__overlay-menu-preview', {
322
322
  open: overlayMenuPreview
323
323
  });
324
+ const submenuAccessibilityNotice = !showSubmenuIcon && !openSubmenusOnClick ? __('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.') : '';
325
+ const isFirstRender = useRef(true); // Don't speak on first render.
326
+
327
+ useEffect(() => {
328
+ if (!isFirstRender.current && submenuAccessibilityNotice) {
329
+ speak(submenuAccessibilityNotice);
330
+ }
331
+
332
+ isFirstRender.current = false;
333
+ }, [submenuAccessibilityNotice]);
324
334
  const colorGradientSettings = useMultipleOriginColorsAndGradients();
325
335
  const stylingInspectorControls = createElement(Fragment, null, createElement(InspectorControls, null, hasSubmenuIndicatorSetting && createElement(PanelBody, {
326
336
  title: __('Display')
@@ -379,7 +389,11 @@ function Navigation({
379
389
  },
380
390
  disabled: attributes.openSubmenusOnClick,
381
391
  label: __('Show arrow')
382
- })))), colorGradientSettings.hasColorsOrGradients && createElement(InspectorControls, {
392
+ }), submenuAccessibilityNotice && createElement("div", null, createElement(Notice, {
393
+ spokenMessage: null,
394
+ status: "warning",
395
+ isDismissible: false
396
+ }, submenuAccessibilityNotice))))), colorGradientSettings.hasColorsOrGradients && createElement(InspectorControls, {
383
397
  group: "color"
384
398
  }, createElement(ColorGradientSettingsDropdown, {
385
399
  __experimentalIsRenderedInSidebar: true,