@wordpress/block-library 8.4.0 → 8.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 (607) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/archives/edit.js +3 -0
  3. package/build/archives/edit.js.map +1 -1
  4. package/build/audio/edit.js +2 -0
  5. package/build/audio/edit.js.map +1 -1
  6. package/build/avatar/edit.js +5 -9
  7. package/build/avatar/edit.js.map +1 -1
  8. package/build/buttons/edit.native.js +1 -1
  9. package/build/buttons/edit.native.js.map +1 -1
  10. package/build/categories/edit.js +5 -0
  11. package/build/categories/edit.js.map +1 -1
  12. package/build/columns/edit.js +11 -8
  13. package/build/columns/edit.js.map +1 -1
  14. package/build/columns/edit.native.js +1 -1
  15. package/build/columns/edit.native.js.map +1 -1
  16. package/build/columns/utils.js +2 -2
  17. package/build/columns/utils.js.map +1 -1
  18. package/build/comment-author-name/edit.js +2 -0
  19. package/build/comment-author-name/edit.js.map +1 -1
  20. package/build/comment-date/edit.js +1 -0
  21. package/build/comment-date/edit.js.map +1 -1
  22. package/build/comment-edit-link/edit.js +1 -0
  23. package/build/comment-edit-link/edit.js.map +1 -1
  24. package/build/comments/edit/placeholder.js +8 -5
  25. package/build/comments/edit/placeholder.js.map +1 -1
  26. package/build/comments-title/edit.js +2 -0
  27. package/build/comments-title/edit.js.map +1 -1
  28. package/build/cover/edit/inspector-controls.js +2 -0
  29. package/build/cover/edit/inspector-controls.js.map +1 -1
  30. package/build/cover/index.js +13 -4
  31. package/build/cover/index.js.map +1 -1
  32. package/build/cover/variations.js +29 -0
  33. package/build/cover/variations.js.map +1 -0
  34. package/build/embed/edit.js +13 -14
  35. package/build/embed/edit.js.map +1 -1
  36. package/build/embed/edit.native.js +18 -14
  37. package/build/embed/edit.native.js.map +1 -1
  38. package/build/embed/embed-controls.js +1 -0
  39. package/build/embed/embed-controls.js.map +1 -1
  40. package/build/embed/util.js +39 -12
  41. package/build/embed/util.js.map +1 -1
  42. package/build/file/inspector.js +3 -0
  43. package/build/file/inspector.js.map +1 -1
  44. package/build/freeform/modal.js +1 -1
  45. package/build/freeform/modal.js.map +1 -1
  46. package/build/gallery/edit.js +3 -0
  47. package/build/gallery/edit.js.map +1 -1
  48. package/build/gallery/shared.js +4 -8
  49. package/build/gallery/shared.js.map +1 -1
  50. package/build/gallery/use-image-sizes.js +4 -8
  51. package/build/gallery/use-image-sizes.js.map +1 -1
  52. package/build/gallery/v1/edit.js +8 -3
  53. package/build/gallery/v1/edit.js.map +1 -1
  54. package/build/gallery/v1/gallery-image.js +1 -3
  55. package/build/gallery/v1/gallery-image.js.map +1 -1
  56. package/build/gallery/v1/shared.js +4 -7
  57. package/build/gallery/v1/shared.js.map +1 -1
  58. package/build/image/edit.js +6 -4
  59. package/build/image/edit.js.map +1 -1
  60. package/build/image/image.js +6 -2
  61. package/build/image/image.js.map +1 -1
  62. package/build/image/utils.js +3 -1
  63. package/build/image/utils.js.map +1 -1
  64. package/build/index.js +3 -1
  65. package/build/index.js.map +1 -1
  66. package/build/latest-comments/edit.js +3 -0
  67. package/build/latest-comments/edit.js.map +1 -1
  68. package/build/latest-posts/edit.js +14 -10
  69. package/build/latest-posts/edit.js.map +1 -1
  70. package/build/latest-posts/edit.native.js +3 -3
  71. package/build/latest-posts/edit.native.js.map +1 -1
  72. package/build/list/ordered-list-settings.js +1 -0
  73. package/build/list/ordered-list-settings.js.map +1 -1
  74. package/build/list-item/edit.js +2 -2
  75. package/build/list-item/edit.js.map +1 -1
  76. package/build/list-item/hooks/use-outdent-list-item.js +2 -1
  77. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
  78. package/build/loginout/edit.js +2 -0
  79. package/build/loginout/edit.js.map +1 -1
  80. package/build/media-text/constants.js +17 -1
  81. package/build/media-text/constants.js.map +1 -1
  82. package/build/media-text/edit.js +9 -19
  83. package/build/media-text/edit.js.map +1 -1
  84. package/build/media-text/edit.native.js +6 -5
  85. package/build/media-text/edit.native.js.map +1 -1
  86. package/build/media-text/transforms.js +32 -44
  87. package/build/media-text/transforms.js.map +1 -1
  88. package/build/more/edit.js +1 -0
  89. package/build/more/edit.js.map +1 -1
  90. package/build/navigation/edit/index.js +64 -68
  91. package/build/navigation/edit/index.js.map +1 -1
  92. package/build/navigation/edit/inner-blocks.js +4 -1
  93. package/build/navigation/edit/inner-blocks.js.map +1 -1
  94. package/build/navigation/edit/menu-inspector-controls.js +2 -5
  95. package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
  96. package/build/navigation/edit/navigation-menu-selector.js +26 -22
  97. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  98. package/build/navigation/edit/overlay-menu-preview.js +1 -0
  99. package/build/navigation/edit/overlay-menu-preview.js.map +1 -1
  100. package/build/navigation/edit/placeholder/index.js +1 -1
  101. package/build/navigation/edit/placeholder/index.js.map +1 -1
  102. package/build/navigation/edit/unsaved-inner-blocks.js +14 -1
  103. package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  104. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +3 -5
  105. package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  106. package/build/navigation/edit/use-create-navigation-menu.js +1 -1
  107. package/build/navigation/edit/use-create-navigation-menu.js.map +1 -1
  108. package/build/navigation/edit/use-generate-default-navigation-title.js +1 -1
  109. package/build/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
  110. package/build/navigation/edit/use-navigation-notice.js +4 -7
  111. package/build/navigation/edit/use-navigation-notice.js.map +1 -1
  112. package/build/navigation-link/edit.js +0 -11
  113. package/build/navigation-link/edit.js.map +1 -1
  114. package/build/navigation-submenu/edit.js +1 -13
  115. package/build/navigation-submenu/edit.js.map +1 -1
  116. package/build/page-list/convert-to-links-modal.js +47 -0
  117. package/build/page-list/convert-to-links-modal.js.map +1 -0
  118. package/build/page-list/edit.js +62 -62
  119. package/build/page-list/edit.js.map +1 -1
  120. package/build/page-list-item/edit.js +3 -2
  121. package/build/page-list-item/edit.js.map +1 -1
  122. package/build/paragraph/edit.js +1 -0
  123. package/build/paragraph/edit.js.map +1 -1
  124. package/build/post-author/edit.js +4 -0
  125. package/build/post-author/edit.js.map +1 -1
  126. package/build/post-author-name/edit.js +2 -0
  127. package/build/post-author-name/edit.js.map +1 -1
  128. package/build/post-content/edit.js +6 -1
  129. package/build/post-content/edit.js.map +1 -1
  130. package/build/post-date/edit.js +2 -0
  131. package/build/post-date/edit.js.map +1 -1
  132. package/build/post-excerpt/edit.js +1 -0
  133. package/build/post-excerpt/edit.js.map +1 -1
  134. package/build/post-featured-image/dimension-controls.js +0 -6
  135. package/build/post-featured-image/dimension-controls.js.map +1 -1
  136. package/build/post-featured-image/edit.js +3 -1
  137. package/build/post-featured-image/edit.js.map +1 -1
  138. package/build/post-navigation-link/edit.js +2 -0
  139. package/build/post-navigation-link/edit.js.map +1 -1
  140. package/build/post-terms/use-post-terms.js +1 -1
  141. package/build/post-terms/use-post-terms.js.map +1 -1
  142. package/build/post-time-to-read/edit.js +104 -0
  143. package/build/post-time-to-read/edit.js.map +1 -0
  144. package/build/post-time-to-read/icon.js +25 -0
  145. package/build/post-time-to-read/icon.js.map +1 -0
  146. package/build/post-time-to-read/index.js +57 -0
  147. package/build/post-time-to-read/index.js.map +1 -0
  148. package/build/post-title/edit.js +2 -0
  149. package/build/post-title/edit.js.map +1 -1
  150. package/build/pullquote/deprecated.js +3 -3
  151. package/build/pullquote/deprecated.js.map +1 -1
  152. package/build/query/edit/inspector-controls/index.js +1 -0
  153. package/build/query/edit/inspector-controls/index.js.map +1 -1
  154. package/build/query/edit/query-placeholder.js +3 -2
  155. package/build/query/edit/query-placeholder.js.map +1 -1
  156. package/build/query/utils.js +26 -9
  157. package/build/query/utils.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/read-more/edit.js +1 -0
  161. package/build/read-more/edit.js.map +1 -1
  162. package/build/rss/edit.js +3 -0
  163. package/build/rss/edit.js.map +1 -1
  164. package/build/site-logo/edit.js +3 -0
  165. package/build/site-logo/edit.js.map +1 -1
  166. package/build/site-tagline/index.js +1 -0
  167. package/build/site-tagline/index.js.map +1 -1
  168. package/build/site-title/edit/index.js +2 -0
  169. package/build/site-title/edit/index.js.map +1 -1
  170. package/build/social-links/edit.js +4 -1
  171. package/build/social-links/edit.js.map +1 -1
  172. package/build/spacer/controls.native.js +10 -8
  173. package/build/spacer/controls.native.js.map +1 -1
  174. package/build/spacer/edit.native.js +43 -5
  175. package/build/spacer/edit.native.js.map +1 -1
  176. package/build/spacer/save.native.js +30 -0
  177. package/build/spacer/save.native.js.map +1 -0
  178. package/build/table/edit.js +3 -0
  179. package/build/table/edit.js.map +1 -1
  180. package/build/table/state.js +12 -4
  181. package/build/table/state.js.map +1 -1
  182. package/build/table-of-contents/edit.js +1 -0
  183. package/build/table-of-contents/edit.js.map +1 -1
  184. package/build/tag-cloud/edit.js +1 -0
  185. package/build/tag-cloud/edit.js.map +1 -1
  186. package/build/template-part/edit/import-controls.js +33 -30
  187. package/build/template-part/edit/import-controls.js.map +1 -1
  188. package/build/template-part/edit/utils/transformers.js +69 -19
  189. package/build/template-part/edit/utils/transformers.js.map +1 -1
  190. package/build/text-columns/edit.js +3 -7
  191. package/build/text-columns/edit.js.map +1 -1
  192. package/build/text-columns/save.js +11 -13
  193. package/build/text-columns/save.js.map +1 -1
  194. package/build/video/edit-common-settings.js +5 -0
  195. package/build/video/edit-common-settings.js.map +1 -1
  196. package/build-module/archives/edit.js +3 -0
  197. package/build-module/archives/edit.js.map +1 -1
  198. package/build-module/audio/edit.js +2 -0
  199. package/build-module/audio/edit.js.map +1 -1
  200. package/build-module/avatar/edit.js +5 -8
  201. package/build-module/avatar/edit.js.map +1 -1
  202. package/build-module/buttons/edit.native.js +1 -1
  203. package/build-module/buttons/edit.native.js.map +1 -1
  204. package/build-module/categories/edit.js +5 -0
  205. package/build-module/categories/edit.js.map +1 -1
  206. package/build-module/columns/edit.js +11 -7
  207. package/build-module/columns/edit.js.map +1 -1
  208. package/build-module/columns/edit.native.js +1 -1
  209. package/build-module/columns/edit.native.js.map +1 -1
  210. package/build-module/columns/utils.js +3 -3
  211. package/build-module/columns/utils.js.map +1 -1
  212. package/build-module/comment-author-name/edit.js +2 -0
  213. package/build-module/comment-author-name/edit.js.map +1 -1
  214. package/build-module/comment-date/edit.js +1 -0
  215. package/build-module/comment-date/edit.js.map +1 -1
  216. package/build-module/comment-edit-link/edit.js +1 -0
  217. package/build-module/comment-edit-link/edit.js.map +1 -1
  218. package/build-module/comments/edit/placeholder.js +9 -5
  219. package/build-module/comments/edit/placeholder.js.map +1 -1
  220. package/build-module/comments-title/edit.js +2 -0
  221. package/build-module/comments-title/edit.js.map +1 -1
  222. package/build-module/cover/edit/inspector-controls.js +2 -0
  223. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  224. package/build-module/cover/index.js +12 -4
  225. package/build-module/cover/index.js.map +1 -1
  226. package/build-module/cover/variations.js +19 -0
  227. package/build-module/cover/variations.js.map +1 -0
  228. package/build-module/embed/edit.js +14 -15
  229. package/build-module/embed/edit.js.map +1 -1
  230. package/build-module/embed/edit.native.js +19 -15
  231. package/build-module/embed/edit.native.js.map +1 -1
  232. package/build-module/embed/embed-controls.js +1 -0
  233. package/build-module/embed/embed-controls.js.map +1 -1
  234. package/build-module/embed/util.js +34 -10
  235. package/build-module/embed/util.js.map +1 -1
  236. package/build-module/file/inspector.js +3 -0
  237. package/build-module/file/inspector.js.map +1 -1
  238. package/build-module/freeform/modal.js +1 -1
  239. package/build-module/freeform/modal.js.map +1 -1
  240. package/build-module/gallery/edit.js +3 -0
  241. package/build-module/gallery/edit.js.map +1 -1
  242. package/build-module/gallery/shared.js +4 -7
  243. package/build-module/gallery/shared.js.map +1 -1
  244. package/build-module/gallery/use-image-sizes.js +4 -7
  245. package/build-module/gallery/use-image-sizes.js.map +1 -1
  246. package/build-module/gallery/v1/edit.js +9 -4
  247. package/build-module/gallery/v1/edit.js.map +1 -1
  248. package/build-module/gallery/v1/gallery-image.js +1 -2
  249. package/build-module/gallery/v1/gallery-image.js.map +1 -1
  250. package/build-module/gallery/v1/shared.js +4 -6
  251. package/build-module/gallery/v1/shared.js.map +1 -1
  252. package/build-module/image/edit.js +7 -5
  253. package/build-module/image/edit.js.map +1 -1
  254. package/build-module/image/image.js +7 -3
  255. package/build-module/image/image.js.map +1 -1
  256. package/build-module/image/utils.js +4 -2
  257. package/build-module/image/utils.js.map +1 -1
  258. package/build-module/index.js +2 -1
  259. package/build-module/index.js.map +1 -1
  260. package/build-module/latest-comments/edit.js +3 -0
  261. package/build-module/latest-comments/edit.js.map +1 -1
  262. package/build-module/latest-posts/edit.js +14 -9
  263. package/build-module/latest-posts/edit.js.map +1 -1
  264. package/build-module/latest-posts/edit.native.js +3 -3
  265. package/build-module/latest-posts/edit.native.js.map +1 -1
  266. package/build-module/list/ordered-list-settings.js +1 -0
  267. package/build-module/list/ordered-list-settings.js.map +1 -1
  268. package/build-module/list-item/edit.js +2 -2
  269. package/build-module/list-item/edit.js.map +1 -1
  270. package/build-module/list-item/hooks/use-outdent-list-item.js +2 -1
  271. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
  272. package/build-module/loginout/edit.js +2 -0
  273. package/build-module/loginout/edit.js.map +1 -1
  274. package/build-module/media-text/constants.js +10 -0
  275. package/build-module/media-text/constants.js.map +1 -1
  276. package/build-module/media-text/edit.js +4 -14
  277. package/build-module/media-text/edit.js.map +1 -1
  278. package/build-module/media-text/edit.native.js +4 -3
  279. package/build-module/media-text/edit.native.js.map +1 -1
  280. package/build-module/media-text/transforms.js +32 -44
  281. package/build-module/media-text/transforms.js.map +1 -1
  282. package/build-module/more/edit.js +1 -0
  283. package/build-module/more/edit.js.map +1 -1
  284. package/build-module/navigation/edit/index.js +65 -69
  285. package/build-module/navigation/edit/index.js.map +1 -1
  286. package/build-module/navigation/edit/inner-blocks.js +4 -1
  287. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  288. package/build-module/navigation/edit/menu-inspector-controls.js +2 -5
  289. package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
  290. package/build-module/navigation/edit/navigation-menu-selector.js +25 -22
  291. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  292. package/build-module/navigation/edit/overlay-menu-preview.js +1 -0
  293. package/build-module/navigation/edit/overlay-menu-preview.js.map +1 -1
  294. package/build-module/navigation/edit/placeholder/index.js +1 -1
  295. package/build-module/navigation/edit/placeholder/index.js.map +1 -1
  296. package/build-module/navigation/edit/unsaved-inner-blocks.js +14 -1
  297. package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
  298. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +3 -5
  299. package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
  300. package/build-module/navigation/edit/use-create-navigation-menu.js +1 -1
  301. package/build-module/navigation/edit/use-create-navigation-menu.js.map +1 -1
  302. package/build-module/navigation/edit/use-generate-default-navigation-title.js +1 -1
  303. package/build-module/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
  304. package/build-module/navigation/edit/use-navigation-notice.js +5 -8
  305. package/build-module/navigation/edit/use-navigation-notice.js.map +1 -1
  306. package/build-module/navigation-link/edit.js +0 -11
  307. package/build-module/navigation-link/edit.js.map +1 -1
  308. package/build-module/navigation-submenu/edit.js +1 -13
  309. package/build-module/navigation-submenu/edit.js.map +1 -1
  310. package/build-module/page-list/convert-to-links-modal.js +35 -0
  311. package/build-module/page-list/convert-to-links-modal.js.map +1 -0
  312. package/build-module/page-list/edit.js +64 -65
  313. package/build-module/page-list/edit.js.map +1 -1
  314. package/build-module/page-list-item/edit.js +3 -2
  315. package/build-module/page-list-item/edit.js.map +1 -1
  316. package/build-module/paragraph/edit.js +1 -0
  317. package/build-module/paragraph/edit.js.map +1 -1
  318. package/build-module/post-author/edit.js +4 -0
  319. package/build-module/post-author/edit.js.map +1 -1
  320. package/build-module/post-author-name/edit.js +2 -0
  321. package/build-module/post-author-name/edit.js.map +1 -1
  322. package/build-module/post-content/edit.js +6 -1
  323. package/build-module/post-content/edit.js.map +1 -1
  324. package/build-module/post-date/edit.js +2 -0
  325. package/build-module/post-date/edit.js.map +1 -1
  326. package/build-module/post-excerpt/edit.js +1 -0
  327. package/build-module/post-excerpt/edit.js.map +1 -1
  328. package/build-module/post-featured-image/dimension-controls.js +0 -6
  329. package/build-module/post-featured-image/dimension-controls.js.map +1 -1
  330. package/build-module/post-featured-image/edit.js +3 -1
  331. package/build-module/post-featured-image/edit.js.map +1 -1
  332. package/build-module/post-navigation-link/edit.js +2 -0
  333. package/build-module/post-navigation-link/edit.js.map +1 -1
  334. package/build-module/post-terms/use-post-terms.js +1 -1
  335. package/build-module/post-terms/use-post-terms.js.map +1 -1
  336. package/build-module/post-time-to-read/edit.js +90 -0
  337. package/build-module/post-time-to-read/edit.js.map +1 -0
  338. package/build-module/post-time-to-read/icon.js +15 -0
  339. package/build-module/post-time-to-read/icon.js.map +1 -0
  340. package/build-module/post-time-to-read/index.js +40 -0
  341. package/build-module/post-time-to-read/index.js.map +1 -0
  342. package/build-module/post-title/edit.js +2 -0
  343. package/build-module/post-title/edit.js.map +1 -1
  344. package/build-module/pullquote/deprecated.js +3 -2
  345. package/build-module/pullquote/deprecated.js.map +1 -1
  346. package/build-module/query/edit/inspector-controls/index.js +1 -0
  347. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  348. package/build-module/query/edit/query-placeholder.js +4 -3
  349. package/build-module/query/edit/query-placeholder.js.map +1 -1
  350. package/build-module/query/utils.js +21 -6
  351. package/build-module/query/utils.js.map +1 -1
  352. package/build-module/query-title/edit.js +2 -0
  353. package/build-module/query-title/edit.js.map +1 -1
  354. package/build-module/read-more/edit.js +1 -0
  355. package/build-module/read-more/edit.js.map +1 -1
  356. package/build-module/rss/edit.js +3 -0
  357. package/build-module/rss/edit.js.map +1 -1
  358. package/build-module/site-logo/edit.js +3 -0
  359. package/build-module/site-logo/edit.js.map +1 -1
  360. package/build-module/site-tagline/index.js +1 -0
  361. package/build-module/site-tagline/index.js.map +1 -1
  362. package/build-module/site-title/edit/index.js +2 -0
  363. package/build-module/site-title/edit/index.js.map +1 -1
  364. package/build-module/social-links/edit.js +4 -1
  365. package/build-module/social-links/edit.js.map +1 -1
  366. package/build-module/spacer/controls.native.js +9 -8
  367. package/build-module/spacer/controls.native.js.map +1 -1
  368. package/build-module/spacer/edit.native.js +39 -7
  369. package/build-module/spacer/edit.native.js.map +1 -1
  370. package/build-module/spacer/save.native.js +22 -0
  371. package/build-module/spacer/save.native.js.map +1 -0
  372. package/build-module/table/edit.js +3 -0
  373. package/build-module/table/edit.js.map +1 -1
  374. package/build-module/table/state.js +13 -5
  375. package/build-module/table/state.js.map +1 -1
  376. package/build-module/table-of-contents/edit.js +1 -0
  377. package/build-module/table-of-contents/edit.js.map +1 -1
  378. package/build-module/tag-cloud/edit.js +1 -0
  379. package/build-module/tag-cloud/edit.js.map +1 -1
  380. package/build-module/template-part/edit/import-controls.js +32 -29
  381. package/build-module/template-part/edit/import-controls.js.map +1 -1
  382. package/build-module/template-part/edit/utils/transformers.js +69 -20
  383. package/build-module/template-part/edit/utils/transformers.js.map +1 -1
  384. package/build-module/text-columns/edit.js +3 -6
  385. package/build-module/text-columns/edit.js.map +1 -1
  386. package/build-module/text-columns/save.js +11 -12
  387. package/build-module/text-columns/save.js.map +1 -1
  388. package/build-module/video/edit-common-settings.js +5 -0
  389. package/build-module/video/edit-common-settings.js.map +1 -1
  390. package/build-style/cover/style-rtl.css +11 -5
  391. package/build-style/cover/style.css +11 -5
  392. package/build-style/editor-rtl.css +9 -4
  393. package/build-style/editor.css +9 -4
  394. package/build-style/navigation/editor-rtl.css +1 -1
  395. package/build-style/navigation/editor.css +1 -1
  396. package/build-style/page-list/editor-rtl.css +4 -0
  397. package/build-style/page-list/editor.css +4 -0
  398. package/build-style/post-excerpt/editor-rtl.css +1 -1
  399. package/build-style/post-excerpt/editor.css +1 -1
  400. package/build-style/post-featured-image/style-rtl.css +1 -0
  401. package/build-style/post-featured-image/style.css +1 -0
  402. package/build-style/query/editor-rtl.css +1 -0
  403. package/build-style/query/editor.css +1 -0
  404. package/build-style/site-logo/editor-rtl.css +2 -2
  405. package/build-style/site-logo/editor.css +2 -2
  406. package/build-style/style-rtl.css +12 -5
  407. package/build-style/style.css +12 -5
  408. package/package.json +31 -30
  409. package/src/archives/edit.js +3 -0
  410. package/src/audio/edit.js +2 -0
  411. package/src/audio/test/__snapshots__/edit.native.js.snap +82 -42
  412. package/src/audio/test/__snapshots__/transforms.native.js.snap +25 -0
  413. package/src/audio/test/transforms.native.js +42 -0
  414. package/src/avatar/edit.js +2 -4
  415. package/src/block/test/__snapshots__/transforms.native.js.snap +15 -0
  416. package/src/block/test/transforms.native.js +40 -0
  417. package/src/buttons/edit.native.js +1 -1
  418. package/src/buttons/test/__snapshots__/edit.native.js.snap +11 -11
  419. package/src/buttons/test/__snapshots__/transforms.native.js.snap +31 -0
  420. package/src/buttons/test/transforms.native.js +48 -0
  421. package/src/categories/edit.js +5 -0
  422. package/src/code/test/__snapshots__/edit.native.js.snap +2 -2
  423. package/src/columns/edit.js +29 -17
  424. package/src/columns/edit.native.js +1 -1
  425. package/src/columns/test/__snapshots__/edit.native.js.snap +66 -66
  426. package/src/columns/test/__snapshots__/transforms.native.js.snap +61 -0
  427. package/src/columns/test/transforms.native.js +91 -0
  428. package/src/columns/test/utils.js +54 -0
  429. package/src/columns/utils.js +8 -8
  430. package/src/comment-author-name/edit.js +2 -0
  431. package/src/comment-date/edit.js +1 -0
  432. package/src/comment-edit-link/edit.js +1 -0
  433. package/src/comment-template/index.php +1 -2
  434. package/src/comments/edit/placeholder.js +16 -4
  435. package/src/comments-title/edit.js +2 -0
  436. package/src/cover/block.json +9 -3
  437. package/src/cover/edit/inspector-controls.js +2 -0
  438. package/src/cover/index.js +2 -0
  439. package/src/cover/index.php +4 -6
  440. package/src/cover/style.scss +16 -7
  441. package/src/cover/test/__snapshots__/edit.native.js.snap +36 -36
  442. package/src/cover/test/__snapshots__/transforms.native.js.snap +73 -0
  443. package/src/cover/test/transforms.native.js +112 -0
  444. package/src/cover/variations.js +20 -0
  445. package/src/embed/edit.js +16 -12
  446. package/src/embed/edit.native.js +28 -18
  447. package/src/embed/embed-controls.js +1 -0
  448. package/src/embed/test/__snapshots__/index.native.js.snap +52 -52
  449. package/src/embed/test/__snapshots__/transforms.native.js.snap +23 -0
  450. package/src/embed/test/index.js +12 -0
  451. package/src/embed/test/transforms.native.js +44 -0
  452. package/src/embed/util.js +29 -8
  453. package/src/file/inspector.js +3 -0
  454. package/src/file/test/__snapshots__/edit.native.js.snap +67 -51
  455. package/src/file/test/__snapshots__/transforms.native.js.snap +19 -0
  456. package/src/file/test/transforms.native.js +42 -0
  457. package/src/freeform/modal.js +1 -1
  458. package/src/freeform/test/__snapshots__/transforms.native.js.snap +19 -0
  459. package/src/freeform/test/transforms.native.js +39 -0
  460. package/src/gallery/edit.js +5 -0
  461. package/src/gallery/shared.js +6 -11
  462. package/src/gallery/test/__snapshots__/index.native.js.snap +71 -71
  463. package/src/gallery/test/__snapshots__/transforms.native.js.snap +53 -0
  464. package/src/gallery/test/transforms.native.js +52 -0
  465. package/src/gallery/use-image-sizes.js +3 -16
  466. package/src/gallery/v1/edit.js +8 -16
  467. package/src/gallery/v1/gallery-image.js +1 -2
  468. package/src/gallery/v1/shared.js +5 -10
  469. package/src/group/test/__snapshots__/edit.native.js.snap +5 -5
  470. package/src/group/test/__snapshots__/transforms.native.js.snap +35 -0
  471. package/src/group/test/transforms.native.js +75 -0
  472. package/src/heading/test/__snapshots__/index.native.js.snap +1 -1
  473. package/src/heading/test/__snapshots__/transforms.native.js.snap +47 -0
  474. package/src/heading/test/transforms.native.js +46 -0
  475. package/src/image/edit.js +4 -4
  476. package/src/image/image.js +4 -9
  477. package/src/image/index.php +4 -4
  478. package/src/image/test/__snapshots__/transforms.native.js.snap +49 -0
  479. package/src/image/test/transforms.native.js +48 -0
  480. package/src/image/utils.js +2 -2
  481. package/src/index.js +2 -0
  482. package/src/latest-comments/edit.js +3 -0
  483. package/src/latest-posts/edit.js +15 -16
  484. package/src/latest-posts/edit.native.js +3 -3
  485. package/src/latest-posts/test/__snapshots__/transforms.native.js.snap +15 -0
  486. package/src/latest-posts/test/transforms.native.js +61 -0
  487. package/src/list/ordered-list-settings.js +1 -0
  488. package/src/list/test/__snapshots__/edit.native.js.snap +4 -4
  489. package/src/list/test/__snapshots__/transforms.native.js.snap +85 -0
  490. package/src/list/test/transforms.native.js +56 -0
  491. package/src/list-item/edit.js +10 -3
  492. package/src/list-item/hooks/use-outdent-list-item.js +2 -1
  493. package/src/loginout/edit.js +2 -0
  494. package/src/media-text/constants.js +16 -0
  495. package/src/media-text/edit.js +10 -18
  496. package/src/media-text/edit.native.js +3 -9
  497. package/src/media-text/test/__snapshots__/transforms.native.js.snap +73 -0
  498. package/src/media-text/test/transforms.native.js +112 -0
  499. package/src/media-text/transforms.js +24 -51
  500. package/src/missing/test/__snapshots__/edit.native.js.snap +21 -3
  501. package/src/more/edit.js +1 -0
  502. package/src/more/test/__snapshots__/transforms.native.js.snap +19 -0
  503. package/src/more/test/transforms.native.js +42 -0
  504. package/src/navigation/edit/index.js +121 -76
  505. package/src/navigation/edit/inner-blocks.js +3 -0
  506. package/src/navigation/edit/menu-inspector-controls.js +2 -7
  507. package/src/navigation/edit/navigation-menu-selector.js +41 -25
  508. package/src/navigation/edit/overlay-menu-preview.js +1 -0
  509. package/src/navigation/edit/placeholder/index.js +1 -1
  510. package/src/navigation/edit/unsaved-inner-blocks.js +46 -32
  511. package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +124 -122
  512. package/src/navigation/edit/use-create-navigation-menu.js +1 -1
  513. package/src/navigation/edit/use-generate-default-navigation-title.js +1 -1
  514. package/src/navigation/edit/use-navigation-notice.js +16 -13
  515. package/src/navigation/editor.scss +23 -20
  516. package/src/navigation/index.php +5 -3
  517. package/src/navigation-link/edit.js +0 -9
  518. package/src/navigation-link/index.php +5 -8
  519. package/src/navigation-link/test/__snapshots__/hooks.js.snap +12 -12
  520. package/src/navigation-submenu/edit.js +0 -10
  521. package/src/navigation-submenu/index.php +23 -6
  522. package/src/nextpage/test/__snapshots__/transforms.native.js.snap +19 -0
  523. package/src/nextpage/test/transforms.native.js +42 -0
  524. package/src/page-list/convert-to-links-modal.js +38 -0
  525. package/src/page-list/edit.js +82 -69
  526. package/src/page-list/editor.scss +6 -0
  527. package/src/page-list-item/edit.js +2 -3
  528. package/src/paragraph/edit.js +1 -0
  529. package/src/paragraph/test/__snapshots__/transforms.native.js.snap +59 -0
  530. package/src/paragraph/test/transforms.native.js +50 -0
  531. package/src/post-author/edit.js +4 -0
  532. package/src/post-author-name/edit.js +2 -0
  533. package/src/post-content/edit.js +5 -1
  534. package/src/post-date/edit.js +2 -0
  535. package/src/post-excerpt/edit.js +1 -0
  536. package/src/post-excerpt/editor.scss +1 -1
  537. package/src/post-excerpt/index.php +1 -2
  538. package/src/post-featured-image/dimension-controls.js +0 -8
  539. package/src/post-featured-image/edit.js +3 -1
  540. package/src/post-featured-image/style.scss +1 -0
  541. package/src/post-navigation-link/edit.js +2 -0
  542. package/src/post-terms/index.php +1 -0
  543. package/src/post-terms/use-post-terms.js +1 -1
  544. package/src/post-time-to-read/block.json +20 -0
  545. package/src/post-time-to-read/edit.js +101 -0
  546. package/src/post-time-to-read/icon.js +15 -0
  547. package/src/post-time-to-read/index.js +17 -0
  548. package/src/post-time-to-read/index.php +62 -0
  549. package/src/post-title/edit.js +2 -0
  550. package/src/preformatted/test/__snapshots__/edit.native.js.snap +10 -10
  551. package/src/preformatted/test/__snapshots__/transforms.native.js.snap +31 -0
  552. package/src/preformatted/test/transforms.native.js +42 -0
  553. package/src/pullquote/deprecated.js +2 -6
  554. package/src/pullquote/test/__snapshots__/transforms.native.js.snap +47 -0
  555. package/src/pullquote/test/transforms.native.js +46 -0
  556. package/src/query/edit/inspector-controls/index.js +1 -0
  557. package/src/query/edit/query-placeholder.js +10 -5
  558. package/src/query/editor.scss +1 -0
  559. package/src/query/test/utils.js +33 -1
  560. package/src/query/utils.js +19 -6
  561. package/src/query-title/edit.js +2 -0
  562. package/src/quote/test/__snapshots__/transforms.native.js.snap +39 -0
  563. package/src/quote/test/transforms.native.js +67 -0
  564. package/src/read-more/edit.js +1 -0
  565. package/src/rss/edit.js +3 -0
  566. package/src/search/test/__snapshots__/edit.native.js.snap +71 -61
  567. package/src/search/test/__snapshots__/transforms.native.js.snap +15 -0
  568. package/src/search/test/transforms.native.js +40 -0
  569. package/src/separator/test/__snapshots__/edit.native.js.snap +1 -1
  570. package/src/separator/test/__snapshots__/transforms.native.js.snap +19 -0
  571. package/src/separator/test/transforms.native.js +42 -0
  572. package/src/shortcode/test/__snapshots__/transforms.native.js.snap +19 -0
  573. package/src/shortcode/test/transforms.native.js +42 -0
  574. package/src/site-logo/edit.js +3 -0
  575. package/src/site-logo/editor.scss +3 -3
  576. package/src/site-logo/index.php +7 -2
  577. package/src/site-tagline/block.json +1 -0
  578. package/src/site-title/edit/index.js +2 -0
  579. package/src/social-link/index.php +6 -6
  580. package/src/social-links/edit.js +3 -0
  581. package/src/social-links/test/__snapshots__/edit.native.js.snap +16 -16
  582. package/src/social-links/test/__snapshots__/transforms.native.js.snap +31 -0
  583. package/src/social-links/test/transforms.native.js +53 -0
  584. package/src/spacer/controls.native.js +13 -5
  585. package/src/spacer/edit.native.js +45 -6
  586. package/src/spacer/save.native.js +18 -0
  587. package/src/spacer/test/__snapshots__/index.native.js.snap +21 -9
  588. package/src/spacer/test/__snapshots__/transforms.native.js.snap +19 -0
  589. package/src/spacer/test/index.native.js +81 -0
  590. package/src/spacer/test/transforms.native.js +42 -0
  591. package/src/table/edit.js +3 -0
  592. package/src/table/state.js +8 -17
  593. package/src/table-of-contents/edit.js +1 -0
  594. package/src/tag-cloud/edit.js +1 -0
  595. package/src/template-part/edit/import-controls.js +26 -34
  596. package/src/template-part/edit/utils/transformers.js +96 -19
  597. package/src/template-part/index.php +7 -6
  598. package/src/text-columns/edit.js +1 -6
  599. package/src/text-columns/save.js +1 -6
  600. package/src/verse/test/__snapshots__/edit.native.js.snap +2 -2
  601. package/src/verse/test/__snapshots__/transforms.native.js.snap +25 -0
  602. package/src/verse/test/transforms.native.js +42 -0
  603. package/src/video/edit-common-settings.js +5 -0
  604. package/src/video/test/__snapshots__/transforms.native.js.snap +41 -0
  605. package/src/video/test/transforms.native.js +48 -0
  606. package/tsconfig.json +2 -1
  607. package/tsconfig.tsbuildinfo +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/latest-posts/edit.js"],"names":["get","classnames","BaseControl","PanelBody","Placeholder","QueryControls","RadioControl","RangeControl","Spinner","ToggleControl","ToolbarGroup","__","sprintf","dateI18n","format","getSettings","InspectorControls","BlockAlignmentToolbar","BlockControls","__experimentalImageSizeControl","ImageSizeControl","useBlockProps","store","blockEditorStore","useSelect","useDispatch","pin","list","grid","coreStore","noticeStore","useInstanceId","MIN_EXCERPT_LENGTH","MAX_EXCERPT_LENGTH","MAX_POSTS_COLUMNS","CATEGORIES_LIST_QUERY","per_page","context","USERS_LIST_QUERY","has_published_posts","getFeaturedImageDetails","post","size","image","url","media_details","sizes","source_url","alt","alt_text","LatestPostsEdit","attributes","setAttributes","instanceId","postsToShow","order","orderBy","categories","selectedAuthor","displayFeaturedImage","displayPostContentRadio","displayPostContent","displayPostDate","displayAuthor","postLayout","columns","excerptLength","featuredImageAlign","featuredImageSizeSlug","featuredImageSizeWidth","featuredImageSizeHeight","addLinkToFeaturedImage","imageSizes","latestPosts","defaultImageWidth","defaultImageHeight","categoriesList","authorList","select","getEntityRecords","getUsers","settings","catIds","length","map","cat","id","latestPostsQuery","Object","fromEntries","entries","author","orderby","_embed","filter","value","imageDimensions","createWarningNotice","removeNotice","noticeId","showRedirectionPreventedNotice","event","preventDefault","type","imageSizeOptions","slug","name","label","categorySuggestions","reduce","accumulator","category","selectCategories","tokens","hasNoSuggestion","some","token","allCategories","includes","hasPosts","inspectorControls","newAttrs","hasOwnProperty","width","height","undefined","Number","Math","min","blockProps","className","Array","isArray","displayPosts","slice","layoutControls","icon","title","onClick","isActive","dateFormat","formats","date","titleTrimmed","rendered","trim","excerpt","currentAuthor","find","excerptElement","document","createElement","innerHTML","textContent","innerText","imageSourceUrl","featuredImageAlt","imageClasses","renderFeaturedImage","featuredImage","maxWidth","maxHeight","needsReadMore","split","raw","postExcerpt","join","link","__html","date_gmt","content"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get } from 'lodash';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBaseControl,\n\tPanelBody,\n\tPlaceholder,\n\tQueryControls,\n\tRadioControl,\n\tRangeControl,\n\tSpinner,\n\tToggleControl,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { dateI18n, format, getSettings } from '@wordpress/date';\nimport {\n\tInspectorControls,\n\tBlockAlignmentToolbar,\n\tBlockControls,\n\t__experimentalImageSizeControl as ImageSizeControl,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { pin, list, grid } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticeStore } from '@wordpress/notices';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport {\n\tMIN_EXCERPT_LENGTH,\n\tMAX_EXCERPT_LENGTH,\n\tMAX_POSTS_COLUMNS,\n} from './constants';\n\n/**\n * Module Constants\n */\nconst CATEGORIES_LIST_QUERY = {\n\tper_page: -1,\n\tcontext: 'view',\n};\nconst USERS_LIST_QUERY = {\n\tper_page: -1,\n\thas_published_posts: [ 'post' ],\n\tcontext: 'view',\n};\n\nfunction getFeaturedImageDetails( post, size ) {\n\tconst image = get( post, [ '_embedded', 'wp:featuredmedia', '0' ] );\n\n\treturn {\n\t\turl:\n\t\t\timage?.media_details?.sizes?.[ size ]?.source_url ??\n\t\t\timage?.source_url,\n\t\talt: image?.alt_text,\n\t};\n}\n\nexport default function LatestPostsEdit( { attributes, setAttributes } ) {\n\tconst instanceId = useInstanceId( LatestPostsEdit );\n\tconst {\n\t\tpostsToShow,\n\t\torder,\n\t\torderBy,\n\t\tcategories,\n\t\tselectedAuthor,\n\t\tdisplayFeaturedImage,\n\t\tdisplayPostContentRadio,\n\t\tdisplayPostContent,\n\t\tdisplayPostDate,\n\t\tdisplayAuthor,\n\t\tpostLayout,\n\t\tcolumns,\n\t\texcerptLength,\n\t\tfeaturedImageAlign,\n\t\tfeaturedImageSizeSlug,\n\t\tfeaturedImageSizeWidth,\n\t\tfeaturedImageSizeHeight,\n\t\taddLinkToFeaturedImage,\n\t} = attributes;\n\tconst {\n\t\timageSizes,\n\t\tlatestPosts,\n\t\tdefaultImageWidth,\n\t\tdefaultImageHeight,\n\t\tcategoriesList,\n\t\tauthorList,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getUsers } = select( coreStore );\n\t\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\t\tconst catIds =\n\t\t\t\tcategories && categories.length > 0\n\t\t\t\t\t? categories.map( ( cat ) => cat.id )\n\t\t\t\t\t: [];\n\t\t\tconst latestPostsQuery = Object.fromEntries(\n\t\t\t\tObject.entries( {\n\t\t\t\t\tcategories: catIds,\n\t\t\t\t\tauthor: selectedAuthor,\n\t\t\t\t\torder,\n\t\t\t\t\torderby: orderBy,\n\t\t\t\t\tper_page: postsToShow,\n\t\t\t\t\t_embed: 'wp:featuredmedia',\n\t\t\t\t} ).filter( ( [ , value ] ) => typeof value !== 'undefined' )\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tdefaultImageWidth: get(\n\t\t\t\t\tsettings.imageDimensions,\n\t\t\t\t\t[ featuredImageSizeSlug, 'width' ],\n\t\t\t\t\t0\n\t\t\t\t),\n\t\t\t\tdefaultImageHeight: get(\n\t\t\t\t\tsettings.imageDimensions,\n\t\t\t\t\t[ featuredImageSizeSlug, 'height' ],\n\t\t\t\t\t0\n\t\t\t\t),\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tlatestPosts: getEntityRecords(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'post',\n\t\t\t\t\tlatestPostsQuery\n\t\t\t\t),\n\t\t\t\tcategoriesList: getEntityRecords(\n\t\t\t\t\t'taxonomy',\n\t\t\t\t\t'category',\n\t\t\t\t\tCATEGORIES_LIST_QUERY\n\t\t\t\t),\n\t\t\t\tauthorList: getUsers( USERS_LIST_QUERY ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tfeaturedImageSizeSlug,\n\t\t\tpostsToShow,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tcategories,\n\t\t\tselectedAuthor,\n\t\t]\n\t);\n\n\t// If a user clicks to a link prevent redirection and show a warning.\n\tconst { createWarningNotice, removeNotice } = useDispatch( noticeStore );\n\tlet noticeId;\n\tconst showRedirectionPreventedNotice = ( event ) => {\n\t\tevent.preventDefault();\n\t\t// Remove previous warning if any, to show one at a time per block.\n\t\tremoveNotice( noticeId );\n\t\tnoticeId = `block-library/core/latest-posts/redirection-prevented/${ instanceId }`;\n\t\tcreateWarningNotice( __( 'Links are disabled in the editor.' ), {\n\t\t\tid: noticeId,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => slug !== 'full' )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\tconst categorySuggestions =\n\t\tcategoriesList?.reduce(\n\t\t\t( accumulator, category ) => ( {\n\t\t\t\t...accumulator,\n\t\t\t\t[ category.name ]: category,\n\t\t\t} ),\n\t\t\t{}\n\t\t) ?? {};\n\tconst selectCategories = ( tokens ) => {\n\t\tconst hasNoSuggestion = tokens.some(\n\t\t\t( token ) =>\n\t\t\t\ttypeof token === 'string' && ! categorySuggestions[ token ]\n\t\t);\n\t\tif ( hasNoSuggestion ) {\n\t\t\treturn;\n\t\t}\n\t\t// Categories that are already will be objects, while new additions will be strings (the name).\n\t\t// allCategories nomalizes the array so that they are all objects.\n\t\tconst allCategories = tokens.map( ( token ) => {\n\t\t\treturn typeof token === 'string'\n\t\t\t\t? categorySuggestions[ token ]\n\t\t\t\t: token;\n\t\t} );\n\t\t// We do nothing if the category is not selected\n\t\t// from suggestions.\n\t\tif ( allCategories.includes( null ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tsetAttributes( { categories: allCategories } );\n\t};\n\n\tconst hasPosts = !! latestPosts?.length;\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Post content settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Post content' ) }\n\t\t\t\t\tchecked={ displayPostContent }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostContent: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayPostContent && (\n\t\t\t\t\t<RadioControl\n\t\t\t\t\t\tlabel={ __( 'Show:' ) }\n\t\t\t\t\t\tselected={ displayPostContentRadio }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: __( 'Excerpt' ), value: 'excerpt' },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Full post' ),\n\t\t\t\t\t\t\t\tvalue: 'full_post',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayPostContentRadio: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ displayPostContent &&\n\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\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={ __( 'Max number of words in excerpt' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { excerptLength: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ MIN_EXCERPT_LENGTH }\n\t\t\t\t\t\t\tmax={ MAX_EXCERPT_LENGTH }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Post meta settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display author name' ) }\n\t\t\t\t\tchecked={ displayAuthor }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayAuthor: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display post date' ) }\n\t\t\t\t\tchecked={ displayPostDate }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostDate: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Featured image settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display featured image' ) }\n\t\t\t\t\tchecked={ displayFeaturedImage }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayFeaturedImage: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayFeaturedImage && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ImageSizeControl\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tconst newAttrs = {};\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'width' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeWidth =\n\t\t\t\t\t\t\t\t\t\tvalue.width;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'height' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeHeight =\n\t\t\t\t\t\t\t\t\t\tvalue.height;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetAttributes( newAttrs );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tslug={ featuredImageSizeSlug }\n\t\t\t\t\t\t\twidth={ featuredImageSizeWidth }\n\t\t\t\t\t\t\theight={ featuredImageSizeHeight }\n\t\t\t\t\t\t\timageWidth={ defaultImageWidth }\n\t\t\t\t\t\t\timageHeight={ defaultImageHeight }\n\t\t\t\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t\t\t\t\tonChangeImage={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeSlug: value,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeWidth: undefined,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeHeight: undefined,\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<BaseControl className=\"editor-latest-posts-image-alignment-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Image alignment' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<BlockAlignmentToolbar\n\t\t\t\t\t\t\t\tvalue={ featuredImageAlign }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfeaturedImageAlign: value,\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\tcontrols={ [ 'left', 'center', 'right' ] }\n\t\t\t\t\t\t\t\tisCollapsed={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Add link to featured image' ) }\n\t\t\t\t\t\t\tchecked={ addLinkToFeaturedImage }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taddLinkToFeaturedImage: value,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Sorting and filtering' ) }>\n\t\t\t\t<QueryControls\n\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\tnumberOfItems={ postsToShow }\n\t\t\t\t\tonOrderChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { order: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonOrderByChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { orderBy: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonNumberOfItemsChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { postsToShow: value } )\n\t\t\t\t\t}\n\t\t\t\t\tcategorySuggestions={ categorySuggestions }\n\t\t\t\t\tonCategoryChange={ selectCategories }\n\t\t\t\t\tselectedCategories={ categories }\n\t\t\t\t\tonAuthorChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tselectedAuthor:\n\t\t\t\t\t\t\t\t'' !== value ? Number( value ) : undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tauthorList={ authorList ?? [] }\n\t\t\t\t\tselectedAuthorId={ selectedAuthor }\n\t\t\t\t/>\n\n\t\t\t\t{ postLayout === 'grid' && (\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\tvalue={ columns }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { columns: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t! hasPosts\n\t\t\t\t\t\t\t\t? MAX_POSTS_COLUMNS\n\t\t\t\t\t\t\t\t: Math.min(\n\t\t\t\t\t\t\t\t\t\tMAX_POSTS_COLUMNS,\n\t\t\t\t\t\t\t\t\t\tlatestPosts.length\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'wp-block-latest-posts__list': true,\n\t\t\t'is-grid': postLayout === 'grid',\n\t\t\t'has-dates': displayPostDate,\n\t\t\t'has-author': displayAuthor,\n\t\t\t[ `columns-${ columns }` ]: postLayout === 'grid',\n\t\t} ),\n\t} );\n\n\tif ( ! hasPosts ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ inspectorControls }\n\t\t\t\t<Placeholder icon={ pin } label={ __( 'Latest Posts' ) }>\n\t\t\t\t\t{ ! Array.isArray( latestPosts ) ? (\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t__( 'No posts found.' )\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\t// Removing posts from display should be instant.\n\tconst displayPosts =\n\t\tlatestPosts.length > postsToShow\n\t\t\t? latestPosts.slice( 0, postsToShow )\n\t\t\t: latestPosts;\n\n\tconst layoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: __( 'List view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'list' } ),\n\t\t\tisActive: postLayout === 'list',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: __( 'Grid view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'grid' } ),\n\t\t\tisActive: postLayout === 'grid',\n\t\t},\n\t];\n\n\tconst dateFormat = getSettings().formats.date;\n\n\treturn (\n\t\t<div>\n\t\t\t{ inspectorControls }\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ layoutControls } />\n\t\t\t</BlockControls>\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ displayPosts.map( ( post ) => {\n\t\t\t\t\tconst titleTrimmed = post.title.rendered.trim();\n\t\t\t\t\tlet excerpt = post.excerpt.rendered;\n\t\t\t\t\tconst currentAuthor = authorList?.find(\n\t\t\t\t\t\t( author ) => author.id === post.author\n\t\t\t\t\t);\n\n\t\t\t\t\tconst excerptElement = document.createElement( 'div' );\n\t\t\t\t\texcerptElement.innerHTML = excerpt;\n\n\t\t\t\t\texcerpt =\n\t\t\t\t\t\texcerptElement.textContent ||\n\t\t\t\t\t\texcerptElement.innerText ||\n\t\t\t\t\t\t'';\n\n\t\t\t\t\tconst { url: imageSourceUrl, alt: featuredImageAlt } =\n\t\t\t\t\t\tgetFeaturedImageDetails( post, featuredImageSizeSlug );\n\t\t\t\t\tconst imageClasses = classnames( {\n\t\t\t\t\t\t'wp-block-latest-posts__featured-image': true,\n\t\t\t\t\t\t[ `align${ featuredImageAlign }` ]:\n\t\t\t\t\t\t\t!! featuredImageAlign,\n\t\t\t\t\t} );\n\t\t\t\t\tconst renderFeaturedImage =\n\t\t\t\t\t\tdisplayFeaturedImage && imageSourceUrl;\n\t\t\t\t\tconst featuredImage = renderFeaturedImage && (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ imageSourceUrl }\n\t\t\t\t\t\t\talt={ featuredImageAlt }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tmaxWidth: featuredImageSizeWidth,\n\t\t\t\t\t\t\t\tmaxHeight: featuredImageSizeHeight,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\tconst needsReadMore =\n\t\t\t\t\t\texcerptLength < excerpt.trim().split( ' ' ).length &&\n\t\t\t\t\t\tpost.excerpt.raw === '';\n\n\t\t\t\t\tconst postExcerpt = needsReadMore ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ excerpt\n\t\t\t\t\t\t\t\t.trim()\n\t\t\t\t\t\t\t\t.split( ' ', excerptLength )\n\t\t\t\t\t\t\t\t.join( ' ' ) }\n\t\t\t\t\t\t\t{ /* translators: excerpt truncation character, default … */ }\n\t\t\t\t\t\t\t{ __( ' … ' ) }\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\t\t\tonClick={ showRedirectionPreventedNotice }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Read more' ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) : (\n\t\t\t\t\t\texcerpt\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li key={ post.id }>\n\t\t\t\t\t\t\t{ renderFeaturedImage && (\n\t\t\t\t\t\t\t\t<div className={ imageClasses }>\n\t\t\t\t\t\t\t\t\t{ addLinkToFeaturedImage ? (\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-title\"\n\t\t\t\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t\t\t\t\tshowRedirectionPreventedNotice\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ featuredImage }\n\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\tfeaturedImage\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={\n\t\t\t\t\t\t\t\t\t!! titleTrimmed\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t__html: titleTrimmed,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonClick={ showRedirectionPreventedNotice }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ! titleTrimmed ? __( '(no title)' ) : null }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t{ displayAuthor && currentAuthor && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-author\">\n\t\t\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t\t\t/* translators: byline. %s: current author. */\n\t\t\t\t\t\t\t\t\t\t__( 'by %s' ),\n\t\t\t\t\t\t\t\t\t\tcurrentAuthor.name\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostDate && post.date_gmt && (\n\t\t\t\t\t\t\t\t<time\n\t\t\t\t\t\t\t\t\tdateTime={ format( 'c', post.date_gmt ) }\n\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-date\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ dateI18n( dateFormat, post.date_gmt ) }\n\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-excerpt\">\n\t\t\t\t\t\t\t\t\t\t{ postExcerpt }\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'full_post' && (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-full-content\"\n\t\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t\t\t\t\t__html: post.content.raw.trim(),\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/latest-posts/edit.js"],"names":["classnames","BaseControl","PanelBody","Placeholder","QueryControls","RadioControl","RangeControl","Spinner","ToggleControl","ToolbarGroup","__","sprintf","dateI18n","format","getSettings","InspectorControls","BlockAlignmentToolbar","BlockControls","__experimentalImageSizeControl","ImageSizeControl","useBlockProps","store","blockEditorStore","useSelect","useDispatch","pin","list","grid","coreStore","noticeStore","useInstanceId","MIN_EXCERPT_LENGTH","MAX_EXCERPT_LENGTH","MAX_POSTS_COLUMNS","CATEGORIES_LIST_QUERY","per_page","context","USERS_LIST_QUERY","has_published_posts","getFeaturedImageDetails","post","size","image","_embedded","url","media_details","sizes","source_url","alt","alt_text","LatestPostsEdit","attributes","setAttributes","instanceId","postsToShow","order","orderBy","categories","selectedAuthor","displayFeaturedImage","displayPostContentRadio","displayPostContent","displayPostDate","displayAuthor","postLayout","columns","excerptLength","featuredImageAlign","featuredImageSizeSlug","featuredImageSizeWidth","featuredImageSizeHeight","addLinkToFeaturedImage","imageSizes","latestPosts","defaultImageWidth","defaultImageHeight","categoriesList","authorList","select","getEntityRecords","getUsers","settings","catIds","length","map","cat","id","latestPostsQuery","Object","fromEntries","entries","author","orderby","_embed","filter","value","imageDimensions","width","height","createWarningNotice","removeNotice","noticeId","showRedirectionPreventedNotice","event","preventDefault","type","imageSizeOptions","slug","name","label","categorySuggestions","reduce","accumulator","category","selectCategories","tokens","hasNoSuggestion","some","token","allCategories","includes","hasPosts","inspectorControls","newAttrs","hasOwnProperty","undefined","Number","Math","min","blockProps","className","Array","isArray","displayPosts","slice","layoutControls","icon","title","onClick","isActive","dateFormat","formats","date","titleTrimmed","rendered","trim","excerpt","currentAuthor","find","excerptElement","document","createElement","innerHTML","textContent","innerText","imageSourceUrl","featuredImageAlt","imageClasses","renderFeaturedImage","featuredImage","maxWidth","maxHeight","needsReadMore","split","raw","postExcerpt","join","link","__html","date_gmt","content"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBaseControl,\n\tPanelBody,\n\tPlaceholder,\n\tQueryControls,\n\tRadioControl,\n\tRangeControl,\n\tSpinner,\n\tToggleControl,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { dateI18n, format, getSettings } from '@wordpress/date';\nimport {\n\tInspectorControls,\n\tBlockAlignmentToolbar,\n\tBlockControls,\n\t__experimentalImageSizeControl as ImageSizeControl,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { pin, list, grid } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticeStore } from '@wordpress/notices';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport {\n\tMIN_EXCERPT_LENGTH,\n\tMAX_EXCERPT_LENGTH,\n\tMAX_POSTS_COLUMNS,\n} from './constants';\n\n/**\n * Module Constants\n */\nconst CATEGORIES_LIST_QUERY = {\n\tper_page: -1,\n\tcontext: 'view',\n};\nconst USERS_LIST_QUERY = {\n\tper_page: -1,\n\thas_published_posts: [ 'post' ],\n\tcontext: 'view',\n};\n\nfunction getFeaturedImageDetails( post, size ) {\n\tconst image = post._embedded?.[ 'wp:featuredmedia' ]?.[ '0' ];\n\n\treturn {\n\t\turl:\n\t\t\timage?.media_details?.sizes?.[ size ]?.source_url ??\n\t\t\timage?.source_url,\n\t\talt: image?.alt_text,\n\t};\n}\n\nexport default function LatestPostsEdit( { attributes, setAttributes } ) {\n\tconst instanceId = useInstanceId( LatestPostsEdit );\n\tconst {\n\t\tpostsToShow,\n\t\torder,\n\t\torderBy,\n\t\tcategories,\n\t\tselectedAuthor,\n\t\tdisplayFeaturedImage,\n\t\tdisplayPostContentRadio,\n\t\tdisplayPostContent,\n\t\tdisplayPostDate,\n\t\tdisplayAuthor,\n\t\tpostLayout,\n\t\tcolumns,\n\t\texcerptLength,\n\t\tfeaturedImageAlign,\n\t\tfeaturedImageSizeSlug,\n\t\tfeaturedImageSizeWidth,\n\t\tfeaturedImageSizeHeight,\n\t\taddLinkToFeaturedImage,\n\t} = attributes;\n\tconst {\n\t\timageSizes,\n\t\tlatestPosts,\n\t\tdefaultImageWidth,\n\t\tdefaultImageHeight,\n\t\tcategoriesList,\n\t\tauthorList,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getUsers } = select( coreStore );\n\t\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\t\tconst catIds =\n\t\t\t\tcategories && categories.length > 0\n\t\t\t\t\t? categories.map( ( cat ) => cat.id )\n\t\t\t\t\t: [];\n\t\t\tconst latestPostsQuery = Object.fromEntries(\n\t\t\t\tObject.entries( {\n\t\t\t\t\tcategories: catIds,\n\t\t\t\t\tauthor: selectedAuthor,\n\t\t\t\t\torder,\n\t\t\t\t\torderby: orderBy,\n\t\t\t\t\tper_page: postsToShow,\n\t\t\t\t\t_embed: 'wp:featuredmedia',\n\t\t\t\t} ).filter( ( [ , value ] ) => typeof value !== 'undefined' )\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tdefaultImageWidth:\n\t\t\t\t\tsettings.imageDimensions?.[ featuredImageSizeSlug ]\n\t\t\t\t\t\t?.width ?? 0,\n\t\t\t\tdefaultImageHeight:\n\t\t\t\t\tsettings.imageDimensions?.[ featuredImageSizeSlug ]\n\t\t\t\t\t\t?.height ?? 0,\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tlatestPosts: getEntityRecords(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'post',\n\t\t\t\t\tlatestPostsQuery\n\t\t\t\t),\n\t\t\t\tcategoriesList: getEntityRecords(\n\t\t\t\t\t'taxonomy',\n\t\t\t\t\t'category',\n\t\t\t\t\tCATEGORIES_LIST_QUERY\n\t\t\t\t),\n\t\t\t\tauthorList: getUsers( USERS_LIST_QUERY ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tfeaturedImageSizeSlug,\n\t\t\tpostsToShow,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tcategories,\n\t\t\tselectedAuthor,\n\t\t]\n\t);\n\n\t// If a user clicks to a link prevent redirection and show a warning.\n\tconst { createWarningNotice, removeNotice } = useDispatch( noticeStore );\n\tlet noticeId;\n\tconst showRedirectionPreventedNotice = ( event ) => {\n\t\tevent.preventDefault();\n\t\t// Remove previous warning if any, to show one at a time per block.\n\t\tremoveNotice( noticeId );\n\t\tnoticeId = `block-library/core/latest-posts/redirection-prevented/${ instanceId }`;\n\t\tcreateWarningNotice( __( 'Links are disabled in the editor.' ), {\n\t\t\tid: noticeId,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => slug !== 'full' )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\tconst categorySuggestions =\n\t\tcategoriesList?.reduce(\n\t\t\t( accumulator, category ) => ( {\n\t\t\t\t...accumulator,\n\t\t\t\t[ category.name ]: category,\n\t\t\t} ),\n\t\t\t{}\n\t\t) ?? {};\n\tconst selectCategories = ( tokens ) => {\n\t\tconst hasNoSuggestion = tokens.some(\n\t\t\t( token ) =>\n\t\t\t\ttypeof token === 'string' && ! categorySuggestions[ token ]\n\t\t);\n\t\tif ( hasNoSuggestion ) {\n\t\t\treturn;\n\t\t}\n\t\t// Categories that are already will be objects, while new additions will be strings (the name).\n\t\t// allCategories nomalizes the array so that they are all objects.\n\t\tconst allCategories = tokens.map( ( token ) => {\n\t\t\treturn typeof token === 'string'\n\t\t\t\t? categorySuggestions[ token ]\n\t\t\t\t: token;\n\t\t} );\n\t\t// We do nothing if the category is not selected\n\t\t// from suggestions.\n\t\tif ( allCategories.includes( null ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tsetAttributes( { categories: allCategories } );\n\t};\n\n\tconst hasPosts = !! latestPosts?.length;\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Post content' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Post content' ) }\n\t\t\t\t\tchecked={ displayPostContent }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostContent: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayPostContent && (\n\t\t\t\t\t<RadioControl\n\t\t\t\t\t\tlabel={ __( 'Show:' ) }\n\t\t\t\t\t\tselected={ displayPostContentRadio }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: __( 'Excerpt' ), value: 'excerpt' },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Full post' ),\n\t\t\t\t\t\t\t\tvalue: 'full_post',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayPostContentRadio: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ displayPostContent &&\n\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\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={ __( 'Max number of words' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { excerptLength: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ MIN_EXCERPT_LENGTH }\n\t\t\t\t\t\t\tmax={ MAX_EXCERPT_LENGTH }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Post meta' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display author name' ) }\n\t\t\t\t\tchecked={ displayAuthor }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayAuthor: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display post date' ) }\n\t\t\t\t\tchecked={ displayPostDate }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostDate: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Featured image' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display featured image' ) }\n\t\t\t\t\tchecked={ displayFeaturedImage }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayFeaturedImage: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayFeaturedImage && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ImageSizeControl\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tconst newAttrs = {};\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'width' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeWidth =\n\t\t\t\t\t\t\t\t\t\tvalue.width;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'height' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeHeight =\n\t\t\t\t\t\t\t\t\t\tvalue.height;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetAttributes( newAttrs );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tslug={ featuredImageSizeSlug }\n\t\t\t\t\t\t\twidth={ featuredImageSizeWidth }\n\t\t\t\t\t\t\theight={ featuredImageSizeHeight }\n\t\t\t\t\t\t\timageWidth={ defaultImageWidth }\n\t\t\t\t\t\t\timageHeight={ defaultImageHeight }\n\t\t\t\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t\t\t\t\tonChangeImage={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeSlug: value,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeWidth: undefined,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeHeight: undefined,\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<BaseControl className=\"editor-latest-posts-image-alignment-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Image alignment' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<BlockAlignmentToolbar\n\t\t\t\t\t\t\t\tvalue={ featuredImageAlign }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfeaturedImageAlign: value,\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\tcontrols={ [ 'left', 'center', 'right' ] }\n\t\t\t\t\t\t\t\tisCollapsed={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BaseControl>\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={ __( 'Add link to featured image' ) }\n\t\t\t\t\t\t\tchecked={ addLinkToFeaturedImage }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taddLinkToFeaturedImage: value,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Sorting and filtering' ) }>\n\t\t\t\t<QueryControls\n\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\tnumberOfItems={ postsToShow }\n\t\t\t\t\tonOrderChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { order: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonOrderByChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { orderBy: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonNumberOfItemsChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { postsToShow: value } )\n\t\t\t\t\t}\n\t\t\t\t\tcategorySuggestions={ categorySuggestions }\n\t\t\t\t\tonCategoryChange={ selectCategories }\n\t\t\t\t\tselectedCategories={ categories }\n\t\t\t\t\tonAuthorChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tselectedAuthor:\n\t\t\t\t\t\t\t\t'' !== value ? Number( value ) : undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tauthorList={ authorList ?? [] }\n\t\t\t\t\tselectedAuthorId={ selectedAuthor }\n\t\t\t\t/>\n\n\t\t\t\t{ postLayout === 'grid' && (\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\tvalue={ columns }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { columns: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t! hasPosts\n\t\t\t\t\t\t\t\t? MAX_POSTS_COLUMNS\n\t\t\t\t\t\t\t\t: Math.min(\n\t\t\t\t\t\t\t\t\t\tMAX_POSTS_COLUMNS,\n\t\t\t\t\t\t\t\t\t\tlatestPosts.length\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'wp-block-latest-posts__list': true,\n\t\t\t'is-grid': postLayout === 'grid',\n\t\t\t'has-dates': displayPostDate,\n\t\t\t'has-author': displayAuthor,\n\t\t\t[ `columns-${ columns }` ]: postLayout === 'grid',\n\t\t} ),\n\t} );\n\n\tif ( ! hasPosts ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ inspectorControls }\n\t\t\t\t<Placeholder icon={ pin } label={ __( 'Latest Posts' ) }>\n\t\t\t\t\t{ ! Array.isArray( latestPosts ) ? (\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t__( 'No posts found.' )\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\t// Removing posts from display should be instant.\n\tconst displayPosts =\n\t\tlatestPosts.length > postsToShow\n\t\t\t? latestPosts.slice( 0, postsToShow )\n\t\t\t: latestPosts;\n\n\tconst layoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: __( 'List view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'list' } ),\n\t\t\tisActive: postLayout === 'list',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: __( 'Grid view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'grid' } ),\n\t\t\tisActive: postLayout === 'grid',\n\t\t},\n\t];\n\n\tconst dateFormat = getSettings().formats.date;\n\n\treturn (\n\t\t<div>\n\t\t\t{ inspectorControls }\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ layoutControls } />\n\t\t\t</BlockControls>\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ displayPosts.map( ( post ) => {\n\t\t\t\t\tconst titleTrimmed = post.title.rendered.trim();\n\t\t\t\t\tlet excerpt = post.excerpt.rendered;\n\t\t\t\t\tconst currentAuthor = authorList?.find(\n\t\t\t\t\t\t( author ) => author.id === post.author\n\t\t\t\t\t);\n\n\t\t\t\t\tconst excerptElement = document.createElement( 'div' );\n\t\t\t\t\texcerptElement.innerHTML = excerpt;\n\n\t\t\t\t\texcerpt =\n\t\t\t\t\t\texcerptElement.textContent ||\n\t\t\t\t\t\texcerptElement.innerText ||\n\t\t\t\t\t\t'';\n\n\t\t\t\t\tconst { url: imageSourceUrl, alt: featuredImageAlt } =\n\t\t\t\t\t\tgetFeaturedImageDetails( post, featuredImageSizeSlug );\n\t\t\t\t\tconst imageClasses = classnames( {\n\t\t\t\t\t\t'wp-block-latest-posts__featured-image': true,\n\t\t\t\t\t\t[ `align${ featuredImageAlign }` ]:\n\t\t\t\t\t\t\t!! featuredImageAlign,\n\t\t\t\t\t} );\n\t\t\t\t\tconst renderFeaturedImage =\n\t\t\t\t\t\tdisplayFeaturedImage && imageSourceUrl;\n\t\t\t\t\tconst featuredImage = renderFeaturedImage && (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ imageSourceUrl }\n\t\t\t\t\t\t\talt={ featuredImageAlt }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tmaxWidth: featuredImageSizeWidth,\n\t\t\t\t\t\t\t\tmaxHeight: featuredImageSizeHeight,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\tconst needsReadMore =\n\t\t\t\t\t\texcerptLength < excerpt.trim().split( ' ' ).length &&\n\t\t\t\t\t\tpost.excerpt.raw === '';\n\n\t\t\t\t\tconst postExcerpt = needsReadMore ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ excerpt\n\t\t\t\t\t\t\t\t.trim()\n\t\t\t\t\t\t\t\t.split( ' ', excerptLength )\n\t\t\t\t\t\t\t\t.join( ' ' ) }\n\t\t\t\t\t\t\t{ /* translators: excerpt truncation character, default … */ }\n\t\t\t\t\t\t\t{ __( ' … ' ) }\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\t\t\tonClick={ showRedirectionPreventedNotice }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Read more' ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) : (\n\t\t\t\t\t\texcerpt\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li key={ post.id }>\n\t\t\t\t\t\t\t{ renderFeaturedImage && (\n\t\t\t\t\t\t\t\t<div className={ imageClasses }>\n\t\t\t\t\t\t\t\t\t{ addLinkToFeaturedImage ? (\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-title\"\n\t\t\t\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t\t\t\t\tshowRedirectionPreventedNotice\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ featuredImage }\n\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\tfeaturedImage\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={\n\t\t\t\t\t\t\t\t\t!! titleTrimmed\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t__html: titleTrimmed,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonClick={ showRedirectionPreventedNotice }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ! titleTrimmed ? __( '(no title)' ) : null }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t{ displayAuthor && currentAuthor && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-author\">\n\t\t\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t\t\t/* translators: byline. %s: current author. */\n\t\t\t\t\t\t\t\t\t\t__( 'by %s' ),\n\t\t\t\t\t\t\t\t\t\tcurrentAuthor.name\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostDate && post.date_gmt && (\n\t\t\t\t\t\t\t\t<time\n\t\t\t\t\t\t\t\t\tdateTime={ format( 'c', post.date_gmt ) }\n\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-date\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ dateI18n( dateFormat, post.date_gmt ) }\n\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-excerpt\">\n\t\t\t\t\t\t\t\t\t\t{ postExcerpt }\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'full_post' && (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-full-content\"\n\t\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t\t\t\t\t__html: post.content.raw.trim(),\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t</div>\n\t);\n}\n"]}
@@ -190,7 +190,7 @@ class LatestPostsEdit extends Component {
190
190
  } = this.state;
191
191
  const displayExcerptPostContent = displayPostContentRadio === 'excerpt';
192
192
  return createElement(InspectorControls, null, createElement(PanelBody, {
193
- title: __('Post content settings')
193
+ title: __('Post content')
194
194
  }, createElement(ToggleControl, {
195
195
  label: __('Show post content'),
196
196
  checked: displayPostContent,
@@ -206,13 +206,13 @@ class LatestPostsEdit extends Component {
206
206
  min: MIN_EXCERPT_LENGTH,
207
207
  max: MAX_EXCERPT_LENGTH
208
208
  })), createElement(PanelBody, {
209
- title: __('Post meta settings')
209
+ title: __('Post meta')
210
210
  }, createElement(ToggleControl, {
211
211
  label: __('Display post date'),
212
212
  checked: displayPostDate,
213
213
  onChange: this.onSetDisplayPostDate
214
214
  })), createElement(PanelBody, {
215
- title: __('Featured image settings')
215
+ title: __('Featured image')
216
216
  }, createElement(ToggleControl, {
217
217
  label: __('Display featured image'),
218
218
  checked: displayFeaturedImage,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/latest-posts/edit.native.js"],"names":["TouchableWithoutFeedback","View","Text","isEmpty","Component","compose","withPreferredColorScheme","withDispatch","withSelect","__","postList","icon","InspectorControls","BlockAlignmentControl","apiFetch","Icon","PanelBody","ToggleControl","RangeControl","QueryControls","store","blocksStore","styles","MIN_EXCERPT_LENGTH","MAX_EXCERPT_LENGTH","LatestPostsEdit","constructor","arguments","state","categoriesList","onSetDisplayPostContent","bind","onSetDisplayPostContentRadio","onSetExcerptLength","onSetDisplayPostDate","onSetDisplayFeaturedImage","onSetFeaturedImageAlign","onSetAddLinkToFeaturedImage","onSetOrder","onSetOrderBy","onSetPostsToShow","onSetCategories","getInspectorControls","componentDidMount","isStillMounted","fetchRequest","path","then","setState","catch","componentWillUnmount","value","setAttributes","props","displayPostContent","displayPostContentRadio","excerptLength","displayPostDate","displayFeaturedImage","addLinkToFeaturedImage","featuredImageAlign","order","orderBy","postsToShow","categories","toString","undefined","attributes","displayExcerptPostContent","Number","__DEV__","render","blockTitle","getStylesFromColorScheme","openGeneralSidebar","isSelected","blockStyle","latestPostBlock","latestPostBlockDark","iconStyle","latestPostBlockIcon","latestPostBlockIconDark","titleStyle","latestPostBlockMessage","latestPostBlockMessageDark","latestPostBlockSubtitle","select","name","blockType","getBlockType","title","dispatch"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,wBAAT,EAAmCC,IAAnC,EAAyCC,IAAzC,QAAqD,cAArD;AACA,SAASC,OAAT,QAAwB,QAAxB;AAEA;AACA;AACA;;AACA,SAASC,SAAT,QAA0B,oBAA1B;AACA,SAASC,OAAT,EAAkBC,wBAAlB,QAAkD,oBAAlD;AACA,SAASC,YAAT,EAAuBC,UAAvB,QAAyC,iBAAzC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,QAAQ,IAAIC,IAArB,QAAiC,kBAAjC;AACA,SACCC,iBADD,EAECC,qBAFD,QAGO,yBAHP;AAIA,OAAOC,QAAP,MAAqB,sBAArB;AACA,SACCC,IADD,EAECC,SAFD,EAGCC,aAHD,EAICC,YAJD,EAKCC,aALD,QAMO,uBANP;AAOA,SAASC,KAAK,IAAIC,WAAlB,QAAqC,mBAArC;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,cAAnB;AACA,SAASC,kBAAT,EAA6BC,kBAA7B,QAAuD,aAAvD;;AAEA,MAAMC,eAAN,SAA8BrB,SAA9B,CAAwC;AACvCsB,EAAAA,WAAW,GAAG;AACb,UAAO,GAAGC,SAAV;AACA,SAAKC,KAAL,GAAa;AACZC,MAAAA,cAAc,EAAE;AADJ,KAAb;AAGA,SAAKC,uBAAL,GACC,KAAKA,uBAAL,CAA6BC,IAA7B,CAAmC,IAAnC,CADD;AAEA,SAAKC,4BAAL,GACC,KAAKA,4BAAL,CAAkCD,IAAlC,CAAwC,IAAxC,CADD;AAEA,SAAKE,kBAAL,GAA0B,KAAKA,kBAAL,CAAwBF,IAAxB,CAA8B,IAA9B,CAA1B;AACA,SAAKG,oBAAL,GAA4B,KAAKA,oBAAL,CAA0BH,IAA1B,CAAgC,IAAhC,CAA5B;AACA,SAAKI,yBAAL,GACC,KAAKA,yBAAL,CAA+BJ,IAA/B,CAAqC,IAArC,CADD;AAEA,SAAKK,uBAAL,GACC,KAAKA,uBAAL,CAA6BL,IAA7B,CAAmC,IAAnC,CADD;AAEA,SAAKM,2BAAL,GACC,KAAKA,2BAAL,CAAiCN,IAAjC,CAAuC,IAAvC,CADD;AAEA,SAAKO,UAAL,GAAkB,KAAKA,UAAL,CAAgBP,IAAhB,CAAsB,IAAtB,CAAlB;AACA,SAAKQ,YAAL,GAAoB,KAAKA,YAAL,CAAkBR,IAAlB,CAAwB,IAAxB,CAApB;AACA,SAAKS,gBAAL,GAAwB,KAAKA,gBAAL,CAAsBT,IAAtB,CAA4B,IAA5B,CAAxB;AACA,SAAKU,eAAL,GAAuB,KAAKA,eAAL,CAAqBV,IAArB,CAA2B,IAA3B,CAAvB;AACA,SAAKW,oBAAL,GAA4B,KAAKA,oBAAL,CAA0BX,IAA1B,CAAgC,IAAhC,CAA5B;AACA;;AAEDY,EAAAA,iBAAiB,GAAG;AACnB,SAAKC,cAAL,GAAsB,IAAtB;AACA,SAAKC,YAAL,GAAoB/B,QAAQ,CAAE;AAAEgC,MAAAA,IAAI,EAAE;AAAR,KAAF,CAAR,CAClBC,IADkB,CACVlB,cAAF,IAAsB;AAC5B,UAAK,KAAKe,cAAV,EAA2B;AAC1B,aAAKI,QAAL,CAAe;AACdnB,UAAAA,cAAc,EAAE1B,OAAO,CAAE0B,cAAF,CAAP,GACb,EADa,GAEbA;AAHW,SAAf;AAKA;AACD,KATkB,EAUlBoB,KAVkB,CAUX,MAAM;AACb,UAAK,KAAKL,cAAV,EAA2B;AAC1B,aAAKI,QAAL,CAAe;AAAEnB,UAAAA,cAAc,EAAE;AAAlB,SAAf;AACA;AACD,KAdkB,CAApB;AAeA;;AAEDqB,EAAAA,oBAAoB,GAAG;AACtB,SAAKN,cAAL,GAAsB,KAAtB;AACA;;AAEDd,EAAAA,uBAAuB,CAAEqB,KAAF,EAAU;AAChC,UAAM;AAAEC,MAAAA;AAAF,QAAoB,KAAKC,KAA/B;AACAD,IAAAA,aAAa,CAAE;AAAEE,MAAAA,kBAAkB,EAAEH;AAAtB,KAAF,CAAb;AACA;;AAEDnB,EAAAA,4BAA4B,CAAEmB,KAAF,EAAU;AACrC,UAAM;AAAEC,MAAAA;AAAF,QAAoB,KAAKC,KAA/B;AACAD,IAAAA,aAAa,CAAE;AACdG,MAAAA,uBAAuB,EAAEJ,KAAK,GAAG,SAAH,GAAe;AAD/B,KAAF,CAAb;AAGA;;AAEDlB,EAAAA,kBAAkB,CAAEkB,KAAF,EAAU;AAC3B,UAAM;AAAEC,MAAAA;AAAF,QAAoB,KAAKC,KAA/B;AACAD,IAAAA,aAAa,CAAE;AAAEI,MAAAA,aAAa,EAAEL;AAAjB,KAAF,CAAb;AACA;;AAEDjB,EAAAA,oBAAoB,CAAEiB,KAAF,EAAU;AAC7B,UAAM;AAAEC,MAAAA;AAAF,QAAoB,KAAKC,KAA/B;AACAD,IAAAA,aAAa,CAAE;AAAEK,MAAAA,eAAe,EAAEN;AAAnB,KAAF,CAAb;AACA;;AAEDhB,EAAAA,yBAAyB,CAAEgB,KAAF,EAAU;AAClC,UAAM;AAAEC,MAAAA;AAAF,QAAoB,KAAKC,KAA/B;AACAD,IAAAA,aAAa,CAAE;AAAEM,MAAAA,oBAAoB,EAAEP;AAAxB,KAAF,CAAb;AACA;;AAEDd,EAAAA,2BAA2B,CAAEc,KAAF,EAAU;AACpC,UAAM;AAAEC,MAAAA;AAAF,QAAoB,KAAKC,KAA/B;AACAD,IAAAA,aAAa,CAAE;AAAEO,MAAAA,sBAAsB,EAAER;AAA1B,KAAF,CAAb;AACA;;AAEDf,EAAAA,uBAAuB,CAAEe,KAAF,EAAU;AAChC,UAAM;AAAEC,MAAAA;AAAF,QAAoB,KAAKC,KAA/B;AACAD,IAAAA,aAAa,CAAE;AAAEQ,MAAAA,kBAAkB,EAAET;AAAtB,KAAF,CAAb;AACA;;AAEDb,EAAAA,UAAU,CAAEa,KAAF,EAAU;AACnB,UAAM;AAAEC,MAAAA;AAAF,QAAoB,KAAKC,KAA/B;AACAD,IAAAA,aAAa,CAAE;AAAES,MAAAA,KAAK,EAAEV;AAAT,KAAF,CAAb;AACA;;AAEDZ,EAAAA,YAAY,CAAEY,KAAF,EAAU;AACrB,UAAM;AAAEC,MAAAA;AAAF,QAAoB,KAAKC,KAA/B;AACAD,IAAAA,aAAa,CAAE;AAAEU,MAAAA,OAAO,EAAEX;AAAX,KAAF,CAAb;AACA;;AAEDX,EAAAA,gBAAgB,CAAEW,KAAF,EAAU;AACzB,UAAM;AAAEC,MAAAA;AAAF,QAAoB,KAAKC,KAA/B;AACAD,IAAAA,aAAa,CAAE;AAAEW,MAAAA,WAAW,EAAEZ;AAAf,KAAF,CAAb;AACA;;AAEDV,EAAAA,eAAe,CAAEU,KAAF,EAAU;AACxB,UAAM;AAAEC,MAAAA;AAAF,QAAoB,KAAKC,KAA/B;AACAD,IAAAA,aAAa,CAAE;AACdY,MAAAA,UAAU,EAAE,OAAOb,KAAP,GAAeA,KAAK,CAACc,QAAN,EAAf,GAAkCC;AADhC,KAAF,CAAb;AAGA;;AAEDxB,EAAAA,oBAAoB,GAAG;AACtB,UAAM;AAAEyB,MAAAA;AAAF,QAAiB,KAAKd,KAA5B;AACA,UAAM;AACLC,MAAAA,kBADK;AAELC,MAAAA,uBAFK;AAGLC,MAAAA,aAHK;AAILC,MAAAA,eAJK;AAKLC,MAAAA,oBALK;AAMLE,MAAAA,kBANK;AAOLD,MAAAA,sBAPK;AAQLE,MAAAA,KARK;AASLC,MAAAA,OATK;AAULC,MAAAA,WAVK;AAWLC,MAAAA;AAXK,QAYFG,UAZJ;AAcA,UAAM;AAAEtC,MAAAA;AAAF,QAAqB,KAAKD,KAAhC;AACA,UAAMwC,yBAAyB,GAAGb,uBAAuB,KAAK,SAA9D;AAEA,WACC,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,MAAA,KAAK,EAAG9C,EAAE,CAAE,uBAAF;AAArB,OACC,cAAC,aAAD;AACC,MAAA,KAAK,EAAGA,EAAE,CAAE,mBAAF,CADX;AAEC,MAAA,OAAO,EAAG6C,kBAFX;AAGC,MAAA,QAAQ,EAAG,KAAKxB;AAHjB,MADD,EAMGwB,kBAAkB,IACnB,cAAC,aAAD;AACC,MAAA,KAAK,EAAG7C,EAAE,CAAE,mBAAF,CADX;AAEC,MAAA,OAAO,EAAG2D,yBAFX;AAGC,MAAA,QAAQ,EAAG,KAAKpC;AAHjB,MAPF,EAaGsB,kBAAkB,IAAIc,yBAAtB,IACD,cAAC,YAAD;AACC,MAAA,KAAK,EAAG3D,EAAE,CAAE,wBAAF,CADX;AAEC,MAAA,KAAK,EAAG+C,aAFT;AAGC,MAAA,QAAQ,EAAG,KAAKvB,kBAHjB;AAIC,MAAA,GAAG,EAAGV,kBAJP;AAKC,MAAA,GAAG,EAAGC;AALP,MAdF,CADD,EAyBC,cAAC,SAAD;AAAW,MAAA,KAAK,EAAGf,EAAE,CAAE,oBAAF;AAArB,OACC,cAAC,aAAD;AACC,MAAA,KAAK,EAAGA,EAAE,CAAE,mBAAF,CADX;AAEC,MAAA,OAAO,EAAGgD,eAFX;AAGC,MAAA,QAAQ,EAAG,KAAKvB;AAHjB,MADD,CAzBD,EAiCC,cAAC,SAAD;AAAW,MAAA,KAAK,EAAGzB,EAAE,CAAE,yBAAF;AAArB,OACC,cAAC,aAAD;AACC,MAAA,KAAK,EAAGA,EAAE,CAAE,wBAAF,CADX;AAEC,MAAA,OAAO,EAAGiD,oBAFX;AAGC,MAAA,QAAQ,EAAG,KAAKvB;AAHjB,MADD,EAMGuB,oBAAoB,IACrB,8BACC,cAAC,qBAAD;AACC,MAAA,KAAK,EAAGE,kBADT;AAEC,MAAA,QAAQ,EAAG,KAAKxB,uBAFjB;AAGC,MAAA,QAAQ,EAAG,CAAE,MAAF,EAAU,QAAV,EAAoB,OAApB,CAHZ;AAIC,MAAA,oBAAoB,EAAG;AAJxB,MADD,EAOC,cAAC,aAAD;AACC,MAAA,KAAK,EAAG3B,EAAE,CAAE,4BAAF,CADX;AAEC,MAAA,OAAO,EAAGkD,sBAFX;AAGC,MAAA,QAAQ,EAAG,KAAKtB,2BAHjB;AAIC,MAAA,aAAa,EAAG;AAJjB,MAPD,CAPF,CAjCD,EAyDC,cAAC,SAAD;AAAW,MAAA,KAAK,EAAG5B,EAAE,CAAE,uBAAF;AAArB,OACC,cAAC,aAAD;AACQoD,MAAAA,KADR;AACeC,MAAAA,OADf;AAEC,MAAA,aAAa,EAAGC,WAFjB;AAGC,MAAA,cAAc,EAAGlC,cAHlB;AAIC,MAAA,kBAAkB,EACjBqC,SAAS,KAAKF,UAAd,GAA2BK,MAAM,CAAEL,UAAF,CAAjC,GAAkD,EALpD;AAOC,MAAA,aAAa,EAAG,KAAK1B,UAPtB;AAQC,MAAA,eAAe,EAAG,KAAKC,YARxB;AASC,MAAA,gBAAgB,EACf;AACA+B,MAAAA,OAAO,GAAG,KAAK7B,eAAR,GAA0ByB,SAXnC;AAaC,MAAA,qBAAqB,EAAG,KAAK1B;AAb9B,MADD,CAzDD,CADD;AA6EA;;AAED+B,EAAAA,MAAM,GAAG;AACR,UAAM;AACLC,MAAAA,UADK;AAELC,MAAAA,wBAFK;AAGLC,MAAAA,kBAHK;AAILC,MAAAA;AAJK,QAKF,KAAKtB,KALT;AAOA,UAAMuB,UAAU,GAAGH,wBAAwB,CAC1CnD,MAAM,CAACuD,eADmC,EAE1CvD,MAAM,CAACwD,mBAFmC,CAA3C;AAKA,UAAMC,SAAS,GAAGN,wBAAwB,CACzCnD,MAAM,CAAC0D,mBADkC,EAEzC1D,MAAM,CAAC2D,uBAFkC,CAA1C;AAKA,UAAMC,UAAU,GAAGT,wBAAwB,CAC1CnD,MAAM,CAAC6D,sBADmC,EAE1C7D,MAAM,CAAC8D,0BAFmC,CAA3C;AAKA,WACC,cAAC,wBAAD;AACC,MAAA,UAAU,EAAG,CAAET,UADhB;AAEC,MAAA,QAAQ,EAAG,CAAEA,UAFd;AAGC,MAAA,OAAO,EAAGD;AAHX,OAKC,cAAC,IAAD;AAAM,MAAA,KAAK,EAAGE;AAAd,OACGD,UAAU,IAAI,KAAKjC,oBAAL,EADjB,EAEC,cAAC,IAAD;AAAM,MAAA,IAAI,EAAG/B;AAAb,OAAyBoE,SAAzB,EAFD,EAGC,cAAC,IAAD;AAAM,MAAA,KAAK,EAAGG;AAAd,OAA6BV,UAA7B,CAHD,EAIC,cAAC,IAAD;AAAM,MAAA,KAAK,EAAGlD,MAAM,CAAC+D;AAArB,OACG5E,EAAE,CAAE,WAAF,CADL,CAJD,CALD,CADD;AAgBA;;AApPsC;;AAuPxC,eAAeJ,OAAO,CAAE,CACvBG,UAAU,CAAE,CAAE8E,MAAF,WAAwB;AAAA,MAAd;AAAEC,IAAAA;AAAF,GAAc;AACnC,QAAMC,SAAS,GAAGF,MAAM,CAAEjE,WAAF,CAAN,CAAsBoE,YAAtB,CAAoCF,IAApC,CAAlB;AACA,SAAO;AACNf,IAAAA,UAAU,EAAE,CAAAgB,SAAS,SAAT,IAAAA,SAAS,WAAT,YAAAA,SAAS,CAAEE,KAAX,KAAoBH;AAD1B,GAAP;AAGA,CALS,CADa,EAOvBhF,YAAY,CAAIoF,QAAF,IAAgB;AAC7B,QAAM;AAAEjB,IAAAA;AAAF,MAAyBiB,QAAQ,CAAE,gBAAF,CAAvC;AAEA,SAAO;AACNjB,IAAAA,kBAAkB,EAAE,MAAMA,kBAAkB,CAAE,iBAAF;AADtC,GAAP;AAGA,CANW,CAPW,EAcvBpE,wBAduB,CAAF,CAAP,CAeVmB,eAfU,CAAf","sourcesContent":["/**\n * External dependencies\n */\nimport { TouchableWithoutFeedback, View, Text } from 'react-native';\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { postList as icon } from '@wordpress/icons';\nimport {\n\tInspectorControls,\n\tBlockAlignmentControl,\n} from '@wordpress/block-editor';\nimport apiFetch from '@wordpress/api-fetch';\nimport {\n\tIcon,\n\tPanelBody,\n\tToggleControl,\n\tRangeControl,\n\tQueryControls,\n} from '@wordpress/components';\nimport { store as blocksStore } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport { MIN_EXCERPT_LENGTH, MAX_EXCERPT_LENGTH } from './constants';\n\nclass LatestPostsEdit extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.state = {\n\t\t\tcategoriesList: [],\n\t\t};\n\t\tthis.onSetDisplayPostContent =\n\t\t\tthis.onSetDisplayPostContent.bind( this );\n\t\tthis.onSetDisplayPostContentRadio =\n\t\t\tthis.onSetDisplayPostContentRadio.bind( this );\n\t\tthis.onSetExcerptLength = this.onSetExcerptLength.bind( this );\n\t\tthis.onSetDisplayPostDate = this.onSetDisplayPostDate.bind( this );\n\t\tthis.onSetDisplayFeaturedImage =\n\t\t\tthis.onSetDisplayFeaturedImage.bind( this );\n\t\tthis.onSetFeaturedImageAlign =\n\t\t\tthis.onSetFeaturedImageAlign.bind( this );\n\t\tthis.onSetAddLinkToFeaturedImage =\n\t\t\tthis.onSetAddLinkToFeaturedImage.bind( this );\n\t\tthis.onSetOrder = this.onSetOrder.bind( this );\n\t\tthis.onSetOrderBy = this.onSetOrderBy.bind( this );\n\t\tthis.onSetPostsToShow = this.onSetPostsToShow.bind( this );\n\t\tthis.onSetCategories = this.onSetCategories.bind( this );\n\t\tthis.getInspectorControls = this.getInspectorControls.bind( this );\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.isStillMounted = true;\n\t\tthis.fetchRequest = apiFetch( { path: '/wp/v2/categories' } )\n\t\t\t.then( ( categoriesList ) => {\n\t\t\t\tif ( this.isStillMounted ) {\n\t\t\t\t\tthis.setState( {\n\t\t\t\t\t\tcategoriesList: isEmpty( categoriesList )\n\t\t\t\t\t\t\t? []\n\t\t\t\t\t\t\t: categoriesList,\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.catch( () => {\n\t\t\t\tif ( this.isStillMounted ) {\n\t\t\t\t\tthis.setState( { categoriesList: [] } );\n\t\t\t\t}\n\t\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tthis.isStillMounted = false;\n\t}\n\n\tonSetDisplayPostContent( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { displayPostContent: value } );\n\t}\n\n\tonSetDisplayPostContentRadio( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( {\n\t\t\tdisplayPostContentRadio: value ? 'excerpt' : 'full_post',\n\t\t} );\n\t}\n\n\tonSetExcerptLength( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { excerptLength: value } );\n\t}\n\n\tonSetDisplayPostDate( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { displayPostDate: value } );\n\t}\n\n\tonSetDisplayFeaturedImage( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { displayFeaturedImage: value } );\n\t}\n\n\tonSetAddLinkToFeaturedImage( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { addLinkToFeaturedImage: value } );\n\t}\n\n\tonSetFeaturedImageAlign( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { featuredImageAlign: value } );\n\t}\n\n\tonSetOrder( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { order: value } );\n\t}\n\n\tonSetOrderBy( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { orderBy: value } );\n\t}\n\n\tonSetPostsToShow( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { postsToShow: value } );\n\t}\n\n\tonSetCategories( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( {\n\t\t\tcategories: '' !== value ? value.toString() : undefined,\n\t\t} );\n\t}\n\n\tgetInspectorControls() {\n\t\tconst { attributes } = this.props;\n\t\tconst {\n\t\t\tdisplayPostContent,\n\t\t\tdisplayPostContentRadio,\n\t\t\texcerptLength,\n\t\t\tdisplayPostDate,\n\t\t\tdisplayFeaturedImage,\n\t\t\tfeaturedImageAlign,\n\t\t\taddLinkToFeaturedImage,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tpostsToShow,\n\t\t\tcategories,\n\t\t} = attributes;\n\n\t\tconst { categoriesList } = this.state;\n\t\tconst displayExcerptPostContent = displayPostContentRadio === 'excerpt';\n\n\t\treturn (\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Post content settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Show post content' ) }\n\t\t\t\t\t\tchecked={ displayPostContent }\n\t\t\t\t\t\tonChange={ this.onSetDisplayPostContent }\n\t\t\t\t\t/>\n\t\t\t\t\t{ displayPostContent && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Only show excerpt' ) }\n\t\t\t\t\t\t\tchecked={ displayExcerptPostContent }\n\t\t\t\t\t\t\tonChange={ this.onSetDisplayPostContentRadio }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ displayPostContent && displayExcerptPostContent && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\tlabel={ __( 'Excerpt length (words)' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ this.onSetExcerptLength }\n\t\t\t\t\t\t\tmin={ MIN_EXCERPT_LENGTH }\n\t\t\t\t\t\t\tmax={ MAX_EXCERPT_LENGTH }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\n\t\t\t\t<PanelBody title={ __( 'Post meta settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display post date' ) }\n\t\t\t\t\t\tchecked={ displayPostDate }\n\t\t\t\t\t\tonChange={ this.onSetDisplayPostDate }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\n\t\t\t\t<PanelBody title={ __( 'Featured image settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display featured image' ) }\n\t\t\t\t\t\tchecked={ displayFeaturedImage }\n\t\t\t\t\t\tonChange={ this.onSetDisplayFeaturedImage }\n\t\t\t\t\t/>\n\t\t\t\t\t{ displayFeaturedImage && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<BlockAlignmentControl\n\t\t\t\t\t\t\t\tvalue={ featuredImageAlign }\n\t\t\t\t\t\t\t\tonChange={ this.onSetFeaturedImageAlign }\n\t\t\t\t\t\t\t\tcontrols={ [ 'left', 'center', 'right' ] }\n\t\t\t\t\t\t\t\tisBottomSheetControl={ true }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Add link to featured image' ) }\n\t\t\t\t\t\t\t\tchecked={ addLinkToFeaturedImage }\n\t\t\t\t\t\t\t\tonChange={ this.onSetAddLinkToFeaturedImage }\n\t\t\t\t\t\t\t\tseparatorType={ 'topFullWidth' }\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\n\t\t\t\t<PanelBody title={ __( 'Sorting and filtering' ) }>\n\t\t\t\t\t<QueryControls\n\t\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\t\tnumberOfItems={ postsToShow }\n\t\t\t\t\t\tcategoriesList={ categoriesList }\n\t\t\t\t\t\tselectedCategoryId={\n\t\t\t\t\t\t\tundefined !== categories ? Number( categories ) : ''\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonOrderChange={ this.onSetOrder }\n\t\t\t\t\t\tonOrderByChange={ this.onSetOrderBy }\n\t\t\t\t\t\tonCategoryChange={\n\t\t\t\t\t\t\t// eslint-disable-next-line no-undef\n\t\t\t\t\t\t\t__DEV__ ? this.onSetCategories : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonNumberOfItemsChange={ this.onSetPostsToShow }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tblockTitle,\n\t\t\tgetStylesFromColorScheme,\n\t\t\topenGeneralSidebar,\n\t\t\tisSelected,\n\t\t} = this.props;\n\n\t\tconst blockStyle = getStylesFromColorScheme(\n\t\t\tstyles.latestPostBlock,\n\t\t\tstyles.latestPostBlockDark\n\t\t);\n\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles.latestPostBlockIcon,\n\t\t\tstyles.latestPostBlockIconDark\n\t\t);\n\n\t\tconst titleStyle = getStylesFromColorScheme(\n\t\t\tstyles.latestPostBlockMessage,\n\t\t\tstyles.latestPostBlockMessageDark\n\t\t);\n\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\taccessible={ ! isSelected }\n\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\tonPress={ openGeneralSidebar }\n\t\t\t>\n\t\t\t\t<View style={ blockStyle }>\n\t\t\t\t\t{ isSelected && this.getInspectorControls() }\n\t\t\t\t\t<Icon icon={ icon } { ...iconStyle } />\n\t\t\t\t\t<Text style={ titleStyle }>{ blockTitle }</Text>\n\t\t\t\t\t<Text style={ styles.latestPostBlockSubtitle }>\n\t\t\t\t\t\t{ __( 'CUSTOMIZE' ) }\n\t\t\t\t\t</Text>\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select, { name } ) => {\n\t\tconst blockType = select( blocksStore ).getBlockType( name );\n\t\treturn {\n\t\t\tblockTitle: blockType?.title || name,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { openGeneralSidebar } = dispatch( 'core/edit-post' );\n\n\t\treturn {\n\t\t\topenGeneralSidebar: () => openGeneralSidebar( 'edit-post/block' ),\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( LatestPostsEdit );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/latest-posts/edit.native.js"],"names":["TouchableWithoutFeedback","View","Text","isEmpty","Component","compose","withPreferredColorScheme","withDispatch","withSelect","__","postList","icon","InspectorControls","BlockAlignmentControl","apiFetch","Icon","PanelBody","ToggleControl","RangeControl","QueryControls","store","blocksStore","styles","MIN_EXCERPT_LENGTH","MAX_EXCERPT_LENGTH","LatestPostsEdit","constructor","arguments","state","categoriesList","onSetDisplayPostContent","bind","onSetDisplayPostContentRadio","onSetExcerptLength","onSetDisplayPostDate","onSetDisplayFeaturedImage","onSetFeaturedImageAlign","onSetAddLinkToFeaturedImage","onSetOrder","onSetOrderBy","onSetPostsToShow","onSetCategories","getInspectorControls","componentDidMount","isStillMounted","fetchRequest","path","then","setState","catch","componentWillUnmount","value","setAttributes","props","displayPostContent","displayPostContentRadio","excerptLength","displayPostDate","displayFeaturedImage","addLinkToFeaturedImage","featuredImageAlign","order","orderBy","postsToShow","categories","toString","undefined","attributes","displayExcerptPostContent","Number","__DEV__","render","blockTitle","getStylesFromColorScheme","openGeneralSidebar","isSelected","blockStyle","latestPostBlock","latestPostBlockDark","iconStyle","latestPostBlockIcon","latestPostBlockIconDark","titleStyle","latestPostBlockMessage","latestPostBlockMessageDark","latestPostBlockSubtitle","select","name","blockType","getBlockType","title","dispatch"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { TouchableWithoutFeedback, View, Text } from 'react-native';\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { postList as icon } from '@wordpress/icons';\nimport {\n\tInspectorControls,\n\tBlockAlignmentControl,\n} from '@wordpress/block-editor';\nimport apiFetch from '@wordpress/api-fetch';\nimport {\n\tIcon,\n\tPanelBody,\n\tToggleControl,\n\tRangeControl,\n\tQueryControls,\n} from '@wordpress/components';\nimport { store as blocksStore } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport { MIN_EXCERPT_LENGTH, MAX_EXCERPT_LENGTH } from './constants';\n\nclass LatestPostsEdit extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.state = {\n\t\t\tcategoriesList: [],\n\t\t};\n\t\tthis.onSetDisplayPostContent =\n\t\t\tthis.onSetDisplayPostContent.bind( this );\n\t\tthis.onSetDisplayPostContentRadio =\n\t\t\tthis.onSetDisplayPostContentRadio.bind( this );\n\t\tthis.onSetExcerptLength = this.onSetExcerptLength.bind( this );\n\t\tthis.onSetDisplayPostDate = this.onSetDisplayPostDate.bind( this );\n\t\tthis.onSetDisplayFeaturedImage =\n\t\t\tthis.onSetDisplayFeaturedImage.bind( this );\n\t\tthis.onSetFeaturedImageAlign =\n\t\t\tthis.onSetFeaturedImageAlign.bind( this );\n\t\tthis.onSetAddLinkToFeaturedImage =\n\t\t\tthis.onSetAddLinkToFeaturedImage.bind( this );\n\t\tthis.onSetOrder = this.onSetOrder.bind( this );\n\t\tthis.onSetOrderBy = this.onSetOrderBy.bind( this );\n\t\tthis.onSetPostsToShow = this.onSetPostsToShow.bind( this );\n\t\tthis.onSetCategories = this.onSetCategories.bind( this );\n\t\tthis.getInspectorControls = this.getInspectorControls.bind( this );\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.isStillMounted = true;\n\t\tthis.fetchRequest = apiFetch( { path: '/wp/v2/categories' } )\n\t\t\t.then( ( categoriesList ) => {\n\t\t\t\tif ( this.isStillMounted ) {\n\t\t\t\t\tthis.setState( {\n\t\t\t\t\t\tcategoriesList: isEmpty( categoriesList )\n\t\t\t\t\t\t\t? []\n\t\t\t\t\t\t\t: categoriesList,\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.catch( () => {\n\t\t\t\tif ( this.isStillMounted ) {\n\t\t\t\t\tthis.setState( { categoriesList: [] } );\n\t\t\t\t}\n\t\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tthis.isStillMounted = false;\n\t}\n\n\tonSetDisplayPostContent( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { displayPostContent: value } );\n\t}\n\n\tonSetDisplayPostContentRadio( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( {\n\t\t\tdisplayPostContentRadio: value ? 'excerpt' : 'full_post',\n\t\t} );\n\t}\n\n\tonSetExcerptLength( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { excerptLength: value } );\n\t}\n\n\tonSetDisplayPostDate( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { displayPostDate: value } );\n\t}\n\n\tonSetDisplayFeaturedImage( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { displayFeaturedImage: value } );\n\t}\n\n\tonSetAddLinkToFeaturedImage( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { addLinkToFeaturedImage: value } );\n\t}\n\n\tonSetFeaturedImageAlign( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { featuredImageAlign: value } );\n\t}\n\n\tonSetOrder( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { order: value } );\n\t}\n\n\tonSetOrderBy( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { orderBy: value } );\n\t}\n\n\tonSetPostsToShow( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( { postsToShow: value } );\n\t}\n\n\tonSetCategories( value ) {\n\t\tconst { setAttributes } = this.props;\n\t\tsetAttributes( {\n\t\t\tcategories: '' !== value ? value.toString() : undefined,\n\t\t} );\n\t}\n\n\tgetInspectorControls() {\n\t\tconst { attributes } = this.props;\n\t\tconst {\n\t\t\tdisplayPostContent,\n\t\t\tdisplayPostContentRadio,\n\t\t\texcerptLength,\n\t\t\tdisplayPostDate,\n\t\t\tdisplayFeaturedImage,\n\t\t\tfeaturedImageAlign,\n\t\t\taddLinkToFeaturedImage,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tpostsToShow,\n\t\t\tcategories,\n\t\t} = attributes;\n\n\t\tconst { categoriesList } = this.state;\n\t\tconst displayExcerptPostContent = displayPostContentRadio === 'excerpt';\n\n\t\treturn (\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Post content' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Show post content' ) }\n\t\t\t\t\t\tchecked={ displayPostContent }\n\t\t\t\t\t\tonChange={ this.onSetDisplayPostContent }\n\t\t\t\t\t/>\n\t\t\t\t\t{ displayPostContent && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Only show excerpt' ) }\n\t\t\t\t\t\t\tchecked={ displayExcerptPostContent }\n\t\t\t\t\t\t\tonChange={ this.onSetDisplayPostContentRadio }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ displayPostContent && displayExcerptPostContent && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\tlabel={ __( 'Excerpt length (words)' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ this.onSetExcerptLength }\n\t\t\t\t\t\t\tmin={ MIN_EXCERPT_LENGTH }\n\t\t\t\t\t\t\tmax={ MAX_EXCERPT_LENGTH }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\n\t\t\t\t<PanelBody title={ __( 'Post meta' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display post date' ) }\n\t\t\t\t\t\tchecked={ displayPostDate }\n\t\t\t\t\t\tonChange={ this.onSetDisplayPostDate }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\n\t\t\t\t<PanelBody title={ __( 'Featured image' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display featured image' ) }\n\t\t\t\t\t\tchecked={ displayFeaturedImage }\n\t\t\t\t\t\tonChange={ this.onSetDisplayFeaturedImage }\n\t\t\t\t\t/>\n\t\t\t\t\t{ displayFeaturedImage && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<BlockAlignmentControl\n\t\t\t\t\t\t\t\tvalue={ featuredImageAlign }\n\t\t\t\t\t\t\t\tonChange={ this.onSetFeaturedImageAlign }\n\t\t\t\t\t\t\t\tcontrols={ [ 'left', 'center', 'right' ] }\n\t\t\t\t\t\t\t\tisBottomSheetControl={ true }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Add link to featured image' ) }\n\t\t\t\t\t\t\t\tchecked={ addLinkToFeaturedImage }\n\t\t\t\t\t\t\t\tonChange={ this.onSetAddLinkToFeaturedImage }\n\t\t\t\t\t\t\t\tseparatorType={ 'topFullWidth' }\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\n\t\t\t\t<PanelBody title={ __( 'Sorting and filtering' ) }>\n\t\t\t\t\t<QueryControls\n\t\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\t\tnumberOfItems={ postsToShow }\n\t\t\t\t\t\tcategoriesList={ categoriesList }\n\t\t\t\t\t\tselectedCategoryId={\n\t\t\t\t\t\t\tundefined !== categories ? Number( categories ) : ''\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonOrderChange={ this.onSetOrder }\n\t\t\t\t\t\tonOrderByChange={ this.onSetOrderBy }\n\t\t\t\t\t\tonCategoryChange={\n\t\t\t\t\t\t\t// eslint-disable-next-line no-undef\n\t\t\t\t\t\t\t__DEV__ ? this.onSetCategories : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonNumberOfItemsChange={ this.onSetPostsToShow }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tblockTitle,\n\t\t\tgetStylesFromColorScheme,\n\t\t\topenGeneralSidebar,\n\t\t\tisSelected,\n\t\t} = this.props;\n\n\t\tconst blockStyle = getStylesFromColorScheme(\n\t\t\tstyles.latestPostBlock,\n\t\t\tstyles.latestPostBlockDark\n\t\t);\n\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles.latestPostBlockIcon,\n\t\t\tstyles.latestPostBlockIconDark\n\t\t);\n\n\t\tconst titleStyle = getStylesFromColorScheme(\n\t\t\tstyles.latestPostBlockMessage,\n\t\t\tstyles.latestPostBlockMessageDark\n\t\t);\n\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\taccessible={ ! isSelected }\n\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\tonPress={ openGeneralSidebar }\n\t\t\t>\n\t\t\t\t<View style={ blockStyle }>\n\t\t\t\t\t{ isSelected && this.getInspectorControls() }\n\t\t\t\t\t<Icon icon={ icon } { ...iconStyle } />\n\t\t\t\t\t<Text style={ titleStyle }>{ blockTitle }</Text>\n\t\t\t\t\t<Text style={ styles.latestPostBlockSubtitle }>\n\t\t\t\t\t\t{ __( 'CUSTOMIZE' ) }\n\t\t\t\t\t</Text>\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select, { name } ) => {\n\t\tconst blockType = select( blocksStore ).getBlockType( name );\n\t\treturn {\n\t\t\tblockTitle: blockType?.title || name,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { openGeneralSidebar } = dispatch( 'core/edit-post' );\n\n\t\treturn {\n\t\t\topenGeneralSidebar: () => openGeneralSidebar( 'edit-post/block' ),\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( LatestPostsEdit );\n"]}
@@ -30,6 +30,7 @@ const OrderedListSettings = _ref => {
30
30
  value: Number.isInteger(start) ? start.toString(10) : '',
31
31
  step: "1"
32
32
  }), createElement(ToggleControl, {
33
+ __nextHasNoMarginBottom: true,
33
34
  label: __('Reverse list numbering'),
34
35
  checked: reversed || false,
35
36
  onChange: value => {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/list/ordered-list-settings.js"],"names":["__","InspectorControls","TextControl","PanelBody","ToggleControl","OrderedListSettings","setAttributes","reversed","start","value","int","parseInt","isNaN","undefined","Number","isInteger","toString"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,iBAAT,QAAkC,yBAAlC;AACA,SAASC,WAAT,EAAsBC,SAAtB,EAAiCC,aAAjC,QAAsD,uBAAtD;;AAEA,MAAMC,mBAAmB,GAAG;AAAA,MAAE;AAAEC,IAAAA,aAAF;AAAiBC,IAAAA,QAAjB;AAA2BC,IAAAA;AAA3B,GAAF;AAAA,SAC3B,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGR,EAAE,CAAE,uBAAF;AAArB,KACC,cAAC,WAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGA,EAAE,CAAE,aAAF,CAFX;AAGC,IAAA,IAAI,EAAC,QAHN;AAIC,IAAA,QAAQ,EAAKS,KAAF,IAAa;AACvB,YAAMC,GAAG,GAAGC,QAAQ,CAAEF,KAAF,EAAS,EAAT,CAApB;AAEAH,MAAAA,aAAa,CAAE;AACd;AACA;AACAE,QAAAA,KAAK,EAAEI,KAAK,CAAEF,GAAF,CAAL,GAAeG,SAAf,GAA2BH;AAHpB,OAAF,CAAb;AAKA,KAZF;AAaC,IAAA,KAAK,EAAGI,MAAM,CAACC,SAAP,CAAkBP,KAAlB,IAA4BA,KAAK,CAACQ,QAAN,CAAgB,EAAhB,CAA5B,GAAmD,EAb5D;AAcC,IAAA,IAAI,EAAC;AAdN,IADD,EAiBC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGhB,EAAE,CAAE,wBAAF,CADX;AAEC,IAAA,OAAO,EAAGO,QAAQ,IAAI,KAFvB;AAGC,IAAA,QAAQ,EAAKE,KAAF,IAAa;AACvBH,MAAAA,aAAa,CAAE;AACd;AACAC,QAAAA,QAAQ,EAAEE,KAAK,IAAII;AAFL,OAAF,CAAb;AAIA;AARF,IAjBD,CADD,CAD2B;AAAA,CAA5B;;AAiCA,eAAeR,mBAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport { TextControl, PanelBody, ToggleControl } from '@wordpress/components';\n\nconst OrderedListSettings = ( { setAttributes, reversed, start } ) => (\n\t<InspectorControls>\n\t\t<PanelBody title={ __( 'Ordered list settings' ) }>\n\t\t\t<TextControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Start value' ) }\n\t\t\t\ttype=\"number\"\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tconst int = parseInt( value, 10 );\n\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t// It should be possible to unset the value,\n\t\t\t\t\t\t// e.g. with an empty string.\n\t\t\t\t\t\tstart: isNaN( int ) ? undefined : int,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tvalue={ Number.isInteger( start ) ? start.toString( 10 ) : '' }\n\t\t\t\tstep=\"1\"\n\t\t\t/>\n\t\t\t<ToggleControl\n\t\t\t\tlabel={ __( 'Reverse list numbering' ) }\n\t\t\t\tchecked={ reversed || false }\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t// Unset the attribute if not reversed.\n\t\t\t\t\t\treversed: value || undefined,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</PanelBody>\n\t</InspectorControls>\n);\n\nexport default OrderedListSettings;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/list/ordered-list-settings.js"],"names":["__","InspectorControls","TextControl","PanelBody","ToggleControl","OrderedListSettings","setAttributes","reversed","start","value","int","parseInt","isNaN","undefined","Number","isInteger","toString"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,iBAAT,QAAkC,yBAAlC;AACA,SAASC,WAAT,EAAsBC,SAAtB,EAAiCC,aAAjC,QAAsD,uBAAtD;;AAEA,MAAMC,mBAAmB,GAAG;AAAA,MAAE;AAAEC,IAAAA,aAAF;AAAiBC,IAAAA,QAAjB;AAA2BC,IAAAA;AAA3B,GAAF;AAAA,SAC3B,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGR,EAAE,CAAE,uBAAF;AAArB,KACC,cAAC,WAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGA,EAAE,CAAE,aAAF,CAFX;AAGC,IAAA,IAAI,EAAC,QAHN;AAIC,IAAA,QAAQ,EAAKS,KAAF,IAAa;AACvB,YAAMC,GAAG,GAAGC,QAAQ,CAAEF,KAAF,EAAS,EAAT,CAApB;AAEAH,MAAAA,aAAa,CAAE;AACd;AACA;AACAE,QAAAA,KAAK,EAAEI,KAAK,CAAEF,GAAF,CAAL,GAAeG,SAAf,GAA2BH;AAHpB,OAAF,CAAb;AAKA,KAZF;AAaC,IAAA,KAAK,EAAGI,MAAM,CAACC,SAAP,CAAkBP,KAAlB,IAA4BA,KAAK,CAACQ,QAAN,CAAgB,EAAhB,CAA5B,GAAmD,EAb5D;AAcC,IAAA,IAAI,EAAC;AAdN,IADD,EAiBC,cAAC,aAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGhB,EAAE,CAAE,wBAAF,CAFX;AAGC,IAAA,OAAO,EAAGO,QAAQ,IAAI,KAHvB;AAIC,IAAA,QAAQ,EAAKE,KAAF,IAAa;AACvBH,MAAAA,aAAa,CAAE;AACd;AACAC,QAAAA,QAAQ,EAAEE,KAAK,IAAII;AAFL,OAAF,CAAb;AAIA;AATF,IAjBD,CADD,CAD2B;AAAA,CAA5B;;AAkCA,eAAeR,mBAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport { TextControl, PanelBody, ToggleControl } from '@wordpress/components';\n\nconst OrderedListSettings = ( { setAttributes, reversed, start } ) => (\n\t<InspectorControls>\n\t\t<PanelBody title={ __( 'Ordered list settings' ) }>\n\t\t\t<TextControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Start value' ) }\n\t\t\t\ttype=\"number\"\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tconst int = parseInt( value, 10 );\n\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t// It should be possible to unset the value,\n\t\t\t\t\t\t// e.g. with an empty string.\n\t\t\t\t\t\tstart: isNaN( int ) ? undefined : int,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tvalue={ Number.isInteger( start ) ? start.toString( 10 ) : '' }\n\t\t\t\tstep=\"1\"\n\t\t\t/>\n\t\t\t<ToggleControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Reverse list numbering' ) }\n\t\t\t\tchecked={ reversed || false }\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t// Unset the attribute if not reversed.\n\t\t\t\t\t\treversed: value || undefined,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</PanelBody>\n\t</InspectorControls>\n);\n\nexport default OrderedListSettings;\n"]}
@@ -73,13 +73,13 @@ export default function ListItemEdit(_ref2) {
73
73
  placeholder: placeholder || __('List'),
74
74
  onSplit: onSplit,
75
75
  onMerge: onMerge,
76
- onReplace: function (blocks) {
76
+ onReplace: onReplace ? function (blocks) {
77
77
  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
78
78
  args[_key - 1] = arguments[_key];
79
79
  }
80
80
 
81
81
  onReplace(convertToListItems(blocks), ...args);
82
- }
82
+ } : undefined
83
83
  }), innerBlocksProps.children), createElement(BlockControls, {
84
84
  group: "block"
85
85
  }, createElement(IndentUI, {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/list-item/edit.js"],"names":["RichText","useBlockProps","useInnerBlocksProps","BlockControls","isRTL","__","ToolbarButton","formatOutdent","formatOutdentRTL","formatIndentRTL","formatIndent","useMergeRefs","useEnter","useSpace","useIndentListItem","useOutdentListItem","useSplit","useMerge","useCopy","convertToListItems","IndentUI","clientId","canIndent","indentListItem","canOutdent","outdentListItem","ListItemEdit","attributes","setAttributes","onReplace","mergeBlocks","placeholder","content","blockProps","ref","innerBlocksProps","allowedBlocks","renderAppender","__unstableDisableDropZone","useEnterRef","useSpaceRef","onSplit","onMerge","nextContent","blocks","args","children"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n} from '@wordpress/block-editor';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { ToolbarButton } from '@wordpress/components';\nimport {\n\tformatOutdent,\n\tformatOutdentRTL,\n\tformatIndentRTL,\n\tformatIndent,\n} from '@wordpress/icons';\nimport { useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseEnter,\n\tuseSpace,\n\tuseIndentListItem,\n\tuseOutdentListItem,\n\tuseSplit,\n\tuseMerge,\n\tuseCopy,\n} from './hooks';\nimport { convertToListItems } from './utils';\n\nexport function IndentUI( { clientId } ) {\n\tconst [ canIndent, indentListItem ] = useIndentListItem( clientId );\n\tconst [ canOutdent, outdentListItem ] = useOutdentListItem( clientId );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatOutdentRTL : formatOutdent }\n\t\t\t\ttitle={ __( 'Outdent' ) }\n\t\t\t\tdescribedBy={ __( 'Outdent list item' ) }\n\t\t\t\tdisabled={ ! canOutdent }\n\t\t\t\tonClick={ () => outdentListItem() }\n\t\t\t/>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatIndentRTL : formatIndent }\n\t\t\t\ttitle={ __( 'Indent' ) }\n\t\t\t\tdescribedBy={ __( 'Indent list item' ) }\n\t\t\t\tisDisabled={ ! canIndent }\n\t\t\t\tonClick={ () => indentListItem() }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport default function ListItemEdit( {\n\tattributes,\n\tsetAttributes,\n\tonReplace,\n\tclientId,\n\tmergeBlocks,\n} ) {\n\tconst { placeholder, content } = attributes;\n\tconst blockProps = useBlockProps( { ref: useCopy( clientId ) } );\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: [ 'core/list' ],\n\t\trenderAppender: false,\n\t\t__unstableDisableDropZone: true,\n\t} );\n\tconst useEnterRef = useEnter( { content, clientId } );\n\tconst useSpaceRef = useSpace( clientId );\n\tconst onSplit = useSplit( clientId );\n\tconst onMerge = useMerge( clientId, mergeBlocks );\n\treturn (\n\t\t<>\n\t\t\t<li { ...innerBlocksProps }>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ useMergeRefs( [ useEnterRef, useSpaceRef ] ) }\n\t\t\t\t\tidentifier=\"content\"\n\t\t\t\t\ttagName=\"div\"\n\t\t\t\t\tonChange={ ( nextContent ) =>\n\t\t\t\t\t\tsetAttributes( { content: nextContent } )\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ content }\n\t\t\t\t\taria-label={ __( 'List text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'List' ) }\n\t\t\t\t\tonSplit={ onSplit }\n\t\t\t\t\tonMerge={ onMerge }\n\t\t\t\t\tonReplace={ ( blocks, ...args ) => {\n\t\t\t\t\t\tonReplace( convertToListItems( blocks ), ...args );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t</li>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<IndentUI clientId={ clientId } />\n\t\t\t</BlockControls>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/list-item/edit.js"],"names":["RichText","useBlockProps","useInnerBlocksProps","BlockControls","isRTL","__","ToolbarButton","formatOutdent","formatOutdentRTL","formatIndentRTL","formatIndent","useMergeRefs","useEnter","useSpace","useIndentListItem","useOutdentListItem","useSplit","useMerge","useCopy","convertToListItems","IndentUI","clientId","canIndent","indentListItem","canOutdent","outdentListItem","ListItemEdit","attributes","setAttributes","onReplace","mergeBlocks","placeholder","content","blockProps","ref","innerBlocksProps","allowedBlocks","renderAppender","__unstableDisableDropZone","useEnterRef","useSpaceRef","onSplit","onMerge","nextContent","blocks","args","undefined","children"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n} from '@wordpress/block-editor';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { ToolbarButton } from '@wordpress/components';\nimport {\n\tformatOutdent,\n\tformatOutdentRTL,\n\tformatIndentRTL,\n\tformatIndent,\n} from '@wordpress/icons';\nimport { useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseEnter,\n\tuseSpace,\n\tuseIndentListItem,\n\tuseOutdentListItem,\n\tuseSplit,\n\tuseMerge,\n\tuseCopy,\n} from './hooks';\nimport { convertToListItems } from './utils';\n\nexport function IndentUI( { clientId } ) {\n\tconst [ canIndent, indentListItem ] = useIndentListItem( clientId );\n\tconst [ canOutdent, outdentListItem ] = useOutdentListItem( clientId );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatOutdentRTL : formatOutdent }\n\t\t\t\ttitle={ __( 'Outdent' ) }\n\t\t\t\tdescribedBy={ __( 'Outdent list item' ) }\n\t\t\t\tdisabled={ ! canOutdent }\n\t\t\t\tonClick={ () => outdentListItem() }\n\t\t\t/>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatIndentRTL : formatIndent }\n\t\t\t\ttitle={ __( 'Indent' ) }\n\t\t\t\tdescribedBy={ __( 'Indent list item' ) }\n\t\t\t\tisDisabled={ ! canIndent }\n\t\t\t\tonClick={ () => indentListItem() }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport default function ListItemEdit( {\n\tattributes,\n\tsetAttributes,\n\tonReplace,\n\tclientId,\n\tmergeBlocks,\n} ) {\n\tconst { placeholder, content } = attributes;\n\tconst blockProps = useBlockProps( { ref: useCopy( clientId ) } );\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: [ 'core/list' ],\n\t\trenderAppender: false,\n\t\t__unstableDisableDropZone: true,\n\t} );\n\tconst useEnterRef = useEnter( { content, clientId } );\n\tconst useSpaceRef = useSpace( clientId );\n\tconst onSplit = useSplit( clientId );\n\tconst onMerge = useMerge( clientId, mergeBlocks );\n\treturn (\n\t\t<>\n\t\t\t<li { ...innerBlocksProps }>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ useMergeRefs( [ useEnterRef, useSpaceRef ] ) }\n\t\t\t\t\tidentifier=\"content\"\n\t\t\t\t\ttagName=\"div\"\n\t\t\t\t\tonChange={ ( nextContent ) =>\n\t\t\t\t\t\tsetAttributes( { content: nextContent } )\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ content }\n\t\t\t\t\taria-label={ __( 'List text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'List' ) }\n\t\t\t\t\tonSplit={ onSplit }\n\t\t\t\t\tonMerge={ onMerge }\n\t\t\t\t\tonReplace={\n\t\t\t\t\t\tonReplace\n\t\t\t\t\t\t\t? ( blocks, ...args ) => {\n\t\t\t\t\t\t\t\t\tonReplace(\n\t\t\t\t\t\t\t\t\t\tconvertToListItems( blocks ),\n\t\t\t\t\t\t\t\t\t\t...args\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t</li>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<IndentUI clientId={ clientId } />\n\t\t\t</BlockControls>\n\t\t</>\n\t);\n}\n"]}
@@ -127,7 +127,8 @@ export default function useOutdentListItem(clientId) {
127
127
  moveBlocksToPosition(clientIds, parentListId, getBlockRootClientId(parentListItemId), getBlockIndex(parentListItemId) + 1);
128
128
 
129
129
  if (!getBlockOrder(parentListId).length) {
130
- removeBlock(parentListId);
130
+ const shouldSelectParent = false;
131
+ removeBlock(parentListId, shouldSelectParent);
131
132
  }
132
133
  });
133
134
  }, [])];
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-outdent-list-item.js"],"names":["useCallback","useSelect","useDispatch","useRegistry","store","blockEditorStore","cloneBlock","useOutdentListItem","clientId","registry","canOutdent","innerSelect","getBlockRootClientId","getBlockName","grandParentId","grandParentName","isListItem","listItemName","moveBlocksToPosition","removeBlock","insertBlock","updateBlockListSettings","getBlockOrder","getBlockIndex","getSelectedBlockClientIds","getBlock","getBlockListSettings","getParentListItemId","id","listId","parentListItemId","clientIds","Array","isArray","length","firstClientId","parentListId","lastClientId","order","followingListItems","slice","batch","nestedListId","nestedListBlock"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch, useRegistry } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { cloneBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { name as listItemName } from '../block.json';\n\nexport default function useOutdentListItem( clientId ) {\n\tconst registry = useRegistry();\n\tconst { canOutdent } = useSelect(\n\t\t( innerSelect ) => {\n\t\t\tconst { getBlockRootClientId, getBlockName } =\n\t\t\t\tinnerSelect( blockEditorStore );\n\t\t\tconst grandParentId = getBlockRootClientId(\n\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t);\n\t\t\tconst grandParentName = getBlockName( grandParentId );\n\t\t\tconst isListItem = grandParentName === listItemName;\n\n\t\t\treturn {\n\t\t\t\tcanOutdent: isListItem,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst {\n\t\tmoveBlocksToPosition,\n\t\tremoveBlock,\n\t\tinsertBlock,\n\t\tupdateBlockListSettings,\n\t} = useDispatch( blockEditorStore );\n\tconst {\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t\tgetBlockOrder,\n\t\tgetBlockIndex,\n\t\tgetSelectedBlockClientIds,\n\t\tgetBlock,\n\t\tgetBlockListSettings,\n\t} = useSelect( blockEditorStore );\n\n\tfunction getParentListItemId( id ) {\n\t\tconst listId = getBlockRootClientId( id );\n\t\tconst parentListItemId = getBlockRootClientId( listId );\n\t\tif ( ! parentListItemId ) return;\n\t\tif ( getBlockName( parentListItemId ) !== listItemName ) return;\n\t\treturn parentListItemId;\n\t}\n\n\treturn [\n\t\tcanOutdent,\n\t\tuseCallback( ( clientIds = getSelectedBlockClientIds() ) => {\n\t\t\tif ( ! Array.isArray( clientIds ) ) {\n\t\t\t\tclientIds = [ clientIds ];\n\t\t\t}\n\n\t\t\tif ( ! clientIds.length ) return;\n\n\t\t\tconst firstClientId = clientIds[ 0 ];\n\n\t\t\t// Can't outdent if it's not a list item.\n\t\t\tif ( getBlockName( firstClientId ) !== listItemName ) return;\n\n\t\t\tconst parentListItemId = getParentListItemId( firstClientId );\n\n\t\t\t// Can't outdent if it's at the top level.\n\t\t\tif ( ! parentListItemId ) return;\n\n\t\t\tconst parentListId = getBlockRootClientId( firstClientId );\n\t\t\tconst lastClientId = clientIds[ clientIds.length - 1 ];\n\t\t\tconst order = getBlockOrder( parentListId );\n\t\t\tconst followingListItems = order.slice(\n\t\t\t\tgetBlockIndex( lastClientId ) + 1\n\t\t\t);\n\n\t\t\tregistry.batch( () => {\n\t\t\t\tif ( followingListItems.length ) {\n\t\t\t\t\tlet nestedListId = getBlockOrder( firstClientId )[ 0 ];\n\n\t\t\t\t\tif ( ! nestedListId ) {\n\t\t\t\t\t\tconst nestedListBlock = cloneBlock(\n\t\t\t\t\t\t\tgetBlock( parentListId ),\n\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\tnestedListId = nestedListBlock.clientId;\n\t\t\t\t\t\tinsertBlock( nestedListBlock, 0, firstClientId, false );\n\t\t\t\t\t\t// Immediately update the block list settings, otherwise\n\t\t\t\t\t\t// blocks can't be moved here due to canInsert checks.\n\t\t\t\t\t\tupdateBlockListSettings(\n\t\t\t\t\t\t\tnestedListId,\n\t\t\t\t\t\t\tgetBlockListSettings( parentListId )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tfollowingListItems,\n\t\t\t\t\t\tparentListId,\n\t\t\t\t\t\tnestedListId\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\tclientIds,\n\t\t\t\t\tparentListId,\n\t\t\t\t\tgetBlockRootClientId( parentListItemId ),\n\t\t\t\t\tgetBlockIndex( parentListItemId ) + 1\n\t\t\t\t);\n\t\t\t\tif ( ! getBlockOrder( parentListId ).length ) {\n\t\t\t\t\tremoveBlock( parentListId );\n\t\t\t\t}\n\t\t\t} );\n\t\t}, [] ),\n\t];\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-outdent-list-item.js"],"names":["useCallback","useSelect","useDispatch","useRegistry","store","blockEditorStore","cloneBlock","useOutdentListItem","clientId","registry","canOutdent","innerSelect","getBlockRootClientId","getBlockName","grandParentId","grandParentName","isListItem","listItemName","moveBlocksToPosition","removeBlock","insertBlock","updateBlockListSettings","getBlockOrder","getBlockIndex","getSelectedBlockClientIds","getBlock","getBlockListSettings","getParentListItemId","id","listId","parentListItemId","clientIds","Array","isArray","length","firstClientId","parentListId","lastClientId","order","followingListItems","slice","batch","nestedListId","nestedListBlock","shouldSelectParent"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch, useRegistry } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { cloneBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { name as listItemName } from '../block.json';\n\nexport default function useOutdentListItem( clientId ) {\n\tconst registry = useRegistry();\n\tconst { canOutdent } = useSelect(\n\t\t( innerSelect ) => {\n\t\t\tconst { getBlockRootClientId, getBlockName } =\n\t\t\t\tinnerSelect( blockEditorStore );\n\t\t\tconst grandParentId = getBlockRootClientId(\n\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t);\n\t\t\tconst grandParentName = getBlockName( grandParentId );\n\t\t\tconst isListItem = grandParentName === listItemName;\n\n\t\t\treturn {\n\t\t\t\tcanOutdent: isListItem,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst {\n\t\tmoveBlocksToPosition,\n\t\tremoveBlock,\n\t\tinsertBlock,\n\t\tupdateBlockListSettings,\n\t} = useDispatch( blockEditorStore );\n\tconst {\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t\tgetBlockOrder,\n\t\tgetBlockIndex,\n\t\tgetSelectedBlockClientIds,\n\t\tgetBlock,\n\t\tgetBlockListSettings,\n\t} = useSelect( blockEditorStore );\n\n\tfunction getParentListItemId( id ) {\n\t\tconst listId = getBlockRootClientId( id );\n\t\tconst parentListItemId = getBlockRootClientId( listId );\n\t\tif ( ! parentListItemId ) return;\n\t\tif ( getBlockName( parentListItemId ) !== listItemName ) return;\n\t\treturn parentListItemId;\n\t}\n\n\treturn [\n\t\tcanOutdent,\n\t\tuseCallback( ( clientIds = getSelectedBlockClientIds() ) => {\n\t\t\tif ( ! Array.isArray( clientIds ) ) {\n\t\t\t\tclientIds = [ clientIds ];\n\t\t\t}\n\n\t\t\tif ( ! clientIds.length ) return;\n\n\t\t\tconst firstClientId = clientIds[ 0 ];\n\n\t\t\t// Can't outdent if it's not a list item.\n\t\t\tif ( getBlockName( firstClientId ) !== listItemName ) return;\n\n\t\t\tconst parentListItemId = getParentListItemId( firstClientId );\n\n\t\t\t// Can't outdent if it's at the top level.\n\t\t\tif ( ! parentListItemId ) return;\n\n\t\t\tconst parentListId = getBlockRootClientId( firstClientId );\n\t\t\tconst lastClientId = clientIds[ clientIds.length - 1 ];\n\t\t\tconst order = getBlockOrder( parentListId );\n\t\t\tconst followingListItems = order.slice(\n\t\t\t\tgetBlockIndex( lastClientId ) + 1\n\t\t\t);\n\n\t\t\tregistry.batch( () => {\n\t\t\t\tif ( followingListItems.length ) {\n\t\t\t\t\tlet nestedListId = getBlockOrder( firstClientId )[ 0 ];\n\n\t\t\t\t\tif ( ! nestedListId ) {\n\t\t\t\t\t\tconst nestedListBlock = cloneBlock(\n\t\t\t\t\t\t\tgetBlock( parentListId ),\n\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\tnestedListId = nestedListBlock.clientId;\n\t\t\t\t\t\tinsertBlock( nestedListBlock, 0, firstClientId, false );\n\t\t\t\t\t\t// Immediately update the block list settings, otherwise\n\t\t\t\t\t\t// blocks can't be moved here due to canInsert checks.\n\t\t\t\t\t\tupdateBlockListSettings(\n\t\t\t\t\t\t\tnestedListId,\n\t\t\t\t\t\t\tgetBlockListSettings( parentListId )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tfollowingListItems,\n\t\t\t\t\t\tparentListId,\n\t\t\t\t\t\tnestedListId\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\tclientIds,\n\t\t\t\t\tparentListId,\n\t\t\t\t\tgetBlockRootClientId( parentListItemId ),\n\t\t\t\t\tgetBlockIndex( parentListItemId ) + 1\n\t\t\t\t);\n\t\t\t\tif ( ! getBlockOrder( parentListId ).length ) {\n\t\t\t\t\tconst shouldSelectParent = false;\n\t\t\t\t\tremoveBlock( parentListId, shouldSelectParent );\n\t\t\t\t}\n\t\t\t} );\n\t\t}, [] ),\n\t];\n}\n"]}
@@ -18,12 +18,14 @@ export default function LoginOutEdit(_ref) {
18
18
  return createElement(Fragment, null, createElement(InspectorControls, null, createElement(PanelBody, {
19
19
  title: __('Settings')
20
20
  }, createElement(ToggleControl, {
21
+ __nextHasNoMarginBottom: true,
21
22
  label: __('Display login as form'),
22
23
  checked: displayLoginAsForm,
23
24
  onChange: () => setAttributes({
24
25
  displayLoginAsForm: !displayLoginAsForm
25
26
  })
26
27
  }), createElement(ToggleControl, {
28
+ __nextHasNoMarginBottom: true,
27
29
  label: __('Redirect to current URL'),
28
30
  checked: redirectToCurrent,
29
31
  onChange: () => setAttributes({
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/loginout/edit.js"],"names":["PanelBody","ToggleControl","__","InspectorControls","useBlockProps","LoginOutEdit","attributes","setAttributes","displayLoginAsForm","redirectToCurrent","className"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,aAApB,QAAyC,uBAAzC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,iBAAT,EAA4BC,aAA5B,QAAiD,yBAAjD;AAEA,eAAe,SAASC,YAAT,OAAuD;AAAA,MAAhC;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAAgC;AACrE,QAAM;AAAEC,IAAAA,kBAAF;AAAsBC,IAAAA;AAAtB,MAA4CH,UAAlD;AAEA,SACC,8BACC,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGJ,EAAE,CAAE,UAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGA,EAAE,CAAE,uBAAF,CADX;AAEC,IAAA,OAAO,EAAGM,kBAFX;AAGC,IAAA,QAAQ,EAAG,MACVD,aAAa,CAAE;AACdC,MAAAA,kBAAkB,EAAE,CAAEA;AADR,KAAF;AAJf,IADD,EAUC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGN,EAAE,CAAE,yBAAF,CADX;AAEC,IAAA,OAAO,EAAGO,iBAFX;AAGC,IAAA,QAAQ,EAAG,MACVF,aAAa,CAAE;AACdE,MAAAA,iBAAiB,EAAE,CAAEA;AADP,KAAF;AAJf,IAVD,CADD,CADD,EAuBC,qBACML,aAAa,CAAE;AACnBM,IAAAA,SAAS,EAAE;AADQ,GAAF,CADnB,EAKC;AAAG,IAAA,IAAI,EAAC;AAAR,KAA+BR,EAAE,CAAE,SAAF,CAAjC,CALD,CAvBD,CADD;AAiCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { PanelBody, ToggleControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls, useBlockProps } from '@wordpress/block-editor';\n\nexport default function LoginOutEdit( { attributes, setAttributes } ) {\n\tconst { displayLoginAsForm, redirectToCurrent } = attributes;\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<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display login as form' ) }\n\t\t\t\t\t\tchecked={ displayLoginAsForm }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayLoginAsForm: ! displayLoginAsForm,\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\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Redirect to current URL' ) }\n\t\t\t\t\t\tchecked={ redirectToCurrent }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tredirectToCurrent: ! redirectToCurrent,\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<div\n\t\t\t\t{ ...useBlockProps( {\n\t\t\t\t\tclassName: 'logged-in',\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<a href=\"#login-pseudo-link\">{ __( 'Log out' ) }</a>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/loginout/edit.js"],"names":["PanelBody","ToggleControl","__","InspectorControls","useBlockProps","LoginOutEdit","attributes","setAttributes","displayLoginAsForm","redirectToCurrent","className"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,aAApB,QAAyC,uBAAzC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,iBAAT,EAA4BC,aAA5B,QAAiD,yBAAjD;AAEA,eAAe,SAASC,YAAT,OAAuD;AAAA,MAAhC;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAAgC;AACrE,QAAM;AAAEC,IAAAA,kBAAF;AAAsBC,IAAAA;AAAtB,MAA4CH,UAAlD;AAEA,SACC,8BACC,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGJ,EAAE,CAAE,UAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGA,EAAE,CAAE,uBAAF,CAFX;AAGC,IAAA,OAAO,EAAGM,kBAHX;AAIC,IAAA,QAAQ,EAAG,MACVD,aAAa,CAAE;AACdC,MAAAA,kBAAkB,EAAE,CAAEA;AADR,KAAF;AALf,IADD,EAWC,cAAC,aAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGN,EAAE,CAAE,yBAAF,CAFX;AAGC,IAAA,OAAO,EAAGO,iBAHX;AAIC,IAAA,QAAQ,EAAG,MACVF,aAAa,CAAE;AACdE,MAAAA,iBAAiB,EAAE,CAAEA;AADP,KAAF;AALf,IAXD,CADD,CADD,EAyBC,qBACML,aAAa,CAAE;AACnBM,IAAAA,SAAS,EAAE;AADQ,GAAF,CADnB,EAKC;AAAG,IAAA,IAAI,EAAC;AAAR,KAA+BR,EAAE,CAAE,SAAF,CAAjC,CALD,CAzBD,CADD;AAmCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { PanelBody, ToggleControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls, useBlockProps } from '@wordpress/block-editor';\n\nexport default function LoginOutEdit( { attributes, setAttributes } ) {\n\tconst { displayLoginAsForm, redirectToCurrent } = attributes;\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<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Display login as form' ) }\n\t\t\t\t\t\tchecked={ displayLoginAsForm }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayLoginAsForm: ! displayLoginAsForm,\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\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Redirect to current URL' ) }\n\t\t\t\t\t\tchecked={ redirectToCurrent }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tredirectToCurrent: ! redirectToCurrent,\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<div\n\t\t\t\t{ ...useBlockProps( {\n\t\t\t\t\tclassName: 'logged-in',\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<a href=\"#login-pseudo-link\">{ __( 'Log out' ) }</a>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
@@ -1,2 +1,12 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { _x } from '@wordpress/i18n';
1
5
  export const DEFAULT_MEDIA_SIZE_SLUG = 'full';
6
+ export const WIDTH_CONSTRAINT_PERCENTAGE = 15;
7
+ export const LINK_DESTINATION_MEDIA = 'media';
8
+ export const LINK_DESTINATION_ATTACHMENT = 'attachment';
9
+ export const TEMPLATE = [['core/paragraph', {
10
+ placeholder: _x('Content…', 'content placeholder')
11
+ }]];
2
12
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/media-text/constants.js"],"names":["DEFAULT_MEDIA_SIZE_SLUG"],"mappings":"AAAA,OAAO,MAAMA,uBAAuB,GAAG,MAAhC","sourcesContent":["export const DEFAULT_MEDIA_SIZE_SLUG = 'full';\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/media-text/constants.js"],"names":["_x","DEFAULT_MEDIA_SIZE_SLUG","WIDTH_CONSTRAINT_PERCENTAGE","LINK_DESTINATION_MEDIA","LINK_DESTINATION_ATTACHMENT","TEMPLATE","placeholder"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AAEA,OAAO,MAAMC,uBAAuB,GAAG,MAAhC;AACP,OAAO,MAAMC,2BAA2B,GAAG,EAApC;AACP,OAAO,MAAMC,sBAAsB,GAAG,OAA/B;AACP,OAAO,MAAMC,2BAA2B,GAAG,YAApC;AACP,OAAO,MAAMC,QAAQ,GAAG,CACvB,CACC,gBADD,EAEC;AACCC,EAAAA,WAAW,EAAEN,EAAE,CAAE,UAAF,EAAc,qBAAd;AADhB,CAFD,CADuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { _x } from '@wordpress/i18n';\n\nexport const DEFAULT_MEDIA_SIZE_SLUG = 'full';\nexport const WIDTH_CONSTRAINT_PERCENTAGE = 15;\nexport const LINK_DESTINATION_MEDIA = 'media';\nexport const LINK_DESTINATION_ATTACHMENT = 'attachment';\nexport const TEMPLATE = [\n\t[\n\t\t'core/paragraph',\n\t\t{\n\t\t\tplaceholder: _x( 'Content…', 'content placeholder' ),\n\t\t},\n\t],\n];\n"]}
@@ -8,7 +8,7 @@ import classnames from 'classnames';
8
8
  * WordPress dependencies
9
9
  */
10
10
 
11
- import { __, _x } from '@wordpress/i18n';
11
+ import { __ } from '@wordpress/i18n';
12
12
  import { useSelect } from '@wordpress/data';
13
13
  import { useState, useRef } from '@wordpress/element';
14
14
  import { BlockControls, BlockVerticalAlignmentControl, useInnerBlocksProps, InspectorControls, useBlockProps, __experimentalImageURLInputUI as ImageURLInputUI, __experimentalImageSizeControl as ImageSizeControl, store as blockEditorStore } from '@wordpress/block-editor';
@@ -21,22 +21,10 @@ import { store as coreStore } from '@wordpress/core-data';
21
21
  */
22
22
 
23
23
  import MediaContainer from './media-container';
24
- import { DEFAULT_MEDIA_SIZE_SLUG } from './constants';
25
- /**
26
- * Constants
27
- */
28
-
29
- const TEMPLATE = [['core/paragraph', {
30
- placeholder: _x('Content…', 'content placeholder')
31
- }]]; // this limits the resize to a safe zone to avoid making broken layouts
32
-
33
- const WIDTH_CONSTRAINT_PERCENTAGE = 15;
24
+ import { DEFAULT_MEDIA_SIZE_SLUG, WIDTH_CONSTRAINT_PERCENTAGE, LINK_DESTINATION_MEDIA, LINK_DESTINATION_ATTACHMENT, TEMPLATE } from './constants'; // this limits the resize to a safe zone to avoid making broken layouts
34
25
 
35
26
  const applyWidthConstraints = width => Math.max(WIDTH_CONSTRAINT_PERCENTAGE, Math.min(width, 100 - WIDTH_CONSTRAINT_PERCENTAGE));
36
27
 
37
- const LINK_DESTINATION_MEDIA = 'media';
38
- const LINK_DESTINATION_ATTACHMENT = 'attachment';
39
-
40
28
  function getImageSourceUrlBySizeSlug(image, slug) {
41
29
  var _image$media_details, _image$media_details$, _image$media_details$2;
42
30
 
@@ -255,12 +243,14 @@ function MediaTextEdit(_ref2) {
255
243
  const mediaTextGeneralSettings = createElement(PanelBody, {
256
244
  title: __('Settings')
257
245
  }, createElement(ToggleControl, {
246
+ __nextHasNoMarginBottom: true,
258
247
  label: __('Stack on mobile'),
259
248
  checked: isStackedOnMobile,
260
249
  onChange: () => setAttributes({
261
250
  isStackedOnMobile: !isStackedOnMobile
262
251
  })
263
252
  }), mediaType === 'image' && createElement(ToggleControl, {
253
+ __nextHasNoMarginBottom: true,
264
254
  label: __('Crop image to fill entire column'),
265
255
  checked: imageFill,
266
256
  onChange: () => setAttributes({