Blame view

天文台pc/tianwentai-ui/node_modules/@mui/utils/esm/composeClasses/composeClasses.d.ts 952 Bytes
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
  /**
   * Compose classes from multiple sources.
   *
   * @example
   * ```tsx
   * const slots = {
   *  root: ['root', 'primary'],
   *  label: ['label'],
   * };
   *
   * const getUtilityClass = (slot) => `MuiButton-${slot}`;
   *
   * const classes = {
   *   root: 'my-root-class',
   * };
   *
   * const output = composeClasses(slots, getUtilityClass, classes);
   * // {
   * //   root: 'MuiButton-root MuiButton-primary my-root-class',
   * //   label: 'MuiButton-label',
   * // }
   * ```
   *
   * @param slots a list of classes for each possible slot
   * @param getUtilityClass a function to resolve the class based on the slot name
   * @param classes the input classes from props
   * @returns the resolved classes for all slots
   */
  export default function composeClasses<ClassKey extends string>(slots: Record<ClassKey, ReadonlyArray<string | false | undefined | null>>, getUtilityClass: (slot: string) => string, classes?: Record<string, string> | undefined): Record<ClassKey, string>;