@wordpress/edit-site 4.15.1-next.4d3b314fd5.0 → 4.17.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 (252) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/components/block-editor/block-inspector-button.js +1 -1
  3. package/build/components/block-editor/block-inspector-button.js.map +1 -1
  4. package/build/components/block-editor/index.js +17 -11
  5. package/build/components/block-editor/index.js.map +1 -1
  6. package/build/components/block-editor/resizable-editor.js +11 -35
  7. package/build/components/block-editor/resizable-editor.js.map +1 -1
  8. package/build/components/editor/index.js +5 -7
  9. package/build/components/editor/index.js.map +1 -1
  10. package/build/components/global-styles/preview.js +85 -50
  11. package/build/components/global-styles/preview.js.map +1 -1
  12. package/build/components/global-styles/screen-style-variations.js +35 -4
  13. package/build/components/global-styles/screen-style-variations.js.map +1 -1
  14. package/build/components/global-styles/screen-typography-element.js +49 -2
  15. package/build/components/global-styles/screen-typography-element.js.map +1 -1
  16. package/build/components/global-styles/typography-panel.js +143 -83
  17. package/build/components/global-styles/typography-panel.js.map +1 -1
  18. package/build/components/global-styles/typography-preview.js +54 -0
  19. package/build/components/global-styles/typography-preview.js.map +1 -0
  20. package/build/components/global-styles/typography-utils.js +39 -176
  21. package/build/components/global-styles/typography-utils.js.map +1 -1
  22. package/build/components/global-styles/use-global-styles-output.js +34 -16
  23. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  24. package/build/components/{header → header-edit-mode}/document-actions/index.js +58 -24
  25. package/build/components/header-edit-mode/document-actions/index.js.map +1 -0
  26. package/build/components/{header → header-edit-mode}/index.js +13 -49
  27. package/build/components/header-edit-mode/index.js.map +1 -0
  28. package/build/components/{header → header-edit-mode}/mode-switcher/index.js +0 -0
  29. package/build/components/header-edit-mode/mode-switcher/index.js.map +1 -0
  30. package/build/components/{header → header-edit-mode}/more-menu/copy-content-menu-item.js +0 -0
  31. package/build/components/header-edit-mode/more-menu/copy-content-menu-item.js.map +1 -0
  32. package/build/components/{header → header-edit-mode}/more-menu/index.js +0 -0
  33. package/build/components/header-edit-mode/more-menu/index.js.map +1 -0
  34. package/build/components/{header → header-edit-mode}/more-menu/site-export.js +0 -0
  35. package/build/components/header-edit-mode/more-menu/site-export.js.map +1 -0
  36. package/build/components/{header → header-edit-mode}/more-menu/welcome-guide-menu-item.js +0 -0
  37. package/build/components/header-edit-mode/more-menu/welcome-guide-menu-item.js.map +1 -0
  38. package/build/components/{header → header-edit-mode}/plugin-more-menu-item/index.js +0 -0
  39. package/build/components/header-edit-mode/plugin-more-menu-item/index.js.map +1 -0
  40. package/build/components/{header → header-edit-mode}/plugin-sidebar-more-menu-item/index.js +0 -0
  41. package/build/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js.map +1 -0
  42. package/build/components/{header → header-edit-mode}/tools-more-menu-group/index.js +0 -0
  43. package/build/components/header-edit-mode/tools-more-menu-group/index.js.map +1 -0
  44. package/build/components/{header → header-edit-mode}/undo-redo/redo.js +0 -0
  45. package/build/components/header-edit-mode/undo-redo/redo.js.map +1 -0
  46. package/build/components/{header → header-edit-mode}/undo-redo/undo.js +0 -0
  47. package/build/components/header-edit-mode/undo-redo/undo.js.map +1 -0
  48. package/build/components/keyboard-shortcuts/index.js +1 -1
  49. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  50. package/build/components/main-dashboard-button/index.js +2 -2
  51. package/build/components/main-dashboard-button/index.js.map +1 -1
  52. package/build/components/{sidebar → sidebar-edit-mode}/constants.js +0 -0
  53. package/build/components/sidebar-edit-mode/constants.js.map +1 -0
  54. package/build/components/{sidebar → sidebar-edit-mode}/default-sidebar.js +0 -0
  55. package/build/components/sidebar-edit-mode/default-sidebar.js.map +1 -0
  56. package/build/components/{sidebar → sidebar-edit-mode}/global-styles-sidebar.js +0 -0
  57. package/build/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -0
  58. package/build/components/{sidebar → sidebar-edit-mode}/index.js +1 -1
  59. package/build/components/sidebar-edit-mode/index.js.map +1 -0
  60. package/build/components/{sidebar → sidebar-edit-mode}/navigation-menu-sidebar/index.js +0 -0
  61. package/build/components/sidebar-edit-mode/navigation-menu-sidebar/index.js.map +1 -0
  62. package/build/components/{sidebar → sidebar-edit-mode}/navigation-menu-sidebar/navigation-inspector.js +0 -0
  63. package/build/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-inspector.js.map +1 -0
  64. package/build/components/{sidebar → sidebar-edit-mode}/navigation-menu-sidebar/navigation-menu.js +0 -0
  65. package/build/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-menu.js.map +1 -0
  66. package/build/components/{sidebar → sidebar-edit-mode}/plugin-sidebar/index.js +1 -1
  67. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -0
  68. package/build/components/{sidebar → sidebar-edit-mode}/settings-header/index.js +2 -2
  69. package/build/components/sidebar-edit-mode/settings-header/index.js.map +1 -0
  70. package/build/components/{sidebar → sidebar-edit-mode}/template-card/index.js +0 -0
  71. package/build/components/sidebar-edit-mode/template-card/index.js.map +1 -0
  72. package/build/components/{sidebar → sidebar-edit-mode}/template-card/template-actions.js +0 -0
  73. package/build/components/sidebar-edit-mode/template-card/template-actions.js.map +1 -0
  74. package/build/components/{sidebar → sidebar-edit-mode}/template-card/template-areas.js +0 -0
  75. package/build/components/sidebar-edit-mode/template-card/template-areas.js.map +1 -0
  76. package/build/index.js +23 -4
  77. package/build/index.js.map +1 -1
  78. package/build-module/components/block-editor/block-inspector-button.js +1 -1
  79. package/build-module/components/block-editor/block-inspector-button.js.map +1 -1
  80. package/build-module/components/block-editor/index.js +16 -10
  81. package/build-module/components/block-editor/index.js.map +1 -1
  82. package/build-module/components/block-editor/resizable-editor.js +10 -34
  83. package/build-module/components/block-editor/resizable-editor.js.map +1 -1
  84. package/build-module/components/editor/index.js +4 -6
  85. package/build-module/components/editor/index.js.map +1 -1
  86. package/build-module/components/global-styles/preview.js +85 -50
  87. package/build-module/components/global-styles/preview.js.map +1 -1
  88. package/build-module/components/global-styles/screen-style-variations.js +36 -6
  89. package/build-module/components/global-styles/screen-style-variations.js.map +1 -1
  90. package/build-module/components/global-styles/screen-typography-element.js +48 -2
  91. package/build-module/components/global-styles/screen-typography-element.js.map +1 -1
  92. package/build-module/components/global-styles/typography-panel.js +143 -85
  93. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  94. package/build-module/components/global-styles/typography-preview.js +46 -0
  95. package/build-module/components/global-styles/typography-preview.js.map +1 -0
  96. package/build-module/components/global-styles/typography-utils.js +37 -169
  97. package/build-module/components/global-styles/typography-utils.js.map +1 -1
  98. package/build-module/components/global-styles/use-global-styles-output.js +33 -16
  99. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  100. package/build-module/components/{header → header-edit-mode}/document-actions/index.js +53 -24
  101. package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -0
  102. package/build-module/components/{header → header-edit-mode}/index.js +13 -46
  103. package/build-module/components/header-edit-mode/index.js.map +1 -0
  104. package/build-module/components/{header → header-edit-mode}/mode-switcher/index.js +0 -0
  105. package/build-module/components/header-edit-mode/mode-switcher/index.js.map +1 -0
  106. package/build-module/components/{header → header-edit-mode}/more-menu/copy-content-menu-item.js +0 -0
  107. package/build-module/components/header-edit-mode/more-menu/copy-content-menu-item.js.map +1 -0
  108. package/build-module/components/{header → header-edit-mode}/more-menu/index.js +0 -0
  109. package/build-module/components/header-edit-mode/more-menu/index.js.map +1 -0
  110. package/build-module/components/{header → header-edit-mode}/more-menu/site-export.js +0 -0
  111. package/build-module/components/header-edit-mode/more-menu/site-export.js.map +1 -0
  112. package/build-module/components/{header → header-edit-mode}/more-menu/welcome-guide-menu-item.js +0 -0
  113. package/build-module/components/header-edit-mode/more-menu/welcome-guide-menu-item.js.map +1 -0
  114. package/build-module/components/{header → header-edit-mode}/plugin-more-menu-item/index.js +0 -0
  115. package/build-module/components/header-edit-mode/plugin-more-menu-item/index.js.map +1 -0
  116. package/build-module/components/{header → header-edit-mode}/plugin-sidebar-more-menu-item/index.js +0 -0
  117. package/build-module/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js.map +1 -0
  118. package/build-module/components/{header → header-edit-mode}/tools-more-menu-group/index.js +0 -0
  119. package/build-module/components/header-edit-mode/tools-more-menu-group/index.js.map +1 -0
  120. package/build-module/components/{header → header-edit-mode}/undo-redo/redo.js +0 -0
  121. package/build-module/components/header-edit-mode/undo-redo/redo.js.map +1 -0
  122. package/build-module/components/{header → header-edit-mode}/undo-redo/undo.js +0 -0
  123. package/build-module/components/header-edit-mode/undo-redo/undo.js.map +1 -0
  124. package/build-module/components/keyboard-shortcuts/index.js +1 -1
  125. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  126. package/build-module/components/main-dashboard-button/index.js +3 -3
  127. package/build-module/components/main-dashboard-button/index.js.map +1 -1
  128. package/build-module/components/{sidebar → sidebar-edit-mode}/constants.js +0 -0
  129. package/build-module/components/sidebar-edit-mode/constants.js.map +1 -0
  130. package/build-module/components/{sidebar → sidebar-edit-mode}/default-sidebar.js +0 -0
  131. package/build-module/components/sidebar-edit-mode/default-sidebar.js.map +1 -0
  132. package/build-module/components/{sidebar → sidebar-edit-mode}/global-styles-sidebar.js +0 -0
  133. package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -0
  134. package/build-module/components/{sidebar → sidebar-edit-mode}/index.js +1 -1
  135. package/build-module/components/sidebar-edit-mode/index.js.map +1 -0
  136. package/build-module/components/{sidebar → sidebar-edit-mode}/navigation-menu-sidebar/index.js +0 -0
  137. package/build-module/components/sidebar-edit-mode/navigation-menu-sidebar/index.js.map +1 -0
  138. package/build-module/components/{sidebar → sidebar-edit-mode}/navigation-menu-sidebar/navigation-inspector.js +0 -0
  139. package/build-module/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-inspector.js.map +1 -0
  140. package/build-module/components/{sidebar → sidebar-edit-mode}/navigation-menu-sidebar/navigation-menu.js +0 -0
  141. package/build-module/components/sidebar-edit-mode/navigation-menu-sidebar/navigation-menu.js.map +1 -0
  142. package/build-module/components/{sidebar → sidebar-edit-mode}/plugin-sidebar/index.js +1 -1
  143. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -0
  144. package/build-module/components/{sidebar → sidebar-edit-mode}/settings-header/index.js +2 -2
  145. package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +1 -0
  146. package/build-module/components/{sidebar → sidebar-edit-mode}/template-card/index.js +0 -0
  147. package/build-module/components/sidebar-edit-mode/template-card/index.js.map +1 -0
  148. package/build-module/components/{sidebar → sidebar-edit-mode}/template-card/template-actions.js +0 -0
  149. package/build-module/components/sidebar-edit-mode/template-card/template-actions.js.map +1 -0
  150. package/build-module/components/{sidebar → sidebar-edit-mode}/template-card/template-areas.js +0 -0
  151. package/build-module/components/sidebar-edit-mode/template-card/template-areas.js.map +1 -0
  152. package/build-module/index.js +22 -4
  153. package/build-module/index.js.map +1 -1
  154. package/build-style/style-rtl.css +64 -89
  155. package/build-style/style.css +64 -89
  156. package/package.json +29 -29
  157. package/src/components/block-editor/block-inspector-button.js +1 -1
  158. package/src/components/block-editor/index.js +29 -11
  159. package/src/components/block-editor/resizable-editor.js +8 -37
  160. package/src/components/editor/index.js +2 -4
  161. package/src/components/global-styles/preview.js +81 -60
  162. package/src/components/global-styles/screen-style-variations.js +39 -4
  163. package/src/components/global-styles/screen-typography-element.js +65 -1
  164. package/src/components/global-styles/style.scss +2 -2
  165. package/src/components/global-styles/test/typography-utils.js +333 -103
  166. package/src/components/global-styles/test/use-global-styles-output.js +57 -3
  167. package/src/components/global-styles/typography-panel.js +205 -150
  168. package/src/components/global-styles/typography-preview.js +49 -0
  169. package/src/components/global-styles/typography-utils.js +34 -195
  170. package/src/components/global-styles/use-global-styles-output.js +31 -9
  171. package/src/components/{header → header-edit-mode}/document-actions/index.js +67 -46
  172. package/src/components/{header → header-edit-mode}/document-actions/style.scss +0 -0
  173. package/src/components/{header → header-edit-mode}/index.js +12 -44
  174. package/src/components/{header → header-edit-mode}/mode-switcher/index.js +0 -0
  175. package/src/components/{header → header-edit-mode}/more-menu/copy-content-menu-item.js +0 -0
  176. package/src/components/{header → header-edit-mode}/more-menu/index.js +0 -0
  177. package/src/components/{header → header-edit-mode}/more-menu/site-export.js +0 -0
  178. package/src/components/{header → header-edit-mode}/more-menu/welcome-guide-menu-item.js +0 -0
  179. package/src/components/{header → header-edit-mode}/plugin-more-menu-item/index.js +0 -0
  180. package/src/components/{header → header-edit-mode}/plugin-sidebar-more-menu-item/index.js +0 -0
  181. package/src/components/{header → header-edit-mode}/style.scss +20 -50
  182. package/src/components/{header → header-edit-mode}/tools-more-menu-group/index.js +0 -0
  183. package/src/components/{header → header-edit-mode}/undo-redo/redo.js +0 -0
  184. package/src/components/{header → header-edit-mode}/undo-redo/undo.js +0 -0
  185. package/src/components/keyboard-shortcuts/index.js +1 -1
  186. package/src/components/main-dashboard-button/index.js +3 -3
  187. package/src/components/{sidebar → sidebar-edit-mode}/constants.js +0 -0
  188. package/src/components/{sidebar → sidebar-edit-mode}/default-sidebar.js +0 -0
  189. package/src/components/{sidebar → sidebar-edit-mode}/global-styles-sidebar.js +0 -0
  190. package/src/components/{sidebar → sidebar-edit-mode}/index.js +1 -1
  191. package/src/components/{sidebar → sidebar-edit-mode}/navigation-menu-sidebar/index.js +0 -0
  192. package/src/components/{sidebar → sidebar-edit-mode}/navigation-menu-sidebar/navigation-inspector.js +0 -0
  193. package/src/components/{sidebar → sidebar-edit-mode}/navigation-menu-sidebar/navigation-menu.js +0 -0
  194. package/src/components/{sidebar → sidebar-edit-mode}/navigation-menu-sidebar/style.scss +0 -0
  195. package/src/components/{sidebar → sidebar-edit-mode}/plugin-sidebar/index.js +1 -1
  196. package/src/components/{sidebar → sidebar-edit-mode}/settings-header/index.js +2 -2
  197. package/src/components/{sidebar → sidebar-edit-mode}/settings-header/style.scss +2 -2
  198. package/src/components/{sidebar → sidebar-edit-mode}/style.scss +2 -2
  199. package/src/components/{sidebar → sidebar-edit-mode}/template-card/index.js +0 -0
  200. package/src/components/{sidebar → sidebar-edit-mode}/template-card/style.scss +0 -0
  201. package/src/components/{sidebar → sidebar-edit-mode}/template-card/template-actions.js +0 -0
  202. package/src/components/{sidebar → sidebar-edit-mode}/template-card/template-areas.js +0 -0
  203. package/src/index.js +24 -3
  204. package/src/style.scss +6 -6
  205. package/build/components/header/document-actions/index.js.map +0 -1
  206. package/build/components/header/index.js.map +0 -1
  207. package/build/components/header/mode-switcher/index.js.map +0 -1
  208. package/build/components/header/more-menu/copy-content-menu-item.js.map +0 -1
  209. package/build/components/header/more-menu/index.js.map +0 -1
  210. package/build/components/header/more-menu/site-export.js.map +0 -1
  211. package/build/components/header/more-menu/welcome-guide-menu-item.js.map +0 -1
  212. package/build/components/header/plugin-more-menu-item/index.js.map +0 -1
  213. package/build/components/header/plugin-sidebar-more-menu-item/index.js.map +0 -1
  214. package/build/components/header/tools-more-menu-group/index.js.map +0 -1
  215. package/build/components/header/undo-redo/redo.js.map +0 -1
  216. package/build/components/header/undo-redo/undo.js.map +0 -1
  217. package/build/components/sidebar/constants.js.map +0 -1
  218. package/build/components/sidebar/default-sidebar.js.map +0 -1
  219. package/build/components/sidebar/global-styles-sidebar.js.map +0 -1
  220. package/build/components/sidebar/index.js.map +0 -1
  221. package/build/components/sidebar/navigation-menu-sidebar/index.js.map +0 -1
  222. package/build/components/sidebar/navigation-menu-sidebar/navigation-inspector.js.map +0 -1
  223. package/build/components/sidebar/navigation-menu-sidebar/navigation-menu.js.map +0 -1
  224. package/build/components/sidebar/plugin-sidebar/index.js.map +0 -1
  225. package/build/components/sidebar/settings-header/index.js.map +0 -1
  226. package/build/components/sidebar/template-card/index.js.map +0 -1
  227. package/build/components/sidebar/template-card/template-actions.js.map +0 -1
  228. package/build/components/sidebar/template-card/template-areas.js.map +0 -1
  229. package/build-module/components/header/document-actions/index.js.map +0 -1
  230. package/build-module/components/header/index.js.map +0 -1
  231. package/build-module/components/header/mode-switcher/index.js.map +0 -1
  232. package/build-module/components/header/more-menu/copy-content-menu-item.js.map +0 -1
  233. package/build-module/components/header/more-menu/index.js.map +0 -1
  234. package/build-module/components/header/more-menu/site-export.js.map +0 -1
  235. package/build-module/components/header/more-menu/welcome-guide-menu-item.js.map +0 -1
  236. package/build-module/components/header/plugin-more-menu-item/index.js.map +0 -1
  237. package/build-module/components/header/plugin-sidebar-more-menu-item/index.js.map +0 -1
  238. package/build-module/components/header/tools-more-menu-group/index.js.map +0 -1
  239. package/build-module/components/header/undo-redo/redo.js.map +0 -1
  240. package/build-module/components/header/undo-redo/undo.js.map +0 -1
  241. package/build-module/components/sidebar/constants.js.map +0 -1
  242. package/build-module/components/sidebar/default-sidebar.js.map +0 -1
  243. package/build-module/components/sidebar/global-styles-sidebar.js.map +0 -1
  244. package/build-module/components/sidebar/index.js.map +0 -1
  245. package/build-module/components/sidebar/navigation-menu-sidebar/index.js.map +0 -1
  246. package/build-module/components/sidebar/navigation-menu-sidebar/navigation-inspector.js.map +0 -1
  247. package/build-module/components/sidebar/navigation-menu-sidebar/navigation-menu.js.map +0 -1
  248. package/build-module/components/sidebar/plugin-sidebar/index.js.map +0 -1
  249. package/build-module/components/sidebar/settings-header/index.js.map +0 -1
  250. package/build-module/components/sidebar/template-card/index.js.map +0 -1
  251. package/build-module/components/sidebar/template-card/template-actions.js.map +0 -1
  252. package/build-module/components/sidebar/template-card/template-areas.js.map +0 -1
@@ -21,23 +21,32 @@ import { useGlobalStylesOutput } from './use-global-styles-output';
21
21
 
22
22
  const firstFrame = {
23
23
  start: {
24
+ scale: 1,
24
25
  opacity: 1,
25
- display: 'block',
26
26
  },
27
27
  hover: {
28
+ scale: 0,
28
29
  opacity: 0,
29
- display: 'none',
30
+ },
31
+ };
32
+
33
+ const midFrame = {
34
+ hover: {
35
+ opacity: 1,
36
+ },
37
+ start: {
38
+ opacity: 0.5,
30
39
  },
31
40
  };
32
41
 
33
42
  const secondFrame = {
34
43
  hover: {
44
+ scale: 1,
35
45
  opacity: 1,
36
- display: 'block',
37
46
  },
38
47
  start: {
48
+ scale: 0,
39
49
  opacity: 0,
40
- display: 'none',
41
50
  },
42
51
  };
43
52
 
@@ -46,7 +55,7 @@ const normalizedHeight = 152;
46
55
 
47
56
  const normalizedColorSwatchSize = 32;
48
57
 
49
- const StylesPreview = ( { label, isFocused } ) => {
58
+ const StylesPreview = ( { label, isFocused, withHoverView } ) => {
50
59
  const [ fontWeight ] = useStyle( 'typography.fontWeight' );
51
60
  const [ fontFamily = 'serif' ] = useStyle( 'typography.fontFamily' );
52
61
  const [ headingFontFamily = fontFamily ] = useStyle(
@@ -57,7 +66,6 @@ const StylesPreview = ( { label, isFocused } ) => {
57
66
  );
58
67
  const [ textColor = 'black' ] = useStyle( 'color.text' );
59
68
  const [ headingColor = textColor ] = useStyle( 'elements.h1.color.text' );
60
- const [ linkColor = 'blue' ] = useStyle( 'elements.link.color.text' );
61
69
  const [ backgroundColor = 'white' ] = useStyle( 'color.background' );
62
70
  const [ gradientValue ] = useStyle( 'color.gradient' );
63
71
  const [ styles ] = useGlobalStylesOutput();
@@ -79,13 +87,13 @@ const StylesPreview = ( { label, isFocused } ) => {
79
87
  )
80
88
  .slice( 0, 2 );
81
89
 
82
- // Reset leaked styles from WP common.css and remove main content layout padding.
90
+ // Reset leaked styles from WP common.css and remove main content layout padding and border.
83
91
  const editorStyles = useMemo( () => {
84
92
  if ( styles ) {
85
93
  return [
86
94
  ...styles,
87
95
  {
88
- css: 'body{min-width: 0;padding: 0;}',
96
+ css: 'html{overflow:hidden}body{min-width: 0;padding: 0;border: none;}',
89
97
  isGlobalStyles: true,
90
98
  },
91
99
  ];
@@ -116,7 +124,7 @@ const StylesPreview = ( { label, isFocused } ) => {
116
124
  } }
117
125
  initial="start"
118
126
  animate={
119
- ( isHovered || isFocused ) && ! disableMotion
127
+ ( isHovered || isFocused ) && ! disableMotion && label
120
128
  ? 'hover'
121
129
  : 'start'
122
130
  }
@@ -136,41 +144,90 @@ const StylesPreview = ( { label, isFocused } ) => {
136
144
  overflow: 'hidden',
137
145
  } }
138
146
  >
139
- <div
147
+ <motion.div
140
148
  style={ {
141
149
  fontFamily: headingFontFamily,
142
150
  fontSize: 65 * ratio,
143
151
  color: headingColor,
144
152
  fontWeight: headingFontWeight,
145
153
  } }
154
+ animate={ { scale: 1, opacity: 1 } }
155
+ initial={ { scale: 0.1, opacity: 0 } }
156
+ transition={ { delay: 0.3, type: 'tween' } }
146
157
  >
147
158
  Aa
148
- </div>
159
+ </motion.div>
149
160
  <VStack spacing={ 4 * ratio }>
150
- { highlightedColors.map( ( { slug, color } ) => (
161
+ { highlightedColors.map(
162
+ ( { slug, color }, index ) => (
163
+ <motion.div
164
+ key={ slug }
165
+ style={ {
166
+ height:
167
+ normalizedColorSwatchSize *
168
+ ratio,
169
+ width:
170
+ normalizedColorSwatchSize *
171
+ ratio,
172
+ background: color,
173
+ borderRadius:
174
+ ( normalizedColorSwatchSize *
175
+ ratio ) /
176
+ 2,
177
+ } }
178
+ animate={ { scale: 1, opacity: 1 } }
179
+ initial={ { scale: 0.1, opacity: 0 } }
180
+ transition={ {
181
+ delay: index === 1 ? 0.2 : 0.1,
182
+ } }
183
+ />
184
+ )
185
+ ) }
186
+ </VStack>
187
+ </HStack>
188
+ </motion.div>
189
+ <motion.div
190
+ variants={ withHoverView && midFrame }
191
+ style={ {
192
+ height: '100%',
193
+ width: '100%',
194
+ position: 'absolute',
195
+ top: 0,
196
+ overflow: 'hidden',
197
+ filter: 'blur(60px)',
198
+ opacity: 0.1,
199
+ } }
200
+ >
201
+ <HStack
202
+ spacing={ 0 }
203
+ justify="flex-start"
204
+ style={ {
205
+ height: '100%',
206
+ overflow: 'hidden',
207
+ } }
208
+ >
209
+ { paletteColors
210
+ .slice( 0, 4 )
211
+ .map( ( { color }, index ) => (
151
212
  <div
152
- key={ slug }
213
+ key={ index }
153
214
  style={ {
154
- height:
155
- normalizedColorSwatchSize * ratio,
156
- width:
157
- normalizedColorSwatchSize * ratio,
215
+ height: '100%',
158
216
  background: color,
159
- borderRadius:
160
- ( normalizedColorSwatchSize *
161
- ratio ) /
162
- 2,
217
+ flexGrow: 1,
163
218
  } }
164
219
  />
165
220
  ) ) }
166
- </VStack>
167
221
  </HStack>
168
222
  </motion.div>
169
223
  <motion.div
170
224
  variants={ secondFrame }
171
225
  style={ {
172
226
  height: '100%',
227
+ width: '100%',
173
228
  overflow: 'hidden',
229
+ position: 'absolute',
230
+ top: 0,
174
231
  } }
175
232
  >
176
233
  <VStack
@@ -186,53 +243,17 @@ const StylesPreview = ( { label, isFocused } ) => {
186
243
  { label && (
187
244
  <div
188
245
  style={ {
189
- fontSize: 35 * ratio,
246
+ fontSize: 40 * ratio,
190
247
  fontFamily: headingFontFamily,
191
248
  color: headingColor,
192
249
  fontWeight: headingFontWeight,
193
250
  lineHeight: '1em',
251
+ textAlign: 'center',
194
252
  } }
195
253
  >
196
254
  { label }
197
255
  </div>
198
256
  ) }
199
- <HStack spacing={ 2 * ratio } justify="flex-start">
200
- <div
201
- style={ {
202
- fontFamily,
203
- fontSize: 24 * ratio,
204
- color: textColor,
205
- } }
206
- >
207
- Aa
208
- </div>
209
- <div
210
- style={ {
211
- fontFamily,
212
- fontSize: 24 * ratio,
213
- color: linkColor,
214
- } }
215
- >
216
- Aa
217
- </div>
218
- </HStack>
219
- { paletteColors && (
220
- <HStack spacing={ 0 }>
221
- { paletteColors
222
- .slice( 0, 4 )
223
- .map( ( { color }, index ) => (
224
- <div
225
- key={ index }
226
- style={ {
227
- height: 10 * ratio,
228
- width: 30 * ratio,
229
- background: color,
230
- flexGrow: 1,
231
- } }
232
- />
233
- ) ) }
234
- </HStack>
235
- ) }
236
257
  </VStack>
237
258
  </motion.div>
238
259
  </motion.div>
@@ -8,8 +8,14 @@ import classnames from 'classnames';
8
8
  * WordPress dependencies
9
9
  */
10
10
  import { store as coreStore } from '@wordpress/core-data';
11
- import { useSelect } from '@wordpress/data';
12
- import { useMemo, useContext, useState } from '@wordpress/element';
11
+ import { useSelect, useDispatch } from '@wordpress/data';
12
+ import {
13
+ useMemo,
14
+ useContext,
15
+ useState,
16
+ useEffect,
17
+ useRef,
18
+ } from '@wordpress/element';
13
19
  import { ENTER } from '@wordpress/keycodes';
14
20
  import {
15
21
  __experimentalGrid as Grid,
@@ -17,6 +23,7 @@ import {
17
23
  CardBody,
18
24
  } from '@wordpress/components';
19
25
  import { __ } from '@wordpress/i18n';
26
+ import { store as blockEditorStore } from '@wordpress/block-editor';
20
27
 
21
28
  /**
22
29
  * Internal dependencies
@@ -87,6 +94,7 @@ function Variation( { variation } ) {
87
94
  <StylesPreview
88
95
  label={ variation?.title }
89
96
  isFocused={ isFocused }
97
+ withHoverView
90
98
  />
91
99
  </div>
92
100
  </div>
@@ -95,12 +103,14 @@ function Variation( { variation } ) {
95
103
  }
96
104
 
97
105
  function ScreenStyleVariations() {
98
- const { variations } = useSelect( ( select ) => {
106
+ const { variations, mode } = useSelect( ( select ) => {
99
107
  return {
100
108
  variations:
101
109
  select(
102
110
  coreStore
103
111
  ).__experimentalGetCurrentThemeGlobalStylesVariations(),
112
+
113
+ mode: select( blockEditorStore ).__unstableGetEditorMode(),
104
114
  };
105
115
  }, [] );
106
116
 
@@ -119,13 +129,38 @@ function ScreenStyleVariations() {
119
129
  ];
120
130
  }, [ variations ] );
121
131
 
132
+ const { __unstableSetEditorMode } = useDispatch( blockEditorStore );
133
+ const shouldRevertInitialMode = useRef( null );
134
+ useEffect( () => {
135
+ // ignore changes to zoom-out mode as we explictily change to it on mount.
136
+ if ( mode !== 'zoom-out' ) {
137
+ shouldRevertInitialMode.current = false;
138
+ }
139
+ }, [ mode ] );
140
+
141
+ // Intentionality left without any dependency.
142
+ // This effect should only run the first time the component is rendered.
143
+ // The effect opens the zoom-out view if it is not open before when applying a style variation.
144
+ useEffect( () => {
145
+ if ( mode !== 'zoom-out' ) {
146
+ __unstableSetEditorMode( 'zoom-out' );
147
+ shouldRevertInitialMode.current = true;
148
+ return () => {
149
+ // if there were not mode changes revert to the initial mode when unmounting.
150
+ if ( shouldRevertInitialMode.current ) {
151
+ __unstableSetEditorMode( mode );
152
+ }
153
+ };
154
+ }
155
+ }, [] );
156
+
122
157
  return (
123
158
  <>
124
159
  <ScreenHeader
125
160
  back="/"
126
161
  title={ __( 'Browse styles' ) }
127
162
  description={ __(
128
- 'Choose a different style combination for the theme styles'
163
+ 'Choose a variation to change the look of the site.'
129
164
  ) }
130
165
  />
131
166
 
@@ -2,12 +2,19 @@
2
2
  * WordPress dependencies
3
3
  */
4
4
  import { __ } from '@wordpress/i18n';
5
+ import {
6
+ __experimentalToggleGroupControl as ToggleGroupControl,
7
+ __experimentalToggleGroupControlOption as ToggleGroupControlOption,
8
+ __experimentalSpacer as Spacer,
9
+ } from '@wordpress/components';
10
+ import { useState } from '@wordpress/element';
5
11
 
6
12
  /**
7
13
  * Internal dependencies
8
14
  */
9
15
  import TypographyPanel from './typography-panel';
10
16
  import ScreenHeader from './header';
17
+ import TypographyPreview from './typography-preview';
11
18
 
12
19
  const elements = {
13
20
  text: {
@@ -29,13 +36,70 @@ const elements = {
29
36
  };
30
37
 
31
38
  function ScreenTypographyElement( { name, element } ) {
39
+ const [ headingLevel, setHeadingLevel ] = useState( 'heading' );
40
+
32
41
  return (
33
42
  <>
34
43
  <ScreenHeader
35
44
  title={ elements[ element ].title }
36
45
  description={ elements[ element ].description }
37
46
  />
38
- <TypographyPanel name={ name } element={ element } />
47
+ <Spacer marginX={ 4 }>
48
+ <TypographyPreview
49
+ name={ name }
50
+ element={ element }
51
+ headingLevel={ headingLevel }
52
+ />
53
+ </Spacer>
54
+ { element === 'heading' && (
55
+ <Spacer marginX={ 4 } marginBottom="1em">
56
+ <ToggleGroupControl
57
+ label={ __( 'Select heading level' ) }
58
+ hideLabelFromVision
59
+ value={ headingLevel }
60
+ onChange={ setHeadingLevel }
61
+ isBlock
62
+ size="__unstable-large"
63
+ __nextHasNoMarginBottom
64
+ >
65
+ <ToggleGroupControlOption
66
+ value="heading"
67
+ /* translators: 'All' refers to selecting all heading levels
68
+ and applying the same style to h1-h6. */
69
+ label={ __( 'All' ) }
70
+ />
71
+ <ToggleGroupControlOption
72
+ value="h1"
73
+ label={ __( 'H1' ) }
74
+ />
75
+ <ToggleGroupControlOption
76
+ value="h2"
77
+ label={ __( 'H2' ) }
78
+ />
79
+ <ToggleGroupControlOption
80
+ value="h3"
81
+ label={ __( 'H3' ) }
82
+ />
83
+ <ToggleGroupControlOption
84
+ value="h4"
85
+ label={ __( 'H4' ) }
86
+ />
87
+ <ToggleGroupControlOption
88
+ value="h5"
89
+ label={ __( 'H5' ) }
90
+ />
91
+ <ToggleGroupControlOption
92
+ value="h6"
93
+ label={ __( 'H6' ) }
94
+ />
95
+ </ToggleGroupControl>
96
+ </Spacer>
97
+ ) }
98
+ <TypographyPanel
99
+ name={ name }
100
+ element={ element }
101
+ headingLevel={ headingLevel }
102
+ />
39
103
  </>
40
104
  );
41
105
  }
@@ -11,7 +11,7 @@
11
11
  display: block;
12
12
  }
13
13
 
14
- .edit-site-typography-panel__preview {
14
+ .edit-site-typography-preview {
15
15
  display: flex;
16
16
  align-items: center;
17
17
  justify-content: center;
@@ -97,7 +97,7 @@
97
97
  }
98
98
 
99
99
  &:focus .edit-site-global-styles-variations_item-preview {
100
- border: var(--wp-admin-theme-color) $border-width solid;
100
+ border: var(--wp-admin-theme-color) var(--wp-admin-border-width-focus) solid;
101
101
  }
102
102
  }
103
103