Blame view

天文台pc/tianwentai-ui/node_modules/@mui/system/esm/createTheme/createSpacing.js 1.17 KB
bc518174   王天杨   提交两个项目文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
  import { createUnarySpacing } from "../spacing/index.js";
  
  // The different signatures imply different meaning for their arguments that can't be expressed structurally.
  // We express the difference with variable names.
  
  export default function createSpacing(spacingInput = 8,
  // Material Design layouts are visually balanced. Most measurements align to an 8dp grid, which aligns both spacing and the overall layout.
  // Smaller components, such as icons, can align to a 4dp grid.
  // https://m2.material.io/design/layout/understanding-layout.html
  transform = createUnarySpacing({
    spacing: spacingInput
  })) {
    // Already transformed.
    if (spacingInput.mui) {
      return spacingInput;
    }
    const spacing = (...argsInput) => {
      if (process.env.NODE_ENV !== 'production') {
        if (!(argsInput.length <= 4)) {
          console.error(`MUI: Too many arguments provided, expected between 0 and 4, got ${argsInput.length}`);
        }
      }
      const args = argsInput.length === 0 ? [1] : argsInput;
      return args.map(argument => {
        const output = transform(argument);
        return typeof output === 'number' ? `${output}px` : output;
      }).join(' ');
    };
    spacing.mui = true;
    return spacing;
  }