@wordpress/edit-site 5.26.0 → 5.27.1

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 (340) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/actions/index.js +139 -36
  3. package/build/components/actions/index.js.map +1 -1
  4. package/build/components/editor-canvas-container/index.js +1 -1
  5. package/build/components/editor-canvas-container/index.js.map +1 -1
  6. package/build/components/global-styles/font-families.js +3 -2
  7. package/build/components/global-styles/font-families.js.map +1 -1
  8. package/build/components/global-styles/font-family-item.js +3 -4
  9. package/build/components/global-styles/font-family-item.js.map +1 -1
  10. package/build/components/global-styles/font-library-modal/context.js +80 -41
  11. package/build/components/global-styles/font-library-modal/context.js.map +1 -1
  12. package/build/components/global-styles/font-library-modal/font-collection.js +49 -22
  13. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  14. package/build/components/global-styles/font-library-modal/fonts-grid.js +4 -1
  15. package/build/components/global-styles/font-library-modal/fonts-grid.js.map +1 -1
  16. package/build/components/global-styles/font-library-modal/index.js +4 -4
  17. package/build/components/global-styles/font-library-modal/index.js.map +1 -1
  18. package/build/components/global-styles/font-library-modal/installed-fonts.js +16 -8
  19. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  20. package/build/components/global-styles/font-library-modal/library-font-card.js +1 -1
  21. package/build/components/global-styles/font-library-modal/library-font-card.js.map +1 -1
  22. package/build/components/global-styles/font-library-modal/library-font-variant.js +2 -2
  23. package/build/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  24. package/build/components/global-styles/font-library-modal/local-fonts.js +13 -4
  25. package/build/components/global-styles/font-library-modal/local-fonts.js.map +1 -1
  26. package/build/components/global-styles/font-library-modal/resolvers.js +49 -20
  27. package/build/components/global-styles/font-library-modal/resolvers.js.map +1 -1
  28. package/build/components/global-styles/font-library-modal/tab-panel-layout.js +6 -2
  29. package/build/components/global-styles/font-library-modal/tab-panel-layout.js.map +1 -1
  30. package/build/components/global-styles/font-library-modal/utils/filter-fonts.js +17 -2
  31. package/build/components/global-styles/font-library-modal/utils/filter-fonts.js.map +1 -1
  32. package/build/components/global-styles/font-library-modal/utils/index.js +103 -17
  33. package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  34. package/build/components/global-styles/font-library-modal/utils/preview-styles.js +4 -3
  35. package/build/components/global-styles/font-library-modal/utils/preview-styles.js.map +1 -1
  36. package/build/components/global-styles/screen-block.js +10 -0
  37. package/build/components/global-styles/screen-block.js.map +1 -1
  38. package/build/components/global-styles/screen-typography.js +4 -1
  39. package/build/components/global-styles/screen-typography.js.map +1 -1
  40. package/build/components/layout/hooks.js +6 -5
  41. package/build/components/layout/hooks.js.map +1 -1
  42. package/build/components/layout/index.js +19 -28
  43. package/build/components/layout/index.js.map +1 -1
  44. package/build/components/layout/router.js +135 -0
  45. package/build/components/layout/router.js.map +1 -0
  46. package/build/components/page-pages/index.js +92 -69
  47. package/build/components/page-pages/index.js.map +1 -1
  48. package/build/components/page-patterns/dataviews-pattern-actions.js +11 -6
  49. package/build/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
  50. package/build/components/page-patterns/index.js +295 -15
  51. package/build/components/page-patterns/index.js.map +1 -1
  52. package/build/components/{page-templates/template-actions.js → page-templates-template-parts/actions.js} +51 -23
  53. package/build/components/page-templates-template-parts/actions.js.map +1 -0
  54. package/build/components/page-templates-template-parts/add-new-template-part.js.map +1 -0
  55. package/build/components/page-templates-template-parts/index.js +395 -0
  56. package/build/components/page-templates-template-parts/index.js.map +1 -0
  57. package/build/components/preferences-modal/index.js +9 -134
  58. package/build/components/preferences-modal/index.js.map +1 -1
  59. package/build/components/revisions/index.js +1 -1
  60. package/build/components/revisions/index.js.map +1 -1
  61. package/build/components/save-button/index.js +4 -2
  62. package/build/components/save-button/index.js.map +1 -1
  63. package/build/components/save-panel/index.js +6 -5
  64. package/build/components/save-panel/index.js.map +1 -1
  65. package/build/components/sidebar/index.js +3 -1
  66. package/build/components/sidebar/index.js.map +1 -1
  67. package/build/components/sidebar-dataviews/dataview-item.js +3 -1
  68. package/build/components/sidebar-dataviews/dataview-item.js.map +1 -1
  69. package/build/components/sidebar-dataviews/default-views.js +4 -2
  70. package/build/components/sidebar-dataviews/default-views.js.map +1 -1
  71. package/build/components/sidebar-dataviews/index.js +2 -2
  72. package/build/components/sidebar-dataviews/index.js.map +1 -1
  73. package/build/components/sidebar-navigation-screen/index.js +8 -7
  74. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  75. package/build/components/sidebar-navigation-screen-pages/index.js +2 -10
  76. package/build/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  77. package/build/components/sidebar-navigation-screen-pages-dataviews/index.js +26 -3
  78. package/build/components/sidebar-navigation-screen-pages-dataviews/index.js.map +1 -1
  79. package/build/components/sidebar-navigation-screen-templates/index.js +63 -8
  80. package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  81. package/build/components/sidebar-navigation-screen-templates-browse/content.js +76 -0
  82. package/build/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -0
  83. package/build/components/sidebar-navigation-screen-templates-browse/index.js +9 -2
  84. package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  85. package/build/components/site-hub/index.js +3 -1
  86. package/build/components/site-hub/index.js.map +1 -1
  87. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +47 -12
  88. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  89. package/build/components/sync-state-with-url/use-sync-path-with-url.js +25 -2
  90. package/build/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
  91. package/build/hooks/commands/use-edit-mode-commands.js +33 -5
  92. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  93. package/build/hooks/push-changes-to-global-styles/index.js +13 -6
  94. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  95. package/build/hooks/template-part-edit.js +7 -6
  96. package/build/hooks/template-part-edit.js.map +1 -1
  97. package/build/index.js +1 -1
  98. package/build/index.js.map +1 -1
  99. package/build/store/actions.js +11 -29
  100. package/build/store/actions.js.map +1 -1
  101. package/build/store/private-actions.js +85 -1
  102. package/build/store/private-actions.js.map +1 -1
  103. package/build/store/selectors.js +2 -2
  104. package/build/store/selectors.js.map +1 -1
  105. package/build/utils/get-is-list-page.js +1 -1
  106. package/build/utils/get-is-list-page.js.map +1 -1
  107. package/build/utils/use-actual-current-theme.js +32 -0
  108. package/build/utils/use-actual-current-theme.js.map +1 -0
  109. package/build-module/components/actions/index.js +139 -36
  110. package/build-module/components/actions/index.js.map +1 -1
  111. package/build-module/components/editor-canvas-container/index.js +1 -1
  112. package/build-module/components/editor-canvas-container/index.js.map +1 -1
  113. package/build-module/components/global-styles/font-families.js +3 -2
  114. package/build-module/components/global-styles/font-families.js.map +1 -1
  115. package/build-module/components/global-styles/font-family-item.js +4 -5
  116. package/build-module/components/global-styles/font-family-item.js.map +1 -1
  117. package/build-module/components/global-styles/font-library-modal/context.js +82 -42
  118. package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
  119. package/build-module/components/global-styles/font-library-modal/font-collection.js +49 -22
  120. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  121. package/build-module/components/global-styles/font-library-modal/fonts-grid.js +4 -1
  122. package/build-module/components/global-styles/font-library-modal/fonts-grid.js.map +1 -1
  123. package/build-module/components/global-styles/font-library-modal/index.js +4 -4
  124. package/build-module/components/global-styles/font-library-modal/index.js.map +1 -1
  125. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +16 -8
  126. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  127. package/build-module/components/global-styles/font-library-modal/library-font-card.js +1 -1
  128. package/build-module/components/global-styles/font-library-modal/library-font-card.js.map +1 -1
  129. package/build-module/components/global-styles/font-library-modal/library-font-variant.js +2 -2
  130. package/build-module/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  131. package/build-module/components/global-styles/font-library-modal/local-fonts.js +13 -4
  132. package/build-module/components/global-styles/font-library-modal/local-fonts.js.map +1 -1
  133. package/build-module/components/global-styles/font-library-modal/resolvers.js +45 -18
  134. package/build-module/components/global-styles/font-library-modal/resolvers.js.map +1 -1
  135. package/build-module/components/global-styles/font-library-modal/tab-panel-layout.js +6 -2
  136. package/build-module/components/global-styles/font-library-modal/tab-panel-layout.js.map +1 -1
  137. package/build-module/components/global-styles/font-library-modal/utils/filter-fonts.js +17 -2
  138. package/build-module/components/global-styles/font-library-modal/utils/filter-fonts.js.map +1 -1
  139. package/build-module/components/global-styles/font-library-modal/utils/index.js +99 -16
  140. package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  141. package/build-module/components/global-styles/font-library-modal/utils/preview-styles.js +4 -3
  142. package/build-module/components/global-styles/font-library-modal/utils/preview-styles.js.map +1 -1
  143. package/build-module/components/global-styles/screen-block.js +10 -0
  144. package/build-module/components/global-styles/screen-block.js.map +1 -1
  145. package/build-module/components/global-styles/screen-typography.js +4 -1
  146. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  147. package/build-module/components/layout/hooks.js +6 -5
  148. package/build-module/components/layout/hooks.js.map +1 -1
  149. package/build-module/components/layout/index.js +19 -28
  150. package/build-module/components/layout/index.js.map +1 -1
  151. package/build-module/components/layout/router.js +127 -0
  152. package/build-module/components/layout/router.js.map +1 -0
  153. package/build-module/components/page-pages/index.js +91 -70
  154. package/build-module/components/page-pages/index.js.map +1 -1
  155. package/build-module/components/page-patterns/dataviews-pattern-actions.js +11 -6
  156. package/build-module/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
  157. package/build-module/components/page-patterns/index.js +296 -16
  158. package/build-module/components/page-patterns/index.js.map +1 -1
  159. package/build-module/components/{page-templates/template-actions.js → page-templates-template-parts/actions.js} +52 -24
  160. package/build-module/components/page-templates-template-parts/actions.js.map +1 -0
  161. package/build-module/components/page-templates-template-parts/add-new-template-part.js.map +1 -0
  162. package/build-module/components/page-templates-template-parts/index.js +385 -0
  163. package/build-module/components/page-templates-template-parts/index.js.map +1 -0
  164. package/build-module/components/preferences-modal/index.js +12 -136
  165. package/build-module/components/preferences-modal/index.js.map +1 -1
  166. package/build-module/components/revisions/index.js +1 -1
  167. package/build-module/components/revisions/index.js.map +1 -1
  168. package/build-module/components/save-button/index.js +4 -2
  169. package/build-module/components/save-button/index.js.map +1 -1
  170. package/build-module/components/save-panel/index.js +7 -6
  171. package/build-module/components/save-panel/index.js.map +1 -1
  172. package/build-module/components/sidebar/index.js +3 -1
  173. package/build-module/components/sidebar/index.js.map +1 -1
  174. package/build-module/components/sidebar-dataviews/dataview-item.js +3 -1
  175. package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -1
  176. package/build-module/components/sidebar-dataviews/default-views.js +4 -2
  177. package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
  178. package/build-module/components/sidebar-dataviews/index.js +2 -2
  179. package/build-module/components/sidebar-dataviews/index.js.map +1 -1
  180. package/build-module/components/sidebar-navigation-screen/index.js +8 -7
  181. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  182. package/build-module/components/sidebar-navigation-screen-pages/index.js +2 -10
  183. package/build-module/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  184. package/build-module/components/sidebar-navigation-screen-pages-dataviews/index.js +27 -4
  185. package/build-module/components/sidebar-navigation-screen-pages-dataviews/index.js.map +1 -1
  186. package/build-module/components/sidebar-navigation-screen-templates/index.js +64 -9
  187. package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  188. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js +68 -0
  189. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -0
  190. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +9 -2
  191. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  192. package/build-module/components/site-hub/index.js +3 -1
  193. package/build-module/components/site-hub/index.js.map +1 -1
  194. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +47 -11
  195. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  196. package/build-module/components/sync-state-with-url/use-sync-path-with-url.js +25 -2
  197. package/build-module/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
  198. package/build-module/hooks/commands/use-edit-mode-commands.js +33 -5
  199. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  200. package/build-module/hooks/push-changes-to-global-styles/index.js +13 -6
  201. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  202. package/build-module/hooks/template-part-edit.js +7 -6
  203. package/build-module/hooks/template-part-edit.js.map +1 -1
  204. package/build-module/index.js +1 -1
  205. package/build-module/index.js.map +1 -1
  206. package/build-module/store/actions.js +13 -30
  207. package/build-module/store/actions.js.map +1 -1
  208. package/build-module/store/private-actions.js +83 -0
  209. package/build-module/store/private-actions.js.map +1 -1
  210. package/build-module/store/selectors.js +2 -2
  211. package/build-module/store/selectors.js.map +1 -1
  212. package/build-module/utils/get-is-list-page.js +1 -1
  213. package/build-module/utils/get-is-list-page.js.map +1 -1
  214. package/build-module/utils/use-actual-current-theme.js +24 -0
  215. package/build-module/utils/use-actual-current-theme.js.map +1 -0
  216. package/build-style/style-rtl.css +316 -215
  217. package/build-style/style.css +316 -215
  218. package/package.json +42 -42
  219. package/src/components/actions/index.js +236 -84
  220. package/src/components/editor-canvas-container/index.js +1 -1
  221. package/src/components/global-styles/font-families.js +14 -8
  222. package/src/components/global-styles/font-family-item.js +7 -4
  223. package/src/components/global-styles/font-library-modal/context.js +156 -50
  224. package/src/components/global-styles/font-library-modal/font-collection.js +56 -21
  225. package/src/components/global-styles/font-library-modal/fonts-grid.js +6 -2
  226. package/src/components/global-styles/font-library-modal/index.js +4 -4
  227. package/src/components/global-styles/font-library-modal/installed-fonts.js +18 -8
  228. package/src/components/global-styles/font-library-modal/library-font-card.js +2 -1
  229. package/src/components/global-styles/font-library-modal/library-font-variant.js +10 -9
  230. package/src/components/global-styles/font-library-modal/local-fonts.js +14 -4
  231. package/src/components/global-styles/font-library-modal/resolvers.js +50 -17
  232. package/src/components/global-styles/font-library-modal/style.scss +23 -35
  233. package/src/components/global-styles/font-library-modal/tab-panel-layout.js +30 -26
  234. package/src/components/global-styles/font-library-modal/utils/filter-fonts.js +19 -2
  235. package/src/components/global-styles/font-library-modal/utils/index.js +136 -29
  236. package/src/components/global-styles/font-library-modal/utils/preview-styles.js +7 -3
  237. package/src/components/global-styles/font-library-modal/utils/test/filter-fonts.spec.js +40 -10
  238. package/src/components/global-styles/font-library-modal/utils/test/preview-styles.spec.js +5 -5
  239. package/src/components/global-styles/screen-block.js +10 -0
  240. package/src/components/global-styles/screen-typography.js +9 -3
  241. package/src/components/global-styles/style.scss +4 -0
  242. package/src/components/header-edit-mode/style.scss +15 -5
  243. package/src/components/layout/hooks.js +6 -5
  244. package/src/components/layout/index.js +80 -96
  245. package/src/components/layout/router.js +121 -0
  246. package/src/components/layout/style.scss +13 -16
  247. package/src/components/page/style.scss +1 -8
  248. package/src/components/page-pages/index.js +142 -148
  249. package/src/components/page-pages/style.scss +41 -2
  250. package/src/components/page-patterns/dataviews-pattern-actions.js +11 -6
  251. package/src/components/page-patterns/index.js +392 -14
  252. package/src/components/page-patterns/style.scss +36 -2
  253. package/src/components/{page-templates/template-actions.js → page-templates-template-parts/actions.js} +90 -37
  254. package/src/components/{page-templates → page-templates-template-parts}/index.js +198 -169
  255. package/src/components/page-templates-template-parts/style.scss +44 -0
  256. package/src/components/preferences-modal/index.js +8 -211
  257. package/src/components/revisions/index.js +1 -1
  258. package/src/components/save-button/index.js +7 -4
  259. package/src/components/save-panel/index.js +13 -12
  260. package/src/components/sidebar/index.js +4 -5
  261. package/src/components/sidebar-dataviews/dataview-item.js +2 -1
  262. package/src/components/sidebar-dataviews/default-views.js +4 -2
  263. package/src/components/sidebar-dataviews/index.js +8 -6
  264. package/src/components/sidebar-navigation-item/style.scss +1 -1
  265. package/src/components/sidebar-navigation-screen/index.js +19 -10
  266. package/src/components/sidebar-navigation-screen-pages/index.js +2 -10
  267. package/src/components/sidebar-navigation-screen-pages-dataviews/index.js +32 -6
  268. package/src/components/sidebar-navigation-screen-templates/index.js +85 -28
  269. package/src/components/sidebar-navigation-screen-templates/style.scss +9 -0
  270. package/src/components/sidebar-navigation-screen-templates-browse/content.js +73 -0
  271. package/src/components/sidebar-navigation-screen-templates-browse/index.js +10 -1
  272. package/src/components/site-hub/index.js +4 -1
  273. package/src/components/site-hub/style.scss +1 -12
  274. package/src/components/site-icon/style.scss +1 -1
  275. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +40 -10
  276. package/src/components/sync-state-with-url/use-sync-path-with-url.js +32 -0
  277. package/src/hooks/commands/use-edit-mode-commands.js +50 -3
  278. package/src/hooks/push-changes-to-global-styles/index.js +29 -23
  279. package/src/hooks/template-part-edit.js +12 -12
  280. package/src/index.js +1 -1
  281. package/src/store/actions.js +17 -51
  282. package/src/store/private-actions.js +133 -0
  283. package/src/store/selectors.js +2 -4
  284. package/src/style.scss +2 -1
  285. package/src/utils/get-is-list-page.js +3 -2
  286. package/src/utils/use-actual-current-theme.js +27 -0
  287. package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +0 -58
  288. package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +0 -1
  289. package/build/components/global-styles/font-library-modal/utils/get-notice-from-response.js +0 -71
  290. package/build/components/global-styles/font-library-modal/utils/get-notice-from-response.js.map +0 -1
  291. package/build/components/page-main/index.js +0 -44
  292. package/build/components/page-main/index.js.map +0 -1
  293. package/build/components/page-patterns/dataviews-patterns.js +0 -307
  294. package/build/components/page-patterns/dataviews-patterns.js.map +0 -1
  295. package/build/components/page-template-parts/add-new-template-part.js.map +0 -1
  296. package/build/components/page-template-parts/index.js +0 -81
  297. package/build/components/page-template-parts/index.js.map +0 -1
  298. package/build/components/page-templates/index.js +0 -352
  299. package/build/components/page-templates/index.js.map +0 -1
  300. package/build/components/page-templates/template-actions.js.map +0 -1
  301. package/build/components/post-preview/index.js +0 -29
  302. package/build/components/post-preview/index.js.map +0 -1
  303. package/build/components/preferences-modal/enable-feature.js +0 -36
  304. package/build/components/preferences-modal/enable-feature.js.map +0 -1
  305. package/build/components/preferences-modal/enable-panel-option.js +0 -33
  306. package/build/components/preferences-modal/enable-panel-option.js.map +0 -1
  307. package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +0 -52
  308. package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +0 -1
  309. package/build-module/components/global-styles/font-library-modal/utils/get-notice-from-response.js +0 -63
  310. package/build-module/components/global-styles/font-library-modal/utils/get-notice-from-response.js.map +0 -1
  311. package/build-module/components/page-main/index.js +0 -36
  312. package/build-module/components/page-main/index.js.map +0 -1
  313. package/build-module/components/page-patterns/dataviews-patterns.js +0 -299
  314. package/build-module/components/page-patterns/dataviews-patterns.js.map +0 -1
  315. package/build-module/components/page-template-parts/add-new-template-part.js.map +0 -1
  316. package/build-module/components/page-template-parts/index.js +0 -73
  317. package/build-module/components/page-template-parts/index.js.map +0 -1
  318. package/build-module/components/page-templates/index.js +0 -344
  319. package/build-module/components/page-templates/index.js.map +0 -1
  320. package/build-module/components/page-templates/template-actions.js.map +0 -1
  321. package/build-module/components/post-preview/index.js +0 -21
  322. package/build-module/components/post-preview/index.js.map +0 -1
  323. package/build-module/components/preferences-modal/enable-feature.js +0 -29
  324. package/build-module/components/preferences-modal/enable-feature.js.map +0 -1
  325. package/build-module/components/preferences-modal/enable-panel-option.js +0 -26
  326. package/build-module/components/preferences-modal/enable-panel-option.js.map +0 -1
  327. package/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +0 -58
  328. package/src/components/global-styles/font-library-modal/utils/get-notice-from-response.js +0 -62
  329. package/src/components/global-styles/font-library-modal/utils/test/getIntersectingFontFaces.spec.js +0 -271
  330. package/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamily.spec.js +0 -58
  331. package/src/components/page-main/index.js +0 -38
  332. package/src/components/page-patterns/dataviews-patterns.js +0 -380
  333. package/src/components/page-template-parts/index.js +0 -99
  334. package/src/components/page-templates/style.scss +0 -13
  335. package/src/components/post-preview/index.js +0 -16
  336. package/src/components/preferences-modal/enable-feature.js +0 -31
  337. package/src/components/preferences-modal/enable-panel-option.js +0 -23
  338. /package/build/components/{page-template-parts → page-templates-template-parts}/add-new-template-part.js +0 -0
  339. /package/build-module/components/{page-template-parts → page-templates-template-parts}/add-new-template-part.js +0 -0
  340. /package/src/components/{page-template-parts → page-templates-template-parts}/add-new-template-part.js +0 -0
@@ -3,6 +3,8 @@
3
3
  */
4
4
  import { __ } from '@wordpress/i18n';
5
5
  import { __experimentalVStack as VStack } from '@wordpress/components';
6
+ import { store as editorStore } from '@wordpress/editor';
7
+ import { useSelect } from '@wordpress/data';
6
8
 
7
9
  /**
8
10
  * Internal dependencies
@@ -12,6 +14,12 @@ import FontFamilies from './font-families';
12
14
  import ScreenHeader from './header';
13
15
 
14
16
  function ScreenTypography() {
17
+ const fontLibraryEnabled = useSelect(
18
+ ( select ) =>
19
+ select( editorStore ).getEditorSettings().fontLibraryEnabled,
20
+ []
21
+ );
22
+
15
23
  return (
16
24
  <>
17
25
  <ScreenHeader
@@ -22,9 +30,7 @@ function ScreenTypography() {
22
30
  />
23
31
  <div className="edit-site-global-styles-screen-typography">
24
32
  <VStack spacing={ 6 }>
25
- { ! window.__experimentalDisableFontLibrary && (
26
- <FontFamilies />
27
- ) }
33
+ { fontLibraryEnabled && <FontFamilies /> }
28
34
  <TypographyElements />
29
35
  </VStack>
30
36
  </div>
@@ -42,6 +42,10 @@
42
42
  border-radius: $radius-block-ui;
43
43
  }
44
44
 
45
+ .edit-site-global-styles-screen-typography__font-variants-count {
46
+ color: $gray-700;
47
+ }
48
+
45
49
  .edit-site-global-styles-screen-colors {
46
50
  margin: $grid-unit-20;
47
51
 
@@ -143,16 +143,26 @@ $header-toolbar-min-width: 335px;
143
143
  }
144
144
 
145
145
  .block-editor-block-mover {
146
+ // Modified group borders.
146
147
  border-left: none;
147
148
 
148
149
  &::before {
149
150
  content: "";
150
151
  width: $border-width;
151
- margin-top: $grid-unit + $grid-unit-05;
152
- margin-bottom: $grid-unit + $grid-unit-05;
152
+ margin-top: $grid-unit-15;
153
+ margin-bottom: $grid-unit-15;
153
154
  background-color: $gray-300;
154
155
  margin-left: $grid-unit;
155
156
  }
157
+
158
+ // Modified block movers horizontal separator.
159
+ .block-editor-block-mover__move-button-container {
160
+ &::before {
161
+ width: calc(100% - #{$grid-unit-30});
162
+ background: $gray-300;
163
+ left: calc(50% + 1px);
164
+ }
165
+ }
156
166
  }
157
167
  }
158
168
 
@@ -164,7 +174,7 @@ $header-toolbar-min-width: 335px;
164
174
  border-bottom: 0;
165
175
  }
166
176
 
167
- // Modified group borders
177
+ // Modified group borders.
168
178
  .components-toolbar-group,
169
179
  .components-toolbar {
170
180
  border-right: none;
@@ -172,8 +182,8 @@ $header-toolbar-min-width: 335px;
172
182
  &::after {
173
183
  content: "";
174
184
  width: $border-width;
175
- margin-top: $grid-unit + $grid-unit-05;
176
- margin-bottom: $grid-unit + $grid-unit-05;
185
+ margin-top: $grid-unit-15;
186
+ margin-bottom: $grid-unit-15;
177
187
  background-color: $gray-300;
178
188
  margin-left: $grid-unit;
179
189
  }
@@ -46,16 +46,17 @@ export function useIsSiteEditorLoading() {
46
46
  useEffect( () => {
47
47
  if ( inLoadingPause ) {
48
48
  /*
49
- * We're using an arbitrary 1s timeout here to catch brief moments
50
- * without any resolving selectors that would result in displaying
51
- * brief flickers of loading state and loaded state.
49
+ * We're using an arbitrary 100ms timeout here to catch brief
50
+ * moments without any resolving selectors that would result in
51
+ * displaying brief flickers of loading state and loaded state.
52
52
  *
53
53
  * It's worth experimenting with different values, since this also
54
- * adds 1s of artificial delay after loading has finished.
54
+ * adds 100ms of artificial delay after loading has finished.
55
55
  */
56
+ const ARTIFICIAL_DELAY = 100;
56
57
  const timeout = setTimeout( () => {
57
58
  setLoaded( true );
58
- }, 1000 );
59
+ }, ARTIFICIAL_DELAY );
59
60
 
60
61
  return () => {
61
62
  clearTimeout( timeout );
@@ -31,17 +31,14 @@ import {
31
31
  useBlockCommands,
32
32
  store as blockEditorStore,
33
33
  } from '@wordpress/block-editor';
34
- import { privateApis as routerPrivateApis } from '@wordpress/router';
35
34
  import { privateApis as coreCommandsPrivateApis } from '@wordpress/core-commands';
36
35
 
37
36
  /**
38
37
  * Internal dependencies
39
38
  */
40
39
  import Sidebar from '../sidebar';
41
- import Editor from '../editor';
42
40
  import ErrorBoundary from '../error-boundary';
43
41
  import { store as editSiteStore } from '../../store';
44
- import getIsListPage from '../../utils/get-is-list-page';
45
42
  import Header from '../header-edit-mode';
46
43
  import useInitEditedEntityFromURL from '../sync-state-with-url/use-init-edited-entity-from-url';
47
44
  import SiteHub from '../site-hub';
@@ -53,12 +50,11 @@ import KeyboardShortcutsRegister from '../keyboard-shortcuts/register';
53
50
  import KeyboardShortcutsGlobal from '../keyboard-shortcuts/global';
54
51
  import { useCommonCommands } from '../../hooks/commands/use-common-commands';
55
52
  import { useEditModeCommands } from '../../hooks/commands/use-edit-mode-commands';
56
- import PageMain from '../page-main';
57
53
  import { useIsSiteEditorLoading } from './hooks';
54
+ import useLayoutAreas from './router';
58
55
 
59
56
  const { useCommands } = unlock( coreCommandsPrivateApis );
60
57
  const { useCommandContext } = unlock( commandsPrivateApis );
61
- const { useLocation } = unlock( routerPrivateApis );
62
58
  const { useGlobalStyle } = unlock( blockEditorPrivateApis );
63
59
 
64
60
  const ANIMATION_DURATION = 0.5;
@@ -72,10 +68,7 @@ export default function Layout() {
72
68
  useCommonCommands();
73
69
  useBlockCommands();
74
70
 
75
- const { params } = useLocation();
76
71
  const isMobileViewport = useViewportMatch( 'medium', '<' );
77
- const isListPage = getIsListPage( params, isMobileViewport );
78
- const isEditorPage = ! isListPage;
79
72
 
80
73
  const {
81
74
  isDistractionFree,
@@ -109,26 +102,17 @@ export default function Layout() {
109
102
  select( blockEditorStore ).getBlockSelectionStart(),
110
103
  };
111
104
  }, [] );
112
- const isEditing = canvasMode === 'edit';
113
105
  const navigateRegionsProps = useNavigateRegions( {
114
106
  previous: previousShortcut,
115
107
  next: nextShortcut,
116
108
  } );
117
109
  const disableMotion = useReducedMotion();
118
- const showSidebar =
119
- ( isMobileViewport && canvasMode === 'view' && ! isListPage ) ||
120
- ( ! isMobileViewport && ( canvasMode === 'view' || ! isEditorPage ) );
121
- const showCanvas =
122
- ( isMobileViewport && isEditorPage && isEditing ) ||
123
- ! isMobileViewport ||
124
- ! isEditorPage;
125
- const isFullCanvas =
126
- ( isMobileViewport && isListPage ) || ( isEditorPage && isEditing );
127
110
  const [ canvasResizer, canvasSize ] = useResizeObserver();
128
111
  const [ fullResizer ] = useResizeObserver();
129
112
  const isEditorLoading = useIsSiteEditorLoading();
130
113
  const [ isResizableFrameOversized, setIsResizableFrameOversized ] =
131
114
  useState( false );
115
+ const { areas, widths } = useLayoutAreas();
132
116
 
133
117
  // This determines which animation variant should apply to the header.
134
118
  // There is also a `isDistractionFreeHovering` state that gets priority
@@ -154,7 +138,7 @@ export default function Layout() {
154
138
  // Sets the right context for the command palette
155
139
  let commandContext = 'site-editor';
156
140
 
157
- if ( canvasMode === 'edit' && isEditorPage ) {
141
+ if ( canvasMode === 'edit' ) {
158
142
  commandContext = 'site-editor-edit';
159
143
  }
160
144
  if ( hasBlockSelected ) {
@@ -185,9 +169,9 @@ export default function Layout() {
185
169
  'edit-site-layout',
186
170
  navigateRegionsProps.className,
187
171
  {
188
- 'is-distraction-free': isDistractionFree && isEditing,
189
- 'is-full-canvas': isFullCanvas,
190
- 'is-edit-mode': isEditing,
172
+ 'is-distraction-free':
173
+ isDistractionFree && canvasMode === 'edit',
174
+ 'is-full-canvas': canvasMode === 'edit',
191
175
  'has-fixed-toolbar': hasFixedToolbar,
192
176
  'is-block-toolbar-visible': hasBlockSelected,
193
177
  }
@@ -228,7 +212,7 @@ export default function Layout() {
228
212
  />
229
213
 
230
214
  <AnimatePresence initial={ false }>
231
- { isEditorPage && isEditing && (
215
+ { canvasMode === 'edit' && (
232
216
  <NavigableRegion
233
217
  key="header"
234
218
  className="edit-site-layout__header"
@@ -272,7 +256,7 @@ export default function Layout() {
272
256
  className="edit-site-layout__sidebar-region"
273
257
  >
274
258
  <AnimatePresence>
275
- { showSidebar && (
259
+ { canvasMode === 'view' && (
276
260
  <motion.div
277
261
  initial={ { opacity: 0 } }
278
262
  animate={ { opacity: 1 } }
@@ -296,82 +280,82 @@ export default function Layout() {
296
280
 
297
281
  <SavePanel />
298
282
 
299
- { showCanvas && (
300
- <>
301
- { isListPage && <PageMain /> }
302
- { isEditorPage && (
303
- <div className="edit-site-layout__canvas-container">
304
- { canvasResizer }
305
- { !! canvasSize.width && (
306
- <motion.div
307
- whileHover={
308
- isEditorPage &&
309
- canvasMode === 'view'
310
- ? {
311
- scale: 1.005,
312
- transition: {
313
- duration:
314
- disableMotion
315
- ? 0
316
- : 0.5,
317
- ease: 'easeOut',
318
- },
319
- }
320
- : {}
283
+ { areas.content && canvasMode !== 'edit' && (
284
+ <div
285
+ className="edit-site-layout__area"
286
+ style={ {
287
+ maxWidth: widths?.content,
288
+ } }
289
+ >
290
+ { areas.content }
291
+ </div>
292
+ ) }
293
+
294
+ { areas.preview && (
295
+ <div className="edit-site-layout__canvas-container">
296
+ { canvasResizer }
297
+ { !! canvasSize.width && (
298
+ <motion.div
299
+ whileHover={
300
+ canvasMode === 'view'
301
+ ? {
302
+ scale: 1.005,
303
+ transition: {
304
+ duration: disableMotion
305
+ ? 0
306
+ : 0.5,
307
+ ease: 'easeOut',
308
+ },
309
+ }
310
+ : {}
311
+ }
312
+ initial={ false }
313
+ layout="position"
314
+ className={ classnames(
315
+ 'edit-site-layout__canvas',
316
+ {
317
+ 'is-right-aligned':
318
+ isResizableFrameOversized,
319
+ }
320
+ ) }
321
+ transition={ {
322
+ type: 'tween',
323
+ duration: disableMotion
324
+ ? 0
325
+ : ANIMATION_DURATION,
326
+ ease: 'easeOut',
327
+ } }
328
+ >
329
+ <ErrorBoundary>
330
+ <ResizableFrame
331
+ isReady={ ! isEditorLoading }
332
+ isFullWidth={
333
+ canvasMode === 'edit'
321
334
  }
322
- initial={ false }
323
- layout="position"
324
- className={ classnames(
325
- 'edit-site-layout__canvas',
326
- {
327
- 'is-right-aligned':
328
- isResizableFrameOversized,
329
- }
330
- ) }
331
- transition={ {
332
- type: 'tween',
333
- duration: disableMotion
334
- ? 0
335
- : ANIMATION_DURATION,
336
- ease: 'easeOut',
335
+ defaultSize={ {
336
+ width:
337
+ canvasSize.width -
338
+ 24 /* $canvas-padding */,
339
+ height: canvasSize.height,
340
+ } }
341
+ isOversized={
342
+ isResizableFrameOversized
343
+ }
344
+ setIsOversized={
345
+ setIsResizableFrameOversized
346
+ }
347
+ innerContentStyle={ {
348
+ background:
349
+ gradientValue ??
350
+ backgroundColor,
337
351
  } }
338
352
  >
339
- <ErrorBoundary>
340
- <ResizableFrame
341
- isReady={
342
- ! isEditorLoading
343
- }
344
- isFullWidth={ isEditing }
345
- defaultSize={ {
346
- width:
347
- canvasSize.width -
348
- 24 /* $canvas-padding */,
349
- height: canvasSize.height,
350
- } }
351
- isOversized={
352
- isResizableFrameOversized
353
- }
354
- setIsOversized={
355
- setIsResizableFrameOversized
356
- }
357
- innerContentStyle={ {
358
- background:
359
- gradientValue ??
360
- backgroundColor,
361
- } }
362
- >
363
- <Editor
364
- isLoading={
365
- isEditorLoading
366
- }
367
- />
368
- </ResizableFrame>
369
- </ErrorBoundary>
370
- </motion.div>
371
- ) }
372
- </div>
353
+ { areas.preview }
354
+ </ResizableFrame>
355
+ </ErrorBoundary>
356
+ </motion.div>
373
357
  ) }
374
- </>
358
+ </div>
375
359
  ) }
376
360
  </div>
377
361
  </div>
@@ -0,0 +1,121 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { privateApis as routerPrivateApis } from '@wordpress/router';
5
+
6
+ /**
7
+ * Internal dependencies
8
+ */
9
+ import { unlock } from '../../lock-unlock';
10
+ import { useIsSiteEditorLoading } from './hooks';
11
+ import Editor from '../editor';
12
+ import PagePages from '../page-pages';
13
+ import PagePatterns from '../page-patterns';
14
+ import PageTemplatesTemplateParts from '../page-templates-template-parts';
15
+
16
+ import {
17
+ TEMPLATE_POST_TYPE,
18
+ TEMPLATE_PART_POST_TYPE,
19
+ } from '../../utils/constants';
20
+
21
+ const { useLocation } = unlock( routerPrivateApis );
22
+
23
+ export default function useLayoutAreas() {
24
+ const isSiteEditorLoading = useIsSiteEditorLoading();
25
+ const { params } = useLocation();
26
+ const { postType, postId, path, layout, isCustom } = params ?? {};
27
+ // Regular page
28
+ if ( path === '/page' ) {
29
+ return {
30
+ areas: {
31
+ content: undefined,
32
+ preview: <Editor isLoading={ isSiteEditorLoading } />,
33
+ },
34
+ widths: {
35
+ content: undefined,
36
+ },
37
+ };
38
+ }
39
+
40
+ // List layout is still experimental.
41
+ // Extracted it here out of the conditionals so it doesn't unintentionally becomes stable.
42
+ const isListLayout =
43
+ isCustom !== 'true' &&
44
+ layout === 'list' &&
45
+ window?.__experimentalAdminViews;
46
+
47
+ if ( path === '/pages' ) {
48
+ return {
49
+ areas: {
50
+ content: <PagePages />,
51
+ preview: isListLayout && (
52
+ <Editor isLoading={ isSiteEditorLoading } />
53
+ ),
54
+ },
55
+ widths: {
56
+ content: isListLayout ? 380 : undefined,
57
+ },
58
+ };
59
+ }
60
+
61
+ // Regular other post types
62
+ if ( postType && postId ) {
63
+ return {
64
+ areas: {
65
+ preview: <Editor isLoading={ isSiteEditorLoading } />,
66
+ },
67
+ };
68
+ }
69
+
70
+ // Templates
71
+ if ( path === '/wp_template/all' ) {
72
+ return {
73
+ areas: {
74
+ content: (
75
+ <PageTemplatesTemplateParts
76
+ postType={ TEMPLATE_POST_TYPE }
77
+ />
78
+ ),
79
+ preview: isListLayout && (
80
+ <Editor isLoading={ isSiteEditorLoading } />
81
+ ),
82
+ },
83
+ widths: {
84
+ content: isListLayout ? 380 : undefined,
85
+ },
86
+ };
87
+ }
88
+
89
+ // Template parts
90
+ if ( path === '/wp_template_part/all' ) {
91
+ return {
92
+ areas: {
93
+ content: (
94
+ <PageTemplatesTemplateParts
95
+ postType={ TEMPLATE_PART_POST_TYPE }
96
+ />
97
+ ),
98
+ preview: isListLayout && (
99
+ <Editor isLoading={ isSiteEditorLoading } />
100
+ ),
101
+ },
102
+ widths: {
103
+ content: isListLayout ? 380 : undefined,
104
+ },
105
+ };
106
+ }
107
+
108
+ // Patterns
109
+ if ( path === '/patterns' ) {
110
+ return {
111
+ areas: {
112
+ content: <PagePatterns />,
113
+ },
114
+ };
115
+ }
116
+
117
+ // Fallback shows the home page preview
118
+ return {
119
+ areas: { preview: <Editor isLoading={ isSiteEditorLoading } /> },
120
+ };
121
+ }
@@ -14,11 +14,6 @@
14
14
  height: $header-height;
15
15
  z-index: z-index(".edit-site-layout__hub");
16
16
 
17
- .edit-site-layout.is-full-canvas.is-edit-mode & {
18
- width: $header-height;
19
- padding-right: 0;
20
- }
21
-
22
17
  @include break-medium {
23
18
  width: calc(#{$nav-sidebar-width} - #{$grid-unit-30});
24
19
  }
@@ -30,7 +25,7 @@
30
25
  box-shadow: none;
31
26
 
32
27
  @include break-medium {
33
- width: auto;
28
+ width: $header-height;
34
29
  padding-right: 0;
35
30
  }
36
31
  }
@@ -156,20 +151,13 @@
156
151
  }
157
152
  }
158
153
 
159
- .edit-site-template-pages-list-view,
160
- .edit-site-page-pages-list-view {
161
- max-width: $nav-sidebar-width;
162
- }
163
-
164
154
  // This shouldn't be necessary (we should have a way to say that a skeletton is relative
165
155
  .edit-site-layout__canvas .interface-interface-skeleton,
166
- .edit-site-page-pages-preview .interface-interface-skeleton,
167
156
  .edit-site-template-pages-preview .interface-interface-skeleton {
168
157
  position: relative !important;
169
158
  min-height: 100% !important;
170
159
  }
171
160
 
172
- .edit-site-page-pages-preview,
173
161
  .edit-site-template-pages-preview {
174
162
  height: 100%;
175
163
  }
@@ -187,7 +175,7 @@
187
175
  justify-content: center;
188
176
  border-bottom: 1px solid transparent;
189
177
 
190
- .edit-site-layout.is-full-canvas.is-edit-mode & {
178
+ .edit-site-layout.is-full-canvas & {
191
179
  border-bottom-color: $gray-200;
192
180
  transition: border-bottom-color 0.15s 0.4s ease-out;
193
181
  }
@@ -261,8 +249,7 @@
261
249
  }
262
250
  }
263
251
 
264
- .is-edit-mode.is-distraction-free {
265
-
252
+ .edit-site-layout.is-distraction-free {
266
253
  .edit-site-layout__header-container {
267
254
  height: $header-height;
268
255
  position: absolute;
@@ -300,3 +287,13 @@
300
287
  }
301
288
 
302
289
  }
290
+
291
+ .edit-site-layout__area {
292
+ flex-grow: 1;
293
+ margin: 0;
294
+ overflow: hidden;
295
+ @include break-medium() {
296
+ border-radius: 8px;
297
+ margin: $canvas-padding $canvas-padding $canvas-padding 0;
298
+ }
299
+ }
@@ -1,14 +1,7 @@
1
1
  .edit-site-page {
2
2
  color: $gray-800;
3
3
  background: $white;
4
- flex-grow: 1;
5
- overflow: hidden;
6
- margin: 0;
7
- margin-top: $header-height;
8
- @include break-medium() {
9
- border-radius: 8px;
10
- margin: $canvas-padding $canvas-padding $canvas-padding 0;
11
- }
4
+ height: 100%;
12
5
  }
13
6
 
14
7
  .edit-site-page-header {