@wordpress/block-library 9.4.0 → 9.6.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 (838) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/build/archives/edit.js +1 -0
  3. package/build/archives/edit.js.map +1 -1
  4. package/build/audio/edit.js +1 -0
  5. package/build/audio/edit.js.map +1 -1
  6. package/build/avatar/edit.js +1 -0
  7. package/build/avatar/edit.js.map +1 -1
  8. package/build/avatar/user-control.js +1 -0
  9. package/build/avatar/user-control.js.map +1 -1
  10. package/build/button/edit.js +1 -0
  11. package/build/button/edit.js.map +1 -1
  12. package/build/categories/index.js +12 -0
  13. package/build/categories/index.js.map +1 -1
  14. package/build/column/edit.js +2 -2
  15. package/build/column/edit.js.map +1 -1
  16. package/build/column/index.js +2 -0
  17. package/build/column/index.js.map +1 -1
  18. package/build/comment-author-name/index.js +14 -1
  19. package/build/comment-author-name/index.js.map +1 -1
  20. package/build/comment-content/index.js +14 -1
  21. package/build/comment-content/index.js.map +1 -1
  22. package/build/comment-date/index.js +14 -1
  23. package/build/comment-date/index.js.map +1 -1
  24. package/build/comment-template/index.js +12 -0
  25. package/build/comment-template/index.js.map +1 -1
  26. package/build/comments-pagination/comments-pagination-arrow-controls.js +1 -0
  27. package/build/comments-pagination/comments-pagination-arrow-controls.js.map +1 -1
  28. package/build/comments-title/deprecated.js +3 -0
  29. package/build/comments-title/deprecated.js.map +1 -1
  30. package/build/comments-title/edit.js +3 -1
  31. package/build/comments-title/edit.js.map +1 -1
  32. package/build/comments-title/index.js +3 -0
  33. package/build/comments-title/index.js.map +1 -1
  34. package/build/cover/edit/inspector-controls.js +0 -1
  35. package/build/cover/edit/inspector-controls.js.map +1 -1
  36. package/build/details/edit.js +1 -0
  37. package/build/details/edit.js.map +1 -1
  38. package/build/embed/edit.js +12 -4
  39. package/build/embed/edit.js.map +1 -1
  40. package/build/embed/embed-placeholder.js +6 -3
  41. package/build/embed/embed-placeholder.js.map +1 -1
  42. package/build/embed/embed-preview.js +4 -18
  43. package/build/embed/embed-preview.js.map +1 -1
  44. package/build/file/index.js +12 -0
  45. package/build/file/index.js.map +1 -1
  46. package/build/file/inspector.js +1 -0
  47. package/build/file/inspector.js.map +1 -1
  48. package/build/form/edit.js +6 -4
  49. package/build/form/edit.js.map +1 -1
  50. package/build/form-input/edit.js +2 -0
  51. package/build/form-input/edit.js.map +1 -1
  52. package/build/gallery/edit.js +44 -14
  53. package/build/gallery/edit.js.map +1 -1
  54. package/build/gallery/gallery.native.js +4 -1
  55. package/build/gallery/gallery.native.js.map +1 -1
  56. package/build/gallery/gap-styles.js +1 -9
  57. package/build/gallery/gap-styles.js.map +1 -1
  58. package/build/gallery/use-image-sizes.js +2 -2
  59. package/build/gallery/use-image-sizes.js.map +1 -1
  60. package/build/group/edit.js +1 -1
  61. package/build/group/edit.js.map +1 -1
  62. package/build/group/index.js +27 -30
  63. package/build/group/index.js.map +1 -1
  64. package/build/group/variations.js +51 -3
  65. package/build/group/variations.js.map +1 -1
  66. package/build/heading/edit.js +2 -0
  67. package/build/heading/edit.js.map +1 -1
  68. package/build/heading/index.js +3 -0
  69. package/build/heading/index.js.map +1 -1
  70. package/build/image/image.js +6 -1
  71. package/build/image/image.js.map +1 -1
  72. package/build/image/transforms.js +4 -0
  73. package/build/image/transforms.js.map +1 -1
  74. package/build/image/view.js +1 -1
  75. package/build/image/view.js.map +1 -1
  76. package/build/latest-posts/edit.js +38 -11
  77. package/build/latest-posts/edit.js.map +1 -1
  78. package/build/list/index.js +10 -1
  79. package/build/list/index.js.map +1 -1
  80. package/build/list/ordered-list-settings.js +19 -17
  81. package/build/list/ordered-list-settings.js.map +1 -1
  82. package/build/list-item/index.js +11 -3
  83. package/build/list-item/index.js.map +1 -1
  84. package/build/loginout/index.js +14 -1
  85. package/build/loginout/index.js.map +1 -1
  86. package/build/media-text/edit.js +0 -1
  87. package/build/media-text/edit.js.map +1 -1
  88. package/build/missing/edit.js +10 -19
  89. package/build/missing/edit.js.map +1 -1
  90. package/build/navigation/edit/index.js +8 -8
  91. package/build/navigation/edit/index.js.map +1 -1
  92. package/build/navigation/edit/navigation-menu-name-control.js +1 -0
  93. package/build/navigation/edit/navigation-menu-name-control.js.map +1 -1
  94. package/build/navigation/edit/overlay-menu-preview.js +2 -0
  95. package/build/navigation/edit/overlay-menu-preview.js.map +1 -1
  96. package/build/post-author/edit.js +60 -53
  97. package/build/post-author/edit.js.map +1 -1
  98. package/build/post-author/index.js +13 -0
  99. package/build/post-author/index.js.map +1 -1
  100. package/build/post-author-biography/index.js +14 -1
  101. package/build/post-author-biography/index.js.map +1 -1
  102. package/build/post-author-name/index.js +14 -1
  103. package/build/post-author-name/index.js.map +1 -1
  104. package/build/post-comment/edit.js +2 -0
  105. package/build/post-comment/edit.js.map +1 -1
  106. package/build/post-comments-form/index.js +12 -0
  107. package/build/post-comments-form/index.js.map +1 -1
  108. package/build/post-content/index.js +1 -0
  109. package/build/post-content/index.js.map +1 -1
  110. package/build/post-date/index.js +12 -0
  111. package/build/post-date/index.js.map +1 -1
  112. package/build/post-excerpt/edit.js +1 -0
  113. package/build/post-excerpt/edit.js.map +1 -1
  114. package/build/post-excerpt/index.js +12 -0
  115. package/build/post-excerpt/index.js.map +1 -1
  116. package/build/post-featured-image/dimension-controls.js +9 -2
  117. package/build/post-featured-image/dimension-controls.js.map +1 -1
  118. package/build/post-featured-image/edit.js +1 -0
  119. package/build/post-featured-image/edit.js.map +1 -1
  120. package/build/post-navigation-link/edit.js +7 -2
  121. package/build/post-navigation-link/edit.js.map +1 -1
  122. package/build/post-terms/edit.js +1 -0
  123. package/build/post-terms/edit.js.map +1 -1
  124. package/build/post-terms/index.js +12 -0
  125. package/build/post-terms/index.js.map +1 -1
  126. package/build/post-time-to-read/index.js +6 -0
  127. package/build/post-time-to-read/index.js.map +1 -1
  128. package/build/post-title/edit.js +5 -2
  129. package/build/post-title/edit.js.map +1 -1
  130. package/build/post-title/index.js +15 -0
  131. package/build/post-title/index.js.map +1 -1
  132. package/build/preformatted/index.js +12 -0
  133. package/build/preformatted/index.js.map +1 -1
  134. package/build/query/edit/inspector-controls/enhanced-pagination-control.js +1 -0
  135. package/build/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
  136. package/build/query/edit/inspector-controls/index.js +69 -9
  137. package/build/query/edit/inspector-controls/index.js.map +1 -1
  138. package/build/query/edit/inspector-controls/offset-controls.js +37 -0
  139. package/build/query/edit/inspector-controls/offset-controls.js.map +1 -0
  140. package/build/query/edit/inspector-controls/pages-control.js +36 -0
  141. package/build/query/edit/inspector-controls/pages-control.js.map +1 -0
  142. package/build/query/edit/inspector-controls/parent-control.js +1 -0
  143. package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
  144. package/build/query/edit/inspector-controls/per-page-control.js +40 -0
  145. package/build/query/edit/inspector-controls/per-page-control.js.map +1 -0
  146. package/build/query/edit/inspector-controls/sticky-control.js +1 -1
  147. package/build/query/edit/inspector-controls/sticky-control.js.map +1 -1
  148. package/build/query/edit/query-content.js +1 -1
  149. package/build/query/edit/query-content.js.map +1 -1
  150. package/build/query/edit/query-toolbar.js +3 -76
  151. package/build/query/edit/query-toolbar.js.map +1 -1
  152. package/build/query/utils.js +10 -5
  153. package/build/query/utils.js.map +1 -1
  154. package/build/query-pagination/query-pagination-arrow-controls.js +1 -0
  155. package/build/query-pagination/query-pagination-arrow-controls.js.map +1 -1
  156. package/build/query-pagination-numbers/edit.js +1 -0
  157. package/build/query-pagination-numbers/edit.js.map +1 -1
  158. package/build/query-title/edit.js +2 -0
  159. package/build/query-title/edit.js.map +1 -1
  160. package/build/query-title/index.js +15 -0
  161. package/build/query-title/index.js.map +1 -1
  162. package/build/quote/index.js +1 -0
  163. package/build/quote/index.js.map +1 -1
  164. package/build/quote/transforms.js +4 -0
  165. package/build/quote/transforms.js.map +1 -1
  166. package/build/search/edit.js +9 -5
  167. package/build/search/edit.js.map +1 -1
  168. package/build/site-logo/edit.js +15 -8
  169. package/build/site-logo/edit.js.map +1 -1
  170. package/build/site-tagline/edit.js +3 -3
  171. package/build/site-tagline/edit.js.map +1 -1
  172. package/build/site-tagline/index.js +12 -1
  173. package/build/site-tagline/index.js.map +1 -1
  174. package/build/site-title/edit.js +2 -2
  175. package/build/site-title/edit.js.map +1 -1
  176. package/build/site-title/index.js +10 -0
  177. package/build/site-title/index.js.map +1 -1
  178. package/build/social-link/edit.js +2 -1
  179. package/build/social-link/edit.js.map +1 -1
  180. package/build/spacer/controls.js +8 -13
  181. package/build/spacer/controls.js.map +1 -1
  182. package/build/table/edit.js +6 -5
  183. package/build/table/edit.js.map +1 -1
  184. package/build/table-of-contents/index.js +14 -1
  185. package/build/table-of-contents/index.js.map +1 -1
  186. package/build/tag-cloud/edit.js +69 -52
  187. package/build/tag-cloud/edit.js.map +1 -1
  188. package/build/tag-cloud/index.js +13 -1
  189. package/build/tag-cloud/index.js.map +1 -1
  190. package/build/template-part/edit/advanced-controls.js +2 -0
  191. package/build/template-part/edit/advanced-controls.js.map +1 -1
  192. package/build/template-part/edit/index.js +7 -6
  193. package/build/template-part/edit/index.js.map +1 -1
  194. package/build/template-part/edit/inner-blocks.js +6 -4
  195. package/build/template-part/edit/inner-blocks.js.map +1 -1
  196. package/build/video/edit-common-settings.js +1 -0
  197. package/build/video/edit-common-settings.js.map +1 -1
  198. package/build/video/edit.js +1 -1
  199. package/build/video/edit.js.map +1 -1
  200. package/build/video/tracks-editor.js +3 -0
  201. package/build/video/tracks-editor.js.map +1 -1
  202. package/build/video/transforms.js +4 -0
  203. package/build/video/transforms.js.map +1 -1
  204. package/build-module/archives/edit.js +1 -0
  205. package/build-module/archives/edit.js.map +1 -1
  206. package/build-module/audio/edit.js +1 -0
  207. package/build-module/audio/edit.js.map +1 -1
  208. package/build-module/avatar/edit.js +1 -0
  209. package/build-module/avatar/edit.js.map +1 -1
  210. package/build-module/avatar/user-control.js +1 -0
  211. package/build-module/avatar/user-control.js.map +1 -1
  212. package/build-module/button/edit.js +1 -0
  213. package/build-module/button/edit.js.map +1 -1
  214. package/build-module/categories/index.js +12 -0
  215. package/build-module/categories/index.js.map +1 -1
  216. package/build-module/column/edit.js +2 -2
  217. package/build-module/column/edit.js.map +1 -1
  218. package/build-module/column/index.js +2 -0
  219. package/build-module/column/index.js.map +1 -1
  220. package/build-module/comment-author-name/index.js +14 -1
  221. package/build-module/comment-author-name/index.js.map +1 -1
  222. package/build-module/comment-content/index.js +14 -1
  223. package/build-module/comment-content/index.js.map +1 -1
  224. package/build-module/comment-date/index.js +14 -1
  225. package/build-module/comment-date/index.js.map +1 -1
  226. package/build-module/comment-template/index.js +12 -0
  227. package/build-module/comment-template/index.js.map +1 -1
  228. package/build-module/comments-pagination/comments-pagination-arrow-controls.js +1 -0
  229. package/build-module/comments-pagination/comments-pagination-arrow-controls.js.map +1 -1
  230. package/build-module/comments-title/deprecated.js +3 -0
  231. package/build-module/comments-title/deprecated.js.map +1 -1
  232. package/build-module/comments-title/edit.js +3 -1
  233. package/build-module/comments-title/edit.js.map +1 -1
  234. package/build-module/comments-title/index.js +3 -0
  235. package/build-module/comments-title/index.js.map +1 -1
  236. package/build-module/cover/edit/inspector-controls.js +0 -1
  237. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  238. package/build-module/details/edit.js +1 -0
  239. package/build-module/details/edit.js.map +1 -1
  240. package/build-module/embed/edit.js +13 -5
  241. package/build-module/embed/edit.js.map +1 -1
  242. package/build-module/embed/embed-placeholder.js +7 -4
  243. package/build-module/embed/embed-placeholder.js.map +1 -1
  244. package/build-module/embed/embed-preview.js +5 -19
  245. package/build-module/embed/embed-preview.js.map +1 -1
  246. package/build-module/file/index.js +12 -0
  247. package/build-module/file/index.js.map +1 -1
  248. package/build-module/file/inspector.js +1 -0
  249. package/build-module/file/inspector.js.map +1 -1
  250. package/build-module/form/edit.js +6 -4
  251. package/build-module/form/edit.js.map +1 -1
  252. package/build-module/form-input/edit.js +2 -0
  253. package/build-module/form-input/edit.js.map +1 -1
  254. package/build-module/gallery/edit.js +45 -15
  255. package/build-module/gallery/edit.js.map +1 -1
  256. package/build-module/gallery/gallery.native.js +4 -1
  257. package/build-module/gallery/gallery.native.js.map +1 -1
  258. package/build-module/gallery/gap-styles.js +1 -9
  259. package/build-module/gallery/gap-styles.js.map +1 -1
  260. package/build-module/gallery/use-image-sizes.js +2 -2
  261. package/build-module/gallery/use-image-sizes.js.map +1 -1
  262. package/build-module/group/edit.js +1 -1
  263. package/build-module/group/edit.js.map +1 -1
  264. package/build-module/group/index.js +27 -30
  265. package/build-module/group/index.js.map +1 -1
  266. package/build-module/group/variations.js +51 -3
  267. package/build-module/group/variations.js.map +1 -1
  268. package/build-module/heading/edit.js +2 -0
  269. package/build-module/heading/edit.js.map +1 -1
  270. package/build-module/heading/index.js +3 -0
  271. package/build-module/heading/index.js.map +1 -1
  272. package/build-module/image/image.js +7 -2
  273. package/build-module/image/image.js.map +1 -1
  274. package/build-module/image/transforms.js +5 -1
  275. package/build-module/image/transforms.js.map +1 -1
  276. package/build-module/image/view.js +1 -1
  277. package/build-module/image/view.js.map +1 -1
  278. package/build-module/latest-posts/edit.js +41 -14
  279. package/build-module/latest-posts/edit.js.map +1 -1
  280. package/build-module/list/index.js +10 -1
  281. package/build-module/list/index.js.map +1 -1
  282. package/build-module/list/ordered-list-settings.js +19 -17
  283. package/build-module/list/ordered-list-settings.js.map +1 -1
  284. package/build-module/list-item/index.js +11 -3
  285. package/build-module/list-item/index.js.map +1 -1
  286. package/build-module/loginout/index.js +14 -1
  287. package/build-module/loginout/index.js.map +1 -1
  288. package/build-module/media-text/edit.js +0 -1
  289. package/build-module/media-text/edit.js.map +1 -1
  290. package/build-module/missing/edit.js +10 -19
  291. package/build-module/missing/edit.js.map +1 -1
  292. package/build-module/navigation/edit/index.js +8 -8
  293. package/build-module/navigation/edit/index.js.map +1 -1
  294. package/build-module/navigation/edit/navigation-menu-name-control.js +1 -0
  295. package/build-module/navigation/edit/navigation-menu-name-control.js.map +1 -1
  296. package/build-module/navigation/edit/overlay-menu-preview.js +2 -0
  297. package/build-module/navigation/edit/overlay-menu-preview.js.map +1 -1
  298. package/build-module/post-author/edit.js +61 -54
  299. package/build-module/post-author/edit.js.map +1 -1
  300. package/build-module/post-author/index.js +13 -0
  301. package/build-module/post-author/index.js.map +1 -1
  302. package/build-module/post-author-biography/index.js +14 -1
  303. package/build-module/post-author-biography/index.js.map +1 -1
  304. package/build-module/post-author-name/index.js +14 -1
  305. package/build-module/post-author-name/index.js.map +1 -1
  306. package/build-module/post-comment/edit.js +2 -0
  307. package/build-module/post-comment/edit.js.map +1 -1
  308. package/build-module/post-comments-form/index.js +12 -0
  309. package/build-module/post-comments-form/index.js.map +1 -1
  310. package/build-module/post-content/index.js +1 -0
  311. package/build-module/post-content/index.js.map +1 -1
  312. package/build-module/post-date/index.js +12 -0
  313. package/build-module/post-date/index.js.map +1 -1
  314. package/build-module/post-excerpt/edit.js +1 -0
  315. package/build-module/post-excerpt/edit.js.map +1 -1
  316. package/build-module/post-excerpt/index.js +12 -0
  317. package/build-module/post-excerpt/index.js.map +1 -1
  318. package/build-module/post-featured-image/dimension-controls.js +9 -2
  319. package/build-module/post-featured-image/dimension-controls.js.map +1 -1
  320. package/build-module/post-featured-image/edit.js +1 -0
  321. package/build-module/post-featured-image/edit.js.map +1 -1
  322. package/build-module/post-navigation-link/edit.js +7 -2
  323. package/build-module/post-navigation-link/edit.js.map +1 -1
  324. package/build-module/post-terms/edit.js +1 -0
  325. package/build-module/post-terms/edit.js.map +1 -1
  326. package/build-module/post-terms/index.js +12 -0
  327. package/build-module/post-terms/index.js.map +1 -1
  328. package/build-module/post-time-to-read/index.js +6 -0
  329. package/build-module/post-time-to-read/index.js.map +1 -1
  330. package/build-module/post-title/edit.js +5 -2
  331. package/build-module/post-title/edit.js.map +1 -1
  332. package/build-module/post-title/index.js +15 -0
  333. package/build-module/post-title/index.js.map +1 -1
  334. package/build-module/preformatted/index.js +12 -0
  335. package/build-module/preformatted/index.js.map +1 -1
  336. package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js +1 -0
  337. package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
  338. package/build-module/query/edit/inspector-controls/index.js +71 -11
  339. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  340. package/build-module/query/edit/inspector-controls/offset-controls.js +29 -0
  341. package/build-module/query/edit/inspector-controls/offset-controls.js.map +1 -0
  342. package/build-module/query/edit/inspector-controls/pages-control.js +28 -0
  343. package/build-module/query/edit/inspector-controls/pages-control.js.map +1 -0
  344. package/build-module/query/edit/inspector-controls/parent-control.js +1 -0
  345. package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -1
  346. package/build-module/query/edit/inspector-controls/per-page-control.js +33 -0
  347. package/build-module/query/edit/inspector-controls/per-page-control.js.map +1 -0
  348. package/build-module/query/edit/inspector-controls/sticky-control.js +1 -1
  349. package/build-module/query/edit/inspector-controls/sticky-control.js.map +1 -1
  350. package/build-module/query/edit/query-content.js +1 -1
  351. package/build-module/query/edit/query-content.js.map +1 -1
  352. package/build-module/query/edit/query-toolbar.js +4 -78
  353. package/build-module/query/edit/query-toolbar.js.map +1 -1
  354. package/build-module/query/utils.js +10 -5
  355. package/build-module/query/utils.js.map +1 -1
  356. package/build-module/query-pagination/query-pagination-arrow-controls.js +1 -0
  357. package/build-module/query-pagination/query-pagination-arrow-controls.js.map +1 -1
  358. package/build-module/query-pagination-numbers/edit.js +1 -0
  359. package/build-module/query-pagination-numbers/edit.js.map +1 -1
  360. package/build-module/query-title/edit.js +2 -0
  361. package/build-module/query-title/edit.js.map +1 -1
  362. package/build-module/query-title/index.js +15 -0
  363. package/build-module/query-title/index.js.map +1 -1
  364. package/build-module/quote/index.js +1 -0
  365. package/build-module/quote/index.js.map +1 -1
  366. package/build-module/quote/transforms.js +4 -0
  367. package/build-module/quote/transforms.js.map +1 -1
  368. package/build-module/search/edit.js +10 -6
  369. package/build-module/search/edit.js.map +1 -1
  370. package/build-module/site-logo/edit.js +15 -8
  371. package/build-module/site-logo/edit.js.map +1 -1
  372. package/build-module/site-tagline/edit.js +3 -3
  373. package/build-module/site-tagline/edit.js.map +1 -1
  374. package/build-module/site-tagline/index.js +12 -1
  375. package/build-module/site-tagline/index.js.map +1 -1
  376. package/build-module/site-title/edit.js +2 -2
  377. package/build-module/site-title/edit.js.map +1 -1
  378. package/build-module/site-title/index.js +10 -0
  379. package/build-module/site-title/index.js.map +1 -1
  380. package/build-module/social-link/edit.js +2 -1
  381. package/build-module/social-link/edit.js.map +1 -1
  382. package/build-module/spacer/controls.js +9 -14
  383. package/build-module/spacer/controls.js.map +1 -1
  384. package/build-module/table/edit.js +6 -5
  385. package/build-module/table/edit.js.map +1 -1
  386. package/build-module/table-of-contents/index.js +14 -1
  387. package/build-module/table-of-contents/index.js.map +1 -1
  388. package/build-module/tag-cloud/edit.js +70 -53
  389. package/build-module/tag-cloud/edit.js.map +1 -1
  390. package/build-module/tag-cloud/index.js +13 -1
  391. package/build-module/tag-cloud/index.js.map +1 -1
  392. package/build-module/template-part/edit/advanced-controls.js +2 -0
  393. package/build-module/template-part/edit/advanced-controls.js.map +1 -1
  394. package/build-module/template-part/edit/index.js +7 -6
  395. package/build-module/template-part/edit/index.js.map +1 -1
  396. package/build-module/template-part/edit/inner-blocks.js +6 -4
  397. package/build-module/template-part/edit/inner-blocks.js.map +1 -1
  398. package/build-module/video/edit-common-settings.js +1 -0
  399. package/build-module/video/edit-common-settings.js.map +1 -1
  400. package/build-module/video/edit.js +1 -1
  401. package/build-module/video/edit.js.map +1 -1
  402. package/build-module/video/tracks-editor.js +3 -0
  403. package/build-module/video/tracks-editor.js.map +1 -1
  404. package/build-module/video/transforms.js +5 -1
  405. package/build-module/video/transforms.js.map +1 -1
  406. package/build-style/archives/editor-rtl.css +5 -2
  407. package/build-style/archives/editor.css +5 -2
  408. package/build-style/archives/style-rtl.css +5 -2
  409. package/build-style/archives/style.css +5 -2
  410. package/build-style/audio/editor-rtl.css +5 -2
  411. package/build-style/audio/editor.css +5 -2
  412. package/build-style/audio/style-rtl.css +5 -2
  413. package/build-style/audio/style.css +5 -2
  414. package/build-style/audio/theme-rtl.css +5 -2
  415. package/build-style/audio/theme.css +5 -2
  416. package/build-style/avatar/editor-rtl.css +5 -2
  417. package/build-style/avatar/editor.css +5 -2
  418. package/build-style/avatar/style-rtl.css +5 -2
  419. package/build-style/avatar/style.css +5 -2
  420. package/build-style/button/editor-rtl.css +5 -2
  421. package/build-style/button/editor.css +5 -2
  422. package/build-style/button/style-rtl.css +5 -2
  423. package/build-style/button/style.css +5 -2
  424. package/build-style/buttons/editor-rtl.css +5 -2
  425. package/build-style/buttons/editor.css +5 -2
  426. package/build-style/buttons/style-rtl.css +5 -2
  427. package/build-style/buttons/style.css +5 -2
  428. package/build-style/calendar/style-rtl.css +5 -2
  429. package/build-style/calendar/style.css +5 -2
  430. package/build-style/categories/editor-rtl.css +5 -2
  431. package/build-style/categories/editor.css +5 -2
  432. package/build-style/categories/style-rtl.css +5 -2
  433. package/build-style/categories/style.css +5 -2
  434. package/build-style/classic-rtl.css +5 -2
  435. package/build-style/classic.css +5 -2
  436. package/build-style/code/editor-rtl.css +5 -2
  437. package/build-style/code/editor.css +5 -2
  438. package/build-style/code/style-rtl.css +5 -2
  439. package/build-style/code/style.css +5 -2
  440. package/build-style/code/theme-rtl.css +5 -2
  441. package/build-style/code/theme.css +5 -2
  442. package/build-style/columns/editor-rtl.css +5 -2
  443. package/build-style/columns/editor.css +5 -2
  444. package/build-style/columns/style-rtl.css +5 -2
  445. package/build-style/columns/style.css +5 -2
  446. package/build-style/comment-author-avatar/editor-rtl.css +5 -2
  447. package/build-style/comment-author-avatar/editor.css +5 -2
  448. package/build-style/comment-author-name/style-rtl.css +94 -0
  449. package/build-style/comment-author-name/style.css +94 -0
  450. package/build-style/comment-content/style-rtl.css +9 -2
  451. package/build-style/comment-content/style.css +9 -2
  452. package/build-style/comment-date/style-rtl.css +94 -0
  453. package/build-style/comment-date/style.css +94 -0
  454. package/build-style/comment-template/style-rtl.css +5 -2
  455. package/build-style/comment-template/style.css +5 -2
  456. package/build-style/comments/editor-rtl.css +5 -2
  457. package/build-style/comments/editor.css +5 -2
  458. package/build-style/comments/style-rtl.css +5 -2
  459. package/build-style/comments/style.css +5 -2
  460. package/build-style/comments-pagination/editor-rtl.css +5 -2
  461. package/build-style/comments-pagination/editor.css +5 -2
  462. package/build-style/comments-pagination/style-rtl.css +5 -2
  463. package/build-style/comments-pagination/style.css +5 -2
  464. package/build-style/comments-pagination-numbers/editor-rtl.css +5 -2
  465. package/build-style/comments-pagination-numbers/editor.css +5 -2
  466. package/build-style/comments-title/editor-rtl.css +5 -2
  467. package/build-style/comments-title/editor.css +5 -2
  468. package/build-style/common-rtl.css +5 -2
  469. package/build-style/common.css +5 -2
  470. package/build-style/cover/editor-rtl.css +5 -2
  471. package/build-style/cover/editor.css +5 -2
  472. package/build-style/cover/style-rtl.css +5 -2
  473. package/build-style/cover/style.css +5 -2
  474. package/build-style/details/editor-rtl.css +5 -2
  475. package/build-style/details/editor.css +5 -2
  476. package/build-style/details/style-rtl.css +5 -2
  477. package/build-style/details/style.css +5 -2
  478. package/build-style/editor-elements-rtl.css +5 -2
  479. package/build-style/editor-elements.css +5 -2
  480. package/build-style/editor-rtl.css +47 -45
  481. package/build-style/editor.css +47 -45
  482. package/build-style/elements-rtl.css +5 -2
  483. package/build-style/elements.css +5 -2
  484. package/build-style/embed/editor-rtl.css +8 -2
  485. package/build-style/embed/editor.css +8 -2
  486. package/build-style/embed/style-rtl.css +5 -2
  487. package/build-style/embed/style.css +5 -2
  488. package/build-style/embed/theme-rtl.css +5 -2
  489. package/build-style/embed/theme.css +5 -2
  490. package/build-style/file/editor-rtl.css +5 -2
  491. package/build-style/file/editor.css +5 -2
  492. package/build-style/file/style-rtl.css +5 -2
  493. package/build-style/file/style.css +5 -2
  494. package/build-style/footnotes/style-rtl.css +5 -2
  495. package/build-style/footnotes/style.css +5 -2
  496. package/build-style/form-input/editor-rtl.css +5 -2
  497. package/build-style/form-input/editor.css +5 -2
  498. package/build-style/form-input/style-rtl.css +6 -2
  499. package/build-style/form-input/style.css +6 -2
  500. package/build-style/form-submission-notification/editor-rtl.css +5 -2
  501. package/build-style/form-submission-notification/editor.css +5 -2
  502. package/build-style/form-submit-button/style-rtl.css +5 -2
  503. package/build-style/form-submit-button/style.css +5 -2
  504. package/build-style/freeform/editor-rtl.css +5 -2
  505. package/build-style/freeform/editor.css +5 -2
  506. package/build-style/gallery/editor-rtl.css +5 -3
  507. package/build-style/gallery/editor.css +5 -3
  508. package/build-style/gallery/style-rtl.css +29 -9
  509. package/build-style/gallery/style.css +29 -9
  510. package/build-style/gallery/theme-rtl.css +5 -2
  511. package/build-style/gallery/theme.css +5 -2
  512. package/build-style/group/editor-rtl.css +5 -13
  513. package/build-style/group/editor.css +5 -13
  514. package/build-style/group/style-rtl.css +5 -2
  515. package/build-style/group/style.css +5 -2
  516. package/build-style/group/theme-rtl.css +5 -2
  517. package/build-style/group/theme.css +5 -2
  518. package/build-style/heading/style-rtl.css +5 -2
  519. package/build-style/heading/style.css +5 -2
  520. package/build-style/html/editor-rtl.css +5 -2
  521. package/build-style/html/editor.css +5 -2
  522. package/build-style/image/editor-rtl.css +13 -2
  523. package/build-style/image/editor.css +13 -2
  524. package/build-style/image/style-rtl.css +5 -2
  525. package/build-style/image/style.css +5 -2
  526. package/build-style/image/theme-rtl.css +5 -2
  527. package/build-style/image/theme.css +5 -2
  528. package/build-style/latest-comments/style-rtl.css +5 -2
  529. package/build-style/latest-comments/style.css +5 -2
  530. package/build-style/latest-posts/editor-rtl.css +12 -9
  531. package/build-style/latest-posts/editor.css +12 -9
  532. package/build-style/latest-posts/style-rtl.css +5 -2
  533. package/build-style/latest-posts/style.css +5 -2
  534. package/build-style/list/style-rtl.css +5 -2
  535. package/build-style/list/style.css +5 -2
  536. package/build-style/loginout/style-rtl.css +94 -0
  537. package/build-style/loginout/style.css +94 -0
  538. package/build-style/media-text/editor-rtl.css +5 -2
  539. package/build-style/media-text/editor.css +5 -2
  540. package/build-style/media-text/style-rtl.css +5 -2
  541. package/build-style/media-text/style.css +5 -2
  542. package/build-style/more/editor-rtl.css +5 -2
  543. package/build-style/more/editor.css +5 -2
  544. package/build-style/navigation/editor-rtl.css +9 -14
  545. package/build-style/navigation/editor.css +9 -14
  546. package/build-style/navigation/style-rtl.css +5 -2
  547. package/build-style/navigation/style.css +5 -2
  548. package/build-style/navigation-link/editor-rtl.css +5 -5
  549. package/build-style/navigation-link/editor.css +5 -5
  550. package/build-style/navigation-link/style-rtl.css +5 -2
  551. package/build-style/navigation-link/style.css +5 -2
  552. package/build-style/navigation-submenu/editor-rtl.css +5 -2
  553. package/build-style/navigation-submenu/editor.css +5 -2
  554. package/build-style/nextpage/editor-rtl.css +5 -2
  555. package/build-style/nextpage/editor.css +5 -2
  556. package/build-style/page-list/editor-rtl.css +5 -2
  557. package/build-style/page-list/editor.css +5 -2
  558. package/build-style/page-list/style-rtl.css +5 -2
  559. package/build-style/page-list/style.css +5 -2
  560. package/build-style/paragraph/editor-rtl.css +5 -2
  561. package/build-style/paragraph/editor.css +5 -2
  562. package/build-style/paragraph/style-rtl.css +5 -2
  563. package/build-style/paragraph/style.css +5 -2
  564. package/build-style/post-author/editor-rtl.css +95 -0
  565. package/build-style/post-author/editor.css +95 -0
  566. package/build-style/post-author/style-rtl.css +6 -2
  567. package/build-style/post-author/style.css +6 -2
  568. package/build-style/post-author-biography/style-rtl.css +94 -0
  569. package/build-style/post-author-biography/style.css +94 -0
  570. package/build-style/post-author-name/style-rtl.css +94 -0
  571. package/build-style/post-author-name/style.css +94 -0
  572. package/build-style/post-comments-form/editor-rtl.css +5 -2
  573. package/build-style/post-comments-form/editor.css +5 -2
  574. package/build-style/post-comments-form/style-rtl.css +5 -2
  575. package/build-style/post-comments-form/style.css +5 -2
  576. package/build-style/post-content/editor-rtl.css +5 -2
  577. package/build-style/post-content/editor.css +5 -2
  578. package/build-style/post-content/style-rtl.css +96 -0
  579. package/build-style/post-content/style.css +96 -0
  580. package/build-style/post-date/style-rtl.css +5 -2
  581. package/build-style/post-date/style.css +5 -2
  582. package/build-style/post-excerpt/editor-rtl.css +5 -2
  583. package/build-style/post-excerpt/editor.css +5 -2
  584. package/build-style/post-excerpt/style-rtl.css +6 -2
  585. package/build-style/post-excerpt/style.css +6 -2
  586. package/build-style/post-featured-image/editor-rtl.css +5 -2
  587. package/build-style/post-featured-image/editor.css +5 -2
  588. package/build-style/post-featured-image/style-rtl.css +5 -2
  589. package/build-style/post-featured-image/style.css +5 -2
  590. package/build-style/post-navigation-link/style-rtl.css +5 -2
  591. package/build-style/post-navigation-link/style.css +5 -2
  592. package/build-style/post-template/editor-rtl.css +5 -2
  593. package/build-style/post-template/editor.css +5 -2
  594. package/build-style/post-template/style-rtl.css +5 -2
  595. package/build-style/post-template/style.css +5 -2
  596. package/build-style/post-terms/style-rtl.css +5 -2
  597. package/build-style/post-terms/style.css +5 -2
  598. package/build-style/post-time-to-read/style-rtl.css +5 -2
  599. package/build-style/post-time-to-read/style.css +5 -2
  600. package/build-style/post-title/style-rtl.css +5 -2
  601. package/build-style/post-title/style.css +5 -2
  602. package/build-style/preformatted/style-rtl.css +5 -2
  603. package/build-style/preformatted/style.css +5 -2
  604. package/build-style/pullquote/editor-rtl.css +5 -2
  605. package/build-style/pullquote/editor.css +5 -2
  606. package/build-style/pullquote/style-rtl.css +5 -2
  607. package/build-style/pullquote/style.css +5 -2
  608. package/build-style/pullquote/theme-rtl.css +5 -2
  609. package/build-style/pullquote/theme.css +5 -2
  610. package/build-style/query/editor-rtl.css +5 -2
  611. package/build-style/query/editor.css +5 -2
  612. package/build-style/query-pagination/editor-rtl.css +5 -2
  613. package/build-style/query-pagination/editor.css +5 -2
  614. package/build-style/query-pagination/style-rtl.css +5 -2
  615. package/build-style/query-pagination/style.css +5 -2
  616. package/build-style/query-pagination-numbers/editor-rtl.css +5 -2
  617. package/build-style/query-pagination-numbers/editor.css +5 -2
  618. package/build-style/query-title/style-rtl.css +5 -2
  619. package/build-style/query-title/style.css +5 -2
  620. package/build-style/quote/style-rtl.css +5 -2
  621. package/build-style/quote/style.css +5 -2
  622. package/build-style/quote/theme-rtl.css +8 -5
  623. package/build-style/quote/theme.css +8 -5
  624. package/build-style/read-more/style-rtl.css +5 -2
  625. package/build-style/read-more/style.css +5 -2
  626. package/build-style/reset-rtl.css +5 -2
  627. package/build-style/reset.css +5 -2
  628. package/build-style/rss/editor-rtl.css +5 -2
  629. package/build-style/rss/editor.css +5 -2
  630. package/build-style/rss/style-rtl.css +5 -2
  631. package/build-style/rss/style.css +5 -2
  632. package/build-style/search/editor-rtl.css +8 -4
  633. package/build-style/search/editor.css +8 -4
  634. package/build-style/search/style-rtl.css +5 -2
  635. package/build-style/search/style.css +5 -2
  636. package/build-style/search/theme-rtl.css +5 -2
  637. package/build-style/search/theme.css +5 -2
  638. package/build-style/separator/editor-rtl.css +5 -2
  639. package/build-style/separator/editor.css +5 -2
  640. package/build-style/separator/style-rtl.css +5 -2
  641. package/build-style/separator/style.css +5 -2
  642. package/build-style/separator/theme-rtl.css +5 -2
  643. package/build-style/separator/theme.css +5 -2
  644. package/build-style/shortcode/editor-rtl.css +5 -2
  645. package/build-style/shortcode/editor.css +5 -2
  646. package/build-style/site-logo/editor-rtl.css +5 -2
  647. package/build-style/site-logo/editor.css +5 -2
  648. package/build-style/site-logo/style-rtl.css +5 -2
  649. package/build-style/site-logo/style.css +5 -2
  650. package/build-style/site-tagline/editor-rtl.css +5 -2
  651. package/build-style/site-tagline/editor.css +5 -2
  652. package/build-style/site-tagline/style-rtl.css +94 -0
  653. package/build-style/site-tagline/style.css +94 -0
  654. package/build-style/site-title/editor-rtl.css +5 -2
  655. package/build-style/site-title/editor.css +5 -2
  656. package/build-style/site-title/style-rtl.css +9 -3
  657. package/build-style/site-title/style.css +9 -3
  658. package/build-style/social-link/editor-rtl.css +5 -2
  659. package/build-style/social-link/editor.css +5 -2
  660. package/build-style/social-links/editor-rtl.css +5 -2
  661. package/build-style/social-links/editor.css +5 -2
  662. package/build-style/social-links/style-rtl.css +5 -2
  663. package/build-style/social-links/style.css +5 -2
  664. package/build-style/spacer/editor-rtl.css +5 -2
  665. package/build-style/spacer/editor.css +5 -2
  666. package/build-style/spacer/style-rtl.css +5 -2
  667. package/build-style/spacer/style.css +5 -2
  668. package/build-style/style-rtl.css +80 -10
  669. package/build-style/style.css +80 -10
  670. package/build-style/table/editor-rtl.css +5 -2
  671. package/build-style/table/editor.css +5 -2
  672. package/build-style/table/style-rtl.css +5 -2
  673. package/build-style/table/style.css +5 -2
  674. package/build-style/table/theme-rtl.css +5 -2
  675. package/build-style/table/theme.css +5 -2
  676. package/build-style/table-of-contents/style-rtl.css +94 -0
  677. package/build-style/table-of-contents/style.css +94 -0
  678. package/build-style/tag-cloud/editor-rtl.css +102 -0
  679. package/build-style/tag-cloud/editor.css +102 -0
  680. package/build-style/tag-cloud/style-rtl.css +5 -2
  681. package/build-style/tag-cloud/style.css +5 -2
  682. package/build-style/template-part/editor-rtl.css +5 -6
  683. package/build-style/template-part/editor.css +5 -6
  684. package/build-style/template-part/theme-rtl.css +5 -2
  685. package/build-style/template-part/theme.css +5 -2
  686. package/build-style/term-description/style-rtl.css +5 -2
  687. package/build-style/term-description/style.css +5 -2
  688. package/build-style/text-columns/editor-rtl.css +5 -2
  689. package/build-style/text-columns/editor.css +5 -2
  690. package/build-style/text-columns/style-rtl.css +5 -2
  691. package/build-style/text-columns/style.css +5 -2
  692. package/build-style/theme-rtl.css +8 -5
  693. package/build-style/theme.css +8 -5
  694. package/build-style/verse/style-rtl.css +5 -2
  695. package/build-style/verse/style.css +5 -2
  696. package/build-style/video/editor-rtl.css +5 -5
  697. package/build-style/video/editor.css +5 -5
  698. package/build-style/video/style-rtl.css +5 -2
  699. package/build-style/video/style.css +5 -2
  700. package/build-style/video/theme-rtl.css +5 -2
  701. package/build-style/video/theme.css +5 -2
  702. package/package.json +35 -35
  703. package/src/archives/edit.js +1 -0
  704. package/src/audio/edit.js +4 -3
  705. package/src/avatar/edit.js +1 -0
  706. package/src/avatar/user-control.js +1 -0
  707. package/src/button/edit.js +1 -0
  708. package/src/button/index.php +1 -14
  709. package/src/categories/block.json +12 -0
  710. package/src/column/block.json +2 -0
  711. package/src/column/edit.js +2 -2
  712. package/src/comment-author-name/block.json +14 -1
  713. package/src/comment-author-name/style.scss +4 -0
  714. package/src/comment-content/block.json +14 -1
  715. package/src/comment-content/style.scss +5 -0
  716. package/src/comment-date/block.json +14 -1
  717. package/src/comment-date/style.scss +4 -0
  718. package/src/comment-template/block.json +12 -0
  719. package/src/comments-pagination/comments-pagination-arrow-controls.js +1 -0
  720. package/src/comments-title/block.json +3 -0
  721. package/src/comments-title/edit.js +8 -1
  722. package/src/cover/edit/inspector-controls.js +0 -1
  723. package/src/details/edit.js +1 -0
  724. package/src/editor.scss +2 -0
  725. package/src/embed/edit.js +10 -1
  726. package/src/embed/editor.scss +4 -0
  727. package/src/embed/embed-placeholder.js +7 -4
  728. package/src/embed/embed-preview.js +3 -37
  729. package/src/file/block.json +12 -0
  730. package/src/file/inspector.js +1 -0
  731. package/src/form/edit.js +5 -2
  732. package/src/form-input/edit.js +2 -0
  733. package/src/form-input/style.scss +1 -0
  734. package/src/gallery/edit.js +80 -22
  735. package/src/gallery/editor.scss +1 -2
  736. package/src/gallery/gallery.native.js +2 -1
  737. package/src/gallery/gap-styles.js +1 -8
  738. package/src/gallery/style.scss +33 -7
  739. package/src/gallery/test/__snapshots__/index.native.js.snap +1 -1
  740. package/src/gallery/test/index.native.js +5 -5
  741. package/src/gallery/use-image-sizes.js +2 -2
  742. package/src/group/edit.js +1 -1
  743. package/src/group/editor.scss +1 -1
  744. package/src/group/index.js +26 -29
  745. package/src/group/variations.js +56 -0
  746. package/src/heading/block.json +3 -0
  747. package/src/heading/edit.js +3 -1
  748. package/src/image/editor.scss +12 -0
  749. package/src/image/image.js +7 -1
  750. package/src/image/transforms.js +7 -1
  751. package/src/image/view.js +1 -1
  752. package/src/latest-posts/edit.js +61 -17
  753. package/src/latest-posts/editor.scss +11 -10
  754. package/src/list/block.json +10 -1
  755. package/src/list/ordered-list-settings.js +20 -18
  756. package/src/list/test/edit.native.js +1 -3
  757. package/src/list-item/block.json +11 -3
  758. package/src/loginout/block.json +14 -1
  759. package/src/loginout/style.scss +4 -0
  760. package/src/media-text/edit.js +0 -1
  761. package/src/media-text/style.native.scss +2 -0
  762. package/src/missing/edit.js +12 -18
  763. package/src/navigation/edit/index.js +8 -8
  764. package/src/navigation/edit/navigation-menu-name-control.js +1 -0
  765. package/src/navigation/edit/overlay-menu-preview.js +2 -0
  766. package/src/navigation/editor.scss +5 -1
  767. package/src/navigation/index.php +10 -27
  768. package/src/navigation-link/editor.scss +0 -3
  769. package/src/post-author/block.json +13 -0
  770. package/src/post-author/edit.js +68 -57
  771. package/src/post-author/editor.scss +7 -0
  772. package/src/post-author/style.scss +1 -0
  773. package/src/post-author-biography/block.json +14 -1
  774. package/src/post-author-biography/style.scss +4 -0
  775. package/src/post-author-name/block.json +14 -1
  776. package/src/post-author-name/style.scss +4 -0
  777. package/src/post-comment/edit.js +2 -0
  778. package/src/post-comments-form/block.json +12 -0
  779. package/src/post-content/block.json +1 -0
  780. package/src/post-content/style.scss +5 -0
  781. package/src/post-date/block.json +12 -0
  782. package/src/post-excerpt/block.json +12 -0
  783. package/src/post-excerpt/edit.js +1 -0
  784. package/src/post-excerpt/style.scss +3 -0
  785. package/src/post-featured-image/dimension-controls.js +5 -0
  786. package/src/post-featured-image/edit.js +1 -0
  787. package/src/post-navigation-link/edit.js +8 -2
  788. package/src/post-terms/block.json +12 -0
  789. package/src/post-terms/edit.js +1 -0
  790. package/src/post-time-to-read/block.json +6 -0
  791. package/src/post-title/block.json +15 -0
  792. package/src/post-title/edit.js +5 -3
  793. package/src/preformatted/block.json +12 -0
  794. package/src/query/edit/inspector-controls/enhanced-pagination-control.js +1 -0
  795. package/src/query/edit/inspector-controls/index.js +85 -12
  796. package/src/query/edit/inspector-controls/offset-controls.js +31 -0
  797. package/src/query/edit/inspector-controls/pages-control.js +27 -0
  798. package/src/query/edit/inspector-controls/parent-control.js +1 -0
  799. package/src/query/edit/inspector-controls/per-page-control.js +33 -0
  800. package/src/query/edit/inspector-controls/sticky-control.js +1 -1
  801. package/src/query/edit/query-content.js +1 -1
  802. package/src/query/edit/query-toolbar.js +1 -90
  803. package/src/query/utils.js +9 -5
  804. package/src/query-pagination/query-pagination-arrow-controls.js +1 -0
  805. package/src/query-pagination-numbers/edit.js +1 -0
  806. package/src/query-title/block.json +15 -0
  807. package/src/query-title/edit.js +9 -1
  808. package/src/quote/block.json +1 -0
  809. package/src/quote/test/transforms.native.js +1 -1
  810. package/src/quote/theme.scss +5 -3
  811. package/src/quote/transforms.js +11 -2
  812. package/src/search/edit.js +9 -9
  813. package/src/search/editor.scss +5 -2
  814. package/src/site-logo/edit.js +23 -9
  815. package/src/site-tagline/block.json +12 -1
  816. package/src/site-tagline/edit.js +2 -4
  817. package/src/site-tagline/style.scss +4 -0
  818. package/src/site-title/block.json +10 -0
  819. package/src/site-title/edit.js +2 -4
  820. package/src/site-title/style.scss +7 -2
  821. package/src/social-link/edit.js +2 -1
  822. package/src/spacer/controls.js +10 -13
  823. package/src/style.scss +9 -0
  824. package/src/table/edit.js +5 -4
  825. package/src/table-of-contents/block.json +14 -1
  826. package/src/table-of-contents/style.scss +4 -0
  827. package/src/tag-cloud/block.json +13 -1
  828. package/src/tag-cloud/edit.js +80 -56
  829. package/src/tag-cloud/editor.scss +19 -0
  830. package/src/template-part/edit/advanced-controls.js +2 -0
  831. package/src/template-part/edit/index.js +10 -7
  832. package/src/template-part/edit/inner-blocks.js +6 -4
  833. package/src/template-part/editor.scss +0 -5
  834. package/src/video/edit-common-settings.js +1 -0
  835. package/src/video/edit.js +2 -2
  836. package/src/video/editor.scss +0 -4
  837. package/src/video/tracks-editor.js +3 -0
  838. package/src/video/transforms.js +5 -1
@@ -1 +1 @@
1
- {"version":3,"names":["__","InnerBlocks","useBlockProps","useInnerBlocksProps","InspectorControls","store","blockEditorStore","TextControl","SelectControl","PanelBody","useSelect","formSubmissionNotificationSuccess","formSubmissionNotificationError","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","TEMPLATE","type","label","required","Edit","attributes","setAttributes","clientId","action","method","email","submissionMethod","blockProps","hasInnerBlocks","select","getBlock","block","innerBlocks","length","innerBlocksProps","template","renderAppender","undefined","ButtonBlockAppender","children","title","options","value","onChange","help","__nextHasNoMarginBottom","autoComplete","group","newVal","className","encType"],"sources":["@wordpress/block-library/src/form/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInnerBlocks,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tInspectorControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { TextControl, SelectControl, PanelBody } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n} from './utils.js';\n\nconst TEMPLATE = [\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'text',\n\t\t\tlabel: __( 'Name' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'email',\n\t\t\tlabel: __( 'Email' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'textarea',\n\t\t\tlabel: __( 'Comment' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[ 'core/form-submit-button', {} ],\n];\n\nconst Edit = ( { attributes, setAttributes, clientId } ) => {\n\tconst { action, method, email, submissionMethod } = attributes;\n\tconst blockProps = useBlockProps();\n\n\tconst { hasInnerBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock } = select( blockEditorStore );\n\t\t\tconst block = getBlock( clientId );\n\t\t\treturn {\n\t\t\t\thasInnerBlocks: !! ( block && block.innerBlocks.length ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t\trenderAppender: hasInnerBlocks\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t// __nextHasNoMarginBottom\n\t\t\t\t\t\t// size={ '__unstable-large' }\n\t\t\t\t\t\tlabel={ __( 'Submissions method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t// TODO: Allow plugins to add their own submission methods.\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Send email' ),\n\t\t\t\t\t\t\t\tvalue: 'email',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( '- Custom -' ),\n\t\t\t\t\t\t\t\tvalue: 'custom',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ submissionMethod }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { submissionMethod: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\tsubmissionMethod === 'custom'\n\t\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t\t'Select the method to use for form submissions. Additional options for the \"custom\" mode can be found in the \"Advanced\" section.'\n\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\t\t\t'Select the method to use for form submissions.'\n\t\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\t{ submissionMethod === 'email' && (\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\tlabel={ __( 'Email for form submissions' ) }\n\t\t\t\t\t\t\tvalue={ email }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { email: value } );\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taction: `mailto:${ value }`,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\tsetAttributes( { method: 'post' } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'The email address where form submissions will be sent. Separate multiple email addresses with a comma.'\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</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ submissionMethod !== 'email' && (\n\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: 'Get', value: 'get' },\n\t\t\t\t\t\t\t{ label: 'Post', value: 'post' },\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ method }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { method: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Select the method to use for form submissions.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\tlabel={ __( 'Form action' ) }\n\t\t\t\t\t\tvalue={ action }\n\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\taction: newVal,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The URL where the form should be submitted.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<form\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t\tclassName=\"wp-block-form\"\n\t\t\t\tencType={ submissionMethod === 'email' ? 'text/plain' : null }\n\t\t\t/>\n\t\t</>\n\t);\n};\nexport default Edit;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__","InnerBlocks","useBlockProps","useInnerBlocksProps","InspectorControls","store","blockEditorStore","TextControl","SelectControl","PanelBody","useSelect","formSubmissionNotificationSuccess","formSubmissionNotificationError","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","TEMPLATE","type","label","required","Edit","attributes","setAttributes","clientId","action","method","email","submissionMethod","blockProps","hasInnerBlocks","select","getBlock","block","innerBlocks","length","innerBlocksProps","template","renderAppender","undefined","ButtonBlockAppender","children","title","__nextHasNoMarginBottom","__next40pxDefaultSize","options","value","onChange","help","autoComplete","group","newVal","className","encType"],"sources":["@wordpress/block-library/src/form/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInnerBlocks,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tInspectorControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { TextControl, SelectControl, PanelBody } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n} from './utils.js';\n\nconst TEMPLATE = [\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'text',\n\t\t\tlabel: __( 'Name' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'email',\n\t\t\tlabel: __( 'Email' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'textarea',\n\t\t\tlabel: __( 'Comment' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[ 'core/form-submit-button', {} ],\n];\n\nconst Edit = ( { attributes, setAttributes, clientId } ) => {\n\tconst { action, method, email, submissionMethod } = attributes;\n\tconst blockProps = useBlockProps();\n\n\tconst { hasInnerBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock } = select( blockEditorStore );\n\t\t\tconst block = getBlock( clientId );\n\t\t\treturn {\n\t\t\t\thasInnerBlocks: !! ( block && block.innerBlocks.length ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t\trenderAppender: hasInnerBlocks\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Submissions method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t// TODO: Allow plugins to add their own submission methods.\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Send email' ),\n\t\t\t\t\t\t\t\tvalue: 'email',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( '- Custom -' ),\n\t\t\t\t\t\t\t\tvalue: 'custom',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ submissionMethod }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { submissionMethod: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\tsubmissionMethod === 'custom'\n\t\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t\t'Select the method to use for form submissions. Additional options for the \"custom\" mode can be found in the \"Advanced\" section.'\n\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\t\t\t'Select the method to use for form submissions.'\n\t\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\t{ submissionMethod === 'email' && (\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\tlabel={ __( 'Email for form submissions' ) }\n\t\t\t\t\t\t\tvalue={ email }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { email: value } );\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taction: `mailto:${ value }`,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\tsetAttributes( { method: 'post' } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'The email address where form submissions will be sent. Separate multiple email addresses with a comma.'\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</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ submissionMethod !== 'email' && (\n\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: 'Get', value: 'get' },\n\t\t\t\t\t\t\t{ label: 'Post', value: 'post' },\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ method }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { method: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Select the method to use for form submissions.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\tlabel={ __( 'Form action' ) }\n\t\t\t\t\t\tvalue={ action }\n\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\taction: newVal,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The URL where the form should be submitted.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<form\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t\tclassName=\"wp-block-form\"\n\t\t\t\tencType={ submissionMethod === 'email' ? 'text/plain' : null }\n\t\t\t/>\n\t\t</>\n\t);\n};\nexport default Edit;\n"],"mappings":"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","ignoreList":[]}
@@ -62,6 +62,8 @@ function InputFieldBlock({
62
62
  }), /*#__PURE__*/_jsx(InspectorControls, {
63
63
  group: "advanced",
64
64
  children: /*#__PURE__*/_jsx(TextControl, {
65
+ __next40pxDefaultSize: true,
66
+ __nextHasNoMarginBottom: true,
65
67
  autoComplete: "off",
66
68
  label: __('Name'),
67
69
  value: name,
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","__","InspectorControls","RichText","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalUseColorProps","useColorProps","PanelBody","TextControl","CheckboxControl","useRef","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","InputFieldBlock","attributes","setAttributes","className","type","name","label","inlineLabel","required","placeholder","value","blockProps","ref","TagName","borderProps","colorProps","current","focus","controls","children","title","__nextHasNoMarginBottom","checked","onChange","newVal","group","autoComplete","help","event","target","tagName","newLabel","undefined","style"],"sources":["@wordpress/block-library/src/form-input/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n} from '@wordpress/block-editor';\nimport { PanelBody, TextControl, CheckboxControl } from '@wordpress/components';\n\nimport { useRef } from '@wordpress/element';\n\nfunction InputFieldBlock( { attributes, setAttributes, className } ) {\n\tconst { type, name, label, inlineLabel, required, placeholder, value } =\n\t\tattributes;\n\tconst blockProps = useBlockProps();\n\tconst ref = useRef();\n\tconst TagName = type === 'textarea' ? 'textarea' : 'input';\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tif ( ref.current ) {\n\t\tref.current.focus();\n\t}\n\n\tconst controls = (\n\t\t<>\n\t\t\t{ 'hidden' !== type && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t{ 'checkbox' !== type && (\n\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Inline label' ) }\n\t\t\t\t\t\t\t\tchecked={ inlineLabel }\n\t\t\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tinlineLabel: newVal,\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\t<CheckboxControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Required' ) }\n\t\t\t\t\t\t\tchecked={ required }\n\t\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\trequired: newVal,\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</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\tvalue={ name }\n\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tname: newVal,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Affects the \"name\" atribute of the input element, and is used as a name for the form submission results.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tif ( 'hidden' === type ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<input\n\t\t\t\t\ttype=\"hidden\"\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-form-input__input',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className\n\t\t\t\t\t) }\n\t\t\t\t\taria-label={ __( 'Value' ) }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ ( event ) =>\n\t\t\t\t\t\tsetAttributes( { value: event.target.value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t<span\n\t\t\t\tclassName={ clsx( 'wp-block-form-input__label', {\n\t\t\t\t\t'is-label-inline': inlineLabel || 'checkbox' === type,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\tclassName=\"wp-block-form-input__label-content\"\n\t\t\t\t\tvalue={ label }\n\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\tsetAttributes( { label: newLabel } )\n\t\t\t\t\t}\n\t\t\t\t\taria-label={ label ? __( 'Label' ) : __( 'Empty label' ) }\n\t\t\t\t\tdata-empty={ label ? false : true }\n\t\t\t\t\tplaceholder={ __( 'Type the label for this input' ) }\n\t\t\t\t/>\n\t\t\t\t<TagName\n\t\t\t\t\ttype={ 'textarea' === type ? undefined : type }\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-form-input__input',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className\n\t\t\t\t\t) }\n\t\t\t\t\taria-label={ __( 'Optional placeholder text' ) }\n\t\t\t\t\t// We hide the placeholder field's placeholder when there is a value. This\n\t\t\t\t\t// stops screen readers from reading the placeholder field's placeholder\n\t\t\t\t\t// which is confusing.\n\t\t\t\t\tplaceholder={\n\t\t\t\t\t\tplaceholder ? undefined : __( 'Optional placeholder…' )\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ placeholder }\n\t\t\t\t\tonChange={ ( event ) =>\n\t\t\t\t\t\tsetAttributes( { placeholder: event.target.value } )\n\t\t\t\t\t}\n\t\t\t\t\taria-required={ required }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</span>\n\t\t</div>\n\t);\n}\n\nexport default InputFieldBlock;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","__","InspectorControls","RichText","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalUseColorProps","useColorProps","PanelBody","TextControl","CheckboxControl","useRef","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","InputFieldBlock","attributes","setAttributes","className","type","name","label","inlineLabel","required","placeholder","value","blockProps","ref","TagName","borderProps","colorProps","current","focus","controls","children","title","__nextHasNoMarginBottom","checked","onChange","newVal","group","__next40pxDefaultSize","autoComplete","help","event","target","tagName","newLabel","undefined","style"],"sources":["@wordpress/block-library/src/form-input/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n} from '@wordpress/block-editor';\nimport { PanelBody, TextControl, CheckboxControl } from '@wordpress/components';\n\nimport { useRef } from '@wordpress/element';\n\nfunction InputFieldBlock( { attributes, setAttributes, className } ) {\n\tconst { type, name, label, inlineLabel, required, placeholder, value } =\n\t\tattributes;\n\tconst blockProps = useBlockProps();\n\tconst ref = useRef();\n\tconst TagName = type === 'textarea' ? 'textarea' : 'input';\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tif ( ref.current ) {\n\t\tref.current.focus();\n\t}\n\n\tconst controls = (\n\t\t<>\n\t\t\t{ 'hidden' !== type && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t{ 'checkbox' !== type && (\n\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Inline label' ) }\n\t\t\t\t\t\t\t\tchecked={ inlineLabel }\n\t\t\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tinlineLabel: newVal,\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\t<CheckboxControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Required' ) }\n\t\t\t\t\t\t\tchecked={ required }\n\t\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\trequired: newVal,\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</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\tvalue={ name }\n\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tname: newVal,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Affects the \"name\" atribute of the input element, and is used as a name for the form submission results.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tif ( 'hidden' === type ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<input\n\t\t\t\t\ttype=\"hidden\"\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-form-input__input',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className\n\t\t\t\t\t) }\n\t\t\t\t\taria-label={ __( 'Value' ) }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ ( event ) =>\n\t\t\t\t\t\tsetAttributes( { value: event.target.value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t<span\n\t\t\t\tclassName={ clsx( 'wp-block-form-input__label', {\n\t\t\t\t\t'is-label-inline': inlineLabel || 'checkbox' === type,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\tclassName=\"wp-block-form-input__label-content\"\n\t\t\t\t\tvalue={ label }\n\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\tsetAttributes( { label: newLabel } )\n\t\t\t\t\t}\n\t\t\t\t\taria-label={ label ? __( 'Label' ) : __( 'Empty label' ) }\n\t\t\t\t\tdata-empty={ label ? false : true }\n\t\t\t\t\tplaceholder={ __( 'Type the label for this input' ) }\n\t\t\t\t/>\n\t\t\t\t<TagName\n\t\t\t\t\ttype={ 'textarea' === type ? undefined : type }\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-form-input__input',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className\n\t\t\t\t\t) }\n\t\t\t\t\taria-label={ __( 'Optional placeholder text' ) }\n\t\t\t\t\t// We hide the placeholder field's placeholder when there is a value. This\n\t\t\t\t\t// stops screen readers from reading the placeholder field's placeholder\n\t\t\t\t\t// which is confusing.\n\t\t\t\t\tplaceholder={\n\t\t\t\t\t\tplaceholder ? undefined : __( 'Optional placeholder…' )\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ placeholder }\n\t\t\t\t\tonChange={ ( event ) =>\n\t\t\t\t\t\tsetAttributes( { placeholder: event.target.value } )\n\t\t\t\t\t}\n\t\t\t\t\taria-required={ required }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</span>\n\t\t</div>\n\t);\n}\n\nexport default InputFieldBlock;\n"],"mappings":"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","ignoreList":[]}
@@ -6,17 +6,16 @@ import clsx from 'clsx';
6
6
  /**
7
7
  * WordPress dependencies
8
8
  */
9
- import { compose } from '@wordpress/compose';
10
- import { BaseControl, PanelBody, SelectControl, ToggleControl, RangeControl, Spinner, withNotices } from '@wordpress/components';
9
+ import { BaseControl, PanelBody, SelectControl, ToggleControl, RangeControl, Spinner, MenuGroup, MenuItem, ToolbarDropdownMenu } from '@wordpress/components';
11
10
  import { store as blockEditorStore, MediaPlaceholder, InspectorControls, useBlockProps, useInnerBlocksProps, BlockControls, MediaReplaceFlow } from '@wordpress/block-editor';
12
11
  import { Platform, useEffect, useMemo } from '@wordpress/element';
13
12
  import { __, _x, sprintf } from '@wordpress/i18n';
14
13
  import { useSelect, useDispatch } from '@wordpress/data';
15
- import { withViewportMatch } from '@wordpress/viewport';
16
14
  import { View } from '@wordpress/primitives';
17
15
  import { createBlock } from '@wordpress/blocks';
18
16
  import { createBlobURL } from '@wordpress/blob';
19
17
  import { store as noticesStore } from '@wordpress/notices';
18
+ import { link as linkIcon, customLink, image as imageIcon, linkOff } from '@wordpress/icons';
20
19
 
21
20
  /**
22
21
  * Internal dependencies
@@ -36,14 +35,20 @@ import { jsxs as _jsxs } from "react/jsx-runtime";
36
35
  import { Fragment as _Fragment } from "react/jsx-runtime";
37
36
  const MAX_COLUMNS = 8;
38
37
  const linkOptions = [{
38
+ icon: customLink,
39
+ label: __('Link images to attachment pages'),
39
40
  value: LINK_DESTINATION_ATTACHMENT,
40
- label: __('Attachment Page')
41
+ noticeText: __('Attachment Pages')
41
42
  }, {
43
+ icon: imageIcon,
44
+ label: __('Link images to media files'),
42
45
  value: LINK_DESTINATION_MEDIA,
43
- label: __('Media File')
46
+ noticeText: __('Media Files')
44
47
  }, {
48
+ icon: linkOff,
49
+ label: _x('None', 'Media item link option'),
45
50
  value: LINK_DESTINATION_NONE,
46
- label: _x('None', 'Media item link option')
51
+ noticeText: __('None')
47
52
  }];
48
53
  const ALLOWED_MEDIA_TYPES = ['image'];
49
54
  const PLACEHOLDER_TEXT = Platform.isNative ? __('Add media') : __('Drag images, upload new ones or select files from your library.');
@@ -54,7 +59,7 @@ const DEFAULT_BLOCK = {
54
59
  name: 'core/image'
55
60
  };
56
61
  const EMPTY_ARRAY = [];
57
- function GalleryEdit(props) {
62
+ export default function GalleryEdit(props) {
58
63
  const {
59
64
  setAttributes,
60
65
  attributes,
@@ -246,7 +251,7 @@ function GalleryEdit(props) {
246
251
  updateBlockAttributes(blocks, changedAttributes, true);
247
252
  const linkToText = [...linkOptions].find(linkType => linkType.value === value);
248
253
  createSuccessNotice(sprintf( /* translators: %s: image size settings */
249
- __('All gallery image links updated to: %s'), linkToText.label), {
254
+ __('All gallery image links updated to: %s'), linkToText.noticeText), {
250
255
  id: 'gallery-attributes-linkTo',
251
256
  type: 'snackbar'
252
257
  });
@@ -392,15 +397,15 @@ function GalleryEdit(props) {
392
397
  onChange: updateImagesSize,
393
398
  hideCancelButton: true,
394
399
  size: "__unstable-large"
395
- }), /*#__PURE__*/_jsx(SelectControl, {
400
+ }), Platform.isNative ? /*#__PURE__*/_jsx(SelectControl, {
396
401
  __nextHasNoMarginBottom: true,
397
- label: __('Link to'),
402
+ label: __('Link'),
398
403
  value: linkTo,
399
404
  onChange: setLinkTo,
400
405
  options: linkOptions,
401
406
  hideCancelButton: true,
402
407
  size: "__unstable-large"
403
- }), /*#__PURE__*/_jsx(ToggleControl, {
408
+ }) : null, /*#__PURE__*/_jsx(ToggleControl, {
404
409
  __nextHasNoMarginBottom: true,
405
410
  label: __('Crop images to fit'),
406
411
  checked: !!imageCrop,
@@ -417,6 +422,7 @@ function GalleryEdit(props) {
417
422
  onChange: toggleOpenInNewTab
418
423
  }), Platform.isWeb && !imageSizeOptions && hasImageIds && /*#__PURE__*/_jsxs(BaseControl, {
419
424
  className: "gallery-image-sizes",
425
+ __nextHasNoMarginBottom: true,
420
426
  children: [/*#__PURE__*/_jsx(BaseControl.VisualLabel, {
421
427
  children: __('Resolution')
422
428
  }), /*#__PURE__*/_jsxs(View, {
@@ -425,7 +431,34 @@ function GalleryEdit(props) {
425
431
  })]
426
432
  })]
427
433
  })
428
- }), Platform.isWeb && /*#__PURE__*/_jsxs(_Fragment, {
434
+ }), Platform.isWeb ? /*#__PURE__*/_jsx(BlockControls, {
435
+ group: "block",
436
+ children: /*#__PURE__*/_jsx(ToolbarDropdownMenu, {
437
+ icon: linkIcon,
438
+ label: __('Link'),
439
+ children: ({
440
+ onClose
441
+ }) => /*#__PURE__*/_jsx(MenuGroup, {
442
+ children: linkOptions.map(linkItem => {
443
+ const isOptionSelected = linkTo === linkItem.value;
444
+ return /*#__PURE__*/_jsx(MenuItem, {
445
+ isSelected: isOptionSelected,
446
+ className: clsx('components-dropdown-menu__menu-item', {
447
+ 'is-active': isOptionSelected
448
+ }),
449
+ iconPosition: "left",
450
+ icon: linkItem.icon,
451
+ onClick: () => {
452
+ setLinkTo(linkItem.value);
453
+ onClose();
454
+ },
455
+ role: "menuitemradio",
456
+ children: linkItem.label
457
+ }, linkItem.value);
458
+ })
459
+ })
460
+ })
461
+ }) : null, Platform.isWeb && /*#__PURE__*/_jsxs(_Fragment, {
429
462
  children: [!multiGallerySelection && /*#__PURE__*/_jsx(BlockControls, {
430
463
  group: "other",
431
464
  children: /*#__PURE__*/_jsx(MediaReplaceFlow, {
@@ -453,7 +486,4 @@ function GalleryEdit(props) {
453
486
  })]
454
487
  });
455
488
  }
456
- export default compose([withNotices, withViewportMatch({
457
- isNarrow: '< small'
458
- })])(GalleryEdit);
459
489
  //# sourceMappingURL=edit.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","compose","BaseControl","PanelBody","SelectControl","ToggleControl","RangeControl","Spinner","withNotices","store","blockEditorStore","MediaPlaceholder","InspectorControls","useBlockProps","useInnerBlocksProps","BlockControls","MediaReplaceFlow","Platform","useEffect","useMemo","__","_x","sprintf","useSelect","useDispatch","withViewportMatch","View","createBlock","createBlobURL","noticesStore","sharedIcon","defaultColumnsNumber","pickRelevantMediaFiles","getHrefAndDestination","getUpdatedLinkTargetSettings","getImageSizeAttributes","Gallery","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_MEDIA","LINK_DESTINATION_NONE","useImageSizes","useGetNewImages","useGetMedia","GapStyles","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","MAX_COLUMNS","linkOptions","value","label","ALLOWED_MEDIA_TYPES","PLACEHOLDER_TEXT","isNative","MOBILE_CONTROL_PROPS_RANGE_CONTROL","type","DEFAULT_BLOCK","name","EMPTY_ARRAY","GalleryEdit","props","setAttributes","attributes","className","clientId","isSelected","insertBlocksAfter","isContentLocked","onFocus","columns","imageCrop","randomOrder","linkTarget","linkTo","sizeSlug","__unstableMarkNextChangeAsNotPersistent","replaceInnerBlocks","updateBlockAttributes","selectBlock","createSuccessNotice","createErrorNotice","getBlock","getSettings","innerBlockImages","blockWasJustInserted","multiGallerySelection","select","_getBlock$innerBlocks","getBlockName","getMultiSelectedBlockClientIds","_getSettings","_getBlock","wasBlockJustInserted","multiSelectedClientIds","innerBlocks","length","every","_clientId","images","map","block","id","url","fromSavedContent","Boolean","originalContent","imageData","newImages","forEach","newImage","buildImageAttributes","align","undefined","imageSizeOptions","imageAttributes","image","find","newClassName","newLinkTarget","rel","linkDestination","caption","raw","alt","alt_text","isValidFileType","file","nativeFileData","mediaTypeSelector","media_type","some","mediaType","indexOf","blob","updateImages","selectedImages","newFileUploads","Object","prototype","toString","call","imageArray","Array","from","processedImages","filter","newOrderMap","reduce","result","index","existingImageBlocks","img","newImageList","existingImg","newBlocks","concat","sort","a","b","onUploadError","message","setLinkTo","changedAttributes","blocks","push","linkToText","linkType","setColumnsNumber","toggleImageCrop","toggleRandomOrder","toggleOpenInNewTab","openInNewTab","noticeText","updateImagesSize","newSizeSlug","imageSize","size","window","wp","media","view","settings","defaultProps","link","hasImages","hasImageIds","imagesUploading","mediaPlaceholderProps","web","addToGallery","disableMediaButtons","native","isAppender","autoOpenMediaUpload","mediaPlaceholder","handleUpload","icon","labels","title","instructions","onSelect","accept","allowedTypes","multiple","onError","blockProps","nativeInnerBlockProps","marginHorizontal","marginVertical","innerBlocksProps","defaultBlock","directInsert","orientation","renderAppender","children","hasLinkTo","__nextHasNoMarginBottom","onChange","min","max","Math","required","__next40pxDefaultSize","help","options","hideCancelButton","checked","isWeb","VisualLabel","group","mediaIds","blockGap","style","spacing","isNarrow"],"sources":["@wordpress/block-library/src/gallery/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { compose } from '@wordpress/compose';\nimport {\n\tBaseControl,\n\tPanelBody,\n\tSelectControl,\n\tToggleControl,\n\tRangeControl,\n\tSpinner,\n\twithNotices,\n} from '@wordpress/components';\nimport {\n\tstore as blockEditorStore,\n\tMediaPlaceholder,\n\tInspectorControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n\tMediaReplaceFlow,\n} from '@wordpress/block-editor';\nimport { Platform, useEffect, useMemo } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { withViewportMatch } from '@wordpress/viewport';\nimport { View } from '@wordpress/primitives';\nimport { createBlock } from '@wordpress/blocks';\nimport { createBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { sharedIcon } from './shared-icon';\nimport { defaultColumnsNumber, pickRelevantMediaFiles } from './shared';\nimport { getHrefAndDestination } from './utils';\nimport {\n\tgetUpdatedLinkTargetSettings,\n\tgetImageSizeAttributes,\n} from '../image/utils';\nimport Gallery from './gallery';\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n} from './constants';\nimport useImageSizes from './use-image-sizes';\nimport useGetNewImages from './use-get-new-images';\nimport useGetMedia from './use-get-media';\nimport GapStyles from './gap-styles';\n\nconst MAX_COLUMNS = 8;\nconst linkOptions = [\n\t{ value: LINK_DESTINATION_ATTACHMENT, label: __( 'Attachment Page' ) },\n\t{ value: LINK_DESTINATION_MEDIA, label: __( 'Media File' ) },\n\t{\n\t\tvalue: LINK_DESTINATION_NONE,\n\t\tlabel: _x( 'None', 'Media item link option' ),\n\t},\n];\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nconst PLACEHOLDER_TEXT = Platform.isNative\n\t? __( 'Add media' )\n\t: __( 'Drag images, upload new ones or select files from your library.' );\n\nconst MOBILE_CONTROL_PROPS_RANGE_CONTROL = Platform.isNative\n\t? { type: 'stepper' }\n\t: {};\n\nconst DEFAULT_BLOCK = { name: 'core/image' };\nconst EMPTY_ARRAY = [];\n\nfunction GalleryEdit( props ) {\n\tconst {\n\t\tsetAttributes,\n\t\tattributes,\n\t\tclassName,\n\t\tclientId,\n\t\tisSelected,\n\t\tinsertBlocksAfter,\n\t\tisContentLocked,\n\t\tonFocus,\n\t} = props;\n\n\tconst { columns, imageCrop, randomOrder, linkTarget, linkTo, sizeSlug } =\n\t\tattributes;\n\n\tconst {\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\treplaceInnerBlocks,\n\t\tupdateBlockAttributes,\n\t\tselectBlock,\n\t} = useDispatch( blockEditorStore );\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst {\n\t\tgetBlock,\n\t\tgetSettings,\n\t\tinnerBlockImages,\n\t\tblockWasJustInserted,\n\t\tmultiGallerySelection,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockName,\n\t\t\t\tgetMultiSelectedBlockClientIds,\n\t\t\t\tgetSettings: _getSettings,\n\t\t\t\tgetBlock: _getBlock,\n\t\t\t\twasBlockJustInserted,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst multiSelectedClientIds = getMultiSelectedBlockClientIds();\n\n\t\t\treturn {\n\t\t\t\tgetBlock: _getBlock,\n\t\t\t\tgetSettings: _getSettings,\n\t\t\t\tinnerBlockImages:\n\t\t\t\t\t_getBlock( clientId )?.innerBlocks ?? EMPTY_ARRAY,\n\t\t\t\tblockWasJustInserted: wasBlockJustInserted(\n\t\t\t\t\tclientId,\n\t\t\t\t\t'inserter_menu'\n\t\t\t\t),\n\t\t\t\tmultiGallerySelection:\n\t\t\t\t\tmultiSelectedClientIds.length &&\n\t\t\t\t\tmultiSelectedClientIds.every(\n\t\t\t\t\t\t( _clientId ) =>\n\t\t\t\t\t\t\tgetBlockName( _clientId ) === 'core/gallery'\n\t\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst images = useMemo(\n\t\t() =>\n\t\t\tinnerBlockImages?.map( ( block ) => ( {\n\t\t\t\tclientId: block.clientId,\n\t\t\t\tid: block.attributes.id,\n\t\t\t\turl: block.attributes.url,\n\t\t\t\tattributes: block.attributes,\n\t\t\t\tfromSavedContent: Boolean( block.originalContent ),\n\t\t\t} ) ),\n\t\t[ innerBlockImages ]\n\t);\n\n\tconst imageData = useGetMedia( innerBlockImages );\n\n\tconst newImages = useGetNewImages( images, imageData );\n\n\tuseEffect( () => {\n\t\tnewImages?.forEach( ( newImage ) => {\n\t\t\t// Update the images data without creating new undo levels.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tupdateBlockAttributes( newImage.clientId, {\n\t\t\t\t...buildImageAttributes( newImage.attributes ),\n\t\t\t\tid: newImage.id,\n\t\t\t\talign: undefined,\n\t\t\t} );\n\t\t} );\n\t}, [ newImages ] );\n\n\tconst imageSizeOptions = useImageSizes(\n\t\timageData,\n\t\tisSelected,\n\t\tgetSettings\n\t);\n\n\t/**\n\t * Determines the image attributes that should be applied to an image block\n\t * after the gallery updates.\n\t *\n\t * The gallery will receive the full collection of images when a new image\n\t * is added. As a result we need to reapply the image's original settings if\n\t * it already existed in the gallery. If the image is in fact new, we need\n\t * to apply the gallery's current settings to the image.\n\t *\n\t * @param {Object} imageAttributes Media object for the actual image.\n\t * @return {Object} Attributes to set on the new image block.\n\t */\n\tfunction buildImageAttributes( imageAttributes ) {\n\t\tconst image = imageAttributes.id\n\t\t\t? imageData.find( ( { id } ) => id === imageAttributes.id )\n\t\t\t: null;\n\n\t\tlet newClassName;\n\t\tif ( imageAttributes.className && imageAttributes.className !== '' ) {\n\t\t\tnewClassName = imageAttributes.className;\n\t\t}\n\n\t\tlet newLinkTarget;\n\t\tif ( imageAttributes.linkTarget || imageAttributes.rel ) {\n\t\t\t// When transformed from image blocks, the link destination and rel attributes are inherited.\n\t\t\tnewLinkTarget = {\n\t\t\t\tlinkTarget: imageAttributes.linkTarget,\n\t\t\t\trel: imageAttributes.rel,\n\t\t\t};\n\t\t} else {\n\t\t\t// When an image is added, update the link destination and rel attributes according to the gallery settings\n\t\t\tnewLinkTarget = getUpdatedLinkTargetSettings(\n\t\t\t\tlinkTarget,\n\t\t\t\tattributes\n\t\t\t);\n\t\t}\n\n\t\treturn {\n\t\t\t...pickRelevantMediaFiles( image, sizeSlug ),\n\t\t\t...getHrefAndDestination(\n\t\t\t\timage,\n\t\t\t\tlinkTo,\n\t\t\t\timageAttributes?.linkDestination\n\t\t\t),\n\t\t\t...newLinkTarget,\n\t\t\tclassName: newClassName,\n\t\t\tsizeSlug,\n\t\t\tcaption: imageAttributes.caption || image.caption?.raw,\n\t\t\talt: imageAttributes.alt || image.alt_text,\n\t\t};\n\t}\n\n\tfunction isValidFileType( file ) {\n\t\t// It's necessary to retrieve the media type from the raw image data for already-uploaded images on native.\n\t\tconst nativeFileData =\n\t\t\tPlatform.isNative && file.id\n\t\t\t\t? imageData.find( ( { id } ) => id === file.id )\n\t\t\t\t: null;\n\n\t\tconst mediaTypeSelector = nativeFileData\n\t\t\t? nativeFileData?.media_type\n\t\t\t: file.type;\n\n\t\treturn (\n\t\t\tALLOWED_MEDIA_TYPES.some(\n\t\t\t\t( mediaType ) => mediaTypeSelector?.indexOf( mediaType ) === 0\n\t\t\t) || file.blob\n\t\t);\n\t}\n\n\tfunction updateImages( selectedImages ) {\n\t\tconst newFileUploads =\n\t\t\tObject.prototype.toString.call( selectedImages ) ===\n\t\t\t'[object FileList]';\n\n\t\tconst imageArray = newFileUploads\n\t\t\t? Array.from( selectedImages ).map( ( file ) => {\n\t\t\t\t\tif ( ! file.url ) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\n\t\t\t\t\treturn file;\n\t\t\t } )\n\t\t\t: selectedImages;\n\n\t\tif ( ! imageArray.every( isValidFileType ) ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\t__(\n\t\t\t\t\t'If uploading to a gallery all files need to be image formats'\n\t\t\t\t),\n\t\t\t\t{ id: 'gallery-upload-invalid-file', type: 'snackbar' }\n\t\t\t);\n\t\t}\n\n\t\tconst processedImages = imageArray\n\t\t\t.filter( ( file ) => file.url || isValidFileType( file ) )\n\t\t\t.map( ( file ) => {\n\t\t\t\tif ( ! file.url ) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tblob: file.blob || createBlobURL( file ),\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\treturn file;\n\t\t\t} );\n\n\t\t// Because we are reusing existing innerImage blocks any reordering\n\t\t// done in the media library will be lost so we need to reapply that ordering\n\t\t// once the new image blocks are merged in with existing.\n\t\tconst newOrderMap = processedImages.reduce(\n\t\t\t( result, image, index ) => (\n\t\t\t\t( result[ image.id ] = index ), result\n\t\t\t),\n\t\t\t{}\n\t\t);\n\n\t\tconst existingImageBlocks = ! newFileUploads\n\t\t\t? innerBlockImages.filter( ( block ) =>\n\t\t\t\t\tprocessedImages.find(\n\t\t\t\t\t\t( img ) => img.id === block.attributes.id\n\t\t\t\t\t)\n\t\t\t )\n\t\t\t: innerBlockImages;\n\n\t\tconst newImageList = processedImages.filter(\n\t\t\t( img ) =>\n\t\t\t\t! existingImageBlocks.find(\n\t\t\t\t\t( existingImg ) => img.id === existingImg.attributes.id\n\t\t\t\t)\n\t\t);\n\n\t\tconst newBlocks = newImageList.map( ( image ) => {\n\t\t\treturn createBlock( 'core/image', {\n\t\t\t\tid: image.id,\n\t\t\t\tblob: image.blob,\n\t\t\t\turl: image.url,\n\t\t\t\tcaption: image.caption,\n\t\t\t\talt: image.alt,\n\t\t\t} );\n\t\t} );\n\n\t\treplaceInnerBlocks(\n\t\t\tclientId,\n\t\t\texistingImageBlocks\n\t\t\t\t.concat( newBlocks )\n\t\t\t\t.sort(\n\t\t\t\t\t( a, b ) =>\n\t\t\t\t\t\tnewOrderMap[ a.attributes.id ] -\n\t\t\t\t\t\tnewOrderMap[ b.attributes.id ]\n\t\t\t\t)\n\t\t);\n\n\t\t// Select the first block to scroll into view when new blocks are added.\n\t\tif ( newBlocks?.length > 0 ) {\n\t\t\tselectBlock( newBlocks[ 0 ].clientId );\n\t\t}\n\t}\n\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\tfunction setLinkTo( value ) {\n\t\tsetAttributes( { linkTo: value } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tconst image = block.attributes.id\n\t\t\t\t? imageData.find( ( { id } ) => id === block.attributes.id )\n\t\t\t\t: null;\n\t\t\tchangedAttributes[ block.clientId ] = getHrefAndDestination(\n\t\t\t\timage,\n\t\t\t\tvalue\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst linkToText = [ ...linkOptions ].find(\n\t\t\t( linkType ) => linkType.value === value\n\t\t);\n\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: image size settings */\n\t\t\t\t__( 'All gallery image links updated to: %s' ),\n\t\t\t\tlinkToText.label\n\t\t\t),\n\t\t\t{\n\t\t\t\tid: 'gallery-attributes-linkTo',\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t}\n\n\tfunction setColumnsNumber( value ) {\n\t\tsetAttributes( { columns: value } );\n\t}\n\n\tfunction toggleImageCrop() {\n\t\tsetAttributes( { imageCrop: ! imageCrop } );\n\t}\n\n\tfunction toggleRandomOrder() {\n\t\tsetAttributes( { randomOrder: ! randomOrder } );\n\t}\n\n\tfunction toggleOpenInNewTab( openInNewTab ) {\n\t\tconst newLinkTarget = openInNewTab ? '_blank' : undefined;\n\t\tsetAttributes( { linkTarget: newLinkTarget } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tchangedAttributes[ block.clientId ] = getUpdatedLinkTargetSettings(\n\t\t\t\tnewLinkTarget,\n\t\t\t\tblock.attributes\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst noticeText = openInNewTab\n\t\t\t? __( 'All gallery images updated to open in new tab' )\n\t\t\t: __( 'All gallery images updated to not open in new tab' );\n\t\tcreateSuccessNotice( noticeText, {\n\t\t\tid: 'gallery-attributes-openInNewTab',\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t}\n\n\tfunction updateImagesSize( newSizeSlug ) {\n\t\tsetAttributes( { sizeSlug: newSizeSlug } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tconst image = block.attributes.id\n\t\t\t\t? imageData.find( ( { id } ) => id === block.attributes.id )\n\t\t\t\t: null;\n\t\t\tchangedAttributes[ block.clientId ] = getImageSizeAttributes(\n\t\t\t\timage,\n\t\t\t\tnewSizeSlug\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst imageSize = imageSizeOptions.find(\n\t\t\t( size ) => size.value === newSizeSlug\n\t\t);\n\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: image size settings */\n\t\t\t\t__( 'All gallery image sizes updated to: %s' ),\n\t\t\t\timageSize.label\n\t\t\t),\n\t\t\t{\n\t\t\t\tid: 'gallery-attributes-sizeSlug',\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t}\n\n\tuseEffect( () => {\n\t\t// linkTo attribute must be saved so blocks don't break when changing image_default_link_type in options.php.\n\t\tif ( ! linkTo ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tlinkTo:\n\t\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\t\tLINK_DESTINATION_NONE,\n\t\t\t} );\n\t\t}\n\t}, [ linkTo ] );\n\n\tconst hasImages = !! images.length;\n\tconst hasImageIds = hasImages && images.some( ( image ) => !! image.id );\n\tconst imagesUploading = images.some( ( img ) =>\n\t\t! Platform.isNative\n\t\t\t? ! img.id && img.url?.indexOf( 'blob:' ) === 0\n\t\t\t: img.url?.indexOf( 'file:' ) === 0\n\t);\n\n\t// MediaPlaceholder props are different between web and native hence, we provide a platform-specific set.\n\tconst mediaPlaceholderProps = Platform.select( {\n\t\tweb: {\n\t\t\taddToGallery: false,\n\t\t\tdisableMediaButtons: imagesUploading,\n\t\t\tvalue: {},\n\t\t},\n\t\tnative: {\n\t\t\taddToGallery: hasImageIds,\n\t\t\tisAppender: hasImages,\n\t\t\tdisableMediaButtons:\n\t\t\t\t( hasImages && ! isSelected ) || imagesUploading,\n\t\t\tvalue: hasImageIds ? images : {},\n\t\t\tautoOpenMediaUpload:\n\t\t\t\t! hasImages && isSelected && blockWasJustInserted,\n\t\t\tonFocus,\n\t\t},\n\t} );\n\tconst mediaPlaceholder = (\n\t\t<MediaPlaceholder\n\t\t\thandleUpload={ false }\n\t\t\ticon={ sharedIcon }\n\t\t\tlabels={ {\n\t\t\t\ttitle: __( 'Gallery' ),\n\t\t\t\tinstructions: PLACEHOLDER_TEXT,\n\t\t\t} }\n\t\t\tonSelect={ updateImages }\n\t\t\taccept=\"image/*\"\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\tmultiple\n\t\t\tonError={ onUploadError }\n\t\t\t{ ...mediaPlaceholderProps }\n\t\t/>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( className, 'has-nested-images' ),\n\t} );\n\n\tconst nativeInnerBlockProps = Platform.isNative && {\n\t\tmarginHorizontal: 0,\n\t\tmarginVertical: 0,\n\t};\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tdefaultBlock: DEFAULT_BLOCK,\n\t\tdirectInsert: true,\n\t\torientation: 'horizontal',\n\t\trenderAppender: false,\n\t\t...nativeInnerBlockProps,\n\t} );\n\n\tif ( ! hasImages ) {\n\t\treturn (\n\t\t\t<View { ...innerBlocksProps }>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t\t{ mediaPlaceholder }\n\t\t\t</View>\n\t\t);\n\t}\n\n\tconst hasLinkTo = linkTo && linkTo !== 'none';\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t{ images.length > 1 && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\t\tcolumns\n\t\t\t\t\t\t\t\t\t? columns\n\t\t\t\t\t\t\t\t\t: defaultColumnsNumber( images.length )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonChange={ setColumnsNumber }\n\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\tmax={ Math.min( MAX_COLUMNS, images.length ) }\n\t\t\t\t\t\t\t{ ...MOBILE_CONTROL_PROPS_RANGE_CONTROL }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ imageSizeOptions?.length > 0 && (\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Select the size of the source images.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\t\tonChange={ updateImagesSize }\n\t\t\t\t\t\t\thideCancelButton\n\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link to' ) }\n\t\t\t\t\t\tvalue={ linkTo }\n\t\t\t\t\t\tonChange={ setLinkTo }\n\t\t\t\t\t\toptions={ linkOptions }\n\t\t\t\t\t\thideCancelButton\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Crop images to fit' ) }\n\t\t\t\t\t\tchecked={ !! imageCrop }\n\t\t\t\t\t\tonChange={ toggleImageCrop }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Randomize order' ) }\n\t\t\t\t\t\tchecked={ !! randomOrder }\n\t\t\t\t\t\tonChange={ toggleRandomOrder }\n\t\t\t\t\t/>\n\t\t\t\t\t{ hasLinkTo && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Open images in new tab' ) }\n\t\t\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\tonChange={ toggleOpenInNewTab }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ Platform.isWeb && ! imageSizeOptions && hasImageIds && (\n\t\t\t\t\t\t<BaseControl className=\"gallery-image-sizes\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Resolution' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<View className=\"gallery-image-sizes__loading\">\n\t\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t\t\t{ __( 'Loading options…' ) }\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ Platform.isWeb && (\n\t\t\t\t<>\n\t\t\t\t\t{ ! multiGallerySelection && (\n\t\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\t\t\thandleUpload={ false }\n\t\t\t\t\t\t\t\tonSelect={ updateImages }\n\t\t\t\t\t\t\t\tname={ __( 'Add' ) }\n\t\t\t\t\t\t\t\tmultiple\n\t\t\t\t\t\t\t\tmediaIds={ images\n\t\t\t\t\t\t\t\t\t.filter( ( image ) => image.id )\n\t\t\t\t\t\t\t\t\t.map( ( image ) => image.id ) }\n\t\t\t\t\t\t\t\taddToGallery={ hasImageIds }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BlockControls>\n\t\t\t\t\t) }\n\t\t\t\t\t<GapStyles\n\t\t\t\t\t\tblockGap={ attributes.style?.spacing?.blockGap }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<Gallery\n\t\t\t\t{ ...props }\n\t\t\t\tisContentLocked={ isContentLocked }\n\t\t\t\timages={ images }\n\t\t\t\tmediaPlaceholder={\n\t\t\t\t\t! hasImages || Platform.isNative\n\t\t\t\t\t\t? mediaPlaceholder\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t\tblockProps={ innerBlocksProps }\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\tmultiGallerySelection={ multiGallerySelection }\n\t\t\t/>\n\t\t</>\n\t);\n}\nexport default compose( [\n\twithNotices,\n\twithViewportMatch( { isNarrow: '< small' } ),\n] )( GalleryEdit );\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","BaseControl","PanelBody","SelectControl","ToggleControl","RangeControl","Spinner","MenuGroup","MenuItem","ToolbarDropdownMenu","store","blockEditorStore","MediaPlaceholder","InspectorControls","useBlockProps","useInnerBlocksProps","BlockControls","MediaReplaceFlow","Platform","useEffect","useMemo","__","_x","sprintf","useSelect","useDispatch","View","createBlock","createBlobURL","noticesStore","link","linkIcon","customLink","image","imageIcon","linkOff","sharedIcon","defaultColumnsNumber","pickRelevantMediaFiles","getHrefAndDestination","getUpdatedLinkTargetSettings","getImageSizeAttributes","Gallery","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_MEDIA","LINK_DESTINATION_NONE","useImageSizes","useGetNewImages","useGetMedia","GapStyles","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","MAX_COLUMNS","linkOptions","icon","label","value","noticeText","ALLOWED_MEDIA_TYPES","PLACEHOLDER_TEXT","isNative","MOBILE_CONTROL_PROPS_RANGE_CONTROL","type","DEFAULT_BLOCK","name","EMPTY_ARRAY","GalleryEdit","props","setAttributes","attributes","className","clientId","isSelected","insertBlocksAfter","isContentLocked","onFocus","columns","imageCrop","randomOrder","linkTarget","linkTo","sizeSlug","__unstableMarkNextChangeAsNotPersistent","replaceInnerBlocks","updateBlockAttributes","selectBlock","createSuccessNotice","createErrorNotice","getBlock","getSettings","innerBlockImages","blockWasJustInserted","multiGallerySelection","select","_getBlock$innerBlocks","getBlockName","getMultiSelectedBlockClientIds","_getSettings","_getBlock","wasBlockJustInserted","multiSelectedClientIds","innerBlocks","length","every","_clientId","images","map","block","id","url","fromSavedContent","Boolean","originalContent","imageData","newImages","forEach","newImage","buildImageAttributes","align","undefined","imageSizeOptions","imageAttributes","find","newClassName","newLinkTarget","rel","linkDestination","caption","raw","alt","alt_text","isValidFileType","file","nativeFileData","mediaTypeSelector","media_type","some","mediaType","indexOf","blob","updateImages","selectedImages","newFileUploads","Object","prototype","toString","call","imageArray","Array","from","processedImages","filter","newOrderMap","reduce","result","index","existingImageBlocks","img","newImageList","existingImg","newBlocks","concat","sort","a","b","onUploadError","message","setLinkTo","changedAttributes","blocks","push","linkToText","linkType","setColumnsNumber","toggleImageCrop","toggleRandomOrder","toggleOpenInNewTab","openInNewTab","updateImagesSize","newSizeSlug","imageSize","size","window","wp","media","view","settings","defaultProps","hasImages","hasImageIds","imagesUploading","mediaPlaceholderProps","web","addToGallery","disableMediaButtons","native","isAppender","autoOpenMediaUpload","mediaPlaceholder","handleUpload","labels","title","instructions","onSelect","accept","allowedTypes","multiple","onError","blockProps","nativeInnerBlockProps","marginHorizontal","marginVertical","innerBlocksProps","defaultBlock","directInsert","orientation","renderAppender","children","hasLinkTo","__nextHasNoMarginBottom","onChange","min","max","Math","required","__next40pxDefaultSize","help","options","hideCancelButton","checked","isWeb","VisualLabel","group","onClose","linkItem","isOptionSelected","iconPosition","onClick","role","mediaIds","blockGap","style","spacing"],"sources":["@wordpress/block-library/src/gallery/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBaseControl,\n\tPanelBody,\n\tSelectControl,\n\tToggleControl,\n\tRangeControl,\n\tSpinner,\n\tMenuGroup,\n\tMenuItem,\n\tToolbarDropdownMenu,\n} from '@wordpress/components';\nimport {\n\tstore as blockEditorStore,\n\tMediaPlaceholder,\n\tInspectorControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n\tMediaReplaceFlow,\n} from '@wordpress/block-editor';\nimport { Platform, useEffect, useMemo } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { View } from '@wordpress/primitives';\nimport { createBlock } from '@wordpress/blocks';\nimport { createBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\nimport {\n\tlink as linkIcon,\n\tcustomLink,\n\timage as imageIcon,\n\tlinkOff,\n} from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { sharedIcon } from './shared-icon';\nimport { defaultColumnsNumber, pickRelevantMediaFiles } from './shared';\nimport { getHrefAndDestination } from './utils';\nimport {\n\tgetUpdatedLinkTargetSettings,\n\tgetImageSizeAttributes,\n} from '../image/utils';\nimport Gallery from './gallery';\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n} from './constants';\nimport useImageSizes from './use-image-sizes';\nimport useGetNewImages from './use-get-new-images';\nimport useGetMedia from './use-get-media';\nimport GapStyles from './gap-styles';\n\nconst MAX_COLUMNS = 8;\nconst linkOptions = [\n\t{\n\t\ticon: customLink,\n\t\tlabel: __( 'Link images to attachment pages' ),\n\t\tvalue: LINK_DESTINATION_ATTACHMENT,\n\t\tnoticeText: __( 'Attachment Pages' ),\n\t},\n\t{\n\t\ticon: imageIcon,\n\t\tlabel: __( 'Link images to media files' ),\n\t\tvalue: LINK_DESTINATION_MEDIA,\n\t\tnoticeText: __( 'Media Files' ),\n\t},\n\t{\n\t\ticon: linkOff,\n\t\tlabel: _x( 'None', 'Media item link option' ),\n\t\tvalue: LINK_DESTINATION_NONE,\n\t\tnoticeText: __( 'None' ),\n\t},\n];\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nconst PLACEHOLDER_TEXT = Platform.isNative\n\t? __( 'Add media' )\n\t: __( 'Drag images, upload new ones or select files from your library.' );\n\nconst MOBILE_CONTROL_PROPS_RANGE_CONTROL = Platform.isNative\n\t? { type: 'stepper' }\n\t: {};\n\nconst DEFAULT_BLOCK = { name: 'core/image' };\nconst EMPTY_ARRAY = [];\n\nexport default function GalleryEdit( props ) {\n\tconst {\n\t\tsetAttributes,\n\t\tattributes,\n\t\tclassName,\n\t\tclientId,\n\t\tisSelected,\n\t\tinsertBlocksAfter,\n\t\tisContentLocked,\n\t\tonFocus,\n\t} = props;\n\n\tconst { columns, imageCrop, randomOrder, linkTarget, linkTo, sizeSlug } =\n\t\tattributes;\n\n\tconst {\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\treplaceInnerBlocks,\n\t\tupdateBlockAttributes,\n\t\tselectBlock,\n\t} = useDispatch( blockEditorStore );\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst {\n\t\tgetBlock,\n\t\tgetSettings,\n\t\tinnerBlockImages,\n\t\tblockWasJustInserted,\n\t\tmultiGallerySelection,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockName,\n\t\t\t\tgetMultiSelectedBlockClientIds,\n\t\t\t\tgetSettings: _getSettings,\n\t\t\t\tgetBlock: _getBlock,\n\t\t\t\twasBlockJustInserted,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst multiSelectedClientIds = getMultiSelectedBlockClientIds();\n\n\t\t\treturn {\n\t\t\t\tgetBlock: _getBlock,\n\t\t\t\tgetSettings: _getSettings,\n\t\t\t\tinnerBlockImages:\n\t\t\t\t\t_getBlock( clientId )?.innerBlocks ?? EMPTY_ARRAY,\n\t\t\t\tblockWasJustInserted: wasBlockJustInserted(\n\t\t\t\t\tclientId,\n\t\t\t\t\t'inserter_menu'\n\t\t\t\t),\n\t\t\t\tmultiGallerySelection:\n\t\t\t\t\tmultiSelectedClientIds.length &&\n\t\t\t\t\tmultiSelectedClientIds.every(\n\t\t\t\t\t\t( _clientId ) =>\n\t\t\t\t\t\t\tgetBlockName( _clientId ) === 'core/gallery'\n\t\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst images = useMemo(\n\t\t() =>\n\t\t\tinnerBlockImages?.map( ( block ) => ( {\n\t\t\t\tclientId: block.clientId,\n\t\t\t\tid: block.attributes.id,\n\t\t\t\turl: block.attributes.url,\n\t\t\t\tattributes: block.attributes,\n\t\t\t\tfromSavedContent: Boolean( block.originalContent ),\n\t\t\t} ) ),\n\t\t[ innerBlockImages ]\n\t);\n\n\tconst imageData = useGetMedia( innerBlockImages );\n\n\tconst newImages = useGetNewImages( images, imageData );\n\n\tuseEffect( () => {\n\t\tnewImages?.forEach( ( newImage ) => {\n\t\t\t// Update the images data without creating new undo levels.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tupdateBlockAttributes( newImage.clientId, {\n\t\t\t\t...buildImageAttributes( newImage.attributes ),\n\t\t\t\tid: newImage.id,\n\t\t\t\talign: undefined,\n\t\t\t} );\n\t\t} );\n\t}, [ newImages ] );\n\n\tconst imageSizeOptions = useImageSizes(\n\t\timageData,\n\t\tisSelected,\n\t\tgetSettings\n\t);\n\n\t/**\n\t * Determines the image attributes that should be applied to an image block\n\t * after the gallery updates.\n\t *\n\t * The gallery will receive the full collection of images when a new image\n\t * is added. As a result we need to reapply the image's original settings if\n\t * it already existed in the gallery. If the image is in fact new, we need\n\t * to apply the gallery's current settings to the image.\n\t *\n\t * @param {Object} imageAttributes Media object for the actual image.\n\t * @return {Object} Attributes to set on the new image block.\n\t */\n\tfunction buildImageAttributes( imageAttributes ) {\n\t\tconst image = imageAttributes.id\n\t\t\t? imageData.find( ( { id } ) => id === imageAttributes.id )\n\t\t\t: null;\n\n\t\tlet newClassName;\n\t\tif ( imageAttributes.className && imageAttributes.className !== '' ) {\n\t\t\tnewClassName = imageAttributes.className;\n\t\t}\n\n\t\tlet newLinkTarget;\n\t\tif ( imageAttributes.linkTarget || imageAttributes.rel ) {\n\t\t\t// When transformed from image blocks, the link destination and rel attributes are inherited.\n\t\t\tnewLinkTarget = {\n\t\t\t\tlinkTarget: imageAttributes.linkTarget,\n\t\t\t\trel: imageAttributes.rel,\n\t\t\t};\n\t\t} else {\n\t\t\t// When an image is added, update the link destination and rel attributes according to the gallery settings\n\t\t\tnewLinkTarget = getUpdatedLinkTargetSettings(\n\t\t\t\tlinkTarget,\n\t\t\t\tattributes\n\t\t\t);\n\t\t}\n\n\t\treturn {\n\t\t\t...pickRelevantMediaFiles( image, sizeSlug ),\n\t\t\t...getHrefAndDestination(\n\t\t\t\timage,\n\t\t\t\tlinkTo,\n\t\t\t\timageAttributes?.linkDestination\n\t\t\t),\n\t\t\t...newLinkTarget,\n\t\t\tclassName: newClassName,\n\t\t\tsizeSlug,\n\t\t\tcaption: imageAttributes.caption || image.caption?.raw,\n\t\t\talt: imageAttributes.alt || image.alt_text,\n\t\t};\n\t}\n\n\tfunction isValidFileType( file ) {\n\t\t// It's necessary to retrieve the media type from the raw image data for already-uploaded images on native.\n\t\tconst nativeFileData =\n\t\t\tPlatform.isNative && file.id\n\t\t\t\t? imageData.find( ( { id } ) => id === file.id )\n\t\t\t\t: null;\n\n\t\tconst mediaTypeSelector = nativeFileData\n\t\t\t? nativeFileData?.media_type\n\t\t\t: file.type;\n\n\t\treturn (\n\t\t\tALLOWED_MEDIA_TYPES.some(\n\t\t\t\t( mediaType ) => mediaTypeSelector?.indexOf( mediaType ) === 0\n\t\t\t) || file.blob\n\t\t);\n\t}\n\n\tfunction updateImages( selectedImages ) {\n\t\tconst newFileUploads =\n\t\t\tObject.prototype.toString.call( selectedImages ) ===\n\t\t\t'[object FileList]';\n\n\t\tconst imageArray = newFileUploads\n\t\t\t? Array.from( selectedImages ).map( ( file ) => {\n\t\t\t\t\tif ( ! file.url ) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\n\t\t\t\t\treturn file;\n\t\t\t } )\n\t\t\t: selectedImages;\n\n\t\tif ( ! imageArray.every( isValidFileType ) ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\t__(\n\t\t\t\t\t'If uploading to a gallery all files need to be image formats'\n\t\t\t\t),\n\t\t\t\t{ id: 'gallery-upload-invalid-file', type: 'snackbar' }\n\t\t\t);\n\t\t}\n\n\t\tconst processedImages = imageArray\n\t\t\t.filter( ( file ) => file.url || isValidFileType( file ) )\n\t\t\t.map( ( file ) => {\n\t\t\t\tif ( ! file.url ) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tblob: file.blob || createBlobURL( file ),\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\treturn file;\n\t\t\t} );\n\n\t\t// Because we are reusing existing innerImage blocks any reordering\n\t\t// done in the media library will be lost so we need to reapply that ordering\n\t\t// once the new image blocks are merged in with existing.\n\t\tconst newOrderMap = processedImages.reduce(\n\t\t\t( result, image, index ) => (\n\t\t\t\t( result[ image.id ] = index ), result\n\t\t\t),\n\t\t\t{}\n\t\t);\n\n\t\tconst existingImageBlocks = ! newFileUploads\n\t\t\t? innerBlockImages.filter( ( block ) =>\n\t\t\t\t\tprocessedImages.find(\n\t\t\t\t\t\t( img ) => img.id === block.attributes.id\n\t\t\t\t\t)\n\t\t\t )\n\t\t\t: innerBlockImages;\n\n\t\tconst newImageList = processedImages.filter(\n\t\t\t( img ) =>\n\t\t\t\t! existingImageBlocks.find(\n\t\t\t\t\t( existingImg ) => img.id === existingImg.attributes.id\n\t\t\t\t)\n\t\t);\n\n\t\tconst newBlocks = newImageList.map( ( image ) => {\n\t\t\treturn createBlock( 'core/image', {\n\t\t\t\tid: image.id,\n\t\t\t\tblob: image.blob,\n\t\t\t\turl: image.url,\n\t\t\t\tcaption: image.caption,\n\t\t\t\talt: image.alt,\n\t\t\t} );\n\t\t} );\n\n\t\treplaceInnerBlocks(\n\t\t\tclientId,\n\t\t\texistingImageBlocks\n\t\t\t\t.concat( newBlocks )\n\t\t\t\t.sort(\n\t\t\t\t\t( a, b ) =>\n\t\t\t\t\t\tnewOrderMap[ a.attributes.id ] -\n\t\t\t\t\t\tnewOrderMap[ b.attributes.id ]\n\t\t\t\t)\n\t\t);\n\n\t\t// Select the first block to scroll into view when new blocks are added.\n\t\tif ( newBlocks?.length > 0 ) {\n\t\t\tselectBlock( newBlocks[ 0 ].clientId );\n\t\t}\n\t}\n\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\tfunction setLinkTo( value ) {\n\t\tsetAttributes( { linkTo: value } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tconst image = block.attributes.id\n\t\t\t\t? imageData.find( ( { id } ) => id === block.attributes.id )\n\t\t\t\t: null;\n\t\t\tchangedAttributes[ block.clientId ] = getHrefAndDestination(\n\t\t\t\timage,\n\t\t\t\tvalue\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst linkToText = [ ...linkOptions ].find(\n\t\t\t( linkType ) => linkType.value === value\n\t\t);\n\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: image size settings */\n\t\t\t\t__( 'All gallery image links updated to: %s' ),\n\t\t\t\tlinkToText.noticeText\n\t\t\t),\n\t\t\t{\n\t\t\t\tid: 'gallery-attributes-linkTo',\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t}\n\n\tfunction setColumnsNumber( value ) {\n\t\tsetAttributes( { columns: value } );\n\t}\n\n\tfunction toggleImageCrop() {\n\t\tsetAttributes( { imageCrop: ! imageCrop } );\n\t}\n\n\tfunction toggleRandomOrder() {\n\t\tsetAttributes( { randomOrder: ! randomOrder } );\n\t}\n\n\tfunction toggleOpenInNewTab( openInNewTab ) {\n\t\tconst newLinkTarget = openInNewTab ? '_blank' : undefined;\n\t\tsetAttributes( { linkTarget: newLinkTarget } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tchangedAttributes[ block.clientId ] = getUpdatedLinkTargetSettings(\n\t\t\t\tnewLinkTarget,\n\t\t\t\tblock.attributes\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst noticeText = openInNewTab\n\t\t\t? __( 'All gallery images updated to open in new tab' )\n\t\t\t: __( 'All gallery images updated to not open in new tab' );\n\t\tcreateSuccessNotice( noticeText, {\n\t\t\tid: 'gallery-attributes-openInNewTab',\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t}\n\n\tfunction updateImagesSize( newSizeSlug ) {\n\t\tsetAttributes( { sizeSlug: newSizeSlug } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tconst image = block.attributes.id\n\t\t\t\t? imageData.find( ( { id } ) => id === block.attributes.id )\n\t\t\t\t: null;\n\t\t\tchangedAttributes[ block.clientId ] = getImageSizeAttributes(\n\t\t\t\timage,\n\t\t\t\tnewSizeSlug\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst imageSize = imageSizeOptions.find(\n\t\t\t( size ) => size.value === newSizeSlug\n\t\t);\n\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: image size settings */\n\t\t\t\t__( 'All gallery image sizes updated to: %s' ),\n\t\t\t\timageSize.label\n\t\t\t),\n\t\t\t{\n\t\t\t\tid: 'gallery-attributes-sizeSlug',\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t}\n\n\tuseEffect( () => {\n\t\t// linkTo attribute must be saved so blocks don't break when changing image_default_link_type in options.php.\n\t\tif ( ! linkTo ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tlinkTo:\n\t\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\t\tLINK_DESTINATION_NONE,\n\t\t\t} );\n\t\t}\n\t}, [ linkTo ] );\n\n\tconst hasImages = !! images.length;\n\tconst hasImageIds = hasImages && images.some( ( image ) => !! image.id );\n\tconst imagesUploading = images.some( ( img ) =>\n\t\t! Platform.isNative\n\t\t\t? ! img.id && img.url?.indexOf( 'blob:' ) === 0\n\t\t\t: img.url?.indexOf( 'file:' ) === 0\n\t);\n\n\t// MediaPlaceholder props are different between web and native hence, we provide a platform-specific set.\n\tconst mediaPlaceholderProps = Platform.select( {\n\t\tweb: {\n\t\t\taddToGallery: false,\n\t\t\tdisableMediaButtons: imagesUploading,\n\t\t\tvalue: {},\n\t\t},\n\t\tnative: {\n\t\t\taddToGallery: hasImageIds,\n\t\t\tisAppender: hasImages,\n\t\t\tdisableMediaButtons:\n\t\t\t\t( hasImages && ! isSelected ) || imagesUploading,\n\t\t\tvalue: hasImageIds ? images : {},\n\t\t\tautoOpenMediaUpload:\n\t\t\t\t! hasImages && isSelected && blockWasJustInserted,\n\t\t\tonFocus,\n\t\t},\n\t} );\n\tconst mediaPlaceholder = (\n\t\t<MediaPlaceholder\n\t\t\thandleUpload={ false }\n\t\t\ticon={ sharedIcon }\n\t\t\tlabels={ {\n\t\t\t\ttitle: __( 'Gallery' ),\n\t\t\t\tinstructions: PLACEHOLDER_TEXT,\n\t\t\t} }\n\t\t\tonSelect={ updateImages }\n\t\t\taccept=\"image/*\"\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\tmultiple\n\t\t\tonError={ onUploadError }\n\t\t\t{ ...mediaPlaceholderProps }\n\t\t/>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( className, 'has-nested-images' ),\n\t} );\n\n\tconst nativeInnerBlockProps = Platform.isNative && {\n\t\tmarginHorizontal: 0,\n\t\tmarginVertical: 0,\n\t};\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tdefaultBlock: DEFAULT_BLOCK,\n\t\tdirectInsert: true,\n\t\torientation: 'horizontal',\n\t\trenderAppender: false,\n\t\t...nativeInnerBlockProps,\n\t} );\n\n\tif ( ! hasImages ) {\n\t\treturn (\n\t\t\t<View { ...innerBlocksProps }>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t\t{ mediaPlaceholder }\n\t\t\t</View>\n\t\t);\n\t}\n\n\tconst hasLinkTo = linkTo && linkTo !== 'none';\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t{ images.length > 1 && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\t\tcolumns\n\t\t\t\t\t\t\t\t\t? columns\n\t\t\t\t\t\t\t\t\t: defaultColumnsNumber( images.length )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonChange={ setColumnsNumber }\n\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\tmax={ Math.min( MAX_COLUMNS, images.length ) }\n\t\t\t\t\t\t\t{ ...MOBILE_CONTROL_PROPS_RANGE_CONTROL }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ imageSizeOptions?.length > 0 && (\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Select the size of the source images.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\t\tonChange={ updateImagesSize }\n\t\t\t\t\t\t\thideCancelButton\n\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ Platform.isNative ? (\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\t\t\tvalue={ linkTo }\n\t\t\t\t\t\t\tonChange={ setLinkTo }\n\t\t\t\t\t\t\toptions={ linkOptions }\n\t\t\t\t\t\t\thideCancelButton\n\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : null }\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Crop images to fit' ) }\n\t\t\t\t\t\tchecked={ !! imageCrop }\n\t\t\t\t\t\tonChange={ toggleImageCrop }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Randomize order' ) }\n\t\t\t\t\t\tchecked={ !! randomOrder }\n\t\t\t\t\t\tonChange={ toggleRandomOrder }\n\t\t\t\t\t/>\n\t\t\t\t\t{ hasLinkTo && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Open images in new tab' ) }\n\t\t\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\tonChange={ toggleOpenInNewTab }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ Platform.isWeb && ! imageSizeOptions && hasImageIds && (\n\t\t\t\t\t\t<BaseControl\n\t\t\t\t\t\t\tclassName=\"gallery-image-sizes\"\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Resolution' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<View className=\"gallery-image-sizes__loading\">\n\t\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t\t\t{ __( 'Loading options…' ) }\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ Platform.isWeb ? (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\t\ticon={ linkIcon }\n\t\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t{ linkOptions.map( ( linkItem ) => {\n\t\t\t\t\t\t\t\t\tconst isOptionSelected =\n\t\t\t\t\t\t\t\t\t\tlinkTo === linkItem.value;\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\tkey={ linkItem.value }\n\t\t\t\t\t\t\t\t\t\t\tisSelected={ isOptionSelected }\n\t\t\t\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t\t\t\t'components-dropdown-menu__menu-item',\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t'is-active':\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tisOptionSelected,\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\ticonPosition=\"left\"\n\t\t\t\t\t\t\t\t\t\t\ticon={ linkItem.icon }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetLinkTo( linkItem.value );\n\t\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\trole=\"menuitemradio\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ linkItem.label }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\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</MenuGroup>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ToolbarDropdownMenu>\n\t\t\t\t</BlockControls>\n\t\t\t) : null }\n\t\t\t{ Platform.isWeb && (\n\t\t\t\t<>\n\t\t\t\t\t{ ! multiGallerySelection && (\n\t\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\t\t\thandleUpload={ false }\n\t\t\t\t\t\t\t\tonSelect={ updateImages }\n\t\t\t\t\t\t\t\tname={ __( 'Add' ) }\n\t\t\t\t\t\t\t\tmultiple\n\t\t\t\t\t\t\t\tmediaIds={ images\n\t\t\t\t\t\t\t\t\t.filter( ( image ) => image.id )\n\t\t\t\t\t\t\t\t\t.map( ( image ) => image.id ) }\n\t\t\t\t\t\t\t\taddToGallery={ hasImageIds }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BlockControls>\n\t\t\t\t\t) }\n\t\t\t\t\t<GapStyles\n\t\t\t\t\t\tblockGap={ attributes.style?.spacing?.blockGap }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<Gallery\n\t\t\t\t{ ...props }\n\t\t\t\tisContentLocked={ isContentLocked }\n\t\t\t\timages={ images }\n\t\t\t\tmediaPlaceholder={\n\t\t\t\t\t! hasImages || Platform.isNative\n\t\t\t\t\t\t? mediaPlaceholder\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t\tblockProps={ innerBlocksProps }\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\tmultiGallerySelection={ multiGallerySelection }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;AACA,SACCC,WAAW,EACXC,SAAS,EACTC,aAAa,EACbC,aAAa,EACbC,YAAY,EACZC,OAAO,EACPC,SAAS,EACTC,QAAQ,EACRC,mBAAmB,QACb,uBAAuB;AAC9B,SACCC,KAAK,IAAIC,gBAAgB,EACzBC,gBAAgB,EAChBC,iBAAiB,EACjBC,aAAa,EACbC,mBAAmB,EACnBC,aAAa,EACbC,gBAAgB,QACV,yBAAyB;AAChC,SAASC,QAAQ,EAAEC,SAAS,EAAEC,OAAO,QAAQ,oBAAoB;AACjE,SAASC,EAAE,EAAEC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AACjD,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,IAAI,QAAQ,uBAAuB;AAC5C,SAASC,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASlB,KAAK,IAAImB,YAAY,QAAQ,oBAAoB;AAC1D,SACCC,IAAI,IAAIC,QAAQ,EAChBC,UAAU,EACVC,KAAK,IAAIC,SAAS,EAClBC,OAAO,QACD,kBAAkB;;AAEzB;AACA;AACA;AACA,SAASC,UAAU,QAAQ,eAAe;AAC1C,SAASC,oBAAoB,EAAEC,sBAAsB,QAAQ,UAAU;AACvE,SAASC,qBAAqB,QAAQ,SAAS;AAC/C,SACCC,4BAA4B,EAC5BC,sBAAsB,QAChB,gBAAgB;AACvB,OAAOC,OAAO,MAAM,WAAW;AAC/B,SACCC,2BAA2B,EAC3BC,sBAAsB,EACtBC,qBAAqB,QACf,aAAa;AACpB,OAAOC,aAAa,MAAM,mBAAmB;AAC7C,OAAOC,eAAe,MAAM,sBAAsB;AAClD,OAAOC,WAAW,MAAM,iBAAiB;AACzC,OAAOC,SAAS,MAAM,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAErC,MAAMC,WAAW,GAAG,CAAC;AACrB,MAAMC,WAAW,GAAG,CACnB;EACCC,IAAI,EAAE1B,UAAU;EAChB2B,KAAK,EAAEtC,EAAE,CAAE,iCAAkC,CAAC;EAC9CuC,KAAK,EAAEjB,2BAA2B;EAClCkB,UAAU,EAAExC,EAAE,CAAE,kBAAmB;AACpC,CAAC,EACD;EACCqC,IAAI,EAAExB,SAAS;EACfyB,KAAK,EAAEtC,EAAE,CAAE,4BAA6B,CAAC;EACzCuC,KAAK,EAAEhB,sBAAsB;EAC7BiB,UAAU,EAAExC,EAAE,CAAE,aAAc;AAC/B,CAAC,EACD;EACCqC,IAAI,EAAEvB,OAAO;EACbwB,KAAK,EAAErC,EAAE,CAAE,MAAM,EAAE,wBAAyB,CAAC;EAC7CsC,KAAK,EAAEf,qBAAqB;EAC5BgB,UAAU,EAAExC,EAAE,CAAE,MAAO;AACxB,CAAC,CACD;AACD,MAAMyC,mBAAmB,GAAG,CAAE,OAAO,CAAE;AAEvC,MAAMC,gBAAgB,GAAG7C,QAAQ,CAAC8C,QAAQ,GACvC3C,EAAE,CAAE,WAAY,CAAC,GACjBA,EAAE,CAAE,iEAAkE,CAAC;AAE1E,MAAM4C,kCAAkC,GAAG/C,QAAQ,CAAC8C,QAAQ,GACzD;EAAEE,IAAI,EAAE;AAAU,CAAC,GACnB,CAAC,CAAC;AAEL,MAAMC,aAAa,GAAG;EAAEC,IAAI,EAAE;AAAa,CAAC;AAC5C,MAAMC,WAAW,GAAG,EAAE;AAEtB,eAAe,SAASC,WAAWA,CAAEC,KAAK,EAAG;EAC5C,MAAM;IACLC,aAAa;IACbC,UAAU;IACVC,SAAS;IACTC,QAAQ;IACRC,UAAU;IACVC,iBAAiB;IACjBC,eAAe;IACfC;EACD,CAAC,GAAGR,KAAK;EAET,MAAM;IAAES,OAAO;IAAEC,SAAS;IAAEC,WAAW;IAAEC,UAAU;IAAEC,MAAM;IAAEC;EAAS,CAAC,GACtEZ,UAAU;EAEX,MAAM;IACLa,uCAAuC;IACvCC,kBAAkB;IAClBC,qBAAqB;IACrBC;EACD,CAAC,GAAGhE,WAAW,CAAEd,gBAAiB,CAAC;EACnC,MAAM;IAAE+E,mBAAmB;IAAEC;EAAkB,CAAC,GAC/ClE,WAAW,CAAEI,YAAa,CAAC;EAE5B,MAAM;IACL+D,QAAQ;IACRC,WAAW;IACXC,gBAAgB;IAChBC,oBAAoB;IACpBC;EACD,CAAC,GAAGxE,SAAS,CACVyE,MAAM,IAAM;IAAA,IAAAC,qBAAA;IACb,MAAM;MACLC,YAAY;MACZC,8BAA8B;MAC9BP,WAAW,EAAEQ,YAAY;MACzBT,QAAQ,EAAEU,SAAS;MACnBC;IACD,CAAC,GAAGN,MAAM,CAAEtF,gBAAiB,CAAC;IAC9B,MAAM6F,sBAAsB,GAAGJ,8BAA8B,CAAC,CAAC;IAE/D,OAAO;MACNR,QAAQ,EAAEU,SAAS;MACnBT,WAAW,EAAEQ,YAAY;MACzBP,gBAAgB,GAAAI,qBAAA,GACfI,SAAS,CAAE3B,QAAS,CAAC,EAAE8B,WAAW,cAAAP,qBAAA,cAAAA,qBAAA,GAAI7B,WAAW;MAClD0B,oBAAoB,EAAEQ,oBAAoB,CACzC5B,QAAQ,EACR,eACD,CAAC;MACDqB,qBAAqB,EACpBQ,sBAAsB,CAACE,MAAM,IAC7BF,sBAAsB,CAACG,KAAK,CACzBC,SAAS,IACVT,YAAY,CAAES,SAAU,CAAC,KAAK,cAChC;IACF,CAAC;EACF,CAAC,EACD,CAAEjC,QAAQ,CACX,CAAC;EAED,MAAMkC,MAAM,GAAGzF,OAAO,CACrB,MACC0E,gBAAgB,EAAEgB,GAAG,CAAIC,KAAK,KAAQ;IACrCpC,QAAQ,EAAEoC,KAAK,CAACpC,QAAQ;IACxBqC,EAAE,EAAED,KAAK,CAACtC,UAAU,CAACuC,EAAE;IACvBC,GAAG,EAAEF,KAAK,CAACtC,UAAU,CAACwC,GAAG;IACzBxC,UAAU,EAAEsC,KAAK,CAACtC,UAAU;IAC5ByC,gBAAgB,EAAEC,OAAO,CAAEJ,KAAK,CAACK,eAAgB;EAClD,CAAC,CAAG,CAAC,EACN,CAAEtB,gBAAgB,CACnB,CAAC;EAED,MAAMuB,SAAS,GAAGrE,WAAW,CAAE8C,gBAAiB,CAAC;EAEjD,MAAMwB,SAAS,GAAGvE,eAAe,CAAE8D,MAAM,EAAEQ,SAAU,CAAC;EAEtDlG,SAAS,CAAE,MAAM;IAChBmG,SAAS,EAAEC,OAAO,CAAIC,QAAQ,IAAM;MACnC;MACAlC,uCAAuC,CAAC,CAAC;MACzCE,qBAAqB,CAAEgC,QAAQ,CAAC7C,QAAQ,EAAE;QACzC,GAAG8C,oBAAoB,CAAED,QAAQ,CAAC/C,UAAW,CAAC;QAC9CuC,EAAE,EAAEQ,QAAQ,CAACR,EAAE;QACfU,KAAK,EAAEC;MACR,CAAE,CAAC;IACJ,CAAE,CAAC;EACJ,CAAC,EAAE,CAAEL,SAAS,CAAG,CAAC;EAElB,MAAMM,gBAAgB,GAAG9E,aAAa,CACrCuE,SAAS,EACTzC,UAAU,EACViB,WACD,CAAC;;EAED;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACC,SAAS4B,oBAAoBA,CAAEI,eAAe,EAAG;IAChD,MAAM5F,KAAK,GAAG4F,eAAe,CAACb,EAAE,GAC7BK,SAAS,CAACS,IAAI,CAAE,CAAE;MAAEd;IAAG,CAAC,KAAMA,EAAE,KAAKa,eAAe,CAACb,EAAG,CAAC,GACzD,IAAI;IAEP,IAAIe,YAAY;IAChB,IAAKF,eAAe,CAACnD,SAAS,IAAImD,eAAe,CAACnD,SAAS,KAAK,EAAE,EAAG;MACpEqD,YAAY,GAAGF,eAAe,CAACnD,SAAS;IACzC;IAEA,IAAIsD,aAAa;IACjB,IAAKH,eAAe,CAAC1C,UAAU,IAAI0C,eAAe,CAACI,GAAG,EAAG;MACxD;MACAD,aAAa,GAAG;QACf7C,UAAU,EAAE0C,eAAe,CAAC1C,UAAU;QACtC8C,GAAG,EAAEJ,eAAe,CAACI;MACtB,CAAC;IACF,CAAC,MAAM;MACN;MACAD,aAAa,GAAGxF,4BAA4B,CAC3C2C,UAAU,EACVV,UACD,CAAC;IACF;IAEA,OAAO;MACN,GAAGnC,sBAAsB,CAAEL,KAAK,EAAEoD,QAAS,CAAC;MAC5C,GAAG9C,qBAAqB,CACvBN,KAAK,EACLmD,MAAM,EACNyC,eAAe,EAAEK,eAClB,CAAC;MACD,GAAGF,aAAa;MAChBtD,SAAS,EAAEqD,YAAY;MACvB1C,QAAQ;MACR8C,OAAO,EAAEN,eAAe,CAACM,OAAO,IAAIlG,KAAK,CAACkG,OAAO,EAAEC,GAAG;MACtDC,GAAG,EAAER,eAAe,CAACQ,GAAG,IAAIpG,KAAK,CAACqG;IACnC,CAAC;EACF;EAEA,SAASC,eAAeA,CAAEC,IAAI,EAAG;IAChC;IACA,MAAMC,cAAc,GACnBvH,QAAQ,CAAC8C,QAAQ,IAAIwE,IAAI,CAACxB,EAAE,GACzBK,SAAS,CAACS,IAAI,CAAE,CAAE;MAAEd;IAAG,CAAC,KAAMA,EAAE,KAAKwB,IAAI,CAACxB,EAAG,CAAC,GAC9C,IAAI;IAER,MAAM0B,iBAAiB,GAAGD,cAAc,GACrCA,cAAc,EAAEE,UAAU,GAC1BH,IAAI,CAACtE,IAAI;IAEZ,OACCJ,mBAAmB,CAAC8E,IAAI,CACrBC,SAAS,IAAMH,iBAAiB,EAAEI,OAAO,CAAED,SAAU,CAAC,KAAK,CAC9D,CAAC,IAAIL,IAAI,CAACO,IAAI;EAEhB;EAEA,SAASC,YAAYA,CAAEC,cAAc,EAAG;IACvC,MAAMC,cAAc,GACnBC,MAAM,CAACC,SAAS,CAACC,QAAQ,CAACC,IAAI,CAAEL,cAAe,CAAC,KAChD,mBAAmB;IAEpB,MAAMM,UAAU,GAAGL,cAAc,GAC9BM,KAAK,CAACC,IAAI,CAAER,cAAe,CAAC,CAACnC,GAAG,CAAI0B,IAAI,IAAM;MAC9C,IAAK,CAAEA,IAAI,CAACvB,GAAG,EAAG;QACjB,OAAO;UACN8B,IAAI,EAAEnH,aAAa,CAAE4G,IAAK;QAC3B,CAAC;MACF;MAEA,OAAOA,IAAI;IACX,CAAE,CAAC,GACHS,cAAc;IAEjB,IAAK,CAAEM,UAAU,CAAC5C,KAAK,CAAE4B,eAAgB,CAAC,EAAG;MAC5C5C,iBAAiB,CAChBtE,EAAE,CACD,8DACD,CAAC,EACD;QAAE2F,EAAE,EAAE,6BAA6B;QAAE9C,IAAI,EAAE;MAAW,CACvD,CAAC;IACF;IAEA,MAAMwF,eAAe,GAAGH,UAAU,CAChCI,MAAM,CAAInB,IAAI,IAAMA,IAAI,CAACvB,GAAG,IAAIsB,eAAe,CAAEC,IAAK,CAAE,CAAC,CACzD1B,GAAG,CAAI0B,IAAI,IAAM;MACjB,IAAK,CAAEA,IAAI,CAACvB,GAAG,EAAG;QACjB,OAAO;UACN8B,IAAI,EAAEP,IAAI,CAACO,IAAI,IAAInH,aAAa,CAAE4G,IAAK;QACxC,CAAC;MACF;MAEA,OAAOA,IAAI;IACZ,CAAE,CAAC;;IAEJ;IACA;IACA;IACA,MAAMoB,WAAW,GAAGF,eAAe,CAACG,MAAM,CACzC,CAAEC,MAAM,EAAE7H,KAAK,EAAE8H,KAAK,MACnBD,MAAM,CAAE7H,KAAK,CAAC+E,EAAE,CAAE,GAAG+C,KAAK,EAAID,MAAM,CACtC,EACD,CAAC,CACF,CAAC;IAED,MAAME,mBAAmB,GAAG,CAAEd,cAAc,GACzCpD,gBAAgB,CAAC6D,MAAM,CAAI5C,KAAK,IAChC2C,eAAe,CAAC5B,IAAI,CACjBmC,GAAG,IAAMA,GAAG,CAACjD,EAAE,KAAKD,KAAK,CAACtC,UAAU,CAACuC,EACxC,CACA,CAAC,GACDlB,gBAAgB;IAEnB,MAAMoE,YAAY,GAAGR,eAAe,CAACC,MAAM,CACxCM,GAAG,IACJ,CAAED,mBAAmB,CAAClC,IAAI,CACvBqC,WAAW,IAAMF,GAAG,CAACjD,EAAE,KAAKmD,WAAW,CAAC1F,UAAU,CAACuC,EACtD,CACF,CAAC;IAED,MAAMoD,SAAS,GAAGF,YAAY,CAACpD,GAAG,CAAI7E,KAAK,IAAM;MAChD,OAAON,WAAW,CAAE,YAAY,EAAE;QACjCqF,EAAE,EAAE/E,KAAK,CAAC+E,EAAE;QACZ+B,IAAI,EAAE9G,KAAK,CAAC8G,IAAI;QAChB9B,GAAG,EAAEhF,KAAK,CAACgF,GAAG;QACdkB,OAAO,EAAElG,KAAK,CAACkG,OAAO;QACtBE,GAAG,EAAEpG,KAAK,CAACoG;MACZ,CAAE,CAAC;IACJ,CAAE,CAAC;IAEH9C,kBAAkB,CACjBZ,QAAQ,EACRqF,mBAAmB,CACjBK,MAAM,CAAED,SAAU,CAAC,CACnBE,IAAI,CACJ,CAAEC,CAAC,EAAEC,CAAC,KACLZ,WAAW,CAAEW,CAAC,CAAC9F,UAAU,CAACuC,EAAE,CAAE,GAC9B4C,WAAW,CAAEY,CAAC,CAAC/F,UAAU,CAACuC,EAAE,CAC9B,CACF,CAAC;;IAED;IACA,IAAKoD,SAAS,EAAE1D,MAAM,GAAG,CAAC,EAAG;MAC5BjB,WAAW,CAAE2E,SAAS,CAAE,CAAC,CAAE,CAACzF,QAAS,CAAC;IACvC;EACD;EAEA,SAAS8F,aAAaA,CAAEC,OAAO,EAAG;IACjC/E,iBAAiB,CAAE+E,OAAO,EAAE;MAAExG,IAAI,EAAE;IAAW,CAAE,CAAC;EACnD;EAEA,SAASyG,SAASA,CAAE/G,KAAK,EAAG;IAC3BY,aAAa,CAAE;MAAEY,MAAM,EAAExB;IAAM,CAAE,CAAC;IAClC,MAAMgH,iBAAiB,GAAG,CAAC,CAAC;IAC5B,MAAMC,MAAM,GAAG,EAAE;IACjBjF,QAAQ,CAAEjB,QAAS,CAAC,CAAC8B,WAAW,CAACc,OAAO,CAAIR,KAAK,IAAM;MACtD8D,MAAM,CAACC,IAAI,CAAE/D,KAAK,CAACpC,QAAS,CAAC;MAC7B,MAAM1C,KAAK,GAAG8E,KAAK,CAACtC,UAAU,CAACuC,EAAE,GAC9BK,SAAS,CAACS,IAAI,CAAE,CAAE;QAAEd;MAAG,CAAC,KAAMA,EAAE,KAAKD,KAAK,CAACtC,UAAU,CAACuC,EAAG,CAAC,GAC1D,IAAI;MACP4D,iBAAiB,CAAE7D,KAAK,CAACpC,QAAQ,CAAE,GAAGpC,qBAAqB,CAC1DN,KAAK,EACL2B,KACD,CAAC;IACF,CAAE,CAAC;IACH4B,qBAAqB,CAAEqF,MAAM,EAAED,iBAAiB,EAAE,IAAK,CAAC;IACxD,MAAMG,UAAU,GAAG,CAAE,GAAGtH,WAAW,CAAE,CAACqE,IAAI,CACvCkD,QAAQ,IAAMA,QAAQ,CAACpH,KAAK,KAAKA,KACpC,CAAC;IAED8B,mBAAmB,CAClBnE,OAAO,EACN;IACAF,EAAE,CAAE,wCAAyC,CAAC,EAC9C0J,UAAU,CAAClH,UACZ,CAAC,EACD;MACCmD,EAAE,EAAE,2BAA2B;MAC/B9C,IAAI,EAAE;IACP,CACD,CAAC;EACF;EAEA,SAAS+G,gBAAgBA,CAAErH,KAAK,EAAG;IAClCY,aAAa,CAAE;MAAEQ,OAAO,EAAEpB;IAAM,CAAE,CAAC;EACpC;EAEA,SAASsH,eAAeA,CAAA,EAAG;IAC1B1G,aAAa,CAAE;MAAES,SAAS,EAAE,CAAEA;IAAU,CAAE,CAAC;EAC5C;EAEA,SAASkG,iBAAiBA,CAAA,EAAG;IAC5B3G,aAAa,CAAE;MAAEU,WAAW,EAAE,CAAEA;IAAY,CAAE,CAAC;EAChD;EAEA,SAASkG,kBAAkBA,CAAEC,YAAY,EAAG;IAC3C,MAAMrD,aAAa,GAAGqD,YAAY,GAAG,QAAQ,GAAG1D,SAAS;IACzDnD,aAAa,CAAE;MAAEW,UAAU,EAAE6C;IAAc,CAAE,CAAC;IAC9C,MAAM4C,iBAAiB,GAAG,CAAC,CAAC;IAC5B,MAAMC,MAAM,GAAG,EAAE;IACjBjF,QAAQ,CAAEjB,QAAS,CAAC,CAAC8B,WAAW,CAACc,OAAO,CAAIR,KAAK,IAAM;MACtD8D,MAAM,CAACC,IAAI,CAAE/D,KAAK,CAACpC,QAAS,CAAC;MAC7BiG,iBAAiB,CAAE7D,KAAK,CAACpC,QAAQ,CAAE,GAAGnC,4BAA4B,CACjEwF,aAAa,EACbjB,KAAK,CAACtC,UACP,CAAC;IACF,CAAE,CAAC;IACHe,qBAAqB,CAAEqF,MAAM,EAAED,iBAAiB,EAAE,IAAK,CAAC;IACxD,MAAM/G,UAAU,GAAGwH,YAAY,GAC5BhK,EAAE,CAAE,+CAAgD,CAAC,GACrDA,EAAE,CAAE,mDAAoD,CAAC;IAC5DqE,mBAAmB,CAAE7B,UAAU,EAAE;MAChCmD,EAAE,EAAE,iCAAiC;MACrC9C,IAAI,EAAE;IACP,CAAE,CAAC;EACJ;EAEA,SAASoH,gBAAgBA,CAAEC,WAAW,EAAG;IACxC/G,aAAa,CAAE;MAAEa,QAAQ,EAAEkG;IAAY,CAAE,CAAC;IAC1C,MAAMX,iBAAiB,GAAG,CAAC,CAAC;IAC5B,MAAMC,MAAM,GAAG,EAAE;IACjBjF,QAAQ,CAAEjB,QAAS,CAAC,CAAC8B,WAAW,CAACc,OAAO,CAAIR,KAAK,IAAM;MACtD8D,MAAM,CAACC,IAAI,CAAE/D,KAAK,CAACpC,QAAS,CAAC;MAC7B,MAAM1C,KAAK,GAAG8E,KAAK,CAACtC,UAAU,CAACuC,EAAE,GAC9BK,SAAS,CAACS,IAAI,CAAE,CAAE;QAAEd;MAAG,CAAC,KAAMA,EAAE,KAAKD,KAAK,CAACtC,UAAU,CAACuC,EAAG,CAAC,GAC1D,IAAI;MACP4D,iBAAiB,CAAE7D,KAAK,CAACpC,QAAQ,CAAE,GAAGlC,sBAAsB,CAC3DR,KAAK,EACLsJ,WACD,CAAC;IACF,CAAE,CAAC;IACH/F,qBAAqB,CAAEqF,MAAM,EAAED,iBAAiB,EAAE,IAAK,CAAC;IACxD,MAAMY,SAAS,GAAG5D,gBAAgB,CAACE,IAAI,CACpC2D,IAAI,IAAMA,IAAI,CAAC7H,KAAK,KAAK2H,WAC5B,CAAC;IAED7F,mBAAmB,CAClBnE,OAAO,EACN;IACAF,EAAE,CAAE,wCAAyC,CAAC,EAC9CmK,SAAS,CAAC7H,KACX,CAAC,EACD;MACCqD,EAAE,EAAE,6BAA6B;MACjC9C,IAAI,EAAE;IACP,CACD,CAAC;EACF;EAEA/C,SAAS,CAAE,MAAM;IAChB;IACA,IAAK,CAAEiE,MAAM,EAAG;MACfE,uCAAuC,CAAC,CAAC;MACzCd,aAAa,CAAE;QACdY,MAAM,EACLsG,MAAM,EAAEC,EAAE,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,YAAY,EAAEjK,IAAI,IACrDe;MACF,CAAE,CAAC;IACJ;EACD,CAAC,EAAE,CAAEuC,MAAM,CAAG,CAAC;EAEf,MAAM4G,SAAS,GAAG,CAAC,CAAEnF,MAAM,CAACH,MAAM;EAClC,MAAMuF,WAAW,GAAGD,SAAS,IAAInF,MAAM,CAAC+B,IAAI,CAAI3G,KAAK,IAAM,CAAC,CAAEA,KAAK,CAAC+E,EAAG,CAAC;EACxE,MAAMkF,eAAe,GAAGrF,MAAM,CAAC+B,IAAI,CAAIqB,GAAG,IACzC,CAAE/I,QAAQ,CAAC8C,QAAQ,GAChB,CAAEiG,GAAG,CAACjD,EAAE,IAAIiD,GAAG,CAAChD,GAAG,EAAE6B,OAAO,CAAE,OAAQ,CAAC,KAAK,CAAC,GAC7CmB,GAAG,CAAChD,GAAG,EAAE6B,OAAO,CAAE,OAAQ,CAAC,KAAK,CACpC,CAAC;;EAED;EACA,MAAMqD,qBAAqB,GAAGjL,QAAQ,CAAC+E,MAAM,CAAE;IAC9CmG,GAAG,EAAE;MACJC,YAAY,EAAE,KAAK;MACnBC,mBAAmB,EAAEJ,eAAe;MACpCtI,KAAK,EAAE,CAAC;IACT,CAAC;IACD2I,MAAM,EAAE;MACPF,YAAY,EAAEJ,WAAW;MACzBO,UAAU,EAAER,SAAS;MACrBM,mBAAmB,EAChBN,SAAS,IAAI,CAAEpH,UAAU,IAAMsH,eAAe;MACjDtI,KAAK,EAAEqI,WAAW,GAAGpF,MAAM,GAAG,CAAC,CAAC;MAChC4F,mBAAmB,EAClB,CAAET,SAAS,IAAIpH,UAAU,IAAImB,oBAAoB;MAClDhB;IACD;EACD,CAAE,CAAC;EACH,MAAM2H,gBAAgB,gBACrBvJ,IAAA,CAACvC,gBAAgB;IAChB+L,YAAY,EAAG,KAAO;IACtBjJ,IAAI,EAAGtB,UAAY;IACnBwK,MAAM,EAAG;MACRC,KAAK,EAAExL,EAAE,CAAE,SAAU,CAAC;MACtByL,YAAY,EAAE/I;IACf,CAAG;IACHgJ,QAAQ,EAAG/D,YAAc;IACzBgE,MAAM,EAAC,SAAS;IAChBC,YAAY,EAAGnJ,mBAAqB;IACpCoJ,QAAQ;IACRC,OAAO,EAAG1C,aAAe;IAAA,GACpB0B;EAAqB,CAC1B,CACD;EAED,MAAMiB,UAAU,GAAGtM,aAAa,CAAE;IACjC4D,SAAS,EAAE1E,IAAI,CAAE0E,SAAS,EAAE,mBAAoB;EACjD,CAAE,CAAC;EAEH,MAAM2I,qBAAqB,GAAGnM,QAAQ,CAAC8C,QAAQ,IAAI;IAClDsJ,gBAAgB,EAAE,CAAC;IACnBC,cAAc,EAAE;EACjB,CAAC;EAED,MAAMC,gBAAgB,GAAGzM,mBAAmB,CAAEqM,UAAU,EAAE;IACzDK,YAAY,EAAEtJ,aAAa;IAC3BuJ,YAAY,EAAE,IAAI;IAClBC,WAAW,EAAE,YAAY;IACzBC,cAAc,EAAE,KAAK;IACrB,GAAGP;EACJ,CAAE,CAAC;EAEH,IAAK,CAAErB,SAAS,EAAG;IAClB,oBACC3I,KAAA,CAAC3B,IAAI;MAAA,GAAM8L,gBAAgB;MAAAK,QAAA,GACxBL,gBAAgB,CAACK,QAAQ,EACzBnB,gBAAgB;IAAA,CACb,CAAC;EAET;EAEA,MAAMoB,SAAS,GAAG1I,MAAM,IAAIA,MAAM,KAAK,MAAM;EAE7C,oBACC/B,KAAA,CAAAE,SAAA;IAAAsK,QAAA,gBACC1K,IAAA,CAACtC,iBAAiB;MAAAgN,QAAA,eACjBxK,KAAA,CAACnD,SAAS;QAAC2M,KAAK,EAAGxL,EAAE,CAAE,UAAW,CAAG;QAAAwM,QAAA,GAClChH,MAAM,CAACH,MAAM,GAAG,CAAC,iBAClBvD,IAAA,CAAC9C,YAAY;UACZ0N,uBAAuB;UACvBpK,KAAK,EAAGtC,EAAE,CAAE,SAAU,CAAG;UACzBuC,KAAK,EACJoB,OAAO,GACJA,OAAO,GACP3C,oBAAoB,CAAEwE,MAAM,CAACH,MAAO,CACvC;UACDsH,QAAQ,EAAG/C,gBAAkB;UAC7BgD,GAAG,EAAG,CAAG;UACTC,GAAG,EAAGC,IAAI,CAACF,GAAG,CAAEzK,WAAW,EAAEqD,MAAM,CAACH,MAAO,CAAG;UAAA,GACzCzC,kCAAkC;UACvCmK,QAAQ;UACRC,qBAAqB;QAAA,CACrB,CACD,EACCzG,gBAAgB,EAAElB,MAAM,GAAG,CAAC,iBAC7BvD,IAAA,CAAChD,aAAa;UACb4N,uBAAuB;UACvBpK,KAAK,EAAGtC,EAAE,CAAE,YAAa,CAAG;UAC5BiN,IAAI,EAAGjN,EAAE,CACR,uCACD,CAAG;UACHuC,KAAK,EAAGyB,QAAU;UAClBkJ,OAAO,EAAG3G,gBAAkB;UAC5BoG,QAAQ,EAAG1C,gBAAkB;UAC7BkD,gBAAgB;UAChB/C,IAAI,EAAC;QAAkB,CACvB,CACD,EACCvK,QAAQ,CAAC8C,QAAQ,gBAClBb,IAAA,CAAChD,aAAa;UACb4N,uBAAuB;UACvBpK,KAAK,EAAGtC,EAAE,CAAE,MAAO,CAAG;UACtBuC,KAAK,EAAGwB,MAAQ;UAChB4I,QAAQ,EAAGrD,SAAW;UACtB4D,OAAO,EAAG9K,WAAa;UACvB+K,gBAAgB;UAChB/C,IAAI,EAAC;QAAkB,CACvB,CAAC,GACC,IAAI,eACRtI,IAAA,CAAC/C,aAAa;UACb2N,uBAAuB;UACvBpK,KAAK,EAAGtC,EAAE,CAAE,oBAAqB,CAAG;UACpCoN,OAAO,EAAG,CAAC,CAAExJ,SAAW;UACxB+I,QAAQ,EAAG9C;QAAiB,CAC5B,CAAC,eACF/H,IAAA,CAAC/C,aAAa;UACb2N,uBAAuB;UACvBpK,KAAK,EAAGtC,EAAE,CAAE,iBAAkB,CAAG;UACjCoN,OAAO,EAAG,CAAC,CAAEvJ,WAAa;UAC1B8I,QAAQ,EAAG7C;QAAmB,CAC9B,CAAC,EACA2C,SAAS,iBACV3K,IAAA,CAAC/C,aAAa;UACb2N,uBAAuB;UACvBpK,KAAK,EAAGtC,EAAE,CAAE,wBAAyB,CAAG;UACxCoN,OAAO,EAAGtJ,UAAU,KAAK,QAAU;UACnC6I,QAAQ,EAAG5C;QAAoB,CAC/B,CACD,EACClK,QAAQ,CAACwN,KAAK,IAAI,CAAE9G,gBAAgB,IAAIqE,WAAW,iBACpD5I,KAAA,CAACpD,WAAW;UACXyE,SAAS,EAAC,qBAAqB;UAC/BqJ,uBAAuB;UAAAF,QAAA,gBAEvB1K,IAAA,CAAClD,WAAW,CAAC0O,WAAW;YAAAd,QAAA,EACrBxM,EAAE,CAAE,YAAa;UAAC,CACI,CAAC,eAC1BgC,KAAA,CAAC3B,IAAI;YAACgD,SAAS,EAAC,8BAA8B;YAAAmJ,QAAA,gBAC7C1K,IAAA,CAAC7C,OAAO,IAAE,CAAC,EACTe,EAAE,CAAE,kBAAmB,CAAC;UAAA,CACrB,CAAC;QAAA,CACK,CACb;MAAA,CACS;IAAC,CACM,CAAC,EAClBH,QAAQ,CAACwN,KAAK,gBACfvL,IAAA,CAACnC,aAAa;MAAC4N,KAAK,EAAC,OAAO;MAAAf,QAAA,eAC3B1K,IAAA,CAAC1C,mBAAmB;QACnBiD,IAAI,EAAG3B,QAAU;QACjB4B,KAAK,EAAGtC,EAAE,CAAE,MAAO,CAAG;QAAAwM,QAAA,EAEpBA,CAAE;UAAEgB;QAAQ,CAAC,kBACd1L,IAAA,CAAC5C,SAAS;UAAAsN,QAAA,EACPpK,WAAW,CAACqD,GAAG,CAAIgI,QAAQ,IAAM;YAClC,MAAMC,gBAAgB,GACrB3J,MAAM,KAAK0J,QAAQ,CAAClL,KAAK;YAC1B,oBACCT,IAAA,CAAC3C,QAAQ;cAERoE,UAAU,EAAGmK,gBAAkB;cAC/BrK,SAAS,EAAG1E,IAAI,CACf,qCAAqC,EACrC;gBACC,WAAW,EACV+O;cACF,CACD,CAAG;cACHC,YAAY,EAAC,MAAM;cACnBtL,IAAI,EAAGoL,QAAQ,CAACpL,IAAM;cACtBuL,OAAO,EAAGA,CAAA,KAAM;gBACftE,SAAS,CAAEmE,QAAQ,CAAClL,KAAM,CAAC;gBAC3BiL,OAAO,CAAC,CAAC;cACV,CAAG;cACHK,IAAI,EAAC,eAAe;cAAArB,QAAA,EAElBiB,QAAQ,CAACnL;YAAK,GAjBVmL,QAAQ,CAAClL,KAkBN,CAAC;UAEb,CAAE;QAAC,CACO;MACX,CACmB;IAAC,CACR,CAAC,GACb,IAAI,EACN1C,QAAQ,CAACwN,KAAK,iBACfrL,KAAA,CAAAE,SAAA;MAAAsK,QAAA,GACG,CAAE7H,qBAAqB,iBACxB7C,IAAA,CAACnC,aAAa;QAAC4N,KAAK,EAAC,OAAO;QAAAf,QAAA,eAC3B1K,IAAA,CAAClC,gBAAgB;UAChBgM,YAAY,EAAGnJ,mBAAqB;UACpCkJ,MAAM,EAAC,SAAS;UAChBL,YAAY,EAAG,KAAO;UACtBI,QAAQ,EAAG/D,YAAc;UACzB5E,IAAI,EAAG/C,EAAE,CAAE,KAAM,CAAG;UACpB6L,QAAQ;UACRiC,QAAQ,EAAGtI,MAAM,CACf8C,MAAM,CAAI1H,KAAK,IAAMA,KAAK,CAAC+E,EAAG,CAAC,CAC/BF,GAAG,CAAI7E,KAAK,IAAMA,KAAK,CAAC+E,EAAG,CAAG;UAChCqF,YAAY,EAAGJ;QAAa,CAC5B;MAAC,CACY,CACf,eACD9I,IAAA,CAACF,SAAS;QACTmM,QAAQ,EAAG3K,UAAU,CAAC4K,KAAK,EAAEC,OAAO,EAAEF,QAAU;QAChDzK,QAAQ,EAAGA;MAAU,CACrB,CAAC;IAAA,CACD,CACF,eACDxB,IAAA,CAACT,OAAO;MAAA,GACF6B,KAAK;MACVO,eAAe,EAAGA,eAAiB;MACnC+B,MAAM,EAAGA,MAAQ;MACjB6F,gBAAgB,EACf,CAAEV,SAAS,IAAI9K,QAAQ,CAAC8C,QAAQ,GAC7B0I,gBAAgB,GAChB/E,SACH;MACDyF,UAAU,EAAGI,gBAAkB;MAC/B3I,iBAAiB,EAAGA,iBAAmB;MACvCmB,qBAAqB,EAAGA;IAAuB,CAC/C,CAAC;EAAA,CACD,CAAC;AAEL","ignoreList":[]}
@@ -18,6 +18,7 @@ import { useState, useEffect } from '@wordpress/element';
18
18
  import { mediaUploadSync } from '@wordpress/react-native-bridge';
19
19
  import { WIDE_ALIGNMENTS } from '@wordpress/components';
20
20
  import { useResizeObserver } from '@wordpress/compose';
21
+ import { withViewportMatch } from '@wordpress/viewport';
21
22
  import { jsx as _jsx } from "react/jsx-runtime";
22
23
  import { jsxs as _jsxs } from "react/jsx-runtime";
23
24
  const TILE_SPACING = 8;
@@ -96,5 +97,7 @@ export const Gallery = props => {
96
97
  })]
97
98
  });
98
99
  };
99
- export default Gallery;
100
+ export default withViewportMatch({
101
+ isNarrow: '< small'
102
+ })(Gallery);
100
103
  //# sourceMappingURL=gallery.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["View","defaultColumnsNumber","styles","__","sprintf","BlockCaption","RichText","useInnerBlocksProps","useState","useEffect","mediaUploadSync","WIDE_ALIGNMENTS","useResizeObserver","jsx","_jsx","jsxs","_jsxs","TILE_SPACING","MAX_DISPLAYED_COLUMNS","MAX_DISPLAYED_COLUMNS_NARROW","Gallery","props","isCaptionSelected","setIsCaptionSelected","resizeObserver","sizes","maxWidth","setMaxWidth","mediaPlaceholder","attributes","images","isNarrow","onBlur","insertBlocksAfter","clientId","width","align","columns","length","displayedColumns","Math","min","innerBlocksProps","contentResizeMode","orientation","renderAppender","numColumns","marginHorizontal","marginVertical","layout","type","alignments","gridProperties","parentWidth","focusGalleryCaption","isFullWidth","full","style","fullWidth","children","galleryAppender","isSelected","accessible","accessibilityLabelCreator","caption","isEmpty","onFocus"],"sources":["@wordpress/block-library/src/gallery/gallery.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\n\n/**\n * Internal dependencies\n */\nimport { defaultColumnsNumber } from './shared';\nimport styles from './gallery-styles.scss';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tBlockCaption,\n\tRichText,\n\tuseInnerBlocksProps,\n} from '@wordpress/block-editor';\nimport { useState, useEffect } from '@wordpress/element';\nimport { mediaUploadSync } from '@wordpress/react-native-bridge';\nimport { WIDE_ALIGNMENTS } from '@wordpress/components';\nimport { useResizeObserver } from '@wordpress/compose';\n\nconst TILE_SPACING = 8;\n\n// we must limit displayed columns since readable content max-width is 580px\nconst MAX_DISPLAYED_COLUMNS = 4;\nconst MAX_DISPLAYED_COLUMNS_NARROW = 2;\n\nexport const Gallery = ( props ) => {\n\tconst [ isCaptionSelected, setIsCaptionSelected ] = useState( false );\n\tconst [ resizeObserver, sizes ] = useResizeObserver();\n\tconst [ maxWidth, setMaxWidth ] = useState( 0 );\n\tuseEffect( mediaUploadSync, [] );\n\n\tconst {\n\t\tmediaPlaceholder,\n\t\tattributes,\n\t\timages,\n\t\tisNarrow,\n\t\tonBlur,\n\t\tinsertBlocksAfter,\n\t\tclientId,\n\t} = props;\n\n\tuseEffect( () => {\n\t\tconst { width } = sizes || {};\n\t\tif ( width ) {\n\t\t\tsetMaxWidth( width );\n\t\t}\n\t}, [ sizes ] );\n\n\tconst { align, columns = defaultColumnsNumber( images.length ) } =\n\t\tattributes;\n\n\tconst displayedColumns = Math.min(\n\t\tcolumns,\n\t\tisNarrow ? MAX_DISPLAYED_COLUMNS_NARROW : MAX_DISPLAYED_COLUMNS\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{},\n\t\t{\n\t\t\tcontentResizeMode: 'stretch',\n\t\t\torientation: 'horizontal',\n\t\t\trenderAppender: false,\n\t\t\tnumColumns: displayedColumns,\n\t\t\tmarginHorizontal: TILE_SPACING,\n\t\t\tmarginVertical: TILE_SPACING,\n\t\t\tlayout: { type: 'default', alignments: [] },\n\t\t\tgridProperties: {\n\t\t\t\tnumColumns: displayedColumns,\n\t\t\t},\n\t\t\tparentWidth: maxWidth + 2 * TILE_SPACING,\n\t\t}\n\t);\n\n\tconst focusGalleryCaption = () => {\n\t\tif ( ! isCaptionSelected ) {\n\t\t\tsetIsCaptionSelected( true );\n\t\t}\n\t};\n\n\tconst isFullWidth = align === WIDE_ALIGNMENTS.alignments.full;\n\n\treturn (\n\t\t<View style={ isFullWidth && styles.fullWidth }>\n\t\t\t{ resizeObserver }\n\t\t\t<View { ...innerBlocksProps } />\n\t\t\t<View\n\t\t\t\tstyle={ [\n\t\t\t\t\tisFullWidth && styles.fullWidth,\n\t\t\t\t\tstyles.galleryAppender,\n\t\t\t\t] }\n\t\t\t>\n\t\t\t\t{ mediaPlaceholder }\n\t\t\t</View>\n\t\t\t<BlockCaption\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisSelected={ isCaptionSelected }\n\t\t\t\taccessible\n\t\t\t\taccessibilityLabelCreator={ ( caption ) =>\n\t\t\t\t\tRichText.isEmpty( caption )\n\t\t\t\t\t\t? /* translators: accessibility text. Empty gallery caption. */\n\n\t\t\t\t\t\t 'Gallery caption. Empty'\n\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t/* translators: accessibility text. %s: gallery caption. */\n\t\t\t\t\t\t\t\t__( 'Gallery caption. %s' ),\n\t\t\t\t\t\t\t\tcaption\n\t\t\t\t\t\t )\n\t\t\t\t}\n\t\t\t\tonFocus={ focusGalleryCaption }\n\t\t\t\tonBlur={ onBlur } // Always assign onBlur as props.\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t/>\n\t\t</View>\n\t);\n};\n\nexport default Gallery;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["View","defaultColumnsNumber","styles","__","sprintf","BlockCaption","RichText","useInnerBlocksProps","useState","useEffect","mediaUploadSync","WIDE_ALIGNMENTS","useResizeObserver","withViewportMatch","jsx","_jsx","jsxs","_jsxs","TILE_SPACING","MAX_DISPLAYED_COLUMNS","MAX_DISPLAYED_COLUMNS_NARROW","Gallery","props","isCaptionSelected","setIsCaptionSelected","resizeObserver","sizes","maxWidth","setMaxWidth","mediaPlaceholder","attributes","images","isNarrow","onBlur","insertBlocksAfter","clientId","width","align","columns","length","displayedColumns","Math","min","innerBlocksProps","contentResizeMode","orientation","renderAppender","numColumns","marginHorizontal","marginVertical","layout","type","alignments","gridProperties","parentWidth","focusGalleryCaption","isFullWidth","full","style","fullWidth","children","galleryAppender","isSelected","accessible","accessibilityLabelCreator","caption","isEmpty","onFocus"],"sources":["@wordpress/block-library/src/gallery/gallery.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\n\n/**\n * Internal dependencies\n */\nimport { defaultColumnsNumber } from './shared';\nimport styles from './gallery-styles.scss';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tBlockCaption,\n\tRichText,\n\tuseInnerBlocksProps,\n} from '@wordpress/block-editor';\nimport { useState, useEffect } from '@wordpress/element';\nimport { mediaUploadSync } from '@wordpress/react-native-bridge';\nimport { WIDE_ALIGNMENTS } from '@wordpress/components';\nimport { useResizeObserver } from '@wordpress/compose';\nimport { withViewportMatch } from '@wordpress/viewport';\n\nconst TILE_SPACING = 8;\n\n// we must limit displayed columns since readable content max-width is 580px\nconst MAX_DISPLAYED_COLUMNS = 4;\nconst MAX_DISPLAYED_COLUMNS_NARROW = 2;\n\nexport const Gallery = ( props ) => {\n\tconst [ isCaptionSelected, setIsCaptionSelected ] = useState( false );\n\tconst [ resizeObserver, sizes ] = useResizeObserver();\n\tconst [ maxWidth, setMaxWidth ] = useState( 0 );\n\tuseEffect( mediaUploadSync, [] );\n\n\tconst {\n\t\tmediaPlaceholder,\n\t\tattributes,\n\t\timages,\n\t\tisNarrow,\n\t\tonBlur,\n\t\tinsertBlocksAfter,\n\t\tclientId,\n\t} = props;\n\n\tuseEffect( () => {\n\t\tconst { width } = sizes || {};\n\t\tif ( width ) {\n\t\t\tsetMaxWidth( width );\n\t\t}\n\t}, [ sizes ] );\n\n\tconst { align, columns = defaultColumnsNumber( images.length ) } =\n\t\tattributes;\n\n\tconst displayedColumns = Math.min(\n\t\tcolumns,\n\t\tisNarrow ? MAX_DISPLAYED_COLUMNS_NARROW : MAX_DISPLAYED_COLUMNS\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{},\n\t\t{\n\t\t\tcontentResizeMode: 'stretch',\n\t\t\torientation: 'horizontal',\n\t\t\trenderAppender: false,\n\t\t\tnumColumns: displayedColumns,\n\t\t\tmarginHorizontal: TILE_SPACING,\n\t\t\tmarginVertical: TILE_SPACING,\n\t\t\tlayout: { type: 'default', alignments: [] },\n\t\t\tgridProperties: {\n\t\t\t\tnumColumns: displayedColumns,\n\t\t\t},\n\t\t\tparentWidth: maxWidth + 2 * TILE_SPACING,\n\t\t}\n\t);\n\n\tconst focusGalleryCaption = () => {\n\t\tif ( ! isCaptionSelected ) {\n\t\t\tsetIsCaptionSelected( true );\n\t\t}\n\t};\n\n\tconst isFullWidth = align === WIDE_ALIGNMENTS.alignments.full;\n\n\treturn (\n\t\t<View style={ isFullWidth && styles.fullWidth }>\n\t\t\t{ resizeObserver }\n\t\t\t<View { ...innerBlocksProps } />\n\t\t\t<View\n\t\t\t\tstyle={ [\n\t\t\t\t\tisFullWidth && styles.fullWidth,\n\t\t\t\t\tstyles.galleryAppender,\n\t\t\t\t] }\n\t\t\t>\n\t\t\t\t{ mediaPlaceholder }\n\t\t\t</View>\n\t\t\t<BlockCaption\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisSelected={ isCaptionSelected }\n\t\t\t\taccessible\n\t\t\t\taccessibilityLabelCreator={ ( caption ) =>\n\t\t\t\t\tRichText.isEmpty( caption )\n\t\t\t\t\t\t? /* translators: accessibility text. Empty gallery caption. */\n\n\t\t\t\t\t\t 'Gallery caption. Empty'\n\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t/* translators: accessibility text. %s: gallery caption. */\n\t\t\t\t\t\t\t\t__( 'Gallery caption. %s' ),\n\t\t\t\t\t\t\t\tcaption\n\t\t\t\t\t\t )\n\t\t\t\t}\n\t\t\t\tonFocus={ focusGalleryCaption }\n\t\t\t\tonBlur={ onBlur } // Always assign onBlur as props.\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t/>\n\t\t</View>\n\t);\n};\n\nexport default withViewportMatch( { isNarrow: '< small' } )( Gallery );\n"],"mappings":"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","ignoreList":[]}
@@ -1,15 +1,7 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import { __experimentalGetGapCSSValue as getGapCSSValue, privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
5
-
6
- /**
7
- * Internal dependencies
8
- */
9
- import { unlock } from '../lock-unlock';
10
- const {
11
- useStyleOverride
12
- } = unlock(blockEditorPrivateApis);
4
+ import { __experimentalGetGapCSSValue as getGapCSSValue, useStyleOverride } from '@wordpress/block-editor';
13
5
  export default function GapStyles({
14
6
  blockGap,
15
7
  clientId
@@ -1 +1 @@
1
- {"version":3,"names":["__experimentalGetGapCSSValue","getGapCSSValue","privateApis","blockEditorPrivateApis","unlock","useStyleOverride","GapStyles","blockGap","clientId","fallbackValue","gapValue","column","row","top","left","gap","css"],"sources":["@wordpress/block-library/src/gallery/gap-styles.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalGetGapCSSValue as getGapCSSValue,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\n\nconst { useStyleOverride } = unlock( blockEditorPrivateApis );\n\nexport default function GapStyles( { blockGap, clientId } ) {\n\t// --gallery-block--gutter-size is deprecated. --wp--style--gallery-gap-default should be used by themes that want to set a default\n\t// gap on the gallery.\n\tconst fallbackValue = `var( --wp--style--gallery-gap-default, var( --gallery-block--gutter-size, var( --wp--style--block-gap, 0.5em ) ) )`;\n\tlet gapValue = fallbackValue;\n\tlet column = fallbackValue;\n\tlet row;\n\n\t// Check for the possibility of split block gap values. See: https://github.com/WordPress/gutenberg/pull/37736\n\tif ( !! blockGap ) {\n\t\trow =\n\t\t\ttypeof blockGap === 'string'\n\t\t\t\t? getGapCSSValue( blockGap )\n\t\t\t\t: getGapCSSValue( blockGap?.top ) || fallbackValue;\n\t\tcolumn =\n\t\t\ttypeof blockGap === 'string'\n\t\t\t\t? getGapCSSValue( blockGap )\n\t\t\t\t: getGapCSSValue( blockGap?.left ) || fallbackValue;\n\t\tgapValue = row === column ? row : `${ row } ${ column }`;\n\t}\n\n\t// The unstable gallery gap calculation requires a real value (such as `0px`) and not `0`.\n\tconst gap = `#block-${ clientId } {\n\t\t--wp--style--unstable-gallery-gap: ${ column === '0' ? '0px' : column };\n\t\tgap: ${ gapValue }\n\t}`;\n\n\tuseStyleOverride( { css: gap } );\n\n\treturn null;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,4BAA4B,IAAIC,cAAc,EAC9CC,WAAW,IAAIC,sBAAsB,QAC/B,yBAAyB;;AAEhC;AACA;AACA;AACA,SAASC,MAAM,QAAQ,gBAAgB;AAEvC,MAAM;EAAEC;AAAiB,CAAC,GAAGD,MAAM,CAAED,sBAAuB,CAAC;AAE7D,eAAe,SAASG,SAASA,CAAE;EAAEC,QAAQ;EAAEC;AAAS,CAAC,EAAG;EAC3D;EACA;EACA,MAAMC,aAAa,GAAI,oHAAmH;EAC1I,IAAIC,QAAQ,GAAGD,aAAa;EAC5B,IAAIE,MAAM,GAAGF,aAAa;EAC1B,IAAIG,GAAG;;EAEP;EACA,IAAK,CAAC,CAAEL,QAAQ,EAAG;IAClBK,GAAG,GACF,OAAOL,QAAQ,KAAK,QAAQ,GACzBN,cAAc,CAAEM,QAAS,CAAC,GAC1BN,cAAc,CAAEM,QAAQ,EAAEM,GAAI,CAAC,IAAIJ,aAAa;IACpDE,MAAM,GACL,OAAOJ,QAAQ,KAAK,QAAQ,GACzBN,cAAc,CAAEM,QAAS,CAAC,GAC1BN,cAAc,CAAEM,QAAQ,EAAEO,IAAK,CAAC,IAAIL,aAAa;IACrDC,QAAQ,GAAGE,GAAG,KAAKD,MAAM,GAAGC,GAAG,GAAI,GAAGA,GAAK,IAAID,MAAQ,EAAC;EACzD;;EAEA;EACA,MAAMI,GAAG,GAAI,UAAUP,QAAU;AAClC,uCAAwCG,MAAM,KAAK,GAAG,GAAG,KAAK,GAAGA,MAAQ;AACzE,SAAUD,QAAU;AACpB,GAAG;EAEFL,gBAAgB,CAAE;IAAEW,GAAG,EAAED;EAAI,CAAE,CAAC;EAEhC,OAAO,IAAI;AACZ","ignoreList":[]}
1
+ {"version":3,"names":["__experimentalGetGapCSSValue","getGapCSSValue","useStyleOverride","GapStyles","blockGap","clientId","fallbackValue","gapValue","column","row","top","left","gap","css"],"sources":["@wordpress/block-library/src/gallery/gap-styles.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalGetGapCSSValue as getGapCSSValue,\n\tuseStyleOverride,\n} from '@wordpress/block-editor';\n\nexport default function GapStyles( { blockGap, clientId } ) {\n\t// --gallery-block--gutter-size is deprecated. --wp--style--gallery-gap-default should be used by themes that want to set a default\n\t// gap on the gallery.\n\tconst fallbackValue = `var( --wp--style--gallery-gap-default, var( --gallery-block--gutter-size, var( --wp--style--block-gap, 0.5em ) ) )`;\n\tlet gapValue = fallbackValue;\n\tlet column = fallbackValue;\n\tlet row;\n\n\t// Check for the possibility of split block gap values. See: https://github.com/WordPress/gutenberg/pull/37736\n\tif ( !! blockGap ) {\n\t\trow =\n\t\t\ttypeof blockGap === 'string'\n\t\t\t\t? getGapCSSValue( blockGap )\n\t\t\t\t: getGapCSSValue( blockGap?.top ) || fallbackValue;\n\t\tcolumn =\n\t\t\ttypeof blockGap === 'string'\n\t\t\t\t? getGapCSSValue( blockGap )\n\t\t\t\t: getGapCSSValue( blockGap?.left ) || fallbackValue;\n\t\tgapValue = row === column ? row : `${ row } ${ column }`;\n\t}\n\n\t// The unstable gallery gap calculation requires a real value (such as `0px`) and not `0`.\n\tconst gap = `#block-${ clientId } {\n\t\t--wp--style--unstable-gallery-gap: ${ column === '0' ? '0px' : column };\n\t\tgap: ${ gapValue }\n\t}`;\n\n\tuseStyleOverride( { css: gap } );\n\n\treturn null;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,4BAA4B,IAAIC,cAAc,EAC9CC,gBAAgB,QACV,yBAAyB;AAEhC,eAAe,SAASC,SAASA,CAAE;EAAEC,QAAQ;EAAEC;AAAS,CAAC,EAAG;EAC3D;EACA;EACA,MAAMC,aAAa,GAAI,oHAAmH;EAC1I,IAAIC,QAAQ,GAAGD,aAAa;EAC5B,IAAIE,MAAM,GAAGF,aAAa;EAC1B,IAAIG,GAAG;;EAEP;EACA,IAAK,CAAC,CAAEL,QAAQ,EAAG;IAClBK,GAAG,GACF,OAAOL,QAAQ,KAAK,QAAQ,GACzBH,cAAc,CAAEG,QAAS,CAAC,GAC1BH,cAAc,CAAEG,QAAQ,EAAEM,GAAI,CAAC,IAAIJ,aAAa;IACpDE,MAAM,GACL,OAAOJ,QAAQ,KAAK,QAAQ,GACzBH,cAAc,CAAEG,QAAS,CAAC,GAC1BH,cAAc,CAAEG,QAAQ,EAAEO,IAAK,CAAC,IAAIL,aAAa;IACrDC,QAAQ,GAAGE,GAAG,KAAKD,MAAM,GAAGC,GAAG,GAAI,GAAGA,GAAK,IAAID,MAAQ,EAAC;EACzD;;EAEA;EACA,MAAMI,GAAG,GAAI,UAAUP,QAAU;AAClC,uCAAwCG,MAAM,KAAK,GAAG,GAAG,KAAK,GAAGA,MAAQ;AACzE,SAAUD,QAAU;AACpB,GAAG;EAEFL,gBAAgB,CAAE;IAAEW,GAAG,EAAED;EAAI,CAAE,CAAC;EAEhC,OAAO,IAAI;AACZ","ignoreList":[]}
@@ -4,10 +4,10 @@
4
4
  import { useMemo } from '@wordpress/element';
5
5
 
6
6
  /**
7
- * Calculates the image sizes that are avaible for the current gallery images in order to
7
+ * Calculates the image sizes that are available for the current gallery images in order to
8
8
  * populate the 'Resolution' selector.
9
9
  *
10
- * @param {Array} images Basic image block data taken from current gallery innerBlock
10
+ * @param {Array} images Basic image block data taken from current gallery innerBlock.
11
11
  * @param {boolean} isSelected Is the block currently selected in the editor.
12
12
  * @param {Function} getSettings Block editor store selector.
13
13
  *
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","useImageSizes","images","isSelected","getSettings","getImageSizing","length","imageSizes","resizedImages","reduce","currentResizedImages","img","id","sizes","currentSizes","size","defaultUrl","slug","url","mediaDetailsUrl","media_details","source_url","parseInt","resizedImageSizes","Object","values","filter","some","map","name","value","label"],"sources":["@wordpress/block-library/src/gallery/use-image-sizes.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Calculates the image sizes that are avaible for the current gallery images in order to\n * populate the 'Resolution' selector.\n *\n * @param {Array} images Basic image block data taken from current gallery innerBlock\n * @param {boolean} isSelected Is the block currently selected in the editor.\n * @param {Function} getSettings Block editor store selector.\n *\n * @return {Array} An array of image size options.\n */\nexport default function useImageSizes( images, isSelected, getSettings ) {\n\treturn useMemo( () => getImageSizing(), [ images, isSelected ] );\n\n\tfunction getImageSizing() {\n\t\tif ( ! images || images.length === 0 ) {\n\t\t\treturn;\n\t\t}\n\t\tconst { imageSizes } = getSettings();\n\t\tlet resizedImages = {};\n\n\t\tif ( isSelected ) {\n\t\t\tresizedImages = images.reduce( ( currentResizedImages, img ) => {\n\t\t\t\tif ( ! img.id ) {\n\t\t\t\t\treturn currentResizedImages;\n\t\t\t\t}\n\n\t\t\t\tconst sizes = imageSizes.reduce( ( currentSizes, size ) => {\n\t\t\t\t\tconst defaultUrl = img.sizes?.[ size.slug ]?.url;\n\t\t\t\t\tconst mediaDetailsUrl =\n\t\t\t\t\t\timg.media_details?.sizes?.[ size.slug ]?.source_url;\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...currentSizes,\n\t\t\t\t\t\t[ size.slug ]: defaultUrl || mediaDetailsUrl,\n\t\t\t\t\t};\n\t\t\t\t}, {} );\n\t\t\t\treturn {\n\t\t\t\t\t...currentResizedImages,\n\t\t\t\t\t[ parseInt( img.id, 10 ) ]: sizes,\n\t\t\t\t};\n\t\t\t}, {} );\n\t\t}\n\t\tconst resizedImageSizes = Object.values( resizedImages );\n\t\treturn imageSizes\n\t\t\t.filter( ( { slug } ) =>\n\t\t\t\tresizedImageSizes.some( ( sizes ) => sizes[ slug ] )\n\t\t\t)\n\t\t\t.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\t}\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAO,QAAQ,oBAAoB;;AAE5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,aAAaA,CAAEC,MAAM,EAAEC,UAAU,EAAEC,WAAW,EAAG;EACxE,OAAOJ,OAAO,CAAE,MAAMK,cAAc,CAAC,CAAC,EAAE,CAAEH,MAAM,EAAEC,UAAU,CAAG,CAAC;EAEhE,SAASE,cAAcA,CAAA,EAAG;IACzB,IAAK,CAAEH,MAAM,IAAIA,MAAM,CAACI,MAAM,KAAK,CAAC,EAAG;MACtC;IACD;IACA,MAAM;MAAEC;IAAW,CAAC,GAAGH,WAAW,CAAC,CAAC;IACpC,IAAII,aAAa,GAAG,CAAC,CAAC;IAEtB,IAAKL,UAAU,EAAG;MACjBK,aAAa,GAAGN,MAAM,CAACO,MAAM,CAAE,CAAEC,oBAAoB,EAAEC,GAAG,KAAM;QAC/D,IAAK,CAAEA,GAAG,CAACC,EAAE,EAAG;UACf,OAAOF,oBAAoB;QAC5B;QAEA,MAAMG,KAAK,GAAGN,UAAU,CAACE,MAAM,CAAE,CAAEK,YAAY,EAAEC,IAAI,KAAM;UAC1D,MAAMC,UAAU,GAAGL,GAAG,CAACE,KAAK,GAAIE,IAAI,CAACE,IAAI,CAAE,EAAEC,GAAG;UAChD,MAAMC,eAAe,GACpBR,GAAG,CAACS,aAAa,EAAEP,KAAK,GAAIE,IAAI,CAACE,IAAI,CAAE,EAAEI,UAAU;UACpD,OAAO;YACN,GAAGP,YAAY;YACf,CAAEC,IAAI,CAACE,IAAI,GAAID,UAAU,IAAIG;UAC9B,CAAC;QACF,CAAC,EAAE,CAAC,CAAE,CAAC;QACP,OAAO;UACN,GAAGT,oBAAoB;UACvB,CAAEY,QAAQ,CAAEX,GAAG,CAACC,EAAE,EAAE,EAAG,CAAC,GAAIC;QAC7B,CAAC;MACF,CAAC,EAAE,CAAC,CAAE,CAAC;IACR;IACA,MAAMU,iBAAiB,GAAGC,MAAM,CAACC,MAAM,CAAEjB,aAAc,CAAC;IACxD,OAAOD,UAAU,CACfmB,MAAM,CAAE,CAAE;MAAET;IAAK,CAAC,KAClBM,iBAAiB,CAACI,IAAI,CAAId,KAAK,IAAMA,KAAK,CAAEI,IAAI,CAAG,CACpD,CAAC,CACAW,GAAG,CAAE,CAAE;MAAEC,IAAI;MAAEZ;IAAK,CAAC,MAAQ;MAAEa,KAAK,EAAEb,IAAI;MAAEc,KAAK,EAAEF;IAAK,CAAC,CAAG,CAAC;EAChE;AACD","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","useImageSizes","images","isSelected","getSettings","getImageSizing","length","imageSizes","resizedImages","reduce","currentResizedImages","img","id","sizes","currentSizes","size","defaultUrl","slug","url","mediaDetailsUrl","media_details","source_url","parseInt","resizedImageSizes","Object","values","filter","some","map","name","value","label"],"sources":["@wordpress/block-library/src/gallery/use-image-sizes.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Calculates the image sizes that are available for the current gallery images in order to\n * populate the 'Resolution' selector.\n *\n * @param {Array} images Basic image block data taken from current gallery innerBlock.\n * @param {boolean} isSelected Is the block currently selected in the editor.\n * @param {Function} getSettings Block editor store selector.\n *\n * @return {Array} An array of image size options.\n */\nexport default function useImageSizes( images, isSelected, getSettings ) {\n\treturn useMemo( () => getImageSizing(), [ images, isSelected ] );\n\n\tfunction getImageSizing() {\n\t\tif ( ! images || images.length === 0 ) {\n\t\t\treturn;\n\t\t}\n\t\tconst { imageSizes } = getSettings();\n\t\tlet resizedImages = {};\n\n\t\tif ( isSelected ) {\n\t\t\tresizedImages = images.reduce( ( currentResizedImages, img ) => {\n\t\t\t\tif ( ! img.id ) {\n\t\t\t\t\treturn currentResizedImages;\n\t\t\t\t}\n\n\t\t\t\tconst sizes = imageSizes.reduce( ( currentSizes, size ) => {\n\t\t\t\t\tconst defaultUrl = img.sizes?.[ size.slug ]?.url;\n\t\t\t\t\tconst mediaDetailsUrl =\n\t\t\t\t\t\timg.media_details?.sizes?.[ size.slug ]?.source_url;\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...currentSizes,\n\t\t\t\t\t\t[ size.slug ]: defaultUrl || mediaDetailsUrl,\n\t\t\t\t\t};\n\t\t\t\t}, {} );\n\t\t\t\treturn {\n\t\t\t\t\t...currentResizedImages,\n\t\t\t\t\t[ parseInt( img.id, 10 ) ]: sizes,\n\t\t\t\t};\n\t\t\t}, {} );\n\t\t}\n\t\tconst resizedImageSizes = Object.values( resizedImages );\n\t\treturn imageSizes\n\t\t\t.filter( ( { slug } ) =>\n\t\t\t\tresizedImageSizes.some( ( sizes ) => sizes[ slug ] )\n\t\t\t)\n\t\t\t.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\t}\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAO,QAAQ,oBAAoB;;AAE5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,aAAaA,CAAEC,MAAM,EAAEC,UAAU,EAAEC,WAAW,EAAG;EACxE,OAAOJ,OAAO,CAAE,MAAMK,cAAc,CAAC,CAAC,EAAE,CAAEH,MAAM,EAAEC,UAAU,CAAG,CAAC;EAEhE,SAASE,cAAcA,CAAA,EAAG;IACzB,IAAK,CAAEH,MAAM,IAAIA,MAAM,CAACI,MAAM,KAAK,CAAC,EAAG;MACtC;IACD;IACA,MAAM;MAAEC;IAAW,CAAC,GAAGH,WAAW,CAAC,CAAC;IACpC,IAAII,aAAa,GAAG,CAAC,CAAC;IAEtB,IAAKL,UAAU,EAAG;MACjBK,aAAa,GAAGN,MAAM,CAACO,MAAM,CAAE,CAAEC,oBAAoB,EAAEC,GAAG,KAAM;QAC/D,IAAK,CAAEA,GAAG,CAACC,EAAE,EAAG;UACf,OAAOF,oBAAoB;QAC5B;QAEA,MAAMG,KAAK,GAAGN,UAAU,CAACE,MAAM,CAAE,CAAEK,YAAY,EAAEC,IAAI,KAAM;UAC1D,MAAMC,UAAU,GAAGL,GAAG,CAACE,KAAK,GAAIE,IAAI,CAACE,IAAI,CAAE,EAAEC,GAAG;UAChD,MAAMC,eAAe,GACpBR,GAAG,CAACS,aAAa,EAAEP,KAAK,GAAIE,IAAI,CAACE,IAAI,CAAE,EAAEI,UAAU;UACpD,OAAO;YACN,GAAGP,YAAY;YACf,CAAEC,IAAI,CAACE,IAAI,GAAID,UAAU,IAAIG;UAC9B,CAAC;QACF,CAAC,EAAE,CAAC,CAAE,CAAC;QACP,OAAO;UACN,GAAGT,oBAAoB;UACvB,CAAEY,QAAQ,CAAEX,GAAG,CAACC,EAAE,EAAE,EAAG,CAAC,GAAIC;QAC7B,CAAC;MACF,CAAC,EAAE,CAAC,CAAE,CAAC;IACR;IACA,MAAMU,iBAAiB,GAAGC,MAAM,CAACC,MAAM,CAAEjB,aAAc,CAAC;IACxD,OAAOD,UAAU,CACfmB,MAAM,CAAE,CAAE;MAAET;IAAK,CAAC,KAClBM,iBAAiB,CAACI,IAAI,CAAId,KAAK,IAAMA,KAAK,CAAEI,IAAI,CAAG,CACpD,CAAC,CACAW,GAAG,CAAE,CAAE;MAAEC,IAAI;MAAEZ;IAAK,CAAC,MAAQ;MAAEa,KAAK,EAAEb,IAAI;MAAEc,KAAK,EAAEF;IAAK,CAAC,CAAG,CAAC;EAChE;AACD","ignoreList":[]}
@@ -31,7 +31,7 @@ function GroupEditControls({
31
31
  }) {
32
32
  const htmlElementMessages = {
33
33
  header: __('The <header> element should represent introductory content, typically a group of introductory or navigational aids.'),
34
- main: __('The <main> element should be used for the primary content of your document only. '),
34
+ main: __('The <main> element should be used for the primary content of your document only.'),
35
35
  section: __("The <section> element should represent a standalone portion of the document that can't be better represented by another element."),
36
36
  article: __('The <article> element should represent a self-contained, syndicatable portion of the document.'),
37
37
  aside: __("The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content."),