@wordpress/edit-site 5.3.2 → 5.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (339) hide show
  1. package/CHANGELOG.md +3 -0
  2. package/build/components/add-new-template/new-template-part.js +8 -5
  3. package/build/components/add-new-template/new-template-part.js.map +1 -1
  4. package/build/components/add-new-template/new-template.js +9 -25
  5. package/build/components/add-new-template/new-template.js.map +1 -1
  6. package/build/components/app/index.js.map +1 -1
  7. package/build/components/block-editor/editor-canvas.js +4 -3
  8. package/build/components/block-editor/editor-canvas.js.map +1 -1
  9. package/build/components/block-editor/index.js +3 -3
  10. package/build/components/block-editor/index.js.map +1 -1
  11. package/build/components/editor/index.js +28 -24
  12. package/build/components/editor/index.js.map +1 -1
  13. package/build/components/global-styles/border-panel.js +6 -6
  14. package/build/components/global-styles/border-panel.js.map +1 -1
  15. package/build/components/global-styles/color-palette-panel.js +7 -4
  16. package/build/components/global-styles/color-palette-panel.js.map +1 -1
  17. package/build/components/global-styles/color-utils.js +1 -1
  18. package/build/components/global-styles/color-utils.js.map +1 -1
  19. package/build/components/global-styles/context-menu.js +16 -3
  20. package/build/components/global-styles/context-menu.js.map +1 -1
  21. package/build/components/global-styles/custom-css.js +3 -3
  22. package/build/components/global-styles/custom-css.js.map +1 -1
  23. package/build/components/global-styles/dimensions-panel.js +10 -9
  24. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  25. package/build/components/global-styles/global-styles-provider.js +2 -2
  26. package/build/components/global-styles/global-styles-provider.js.map +1 -1
  27. package/build/components/global-styles/gradients-palette-panel.js +10 -5
  28. package/build/components/global-styles/gradients-palette-panel.js.map +1 -1
  29. package/build/components/global-styles/header.js +4 -2
  30. package/build/components/global-styles/header.js.map +1 -1
  31. package/build/components/global-styles/hooks.js +16 -53
  32. package/build/components/global-styles/hooks.js.map +1 -1
  33. package/build/components/global-styles/navigation-button.js +1 -1
  34. package/build/components/global-styles/navigation-button.js.map +1 -1
  35. package/build/components/global-styles/palette.js +5 -3
  36. package/build/components/global-styles/palette.js.map +1 -1
  37. package/build/components/global-styles/preview.js +2 -2
  38. package/build/components/global-styles/preview.js.map +1 -1
  39. package/build/components/global-styles/screen-background-color.js +5 -4
  40. package/build/components/global-styles/screen-background-color.js.map +1 -1
  41. package/build/components/global-styles/screen-block-list.js +14 -3
  42. package/build/components/global-styles/screen-block-list.js.map +1 -1
  43. package/build/components/global-styles/screen-button-color.js +9 -7
  44. package/build/components/global-styles/screen-button-color.js.map +1 -1
  45. package/build/components/global-styles/screen-colors.js +10 -8
  46. package/build/components/global-styles/screen-colors.js.map +1 -1
  47. package/build/components/global-styles/screen-css.js +5 -5
  48. package/build/components/global-styles/screen-css.js.map +1 -1
  49. package/build/components/global-styles/screen-heading-color.js +10 -8
  50. package/build/components/global-styles/screen-heading-color.js.map +1 -1
  51. package/build/components/global-styles/screen-link-color.js +5 -4
  52. package/build/components/global-styles/screen-link-color.js.map +1 -1
  53. package/build/components/global-styles/screen-root.js +2 -2
  54. package/build/components/global-styles/screen-root.js.map +1 -1
  55. package/build/components/global-styles/screen-style-variations.js +2 -2
  56. package/build/components/global-styles/screen-style-variations.js.map +1 -1
  57. package/build/components/global-styles/screen-text-color.js +5 -4
  58. package/build/components/global-styles/screen-text-color.js.map +1 -1
  59. package/build/components/global-styles/screen-typography.js +5 -3
  60. package/build/components/global-styles/screen-typography.js.map +1 -1
  61. package/build/components/global-styles/shadow-panel.js +4 -5
  62. package/build/components/global-styles/shadow-panel.js.map +1 -1
  63. package/build/components/global-styles/subtitle.js +3 -2
  64. package/build/components/global-styles/subtitle.js.map +1 -1
  65. package/build/components/global-styles/typography-panel.js +24 -301
  66. package/build/components/global-styles/typography-panel.js.map +1 -1
  67. package/build/components/global-styles/typography-preview.js +2 -2
  68. package/build/components/global-styles/typography-preview.js.map +1 -1
  69. package/build/components/global-styles/ui.js +3 -10
  70. package/build/components/global-styles/ui.js.map +1 -1
  71. package/build/components/global-styles-renderer/index.js +2 -2
  72. package/build/components/global-styles-renderer/index.js.map +1 -1
  73. package/build/components/header-edit-mode/index.js +6 -3
  74. package/build/components/header-edit-mode/index.js.map +1 -1
  75. package/build/components/keyboard-shortcut-help-modal/config.js +1 -1
  76. package/build/components/keyboard-shortcut-help-modal/config.js.map +1 -1
  77. package/build/components/layout/index.js +10 -23
  78. package/build/components/layout/index.js.map +1 -1
  79. package/build/components/list/actions/rename-menu-item.js +1 -1
  80. package/build/components/list/actions/rename-menu-item.js.map +1 -1
  81. package/build/components/list/table.js +1 -0
  82. package/build/components/list/table.js.map +1 -1
  83. package/build/components/navigation-inspector/index.js +0 -29
  84. package/build/components/navigation-inspector/index.js.map +1 -1
  85. package/build/components/navigation-inspector/navigation-menu.js +6 -4
  86. package/build/components/navigation-inspector/navigation-menu.js.map +1 -1
  87. package/build/components/save-panel/index.js +4 -3
  88. package/build/components/save-panel/index.js.map +1 -1
  89. package/build/components/sidebar/index.js +18 -23
  90. package/build/components/sidebar/index.js.map +1 -1
  91. package/build/components/sidebar-edit-mode/index.js +1 -1
  92. package/build/components/sidebar-edit-mode/index.js.map +1 -1
  93. package/build/components/sidebar-edit-mode/template-card/index.js +9 -2
  94. package/build/components/sidebar-edit-mode/template-card/index.js.map +1 -1
  95. package/build/components/sidebar-edit-mode/template-card/last-revision.js +84 -0
  96. package/build/components/sidebar-edit-mode/template-card/last-revision.js.map +1 -0
  97. package/build/components/sidebar-navigation-screen/index.js +28 -7
  98. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  99. package/build/components/sidebar-navigation-screen-navigation-item/index.js +72 -0
  100. package/build/components/sidebar-navigation-screen-navigation-item/index.js.map +1 -0
  101. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +2 -2
  102. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  103. package/build/components/sidebar-navigation-screen-template/index.js +70 -0
  104. package/build/components/sidebar-navigation-screen-template/index.js.map +1 -0
  105. package/build/components/sidebar-navigation-screen-templates/index.js +32 -82
  106. package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  107. package/build/components/sidebar-navigation-screen-templates-browse/index.js +43 -0
  108. package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -0
  109. package/build/components/site-hub/index.js +14 -49
  110. package/build/components/site-hub/index.js.map +1 -1
  111. package/build/components/start-template-options/index.js +175 -0
  112. package/build/components/start-template-options/index.js.map +1 -0
  113. package/build/components/style-book/index.js +10 -3
  114. package/build/components/style-book/index.js.map +1 -1
  115. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +55 -20
  116. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  117. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +3 -3
  118. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +1 -1
  119. package/build/components/sync-state-with-url/{use-sync-sidebar-path-with-url.js → use-sync-path-with-url.js} +12 -12
  120. package/build/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -0
  121. package/build/components/use-edited-entity-record/index.js +6 -2
  122. package/build/components/use-edited-entity-record/index.js.map +1 -1
  123. package/build/hooks/push-changes-to-global-styles/index.js +7 -6
  124. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  125. package/build/{experiments.js → private-apis.js} +3 -3
  126. package/build/private-apis.js.map +1 -0
  127. package/build/store/index.js +3 -3
  128. package/build/store/index.js.map +1 -1
  129. package/build/utils/get-is-list-page.js +5 -6
  130. package/build/utils/get-is-list-page.js.map +1 -1
  131. package/build-module/components/add-new-template/new-template-part.js +7 -4
  132. package/build-module/components/add-new-template/new-template-part.js.map +1 -1
  133. package/build-module/components/add-new-template/new-template.js +8 -22
  134. package/build-module/components/add-new-template/new-template.js.map +1 -1
  135. package/build-module/components/app/index.js.map +1 -1
  136. package/build-module/components/block-editor/editor-canvas.js +2 -1
  137. package/build-module/components/block-editor/editor-canvas.js.map +1 -1
  138. package/build-module/components/block-editor/index.js +3 -3
  139. package/build-module/components/block-editor/index.js.map +1 -1
  140. package/build-module/components/editor/index.js +27 -25
  141. package/build-module/components/editor/index.js.map +1 -1
  142. package/build-module/components/global-styles/border-panel.js +8 -8
  143. package/build-module/components/global-styles/border-panel.js.map +1 -1
  144. package/build-module/components/global-styles/color-palette-panel.js +8 -5
  145. package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
  146. package/build-module/components/global-styles/color-utils.js +2 -2
  147. package/build-module/components/global-styles/color-utils.js.map +1 -1
  148. package/build-module/components/global-styles/context-menu.js +13 -2
  149. package/build-module/components/global-styles/context-menu.js.map +1 -1
  150. package/build-module/components/global-styles/custom-css.js +4 -4
  151. package/build-module/components/global-styles/custom-css.js.map +1 -1
  152. package/build-module/components/global-styles/dimensions-panel.js +12 -11
  153. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  154. package/build-module/components/global-styles/global-styles-provider.js +3 -3
  155. package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
  156. package/build-module/components/global-styles/gradients-palette-panel.js +11 -6
  157. package/build-module/components/global-styles/gradients-palette-panel.js.map +1 -1
  158. package/build-module/components/global-styles/header.js +5 -3
  159. package/build-module/components/global-styles/header.js.map +1 -1
  160. package/build-module/components/global-styles/hooks.js +15 -52
  161. package/build-module/components/global-styles/hooks.js.map +1 -1
  162. package/build-module/components/global-styles/navigation-button.js +2 -2
  163. package/build-module/components/global-styles/navigation-button.js.map +1 -1
  164. package/build-module/components/global-styles/palette.js +6 -4
  165. package/build-module/components/global-styles/palette.js.map +1 -1
  166. package/build-module/components/global-styles/preview.js +3 -3
  167. package/build-module/components/global-styles/preview.js.map +1 -1
  168. package/build-module/components/global-styles/screen-background-color.js +7 -6
  169. package/build-module/components/global-styles/screen-background-color.js.map +1 -1
  170. package/build-module/components/global-styles/screen-block-list.js +12 -3
  171. package/build-module/components/global-styles/screen-block-list.js.map +1 -1
  172. package/build-module/components/global-styles/screen-button-color.js +11 -9
  173. package/build-module/components/global-styles/screen-button-color.js.map +1 -1
  174. package/build-module/components/global-styles/screen-colors.js +12 -10
  175. package/build-module/components/global-styles/screen-colors.js.map +1 -1
  176. package/build-module/components/global-styles/screen-css.js +5 -5
  177. package/build-module/components/global-styles/screen-css.js.map +1 -1
  178. package/build-module/components/global-styles/screen-heading-color.js +12 -10
  179. package/build-module/components/global-styles/screen-heading-color.js.map +1 -1
  180. package/build-module/components/global-styles/screen-link-color.js +7 -6
  181. package/build-module/components/global-styles/screen-link-color.js.map +1 -1
  182. package/build-module/components/global-styles/screen-root.js +3 -3
  183. package/build-module/components/global-styles/screen-root.js.map +1 -1
  184. package/build-module/components/global-styles/screen-style-variations.js +3 -3
  185. package/build-module/components/global-styles/screen-style-variations.js.map +1 -1
  186. package/build-module/components/global-styles/screen-text-color.js +7 -6
  187. package/build-module/components/global-styles/screen-text-color.js.map +1 -1
  188. package/build-module/components/global-styles/screen-typography.js +6 -4
  189. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  190. package/build-module/components/global-styles/shadow-panel.js +6 -7
  191. package/build-module/components/global-styles/shadow-panel.js.map +1 -1
  192. package/build-module/components/global-styles/subtitle.js +3 -2
  193. package/build-module/components/global-styles/subtitle.js.map +1 -1
  194. package/build-module/components/global-styles/typography-panel.js +29 -302
  195. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  196. package/build-module/components/global-styles/typography-preview.js +3 -3
  197. package/build-module/components/global-styles/typography-preview.js.map +1 -1
  198. package/build-module/components/global-styles/ui.js +4 -11
  199. package/build-module/components/global-styles/ui.js.map +1 -1
  200. package/build-module/components/global-styles-renderer/index.js +3 -3
  201. package/build-module/components/global-styles-renderer/index.js.map +1 -1
  202. package/build-module/components/header-edit-mode/index.js +6 -3
  203. package/build-module/components/header-edit-mode/index.js.map +1 -1
  204. package/build-module/components/keyboard-shortcut-help-modal/config.js +1 -1
  205. package/build-module/components/keyboard-shortcut-help-modal/config.js.map +1 -1
  206. package/build-module/components/layout/index.js +10 -23
  207. package/build-module/components/layout/index.js.map +1 -1
  208. package/build-module/components/list/actions/rename-menu-item.js +1 -1
  209. package/build-module/components/list/actions/rename-menu-item.js.map +1 -1
  210. package/build-module/components/list/table.js +1 -0
  211. package/build-module/components/list/table.js.map +1 -1
  212. package/build-module/components/navigation-inspector/index.js +0 -27
  213. package/build-module/components/navigation-inspector/index.js.map +1 -1
  214. package/build-module/components/navigation-inspector/navigation-menu.js +7 -5
  215. package/build-module/components/navigation-inspector/navigation-menu.js.map +1 -1
  216. package/build-module/components/save-panel/index.js +3 -2
  217. package/build-module/components/save-panel/index.js.map +1 -1
  218. package/build-module/components/sidebar/index.js +15 -21
  219. package/build-module/components/sidebar/index.js.map +1 -1
  220. package/build-module/components/sidebar-edit-mode/index.js +1 -1
  221. package/build-module/components/sidebar-edit-mode/index.js.map +1 -1
  222. package/build-module/components/sidebar-edit-mode/template-card/index.js +9 -4
  223. package/build-module/components/sidebar-edit-mode/template-card/index.js.map +1 -1
  224. package/build-module/components/sidebar-edit-mode/template-card/last-revision.js +70 -0
  225. package/build-module/components/sidebar-edit-mode/template-card/last-revision.js.map +1 -0
  226. package/build-module/components/sidebar-navigation-screen/index.js +27 -9
  227. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  228. package/build-module/components/sidebar-navigation-screen-navigation-item/index.js +55 -0
  229. package/build-module/components/sidebar-navigation-screen-navigation-item/index.js.map +1 -0
  230. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +2 -2
  231. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  232. package/build-module/components/sidebar-navigation-screen-template/index.js +53 -0
  233. package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -0
  234. package/build-module/components/sidebar-navigation-screen-templates/index.js +34 -81
  235. package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  236. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +31 -0
  237. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -0
  238. package/build-module/components/site-hub/index.js +14 -46
  239. package/build-module/components/site-hub/index.js.map +1 -1
  240. package/build-module/components/start-template-options/index.js +156 -0
  241. package/build-module/components/start-template-options/index.js.map +1 -0
  242. package/build-module/components/style-book/index.js +11 -4
  243. package/build-module/components/style-book/index.js.map +1 -1
  244. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +55 -21
  245. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  246. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +1 -1
  247. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +1 -1
  248. package/build-module/components/sync-state-with-url/{use-sync-sidebar-path-with-url.js → use-sync-path-with-url.js} +11 -11
  249. package/build-module/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -0
  250. package/build-module/components/use-edited-entity-record/index.js +6 -2
  251. package/build-module/components/use-edited-entity-record/index.js.map +1 -1
  252. package/build-module/hooks/push-changes-to-global-styles/index.js +9 -8
  253. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  254. package/build-module/{experiments.js → private-apis.js} +2 -2
  255. package/build-module/private-apis.js.map +1 -0
  256. package/build-module/store/index.js +1 -1
  257. package/build-module/store/index.js.map +1 -1
  258. package/build-module/utils/get-is-list-page.js +5 -6
  259. package/build-module/utils/get-is-list-page.js.map +1 -1
  260. package/build-style/style-rtl.css +91 -41
  261. package/build-style/style.css +91 -41
  262. package/package.json +31 -31
  263. package/src/components/add-new-template/new-template-part.js +7 -4
  264. package/src/components/add-new-template/new-template.js +9 -22
  265. package/src/components/app/index.js +0 -1
  266. package/src/components/block-editor/editor-canvas.js +2 -1
  267. package/src/components/block-editor/index.js +3 -3
  268. package/src/components/editor/index.js +31 -28
  269. package/src/components/global-styles/border-panel.js +8 -8
  270. package/src/components/global-styles/color-palette-panel.js +6 -3
  271. package/src/components/global-styles/color-utils.js +2 -3
  272. package/src/components/global-styles/context-menu.js +17 -2
  273. package/src/components/global-styles/custom-css.js +4 -4
  274. package/src/components/global-styles/dimensions-panel.js +15 -11
  275. package/src/components/global-styles/global-styles-provider.js +3 -3
  276. package/src/components/global-styles/gradients-palette-panel.js +7 -4
  277. package/src/components/global-styles/header.js +9 -3
  278. package/src/components/global-styles/hooks.js +20 -93
  279. package/src/components/global-styles/navigation-button.js +4 -2
  280. package/src/components/global-styles/palette.js +4 -4
  281. package/src/components/global-styles/preview.js +3 -3
  282. package/src/components/global-styles/screen-background-color.js +6 -5
  283. package/src/components/global-styles/screen-block-list.js +19 -3
  284. package/src/components/global-styles/screen-button-color.js +11 -9
  285. package/src/components/global-styles/screen-colors.js +10 -10
  286. package/src/components/global-styles/screen-css.js +14 -7
  287. package/src/components/global-styles/screen-heading-color.js +12 -10
  288. package/src/components/global-styles/screen-link-color.js +6 -5
  289. package/src/components/global-styles/screen-root.js +3 -3
  290. package/src/components/global-styles/screen-style-variations.js +3 -3
  291. package/src/components/global-styles/screen-text-color.js +6 -5
  292. package/src/components/global-styles/screen-typography.js +4 -4
  293. package/src/components/global-styles/shadow-panel.js +9 -6
  294. package/src/components/global-styles/style.scss +7 -1
  295. package/src/components/global-styles/subtitle.js +5 -2
  296. package/src/components/global-styles/typography-panel.js +31 -395
  297. package/src/components/global-styles/typography-preview.js +3 -3
  298. package/src/components/global-styles/ui.js +3 -8
  299. package/src/components/global-styles-renderer/index.js +3 -3
  300. package/src/components/header-edit-mode/index.js +6 -3
  301. package/src/components/keyboard-shortcut-help-modal/config.js +1 -1
  302. package/src/components/layout/index.js +35 -48
  303. package/src/components/layout/style.scss +11 -23
  304. package/src/components/list/actions/rename-menu-item.js +1 -1
  305. package/src/components/list/table.js +4 -0
  306. package/src/components/navigation-inspector/index.js +0 -32
  307. package/src/components/navigation-inspector/navigation-menu.js +10 -4
  308. package/src/components/save-panel/index.js +4 -1
  309. package/src/components/sidebar/index.js +14 -19
  310. package/src/components/sidebar-edit-mode/index.js +1 -1
  311. package/src/components/sidebar-edit-mode/template-card/index.js +24 -14
  312. package/src/components/sidebar-edit-mode/template-card/last-revision.js +75 -0
  313. package/src/components/sidebar-edit-mode/template-card/style.scss +4 -0
  314. package/src/components/sidebar-navigation-screen/index.js +27 -11
  315. package/src/components/sidebar-navigation-screen/style.scss +4 -6
  316. package/src/components/sidebar-navigation-screen-navigation-item/index.js +52 -0
  317. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +1 -1
  318. package/src/components/sidebar-navigation-screen-navigation-menus/style.scss +0 -4
  319. package/src/components/sidebar-navigation-screen-template/index.js +52 -0
  320. package/src/components/sidebar-navigation-screen-templates/index.js +49 -83
  321. package/src/components/sidebar-navigation-screen-templates-browse/index.js +31 -0
  322. package/src/components/site-hub/index.js +67 -122
  323. package/src/components/site-hub/style.scss +1 -11
  324. package/src/components/start-template-options/index.js +171 -0
  325. package/src/components/start-template-options/style.scss +76 -0
  326. package/src/components/style-book/index.js +11 -7
  327. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +48 -14
  328. package/src/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +1 -1
  329. package/src/components/sync-state-with-url/{use-sync-sidebar-path-with-url.js → use-sync-path-with-url.js} +10 -10
  330. package/src/components/use-edited-entity-record/index.js +6 -2
  331. package/src/hooks/push-changes-to-global-styles/index.js +29 -24
  332. package/src/{experiments.js → private-apis.js} +1 -1
  333. package/src/store/index.js +1 -1
  334. package/src/style.scss +1 -0
  335. package/src/utils/get-is-list-page.js +5 -5
  336. package/build/components/sync-state-with-url/use-sync-sidebar-path-with-url.js.map +0 -1
  337. package/build/experiments.js.map +0 -1
  338. package/build-module/components/sync-state-with-url/use-sync-sidebar-path-with-url.js.map +0 -1
  339. package/build-module/experiments.js.map +0 -1
@@ -1,186 +1,21 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import {
5
- LineHeightControl,
6
- __experimentalFontFamilyControl as FontFamilyControl,
7
- __experimentalFontAppearanceControl as FontAppearanceControl,
8
- __experimentalLetterSpacingControl as LetterSpacingControl,
9
- __experimentalTextTransformControl as TextTransformControl,
10
- __experimentalTextDecorationControl as TextDecorationControl,
11
- experiments as blockEditorExperiments,
12
- } from '@wordpress/block-editor';
13
- import {
14
- FontSizePicker,
15
- __experimentalToolsPanel as ToolsPanel,
16
- __experimentalToolsPanelItem as ToolsPanelItem,
17
- } from '@wordpress/components';
18
- import { __ } from '@wordpress/i18n';
4
+ import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
5
+ import { useMemo } from '@wordpress/element';
19
6
 
20
7
  /**
21
8
  * Internal dependencies
22
9
  */
23
- import { getSupportedGlobalStylesPanels } from './hooks';
24
- import { unlock } from '../../experiments';
10
+ import { unlock } from '../../private-apis';
11
+ import { useSupportedStyles } from './hooks';
25
12
 
26
- const { useGlobalSetting, useGlobalStyle } = unlock( blockEditorExperiments );
27
-
28
- export function useHasTypographyPanel( name ) {
29
- const hasFontFamily = useHasFontFamilyControl( name );
30
- const hasLineHeight = useHasLineHeightControl( name );
31
- const hasFontAppearance = useHasAppearanceControl( name );
32
- const hasLetterSpacing = useHasLetterSpacingControl( name );
33
- const supports = getSupportedGlobalStylesPanels( name );
34
- return (
35
- hasFontFamily ||
36
- hasLineHeight ||
37
- hasFontAppearance ||
38
- hasLetterSpacing ||
39
- supports.includes( 'fontSize' )
40
- );
41
- }
42
-
43
- function useHasFontFamilyControl( name ) {
44
- const supports = getSupportedGlobalStylesPanels( name );
45
- const [ fontFamiliesPerOrigin ] = useGlobalSetting(
46
- 'typography.fontFamilies',
47
- name
48
- );
49
- const fontFamilies =
50
- fontFamiliesPerOrigin?.custom ||
51
- fontFamiliesPerOrigin?.theme ||
52
- fontFamiliesPerOrigin?.default;
53
- return supports.includes( 'fontFamily' ) && !! fontFamilies?.length;
54
- }
55
-
56
- function useHasLineHeightControl( name ) {
57
- const supports = getSupportedGlobalStylesPanels( name );
58
- return (
59
- useGlobalSetting( 'typography.lineHeight', name )[ 0 ] &&
60
- supports.includes( 'lineHeight' )
61
- );
62
- }
63
-
64
- function useHasAppearanceControl( name ) {
65
- const supports = getSupportedGlobalStylesPanels( name );
66
- const hasFontStyles =
67
- useGlobalSetting( 'typography.fontStyle', name )[ 0 ] &&
68
- supports.includes( 'fontStyle' );
69
- const hasFontWeights =
70
- useGlobalSetting( 'typography.fontWeight', name )[ 0 ] &&
71
- supports.includes( 'fontWeight' );
72
- return hasFontStyles || hasFontWeights;
73
- }
74
-
75
- function useAppearanceControlLabel( name ) {
76
- const supports = getSupportedGlobalStylesPanels( name );
77
- const hasFontStyles =
78
- useGlobalSetting( 'typography.fontStyle', name )[ 0 ] &&
79
- supports.includes( 'fontStyle' );
80
- const hasFontWeights =
81
- useGlobalSetting( 'typography.fontWeight', name )[ 0 ] &&
82
- supports.includes( 'fontWeight' );
83
- if ( ! hasFontStyles ) {
84
- return __( 'Font weight' );
85
- }
86
- if ( ! hasFontWeights ) {
87
- return __( 'Font style' );
88
- }
89
- return __( 'Appearance' );
90
- }
91
-
92
- function useHasLetterSpacingControl( name, element ) {
93
- const setting = useGlobalSetting( 'typography.letterSpacing', name )[ 0 ];
94
- if ( ! setting ) {
95
- return false;
96
- }
97
- if ( ! name && element === 'heading' ) {
98
- return true;
99
- }
100
- const supports = getSupportedGlobalStylesPanels( name );
101
- return supports.includes( 'letterSpacing' );
102
- }
103
-
104
- function useHasTextTransformControl( name, element ) {
105
- const setting = useGlobalSetting( 'typography.textTransform', name )[ 0 ];
106
- if ( ! setting ) {
107
- return false;
108
- }
109
- if ( ! name && element === 'heading' ) {
110
- return true;
111
- }
112
- const supports = getSupportedGlobalStylesPanels( name );
113
- return supports.includes( 'textTransform' );
114
- }
115
-
116
- function useHasTextDecorationControl( name, element ) {
117
- // This is an exception for link elements.
118
- // We shouldn't allow other blocks or elements to set textDecoration
119
- // because this will be inherited by their children.
120
- return ! name && element === 'link';
121
- }
122
-
123
- function useStyleWithReset( path, blockName ) {
124
- const [ style, setStyle ] = useGlobalStyle( path, blockName );
125
- const [ userStyle ] = useGlobalStyle( path, blockName, 'user' );
126
- const hasStyle = () => !! userStyle;
127
- const resetStyle = () => setStyle( undefined );
128
- return [ style, setStyle, hasStyle, resetStyle ];
129
- }
130
-
131
- function useFontSizeWithReset( path, blockName ) {
132
- const [ fontSize, setStyleCallback ] = useGlobalStyle( path, blockName );
133
- const [ userStyle ] = useGlobalStyle( path, blockName, 'user' );
134
- const hasFontSize = () => !! userStyle;
135
- const resetFontSize = () => setStyleCallback( undefined );
136
- const setFontSize = ( newValue, metadata ) => {
137
- if ( !! metadata?.slug ) {
138
- newValue = `var:preset|font-size|${ metadata?.slug }`;
139
- }
140
- setStyleCallback( newValue );
141
- };
142
-
143
- return {
144
- fontSize,
145
- setFontSize,
146
- hasFontSize,
147
- resetFontSize,
148
- };
149
- }
150
-
151
- function useFontAppearance( prefix, name ) {
152
- const [ fontStyle, setFontStyle ] = useGlobalStyle(
153
- prefix + 'typography.fontStyle',
154
- name
155
- );
156
- const [ userFontStyle ] = useGlobalStyle(
157
- prefix + 'typography.fontStyle',
158
- name,
159
- 'user'
160
- );
161
- const [ fontWeight, setFontWeight ] = useGlobalStyle(
162
- prefix + 'typography.fontWeight',
163
- name
164
- );
165
- const [ userFontWeight ] = useGlobalStyle(
166
- prefix + 'typography.fontWeight',
167
- name,
168
- 'user'
169
- );
170
- const hasFontAppearance = () => !! userFontStyle || !! userFontWeight;
171
- const resetFontAppearance = () => {
172
- setFontStyle( undefined );
173
- setFontWeight( undefined );
174
- };
175
- return {
176
- fontStyle,
177
- setFontStyle,
178
- fontWeight,
179
- setFontWeight,
180
- hasFontAppearance,
181
- resetFontAppearance,
182
- };
183
- }
13
+ const {
14
+ useGlobalStyle,
15
+ useGlobalSetting,
16
+ overrideSettingsWithSupports,
17
+ TypographyPanel: StylesTypographyPanel,
18
+ } = unlock( blockEditorPrivateApis );
184
19
 
185
20
  export default function TypographyPanel( {
186
21
  name,
@@ -188,234 +23,35 @@ export default function TypographyPanel( {
188
23
  headingLevel,
189
24
  variation = '',
190
25
  } ) {
191
- const supports = getSupportedGlobalStylesPanels( name );
192
- let prefix = '';
26
+ let prefixParts = [];
193
27
  if ( element === 'heading' ) {
194
- prefix = `elements.${ headingLevel }.`;
28
+ prefixParts = prefixParts.concat( [ 'elements', headingLevel ] );
195
29
  } else if ( element && element !== 'text' ) {
196
- prefix = `elements.${ element }.`;
30
+ prefixParts = prefixParts.concat( [ 'elements', element ] );
197
31
  }
198
32
  if ( variation ) {
199
- prefix = prefix
200
- ? `variations.${ variation }.${ prefix }`
201
- : `variations.${ variation }`;
33
+ prefixParts = [ 'variations', variation ].concat( prefixParts );
202
34
  }
203
- const [ fontSizesPerOrigin ] = useGlobalSetting(
204
- 'typography.fontSizes',
205
- name
206
- );
207
- const fontSizes =
208
- fontSizesPerOrigin?.custom ||
209
- fontSizesPerOrigin?.theme ||
210
- fontSizesPerOrigin?.default;
35
+ const prefix = prefixParts.join( '.' );
211
36
 
212
- const disableCustomFontSizes = ! useGlobalSetting(
213
- 'typography.customFontSize',
214
- name
215
- )[ 0 ];
216
- const [ fontFamiliesPerOrigin ] = useGlobalSetting(
217
- 'typography.fontFamilies',
218
- name
37
+ const [ style ] = useGlobalStyle( prefix, name, 'user', false );
38
+ const [ inheritedStyle, setStyle ] = useGlobalStyle( prefix, name, 'all', {
39
+ shouldDecodeEncode: false,
40
+ } );
41
+ const [ rawSettings ] = useGlobalSetting( '', name );
42
+ const usedElement = element === 'heading' ? headingLevel : element;
43
+ const supports = useSupportedStyles( name, usedElement );
44
+ const settings = useMemo(
45
+ () => overrideSettingsWithSupports( rawSettings, supports ),
46
+ [ rawSettings, supports ]
219
47
  );
220
- const fontFamilies =
221
- fontFamiliesPerOrigin?.custom ||
222
- fontFamiliesPerOrigin?.theme ||
223
- fontFamiliesPerOrigin?.default;
224
- const hasFontStyles =
225
- useGlobalSetting( 'typography.fontStyle', name )[ 0 ] &&
226
- supports.includes( 'fontStyle' );
227
- const hasFontWeights =
228
- useGlobalSetting( 'typography.fontWeight', name )[ 0 ] &&
229
- supports.includes( 'fontWeight' );
230
- const hasFontFamilyEnabled = useHasFontFamilyControl( name );
231
- const hasLineHeightEnabled = useHasLineHeightControl( name );
232
- const hasAppearanceControl = useHasAppearanceControl( name );
233
- const appearanceControlLabel = useAppearanceControlLabel( name );
234
- const hasLetterSpacingControl = useHasLetterSpacingControl( name, element );
235
- const hasTextTransformControl = useHasTextTransformControl( name, element );
236
- const hasTextDecorationControl = useHasTextDecorationControl(
237
- name,
238
- element
239
- );
240
-
241
- /* Disable font size controls when the option to style all headings is selected. */
242
- let hasFontSizeEnabled = supports.includes( 'fontSize' );
243
- if ( element === 'heading' && headingLevel === 'heading' ) {
244
- hasFontSizeEnabled = false;
245
- }
246
-
247
- const [ fontFamily, setFontFamily, hasFontFamily, resetFontFamily ] =
248
- useStyleWithReset( prefix + 'typography.fontFamily', name );
249
- const { fontSize, setFontSize, hasFontSize, resetFontSize } =
250
- useFontSizeWithReset( prefix + 'typography.fontSize', name );
251
- const {
252
- fontStyle,
253
- setFontStyle,
254
- fontWeight,
255
- setFontWeight,
256
- hasFontAppearance,
257
- resetFontAppearance,
258
- } = useFontAppearance( prefix, name );
259
- const [ lineHeight, setLineHeight, hasLineHeight, resetLineHeight ] =
260
- useStyleWithReset( prefix + 'typography.lineHeight', name );
261
- const [
262
- letterSpacing,
263
- setLetterSpacing,
264
- hasLetterSpacing,
265
- resetLetterSpacing,
266
- ] = useStyleWithReset( prefix + 'typography.letterSpacing', name );
267
- const [
268
- textTransform,
269
- setTextTransform,
270
- hasTextTransform,
271
- resetTextTransform,
272
- ] = useStyleWithReset( prefix + 'typography.textTransform', name );
273
- const [
274
- textDecoration,
275
- setTextDecoration,
276
- hasTextDecoration,
277
- resetTextDecoration,
278
- ] = useStyleWithReset( prefix + 'typography.textDecoration', name );
279
-
280
- const resetAll = () => {
281
- resetFontFamily();
282
- resetFontSize();
283
- resetFontAppearance();
284
- resetLineHeight();
285
- resetLetterSpacing();
286
- resetTextTransform();
287
- };
288
48
 
289
49
  return (
290
- <ToolsPanel label={ __( 'Typography' ) } resetAll={ resetAll }>
291
- { hasFontFamilyEnabled && (
292
- <ToolsPanelItem
293
- label={ __( 'Font family' ) }
294
- hasValue={ hasFontFamily }
295
- onDeselect={ resetFontFamily }
296
- isShownByDefault
297
- >
298
- <FontFamilyControl
299
- fontFamilies={ fontFamilies }
300
- value={ fontFamily }
301
- onChange={ setFontFamily }
302
- size="__unstable-large"
303
- __nextHasNoMarginBottom
304
- />
305
- </ToolsPanelItem>
306
- ) }
307
- { hasFontSizeEnabled && (
308
- <ToolsPanelItem
309
- label={ __( 'Font size' ) }
310
- hasValue={ hasFontSize }
311
- onDeselect={ resetFontSize }
312
- isShownByDefault
313
- >
314
- <FontSizePicker
315
- value={ fontSize }
316
- onChange={ setFontSize }
317
- fontSizes={ fontSizes }
318
- disableCustomFontSizes={ disableCustomFontSizes }
319
- withReset={ false }
320
- withSlider
321
- size="__unstable-large"
322
- __nextHasNoMarginBottom
323
- />
324
- </ToolsPanelItem>
325
- ) }
326
- { hasAppearanceControl && (
327
- <ToolsPanelItem
328
- className="single-column"
329
- label={ appearanceControlLabel }
330
- hasValue={ hasFontAppearance }
331
- onDeselect={ resetFontAppearance }
332
- isShownByDefault
333
- >
334
- <FontAppearanceControl
335
- value={ {
336
- fontStyle,
337
- fontWeight,
338
- } }
339
- onChange={ ( {
340
- fontStyle: newFontStyle,
341
- fontWeight: newFontWeight,
342
- } ) => {
343
- setFontStyle( newFontStyle );
344
- setFontWeight( newFontWeight );
345
- } }
346
- hasFontStyles={ hasFontStyles }
347
- hasFontWeights={ hasFontWeights }
348
- size="__unstable-large"
349
- __nextHasNoMarginBottom
350
- />
351
- </ToolsPanelItem>
352
- ) }
353
- { hasLineHeightEnabled && (
354
- <ToolsPanelItem
355
- className="single-column"
356
- label={ __( 'Line height' ) }
357
- hasValue={ hasLineHeight }
358
- onDeselect={ resetLineHeight }
359
- isShownByDefault
360
- >
361
- <LineHeightControl
362
- __nextHasNoMarginBottom
363
- __unstableInputWidth="auto"
364
- value={ lineHeight }
365
- onChange={ setLineHeight }
366
- size="__unstable-large"
367
- />
368
- </ToolsPanelItem>
369
- ) }
370
- { hasLetterSpacingControl && (
371
- <ToolsPanelItem
372
- className="single-column"
373
- label={ __( 'Letter spacing' ) }
374
- hasValue={ hasLetterSpacing }
375
- onDeselect={ resetLetterSpacing }
376
- isShownByDefault
377
- >
378
- <LetterSpacingControl
379
- value={ letterSpacing }
380
- onChange={ setLetterSpacing }
381
- size="__unstable-large"
382
- __unstableInputWidth="auto"
383
- />
384
- </ToolsPanelItem>
385
- ) }
386
- { hasTextTransformControl && (
387
- <ToolsPanelItem
388
- label={ __( 'Letter case' ) }
389
- hasValue={ hasTextTransform }
390
- onDeselect={ resetTextTransform }
391
- isShownByDefault
392
- >
393
- <TextTransformControl
394
- value={ textTransform }
395
- onChange={ setTextTransform }
396
- showNone
397
- isBlock
398
- size="__unstable-large"
399
- __nextHasNoMarginBottom
400
- />
401
- </ToolsPanelItem>
402
- ) }
403
- { hasTextDecorationControl && (
404
- <ToolsPanelItem
405
- className="single-column"
406
- label={ __( 'Text decoration' ) }
407
- hasValue={ hasTextDecoration }
408
- onDeselect={ resetTextDecoration }
409
- isShownByDefault
410
- >
411
- <TextDecorationControl
412
- value={ textDecoration }
413
- onChange={ setTextDecoration }
414
- size="__unstable-large"
415
- __unstableInputWidth="auto"
416
- />
417
- </ToolsPanelItem>
418
- ) }
419
- </ToolsPanel>
50
+ <StylesTypographyPanel
51
+ inheritedValue={ inheritedStyle }
52
+ value={ style }
53
+ onChange={ setStyle }
54
+ settings={ settings }
55
+ />
420
56
  );
421
57
  }
@@ -1,14 +1,14 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import { experiments as blockEditorExperiments } from '@wordpress/block-editor';
4
+ import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
5
5
 
6
6
  /**
7
7
  * Internal dependencies
8
8
  */
9
- import { unlock } from '../../experiments';
9
+ import { unlock } from '../../private-apis';
10
10
 
11
- const { useGlobalStyle } = unlock( blockEditorExperiments );
11
+ const { useGlobalStyle } = unlock( blockEditorPrivateApis );
12
12
 
13
13
  export default function TypographyPreview( { name, element, headingLevel } ) {
14
14
  let prefix = '';
@@ -10,7 +10,7 @@ import {
10
10
  } from '@wordpress/components';
11
11
  import { getBlockTypes, store as blocksStore } from '@wordpress/blocks';
12
12
  import { useSelect, useDispatch } from '@wordpress/data';
13
- import { experiments as blockEditorExperiments } from '@wordpress/block-editor';
13
+ import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
14
14
  import { __ } from '@wordpress/i18n';
15
15
  import { store as preferencesStore } from '@wordpress/preferences';
16
16
  import { moreVertical } from '@wordpress/icons';
@@ -37,7 +37,7 @@ import { ScreenVariation } from './screen-variations';
37
37
  import ScreenBorder from './screen-border';
38
38
  import StyleBook from '../style-book';
39
39
  import ScreenCSS from './screen-css';
40
- import { unlock } from '../../experiments';
40
+ import { unlock } from '../../private-apis';
41
41
  import ScreenEffects from './screen-effects';
42
42
 
43
43
  const SLOT_FILL_NAME = 'GlobalStylesMenu';
@@ -60,7 +60,7 @@ function GlobalStylesActionMenu() {
60
60
  !! globalStyles?._links?.[ 'wp:action-edit-css' ] ?? false,
61
61
  };
62
62
  }, [] );
63
- const { useGlobalStylesReset } = unlock( blockEditorExperiments );
63
+ const { useGlobalStylesReset } = unlock( blockEditorPrivateApis );
64
64
  const [ canReset, onReset ] = useGlobalStylesReset();
65
65
  const { goTo } = useNavigator();
66
66
  const loadCustomCSS = () => goTo( '/css' );
@@ -267,11 +267,6 @@ function GlobalStylesStyleBook( { onClose } ) {
267
267
  )
268
268
  }
269
269
  onSelect={ ( blockName ) => {
270
- // Clear navigator history by going back to the root.
271
- const depth = path.match( /\//g ).length;
272
- for ( let i = 0; i < depth; i++ ) {
273
- navigator.goBack();
274
- }
275
270
  // Now go to the selected block.
276
271
  navigator.goTo( '/blocks/' + encodeURIComponent( blockName ) );
277
272
  } }
@@ -3,15 +3,15 @@
3
3
  */
4
4
  import { useEffect } from '@wordpress/element';
5
5
  import { useSelect, useDispatch } from '@wordpress/data';
6
- import { experiments as blockEditorExperiments } from '@wordpress/block-editor';
6
+ import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
7
7
 
8
8
  /**
9
9
  * Internal dependencies
10
10
  */
11
11
  import { store as editSiteStore } from '../../store';
12
- import { unlock } from '../../experiments';
12
+ import { unlock } from '../../private-apis';
13
13
 
14
- const { useGlobalStylesOutput } = unlock( blockEditorExperiments );
14
+ const { useGlobalStylesOutput } = unlock( blockEditorPrivateApis );
15
15
 
16
16
  function useGlobalStylesRenderer() {
17
17
  const [ styles, settings, svgFilters ] = useGlobalStylesOutput();
@@ -100,10 +100,13 @@ export default function HeaderEditMode() {
100
100
 
101
101
  const isLargeViewport = useViewportMatch( 'medium' );
102
102
 
103
- const openInserter = useCallback( () => {
103
+ const toggleInserter = useCallback( () => {
104
104
  if ( isInserterOpen ) {
105
- // Focusing the inserter button closes the inserter popover.
105
+ // Focusing the inserter button should close the inserter popover.
106
+ // However, there are some cases it won't close when the focus is lost.
107
+ // See https://github.com/WordPress/gutenberg/issues/43090 for more details.
106
108
  inserterButton.current.focus();
109
+ setIsInserterOpened( false );
107
110
  } else {
108
111
  setIsInserterOpened( true );
109
112
  }
@@ -148,7 +151,7 @@ export default function HeaderEditMode() {
148
151
  variant="primary"
149
152
  isPressed={ isInserterOpen }
150
153
  onMouseDown={ preventDefault }
151
- onClick={ openInserter }
154
+ onClick={ toggleInserter }
152
155
  disabled={ ! isVisualMode }
153
156
  icon={ plus }
154
157
  label={ showIconLabels ? shortLabel : longLabel }
@@ -22,7 +22,7 @@ export const textFormattingShortcuts = [
22
22
  },
23
23
  {
24
24
  keyCombination: { character: '[[' },
25
- description: __( 'Insert a link to a post or page' ),
25
+ description: __( 'Insert a link to a post or page.' ),
26
26
  },
27
27
  {
28
28
  keyCombination: { modifier: 'primary', character: 'u' },
@@ -19,7 +19,7 @@ import {
19
19
  useResizeObserver,
20
20
  } from '@wordpress/compose';
21
21
  import { __ } from '@wordpress/i18n';
22
- import { useState, useEffect, useRef } from '@wordpress/element';
22
+ import { useState, useRef } from '@wordpress/element';
23
23
  import { NavigableRegion } from '@wordpress/interface';
24
24
  import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
25
25
 
@@ -38,7 +38,7 @@ import useInitEditedEntityFromURL from '../sync-state-with-url/use-init-edited-e
38
38
  import SiteHub from '../site-hub';
39
39
  import ResizeHandle from '../block-editor/resize-handle';
40
40
  import useSyncCanvasModeWithURL from '../sync-state-with-url/use-sync-canvas-mode-with-url';
41
- import { unlock } from '../../experiments';
41
+ import { unlock } from '../../private-apis';
42
42
  import SavePanel from '../save-panel';
43
43
 
44
44
  const ANIMATION_DURATION = 0.5;
@@ -87,21 +87,20 @@ export default function Layout() {
87
87
  } );
88
88
  const disableMotion = useReducedMotion();
89
89
  const isMobileViewport = useViewportMatch( 'medium', '<' );
90
- const [ isMobileCanvasVisible, setIsMobileCanvasVisible ] =
91
- useState( false );
92
90
  const canvasPadding = isMobileViewport ? 0 : 24;
93
91
  const showSidebar =
94
- ( isMobileViewport && ! isMobileCanvasVisible ) ||
92
+ ( isMobileViewport && ! isListPage ) ||
95
93
  ( ! isMobileViewport && ( canvasMode === 'view' || ! isEditorPage ) );
96
94
  const showCanvas =
97
- ( isMobileViewport && isMobileCanvasVisible ) || ! isMobileViewport;
95
+ ( isMobileViewport && isEditorPage && canvasMode === 'edit' ) ||
96
+ ! isMobileViewport ||
97
+ ! isEditorPage;
98
98
  const showFrame =
99
- ! isEditorPage || ( canvasMode === 'view' && ! isMobileViewport );
100
-
99
+ ( ! isEditorPage && ! isMobileViewport ) ||
100
+ ( ! isMobileViewport && isEditorPage && canvasMode === 'view' );
101
101
  const isFullCanvas =
102
- ( isEditorPage && canvasMode === 'edit' && ! isMobileViewport ) ||
103
- isMobileCanvasVisible;
104
- // Ideally this effect could be removed if we move the "isMobileCanvasVisible" into the store.
102
+ ( isMobileViewport && isListPage ) ||
103
+ ( isEditorPage && canvasMode === 'edit' );
105
104
  const [ canvasResizer, canvasSize ] = useResizeObserver();
106
105
  const [ fullResizer, fullSize ] = useResizeObserver();
107
106
  const [ forcedWidth, setForcedWidth ] = useState( null );
@@ -112,15 +111,6 @@ export default function Layout() {
112
111
  if ( showFrame && ! isResizing ) {
113
112
  canvasWidth = canvasSize.width - canvasPadding;
114
113
  }
115
- useEffect( () => {
116
- if ( canvasMode === 'view' && isMobileViewport ) {
117
- setIsMobileCanvasVisible( false );
118
- }
119
-
120
- if ( canvasMode === 'edit' && isMobileViewport ) {
121
- setIsMobileCanvasVisible( true );
122
- }
123
- }, [ canvasMode, isMobileViewport ] );
124
114
 
125
115
  // Synchronizing the URL with the store value of canvasMode happens in an effect
126
116
  // This condition ensures the component is only rendered after the synchronization happens
@@ -153,37 +143,34 @@ export default function Layout() {
153
143
  ? forcedWidth - 48
154
144
  : undefined,
155
145
  } }
156
- isMobileCanvasVisible={ isMobileCanvasVisible }
157
- setIsMobileCanvasVisible={ setIsMobileCanvasVisible }
158
146
  />
159
147
 
160
148
  <AnimatePresence initial={ false }>
161
- { isEditorPage &&
162
- ( canvasMode === 'edit' || isMobileCanvasVisible ) && (
163
- <NavigableRegion
164
- className="edit-site-layout__header"
165
- ariaLabel={ __( 'Editor top bar' ) }
166
- as={ motion.div }
167
- animate={ {
168
- y: 0,
169
- } }
170
- initial={ {
171
- y: '-100%',
172
- } }
173
- exit={ {
174
- y: '-100%',
175
- } }
176
- transition={ {
177
- type: 'tween',
178
- duration: disableMotion
179
- ? 0
180
- : ANIMATION_DURATION,
181
- ease: 'easeOut',
182
- } }
183
- >
184
- { canvasMode === 'edit' && <Header /> }
185
- </NavigableRegion>
186
- ) }
149
+ { isEditorPage && canvasMode === 'edit' && (
150
+ <NavigableRegion
151
+ className="edit-site-layout__header"
152
+ ariaLabel={ __( 'Editor top bar' ) }
153
+ as={ motion.div }
154
+ animate={ {
155
+ y: 0,
156
+ } }
157
+ initial={ {
158
+ y: '-100%',
159
+ } }
160
+ exit={ {
161
+ y: '-100%',
162
+ } }
163
+ transition={ {
164
+ type: 'tween',
165
+ duration: disableMotion
166
+ ? 0
167
+ : ANIMATION_DURATION,
168
+ ease: 'easeOut',
169
+ } }
170
+ >
171
+ { canvasMode === 'edit' && <Header /> }
172
+ </NavigableRegion>
173
+ ) }
187
174
  </AnimatePresence>
188
175
 
189
176
  <div className="edit-site-layout__content">