@wordpress/editor 14.6.0 → 14.7.1-next.5368f64a9.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 (354) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +41 -0
  3. package/build/bindings/post-meta.js +11 -8
  4. package/build/bindings/post-meta.js.map +1 -1
  5. package/build/components/block-manager/index.js +4 -1
  6. package/build/components/block-manager/index.js.map +1 -1
  7. package/build/components/block-settings-menu/content-only-settings-menu.js +5 -8
  8. package/build/components/block-settings-menu/content-only-settings-menu.js.map +1 -1
  9. package/build/components/document-bar/index.js +4 -4
  10. package/build/components/document-bar/index.js.map +1 -1
  11. package/build/components/editor/index.js +2 -2
  12. package/build/components/editor/index.js.map +1 -1
  13. package/build/components/editor-history/redo.js +4 -1
  14. package/build/components/editor-history/redo.js.map +1 -1
  15. package/build/components/editor-history/undo.js +4 -1
  16. package/build/components/editor-history/undo.js.map +1 -1
  17. package/build/components/editor-interface/index.js +2 -3
  18. package/build/components/editor-interface/index.js.map +1 -1
  19. package/build/components/error-boundary/index.js +4 -1
  20. package/build/components/error-boundary/index.js.map +1 -1
  21. package/build/components/global-styles-provider/index.js +3 -4
  22. package/build/components/global-styles-provider/index.js.map +1 -1
  23. package/build/components/header/index.js +4 -4
  24. package/build/components/header/index.js.map +1 -1
  25. package/build/components/index.js +8 -0
  26. package/build/components/index.js.map +1 -1
  27. package/build/components/inserter-sidebar/index.js +5 -10
  28. package/build/components/inserter-sidebar/index.js.map +1 -1
  29. package/build/components/local-autosave-monitor/index.js +5 -5
  30. package/build/components/local-autosave-monitor/index.js.map +1 -1
  31. package/build/components/page-attributes/parent.js +4 -1
  32. package/build/components/page-attributes/parent.js.map +1 -1
  33. package/build/components/plugin-preview-menu-item/index.js +57 -0
  34. package/build/components/plugin-preview-menu-item/index.js.map +1 -0
  35. package/build/components/post-actions/index.js +5 -8
  36. package/build/components/post-actions/index.js.map +1 -1
  37. package/build/components/post-excerpt/panel.js +4 -1
  38. package/build/components/post-excerpt/panel.js.map +1 -1
  39. package/build/components/post-featured-image/index.js +12 -3
  40. package/build/components/post-featured-image/index.js.map +1 -1
  41. package/build/components/post-format/index.js +4 -1
  42. package/build/components/post-format/index.js.map +1 -1
  43. package/build/components/post-last-revision/index.js +4 -1
  44. package/build/components/post-last-revision/index.js.map +1 -1
  45. package/build/components/post-locked-modal/index.js +12 -3
  46. package/build/components/post-locked-modal/index.js.map +1 -1
  47. package/build/components/post-publish-panel/index.js +4 -1
  48. package/build/components/post-publish-panel/index.js.map +1 -1
  49. package/build/components/post-publish-panel/maybe-post-format-panel.js +4 -1
  50. package/build/components/post-publish-panel/maybe-post-format-panel.js.map +1 -1
  51. package/build/components/post-publish-panel/maybe-upload-media.js +158 -33
  52. package/build/components/post-publish-panel/maybe-upload-media.js.map +1 -1
  53. package/build/components/post-publish-panel/media-util.js +79 -0
  54. package/build/components/post-publish-panel/media-util.js.map +1 -0
  55. package/build/components/post-status/index.js +4 -2
  56. package/build/components/post-status/index.js.map +1 -1
  57. package/build/components/post-taxonomies/hierarchical-term-selector.js +4 -1
  58. package/build/components/post-taxonomies/hierarchical-term-selector.js.map +1 -1
  59. package/build/components/post-taxonomies/most-used-terms.js +4 -1
  60. package/build/components/post-taxonomies/most-used-terms.js.map +1 -1
  61. package/build/components/post-template/block-theme.js +13 -4
  62. package/build/components/post-template/block-theme.js.map +1 -1
  63. package/build/components/post-template/classic-theme.js +4 -1
  64. package/build/components/post-template/classic-theme.js.map +1 -1
  65. package/build/components/post-title/index.js +32 -46
  66. package/build/components/post-title/index.js.map +1 -1
  67. package/build/components/post-trash/check.js +2 -1
  68. package/build/components/post-trash/check.js.map +1 -1
  69. package/build/components/post-trash/index.js +22 -8
  70. package/build/components/post-trash/index.js.map +1 -1
  71. package/build/components/post-url/index.js +4 -1
  72. package/build/components/post-url/index.js.map +1 -1
  73. package/build/components/preferences-modal/index.js +28 -1
  74. package/build/components/preferences-modal/index.js.map +1 -1
  75. package/build/components/preview-dropdown/index.js +26 -14
  76. package/build/components/preview-dropdown/index.js.map +1 -1
  77. package/build/components/provider/index.js +34 -8
  78. package/build/components/provider/index.js.map +1 -1
  79. package/build/components/provider/use-block-editor-settings.js +14 -10
  80. package/build/components/provider/use-block-editor-settings.js.map +1 -1
  81. package/build/components/save-publish-panels/index.js +8 -2
  82. package/build/components/save-publish-panels/index.js.map +1 -1
  83. package/build/components/sidebar/post-summary.js +3 -0
  84. package/build/components/sidebar/post-summary.js.map +1 -1
  85. package/build/components/start-page-options/index.js +16 -19
  86. package/build/components/start-page-options/index.js.map +1 -1
  87. package/build/components/start-template-options/index.js +1 -0
  88. package/build/components/start-template-options/index.js.map +1 -1
  89. package/build/components/table-of-contents/index.js +1 -0
  90. package/build/components/table-of-contents/index.js.map +1 -1
  91. package/build/components/text-editor/index.js +1 -0
  92. package/build/components/text-editor/index.js.map +1 -1
  93. package/build/components/visual-editor/edit-template-blocks-notification.js +1 -1
  94. package/build/components/visual-editor/edit-template-blocks-notification.js.map +1 -1
  95. package/build/components/visual-editor/index.js +1 -6
  96. package/build/components/visual-editor/index.js.map +1 -1
  97. package/build/dataviews/actions/export-pattern.js +2 -0
  98. package/build/dataviews/actions/export-pattern.js.map +1 -1
  99. package/build/dataviews/actions/permanently-delete-post.js +2 -0
  100. package/build/dataviews/actions/permanently-delete-post.js.map +1 -1
  101. package/build/dataviews/actions/reset-post.js +2 -0
  102. package/build/dataviews/actions/reset-post.js.map +1 -1
  103. package/build/dataviews/actions/trash-post.js +2 -0
  104. package/build/dataviews/actions/trash-post.js.map +1 -1
  105. package/build/dataviews/actions/view-post.js +1 -1
  106. package/build/dataviews/actions/view-post.js.map +1 -1
  107. package/build/private-apis.js +0 -2
  108. package/build/private-apis.js.map +1 -1
  109. package/build/store/private-actions.js +1 -1
  110. package/build/store/private-actions.js.map +1 -1
  111. package/build/store/selectors.js +7 -3
  112. package/build/store/selectors.js.map +1 -1
  113. package/build-module/bindings/post-meta.js +11 -8
  114. package/build-module/bindings/post-meta.js.map +1 -1
  115. package/build-module/components/block-manager/index.js +4 -1
  116. package/build-module/components/block-manager/index.js.map +1 -1
  117. package/build-module/components/block-settings-menu/content-only-settings-menu.js +6 -9
  118. package/build-module/components/block-settings-menu/content-only-settings-menu.js.map +1 -1
  119. package/build-module/components/document-bar/index.js +4 -4
  120. package/build-module/components/document-bar/index.js.map +1 -1
  121. package/build-module/components/editor/index.js +2 -2
  122. package/build-module/components/editor/index.js.map +1 -1
  123. package/build-module/components/editor-history/redo.js +4 -1
  124. package/build-module/components/editor-history/redo.js.map +1 -1
  125. package/build-module/components/editor-history/undo.js +4 -1
  126. package/build-module/components/editor-history/undo.js.map +1 -1
  127. package/build-module/components/editor-interface/index.js +2 -3
  128. package/build-module/components/editor-interface/index.js.map +1 -1
  129. package/build-module/components/error-boundary/index.js +4 -1
  130. package/build-module/components/error-boundary/index.js.map +1 -1
  131. package/build-module/components/global-styles-provider/index.js +3 -4
  132. package/build-module/components/global-styles-provider/index.js.map +1 -1
  133. package/build-module/components/header/index.js +4 -4
  134. package/build-module/components/header/index.js.map +1 -1
  135. package/build-module/components/index.js +1 -0
  136. package/build-module/components/index.js.map +1 -1
  137. package/build-module/components/inserter-sidebar/index.js +5 -10
  138. package/build-module/components/inserter-sidebar/index.js.map +1 -1
  139. package/build-module/components/local-autosave-monitor/index.js +5 -5
  140. package/build-module/components/local-autosave-monitor/index.js.map +1 -1
  141. package/build-module/components/page-attributes/parent.js +4 -1
  142. package/build-module/components/page-attributes/parent.js.map +1 -1
  143. package/build-module/components/plugin-preview-menu-item/index.js +52 -0
  144. package/build-module/components/plugin-preview-menu-item/index.js.map +1 -0
  145. package/build-module/components/post-actions/index.js +5 -8
  146. package/build-module/components/post-actions/index.js.map +1 -1
  147. package/build-module/components/post-excerpt/panel.js +4 -1
  148. package/build-module/components/post-excerpt/panel.js.map +1 -1
  149. package/build-module/components/post-featured-image/index.js +12 -3
  150. package/build-module/components/post-featured-image/index.js.map +1 -1
  151. package/build-module/components/post-format/index.js +4 -1
  152. package/build-module/components/post-format/index.js.map +1 -1
  153. package/build-module/components/post-last-revision/index.js +4 -1
  154. package/build-module/components/post-last-revision/index.js.map +1 -1
  155. package/build-module/components/post-locked-modal/index.js +12 -3
  156. package/build-module/components/post-locked-modal/index.js.map +1 -1
  157. package/build-module/components/post-publish-panel/index.js +4 -1
  158. package/build-module/components/post-publish-panel/index.js.map +1 -1
  159. package/build-module/components/post-publish-panel/maybe-post-format-panel.js +4 -1
  160. package/build-module/components/post-publish-panel/maybe-post-format-panel.js.map +1 -1
  161. package/build-module/components/post-publish-panel/maybe-upload-media.js +157 -32
  162. package/build-module/components/post-publish-panel/maybe-upload-media.js.map +1 -1
  163. package/build-module/components/post-publish-panel/media-util.js +72 -0
  164. package/build-module/components/post-publish-panel/media-util.js.map +1 -0
  165. package/build-module/components/post-status/index.js +4 -2
  166. package/build-module/components/post-status/index.js.map +1 -1
  167. package/build-module/components/post-taxonomies/hierarchical-term-selector.js +4 -1
  168. package/build-module/components/post-taxonomies/hierarchical-term-selector.js.map +1 -1
  169. package/build-module/components/post-taxonomies/most-used-terms.js +4 -1
  170. package/build-module/components/post-taxonomies/most-used-terms.js.map +1 -1
  171. package/build-module/components/post-template/block-theme.js +13 -4
  172. package/build-module/components/post-template/block-theme.js.map +1 -1
  173. package/build-module/components/post-template/classic-theme.js +4 -1
  174. package/build-module/components/post-template/classic-theme.js.map +1 -1
  175. package/build-module/components/post-title/index.js +33 -47
  176. package/build-module/components/post-title/index.js.map +1 -1
  177. package/build-module/components/post-trash/check.js +2 -1
  178. package/build-module/components/post-trash/check.js.map +1 -1
  179. package/build-module/components/post-trash/index.js +23 -11
  180. package/build-module/components/post-trash/index.js.map +1 -1
  181. package/build-module/components/post-url/index.js +4 -1
  182. package/build-module/components/post-url/index.js.map +1 -1
  183. package/build-module/components/preferences-modal/index.js +28 -1
  184. package/build-module/components/preferences-modal/index.js.map +1 -1
  185. package/build-module/components/preview-dropdown/index.js +26 -14
  186. package/build-module/components/preview-dropdown/index.js.map +1 -1
  187. package/build-module/components/provider/index.js +35 -9
  188. package/build-module/components/provider/index.js.map +1 -1
  189. package/build-module/components/provider/use-block-editor-settings.js +15 -11
  190. package/build-module/components/provider/use-block-editor-settings.js.map +1 -1
  191. package/build-module/components/save-publish-panels/index.js +8 -2
  192. package/build-module/components/save-publish-panels/index.js.map +1 -1
  193. package/build-module/components/sidebar/post-summary.js +3 -0
  194. package/build-module/components/sidebar/post-summary.js.map +1 -1
  195. package/build-module/components/start-page-options/index.js +17 -21
  196. package/build-module/components/start-page-options/index.js.map +1 -1
  197. package/build-module/components/start-template-options/index.js +1 -0
  198. package/build-module/components/start-template-options/index.js.map +1 -1
  199. package/build-module/components/table-of-contents/index.js +1 -0
  200. package/build-module/components/table-of-contents/index.js.map +1 -1
  201. package/build-module/components/text-editor/index.js +1 -0
  202. package/build-module/components/text-editor/index.js.map +1 -1
  203. package/build-module/components/visual-editor/edit-template-blocks-notification.js +1 -1
  204. package/build-module/components/visual-editor/edit-template-blocks-notification.js.map +1 -1
  205. package/build-module/components/visual-editor/index.js +1 -6
  206. package/build-module/components/visual-editor/index.js.map +1 -1
  207. package/build-module/dataviews/actions/export-pattern.js +2 -0
  208. package/build-module/dataviews/actions/export-pattern.js.map +1 -1
  209. package/build-module/dataviews/actions/permanently-delete-post.js +3 -0
  210. package/build-module/dataviews/actions/permanently-delete-post.js.map +1 -1
  211. package/build-module/dataviews/actions/reset-post.js +2 -0
  212. package/build-module/dataviews/actions/reset-post.js.map +1 -1
  213. package/build-module/dataviews/actions/trash-post.js +2 -0
  214. package/build-module/dataviews/actions/trash-post.js.map +1 -1
  215. package/build-module/dataviews/actions/view-post.js +2 -2
  216. package/build-module/dataviews/actions/view-post.js.map +1 -1
  217. package/build-module/private-apis.js +0 -2
  218. package/build-module/private-apis.js.map +1 -1
  219. package/build-module/store/private-actions.js +1 -1
  220. package/build-module/store/private-actions.js.map +1 -1
  221. package/build-module/store/selectors.js +6 -2
  222. package/build-module/store/selectors.js.map +1 -1
  223. package/build-style/style-rtl.css +13 -8
  224. package/build-style/style.css +13 -8
  225. package/build-types/bindings/post-meta.d.ts +0 -3
  226. package/build-types/bindings/post-meta.d.ts.map +1 -1
  227. package/build-types/components/block-settings-menu/content-only-settings-menu.d.ts.map +1 -1
  228. package/build-types/components/editor-history/redo.d.ts.map +1 -1
  229. package/build-types/components/editor-history/undo.d.ts.map +1 -1
  230. package/build-types/components/editor-interface/index.d.ts.map +1 -1
  231. package/build-types/components/error-boundary/index.d.ts.map +1 -1
  232. package/build-types/components/global-styles-provider/index.d.ts.map +1 -1
  233. package/build-types/components/header/back-button.d.ts.map +1 -1
  234. package/build-types/components/index.d.ts +1 -0
  235. package/build-types/components/index.d.ts.map +1 -1
  236. package/build-types/components/inserter-sidebar/index.d.ts.map +1 -1
  237. package/build-types/components/more-menu/tools-more-menu-group.d.ts.map +1 -1
  238. package/build-types/components/more-menu/view-more-menu-group.d.ts.map +1 -1
  239. package/build-types/components/page-attributes/parent.d.ts.map +1 -1
  240. package/build-types/components/plugin-document-setting-panel/index.d.ts.map +1 -1
  241. package/build-types/components/plugin-post-publish-panel/index.d.ts.map +1 -1
  242. package/build-types/components/plugin-post-status-info/index.d.ts.map +1 -1
  243. package/build-types/components/plugin-pre-publish-panel/index.d.ts.map +1 -1
  244. package/build-types/components/plugin-preview-menu-item/index.d.ts +3 -0
  245. package/build-types/components/plugin-preview-menu-item/index.d.ts.map +1 -0
  246. package/build-types/components/post-actions/index.d.ts.map +1 -1
  247. package/build-types/components/post-excerpt/plugin.d.ts.map +1 -1
  248. package/build-types/components/post-format/index.d.ts.map +1 -1
  249. package/build-types/components/post-last-revision/index.d.ts.map +1 -1
  250. package/build-types/components/post-locked-modal/index.d.ts.map +1 -1
  251. package/build-types/components/post-publish-panel/index.d.ts.map +1 -1
  252. package/build-types/components/post-publish-panel/maybe-post-format-panel.d.ts.map +1 -1
  253. package/build-types/components/post-publish-panel/maybe-upload-media.d.ts +1 -1
  254. package/build-types/components/post-publish-panel/maybe-upload-media.d.ts.map +1 -1
  255. package/build-types/components/post-publish-panel/media-util.d.ts +20 -0
  256. package/build-types/components/post-publish-panel/media-util.d.ts.map +1 -0
  257. package/build-types/components/post-status/index.d.ts.map +1 -1
  258. package/build-types/components/post-taxonomies/hierarchical-term-selector.d.ts.map +1 -1
  259. package/build-types/components/post-taxonomies/most-used-terms.d.ts.map +1 -1
  260. package/build-types/components/post-template/block-theme.d.ts.map +1 -1
  261. package/build-types/components/post-template/classic-theme.d.ts.map +1 -1
  262. package/build-types/components/post-trash/check.d.ts.map +1 -1
  263. package/build-types/components/post-trash/index.d.ts +4 -1
  264. package/build-types/components/post-trash/index.d.ts.map +1 -1
  265. package/build-types/components/post-url/index.d.ts.map +1 -1
  266. package/build-types/components/preferences-modal/enable-plugin-document-setting-panel.d.ts.map +1 -1
  267. package/build-types/components/preferences-modal/index.d.ts.map +1 -1
  268. package/build-types/components/preview-dropdown/index.d.ts.map +1 -1
  269. package/build-types/components/provider/index.d.ts.map +1 -1
  270. package/build-types/components/provider/use-block-editor-settings.d.ts.map +1 -1
  271. package/build-types/components/save-publish-panels/index.d.ts.map +1 -1
  272. package/build-types/components/sidebar/post-summary.d.ts.map +1 -1
  273. package/build-types/components/start-page-options/index.d.ts +1 -0
  274. package/build-types/components/start-page-options/index.d.ts.map +1 -1
  275. package/build-types/components/start-template-options/index.d.ts.map +1 -1
  276. package/build-types/components/text-editor/index.d.ts.map +1 -1
  277. package/build-types/components/visual-editor/edit-template-blocks-notification.d.ts.map +1 -1
  278. package/build-types/components/visual-editor/index.d.ts.map +1 -1
  279. package/build-types/dataviews/actions/export-pattern.d.ts.map +1 -1
  280. package/build-types/dataviews/actions/permanently-delete-post.d.ts.map +1 -1
  281. package/build-types/dataviews/actions/reset-post.d.ts.map +1 -1
  282. package/build-types/dataviews/actions/trash-post.d.ts.map +1 -1
  283. package/build-types/private-apis.d.ts.map +1 -1
  284. package/build-types/store/private-actions.d.ts.map +1 -1
  285. package/build-types/store/selectors.d.ts +8 -8
  286. package/build-types/store/selectors.d.ts.map +1 -1
  287. package/package.json +36 -36
  288. package/src/bindings/post-meta.js +12 -6
  289. package/src/components/block-manager/index.js +2 -0
  290. package/src/components/block-settings-menu/content-only-settings-menu.js +5 -9
  291. package/src/components/create-template-part-modal/style.scss +1 -1
  292. package/src/components/document-bar/index.js +4 -4
  293. package/src/components/document-outline/style.scss +1 -1
  294. package/src/components/editor/index.js +1 -1
  295. package/src/components/editor-history/redo.js +2 -0
  296. package/src/components/editor-history/undo.js +2 -0
  297. package/src/components/editor-interface/index.js +2 -4
  298. package/src/components/error-boundary/index.js +6 -1
  299. package/src/components/global-styles-provider/index.js +11 -7
  300. package/src/components/header/index.js +3 -3
  301. package/src/components/header/style.scss +6 -3
  302. package/src/components/index.js +1 -0
  303. package/src/components/inserter-sidebar/index.js +6 -8
  304. package/src/components/local-autosave-monitor/index.js +6 -6
  305. package/src/components/page-attributes/parent.js +5 -4
  306. package/src/components/plugin-preview-menu-item/index.js +52 -0
  307. package/src/components/post-actions/index.js +8 -14
  308. package/src/components/post-card-panel/style.scss +1 -1
  309. package/src/components/post-excerpt/panel.js +2 -0
  310. package/src/components/post-featured-image/index.js +6 -0
  311. package/src/components/post-featured-image/style.scss +1 -2
  312. package/src/components/post-format/index.js +2 -0
  313. package/src/components/post-last-revision/index.js +2 -0
  314. package/src/components/post-locked-modal/index.js +14 -2
  315. package/src/components/post-locked-modal/style.scss +1 -1
  316. package/src/components/post-publish-panel/index.js +2 -0
  317. package/src/components/post-publish-panel/maybe-post-format-panel.js +2 -0
  318. package/src/components/post-publish-panel/maybe-upload-media.js +145 -36
  319. package/src/components/post-publish-panel/media-util.js +87 -0
  320. package/src/components/post-publish-panel/style.scss +3 -1
  321. package/src/components/post-publish-panel/test/media-util.js +118 -0
  322. package/src/components/post-status/index.js +3 -2
  323. package/src/components/post-taxonomies/hierarchical-term-selector.js +2 -0
  324. package/src/components/post-taxonomies/most-used-terms.js +2 -0
  325. package/src/components/post-template/block-theme.js +15 -9
  326. package/src/components/post-template/classic-theme.js +2 -0
  327. package/src/components/post-title/index.js +30 -41
  328. package/src/components/post-trash/check.js +5 -2
  329. package/src/components/post-trash/index.js +23 -12
  330. package/src/components/post-url/index.js +2 -0
  331. package/src/components/preferences-modal/index.js +227 -172
  332. package/src/components/preview-dropdown/index.js +28 -20
  333. package/src/components/provider/index.js +42 -10
  334. package/src/components/provider/use-block-editor-settings.js +16 -11
  335. package/src/components/resizable-editor/style.scss +2 -2
  336. package/src/components/save-publish-panels/index.js +4 -0
  337. package/src/components/sidebar/post-summary.js +4 -0
  338. package/src/components/start-page-options/index.js +28 -26
  339. package/src/components/start-template-options/index.js +5 -1
  340. package/src/components/table-of-contents/index.js +1 -0
  341. package/src/components/text-editor/index.js +1 -0
  342. package/src/components/text-editor/style.scss +1 -1
  343. package/src/components/visual-editor/edit-template-blocks-notification.js +4 -1
  344. package/src/components/visual-editor/index.js +2 -9
  345. package/src/dataviews/actions/export-pattern.tsx +2 -0
  346. package/src/dataviews/actions/permanently-delete-post.tsx +2 -0
  347. package/src/dataviews/actions/reset-post.tsx +2 -0
  348. package/src/dataviews/actions/trash-post.tsx +2 -0
  349. package/src/dataviews/actions/view-post.tsx +2 -2
  350. package/src/private-apis.js +0 -2
  351. package/src/store/private-actions.js +3 -1
  352. package/src/store/selectors.js +9 -3
  353. package/tsconfig.json +1 -0
  354. package/tsconfig.tsbuildinfo +1 -1
@@ -208,7 +208,10 @@ function PostParentToggle({
208
208
  });
209
209
  }
210
210
  function ParentRow() {
211
- const homeUrl = (0, _data.useSelect)(select => select(_coreData.store).getUnstableBase()?.home, []);
211
+ const homeUrl = (0, _data.useSelect)(select => {
212
+ // Site index.
213
+ return select(_coreData.store).getEntityRecord('root', '__unstableBase')?.home;
214
+ }, []);
212
215
  // Use internal state instead of a ref to make sure that the component
213
216
  // re-renders when the popover's anchor updates.
214
217
  const [popoverAnchor, setPopoverAnchor] = (0, _element.useState)(null);
@@ -1 +1 @@
1
- {"version":3,"names":["_removeAccents","_interopRequireDefault","require","_i18n","_components","_compose","_element","_data","_htmlEntities","_coreData","_blockEditor","_url","_postPanelRow","_terms","_store","_jsxRuntime","getTitle","post","title","rendered","decodeEntities","id","__","getItemPriority","name","searchValue","normalizedName","removeAccents","toLowerCase","normalizedSearch","startsWith","length","Infinity","exports","PageAttributesParent","editPost","useDispatch","editorStore","fieldValue","setFieldValue","useState","isHierarchical","parentPostId","parentPostTitle","pageItems","useSelect","select","_pType$hierarchical","getPostType","getEntityRecords","getEntityRecord","coreStore","getCurrentPostId","getEditedPostAttribute","postTypeSlug","pageId","pType","postId","postIsHierarchical","hierarchical","query","per_page","exclude","parent_exclude","orderby","order","_fields","search","parentPost","parentOptions","useMemo","getOptionsFromTree","tree","level","mappedNodes","map","treeNode","value","label","repeat","rawName","children","sortedNodes","sort","a","b","priorityA","priorityB","flat","item","parent","buildTermsTree","opts","optsHasParent","find","unshift","handleKeydown","inputValue","handleChange","selectedPostId","jsx","ComboboxControl","__nextHasNoMarginBottom","__next40pxDefaultSize","className","help","options","onFilterValueChange","debounce","onChange","hideLabelFromVision","PostParentToggle","isOpen","onClick","parentTitle","Button","size","variant","sprintf","ParentRow","homeUrl","getUnstableBase","home","popoverAnchor","setPopoverAnchor","popoverProps","anchor","placement","offset","shift","default","ref","Dropdown","contentClassName","focusOnMount","renderToggle","onToggle","renderContent","onClose","jsxs","__experimentalInspectorPopoverHeader","createInterpolateElement","filterURLForDisplay","replace","wbr","ExternalLink","href","_default"],"sources":["@wordpress/editor/src/components/page-attributes/parent.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport removeAccents from 'remove-accents';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tButton,\n\tDropdown,\n\tComboboxControl,\n\tExternalLink,\n} from '@wordpress/components';\nimport { debounce } from '@wordpress/compose';\nimport {\n\tcreateInterpolateElement,\n\tuseState,\n\tuseMemo,\n} from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\nimport { filterURLForDisplay } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport PostPanelRow from '../post-panel-row';\nimport { buildTermsTree } from '../../utils/terms';\nimport { store as editorStore } from '../../store';\n\nfunction getTitle( post ) {\n\treturn post?.title?.rendered\n\t\t? decodeEntities( post.title.rendered )\n\t\t: `#${ post.id } (${ __( 'no title' ) })`;\n}\n\nexport const getItemPriority = ( name, searchValue ) => {\n\tconst normalizedName = removeAccents( name || '' ).toLowerCase();\n\tconst normalizedSearch = removeAccents( searchValue || '' ).toLowerCase();\n\tif ( normalizedName === normalizedSearch ) {\n\t\treturn 0;\n\t}\n\n\tif ( normalizedName.startsWith( normalizedSearch ) ) {\n\t\treturn normalizedName.length;\n\t}\n\n\treturn Infinity;\n};\n\n/**\n * Renders the Page Attributes Parent component. A dropdown menu in an editor interface\n * for selecting the parent page of a given page.\n *\n * @return {Component|null} The component to be rendered. Return null if post type is not hierarchical.\n */\nexport function PageAttributesParent() {\n\tconst { editPost } = useDispatch( editorStore );\n\tconst [ fieldValue, setFieldValue ] = useState( false );\n\tconst { isHierarchical, parentPostId, parentPostTitle, pageItems } =\n\t\tuseSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst { getPostType, getEntityRecords, getEntityRecord } =\n\t\t\t\t\tselect( coreStore );\n\t\t\t\tconst { getCurrentPostId, getEditedPostAttribute } =\n\t\t\t\t\tselect( editorStore );\n\t\t\t\tconst postTypeSlug = getEditedPostAttribute( 'type' );\n\t\t\t\tconst pageId = getEditedPostAttribute( 'parent' );\n\t\t\t\tconst pType = getPostType( postTypeSlug );\n\t\t\t\tconst postId = getCurrentPostId();\n\t\t\t\tconst postIsHierarchical = pType?.hierarchical ?? false;\n\t\t\t\tconst query = {\n\t\t\t\t\tper_page: 100,\n\t\t\t\t\texclude: postId,\n\t\t\t\t\tparent_exclude: postId,\n\t\t\t\t\torderby: 'menu_order',\n\t\t\t\t\torder: 'asc',\n\t\t\t\t\t_fields: 'id,title,parent',\n\t\t\t\t};\n\n\t\t\t\t// Perform a search when the field is changed.\n\t\t\t\tif ( !! fieldValue ) {\n\t\t\t\t\tquery.search = fieldValue;\n\t\t\t\t}\n\n\t\t\t\tconst parentPost = pageId\n\t\t\t\t\t? getEntityRecord( 'postType', postTypeSlug, pageId )\n\t\t\t\t\t: null;\n\n\t\t\t\treturn {\n\t\t\t\t\tisHierarchical: postIsHierarchical,\n\t\t\t\t\tparentPostId: pageId,\n\t\t\t\t\tparentPostTitle: parentPost ? getTitle( parentPost ) : '',\n\t\t\t\t\tpageItems: postIsHierarchical\n\t\t\t\t\t\t? getEntityRecords( 'postType', postTypeSlug, query )\n\t\t\t\t\t\t: null,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ fieldValue ]\n\t\t);\n\n\tconst parentOptions = useMemo( () => {\n\t\tconst getOptionsFromTree = ( tree, level = 0 ) => {\n\t\t\tconst mappedNodes = tree.map( ( treeNode ) => [\n\t\t\t\t{\n\t\t\t\t\tvalue: treeNode.id,\n\t\t\t\t\tlabel:\n\t\t\t\t\t\t'— '.repeat( level ) + decodeEntities( treeNode.name ),\n\t\t\t\t\trawName: treeNode.name,\n\t\t\t\t},\n\t\t\t\t...getOptionsFromTree( treeNode.children || [], level + 1 ),\n\t\t\t] );\n\n\t\t\tconst sortedNodes = mappedNodes.sort( ( [ a ], [ b ] ) => {\n\t\t\t\tconst priorityA = getItemPriority( a.rawName, fieldValue );\n\t\t\t\tconst priorityB = getItemPriority( b.rawName, fieldValue );\n\t\t\t\treturn priorityA >= priorityB ? 1 : -1;\n\t\t\t} );\n\n\t\t\treturn sortedNodes.flat();\n\t\t};\n\n\t\tif ( ! pageItems ) {\n\t\t\treturn [];\n\t\t}\n\n\t\tlet tree = pageItems.map( ( item ) => ( {\n\t\t\tid: item.id,\n\t\t\tparent: item.parent,\n\t\t\tname: getTitle( item ),\n\t\t} ) );\n\n\t\t// Only build a hierarchical tree when not searching.\n\t\tif ( ! fieldValue ) {\n\t\t\ttree = buildTermsTree( tree );\n\t\t}\n\n\t\tconst opts = getOptionsFromTree( tree );\n\n\t\t// Ensure the current parent is in the options list.\n\t\tconst optsHasParent = opts.find(\n\t\t\t( item ) => item.value === parentPostId\n\t\t);\n\t\tif ( parentPostTitle && ! optsHasParent ) {\n\t\t\topts.unshift( {\n\t\t\t\tvalue: parentPostId,\n\t\t\t\tlabel: parentPostTitle,\n\t\t\t} );\n\t\t}\n\t\treturn opts;\n\t}, [ pageItems, fieldValue, parentPostTitle, parentPostId ] );\n\n\tif ( ! isHierarchical ) {\n\t\treturn null;\n\t}\n\t/**\n\t * Handle user input.\n\t *\n\t * @param {string} inputValue The current value of the input field.\n\t */\n\tconst handleKeydown = ( inputValue ) => {\n\t\tsetFieldValue( inputValue );\n\t};\n\n\t/**\n\t * Handle author selection.\n\t *\n\t * @param {Object} selectedPostId The selected Author.\n\t */\n\tconst handleChange = ( selectedPostId ) => {\n\t\teditPost( { parent: selectedPostId } );\n\t};\n\n\treturn (\n\t\t<ComboboxControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\t__next40pxDefaultSize\n\t\t\tclassName=\"editor-page-attributes__parent\"\n\t\t\tlabel={ __( 'Parent' ) }\n\t\t\thelp={ __( 'Choose a parent page.' ) }\n\t\t\tvalue={ parentPostId }\n\t\t\toptions={ parentOptions }\n\t\t\tonFilterValueChange={ debounce( handleKeydown, 300 ) }\n\t\t\tonChange={ handleChange }\n\t\t\thideLabelFromVision\n\t\t/>\n\t);\n}\n\nfunction PostParentToggle( { isOpen, onClick } ) {\n\tconst parentPost = useSelect( ( select ) => {\n\t\tconst { getEditedPostAttribute } = select( editorStore );\n\t\tconst parentPostId = getEditedPostAttribute( 'parent' );\n\t\tif ( ! parentPostId ) {\n\t\t\treturn null;\n\t\t}\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst postTypeSlug = getEditedPostAttribute( 'type' );\n\t\treturn getEntityRecord( 'postType', postTypeSlug, parentPostId );\n\t}, [] );\n\tconst parentTitle = useMemo(\n\t\t() => ( ! parentPost ? __( 'None' ) : getTitle( parentPost ) ),\n\t\t[ parentPost ]\n\t);\n\treturn (\n\t\t<Button\n\t\t\tsize=\"compact\"\n\t\t\tclassName=\"editor-post-parent__panel-toggle\"\n\t\t\tvariant=\"tertiary\"\n\t\t\taria-expanded={ isOpen }\n\t\t\t// translators: %s: Current post parent.\n\t\t\taria-label={ sprintf( __( 'Change parent: %s' ), parentTitle ) }\n\t\t\tonClick={ onClick }\n\t\t>\n\t\t\t{ parentTitle }\n\t\t</Button>\n\t);\n}\n\nexport function ParentRow() {\n\tconst homeUrl = useSelect(\n\t\t( select ) => select( coreStore ).getUnstableBase()?.home,\n\t\t[]\n\t);\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\t// Memoize popoverProps to avoid returning a new object every time.\n\tconst popoverProps = useMemo(\n\t\t() => ( {\n\t\t\t// Anchor the popover to the middle of the entire row so that it doesn't\n\t\t\t// move around when the label changes.\n\t\t\tanchor: popoverAnchor,\n\t\t\tplacement: 'left-start',\n\t\t\toffset: 36,\n\t\t\tshift: true,\n\t\t} ),\n\t\t[ popoverAnchor ]\n\t);\n\treturn (\n\t\t<PostPanelRow label={ __( 'Parent' ) } ref={ setPopoverAnchor }>\n\t\t\t<Dropdown\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tclassName=\"editor-post-parent__panel-dropdown\"\n\t\t\t\tcontentClassName=\"editor-post-parent__panel-dialog\"\n\t\t\t\tfocusOnMount\n\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t<PostParentToggle isOpen={ isOpen } onClick={ onToggle } />\n\t\t\t\t) }\n\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t<div className=\"editor-post-parent\">\n\t\t\t\t\t\t<InspectorPopoverHeader\n\t\t\t\t\t\t\ttitle={ __( 'Parent' ) }\n\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %1$s The home URL of the WordPress installation without the scheme. */\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'Child pages inherit characteristics from their parent, such as URL structure. For instance, if \"Pricing\" is a child of \"Services\", its URL would be %1$s<wbr />/services<wbr />/pricing.'\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tfilterURLForDisplay( homeUrl ).replace(\n\t\t\t\t\t\t\t\t\t\t/([/.])/g,\n\t\t\t\t\t\t\t\t\t\t'<wbr />$1'\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{\n\t\t\t\t\t\t\t\t\twbr: <wbr />,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'They also show up as sub-items in the default navigation menu. <a>Learn more.</a>'\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\ta: (\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/documentation/article/page-post-settings-sidebar/#page-attributes'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<PageAttributesParent />\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</PostPanelRow>\n\t);\n}\n\nexport default PageAttributesParent;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_removeAccents","_interopRequireDefault","require","_i18n","_components","_compose","_element","_data","_htmlEntities","_coreData","_blockEditor","_url","_postPanelRow","_terms","_store","_jsxRuntime","getTitle","post","title","rendered","decodeEntities","id","__","getItemPriority","name","searchValue","normalizedName","removeAccents","toLowerCase","normalizedSearch","startsWith","length","Infinity","exports","PageAttributesParent","editPost","useDispatch","editorStore","fieldValue","setFieldValue","useState","isHierarchical","parentPostId","parentPostTitle","pageItems","useSelect","select","_pType$hierarchical","getPostType","getEntityRecords","getEntityRecord","coreStore","getCurrentPostId","getEditedPostAttribute","postTypeSlug","pageId","pType","postId","postIsHierarchical","hierarchical","query","per_page","exclude","parent_exclude","orderby","order","_fields","search","parentPost","parentOptions","useMemo","getOptionsFromTree","tree","level","mappedNodes","map","treeNode","value","label","repeat","rawName","children","sortedNodes","sort","a","b","priorityA","priorityB","flat","item","parent","buildTermsTree","opts","optsHasParent","find","unshift","handleKeydown","inputValue","handleChange","selectedPostId","jsx","ComboboxControl","__nextHasNoMarginBottom","__next40pxDefaultSize","className","help","options","onFilterValueChange","debounce","onChange","hideLabelFromVision","PostParentToggle","isOpen","onClick","parentTitle","Button","size","variant","sprintf","ParentRow","homeUrl","home","popoverAnchor","setPopoverAnchor","popoverProps","anchor","placement","offset","shift","default","ref","Dropdown","contentClassName","focusOnMount","renderToggle","onToggle","renderContent","onClose","jsxs","__experimentalInspectorPopoverHeader","createInterpolateElement","filterURLForDisplay","replace","wbr","ExternalLink","href","_default"],"sources":["@wordpress/editor/src/components/page-attributes/parent.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport removeAccents from 'remove-accents';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tButton,\n\tDropdown,\n\tComboboxControl,\n\tExternalLink,\n} from '@wordpress/components';\nimport { debounce } from '@wordpress/compose';\nimport {\n\tcreateInterpolateElement,\n\tuseState,\n\tuseMemo,\n} from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\nimport { filterURLForDisplay } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport PostPanelRow from '../post-panel-row';\nimport { buildTermsTree } from '../../utils/terms';\nimport { store as editorStore } from '../../store';\n\nfunction getTitle( post ) {\n\treturn post?.title?.rendered\n\t\t? decodeEntities( post.title.rendered )\n\t\t: `#${ post.id } (${ __( 'no title' ) })`;\n}\n\nexport const getItemPriority = ( name, searchValue ) => {\n\tconst normalizedName = removeAccents( name || '' ).toLowerCase();\n\tconst normalizedSearch = removeAccents( searchValue || '' ).toLowerCase();\n\tif ( normalizedName === normalizedSearch ) {\n\t\treturn 0;\n\t}\n\n\tif ( normalizedName.startsWith( normalizedSearch ) ) {\n\t\treturn normalizedName.length;\n\t}\n\n\treturn Infinity;\n};\n\n/**\n * Renders the Page Attributes Parent component. A dropdown menu in an editor interface\n * for selecting the parent page of a given page.\n *\n * @return {Component|null} The component to be rendered. Return null if post type is not hierarchical.\n */\nexport function PageAttributesParent() {\n\tconst { editPost } = useDispatch( editorStore );\n\tconst [ fieldValue, setFieldValue ] = useState( false );\n\tconst { isHierarchical, parentPostId, parentPostTitle, pageItems } =\n\t\tuseSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst { getPostType, getEntityRecords, getEntityRecord } =\n\t\t\t\t\tselect( coreStore );\n\t\t\t\tconst { getCurrentPostId, getEditedPostAttribute } =\n\t\t\t\t\tselect( editorStore );\n\t\t\t\tconst postTypeSlug = getEditedPostAttribute( 'type' );\n\t\t\t\tconst pageId = getEditedPostAttribute( 'parent' );\n\t\t\t\tconst pType = getPostType( postTypeSlug );\n\t\t\t\tconst postId = getCurrentPostId();\n\t\t\t\tconst postIsHierarchical = pType?.hierarchical ?? false;\n\t\t\t\tconst query = {\n\t\t\t\t\tper_page: 100,\n\t\t\t\t\texclude: postId,\n\t\t\t\t\tparent_exclude: postId,\n\t\t\t\t\torderby: 'menu_order',\n\t\t\t\t\torder: 'asc',\n\t\t\t\t\t_fields: 'id,title,parent',\n\t\t\t\t};\n\n\t\t\t\t// Perform a search when the field is changed.\n\t\t\t\tif ( !! fieldValue ) {\n\t\t\t\t\tquery.search = fieldValue;\n\t\t\t\t}\n\n\t\t\t\tconst parentPost = pageId\n\t\t\t\t\t? getEntityRecord( 'postType', postTypeSlug, pageId )\n\t\t\t\t\t: null;\n\n\t\t\t\treturn {\n\t\t\t\t\tisHierarchical: postIsHierarchical,\n\t\t\t\t\tparentPostId: pageId,\n\t\t\t\t\tparentPostTitle: parentPost ? getTitle( parentPost ) : '',\n\t\t\t\t\tpageItems: postIsHierarchical\n\t\t\t\t\t\t? getEntityRecords( 'postType', postTypeSlug, query )\n\t\t\t\t\t\t: null,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ fieldValue ]\n\t\t);\n\n\tconst parentOptions = useMemo( () => {\n\t\tconst getOptionsFromTree = ( tree, level = 0 ) => {\n\t\t\tconst mappedNodes = tree.map( ( treeNode ) => [\n\t\t\t\t{\n\t\t\t\t\tvalue: treeNode.id,\n\t\t\t\t\tlabel:\n\t\t\t\t\t\t'— '.repeat( level ) + decodeEntities( treeNode.name ),\n\t\t\t\t\trawName: treeNode.name,\n\t\t\t\t},\n\t\t\t\t...getOptionsFromTree( treeNode.children || [], level + 1 ),\n\t\t\t] );\n\n\t\t\tconst sortedNodes = mappedNodes.sort( ( [ a ], [ b ] ) => {\n\t\t\t\tconst priorityA = getItemPriority( a.rawName, fieldValue );\n\t\t\t\tconst priorityB = getItemPriority( b.rawName, fieldValue );\n\t\t\t\treturn priorityA >= priorityB ? 1 : -1;\n\t\t\t} );\n\n\t\t\treturn sortedNodes.flat();\n\t\t};\n\n\t\tif ( ! pageItems ) {\n\t\t\treturn [];\n\t\t}\n\n\t\tlet tree = pageItems.map( ( item ) => ( {\n\t\t\tid: item.id,\n\t\t\tparent: item.parent,\n\t\t\tname: getTitle( item ),\n\t\t} ) );\n\n\t\t// Only build a hierarchical tree when not searching.\n\t\tif ( ! fieldValue ) {\n\t\t\ttree = buildTermsTree( tree );\n\t\t}\n\n\t\tconst opts = getOptionsFromTree( tree );\n\n\t\t// Ensure the current parent is in the options list.\n\t\tconst optsHasParent = opts.find(\n\t\t\t( item ) => item.value === parentPostId\n\t\t);\n\t\tif ( parentPostTitle && ! optsHasParent ) {\n\t\t\topts.unshift( {\n\t\t\t\tvalue: parentPostId,\n\t\t\t\tlabel: parentPostTitle,\n\t\t\t} );\n\t\t}\n\t\treturn opts;\n\t}, [ pageItems, fieldValue, parentPostTitle, parentPostId ] );\n\n\tif ( ! isHierarchical ) {\n\t\treturn null;\n\t}\n\t/**\n\t * Handle user input.\n\t *\n\t * @param {string} inputValue The current value of the input field.\n\t */\n\tconst handleKeydown = ( inputValue ) => {\n\t\tsetFieldValue( inputValue );\n\t};\n\n\t/**\n\t * Handle author selection.\n\t *\n\t * @param {Object} selectedPostId The selected Author.\n\t */\n\tconst handleChange = ( selectedPostId ) => {\n\t\teditPost( { parent: selectedPostId } );\n\t};\n\n\treturn (\n\t\t<ComboboxControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\t__next40pxDefaultSize\n\t\t\tclassName=\"editor-page-attributes__parent\"\n\t\t\tlabel={ __( 'Parent' ) }\n\t\t\thelp={ __( 'Choose a parent page.' ) }\n\t\t\tvalue={ parentPostId }\n\t\t\toptions={ parentOptions }\n\t\t\tonFilterValueChange={ debounce( handleKeydown, 300 ) }\n\t\t\tonChange={ handleChange }\n\t\t\thideLabelFromVision\n\t\t/>\n\t);\n}\n\nfunction PostParentToggle( { isOpen, onClick } ) {\n\tconst parentPost = useSelect( ( select ) => {\n\t\tconst { getEditedPostAttribute } = select( editorStore );\n\t\tconst parentPostId = getEditedPostAttribute( 'parent' );\n\t\tif ( ! parentPostId ) {\n\t\t\treturn null;\n\t\t}\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst postTypeSlug = getEditedPostAttribute( 'type' );\n\t\treturn getEntityRecord( 'postType', postTypeSlug, parentPostId );\n\t}, [] );\n\tconst parentTitle = useMemo(\n\t\t() => ( ! parentPost ? __( 'None' ) : getTitle( parentPost ) ),\n\t\t[ parentPost ]\n\t);\n\treturn (\n\t\t<Button\n\t\t\tsize=\"compact\"\n\t\t\tclassName=\"editor-post-parent__panel-toggle\"\n\t\t\tvariant=\"tertiary\"\n\t\t\taria-expanded={ isOpen }\n\t\t\t// translators: %s: Current post parent.\n\t\t\taria-label={ sprintf( __( 'Change parent: %s' ), parentTitle ) }\n\t\t\tonClick={ onClick }\n\t\t>\n\t\t\t{ parentTitle }\n\t\t</Button>\n\t);\n}\n\nexport function ParentRow() {\n\tconst homeUrl = useSelect( ( select ) => {\n\t\t// Site index.\n\t\treturn select( coreStore ).getEntityRecord( 'root', '__unstableBase' )\n\t\t\t?.home;\n\t}, [] );\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\t// Memoize popoverProps to avoid returning a new object every time.\n\tconst popoverProps = useMemo(\n\t\t() => ( {\n\t\t\t// Anchor the popover to the middle of the entire row so that it doesn't\n\t\t\t// move around when the label changes.\n\t\t\tanchor: popoverAnchor,\n\t\t\tplacement: 'left-start',\n\t\t\toffset: 36,\n\t\t\tshift: true,\n\t\t} ),\n\t\t[ popoverAnchor ]\n\t);\n\treturn (\n\t\t<PostPanelRow label={ __( 'Parent' ) } ref={ setPopoverAnchor }>\n\t\t\t<Dropdown\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tclassName=\"editor-post-parent__panel-dropdown\"\n\t\t\t\tcontentClassName=\"editor-post-parent__panel-dialog\"\n\t\t\t\tfocusOnMount\n\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t<PostParentToggle isOpen={ isOpen } onClick={ onToggle } />\n\t\t\t\t) }\n\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t<div className=\"editor-post-parent\">\n\t\t\t\t\t\t<InspectorPopoverHeader\n\t\t\t\t\t\t\ttitle={ __( 'Parent' ) }\n\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %1$s The home URL of the WordPress installation without the scheme. */\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'Child pages inherit characteristics from their parent, such as URL structure. For instance, if \"Pricing\" is a child of \"Services\", its URL would be %1$s<wbr />/services<wbr />/pricing.'\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tfilterURLForDisplay( homeUrl ).replace(\n\t\t\t\t\t\t\t\t\t\t/([/.])/g,\n\t\t\t\t\t\t\t\t\t\t'<wbr />$1'\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{\n\t\t\t\t\t\t\t\t\twbr: <wbr />,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'They also show up as sub-items in the default navigation menu. <a>Learn more.</a>'\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\ta: (\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/documentation/article/page-post-settings-sidebar/#page-attributes'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<PageAttributesParent />\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</PostPanelRow>\n\t);\n}\n\nexport default PageAttributesParent;\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _compose = require("@wordpress/compose");
8
+ var _components = require("@wordpress/components");
9
+ var _plugins = require("@wordpress/plugins");
10
+ var _interface = require("@wordpress/interface");
11
+ /**
12
+ * WordPress dependencies
13
+ */
14
+ /**
15
+ * Renders a menu item in the Preview dropdown, which can be used as a button or link depending on the props provided.
16
+ * The text within the component appears as the menu item label.
17
+ *
18
+ * @param {Object} props Component properties.
19
+ * @param {string} [props.href] When `href` is provided, the menu item is rendered as an anchor instead of a button. It corresponds to the `href` attribute of the anchor.
20
+ * @param {WPBlockTypeIconRender} [props.icon=inherits from the plugin] The icon to be rendered to the left of the menu item label. Can be a Dashicon slug or an SVG WP element.
21
+ * @param {Function} [props.onClick] The callback function to be executed when the user clicks the menu item.
22
+ * @param {...*} [props.other] Any additional props are passed through to the underlying MenuItem component.
23
+ *
24
+ * @example
25
+ * ```jsx
26
+ * import { __ } from '@wordpress/i18n';
27
+ * import { PluginPreviewMenuItem } from '@wordpress/editor';
28
+ * import { external } from '@wordpress/icons';
29
+ *
30
+ * function onPreviewClick() {
31
+ * // Handle preview action
32
+ * }
33
+ *
34
+ * const ExternalPreviewMenuItem = () => (
35
+ * <PreviewDropdownMenuItem
36
+ * icon={ external }
37
+ * onClick={ onPreviewClick }
38
+ * >
39
+ * { __( 'Preview in new tab' ) }
40
+ * </PreviewDropdownMenuItem>
41
+ * );
42
+ * registerPlugin( 'external-preview-menu-item', {
43
+ * render: ExternalPreviewMenuItem,
44
+ * } );
45
+ * ```
46
+ *
47
+ * @return {Component} The rendered menu item component.
48
+ */
49
+ var _default = exports.default = (0, _compose.compose)((0, _plugins.withPluginContext)((context, ownProps) => {
50
+ var _ownProps$as;
51
+ return {
52
+ as: (_ownProps$as = ownProps.as) !== null && _ownProps$as !== void 0 ? _ownProps$as : _components.MenuItem,
53
+ icon: ownProps.icon || context.icon,
54
+ name: 'core/plugin-preview-menu'
55
+ };
56
+ }))(_interface.ActionItem);
57
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_compose","require","_components","_plugins","_interface","_default","exports","default","compose","withPluginContext","context","ownProps","_ownProps$as","as","MenuItem","icon","name","ActionItem"],"sources":["@wordpress/editor/src/components/plugin-preview-menu-item/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { compose } from '@wordpress/compose';\nimport { MenuItem } from '@wordpress/components';\nimport { withPluginContext } from '@wordpress/plugins';\nimport { ActionItem } from '@wordpress/interface';\n\n/**\n * Renders a menu item in the Preview dropdown, which can be used as a button or link depending on the props provided.\n * The text within the component appears as the menu item label.\n *\n * @param {Object} props Component properties.\n * @param {string} [props.href] When `href` is provided, the menu item is rendered as an anchor instead of a button. It corresponds to the `href` attribute of the anchor.\n * @param {WPBlockTypeIconRender} [props.icon=inherits from the plugin] The icon to be rendered to the left of the menu item label. Can be a Dashicon slug or an SVG WP element.\n * @param {Function} [props.onClick] The callback function to be executed when the user clicks the menu item.\n * @param {...*} [props.other] Any additional props are passed through to the underlying MenuItem component.\n *\n * @example\n * ```jsx\n * import { __ } from '@wordpress/i18n';\n * import { PluginPreviewMenuItem } from '@wordpress/editor';\n * import { external } from '@wordpress/icons';\n *\n * function onPreviewClick() {\n * // Handle preview action\n * }\n *\n * const ExternalPreviewMenuItem = () => (\n * <PreviewDropdownMenuItem\n * icon={ external }\n * onClick={ onPreviewClick }\n * >\n * { __( 'Preview in new tab' ) }\n * </PreviewDropdownMenuItem>\n * );\n * registerPlugin( 'external-preview-menu-item', {\n * render: ExternalPreviewMenuItem,\n * } );\n * ```\n *\n * @return {Component} The rendered menu item component.\n */\nexport default compose(\n\twithPluginContext( ( context, ownProps ) => {\n\t\treturn {\n\t\t\tas: ownProps.as ?? MenuItem,\n\t\t\ticon: ownProps.icon || context.icon,\n\t\t\tname: 'core/plugin-preview-menu',\n\t\t};\n\t} )\n)( ActionItem );\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AANA;AACA;AACA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAlCA,IAAAI,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAmCe,IAAAC,gBAAO,EACrB,IAAAC,0BAAiB,EAAE,CAAEC,OAAO,EAAEC,QAAQ,KAAM;EAAA,IAAAC,YAAA;EAC3C,OAAO;IACNC,EAAE,GAAAD,YAAA,GAAED,QAAQ,CAACE,EAAE,cAAAD,YAAA,cAAAA,YAAA,GAAIE,oBAAQ;IAC3BC,IAAI,EAAEJ,QAAQ,CAACI,IAAI,IAAIL,OAAO,CAACK,IAAI;IACnCC,IAAI,EAAE;EACP,CAAC;AACF,CAAE,CACH,CAAC,CAAEC,qBAAW,CAAC","ignoreList":[]}
@@ -22,10 +22,7 @@ var _jsxRuntime = require("react/jsx-runtime");
22
22
  */
23
23
 
24
24
  const {
25
- DropdownMenuV2: DropdownMenu,
26
- DropdownMenuGroupV2: DropdownMenuGroup,
27
- DropdownMenuItemV2: DropdownMenuItem,
28
- DropdownMenuItemLabelV2: DropdownMenuItemLabel,
25
+ DropdownMenuV2,
29
26
  kebabCase
30
27
  } = (0, _lockUnlock.unlock)(_components.privateApis);
31
28
  function PostActions({
@@ -62,7 +59,7 @@ function PostActions({
62
59
  return !action.isEligible || action.isEligible(itemWithPermissions);
63
60
  });
64
61
  }, [allActions, itemWithPermissions]);
65
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(DropdownMenu, {
62
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(DropdownMenuV2, {
66
63
  open: isActionsMenuOpen,
67
64
  trigger: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
68
65
  size: "small",
@@ -97,10 +94,10 @@ function DropdownMenuItemTrigger({
97
94
  items
98
95
  }) {
99
96
  const label = typeof action.label === 'string' ? action.label : action.label(items);
100
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(DropdownMenuItem, {
97
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(DropdownMenuV2.Item, {
101
98
  onClick: onClick,
102
99
  hideOnClick: !action.RenderModal,
103
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(DropdownMenuItemLabel, {
100
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(DropdownMenuV2.ItemLabel, {
104
101
  children: label
105
102
  })
106
103
  });
@@ -154,7 +151,7 @@ function ActionsDropdownMenuGroup({
154
151
  item,
155
152
  onClose
156
153
  }) {
157
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(DropdownMenuGroup, {
154
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(DropdownMenuV2.Group, {
158
155
  children: actions.map(action => {
159
156
  if (action.RenderModal) {
160
157
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(ActionWithModal, {
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_element","_i18n","_components","_icons","_coreData","_lockUnlock","_actions","_jsxRuntime","DropdownMenuV2","DropdownMenu","DropdownMenuGroupV2","DropdownMenuGroup","DropdownMenuItemV2","DropdownMenuItem","DropdownMenuItemLabelV2","DropdownMenuItemLabel","kebabCase","unlock","componentsPrivateApis","PostActions","postType","postId","onActionPerformed","isActionsMenuOpen","setIsActionsMenuOpen","useState","item","permissions","useSelect","select","getEditedEntityRecord","getEntityRecordPermissions","coreStore","itemWithPermissions","useMemo","allActions","usePostActions","actions","filter","action","isEligible","jsx","open","trigger","Button","size","icon","moreVertical","label","__","disabled","length","accessibleWhenDisabled","className","onClick","onOpenChange","placement","children","ActionsDropdownMenuGroup","onClose","DropdownMenuItemTrigger","items","hideOnClick","RenderModal","ActionWithModal","ActionTrigger","isModalOpen","setIsModalOpen","actionTriggerProps","hideModalHeader","jsxs","Fragment","Modal","title","modalHeader","__experimentalHideHeader","onRequestClose","overlayClassName","id","focusOnMount","closeModal","map","callback"],"sources":["@wordpress/editor/src/components/post-actions/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useState, useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tprivateApis as componentsPrivateApis,\n\tButton,\n\tModal,\n} from '@wordpress/components';\nimport { moreVertical } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { usePostActions } from './actions';\n\nconst {\n\tDropdownMenuV2: DropdownMenu,\n\tDropdownMenuGroupV2: DropdownMenuGroup,\n\tDropdownMenuItemV2: DropdownMenuItem,\n\tDropdownMenuItemLabelV2: DropdownMenuItemLabel,\n\tkebabCase,\n} = unlock( componentsPrivateApis );\n\nexport default function PostActions( { postType, postId, onActionPerformed } ) {\n\tconst [ isActionsMenuOpen, setIsActionsMenuOpen ] = useState( false );\n\tconst { item, permissions } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, getEntityRecordPermissions } =\n\t\t\t\tunlock( select( coreStore ) );\n\t\t\treturn {\n\t\t\t\titem: getEditedEntityRecord( 'postType', postType, postId ),\n\t\t\t\tpermissions: getEntityRecordPermissions(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ postId, postType ]\n\t);\n\tconst itemWithPermissions = useMemo( () => {\n\t\treturn {\n\t\t\t...item,\n\t\t\tpermissions,\n\t\t};\n\t}, [ item, permissions ] );\n\tconst allActions = usePostActions( { postType, onActionPerformed } );\n\n\tconst actions = useMemo( () => {\n\t\treturn allActions.filter( ( action ) => {\n\t\t\treturn (\n\t\t\t\t! action.isEligible || action.isEligible( itemWithPermissions )\n\t\t\t);\n\t\t} );\n\t}, [ allActions, itemWithPermissions ] );\n\n\treturn (\n\t\t<DropdownMenu\n\t\t\topen={ isActionsMenuOpen }\n\t\t\ttrigger={\n\t\t\t\t<Button\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\tdisabled={ ! actions.length }\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\tclassName=\"editor-all-actions-button\"\n\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\tsetIsActionsMenuOpen( ! isActionsMenuOpen )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t}\n\t\t\tonOpenChange={ setIsActionsMenuOpen }\n\t\t\tplacement=\"bottom-end\"\n\t\t>\n\t\t\t<ActionsDropdownMenuGroup\n\t\t\t\tactions={ actions }\n\t\t\t\titem={ itemWithPermissions }\n\t\t\t\tonClose={ () => {\n\t\t\t\t\tsetIsActionsMenuOpen( false );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</DropdownMenu>\n\t);\n}\n\n// From now on all the functions on this file are copied as from the dataviews packages,\n// The editor packages should not be using the dataviews packages directly,\n// and the dataviews package should not be using the editor packages directly,\n// so duplicating the code here seems like the least bad option.\n\n// Copied as is from packages/dataviews/src/item-actions.js\nfunction DropdownMenuItemTrigger( { action, onClick, items } ) {\n\tconst label =\n\t\ttypeof action.label === 'string' ? action.label : action.label( items );\n\treturn (\n\t\t<DropdownMenuItem\n\t\t\tonClick={ onClick }\n\t\t\thideOnClick={ ! action.RenderModal }\n\t\t>\n\t\t\t<DropdownMenuItemLabel>{ label }</DropdownMenuItemLabel>\n\t\t</DropdownMenuItem>\n\t);\n}\n\n// Copied as is from packages/dataviews/src/item-actions.js\n// With an added onClose prop.\nfunction ActionWithModal( { action, item, ActionTrigger, onClose } ) {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst actionTriggerProps = {\n\t\taction,\n\t\tonClick: () => setIsModalOpen( true ),\n\t\titems: [ item ],\n\t};\n\tconst { RenderModal, hideModalHeader } = action;\n\treturn (\n\t\t<>\n\t\t\t<ActionTrigger { ...actionTriggerProps } />\n\t\t\t{ isModalOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ action.modalHeader || action.label }\n\t\t\t\t\t__experimentalHideHeader={ !! hideModalHeader }\n\t\t\t\t\tonRequestClose={ () => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t} }\n\t\t\t\t\toverlayClassName={ `editor-action-modal editor-action-modal__${ kebabCase(\n\t\t\t\t\t\taction.id\n\t\t\t\t\t) }` }\n\t\t\t\t\tfocusOnMount=\"firstContentElement\"\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t>\n\t\t\t\t\t<RenderModal\n\t\t\t\t\t\titems={ [ item ] }\n\t\t\t\t\t\tcloseModal={ () => {\n\t\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\n// Copied as is from packages/dataviews/src/item-actions.js\n// With an added onClose prop.\nfunction ActionsDropdownMenuGroup( { actions, item, onClose } ) {\n\treturn (\n\t\t<DropdownMenuGroup>\n\t\t\t{ actions.map( ( action ) => {\n\t\t\t\tif ( action.RenderModal ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<ActionWithModal\n\t\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\t\taction={ action }\n\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\tActionTrigger={ DropdownMenuItemTrigger }\n\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<DropdownMenuItemTrigger\n\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\taction={ action }\n\t\t\t\t\t\tonClick={ () => action.callback( [ item ] ) }\n\t\t\t\t\t\titems={ [ item ] }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</DropdownMenuGroup>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_data","require","_element","_i18n","_components","_icons","_coreData","_lockUnlock","_actions","_jsxRuntime","DropdownMenuV2","kebabCase","unlock","componentsPrivateApis","PostActions","postType","postId","onActionPerformed","isActionsMenuOpen","setIsActionsMenuOpen","useState","item","permissions","useSelect","select","getEditedEntityRecord","getEntityRecordPermissions","coreStore","itemWithPermissions","useMemo","allActions","usePostActions","actions","filter","action","isEligible","jsx","open","trigger","Button","size","icon","moreVertical","label","__","disabled","length","accessibleWhenDisabled","className","onClick","onOpenChange","placement","children","ActionsDropdownMenuGroup","onClose","DropdownMenuItemTrigger","items","Item","hideOnClick","RenderModal","ItemLabel","ActionWithModal","ActionTrigger","isModalOpen","setIsModalOpen","actionTriggerProps","hideModalHeader","jsxs","Fragment","Modal","title","modalHeader","__experimentalHideHeader","onRequestClose","overlayClassName","id","focusOnMount","closeModal","Group","map","callback"],"sources":["@wordpress/editor/src/components/post-actions/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useState, useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tprivateApis as componentsPrivateApis,\n\tButton,\n\tModal,\n} from '@wordpress/components';\nimport { moreVertical } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { usePostActions } from './actions';\n\nconst { DropdownMenuV2, kebabCase } = unlock( componentsPrivateApis );\n\nexport default function PostActions( { postType, postId, onActionPerformed } ) {\n\tconst [ isActionsMenuOpen, setIsActionsMenuOpen ] = useState( false );\n\tconst { item, permissions } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, getEntityRecordPermissions } =\n\t\t\t\tunlock( select( coreStore ) );\n\t\t\treturn {\n\t\t\t\titem: getEditedEntityRecord( 'postType', postType, postId ),\n\t\t\t\tpermissions: getEntityRecordPermissions(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ postId, postType ]\n\t);\n\tconst itemWithPermissions = useMemo( () => {\n\t\treturn {\n\t\t\t...item,\n\t\t\tpermissions,\n\t\t};\n\t}, [ item, permissions ] );\n\tconst allActions = usePostActions( { postType, onActionPerformed } );\n\n\tconst actions = useMemo( () => {\n\t\treturn allActions.filter( ( action ) => {\n\t\t\treturn (\n\t\t\t\t! action.isEligible || action.isEligible( itemWithPermissions )\n\t\t\t);\n\t\t} );\n\t}, [ allActions, itemWithPermissions ] );\n\n\treturn (\n\t\t<DropdownMenuV2\n\t\t\topen={ isActionsMenuOpen }\n\t\t\ttrigger={\n\t\t\t\t<Button\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\tdisabled={ ! actions.length }\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\tclassName=\"editor-all-actions-button\"\n\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\tsetIsActionsMenuOpen( ! isActionsMenuOpen )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t}\n\t\t\tonOpenChange={ setIsActionsMenuOpen }\n\t\t\tplacement=\"bottom-end\"\n\t\t>\n\t\t\t<ActionsDropdownMenuGroup\n\t\t\t\tactions={ actions }\n\t\t\t\titem={ itemWithPermissions }\n\t\t\t\tonClose={ () => {\n\t\t\t\t\tsetIsActionsMenuOpen( false );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</DropdownMenuV2>\n\t);\n}\n\n// From now on all the functions on this file are copied as from the dataviews packages,\n// The editor packages should not be using the dataviews packages directly,\n// and the dataviews package should not be using the editor packages directly,\n// so duplicating the code here seems like the least bad option.\n\n// Copied as is from packages/dataviews/src/item-actions.js\nfunction DropdownMenuItemTrigger( { action, onClick, items } ) {\n\tconst label =\n\t\ttypeof action.label === 'string' ? action.label : action.label( items );\n\treturn (\n\t\t<DropdownMenuV2.Item\n\t\t\tonClick={ onClick }\n\t\t\thideOnClick={ ! action.RenderModal }\n\t\t>\n\t\t\t<DropdownMenuV2.ItemLabel>{ label }</DropdownMenuV2.ItemLabel>\n\t\t</DropdownMenuV2.Item>\n\t);\n}\n\n// Copied as is from packages/dataviews/src/item-actions.js\n// With an added onClose prop.\nfunction ActionWithModal( { action, item, ActionTrigger, onClose } ) {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst actionTriggerProps = {\n\t\taction,\n\t\tonClick: () => setIsModalOpen( true ),\n\t\titems: [ item ],\n\t};\n\tconst { RenderModal, hideModalHeader } = action;\n\treturn (\n\t\t<>\n\t\t\t<ActionTrigger { ...actionTriggerProps } />\n\t\t\t{ isModalOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ action.modalHeader || action.label }\n\t\t\t\t\t__experimentalHideHeader={ !! hideModalHeader }\n\t\t\t\t\tonRequestClose={ () => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t} }\n\t\t\t\t\toverlayClassName={ `editor-action-modal editor-action-modal__${ kebabCase(\n\t\t\t\t\t\taction.id\n\t\t\t\t\t) }` }\n\t\t\t\t\tfocusOnMount=\"firstContentElement\"\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t>\n\t\t\t\t\t<RenderModal\n\t\t\t\t\t\titems={ [ item ] }\n\t\t\t\t\t\tcloseModal={ () => {\n\t\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\n// Copied as is from packages/dataviews/src/item-actions.js\n// With an added onClose prop.\nfunction ActionsDropdownMenuGroup( { actions, item, onClose } ) {\n\treturn (\n\t\t<DropdownMenuV2.Group>\n\t\t\t{ actions.map( ( action ) => {\n\t\t\t\tif ( action.RenderModal ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<ActionWithModal\n\t\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\t\taction={ action }\n\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\tActionTrigger={ DropdownMenuItemTrigger }\n\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<DropdownMenuItemTrigger\n\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\taction={ action }\n\t\t\t\t\t\tonClick={ () => action.callback( [ item ] ) }\n\t\t\t\t\t\titems={ [ item ] }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</DropdownMenuV2.Group>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -154,7 +154,10 @@ function PrivateExcerpt() {
154
154
  ref: setPopoverAnchor,
155
155
  renderToggle: ({
156
156
  onToggle
157
- }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
157
+ }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
158
+ // TODO: Switch to `true` (40px size) if possible
159
+ , {
160
+ __next40pxDefaultSize: false,
158
161
  className: "editor-post-excerpt__dropdown__trigger",
159
162
  onClick: onToggle,
160
163
  variant: "link",
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_components","_data","_element","_blockEditor","_coreData","_htmlEntities","_index","_interopRequireDefault","_check","_plugin","_constants","_store","_jsxRuntime","PANEL_NAME","ExcerptPanel","isOpened","isEnabled","postType","useSelect","select","isEditorPanelOpened","isEditorPanelEnabled","getCurrentPostType","editorStore","toggleEditorPanelOpened","useDispatch","toggleExcerptPanel","shouldUseDescriptionLabel","includes","jsx","PanelBody","title","__","opened","onToggle","children","default","Slot","fills","jsxs","Fragment","PostExcerptPanel","PrivatePostExcerptPanel","PrivateExcerpt","shouldRender","excerpt","shouldBeUsedAsDescription","allowEditing","getCurrentPostId","getEditedPostAttribute","isTemplateOrTemplatePart","isPattern","_shouldBeUsedAsDescription","_usedAttribute","template","coreStore","getEntityRecord","_shouldRender","source","TEMPLATE_ORIGINS","custom","has_theme_file","is_custom","popoverAnchor","setPopoverAnchor","useState","label","popoverProps","useMemo","anchor","headerTitle","placement","offset","shift","excerptText","__experimentalText","align","numberOfLines","truncate","decodeEntities","excerptPlaceholder","triggerEditLabel","__experimentalVStack","Dropdown","className","contentClassName","focusOnMount","ref","renderToggle","Button","onClick","variant","renderContent","onClose","__experimentalInspectorPopoverHeader","spacing","hideLabelFromVision","updateOnBlur"],"sources":["@wordpress/editor/src/components/post-excerpt/panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\t__experimentalText as Text,\n\tDropdown,\n\tButton,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useMemo, useState } from '@wordpress/element';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport PostExcerptForm from './index';\nimport PostExcerptCheck from './check';\nimport PluginPostExcerpt from './plugin';\nimport { TEMPLATE_ORIGINS } from '../../store/constants';\nimport { store as editorStore } from '../../store';\n\n/**\n * Module Constants\n */\nconst PANEL_NAME = 'post-excerpt';\n\nfunction ExcerptPanel() {\n\tconst { isOpened, isEnabled, postType } = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisEditorPanelOpened,\n\t\t\tisEditorPanelEnabled,\n\t\t\tgetCurrentPostType,\n\t\t} = select( editorStore );\n\n\t\treturn {\n\t\t\tisOpened: isEditorPanelOpened( PANEL_NAME ),\n\t\t\tisEnabled: isEditorPanelEnabled( PANEL_NAME ),\n\t\t\tpostType: getCurrentPostType(),\n\t\t};\n\t}, [] );\n\n\tconst { toggleEditorPanelOpened } = useDispatch( editorStore );\n\tconst toggleExcerptPanel = () => toggleEditorPanelOpened( PANEL_NAME );\n\n\tif ( ! isEnabled ) {\n\t\treturn null;\n\t}\n\n\t// There are special cases where we want to label the excerpt as a description.\n\tconst shouldUseDescriptionLabel = [\n\t\t'wp_template',\n\t\t'wp_template_part',\n\t\t'wp_block',\n\t].includes( postType );\n\n\treturn (\n\t\t<PanelBody\n\t\t\ttitle={\n\t\t\t\tshouldUseDescriptionLabel\n\t\t\t\t\t? __( 'Description' )\n\t\t\t\t\t: __( 'Excerpt' )\n\t\t\t}\n\t\t\topened={ isOpened }\n\t\t\tonToggle={ toggleExcerptPanel }\n\t\t>\n\t\t\t<PluginPostExcerpt.Slot>\n\t\t\t\t{ ( fills ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<PostExcerptForm />\n\t\t\t\t\t\t{ fills }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PluginPostExcerpt.Slot>\n\t\t</PanelBody>\n\t);\n}\n\n/**\n * Is rendered if the post type supports excerpts and allows editing the excerpt.\n *\n * @return {JSX.Element} The rendered PostExcerptPanel component.\n */\nexport default function PostExcerptPanel() {\n\treturn (\n\t\t<PostExcerptCheck>\n\t\t\t<ExcerptPanel />\n\t\t</PostExcerptCheck>\n\t);\n}\n\nexport function PrivatePostExcerptPanel() {\n\treturn (\n\t\t<PostExcerptCheck>\n\t\t\t<PrivateExcerpt />\n\t\t</PostExcerptCheck>\n\t);\n}\n\nfunction PrivateExcerpt() {\n\tconst { shouldRender, excerpt, shouldBeUsedAsDescription, allowEditing } =\n\t\tuseSelect( ( select ) => {\n\t\t\tconst {\n\t\t\t\tgetCurrentPostType,\n\t\t\t\tgetCurrentPostId,\n\t\t\t\tgetEditedPostAttribute,\n\t\t\t\tisEditorPanelEnabled,\n\t\t\t} = select( editorStore );\n\t\t\tconst postType = getCurrentPostType();\n\t\t\tconst isTemplateOrTemplatePart = [\n\t\t\t\t'wp_template',\n\t\t\t\t'wp_template_part',\n\t\t\t].includes( postType );\n\t\t\tconst isPattern = postType === 'wp_block';\n\t\t\t// These post types use the `excerpt` field as a description semantically, so we need to\n\t\t\t// handle proper labeling and some flows where we should always render them as text.\n\t\t\tconst _shouldBeUsedAsDescription =\n\t\t\t\tisTemplateOrTemplatePart || isPattern;\n\t\t\tconst _usedAttribute = isTemplateOrTemplatePart\n\t\t\t\t? 'description'\n\t\t\t\t: 'excerpt';\n\t\t\t// We need to fetch the entity in this case to check if we'll allow editing.\n\t\t\tconst template =\n\t\t\t\tisTemplateOrTemplatePart &&\n\t\t\t\tselect( coreStore ).getEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tgetCurrentPostId()\n\t\t\t\t);\n\t\t\t// For post types that use excerpt as description, we do not abide\n\t\t\t// by the `isEnabled` panel flag in order to render them as text.\n\t\t\tconst _shouldRender =\n\t\t\t\tisEditorPanelEnabled( PANEL_NAME ) ||\n\t\t\t\t_shouldBeUsedAsDescription;\n\t\t\treturn {\n\t\t\t\texcerpt: getEditedPostAttribute( _usedAttribute ),\n\t\t\t\tshouldRender: _shouldRender,\n\t\t\t\tshouldBeUsedAsDescription: _shouldBeUsedAsDescription,\n\t\t\t\t// If we should render, allow editing for all post types that are not used as description.\n\t\t\t\t// For the rest allow editing only for user generated entities.\n\t\t\t\tallowEditing:\n\t\t\t\t\t_shouldRender &&\n\t\t\t\t\t( ! _shouldBeUsedAsDescription ||\n\t\t\t\t\t\tisPattern ||\n\t\t\t\t\t\t( template &&\n\t\t\t\t\t\t\ttemplate.source === TEMPLATE_ORIGINS.custom &&\n\t\t\t\t\t\t\t! template.has_theme_file &&\n\t\t\t\t\t\t\ttemplate.is_custom ) ),\n\t\t\t};\n\t\t}, [] );\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\tconst label = shouldBeUsedAsDescription\n\t\t? __( 'Description' )\n\t\t: __( 'Excerpt' );\n\t// Memoize popoverProps to avoid returning a new object every time.\n\tconst popoverProps = useMemo(\n\t\t() => ( {\n\t\t\t// Anchor the popover to the middle of the entire row so that it doesn't\n\t\t\t// move around when the label changes.\n\t\t\tanchor: popoverAnchor,\n\t\t\t'aria-label': label,\n\t\t\theaderTitle: label,\n\t\t\tplacement: 'left-start',\n\t\t\toffset: 36,\n\t\t\tshift: true,\n\t\t} ),\n\t\t[ popoverAnchor, label ]\n\t);\n\tif ( ! shouldRender ) {\n\t\treturn false;\n\t}\n\tconst excerptText = !! excerpt && (\n\t\t<Text align=\"left\" numberOfLines={ 4 } truncate={ allowEditing }>\n\t\t\t{ decodeEntities( excerpt ) }\n\t\t</Text>\n\t);\n\tif ( ! allowEditing ) {\n\t\treturn excerptText;\n\t}\n\tconst excerptPlaceholder = shouldBeUsedAsDescription\n\t\t? __( 'Add a description…' )\n\t\t: __( 'Add an excerpt…' );\n\tconst triggerEditLabel = shouldBeUsedAsDescription\n\t\t? __( 'Edit description' )\n\t\t: __( 'Edit excerpt' );\n\treturn (\n\t\t<VStack>\n\t\t\t{ excerptText }\n\t\t\t<Dropdown\n\t\t\t\tclassName=\"editor-post-excerpt__dropdown\"\n\t\t\t\tcontentClassName=\"editor-post-excerpt__dropdown__content\"\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tfocusOnMount\n\t\t\t\tref={ setPopoverAnchor }\n\t\t\t\trenderToggle={ ( { onToggle } ) => (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"editor-post-excerpt__dropdown__trigger\"\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ excerptText ? triggerEditLabel : excerptPlaceholder }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<InspectorPopoverHeader\n\t\t\t\t\t\t\ttitle={ label }\n\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t\t\t\t<PluginPostExcerpt.Slot>\n\t\t\t\t\t\t\t\t{ ( fills ) => (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<PostExcerptForm\n\t\t\t\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t\t\t\t\tupdateOnBlur\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{ fills }\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</PluginPostExcerpt.Slot>\n\t\t\t\t\t\t</VStack>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</VStack>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_components","_data","_element","_blockEditor","_coreData","_htmlEntities","_index","_interopRequireDefault","_check","_plugin","_constants","_store","_jsxRuntime","PANEL_NAME","ExcerptPanel","isOpened","isEnabled","postType","useSelect","select","isEditorPanelOpened","isEditorPanelEnabled","getCurrentPostType","editorStore","toggleEditorPanelOpened","useDispatch","toggleExcerptPanel","shouldUseDescriptionLabel","includes","jsx","PanelBody","title","__","opened","onToggle","children","default","Slot","fills","jsxs","Fragment","PostExcerptPanel","PrivatePostExcerptPanel","PrivateExcerpt","shouldRender","excerpt","shouldBeUsedAsDescription","allowEditing","getCurrentPostId","getEditedPostAttribute","isTemplateOrTemplatePart","isPattern","_shouldBeUsedAsDescription","_usedAttribute","template","coreStore","getEntityRecord","_shouldRender","source","TEMPLATE_ORIGINS","custom","has_theme_file","is_custom","popoverAnchor","setPopoverAnchor","useState","label","popoverProps","useMemo","anchor","headerTitle","placement","offset","shift","excerptText","__experimentalText","align","numberOfLines","truncate","decodeEntities","excerptPlaceholder","triggerEditLabel","__experimentalVStack","Dropdown","className","contentClassName","focusOnMount","ref","renderToggle","Button","__next40pxDefaultSize","onClick","variant","renderContent","onClose","__experimentalInspectorPopoverHeader","spacing","hideLabelFromVision","updateOnBlur"],"sources":["@wordpress/editor/src/components/post-excerpt/panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\t__experimentalText as Text,\n\tDropdown,\n\tButton,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useMemo, useState } from '@wordpress/element';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport PostExcerptForm from './index';\nimport PostExcerptCheck from './check';\nimport PluginPostExcerpt from './plugin';\nimport { TEMPLATE_ORIGINS } from '../../store/constants';\nimport { store as editorStore } from '../../store';\n\n/**\n * Module Constants\n */\nconst PANEL_NAME = 'post-excerpt';\n\nfunction ExcerptPanel() {\n\tconst { isOpened, isEnabled, postType } = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisEditorPanelOpened,\n\t\t\tisEditorPanelEnabled,\n\t\t\tgetCurrentPostType,\n\t\t} = select( editorStore );\n\n\t\treturn {\n\t\t\tisOpened: isEditorPanelOpened( PANEL_NAME ),\n\t\t\tisEnabled: isEditorPanelEnabled( PANEL_NAME ),\n\t\t\tpostType: getCurrentPostType(),\n\t\t};\n\t}, [] );\n\n\tconst { toggleEditorPanelOpened } = useDispatch( editorStore );\n\tconst toggleExcerptPanel = () => toggleEditorPanelOpened( PANEL_NAME );\n\n\tif ( ! isEnabled ) {\n\t\treturn null;\n\t}\n\n\t// There are special cases where we want to label the excerpt as a description.\n\tconst shouldUseDescriptionLabel = [\n\t\t'wp_template',\n\t\t'wp_template_part',\n\t\t'wp_block',\n\t].includes( postType );\n\n\treturn (\n\t\t<PanelBody\n\t\t\ttitle={\n\t\t\t\tshouldUseDescriptionLabel\n\t\t\t\t\t? __( 'Description' )\n\t\t\t\t\t: __( 'Excerpt' )\n\t\t\t}\n\t\t\topened={ isOpened }\n\t\t\tonToggle={ toggleExcerptPanel }\n\t\t>\n\t\t\t<PluginPostExcerpt.Slot>\n\t\t\t\t{ ( fills ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<PostExcerptForm />\n\t\t\t\t\t\t{ fills }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PluginPostExcerpt.Slot>\n\t\t</PanelBody>\n\t);\n}\n\n/**\n * Is rendered if the post type supports excerpts and allows editing the excerpt.\n *\n * @return {JSX.Element} The rendered PostExcerptPanel component.\n */\nexport default function PostExcerptPanel() {\n\treturn (\n\t\t<PostExcerptCheck>\n\t\t\t<ExcerptPanel />\n\t\t</PostExcerptCheck>\n\t);\n}\n\nexport function PrivatePostExcerptPanel() {\n\treturn (\n\t\t<PostExcerptCheck>\n\t\t\t<PrivateExcerpt />\n\t\t</PostExcerptCheck>\n\t);\n}\n\nfunction PrivateExcerpt() {\n\tconst { shouldRender, excerpt, shouldBeUsedAsDescription, allowEditing } =\n\t\tuseSelect( ( select ) => {\n\t\t\tconst {\n\t\t\t\tgetCurrentPostType,\n\t\t\t\tgetCurrentPostId,\n\t\t\t\tgetEditedPostAttribute,\n\t\t\t\tisEditorPanelEnabled,\n\t\t\t} = select( editorStore );\n\t\t\tconst postType = getCurrentPostType();\n\t\t\tconst isTemplateOrTemplatePart = [\n\t\t\t\t'wp_template',\n\t\t\t\t'wp_template_part',\n\t\t\t].includes( postType );\n\t\t\tconst isPattern = postType === 'wp_block';\n\t\t\t// These post types use the `excerpt` field as a description semantically, so we need to\n\t\t\t// handle proper labeling and some flows where we should always render them as text.\n\t\t\tconst _shouldBeUsedAsDescription =\n\t\t\t\tisTemplateOrTemplatePart || isPattern;\n\t\t\tconst _usedAttribute = isTemplateOrTemplatePart\n\t\t\t\t? 'description'\n\t\t\t\t: 'excerpt';\n\t\t\t// We need to fetch the entity in this case to check if we'll allow editing.\n\t\t\tconst template =\n\t\t\t\tisTemplateOrTemplatePart &&\n\t\t\t\tselect( coreStore ).getEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tgetCurrentPostId()\n\t\t\t\t);\n\t\t\t// For post types that use excerpt as description, we do not abide\n\t\t\t// by the `isEnabled` panel flag in order to render them as text.\n\t\t\tconst _shouldRender =\n\t\t\t\tisEditorPanelEnabled( PANEL_NAME ) ||\n\t\t\t\t_shouldBeUsedAsDescription;\n\t\t\treturn {\n\t\t\t\texcerpt: getEditedPostAttribute( _usedAttribute ),\n\t\t\t\tshouldRender: _shouldRender,\n\t\t\t\tshouldBeUsedAsDescription: _shouldBeUsedAsDescription,\n\t\t\t\t// If we should render, allow editing for all post types that are not used as description.\n\t\t\t\t// For the rest allow editing only for user generated entities.\n\t\t\t\tallowEditing:\n\t\t\t\t\t_shouldRender &&\n\t\t\t\t\t( ! _shouldBeUsedAsDescription ||\n\t\t\t\t\t\tisPattern ||\n\t\t\t\t\t\t( template &&\n\t\t\t\t\t\t\ttemplate.source === TEMPLATE_ORIGINS.custom &&\n\t\t\t\t\t\t\t! template.has_theme_file &&\n\t\t\t\t\t\t\ttemplate.is_custom ) ),\n\t\t\t};\n\t\t}, [] );\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\tconst label = shouldBeUsedAsDescription\n\t\t? __( 'Description' )\n\t\t: __( 'Excerpt' );\n\t// Memoize popoverProps to avoid returning a new object every time.\n\tconst popoverProps = useMemo(\n\t\t() => ( {\n\t\t\t// Anchor the popover to the middle of the entire row so that it doesn't\n\t\t\t// move around when the label changes.\n\t\t\tanchor: popoverAnchor,\n\t\t\t'aria-label': label,\n\t\t\theaderTitle: label,\n\t\t\tplacement: 'left-start',\n\t\t\toffset: 36,\n\t\t\tshift: true,\n\t\t} ),\n\t\t[ popoverAnchor, label ]\n\t);\n\tif ( ! shouldRender ) {\n\t\treturn false;\n\t}\n\tconst excerptText = !! excerpt && (\n\t\t<Text align=\"left\" numberOfLines={ 4 } truncate={ allowEditing }>\n\t\t\t{ decodeEntities( excerpt ) }\n\t\t</Text>\n\t);\n\tif ( ! allowEditing ) {\n\t\treturn excerptText;\n\t}\n\tconst excerptPlaceholder = shouldBeUsedAsDescription\n\t\t? __( 'Add a description…' )\n\t\t: __( 'Add an excerpt…' );\n\tconst triggerEditLabel = shouldBeUsedAsDescription\n\t\t? __( 'Edit description' )\n\t\t: __( 'Edit excerpt' );\n\treturn (\n\t\t<VStack>\n\t\t\t{ excerptText }\n\t\t\t<Dropdown\n\t\t\t\tclassName=\"editor-post-excerpt__dropdown\"\n\t\t\t\tcontentClassName=\"editor-post-excerpt__dropdown__content\"\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tfocusOnMount\n\t\t\t\tref={ setPopoverAnchor }\n\t\t\t\trenderToggle={ ( { onToggle } ) => (\n\t\t\t\t\t<Button\n\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\tclassName=\"editor-post-excerpt__dropdown__trigger\"\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ excerptText ? triggerEditLabel : excerptPlaceholder }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<InspectorPopoverHeader\n\t\t\t\t\t\t\ttitle={ label }\n\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t\t\t\t<PluginPostExcerpt.Slot>\n\t\t\t\t\t\t\t\t{ ( fills ) => (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<PostExcerptForm\n\t\t\t\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t\t\t\t\tupdateOnBlur\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{ fills }\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</PluginPostExcerpt.Slot>\n\t\t\t\t\t\t</VStack>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</VStack>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -125,7 +125,10 @@ function PostFeaturedImage({
125
125
  open
126
126
  }) => /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
127
127
  className: "editor-post-featured-image__container",
128
- children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.Button, {
128
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.Button
129
+ // TODO: Switch to `true` (40px size) if possible
130
+ , {
131
+ __next40pxDefaultSize: false,
129
132
  ref: toggleRef,
130
133
  className: !featuredImageId ? 'editor-post-featured-image__toggle' : 'editor-post-featured-image__preview',
131
134
  onClick: open,
@@ -141,12 +144,18 @@ function PostFeaturedImage({
141
144
  }), isLoading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Spinner, {}), !featuredImageId && !isLoading && (postType?.labels?.set_featured_image || DEFAULT_SET_FEATURE_IMAGE_LABEL)]
142
145
  }), !!featuredImageId && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
143
146
  className: "editor-post-featured-image__actions",
144
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
147
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
148
+ // TODO: Switch to `true` (40px size) if possible
149
+ , {
150
+ __next40pxDefaultSize: false,
145
151
  className: "editor-post-featured-image__action",
146
152
  onClick: open,
147
153
  "aria-haspopup": "dialog",
148
154
  children: (0, _i18n.__)('Replace')
149
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
155
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
156
+ // TODO: Switch to `true` (40px size) if possible
157
+ , {
158
+ __next40pxDefaultSize: false,
150
159
  className: "editor-post-featured-image__action",
151
160
  onClick: () => {
152
161
  onRemoveImage();
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_hooks","_components","_blob","_element","_compose","_data","_blockEditor","_coreData","_check","_interopRequireDefault","_store","_jsxRuntime","ALLOWED_MEDIA_TYPES","DEFAULT_FEATURE_IMAGE_LABEL","__","DEFAULT_SET_FEATURE_IMAGE_LABEL","instructions","jsx","children","getMediaDetails","media","postId","_media$media_details$","_media$media_details$2","defaultSize","applyFilters","id","media_details","sizes","mediaWidth","width","mediaHeight","height","mediaSourceUrl","source_url","fallbackSize","PostFeaturedImage","currentPostId","featuredImageId","onUpdateImage","onRemoveImage","postType","noticeUI","noticeOperations","toggleRef","useRef","isLoading","setIsLoading","useState","getSettings","useSelect","blockEditorStore","onDropFiles","filesList","mediaUpload","allowedTypes","onFileChange","image","isBlobURL","url","onError","message","removeAllNotices","createErrorNotice","jsxs","default","className","alt_text","sprintf","full","file","slug","MediaUploadCheck","fallback","MediaUpload","title","labels","featured_image","onSelect","unstableFeaturedImageFlow","modalClass","render","open","Button","ref","onClick","disabled","accessibleWhenDisabled","src","alt","Spinner","set_featured_image","__experimentalHStack","current","focus","DropZone","onFilesDrop","value","applyWithSelect","withSelect","select","getMedia","getPostType","coreStore","getCurrentPostId","getEditedPostAttribute","editorStore","context","applyWithDispatch","withDispatch","dispatch","editPost","featured_media","onDropImage","_default","exports","compose","withNotices","withFilters"],"sources":["@wordpress/editor/src/components/post-featured-image/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { applyFilters } from '@wordpress/hooks';\nimport {\n\tDropZone,\n\tButton,\n\tSpinner,\n\twithNotices,\n\twithFilters,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { isBlobURL } from '@wordpress/blob';\nimport { useState, useRef } from '@wordpress/element';\nimport { compose } from '@wordpress/compose';\nimport { useSelect, withDispatch, withSelect } from '@wordpress/data';\nimport {\n\tMediaUpload,\n\tMediaUploadCheck,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport PostFeaturedImageCheck from './check';\nimport { store as editorStore } from '../../store';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\n\n// Used when labels from post type were not yet loaded or when they are not present.\nconst DEFAULT_FEATURE_IMAGE_LABEL = __( 'Featured image' );\nconst DEFAULT_SET_FEATURE_IMAGE_LABEL = __( 'Add a featured image' );\n\nconst instructions = (\n\t<p>\n\t\t{ __(\n\t\t\t'To edit the featured image, you need permission to upload media.'\n\t\t) }\n\t</p>\n);\n\nfunction getMediaDetails( media, postId ) {\n\tif ( ! media ) {\n\t\treturn {};\n\t}\n\n\tconst defaultSize = applyFilters(\n\t\t'editor.PostFeaturedImage.imageSize',\n\t\t'large',\n\t\tmedia.id,\n\t\tpostId\n\t);\n\tif ( defaultSize in ( media?.media_details?.sizes ?? {} ) ) {\n\t\treturn {\n\t\t\tmediaWidth: media.media_details.sizes[ defaultSize ].width,\n\t\t\tmediaHeight: media.media_details.sizes[ defaultSize ].height,\n\t\t\tmediaSourceUrl: media.media_details.sizes[ defaultSize ].source_url,\n\t\t};\n\t}\n\n\t// Use fallbackSize when defaultSize is not available.\n\tconst fallbackSize = applyFilters(\n\t\t'editor.PostFeaturedImage.imageSize',\n\t\t'thumbnail',\n\t\tmedia.id,\n\t\tpostId\n\t);\n\tif ( fallbackSize in ( media?.media_details?.sizes ?? {} ) ) {\n\t\treturn {\n\t\t\tmediaWidth: media.media_details.sizes[ fallbackSize ].width,\n\t\t\tmediaHeight: media.media_details.sizes[ fallbackSize ].height,\n\t\t\tmediaSourceUrl:\n\t\t\t\tmedia.media_details.sizes[ fallbackSize ].source_url,\n\t\t};\n\t}\n\n\t// Use full image size when fallbackSize and defaultSize are not available.\n\treturn {\n\t\tmediaWidth: media.media_details.width,\n\t\tmediaHeight: media.media_details.height,\n\t\tmediaSourceUrl: media.source_url,\n\t};\n}\n\nfunction PostFeaturedImage( {\n\tcurrentPostId,\n\tfeaturedImageId,\n\tonUpdateImage,\n\tonRemoveImage,\n\tmedia,\n\tpostType,\n\tnoticeUI,\n\tnoticeOperations,\n} ) {\n\tconst toggleRef = useRef();\n\tconst [ isLoading, setIsLoading ] = useState( false );\n\tconst { getSettings } = useSelect( blockEditorStore );\n\tconst { mediaSourceUrl } = getMediaDetails( media, currentPostId );\n\n\tfunction onDropFiles( filesList ) {\n\t\tgetSettings().mediaUpload( {\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tfilesList,\n\t\t\tonFileChange( [ image ] ) {\n\t\t\t\tif ( isBlobURL( image?.url ) ) {\n\t\t\t\t\tsetIsLoading( true );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif ( image ) {\n\t\t\t\t\tonUpdateImage( image );\n\t\t\t\t}\n\t\t\t\tsetIsLoading( false );\n\t\t\t},\n\t\t\tonError( message ) {\n\t\t\t\tnoticeOperations.removeAllNotices();\n\t\t\t\tnoticeOperations.createErrorNotice( message );\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn (\n\t\t<PostFeaturedImageCheck>\n\t\t\t{ noticeUI }\n\t\t\t<div className=\"editor-post-featured-image\">\n\t\t\t\t{ media && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tid={ `editor-post-featured-image-${ featuredImageId }-describedby` }\n\t\t\t\t\t\tclassName=\"hidden\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ media.alt_text &&\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t// Translators: %s: The selected image alt text.\n\t\t\t\t\t\t\t\t__( 'Current image: %s' ),\n\t\t\t\t\t\t\t\tmedia.alt_text\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! media.alt_text &&\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t// Translators: %s: The selected image filename.\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'The current image has no alternative text. The file name is: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\tmedia.media_details.sizes?.full?.file ||\n\t\t\t\t\t\t\t\t\tmedia.slug\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t\t<MediaUploadCheck fallback={ instructions }>\n\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\ttitle={\n\t\t\t\t\t\t\tpostType?.labels?.featured_image ||\n\t\t\t\t\t\t\tDEFAULT_FEATURE_IMAGE_LABEL\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonSelect={ onUpdateImage }\n\t\t\t\t\t\tunstableFeaturedImageFlow\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\tmodalClass=\"editor-post-featured-image__media-modal\"\n\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t<div className=\"editor-post-featured-image__container\">\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tref={ toggleRef }\n\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t! featuredImageId\n\t\t\t\t\t\t\t\t\t\t\t? 'editor-post-featured-image__toggle'\n\t\t\t\t\t\t\t\t\t\t\t: 'editor-post-featured-image__preview'\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\t\t\t\t! featuredImageId\n\t\t\t\t\t\t\t\t\t\t\t? null\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\t'Edit or replace the featured image'\n\t\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\taria-describedby={\n\t\t\t\t\t\t\t\t\t\t! featuredImageId\n\t\t\t\t\t\t\t\t\t\t\t? null\n\t\t\t\t\t\t\t\t\t\t\t: `editor-post-featured-image-${ featuredImageId }-describedby`\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t\t\t\t\t\tdisabled={ isLoading }\n\t\t\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ !! featuredImageId && media && (\n\t\t\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"editor-post-featured-image__preview-image\"\n\t\t\t\t\t\t\t\t\t\t\tsrc={ mediaSourceUrl }\n\t\t\t\t\t\t\t\t\t\t\talt=\"\"\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{ isLoading && <Spinner /> }\n\t\t\t\t\t\t\t\t\t{ ! featuredImageId &&\n\t\t\t\t\t\t\t\t\t\t! isLoading &&\n\t\t\t\t\t\t\t\t\t\t( postType?.labels\n\t\t\t\t\t\t\t\t\t\t\t?.set_featured_image ||\n\t\t\t\t\t\t\t\t\t\t\tDEFAULT_SET_FEATURE_IMAGE_LABEL ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t{ !! featuredImageId && (\n\t\t\t\t\t\t\t\t\t<HStack className=\"editor-post-featured-image__actions\">\n\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"editor-post-featured-image__action\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Replace' ) }\n\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"editor-post-featured-image__action\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\tonRemoveImage();\n\t\t\t\t\t\t\t\t\t\t\t\ttoggleRef.current.focus();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Remove' ) }\n\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<DropZone onFilesDrop={ onDropFiles } />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tvalue={ featuredImageId }\n\t\t\t\t\t/>\n\t\t\t\t</MediaUploadCheck>\n\t\t\t</div>\n\t\t</PostFeaturedImageCheck>\n\t);\n}\n\nconst applyWithSelect = withSelect( ( select ) => {\n\tconst { getMedia, getPostType } = select( coreStore );\n\tconst { getCurrentPostId, getEditedPostAttribute } = select( editorStore );\n\tconst featuredImageId = getEditedPostAttribute( 'featured_media' );\n\n\treturn {\n\t\tmedia: featuredImageId\n\t\t\t? getMedia( featuredImageId, { context: 'view' } )\n\t\t\t: null,\n\t\tcurrentPostId: getCurrentPostId(),\n\t\tpostType: getPostType( getEditedPostAttribute( 'type' ) ),\n\t\tfeaturedImageId,\n\t};\n} );\n\nconst applyWithDispatch = withDispatch(\n\t( dispatch, { noticeOperations }, { select } ) => {\n\t\tconst { editPost } = dispatch( editorStore );\n\t\treturn {\n\t\t\tonUpdateImage( image ) {\n\t\t\t\teditPost( { featured_media: image.id } );\n\t\t\t},\n\t\t\tonDropImage( filesList ) {\n\t\t\t\tselect( blockEditorStore )\n\t\t\t\t\t.getSettings()\n\t\t\t\t\t.mediaUpload( {\n\t\t\t\t\t\tallowedTypes: [ 'image' ],\n\t\t\t\t\t\tfilesList,\n\t\t\t\t\t\tonFileChange( [ image ] ) {\n\t\t\t\t\t\t\teditPost( { featured_media: image.id } );\n\t\t\t\t\t\t},\n\t\t\t\t\t\tonError( message ) {\n\t\t\t\t\t\t\tnoticeOperations.removeAllNotices();\n\t\t\t\t\t\t\tnoticeOperations.createErrorNotice( message );\n\t\t\t\t\t\t},\n\t\t\t\t\t} );\n\t\t\t},\n\t\t\tonRemoveImage() {\n\t\t\t\teditPost( { featured_media: 0 } );\n\t\t\t},\n\t\t};\n\t}\n);\n\n/**\n * Renders the component for managing the featured image of a post.\n *\n * @param {Object} props Props.\n * @param {number} props.currentPostId ID of the current post.\n * @param {number} props.featuredImageId ID of the featured image.\n * @param {Function} props.onUpdateImage Function to call when the image is updated.\n * @param {Function} props.onRemoveImage Function to call when the image is removed.\n * @param {Object} props.media The media object representing the featured image.\n * @param {string} props.postType Post type.\n * @param {Element} props.noticeUI UI for displaying notices.\n * @param {Object} props.noticeOperations Operations for managing notices.\n *\n * @return {Element} Component to be rendered .\n */\nexport default compose(\n\twithNotices,\n\tapplyWithSelect,\n\tapplyWithDispatch,\n\twithFilters( 'editor.PostFeaturedImage' )\n)( PostFeaturedImage );\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_hooks","_components","_blob","_element","_compose","_data","_blockEditor","_coreData","_check","_interopRequireDefault","_store","_jsxRuntime","ALLOWED_MEDIA_TYPES","DEFAULT_FEATURE_IMAGE_LABEL","__","DEFAULT_SET_FEATURE_IMAGE_LABEL","instructions","jsx","children","getMediaDetails","media","postId","_media$media_details$","_media$media_details$2","defaultSize","applyFilters","id","media_details","sizes","mediaWidth","width","mediaHeight","height","mediaSourceUrl","source_url","fallbackSize","PostFeaturedImage","currentPostId","featuredImageId","onUpdateImage","onRemoveImage","postType","noticeUI","noticeOperations","toggleRef","useRef","isLoading","setIsLoading","useState","getSettings","useSelect","blockEditorStore","onDropFiles","filesList","mediaUpload","allowedTypes","onFileChange","image","isBlobURL","url","onError","message","removeAllNotices","createErrorNotice","jsxs","default","className","alt_text","sprintf","full","file","slug","MediaUploadCheck","fallback","MediaUpload","title","labels","featured_image","onSelect","unstableFeaturedImageFlow","modalClass","render","open","Button","__next40pxDefaultSize","ref","onClick","disabled","accessibleWhenDisabled","src","alt","Spinner","set_featured_image","__experimentalHStack","current","focus","DropZone","onFilesDrop","value","applyWithSelect","withSelect","select","getMedia","getPostType","coreStore","getCurrentPostId","getEditedPostAttribute","editorStore","context","applyWithDispatch","withDispatch","dispatch","editPost","featured_media","onDropImage","_default","exports","compose","withNotices","withFilters"],"sources":["@wordpress/editor/src/components/post-featured-image/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { applyFilters } from '@wordpress/hooks';\nimport {\n\tDropZone,\n\tButton,\n\tSpinner,\n\twithNotices,\n\twithFilters,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { isBlobURL } from '@wordpress/blob';\nimport { useState, useRef } from '@wordpress/element';\nimport { compose } from '@wordpress/compose';\nimport { useSelect, withDispatch, withSelect } from '@wordpress/data';\nimport {\n\tMediaUpload,\n\tMediaUploadCheck,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport PostFeaturedImageCheck from './check';\nimport { store as editorStore } from '../../store';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\n\n// Used when labels from post type were not yet loaded or when they are not present.\nconst DEFAULT_FEATURE_IMAGE_LABEL = __( 'Featured image' );\nconst DEFAULT_SET_FEATURE_IMAGE_LABEL = __( 'Add a featured image' );\n\nconst instructions = (\n\t<p>\n\t\t{ __(\n\t\t\t'To edit the featured image, you need permission to upload media.'\n\t\t) }\n\t</p>\n);\n\nfunction getMediaDetails( media, postId ) {\n\tif ( ! media ) {\n\t\treturn {};\n\t}\n\n\tconst defaultSize = applyFilters(\n\t\t'editor.PostFeaturedImage.imageSize',\n\t\t'large',\n\t\tmedia.id,\n\t\tpostId\n\t);\n\tif ( defaultSize in ( media?.media_details?.sizes ?? {} ) ) {\n\t\treturn {\n\t\t\tmediaWidth: media.media_details.sizes[ defaultSize ].width,\n\t\t\tmediaHeight: media.media_details.sizes[ defaultSize ].height,\n\t\t\tmediaSourceUrl: media.media_details.sizes[ defaultSize ].source_url,\n\t\t};\n\t}\n\n\t// Use fallbackSize when defaultSize is not available.\n\tconst fallbackSize = applyFilters(\n\t\t'editor.PostFeaturedImage.imageSize',\n\t\t'thumbnail',\n\t\tmedia.id,\n\t\tpostId\n\t);\n\tif ( fallbackSize in ( media?.media_details?.sizes ?? {} ) ) {\n\t\treturn {\n\t\t\tmediaWidth: media.media_details.sizes[ fallbackSize ].width,\n\t\t\tmediaHeight: media.media_details.sizes[ fallbackSize ].height,\n\t\t\tmediaSourceUrl:\n\t\t\t\tmedia.media_details.sizes[ fallbackSize ].source_url,\n\t\t};\n\t}\n\n\t// Use full image size when fallbackSize and defaultSize are not available.\n\treturn {\n\t\tmediaWidth: media.media_details.width,\n\t\tmediaHeight: media.media_details.height,\n\t\tmediaSourceUrl: media.source_url,\n\t};\n}\n\nfunction PostFeaturedImage( {\n\tcurrentPostId,\n\tfeaturedImageId,\n\tonUpdateImage,\n\tonRemoveImage,\n\tmedia,\n\tpostType,\n\tnoticeUI,\n\tnoticeOperations,\n} ) {\n\tconst toggleRef = useRef();\n\tconst [ isLoading, setIsLoading ] = useState( false );\n\tconst { getSettings } = useSelect( blockEditorStore );\n\tconst { mediaSourceUrl } = getMediaDetails( media, currentPostId );\n\n\tfunction onDropFiles( filesList ) {\n\t\tgetSettings().mediaUpload( {\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tfilesList,\n\t\t\tonFileChange( [ image ] ) {\n\t\t\t\tif ( isBlobURL( image?.url ) ) {\n\t\t\t\t\tsetIsLoading( true );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif ( image ) {\n\t\t\t\t\tonUpdateImage( image );\n\t\t\t\t}\n\t\t\t\tsetIsLoading( false );\n\t\t\t},\n\t\t\tonError( message ) {\n\t\t\t\tnoticeOperations.removeAllNotices();\n\t\t\t\tnoticeOperations.createErrorNotice( message );\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn (\n\t\t<PostFeaturedImageCheck>\n\t\t\t{ noticeUI }\n\t\t\t<div className=\"editor-post-featured-image\">\n\t\t\t\t{ media && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tid={ `editor-post-featured-image-${ featuredImageId }-describedby` }\n\t\t\t\t\t\tclassName=\"hidden\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ media.alt_text &&\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t// Translators: %s: The selected image alt text.\n\t\t\t\t\t\t\t\t__( 'Current image: %s' ),\n\t\t\t\t\t\t\t\tmedia.alt_text\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! media.alt_text &&\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t// Translators: %s: The selected image filename.\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'The current image has no alternative text. The file name is: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\tmedia.media_details.sizes?.full?.file ||\n\t\t\t\t\t\t\t\t\tmedia.slug\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t\t<MediaUploadCheck fallback={ instructions }>\n\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\ttitle={\n\t\t\t\t\t\t\tpostType?.labels?.featured_image ||\n\t\t\t\t\t\t\tDEFAULT_FEATURE_IMAGE_LABEL\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonSelect={ onUpdateImage }\n\t\t\t\t\t\tunstableFeaturedImageFlow\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\tmodalClass=\"editor-post-featured-image__media-modal\"\n\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t<div className=\"editor-post-featured-image__container\">\n\t\t\t\t\t\t\t\t<Button\n\t\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\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\t\t\tref={ toggleRef }\n\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t! featuredImageId\n\t\t\t\t\t\t\t\t\t\t\t? 'editor-post-featured-image__toggle'\n\t\t\t\t\t\t\t\t\t\t\t: 'editor-post-featured-image__preview'\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\t\t\t\t! featuredImageId\n\t\t\t\t\t\t\t\t\t\t\t? null\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\t'Edit or replace the featured image'\n\t\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\taria-describedby={\n\t\t\t\t\t\t\t\t\t\t! featuredImageId\n\t\t\t\t\t\t\t\t\t\t\t? null\n\t\t\t\t\t\t\t\t\t\t\t: `editor-post-featured-image-${ featuredImageId }-describedby`\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t\t\t\t\t\tdisabled={ isLoading }\n\t\t\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ !! featuredImageId && media && (\n\t\t\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"editor-post-featured-image__preview-image\"\n\t\t\t\t\t\t\t\t\t\t\tsrc={ mediaSourceUrl }\n\t\t\t\t\t\t\t\t\t\t\talt=\"\"\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{ isLoading && <Spinner /> }\n\t\t\t\t\t\t\t\t\t{ ! featuredImageId &&\n\t\t\t\t\t\t\t\t\t\t! isLoading &&\n\t\t\t\t\t\t\t\t\t\t( postType?.labels\n\t\t\t\t\t\t\t\t\t\t\t?.set_featured_image ||\n\t\t\t\t\t\t\t\t\t\t\tDEFAULT_SET_FEATURE_IMAGE_LABEL ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t{ !! featuredImageId && (\n\t\t\t\t\t\t\t\t\t<HStack className=\"editor-post-featured-image__actions\">\n\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\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\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"editor-post-featured-image__action\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Replace' ) }\n\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\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\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"editor-post-featured-image__action\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\tonRemoveImage();\n\t\t\t\t\t\t\t\t\t\t\t\ttoggleRef.current.focus();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Remove' ) }\n\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<DropZone onFilesDrop={ onDropFiles } />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tvalue={ featuredImageId }\n\t\t\t\t\t/>\n\t\t\t\t</MediaUploadCheck>\n\t\t\t</div>\n\t\t</PostFeaturedImageCheck>\n\t);\n}\n\nconst applyWithSelect = withSelect( ( select ) => {\n\tconst { getMedia, getPostType } = select( coreStore );\n\tconst { getCurrentPostId, getEditedPostAttribute } = select( editorStore );\n\tconst featuredImageId = getEditedPostAttribute( 'featured_media' );\n\n\treturn {\n\t\tmedia: featuredImageId\n\t\t\t? getMedia( featuredImageId, { context: 'view' } )\n\t\t\t: null,\n\t\tcurrentPostId: getCurrentPostId(),\n\t\tpostType: getPostType( getEditedPostAttribute( 'type' ) ),\n\t\tfeaturedImageId,\n\t};\n} );\n\nconst applyWithDispatch = withDispatch(\n\t( dispatch, { noticeOperations }, { select } ) => {\n\t\tconst { editPost } = dispatch( editorStore );\n\t\treturn {\n\t\t\tonUpdateImage( image ) {\n\t\t\t\teditPost( { featured_media: image.id } );\n\t\t\t},\n\t\t\tonDropImage( filesList ) {\n\t\t\t\tselect( blockEditorStore )\n\t\t\t\t\t.getSettings()\n\t\t\t\t\t.mediaUpload( {\n\t\t\t\t\t\tallowedTypes: [ 'image' ],\n\t\t\t\t\t\tfilesList,\n\t\t\t\t\t\tonFileChange( [ image ] ) {\n\t\t\t\t\t\t\teditPost( { featured_media: image.id } );\n\t\t\t\t\t\t},\n\t\t\t\t\t\tonError( message ) {\n\t\t\t\t\t\t\tnoticeOperations.removeAllNotices();\n\t\t\t\t\t\t\tnoticeOperations.createErrorNotice( message );\n\t\t\t\t\t\t},\n\t\t\t\t\t} );\n\t\t\t},\n\t\t\tonRemoveImage() {\n\t\t\t\teditPost( { featured_media: 0 } );\n\t\t\t},\n\t\t};\n\t}\n);\n\n/**\n * Renders the component for managing the featured image of a post.\n *\n * @param {Object} props Props.\n * @param {number} props.currentPostId ID of the current post.\n * @param {number} props.featuredImageId ID of the featured image.\n * @param {Function} props.onUpdateImage Function to call when the image is updated.\n * @param {Function} props.onRemoveImage Function to call when the image is removed.\n * @param {Object} props.media The media object representing the featured image.\n * @param {string} props.postType Post type.\n * @param {Element} props.noticeUI UI for displaying notices.\n * @param {Object} props.noticeOperations Operations for managing notices.\n *\n * @return {Element} Component to be rendered .\n */\nexport default compose(\n\twithNotices,\n\tapplyWithSelect,\n\tapplyWithDispatch,\n\twithFilters( 'editor.PostFeaturedImage' )\n)( PostFeaturedImage );\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AAQA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,YAAA,GAAAP,OAAA;AAKA,IAAAQ,SAAA,GAAAR,OAAA;AAKA,IAAAS,MAAA,GAAAC,sBAAA,CAAAV,OAAA;AACA,IAAAW,MAAA,GAAAX,OAAA;AAAmD,IAAAY,WAAA,GAAAZ,OAAA;AA5BnD;AACA;AACA;;AAsBA;AACA;AACA;;AAIA,MAAMa,mBAAmB,GAAG,CAAE,OAAO,CAAE;;AAEvC;AACA,MAAMC,2BAA2B,GAAG,IAAAC,QAAE,EAAE,gBAAiB,CAAC;AAC1D,MAAMC,+BAA+B,GAAG,IAAAD,QAAE,EAAE,sBAAuB,CAAC;AAEpE,MAAME,YAAY,gBACjB,IAAAL,WAAA,CAAAM,GAAA;EAAAC,QAAA,EACG,IAAAJ,QAAE,EACH,kEACD;AAAC,CACC,CACH;AAED,SAASK,eAAeA,CAAEC,KAAK,EAAEC,MAAM,EAAG;EAAA,IAAAC,qBAAA,EAAAC,sBAAA;EACzC,IAAK,CAAEH,KAAK,EAAG;IACd,OAAO,CAAC,CAAC;EACV;EAEA,MAAMI,WAAW,GAAG,IAAAC,mBAAY,EAC/B,oCAAoC,EACpC,OAAO,EACPL,KAAK,CAACM,EAAE,EACRL,MACD,CAAC;EACD,IAAKG,WAAW,MAAAF,qBAAA,GAAMF,KAAK,EAAEO,aAAa,EAAEC,KAAK,cAAAN,qBAAA,cAAAA,qBAAA,GAAI,CAAC,CAAC,CAAE,EAAG;IAC3D,OAAO;MACNO,UAAU,EAAET,KAAK,CAACO,aAAa,CAACC,KAAK,CAAEJ,WAAW,CAAE,CAACM,KAAK;MAC1DC,WAAW,EAAEX,KAAK,CAACO,aAAa,CAACC,KAAK,CAAEJ,WAAW,CAAE,CAACQ,MAAM;MAC5DC,cAAc,EAAEb,KAAK,CAACO,aAAa,CAACC,KAAK,CAAEJ,WAAW,CAAE,CAACU;IAC1D,CAAC;EACF;;EAEA;EACA,MAAMC,YAAY,GAAG,IAAAV,mBAAY,EAChC,oCAAoC,EACpC,WAAW,EACXL,KAAK,CAACM,EAAE,EACRL,MACD,CAAC;EACD,IAAKc,YAAY,MAAAZ,sBAAA,GAAMH,KAAK,EAAEO,aAAa,EAAEC,KAAK,cAAAL,sBAAA,cAAAA,sBAAA,GAAI,CAAC,CAAC,CAAE,EAAG;IAC5D,OAAO;MACNM,UAAU,EAAET,KAAK,CAACO,aAAa,CAACC,KAAK,CAAEO,YAAY,CAAE,CAACL,KAAK;MAC3DC,WAAW,EAAEX,KAAK,CAACO,aAAa,CAACC,KAAK,CAAEO,YAAY,CAAE,CAACH,MAAM;MAC7DC,cAAc,EACbb,KAAK,CAACO,aAAa,CAACC,KAAK,CAAEO,YAAY,CAAE,CAACD;IAC5C,CAAC;EACF;;EAEA;EACA,OAAO;IACNL,UAAU,EAAET,KAAK,CAACO,aAAa,CAACG,KAAK;IACrCC,WAAW,EAAEX,KAAK,CAACO,aAAa,CAACK,MAAM;IACvCC,cAAc,EAAEb,KAAK,CAACc;EACvB,CAAC;AACF;AAEA,SAASE,iBAAiBA,CAAE;EAC3BC,aAAa;EACbC,eAAe;EACfC,aAAa;EACbC,aAAa;EACbpB,KAAK;EACLqB,QAAQ;EACRC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAMC,SAAS,GAAG,IAAAC,eAAM,EAAC,CAAC;EAC1B,MAAM,CAAEC,SAAS,EAAEC,YAAY,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EACrD,MAAM;IAAEC;EAAY,CAAC,GAAG,IAAAC,eAAS,EAAEC,kBAAiB,CAAC;EACrD,MAAM;IAAElB;EAAe,CAAC,GAAGd,eAAe,CAAEC,KAAK,EAAEiB,aAAc,CAAC;EAElE,SAASe,WAAWA,CAAEC,SAAS,EAAG;IACjCJ,WAAW,CAAC,CAAC,CAACK,WAAW,CAAE;MAC1BC,YAAY,EAAE3C,mBAAmB;MACjCyC,SAAS;MACTG,YAAYA,CAAE,CAAEC,KAAK,CAAE,EAAG;QACzB,IAAK,IAAAC,eAAS,EAAED,KAAK,EAAEE,GAAI,CAAC,EAAG;UAC9BZ,YAAY,CAAE,IAAK,CAAC;UACpB;QACD;QACA,IAAKU,KAAK,EAAG;UACZlB,aAAa,CAAEkB,KAAM,CAAC;QACvB;QACAV,YAAY,CAAE,KAAM,CAAC;MACtB,CAAC;MACDa,OAAOA,CAAEC,OAAO,EAAG;QAClBlB,gBAAgB,CAACmB,gBAAgB,CAAC,CAAC;QACnCnB,gBAAgB,CAACoB,iBAAiB,CAAEF,OAAQ,CAAC;MAC9C;IACD,CAAE,CAAC;EACJ;EAEA,oBACC,IAAAlD,WAAA,CAAAqD,IAAA,EAACxD,MAAA,CAAAyD,OAAsB;IAAA/C,QAAA,GACpBwB,QAAQ,eACV,IAAA/B,WAAA,CAAAqD,IAAA;MAAKE,SAAS,EAAC,4BAA4B;MAAAhD,QAAA,GACxCE,KAAK,iBACN,IAAAT,WAAA,CAAAqD,IAAA;QACCtC,EAAE,EAAI,8BAA8BY,eAAiB,cAAe;QACpE4B,SAAS,EAAC,QAAQ;QAAAhD,QAAA,GAEhBE,KAAK,CAAC+C,QAAQ,IACf,IAAAC,aAAO;QACN;QACA,IAAAtD,QAAE,EAAE,mBAAoB,CAAC,EACzBM,KAAK,CAAC+C,QACP,CAAC,EACA,CAAE/C,KAAK,CAAC+C,QAAQ,IACjB,IAAAC,aAAO;QACN;QACA,IAAAtD,QAAE,EACD,iEACD,CAAC,EACDM,KAAK,CAACO,aAAa,CAACC,KAAK,EAAEyC,IAAI,EAAEC,IAAI,IACpClD,KAAK,CAACmD,IACR,CAAC;MAAA,CACE,CACL,eACD,IAAA5D,WAAA,CAAAM,GAAA,EAACX,YAAA,CAAAkE,gBAAgB;QAACC,QAAQ,EAAGzD,YAAc;QAAAE,QAAA,eAC1C,IAAAP,WAAA,CAAAM,GAAA,EAACX,YAAA,CAAAoE,WAAW;UACXC,KAAK,EACJlC,QAAQ,EAAEmC,MAAM,EAAEC,cAAc,IAChChE,2BACA;UACDiE,QAAQ,EAAGvC,aAAe;UAC1BwC,yBAAyB;UACzBxB,YAAY,EAAG3C,mBAAqB;UACpCoE,UAAU,EAAC,yCAAyC;UACpDC,MAAM,EAAGA,CAAE;YAAEC;UAAK,CAAC,kBAClB,IAAAvE,WAAA,CAAAqD,IAAA;YAAKE,SAAS,EAAC,uCAAuC;YAAAhD,QAAA,gBACrD,IAAAP,WAAA,CAAAqD,IAAA,EAAC/D,WAAA,CAAAkF;YACA;YAAA;cACAC,qBAAqB,EAAG,KAAO;cAC/BC,GAAG,EAAGzC,SAAW;cACjBsB,SAAS,EACR,CAAE5B,eAAe,GACd,oCAAoC,GACpC,qCACH;cACDgD,OAAO,EAAGJ,IAAM;cAChB,cACC,CAAE5C,eAAe,GACd,IAAI,GACJ,IAAAxB,QAAE,EACF,oCACA,CACH;cACD,oBACC,CAAEwB,eAAe,GACd,IAAI,GACH,8BAA8BA,eAAiB,cACnD;cACD,iBAAc,QAAQ;cACtBiD,QAAQ,EAAGzC,SAAW;cACtB0C,sBAAsB;cAAAtE,QAAA,GAEpB,CAAC,CAAEoB,eAAe,IAAIlB,KAAK,iBAC5B,IAAAT,WAAA,CAAAM,GAAA;gBACCiD,SAAS,EAAC,2CAA2C;gBACrDuB,GAAG,EAAGxD,cAAgB;gBACtByD,GAAG,EAAC;cAAE,CACN,CACD,EACC5C,SAAS,iBAAI,IAAAnC,WAAA,CAAAM,GAAA,EAAChB,WAAA,CAAA0F,OAAO,IAAE,CAAC,EACxB,CAAErD,eAAe,IAClB,CAAEQ,SAAS,KACTL,QAAQ,EAAEmC,MAAM,EACfgB,kBAAkB,IACpB7E,+BAA+B,CAAE;YAAA,CAC5B,CAAC,EACP,CAAC,CAAEuB,eAAe,iBACnB,IAAA3B,WAAA,CAAAqD,IAAA,EAAC/D,WAAA,CAAA4F,oBAAM;cAAC3B,SAAS,EAAC,qCAAqC;cAAAhD,QAAA,gBACtD,IAAAP,WAAA,CAAAM,GAAA,EAAChB,WAAA,CAAAkF;cACA;cAAA;gBACAC,qBAAqB,EAAG,KAAO;gBAC/BlB,SAAS,EAAC,oCAAoC;gBAC9CoB,OAAO,EAAGJ,IAAM;gBAChB,iBAAc,QAAQ;gBAAAhE,QAAA,EAEpB,IAAAJ,QAAE,EAAE,SAAU;cAAC,CACV,CAAC,eACT,IAAAH,WAAA,CAAAM,GAAA,EAAChB,WAAA,CAAAkF;cACA;cAAA;gBACAC,qBAAqB,EAAG,KAAO;gBAC/BlB,SAAS,EAAC,oCAAoC;gBAC9CoB,OAAO,EAAGA,CAAA,KAAM;kBACf9C,aAAa,CAAC,CAAC;kBACfI,SAAS,CAACkD,OAAO,CAACC,KAAK,CAAC,CAAC;gBAC1B,CAAG;gBAAA7E,QAAA,EAED,IAAAJ,QAAE,EAAE,QAAS;cAAC,CACT,CAAC;YAAA,CACF,CACR,eACD,IAAAH,WAAA,CAAAM,GAAA,EAAChB,WAAA,CAAA+F,QAAQ;cAACC,WAAW,EAAG7C;YAAa,CAAE,CAAC;UAAA,CACpC,CACH;UACH8C,KAAK,EAAG5D;QAAiB,CACzB;MAAC,CACe,CAAC;IAAA,CACf,CAAC;EAAA,CACiB,CAAC;AAE3B;AAEA,MAAM6D,eAAe,GAAG,IAAAC,gBAAU,EAAIC,MAAM,IAAM;EACjD,MAAM;IAAEC,QAAQ;IAAEC;EAAY,CAAC,GAAGF,MAAM,CAAEG,eAAU,CAAC;EACrD,MAAM;IAAEC,gBAAgB;IAAEC;EAAuB,CAAC,GAAGL,MAAM,CAAEM,YAAY,CAAC;EAC1E,MAAMrE,eAAe,GAAGoE,sBAAsB,CAAE,gBAAiB,CAAC;EAElE,OAAO;IACNtF,KAAK,EAAEkB,eAAe,GACnBgE,QAAQ,CAAEhE,eAAe,EAAE;MAAEsE,OAAO,EAAE;IAAO,CAAE,CAAC,GAChD,IAAI;IACPvE,aAAa,EAAEoE,gBAAgB,CAAC,CAAC;IACjChE,QAAQ,EAAE8D,WAAW,CAAEG,sBAAsB,CAAE,MAAO,CAAE,CAAC;IACzDpE;EACD,CAAC;AACF,CAAE,CAAC;AAEH,MAAMuE,iBAAiB,GAAG,IAAAC,kBAAY,EACrC,CAAEC,QAAQ,EAAE;EAAEpE;AAAiB,CAAC,EAAE;EAAE0D;AAAO,CAAC,KAAM;EACjD,MAAM;IAAEW;EAAS,CAAC,GAAGD,QAAQ,CAAEJ,YAAY,CAAC;EAC5C,OAAO;IACNpE,aAAaA,CAAEkB,KAAK,EAAG;MACtBuD,QAAQ,CAAE;QAAEC,cAAc,EAAExD,KAAK,CAAC/B;MAAG,CAAE,CAAC;IACzC,CAAC;IACDwF,WAAWA,CAAE7D,SAAS,EAAG;MACxBgD,MAAM,CAAElD,kBAAiB,CAAC,CACxBF,WAAW,CAAC,CAAC,CACbK,WAAW,CAAE;QACbC,YAAY,EAAE,CAAE,OAAO,CAAE;QACzBF,SAAS;QACTG,YAAYA,CAAE,CAAEC,KAAK,CAAE,EAAG;UACzBuD,QAAQ,CAAE;YAAEC,cAAc,EAAExD,KAAK,CAAC/B;UAAG,CAAE,CAAC;QACzC,CAAC;QACDkC,OAAOA,CAAEC,OAAO,EAAG;UAClBlB,gBAAgB,CAACmB,gBAAgB,CAAC,CAAC;UACnCnB,gBAAgB,CAACoB,iBAAiB,CAAEF,OAAQ,CAAC;QAC9C;MACD,CAAE,CAAC;IACL,CAAC;IACDrB,aAAaA,CAAA,EAAG;MACfwE,QAAQ,CAAE;QAAEC,cAAc,EAAE;MAAE,CAAE,CAAC;IAClC;EACD,CAAC;AACF,CACD,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdA,IAAAE,QAAA,GAAAC,OAAA,CAAAnD,OAAA,GAee,IAAAoD,gBAAO,EACrBC,uBAAW,EACXnB,eAAe,EACfU,iBAAiB,EACjB,IAAAU,uBAAW,EAAE,0BAA2B,CACzC,CAAC,CAAEnF,iBAAkB,CAAC","ignoreList":[]}
@@ -123,7 +123,10 @@ function PostFormat() {
123
123
  hideLabelFromVision: true
124
124
  }), suggestion && suggestion.id !== postFormat && /*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
125
125
  className: "editor-post-format__suggestion",
126
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
126
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
127
+ // TODO: Switch to `true` (40px size) if possible
128
+ , {
129
+ __next40pxDefaultSize: false,
127
130
  variant: "link",
128
131
  onClick: () => onUpdatePostFormat(suggestion.id),
129
132
  children: (0, _i18n.sprintf)( /* translators: %s: post format */
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_components","_data","_compose","_coreData","_check","_interopRequireDefault","_store","_jsxRuntime","POST_FORMATS","exports","id","caption","__","sort","a","b","normalizedA","toUpperCase","normalizedB","PostFormat","instanceId","useInstanceId","postFormatSelectorId","postFormat","suggestedFormat","supportedFormats","useSelect","select","getEditedPostAttribute","getSuggestedPostFormat","editorStore","_postFormat","themeSupports","coreStore","getThemeSupports","formats","filter","format","includes","suggestion","find","editPost","useDispatch","onUpdatePostFormat","jsx","default","children","jsxs","className","RadioControl","label","selected","onChange","options","map","value","hideLabelFromVision","Button","variant","onClick","sprintf"],"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\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":["_i18n","require","_components","_data","_compose","_coreData","_check","_interopRequireDefault","_store","_jsxRuntime","POST_FORMATS","exports","id","caption","__","sort","a","b","normalizedA","toUpperCase","normalizedB","PostFormat","instanceId","useInstanceId","postFormatSelectorId","postFormat","suggestedFormat","supportedFormats","useSelect","select","getEditedPostAttribute","getSuggestedPostFormat","editorStore","_postFormat","themeSupports","coreStore","getThemeSupports","formats","filter","format","includes","suggestion","find","editPost","useDispatch","onUpdatePostFormat","jsx","default","children","jsxs","className","RadioControl","label","selected","onChange","options","map","value","hideLabelFromVision","Button","__next40pxDefaultSize","variant","onClick","sprintf"],"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":[]}
@@ -47,7 +47,10 @@ function PostLastRevision() {
47
47
  revisionsCount
48
48
  } = usePostLastRevisionInfo();
49
49
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_check.default, {
50
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
50
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
51
+ // TODO: Switch to `true` (40px size) if possible
52
+ , {
53
+ __next40pxDefaultSize: false,
51
54
  href: (0, _url.addQueryArgs)('revision.php', {
52
55
  revision: lastRevisionId
53
56
  }),
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_components","_data","_icons","_url","_check","_interopRequireDefault","_postPanelRow","_store","_jsxRuntime","usePostLastRevisionInfo","useSelect","select","getCurrentPostLastRevisionId","getCurrentPostRevisionsCount","editorStore","lastRevisionId","revisionsCount","PostLastRevision","jsx","default","children","Button","href","addQueryArgs","revision","className","icon","backup","iconPosition","text","sprintf","__","PrivatePostLastRevision","label","variant","size","_default","exports"],"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\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":";;;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,IAAA,GAAAJ,OAAA;AAKA,IAAAK,MAAA,GAAAC,sBAAA,CAAAN,OAAA;AACA,IAAAO,aAAA,GAAAD,sBAAA,CAAAN,OAAA;AACA,IAAAQ,MAAA,GAAAR,OAAA;AAAmD,IAAAS,WAAA,GAAAT,OAAA;AAdnD;AACA;AACA;;AAOA;AACA;AACA;;AAKA,SAASU,uBAAuBA,CAAA,EAAG;EAClC,OAAO,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAC/B,MAAM;MAAEC,4BAA4B;MAAEC;IAA6B,CAAC,GACnEF,MAAM,CAAEG,YAAY,CAAC;IACtB,OAAO;MACNC,cAAc,EAAEH,4BAA4B,CAAC,CAAC;MAC9CI,cAAc,EAAEH,4BAA4B,CAAC;IAC9C,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;AACR;;AAEA;AACA;AACA;AACA;AACA;AACA,SAASI,gBAAgBA,CAAA,EAAG;EAC3B,MAAM;IAAEF,cAAc;IAAEC;EAAe,CAAC,GAAGP,uBAAuB,CAAC,CAAC;EAEpE,oBACC,IAAAD,WAAA,CAAAU,GAAA,EAACd,MAAA,CAAAe,OAAqB;IAAAC,QAAA,eACrB,IAAAZ,WAAA,CAAAU,GAAA,EAAClB,WAAA,CAAAqB,MAAM;MACNC,IAAI,EAAG,IAAAC,iBAAY,EAAE,cAAc,EAAE;QACpCC,QAAQ,EAAET;MACX,CAAE,CAAG;MACLU,SAAS,EAAC,kCAAkC;MAC5CC,IAAI,EAAGC,aAAQ;MACfC,YAAY,EAAC,OAAO;MACpBC,IAAI,EAAG,IAAAC,aAAO,GACb;MACA,IAAAC,QAAE,EAAE,gBAAiB,CAAC,EACtBf,cACD;IAAG,CACH;EAAC,CACoB,CAAC;AAE1B;AAEO,SAASgB,uBAAuBA,CAAA,EAAG;EACzC,MAAM;IAAEjB,cAAc;IAAEC;EAAe,CAAC,GAAGP,uBAAuB,CAAC,CAAC;EACpE,oBACC,IAAAD,WAAA,CAAAU,GAAA,EAACd,MAAA,CAAAe,OAAqB;IAAAC,QAAA,eACrB,IAAAZ,WAAA,CAAAU,GAAA,EAACZ,aAAA,CAAAa,OAAY;MAACc,KAAK,EAAG,IAAAF,QAAE,EAAE,WAAY,CAAG;MAAAX,QAAA,eACxC,IAAAZ,WAAA,CAAAU,GAAA,EAAClB,WAAA,CAAAqB,MAAM;QACNC,IAAI,EAAG,IAAAC,iBAAY,EAAE,cAAc,EAAE;UACpCC,QAAQ,EAAET;QACX,CAAE,CAAG;QACLU,SAAS,EAAC,2CAA2C;QACrDI,IAAI,EAAGb,cAAgB;QACvBkB,OAAO,EAAC,UAAU;QAClBC,IAAI,EAAC;MAAS,CACd;IAAC,CACW;EAAC,CACO,CAAC;AAE1B;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAlB,OAAA,GAEcF,gBAAgB","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_components","_data","_icons","_url","_check","_interopRequireDefault","_postPanelRow","_store","_jsxRuntime","usePostLastRevisionInfo","useSelect","select","getCurrentPostLastRevisionId","getCurrentPostRevisionsCount","editorStore","lastRevisionId","revisionsCount","PostLastRevision","jsx","default","children","Button","__next40pxDefaultSize","href","addQueryArgs","revision","className","icon","backup","iconPosition","text","sprintf","__","PrivatePostLastRevision","label","variant","size","_default","exports"],"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":";;;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,IAAA,GAAAJ,OAAA;AAKA,IAAAK,MAAA,GAAAC,sBAAA,CAAAN,OAAA;AACA,IAAAO,aAAA,GAAAD,sBAAA,CAAAN,OAAA;AACA,IAAAQ,MAAA,GAAAR,OAAA;AAAmD,IAAAS,WAAA,GAAAT,OAAA;AAdnD;AACA;AACA;;AAOA;AACA;AACA;;AAKA,SAASU,uBAAuBA,CAAA,EAAG;EAClC,OAAO,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAC/B,MAAM;MAAEC,4BAA4B;MAAEC;IAA6B,CAAC,GACnEF,MAAM,CAAEG,YAAY,CAAC;IACtB,OAAO;MACNC,cAAc,EAAEH,4BAA4B,CAAC,CAAC;MAC9CI,cAAc,EAAEH,4BAA4B,CAAC;IAC9C,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;AACR;;AAEA;AACA;AACA;AACA;AACA;AACA,SAASI,gBAAgBA,CAAA,EAAG;EAC3B,MAAM;IAAEF,cAAc;IAAEC;EAAe,CAAC,GAAGP,uBAAuB,CAAC,CAAC;EAEpE,oBACC,IAAAD,WAAA,CAAAU,GAAA,EAACd,MAAA,CAAAe,OAAqB;IAAAC,QAAA,eACrB,IAAAZ,WAAA,CAAAU,GAAA,EAAClB,WAAA,CAAAqB;IACA;IAAA;MACAC,qBAAqB,EAAG,KAAO;MAC/BC,IAAI,EAAG,IAAAC,iBAAY,EAAE,cAAc,EAAE;QACpCC,QAAQ,EAAEV;MACX,CAAE,CAAG;MACLW,SAAS,EAAC,kCAAkC;MAC5CC,IAAI,EAAGC,aAAQ;MACfC,YAAY,EAAC,OAAO;MACpBC,IAAI,EAAG,IAAAC,aAAO,GACb;MACA,IAAAC,QAAE,EAAE,gBAAiB,CAAC,EACtBhB,cACD;IAAG,CACH;EAAC,CACoB,CAAC;AAE1B;AAEO,SAASiB,uBAAuBA,CAAA,EAAG;EACzC,MAAM;IAAElB,cAAc;IAAEC;EAAe,CAAC,GAAGP,uBAAuB,CAAC,CAAC;EACpE,oBACC,IAAAD,WAAA,CAAAU,GAAA,EAACd,MAAA,CAAAe,OAAqB;IAAAC,QAAA,eACrB,IAAAZ,WAAA,CAAAU,GAAA,EAACZ,aAAA,CAAAa,OAAY;MAACe,KAAK,EAAG,IAAAF,QAAE,EAAE,WAAY,CAAG;MAAAZ,QAAA,eACxC,IAAAZ,WAAA,CAAAU,GAAA,EAAClB,WAAA,CAAAqB,MAAM;QACNE,IAAI,EAAG,IAAAC,iBAAY,EAAE,cAAc,EAAE;UACpCC,QAAQ,EAAEV;QACX,CAAE,CAAG;QACLW,SAAS,EAAC,2CAA2C;QACrDI,IAAI,EAAGd,cAAgB;QACvBmB,OAAO,EAAC,UAAU;QAClBC,IAAI,EAAC;MAAS,CACd;IAAC,CACW;EAAC,CACO,CAAC;AAE1B;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAnB,OAAA,GAEcF,gBAAgB","ignoreList":[]}