@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
@@ -5,122 +5,352 @@ import { getTypographyFontSizeValue } from '../typography-utils';
5
5
 
6
6
  describe( 'typography utils', () => {
7
7
  describe( 'getTypographyFontSizeValue', () => {
8
- it( 'should return the expected values', () => {
9
- [
10
- // Default return non-fluid value.
11
- {
12
- preset: {
13
- size: '28px',
14
- },
15
- typographySettings: undefined,
16
- expected: '28px',
17
- },
18
- // Should return non-fluid value when fluid is `false`.
19
- {
20
- preset: {
21
- size: '28px',
22
- fluid: false,
23
- },
24
- typographySettings: {
25
- fluid: true,
26
- },
27
- expected: '28px',
8
+ [
9
+ {
10
+ message: 'Default return non-fluid value.',
11
+ preset: {
12
+ size: '28px',
28
13
  },
29
- // Should return fluid value.
30
- {
31
- preset: {
32
- size: '1.75rem',
33
- },
34
- typographySettings: {
35
- fluid: true,
36
- },
37
- expected:
38
- 'clamp(1.3125rem, 1.3125rem + ((1vw - 0.48rem) * 2.524), 2.625rem)',
39
- },
40
- // Should return default fluid values with empty fluid array.
41
- {
42
- preset: {
43
- size: '28px',
44
- fluid: [],
45
- },
46
- typographySettings: {
47
- fluid: true,
48
- },
49
- expected:
50
- 'clamp(21px, 1.3125rem + ((1vw - 7.68px) * 2.524), 42px)',
14
+ typographySettings: undefined,
15
+ expected: '28px',
16
+ },
17
+
18
+ {
19
+ message: 'Default return value where font size is 0.',
20
+ preset: {
21
+ size: 0,
51
22
  },
23
+ typographySettings: undefined,
24
+ expected: 0,
25
+ },
52
26
 
53
- // Should return default fluid values with null values.
54
- {
55
- preset: {
56
- size: '28px',
57
- fluid: null,
58
- },
59
- typographySettings: {
60
- fluid: true,
27
+ {
28
+ message: "Default return value where font size is '0'.",
29
+ preset: {
30
+ size: '0',
31
+ },
32
+ typographySettings: undefined,
33
+ expected: '0',
34
+ },
35
+
36
+ {
37
+ message:
38
+ 'Default return non-fluid value where `size` is undefined.',
39
+ preset: {
40
+ size: undefined,
41
+ },
42
+ typographySettings: undefined,
43
+ expected: undefined,
44
+ },
45
+
46
+ {
47
+ message: 'return non-fluid value when fluid is `false`.',
48
+ preset: {
49
+ size: '28px',
50
+ fluid: false,
51
+ },
52
+ typographySettings: {
53
+ fluid: true,
54
+ },
55
+ expected: '28px',
56
+ },
57
+
58
+ {
59
+ message:
60
+ 'Should coerce integer to `px` and return fluid value.',
61
+ preset: {
62
+ size: 33,
63
+ fluid: true,
64
+ },
65
+ typographySettings: {
66
+ fluid: true,
67
+ },
68
+ expected:
69
+ 'clamp(24.75px, 1.547rem + ((1vw - 7.68px) * 2.975), 49.5px)',
70
+ },
71
+
72
+ {
73
+ message: 'coerce float to `px` and return fluid value.',
74
+ preset: {
75
+ size: 100.23,
76
+ fluid: true,
77
+ },
78
+ typographySettings: {
79
+ fluid: true,
80
+ },
81
+ expected:
82
+ 'clamp(75.173px, 4.698rem + ((1vw - 7.68px) * 9.035), 150.345px)',
83
+ },
84
+
85
+ {
86
+ message: 'return incoming value when already clamped.',
87
+ preset: {
88
+ size: 'clamp(21px, 1.313rem + ((1vw - 7.68px) * 2.524), 42px)',
89
+ fluid: false,
90
+ },
91
+ typographySettings: {
92
+ fluid: true,
93
+ },
94
+ expected:
95
+ 'clamp(21px, 1.313rem + ((1vw - 7.68px) * 2.524), 42px)',
96
+ },
97
+
98
+ {
99
+ message: 'return incoming value with unsupported unit.',
100
+ preset: {
101
+ size: '1000%',
102
+ fluid: false,
103
+ },
104
+ typographySettings: {
105
+ fluid: true,
106
+ },
107
+ expected: '1000%',
108
+ },
109
+
110
+ {
111
+ message: 'return fluid value.',
112
+ preset: {
113
+ size: '1.75rem',
114
+ },
115
+ typographySettings: {
116
+ fluid: true,
117
+ },
118
+ expected:
119
+ 'clamp(1.313rem, 1.313rem + ((1vw - 0.48rem) * 2.523), 2.625rem)',
120
+ },
121
+
122
+ {
123
+ message: 'return fluid value for floats with units.',
124
+ preset: {
125
+ size: '100.175px',
126
+ },
127
+ typographySettings: {
128
+ fluid: true,
129
+ },
130
+ expected:
131
+ 'clamp(75.131px, 4.696rem + ((1vw - 7.68px) * 9.03), 150.263px)',
132
+ },
133
+
134
+ {
135
+ message:
136
+ 'Should return default fluid values with empty fluid array.',
137
+ preset: {
138
+ size: '28px',
139
+ fluid: [],
140
+ },
141
+ typographySettings: {
142
+ fluid: true,
143
+ },
144
+ expected:
145
+ 'clamp(21px, 1.313rem + ((1vw - 7.68px) * 2.524), 42px)',
146
+ },
147
+
148
+ {
149
+ message: 'return default fluid values with null value.',
150
+ preset: {
151
+ size: '28px',
152
+ fluid: null,
153
+ },
154
+ typographySettings: {
155
+ fluid: true,
156
+ },
157
+ expected:
158
+ 'clamp(21px, 1.313rem + ((1vw - 7.68px) * 2.524), 42px)',
159
+ },
160
+
161
+ {
162
+ message:
163
+ 'return clamped value if min font size is greater than max.',
164
+ preset: {
165
+ size: '3rem',
166
+ fluid: {
167
+ min: '5rem',
168
+ max: '32px',
61
169
  },
62
- expected:
63
- 'clamp(21px, 1.3125rem + ((1vw - 7.68px) * 2.524), 42px)',
64
- },
65
-
66
- // Should return size with invalid fluid units.
67
- {
68
- preset: {
69
- size: '10em',
70
- fluid: {
71
- min: '20vw',
72
- max: '50%',
73
- },
170
+ },
171
+ typographySettings: {
172
+ fluid: true,
173
+ },
174
+ expected:
175
+ 'clamp(5rem, 5rem + ((1vw - 0.48rem) * -5.769), 32px)',
176
+ },
177
+
178
+ {
179
+ message: 'return size with invalid fluid units.',
180
+ preset: {
181
+ size: '10em',
182
+ fluid: {
183
+ min: '20vw',
184
+ max: '50%',
74
185
  },
75
- typographySettings: {
76
- fluid: true,
186
+ },
187
+ typographySettings: {
188
+ fluid: true,
189
+ },
190
+ expected: '10em',
191
+ },
192
+
193
+ {
194
+ message:
195
+ 'return clamped using font size where no min is given and size is less than default min size.',
196
+ preset: {
197
+ size: '3px',
198
+ },
199
+ typographySettings: {
200
+ fluid: true,
201
+ },
202
+ expected:
203
+ 'clamp(3px, 0.188rem + ((1vw - 7.68px) * 0.18), 4.5px)',
204
+ },
205
+
206
+ {
207
+ message:
208
+ 'return fluid clamp value with different min max units.',
209
+ preset: {
210
+ size: '28px',
211
+ fluid: {
212
+ min: '20px',
213
+ max: '50rem',
77
214
  },
78
- expected: '10em',
79
- },
80
- // Should return fluid clamp value.
81
- {
82
- preset: {
83
- size: '28px',
84
- fluid: {
85
- min: '20px',
86
- max: '50rem',
87
- },
215
+ },
216
+ typographySettings: {
217
+ fluid: true,
218
+ },
219
+ expected:
220
+ 'clamp(20px, 1.25rem + ((1vw - 7.68px) * 93.75), 50rem)',
221
+ },
222
+ //
223
+ {
224
+ message:
225
+ ' Should return clamp value with default fluid max value.',
226
+ preset: {
227
+ size: '28px',
228
+ fluid: {
229
+ min: '2.6rem',
88
230
  },
89
- typographySettings: {
90
- fluid: true,
231
+ },
232
+ typographySettings: {
233
+ fluid: true,
234
+ },
235
+ expected:
236
+ 'clamp(2.6rem, 2.6rem + ((1vw - 0.48rem) * 0.048), 42px)',
237
+ },
238
+
239
+ {
240
+ message:
241
+ 'Should return clamp value with default fluid min value.',
242
+ preset: {
243
+ size: '28px',
244
+ fluid: {
245
+ max: '80px',
91
246
  },
92
- expected:
93
- 'clamp(20px, 1.25rem + ((1vw - 7.68px) * 93.75), 50rem)',
94
- },
95
- // Should return clamp value with default fluid max value.
96
- {
97
- preset: {
98
- size: '28px',
99
- fluid: {
100
- min: '2.6rem',
101
- },
247
+ },
248
+ typographySettings: {
249
+ fluid: true,
250
+ },
251
+ expected:
252
+ 'clamp(21px, 1.313rem + ((1vw - 7.68px) * 7.091), 80px)',
253
+ },
254
+
255
+ {
256
+ message: 'adjust computed min in px to min limit.',
257
+ preset: {
258
+ size: '14px',
259
+ },
260
+ typographySettings: {
261
+ fluid: true,
262
+ },
263
+ expected:
264
+ 'clamp(14px, 0.875rem + ((1vw - 7.68px) * 0.841), 21px)',
265
+ },
266
+
267
+ {
268
+ message: 'adjust computed min in rem to min limit.',
269
+ preset: {
270
+ size: '1.1rem',
271
+ },
272
+ typographySettings: {
273
+ fluid: true,
274
+ },
275
+ expected:
276
+ 'clamp(0.875rem, 0.875rem + ((1vw - 0.48rem) * 1.49), 1.65rem)',
277
+ },
278
+
279
+ {
280
+ message: 'adjust computed min in em to min limit.',
281
+ preset: {
282
+ size: '1.1em',
283
+ },
284
+ typographySettings: {
285
+ fluid: true,
286
+ },
287
+ expected:
288
+ 'clamp(0.875em, 0.875rem + ((1vw - 0.48em) * 1.49), 1.65em)',
289
+ },
290
+
291
+ {
292
+ message: 'adjust fluid min value in px to min limit',
293
+ preset: {
294
+ size: '20px',
295
+ fluid: {
296
+ min: '12px',
102
297
  },
103
- typographySettings: {
104
- fluid: true,
298
+ },
299
+ typographySettings: {
300
+ fluid: true,
301
+ },
302
+ expected:
303
+ 'clamp(14px, 0.875rem + ((1vw - 7.68px) * 1.923), 30px)',
304
+ },
305
+
306
+ {
307
+ message: 'adjust fluid min value in rem to min limit.',
308
+ preset: {
309
+ size: '1.5rem',
310
+ fluid: {
311
+ min: '0.5rem',
105
312
  },
106
- expected:
107
- 'clamp(2.6rem, 2.6rem + ((1vw - 0.48rem) * 0.048), 42px)',
108
- },
109
- // Should return clamp value with default fluid min value.
110
- {
111
- preset: {
112
- size: '28px',
113
- fluid: {
114
- max: '80px',
115
- },
313
+ },
314
+ typographySettings: {
315
+ fluid: true,
316
+ },
317
+ expected:
318
+ 'clamp(0.875rem, 0.875rem + ((1vw - 0.48rem) * 2.644), 2.25rem)',
319
+ },
320
+
321
+ {
322
+ message: 'adjust fluid min value but honor max value.',
323
+ preset: {
324
+ size: '1.5rem',
325
+ fluid: {
326
+ min: '0.5rem',
327
+ max: '5rem',
116
328
  },
117
- typographySettings: {
118
- fluid: true,
329
+ },
330
+ typographySettings: {
331
+ fluid: true,
332
+ },
333
+ expected:
334
+ 'clamp(0.875rem, 0.875rem + ((1vw - 0.48rem) * 7.933), 5rem)',
335
+ },
336
+
337
+ {
338
+ message:
339
+ 'return a fluid font size a min and max font sizes are equal.',
340
+ preset: {
341
+ size: '4rem',
342
+ fluid: {
343
+ min: '30px',
344
+ max: '30px',
119
345
  },
120
- expected:
121
- 'clamp(21px, 1.3125rem + ((1vw - 7.68px) * 7.091), 80px)',
122
346
  },
123
- ].forEach( ( { preset, typographySettings, expected } ) => {
347
+ typographySettings: {
348
+ fluid: true,
349
+ },
350
+ expected: 'clamp(30px, 1.875rem + ((1vw - 7.68px) * 1), 30px)',
351
+ },
352
+ ].forEach( ( { message, preset, typographySettings, expected } ) => {
353
+ it( `should ${ message }`, () => {
124
354
  expect(
125
355
  getTypographyFontSizeValue( preset, typographySettings )
126
356
  ).toBe( expected );
@@ -711,10 +711,11 @@ describe( 'global styles renderer', () => {
711
711
  },
712
712
  typography: {
713
713
  fontFamily: 'sans-serif',
714
+ fontSize: '14px',
714
715
  },
715
716
  };
716
717
 
717
- it( 'Should output padding variables and other properties if useRootPaddingAwareAlignments is enabled', () => {
718
+ it( 'should output padding variables and other properties if useRootPaddingAwareAlignments is enabled', () => {
718
719
  expect(
719
720
  getStylesDeclarations( blockStyles, 'body', true )
720
721
  ).toEqual( [
@@ -724,10 +725,11 @@ describe( 'global styles renderer', () => {
724
725
  '--wp--style--root--padding-left: 33px',
725
726
  'background-color: var(--wp--preset--color--light-green-cyan)',
726
727
  'font-family: sans-serif',
728
+ 'font-size: 14px',
727
729
  ] );
728
730
  } );
729
731
 
730
- it( 'Should output padding and other properties if useRootPaddingAwareAlignments is disabled', () => {
732
+ it( 'should output padding and other properties if useRootPaddingAwareAlignments is disabled', () => {
731
733
  expect(
732
734
  getStylesDeclarations( blockStyles, 'body', false )
733
735
  ).toEqual( [
@@ -737,10 +739,11 @@ describe( 'global styles renderer', () => {
737
739
  'padding-bottom: 33px',
738
740
  'padding-left: 33px',
739
741
  'font-family: sans-serif',
742
+ 'font-size: 14px',
740
743
  ] );
741
744
  } );
742
745
 
743
- it( 'Should not output padding variables if selector is not root', () => {
746
+ it( 'should not output padding variables if selector is not root', () => {
744
747
  expect(
745
748
  getStylesDeclarations(
746
749
  blockStyles,
@@ -754,6 +757,57 @@ describe( 'global styles renderer', () => {
754
757
  'padding-bottom: 33px',
755
758
  'padding-left: 33px',
756
759
  'font-family: sans-serif',
760
+ 'font-size: 14px',
761
+ ] );
762
+ } );
763
+
764
+ it( 'should output clamp values for font-size when fluid typography is enabled', () => {
765
+ expect(
766
+ getStylesDeclarations(
767
+ blockStyles,
768
+ '.wp-block-site-title',
769
+ true,
770
+ {
771
+ settings: {
772
+ typography: {
773
+ fluid: true,
774
+ },
775
+ },
776
+ }
777
+ )
778
+ ).toEqual( [
779
+ 'background-color: var(--wp--preset--color--light-green-cyan)',
780
+ 'padding-top: 33px',
781
+ 'padding-right: 33px',
782
+ 'padding-bottom: 33px',
783
+ 'padding-left: 33px',
784
+ 'font-family: sans-serif',
785
+ 'font-size: clamp(14px, 0.875rem + ((1vw - 7.68px) * 0.841), 21px)',
786
+ ] );
787
+ } );
788
+
789
+ it( 'should output direct values for font-size when fluid typography is disabled', () => {
790
+ expect(
791
+ getStylesDeclarations(
792
+ blockStyles,
793
+ '.wp-block-site-title',
794
+ true,
795
+ {
796
+ settings: {
797
+ typography: {
798
+ fluid: false,
799
+ },
800
+ },
801
+ }
802
+ )
803
+ ).toEqual( [
804
+ 'background-color: var(--wp--preset--color--light-green-cyan)',
805
+ 'padding-top: 33px',
806
+ 'padding-right: 33px',
807
+ 'padding-bottom: 33px',
808
+ 'padding-left: 33px',
809
+ 'font-family: sans-serif',
810
+ 'font-size: 14px',
757
811
  ] );
758
812
  } );
759
813
  } );