@wordpress/edit-site 6.10.0 → 6.12.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 (516) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/components/add-new-post/index.js +1 -1
  3. package/build/components/add-new-post/index.js.map +1 -1
  4. package/build/components/add-new-template/index.js +1 -1
  5. package/build/components/add-new-template/index.js.map +1 -1
  6. package/build/components/add-new-template/utils.js +8 -8
  7. package/build/components/add-new-template/utils.js.map +1 -1
  8. package/build/components/app/index.js +2 -2
  9. package/build/components/app/index.js.map +1 -1
  10. package/build/components/block-editor/use-editor-iframe-props.js +29 -22
  11. package/build/components/block-editor/use-editor-iframe-props.js.map +1 -1
  12. package/build/components/block-editor/use-site-editor-settings.js +10 -8
  13. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  14. package/build/components/editor/index.js +32 -14
  15. package/build/components/editor/index.js.map +1 -1
  16. package/build/components/editor/use-adapt-editor-to-canvas.js +49 -0
  17. package/build/components/editor/use-adapt-editor-to-canvas.js.map +1 -0
  18. package/build/components/editor/use-editor-title.js +30 -13
  19. package/build/components/editor/use-editor-title.js.map +1 -1
  20. package/build/components/global-styles/font-sizes/font-size.js +6 -6
  21. package/build/components/global-styles/font-sizes/font-size.js.map +1 -1
  22. package/build/components/global-styles/font-sizes/font-sizes-count.js +0 -1
  23. package/build/components/global-styles/font-sizes/font-sizes-count.js.map +1 -1
  24. package/build/components/global-styles/font-sizes/font-sizes.js +4 -4
  25. package/build/components/global-styles/font-sizes/font-sizes.js.map +1 -1
  26. package/build/components/global-styles/palette.js +16 -13
  27. package/build/components/global-styles/palette.js.map +1 -1
  28. package/build/components/global-styles/root-menu.js +0 -4
  29. package/build/components/global-styles/root-menu.js.map +1 -1
  30. package/build/components/global-styles/screen-block-list.js +0 -4
  31. package/build/components/global-styles/screen-block-list.js.map +1 -1
  32. package/build/components/global-styles/screen-css.js +1 -1
  33. package/build/components/global-styles/screen-css.js.map +1 -1
  34. package/build/components/global-styles/screen-revisions/revisions-buttons.js +26 -24
  35. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  36. package/build/components/global-styles/screen-root.js +0 -3
  37. package/build/components/global-styles/screen-root.js.map +1 -1
  38. package/build/components/global-styles/screen-style-variations.js +5 -1
  39. package/build/components/global-styles/screen-style-variations.js.map +1 -1
  40. package/build/components/global-styles/shadows-edit-panel.js +11 -13
  41. package/build/components/global-styles/shadows-edit-panel.js.map +1 -1
  42. package/build/components/global-styles/shadows-panel.js +0 -3
  43. package/build/components/global-styles/shadows-panel.js.map +1 -1
  44. package/build/components/global-styles/typography-elements.js +1 -4
  45. package/build/components/global-styles/typography-elements.js.map +1 -1
  46. package/build/components/global-styles/ui.js +49 -2
  47. package/build/components/global-styles/ui.js.map +1 -1
  48. package/build/components/global-styles/variations/variation.js +2 -2
  49. package/build/components/global-styles/variations/variation.js.map +1 -1
  50. package/build/components/global-styles/variations/variations-panel.js +0 -1
  51. package/build/components/global-styles/variations/variations-panel.js.map +1 -1
  52. package/build/components/global-styles-renderer/index.js +6 -8
  53. package/build/components/global-styles-renderer/index.js.map +1 -1
  54. package/build/components/global-styles-sidebar/default-sidebar.js +0 -1
  55. package/build/components/global-styles-sidebar/default-sidebar.js.map +1 -1
  56. package/build/components/global-styles-sidebar/index.js +43 -30
  57. package/build/components/global-styles-sidebar/index.js.map +1 -1
  58. package/build/components/layout/animation.js +1 -3
  59. package/build/components/layout/animation.js.map +1 -1
  60. package/build/components/layout/hooks.js +1 -10
  61. package/build/components/layout/hooks.js.map +1 -1
  62. package/build/components/layout/index.js +23 -35
  63. package/build/components/layout/index.js.map +1 -1
  64. package/build/components/layout/router.js +17 -140
  65. package/build/components/layout/router.js.map +1 -1
  66. package/build/components/page-patterns/delete-category-menu-item.js +3 -3
  67. package/build/components/page-patterns/delete-category-menu-item.js.map +1 -1
  68. package/build/components/page-patterns/fields.js +3 -7
  69. package/build/components/page-patterns/fields.js.map +1 -1
  70. package/build/components/page-patterns/use-pattern-settings.js +1 -1
  71. package/build/components/page-patterns/use-pattern-settings.js.map +1 -1
  72. package/build/components/page-templates/fields.js +1 -2
  73. package/build/components/page-templates/fields.js.map +1 -1
  74. package/build/components/page-templates/index.js +1 -2
  75. package/build/components/page-templates/index.js.map +1 -1
  76. package/build/components/pagination/index.js +1 -1
  77. package/build/components/pagination/index.js.map +1 -1
  78. package/build/components/post-edit/index.js +15 -5
  79. package/build/components/post-edit/index.js.map +1 -1
  80. package/build/components/post-fields/index.js +4 -244
  81. package/build/components/post-fields/index.js.map +1 -1
  82. package/build/components/post-list/index.js +12 -2
  83. package/build/components/post-list/index.js.map +1 -1
  84. package/build/components/posts-app/index.js.map +1 -1
  85. package/build/components/posts-app/router.js +4 -4
  86. package/build/components/posts-app/router.js.map +1 -1
  87. package/build/components/resizable-frame/index.js +21 -9
  88. package/build/components/resizable-frame/index.js.map +1 -1
  89. package/build/components/revisions/index.js +1 -1
  90. package/build/components/revisions/index.js.map +1 -1
  91. package/build/components/save-keyboard-shortcut/index.js +78 -0
  92. package/build/components/save-keyboard-shortcut/index.js.map +1 -0
  93. package/build/components/save-panel/index.js +17 -6
  94. package/build/components/save-panel/index.js.map +1 -1
  95. package/build/components/sidebar/index.js +11 -3
  96. package/build/components/sidebar/index.js.map +1 -1
  97. package/build/components/sidebar-dataviews/default-views.js +2 -5
  98. package/build/components/sidebar-dataviews/default-views.js.map +1 -1
  99. package/build/components/sidebar-global-styles-wrapper/index.js +129 -0
  100. package/build/components/sidebar-global-styles-wrapper/index.js.map +1 -0
  101. package/build/components/sidebar-navigation-screen/index.js +2 -1
  102. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  103. package/build/components/sidebar-navigation-screen-global-styles/index.js +33 -71
  104. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  105. package/build/components/sidebar-navigation-screen-main/index.js +43 -42
  106. package/build/components/sidebar-navigation-screen-main/index.js.map +1 -1
  107. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +1 -1
  108. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  109. package/build/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js +3 -3
  110. package/build/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js.map +1 -1
  111. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +7 -12
  112. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  113. package/build/components/site-editor-routes/home-edit.js +26 -0
  114. package/build/components/site-editor-routes/home-edit.js.map +1 -0
  115. package/build/components/site-editor-routes/home-view.js +25 -0
  116. package/build/components/site-editor-routes/home-view.js.map +1 -0
  117. package/build/components/site-editor-routes/index.js +49 -0
  118. package/build/components/site-editor-routes/index.js.map +1 -0
  119. package/build/components/site-editor-routes/navigation-edit.js +29 -0
  120. package/build/components/site-editor-routes/navigation-edit.js.map +1 -0
  121. package/build/components/site-editor-routes/navigation-item-edit.js +31 -0
  122. package/build/components/site-editor-routes/navigation-item-edit.js.map +1 -0
  123. package/build/components/site-editor-routes/navigation-item-view.js +30 -0
  124. package/build/components/site-editor-routes/navigation-item-view.js.map +1 -0
  125. package/build/components/site-editor-routes/navigation-view.js +28 -0
  126. package/build/components/site-editor-routes/navigation-view.js.map +1 -0
  127. package/build/components/site-editor-routes/pages-edit.js +43 -0
  128. package/build/components/site-editor-routes/pages-edit.js.map +1 -0
  129. package/build/components/site-editor-routes/pages-list-view-quick-edit.js +64 -0
  130. package/build/components/site-editor-routes/pages-list-view-quick-edit.js.map +1 -0
  131. package/build/components/site-editor-routes/pages-list-view.js +47 -0
  132. package/build/components/site-editor-routes/pages-list-view.js.map +1 -0
  133. package/build/components/site-editor-routes/pages-view-quick-edit.js +61 -0
  134. package/build/components/site-editor-routes/pages-view-quick-edit.js.map +1 -0
  135. package/build/components/site-editor-routes/pages-view.js +42 -0
  136. package/build/components/site-editor-routes/pages-view.js.map +1 -0
  137. package/build/components/site-editor-routes/patterns-edit.js +31 -0
  138. package/build/components/site-editor-routes/patterns-edit.js.map +1 -0
  139. package/build/components/site-editor-routes/patterns-view.js +29 -0
  140. package/build/components/site-editor-routes/patterns-view.js.map +1 -0
  141. package/build/components/site-editor-routes/styles-edit.js +33 -0
  142. package/build/components/site-editor-routes/styles-edit.js.map +1 -0
  143. package/build/components/site-editor-routes/styles-view.js +33 -0
  144. package/build/components/site-editor-routes/styles-view.js.map +1 -0
  145. package/build/components/site-editor-routes/templates-edit.js +31 -0
  146. package/build/components/site-editor-routes/templates-edit.js.map +1 -0
  147. package/build/components/site-editor-routes/templates-list-view.js +34 -0
  148. package/build/components/site-editor-routes/templates-list-view.js.map +1 -0
  149. package/build/components/site-editor-routes/templates-view.js +29 -0
  150. package/build/components/site-editor-routes/templates-view.js.map +1 -0
  151. package/build/components/site-hub/index.js +22 -8
  152. package/build/components/site-hub/index.js.map +1 -1
  153. package/build/components/style-book/color-examples.js +46 -0
  154. package/build/components/style-book/color-examples.js.map +1 -0
  155. package/build/components/style-book/constants.js +85 -13
  156. package/build/components/style-book/constants.js.map +1 -1
  157. package/build/components/style-book/duotone-examples.js +55 -0
  158. package/build/components/style-book/duotone-examples.js.map +1 -0
  159. package/build/components/style-book/examples.js +116 -3
  160. package/build/components/style-book/examples.js.map +1 -1
  161. package/build/components/style-book/index.js +161 -46
  162. package/build/components/style-book/index.js.map +1 -1
  163. package/build/components/style-book/types.js.map +1 -1
  164. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +38 -33
  165. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  166. package/build/components/welcome-guide/index.js +4 -2
  167. package/build/components/welcome-guide/index.js.map +1 -1
  168. package/build/components/welcome-guide/page.js +1 -9
  169. package/build/components/welcome-guide/page.js.map +1 -1
  170. package/build/components/welcome-guide/template.js +1 -12
  171. package/build/components/welcome-guide/template.js.map +1 -1
  172. package/build/hooks/commands/use-common-commands.js +61 -45
  173. package/build/hooks/commands/use-common-commands.js.map +1 -1
  174. package/build/hooks/commands/use-set-command-context.js +12 -15
  175. package/build/hooks/commands/use-set-command-context.js.map +1 -1
  176. package/build/index.js +1 -0
  177. package/build/index.js.map +1 -1
  178. package/build/posts.js +1 -0
  179. package/build/posts.js.map +1 -1
  180. package/build/store/private-actions.js +8 -60
  181. package/build/store/private-actions.js.map +1 -1
  182. package/build/store/private-selectors.js +4 -12
  183. package/build/store/private-selectors.js.map +1 -1
  184. package/build/store/reducer.js +9 -18
  185. package/build/store/reducer.js.map +1 -1
  186. package/build-module/components/add-new-post/index.js +1 -1
  187. package/build-module/components/add-new-post/index.js.map +1 -1
  188. package/build-module/components/add-new-template/index.js +1 -1
  189. package/build-module/components/add-new-template/index.js.map +1 -1
  190. package/build-module/components/add-new-template/utils.js +9 -9
  191. package/build-module/components/add-new-template/utils.js.map +1 -1
  192. package/build-module/components/app/index.js +4 -4
  193. package/build-module/components/app/index.js.map +1 -1
  194. package/build-module/components/block-editor/use-editor-iframe-props.js +30 -23
  195. package/build-module/components/block-editor/use-editor-iframe-props.js.map +1 -1
  196. package/build-module/components/block-editor/use-site-editor-settings.js +10 -8
  197. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  198. package/build-module/components/editor/index.js +32 -14
  199. package/build-module/components/editor/index.js.map +1 -1
  200. package/build-module/components/editor/use-adapt-editor-to-canvas.js +42 -0
  201. package/build-module/components/editor/use-adapt-editor-to-canvas.js.map +1 -0
  202. package/build-module/components/editor/use-editor-title.js +31 -14
  203. package/build-module/components/editor/use-editor-title.js.map +1 -1
  204. package/build-module/components/global-styles/font-sizes/font-size.js +6 -6
  205. package/build-module/components/global-styles/font-sizes/font-size.js.map +1 -1
  206. package/build-module/components/global-styles/font-sizes/font-sizes-count.js +0 -1
  207. package/build-module/components/global-styles/font-sizes/font-sizes-count.js.map +1 -1
  208. package/build-module/components/global-styles/font-sizes/font-sizes.js +4 -4
  209. package/build-module/components/global-styles/font-sizes/font-sizes.js.map +1 -1
  210. package/build-module/components/global-styles/palette.js +17 -14
  211. package/build-module/components/global-styles/palette.js.map +1 -1
  212. package/build-module/components/global-styles/root-menu.js +0 -4
  213. package/build-module/components/global-styles/root-menu.js.map +1 -1
  214. package/build-module/components/global-styles/screen-block-list.js +0 -4
  215. package/build-module/components/global-styles/screen-block-list.js.map +1 -1
  216. package/build-module/components/global-styles/screen-css.js +1 -1
  217. package/build-module/components/global-styles/screen-css.js.map +1 -1
  218. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +27 -25
  219. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  220. package/build-module/components/global-styles/screen-root.js +0 -3
  221. package/build-module/components/global-styles/screen-root.js.map +1 -1
  222. package/build-module/components/global-styles/screen-style-variations.js +5 -1
  223. package/build-module/components/global-styles/screen-style-variations.js.map +1 -1
  224. package/build-module/components/global-styles/shadows-edit-panel.js +11 -13
  225. package/build-module/components/global-styles/shadows-edit-panel.js.map +1 -1
  226. package/build-module/components/global-styles/shadows-panel.js +0 -3
  227. package/build-module/components/global-styles/shadows-panel.js.map +1 -1
  228. package/build-module/components/global-styles/typography-elements.js +2 -5
  229. package/build-module/components/global-styles/typography-elements.js.map +1 -1
  230. package/build-module/components/global-styles/ui.js +50 -3
  231. package/build-module/components/global-styles/ui.js.map +1 -1
  232. package/build-module/components/global-styles/variations/variation.js +3 -3
  233. package/build-module/components/global-styles/variations/variation.js.map +1 -1
  234. package/build-module/components/global-styles/variations/variations-panel.js +0 -1
  235. package/build-module/components/global-styles/variations/variations-panel.js.map +1 -1
  236. package/build-module/components/global-styles-renderer/index.js +6 -8
  237. package/build-module/components/global-styles-renderer/index.js.map +1 -1
  238. package/build-module/components/global-styles-sidebar/default-sidebar.js +0 -1
  239. package/build-module/components/global-styles-sidebar/default-sidebar.js.map +1 -1
  240. package/build-module/components/global-styles-sidebar/index.js +44 -31
  241. package/build-module/components/global-styles-sidebar/index.js.map +1 -1
  242. package/build-module/components/layout/animation.js +1 -3
  243. package/build-module/components/layout/animation.js.map +1 -1
  244. package/build-module/components/layout/hooks.js +1 -9
  245. package/build-module/components/layout/hooks.js.map +1 -1
  246. package/build-module/components/layout/index.js +23 -35
  247. package/build-module/components/layout/index.js.map +1 -1
  248. package/build-module/components/layout/router.js +17 -139
  249. package/build-module/components/layout/router.js.map +1 -1
  250. package/build-module/components/page-patterns/delete-category-menu-item.js +4 -4
  251. package/build-module/components/page-patterns/delete-category-menu-item.js.map +1 -1
  252. package/build-module/components/page-patterns/fields.js +4 -8
  253. package/build-module/components/page-patterns/fields.js.map +1 -1
  254. package/build-module/components/page-patterns/use-pattern-settings.js +1 -1
  255. package/build-module/components/page-patterns/use-pattern-settings.js.map +1 -1
  256. package/build-module/components/page-templates/fields.js +1 -2
  257. package/build-module/components/page-templates/fields.js.map +1 -1
  258. package/build-module/components/page-templates/index.js +1 -2
  259. package/build-module/components/page-templates/index.js.map +1 -1
  260. package/build-module/components/pagination/index.js +1 -1
  261. package/build-module/components/pagination/index.js.map +1 -1
  262. package/build-module/components/post-edit/index.js +15 -5
  263. package/build-module/components/post-edit/index.js.map +1 -1
  264. package/build-module/components/post-fields/index.js +7 -246
  265. package/build-module/components/post-fields/index.js.map +1 -1
  266. package/build-module/components/post-list/index.js +12 -2
  267. package/build-module/components/post-list/index.js.map +1 -1
  268. package/build-module/components/posts-app/index.js +2 -2
  269. package/build-module/components/posts-app/index.js.map +1 -1
  270. package/build-module/components/posts-app/router.js +3 -3
  271. package/build-module/components/posts-app/router.js.map +1 -1
  272. package/build-module/components/resizable-frame/index.js +21 -10
  273. package/build-module/components/resizable-frame/index.js.map +1 -1
  274. package/build-module/components/revisions/index.js +1 -1
  275. package/build-module/components/revisions/index.js.map +1 -1
  276. package/build-module/components/save-keyboard-shortcut/index.js +71 -0
  277. package/build-module/components/save-keyboard-shortcut/index.js.map +1 -0
  278. package/build-module/components/save-panel/index.js +17 -6
  279. package/build-module/components/save-panel/index.js.map +1 -1
  280. package/build-module/components/sidebar/index.js +11 -3
  281. package/build-module/components/sidebar/index.js.map +1 -1
  282. package/build-module/components/sidebar-dataviews/default-views.js +2 -5
  283. package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
  284. package/build-module/components/sidebar-global-styles-wrapper/index.js +121 -0
  285. package/build-module/components/sidebar-global-styles-wrapper/index.js.map +1 -0
  286. package/build-module/components/sidebar-navigation-screen/index.js +2 -1
  287. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  288. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +34 -72
  289. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  290. package/build-module/components/sidebar-navigation-screen-main/index.js +43 -43
  291. package/build-module/components/sidebar-navigation-screen-main/index.js.map +1 -1
  292. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +2 -2
  293. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  294. package/build-module/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js +4 -4
  295. package/build-module/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js.map +1 -1
  296. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +8 -13
  297. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  298. package/build-module/components/site-editor-routes/home-edit.js +18 -0
  299. package/build-module/components/site-editor-routes/home-edit.js.map +1 -0
  300. package/build-module/components/site-editor-routes/home-view.js +17 -0
  301. package/build-module/components/site-editor-routes/home-view.js.map +1 -0
  302. package/build-module/components/site-editor-routes/index.js +42 -0
  303. package/build-module/components/site-editor-routes/index.js.map +1 -0
  304. package/build-module/components/site-editor-routes/navigation-edit.js +21 -0
  305. package/build-module/components/site-editor-routes/navigation-edit.js.map +1 -0
  306. package/build-module/components/site-editor-routes/navigation-item-edit.js +23 -0
  307. package/build-module/components/site-editor-routes/navigation-item-edit.js.map +1 -0
  308. package/build-module/components/site-editor-routes/navigation-item-view.js +22 -0
  309. package/build-module/components/site-editor-routes/navigation-item-view.js.map +1 -0
  310. package/build-module/components/site-editor-routes/navigation-view.js +20 -0
  311. package/build-module/components/site-editor-routes/navigation-view.js.map +1 -0
  312. package/build-module/components/site-editor-routes/pages-edit.js +35 -0
  313. package/build-module/components/site-editor-routes/pages-edit.js.map +1 -0
  314. package/build-module/components/site-editor-routes/pages-list-view-quick-edit.js +56 -0
  315. package/build-module/components/site-editor-routes/pages-list-view-quick-edit.js.map +1 -0
  316. package/build-module/components/site-editor-routes/pages-list-view.js +39 -0
  317. package/build-module/components/site-editor-routes/pages-list-view.js.map +1 -0
  318. package/build-module/components/site-editor-routes/pages-view-quick-edit.js +53 -0
  319. package/build-module/components/site-editor-routes/pages-view-quick-edit.js.map +1 -0
  320. package/build-module/components/site-editor-routes/pages-view.js +34 -0
  321. package/build-module/components/site-editor-routes/pages-view.js.map +1 -0
  322. package/build-module/components/site-editor-routes/patterns-edit.js +23 -0
  323. package/build-module/components/site-editor-routes/patterns-edit.js.map +1 -0
  324. package/build-module/components/site-editor-routes/patterns-view.js +21 -0
  325. package/build-module/components/site-editor-routes/patterns-view.js.map +1 -0
  326. package/build-module/components/site-editor-routes/styles-edit.js +25 -0
  327. package/build-module/components/site-editor-routes/styles-edit.js.map +1 -0
  328. package/build-module/components/site-editor-routes/styles-view.js +25 -0
  329. package/build-module/components/site-editor-routes/styles-view.js.map +1 -0
  330. package/build-module/components/site-editor-routes/templates-edit.js +23 -0
  331. package/build-module/components/site-editor-routes/templates-edit.js.map +1 -0
  332. package/build-module/components/site-editor-routes/templates-list-view.js +26 -0
  333. package/build-module/components/site-editor-routes/templates-list-view.js.map +1 -0
  334. package/build-module/components/site-editor-routes/templates-view.js +21 -0
  335. package/build-module/components/site-editor-routes/templates-view.js.map +1 -0
  336. package/build-module/components/site-hub/index.js +22 -8
  337. package/build-module/components/site-hub/index.js.map +1 -1
  338. package/build-module/components/style-book/color-examples.js +38 -0
  339. package/build-module/components/style-book/color-examples.js.map +1 -0
  340. package/build-module/components/style-book/constants.js +84 -12
  341. package/build-module/components/style-book/constants.js.map +1 -1
  342. package/build-module/components/style-book/duotone-examples.js +48 -0
  343. package/build-module/components/style-book/duotone-examples.js.map +1 -0
  344. package/build-module/components/style-book/examples.js +117 -3
  345. package/build-module/components/style-book/examples.js.map +1 -1
  346. package/build-module/components/style-book/index.js +164 -49
  347. package/build-module/components/style-book/index.js.map +1 -1
  348. package/build-module/components/style-book/types.js.map +1 -1
  349. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +38 -33
  350. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  351. package/build-module/components/welcome-guide/index.js +4 -2
  352. package/build-module/components/welcome-guide/index.js.map +1 -1
  353. package/build-module/components/welcome-guide/page.js +1 -9
  354. package/build-module/components/welcome-guide/page.js.map +1 -1
  355. package/build-module/components/welcome-guide/template.js +1 -11
  356. package/build-module/components/welcome-guide/template.js.map +1 -1
  357. package/build-module/hooks/commands/use-common-commands.js +61 -45
  358. package/build-module/hooks/commands/use-common-commands.js.map +1 -1
  359. package/build-module/hooks/commands/use-set-command-context.js +12 -15
  360. package/build-module/hooks/commands/use-set-command-context.js.map +1 -1
  361. package/build-module/index.js +1 -0
  362. package/build-module/index.js.map +1 -1
  363. package/build-module/posts.js +1 -0
  364. package/build-module/posts.js.map +1 -1
  365. package/build-module/store/private-actions.js +6 -58
  366. package/build-module/store/private-actions.js.map +1 -1
  367. package/build-module/store/private-selectors.js +3 -11
  368. package/build-module/store/private-selectors.js.map +1 -1
  369. package/build-module/store/reducer.js +9 -18
  370. package/build-module/store/reducer.js.map +1 -1
  371. package/build-style/posts-rtl.css +60 -14
  372. package/build-style/posts.css +60 -14
  373. package/build-style/style-rtl.css +232 -50
  374. package/build-style/style.css +232 -50
  375. package/package.json +42 -41
  376. package/src/components/add-new-post/index.js +1 -1
  377. package/src/components/add-new-template/index.js +1 -1
  378. package/src/components/add-new-template/utils.js +12 -9
  379. package/src/components/app/index.js +4 -4
  380. package/src/components/block-editor/use-editor-iframe-props.js +23 -20
  381. package/src/components/block-editor/use-site-editor-settings.js +12 -10
  382. package/src/components/editor/index.js +50 -17
  383. package/src/components/editor/use-adapt-editor-to-canvas.js +53 -0
  384. package/src/components/editor/use-editor-title.js +40 -16
  385. package/src/components/editor-canvas-container/style.scss +0 -1
  386. package/src/components/global-styles/font-sizes/font-size.js +11 -15
  387. package/src/components/global-styles/font-sizes/font-sizes-count.js +1 -4
  388. package/src/components/global-styles/font-sizes/font-sizes.js +7 -9
  389. package/src/components/global-styles/palette.js +21 -18
  390. package/src/components/global-styles/root-menu.js +3 -16
  391. package/src/components/global-styles/screen-block-list.js +0 -7
  392. package/src/components/global-styles/screen-css.js +1 -0
  393. package/src/components/global-styles/screen-revisions/revisions-buttons.js +30 -33
  394. package/src/components/global-styles/screen-revisions/style.scss +11 -17
  395. package/src/components/global-styles/screen-root.js +3 -12
  396. package/src/components/global-styles/screen-style-variations.js +4 -1
  397. package/src/components/global-styles/shadows-edit-panel.js +16 -15
  398. package/src/components/global-styles/shadows-panel.js +0 -4
  399. package/src/components/global-styles/typography-elements.js +3 -11
  400. package/src/components/global-styles/ui.js +53 -2
  401. package/src/components/global-styles/variations/variation.js +3 -3
  402. package/src/components/global-styles/variations/variations-panel.js +0 -1
  403. package/src/components/global-styles-renderer/index.js +4 -10
  404. package/src/components/global-styles-sidebar/default-sidebar.js +0 -1
  405. package/src/components/global-styles-sidebar/index.js +86 -65
  406. package/src/components/global-styles-sidebar/style.scss +6 -0
  407. package/src/components/layout/animation.js +0 -1
  408. package/src/components/layout/hooks.js +1 -7
  409. package/src/components/layout/index.js +22 -35
  410. package/src/components/layout/router.js +18 -133
  411. package/src/components/layout/style.scss +2 -2
  412. package/src/components/page-patterns/delete-category-menu-item.js +4 -4
  413. package/src/components/page-patterns/fields.js +6 -12
  414. package/src/components/page-patterns/style.scss +0 -5
  415. package/src/components/page-patterns/use-pattern-settings.js +1 -1
  416. package/src/components/page-templates/fields.js +2 -3
  417. package/src/components/page-templates/index.js +0 -1
  418. package/src/components/pagination/index.js +1 -1
  419. package/src/components/post-edit/index.js +45 -6
  420. package/src/components/post-edit/style.scss +7 -0
  421. package/src/components/post-fields/index.js +22 -323
  422. package/src/components/post-fields/style.scss +3 -0
  423. package/src/components/post-list/index.js +10 -4
  424. package/src/components/post-list/style.scss +30 -4
  425. package/src/components/posts-app/index.js +2 -2
  426. package/src/components/posts-app/router.js +3 -3
  427. package/src/components/resizable-frame/index.js +19 -10
  428. package/src/components/revisions/index.js +4 -1
  429. package/src/components/save-keyboard-shortcut/index.js +69 -0
  430. package/src/components/save-panel/index.js +30 -32
  431. package/src/components/sidebar/index.js +23 -7
  432. package/src/components/sidebar-dataviews/default-views.js +2 -5
  433. package/src/components/sidebar-global-styles-wrapper/index.js +150 -0
  434. package/src/components/sidebar-global-styles-wrapper/style.scss +35 -0
  435. package/src/components/sidebar-navigation-item/style.scss +2 -2
  436. package/src/components/sidebar-navigation-screen/index.js +2 -1
  437. package/src/components/sidebar-navigation-screen-global-styles/index.js +42 -99
  438. package/src/components/sidebar-navigation-screen-main/index.js +46 -45
  439. package/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +2 -2
  440. package/src/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js +4 -4
  441. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +11 -13
  442. package/src/components/sidebar-navigation-screen-navigation-menus/style.scss +1 -1
  443. package/src/components/site-editor-routes/README.md +20 -0
  444. package/src/components/site-editor-routes/home-edit.js +17 -0
  445. package/src/components/site-editor-routes/home-view.js +16 -0
  446. package/src/components/site-editor-routes/index.js +60 -0
  447. package/src/components/site-editor-routes/navigation-edit.js +22 -0
  448. package/src/components/site-editor-routes/navigation-item-edit.js +26 -0
  449. package/src/components/site-editor-routes/navigation-item-view.js +25 -0
  450. package/src/components/site-editor-routes/navigation-view.js +21 -0
  451. package/src/components/site-editor-routes/pages-edit.js +35 -0
  452. package/src/components/site-editor-routes/pages-list-view-quick-edit.js +56 -0
  453. package/src/components/site-editor-routes/pages-list-view.js +44 -0
  454. package/src/components/site-editor-routes/pages-view-quick-edit.js +53 -0
  455. package/src/components/site-editor-routes/pages-view.js +39 -0
  456. package/src/components/site-editor-routes/patterns-edit.js +24 -0
  457. package/src/components/site-editor-routes/patterns-view.js +22 -0
  458. package/src/components/site-editor-routes/styles-edit.js +26 -0
  459. package/src/components/site-editor-routes/styles-view.js +26 -0
  460. package/src/components/site-editor-routes/templates-edit.js +22 -0
  461. package/src/components/site-editor-routes/templates-list-view.js +28 -0
  462. package/src/components/site-editor-routes/templates-view.js +22 -0
  463. package/src/components/site-hub/index.js +35 -18
  464. package/src/components/site-hub/style.scss +4 -0
  465. package/src/components/site-icon/style.scss +16 -0
  466. package/src/components/style-book/color-examples.tsx +44 -0
  467. package/src/components/style-book/constants.ts +94 -13
  468. package/src/components/style-book/duotone-examples.tsx +53 -0
  469. package/src/components/style-book/examples.tsx +217 -0
  470. package/src/components/style-book/index.js +235 -60
  471. package/src/components/style-book/style.scss +12 -14
  472. package/src/components/style-book/test/categories.js +0 -5
  473. package/src/components/style-book/types.ts +34 -1
  474. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +65 -65
  475. package/src/components/welcome-guide/index.js +3 -3
  476. package/src/components/welcome-guide/page.js +1 -7
  477. package/src/components/welcome-guide/template.js +1 -8
  478. package/src/hooks/commands/use-common-commands.js +257 -230
  479. package/src/hooks/commands/use-set-command-context.js +7 -9
  480. package/src/index.js +1 -0
  481. package/src/posts.js +1 -0
  482. package/src/store/private-actions.js +7 -79
  483. package/src/store/private-selectors.js +4 -11
  484. package/src/store/reducer.js +10 -18
  485. package/src/style.scss +3 -1
  486. package/build/components/async/index.js +0 -51
  487. package/build/components/async/index.js.map +0 -1
  488. package/build/components/keyboard-shortcuts/global.js +0 -53
  489. package/build/components/keyboard-shortcuts/global.js.map +0 -1
  490. package/build/components/keyboard-shortcuts/register.js +0 -34
  491. package/build/components/keyboard-shortcuts/register.js.map +0 -1
  492. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +0 -69
  493. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +0 -1
  494. package/build/components/use-edited-entity-record/index.js +0 -60
  495. package/build/components/use-edited-entity-record/index.js.map +0 -1
  496. package/build/hooks/commands/use-edit-mode-commands.js +0 -175
  497. package/build/hooks/commands/use-edit-mode-commands.js.map +0 -1
  498. package/build-module/components/async/index.js +0 -44
  499. package/build-module/components/async/index.js.map +0 -1
  500. package/build-module/components/keyboard-shortcuts/global.js +0 -46
  501. package/build-module/components/keyboard-shortcuts/global.js.map +0 -1
  502. package/build-module/components/keyboard-shortcuts/register.js +0 -27
  503. package/build-module/components/keyboard-shortcuts/register.js.map +0 -1
  504. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +0 -62
  505. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +0 -1
  506. package/build-module/components/use-edited-entity-record/index.js +0 -53
  507. package/build-module/components/use-edited-entity-record/index.js.map +0 -1
  508. package/build-module/hooks/commands/use-edit-mode-commands.js +0 -167
  509. package/build-module/hooks/commands/use-edit-mode-commands.js.map +0 -1
  510. package/src/components/async/index.js +0 -43
  511. package/src/components/keyboard-shortcuts/global.js +0 -47
  512. package/src/components/keyboard-shortcuts/register.js +0 -27
  513. package/src/components/style-book/examples.ts +0 -63
  514. package/src/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +0 -73
  515. package/src/components/use-edited-entity-record/index.js +0 -58
  516. package/src/hooks/commands/use-edit-mode-commands.js +0 -172
@@ -12,7 +12,7 @@ import { privateApis as routerPrivateApis } from '@wordpress/router';
12
12
  */
13
13
  import useInitEditedEntityFromURL from '../sync-state-with-url/use-init-edited-entity-from-url';
14
14
  import Layout from '../layout';
15
- import useLayoutAreas from './router';
15
+ import useActiveRoute from './router';
16
16
  import { unlock } from '../../lock-unlock';
17
17
 
18
18
  const { RouterProvider } = unlock( routerPrivateApis );
@@ -21,7 +21,7 @@ const { GlobalStylesProvider } = unlock( editorPrivateApis );
21
21
  function PostsLayout() {
22
22
  // This ensures the edited entity id and type are initialized properly.
23
23
  useInitEditedEntityFromURL();
24
- const route = useLayoutAreas();
24
+ const route = useActiveRoute();
25
25
  return <Layout route={ route } />;
26
26
  }
27
27
 
@@ -17,7 +17,7 @@ import PostList from '../post-list';
17
17
 
18
18
  const { useLocation } = unlock( routerPrivateApis );
19
19
 
20
- export default function useLayoutAreas() {
20
+ export default function useActiveRoute() {
21
21
  const { params = {} } = useLocation();
22
22
  const { postType, layout, canvas } = params;
23
23
  const labels = useSelect(
@@ -31,7 +31,7 @@ export default function useLayoutAreas() {
31
31
  if ( [ 'post' ].includes( postType ) ) {
32
32
  const isListLayout = layout === 'list' || ! layout;
33
33
  return {
34
- key: 'posts-list',
34
+ name: 'posts-list',
35
35
  areas: {
36
36
  sidebar: (
37
37
  <SidebarNavigationScreen
@@ -59,7 +59,7 @@ export default function useLayoutAreas() {
59
59
 
60
60
  // Fallback shows the home page preview
61
61
  return {
62
- key: 'default',
62
+ name: 'default',
63
63
  areas: {
64
64
  sidebar: <SidebarNavigationScreenMain />,
65
65
  preview: <Editor isPostsList />,
@@ -13,14 +13,15 @@ import {
13
13
  __unstableMotion as motion,
14
14
  } from '@wordpress/components';
15
15
  import { useInstanceId, useReducedMotion } from '@wordpress/compose';
16
- import { useDispatch, useSelect } from '@wordpress/data';
17
16
  import { __, isRTL } from '@wordpress/i18n';
17
+ import { privateApis as routerPrivateApis } from '@wordpress/router';
18
18
 
19
19
  /**
20
20
  * Internal dependencies
21
21
  */
22
22
  import { unlock } from '../../lock-unlock';
23
- import { store as editSiteStore } from '../../store';
23
+
24
+ const { useLocation, useHistory } = unlock( routerPrivateApis );
24
25
 
25
26
  // Removes the inline styles in the drag handles.
26
27
  const HANDLE_STYLES_OVERRIDE = {
@@ -86,6 +87,9 @@ function ResizableFrame( {
86
87
  defaultSize,
87
88
  innerContentStyle,
88
89
  } ) {
90
+ const history = useHistory();
91
+ const { params } = useLocation();
92
+ const { canvas = 'view' } = params;
89
93
  const disableMotion = useReducedMotion();
90
94
  const [ frameSize, setFrameSize ] = useState( INITIAL_FRAME_SIZE );
91
95
  // The width of the resizable frame when a new resize gesture starts.
@@ -93,11 +97,7 @@ function ResizableFrame( {
93
97
  const [ isResizing, setIsResizing ] = useState( false );
94
98
  const [ shouldShowHandle, setShouldShowHandle ] = useState( false );
95
99
  const [ resizeRatio, setResizeRatio ] = useState( 1 );
96
- const canvasMode = useSelect(
97
- ( select ) => unlock( select( editSiteStore ) ).getCanvasMode(),
98
- []
99
- );
100
- const { setCanvasMode } = unlock( useDispatch( editSiteStore ) );
100
+
101
101
  const FRAME_TRANSITION = { type: 'tween', duration: isResizing ? 0 : 0.5 };
102
102
  const frameRef = useRef( null );
103
103
  const resizableHandleHelpId = useInstanceId(
@@ -158,7 +158,16 @@ function ResizableFrame( {
158
158
  setFrameSize( INITIAL_FRAME_SIZE );
159
159
  } else {
160
160
  // Trigger full screen if the frame is resized far enough to the left.
161
- setCanvasMode( 'edit' );
161
+ history.push(
162
+ {
163
+ ...params,
164
+ canvas: 'edit',
165
+ },
166
+ undefined,
167
+ {
168
+ transition: 'canvas-mode-edit-transition',
169
+ }
170
+ );
162
171
  }
163
172
  };
164
173
 
@@ -237,7 +246,7 @@ function ResizableFrame( {
237
246
  }
238
247
  } }
239
248
  whileHover={
240
- canvasMode === 'view'
249
+ canvas === 'view'
241
250
  ? {
242
251
  scale: 1.005,
243
252
  transition: {
@@ -275,7 +284,7 @@ function ResizableFrame( {
275
284
  onMouseOver={ () => setShouldShowHandle( true ) }
276
285
  onMouseOut={ () => setShouldShowHandle( false ) }
277
286
  handleComponent={ {
278
- [ isRTL() ? 'right' : 'left' ]: canvasMode === 'view' && (
287
+ [ isRTL() ? 'right' : 'left' ]: canvas === 'view' && (
279
288
  <>
280
289
  <Tooltip text={ __( 'Drag to resize' ) }>
281
290
  { /* Disable reason: role="separator" does in fact support aria-valuenow */ }
@@ -53,7 +53,10 @@ function Revisions( { userConfig, blocks } ) {
53
53
  []
54
54
  );
55
55
  const settings = useMemo(
56
- () => ( { ...originalSettings, __unstableIsPreviewMode: true } ),
56
+ () => ( {
57
+ ...originalSettings,
58
+ isPreviewMode: true,
59
+ } ),
57
60
  [ originalSettings ]
58
61
  );
59
62
 
@@ -0,0 +1,69 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { useEffect } from '@wordpress/element';
5
+ import {
6
+ useShortcut,
7
+ store as keyboardShortcutsStore,
8
+ } from '@wordpress/keyboard-shortcuts';
9
+ import { __ } from '@wordpress/i18n';
10
+ import { useDispatch, useSelect } from '@wordpress/data';
11
+ import { store as coreStore } from '@wordpress/core-data';
12
+ import { store as editorStore } from '@wordpress/editor';
13
+
14
+ /**
15
+ * Internal dependencies
16
+ */
17
+ import { store as editSiteStore } from '../../store';
18
+
19
+ const shortcutName = 'core/edit-site/save';
20
+
21
+ /**
22
+ * Register the save keyboard shortcut in view mode.
23
+ *
24
+ * @return {null} Returns null.
25
+ */
26
+ export default function SaveKeyboardShortcut() {
27
+ const { __experimentalGetDirtyEntityRecords, isSavingEntityRecord } =
28
+ useSelect( coreStore );
29
+ const { hasNonPostEntityChanges, isPostSavingLocked } =
30
+ useSelect( editorStore );
31
+ const { savePost } = useDispatch( editorStore );
32
+ const { setIsSaveViewOpened } = useDispatch( editSiteStore );
33
+ const { registerShortcut, unregisterShortcut } = useDispatch(
34
+ keyboardShortcutsStore
35
+ );
36
+ useEffect( () => {
37
+ registerShortcut( {
38
+ name: shortcutName,
39
+ category: 'global',
40
+ description: __( 'Save your changes.' ),
41
+ keyCombination: {
42
+ modifier: 'primary',
43
+ character: 's',
44
+ },
45
+ } );
46
+ return () => {
47
+ unregisterShortcut( shortcutName );
48
+ };
49
+ }, [ registerShortcut, unregisterShortcut ] );
50
+
51
+ useShortcut( 'core/edit-site/save', ( event ) => {
52
+ event.preventDefault();
53
+ const dirtyEntityRecords = __experimentalGetDirtyEntityRecords();
54
+ const hasDirtyEntities = !! dirtyEntityRecords.length;
55
+ const isSaving = dirtyEntityRecords.some( ( record ) =>
56
+ isSavingEntityRecord( record.kind, record.name, record.key )
57
+ );
58
+ if ( ! hasDirtyEntities || isSaving ) {
59
+ return;
60
+ }
61
+ if ( hasNonPostEntityChanges() ) {
62
+ setIsSaveViewOpened( true );
63
+ } else if ( ! isPostSavingLocked() ) {
64
+ savePost();
65
+ }
66
+ } );
67
+
68
+ return null;
69
+ }
@@ -15,6 +15,8 @@ import {
15
15
  import { useDispatch, useSelect } from '@wordpress/data';
16
16
  import { __, sprintf } from '@wordpress/i18n';
17
17
  import { store as coreStore } from '@wordpress/core-data';
18
+ import { privateApis as routerPrivateApis } from '@wordpress/router';
19
+ import { useEffect } from '@wordpress/element';
18
20
 
19
21
  /**
20
22
  * Internal dependencies
@@ -27,6 +29,7 @@ import { isPreviewingTheme } from '../../utils/is-previewing-theme';
27
29
 
28
30
  const { EntitiesSavedStatesExtensible, NavigableRegion } =
29
31
  unlock( privateApis );
32
+ const { useLocation } = unlock( routerPrivateApis );
30
33
 
31
34
  const EntitiesSavedStatesForPreview = ( { onClose } ) => {
32
35
  const isDirtyProps = useEntitiesSavedStatesIsDirty();
@@ -47,7 +50,7 @@ const EntitiesSavedStatesForPreview = ( { onClose } ) => {
47
50
  const additionalPrompt = (
48
51
  <p>
49
52
  { sprintf(
50
- /* translators: %1$s: The name of active theme, %2$s: The name of theme to be activated. */
53
+ /* translators: 1: The name of active theme, 2: The name of theme to be activated. */
51
54
  __(
52
55
  'Saving your changes will change your active theme from %1$s to %2$s.'
53
56
  ),
@@ -87,41 +90,36 @@ const _EntitiesSavedStates = ( { onClose, renderDialog = undefined } ) => {
87
90
  };
88
91
 
89
92
  export default function SavePanel() {
90
- const { isSaveViewOpen, canvasMode, isDirty, isSaving } = useSelect(
91
- ( select ) => {
92
- const {
93
- __experimentalGetDirtyEntityRecords,
94
- isSavingEntityRecord,
95
- isResolving,
96
- } = select( coreStore );
97
- const dirtyEntityRecords = __experimentalGetDirtyEntityRecords();
98
- const isActivatingTheme = isResolving( 'activateTheme' );
99
- const { isSaveViewOpened, getCanvasMode } = unlock(
100
- select( editSiteStore )
101
- );
93
+ const { params } = useLocation();
94
+ const { canvas = 'view' } = params;
95
+ const { isSaveViewOpen, isDirty, isSaving } = useSelect( ( select ) => {
96
+ const {
97
+ __experimentalGetDirtyEntityRecords,
98
+ isSavingEntityRecord,
99
+ isResolving,
100
+ } = select( coreStore );
101
+ const dirtyEntityRecords = __experimentalGetDirtyEntityRecords();
102
+ const isActivatingTheme = isResolving( 'activateTheme' );
103
+ const { isSaveViewOpened } = unlock( select( editSiteStore ) );
102
104
 
103
- // The currently selected entity to display.
104
- // Typically template or template part in the site editor.
105
- return {
106
- isSaveViewOpen: isSaveViewOpened(),
107
- canvasMode: getCanvasMode(),
108
- isDirty: dirtyEntityRecords.length > 0,
109
- isSaving:
110
- dirtyEntityRecords.some( ( record ) =>
111
- isSavingEntityRecord(
112
- record.kind,
113
- record.name,
114
- record.key
115
- )
116
- ) || isActivatingTheme,
117
- };
118
- },
119
- []
120
- );
105
+ // The currently selected entity to display.
106
+ // Typically template or template part in the site editor.
107
+ return {
108
+ isSaveViewOpen: isSaveViewOpened(),
109
+ isDirty: dirtyEntityRecords.length > 0,
110
+ isSaving:
111
+ dirtyEntityRecords.some( ( record ) =>
112
+ isSavingEntityRecord( record.kind, record.name, record.key )
113
+ ) || isActivatingTheme,
114
+ };
115
+ }, [] );
121
116
  const { setIsSaveViewOpened } = useDispatch( editSiteStore );
122
117
  const onClose = () => setIsSaveViewOpened( false );
118
+ useEffect( () => {
119
+ setIsSaveViewOpened( false );
120
+ }, [ canvas, setIsSaveViewOpened ] );
123
121
 
124
- if ( canvasMode === 'view' ) {
122
+ if ( canvas === 'view' ) {
125
123
  return isSaveViewOpen ? (
126
124
  <Modal
127
125
  className="edit-site-save-panel__modal"
@@ -55,7 +55,7 @@ function createNavState() {
55
55
  };
56
56
  }
57
57
 
58
- function SidebarContentWrapper( { children } ) {
58
+ function SidebarContentWrapper( { children, shouldAnimate } ) {
59
59
  const navState = useContext( SidebarNavigationContext );
60
60
  const wrapperRef = useRef();
61
61
  const [ navAnimation, setNavAnimation ] = useState( null );
@@ -66,10 +66,19 @@ function SidebarContentWrapper( { children } ) {
66
66
  setNavAnimation( direction );
67
67
  }, [ navState ] );
68
68
 
69
- const wrapperCls = clsx( 'edit-site-sidebar__screen-wrapper', {
70
- 'slide-from-left': navAnimation === 'back',
71
- 'slide-from-right': navAnimation === 'forward',
72
- } );
69
+ const wrapperCls = clsx(
70
+ 'edit-site-sidebar__screen-wrapper',
71
+ /*
72
+ * Some panes do not have sub-panes and therefore
73
+ * should not animate when clicked on.
74
+ */
75
+ shouldAnimate
76
+ ? {
77
+ 'slide-from-left': navAnimation === 'back',
78
+ 'slide-from-right': navAnimation === 'forward',
79
+ }
80
+ : {}
81
+ );
73
82
 
74
83
  return (
75
84
  <div ref={ wrapperRef } className={ wrapperCls }>
@@ -78,13 +87,20 @@ function SidebarContentWrapper( { children } ) {
78
87
  );
79
88
  }
80
89
 
81
- export default function SidebarContent( { routeKey, children } ) {
90
+ export default function SidebarContent( {
91
+ routeKey,
92
+ shouldAnimate,
93
+ children,
94
+ } ) {
82
95
  const [ navState ] = useState( createNavState );
83
96
 
84
97
  return (
85
98
  <SidebarNavigationContext.Provider value={ navState }>
86
99
  <div className="edit-site-sidebar__content">
87
- <SidebarContentWrapper key={ routeKey }>
100
+ <SidebarContentWrapper
101
+ shouldAnimate={ shouldAnimate }
102
+ key={ routeKey }
103
+ >
88
104
  { children }
89
105
  </SidebarContentWrapper>
90
106
  </div>
@@ -31,9 +31,6 @@ export const defaultLayouts = {
31
31
  layout: {
32
32
  primaryField: 'title',
33
33
  styles: {
34
- 'featured-image': {
35
- width: '1%',
36
- },
37
34
  title: {
38
35
  maxWidth: 300,
39
36
  },
@@ -42,14 +39,14 @@ export const defaultLayouts = {
42
39
  },
43
40
  [ LAYOUT_GRID ]: {
44
41
  layout: {
45
- mediaField: 'featured-image',
42
+ mediaField: 'featured_media',
46
43
  primaryField: 'title',
47
44
  },
48
45
  },
49
46
  [ LAYOUT_LIST ]: {
50
47
  layout: {
51
48
  primaryField: 'title',
52
- mediaField: 'featured-image',
49
+ mediaField: 'featured_media',
53
50
  },
54
51
  },
55
52
  };
@@ -0,0 +1,150 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { __ } from '@wordpress/i18n';
5
+ import { useMemo, useState } from '@wordpress/element';
6
+ import { privateApis as routerPrivateApis } from '@wordpress/router';
7
+ import { useViewportMatch } from '@wordpress/compose';
8
+ import {
9
+ Button,
10
+ privateApis as componentsPrivateApis,
11
+ } from '@wordpress/components';
12
+
13
+ /**
14
+ * Internal dependencies
15
+ */
16
+ import GlobalStylesUI from '../global-styles/ui';
17
+ import Page from '../page';
18
+ import { unlock } from '../../lock-unlock';
19
+ import StyleBook from '../style-book';
20
+ import { STYLE_BOOK_COLOR_GROUPS } from '../style-book/constants';
21
+
22
+ const { useLocation, useHistory } = unlock( routerPrivateApis );
23
+ const { Menu } = unlock( componentsPrivateApis );
24
+ const GLOBAL_STYLES_PATH_PREFIX = '/wp_global_styles';
25
+
26
+ const GlobalStylesPageActions = ( {
27
+ isStyleBookOpened,
28
+ setIsStyleBookOpened,
29
+ } ) => {
30
+ return (
31
+ <Menu
32
+ trigger={
33
+ <Button __next40pxDefaultSize variant="tertiary" size="compact">
34
+ { __( 'Preview' ) }
35
+ </Button>
36
+ }
37
+ >
38
+ <Menu.RadioItem
39
+ value
40
+ checked={ isStyleBookOpened }
41
+ name="styles-preview-actions"
42
+ onChange={ () => setIsStyleBookOpened( true ) }
43
+ defaultChecked
44
+ >
45
+ <Menu.ItemLabel>{ __( 'Style book' ) }</Menu.ItemLabel>
46
+ <Menu.ItemHelpText>
47
+ { __( 'Preview blocks and styles.' ) }
48
+ </Menu.ItemHelpText>
49
+ </Menu.RadioItem>
50
+ <Menu.RadioItem
51
+ value={ false }
52
+ checked={ ! isStyleBookOpened }
53
+ name="styles-preview-actions"
54
+ onChange={ () => setIsStyleBookOpened( false ) }
55
+ >
56
+ <Menu.ItemLabel>{ __( 'Site' ) }</Menu.ItemLabel>
57
+ <Menu.ItemHelpText>
58
+ { __( 'Preview your site.' ) }
59
+ </Menu.ItemHelpText>
60
+ </Menu.RadioItem>
61
+ </Menu>
62
+ );
63
+ };
64
+
65
+ export default function GlobalStylesUIWrapper() {
66
+ const { params } = useLocation();
67
+ const history = useHistory();
68
+ const { canvas = 'view' } = params;
69
+ const [ isStyleBookOpened, setIsStyleBookOpened ] = useState( false );
70
+ const isMobileViewport = useViewportMatch( 'medium', '<' );
71
+ const pathWithPrefix = params.path;
72
+ const [ path, onPathChange ] = useMemo( () => {
73
+ const processedPath = pathWithPrefix.substring(
74
+ GLOBAL_STYLES_PATH_PREFIX.length
75
+ );
76
+ return [
77
+ processedPath ? processedPath : '/',
78
+ ( newPath ) => {
79
+ history.push( {
80
+ path:
81
+ ! newPath || newPath === '/'
82
+ ? GLOBAL_STYLES_PATH_PREFIX
83
+ : `${ GLOBAL_STYLES_PATH_PREFIX }${ newPath }`,
84
+ } );
85
+ },
86
+ ];
87
+ }, [ pathWithPrefix, history ] );
88
+
89
+ return (
90
+ <>
91
+ <Page
92
+ actions={
93
+ ! isMobileViewport ? (
94
+ <GlobalStylesPageActions
95
+ isStyleBookOpened={ isStyleBookOpened }
96
+ setIsStyleBookOpened={ setIsStyleBookOpened }
97
+ />
98
+ ) : null
99
+ }
100
+ className="edit-site-styles"
101
+ title={ __( 'Styles' ) }
102
+ >
103
+ <GlobalStylesUI path={ path } onPathChange={ onPathChange } />
104
+ </Page>
105
+ { canvas === 'view' && isStyleBookOpened && (
106
+ <StyleBook
107
+ enableResizing={ false }
108
+ showCloseButton={ false }
109
+ showTabs={ false }
110
+ isSelected={ ( blockName ) =>
111
+ // Match '/blocks/core%2Fbutton' and
112
+ // '/blocks/core%2Fbutton/typography', but not
113
+ // '/blocks/core%2Fbuttons'.
114
+ path ===
115
+ `/wp_global_styles/blocks/${ encodeURIComponent(
116
+ blockName
117
+ ) }` ||
118
+ path.startsWith(
119
+ `/wp_global_styles/blocks/${ encodeURIComponent(
120
+ blockName
121
+ ) }/`
122
+ )
123
+ }
124
+ path={ path }
125
+ onSelect={ ( blockName ) => {
126
+ if (
127
+ STYLE_BOOK_COLOR_GROUPS.find(
128
+ ( group ) => group.slug === blockName
129
+ )
130
+ ) {
131
+ // Go to color palettes Global Styles.
132
+ onPathChange( '/colors/palette' );
133
+ return;
134
+ }
135
+ if ( blockName === 'typography' ) {
136
+ // Go to typography Global Styles.
137
+ onPathChange( '/typography' );
138
+ return;
139
+ }
140
+
141
+ // Now go to the selected block.
142
+ onPathChange(
143
+ `/blocks/${ encodeURIComponent( blockName ) }`
144
+ );
145
+ } }
146
+ />
147
+ ) }
148
+ </>
149
+ );
150
+ }
@@ -0,0 +1,35 @@
1
+ .edit-site-styles .edit-site-page-content {
2
+ .edit-site-global-styles-screen-root {
3
+ box-shadow: none;
4
+ & > div > hr {
5
+ display: none;
6
+ }
7
+ }
8
+ .edit-site-global-styles-sidebar__navigator-provider {
9
+ .components-tools-panel {
10
+ border-top: none;
11
+ }
12
+ overflow-y: auto;
13
+ padding-left: 0;
14
+ padding-right: 0;
15
+
16
+ .edit-site-global-styles-sidebar__navigator-screen {
17
+ padding-top: $grid-unit-15;
18
+ padding-left: $grid-unit-15;
19
+ padding-right: $grid-unit-15;
20
+ padding-bottom: $grid-unit-15;
21
+ outline: none;
22
+ }
23
+ }
24
+ .edit-site-page-header {
25
+ padding-left: $grid-unit-60;
26
+ padding-right: $grid-unit-60;
27
+ @container (max-width: 430px) {
28
+ padding-left: $grid-unit-30;
29
+ padding-right: $grid-unit-30;
30
+ }
31
+ }
32
+ .edit-site-sidebar-button {
33
+ color: $gray-900;
34
+ }
35
+ }
@@ -7,7 +7,7 @@
7
7
 
8
8
  &:hover,
9
9
  &:focus,
10
- &[aria-current] {
10
+ &[aria-current="true"] {
11
11
  color: $gray-200;
12
12
  background: $gray-800;
13
13
 
@@ -16,7 +16,7 @@
16
16
  }
17
17
  }
18
18
 
19
- &[aria-current] {
19
+ &[aria-current="true"] {
20
20
  background: var(--wp-admin-theme-color);
21
21
  color: $white;
22
22
  }
@@ -109,7 +109,8 @@ export default function SidebarNavigationScreen( {
109
109
  { ! isPreviewingTheme()
110
110
  ? title
111
111
  : sprintf(
112
- 'Previewing %1$s: %2$s',
112
+ /* translators: 1: theme name. 2: title */
113
+ __( 'Previewing %1$s: %2$s' ),
113
114
  previewingThemeName,
114
115
  title
115
116
  ) }