@wordpress/editor 14.3.0 → 14.4.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 (400) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +2 -1
  3. package/build/bindings/api.js +65 -0
  4. package/build/bindings/api.js.map +1 -0
  5. package/build/bindings/pattern-overrides.js +23 -13
  6. package/build/bindings/pattern-overrides.js.map +1 -1
  7. package/build/bindings/post-meta.js +23 -12
  8. package/build/bindings/post-meta.js.map +1 -1
  9. package/build/components/block-settings-menu/content-only-settings-menu.js +4 -1
  10. package/build/components/block-settings-menu/content-only-settings-menu.js.map +1 -1
  11. package/build/components/blog-title/index.js +6 -2
  12. package/build/components/blog-title/index.js.map +1 -1
  13. package/build/components/collapsible-block-toolbar/index.js +2 -3
  14. package/build/components/collapsible-block-toolbar/index.js.map +1 -1
  15. package/build/components/global-styles-provider/index.js +15 -3
  16. package/build/components/global-styles-provider/index.js.map +1 -1
  17. package/build/components/header/back-button.js +7 -8
  18. package/build/components/header/back-button.js.map +1 -1
  19. package/build/components/header/index.js +19 -17
  20. package/build/components/header/index.js.map +1 -1
  21. package/build/components/page-attributes/order.js +1 -67
  22. package/build/components/page-attributes/order.js.map +1 -1
  23. package/build/components/page-attributes/panel.js +1 -4
  24. package/build/components/page-attributes/panel.js.map +1 -1
  25. package/build/components/post-actions/actions.js +126 -33
  26. package/build/components/post-actions/actions.js.map +1 -1
  27. package/build/components/post-card-panel/index.js +8 -2
  28. package/build/components/post-card-panel/index.js.map +1 -1
  29. package/build/components/post-comments/index.js +1 -1
  30. package/build/components/post-comments/index.js.map +1 -1
  31. package/build/components/post-content-information/index.js +7 -1
  32. package/build/components/post-content-information/index.js.map +1 -1
  33. package/build/components/post-discussion/panel.js +2 -2
  34. package/build/components/post-discussion/panel.js.map +1 -1
  35. package/build/components/post-excerpt/panel.js +1 -1
  36. package/build/components/post-excerpt/panel.js.map +1 -1
  37. package/build/components/post-featured-image/index.js +3 -1
  38. package/build/components/post-featured-image/index.js.map +1 -1
  39. package/build/components/post-last-revision/index.js +2 -1
  40. package/build/components/post-last-revision/index.js.map +1 -1
  41. package/build/components/post-publish-button/index.js +4 -11
  42. package/build/components/post-publish-button/index.js.map +1 -1
  43. package/build/components/post-publish-panel/maybe-category-panel.js +4 -1
  44. package/build/components/post-publish-panel/maybe-category-panel.js.map +1 -1
  45. package/build/components/post-publish-panel/maybe-tags-panel.js +2 -1
  46. package/build/components/post-publish-panel/maybe-tags-panel.js.map +1 -1
  47. package/build/components/post-status/index.js +30 -10
  48. package/build/components/post-status/index.js.map +1 -1
  49. package/build/components/post-taxonomies/flat-term-selector.js +17 -6
  50. package/build/components/post-taxonomies/flat-term-selector.js.map +1 -1
  51. package/build/components/post-taxonomies/index.js +7 -1
  52. package/build/components/post-taxonomies/index.js.map +1 -1
  53. package/build/components/post-template/block-theme.js +4 -4
  54. package/build/components/post-template/block-theme.js.map +1 -1
  55. package/build/components/post-template/classic-theme.js +8 -2
  56. package/build/components/post-template/classic-theme.js.map +1 -1
  57. package/build/components/post-template/create-new-template.js +4 -1
  58. package/build/components/post-template/create-new-template.js.map +1 -1
  59. package/build/components/post-template/hooks.js +5 -1
  60. package/build/components/post-template/hooks.js.map +1 -1
  61. package/build/components/post-template/panel.js +8 -2
  62. package/build/components/post-template/panel.js.map +1 -1
  63. package/build/components/post-trash/check.js +6 -4
  64. package/build/components/post-trash/check.js.map +1 -1
  65. package/build/components/post-url/panel.js +6 -2
  66. package/build/components/post-url/panel.js.map +1 -1
  67. package/build/components/posts-per-page/index.js +6 -2
  68. package/build/components/posts-per-page/index.js.map +1 -1
  69. package/build/components/provider/use-block-editor-settings.js +15 -6
  70. package/build/components/provider/use-block-editor-settings.js.map +1 -1
  71. package/build/components/save-publish-panels/index.js +1 -2
  72. package/build/components/save-publish-panels/index.js.map +1 -1
  73. package/build/components/sidebar/index.js +3 -9
  74. package/build/components/sidebar/index.js.map +1 -1
  75. package/build/components/site-discussion/index.js +7 -3
  76. package/build/components/site-discussion/index.js.map +1 -1
  77. package/build/components/template-content-panel/index.js +5 -5
  78. package/build/components/template-content-panel/index.js.map +1 -1
  79. package/build/components/visual-editor/edit-template-blocks-notification.js +4 -4
  80. package/build/components/visual-editor/edit-template-blocks-notification.js.map +1 -1
  81. package/build/components/visual-editor/index.js +5 -2
  82. package/build/components/visual-editor/index.js.map +1 -1
  83. package/build/{hooks → components/visual-editor}/use-select-nearest-editable-block.js +1 -1
  84. package/build/components/visual-editor/use-select-nearest-editable-block.js.map +1 -0
  85. package/build/dataviews/actions/delete-post.js +2 -0
  86. package/build/dataviews/actions/delete-post.js.map +1 -1
  87. package/build/hooks/pattern-overrides.js +1 -1
  88. package/build/hooks/pattern-overrides.js.map +1 -1
  89. package/build/index.js +0 -1
  90. package/build/index.js.map +1 -1
  91. package/build/private-apis.js +3 -0
  92. package/build/private-apis.js.map +1 -1
  93. package/build/utils/media-upload/index.js +35 -2
  94. package/build/utils/media-upload/index.js.map +1 -1
  95. package/build-module/bindings/api.js +57 -0
  96. package/build-module/bindings/api.js.map +1 -0
  97. package/build-module/bindings/pattern-overrides.js +23 -13
  98. package/build-module/bindings/pattern-overrides.js.map +1 -1
  99. package/build-module/bindings/post-meta.js +23 -12
  100. package/build-module/bindings/post-meta.js.map +1 -1
  101. package/build-module/components/block-settings-menu/content-only-settings-menu.js +4 -1
  102. package/build-module/components/block-settings-menu/content-only-settings-menu.js.map +1 -1
  103. package/build-module/components/blog-title/index.js +6 -2
  104. package/build-module/components/blog-title/index.js.map +1 -1
  105. package/build-module/components/collapsible-block-toolbar/index.js +1 -2
  106. package/build-module/components/collapsible-block-toolbar/index.js.map +1 -1
  107. package/build-module/components/global-styles-provider/index.js +15 -3
  108. package/build-module/components/global-styles-provider/index.js.map +1 -1
  109. package/build-module/components/header/back-button.js +5 -7
  110. package/build-module/components/header/back-button.js.map +1 -1
  111. package/build-module/components/header/index.js +19 -19
  112. package/build-module/components/header/index.js.map +1 -1
  113. package/build-module/components/page-attributes/order.js +4 -70
  114. package/build-module/components/page-attributes/order.js.map +1 -1
  115. package/build-module/components/page-attributes/panel.js +1 -6
  116. package/build-module/components/page-attributes/panel.js.map +1 -1
  117. package/build-module/components/post-actions/actions.js +127 -34
  118. package/build-module/components/post-actions/actions.js.map +1 -1
  119. package/build-module/components/post-card-panel/index.js +8 -2
  120. package/build-module/components/post-card-panel/index.js.map +1 -1
  121. package/build-module/components/post-comments/index.js +2 -2
  122. package/build-module/components/post-comments/index.js.map +1 -1
  123. package/build-module/components/post-content-information/index.js +7 -1
  124. package/build-module/components/post-content-information/index.js.map +1 -1
  125. package/build-module/components/post-discussion/panel.js +3 -3
  126. package/build-module/components/post-discussion/panel.js.map +1 -1
  127. package/build-module/components/post-excerpt/panel.js +1 -1
  128. package/build-module/components/post-excerpt/panel.js.map +1 -1
  129. package/build-module/components/post-featured-image/index.js +3 -1
  130. package/build-module/components/post-featured-image/index.js.map +1 -1
  131. package/build-module/components/post-last-revision/index.js +2 -1
  132. package/build-module/components/post-last-revision/index.js.map +1 -1
  133. package/build-module/components/post-publish-button/index.js +4 -11
  134. package/build-module/components/post-publish-button/index.js.map +1 -1
  135. package/build-module/components/post-publish-panel/maybe-category-panel.js +4 -1
  136. package/build-module/components/post-publish-panel/maybe-category-panel.js.map +1 -1
  137. package/build-module/components/post-publish-panel/maybe-tags-panel.js +2 -1
  138. package/build-module/components/post-publish-panel/maybe-tags-panel.js.map +1 -1
  139. package/build-module/components/post-status/index.js +30 -10
  140. package/build-module/components/post-status/index.js.map +1 -1
  141. package/build-module/components/post-taxonomies/flat-term-selector.js +17 -6
  142. package/build-module/components/post-taxonomies/flat-term-selector.js.map +1 -1
  143. package/build-module/components/post-taxonomies/index.js +7 -1
  144. package/build-module/components/post-taxonomies/index.js.map +1 -1
  145. package/build-module/components/post-template/block-theme.js +4 -4
  146. package/build-module/components/post-template/block-theme.js.map +1 -1
  147. package/build-module/components/post-template/classic-theme.js +8 -2
  148. package/build-module/components/post-template/classic-theme.js.map +1 -1
  149. package/build-module/components/post-template/create-new-template.js +4 -1
  150. package/build-module/components/post-template/create-new-template.js.map +1 -1
  151. package/build-module/components/post-template/hooks.js +5 -1
  152. package/build-module/components/post-template/hooks.js.map +1 -1
  153. package/build-module/components/post-template/panel.js +8 -2
  154. package/build-module/components/post-template/panel.js.map +1 -1
  155. package/build-module/components/post-trash/check.js +6 -4
  156. package/build-module/components/post-trash/check.js.map +1 -1
  157. package/build-module/components/post-url/panel.js +6 -2
  158. package/build-module/components/post-url/panel.js.map +1 -1
  159. package/build-module/components/posts-per-page/index.js +6 -2
  160. package/build-module/components/posts-per-page/index.js.map +1 -1
  161. package/build-module/components/provider/use-block-editor-settings.js +15 -6
  162. package/build-module/components/provider/use-block-editor-settings.js.map +1 -1
  163. package/build-module/components/save-publish-panels/index.js +1 -2
  164. package/build-module/components/save-publish-panels/index.js.map +1 -1
  165. package/build-module/components/sidebar/index.js +3 -9
  166. package/build-module/components/sidebar/index.js.map +1 -1
  167. package/build-module/components/site-discussion/index.js +8 -4
  168. package/build-module/components/site-discussion/index.js.map +1 -1
  169. package/build-module/components/template-content-panel/index.js +5 -5
  170. package/build-module/components/template-content-panel/index.js.map +1 -1
  171. package/build-module/components/visual-editor/edit-template-blocks-notification.js +4 -4
  172. package/build-module/components/visual-editor/edit-template-blocks-notification.js.map +1 -1
  173. package/build-module/components/visual-editor/index.js +5 -2
  174. package/build-module/components/visual-editor/index.js.map +1 -1
  175. package/build-module/{hooks → components/visual-editor}/use-select-nearest-editable-block.js +1 -1
  176. package/build-module/components/visual-editor/use-select-nearest-editable-block.js.map +1 -0
  177. package/build-module/dataviews/actions/delete-post.js +2 -0
  178. package/build-module/dataviews/actions/delete-post.js.map +1 -1
  179. package/build-module/hooks/pattern-overrides.js +1 -1
  180. package/build-module/hooks/pattern-overrides.js.map +1 -1
  181. package/build-module/index.js +0 -1
  182. package/build-module/index.js.map +1 -1
  183. package/build-module/private-apis.js +3 -0
  184. package/build-module/private-apis.js.map +1 -1
  185. package/build-module/utils/media-upload/index.js +36 -3
  186. package/build-module/utils/media-upload/index.js.map +1 -1
  187. package/build-style/style-rtl.css +78 -42
  188. package/build-style/style.css +78 -42
  189. package/build-types/bindings/api.d.ts +25 -0
  190. package/build-types/bindings/api.d.ts.map +1 -0
  191. package/build-types/bindings/pattern-overrides.d.ts +5 -6
  192. package/build-types/bindings/pattern-overrides.d.ts.map +1 -1
  193. package/build-types/bindings/post-meta.d.ts +5 -7
  194. package/build-types/bindings/post-meta.d.ts.map +1 -1
  195. package/build-types/components/autocompleters/user.d.ts +2 -2
  196. package/build-types/components/autocompleters/user.d.ts.map +1 -1
  197. package/build-types/components/block-settings-menu/plugin-block-settings-menu-item.d.ts.map +1 -1
  198. package/build-types/components/blog-title/index.d.ts.map +1 -1
  199. package/build-types/components/collapsible-block-toolbar/index.d.ts +1 -2
  200. package/build-types/components/collapsible-block-toolbar/index.d.ts.map +1 -1
  201. package/build-types/components/document-bar/index.d.ts.map +1 -1
  202. package/build-types/components/document-outline/check.d.ts.map +1 -1
  203. package/build-types/components/document-outline/index.d.ts.map +1 -1
  204. package/build-types/components/editor-history/redo.d.ts +1 -1
  205. package/build-types/components/editor-history/undo.d.ts +1 -1
  206. package/build-types/components/editor-notices/index.d.ts.map +1 -1
  207. package/build-types/components/editor-snackbars/index.d.ts.map +1 -1
  208. package/build-types/components/entities-saved-states/index.d.ts.map +1 -1
  209. package/build-types/components/global-styles-provider/index.d.ts.map +1 -1
  210. package/build-types/components/header/back-button.d.ts +1 -0
  211. package/build-types/components/header/back-button.d.ts.map +1 -1
  212. package/build-types/components/header/index.d.ts.map +1 -1
  213. package/build-types/components/local-autosave-monitor/index.d.ts.map +1 -1
  214. package/build-types/components/media-categories/index.d.ts.map +1 -1
  215. package/build-types/components/more-menu/tools-more-menu-group.d.ts.map +1 -1
  216. package/build-types/components/more-menu/view-more-menu-group.d.ts.map +1 -1
  217. package/build-types/components/page-attributes/check.d.ts.map +1 -1
  218. package/build-types/components/page-attributes/order.d.ts +1 -1
  219. package/build-types/components/page-attributes/order.d.ts.map +1 -1
  220. package/build-types/components/page-attributes/panel.d.ts.map +1 -1
  221. package/build-types/components/page-attributes/parent.d.ts.map +1 -1
  222. package/build-types/components/plugin-document-setting-panel/index.d.ts.map +1 -1
  223. package/build-types/components/plugin-post-publish-panel/index.d.ts.map +1 -1
  224. package/build-types/components/plugin-post-status-info/index.d.ts.map +1 -1
  225. package/build-types/components/plugin-pre-publish-panel/index.d.ts.map +1 -1
  226. package/build-types/components/plugin-sidebar/index.d.ts.map +1 -1
  227. package/build-types/components/plugin-sidebar-more-menu-item/index.d.ts.map +1 -1
  228. package/build-types/components/post-actions/actions.d.ts.map +1 -1
  229. package/build-types/components/post-author/check.d.ts.map +1 -1
  230. package/build-types/components/post-author/index.d.ts.map +1 -1
  231. package/build-types/components/post-author/panel.d.ts.map +1 -1
  232. package/build-types/components/post-card-panel/index.d.ts.map +1 -1
  233. package/build-types/components/post-content-information/index.d.ts.map +1 -1
  234. package/build-types/components/post-discussion/panel.d.ts.map +1 -1
  235. package/build-types/components/post-excerpt/check.d.ts.map +1 -1
  236. package/build-types/components/post-excerpt/index.d.ts.map +1 -1
  237. package/build-types/components/post-excerpt/panel.d.ts.map +1 -1
  238. package/build-types/components/post-excerpt/plugin.d.ts.map +1 -1
  239. package/build-types/components/post-featured-image/check.d.ts.map +1 -1
  240. package/build-types/components/post-featured-image/panel.d.ts.map +1 -1
  241. package/build-types/components/post-format/index.d.ts.map +1 -1
  242. package/build-types/components/post-format/panel.d.ts.map +1 -1
  243. package/build-types/components/post-last-revision/check.d.ts.map +1 -1
  244. package/build-types/components/post-last-revision/index.d.ts.map +1 -1
  245. package/build-types/components/post-last-revision/panel.d.ts.map +1 -1
  246. package/build-types/components/post-locked-modal/index.d.ts.map +1 -1
  247. package/build-types/components/post-pending-status/check.d.ts.map +1 -1
  248. package/build-types/components/post-pending-status/index.d.ts.map +1 -1
  249. package/build-types/components/post-preview-button/index.d.ts.map +1 -1
  250. package/build-types/components/post-publish-button/index.d.ts.map +1 -1
  251. package/build-types/components/post-publish-panel/maybe-category-panel.d.ts.map +1 -1
  252. package/build-types/components/post-saved-state/index.d.ts +1 -1
  253. package/build-types/components/post-saved-state/index.d.ts.map +1 -1
  254. package/build-types/components/post-schedule/check.d.ts.map +1 -1
  255. package/build-types/components/post-schedule/index.d.ts.map +1 -1
  256. package/build-types/components/post-schedule/label.d.ts.map +1 -1
  257. package/build-types/components/post-schedule/panel.d.ts.map +1 -1
  258. package/build-types/components/post-slug/check.d.ts.map +1 -1
  259. package/build-types/components/post-slug/index.d.ts.map +1 -1
  260. package/build-types/components/post-status/index.d.ts.map +1 -1
  261. package/build-types/components/post-sticky/check.d.ts.map +1 -1
  262. package/build-types/components/post-sticky/index.d.ts.map +1 -1
  263. package/build-types/components/post-switch-to-draft-button/index.d.ts.map +1 -1
  264. package/build-types/components/post-sync-status/index.d.ts.map +1 -1
  265. package/build-types/components/post-taxonomies/check.d.ts.map +1 -1
  266. package/build-types/components/post-taxonomies/flat-term-selector.d.ts +9 -7
  267. package/build-types/components/post-taxonomies/flat-term-selector.d.ts.map +1 -1
  268. package/build-types/components/post-taxonomies/hierarchical-term-selector.d.ts +13 -11
  269. package/build-types/components/post-taxonomies/hierarchical-term-selector.d.ts.map +1 -1
  270. package/build-types/components/post-taxonomies/index.d.ts.map +1 -1
  271. package/build-types/components/post-template/block-theme.d.ts.map +1 -1
  272. package/build-types/components/post-template/classic-theme.d.ts.map +1 -1
  273. package/build-types/components/post-template/create-new-template.d.ts.map +1 -1
  274. package/build-types/components/post-template/hooks.d.ts.map +1 -1
  275. package/build-types/components/post-template/panel.d.ts.map +1 -1
  276. package/build-types/components/post-text-editor/index.d.ts.map +1 -1
  277. package/build-types/components/post-trash/check.d.ts.map +1 -1
  278. package/build-types/components/post-trash/index.d.ts.map +1 -1
  279. package/build-types/components/post-type-support-check/index.d.ts.map +1 -1
  280. package/build-types/components/post-url/check.d.ts.map +1 -1
  281. package/build-types/components/post-url/index.d.ts.map +1 -1
  282. package/build-types/components/post-url/label.d.ts.map +1 -1
  283. package/build-types/components/post-url/panel.d.ts.map +1 -1
  284. package/build-types/components/post-visibility/check.d.ts.map +1 -1
  285. package/build-types/components/post-visibility/index.d.ts.map +1 -1
  286. package/build-types/components/posts-per-page/index.d.ts.map +1 -1
  287. package/build-types/components/preferences-modal/enable-plugin-document-setting-panel.d.ts.map +1 -1
  288. package/build-types/components/provider/index.d.ts.map +1 -1
  289. package/build-types/components/provider/use-block-editor-settings.d.ts.map +1 -1
  290. package/build-types/components/save-publish-panels/index.d.ts.map +1 -1
  291. package/build-types/components/sidebar/index.d.ts.map +1 -1
  292. package/build-types/components/site-discussion/index.d.ts.map +1 -1
  293. package/build-types/components/template-content-panel/index.d.ts +1 -3
  294. package/build-types/components/template-content-panel/index.d.ts.map +1 -1
  295. package/build-types/components/theme-support-check/index.d.ts.map +1 -1
  296. package/build-types/components/time-to-read/index.d.ts.map +1 -1
  297. package/build-types/components/unsaved-changes-warning/index.d.ts.map +1 -1
  298. package/build-types/components/visual-editor/edit-template-blocks-notification.d.ts +1 -1
  299. package/build-types/components/visual-editor/edit-template-blocks-notification.d.ts.map +1 -1
  300. package/build-types/components/visual-editor/index.d.ts.map +1 -1
  301. package/build-types/components/visual-editor/use-select-nearest-editable-block.d.ts.map +1 -0
  302. package/build-types/components/word-count/index.d.ts.map +1 -1
  303. package/build-types/dataviews/actions/delete-post.d.ts.map +1 -1
  304. package/build-types/dataviews/api.d.ts +1 -1
  305. package/build-types/dataviews/api.d.ts.map +1 -1
  306. package/build-types/dataviews/store/private-selectors.d.ts +0 -1
  307. package/build-types/dataviews/store/private-selectors.d.ts.map +1 -1
  308. package/build-types/hooks/custom-sources-backwards-compatibility.d.ts +1 -1
  309. package/build-types/hooks/custom-sources-backwards-compatibility.d.ts.map +1 -1
  310. package/build-types/hooks/pattern-overrides.d.ts.map +1 -1
  311. package/build-types/private-apis.d.ts.map +1 -1
  312. package/build-types/store/actions.d.ts.map +1 -1
  313. package/build-types/store/private-actions.d.ts.map +1 -1
  314. package/build-types/store/reducer.d.ts.map +1 -1
  315. package/build-types/store/selectors.d.ts +0 -1
  316. package/build-types/store/selectors.d.ts.map +1 -1
  317. package/build-types/utils/media-upload/index.d.ts.map +1 -1
  318. package/package.json +38 -37
  319. package/src/bindings/api.js +57 -0
  320. package/src/bindings/pattern-overrides.js +28 -17
  321. package/src/bindings/post-meta.js +19 -14
  322. package/src/components/block-settings-menu/content-only-settings-menu.js +4 -4
  323. package/src/components/blog-title/index.js +7 -2
  324. package/src/components/collapsible-block-toolbar/index.js +1 -3
  325. package/src/components/collapsible-block-toolbar/style.scss +0 -3
  326. package/src/components/document-bar/style.scss +1 -5
  327. package/src/components/document-tools/style.scss +4 -4
  328. package/src/components/editor-interface/style.scss +4 -0
  329. package/src/components/global-styles-provider/index.js +22 -11
  330. package/src/components/header/back-button.js +6 -6
  331. package/src/components/header/index.js +26 -25
  332. package/src/components/header/style.scss +64 -21
  333. package/src/components/inserter-sidebar/style.scss +1 -6
  334. package/src/components/page-attributes/order.js +3 -77
  335. package/src/components/page-attributes/panel.js +1 -7
  336. package/src/components/post-actions/actions.js +150 -32
  337. package/src/components/post-card-panel/index.js +8 -2
  338. package/src/components/post-comments/index.js +2 -2
  339. package/src/components/post-content-information/index.js +7 -1
  340. package/src/components/post-discussion/panel.js +5 -3
  341. package/src/components/post-excerpt/panel.js +2 -1
  342. package/src/components/post-featured-image/index.js +5 -1
  343. package/src/components/post-last-revision/index.js +1 -0
  344. package/src/components/post-panel-row/style.scss +0 -1
  345. package/src/components/post-publish-button/index.js +4 -17
  346. package/src/components/post-publish-panel/maybe-category-panel.js +4 -1
  347. package/src/components/post-publish-panel/maybe-tags-panel.js +1 -1
  348. package/src/components/post-status/index.js +18 -10
  349. package/src/components/post-taxonomies/flat-term-selector.js +19 -5
  350. package/src/components/post-taxonomies/index.js +8 -1
  351. package/src/components/post-template/block-theme.js +5 -1
  352. package/src/components/post-template/classic-theme.js +8 -3
  353. package/src/components/post-template/create-new-template.js +4 -1
  354. package/src/components/post-template/hooks.js +8 -2
  355. package/src/components/post-template/panel.js +10 -2
  356. package/src/components/post-trash/check.js +9 -5
  357. package/src/components/post-url/panel.js +7 -2
  358. package/src/components/posts-per-page/index.js +7 -2
  359. package/src/components/provider/use-block-editor-settings.js +15 -6
  360. package/src/components/save-publish-panels/index.js +1 -4
  361. package/src/components/sidebar/index.js +2 -5
  362. package/src/components/site-discussion/index.js +9 -4
  363. package/src/components/template-content-panel/index.js +3 -2
  364. package/src/components/visual-editor/edit-template-blocks-notification.js +5 -1
  365. package/src/components/visual-editor/index.js +5 -2
  366. package/src/components/visual-editor/style.scss +0 -1
  367. package/src/{hooks → components/visual-editor}/use-select-nearest-editable-block.js +1 -1
  368. package/src/dataviews/actions/delete-post.tsx +2 -0
  369. package/src/hooks/pattern-overrides.js +1 -1
  370. package/src/index.js +0 -1
  371. package/src/private-apis.js +6 -0
  372. package/src/store/test/actions.js +9 -3
  373. package/src/utils/media-upload/index.js +38 -3
  374. package/tsconfig.tsbuildinfo +1 -1
  375. package/build/bindings/index.js +0 -22
  376. package/build/bindings/index.js.map +0 -1
  377. package/build/hooks/use-select-nearest-editable-block.js.map +0 -1
  378. package/build/store/utils/get-filtered-template-parts.js +0 -71
  379. package/build/store/utils/get-filtered-template-parts.js.map +0 -1
  380. package/build/utils/set-nested-value.js +0 -44
  381. package/build/utils/set-nested-value.js.map +0 -1
  382. package/build-module/bindings/index.js +0 -17
  383. package/build-module/bindings/index.js.map +0 -1
  384. package/build-module/hooks/use-select-nearest-editable-block.js.map +0 -1
  385. package/build-module/store/utils/get-filtered-template-parts.js +0 -64
  386. package/build-module/store/utils/get-filtered-template-parts.js.map +0 -1
  387. package/build-module/utils/set-nested-value.js +0 -38
  388. package/build-module/utils/set-nested-value.js.map +0 -1
  389. package/build-types/bindings/index.d.ts +0 -2
  390. package/build-types/bindings/index.d.ts.map +0 -1
  391. package/build-types/hooks/use-select-nearest-editable-block.d.ts.map +0 -1
  392. package/build-types/store/utils/get-filtered-template-parts.d.ts +0 -3
  393. package/build-types/store/utils/get-filtered-template-parts.d.ts.map +0 -1
  394. package/build-types/utils/set-nested-value.d.ts +0 -20
  395. package/build-types/utils/set-nested-value.d.ts.map +0 -1
  396. package/src/bindings/index.js +0 -15
  397. package/src/store/utils/get-filtered-template-parts.js +0 -69
  398. package/src/store/utils/test/get-filtered-template-parts.js +0 -189
  399. package/src/utils/set-nested-value.js +0 -39
  400. /package/build-types/{hooks → components/visual-editor}/use-select-nearest-editable-block.d.ts +0 -0
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = void 0;
6
+ exports.useHasBackButton = exports.default = void 0;
7
7
  var _components = require("@wordpress/components");
8
8
  var _jsxRuntime = require("react/jsx-runtime");
9
9
  /**
@@ -12,19 +12,18 @@ var _jsxRuntime = require("react/jsx-runtime");
12
12
 
13
13
  // Keeping an old name for backward compatibility.
14
14
  const slotName = '__experimentalMainDashboardButton';
15
+ const useHasBackButton = () => {
16
+ const fills = (0, _components.__experimentalUseSlotFills)(slotName);
17
+ return Boolean(fills && fills.length);
18
+ };
19
+ exports.useHasBackButton = useHasBackButton;
15
20
  const {
16
21
  Fill,
17
22
  Slot
18
23
  } = (0, _components.createSlotFill)(slotName);
19
24
  const BackButton = Fill;
20
- const BackButtonSlot = ({
21
- children
22
- }) => {
25
+ const BackButtonSlot = () => {
23
26
  const fills = (0, _components.__experimentalUseSlotFills)(slotName);
24
- const hasFills = Boolean(fills && fills.length);
25
- if (!hasFills) {
26
- return children;
27
- }
28
27
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(Slot, {
29
28
  bubblesVirtually: true,
30
29
  fillProps: {
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_jsxRuntime","slotName","Fill","Slot","createSlotFill","BackButton","BackButtonSlot","children","fills","useSlotFills","hasFills","Boolean","length","jsx","bubblesVirtually","fillProps","_default","exports","default"],"sources":["@wordpress/editor/src/components/header/back-button.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalUseSlotFills as useSlotFills,\n\tcreateSlotFill,\n} from '@wordpress/components';\n\n// Keeping an old name for backward compatibility.\nconst slotName = '__experimentalMainDashboardButton';\n\nconst { Fill, Slot } = createSlotFill( slotName );\n\nconst BackButton = Fill;\nconst BackButtonSlot = ( { children } ) => {\n\tconst fills = useSlotFills( slotName );\n\tconst hasFills = Boolean( fills && fills.length );\n\n\tif ( ! hasFills ) {\n\t\treturn children;\n\t}\n\n\treturn (\n\t\t<Slot\n\t\t\tbubblesVirtually\n\t\t\tfillProps={ { length: ! fills ? 0 : fills.length } }\n\t\t/>\n\t);\n};\nBackButton.Slot = BackButtonSlot;\n\nexport default BackButton;\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAG+B,IAAAC,WAAA,GAAAD,OAAA;AAN/B;AACA;AACA;;AAMA;AACA,MAAME,QAAQ,GAAG,mCAAmC;AAEpD,MAAM;EAAEC,IAAI;EAAEC;AAAK,CAAC,GAAG,IAAAC,0BAAc,EAAEH,QAAS,CAAC;AAEjD,MAAMI,UAAU,GAAGH,IAAI;AACvB,MAAMI,cAAc,GAAGA,CAAE;EAAEC;AAAS,CAAC,KAAM;EAC1C,MAAMC,KAAK,GAAG,IAAAC,sCAAY,EAAER,QAAS,CAAC;EACtC,MAAMS,QAAQ,GAAGC,OAAO,CAAEH,KAAK,IAAIA,KAAK,CAACI,MAAO,CAAC;EAEjD,IAAK,CAAEF,QAAQ,EAAG;IACjB,OAAOH,QAAQ;EAChB;EAEA,oBACC,IAAAP,WAAA,CAAAa,GAAA,EAACV,IAAI;IACJW,gBAAgB;IAChBC,SAAS,EAAG;MAAEH,MAAM,EAAE,CAAEJ,KAAK,GAAG,CAAC,GAAGA,KAAK,CAACI;IAAO;EAAG,CACpD,CAAC;AAEJ,CAAC;AACDP,UAAU,CAACF,IAAI,GAAGG,cAAc;AAAC,IAAAU,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAElBb,UAAU","ignoreList":[]}
1
+ {"version":3,"names":["_components","require","_jsxRuntime","slotName","useHasBackButton","fills","useSlotFills","Boolean","length","exports","Fill","Slot","createSlotFill","BackButton","BackButtonSlot","jsx","bubblesVirtually","fillProps","_default","default"],"sources":["@wordpress/editor/src/components/header/back-button.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalUseSlotFills as useSlotFills,\n\tcreateSlotFill,\n} from '@wordpress/components';\n\n// Keeping an old name for backward compatibility.\nconst slotName = '__experimentalMainDashboardButton';\n\nexport const useHasBackButton = () => {\n\tconst fills = useSlotFills( slotName );\n\treturn Boolean( fills && fills.length );\n};\n\nconst { Fill, Slot } = createSlotFill( slotName );\n\nconst BackButton = Fill;\nconst BackButtonSlot = () => {\n\tconst fills = useSlotFills( slotName );\n\n\treturn (\n\t\t<Slot\n\t\t\tbubblesVirtually\n\t\t\tfillProps={ { length: ! fills ? 0 : fills.length } }\n\t\t/>\n\t);\n};\nBackButton.Slot = BackButtonSlot;\n\nexport default BackButton;\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAG+B,IAAAC,WAAA,GAAAD,OAAA;AAN/B;AACA;AACA;;AAMA;AACA,MAAME,QAAQ,GAAG,mCAAmC;AAE7C,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;EACrC,MAAMC,KAAK,GAAG,IAAAC,sCAAY,EAAEH,QAAS,CAAC;EACtC,OAAOI,OAAO,CAAEF,KAAK,IAAIA,KAAK,CAACG,MAAO,CAAC;AACxC,CAAC;AAACC,OAAA,CAAAL,gBAAA,GAAAA,gBAAA;AAEF,MAAM;EAAEM,IAAI;EAAEC;AAAK,CAAC,GAAG,IAAAC,0BAAc,EAAET,QAAS,CAAC;AAEjD,MAAMU,UAAU,GAAGH,IAAI;AACvB,MAAMI,cAAc,GAAGA,CAAA,KAAM;EAC5B,MAAMT,KAAK,GAAG,IAAAC,sCAAY,EAAEH,QAAS,CAAC;EAEtC,oBACC,IAAAD,WAAA,CAAAa,GAAA,EAACJ,IAAI;IACJK,gBAAgB;IAChBC,SAAS,EAAG;MAAET,MAAM,EAAE,CAAEH,KAAK,GAAG,CAAC,GAAGA,KAAK,CAACG;IAAO;EAAG,CACpD,CAAC;AAEJ,CAAC;AACDK,UAAU,CAACF,IAAI,GAAGG,cAAc;AAAC,IAAAI,QAAA,GAAAT,OAAA,CAAAU,OAAA,GAElBN,UAAU","ignoreList":[]}
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
- var _clsx = _interopRequireDefault(require("clsx"));
9
8
  var _data = require("@wordpress/data");
10
9
  var _compose = require("@wordpress/compose");
11
10
  var _components = require("@wordpress/components");
@@ -13,7 +12,7 @@ var _preferences = require("@wordpress/preferences");
13
12
  var _element = require("@wordpress/element");
14
13
  var _interface = require("@wordpress/interface");
15
14
  var _blockEditor = require("@wordpress/block-editor");
16
- var _backButton = _interopRequireDefault(require("./back-button"));
15
+ var _backButton = _interopRequireWildcard(require("./back-button"));
17
16
  var _collapsibleBlockToolbar = _interopRequireDefault(require("../collapsible-block-toolbar"));
18
17
  var _documentBar = _interopRequireDefault(require("../document-bar"));
19
18
  var _documentTools = _interopRequireDefault(require("../document-tools"));
@@ -25,10 +24,8 @@ var _postViewLink = _interopRequireDefault(require("../post-view-link"));
25
24
  var _previewDropdown = _interopRequireDefault(require("../preview-dropdown"));
26
25
  var _store = require("../../store");
27
26
  var _jsxRuntime = require("react/jsx-runtime");
28
- /**
29
- * External dependencies
30
- */
31
-
27
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
28
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
32
29
  /**
33
30
  * WordPress dependencies
34
31
  */
@@ -81,6 +78,7 @@ function Header({
81
78
  }) {
82
79
  const isWideViewport = (0, _compose.useViewportMatch)('large');
83
80
  const isLargeViewport = (0, _compose.useViewportMatch)('medium');
81
+ const isTooNarrowForDocumentBar = (0, _compose.useMediaQuery)('(max-width: 403px)');
84
82
  const {
85
83
  isTextEditor,
86
84
  isPublishSidebarOpened,
@@ -109,14 +107,16 @@ function Header({
109
107
  isZoomedOutView: __unstableGetEditorMode() === 'zoom-out'
110
108
  };
111
109
  }, []);
112
- const hasTopToolbar = isLargeViewport && hasFixedToolbar;
113
110
  const [isBlockToolsCollapsed, setIsBlockToolsCollapsed] = (0, _element.useState)(true);
111
+ const hasCenter = isBlockToolsCollapsed && !isTooNarrowForDocumentBar;
112
+ const hasBackButton = (0, _backButton.useHasBackButton)();
114
113
 
115
114
  // The edit-post-header classname is only kept for backward compatibilty
116
115
  // as some plugins might be relying on its presence.
117
116
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
118
117
  className: "editor-header edit-post-header",
119
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__unstableMotion.div, {
118
+ children: [hasBackButton && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__unstableMotion.div, {
119
+ className: "editor-header__back-button",
120
120
  variants: backButtonVariations,
121
121
  transition: {
122
122
  type: 'tween'
@@ -130,18 +130,20 @@ function Header({
130
130
  },
131
131
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_documentTools.default, {
132
132
  disableBlockTools: forceDisableBlockTools || isTextEditor
133
- }), hasTopToolbar && /*#__PURE__*/(0, _jsxRuntime.jsx)(_collapsibleBlockToolbar.default, {
133
+ }), hasFixedToolbar && isLargeViewport && /*#__PURE__*/(0, _jsxRuntime.jsx)(_collapsibleBlockToolbar.default, {
134
134
  isCollapsed: isBlockToolsCollapsed,
135
135
  onToggle: setIsBlockToolsCollapsed
136
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
137
- className: (0, _clsx.default)('editor-header__center', {
138
- 'is-collapsed': !isBlockToolsCollapsed && hasTopToolbar
139
- }),
140
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_documentBar.default, {
141
- title: title,
142
- icon: icon
143
- })
144
136
  })]
137
+ }), hasCenter && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__unstableMotion.div, {
138
+ className: "editor-header__center",
139
+ variants: toolbarVariations,
140
+ transition: {
141
+ type: 'tween'
142
+ },
143
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_documentBar.default, {
144
+ title: title,
145
+ icon: icon
146
+ })
145
147
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__unstableMotion.div, {
146
148
  variants: toolbarVariations,
147
149
  transition: {
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_data","_compose","_components","_preferences","_element","_interface","_blockEditor","_backButton","_collapsibleBlockToolbar","_documentBar","_documentTools","_moreMenu","_postPreviewButton","_postPublishButtonOrToggle","_postSavedState","_postViewLink","_previewDropdown","_store","_jsxRuntime","toolbarVariations","distractionFreeDisabled","y","distractionFreeHover","distractionFreeHidden","visible","hidden","backButtonVariations","x","Header","customSaveButton","forceIsDirty","forceDisableBlockTools","setEntitiesSavedStatesCallback","title","icon","isWideViewport","useViewportMatch","isLargeViewport","isTextEditor","isPublishSidebarOpened","showIconLabels","hasFixedToolbar","isNestedEntity","isZoomedOutView","useSelect","select","get","getPreference","preferencesStore","getEditorMode","getEditorSettings","_isPublishSidebarOpened","editorStore","__unstableGetEditorMode","blockEditorStore","onNavigateToPreviousEntityRecord","hasTopToolbar","isBlockToolsCollapsed","setIsBlockToolsCollapsed","useState","jsxs","className","children","jsx","__unstableMotion","div","variants","transition","type","default","Slot","disableBlockTools","isCollapsed","onToggle","clsx","forceIsAutosaveable","disabled","PinnedItems","scope","_default","exports"],"sources":["@wordpress/editor/src/components/header/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { __unstableMotion as motion } from '@wordpress/components';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { useState } from '@wordpress/element';\nimport { PinnedItems } from '@wordpress/interface';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport BackButton from './back-button';\nimport CollapsableBlockToolbar from '../collapsible-block-toolbar';\nimport DocumentBar from '../document-bar';\nimport DocumentTools from '../document-tools';\nimport MoreMenu from '../more-menu';\nimport PostPreviewButton from '../post-preview-button';\nimport PostPublishButtonOrToggle from '../post-publish-button/post-publish-button-or-toggle';\nimport PostSavedState from '../post-saved-state';\nimport PostViewLink from '../post-view-link';\nimport PreviewDropdown from '../preview-dropdown';\nimport { store as editorStore } from '../../store';\n\nconst toolbarVariations = {\n\tdistractionFreeDisabled: { y: '-50px' },\n\tdistractionFreeHover: { y: 0 },\n\tdistractionFreeHidden: { y: '-50px' },\n\tvisible: { y: 0 },\n\thidden: { y: 0 },\n};\n\nconst backButtonVariations = {\n\tdistractionFreeDisabled: { x: '-100%' },\n\tdistractionFreeHover: { x: 0 },\n\tdistractionFreeHidden: { x: '-100%' },\n\tvisible: { x: 0 },\n\thidden: { x: 0 },\n};\n\nfunction Header( {\n\tcustomSaveButton,\n\tforceIsDirty,\n\tforceDisableBlockTools,\n\tsetEntitiesSavedStatesCallback,\n\ttitle,\n\ticon,\n} ) {\n\tconst isWideViewport = useViewportMatch( 'large' );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst {\n\t\tisTextEditor,\n\t\tisPublishSidebarOpened,\n\t\tshowIconLabels,\n\t\thasFixedToolbar,\n\t\tisNestedEntity,\n\t\tisZoomedOutView,\n\t} = useSelect( ( select ) => {\n\t\tconst { get: getPreference } = select( preferencesStore );\n\t\tconst {\n\t\t\tgetEditorMode,\n\t\t\tgetEditorSettings,\n\t\t\tisPublishSidebarOpened: _isPublishSidebarOpened,\n\t\t} = select( editorStore );\n\t\tconst { __unstableGetEditorMode } = select( blockEditorStore );\n\n\t\treturn {\n\t\t\tisTextEditor: getEditorMode() === 'text',\n\t\t\tisPublishSidebarOpened: _isPublishSidebarOpened(),\n\t\t\tshowIconLabels: getPreference( 'core', 'showIconLabels' ),\n\t\t\thasFixedToolbar: getPreference( 'core', 'fixedToolbar' ),\n\t\t\tisNestedEntity:\n\t\t\t\t!! getEditorSettings().onNavigateToPreviousEntityRecord,\n\t\t\tisZoomedOutView: __unstableGetEditorMode() === 'zoom-out',\n\t\t};\n\t}, [] );\n\n\tconst hasTopToolbar = isLargeViewport && hasFixedToolbar;\n\n\tconst [ isBlockToolsCollapsed, setIsBlockToolsCollapsed ] =\n\t\tuseState( true );\n\n\t// The edit-post-header classname is only kept for backward compatibilty\n\t// as some plugins might be relying on its presence.\n\treturn (\n\t\t<div className=\"editor-header edit-post-header\">\n\t\t\t<motion.div\n\t\t\t\tvariants={ backButtonVariations }\n\t\t\t\ttransition={ { type: 'tween' } }\n\t\t\t>\n\t\t\t\t<BackButton.Slot />\n\t\t\t</motion.div>\n\t\t\t<motion.div\n\t\t\t\tvariants={ toolbarVariations }\n\t\t\t\tclassName=\"editor-header__toolbar\"\n\t\t\t\ttransition={ { type: 'tween' } }\n\t\t\t>\n\t\t\t\t<DocumentTools\n\t\t\t\t\tdisableBlockTools={ forceDisableBlockTools || isTextEditor }\n\t\t\t\t/>\n\t\t\t\t{ hasTopToolbar && (\n\t\t\t\t\t<CollapsableBlockToolbar\n\t\t\t\t\t\tisCollapsed={ isBlockToolsCollapsed }\n\t\t\t\t\t\tonToggle={ setIsBlockToolsCollapsed }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx( 'editor-header__center', {\n\t\t\t\t\t\t'is-collapsed':\n\t\t\t\t\t\t\t! isBlockToolsCollapsed && hasTopToolbar,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<DocumentBar title={ title } icon={ icon } />\n\t\t\t\t</div>\n\t\t\t</motion.div>\n\t\t\t<motion.div\n\t\t\t\tvariants={ toolbarVariations }\n\t\t\t\ttransition={ { type: 'tween' } }\n\t\t\t\tclassName=\"editor-header__settings\"\n\t\t\t>\n\t\t\t\t{ ! customSaveButton && ! isPublishSidebarOpened && (\n\t\t\t\t\t// This button isn't completely hidden by the publish sidebar.\n\t\t\t\t\t// We can't hide the whole toolbar when the publish sidebar is open because\n\t\t\t\t\t// we want to prevent mounting/unmounting the PostPublishButtonOrToggle DOM node.\n\t\t\t\t\t// We track that DOM node to return focus to the PostPublishButtonOrToggle\n\t\t\t\t\t// when the publish sidebar has been closed.\n\t\t\t\t\t<PostSavedState forceIsDirty={ forceIsDirty } />\n\t\t\t\t) }\n\t\t\t\t<PreviewDropdown\n\t\t\t\t\tforceIsAutosaveable={ forceIsDirty }\n\t\t\t\t\tdisabled={ isNestedEntity || isZoomedOutView }\n\t\t\t\t/>\n\t\t\t\t<PostPreviewButton\n\t\t\t\t\tclassName=\"editor-header__post-preview-button\"\n\t\t\t\t\tforceIsAutosaveable={ forceIsDirty }\n\t\t\t\t/>\n\t\t\t\t<PostViewLink />\n\t\t\t\t{ ! customSaveButton && (\n\t\t\t\t\t<PostPublishButtonOrToggle\n\t\t\t\t\t\tforceIsDirty={ forceIsDirty }\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ customSaveButton }\n\t\t\t\t{ ( isWideViewport || ! showIconLabels ) && (\n\t\t\t\t\t<PinnedItems.Slot scope=\"core\" />\n\t\t\t\t) }\n\t\t\t\t<MoreMenu />\n\t\t\t</motion.div>\n\t\t</div>\n\t);\n}\n\nexport default Header;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_data","require","_compose","_components","_preferences","_element","_interface","_blockEditor","_backButton","_interopRequireWildcard","_collapsibleBlockToolbar","_interopRequireDefault","_documentBar","_documentTools","_moreMenu","_postPreviewButton","_postPublishButtonOrToggle","_postSavedState","_postViewLink","_previewDropdown","_store","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","toolbarVariations","distractionFreeDisabled","y","distractionFreeHover","distractionFreeHidden","visible","hidden","backButtonVariations","x","Header","customSaveButton","forceIsDirty","forceDisableBlockTools","setEntitiesSavedStatesCallback","title","icon","isWideViewport","useViewportMatch","isLargeViewport","isTooNarrowForDocumentBar","useMediaQuery","isTextEditor","isPublishSidebarOpened","showIconLabels","hasFixedToolbar","isNestedEntity","isZoomedOutView","useSelect","select","getPreference","preferencesStore","getEditorMode","getEditorSettings","_isPublishSidebarOpened","editorStore","__unstableGetEditorMode","blockEditorStore","onNavigateToPreviousEntityRecord","isBlockToolsCollapsed","setIsBlockToolsCollapsed","useState","hasCenter","hasBackButton","useHasBackButton","jsxs","className","children","jsx","__unstableMotion","div","variants","transition","type","Slot","disableBlockTools","isCollapsed","onToggle","forceIsAutosaveable","disabled","PinnedItems","scope","_default","exports"],"sources":["@wordpress/editor/src/components/header/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useMediaQuery, useViewportMatch } from '@wordpress/compose';\nimport { __unstableMotion as motion } from '@wordpress/components';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { useState } from '@wordpress/element';\nimport { PinnedItems } from '@wordpress/interface';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport BackButton, { useHasBackButton } from './back-button';\nimport CollapsibleBlockToolbar from '../collapsible-block-toolbar';\nimport DocumentBar from '../document-bar';\nimport DocumentTools from '../document-tools';\nimport MoreMenu from '../more-menu';\nimport PostPreviewButton from '../post-preview-button';\nimport PostPublishButtonOrToggle from '../post-publish-button/post-publish-button-or-toggle';\nimport PostSavedState from '../post-saved-state';\nimport PostViewLink from '../post-view-link';\nimport PreviewDropdown from '../preview-dropdown';\nimport { store as editorStore } from '../../store';\n\nconst toolbarVariations = {\n\tdistractionFreeDisabled: { y: '-50px' },\n\tdistractionFreeHover: { y: 0 },\n\tdistractionFreeHidden: { y: '-50px' },\n\tvisible: { y: 0 },\n\thidden: { y: 0 },\n};\n\nconst backButtonVariations = {\n\tdistractionFreeDisabled: { x: '-100%' },\n\tdistractionFreeHover: { x: 0 },\n\tdistractionFreeHidden: { x: '-100%' },\n\tvisible: { x: 0 },\n\thidden: { x: 0 },\n};\n\nfunction Header( {\n\tcustomSaveButton,\n\tforceIsDirty,\n\tforceDisableBlockTools,\n\tsetEntitiesSavedStatesCallback,\n\ttitle,\n\ticon,\n} ) {\n\tconst isWideViewport = useViewportMatch( 'large' );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isTooNarrowForDocumentBar = useMediaQuery( '(max-width: 403px)' );\n\tconst {\n\t\tisTextEditor,\n\t\tisPublishSidebarOpened,\n\t\tshowIconLabels,\n\t\thasFixedToolbar,\n\t\tisNestedEntity,\n\t\tisZoomedOutView,\n\t} = useSelect( ( select ) => {\n\t\tconst { get: getPreference } = select( preferencesStore );\n\t\tconst {\n\t\t\tgetEditorMode,\n\t\t\tgetEditorSettings,\n\t\t\tisPublishSidebarOpened: _isPublishSidebarOpened,\n\t\t} = select( editorStore );\n\t\tconst { __unstableGetEditorMode } = select( blockEditorStore );\n\n\t\treturn {\n\t\t\tisTextEditor: getEditorMode() === 'text',\n\t\t\tisPublishSidebarOpened: _isPublishSidebarOpened(),\n\t\t\tshowIconLabels: getPreference( 'core', 'showIconLabels' ),\n\t\t\thasFixedToolbar: getPreference( 'core', 'fixedToolbar' ),\n\t\t\tisNestedEntity:\n\t\t\t\t!! getEditorSettings().onNavigateToPreviousEntityRecord,\n\t\t\tisZoomedOutView: __unstableGetEditorMode() === 'zoom-out',\n\t\t};\n\t}, [] );\n\n\tconst [ isBlockToolsCollapsed, setIsBlockToolsCollapsed ] =\n\t\tuseState( true );\n\n\tconst hasCenter = isBlockToolsCollapsed && ! isTooNarrowForDocumentBar;\n\tconst hasBackButton = useHasBackButton();\n\n\t// The edit-post-header classname is only kept for backward compatibilty\n\t// as some plugins might be relying on its presence.\n\treturn (\n\t\t<div className=\"editor-header edit-post-header\">\n\t\t\t{ hasBackButton && (\n\t\t\t\t<motion.div\n\t\t\t\t\tclassName=\"editor-header__back-button\"\n\t\t\t\t\tvariants={ backButtonVariations }\n\t\t\t\t\ttransition={ { type: 'tween' } }\n\t\t\t\t>\n\t\t\t\t\t<BackButton.Slot />\n\t\t\t\t</motion.div>\n\t\t\t) }\n\t\t\t<motion.div\n\t\t\t\tvariants={ toolbarVariations }\n\t\t\t\tclassName=\"editor-header__toolbar\"\n\t\t\t\ttransition={ { type: 'tween' } }\n\t\t\t>\n\t\t\t\t<DocumentTools\n\t\t\t\t\tdisableBlockTools={ forceDisableBlockTools || isTextEditor }\n\t\t\t\t/>\n\t\t\t\t{ hasFixedToolbar && isLargeViewport && (\n\t\t\t\t\t<CollapsibleBlockToolbar\n\t\t\t\t\t\tisCollapsed={ isBlockToolsCollapsed }\n\t\t\t\t\t\tonToggle={ setIsBlockToolsCollapsed }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</motion.div>\n\t\t\t{ hasCenter && (\n\t\t\t\t<motion.div\n\t\t\t\t\tclassName=\"editor-header__center\"\n\t\t\t\t\tvariants={ toolbarVariations }\n\t\t\t\t\ttransition={ { type: 'tween' } }\n\t\t\t\t>\n\t\t\t\t\t<DocumentBar title={ title } icon={ icon } />\n\t\t\t\t</motion.div>\n\t\t\t) }\n\t\t\t<motion.div\n\t\t\t\tvariants={ toolbarVariations }\n\t\t\t\ttransition={ { type: 'tween' } }\n\t\t\t\tclassName=\"editor-header__settings\"\n\t\t\t>\n\t\t\t\t{ ! customSaveButton && ! isPublishSidebarOpened && (\n\t\t\t\t\t// This button isn't completely hidden by the publish sidebar.\n\t\t\t\t\t// We can't hide the whole toolbar when the publish sidebar is open because\n\t\t\t\t\t// we want to prevent mounting/unmounting the PostPublishButtonOrToggle DOM node.\n\t\t\t\t\t// We track that DOM node to return focus to the PostPublishButtonOrToggle\n\t\t\t\t\t// when the publish sidebar has been closed.\n\t\t\t\t\t<PostSavedState forceIsDirty={ forceIsDirty } />\n\t\t\t\t) }\n\t\t\t\t<PreviewDropdown\n\t\t\t\t\tforceIsAutosaveable={ forceIsDirty }\n\t\t\t\t\tdisabled={ isNestedEntity || isZoomedOutView }\n\t\t\t\t/>\n\t\t\t\t<PostPreviewButton\n\t\t\t\t\tclassName=\"editor-header__post-preview-button\"\n\t\t\t\t\tforceIsAutosaveable={ forceIsDirty }\n\t\t\t\t/>\n\t\t\t\t<PostViewLink />\n\t\t\t\t{ ! customSaveButton && (\n\t\t\t\t\t<PostPublishButtonOrToggle\n\t\t\t\t\t\tforceIsDirty={ forceIsDirty }\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ customSaveButton }\n\t\t\t\t{ ( isWideViewport || ! showIconLabels ) && (\n\t\t\t\t\t<PinnedItems.Slot scope=\"core\" />\n\t\t\t\t) }\n\t\t\t\t<MoreMenu />\n\t\t\t</motion.div>\n\t\t</div>\n\t);\n}\n\nexport default Header;\n"],"mappings":"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","ignoreList":[]}
@@ -4,14 +4,11 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.OrderRow = OrderRow;
8
7
  exports.default = PageAttributesOrderWithChecks;
9
8
  var _i18n = require("@wordpress/i18n");
10
9
  var _components = require("@wordpress/components");
11
10
  var _data = require("@wordpress/data");
12
11
  var _element = require("@wordpress/element");
13
- var _blockEditor = require("@wordpress/block-editor");
14
- var _postPanelRow = _interopRequireDefault(require("../post-panel-row"));
15
12
  var _postTypeSupportCheck = _interopRequireDefault(require("../post-type-support-check"));
16
13
  var _store = require("../../store");
17
14
  var _jsxRuntime = require("react/jsx-runtime");
@@ -62,6 +59,7 @@ function PageAttributesOrder() {
62
59
  /**
63
60
  * Renders the Page Attributes Order component. A number input in an editor interface
64
61
  * for setting the order of a given page.
62
+ * The component is now not used in core but was kept for backward compatibility.
65
63
  *
66
64
  * @return {Component} The component to be rendered.
67
65
  */
@@ -71,68 +69,4 @@ function PageAttributesOrderWithChecks() {
71
69
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(PageAttributesOrder, {})
72
70
  });
73
71
  }
74
- function PostOrderToggle({
75
- isOpen,
76
- onClick
77
- }) {
78
- const order = (0, _data.useSelect)(select => {
79
- var _select$getEditedPost2;
80
- return (_select$getEditedPost2 = select(_store.store).getEditedPostAttribute('menu_order')) !== null && _select$getEditedPost2 !== void 0 ? _select$getEditedPost2 : 0;
81
- }, []);
82
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
83
- size: "compact",
84
- className: "editor-post-order__panel-toggle",
85
- variant: "tertiary",
86
- "aria-expanded": isOpen
87
- // translators: %s: Current post parent.
88
- ,
89
- "aria-label": (0, _i18n.sprintf)((0, _i18n.__)('Change order: %s'), order),
90
- onClick: onClick,
91
- children: order
92
- });
93
- }
94
- function OrderRow() {
95
- // Use internal state instead of a ref to make sure that the component
96
- // re-renders when the popover's anchor updates.
97
- const [popoverAnchor, setPopoverAnchor] = (0, _element.useState)(null);
98
- // Memoize popoverProps to avoid returning a new object every time.
99
- const popoverProps = (0, _element.useMemo)(() => ({
100
- // Anchor the popover to the middle of the entire row so that it doesn't
101
- // move around when the label changes.
102
- anchor: popoverAnchor,
103
- placement: 'left-start',
104
- offset: 36,
105
- shift: true
106
- }), [popoverAnchor]);
107
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_postPanelRow.default, {
108
- label: (0, _i18n.__)('Order'),
109
- ref: setPopoverAnchor,
110
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Dropdown, {
111
- popoverProps: popoverProps,
112
- className: "editor-post-order__panel-dropdown",
113
- contentClassName: "editor-post-order__panel-dialog",
114
- focusOnMount: true,
115
- renderToggle: ({
116
- isOpen,
117
- onToggle
118
- }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(PostOrderToggle, {
119
- isOpen: isOpen,
120
- onClick: onToggle
121
- }),
122
- renderContent: ({
123
- onClose
124
- }) => /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
125
- className: "editor-post-order",
126
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.__experimentalInspectorPopoverHeader, {
127
- title: (0, _i18n.__)('Order'),
128
- onClose: onClose
129
- }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
130
- children: [(0, _i18n.__)('This attribute determines the order of pages in the Pages List block.'), /*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
131
- children: (0, _i18n.__)('Pages with the same order value will sorted alphabetically. Negative order values are also supported.')
132
- })]
133
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(PageAttributesOrder, {})]
134
- })
135
- })
136
- });
137
- }
138
72
  //# sourceMappingURL=order.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_components","_data","_element","_blockEditor","_postPanelRow","_interopRequireDefault","_postTypeSupportCheck","_store","_jsxRuntime","PageAttributesOrder","order","useSelect","select","_select$getEditedPost","editorStore","getEditedPostAttribute","editPost","useDispatch","orderInput","setOrderInput","useState","setUpdatedOrder","value","newOrder","Number","isInteger","trim","menu_order","jsx","Flex","children","FlexBlock","__experimentalNumberControl","__next40pxDefaultSize","label","__","help","onChange","hideLabelFromVision","onBlur","PageAttributesOrderWithChecks","default","supportKeys","PostOrderToggle","isOpen","onClick","_select$getEditedPost2","Button","size","className","variant","sprintf","OrderRow","popoverAnchor","setPopoverAnchor","popoverProps","useMemo","anchor","placement","offset","shift","ref","Dropdown","contentClassName","focusOnMount","renderToggle","onToggle","renderContent","onClose","jsxs","__experimentalInspectorPopoverHeader","title"],"sources":["@wordpress/editor/src/components/page-attributes/order.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tButton,\n\tDropdown,\n\tFlex,\n\tFlexBlock,\n\t__experimentalNumberControl as NumberControl,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useState, useMemo } from '@wordpress/element';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport PostPanelRow from '../post-panel-row';\nimport PostTypeSupportCheck from '../post-type-support-check';\nimport { store as editorStore } from '../../store';\n\nfunction PageAttributesOrder() {\n\tconst order = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).getEditedPostAttribute( 'menu_order' ) ?? 0,\n\t\t[]\n\t);\n\tconst { editPost } = useDispatch( editorStore );\n\tconst [ orderInput, setOrderInput ] = useState( null );\n\n\tconst setUpdatedOrder = ( value ) => {\n\t\tsetOrderInput( value );\n\t\tconst newOrder = Number( value );\n\t\tif ( Number.isInteger( newOrder ) && value.trim?.() !== '' ) {\n\t\t\teditPost( { menu_order: newOrder } );\n\t\t}\n\t};\n\n\tconst value = orderInput ?? order;\n\n\treturn (\n\t\t<Flex>\n\t\t\t<FlexBlock>\n\t\t\t\t<NumberControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'Order' ) }\n\t\t\t\t\thelp={ __( 'Set the page order.' ) }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ setUpdatedOrder }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\tonBlur={ () => {\n\t\t\t\t\t\tsetOrderInput( null );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</FlexBlock>\n\t\t</Flex>\n\t);\n}\n\n/**\n * Renders the Page Attributes Order component. A number input in an editor interface\n * for setting the order of a given page.\n *\n * @return {Component} The component to be rendered.\n */\nexport default function PageAttributesOrderWithChecks() {\n\treturn (\n\t\t<PostTypeSupportCheck supportKeys=\"page-attributes\">\n\t\t\t<PageAttributesOrder />\n\t\t</PostTypeSupportCheck>\n\t);\n}\n\nfunction PostOrderToggle( { isOpen, onClick } ) {\n\tconst order = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).getEditedPostAttribute( 'menu_order' ) ?? 0,\n\t\t[]\n\t);\n\treturn (\n\t\t<Button\n\t\t\tsize=\"compact\"\n\t\t\tclassName=\"editor-post-order__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 order: %s' ), order ) }\n\t\t\tonClick={ onClick }\n\t\t>\n\t\t\t{ order }\n\t\t</Button>\n\t);\n}\n\nexport function OrderRow() {\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={ __( 'Order' ) } ref={ setPopoverAnchor }>\n\t\t\t<Dropdown\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tclassName=\"editor-post-order__panel-dropdown\"\n\t\t\t\tcontentClassName=\"editor-post-order__panel-dialog\"\n\t\t\t\tfocusOnMount\n\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t<PostOrderToggle 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-order\">\n\t\t\t\t\t\t<InspectorPopoverHeader\n\t\t\t\t\t\t\ttitle={ __( 'Order' ) }\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{ __(\n\t\t\t\t\t\t\t\t'This attribute determines the order of pages in the Pages List block.'\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{ __(\n\t\t\t\t\t\t\t\t\t'Pages with the same order value will sorted alphabetically. Negative order values are also supported.'\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<PageAttributesOrder />\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</PostPanelRow>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_components","_data","_element","_postTypeSupportCheck","_interopRequireDefault","_store","_jsxRuntime","PageAttributesOrder","order","useSelect","select","_select$getEditedPost","editorStore","getEditedPostAttribute","editPost","useDispatch","orderInput","setOrderInput","useState","setUpdatedOrder","value","newOrder","Number","isInteger","trim","menu_order","jsx","Flex","children","FlexBlock","__experimentalNumberControl","__next40pxDefaultSize","label","__","help","onChange","hideLabelFromVision","onBlur","PageAttributesOrderWithChecks","default","supportKeys"],"sources":["@wordpress/editor/src/components/page-attributes/order.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tFlex,\n\tFlexBlock,\n\t__experimentalNumberControl as NumberControl,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport PostTypeSupportCheck from '../post-type-support-check';\nimport { store as editorStore } from '../../store';\n\nfunction PageAttributesOrder() {\n\tconst order = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).getEditedPostAttribute( 'menu_order' ) ?? 0,\n\t\t[]\n\t);\n\tconst { editPost } = useDispatch( editorStore );\n\tconst [ orderInput, setOrderInput ] = useState( null );\n\n\tconst setUpdatedOrder = ( value ) => {\n\t\tsetOrderInput( value );\n\t\tconst newOrder = Number( value );\n\t\tif ( Number.isInteger( newOrder ) && value.trim?.() !== '' ) {\n\t\t\teditPost( { menu_order: newOrder } );\n\t\t}\n\t};\n\n\tconst value = orderInput ?? order;\n\n\treturn (\n\t\t<Flex>\n\t\t\t<FlexBlock>\n\t\t\t\t<NumberControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'Order' ) }\n\t\t\t\t\thelp={ __( 'Set the page order.' ) }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ setUpdatedOrder }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\tonBlur={ () => {\n\t\t\t\t\t\tsetOrderInput( null );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</FlexBlock>\n\t\t</Flex>\n\t);\n}\n\n/**\n * Renders the Page Attributes Order component. A number input in an editor interface\n * for setting the order of a given page.\n * The component is now not used in core but was kept for backward compatibility.\n *\n * @return {Component} The component to be rendered.\n */\nexport default function PageAttributesOrderWithChecks() {\n\treturn (\n\t\t<PostTypeSupportCheck supportKeys=\"page-attributes\">\n\t\t\t<PageAttributesOrder />\n\t\t</PostTypeSupportCheck>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAKA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAKA,IAAAI,qBAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AAAmD,IAAAO,WAAA,GAAAP,OAAA;AAhBnD;AACA;AACA;;AAUA;AACA;AACA;;AAIA,SAASQ,mBAAmBA,CAAA,EAAG;EAC9B,MAAMC,KAAK,GAAG,IAAAC,eAAS,EACpBC,MAAM;IAAA,IAAAC,qBAAA;IAAA,QAAAA,qBAAA,GACPD,MAAM,CAAEE,YAAY,CAAC,CAACC,sBAAsB,CAAE,YAAa,CAAC,cAAAF,qBAAA,cAAAA,qBAAA,GAAI,CAAC;EAAA,GAClE,EACD,CAAC;EACD,MAAM;IAAEG;EAAS,CAAC,GAAG,IAAAC,iBAAW,EAAEH,YAAY,CAAC;EAC/C,MAAM,CAAEI,UAAU,EAAEC,aAAa,CAAE,GAAG,IAAAC,iBAAQ,EAAE,IAAK,CAAC;EAEtD,MAAMC,eAAe,GAAKC,KAAK,IAAM;IACpCH,aAAa,CAAEG,KAAM,CAAC;IACtB,MAAMC,QAAQ,GAAGC,MAAM,CAAEF,KAAM,CAAC;IAChC,IAAKE,MAAM,CAACC,SAAS,CAAEF,QAAS,CAAC,IAAID,KAAK,CAACI,IAAI,GAAG,CAAC,KAAK,EAAE,EAAG;MAC5DV,QAAQ,CAAE;QAAEW,UAAU,EAAEJ;MAAS,CAAE,CAAC;IACrC;EACD,CAAC;EAED,MAAMD,KAAK,GAAGJ,UAAU,aAAVA,UAAU,cAAVA,UAAU,GAAIR,KAAK;EAEjC,oBACC,IAAAF,WAAA,CAAAoB,GAAA,EAAC1B,WAAA,CAAA2B,IAAI;IAAAC,QAAA,eACJ,IAAAtB,WAAA,CAAAoB,GAAA,EAAC1B,WAAA,CAAA6B,SAAS;MAAAD,QAAA,eACT,IAAAtB,WAAA,CAAAoB,GAAA,EAAC1B,WAAA,CAAA8B,2BAAa;QACbC,qBAAqB;QACrBC,KAAK,EAAG,IAAAC,QAAE,EAAE,OAAQ,CAAG;QACvBC,IAAI,EAAG,IAAAD,QAAE,EAAE,qBAAsB,CAAG;QACpCb,KAAK,EAAGA,KAAO;QACfe,QAAQ,EAAGhB,eAAiB;QAC5BiB,mBAAmB;QACnBC,MAAM,EAAGA,CAAA,KAAM;UACdpB,aAAa,CAAE,IAAK,CAAC;QACtB;MAAG,CACH;IAAC,CACQ;EAAC,CACP,CAAC;AAET;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASqB,6BAA6BA,CAAA,EAAG;EACvD,oBACC,IAAAhC,WAAA,CAAAoB,GAAA,EAACvB,qBAAA,CAAAoC,OAAoB;IAACC,WAAW,EAAC,iBAAiB;IAAAZ,QAAA,eAClD,IAAAtB,WAAA,CAAAoB,GAAA,EAACnB,mBAAmB,IAAE;EAAC,CACF,CAAC;AAEzB","ignoreList":[]}
@@ -9,7 +9,6 @@ var _data = require("@wordpress/data");
9
9
  var _coreData = require("@wordpress/core-data");
10
10
  var _store = require("../../store");
11
11
  var _check = _interopRequireDefault(require("./check"));
12
- var _order = require("./order");
13
12
  var _parent = require("./parent");
14
13
  var _jsxRuntime = require("react/jsx-runtime");
15
14
  /**
@@ -41,9 +40,7 @@ function AttributesPanel() {
41
40
  if (!isEnabled || !postType) {
42
41
  return null;
43
42
  }
44
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
45
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_parent.ParentRow, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_order.OrderRow, {})]
46
- });
43
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_parent.ParentRow, {});
47
44
  }
48
45
 
49
46
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_coreData","_store","_check","_interopRequireDefault","_order","_parent","_jsxRuntime","PANEL_NAME","AttributesPanel","isEnabled","postType","useSelect","select","getEditedPostAttribute","isEditorPanelEnabled","editorStore","getPostType","coreStore","jsxs","Fragment","children","jsx","ParentRow","OrderRow","PageAttributesPanel","default"],"sources":["@wordpress/editor/src/components/page-attributes/panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport PageAttributesCheck from './check';\nimport { OrderRow } from './order';\nimport { ParentRow } from './parent';\n\nconst PANEL_NAME = 'page-attributes';\n\nfunction AttributesPanel() {\n\tconst { isEnabled, postType } = useSelect( ( select ) => {\n\t\tconst { getEditedPostAttribute, isEditorPanelEnabled } =\n\t\t\tselect( editorStore );\n\t\tconst { getPostType } = select( coreStore );\n\t\treturn {\n\t\t\tisEnabled: isEditorPanelEnabled( PANEL_NAME ),\n\t\t\tpostType: getPostType( getEditedPostAttribute( 'type' ) ),\n\t\t};\n\t}, [] );\n\n\tif ( ! isEnabled || ! postType ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ParentRow />\n\t\t\t<OrderRow />\n\t\t</>\n\t);\n}\n\n/**\n * Renders the Page Attributes Panel component.\n *\n * @return {Component} The component to be rendered.\n */\nexport default function PageAttributesPanel() {\n\treturn (\n\t\t<PageAttributesCheck>\n\t\t\t<AttributesPanel />\n\t\t</PageAttributesCheck>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAIA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AAAqC,IAAAO,WAAA,GAAAP,OAAA;AAXrC;AACA;AACA;;AAGA;AACA;AACA;;AAMA,MAAMQ,UAAU,GAAG,iBAAiB;AAEpC,SAASC,eAAeA,CAAA,EAAG;EAC1B,MAAM;IAAEC,SAAS;IAAEC;EAAS,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IACxD,MAAM;MAAEC,sBAAsB;MAAEC;IAAqB,CAAC,GACrDF,MAAM,CAAEG,YAAY,CAAC;IACtB,MAAM;MAAEC;IAAY,CAAC,GAAGJ,MAAM,CAAEK,eAAU,CAAC;IAC3C,OAAO;MACNR,SAAS,EAAEK,oBAAoB,CAAEP,UAAW,CAAC;MAC7CG,QAAQ,EAAEM,WAAW,CAAEH,sBAAsB,CAAE,MAAO,CAAE;IACzD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,IAAK,CAAEJ,SAAS,IAAI,CAAEC,QAAQ,EAAG;IAChC,OAAO,IAAI;EACZ;EAEA,oBACC,IAAAJ,WAAA,CAAAY,IAAA,EAAAZ,WAAA,CAAAa,QAAA;IAAAC,QAAA,gBACC,IAAAd,WAAA,CAAAe,GAAA,EAAChB,OAAA,CAAAiB,SAAS,IAAE,CAAC,eACb,IAAAhB,WAAA,CAAAe,GAAA,EAACjB,MAAA,CAAAmB,QAAQ,IAAE,CAAC;EAAA,CACX,CAAC;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACe,SAASC,mBAAmBA,CAAA,EAAG;EAC7C,oBACC,IAAAlB,WAAA,CAAAe,GAAA,EAACnB,MAAA,CAAAuB,OAAmB;IAAAL,QAAA,eACnB,IAAAd,WAAA,CAAAe,GAAA,EAACb,eAAe,IAAE;EAAC,CACC,CAAC;AAExB","ignoreList":[]}
1
+ {"version":3,"names":["_data","require","_coreData","_store","_check","_interopRequireDefault","_parent","_jsxRuntime","PANEL_NAME","AttributesPanel","isEnabled","postType","useSelect","select","getEditedPostAttribute","isEditorPanelEnabled","editorStore","getPostType","coreStore","jsx","ParentRow","PageAttributesPanel","default","children"],"sources":["@wordpress/editor/src/components/page-attributes/panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport PageAttributesCheck from './check';\nimport { ParentRow } from './parent';\n\nconst PANEL_NAME = 'page-attributes';\n\nfunction AttributesPanel() {\n\tconst { isEnabled, postType } = useSelect( ( select ) => {\n\t\tconst { getEditedPostAttribute, isEditorPanelEnabled } =\n\t\t\tselect( editorStore );\n\t\tconst { getPostType } = select( coreStore );\n\t\treturn {\n\t\t\tisEnabled: isEditorPanelEnabled( PANEL_NAME ),\n\t\t\tpostType: getPostType( getEditedPostAttribute( 'type' ) ),\n\t\t};\n\t}, [] );\n\n\tif ( ! isEnabled || ! postType ) {\n\t\treturn null;\n\t}\n\n\treturn <ParentRow />;\n}\n\n/**\n * Renders the Page Attributes Panel component.\n *\n * @return {Component} The component to be rendered.\n */\nexport default function PageAttributesPanel() {\n\treturn (\n\t\t<PageAttributesCheck>\n\t\t\t<AttributesPanel />\n\t\t</PageAttributesCheck>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAIA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AAAqC,IAAAM,WAAA,GAAAN,OAAA;AAVrC;AACA;AACA;;AAGA;AACA;AACA;;AAKA,MAAMO,UAAU,GAAG,iBAAiB;AAEpC,SAASC,eAAeA,CAAA,EAAG;EAC1B,MAAM;IAAEC,SAAS;IAAEC;EAAS,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IACxD,MAAM;MAAEC,sBAAsB;MAAEC;IAAqB,CAAC,GACrDF,MAAM,CAAEG,YAAY,CAAC;IACtB,MAAM;MAAEC;IAAY,CAAC,GAAGJ,MAAM,CAAEK,eAAU,CAAC;IAC3C,OAAO;MACNR,SAAS,EAAEK,oBAAoB,CAAEP,UAAW,CAAC;MAC7CG,QAAQ,EAAEM,WAAW,CAAEH,sBAAsB,CAAE,MAAO,CAAE;IACzD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,IAAK,CAAEJ,SAAS,IAAI,CAAEC,QAAQ,EAAG;IAChC,OAAO,IAAI;EACZ;EAEA,oBAAO,IAAAJ,WAAA,CAAAY,GAAA,EAACb,OAAA,CAAAc,SAAS,IAAE,CAAC;AACrB;;AAEA;AACA;AACA;AACA;AACA;AACe,SAASC,mBAAmBA,CAAA,EAAG;EAC7C,oBACC,IAAAd,WAAA,CAAAY,GAAA,EAACf,MAAA,CAAAkB,OAAmB;IAAAC,QAAA,eACnB,IAAAhB,WAAA,CAAAY,GAAA,EAACV,eAAe,IAAE;EAAC,CACC,CAAC;AAExB","ignoreList":[]}
@@ -179,17 +179,21 @@ const trashPostAction = {
179
179
  });
180
180
  }
181
181
  };
182
- function useCanUserEligibilityCheckPostType(capability, resource, action) {
182
+ function useCanUserEligibilityCheckPostType(capability, postType, action) {
183
183
  const registry = (0, _data.useRegistry)();
184
184
  return (0, _element.useMemo)(() => ({
185
185
  ...action,
186
186
  isEligible(item) {
187
- return action.isEligible(item) && registry.select(_coreData.store).canUser(capability, resource, item.id);
187
+ return action.isEligible(item) && registry.select(_coreData.store).canUser(capability, {
188
+ kind: 'postType',
189
+ name: postType,
190
+ id: item.id
191
+ });
188
192
  }
189
- }), [action, registry, capability, resource]);
193
+ }), [action, registry, capability, postType]);
190
194
  }
191
- function useTrashPostAction(resource) {
192
- return useCanUserEligibilityCheckPostType('delete', resource, trashPostAction);
195
+ function useTrashPostAction(postType) {
196
+ return useCanUserEligibilityCheckPostType('delete', postType, trashPostAction);
193
197
  }
194
198
  const permanentlyDeletePostAction = {
195
199
  id: 'permanently-delete',
@@ -271,8 +275,8 @@ const permanentlyDeletePostAction = {
271
275
  }
272
276
  }
273
277
  };
274
- function usePermanentlyDeletePostAction(resource) {
275
- return useCanUserEligibilityCheckPostType('delete', resource, permanentlyDeletePostAction);
278
+ function usePermanentlyDeletePostAction(postType) {
279
+ return useCanUserEligibilityCheckPostType('delete', postType, permanentlyDeletePostAction);
276
280
  }
277
281
  const restorePostAction = {
278
282
  id: 'restore',
@@ -365,8 +369,8 @@ const restorePostAction = {
365
369
  }
366
370
  }
367
371
  };
368
- function useRestorePostAction(resource) {
369
- return useCanUserEligibilityCheckPostType('update', resource, restorePostAction);
372
+ function useRestorePostAction(postType) {
373
+ return useCanUserEligibilityCheckPostType('update', postType, restorePostAction);
370
374
  }
371
375
  const viewPostAction = {
372
376
  id: 'view-post',
@@ -512,21 +516,109 @@ const renamePostAction = {
512
516
  });
513
517
  }
514
518
  };
515
- function useRenamePostAction(resource) {
516
- return useCanUserEligibilityCheckPostType('update', resource, renamePostAction);
519
+ function useRenamePostAction(postType) {
520
+ return useCanUserEligibilityCheckPostType('update', postType, renamePostAction);
517
521
  }
518
- const useDuplicatePostAction = postType => {
522
+ function ReorderModal({
523
+ items,
524
+ closeModal,
525
+ onActionPerformed
526
+ }) {
527
+ const [item] = items;
519
528
  const {
520
- userCanCreatePost
521
- } = (0, _data.useSelect)(select => {
529
+ editEntityRecord,
530
+ saveEditedEntityRecord
531
+ } = (0, _data.useDispatch)(_coreData.store);
532
+ const {
533
+ createSuccessNotice,
534
+ createErrorNotice
535
+ } = (0, _data.useDispatch)(_notices.store);
536
+ const [orderInput, setOrderInput] = (0, _element.useState)(item.menu_order);
537
+ async function onOrder(event) {
538
+ event.preventDefault();
539
+ if (!Number.isInteger(Number(orderInput)) || orderInput?.trim?.() === '') {
540
+ return;
541
+ }
542
+ try {
543
+ await editEntityRecord('postType', item.type, item.id, {
544
+ menu_order: orderInput
545
+ });
546
+ closeModal();
547
+ // Persist edited entity.
548
+ await saveEditedEntityRecord('postType', item.type, item.id, {
549
+ throwOnError: true
550
+ });
551
+ createSuccessNotice((0, _i18n.__)('Order updated'), {
552
+ type: 'snackbar'
553
+ });
554
+ onActionPerformed?.(items);
555
+ } catch (error) {
556
+ const errorMessage = error.message && error.code !== 'unknown_error' ? error.message : (0, _i18n.__)('An error occurred while updating the order');
557
+ createErrorNotice(errorMessage, {
558
+ type: 'snackbar'
559
+ });
560
+ }
561
+ }
562
+ const saveIsDisabled = !Number.isInteger(Number(orderInput)) || orderInput?.trim?.() === '';
563
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("form", {
564
+ onSubmit: onOrder,
565
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalVStack, {
566
+ spacing: "5",
567
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
568
+ children: (0, _i18n.__)('Determines the order of pages. Pages with the same order value are sorted alphabetically. Negative order values are supported.')
569
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalNumberControl, {
570
+ __next40pxDefaultSize: true,
571
+ label: (0, _i18n.__)('Order'),
572
+ help: (0, _i18n.__)('Set the page order.'),
573
+ value: orderInput,
574
+ onChange: setOrderInput
575
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
576
+ justify: "right",
577
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
578
+ __next40pxDefaultSize: true,
579
+ variant: "tertiary",
580
+ onClick: () => {
581
+ closeModal();
582
+ },
583
+ children: (0, _i18n.__)('Cancel')
584
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
585
+ __next40pxDefaultSize: true,
586
+ variant: "primary",
587
+ type: "submit",
588
+ accessibleWhenDisabled: true,
589
+ disabled: saveIsDisabled,
590
+ __experimentalIsFocusable: true,
591
+ children: (0, _i18n.__)('Save')
592
+ })]
593
+ })]
594
+ })
595
+ });
596
+ }
597
+ function useReorderPagesAction(postType) {
598
+ const supportsPageAttributes = (0, _data.useSelect)(select => {
522
599
  const {
523
- getPostType,
524
- canUser
600
+ getPostType
525
601
  } = select(_coreData.store);
526
- const resource = getPostType(postType)?.rest_base || '';
527
- return {
528
- userCanCreatePost: canUser('create', resource)
529
- };
602
+ const postTypeObject = getPostType(postType);
603
+ return !!postTypeObject?.supports?.['page-attributes'];
604
+ }, [postType]);
605
+ return (0, _element.useMemo)(() => supportsPageAttributes && {
606
+ id: 'order-pages',
607
+ label: (0, _i18n.__)('Order'),
608
+ isEligible({
609
+ status
610
+ }) {
611
+ return status !== 'trash';
612
+ },
613
+ RenderModal: ReorderModal
614
+ }, [supportsPageAttributes]);
615
+ }
616
+ const useDuplicatePostAction = postType => {
617
+ const userCanCreatePost = (0, _data.useSelect)(select => {
618
+ return select(_coreData.store).canUser('create', {
619
+ kind: 'postType',
620
+ name: postType
621
+ });
530
622
  }, [postType]);
531
623
  return (0, _element.useMemo)(() => userCanCreatePost && {
532
624
  id: 'duplicate-post',
@@ -672,10 +764,10 @@ const duplicateTemplatePartAction = exports.duplicateTemplatePartAction = {
672
764
  const [item] = items;
673
765
  const blocks = (0, _element.useMemo)(() => {
674
766
  var _item$blocks;
675
- return (_item$blocks = item.blocks) !== null && _item$blocks !== void 0 ? _item$blocks : (0, _blocks.parse)(item.content.raw, {
767
+ return (_item$blocks = item.blocks) !== null && _item$blocks !== void 0 ? _item$blocks : (0, _blocks.parse)(typeof item.content === 'string' ? item.content : item.content.raw, {
676
768
  __unstableSkipMigrationLogs: true
677
769
  });
678
- }, [item?.content?.raw, item.blocks]);
770
+ }, [item.content, item.blocks]);
679
771
  const {
680
772
  createSuccessNotice
681
773
  } = (0, _data.useDispatch)(_notices.store);
@@ -708,7 +800,6 @@ function usePostActions({
708
800
  defaultActions,
709
801
  postTypeObject,
710
802
  userCanCreatePostType,
711
- resource,
712
803
  cachedCanUserResolvers
713
804
  } = (0, _data.useSelect)(select => {
714
805
  const {
@@ -720,20 +811,22 @@ function usePostActions({
720
811
  getEntityActions
721
812
  } = (0, _lockUnlock.unlock)(select(_store.store));
722
813
  const _postTypeObject = getPostType(postType);
723
- const _resource = _postTypeObject?.rest_base || '';
724
814
  return {
725
815
  postTypeObject: _postTypeObject,
726
816
  defaultActions: getEntityActions('postType', postType),
727
- userCanCreatePostType: canUser('create', _resource),
728
- resource: _resource,
817
+ userCanCreatePostType: canUser('create', {
818
+ kind: 'postType',
819
+ name: postType
820
+ }),
729
821
  cachedCanUserResolvers: getCachedResolvers()?.canUser
730
822
  };
731
823
  }, [postType]);
732
824
  const duplicatePostAction = useDuplicatePostAction(postType);
733
- const trashPostActionForPostType = useTrashPostAction(resource);
734
- const permanentlyDeletePostActionForPostType = usePermanentlyDeletePostAction(resource);
735
- const renamePostActionForPostType = useRenamePostAction(resource);
736
- const restorePostActionForPostType = useRestorePostAction(resource);
825
+ const trashPostActionForPostType = useTrashPostAction(postType);
826
+ const permanentlyDeletePostActionForPostType = usePermanentlyDeletePostAction(postType);
827
+ const renamePostActionForPostType = useRenamePostAction(postType);
828
+ const restorePostActionForPostType = useRestorePostAction(postType);
829
+ const reorderPagesAction = useReorderPagesAction(postType);
737
830
  const isTemplateOrTemplatePart = [_constants.TEMPLATE_POST_TYPE, _constants.TEMPLATE_PART_POST_TYPE].includes(postType);
738
831
  const isPattern = postType === _constants.PATTERN_POST_TYPE;
739
832
  const isLoaded = !!postTypeObject;
@@ -743,7 +836,7 @@ function usePostActions({
743
836
  if (!isLoaded) {
744
837
  return [];
745
838
  }
746
- let actions = [postTypeObject?.viewable && viewPostAction, supportsRevisions && postRevisionsAction, globalThis.IS_GUTENBERG_PLUGIN ? !isTemplateOrTemplatePart && !isPattern && duplicatePostAction : false, isTemplateOrTemplatePart && userCanCreatePostType && duplicateTemplatePartAction, isPattern && userCanCreatePostType && duplicatePatternAction, supportsTitle && renamePostActionForPostType, !isTemplateOrTemplatePart && restorePostActionForPostType, !isTemplateOrTemplatePart && !isPattern && trashPostActionForPostType, !isTemplateOrTemplatePart && permanentlyDeletePostActionForPostType, ...defaultActions].filter(Boolean);
839
+ let actions = [postTypeObject?.viewable && viewPostAction, supportsRevisions && postRevisionsAction, globalThis.IS_GUTENBERG_PLUGIN ? !isTemplateOrTemplatePart && !isPattern && duplicatePostAction : false, isTemplateOrTemplatePart && userCanCreatePostType && duplicateTemplatePartAction, isPattern && userCanCreatePostType && duplicatePatternAction, supportsTitle && renamePostActionForPostType, reorderPagesAction, !isTemplateOrTemplatePart && restorePostActionForPostType, !isTemplateOrTemplatePart && !isPattern && trashPostActionForPostType, !isTemplateOrTemplatePart && permanentlyDeletePostActionForPostType, ...defaultActions].filter(Boolean);
747
840
  // Filter actions based on provided context. If not provided
748
841
  // all actions are returned. We'll have a single entry for getting the actions
749
842
  // and the consumer should provide the context to filter the actions, if needed.
@@ -766,7 +859,7 @@ function usePostActions({
766
859
  existingCallback(items, {
767
860
  ...argsObject,
768
861
  onActionPerformed: _items => {
769
- if (argsObject.onActionPerformed) {
862
+ if (argsObject?.onActionPerformed) {
770
863
  argsObject.onActionPerformed(_items);
771
864
  }
772
865
  onActionPerformed(actions[i].id, _items);
@@ -798,6 +891,6 @@ function usePostActions({
798
891
  // We are making this use memo depend on cachedCanUserResolvers as a way to make the component using this hook re-render
799
892
  // when user capabilities are resolved. This makes sure the isEligible functions of actions dependent on capabilities are re-evaluated.
800
893
  // eslint-disable-next-line react-hooks/exhaustive-deps
801
- }, [defaultActions, userCanCreatePostType, isTemplateOrTemplatePart, isPattern, postTypeObject?.viewable, duplicatePostAction, trashPostActionForPostType, restorePostActionForPostType, renamePostActionForPostType, permanentlyDeletePostActionForPostType, onActionPerformed, isLoaded, supportsRevisions, supportsTitle, context, cachedCanUserResolvers]);
894
+ }, [defaultActions, userCanCreatePostType, isTemplateOrTemplatePart, isPattern, postTypeObject?.viewable, duplicatePostAction, reorderPagesAction, trashPostActionForPostType, restorePostActionForPostType, renamePostActionForPostType, permanentlyDeletePostActionForPostType, onActionPerformed, isLoaded, supportsRevisions, supportsTitle, context, cachedCanUserResolvers]);
802
895
  }
803
896
  //# sourceMappingURL=actions.js.map