@wordpress/edit-site 5.21.1-next.f8d8eceb.0 → 5.23.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 (375) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/components/actions/index.js +86 -4
  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/use-site-editor-settings.js +54 -63
  7. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  8. package/build/components/dataviews/add-filter.js +90 -0
  9. package/build/components/dataviews/add-filter.js.map +1 -0
  10. package/build/components/dataviews/dataviews.js +23 -4
  11. package/build/components/dataviews/dataviews.js.map +1 -1
  12. package/build/components/dataviews/filters.js +36 -32
  13. package/build/components/dataviews/filters.js.map +1 -1
  14. package/build/components/dataviews/in-filter.js +22 -20
  15. package/build/components/dataviews/in-filter.js.map +1 -1
  16. package/build/components/dataviews/index.js +9 -2
  17. package/build/components/dataviews/index.js.map +1 -1
  18. package/build/components/dataviews/item-actions.js +81 -13
  19. package/build/components/dataviews/item-actions.js.map +1 -1
  20. package/build/components/dataviews/pagination.js +3 -2
  21. package/build/components/dataviews/pagination.js.map +1 -1
  22. package/build/components/dataviews/reset-filters.js +33 -0
  23. package/build/components/dataviews/reset-filters.js.map +1 -0
  24. package/build/components/dataviews/search.js +1 -0
  25. package/build/components/dataviews/search.js.map +1 -1
  26. package/build/components/dataviews/view-actions.js +27 -10
  27. package/build/components/dataviews/view-actions.js.map +1 -1
  28. package/build/components/dataviews/view-list.js +126 -5
  29. package/build/components/dataviews/view-list.js.map +1 -1
  30. package/build/components/dataviews/view-side-by-side.js +20 -0
  31. package/build/components/dataviews/view-side-by-side.js.map +1 -0
  32. package/build/components/editor/index.js +53 -53
  33. package/build/components/editor/index.js.map +1 -1
  34. package/build/components/global-styles/screen-revisions/index.js +42 -21
  35. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  36. package/build/components/global-styles/screen-root.js +3 -3
  37. package/build/components/global-styles/screen-root.js.map +1 -1
  38. package/build/components/global-styles/ui.js +3 -3
  39. package/build/components/global-styles/ui.js.map +1 -1
  40. package/build/components/global-styles-renderer/index.js +1 -1
  41. package/build/components/global-styles-renderer/index.js.map +1 -1
  42. package/build/components/header-edit-mode/document-tools/index.js +160 -0
  43. package/build/components/header-edit-mode/document-tools/index.js.map +1 -0
  44. package/build/components/header-edit-mode/index.js +48 -116
  45. package/build/components/header-edit-mode/index.js.map +1 -1
  46. package/build/components/header-edit-mode/more-menu/site-export.js +2 -6
  47. package/build/components/header-edit-mode/more-menu/site-export.js.map +1 -1
  48. package/build/components/layout/index.js +4 -19
  49. package/build/components/layout/index.js.map +1 -1
  50. package/build/components/list/added-by.js +1 -0
  51. package/build/components/list/added-by.js.map +1 -1
  52. package/build/components/page-content-focus-manager/back-to-page-notification.js +5 -10
  53. package/build/components/page-content-focus-manager/back-to-page-notification.js.map +1 -1
  54. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js +36 -23
  55. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
  56. package/build/components/page-main/index.js +2 -1
  57. package/build/components/page-main/index.js.map +1 -1
  58. package/build/components/page-pages/index.js +133 -78
  59. package/build/components/page-pages/index.js.map +1 -1
  60. package/build/components/page-pages/side-editor.js +25 -0
  61. package/build/components/page-pages/side-editor.js.map +1 -0
  62. package/build/components/page-patterns/grid-item.js +2 -2
  63. package/build/components/page-patterns/grid-item.js.map +1 -1
  64. package/build/components/page-patterns/patterns-list.js +3 -3
  65. package/build/components/page-patterns/patterns-list.js.map +1 -1
  66. package/build/components/page-patterns/rename-category-menu-item.js +27 -9
  67. package/build/components/page-patterns/rename-category-menu-item.js.map +1 -1
  68. package/build/components/page-patterns/use-patterns.js +1 -1
  69. package/build/components/page-patterns/use-patterns.js.map +1 -1
  70. package/build/components/page-templates/dataviews-templates.js +201 -0
  71. package/build/components/page-templates/dataviews-templates.js.map +1 -0
  72. package/build/components/page-templates/template-actions.js +168 -0
  73. package/build/components/page-templates/template-actions.js.map +1 -0
  74. package/build/components/save-button/index.js +4 -2
  75. package/build/components/save-button/index.js.map +1 -1
  76. package/build/components/sidebar/index.js +1 -2
  77. package/build/components/sidebar/index.js.map +1 -1
  78. package/build/components/sidebar-dataviews/add-new-view.js +124 -0
  79. package/build/components/sidebar-dataviews/add-new-view.js.map +1 -0
  80. package/build/components/sidebar-dataviews/custom-dataviews-list.js +189 -0
  81. package/build/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -0
  82. package/build/components/sidebar-dataviews/dataview-item.js +71 -0
  83. package/build/components/sidebar-dataviews/dataview-item.js.map +1 -0
  84. package/build/components/sidebar-dataviews/default-views.js +60 -0
  85. package/build/components/sidebar-dataviews/default-views.js.map +1 -0
  86. package/build/components/sidebar-dataviews/index.js +22 -37
  87. package/build/components/sidebar-dataviews/index.js.map +1 -1
  88. package/build/components/sidebar-edit-mode/default-sidebar.js +2 -6
  89. package/build/components/sidebar-edit-mode/default-sidebar.js.map +1 -1
  90. package/build/components/sidebar-edit-mode/page-panels/edit-template.js +11 -11
  91. package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
  92. package/build/components/sidebar-edit-mode/page-panels/page-summary.js +2 -1
  93. package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  94. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js +4 -12
  95. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -1
  96. package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js +4 -12
  97. package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -1
  98. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js +2 -6
  99. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
  100. package/build/components/sidebar-edit-mode/template-panel/hooks.js +3 -3
  101. package/build/components/sidebar-edit-mode/template-panel/hooks.js.map +1 -1
  102. package/build/components/sidebar-navigation-screen-global-styles/index.js +1 -1
  103. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  104. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +1 -1
  105. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -1
  106. package/build/components/sidebar-navigation-screen-page/page-details.js +4 -12
  107. package/build/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  108. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +1 -1
  109. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
  110. package/build/components/site-hub/index.js +18 -6
  111. package/build/components/site-hub/index.js.map +1 -1
  112. package/build/components/start-template-options/index.js +12 -16
  113. package/build/components/start-template-options/index.js.map +1 -1
  114. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +112 -49
  115. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  116. package/build/components/template-part-converter/convert-to-regular.js +1 -1
  117. package/build/components/template-part-converter/convert-to-regular.js.map +1 -1
  118. package/build/hooks/push-changes-to-global-styles/index.js +3 -1
  119. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  120. package/build/hooks/template-part-edit.js +6 -2
  121. package/build/hooks/template-part-edit.js.map +1 -1
  122. package/build/index.js +0 -3
  123. package/build/index.js.map +1 -1
  124. package/build/store/actions.js +35 -82
  125. package/build/store/actions.js.map +1 -1
  126. package/build/store/selectors.js +25 -63
  127. package/build/store/selectors.js.map +1 -1
  128. package/build/utils/constants.js +3 -3
  129. package/build/utils/constants.js.map +1 -1
  130. package/build/utils/use-activate-theme.js +8 -0
  131. package/build/utils/use-activate-theme.js.map +1 -1
  132. package/build-module/components/actions/index.js +85 -5
  133. package/build-module/components/actions/index.js.map +1 -1
  134. package/build-module/components/add-new-template/new-template.js +0 -7
  135. package/build-module/components/add-new-template/new-template.js.map +1 -1
  136. package/build-module/components/block-editor/use-site-editor-settings.js +54 -62
  137. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  138. package/build-module/components/dataviews/add-filter.js +83 -0
  139. package/build-module/components/dataviews/add-filter.js.map +1 -0
  140. package/build-module/components/dataviews/dataviews.js +22 -4
  141. package/build-module/components/dataviews/dataviews.js.map +1 -1
  142. package/build-module/components/dataviews/filters.js +34 -32
  143. package/build-module/components/dataviews/filters.js.map +1 -1
  144. package/build-module/components/dataviews/in-filter.js +20 -19
  145. package/build-module/components/dataviews/in-filter.js.map +1 -1
  146. package/build-module/components/dataviews/index.js +1 -1
  147. package/build-module/components/dataviews/index.js.map +1 -1
  148. package/build-module/components/dataviews/item-actions.js +84 -16
  149. package/build-module/components/dataviews/item-actions.js.map +1 -1
  150. package/build-module/components/dataviews/pagination.js +3 -2
  151. package/build-module/components/dataviews/pagination.js.map +1 -1
  152. package/build-module/components/dataviews/reset-filters.js +26 -0
  153. package/build-module/components/dataviews/reset-filters.js.map +1 -0
  154. package/build-module/components/dataviews/search.js +1 -0
  155. package/build-module/components/dataviews/search.js.map +1 -1
  156. package/build-module/components/dataviews/view-actions.js +28 -11
  157. package/build-module/components/dataviews/view-actions.js.map +1 -1
  158. package/build-module/components/dataviews/view-list.js +128 -7
  159. package/build-module/components/dataviews/view-list.js.map +1 -1
  160. package/build-module/components/dataviews/view-side-by-side.js +12 -0
  161. package/build-module/components/dataviews/view-side-by-side.js.map +1 -0
  162. package/build-module/components/editor/index.js +57 -57
  163. package/build-module/components/editor/index.js.map +1 -1
  164. package/build-module/components/global-styles/screen-revisions/index.js +42 -21
  165. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  166. package/build-module/components/global-styles/screen-root.js +3 -3
  167. package/build-module/components/global-styles/screen-root.js.map +1 -1
  168. package/build-module/components/global-styles/ui.js +3 -3
  169. package/build-module/components/global-styles/ui.js.map +1 -1
  170. package/build-module/components/global-styles-renderer/index.js +1 -1
  171. package/build-module/components/global-styles-renderer/index.js.map +1 -1
  172. package/build-module/components/header-edit-mode/document-tools/index.js +152 -0
  173. package/build-module/components/header-edit-mode/document-tools/index.js.map +1 -0
  174. package/build-module/components/header-edit-mode/index.js +52 -120
  175. package/build-module/components/header-edit-mode/index.js.map +1 -1
  176. package/build-module/components/header-edit-mode/more-menu/site-export.js +2 -6
  177. package/build-module/components/header-edit-mode/more-menu/site-export.js.map +1 -1
  178. package/build-module/components/layout/index.js +5 -20
  179. package/build-module/components/layout/index.js.map +1 -1
  180. package/build-module/components/list/added-by.js +1 -1
  181. package/build-module/components/list/added-by.js.map +1 -1
  182. package/build-module/components/page-content-focus-manager/back-to-page-notification.js +5 -10
  183. package/build-module/components/page-content-focus-manager/back-to-page-notification.js.map +1 -1
  184. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js +36 -23
  185. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
  186. package/build-module/components/page-main/index.js +2 -1
  187. package/build-module/components/page-main/index.js.map +1 -1
  188. package/build-module/components/page-pages/index.js +137 -80
  189. package/build-module/components/page-pages/index.js.map +1 -1
  190. package/build-module/components/page-pages/side-editor.js +17 -0
  191. package/build-module/components/page-pages/side-editor.js.map +1 -0
  192. package/build-module/components/page-patterns/grid-item.js +2 -2
  193. package/build-module/components/page-patterns/grid-item.js.map +1 -1
  194. package/build-module/components/page-patterns/patterns-list.js +4 -4
  195. package/build-module/components/page-patterns/patterns-list.js.map +1 -1
  196. package/build-module/components/page-patterns/rename-category-menu-item.js +25 -9
  197. package/build-module/components/page-patterns/rename-category-menu-item.js.map +1 -1
  198. package/build-module/components/page-patterns/use-patterns.js +2 -2
  199. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  200. package/build-module/components/page-templates/dataviews-templates.js +193 -0
  201. package/build-module/components/page-templates/dataviews-templates.js.map +1 -0
  202. package/build-module/components/page-templates/template-actions.js +157 -0
  203. package/build-module/components/page-templates/template-actions.js.map +1 -0
  204. package/build-module/components/save-button/index.js +4 -2
  205. package/build-module/components/save-button/index.js.map +1 -1
  206. package/build-module/components/sidebar/index.js +1 -2
  207. package/build-module/components/sidebar/index.js.map +1 -1
  208. package/build-module/components/sidebar-dataviews/add-new-view.js +116 -0
  209. package/build-module/components/sidebar-dataviews/add-new-view.js.map +1 -0
  210. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js +180 -0
  211. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -0
  212. package/build-module/components/sidebar-dataviews/dataview-item.js +63 -0
  213. package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -0
  214. package/build-module/components/sidebar-dataviews/default-views.js +52 -0
  215. package/build-module/components/sidebar-dataviews/default-views.js.map +1 -0
  216. package/build-module/components/sidebar-dataviews/index.js +23 -38
  217. package/build-module/components/sidebar-dataviews/index.js.map +1 -1
  218. package/build-module/components/sidebar-edit-mode/default-sidebar.js +2 -6
  219. package/build-module/components/sidebar-edit-mode/default-sidebar.js.map +1 -1
  220. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +12 -12
  221. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
  222. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +3 -1
  223. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  224. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js +5 -13
  225. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -1
  226. package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js +5 -13
  227. package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -1
  228. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js +2 -6
  229. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
  230. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js +4 -4
  231. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js.map +1 -1
  232. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +1 -1
  233. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  234. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +1 -1
  235. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -1
  236. package/build-module/components/sidebar-navigation-screen-page/page-details.js +4 -12
  237. package/build-module/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  238. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +2 -2
  239. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
  240. package/build-module/components/site-hub/index.js +19 -7
  241. package/build-module/components/site-hub/index.js.map +1 -1
  242. package/build-module/components/start-template-options/index.js +13 -16
  243. package/build-module/components/start-template-options/index.js.map +1 -1
  244. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +112 -50
  245. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  246. package/build-module/components/template-part-converter/convert-to-regular.js +1 -1
  247. package/build-module/components/template-part-converter/convert-to-regular.js.map +1 -1
  248. package/build-module/hooks/push-changes-to-global-styles/index.js +4 -2
  249. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  250. package/build-module/hooks/template-part-edit.js +6 -2
  251. package/build-module/hooks/template-part-edit.js.map +1 -1
  252. package/build-module/index.js +0 -3
  253. package/build-module/index.js.map +1 -1
  254. package/build-module/store/actions.js +33 -79
  255. package/build-module/store/actions.js.map +1 -1
  256. package/build-module/store/selectors.js +19 -58
  257. package/build-module/store/selectors.js.map +1 -1
  258. package/build-module/utils/constants.js +1 -1
  259. package/build-module/utils/constants.js.map +1 -1
  260. package/build-module/utils/use-activate-theme.js +8 -0
  261. package/build-module/utils/use-activate-theme.js.map +1 -1
  262. package/build-style/style-rtl.css +69 -119
  263. package/build-style/style.css +69 -119
  264. package/package.json +41 -41
  265. package/src/components/actions/index.js +113 -5
  266. package/src/components/add-new-template/new-template.js +0 -5
  267. package/src/components/block-editor/style.scss +0 -87
  268. package/src/components/block-editor/use-site-editor-settings.js +68 -89
  269. package/src/components/dataviews/README.md +77 -83
  270. package/src/components/dataviews/add-filter.js +111 -0
  271. package/src/components/dataviews/dataviews.js +20 -2
  272. package/src/components/dataviews/filters.js +56 -49
  273. package/src/components/dataviews/in-filter.js +35 -17
  274. package/src/components/dataviews/index.js +1 -1
  275. package/src/components/dataviews/item-actions.js +95 -20
  276. package/src/components/dataviews/pagination.js +5 -4
  277. package/src/components/dataviews/reset-filters.js +26 -0
  278. package/src/components/dataviews/search.js +1 -0
  279. package/src/components/dataviews/style.scss +5 -1
  280. package/src/components/dataviews/view-actions.js +39 -9
  281. package/src/components/dataviews/view-list.js +174 -3
  282. package/src/components/dataviews/view-side-by-side.js +9 -0
  283. package/src/components/editor/index.js +149 -121
  284. package/src/components/global-styles/screen-revisions/index.js +52 -25
  285. package/src/components/global-styles/screen-root.js +2 -1
  286. package/src/components/global-styles/ui.js +1 -1
  287. package/src/components/global-styles-renderer/index.js +1 -1
  288. package/src/components/header-edit-mode/document-tools/index.js +201 -0
  289. package/src/components/header-edit-mode/index.js +86 -184
  290. package/src/components/header-edit-mode/more-menu/site-export.js +2 -6
  291. package/src/components/header-edit-mode/style.scss +35 -2
  292. package/src/components/layout/index.js +4 -11
  293. package/src/components/layout/style.scss +6 -18
  294. package/src/components/list/added-by.js +1 -1
  295. package/src/components/page-content-focus-manager/back-to-page-notification.js +4 -15
  296. package/src/components/page-content-focus-manager/disable-non-page-content-blocks.js +38 -33
  297. package/src/components/page-main/index.js +6 -1
  298. package/src/components/page-pages/index.js +162 -81
  299. package/src/components/page-pages/side-editor.js +14 -0
  300. package/src/components/page-patterns/grid-item.js +3 -3
  301. package/src/components/page-patterns/patterns-list.js +10 -4
  302. package/src/components/page-patterns/rename-category-menu-item.js +29 -12
  303. package/src/components/page-patterns/use-patterns.js +3 -2
  304. package/src/components/page-templates/dataviews-templates.js +224 -0
  305. package/src/components/page-templates/template-actions.js +209 -0
  306. package/src/components/save-button/index.js +10 -5
  307. package/src/components/sidebar/index.js +1 -2
  308. package/src/components/sidebar-dataviews/add-new-view.js +141 -0
  309. package/src/components/sidebar-dataviews/custom-dataviews-list.js +227 -0
  310. package/src/components/sidebar-dataviews/dataview-item.js +67 -0
  311. package/src/components/sidebar-dataviews/default-views.js +54 -0
  312. package/src/components/sidebar-dataviews/index.js +36 -44
  313. package/src/components/sidebar-dataviews/style.scss +22 -0
  314. package/src/components/sidebar-edit-mode/default-sidebar.js +6 -6
  315. package/src/components/sidebar-edit-mode/page-panels/edit-template.js +14 -21
  316. package/src/components/sidebar-edit-mode/page-panels/page-summary.js +3 -0
  317. package/src/components/sidebar-edit-mode/page-panels/reset-default-template.js +10 -9
  318. package/src/components/sidebar-edit-mode/page-panels/style.scss +5 -0
  319. package/src/components/sidebar-edit-mode/page-panels/swap-template-button.js +10 -9
  320. package/src/components/sidebar-edit-mode/plugin-sidebar/index.js +6 -6
  321. package/src/components/sidebar-edit-mode/template-panel/hooks.js +11 -7
  322. package/src/components/sidebar-navigation-screen-global-styles/index.js +1 -1
  323. package/src/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +1 -1
  324. package/src/components/sidebar-navigation-screen-page/page-details.js +7 -18
  325. package/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +2 -2
  326. package/src/components/site-hub/index.js +9 -8
  327. package/src/components/start-template-options/index.js +14 -12
  328. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +117 -50
  329. package/src/components/template-part-converter/convert-to-regular.js +1 -1
  330. package/src/hooks/push-changes-to-global-styles/index.js +13 -6
  331. package/src/hooks/template-part-edit.js +4 -2
  332. package/src/index.js +0 -8
  333. package/src/store/actions.js +37 -95
  334. package/src/store/selectors.js +31 -91
  335. package/src/store/test/actions.js +11 -137
  336. package/src/store/test/selectors.js +0 -82
  337. package/src/style.scss +1 -0
  338. package/src/utils/constants.js +1 -1
  339. package/src/utils/use-activate-theme.js +5 -0
  340. package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js +0 -77
  341. package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +0 -1
  342. package/build/components/block-editor/block-editor-provider/index.js +0 -31
  343. package/build/components/block-editor/block-editor-provider/index.js.map +0 -1
  344. package/build/components/block-editor/block-editor-provider/navigation-block-editor-provider.js +0 -110
  345. package/build/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +0 -1
  346. package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js +0 -84
  347. package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +0 -1
  348. package/build/components/block-editor/index.js +0 -30
  349. package/build/components/block-editor/index.js.map +0 -1
  350. package/build/components/dataviews/context.js +0 -15
  351. package/build/components/dataviews/context.js.map +0 -1
  352. package/build/components/page-pages/default-views.js +0 -60
  353. package/build/components/page-pages/default-views.js.map +0 -1
  354. package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js +0 -69
  355. package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +0 -1
  356. package/build-module/components/block-editor/block-editor-provider/index.js +0 -23
  357. package/build-module/components/block-editor/block-editor-provider/index.js.map +0 -1
  358. package/build-module/components/block-editor/block-editor-provider/navigation-block-editor-provider.js +0 -102
  359. package/build-module/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +0 -1
  360. package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js +0 -78
  361. package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +0 -1
  362. package/build-module/components/block-editor/index.js +0 -22
  363. package/build-module/components/block-editor/index.js.map +0 -1
  364. package/build-module/components/dataviews/context.js +0 -7
  365. package/build-module/components/dataviews/context.js.map +0 -1
  366. package/build-module/components/page-pages/default-views.js +0 -53
  367. package/build-module/components/page-pages/default-views.js.map +0 -1
  368. package/src/components/block-editor/block-editor-provider/default-block-editor-provider.js +0 -75
  369. package/src/components/block-editor/block-editor-provider/index.js +0 -29
  370. package/src/components/block-editor/block-editor-provider/navigation-block-editor-provider.js +0 -114
  371. package/src/components/block-editor/block-editor-provider/test/use-page-content-blocks.js +0 -116
  372. package/src/components/block-editor/block-editor-provider/use-page-content-blocks.js +0 -90
  373. package/src/components/block-editor/index.js +0 -28
  374. package/src/components/dataviews/context.js +0 -7
  375. package/src/components/page-pages/default-views.js +0 -58
@@ -6,29 +6,26 @@ import classnames from 'classnames';
6
6
  /**
7
7
  * WordPress dependencies
8
8
  */
9
- import { useCallback, useRef } from '@wordpress/element';
10
9
  import { useViewportMatch, useReducedMotion } from '@wordpress/compose';
11
10
  import { store as coreStore } from '@wordpress/core-data';
12
11
  import {
13
- ToolSelector,
14
12
  __experimentalPreviewOptions as PreviewOptions,
15
- NavigableToolbar,
16
- store as blockEditorStore,
17
13
  privateApis as blockEditorPrivateApis,
14
+ store as blockEditorStore,
18
15
  } from '@wordpress/block-editor';
19
16
  import { useSelect, useDispatch } from '@wordpress/data';
17
+ import { useEffect, useRef, useState } from '@wordpress/element';
20
18
  import { PinnedItems } from '@wordpress/interface';
21
- import { _x, __ } from '@wordpress/i18n';
22
- import { listView, plus, external, chevronUpDown } from '@wordpress/icons';
19
+ import { __ } from '@wordpress/i18n';
20
+ import { external, next, previous } from '@wordpress/icons';
23
21
  import {
24
- __unstableMotion as motion,
25
22
  Button,
26
- ToolbarItem,
23
+ __unstableMotion as motion,
27
24
  MenuGroup,
28
25
  MenuItem,
26
+ Popover,
29
27
  VisuallyHidden,
30
28
  } from '@wordpress/components';
31
- import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
32
29
  import { store as preferencesStore } from '@wordpress/preferences';
33
30
 
34
31
  /**
@@ -36,9 +33,8 @@ import { store as preferencesStore } from '@wordpress/preferences';
36
33
  */
37
34
  import MoreMenu from './more-menu';
38
35
  import SaveButton from '../save-button';
39
- import UndoButton from './undo-redo/undo';
40
- import RedoButton from './undo-redo/redo';
41
36
  import DocumentActions from './document-actions';
37
+ import DocumentTools from './document-tools';
42
38
  import { store as editSiteStore } from '../../store';
43
39
  import {
44
40
  getEditorCanvasContainerTitle,
@@ -47,37 +43,25 @@ import {
47
43
  import { unlock } from '../../lock-unlock';
48
44
  import { FOCUSABLE_ENTITIES } from '../../utils/constants';
49
45
 
50
- const { useShouldContextualToolbarShow } = unlock( blockEditorPrivateApis );
51
-
52
- const preventDefault = ( event ) => {
53
- event.preventDefault();
54
- };
46
+ const { BlockContextualToolbar } = unlock( blockEditorPrivateApis );
55
47
 
56
48
  export default function HeaderEditMode( { setListViewToggleElement } ) {
57
- const inserterButton = useRef();
58
49
  const {
59
50
  deviceType,
60
51
  templateType,
61
- isInserterOpen,
62
- isListViewOpen,
63
- listViewShortcut,
64
- isVisualMode,
65
52
  isDistractionFree,
66
53
  blockEditorMode,
54
+ blockSelectionStart,
67
55
  homeUrl,
68
56
  showIconLabels,
69
57
  editorCanvasView,
70
58
  hasFixedToolbar,
59
+ isZoomOutMode,
71
60
  } = useSelect( ( select ) => {
72
- const {
73
- __experimentalGetPreviewDeviceType,
74
- getEditedPostType,
75
- isInserterOpened,
76
- isListViewOpened,
77
- getEditorMode,
78
- } = select( editSiteStore );
79
- const { getShortcutRepresentation } = select( keyboardShortcutsStore );
80
- const { __unstableGetEditorMode } = select( blockEditorStore );
61
+ const { __experimentalGetPreviewDeviceType, getEditedPostType } =
62
+ select( editSiteStore );
63
+ const { getBlockSelectionStart, __unstableGetEditorMode } =
64
+ select( blockEditorStore );
81
65
 
82
66
  const postType = getEditedPostType();
83
67
 
@@ -90,13 +74,8 @@ export default function HeaderEditMode( { setListViewToggleElement } ) {
90
74
  return {
91
75
  deviceType: __experimentalGetPreviewDeviceType(),
92
76
  templateType: postType,
93
- isInserterOpen: isInserterOpened(),
94
- isListViewOpen: isListViewOpened(),
95
- listViewShortcut: getShortcutRepresentation(
96
- 'core/edit-site/toggle-list-view'
97
- ),
98
- isVisualMode: getEditorMode() === 'visual',
99
77
  blockEditorMode: __unstableGetEditorMode(),
78
+ blockSelectionStart: getBlockSelectionStart(),
100
79
  homeUrl: getUnstableBase()?.home,
101
80
  showIconLabels: getPreference(
102
81
  editSiteStore.name,
@@ -105,71 +84,44 @@ export default function HeaderEditMode( { setListViewToggleElement } ) {
105
84
  editorCanvasView: unlock(
106
85
  select( editSiteStore )
107
86
  ).getEditorCanvasContainerView(),
108
- isDistractionFree: getPreference(
109
- editSiteStore.name,
110
- 'distractionFree'
111
- ),
112
87
  hasFixedToolbar: getPreference(
113
88
  editSiteStore.name,
114
89
  'fixedToolbar'
115
90
  ),
91
+ isDistractionFree: getPreference(
92
+ editSiteStore.name,
93
+ 'distractionFree'
94
+ ),
95
+ isZoomOutMode: __unstableGetEditorMode() === 'zoom-out',
116
96
  };
117
97
  }, [] );
118
98
 
119
- const {
120
- __experimentalSetPreviewDeviceType: setPreviewDeviceType,
121
- setIsInserterOpened,
122
- setIsListViewOpened,
123
- } = useDispatch( editSiteStore );
124
- const { __unstableSetEditorMode } = useDispatch( blockEditorStore );
125
- const disableMotion = useReducedMotion();
126
-
127
99
  const isLargeViewport = useViewportMatch( 'medium' );
100
+ const isTopToolbar = ! isZoomOutMode && hasFixedToolbar && isLargeViewport;
101
+ const blockToolbarRef = useRef();
128
102
 
129
- const toggleInserter = useCallback( () => {
130
- if ( isInserterOpen ) {
131
- // Focusing the inserter button should close the inserter popover.
132
- // However, there are some cases it won't close when the focus is lost.
133
- // See https://github.com/WordPress/gutenberg/issues/43090 for more details.
134
- inserterButton.current.focus();
135
- setIsInserterOpened( false );
136
- } else {
137
- setIsInserterOpened( true );
138
- }
139
- }, [ isInserterOpen, setIsInserterOpened ] );
140
-
141
- const toggleListView = useCallback(
142
- () => setIsListViewOpened( ! isListViewOpen ),
143
- [ setIsListViewOpened, isListViewOpen ]
144
- );
145
-
146
- const {
147
- shouldShowContextualToolbar,
148
- canFocusHiddenToolbar,
149
- fixedToolbarCanBeFocused,
150
- } = useShouldContextualToolbarShow();
151
- // If there's a block toolbar to be focused, disable the focus shortcut for the document toolbar.
152
- // There's a fixed block toolbar when the fixed toolbar option is enabled or when the browser width is less than the large viewport.
153
- const blockToolbarCanBeFocused =
154
- shouldShowContextualToolbar ||
155
- canFocusHiddenToolbar ||
156
- fixedToolbarCanBeFocused;
103
+ const { __experimentalSetPreviewDeviceType: setPreviewDeviceType } =
104
+ useDispatch( editSiteStore );
105
+ const disableMotion = useReducedMotion();
157
106
 
158
107
  const hasDefaultEditorCanvasView = ! useHasEditorCanvasContainer();
159
108
 
160
109
  const isFocusMode = FOCUSABLE_ENTITIES.includes( templateType );
161
110
 
162
- /* translators: button label text should, if possible, be under 16 characters. */
163
- const longLabel = _x(
164
- 'Toggle block inserter',
165
- 'Generic label for block inserter button'
166
- );
167
- const shortLabel = ! isInserterOpen ? __( 'Add' ) : __( 'Close' );
168
-
169
- const isZoomedOutViewExperimentEnabled =
170
- window?.__experimentalEnableZoomedOutView && isVisualMode;
171
111
  const isZoomedOutView = blockEditorMode === 'zoom-out';
172
112
 
113
+ const [ isBlockToolsCollapsed, setIsBlockToolsCollapsed ] =
114
+ useState( true );
115
+
116
+ const hasBlockSelected = !! blockSelectionStart;
117
+
118
+ useEffect( () => {
119
+ // If we have a new block selection, show the block tools
120
+ if ( blockSelectionStart ) {
121
+ setIsBlockToolsCollapsed( false );
122
+ }
123
+ }, [ blockSelectionStart ] );
124
+
173
125
  const toolbarVariants = {
174
126
  isDistractionFree: { y: '-50px' },
175
127
  isDistractionFreeHovering: { y: 0 },
@@ -190,116 +142,66 @@ export default function HeaderEditMode( { setListViewToggleElement } ) {
190
142
  } ) }
191
143
  >
192
144
  { hasDefaultEditorCanvasView && (
193
- <NavigableToolbar
194
- as={ motion.div }
145
+ <motion.div
195
146
  className="edit-site-header-edit-mode__start"
196
- aria-label={ __( 'Document tools' ) }
197
- shouldUseKeyboardFocusShortcut={
198
- ! blockToolbarCanBeFocused
199
- }
200
147
  variants={ toolbarVariants }
201
148
  transition={ toolbarTransition }
202
149
  >
203
- <div className="edit-site-header-edit-mode__toolbar">
204
- { ! isDistractionFree && (
205
- <ToolbarItem
206
- ref={ inserterButton }
207
- as={ Button }
208
- className="edit-site-header-edit-mode__inserter-toggle"
209
- variant="primary"
210
- isPressed={ isInserterOpen }
211
- onMouseDown={ preventDefault }
212
- onClick={ toggleInserter }
213
- disabled={ ! isVisualMode }
214
- icon={ plus }
215
- label={
216
- showIconLabels ? shortLabel : longLabel
217
- }
218
- showTooltip={ ! showIconLabels }
219
- aria-expanded={ isInserterOpen }
220
- />
221
- ) }
222
- { isLargeViewport && (
223
- <>
224
- { ! hasFixedToolbar && (
225
- <ToolbarItem
226
- as={ ToolSelector }
227
- showTooltip={ ! showIconLabels }
228
- variant={
229
- showIconLabels
230
- ? 'tertiary'
231
- : undefined
232
- }
233
- disabled={ ! isVisualMode }
234
- />
150
+ <DocumentTools
151
+ blockEditorMode={ blockEditorMode }
152
+ isDistractionFree={ isDistractionFree }
153
+ showIconLabels={ showIconLabels }
154
+ setListViewToggleElement={ setListViewToggleElement }
155
+ />
156
+ { isTopToolbar && (
157
+ <>
158
+ <div
159
+ className={ classnames(
160
+ 'selected-block-tools-wrapper',
161
+ {
162
+ 'is-collapsed': isBlockToolsCollapsed,
163
+ }
235
164
  ) }
236
- <ToolbarItem
237
- as={ UndoButton }
238
- showTooltip={ ! showIconLabels }
239
- variant={
240
- showIconLabels ? 'tertiary' : undefined
165
+ >
166
+ <BlockContextualToolbar isFixed />
167
+ </div>
168
+ <Popover.Slot
169
+ ref={ blockToolbarRef }
170
+ name="block-toolbar"
171
+ />
172
+ { hasBlockSelected && (
173
+ <Button
174
+ className="edit-site-header-edit-mode__block-tools-toggle"
175
+ icon={
176
+ isBlockToolsCollapsed ? next : previous
241
177
  }
242
- />
243
- <ToolbarItem
244
- as={ RedoButton }
245
- showTooltip={ ! showIconLabels }
246
- variant={
247
- showIconLabels ? 'tertiary' : undefined
178
+ onClick={ () => {
179
+ setIsBlockToolsCollapsed(
180
+ ( collapsed ) => ! collapsed
181
+ );
182
+ } }
183
+ label={
184
+ isBlockToolsCollapsed
185
+ ? __( 'Show block tools' )
186
+ : __( 'Hide block tools' )
248
187
  }
249
188
  />
250
- { ! isDistractionFree && (
251
- <ToolbarItem
252
- as={ Button }
253
- className="edit-site-header-edit-mode__list-view-toggle"
254
- disabled={
255
- ! isVisualMode || isZoomedOutView
256
- }
257
- icon={ listView }
258
- isPressed={ isListViewOpen }
259
- /* translators: button label text should, if possible, be under 16 characters. */
260
- label={ __( 'List View' ) }
261
- onClick={ toggleListView }
262
- ref={ setListViewToggleElement }
263
- shortcut={ listViewShortcut }
264
- showTooltip={ ! showIconLabels }
265
- variant={
266
- showIconLabels
267
- ? 'tertiary'
268
- : undefined
269
- }
270
- aria-expanded={ isListViewOpen }
271
- />
272
- ) }
273
- { isZoomedOutViewExperimentEnabled &&
274
- ! isDistractionFree &&
275
- ! hasFixedToolbar && (
276
- <ToolbarItem
277
- as={ Button }
278
- className="edit-site-header-edit-mode__zoom-out-view-toggle"
279
- icon={ chevronUpDown }
280
- isPressed={ isZoomedOutView }
281
- /* translators: button label text should, if possible, be under 16 characters. */
282
- label={ __( 'Zoom-out View' ) }
283
- onClick={ () => {
284
- setPreviewDeviceType(
285
- 'Desktop'
286
- );
287
- __unstableSetEditorMode(
288
- isZoomedOutView
289
- ? 'edit'
290
- : 'zoom-out'
291
- );
292
- } }
293
- />
294
- ) }
295
- </>
296
- ) }
297
- </div>
298
- </NavigableToolbar>
189
+ ) }
190
+ </>
191
+ ) }
192
+ </motion.div>
299
193
  ) }
300
194
 
301
195
  { ! isDistractionFree && (
302
- <div className="edit-site-header-edit-mode__center">
196
+ <div
197
+ className={ classnames(
198
+ 'edit-site-header-edit-mode__center',
199
+ {
200
+ 'is-collapsed':
201
+ ! isBlockToolsCollapsed && isLargeViewport,
202
+ }
203
+ ) }
204
+ >
303
205
  { ! hasDefaultEditorCanvasView ? (
304
206
  getEditorCanvasContainerTitle( editorCanvasView )
305
207
  ) : (
@@ -1,8 +1,3 @@
1
- /**
2
- * External dependencies
3
- */
4
- import downloadjs from 'downloadjs';
5
-
6
1
  /**
7
2
  * WordPress dependencies
8
3
  */
@@ -11,6 +6,7 @@ import { MenuItem } from '@wordpress/components';
11
6
  import apiFetch from '@wordpress/api-fetch';
12
7
  import { download } from '@wordpress/icons';
13
8
  import { useDispatch } from '@wordpress/data';
9
+ import { downloadBlob } from '@wordpress/blob';
14
10
  import { store as noticesStore } from '@wordpress/notices';
15
11
 
16
12
  export default function SiteExport() {
@@ -35,7 +31,7 @@ export default function SiteExport() {
35
31
  ? contentDispositionMatches[ 1 ]
36
32
  : 'edit-site-export';
37
33
 
38
- downloadjs( blob, fileName + '.zip', 'application/zip' );
34
+ downloadBlob( fileName + '.zip', blob, 'application/zip' );
39
35
  } catch ( errorResponse ) {
40
36
  let error = {};
41
37
  try {
@@ -15,6 +15,17 @@ $header-toolbar-min-width: 335px;
15
15
  .edit-site-header-edit-mode__start {
16
16
  display: flex;
17
17
  border: none;
18
+ align-items: center;
19
+ flex-shrink: 2;
20
+ // We need this to be overflow hidden so the block toolbar can
21
+ // overflow scroll. If the overflow is visible, flexbox allows
22
+ // the toolbar to grow outside of the allowed container space.
23
+ overflow: hidden;
24
+ // Take up the full height of the header so the border focus
25
+ // is visible on toolbar buttons.
26
+ height: 100%;
27
+ // Allow focus ring to be fully visible on furthest right button.
28
+ padding-right: 2px;
18
29
  }
19
30
 
20
31
  .edit-site-header-edit-mode__end {
@@ -35,6 +46,10 @@ $header-toolbar-min-width: 335px;
35
46
  // See https://dev.w3.org/csswg/css-flexbox/#min-size-auto
36
47
  min-width: 0;
37
48
  }
49
+
50
+ .block-editor-block-contextual-toolbar.is-fixed {
51
+ border: none;
52
+ }
38
53
  }
39
54
 
40
55
  .edit-site-header-edit-mode__toolbar {
@@ -99,7 +114,7 @@ $header-toolbar-min-width: 335px;
99
114
  }
100
115
  }
101
116
 
102
- .edit-site-header-edit-mode__start {
117
+ .edit-site-header-edit-mode__document-tools {
103
118
  display: flex;
104
119
  border: none;
105
120
 
@@ -183,7 +198,25 @@ $header-toolbar-min-width: 335px;
183
198
  padding: 0 $grid-unit-10;
184
199
  }
185
200
 
186
- .edit-site-header-edit-mode__start .edit-site-header-edit-mode__toolbar > * + * {
201
+ .edit-site-header-edit-mode__document-tools .edit-site-header-edit-mode__toolbar > * + * {
187
202
  margin-left: $grid-unit-10;
188
203
  }
189
204
  }
205
+
206
+ .has-fixed-toolbar {
207
+ .selected-block-tools-wrapper {
208
+ overflow-x: scroll;
209
+
210
+ &.is-collapsed {
211
+ display: none;
212
+ }
213
+ }
214
+
215
+ .edit-site-header-edit-mode__center.is-collapsed {
216
+ display: none;
217
+ }
218
+ }
219
+
220
+ .edit-site-header-edit-mode__block-tools-toggle {
221
+ margin-left: 2px; // Allow focus ring to be fully visible
222
+ }
@@ -18,7 +18,7 @@ import {
18
18
  useResizeObserver,
19
19
  } from '@wordpress/compose';
20
20
  import { __ } from '@wordpress/i18n';
21
- import { useState, useRef } from '@wordpress/element';
21
+ import { useState } from '@wordpress/element';
22
22
  import { NavigableRegion } from '@wordpress/interface';
23
23
  import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
24
24
  import {
@@ -72,7 +72,6 @@ export default function Layout() {
72
72
  useCommonCommands();
73
73
  useBlockCommands();
74
74
 
75
- const hubRef = useRef();
76
75
  const { params } = useLocation();
77
76
  const isMobileViewport = useViewportMatch( 'medium', '<' );
78
77
  const isListPage = getIsListPage( params, isMobileViewport );
@@ -117,7 +116,7 @@ export default function Layout() {
117
116
  } );
118
117
  const disableMotion = useReducedMotion();
119
118
  const showSidebar =
120
- ( isMobileViewport && ! isListPage ) ||
119
+ ( isMobileViewport && canvasMode === 'view' && ! isListPage ) ||
121
120
  ( ! isMobileViewport && ( canvasMode === 'view' || ! isEditorPage ) );
122
121
  const showCanvas =
123
122
  ( isMobileViewport && isEditorPage && isEditing ) ||
@@ -193,6 +192,7 @@ export default function Layout() {
193
192
  'is-full-canvas': isFullCanvas,
194
193
  'is-edit-mode': isEditing,
195
194
  'has-fixed-toolbar': hasFixedToolbar,
195
+ 'is-block-toolbar-visible': hasBlockSelected,
196
196
  }
197
197
  ) }
198
198
  >
@@ -226,13 +226,6 @@ export default function Layout() {
226
226
  animate={ headerAnimationState }
227
227
  >
228
228
  <SiteHub
229
- variants={ {
230
- isDistractionFree: { x: '-100%' },
231
- isDistractionFreeHovering: { x: 0 },
232
- view: { x: 0 },
233
- edit: { x: 0 },
234
- } }
235
- ref={ hubRef }
236
229
  isTransparent={ isResizableFrameOversized }
237
230
  className="edit-site-layout__hub"
238
231
  />
@@ -290,7 +283,7 @@ export default function Layout() {
290
283
  // (https://github.com/WordPress/gutenberg/pull/51558/files#r1231763003),
291
284
  // so we can't remove the element entirely. Using `inert` will make
292
285
  // it inaccessible to screen readers and keyboard navigation.
293
- inert={ showSidebar ? undefined : 'inert' }
286
+ inert={ showSidebar ? undefined : 'true' }
294
287
  animate={ { opacity: showSidebar ? 1 : 0 } }
295
288
  transition={ {
296
289
  type: 'tween',
@@ -157,11 +157,16 @@
157
157
  }
158
158
 
159
159
  // This shouldn't be necessary (we should have a way to say that a skeletton is relative
160
- .edit-site-layout__canvas .interface-interface-skeleton {
160
+ .edit-site-layout__canvas .interface-interface-skeleton,
161
+ .edit-site-page-pages-preview .interface-interface-skeleton {
161
162
  position: relative !important;
162
163
  min-height: 100% !important;
163
164
  }
164
165
 
166
+ .edit-site-page-pages-preview {
167
+ height: 100%;
168
+ }
169
+
165
170
  .edit-site-layout__view-mode-toggle.components-button {
166
171
  position: relative;
167
172
  color: $white;
@@ -249,23 +254,6 @@
249
254
  }
250
255
  }
251
256
 
252
- .edit-site-layout.has-fixed-toolbar {
253
- // making the header be lower than the content
254
- // so the fixed toolbar can be positioned on top of it
255
- // but only on desktop
256
- @include break-medium() {
257
- .edit-site-layout__canvas-container {
258
- z-index: 5;
259
- }
260
- .edit-site-site-hub {
261
- z-index: 4;
262
- }
263
- .edit-site-layout__header:focus-within {
264
- z-index: 3;
265
- }
266
- }
267
- }
268
-
269
257
  .is-edit-mode.is-distraction-free {
270
258
 
271
259
  .edit-site-layout__header-container {
@@ -152,7 +152,7 @@ export function useAddedBy( postType, postId ) {
152
152
  * @param {Object} props
153
153
  * @param {string} props.imageUrl
154
154
  */
155
- function AvatarImage( { imageUrl } ) {
155
+ export function AvatarImage( { imageUrl } ) {
156
156
  const [ isImageLoaded, setIsImageLoaded ] = useState( false );
157
157
 
158
158
  return (
@@ -25,27 +25,19 @@ export default function BackToPageNotification() {
25
25
  * switches from focusing on editing page content to editing a template.
26
26
  */
27
27
  export function useBackToPageNotification() {
28
- const { isPage, hasPageContentFocus } = useSelect(
29
- ( select ) => ( {
30
- isPage: select( editSiteStore ).isPage(),
31
- hasPageContentFocus: select( editSiteStore ).hasPageContentFocus(),
32
- } ),
28
+ const hasPageContentFocus = useSelect(
29
+ ( select ) => select( editSiteStore ).hasPageContentFocus(),
33
30
  []
34
31
  );
32
+ const { isPage } = useSelect( editSiteStore );
35
33
 
36
34
  const alreadySeen = useRef( false );
37
- const prevHasPageContentFocus = useRef( false );
38
35
 
39
36
  const { createInfoNotice } = useDispatch( noticesStore );
40
37
  const { setHasPageContentFocus } = useDispatch( editSiteStore );
41
38
 
42
39
  useEffect( () => {
43
- if (
44
- ! alreadySeen.current &&
45
- isPage &&
46
- prevHasPageContentFocus.current &&
47
- ! hasPageContentFocus
48
- ) {
40
+ if ( isPage() && ! alreadySeen.current && ! hasPageContentFocus ) {
49
41
  createInfoNotice( __( 'You are editing a template.' ), {
50
42
  isDismissible: true,
51
43
  type: 'snackbar',
@@ -58,11 +50,8 @@ export function useBackToPageNotification() {
58
50
  } );
59
51
  alreadySeen.current = true;
60
52
  }
61
- prevHasPageContentFocus.current = hasPageContentFocus;
62
53
  }, [
63
- alreadySeen,
64
54
  isPage,
65
- prevHasPageContentFocus,
66
55
  hasPageContentFocus,
67
56
  createInfoNotice,
68
57
  setHasPageContentFocus,