@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.
- package/Box/Box.d.ts +12 -31
- package/CHANGELOG.md +157 -0
- package/Grid/createGrid.js +1 -2
- package/InitColorSchemeScript/InitColorSchemeScript.js +1 -1
- package/Stack/createStack.js +1 -2
- package/borders/borders.d.ts +2 -1
- package/breakpoints/breakpoints.d.ts +1 -1
- package/compose/compose.d.ts +14 -1
- package/compose/index.d.ts +1 -1
- package/cssGrid/cssGrid.d.ts +2 -1
- package/cssVars/cssVarsParser.d.ts +1 -1
- package/display/display.d.ts +2 -1
- package/esm/Box/Box.d.ts +12 -31
- package/esm/Grid/createGrid.js +1 -2
- package/esm/InitColorSchemeScript/InitColorSchemeScript.js +1 -1
- package/esm/Stack/createStack.js +1 -2
- package/esm/borders/borders.d.ts +2 -1
- package/esm/breakpoints/breakpoints.d.ts +1 -1
- package/esm/compose/compose.d.ts +14 -1
- package/esm/compose/index.d.ts +1 -1
- package/esm/cssGrid/cssGrid.d.ts +2 -1
- package/esm/cssVars/cssVarsParser.d.ts +1 -1
- package/esm/display/display.d.ts +2 -1
- package/esm/flexbox/flexbox.d.ts +15 -1
- package/esm/index.d.ts +10 -0
- package/esm/index.js +1 -1
- package/esm/memoTheme.d.ts +1 -1
- package/esm/palette/palette.d.ts +2 -1
- package/esm/positions/positions.d.ts +2 -1
- package/esm/shadows/shadows.d.ts +2 -1
- package/esm/sizing/sizing.d.ts +2 -1
- package/esm/spacing/spacing.d.ts +2 -1
- package/esm/style/style.d.ts +5 -1
- package/esm/styleFunctionSx/defaultSxConfig.d.ts +1 -2
- package/esm/typography/typography.d.ts +2 -1
- package/esm/useMediaQuery/useMediaQuery.js +3 -0
- package/esm/useThemeProps/getThemeProps.d.ts +0 -5
- package/esm/version/index.js +3 -3
- package/flexbox/flexbox.d.ts +15 -1
- package/index.d.ts +10 -0
- package/index.js +1 -1
- package/memoTheme.d.ts +1 -1
- package/package.json +7 -15
- package/palette/palette.d.ts +2 -1
- package/positions/positions.d.ts +2 -1
- package/shadows/shadows.d.ts +2 -1
- package/sizing/sizing.d.ts +2 -1
- package/spacing/spacing.d.ts +2 -1
- package/style/style.d.ts +5 -1
- package/styleFunctionSx/defaultSxConfig.d.ts +1 -2
- package/typography/typography.d.ts +2 -1
- package/useMediaQuery/useMediaQuery.js +3 -0
- package/useThemeProps/getThemeProps.d.ts +0 -5
- package/version/index.js +3 -3
- package/modern/Box/Box.d.ts +0 -72
- package/modern/Box/Box.js +0 -30
- package/modern/Box/boxClasses.d.ts +0 -7
- package/modern/Box/boxClasses.js +0 -3
- package/modern/Box/index.d.ts +0 -4
- package/modern/Box/index.js +0 -3
- package/modern/CSSProperties.d.ts +0 -7
- package/modern/Container/Container.d.ts +0 -13
- package/modern/Container/Container.js +0 -61
- package/modern/Container/ContainerProps.d.ts +0 -40
- package/modern/Container/ContainerProps.js +0 -1
- package/modern/Container/containerClasses.d.ts +0 -22
- package/modern/Container/containerClasses.js +0 -7
- package/modern/Container/createContainer.d.ts +0 -18
- package/modern/Container/createContainer.js +0 -149
- package/modern/Container/index.d.ts +0 -4
- package/modern/Container/index.js +0 -3
- package/modern/DefaultPropsProvider/DefaultPropsProvider.d.ts +0 -18
- package/modern/DefaultPropsProvider/DefaultPropsProvider.js +0 -64
- package/modern/DefaultPropsProvider/index.d.ts +0 -1
- package/modern/DefaultPropsProvider/index.js +0 -1
- package/modern/GlobalStyles/GlobalStyles.d.ts +0 -17
- package/modern/GlobalStyles/GlobalStyles.js +0 -37
- package/modern/GlobalStyles/index.d.ts +0 -2
- package/modern/GlobalStyles/index.js +0 -2
- package/modern/Grid/Grid.d.ts +0 -13
- package/modern/Grid/Grid.js +0 -106
- package/modern/Grid/GridProps.d.ts +0 -103
- package/modern/Grid/GridProps.js +0 -1
- package/modern/Grid/createGrid.d.ts +0 -13
- package/modern/Grid/createGrid.js +0 -155
- package/modern/Grid/deleteLegacyGridProps.d.ts +0 -11
- package/modern/Grid/deleteLegacyGridProps.js +0 -41
- package/modern/Grid/gridClasses.d.ts +0 -20
- package/modern/Grid/gridClasses.js +0 -19
- package/modern/Grid/gridGenerator.d.ts +0 -42
- package/modern/Grid/gridGenerator.js +0 -193
- package/modern/Grid/index.d.ts +0 -7
- package/modern/Grid/index.js +0 -7
- package/modern/Grid/traverseBreakpoints.d.ts +0 -7
- package/modern/Grid/traverseBreakpoints.js +0 -42
- package/modern/InitColorSchemeScript/InitColorSchemeScript.d.ts +0 -51
- package/modern/InitColorSchemeScript/InitColorSchemeScript.js +0 -78
- package/modern/InitColorSchemeScript/index.d.ts +0 -2
- package/modern/InitColorSchemeScript/index.js +0 -1
- package/modern/RtlProvider/index.d.ts +0 -8
- package/modern/RtlProvider/index.js +0 -24
- package/modern/Stack/Stack.d.ts +0 -14
- package/modern/Stack/Stack.js +0 -62
- package/modern/Stack/StackProps.d.ts +0 -53
- package/modern/Stack/StackProps.js +0 -1
- package/modern/Stack/createStack.d.ts +0 -24
- package/modern/Stack/createStack.js +0 -173
- package/modern/Stack/index.d.ts +0 -5
- package/modern/Stack/index.js +0 -5
- package/modern/Stack/stackClasses.d.ts +0 -8
- package/modern/Stack/stackClasses.js +0 -7
- package/modern/ThemeProvider/ThemeProvider.d.ts +0 -24
- package/modern/ThemeProvider/ThemeProvider.js +0 -97
- package/modern/ThemeProvider/index.d.ts +0 -2
- package/modern/ThemeProvider/index.js +0 -1
- package/modern/borders/borders.d.ts +0 -14
- package/modern/borders/borders.js +0 -49
- package/modern/borders/index.d.ts +0 -2
- package/modern/borders/index.js +0 -2
- package/modern/breakpoints/breakpoints.d.ts +0 -19
- package/modern/breakpoints/breakpoints.js +0 -171
- package/modern/breakpoints/index.d.ts +0 -2
- package/modern/breakpoints/index.js +0 -2
- package/modern/colorManipulator/colorManipulator.d.ts +0 -25
- package/modern/colorManipulator/colorManipulator.js +0 -349
- package/modern/colorManipulator/index.d.ts +0 -1
- package/modern/colorManipulator/index.js +0 -1
- package/modern/compose/compose.d.ts +0 -2
- package/modern/compose/compose.js +0 -24
- package/modern/compose/index.d.ts +0 -1
- package/modern/compose/index.js +0 -1
- package/modern/createBox/createBox.d.ts +0 -9
- package/modern/createBox/createBox.js +0 -35
- package/modern/createBox/index.d.ts +0 -1
- package/modern/createBox/index.js +0 -1
- package/modern/createBreakpoints/createBreakpoints.d.ts +0 -78
- package/modern/createBreakpoints/createBreakpoints.js +0 -81
- package/modern/createBreakpoints/index.d.ts +0 -3
- package/modern/createBreakpoints/index.js +0 -3
- package/modern/createStyled/createStyled.d.ts +0 -27
- package/modern/createStyled/createStyled.js +0 -276
- package/modern/createStyled/index.d.ts +0 -2
- package/modern/createStyled/index.js +0 -2
- package/modern/createTheme/applyStyles.d.ts +0 -67
- package/modern/createTheme/applyStyles.js +0 -87
- package/modern/createTheme/createSpacing.d.ts +0 -10
- package/modern/createTheme/createSpacing.js +0 -31
- package/modern/createTheme/createTheme.d.ts +0 -54
- package/modern/createTheme/createTheme.js +0 -49
- package/modern/createTheme/index.d.ts +0 -4
- package/modern/createTheme/index.js +0 -3
- package/modern/createTheme/shape.d.ts +0 -6
- package/modern/createTheme/shape.js +0 -4
- package/modern/cssContainerQueries/cssContainerQueries.d.ts +0 -23
- package/modern/cssContainerQueries/cssContainerQueries.js +0 -69
- package/modern/cssContainerQueries/index.d.ts +0 -3
- package/modern/cssContainerQueries/index.js +0 -2
- package/modern/cssGrid/cssGrid.d.ts +0 -15
- package/modern/cssGrid/cssGrid.js +0 -85
- package/modern/cssGrid/index.d.ts +0 -2
- package/modern/cssGrid/index.js +0 -2
- package/modern/cssVars/createCssVarsProvider.d.ts +0 -141
- package/modern/cssVars/createCssVarsProvider.js +0 -338
- package/modern/cssVars/createCssVarsTheme.d.ts +0 -15
- package/modern/cssVars/createCssVarsTheme.js +0 -21
- package/modern/cssVars/createGetCssVar.d.ts +0 -5
- package/modern/cssVars/createGetCssVar.js +0 -22
- package/modern/cssVars/cssVarsParser.d.ts +0 -64
- package/modern/cssVars/cssVarsParser.js +0 -129
- package/modern/cssVars/getColorSchemeSelector.d.ts +0 -1
- package/modern/cssVars/getColorSchemeSelector.js +0 -26
- package/modern/cssVars/index.d.ts +0 -8
- package/modern/cssVars/index.js +0 -5
- package/modern/cssVars/localStorageManager.d.ts +0 -34
- package/modern/cssVars/localStorageManager.js +0 -51
- package/modern/cssVars/prepareCssVars.d.ts +0 -16
- package/modern/cssVars/prepareCssVars.js +0 -153
- package/modern/cssVars/prepareTypographyVars.d.ts +0 -4
- package/modern/cssVars/prepareTypographyVars.js +0 -11
- package/modern/cssVars/useCurrentColorScheme.d.ts +0 -56
- package/modern/cssVars/useCurrentColorScheme.js +0 -228
- package/modern/display/display.d.ts +0 -3
- package/modern/display/display.js +0 -27
- package/modern/display/index.d.ts +0 -2
- package/modern/display/index.js +0 -2
- package/modern/flexbox/flexbox.d.ts +0 -3
- package/modern/flexbox/flexbox.js +0 -43
- package/modern/flexbox/index.d.ts +0 -2
- package/modern/flexbox/index.js +0 -2
- package/modern/getThemeValue/getThemeValue.d.ts +0 -1
- package/modern/getThemeValue/getThemeValue.js +0 -51
- package/modern/getThemeValue/index.d.ts +0 -2
- package/modern/getThemeValue/index.js +0 -2
- package/modern/index.d.ts +0 -80
- package/modern/index.js +0 -75
- package/modern/memoTheme.d.ts +0 -12
- package/modern/memoTheme.js +0 -28
- package/modern/memoize/index.d.ts +0 -1
- package/modern/memoize/index.js +0 -1
- package/modern/memoize/memoize.d.ts +0 -1
- package/modern/memoize/memoize.js +0 -9
- package/modern/merge/index.d.ts +0 -1
- package/modern/merge/index.js +0 -1
- package/modern/merge/merge.d.ts +0 -1
- package/modern/merge/merge.js +0 -10
- package/modern/package.json +0 -1
- package/modern/palette/index.d.ts +0 -2
- package/modern/palette/index.js +0 -2
- package/modern/palette/palette.d.ts +0 -5
- package/modern/palette/palette.js +0 -26
- package/modern/positions/index.d.ts +0 -2
- package/modern/positions/index.js +0 -2
- package/modern/positions/positions.d.ts +0 -3
- package/modern/positions/positions.js +0 -22
- package/modern/preprocessStyles.d.ts +0 -5
- package/modern/preprocessStyles.js +0 -25
- package/modern/propsToClassKey/index.d.ts +0 -1
- package/modern/propsToClassKey/index.js +0 -1
- package/modern/propsToClassKey/propsToClassKey.d.ts +0 -1
- package/modern/propsToClassKey/propsToClassKey.js +0 -25
- package/modern/responsivePropType/index.d.ts +0 -1
- package/modern/responsivePropType/index.js +0 -1
- package/modern/responsivePropType/responsivePropType.d.ts +0 -2
- package/modern/responsivePropType/responsivePropType.js +0 -3
- package/modern/shadows/index.d.ts +0 -1
- package/modern/shadows/index.js +0 -1
- package/modern/shadows/shadows.d.ts +0 -3
- package/modern/shadows/shadows.js +0 -6
- package/modern/sizing/index.d.ts +0 -2
- package/modern/sizing/index.js +0 -2
- package/modern/sizing/sizing.d.ts +0 -12
- package/modern/sizing/sizing.js +0 -64
- package/modern/spacing/index.d.ts +0 -2
- package/modern/spacing/index.js +0 -2
- package/modern/spacing/spacing.d.ts +0 -19
- package/modern/spacing/spacing.js +0 -157
- package/modern/style/index.d.ts +0 -2
- package/modern/style/index.js +0 -2
- package/modern/style/style.d.ts +0 -19
- package/modern/style/style.js +0 -75
- package/modern/styleFunctionSx/AliasesCSSProperties.d.ts +0 -269
- package/modern/styleFunctionSx/AliasesCSSProperties.js +0 -1
- package/modern/styleFunctionSx/OverwriteCSSProperties.d.ts +0 -54
- package/modern/styleFunctionSx/OverwriteCSSProperties.js +0 -1
- package/modern/styleFunctionSx/StandardCssProperties.d.ts +0 -2
- package/modern/styleFunctionSx/StandardCssProperties.js +0 -1
- package/modern/styleFunctionSx/defaultSxConfig.d.ts +0 -15
- package/modern/styleFunctionSx/defaultSxConfig.js +0 -294
- package/modern/styleFunctionSx/extendSxProp.d.ts +0 -4
- package/modern/styleFunctionSx/extendSxProp.js +0 -51
- package/modern/styleFunctionSx/index.d.ts +0 -9
- package/modern/styleFunctionSx/index.js +0 -4
- package/modern/styleFunctionSx/styleFunctionSx.d.ts +0 -62
- package/modern/styleFunctionSx/styleFunctionSx.js +0 -127
- package/modern/styled/index.d.ts +0 -1
- package/modern/styled/index.js +0 -1
- package/modern/styled/styled.d.ts +0 -3
- package/modern/styled/styled.js +0 -3
- package/modern/typography/index.d.ts +0 -2
- package/modern/typography/index.js +0 -2
- package/modern/typography/typography.d.ts +0 -12
- package/modern/typography/typography.js +0 -37
- package/modern/useMediaQuery/index.d.ts +0 -2
- package/modern/useMediaQuery/index.js +0 -2
- package/modern/useMediaQuery/useMediaQuery.d.ts +0 -32
- package/modern/useMediaQuery/useMediaQuery.js +0 -118
- package/modern/useTheme/index.d.ts +0 -2
- package/modern/useTheme/index.js +0 -2
- package/modern/useTheme/useTheme.d.ts +0 -2
- package/modern/useTheme/useTheme.js +0 -9
- package/modern/useThemeProps/getThemeProps.d.ts +0 -16
- package/modern/useThemeProps/getThemeProps.js +0 -12
- package/modern/useThemeProps/index.d.ts +0 -3
- package/modern/useThemeProps/index.js +0 -2
- package/modern/useThemeProps/useThemeProps.d.ts +0 -14
- package/modern/useThemeProps/useThemeProps.js +0 -20
- package/modern/useThemeWithoutDefault/index.d.ts +0 -1
- package/modern/useThemeWithoutDefault/index.js +0 -1
- package/modern/useThemeWithoutDefault/useThemeWithoutDefault.d.ts +0 -1
- package/modern/useThemeWithoutDefault/useThemeWithoutDefault.js +0 -12
- package/modern/version/index.d.ts +0 -6
- package/modern/version/index.js +0 -6
- 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,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,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;
|
package/modern/cssGrid/index.js
DELETED
|
@@ -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 {};
|