@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/columns/edit.js"],"names":["classnames","get","__","Notice","PanelBody","RangeControl","ToggleControl","InspectorControls","useInnerBlocksProps","BlockControls","BlockVerticalAlignmentToolbar","__experimentalBlockVariationPicker","useBlockProps","store","blockEditorStore","withDispatch","useDispatch","useSelect","createBlock","createBlocksFromInnerBlocksTemplate","blocksStore","hasExplicitPercentColumnWidths","getMappedColumnWidths","getRedistributedColumnWidths","toWidthPrecision","ALLOWED_BLOCKS","ColumnsEditContainer","attributes","setAttributes","updateAlignment","updateColumns","clientId","isStackedOnMobile","verticalAlignment","count","select","getBlockCount","classes","blockProps","className","innerBlocksProps","allowedBlocks","orientation","renderAppender","value","Math","max","ColumnsEditContainerWrapper","dispatch","ownProps","registry","updateBlockAttributes","getBlockOrder","innerBlockClientIds","forEach","innerBlockClientId","previousColumns","newColumns","replaceInnerBlocks","getBlocks","innerBlocks","hasExplicitWidths","isAddingColumn","newColumnWidth","widths","Array","from","length","map","width","slice","Placeholder","name","blockType","defaultVariation","variations","getBlockVariations","getBlockType","getDefaultBlockVariation","nextVariation","ColumnsEdit","props","hasInnerBlocks","Component"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { get } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tNotice,\n\tPanelBody,\n\tRangeControl,\n\tToggleControl,\n} from '@wordpress/components';\n\nimport {\n\tInspectorControls,\n\tuseInnerBlocksProps,\n\tBlockControls,\n\tBlockVerticalAlignmentToolbar,\n\t__experimentalBlockVariationPicker,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { withDispatch, useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tcreateBlock,\n\tcreateBlocksFromInnerBlocksTemplate,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport {\n\thasExplicitPercentColumnWidths,\n\tgetMappedColumnWidths,\n\tgetRedistributedColumnWidths,\n\ttoWidthPrecision,\n} from './utils';\n\n/**\n * Allowed blocks constant is passed to InnerBlocks precisely as specified here.\n * The contents of the array should never change.\n * The array should contain the name of each block that is allowed.\n * In columns block, the only block we allow is 'core/column'.\n *\n * @constant\n * @type {string[]}\n */\nconst ALLOWED_BLOCKS = [ 'core/column' ];\n\nfunction ColumnsEditContainer( {\n\tattributes,\n\tsetAttributes,\n\tupdateAlignment,\n\tupdateColumns,\n\tclientId,\n} ) {\n\tconst { isStackedOnMobile, verticalAlignment } = attributes;\n\n\tconst { count } = useSelect(\n\t\t( select ) => {\n\t\t\treturn {\n\t\t\t\tcount: select( blockEditorStore ).getBlockCount( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst classes = classnames( {\n\t\t[ `are-vertically-aligned-${ verticalAlignment }` ]: verticalAlignment,\n\t\t[ `is-not-stacked-on-mobile` ]: ! isStackedOnMobile,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t} );\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\torientation: 'horizontal',\n\t\trenderAppender: false,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<BlockVerticalAlignmentToolbar\n\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\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={ count }\n\t\t\t\t\t\tonChange={ ( value ) => updateColumns( count, value ) }\n\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\tmax={ Math.max( 6, count ) }\n\t\t\t\t\t/>\n\t\t\t\t\t{ count > 6 && (\n\t\t\t\t\t\t<Notice status=\"warning\" isDismissible={ false }>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'This column count exceeds the recommended amount and may cause visual breakage.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Notice>\n\t\t\t\t\t) }\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Stack on mobile' ) }\n\t\t\t\t\t\tchecked={ isStackedOnMobile }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tisStackedOnMobile: ! isStackedOnMobile,\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 { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n\nconst ColumnsEditContainerWrapper = withDispatch(\n\t( dispatch, ownProps, registry ) => ( {\n\t\t/**\n\t\t * Update all child Column blocks with a new vertical alignment setting\n\t\t * based on whatever alignment is passed in. This allows change to parent\n\t\t * to overide anything set on a individual column basis.\n\t\t *\n\t\t * @param {string} verticalAlignment the vertical alignment setting\n\t\t */\n\t\tupdateAlignment( verticalAlignment ) {\n\t\t\tconst { clientId, setAttributes } = ownProps;\n\t\t\tconst { updateBlockAttributes } = dispatch( blockEditorStore );\n\t\t\tconst { getBlockOrder } = registry.select( blockEditorStore );\n\n\t\t\t// Update own alignment.\n\t\t\tsetAttributes( { verticalAlignment } );\n\n\t\t\t// Update all child Column Blocks to match.\n\t\t\tconst innerBlockClientIds = getBlockOrder( clientId );\n\t\t\tinnerBlockClientIds.forEach( ( innerBlockClientId ) => {\n\t\t\t\tupdateBlockAttributes( innerBlockClientId, {\n\t\t\t\t\tverticalAlignment,\n\t\t\t\t} );\n\t\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * Updates the column count, including necessary revisions to child Column\n\t\t * blocks to grant required or redistribute available space.\n\t\t *\n\t\t * @param {number} previousColumns Previous column count.\n\t\t * @param {number} newColumns New column count.\n\t\t */\n\t\tupdateColumns( previousColumns, newColumns ) {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { replaceInnerBlocks } = dispatch( blockEditorStore );\n\t\t\tconst { getBlocks } = registry.select( blockEditorStore );\n\n\t\t\tlet innerBlocks = getBlocks( clientId );\n\t\t\tconst hasExplicitWidths =\n\t\t\t\thasExplicitPercentColumnWidths( innerBlocks );\n\n\t\t\t// Redistribute available width for existing inner blocks.\n\t\t\tconst isAddingColumn = newColumns > previousColumns;\n\n\t\t\tif ( isAddingColumn && hasExplicitWidths ) {\n\t\t\t\t// If adding a new column, assign width to the new column equal to\n\t\t\t\t// as if it were `1 / columns` of the total available space.\n\t\t\t\tconst newColumnWidth = toWidthPrecision( 100 / newColumns );\n\n\t\t\t\t// Redistribute in consideration of pending block insertion as\n\t\t\t\t// constraining the available working width.\n\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t100 - newColumnWidth\n\t\t\t\t);\n\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...getMappedColumnWidths( innerBlocks, widths ),\n\t\t\t\t\t...Array.from( {\n\t\t\t\t\t\tlength: newColumns - previousColumns,\n\t\t\t\t\t} ).map( () => {\n\t\t\t\t\t\treturn createBlock( 'core/column', {\n\t\t\t\t\t\t\twidth: `${ newColumnWidth }%`,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else if ( isAddingColumn ) {\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...innerBlocks,\n\t\t\t\t\t...Array.from( {\n\t\t\t\t\t\tlength: newColumns - previousColumns,\n\t\t\t\t\t} ).map( () => {\n\t\t\t\t\t\treturn createBlock( 'core/column' );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else {\n\t\t\t\t// The removed column will be the last of the inner blocks.\n\t\t\t\tinnerBlocks = innerBlocks.slice(\n\t\t\t\t\t0,\n\t\t\t\t\t-( previousColumns - newColumns )\n\t\t\t\t);\n\n\t\t\t\tif ( hasExplicitWidths ) {\n\t\t\t\t\t// Redistribute as if block is already removed.\n\t\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t\t100\n\t\t\t\t\t);\n\n\t\t\t\t\tinnerBlocks = getMappedColumnWidths( innerBlocks, widths );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treplaceInnerBlocks( clientId, innerBlocks );\n\t\t},\n\t} )\n)( ColumnsEditContainer );\n\nfunction Placeholder( { clientId, name, setAttributes } ) {\n\tconst { blockType, defaultVariation, variations } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockVariations,\n\t\t\t\tgetBlockType,\n\t\t\t\tgetDefaultBlockVariation,\n\t\t\t} = select( blocksStore );\n\n\t\t\treturn {\n\t\t\t\tblockType: getBlockType( name ),\n\t\t\t\tdefaultVariation: getDefaultBlockVariation( name, 'block' ),\n\t\t\t\tvariations: getBlockVariations( name, 'block' ),\n\t\t\t};\n\t\t},\n\t\t[ name ]\n\t);\n\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\tconst blockProps = useBlockProps();\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<__experimentalBlockVariationPicker\n\t\t\t\ticon={ get( blockType, [ 'icon', 'src' ] ) }\n\t\t\t\tlabel={ get( blockType, [ 'title' ] ) }\n\t\t\t\tvariations={ variations }\n\t\t\t\tonSelect={ ( nextVariation = defaultVariation ) => {\n\t\t\t\t\tif ( nextVariation.attributes ) {\n\t\t\t\t\t\tsetAttributes( nextVariation.attributes );\n\t\t\t\t\t}\n\t\t\t\t\tif ( nextVariation.innerBlocks ) {\n\t\t\t\t\t\treplaceInnerBlocks(\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tcreateBlocksFromInnerBlocksTemplate(\n\t\t\t\t\t\t\t\tnextVariation.innerBlocks\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t\tallowSkip\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nconst ColumnsEdit = ( props ) => {\n\tconst { clientId } = props;\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlocks( clientId ).length > 0,\n\t\t[ clientId ]\n\t);\n\tconst Component = hasInnerBlocks\n\t\t? ColumnsEditContainerWrapper\n\t\t: Placeholder;\n\n\treturn <Component { ...props } />;\n};\n\nexport default ColumnsEdit;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/columns/edit.js"],"names":["classnames","__","Notice","PanelBody","RangeControl","ToggleControl","InspectorControls","useInnerBlocksProps","BlockControls","BlockVerticalAlignmentToolbar","__experimentalBlockVariationPicker","useBlockProps","store","blockEditorStore","withDispatch","useDispatch","useSelect","createBlock","createBlocksFromInnerBlocksTemplate","blocksStore","hasExplicitPercentColumnWidths","getMappedColumnWidths","getRedistributedColumnWidths","toWidthPrecision","ALLOWED_BLOCKS","ColumnsEditContainer","attributes","setAttributes","updateAlignment","updateColumns","clientId","isStackedOnMobile","verticalAlignment","count","canInsertColumnBlock","select","getBlockCount","canInsertBlockType","classes","blockProps","className","innerBlocksProps","allowedBlocks","orientation","renderAppender","value","Math","max","ColumnsEditContainerWrapper","dispatch","ownProps","registry","updateBlockAttributes","getBlockOrder","innerBlockClientIds","forEach","innerBlockClientId","previousColumns","newColumns","replaceInnerBlocks","getBlocks","innerBlocks","hasExplicitWidths","isAddingColumn","newColumnWidth","widths","Array","from","length","map","width","slice","Placeholder","name","blockType","defaultVariation","variations","getBlockVariations","getBlockType","getDefaultBlockVariation","icon","src","title","nextVariation","ColumnsEdit","props","hasInnerBlocks","Component"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SACCC,MADD,EAECC,SAFD,EAGCC,YAHD,EAICC,aAJD,QAKO,uBALP;AAOA,SACCC,iBADD,EAECC,mBAFD,EAGCC,aAHD,EAICC,6BAJD,EAKCC,kCALD,EAMCC,aAND,EAOCC,KAAK,IAAIC,gBAPV,QAQO,yBARP;AASA,SAASC,YAAT,EAAuBC,WAAvB,EAAoCC,SAApC,QAAqD,iBAArD;AACA,SACCC,WADD,EAECC,mCAFD,EAGCN,KAAK,IAAIO,WAHV,QAIO,mBAJP;AAMA;AACA;AACA;;AACA,SACCC,8BADD,EAECC,qBAFD,EAGCC,4BAHD,EAICC,gBAJD,QAKO,SALP;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMC,cAAc,GAAG,CAAE,aAAF,CAAvB;;AAEA,SAASC,oBAAT,OAMI;AAAA,MAN2B;AAC9BC,IAAAA,UAD8B;AAE9BC,IAAAA,aAF8B;AAG9BC,IAAAA,eAH8B;AAI9BC,IAAAA,aAJ8B;AAK9BC,IAAAA;AAL8B,GAM3B;AACH,QAAM;AAAEC,IAAAA,iBAAF;AAAqBC,IAAAA;AAArB,MAA2CN,UAAjD;AAEA,QAAM;AAAEO,IAAAA,KAAF;AAASC,IAAAA;AAAT,MAAkClB,SAAS,CAC9CmB,MAAF,IAAc;AACb,WAAO;AACNF,MAAAA,KAAK,EAAEE,MAAM,CAAEtB,gBAAF,CAAN,CAA2BuB,aAA3B,CAA0CN,QAA1C,CADD;AAENI,MAAAA,oBAAoB,EAAEC,MAAM,CAC3BtB,gBAD2B,CAAN,CAEpBwB,kBAFoB,CAEA,aAFA,EAEeP,QAFf;AAFhB,KAAP;AAMA,GAR+C,EAShD,CAAEA,QAAF,CATgD,CAAjD;AAYA,QAAMQ,OAAO,GAAGtC,UAAU,CAAE;AAC3B,KAAG,0BAA0BgC,iBAAmB,EAAhD,GAAqDA,iBAD1B;AAE3B,KAAG,0BAAH,GAAgC,CAAED;AAFP,GAAF,CAA1B;AAKA,QAAMQ,UAAU,GAAG5B,aAAa,CAAE;AACjC6B,IAAAA,SAAS,EAAEF;AADsB,GAAF,CAAhC;AAGA,QAAMG,gBAAgB,GAAGlC,mBAAmB,CAAEgC,UAAF,EAAc;AACzDG,IAAAA,aAAa,EAAElB,cAD0C;AAEzDmB,IAAAA,WAAW,EAAE,YAF4C;AAGzDC,IAAAA,cAAc,EAAE;AAHyC,GAAd,CAA5C;AAMA,SACC,8BACC,cAAC,aAAD,QACC,cAAC,6BAAD;AACC,IAAA,QAAQ,EAAGhB,eADZ;AAEC,IAAA,KAAK,EAAGI;AAFT,IADD,CADD,EAOC,cAAC,iBAAD,QACC,cAAC,SAAD,QACGE,oBAAoB,IACrB,8BACC,cAAC,YAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGjC,EAAE,CAAE,SAAF,CAFX;AAGC,IAAA,KAAK,EAAGgC,KAHT;AAIC,IAAA,QAAQ,EAAKY,KAAF,IACVhB,aAAa,CAAEI,KAAF,EAASY,KAAT,CALf;AAOC,IAAA,GAAG,EAAG,CAPP;AAQC,IAAA,GAAG,EAAGC,IAAI,CAACC,GAAL,CAAU,CAAV,EAAad,KAAb;AARP,IADD,EAWGA,KAAK,GAAG,CAAR,IACD,cAAC,MAAD;AACC,IAAA,MAAM,EAAC,SADR;AAEC,IAAA,aAAa,EAAG;AAFjB,KAIGhC,EAAE,CACH,iFADG,CAJL,CAZF,CAFF,EAyBC,cAAC,aAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGA,EAAE,CAAE,iBAAF,CAFX;AAGC,IAAA,OAAO,EAAG8B,iBAHX;AAIC,IAAA,QAAQ,EAAG,MACVJ,aAAa,CAAE;AACdI,MAAAA,iBAAiB,EAAE,CAAEA;AADP,KAAF;AALf,IAzBD,CADD,CAPD,EA6CC,qBAAUU,gBAAV,CA7CD,CADD;AAiDA;;AAED,MAAMO,2BAA2B,GAAGlC,YAAY,CAC/C,CAAEmC,QAAF,EAAYC,QAAZ,EAAsBC,QAAtB,MAAsC;AACrC;AACF;AACA;AACA;AACA;AACA;AACA;AACEvB,EAAAA,eAAe,CAAEI,iBAAF,EAAsB;AACpC,UAAM;AAAEF,MAAAA,QAAF;AAAYH,MAAAA;AAAZ,QAA8BuB,QAApC;AACA,UAAM;AAAEE,MAAAA;AAAF,QAA4BH,QAAQ,CAAEpC,gBAAF,CAA1C;AACA,UAAM;AAAEwC,MAAAA;AAAF,QAAoBF,QAAQ,CAAChB,MAAT,CAAiBtB,gBAAjB,CAA1B,CAHoC,CAKpC;;AACAc,IAAAA,aAAa,CAAE;AAAEK,MAAAA;AAAF,KAAF,CAAb,CANoC,CAQpC;;AACA,UAAMsB,mBAAmB,GAAGD,aAAa,CAAEvB,QAAF,CAAzC;AACAwB,IAAAA,mBAAmB,CAACC,OAApB,CAA+BC,kBAAF,IAA0B;AACtDJ,MAAAA,qBAAqB,CAAEI,kBAAF,EAAsB;AAC1CxB,QAAAA;AAD0C,OAAtB,CAArB;AAGA,KAJD;AAKA,GAvBoC;;AAyBrC;AACF;AACA;AACA;AACA;AACA;AACA;AACEH,EAAAA,aAAa,CAAE4B,eAAF,EAAmBC,UAAnB,EAAgC;AAC5C,UAAM;AAAE5B,MAAAA;AAAF,QAAeoB,QAArB;AACA,UAAM;AAAES,MAAAA;AAAF,QAAyBV,QAAQ,CAAEpC,gBAAF,CAAvC;AACA,UAAM;AAAE+C,MAAAA;AAAF,QAAgBT,QAAQ,CAAChB,MAAT,CAAiBtB,gBAAjB,CAAtB;AAEA,QAAIgD,WAAW,GAAGD,SAAS,CAAE9B,QAAF,CAA3B;AACA,UAAMgC,iBAAiB,GACtB1C,8BAA8B,CAAEyC,WAAF,CAD/B,CAN4C,CAS5C;;AACA,UAAME,cAAc,GAAGL,UAAU,GAAGD,eAApC;;AAEA,QAAKM,cAAc,IAAID,iBAAvB,EAA2C;AAC1C;AACA;AACA,YAAME,cAAc,GAAGzC,gBAAgB,CAAE,MAAMmC,UAAR,CAAvC,CAH0C,CAK1C;AACA;;AACA,YAAMO,MAAM,GAAG3C,4BAA4B,CAC1CuC,WAD0C,EAE1C,MAAMG,cAFoC,CAA3C;AAKAH,MAAAA,WAAW,GAAG,CACb,GAAGxC,qBAAqB,CAAEwC,WAAF,EAAeI,MAAf,CADX,EAEb,GAAGC,KAAK,CAACC,IAAN,CAAY;AACdC,QAAAA,MAAM,EAAEV,UAAU,GAAGD;AADP,OAAZ,EAECY,GAFD,CAEM,MAAM;AACd,eAAOpD,WAAW,CAAE,aAAF,EAAiB;AAClCqD,UAAAA,KAAK,EAAG,GAAGN,cAAgB;AADO,SAAjB,CAAlB;AAGA,OANE,CAFU,CAAd;AAUA,KAtBD,MAsBO,IAAKD,cAAL,EAAsB;AAC5BF,MAAAA,WAAW,GAAG,CACb,GAAGA,WADU,EAEb,GAAGK,KAAK,CAACC,IAAN,CAAY;AACdC,QAAAA,MAAM,EAAEV,UAAU,GAAGD;AADP,OAAZ,EAECY,GAFD,CAEM,MAAM;AACd,eAAOpD,WAAW,CAAE,aAAF,CAAlB;AACA,OAJE,CAFU,CAAd;AAQA,KATM,MASA;AACN;AACA4C,MAAAA,WAAW,GAAGA,WAAW,CAACU,KAAZ,CACb,CADa,EAEb,EAAGd,eAAe,GAAGC,UAArB,CAFa,CAAd;;AAKA,UAAKI,iBAAL,EAAyB;AACxB;AACA,cAAMG,MAAM,GAAG3C,4BAA4B,CAC1CuC,WAD0C,EAE1C,GAF0C,CAA3C;AAKAA,QAAAA,WAAW,GAAGxC,qBAAqB,CAAEwC,WAAF,EAAeI,MAAf,CAAnC;AACA;AACD;;AAEDN,IAAAA,kBAAkB,CAAE7B,QAAF,EAAY+B,WAAZ,CAAlB;AACA;;AA9FoC,CAAtC,CAD+C,CAAZ,CAiGjCpC,oBAjGiC,CAApC;;AAmGA,SAAS+C,WAAT,QAA0D;AAAA;;AAAA,MAApC;AAAE1C,IAAAA,QAAF;AAAY2C,IAAAA,IAAZ;AAAkB9C,IAAAA;AAAlB,GAAoC;AACzD,QAAM;AAAE+C,IAAAA,SAAF;AAAaC,IAAAA,gBAAb;AAA+BC,IAAAA;AAA/B,MAA8C5D,SAAS,CAC1DmB,MAAF,IAAc;AACb,UAAM;AACL0C,MAAAA,kBADK;AAELC,MAAAA,YAFK;AAGLC,MAAAA;AAHK,QAIF5C,MAAM,CAAEhB,WAAF,CAJV;AAMA,WAAO;AACNuD,MAAAA,SAAS,EAAEI,YAAY,CAAEL,IAAF,CADjB;AAENE,MAAAA,gBAAgB,EAAEI,wBAAwB,CAAEN,IAAF,EAAQ,OAAR,CAFpC;AAGNG,MAAAA,UAAU,EAAEC,kBAAkB,CAAEJ,IAAF,EAAQ,OAAR;AAHxB,KAAP;AAKA,GAb2D,EAc5D,CAAEA,IAAF,CAd4D,CAA7D;AAgBA,QAAM;AAAEd,IAAAA;AAAF,MAAyB5C,WAAW,CAAEF,gBAAF,CAA1C;AACA,QAAM0B,UAAU,GAAG5B,aAAa,EAAhC;AAEA,SACC,qBAAU4B,UAAV,EACC,cAAC,kCAAD;AACC,IAAA,IAAI,EAAGmC,SAAH,aAAGA,SAAH,0CAAGA,SAAS,CAAEM,IAAd,oDAAG,gBAAiBC,GADzB;AAEC,IAAA,KAAK,EAAGP,SAAH,aAAGA,SAAH,uBAAGA,SAAS,CAAEQ,KAFpB;AAGC,IAAA,UAAU,EAAGN,UAHd;AAIC,IAAA,QAAQ,EAAG,YAAwC;AAAA,UAAtCO,aAAsC,uEAAtBR,gBAAsB;;AAClD,UAAKQ,aAAa,CAACzD,UAAnB,EAAgC;AAC/BC,QAAAA,aAAa,CAAEwD,aAAa,CAACzD,UAAhB,CAAb;AACA;;AACD,UAAKyD,aAAa,CAACtB,WAAnB,EAAiC;AAChCF,QAAAA,kBAAkB,CACjB7B,QADiB,EAEjBZ,mCAAmC,CAClCiE,aAAa,CAACtB,WADoB,CAFlB,EAKjB,IALiB,CAAlB;AAOA;AACD,KAjBF;AAkBC,IAAA,SAAS;AAlBV,IADD,CADD;AAwBA;;AAED,MAAMuB,WAAW,GAAKC,KAAF,IAAa;AAChC,QAAM;AAAEvD,IAAAA;AAAF,MAAeuD,KAArB;AACA,QAAMC,cAAc,GAAGtE,SAAS,CAC7BmB,MAAF,IACCA,MAAM,CAAEtB,gBAAF,CAAN,CAA2B+C,SAA3B,CAAsC9B,QAAtC,EAAiDsC,MAAjD,GAA0D,CAF5B,EAG/B,CAAEtC,QAAF,CAH+B,CAAhC;AAKA,QAAMyD,SAAS,GAAGD,cAAc,GAC7BtC,2BAD6B,GAE7BwB,WAFH;AAIA,SAAO,cAAC,SAAD,EAAgBa,KAAhB,CAAP;AACA,CAZD;;AAcA,eAAeD,WAAf","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tNotice,\n\tPanelBody,\n\tRangeControl,\n\tToggleControl,\n} from '@wordpress/components';\n\nimport {\n\tInspectorControls,\n\tuseInnerBlocksProps,\n\tBlockControls,\n\tBlockVerticalAlignmentToolbar,\n\t__experimentalBlockVariationPicker,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { withDispatch, useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tcreateBlock,\n\tcreateBlocksFromInnerBlocksTemplate,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport {\n\thasExplicitPercentColumnWidths,\n\tgetMappedColumnWidths,\n\tgetRedistributedColumnWidths,\n\ttoWidthPrecision,\n} from './utils';\n\n/**\n * Allowed blocks constant is passed to InnerBlocks precisely as specified here.\n * The contents of the array should never change.\n * The array should contain the name of each block that is allowed.\n * In columns block, the only block we allow is 'core/column'.\n *\n * @constant\n * @type {string[]}\n */\nconst ALLOWED_BLOCKS = [ 'core/column' ];\n\nfunction ColumnsEditContainer( {\n\tattributes,\n\tsetAttributes,\n\tupdateAlignment,\n\tupdateColumns,\n\tclientId,\n} ) {\n\tconst { isStackedOnMobile, verticalAlignment } = attributes;\n\n\tconst { count, canInsertColumnBlock } = useSelect(\n\t\t( select ) => {\n\t\t\treturn {\n\t\t\t\tcount: select( blockEditorStore ).getBlockCount( clientId ),\n\t\t\t\tcanInsertColumnBlock: select(\n\t\t\t\t\tblockEditorStore\n\t\t\t\t).canInsertBlockType( 'core/column', clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst classes = classnames( {\n\t\t[ `are-vertically-aligned-${ verticalAlignment }` ]: verticalAlignment,\n\t\t[ `is-not-stacked-on-mobile` ]: ! isStackedOnMobile,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t} );\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\torientation: 'horizontal',\n\t\trenderAppender: false,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<BlockVerticalAlignmentToolbar\n\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t{ canInsertColumnBlock && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\t\tvalue={ count }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tupdateColumns( count, value )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\t\tmax={ Math.max( 6, count ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ count > 6 && (\n\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\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\t\t'This column count exceeds the recommended amount and may cause visual breakage.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Notice>\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={ __( 'Stack on mobile' ) }\n\t\t\t\t\t\tchecked={ isStackedOnMobile }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tisStackedOnMobile: ! isStackedOnMobile,\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 { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n\nconst ColumnsEditContainerWrapper = withDispatch(\n\t( dispatch, ownProps, registry ) => ( {\n\t\t/**\n\t\t * Update all child Column blocks with a new vertical alignment setting\n\t\t * based on whatever alignment is passed in. This allows change to parent\n\t\t * to overide anything set on a individual column basis.\n\t\t *\n\t\t * @param {string} verticalAlignment the vertical alignment setting\n\t\t */\n\t\tupdateAlignment( verticalAlignment ) {\n\t\t\tconst { clientId, setAttributes } = ownProps;\n\t\t\tconst { updateBlockAttributes } = dispatch( blockEditorStore );\n\t\t\tconst { getBlockOrder } = registry.select( blockEditorStore );\n\n\t\t\t// Update own alignment.\n\t\t\tsetAttributes( { verticalAlignment } );\n\n\t\t\t// Update all child Column Blocks to match.\n\t\t\tconst innerBlockClientIds = getBlockOrder( clientId );\n\t\t\tinnerBlockClientIds.forEach( ( innerBlockClientId ) => {\n\t\t\t\tupdateBlockAttributes( innerBlockClientId, {\n\t\t\t\t\tverticalAlignment,\n\t\t\t\t} );\n\t\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * Updates the column count, including necessary revisions to child Column\n\t\t * blocks to grant required or redistribute available space.\n\t\t *\n\t\t * @param {number} previousColumns Previous column count.\n\t\t * @param {number} newColumns New column count.\n\t\t */\n\t\tupdateColumns( previousColumns, newColumns ) {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { replaceInnerBlocks } = dispatch( blockEditorStore );\n\t\t\tconst { getBlocks } = registry.select( blockEditorStore );\n\n\t\t\tlet innerBlocks = getBlocks( clientId );\n\t\t\tconst hasExplicitWidths =\n\t\t\t\thasExplicitPercentColumnWidths( innerBlocks );\n\n\t\t\t// Redistribute available width for existing inner blocks.\n\t\t\tconst isAddingColumn = newColumns > previousColumns;\n\n\t\t\tif ( isAddingColumn && hasExplicitWidths ) {\n\t\t\t\t// If adding a new column, assign width to the new column equal to\n\t\t\t\t// as if it were `1 / columns` of the total available space.\n\t\t\t\tconst newColumnWidth = toWidthPrecision( 100 / newColumns );\n\n\t\t\t\t// Redistribute in consideration of pending block insertion as\n\t\t\t\t// constraining the available working width.\n\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t100 - newColumnWidth\n\t\t\t\t);\n\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...getMappedColumnWidths( innerBlocks, widths ),\n\t\t\t\t\t...Array.from( {\n\t\t\t\t\t\tlength: newColumns - previousColumns,\n\t\t\t\t\t} ).map( () => {\n\t\t\t\t\t\treturn createBlock( 'core/column', {\n\t\t\t\t\t\t\twidth: `${ newColumnWidth }%`,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else if ( isAddingColumn ) {\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...innerBlocks,\n\t\t\t\t\t...Array.from( {\n\t\t\t\t\t\tlength: newColumns - previousColumns,\n\t\t\t\t\t} ).map( () => {\n\t\t\t\t\t\treturn createBlock( 'core/column' );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else {\n\t\t\t\t// The removed column will be the last of the inner blocks.\n\t\t\t\tinnerBlocks = innerBlocks.slice(\n\t\t\t\t\t0,\n\t\t\t\t\t-( previousColumns - newColumns )\n\t\t\t\t);\n\n\t\t\t\tif ( hasExplicitWidths ) {\n\t\t\t\t\t// Redistribute as if block is already removed.\n\t\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t\t100\n\t\t\t\t\t);\n\n\t\t\t\t\tinnerBlocks = getMappedColumnWidths( innerBlocks, widths );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treplaceInnerBlocks( clientId, innerBlocks );\n\t\t},\n\t} )\n)( ColumnsEditContainer );\n\nfunction Placeholder( { clientId, name, setAttributes } ) {\n\tconst { blockType, defaultVariation, variations } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockVariations,\n\t\t\t\tgetBlockType,\n\t\t\t\tgetDefaultBlockVariation,\n\t\t\t} = select( blocksStore );\n\n\t\t\treturn {\n\t\t\t\tblockType: getBlockType( name ),\n\t\t\t\tdefaultVariation: getDefaultBlockVariation( name, 'block' ),\n\t\t\t\tvariations: getBlockVariations( name, 'block' ),\n\t\t\t};\n\t\t},\n\t\t[ name ]\n\t);\n\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\tconst blockProps = useBlockProps();\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<__experimentalBlockVariationPicker\n\t\t\t\ticon={ blockType?.icon?.src }\n\t\t\t\tlabel={ blockType?.title }\n\t\t\t\tvariations={ variations }\n\t\t\t\tonSelect={ ( nextVariation = defaultVariation ) => {\n\t\t\t\t\tif ( nextVariation.attributes ) {\n\t\t\t\t\t\tsetAttributes( nextVariation.attributes );\n\t\t\t\t\t}\n\t\t\t\t\tif ( nextVariation.innerBlocks ) {\n\t\t\t\t\t\treplaceInnerBlocks(\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tcreateBlocksFromInnerBlocksTemplate(\n\t\t\t\t\t\t\t\tnextVariation.innerBlocks\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t\tallowSkip\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nconst ColumnsEdit = ( props ) => {\n\tconst { clientId } = props;\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlocks( clientId ).length > 0,\n\t\t[ clientId ]\n\t);\n\tconst Component = hasInnerBlocks\n\t\t? ColumnsEditContainerWrapper\n\t\t: Placeholder;\n\n\treturn <Component { ...props } />;\n};\n\nexport default ColumnsEdit;\n"]}
@@ -146,7 +146,7 @@ function ColumnsEditContainer(_ref) {
146
146
  __('Column %d'), index + 1);
147
147
  return createElement(UnitControl, {
148
148
  label: label,
149
- settingLabel: "Width",
149
+ settingLabel: __('Width'),
150
150
  key: `${column.clientId}-${getWidths(innerWidths).length}`,
151
151
  min: 1,
152
152
  max: isPercentageUnit(valueUnit) || !valueUnit ? 100 : undefined,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/columns/edit.native.js"],"names":["View","Dimensions","__","sprintf","PanelBody","RangeControl","FooterMessageControl","UnitControl","getValueAndUnit","GlobalStylesContext","alignmentHelpers","__experimentalUseCustomUnits","useCustomUnits","InspectorControls","InnerBlocks","BlockControls","BlockVerticalAlignmentToolbar","BlockVariationPicker","useSetting","store","blockEditorStore","withDispatch","useSelect","useEffect","useState","useContext","useMemo","useCallback","memo","useResizeObserver","createBlock","columns","variations","styles","hasExplicitPercentColumnWidths","getMappedColumnWidths","getRedistributedColumnWidths","toWidthPrecision","getWidths","getWidthWithUnit","isPercentageUnit","getColumnsInRow","calculateContainerWidth","getContentWidths","ColumnsPreview","ALLOWED_BLOCKS","DEFAULT_COLUMNS_NUM","MIN_COLUMNS_NUM","isFullWidth","ColumnsEditContainer","attributes","updateAlignment","updateColumns","columnCount","isSelected","onDeleteBlock","innerWidths","updateInnerColumnWidth","editorSidebarOpened","resizeListener","sizes","columnsInRow","setColumnsInRow","screenWidth","Math","floor","get","width","globalStyles","verticalAlignment","align","units","availableUnits","newColumnCount","renderAppender","columnAppender","onAddBlock","contentWidths","onChangeWidth","nextWidth","valueUnit","columnId","widthWithUnit","onChangeUnit","nextUnit","index","widthWithoutUnit","parseFloat","onChange","getColumnsSliders","map","column","label","clientId","length","undefined","onChangeColumnsNum","value","innerBlocksSelected","ColumnsEditContainerWrapper","dispatch","ownProps","registry","setAttributes","updateBlockAttributes","getBlockOrder","select","innerBlockClientIds","forEach","innerBlockClientId","previousColumns","newColumns","replaceInnerBlocks","getBlocks","getBlockAttributes","innerBlocks","hasExplicitWidths","isAddingColumn","newColumnWidth","widths","Array","from","slice","onAddNextColumn","selectBlock","insertedBlock","removeBlock","ColumnsEdit","props","style","isDefaultColumns","hasParents","parentBlockAlignment","getBlockCount","getBlockParents","isEditorSidebarOpened","innerBlocksList","isContentEmpty","every","innerBlock","parents","inn","isVisible","setIsVisible","revealTimeout","setTimeout","clearTimeout","onClose"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View, Dimensions } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\tRangeControl,\n\tFooterMessageControl,\n\tUnitControl,\n\tgetValueAndUnit,\n\tGlobalStylesContext,\n\talignmentHelpers,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tInnerBlocks,\n\tBlockControls,\n\tBlockVerticalAlignmentToolbar,\n\tBlockVariationPicker,\n\tuseSetting,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { withDispatch, useSelect } from '@wordpress/data';\nimport {\n\tuseEffect,\n\tuseState,\n\tuseContext,\n\tuseMemo,\n\tuseCallback,\n\tmemo,\n} from '@wordpress/element';\nimport { useResizeObserver } from '@wordpress/compose';\nimport { createBlock } from '@wordpress/blocks';\nimport { columns } from '@wordpress/icons';\n/**\n * Internal dependencies\n */\nimport variations from './variations';\nimport styles from './editor.scss';\nimport {\n\thasExplicitPercentColumnWidths,\n\tgetMappedColumnWidths,\n\tgetRedistributedColumnWidths,\n\ttoWidthPrecision,\n\tgetWidths,\n\tgetWidthWithUnit,\n\tisPercentageUnit,\n} from './utils';\nimport {\n\tgetColumnsInRow,\n\tcalculateContainerWidth,\n\tgetContentWidths,\n} from './columnCalculations.native';\nimport ColumnsPreview from '../column/column-preview';\n\n/**\n * Allowed blocks constant is passed to InnerBlocks precisely as specified here.\n * The contents of the array should never change.\n * The array should contain the name of each block that is allowed.\n * In columns block, the only block we allow is 'core/column'.\n *\n * @constant\n * @type {string[]}\n */\nconst ALLOWED_BLOCKS = [ 'core/column' ];\n\n/**\n * Number of columns to assume for template in case the user opts to skip\n * template option selection.\n *\n * @type {number}\n */\nconst DEFAULT_COLUMNS_NUM = 2;\n\n/**\n * Minimum number of columns in a row\n *\n * @type {number}\n */\nconst MIN_COLUMNS_NUM = 1;\n\nconst { isFullWidth } = alignmentHelpers;\n\nfunction ColumnsEditContainer( {\n\tattributes,\n\tupdateAlignment,\n\tupdateColumns,\n\tcolumnCount,\n\tisSelected,\n\tonDeleteBlock,\n\tinnerWidths,\n\tupdateInnerColumnWidth,\n\teditorSidebarOpened,\n} ) {\n\tconst [ resizeListener, sizes ] = useResizeObserver();\n\tconst [ columnsInRow, setColumnsInRow ] = useState( MIN_COLUMNS_NUM );\n\tconst screenWidth = Math.floor( Dimensions.get( 'window' ).width );\n\tconst globalStyles = useContext( GlobalStylesContext );\n\n\tconst { verticalAlignment, align } = attributes;\n\tconst { width } = sizes || {};\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'%',\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t],\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( columnCount === 0 ) {\n\t\t\tconst newColumnCount = columnCount || DEFAULT_COLUMNS_NUM;\n\t\t\tupdateColumns( columnCount, newColumnCount );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( width ) {\n\t\t\tif ( getColumnsInRow( width, columnCount ) !== columnsInRow ) {\n\t\t\t\tsetColumnsInRow( getColumnsInRow( width, columnCount ) );\n\t\t\t}\n\t\t}\n\t}, [ width, columnCount ] );\n\n\tconst renderAppender = () => {\n\t\tif ( isSelected ) {\n\t\t\treturn (\n\t\t\t\t<View style={ isFullWidth( align ) && styles.columnAppender }>\n\t\t\t\t\t<InnerBlocks.ButtonBlockAppender\n\t\t\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t};\n\n\tconst contentWidths = useMemo(\n\t\t() =>\n\t\t\tgetContentWidths(\n\t\t\t\tcolumnsInRow,\n\t\t\t\twidth,\n\t\t\t\tcolumnCount,\n\t\t\t\tinnerWidths,\n\t\t\t\tglobalStyles\n\t\t\t),\n\t\t[ width, columnsInRow, columnCount, innerWidths, globalStyles ]\n\t);\n\n\tconst onAddBlock = useCallback( () => {\n\t\tupdateColumns( columnCount, columnCount + 1 );\n\t}, [ columnCount ] );\n\n\tconst onChangeWidth = ( nextWidth, valueUnit, columnId ) => {\n\t\tconst widthWithUnit = getWidthWithUnit( nextWidth, valueUnit );\n\n\t\tupdateInnerColumnWidth( widthWithUnit, columnId );\n\t};\n\n\tconst onChangeUnit = ( nextUnit, index, columnId ) => {\n\t\tconst widthWithoutUnit = parseFloat(\n\t\t\tgetWidths( innerWidths )[ index ]\n\t\t);\n\t\tconst widthWithUnit = getWidthWithUnit( widthWithoutUnit, nextUnit );\n\n\t\tupdateInnerColumnWidth( widthWithUnit, columnId );\n\t};\n\n\tconst onChange = ( nextWidth, valueUnit, columnId ) => {\n\t\tif ( isPercentageUnit( valueUnit ) || ! valueUnit ) {\n\t\t\treturn;\n\t\t}\n\t\tonChangeWidth( nextWidth, valueUnit, columnId );\n\t};\n\n\tconst getColumnsSliders = useMemo( () => {\n\t\tif ( ! editorSidebarOpened || ! isSelected ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn innerWidths.map( ( column, index ) => {\n\t\t\tconst { valueUnit = '%' } =\n\t\t\t\tgetValueAndUnit( column.attributes.width ) || {};\n\t\t\tconst label = sprintf(\n\t\t\t\t/* translators: %d: column index. */\n\t\t\t\t__( 'Column %d' ),\n\t\t\t\tindex + 1\n\t\t\t);\n\t\t\treturn (\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tsettingLabel=\"Width\"\n\t\t\t\t\tkey={ `${ column.clientId }-${\n\t\t\t\t\t\tgetWidths( innerWidths ).length\n\t\t\t\t\t}` }\n\t\t\t\t\tmin={ 1 }\n\t\t\t\t\tmax={\n\t\t\t\t\t\tisPercentageUnit( valueUnit ) || ! valueUnit\n\t\t\t\t\t\t\t? 100\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ getWidths( innerWidths )[ index ] }\n\t\t\t\t\tonChange={ ( nextWidth ) => {\n\t\t\t\t\t\tonChange( nextWidth, valueUnit, column.clientId );\n\t\t\t\t\t} }\n\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\tonChangeUnit( nextUnit, index, column.clientId )\n\t\t\t\t\t}\n\t\t\t\t\tonComplete={ ( nextWidth ) => {\n\t\t\t\t\t\tonChangeWidth( nextWidth, valueUnit, column.clientId );\n\t\t\t\t\t} }\n\t\t\t\t\tunit={ valueUnit }\n\t\t\t\t\tunits={ units }\n\t\t\t\t\tpreview={\n\t\t\t\t\t\t<ColumnsPreview\n\t\t\t\t\t\t\tcolumnWidths={ getWidths( innerWidths, false ) }\n\t\t\t\t\t\t\tselectedColumnIndex={ index }\n\t\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t);\n\t\t} );\n\t}, [ editorSidebarOpened, isSelected, innerWidths ] );\n\n\tconst onChangeColumnsNum = useCallback(\n\t\t( value ) => {\n\t\t\tupdateColumns( columnCount, value );\n\t\t},\n\t\t[ columnCount ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<InspectorControls>\n\t\t\t\t\t\t<PanelBody title={ __( 'Columns Settings' ) }>\n\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Number of columns' ) }\n\t\t\t\t\t\t\t\ticon={ columns }\n\t\t\t\t\t\t\t\tvalue={ columnCount }\n\t\t\t\t\t\t\t\tonChange={ onChangeColumnsNum }\n\t\t\t\t\t\t\t\tmin={ MIN_COLUMNS_NUM }\n\t\t\t\t\t\t\t\tmax={ columnCount + 1 }\n\t\t\t\t\t\t\t\ttype=\"stepper\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ getColumnsSliders }\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t\t<FooterMessageControl\n\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t'Note: Column layout may vary between themes and screen sizes'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<BlockVerticalAlignmentToolbar\n\t\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<View style={ isSelected && styles.innerBlocksSelected }>\n\t\t\t\t{ resizeListener }\n\t\t\t\t{ width && (\n\t\t\t\t\t<InnerBlocks\n\t\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\t\torientation={\n\t\t\t\t\t\t\tcolumnsInRow > 1 ? 'horizontal' : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\thorizontal={ columnsInRow > 1 }\n\t\t\t\t\t\tallowedBlocks={ ALLOWED_BLOCKS }\n\t\t\t\t\t\tcontentResizeMode=\"stretch\"\n\t\t\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\t\t\tonDeleteBlock={\n\t\t\t\t\t\t\tcolumnCount === 1 ? onDeleteBlock : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tblockWidth={ width }\n\t\t\t\t\t\tcontentStyle={ contentWidths }\n\t\t\t\t\t\tparentWidth={\n\t\t\t\t\t\t\tisFullWidth( align ) && columnCount === 0\n\t\t\t\t\t\t\t\t? screenWidth\n\t\t\t\t\t\t\t\t: calculateContainerWidth( width, columnsInRow )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t</>\n\t);\n}\n\nconst ColumnsEditContainerWrapper = withDispatch(\n\t( dispatch, ownProps, registry ) => ( {\n\t\t/**\n\t\t * Update all child Column blocks with a new vertical alignment setting\n\t\t * based on whatever alignment is passed in. This allows change to parent\n\t\t * to overide anything set on a individual column basis.\n\t\t *\n\t\t * @param {string} verticalAlignment the vertical alignment setting\n\t\t */\n\t\tupdateAlignment( verticalAlignment ) {\n\t\t\tconst { clientId, setAttributes } = ownProps;\n\t\t\tconst { updateBlockAttributes } = dispatch( blockEditorStore );\n\t\t\tconst { getBlockOrder } = registry.select( blockEditorStore );\n\n\t\t\t// Update own alignment.\n\t\t\tsetAttributes( { verticalAlignment } );\n\n\t\t\t// Update all child Column Blocks to match.\n\t\t\tconst innerBlockClientIds = getBlockOrder( clientId );\n\t\t\tinnerBlockClientIds.forEach( ( innerBlockClientId ) => {\n\t\t\t\tupdateBlockAttributes( innerBlockClientId, {\n\t\t\t\t\tverticalAlignment,\n\t\t\t\t} );\n\t\t\t} );\n\t\t},\n\t\tupdateInnerColumnWidth( value, columnId ) {\n\t\t\tconst { updateBlockAttributes } = dispatch( blockEditorStore );\n\n\t\t\tupdateBlockAttributes( columnId, {\n\t\t\t\twidth: value,\n\t\t\t} );\n\t\t},\n\t\t/**\n\t\t * Updates the column columnCount, including necessary revisions to child Column\n\t\t * blocks to grant required or redistribute available space.\n\t\t *\n\t\t * @param {number} previousColumns Previous column columnCount.\n\t\t * @param {number} newColumns New column columnCount.\n\t\t */\n\t\tupdateColumns( previousColumns, newColumns ) {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { replaceInnerBlocks } = dispatch( blockEditorStore );\n\t\t\tconst { getBlocks, getBlockAttributes } =\n\t\t\t\tregistry.select( blockEditorStore );\n\n\t\t\tlet innerBlocks = getBlocks( clientId );\n\t\t\tconst hasExplicitWidths =\n\t\t\t\thasExplicitPercentColumnWidths( innerBlocks );\n\n\t\t\t// Redistribute available width for existing inner blocks.\n\t\t\tconst isAddingColumn = newColumns > previousColumns;\n\n\t\t\t// Get verticalAlignment from Columns block to set the same to new Column.\n\t\t\tconst { verticalAlignment } = getBlockAttributes( clientId ) || {};\n\n\t\t\tif ( isAddingColumn && hasExplicitWidths ) {\n\t\t\t\t// If adding a new column, assign width to the new column equal to\n\t\t\t\t// as if it were `1 / columns` of the total available space.\n\t\t\t\tconst newColumnWidth = toWidthPrecision( 100 / newColumns );\n\n\t\t\t\t// Redistribute in consideration of pending block insertion as\n\t\t\t\t// constraining the available working width.\n\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t100 - newColumnWidth\n\t\t\t\t);\n\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...getMappedColumnWidths( innerBlocks, widths ),\n\t\t\t\t\t...Array.from( {\n\t\t\t\t\t\tlength: newColumns - previousColumns,\n\t\t\t\t\t} ).map( () => {\n\t\t\t\t\t\treturn createBlock( 'core/column', {\n\t\t\t\t\t\t\twidth: `${ newColumnWidth }%`,\n\t\t\t\t\t\t\tverticalAlignment,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else if ( isAddingColumn ) {\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...innerBlocks,\n\t\t\t\t\t...Array.from( {\n\t\t\t\t\t\tlength: newColumns - previousColumns,\n\t\t\t\t\t} ).map( () => {\n\t\t\t\t\t\treturn createBlock( 'core/column', {\n\t\t\t\t\t\t\tverticalAlignment,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else {\n\t\t\t\t// The removed column will be the last of the inner blocks.\n\t\t\t\tinnerBlocks = innerBlocks.slice(\n\t\t\t\t\t0,\n\t\t\t\t\t-( previousColumns - newColumns )\n\t\t\t\t);\n\n\t\t\t\tif ( hasExplicitWidths ) {\n\t\t\t\t\t// Redistribute as if block is already removed.\n\t\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t\t100\n\t\t\t\t\t);\n\n\t\t\t\t\tinnerBlocks = getMappedColumnWidths( innerBlocks, widths );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treplaceInnerBlocks( clientId, innerBlocks );\n\t\t},\n\t\tonAddNextColumn: () => {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { replaceInnerBlocks, selectBlock } =\n\t\t\t\tdispatch( blockEditorStore );\n\t\t\tconst { getBlocks, getBlockAttributes } =\n\t\t\t\tregistry.select( blockEditorStore );\n\n\t\t\t// Get verticalAlignment from Columns block to set the same to new Column.\n\t\t\tconst { verticalAlignment } = getBlockAttributes( clientId );\n\n\t\t\tconst innerBlocks = getBlocks( clientId );\n\n\t\t\tconst insertedBlock = createBlock( 'core/column', {\n\t\t\t\tverticalAlignment,\n\t\t\t} );\n\n\t\t\treplaceInnerBlocks(\n\t\t\t\tclientId,\n\t\t\t\t[ ...innerBlocks, insertedBlock ],\n\t\t\t\ttrue\n\t\t\t);\n\t\t\tselectBlock( insertedBlock.clientId );\n\t\t},\n\t\tonDeleteBlock: () => {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { removeBlock } = dispatch( blockEditorStore );\n\t\t\tremoveBlock( clientId );\n\t\t},\n\t} )\n)( memo( ColumnsEditContainer ) );\n\nconst ColumnsEdit = ( props ) => {\n\tconst { clientId, isSelected, style } = props;\n\tconst {\n\t\tcolumnCount,\n\t\tisDefaultColumns,\n\t\tinnerBlocks,\n\t\thasParents,\n\t\tparentBlockAlignment,\n\t\teditorSidebarOpened,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlocks,\n\t\t\t\tgetBlockParents,\n\t\t\t\tgetBlockAttributes,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { isEditorSidebarOpened } = select( 'core/edit-post' );\n\n\t\t\tconst innerBlocksList = getBlocks( clientId );\n\n\t\t\tconst isContentEmpty = innerBlocksList.every(\n\t\t\t\t( innerBlock ) => innerBlock.innerBlocks.length === 0\n\t\t\t);\n\n\t\t\tconst parents = getBlockParents( clientId, true );\n\n\t\t\treturn {\n\t\t\t\tcolumnCount: getBlockCount( clientId ),\n\t\t\t\tisDefaultColumns: isContentEmpty,\n\t\t\t\tinnerBlocks: innerBlocksList,\n\t\t\t\thasParents: parents.length > 0,\n\t\t\t\tparentBlockAlignment: getBlockAttributes( parents[ 0 ] )?.align,\n\t\t\t\teditorSidebarOpened: isSelected && isEditorSidebarOpened(),\n\t\t\t};\n\t\t},\n\t\t[ clientId, isSelected ]\n\t);\n\n\tconst innerWidths = useMemo(\n\t\t() =>\n\t\t\tinnerBlocks.map( ( inn ) => ( {\n\t\t\t\tclientId: inn.clientId,\n\t\t\t\tattributes: { width: inn.attributes.width },\n\t\t\t} ) ),\n\t\t[ innerBlocks ]\n\t);\n\n\tconst [ isVisible, setIsVisible ] = useState( false );\n\n\tuseEffect( () => {\n\t\tif ( isSelected && isDefaultColumns ) {\n\t\t\tconst revealTimeout = setTimeout( () => setIsVisible( true ), 100 );\n\n\t\t\treturn () => clearTimeout( revealTimeout );\n\t\t}\n\t}, [] );\n\n\tconst onClose = useCallback( () => {\n\t\tsetIsVisible( false );\n\t}, [] );\n\n\treturn (\n\t\t<View style={ style }>\n\t\t\t<ColumnsEditContainerWrapper\n\t\t\t\tcolumnCount={ columnCount }\n\t\t\t\tinnerWidths={ innerWidths }\n\t\t\t\thasParents={ hasParents }\n\t\t\t\tparentBlockAlignment={ parentBlockAlignment }\n\t\t\t\teditorSidebarOpened={ editorSidebarOpened }\n\t\t\t\t{ ...props }\n\t\t\t/>\n\t\t\t<BlockVariationPicker\n\t\t\t\tvariations={ variations }\n\t\t\t\tonClose={ onClose }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisVisible={ isVisible }\n\t\t\t/>\n\t\t</View>\n\t);\n};\n\nexport default ColumnsEdit;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/columns/edit.native.js"],"names":["View","Dimensions","__","sprintf","PanelBody","RangeControl","FooterMessageControl","UnitControl","getValueAndUnit","GlobalStylesContext","alignmentHelpers","__experimentalUseCustomUnits","useCustomUnits","InspectorControls","InnerBlocks","BlockControls","BlockVerticalAlignmentToolbar","BlockVariationPicker","useSetting","store","blockEditorStore","withDispatch","useSelect","useEffect","useState","useContext","useMemo","useCallback","memo","useResizeObserver","createBlock","columns","variations","styles","hasExplicitPercentColumnWidths","getMappedColumnWidths","getRedistributedColumnWidths","toWidthPrecision","getWidths","getWidthWithUnit","isPercentageUnit","getColumnsInRow","calculateContainerWidth","getContentWidths","ColumnsPreview","ALLOWED_BLOCKS","DEFAULT_COLUMNS_NUM","MIN_COLUMNS_NUM","isFullWidth","ColumnsEditContainer","attributes","updateAlignment","updateColumns","columnCount","isSelected","onDeleteBlock","innerWidths","updateInnerColumnWidth","editorSidebarOpened","resizeListener","sizes","columnsInRow","setColumnsInRow","screenWidth","Math","floor","get","width","globalStyles","verticalAlignment","align","units","availableUnits","newColumnCount","renderAppender","columnAppender","onAddBlock","contentWidths","onChangeWidth","nextWidth","valueUnit","columnId","widthWithUnit","onChangeUnit","nextUnit","index","widthWithoutUnit","parseFloat","onChange","getColumnsSliders","map","column","label","clientId","length","undefined","onChangeColumnsNum","value","innerBlocksSelected","ColumnsEditContainerWrapper","dispatch","ownProps","registry","setAttributes","updateBlockAttributes","getBlockOrder","select","innerBlockClientIds","forEach","innerBlockClientId","previousColumns","newColumns","replaceInnerBlocks","getBlocks","getBlockAttributes","innerBlocks","hasExplicitWidths","isAddingColumn","newColumnWidth","widths","Array","from","slice","onAddNextColumn","selectBlock","insertedBlock","removeBlock","ColumnsEdit","props","style","isDefaultColumns","hasParents","parentBlockAlignment","getBlockCount","getBlockParents","isEditorSidebarOpened","innerBlocksList","isContentEmpty","every","innerBlock","parents","inn","isVisible","setIsVisible","revealTimeout","setTimeout","clearTimeout","onClose"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View, Dimensions } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\tRangeControl,\n\tFooterMessageControl,\n\tUnitControl,\n\tgetValueAndUnit,\n\tGlobalStylesContext,\n\talignmentHelpers,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tInnerBlocks,\n\tBlockControls,\n\tBlockVerticalAlignmentToolbar,\n\tBlockVariationPicker,\n\tuseSetting,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { withDispatch, useSelect } from '@wordpress/data';\nimport {\n\tuseEffect,\n\tuseState,\n\tuseContext,\n\tuseMemo,\n\tuseCallback,\n\tmemo,\n} from '@wordpress/element';\nimport { useResizeObserver } from '@wordpress/compose';\nimport { createBlock } from '@wordpress/blocks';\nimport { columns } from '@wordpress/icons';\n/**\n * Internal dependencies\n */\nimport variations from './variations';\nimport styles from './editor.scss';\nimport {\n\thasExplicitPercentColumnWidths,\n\tgetMappedColumnWidths,\n\tgetRedistributedColumnWidths,\n\ttoWidthPrecision,\n\tgetWidths,\n\tgetWidthWithUnit,\n\tisPercentageUnit,\n} from './utils';\nimport {\n\tgetColumnsInRow,\n\tcalculateContainerWidth,\n\tgetContentWidths,\n} from './columnCalculations.native';\nimport ColumnsPreview from '../column/column-preview';\n\n/**\n * Allowed blocks constant is passed to InnerBlocks precisely as specified here.\n * The contents of the array should never change.\n * The array should contain the name of each block that is allowed.\n * In columns block, the only block we allow is 'core/column'.\n *\n * @constant\n * @type {string[]}\n */\nconst ALLOWED_BLOCKS = [ 'core/column' ];\n\n/**\n * Number of columns to assume for template in case the user opts to skip\n * template option selection.\n *\n * @type {number}\n */\nconst DEFAULT_COLUMNS_NUM = 2;\n\n/**\n * Minimum number of columns in a row\n *\n * @type {number}\n */\nconst MIN_COLUMNS_NUM = 1;\n\nconst { isFullWidth } = alignmentHelpers;\n\nfunction ColumnsEditContainer( {\n\tattributes,\n\tupdateAlignment,\n\tupdateColumns,\n\tcolumnCount,\n\tisSelected,\n\tonDeleteBlock,\n\tinnerWidths,\n\tupdateInnerColumnWidth,\n\teditorSidebarOpened,\n} ) {\n\tconst [ resizeListener, sizes ] = useResizeObserver();\n\tconst [ columnsInRow, setColumnsInRow ] = useState( MIN_COLUMNS_NUM );\n\tconst screenWidth = Math.floor( Dimensions.get( 'window' ).width );\n\tconst globalStyles = useContext( GlobalStylesContext );\n\n\tconst { verticalAlignment, align } = attributes;\n\tconst { width } = sizes || {};\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'%',\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t],\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( columnCount === 0 ) {\n\t\t\tconst newColumnCount = columnCount || DEFAULT_COLUMNS_NUM;\n\t\t\tupdateColumns( columnCount, newColumnCount );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( width ) {\n\t\t\tif ( getColumnsInRow( width, columnCount ) !== columnsInRow ) {\n\t\t\t\tsetColumnsInRow( getColumnsInRow( width, columnCount ) );\n\t\t\t}\n\t\t}\n\t}, [ width, columnCount ] );\n\n\tconst renderAppender = () => {\n\t\tif ( isSelected ) {\n\t\t\treturn (\n\t\t\t\t<View style={ isFullWidth( align ) && styles.columnAppender }>\n\t\t\t\t\t<InnerBlocks.ButtonBlockAppender\n\t\t\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t};\n\n\tconst contentWidths = useMemo(\n\t\t() =>\n\t\t\tgetContentWidths(\n\t\t\t\tcolumnsInRow,\n\t\t\t\twidth,\n\t\t\t\tcolumnCount,\n\t\t\t\tinnerWidths,\n\t\t\t\tglobalStyles\n\t\t\t),\n\t\t[ width, columnsInRow, columnCount, innerWidths, globalStyles ]\n\t);\n\n\tconst onAddBlock = useCallback( () => {\n\t\tupdateColumns( columnCount, columnCount + 1 );\n\t}, [ columnCount ] );\n\n\tconst onChangeWidth = ( nextWidth, valueUnit, columnId ) => {\n\t\tconst widthWithUnit = getWidthWithUnit( nextWidth, valueUnit );\n\n\t\tupdateInnerColumnWidth( widthWithUnit, columnId );\n\t};\n\n\tconst onChangeUnit = ( nextUnit, index, columnId ) => {\n\t\tconst widthWithoutUnit = parseFloat(\n\t\t\tgetWidths( innerWidths )[ index ]\n\t\t);\n\t\tconst widthWithUnit = getWidthWithUnit( widthWithoutUnit, nextUnit );\n\n\t\tupdateInnerColumnWidth( widthWithUnit, columnId );\n\t};\n\n\tconst onChange = ( nextWidth, valueUnit, columnId ) => {\n\t\tif ( isPercentageUnit( valueUnit ) || ! valueUnit ) {\n\t\t\treturn;\n\t\t}\n\t\tonChangeWidth( nextWidth, valueUnit, columnId );\n\t};\n\n\tconst getColumnsSliders = useMemo( () => {\n\t\tif ( ! editorSidebarOpened || ! isSelected ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn innerWidths.map( ( column, index ) => {\n\t\t\tconst { valueUnit = '%' } =\n\t\t\t\tgetValueAndUnit( column.attributes.width ) || {};\n\t\t\tconst label = sprintf(\n\t\t\t\t/* translators: %d: column index. */\n\t\t\t\t__( 'Column %d' ),\n\t\t\t\tindex + 1\n\t\t\t);\n\t\t\treturn (\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tsettingLabel={ __( 'Width' ) }\n\t\t\t\t\tkey={ `${ column.clientId }-${\n\t\t\t\t\t\tgetWidths( innerWidths ).length\n\t\t\t\t\t}` }\n\t\t\t\t\tmin={ 1 }\n\t\t\t\t\tmax={\n\t\t\t\t\t\tisPercentageUnit( valueUnit ) || ! valueUnit\n\t\t\t\t\t\t\t? 100\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ getWidths( innerWidths )[ index ] }\n\t\t\t\t\tonChange={ ( nextWidth ) => {\n\t\t\t\t\t\tonChange( nextWidth, valueUnit, column.clientId );\n\t\t\t\t\t} }\n\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\tonChangeUnit( nextUnit, index, column.clientId )\n\t\t\t\t\t}\n\t\t\t\t\tonComplete={ ( nextWidth ) => {\n\t\t\t\t\t\tonChangeWidth( nextWidth, valueUnit, column.clientId );\n\t\t\t\t\t} }\n\t\t\t\t\tunit={ valueUnit }\n\t\t\t\t\tunits={ units }\n\t\t\t\t\tpreview={\n\t\t\t\t\t\t<ColumnsPreview\n\t\t\t\t\t\t\tcolumnWidths={ getWidths( innerWidths, false ) }\n\t\t\t\t\t\t\tselectedColumnIndex={ index }\n\t\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t);\n\t\t} );\n\t}, [ editorSidebarOpened, isSelected, innerWidths ] );\n\n\tconst onChangeColumnsNum = useCallback(\n\t\t( value ) => {\n\t\t\tupdateColumns( columnCount, value );\n\t\t},\n\t\t[ columnCount ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<InspectorControls>\n\t\t\t\t\t\t<PanelBody title={ __( 'Columns Settings' ) }>\n\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Number of columns' ) }\n\t\t\t\t\t\t\t\ticon={ columns }\n\t\t\t\t\t\t\t\tvalue={ columnCount }\n\t\t\t\t\t\t\t\tonChange={ onChangeColumnsNum }\n\t\t\t\t\t\t\t\tmin={ MIN_COLUMNS_NUM }\n\t\t\t\t\t\t\t\tmax={ columnCount + 1 }\n\t\t\t\t\t\t\t\ttype=\"stepper\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ getColumnsSliders }\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t\t<FooterMessageControl\n\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t'Note: Column layout may vary between themes and screen sizes'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<BlockVerticalAlignmentToolbar\n\t\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<View style={ isSelected && styles.innerBlocksSelected }>\n\t\t\t\t{ resizeListener }\n\t\t\t\t{ width && (\n\t\t\t\t\t<InnerBlocks\n\t\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\t\torientation={\n\t\t\t\t\t\t\tcolumnsInRow > 1 ? 'horizontal' : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\thorizontal={ columnsInRow > 1 }\n\t\t\t\t\t\tallowedBlocks={ ALLOWED_BLOCKS }\n\t\t\t\t\t\tcontentResizeMode=\"stretch\"\n\t\t\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\t\t\tonDeleteBlock={\n\t\t\t\t\t\t\tcolumnCount === 1 ? onDeleteBlock : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tblockWidth={ width }\n\t\t\t\t\t\tcontentStyle={ contentWidths }\n\t\t\t\t\t\tparentWidth={\n\t\t\t\t\t\t\tisFullWidth( align ) && columnCount === 0\n\t\t\t\t\t\t\t\t? screenWidth\n\t\t\t\t\t\t\t\t: calculateContainerWidth( width, columnsInRow )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t</>\n\t);\n}\n\nconst ColumnsEditContainerWrapper = withDispatch(\n\t( dispatch, ownProps, registry ) => ( {\n\t\t/**\n\t\t * Update all child Column blocks with a new vertical alignment setting\n\t\t * based on whatever alignment is passed in. This allows change to parent\n\t\t * to overide anything set on a individual column basis.\n\t\t *\n\t\t * @param {string} verticalAlignment the vertical alignment setting\n\t\t */\n\t\tupdateAlignment( verticalAlignment ) {\n\t\t\tconst { clientId, setAttributes } = ownProps;\n\t\t\tconst { updateBlockAttributes } = dispatch( blockEditorStore );\n\t\t\tconst { getBlockOrder } = registry.select( blockEditorStore );\n\n\t\t\t// Update own alignment.\n\t\t\tsetAttributes( { verticalAlignment } );\n\n\t\t\t// Update all child Column Blocks to match.\n\t\t\tconst innerBlockClientIds = getBlockOrder( clientId );\n\t\t\tinnerBlockClientIds.forEach( ( innerBlockClientId ) => {\n\t\t\t\tupdateBlockAttributes( innerBlockClientId, {\n\t\t\t\t\tverticalAlignment,\n\t\t\t\t} );\n\t\t\t} );\n\t\t},\n\t\tupdateInnerColumnWidth( value, columnId ) {\n\t\t\tconst { updateBlockAttributes } = dispatch( blockEditorStore );\n\n\t\t\tupdateBlockAttributes( columnId, {\n\t\t\t\twidth: value,\n\t\t\t} );\n\t\t},\n\t\t/**\n\t\t * Updates the column columnCount, including necessary revisions to child Column\n\t\t * blocks to grant required or redistribute available space.\n\t\t *\n\t\t * @param {number} previousColumns Previous column columnCount.\n\t\t * @param {number} newColumns New column columnCount.\n\t\t */\n\t\tupdateColumns( previousColumns, newColumns ) {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { replaceInnerBlocks } = dispatch( blockEditorStore );\n\t\t\tconst { getBlocks, getBlockAttributes } =\n\t\t\t\tregistry.select( blockEditorStore );\n\n\t\t\tlet innerBlocks = getBlocks( clientId );\n\t\t\tconst hasExplicitWidths =\n\t\t\t\thasExplicitPercentColumnWidths( innerBlocks );\n\n\t\t\t// Redistribute available width for existing inner blocks.\n\t\t\tconst isAddingColumn = newColumns > previousColumns;\n\n\t\t\t// Get verticalAlignment from Columns block to set the same to new Column.\n\t\t\tconst { verticalAlignment } = getBlockAttributes( clientId ) || {};\n\n\t\t\tif ( isAddingColumn && hasExplicitWidths ) {\n\t\t\t\t// If adding a new column, assign width to the new column equal to\n\t\t\t\t// as if it were `1 / columns` of the total available space.\n\t\t\t\tconst newColumnWidth = toWidthPrecision( 100 / newColumns );\n\n\t\t\t\t// Redistribute in consideration of pending block insertion as\n\t\t\t\t// constraining the available working width.\n\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t100 - newColumnWidth\n\t\t\t\t);\n\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...getMappedColumnWidths( innerBlocks, widths ),\n\t\t\t\t\t...Array.from( {\n\t\t\t\t\t\tlength: newColumns - previousColumns,\n\t\t\t\t\t} ).map( () => {\n\t\t\t\t\t\treturn createBlock( 'core/column', {\n\t\t\t\t\t\t\twidth: `${ newColumnWidth }%`,\n\t\t\t\t\t\t\tverticalAlignment,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else if ( isAddingColumn ) {\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...innerBlocks,\n\t\t\t\t\t...Array.from( {\n\t\t\t\t\t\tlength: newColumns - previousColumns,\n\t\t\t\t\t} ).map( () => {\n\t\t\t\t\t\treturn createBlock( 'core/column', {\n\t\t\t\t\t\t\tverticalAlignment,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else {\n\t\t\t\t// The removed column will be the last of the inner blocks.\n\t\t\t\tinnerBlocks = innerBlocks.slice(\n\t\t\t\t\t0,\n\t\t\t\t\t-( previousColumns - newColumns )\n\t\t\t\t);\n\n\t\t\t\tif ( hasExplicitWidths ) {\n\t\t\t\t\t// Redistribute as if block is already removed.\n\t\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t\t100\n\t\t\t\t\t);\n\n\t\t\t\t\tinnerBlocks = getMappedColumnWidths( innerBlocks, widths );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treplaceInnerBlocks( clientId, innerBlocks );\n\t\t},\n\t\tonAddNextColumn: () => {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { replaceInnerBlocks, selectBlock } =\n\t\t\t\tdispatch( blockEditorStore );\n\t\t\tconst { getBlocks, getBlockAttributes } =\n\t\t\t\tregistry.select( blockEditorStore );\n\n\t\t\t// Get verticalAlignment from Columns block to set the same to new Column.\n\t\t\tconst { verticalAlignment } = getBlockAttributes( clientId );\n\n\t\t\tconst innerBlocks = getBlocks( clientId );\n\n\t\t\tconst insertedBlock = createBlock( 'core/column', {\n\t\t\t\tverticalAlignment,\n\t\t\t} );\n\n\t\t\treplaceInnerBlocks(\n\t\t\t\tclientId,\n\t\t\t\t[ ...innerBlocks, insertedBlock ],\n\t\t\t\ttrue\n\t\t\t);\n\t\t\tselectBlock( insertedBlock.clientId );\n\t\t},\n\t\tonDeleteBlock: () => {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { removeBlock } = dispatch( blockEditorStore );\n\t\t\tremoveBlock( clientId );\n\t\t},\n\t} )\n)( memo( ColumnsEditContainer ) );\n\nconst ColumnsEdit = ( props ) => {\n\tconst { clientId, isSelected, style } = props;\n\tconst {\n\t\tcolumnCount,\n\t\tisDefaultColumns,\n\t\tinnerBlocks,\n\t\thasParents,\n\t\tparentBlockAlignment,\n\t\teditorSidebarOpened,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlocks,\n\t\t\t\tgetBlockParents,\n\t\t\t\tgetBlockAttributes,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { isEditorSidebarOpened } = select( 'core/edit-post' );\n\n\t\t\tconst innerBlocksList = getBlocks( clientId );\n\n\t\t\tconst isContentEmpty = innerBlocksList.every(\n\t\t\t\t( innerBlock ) => innerBlock.innerBlocks.length === 0\n\t\t\t);\n\n\t\t\tconst parents = getBlockParents( clientId, true );\n\n\t\t\treturn {\n\t\t\t\tcolumnCount: getBlockCount( clientId ),\n\t\t\t\tisDefaultColumns: isContentEmpty,\n\t\t\t\tinnerBlocks: innerBlocksList,\n\t\t\t\thasParents: parents.length > 0,\n\t\t\t\tparentBlockAlignment: getBlockAttributes( parents[ 0 ] )?.align,\n\t\t\t\teditorSidebarOpened: isSelected && isEditorSidebarOpened(),\n\t\t\t};\n\t\t},\n\t\t[ clientId, isSelected ]\n\t);\n\n\tconst innerWidths = useMemo(\n\t\t() =>\n\t\t\tinnerBlocks.map( ( inn ) => ( {\n\t\t\t\tclientId: inn.clientId,\n\t\t\t\tattributes: { width: inn.attributes.width },\n\t\t\t} ) ),\n\t\t[ innerBlocks ]\n\t);\n\n\tconst [ isVisible, setIsVisible ] = useState( false );\n\n\tuseEffect( () => {\n\t\tif ( isSelected && isDefaultColumns ) {\n\t\t\tconst revealTimeout = setTimeout( () => setIsVisible( true ), 100 );\n\n\t\t\treturn () => clearTimeout( revealTimeout );\n\t\t}\n\t}, [] );\n\n\tconst onClose = useCallback( () => {\n\t\tsetIsVisible( false );\n\t}, [] );\n\n\treturn (\n\t\t<View style={ style }>\n\t\t\t<ColumnsEditContainerWrapper\n\t\t\t\tcolumnCount={ columnCount }\n\t\t\t\tinnerWidths={ innerWidths }\n\t\t\t\thasParents={ hasParents }\n\t\t\t\tparentBlockAlignment={ parentBlockAlignment }\n\t\t\t\teditorSidebarOpened={ editorSidebarOpened }\n\t\t\t\t{ ...props }\n\t\t\t/>\n\t\t\t<BlockVariationPicker\n\t\t\t\tvariations={ variations }\n\t\t\t\tonClose={ onClose }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisVisible={ isVisible }\n\t\t\t/>\n\t\t</View>\n\t);\n};\n\nexport default ColumnsEdit;\n"]}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import { merge, mapValues } from 'lodash';
4
+ import { mapValues } from 'lodash';
5
5
  /**
6
6
  * Returns a column width attribute value rounded to standard precision.
7
7
  * Returns `undefined` if the value is not a valid finite number.
@@ -113,8 +113,8 @@ export function hasExplicitPercentColumnWidths(blocks) {
113
113
  */
114
114
 
115
115
  export function getMappedColumnWidths(blocks, widths) {
116
- return blocks.map(block => merge({}, block, {
117
- attributes: {
116
+ return blocks.map(block => ({ ...block,
117
+ attributes: { ...block.attributes,
118
118
  width: `${widths[block.clientId]}%`
119
119
  }
120
120
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/columns/utils.js"],"names":["merge","mapValues","toWidthPrecision","value","unitlessValue","parseFloat","Number","isFinite","toFixed","undefined","getEffectiveColumnWidth","block","totalBlockCount","width","attributes","getTotalColumnsWidth","blocks","length","reduce","sum","getColumnWidths","accumulator","Object","assign","clientId","getRedistributedColumnWidths","availableWidth","totalWidth","newWidth","hasExplicitPercentColumnWidths","every","blockWidth","endsWith","getMappedColumnWidths","widths","map","getWidths","withParsing","innerColumn","innerColumnWidth","getWidthWithUnit","unit","isPercentageUnit","Math","min"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { merge, mapValues } from 'lodash';\n\n/**\n * Returns a column width attribute value rounded to standard precision.\n * Returns `undefined` if the value is not a valid finite number.\n *\n * @param {?number} value Raw value.\n *\n * @return {number} Value rounded to standard precision.\n */\nexport const toWidthPrecision = ( value ) => {\n\tconst unitlessValue = parseFloat( value );\n\treturn Number.isFinite( unitlessValue )\n\t\t? parseFloat( unitlessValue.toFixed( 2 ) )\n\t\t: undefined;\n};\n/**\n * Returns an effective width for a given block. An effective width is equal to\n * its attribute value if set, or a computed value assuming equal distribution.\n *\n * @param {WPBlock} block Block object.\n * @param {number} totalBlockCount Total number of blocks in Columns.\n *\n * @return {number} Effective column width.\n */\nexport function getEffectiveColumnWidth( block, totalBlockCount ) {\n\tconst { width = 100 / totalBlockCount } = block.attributes;\n\treturn toWidthPrecision( width );\n}\n\n/**\n * Returns the total width occupied by the given set of column blocks.\n *\n * @param {WPBlock[]} blocks Block objects.\n * @param {?number} totalBlockCount Total number of blocks in Columns.\n * Defaults to number of blocks passed.\n *\n * @return {number} Total width occupied by blocks.\n */\nexport function getTotalColumnsWidth(\n\tblocks,\n\ttotalBlockCount = blocks.length\n) {\n\treturn blocks.reduce(\n\t\t( sum, block ) =>\n\t\t\tsum + getEffectiveColumnWidth( block, totalBlockCount ),\n\t\t0\n\t);\n}\n\n/**\n * Returns an object of `clientId` → `width` of effective column widths.\n *\n * @param {WPBlock[]} blocks Block objects.\n * @param {?number} totalBlockCount Total number of blocks in Columns.\n * Defaults to number of blocks passed.\n *\n * @return {Object<string,number>} Column widths.\n */\nexport function getColumnWidths( blocks, totalBlockCount = blocks.length ) {\n\treturn blocks.reduce( ( accumulator, block ) => {\n\t\tconst width = getEffectiveColumnWidth( block, totalBlockCount );\n\t\treturn Object.assign( accumulator, { [ block.clientId ]: width } );\n\t}, {} );\n}\n\n/**\n * Returns an object of `clientId` → `width` of column widths as redistributed\n * proportional to their current widths, constrained or expanded to fit within\n * the given available width.\n *\n * @param {WPBlock[]} blocks Block objects.\n * @param {number} availableWidth Maximum width to fit within.\n * @param {?number} totalBlockCount Total number of blocks in Columns.\n * Defaults to number of blocks passed.\n *\n * @return {Object<string,number>} Redistributed column widths.\n */\nexport function getRedistributedColumnWidths(\n\tblocks,\n\tavailableWidth,\n\ttotalBlockCount = blocks.length\n) {\n\tconst totalWidth = getTotalColumnsWidth( blocks, totalBlockCount );\n\n\treturn mapValues( getColumnWidths( blocks, totalBlockCount ), ( width ) => {\n\t\tconst newWidth = ( availableWidth * width ) / totalWidth;\n\t\treturn toWidthPrecision( newWidth );\n\t} );\n}\n\n/**\n * Returns true if column blocks within the provided set are assigned with\n * explicit widths, or false otherwise.\n *\n * @param {WPBlock[]} blocks Block objects.\n *\n * @return {boolean} Whether columns have explicit widths.\n */\nexport function hasExplicitPercentColumnWidths( blocks ) {\n\treturn blocks.every( ( block ) => {\n\t\tconst blockWidth = block.attributes.width;\n\t\treturn Number.isFinite(\n\t\t\tblockWidth?.endsWith?.( '%' )\n\t\t\t\t? parseFloat( blockWidth )\n\t\t\t\t: blockWidth\n\t\t);\n\t} );\n}\n\n/**\n * Returns a copy of the given set of blocks with new widths assigned from the\n * provided object of redistributed column widths.\n *\n * @param {WPBlock[]} blocks Block objects.\n * @param {Object<string,number>} widths Redistributed column widths.\n *\n * @return {WPBlock[]} blocks Mapped block objects.\n */\nexport function getMappedColumnWidths( blocks, widths ) {\n\treturn blocks.map( ( block ) =>\n\t\tmerge( {}, block, {\n\t\t\tattributes: {\n\t\t\t\twidth: `${ widths[ block.clientId ] }%`,\n\t\t\t},\n\t\t} )\n\t);\n}\n\n/**\n * Returns an array with columns widths values, parsed or no depends on `withParsing` flag.\n *\n * @param {WPBlock[]} blocks Block objects.\n * @param {?boolean} withParsing Whether value has to be parsed.\n *\n * @return {Array<number,string>} Column widths.\n */\nexport function getWidths( blocks, withParsing = true ) {\n\treturn blocks.map( ( innerColumn ) => {\n\t\tconst innerColumnWidth =\n\t\t\tinnerColumn.attributes.width || 100 / blocks.length;\n\n\t\treturn withParsing ? parseFloat( innerColumnWidth ) : innerColumnWidth;\n\t} );\n}\n\n/**\n * Returns a column width with unit.\n *\n * @param {string} width Column width.\n * @param {string} unit Column width unit.\n *\n * @return {string} Column width with unit.\n */\nexport function getWidthWithUnit( width, unit ) {\n\twidth = 0 > parseFloat( width ) ? '0' : width;\n\n\tif ( isPercentageUnit( unit ) ) {\n\t\twidth = Math.min( width, 100 );\n\t}\n\n\treturn `${ width }${ unit }`;\n}\n\n/**\n * Returns a boolean whether passed unit is percentage\n *\n * @param {string} unit Column width unit.\n *\n * @return {boolean} \tWhether unit is '%'.\n */\nexport function isPercentageUnit( unit ) {\n\treturn unit === '%';\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/columns/utils.js"],"names":["mapValues","toWidthPrecision","value","unitlessValue","parseFloat","Number","isFinite","toFixed","undefined","getEffectiveColumnWidth","block","totalBlockCount","width","attributes","getTotalColumnsWidth","blocks","length","reduce","sum","getColumnWidths","accumulator","Object","assign","clientId","getRedistributedColumnWidths","availableWidth","totalWidth","newWidth","hasExplicitPercentColumnWidths","every","blockWidth","endsWith","getMappedColumnWidths","widths","map","getWidths","withParsing","innerColumn","innerColumnWidth","getWidthWithUnit","unit","isPercentageUnit","Math","min"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAT,QAA0B,QAA1B;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,MAAMC,gBAAgB,GAAKC,KAAF,IAAa;AAC5C,QAAMC,aAAa,GAAGC,UAAU,CAAEF,KAAF,CAAhC;AACA,SAAOG,MAAM,CAACC,QAAP,CAAiBH,aAAjB,IACJC,UAAU,CAAED,aAAa,CAACI,OAAd,CAAuB,CAAvB,CAAF,CADN,GAEJC,SAFH;AAGA,CALM;AAMP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,uBAAT,CAAkCC,KAAlC,EAAyCC,eAAzC,EAA2D;AACjE,QAAM;AAAEC,IAAAA,KAAK,GAAG,MAAMD;AAAhB,MAAoCD,KAAK,CAACG,UAAhD;AACA,SAAOZ,gBAAgB,CAAEW,KAAF,CAAvB;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASE,oBAAT,CACNC,MADM,EAGL;AAAA,MADDJ,eACC,uEADiBI,MAAM,CAACC,MACxB;AACD,SAAOD,MAAM,CAACE,MAAP,CACN,CAAEC,GAAF,EAAOR,KAAP,KACCQ,GAAG,GAAGT,uBAAuB,CAAEC,KAAF,EAASC,eAAT,CAFxB,EAGN,CAHM,CAAP;AAKA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASQ,eAAT,CAA0BJ,MAA1B,EAAoE;AAAA,MAAlCJ,eAAkC,uEAAhBI,MAAM,CAACC,MAAS;AAC1E,SAAOD,MAAM,CAACE,MAAP,CAAe,CAAEG,WAAF,EAAeV,KAAf,KAA0B;AAC/C,UAAME,KAAK,GAAGH,uBAAuB,CAAEC,KAAF,EAASC,eAAT,CAArC;AACA,WAAOU,MAAM,CAACC,MAAP,CAAeF,WAAf,EAA4B;AAAE,OAAEV,KAAK,CAACa,QAAR,GAAoBX;AAAtB,KAA5B,CAAP;AACA,GAHM,EAGJ,EAHI,CAAP;AAIA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASY,4BAAT,CACNT,MADM,EAENU,cAFM,EAIL;AAAA,MADDd,eACC,uEADiBI,MAAM,CAACC,MACxB;AACD,QAAMU,UAAU,GAAGZ,oBAAoB,CAAEC,MAAF,EAAUJ,eAAV,CAAvC;AAEA,SAAOX,SAAS,CAAEmB,eAAe,CAAEJ,MAAF,EAAUJ,eAAV,CAAjB,EAAgDC,KAAF,IAAa;AAC1E,UAAMe,QAAQ,GAAKF,cAAc,GAAGb,KAAnB,GAA6Bc,UAA9C;AACA,WAAOzB,gBAAgB,CAAE0B,QAAF,CAAvB;AACA,GAHe,CAAhB;AAIA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,8BAAT,CAAyCb,MAAzC,EAAkD;AACxD,SAAOA,MAAM,CAACc,KAAP,CAAgBnB,KAAF,IAAa;AAAA;;AACjC,UAAMoB,UAAU,GAAGpB,KAAK,CAACG,UAAN,CAAiBD,KAApC;AACA,WAAOP,MAAM,CAACC,QAAP,CACNwB,UAAU,SAAV,IAAAA,UAAU,WAAV,4BAAAA,UAAU,CAAEC,QAAZ,2EAAAD,UAAU,EAAc,GAAd,CAAV,GACG1B,UAAU,CAAE0B,UAAF,CADb,GAEGA,UAHG,CAAP;AAKA,GAPM,CAAP;AAQA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASE,qBAAT,CAAgCjB,MAAhC,EAAwCkB,MAAxC,EAAiD;AACvD,SAAOlB,MAAM,CAACmB,GAAP,CAAcxB,KAAF,KAAe,EACjC,GAAGA,KAD8B;AAEjCG,IAAAA,UAAU,EAAE,EACX,GAAGH,KAAK,CAACG,UADE;AAEXD,MAAAA,KAAK,EAAG,GAAGqB,MAAM,CAAEvB,KAAK,CAACa,QAAR,CAAoB;AAF1B;AAFqB,GAAf,CAAZ,CAAP;AAOA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASY,SAAT,CAAoBpB,MAApB,EAAiD;AAAA,MAArBqB,WAAqB,uEAAP,IAAO;AACvD,SAAOrB,MAAM,CAACmB,GAAP,CAAcG,WAAF,IAAmB;AACrC,UAAMC,gBAAgB,GACrBD,WAAW,CAACxB,UAAZ,CAAuBD,KAAvB,IAAgC,MAAMG,MAAM,CAACC,MAD9C;AAGA,WAAOoB,WAAW,GAAGhC,UAAU,CAAEkC,gBAAF,CAAb,GAAoCA,gBAAtD;AACA,GALM,CAAP;AAMA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,gBAAT,CAA2B3B,KAA3B,EAAkC4B,IAAlC,EAAyC;AAC/C5B,EAAAA,KAAK,GAAG,IAAIR,UAAU,CAAEQ,KAAF,CAAd,GAA0B,GAA1B,GAAgCA,KAAxC;;AAEA,MAAK6B,gBAAgB,CAAED,IAAF,CAArB,EAAgC;AAC/B5B,IAAAA,KAAK,GAAG8B,IAAI,CAACC,GAAL,CAAU/B,KAAV,EAAiB,GAAjB,CAAR;AACA;;AAED,SAAQ,GAAGA,KAAO,GAAG4B,IAAM,EAA3B;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,gBAAT,CAA2BD,IAA3B,EAAkC;AACxC,SAAOA,IAAI,KAAK,GAAhB;AACA","sourcesContent":["/**\n * External dependencies\n */\nimport { mapValues } from 'lodash';\n\n/**\n * Returns a column width attribute value rounded to standard precision.\n * Returns `undefined` if the value is not a valid finite number.\n *\n * @param {?number} value Raw value.\n *\n * @return {number} Value rounded to standard precision.\n */\nexport const toWidthPrecision = ( value ) => {\n\tconst unitlessValue = parseFloat( value );\n\treturn Number.isFinite( unitlessValue )\n\t\t? parseFloat( unitlessValue.toFixed( 2 ) )\n\t\t: undefined;\n};\n/**\n * Returns an effective width for a given block. An effective width is equal to\n * its attribute value if set, or a computed value assuming equal distribution.\n *\n * @param {WPBlock} block Block object.\n * @param {number} totalBlockCount Total number of blocks in Columns.\n *\n * @return {number} Effective column width.\n */\nexport function getEffectiveColumnWidth( block, totalBlockCount ) {\n\tconst { width = 100 / totalBlockCount } = block.attributes;\n\treturn toWidthPrecision( width );\n}\n\n/**\n * Returns the total width occupied by the given set of column blocks.\n *\n * @param {WPBlock[]} blocks Block objects.\n * @param {?number} totalBlockCount Total number of blocks in Columns.\n * Defaults to number of blocks passed.\n *\n * @return {number} Total width occupied by blocks.\n */\nexport function getTotalColumnsWidth(\n\tblocks,\n\ttotalBlockCount = blocks.length\n) {\n\treturn blocks.reduce(\n\t\t( sum, block ) =>\n\t\t\tsum + getEffectiveColumnWidth( block, totalBlockCount ),\n\t\t0\n\t);\n}\n\n/**\n * Returns an object of `clientId` → `width` of effective column widths.\n *\n * @param {WPBlock[]} blocks Block objects.\n * @param {?number} totalBlockCount Total number of blocks in Columns.\n * Defaults to number of blocks passed.\n *\n * @return {Object<string,number>} Column widths.\n */\nexport function getColumnWidths( blocks, totalBlockCount = blocks.length ) {\n\treturn blocks.reduce( ( accumulator, block ) => {\n\t\tconst width = getEffectiveColumnWidth( block, totalBlockCount );\n\t\treturn Object.assign( accumulator, { [ block.clientId ]: width } );\n\t}, {} );\n}\n\n/**\n * Returns an object of `clientId` → `width` of column widths as redistributed\n * proportional to their current widths, constrained or expanded to fit within\n * the given available width.\n *\n * @param {WPBlock[]} blocks Block objects.\n * @param {number} availableWidth Maximum width to fit within.\n * @param {?number} totalBlockCount Total number of blocks in Columns.\n * Defaults to number of blocks passed.\n *\n * @return {Object<string,number>} Redistributed column widths.\n */\nexport function getRedistributedColumnWidths(\n\tblocks,\n\tavailableWidth,\n\ttotalBlockCount = blocks.length\n) {\n\tconst totalWidth = getTotalColumnsWidth( blocks, totalBlockCount );\n\n\treturn mapValues( getColumnWidths( blocks, totalBlockCount ), ( width ) => {\n\t\tconst newWidth = ( availableWidth * width ) / totalWidth;\n\t\treturn toWidthPrecision( newWidth );\n\t} );\n}\n\n/**\n * Returns true if column blocks within the provided set are assigned with\n * explicit widths, or false otherwise.\n *\n * @param {WPBlock[]} blocks Block objects.\n *\n * @return {boolean} Whether columns have explicit widths.\n */\nexport function hasExplicitPercentColumnWidths( blocks ) {\n\treturn blocks.every( ( block ) => {\n\t\tconst blockWidth = block.attributes.width;\n\t\treturn Number.isFinite(\n\t\t\tblockWidth?.endsWith?.( '%' )\n\t\t\t\t? parseFloat( blockWidth )\n\t\t\t\t: blockWidth\n\t\t);\n\t} );\n}\n\n/**\n * Returns a copy of the given set of blocks with new widths assigned from the\n * provided object of redistributed column widths.\n *\n * @param {WPBlock[]} blocks Block objects.\n * @param {Object<string,number>} widths Redistributed column widths.\n *\n * @return {WPBlock[]} blocks Mapped block objects.\n */\nexport function getMappedColumnWidths( blocks, widths ) {\n\treturn blocks.map( ( block ) => ( {\n\t\t...block,\n\t\tattributes: {\n\t\t\t...block.attributes,\n\t\t\twidth: `${ widths[ block.clientId ] }%`,\n\t\t},\n\t} ) );\n}\n\n/**\n * Returns an array with columns widths values, parsed or no depends on `withParsing` flag.\n *\n * @param {WPBlock[]} blocks Block objects.\n * @param {?boolean} withParsing Whether value has to be parsed.\n *\n * @return {Array<number,string>} Column widths.\n */\nexport function getWidths( blocks, withParsing = true ) {\n\treturn blocks.map( ( innerColumn ) => {\n\t\tconst innerColumnWidth =\n\t\t\tinnerColumn.attributes.width || 100 / blocks.length;\n\n\t\treturn withParsing ? parseFloat( innerColumnWidth ) : innerColumnWidth;\n\t} );\n}\n\n/**\n * Returns a column width with unit.\n *\n * @param {string} width Column width.\n * @param {string} unit Column width unit.\n *\n * @return {string} Column width with unit.\n */\nexport function getWidthWithUnit( width, unit ) {\n\twidth = 0 > parseFloat( width ) ? '0' : width;\n\n\tif ( isPercentageUnit( unit ) ) {\n\t\twidth = Math.min( width, 100 );\n\t}\n\n\treturn `${ width }${ unit }`;\n}\n\n/**\n * Returns a boolean whether passed unit is percentage\n *\n * @param {string} unit Column width unit.\n *\n * @return {boolean} \tWhether unit is '%'.\n */\nexport function isPercentageUnit( unit ) {\n\treturn unit === '%';\n}\n"]}
@@ -72,12 +72,14 @@ export default function Edit(_ref) {
72
72
  const inspectorControls = createElement(InspectorControls, null, createElement(PanelBody, {
73
73
  title: __('Link settings')
74
74
  }, createElement(ToggleControl, {
75
+ __nextHasNoMarginBottom: true,
75
76
  label: __('Link to authors URL'),
76
77
  onChange: () => setAttributes({
77
78
  isLink: !isLink
78
79
  }),
79
80
  checked: isLink
80
81
  }), isLink && createElement(ToggleControl, {
82
+ __nextHasNoMarginBottom: true,
81
83
  label: __('Open in new tab'),
82
84
  onChange: value => setAttributes({
83
85
  linkTarget: value ? '_blank' : '_self'
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/comment-author-name/edit.js"],"names":["classnames","__","_x","useSelect","AlignmentControl","BlockControls","InspectorControls","useBlockProps","store","coreStore","PanelBody","ToggleControl","Edit","attributes","isLink","linkTarget","textAlign","context","commentId","setAttributes","blockProps","className","displayName","select","getEntityRecord","comment","authorName","author_name","user","author","name","blockControls","newAlign","inspectorControls","value","displayAuthor","event","preventDefault"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { PanelBody, ToggleControl } from '@wordpress/components';\n\n/**\n * Renders the `core/comment-author-name` block on the editor.\n *\n * @param {Object} props React props.\n * @param {Object} props.setAttributes Callback for updating block attributes.\n * @param {Object} props.attributes Block attributes.\n * @param {string} props.attributes.isLink Whether the author name should be linked.\n * @param {string} props.attributes.linkTarget Target of the link.\n * @param {string} props.attributes.textAlign Text alignment.\n * @param {Object} props.context Inherited context.\n * @param {string} props.context.commentId The comment ID.\n *\n * @return {JSX.Element} React element.\n */\nexport default function Edit( {\n\tattributes: { isLink, linkTarget, textAlign },\n\tcontext: { commentId },\n\tsetAttributes,\n} ) {\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\tlet displayName = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\n\t\t\tconst comment = getEntityRecord( 'root', 'comment', commentId );\n\t\t\tconst authorName = comment?.author_name; // eslint-disable-line camelcase\n\n\t\t\tif ( comment && ! authorName ) {\n\t\t\t\tconst user = getEntityRecord( 'root', 'user', comment.author );\n\t\t\t\treturn user?.name ?? __( 'Anonymous' );\n\t\t\t}\n\t\t\treturn authorName ?? '';\n\t\t},\n\t\t[ commentId ]\n\t);\n\n\tconst blockControls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<AlignmentControl\n\t\t\t\tvalue={ textAlign }\n\t\t\t\tonChange={ ( newAlign ) =>\n\t\t\t\t\tsetAttributes( { textAlign: newAlign } )\n\t\t\t\t}\n\t\t\t/>\n\t\t</BlockControls>\n\t);\n\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Link settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Link to authors URL' ) }\n\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\tchecked={ isLink }\n\t\t\t\t/>\n\t\t\t\t{ isLink && (\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tif ( ! commentId || ! displayName ) {\n\t\tdisplayName = _x( 'Comment Author', 'block title' );\n\t}\n\n\tconst displayAuthor = isLink ? (\n\t\t<a\n\t\t\thref=\"#comment-author-pseudo-link\"\n\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t>\n\t\t\t{ displayName }\n\t\t</a>\n\t) : (\n\t\tdisplayName\n\t);\n\treturn (\n\t\t<>\n\t\t\t{ inspectorControls }\n\t\t\t{ blockControls }\n\t\t\t<div { ...blockProps }>{ displayAuthor }</div>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/comment-author-name/edit.js"],"names":["classnames","__","_x","useSelect","AlignmentControl","BlockControls","InspectorControls","useBlockProps","store","coreStore","PanelBody","ToggleControl","Edit","attributes","isLink","linkTarget","textAlign","context","commentId","setAttributes","blockProps","className","displayName","select","getEntityRecord","comment","authorName","author_name","user","author","name","blockControls","newAlign","inspectorControls","value","displayAuthor","event","preventDefault"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { PanelBody, ToggleControl } from '@wordpress/components';\n\n/**\n * Renders the `core/comment-author-name` block on the editor.\n *\n * @param {Object} props React props.\n * @param {Object} props.setAttributes Callback for updating block attributes.\n * @param {Object} props.attributes Block attributes.\n * @param {string} props.attributes.isLink Whether the author name should be linked.\n * @param {string} props.attributes.linkTarget Target of the link.\n * @param {string} props.attributes.textAlign Text alignment.\n * @param {Object} props.context Inherited context.\n * @param {string} props.context.commentId The comment ID.\n *\n * @return {JSX.Element} React element.\n */\nexport default function Edit( {\n\tattributes: { isLink, linkTarget, textAlign },\n\tcontext: { commentId },\n\tsetAttributes,\n} ) {\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\tlet displayName = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\n\t\t\tconst comment = getEntityRecord( 'root', 'comment', commentId );\n\t\t\tconst authorName = comment?.author_name; // eslint-disable-line camelcase\n\n\t\t\tif ( comment && ! authorName ) {\n\t\t\t\tconst user = getEntityRecord( 'root', 'user', comment.author );\n\t\t\t\treturn user?.name ?? __( 'Anonymous' );\n\t\t\t}\n\t\t\treturn authorName ?? '';\n\t\t},\n\t\t[ commentId ]\n\t);\n\n\tconst blockControls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<AlignmentControl\n\t\t\t\tvalue={ textAlign }\n\t\t\t\tonChange={ ( newAlign ) =>\n\t\t\t\t\tsetAttributes( { textAlign: newAlign } )\n\t\t\t\t}\n\t\t\t/>\n\t\t</BlockControls>\n\t);\n\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Link settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Link to authors URL' ) }\n\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\tchecked={ isLink }\n\t\t\t\t/>\n\t\t\t\t{ isLink && (\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tif ( ! commentId || ! displayName ) {\n\t\tdisplayName = _x( 'Comment Author', 'block title' );\n\t}\n\n\tconst displayAuthor = isLink ? (\n\t\t<a\n\t\t\thref=\"#comment-author-pseudo-link\"\n\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t>\n\t\t\t{ displayName }\n\t\t</a>\n\t) : (\n\t\tdisplayName\n\t);\n\treturn (\n\t\t<>\n\t\t\t{ inspectorControls }\n\t\t\t{ blockControls }\n\t\t\t<div { ...blockProps }>{ displayAuthor }</div>\n\t\t</>\n\t);\n}\n"]}
@@ -45,6 +45,7 @@ export default function Edit(_ref) {
45
45
  format: nextFormat
46
46
  })
47
47
  }), createElement(ToggleControl, {
48
+ __nextHasNoMarginBottom: true,
48
49
  label: __('Link to comment'),
49
50
  onChange: () => setAttributes({
50
51
  isLink: !isLink
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/comment-date/edit.js"],"names":["useEntityProp","dateI18n","getSettings","getDateSettings","InspectorControls","useBlockProps","__experimentalDateFormatPicker","DateFormatPicker","PanelBody","ToggleControl","__","_x","Edit","attributes","format","isLink","context","commentId","setAttributes","blockProps","date","siteFormat","formats","inspectorControls","nextFormat","commentDate","Date","event","preventDefault"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,aAAT,QAA8B,sBAA9B;AACA,SAASC,QAAT,EAAmBC,WAAW,IAAIC,eAAlC,QAAyD,iBAAzD;AACA,SACCC,iBADD,EAECC,aAFD,EAGCC,8BAA8B,IAAIC,gBAHnC,QAIO,yBAJP;AAKA,SAASC,SAAT,EAAoBC,aAApB,QAAyC,uBAAzC;AACA,SAASC,EAAT,EAAaC,EAAb,QAAuB,iBAAvB;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,eAAe,SAASC,IAAT,OAIX;AAAA,MAJ0B;AAC7BC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,MAAF;AAAUC,MAAAA;AAAV,KADiB;AAE7BC,IAAAA,OAAO,EAAE;AAAEC,MAAAA;AAAF,KAFoB;AAG7BC,IAAAA;AAH6B,GAI1B;AACH,QAAMC,UAAU,GAAGd,aAAa,EAAhC;AACA,MAAI,CAAEe,IAAF,IAAWpB,aAAa,CAAE,MAAF,EAAU,SAAV,EAAqB,MAArB,EAA6BiB,SAA7B,CAA5B;AACA,QAAM,CAAEI,UAAU,GAAGlB,eAAe,GAAGmB,OAAlB,CAA0BF,IAAzC,IAAkDpB,aAAa,CACpE,MADoE,EAEpE,MAFoE,EAGpE,aAHoE,CAArE;AAMA,QAAMuB,iBAAiB,GACtB,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGb,EAAE,CAAE,UAAF;AAArB,KACC,cAAC,gBAAD;AACC,IAAA,MAAM,EAAGI,MADV;AAEC,IAAA,aAAa,EAAGO,UAFjB;AAGC,IAAA,QAAQ,EAAKG,UAAF,IACVN,aAAa,CAAE;AAAEJ,MAAAA,MAAM,EAAEU;AAAV,KAAF;AAJf,IADD,EAQC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGd,EAAE,CAAE,iBAAF,CADX;AAEC,IAAA,QAAQ,EAAG,MAAMQ,aAAa,CAAE;AAAEH,MAAAA,MAAM,EAAE,CAAEA;AAAZ,KAAF,CAF/B;AAGC,IAAA,OAAO,EAAGA;AAHX,IARD,CADD,CADD;;AAmBA,MAAK,CAAEE,SAAF,IAAe,CAAEG,IAAtB,EAA6B;AAC5BA,IAAAA,IAAI,GAAGT,EAAE,CAAE,cAAF,EAAkB,aAAlB,CAAT;AACA;;AAED,MAAIc,WAAW,GACdL,IAAI,YAAYM,IAAhB,GACC;AAAM,IAAA,QAAQ,EAAGzB,QAAQ,CAAE,GAAF,EAAOmB,IAAP;AAAzB,KACGnB,QAAQ,CAAEa,MAAM,IAAIO,UAAZ,EAAwBD,IAAxB,CADX,CADD,GAKC,4BAAQA,IAAR,CANF;;AASA,MAAKL,MAAL,EAAc;AACbU,IAAAA,WAAW,GACV;AACC,MAAA,IAAI,EAAC,2BADN;AAEC,MAAA,OAAO,EAAKE,KAAF,IAAaA,KAAK,CAACC,cAAN;AAFxB,OAIGH,WAJH,CADD;AAQA;;AAED,SACC,8BACGF,iBADH,EAEC,qBAAUJ,UAAV,EAAyBM,WAAzB,CAFD,CADD;AAMA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityProp } from '@wordpress/core-data';\nimport { dateI18n, getSettings as getDateSettings } from '@wordpress/date';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\t__experimentalDateFormatPicker as DateFormatPicker,\n} from '@wordpress/block-editor';\nimport { PanelBody, ToggleControl } from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\n\n/**\n * Renders the `core/comment-date` block on the editor.\n *\n * @param {Object} props React props.\n * @param {Object} props.setAttributes Callback for updating block attributes.\n * @param {Object} props.attributes Block attributes.\n * @param {string} props.attributes.format Format of the date.\n * @param {string} props.attributes.isLink Whether the author name should be linked.\n * @param {Object} props.context Inherited context.\n * @param {string} props.context.commentId The comment ID.\n *\n * @return {JSX.Element} React element.\n */\nexport default function Edit( {\n\tattributes: { format, isLink },\n\tcontext: { commentId },\n\tsetAttributes,\n} ) {\n\tconst blockProps = useBlockProps();\n\tlet [ date ] = useEntityProp( 'root', 'comment', 'date', commentId );\n\tconst [ siteFormat = getDateSettings().formats.date ] = useEntityProp(\n\t\t'root',\n\t\t'site',\n\t\t'date_format'\n\t);\n\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t<DateFormatPicker\n\t\t\t\t\tformat={ format }\n\t\t\t\t\tdefaultFormat={ siteFormat }\n\t\t\t\t\tonChange={ ( nextFormat ) =>\n\t\t\t\t\t\tsetAttributes( { format: nextFormat } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Link to comment' ) }\n\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\tchecked={ isLink }\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tif ( ! commentId || ! date ) {\n\t\tdate = _x( 'Comment Date', 'block title' );\n\t}\n\n\tlet commentDate =\n\t\tdate instanceof Date ? (\n\t\t\t<time dateTime={ dateI18n( 'c', date ) }>\n\t\t\t\t{ dateI18n( format || siteFormat, date ) }\n\t\t\t</time>\n\t\t) : (\n\t\t\t<time>{ date }</time>\n\t\t);\n\n\tif ( isLink ) {\n\t\tcommentDate = (\n\t\t\t<a\n\t\t\t\thref=\"#comment-date-pseudo-link\"\n\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t>\n\t\t\t\t{ commentDate }\n\t\t\t</a>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ inspectorControls }\n\t\t\t<div { ...blockProps }>{ commentDate }</div>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/comment-date/edit.js"],"names":["useEntityProp","dateI18n","getSettings","getDateSettings","InspectorControls","useBlockProps","__experimentalDateFormatPicker","DateFormatPicker","PanelBody","ToggleControl","__","_x","Edit","attributes","format","isLink","context","commentId","setAttributes","blockProps","date","siteFormat","formats","inspectorControls","nextFormat","commentDate","Date","event","preventDefault"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,aAAT,QAA8B,sBAA9B;AACA,SAASC,QAAT,EAAmBC,WAAW,IAAIC,eAAlC,QAAyD,iBAAzD;AACA,SACCC,iBADD,EAECC,aAFD,EAGCC,8BAA8B,IAAIC,gBAHnC,QAIO,yBAJP;AAKA,SAASC,SAAT,EAAoBC,aAApB,QAAyC,uBAAzC;AACA,SAASC,EAAT,EAAaC,EAAb,QAAuB,iBAAvB;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,eAAe,SAASC,IAAT,OAIX;AAAA,MAJ0B;AAC7BC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,MAAF;AAAUC,MAAAA;AAAV,KADiB;AAE7BC,IAAAA,OAAO,EAAE;AAAEC,MAAAA;AAAF,KAFoB;AAG7BC,IAAAA;AAH6B,GAI1B;AACH,QAAMC,UAAU,GAAGd,aAAa,EAAhC;AACA,MAAI,CAAEe,IAAF,IAAWpB,aAAa,CAAE,MAAF,EAAU,SAAV,EAAqB,MAArB,EAA6BiB,SAA7B,CAA5B;AACA,QAAM,CAAEI,UAAU,GAAGlB,eAAe,GAAGmB,OAAlB,CAA0BF,IAAzC,IAAkDpB,aAAa,CACpE,MADoE,EAEpE,MAFoE,EAGpE,aAHoE,CAArE;AAMA,QAAMuB,iBAAiB,GACtB,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGb,EAAE,CAAE,UAAF;AAArB,KACC,cAAC,gBAAD;AACC,IAAA,MAAM,EAAGI,MADV;AAEC,IAAA,aAAa,EAAGO,UAFjB;AAGC,IAAA,QAAQ,EAAKG,UAAF,IACVN,aAAa,CAAE;AAAEJ,MAAAA,MAAM,EAAEU;AAAV,KAAF;AAJf,IADD,EAQC,cAAC,aAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGd,EAAE,CAAE,iBAAF,CAFX;AAGC,IAAA,QAAQ,EAAG,MAAMQ,aAAa,CAAE;AAAEH,MAAAA,MAAM,EAAE,CAAEA;AAAZ,KAAF,CAH/B;AAIC,IAAA,OAAO,EAAGA;AAJX,IARD,CADD,CADD;;AAoBA,MAAK,CAAEE,SAAF,IAAe,CAAEG,IAAtB,EAA6B;AAC5BA,IAAAA,IAAI,GAAGT,EAAE,CAAE,cAAF,EAAkB,aAAlB,CAAT;AACA;;AAED,MAAIc,WAAW,GACdL,IAAI,YAAYM,IAAhB,GACC;AAAM,IAAA,QAAQ,EAAGzB,QAAQ,CAAE,GAAF,EAAOmB,IAAP;AAAzB,KACGnB,QAAQ,CAAEa,MAAM,IAAIO,UAAZ,EAAwBD,IAAxB,CADX,CADD,GAKC,4BAAQA,IAAR,CANF;;AASA,MAAKL,MAAL,EAAc;AACbU,IAAAA,WAAW,GACV;AACC,MAAA,IAAI,EAAC,2BADN;AAEC,MAAA,OAAO,EAAKE,KAAF,IAAaA,KAAK,CAACC,cAAN;AAFxB,OAIGH,WAJH,CADD;AAQA;;AAED,SACC,8BACGF,iBADH,EAEC,qBAAUJ,UAAV,EAAyBM,WAAzB,CAFD,CADD;AAMA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityProp } from '@wordpress/core-data';\nimport { dateI18n, getSettings as getDateSettings } from '@wordpress/date';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\t__experimentalDateFormatPicker as DateFormatPicker,\n} from '@wordpress/block-editor';\nimport { PanelBody, ToggleControl } from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\n\n/**\n * Renders the `core/comment-date` block on the editor.\n *\n * @param {Object} props React props.\n * @param {Object} props.setAttributes Callback for updating block attributes.\n * @param {Object} props.attributes Block attributes.\n * @param {string} props.attributes.format Format of the date.\n * @param {string} props.attributes.isLink Whether the author name should be linked.\n * @param {Object} props.context Inherited context.\n * @param {string} props.context.commentId The comment ID.\n *\n * @return {JSX.Element} React element.\n */\nexport default function Edit( {\n\tattributes: { format, isLink },\n\tcontext: { commentId },\n\tsetAttributes,\n} ) {\n\tconst blockProps = useBlockProps();\n\tlet [ date ] = useEntityProp( 'root', 'comment', 'date', commentId );\n\tconst [ siteFormat = getDateSettings().formats.date ] = useEntityProp(\n\t\t'root',\n\t\t'site',\n\t\t'date_format'\n\t);\n\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t<DateFormatPicker\n\t\t\t\t\tformat={ format }\n\t\t\t\t\tdefaultFormat={ siteFormat }\n\t\t\t\t\tonChange={ ( nextFormat ) =>\n\t\t\t\t\t\tsetAttributes( { format: nextFormat } )\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={ __( 'Link to comment' ) }\n\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\tchecked={ isLink }\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tif ( ! commentId || ! date ) {\n\t\tdate = _x( 'Comment Date', 'block title' );\n\t}\n\n\tlet commentDate =\n\t\tdate instanceof Date ? (\n\t\t\t<time dateTime={ dateI18n( 'c', date ) }>\n\t\t\t\t{ dateI18n( format || siteFormat, date ) }\n\t\t\t</time>\n\t\t) : (\n\t\t\t<time>{ date }</time>\n\t\t);\n\n\tif ( isLink ) {\n\t\tcommentDate = (\n\t\t\t<a\n\t\t\t\thref=\"#comment-date-pseudo-link\"\n\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t>\n\t\t\t\t{ commentDate }\n\t\t\t</a>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ inspectorControls }\n\t\t\t<div { ...blockProps }>{ commentDate }</div>\n\t\t</>\n\t);\n}\n"]}
@@ -35,6 +35,7 @@ export default function Edit(_ref) {
35
35
  const inspectorControls = createElement(InspectorControls, null, createElement(PanelBody, {
36
36
  title: __('Link settings')
37
37
  }, createElement(ToggleControl, {
38
+ __nextHasNoMarginBottom: true,
38
39
  label: __('Open in new tab'),
39
40
  onChange: value => setAttributes({
40
41
  linkTarget: value ? '_blank' : '_self'
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/comment-edit-link/edit.js"],"names":["classnames","AlignmentControl","BlockControls","InspectorControls","useBlockProps","PanelBody","ToggleControl","__","Edit","attributes","linkTarget","textAlign","setAttributes","blockProps","className","blockControls","newAlign","inspectorControls","value","event","preventDefault"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SACCC,gBADD,EAECC,aAFD,EAGCC,iBAHD,EAICC,aAJD,QAKO,yBALP;AAMA,SAASC,SAAT,EAAoBC,aAApB,QAAyC,uBAAzC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA,eAAe,SAASC,IAAT,OAGX;AAAA,MAH0B;AAC7BC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,UAAF;AAAcC,MAAAA;AAAd,KADiB;AAE7BC,IAAAA;AAF6B,GAG1B;AACH,QAAMC,UAAU,GAAGT,aAAa,CAAE;AACjCU,IAAAA,SAAS,EAAEd,UAAU,CAAE;AACtB,OAAG,kBAAkBW,SAAW,EAAhC,GAAqCA;AADf,KAAF;AADY,GAAF,CAAhC;AAMA,QAAMI,aAAa,GAClB,cAAC,aAAD;AAAe,IAAA,KAAK,EAAC;AAArB,KACC,cAAC,gBAAD;AACC,IAAA,KAAK,EAAGJ,SADT;AAEC,IAAA,QAAQ,EAAKK,QAAF,IACVJ,aAAa,CAAE;AAAED,MAAAA,SAAS,EAAEK;AAAb,KAAF;AAHf,IADD,CADD;AAUA,QAAMC,iBAAiB,GACtB,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGV,EAAE,CAAE,eAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGA,EAAE,CAAE,iBAAF,CADX;AAEC,IAAA,QAAQ,EAAKW,KAAF,IACVN,aAAa,CAAE;AACdF,MAAAA,UAAU,EAAEQ,KAAK,GAAG,QAAH,GAAc;AADjB,KAAF,CAHf;AAOC,IAAA,OAAO,EAAGR,UAAU,KAAK;AAP1B,IADD,CADD,CADD;AAgBA,SACC,8BACGK,aADH,EAEGE,iBAFH,EAGC,qBAAUJ,UAAV,EACC;AACC,IAAA,IAAI,EAAC,2BADN;AAEC,IAAA,OAAO,EAAKM,KAAF,IAAaA,KAAK,CAACC,cAAN;AAFxB,KAIGb,EAAE,CAAE,MAAF,CAJL,CADD,CAHD,CADD;AAcA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { PanelBody, ToggleControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nexport default function Edit( {\n\tattributes: { linkTarget, textAlign },\n\tsetAttributes,\n} ) {\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tconst blockControls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<AlignmentControl\n\t\t\t\tvalue={ textAlign }\n\t\t\t\tonChange={ ( newAlign ) =>\n\t\t\t\t\tsetAttributes( { textAlign: newAlign } )\n\t\t\t\t}\n\t\t\t/>\n\t\t</BlockControls>\n\t);\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Link settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ blockControls }\n\t\t\t{ inspectorControls }\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<a\n\t\t\t\t\thref=\"#edit-comment-pseudo-link\"\n\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t</a>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/comment-edit-link/edit.js"],"names":["classnames","AlignmentControl","BlockControls","InspectorControls","useBlockProps","PanelBody","ToggleControl","__","Edit","attributes","linkTarget","textAlign","setAttributes","blockProps","className","blockControls","newAlign","inspectorControls","value","event","preventDefault"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SACCC,gBADD,EAECC,aAFD,EAGCC,iBAHD,EAICC,aAJD,QAKO,yBALP;AAMA,SAASC,SAAT,EAAoBC,aAApB,QAAyC,uBAAzC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA,eAAe,SAASC,IAAT,OAGX;AAAA,MAH0B;AAC7BC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,UAAF;AAAcC,MAAAA;AAAd,KADiB;AAE7BC,IAAAA;AAF6B,GAG1B;AACH,QAAMC,UAAU,GAAGT,aAAa,CAAE;AACjCU,IAAAA,SAAS,EAAEd,UAAU,CAAE;AACtB,OAAG,kBAAkBW,SAAW,EAAhC,GAAqCA;AADf,KAAF;AADY,GAAF,CAAhC;AAMA,QAAMI,aAAa,GAClB,cAAC,aAAD;AAAe,IAAA,KAAK,EAAC;AAArB,KACC,cAAC,gBAAD;AACC,IAAA,KAAK,EAAGJ,SADT;AAEC,IAAA,QAAQ,EAAKK,QAAF,IACVJ,aAAa,CAAE;AAAED,MAAAA,SAAS,EAAEK;AAAb,KAAF;AAHf,IADD,CADD;AAUA,QAAMC,iBAAiB,GACtB,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGV,EAAE,CAAE,eAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGA,EAAE,CAAE,iBAAF,CAFX;AAGC,IAAA,QAAQ,EAAKW,KAAF,IACVN,aAAa,CAAE;AACdF,MAAAA,UAAU,EAAEQ,KAAK,GAAG,QAAH,GAAc;AADjB,KAAF,CAJf;AAQC,IAAA,OAAO,EAAGR,UAAU,KAAK;AAR1B,IADD,CADD,CADD;AAiBA,SACC,8BACGK,aADH,EAEGE,iBAFH,EAGC,qBAAUJ,UAAV,EACC;AACC,IAAA,IAAI,EAAC,2BADN;AAEC,IAAA,OAAO,EAAKM,KAAF,IAAaA,KAAK,CAACC,cAAN;AAFxB,KAIGb,EAAE,CAAE,MAAF,CAJL,CADD,CAHD,CADD;AAcA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { PanelBody, ToggleControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nexport default function Edit( {\n\tattributes: { linkTarget, textAlign },\n\tsetAttributes,\n} ) {\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tconst blockControls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<AlignmentControl\n\t\t\t\tvalue={ textAlign }\n\t\t\t\tonChange={ ( newAlign ) =>\n\t\t\t\t\tsetAttributes( { textAlign: newAlign } )\n\t\t\t\t}\n\t\t\t/>\n\t\t</BlockControls>\n\t);\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Link settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ blockControls }\n\t\t\t{ inspectorControls }\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<a\n\t\t\t\t\thref=\"#edit-comment-pseudo-link\"\n\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t</a>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
@@ -7,6 +7,7 @@ import { store as blockEditorStore } from '@wordpress/block-editor';
7
7
  import { __, sprintf } from '@wordpress/i18n';
8
8
  import { useSelect } from '@wordpress/data';
9
9
  import { useEntityProp } from '@wordpress/core-data';
10
+ import { createInterpolateElement } from '@wordpress/element';
10
11
  /**
11
12
  * Internal dependencies
12
13
  */
@@ -48,7 +49,7 @@ export default function PostCommentsPlaceholder(_ref) {
48
49
  }, createElement("div", {
49
50
  className: "comment-author vcard"
50
51
  }, createElement("img", {
51
- alt: "Commenter Avatar",
52
+ alt: __('Commenter Avatar'),
52
53
  src: avatarURL,
53
54
  className: "avatar avatar-32 photo",
54
55
  height: "32",
@@ -74,14 +75,17 @@ export default function PostCommentsPlaceholder(_ref) {
74
75
  href: "#top"
75
76
  }, __('Edit'))))), createElement("div", {
76
77
  className: "comment-content"
77
- }, createElement("p", null, __('Hi, this is a comment.'), createElement("br", null), __('To get started with moderating, editing, and deleting comments, please visit the Comments screen in the dashboard.'), createElement("br", null), __('Commenter avatars come from'), ' ', createElement("a", {
78
- href: "https://gravatar.com/"
79
- }, "Gravatar"), ".")), createElement("div", {
78
+ }, createElement("p", null, __('Hi, this is a comment.'), createElement("br", null), __('To get started with moderating, editing, and deleting comments, please visit the Comments screen in the dashboard.'), createElement("br", null), createInterpolateElement(__('Commenter avatars come from <a>Gravatar</a>.'), {
79
+ a: // eslint-disable-next-line jsx-a11y/anchor-has-content
80
+ createElement("a", {
81
+ href: "https://gravatar.com/"
82
+ })
83
+ }))), createElement("div", {
80
84
  className: "reply"
81
85
  }, createElement("a", {
82
86
  className: "comment-reply-link",
83
87
  href: "#top",
84
- "aria-label": "Reply to A WordPress Commenter"
88
+ "aria-label": __('Reply to A WordPress Commenter')
85
89
  }, __('Reply')))))), createElement("div", {
86
90
  className: "navigation"
87
91
  }, createElement("div", {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/comments/edit/placeholder.js"],"names":["store","blockEditorStore","__","sprintf","useSelect","useEntityProp","CommentsForm","PostCommentsPlaceholder","postType","postId","postTitle","avatarURL","select","getSettings","__experimentalDiscussionSettings"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { useEntityProp } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport CommentsForm from '../../post-comments-form/form';\n\nexport default function PostCommentsPlaceholder( { postType, postId } ) {\n\tlet [ postTitle ] = useEntityProp( 'postType', postType, 'title', postId );\n\tpostTitle = postTitle || __( 'Post Title' );\n\n\tconst { avatarURL } = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t.__experimentalDiscussionSettings\n\t);\n\n\treturn (\n\t\t<div className=\"wp-block-comments__legacy-placeholder\" inert=\"true\">\n\t\t\t<h3>\n\t\t\t\t{\n\t\t\t\t\t/* translators: %s: Post title. */\n\t\t\t\t\tsprintf( __( 'One response to %s' ), postTitle )\n\t\t\t\t}\n\t\t\t</h3>\n\n\t\t\t<div className=\"navigation\">\n\t\t\t\t<div className=\"alignleft\">\n\t\t\t\t\t<a href=\"#top\">« { __( 'Older Comments' ) }</a>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"alignright\">\n\t\t\t\t\t<a href=\"#top\">{ __( 'Newer Comments' ) } »</a>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<ol className=\"commentlist\">\n\t\t\t\t<li className=\"comment even thread-even depth-1\">\n\t\t\t\t\t<article className=\"comment-body\">\n\t\t\t\t\t\t<footer className=\"comment-meta\">\n\t\t\t\t\t\t\t<div className=\"comment-author vcard\">\n\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\talt=\"Commenter Avatar\"\n\t\t\t\t\t\t\t\t\tsrc={ avatarURL }\n\t\t\t\t\t\t\t\t\tclassName=\"avatar avatar-32 photo\"\n\t\t\t\t\t\t\t\t\theight=\"32\"\n\t\t\t\t\t\t\t\t\twidth=\"32\"\n\t\t\t\t\t\t\t\t\tloading=\"lazy\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<b className=\"fn\">\n\t\t\t\t\t\t\t\t\t<a href=\"#top\" className=\"url\">\n\t\t\t\t\t\t\t\t\t\t{ __( 'A WordPress Commenter' ) }\n\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t</b>{ ' ' }\n\t\t\t\t\t\t\t\t<span className=\"says\">{ __( 'says' ) }:</span>\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t<div className=\"comment-metadata\">\n\t\t\t\t\t\t\t\t<a href=\"#top\">\n\t\t\t\t\t\t\t\t\t<time dateTime=\"2000-01-01T00:00:00+00:00\">\n\t\t\t\t\t\t\t\t\t\t{ __( 'January 1, 2000 at 00:00 am' ) }\n\t\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t\t</a>{ ' ' }\n\t\t\t\t\t\t\t\t<span className=\"edit-link\">\n\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\tclassName=\"comment-edit-link\"\n\t\t\t\t\t\t\t\t\t\thref=\"#top\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</footer>\n\n\t\t\t\t\t\t<div className=\"comment-content\">\n\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t{ __( 'Hi, this is a comment.' ) }\n\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'To get started with moderating, editing, and deleting comments, please visit the Comments screen in the dashboard.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t{ __( 'Commenter avatars come from' ) }{ ' ' }\n\t\t\t\t\t\t\t\t<a href=\"https://gravatar.com/\">Gravatar</a>.\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div className=\"reply\">\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tclassName=\"comment-reply-link\"\n\t\t\t\t\t\t\t\thref=\"#top\"\n\t\t\t\t\t\t\t\taria-label=\"Reply to A WordPress Commenter\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Reply' ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</article>\n\t\t\t\t</li>\n\t\t\t</ol>\n\n\t\t\t<div className=\"navigation\">\n\t\t\t\t<div className=\"alignleft\">\n\t\t\t\t\t<a href=\"#top\">« { __( 'Older Comments' ) }</a>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"alignright\">\n\t\t\t\t\t<a href=\"#top\">{ __( 'Newer Comments' ) } »</a>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<CommentsForm postId={ postId } postType={ postType } />\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/comments/edit/placeholder.js"],"names":["store","blockEditorStore","__","sprintf","useSelect","useEntityProp","createInterpolateElement","CommentsForm","PostCommentsPlaceholder","postType","postId","postTitle","avatarURL","select","getSettings","__experimentalDiscussionSettings","a"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { useEntityProp } from '@wordpress/core-data';\nimport { createInterpolateElement } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport CommentsForm from '../../post-comments-form/form';\n\nexport default function PostCommentsPlaceholder( { postType, postId } ) {\n\tlet [ postTitle ] = useEntityProp( 'postType', postType, 'title', postId );\n\tpostTitle = postTitle || __( 'Post Title' );\n\n\tconst { avatarURL } = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t.__experimentalDiscussionSettings\n\t);\n\n\treturn (\n\t\t<div className=\"wp-block-comments__legacy-placeholder\" inert=\"true\">\n\t\t\t<h3>\n\t\t\t\t{\n\t\t\t\t\t/* translators: %s: Post title. */\n\t\t\t\t\tsprintf( __( 'One response to %s' ), postTitle )\n\t\t\t\t}\n\t\t\t</h3>\n\n\t\t\t<div className=\"navigation\">\n\t\t\t\t<div className=\"alignleft\">\n\t\t\t\t\t<a href=\"#top\">« { __( 'Older Comments' ) }</a>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"alignright\">\n\t\t\t\t\t<a href=\"#top\">{ __( 'Newer Comments' ) } »</a>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<ol className=\"commentlist\">\n\t\t\t\t<li className=\"comment even thread-even depth-1\">\n\t\t\t\t\t<article className=\"comment-body\">\n\t\t\t\t\t\t<footer className=\"comment-meta\">\n\t\t\t\t\t\t\t<div className=\"comment-author vcard\">\n\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\talt={ __( 'Commenter Avatar' ) }\n\t\t\t\t\t\t\t\t\tsrc={ avatarURL }\n\t\t\t\t\t\t\t\t\tclassName=\"avatar avatar-32 photo\"\n\t\t\t\t\t\t\t\t\theight=\"32\"\n\t\t\t\t\t\t\t\t\twidth=\"32\"\n\t\t\t\t\t\t\t\t\tloading=\"lazy\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<b className=\"fn\">\n\t\t\t\t\t\t\t\t\t<a href=\"#top\" className=\"url\">\n\t\t\t\t\t\t\t\t\t\t{ __( 'A WordPress Commenter' ) }\n\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t</b>{ ' ' }\n\t\t\t\t\t\t\t\t<span className=\"says\">{ __( 'says' ) }:</span>\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t<div className=\"comment-metadata\">\n\t\t\t\t\t\t\t\t<a href=\"#top\">\n\t\t\t\t\t\t\t\t\t<time dateTime=\"2000-01-01T00:00:00+00:00\">\n\t\t\t\t\t\t\t\t\t\t{ __( 'January 1, 2000 at 00:00 am' ) }\n\t\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t\t</a>{ ' ' }\n\t\t\t\t\t\t\t\t<span className=\"edit-link\">\n\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\tclassName=\"comment-edit-link\"\n\t\t\t\t\t\t\t\t\t\thref=\"#top\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</footer>\n\n\t\t\t\t\t\t<div className=\"comment-content\">\n\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t{ __( 'Hi, this is a comment.' ) }\n\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'To get started with moderating, editing, and deleting comments, please visit the Comments screen in the dashboard.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'Commenter avatars come from <a>Gravatar</a>.'\n\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\t\ta: (\n\t\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/anchor-has-content\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"https://gravatar.com/\" />\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div className=\"reply\">\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tclassName=\"comment-reply-link\"\n\t\t\t\t\t\t\t\thref=\"#top\"\n\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t'Reply to A WordPress Commenter'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Reply' ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</article>\n\t\t\t\t</li>\n\t\t\t</ol>\n\n\t\t\t<div className=\"navigation\">\n\t\t\t\t<div className=\"alignleft\">\n\t\t\t\t\t<a href=\"#top\">« { __( 'Older Comments' ) }</a>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"alignright\">\n\t\t\t\t\t<a href=\"#top\">{ __( 'Newer Comments' ) } »</a>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<CommentsForm postId={ postId } postType={ postType } />\n\t\t</div>\n\t);\n}\n"]}
@@ -98,12 +98,14 @@ export default function Edit(_ref) {
98
98
  const inspectorControls = createElement(InspectorControls, null, createElement(PanelBody, {
99
99
  title: __('Settings')
100
100
  }, createElement(ToggleControl, {
101
+ __nextHasNoMarginBottom: true,
101
102
  label: __('Show post title'),
102
103
  checked: showPostTitle,
103
104
  onChange: value => setAttributes({
104
105
  showPostTitle: value
105
106
  })
106
107
  }), createElement(ToggleControl, {
108
+ __nextHasNoMarginBottom: true,
107
109
  label: __('Show comments count'),
108
110
  checked: showCommentsCount,
109
111
  onChange: value => setAttributes({
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/comments-title/edit.js"],"names":["classnames","AlignmentControl","BlockControls","useBlockProps","InspectorControls","store","blockEditorStore","__","_n","sprintf","useEntityProp","PanelBody","ToggleControl","useState","useEffect","useSelect","apiFetch","addQueryArgs","HeadingLevelDropdown","Edit","attributes","textAlign","showPostTitle","showCommentsCount","level","setAttributes","context","postType","postId","TagName","commentsCount","setCommentsCount","rawTitle","isSiteEditor","blockProps","className","threadCommentsDepth","threadComments","commentsPerPage","pageComments","select","getSettings","__experimentalDiscussionSettings","nestedCommentsNumber","Math","min","topLevelCommentsNumber","commentsNumber","parseInt","currentPostId","path","post","_fields","method","parse","then","res","headers","get","catch","blockControls","newAlign","newLevel","inspectorControls","value","postTitle","placeholder","undefined"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tuseBlockProps,\n\tInspectorControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport { useEntityProp } from '@wordpress/core-data';\nimport { PanelBody, ToggleControl } from '@wordpress/components';\nimport { useState, useEffect } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport apiFetch from '@wordpress/api-fetch';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport HeadingLevelDropdown from '../heading/heading-level-dropdown';\n\nexport default function Edit( {\n\tattributes: { textAlign, showPostTitle, showCommentsCount, level },\n\tsetAttributes,\n\tcontext: { postType, postId },\n} ) {\n\tconst TagName = 'h' + level;\n\tconst [ commentsCount, setCommentsCount ] = useState();\n\tconst [ rawTitle ] = useEntityProp( 'postType', postType, 'title', postId );\n\tconst isSiteEditor = typeof postId === 'undefined';\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tconst {\n\t\tthreadCommentsDepth,\n\t\tthreadComments,\n\t\tcommentsPerPage,\n\t\tpageComments,\n\t} = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn getSettings().__experimentalDiscussionSettings;\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( isSiteEditor ) {\n\t\t\t// Match the number of comments that will be shown in the comment-template/edit.js placeholder\n\n\t\t\tconst nestedCommentsNumber = threadComments\n\t\t\t\t? Math.min( threadCommentsDepth, 3 ) - 1\n\t\t\t\t: 0;\n\t\t\tconst topLevelCommentsNumber = pageComments ? commentsPerPage : 3;\n\n\t\t\tconst commentsNumber =\n\t\t\t\tparseInt( nestedCommentsNumber ) +\n\t\t\t\tparseInt( topLevelCommentsNumber );\n\n\t\t\tsetCommentsCount( Math.min( commentsNumber, 3 ) );\n\t\t\treturn;\n\t\t}\n\t\tconst currentPostId = postId;\n\t\tapiFetch( {\n\t\t\tpath: addQueryArgs( '/wp/v2/comments', {\n\t\t\t\tpost: postId,\n\t\t\t\t_fields: 'id',\n\t\t\t} ),\n\t\t\tmethod: 'HEAD',\n\t\t\tparse: false,\n\t\t} )\n\t\t\t.then( ( res ) => {\n\t\t\t\t// Stale requests will have the `currentPostId` of an older closure.\n\t\t\t\tif ( currentPostId === postId ) {\n\t\t\t\t\tsetCommentsCount(\n\t\t\t\t\t\tparseInt( res.headers.get( 'X-WP-Total' ) )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.catch( () => {\n\t\t\t\tsetCommentsCount( 0 );\n\t\t\t} );\n\t}, [ postId ] );\n\n\tconst blockControls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<AlignmentControl\n\t\t\t\tvalue={ textAlign }\n\t\t\t\tonChange={ ( newAlign ) =>\n\t\t\t\t\tsetAttributes( { textAlign: newAlign } )\n\t\t\t\t}\n\t\t\t/>\n\t\t\t<HeadingLevelDropdown\n\t\t\t\tselectedLevel={ level }\n\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t}\n\t\t\t/>\n\t\t</BlockControls>\n\t);\n\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Show post title' ) }\n\t\t\t\t\tchecked={ showPostTitle }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { showPostTitle: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Show comments count' ) }\n\t\t\t\t\tchecked={ showCommentsCount }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { showCommentsCount: value } )\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 postTitle = isSiteEditor ? __( '“Post Title”' ) : `\"${ rawTitle }\"`;\n\n\tlet placeholder;\n\tif ( showCommentsCount && commentsCount !== undefined ) {\n\t\tif ( showPostTitle ) {\n\t\t\tif ( commentsCount === 1 ) {\n\t\t\t\t/* translators: %s: Post title. */\n\t\t\t\tplaceholder = sprintf( __( 'One response to %s' ), postTitle );\n\t\t\t} else {\n\t\t\t\tplaceholder = sprintf(\n\t\t\t\t\t/* translators: 1: Number of comments, 2: Post title. */\n\t\t\t\t\t_n(\n\t\t\t\t\t\t'%1$s response to %2$s',\n\t\t\t\t\t\t'%1$s responses to %2$s',\n\t\t\t\t\t\tcommentsCount\n\t\t\t\t\t),\n\t\t\t\t\tcommentsCount,\n\t\t\t\t\tpostTitle\n\t\t\t\t);\n\t\t\t}\n\t\t} else if ( commentsCount === 1 ) {\n\t\t\tplaceholder = __( 'One response' );\n\t\t} else {\n\t\t\tplaceholder = sprintf(\n\t\t\t\t/* translators: %s: Number of comments. */\n\t\t\t\t_n( '%s response', '%s responses', commentsCount ),\n\t\t\t\tcommentsCount\n\t\t\t);\n\t\t}\n\t} else if ( showPostTitle ) {\n\t\tif ( commentsCount === 1 ) {\n\t\t\t/* translators: %s: Post title. */\n\t\t\tplaceholder = sprintf( __( 'Response to %s' ), postTitle );\n\t\t} else {\n\t\t\t/* translators: %s: Post title. */\n\t\t\tplaceholder = sprintf( __( 'Responses to %s' ), postTitle );\n\t\t}\n\t} else if ( commentsCount === 1 ) {\n\t\tplaceholder = __( 'Response' );\n\t} else {\n\t\tplaceholder = __( 'Responses' );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ blockControls }\n\t\t\t{ inspectorControls }\n\t\t\t<TagName { ...blockProps }>{ placeholder }</TagName>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/comments-title/edit.js"],"names":["classnames","AlignmentControl","BlockControls","useBlockProps","InspectorControls","store","blockEditorStore","__","_n","sprintf","useEntityProp","PanelBody","ToggleControl","useState","useEffect","useSelect","apiFetch","addQueryArgs","HeadingLevelDropdown","Edit","attributes","textAlign","showPostTitle","showCommentsCount","level","setAttributes","context","postType","postId","TagName","commentsCount","setCommentsCount","rawTitle","isSiteEditor","blockProps","className","threadCommentsDepth","threadComments","commentsPerPage","pageComments","select","getSettings","__experimentalDiscussionSettings","nestedCommentsNumber","Math","min","topLevelCommentsNumber","commentsNumber","parseInt","currentPostId","path","post","_fields","method","parse","then","res","headers","get","catch","blockControls","newAlign","newLevel","inspectorControls","value","postTitle","placeholder","undefined"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tuseBlockProps,\n\tInspectorControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport { useEntityProp } from '@wordpress/core-data';\nimport { PanelBody, ToggleControl } from '@wordpress/components';\nimport { useState, useEffect } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport apiFetch from '@wordpress/api-fetch';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport HeadingLevelDropdown from '../heading/heading-level-dropdown';\n\nexport default function Edit( {\n\tattributes: { textAlign, showPostTitle, showCommentsCount, level },\n\tsetAttributes,\n\tcontext: { postType, postId },\n} ) {\n\tconst TagName = 'h' + level;\n\tconst [ commentsCount, setCommentsCount ] = useState();\n\tconst [ rawTitle ] = useEntityProp( 'postType', postType, 'title', postId );\n\tconst isSiteEditor = typeof postId === 'undefined';\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tconst {\n\t\tthreadCommentsDepth,\n\t\tthreadComments,\n\t\tcommentsPerPage,\n\t\tpageComments,\n\t} = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn getSettings().__experimentalDiscussionSettings;\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( isSiteEditor ) {\n\t\t\t// Match the number of comments that will be shown in the comment-template/edit.js placeholder\n\n\t\t\tconst nestedCommentsNumber = threadComments\n\t\t\t\t? Math.min( threadCommentsDepth, 3 ) - 1\n\t\t\t\t: 0;\n\t\t\tconst topLevelCommentsNumber = pageComments ? commentsPerPage : 3;\n\n\t\t\tconst commentsNumber =\n\t\t\t\tparseInt( nestedCommentsNumber ) +\n\t\t\t\tparseInt( topLevelCommentsNumber );\n\n\t\t\tsetCommentsCount( Math.min( commentsNumber, 3 ) );\n\t\t\treturn;\n\t\t}\n\t\tconst currentPostId = postId;\n\t\tapiFetch( {\n\t\t\tpath: addQueryArgs( '/wp/v2/comments', {\n\t\t\t\tpost: postId,\n\t\t\t\t_fields: 'id',\n\t\t\t} ),\n\t\t\tmethod: 'HEAD',\n\t\t\tparse: false,\n\t\t} )\n\t\t\t.then( ( res ) => {\n\t\t\t\t// Stale requests will have the `currentPostId` of an older closure.\n\t\t\t\tif ( currentPostId === postId ) {\n\t\t\t\t\tsetCommentsCount(\n\t\t\t\t\t\tparseInt( res.headers.get( 'X-WP-Total' ) )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.catch( () => {\n\t\t\t\tsetCommentsCount( 0 );\n\t\t\t} );\n\t}, [ postId ] );\n\n\tconst blockControls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<AlignmentControl\n\t\t\t\tvalue={ textAlign }\n\t\t\t\tonChange={ ( newAlign ) =>\n\t\t\t\t\tsetAttributes( { textAlign: newAlign } )\n\t\t\t\t}\n\t\t\t/>\n\t\t\t<HeadingLevelDropdown\n\t\t\t\tselectedLevel={ level }\n\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t}\n\t\t\t/>\n\t\t</BlockControls>\n\t);\n\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Show post title' ) }\n\t\t\t\t\tchecked={ showPostTitle }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { showPostTitle: 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={ __( 'Show comments count' ) }\n\t\t\t\t\tchecked={ showCommentsCount }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { showCommentsCount: value } )\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 postTitle = isSiteEditor ? __( '“Post Title”' ) : `\"${ rawTitle }\"`;\n\n\tlet placeholder;\n\tif ( showCommentsCount && commentsCount !== undefined ) {\n\t\tif ( showPostTitle ) {\n\t\t\tif ( commentsCount === 1 ) {\n\t\t\t\t/* translators: %s: Post title. */\n\t\t\t\tplaceholder = sprintf( __( 'One response to %s' ), postTitle );\n\t\t\t} else {\n\t\t\t\tplaceholder = sprintf(\n\t\t\t\t\t/* translators: 1: Number of comments, 2: Post title. */\n\t\t\t\t\t_n(\n\t\t\t\t\t\t'%1$s response to %2$s',\n\t\t\t\t\t\t'%1$s responses to %2$s',\n\t\t\t\t\t\tcommentsCount\n\t\t\t\t\t),\n\t\t\t\t\tcommentsCount,\n\t\t\t\t\tpostTitle\n\t\t\t\t);\n\t\t\t}\n\t\t} else if ( commentsCount === 1 ) {\n\t\t\tplaceholder = __( 'One response' );\n\t\t} else {\n\t\t\tplaceholder = sprintf(\n\t\t\t\t/* translators: %s: Number of comments. */\n\t\t\t\t_n( '%s response', '%s responses', commentsCount ),\n\t\t\t\tcommentsCount\n\t\t\t);\n\t\t}\n\t} else if ( showPostTitle ) {\n\t\tif ( commentsCount === 1 ) {\n\t\t\t/* translators: %s: Post title. */\n\t\t\tplaceholder = sprintf( __( 'Response to %s' ), postTitle );\n\t\t} else {\n\t\t\t/* translators: %s: Post title. */\n\t\t\tplaceholder = sprintf( __( 'Responses to %s' ), postTitle );\n\t\t}\n\t} else if ( commentsCount === 1 ) {\n\t\tplaceholder = __( 'Response' );\n\t} else {\n\t\tplaceholder = __( 'Responses' );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ blockControls }\n\t\t\t{ inspectorControls }\n\t\t\t<TagName { ...blockProps }>{ placeholder }</TagName>\n\t\t</>\n\t);\n}\n"]}