@wordpress/edit-site 5.24.1 → 5.25.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 (347) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/add-new-template/add-custom-template-modal-content.js +2 -3
  3. package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  4. package/build/components/block-editor/editor-canvas.js +48 -23
  5. package/build/components/block-editor/editor-canvas.js.map +1 -1
  6. package/build/components/block-editor/site-editor-canvas.js +5 -54
  7. package/build/components/block-editor/site-editor-canvas.js.map +1 -1
  8. package/build/components/block-editor/use-site-editor-settings.js +14 -5
  9. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  10. package/build/components/editor/index.js +6 -17
  11. package/build/components/editor/index.js.map +1 -1
  12. package/build/components/global-styles/font-library-modal/collection-font-variant.js +8 -7
  13. package/build/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
  14. package/build/components/global-styles/font-library-modal/context.js +1 -1
  15. package/build/components/global-styles/font-library-modal/context.js.map +1 -1
  16. package/build/components/global-styles/font-library-modal/library-font-variant.js +8 -7
  17. package/build/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  18. package/build/components/global-styles/screen-revisions/get-revision-changes.js +146 -0
  19. package/build/components/global-styles/screen-revisions/get-revision-changes.js.map +1 -0
  20. package/build/components/global-styles/screen-revisions/index.js +6 -10
  21. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  22. package/build/components/global-styles/screen-revisions/revisions-buttons.js +63 -13
  23. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  24. package/build/components/header-edit-mode/document-tools/index.js +17 -10
  25. package/build/components/header-edit-mode/document-tools/index.js.map +1 -1
  26. package/build/components/header-edit-mode/index.js +16 -38
  27. package/build/components/header-edit-mode/index.js.map +1 -1
  28. package/build/components/header-edit-mode/more-menu/index.js +11 -9
  29. package/build/components/header-edit-mode/more-menu/index.js.map +1 -1
  30. package/build/components/layout/index.js +9 -8
  31. package/build/components/layout/index.js.map +1 -1
  32. package/build/components/page/header.js +2 -1
  33. package/build/components/page/header.js.map +1 -1
  34. package/build/components/page-pages/index.js +31 -28
  35. package/build/components/page-pages/index.js.map +1 -1
  36. package/build/components/page-patterns/patterns-list.js +1 -2
  37. package/build/components/page-patterns/patterns-list.js.map +1 -1
  38. package/build/components/page-patterns/rename-menu-item.js +3 -0
  39. package/build/components/page-patterns/rename-menu-item.js.map +1 -1
  40. package/build/components/page-templates/dataviews-templates.js +18 -17
  41. package/build/components/page-templates/dataviews-templates.js.map +1 -1
  42. package/build/components/preferences-modal/index.js +36 -20
  43. package/build/components/preferences-modal/index.js.map +1 -1
  44. package/build/components/routes/use-title.js +3 -4
  45. package/build/components/routes/use-title.js.map +1 -1
  46. package/build/components/save-button/index.js +2 -1
  47. package/build/components/save-button/index.js.map +1 -1
  48. package/build/components/sidebar/index.js +26 -12
  49. package/build/components/sidebar/index.js.map +1 -1
  50. package/build/components/sidebar-dataviews/dataview-item.js +2 -10
  51. package/build/components/sidebar-dataviews/dataview-item.js.map +1 -1
  52. package/build/components/sidebar-dataviews/default-views.js +2 -2
  53. package/build/components/sidebar-dataviews/default-views.js.map +1 -1
  54. package/build/components/sidebar-edit-mode/page-panels/index.js +9 -3
  55. package/build/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  56. package/build/components/sidebar-edit-mode/page-panels/page-summary.js +1 -2
  57. package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  58. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +3 -0
  59. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -1
  60. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +1 -1
  61. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
  62. package/build/components/sidebar-navigation-screen-template/home-template-details.js +3 -89
  63. package/build/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
  64. package/build/components/sidebar-navigation-screen-template/index.js +2 -1
  65. package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
  66. package/build/components/sidebar-navigation-screen-template/template-areas.js +117 -0
  67. package/build/components/sidebar-navigation-screen-template/template-areas.js.map +1 -0
  68. package/build/components/site-hub/index.js +6 -3
  69. package/build/components/site-hub/index.js.map +1 -1
  70. package/build/components/template-actions/rename-menu-item.js +3 -0
  71. package/build/components/template-actions/rename-menu-item.js.map +1 -1
  72. package/build/components/welcome-guide/styles.js +1 -1
  73. package/build/components/welcome-guide/styles.js.map +1 -1
  74. package/build/hooks/commands/use-common-commands.js +9 -1
  75. package/build/hooks/commands/use-common-commands.js.map +1 -1
  76. package/build/hooks/navigation-menu-edit.js +1 -1
  77. package/build/hooks/navigation-menu-edit.js.map +1 -1
  78. package/build/hooks/template-part-edit.js +1 -1
  79. package/build/hooks/template-part-edit.js.map +1 -1
  80. package/build/store/actions.js +15 -8
  81. package/build/store/actions.js.map +1 -1
  82. package/build/store/reducer.js +0 -18
  83. package/build/store/reducer.js.map +1 -1
  84. package/build/store/selectors.js +12 -6
  85. package/build/store/selectors.js.map +1 -1
  86. package/build/utils/constants.js +15 -1
  87. package/build/utils/constants.js.map +1 -1
  88. package/build-module/components/add-new-template/add-custom-template-modal-content.js +1 -1
  89. package/build-module/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  90. package/build-module/components/block-editor/editor-canvas.js +50 -25
  91. package/build-module/components/block-editor/editor-canvas.js.map +1 -1
  92. package/build-module/components/block-editor/site-editor-canvas.js +8 -56
  93. package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
  94. package/build-module/components/block-editor/use-site-editor-settings.js +14 -5
  95. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  96. package/build-module/components/editor/index.js +9 -20
  97. package/build-module/components/editor/index.js.map +1 -1
  98. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js +9 -7
  99. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
  100. package/build-module/components/global-styles/font-library-modal/context.js +1 -1
  101. package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
  102. package/build-module/components/global-styles/font-library-modal/library-font-variant.js +9 -7
  103. package/build-module/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  104. package/build-module/components/global-styles/screen-revisions/get-revision-changes.js +139 -0
  105. package/build-module/components/global-styles/screen-revisions/get-revision-changes.js.map +1 -0
  106. package/build-module/components/global-styles/screen-revisions/index.js +7 -11
  107. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  108. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +64 -14
  109. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  110. package/build-module/components/header-edit-mode/document-tools/index.js +17 -10
  111. package/build-module/components/header-edit-mode/document-tools/index.js.map +1 -1
  112. package/build-module/components/header-edit-mode/index.js +20 -42
  113. package/build-module/components/header-edit-mode/index.js.map +1 -1
  114. package/build-module/components/header-edit-mode/more-menu/index.js +12 -10
  115. package/build-module/components/header-edit-mode/more-menu/index.js.map +1 -1
  116. package/build-module/components/layout/index.js +9 -8
  117. package/build-module/components/layout/index.js.map +1 -1
  118. package/build-module/components/page/header.js +2 -1
  119. package/build-module/components/page/header.js.map +1 -1
  120. package/build-module/components/page-pages/index.js +31 -28
  121. package/build-module/components/page-pages/index.js.map +1 -1
  122. package/build-module/components/page-patterns/patterns-list.js +1 -2
  123. package/build-module/components/page-patterns/patterns-list.js.map +1 -1
  124. package/build-module/components/page-patterns/rename-menu-item.js +3 -0
  125. package/build-module/components/page-patterns/rename-menu-item.js.map +1 -1
  126. package/build-module/components/page-templates/dataviews-templates.js +18 -17
  127. package/build-module/components/page-templates/dataviews-templates.js.map +1 -1
  128. package/build-module/components/preferences-modal/index.js +37 -21
  129. package/build-module/components/preferences-modal/index.js.map +1 -1
  130. package/build-module/components/routes/use-title.js +3 -4
  131. package/build-module/components/routes/use-title.js.map +1 -1
  132. package/build-module/components/save-button/index.js +2 -1
  133. package/build-module/components/save-button/index.js.map +1 -1
  134. package/build-module/components/sidebar/index.js +26 -12
  135. package/build-module/components/sidebar/index.js.map +1 -1
  136. package/build-module/components/sidebar-dataviews/dataview-item.js +2 -10
  137. package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -1
  138. package/build-module/components/sidebar-dataviews/default-views.js +2 -2
  139. package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
  140. package/build-module/components/sidebar-edit-mode/page-panels/index.js +9 -3
  141. package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  142. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +2 -3
  143. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  144. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +3 -0
  145. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -1
  146. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +1 -1
  147. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
  148. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js +5 -90
  149. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
  150. package/build-module/components/sidebar-navigation-screen-template/index.js +2 -1
  151. package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -1
  152. package/build-module/components/sidebar-navigation-screen-template/template-areas.js +109 -0
  153. package/build-module/components/sidebar-navigation-screen-template/template-areas.js.map +1 -0
  154. package/build-module/components/site-hub/index.js +6 -3
  155. package/build-module/components/site-hub/index.js.map +1 -1
  156. package/build-module/components/template-actions/rename-menu-item.js +3 -0
  157. package/build-module/components/template-actions/rename-menu-item.js.map +1 -1
  158. package/build-module/components/welcome-guide/styles.js +1 -1
  159. package/build-module/components/welcome-guide/styles.js.map +1 -1
  160. package/build-module/hooks/commands/use-common-commands.js +9 -1
  161. package/build-module/hooks/commands/use-common-commands.js.map +1 -1
  162. package/build-module/hooks/navigation-menu-edit.js +1 -1
  163. package/build-module/hooks/navigation-menu-edit.js.map +1 -1
  164. package/build-module/hooks/template-part-edit.js +1 -1
  165. package/build-module/hooks/template-part-edit.js.map +1 -1
  166. package/build-module/store/actions.js +13 -6
  167. package/build-module/store/actions.js.map +1 -1
  168. package/build-module/store/reducer.js +0 -17
  169. package/build-module/store/reducer.js.map +1 -1
  170. package/build-module/store/selectors.js +10 -3
  171. package/build-module/store/selectors.js.map +1 -1
  172. package/build-module/utils/constants.js +8 -0
  173. package/build-module/utils/constants.js.map +1 -1
  174. package/build-style/style-rtl.css +302 -354
  175. package/build-style/style.css +302 -354
  176. package/package.json +42 -42
  177. package/src/components/add-new-template/add-custom-template-modal-content.js +1 -1
  178. package/src/components/block-editor/editor-canvas.js +63 -47
  179. package/src/components/block-editor/site-editor-canvas.js +32 -96
  180. package/src/components/block-editor/style.scss +6 -12
  181. package/src/components/block-editor/use-site-editor-settings.js +47 -36
  182. package/src/components/editor/index.js +10 -16
  183. package/src/components/global-styles/font-library-modal/collection-font-variant.js +12 -6
  184. package/src/components/global-styles/font-library-modal/context.js +1 -1
  185. package/src/components/global-styles/font-library-modal/library-font-variant.js +12 -6
  186. package/src/components/global-styles/screen-revisions/get-revision-changes.js +171 -0
  187. package/src/components/global-styles/screen-revisions/index.js +4 -11
  188. package/src/components/global-styles/screen-revisions/revisions-buttons.js +86 -17
  189. package/src/components/global-styles/screen-revisions/style.scss +10 -2
  190. package/src/components/global-styles/screen-revisions/test/get-revision-changes.js +191 -0
  191. package/src/components/header-edit-mode/document-tools/index.js +13 -13
  192. package/src/components/header-edit-mode/index.js +29 -63
  193. package/src/components/header-edit-mode/more-menu/index.js +18 -22
  194. package/src/components/header-edit-mode/style.scss +58 -33
  195. package/src/components/layout/index.js +21 -20
  196. package/src/components/list/style.scss +5 -0
  197. package/src/components/page/header.js +2 -1
  198. package/src/components/page/style.scss +2 -2
  199. package/src/components/page-pages/index.js +59 -35
  200. package/src/components/page-pages/style.scss +3 -1
  201. package/src/components/page-patterns/patterns-list.js +5 -2
  202. package/src/components/page-patterns/rename-menu-item.js +7 -1
  203. package/src/components/page-templates/dataviews-templates.js +28 -13
  204. package/src/components/preferences-modal/index.js +59 -33
  205. package/src/components/routes/use-title.js +3 -10
  206. package/src/components/save-button/index.js +1 -0
  207. package/src/components/sidebar/index.js +41 -24
  208. package/src/components/sidebar/style.scss +10 -12
  209. package/src/components/sidebar-dataviews/dataview-item.js +3 -7
  210. package/src/components/sidebar-dataviews/default-views.js +2 -2
  211. package/src/components/sidebar-edit-mode/page-panels/index.js +39 -25
  212. package/src/components/sidebar-edit-mode/page-panels/page-summary.js +2 -2
  213. package/src/components/sidebar-edit-mode/page-panels/style.scss +1 -42
  214. package/src/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +7 -1
  215. package/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +1 -1
  216. package/src/components/sidebar-navigation-screen-template/home-template-details.js +1 -96
  217. package/src/components/sidebar-navigation-screen-template/index.js +8 -2
  218. package/src/components/sidebar-navigation-screen-template/template-areas.js +135 -0
  219. package/src/components/site-hub/index.js +4 -5
  220. package/src/components/template-actions/rename-menu-item.js +7 -1
  221. package/src/components/welcome-guide/styles.js +1 -1
  222. package/src/hooks/commands/use-common-commands.js +10 -5
  223. package/src/hooks/navigation-menu-edit.js +1 -1
  224. package/src/hooks/template-part-edit.js +1 -1
  225. package/src/store/actions.js +15 -5
  226. package/src/store/reducer.js +0 -18
  227. package/src/store/selectors.js +15 -3
  228. package/src/style.scss +1 -2
  229. package/src/utils/constants.js +8 -0
  230. package/build/components/dataviews/add-filter.js +0 -91
  231. package/build/components/dataviews/add-filter.js.map +0 -1
  232. package/build/components/dataviews/constants.js +0 -14
  233. package/build/components/dataviews/constants.js.map +0 -1
  234. package/build/components/dataviews/dataviews.js +0 -99
  235. package/build/components/dataviews/dataviews.js.map +0 -1
  236. package/build/components/dataviews/filter-summary.js +0 -62
  237. package/build/components/dataviews/filter-summary.js.map +0 -1
  238. package/build/components/dataviews/filters.js +0 -63
  239. package/build/components/dataviews/filters.js.map +0 -1
  240. package/build/components/dataviews/index.js +0 -21
  241. package/build/components/dataviews/index.js.map +0 -1
  242. package/build/components/dataviews/item-actions.js +0 -184
  243. package/build/components/dataviews/item-actions.js.map +0 -1
  244. package/build/components/dataviews/pagination.js +0 -123
  245. package/build/components/dataviews/pagination.js.map +0 -1
  246. package/build/components/dataviews/reset-filters.js +0 -33
  247. package/build/components/dataviews/reset-filters.js.map +0 -1
  248. package/build/components/dataviews/search.js +0 -51
  249. package/build/components/dataviews/search.js.map +0 -1
  250. package/build/components/dataviews/view-actions.js +0 -244
  251. package/build/components/dataviews/view-actions.js.map +0 -1
  252. package/build/components/dataviews/view-grid.js +0 -82
  253. package/build/components/dataviews/view-grid.js.map +0 -1
  254. package/build/components/dataviews/view-list.js +0 -399
  255. package/build/components/dataviews/view-list.js.map +0 -1
  256. package/build/components/dataviews/view-side-by-side.js +0 -20
  257. package/build/components/dataviews/view-side-by-side.js.map +0 -1
  258. package/build/components/header-edit-mode/document-actions/index.js +0 -172
  259. package/build/components/header-edit-mode/document-actions/index.js.map +0 -1
  260. package/build/components/page-content-focus-notifications/back-to-page-notification.js +0 -61
  261. package/build/components/page-content-focus-notifications/back-to-page-notification.js.map +0 -1
  262. package/build/components/page-content-focus-notifications/edit-template-notification.js +0 -102
  263. package/build/components/page-content-focus-notifications/edit-template-notification.js.map +0 -1
  264. package/build/components/page-content-focus-notifications/index.js +0 -22
  265. package/build/components/page-content-focus-notifications/index.js.map +0 -1
  266. package/build/components/sidebar-edit-mode/page-panels/edit-template.js +0 -101
  267. package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +0 -1
  268. package/build/components/sidebar-edit-mode/page-panels/hooks.js +0 -79
  269. package/build/components/sidebar-edit-mode/page-panels/hooks.js.map +0 -1
  270. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js +0 -48
  271. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +0 -1
  272. package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js +0 -84
  273. package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +0 -1
  274. package/build/utils/use-debounced-input.js +0 -22
  275. package/build/utils/use-debounced-input.js.map +0 -1
  276. package/build-module/components/dataviews/add-filter.js +0 -84
  277. package/build-module/components/dataviews/add-filter.js.map +0 -1
  278. package/build-module/components/dataviews/constants.js +0 -6
  279. package/build-module/components/dataviews/constants.js.map +0 -1
  280. package/build-module/components/dataviews/dataviews.js +0 -90
  281. package/build-module/components/dataviews/dataviews.js.map +0 -1
  282. package/build-module/components/dataviews/filter-summary.js +0 -55
  283. package/build-module/components/dataviews/filter-summary.js.map +0 -1
  284. package/build-module/components/dataviews/filters.js +0 -55
  285. package/build-module/components/dataviews/filters.js.map +0 -1
  286. package/build-module/components/dataviews/index.js +0 -2
  287. package/build-module/components/dataviews/index.js.map +0 -1
  288. package/build-module/components/dataviews/item-actions.js +0 -177
  289. package/build-module/components/dataviews/item-actions.js.map +0 -1
  290. package/build-module/components/dataviews/pagination.js +0 -115
  291. package/build-module/components/dataviews/pagination.js.map +0 -1
  292. package/build-module/components/dataviews/reset-filters.js +0 -26
  293. package/build-module/components/dataviews/reset-filters.js.map +0 -1
  294. package/build-module/components/dataviews/search.js +0 -43
  295. package/build-module/components/dataviews/search.js.map +0 -1
  296. package/build-module/components/dataviews/view-actions.js +0 -237
  297. package/build-module/components/dataviews/view-actions.js.map +0 -1
  298. package/build-module/components/dataviews/view-grid.js +0 -74
  299. package/build-module/components/dataviews/view-grid.js.map +0 -1
  300. package/build-module/components/dataviews/view-list.js +0 -390
  301. package/build-module/components/dataviews/view-list.js.map +0 -1
  302. package/build-module/components/dataviews/view-side-by-side.js +0 -12
  303. package/build-module/components/dataviews/view-side-by-side.js.map +0 -1
  304. package/build-module/components/header-edit-mode/document-actions/index.js +0 -164
  305. package/build-module/components/header-edit-mode/document-actions/index.js.map +0 -1
  306. package/build-module/components/page-content-focus-notifications/back-to-page-notification.js +0 -54
  307. package/build-module/components/page-content-focus-notifications/back-to-page-notification.js.map +0 -1
  308. package/build-module/components/page-content-focus-notifications/edit-template-notification.js +0 -96
  309. package/build-module/components/page-content-focus-notifications/edit-template-notification.js.map +0 -1
  310. package/build-module/components/page-content-focus-notifications/index.js +0 -14
  311. package/build-module/components/page-content-focus-notifications/index.js.map +0 -1
  312. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +0 -93
  313. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +0 -1
  314. package/build-module/components/sidebar-edit-mode/page-panels/hooks.js +0 -69
  315. package/build-module/components/sidebar-edit-mode/page-panels/hooks.js.map +0 -1
  316. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js +0 -41
  317. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +0 -1
  318. package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js +0 -77
  319. package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +0 -1
  320. package/build-module/utils/use-debounced-input.js +0 -15
  321. package/build-module/utils/use-debounced-input.js.map +0 -1
  322. package/src/components/dataviews/README.md +0 -191
  323. package/src/components/dataviews/add-filter.js +0 -108
  324. package/src/components/dataviews/constants.js +0 -5
  325. package/src/components/dataviews/dataviews.js +0 -99
  326. package/src/components/dataviews/filter-summary.js +0 -79
  327. package/src/components/dataviews/filters.js +0 -65
  328. package/src/components/dataviews/index.js +0 -1
  329. package/src/components/dataviews/item-actions.js +0 -208
  330. package/src/components/dataviews/pagination.js +0 -144
  331. package/src/components/dataviews/reset-filters.js +0 -26
  332. package/src/components/dataviews/search.js +0 -42
  333. package/src/components/dataviews/style.scss +0 -131
  334. package/src/components/dataviews/view-actions.js +0 -319
  335. package/src/components/dataviews/view-grid.js +0 -90
  336. package/src/components/dataviews/view-list.js +0 -512
  337. package/src/components/dataviews/view-side-by-side.js +0 -9
  338. package/src/components/header-edit-mode/document-actions/index.js +0 -204
  339. package/src/components/header-edit-mode/document-actions/style.scss +0 -145
  340. package/src/components/page-content-focus-notifications/back-to-page-notification.js +0 -58
  341. package/src/components/page-content-focus-notifications/edit-template-notification.js +0 -104
  342. package/src/components/page-content-focus-notifications/index.js +0 -14
  343. package/src/components/sidebar-edit-mode/page-panels/edit-template.js +0 -108
  344. package/src/components/sidebar-edit-mode/page-panels/hooks.js +0 -99
  345. package/src/components/sidebar-edit-mode/page-panels/reset-default-template.js +0 -45
  346. package/src/components/sidebar-edit-mode/page-panels/swap-template-button.js +0 -83
  347. package/src/utils/use-debounced-input.js +0 -18
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/edit-site",
3
- "version": "5.24.1",
3
+ "version": "5.25.0",
4
4
  "description": "Edit Site Page module for WordPress.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -27,46 +27,46 @@
27
27
  "react-native": "src/index",
28
28
  "dependencies": {
29
29
  "@babel/runtime": "^7.16.0",
30
- "@tanstack/react-table": "^8.10.3",
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.1",
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.1",
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",
30
+ "@wordpress/a11y": "^3.48.0",
31
+ "@wordpress/api-fetch": "^6.45.0",
32
+ "@wordpress/blob": "^3.48.0",
33
+ "@wordpress/block-editor": "^12.16.0",
34
+ "@wordpress/block-library": "^8.25.0",
35
+ "@wordpress/blocks": "^12.25.0",
36
+ "@wordpress/commands": "^0.19.0",
37
+ "@wordpress/components": "^25.14.0",
38
+ "@wordpress/compose": "^6.25.0",
39
+ "@wordpress/core-commands": "^0.17.0",
40
+ "@wordpress/core-data": "^6.25.0",
41
+ "@wordpress/data": "^9.18.0",
42
+ "@wordpress/dataviews": "^0.2.0",
43
+ "@wordpress/date": "^4.48.0",
44
+ "@wordpress/deprecated": "^3.48.0",
45
+ "@wordpress/dom": "^3.48.0",
46
+ "@wordpress/editor": "^13.25.0",
47
+ "@wordpress/element": "^5.25.0",
48
+ "@wordpress/escape-html": "^2.48.0",
49
+ "@wordpress/hooks": "^3.48.0",
50
+ "@wordpress/html-entities": "^3.48.0",
51
+ "@wordpress/i18n": "^4.48.0",
52
+ "@wordpress/icons": "^9.39.0",
53
+ "@wordpress/interface": "^5.25.0",
54
+ "@wordpress/keyboard-shortcuts": "^4.25.0",
55
+ "@wordpress/keycodes": "^3.48.0",
56
+ "@wordpress/media-utils": "^4.39.0",
57
+ "@wordpress/notices": "^4.16.0",
58
+ "@wordpress/patterns": "^1.9.0",
59
+ "@wordpress/plugins": "^6.16.0",
60
+ "@wordpress/preferences": "^3.25.0",
61
+ "@wordpress/primitives": "^3.46.0",
62
+ "@wordpress/private-apis": "^0.30.0",
63
+ "@wordpress/reusable-blocks": "^4.25.0",
64
+ "@wordpress/router": "^0.17.0",
65
+ "@wordpress/style-engine": "^1.31.0",
66
+ "@wordpress/url": "^3.49.0",
67
+ "@wordpress/viewport": "^5.25.0",
68
+ "@wordpress/widgets": "^3.25.0",
69
+ "@wordpress/wordcount": "^3.48.0",
70
70
  "change-case": "^4.1.2",
71
71
  "classnames": "^2.3.1",
72
72
  "colord": "^2.9.2",
@@ -85,5 +85,5 @@
85
85
  "publishConfig": {
86
86
  "access": "public"
87
87
  },
88
- "gitHead": "12b897d7feff1cb00ddbf9016b62c1177d9c0081"
88
+ "gitHead": "fcf61b4beff747222c2c81d09d757ca1a0abd925"
89
89
  }
@@ -15,12 +15,12 @@ import {
15
15
  } from '@wordpress/components';
16
16
  import { useEntityRecords } from '@wordpress/core-data';
17
17
  import { decodeEntities } from '@wordpress/html-entities';
18
+ import { useDebouncedInput } from '@wordpress/compose';
18
19
 
19
20
  /**
20
21
  * Internal dependencies
21
22
  */
22
23
  import { unlock } from '../../lock-unlock';
23
- import useDebouncedInput from '../../utils/use-debounced-input';
24
24
  import { mapToIHasNameAndId } from './utils';
25
25
 
26
26
  const {
@@ -6,46 +6,44 @@ import classnames from 'classnames';
6
6
  /**
7
7
  * WordPress dependencies
8
8
  */
9
- import {
10
- __experimentalUseResizeCanvas as useResizeCanvas,
11
- privateApis as blockEditorPrivateApis,
12
- store as blockEditorStore,
13
- } from '@wordpress/block-editor';
9
+ import { store as blockEditorStore } from '@wordpress/block-editor';
14
10
  import { useSelect, useDispatch } from '@wordpress/data';
15
11
  import { ENTER, SPACE } from '@wordpress/keycodes';
16
- import { useState, useEffect } from '@wordpress/element';
12
+ import { useState, useEffect, useMemo } from '@wordpress/element';
17
13
  import { __ } from '@wordpress/i18n';
14
+ import { privateApis as editorPrivateApis } from '@wordpress/editor';
18
15
 
19
16
  /**
20
17
  * Internal dependencies
21
18
  */
22
19
  import { unlock } from '../../lock-unlock';
23
20
  import { store as editSiteStore } from '../../store';
21
+ import {
22
+ FOCUSABLE_ENTITIES,
23
+ NAVIGATION_POST_TYPE,
24
+ } from '../../utils/constants';
24
25
 
25
- const { ExperimentalBlockCanvas: BlockCanvas } = unlock(
26
- blockEditorPrivateApis
27
- );
26
+ const { EditorCanvas: EditorCanvasRoot } = unlock( editorPrivateApis );
28
27
 
29
- function EditorCanvas( {
30
- enableResizing,
31
- settings,
32
- children,
33
- contentRef,
34
- ...props
35
- } ) {
36
- const { canvasMode, deviceType, isZoomOutMode } = useSelect(
37
- ( select ) => ( {
38
- deviceType:
39
- select( editSiteStore ).__experimentalGetPreviewDeviceType(),
40
- isZoomOutMode:
41
- select( blockEditorStore ).__unstableGetEditorMode() ===
42
- 'zoom-out',
43
- canvasMode: unlock( select( editSiteStore ) ).getCanvasMode(),
44
- } ),
45
- []
46
- );
28
+ function EditorCanvas( { enableResizing, settings, children, ...props } ) {
29
+ const { hasBlocks, isFocusMode, templateType, canvasMode, isZoomOutMode } =
30
+ useSelect( ( select ) => {
31
+ const { getBlockCount, __unstableGetEditorMode } =
32
+ select( blockEditorStore );
33
+ const { getEditedPostType, getCanvasMode } = unlock(
34
+ select( editSiteStore )
35
+ );
36
+ const _templateType = getEditedPostType();
37
+
38
+ return {
39
+ templateType: _templateType,
40
+ isFocusMode: FOCUSABLE_ENTITIES.includes( _templateType ),
41
+ isZoomOutMode: __unstableGetEditorMode() === 'zoom-out',
42
+ canvasMode: getCanvasMode(),
43
+ hasBlocks: !! getBlockCount(),
44
+ };
45
+ }, [] );
47
46
  const { setCanvasMode } = unlock( useDispatch( editSiteStore ) );
48
- const deviceStyles = useResizeCanvas( deviceType );
49
47
  const [ isFocused, setIsFocused ] = useState( false );
50
48
 
51
49
  useEffect( () => {
@@ -70,15 +68,48 @@ function EditorCanvas( {
70
68
  onClick: () => setCanvasMode( 'edit' ),
71
69
  readonly: true,
72
70
  };
71
+ const isTemplateTypeNavigation = templateType === NAVIGATION_POST_TYPE;
72
+ const isNavigationFocusMode = isTemplateTypeNavigation && isFocusMode;
73
+ // Hide the appender when:
74
+ // - In navigation focus mode (should only allow the root Nav block).
75
+ // - In view mode (i.e. not editing).
76
+ const showBlockAppender =
77
+ ( isNavigationFocusMode && hasBlocks ) || canvasMode === 'view'
78
+ ? false
79
+ : undefined;
80
+
81
+ const styles = useMemo(
82
+ () => [
83
+ ...settings.styles,
84
+ {
85
+ // Forming a "block formatting context" to prevent margin collapsing.
86
+ // @see https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Block_formatting_context
87
+
88
+ css: `.is-root-container{display:flow-root;${
89
+ // Some themes will have `min-height: 100vh` for the root container,
90
+ // which isn't a requirement in auto resize mode.
91
+ enableResizing ? 'min-height:0!important;' : ''
92
+ }}body{position:relative; ${
93
+ canvasMode === 'view'
94
+ ? 'cursor: pointer; min-height: 100vh;'
95
+ : ''
96
+ }}}`,
97
+ },
98
+ ],
99
+ [ settings.styles, enableResizing, canvasMode ]
100
+ );
73
101
 
74
102
  return (
75
- <BlockCanvas
76
- height="100%"
103
+ <EditorCanvasRoot
104
+ className={ classnames( 'edit-site-editor-canvas__block-list', {
105
+ 'is-navigation-block': isTemplateTypeNavigation,
106
+ } ) }
107
+ renderAppender={ showBlockAppender }
108
+ styles={ styles }
77
109
  iframeProps={ {
78
110
  expand: isZoomOutMode,
79
111
  scale: isZoomOutMode ? 0.45 : undefined,
80
112
  frameSize: isZoomOutMode ? 100 : undefined,
81
- style: enableResizing ? {} : deviceStyles,
82
113
  className: classnames(
83
114
  'edit-site-visual-editor__editor-canvas',
84
115
  {
@@ -88,24 +119,9 @@ function EditorCanvas( {
88
119
  ...props,
89
120
  ...( canvasMode === 'view' ? viewModeProps : {} ),
90
121
  } }
91
- styles={ settings.styles }
92
- contentRef={ contentRef }
93
122
  >
94
- <style>{
95
- // Forming a "block formatting context" to prevent margin collapsing.
96
- // @see https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Block_formatting_context
97
- `.is-root-container{display:flow-root;${
98
- // Some themes will have `min-height: 100vh` for the root container,
99
- // which isn't a requirement in auto resize mode.
100
- enableResizing ? 'min-height:0!important;' : ''
101
- }}body{position:relative; ${
102
- canvasMode === 'view'
103
- ? 'cursor: pointer; min-height: 100vh;'
104
- : ''
105
- }}}`
106
- }</style>
107
123
  { children }
108
- </BlockCanvas>
124
+ </EditorCanvasRoot>
109
125
  );
110
126
  }
111
127
 
@@ -5,14 +5,9 @@ import classnames from 'classnames';
5
5
  /**
6
6
  * WordPress dependencies
7
7
  */
8
- import { useSelect, useDispatch } from '@wordpress/data';
9
- import { useRef } from '@wordpress/element';
10
- import {
11
- BlockList,
12
- BlockTools,
13
- store as blockEditorStore,
14
- } from '@wordpress/block-editor';
8
+ import { useSelect } from '@wordpress/data';
15
9
  import { useViewportMatch, useResizeObserver } from '@wordpress/compose';
10
+
16
11
  /**
17
12
  * Internal dependencies
18
13
  */
@@ -27,17 +22,8 @@ import {
27
22
  NAVIGATION_POST_TYPE,
28
23
  } from '../../utils/constants';
29
24
  import { unlock } from '../../lock-unlock';
30
- import PageContentFocusNotifications from '../page-content-focus-notifications';
31
-
32
- const LAYOUT = {
33
- type: 'default',
34
- // At the root level of the site editor, no alignments should be allowed.
35
- alignments: [],
36
- };
37
25
 
38
26
  export default function SiteEditorCanvas() {
39
- const { clearSelectedBlock } = useDispatch( blockEditorStore );
40
-
41
27
  const { templateType, isFocusMode, isViewMode } = useSelect( ( select ) => {
42
28
  const { getEditedPostType, getCanvasMode } = unlock(
43
29
  select( editSiteStore )
@@ -56,16 +42,6 @@ export default function SiteEditorCanvas() {
56
42
 
57
43
  const settings = useSiteEditorSettings();
58
44
 
59
- const { hasBlocks } = useSelect( ( select ) => {
60
- const { getBlockCount } = select( blockEditorStore );
61
-
62
- const blocks = getBlockCount();
63
-
64
- return {
65
- hasBlocks: !! blocks,
66
- };
67
- }, [] );
68
-
69
45
  const isMobileViewport = useViewportMatch( 'small', '<' );
70
46
  const enableResizing =
71
47
  isFocusMode &&
@@ -73,83 +49,43 @@ export default function SiteEditorCanvas() {
73
49
  // Disable resizing in mobile viewport.
74
50
  ! isMobileViewport;
75
51
 
76
- const contentRef = useRef();
77
52
  const isTemplateTypeNavigation = templateType === NAVIGATION_POST_TYPE;
78
-
79
53
  const isNavigationFocusMode = isTemplateTypeNavigation && isFocusMode;
80
-
81
- // Hide the appender when:
82
- // - In navigation focus mode (should only allow the root Nav block).
83
- // - In view mode (i.e. not editing).
84
- const showBlockAppender =
85
- ( isNavigationFocusMode && hasBlocks ) || isViewMode
86
- ? false
87
- : undefined;
88
-
89
54
  const forceFullHeight = isNavigationFocusMode;
90
55
 
91
56
  return (
92
- <>
93
- <EditorCanvasContainer.Slot>
94
- { ( [ editorCanvasView ] ) =>
95
- editorCanvasView ? (
96
- <div className="edit-site-visual-editor is-focus-mode">
97
- { editorCanvasView }
98
- </div>
99
- ) : (
100
- <BlockTools
101
- className={ classnames( 'edit-site-visual-editor', {
102
- 'is-focus-mode':
103
- isFocusMode || !! editorCanvasView,
104
- 'is-view-mode': isViewMode,
105
- } ) }
106
- __unstableContentRef={ contentRef }
107
- onClick={ ( event ) => {
108
- // Clear selected block when clicking on the gray background.
109
- if ( event.target === event.currentTarget ) {
110
- clearSelectedBlock();
111
- }
112
- } }
57
+ <EditorCanvasContainer.Slot>
58
+ { ( [ editorCanvasView ] ) =>
59
+ editorCanvasView ? (
60
+ <div className="edit-site-visual-editor is-focus-mode">
61
+ { editorCanvasView }
62
+ </div>
63
+ ) : (
64
+ <div
65
+ className={ classnames( 'edit-site-visual-editor', {
66
+ 'is-focus-mode': isFocusMode || !! editorCanvasView,
67
+ 'is-view-mode': isViewMode,
68
+ } ) }
69
+ >
70
+ <BackButton />
71
+ <ResizableEditor
72
+ enableResizing={ enableResizing }
73
+ height={
74
+ sizes.height && ! forceFullHeight
75
+ ? sizes.height
76
+ : '100%'
77
+ }
113
78
  >
114
- <BackButton />
115
- <ResizableEditor
79
+ <EditorCanvas
116
80
  enableResizing={ enableResizing }
117
- height={
118
- sizes.height && ! forceFullHeight
119
- ? sizes.height
120
- : '100%'
121
- }
81
+ settings={ settings }
122
82
  >
123
- <EditorCanvas
124
- enableResizing={ enableResizing }
125
- settings={ settings }
126
- contentRef={ contentRef }
127
- >
128
- { resizeObserver }
129
- <BlockList
130
- className={ classnames(
131
- 'edit-site-block-editor__block-list wp-site-blocks',
132
- {
133
- 'is-navigation-block':
134
- isTemplateTypeNavigation,
135
- }
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
- }
143
- layout={ LAYOUT }
144
- renderAppender={ showBlockAppender }
145
- />
146
- </EditorCanvas>
147
- </ResizableEditor>
148
- </BlockTools>
149
- )
150
- }
151
- </EditorCanvasContainer.Slot>
152
- <PageContentFocusNotifications contentRef={ contentRef } />
153
- </>
83
+ { resizeObserver }
84
+ </EditorCanvas>
85
+ </ResizableEditor>
86
+ </div>
87
+ )
88
+ }
89
+ </EditorCanvasContainer.Slot>
154
90
  );
155
91
  }
@@ -14,7 +14,7 @@
14
14
 
15
15
  // Navigation focus mode requires padding around the root Navigation block
16
16
  // for presentational purposes.
17
- .edit-site-block-editor__block-list.is-navigation-block {
17
+ .edit-site-editor-canvas__block-list.is-navigation-block {
18
18
  padding: $grid-unit-30;
19
19
  }
20
20
 
@@ -69,17 +69,6 @@
69
69
 
70
70
  &.is-view-mode {
71
71
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.8), 0 8px 10px -6px rgba(0, 0, 0, 0.8);
72
-
73
- /*
74
- Temporary to hide the contextual toolbar in view mode.
75
- See: https://github.com/WordPress/gutenberg/pull/46298
76
- This rule can possibly be removed once the
77
- contextual toolbar has been redesigned.
78
- See: https://github.com/WordPress/gutenberg/issues/40450
79
- */
80
- .block-editor-block-contextual-toolbar.is-fixed {
81
- display: none;
82
- }
83
72
  }
84
73
  }
85
74
 
@@ -96,6 +85,11 @@
96
85
  }
97
86
  }
98
87
 
88
+ // The toolbar header in distraction mode sits over the back button, which renders it unreachable.
89
+ .is-distraction-free .edit-site-visual-editor__back-button {
90
+ display: none;
91
+ }
92
+
99
93
  .resizable-editor__drag-handle {
100
94
  position: absolute;
101
95
  top: 0;
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
+ import { useViewportMatch } from '@wordpress/compose';
4
5
  import { useDispatch, useSelect } from '@wordpress/data';
5
6
  import { useMemo } from '@wordpress/element';
6
7
  import { store as coreStore } from '@wordpress/core-data';
@@ -89,6 +90,7 @@ function useArchiveLabel( templateSlug ) {
89
90
 
90
91
  export function useSpecificEditorSettings() {
91
92
  const { setIsInserterOpened } = useDispatch( editSiteStore );
93
+ const isLargeViewport = useViewportMatch( 'medium' );
92
94
  const {
93
95
  templateSlug,
94
96
  focusMode,
@@ -97,52 +99,60 @@ export function useSpecificEditorSettings() {
97
99
  keepCaretInsideBlock,
98
100
  canvasMode,
99
101
  settings,
100
- } = useSelect( ( select ) => {
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 );
109
- const usedPostType = getEditedPostType();
110
- const usedPostId = getEditedPostId();
111
- const _record = getEditedEntityRecord(
112
- 'postType',
113
- usedPostType,
114
- usedPostId
115
- );
116
- return {
117
- templateSlug: _record.slug,
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(),
133
- };
134
- }, [] );
102
+ postWithTemplate,
103
+ } = useSelect(
104
+ ( select ) => {
105
+ const {
106
+ getEditedPostType,
107
+ getEditedPostId,
108
+ getEditedPostContext,
109
+ getCanvasMode,
110
+ getSettings,
111
+ } = unlock( select( editSiteStore ) );
112
+ const { get: getPreference } = select( preferencesStore );
113
+ const { getEditedEntityRecord } = select( coreStore );
114
+ const usedPostType = getEditedPostType();
115
+ const usedPostId = getEditedPostId();
116
+ const _record = getEditedEntityRecord(
117
+ 'postType',
118
+ usedPostType,
119
+ usedPostId
120
+ );
121
+ const _context = getEditedPostContext();
122
+ return {
123
+ templateSlug: _record.slug,
124
+ focusMode: !! getPreference( 'core/edit-site', 'focusMode' ),
125
+ isDistractionFree: !! getPreference(
126
+ 'core/edit-site',
127
+ 'distractionFree'
128
+ ),
129
+ hasFixedToolbar:
130
+ !! getPreference( 'core/edit-site', 'fixedToolbar' ) ||
131
+ ! isLargeViewport,
132
+ keepCaretInsideBlock: !! getPreference(
133
+ 'core/edit-site',
134
+ 'keepCaretInsideBlock'
135
+ ),
136
+ canvasMode: getCanvasMode(),
137
+ settings: getSettings(),
138
+ postWithTemplate: _context?.postId,
139
+ };
140
+ },
141
+ [ isLargeViewport ]
142
+ );
135
143
  const archiveLabels = useArchiveLabel( templateSlug );
136
-
144
+ const defaultRenderingMode = postWithTemplate ? 'template-locked' : 'all';
137
145
  const defaultEditorSettings = useMemo( () => {
138
146
  return {
139
147
  ...settings,
140
148
 
149
+ supportsTemplateMode: true,
141
150
  __experimentalSetIsInserterOpened: setIsInserterOpened,
142
151
  focusMode: canvasMode === 'view' && focusMode ? false : focusMode,
143
152
  isDistractionFree,
144
153
  hasFixedToolbar,
145
154
  keepCaretInsideBlock,
155
+ defaultRenderingMode,
146
156
 
147
157
  // I wonder if they should be set in the post editor too
148
158
  __experimentalArchiveTitleTypeLabel: archiveLabels.archiveTypeLabel,
@@ -158,6 +168,7 @@ export function useSpecificEditorSettings() {
158
168
  canvasMode,
159
169
  archiveLabels.archiveTypeLabel,
160
170
  archiveLabels.archiveNameLabel,
171
+ defaultRenderingMode,
161
172
  ] );
162
173
 
163
174
  return defaultEditorSettings;
@@ -6,12 +6,13 @@ import classnames from 'classnames';
6
6
  /**
7
7
  * WordPress dependencies
8
8
  */
9
- import { useSelect, useDispatch } from '@wordpress/data';
9
+ import { useSelect } from '@wordpress/data';
10
10
  import { Notice } from '@wordpress/components';
11
- import { useInstanceId } from '@wordpress/compose';
11
+ import { useInstanceId, useViewportMatch } from '@wordpress/compose';
12
12
  import { store as preferencesStore } from '@wordpress/preferences';
13
13
  import {
14
14
  BlockBreadcrumb,
15
+ BlockToolbar,
15
16
  store as blockEditorStore,
16
17
  privateApis as blockEditorPrivateApis,
17
18
  BlockInspector,
@@ -29,7 +30,6 @@ import {
29
30
  } from '@wordpress/editor';
30
31
  import { __, sprintf } from '@wordpress/i18n';
31
32
  import { store as coreDataStore } from '@wordpress/core-data';
32
- import { useEffect } from '@wordpress/element';
33
33
 
34
34
  /**
35
35
  * Internal dependencies
@@ -93,6 +93,8 @@ export default function Editor( { listViewToggleElement, isLoading } ) {
93
93
 
94
94
  const { type: editedPostType } = editedPost;
95
95
 
96
+ const isLargeViewport = useViewportMatch( 'medium' );
97
+
96
98
  const {
97
99
  context,
98
100
  contextPost,
@@ -149,7 +151,6 @@ export default function Editor( { listViewToggleElement, isLoading } ) {
149
151
  ),
150
152
  };
151
153
  }, [] );
152
- const { setRenderingMode } = useDispatch( editorStore );
153
154
 
154
155
  const isViewMode = canvasMode === 'view';
155
156
  const isEditMode = canvasMode === 'edit';
@@ -169,8 +170,8 @@ export default function Editor( { listViewToggleElement, isLoading } ) {
169
170
  let title;
170
171
  if ( hasLoadedPost ) {
171
172
  title = sprintf(
172
- // translators: A breadcrumb trail in browser tab. %1$s: title of template being edited, %2$s: type of template (Template or Template Part).
173
- __( '%1$s ‹ %2$s ‹ Editor' ),
173
+ // translators: A breadcrumb trail for the Admin document title. %1$s: title of template being edited, %2$s: type of template (Template or Template Part).
174
+ __( '%1$s ‹ %2$s' ),
174
175
  getTitle(),
175
176
  POST_TYPE_LABELS[ editedPostType ] ??
176
177
  POST_TYPE_LABELS[ TEMPLATE_POST_TYPE ]
@@ -192,16 +193,6 @@ export default function Editor( { listViewToggleElement, isLoading } ) {
192
193
  ( ( postWithTemplate && !! contextPost && !! editedPost ) ||
193
194
  ( ! postWithTemplate && !! editedPost ) );
194
195
 
195
- // This is the only reliable way I've found to reinitialize the rendering mode
196
- // when the canvas mode or the edited entity changes.
197
- useEffect( () => {
198
- if ( canvasMode === 'edit' && postWithTemplate ) {
199
- setRenderingMode( 'template-locked' );
200
- } else {
201
- setRenderingMode( 'all' );
202
- }
203
- }, [ canvasMode, postWithTemplate, setRenderingMode ] );
204
-
205
196
  return (
206
197
  <>
207
198
  { ! isReady ? <CanvasLoader id={ loadingProgressId } /> : null }
@@ -244,6 +235,9 @@ export default function Editor( { listViewToggleElement, isLoading } ) {
244
235
  <SidebarInspectorFill>
245
236
  <BlockInspector />
246
237
  </SidebarInspectorFill>
238
+ { ! isLargeViewport && (
239
+ <BlockToolbar hideDragHandle />
240
+ ) }
247
241
  <SiteEditorCanvas />
248
242
  <BlockRemovalWarningModal
249
243
  rules={ blockRemovalRules }