@wordpress/editor 14.7.0 → 14.7.1-next.1f6eadc42.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 (301) hide show
  1. package/README.md +4 -0
  2. package/build/bindings/post-meta.js +2 -1
  3. package/build/bindings/post-meta.js.map +1 -1
  4. package/build/components/block-manager/index.js +2 -4
  5. package/build/components/block-manager/index.js.map +1 -1
  6. package/build/components/editor/index.js +2 -2
  7. package/build/components/editor/index.js.map +1 -1
  8. package/build/components/editor-history/redo.js +2 -4
  9. package/build/components/editor-history/redo.js.map +1 -1
  10. package/build/components/editor-history/undo.js +2 -4
  11. package/build/components/editor-history/undo.js.map +1 -1
  12. package/build/components/error-boundary/index.js +2 -4
  13. package/build/components/error-boundary/index.js.map +1 -1
  14. package/build/components/global-styles-provider/index.js +3 -4
  15. package/build/components/global-styles-provider/index.js.map +1 -1
  16. package/build/components/header/index.js +6 -4
  17. package/build/components/header/index.js.map +1 -1
  18. package/build/components/inserter-sidebar/index.js +2 -5
  19. package/build/components/inserter-sidebar/index.js.map +1 -1
  20. package/build/components/post-excerpt/panel.js +2 -5
  21. package/build/components/post-excerpt/panel.js.map +1 -1
  22. package/build/components/post-featured-image/index.js +6 -12
  23. package/build/components/post-featured-image/index.js.map +1 -1
  24. package/build/components/post-format/index.js +2 -4
  25. package/build/components/post-format/index.js.map +1 -1
  26. package/build/components/post-last-revision/index.js +2 -4
  27. package/build/components/post-last-revision/index.js.map +1 -1
  28. package/build/components/post-locked-modal/index.js +4 -8
  29. package/build/components/post-locked-modal/index.js.map +1 -1
  30. package/build/components/post-publish-panel/index.js +2 -4
  31. package/build/components/post-publish-panel/index.js.map +1 -1
  32. package/build/components/post-publish-panel/maybe-post-format-panel.js +2 -4
  33. package/build/components/post-publish-panel/maybe-post-format-panel.js.map +1 -1
  34. package/build/components/post-publish-panel/maybe-upload-media.js +153 -36
  35. package/build/components/post-publish-panel/maybe-upload-media.js.map +1 -1
  36. package/build/components/post-publish-panel/media-util.js +79 -0
  37. package/build/components/post-publish-panel/media-util.js.map +1 -0
  38. package/build/components/post-trash/check.js +2 -1
  39. package/build/components/post-trash/check.js.map +1 -1
  40. package/build/components/post-trash/index.js +22 -8
  41. package/build/components/post-trash/index.js.map +1 -1
  42. package/build/components/preferences-modal/index.js +28 -1
  43. package/build/components/preferences-modal/index.js.map +1 -1
  44. package/build/components/preview-dropdown/index.js +5 -57
  45. package/build/components/preview-dropdown/index.js.map +1 -1
  46. package/build/components/provider/index.js +34 -8
  47. package/build/components/provider/index.js.map +1 -1
  48. package/build/components/provider/use-block-editor-settings.js +9 -4
  49. package/build/components/provider/use-block-editor-settings.js.map +1 -1
  50. package/build/components/sidebar/post-summary.js +3 -0
  51. package/build/components/sidebar/post-summary.js.map +1 -1
  52. package/build/components/start-page-options/index.js +16 -19
  53. package/build/components/start-page-options/index.js.map +1 -1
  54. package/build/components/start-template-options/index.js +2 -4
  55. package/build/components/start-template-options/index.js.map +1 -1
  56. package/build/components/table-of-contents/index.js +2 -4
  57. package/build/components/table-of-contents/index.js.map +1 -1
  58. package/build/components/text-editor/index.js +2 -4
  59. package/build/components/text-editor/index.js.map +1 -1
  60. package/build/components/visual-editor/edit-template-blocks-notification.js +1 -1
  61. package/build/components/visual-editor/edit-template-blocks-notification.js.map +1 -1
  62. package/build/components/zoom-out-toggle/index.js +38 -0
  63. package/build/components/zoom-out-toggle/index.js.map +1 -0
  64. package/build/dataviews/actions/reset-post.js +4 -8
  65. package/build/dataviews/actions/reset-post.js.map +1 -1
  66. package/build/dataviews/actions/trash-post.js +4 -8
  67. package/build/dataviews/actions/trash-post.js.map +1 -1
  68. package/build/dataviews/store/private-actions.js +4 -10
  69. package/build/dataviews/store/private-actions.js.map +1 -1
  70. package/build/store/selectors.js +7 -3
  71. package/build/store/selectors.js.map +1 -1
  72. package/build-module/bindings/post-meta.js +2 -1
  73. package/build-module/bindings/post-meta.js.map +1 -1
  74. package/build-module/components/block-manager/index.js +2 -4
  75. package/build-module/components/block-manager/index.js.map +1 -1
  76. package/build-module/components/editor/index.js +2 -2
  77. package/build-module/components/editor/index.js.map +1 -1
  78. package/build-module/components/editor-history/redo.js +2 -4
  79. package/build-module/components/editor-history/redo.js.map +1 -1
  80. package/build-module/components/editor-history/undo.js +2 -4
  81. package/build-module/components/editor-history/undo.js.map +1 -1
  82. package/build-module/components/error-boundary/index.js +2 -4
  83. package/build-module/components/error-boundary/index.js.map +1 -1
  84. package/build-module/components/global-styles-provider/index.js +3 -4
  85. package/build-module/components/global-styles-provider/index.js.map +1 -1
  86. package/build-module/components/header/index.js +6 -4
  87. package/build-module/components/header/index.js.map +1 -1
  88. package/build-module/components/inserter-sidebar/index.js +2 -5
  89. package/build-module/components/inserter-sidebar/index.js.map +1 -1
  90. package/build-module/components/post-excerpt/panel.js +2 -5
  91. package/build-module/components/post-excerpt/panel.js.map +1 -1
  92. package/build-module/components/post-featured-image/index.js +6 -12
  93. package/build-module/components/post-featured-image/index.js.map +1 -1
  94. package/build-module/components/post-format/index.js +2 -4
  95. package/build-module/components/post-format/index.js.map +1 -1
  96. package/build-module/components/post-last-revision/index.js +2 -4
  97. package/build-module/components/post-last-revision/index.js.map +1 -1
  98. package/build-module/components/post-locked-modal/index.js +4 -8
  99. package/build-module/components/post-locked-modal/index.js.map +1 -1
  100. package/build-module/components/post-publish-panel/index.js +2 -4
  101. package/build-module/components/post-publish-panel/index.js.map +1 -1
  102. package/build-module/components/post-publish-panel/maybe-post-format-panel.js +2 -4
  103. package/build-module/components/post-publish-panel/maybe-post-format-panel.js.map +1 -1
  104. package/build-module/components/post-publish-panel/maybe-upload-media.js +152 -35
  105. package/build-module/components/post-publish-panel/maybe-upload-media.js.map +1 -1
  106. package/build-module/components/post-publish-panel/media-util.js +72 -0
  107. package/build-module/components/post-publish-panel/media-util.js.map +1 -0
  108. package/build-module/components/post-trash/check.js +2 -1
  109. package/build-module/components/post-trash/check.js.map +1 -1
  110. package/build-module/components/post-trash/index.js +23 -11
  111. package/build-module/components/post-trash/index.js.map +1 -1
  112. package/build-module/components/preferences-modal/index.js +28 -1
  113. package/build-module/components/preferences-modal/index.js.map +1 -1
  114. package/build-module/components/preview-dropdown/index.js +5 -57
  115. package/build-module/components/preview-dropdown/index.js.map +1 -1
  116. package/build-module/components/provider/index.js +35 -9
  117. package/build-module/components/provider/index.js.map +1 -1
  118. package/build-module/components/provider/use-block-editor-settings.js +9 -4
  119. package/build-module/components/provider/use-block-editor-settings.js.map +1 -1
  120. package/build-module/components/sidebar/post-summary.js +3 -0
  121. package/build-module/components/sidebar/post-summary.js.map +1 -1
  122. package/build-module/components/start-page-options/index.js +17 -21
  123. package/build-module/components/start-page-options/index.js.map +1 -1
  124. package/build-module/components/start-template-options/index.js +2 -4
  125. package/build-module/components/start-template-options/index.js.map +1 -1
  126. package/build-module/components/table-of-contents/index.js +2 -4
  127. package/build-module/components/table-of-contents/index.js.map +1 -1
  128. package/build-module/components/text-editor/index.js +2 -4
  129. package/build-module/components/text-editor/index.js.map +1 -1
  130. package/build-module/components/visual-editor/edit-template-blocks-notification.js +1 -1
  131. package/build-module/components/visual-editor/edit-template-blocks-notification.js.map +1 -1
  132. package/build-module/components/zoom-out-toggle/index.js +31 -0
  133. package/build-module/components/zoom-out-toggle/index.js.map +1 -0
  134. package/build-module/dataviews/actions/reset-post.js +4 -8
  135. package/build-module/dataviews/actions/reset-post.js.map +1 -1
  136. package/build-module/dataviews/actions/trash-post.js +4 -8
  137. package/build-module/dataviews/actions/trash-post.js.map +1 -1
  138. package/build-module/dataviews/store/private-actions.js +2 -8
  139. package/build-module/dataviews/store/private-actions.js.map +1 -1
  140. package/build-module/store/selectors.js +6 -2
  141. package/build-module/store/selectors.js.map +1 -1
  142. package/build-style/style-rtl.css +3 -7
  143. package/build-style/style.css +3 -7
  144. package/build-types/components/editor-history/redo.d.ts.map +1 -1
  145. package/build-types/components/editor-history/undo.d.ts.map +1 -1
  146. package/build-types/components/error-boundary/index.d.ts.map +1 -1
  147. package/build-types/components/global-styles-provider/index.d.ts.map +1 -1
  148. package/build-types/components/header/back-button.d.ts.map +1 -1
  149. package/build-types/components/header/index.d.ts.map +1 -1
  150. package/build-types/components/inserter-sidebar/index.d.ts.map +1 -1
  151. package/build-types/components/more-menu/tools-more-menu-group.d.ts.map +1 -1
  152. package/build-types/components/more-menu/view-more-menu-group.d.ts.map +1 -1
  153. package/build-types/components/plugin-document-setting-panel/index.d.ts.map +1 -1
  154. package/build-types/components/plugin-post-publish-panel/index.d.ts.map +1 -1
  155. package/build-types/components/plugin-post-status-info/index.d.ts.map +1 -1
  156. package/build-types/components/plugin-pre-publish-panel/index.d.ts.map +1 -1
  157. package/build-types/components/post-excerpt/plugin.d.ts.map +1 -1
  158. package/build-types/components/post-format/index.d.ts.map +1 -1
  159. package/build-types/components/post-last-revision/index.d.ts.map +1 -1
  160. package/build-types/components/post-locked-modal/index.d.ts.map +1 -1
  161. package/build-types/components/post-publish-panel/index.d.ts.map +1 -1
  162. package/build-types/components/post-publish-panel/maybe-post-format-panel.d.ts.map +1 -1
  163. package/build-types/components/post-publish-panel/maybe-upload-media.d.ts +1 -1
  164. package/build-types/components/post-publish-panel/maybe-upload-media.d.ts.map +1 -1
  165. package/build-types/components/post-publish-panel/media-util.d.ts +20 -0
  166. package/build-types/components/post-publish-panel/media-util.d.ts.map +1 -0
  167. package/build-types/components/post-trash/check.d.ts.map +1 -1
  168. package/build-types/components/post-trash/index.d.ts +4 -1
  169. package/build-types/components/post-trash/index.d.ts.map +1 -1
  170. package/build-types/components/preferences-modal/enable-plugin-document-setting-panel.d.ts.map +1 -1
  171. package/build-types/components/preferences-modal/index.d.ts.map +1 -1
  172. package/build-types/components/preview-dropdown/index.d.ts.map +1 -1
  173. package/build-types/components/provider/index.d.ts.map +1 -1
  174. package/build-types/components/provider/use-block-editor-settings.d.ts.map +1 -1
  175. package/build-types/components/save-publish-panels/index.d.ts.map +1 -1
  176. package/build-types/components/sidebar/post-summary.d.ts.map +1 -1
  177. package/build-types/components/start-page-options/index.d.ts +1 -0
  178. package/build-types/components/start-page-options/index.d.ts.map +1 -1
  179. package/build-types/components/start-template-options/index.d.ts.map +1 -1
  180. package/build-types/components/text-editor/index.d.ts.map +1 -1
  181. package/build-types/components/visual-editor/edit-template-blocks-notification.d.ts.map +1 -1
  182. package/build-types/components/zoom-out-toggle/index.d.ts +3 -0
  183. package/build-types/components/zoom-out-toggle/index.d.ts.map +1 -0
  184. package/build-types/dataviews/actions/reset-post.d.ts.map +1 -1
  185. package/build-types/dataviews/actions/trash-post.d.ts.map +1 -1
  186. package/build-types/dataviews/store/private-actions.d.ts.map +1 -1
  187. package/build-types/store/selectors.d.ts +8 -8
  188. package/build-types/store/selectors.d.ts.map +1 -1
  189. package/package.json +37 -36
  190. package/src/bindings/post-meta.js +1 -1
  191. package/src/components/block-manager/index.js +1 -2
  192. package/src/components/editor/index.js +1 -1
  193. package/src/components/editor-history/redo.js +1 -2
  194. package/src/components/editor-history/undo.js +1 -2
  195. package/src/components/error-boundary/index.js +1 -6
  196. package/src/components/global-styles-provider/index.js +11 -7
  197. package/src/components/header/index.js +12 -3
  198. package/src/components/header/style.scss +1 -1
  199. package/src/components/inserter-sidebar/index.js +2 -5
  200. package/src/components/post-excerpt/panel.js +1 -3
  201. package/src/components/post-featured-image/index.js +3 -6
  202. package/src/components/post-featured-image/style.scss +1 -5
  203. package/src/components/post-format/index.js +1 -2
  204. package/src/components/post-last-revision/index.js +1 -2
  205. package/src/components/post-locked-modal/index.js +2 -4
  206. package/src/components/post-publish-panel/index.js +1 -2
  207. package/src/components/post-publish-panel/maybe-post-format-panel.js +1 -2
  208. package/src/components/post-publish-panel/maybe-upload-media.js +150 -50
  209. package/src/components/post-publish-panel/media-util.js +87 -0
  210. package/src/components/post-publish-panel/test/__snapshots__/index.js.snap +2 -2
  211. package/src/components/post-publish-panel/test/media-util.js +118 -0
  212. package/src/components/post-trash/check.js +5 -2
  213. package/src/components/post-trash/index.js +23 -12
  214. package/src/components/preferences-modal/index.js +227 -172
  215. package/src/components/preview-dropdown/index.js +26 -84
  216. package/src/components/provider/index.js +42 -10
  217. package/src/components/provider/use-block-editor-settings.js +11 -6
  218. package/src/components/sidebar/post-summary.js +4 -0
  219. package/src/components/start-page-options/index.js +28 -26
  220. package/src/components/start-template-options/index.js +1 -2
  221. package/src/components/table-of-contents/index.js +1 -2
  222. package/src/components/text-editor/index.js +1 -2
  223. package/src/components/text-editor/style.scss +1 -1
  224. package/src/components/visual-editor/edit-template-blocks-notification.js +4 -1
  225. package/src/components/zoom-out-toggle/index.js +34 -0
  226. package/src/dataviews/actions/reset-post.tsx +2 -4
  227. package/src/dataviews/actions/trash-post.tsx +2 -4
  228. package/src/dataviews/store/private-actions.ts +10 -8
  229. package/src/store/selectors.js +9 -3
  230. package/tsconfig.json +2 -0
  231. package/tsconfig.tsbuildinfo +1 -1
  232. package/build/dataviews/actions/duplicate-pattern.js +0 -48
  233. package/build/dataviews/actions/duplicate-pattern.js.map +0 -1
  234. package/build/dataviews/actions/duplicate-post.js +0 -146
  235. package/build/dataviews/actions/duplicate-post.js.map +0 -1
  236. package/build/dataviews/actions/duplicate-post.native.js +0 -9
  237. package/build/dataviews/actions/duplicate-post.native.js.map +0 -1
  238. package/build/dataviews/actions/export-pattern.js +0 -57
  239. package/build/dataviews/actions/export-pattern.js.map +0 -1
  240. package/build/dataviews/actions/export-pattern.native.js +0 -9
  241. package/build/dataviews/actions/export-pattern.native.js.map +0 -1
  242. package/build/dataviews/actions/permanently-delete-post.js +0 -109
  243. package/build/dataviews/actions/permanently-delete-post.js.map +0 -1
  244. package/build/dataviews/actions/reorder-page.js +0 -116
  245. package/build/dataviews/actions/reorder-page.js.map +0 -1
  246. package/build/dataviews/actions/reorder-page.native.js +0 -9
  247. package/build/dataviews/actions/reorder-page.native.js.map +0 -1
  248. package/build/dataviews/actions/view-post-revisions.js +0 -49
  249. package/build/dataviews/actions/view-post-revisions.js.map +0 -1
  250. package/build/dataviews/actions/view-post.js +0 -36
  251. package/build/dataviews/actions/view-post.js.map +0 -1
  252. package/build-module/dataviews/actions/duplicate-pattern.js +0 -39
  253. package/build-module/dataviews/actions/duplicate-pattern.js.map +0 -1
  254. package/build-module/dataviews/actions/duplicate-post.js +0 -139
  255. package/build-module/dataviews/actions/duplicate-post.js.map +0 -1
  256. package/build-module/dataviews/actions/duplicate-post.native.js +0 -3
  257. package/build-module/dataviews/actions/duplicate-post.native.js.map +0 -1
  258. package/build-module/dataviews/actions/export-pattern.js +0 -51
  259. package/build-module/dataviews/actions/export-pattern.js.map +0 -1
  260. package/build-module/dataviews/actions/export-pattern.native.js +0 -3
  261. package/build-module/dataviews/actions/export-pattern.native.js.map +0 -1
  262. package/build-module/dataviews/actions/permanently-delete-post.js +0 -102
  263. package/build-module/dataviews/actions/permanently-delete-post.js.map +0 -1
  264. package/build-module/dataviews/actions/reorder-page.js +0 -111
  265. package/build-module/dataviews/actions/reorder-page.js.map +0 -1
  266. package/build-module/dataviews/actions/reorder-page.native.js +0 -3
  267. package/build-module/dataviews/actions/reorder-page.native.js.map +0 -1
  268. package/build-module/dataviews/actions/view-post-revisions.js +0 -43
  269. package/build-module/dataviews/actions/view-post-revisions.js.map +0 -1
  270. package/build-module/dataviews/actions/view-post.js +0 -30
  271. package/build-module/dataviews/actions/view-post.js.map +0 -1
  272. package/build-types/dataviews/actions/duplicate-pattern.d.ts +0 -5
  273. package/build-types/dataviews/actions/duplicate-pattern.d.ts.map +0 -1
  274. package/build-types/dataviews/actions/duplicate-post.d.ts +0 -5
  275. package/build-types/dataviews/actions/duplicate-post.d.ts.map +0 -1
  276. package/build-types/dataviews/actions/duplicate-post.native.d.ts +0 -3
  277. package/build-types/dataviews/actions/duplicate-post.native.d.ts.map +0 -1
  278. package/build-types/dataviews/actions/export-pattern.d.ts +0 -8
  279. package/build-types/dataviews/actions/export-pattern.d.ts.map +0 -1
  280. package/build-types/dataviews/actions/export-pattern.native.d.ts +0 -3
  281. package/build-types/dataviews/actions/export-pattern.native.d.ts.map +0 -1
  282. package/build-types/dataviews/actions/permanently-delete-post.d.ts +0 -5
  283. package/build-types/dataviews/actions/permanently-delete-post.d.ts.map +0 -1
  284. package/build-types/dataviews/actions/reorder-page.d.ts +0 -8
  285. package/build-types/dataviews/actions/reorder-page.d.ts.map +0 -1
  286. package/build-types/dataviews/actions/reorder-page.native.d.ts +0 -3
  287. package/build-types/dataviews/actions/reorder-page.native.d.ts.map +0 -1
  288. package/build-types/dataviews/actions/view-post-revisions.d.ts +0 -8
  289. package/build-types/dataviews/actions/view-post-revisions.d.ts.map +0 -1
  290. package/build-types/dataviews/actions/view-post.d.ts +0 -8
  291. package/build-types/dataviews/actions/view-post.d.ts.map +0 -1
  292. package/src/dataviews/actions/duplicate-pattern.tsx +0 -40
  293. package/src/dataviews/actions/duplicate-post.native.tsx +0 -3
  294. package/src/dataviews/actions/duplicate-post.tsx +0 -174
  295. package/src/dataviews/actions/export-pattern.native.tsx +0 -3
  296. package/src/dataviews/actions/export-pattern.tsx +0 -76
  297. package/src/dataviews/actions/permanently-delete-post.tsx +0 -118
  298. package/src/dataviews/actions/reorder-page.native.tsx +0 -3
  299. package/src/dataviews/actions/reorder-page.tsx +0 -125
  300. package/src/dataviews/actions/view-post-revisions.tsx +0 -47
  301. package/src/dataviews/actions/view-post.tsx +0 -30
@@ -116,10 +116,8 @@ export default function PostFormat() {
116
116
  hideLabelFromVision: true
117
117
  }), suggestion && suggestion.id !== postFormat && /*#__PURE__*/_jsx("p", {
118
118
  className: "editor-post-format__suggestion",
119
- children: /*#__PURE__*/_jsx(Button
120
- // TODO: Switch to `true` (40px size) if possible
121
- , {
122
- __next40pxDefaultSize: false,
119
+ children: /*#__PURE__*/_jsx(Button, {
120
+ __next40pxDefaultSize: true,
123
121
  variant: "link",
124
122
  onClick: () => onUpdatePostFormat(suggestion.id),
125
123
  children: sprintf( /* translators: %s: post format */
@@ -1 +1 @@
1
- {"version":3,"names":["__","sprintf","Button","RadioControl","useDispatch","useSelect","useInstanceId","store","coreStore","PostFormatCheck","editorStore","jsx","_jsx","jsxs","_jsxs","POST_FORMATS","id","caption","sort","a","b","normalizedA","toUpperCase","normalizedB","PostFormat","instanceId","postFormatSelectorId","postFormat","suggestedFormat","supportedFormats","select","getEditedPostAttribute","getSuggestedPostFormat","_postFormat","themeSupports","getThemeSupports","formats","filter","format","includes","suggestion","find","editPost","onUpdatePostFormat","children","className","label","selected","onChange","options","map","value","hideLabelFromVision","__next40pxDefaultSize","variant","onClick"],"sources":["@wordpress/editor/src/components/post-format/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Button, RadioControl } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useInstanceId } from '@wordpress/compose';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport PostFormatCheck from './check';\nimport { store as editorStore } from '../../store';\n\n// All WP post formats, sorted alphabetically by translated name.\nexport const POST_FORMATS = [\n\t{ id: 'aside', caption: __( 'Aside' ) },\n\t{ id: 'audio', caption: __( 'Audio' ) },\n\t{ id: 'chat', caption: __( 'Chat' ) },\n\t{ id: 'gallery', caption: __( 'Gallery' ) },\n\t{ id: 'image', caption: __( 'Image' ) },\n\t{ id: 'link', caption: __( 'Link' ) },\n\t{ id: 'quote', caption: __( 'Quote' ) },\n\t{ id: 'standard', caption: __( 'Standard' ) },\n\t{ id: 'status', caption: __( 'Status' ) },\n\t{ id: 'video', caption: __( 'Video' ) },\n].sort( ( a, b ) => {\n\tconst normalizedA = a.caption.toUpperCase();\n\tconst normalizedB = b.caption.toUpperCase();\n\n\tif ( normalizedA < normalizedB ) {\n\t\treturn -1;\n\t}\n\tif ( normalizedA > normalizedB ) {\n\t\treturn 1;\n\t}\n\treturn 0;\n} );\n\n/**\n * `PostFormat` a component that allows changing the post format while also providing a suggestion for the current post.\n *\n * @example\n * ```jsx\n * <PostFormat />\n * ```\n *\n * @return {JSX.Element} The rendered PostFormat component.\n */\nexport default function PostFormat() {\n\tconst instanceId = useInstanceId( PostFormat );\n\tconst postFormatSelectorId = `post-format-selector-${ instanceId }`;\n\n\tconst { postFormat, suggestedFormat, supportedFormats } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedPostAttribute, getSuggestedPostFormat } =\n\t\t\t\tselect( editorStore );\n\t\t\tconst _postFormat = getEditedPostAttribute( 'format' );\n\t\t\tconst themeSupports = select( coreStore ).getThemeSupports();\n\t\t\treturn {\n\t\t\t\tpostFormat: _postFormat ?? 'standard',\n\t\t\t\tsuggestedFormat: getSuggestedPostFormat(),\n\t\t\t\tsupportedFormats: themeSupports.formats,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst formats = POST_FORMATS.filter( ( format ) => {\n\t\t// Ensure current format is always in the set.\n\t\t// The current format may not be a format supported by the theme.\n\t\treturn (\n\t\t\tsupportedFormats?.includes( format.id ) || postFormat === format.id\n\t\t);\n\t} );\n\tconst suggestion = formats.find(\n\t\t( format ) => format.id === suggestedFormat\n\t);\n\n\tconst { editPost } = useDispatch( editorStore );\n\n\tconst onUpdatePostFormat = ( format ) => editPost( { format } );\n\n\treturn (\n\t\t<PostFormatCheck>\n\t\t\t<div className=\"editor-post-format\">\n\t\t\t\t<RadioControl\n\t\t\t\t\tclassName=\"editor-post-format__options\"\n\t\t\t\t\tlabel={ __( 'Post Format' ) }\n\t\t\t\t\tselected={ postFormat }\n\t\t\t\t\tonChange={ ( format ) => onUpdatePostFormat( format ) }\n\t\t\t\t\tid={ postFormatSelectorId }\n\t\t\t\t\toptions={ formats.map( ( format ) => ( {\n\t\t\t\t\t\tlabel: format.caption,\n\t\t\t\t\t\tvalue: format.id,\n\t\t\t\t\t} ) ) }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t/>\n\t\t\t\t{ suggestion && suggestion.id !== postFormat && (\n\t\t\t\t\t<p className=\"editor-post-format__suggestion\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\tonUpdatePostFormat( suggestion.id )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: post format */\n\t\t\t\t\t\t\t\t__( 'Apply suggested format: %s' ),\n\t\t\t\t\t\t\t\tsuggestion.caption\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</p>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</PostFormatCheck>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__","sprintf","Button","RadioControl","useDispatch","useSelect","useInstanceId","store","coreStore","PostFormatCheck","editorStore","jsx","_jsx","jsxs","_jsxs","POST_FORMATS","id","caption","sort","a","b","normalizedA","toUpperCase","normalizedB","PostFormat","instanceId","postFormatSelectorId","postFormat","suggestedFormat","supportedFormats","select","getEditedPostAttribute","getSuggestedPostFormat","_postFormat","themeSupports","getThemeSupports","formats","filter","format","includes","suggestion","find","editPost","onUpdatePostFormat","children","className","label","selected","onChange","options","map","value","hideLabelFromVision","__next40pxDefaultSize","variant","onClick"],"sources":["@wordpress/editor/src/components/post-format/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Button, RadioControl } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useInstanceId } from '@wordpress/compose';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport PostFormatCheck from './check';\nimport { store as editorStore } from '../../store';\n\n// All WP post formats, sorted alphabetically by translated name.\nexport const POST_FORMATS = [\n\t{ id: 'aside', caption: __( 'Aside' ) },\n\t{ id: 'audio', caption: __( 'Audio' ) },\n\t{ id: 'chat', caption: __( 'Chat' ) },\n\t{ id: 'gallery', caption: __( 'Gallery' ) },\n\t{ id: 'image', caption: __( 'Image' ) },\n\t{ id: 'link', caption: __( 'Link' ) },\n\t{ id: 'quote', caption: __( 'Quote' ) },\n\t{ id: 'standard', caption: __( 'Standard' ) },\n\t{ id: 'status', caption: __( 'Status' ) },\n\t{ id: 'video', caption: __( 'Video' ) },\n].sort( ( a, b ) => {\n\tconst normalizedA = a.caption.toUpperCase();\n\tconst normalizedB = b.caption.toUpperCase();\n\n\tif ( normalizedA < normalizedB ) {\n\t\treturn -1;\n\t}\n\tif ( normalizedA > normalizedB ) {\n\t\treturn 1;\n\t}\n\treturn 0;\n} );\n\n/**\n * `PostFormat` a component that allows changing the post format while also providing a suggestion for the current post.\n *\n * @example\n * ```jsx\n * <PostFormat />\n * ```\n *\n * @return {JSX.Element} The rendered PostFormat component.\n */\nexport default function PostFormat() {\n\tconst instanceId = useInstanceId( PostFormat );\n\tconst postFormatSelectorId = `post-format-selector-${ instanceId }`;\n\n\tconst { postFormat, suggestedFormat, supportedFormats } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedPostAttribute, getSuggestedPostFormat } =\n\t\t\t\tselect( editorStore );\n\t\t\tconst _postFormat = getEditedPostAttribute( 'format' );\n\t\t\tconst themeSupports = select( coreStore ).getThemeSupports();\n\t\t\treturn {\n\t\t\t\tpostFormat: _postFormat ?? 'standard',\n\t\t\t\tsuggestedFormat: getSuggestedPostFormat(),\n\t\t\t\tsupportedFormats: themeSupports.formats,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst formats = POST_FORMATS.filter( ( format ) => {\n\t\t// Ensure current format is always in the set.\n\t\t// The current format may not be a format supported by the theme.\n\t\treturn (\n\t\t\tsupportedFormats?.includes( format.id ) || postFormat === format.id\n\t\t);\n\t} );\n\tconst suggestion = formats.find(\n\t\t( format ) => format.id === suggestedFormat\n\t);\n\n\tconst { editPost } = useDispatch( editorStore );\n\n\tconst onUpdatePostFormat = ( format ) => editPost( { format } );\n\n\treturn (\n\t\t<PostFormatCheck>\n\t\t\t<div className=\"editor-post-format\">\n\t\t\t\t<RadioControl\n\t\t\t\t\tclassName=\"editor-post-format__options\"\n\t\t\t\t\tlabel={ __( 'Post Format' ) }\n\t\t\t\t\tselected={ postFormat }\n\t\t\t\t\tonChange={ ( format ) => onUpdatePostFormat( format ) }\n\t\t\t\t\tid={ postFormatSelectorId }\n\t\t\t\t\toptions={ formats.map( ( format ) => ( {\n\t\t\t\t\t\tlabel: format.caption,\n\t\t\t\t\t\tvalue: format.id,\n\t\t\t\t\t} ) ) }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t/>\n\t\t\t\t{ suggestion && suggestion.id !== postFormat && (\n\t\t\t\t\t<p className=\"editor-post-format__suggestion\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\tonUpdatePostFormat( suggestion.id )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: post format */\n\t\t\t\t\t\t\t\t__( 'Apply suggested format: %s' ),\n\t\t\t\t\t\t\t\tsuggestion.caption\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</p>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</PostFormatCheck>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -38,10 +38,8 @@ function PostLastRevision() {
38
38
  revisionsCount
39
39
  } = usePostLastRevisionInfo();
40
40
  return /*#__PURE__*/_jsx(PostLastRevisionCheck, {
41
- children: /*#__PURE__*/_jsx(Button
42
- // TODO: Switch to `true` (40px size) if possible
43
- , {
44
- __next40pxDefaultSize: false,
41
+ children: /*#__PURE__*/_jsx(Button, {
42
+ __next40pxDefaultSize: true,
45
43
  href: addQueryArgs('revision.php', {
46
44
  revision: lastRevisionId
47
45
  }),
@@ -1 +1 @@
1
- {"version":3,"names":["sprintf","__","Button","useSelect","backup","addQueryArgs","PostLastRevisionCheck","PostPanelRow","store","editorStore","jsx","_jsx","usePostLastRevisionInfo","select","getCurrentPostLastRevisionId","getCurrentPostRevisionsCount","lastRevisionId","revisionsCount","PostLastRevision","children","__next40pxDefaultSize","href","revision","className","icon","iconPosition","text","PrivatePostLastRevision","label","variant","size"],"sources":["@wordpress/editor/src/components/post-last-revision/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { sprintf, __ } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { backup } from '@wordpress/icons';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport PostLastRevisionCheck from './check';\nimport PostPanelRow from '../post-panel-row';\nimport { store as editorStore } from '../../store';\n\nfunction usePostLastRevisionInfo() {\n\treturn useSelect( ( select ) => {\n\t\tconst { getCurrentPostLastRevisionId, getCurrentPostRevisionsCount } =\n\t\t\tselect( editorStore );\n\t\treturn {\n\t\t\tlastRevisionId: getCurrentPostLastRevisionId(),\n\t\t\trevisionsCount: getCurrentPostRevisionsCount(),\n\t\t};\n\t}, [] );\n}\n\n/**\n * Renders the component for displaying the last revision of a post.\n *\n * @return {Component} The component to be rendered.\n */\nfunction PostLastRevision() {\n\tconst { lastRevisionId, revisionsCount } = usePostLastRevisionInfo();\n\n\treturn (\n\t\t<PostLastRevisionCheck>\n\t\t\t<Button\n\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\thref={ addQueryArgs( 'revision.php', {\n\t\t\t\t\trevision: lastRevisionId,\n\t\t\t\t} ) }\n\t\t\t\tclassName=\"editor-post-last-revision__title\"\n\t\t\t\ticon={ backup }\n\t\t\t\ticonPosition=\"right\"\n\t\t\t\ttext={ sprintf(\n\t\t\t\t\t/* translators: %s: number of revisions */\n\t\t\t\t\t__( 'Revisions (%s)' ),\n\t\t\t\t\trevisionsCount\n\t\t\t\t) }\n\t\t\t/>\n\t\t</PostLastRevisionCheck>\n\t);\n}\n\nexport function PrivatePostLastRevision() {\n\tconst { lastRevisionId, revisionsCount } = usePostLastRevisionInfo();\n\treturn (\n\t\t<PostLastRevisionCheck>\n\t\t\t<PostPanelRow label={ __( 'Revisions' ) }>\n\t\t\t\t<Button\n\t\t\t\t\thref={ addQueryArgs( 'revision.php', {\n\t\t\t\t\t\trevision: lastRevisionId,\n\t\t\t\t\t} ) }\n\t\t\t\t\tclassName=\"editor-private-post-last-revision__button\"\n\t\t\t\t\ttext={ revisionsCount }\n\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t/>\n\t\t\t</PostPanelRow>\n\t\t</PostLastRevisionCheck>\n\t);\n}\n\nexport default PostLastRevision;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAO,EAAEC,EAAE,QAAQ,iBAAiB;AAC7C,SAASC,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,YAAY,QAAQ,gBAAgB;;AAE7C;AACA;AACA;AACA,OAAOC,qBAAqB,MAAM,SAAS;AAC3C,OAAOC,YAAY,MAAM,mBAAmB;AAC5C,SAASC,KAAK,IAAIC,WAAW,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEnD,SAASC,uBAAuBA,CAAA,EAAG;EAClC,OAAOT,SAAS,CAAIU,MAAM,IAAM;IAC/B,MAAM;MAAEC,4BAA4B;MAAEC;IAA6B,CAAC,GACnEF,MAAM,CAAEJ,WAAY,CAAC;IACtB,OAAO;MACNO,cAAc,EAAEF,4BAA4B,CAAC,CAAC;MAC9CG,cAAc,EAAEF,4BAA4B,CAAC;IAC9C,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;AACR;;AAEA;AACA;AACA;AACA;AACA;AACA,SAASG,gBAAgBA,CAAA,EAAG;EAC3B,MAAM;IAAEF,cAAc;IAAEC;EAAe,CAAC,GAAGL,uBAAuB,CAAC,CAAC;EAEpE,oBACCD,IAAA,CAACL,qBAAqB;IAAAa,QAAA,eACrBR,IAAA,CAACT;IACA;IAAA;MACAkB,qBAAqB,EAAG,KAAO;MAC/BC,IAAI,EAAGhB,YAAY,CAAE,cAAc,EAAE;QACpCiB,QAAQ,EAAEN;MACX,CAAE,CAAG;MACLO,SAAS,EAAC,kCAAkC;MAC5CC,IAAI,EAAGpB,MAAQ;MACfqB,YAAY,EAAC,OAAO;MACpBC,IAAI,EAAG1B,OAAO,EACb;MACAC,EAAE,CAAE,gBAAiB,CAAC,EACtBgB,cACD;IAAG,CACH;EAAC,CACoB,CAAC;AAE1B;AAEA,OAAO,SAASU,uBAAuBA,CAAA,EAAG;EACzC,MAAM;IAAEX,cAAc;IAAEC;EAAe,CAAC,GAAGL,uBAAuB,CAAC,CAAC;EACpE,oBACCD,IAAA,CAACL,qBAAqB;IAAAa,QAAA,eACrBR,IAAA,CAACJ,YAAY;MAACqB,KAAK,EAAG3B,EAAE,CAAE,WAAY,CAAG;MAAAkB,QAAA,eACxCR,IAAA,CAACT,MAAM;QACNmB,IAAI,EAAGhB,YAAY,CAAE,cAAc,EAAE;UACpCiB,QAAQ,EAAEN;QACX,CAAE,CAAG;QACLO,SAAS,EAAC,2CAA2C;QACrDG,IAAI,EAAGT,cAAgB;QACvBY,OAAO,EAAC,UAAU;QAClBC,IAAI,EAAC;MAAS,CACd;IAAC,CACW;EAAC,CACO,CAAC;AAE1B;AAEA,eAAeZ,gBAAgB","ignoreList":[]}
1
+ {"version":3,"names":["sprintf","__","Button","useSelect","backup","addQueryArgs","PostLastRevisionCheck","PostPanelRow","store","editorStore","jsx","_jsx","usePostLastRevisionInfo","select","getCurrentPostLastRevisionId","getCurrentPostRevisionsCount","lastRevisionId","revisionsCount","PostLastRevision","children","__next40pxDefaultSize","href","revision","className","icon","iconPosition","text","PrivatePostLastRevision","label","variant","size"],"sources":["@wordpress/editor/src/components/post-last-revision/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { sprintf, __ } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { backup } from '@wordpress/icons';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport PostLastRevisionCheck from './check';\nimport PostPanelRow from '../post-panel-row';\nimport { store as editorStore } from '../../store';\n\nfunction usePostLastRevisionInfo() {\n\treturn useSelect( ( select ) => {\n\t\tconst { getCurrentPostLastRevisionId, getCurrentPostRevisionsCount } =\n\t\t\tselect( editorStore );\n\t\treturn {\n\t\t\tlastRevisionId: getCurrentPostLastRevisionId(),\n\t\t\trevisionsCount: getCurrentPostRevisionsCount(),\n\t\t};\n\t}, [] );\n}\n\n/**\n * Renders the component for displaying the last revision of a post.\n *\n * @return {Component} The component to be rendered.\n */\nfunction PostLastRevision() {\n\tconst { lastRevisionId, revisionsCount } = usePostLastRevisionInfo();\n\n\treturn (\n\t\t<PostLastRevisionCheck>\n\t\t\t<Button\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\thref={ addQueryArgs( 'revision.php', {\n\t\t\t\t\trevision: lastRevisionId,\n\t\t\t\t} ) }\n\t\t\t\tclassName=\"editor-post-last-revision__title\"\n\t\t\t\ticon={ backup }\n\t\t\t\ticonPosition=\"right\"\n\t\t\t\ttext={ sprintf(\n\t\t\t\t\t/* translators: %s: number of revisions */\n\t\t\t\t\t__( 'Revisions (%s)' ),\n\t\t\t\t\trevisionsCount\n\t\t\t\t) }\n\t\t\t/>\n\t\t</PostLastRevisionCheck>\n\t);\n}\n\nexport function PrivatePostLastRevision() {\n\tconst { lastRevisionId, revisionsCount } = usePostLastRevisionInfo();\n\treturn (\n\t\t<PostLastRevisionCheck>\n\t\t\t<PostPanelRow label={ __( 'Revisions' ) }>\n\t\t\t\t<Button\n\t\t\t\t\thref={ addQueryArgs( 'revision.php', {\n\t\t\t\t\t\trevision: lastRevisionId,\n\t\t\t\t\t} ) }\n\t\t\t\t\tclassName=\"editor-private-post-last-revision__button\"\n\t\t\t\t\ttext={ revisionsCount }\n\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t/>\n\t\t\t</PostPanelRow>\n\t\t</PostLastRevisionCheck>\n\t);\n}\n\nexport default PostLastRevision;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAO,EAAEC,EAAE,QAAQ,iBAAiB;AAC7C,SAASC,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,YAAY,QAAQ,gBAAgB;;AAE7C;AACA;AACA;AACA,OAAOC,qBAAqB,MAAM,SAAS;AAC3C,OAAOC,YAAY,MAAM,mBAAmB;AAC5C,SAASC,KAAK,IAAIC,WAAW,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEnD,SAASC,uBAAuBA,CAAA,EAAG;EAClC,OAAOT,SAAS,CAAIU,MAAM,IAAM;IAC/B,MAAM;MAAEC,4BAA4B;MAAEC;IAA6B,CAAC,GACnEF,MAAM,CAAEJ,WAAY,CAAC;IACtB,OAAO;MACNO,cAAc,EAAEF,4BAA4B,CAAC,CAAC;MAC9CG,cAAc,EAAEF,4BAA4B,CAAC;IAC9C,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;AACR;;AAEA;AACA;AACA;AACA;AACA;AACA,SAASG,gBAAgBA,CAAA,EAAG;EAC3B,MAAM;IAAEF,cAAc;IAAEC;EAAe,CAAC,GAAGL,uBAAuB,CAAC,CAAC;EAEpE,oBACCD,IAAA,CAACL,qBAAqB;IAAAa,QAAA,eACrBR,IAAA,CAACT,MAAM;MACNkB,qBAAqB;MACrBC,IAAI,EAAGhB,YAAY,CAAE,cAAc,EAAE;QACpCiB,QAAQ,EAAEN;MACX,CAAE,CAAG;MACLO,SAAS,EAAC,kCAAkC;MAC5CC,IAAI,EAAGpB,MAAQ;MACfqB,YAAY,EAAC,OAAO;MACpBC,IAAI,EAAG1B,OAAO,EACb;MACAC,EAAE,CAAE,gBAAiB,CAAC,EACtBgB,cACD;IAAG,CACH;EAAC,CACoB,CAAC;AAE1B;AAEA,OAAO,SAASU,uBAAuBA,CAAA,EAAG;EACzC,MAAM;IAAEX,cAAc;IAAEC;EAAe,CAAC,GAAGL,uBAAuB,CAAC,CAAC;EACpE,oBACCD,IAAA,CAACL,qBAAqB;IAAAa,QAAA,eACrBR,IAAA,CAACJ,YAAY;MAACqB,KAAK,EAAG3B,EAAE,CAAE,WAAY,CAAG;MAAAkB,QAAA,eACxCR,IAAA,CAACT,MAAM;QACNmB,IAAI,EAAGhB,YAAY,CAAE,cAAc,EAAE;UACpCiB,QAAQ,EAAEN;QACX,CAAE,CAAG;QACLO,SAAS,EAAC,2CAA2C;QACrDG,IAAI,EAAGT,cAAgB;QACvBY,OAAO,EAAC,UAAU;QAClBC,IAAI,EAAC;MAAS,CACd;IAAC,CACW;EAAC,CACO,CAAC;AAE1B;AAEA,eAAeZ,gBAAgB","ignoreList":[]}
@@ -206,17 +206,13 @@ export default function PostLockedModal() {
206
206
  }), /*#__PURE__*/_jsxs(HStack, {
207
207
  className: "editor-post-locked-modal__buttons",
208
208
  justify: "flex-end",
209
- children: [!isTakeover && /*#__PURE__*/_jsx(Button
210
- // TODO: Switch to `true` (40px size) if possible
211
- , {
212
- __next40pxDefaultSize: false,
209
+ children: [!isTakeover && /*#__PURE__*/_jsx(Button, {
210
+ __next40pxDefaultSize: true,
213
211
  variant: "tertiary",
214
212
  href: unlockUrl,
215
213
  children: __('Take over')
216
- }), /*#__PURE__*/_jsx(Button
217
- // TODO: Switch to `true` (40px size) if possible
218
- , {
219
- __next40pxDefaultSize: false,
214
+ }), /*#__PURE__*/_jsx(Button, {
215
+ __next40pxDefaultSize: true,
220
216
  variant: "primary",
221
217
  href: allPostsUrl,
222
218
  children: allPostsLabel
@@ -1 +1 @@
1
- {"version":3,"names":["__","sprintf","Modal","Button","ExternalLink","__experimentalHStack","HStack","useSelect","useDispatch","addQueryArgs","useEffect","createInterpolateElement","addAction","removeAction","useInstanceId","store","coreStore","editorStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","PostLockedModal","instanceId","hookName","autosave","updatePostLock","isLocked","isTakeover","user","postId","postLockUtils","activePostLock","postType","previewLink","select","isPostLocked","isPostLockTakeover","getPostLockUser","getCurrentPostId","getActivePostLock","getEditedPostAttribute","getEditedPostPreviewLink","getEditorSettings","getPostType","sendPostLock","data","lock","post_id","receivePostLock","received","lock_error","name","avatar","avatar_src_2x","new_lock","releasePostLock","window","FormData","append","unlockNonce","navigator","sendBeacon","ajaxUrl","xhr","XMLHttpRequest","open","send","addEventListener","removeEventListener","userDisplayName","userAvatar","unlockUrl","lockKey","post","action","_wpnonce","nonce","allPostsUrl","post_type","slug","allPostsLabel","title","focusOnMount","shouldCloseOnClickOutside","shouldCloseOnEsc","isDismissible","className","size","children","alignment","spacing","src","alt","width","height","strong","PreviewLink","href","justify","__next40pxDefaultSize","variant"],"sources":["@wordpress/editor/src/components/post-locked-modal/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tModal,\n\tButton,\n\tExternalLink,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { addQueryArgs } from '@wordpress/url';\nimport { useEffect, createInterpolateElement } from '@wordpress/element';\nimport { addAction, removeAction } from '@wordpress/hooks';\nimport { useInstanceId } from '@wordpress/compose';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\n\n/**\n * A modal component that is displayed when a post is locked for editing by another user.\n * The modal provides information about the lock status and options to take over or exit the editor.\n *\n * @return {JSX.Element|null} The rendered PostLockedModal component.\n */\nexport default function PostLockedModal() {\n\tconst instanceId = useInstanceId( PostLockedModal );\n\tconst hookName = 'core/editor/post-locked-modal-' + instanceId;\n\tconst { autosave, updatePostLock } = useDispatch( editorStore );\n\tconst {\n\t\tisLocked,\n\t\tisTakeover,\n\t\tuser,\n\t\tpostId,\n\t\tpostLockUtils,\n\t\tactivePostLock,\n\t\tpostType,\n\t\tpreviewLink,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisPostLocked,\n\t\t\tisPostLockTakeover,\n\t\t\tgetPostLockUser,\n\t\t\tgetCurrentPostId,\n\t\t\tgetActivePostLock,\n\t\t\tgetEditedPostAttribute,\n\t\t\tgetEditedPostPreviewLink,\n\t\t\tgetEditorSettings,\n\t\t} = select( editorStore );\n\t\tconst { getPostType } = select( coreStore );\n\t\treturn {\n\t\t\tisLocked: isPostLocked(),\n\t\t\tisTakeover: isPostLockTakeover(),\n\t\t\tuser: getPostLockUser(),\n\t\t\tpostId: getCurrentPostId(),\n\t\t\tpostLockUtils: getEditorSettings().postLockUtils,\n\t\t\tactivePostLock: getActivePostLock(),\n\t\t\tpostType: getPostType( getEditedPostAttribute( 'type' ) ),\n\t\t\tpreviewLink: getEditedPostPreviewLink(),\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t/**\n\t\t * Keep the lock refreshed.\n\t\t *\n\t\t * When the user does not send a heartbeat in a heartbeat-tick\n\t\t * the user is no longer editing and another user can start editing.\n\t\t *\n\t\t * @param {Object} data Data to send in the heartbeat request.\n\t\t */\n\t\tfunction sendPostLock( data ) {\n\t\t\tif ( isLocked ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tdata[ 'wp-refresh-post-lock' ] = {\n\t\t\t\tlock: activePostLock,\n\t\t\t\tpost_id: postId,\n\t\t\t};\n\t\t}\n\n\t\t/**\n\t\t * Refresh post locks: update the lock string or show the dialog if somebody has taken over editing.\n\t\t *\n\t\t * @param {Object} data Data received in the heartbeat request\n\t\t */\n\t\tfunction receivePostLock( data ) {\n\t\t\tif ( ! data[ 'wp-refresh-post-lock' ] ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst received = data[ 'wp-refresh-post-lock' ];\n\t\t\tif ( received.lock_error ) {\n\t\t\t\t// Auto save and display the takeover modal.\n\t\t\t\tautosave();\n\t\t\t\tupdatePostLock( {\n\t\t\t\t\tisLocked: true,\n\t\t\t\t\tisTakeover: true,\n\t\t\t\t\tuser: {\n\t\t\t\t\t\tname: received.lock_error.name,\n\t\t\t\t\t\tavatar: received.lock_error.avatar_src_2x,\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t} else if ( received.new_lock ) {\n\t\t\t\tupdatePostLock( {\n\t\t\t\t\tisLocked: false,\n\t\t\t\t\tactivePostLock: received.new_lock,\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Unlock the post before the window is exited.\n\t\t */\n\t\tfunction releasePostLock() {\n\t\t\tif ( isLocked || ! activePostLock ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst data = new window.FormData();\n\t\t\tdata.append( 'action', 'wp-remove-post-lock' );\n\t\t\tdata.append( '_wpnonce', postLockUtils.unlockNonce );\n\t\t\tdata.append( 'post_ID', postId );\n\t\t\tdata.append( 'active_post_lock', activePostLock );\n\n\t\t\tif ( window.navigator.sendBeacon ) {\n\t\t\t\twindow.navigator.sendBeacon( postLockUtils.ajaxUrl, data );\n\t\t\t} else {\n\t\t\t\tconst xhr = new window.XMLHttpRequest();\n\t\t\t\txhr.open( 'POST', postLockUtils.ajaxUrl, false );\n\t\t\t\txhr.send( data );\n\t\t\t}\n\t\t}\n\n\t\t// Details on these events on the Heartbeat API docs\n\t\t// https://developer.wordpress.org/plugins/javascript/heartbeat-api/\n\t\taddAction( 'heartbeat.send', hookName, sendPostLock );\n\t\taddAction( 'heartbeat.tick', hookName, receivePostLock );\n\t\twindow.addEventListener( 'beforeunload', releasePostLock );\n\n\t\treturn () => {\n\t\t\tremoveAction( 'heartbeat.send', hookName );\n\t\t\tremoveAction( 'heartbeat.tick', hookName );\n\t\t\twindow.removeEventListener( 'beforeunload', releasePostLock );\n\t\t};\n\t}, [] );\n\n\tif ( ! isLocked ) {\n\t\treturn null;\n\t}\n\n\tconst userDisplayName = user.name;\n\tconst userAvatar = user.avatar;\n\n\tconst unlockUrl = addQueryArgs( 'post.php', {\n\t\t'get-post-lock': '1',\n\t\tlockKey: true,\n\t\tpost: postId,\n\t\taction: 'edit',\n\t\t_wpnonce: postLockUtils.nonce,\n\t} );\n\tconst allPostsUrl = addQueryArgs( 'edit.php', {\n\t\tpost_type: postType?.slug,\n\t} );\n\tconst allPostsLabel = __( 'Exit editor' );\n\treturn (\n\t\t<Modal\n\t\t\ttitle={\n\t\t\t\tisTakeover\n\t\t\t\t\t? __( 'Someone else has taken over this post' )\n\t\t\t\t\t: __( 'This post is already being edited' )\n\t\t\t}\n\t\t\tfocusOnMount\n\t\t\tshouldCloseOnClickOutside={ false }\n\t\t\tshouldCloseOnEsc={ false }\n\t\t\tisDismissible={ false }\n\t\t\t// Do not remove this class, as this class is used by third party plugins.\n\t\t\tclassName=\"editor-post-locked-modal\"\n\t\t\tsize=\"medium\"\n\t\t>\n\t\t\t<HStack alignment=\"top\" spacing={ 6 }>\n\t\t\t\t{ !! userAvatar && (\n\t\t\t\t\t<img\n\t\t\t\t\t\tsrc={ userAvatar }\n\t\t\t\t\t\talt={ __( 'Avatar' ) }\n\t\t\t\t\t\tclassName=\"editor-post-locked-modal__avatar\"\n\t\t\t\t\t\twidth={ 64 }\n\t\t\t\t\t\theight={ 64 }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<div>\n\t\t\t\t\t{ !! isTakeover && (\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\tuserDisplayName\n\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t/* translators: %s: user's display name */\n\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t'<strong>%s</strong> now has editing control of this post (<PreviewLink />). Don’t worry, your changes up to this moment have been saved.'\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\tuserDisplayName\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\t\t'Another user now has editing control of this post (<PreviewLink />). Don’t worry, your changes up to this moment have been saved.'\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\t\tstrong: <strong />,\n\t\t\t\t\t\t\t\t\tPreviewLink: (\n\t\t\t\t\t\t\t\t\t\t<ExternalLink href={ previewLink }>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'preview' ) }\n\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</p>\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! isTakeover && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\tuserDisplayName\n\t\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t/* translators: %s: user's display name */\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'<strong>%s</strong> is currently working on this post (<PreviewLink />), which means you cannot make changes, unless you take over.'\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\tuserDisplayName\n\t\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Another user is currently working on this post (<PreviewLink />), which means you cannot make changes, unless you take over.'\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\t\tstrong: <strong />,\n\t\t\t\t\t\t\t\t\t\tPreviewLink: (\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink href={ previewLink }>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __( 'preview' ) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\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\t<p>\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'If you take over, the other user will lose editing control to the post, but their changes will be saved.'\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</>\n\t\t\t\t\t) }\n\n\t\t\t\t\t<HStack\n\t\t\t\t\t\tclassName=\"editor-post-locked-modal__buttons\"\n\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ! isTakeover && (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\thref={ unlockUrl }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Take over' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\thref={ allPostsUrl }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ allPostsLabel }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</div>\n\t\t\t</HStack>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__","sprintf","Modal","Button","ExternalLink","__experimentalHStack","HStack","useSelect","useDispatch","addQueryArgs","useEffect","createInterpolateElement","addAction","removeAction","useInstanceId","store","coreStore","editorStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","PostLockedModal","instanceId","hookName","autosave","updatePostLock","isLocked","isTakeover","user","postId","postLockUtils","activePostLock","postType","previewLink","select","isPostLocked","isPostLockTakeover","getPostLockUser","getCurrentPostId","getActivePostLock","getEditedPostAttribute","getEditedPostPreviewLink","getEditorSettings","getPostType","sendPostLock","data","lock","post_id","receivePostLock","received","lock_error","name","avatar","avatar_src_2x","new_lock","releasePostLock","window","FormData","append","unlockNonce","navigator","sendBeacon","ajaxUrl","xhr","XMLHttpRequest","open","send","addEventListener","removeEventListener","userDisplayName","userAvatar","unlockUrl","lockKey","post","action","_wpnonce","nonce","allPostsUrl","post_type","slug","allPostsLabel","title","focusOnMount","shouldCloseOnClickOutside","shouldCloseOnEsc","isDismissible","className","size","children","alignment","spacing","src","alt","width","height","strong","PreviewLink","href","justify","__next40pxDefaultSize","variant"],"sources":["@wordpress/editor/src/components/post-locked-modal/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tModal,\n\tButton,\n\tExternalLink,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { addQueryArgs } from '@wordpress/url';\nimport { useEffect, createInterpolateElement } from '@wordpress/element';\nimport { addAction, removeAction } from '@wordpress/hooks';\nimport { useInstanceId } from '@wordpress/compose';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\n\n/**\n * A modal component that is displayed when a post is locked for editing by another user.\n * The modal provides information about the lock status and options to take over or exit the editor.\n *\n * @return {JSX.Element|null} The rendered PostLockedModal component.\n */\nexport default function PostLockedModal() {\n\tconst instanceId = useInstanceId( PostLockedModal );\n\tconst hookName = 'core/editor/post-locked-modal-' + instanceId;\n\tconst { autosave, updatePostLock } = useDispatch( editorStore );\n\tconst {\n\t\tisLocked,\n\t\tisTakeover,\n\t\tuser,\n\t\tpostId,\n\t\tpostLockUtils,\n\t\tactivePostLock,\n\t\tpostType,\n\t\tpreviewLink,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisPostLocked,\n\t\t\tisPostLockTakeover,\n\t\t\tgetPostLockUser,\n\t\t\tgetCurrentPostId,\n\t\t\tgetActivePostLock,\n\t\t\tgetEditedPostAttribute,\n\t\t\tgetEditedPostPreviewLink,\n\t\t\tgetEditorSettings,\n\t\t} = select( editorStore );\n\t\tconst { getPostType } = select( coreStore );\n\t\treturn {\n\t\t\tisLocked: isPostLocked(),\n\t\t\tisTakeover: isPostLockTakeover(),\n\t\t\tuser: getPostLockUser(),\n\t\t\tpostId: getCurrentPostId(),\n\t\t\tpostLockUtils: getEditorSettings().postLockUtils,\n\t\t\tactivePostLock: getActivePostLock(),\n\t\t\tpostType: getPostType( getEditedPostAttribute( 'type' ) ),\n\t\t\tpreviewLink: getEditedPostPreviewLink(),\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t/**\n\t\t * Keep the lock refreshed.\n\t\t *\n\t\t * When the user does not send a heartbeat in a heartbeat-tick\n\t\t * the user is no longer editing and another user can start editing.\n\t\t *\n\t\t * @param {Object} data Data to send in the heartbeat request.\n\t\t */\n\t\tfunction sendPostLock( data ) {\n\t\t\tif ( isLocked ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tdata[ 'wp-refresh-post-lock' ] = {\n\t\t\t\tlock: activePostLock,\n\t\t\t\tpost_id: postId,\n\t\t\t};\n\t\t}\n\n\t\t/**\n\t\t * Refresh post locks: update the lock string or show the dialog if somebody has taken over editing.\n\t\t *\n\t\t * @param {Object} data Data received in the heartbeat request\n\t\t */\n\t\tfunction receivePostLock( data ) {\n\t\t\tif ( ! data[ 'wp-refresh-post-lock' ] ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst received = data[ 'wp-refresh-post-lock' ];\n\t\t\tif ( received.lock_error ) {\n\t\t\t\t// Auto save and display the takeover modal.\n\t\t\t\tautosave();\n\t\t\t\tupdatePostLock( {\n\t\t\t\t\tisLocked: true,\n\t\t\t\t\tisTakeover: true,\n\t\t\t\t\tuser: {\n\t\t\t\t\t\tname: received.lock_error.name,\n\t\t\t\t\t\tavatar: received.lock_error.avatar_src_2x,\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t} else if ( received.new_lock ) {\n\t\t\t\tupdatePostLock( {\n\t\t\t\t\tisLocked: false,\n\t\t\t\t\tactivePostLock: received.new_lock,\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Unlock the post before the window is exited.\n\t\t */\n\t\tfunction releasePostLock() {\n\t\t\tif ( isLocked || ! activePostLock ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst data = new window.FormData();\n\t\t\tdata.append( 'action', 'wp-remove-post-lock' );\n\t\t\tdata.append( '_wpnonce', postLockUtils.unlockNonce );\n\t\t\tdata.append( 'post_ID', postId );\n\t\t\tdata.append( 'active_post_lock', activePostLock );\n\n\t\t\tif ( window.navigator.sendBeacon ) {\n\t\t\t\twindow.navigator.sendBeacon( postLockUtils.ajaxUrl, data );\n\t\t\t} else {\n\t\t\t\tconst xhr = new window.XMLHttpRequest();\n\t\t\t\txhr.open( 'POST', postLockUtils.ajaxUrl, false );\n\t\t\t\txhr.send( data );\n\t\t\t}\n\t\t}\n\n\t\t// Details on these events on the Heartbeat API docs\n\t\t// https://developer.wordpress.org/plugins/javascript/heartbeat-api/\n\t\taddAction( 'heartbeat.send', hookName, sendPostLock );\n\t\taddAction( 'heartbeat.tick', hookName, receivePostLock );\n\t\twindow.addEventListener( 'beforeunload', releasePostLock );\n\n\t\treturn () => {\n\t\t\tremoveAction( 'heartbeat.send', hookName );\n\t\t\tremoveAction( 'heartbeat.tick', hookName );\n\t\t\twindow.removeEventListener( 'beforeunload', releasePostLock );\n\t\t};\n\t}, [] );\n\n\tif ( ! isLocked ) {\n\t\treturn null;\n\t}\n\n\tconst userDisplayName = user.name;\n\tconst userAvatar = user.avatar;\n\n\tconst unlockUrl = addQueryArgs( 'post.php', {\n\t\t'get-post-lock': '1',\n\t\tlockKey: true,\n\t\tpost: postId,\n\t\taction: 'edit',\n\t\t_wpnonce: postLockUtils.nonce,\n\t} );\n\tconst allPostsUrl = addQueryArgs( 'edit.php', {\n\t\tpost_type: postType?.slug,\n\t} );\n\tconst allPostsLabel = __( 'Exit editor' );\n\treturn (\n\t\t<Modal\n\t\t\ttitle={\n\t\t\t\tisTakeover\n\t\t\t\t\t? __( 'Someone else has taken over this post' )\n\t\t\t\t\t: __( 'This post is already being edited' )\n\t\t\t}\n\t\t\tfocusOnMount\n\t\t\tshouldCloseOnClickOutside={ false }\n\t\t\tshouldCloseOnEsc={ false }\n\t\t\tisDismissible={ false }\n\t\t\t// Do not remove this class, as this class is used by third party plugins.\n\t\t\tclassName=\"editor-post-locked-modal\"\n\t\t\tsize=\"medium\"\n\t\t>\n\t\t\t<HStack alignment=\"top\" spacing={ 6 }>\n\t\t\t\t{ !! userAvatar && (\n\t\t\t\t\t<img\n\t\t\t\t\t\tsrc={ userAvatar }\n\t\t\t\t\t\talt={ __( 'Avatar' ) }\n\t\t\t\t\t\tclassName=\"editor-post-locked-modal__avatar\"\n\t\t\t\t\t\twidth={ 64 }\n\t\t\t\t\t\theight={ 64 }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<div>\n\t\t\t\t\t{ !! isTakeover && (\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\tuserDisplayName\n\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t/* translators: %s: user's display name */\n\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t'<strong>%s</strong> now has editing control of this post (<PreviewLink />). Don’t worry, your changes up to this moment have been saved.'\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\tuserDisplayName\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\t\t'Another user now has editing control of this post (<PreviewLink />). Don’t worry, your changes up to this moment have been saved.'\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\t\tstrong: <strong />,\n\t\t\t\t\t\t\t\t\tPreviewLink: (\n\t\t\t\t\t\t\t\t\t\t<ExternalLink href={ previewLink }>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'preview' ) }\n\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</p>\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! isTakeover && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\tuserDisplayName\n\t\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t/* translators: %s: user's display name */\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'<strong>%s</strong> is currently working on this post (<PreviewLink />), which means you cannot make changes, unless you take over.'\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\tuserDisplayName\n\t\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Another user is currently working on this post (<PreviewLink />), which means you cannot make changes, unless you take over.'\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\t\tstrong: <strong />,\n\t\t\t\t\t\t\t\t\t\tPreviewLink: (\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink href={ previewLink }>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __( 'preview' ) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\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\t<p>\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'If you take over, the other user will lose editing control to the post, but their changes will be saved.'\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</>\n\t\t\t\t\t) }\n\n\t\t\t\t\t<HStack\n\t\t\t\t\t\tclassName=\"editor-post-locked-modal__buttons\"\n\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ! isTakeover && (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\thref={ unlockUrl }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Take over' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\thref={ allPostsUrl }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ allPostsLabel }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</div>\n\t\t\t</HStack>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -70,10 +70,8 @@ export class PostPublishPanel extends Component {
70
70
  ...propsForPanel,
71
71
  children: [/*#__PURE__*/_jsx("div", {
72
72
  className: "editor-post-publish-panel__header",
73
- children: isPostPublish ? /*#__PURE__*/_jsx(Button
74
- // TODO: Switch to `true` (40px size) if possible
75
- , {
76
- __next40pxDefaultSize: false,
73
+ children: isPostPublish ? /*#__PURE__*/_jsx(Button, {
74
+ size: "compact",
77
75
  onClick: onClose,
78
76
  icon: closeSmall,
79
77
  label: __('Close panel')
@@ -1 +1 @@
1
- {"version":3,"names":["__","Component","Button","Spinner","CheckboxControl","withFocusReturn","withConstrainedTabbing","withSelect","withDispatch","compose","closeSmall","store","coreStore","PostPublishButton","PostPublishPanelPrepublish","PostPublishPanelPostpublish","editorStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","PostPublishPanel","constructor","arguments","onSubmit","bind","componentDidUpdate","prevProps","isPublished","props","isSaving","isDirty","onClose","hasPublishAction","isPostTypeViewable","render","forceIsDirty","isBeingScheduled","isPublishSidebarEnabled","isScheduled","isSavingNonPostEntityChanges","onTogglePublishSidebar","PostPublishExtension","PrePublishExtension","additionalProps","propsForPanel","isPublishedOrScheduled","isPrePublish","isPostPublish","className","children","__next40pxDefaultSize","onClick","icon","label","focusOnMount","accessibleWhenDisabled","disabled","variant","size","__nextHasNoMarginBottom","checked","onChange","select","_getCurrentPost$_link","getPostType","getCurrentPost","getEditedPostAttribute","isCurrentPostPublished","isCurrentPostScheduled","isEditedPostBeingScheduled","isEditedPostDirty","isAutosavingPost","isSavingPost","postType","_links","viewable","dispatch","disablePublishSidebar","enablePublishSidebar"],"sources":["@wordpress/editor/src/components/post-publish-panel/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { Component } from '@wordpress/element';\nimport {\n\tButton,\n\tSpinner,\n\tCheckboxControl,\n\twithFocusReturn,\n\twithConstrainedTabbing,\n} from '@wordpress/components';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { closeSmall } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport PostPublishButton from '../post-publish-button';\nimport PostPublishPanelPrepublish from './prepublish';\nimport PostPublishPanelPostpublish from './postpublish';\nimport { store as editorStore } from '../../store';\n\nexport class PostPublishPanel extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.onSubmit = this.onSubmit.bind( this );\n\t}\n\n\tcomponentDidUpdate( prevProps ) {\n\t\t// Automatically collapse the publish sidebar when a post\n\t\t// is published and the user makes an edit.\n\t\tif (\n\t\t\tprevProps.isPublished &&\n\t\t\t! this.props.isSaving &&\n\t\t\tthis.props.isDirty\n\t\t) {\n\t\t\tthis.props.onClose();\n\t\t}\n\t}\n\n\tonSubmit() {\n\t\tconst { onClose, hasPublishAction, isPostTypeViewable } = this.props;\n\t\tif ( ! hasPublishAction || ! isPostTypeViewable ) {\n\t\t\tonClose();\n\t\t}\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tforceIsDirty,\n\t\t\tisBeingScheduled,\n\t\t\tisPublished,\n\t\t\tisPublishSidebarEnabled,\n\t\t\tisScheduled,\n\t\t\tisSaving,\n\t\t\tisSavingNonPostEntityChanges,\n\t\t\tonClose,\n\t\t\tonTogglePublishSidebar,\n\t\t\tPostPublishExtension,\n\t\t\tPrePublishExtension,\n\t\t\t...additionalProps\n\t\t} = this.props;\n\t\tconst {\n\t\t\thasPublishAction,\n\t\t\tisDirty,\n\t\t\tisPostTypeViewable,\n\t\t\t...propsForPanel\n\t\t} = additionalProps;\n\t\tconst isPublishedOrScheduled =\n\t\t\tisPublished || ( isScheduled && isBeingScheduled );\n\t\tconst isPrePublish = ! isPublishedOrScheduled && ! isSaving;\n\t\tconst isPostPublish = isPublishedOrScheduled && ! isSaving;\n\t\treturn (\n\t\t\t<div className=\"editor-post-publish-panel\" { ...propsForPanel }>\n\t\t\t\t<div className=\"editor-post-publish-panel__header\">\n\t\t\t\t\t{ isPostPublish ? (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\t\t\tlabel={ __( 'Close panel' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<div className=\"editor-post-publish-panel__header-publish-button\">\n\t\t\t\t\t\t\t\t<PostPublishButton\n\t\t\t\t\t\t\t\t\tfocusOnMount\n\t\t\t\t\t\t\t\t\tonSubmit={ this.onSubmit }\n\t\t\t\t\t\t\t\t\tforceIsDirty={ forceIsDirty }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"editor-post-publish-panel__header-cancel-button\">\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t\t\t\tdisabled={ isSavingNonPostEntityChanges }\n\t\t\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t\t<div className=\"editor-post-publish-panel__content\">\n\t\t\t\t\t{ isPrePublish && (\n\t\t\t\t\t\t<PostPublishPanelPrepublish>\n\t\t\t\t\t\t\t{ PrePublishExtension && <PrePublishExtension /> }\n\t\t\t\t\t\t</PostPublishPanelPrepublish>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isPostPublish && (\n\t\t\t\t\t\t<PostPublishPanelPostpublish focusOnMount>\n\t\t\t\t\t\t\t{ PostPublishExtension && <PostPublishExtension /> }\n\t\t\t\t\t\t</PostPublishPanelPostpublish>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isSaving && <Spinner /> }\n\t\t\t\t</div>\n\t\t\t\t<div className=\"editor-post-publish-panel__footer\">\n\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Always show pre-publish checks.' ) }\n\t\t\t\t\t\tchecked={ isPublishSidebarEnabled }\n\t\t\t\t\t\tonChange={ onTogglePublishSidebar }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n}\n\n/**\n * Renders a panel for publishing a post.\n */\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst { getPostType } = select( coreStore );\n\t\tconst {\n\t\t\tgetCurrentPost,\n\t\t\tgetEditedPostAttribute,\n\t\t\tisCurrentPostPublished,\n\t\t\tisCurrentPostScheduled,\n\t\t\tisEditedPostBeingScheduled,\n\t\t\tisEditedPostDirty,\n\t\t\tisAutosavingPost,\n\t\t\tisSavingPost,\n\t\t\tisSavingNonPostEntityChanges,\n\t\t} = select( editorStore );\n\t\tconst { isPublishSidebarEnabled } = select( editorStore );\n\t\tconst postType = getPostType( getEditedPostAttribute( 'type' ) );\n\n\t\treturn {\n\t\t\thasPublishAction:\n\t\t\t\tgetCurrentPost()._links?.[ 'wp:action-publish' ] ?? false,\n\t\t\tisPostTypeViewable: postType?.viewable,\n\t\t\tisBeingScheduled: isEditedPostBeingScheduled(),\n\t\t\tisDirty: isEditedPostDirty(),\n\t\t\tisPublished: isCurrentPostPublished(),\n\t\t\tisPublishSidebarEnabled: isPublishSidebarEnabled(),\n\t\t\tisSaving: isSavingPost() && ! isAutosavingPost(),\n\t\t\tisSavingNonPostEntityChanges: isSavingNonPostEntityChanges(),\n\t\t\tisScheduled: isCurrentPostScheduled(),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { isPublishSidebarEnabled } ) => {\n\t\tconst { disablePublishSidebar, enablePublishSidebar } =\n\t\t\tdispatch( editorStore );\n\t\treturn {\n\t\t\tonTogglePublishSidebar: () => {\n\t\t\t\tif ( isPublishSidebarEnabled ) {\n\t\t\t\t\tdisablePublishSidebar();\n\t\t\t\t} else {\n\t\t\t\t\tenablePublishSidebar();\n\t\t\t\t}\n\t\t\t},\n\t\t};\n\t} ),\n\twithFocusReturn,\n\twithConstrainedTabbing,\n] )( PostPublishPanel );\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__","Component","Button","Spinner","CheckboxControl","withFocusReturn","withConstrainedTabbing","withSelect","withDispatch","compose","closeSmall","store","coreStore","PostPublishButton","PostPublishPanelPrepublish","PostPublishPanelPostpublish","editorStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","PostPublishPanel","constructor","arguments","onSubmit","bind","componentDidUpdate","prevProps","isPublished","props","isSaving","isDirty","onClose","hasPublishAction","isPostTypeViewable","render","forceIsDirty","isBeingScheduled","isPublishSidebarEnabled","isScheduled","isSavingNonPostEntityChanges","onTogglePublishSidebar","PostPublishExtension","PrePublishExtension","additionalProps","propsForPanel","isPublishedOrScheduled","isPrePublish","isPostPublish","className","children","size","onClick","icon","label","focusOnMount","accessibleWhenDisabled","disabled","variant","__nextHasNoMarginBottom","checked","onChange","select","_getCurrentPost$_link","getPostType","getCurrentPost","getEditedPostAttribute","isCurrentPostPublished","isCurrentPostScheduled","isEditedPostBeingScheduled","isEditedPostDirty","isAutosavingPost","isSavingPost","postType","_links","viewable","dispatch","disablePublishSidebar","enablePublishSidebar"],"sources":["@wordpress/editor/src/components/post-publish-panel/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { Component } from '@wordpress/element';\nimport {\n\tButton,\n\tSpinner,\n\tCheckboxControl,\n\twithFocusReturn,\n\twithConstrainedTabbing,\n} from '@wordpress/components';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { compose } from '@wordpress/compose';\nimport { closeSmall } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport PostPublishButton from '../post-publish-button';\nimport PostPublishPanelPrepublish from './prepublish';\nimport PostPublishPanelPostpublish from './postpublish';\nimport { store as editorStore } from '../../store';\n\nexport class PostPublishPanel extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.onSubmit = this.onSubmit.bind( this );\n\t}\n\n\tcomponentDidUpdate( prevProps ) {\n\t\t// Automatically collapse the publish sidebar when a post\n\t\t// is published and the user makes an edit.\n\t\tif (\n\t\t\tprevProps.isPublished &&\n\t\t\t! this.props.isSaving &&\n\t\t\tthis.props.isDirty\n\t\t) {\n\t\t\tthis.props.onClose();\n\t\t}\n\t}\n\n\tonSubmit() {\n\t\tconst { onClose, hasPublishAction, isPostTypeViewable } = this.props;\n\t\tif ( ! hasPublishAction || ! isPostTypeViewable ) {\n\t\t\tonClose();\n\t\t}\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tforceIsDirty,\n\t\t\tisBeingScheduled,\n\t\t\tisPublished,\n\t\t\tisPublishSidebarEnabled,\n\t\t\tisScheduled,\n\t\t\tisSaving,\n\t\t\tisSavingNonPostEntityChanges,\n\t\t\tonClose,\n\t\t\tonTogglePublishSidebar,\n\t\t\tPostPublishExtension,\n\t\t\tPrePublishExtension,\n\t\t\t...additionalProps\n\t\t} = this.props;\n\t\tconst {\n\t\t\thasPublishAction,\n\t\t\tisDirty,\n\t\t\tisPostTypeViewable,\n\t\t\t...propsForPanel\n\t\t} = additionalProps;\n\t\tconst isPublishedOrScheduled =\n\t\t\tisPublished || ( isScheduled && isBeingScheduled );\n\t\tconst isPrePublish = ! isPublishedOrScheduled && ! isSaving;\n\t\tconst isPostPublish = isPublishedOrScheduled && ! isSaving;\n\t\treturn (\n\t\t\t<div className=\"editor-post-publish-panel\" { ...propsForPanel }>\n\t\t\t\t<div className=\"editor-post-publish-panel__header\">\n\t\t\t\t\t{ isPostPublish ? (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\t\t\tlabel={ __( 'Close panel' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<div className=\"editor-post-publish-panel__header-publish-button\">\n\t\t\t\t\t\t\t\t<PostPublishButton\n\t\t\t\t\t\t\t\t\tfocusOnMount\n\t\t\t\t\t\t\t\t\tonSubmit={ this.onSubmit }\n\t\t\t\t\t\t\t\t\tforceIsDirty={ forceIsDirty }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"editor-post-publish-panel__header-cancel-button\">\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t\t\t\tdisabled={ isSavingNonPostEntityChanges }\n\t\t\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t\t<div className=\"editor-post-publish-panel__content\">\n\t\t\t\t\t{ isPrePublish && (\n\t\t\t\t\t\t<PostPublishPanelPrepublish>\n\t\t\t\t\t\t\t{ PrePublishExtension && <PrePublishExtension /> }\n\t\t\t\t\t\t</PostPublishPanelPrepublish>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isPostPublish && (\n\t\t\t\t\t\t<PostPublishPanelPostpublish focusOnMount>\n\t\t\t\t\t\t\t{ PostPublishExtension && <PostPublishExtension /> }\n\t\t\t\t\t\t</PostPublishPanelPostpublish>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isSaving && <Spinner /> }\n\t\t\t\t</div>\n\t\t\t\t<div className=\"editor-post-publish-panel__footer\">\n\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Always show pre-publish checks.' ) }\n\t\t\t\t\t\tchecked={ isPublishSidebarEnabled }\n\t\t\t\t\t\tonChange={ onTogglePublishSidebar }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n}\n\n/**\n * Renders a panel for publishing a post.\n */\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst { getPostType } = select( coreStore );\n\t\tconst {\n\t\t\tgetCurrentPost,\n\t\t\tgetEditedPostAttribute,\n\t\t\tisCurrentPostPublished,\n\t\t\tisCurrentPostScheduled,\n\t\t\tisEditedPostBeingScheduled,\n\t\t\tisEditedPostDirty,\n\t\t\tisAutosavingPost,\n\t\t\tisSavingPost,\n\t\t\tisSavingNonPostEntityChanges,\n\t\t} = select( editorStore );\n\t\tconst { isPublishSidebarEnabled } = select( editorStore );\n\t\tconst postType = getPostType( getEditedPostAttribute( 'type' ) );\n\n\t\treturn {\n\t\t\thasPublishAction:\n\t\t\t\tgetCurrentPost()._links?.[ 'wp:action-publish' ] ?? false,\n\t\t\tisPostTypeViewable: postType?.viewable,\n\t\t\tisBeingScheduled: isEditedPostBeingScheduled(),\n\t\t\tisDirty: isEditedPostDirty(),\n\t\t\tisPublished: isCurrentPostPublished(),\n\t\t\tisPublishSidebarEnabled: isPublishSidebarEnabled(),\n\t\t\tisSaving: isSavingPost() && ! isAutosavingPost(),\n\t\t\tisSavingNonPostEntityChanges: isSavingNonPostEntityChanges(),\n\t\t\tisScheduled: isCurrentPostScheduled(),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { isPublishSidebarEnabled } ) => {\n\t\tconst { disablePublishSidebar, enablePublishSidebar } =\n\t\t\tdispatch( editorStore );\n\t\treturn {\n\t\t\tonTogglePublishSidebar: () => {\n\t\t\t\tif ( isPublishSidebarEnabled ) {\n\t\t\t\t\tdisablePublishSidebar();\n\t\t\t\t} else {\n\t\t\t\t\tenablePublishSidebar();\n\t\t\t\t}\n\t\t\t},\n\t\t};\n\t} ),\n\twithFocusReturn,\n\twithConstrainedTabbing,\n] )( PostPublishPanel );\n"],"mappings":"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","ignoreList":[]}
@@ -21,10 +21,8 @@ const PostFormatSuggestion = ({
21
21
  suggestedPostFormat,
22
22
  suggestionText,
23
23
  onUpdatePostFormat
24
- }) => /*#__PURE__*/_jsx(Button
25
- // TODO: Switch to `true` (40px size) if possible
26
- , {
27
- __next40pxDefaultSize: false,
24
+ }) => /*#__PURE__*/_jsx(Button, {
25
+ __next40pxDefaultSize: true,
28
26
  variant: "link",
29
27
  onClick: () => onUpdatePostFormat(suggestedPostFormat),
30
28
  children: suggestionText
@@ -1 +1 @@
1
- {"version":3,"names":["Button","PanelBody","useDispatch","useSelect","__","sprintf","store","coreStore","POST_FORMATS","editorStore","jsx","_jsx","jsxs","_jsxs","getSuggestion","supportedFormats","suggestedPostFormat","formats","filter","format","includes","id","find","PostFormatSuggestion","suggestionText","onUpdatePostFormat","__next40pxDefaultSize","variant","onClick","children","PostFormatPanel","currentPostFormat","suggestion","select","_select$getThemeSuppo","getEditedPostAttribute","getSuggestedPostFormat","getThemeSupports","editPost","panelBodyTitle","className","initialOpen","title","caption"],"sources":["@wordpress/editor/src/components/post-publish-panel/maybe-post-format-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, PanelBody } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { POST_FORMATS } from '../post-format';\nimport { store as editorStore } from '../../store';\n\nconst getSuggestion = ( supportedFormats, suggestedPostFormat ) => {\n\tconst formats = POST_FORMATS.filter( ( format ) =>\n\t\tsupportedFormats?.includes( format.id )\n\t);\n\treturn formats.find( ( format ) => format.id === suggestedPostFormat );\n};\n\nconst PostFormatSuggestion = ( {\n\tsuggestedPostFormat,\n\tsuggestionText,\n\tonUpdatePostFormat,\n} ) => (\n\t<Button\n\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t__next40pxDefaultSize={ false }\n\t\tvariant=\"link\"\n\t\tonClick={ () => onUpdatePostFormat( suggestedPostFormat ) }\n\t>\n\t\t{ suggestionText }\n\t</Button>\n);\n\nexport default function PostFormatPanel() {\n\tconst { currentPostFormat, suggestion } = useSelect( ( select ) => {\n\t\tconst { getEditedPostAttribute, getSuggestedPostFormat } =\n\t\t\tselect( editorStore );\n\t\tconst supportedFormats =\n\t\t\tselect( coreStore ).getThemeSupports().formats ?? [];\n\t\treturn {\n\t\t\tcurrentPostFormat: getEditedPostAttribute( 'format' ),\n\t\t\tsuggestion: getSuggestion(\n\t\t\t\tsupportedFormats,\n\t\t\t\tgetSuggestedPostFormat()\n\t\t\t),\n\t\t};\n\t}, [] );\n\n\tconst { editPost } = useDispatch( editorStore );\n\n\tconst onUpdatePostFormat = ( format ) => editPost( { format } );\n\n\tconst panelBodyTitle = [\n\t\t__( 'Suggestion:' ),\n\t\t<span className=\"editor-post-publish-panel__link\" key=\"label\">\n\t\t\t{ __( 'Use a post format' ) }\n\t\t</span>,\n\t];\n\n\tif ( ! suggestion || suggestion.id === currentPostFormat ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<PanelBody initialOpen={ false } title={ panelBodyTitle }>\n\t\t\t<p>\n\t\t\t\t{ __(\n\t\t\t\t\t'Your theme uses post formats to highlight different kinds of content, like images or videos. Apply a post format to see this special styling.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t\t<p>\n\t\t\t\t<PostFormatSuggestion\n\t\t\t\t\tonUpdatePostFormat={ onUpdatePostFormat }\n\t\t\t\t\tsuggestedPostFormat={ suggestion.id }\n\t\t\t\t\tsuggestionText={ sprintf(\n\t\t\t\t\t\t/* translators: %s: post format */\n\t\t\t\t\t\t__( 'Apply the \"%1$s\" format.' ),\n\t\t\t\t\t\tsuggestion.caption\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</p>\n\t\t</PanelBody>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAM,EAAEC,SAAS,QAAQ,uBAAuB;AACzD,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;;AAEzD;AACA;AACA;AACA,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASF,KAAK,IAAIG,WAAW,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEnD,MAAMC,aAAa,GAAGA,CAAEC,gBAAgB,EAAEC,mBAAmB,KAAM;EAClE,MAAMC,OAAO,GAAGT,YAAY,CAACU,MAAM,CAAIC,MAAM,IAC5CJ,gBAAgB,EAAEK,QAAQ,CAAED,MAAM,CAACE,EAAG,CACvC,CAAC;EACD,OAAOJ,OAAO,CAACK,IAAI,CAAIH,MAAM,IAAMA,MAAM,CAACE,EAAE,KAAKL,mBAAoB,CAAC;AACvE,CAAC;AAED,MAAMO,oBAAoB,GAAGA,CAAE;EAC9BP,mBAAmB;EACnBQ,cAAc;EACdC;AACD,CAAC,kBACAd,IAAA,CAACX;AACA;AAAA;EACA0B,qBAAqB,EAAG,KAAO;EAC/BC,OAAO,EAAC,MAAM;EACdC,OAAO,EAAGA,CAAA,KAAMH,kBAAkB,CAAET,mBAAoB,CAAG;EAAAa,QAAA,EAEzDL;AAAc,CACT,CACR;AAED,eAAe,SAASM,eAAeA,CAAA,EAAG;EACzC,MAAM;IAAEC,iBAAiB;IAAEC;EAAW,CAAC,GAAG7B,SAAS,CAAI8B,MAAM,IAAM;IAAA,IAAAC,qBAAA;IAClE,MAAM;MAAEC,sBAAsB;MAAEC;IAAuB,CAAC,GACvDH,MAAM,CAAExB,WAAY,CAAC;IACtB,MAAMM,gBAAgB,IAAAmB,qBAAA,GACrBD,MAAM,CAAE1B,SAAU,CAAC,CAAC8B,gBAAgB,CAAC,CAAC,CAACpB,OAAO,cAAAiB,qBAAA,cAAAA,qBAAA,GAAI,EAAE;IACrD,OAAO;MACNH,iBAAiB,EAAEI,sBAAsB,CAAE,QAAS,CAAC;MACrDH,UAAU,EAAElB,aAAa,CACxBC,gBAAgB,EAChBqB,sBAAsB,CAAC,CACxB;IACD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAM;IAAEE;EAAS,CAAC,GAAGpC,WAAW,CAAEO,WAAY,CAAC;EAE/C,MAAMgB,kBAAkB,GAAKN,MAAM,IAAMmB,QAAQ,CAAE;IAAEnB;EAAO,CAAE,CAAC;EAE/D,MAAMoB,cAAc,GAAG,CACtBnC,EAAE,CAAE,aAAc,CAAC,eACnBO,IAAA;IAAM6B,SAAS,EAAC,iCAAiC;IAAAX,QAAA,EAC9CzB,EAAE,CAAE,mBAAoB;EAAC,GAD0B,OAEhD,CAAC,CACP;EAED,IAAK,CAAE4B,UAAU,IAAIA,UAAU,CAACX,EAAE,KAAKU,iBAAiB,EAAG;IAC1D,OAAO,IAAI;EACZ;EAEA,oBACClB,KAAA,CAACZ,SAAS;IAACwC,WAAW,EAAG,KAAO;IAACC,KAAK,EAAGH,cAAgB;IAAAV,QAAA,gBACxDlB,IAAA;MAAAkB,QAAA,EACGzB,EAAE,CACH,+IACD;IAAC,CACC,CAAC,eACJO,IAAA;MAAAkB,QAAA,eACClB,IAAA,CAACY,oBAAoB;QACpBE,kBAAkB,EAAGA,kBAAoB;QACzCT,mBAAmB,EAAGgB,UAAU,CAACX,EAAI;QACrCG,cAAc,EAAGnB,OAAO,EACvB;QACAD,EAAE,CAAE,0BAA2B,CAAC,EAChC4B,UAAU,CAACW,OACZ;MAAG,CACH;IAAC,CACA,CAAC;EAAA,CACM,CAAC;AAEd","ignoreList":[]}
1
+ {"version":3,"names":["Button","PanelBody","useDispatch","useSelect","__","sprintf","store","coreStore","POST_FORMATS","editorStore","jsx","_jsx","jsxs","_jsxs","getSuggestion","supportedFormats","suggestedPostFormat","formats","filter","format","includes","id","find","PostFormatSuggestion","suggestionText","onUpdatePostFormat","__next40pxDefaultSize","variant","onClick","children","PostFormatPanel","currentPostFormat","suggestion","select","_select$getThemeSuppo","getEditedPostAttribute","getSuggestedPostFormat","getThemeSupports","editPost","panelBodyTitle","className","initialOpen","title","caption"],"sources":["@wordpress/editor/src/components/post-publish-panel/maybe-post-format-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, PanelBody } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { POST_FORMATS } from '../post-format';\nimport { store as editorStore } from '../../store';\n\nconst getSuggestion = ( supportedFormats, suggestedPostFormat ) => {\n\tconst formats = POST_FORMATS.filter( ( format ) =>\n\t\tsupportedFormats?.includes( format.id )\n\t);\n\treturn formats.find( ( format ) => format.id === suggestedPostFormat );\n};\n\nconst PostFormatSuggestion = ( {\n\tsuggestedPostFormat,\n\tsuggestionText,\n\tonUpdatePostFormat,\n} ) => (\n\t<Button\n\t\t__next40pxDefaultSize\n\t\tvariant=\"link\"\n\t\tonClick={ () => onUpdatePostFormat( suggestedPostFormat ) }\n\t>\n\t\t{ suggestionText }\n\t</Button>\n);\n\nexport default function PostFormatPanel() {\n\tconst { currentPostFormat, suggestion } = useSelect( ( select ) => {\n\t\tconst { getEditedPostAttribute, getSuggestedPostFormat } =\n\t\t\tselect( editorStore );\n\t\tconst supportedFormats =\n\t\t\tselect( coreStore ).getThemeSupports().formats ?? [];\n\t\treturn {\n\t\t\tcurrentPostFormat: getEditedPostAttribute( 'format' ),\n\t\t\tsuggestion: getSuggestion(\n\t\t\t\tsupportedFormats,\n\t\t\t\tgetSuggestedPostFormat()\n\t\t\t),\n\t\t};\n\t}, [] );\n\n\tconst { editPost } = useDispatch( editorStore );\n\n\tconst onUpdatePostFormat = ( format ) => editPost( { format } );\n\n\tconst panelBodyTitle = [\n\t\t__( 'Suggestion:' ),\n\t\t<span className=\"editor-post-publish-panel__link\" key=\"label\">\n\t\t\t{ __( 'Use a post format' ) }\n\t\t</span>,\n\t];\n\n\tif ( ! suggestion || suggestion.id === currentPostFormat ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<PanelBody initialOpen={ false } title={ panelBodyTitle }>\n\t\t\t<p>\n\t\t\t\t{ __(\n\t\t\t\t\t'Your theme uses post formats to highlight different kinds of content, like images or videos. Apply a post format to see this special styling.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t\t<p>\n\t\t\t\t<PostFormatSuggestion\n\t\t\t\t\tonUpdatePostFormat={ onUpdatePostFormat }\n\t\t\t\t\tsuggestedPostFormat={ suggestion.id }\n\t\t\t\t\tsuggestionText={ sprintf(\n\t\t\t\t\t\t/* translators: %s: post format */\n\t\t\t\t\t\t__( 'Apply the \"%1$s\" format.' ),\n\t\t\t\t\t\tsuggestion.caption\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</p>\n\t\t</PanelBody>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAM,EAAEC,SAAS,QAAQ,uBAAuB;AACzD,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;;AAEzD;AACA;AACA;AACA,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASF,KAAK,IAAIG,WAAW,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEnD,MAAMC,aAAa,GAAGA,CAAEC,gBAAgB,EAAEC,mBAAmB,KAAM;EAClE,MAAMC,OAAO,GAAGT,YAAY,CAACU,MAAM,CAAIC,MAAM,IAC5CJ,gBAAgB,EAAEK,QAAQ,CAAED,MAAM,CAACE,EAAG,CACvC,CAAC;EACD,OAAOJ,OAAO,CAACK,IAAI,CAAIH,MAAM,IAAMA,MAAM,CAACE,EAAE,KAAKL,mBAAoB,CAAC;AACvE,CAAC;AAED,MAAMO,oBAAoB,GAAGA,CAAE;EAC9BP,mBAAmB;EACnBQ,cAAc;EACdC;AACD,CAAC,kBACAd,IAAA,CAACX,MAAM;EACN0B,qBAAqB;EACrBC,OAAO,EAAC,MAAM;EACdC,OAAO,EAAGA,CAAA,KAAMH,kBAAkB,CAAET,mBAAoB,CAAG;EAAAa,QAAA,EAEzDL;AAAc,CACT,CACR;AAED,eAAe,SAASM,eAAeA,CAAA,EAAG;EACzC,MAAM;IAAEC,iBAAiB;IAAEC;EAAW,CAAC,GAAG7B,SAAS,CAAI8B,MAAM,IAAM;IAAA,IAAAC,qBAAA;IAClE,MAAM;MAAEC,sBAAsB;MAAEC;IAAuB,CAAC,GACvDH,MAAM,CAAExB,WAAY,CAAC;IACtB,MAAMM,gBAAgB,IAAAmB,qBAAA,GACrBD,MAAM,CAAE1B,SAAU,CAAC,CAAC8B,gBAAgB,CAAC,CAAC,CAACpB,OAAO,cAAAiB,qBAAA,cAAAA,qBAAA,GAAI,EAAE;IACrD,OAAO;MACNH,iBAAiB,EAAEI,sBAAsB,CAAE,QAAS,CAAC;MACrDH,UAAU,EAAElB,aAAa,CACxBC,gBAAgB,EAChBqB,sBAAsB,CAAC,CACxB;IACD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAM;IAAEE;EAAS,CAAC,GAAGpC,WAAW,CAAEO,WAAY,CAAC;EAE/C,MAAMgB,kBAAkB,GAAKN,MAAM,IAAMmB,QAAQ,CAAE;IAAEnB;EAAO,CAAE,CAAC;EAE/D,MAAMoB,cAAc,GAAG,CACtBnC,EAAE,CAAE,aAAc,CAAC,eACnBO,IAAA;IAAM6B,SAAS,EAAC,iCAAiC;IAAAX,QAAA,EAC9CzB,EAAE,CAAE,mBAAoB;EAAC,GAD0B,OAEhD,CAAC,CACP;EAED,IAAK,CAAE4B,UAAU,IAAIA,UAAU,CAACX,EAAE,KAAKU,iBAAiB,EAAG;IAC1D,OAAO,IAAI;EACZ;EAEA,oBACClB,KAAA,CAACZ,SAAS;IAACwC,WAAW,EAAG,KAAO;IAACC,KAAK,EAAGH,cAAgB;IAAAV,QAAA,gBACxDlB,IAAA;MAAAkB,QAAA,EACGzB,EAAE,CACH,+IACD;IAAC,CACC,CAAC,eACJO,IAAA;MAAAkB,QAAA,eACClB,IAAA,CAACY,oBAAoB;QACpBE,kBAAkB,EAAGA,kBAAoB;QACzCT,mBAAmB,EAAGgB,UAAU,CAACX,EAAI;QACrCG,cAAc,EAAGnB,OAAO,EACvB;QACAD,EAAE,CAAE,0BAA2B,CAAC,EAChC4B,UAAU,CAACW,OACZ;MAAG,CACH;IAAC,CACA,CAAC;EAAA,CACM,CAAC;AAEd","ignoreList":[]}
@@ -7,6 +7,11 @@ import { __ } from '@wordpress/i18n';
7
7
  import { store as blockEditorStore } from '@wordpress/block-editor';
8
8
  import { useState } from '@wordpress/element';
9
9
  import { isBlobURL } from '@wordpress/blob';
10
+
11
+ /**
12
+ * Internal dependencies
13
+ */
14
+ import { fetchMedia } from './media-util';
10
15
  import { jsx as _jsx } from "react/jsx-runtime";
11
16
  import { jsxs as _jsxs } from "react/jsx-runtime";
12
17
  function flattenBlocks(blocks) {
@@ -17,7 +22,70 @@ function flattenBlocks(blocks) {
17
22
  });
18
23
  return result;
19
24
  }
20
- function Image(block) {
25
+
26
+ /**
27
+ * Determine whether a block has external media.
28
+ *
29
+ * Different blocks use different attribute names (and potentially
30
+ * different logic as well) in determining whether the media is
31
+ * present, and whether it's external.
32
+ *
33
+ * @param {{name: string, attributes: Object}} block The block.
34
+ * @return {boolean?} Whether the block has external media
35
+ */
36
+ function hasExternalMedia(block) {
37
+ if (block.name === 'core/image' || block.name === 'core/cover') {
38
+ return block.attributes.url && !block.attributes.id;
39
+ }
40
+ if (block.name === 'core/media-text') {
41
+ return block.attributes.mediaUrl && !block.attributes.mediaId;
42
+ }
43
+ return undefined;
44
+ }
45
+
46
+ /**
47
+ * Retrieve media info from a block.
48
+ *
49
+ * Different blocks use different attribute names, so we need this
50
+ * function to normalize things into a consistent naming scheme.
51
+ *
52
+ * @param {{name: string, attributes: Object}} block The block.
53
+ * @return {{url: ?string, alt: ?string, id: ?number}} The media info for the block.
54
+ */
55
+ function getMediaInfo(block) {
56
+ if (block.name === 'core/image' || block.name === 'core/cover') {
57
+ const {
58
+ url,
59
+ alt,
60
+ id
61
+ } = block.attributes;
62
+ return {
63
+ url,
64
+ alt,
65
+ id
66
+ };
67
+ }
68
+ if (block.name === 'core/media-text') {
69
+ const {
70
+ mediaUrl: url,
71
+ mediaAlt: alt,
72
+ mediaId: id
73
+ } = block.attributes;
74
+ return {
75
+ url,
76
+ alt,
77
+ id
78
+ };
79
+ }
80
+ return {};
81
+ }
82
+
83
+ // Image component to represent a single image in the upload dialog.
84
+ function Image({
85
+ clientId,
86
+ alt,
87
+ url
88
+ }) {
21
89
  const {
22
90
  selectBlock
23
91
  } = useDispatch(blockEditorStore);
@@ -26,16 +94,16 @@ function Image(block) {
26
94
  role: "button",
27
95
  "aria-label": __('Select image block.'),
28
96
  onClick: () => {
29
- selectBlock(block.clientId);
97
+ selectBlock(clientId);
30
98
  },
31
99
  onKeyDown: event => {
32
100
  if (event.key === 'Enter' || event.key === ' ') {
33
- selectBlock(block.clientId);
101
+ selectBlock(clientId);
34
102
  event.preventDefault();
35
103
  }
36
104
  },
37
- alt: block.attributes.alt,
38
- src: block.attributes.url,
105
+ alt: alt,
106
+ src: url,
39
107
  animate: {
40
108
  opacity: 1
41
109
  },
@@ -53,9 +121,9 @@ function Image(block) {
53
121
  whileHover: {
54
122
  scale: 1.08
55
123
  }
56
- }, block.clientId);
124
+ }, clientId);
57
125
  }
58
- export default function PostFormatPanel() {
126
+ export default function MaybeUploadMediaPanel() {
59
127
  const [isUploading, setIsUploading] = useState(false);
60
128
  const [isAnimating, setIsAnimating] = useState(false);
61
129
  const [hadUploadError, setHadUploadError] = useState(false);
@@ -66,40 +134,85 @@ export default function PostFormatPanel() {
66
134
  editorBlocks: select(blockEditorStore).getBlocks(),
67
135
  mediaUpload: select(blockEditorStore).getSettings().mediaUpload
68
136
  }), []);
69
- const externalImages = flattenBlocks(editorBlocks).filter(block => block.name === 'core/image' && block.attributes.url && !block.attributes.id);
137
+
138
+ // Get a list of blocks with external media.
139
+ const blocksWithExternalMedia = flattenBlocks(editorBlocks).filter(block => hasExternalMedia(block));
70
140
  const {
71
141
  updateBlockAttributes
72
142
  } = useDispatch(blockEditorStore);
73
- if (!mediaUpload || !externalImages.length) {
143
+ if (!mediaUpload || !blocksWithExternalMedia.length) {
74
144
  return null;
75
145
  }
76
146
  const panelBodyTitle = [__('Suggestion:'), /*#__PURE__*/_jsx("span", {
77
147
  className: "editor-post-publish-panel__link",
78
148
  children: __('External media')
79
149
  }, "label")];
150
+
151
+ /**
152
+ * Update an individual block to point to newly-added library media.
153
+ *
154
+ * Different blocks use different attribute names, so we need this
155
+ * function to ensure we modify the correct attributes for each type.
156
+ *
157
+ * @param {{name: string, attributes: Object}} block The block.
158
+ * @param {{id: number, url: string}} media Media library file info.
159
+ */
160
+ function updateBlockWithUploadedMedia(block, media) {
161
+ if (block.name === 'core/image' || block.name === 'core/cover') {
162
+ updateBlockAttributes(block.clientId, {
163
+ id: media.id,
164
+ url: media.url
165
+ });
166
+ }
167
+ if (block.name === 'core/media-text') {
168
+ updateBlockAttributes(block.clientId, {
169
+ mediaId: media.id,
170
+ mediaUrl: media.url
171
+ });
172
+ }
173
+ }
174
+
175
+ // Handle fetching and uploading all external media in the post.
80
176
  function uploadImages() {
81
177
  setIsUploading(true);
82
178
  setHadUploadError(false);
83
- Promise.all(externalImages.map(image => window.fetch(image.attributes.url.includes('?') ? image.attributes.url : image.attributes.url + '?').then(response => response.blob()).then(blob => new Promise((resolve, reject) => {
84
- mediaUpload({
85
- filesList: [blob],
86
- onFileChange: ([media]) => {
87
- if (isBlobURL(media.url)) {
88
- return;
179
+
180
+ // Multiple blocks can be using the same URL, so we
181
+ // should ensure we only fetch and upload each of them once.
182
+ const mediaUrls = new Set(blocksWithExternalMedia.map(block => {
183
+ const {
184
+ url
185
+ } = getMediaInfo(block);
186
+ return url;
187
+ }));
188
+
189
+ // Create an upload promise for each URL, that we can wait for in all
190
+ // blocks that make use of that media.
191
+ const uploadPromises = Object.fromEntries(Object.entries(fetchMedia([...mediaUrls])).map(([url, filePromise]) => {
192
+ const uploadPromise = filePromise.then(blob => new Promise((resolve, reject) => {
193
+ mediaUpload({
194
+ filesList: [blob],
195
+ onFileChange: ([media]) => {
196
+ if (isBlobURL(media.url)) {
197
+ return;
198
+ }
199
+ resolve(media);
200
+ },
201
+ onError() {
202
+ reject();
89
203
  }
90
- updateBlockAttributes(image.clientId, {
91
- id: media.id,
92
- url: media.url
93
- });
94
- resolve();
95
- },
96
- onError() {
97
- reject();
98
- }
99
- });
100
- }).then(() => setIsAnimating(true))).catch(() => {
101
- setHadUploadError(true);
102
- }))).finally(() => {
204
+ });
205
+ }));
206
+ return [url, uploadPromise];
207
+ }));
208
+
209
+ // Wait for all blocks to be updated with library media.
210
+ Promise.allSettled(blocksWithExternalMedia.map(block => {
211
+ const {
212
+ url
213
+ } = getMediaInfo(block);
214
+ return uploadPromises[url].then(media => updateBlockWithUploadedMedia(block, media)).then(() => setIsAnimating(true)).catch(() => setHadUploadError(true));
215
+ })).finally(() => {
103
216
  setIsUploading(false);
104
217
  });
105
218
  }
@@ -116,15 +229,19 @@ export default function PostFormatPanel() {
116
229
  },
117
230
  children: [/*#__PURE__*/_jsx(AnimatePresence, {
118
231
  onExitComplete: () => setIsAnimating(false),
119
- children: externalImages.map(image => {
232
+ children: blocksWithExternalMedia.map(block => {
233
+ const {
234
+ url,
235
+ alt
236
+ } = getMediaInfo(block);
120
237
  return /*#__PURE__*/_jsx(Image, {
121
- ...image
122
- }, image.clientId);
238
+ clientId: block.clientId,
239
+ url: url,
240
+ alt: alt
241
+ }, block.clientId);
123
242
  })
124
- }), isUploading || isAnimating ? /*#__PURE__*/_jsx(Spinner, {}) : /*#__PURE__*/_jsx(Button
125
- // TODO: Switch to `true` (40px size) if possible
126
- , {
127
- __next40pxDefaultSize: false,
243
+ }), isUploading || isAnimating ? /*#__PURE__*/_jsx(Spinner, {}) : /*#__PURE__*/_jsx(Button, {
244
+ __next40pxDefaultSize: true,
128
245
  variant: "primary",
129
246
  onClick: uploadImages,
130
247
  children: __('Upload')