@wordpress/block-library 9.47.0 → 9.48.1

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 (552) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/build/columns/transforms.cjs +65 -0
  3. package/build/columns/transforms.cjs.map +2 -2
  4. package/build/comments/edit/placeholder.cjs +1 -1
  5. package/build/comments/edit/placeholder.cjs.map +2 -2
  6. package/build/cover/edit/inspector-controls.cjs +16 -4
  7. package/build/cover/edit/inspector-controls.cjs.map +2 -2
  8. package/build/gallery/edit.cjs +212 -331
  9. package/build/gallery/edit.cjs.map +2 -2
  10. package/build/gallery/transforms.cjs +43 -0
  11. package/build/gallery/transforms.cjs.map +2 -2
  12. package/build/heading/edit.cjs +0 -1
  13. package/build/heading/edit.cjs.map +2 -2
  14. package/build/image/image.cjs +14 -3
  15. package/build/image/image.cjs.map +2 -2
  16. package/build/image/use-open-image-media-editor-modal.cjs +8 -2
  17. package/build/image/use-open-image-media-editor-modal.cjs.map +2 -2
  18. package/build/list/edit.cjs +1 -8
  19. package/build/list/edit.cjs.map +2 -2
  20. package/build/list/ordered-list-settings.cjs +1 -44
  21. package/build/list/ordered-list-settings.cjs.map +2 -2
  22. package/build/list-item/hooks/use-merge.cjs +47 -24
  23. package/build/list-item/hooks/use-merge.cjs.map +2 -2
  24. package/build/navigation/edit/index.cjs +15 -26
  25. package/build/navigation/edit/index.cjs.map +2 -2
  26. package/build/navigation-link/edit.cjs +0 -1
  27. package/build/navigation-link/edit.cjs.map +2 -2
  28. package/build/navigation-submenu/edit.cjs +2 -1
  29. package/build/navigation-submenu/edit.cjs.map +2 -2
  30. package/build/paragraph/deprecated.cjs +1 -0
  31. package/build/paragraph/deprecated.cjs.map +2 -2
  32. package/build/paragraph/edit.cjs +10 -1
  33. package/build/paragraph/edit.cjs.map +3 -3
  34. package/build/playlist/block.json +12 -0
  35. package/build/playlist/edit.cjs +27 -1
  36. package/build/playlist/edit.cjs.map +2 -2
  37. package/build/playlist/save.cjs +8 -1
  38. package/build/playlist/save.cjs.map +2 -2
  39. package/build/playlist/view.cjs +1 -0
  40. package/build/playlist/view.cjs.map +2 -2
  41. package/build/post-featured-image/edit.cjs +6 -4
  42. package/build/post-featured-image/edit.cjs.map +2 -2
  43. package/build/post-time-to-read/index.cjs +1 -1
  44. package/build/post-time-to-read/index.cjs.map +2 -2
  45. package/build/post-time-to-read/variations.cjs +1 -1
  46. package/build/post-time-to-read/variations.cjs.map +2 -2
  47. package/build/pullquote/edit.cjs +2 -7
  48. package/build/pullquote/edit.cjs.map +2 -2
  49. package/build/quote/edit.cjs +4 -9
  50. package/build/quote/edit.cjs.map +2 -2
  51. package/build/shortcode/transforms.cjs +2 -2
  52. package/build/shortcode/transforms.cjs.map +2 -2
  53. package/build/site-logo/edit.cjs +4 -1
  54. package/build/site-logo/edit.cjs.map +2 -2
  55. package/build/utils/waveform-player.cjs +42 -9
  56. package/build/utils/waveform-player.cjs.map +2 -2
  57. package/build/utils/waveform-utils.cjs +6 -4
  58. package/build/utils/waveform-utils.cjs.map +2 -2
  59. package/build/video/edit-common-settings.cjs +3 -6
  60. package/build/video/edit-common-settings.cjs.map +2 -2
  61. package/build-module/columns/transforms.mjs +65 -0
  62. package/build-module/columns/transforms.mjs.map +2 -2
  63. package/build-module/comments/edit/placeholder.mjs +1 -1
  64. package/build-module/comments/edit/placeholder.mjs.map +2 -2
  65. package/build-module/cover/edit/inspector-controls.mjs +16 -4
  66. package/build-module/cover/edit/inspector-controls.mjs.map +2 -2
  67. package/build-module/gallery/edit.mjs +214 -334
  68. package/build-module/gallery/edit.mjs.map +2 -2
  69. package/build-module/gallery/transforms.mjs +43 -0
  70. package/build-module/gallery/transforms.mjs.map +2 -2
  71. package/build-module/heading/edit.mjs +1 -2
  72. package/build-module/heading/edit.mjs.map +2 -2
  73. package/build-module/image/image.mjs +15 -3
  74. package/build-module/image/image.mjs.map +2 -2
  75. package/build-module/image/use-open-image-media-editor-modal.mjs +8 -2
  76. package/build-module/image/use-open-image-media-editor-modal.mjs.map +2 -2
  77. package/build-module/list/edit.mjs +2 -9
  78. package/build-module/list/edit.mjs.map +2 -2
  79. package/build-module/list/ordered-list-settings.mjs +1 -45
  80. package/build-module/list/ordered-list-settings.mjs.map +2 -2
  81. package/build-module/list-item/hooks/use-merge.mjs +48 -25
  82. package/build-module/list-item/hooks/use-merge.mjs.map +2 -2
  83. package/build-module/navigation/edit/index.mjs +16 -33
  84. package/build-module/navigation/edit/index.mjs.map +2 -2
  85. package/build-module/navigation-link/edit.mjs +0 -1
  86. package/build-module/navigation-link/edit.mjs.map +2 -2
  87. package/build-module/navigation-submenu/edit.mjs +2 -1
  88. package/build-module/navigation-submenu/edit.mjs.map +2 -2
  89. package/build-module/paragraph/deprecated.mjs +1 -0
  90. package/build-module/paragraph/deprecated.mjs.map +2 -2
  91. package/build-module/paragraph/edit.mjs +12 -2
  92. package/build-module/paragraph/edit.mjs.map +2 -2
  93. package/build-module/playlist/block.json +12 -0
  94. package/build-module/playlist/edit.mjs +27 -1
  95. package/build-module/playlist/edit.mjs.map +2 -2
  96. package/build-module/playlist/save.mjs +8 -1
  97. package/build-module/playlist/save.mjs.map +2 -2
  98. package/build-module/playlist/view.mjs +1 -0
  99. package/build-module/playlist/view.mjs.map +2 -2
  100. package/build-module/post-featured-image/edit.mjs +6 -4
  101. package/build-module/post-featured-image/edit.mjs.map +2 -2
  102. package/build-module/post-time-to-read/index.mjs +1 -1
  103. package/build-module/post-time-to-read/index.mjs.map +2 -2
  104. package/build-module/post-time-to-read/variations.mjs +2 -2
  105. package/build-module/post-time-to-read/variations.mjs.map +2 -2
  106. package/build-module/pullquote/edit.mjs +2 -7
  107. package/build-module/pullquote/edit.mjs.map +2 -2
  108. package/build-module/quote/edit.mjs +5 -10
  109. package/build-module/quote/edit.mjs.map +2 -2
  110. package/build-module/shortcode/transforms.mjs +2 -2
  111. package/build-module/shortcode/transforms.mjs.map +2 -2
  112. package/build-module/site-logo/edit.mjs +5 -1
  113. package/build-module/site-logo/edit.mjs.map +2 -2
  114. package/build-module/utils/waveform-player.mjs +44 -11
  115. package/build-module/utils/waveform-player.mjs.map +2 -2
  116. package/build-module/utils/waveform-utils.mjs +6 -4
  117. package/build-module/utils/waveform-utils.mjs.map +2 -2
  118. package/build-module/video/edit-common-settings.mjs +4 -7
  119. package/build-module/video/edit-common-settings.mjs.map +2 -2
  120. package/build-style/comment-template/style-rtl.css +1 -0
  121. package/build-style/comment-template/style.css +1 -0
  122. package/build-style/common-rtl.css +30 -10
  123. package/build-style/common.css +30 -10
  124. package/build-style/cover/style-rtl.css +2 -1
  125. package/build-style/cover/style.css +2 -1
  126. package/build-style/editor-rtl.css +22 -11
  127. package/build-style/editor.css +22 -11
  128. package/build-style/form-input/style-rtl.css +2 -0
  129. package/build-style/form-input/style.css +2 -0
  130. package/build-style/gallery/style-rtl.css +4 -2
  131. package/build-style/gallery/style.css +4 -2
  132. package/build-style/media-text/style-rtl.css +2 -1
  133. package/build-style/media-text/style.css +2 -1
  134. package/build-style/playlist/style-rtl.css +3 -0
  135. package/build-style/playlist/style.css +3 -0
  136. package/build-style/query/editor-rtl.css +8 -4
  137. package/build-style/query/editor.css +8 -4
  138. package/build-style/read-more/style-rtl.css +1 -0
  139. package/build-style/read-more/style.css +1 -0
  140. package/build-style/reset-rtl.css +3 -1
  141. package/build-style/reset.css +3 -1
  142. package/build-style/search/style-rtl.css +3 -1
  143. package/build-style/search/style.css +3 -1
  144. package/build-style/site-logo/editor-rtl.css +2 -1
  145. package/build-style/site-logo/editor.css +2 -1
  146. package/build-style/style-rtl.css +53 -17
  147. package/build-style/style.css +53 -17
  148. package/build-style/tab/style-rtl.css +3 -1
  149. package/build-style/tab/style.css +3 -1
  150. package/build-style/template-part/editor-rtl.css +8 -4
  151. package/build-style/template-part/editor.css +8 -4
  152. package/build-style/video/style-rtl.css +2 -1
  153. package/build-style/video/style.css +2 -1
  154. package/package.json +51 -47
  155. package/src/accordion/README.md +97 -0
  156. package/src/accordion-heading/README.md +81 -0
  157. package/src/accordion-item/README.md +85 -0
  158. package/src/accordion-panel/README.md +74 -0
  159. package/src/archives/README.md +56 -0
  160. package/src/audio/README.md +55 -0
  161. package/src/avatar/README.md +74 -0
  162. package/src/block/README.md +56 -0
  163. package/src/breadcrumbs/README.md +67 -0
  164. package/src/button/README.md +93 -0
  165. package/src/buttons/README.md +80 -0
  166. package/src/calendar/README.md +51 -0
  167. package/src/categories/README.md +69 -0
  168. package/src/code/README.md +55 -0
  169. package/src/column/README.md +72 -0
  170. package/src/columns/README.md +90 -0
  171. package/src/columns/test/transforms.js +164 -0
  172. package/src/columns/transforms.js +74 -0
  173. package/src/comment-author-avatar/README.md +63 -0
  174. package/src/comment-author-name/README.md +67 -0
  175. package/src/comment-content/README.md +61 -0
  176. package/src/comment-date/README.md +67 -0
  177. package/src/comment-edit-link/README.md +67 -0
  178. package/src/comment-reply-link/README.md +63 -0
  179. package/src/comment-template/README.md +60 -0
  180. package/src/comments/README.md +88 -0
  181. package/src/comments/edit/placeholder.js +1 -1
  182. package/src/comments-pagination/README.md +77 -0
  183. package/src/comments-pagination-next/README.md +64 -0
  184. package/src/comments-pagination-numbers/README.md +64 -0
  185. package/src/comments-pagination-previous/README.md +64 -0
  186. package/src/comments-title/README.md +70 -0
  187. package/src/common.scss +63 -10
  188. package/src/cover/README.md +111 -0
  189. package/src/cover/edit/inspector-controls.js +61 -45
  190. package/src/cover/test/edit.js +38 -0
  191. package/src/details/README.md +65 -0
  192. package/src/embed/README.md +56 -0
  193. package/src/file/README.md +60 -0
  194. package/src/footnotes/README.md +64 -0
  195. package/src/form/README.md +90 -0
  196. package/src/form-input/README.md +74 -0
  197. package/src/form-submission-notification/README.md +50 -0
  198. package/src/form-submit-button/README.md +54 -0
  199. package/src/freeform/README.md +49 -0
  200. package/src/gallery/README.md +115 -0
  201. package/src/gallery/edit.js +213 -350
  202. package/src/gallery/test/transforms.js +155 -0
  203. package/src/gallery/transforms.js +47 -0
  204. package/src/group/README.md +80 -0
  205. package/src/heading/README.md +60 -0
  206. package/src/heading/edit.js +1 -2
  207. package/src/home-link/README.md +66 -0
  208. package/src/home-link/index.php +3 -15
  209. package/src/html/README.md +48 -0
  210. package/src/icon/README.md +63 -0
  211. package/src/image/README.md +102 -0
  212. package/src/image/image.js +50 -35
  213. package/src/image/index.php +4 -4
  214. package/src/image/test/use-open-image-media-editor-modal.js +41 -0
  215. package/src/image/use-open-image-media-editor-modal.js +7 -1
  216. package/src/latest-comments/README.md +57 -0
  217. package/src/latest-posts/README.md +71 -0
  218. package/src/list/README.md +70 -0
  219. package/src/list/edit.js +2 -9
  220. package/src/list/ordered-list-settings.js +46 -92
  221. package/src/list-item/README.md +71 -0
  222. package/src/list-item/hooks/use-merge.js +53 -46
  223. package/src/loginout/README.md +56 -0
  224. package/src/math/README.md +50 -0
  225. package/src/media-text/README.md +92 -0
  226. package/src/missing/README.md +55 -0
  227. package/src/more/README.md +49 -0
  228. package/src/navigation/README.md +115 -0
  229. package/src/navigation/edit/index.js +10 -30
  230. package/src/navigation-link/README.md +93 -0
  231. package/src/navigation-link/edit.js +0 -1
  232. package/src/navigation-link/index.php +1 -15
  233. package/src/navigation-link/test/__snapshots__/hooks.js.snap +45 -134
  234. package/src/navigation-overlay-close/README.md +48 -0
  235. package/src/navigation-submenu/README.md +84 -0
  236. package/src/navigation-submenu/edit.js +1 -0
  237. package/src/navigation-submenu/index.php +1 -17
  238. package/src/nextpage/README.md +50 -0
  239. package/src/page-list/README.md +84 -0
  240. package/src/page-list/index.php +3 -15
  241. package/src/page-list-item/README.md +77 -0
  242. package/src/paragraph/README.md +70 -0
  243. package/src/paragraph/deprecated.js +1 -0
  244. package/src/paragraph/edit.js +13 -1
  245. package/src/pattern/README.md +45 -0
  246. package/src/playlist/README.md +86 -0
  247. package/src/playlist/block.json +12 -0
  248. package/src/playlist/edit.js +27 -0
  249. package/src/playlist/index.php +10 -3
  250. package/src/playlist/save.js +9 -1
  251. package/src/playlist/style.scss +7 -0
  252. package/src/playlist/view.js +1 -0
  253. package/src/playlist-track/README.md +69 -0
  254. package/src/post-author/README.md +78 -0
  255. package/src/post-author-biography/README.md +59 -0
  256. package/src/post-author-name/README.md +63 -0
  257. package/src/post-author-name/index.php +1 -1
  258. package/src/post-comment/README.md +61 -0
  259. package/src/post-comments-count/README.md +58 -0
  260. package/src/post-comments-form/README.md +59 -0
  261. package/src/post-comments-link/README.md +60 -0
  262. package/src/post-content/README.md +71 -0
  263. package/src/post-date/README.md +65 -0
  264. package/src/post-date/index.php +1 -1
  265. package/src/post-excerpt/README.md +66 -0
  266. package/src/post-featured-image/README.md +85 -0
  267. package/src/post-featured-image/edit.js +15 -10
  268. package/src/post-featured-image/index.php +1 -1
  269. package/src/post-navigation-link/README.md +63 -0
  270. package/src/post-template/README.md +71 -0
  271. package/src/post-terms/README.md +65 -0
  272. package/src/post-time-to-read/README.md +63 -0
  273. package/src/post-time-to-read/index.js +1 -1
  274. package/src/post-time-to-read/variations.js +2 -2
  275. package/src/post-title/README.md +69 -0
  276. package/src/preformatted/README.md +50 -0
  277. package/src/pullquote/README.md +64 -0
  278. package/src/pullquote/edit.js +1 -7
  279. package/src/query/README.md +64 -0
  280. package/src/query-no-results/README.md +65 -0
  281. package/src/query-pagination/README.md +79 -0
  282. package/src/query-pagination-next/README.md +67 -0
  283. package/src/query-pagination-numbers/README.md +65 -0
  284. package/src/query-pagination-previous/README.md +67 -0
  285. package/src/query-title/README.md +65 -0
  286. package/src/query-total/README.md +66 -0
  287. package/src/quote/README.md +75 -0
  288. package/src/quote/edit.js +3 -9
  289. package/src/read-more/README.md +61 -0
  290. package/src/read-more/index.php +2 -2
  291. package/src/rss/README.md +62 -0
  292. package/src/search/README.md +66 -0
  293. package/src/separator/README.md +62 -0
  294. package/src/shortcode/README.md +44 -0
  295. package/src/shortcode/transforms.js +2 -2
  296. package/src/site-logo/README.md +72 -0
  297. package/src/site-logo/edit.js +5 -0
  298. package/src/site-tagline/README.md +56 -0
  299. package/src/site-title/README.md +57 -0
  300. package/src/social-link/README.md +64 -0
  301. package/src/social-links/README.md +98 -0
  302. package/src/spacer/README.md +53 -0
  303. package/src/tab/README.md +69 -0
  304. package/src/tab-list/README.md +79 -0
  305. package/src/tab-panel/README.md +75 -0
  306. package/src/tab-panels/README.md +75 -0
  307. package/src/table/README.md +71 -0
  308. package/src/table-of-contents/README.md +61 -0
  309. package/src/tabs/README.md +83 -0
  310. package/src/tag-cloud/README.md +62 -0
  311. package/src/template-part/README.md +48 -0
  312. package/src/term-count/README.md +59 -0
  313. package/src/term-description/README.md +60 -0
  314. package/src/term-name/README.md +65 -0
  315. package/src/term-template/README.md +65 -0
  316. package/src/terms-query/README.md +58 -0
  317. package/src/text-columns/README.md +51 -0
  318. package/src/utils/test/waveform-player.js +254 -0
  319. package/src/utils/waveform-player.js +90 -18
  320. package/src/utils/waveform-utils.js +15 -11
  321. package/src/verse/README.md +58 -0
  322. package/src/video/README.md +58 -0
  323. package/src/video/edit-common-settings.js +4 -7
  324. package/src/audio/edit.native.js +0 -250
  325. package/src/audio/style.native.scss +0 -13
  326. package/src/audio/test/__snapshots__/edit.native.js.snap +0 -546
  327. package/src/audio/test/__snapshots__/transforms.native.js.snap +0 -25
  328. package/src/audio/test/edit.native.js +0 -132
  329. package/src/audio/test/transforms.native.js +0 -43
  330. package/src/audio/transforms.native.js +0 -12
  331. package/src/block/edit-title.native.js +0 -67
  332. package/src/block/edit.native.js +0 -247
  333. package/src/block/editor.native.scss +0 -125
  334. package/src/block/test/__snapshots__/transforms.native.js.snap +0 -15
  335. package/src/block/test/edit.native.js +0 -262
  336. package/src/block/test/transforms.native.js +0 -40
  337. package/src/button/color-background.native.js +0 -41
  338. package/src/button/edit.native.js +0 -567
  339. package/src/button/editor.native.scss +0 -70
  340. package/src/button/rich-text.android.scss +0 -6
  341. package/src/button/rich-text.ios.scss +0 -6
  342. package/src/buttons/edit.native.js +0 -157
  343. package/src/buttons/editor.native.scss +0 -11
  344. package/src/buttons/test/__snapshots__/edit.native.js.snap +0 -99
  345. package/src/buttons/test/__snapshots__/transforms.native.js.snap +0 -31
  346. package/src/buttons/test/edit.native.js +0 -485
  347. package/src/buttons/test/transforms.native.js +0 -48
  348. package/src/buttons/transforms.native.js +0 -12
  349. package/src/code/edit.native.js +0 -70
  350. package/src/code/test/__snapshots__/edit.native.js.snap +0 -13
  351. package/src/code/test/edit.native.js +0 -65
  352. package/src/code/theme.native.scss +0 -22
  353. package/src/code/transforms.native.js +0 -12
  354. package/src/column/column-preview.native.js +0 -58
  355. package/src/column/edit.native.js +0 -273
  356. package/src/column/editor.native.scss +0 -75
  357. package/src/columns/columnCalculations.native.js +0 -178
  358. package/src/columns/edit.native.js +0 -507
  359. package/src/columns/editor.native.scss +0 -17
  360. package/src/columns/test/__snapshots__/edit.native.js.snap +0 -305
  361. package/src/columns/test/__snapshots__/transforms.native.js.snap +0 -61
  362. package/src/columns/test/edit.native.js +0 -496
  363. package/src/columns/test/transforms.native.js +0 -89
  364. package/src/columns/transforms.native.js +0 -12
  365. package/src/cover/controls.native.js +0 -307
  366. package/src/cover/edit.native.js +0 -708
  367. package/src/cover/focal-point-settings-button.native.js +0 -53
  368. package/src/cover/overlay-color-settings.native.js +0 -106
  369. package/src/cover/style.native.scss +0 -220
  370. package/src/cover/test/__snapshots__/edit.native.js.snap +0 -105
  371. package/src/cover/test/__snapshots__/transforms.native.js.snap +0 -73
  372. package/src/cover/test/edit.native.js +0 -701
  373. package/src/cover/test/transforms.native.js +0 -116
  374. package/src/cover/transforms.native.js +0 -12
  375. package/src/cover/use-cover-is-dark.native.js +0 -51
  376. package/src/embed/edit.native.js +0 -345
  377. package/src/embed/embed-controls.native.js +0 -65
  378. package/src/embed/embed-link-settings.native.js +0 -99
  379. package/src/embed/embed-loading.native.js +0 -29
  380. package/src/embed/embed-no-preview.native.js +0 -230
  381. package/src/embed/embed-placeholder.native.js +0 -178
  382. package/src/embed/embed-preview.native.js +0 -157
  383. package/src/embed/styles.native.scss +0 -196
  384. package/src/embed/test/__snapshots__/index.native.js.snap +0 -191
  385. package/src/embed/test/__snapshots__/transforms.native.js.snap +0 -23
  386. package/src/embed/test/index.native.js +0 -1125
  387. package/src/embed/test/transforms.native.js +0 -44
  388. package/src/embed/transforms.native.js +0 -12
  389. package/src/embed/wp-embed-preview.native.js +0 -80
  390. package/src/file/edit.native.js +0 -605
  391. package/src/file/style.native.scss +0 -79
  392. package/src/file/test/__snapshots__/edit.native.js.snap +0 -580
  393. package/src/file/test/__snapshots__/transforms.native.js.snap +0 -19
  394. package/src/file/test/edit.native.js +0 -93
  395. package/src/file/test/transforms.native.js +0 -43
  396. package/src/file/transforms.native.js +0 -12
  397. package/src/freeform/edit.native.js +0 -13
  398. package/src/freeform/test/__snapshots__/index.native.js.snap +0 -7
  399. package/src/freeform/test/__snapshots__/transforms.native.js.snap +0 -19
  400. package/src/freeform/test/index.native.js +0 -57
  401. package/src/freeform/test/transforms.native.js +0 -39
  402. package/src/gallery/gallery-styles.native.scss +0 -8
  403. package/src/gallery/gallery.native.js +0 -124
  404. package/src/gallery/styles.native.scss +0 -7
  405. package/src/gallery/test/__snapshots__/index.native.js.snap +0 -177
  406. package/src/gallery/test/__snapshots__/transforms.native.js.snap +0 -53
  407. package/src/gallery/test/helpers.native.js +0 -106
  408. package/src/gallery/test/index.native.js +0 -700
  409. package/src/gallery/test/transforms.native.js +0 -53
  410. package/src/gallery/test/use-get-media.native.js +0 -24
  411. package/src/gallery/transforms.native.js +0 -12
  412. package/src/gallery/use-get-media.native.js +0 -49
  413. package/src/group/edit.native.js +0 -137
  414. package/src/group/editor.native.scss +0 -56
  415. package/src/group/test/__snapshots__/edit.native.js.snap +0 -19
  416. package/src/group/test/__snapshots__/transforms.native.js.snap +0 -35
  417. package/src/group/test/edit.native.js +0 -100
  418. package/src/group/test/transforms.native.js +0 -73
  419. package/src/heading/edit.native.js +0 -159
  420. package/src/heading/test/__snapshots__/index.native.js.snap +0 -43
  421. package/src/heading/test/__snapshots__/transforms.native.js.snap +0 -47
  422. package/src/heading/test/index.native.js +0 -257
  423. package/src/heading/test/transforms.native.js +0 -46
  424. package/src/heading/transforms.native.js +0 -12
  425. package/src/html/transforms.native.js +0 -11
  426. package/src/image/edit.native.js +0 -959
  427. package/src/image/styles.native.scss +0 -70
  428. package/src/image/test/__snapshots__/transforms.native.js.snap +0 -49
  429. package/src/image/test/edit.native.js +0 -459
  430. package/src/image/test/transforms.native.js +0 -49
  431. package/src/image/transforms.native.js +0 -12
  432. package/src/index.native.js +0 -274
  433. package/src/latest-posts/edit.native.js +0 -294
  434. package/src/latest-posts/style.native.scss +0 -47
  435. package/src/latest-posts/test/__snapshots__/edit.native.js.snap +0 -3
  436. package/src/latest-posts/test/__snapshots__/transforms.native.js.snap +0 -15
  437. package/src/latest-posts/test/edit.native.js +0 -49
  438. package/src/latest-posts/test/transforms.native.js +0 -61
  439. package/src/list/tag-name.native.js +0 -12
  440. package/src/list/test/__snapshots__/edit.native.js.snap +0 -121
  441. package/src/list/test/__snapshots__/transforms.native.js.snap +0 -85
  442. package/src/list/test/edit.native.js +0 -602
  443. package/src/list/test/transforms.native.js +0 -56
  444. package/src/list/transforms.native.js +0 -12
  445. package/src/list-item/edit.native.js +0 -175
  446. package/src/list-item/hooks/use-enter.native.js +0 -81
  447. package/src/list-item/icons.native.js +0 -34
  448. package/src/list-item/list-style-type.native.js +0 -146
  449. package/src/list-item/style.native.scss +0 -57
  450. package/src/media-text/edit.native.js +0 -417
  451. package/src/media-text/icon-retry.native.js +0 -11
  452. package/src/media-text/media-container.native.js +0 -393
  453. package/src/media-text/style.native.scss +0 -191
  454. package/src/media-text/test/__snapshots__/transforms.native.js.snap +0 -73
  455. package/src/media-text/test/edit.native.js +0 -58
  456. package/src/media-text/test/transforms.native.js +0 -116
  457. package/src/media-text/transforms.native.js +0 -12
  458. package/src/missing/edit.native.js +0 -294
  459. package/src/missing/style.native.scss +0 -79
  460. package/src/missing/test/__snapshots__/edit.native.js.snap +0 -110
  461. package/src/missing/test/edit-integration.native.js +0 -168
  462. package/src/missing/test/edit.native.js +0 -81
  463. package/src/more/edit.native.js +0 -36
  464. package/src/more/editor.native.scss +0 -21
  465. package/src/more/test/__snapshots__/edit.native.js.snap +0 -7
  466. package/src/more/test/__snapshots__/transforms.native.js.snap +0 -19
  467. package/src/more/test/edit.native.js +0 -41
  468. package/src/more/test/transforms.native.js +0 -42
  469. package/src/more/transforms.native.js +0 -12
  470. package/src/navigation-link/shared/build-css-font-sizes.php +0 -43
  471. package/src/nextpage/edit.native.js +0 -58
  472. package/src/nextpage/editor.native.scss +0 -21
  473. package/src/nextpage/test/__snapshots__/transforms.native.js.snap +0 -19
  474. package/src/nextpage/test/transforms.native.js +0 -42
  475. package/src/nextpage/transforms.native.js +0 -12
  476. package/src/paragraph/edit.native.js +0 -116
  477. package/src/paragraph/test/__snapshots__/edit.native.js.snap +0 -88
  478. package/src/paragraph/test/__snapshots__/transforms.native.js.snap +0 -65
  479. package/src/paragraph/test/edit.native.js +0 -999
  480. package/src/paragraph/test/transforms.native.js +0 -51
  481. package/src/paragraph/transforms.native.js +0 -12
  482. package/src/preformatted/edit.native.js +0 -48
  483. package/src/preformatted/styles.native.scss +0 -30
  484. package/src/preformatted/test/__snapshots__/edit.native.js.snap +0 -95
  485. package/src/preformatted/test/__snapshots__/transforms.native.js.snap +0 -37
  486. package/src/preformatted/test/edit.native.js +0 -111
  487. package/src/preformatted/test/transforms.native.js +0 -47
  488. package/src/preformatted/transforms.native.js +0 -12
  489. package/src/pullquote/blockquote.native.js +0 -39
  490. package/src/pullquote/blockquote.native.scss +0 -8
  491. package/src/pullquote/edit.native.js +0 -128
  492. package/src/pullquote/figure.native.js +0 -33
  493. package/src/pullquote/figure.native.scss +0 -16
  494. package/src/pullquote/test/__snapshots__/transforms.native.js.snap +0 -47
  495. package/src/pullquote/test/edit.native.js +0 -73
  496. package/src/pullquote/test/transforms.native.js +0 -46
  497. package/src/pullquote/transforms.native.js +0 -12
  498. package/src/quote/test/__snapshots__/transforms.native.js.snap +0 -49
  499. package/src/quote/test/edit.native.js +0 -94
  500. package/src/quote/test/transforms.native.js +0 -69
  501. package/src/quote/transforms.native.js +0 -12
  502. package/src/search/edit.native.js +0 -486
  503. package/src/search/style.native.scss +0 -99
  504. package/src/search/test/__snapshots__/edit.native.js.snap +0 -827
  505. package/src/search/test/__snapshots__/transforms.native.js.snap +0 -15
  506. package/src/search/test/edit.native.js +0 -170
  507. package/src/search/test/transforms.native.js +0 -40
  508. package/src/separator/separator-settings.native.js +0 -3
  509. package/src/separator/test/__snapshots__/edit.native.js.snap +0 -7
  510. package/src/separator/test/__snapshots__/transforms.native.js.snap +0 -25
  511. package/src/separator/test/edit.native.js +0 -41
  512. package/src/separator/test/transforms.native.js +0 -42
  513. package/src/separator/transforms.native.js +0 -12
  514. package/src/shortcode/edit.native.js +0 -77
  515. package/src/shortcode/style.native.scss +0 -44
  516. package/src/shortcode/test/__snapshots__/edit.native.js.snap +0 -9
  517. package/src/shortcode/test/__snapshots__/transforms.native.js.snap +0 -19
  518. package/src/shortcode/test/edit.native.js +0 -70
  519. package/src/shortcode/test/transforms.native.js +0 -42
  520. package/src/shortcode/transforms.native.js +0 -12
  521. package/src/social-link/edit.native.js +0 -219
  522. package/src/social-link/editor.native.scss +0 -18
  523. package/src/social-links/edit.native.js +0 -147
  524. package/src/social-links/editor.native.scss +0 -25
  525. package/src/social-links/test/__snapshots__/edit.native.js.snap +0 -57
  526. package/src/social-links/test/__snapshots__/transforms.native.js.snap +0 -31
  527. package/src/social-links/test/edit.native.js +0 -266
  528. package/src/social-links/test/transforms.native.js +0 -53
  529. package/src/spacer/controls.native.js +0 -86
  530. package/src/spacer/edit.native.js +0 -110
  531. package/src/spacer/editor.native.scss +0 -18
  532. package/src/spacer/save.native.js +0 -18
  533. package/src/spacer/test/__snapshots__/index.native.js.snap +0 -43
  534. package/src/spacer/test/__snapshots__/transforms.native.js.snap +0 -25
  535. package/src/spacer/test/index.native.js +0 -257
  536. package/src/spacer/test/transforms.native.js +0 -42
  537. package/src/table/transforms.native.js +0 -11
  538. package/src/text-columns/transforms.native.js +0 -12
  539. package/src/utils/init-block.native.js +0 -40
  540. package/src/utils/transformation-categories.native.js +0 -47
  541. package/src/verse/test/__snapshots__/edit.native.js.snap +0 -13
  542. package/src/verse/test/__snapshots__/transforms.native.js.snap +0 -31
  543. package/src/verse/test/edit.native.js +0 -118
  544. package/src/verse/test/transforms.native.js +0 -46
  545. package/src/verse/transforms.native.js +0 -12
  546. package/src/video/edit.native.js +0 -406
  547. package/src/video/icon-retry.native.js +0 -11
  548. package/src/video/style.native.scss +0 -81
  549. package/src/video/test/__snapshots__/transforms.native.js.snap +0 -41
  550. package/src/video/test/edit.native.js +0 -53
  551. package/src/video/test/transforms.native.js +0 -49
  552. package/src/video/transforms.native.js +0 -12
@@ -17,7 +17,6 @@ import {
17
17
  __experimentalToggleGroupControl as ToggleGroupControl,
18
18
  __experimentalToggleGroupControlOption as ToggleGroupControlOption,
19
19
  ToolbarDropdownMenu,
20
- PanelBody,
21
20
  } from '@wordpress/components';
22
21
  import {
23
22
  store as blockEditorStore,
@@ -29,7 +28,7 @@ import {
29
28
  MediaReplaceFlow,
30
29
  useSettings,
31
30
  } from '@wordpress/block-editor';
32
- import { Platform, useEffect, useMemo } from '@wordpress/element';
31
+ import { useEffect, useMemo } from '@wordpress/element';
33
32
  import { __, _x, sprintf } from '@wordpress/i18n';
34
33
  import { useSelect, useDispatch } from '@wordpress/data';
35
34
  import { View } from '@wordpress/primitives';
@@ -112,13 +111,9 @@ const NAVIGATION_BUTTON_TYPE_OPTIONS = [
112
111
  ];
113
112
  const ALLOWED_MEDIA_TYPES = [ 'image' ];
114
113
 
115
- const PLACEHOLDER_TEXT = Platform.isNative
116
- ? __( 'Add media' )
117
- : __( 'Drag and drop images, upload, or choose from your library.' );
118
-
119
- const MOBILE_CONTROL_PROPS_RANGE_CONTROL = Platform.isNative
120
- ? { type: 'stepper' }
121
- : {};
114
+ const PLACEHOLDER_TEXT = __(
115
+ 'Drag and drop images, upload, or choose from your library.'
116
+ );
122
117
 
123
118
  const DEFAULT_BLOCK = { name: 'core/image' };
124
119
  const EMPTY_ARRAY = [];
@@ -132,7 +127,6 @@ export default function GalleryEdit( props ) {
132
127
  isSelected,
133
128
  insertBlocksAfter,
134
129
  isContentLocked,
135
- onFocus,
136
130
  } = props;
137
131
 
138
132
  const [ lightboxSetting, defaultRatios, themeRatios, showDefaultRatios ] =
@@ -169,42 +163,32 @@ export default function GalleryEdit( props ) {
169
163
  const { createSuccessNotice, createErrorNotice } =
170
164
  useDispatch( noticesStore );
171
165
 
172
- const {
173
- getBlock,
174
- getSettings,
175
- innerBlockImages,
176
- blockWasJustInserted,
177
- multiGallerySelection,
178
- } = useSelect(
179
- ( select ) => {
180
- const {
181
- getBlockName,
182
- getMultiSelectedBlockClientIds,
183
- getSettings: _getSettings,
184
- getBlock: _getBlock,
185
- wasBlockJustInserted,
186
- } = select( blockEditorStore );
187
- const multiSelectedClientIds = getMultiSelectedBlockClientIds();
188
-
189
- return {
190
- getBlock: _getBlock,
191
- getSettings: _getSettings,
192
- innerBlockImages:
193
- _getBlock( clientId )?.innerBlocks ?? EMPTY_ARRAY,
194
- blockWasJustInserted: wasBlockJustInserted(
195
- clientId,
196
- 'inserter_menu'
197
- ),
198
- multiGallerySelection:
199
- multiSelectedClientIds.length &&
200
- multiSelectedClientIds.every(
201
- ( _clientId ) =>
202
- getBlockName( _clientId ) === 'core/gallery'
203
- ),
204
- };
205
- },
206
- [ clientId ]
207
- );
166
+ const { getBlock, getSettings, innerBlockImages, multiGallerySelection } =
167
+ useSelect(
168
+ ( select ) => {
169
+ const {
170
+ getBlockName,
171
+ getMultiSelectedBlockClientIds,
172
+ getSettings: _getSettings,
173
+ getBlock: _getBlock,
174
+ } = select( blockEditorStore );
175
+ const multiSelectedClientIds = getMultiSelectedBlockClientIds();
176
+
177
+ return {
178
+ getBlock: _getBlock,
179
+ getSettings: _getSettings,
180
+ innerBlockImages:
181
+ _getBlock( clientId )?.innerBlocks ?? EMPTY_ARRAY,
182
+ multiGallerySelection:
183
+ multiSelectedClientIds.length &&
184
+ multiSelectedClientIds.every(
185
+ ( _clientId ) =>
186
+ getBlockName( _clientId ) === 'core/gallery'
187
+ ),
188
+ };
189
+ },
190
+ [ clientId ]
191
+ );
208
192
 
209
193
  const images = useMemo(
210
194
  () =>
@@ -327,15 +311,7 @@ export default function GalleryEdit( props ) {
327
311
  }
328
312
 
329
313
  function isValidFileType( file ) {
330
- // It's necessary to retrieve the media type from the raw image data for already-uploaded images on native.
331
- const nativeFileData =
332
- Platform.isNative && file.id
333
- ? imageData.find( ( { id } ) => id === file.id )
334
- : null;
335
-
336
- const mediaTypeSelector = nativeFileData
337
- ? nativeFileData?.media_type
338
- : file.type;
314
+ const mediaTypeSelector = file.type;
339
315
 
340
316
  return (
341
317
  ALLOWED_MEDIA_TYPES.some(
@@ -593,30 +569,15 @@ export default function GalleryEdit( props ) {
593
569
 
594
570
  const hasImages = !! images.length;
595
571
  const hasImageIds = hasImages && images.some( ( image ) => !! image.id );
596
- const imagesUploading = images.some( ( img ) =>
597
- ! Platform.isNative
598
- ? ! img.id && img.url?.indexOf( 'blob:' ) === 0
599
- : img.url?.indexOf( 'file:' ) === 0
572
+ const imagesUploading = images.some(
573
+ ( img ) => ! img.id && img.url?.indexOf( 'blob:' ) === 0
600
574
  );
601
575
 
602
- // MediaPlaceholder props are different between web and native hence, we provide a platform-specific set.
603
- const mediaPlaceholderProps = Platform.select( {
604
- web: {
605
- addToGallery: false,
606
- disableMediaButtons: imagesUploading,
607
- value: {},
608
- },
609
- native: {
610
- addToGallery: hasImageIds,
611
- isAppender: hasImages,
612
- disableMediaButtons:
613
- ( hasImages && ! isSelected ) || imagesUploading,
614
- value: hasImageIds ? images : {},
615
- autoOpenMediaUpload:
616
- ! hasImages && isSelected && blockWasJustInserted,
617
- onFocus,
618
- },
619
- } );
576
+ const mediaPlaceholderProps = {
577
+ addToGallery: false,
578
+ disableMediaButtons: imagesUploading,
579
+ value: {},
580
+ };
620
581
  const mediaPlaceholder = (
621
582
  <MediaPlaceholder
622
583
  handleUpload={ false }
@@ -637,17 +598,11 @@ export default function GalleryEdit( props ) {
637
598
  className: clsx( className, 'has-nested-images' ),
638
599
  } );
639
600
 
640
- const nativeInnerBlockProps = Platform.isNative && {
641
- marginHorizontal: 0,
642
- marginVertical: 0,
643
- };
644
-
645
601
  const innerBlocksProps = useInnerBlocksProps( blockProps, {
646
602
  defaultBlock: DEFAULT_BLOCK,
647
603
  directInsert: true,
648
604
  orientation: 'horizontal',
649
605
  renderAppender: false,
650
- ...nativeInnerBlockProps,
651
606
  } );
652
607
 
653
608
  const dropdownMenuProps = useToolsPanelDropdownMenuProps();
@@ -666,189 +621,37 @@ export default function GalleryEdit( props ) {
666
621
  return (
667
622
  <>
668
623
  <InspectorControls>
669
- { Platform.isWeb && (
670
- <ToolsPanel
671
- label={ __( 'Settings' ) }
672
- resetAll={ () => {
673
- setAttributes( {
674
- navigationButtonType: 'icon',
675
- columns: undefined,
676
- imageCrop: true,
677
- randomOrder: false,
678
- } );
679
-
680
- setAspectRatio( 'auto' );
681
-
682
- if ( sizeSlug !== DEFAULT_MEDIA_SIZE_SLUG ) {
683
- updateImagesSize( DEFAULT_MEDIA_SIZE_SLUG );
684
- }
685
-
686
- if ( linkTarget ) {
687
- toggleOpenInNewTab( false );
688
- }
689
- } }
690
- dropdownMenuProps={ dropdownMenuProps }
691
- >
692
- { images.length > 1 && (
693
- <ToolsPanelItem
694
- isShownByDefault
695
- label={ __( 'Columns' ) }
696
- hasValue={ () =>
697
- !! columns && columns !== images.length
698
- }
699
- onDeselect={ () =>
700
- setColumnsNumber( undefined )
701
- }
702
- >
703
- <RangeControl
704
- label={ __( 'Columns' ) }
705
- value={
706
- columns
707
- ? columns
708
- : defaultColumnsNumber(
709
- images.length
710
- )
711
- }
712
- onChange={ setColumnsNumber }
713
- min={ 1 }
714
- max={ Math.min(
715
- MAX_COLUMNS,
716
- images.length
717
- ) }
718
- required
719
- __next40pxDefaultSize
720
- />
721
- </ToolsPanelItem>
722
- ) }
723
- { imageSizeOptions?.length > 0 && (
724
- <ToolsPanelItem
725
- isShownByDefault
726
- label={ __( 'Resolution' ) }
727
- hasValue={ () =>
728
- sizeSlug !== DEFAULT_MEDIA_SIZE_SLUG
729
- }
730
- onDeselect={ () =>
731
- updateImagesSize( DEFAULT_MEDIA_SIZE_SLUG )
732
- }
733
- >
734
- <SelectControl
735
- label={ __( 'Resolution' ) }
736
- help={ __(
737
- 'Select the size of the source images.'
738
- ) }
739
- value={ sizeSlug }
740
- options={ imageSizeOptions }
741
- onChange={ updateImagesSize }
742
- hideCancelButton
743
- size="__unstable-large"
744
- />
745
- </ToolsPanelItem>
746
- ) }
747
- <ToolsPanelItem
748
- isShownByDefault
749
- label={ __( 'Crop images to fit' ) }
750
- hasValue={ () => ! imageCrop }
751
- onDeselect={ () =>
752
- setAttributes( { imageCrop: true } )
753
- }
754
- >
755
- <ToggleControl
756
- label={ __( 'Crop images to fit' ) }
757
- checked={ !! imageCrop }
758
- onChange={ toggleImageCrop }
759
- />
760
- </ToolsPanelItem>
761
- <ToolsPanelItem
762
- isShownByDefault
763
- label={ __( 'Randomize order' ) }
764
- hasValue={ () => !! randomOrder }
765
- onDeselect={ () =>
766
- setAttributes( { randomOrder: false } )
767
- }
768
- >
769
- <ToggleControl
770
- label={ __( 'Randomize order' ) }
771
- checked={ !! randomOrder }
772
- onChange={ toggleRandomOrder }
773
- />
774
- </ToolsPanelItem>
775
- { hasLinkTo && (
776
- <ToolsPanelItem
777
- isShownByDefault
778
- label={ __( 'Open images in new tab' ) }
779
- hasValue={ () => !! linkTarget }
780
- onDeselect={ () => toggleOpenInNewTab( false ) }
781
- >
782
- <ToggleControl
783
- label={ __( 'Open images in new tab' ) }
784
- checked={ linkTarget === '_blank' }
785
- onChange={ toggleOpenInNewTab }
786
- />
787
- </ToolsPanelItem>
788
- ) }
789
- { aspectRatioOptions.length > 1 && (
790
- <ToolsPanelItem
791
- hasValue={ () =>
792
- !! aspectRatio && aspectRatio !== 'auto'
793
- }
794
- label={ __( 'Aspect ratio' ) }
795
- onDeselect={ () => setAspectRatio( 'auto' ) }
796
- isShownByDefault
797
- >
798
- <SelectControl
799
- __next40pxDefaultSize
800
- label={ __( 'Aspect ratio' ) }
801
- help={ __(
802
- 'Set a consistent aspect ratio for all images in the gallery.'
803
- ) }
804
- value={ aspectRatio }
805
- options={ aspectRatioOptions }
806
- onChange={ setAspectRatio }
807
- />
808
- </ToolsPanelItem>
809
- ) }
624
+ <ToolsPanel
625
+ label={ __( 'Settings' ) }
626
+ resetAll={ () => {
627
+ setAttributes( {
628
+ navigationButtonType: 'icon',
629
+ columns: undefined,
630
+ imageCrop: true,
631
+ randomOrder: false,
632
+ } );
633
+
634
+ setAspectRatio( 'auto' );
635
+
636
+ if ( sizeSlug !== DEFAULT_MEDIA_SIZE_SLUG ) {
637
+ updateImagesSize( DEFAULT_MEDIA_SIZE_SLUG );
638
+ }
639
+
640
+ if ( linkTarget ) {
641
+ toggleOpenInNewTab( false );
642
+ }
643
+ } }
644
+ dropdownMenuProps={ dropdownMenuProps }
645
+ >
646
+ { images.length > 1 && (
810
647
  <ToolsPanelItem
811
- label={ __( 'Navigation button type' ) }
812
648
  isShownByDefault
813
- hasValue={ () => navigationButtonType !== 'icon' }
814
- onDeselect={ () =>
815
- setAttributes( {
816
- navigationButtonType: 'icon',
817
- } )
649
+ label={ __( 'Columns' ) }
650
+ hasValue={ () =>
651
+ !! columns && columns !== images.length
818
652
  }
653
+ onDeselect={ () => setColumnsNumber( undefined ) }
819
654
  >
820
- { hasLightboxImages && (
821
- <ToggleGroupControl
822
- label={ __( 'Navigation button type' ) }
823
- value={ navigationButtonType }
824
- onChange={ ( value ) =>
825
- setAttributes( {
826
- navigationButtonType: value,
827
- } )
828
- }
829
- isBlock
830
- __next40pxDefaultSize
831
- help={ __(
832
- 'Adjust the appearance of buttons in the lightbox.'
833
- ) }
834
- >
835
- { NAVIGATION_BUTTON_TYPE_OPTIONS.map(
836
- ( option ) => (
837
- <ToggleGroupControlOption
838
- key={ option.value }
839
- value={ option.value }
840
- label={ option.label }
841
- />
842
- )
843
- ) }
844
- </ToggleGroupControl>
845
- ) }
846
- </ToolsPanelItem>
847
- </ToolsPanel>
848
- ) }
849
- { Platform.isNative && (
850
- <PanelBody title={ __( 'Settings' ) }>
851
- { images.length > 1 && (
852
655
  <RangeControl
853
656
  label={ __( 'Columns' ) }
854
657
  value={
@@ -859,12 +662,22 @@ export default function GalleryEdit( props ) {
859
662
  onChange={ setColumnsNumber }
860
663
  min={ 1 }
861
664
  max={ Math.min( MAX_COLUMNS, images.length ) }
862
- { ...MOBILE_CONTROL_PROPS_RANGE_CONTROL }
863
665
  required
864
666
  __next40pxDefaultSize
865
667
  />
866
- ) }
867
- { imageSizeOptions?.length > 0 && (
668
+ </ToolsPanelItem>
669
+ ) }
670
+ { imageSizeOptions?.length > 0 && (
671
+ <ToolsPanelItem
672
+ isShownByDefault
673
+ label={ __( 'Resolution' ) }
674
+ hasValue={ () =>
675
+ sizeSlug !== DEFAULT_MEDIA_SIZE_SLUG
676
+ }
677
+ onDeselect={ () =>
678
+ updateImagesSize( DEFAULT_MEDIA_SIZE_SLUG )
679
+ }
680
+ >
868
681
  <SelectControl
869
682
  label={ __( 'Resolution' ) }
870
683
  help={ __(
@@ -876,121 +689,171 @@ export default function GalleryEdit( props ) {
876
689
  hideCancelButton
877
690
  size="__unstable-large"
878
691
  />
879
- ) }
880
- <SelectControl
881
- label={ __( 'Link' ) }
882
- value={ linkTo }
883
- onChange={ setLinkTo }
884
- options={ linkOptions }
885
- hideCancelButton
886
- size="__unstable-large"
887
- />
692
+ </ToolsPanelItem>
693
+ ) }
694
+ <ToolsPanelItem
695
+ isShownByDefault
696
+ label={ __( 'Crop images to fit' ) }
697
+ hasValue={ () => ! imageCrop }
698
+ onDeselect={ () =>
699
+ setAttributes( { imageCrop: true } )
700
+ }
701
+ >
888
702
  <ToggleControl
889
703
  label={ __( 'Crop images to fit' ) }
890
704
  checked={ !! imageCrop }
891
705
  onChange={ toggleImageCrop }
892
706
  />
707
+ </ToolsPanelItem>
708
+ <ToolsPanelItem
709
+ isShownByDefault
710
+ label={ __( 'Randomize order' ) }
711
+ hasValue={ () => !! randomOrder }
712
+ onDeselect={ () =>
713
+ setAttributes( { randomOrder: false } )
714
+ }
715
+ >
893
716
  <ToggleControl
894
717
  label={ __( 'Randomize order' ) }
895
718
  checked={ !! randomOrder }
896
719
  onChange={ toggleRandomOrder }
897
720
  />
898
- { hasLinkTo && (
721
+ </ToolsPanelItem>
722
+ { hasLinkTo && (
723
+ <ToolsPanelItem
724
+ isShownByDefault
725
+ label={ __( 'Open images in new tab' ) }
726
+ hasValue={ () => !! linkTarget }
727
+ onDeselect={ () => toggleOpenInNewTab( false ) }
728
+ >
899
729
  <ToggleControl
900
730
  label={ __( 'Open images in new tab' ) }
901
731
  checked={ linkTarget === '_blank' }
902
732
  onChange={ toggleOpenInNewTab }
903
733
  />
904
- ) }
905
- { aspectRatioOptions.length > 1 && (
734
+ </ToolsPanelItem>
735
+ ) }
736
+ { aspectRatioOptions.length > 1 && (
737
+ <ToolsPanelItem
738
+ hasValue={ () =>
739
+ !! aspectRatio && aspectRatio !== 'auto'
740
+ }
741
+ label={ __( 'Aspect ratio' ) }
742
+ onDeselect={ () => setAspectRatio( 'auto' ) }
743
+ isShownByDefault
744
+ >
906
745
  <SelectControl
907
- label={ __( 'Aspect Ratio' ) }
746
+ __next40pxDefaultSize
747
+ label={ __( 'Aspect ratio' ) }
908
748
  help={ __(
909
749
  'Set a consistent aspect ratio for all images in the gallery.'
910
750
  ) }
911
751
  value={ aspectRatio }
912
752
  options={ aspectRatioOptions }
913
753
  onChange={ setAspectRatio }
914
- hideCancelButton
915
- size="__unstable-large"
916
754
  />
917
- ) }
918
- </PanelBody>
919
- ) }
920
- </InspectorControls>
921
- { Platform.isWeb ? (
922
- <BlockControls group="block">
923
- <ToolbarDropdownMenu
924
- icon={ linkIcon }
925
- label={ __( 'Link' ) }
755
+ </ToolsPanelItem>
756
+ ) }
757
+ <ToolsPanelItem
758
+ label={ __( 'Navigation button type' ) }
759
+ isShownByDefault
760
+ hasValue={ () => navigationButtonType !== 'icon' }
761
+ onDeselect={ () =>
762
+ setAttributes( {
763
+ navigationButtonType: 'icon',
764
+ } )
765
+ }
926
766
  >
927
- { ( { onClose } ) => (
928
- <MenuGroup>
929
- { linkOptions.map( ( linkItem ) => {
930
- const isOptionSelected =
931
- linkTo === linkItem.value;
932
- return (
933
- <MenuItem
934
- key={ linkItem.value }
935
- isSelected={ isOptionSelected }
936
- className={ clsx(
937
- 'components-dropdown-menu__menu-item',
938
- {
939
- 'is-active':
940
- isOptionSelected,
941
- }
942
- ) }
943
- iconPosition="left"
944
- icon={ linkItem.icon }
945
- onClick={ () => {
946
- setLinkTo( linkItem.value );
947
- onClose();
948
- } }
949
- role="menuitemradio"
950
- info={ linkItem.infoText }
951
- >
952
- { linkItem.label }
953
- </MenuItem>
954
- );
955
- } ) }
956
- </MenuGroup>
767
+ { hasLightboxImages && (
768
+ <ToggleGroupControl
769
+ label={ __( 'Navigation button type' ) }
770
+ value={ navigationButtonType }
771
+ onChange={ ( value ) =>
772
+ setAttributes( {
773
+ navigationButtonType: value,
774
+ } )
775
+ }
776
+ isBlock
777
+ __next40pxDefaultSize
778
+ help={ __(
779
+ 'Adjust the appearance of buttons in the lightbox.'
780
+ ) }
781
+ >
782
+ { NAVIGATION_BUTTON_TYPE_OPTIONS.map(
783
+ ( option ) => (
784
+ <ToggleGroupControlOption
785
+ key={ option.value }
786
+ value={ option.value }
787
+ label={ option.label }
788
+ />
789
+ )
790
+ ) }
791
+ </ToggleGroupControl>
957
792
  ) }
958
- </ToolbarDropdownMenu>
959
- </BlockControls>
960
- ) : null }
961
- { Platform.isWeb && (
962
- <>
963
- { ! multiGallerySelection && (
964
- <BlockControls group="other">
965
- <MediaReplaceFlow
966
- allowedTypes={ ALLOWED_MEDIA_TYPES }
967
- handleUpload={ false }
968
- onSelect={ updateImages }
969
- name={ __( 'Add' ) }
970
- multiple
971
- mediaIds={ images
972
- .filter( ( image ) => image.id )
973
- .map( ( image ) => image.id ) }
974
- addToGallery={ hasImageIds }
975
- variant="toolbar"
976
- />
977
- </BlockControls>
793
+ </ToolsPanelItem>
794
+ </ToolsPanel>
795
+ </InspectorControls>
796
+ <BlockControls group="block">
797
+ <ToolbarDropdownMenu icon={ linkIcon } label={ __( 'Link' ) }>
798
+ { ( { onClose } ) => (
799
+ <MenuGroup>
800
+ { linkOptions.map( ( linkItem ) => {
801
+ const isOptionSelected =
802
+ linkTo === linkItem.value;
803
+ return (
804
+ <MenuItem
805
+ key={ linkItem.value }
806
+ isSelected={ isOptionSelected }
807
+ className={ clsx(
808
+ 'components-dropdown-menu__menu-item',
809
+ {
810
+ 'is-active': isOptionSelected,
811
+ }
812
+ ) }
813
+ iconPosition="left"
814
+ icon={ linkItem.icon }
815
+ onClick={ () => {
816
+ setLinkTo( linkItem.value );
817
+ onClose();
818
+ } }
819
+ role="menuitemradio"
820
+ info={ linkItem.infoText }
821
+ >
822
+ { linkItem.label }
823
+ </MenuItem>
824
+ );
825
+ } ) }
826
+ </MenuGroup>
978
827
  ) }
979
- <GapStyles
980
- blockGap={ attributes.style?.spacing?.blockGap }
981
- clientId={ clientId }
982
- />
983
- </>
984
- ) }
828
+ </ToolbarDropdownMenu>
829
+ </BlockControls>
830
+ <>
831
+ { ! multiGallerySelection && (
832
+ <BlockControls group="other">
833
+ <MediaReplaceFlow
834
+ allowedTypes={ ALLOWED_MEDIA_TYPES }
835
+ handleUpload={ false }
836
+ onSelect={ updateImages }
837
+ name={ __( 'Add' ) }
838
+ multiple
839
+ mediaIds={ images
840
+ .filter( ( image ) => image.id )
841
+ .map( ( image ) => image.id ) }
842
+ addToGallery={ hasImageIds }
843
+ variant="toolbar"
844
+ />
845
+ </BlockControls>
846
+ ) }
847
+ <GapStyles
848
+ blockGap={ attributes.style?.spacing?.blockGap }
849
+ clientId={ clientId }
850
+ />
851
+ </>
985
852
  <Gallery
986
853
  { ...props }
987
854
  isContentLocked={ isContentLocked }
988
855
  images={ images }
989
- mediaPlaceholder={
990
- ! hasImages || Platform.isNative
991
- ? mediaPlaceholder
992
- : undefined
993
- }
856
+ mediaPlaceholder={ ! hasImages ? mediaPlaceholder : undefined }
994
857
  blockProps={ innerBlocksProps }
995
858
  insertBlocksAfter={ insertBlocksAfter }
996
859
  multiGallerySelection={ multiGallerySelection }