@mui/system 7.0.1 → 7.1.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 (283) hide show
  1. package/Box/Box.d.ts +12 -31
  2. package/CHANGELOG.md +157 -0
  3. package/Grid/createGrid.js +1 -2
  4. package/InitColorSchemeScript/InitColorSchemeScript.js +1 -1
  5. package/Stack/createStack.js +1 -2
  6. package/borders/borders.d.ts +2 -1
  7. package/breakpoints/breakpoints.d.ts +1 -1
  8. package/compose/compose.d.ts +14 -1
  9. package/compose/index.d.ts +1 -1
  10. package/cssGrid/cssGrid.d.ts +2 -1
  11. package/cssVars/cssVarsParser.d.ts +1 -1
  12. package/display/display.d.ts +2 -1
  13. package/esm/Box/Box.d.ts +12 -31
  14. package/esm/Grid/createGrid.js +1 -2
  15. package/esm/InitColorSchemeScript/InitColorSchemeScript.js +1 -1
  16. package/esm/Stack/createStack.js +1 -2
  17. package/esm/borders/borders.d.ts +2 -1
  18. package/esm/breakpoints/breakpoints.d.ts +1 -1
  19. package/esm/compose/compose.d.ts +14 -1
  20. package/esm/compose/index.d.ts +1 -1
  21. package/esm/cssGrid/cssGrid.d.ts +2 -1
  22. package/esm/cssVars/cssVarsParser.d.ts +1 -1
  23. package/esm/display/display.d.ts +2 -1
  24. package/esm/flexbox/flexbox.d.ts +15 -1
  25. package/esm/index.d.ts +10 -0
  26. package/esm/index.js +1 -1
  27. package/esm/memoTheme.d.ts +1 -1
  28. package/esm/palette/palette.d.ts +2 -1
  29. package/esm/positions/positions.d.ts +2 -1
  30. package/esm/shadows/shadows.d.ts +2 -1
  31. package/esm/sizing/sizing.d.ts +2 -1
  32. package/esm/spacing/spacing.d.ts +2 -1
  33. package/esm/style/style.d.ts +5 -1
  34. package/esm/styleFunctionSx/defaultSxConfig.d.ts +1 -2
  35. package/esm/typography/typography.d.ts +2 -1
  36. package/esm/useMediaQuery/useMediaQuery.js +3 -0
  37. package/esm/useThemeProps/getThemeProps.d.ts +0 -5
  38. package/esm/version/index.js +3 -3
  39. package/flexbox/flexbox.d.ts +15 -1
  40. package/index.d.ts +10 -0
  41. package/index.js +1 -1
  42. package/memoTheme.d.ts +1 -1
  43. package/package.json +7 -15
  44. package/palette/palette.d.ts +2 -1
  45. package/positions/positions.d.ts +2 -1
  46. package/shadows/shadows.d.ts +2 -1
  47. package/sizing/sizing.d.ts +2 -1
  48. package/spacing/spacing.d.ts +2 -1
  49. package/style/style.d.ts +5 -1
  50. package/styleFunctionSx/defaultSxConfig.d.ts +1 -2
  51. package/typography/typography.d.ts +2 -1
  52. package/useMediaQuery/useMediaQuery.js +3 -0
  53. package/useThemeProps/getThemeProps.d.ts +0 -5
  54. package/version/index.js +3 -3
  55. package/modern/Box/Box.d.ts +0 -72
  56. package/modern/Box/Box.js +0 -30
  57. package/modern/Box/boxClasses.d.ts +0 -7
  58. package/modern/Box/boxClasses.js +0 -3
  59. package/modern/Box/index.d.ts +0 -4
  60. package/modern/Box/index.js +0 -3
  61. package/modern/CSSProperties.d.ts +0 -7
  62. package/modern/Container/Container.d.ts +0 -13
  63. package/modern/Container/Container.js +0 -61
  64. package/modern/Container/ContainerProps.d.ts +0 -40
  65. package/modern/Container/ContainerProps.js +0 -1
  66. package/modern/Container/containerClasses.d.ts +0 -22
  67. package/modern/Container/containerClasses.js +0 -7
  68. package/modern/Container/createContainer.d.ts +0 -18
  69. package/modern/Container/createContainer.js +0 -149
  70. package/modern/Container/index.d.ts +0 -4
  71. package/modern/Container/index.js +0 -3
  72. package/modern/DefaultPropsProvider/DefaultPropsProvider.d.ts +0 -18
  73. package/modern/DefaultPropsProvider/DefaultPropsProvider.js +0 -64
  74. package/modern/DefaultPropsProvider/index.d.ts +0 -1
  75. package/modern/DefaultPropsProvider/index.js +0 -1
  76. package/modern/GlobalStyles/GlobalStyles.d.ts +0 -17
  77. package/modern/GlobalStyles/GlobalStyles.js +0 -37
  78. package/modern/GlobalStyles/index.d.ts +0 -2
  79. package/modern/GlobalStyles/index.js +0 -2
  80. package/modern/Grid/Grid.d.ts +0 -13
  81. package/modern/Grid/Grid.js +0 -106
  82. package/modern/Grid/GridProps.d.ts +0 -103
  83. package/modern/Grid/GridProps.js +0 -1
  84. package/modern/Grid/createGrid.d.ts +0 -13
  85. package/modern/Grid/createGrid.js +0 -155
  86. package/modern/Grid/deleteLegacyGridProps.d.ts +0 -11
  87. package/modern/Grid/deleteLegacyGridProps.js +0 -41
  88. package/modern/Grid/gridClasses.d.ts +0 -20
  89. package/modern/Grid/gridClasses.js +0 -19
  90. package/modern/Grid/gridGenerator.d.ts +0 -42
  91. package/modern/Grid/gridGenerator.js +0 -193
  92. package/modern/Grid/index.d.ts +0 -7
  93. package/modern/Grid/index.js +0 -7
  94. package/modern/Grid/traverseBreakpoints.d.ts +0 -7
  95. package/modern/Grid/traverseBreakpoints.js +0 -42
  96. package/modern/InitColorSchemeScript/InitColorSchemeScript.d.ts +0 -51
  97. package/modern/InitColorSchemeScript/InitColorSchemeScript.js +0 -78
  98. package/modern/InitColorSchemeScript/index.d.ts +0 -2
  99. package/modern/InitColorSchemeScript/index.js +0 -1
  100. package/modern/RtlProvider/index.d.ts +0 -8
  101. package/modern/RtlProvider/index.js +0 -24
  102. package/modern/Stack/Stack.d.ts +0 -14
  103. package/modern/Stack/Stack.js +0 -62
  104. package/modern/Stack/StackProps.d.ts +0 -53
  105. package/modern/Stack/StackProps.js +0 -1
  106. package/modern/Stack/createStack.d.ts +0 -24
  107. package/modern/Stack/createStack.js +0 -173
  108. package/modern/Stack/index.d.ts +0 -5
  109. package/modern/Stack/index.js +0 -5
  110. package/modern/Stack/stackClasses.d.ts +0 -8
  111. package/modern/Stack/stackClasses.js +0 -7
  112. package/modern/ThemeProvider/ThemeProvider.d.ts +0 -24
  113. package/modern/ThemeProvider/ThemeProvider.js +0 -97
  114. package/modern/ThemeProvider/index.d.ts +0 -2
  115. package/modern/ThemeProvider/index.js +0 -1
  116. package/modern/borders/borders.d.ts +0 -14
  117. package/modern/borders/borders.js +0 -49
  118. package/modern/borders/index.d.ts +0 -2
  119. package/modern/borders/index.js +0 -2
  120. package/modern/breakpoints/breakpoints.d.ts +0 -19
  121. package/modern/breakpoints/breakpoints.js +0 -171
  122. package/modern/breakpoints/index.d.ts +0 -2
  123. package/modern/breakpoints/index.js +0 -2
  124. package/modern/colorManipulator/colorManipulator.d.ts +0 -25
  125. package/modern/colorManipulator/colorManipulator.js +0 -349
  126. package/modern/colorManipulator/index.d.ts +0 -1
  127. package/modern/colorManipulator/index.js +0 -1
  128. package/modern/compose/compose.d.ts +0 -2
  129. package/modern/compose/compose.js +0 -24
  130. package/modern/compose/index.d.ts +0 -1
  131. package/modern/compose/index.js +0 -1
  132. package/modern/createBox/createBox.d.ts +0 -9
  133. package/modern/createBox/createBox.js +0 -35
  134. package/modern/createBox/index.d.ts +0 -1
  135. package/modern/createBox/index.js +0 -1
  136. package/modern/createBreakpoints/createBreakpoints.d.ts +0 -78
  137. package/modern/createBreakpoints/createBreakpoints.js +0 -81
  138. package/modern/createBreakpoints/index.d.ts +0 -3
  139. package/modern/createBreakpoints/index.js +0 -3
  140. package/modern/createStyled/createStyled.d.ts +0 -27
  141. package/modern/createStyled/createStyled.js +0 -276
  142. package/modern/createStyled/index.d.ts +0 -2
  143. package/modern/createStyled/index.js +0 -2
  144. package/modern/createTheme/applyStyles.d.ts +0 -67
  145. package/modern/createTheme/applyStyles.js +0 -87
  146. package/modern/createTheme/createSpacing.d.ts +0 -10
  147. package/modern/createTheme/createSpacing.js +0 -31
  148. package/modern/createTheme/createTheme.d.ts +0 -54
  149. package/modern/createTheme/createTheme.js +0 -49
  150. package/modern/createTheme/index.d.ts +0 -4
  151. package/modern/createTheme/index.js +0 -3
  152. package/modern/createTheme/shape.d.ts +0 -6
  153. package/modern/createTheme/shape.js +0 -4
  154. package/modern/cssContainerQueries/cssContainerQueries.d.ts +0 -23
  155. package/modern/cssContainerQueries/cssContainerQueries.js +0 -69
  156. package/modern/cssContainerQueries/index.d.ts +0 -3
  157. package/modern/cssContainerQueries/index.js +0 -2
  158. package/modern/cssGrid/cssGrid.d.ts +0 -15
  159. package/modern/cssGrid/cssGrid.js +0 -85
  160. package/modern/cssGrid/index.d.ts +0 -2
  161. package/modern/cssGrid/index.js +0 -2
  162. package/modern/cssVars/createCssVarsProvider.d.ts +0 -141
  163. package/modern/cssVars/createCssVarsProvider.js +0 -338
  164. package/modern/cssVars/createCssVarsTheme.d.ts +0 -15
  165. package/modern/cssVars/createCssVarsTheme.js +0 -21
  166. package/modern/cssVars/createGetCssVar.d.ts +0 -5
  167. package/modern/cssVars/createGetCssVar.js +0 -22
  168. package/modern/cssVars/cssVarsParser.d.ts +0 -64
  169. package/modern/cssVars/cssVarsParser.js +0 -129
  170. package/modern/cssVars/getColorSchemeSelector.d.ts +0 -1
  171. package/modern/cssVars/getColorSchemeSelector.js +0 -26
  172. package/modern/cssVars/index.d.ts +0 -8
  173. package/modern/cssVars/index.js +0 -5
  174. package/modern/cssVars/localStorageManager.d.ts +0 -34
  175. package/modern/cssVars/localStorageManager.js +0 -51
  176. package/modern/cssVars/prepareCssVars.d.ts +0 -16
  177. package/modern/cssVars/prepareCssVars.js +0 -153
  178. package/modern/cssVars/prepareTypographyVars.d.ts +0 -4
  179. package/modern/cssVars/prepareTypographyVars.js +0 -11
  180. package/modern/cssVars/useCurrentColorScheme.d.ts +0 -56
  181. package/modern/cssVars/useCurrentColorScheme.js +0 -228
  182. package/modern/display/display.d.ts +0 -3
  183. package/modern/display/display.js +0 -27
  184. package/modern/display/index.d.ts +0 -2
  185. package/modern/display/index.js +0 -2
  186. package/modern/flexbox/flexbox.d.ts +0 -3
  187. package/modern/flexbox/flexbox.js +0 -43
  188. package/modern/flexbox/index.d.ts +0 -2
  189. package/modern/flexbox/index.js +0 -2
  190. package/modern/getThemeValue/getThemeValue.d.ts +0 -1
  191. package/modern/getThemeValue/getThemeValue.js +0 -51
  192. package/modern/getThemeValue/index.d.ts +0 -2
  193. package/modern/getThemeValue/index.js +0 -2
  194. package/modern/index.d.ts +0 -80
  195. package/modern/index.js +0 -75
  196. package/modern/memoTheme.d.ts +0 -12
  197. package/modern/memoTheme.js +0 -28
  198. package/modern/memoize/index.d.ts +0 -1
  199. package/modern/memoize/index.js +0 -1
  200. package/modern/memoize/memoize.d.ts +0 -1
  201. package/modern/memoize/memoize.js +0 -9
  202. package/modern/merge/index.d.ts +0 -1
  203. package/modern/merge/index.js +0 -1
  204. package/modern/merge/merge.d.ts +0 -1
  205. package/modern/merge/merge.js +0 -10
  206. package/modern/package.json +0 -1
  207. package/modern/palette/index.d.ts +0 -2
  208. package/modern/palette/index.js +0 -2
  209. package/modern/palette/palette.d.ts +0 -5
  210. package/modern/palette/palette.js +0 -26
  211. package/modern/positions/index.d.ts +0 -2
  212. package/modern/positions/index.js +0 -2
  213. package/modern/positions/positions.d.ts +0 -3
  214. package/modern/positions/positions.js +0 -22
  215. package/modern/preprocessStyles.d.ts +0 -5
  216. package/modern/preprocessStyles.js +0 -25
  217. package/modern/propsToClassKey/index.d.ts +0 -1
  218. package/modern/propsToClassKey/index.js +0 -1
  219. package/modern/propsToClassKey/propsToClassKey.d.ts +0 -1
  220. package/modern/propsToClassKey/propsToClassKey.js +0 -25
  221. package/modern/responsivePropType/index.d.ts +0 -1
  222. package/modern/responsivePropType/index.js +0 -1
  223. package/modern/responsivePropType/responsivePropType.d.ts +0 -2
  224. package/modern/responsivePropType/responsivePropType.js +0 -3
  225. package/modern/shadows/index.d.ts +0 -1
  226. package/modern/shadows/index.js +0 -1
  227. package/modern/shadows/shadows.d.ts +0 -3
  228. package/modern/shadows/shadows.js +0 -6
  229. package/modern/sizing/index.d.ts +0 -2
  230. package/modern/sizing/index.js +0 -2
  231. package/modern/sizing/sizing.d.ts +0 -12
  232. package/modern/sizing/sizing.js +0 -64
  233. package/modern/spacing/index.d.ts +0 -2
  234. package/modern/spacing/index.js +0 -2
  235. package/modern/spacing/spacing.d.ts +0 -19
  236. package/modern/spacing/spacing.js +0 -157
  237. package/modern/style/index.d.ts +0 -2
  238. package/modern/style/index.js +0 -2
  239. package/modern/style/style.d.ts +0 -19
  240. package/modern/style/style.js +0 -75
  241. package/modern/styleFunctionSx/AliasesCSSProperties.d.ts +0 -269
  242. package/modern/styleFunctionSx/AliasesCSSProperties.js +0 -1
  243. package/modern/styleFunctionSx/OverwriteCSSProperties.d.ts +0 -54
  244. package/modern/styleFunctionSx/OverwriteCSSProperties.js +0 -1
  245. package/modern/styleFunctionSx/StandardCssProperties.d.ts +0 -2
  246. package/modern/styleFunctionSx/StandardCssProperties.js +0 -1
  247. package/modern/styleFunctionSx/defaultSxConfig.d.ts +0 -15
  248. package/modern/styleFunctionSx/defaultSxConfig.js +0 -294
  249. package/modern/styleFunctionSx/extendSxProp.d.ts +0 -4
  250. package/modern/styleFunctionSx/extendSxProp.js +0 -51
  251. package/modern/styleFunctionSx/index.d.ts +0 -9
  252. package/modern/styleFunctionSx/index.js +0 -4
  253. package/modern/styleFunctionSx/styleFunctionSx.d.ts +0 -62
  254. package/modern/styleFunctionSx/styleFunctionSx.js +0 -127
  255. package/modern/styled/index.d.ts +0 -1
  256. package/modern/styled/index.js +0 -1
  257. package/modern/styled/styled.d.ts +0 -3
  258. package/modern/styled/styled.js +0 -3
  259. package/modern/typography/index.d.ts +0 -2
  260. package/modern/typography/index.js +0 -2
  261. package/modern/typography/typography.d.ts +0 -12
  262. package/modern/typography/typography.js +0 -37
  263. package/modern/useMediaQuery/index.d.ts +0 -2
  264. package/modern/useMediaQuery/index.js +0 -2
  265. package/modern/useMediaQuery/useMediaQuery.d.ts +0 -32
  266. package/modern/useMediaQuery/useMediaQuery.js +0 -118
  267. package/modern/useTheme/index.d.ts +0 -2
  268. package/modern/useTheme/index.js +0 -2
  269. package/modern/useTheme/useTheme.d.ts +0 -2
  270. package/modern/useTheme/useTheme.js +0 -9
  271. package/modern/useThemeProps/getThemeProps.d.ts +0 -16
  272. package/modern/useThemeProps/getThemeProps.js +0 -12
  273. package/modern/useThemeProps/index.d.ts +0 -3
  274. package/modern/useThemeProps/index.js +0 -2
  275. package/modern/useThemeProps/useThemeProps.d.ts +0 -14
  276. package/modern/useThemeProps/useThemeProps.js +0 -20
  277. package/modern/useThemeWithoutDefault/index.d.ts +0 -1
  278. package/modern/useThemeWithoutDefault/index.js +0 -1
  279. package/modern/useThemeWithoutDefault/useThemeWithoutDefault.d.ts +0 -1
  280. package/modern/useThemeWithoutDefault/useThemeWithoutDefault.js +0 -12
  281. package/modern/version/index.d.ts +0 -6
  282. package/modern/version/index.js +0 -6
  283. package/tsconfig.build.tsbuildinfo +0 -1
@@ -1,10 +0,0 @@
1
- export type SpacingOptions = number | string | Spacing | ((abs: number) => number | string) | ((abs: number | string) => number | string) | ReadonlyArray<string | number>;
2
- export type SpacingArgument = number | string;
3
- export interface Spacing {
4
- (): string;
5
- (value: SpacingArgument): string;
6
- (topBottom: SpacingArgument, rightLeft: SpacingArgument): string;
7
- (top: SpacingArgument, rightLeft: SpacingArgument, bottom: SpacingArgument): string;
8
- (top: SpacingArgument, right: SpacingArgument, bottom: SpacingArgument, left: SpacingArgument): string;
9
- }
10
- export default function createSpacing(spacingInput?: SpacingOptions, transform?: Spacing | (() => undefined) | ((abs: number | string) => number | number)): Spacing;
@@ -1,31 +0,0 @@
1
- import { createUnarySpacing } from "../spacing/index.js";
2
-
3
- // The different signatures imply different meaning for their arguments that can't be expressed structurally.
4
- // We express the difference with variable names.
5
-
6
- export default function createSpacing(spacingInput = 8,
7
- // Material Design layouts are visually balanced. Most measurements align to an 8dp grid, which aligns both spacing and the overall layout.
8
- // Smaller components, such as icons, can align to a 4dp grid.
9
- // https://m2.material.io/design/layout/understanding-layout.html
10
- transform = createUnarySpacing({
11
- spacing: spacingInput
12
- })) {
13
- // Already transformed.
14
- if (spacingInput.mui) {
15
- return spacingInput;
16
- }
17
- const spacing = (...argsInput) => {
18
- if (process.env.NODE_ENV !== 'production') {
19
- if (!(argsInput.length <= 4)) {
20
- console.error(`MUI: Too many arguments provided, expected between 0 and 4, got ${argsInput.length}`);
21
- }
22
- }
23
- const args = argsInput.length === 0 ? [1] : argsInput;
24
- return args.map(argument => {
25
- const output = transform(argument);
26
- return typeof output === 'number' ? `${output}px` : output;
27
- }).join(' ');
28
- };
29
- spacing.mui = true;
30
- return spacing;
31
- }
@@ -1,54 +0,0 @@
1
- import { CSSObject } from '@mui/styled-engine';
2
- import { Breakpoints, BreakpointsOptions } from "../createBreakpoints/createBreakpoints.js";
3
- import { Shape, ShapeOptions } from "./shape.js";
4
- import { Spacing, SpacingOptions } from "./createSpacing.js";
5
- import { SxConfig, SxProps } from "../styleFunctionSx/index.js";
6
- import { ApplyStyles } from "./applyStyles.js";
7
- import { CssContainerQueries } from "../cssContainerQueries/index.js";
8
- export { Breakpoint, Breakpoints, BreakpointOverrides } from "../createBreakpoints/createBreakpoints.js";
9
- export type Direction = 'ltr' | 'rtl';
10
- export interface Typography {}
11
- export interface Mixins {}
12
- export interface Shadows {}
13
- export interface Transitions {}
14
- export interface ZIndex {}
15
- export interface ThemeOptions {
16
- shape?: ShapeOptions;
17
- breakpoints?: BreakpointsOptions;
18
- direction?: Direction;
19
- mixins?: Mixins;
20
- palette?: Record<string, any>;
21
- shadows?: Shadows;
22
- spacing?: SpacingOptions;
23
- transitions?: Transitions;
24
- components?: Record<string, any>;
25
- typography?: Typography;
26
- zIndex?: ZIndex;
27
- unstable_sxConfig?: SxConfig;
28
- }
29
- export interface Theme extends CssContainerQueries {
30
- shape: Shape;
31
- breakpoints: Breakpoints;
32
- direction: Direction;
33
- palette: Record<string, any> & {
34
- mode: 'light' | 'dark';
35
- };
36
- shadows?: Shadows;
37
- spacing: Spacing;
38
- transitions?: Transitions;
39
- components?: Record<string, any>;
40
- mixins?: Mixins;
41
- typography?: Typography;
42
- zIndex?: ZIndex;
43
- applyStyles: ApplyStyles<'light' | 'dark'>;
44
- unstable_sxConfig: SxConfig;
45
- unstable_sx: (props: SxProps<Theme>) => CSSObject;
46
- }
47
-
48
- /**
49
- * Generate a theme base on the options received.
50
- * @param options Takes an incomplete theme object and adds the missing parts.
51
- * @param args Deep merge the arguments with the about to be returned theme.
52
- * @returns A complete, ready-to-use theme object.
53
- */
54
- export default function createTheme(options?: ThemeOptions, ...args: object[]): Theme;
@@ -1,49 +0,0 @@
1
- import deepmerge from '@mui/utils/deepmerge';
2
- import createBreakpoints from "../createBreakpoints/createBreakpoints.js";
3
- import cssContainerQueries from "../cssContainerQueries/index.js";
4
- import shape from "./shape.js";
5
- import createSpacing from "./createSpacing.js";
6
- import styleFunctionSx from "../styleFunctionSx/styleFunctionSx.js";
7
- import defaultSxConfig from "../styleFunctionSx/defaultSxConfig.js";
8
- import applyStyles from "./applyStyles.js";
9
- function createTheme(options = {}, ...args) {
10
- const {
11
- breakpoints: breakpointsInput = {},
12
- palette: paletteInput = {},
13
- spacing: spacingInput,
14
- shape: shapeInput = {},
15
- ...other
16
- } = options;
17
- const breakpoints = createBreakpoints(breakpointsInput);
18
- const spacing = createSpacing(spacingInput);
19
- let muiTheme = deepmerge({
20
- breakpoints,
21
- direction: 'ltr',
22
- components: {},
23
- // Inject component definitions.
24
- palette: {
25
- mode: 'light',
26
- ...paletteInput
27
- },
28
- spacing,
29
- shape: {
30
- ...shape,
31
- ...shapeInput
32
- }
33
- }, other);
34
- muiTheme = cssContainerQueries(muiTheme);
35
- muiTheme.applyStyles = applyStyles;
36
- muiTheme = args.reduce((acc, argument) => deepmerge(acc, argument), muiTheme);
37
- muiTheme.unstable_sxConfig = {
38
- ...defaultSxConfig,
39
- ...other?.unstable_sxConfig
40
- };
41
- muiTheme.unstable_sx = function sx(props) {
42
- return styleFunctionSx({
43
- sx: props,
44
- theme: this
45
- });
46
- };
47
- return muiTheme;
48
- }
49
- export default createTheme;
@@ -1,4 +0,0 @@
1
- export { default } from "./createTheme.js";
2
- export * from "./createTheme.js";
3
- export { default as unstable_applyStyles } from "./applyStyles.js";
4
- export * from "./applyStyles.js";
@@ -1,3 +0,0 @@
1
- export { default } from "./createTheme.js";
2
- export { default as private_createBreakpoints } from "../createBreakpoints/createBreakpoints.js";
3
- export { default as unstable_applyStyles } from "./applyStyles.js";
@@ -1,6 +0,0 @@
1
- export interface Shape {
2
- borderRadius: number;
3
- }
4
- export type ShapeOptions = Partial<Shape>;
5
- declare const shape: Shape;
6
- export default shape;
@@ -1,4 +0,0 @@
1
- const shape = {
2
- borderRadius: 4
3
- };
4
- export default shape;
@@ -1,23 +0,0 @@
1
- import { Breakpoints } from "../createBreakpoints/createBreakpoints.js";
2
- export interface ContainerQueries {
3
- up: Breakpoints['up'];
4
- down: Breakpoints['down'];
5
- between: Breakpoints['between'];
6
- only: Breakpoints['only'];
7
- not: Breakpoints['not'];
8
- }
9
- export interface CssContainerQueries {
10
- containerQueries: ((name: string) => ContainerQueries) & ContainerQueries;
11
- }
12
- /**
13
- * For using in `sx` prop to sort the breakpoint from low to high.
14
- * Note: this function does not work and will not support multiple units.
15
- * e.g. input: { '@container (min-width:300px)': '1rem', '@container (min-width:40rem)': '2rem' }
16
- * output: { '@container (min-width:40rem)': '2rem', '@container (min-width:300px)': '1rem' } // since 40 < 300 eventhough 40rem > 300px
17
- */
18
- export declare function sortContainerQueries(theme: Partial<CssContainerQueries>, css: Record<string, any>): Record<string, any>;
19
- export declare function isCqShorthand(breakpointKeys: string[], value: string): boolean;
20
- export declare function getContainerQuery(theme: CssContainerQueries, shorthand: string): string | null;
21
- export default function cssContainerQueries<T extends {
22
- breakpoints: Breakpoints;
23
- }>(themeInput: T): T & CssContainerQueries;
@@ -1,69 +0,0 @@
1
- import _formatErrorMessage from "@mui/utils/formatMuiErrorMessage";
2
- /**
3
- * For using in `sx` prop to sort the breakpoint from low to high.
4
- * Note: this function does not work and will not support multiple units.
5
- * e.g. input: { '@container (min-width:300px)': '1rem', '@container (min-width:40rem)': '2rem' }
6
- * output: { '@container (min-width:40rem)': '2rem', '@container (min-width:300px)': '1rem' } // since 40 < 300 eventhough 40rem > 300px
7
- */
8
- export function sortContainerQueries(theme, css) {
9
- if (!theme.containerQueries) {
10
- return css;
11
- }
12
- const sorted = Object.keys(css).filter(key => key.startsWith('@container')).sort((a, b) => {
13
- const regex = /min-width:\s*([0-9.]+)/;
14
- return +(a.match(regex)?.[1] || 0) - +(b.match(regex)?.[1] || 0);
15
- });
16
- if (!sorted.length) {
17
- return css;
18
- }
19
- return sorted.reduce((acc, key) => {
20
- const value = css[key];
21
- delete acc[key];
22
- acc[key] = value;
23
- return acc;
24
- }, {
25
- ...css
26
- });
27
- }
28
- export function isCqShorthand(breakpointKeys, value) {
29
- return value === '@' || value.startsWith('@') && (breakpointKeys.some(key => value.startsWith(`@${key}`)) || !!value.match(/^@\d/));
30
- }
31
- export function getContainerQuery(theme, shorthand) {
32
- const matches = shorthand.match(/^@([^/]+)?\/?(.+)?$/);
33
- if (!matches) {
34
- if (process.env.NODE_ENV !== 'production') {
35
- throw new Error(process.env.NODE_ENV !== "production" ? `MUI: The provided shorthand ${`(${shorthand})`} is invalid. The format should be \`@<breakpoint | number>\` or \`@<breakpoint | number>/<container>\`.\n` + 'For example, `@sm` or `@600` or `@40rem/sidebar`.' : _formatErrorMessage(18, `(${shorthand})`));
36
- }
37
- return null;
38
- }
39
- const [, containerQuery, containerName] = matches;
40
- const value = Number.isNaN(+containerQuery) ? containerQuery || 0 : +containerQuery;
41
- return theme.containerQueries(containerName).up(value);
42
- }
43
- export default function cssContainerQueries(themeInput) {
44
- const toContainerQuery = (mediaQuery, name) => mediaQuery.replace('@media', name ? `@container ${name}` : '@container');
45
- function attachCq(node, name) {
46
- node.up = (...args) => toContainerQuery(themeInput.breakpoints.up(...args), name);
47
- node.down = (...args) => toContainerQuery(themeInput.breakpoints.down(...args), name);
48
- node.between = (...args) => toContainerQuery(themeInput.breakpoints.between(...args), name);
49
- node.only = (...args) => toContainerQuery(themeInput.breakpoints.only(...args), name);
50
- node.not = (...args) => {
51
- const result = toContainerQuery(themeInput.breakpoints.not(...args), name);
52
- if (result.includes('not all and')) {
53
- // `@container` does not work with `not all and`, so need to invert the logic
54
- return result.replace('not all and ', '').replace('min-width:', 'width<').replace('max-width:', 'width>').replace('and', 'or');
55
- }
56
- return result;
57
- };
58
- }
59
- const node = {};
60
- const containerQueries = name => {
61
- attachCq(node, name);
62
- return node;
63
- };
64
- attachCq(containerQueries);
65
- return {
66
- ...themeInput,
67
- containerQueries
68
- };
69
- }
@@ -1,3 +0,0 @@
1
- export { default } from "./cssContainerQueries.js";
2
- export { isCqShorthand, getContainerQuery, sortContainerQueries } from "./cssContainerQueries.js";
3
- export type { CssContainerQueries } from "./cssContainerQueries.js";
@@ -1,2 +0,0 @@
1
- export { default } from "./cssContainerQueries.js";
2
- export { isCqShorthand, getContainerQuery, sortContainerQueries } from "./cssContainerQueries.js";
@@ -1,15 +0,0 @@
1
- import { PropsFor, grid, SimpleStyleFunction } from "../Box/index.js";
2
- export const gap: SimpleStyleFunction<'gap'>;
3
- export const columnGap: SimpleStyleFunction<'columnGap'>;
4
- export const rowGap: SimpleStyleFunction<'rowGap'>;
5
- export const gridColumn: SimpleStyleFunction<'gridColumn'>;
6
- export const gridRow: SimpleStyleFunction<'gridRow'>;
7
- export const gridAutoFlow: SimpleStyleFunction<'gridAutoFlow'>;
8
- export const gridAutoColumns: SimpleStyleFunction<'gridAutoColumns'>;
9
- export const gridAutoRows: SimpleStyleFunction<'gridAutoRows'>;
10
- export const gridTemplateColumns: SimpleStyleFunction<'gridTemplateColumns'>;
11
- export const gridTemplateRows: SimpleStyleFunction<'gridTemplateRows'>;
12
- export const gridTemplateAreas: SimpleStyleFunction<'gridTemplateAreas'>;
13
- export const gridArea: SimpleStyleFunction<'gridArea'>;
14
- export type CssGridProps = PropsFor<typeof grid>;
15
- export default grid;
@@ -1,85 +0,0 @@
1
- import style from "../style/index.js";
2
- import compose from "../compose/index.js";
3
- import { createUnaryUnit, getValue } from "../spacing/index.js";
4
- import { handleBreakpoints } from "../breakpoints/index.js";
5
- import responsivePropType from "../responsivePropType/index.js";
6
-
7
- // false positive
8
- // eslint-disable-next-line react/function-component-definition
9
- export const gap = props => {
10
- if (props.gap !== undefined && props.gap !== null) {
11
- const transformer = createUnaryUnit(props.theme, 'spacing', 8, 'gap');
12
- const styleFromPropValue = propValue => ({
13
- gap: getValue(transformer, propValue)
14
- });
15
- return handleBreakpoints(props, props.gap, styleFromPropValue);
16
- }
17
- return null;
18
- };
19
- gap.propTypes = process.env.NODE_ENV !== 'production' ? {
20
- gap: responsivePropType
21
- } : {};
22
- gap.filterProps = ['gap'];
23
-
24
- // false positive
25
- // eslint-disable-next-line react/function-component-definition
26
- export const columnGap = props => {
27
- if (props.columnGap !== undefined && props.columnGap !== null) {
28
- const transformer = createUnaryUnit(props.theme, 'spacing', 8, 'columnGap');
29
- const styleFromPropValue = propValue => ({
30
- columnGap: getValue(transformer, propValue)
31
- });
32
- return handleBreakpoints(props, props.columnGap, styleFromPropValue);
33
- }
34
- return null;
35
- };
36
- columnGap.propTypes = process.env.NODE_ENV !== 'production' ? {
37
- columnGap: responsivePropType
38
- } : {};
39
- columnGap.filterProps = ['columnGap'];
40
-
41
- // false positive
42
- // eslint-disable-next-line react/function-component-definition
43
- export const rowGap = props => {
44
- if (props.rowGap !== undefined && props.rowGap !== null) {
45
- const transformer = createUnaryUnit(props.theme, 'spacing', 8, 'rowGap');
46
- const styleFromPropValue = propValue => ({
47
- rowGap: getValue(transformer, propValue)
48
- });
49
- return handleBreakpoints(props, props.rowGap, styleFromPropValue);
50
- }
51
- return null;
52
- };
53
- rowGap.propTypes = process.env.NODE_ENV !== 'production' ? {
54
- rowGap: responsivePropType
55
- } : {};
56
- rowGap.filterProps = ['rowGap'];
57
- export const gridColumn = style({
58
- prop: 'gridColumn'
59
- });
60
- export const gridRow = style({
61
- prop: 'gridRow'
62
- });
63
- export const gridAutoFlow = style({
64
- prop: 'gridAutoFlow'
65
- });
66
- export const gridAutoColumns = style({
67
- prop: 'gridAutoColumns'
68
- });
69
- export const gridAutoRows = style({
70
- prop: 'gridAutoRows'
71
- });
72
- export const gridTemplateColumns = style({
73
- prop: 'gridTemplateColumns'
74
- });
75
- export const gridTemplateRows = style({
76
- prop: 'gridTemplateRows'
77
- });
78
- export const gridTemplateAreas = style({
79
- prop: 'gridTemplateAreas'
80
- });
81
- export const gridArea = style({
82
- prop: 'gridArea'
83
- });
84
- const grid = compose(gap, columnGap, rowGap, gridColumn, gridRow, gridAutoFlow, gridAutoColumns, gridAutoRows, gridTemplateColumns, gridTemplateRows, gridTemplateAreas, gridArea);
85
- export default grid;
@@ -1,2 +0,0 @@
1
- export { default } from "./cssGrid.js";
2
- export * from "./cssGrid.js";
@@ -1,2 +0,0 @@
1
- export { default } from "./cssGrid.js";
2
- export * from "./cssGrid.js";
@@ -1,141 +0,0 @@
1
- import * as React from 'react';
2
- import InitColorSchemeScript from "../InitColorSchemeScript/index.js";
3
- import { Result } from "./useCurrentColorScheme.js";
4
- import type { StorageManager } from "./localStorageManager.js";
5
- export interface ColorSchemeContextValue<SupportedColorScheme extends string> extends Result<SupportedColorScheme> {
6
- allColorSchemes: SupportedColorScheme[];
7
- }
8
- export interface CssVarsProviderConfig<ColorScheme extends string> {
9
- /**
10
- * DOM attribute for applying color scheme
11
- * @default 'data-color-scheme'
12
- */
13
- attribute?: string;
14
- /**
15
- * localStorage key used to store application `mode`
16
- * @default 'mode'
17
- */
18
- modeStorageKey?: string;
19
- /**
20
- * localStorage key used to store `colorScheme`
21
- * @default 'color-scheme'
22
- */
23
- colorSchemeStorageKey?: string;
24
- /**
25
- * Design system default color scheme.
26
- * - provides string if the design system has one default color scheme (either light or dark)
27
- * - provides object if the design system has default light & dark color schemes
28
- */
29
- defaultColorScheme: ColorScheme | {
30
- light: ColorScheme;
31
- dark: ColorScheme;
32
- };
33
- /**
34
- * Disable CSS transitions when switching between modes or color schemes
35
- * @default false
36
- */
37
- disableTransitionOnChange?: boolean;
38
- /**
39
- * If `true`, theme values are recalculated when the mode changes.
40
- * The `theme.colorSchemes.{mode}.*` nodes will be shallow merged to the top-level of the theme.
41
- * @default false
42
- */
43
- forceThemeRerender?: boolean;
44
- }
45
- type Identify<I extends string | undefined, T> = I extends string ? T | { [k in I]: T } : T;
46
- export interface CreateCssVarsProviderResult<ColorScheme extends string, Identifier extends string | undefined = undefined> {
47
- CssVarsProvider: (props: React.PropsWithChildren<Partial<CssVarsProviderConfig<ColorScheme>> & {
48
- theme?: Identify<Identifier, {
49
- cssVariables?: false;
50
- cssVarPrefix?: string;
51
- colorSchemes: Partial<Record<ColorScheme, any>>;
52
- colorSchemeSelector?: 'media' | 'class' | 'data' | string;
53
- }>;
54
- /**
55
- * The default mode when the storage is empty,
56
- * require the theme to have `colorSchemes` with light and dark.
57
- * @default 'system'
58
- */
59
- defaultMode?: 'light' | 'dark' | 'system';
60
- /**
61
- * The document used to perform `disableTransitionOnChange` feature
62
- * @default document
63
- */
64
- documentNode?: Document | null;
65
- /**
66
- * The node used to attach the color-scheme attribute
67
- * @default document
68
- */
69
- colorSchemeNode?: Element | null;
70
- /**
71
- * The storage manager to be used for storing the mode and color scheme.
72
- * @default using `window.localStorage`
73
- */
74
- storageManager?: StorageManager | null;
75
- /**
76
- * The window that attaches the 'storage' event listener
77
- * @default window
78
- */
79
- storageWindow?: Window | null;
80
- /**
81
- * If `true`, the provider creates its own context and generate stylesheet as if it is a root `CssVarsProvider`.
82
- */
83
- disableNestedContext?: boolean;
84
- /**
85
- * If `true`, the style sheet won't be generated.
86
- *
87
- * This is useful for controlling nested CssVarsProvider behavior.
88
- * @default false
89
- */
90
- disableStyleSheetGeneration?: boolean;
91
- }>) => React.JSX.Element;
92
- useColorScheme: () => ColorSchemeContextValue<ColorScheme>;
93
- getInitColorSchemeScript: typeof InitColorSchemeScript;
94
- }
95
- export default function createCssVarsProvider<ColorScheme extends string, Identifier extends string | undefined = undefined>(options: CssVarsProviderConfig<ColorScheme> & {
96
- /**
97
- * The design system's unique id for getting the corresponded theme when there are multiple design systems.
98
- */
99
- themeId?: Identifier;
100
- /**
101
- * Design system default theme
102
- *
103
- * - The structure inside `theme.colorSchemes[colorScheme]` should be exactly the same in all color schemes because
104
- * those object of the color scheme will be used when the color scheme is active.
105
- *
106
- * {
107
- * colorSchemes: {
108
- * light: { ...lightColorSchemeValues },
109
- * dark: { ...darkColorSchemeValues }
110
- * }
111
- * }
112
- *
113
- * - If colorScheme is 'light', the `lightColorSchemeValues` will be merged to theme as `{ ...theme, ...lightColorSchemeValues }`
114
- * likewise, if colorScheme is 'dark', the `darkColorSchemeValues` will be merged to theme as `{ ...theme, ...darkColorSchemeValues }`
115
- *
116
- * - If the theme contains the same keys as the color scheme, their values will be merged.
117
- * Ex. {
118
- * colorSchemes: {
119
- * light: { palette: { primary: { ... } } },
120
- * dark: { palette: { primary: { ...} } }
121
- * },
122
- * palette: { shared: { ... } }
123
- * }
124
- *
125
- * becomes: {
126
- * colorSchemes: { ... },
127
- * palette: { shared: { ... }, primary: { ... } }
128
- * }
129
- */
130
- theme: any;
131
- /**
132
- * A function to be called after the CSS variables are attached. The result of this function will be the final theme pass to ThemeProvider.
133
- *
134
- * The example usage is the variant generation in Joy. We need to combine the token from user-input and the default theme first, then generate
135
- * variants from those tokens.
136
- */
137
- resolveTheme?: (theme: any) => any; // the type is any because it depends on the design system.
138
- }): CreateCssVarsProviderResult<ColorScheme, Identifier>;
139
-
140
- // disable automatic export
141
- export {};