@wordpress/edit-site 5.22.0 → 5.24.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 (524) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/components/actions/index.js +115 -15
  3. package/build/components/actions/index.js.map +1 -1
  4. package/build/components/add-new-template/new-template.js +0 -7
  5. package/build/components/add-new-template/new-template.js.map +1 -1
  6. package/build/components/block-editor/site-editor-canvas.js +7 -2
  7. package/build/components/block-editor/site-editor-canvas.js.map +1 -1
  8. package/build/components/block-editor/use-site-editor-settings.js +54 -63
  9. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  10. package/build/components/dataviews/add-filter.js +91 -0
  11. package/build/components/dataviews/add-filter.js.map +1 -0
  12. package/build/components/dataviews/constants.js +14 -0
  13. package/build/components/dataviews/constants.js.map +1 -0
  14. package/build/components/dataviews/dataviews.js +30 -9
  15. package/build/components/dataviews/dataviews.js.map +1 -1
  16. package/build/components/dataviews/filter-summary.js +62 -0
  17. package/build/components/dataviews/filter-summary.js.map +1 -0
  18. package/build/components/dataviews/filters.js +37 -48
  19. package/build/components/dataviews/filters.js.map +1 -1
  20. package/build/components/dataviews/index.js +9 -2
  21. package/build/components/dataviews/index.js.map +1 -1
  22. package/build/components/dataviews/item-actions.js +139 -17
  23. package/build/components/dataviews/item-actions.js.map +1 -1
  24. package/build/components/dataviews/pagination.js +7 -2
  25. package/build/components/dataviews/pagination.js.map +1 -1
  26. package/build/components/dataviews/reset-filters.js +33 -0
  27. package/build/components/dataviews/reset-filters.js.map +1 -0
  28. package/build/components/dataviews/search.js +1 -0
  29. package/build/components/dataviews/search.js.map +1 -1
  30. package/build/components/dataviews/view-actions.js +49 -32
  31. package/build/components/dataviews/view-actions.js.map +1 -1
  32. package/build/components/dataviews/view-grid.js +48 -25
  33. package/build/components/dataviews/view-grid.js.map +1 -1
  34. package/build/components/dataviews/view-list.js +130 -14
  35. package/build/components/dataviews/view-list.js.map +1 -1
  36. package/build/components/dataviews/view-side-by-side.js +20 -0
  37. package/build/components/dataviews/view-side-by-side.js.map +1 -0
  38. package/build/components/editor/index.js +52 -56
  39. package/build/components/editor/index.js.map +1 -1
  40. package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +1 -1
  41. package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -1
  42. package/build/components/global-styles/font-library-modal/utils/index.js +15 -2
  43. package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  44. package/build/components/global-styles/header.js +4 -2
  45. package/build/components/global-styles/header.js.map +1 -1
  46. package/build/components/global-styles/screen-block-list.js +22 -16
  47. package/build/components/global-styles/screen-block-list.js.map +1 -1
  48. package/build/components/global-styles/screen-revisions/index.js +66 -24
  49. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  50. package/build/components/global-styles/screen-revisions/revisions-buttons.js +52 -24
  51. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  52. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +9 -3
  53. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  54. package/build/components/global-styles/screen-root.js +3 -3
  55. package/build/components/global-styles/screen-root.js.map +1 -1
  56. package/build/components/global-styles/ui.js +31 -39
  57. package/build/components/global-styles/ui.js.map +1 -1
  58. package/build/components/global-styles-renderer/index.js +1 -1
  59. package/build/components/global-styles-renderer/index.js.map +1 -1
  60. package/build/components/header-edit-mode/document-actions/index.js +21 -16
  61. package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
  62. package/build/components/header-edit-mode/document-tools/index.js +160 -0
  63. package/build/components/header-edit-mode/document-tools/index.js.map +1 -0
  64. package/build/components/header-edit-mode/index.js +50 -117
  65. package/build/components/header-edit-mode/index.js.map +1 -1
  66. package/build/components/header-edit-mode/more-menu/index.js +1 -1
  67. package/build/components/header-edit-mode/more-menu/index.js.map +1 -1
  68. package/build/components/header-edit-mode/more-menu/site-export.js +2 -6
  69. package/build/components/header-edit-mode/more-menu/site-export.js.map +1 -1
  70. package/build/components/layout/index.js +4 -19
  71. package/build/components/layout/index.js.map +1 -1
  72. package/build/components/list/added-by.js +44 -54
  73. package/build/components/list/added-by.js.map +1 -1
  74. package/build/components/{page-content-focus-manager → page-content-focus-notifications}/back-to-page-notification.js +11 -15
  75. package/build/components/page-content-focus-notifications/back-to-page-notification.js.map +1 -0
  76. package/build/components/{page-content-focus-manager → page-content-focus-notifications}/edit-template-notification.js +9 -13
  77. package/build/components/page-content-focus-notifications/edit-template-notification.js.map +1 -0
  78. package/build/components/page-content-focus-notifications/index.js +22 -0
  79. package/build/components/page-content-focus-notifications/index.js.map +1 -0
  80. package/build/components/page-main/index.js +2 -1
  81. package/build/components/page-main/index.js.map +1 -1
  82. package/build/components/page-pages/index.js +137 -88
  83. package/build/components/page-pages/index.js.map +1 -1
  84. package/build/components/page-pages/side-editor.js +25 -0
  85. package/build/components/page-pages/side-editor.js.map +1 -0
  86. package/build/components/page-patterns/grid-item.js +2 -2
  87. package/build/components/page-patterns/grid-item.js.map +1 -1
  88. package/build/components/page-patterns/patterns-list.js +3 -3
  89. package/build/components/page-patterns/patterns-list.js.map +1 -1
  90. package/build/components/page-patterns/use-patterns.js +2 -2
  91. package/build/components/page-patterns/use-patterns.js.map +1 -1
  92. package/build/components/page-templates/dataviews-templates.js +316 -0
  93. package/build/components/page-templates/dataviews-templates.js.map +1 -0
  94. package/build/components/page-templates/template-actions.js +168 -0
  95. package/build/components/page-templates/template-actions.js.map +1 -0
  96. package/build/components/preferences-modal/index.js +1 -1
  97. package/build/components/preferences-modal/index.js.map +1 -1
  98. package/build/components/save-button/index.js +9 -6
  99. package/build/components/save-button/index.js.map +1 -1
  100. package/build/components/save-hub/index.js +14 -0
  101. package/build/components/save-hub/index.js.map +1 -1
  102. package/build/components/sidebar/index.js +1 -2
  103. package/build/components/sidebar/index.js.map +1 -1
  104. package/build/components/sidebar-dataviews/add-new-view.js +124 -0
  105. package/build/components/sidebar-dataviews/add-new-view.js.map +1 -0
  106. package/build/components/sidebar-dataviews/custom-dataviews-list.js +191 -0
  107. package/build/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -0
  108. package/build/components/sidebar-dataviews/dataview-item.js +71 -0
  109. package/build/components/sidebar-dataviews/dataview-item.js.map +1 -0
  110. package/build/components/sidebar-dataviews/default-views.js +65 -0
  111. package/build/components/sidebar-dataviews/default-views.js.map +1 -0
  112. package/build/components/sidebar-dataviews/index.js +21 -38
  113. package/build/components/sidebar-dataviews/index.js.map +1 -1
  114. package/build/components/sidebar-edit-mode/default-sidebar.js +2 -6
  115. package/build/components/sidebar-edit-mode/default-sidebar.js.map +1 -1
  116. package/build/components/sidebar-edit-mode/index.js +6 -5
  117. package/build/components/sidebar-edit-mode/index.js.map +1 -1
  118. package/build/components/sidebar-edit-mode/page-panels/edit-template.js +18 -29
  119. package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
  120. package/build/components/sidebar-edit-mode/page-panels/hooks.js +22 -8
  121. package/build/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -1
  122. package/build/components/sidebar-edit-mode/page-panels/page-status.js +8 -5
  123. package/build/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
  124. package/build/components/sidebar-edit-mode/page-panels/page-summary.js +5 -8
  125. package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  126. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js +6 -14
  127. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -1
  128. package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js +4 -12
  129. package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -1
  130. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js +2 -6
  131. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
  132. package/build/components/sidebar-edit-mode/settings-header/index.js +10 -6
  133. package/build/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
  134. package/build/components/sidebar-edit-mode/template-panel/hooks.js +3 -3
  135. package/build/components/sidebar-edit-mode/template-panel/hooks.js.map +1 -1
  136. package/build/components/sidebar-navigation-screen-global-styles/index.js +1 -1
  137. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  138. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +1 -1
  139. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -1
  140. package/build/components/sidebar-navigation-screen-page/index.js +23 -4
  141. package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
  142. package/build/components/sidebar-navigation-screen-page/page-details.js +3 -11
  143. package/build/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  144. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +1 -1
  145. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
  146. package/build/components/site-hub/index.js +18 -6
  147. package/build/components/site-hub/index.js.map +1 -1
  148. package/build/components/start-template-options/index.js +12 -16
  149. package/build/components/start-template-options/index.js.map +1 -1
  150. package/build/components/style-book/index.js +22 -12
  151. package/build/components/style-book/index.js.map +1 -1
  152. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +150 -55
  153. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  154. package/build/components/template-part-converter/convert-to-regular.js +1 -1
  155. package/build/components/template-part-converter/convert-to-regular.js.map +1 -1
  156. package/build/components/welcome-guide/page.js +2 -2
  157. package/build/components/welcome-guide/page.js.map +1 -1
  158. package/build/components/welcome-guide/template.js +6 -3
  159. package/build/components/welcome-guide/template.js.map +1 -1
  160. package/build/hooks/commands/use-edit-mode-commands.js +24 -14
  161. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  162. package/build/hooks/push-changes-to-global-styles/index.js +3 -1
  163. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  164. package/build/hooks/template-part-edit.js +6 -2
  165. package/build/hooks/template-part-edit.js.map +1 -1
  166. package/build/index.js +0 -3
  167. package/build/index.js.map +1 -1
  168. package/build/store/actions.js +39 -83
  169. package/build/store/actions.js.map +1 -1
  170. package/build/store/private-actions.js +2 -27
  171. package/build/store/private-actions.js.map +1 -1
  172. package/build/store/private-selectors.js +0 -23
  173. package/build/store/private-selectors.js.map +1 -1
  174. package/build/store/reducer.js +1 -40
  175. package/build/store/reducer.js.map +1 -1
  176. package/build/store/selectors.js +33 -67
  177. package/build/store/selectors.js.map +1 -1
  178. package/build/utils/constants.js +3 -14
  179. package/build/utils/constants.js.map +1 -1
  180. package/build-module/components/actions/index.js +113 -14
  181. package/build-module/components/actions/index.js.map +1 -1
  182. package/build-module/components/add-new-template/new-template.js +0 -7
  183. package/build-module/components/add-new-template/new-template.js.map +1 -1
  184. package/build-module/components/block-editor/site-editor-canvas.js +7 -2
  185. package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
  186. package/build-module/components/block-editor/use-site-editor-settings.js +54 -62
  187. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  188. package/build-module/components/dataviews/add-filter.js +84 -0
  189. package/build-module/components/dataviews/add-filter.js.map +1 -0
  190. package/build-module/components/dataviews/constants.js +6 -0
  191. package/build-module/components/dataviews/constants.js.map +1 -0
  192. package/build-module/components/dataviews/dataviews.js +29 -9
  193. package/build-module/components/dataviews/dataviews.js.map +1 -1
  194. package/build-module/components/dataviews/filter-summary.js +55 -0
  195. package/build-module/components/dataviews/filter-summary.js.map +1 -0
  196. package/build-module/components/dataviews/filters.js +37 -48
  197. package/build-module/components/dataviews/filters.js.map +1 -1
  198. package/build-module/components/dataviews/index.js +1 -1
  199. package/build-module/components/dataviews/index.js.map +1 -1
  200. package/build-module/components/dataviews/item-actions.js +142 -20
  201. package/build-module/components/dataviews/item-actions.js.map +1 -1
  202. package/build-module/components/dataviews/pagination.js +7 -2
  203. package/build-module/components/dataviews/pagination.js.map +1 -1
  204. package/build-module/components/dataviews/reset-filters.js +26 -0
  205. package/build-module/components/dataviews/reset-filters.js.map +1 -0
  206. package/build-module/components/dataviews/search.js +1 -0
  207. package/build-module/components/dataviews/search.js.map +1 -1
  208. package/build-module/components/dataviews/view-actions.js +50 -33
  209. package/build-module/components/dataviews/view-actions.js.map +1 -1
  210. package/build-module/components/dataviews/view-grid.js +49 -26
  211. package/build-module/components/dataviews/view-grid.js.map +1 -1
  212. package/build-module/components/dataviews/view-list.js +132 -16
  213. package/build-module/components/dataviews/view-list.js.map +1 -1
  214. package/build-module/components/dataviews/view-side-by-side.js +12 -0
  215. package/build-module/components/dataviews/view-side-by-side.js.map +1 -0
  216. package/build-module/components/editor/index.js +55 -59
  217. package/build-module/components/editor/index.js.map +1 -1
  218. package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +1 -1
  219. package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -1
  220. package/build-module/components/global-styles/font-library-modal/utils/index.js +14 -2
  221. package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  222. package/build-module/components/global-styles/header.js +4 -2
  223. package/build-module/components/global-styles/header.js.map +1 -1
  224. package/build-module/components/global-styles/screen-block-list.js +23 -17
  225. package/build-module/components/global-styles/screen-block-list.js.map +1 -1
  226. package/build-module/components/global-styles/screen-revisions/index.js +67 -25
  227. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  228. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +51 -24
  229. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  230. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +9 -3
  231. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  232. package/build-module/components/global-styles/screen-root.js +3 -3
  233. package/build-module/components/global-styles/screen-root.js.map +1 -1
  234. package/build-module/components/global-styles/ui.js +31 -39
  235. package/build-module/components/global-styles/ui.js.map +1 -1
  236. package/build-module/components/global-styles-renderer/index.js +1 -1
  237. package/build-module/components/global-styles-renderer/index.js.map +1 -1
  238. package/build-module/components/header-edit-mode/document-actions/index.js +21 -16
  239. package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
  240. package/build-module/components/header-edit-mode/document-tools/index.js +152 -0
  241. package/build-module/components/header-edit-mode/document-tools/index.js.map +1 -0
  242. package/build-module/components/header-edit-mode/index.js +54 -121
  243. package/build-module/components/header-edit-mode/index.js.map +1 -1
  244. package/build-module/components/header-edit-mode/more-menu/index.js +1 -1
  245. package/build-module/components/header-edit-mode/more-menu/index.js.map +1 -1
  246. package/build-module/components/header-edit-mode/more-menu/site-export.js +2 -6
  247. package/build-module/components/header-edit-mode/more-menu/site-export.js.map +1 -1
  248. package/build-module/components/layout/index.js +5 -20
  249. package/build-module/components/layout/index.js.map +1 -1
  250. package/build-module/components/list/added-by.js +45 -56
  251. package/build-module/components/list/added-by.js.map +1 -1
  252. package/build-module/components/{page-content-focus-manager → page-content-focus-notifications}/back-to-page-notification.js +11 -15
  253. package/build-module/components/page-content-focus-notifications/back-to-page-notification.js.map +1 -0
  254. package/build-module/components/{page-content-focus-manager → page-content-focus-notifications}/edit-template-notification.js +9 -13
  255. package/build-module/components/page-content-focus-notifications/edit-template-notification.js.map +1 -0
  256. package/build-module/components/page-content-focus-notifications/index.js +14 -0
  257. package/build-module/components/page-content-focus-notifications/index.js.map +1 -0
  258. package/build-module/components/page-main/index.js +2 -1
  259. package/build-module/components/page-main/index.js.map +1 -1
  260. package/build-module/components/page-pages/index.js +141 -90
  261. package/build-module/components/page-pages/index.js.map +1 -1
  262. package/build-module/components/page-pages/side-editor.js +17 -0
  263. package/build-module/components/page-pages/side-editor.js.map +1 -0
  264. package/build-module/components/page-patterns/grid-item.js +2 -2
  265. package/build-module/components/page-patterns/grid-item.js.map +1 -1
  266. package/build-module/components/page-patterns/patterns-list.js +4 -4
  267. package/build-module/components/page-patterns/patterns-list.js.map +1 -1
  268. package/build-module/components/page-patterns/use-patterns.js +3 -3
  269. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  270. package/build-module/components/page-templates/dataviews-templates.js +308 -0
  271. package/build-module/components/page-templates/dataviews-templates.js.map +1 -0
  272. package/build-module/components/page-templates/template-actions.js +157 -0
  273. package/build-module/components/page-templates/template-actions.js.map +1 -0
  274. package/build-module/components/preferences-modal/index.js +1 -1
  275. package/build-module/components/preferences-modal/index.js.map +1 -1
  276. package/build-module/components/save-button/index.js +11 -8
  277. package/build-module/components/save-button/index.js.map +1 -1
  278. package/build-module/components/save-hub/index.js +14 -0
  279. package/build-module/components/save-hub/index.js.map +1 -1
  280. package/build-module/components/sidebar/index.js +1 -2
  281. package/build-module/components/sidebar/index.js.map +1 -1
  282. package/build-module/components/sidebar-dataviews/add-new-view.js +116 -0
  283. package/build-module/components/sidebar-dataviews/add-new-view.js.map +1 -0
  284. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js +182 -0
  285. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -0
  286. package/build-module/components/sidebar-dataviews/dataview-item.js +63 -0
  287. package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -0
  288. package/build-module/components/sidebar-dataviews/default-views.js +57 -0
  289. package/build-module/components/sidebar-dataviews/default-views.js.map +1 -0
  290. package/build-module/components/sidebar-dataviews/index.js +22 -39
  291. package/build-module/components/sidebar-dataviews/index.js.map +1 -1
  292. package/build-module/components/sidebar-edit-mode/default-sidebar.js +2 -6
  293. package/build-module/components/sidebar-edit-mode/default-sidebar.js.map +1 -1
  294. package/build-module/components/sidebar-edit-mode/index.js +6 -5
  295. package/build-module/components/sidebar-edit-mode/index.js.map +1 -1
  296. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +20 -31
  297. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
  298. package/build-module/components/sidebar-edit-mode/page-panels/hooks.js +21 -7
  299. package/build-module/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -1
  300. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js +9 -6
  301. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
  302. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +6 -8
  303. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  304. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js +8 -16
  305. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -1
  306. package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js +5 -13
  307. package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -1
  308. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js +2 -6
  309. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
  310. package/build-module/components/sidebar-edit-mode/settings-header/index.js +10 -6
  311. package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
  312. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js +4 -4
  313. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js.map +1 -1
  314. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +1 -1
  315. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  316. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +1 -1
  317. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -1
  318. package/build-module/components/sidebar-navigation-screen-page/index.js +23 -4
  319. package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
  320. package/build-module/components/sidebar-navigation-screen-page/page-details.js +3 -11
  321. package/build-module/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  322. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +2 -2
  323. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
  324. package/build-module/components/site-hub/index.js +19 -7
  325. package/build-module/components/site-hub/index.js.map +1 -1
  326. package/build-module/components/start-template-options/index.js +13 -16
  327. package/build-module/components/start-template-options/index.js.map +1 -1
  328. package/build-module/components/style-book/index.js +22 -12
  329. package/build-module/components/style-book/index.js.map +1 -1
  330. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +150 -56
  331. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  332. package/build-module/components/template-part-converter/convert-to-regular.js +1 -1
  333. package/build-module/components/template-part-converter/convert-to-regular.js.map +1 -1
  334. package/build-module/components/welcome-guide/page.js +2 -2
  335. package/build-module/components/welcome-guide/page.js.map +1 -1
  336. package/build-module/components/welcome-guide/template.js +6 -3
  337. package/build-module/components/welcome-guide/template.js.map +1 -1
  338. package/build-module/hooks/commands/use-edit-mode-commands.js +24 -14
  339. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  340. package/build-module/hooks/push-changes-to-global-styles/index.js +4 -2
  341. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  342. package/build-module/hooks/template-part-edit.js +6 -2
  343. package/build-module/hooks/template-part-edit.js.map +1 -1
  344. package/build-module/index.js +0 -3
  345. package/build-module/index.js.map +1 -1
  346. package/build-module/store/actions.js +37 -80
  347. package/build-module/store/actions.js.map +1 -1
  348. package/build-module/store/private-actions.js +1 -25
  349. package/build-module/store/private-actions.js.map +1 -1
  350. package/build-module/store/private-selectors.js +0 -22
  351. package/build-module/store/private-selectors.js.map +1 -1
  352. package/build-module/store/reducer.js +1 -38
  353. package/build-module/store/reducer.js.map +1 -1
  354. package/build-module/store/selectors.js +27 -62
  355. package/build-module/store/selectors.js.map +1 -1
  356. package/build-module/utils/constants.js +1 -11
  357. package/build-module/utils/constants.js.map +1 -1
  358. package/build-style/style-rtl.css +221 -181
  359. package/build-style/style.css +221 -181
  360. package/package.json +41 -41
  361. package/src/components/actions/index.js +150 -14
  362. package/src/components/add-new-template/new-template.js +0 -5
  363. package/src/components/block-editor/site-editor-canvas.js +8 -2
  364. package/src/components/block-editor/style.scss +0 -87
  365. package/src/components/block-editor/use-site-editor-settings.js +68 -89
  366. package/src/components/dataviews/README.md +80 -83
  367. package/src/components/dataviews/add-filter.js +108 -0
  368. package/src/components/dataviews/constants.js +5 -0
  369. package/src/components/dataviews/dataviews.js +28 -10
  370. package/src/components/dataviews/filter-summary.js +79 -0
  371. package/src/components/dataviews/filters.js +48 -58
  372. package/src/components/dataviews/index.js +1 -1
  373. package/src/components/dataviews/item-actions.js +169 -30
  374. package/src/components/dataviews/pagination.js +9 -4
  375. package/src/components/dataviews/reset-filters.js +26 -0
  376. package/src/components/dataviews/search.js +1 -0
  377. package/src/components/dataviews/style.scss +89 -9
  378. package/src/components/dataviews/view-actions.js +77 -49
  379. package/src/components/dataviews/view-grid.js +63 -38
  380. package/src/components/dataviews/view-list.js +182 -18
  381. package/src/components/dataviews/view-side-by-side.js +9 -0
  382. package/src/components/editor/index.js +135 -123
  383. package/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +1 -1
  384. package/src/components/global-styles/font-library-modal/utils/index.js +20 -9
  385. package/src/components/global-styles/font-library-modal/utils/test/getIntersectingFontFaces.spec.js +46 -15
  386. package/src/components/global-styles/font-library-modal/utils/test/wpKebabCase.spec.js +28 -0
  387. package/src/components/global-styles/header.js +2 -1
  388. package/src/components/global-styles/screen-block-list.js +37 -26
  389. package/src/components/global-styles/screen-revisions/index.js +91 -35
  390. package/src/components/global-styles/screen-revisions/revisions-buttons.js +65 -45
  391. package/src/components/global-styles/screen-revisions/style.scss +52 -28
  392. package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +15 -6
  393. package/src/components/global-styles/screen-root.js +2 -1
  394. package/src/components/global-styles/style.scss +0 -11
  395. package/src/components/global-styles/ui.js +60 -75
  396. package/src/components/global-styles-renderer/index.js +1 -1
  397. package/src/components/header-edit-mode/document-actions/index.js +20 -18
  398. package/src/components/header-edit-mode/document-tools/index.js +201 -0
  399. package/src/components/header-edit-mode/index.js +87 -184
  400. package/src/components/header-edit-mode/more-menu/index.js +1 -1
  401. package/src/components/header-edit-mode/more-menu/site-export.js +2 -6
  402. package/src/components/header-edit-mode/style.scss +35 -2
  403. package/src/components/layout/index.js +4 -11
  404. package/src/components/layout/style.scss +6 -18
  405. package/src/components/list/added-by.js +24 -64
  406. package/src/components/list/style.scss +11 -13
  407. package/src/components/{page-content-focus-manager → page-content-focus-notifications}/back-to-page-notification.js +10 -22
  408. package/src/components/{page-content-focus-manager → page-content-focus-notifications}/edit-template-notification.js +9 -13
  409. package/src/components/page-content-focus-notifications/index.js +14 -0
  410. package/src/components/page-main/index.js +6 -1
  411. package/src/components/page-pages/index.js +167 -91
  412. package/src/components/page-pages/side-editor.js +14 -0
  413. package/src/components/page-patterns/grid-item.js +3 -3
  414. package/src/components/page-patterns/patterns-list.js +10 -4
  415. package/src/components/page-patterns/use-patterns.js +4 -3
  416. package/src/components/page-templates/dataviews-templates.js +345 -0
  417. package/src/components/page-templates/style.scss +13 -0
  418. package/src/components/page-templates/template-actions.js +209 -0
  419. package/src/components/preferences-modal/index.js +1 -1
  420. package/src/components/save-button/index.js +37 -24
  421. package/src/components/save-hub/index.js +15 -0
  422. package/src/components/save-hub/style.scss +7 -0
  423. package/src/components/sidebar/index.js +1 -2
  424. package/src/components/sidebar-dataviews/add-new-view.js +141 -0
  425. package/src/components/sidebar-dataviews/custom-dataviews-list.js +229 -0
  426. package/src/components/sidebar-dataviews/dataview-item.js +67 -0
  427. package/src/components/sidebar-dataviews/default-views.js +59 -0
  428. package/src/components/sidebar-dataviews/index.js +36 -45
  429. package/src/components/sidebar-dataviews/style.scss +29 -0
  430. package/src/components/sidebar-edit-mode/default-sidebar.js +6 -6
  431. package/src/components/sidebar-edit-mode/index.js +13 -9
  432. package/src/components/sidebar-edit-mode/page-panels/edit-template.js +31 -57
  433. package/src/components/sidebar-edit-mode/page-panels/hooks.js +20 -9
  434. package/src/components/sidebar-edit-mode/page-panels/page-status.js +6 -6
  435. package/src/components/sidebar-edit-mode/page-panels/page-summary.js +10 -8
  436. package/src/components/sidebar-edit-mode/page-panels/reset-default-template.js +13 -12
  437. package/src/components/sidebar-edit-mode/page-panels/style.scss +14 -19
  438. package/src/components/sidebar-edit-mode/page-panels/swap-template-button.js +10 -9
  439. package/src/components/sidebar-edit-mode/plugin-sidebar/index.js +6 -6
  440. package/src/components/sidebar-edit-mode/settings-header/index.js +8 -9
  441. package/src/components/sidebar-edit-mode/template-panel/hooks.js +11 -7
  442. package/src/components/sidebar-navigation-screen/style.scss +1 -0
  443. package/src/components/sidebar-navigation-screen-global-styles/index.js +1 -1
  444. package/src/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +1 -1
  445. package/src/components/sidebar-navigation-screen-page/index.js +24 -3
  446. package/src/components/sidebar-navigation-screen-page/page-details.js +4 -17
  447. package/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +2 -2
  448. package/src/components/sidebar-navigation-screen-template/style.scss +6 -1
  449. package/src/components/site-hub/index.js +9 -8
  450. package/src/components/start-template-options/index.js +14 -12
  451. package/src/components/style-book/index.js +48 -35
  452. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +182 -63
  453. package/src/components/template-part-converter/convert-to-regular.js +1 -1
  454. package/src/components/welcome-guide/page.js +2 -2
  455. package/src/components/welcome-guide/template.js +4 -2
  456. package/src/hooks/commands/use-edit-mode-commands.js +22 -16
  457. package/src/hooks/push-changes-to-global-styles/index.js +13 -6
  458. package/src/hooks/template-part-edit.js +4 -2
  459. package/src/index.js +0 -8
  460. package/src/store/actions.js +42 -96
  461. package/src/store/private-actions.js +1 -24
  462. package/src/store/private-selectors.js +0 -22
  463. package/src/store/reducer.js +0 -39
  464. package/src/store/selectors.js +43 -95
  465. package/src/store/test/actions.js +14 -169
  466. package/src/store/test/reducer.js +0 -62
  467. package/src/store/test/selectors.js +0 -117
  468. package/src/style.scss +2 -0
  469. package/src/utils/constants.js +1 -11
  470. package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js +0 -77
  471. package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +0 -1
  472. package/build/components/block-editor/block-editor-provider/index.js +0 -31
  473. package/build/components/block-editor/block-editor-provider/index.js.map +0 -1
  474. package/build/components/block-editor/block-editor-provider/navigation-block-editor-provider.js +0 -110
  475. package/build/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +0 -1
  476. package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js +0 -84
  477. package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +0 -1
  478. package/build/components/block-editor/index.js +0 -30
  479. package/build/components/block-editor/index.js.map +0 -1
  480. package/build/components/dataviews/in-filter.js +0 -49
  481. package/build/components/dataviews/in-filter.js.map +0 -1
  482. package/build/components/page-content-focus-manager/back-to-page-notification.js.map +0 -1
  483. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js +0 -50
  484. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +0 -1
  485. package/build/components/page-content-focus-manager/edit-template-notification.js.map +0 -1
  486. package/build/components/page-content-focus-manager/index.js +0 -61
  487. package/build/components/page-content-focus-manager/index.js.map +0 -1
  488. package/build/components/page-pages/default-views.js +0 -62
  489. package/build/components/page-pages/default-views.js.map +0 -1
  490. package/build/components/sidebar-edit-mode/page-panels/publish-date.js +0 -87
  491. package/build/components/sidebar-edit-mode/page-panels/publish-date.js.map +0 -1
  492. package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js +0 -69
  493. package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +0 -1
  494. package/build-module/components/block-editor/block-editor-provider/index.js +0 -23
  495. package/build-module/components/block-editor/block-editor-provider/index.js.map +0 -1
  496. package/build-module/components/block-editor/block-editor-provider/navigation-block-editor-provider.js +0 -102
  497. package/build-module/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +0 -1
  498. package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js +0 -78
  499. package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +0 -1
  500. package/build-module/components/block-editor/index.js +0 -22
  501. package/build-module/components/block-editor/index.js.map +0 -1
  502. package/build-module/components/dataviews/in-filter.js +0 -41
  503. package/build-module/components/dataviews/in-filter.js.map +0 -1
  504. package/build-module/components/page-content-focus-manager/back-to-page-notification.js.map +0 -1
  505. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js +0 -43
  506. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +0 -1
  507. package/build-module/components/page-content-focus-manager/edit-template-notification.js.map +0 -1
  508. package/build-module/components/page-content-focus-manager/index.js +0 -52
  509. package/build-module/components/page-content-focus-manager/index.js.map +0 -1
  510. package/build-module/components/page-pages/default-views.js +0 -55
  511. package/build-module/components/page-pages/default-views.js.map +0 -1
  512. package/build-module/components/sidebar-edit-mode/page-panels/publish-date.js +0 -80
  513. package/build-module/components/sidebar-edit-mode/page-panels/publish-date.js.map +0 -1
  514. package/src/components/block-editor/block-editor-provider/default-block-editor-provider.js +0 -75
  515. package/src/components/block-editor/block-editor-provider/index.js +0 -29
  516. package/src/components/block-editor/block-editor-provider/navigation-block-editor-provider.js +0 -114
  517. package/src/components/block-editor/block-editor-provider/test/use-page-content-blocks.js +0 -116
  518. package/src/components/block-editor/block-editor-provider/use-page-content-blocks.js +0 -90
  519. package/src/components/block-editor/index.js +0 -28
  520. package/src/components/dataviews/in-filter.js +0 -45
  521. package/src/components/page-content-focus-manager/disable-non-page-content-blocks.js +0 -52
  522. package/src/components/page-content-focus-manager/index.js +0 -51
  523. package/src/components/page-pages/default-views.js +0 -60
  524. package/src/components/sidebar-edit-mode/page-panels/publish-date.js +0 -94
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/edit-site",
3
- "version": "5.22.0",
3
+ "version": "5.24.0",
4
4
  "description": "Edit Site Page module for WordPress.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -28,49 +28,49 @@
28
28
  "dependencies": {
29
29
  "@babel/runtime": "^7.16.0",
30
30
  "@tanstack/react-table": "^8.10.3",
31
- "@wordpress/a11y": "^3.45.0",
32
- "@wordpress/api-fetch": "^6.42.0",
33
- "@wordpress/block-editor": "^12.13.0",
34
- "@wordpress/block-library": "^8.22.0",
35
- "@wordpress/blocks": "^12.22.0",
36
- "@wordpress/commands": "^0.16.0",
37
- "@wordpress/components": "^25.11.0",
38
- "@wordpress/compose": "^6.22.0",
39
- "@wordpress/core-commands": "^0.14.0",
40
- "@wordpress/core-data": "^6.22.0",
41
- "@wordpress/data": "^9.15.0",
42
- "@wordpress/date": "^4.45.0",
43
- "@wordpress/deprecated": "^3.45.0",
44
- "@wordpress/dom": "^3.45.0",
45
- "@wordpress/editor": "^13.22.0",
46
- "@wordpress/element": "^5.22.0",
47
- "@wordpress/escape-html": "^2.45.0",
48
- "@wordpress/hooks": "^3.45.0",
49
- "@wordpress/html-entities": "^3.45.0",
50
- "@wordpress/i18n": "^4.45.0",
51
- "@wordpress/icons": "^9.36.0",
52
- "@wordpress/interface": "^5.22.0",
53
- "@wordpress/keyboard-shortcuts": "^4.22.0",
54
- "@wordpress/keycodes": "^3.45.0",
55
- "@wordpress/media-utils": "^4.36.0",
56
- "@wordpress/notices": "^4.13.0",
57
- "@wordpress/patterns": "^1.6.0",
58
- "@wordpress/plugins": "^6.13.0",
59
- "@wordpress/preferences": "^3.22.0",
60
- "@wordpress/primitives": "^3.43.0",
61
- "@wordpress/private-apis": "^0.27.0",
62
- "@wordpress/reusable-blocks": "^4.22.0",
63
- "@wordpress/router": "^0.14.0",
64
- "@wordpress/style-engine": "^1.28.0",
65
- "@wordpress/url": "^3.46.0",
66
- "@wordpress/viewport": "^5.22.0",
67
- "@wordpress/widgets": "^3.22.0",
68
- "@wordpress/wordcount": "^3.45.0",
31
+ "@wordpress/a11y": "^3.47.0",
32
+ "@wordpress/api-fetch": "^6.44.0",
33
+ "@wordpress/blob": "^3.47.0",
34
+ "@wordpress/block-editor": "^12.15.0",
35
+ "@wordpress/block-library": "^8.24.0",
36
+ "@wordpress/blocks": "^12.24.0",
37
+ "@wordpress/commands": "^0.18.0",
38
+ "@wordpress/components": "^25.13.0",
39
+ "@wordpress/compose": "^6.24.0",
40
+ "@wordpress/core-commands": "^0.16.0",
41
+ "@wordpress/core-data": "^6.24.0",
42
+ "@wordpress/data": "^9.17.0",
43
+ "@wordpress/date": "^4.47.0",
44
+ "@wordpress/deprecated": "^3.47.0",
45
+ "@wordpress/dom": "^3.47.0",
46
+ "@wordpress/editor": "^13.24.0",
47
+ "@wordpress/element": "^5.24.0",
48
+ "@wordpress/escape-html": "^2.47.0",
49
+ "@wordpress/hooks": "^3.47.0",
50
+ "@wordpress/html-entities": "^3.47.0",
51
+ "@wordpress/i18n": "^4.47.0",
52
+ "@wordpress/icons": "^9.38.0",
53
+ "@wordpress/interface": "^5.24.0",
54
+ "@wordpress/keyboard-shortcuts": "^4.24.0",
55
+ "@wordpress/keycodes": "^3.47.0",
56
+ "@wordpress/media-utils": "^4.38.0",
57
+ "@wordpress/notices": "^4.15.0",
58
+ "@wordpress/patterns": "^1.8.0",
59
+ "@wordpress/plugins": "^6.15.0",
60
+ "@wordpress/preferences": "^3.24.0",
61
+ "@wordpress/primitives": "^3.45.0",
62
+ "@wordpress/private-apis": "^0.29.0",
63
+ "@wordpress/reusable-blocks": "^4.24.0",
64
+ "@wordpress/router": "^0.16.0",
65
+ "@wordpress/style-engine": "^1.30.0",
66
+ "@wordpress/url": "^3.48.0",
67
+ "@wordpress/viewport": "^5.24.0",
68
+ "@wordpress/widgets": "^3.24.0",
69
+ "@wordpress/wordcount": "^3.47.0",
69
70
  "change-case": "^4.1.2",
70
71
  "classnames": "^2.3.1",
71
72
  "colord": "^2.9.2",
72
73
  "deepmerge": "^4.3.0",
73
- "downloadjs": "^1.4.7",
74
74
  "fast-deep-equal": "^3.1.3",
75
75
  "is-plain-object": "^5.0.0",
76
76
  "memize": "^2.1.0",
@@ -85,5 +85,5 @@
85
85
  "publishConfig": {
86
86
  "access": "public"
87
87
  },
88
- "gitHead": "2a00e87b57b9c27ed2b9b0fd8d423ef3cada72c1"
88
+ "gitHead": "d98dff8ea96f29cfea045bf964269f46f040d539"
89
89
  }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import { external, trash } from '@wordpress/icons';
4
+ import { external, trash, backup } from '@wordpress/icons';
5
5
  import { addQueryArgs } from '@wordpress/url';
6
6
  import { useDispatch } from '@wordpress/data';
7
7
  import { decodeEntities } from '@wordpress/html-entities';
@@ -10,6 +10,13 @@ import { __, sprintf } from '@wordpress/i18n';
10
10
  import { store as noticesStore } from '@wordpress/notices';
11
11
  import { useMemo } from '@wordpress/element';
12
12
  import { privateApis as routerPrivateApis } from '@wordpress/router';
13
+ import {
14
+ Button,
15
+ __experimentalText as Text,
16
+ __experimentalHStack as HStack,
17
+ __experimentalVStack as VStack,
18
+ } from '@wordpress/components';
19
+
13
20
  /**
14
21
  * Internal dependencies
15
22
  */
@@ -17,38 +24,109 @@ import { unlock } from '../../lock-unlock';
17
24
 
18
25
  const { useHistory } = unlock( routerPrivateApis );
19
26
 
20
- export function useTrashPostAction() {
27
+ export const trashPostAction = {
28
+ id: 'move-to-trash',
29
+ label: __( 'Move to Trash' ),
30
+ isPrimary: true,
31
+ icon: trash,
32
+ isEligible( { status } ) {
33
+ return status !== 'trash';
34
+ },
35
+ hideModalHeader: true,
36
+ RenderModal: ( { item: post, closeModal } ) => {
37
+ const { createSuccessNotice, createErrorNotice } =
38
+ useDispatch( noticesStore );
39
+ const { deleteEntityRecord } = useDispatch( coreStore );
40
+ return (
41
+ <VStack spacing="5">
42
+ <Text>
43
+ { sprintf(
44
+ // translators: %s: The page's title.
45
+ __( 'Are you sure you want to delete "%s"?' ),
46
+ decodeEntities( post.title.rendered )
47
+ ) }
48
+ </Text>
49
+ <HStack justify="right">
50
+ <Button variant="tertiary" onClick={ closeModal }>
51
+ { __( 'Cancel' ) }
52
+ </Button>
53
+ <Button
54
+ variant="primary"
55
+ onClick={ async () => {
56
+ try {
57
+ await deleteEntityRecord(
58
+ 'postType',
59
+ post.type,
60
+ post.id,
61
+ {},
62
+ { throwOnError: true }
63
+ );
64
+ createSuccessNotice(
65
+ sprintf(
66
+ /* translators: The page's title. */
67
+ __( '"%s" moved to the Trash.' ),
68
+ decodeEntities( post.title.rendered )
69
+ ),
70
+ {
71
+ type: 'snackbar',
72
+ id: 'edit-site-page-trashed',
73
+ }
74
+ );
75
+ } catch ( error ) {
76
+ const errorMessage =
77
+ error.message &&
78
+ error.code !== 'unknown_error'
79
+ ? error.message
80
+ : __(
81
+ 'An error occurred while moving the page to the trash.'
82
+ );
83
+
84
+ createErrorNotice( errorMessage, {
85
+ type: 'snackbar',
86
+ } );
87
+ }
88
+ } }
89
+ >
90
+ { __( 'Delete' ) }
91
+ </Button>
92
+ </HStack>
93
+ </VStack>
94
+ );
95
+ },
96
+ };
97
+
98
+ export function usePermanentlyDeletePostAction() {
21
99
  const { createSuccessNotice, createErrorNotice } =
22
100
  useDispatch( noticesStore );
23
101
  const { deleteEntityRecord } = useDispatch( coreStore );
24
102
 
25
103
  return useMemo(
26
104
  () => ( {
27
- id: 'move-to-trash',
28
- label: __( 'Move to Trash' ),
105
+ id: 'permanently-delete',
106
+ label: __( 'Permanently delete' ),
29
107
  isPrimary: true,
30
108
  icon: trash,
31
109
  isEligible( { status } ) {
32
- return status !== 'trash';
110
+ return status === 'trash';
33
111
  },
34
- async perform( post ) {
112
+ async callback( post ) {
35
113
  try {
36
114
  await deleteEntityRecord(
37
115
  'postType',
38
116
  post.type,
39
117
  post.id,
40
- {},
118
+ { force: true },
41
119
  { throwOnError: true }
42
120
  );
43
121
  createSuccessNotice(
44
122
  sprintf(
45
- /* translators: The page's title. */
46
- __( '"%s" moved to the Trash.' ),
123
+ /* translators: The posts's title. */
124
+ __( '"%s" permanently deleted.' ),
47
125
  decodeEntities( post.title.rendered )
48
126
  ),
49
127
  {
50
128
  type: 'snackbar',
51
- id: 'edit-site-page-trashed',
129
+ id: 'edit-site-post-permanently-deleted',
52
130
  }
53
131
  );
54
132
  } catch ( error ) {
@@ -56,7 +134,7 @@ export function useTrashPostAction() {
56
134
  error.message && error.code !== 'unknown_error'
57
135
  ? error.message
58
136
  : __(
59
- 'An error occurred while moving the page to the trash.'
137
+ 'An error occurred while permanently deleting the post.'
60
138
  );
61
139
 
62
140
  createErrorNotice( errorMessage, { type: 'snackbar' } );
@@ -67,6 +145,64 @@ export function useTrashPostAction() {
67
145
  );
68
146
  }
69
147
 
148
+ export function useRestorePostAction() {
149
+ const { createSuccessNotice, createErrorNotice } =
150
+ useDispatch( noticesStore );
151
+ const { editEntityRecord, saveEditedEntityRecord } =
152
+ useDispatch( coreStore );
153
+
154
+ return useMemo(
155
+ () => ( {
156
+ id: 'restore',
157
+ label: __( 'Restore' ),
158
+ isPrimary: true,
159
+ icon: backup,
160
+ isEligible( { status } ) {
161
+ return status === 'trash';
162
+ },
163
+ async callback( post ) {
164
+ await editEntityRecord( 'postType', post.type, post.id, {
165
+ status: 'draft',
166
+ } );
167
+ try {
168
+ await saveEditedEntityRecord(
169
+ 'postType',
170
+ post.type,
171
+ post.id,
172
+ { throwOnError: true }
173
+ );
174
+ createSuccessNotice(
175
+ sprintf(
176
+ /* translators: The posts's title. */
177
+ __( '"%s" has been restored.' ),
178
+ decodeEntities( post.title.rendered )
179
+ ),
180
+ {
181
+ type: 'snackbar',
182
+ id: 'edit-site-post-restored',
183
+ }
184
+ );
185
+ } catch ( error ) {
186
+ const errorMessage =
187
+ error.message && error.code !== 'unknown_error'
188
+ ? error.message
189
+ : __(
190
+ 'An error occurred while restoring the post.'
191
+ );
192
+
193
+ createErrorNotice( errorMessage, { type: 'snackbar' } );
194
+ }
195
+ },
196
+ } ),
197
+ [
198
+ createSuccessNotice,
199
+ createErrorNotice,
200
+ editEntityRecord,
201
+ saveEditedEntityRecord,
202
+ ]
203
+ );
204
+ }
205
+
70
206
  export const viewPostAction = {
71
207
  id: 'view-post',
72
208
  label: __( 'View' ),
@@ -75,7 +211,7 @@ export const viewPostAction = {
75
211
  isEligible( post ) {
76
212
  return post.status !== 'trash';
77
213
  },
78
- perform( post ) {
214
+ callback( post ) {
79
215
  document.location.href = post.link;
80
216
  },
81
217
  };
@@ -89,7 +225,7 @@ export function useEditPostAction() {
89
225
  isEligible( { status } ) {
90
226
  return status !== 'trash';
91
227
  },
92
- perform( post ) {
228
+ callback( post ) {
93
229
  history.push( {
94
230
  postId: post.id,
95
231
  postType: post.type,
@@ -114,7 +250,7 @@ export const postRevisionsAction = {
114
250
  post?._links?.[ 'version-history' ]?.[ 0 ]?.count ?? 0;
115
251
  return lastRevisionId && revisionsCount > 1;
116
252
  },
117
- perform( post ) {
253
+ callback( post ) {
118
254
  const href = addQueryArgs( 'revision.php', {
119
255
  revision: post?._links?.[ 'predecessor-version' ]?.[ 0 ]?.id,
120
256
  } );
@@ -61,7 +61,6 @@ import {
61
61
  } from './utils';
62
62
  import AddCustomGenericTemplateModalContent from './add-custom-generic-template-modal-content';
63
63
  import TemplateActionsLoadingScreen from './template-actions-loading-screen';
64
- import { store as editSiteStore } from '../../store';
65
64
  import { unlock } from '../../lock-unlock';
66
65
 
67
66
  const { useHistory } = unlock( routerPrivateApis );
@@ -165,7 +164,6 @@ export default function NewTemplate( {
165
164
  const { saveEntityRecord } = useDispatch( coreStore );
166
165
  const { createErrorNotice, createSuccessNotice } =
167
166
  useDispatch( noticesStore );
168
- const { setTemplate } = unlock( useDispatch( editSiteStore ) );
169
167
 
170
168
  const { homeUrl } = useSelect( ( select ) => {
171
169
  const {
@@ -208,9 +206,6 @@ export default function NewTemplate( {
208
206
  { throwOnError: true }
209
207
  );
210
208
 
211
- // Set template before navigating away to avoid initial stale value.
212
- setTemplate( newTemplate.id, newTemplate.slug );
213
-
214
209
  // Navigate to the created template editor.
215
210
  history.push( {
216
211
  postId: newTemplate.id,
@@ -27,7 +27,7 @@ import {
27
27
  NAVIGATION_POST_TYPE,
28
28
  } from '../../utils/constants';
29
29
  import { unlock } from '../../lock-unlock';
30
- import PageContentFocusManager from '../page-content-focus-manager';
30
+ import PageContentFocusNotifications from '../page-content-focus-notifications';
31
31
 
32
32
  const LAYOUT = {
33
33
  type: 'default',
@@ -134,6 +134,12 @@ export default function SiteEditorCanvas() {
134
134
  isTemplateTypeNavigation,
135
135
  }
136
136
  ) }
137
+ dropZoneElement={
138
+ // Pass in the html element of the iframe to ensure that
139
+ // the drop zone extends to the very edges of the iframe,
140
+ // even if the template is shorter than the viewport.
141
+ contentRef.current?.parentNode
142
+ }
137
143
  layout={ LAYOUT }
138
144
  renderAppender={ showBlockAppender }
139
145
  />
@@ -143,7 +149,7 @@ export default function SiteEditorCanvas() {
143
149
  )
144
150
  }
145
151
  </EditorCanvasContainer.Slot>
146
- <PageContentFocusManager contentRef={ contentRef } />
152
+ <PageContentFocusNotifications contentRef={ contentRef } />
147
153
  </>
148
154
  );
149
155
  }
@@ -172,90 +172,3 @@
172
172
  box-shadow: inset 0 0 0 2px var(--wp-admin-theme-color);
173
173
  }
174
174
  }
175
-
176
- // Fixed contextual toolbar
177
- @include editor-left(".edit-site-visual-editor .block-editor-block-contextual-toolbar.is-fixed");
178
-
179
- .edit-site-visual-editor .block-editor-block-contextual-toolbar.is-fixed {
180
- position: sticky;
181
- top: 0;
182
- z-index: z-index(".block-editor-block-popover");
183
- display: block;
184
- width: 100%;
185
-
186
- // on desktop and tablet viewports the toolbar is fixed
187
- // on top of interface header
188
- $toolbar-margin: $grid-unit-80 * 3 - 2 * $grid-unit + $grid-unit-05;
189
-
190
- @include break-medium() {
191
- // leave room for block inserter, undo and redo, list view
192
- margin-left: $toolbar-margin;
193
- // position on top of interface header
194
- position: fixed;
195
- top: $admin-bar-height;
196
- // Don't fill up when empty
197
- min-height: initial;
198
- // has to be flex for collapse button to fit
199
- display: flex;
200
-
201
- // Mimic the height of the parent, vertically align center, and provide a max-height.
202
- height: $header-height;
203
- align-items: center;
204
-
205
-
206
- // on tablet viewports the toolbar is fixed
207
- // on top of interface header and covers the whole header
208
- // except for the inserter on the left
209
- width: calc(100% - #{$toolbar-margin});
210
-
211
- &.is-collapsed {
212
- width: initial;
213
- }
214
-
215
- &:empty {
216
- width: initial;
217
- }
218
-
219
- .is-fullscreen-mode & {
220
- // leave room for block inserter, undo and redo, list view
221
- // and some margin left
222
- margin-left: $grid-unit-80 * 4 - 2 * $grid-unit;
223
-
224
- top: 0;
225
-
226
- &.is-collapsed {
227
- width: initial;
228
- }
229
-
230
- &:empty {
231
- width: initial;
232
- }
233
- }
234
-
235
- .show-icon-labels & {
236
- margin-left: $grid-unit-80 + 2 * $grid-unit; // inserter and margin
237
- width: calc(100% + 40px - #{$toolbar-margin}); //there are no undo, redo and list view buttons
238
-
239
- .is-fullscreen-mode & {
240
- margin-left: $grid-unit * 18; // site hub, inserter and margin
241
- }
242
- }
243
- }
244
-
245
- // on desktop viewports the toolbar is fixed
246
- // on top of interface header and leaves room
247
- // for the block inserter the publish button
248
- @include break-large() {
249
- width: auto;
250
- .show-icon-labels & {
251
- width: auto; //there are no undo, redo and list view buttons
252
- }
253
-
254
- .is-fullscreen-mode & {
255
- // in full screen mode we need to account for
256
- // the combined with of the tools at the right of the header and the margin left
257
- // of the toolbar which includes four buttons
258
- width: calc(100% - 280px - #{4 * $grid-unit-80});
259
- }
260
- }
261
- }
@@ -4,12 +4,16 @@
4
4
  import { useDispatch, useSelect } from '@wordpress/data';
5
5
  import { useMemo } from '@wordpress/element';
6
6
  import { store as coreStore } from '@wordpress/core-data';
7
+ import { privateApis as editorPrivateApis } from '@wordpress/editor';
8
+ import { store as preferencesStore } from '@wordpress/preferences';
9
+
7
10
  /**
8
11
  * Internal dependencies
9
12
  */
10
13
  import { store as editSiteStore } from '../../store';
11
14
  import { unlock } from '../../lock-unlock';
12
- import inserterMediaCategories from './inserter-media-categories';
15
+
16
+ const { useBlockEditorSettings } = unlock( editorPrivateApis );
13
17
 
14
18
  function useArchiveLabel( templateSlug ) {
15
19
  const taxonomyMatches = templateSlug?.match(
@@ -83,42 +87,25 @@ function useArchiveLabel( templateSlug ) {
83
87
  );
84
88
  }
85
89
 
86
- export default function useSiteEditorSettings() {
90
+ export function useSpecificEditorSettings() {
87
91
  const { setIsInserterOpened } = useDispatch( editSiteStore );
88
- const { storedSettings, canvasMode, templateType, siteSettings } =
89
- useSelect(
90
- ( select ) => {
91
- const { canUser, getEntityRecord } = select( coreStore );
92
- const { getSettings, getCanvasMode, getEditedPostType } =
93
- unlock( select( editSiteStore ) );
94
- return {
95
- storedSettings: getSettings( setIsInserterOpened ),
96
- canvasMode: getCanvasMode(),
97
- templateType: getEditedPostType(),
98
- siteSettings: canUser( 'read', 'settings' )
99
- ? getEntityRecord( 'root', 'site' )
100
- : undefined,
101
- };
102
- },
103
- [ setIsInserterOpened ]
104
- );
105
-
106
- const settingsBlockPatterns =
107
- storedSettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0
108
- storedSettings.__experimentalBlockPatterns; // WP 5.9
109
- const settingsBlockPatternCategories =
110
- storedSettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0
111
- storedSettings.__experimentalBlockPatternCategories; // WP 5.9
112
-
113
92
  const {
114
- restBlockPatterns,
115
- restBlockPatternCategories,
116
93
  templateSlug,
117
- userPatternCategories,
94
+ focusMode,
95
+ isDistractionFree,
96
+ hasFixedToolbar,
97
+ keepCaretInsideBlock,
98
+ canvasMode,
99
+ settings,
118
100
  } = useSelect( ( select ) => {
119
- const { getEditedPostType, getEditedPostId } = select( editSiteStore );
120
- const { getEditedEntityRecord, getUserPatternCategories } =
121
- select( coreStore );
101
+ const {
102
+ getEditedPostType,
103
+ getEditedPostId,
104
+ getCanvasMode,
105
+ getSettings,
106
+ } = unlock( select( editSiteStore ) );
107
+ const { get: getPreference } = select( preferencesStore );
108
+ const { getEditedEntityRecord } = select( coreStore );
122
109
  const usedPostType = getEditedPostType();
123
110
  const usedPostId = getEditedPostId();
124
111
  const _record = getEditedEntityRecord(
@@ -127,75 +114,67 @@ export default function useSiteEditorSettings() {
127
114
  usedPostId
128
115
  );
129
116
  return {
130
- restBlockPatterns: select( coreStore ).getBlockPatterns(),
131
- restBlockPatternCategories:
132
- select( coreStore ).getBlockPatternCategories(),
133
117
  templateSlug: _record.slug,
134
- userPatternCategories: getUserPatternCategories(),
118
+ focusMode: !! getPreference( 'core/edit-site', 'focusMode' ),
119
+ isDistractionFree: !! getPreference(
120
+ 'core/edit-site',
121
+ 'distractionFree'
122
+ ),
123
+ hasFixedToolbar: !! getPreference(
124
+ 'core/edit-site',
125
+ 'fixedToolbar'
126
+ ),
127
+ keepCaretInsideBlock: !! getPreference(
128
+ 'core/edit-site',
129
+ 'keepCaretInsideBlock'
130
+ ),
131
+ canvasMode: getCanvasMode(),
132
+ settings: getSettings(),
135
133
  };
136
134
  }, [] );
137
135
  const archiveLabels = useArchiveLabel( templateSlug );
138
136
 
139
- const blockPatterns = useMemo(
140
- () =>
141
- [
142
- ...( settingsBlockPatterns || [] ),
143
- ...( restBlockPatterns || [] ),
144
- ]
145
- .filter(
146
- ( x, index, arr ) =>
147
- index === arr.findIndex( ( y ) => x.name === y.name )
148
- )
149
- .filter( ( { postTypes } ) => {
150
- return (
151
- ! postTypes ||
152
- ( Array.isArray( postTypes ) &&
153
- postTypes.includes( templateType ) )
154
- );
155
- } ),
156
- [ settingsBlockPatterns, restBlockPatterns, templateType ]
157
- );
158
-
159
- const blockPatternCategories = useMemo(
160
- () =>
161
- [
162
- ...( settingsBlockPatternCategories || [] ),
163
- ...( restBlockPatternCategories || [] ),
164
- ].filter(
165
- ( x, index, arr ) =>
166
- index === arr.findIndex( ( y ) => x.name === y.name )
167
- ),
168
- [ settingsBlockPatternCategories, restBlockPatternCategories ]
169
- );
170
- return useMemo( () => {
171
- const {
172
- __experimentalAdditionalBlockPatterns,
173
- __experimentalAdditionalBlockPatternCategories,
174
- focusMode,
175
- ...restStoredSettings
176
- } = storedSettings;
177
-
137
+ const defaultEditorSettings = useMemo( () => {
178
138
  return {
179
- ...restStoredSettings,
180
- inserterMediaCategories,
181
- __experimentalBlockPatterns: blockPatterns,
182
- __experimentalBlockPatternCategories: blockPatternCategories,
183
- __experimentalUserPatternCategories: userPatternCategories,
139
+ ...settings,
140
+
141
+ __experimentalSetIsInserterOpened: setIsInserterOpened,
184
142
  focusMode: canvasMode === 'view' && focusMode ? false : focusMode,
143
+ isDistractionFree,
144
+ hasFixedToolbar,
145
+ keepCaretInsideBlock,
146
+
147
+ // I wonder if they should be set in the post editor too
185
148
  __experimentalArchiveTitleTypeLabel: archiveLabels.archiveTypeLabel,
186
149
  __experimentalArchiveTitleNameLabel: archiveLabels.archiveNameLabel,
187
- pageOnFront: siteSettings?.page_on_front,
188
- pageForPosts: siteSettings?.page_for_posts,
189
150
  };
190
151
  }, [
191
- storedSettings,
192
- blockPatterns,
193
- blockPatternCategories,
194
- userPatternCategories,
152
+ settings,
153
+ setIsInserterOpened,
154
+ focusMode,
155
+ isDistractionFree,
156
+ hasFixedToolbar,
157
+ keepCaretInsideBlock,
195
158
  canvasMode,
196
159
  archiveLabels.archiveTypeLabel,
197
160
  archiveLabels.archiveNameLabel,
198
- siteSettings?.page_on_front,
199
- siteSettings?.page_for_posts,
200
161
  ] );
162
+
163
+ return defaultEditorSettings;
164
+ }
165
+
166
+ export default function useSiteEditorSettings() {
167
+ const defaultEditorSettings = useSpecificEditorSettings();
168
+ const { postType, postId } = useSelect( ( select ) => {
169
+ const { getEditedPostType, getEditedPostId } = unlock(
170
+ select( editSiteStore )
171
+ );
172
+ const usedPostType = getEditedPostType();
173
+ const usedPostId = getEditedPostId();
174
+ return {
175
+ postType: usedPostType,
176
+ postId: usedPostId,
177
+ };
178
+ }, [] );
179
+ return useBlockEditorSettings( defaultEditorSettings, postType, postId );
201
180
  }